(57)【特許請求の範囲】
【請求項１】
復号性能が低密度パリティ検査行列の表現形式に依存するアルゴリズムを持つ復号法によって、受信データを復号する復号器であって、
前記復号法における復号処理を、低密度パリティ検査行列に従って行う復号処理部を備え、
前記復号処理部は、線形従属な関係にある複数の検査行列を用いて、前記受信データに対する複数の復号処理を行うマルチ復号処理部を備えている
ことを特徴とする復号器。
【請求項２】
復号性能が低密度パリティ検査行列の表現形式に依存するアルゴリズムを持つ復号法によって、受信データを復号する復号器であって、
前記復号法における復号処理を、低密度パリティ検査行列に従って行う復号処理部を備え、
前記復号処理部は、線形従属な関係にある複数の検査行列を用いて、前記受信データに対する復号処理を行うよう構成され、
線形従属な関係にある複数の前記検査行列には、非零要素を結ぶループを有する非サイクルフリーな検査行列を複数含み、
前記非サイクルフリーな検査行列は、それぞれ、他の非サイクルフリーな検査行列が有する前記ループとは異なる位置に、前記ループを有することを特徴とする復号器。
【請求項３】
前記復号処理部は、複数の低密度パリティ検査行列を用いて前記受信データに対する複数の復号処理を行うマルチ復号処理部を備えていることを特徴とする請求項２記載の復号器。
【請求項４】
前記マルチ復号処理部による複数の復号処理の結果を集約して、一の復号処理結果を生成する集約部を備えていることを特徴とする請求項１又は３記載の復号器。
【請求項５】
前記集約部は、前記マルチ復号処理部による複数の復号処理の結果に対して多数決をとって、前記一の復号処理結果を得ることを特徴とする請求項４記載の復号器。
【請求項６】
前記マルチ復号処理部は、一の低密度パリティ検査行列を用いた復号処理の結果に対して、更に、前記一の低密度パリティ検査行列に対して線形従属である他の低密度パリティ検査行列を用いた復号処理を行う直列処理を行うように構成されていることを特徴とする請求項２記載の復号器。
【請求項７】
前記マルチ復号処理部は、前記一の低密度パリティ検査行列を用いた復号処理を複数回繰り返してから、前記他の低密度パリティ検査行列を用いた復号処理を行うことを特徴とする請求項６記載の復号器。
【請求項８】
前記マルチ復号処理部は、前記直列処理を複数回繰り返すよう構成されていることを特徴とする請求項６又は７記載の復号器。
【請求項９】
復号性能が低密度パリティ検査行列の表現形式に依存するアルゴリズムを持つ復号法によって、受信データを復号する復号器であって、
前記復号法における復号処理を、低密度パリティ検査行列に従って行う復号処理部を備え、
前記復号処理部は、線形従属な関係にある複数の検査行列を用いて、前記受信データに対する復号処理を行うよう構成され、
前記復号処理部は、
線形従属な関係にある複数の検査行列が記憶された検査行列記憶部と、
検査行列に従って前記復号法における復号処理を行う処理部と、
を備え、
前記処理部は、前記検査行列記憶部から線形従属な関係にある複数の検査行列を順次取得して、取得した前記検査行列に基づいて復号処理を行うことを特徴とする復号器。
【請求項１０】
復号性能が低密度パリティ検査行列の表現形式に依存するアルゴリズムを持つ復号法によって、受信データを復号する復号器であって、
前記復号法における復号処理を、低密度パリティ検査行列に従って行う復号処理部を備え、
前記復号処理部は、線形従属な関係にある複数の検査行列を用いて、前記受信データに対する復号処理を行うよう構成され、
前記復号処理部は、以下に定義される連結検査行列ＨＣを用いて、前記受信データに対する復号処理を行う連結検査行列処理部を備えていることを特徴とする復号器。
【数１】
0004788680.tif 000007
ここで、
Ｈｉ（ｉは１以上の整数）は、低密度パリティ検査行列であり、
Ｈ１，・・・，ＨＰ（Ｐは２以上の整数）は、線形従属な関係にある複数の低密度パリティ検査行列である。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ＬＤＰＣ符号の復号器に関するものである。
【背景技術】
【０００２】
誤り訂正技術の一つとして、低密度パリティ検査（ＬＤＰＣ：Low-Density Parity-Check）符号と、その復号法であるsum−product復号法とが注目されている。
このＬＤＰＣ符号では、白色ガウス通信路のシャノン（Shannon）限界まで、０．００４ｄＢという復号特性が得られることが知られている。また、sum-product復号法は、並列処理による復号処理を実行するため、符号長を長くすることができるとともに処理能力を向上させることができる。また、復号法としては、sum-product復号法を簡略化した、min-sum復号法も知られている。
【０００３】
上記復号法では、受信信号から計算した対数尤度比を基に、行処理及び列処理からなる復号処理を繰り返し行うことで誤り訂正を行う。
このようなＬＤＰＣ符号の誤り訂正復号を行う復号装置は、特許文献１に開示されている。
【特許文献１】特開平２００５−２６９５３５号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ここで、ＬＤＰＣ符号の生成行列一つに対して、検査行列は複数存在する。例えば、検査行列の行を入れ替えたものでも同じ検査行列として使用できる。そして、復号法としてＢＣＪＲアルゴリズムを用いた場合、同じ符号語を持つ検査行列であれば、どのような検査行列であっても同じ復号性能が得られる。
【０００５】
しかし、ＢＣＪＲアルゴリズムの近似計算法であるsum-product復号法は、検査行列の表現方法によってその復号性能に差が生じる。
【０００６】
つまり、sum-product復号法では、メッセージパッシングアルゴリズムを実施して復号を行うため、自分が出したメッセージを自分自身が受け取ると、不安定で好ましくない挙動をとることがある。
【０００７】
sum-product復号法において「良い検査行列」であるためには、自分が出したメッセージが再び自分に戻ってくるまでの時間（グラフ表記した場合の通過ノード数）が非常に大きいことが必要される。そのような検査行列は、サイクルフリーな検査行列と呼ばれる。
【０００８】
逆に、「悪い検査行列」は、自分が出したメッセージが再び自分に戻ってくるまでの時間が短いものをいう。図１４は、そのような検査行列（非サイクルフリーな検査行列）を示している。
図１４に示す検査行列のように１（非零要素）が配置されている場合、ある非零要素（グラフ表記した場合のノード）から出たメッセージは、sum-product復号法行における処理又は列処理を４回行うと、元の非零要素に戻ってくる。つまり、図１４に示す検査行列は、４サイクルのループを有していることになる。
【０００９】
検査行列が、４サイクル又は６サイクル程度の短いループを持つと、復号処理を繰り返し行った場合に、繰り返しが終了する前に、自分が出したメッセージが再び自分に戻ってきてしまい不安定系となる。
【００１０】
そして、自分が出したメッセージが再び自分に戻ってくるまでの時間（サイクル）は、検査行列に依存するものであるため、同じ符号に対する検査行列であっても、表現形式が異なると、sum-product復号法を実行した際の復号性能には差が生じる。
【００１１】
したがって、復号性能を高めるには、サイクルフリーである検査行列を作成することが肝要であるが、サイクルフリーな検査行列を作成するのは非常に困難であり、サイクルフリーな検査行列を容易に作成するための有効な解決法は未だ存在しない。
この結果、適切な検査行列が得られないことにより、復号性能が実質的に制約されていた。
【００１２】
そこで、本発明は、sum-product復号法又はその近似計算法（min-sum復号法など）のように復号性能が低密度パリティ検査行列の表現形式に依存するアルゴリズムを持つ復号法において、非サイクルフリーである検査行列を用いても、復号性能を高めることができる復号器を提供することを目的とする。
【課題を解決するための手段】
【００１３】
本発明は、復号性能が低密度パリティ検査行列の表現形式に依存するアルゴリズムを持つ復号法によって、受信データを復号する復号器であって、前記復号法における復号処理を、低密度パリティ検査行列に従って行う復号処理部を備え、前記復号処理部は、線形従属な関係にある複数の検査行列を用いて、前記受信データに対する復号処理を行うよう構成されている。
上記本発明によれば、線形従属な複数の検査行列を用いるため、非サイクルフリーである検査行列が含まれていても、複数の検査行列が補い合って復号性能を高めることができる。なお、本発明において、復号性能が低密度パリティ検査行列の表現形式に依存するアルゴリズムを持つ復号法とは、代表的にはsum-product復号法であるが、sum-product復号法の簡略版の復号法であるmin-sum復号法をも含み、さらにはsum-product復号法のその他の近似計算法も含むものである。
【００１４】
線形従属な関係にある複数の前記検査行列には、非零要素を結ぶループを有する非サイクルフリーな検査行列を複数含み、前記非サイクルフリーな検査行列は、それぞれ、他の非サイクルフリーな検査行列が有する前記ループとは異なる位置に、前記ループを有するのが好ましい。この場合、ループの位置が検査行列間で異なるため、ある検査行列におけるループによる影響を他の検査行列によって打ち消すことができる。
【００１５】
前記復号処理部は、複数の低密度パリティ検査行列を用いて前記受信データに対する複数の復号処理を行うマルチ復号処理部を備えているのが好ましい。
また、前記マルチ復号処理部による複数の復号処理の結果を集約して、一の復号処理結果を生成する集約部を備えているのが好ましい。
前記集約部は、前記マルチ復号処理部による複数の復号処理の結果に対して多数決をとって、前記一の復号処理結果を得るのが好ましい。
【００１６】
前記マルチ復号処理部は、一の低密度パリティ検査行列を用いた復号処理の結果に対して、更に、前記一の低密度パリティ検査行列に対して線形従属である他の低密度パリティ検査行列を用いた復号処理を行う直列処理を行うように構成されているのが好ましい。
【００１７】
前記マルチ復号処理部は、前記一の低密度パリティ検査行列を用いた復号処理を複数回繰り返してから、前記他の低密度パリティ検査行列を用いた復号処理を行うのが好ましい。
【００１８】
前記マルチ復号処理部は、前記直列処理を複数回繰り返すよう構成されているのが好ましい。
【００１９】
前記復号処理部は、線形従属な関係にある複数の検査行列が記憶された検査行列記憶部と、検査行列に従って前記復号法における復号処理を行う処理部と、を備え、前記処理部は、前記検査行列記憶部から線形従属な関係にある複数の検査行列を順次取得して、取得した前記検査行列に基づいて復号処理を行うのが好ましい。この場合、線形従属な関係にある複数の検査行列を用いても、復号処理部の構成を簡素化できる。
【００２０】
前記復号処理部は、以下に定義される連結検査行列ＨCを用いて、前記受信データに対する復号処理を行う連結検査行列処理部を備えているのが好ましい。
【数２】
0004788680.tif 000002
ここで、
Ｈi（ｉは１以上の整数）は、低密度パリティ検査行列であり、
Ｈ1，・・・，ＨP（Ｐは２以上の整数）は、線形従属な関係にある複数の低密度パリティ検査行列である。
なお、連結検査行列Ｈｃには、上記のように定義された連結検査行列内の任意の２つの行を互いに置換したものを含むものとし、置換する箇所は１カ所であってもよいし、複数箇所であってもよい。
【発明の効果】
【００２１】
本発明によれば、線形従属な複数の検査行列を用いるため、非サイクルフリーである検査行列があっても復号性能を高めることができる。
【発明を実施するための最良の形態】
【００２２】
以下、本発明の実施形態を、図面を参照して説明する。
図１は、本発明の実施形態に係る復号器を有する通信システムの構成の一例を示す図である。
図１において、通信システムは、符号化データを送信する送信装置Ｓと、符号化データを受信して復号する受信装置Ｒと、を有している。
【００２３】
送信装置Ｓは、送信情報に誤り訂正用の冗長ビットを付加して送信符号（符号化データ）を生成する符号化器１と、この符号化器１からの（Ｋ＋Ｍ）ビットの符号を所定の方式に従って変調して通信路３へ出力する変調器２とを含む。
【００２４】
符号化器１は、Ｋビットの情報に対し、パリティ計算用の冗長ビットＭビットを付加して、（Ｋ＋Ｍ）ビットのＬＤＰＣ（低密度パリティ検査）符号化データを生成する。低密度パリティ検査行列においては、行が冗長ビットに対応し、列が符号ビットに対応する。なお、（Ｋ＋Ｍ）ビットのＬＤＰＣ符号化データのどのビットに、Ｋ個の情報ビット及びＭ個の冗長ビットを配置するかは、送信側と受信側で取り決めていれば、どのように配置してもよい。
【００２５】
変調器２は、この通信路３の構成に応じて、振幅変調、位相変調、コード変調、周波数変調または直交周波数分割多重変調などの変調を行なう。たとえば、通信路３が、光ファイバの場合、変調器２においては、レーザダイオードの輝度を送信情報ビット値に応じて変更させることにより、光の強度変調（一種の振幅変調）を行なっている。たとえば、送信データビットが"０"の場合には、"＋１"に変換して、レーザダイオードの発光強度を強くして送信し、また送信データビットが"１"の場合、"−１"に変換して、レーザダイオードの発光強度を弱くして送信する。
【００２６】
受信装置（受信側通信装置）Ｒにおいては、通信路３を介して送信された変調信号に復調処理を施して、（Ｋ＋Ｍ）ビットのデジタル符号を復調する復調器４と、この復調器４からの（Ｋ＋Ｍ）ビットの符号にパリティ検査行列に基づく復号処理を施して元のＫビットの情報を再生する復号化器５が設けられる。
【００２７】
復調器４は、この通信路３における送信形態に応じて復調処理を行なう。たとえば、振幅変調、位相変調、コード変調、周波数変調および直交周波数分割多重変調等の場合、復調器４において、振幅復調、位相復調、コード復調、および周波数復調等の処理が行なわれる。
【００２８】
図２は、通信路３が光ファイバの場合の変調器２および復調器４の出力データの対応関係を一覧にして示す図である。図２において、上述のように、通信路３が光ファイバの場合、変調器２においては、送信データが"０"のときには、"１"に変換され、送信用のレーザダイオード（発光ダイオード）の発光強度が強くなり、また送信データビットが"１"のときには、"−１"に変換され、レーザダイオードの発光強度を弱くして送信する。
【００２９】
この通信路３における伝送損失等により、復調器４に伝達される光強度は、最も強い強度から最も弱い強度までの間のアナログ的な強度分布を有する。復調器４においては、この入力された光信号に、量子化処理（アナログ／デジタル変換）を行なって、この受光レベルを検出する。
図２においては、８段階に受光レベルが量子化された場合の受信信号強度を示す。すなわち、受光レベルがデータ"７"のときには、発光強度がかなり強く、受光レベルが"０"のときには、光強度がかなり弱い状態である。各受光レベルは、符号付きデータに対応づけられ、復調器４から出力される。この復調器４の出力は、受光レベルが"７"のときにはデータ"３"が出力され、受光レベルが"０"のときには、データ"−４"が出力される。したがってこの復調器４からは、１ビットの受信信号に対し、多値量子化された信号が出力される。
【００３０】
復号器５は、この復調器４から与えられた（Ｋ＋Ｍ）ビットの受信符号化データ（各ビットは、多値情報を含む）の入力を受け、sum-product復号法（min-sum復号法を含む、以下同様。）に従ってＬＤＰＣパリティ検査行列を適用して、元のＫビットの情報を復元する。
【００３１】
なお、この図２においては、復調器４において、８レベルに量子化されたビットが生成されている。しかしながら、一般に、この復調器４においては、Ｌ値（Ｌ≧２）に量子化されたビットを用いて復号処理を行なうことができる。
【００３２】
また、図２においては、比較器を用いて、あるしきい値を使って受信信号のレベルを判定し、２値信号を生成してもよい。
【００３３】
図３は、復号器５の構成を概略的に示す図である。この図３においては、復調器４および通信路３も併せて示す。復調器４は、通信路３から与えられた信号を復調する復調回路４ａと、この復調回路４ａにより生成されたアナログ復調信号をデジタル信号に変換するアナログ／デジタル変換回路４ｂを含む。
このアナログ／デジタル変換回路４ｂの出力データ（受信データ）Ｘｎが復号器５へ与えられる。
【００３４】
復号器５へ与えられる受信データＸｎは、Ｌ値（Ｌ≧２）のデータである。以下、受信データＸｎは、多値量子化データであるため、シンボルと称す。復号器５は、この入力シンボルＸｎ系列に対しsum-product復号法に従って復号処理を行なって符号ビットＣｎを復号データとして生成する。
【００３５】
復号器５は、復調器４からの復調シンボルＸｎの対数尤度比λｎを生成する対数尤度比算出部６と、復号処理部７とを含む。
【００３６】
対数尤度比算出部６は、対数尤度比λｎを生成する。この対数尤度比λｎは、Ｘｎ／（２・σ・σ）で与えられる。ここで、σは、受信信号のノイズの分散を示し、ノイズ情報生成部８によって生成される。対数尤度比算出部６によって算出された対数尤度比λｎは、復号処理部７に与えられ、sum-product復号法による復号処理の対象となる。
【００３７】
本実施形態の復号処理部７は、複数の検査行列を用いるものであるが、ここではまず、一つの検査行列に基づく、一般的な復号処理を説明する。
sum-product復号法においては、対数尤度比に基づき、次式（１）及び（２）に従って、行処理と列処理を行う
具体的には、sum-product復号法においては、次式（１）に従って外部値対数比αｍｎを算出する行処理演算が行われ、次式（２）に従って事前値対数比βｍｎを算出する列処理演算が行われる。
【数３】
0004788680.tif 000003
【００３８】
ここで、上式（１）および（２）それぞれにおいて、ｎ’∈Ａ（ｍ）＼ｎおよびｍ’∈Ｂ（ｎ）＼ｍは、自身を除く要素を意味する。
外部値対数比αｍｎについては、ｎ’≠ｎであり、事前値対数比βｍｎについては、ｍ’≠ｍである。また、αおよびβの行列内の位置を示す添え字"ｍｎ"は、通常は下付文字で示されるが、本明細書においては、読みやすさのために、「横並びの文字」で示す。
なお、式（１）中において、ｆは、ギャラガ（Gallager）のｆ関数である。
【００３９】
また、関数ｓｉｇｎ（ｘ）は、次式（３）で定義される。
【数４】
0004788680.tif 000004
【００４０】
また、集合Ａ（ｍ）およびＢ（ｎ）は、２元Ｍ・Ｎ行列Ｈ＝［Ｈｍｎ］を復号対象のＬＤＰＣ符号の検査行列とした場合、集合［１，Ｎ］＝｛１，２，…，Ｎ｝の部分集合である。
Ａ（ｍ）＝｛ｎ：Ｈｍｎ＝１｝ …（４）
Ｂ（ｎ）＝｛ｍ：Ｈｍｎ＝１｝ …（５）
【００４１】
すなわち、上記部分集合Ａ（ｍ）は、検査行列Ｈの第ｍ行目において１（非零要素）が立っている列インデックスの集合を意味し、部分集合Ｂ（ｎ）は、検査行列Ｈの第ｎ列目において１（非零要素）が立っている行インデックスの集合を示す。
【００４２】
具体的に、今、図４に示す検査行列Ｈを考える。この図４に示す検査行列Ｈにおいては、第１行の第１列から第３列に"１"が立ち、また第２行の第３列および第４列に"１"が立ち、また第３行の第４列から第６列に、"１"が立つ。したがって、この場合、部分集合Ａ（ｍ）は以下のようになる。
【００４３】
Ａ（１）＝｛１，２，３｝
Ａ（２）＝｛３，４｝
Ａ（３）＝｛４，５，６｝
【００４４】
同様に、部分集合Ｂ（ｎ）については、以下のようになる。
Ｂ（１）＝Ｂ（２）＝｛１｝
Ｂ（３）＝｛１，２｝
Ｂ（４）＝｛２，３｝
Ｂ（５）＝Ｂ（６）＝｛３｝
【００４５】
この検査行列Ｈにおいて、タナー（Tanner）グラフを用いた場合、列に対応する変数ノードと行に対応するチェックノードの接続関係が、この"１"により示される。これを、本明細書においては「"１"が立つ」と称している。すなわち、図５に示すように、変数ノード１，２，３は、チェックノードＸ（第１行）に接続され、変数ノード３，４が、チェックノードＹ（第２行）に接続される。変数ノード４，５，６が、チェックノードＺ（第３行）に接続される。この変数ノードが検査行列Ｈの列に対応し、チェックノードＸ，ＹおよびＺが、この検査行列Ｈの各行に対応する。従って、図４に示す検査行列は、情報ビットが３ビット、冗長ビットが３ビットの合計６ビットの符号長の符号に対して適用される。
【００４６】
ＬＤＰＣの検査行列Ｈでは、"１"の数は少なく、低密度の検査行列であり、これにより、計算量を低減できる。
【００４７】
この変数ノードとチェックノードの間で各条件確率Ｐ（Ｘｉ｜Ｙｉ）を伝播させ、ＭＡＰアルゴリズムに従って、もっともらしい符号を各変数ノードについて決定する。ここで、条件付確率Ｐ（Ｘｉ｜Ｙｉ）は、Ｙｉの条件下でＸｉとなる確率を示す。
なお、図５のタナーグラフでは、各ノード間の接続関係でループになっている箇所がないので、図４の検査行列は、サイクルフリーであるといえる。
【００４８】
前述のように、Sum-product復号法では、行処理においてλｎとβｍｎからαｍｎが計算され、αｍｎは、検査行列の列処理に入力されβｍｎが算出される。このβｍｎは、検査行列の行処理にフィードバックされ、行処理と列処理とが繰り返し行われる。この繰り返しは、既定回数繰り返されるか、推定される受信語を基にパリティ検査を満足すれば、打ち切られる。
【００４９】
また、外部値対数比αｍｎ（又は事前値対数比βｍｎ）と対数尤度比λｎとを用いて符号を判定することができる。
具体的には、次式（６）に従って推定受信語Ｑｎを算出し、さらに次式（７）に従って推定符号Ｃｎを算出することができる。
【００５０】
【数５】
0004788680.tif 000005
【数６】
0004788680.tif 000006
【００５１】
さて、以下に説明する各実施形態における復号処理部７は、線形従属な複数の検査行列を用いて復号処理を行うものである。以下、線形従属な検査行列の作成方法について説明した後、各実施形態における復号処理部７について順に説明する。
【００５２】
［線形従属な検査行列の作成方法］
図６に示すように、符号化のための生成行列に対応する一つのオリジナル検査行列（第１検査行列）Ｈ1を用意する。この検査行列Ｈ1は、可能な限りサイクルフリーとなるように構成し、特に短いループ（例えば、４サイクル又は６サイクルのループ）を持たないようにする。
【００５３】
この検査行列Ｈ1に対して線形従属となる第２検査行列Ｈ2を作成するには、次のようにする。
ステップ１：検査行列Ｈ1の各行の中から、任意の数の行からなる組み合わせ（例えば、検査行列Ｈ1の１行目と２行目）を生成する。
ステップ２：ステップ１を複数回実行し、検査行列Ｈ1の行数（図６では４行）分の組み合わせを作る。ただし、行の組み合わせが同じものが複数できないようにする。図６の例では、「１行目と２行目の組み合わせ」、「２行目と３行目の組み合わせ」、「１行目と３行目の組み合わせ」、「３行目と４行目の組み合わせ」の４つが作られる。
ステップ３：ステップ２で作った複数の組み合わせ内の行同士で、排他的論理和の演算を行い、その結果を第２検査行列Ｈ2の各行とする。図６の例では、「１行目と２行目の排他的論理和」を第２検査行列Ｈ2の１行目とし、「２行目と３行目の排他的論理和」を第２検査行列Ｈ2の２行目とし、「１行目と３行目の排他的論理和」を第２検査行列Ｈ2の３行目とし、「３行目と４行目の排他的論理和」を第２検査行列Ｈ2の４行目とする。
第２検査行列Ｈ2は可能な限りサイクルフリーとなるように構成し、特に短いループ（例えば、４サイクル又は６サイクルのループ）を持たないようにする。このため、必要があれば、更に、上記のようにして生成された検査行列Ｈ2の行の順番を入れ替える作業を行う。
【００５４】
上記のようにして生成された第２検査行列Ｈ2は、第１検査行列Ｈ1に対して線形従属である。すなわち、第１検査行列Ｈ1と第２検査行列Ｈ2とは同じ符号を符号語として持つが、表現形式（０と１の配置）が異なる関係にある。
【００５５】
第２検査行列Ｈ2を生成したのと同様の方法にて、必要な数（Ｐ個）の検査行列Ｈ3〜ＨPを作成する。ただし、検査行列Ｈ1〜ＨPはそれぞれ異なる行列になるように構成する。なお、線形従属な関係にある複数の検査行列Ｈ1〜ＨPの生成方法は、上記のものに限られるわけではない。
【００５６】
複数の検査行列Ｈ1〜ＨPは、それぞれサイクルフリーであるのが好ましいが、ループを有する非サイクルフリーな検査行列を一部に含んでいてもよく、すべてが非サイクルフリーな検査行列であってもよい。
複数の検査行列Ｈ1〜ＨPが、非サイクルフリーな検査行列Ｈ1〜Ｈ3を含む場合、図７に示すように、各検査行列Ｈ1〜Ｈ3は、検査行列内におけるループＬ１，Ｌ２，Ｌ３の位置が異なるようにするのが好ましい。図７のようにループＬ１，Ｌ２，Ｌ３の位置を各検査行列Ｈ1〜Ｈ3間で異ならせれば、ある検査行列Ｈ1において、ループＬ１による悪影響が部分的に生じたとしても、他の検査行列Ｈ1，Ｈ2におけるループＬ１対応部分では、ループがないため、ループによる悪影響を低減できる。
【００５７】
前記復号処理部７は、上記のようにして得られた複数の検査行列Ｈ1〜ＨPを用いて復号処理を用いる。ただし、複数の検査行列Ｈ1〜ＨPの用い方には、複数のパターンがあるため、以下、各パターンについて順に説明する。
【００５８】
［復号処理部の第１実施形態］
図８に示すように、第１実施形態の復号処理部７は、複数の検査行列を並列的に用いるものである。この復号処理部７は、複数（Ｐ個  ＞  ２）の検査行列Ｈ1〜ＨPを用いて対数尤度比λｎ（受信データ）に対する複数の復号処理を行うマルチ復号処理部１１と、マルチ復号処理部７から出力された複数の復号処理結果を集約して一の復号処理結果を生成する集約部１２とを備えている。
【００５９】
前記マルチ復号処理部１１は、検査行列Ｈ1〜ＨPの数（Ｐ個）に対応した処理部１１−１，１１−２，・・・，１１−Ｐを並列的に有している。
それぞれの処理部１１−１，１１−２，・・・，１１−Ｐは、対応する検査行列Ｈ1〜ＨPに従って、sum-product復号法による復号処理を行う。すなわち、それぞれの処理部１１−１，１１−２，・・・，１１−Ｐは、対応する検査行列Ｈ1〜ＨPに従って、同一の対数尤度比λｎ（受信データ）に対して、個々に復号処理（行処理及び列処理の繰り返し処理）を行う。それぞれの処理部１１−１，１１−２，・・・，１１−Ｐは、複数の推定符号Ｃ1ｎ〜ＣPｎを復号処理結果として算出する。
なお、マルチ復号処理部１１から出力される復号処理結果は、推定符号Ｃ1ｎ〜ＣPｎではなく、推定受信語Ｑ1ｎ〜ＱPｎであってもよい。また、αｍｎやβｍｎであってもよい。
【００６０】
マルチ復号処理部１１から出力された複数の復号処理結果Ｃ1ｎ〜ＣPｎは、集約部１２に与えられる。集約部１２は、複数の復号処理結果Ｃ1ｎ〜ＣPｎについて多数決をとり、多数を占める復号処理結果を、復号処理部７の出力としての復号処理結果Ｃｎとして採用する多数決部として構成されている。
なお、集約部１２は、多数決によって一の復号処理結果を得るものに限らず、複数の復号処理結果のうち信頼性の低いものを採用せず、信頼性の高いものを採用するためのアルゴリズムによって結果を集約するものであれば足りる。例えば、特定の処理部からの出力の信頼性が高いことが、判明した場合には、当該処理部から出力される復号処理結果を採用すればよい。
【００６１】
なお、多数決のとり方としては、符号語単位で多数決をとってもよいし、ビット毎（ビットワイズ）で推定受信語を用いて多数決をとってもよいし、ビット毎（ビットワイズ）で推定符号を用いて多数決をとってもよい。
【００６２】
［復号処理部の第２実施形態］
図９に示すように、第２実施形態の復号処理部７は、複数の検査行列Ｈ1〜ＨPを組み合わせた連結検査行列ＨCを用いて、復号処理を行う。なお、各検査行列Ｈ1〜ＨPの行列サイズがｍ×ｎである場合、連結検査行列の行列サイズは、（ｍ×Ｐ）×ｎとなる。
連結検査行列ＨCを用いて復号処理を行うため、第２実施形態の復号処理部７は、連結検査行列処理部２１を備えている。この連結検査行列処理部２１は、検査行列として連結検査行列ＨCを用いる点を除くと、通常のsum-product復号法による復号処理と同様の処理を行う。
つまり、対数尤度比（受信データ）λｎに対して、連結検査行列ＨCによる行処理及び連結検査行列ＨCによる列処理の繰り返し処理を行い、何回かの繰り返し処理の後、推定符号Ｃｎを算出する。
【００６３】
［復号処理部の第３実施形態］
図１０に示すように第３実施形態の復号処理部７は複数の検査行列を直列的に用いた直列処理を行うものである。
この復号処理部７は、複数（Ｐ個  ＞  ２）の検査行列Ｈ1〜ＨPを用いて複数の復号処理を直列的に行うマルチ復号処理部３１として構成されている。
このマルチ復号処理部３１は、検査行列Ｈ1〜ＨPの数（Ｐ個）に対応した処理部３１−１，３１−２，・・・，３１−Ｐを直列的に有している。
それぞれの処理部３１−１，３１−２，・・・，３１−Ｐは、対応する検査行列Ｈ1〜ＨPに従って、sum-product復号法による復号処理を行う。
【００６４】
対数尤度比λｎを直接受け付ける第１の処理部３１−１は、入力された対数尤度比λｎ（受信データ）に対して、対応する検査行列Ｈ1に従って行処理及び列処理の繰り返し処理を行い、推定受信語Ｑ1ｎを出力する。
【００６５】
第１処理部３１−の後段にある第２の処理部３１−２は、第１処理部３１−１から出力された推定受信語Ｑ1ｎを入力として受け付け、対応する検査行列Ｈ2に従って行処理及び列処理の繰り返し処理を行い、推定受信語Ｑ2ｎを出力する。その後段の処理部も順次同様に処理を行う。
【００６６】
最終段の処理部３１−Ｐも、同様に、対応する検査行列Ｈ2に従って行処理及び列処理の繰り返し処理を行い、推定受信語Ｑpｎを求める。最終段の処理部３１−Ｐは、さらに、推定受信語Ｑpｎから推定符号Ｃｎ算出も行い、この推定符号Ｃｎを復号処理部７の出力とする。
【００６７】
なお、複数段の処理部３１−１，３１−２，・・・，３１−Ｐが直列的に接続されていることによって、復号処理の繰り返しが行われているため、各処理部では、行処理及び列処理を繰り返しせずに、１回だけであっても良い。また、各処理部３１−１〜３１−Ｐから出力される復号処理結果は、推定受信語Ｑ1ｎ〜ＱPｎではなく、αｍｎやβｍｎであってもよい。
【００６８】
［信号処理部の第４実施形態］
図１１に示すように第４実施形態の復号処理部７は複数の検査行列を直列的に用いた直列処理を行うものである。
この復号処理部７も、第３実施形態と同様に、複数（Ｐ個  ＞  ２）の検査行列Ｈ1〜ＨPを用いて複数の復号処理を直列的に行うマルチ復号処理部４１として構成されている。
このマルチ復号処理部４１は、検査行列Ｈ1〜ＨPの数（Ｐ個）に対応した処理部４１−１，４１−２，・・・，４１−Ｐを直列的に有している。
それぞれの処理部４１−１，４１−２，・・・，４１−Ｐは、対応する検査行列Ｈ1〜ＨPに従って、sum-product復号法による復号処理を行う。処理部４１−１，４１−２，・・・，４１−Ｐの個々の機能は、第３実施形態における処理部３１−１，３１−２，・・・３１−Ｐにおける機能と同様である。ただし、第４実施形態の処理部４１−１，４１−２，・・・，４１−Ｐは、第３実施形態のように個々の処理部４１−１，４１−２，・・・，４１−Ｐにおける繰り返し処理を行わない。
【００６９】
第４実施形態では、個々の処理部４１−１，４１−２，・・・，４１−Ｐが、繰り返し処理を行わない代わりに、複数の処理部４１−１，４１−２，・・・，４１−Ｐによる直列的な復号処理（直列処理）を行ったのち、その直列処理の反復処理を実施する。なお、第４実施形態では、直列処理の反復に加えて、個々の処理部４１−１，４１−２，・・・，４１−Ｐの繰り返し処理を行っても良い。
【００７０】
［復号処理部の第５実施形態］
図１２に示す第５実施形態の復号処理部７は、第１実施形態の復号処理部７の構成を簡素化したものである。第１実施形態では、検査行列Ｈ1〜ＨPの数に対応した数の処理部１１−１〜１１−Ｐが必要であったが、第５実施形態では、処理部５１は、一つでよい。
【００７１】
つまり、第５実施形態の復号処理部７は、複数の検査行列Ｈ1〜ＨPを記憶した検査行列記憶部５２を備えており、行処理及び列処理などの復号処理を行う処理部５１は、検査行列記憶部５２から復号処理に用いる検査行列Ｈ1〜ＨPを取得して、取得した検査行列に従って、復号処理を行うことができる。
処理部５１は、例えば、検査行列Ｈ1，Ｈ2，・・・，ＨPの順で、記憶部５２から検査行列を取得し、取得した検査行列に基づいて入力データ（対数尤度比λｎ）に対して復号処理を順次行うことで、第１実施形態と同様に、複数の復号処理結果（推定符号）Ｃ1ｎ〜ＣPｎを得ることができる。
【００７２】
処理部５１から出力された複数の復号処理結果（推定符号）Ｃ1ｎ〜ＣPｎは、処理結果記憶部５３に順次記憶される。処理結果記憶部５３に記憶された複数の復号処理結果（推定符号）Ｃ1ｎ〜ＣPｎは、集約部５４において、多数決処理等により、一の復号処理結果Ｃｎに集約され、当該一の復号処理結果Ｃｎが復号処理部７の出力となる。
【００７３】
この第５実施形態によれば、第１実施形態と同様の処理を簡素な構成で行える。ただし、第１実施形態は、複数の処理部による処理を並列的に行えるため、逐次実行型の第５実施形態よりも高速処理が可能である。
なお、第５実施形態において、処理部５１の数は一つである必要はなく、検査行列数より少ない数であれば、複数であってもよい。この場合、復号処理部の構成の複雑化を抑えつつ、高速化を図ることができる。
【００７４】
［復号処理部の第６実施形態］
図１３に示す第６実施形態の復号処理部７は、第３及び第４実施形態の復号処理部７の構成を簡素化したものである。第３及び第４実施形態では、検査行列Ｈ1〜ＨPの数に対応した数の処理部１１−１〜１１−Ｐが必要であったが、第６実施形態では、第５実施形態と同様に、処理部６１は、一つでよい。
【００７５】
つまり、第６実施形態の復号処理部７は、複数の検査行列Ｈ1〜ＨPを記憶した検査行列記憶部６２を備えており、行処理及び列処理などの復号処理を行う処理部６１は、検査行列記憶部６２から復号処理に用いる検査行列Ｈ1〜ＨPを順次取得して、取得した検査行列に従って、復号処理を行うことができる。
処理部６１は、例えば、検査行列Ｈ1，Ｈ2，・・・，ＨPの順で、記憶部５２から検査行列を取得し、取得した検査行列に基づいて入力データ（対数尤度比λｎ）に対して復号処理を順次行うことで、第３又は第４実施形態と同様に、複数の復号処理結果（推定受信語）Ｑ1ｎ〜ＱPｎを得ることができる。
【００７６】
第６実施形態では、第５実施形態のように、一の検査行列による処理部６１の復号処理結果Ｑ1ｎ〜ＱPｎを逐次、記憶部５３に出力するのではなく、復号処理結果β1ｍｎ〜βPｍｎ（又はＱ1ｎ〜ＱPｎ）を再び処理部６１の入力にフィードバックして、他の検査行列による復号処理のための入力データとする。
第６実施形態では、処理部６１が記憶部６２から検査行列を取得するタイミングを適宜制御することにより、第３実施形態の復号処理部７による処理と、第４実施形態の復号処理部７による処理のいずれでも行うことができる。
【００７７】
つまり、一の検査行列それぞれについて復号処理の繰り返し処理を実施してから、他の検査行列による復号処理の繰り返しが行われるように、処理部６２の有する検査行列を入れ替えることで、第３実施形態の復号処理部７による処理と同様の処理が行える。
また、複数の検査行列による直列的な復号処理（直列処理）を一巡したのち、その直列処理を反復するように、処理部６２の有する検査行列を入れ替えることで、第４実施形態の復号処理部７による処理と同様の処理が行える。
【００７８】
本発明は、上記実施形態に限定されるものではなく、その要旨を逸脱しない範囲で様々な変形が可能である。上記復号処理部は、ハードウェアによって実現されるのが好ましいが、ソフトウェアによって構成してもよい。
【図面の簡単な説明】
【００７９】
【図１】通信システムの構成を概略的に示す図である。
【図２】送信データと復調データの対応の一例を示す図である。
【図３】復号器の構成を示す図である。
【図４】検査行列の一例である。
【図５】図４に示す検査行列のタナーグラフである。
【図６】線形従属な検査行列の生成方法の説明図である。
【図７】複数の検査行列の例を示す図である。
【図８】第１実施形態に係る復号処理部の構成図である。
【図９】第２実施形態に係る復号処理部の構成図である。
【図１０】第３実施形態に係る復号処理部の構成図である。
【図１１】第４実施形態に係る復号処理部の構成図である。
【図１２】第５実施形態に係る復号処理部の構成図である。
【図１３】第６実施形態に係る復号処理部の構成図である。
【図１４】非サイクルフリーな検査行列の例を示す図である。
【符号の説明】
【００８０】
１：符号化器，２：変調器，３：通信路，４：復調器，５：復号器，６：対数尤度比算出部，７：復号処理部，８：ノイズ情報生成部，１１：マルチ復号処理部，１２：集約部，２１：連結検査行列処理部，３１：処理部，４１：処理部，５１：処理部，５２：検査行列記憶部，５３：処理結果記憶部，５４：集約部，６１：処理部，６２：検査行列記憶部
【図１】
0004788680.tif 000008
【図２】
0004788680.tif 000009
【図３】
0004788680.tif 000010
【図４】
0004788680.tif 000011
【図５】
0004788680.tif 000012
【図６】
0004788680.tif 000013
【図７】
0004788680.tif 000014
【図８】
0004788680.tif 000015
【図９】
0004788680.tif 000016
【図１０】
0004788680.tif 000017
【図１１】
0004788680.tif 000018
【図１２】
0004788680.tif 000019
【図１３】
0004788680.tif 000020
【図１４】
0004788680.tif 000021