(57)【要約】【課題】高速な復号動作を可能とすること。【解決手段】パリティ検査行列による検査式の次数がＤであり、前記パリティ検査行列のｊ＋１行目の検査式とｊ行目の検査式との関係がｎビットだけシフトした関係にある場合、行処理演算部４０５＃１〜４０５＃３及び列処理演算部４１０＃１〜４１０＃３は、“（Ｄ＋１）×Ｎ（Ｎ：自然数）”毎にパリティ検査行列の列が区切られ、かつ“（Ｄ＋１）×Ｎ／ｎ”毎にパリティ検査行列の行が区切られて形成されたプロトグラフを、行処理演算及び列処理演算の処理単位として演算を行うようにする。【選択図】図９
2011182474.tif 000002
【特許請求の範囲】
【請求項１】
パリティ検査行列において、複数の行と複数の列で構成されるプロトグラフを規則的に配置し、前記パリティ検査行列の前記プロトグラフを配置した位置を除く行列の要素はゼロであり、前記パリティ検査行列で定義されるLDPC-CC（Low-Density Parity-Check Convolutional Code）をＢＰ（Belief-Propagation）復号する復号方法であって、
前記パリティ検査行列を用いて行処理演算及び列処理演算を行う演算ステップと、
前記演算ステップでの演算結果を用いて符号語を推定するステップと、
を含み、
前記演算ステップでは、
前記パリティ検査行列を構成する前記プロトグラフの列数×Ｎ（Ｎ：自然数）毎に前記パリティ検査行列の列が区切られ、かつ、前記プロトグラフの行数×Ｍ（Ｍ：自然数）毎に前記パリティ検査行列の行が区切られて形成された複数のブロックを、前記行処理演算及び列処理演算の処理単位として演算を行う
復号方法。
【請求項２】
パリティ検査行列において、複数の行と複数の列で構成されるプロトグラフを規則的に配置し、前記パリティ検査行列の前記プロトグラフを配置した位置を除く行列の要素はゼロであり、前記パリティ検査行列で定義されるLDPC-CC（Low-Density Parity-Check Convolutional Code）をＢＰ（Belief-Propagation）復号する復号装置であって、
前記パリティ検査行列を用いて行処理演算を行う行処理演算部と、
前記パリティ検査行列を用いて列処理演算を行う列処理演算部と、
前記行処理演算部及び前記列処理演算部での演算結果を用いて符号語を推定する判定部と、
を有し、
前記行処理演算部及び前記列処理演算部は、
前記パリティ検査行列を構成する前記プロトグラフの列数×Ｎ（Ｎ：自然数）毎に前記パリティ検査行列の列が区切られ、かつ、前記プロトグラフの行数×Ｍ（Ｍ：自然数）毎に前記パリティ検査行列の行が区切られて形成された複数のブロックを、前記行処理演算及び列処理演算の処理単位として演算を行う
復号装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、低密度パリティ検査畳み込み符号（LDPC-CC：Low-Density Parity-Check Convolutional Code）用又は畳み込み符号用の復号方法、復号装置に関するものである。
【背景技術】
【０００２】
近年、実現可能な回路規模で高い誤り訂正能力を発揮する誤り訂正符号として、低密度パリティ検査（LDPC：Low-Density Parity-Check）符号に注目が集まっている。LDPC符号は、誤り訂正能力が高く、かつ実装が容易なので、IEEE802.11nの高速無線LANシステムやデジタル放送システムなどの誤り訂正符号化方式に採用されている。
【０００３】
LDPC符号は、低密度なパリティ検査行列Ｈで定義される誤り訂正符号である。また、LDPC符号は、パリティ検査行列Ｈの列数Ｎと等しいブロック長を持つブロック符号である。
【０００４】
しかし、現在の通信システムの多くは、イーサネット（登録商標）のように、送信情報を、可変長のパケットやフレーム毎にまとめて伝送するという特徴がある。このようなシステムにブロック符号であるLDPC符号を適用する場合、例えば、可変長なイーサネット（登録商標）のフレームに対して固定長のLDPC符号のブロックをどのように対応させるかといった課題が生じる。IEEE802.11nでは、送信情報系列にパディング処理やパンクチャ処理を施すことで、送信情報系列の長さと、LDPC符号のブロック長の調節を行っているが、パディングやパンクチャによって、符号化率が変化したり、冗長な系列を送信することを避けることはできない。
【０００５】
このようなブロック符号のLDPC符号（以降、これをLDPC-BC：Low-Density Parity-Check Block Codeと標記する）に対して、任意の長さの情報系列に対しての符号化・復号化が可能なLDPC-CC（Low-Density Parity-Check Convolutional Code）の検討が行われている（例えば、非特許文献１、非特許文献２参照）。
【０００６】
LDPC-CCは、低密度なパリティ検査行列により定義される畳み込み符号であり、例えば符号化率Ｒ＝１／２（＝ｂ／ｃ）のLDPC-CCのパリティ検査行列ＨＴ［０，ｎ］は、図２０で示される。
【０００７】
ここで、ＨＴ［０，ｎ］の要素ｈ１（ｍ）（ｔ），ｈ２（ｍ）（ｔ）は、０または１をとる。また、パリティ検査行列ＨＴ［０，ｎ］に含まれるｈ１（ｍ）（ｔ），ｈ２（ｍ）（ｔ）以外の要素は全て０である。ＭはLDPC-CCにおけるメモリ長、ｎはLDPC-CCの符号語の長さを表す。図２０に示されるように、LDPC-CCのパリティ検査行列は、行列の対角項とその近辺の要素にのみに１が立っており、行列の左下および右上の要素はゼロであり、平行四辺形の行列であるという特徴がある。
【０００８】
ここで，符号化率Ｒ＝１／２（＝ｂ／ｃ）の例にとると、ｈ１（０）（ｔ）＝１，ｈ２（０）（ｔ）＝１の場合、LDPC-CCの符号化はパリティ検査行列ＨＴ［０，ｎ］に従って、次式を実行することによって行われる。
【数１】
2011182474.tif 000003
ここで、ｕｎは送信情報系列，ｖ１，ｎ，ｖ２，ｎは送信符号語系列を表す。
【０００９】
図２１に、式（１）を実行するLDPC-CCの符号化器の一例を示す。
【００１０】
図２１に示すように、LDPC-CC符号化器１０は、シフトレジスタ１１−１〜１１−Ｍ，１４−１〜１４−Ｍ，ウェイト乗算器１２−０〜１２−Ｍ，１３−０〜１３−Ｍ，ウェイト制御部１７，mod2加算器１５，ビット数カウンタ１６で構成されている。
【００１１】
シフトレジスタ１１−０〜１１−Ｍ及びシフトレジスタ１４−１〜１４−Ｍは、それぞれ、ν１，ｎ−ｉ，ν２，ｎ−ｉ（ｉ＝０，・・・，Ｍ）を保持するレジスタであり、次の入力が入ってくるタイミングで、保持している値を右隣のシフトレジスタに送り、左隣のシフトレジスタから送られてきた値を保持する。
【００１２】
ウェイト乗算器１２−０〜１２−Ｍ，１３−０〜１３−Ｍは、ウェイト制御部１７から送られてくる制御信号に従って、ｈ１（ｍ），ｈ２（ｍ）の値を０  ｏｒ  １に切り替える。
【００１３】
ウェイト制御部１７は、ビット数カウンタ１６から送られてくるカウント数と、ウェイト制御部１７内に保持しているパリティ検査行列に基づいて、そのタイミングにおけるｈ１（ｍ），ｈ２（ｍ）の値を、ウェイト乗算器１２−０〜１２−Ｍ，１３−０〜１３−Ｍに送る。mod2加算器１５は、ウェイト乗算器１２−０〜１２−Ｍ，１３−０〜１３−Ｍの出力に対してmod2加算処理を行うことで、ν２，ｎ−ｉを算出する。ビット数カウンタ１６は、入力された送信情報系列ｕｎのビット数をカウントする。
【００１４】
このような構成を採ることで、LDPC-CC符号化器１０は、パリティ検査行列に従ったLDPC-CCの符号化を行うことができる。
【００１５】
LDPC-CCの符号化器は、生成行列の乗算を行う回路や後退（前方）代入法に基づく演算を行うLDPC-BCの符号化器に比べ、非常に簡易な回路で実現できるという特徴がある。また、LDPC-CCは畳み込み符号の符号化器であるため、送信情報系列を固定長のブロックに区切って符号化する必要はなく、任意の長さの情報系列を符号化できる。
【００１６】
ところで、LDPC-CCの復号には、sum-productアルゴリズムを適用することができる。そのため、BCJRアルゴリズムやビタビアルゴリズムのような最尤系列推定を行う復号アルゴリズムを使用する必要がないので、低処理遅延で復号処理を完了できる。さらに、平行四辺形の形に１が立っているというパリティ検査行列の形を活かした、パイプライン型の復号アルゴリズムが提案されている（例えば非特許文献１参照）。
【００１７】
LDPC-CCとLDPC-BCの復号特性を、復号器の回路規模が同等になるパラメータで比較した場合、LDPC-CCの復号特性の方が優れると言うことが示されている。
【００１８】
ところで、sum-product復号における反復復号の反復回数を少なくすることで、演算規模を削減したいという要望がある。従来、Sum-product復号よりも反復回数を少なくする技術として、非特許文献３に記載されているshuffled BP (Belief-Propagation)復号や、非特許文献４に記載されているLayered BP復号が提案されている。
【先行技術文献】
【非特許文献】
【００１９】
【非特許文献１】A. J. Felstorom, and K. Sh. Zigangirov, “Time-Varying Periodic Convolutional Codes With Low-Density Parity-Check Matrix,” IEEE Transactions on Information Theory, Vol.45, No.6,pp2181-2191, September 1999.
【非特許文献２】G. Richter, M. Kaupper, and K. Sh. Zigangirov, “Irregular low-density parity-Check convolutional codes based on protographs, ”Proceeding of IEEE ISIT 2006, pp1633-1637.
【非特許文献３】J. Zhang, and M. P. C. Fossorier, “Shuffled iterative decoding,” IEEE Trans. Commun., vol.53, no.2, pp.209-213, Feb. 2005.
【非特許文献４】D. Hocevar, “A reduced complexity decoder architecture via layered decoding of LDPC codes,” in Signal Processing Systems SIPS 2004. IEEE Workshop on, pp.107-112, Oct. 2004.
【非特許文献５】B. Lu, G. Yue, and X. Wang, “Performance analysis and design optimization of LDPC-coded MIMO OFDM systems” IEEE Trans. Signal Processing., vol.52, no.2, pp.348-361, Feb. 2004.
【非特許文献６】B. M. Hochwald, and S. ten Brink, “Achieving near-capacity on a multiple-antenna channel” IEEE Trans. Commun., vol.51, no.3, pp.389-399, March 2003.
【非特許文献７】S. Baro, J. Hagenauer, and M. Wizke, “Iterative detection of MIMO transmission using a list-sequential (LISS) detector” Proceeding of IEEE ICC 2003, pp2653-2657.
【非特許文献８】S. Lin, D. J. Jr., Costello, “Error control coding : Fundamentals and applications,” Prentice-Hall.
【非特許文献９】R. D. Gallager, “Low-Density Parity-Check Codes,” Cambridge, MA: MIT Press, 1963.
【非特許文献１０】M. P. C. Fossorier, M. Mihaljevic, and H. Imai, “Reduced complexity iterative decoding of low density parity check codes based on belief propagation,” IEEE Trans. Commun., vol.47., no.5, pp.673-680, May 1999.
【非特許文献１１】J. Chen, A. Dholakia, E. Eleftheriou, M. P. C. Fossorier, and X.-Yu Hu, “Reduced-complexity decoding of LDPC codes,” IEEE Trans. Commun., vol.53.,no.8, pp.1288-1299, Aug. 2005.
【発明の概要】
【発明が解決しようとする課題】
【００２０】
ところで、通信速度をさらに向上させるためには、上述したshuffled BP復号や、Layered BP復号よりも反復復号の反復回数をさらに削減することで、演算規模をさらに削減し、さらに高速な動作が可能な復号装置が必要である。従来、特に、LDPC-CCにおける反復回数を有効に削減したり、処理遅延を改善するための方法については、ほとんど配慮されていなかった。
【００２１】
本発明は、かかる点を考慮してなされたものであり、高速な復号動作を可能とする、LDPC-CC用又は畳み込み符号用の復号方法及び復号装置を提供する。
【課題を解決するための手段】
【００２２】
本発明の復号方法の一つの態様は、パリティ検査行列において、複数の行と複数の列で構成されるプロトグラフを規則的に配置し、前記パリティ検査行列の前記プロトグラフを配置した位置を除く行列の要素はゼロであり、前記パリティ検査行列で定義されるLDPC-CC（Low-Density Parity-Check Convolutional Code）をＢＰ（Belief-Propagation）復号する復号方法であって、前記パリティ検査行列を用いて行処理演算及び列処理演算を行う演算ステップと、前記演算ステップでの演算結果を用いて符号語を推定するステップと、を含み、前記演算ステップでは、前記パリティ検査行列を構成する前記プロトグラフの列数×Ｎ（Ｎ：自然数）毎に前記パリティ検査行列の列が区切られ、かつ、前記プロトグラフの行数×Ｍ（Ｍ：自然数）毎に前記パリティ検査行列の行が区切られて形成された複数のブロックを、前記行処理演算及び列処理演算の処理単位として演算を行うようにする。
【００２３】
本発明の復号装置の一つの態様は、パリティ検査行列において、複数の行と複数の列で構成されるプロトグラフを規則的に配置し、前記パリティ検査行列の前記プロトグラフを配置した位置を除く行列の要素はゼロであり、前記パリティ検査行列で定義されるLDPC-CC（Low-Density Parity-Check Convolutional Code）をＢＰ（Belief-Propagation）復号する復号装置であって、前記パリティ検査行列を用いて行処理演算を行う行処理演算部と、前記パリティ検査行列を用いて列処理演算を行う列処理演算部と、前記行処理演算部及び前記列処理演算部での演算結果を用いて符号語を推定する判定部と、を有し、前記行処理演算部及び前記列処理演算部は、前記パリティ検査行列を構成する前記プロトグラフの列数×Ｎ（Ｎ：自然数）毎に前記パリティ検査行列の列が区切られ、かつ、前記プロトグラフの行数×Ｍ（Ｍ：自然数）毎に前記パリティ検査行列の行が区切られて形成された複数のブロックを、前記行処理演算及び列処理演算の処理単位として演算を行う、構成を採る。
【発明の効果】
【００２４】
本発明によれば、高速な復号動作を可能とする、LDPC-CC用又は畳み込み符号用の復号方法、復号装置、インタリーブ方法及び送信装置を実現できる。
【図面の簡単な説明】
【００２５】
【図１】実施の形態１におけるLDPC-CCのパリティ検査行列の一例を示す図
【図２】sum-product復号（ＢＰ復号）における、パリティ検査行列Ｈに対する演算手順を示す図
【図３】実施の形態１における、プロトグラフの形成方法の説明に供する図
【図４】実施の形態１におけるＢＰ復号手順の説明に供する図
【図５】実施の形態１におけるＢＰ復号手順の説明に供する図
【図６】LDPC-CC符号化を行う送信装置の構成例を示すブロック図
【図７】LDPC-CCの復号を行う受信装置の構成例を示すブロック図
【図８】sum-product復号（ＢＰ復号）を行う復号部の構成例を示すブロック図
【図９】実施の形態１における、ＢＰ復号を行う復号部の構成例を示すブロック図
【図１０】実施の形態２における、行処理演算及び列処理演算のグループ分けの説明に供する図
【図１１】実施の形態２における、ＢＰ復号を行う復号部の構成例を示すブロック図
【図１２】実施の形態２における、復号部の動作の説明に供するタイミングチャート
【図１３】実施の形態２の復号部の動作説明に供するタイミングチャート
【図１４】送信される変調信号のフレーム構成例を示す図
【図１５】受信側での一般的な信号処理タイミングを示すタイミングチャート
【図１６】実施の形態３における、データシンボルのブロック分割の説明に供する図
【図１７】実施の形態３における、受信側での信号処理タイミングを示すタイミングチャート
【図１８】他の実施の形態におけるLDPC-CCのパリティ検査行列の一例を示す図
【図１９】他の実施の形態における、プロトグラフの形成方法の説明に供する図
【図２０】LDPC-CCのパリティ検査行列を示す図
【図２１】LDPC-CC符号化器の構成例を示す図
【発明を実施するための形態】
【００２６】
以下、本発明の実施の形態について図面を参照して詳細に説明する。
【００２７】
（実施の形態１）
（１）復号アルゴリズム
（１−１）LDPC-CCの一般的な復号アルゴリズム
先ず、本発明による復号方法を説明する前に、LDPC-CCの一般的な復号アルゴリズムを説明する。
【００２８】
図１に、LDPC―CCのパリティ検査行列Ｈの一例を示す。
【００２９】
受信側での、ＢＰ(Belief-Propagation)復号の一種であるsum-product復号アルゴリズムの大きな流れは、以下のとおりである。
【００３０】
以下の説明では、２元（Ｍ×Ｎ）行列Ｈ＝｛Ｈｍｎ｝を、復号対象であるLDPC符号のパリティ検査行列とする。集合［１，Ｎ］＝｛１，２，・・・，Ｎ｝の部分集合Ａ（ｍ），Ｂ（ｎ）を次式のように定義する。
【数２】
2011182474.tif 000004
【数３】
2011182474.tif 000005
なお、Ａ（ｍ）はパリティ検査行列Ｈのｍ行目において“１”である列インデックスの集合を意味し、Ｂ（ｎ）はパリティ検査行列Ｈのｎ行目において“１”である行インデックスの集合を意味する。
【００３１】
・Ｓｔｅｐ  Ａ・１（初期化）：
Ｈｍｎ＝１を満たす全ての組（ｍ，ｎ）に対して、対数尤度比β（０）ｍｎ＝λｎと設定する。また、ループ変数（反復回数）ｌｓｕｍ＝１と設定し、ループ最大回数をｌｓｕｍ，ｍａｘと設定する。
【００３２】
・Ｓｔｅｐ  Ａ・２（行処理）：
ｍ＝１，２，・・・，Ｍの順にＨｍｎ＝１を満たす全ての組（ｍ，ｎ）に対して、次の更新式を用いて対数尤度比α（ｉ）ｍｎを更新する。但し、ｉは反復回数を表す。また、ｆはＧａｌｌａｇｅｒの関数である。
【数４】
2011182474.tif 000006
【数５】
2011182474.tif 000007
【数６】
2011182474.tif 000008
【００３３】
・Ｓｔｅｐ  Ａ・３（列処理）：
ｎ＝１，２，・・・，Ｎの順にＨｍｎ＝１を満たす全ての組（ｍ，ｎ）に対して、次の更新式を用いて対数尤度比β（ｉ）ｍｎを更新する。
【数７】
2011182474.tif 000009
【００３４】
・Ｓｔｅｐ  Ａ・４（対数尤度比の計算）：
ｎ∈［１，Ｎ］について対数尤度比Ｌ（ｉ）ｎを、次式のように求める。
【数８】
2011182474.tif 000010
【００３５】
・Ｓｔｅｐ  Ａ・５（反復回数のカウント）：
もしｌｓｕｍ＜ｌｓｕｍ，ｍａｘならばｌｓｕｍをインクリメントして、ｓｔｅｐ  Ａ・２に戻る。ｌｓｕｍ＝ｌｓｕｍ，ｍａｘの場合、次式に示すように符号語ｗを推定して、sum-product復号を終了する。
【数９】
2011182474.tif 000011
【００３６】
図２は、sum-product復号における、パリティ検査行列Ｈに対する演算手順を示している。図２の矢印Ａ１は行処理をイメージするための矢印、矢印Ａ２は列処理をイメージするための矢印を示している。Sum-product復号は、以下の順に行われる。
【００３７】
先ず、図２＜１＞のようにパリティ検査行列Ｈに“１”が存在する位置において行処理を施す。
【００３８】
次に、図２＜２＞のようにパリティ検査行列Ｈに“１”が存在する位置において列処理を施す。以上が、反復回数１回目の復号演算である。
【００３９】
次に、図２＜３＞のようにパリティ検査行列Ｈに“１”が存在する位置において行処理を施した後に、図２＜４＞のようにパリティ検査行列Ｈに“１”が存在する位置において列処理を施すことで、反復回数２回目の復号演算を行う。
【００４０】
次に、図２＜５＞のようにパリティ検査行列Ｈに“１”が存在する位置において行処理を施した後に、図２＜６＞のようにパリティ検査行列Ｈに“１”が存在する位置において列処理を施すことで、反復回数２回目の復号演算を行う。
【００４１】
以下、所望の受信品質が得られるまで、反復復号が繰り返される。
【００４２】
次に、LDPC符号の生成手順について簡単に説明する。
【００４３】
パリティ検査行列Ｈと、生成行列Ｇとの間には、次式の関係式が成立する。
【数１０】
2011182474.tif 000012
【００４４】
また、送信系列（符号化後のデータ）を、図１のように、ｎ１、ｎ２、ｎ３、ｎ４、・・・とし、送信系列のベクトルｕ＝（ｎ１，ｎ２，ｎ３，ｎ４，・・・）で表すと、送信系列のベクトルｕは、情報系列（符号化前のデータ）のベクトルｉ＝（ｉ１，ｉ２，・・・）と、生成行列Ｇとを用いて、次式のように求められる。
【数１１】
2011182474.tif 000013
【００４５】
符号化側では、式（１０）及び式（１１）の関係式を利用することで、送信系列を得る。なお、LDPC-CCの場合、非特許文献１、非特許文献２に示されているように、シフトレジスタと排他的論理和回路を用いて比較的簡易な構成で符号化を実現できる。
【００４６】
因みに、sum-product復号の際に使用する対数尤度比λｎは、パリティ検査行列Ｈに対して、図１に示すように、ｎ１、ｎ２、ｎ３、ｎ４、・・・の順に並んだものとなる。
【００４７】
（１−２）本実施の形態の復号方法
ところで、非特許文献３及び非特許文献４でも指摘されているように、sum-product復号は、良好な受信品質得るためには、上記反復復号の反復回数を多く設定しなければならないという欠点がある。
【００４８】
そこで、本実施の形態では、少ない反復回数で良好な受信品質を得ることができる、LDPC-CCに適した復号方法を提案する。本実施の形態の復号方法は、sum-product復号を変形したものである。
【００４９】
図３は、LDPC-CCのパリティ検査行列Ｈの一例を示している。送信系列（符号化後のデータ）をｎｋ、ｎｋ−１、ｎｋ−２、ｎｋ−３（ｋ：偶数）と表すと、パリティ検査行列Ｈから以下の検査式が成立する。
【数１２】
2011182474.tif 000014
【００５０】
ここで、図３のパリティ検査行列Ｈに準じた生成行列Ｇは、次式の多項式で表現できる。
【数１３】
2011182474.tif 000015
式（１２）及び式（１３）は３次の多項式である。
【００５１】
本実施の形態では、パリティ検査行列Ｈによる検査式を多項式で表現した場合に、“検査式の次数＋１”毎にパリティ検査行列Ｈの列を区切る。式（１２）の例では、検査式の次数が３次なので、“３＋１＝４”列毎にパリティ検査行列Ｈを区切る。一般形で表現すると、本実施の形態では、“（検査式の次数＋１）×Ｎ”毎にパリティ検査行列Ｈの列を区切る。ここで、Ｎは自然数である。
【００５２】
また、LDPC-CCのパリティ検査行列Ｈのｊ＋１行目の検査式と、ｊ行目の検査式は、ｎビットだけシフトした関係にある。すなわち、LDPC-CCのパリティ検査行列Ｈの検査式は、パリティ検査行列Ｈの列方向にｎビットシフトする毎に成立する。そこで、本実施の形態では、“（検査式の次数＋１）×Ｎ／ｎ”毎にパリティ検査行列Ｈの行を区切る。図３の例では、検査式の次数＝３、ｎ＝２なので、“（３＋１）×１／２＝２（但し：Ｎ＝１）”行毎にパリティ検査行列Ｈの行を区切る。
【００５３】
図３の点線は、上述の方法で、パリティ検査行列の列及び行を区切った様子を示している。図３からも分かるように、上述の方法でパリティ検査行列Ｈの列及び行を区切って得られるプロトグラフ（図中の点線で囲まれた部分）は、３種類のパターンのいずれかに属するものとなる。すなわち、パリティ検査行列Ｈは、図中の参照符号Ｐ１で示すパターンのプロトグラフ、参照符号Ｐ２で示すパターンのプロトグラフ又は参照符号Ｐ３で示すパターンのプロトグラフが集まって構成されている。
【００５４】
次に、図４を用いて、本実施の形態によるＢＰ(Belief-Propagation)復号の手順を説明する。なお、図４において、＜１＞〜＜１８＞は処理の順番を示すものである。
【００５５】
処理＜１＞：１列から４列及び１行から４行で構成されるプロトグラフ（列領域Ｃ１と行領域Ｒ１とで形成されたプロトグラフ、及び、列領域Ｃ１と行領域Ｒ２とで形成されたプロトグラフ）の“１”が存在する位置において行処理を施す。
【００５６】
処理＜２＞：１列から４列及び１行から４行で構成されるプロトグラフ（列領域Ｃ１と行領域Ｒ１とで形成されたプロトグラフ、及び、列領域Ｃ１と行領域Ｒ２とで形成されたプロトグラフ）の“１”が存在する位置において列処理を施す。
【００５７】
処理＜３＞：１列から８列及び３行から４行で構成されるプロトグラフ（列領域Ｃ１と行領域Ｒ２とで形成されたプロトグラフ、及び、列領域Ｃ２と行領域Ｒ２とで形成されたプロトグラフ）の“１”が存在する位置において行処理を施す。加えて、５列から８列及び５行から６行で構成されるプロトグラフ（列領域Ｃ２と行領域Ｒ３とで形成されたプロトグラフ）の“１”が存在する位置において行処理を施す。
【００５８】
処理＜４＞：１列から４列及び１行から４行で構成されるプロトグラフ（列領域Ｃ１と行領域Ｒ１とで形成されたプロトグラフ、及び、列領域Ｃ１と行領域Ｒ２とで形成されたプロトグラフ）の“１”が存在する位置において列処理を施す。加えて、５列から８列及び３行から６行で構成されるプロトグラフ（列領域Ｃ２と行領域Ｒ２とで形成されたプロトグラフ、及び、列領域Ｃ２と行領域Ｒ３とで形成されたプロトグラフ）の“１”が存在する位置において列処理を施す。
【００５９】
処理＜５＞：５列から１２列及び５行から６行で構成されるプロトグラフ（列領域Ｃ２と行領域Ｒ３とで形成されたプロトグラフ、及び、列領域Ｃ３と行領域Ｒ３とで形成されたプロトグラフ）の“１”が存在する位置において行処理を施す。加えて、９列から１２列及び７行から８行で構成されるプロトグラフ（列領域Ｃ３と行領域Ｒ４とで形成されたプロトグラフ）の“１”が存在する位置において行処理を施す。
【００６０】
処理＜６＞：５列から８列及び３行から６行で構成されるプロトグラフ（列領域Ｃ２と行領域Ｒ２とで形成されたプロトグラフ、及び、列領域Ｃ２と行領域Ｒ３とで形成されたプロトグラフ）の“１”が存在する位置において列処理を施す。加えて、９列から１２列および５行から８行で構成されるプロトグラフ（列領域Ｃ３と行領域Ｒ３とで形成されたプロトグラフ、及び、列領域Ｃ３と行領域Ｒ４とで形成されたプロトグラフ）の“１”が存在する位置において列処理を施す。
【００６１】
以下同様に、処理＜７＞、処理＜８＞、・・・において、行処理又は列処理を施す。ここで、行処理とは上述したStep A・2に相当する処理である。なおすでにβが更新されている場合は、その更新値を用いる。同様に、列処理とは上述したStep A・3に相当する処理である。なおすでにαが更新されている場合は、その更新値を用いる。
【００６２】
以上のようなアルゴリズムとすることで、sum-product復号と比較し、良好な受信品質を得るための反復回数を削減することができるという効果を得ることができる。また、非特許文献３に記載されているShuffled BP復号と比較しても、良好な受信品質を得るための反復回数を削減することができるという効果を得ることができる。
【００６３】
次に、図４で説明したＢＰ復号方法とは異なるＢＰ復号方法を、図５を用いて説明する。図５で説明するＢＰ復号方法も、上述したように区切ったパリティ検査行列Ｈ（図３）を用いることを前提としている。
【００６４】
処理＜１＞：１列から４列及び１行から４行で構成されるプロトグラフ（列領域Ｃ１と行領域Ｒ１とで形成されたプロトグラフ、及び、列領域Ｃ１と行領域Ｒ２とで形成されたプロトグラフ）の“１”が存在する位置において行処理を施す。
【００６５】
処理＜２＞：１列から４列及び１行から４行で構成されるプロトグラフ（列領域Ｃ１と行領域Ｒ１とで形成されたプロトグラフ、及び、列領域Ｃ１と行領域Ｒ２とで形成されたプロトグラフ）の“１”が存在する位置において列処理を施す。
【００６６】
処理＜３＞：１列から４列及び１行から２行で構成されるプロトグラフ（列領域Ｃ１と行領域Ｒ１とで形成されたプロトグラフ）の“１”が存在する位置において行処理を施す。加えて、１列から８列及び３行から４行で構成されるプロトグラフ（列領域Ｃ１と行領域Ｒ２とで形成されたプロトグラフ、及び、列領域Ｃ２と行領域Ｒ２とで形成されたプロトグラフ）の“１”が存在する位置において行処理を施す。加えて、５列から８列及び５行から６行で構成されるプロトグラフ（列領域Ｃ２と行領域Ｒ３とで形成されたプロトグラフ）の“１”が存在する位置において行処理を施す。
【００６７】
処理＜４＞：１列から４列及び１行から４行で構成されるプロトグラフ（列領域Ｃ１と行領域Ｒ１とで形成されたプロトグラフ、及び、列領域Ｃ１と行領域Ｒ２とで形成されたプロトグラフ）の“１”が存在する位置において列処理を施す。加えて、５列から８列及び３行から６行で構成されるプロトグラフ（列領域Ｃ２と行領域Ｒ２とで形成されたプロトグラフ、及び、列領域Ｃ２と行領域Ｒ３とで形成されたプロトグラフ）の“１”が存在する位置において列処理を施す。
【００６８】
処理＜５＞：１列から８列及び３行から４行で構成されるプロトグラフ（列領域Ｃ１と行領域Ｒ２とで形成されたプロトグラフ、及び、列領域Ｃ２と行領域Ｒ２とで形成されたプロトグラフ）の“１”が存在する位置において行処理を施す。加えて、５列から１２列及び５行から６行で構成されるプロトグラフ（列領域Ｃ２と行領域Ｒ３とで形成されたプロトグラフ、及び、列領域Ｃ３と行領域Ｒ３とで形成されたプロトグラフ）の“１”が存在する位置において行処理を施す。
【００６９】
処理＜６＞：１列から４列及び１行から４行で構成されるプロトグラフ（列領域Ｃ１と行領域Ｒ１とで形成されたプロトグラフ、及び、列領域Ｃ１と行領域Ｒ２とで形成されたプロトグラフ）の“１”が存在する位置において列処理を施す。加えて、５列から８列及び３行から６行で構成されるプロトグラフ（列領域Ｃ２と行領域Ｒ２とで形成されたプロトグラフ、及び、列領域Ｃ２と行領域Ｒ３とで形成されたプロトグラフ）の“１”が存在する位置において列処理を施す。加えて、９列から１２列及び５行から８行で構成されるプロトグラフ（列領域Ｃ３と行領域Ｒ３とで形成されたプロトグラフ、及び、列領域Ｃ３と行領域Ｒ４とで形成されたプロトグラフ）の“１”が存在する位置において列処理を施す。
【００７０】
以下同様に、処理＜７＞、処理＜８＞、・・・において、行処理又は列処理を施す。ここで、行処理とは上述したStep A・2に相当する処理である。なお、すでにβが更新されている場合は、その更新値を用いる。同様に、列処理とは上述したStep A・3に相当する処理である。なお、すでにαが更新されている場合は、その更新値を用いるものとする。
【００７１】
以上のようなアルゴリズムとすることで、図４のアルゴリズムと同様に、sum-product復号と比較し、良好な受信品質を得るための反復回数を削減することができるという効果を得ることができる。また、非特許文献３に記載されているShuffled BP復号と比較しても、良好な受信品質を得るための反復回数を削減することができるという効果を得ることができる。
【００７２】
（２）構成
図６に、本実施の形態の送信装置の構成例を示す。符号化部１０２は、送信ディジタル信号１０１をLDPC―CC符号化し、これにより得た符号化データ１０３をインタリーブ部１０４に出力する。
【００７３】
インタリーブ部１０４は、符号化データ１０３及びフレーム構成信号１１２を入力とし、フレーム構成信号１１２で示されるフレーム構成に基づき符号化データ１０３をインタリーブし、これにより得たインタリーブ後のデータ１０５を変調部１０６に出力する。
【００７４】
変調部１０６は、インタリーブ後のデータ１０５、制御情報１１４及びフレーム構成信号１１２を入力とし、フレーム構成信号１１２で示される変調方式及びフレーム構成に基づき、インタリーブ後のデータ１０５及び制御情報１１４を変調すると共に送信フレームを形成し、これにより得た変調信号１０７を無線部１０８に出力する。無線部１０８は、変調信号１０７に対して、周波数変換や増幅等の所定の無線処理を施し、これにより得た送信信号１０９をアンテナ１１０に供給する。
【００７５】
フレーム構成信号生成部１１１は、フレーム構成の情報を含んだフレーム構成信号１１２を出力する。制御情報生成部１１３は、フレーム構成信号１１２を入力とし、通信相手が周波数同期・時間同期を獲得するための情報や通信相手に変調信号の変調方式を通知するための情報等を含んだ制御情報１１４を生成し、これを出力する。
【００７６】
図７に、本実施の形態の受信装置の構成例を示す。
【００７７】
無線部２０３は、受信アンテナ２０１で受信した受信信号２０２に対して、増幅や周波数変換等の所定の無線処理を施し、これにより得た変調信号２０４を直交復調部２０５に出力する。直交復調部２０５は、変調信号２０４を直交復調し、これにより得たベースバンド信号２０６をチャネル変動推定部２０７、制御情報検波部２０９及び対数尤度比演算部２１１に出力する。
【００７８】
チャネル変動推定部２０７は、ベースバンド信号２０６から例えばプリアンブルを検出し、このプリアンブルに基づいてチャネル変動を推定し、チャネル変動推定信号２０８を対数尤度比演算部２１１に出力する。制御情報検波部２０９は、ベースバンド信号２０６からプリアンブルを検出し、このプリアンブルに基づいてベースバンド信号２０６の時間同期・周波数同期を獲得し、同期獲得されたベースバンド信号２０６から送信データを除く制御情報を抽出し、この制御情報を制御信号２１０として出力する。
【００７９】
対数尤度比演算部２１１は、ベースバンド信号２０６、チャネル変動推定信号２０８、制御信号２１０を入力とし、例えば、非特許文献５、非特許文献６、非特許文献７で示されているように、チャネル変動推定信号２０８とベースバンド信号２０６とから、ビット毎の対数尤度比を求め、対数尤度比信号２１２を出力する。また、データ区間（例えばブロックサイズ）を示すタイミング信号２１７を出力する。
【００８０】
デインタリーバ２１３は、対数尤度比信号２１２を入力とし、対数尤度比信号２１２の並びをインタリーブ部１０４（図６）での並び替え前の順番に戻し、これにより得たデインタリーブ後の対数尤度比信号２１４を復号部２１５に出力する。
【００８１】
復号部２１５は、デインタリーブ後の対数尤度比信号２１４及びタイミング信号２１７を入力とし、デインタリーブ後の対数尤度比信号２１４を復号することで、受信データ２１６を得る。
【００８２】
次に、復号部２１５の構成について詳しく説明する。先ず、本実施の形態の復号部の構成を説明する前に、図８を用いてsum-product復号を行うための一般的な構成を説明し、次に図９を用いて本実施の形態のＢＰ復号を実現するための構成例について説明する。
【００８３】
図８は、sum-product復号を行う場合の、図７の復号部２１５の構成例を示している。
【００８４】
対数尤度比記憶部３０３は、対数尤度比信号３０１（図７の対数尤度比信号２１４に相当）及びタイミング信号３０２（図７のタイミング信号２１７に相当）を入力とし、タイミング信号３０２に基づいてデータ区間の対数尤度比を記憶する。記憶された対数尤度比は、必要に応じて適宜出力される。
【００８５】
行処理演算部３０５は、対数尤度比信号３０４及び列処理後の信号３１２を入力とし、パリティ検査行列Ｈに“１”が存在する位置において上述のStep A・2（行処理）の演算を行う。実際上、復号部２１５は反復復号を行うので、行処理演算部３０５は１回目の復号時には対数尤度比信号３０４を用いて行処理を行い（上述のStep A・1の処理に相当する）、２回目の復号時には列処理後の信号３１２を用いて行処理を行う。
【００８６】
行処理後の信号３０６は、行処理後データ記憶部３０７に記憶される。行処理後データ記憶部３０７は、すべての行処理後の値（信号）を記憶する。
【００８７】
列処理演算部３０９は、行処理後の信号３０８及び制御信号３１４を入力とし、制御信号３１４から最後の反復演算でないことを確認し、パリティ検査行列Ｈに“１”が存在する位置において上述のStep A・3（列処理）の演算を行う。
【００８８】
列処理後の信号３１０は、列処理後データ記憶部３１１に記憶される。列処理後データ記憶部３１１は、すべての列処理後の値（信号）を記憶する。
【００８９】
制御部３１３は、タイミング信号３０２に基づいて反復回数をカウントし、反復回数を制御信号３１４として出力する。
【００９０】
対数尤度比演算部３１５は、行処理後の信号３０８及び制御信号３１４を入力とし、制御信号３１４に基づいて最終回の反復演算であると判断した場合、パリティ検査行列Ｈに“１”が存在する位置に対して、行処理後の信号３０８の信号を用いてStep A・4の演算（対数尤度比の計算）を行うことで、対数尤度比信号３１６を得る。対数尤度比信号３１６は、判定部３１７に出力される。
【００９１】
判定部３１７は、対数尤度比信号３１７を用いて例えば式（９）を実行することで符号語を推定し、推定ビット３１８（図７の受信データ２１６に相当）を出力する。
【００９２】
次に、図９を用いて本実施の形態のＢＰ復号を実現するための構成例について説明する。
【００９３】
図９は、本実施の形態のＢＰ復号を実現するための、図７の復号部２１５の構成例を示している。すなわち、図９の復号部２１５は、図４や図５で説明したＢＰ復号を実現するための構成例である。
【００９４】
対数尤度比記憶部４０３は、対数尤度比信号４０１（図７の対数尤度比信号２１４に相当）及びタイミング信号４０２（図７のタイミング信号２１７に相当）を入力とし、タイミング信号４０２に基づいてデータ区間の対数尤度比を記憶する。記憶された対数尤度比は、必要に応じて適宜出力される。
【００９５】
行処理演算部４０５＃１は、図４又は図５の処理＜１＞の行処理を行うための演算部であり、対数尤度比信号４０４及び列処理後の信号４１３を入力とする。行処理演算部４０５＃１は、１回目の復号時には、対数尤度比信号４０４を用いて、図４又は図５の処理＜１＞の行処理を行う。２回目の復号時には、列処理後の信号４１３を用いて、図４又は図５の処理＜１＞の行処理を行う。
【００９６】
行処理演算部４０５＃１により得られた行処理後の信号４０６＃１は、行処理後データ記憶部４０７に記憶される。行処理後データ記憶部４０７は、記憶している行処理後のデータのうち、行処理後の信号４０６＃１で更新された値のみを更新する。
【００９７】
列処理演算部４１０＃１は、図４又は図５の処理＜２＞の列処理を行うための演算部であり、行処理後の信号４０８及び制御信号４１５を入力とする。列処理演算部４１０＃１は、図４又は図５の処理＜２＞の列処理を行うことで、列処理後の信号４１１＃１を得る。
【００９８】
列処理演算部４１０＃１により得られた列処理後の信号４１１＃１は、列処理後データ記憶部４１２に記憶される。列処理後データ記憶部４１２は、記憶している列処理後のデータのうち、列処理後の信号４１１＃１で更新された値のみを更新する。
【００９９】
行処理演算部４０５＃２は、図４又は図５の処理＜３＞の行処理を行うための演算部であり、対数尤度比信号４０４及び列処理後の信号４１３を入力とする。行処理演算部４０５＃２は、１回目の復号時には、対数尤度比信号４０４を用いて、図４又は図５の処理＜３＞の行処理を行う。２回目の復号時には、列処理後の信号４１３を用いて、図４又は図５の処理＜３＞の行処理を行う。
【０１００】
行処理演算部４０５＃２により得られた行処理後の信号４０６＃２は、行処理後データ記憶部４０７に記憶される。行処理後データ記憶部４０７は、記憶している行処理後のデータのうち、行処理後の信号４０６＃２で更新された値のみを更新する。
【０１０１】
列処理演算部４１０＃２は、図４又は図５の処理＜４＞の列処理を行うための演算部であり、行処理後の信号４０８及び制御信号４１５を入力とする。列処理演算部４１０＃２は、図４又は図５の処理＜４＞の列処理を行うことで、列処理後の信号４１１＃２を得る。
【０１０２】
列処理演算部４１０＃２により得られた列処理後の信号４１１＃２は、列処理後データ記憶部４１２に記憶される。列処理後データ記憶部４１２は、列処理後のデータのうち、列処理後の信号４１１＃２で更新された値のみを更新する。
【０１０３】
行処理演算部４０５＃３以降の行処理演算部、列処理演算部４１０＃３以降の列処理演算部においても上記と同様の演算が行われる。これにより、図４又は図５の手順＜５＞以降の処理が行われ、順次、行処理後のデータ及び列処理後のデータが更新される。
【０１０４】
制御部４１４は、タイミング信号４０２に基づいて反復回数をカウントし、反復回数を制御信号４１５として出力する。
【０１０５】
対数尤度比演算部４１６は、行処理後の信号４０９及び制御信号４１５を入力とし、最終回の反復演算における対数尤度比を求め、それを対数尤度比信号４１７として出力する。
【０１０６】
判定部４１８は、対数尤度比信号４１７を用いて式（９）を実行することで符号語を推定し、推定ビット４１９（図７の受信データ２１６に相当）を出力する。
【０１０７】
以上のように、図９のような構成を用いれば、図４及び図５で説明したＢＰ復号を実施することができる。
【０１０８】
因みに、図４で説明したＢＰ復号を実現する場合には、各行処理演算部４０５＃１，４０５＃２，・・・及び各列処理演算部４１０＃１，４１０＃２、・・・によって、図４に示したようにプロトグラフを処理する。一方、図５で説明したＢＰ復号を実現する場合には、各行処理演算部４０５＃１，４０５＃２，・・・及び各列処理演算部４１０＃１，４１０＃２、・・・によって、図５に示したようにプロトグラフを処理する。図９のような構成を用いれば、それ以外は同様の基本動作によって、図４及び図５で説明したＢＰ復号を実施できる。
【０１０９】
以上説明したように、本実施の形態によれば、パリティ検査行列Ｈによる検査式の次数がＤであり、パリティ検査行列Ｈのｊ＋１行目の検査式とｊ行目の検査式との関係がｎビットだけシフトした関係にある場合、“（Ｄ＋１）×Ｎ（Ｎ：自然数）”毎にパリティ検査行列Ｈの列が区切られ、かつ“（Ｄ＋１）×Ｎ／ｎ”毎にパリティ検査行列Ｈの行が区切られて形成されたプロトグラフを、行処理演算及び列処理演算の処理単位として演算を行う。
【０１１０】
これにより、行処理演算と列処理演算との間での更新値の引き継ぎ（つまり確率伝搬）を良好に行いながら高速なＢＰ復号が可能となる。実際上、パリティ検査行列Ｈを、“１”と“０”とを含む２つのパターンのプロトグラフＰ１，Ｐ２と、“０”のみからなるプロトグラフＰ３との、合計３種類のプロトグラフＰ１，Ｐ２，Ｐ３に分割していることが、良好な確率伝搬を実現する上で重要な要素となっている。
【０１１１】
なお、本実施の形態では、本発明をLDPC-CCに適用した場合について説明したが、本発明はこれに限らず、例えば非特許文献８に示されているような畳み込み符号に適用することもできる。すなわち、非特許文献８に示されているような畳み込み符号についてのパリティ検査行列Ｈを作成し、ＢＰ復号を行う場合にも、本実施の形態のＢＰ復号方法を適用することができる。この場合も、上述した実施の形態と同様の効果を得ることができる。
【０１１２】
また、本発明は、種々のＢＰ復号に広く適用できる。すなわち、本発明のＢＰ復号とは、例えば非特許文献９〜１１に記載されているような、ＢＰ復号を近似したmin-sum復号、offset ＢＰ復号、Normalized ＢＰ復号等も含むものである。これは、以下に説明する実施の形態においても同様である。
【０１１３】
（実施の形態２）
実施の形態１では、LDPC-CCのＢＰ復号において、演算規模が小さく、かつ、良好な受信品質を得ることができる方法及び構成について説明した。
【０１１４】
本実施の形態では、実施の形態１の基本原理及び基本構成を有しつつ、実施の形態１を改良することで、実施の形態１よりも高速なＢＰ復号を行うことができる方法及び構成を提示する。
【０１１５】
実施の形態１において、図４、図５を用いて説明した処理及び図９の構成は、メッセージ交換を逐次的に行うものである。これに対して、本実施の形態では、図１０に示すように、図４、図５の行処理及び列処理である処理＜１＞，＜２＞，………をグループ単位に分割し、グループ単位での処理を行うことにより、逐次処理による処理遅延を軽減し、高速なＢＰ復号を行うことができるようになっている。
【０１１６】
図１０において、処理＜１＞，＜２＞，………は、実施の形態１で説明した図４又は図５の処理＜１＞，＜２＞，………の行処理及び列処理演算に相当する。図１０の例では、処理＜１＞，＜２＞，＜３＞，＜４＞，＜５＞，＜６＞によって一つの処理グループＧ１を構成し、処理＜７＞，＜８＞，＜９＞，＜１０＞，＜１１＞，＜１２＞によって一つの処理グループＧ２を構成し、処理＜１３＞，＜１４＞，＜１５＞，＜１６＞，＜１７＞，＜１８＞によって一つの処理グループＧ３を構成し、処理＜１９＞，＜２０＞，＜２１＞，＜２２＞，＜２３＞，＜２４＞によって一つの処理グループＧ４を構成した。つまり、全処理＜１＞，＜２＞，………を、６つの処理を一つのグループとして分割した。
【０１１７】
図１１は、本実施の形態の復号部の構成例を示す。図１１の復号部５００は、例えば図７の復号部２１５として用いられる。
【０１１８】
対数尤度比記憶部＃１（５０３＃１）は、対数尤度比信号５０１（図７の対数尤度比信号２１４に相当）を入力とし、図１０のグループＧ１の処理に属する対数尤度比を記憶し、記憶した対数尤度比を信号５０４＃１として出力する。
【０１１９】
同様に、対数尤度比記憶部＃ｋ（５０３＃ｋ）は、対数尤度比信号５０１（図７の対数尤度比信号２１２に相当）を入力とし、図１０のグループＧｋ（１＜ｋ＜Ｚ）の処理に属する対数尤度比を記憶し、記憶した対数尤度比を信号５０４＃ｋとして出力する。また、対数尤度比記憶部＃Ｚ（５０３＃Ｚ）は、対数尤度比信号５０１（図２の対数尤度比信号２１２に相当）を入力とし、図１０のグループＧＺの処理に属する対数尤度比を記憶し、記憶した対数尤度比を信号５０４＃Ｚとして出力する。
【０１２０】
接続切替部５０５は、各グループＧ１〜ＧＺの処理に属する対数尤度比信号５０４＃１〜５０４＃Ｚ及び制御信号５２７を入力とし、制御信号５２７に基づいて入出力の接続を切り替えて、後段の行・列処理演算部＃１〜＃Ｚ（５０７＃１〜５０７＃Ｚ）に対数尤度比信号５０６＃１〜５０６＃Ｚを出力する。なお、接続切替部５０５の動作については、後で詳しく説明する。
【０１２１】
行・列処理演算部＃１（５０７＃１）は、接続切替部５０５からの対数尤度比信号５０６＃１、接続切替部５１４からの行処理後のデータ＃１（５１５＃１）及び接続切替部５２０からの列処理後のデータ＃１（５２１＃１）を入力とし、実施の形態１の図９を用いて説明したのと同様の行処理・列処理の演算を行うことで、行処理後のデータ５０８＃１及び列処理後のデータ５０９＃１を得る。
【０１２２】
行・列処理演算部＃ｋ（５０７＃ｋ）は、接続切替部５０５からの対数尤度比信号５０６＃ｋ、接続切替部５１４からの行処理後のデータ＃ｋ（５１５＃ｋ）及び接続切替部５２０からの列処理後のデータ＃ｋ（５２１＃ｋ）を入力とし、実施の形態１の図９を用いて説明したのと同様の行処理・列処理の演算を行うことで、行処理後のデータ５０８＃ｋ及び列処理後のデータ５０９＃ｋを得る。
【０１２３】
行・列処理演算部＃Ｚ（５０７＃Ｚ）は、接続切替部５０５からの対数尤度比信号５０６＃Ｚ、接続切替部５１４からの行処理後のデータ＃Ｚ（５１５＃Ｚ）及び接続切替部５２０からの列処理後のデータ＃Ｚ（５２１＃Ｚ）を入力とし、実施の形態１の図９を用いて説明したのと同様の行処理・列処理の演算を行うことで、行処理後のデータ５０８＃Ｚ及び列処理後のデータ５０９＃Ｚを得る。
【０１２４】
行・列処理演算部＃１〜＃Ｚ（５０７＃１〜５０７＃Ｚ）の処理内容については、後で詳しく説明する。
【０１２５】
接続切替部５１０は、行処理後のデータ５０８＃１〜５０８＃Ｚ及び制御信号５２７を入力とし、制御信号５２７に基づいて入出力の接続を切り替えて、後段の行処理後データ記憶部＃１〜＃Ｚ（５１２＃１〜５１２＃Ｚ）に行処理後のデータ５１１＃１〜５１１＃Ｚを出力する。なお、接続切替部５１０の動作については、後で詳しく説明する。
【０１２６】
行処理後データ記憶部＃１（５１２＃１）は、記憶している行処理後のデータのうち、行処理後のデータ５１１＃１で更新された値のみを更新する。また、行処理後データ記憶部＃１（５１２＃１）は、列処理を行うための行データ５１３＃１を出力する。
【０１２７】
同様に、行処理後データ記憶部＃Ｚ（５１２＃Ｚ）は、記憶している行処理後のデータのうち、行処理後のデータ５１１＃Ｚで更新された値のみを更新する。また、行処理後データ記憶部＃Ｚ（５１２＃Ｚ）は、列処理を行うための行データ５１３＃Ｚを出力する。
【０１２８】
接続切替部５１４は、行データ５１３＃１〜５１３＃Ｚ及び制御信号５２７を入力とし、制御信号５２７に基づいて入出力の接続を切り替えて、行・列処理演算部＃１〜＃Ｚ（５０７＃１〜５０７＃Ｚ）に接続切り替え後の行データ５１５＃１〜５１５＃Ｚを出力する。なお、接続切替部５１４の動作については、後で詳しく説明する。
【０１２９】
接続切替部５１６は、列処理後のデータ５０９＃１〜５０９＃Ｚ及び制御信号５２７を入力とし、制御信号５２７に基づいて入出力の接続を切り替えて、後段の列処理後データ記憶部＃１〜＃Ｚ（５１８＃１〜５１８＃Ｚ）に列処理後のデータ５１７＃１〜５１７＃Ｚを出力する。なお、接続切替部５１６の動作については、後で詳しく説明する。
【０１３０】
列処理後データ記憶部＃１（５１８＃１）は、記憶している列処理後のデータのうち、列処理後のデータ５１７＃１で更新された値のみ更新する。また、列処理後データ記憶部＃１（５１８＃１）は、行処理を行うための列データ５１９＃１を出力する。同様に、列処理後データ記憶部＃Ｚ（５１８＃Ｚ）は、記憶している列処理後のデータのうち、列処理後のデータ５１７＃Ｚで更新された値のみ更新する。また、列処理後データ記憶部＃Ｚ（５１８＃Ｚ）は、行処理を行うための列データ５１９＃Ｚを出力する。
【０１３１】
接続切替部５２０は、列データ５１９＃１〜５１９＃Ｚ及び制御信号５２７を入力とし、制御信号５２７に基づいて入出力の接続を切り替えて、行・列処理演算部＃１〜＃Ｚ（５０７＃１〜５０７＃Ｚ）に接続切り替え後の列データ５２１＃１〜５２１＃Ｚを出力する。なお、接続切替部５２０の動作については、後で詳しく説明する。
【０１３２】
制御部５２６は、タイミング信号５０２を入力とし、タイミング信号５０２に基づいて制御信号５２７を生成し、これを出力する。
【０１３３】
対数尤度比演算部５２２は、行データ５１３＃１〜行データ５１３＃Ｚ及び制御信号５２７を入力とし、制御信号５２７に基づいて最終回の反復演算であると判断した場合、対数尤度比を演算により求め、対数尤度比信号５２３を出力する。
【０１３４】
判定部５２４は、対数尤度比信号５２３を入力とし、対数尤度比信号５２３を用いて例えば式（９）を実行することで符号語を推定し、これにより得た推定ビット５２５を出力する。
【０１３５】
以上が、復号部５００の基本的な動作である。次に、図１１の復号部５００の構成と、図１０の行・列処理のスケジュールとの関係について、図１２及び図１３を用いて詳しく説明する。ここでは、グループ数をＺとして説明する。
【０１３６】
行処理後データ記憶部＃１（５１２＃１）は、グループＧ１（図１０）の行処理後のデータを記憶する。同様に、行処理後データ記憶部＃Ｚ（５１２＃Ｚ）は、グループＧＺの行処理後のデータを記憶する。
【０１３７】
列処理後データ記憶部＃１（５１８＃１）は、グループＧ１の列処理後のデータを記憶する。同様に、列処理後データ記憶部＃Ｚ（５１８＃Ｚ）は、グループＧＺの列処理後のデータを記憶する。
【０１３８】
図１２及び図１３は、行・列処理演算部＃１〜＃Ｚ（５０７＃１〜５０７＃Ｚ）それぞれの、時間軸における処理タイミングを示している。図１２及び図１３において、“Ｌ（Low）”の区間は、行・列処理の動作を行っていないことを示し、“Ｈ（High）”の区間は、行・列処理の動作を行っていることを示す。
【０１３９】
図１２に示すように、行・列処理演算部＃１は、“Ｈ”区間６０１＃１において、グループＧ１（図１０）の行・列処理を行う。この“Ｈ”区間６０１＃１において、他の行・列処理演算部＃２〜＃Ｚは、まだ、反復復号の動作を開始していない。
【０１４０】
行・列処理演算部＃１は、“Ｈ”区間６０２＃１において、グループＧ２の行・列処理を行う。この“Ｈ”区間６０２＃１と同区間であるＨ”区間６０１＃２において、行・列処理演算部＃２は、グループＧ１の行・列処理を行う。この区間において、他の行・列処理演算部＃３〜＃Ｚは、まだ、反復復号の動作を開始していない。
【０１４１】
行・列処理演算部＃１は、“Ｈ”区間６０３＃１において、グループＧ３の行・列処理を行う。この“Ｈ”区間６０３＃１と同区間である“Ｈ”区間６０２＃２において、行・列処理演算部＃２は、グループＧ２の行・列処理を行う。また、“Ｈ”区間６０３＃１と同区間である“Ｈ”区間６０１＃３において、行・列処理演算部＃３は、グループＧ１の行・列処理を行う。この区間において、他の行・列処理演算部＃４〜＃Ｚは、まだ、反復復号の動作を開始していない。
【０１４２】
以上のように、行・列処理演算部＃１〜＃Ｚは、順次反復復号を開始する。また、それぞれ行・列処理演算部＃１〜＃Ｚで行・列処理されるグループは、時間の経過に従って、行・列処理演算部＃１〜＃Ｚ間で一つずつ移動される。この動作を実現するために、図１１の接続切替部５０５、５１０、５１４，５１６、５２０は、入力と出力の接続を切り替える。
【０１４３】
図１３の時間軸における処理タイミングにおいて、区間（Ｎ−１）＃１は行・列処理演算部＃１が（Ｎ−１）回目の復号を行っていることを示している。同様に、区間（Ｎ−１）＃２は行・列処理演算部＃２が（Ｎ−１）回目の復号を行っていることを示している。このように、（Ｎ−１）＃ｋは行・列処理演算部＃ｋが（Ｎ−１）回目の復号を行っていることを示している。
【０１４４】
また、区間Ｎ＃１は行・列処理演算部＃１がＮ回目の復号を行っていることを示している。同様に、区間Ｎ＃２は行・列処理演算部＃２がＮ回目の復号を行っていることを示している。このように、区間Ｎ＃ｋは行・列処理演算部＃ｋがＮ回目の復号を行っていることを示している。
【０１４５】
各反復復号回の区間内では、図１２で説明したのと同様に、それぞれ行・列処理演算部＃１〜＃Ｚで行・列処理されるグループは、時間の経過に従って、行・列処理演算部＃１〜＃Ｚ間で一つずつ移動される（図１３の右半分を参照）。
【０１４６】
このような処理を行うことで、本実施の形態の復号部５００は、全ての行・列処理演算部＃１〜＃ＺがＮ回目の復号処理を完了すると、実施の形態１の復号部２１５（図９）のＮ回の復号処理のＺ倍、つまり、Ｚ×Ｎ回の復号処理を行ったことと等価となる。したがって、本実施の形態の復号部５００の構成を採用すれば、良好な受信品質を得るのに必要とする反復復号の回数を削減することができるので、実施の形態１の復号部２１５と比較して処理遅延を短くすることができ、高速なＢＰ復号を行うことができる。すなわち、復号部５００では、１回の反復復号においてパラレル処理によって復号部２１５のＺ倍の復号処理を行っているので、復号部２１５と同等の受信品質を得るまでに要する反復復号回数がほぼ１／Ｚ倍となるので、短時間で復号部２１５と同等の受信品質を得ることができる。
【０１４７】
以上説明したように、本実施の形態によれば、行処理及び列処理を複数のグループＧ１〜ＧＺに分割し、各グループＧ１〜ＧＺの行処理及び列処理を、各々の行・列処理演算部＃１〜＃Ｚ（５０７＃１〜５０７＃Ｚ）によって逐次的に実行し、かつ複数の行・列処理演算部＃１〜＃Ｚ（５０７＃１〜５０７＃Ｚ）によって時間をずらしながら並列に実行したことにより、実施の形態１よりも高速なＢＰ復号を行うことができる。
【０１４８】
なお、行処理及び列処理のグループ分割の仕方は、図１０に示したものに限らない。
【０１４９】
また、本実施の形態では、本発明をLDPC-CCに適用した場合について説明したが、本発明はこれに限らず、例えば非特許文献８に示されているような畳み込み符号に適用することもできる。すなわち、非特許文献８に示されているような畳み込み符号についてのパリティ検査行列Ｈを作成し、ＢＰ復号を行う場合にも、本実施の形態のＢＰ復号方法を適用することができる。この場合も、実施の形態と同様の効果を得ることができる。
【０１５０】
（実施の形態３）
本実施の形態では、受信側で実施の形態２で説明した復号を行う場合に適した、送信側でのインタリーブ方法を提示する。本実施の形態では、一例として、送信装置が図６のように、符号化を行った後にインタリーブを施す場合の構成について説明する。
【０１５１】
図１４は、図６の送信装置１００が送信する変調信号の時間軸におけるフレーム構成（１フレーム）の一例を示している。図１４において、変調信号は、プリアンブル８０１とデータシンボル８０２によって構成されている。プリアンブル８０１には、受信装置がチャネル変動を推定するためのパイロットシンボル、周波数オフセットを推定するためのシンボルやデータ以外の制御情報を伝送するためのシンボル等が含まれている。
【０１５２】
データシンボル（データを伝送するためのシンボル）８０２は、例えば図１のパリティ検査行列Ｈに基づくLDPC-CCの符号化が施されたものである。本実施の形態では、１フレームのデータシンボル８０２は、３６００シンボルで構成され、ＢＰＳＫ変調されているものとする。
【０１５３】
図１５は、例えば、図６のインタリーブ部１０４において、図１４のデータシンボル８０２を１フレーム単位（３６００シンボル単位）でランダムインタリーブした場合の、受信側での信号処理タイミングを示している。
【０１５４】
図１５（ａ）は、受信装置におけるデータシンボル８０２の受信状況を示している。“Ｈ”区間において、受信装置はデータシンボル８０２を受信している状況であり、“Ｌ”区間において、受信装置はデータシンボル８０２を受信していない状況であるものとする。
【０１５５】
図１５（ｂ）は、受信装置におけるデインタリーブの処理状況を示している。“Ｈ”区間において、受信装置はデインタリーブを行っている状況であり、“Ｌ”区間において、受信装置はデインタリーブを行っていない状況であるものとする。
【０１５６】
図１５（ａ）及び図１５（ｂ）からわかるように、図１４のデータシンボル８０２に対して１フレーム単位（３６００シンボル単位）でランダムインタリーブを施した場合、受信装置は３６００シンボル全てを受信完了しない限り、デインタリーブを施すことができない。
【０１５７】
図１５（ｃ）は、受信装置における復号部（図９、図１１参照）の処理状況を示している。“Ｈ”区間において、復号部は復号動作を行っている状況であり、“Ｌ”区間において、復号部は復号動作を行っていない状況である。
【０１５８】
このように、１フレーム単位（３６００シンボル単位）でランダムインタリーブを施した場合、図１５のように、デインタリーブの動作は、１フレームのデータシンボルを全て受信完了した後でなければ開始できない。また、復号動作（例えば図１２及び図１３）は、デインタリーブが完了した後（図１５（ｂ））でなければ開始できない。
【０１５９】
これが原因となって、処理遅延が生じる。そこで、本実施の形態では、実施の形態２で説明した、行・列処理をグループ分割し、分割したグループの行・列処理を、逐次的かつ並列に処理するといった特徴を活かしたインタリーブ方法を提案する。
【０１６０】
実施の形態１で説明したLDPC―CCの符号化処理においては、パリティ検査行列Ｈによる検査式の次数がＤであり、パリティ検査行列Ｈのｊ＋１行目の検査式とｊ行目の検査式との関係がｎビットだけシフトした関係にある場合、“（Ｄ＋１）×Ｎ（Ｎ：自然数）”毎にパリティ検査行列Ｈの列が区切られ、かつ“（Ｄ＋１）×Ｎ／ｎ”毎にパリティ検査行列Ｈの行が区切られて形成されたプロトグラフを、行処理演算及び列処理演算の処理単位として演算を行うようになされている。
【０１６１】
従って、インタリーブのブロックサイズを“（Ｄ＋１）×Ｎ（Ｎ：自然数）×Ｍ（Ｍ：自然数）”ビットに設定してこのブロックサイズ単位のインタリーブを行えば、インタリーブのブロックサイズが、図１０のようにグループに分割したブロックサイズの整数倍となるので、図１５で説明したような待ち時間を生じさせずに、受信した全てのビットをデインタリーブ処理することができる。この結果、受信装置での処理遅延を軽減できる。
【０１６２】
例えば、図１０のようにパリティ検査行列を分割した場合、（次数＋１）＝４、Ｎ＝１である。本実施の形態ではこれを考慮して、図１６に示すように、３６００シンボルのデータシンボル８０２を６分割することで、１ブロックを６００シンボルで構成する。これにより、図１６において、データシンボル８０２は、ブロック＃１（９０１＃１）、ブロック＃２（９０１＃２）、ブロック＃３（９０１＃３）、ブロック＃４（９０１＃４）、ブロック＃５（９０１＃５）及びブロック＃６（９０１＃６）で構成されることになる。
【０１６３】
そして、本実施の形態においては、ブロック内のみでインタリーブを施す。例えば、ＢＰＳＫ変調を用いると仮定すると、インタリーブ部１０４（図６）によってブロック＃１（９０１＃１）を構成する６００ビットでインタリーブを施す。同様に、ブロック＃２（９０１＃２）を構成する６００ビットでインタリーブを施す。つまり、ブロック＃ｋ（９０１＃ｋ）を構成する６００ビットでインタリーブを施す（ｋ＝１，２，・・・，６）。
このようにすることで、前述で述べたような、「ブロックサイズを“（次数＋１）×Ｎ（Ｎ：自然数）×Ｍ（Ｎ：自然数）”ビットをインタリーブのブロックサイズとする」条件を満すインタリーブ処理を実現できる。なぜなら、（次数＋１）×１＝（３＋１）×１＝４であり、６００／４＝１５０（自然数）となるからである。
【０１６４】
このようにすることで、受信装置は、１ブロックの受信を完了した直後にデインタリーブを施すことができ、かつ、図１１の復号器の場合、デインタリーブが完了した直後に行・列処理演算を開始することができる。これにより、図１５のように、１フレームの受信が完了するまでデインタリーブを待ち、かつ１フレーム分のデインタリーブが完了するまで復号を待つ方法と比較して、演算の遅延を短くすることができる。
【０１６５】
次に、図１７を用いて、図１６のようにデータシンボル区間をブロック分割し、ブロック内のみでインタリーブを施した場合の、図１１の復号部５００の処理タイミングについて説明する。
【０１６６】
図１７（ａ）は、受信装置におけるデータシンボル８０２の受信状況を示している。“Ｈ”区間において、受信装置はデータシンボル８０２を受信している状況であり、“Ｌ”区間において、受信装置はデータシンボル８０２を受信していない状況であるものとする。
【０１６７】
図１７（ｂ）は、図１６のブロック＃１（９０１＃１）を受信完了後に、ブロック＃１（９０１＃１）のデータをデインタリーブしていることを示している。すなわち、“Ｈ”区間において、ブロック＃１（９０１＃１）のデータがデインタリーブされる。
【０１６８】
図１７（ｃ）は、図１１の行・列処理演算部＃１（５０７＃１）の動作タイミングを示している。“Ｈ”区間において、行・列処理演算部＃１（５０７＃１）は、行・列処理演算を行う。因みに、動作開始直後は、図４又は図５の処理＜１＞を行う。図１７（ｄ）は、図１１の行・列処理演算部＃２（５０７＃２）の動作タイミングを示している。
【０１６９】
図１７（ａ）、図１７（ｂ）及び図１７（ｃ）からわかるように、ブロック＃１（９０１＃１）の受信完了直後に、デインタリーバ２１３（図７）によってブロック＃１（９０１＃１）のデータ全てをデインタリーブすることができ、かつデインタリーブ処理の完了直後に、行・列処理演算部＃１（５０７＃１）によって行・列処理演算を行うことができる。
【０１７０】
そして、図１７（ｄ）のように、行・列処理演算部＃２（５０７＃２）は、行・列処理演算部＃１（５０７＃１）が行・列処理演算を開始してからある一定の時間間隔（図１２において、行・列処理演算部＃１がグループＧ１の処理を開始してから行・列処理演算部＃２がグループＧ１の処理を開始するまでの時間間隔に相当）をおいて、行・列処理演算を開始する。行・列処理演算部＃２〜＃Ｚも、一定の時間間隔をおきながら、順次、行・列演算を開始する。
【０１７１】
図１７（ｅ）は、図１６のブロック＃２（９０１＃２）を受信完了後に、ブロック＃２（９０１＃２）のデータをデインタリーブしていることを示している。すなわち、“Ｈ”区間において、ブロック＃２（９０１＃２）のデータがデインタリーブされる。
【０１７２】
図１７（ａ）及び図１７（ｅ）からわかるように、ブロック＃２（９０１＃２）の受信完了直後に、デインタリーバ２１３（図７）によってブロック＃２（９０１＃２）のデータ全てをデインタリーブすることができる。
【０１７３】
なお、当然であるが、ブロック＃２（９０１＃２）のデータのデインタリーブ完了前に、図１１の行・列処理演算部＃ｋ（ｋ＝１，２，・・・，Ｚ）が、行・列処理を行うことができるデータは、ブロック＃１（９０１＃１）のデータに限定される。
【０１７４】
以上説明したように、本実施の形態によれば、LDPC-CCの符号化を行う送信装置において、１フレーム内のデータシンボル区間を２つ以上のブロックに分割し、１ブロックのデータを“（次数＋１）×Ｎ（Ｎ：自然数）×Ｍ（Ｍ：自然数）”ビットで構成し、ブロック内においてインタリーブを施すようにしたことにより、受信側における復号処理による演算の遅延を短くすることができる。受信側で実施の形態１や実施の形態２で説明したようなＢＰ復号を行う場合に特に有効である。
【０１７５】
本実施の形態では、LDPC-CCを例に説明したが、例えば、非特許文献８に示されている畳み込み符号に対し、パリティ検査行列Ｈを作成し、ＢＰ復号を行う場合も、同様に実施することができる。
【０１７６】
なお、本実施の形態では、本発明の送信方法及び送信装置を、LDPC-CCの符号化及びLDPC-CCのＢＰ復号を行うシステムに適用した場合について説明したが、本発明の送信方法及び送信装置はこれに限らず、例えば非特許文献８に示されているような畳み込み符号に適用することもできる。すなわち、非特許文献８に示されているような畳み込み符号についてのパリティ検査行列Ｈを作成し、ＢＰ復号を行う場合にも、本実施の形態の送信方法及び送信装置を適用することができる。この場合も、上述した実施の形態と同様の効果を得ることができる。
【０１７７】
また、本実施の形態では、ＢＰＳＫを行う場合を例に説明したが、これに限ったものではなく、ＱＰＳＫ、１６ＱＡＭ、６４ＱＡＭ等の他の変調方式を用いる場合でも、同様に実施することができる。
【０１７８】
（他の実施の形態）
ここでは、これまで説明してきたLDPC-CCのパリティ検査行列とは異なる形のパリティ検査行列を用いたLDPC-CCへの実施方法について説明する。ここでは、特に、非特許文献２に示されているように、プロトグラフと特定の位置とに、“１”が存在するパリティ検査行列を用いたLDPC-CCへの実施方法について詳しく説明する。
【０１７９】
図１８に、LDPC―CCのパリティ検査行列Ｈの一例を示す。図１８中の点線で囲まれた行列Ｈｎｐはプロトグラフと呼ばれる。パリティ検査行列ＨはプロトグラフＨｎｐを基礎として構成されている。つまり、プロトグラフＨｎｐは、LDPC-CCを構成するためのtransposed parity check matrixである。また、パリティ検査行列Ｈは、プロトグラフＨｎｐとは別に、特定の規則にしたがって、“１”が配置されている（図１８の○で囲まれた“１”）。なお、図１８のように、送信系列（符号化後のデータ）をｎｋ（ｋ：自然数）と表す。
【０１８０】
本実施の形態においては、図１９のようにパリティ検査行列Ｈを分割する。分割の規則は、以下のとおりである。
【０１８１】
１）プロトグラフＨｎｐの列数が４なので、パリティ検査行列Ｈの列を４つごとに区切る。なお、図１９では、一例として、“プロトグラフの列数”ごとに区切っているが、“（プロトグラフの列数）×Ｎ（Ｎ：自然数）”ごとに区切ればよい。
【０１８２】
２）プロトグラフＨｎｐの行数が３なので、パリティ検査行列Ｈの行を３つごとに区切る。なお図１９では、一例として、“プロトグラフの行数”ごとに区切っているが、“（プロトグラフの行数）×Ｍ（Ｍ：自然数）”ごとに区切ればよい。
【０１８３】
以上の規則１）及び規則２）に従ってパリティ検査行列Ｈを区切る。そして、このようにして区切られて形成されたプロトグラフを行処理演算及び列処理演算の処理単位として、図４又は図５に示したような処理手順でＢＰ復号を行えば、実施の形態１や実施の形態２で説明したのと同様の効果を得ることができる。つまり、図１８のように、プロトグラフと特定の位置とに、“１”が存在するパリティ検査行列を用いたLDPC-CCについても、パリティ検査行列Ｈを上記規則１）及び規則）のように分割するとことにより、実施の形態１と実施の形態２で説明したＢＰ復号を実施することができ、同様の効果を得ることができる。
【０１８４】
また、図１８のようにプロトグラフＨｎｐと特定の位置とに、“１”が存在するパリティ検査行列のLDPC―CCを用いた場合に、実施の形態３と同様に受信側における復号処理による演算の遅延を短くするためには、送信側で次のようなインタリーブ処理を行えばよい。すなわち、１フレーム内のデータシンボル区間を２つ以上のブロックに分割し、１ブロックのデータを、パリティ検査行列Ｈを構成するプロトグラフＨｎｐの列数×Ｎ（Ｎ：自然数）ビットで構成し、ブロック内においてインタリーブを施せばよい。
【０１８５】
本発明は、上記実施の形態に限定されず、種々変更して実施することが可能である。例えば、上記実施の形態では、主に、本発明をハードウェアで実現する場合について説明したが、本発明をソフトウェアで実現することも可能である。例えば、本発明の方法を実行するプログラムを予めＲＯＭ（Read Only Memory）に格納しておき、そのプログラムをＣＰＵ（Central Processor Unit）によって動作させるようにしてもよい。
【０１８６】
また、上記実施の形態では、主に、シングルキャリア伝送を行う送信装置及び受信装置（図６及び図７）に本発明を適用した場合を例にとって説明したが、本発明はこれに限らず、ＯＦＤＭ等のマルチキャリア伝送方式やスペクトル拡散通信方式を併用した伝送方式にも適用可能である。
【産業上の利用可能性】
【０１８７】
本発明は、LDPC―CCや畳み込み符号を用いた無線システムに広く適用できる。
【符号の説明】
【０１８８】
１００  送信装置
１０２  符号化部
１０４  インタリーブ部
２００  受信装置
２１３  デインタリーバ
２１５，５００  復号部
４０５＃１，４０５＃２，４０５＃３  行処理演算部
４０７，５１２＃１〜５１２＃Ｚ  行処理後データ記憶部
４１０＃１，４１０＃２，４１０＃３  列処理演算部
４１２，５１８＃１〜５１８＃Ｚ  列処理後データ記憶部
４１６，５２２  対数尤度比演算部
４１８，５２４  判定部
５０５，５１０，５１４，５１６，５２０  接続切替部
５０７＃１〜５０７＃Ｚ  行・列処理演算部
【図１】
2011182474.tif 000016
【図２】
2011182474.tif 000017
【図３】
2011182474.tif 000018
【図４】
2011182474.tif 000019
【図５】
2011182474.tif 000020
【図６】
2011182474.tif 000021
【図７】
2011182474.tif 000022
【図８】
2011182474.tif 000023
【図９】
2011182474.tif 000024
【図１０】
2011182474.tif 000025
【図１１】
2011182474.tif 000026
【図１２】
2011182474.tif 000027
【図１３】
2011182474.tif 000028
【図１４】
2011182474.tif 000029
【図１５】
2011182474.tif 000030
【図１６】
2011182474.tif 000031
【図１７】
2011182474.tif 000032
【図１８】
2011182474.tif 000033
【図１９】
2011182474.tif 000034
【図２０】
2011182474.tif 000035
【図２１】
2011182474.tif 000036