(57)【要約】  本発明はデータの符号化装置および方法に係り、特に、低密度パリティコード（Low-Density Parity Check（ＬＤＰＣ）code）の符号化装置および方法に関する。本発明の方法は、情報部マトリックスとパリティ部マトリックスとにより構成される低密度パリティ検査コードを生成する方法である。この方法は、上記情報部マトリックスを配列コード構造に変更し、それぞれのサブマトリックス列に次数シーケンスを割り当てるステップと、上記パリティ部マトリックスである一般化した２重斜線マトリックスにおいて、斜線間のオフセット値が任意の値を有するように拡張するステップと、上記一般化した２重斜線マトリックスをリフティングするステップと、上記リフティングされた一般化した２重斜線マトリックスの毎サブマトリックスごとに循環行移動のためのオフセット値を決めるステップと、上記パリティ部マトリックスの列に対応するパリティシンボルを決める符号化ステップと、を含む。
2007508774.tif 000002
【特許請求の範囲】
【請求項１】
情報部マトリックスとパリティ部マトリックスとにより構成される低密度パリティ検査コードを生成する方法であって、
前記情報部マトリックスを配列コード構造に変更し、それぞれのサブマトリックス列に次数シーケンスを割り当てるステップと、
前記パリティ部マトリックスである一般化した２重斜線マトリックスにおいて、斜線間のオフセット値が任意の値を有するように拡張するステップと、
前記一般化した２重斜線マトリックスをリフティングするステップと、
前記リフティングされた一般化した２重斜線マトリックスの毎サブマトリックスごとに循環行移動のためのオフセット値を決めるステップと、
前記パリティ部マトリックスの列に対応するパリティシンボルを決める符号化ステップと、を含むことを特徴とする低密度パリティ検査コードの生成方法。
【請求項２】
前記次数シーケンスは、下記式１のように構成されることを特徴とする請求項１に記載の低密度パリティ検査コードの生成方法。
【数１】
2007508774.tif 000057
【請求項３】
前記斜線間のオフセット値は、一般化した２重斜線マトリックスの列数と互いに素であることを特徴とする請求項１に記載の低密度パリティ検査コードの生成方法。
【請求項４】
前記サブマトリックスの行数は、素数であることを特徴とする請求項１に記載の低密度パリティ検査コードの生成方法。
【請求項５】
前記パリティ部マトリックスの一般化した２重斜線マトリックスにおいて、斜線上のサブマトリックスの前記循環行移動のためのオフセット値の和と、オフセット斜線上のサブメトリックスの循環行移動のためのオフセット値の和との差分は、ゼロではないことを特徴とする請求項１に記載の低密度パリティ検査コードの生成方法。
【請求項６】
前記符号化ステップは、
前記パリティ部マトリックスの斜線上のサブマトリックス列インデックス０であるサブマトリックス内の最初行のパリティシンボルを決める第１のステップと、
前記決められたパリティシンボルのサブマトリックス列インデックスと同じサブマトリックス列インデックスを有するオフセット斜線上のサブマトリックスにおいて、前記決められたパリティシンボルとサブマトリックス内の列インデックスが同じパリティシンボルのサブマトリックス内の行インデックスを決める第２のステップと、
前記オフセット斜線上のサブマトリックスのサブマトリックス行インデックスと同じサブマトリックス行インデックスを有する斜線上のサブメトリックスにおいて、前記決められたサブマトリックス内の行インデックスが同じパリティシンボルを決める第３のステップと、
前記第２のステップから第３のステップまでの演算を前記パリティマトリックスの生成が完了するまで繰り返し行うステップと、を含むことを特徴とする低密度パリティ検査コードの生成方法。
【請求項７】
前記第１のステップの前記パリティシンボルは、前記パリティシンボルが決められるサブマトリックス内の行インデックスと同じ行に存在する情報部マトリックスの情報シンボルの和として決められることを特徴とする請求項６に記載の低密度パリティ検査コードの生成方法。
【請求項８】
前記第２のステップにおいて、
前記サブマトリックス内の行インデックスは、下記式２により決められることを特徴とする請求項６に記載の低密度パリティ検査コードの生成方法。
【数２】
2007508774.tif 000058
式中、ｖ（２）ｉ＋（ｒ−ｆ）はオフセット斜線上のサブマトリックス列インデックスｉのサブマトリックス内の行インデックスであり、ｘ（１）ｉは斜線上に存在する列インデックスｉのサブマトリックス内の列インデックスであり、ｊ２（ｉ＋（ｒ−ｆ））＋１は、前記オフセット斜線上のサブマトリックス列インデックスＩのサブマトリックスの循環行移動のためのオフセット値である。
【請求項９】
前記第３のステップにおいて、
パリティシンボルは、下記式３により決められることを特徴とする請求項６に記載の低密度パリティ検査コードの生成方法。
【数３】
2007508774.tif 000059
式中、
【数４】
2007508774.tif 000060
は列インデックスｘ（１）ｉ＋（ｒ−ｆ）に相当するパリティシンボルであり、
【数５】
2007508774.tif 000061
は列インデックスｘ（１）ｉに相当するパリティシンボルであり、
【数６】
2007508774.tif 000062
はサブマトリックスの列インデックスｉ＋（ｒ−ｆ）であるサブマトリックス内の行インデックスｙ（２）ｉ＋（ｒ−ｆ）である行に存在する情報シンボルの和である。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はデータの符号化方法に係り、さらに詳しくは、低密度パリティコード（Low-Density Parity Check（ＬＤＰＣ）code）の符号化方法に関する。
【背景技術】
【０００２】
通常、通信システムにおいては、データの送信に際し、受け取ったデータを符号化して送ることにより、送信の安全性は高めると共に、再転送の発生頻度を抑えることにより、送信効率を高めている。このような符号化方法のうち、移動通信システムにおいては、畳み込み符号化方法、ターボ符号化方法および準補完ターボ符号（Quasi Complemental Turbo Coding：ＱＣＴＣ）などの方法が採用されている。上記の方法を用いる場合、データ送信の安全性および送信効率を高めることが可能になるというメリットがある。
【０００３】
しかしながら、現在、無線通信システムの発展には目を見張るものがあり、これに伴い、極めて高速にてデータを送信可能なシステムが次から次へと登場している。かかる無線通信システムには、一層高速にてデータを送信可能なことが望まれている。この要望から、現在提供中の上記の符号化方法よりも高い効率が得られる符号化方法が望まれる。
【０００４】
かかるニーズに応えて、新たな符号化方法として、低密度パリティ検査コードがある。以下、低密度パリティコードについて具体的に説明する。上記低密度パリティ検査コードは、１９６０年代の初頃にガラガー（Gallager）によって最初に提案されたものであり、１９９０年代以降にマッケイらによって見直されている。上記マッケイらによって見直された上記低密度パリティ検査コードは、Sum−Productアルゴリズムに基づくものである。また、低密度パリティ検査コードは、信頼増殖復号を用いることにより、シャノン（Shannon）の制限容量に近い優れた性能を示す符号として関心を集め始めている。
【０００５】
これ以来、リチャードソン（Richardson）とチャン（Chung）らは、低密度パリティコードを構成するファクターグラフ上において復号時に生成、更新されるメッセージの確率分配が繰り返しにより変わることを追跡するデンシティエボリューション技法を提案している。上記デンシティエボリューション技法を用い、サイクルフリーファクターグラフ上における無限大の繰り返しを想定したとき、エラー確率を「０」に収斂可能なチャンネルパラメーター（しきい値）を発明している。すなわち、ファクターグラフ上において可変ノードと検査ノードのチャンネルパラメーターを最大化可能な分布度を提案している。そして、この場合、サイクルが存在する有限長のＬＤＰＣコードに対しても適用可能であることを理論的に立証している。
【０００６】
また、デンシティエボリューション技法を用い、非正規なＬＤＰＣコードの理論的なチャンネル容量がシャノンの制限容量にわずか０．００４５ｄＢまで近づく可能性があることを裏付けている。特に、フラリオン（Flarion）社は、ＬＤＰＣコードのデザインおよびハードウェア（Ｈ／Ｗ）の具現などを主導しながら、比較的に短いＬＤＰＣコードに対してもターボコードよりも優れたフレームエラー率を有し、並列復号器が具現可能なマルチエッジ型のベクトルＬＤＰＣコードを提案している。
【０００７】
このようなＬＤＰＣコードは、次世代の移動通信システムにおいて、ターボコードに代えうる強力な代案として議論されている。すなわち、これは、ＬＤＰＣコードが有している復号器の具現上の並列構造と低い複雑度、そして、性能上の低いエラーフロア、良好なフレームエラー率などの要因に起因する。このため、今後からも、盛んな研究を行うことにより、一層優れた特性を有するＬＤＰＣコードが登場すると見込まれる。
【０００８】
しかしながら、現在のＬＤＰＣコードを具現する上で問題となるのは、ターボコードに比べて符号化過程がやや複雑であり、短いフレームサイズにおいてターボコードよりも優れた性能を示せる最適化したコードの構造が必要となるという点である。これを解決するために多くの研究が活発に行われてきているが、まだ最適化したＬＤＰＣコードの符号化が行える方案が提示されていないのが現状である。
【発明の開示】
【発明が解決しようとする課題】
【０００９】
そこで、本発明の目的は、符号化過程が単純化した低密度パリティ検査コードの符号化方法を提供することにある。
【００１０】
本発明の他の目的は、短いフレームサイズにおいて一層向上した低密度パリティ検査コードの符号化方法を提供することにある。
【課題を解決するための手段】
【００１１】
上記の目的を達成するために、本発明の方法は、情報部マトリックスとパリティ部マトリックスとにより構成される低密度パリティ検査コードを生成する方法であって、上記情報部マトリックスを配列コード構造に変更し、それぞれのサブマトリックス列に次数シーケンスを割り当てるステップと、上記パリティ部マトリックスである一般化した２重斜線マトリックスにおいて、斜線間のオフセット値が任意の値を有するように拡張するステップと、上記一般化した２重斜線マトリックスをリフティングするステップと、上記リフティングされた一般化した２重斜線マトリックスの毎サブマトリックスごとに循環行移動のためのオフセット値を決めるステップと、上記パリティ部マトリックスの列に対応するパリティシンボルを決める符号化ステップと、を含む。
より好ましくは、本発明は、上記次数シーケンスを
【００１２】
【数１】
2007508774.tif 000003
のように構成することができ、上記斜線間のオフセット値は、一般化した２重斜線マトリックスの列数と互いに素に構成する。
【００１３】
また、好ましくは、上記パリティ部マトリックスの一般化した２重斜線マトリックスにおいて、斜線上のサブマトリックスの上記循環行移動のためのオフセット値の和と、オフセット斜線上のサブメトリックスの循環行移動のためのオフセット値の和との差分は、ゼロではない必要がある。
【００１４】
そして、上記符号化ステップは、上記パリティ部マトリックスの斜線上のサブマトリックス列インデックス０となるサブマトリックス内の最初行のパリティシンボルを決める第１のステップと、上記決められたパリティシンボルのサブマトリックス列インデックスと同じサブマトリックス列インデックスを有するオフセット斜線上のサブマトリックスにおいて、上記決められたパリティシンボルとサブマトリックス内の列インデックスが同じパリティシンボルのサブマトリックス内の行インデックスを決める第２のステップと、上記オフセット斜線上のサブマトリックスのサブマトリックス行インデックスと同じサブマトリックス行インデックスを有する斜線上のサブメトリックスにおいて、上記決められたサブマトリックス内の行インデックスが同じパリティシンボルを決める第３のステップと、上記第２のステップから第３のステップまでの演算を上記パリティマトリックスの生成が完了するまで繰り返し行うステップと、を含むことが好ましい。
【００１５】
そして、上記第１のステップの上記パリティシンボルは、上記パリティシンボルが決められるサブマトリックス内の行インデックスと同じ行に存在する情報部マトリックスの情報シンボルの和として決めることができる。
【発明の効果】
【００１６】
本発明は、通信システムにおいて、チャンネル状態に応じて送信方式を適応的に制御することにより、システムの効率を極大化させるという利点を有する。また、本発明は、チャンネル状態に応じて送信方式を適応的に制御すると共に、複雑度を極力低めることにより、演算ノードによるシステムノードを最小化させるという利点を有する。
【発明を実施するための最良の形態】
【００１７】
以下、本発明の好適な実施の形態を添付図面を参照して詳述する。まず、各図面における構成要素に参照符号を付加するに当たり、同じ構成要素に限っては、たとえ他の図面上に表示されていても、できる限り同じ符号を付していることに留意しなければならない。
【００１８】
そして、本発明を説明するに当たり、関連する公知機能あるいは構成についての具体的な説明が本発明の要旨を余計に曖昧にすると認められる場合、その詳細な説明を省く。
【００１９】
後述する本発明においては、簡単な符号化と優れた性能を示す新たなＬＤＰＣコードを提案する。このために、新たなパリティ検査マトリックスを定義する。すなわち、新たなパリティ検査マトリックスを用いた新たなＬＤＰＣコードを提案する。また、本発明による新たなＬＤＰＣコードが線形演算によって簡単に符号化可能であることを立証し、このための符号化方法を提示する。そして、最後に、本発明において提案するＬＤＰＣコードが信頼増殖復号によってＣＤＭＡ２０００１×ＥＶ−ＤＶ標準に採用されているターボ符号よりも優れた復号性能を有することを立証する。
【００２０】
後述する本発明においては、議論の便宜のために、符号化率が１／２となるＬＤＰＣコードに対する性能および具現を説明する。しかし、符号化率は本発明の要旨内においてリフティングが可能であることを予め明らかにしておく。
【００２１】
１．パリティ検査マトリックスデザイン
このセクションにおいては、アレイコードと非正規な繰り返し蓄積コードを定義するパリティ検査マトリックス構造を応用して生成した新たなパリティ検査マトリックスを定義する。そして、このような方式により生成された基礎マトリックスの性質を保持しながら、より大きなマトリックスを生成する方法について説明する。
【００２２】
Ａ．配列コード構造
通常、（ｐ、ｒ）アレイコードに対するパリティ検査マトリックスは、図１のように定義される。図１は、通常の（ｐ、ｒ）アレイコードに対するパリティ検査マトリックスを示している。以下、図１に基づき、通常の（ｐ、ｒ）アレイコードに対するパリティ検査マトリックスについて説明する。
【００２３】
図１中、ｐは素数である。そして、ｐの大きさを有する正方行列のｐ×ｐ恒等マトリックスであるＩの各行をｊだけ循環移動して得られたｐ×ｐ循環順列マトリックスをσｊと記述する。このようにσｊの集合よりなる行と列をそれぞれサブマトリックス行とサブマトリックス列と称する。配列コードを定義するパリティ検査マトリックスの列と行は、それぞれｐ個とｒ個の１を均一に有する。そして、ｐが適当な大きさを有する場合、マトリックスにおける１の占有率は減り、低密度パリティ検査コードの構造を有する。また、このような配列コードは、長さが４となるサイクル構造を有さない。すなわち、パリティ検査マトリックスにおいて、四角形−サイクル４−をなす４つの部分行列σｉａ、σｉｂ、σｊａ、及びσｊｂ（ｉ≠ｊ）に属している元素がサイクル４の構造を有する場合、下記式２が成り立つ。
【００２４】
【数２】
2007508774.tif 000004
【００２５】
すなわち、前式中、ａ＝ｂとなる必要がある。しかしながら、任意の相異なる行部分に存在するａ、ｂは、常に異なる値を有するため、前式２は成立たない。このため、上述したようなパリティ検査マトリックスを有する配列コードは、サイクル４の構造を有さない。
【００２６】
本発明においては、上述した配列コードのパリティ検査マトリックス構造を変形し、新たなマトリックス構造を生成して用いる。以下、本発明に用いられる新たなマトリックス構造を生成する過程を説明する。また、このような変形を行う目的は、サイクル４の構造を有さない配列コード構造を基にするが、生成しようとするマトリックスの各列に存在する１の分布が様々に存在する非正規構造を得るためである。また、この過程において、各行に存在する１の分布を比較的に均一にするために、すなわち、最大２種類だけを存在させる。以下、本発明に用いられる新たなマトリックス構造の生成方法を説明する。
（１）配列コードを構成するパリティ検査マトリックスの任意のｊ番目のサブマトリックス列は、下記式３の如きサブマトリックスよりなる。
【００２７】
【数３】
2007508774.tif 000005
【００２８】
（２）予め定義された分布度により各サブマトリックス列に対するディグリーシーケンスを下記式４のように定義する。
【００２９】
【数４】
2007508774.tif 000006
前式中、ｄｊはｊ番目のサブマトリックス列に相当するカラムディグリーを意味し、ｓはサブマトリックス列の総数である。また、上記ｓは任意の列に存在する最大１の個数ｄｖと同数にする。
【００３０】
（３）上記（２）において定義されたディグリーシーケンスＤにより任意のｊ番目のサブマトリックス列を下記式５のように変形して定義する。
【００３１】
【数５】
2007508774.tif 000007
すなわち、前式中、ｔｊはｊ番目のサブマトリックス列Ｈ’ｊにおいて、０ではないサブマトリックスが存在するサブマトリックス列の番号である。
【００３２】
（４）生成しようとするマトリックスＨｄは、各サブマトリックス列を列ベクトルとして有する下記式６のような行列である。
【００３３】
【数６】
2007508774.tif 000008
【００３４】
上述した過程によりマトリックスの任意のあるサブマトリックス列を定義すると、各サブマトリックス列内に存在する任意の一列には、該当サブマトリックス列に割り当てられたディグリー分の１の個数だけが常に存在することになる。また、上記の如きサブマトリックス列よりなるマトリックスは、各マトリックス間のサブマトリックス重複が最小となる。このため、全体のマトリックスの任意の一行に存在する１の個数も最小となる。すなわち、全体マトリックスにおける１行において、１の個数は常に２または１を有することが簡単に分かる。そして、このようにして生成された行列Ｈｄは、配列コードの構造から一部のサブマトリックスを除去した状態であるため、配列コードと同様に、サイクル４の構造が常に存在しないことが簡単に分かる。
【００３５】
図２は、任意の一列に存在する１の最大数がｄｖであり、このサブマトリックス列数がｎｖであり、残りのサブマトリックス列に存在する１の数は常に３である場合のマトリックスＨｄを例示している。
【００３６】
本発明においては、上記図２に示す配列コード構造を基に定義されたパリティ検査マトリックスＨの情報部分マトリックスＨｄ２２０は、本発明において定義しようとする低密度パリティコードのパリティ検査マトリックスのＨのサブマトリックスとして用いる。以下、上記パリティ検査マトリックスＨのパリティ部を構成するサブマトリックスの生成のために、非正規繰り返し蓄積コード構造について述べる。
【００３７】
Ｂ．一般化した２重対角線マトリックス
非正規繰り返し蓄積コードは、簡単な符号器の構造を有し、メッセージパス復号器により比較的に優れた性能が得られると知られている。このような非正規繰り返し蓄積コードは、低密度パリティ検査コードの１種である。
【００３８】
図３は、非正規繰り返し蓄積コードのファクターグラフの構造を示している。以下、図３に基づき、繰り返し蓄積コードのファクターグラフの構造について述べる。上記図３の非正規繰り返し蓄積コードのファクターグラフは、システマチックバージョンであって、コードワードのパリティシンボルに相当するパリティノードは、１パリティノードを除いては、いずれもディグリー２を有する。すなわち、各パリティノード３０１、３０２、３０３、…、３０４、３０５、３０６、３０７と接続する枝は、２本ずつにより構成される。このようなパリティノードの構造は、与えられた情報シンボルによるパリティシンボルの生成を線形演算だけで簡単に形成できるという長所を有する。また、上記図３から明らかなように、非正規繰り返し蓄積コードの情報ノードは種々のディグリー分布を有しうる。このような情報ノードの値は、ランダム順列３２０を介して検査ノードと接続される。
【００３９】
上記図３と同じファクターグラフを有する非正規繰り返し蓄積コードをマトリックスの形で示すと、図４のようになる。図４は、非正規繰り返し蓄積コードを有する低密度パリティコードのマトリックスを示す図である。
【００４０】
上記図４の低密度パリティコードのマトリックスのうち、パリティ部の斜線は「１」を意味し、各斜線間のオフセットｆ４０１は通常の非正規繰り返し蓄積コードにおいて１の値を有する。このため、非正規繰り返し蓄積コードを定義するパリティ検査マトリックスのパリティ部に相当するサブマトリックスは、２重斜線マトリックスの形を有することになる。そして、パリティ検査マトリックスの情報部の各列に存在する１の個数は非正規分布を有する。これらの分布は、図４のランダム順列部により定義される。
【００４１】
本発明においては、非正規繰り返し蓄積コード構造のパリティ部だけを考慮する。このため、パリティ部だけを一般化して、新たな形式のマトリックスを提案する。
【００４２】
上記図４において、通常の非正規繰り返し蓄積コードにおいては、各斜線間のオフセットであるｆ＝１となる値を有する場合を示す。本発明においては、上記オフセット値ｆを任意の値を有するようにリフティングすると、パリティ部の２重斜線マトリックスは、図５のように一般化して示すことができる。上記図５の第１の斜線５０１は、上記マトリックスの最上位列と最上位行の個所から最終列の最終行へと斜線をなす。そして、第２の斜線の第１の部分斜線５０２ａは、上記オフセット値分だけ列移動した位置の最初の位置において「０」の値を有し、残りは、同じオフセット値であって、第２の斜線の第１の部分斜線５０２ａの最後の部分まで１を有し、第２の斜線の第２の部分斜線５０２ｂは、その次の行の最初の列から１の値を有して斜線をなしてなる。
【００４３】
このような上記図５は、本発明により２重斜線マトリックスのオフセット値を任意の値にリフティングした場合のパリティマトリックスを示す。上記図５に示すように、たとえオフセット値が変わるとしても、特定の列に「１」が一つだけ存在する列は必ず存在することになる。すなわち、ここで注意すべき点は、全ての列に存在する「１」の個数が２であれば、２重斜線マトリックスの数がマトリックスの行よりも小さくなるということである。このため、上記図５に示すように、第２の斜線の最初の行には「１」が存在しないように、すなわち、「０」にしている。上記図５のようなマトリックスの大きさがｒの正方行列、すなわち、ｒ×ｒマトリックスである場合、２重斜線マトリックスのオフセット値ｆと上記マトリックスの大きさｒが共通引数を有さなければ、任意の与えられた情報シンボルのセットに対してｒ回の足し算だけで、ｒ個の全てのパリティシンボルを生成することができる。これを証明するために、まず、次のような整理を考える。
【００４４】
整理１：任意のアベリアングループＡＧｒ＝｛０、１、２、…、ｒ−１｝の任意のある元素のうちｒと互いに素であり、且つ、０ではない任意の元素ｆは常に自分に対するｒ回またはそれ以下の足し算でＡＧｒの全ての元素を生成する。これを証明するために、もし、ｒと互いに素であり、且つ、０ではない任意の元素ｆがｒ回またはそれ以下の足し算によってＡＧｒの全ての元素を生成することができない場合、ｒよりも小さなあるｋに対して下記式７の条件を満足するｋが存在することになる。
【００４５】
【数７】
2007508774.tif 000009
しかしながら、前式７はｆとｒが互いに素であるという想定に違反する。すなわち、前式６を満足するｋの最小値は、常にｒではなければならない。このため、元素ｆはｒ回の足し算によってＡＧｒの全ての元素が生成可能になる。
【００４６】
また、上記図５に示す２重斜線マトリックスが任意のパリティ検査マトリックスのパリティ部に相当する行列である。このため、上記図５の行列において任意のｉ番目の列は、パリティ検査マトリックスの残りの情報部分に相当する行列のｉ番目の列から常に下記式８のような情報が得られる。
【００４７】
【数８】
2007508774.tif 000010
【００４８】
前式中、ｄｉはｉ番目の情報シンボルであり、ａｉはパリティ検査マトリックスの情報部に相当する行列のｉ番目の列に存在する１の数である。そして、足し算は、ＧＦ（２）上における足し算を意味する。上記ＧＦ（２）とは、ガロアフィールド上２の意味であり、モジューロ２上において定義される有限体の集合を意味する。上記有限体の集合とは、元素の個数が有限であり、足し算と掛け算（over modulo２）に対して閉じられており、足し算に対する項等元および逆元がそれぞれ存在し、掛け算に対する項等元と０ではない元素に対する逆元が存在し、足し算および掛け算に対して交換、結合および分配法則が成立つような集合を意味する。このため、ＧＦ（２）とは、このような性質を満足する｛０、１｝の集合を意味する。このため、上記図５に示す行列において最初の列に相当するパリティ検査方程式により得られる最初のパリティシンボルは、下記式９の通りである。
【００４９】
【数９】
2007508774.tif 000011
【００５０】
そして、上記図５の行列構造において、斜線とオフセット斜線に存在する任意の１に対する列インデックスと行インデックスは、それぞれ下記式１０のような関係を有する。
【００５１】
【数１０】
2007508774.tif 000012
前式１０における２式を用いると、ｐｒ−ｆは、ｐ０を用いて下記式１１のようにして求められる。
【００５２】
【数１１】
2007508774.tif 000013
また、上記図５に示すように、パリティ検査行列が２重斜線マトリックス構造を有するため、これを用いると、前式１１は下記式１２のように変更可能である。
【００５３】
【数１２】
2007508774.tif 000014
【００５４】
このように、前式１１によって、任意のパリティシンボルｐｒ−ｉｆを得ることができ、上記「（整理１）」によりｒとｆが互いに素であり、かつ、ｉが増加するにつれて、（ｒ−ｉｆ）（ｍｏｄ ｒ）の値は１からｒ−１までの全ての値を必ず１回のみ有することになる。これにより、ｒとｆが互いに素であれば、上記した過程を通じて全てのパリティシンボルの値を求めることになる。このため、上述した方法により、上記図５のようなパリティ部を有するパリティ検査マトリックスは、常に線形演算によって簡単な符号化が可能になる。図６は、上記図５のような符号化過程において、ｐ０、ｐｒ−ｆ、ｐｒ−２ｆ、…の値を順次に求める過程を示す。
【００５５】
上記図６を参照して簡略に説明すると、参照符号６０１のように、第０列の第０行の値から第０列の第ｒ−ｆ行の位置値がつながっている。そして、上記第０列の第ｒ−ｆ行の位置値は、参照符号６０２のように、第ｒ−ｆ列の第ｒ−ｆ行の位置値とつながっていることが分かる。このように、上記第１の斜線６１０と第２の斜線の第１の部分斜線６２０ａと第２斜線の第２部分斜線６２０ｂとの間の領域にのみ１が位置する。そして、上記斜線のうち最初の列には１の値が一つだけ存在するため、上記したように、１の値を検索し続けて２次関数を解くと、結果的に、全ての値が検索可能になる。
【００５６】
以上述べた一般化した２重斜線マトリックス構造は、本発明において定義しようとする低密度パリティ検査コードのパリティ検査マトリックスＨのパリティ部のサブマトリックスＨｐにおいて用いられる。以下、本発明において定義しようとする低密度パリティ検査コードのパリティ検査マトリックスを生成する方法について説明する。
【００５７】
Ｃ．パリティ検査マトリックスの構造
以下では、セクションＡにおいて説明した配列コード構造と、セクションＢにおいて説明した一般化した２重斜線マトリックス構造を用い、本発明による新たなパリティ検査マトリックスＨを生成する方法と、その構造について説明する。後述するパリティ検査マトリックスは、セクションＡにおいて説明した、配列コード構造を基に定義されたマトリックスＨｐをパリティ検査マトリックスＨの情報部分において定義する。そして、セクションＢにおいて説明した一般化した２重斜線マトリックスＨｐを上記情報部マトリックスＨのパリティ部において定義する。このため、本発明において設計しようとする低密度パリティ検査コードを定義するパリティ検査マトリックスＨは、下記式１３のような構造を有する。
【００５８】
【数１３】
2007508774.tif 000015
【００５９】
前式中、パリティ検査マトリックスの情報部行列Ｈｄの各サブマトリックス列は、予め定義された分布度によるディグリーシーケンスＤによって定義され、各サブマトリックス列をなす単位サブマトリックスσｉｊは、大きさがｐのｐ×ｐの恒等マトリックスをサブマトリックス列インデックスｉとサブマトリックス行インデックスｊの積であるｉｊ分だけ列を移動させた周期的な順列マトリックスである。このとき、ｐは常に素数である。そして、ＨｐはＨｄの構造と一致させるためにマトリックス内に存在する１と０をそれぞれｐ×ｐマトリックスと０行列に「リフティング」させる。
【００６０】
以下、上述したような本発明による低密度パリティ検査コードを生成するための過程を順次に説明する。
【００６１】
（イ）分布度とパリティ検査サブマトリックスＨｄの構造
リチャードソンらは低密度パリティコードを定義するファクターグラフ上においてメッセージパスデコーディングが形成されるとき、sum-productアルゴリズムによる可変ノードと検査ノードのメッセージの更新過程とこれらの繰り返し処理過程によるメッセージの変化をこれらの確率的な分布の変化を通じて追跡する可能性があることを立証している。そして、このようなデンシティエボルーション方法を通じて与えられた分布度を有するファクターグラフにおいて定義される低密度パリティコードの平均エラー確率が０に収斂するかどうかを決定可能なチャンネルパラメーター臨界値が存在することを示した。また、上記チャンネルパラメーター臨界値よりも小さなチャンネルパラメーターに対しては、復号過程において無限大の繰り返しを想定したとき、ビットエラー確率が常に０に収斂する可能性があることを立証している。このため、このようなデンシティエボルーション技法は、特定のチャンネル環境に対する臨界値を改善可能な低密度パリティコードの分布度を最適化できるデザイン方法として使用可能である。このため、低密度パリティコードに対する最適化した分布度とそのときの臨界値を求めるために多くの研究が行われてきた。
【００６２】
本発明においては、既に定義された最適化した可変ノード分布度を本発明において定義しようとするパリティ検査マトリックスＨの可変ノード分布度に近似化させて用いる。このとき、ディグリー２となる可変ノードはいずれもＨのパリティ部、すなわち、Ｈｐの各列に割り当て、それ以上のディグリーを有する可変ノードはＨの情報部、すなわち、Ｈｄの各列に割り当てる。そして、セクションＡにおいて説明した「配列コード構造」とセクションＢにおいて説明した「一般化した２重対角線マトリックス」のサブマトリックス構造からパリティ検査マトリックスＨの検査ノードディグリーは与えられた全ての１の個数において常に最小化した２種類または１種類だけを有することになる。
【００６３】
以下、本発明において定義しようとするパリティ検査マトリックスの情報部Ｈｄを定義するためのディグリーシーケンスを定める。低密度パリティ検査コードを定義するファクターグラフ上の最大変数ノードディグリーをｄｖとしたとき、可変ノード上に存在する各エッジの分布は下記式１４のような多項式により表わされる。
【００６４】
【数１４】
2007508774.tif 000016
前式中、λｉはディグリーがｉの可変ノードに存在するエッジの比率を示す。そして、与えられたλ（ｘ）に対してファクターグラフ上においてディグリーがｊの可変ノードの比率ｃｊは、下記式１５のように表わされる。
【００６５】
【数１５】
2007508774.tif 000017
上記のように与えられる前式１５において、具現を考慮して最大変数ノードディグリーの値が１５である場合についてのパリティ検査マトリックスの構成を説明する。低密度パリティコードを定義するファクターグラフ上の最大変数ノードディグリーの値が１５の場合、バイナリ入力白色ガウス雑音を有するチャンネル環境での符号率１／２に対する最適の分布度は、デンシティエボルーションによって下記式１６の通りである。
【００６６】
【数１６】
2007508774.tif 000018
【００６７】
このとき、各可変ノードのエラー確率を０に収斂させる白色ガウス雑音チャンネルにおいて、最大のチャンネルパラメーター雑音変化σ＊は０．９６２２であり、これをＥｂ／Ｎｏに換算すると、０．３３４８ｄＢとなる。すなわち、上記のようなディグリー分布を有するファクターグラフによって定義される低密度パリティコードは、無限ブロックサイズ、無限繰り返しを想定した信頼増殖復号によってシャノンの制限容量に０．３３４８ｄＢ分の近い性能を示す。以上の説明のように、ディグリー分布を有するペルトグラフ上において各ディグリーを有する可変ノードの比率は、下記式１７と同じである。
【００６８】
【数１７】
2007508774.tif 000019
【００６９】
本発明において定義しようとするパリティ検査マトリックスにおいて、ディグリー２となる可変ノードは、常にパリティ部Ｈｐに割り当てられる必要があり、情報部Ｈｄには常にディグリー２以外の可変ノードだけが割り当てられる必要がある。そして、情報部Ｈｄの各サブマトリックス列内の全ての列は同じ列重み付け値を有することになっている。このため、パリティ検査マトリックスＨのファクターグラフ上において各ディグリーを有する可変ノードの割合は、下記式１８のように近似化する。
【００７０】
【数１８】
2007508774.tif 000020
前式１８のような可変ノード比率を用い、また、ディグリー分布多項式λ（ｘ）を求めて、これによるディグリー分布によって定義される低密度パリティコードのＡＷＧＮで臨界値σ＊を求めると、下記式１９の通りである。
【００７１】
【数１９】
2007508774.tif 000021
前式１９に示す値は符号化率１／２の低密度パリティコードに相当する値である。上記の値を導き出すとき、解析技術においては、ガウス近似値によるデンシティエボルーション方法を使い、予測されたビットエラー確率が１０−６よりも小さければ、エラーフリーの場合と見なして計算された値である。これを用いて、情報部Ｈｄの各サブマトリックス列に割り当てられるディグリーシーケンスは、下記式２０のように定義される。
【００７２】
【数２０】
2007508774.tif 000022
【００７３】
本発明においては、配列コード構造を述べているセクションＡの説明と同様に、パリティ検査マトリックスＨの情報部Ｈｄは前式１８のように定義されたディグリーシーケンスによる配列コード構造を基に定義される。図７は、最大変数ノードディグリーが１５である場合、前述したセクションＡの説明と同じ方式により生成されたパリティ検査マトリックスの情報部Ｈｄの一例を示している。上記図７に示す如きマトリックス構造において、各列および各行はサブマトリックス列および行を意味する。また、各列および各行に結び付けて示す数字は、各サブマトリックス列および行のサブマトリックスの循環移動を示す。そして、これらの各数字は、ｐ×ｐサブマトリックスにより構成され、上記サブマトリックスにおいて、ｐは８９となる場合である。このため、上述したように生成された情報部Ｈｄのマトリックスは、（ｄｖ・ｐ）×（ｄｖ・ｐ）マトリックスとなる。
【００７４】
（ロ）マトリックスリフティングとパリティマトリックスの構造
通常、マトリックスのリフティングは、任意の位置に０と１を有するマトリックスに対して、サブマトリックス置換により基本マトリックスの大きさをリフティングする方法をいう。以下、図８を参照してこれを説明する。図８は、任意の４×４マトリックスの各元素を３×３恒等マトリックスまたは３×３０マトリックスに代える方式によって、基本４×４マトリックスを１２×１２マトリックスにマトリックスリフティングさせた行列を示している。
【００７５】
上記図８に示すように、マトリックスのリフティングは、０の元素については、リフティングしようとする大きさの倍数分だけ０の元素のみを有する正方行列により構成する。すなわち、最初行についてのみ説明する。最初行に位置する各列の元素は｛０、０、１、０｝となり、これらに対してはそれぞれ８０１、８０２、８０３、８０４の参照符号を付している。上記各元素のうち０の値を有する３つの元素（８０１、８０２、８０４）は、それぞれ３×３マトリックスにリフティングさせて参照符号８０１ａ、８０２ａ、８０４ａを付している。そして、１の元素を有する最初行の元素（８０３）は、３×３の大きさを有する恒等行列にリフティングしている。これは、他の列の元素についても同様に適用して構成している。
【００７６】
上述したように、マトリックスリフティングとは、通常、０と１よりなる基本マトリックスの各元素の位置にｋ×ｋサブマトリックスを挿入してマトリックスの大きさを拡張する方法をいう。このとき、挿入されるｋ×ｋマトリックスとしては、通常、恒等マトリックスの各列を循環移動させた循環順列マトリックスを用いる。
【００７７】
本発明において定義しようとするパリティ検査マトリックスＨのパリティ部Ｈｐは、セクションＢにおいて説明したように、一般化した２重斜線マトリックスである。また、上記セクションＣにおける（イ）において説明したように生成されたＨｄがｐ×ｐサブマトリックスよりなることを考慮し、Ｈｐも同様にｒ×ｒの一般化した２重斜線マトリックスをｐ×ｐサブマトリックスを用いてリフティングして構成する。
【００７８】
図９は、ｐ×ｐ循環置換サブマトリックスによるマトリックスリフティングを通じて得られたパリティマトリックスＨｐを示している。以下、図９を参照してパリティマトリックスリフティングについて説明する。上記循環置換サブマトリックスによるリフティングされたマトリックスは、低密度パリティコードの線形時間符号化および各行間の線形独立のために、
【００７９】
【数２１】
2007508774.tif 000023
の最初行に存在する１は除去する。図９のように構成されたパリティ部Ｈｐは、（ｒｐ）×（ｒｐ）マトリックスとなり、各サブマトリックス
【００８０】
【数２２】
2007508774.tif 000024
において、ｊｉは各サブマトリックスごとに割り当てられた循環列の移動のためのオフセット値である。以下では、線形演算による符号化を可能にする方法について説明する。
【００８１】
上述したセクションＢ（一般化した２重斜線マトリックス）において述べられたことを図９のようにリフティングされたパリティ部Ｈｐに適用すると、ｒとｆが互いに素であるとき、ｒ回の演算によりパリティ部Ｈｐの各サブマトリックス列は必ず一回ずつ選択されることが分かる。そして、この一回の選択過程においては、サブマトリックス列内の任意の一列に相当するパリティシンボルを求める演算を行うことができる。このため、任意のあるｐ×ｐサブマトリックス
【００８２】
【数２３】
2007508774.tif 000025
の全ての列に相当するパリティシンボルを求めるためには、ｒｐ分の演算中にｐ個の列に相当するパリティシンボルに対する演算が必ず一回ずつ行われる必要がある。以下では、このような条件が満足されるためのサブマトリックスのオフセット値に対する条件を説明する。
【００８３】
上記図９のようなパリティ部Ｈｐのマトリックス構造において、斜線においてサブマトリックス行インデックスｉであるサブマトリックス内の行インデックスｙ（１）ｉと列インデックスｘ（１）ｉの関係は、下記式２４のように定義される。
【００８４】
【数２４】
2007508774.tif 000026
【００８５】
また、オフセット斜線のサブマトリックス行インデックスｉであるサブマトリックス内の行インデックスｙ（２）ｉと列インデックスｘ（２）ｉの関係は、下記式２５のように定義される。
【００８６】
【数２５】
2007508774.tif 000027
【００８７】
以下、前式２４と前式２５から、サブマトリックス行インデックス０であるサブマトリックス
【００８８】
【数２６】
2007508774.tif 000028
の最初行から下記式２８のようにパリティシンボル
【００８９】
【数２７】
2007508774.tif 000029
の値を得ることができる。
【００９０】
【数２８】
2007508774.tif 000030
【００９１】
このとき、前式２８において、ｖ０はパリティ検査マトリックスの情報部Ｈｄの最初行から得られる部分チャックサム値である。そして、列インデックスがｊ０であるとき、このような列を共有するオフセット斜線のサブマトリックス内の行インデックスは、下記式２９のように表わすことができる。
【００９２】
【数２９】
2007508774.tif 000031
【００９３】
そして、これと同じ行インデックスを共有する斜線のサブマトリックス内の列インデックスは、下記式３０のように表わすことができる。
【００９４】
【数３０】
2007508774.tif 000032
【００９５】
前式２９と前式３０のｒとｆが互いに素であれば、このような過程をｒ回繰り返す間に、パリティ部Ｈｐ内の全てのサブマトリックスを必ず一回だけ選択することができる。このため、上記のような過程をｒ回繰り返し行って再び得られるサブマトリックス内の行インデックスは、下記式３１のように表わすことができる。
【００９６】
【数３１】
2007508774.tif 000033
【００９７】
前式中、他の全てのサブマトリックスの列インデックスにリフティングすると、任意のｒ回の演算を通じて、斜線に存在するサブマトリックス
【００９８】
【数３２】
2007508774.tif 000034
に対して更新される列インデックスの変化量ｘは、常に下記式３３と同じであることが分かる。
【００９９】
【数３３】
2007508774.tif 000035
【０１００】
整理２：任意の素数ｐによって定義される有限フィールドＦｐ＝｛０、１、２、…、ｐ−１｝の０ではない任意の全ての元素は、常に自分に対するｐ回またはそれ以下の足し算によってＦｐの全ての元素を必ず一回生成することができる。これを証明するために、上記有限フィールドＦｐの０ではない任意の元素ａに対して下記式２７を満足するｐよりも小さなｋが存在する場合、ｐが素数であるという想定に違背する。このため、下記式３４を満足するｋの最小値は常にｐである。
【０１０１】
【数３４】
2007508774.tif 000036
【０１０２】
このため、有限フィールドＦｐの０ではない任意の元素ａは、ｐ回またはそれ以下の足し算によってＦｐの全ての元素を生成可能になる。整理２から、ｒ回の線形演算によって更新される任意のサブマトリックス
【０１０３】
【数３５】
2007508774.tif 000037
の列インデックスの変化量が０ではなければ、このようなｒ回の線形演算をいずれもｐ回繰り返し行うと、各サブマトリックスのｐ個の列インデックスに対するパリティシンボルを生成することができる。このため、ｒｐ個の全てのパリティシンボルを生成することが可能になる。すなわち、下記式３６のような条件を満足する。
【０１０４】
【数３６】
2007508774.tif 000038
【０１０５】
前式３６のようなｒ回の演算をｐ回繰り返し行い、サブマトリックス内の全ての列に相当するパリティシンボルを生成することができる。しかも、斜線上に存在する残りの（ｒ−１）個の各サブマトリックス内の任意の一列に相当するパリティシンボルは、上記のｒ回の演算中に一つずつ生成可能になる。このため、次のｒｐ回の線形演算によってｒｐ個の相異なる列インデックスを有するパリティシンボルを必ず一回生成可能になることが分かる。
【０１０６】
上述した方法に基づいてパリティ部Ｈｐのマトリックスを生成する過程を図１０を参照して説明する。図１０は、本発明の好適な実施の形態によりパリティ部のマトリックスを生成するためのフローチャートである。
【０１０７】
パリティ部のマトリックスを生成するために、ステップＳ１０００において、パリティシンボル計算インデックスｎを０にする。しかる後、ステップＳ１００２へ移り、サブマトリックス列インデックスが０であるサブマトリックス上の最初の列に対して情報部Ｈｄのマトリックス構成により情報シンボルの和ｖ０を求め、該当サブマトリックス上の最初行に対するパリティシンボル
【０１０８】
【数３７】
2007508774.tif 000039
をｖ０にする。そして、ステップＳ１００４へ移り、パリティ部Ｈｐの斜線上においてサブマトリックス列インデックス０であるサブマトリックス上に存在するパリティシンボルに対する列インデックスｘ（１）ｉをｊ０に初期化する。
【０１０９】
このように行の最初行に対して情報部Ｈｄのマトリックス構成により情報シンボルの和ｖ０を計算し、最初行に対するパリティシンボル
【０１１０】
【数３８】
2007508774.tif 000040
を決め、列インデックスを初期化した後、ステップＳ１００６へ移る。ステップＳ１００６へ移ると、任意の列インデックスｘ（１）ｉに対し、これと同じ列を共有するオフセット斜線に存在するサブマトリックス内の行インデックスを下記式３９のように求める。
【０１１１】
【数３９】
2007508774.tif 000041
【０１１２】
しかる後、オフセット斜線上の行インデックスｘ（１）ｉ＋（ｒ−ｆ）と同じ行インデックスを有する斜線上に存在するサブマトリックス内の列インデックスｘ（１）ｉ＋（ｒ−ｆ）を下記式４０のような式から計算する。
【０１１３】
【数４０】
2007508774.tif 000042
【０１１４】
そして、ステップＳ１０１０へ移り、サブマトリックス行インデックスｉ＋（ｒ−ｆ）であるサブマトリックス内の行インデックスｙ（２）ｉ＋（ｒ−ｆ）である行に存在する情報シンボルの和ｖ（２）ｉ＋（ｒ−ｆ）を求める。
【０１１５】
そして、行インデックスｘ（１）ｉ＋（ｒ−ｆ）に相当するパリティシンボル
【０１１６】
【数４１】
2007508774.tif 000043
を下記式４２を用いて計算する。
【０１１７】
【数４２】
2007508774.tif 000044
【０１１８】
しかる後、ステップＳ１０１４へ移り、上記ｎを１だけインクリメントする。そして、ステップＳ１０１６へ移り、サブマトリックス行インデックスｉを下記式４３のように更新する。
【０１１９】
【数４３】
2007508774.tif 000045
【０１２０】
そして、ステップＳ１０１６へ移り、上記ｎがｒｐであるかどうかを検査する。上記ステップＳ１０１６における検査は、符号化が完了したかどうかを検査することである。上記ステップＳ１０１６における検査結果、ｎがｒｐである場合、符号化が完了したため、上記ルーチンを中止する。しかし、ステップＳ１０１６における検査結果ｎがｒｐではない場合、ステップＳ１００６へ移り、それ以下の過程を繰り返し行うことにより、符号化を行い続ける。
【０１２１】
以上の過程において注意すべき点は、全てのインデックス演算−サブマトリックス行インデックス、行インデックス−はモジューロｐ演算を意味し、インデックス演算過程の添字に対する演算もまたモジューロｐ演算であることである。そして、パリティシンボルまたは情報シンボルを求める過程の足し算は、モジューロ２演算である。このような条件を満足しながら生成したＨｐの一例は、図１１に示してある。上記図１１に示す各数字の値は、サブマトリックスのオフセット値を意味する。
【０１２２】
（ハ）低密度パリティコードの前提的な構造
本発明において定義しようとする低密度パリティコードに対するパリティ検査マトリックスＨは、システメティク符号化のためにマトリックスを情報部Ｈｄとパリティ部Ｈｐに分け、これらを結合して定義する。情報部Ｈｄとパリティ部Ｈｐの生成は、それぞれセクション（イ）とセクション（ロ）において述べた方式により行われ、生成された情報部Ｈｄとパリティ部Ｈｐはそれぞれ（ｄｖ・ｐ）×（ｄｖ・ｐ）マトリックスとなる。このとき、ｄｖは非正規低密度パリティコード上に存在する最大変数ノードディグリーであり、ｐはサブマトリックスの次元、ｒはパリティ部Ｈｐをリフティングする前の基本マトリックスの次元である。このため、結合のためには、ｒ＝ｄｖである必要がある。
【０１２３】
それぞれのマトリックス情報部Ｈｄ、パリティ部Ｈｐの内部には、長さが４のサイクルが存在しないことが簡単に分かる。また、パリティ部Ｈｐの斜線オフセットｆをｒ／２に近い値に定めると、列重み付け値がｒ／２よりも小さな情報部Ｈｄのサブマトリックス列とパリティ部Ｈｐの任意の列との間にも、長さが４のサイクルが存在しないことが簡単に分かる。但し、情報部Ｈｄにおいて最大変数ノードディグリーを重み付け値として有する列の場合は、パリティ部Ｈｐの列と長さが４のサイクルが存在する可能性がある。これは、パリティ部Ｈｐのサブマトリックスオフセット値を適切に選択すると簡単に除去され、全体のパリティ検査マトリックスＨに長さが４のサイクルを存在させないことができる。
【０１２４】
２．低密度パリティコードの性能
以上、線形演算によってシステメティク符号化が簡単に行われる符号率１／２の非正規低密度パリティコードを定義するためのパリティ検査マトリックスの構造について説明した。１章において定義されたパリティ検査マトリックスは、与えられた情報シンボルによりコードワードのパリティシンボルを生成するために、マトリックスを情報部とパリティ部に分けて説明した。そして、情報部の行列は、配列コード構造を基にするマトリックス構造に各列の重み付け値が可変ノードの最適な非正規ディグリー分布に近似するディグリーを有するように構成し、パリティ部の行列は一般化した２重斜線マトリックス構造を任意のオフセットを有するサブマトリックスを用いてリフティングして構成した。このとき、ディグリーが２の可変ノードは、常にパリティ部の列に割り当てている。
【０１２５】
以下、このように定義されたパリティ検査マトリックスにより構成される低密度パリティ検査コードの性能を説明する。この説明に先立ち、低密度パリティ検査コードの性能を評価するための復号化アルゴリズムおよび実験環境を述べる。
【０１２６】
Ａ．反復的な信頼増殖復号
Ｍ×Ｎパリティ検査マトリックスにより定義される低密度パリティ検査コードは、Ｍ個の検査ノードとＮ個の可変ノードにより構成されるファクターグラフにより表わされる。そして、ディグリーがｄｃとなる検査ノードと、ディグリーがｄｖとなる可変ノードにおけるメッセージ更新過程をログドメインにより要約すると、検査ノードのメッセージ更新は下記式４４のように表わすことができ、可変ノードのメッセージ更新は下記式４５のように表わすことができ、ログ尤度率（ＬＬＲ：Log Likelihood Ratio)の更新を下記式４６のように表わすことができる。
【０１２７】
【数４４】
2007508774.tif 000046
【０１２８】
前式中、ｒ（ｊ）ｍｎは、準繰り返し復号過程において、ｊ番目の繰り返し復号過程で得られる値であり、検査ノードｍから変数ノードｎへと伝わるメッセージである。そして、ｑ（ｊ）ｉはｊ番目の繰り返し復号過程で可変ノードＩから検査ノードｍへと伝わるメッセージである。このとき、ｉは検査ノードｍに接続されている可変ノードを０からｄｃ−１まで並べ替えた値である。このため、ｉが０の場合は、変数ノードｎを意味する。
【０１２９】
【数４５】
2007508774.tif 000047
【０１３０】
前式中、ｑ（ｊ＋１）ｍｎはｊ番目の繰り返し復号過程において得られる値であって、変数ノードｎから検査ノードｍへと伝わるメッセージである。このとき、ｒ（ｊ）ｉはｊ番目の繰り返し過程において、検査ノードｉから変数ノードｎへと伝わるメッセージであり、ｉは変数ノードｎに接続されている検査ノードを０からｄｖ−１まで並べ替えた値である。このため、ｉが０の場合は、検査ノードｍを意味する。
【０１３１】
【数４６】
2007508774.tif 000048
【０１３２】
前式中、ｌ（ｊ＋１）ｎはｊ番目の繰り返し復号過程において、変数ノードｎに定義されるＬＬＲ値である。
【０１３３】
以下、前式４４ないし前式４６の過程を用い、反復的な信頼増殖復号の過程を説明する。図１２は、前式４４ないし前式４６を用いた反復的な信頼増殖復号過程のフローチャートである。
【０１３４】
図１２は、受信機に受信されたメッセージを復号する過程である。このため、受信されたメッセージに対する変数ノードｎの初期メッセージは、受信符号語のｎ番目のシンボルのチャンネル信頼度として定義され、これを数式により表わすと、下記式４７の通りである。
【０１３５】
【数４７】
2007508774.tif 000049
前式中、
【０１３６】
【数４８】
2007508774.tif 000050
は最初に定義される変数ノードメッセージの初期値であり、
【０１３７】
【数４９】
2007508774.tif 000051
は最初に定義される変数ノードに対する初期ＬＬＲ値である。このように、メッセージの更新時に、ステップＳ１２００において前式４７のように受信された符号語のｎ番目のシンボルのチャンネル信頼度として定義する。また、繰り返し回数カウンターをリセットする。しかる後、ステップＳ１２０２へ移り、検査ノードのメッセージを更新する。このような更新は、前式４４と同じ方法により更新を行うことができる。そして、ステップＳ１２０４へ移り、可変ノードとログ尤度率を更新する。上記可変ノードのメッセージ更新は、前式４５と同じ方法により更新を行い、ログ尤度率の更新は、前式４６のような方法により行われる。
【０１３８】
上記した過程を通じて、検査ノード、可変ノードおよびログ尤度率がいずれも更新された後、ステップＳ１２０６へ移り、上記更新されたログ尤度率の値を硬判定する。そして、ステップＳ１２０８へ移り、硬判定された値を基に受信されたメッセージに対してパリティ検査を行う。上記パリティ検査結果が０の値を有する場合、復号が成功的に行われたため、ステップＳ１２１６において復号を中止する。しかし、パリティ検査の結果、０の値を有さない場合、ステップＳ１２１０へ移り、予め定められた回数分繰り返し行われたかどうかを検査する。上記ステップＳ１２１０における検査結果、予め定められた回数分繰り返しが行われた場合、これ以上復号を行うとしても、成功する確率が低いため、ステップＳ１２１４へ移り、復号失敗処理を行う。しかし、ステップＳ１２１０における検査結果、予め定められた回数分繰り返しが行われていない場合、ステップＳ１２１２へ移り、上記繰り返しカウンターを１インクリメントしてステップＳ１２０２へ移る。
【０１３９】
Ｂ．シミュレーション環境
本発明において定義されたパリティ検査マトリックスにより構成される低密度パリティ検査コードの性能を評価するための実験環境は、下記表１の通りである。
【０１４０】
【表１】
2007508774.tif 000052
【０１４１】
また、本発明においては、議論の便宜のために、低密度パリティコードの符号率を１／２に限定している。しかし、より様々な符号率に対応するための低密度パリティコードのパリティ検査マトリックスデザインは、本発明において定義された方式を符号率に合わせてリフティングする方式により議論可能である。そして、本発明において定義されたパリティ検査マトリックスによる低密度パリティコードのファクターグラフ上において、最大変数ノードディグリーは１５に定めているが、これは優れた性能が得られると共に、具現時にハードウェアサイズが大きくなることを抑えるためである。パリティ部Ｈｐマトリックスにおいて、オフセットｆは７に定めている。このようにオフセットを定めた理由は、本発明のセクションＣの（ハ）において説明したように、長さが４のサイクルをパリティ検査マトリックス内において簡単に無くすためである。本発明において実験された低密度パリティ検査コードのフレームサイズは、ｃｄｍａ２０００１×ＥＶ−ＤＶ標準に明示された符号化パケット（encoder packet：ＥＰ）サイズと同様に設定して、ｃｄｍａ２０００１×ＥＶ−ＤＶ標準において現在使われているターボ復号器の性能と比較するようにした。このとき、性能の比較のためのターボコードの復号過程においては、ログ−マップアルゴリズムを用い、最大繰り返し復号回数は、８回に制限している。
【０１４２】
一方、低密度パリティ検査コードの反復的な信頼増殖復号の最大繰り返し回数は１６０回に定めているが、これは、通常、デンシティエボルーション技法上において非正規低密度パリティ検査コードの収斂速度が比較的に遅いことを考慮している。そして、復号器に関する実験は、エクストリンシック＆ログ尤度率の情報を実際値で表わす浮動小数点シミュレーションを行った。検査ノードの更新過程において、φ（ｘ）＝−ｌｏｇ（ｔａｎｈ（｜ｘ｜／２）関数のオーバーフローを防止するために、｜ｘ｜＜１０−８となる×に対してφ（ｘ）の値を２０に制限している。低密度パリティ検査コードの復号器上においては、毎繰り返しごとにパリティ検査を行ってストッピング・クライテアリオン（stopping criterion）とし、パリティ検査においてエラーが検出されなかったが、実際にエラーが生じた場合は、非検出エラーが発生しているフレームに分類している。最後に、本発明において設計された低密度パリティ検査コードの性能を評価する目安としては、フレームエラー率とビットエラー率を用いている。このとき、フレーム／ビットエラーは、情報シンボルにエラーが発生した場合のみを考慮している。以下、上述した実験環境下で実験された低密度パリティ検査コードの性能を示す。
【０１４３】
Ｃ．シミュレーション結果
図１３Ａは、ｎ＝８７０、ｐ＝２９の場合、情報部Ｈｄのマトリックスを例示し、図１３Ｂは、ｎ＝８７０、ｐ＝２９の場合、パリティ部Ｈｐのマトリックスを例示し、図１３Ｃは、低密度パリティ検査コードとターボ符号の性能を比較したシミュレーション結果グラフである。
【０１４４】
上記図１３Ａと図１３Ｂに示す情報部のマトリックスとパリティ部のマトリックスは、上述した本発明により構成されたものであり、実際には、２つのマトリックスが結合されて符号化を行うことになる。以下、上記図１３Ｃに示すような性能を示す場合の条件について説明する。２つの符号化方法の性能を比較するために、ｃｄｍａ２０００１×ＥＶ−ＤＶ標準の符号化パケット（ＥＰ）サイズが４０８であり、符号化率が１／２の場合の性能を一緒に示す。図１３Ｃから明らかなように、ブロックサイズが小さな場合、ｃｄｍａ２０００１×ＥＶ−ＤＶ標準において使われるターボ符号の性能が本発明において提案した低密度パリティ検査コードの性能よりもフレームエラー率（ＦＥＲ）およびビットエラー率（ＢＥＲ）の両方で僅かに優れていることが分かる。これは、本発明において提案した低密度パリティ検査コードを定義するパリティ検査マトリックスの構造がブロックサイズが小さなコードワードの復号性能の面からは、最適化した構造ではないことを示す。すなわち、低密度パリティ検査コードの符号化ブロックサイズが小さな場合、既知のターボ符号の性能と比較して、低密度パリティ検査コードが優れた性能を示すためには、パリティ検査マトリックスに対する最適化作業がさらに行われる必要があることを示していると言える。しかし、ブロックサイズが大きなコードワードの復号性能の面からは、ターボ符号よりも性能改善の効果があることが確認できる。
【０１４５】
下記表２は、ｎ＝８７０の場合、各Ｅｂ／Ｎｏによる平均繰り返し復号回数を示している。与えられた低密度パリティ検査コードに対して最大１６０回の繰り返し復号を行うが、実際の復号結果は２０回以内において高いＳＮＲを示すことを考慮すると、１０回以内の繰り返し復号だけで十分な性能が得られる可能性があることを示す。
【０１４６】
【表２】
2007508774.tif 000053
【０１４７】
図１４Ａは、ｎ＝１５９０、ｐ＝５３の場合、情報部Ｈｄのマトリックスを例示し、図１４Ｂは、ｎ＝１５９０、ｐ＝５３の場合、パリティ部Ｈｐのマトリックスを例示し、図１４Ｃは、低密度パリティ検査コードとターボ符号の性能を比較したシミュレーション結果グラフである。
【０１４８】
上記図１４Ａと図１４Ｂに示す情報部のマトリックスとパリティ部のマトリックスは、上述した本発明により構成されたものであり、実際には、２つのマトリックスが結合されて符号化を行うことになる。
【０１４９】
以下、上記図１４Ｃに示すような性能を示す場合の条件について説明する。２つの符号化方法の性能を比較するために、ｃｄｍａ２０００１×ＥＶ−ＤＶ標準の符号化パケットのサイズが７９２であり、符号率が１／２である場合の性能を一緒に示す。上記図１４Ｃを参照すると、低密度パリティ検査コードのブロックサイズが増加するに伴い、フレームエラー率は既に使われるターボコードのそれとほとんど類似した性能を示す。しかし、ビットエラー率は、ターボコードに比べて、依然として良好ではない性能を示している。これは、ターボコードのエラーが発生したフレームに存在するビットエラーの比率が、低密度パリティ検査コードに比べて低いためである。すなわち、ターボコードは、同じＥｂ／ＮｏにおいてＢＥＲ／ＦＥＲの比率が低密度パリティコードよりも低い値を有し、このようにＢＥＲ／ＦＥＲの比率が低い場合は、エラーが発生したフレームに存在する平均ビットエラーの個数が低密度パリティ検査コードに比べて少ないことを意味する。しかし、複合自動再転送を適用する実際の無線通信システムにおいては、ビットエラー率よりもフレームエラー率の性能が優れていた方が一層有利であるため、図１４Ｃにより、ｎ＝１５９０の場合、本発明の低密度パリティ検査コードはｃｄｍａ２０００１×ＥＶ−ＤＶ標準のターボ符号に匹敵する性能を有すると見られる。
【０１５０】
下記表３は、ｎ＝１５９０の場合、各Ｅｂ／Ｎｏによる平均繰り返し復号回数を示している。ブロックサイズが増加するに伴い、平均繰り返し復号回数は上記表２の場合に比べてやや増加していることが分かる。しかし、十分に高いＳＮＲにおいては、２０回内外の繰り返し復号だけでも十分な性能が得られることが分かる。
【０１５１】
【表３】
2007508774.tif 000054
【０１５２】
図１５Ａは、ｎ＝３０９０、ｐ＝１０３の場合、情報部Ｈｄのマトリックスを例示し、図１５Ｂは、ｎ＝３０９０、ｐ＝１０３の場合、パリティ部Ｈｐのマトリックスを例示し、図１５Ｃは、低密度パリティ検査コードとターボ符号の性能を比較したシミュレーション結果グラフである。
【０１５３】
上記図１５Ａと図１５Ｂに示す情報部のマトリックスとパリティ部のマトリックスは、上述した本発明により構成したものであり、実際には、２つのマトリックスが結合されて符号化を行う。
【０１５４】
以下、上記図１５Ｃに示すような性能を示す場合の条件について説明する。２つの符号化の性能の比較のために、ｃｄｍａ２０００１×ＥＶ−ＤＶ標準の符号化パケットサイズが１５６０であり、符号化率が１／２の場合の性能を一緒に示す。上記図１５Ｃは、低密度パリティ検査コードのブロックサイズが増加するに伴い、フレームエラー率が類似のフレームサイズのターボ符号に比べて一層良好な性能を示していることを表わす。ビットエラー率は、図１４Ｃと同様、ターボ符号に比べて依然として良好ではない性能を示しているが、その差は大幅に減り、ターボ符号の性能に極めて近づいていることを示している。
【０１５５】
下記表４は、ｎ＝３０９０の場合、各Ｅｂ／Ｎｏによる平均繰り返し復号回数を示している。ブロックのサイズが増加するに伴い、平均繰り返し復号回数は上記表２の場合に比べて、やや増加していることが分かる。しかし、十分に高いＳＮＲにおいては、２０回内外の繰り返し復号だけでも十分な性能が得られることが分かる。
【０１５６】
【表４】
2007508774.tif 000055
【０１５７】
図１６Ａは、ｎ＝７７１０、ｐ＝２５７の場合、情報部Ｈｄのマトリックスを例示し、図１６Ｂは、ｎ＝７７１０、ｐ＝２５７の場合、パリティ部Ｈｐのマトリックスを例示し、図１６Ｃは、低密度パリティ検査コードとターボ符号の性能を比較したシミュレーション結果グラフであり、図１６Ｄは、低密度パリティ検査コードの繰り返し回数変化によるシミュレーション結果グラフである。
【０１５８】
上記図１６Ａと図１６Ｂに示す情報部のマトリックスとパリティ部のマトリックスは、上述した本発明により構成されたものであり、実際には、２つのマトリックスが結合されて符号化を行う。
【０１５９】
以下、上記図１６Ｃに示すような性能を示す場合の条件について述べる。性能の比較のために、ｃｄｍａ２０００１×ＥＶ−ＤＶ標準の符号化パケットのサイズが３８６４であり、符号率が１／２の場合の性能を一緒に示す。図１６Ｃは、低密度パリティ検査コードのブロックサイズが極めて大きな場合は、類似したフレームサイズのターボコードに比べて、極めて優れた性能を示すことを示している。特に、ｃｄｍａ２０００１×ＥＶ−ＤＶ標準において使われているフレームの長さが３８６４のターボ符号は高い信号対雑音比（ＳＮＲ）にてフレームエラー率とビットエラー率共にエラーフロアが発生していることが分かる。しかし、本発明において定義された低密度パリティ検査コードの場合は、このようなエラーフロアが発生しないことを確認することができた。このような性能はＨ−ＡＲＱを用いる通信システムにおいて極めて有利である。これにより、本発明において定義された低密度パリティ検査コードが既存の標準において使われているターボ符号に比べて、性能面から極めて優れていることを示していると言える。下記表５は、ｎ＝７７１０の場合、各Ｅｂ／Ｎｏによる平均繰り返し復号回数を示している。
【０１６０】
【表５】
2007508774.tif 000056
【０１６１】
上記表５において、低密度パリティ検査コードのブロックサイズが増加するに伴い、平均繰り返し復号回数は上記表４の場合に比べて増加していることが分かる。すなわち、ｃｄｍａ２０００１×ＥＶ−ＤＶ標準と類似の最大フレームサイズに対応する低密度パリティ検査コードの場合は、高い信号対雑音比でも２０回以上の繰り返し復号化が必要になり、このため、最小の遅延をもって最適な性能を発揮するためには、繰り返し回数による低密度パリティ検査復号器の性能を観察する必要がある。
【０１６２】
図１６Ｃは、上記図１６Ａおよび図１６Ｂのような構成を有する低密度パリティ検査コードにおいて、最大繰り返し回数を４０、８０、１２０、１６０回に制限したときに得られるそれぞれのＦＥＲ／ＢＥＲ性能を示している。以上の場合とは異なり、最大繰り返し復号回数をそれぞれ４０、８０、１２０回に制限した場合は、僅かな性能の低下が見られた。しかし、最大繰り返し復号回数を４０回に制限した場合を除いては、発生した性能劣化はあまり大ではなく、最大繰り返し復号回数を８０回程度に制限しても性能面から大した問題にならないと言える。特に、ブロックサイズがこれよりも小さな場合は、最大繰り返し復号を８０回に制限することによる性能劣化は一層低減され、極めて微小になると予想される。このため、本発明において提案された低密度パリティ検査コードは、最大符号ブロックサイズを７７１０回程度としたとき、最大繰り返し復号回数を８０回程度のみにすると、復号時に十分な性能が得られる。
【０１６３】
３．結論
本発明においては、符号率＝１／２の場合に限り、効率的な符号化を行うことが可能であり、優れた復号性能が得られる低密度パリティ検査コードを定義している。そして、このために、低密度パリティ検査コードを定義するパリティ検査マトリックスを両分し、パリティ検査マトリックスにおいてコードワードの情報に相当する部分は、行重み付け値が２よりも大きな配列コード構造を用いて定義している。そして、パリティ検査マトリックスにおいてコードワードのパリティに相当する部分は、行重み付け値がいずれも２の一般化した２重斜線マトリックスの形で定義している。このような方式により定義されたパリティ検査マトリックスは、最大変数ノードディグリーがｄｖ＝１５となる非正規低密度パリティ検査コードを生成し、類似ガウスによるデンシティエボルーション技法によって、白色ガウス雑音チャンネルにおいてエラーフリーのための臨界値が０．９３５２であることを確認することができた。これは、符号率１／２の符号に対してシャノンのチャンネル容量に比べて、０．５８１９ｄＢ分近いような性能である。
【０１６４】
一旦、線形符号化が可能である点を先に考慮すると、実際の線形符号化の可能有無を考慮せずに、より任意の方式によりパリティ検査マトリックスを設計すると、シャノンの臨界値に０．５８１９ｄＢよりも遥かに近い優れた低密度パリティ検査コードを生成することができる。しかしながら、この場合、符号化過程が複雑になって実際の具現に問題があり得る。線形符号化を可能にすることは、低密度パリティ検査コードを定義するパリティ検査マトリックスに一つの制限条件として働くため、パリティ検査マトリックスが任意の構造を有する必要がある。このため、良好な性能を示すための可能性は、線形符号化を考慮せずに任意に定義したパリティ検査マトリックスよりも減ると予想される。このため、本発明を適用すると、線形符号化を考慮し、比較的に優れた性能を示すことになる。すなわち、上記の線形符号化によるパリティ検査マトリックスの制約にも拘わらず、比較的に優れた性能を示す。
【０１６５】
そして、復号時に優れた性能を示すためには、パリティ検査マトリックスのディグリー分布を定義するに当たり、符号語の大きさを増加させ、これに伴い、最大変数ノードディグリーを高めると、シャノンの限界値にほとんど近い性能を有する低密度パリティ検査コードを設計することができる。しかし、この場合、最大変数ノードディグリーが増加するほど、復号時における復号器の複雑度が高くなるため、実際の具現とはかけ離れていると言える。このため、復号器の複雑度の抑制が可能であるとは、具現時においてある程度リーズナブルな最大変数ノードディグリーを設定していることを意味する。
【０１６６】
本発明において定義されたパリティ検査マトリックスによる低密度パリティ検査コードは、パリティ検査マトリックスにおいて、コードワードのパリティ部がｐ×ｐ恒等マトリックスの循環順列によりリフティングされた一般化した２重斜線マトリックスの形を有する。このため、簡単な線形演算により、手軽に符号化を行うことが可能である。そして、反復的な信頼増殖による復号性能をｃｄｍａ２０００１×ＥＶ−ＤＶ標準において使われているターボ符号の性能と比較したとき、類似のフレームサイズに対して一層優れたフレームエラー率を得る可能性があることを実験を通して確認した。特に、ターボ符号に比べて優れたフレームエラー率を有することは、本発明の低密度パリティ検査コードをハイブリッド−ＡＲＱ技法と結び付けて用いる場合、極めて優れた長所になると思われる。このため、本発明において定義された低密度パリティ検査コードは、簡単な線形演算によって簡単に符号化可能である。また、復号器の具現にも各サブマトリックスの行および列別に検査ノードプロセッサーと可変ノードプロセッサーを並列に具現して、極めて高速な復号が可能である。
【０１６７】
本発明において定義された低密度パリティ検査コードは、パリティ検査マトリックスを構成するサブマトリックスの配列構造の特性から、低密度パリティ検査コードを定義するファクターグラフにおいて長さが４のサイクルは存在しないことを簡単に確認することができる。
【０１６８】
以上述べたように、本発明を適用する場合、ターボ符号化器に類似、あるいは、これよりも一層優れた性能を提供することができ、特に、フレームエラー率を低減可能な低密度パリティ検査コードを生成することができるという利点がある。また、本発明の低密度パリティ検査コードは、復号時にも複雑性を低減することが可能であるという利点がある。
【図面の簡単な説明】
【０１６９】
【図１】通常の（ｐ、ｒ）アレイコードに対するパリティ検査マトリックスを示す図、
【図２】任意の１列に存在する１の最大個数がｄｖであり、このようなサブマトリックス列の数がｎｖであり、残りのサブマトリックス列に存在する１の数は常に３である場合のマトリックスＨｄを例示する図、
【図３】非正規繰り返し蓄積コードのファクターグラフの構造を示す図、
【図４】非正規繰り返し蓄積コードを有する低密度パリティコードのマトリックスを示す図、
【図５】オフセット値ｆを任意の値を有するようにリフティングした場合、パリティ部の２重斜線マトリックスを示す図、
【図６】上記図５のような符号化過程において、ｐ０、ｐｒ−ｆ、ｐｒ−２ｆ、…の値を順次に求める過程を示す図、
【図７】最大変数ノードディグリーが１５の場合、前述したセクションＡの説明と同じ方式により生成したパリティ検査マトリックスの情報部Ｈｄの一例を示す図、
【図８】任意の４×４マトリックスの各元素を３×３恒等マトリックスまたは３×３０マトリックスに代える方式によって、基本４×４マトリックスを１２×１２マトリックスにマトリックスリフティングした行列を示す図、
【図９】ｐ×ｐ循環置換サブマトリックスによるマトリックスリフティングを通じて構成したパリティマトリックスＨｐを示す図、
【図１０】本発明の好適な実施の形態によりパリティ部のマトリックスを生成するためのフローチャート、
【図１１】ｒ＝１５、ｆ＝７、ｐ＝８９の値を有するようにリフティングされた一般化した２重斜線マトリックスのパリティマトリックスを示す図、
【図１２】本発明の効率を検証するための反復的な信頼増殖復号過程を示すフローチャート、
【図１３Ａ】ｎ＝８７０、ｐ＝２９の場合、情報部Ｈｄのマトリックスを例示する図、
【図１３Ｂ】ｎ＝８７０、ｐ＝２９の場合、パリティ部Ｈｐのマトリックスを例示する図、
【図１３Ｃ】低密度パリティ検査コードとターボ符号の性能を比較したシミュレーション結果グラフ、
【図１４Ａ】ｎ＝１５９０、ｐ＝５３の場合、情報部Ｈｄのマトリックスを例示する図、
【図１４Ｂ】ｎ＝１５９０、ｐ＝５３の場合、パリティ部Ｈｐのマトリックスを例示する図、
【図１４Ｃ】低密度パリティ検査コードとターボ符号の性能を比較したシミュレーション結果グラフ、
【図１５Ａ】ｎ＝３０９０、ｐ＝１０３の場合、情報部Ｈｄのマトリックスを例示する図、
【図１５Ｂ】ｎ＝３０９０、ｐ＝１０３の場合、パリティ部Ｈｐのマトリックスを例示する図、
【図１５Ｃ】低密度パリティ検査コードとターボ符号の性能を比較したシミュレーション結果グラフ、
【図１６Ａ】ｎ＝７７１０、ｐ＝２５７の場合、情報部Ｈｄのマトリックスを例示する図、
【図１６Ｂ】ｎ＝７７１０、ｐ＝２５７の場合、パリティ部Ｈｐのマトリックスを例示する図、
【図１６Ｃ】低密度パリティ検査コードとターボ符号の性能を比較したシミュレーション結果グラフ、
【図１６Ｄ】低密度パリティ検査コードの繰り返し回数の変化によるシミュレーション結果グラフ。
【図１】
2007508774.tif 000063
【図２】
2007508774.tif 000064
【図３】
2007508774.tif 000065
【図４】
2007508774.tif 000066
【図５】
2007508774.tif 000067
【図６】
2007508774.tif 000068
【図７】
2007508774.tif 000069
【図８】
2007508774.tif 000070
【図９】
2007508774.tif 000071
【図１０】
2007508774.tif 000072
【図１１】
2007508774.tif 000073
【図１２】
2007508774.tif 000074
【図１３Ａ】
2007508774.tif 000075
【図１３Ｂ】
2007508774.tif 000076
【図１３Ｃ】
2007508774.tif 000077
【図１４Ａ】
2007508774.tif 000078
【図１４Ｂ】
2007508774.tif 000079
【図１４Ｃ】
2007508774.tif 000080
【図１５Ａ】
2007508774.tif 000081
【図１５Ｂ】
2007508774.tif 000082
【図１５Ｃ】
2007508774.tif 000083
【図１６Ａ】
2007508774.tif 000084
【図１６Ｂ】
2007508774.tif 000085
【図１６Ｃ】
2007508774.tif 000086
【図１６Ｄ】
2007508774.tif 000087
【国際調査報告】
2007508774.tif 000088