(57)【要約】【課題】  低密度パリティ検査符号の復号回路の規模を低減する。【解決手段】  パリティ検査行列の行処理部における外部値対数比αｍｎを算出する処理時に、行処理において利用されるデータのうち、絶対値が最小値および２番目の最小値を記憶する。処理データが、最小値と一致する場合には、２番目の最小値を出力し、最小値と不一致の場合には、最小値を出力する。これにより、復号処理時、ｍｉｎ−ｓｕｍ復号法に従って復号動作が行なわれる処理において最小値を求めるＭｉｎ演算を実行する部分の構成を簡略化することができる。【選択図】        図９
2005269535.tif 000002
【特許請求の範囲】
【請求項１】
所定数の信号単位で復号を行なう復号装置であって、
１単位内の前記所定数の信号について、尤度の最も低い第１の信号と前記第１の信号の次に尤度の低い第２の信号とを抽出して記憶する尤度記憶手段、
前記１単位の信号それぞれについて、前記１単位内において自身を除いて最小尤度の信号が選択されるように前記第１および第２の信号の一方を選択して出力する選択手段、および
前記選択手段により選択された信号と前記１単位内の信号の符号とから新たな信号を生成して前記１単位の信号の推定信号系列を生成する受信信号推定手段を備える、復号装置。
【請求項２】
前記選択手段は、
前記第１および第２の信号と前記１単位内の信号それぞれとを比較し、与えられた信号が前記第１の信号と同じ尤度のときには前記第２の信号を選択し、それ以外のときには前記第１の信号を選択して出力する、請求項１記載の復号装置。
【請求項３】
前記選択手段は、
前記第１の信号の前記１単位内の位置を記憶する位置情報記憶手段と、
前記１単位内の信号それぞれの位置情報と前記位置情報記憶手段に記憶された位置情報との比較結果に従って前記第１および第２の信号の一方を選択する信号選択手段を備える、請求項１記載の復号装置。
【請求項４】
前記信号は、符号付の値を有し、その絶対値を尤度として
前記尤度記憶手段が、前記第１および第２の信号を記憶する、請求項１記載の復号装置。
【請求項５】
入来信号を対数尤度比を算出して前記１単位の各信号を生成して前記尤度記憶手段へ与える手段をさらに備える、請求項１記載の復号装置。
【請求項６】
前記尤度記憶手段は、
第１の記憶手段と、
前記１単位の信号を順次入力し、前記第１の記憶手段の記憶値と入力信号とを比較し、尤度の小さいほうを前記第１の記憶手段に格納し、かつ尤度が大きいと判定された信号を次段へ転送する第１の比較手段と、
第２の記憶手段と、
前記第１の比較手段から転送された信号と前記第２の記憶手段の記憶値とを比較し、尤度の小さいほうを前記第２の記憶手段へ格納する第２の比較手段を備える、請求項１記載の復号装置。
【請求項７】
前記第１の記憶手段に格納される信号値の前記１単位内の位置を示す情報を格納する位置情報格納手段をさらに備える、請求項６記載の復号装置。
【請求項８】
前記１単位の信号から、検査行列の第１の方向において１の立つ位置に対応する位置に対応する信号を抽出して前記尤度記憶手段へ転送する抽出手段をさらに備える、請求項１記載の復号装置。
【請求項９】
パリティ検査行列の第１の方向に整列する要素を用いて入力信号の推定値を算出する処理の前処理を行なう前処理装置であって、
前記入力信号の１処理の単位の信号を入力し、絶対値の小さなほうから２つの信号を抽出して記憶する記憶手段と、
前記１処理単位内の信号について、前記記憶手段に記憶された値との比較に基づいて前記１処理単位の信号において自身を除く信号のうちから絶対値の一番小さな信号が選択されるように前記記憶手段に記憶された２つの信号の一方を選択して出力する最小値検出手段とを備え、前記最小値検出手段の出力値に従って前記１処理単位の信号の前記検査行列の第１の方向に整列する要素に基づく処理が実行される、前処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、入力符号を復号する復号装置およびその復号処理における所定の処理に対する前処理を行なうための回路に関する。より特定的には、この発明は、低密度パリティ検査符号を復号するための回路装置の構成に関する。
【背景技術】
【０００２】
データの通信システムを構築する場合には、高速通信、低消費電力、高通信品質（低ビット誤り率）等が要求される。受信符号の誤りを検出して訂正する誤り訂正技術は、これらの要求を満たす１つの技術として、無線、有線および記録システム等において幅広く利用されている。
【０００３】
近年、この誤り訂正技術の１つとして、低密度パリティ検査（ＬＤＰＣ：Low-Density Parity-Check）符号と、sum-product復号法とが注目されている。このＬＤＰＣ符号を利用する復号操作は、Chung等の非特許文献１（S. Y. Chung et al.,“On the Design of Low-Density Parity-Check Codes within 0.0045dB of the Shannon Limit”IEEE COMUNICATIONS LETTERS, VOL.5, No.2, Feb. 2001, pp.58-60）において議論されている。この非特許文献１においては、符号化率１／２のイレギュラーＬＤＰＣ符号を利用して白色ガウス通信路のシャノン（Shannon）限界まで０．０４ｄＢという復号特性が得られることが示されている。イレギュラーＬＤＰＣ符号は、パリティ検査行列の行重み（行において１が立つ数）および列重み（列において１が立つ数）が、一定ではない符号を示す。行重みおよび列重みが各行および各列において一定のＬＤＰＣ符号は、レギュラーＬＤＰＣ符号と呼ばれる。
【０００４】
この非特許文献１においては、ＬＤＰＣ符号をsum-product復号法に従って復号する数学的なアルゴリズムが示されているものの、その膨大な計算を具体的に行なう回路構成については何ら示していない。
【０００５】
Yeo等の非特許文献２（E. Yeo et al.,“VLSI Architectures for Iterative Decoders in Magnetic Recording Channels”IEEE Trans. Magnetics, Vol,37, No.2, March 2001, pp.748-755）は、ＬＤＰＣ符号の復号装置の回路構成について検討している。この非特許文献２においては、受信系列に基づいて情報シンボルの事後確率を、トレリスに基づくＭＡＰ（最大事後確率）アルゴリズム、すなわちＢＣＪＲアルゴリズムに従って計算する。このトレリスにおいて前方向および後方向の繰返しを各状態について計算し、これらの前方向および後方向の繰返し値に基づいて、事後確率を求めている。この計算式において、加算／比較／選択／加算装置を用いて計算する。ＬＤＰＣ符号の算出においては、sum-product復号法に基づき、検査行列を生成し、異なるチェックノードからの値を利用して、推定値を算出するように回路を構成している。
【０００６】
また、非特許文献３（和田山正、「低密度パリティ検査符号とその復号法について」、信号技報  ＭＲ２００1−８３、２００１年１２月）においては、ＬＤＰＣ符号とsum-product復号法を解説し、また対数領域でのmin-sum復号法が解説されている。この非特許文献３においては、加算、最小、正負の判定および正負の符号の乗算という４種類の基本演算のみでギャラガー（Gallager）のｆ関数に従う処理を実装することができることが示されている。
【非特許文献１】S. Y. Chung et al.,“On the Design of Low-Density Parity-Check Codes within 0.0045dB of the Shannon Limit”IEEE COMUNICATIONS LETTERS, VOL.5, No.2, Feb. 2001, pp.58-60
【非特許文献２】E. Yeo et al.,“VLSI Architectures for Iterative Decoders in Magnetic Recording Channels”IEEE Trans. Magnetics, Vol,37, No.2, March 2001, pp.748-755
【非特許文献３】和田山正、「低密度パリティ検査符号とその復号法について」、信号技報、ＭＲ２００１−８３、２００１年１２月
【発明の開示】
【発明が解決しようとする課題】
【０００７】
上述の非特許文献２および３においては、パリティ検査行列を生成して１次推定語を算出するために、sum-product法に従ってギャラガー（Gallager）のｆ関数を用いて外部値対数比αを更新し、次いで、この外部値対数比に基づいてシンボルの事前値対数比βを算出する処理が行なわれる。このため、ギャラガー関数の演算に長時間を有し、また回路規模も増大する。
【０００８】
上述の非特許文献３においては、sum-product復号法とmin-sum復号法とは等価であり、min-sum復号法を利用することにより、実装時の回路構成を簡略化することができることを示している。しかしながら、このmin-sum復号法を利用する場合においても、パリティ検査用の検査行列を用いて最小値を算出するＭｉｎ演算処理においては、各要素ごとにＭｉｎ演算を行なって最小値を求めており、符号の長さが増大するのに応じて、演算対象の要素数が増大し、同様、処理時間が長時間となり、また回路規模が大きくなり、また、その構成も複雑となる。
【０００９】
それゆえ、この発明の目的は、簡易な回路構成で、受信符号を復号することのできる復号装置を提供することである。
【００１０】
この発明の他の目的は、ＬＤＰＣ符号の復号化処理におけるmin-sum処理ステップを簡易な回路構成で実現することのできる復号装置を提供することである。
【課題を解決するための手段】
【００１１】
この発明の第１の観点に係る復号装置は、所定数の信号で構成される１単位内の信号について、尤度の最も低い第１の信号とこの第１の信号の次に尤度の低い第２の信号とを抽出して記憶する尤度記憶手段と、１単位内の信号それぞれについて、１単位内において自身を除いて最小尤度の信号が選択されるように第１および第２の信号の一方を選択して出力する選択手段と、この選択手段により選択された信号と１単位内の信号の符号とから新たな信号を生成して１単位の信号の推定信号系列を生成する受信信号推定手段を含む。
【００１２】
この発明の第２の観点に係る前処理装置は、パリティ検査行列の第１の方向に整列する要素を用いて入力信号の推定値を算出する処理の前処理を行なう装置であって、入力信号の１処理単位の信号を入力し、絶対値の小さなほうから２つの信号を抽出して記憶する記憶手段と、この１処理単位の信号について、この１処理単位の信号において自身を除く信号のうちの絶対値の一番小さな信号が選択されるように記憶手段に記憶された２つの信号の一方を選択して出力する最小値検出手段とを含む。この最小値検出手段の出力値に従って１処理単位の信号の検査行列の第１の方向に整列する要素に基づく処理が実行される。
【発明の効果】
【００１３】
第１の観点の復号装置においては、尤度の低い２つの信号値を記憶することが要求されるだけであり、処理単位内の信号値をすべて記憶することは要求されない。したがって、回路規模を低減することができる。また、単に、２つの信号を候補として選択を行なうだけであり、１処理単位内の他の信号すべてを選択対象として選択処理を行なう必要がなく、計算量が低減され、処理時間を短縮することができる。
【００１４】
第２の観点の前処理装置においては、入力信号の１処理単位の信号から絶対値の小さなほうから２つの信号を抽出して記憶し、この１処理単位の信号について、自信を除く信号のうちの絶対値の一番小さな信号が選択されるように記憶手段に記憶された２つの信号の一方を選択している。したがって、この最小値検出時に、すべての信号を記憶してこの１処理単位内の他の信号をすべて選択対象として最小値検出処理を行なう必要がなく、回路規模が低減され、また処理時間も低減される。これにより、復号時の最小値検出という外部値対数比の算出に対する前処理を高速で行なうことができる。
【発明を実施するための最良の形態】
【００１５】
［実施の形態１］
図１は、この発明に従う復号装置を用いる通信システムの構成の一例を示す図である。図１において、通信システムは、送信側において、送信情報に誤り訂正用の冗長ビットを付加して送信符号を生成する符号化器１と、この符号化器１からの（Ｋ＋Ｍ）ビットの符号を所定の方式に従って変調して通信路３へ出力する変調器２とを含む。
【００１６】
符号化器１は、Ｋビットの情報に対し、パリティ計算用の冗長ビットＭビットを付加して、（Ｋ＋Ｍ）ビットのＬＤＰＣ符号（低密度パリティ検査符号）を生成する。パリティ検査行列においては、行が冗長ビットに対応し、列が符号ビットに対応する。
【００１７】
変調器２は、この通信路３の構成に応じて、振幅変調、位相変調、コード変調、周波数変調または直行周波数分割多重変調などの変調を行なう。たとえば、通信路３が、光ファイバの場合、変調器２においては、レーザダイオードの輝度を送信情報ビット値に応じて変更させることにより、光の強度変調（一種の振幅変調）を行なっている。たとえば、送信データビットが“０”の場合には、このレーザダイオードの発光強度を強くして“＋１”として送信し、また送信データビットが“１”の場合、レーザダイオードの発光強度を弱くして、“−１”に変換して送信する。
【００１８】
受信部においては、通信路３を介して送信された変調信号に復調処理を施して、（Ｋ＋Ｍ）ビットのデジタル符号を復調する復調器４と、この復調器４からの（Ｋ＋Ｍ）ビットの符号にパリティ検査行列演算処理を施して元のＫビットの情報を再生する復号化器５が設けられる。
【００１９】
復調器４は、この通信路３における送信形態に応じて復調処理を行なう。たとえば、振幅変調、位相変調、コード変調、周波数変調および直行周波数分割多重変調等の場合、復調器４において、振幅復調、位相復調、コード復調、および周波数復調等の処理が行なわれる。
【００２０】
図２は、通信路３が光ファイバの場合の変調器２および復調器４の出力データの対応関係を一覧にして示す図である。図２において、上述のように、通信路３が光ファイバの場合、変調器２においては、送信データが“０”のときには、送信用のレーザダイオード（発光ダイオード）の発光強度を強くし、“１”を出力し、また送信データビットが“１”のときには、この発光強度を弱くしてビット“−１”を送信する。
【００２１】
この通信路３における伝送損失等により、復調器４に伝達される光強度は、最も強い強度から最も弱い強度までの間のアナログ的な強度分布を有する。復調器４においては、この入力された光信号を量子化処理（アナログ／デジタル変換）を行なって、この受光レベルを検出する。図２においては、８段階に受光レベルが量子化された場合の受信信号強度を示す。すなわち、受光レベルがデータ“７”のときには、発光強度がかなり強く、受光レベルが“０”のときには、光強度がかなり弱い状態である。各受光レベルは、符号付きデータに対応づけられ、復調器４から出力される。この復調器４の出力は、受光レベルが“７”のときにはデータ“３”が出力され、受光レベルが“０”のときには、データ“−４”が出力される。したがってこの復調器４からは、１ビットの受信信号に対し、多値量子化された信号が出力される。
【００２２】
復号化器５は、この復調器４から与えられた（Ｋ＋Ｍ）ビットの受信情報（各ビットは、多値情報を含む）を入力し、後に詳細に説明する、min-sum復号法に従ってＬＤＰＣパリティ検査行列を適用して、元のＫビットの情報を復元する。
【００２３】
なお、この図２においては、復調器４において、８レベルに量子化されたビットが生成されている。しかしながら、一般に、この復調器４においては、Ｌ値（Ｌ≧２）に量子化されたビットを用いて復号処理を行なうことができる。
【００２４】
また、図２においては、比較器を用いて、あるしきい値を使って受信信号のレベルを判定し、２値信号を生成してもよい。
【００２５】
図３は、この発明に従う復号化器５の構成を概略的に示す図である。この図３においては、復調器４および通信路３も併せて示す。復調器４は、通信路３から与えられた信号を復調する復調回路４ａと、この復調回路４ａにより生成されたアナログ復調信号をデジタル信号に変換するアナログ／デジタル変換回路４ｂを含む。このアナログ／デジタル変換回路４ｂの出力データＸｎが復号化器５へ与えられる。この復号化器５へ与えられるデータＸｎは、Ｌ値（Ｌ≧２）のデータである。以下、データＸｎは、多値量子化データであるため、シンボルと称す。復号化器５は、この入力シンボルＸｎ系列に対してmin-sum復号法に従って復号処理を行なって符号ビットＣｎを生成する。
【００２６】
復号化器５は、復調器４からの復調シンボルＸｎの対数尤度比λｎを生成する対数尤度比算出部１０と、パリティ検査行列の行処理を行なう行処理部１２と、パリティ検査行列の列処理を行なう列処理部１４と、対数尤度比算出部１０からの対数尤度比λｎと行処理部１２の出力ビット（外部値対数比）αｍｎとに従って符号を生成するループ判定部１６を含む。
【００２７】
対数尤度比算出部１０は、この受信信号のノイズ情報と独立に、対数尤度比λｎを生成する。通常、ノイズ情報を考慮した場合、この対数尤度比λｎは、Ｘｎ／２・σで与えられる。ここで、σは、ノイズの分散を示す。しかしながら、本実施の形態１においては、この対数尤度比算出部１０は、バッファ回路または定数乗算回路で形成され、対数尤度比λｎは、Ｘｎ・ｆで与えられる。ここで、fは非ゼロの正の数である。このノイズ情報を利用せずに、対数尤度比を算出することにより、回路構成が簡略化され、また計算処理も簡略化される。min-sum復号方法においては、検査行列の処理において、最小値を利用して演算を行なうため、信号処理において線形性が維持される。このため、ノイズ情報に従って出力データを正規化するなどの処理は不要である。
【００２８】
行処理部１２および列処理部１４は、それぞれ、次式（１）および（２）に従って、演算処理を行ない、パリティ検査行列の行の各要素についての処理（行処理）および列についての各要素についての処理（列処理）を実行する。行処理部１２において、列処理部１４から与えられる事前値対数比βｍｎと対数尤度比λｎとに従って外部値対数比αｍｎを更新する。
【００２９】
【数１】
2005269535.tif 000003
【００３０】
ここで、上式（１）および（２）それぞれにおいて、ｎ′∈Ａ（ｍ）＼ｎおよびｍ′∈Ｂ（ｎ）＼ｍは、自身を除く要素を意味する。外部値対数比αｍｎについては、ｎ′≠ｎであり、事前値対数比βｍｎについては、ｍ′≠ｍである。また、αおよびβの行列内の位置を示す添え字“ｍｎ”は、通常は下付文字で示されるが、本明細書においては、読みやすさのために、「横並びの文字」で示す。
【００３１】
また、関数ｓｉｇｎ（ｘ）は、次式（３）で定義される。
【００３２】
【数２】
2005269535.tif 000004
【００３３】
ここで、関数ｍｉｎは、最小値を求める演算を示す。
【００３４】
また、集合Ａ（ｍ）およびＢ（ｎ）は、２元Ｍ・Ｎ行列Ｈ＝［Ｈｍｎ］を復号対象のＬＤＰＣ符号の検査行列とした場合、集合［１，Ｎ］＝｛１，２，…，Ｎ｝の部分集合である。
【００３５】
Ａ（ｍ）＝｛ｎ：Ｈｍｎ＝１｝  …（４）
Ｂ（ｎ）＝｛ｍ：Ｈｍｎ＝１｝  …（５）
すなわち、部分集合Ａ（ｍ）は、検査行列Ｈの第ｍ行目において１が立っている列インデックスの集合を意味し、部分集合Ｂ（ｎ）は、検査行列Ｈの第ｎ列目において１が立っている行インデックスの集合を示す。
【００３６】
具体的に、今、図４に示す検査行列Ｈを考える。この図４に示す検査行列Ｈにおいては、第１行の第１列から第３列に“１”が立ち、また第２行の第３列および第４列に“１”が立ち、また第３行の第４列から第６列に、“１”が立つ。したがって、この場合、部分集合Ａ（ｍ）は以下のようになる。
【００３７】
Ａ（１）＝｛１，２，３｝、
Ａ（２）＝｛３，４｝、
Ａ（３）＝｛４，５，６｝。
【００３８】
同様、部分集合Ｂ（ｎ）については、以下のようになる。
【００３９】
Ｂ（１）＝Ｂ（２）＝｛１｝、
Ｂ（３）＝｛１，２｝、
Ｂ（４）＝｛２，３｝
Ｂ（５）＝Ｂ（６）＝｛３｝
この検査行列Ｈにおいて、タナー（Tanner）グラフを用いた場合、列に対応する変数ノードと行に対応するチェックノードの接続関係が、この“１”により示される。これを、本明細書においては「“１”が立つ」と称している。すなわち、図５に示すように、変数ノード１，２，３は、チェックノードＸ（第１行）に接続され、変数ノード３，４が、チェックノードＹ（第２行）に接続される。変数ノード４，５，６が、チェックノードＺ（第３行）に接続される。この変数ノードが検査行列Ｈの列に対応し、チェックノードＸ，ＹおよびＺが、この検査行列Ｈの各行に対応する。従って、図４に示す検査行列は、情報ビットが３ビット、冗長ビットが３ビットの合計６ビットの符号に対して適用される。
【００４０】
この検査行列Ｈは、“１”の数は少なく、低密度の検査行列であり、これにより、計算量を低減できる。
【００４１】
この変数ノードとチェックノードの間で各条件確率Ｐ（Ｘｉ｜Ｙｉ）を伝播させ、ＭＡＰアルゴリズムに従って、もっともらしい符号を各変数ノードについて決定する。ここで、条件付確率Ｐ（Ｘｉ｜Ｙｉ）は、Ｙｉの条件下でＸｉとなる確率を示す。
【００４２】
ループ判定部１６は、これらの行処理部１２および列処理部１４における演算処理結果に基づいて、１次推定語を生成し、これらの１次推定語が符号語を構成しているかを検査する。このパリティ検査時において、シンドロームが“０”とならない場合には、再び処理を繰返し実行する。この処理の繰返し回数が所定値に到達すると、そのときの１次推定語を符号語として出力する。
【００４３】
本発明においては、前述の式（１）における最小値関数ｍｉｎの演算処理操作（以下、Ｍｉｎ演算と称す）時に、すべての入力データ（シンボル）Ｘｎの対数尤度比λｎおよび事前値対数比βｍｎを利用する代わりに、符号系列の｜λｎ＋βｍｎ｜の最小値および次の最小値を記憶し、これらのいずれかを選択することにより、この最小値関数ｍｉｎの演算を実行する。
【００４４】
以下、この行処理部１２における外部値対数比αｍｎを算出する動作について具体的に説明する。今、入力シンボルＸｎの系列として、次式で示される入力シンボルを考える。
【００４５】
Ｘｎ＝（３，１，２，−１，１，２）
パリティ検査行列（以下、単に検査行列と称す）Ｈとしては、図４に示す検査行列Ｈを利用する。
【００４６】
検査行列Ｈの第１行の処理としては、図５に示すチェックノードＸにおける処理が実行される。この場合、図６（Ａ）に示すように、外部値対数比αｍｎは、チェックノード２および３の値（λ２＋β１２）および（λ３＋β１３）を用いて絶対値の最小値を検出し、かつこれらのチェックノード２および３の値の符号を乗算することにより求められる。したがって、外部値対数比α１１は、次式で表わされる。
【００４７】
α１１＝ｓｉｇｎ（λ２＋β１２）・ｓｉｇｎ（λ３＋β１３）
・Ｍｉｎ（｜λ２＋β１２｜，｜λ３＋β１３｜）
チェックノード４から６は、検査行列Ｈの対応の要素が“０”であり、この演算処理には利用されない。符号“・”は、乗算を示す。
【００４８】
図６（Ｂ）に示すように、外部値対数比α１２は、同様、チェックノード１および３の値（λ１＋β１１）および（λ３＋β１３）を用いて、次式で求められる。
【００４９】
α１２＝ｓｉｇｎ（λ１＋β１１）・ｓｉｇｎ（λ３＋β１３）
・Ｍｉｎ（｜λ１＋β１１｜，｜λ３＋β１３｜）
また、図６（Ｃ）に示すように、外部値対数比α１３は、チェックノード１および２の値（λ１＋β１１）および（λ２＋β１２）を用いて算出される。この外部値対数比α１３は、したがって、次式で表わされる。
【００５０】
α１３＝ｓｉｇｎ（λ１＋β１１）・ｓｉｇｎ（λ２＋β１２）
・Ｍｉｎ（｜λ１＋β１１｜，｜λ２＋β１２｜）
上述のように第１行の演算操作においては、図６（Ａ）から図６（Ｃ）に示すように、対応の行内において自身を除く最も絶対値の小さな要素を算出し、かつそれらの符号を乗算する。
【００５１】
したがって、処理単位内のシンボルにおいて、絶対値が最も小さいシンボル、すなわち最も尤度の低い情報（正確さについての信頼性に関連する情報、すなわち確率情報に対応）を求めて、外部値対数比を求める。すなわち、パリティ検査行列を利用する場合、“１”が存在するビット位置のシンボルは、通信路における信頼性に関する情報を有している。そこで、信頼性の最も低い（尤度の最も低い）、すなわち絶対値の最も小さい、誤っている可能性の最も高いシンボルを検出し、その及ぼす影響が最も大きいと考えて、それを利用して絶対値を求める。これがＭｉｎ演算の具体的な処理内容である。
【００５２】
この外部値対数比αｍｎの符号は、処理単位内の信号系列の影響を及ぼす誤りのある可能性の高い符号に対する符号を全て乗算することにより、この符号（外部値対数比）の符号を推定する。最も信頼性の低い状態から処理を開始し、この処理を繰返し実行することにより、最も信頼性の高い符号値に到達する。この処理操作が、min-sum復号法におけるＭｉｎ演算処理の内容である。
【００５３】
例えば、図２に示す復調器の出力において、送信符号ビットが“１”または“０”の時には、出力値は、“３”または“−４”となる。しかしながら、通信路における伝送損失などの影響により、値が“０”または“−１”となると、それらの絶対値が小さくなっており、誤りの発生している可能性が高い。このような絶対値の小さな、不確実な受信信号を用いて元の符号を復元する。
【００５４】
以下の説明においては、この絶対値の最も小さな信号を、エラーの発生確率が高いため、尤度が最も低い信号と称す。
【００５５】
これらの求められた外部値対数比αｍｎは、図３に示す列処理部１４およびループ判定部１６へ供給される。この列処理部１４は、先の式（２）において示された演算処理を行ない、検査行列Ｈの各行において生成された外部値対数比を用いて、自身を除く行以外の対応の列の“１”が立っている位置の外部値対数比を加算する。したがって、検査行列Ｈが図４に示される構成の場合、図７に示すように、事前値対数比β１１は、第１列において自身が属する第１行以外には“１”が立っていないため、“０”となる。
【００５６】
ループ判定部１６は、この行処理部１２で生成される外部値対数比αｍｎと対数尤度比算出部１０からの対数尤度比λｎとを用いて、複数の符号で構成される符号語を生成する。符号の数は、検査行列の列の数に対応する。
【００５７】
図８は、このループ判定部１６の処理動作を示すフロー図である。以下、図８を参照して、ループ判定部１６の処理操作について説明する。
【００５８】
まず、初期動作として、ループ回数および事前値対数比βｍｎの初期設定が行なわれる。このループ回数は、列処理部１４で生成された事前値対数比βｍｎを用いて再び行処理部１２で外部値対数比αｍｎを生成するループにおける演算回数を示す。このループ回数においては、最大値が予め定められる。事前値対数比βｍｎは、“０”に初期設定される（ステップＳＰ１）。
【００５９】
次いで、受信シンボル系列に従って、対数尤度比λｎおよび外部値対数比αｍｎが、それぞれ、対数尤度比算出部および行処理部により生成されて、ループ判定部１６へ供給される（ステップＳＰ２）。
【００６０】
ループ判定部１６は、これらの供給された対数尤度比λｎおよび外部値対数比αｍｎに従って、演算λｎ＋Σαｍ′ｎを行って推定受信語Ｑｎを算出する（ステップＳＰ３）。ここで、総和Σは、部分集合Ｂ（ｎ）の要素ｍ′について実行される。
【００６１】
このステップＳＰ３において算出された値Ｑｎの正負の符号を判定し（ステップＳＰ４）、１次推定符号Ｃｎを生成する（ステップＳＰ５）。この符号の正／負判定においては、たとえば、推定受信語Ｑｎが２の補数表示されているときには、最上位ビット（符号ビット）のビット値を見ることにより、正および負の判定を行なうことができる。
【００６２】
推定符号Ｃｎが全て生成され、符号語（Ｃ１，・・・，ＣＮ）が生成されると、次いでパリティ検査を実行する（ステップＳＰ６）。このパリティ検査においては、先の検査行列Ｈの転置行列を用いて、（Ｃ１，…，ＣＮ）・Ｈt＝０を計算する。この計算により、生成されるシンドロームが０であれば、１次推定語（Ｃ１，…，ＣＮ）を推定語として出力する（ステップＳＰ９）。
【００６３】
一方、この生成されたシンドロームが０と異なる場合には、ループ回数が最大値であるかの判定が行なわれる（ステップＳＰ７）。すなわち、この１次推定語の生成回数をカウントし、その生成回数が所定の最大回数に到達すると、その符号についての算出をそれ以上をやめて、現在生成されている１次推定語を符号語として出力する（ステップＳＰ９）。これにより、収束性の悪いノイジーな符号に対して、不必要に演算処理時間が要するのを防止する。
【００６４】
ステップＳＰ７において、ループ回数が最大値に到達していないと判定されると、このループ回数を１インクリメントして、再び、行処理部１２および列処理部１４における処理を開始させて、再びステップＳＰ２からの処理を実行する。
【００６５】
これら一連の処理が、いわゆるＬＤＰＣのmin-sum復号法の処理動作である。パリティ計算行列Ｈとして、疎な行列、すなわち１の数の少ない行列を利用することにより、計算回数を低減する。しかしながら、Ｍｉｎ演算においては、“１”が存在するノードの値をすべて利用して最小絶対値を検出する必要がある。したがって、このパリティ検査行列Ｈの規模が、受信シンボルの数の増大に応じて大きくなった場合、応じて“１”の数も増大し、このＭｉｎ演算を行なう部分の回路規模が増大する。本発明においては、Ｍｉｎ演算を、以下に述べる手順に従って、小規模の回路を用いて高速で演算する。
【００６６】
図９は、この発明の実施の形態１に従う行処理部１２の処理操作を示すフロー図である。以下、図９を参照して、この発明の実施の形態１に従う行処理部の操作について説明する。
【００６７】
また、検査行列Ｈの部分集合Ａ（ｍ）に従って、｜λｎ′＋βｍｎ′｜の系列を抽出する（ステップＳＰ１０）。
【００６８】
これらの抽出された絶対値系列から、最小値および２番目の最小値を検出して記憶する（ステップＳＰ１１）。最小値および２番目の最小値は、値が同じ場合も許容される。すなわち、外部値対数比αｍｎの算出時には、自身を除く集合から、最小絶対値（以下、単に最小値と称す）を選択する操作が必要とされるため、この最小値および２番目の最小値が同じ値であってもよい。次に、Ｍｉｎ演算を実行する。入力値｜λｎ′＋βｍｎ′｜が、記憶された最小値と一致するかの判定が行なわれる（ステップＳＰ１２）。
【００６９】
最小値と一致する場合には、２番目の最小値が対応のＭｉｎ演算値として選択される（ステップＳＰ１３）。一方、この最小値と一致しない場合には、比較された最小値をＭｉｎ演算値として選択して出力する（ステップＳＰ１４）。
【００７０】
これらのステップＳＰ１３およびＳＰ１４により選択されたＭｉｎ演算値に対し、符号を乗算して、外部値対数比αｍｎを生成する（ステップＳＰ１５）。
【００７１】
したがって、タナーグラフの変数ノード（検査行列の“１”が立ったノード）の値をすべて記憶することは要求されず、１番目および２番目の最小値を記憶することが要求されるだけであり、大幅に回路規模を低減することができる。また、単に、最小値との比較のみでＭｉｎ演算が実行されるため、残りの絶対値成分との比較を行なう必要がなく、演算時間が短縮される。
【００７２】
ステップＳＰ１５における符号の乗算時においては、単に、自身を除く値の符号の乗算だけであり、各ノードに対する値が２の補数表示の場合、１ビットで符号を表示することができ、符号乗算のための符号を記憶する記憶部の容量は大幅に低減される。この場合、すべての変数ノードの符号の乗算値を予め最小値検出時に求めておけば、全符号の積の値と自身の符号とに基づいて、符号の乗算を容易に行なうことができる。すなわち、全変数ノードの符号の積が正のとき、自身が負であれば、自身を除く演算値の符号の積は負である。したがって、たとえば２の補数表示で符号ビットの“１”が負を表わす場合、全ノードの符号の積を示す符号ビットと自身の符号との一致／不一致を見ることにより、符号演算の乗算処理を行なうことができ、同様、符号乗算処理も簡略化され、外部値対数比αｍｎの算出が大幅に簡略化される。
【００７３】
今、以下に示す部分集合Ｖｍを考える。
【００７４】
Ｖｍ＝｛ｖ１，ｖ２，ｖ３，…，ｖｋ−１，ｖｋ｝
ここで、ｖｉ＝｜λｉ＋βｍｉ｜
Ｍｉｎ演算を考える。今、最小値がｖ１であり、２番目の最小値がｖｋであるとする。この場合、Ｍｉｎ演算を、外部値対数比αｍ１に対して行なう場合を考える。この場合、値ｖ２からｖｋのうちの最小値を算出する。今、最小値が、値ｖ１であるため、この値ｖ１に対するＭｉｎ演算としては、２番目の最小値ｖｋを選択することにより、正しいＭｉｎ演算結果が求められる。ｖ２については、値ｖ１およびｖ３からｖｋのうちの最小値を求めるため、最小値ｖ１を選択することにより、Ｍｉｎ演算結果が求められる。同様、値ｖｋについては、自身以外もｖ１からｖｋ−１の間の最小値を選択するため、ｖ１を選択する。したがって上述の図９に示すステップＳＰ１２からＳＰ１４の操作を行なうことにより、正確に、Ｍｉｎ演算を行なうことができる。
【００７５】
図１０は、図３に示す行処理部１２のＭｉｎ演算を行なう部分の構成を概略的に示す図である。図１０において、Ｍｉｎ演算部は、入力値λｎ＋βｍｎを用いてその絶対値を記憶する絶対値記憶部２０と、入力値λｎ＋βｍｎを順次入力して絶対値の最も小さな第１最小値ＦＩＭを記憶する第１最小値記憶部２２と、入力値λｎ＋βｍｎの系列を受け、第２番目の最小値ＳＥＭを記憶する第２最小値記憶部２４と、この入力値系列の位置情報ｉに従って絶対値記憶部２０の対応の絶対値ｖａｌを読出して、第１最小値ＦＩＭと比較しその比較結果に基づいて第１最小値ＦＩＭおよび第２最小値ＳＥＭの一方を選択してＭｉｎ演算結果ＭＩＮを出力する選択器２６を含む。
【００７６】
この絶対値記憶部２０においては、検査行列Ｈの対応の行（第ｍ行）の要素が順次入力されてその絶対値が格納される。この場合、検査行列Ｈにおいて“１”が立つ部分集合Ａ（ｍ）の列インデックスに対応する要素のみが順次入力される。位置情報ｉは、この部分集合Ａ（ｍ）における各要素の位置を示す。
【００７７】
図１１は、図１０に示す選択器２６の構成の一例を示す図である。図１１において、選択器２６は、絶対値記憶部２０から位置情報ｉに従って読出された絶対値ｖａｌと第１最小値記憶部２２に格納された第１最小値ＦＩＭと比較する比較器３０と、比較器３０の出力信号に従って第１最小値ＦＩＭおよび第２最小値ＳＥＭの一方を選択してＭｉｎ演算結果ＭＩＮを出力するマルチプレクサ（ＭＵＸ）３２を含む。
【００７８】
比較器３０が、絶対値記憶部２０から読出された絶対値ｖａｌと第１最小値ＦＩＭとが等しいことを示しているときには、マルチプレクサ３２は、第２最小値ＳＥＭを選択して、Ｍｉｎ演算結果ＭＩＮとして出力する。一方、比較器３０が、絶対値記憶部２０からの絶対値ｖａｌが第１最小値ＦＩＭと値が異なることを検出したときには、マルチプレクサ３２は、第１最小値ＦＩＭを選択して、Ｍｉｎ演算結果ＭＩＮとして出力する。
【００７９】
したがって、図１０および図１１に示すように、単に各絶対値ｖａｌと第１最小値ＦＩＭの比較結果に基づいて、第１の最小値ＦＩＭおよび第２の最小値ＳＥＭの一方を選択するだけで、Ｍｉｎ演算結果を生成することができ、回路規模および演算時間を大幅に短縮することができる。
【００８０】
なお、この絶対値記憶部２０は、たとえばシフトレジスタ回路などのＦＩＦＯ（ファーストイン・ファーストアウト回路）で構成されている場合、この部分集合Ａ（ｍ）内の要素の位置を示す位置情報ｉを特に与える必要はない。検査行列の対応の行の“０”に対応する列の要素は用いられないため、このＦＩＦＯ回路から順次絶対値ｖａｌを、その入力順序に従って順次出力することができ、位置情報ｉを用いることなく、絶対値記憶部２０から絶対値ｖａｌを位置順に読出すことができる。
【００８１】
なお、絶対値記憶部２０に格納される絶対値は、この演算値が、２の補数表示の場合、単に符号ビットを除くビットを演算値に対して格納する。また、この２の補数表示を利用する場合、符号ビットにおける“１”の数をカウントすることにより、絶対値記憶部２０に格納される値の符号の全ての符号の積の正／負を判定することができる。位置情報ｉに従って、この絶対値記憶部２０に格納される絶対値ｖａｌに対応する符号ビットと全符号積の一致／不一致を判定することにより、Ｍｉｎ演算で用いられる要素の符号の乗算結果を求めることができる。
【００８２】
したがって、この場合には、Ｍｉｎ演算および符号乗算演算を並行して行なって、外部値対数比αｍｎを高速で検出することができる。
【００８３】
図１２は、Ｍ行Ｎ列の検査行列に対するＭｉｎ演算部の構成を示す図である。この図１２に示すように、第１行から第Ｍ行それぞれに対して、Ｍｉｎ演算部３５−１〜３５−Ｍが設けられる。第１行Ｍｉｎ演算部３５−１に対しては、入力値λｎ＋β１ｎが与えられ、Ｍｉｎ演算結果ＭＩＮ（１）が出力される。第２行Ｍｉｎ演算部３５−２に対しては、入力値λｎ＋β２ｎが与えられ、Ｍｉｎ演算結果ＭＩＮ（２）が出力される。第Ｍ行Ｍｉｎ演算部３５−Ｍにおいては、入力値λｎ＋βＭｎが与えられ、Ｍｉｎ演算結果ＭＩＮ（Ｍ）が出力される。
【００８４】
これらのＭｉｎ演算部３５−１から３５−Ｍは、図１０および図１１に示す構成を備える。それぞれに対し、対応の行における“１”の存在する列を示す情報が位置情報として与えられて、Ｍｉｎ演算処理が実行される。
【００８５】
したがって、パリティ計算行列Ｈの規模が大きくなる場合においても、単に、この図１２に示すように行それぞれに、Ｍｉｎ演算部３５−１〜３５−Ｍが設けられるだけである。Ｍｉｎ演算部３５−１〜３５−Ｍ各々においては、第１および第２の最小値を記憶し、かつ各部分集合Ａ（ｍ）に対応する値を記憶することが要求されるだけであり、回路規模は、行方向において増大するだけであり、列方向における回路規模の増大は抑制される。
【００８６】
このＭｉｎ演算部は、ＬＤＰＣ符号の復号化処理において用いられる。しかしながら、パリティ検査行列Ｈが疎（sparce）な行列でなく、“１”の数が大きく、ハニング行重み（行における“１”が存在する数）が大きい場合においても、単に第１および第２の最小値を記憶することが要求されるだけである。したがって、このＭｉｎ演算部の構成を利用することにより、ＬＤＰＣ符号以外のＢＣＨ符号およびＣＲＣ符号等においても、同様のmin-sum復号アルゴリズムを用いて復号処理を行うことができる。
【００８７】
なお、位置情報ｉは、このＭｉｎ演算処理において、クロック信号に同期した処理が行なわれる場合、この処理サイクルを規定するクロック信号をカウントすることにより、生成することができる。
【００８８】
以上のように、この発明の実施の形態１に従えば、Ｍｉｎ演算処理において、部分集合に対応する要素の第１および第２の最小値を記憶して、各要素の絶対値と比較しており、検査行列の行が増大する場合においても、回路規模の増大を抑制して、高速でＭｉｎ演算処理を実行することができる。
【００８９】
［実施の形態２］
図１３は、この発明の実施の形態２に従うＭｉｎ演算部の構成を概略的に示す図である。図１３において、Ｍｉｎ演算部は、入力値λｎ＋βｍｎを用いて、その絶対値の第１および第２の最小値をそれぞれ記憶する第１最小値記憶部２２および第２最小値記憶部２４と、この第１最小値記憶部２２に格納される第１の最小値の行処理の処理単位内の位置情報ＰＯＳを記憶する最小位置記憶部４０と、この最小位置記憶部４０の位置ＰＯＳと演算対象の信号の位置情報ｉとの比較に基づいて第１最小値ＦＩＭおよび第２最小値ＳＥＭの一方を選択してＭｉｎ演算結果ＭＩＮを出力する選択器４２を含む。
【００９０】
この図１３に示すＭｉｎ演算部の構成においては、単に第１の最小値ＦＩＭの行処理単位内の位置情報を記憶することが要求されるだけであり、各行処理単位内の信号の値を記憶する必要はなく、回路規模がさらに低減される。
【００９１】
図１４は、図１３に示す選択器４２の構成を概略的に示す図である。図１４において、選択器４２は、演算対象の値の位置を示す位置情報ｉと第１の最小値ＦＩＭの信号処理単位内の位置を示す位置情報ＰＯＳとを比較する比較器５０と、比較器５０の出力信号に従って第１の最小値ＦＩＭと第２の最小値ＳＥＭの一方を選択してＭｉｎ演算結果ＭＩＮを出力するマルチプレクサ（ＭＵＸ）５２を含む。
【００９２】
この選択器４２は、比較器５０が位置情報ｉおよびＰＯＳがともに等しいことを示すときには第２の最小値ＳＥＭを選択してＭｉｎ演算結果ＭＩＮとして出力する。比較器５０が、位置情報ｉおよびＰＯＳが互いに異なることを示す場合には、マルチプレクサ５２は、第１の最小値ＦＩＭを選択して、Ｍｉｎ演算結果ＭＩＮとして出力する。
【００９３】
第１の最小値ＦＩＭを有する位置が複数個存在する場合においても、その位置情報は１つの第１最小値の位置を記憶するだけでよい。
【００９４】
具体的に、図１５に示すように、今、変数ノード１から６において、それぞれの値が３，１，２，−１，−１，２が割当てられている状態を考える。この信号系列においてＭｉｎ演算を行なう場合、まず絶対値の最小値を算出する場合、変数ノード２の値“１”が、第１の最小値ＦＩＭとして記憶され、そのノード番号“２”が最小位置情報ＰＯＳとして記憶される。変数ノード４または５は、その絶対値が１であり、この場合、変数ノード４の値を第２の最小値ＳＥＭとして記憶する。変数ノード４の第２の最小値ＳＥＭは、絶対値をとるため、“１”である。したがって、この場合には、第１の最小値ＦＩＭおよび第２の最小値ＳＥＭは互いに等しい値となる。変数ノード２についてのＭｉｎ演算を行なう場合、この変数ノード２を除く変数ノードの信号値を参照して、絶対値の最小値を選択するため、第２の最小値ＳＥＭが選択される。変数ノード４について、Ｍｉｎ演算を行なう場合、この変数ノード４を除く変数ノードの信号値を参照してＭｉｎ演算が行なわれるため、この場合、変数ノード２の第１の最小値ＦＩＭが選択される。同様、変数ノード５についても、変数ノード２の第１の最小値ＦＩＭが選択される。
【００９５】
したがって、第１の最小値と同じ絶対値の信号値が、複数個存在する場合においても、これらのうちの２つの値を、それぞれ、第１および第２の最小値として記憶し、かつ第１の最小値の位置情報のみを記憶することにより、演算対象の信号値の位置に応じて第１または第２の最小値を選択することにより、正確に、Ｍｉｎ演算を行なうことができる。
【００９６】
この図１３に示すＭｉｎ演算部は、図１２に示す構成と同様、検査行列の各行に対応して並列に配置され、各行単位で並列に、αｍｎを求める行処理におけるＭｉｎ演算が実行される。
【００９７】
図１６は、行処理部における外部値対数比αｍｎの符号ＳＧＮを算出する部分の構成の一例を概略的に示す図である。図１６において、符号生成部は、入力信号λｎ＋βｍｎの符号を順次記憶する符号記憶部６０と、符号記憶部６０に記憶された符号のすべての積を取ってその積結果を保持する全符号積保持回路６２と、位置情報ｉに従って符号記憶部６０に記憶された符号を読出す読出回路６４と、読出回路６４により読出された符号ｓｉｇｎ（ｉ）と全符号積保持回路６２に保持される全符号積の符号ＡＬＳとに基づいて外部値対数比αｍｎの符号ＳＧＮを決定する符号判定回路６６を含む。
【００９８】
符号記憶部６０は、たとえばＦＩＦＯ回路で構成され、入力信号λｎ＋βｍｎの符号を順次記憶する。符号積保持回路６２は、この符号記憶部６０に格納される符号を順次乗算し、最終乗算結果を保持する。読出回路６４は、位置情報ｉに応じて、この符号記憶部６０に格納される符号ｓｉｇｎ（ｉ）を読出す。
【００９９】
符号判定回路６６においては、読出回路６４により読出された符号ｓｉｇｎ（ｉ）が正の場合には、全符号積結果ＡＬＳを外部値対数比αｍｎの符号ＳＧＮとして出力する。読出回路６４からの符号ｓｉｇｎ（ｉ）が負の場合には、符号判定回路６６は、この全符号積保持回路６２からの符号ＡＬＳを反転して外部値対数比αｍｎの符号ＳＧＮを生成する。
【０１００】
これにより、Ｍｉｎ演算と並行して、符号ＳＩＧＮを検出することができる。この符号判定回路６６は、たとえば、各シンボルの復号が１ビットで表わされる場合には、正の符号が符号ビット“０”で表わされ、負の符号が符号ビット“１”で表わされる場合には、この符号判定回路６６は、たとえばＥＸＯＲ回路を用いて実現することができる。
【０１０１】
以上のように、この発明の実施の形態２に従えば、Ｍｉｎ演算実行時、対応の信号系列の第１および第２の最小値を記憶し、かつその最小値の位置を記憶し、その位置情報に基づいて、第１および第２の最小値の一方を選択してＭｉｎ演算結果として出力しており、入力信号系列をすべて記憶する必要はなく、検査行列の規模が増大する場合においても、回路規模を低減して高速で行処理を実行することができる。
【０１０２】
［実施の形態３］
今、図１７に示すように、６行１２列の検査行列を考える。入力信号Ｘ（１）からＸ（１２）に対して、Ｍｉｎ演算を実行する。この図１７に示す検査行列の場合、第１行においては、“１”が立っている位置は、第１列、第４列、第６列、第８列、第１０列、および第１１列である。この第１行の行処理におけるＭｉｎ演算を実行する場合、これらの列上の入力信号Ｘ（１）、Ｘ（４）、Ｘ（６）、Ｘ（８）、Ｘ（１０）、およびＸ（１１）から、第１および第２の最小値を検出して保持する。この最小値を検出する処理方法としては、入力信号を逐次入力して検出する方法と、これらを並列に処理する方法とが存在する。以下、順に、最小値検出を逐次入力信号を処理して行なう方法および並列に入力信号を処理して最小値を検出する方法について説明する。
【０１０３】
図１８は、この発明の実施の形態３に従うＭｉｎ演算部の構成を概略的に示す図である。図１８においては、対数尤度比λｎ（入力信号Ｘｎ）から、この検査行列の“１”の位置に応じて尤度比を抽出する尤度比抽出保持回路６５と、この尤度比抽出保持回路６５の保持する尤度比と列処理部からの事前値対数比βｍｎとを加算しかつその加算値の絶対値を求める演算ＡＢＳを行って入力信号Ｘ（ｎ）を生成する加算回路６７とが、Ｍｉｎ演算の前処理回路として設けられる。
【０１０４】
尤度比抽出保持回路６５においては、対応の部分集合Ａ（ｍ）に従って、順次与えられる対数尤度比λｎ（入力シンボルＸｎ）を抽出して保持する。
【０１０５】
加算回路６７により絶対値｜λｎ＋βｍｎ｜が生成されて、入力信号Ｘ（ｎ）として、Ｍｉｎ演算部７０へ逐次与えられる。
【０１０６】
Ｍｉｎ演算部７０は、入力信号Ｘ（ｎ）と第１の記憶部７１に格納される値を比較し、尤度の大きい方を次段回路へ転送し、尤度の小さい方の値を第１記憶部７１へ格納する第１大小比較部７２と、この第１大小比較部７２から転送された値と第２記憶部７３に格納された値を比較し、尤度の小さい方を第２記憶部７３へ格納する第２大小比較部７４を含む。第１記憶部７１および第２記憶部７３は、それぞれ、初期化時に、その格納データが入力信号Ｘ（ｎ）の最大値に設定される。この第１記憶部７１には、また、記憶情報の対応の部分集合Ａ（ｍ）内の位置を示す位置情報が格納される。
【０１０７】
第１大小比較部７２による大小比較により、第１記憶部７１には、入力信号Ｘ（ｎ）の小さい方の値が対応の位置情報ｉとともに格納される。この入力信号Ｘ（ｎ）と第１の記憶部７１に格納される値とが等しい場合には、第１の大小比較部７２は、入力信号Ｘ（ｎ）を次段の第２大小比較部７４へ転送する。したがって、この第１記憶部７１には、入力信号Ｘ（ｎ）の系列のうちの最も小さな値（絶対値が最も小さい値）が、その位置情報とともに格納される。これにより、第１最小値ＦＩＭおよび位置情報ＰＯＳを抽出することができる。
【０１０８】
第２大小比較部７４においては、第１大小比較部７２から転送された信号値を第２記憶部７３の記憶値と比較し、第１大小比較部７２から与えられる信号値が第２記憶部７３の記憶値よりも小さいときに第２の記憶部７３の記憶値を更新する。したがって、第２大小比較部７４においては、第１最小値ＦＩＭと同じ絶対値の大きさの場合を含む第２最小値が格納される。この第２記憶部７３の記憶値が、第２最小値ＳＥＭとして出力される。
【０１０９】
したがって、入力信号Ｘｎが入力され、尤度比抽出保持回路６５により抽出され保持されて、次いで、入力信号Ｘ（ｎ）がＭｉｎ演算部７０へ逐次伝送されると、すべての入力信号Ｘ（ｎ）の転送が完了した時点で、第１最小値ＦＩＭおよびその位置情報ＰＯＳと、第２最小値ＳＥＭの検出動作が完了する。この位置情報ＰＯＳは、与えられた入力信号Ｘ（ｎ）に対する第１大小比較部７２における比較動作の回数をカウントすることにより検出することができる。
【０１１０】
このＭｉｎ演算部７０は、ＤＳＰ（デジタル信号プロセサ）などのファームウェアを用いて実現されてもよく、また、ソフトウェアを用いて比較および検出動作が実行されてもよく、また、専用のハードウェアでこれらの回路構成が実現されてもよい。例えば、第１および第２記憶部７１および７３は、それぞれ、対応の大小比較器７２および７４からの比較結果指示信号を取込指示信号（記憶更新指示信号）として受けるレジスタ回路またはラッチ回路で構成することができる。比較結果指示信号が、与えられた信号が記憶値よりも小さいことを示すときに、これらの記憶部７１または７３が、対応の大小比較器７２または７４から与えられた信号値を取込み保持する。
【０１１１】
図１９は、この発明の実施の形態３に従う最小値検出部の他の構成を概略的に示す図である。この図１９に示す最小値検出部においては、演算対象の入力信号Ｘ（１）、Ｘ（４）、Ｘ（６）、Ｘ（８）、Ｘ（１０）、およびＸ（１１）を２つのグループに分割し、各グループにおいて第１および第２の最小値を暫定的に検出する。すなわち、第１の仮最小値検出部８０へは、入力データＸ（１）、Ｘ（４）、およびＸ（６）が与えられて、仮の第１の最小値Ｆ１およびその位置情報Ｐ１と仮の第２の最小値Ｓ１が検出される。第２の仮最小値検出部８２へは、入力データＸ（８）、Ｘ（１０）、およびＸ（１１）が与えられて、仮の第１の最小値Ｆ２およびその位置情報Ｐ２と仮の第２の最小値Ｓ２が検出される。これらの仮の最小値Ｆ１、Ｓ１、Ｆ２およびＳ２が、位置情報Ｐ１およびＰ２とともに最小値検出保持部８４へ与えられる。
【０１１２】
この最小値検出保持部８４は、与えられた仮の最小値Ｆ１、Ｓ１、Ｆ２およびＳ２から、第１の最小値ＦＩＭおよび第２の最小値ＳＥＭを検出し、また、検出された第１の最小値の位置情報ＰＯＳを検出して保持する。
【０１１３】
この最小値検出保持部８４においては、最小値Ｆ１、Ｆ２、Ｓ１およびＳ２の大小比較動作が逐次行なわれ、その比較結果に基づいて、第１および第２の最小値ＦＩＭおよびＳＥＭが検出されてもよい。また、これに代えて、以下のアルゴリズムに従って、最終的な第１の最小値ＦＩＭおよび第２の最小値ＳＥＭが検出されてもよい。
【０１１４】
（ｉ）Ｓ１≦Ｆ２のとき、Ｆ１≦Ｓ１≦Ｆ２≦Ｓ２である。従って、第１の最小値ＦＩＭおよび第２最小値ＳＥＭとして、それぞれ、Ｆ１およびＳ１を設定する。
【０１１５】
（ｉｉ）Ｓ２≦Ｆ１のとき、Ｆ２≦Ｓ２≦Ｆ１≦Ｓ１である。従って、Ｆ２およびＳ２を、それぞれ第１の最小値ＦＩＭおよび第２の最小値ＳＥＭとして設定する。
【０１１６】
（ｉｉｉ）Ｓ１＞Ｆ２かつＳ２＞Ｆ１のとき、Ｆ１，Ｆ２＜Ｓ１，Ｓ２である。従って、Ｆ１およびＦ２の大小関係に従って、小さい方を第１の最小値ＦＩＭ、大きい方をＳＥＭに設定する。Ｆ１＝Ｆ２の時には、例えば、Ｆ１を第１の最小値ＦＩＭとして設定する。
【０１１７】
したがって、図１９に示すように入力データに対して並列に処理を実行することにより、高速で、最小値検出動作を行なうことができる。
【０１１８】
これらの最小値検出部８０および８２並びに最小値検出保持部８４は、その検出動作がソフトウェアにより実行するように構成されても良く、ハードウェアにより検出動作が実行されるように構成されても良い。
【０１１９】
以上のように、この発明の実施の形態３に従えば、演算対象のデータの比較に基づいて最小値を検出しており、正確な最小値検出を行なうことができる。
【産業上の利用可能性】
【０１２０】
この発明に従うｍｉｎ−ｓｕｍ復号法においては、Ｍｉｎ演算実行時、単に第１および第２の最小値を利用して演算を行なっているだけである。したがって、検査行列Ｈの行の重み（検査行列の行における“１”の数）が大きい場合においても、このＭｉｎ演算部の規模は増大しない。冗長ビット数に応じて、行方向の数が増大するだけである。したがって、ＬＤＰＣ符号に限定されず、他のＢＨＣ符号およびＣＲＣ符号などに対しても、同様のｍｉｎ−ｓｕｍ復号法に従ってパリティ検査行列を生成して符号の復号動作を行なうことができる。すなわち、低密度でない検査行列に対しても、本発明を同様に適用して復号処理を実行することができる。
【０１２１】
従って、この発明は、ＬＤＰＣ符号の復号処理を行なう通信システムに適用することができ、また、他の符号を利用する通信システムの受信部における復号装置に対しても適用することができる。
【図面の簡単な説明】
【０１２２】
【図１】この発明が適用される通信システムの構成を概略的に示す図である。
【図２】送信データと復調データの対応の一例を示す図である。
【図３】この発明の実施の形態１に従う復号化器の構成を概略的に示す図である。
【図４】この発明における復号法において用いられる部分集合を定義するための図である。
【図５】図４に示す検査行列のタナーグラフを示す図である。
【図６】（Ａ）〜（Ｃ）は、図３に示す行処理部の操作内容を示す図である。
【図７】図３に示す列処理部の処理操作を示す図である。
【図８】図３に示すループ判定部の動作を示すフロー図である。
【図９】この発明の実施の形態１に従う行処理部の外部値対数比算出動作を示すフロー図である。
【図１０】この発明の実施の形態１に従うＭｉｎ演算部の構成を概略的に示す図である。
【図１１】図１０に示す選択器の構成を概略的に示す図である。
【図１２】この発明の実施の形態１に従うＭｉｎ演算部の全体の構成を概略的に示す図である。
【図１３】この発明の実施の形態２に従うＭｉｎ演算部の構成を概略的に示す図である。
【図１４】図１３に示す選択器の構成を概略的に示す図である。
【図１５】図１３に示すＭｉｎ演算部の動作を説明するための図である。
【図１６】図３に示す行処理部の符号算出部の構成の一例を概略的に示す図である。
【図１７】この発明の実施の形態３において一例として用いられる検査行列を示す図である。
【図１８】この発明の実施の形態３に従う最小値記憶部の構成を概略的に示す図である。
【図１９】この発明の実施の形態３に変更例の最小値記憶部の構成を概略的に示す図である。
【符号の説明】
【０１２３】
４  復調器、５  復号化器、１０  対数尤度比算出部、１２  行処理部、１４  列処理部、１６  ループ判定部、２０  絶対値記憶部、２２  第１最小値記憶部、２４  第２最小値記憶部、２６  選択器、３０  比較器、３２  マルチプレクサ、４０  最小位置記憶部、４２  選択器、５０  比較器、５２、マルチプレクサ、６５  対数尤度比抽出保持回路、６７  絶対値加算回路、７０  最小値保持部、７２  第１大小比較部、７４  第２大小比較部、７１  第１記憶部、７３  第２記憶部、８０  第１仮最小値検出部、８２  第２仮最小値検出部、８４  最小値検出保持部。
【図１】
2005269535.tif 000005
【図２】
2005269535.tif 000006
【図３】
2005269535.tif 000007
【図４】
2005269535.tif 000008
【図５】
2005269535.tif 000009
【図６】
2005269535.tif 000010
【図７】
2005269535.tif 000011
【図８】
2005269535.tif 000012
【図９】
2005269535.tif 000013
【図１０】
2005269535.tif 000014
【図１１】
2005269535.tif 000015
【図１２】
2005269535.tif 000016
【図１３】
2005269535.tif 000017
【図１４】
2005269535.tif 000018
【図１５】
2005269535.tif 000019
【図１６】
2005269535.tif 000020
【図１７】
2005269535.tif 000021
【図１８】
2005269535.tif 000022
【図１９】
2005269535.tif 000023
【手続補正書】
【提出日】平成17年2月14日(2005.2.14)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００６０
【補正方法】変更
【補正の内容】
【００６０】
ループ判定部１６は、これらの供給された対数尤度比λｎおよび外部値対数比αｍｎに従って、演算λｎ＋Σαｍｎを行って推定受信語Ｑｎを算出する（ステップＳＰ３）。ここで総和Σは、部分集合Ｂ（ｎ）の要素ｍについて実行される。
【手続補正２】
【補正対象書類名】図面
【補正対象項目名】図８
【補正方法】変更
【補正の内容】
【図８】
2005269535.tif 000024