(57)【要約】【課題】多数の演算器を備えなくても、入力された信号の中から第１順位または第１順位の近似値を短時間で推定することができる復号装置を提供する。【解決手段】第１変換部３２は、第１の変換規則に基づいて、複数個の入力信号のそれぞれを変換して、複数個の第１変換信号を生成する。第２変換部４２は、第２変換テーブルに従って、複数個の第１変換信号のビット単位の論理演算結果を表わす第２変換信号を生成する。第３変換部５２は、第３の変換規則に基づいて、論理演算信号を変換して、複数個の入力信号のうちの第１順位の信号の値を表わす第３変換信号を生成する。【選択図】図６
2010130358.tif 000002
【特許請求の範囲】
【請求項１】
所定数の信号単位で復号を行なう復号装置であって、
Ｎ個（Ｎは２以上の自然数）の尤度を表わす入力信号の絶対値を表わす絶対値信号のうち、１個を除いた（Ｎ−１）個の絶対値信号の最大または最小である第１順位の信号の値または前記第１順位の信号の近似値を推定する第１順位推定部と、
前記第１順位推定部で推定された信号の値と前記１単位内の信号の符号とから新たな信号を生成して、前記新たな信号に基づいて前記１単位内の信号の推定信号系列を生成する受信信号推定部とを備え、
前記第１順位推定部は、
第１の変換規則に基づいて、前記Ｎ個の絶対値信号それぞれを変換して、Ｎ個の第１変換信号を生成する第１変換部と、
第２の変換規則に基づいて、Ｎ個の第１変換信号を変換して、Ｎ個の第２変換信号を生成する第２変換部とを備え、前記第２の変換規則では、前記Ｎ個の第１変換信号のうちの１個を除いて（Ｎ−１）個の第１変換信号のビット単位の所定の論理演算の結果を表わす第２変換信号が生成され、
第３の変換規則に基づいて、前記第２変換信号を変換して、（Ｎ−１）個の絶対値信号のうちの前記第１順位の信号の値または前記第１順位の信号の近似値を表わす第３変換信号を生成する第３変換部とを含み、
前記第２変換部は、除かれる１個がそれぞれ相違するＮ種類の（Ｎ−１）個の第１変換信号を用いて、Ｎ個の第２変換信号を生成し、前記第３変換部は、前記Ｎ個の第２変換信号を変換して、Ｎ個の第３変換信号を生成し、前記受信信号推定部は、前記Ｎ個の第３変換信号に基づいてＮ個の前記新たな信号を生成し、
前記第２変換部は、前記ビット単位の所定の論理演算の少なくとも一部について、入力と出力との関係を表わした第１テーブルを用いて、前記第２変換信号の各ビットを生成する、復号装置。
【請求項２】
前記第１テーブルは、Ｎ個の１ビット入力とＮ個の１ビット出力との対応を定め、かつＮ個の出力の各々が、Ｎ個の入力のうちの対応する１個の入力以外の他のすべての入力についての前記所定の論理演算の結果を表わし、
前記第２変換部は、前記Ｎ個の第１変換信号の各ビットを前記第１テーブルの前記Ｎ個の入力として用い、前記入力に対する前記第１テーブルのＮ個の出力を前記Ｎ個の第２変換信号の各ビットとして生成する、請求項１記載の復号装置。
【請求項３】
前記第１テーブルは、Ｍ個の第１の１ビット入力および１個の第２の１ビット入力と、Ｍ個の１ビット出力との対応を定め、かつＭ個の出力の各々が、Ｍ個の第１の入力のうちの対応する１個の入力以外の他のすべての入力についての前記所定の論理演算の結果を表わし、ただし、Ｍは１以上、（Ｎ−１）以下の自然数であり、
前記第２変換部は、
前記Ｎ個の第１変換信号のうちの（Ｎ−Ｍ）個の第１変換信号のビット単位の前記所定の論理演算を実行する少なくとも１つの第１の論理演算器をさらに備え、
前記第２変換部は、前記少なくとも１つの第１の論理演算器の論理演算結果の各ビットを前記テーブルの前記１個の第２の入力とし、かつ前記Ｎ個の第１変換信号のうちの残りのＭ個の第１変換信号の各ビットを前記第１テーブルの前記Ｍ個の第１の入力として用いることによって、前記Ｍ個の第２変換信号の各ビットを生成する、請求項１記載の復号装置。
【請求項４】
前記第１の変換規則では、前記絶対値信号の値と前記第１変換信号の値が１対１に対応し、
前記第３の変換規則において、前記第２変換信号に対応する前記第３変換信号の値は、前記第１の変換規則において、前記第２変換信号と同一の値の前記第１変換信号に対応する前記絶対値信号の値と同一であり、
前記第１の変換規則では、前記絶対値信号の取り得る値の範囲は０からＡ（Ａは１以上の自然数）までであり、かつ前記第１変換信号の取り得る値はＡビットで表わされ、
前記第１の変換規則では、前記絶対値信号の値がｋ（０≦ｋ≦Ａ）のときに、前記第１変換信号の下位のｋ個のビットの値が第１の論理値であり、かつその他のビットの値が第２の論理値であるように変換され、
前記第２変換部は、前記ビット単位の所定の論理演算の結果として、各ビットにつき、前記複数個の第１変換信号の前記ビットの値がすべて前記第１の論理値のときには前記第１の論理値を出力し、それ以外のときには前記第２の論理値を出力する、請求項１〜３のいずれか１項に記載の復号装置。
【請求項５】
前記第１の変換規則では、前記絶対値信号の値と前記第１変換信号の値が１対１に対応し、
前記第３の変換規則において、前記第２変換信号に対応する前記第３変換信号の値は、前記第１の変換規則において、前記第２変換信号と同一の値の前記第１変換信号に対応する前記絶対値信号の値と同一であり、
前記第１の変換規則では、前記絶対値信号の取り得る値は大きい順または小さい順に順序づけられる第１番目から第Ａ番目までのＡ種類（Ａは、２以上の自然数）であり、かつ前記第１変換信号の取り得る値はＢビット（Ｂ≧（Ａ−１））で表わされ、
前記第１の変換規則では、前記取り得る値のうちの第Ｋ番目の絶対値信号に対応する前記第１変換信号のビットのうち、値が第１の論理値であるビットが存在する場合に、前記取り得る値のうちの第（Ｋ＋１）番目の絶対値信号に対応する前記第１変換信号については、値が第１の論理値であるビットの位置は、前記第Ｋ番目の絶対値信号に対応する第１変換信号のビットのうちの値が第１の論理値であるビットの位置と、さらに少なくとも１つのビットの位置とからなり、
前記第２変換部は、前記ビット単位の所定の論理演算の結果として、各ビットにつき、前記複数個の第１変換信号の前記ビットの値がすべて前記第１の論理値のときには前記第１の論理値を出力し、それ以外のときには前記第２の論理値を出力する、
ただし、Ｋは、１以上かつ（Ａ−１）以下のすべての自然数である、請求項１〜３のいずれか１項に記載の復号装置。
【請求項６】
前記第１の変換規則では、前記絶対値信号の１個または複数個が前記第１変換信号の１個に対応し、
前記第３の変換規則において、前記第２変換信号に対応する前記第３変換信号の値は、前記第１の変換規則において前記第２変換信号と同一の値の前記第１変換信号に対応する前記絶対値信号が１個のときには、前記１個の絶対値信号の値と同一であり、前記第２変換信号と同一の値の前記第１変換信号に対応する前記絶対値信号が複数個のときには、前記複数個の絶対値信号のうちの１つの値と同一であり、
前記第１の変換規則では、前記絶対値信号の取り得る値はＡビット（Ａは１以上の自然数）で表わされ、かつ前記第１変換信号の取り得る値はＡビットで表わされ、
前記第１の変換規則では、前記絶対値信号のビットのうち、値が１である最も上位ビットが最下位ビットからｋ番目（１≦ｋ≦Ａ）のビットのときに、前記第１変換信号の下位のｋ個のビットの値が第１の論理値であり、かつその他のビットの値が第２の論理値であるように変換され、前記絶対値信号のビットのうち、すべてのビットの値が０のときには、前記第１変換信号のすべてのビットの値が第２の論理値であるように変換され、
前記第２変換部は、前記ビット単位の所定の論理演算の結果として、各ビットにつき、前記複数個の第１変換信号の前記ビットの値がすべて前記第１の論理値のときには前記第１の論理値を出力し、それ以外のときには前記第２の論理値を出力する、請求項１〜３のいずれか１項に記載の復号装置。
【請求項７】
前記第３の変換規則では、前記論理演算信号の取り得る値はＡビットで表わされ、かつ前記第２変換信号の取り得る値はＡビットで表わされ、
前記第３の変換規則では、前記第２変換信号のビットのうち、値が第１の論理値である最も上位ビットが最下位ビットからｋ番目（１≦ｋ≦Ａ）のビットのときに、前記第３変換信号の最下位ビットからｋ番目のビットの値が１であり、かつその他のビットの値が０であるように変換され、前記第２変換信号のビットのうち、すべてのビットの値が第２の論理値のときには、前記第３変換信号のすべてのビットの値が０であるように変換される、請求項６記載の復号装置。
【請求項８】
前記Ｎ個の尤度を表わす入力信号の符号ビットのうち１個を除いた（Ｎ−１）個の符号ビットの排他的論理和演算の結果を表わす符号ビットを生成する符号生成部をさらに備え、
前記符号生成部は、除かれる１個がそれぞれ相違するＮ種類の（Ｎ−１）個の符号ビットを用いて、Ｎ個の符号ビットを生成し、前記受信信号推定部は、前記Ｎ個の第３変換信号と前記生成されたＮ個の符号ビットに基づいて、Ｎ個の前記新たな信号を生成し、
前記符号生成部は、前記排他的論理和演算の少なくとも一部について、入力と出力との関係を表わした第２テーブルを用いて、前記符号ビットを生成する、請求項１記載の復号装置。
【請求項９】
前記第２テーブルは、Ｎ個の１ビット入力とＮ個の１ビット出力との対応を定め、かつＮ個の出力の各々が、Ｎ個の入力のうちの対応する１個の入力以外の他のすべての入力の排他的論理和演算の結果を表わし、
前記符号生成部は、前記Ｎ個の入力信号の符号ビットを前記第２テーブルの前記Ｎ個の入力として用い、前記入力に対する前記第２テーブルのＮ個の出力を前記Ｎ個の符号ビットとして生成する、請求項８記載の復号装置。
【請求項１０】
前記第２テーブルは、Ｍ個の第１の１ビット入力および１個の第２の１ビット入力と、Ｍ個の１ビット出力との対応を定め、かつＭ個の出力の各々が、Ｍ個の第１の入力のうちの対応する１個の入力以外の他のすべての入力の排他的論理和演算の結果を表わし、ただし、Ｍは１以上、（Ｎ−１）以下の自然数であり、
前記符号生成部は、
前記Ｎ個の入力信号のうちの（Ｎ−Ｍ）個の入力信号の符号ビットの排他的論理和演算を実行する少なくとも１つの第２の論理演算器をさらに備え、
前記符号生成部は、前記少なくとも１つの第２の論理演算器の排他的論理和演算結果を前記第２テーブルの前記１個の第２の入力とし、かつ前記Ｎ個の入力信号のうちの残りのＭ個の入力信号の符号ビットを前記第２テーブルの前記Ｍ個の第１の入力として用いることによって、前記Ｍ個の符号ビットを生成する、請求項８記載の復号装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、復号装置に関し、特に低密度パリティ検査符号を復号する復号装置に関する。
【背景技術】
【０００２】
信号の通信システムを構築する場合には、高速通信、低消費電力、高通信品質（低ビット誤り率）等が要求される。受信符号の誤りを検出して訂正する誤り訂正技術は、これらの要求を満たす１つの技術として、無線、有線および記録システム等において幅広く利用されている。
【０００３】
近年、この誤り訂正技術の１つとして、低密度パリティ検査（ＬＤＰＣ：Low-Density Parity-Check）符号と、sum-product復号法とが注目されている。このＬＤＰＣ符号を利用する復号操作は、Chung等の非特許文献１において議論されている。この非特許文献１においては、符号化率１／２のイレギュラーＬＤＰＣ符号を利用して白色ガウス通信路のシャノン（Shannon）限界まで０．０４ｄＢという復号特性が得られることが示されている。イレギュラーＬＤＰＣ符号は、パリティ検査行列の行重み（行において１が立つ数）および列重み（列において１が立つ数）が、一定ではない符号を示す。行重みおよび列重みが各行および各列において一定のＬＤＰＣ符号は、レギュラーＬＤＰＣ符号と呼ばれる。
【０００４】
この非特許文献１においては、ＬＤＰＣ符号をsum-product復号法に従って復号する数学的なアルゴリズムが示されているものの、その膨大な計算を具体的に行なう回路構成については何ら示していない。
【０００５】
Yeo等の非特許文献２は、ＬＤＰＣ符号の復号装置の回路構成について検討している。
この非特許文献２においては、受信系列に基づいて情報シンボルの事後確率を、トレリスに基づくＭＡＰ（最大事後確率）アルゴリズム、すなわちＢＣＪＲアルゴリズムに従って計算する。このトレリスにおいて前方向および後方向の繰返しを各状態について計算し、これらの前方向および後方向の繰返し値に基づいて、事後確率を求めている。この計算式において、加算／比較／選択／加算装置を用いて計算する。ＬＤＰＣ符号の算出においては、sum-product復号法に基づき、検査行列を生成し、異なるチェックノードからの値を利用して、推定値を算出するように回路を構成している。
【０００６】
また、非特許文献３においては、ＬＤＰＣ符号とsum-product復号法を解説し、また対数領域でのmin-sum復号法が解説されている。この非特許文献３においては、加算、最小、正負の判定および正負の符号の乗算という４種類の基本演算のみでギャラガー（Gallager）のｆ関数に従う処理を実装することができることが示されている。
【０００７】
上述の非特許文献２および３においては、パリティ検査行列を生成して１次推定語を算出するために、sum-product法に従ってギャラガー（Gallager）のｆ関数を用いて外部値対数比αを更新し、次いで、この外部値対数比に基づいてシンボルの事前値対数比βを算出する処理が行なわれる。このため、ギャラガー関数の演算に長時間を有し、また回路規模も増大する。
【０００８】
上述の非特許文献３においては、sum-product復号法とmin-sum復号法とは等価であり、min-sum復号法を利用することにより、実装時の回路構成を簡略化することができることを示している。
【０００９】
ところで、非特許文献３のmin-sum復号法を利用する場合には、パリティ検査用の検査行列を用いて最小値を算出するＭｉｎ演算処理が必要となるが、各要素ごとにＭｉｎ演算を行なって最小値を求めており、符号の長さが増大するのに応じて、演算対象の要素数が増大し、処理時間が長時間となる問題がある。
【００１０】
これに対して、特許文献１には、Ｍｉｎ演算において、要素間の比較を行なわずに、ビット単位の論理演算によって、入力された信号の中から最小値を算出することによって処理時間を短くできることが記載されている。
【特許文献１】特開２００７−３３５９９２号公報
【非特許文献１】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 inMagnetic Recording Channels”IEEE Trans. Magnetics, Vol,37, No.2, March 2001, pp.748-755
【非特許文献３】和田山正、「低密度パリティ検査符号とその復号法について」、信学技報、ＭＲ２００１−８３、２００１年１２月
【発明の開示】
【発明が解決しようとする課題】
【００１１】
しかしながら、この特許文献１による最小値の推定では、ビット単位の論理演算のために多数の演算器が必要となり、装置の規模が大きくなるという問題がある。
【００１２】
それゆえに、本発明の目的は、多数の演算器を備えなくても、入力された信号の中から第１順位または第１順位の近似値を短時間で推定することができる復号装置を提供することである。
【課題を解決するための手段】
【００１３】
上記課題を解決するために、本発明は、所定数の信号単位で復号を行なう復号装置であって、Ｎ個（Ｎは２以上の自然数）の尤度を表わす入力信号の絶対値を表わす絶対値信号のうち、１個を除いた（Ｎ−１）個の絶対値信号の最大または最小である第１順位の信号の値または第１順位の信号の近似値を推定する第１順位推定部と、第１順位推定部で推定された信号の値と１単位内の信号の符号とから新たな信号を生成して、新たな信号に基づいて１単位内の信号の推定信号系列を生成する受信信号推定部とを備え、第１順位推定部は、第１の変換規則に基づいて、Ｎ個の絶対値信号それぞれを変換して、Ｎ個の第１変換信号を生成する第１変換部と、第２の変換規則に基づいて、Ｎ個の第１変換信号を変換して、Ｎ個の第２変換信号を生成する第２変換部とを備え、第２の変換規則では、Ｎ個の第１変換信号のうちの１個を除いて（Ｎ−１）個の第１変換信号のビット単位の所定の論理演算の結果を表わす第２変換信号が生成され、第３の変換規則に基づいて、第２変換信号を変換して、（Ｎ−１）個の絶対値信号のうちの第１順位の信号の値または第１順位の信号の近似値を表わす第３変換信号を生成する第３変換部とを含み、第２変換部は、除かれる１個がそれぞれ相違するＮ種類の（Ｎ−１）個の第１変換信号を用いて、Ｎ個の第２変換信号を生成し、第３変換部は、Ｎ個の第２変換信号を変換して、Ｎ個の第３変換信号を生成し、受信信号推定部は、Ｎ個の第３変換信号に基づいてＮ個の新たな信号を生成し、第２変換部は、ビット単位の所定の論理演算の少なくとも一部について、入力と出力との関係を表わした第１テーブルを用いて、第２変換信号の各ビットを生成する。
【００１４】
好ましくは、第１テーブルは、Ｎ個の１ビット入力とＮ個の１ビット出力との対応を定め、かつＮ個の出力の各々が、Ｎ個の入力のうちの対応する１個の入力以外の他のすべての入力についての所定の論理演算の結果を表わし、第２変換部は、Ｎ個の第１変換信号の各ビットを第１テーブルのＮ個の入力として用い、入力に対する第１テーブルのＮ個の出力をＮ個の第２変換信号の各ビットとして生成する。
【００１５】
好ましくは、第１テーブルは、Ｍ個の第１の１ビット入力および１個の第２の１ビット入力と、Ｍ個の１ビット出力との対応を定め、かつＭ個の出力の各々が、Ｍ個の第１の入力のうちの対応する１個の入力以外の他のすべての入力についての所定の論理演算の結果を表わし、ただし、Ｍは１以上、（Ｎ−１）以下の自然数であり、第２変換部は、Ｎ個の第１変換信号のうちの（Ｎ−Ｍ）個の第１変換信号のビット単位の所定の論理演算を実行する少なくとも１つの第１の論理演算器をさらに備え、第２変換部は、少なくとも１つの第１の論理演算器の論理演算結果の各ビットをテーブルの１個の第２の入力とし、かつＮ個の第１変換信号のうちの残りのＭ個の第１変換信号の各ビットを第１テーブルのＭ個の第１の入力として用いることによって、Ｍ個の第２変換信号の各ビットを生成する。
【００１６】
好ましくは、第１の変換規則では、絶対値信号の値と第１変換信号の値が１対１に対応し、第３の変換規則において、第２変換信号に対応する第３変換信号の値は、第１の変換規則において、第２変換信号と同一の値の第１変換信号に対応する絶対値信号の値と同一であり、第１の変換規則では、絶対値信号の取り得る値の範囲は０からＡ（Ａは１以上の自然数）までであり、かつ第１変換信号の取り得る値はＡビットで表わされ、第１の変換規則では、絶対値信号の値がｋ（０≦ｋ≦Ａ）のときに、第１変換信号の下位のｋ個のビットの値が第１の論理値であり、かつその他のビットの値が第２の論理値であるように変換され、第２変換部は、ビット単位の所定の論理演算の結果として、各ビットにつき、複数個の第１変換信号のビットの値がすべて第１の論理値のときには第１の論理値を出力し、それ以外のときには第２の論理値を出力する。
【００１７】
好ましくは、第１の変換規則では、絶対値信号の値と第１変換信号の値が１対１に対応し、第３の変換規則において、第２変換信号に対応する第３変換信号の値は、第１の変換規則において、第２変換信号と同一の値の第１変換信号に対応する絶対値信号の値と同一であり、第１の変換規則では、絶対値信号の取り得る値は大きい順または小さい順に順序づけられる第１番目から第Ａ番目までのＡ種類（Ａは、２以上の自然数）であり、かつ第１変換信号の取り得る値はＢビット（Ｂ≧（Ａ−１））で表わされ、第１の変換規則では、取り得る値のうちの第Ｋ番目の絶対値信号に対応する第１変換信号のビットのうち、値が第１の論理値であるビットが存在する場合に、取り得る値のうちの第（Ｋ＋１）番目の絶対値信号に対応する第１変換信号については、値が第１の論理値であるビットの位置は、第Ｋ番目の絶対値信号に対応する第１変換信号のビットのうちの値が第１の論理値であるビットの位置と、さらに少なくとも１つのビットの位置とからなり、第２変換部は、ビット単位の所定の論理演算の結果として、各ビットにつき、複数個の第１変換信号のビットの値がすべて第１の論理値のときには第１の論理値を出力し、それ以外のときには第２の論理値を出力する、ただし、Ｋは、１以上かつ（Ａ−１）以下のすべての自然数である。
【００１８】
好ましくは、第１の変換規則では、絶対値信号の１個または複数個が第１変換信号の１個に対応し、第３の変換規則において、第２変換信号に対応する第３変換信号の値は、第１の変換規則において第２変換信号と同一の値の第１変換信号に対応する絶対値信号が１個のときには、１個の絶対値信号の値と同一であり、第２変換信号と同一の値の第１変換信号に対応する絶対値信号が複数個のときには、複数個の絶対値信号のうちの１つの値と同一であり、第１の変換規則では、絶対値信号の取り得る値はＡビット（Ａは１以上の自然数）で表わされ、かつ第１変換信号の取り得る値はＡビットで表わされ、第１の変換規則では、絶対値信号のビットのうち、値が１である最も上位ビットが最下位ビットからｋ番目（１≦ｋ≦Ａ）のビットのときに、第１変換信号の下位のｋ個のビットの値が第１の論理値であり、かつその他のビットの値が第２の論理値であるように変換され、絶対値信号のビットのうち、すべてのビットの値が０のときには、第１変換信号のすべてのビットの値が第２の論理値であるように変換され、第２変換部は、ビット単位の所定の論理演算の結果として、各ビットにつき、複数個の第１変換信号のビットの値がすべて第１の論理値のときには第１の論理値を出力し、それ以外のときには第２の論理値を出力する。
【００１９】
好ましくは、第３の変換規則では、論理演算信号の取り得る値はＡビットで表わされ、かつ第２変換信号の取り得る値はＡビットで表わされ、第３の変換規則では、第２変換信号のビットのうち、値が第１の論理値である最も上位ビットが最下位ビットからｋ番目（１≦ｋ≦Ａ）のビットのときに、第３変換信号の最下位ビットからｋ番目のビットの値が１であり、かつその他のビットの値が０であるように変換され、第２変換信号のビットのうち、すべてのビットの値が第２の論理値のときには、第３変換信号のすべてのビットの値が０であるように変換される。
【００２０】
好ましくは、Ｎ個の尤度を表わす入力信号の符号ビットのうち１個を除いた（Ｎ−１）個の符号ビットの排他的論理和演算の結果を表わす符号ビットを生成する符号生成部をさらに備え、符号生成部は、除かれる１個がそれぞれ相違するＮ種類の（Ｎ−１）個の符号ビットを用いて、Ｎ個の符号ビットを生成し、受信信号推定部は、Ｎ個の第３変換信号と生成されたＮ個の符号ビットに基づいて、Ｎ個の新たな信号を生成し、符号生成部は、排他的論理和演算の少なくとも一部について、入力と出力との関係を表わした第２テーブルを用いて、符号ビットを生成する。
【００２１】
好ましくは、第２テーブルは、Ｎ個の１ビット入力とＮ個の１ビット出力との対応を定め、かつＮ個の出力の各々が、Ｎ個の入力のうちの対応する１個の入力以外の他のすべての入力の排他的論理和演算の結果を表わし、符号生成部は、Ｎ個の入力信号の符号ビットを第２テーブルのＮ個の入力として用い、入力に対する第２テーブルのＮ個の出力をＮ個の符号ビットとして生成する。
【００２２】
好ましくは、第２テーブルは、Ｍ個の第１の１ビット入力および１個の第２の１ビット入力と、Ｍ個の１ビット出力との対応を定め、かつＭ個の出力の各々が、Ｍ個の第１の入力のうちの対応する１個の入力以外の他のすべての入力の排他的論理和演算の結果を表わし、ただし、Ｍは１以上、（Ｎ−１）以下の自然数であり、符号生成部は、Ｎ個の入力信号のうちの（Ｎ−Ｍ）個の入力信号の符号ビットの排他的論理和演算を実行する少なくとも１つの第２の論理演算器をさらに備え、符号生成部は、少なくとも１つの第２の論理演算器の排他的論理和演算結果を第２テーブルの１個の第２の入力とし、かつＮ個の入力信号のうちの残りのＭ個の入力信号の符号ビットを第２テーブルのＭ個の第１の入力として用いることによって、Ｍ個の符号ビットを生成する。
【発明の効果】
【００２３】
本発明の復号装置によれば、多数の演算器を備えなくても、入力された信号の中から第１順位または第１順位の近似値を短時間で推定することができる。
【発明を実施するための最良の形態】
【００２４】
［第１の実施形態］
図１は、この発明に従う復号装置を用いる通信システムの構成の一例を示す図である。図１において、通信システムは、送信側において、送信情報に誤り訂正用の冗長ビットを付加して送信符号を生成する符号化器１と、この符号化器１からの（Ｋ＋Ｍ）（＝Ｎ）ビットの符号を所定の方式に従って変調して通信路３へ出力する変調器２とを含む。
【００２５】
変調器２は、この通信路３の構成に応じて、振幅変調、位相変調、コード変調、周波数変調または直行周波数分割多重変調などの変調を行なう。たとえば、通信路３が、光ファイバの場合、変調器２においては、レーザダイオードの輝度を送信情報ビット値に応じて変更させることにより、光の強度変調（一種の振幅変調）を行なっている。たとえば、送信信号ビットが“０”の場合には、このレーザダイオードの発光強度を強くして“＋１”として送信し、また送信信号ビットが“１”の場合、レーザダイオードの発光強度を弱くして、“−１”に変換して送信する。
【００２６】
受信部においては、通信路３を介して送信された変調信号に復調処理を施して、（Ｋ＋Ｍ）ビットのデジタル符号を復調する復調器４と、この復調器４からの（Ｋ＋Ｍ）ビットの符号にパリティ検査行列演算処理を施して元のＫビットの情報を再生する復号化器５が設けられる。
【００２７】
復調器４は、この通信路３における送信形態に応じて復調処理を行なう。たとえば、振幅変調、位相変調、コード変調、周波数変調および直行周波数分割多重変調等の場合、復調器４において、振幅復調、位相復調、コード復調、および周波数復調等の処理が行なわれる。
【００２８】
図２は、通信路３が光ファイバの場合の変調器２および復調器４の出力信号の対応関係を一覧にして示す図である。図２において、上述のように、通信路３が光ファイバの場合、変調器２においては、送信信号が“０”のときには、送信用のレーザダイオード（発光ダイオード）の発光強度を強くし、“１”を出力し、また送信信号ビットが“１”のときには、この発光強度を弱くしてビット“−１”を送信する。
【００２９】
この通信路３における伝送損失等により、復調器４に伝達される光強度は、最も強い強度から最も弱い強度までの間のアナログ的な強度分布を有する。復調器４においては、この入力された光信号を量子化処理（アナログ／デジタル変換）を行なって、この受光レベルを検出する。図２においては、８段階に受光レベルが量子化された場合の受信信号強度を示す。すなわち、受光レベルが信号“７”のときには、発光強度がかなり強く、受光レベルが“０”のときには、光強度がかなり弱い状態である。各受光レベルは、符号付き信号に対応づけられ、復調器４から出力される。この復調器４の出力は、受光レベルが“７”のときには信号“３”が出力され、受光レベルが“０”のときには、信号“−４”が出力される。したがってこの復調器４からは、１ビットの受信信号に対し、多値量子化された信号が出力される。
【００３０】
復号化器５は、この復調器４から与えられた（Ｋ＋Ｍ）ビットの受信情報（各ビットは、多値情報を含む）を入力し、後に詳細に説明する、min-sum復号法に従ってＬＤＰＣパリティ検査行列を適用して、元のＫビットの情報を復元する。パリティ検査行列の行の数をＭ、列の数をＮ、行重みをＳとする。ここで、行重みとは、行方向の１の数である。
【００３１】
図３は、この発明に従う復号化器５の構成を概略的に示す図である。この図３においては、復調器４および通信路３も併せて示す。復調器４は、通信路３から与えられた信号を復調する復調回路４ａと、この復調回路４ａにより生成されたアナログ復調信号をデジタル信号に変換するアナログ／デジタル変換回路４ｂを含む。このアナログ／デジタル変換回路４ｂの出力信号Ｘｎが復号化器５へ与えられる。この復号化器５へ与えられる信号Ｘｎは、Ｌ値（Ｌ≧２）の信号である。以下、信号Ｘｎは、多値量子化信号であるため、シンボルと称す。復号化器５は、この入力シンボルＸｎ系列に対してmin-sum復号法に
従って復号処理を行なって符号ビットＣｎを生成する。
【００３２】
復号化器５は、復調器４からの復調シンボルＸｎの対数尤度比λｎを生成する対数尤度比算出部１０と、パリティ検査行列の行処理を行なう行処理部１２と、パリティ検査行列の列処理を行なう列処理部１４と、対数尤度比算出部１０からの対数尤度比λｎと行処理部１２の出力ビット（外部値対数比）αｍｎとに従って符号を生成するループ判定部１６を含む。
【００３３】
対数尤度比算出部１０は、この受信信号のノイズ情報と独立に、対数尤度比λｎを生成する。通常、ノイズ情報を考慮した場合、この対数尤度比λｎは、Ｘｎ／２×σで与えられる。ここで、σは、ノイズの分散を示す。しかしながら、本実施の形態においては、この対数尤度比算出部１０は、バッファ回路または定数乗算回路で形成され、対数尤度比λｎは、Ｘｎ×ｆで与えられる。ここで、fは非ゼロの正の数である。このノイズ情報を利用せずに、対数尤度比を算出することにより、回路構成が簡略化され、また計算処理も簡略化される。min-sum復号方法においては、検査行列の処理において、最小値を利用して演算を行なうため、信号処理において線形性が維持される。このため、ノイズ情報に従って出力信号を正規化するなどの処理は不要である。
【００３４】
行処理部１２および列処理部１４は、それぞれ、次式（１）および（２）に従って、演算処理を行ない、パリティ検査行列の行の各要素についての処理（行処理）および列についての各要素についての処理（列処理）を実行する。行処理部１２において、列処理部１４から与えられる事前値対数比βｍｎと対数尤度比λｎとに従って外部値対数比αｍｎを更新する。
【００３５】
【数１】
2010130358.tif 000003
【００３６】
ここで、上式（１）および（２）それぞれにおいて、ｎ′∈Ａ（ｍ）＼ｎおよびｍ′∈Ｂ（ｎ）＼ｍは、自身を除く要素を意味する。外部値対数比αｍｎについては、ｎ′≠ｎであり、事前値対数比βｍｎについては、ｍ′≠ｍである。また、αおよびβの行列内の位置を示す添え字“ｍｎ”は、通常は下付文字で示されるが、本明細書においては、読みやすさのために、「横並びの文字」で示す。
【００３７】
また、関数ｓｉｇｎ（ｘ）は、次式（３）で定義される。
【００３８】
【数２】
2010130358.tif 000004
【００３９】
ここで、関数ｍｉｎは、最小値を求める演算を示す。
また、集合Ａ（ｍ）およびＢ（ｎ）は、２元Ｍ・Ｎ行列Ｈ＝［Ｈｍｎ］を復号対象のＬＤＰＣ符号の検査行列とした場合、集合［１，Ｎ］＝｛１，２，…，Ｎ｝の部分集合である。
【００４０】
Ａ（ｍ）＝｛ｎ：Ｈｍｎ＝１｝  …（４）
Ｂ（ｎ）＝｛ｍ：Ｈｍｎ＝１｝  …（５）
すなわち、部分集合Ａ（ｍ）は、検査行列Ｈの第ｍ行目において１が立っている列インデックスの集合を意味し、部分集合Ｂ（ｎ）は、検査行列Ｈの第ｎ列目において１が立っている行インデックスの集合を示す。
【００４１】
ループ判定部１６は、これらの行処理部１２および列処理部１４における演算処理結果に基づいて、１次推定語を生成し、これらの１次推定語が符号語を構成しているかを検査する。このパリティ検査時において、シンドロームが“０”とならない場合には、再び処理を繰返し実行する。この処理の繰返し回数が所定値に到達すると、そのときの１次推定語を符号語として出力する。ループ判定部１６は、この行処理部１２で生成される外部値対数比αｍｎと対数尤度比算出部１０からの対数尤度比λｎとを用いて、複数の符号で構成される符号語を生成する。符号の数は、検査行列の列の数に対応する。
【００４２】
これらの求められた外部値対数比αｍｎは、図３に示す列処理部１４およびループ判定部１６へ供給される。
【００４３】
列処理部１４は、先の式（２）において示された演算処理を行ない、検査行列Ｈの各行において生成された外部値対数比を用いて、自身を除く行以外の対応の列の“１”が立っている位置の外部値対数比を加算する。
【００４４】
図４は、行処理部１２の構成を表わす図である。
図４を参照して、行処理部１２は、第１行処理部１８−１〜第Ｍ行処理部１８−Ｍを有する。
【００４５】
図５は、第ｍ行処理部１８−ｍの構成を示す図である。他の行の行処理部もこれと同様である。
【００４６】
図５を参照して、第ｍ行処理部１８−ｍは、加算部２０と、符号生成部２１と、第１順位推定部２２と、結合部２３とを備える。
【００４７】
加算部２０は、ＳＬ個の信号｛βmn′：ｎ′はＨｍｎ′＝１を満たす、ＳＬ個の異なる数である｝を受けて、それらと対数尤度比λn′とを加算して、加算結果｛（λn′＋βｍn′）：ｎ′はＨｍｎ′＝１を満たす、ＳＬ個の異なる数である｝を出力する。ここでは、行重みＳＬは「４」であり、Ｈｍｎ′＝１を満たすｎ′は、ｎ１、ｎ２、ｎ３、ｎ４として説明する。すなわち、Ａ（ｍ）＝｛ｎ１，ｎ２，ｎ３，ｎ４｝とする。
【００４８】
符号生成部２１は、ＳＬ（＝４）個の信号｛（λn′＋βｍn′）：ｎ′＝ｎ１、ｎ２、ｎ３、ｎ４｝の符号を表わすＳＬ個の最上位ビット、すなわち符号ビット（Ｕ１、Ｕ２、Ｕ３、Ｕ４）に基づいて、式（１）の符号部分（これをＳｍｎとする。ただし、ｎ＝ｎ１、ｎ２、ｎ３、ｎ４である）の計算を行なう。以下では、｛Ｓｍｎ：ｎ＝ｎ１、ｎ２、ｎ３、ｎ４｝を（Ｖ１、Ｖ２、Ｖ３、Ｖ４）として説明する。
【００４９】
第１順位推定部２２は、ＳＬ（＝４）個の信号｛（λn′＋βｍn′）：ｎ′＝ｎ１、ｎ２、ｎ３、ｎ４｝のＳＬ個の最上位ビット以外の残りのビット、すなわち絶対値を表わす信号（ｘ１、ｘ２、ｘ３、ｘ４）に基づいて、式（１）の絶対値部分（これをＲｍｎとする。ただし、ｎ＝ｎ１、ｎ２、ｎ３、ｎ４である）の計算を行なう。以下では、｛Ｒｍｎ：ｎ＝ｎ１、ｎ２、ｎ３、ｎ４｝を（ｗ１、ｗ２、ｗ３、ｗ４）として説明する。
【００５０】
結合部２３は、符号生成部２１から出力されるＳｍｎ（ｎ＝ｎ１、ｎ２、ｎ３、ｎ４）と第１順位推定部２２から出力されるＲｍｎ（ｎ＝ｎ１、ｎ２、ｎ３、ｎ４）のそれぞれから、外部値対数比αｍｎを生成して出力する。具体的には、結合部２３は、Ｓｍｎを正負を示す符号として取り扱い、Ｒｍｎをαｍｎの絶対値として、外部値対数比αｍｎを出力する。
【００５１】
図６は、第１順位推定部２２の構成を表わす図である。
図６を参照して、この第１順位推定部２２は、ＳＬ個（ここでは、ＳＬ＝４）の絶対値信号のうち１個を除いた（ＳＬ−１）個の絶対値信号の最小値を示す信号を出力する装置である。第１順位推定部２２は、取り除く１個が相違するＳＬ個の最小値を示す信号を出力する。
【００５２】
第１順位推定部２２は、第１変換部３２と、第２変換部４２と、第３変換部５２とを備える。
【００５３】
第１変換部２２は、４個の絶対値信号ｘ１、ｘ２、ｘ３、ｘ４を受けて、第１変換規則を定めた第１変換テーブルで規定される対応関係で変換した第１変換信号ｙ１、ｙ２、ｙ３、ｙ４を生成する。
【００５４】
図７は、第１の実施形態の第１変換テーブル３３の例を表わす図である。
図７を参照して、第１変換テーブル３３では、絶対値信号の値と第１変換信号の値が１対１で対応する。この第１変換テーブル３３では、絶対値信号は５ビットで表され、取り得る値の範囲が０〜Ｌであり、第１変換信号の取り得る値はＬビットで表わされる。図７では、Ｌ＝３１であとしたが、Ｌは１以上の自然数であれば、どのような値でもよい。図７において、絶対値信号および第１変換信号は、それぞれ最下位ビットを最も左側に示している。本明細書における以下の説明でも、これと同様に、最下位ビットを左側に記す。
【００５５】
第１変換テーブル３３によれば、絶対値信号の値がｋ（０≦ｋ≦３１）のときに、第１変換信号の下位のｋ個のビットが「１」となり、それ以外のビットが「０」となる。たとえば、絶対値信号の値が「０」ときには、第１変換信号のすべてのビットが「０」となる。絶対値信号の値が「１」のときには、第１変換信号の最下位ビットのみが「１」となる。絶対値信号の値が「２」のときには、第１変換信号の下位の２個のビットのみが「１」となる。
【００５６】
第２変換部４２は、第１変換部４２から出力される４個の第１変換信号ｙ１、ｙ２、ｙ３、ｙ４を受けて、第２変換規則を定めた第２変換テーブルで規定される対応関係で変換した４個の第２変換信号ｚ１、ｚ２、ｚ３、ｚ４を生成する。第２の変換規則では、４個の第１変換信号のうちの１個を除いて３個の第１変換信号のビット単位の論理積の結果を表わす第２変換信号が生成される。第２変換部は、除かれる１個がそれぞれ相違する４種類の３個の第１変換信号を用いて、４個の第２変換信号を生成する。
【００５７】
図８は、第１の実施形態の第２変換テーブル４３の例を表わす図である。
図８を参照して、第２変換テーブル４３では、４個の１ビット入力（入力１、入力２、入力３、入力４）と４個の１ビット出力（出力１、出力２、出力３、出力４）との対応関係を定める。具体的には、出力１は、入力１を除く３個の入力（入力２、入力３、入力４）のビット論理積を表わす。出力２は、入力２を除く３個の入力（入力１、入力３、入力４）のビット論理積を表わす。出力３は、入力３を除く３個の入力（入力１、入力２、入力４）のビット論理積を表わす。出力４は、入力４を除く３個の入力（入力１、入力２、入力３）のビット論理積を表わす。ここで、ビット論理積とは、入力がすべて第１の論理値のときには第１の論理値を出力し、入力がそれ以外のときには第２の論理値を出力する演算の一形態である。
【００５８】
第２変換部４２は、４個の第１変換信号ｙ１、ｙ２、ｙ３、ｙ４の各ビットを第２変換テーブル４３の４個の入力として用い、この入力に対する第２変換テーブル４３の４個の出力を４個の第２変換信号ｚ１、ｚ２、ｚ３、ｚ４の各ビットとして生成する。
【００５９】
第３変換部５２は、第２変換部４２から出力される４個の第２変換信号ｚ１、ｚ２、ｚ３、ｚ４を受けて、第３変換規則を定めた第３変換テーブルで規定される対応関係で変換した第３変換信号ｗ１、ｗ２、ｗ３、ｗ４を生成して出力する。ここで、第３変換信号ｗ１は、３個の絶対値信号ｘ２、ｘ３、ｘ４のうちの値が最小である信号であり、第３変換信号ｗ２は、３個の絶対値信号ｘ１、ｘ３、ｘ４のうちの値が最小である信号であり、第３変換信号ｗ３は、３個の絶対値信号ｘ１、ｘ２、ｘ４のうちの値が最小である信号であり、第３変換信号ｗ４は、３個の絶対値信号ｘ１、ｘ２、ｘ３のうちの値が最小である信号である。
【００６０】
図９は、第１の実施形態の第３変換テーブル５３の例を表わす図である。
図９を参照して、第２変換信号（論理積信号）と第３変換信号との対応関係は、図７の第１変換テーブル３３の対応関係を逆にしたものである。すなわち、第３変換テーブル５３において第２変換信号に対応する第３変換信号の値は、第１変換テーブル３３においてその第２変換信号と同一の値の第１変換信号に対応する絶対値信号の値と同一である。
【００６１】
第３変換テーブル５３によれば、第２変換信号の下位のｋ個（０≦ｋ≦３１）のビットが「１」で、それ以外のビットが「０」のときに、第３変換信号の値がｋとなる。たとえば、第２変換信号のすべてのビットが「０」のときには、第３変換信号の値が「０」となる。第２変換信号の最下位ビットのみが「１」のときには、第３変換信号の値が「１」となる。第２変換信号の下位の２個のビットのみが「１」のときには、第３変換信号の値が「２」となる。
【００６２】
図１０は、第１変換部３２の具体的な構成を表わす図である。
図１０を参照して、第１変換部３２は、４個の絶対値信号の変換を同時に並列して行なう。第１変換部３２は、絶対値信号の個数分の第１メモリ部で構成される。ここでは、絶対値信号の個数が４個であるので、第１変換部３２は、第１メモリ部（領域１）３１−１と、第１メモリ部（領域２）３１−２と、第１メモリ部（領域３）３１−３と、第１メモリ部（領域４）３１−４とを含む。
【００６３】
第１メモリ部（領域１）３１−１では、５ビットの絶対値信号ｘ１がアドレスとして用いられ、絶対値信号ｘ１で指定される領域にＬビットの第１変換信号ｙ１の値が格納されている。絶対値信号ｘ１と第１変換信号ｙ１との関係は、図７の第１変換テーブル３３にしたがう。第１メモリ部（領域１）３１−１は、５ビットの絶対値信号ｘ１を受けて、絶対値信号ｘ１に対応するＬビットの第１変換信号ｙ１（＝｛ｙ１Ｌ、・・・、ｙ１２、ｙ１１｝）を出力する。
【００６４】
第１メモリ部（領域２）３１−２では、５ビットの絶対値信号ｘ２がアドレスとして用いられ、絶対値信号ｘ２で指定される領域にＬビットの第１変換信号ｙ２の値が格納されている。絶対値信号ｘ２と第１変換信号ｙ２との関係は、図７の第１変換テーブル３３にしたがう。第１メモリ部（領域２）３１−２は、５ビットの絶対値信号ｘ２を受けて、絶対値信号ｘ２に対応するＬビットの第１変換信号ｙ２（＝｛ｙ２Ｌ、・・・、ｙ２２、ｙ２１｝）を出力する。
【００６５】
第１メモリ部（領域３）３１−３では、５ビットの絶対値信号ｘ３がアドレスとして用いられ、絶対値信号ｘ３で指定される領域にＬビットの第１変換信号ｙ３の値が格納されている。絶対値信号ｘ３と第１変換信号ｙ３との関係は、図７の第１変換テーブル３３にしたがう。第１メモリ部（領域３）３１−３は、５ビットの絶対値信号ｘ３を受けて、絶対値信号ｘ３に対応するＬビットの第１変換信号ｙ３（＝｛ｙ３Ｌ、・・・、ｙ３２、ｙ３１｝）を出力する。
【００６６】
第１メモリ部（領域４）３１−４では、５ビットの絶対値信号ｘ４がアドレスとして用いられ、絶対値信号ｘ４で指定される領域にＬビットの第１変換信号ｙ４の値が格納されている。絶対値信号ｘ４と第１変換信号ｙ４との関係は、図７の第１変換テーブル３３にしたがう。第１メモリ部（領域４）３１−４は、５ビットの絶対値信号ｘ４を受けて、絶対値信号ｘ４に対応するＬビットの第１変換信号ｙ４（＝｛ｙ４Ｌ、・・・、ｙ４２、ｙ４１｝）を出力する。
【００６７】
図１１は、第１の実施形態の第２変換部４２の具体的な構成を表わす図である。
図１１を参照して、第２変換部４２は、４個の第１変換信号の変換を同時に並列して行なう。第２変換部４２は、第１変換信号のビット数Ｌ個の変換部で構成される。すなわち、第１変換部４２は、第１ビット変換部４５−１と、第２ビット変換部４５−２と、・・・、第Ｌビット変換部４５−Ｌとを含む。
【００６８】
第１ビット変換部４５−１は、第２メモリ部（領域１）４１−１を含む。第２メモリ部（領域１）４１−１では、４個の第１変換信号ｙ１、ｙ２、ｙ３、ｙ４の第１ビット目である４ビットの信号（ｙ４１、ｙ３１、ｙ２１、ｙ１１）がアドレスとして用いられ、当該４ビットの信号に対応する領域に第２変換信号ｚ１、ｚ２、ｚ３、ｚ４の第１ビット目である４ビットの信号（ｚ４１、ｚ３１、ｚ２１、ｚ１１）の値が格納されている。４ビットの信号（ｙ４１、ｙ３１、ｙ２１、ｙ１１）と４ビットの信号（ｚ４１、ｚ３１、ｚ２１、ｚ１１）との関係は、図８の第２変換テーブル４３にしたがう。第２メモリ部（領域１）４１−１は、４ビットの信号（ｙ４１、ｙ３１、ｙ２１、ｙ１１）を受けて、その信号に対応する４ビットの信号（ｚ４１、ｚ３１、ｚ２１、ｚ１１）を出力する。
【００６９】
第２ビット変換部４５−２は、第２メモリ部（領域２）４１−２を含む。第２メモリ部（領域２）４１−２では、４個の第１変換信号ｙ１、ｙ２、ｙ３、ｙ４の第２ビット目である４ビットの信号（ｙ４２、ｙ３２、ｙ２２、ｙ１２）がアドレスとして用いられ、当該４ビットの信号に対応する領域に第２変換信号ｚ１、ｚ２、ｚ３、ｚ４の第２ビット目である４ビットの信号（ｚ４２、ｚ３２、ｚ２２、ｚ１２）の値が格納されている。４ビットの信号（ｙ４２、ｙ３２、ｙ２２、ｙ１２）と４ビットの信号（ｚ４２、ｚ３２、ｚ２２、ｚ１２）との関係は、図８の第２変換テーブル４３にしたがう。第２メモリ部（領域１）４１−２は、４ビットの信号（ｙ４２、ｙ３２、ｙ２２、ｙ１２）を受けて、その信号に対応する４ビットの信号（ｚ４２、ｚ３２、ｚ２２、ｚ１２）を出力する。
【００７０】
第Ｌビット変換部４５−Ｌは、第２メモリ部（領域Ｌ）４１−Ｌを含む。第２メモリ部（領域Ｌ）４１−Ｌでは、４個の第１変換信号ｙ１、ｙ２、ｙ３、ｙ４の第Ｌビット目である４ビットの信号（ｙ４Ｌ、ｙ３Ｌ、ｙ２Ｌ、ｙ１Ｌ）がアドレスとして用いられ、当該４ビットの信号に対応する領域に第２変換信号ｚ１、ｚ２、ｚ３、ｚ４の第Ｌビット目である４ビットの信号（ｚ４Ｌ、ｚ３Ｌ、ｚ２Ｌ、ｚ１Ｌ）の値が格納されている。４ビットの信号（ｙ４Ｌ、ｙ３Ｌ、ｙ２Ｌ、ｙ１Ｌ）と４ビットの信号（ｚ４Ｌ、ｚ３Ｌ、ｚ２Ｌ、ｚ１Ｌ）との関係は、図８の第２変換テーブル４３にしたがう。第２メモリ部（領域Ｌ）４１−Ｌは、４ビットの信号（ｙ４Ｌ、ｙ３Ｌ、ｙ２Ｌ、ｙ１Ｌ）を受けて、その信号に対応する４ビットの信号（ｚ４Ｌ、ｚ３Ｌ、ｚ２Ｌ、ｚ１Ｌ）を出力する。
【００７１】
図１２は、第３変換部５２の具体的な構成を表わす図である。
図１２を参照して、第３変換部５２は、４個の第２変換信号（論理積信号）の変換を同時に並列して行なう。第３変換部５２は、絶対値信号の個数分の第３のメモリ部で構成される。ここでは、絶対値信号の個数が４個であるので、第３変換部５２は、第３メモリ部（領域１）５１−１と、第３メモリ部（領域２）５１−２と、第３メモリ部（領域３）５１−３と、第３メモリ部（領域４）５１−４とを含む。
【００７２】
第３メモリ部（領域１）５１−１では、Ｌビットの第２変換信号ｚ１がアドレスとして用いられ、第２変換信号ｚ１で指定される領域に５ビットの第３変換信号ｗ１の値が格納されている。第２変換信号ｚ１と第３変換信号ｗ１との関係は、図９の第３変換テーブル５３にしたがう。第３メモリ部（領域１）５１−１は、Ｌビットの第２変換信号ｚ１を受けて、第２変換信号ｚ１に対応する５ビットの第３変換信号ｗ１（＝｛ｗ１５、・・・、ｗ１２、ｗ１１｝）を出力する。
【００７３】
第３メモリ部（領域２）５１−２では、Ｌビットの第２変換信号ｚ２がアドレスとして用いられ、第２変換信号ｚ２で指定される領域に５ビットの第３変換信号ｗ２の値が格納されている。第２変換信号ｚ２と第３変換信号ｗ２との関係は、図９の第３変換テーブル５３にしたがう。第３メモリ部（領域２）５１−２は、Ｌビットの第２変換信号ｚ２を受けて、第２変換信号ｚ２に対応する５ビットの第３変換信号ｗ２（＝｛ｗ２５、・・・、ｗ２２、ｗ２１｝）を出力する。
【００７４】
第３メモリ部（領域３）５１−３では、Ｌビットの第２変換信号ｚ３がアドレスとして用いられ、第２変換信号ｚ３で指定される領域に５ビットの第３変換信号ｗ３の値が格納されている。第２変換信号ｚ３と第３変換信号ｗ３との関係は、図９の第３変換テーブル５３にしたがう。第３メモリ部（領域３）５１−３は、Ｌビットの第２変換信号ｚ３を受けて、第２変換信号ｚ３に対応する５ビットの第３変換信号ｗ３（＝｛ｗ３５、・・・、ｗ３２、ｗ３１｝）を出力する。
【００７５】
第３メモリ部（領域４）５１−４では、Ｌビットの第２変換信号ｚ４がアドレスとして用いられ、第２変換信号ｚ４で指定される領域に５ビットの第３変換信号ｗ４の値が格納されている。第２変換信号ｚ４と第３変換信号ｗ４との関係は、図９の第３変換テーブル５３にしたがう。第３メモリ部（領域４）５１−４は、Ｌビットの第２変換信号ｚ４を受けて、第２変換信号ｚ４に対応する５ビットの第３変換信号ｗ４（＝｛ｗ４５、・・・、ｗ４２、ｗ４１｝）を出力する。
【００７６】
図１３は、第１の実施形態の符号生成部２１の構成を表わす図である。
図１３を参照して、この符号生成部２１は、ＳＬ個（ここでは、ＳＬ＝４）の符号ビットのうち１個を除いた（ＳＬ−１）個の符号ビットの排他的論理和演算の結果を表わす符号ビットを出力する装置である。符号生成部２１は、取り除く１個が相違するＳＬ個の符号ビットを出力する。
【００７７】
第４変換部６２は、４個の符号ビットＵ１、Ｕ２、Ｕ３、Ｕ４を受けて、第４変換規則を定めた第４変換テーブル６３で規定される対応関係で変換した４個の符号ビットＶ１、Ｖ２、Ｖ３、Ｖ４を生成する。
【００７８】
第４の変換規則では、４個の符号ビットうちの１個を除いた３個の符号ビットの排他的論理和演算の結果を表わす符号ビットが生成される。第４変換部６２は、除かれる１個がそれぞれ相違する４種類の３個の符号ビットを用いて、４個の符号ビットＶ１、Ｖ２、Ｖ３、Ｖ４を生成する。
【００７９】
具体的には、第４変換部６２は、第４メモリ部６１を含む。第４メモリ部６１では、４ビットの信号（Ｕ４、Ｕ３、Ｕ２、Ｕ１）がアドレスとして用いられ、当該４ビットの信号に対応する領域に４ビットの信号（Ｖ４、Ｖ３、Ｖ２、Ｖ１）の値が格納されている。
【００８０】
４ビットの信号（Ｕ４、Ｕ３、Ｕ２、Ｕ１）と４ビットの信号（Ｖ４、Ｖ３、Ｖ２、Ｖ１）との関係は、第４変換テーブル６３にしたがう。第４メモリ部６１は、４ビットの信号（Ｕ４、Ｕ３、Ｕ２、Ｕ１）を受けて、その信号に対応する４ビットの信号（Ｖ４、Ｖ３、Ｖ２、Ｖ１）を出力する。
【００８１】
図１４は、第１の実施形態の第４変換テーブル６３の例を表わす図である。
図１４を参照して、第４変換テーブル６３では、４個の１ビット入力（入力１、入力２、入力３、入力４）と４個の１ビット出力（出力１、出力２、出力３、出力４）との対応関係を定める。具体的には、出力１は、入力１を除く３個の入力（入力２、入力３、入力４）の排他的論理和を表わす。出力２は、入力２を除く３個の入力（入力１、入力３、入力４）の排他的論理和を表わす。出力３は、入力３を除く３個の入力（入力１、入力２、入力４）の排他的論理和を表わす。出力４は、入力４を除く３個の入力（入力１、入力２、入力３）の排他的論理和を表わす。
【００８２】
第４変換部６２は、４個の符号ビットを第４変換テーブル６３の４個の入力として用い、この入力に対する第４変換テーブル６３の４個の出力を４個の符号ビットＶ１、Ｖ２、Ｖ３、Ｖ４として生成する。
【００８３】
以上のように、本発明の実施形態の復号化器によれば、論理積の演算の入力と出力の関係を定めた第２変換テーブルを用いることによって、Ｍｉｎ演算を行なうので、論理積の演算を行なう論理演算器を不要にすることができる。また、符号の計算においても、排他的論理和演算の入力と出力の関係を定めた第４変換テーブルを用いることで、排他的論理和演算回路を不要にすることができる。したがって、本発明の実施形態の復号化器によれば、特許文献１に記載された方法に比べて、演算器の数を減らすことができる。
【００８４】
［第１の実施形態の変形例１］
復号化器５は、上述のように専用のハードウエア装置で実現されるものに限られない。外部から復号プログラムをメモリにインストールし、コンピュータがこの復号プログラムをメモリから読出して実行することによって、復号化器５の機能を実現することとしてもよい。この場合、復号プログラムは、図１５のフローチャートで示される動作手順で動作する。
【００８５】
まず、初期動作として、ループ回数および事前値対数比βｍｎの初期設定が行なわれる。このループ回数は、列処理部１４で生成された事前値対数比βｍｎを用いて再び行処理部１２で外部値対数比αｍｎを生成するループにおける演算回数を示す。このループ回数においては、最大値が予め定められる。事前値対数比βｍｎは、“０”に初期設定される（ステップＳＰ１）。
【００８６】
次いで、受信シンボル系列に従って、対数尤度比算出部１０が対数尤度比λｎを算出する（ステップＳＰ２）。
【００８７】
次に、行番号を表わすｍが１とされる（ステップＳＰ３）。
次に、第ｍ行処理部１８−ｍ（ｍ＝１〜Ｍ）の加算部２０は、ＳＬ個の信号｛βmn′：ｎ′はＨｍｎ′＝１を満たす、ＳＬ個の異なる数である｝を受けて、それらと対数尤度比λn′とを加算して、加算結果｛（λn′＋βｍn′）：ｎ′はＨｍｎ′＝１を満たす、ＳＬ個の異なる数である｝を出力する。ここでは、行重みＳＬは「４」であり、Ｈｍｎ′＝１を満たすｎ′は、ｎ１、ｎ２、ｎ３、ｎ４とする（ステップＳＰ４）。
【００８８】
次に、第ｍ行処理部１８−ｍの第１順位推定部２２の第１変換部３２は、４個の絶対値信号｛｜λn′＋βｍn′｜：ｎ′はＨｍｎ′＝１を満たす、４個の異なる数である｝（ｘ１、ｘ２、ｘ３、ｘ４）を受けて、図７に示す第１変換テーブル３３に基づいて、それぞれを変換した４個の第１変換信号ｙ１、ｙ２、ｙ３、ｙ４を生成する（ステップＳＰ５）。
【００８９】
次に、第ｍ行処理部１８−ｍの第１順位推定部２２の第２変換部４２は、第１変換部３２から出力される４個の第１変換信号ｙ１、ｙ２、ｙ３、ｙ４について、図８に示す第２変換テーブル４３に基づいて、１個を除いた３個の第１変換信号のビット単位の論理積を、除く１個が相違する４種類について求めて、第２変換信号ｚ１、ｚ２、ｚ３、ｚ４を生成する（ステップＳＰ６）。
【００９０】
次に、第ｍ行処理部１８−ｍの第１順位推定部２２の第３変換部５２は、第２変換部４２から出力される第２変換信号ｚ１、ｚ２、ｚ３、ｚ４を受けて、これらをそれぞれ図９に示す第３変換テーブル５３に基づいて変換して、４個の入力信号ｘ１、ｘ２、ｘ３、ｘ４のうちの１個を除いた最小値を表わす４個の第２変換信号ｗ１、ｗ２、ｗ３、ｗ４を生成して、式（１）の絶対値部分Ｒm，n1、Ｒm,n2、Ｒm,n3、Ｒm,n3として出力する（ステップＳＰ７）。
【００９１】
次に、第ｍ行処理部１８−ｍの符号生成部２１の第４変換部６２は、ＳＬ（＝４）個の信号｛（λn′＋βｍn′）：ｎ′＝ｎ１、ｎ２、ｎ３、ｎ４｝の符号を表わすＳＬ個の符号ビット（Ｕ１、Ｕ２、Ｕ３、Ｕ４）を受けて、図１４に示す第４変換テーブル６３に基づいて、１個を除いた３個の符号ビットの排他的論理和を、除く１個が相違する４種類について求めて、符号ビット（Ｖ１、Ｖ２、Ｖ３、Ｖ４）を生成して、式（１）の符号部分Ｓm，n1、Ｓm,n2、Ｓm,n3、Ｓm,n3として出力する（ステップＳＰ８）。
【００９２】
次に、第ｍ行処理部１８−ｍの結合部２３は、符号生成部２１から出力されるＳｍｎ（ｎ＝ｎ１、ｎ２、ｎ３、ｎ４）と第１順位推定部２２から出力されるＲｍｎ（ｎ＝ｎ１、ｎ２、ｎ３、ｎ４）のそれぞれを結合して、外部値対数比αｍｎを生成する（ステップＳＰ９）。
【００９３】
次に、第ｍ行処理部１８−ｍの結合部２３は、生成された外部値対数比αｍｎを出力する（ステップＳＰ１０）。
【００９４】
次に、ｍ＝Ｍでない場合には（ステップＳＰ１１でＮＯ）、ｍをインクリメントして、（ステップＳＰ１２）、ステップＳＰ４に戻る。
【００９５】
次に、列処理部１４が、式（２）にしたがって、事前値対数比βｍｎを算出する（ステップＳＰ１３）。
【００９６】
次に、ループ判定部１６は、対数尤度比λｎおよび外部値対数比αｍｎに従って、演算λｎ＋Σαｍｎを行なって推定受信語Ｑｎを算出する（ステップＳＰ１４）。ここで、総和Σは、部分集合Ｂ（ｎ）の要素ｍについて実行される。
【００９７】
このステップＳＰ１２において算出された値Ｑｎの正負の符号を判定し（ステップＳＰ１５）、１次推定符号Ｃｎを生成する（ステップＳＰ１６）。この符号の正／負判定においては、たとえば、推定受信語Ｑｎが２の補数表示されているときには、最上位ビット（符号ビット）のビット値を見ることにより、正および負の判定を行なうことができる。
【００９８】
１次推定符号Ｃｎが全て生成され、１次推定語（Ｃ１，・・・，ＣＮ）が生成されると、次いでパリティ検査を実行する（ステップＳＰ１７）。このパリティ検査においては、先の検査行列Ｈの転置行列を用いて、（Ｃ１，…，ＣＮ）・Ｈt＝０を計算する。この計算により、生成されるシンドロームが０であれば、１次推定語（Ｃ１，…，ＣＮ）を復号語として出力する（ステップＳＰ２０）。
【００９９】
一方、この生成されたシンドロームが０と異なる場合には、ループ回数が最大値であるかの判定が行なわれる（ステップＳＰ１８）。すなわち、この１次推定語の生成回数をカウントし、その生成回数が所定の最大回数に到達すると、その符号についての算出をそれ以上をやめて、現在生成されている１次推定語を復号語として出力する（ステップＳＰ２０）。これにより、収束性の悪いノイジーな符号に対して、不必要に演算処理時間が要するのを防止する。
【０１００】
ステップＳＰ１８において、ループ回数が最大値に到達していないと判定されると、このループ回数を１だけインクリメントして（ステップＳＰ１９）、再びステップＳＰ２からの処理を実行する。
【０１０１】
（本願の発明をプログラムで実行する場合の具体的な効果）
以上のように、本発明の実施形態の復号プログラムによれば、第１の実施形態と同様に、特許文献１に記載された方法に比べて、演算器の数を減らすことができる。また、一般に、複数の要素の最小値を検出する方法として、各要素の大小比較を行なうプログラムがある。このプログラムは、ＩＦ文などの分岐命令を必要とするが、分岐命令処理は、プログラムの実行クロック数を多く必要とする。そのため、このプログラムでは、最小値を検出するのに要する時間が長くなる。これに対して、本発明の実施形態の復号プログラムでは、最小値の探索を、テーブルを用いたビット論理演算によって行なうため分岐命令が不要となる。その結果、本発明の実施形態のプログラムでは、大小比較を実施する一般的なプログラムよりも、短時間で最小値を検出することができる。
【０１０２】
［第１の実施形態の変形例２］
本変形の構成は、図示しないが、図６に示す第１順位推定部２２の構成とほぼ同様である。ただし、本変形例では、第１変換部３２は、図７の第１変換テーブルとは異なる変換テーブルを用いる。第２変換部４２は、図８の第２変換テーブルとは異なる変換テーブルを用いる。また、第３変換部５２は、図９の第３変換テーブルとは異なる変換テーブルを用いる。
【０１０３】
第１変換部３２は、第１の実施形態と異なる第１変換テーブルに従って、絶対値信号ｘ１、ｘ２、ｘ３、ｘ４から第１変換信号をｙ１、ｙ２、ｙ３、ｙ４を生成する。
【０１０４】
図１６は、第１の実施形態の変形例２の第１変換テーブル１３３の例を表わす図である。
【０１０５】
図１６を参照して、第１変換テーブル１３３では、絶対値信号の値と第１変換信号の値が１対１で対応する。この第１変換テーブル１３３では、絶対値信号は５ビットで表され、取り得る値の範囲が０〜Ｌであり、第１変換信号の取り得る値はＬビットで表わされる。図１６では、Ｌ＝３１である。
【０１０６】
第１変換テーブル１３３によれば、絶対値信号の値がｋ（０≦ｋ≦３１）のときに、第１変換信号の下位のｋ個のビットが「０」となり、それ以外のビットが「１」となる。たとえば、絶対値信号の値が「０」ときには、第１変換信号のすべてのビットが「１」となる。絶対値信号の値が「１」のときには、第１変換信号の最下位ビットのみが「０」となる。絶対値信号の値が「２」のときには、第１変換信号の下位の２個のビットのみが「０」となる。
【０１０７】
第２変換部４２は、第１の実施形態と異なる第２変換テーブルを用いて、第１変換信号ｙ１、ｙ２、ｙ３、ｙ４から第２変換信号ｚ１、ｚ２、ｚ３、ｚ４を生成する。
【０１０８】
図１７は、第１の実施形態の変形例２の第２変換テーブル１４３の例を表わす図である。
【０１０９】
図１７を参照して、第２変換テーブル１４３では、４個の１ビット入力（入力１、入力２、入力３、入力４）と４個の１ビット出力（出力１、出力２、出力３、出力４）との対応関係を定める。具体的には、出力１は、入力１を除く３個の入力（入力２、入力３、入力４）のビット論理和を表わす。出力２は、入力２を除く３個の入力（入力１、入力３、入力４）のビット論理和を表わす。出力３は、入力３を除く３個の入力（入力１、入力２、入力４）のビット論理和を表わす。出力４は、入力４を除く３個の入力（入力１、入力２、入力３）のビット論理和を表わす。
【０１１０】
第３変換部５２は、第１の実施形態と異なる第３変換テーブルを用いて、第２変換信号ｚ１、ｚ２、ｚ３、ｚ４から第３変換信号ｗ１、ｗ２、ｗ３、ｗ４を生成する。
【０１１１】
図１８は、第１の実施形態の変形例２の第３変換テーブル１５３の例を表わす図である。
【０１１２】
図１８を参照して、第２変換信号（論理和信号）と第３変換信号との対応関係は、図１６の第１変換テーブル１３３の対応関係を逆にしたものである。すなわち、第３変換テーブル１５３において第２変換信号に対応する第３変換信号の値は、第１変換テーブル１３３においてその第２変換信号と同一の値の第１変換信号に対応する絶対値信号の値と同一である。
【０１１３】
第３変換テーブル１５３によれば、第２変換信号の下位のｋ個（０≦ｋ≦３１）のビットが「０」で、それ以外のビットが「１」のときに、第３変換信号の値がｋとなる。たとえば、第２変換信号のすべてのビットが「１」のときには、第３変換信号の値が「０」となる。第２変換信号の最下位ビットのみが「０」のときには、第３変換信号の値が「１」となる。第２変換信号の下位の２個のビットのみが「０」のときには、第３変換信号の値が「３」となる。
【０１１４】
以上のように、本変形例によれば、第１の実施形態におけるビットごとの論理積で最小値を見つける方式をビットごとの論理和で最小値を見つける方法に置き換えることができ、このように置き換えても、第１の実施形態と同様の効果が得られる。
【０１１５】
［第１の実施形態の変形例３］
本変形の構成は、図示しないが、図６に示す第１順位推定部２２の構成とほぼ同様である。ただし、本変形例では、第１変換部３２は、図７の第１変換テーブルとは異なる変換テーブルを用いる。第２変換部４２は、第１の実施形態と同様である。また、第３変換部５２は、図９の第３変換テーブルとは異なる変換テーブルを用いる。
【０１１６】
第１変換部３２は、第１の実施形態と異なる第１変換テーブルに従って、絶対値信号ｘ１、ｘ２、ｘ３、ｘ４から第１変換信号をｙ１、ｙ２、ｙ３、ｙ４を生成する。
【０１１７】
図１９は、第１の実施形態の変形例３の第１変換テーブル２３３の例を表わす図である。
【０１１８】
図１９を参照して、第１変換テーブル２３３では、絶対値信号の値と第１変換信号の値が１対１で対応する。
【０１１９】
第１変換テーブル２３３では、絶対値信号の取り得る値は小さい順に順序づけられる第１番目から第Ａ番目までの（Ａは、２以上の自然数）であり、かつ第１変換信号の取り得る値はＢビット（Ｂ≧（Ａ−１））で表わされる。ここでは、Ａは３２とし、Ｂは、３３とする。
【０１２０】
第１の変換テーブル２３３では、取り得る値のうちの第Ｋ番目（Ｋは１以上（Ａ−１）以下の自然数）の絶対値信号に対応する第１変換信号のビットのうち、値が「１」であるビットが存在する場合に、取り得る値のうちの第（Ｋ＋１）番目の絶対値信号に対応する第１変換信号については、値が「１」であるビットの位置は、第Ｋ番目の絶対値信号に対応する第１変換信号のビットのうちの値が「１」であるビットの位置と、さらに少なくとも１つのビットの位置とからなる。
【０１２１】
たとえば、絶対値信号が「第１番目の小さな値」に対する第１変換信号の第３２ビット目と第３３ビット目のみが「１」である。絶対値信号が「第２番目の小さな値」に対する第１変換信号は、第３２ビット目と第３３ビット目に加えて、さらに第３ビット目が「１」となる。絶対値信号が「第３番目の小さな値」に対する第１変換信号は、第３２ビット目と第３３ビット目、第３ビット目に加えて、さらに第２９ビット目が「１」となる。
【０１２２】
第３変換部５２は、第１の実施形態と異なる第３変換テーブルを用いて、第２変換信号ｚ１、ｚ２、ｚ３、ｚ４から第３変換信号ｗ１、ｗ２、ｗ３、ｗ４を生成する。
【０１２３】
図２０は、第１の実施形態の変形例３の第３変換テーブル２５３の例を表わす図である。
【０１２４】
図２０を参照して、第２変換信号（論理積信号）と第３変換信号との対応関係は、図１９の第１変換テーブル１３３の対応関係を逆にしたものである。すなわち、第３変換テーブル２５３において第２変換信号に対応する第３変換信号の値は、第１変換テーブル２３３においてその第２変換信号と同一の値の第１変換信号に対応する絶対値信号の値と同一である。
【０１２５】
たとえば、第２変換信号の第３２ビット目と第３３ビット目のみが「１」のときに、第３変換信号は、「第１番目の小さな値」である。第２変換信号の第３２ビット目と第３３ビット目と第３ビット目のみが「１」のときに、第３変換信号は、「第２番目の小さな値」である。第２変換信号の第３２ビット目と第３３ビット目と第３ビット目と第２９ビット目のみが「１」のときに、第３変換信号は、「第３番目の小さな値」である。
【０１２６】
以上のように、本変形例によれば、絶対値信号の取りうる値は、連続した数でなくてもよく、順序さえ定まればよい。また、第１変換は、絶対値信号の順序の増加につれて、下位ビットから順次「１」にするのではなく、いずれかのビットを「１」にすればよい。このような方式を用いても、第１の実施形態と同様の効果が得られる。
【０１２７】
［第１の実施形態の変形例４］
本変形の構成は、図示しないが、図６に示す第１順位推定部２２の構成とほぼ同様である。ただし、本変形例では、第１変換部３２は、図７の第１変換テーブルとは異なる変換テーブルを用いる。第２変換部４２は、第１の実施形態と同様である。また、第３変換部５２は、図９の第３変換テーブルとは異なる変換テーブルを用いる。
【０１２８】
第１変換部３２は、第１の実施形態と異なる第１変換テーブルに従って、絶対値信号ｘ１、ｘ２、ｘ３、ｘ４から第１変換信号をｙ１、ｙ２、ｙ３、ｙ４を生成する。
【０１２９】
図２１は、第１の実施形態の変形例４の第１変換テーブル３３３の例を表わす図である。
【０１３０】
図２１を参照して、第１変換テーブル３３３では、１個または複数個の絶対値信号が１個の第１変換信号に対応している。
【０１３１】
第１変換テーブル３３３では、絶対値信号の取り得る値は５ビットで表わされ、第１変換信号の取り得る値は５ビットで表わされる。ここでは、これらの値は５ビットとしたが、Ａビット（Ａは１以上の自然数）であれば、どのようなものであってもよい。
【０１３２】
絶対値信号を構成するビットのうち、値が「１」である最も上位ビットが最下位ビットからｋ番目（１≦ｋ≦５）のビットのときに、第１変換信号の下位のｋ個のビットが「１」となり、それ以外のビットが「０」となる。また、絶対値信号を構成するビットのうち、すべてのビットが「０」のときに、第１変換信号のすべてのビットが「０」となる。
【０１３３】
具体的には、絶対値信号が「０００００」のときには、第１変換信号は「０００００」となる。絶対値信号が「００００１」のときには、第１変換信号は「００００１」となる。絶対値信号が「０００１０」または「０００１１」のときには、第１変換信号は「０００１１」となる。絶対値信号が「００１００」、「００１０１」、「００１１０」、「００１１１」のときには、第１変換信号は「００１１１」となる。絶対値信号が「０１０００」、「０１００１」、「０１０１０」、・・・、「０１１１１」のときには、第１変換信号は「０１１１１」となる。絶対値信号が「１００００」、「１０００１」、「１００１０」、・・・、「１１１１１」のときには、第１変換信号は「１１１１１」となる。
【０１３４】
第３変換部５２は、第２変換部４２から出力される４個の第２変換信号ｚ１、ｚ２、ｚ３、ｚ４を受けて、第１の実施形態と異なる第３変換テーブルで規定される対応関係で変換した第３変換信号ｗ１、ｗ２、ｗ３、ｗ４を生成して出力する。ここで、第３変換信号ｗ１は、３個の絶対値信号ｘ２、ｘ３、ｘ４のうちの値が最小である信号またはその最小値の近似値であり、第３変換信号ｗ２は、３個の絶対値信号ｘ１、ｘ３、ｘ４のうちの値が最小である信号またはその最小値の近似値であり、第３変換信号ｗ３は、３個の絶対値信号ｘ１、ｘ２、ｘ４のうちの値が最小である信号またはその最小値の近似値であり、第３変換信号ｗ４は、３個の絶対値信号ｘ１、ｘ２、ｘ３のうちの値が最小である信号またはその最小値の近似値である。
【０１３５】
図２２は、第１の実施形態の変形例４の第３変換テーブル３５３の例を表わす図である。
【０１３６】
図２２を参照して、第３変換テーブル３５３において第２変換信号に対応する第３変換信号の値は、第１変換テーブル３３３においてその第２変換信号と同一の値の第１変換信号に対応する絶対値信号が１個のときには、その１個の絶対値信号の値と同一であり、その第２変換信号と同一の値の第１変換信号に対応する絶対値信号が複数個のときには、複数個の絶対値信号のうちの１つの値と同一である。
【０１３７】
第２変換信号を構成するビットのうち、値が「１」である最も上位ビットが最下位ビットから第ｋ番目（１≦ｋ≦５）のビットのときに、第３変換信号の最下位ビットから第ｋ番目のビットのみが「１」となり、その他のビットが「０」となる。第２変換信号を構成するビットのうち、すべてのビットが「０」のときには、第３変換信号のすべてのビットが「０」となる。
【０１３８】
具体的には、第２変換信号が「０００００」のときには、第３変換信号の値が「０００００」となる。第２変換信号が「００００１」のときには、第３変換信号の値が「００００１」となる。第２変換信号が「０００１１」のときには、第３変換信号の値が「０００１０」となる。第２変換信号が「００１１１」のときには、第３変換信号が「００１００」となる。第２変換信号が「０１１１１」のときには、第３変換信号が「０１０００」となる。第２変換信号が「１１１１１」のときには、第３変換信号が「１００００」となる。
【０１３９】
以上のように、本変形例によれば、第１の実施形態と同様の効果が得られる。また、本変形例によれば、第１変換において、絶対値信号のビット数と第１変換信号のビット数を同一にし、第３変換において、第２変換信号のビット数と第３変換信号のビット数とを同一にするので、第１の実施形態よりも、メモリ容量（つまり、テーブルサイズ）および配線数を少なくすることができる。
【０１４０】
［第１の実施形態の変形例５］
本変形の構成は、図示しないが、図６に示す第１順位推定部２２の構成とほぼ同様である。ただし、本変形例では、第１変換部３２は、図７の第１変換テーブルとは異なる変換テーブルを用いる。第２変換部４２は、第１の実施形態と同様である。また、第３変換部５２は、図９の第３変換テーブルとは異なる変換テーブルを用いる。
【０１４１】
第１変換部３２は、第１の実施形態と異なる第１変換テーブルに従って、絶対値信号ｘ１、ｘ２、ｘ３、ｘ４から第１変換信号をｙ１、ｙ２、ｙ３、ｙ４を生成する。
【０１４２】
図２３は、第１の実施形態の変形例５の第１変換テーブル４３３の例を表わす図である。
【０１４３】
図２３を参照して、第１変換テーブル４３３では、１個または複数個の絶対値信号が１個の第１変換信号に対応している。
【０１４４】
第１変換テーブル４３３では、絶対値信号の取り得る値は５ビットで表わされ、第１変換信号の取り得る値は５ビットで表わされる。ここでは、これらの値は５ビットとしたが、Ａビット（Ａは１以上の自然数）であれば、どのようなものであってもよい。
【０１４５】
絶対値信号を構成するビットのうち、値が「１」である最も上位ビットが最下位ビットからｋ番目（１≦ｋ≦５）のビットのときに、第１変換信号のｋ個のビットが「１」となり、それ以外のビットが「０」となる。絶対値信号を構成するビットのうち、値が「１」である最も上位ビットが最下位ビットから（ｋ＋１）番目（１≦ｋ≦４）のビットのときに、第１変換信号は、上記ｋ個のビットに加えて、さらに１個のビットが「１」となり、それ以外のビットが「０」となる。
【０１４６】
具体的には、絶対値信号が「０００００」のときには、第１変換信号は「０００００」となる。絶対値信号が「００００１」のときには、第１変換信号は「００１００」となる。絶対値信号が「０００１０」または「０００１１」のときには、第１変換信号は「００１１０」となる。絶対値信号が「００１００」、「００１０１」、「００１１０」、「００１１１」のときには、第１変換信号は「１０１１０」となる。絶対値信号が「０１０００」、「０１００１」、「０１０１０」、・・・、「０１１１１」のときには、第１変換信号は「１０１１１」となる。絶対値信号が「１００００」、「１０００１」、「１００１０」、・・・、「１１１１１」のときには、第１変換信号は「１１１１１」となる。
【０１４７】
第３変換部５２は、第２変換部４２から出力される４個の第２変換信号ｚ１、ｚ２、ｚ３、ｚ４を受けて、第１の実施形態と異なる第３変換テーブルで規定される対応関係で変換した第３変換信号ｗ１、ｗ２、ｗ３、ｗ４を生成して出力する。ここで、第３変換信号ｗ１は、３個の絶対値信号ｘ２、ｘ３、ｘ４のうちの値が最小である信号またはその最小値の近似値であり、第３変換信号ｗ２は、３個の絶対値信号ｘ１、ｘ３、ｘ４のうちの値が最小である信号またはその最小値の近似値であり、第３変換信号ｗ３は、３個の絶対値信号ｘ１、ｘ２、ｘ４のうちの値が最小である信号またはその最小値の近似値であり、第３変換信号ｗ４は、３個の絶対値信号ｘ１、ｘ２、ｘ３のうちの値が最小である信号またはその最小値の近似値である。
【０１４８】
図２４は、第１の実施形態の変形例５の第３変換テーブル４５３の例を表わす図である。
【０１４９】
図２４を参照して、第３変換テーブル４５３において第２変換信号に対応する第３変換信号の値は、第１変換テーブル３３３においてその第２変換信号と同一の値の第１変換信号に対応する絶対値信号が１個のときには、その１個の絶対値信号の値と同一であり、その第２変換信号と同一の値の第１変換信号に対応する絶対値信号が複数個のときには、複数個の絶対値信号のうちの１つの値と同一である。
【０１５０】
第２変換信号を構成するビットのうち、値が「１」であるビットがｋ個（１≦ｋ≦５）のビットのときに、第３変換信号の最下位ビットから第ｋ番目のビットのみが「１」となり、その他のビットが「０」となる。第２変換信号を構成するビットのうち、すべてのビットが「０」のときには、第３変換信号のすべてのビットが「０」となる。
【０１５１】
具体的には、第２変換信号が「０００００」のときには、第３変換信号の値が「０００００」となる。第２変換信号が「００１００」のときには、第３変換信号の値が「００００１」となる。第２変換信号が「００１１０」のときには、第３変換信号の値が「０００１０」となる。第２変換信号が「１０１１０」のときには、第３変換信号が「００１００」となる。第２変換信号が「１０１１１」のときには、第３変換信号が「０１０００」となる。第２変換信号が「１１１１１」のときには、第３変換信号が「１００００」となる。
【０１５２】
以上のように、本変形例によれば、変形例４と同様に、第１変換において、絶対値信号のビット数と第１変換信号のビット数を同一にし、第３変換において、第２変換信号のビット数と第３変換信号のビット数とを同一にする。また、本変形例は、第１変換は、絶対値信号の順序の増加につれて、下位ビットから順次「１」にするのではなく、いずれかのビットを「１」にする点で変形例４と相違するが。このような方式を用いても、変形例４と同様に、第１の実施形態よりも、メモリ容量および配線数を少なくすることができる。
【０１５３】
［第２の実施形態］
第２の実施形態は、テーブルと論理演算器の両方を用いて、第２変換信号および符号ビットを生成する復号装置に関する。
【０１５４】
本実施の形態では、行重みＳＬ＝６として説明する。したがって、第１変換部３２には、６個の絶対値信号ｘ１〜ｘ６が入力され、第３変換部５２から６個の第３変換信号ｚ１〜ｚ６が出力されるものとする。また、第４変換部６２には、６個の符号ビットＵ１〜Ｕ６が入力されて、６個の符号ビットＶ１〜Ｖ６が出力されるものとする。
【０１５５】
図２５は、第２の実施形態の第２変換部７２の構成を表わす図である。
図２５を参照して、第２変換部７２は、第１変換部４２から出力される６個の第１変換信号ｙ１、ｙ２、ｙ３、ｙ４、ｙ５、ｙ６を受けて、第２変換規則を定めた第２変換テーブル５４３で規定される対応関係で変換した６個の第２変換信号ｚ１、ｚ２、ｚ３、ｚ４、ｚ５、ｚ６を生成する。第２の変換規則では、６個の第１変換信号のうちの１個を除いて５個の第１変換信号のビット単位の論理積の結果を表わす第２変換信号が生成される。第２変換部７２は、除かれる１個がそれぞれ相違する６種類の５個の第１変換信号を用いて、６個の第２変換信号を生成する。
【０１５６】
第２変換部７２は、複数個の第１変換信号の変換を同時に並列して行なう。第２変換部４２は、第１変換信号のビット数Ｌ個の変換部で構成される。すなわち、第２変換部７２は、第１ビット変換部７５−１と、第２ビット変換部７５−２と、・・・、第Ｌビット変換部７５−Ｌとを含む。以下では、第１ビット変換部７５−１について代表して説明する。他のビット変換部も同様である。
【０１５７】
第１ビット変換部７５−１は、論理積回路ＡＮＤ１−１およびＡＮＤ１−２を含む。
論理積回路ＡＮＤ１−１は、第１変換信号ｙ１、ｙ２、ｙ３の第１ビットの論理積Ｙ１を算出する。論理積回路ＡＮＤ１−２は、第１変換信号ｙ４、ｙ５、ｙ６の第１ビットの論理積Ｙ２を算出する。
【０１５８】
第１ビット変換部７５−１は、さらに第２メモリ部（領域１−１）７１−１−１を含む。第２メモリ部（領域１−１）７１−１−１では、３個の第１変換信号ｙ１、ｙ２、ｙ３の第１ビットと論理積Ｙ２からなる４ビットの信号（Ｙ２、ｙ３１、ｙ２１、ｙ１１）がアドレスとして用いられ、当該４ビットの信号に対応する領域に第２変換信号ｚ１、ｚ２、ｚ３の第１ビット目である３ビットの信号（ｚ３１、ｚ２１、ｚ１１）の値が格納されている。４ビットの信号（Ｙ２、ｙ３１、ｙ２１、ｙ１１）と３ビットの信号（ｚ３１、ｚ２１、ｚ１１）との関係は、第２変換テーブル５４３にしたがう。第２メモリ部（領域１−１）７１−１−１は、４ビットの信号（Ｙ２、ｙ３１、ｙ２１、ｙ１１）を受けて、その信号に対応する３ビットの信号（ｚ３１、ｚ２１、ｚ１１）を出力する。
【０１５９】
また、第１ビット変換部７５−１は、第２メモリ部（領域１−２）７１−１−２を含む。第２メモリ部（領域１−２）７１−１−２では、３個の第１変換信号ｙ４、ｙ５、ｙ６の第１ビットと論理積Ｙ１からなる４ビットの信号（Ｙ１、ｙ４１、ｙ５１、ｙ６１）がアドレスとして用いられ、当該４ビットの信号に対応する領域に第２変換信号ｚ４、ｚ５、ｚ６の第１ビット目である３ビットの信号（ｚ４１、ｚ５１、ｚ６１）の値が格納されている。４ビットの信号（Ｙ１、ｙ４１、ｙ５１、ｙ６１）と３ビットの信号（ｚ４１、ｚ５１、ｚ６１）との関係は、第２変換テーブル５４３にしたがう。第２メモリ部（領域１−２）７１−１−２は、４ビットの信号（Ｙ１、ｙ４１、ｙ５１、ｙ６１）を受けて、その信号に対応する３ビットの信号（ｚ４１、ｚ５１、ｚ６１）を出力する。
【０１６０】
図２６は、第２の実施形態の第２変換テーブル５４３の例を表わす図である。
図２６を参照して、第２変換テーブル５４３では、３個の第１の１ビット入力（入力１、入力２、入力３）および１個の第２の１ビット入力（入力４）と３個の１ビット出力（出力１、出力２、出力３）との対応関係を定める。
【０１６１】
具体的には、出力１は、入力１を除く２個の第１の入力（入力２、入力３）と第２の入力（入力４）のビット論理積を表わす。出力２は、入力２を除く２個の第１の入力（入力１、入力３）と第２の入力（入力４）のビット論理積を表わす。出力３は、入力３を除く２個の第１の入力（入力１、入力２）と第２の入力（入力４）のビット論理積を表わす。
【０１６２】
第１ビット変換部７５−１は、論理積回路ＡＮＤ１−２から出力される論理積Ｙ２を第２変換テーブル５４３の１個の第２の入力とし、かつ第１変換信号ｙ１、ｙ２、ｙ３の第１ビットを第２変換テーブル５４３の３個の第１の入力として用い、この入力に対する第２変換テーブル５４３の３個の出力を３個の第２変換信号ｚ１、ｚ２、ｚ３の第１ビットとして生成する。また、第１ビット変換部７５−１は、論理積回路ＡＮＤ１−１から出力される論理積Ｙ１を第２変換テーブル５４３の１個の第２の入力とし、かつ第１変換信号ｙ４、ｙ５、ｙ６の第１ビットを第２変換テーブル５４３の３個の第１の入力として用い、この入力に対する第２変換テーブル５４３の３個の出力を３個の第２変換信号ｚ４、ｚ５、ｚ６の第１ビットとして生成する。
【０１６３】
図２７は、第２の実施形態の第４変換部８２の構成を表わす図である。
図２７を参照して、第４変換部８２は、６個の符号ビットＵ１、Ｕ２、Ｕ３、Ｕ４、Ｕ５、Ｕ６を受けて、第４変換規則を定めた第４変換テーブル５６３で規定される対応関係で変換した６個の符号ビットＶ１、Ｖ２、Ｖ３、Ｖ４、Ｖ５、Ｖ６を生成する。
【０１６４】
第４の変換規則では、６個の符号ビットうちの１個を除いた５個の符号ビットの排他的論理和演算の結果を表わす符号ビットが生成される。第４変換部８２は、除かれる１個がそれぞれ相違する６種類の５個の符号ビットを用いて、６個の符号ビットＶ１、Ｖ２、Ｖ３、Ｖ４、Ｖ５、Ｖ６を生成する。
【０１６５】
第４変換部８２は、排他的論理和回路ＥＸＯＲ１およびＥＸＯＲ２を含む。
排他的論理和回路ＥＸＯＲ１は、符号ビットＵ１、Ｕ２、Ｕ３の排他的論理和ＥＲ１を算出する。排他的論理和回路ＥＸＯＲ２は、符号ビットＵ４、Ｕ５、Ｕ６の排他的論理和ＥＲ２を算出する。
【０１６６】
第４変換部８２は、第４メモリ部（領域１）８１を含む。第４メモリ部（領域１）８１では、３個の符号ビットＵ１、Ｕ２、Ｕ３と排他的論理和ＥＲ２からなる４ビットの信号（ＥＲ２、Ｕ３、Ｕ２、Ｕ１）がアドレスとして用いられ、当該４ビットの信号に対応する領域に３ビットの信号（Ｖ３、Ｖ２、Ｖ１）の値が格納されている。４ビットの信号（ＥＲ２、Ｕ３、Ｕ２、Ｕ１）と３ビットの信号（Ｖ３、Ｖ２、Ｖ１）との関係は、第４変換テーブル５６３にしたがう。第４メモリ部（領域１）８１は、４ビットの信号（ＥＲ２、Ｕ３、Ｕ２、Ｕ１）を受けて、その信号に対応する３ビットの信号（Ｖ３、Ｖ２、Ｖ１）を出力する。
【０１６７】
第４変換部８２は、第４メモリ部（領域２）８３を含む。第４メモリ部（領域２）８３では、３個の符号ビットＵ４、Ｕ５、Ｕ６と排他的論理和ＥＲ１からなる４ビットの信号（ＥＲ１、Ｕ６、Ｕ５、Ｕ４）がアドレスとして用いられ、当該４ビットの信号に対応する領域に３ビットの信号（Ｖ６、Ｖ５、Ｖ４）の値が格納されている。４ビットの信号（ＥＲ１、Ｕ６、Ｕ５、Ｕ４）と３ビットの信号（Ｖ６、Ｖ５、Ｖ４）との関係は、第４変換テーブル５６３にしたがう。第４メモリ部（領域２）８２は、４ビットの信号（ＥＲ１、Ｕ６、Ｕ５、Ｕ４）を受けて、その信号に対応する３ビットの信号（Ｖ６、Ｖ５、Ｖ４）を出力する。
【０１６８】
図２８は、第２の実施形態の第４変換テーブル５６３の例を表わす図である。
図２８を参照して、第４変換テーブル５６３では、３個の第１の１ビット入力（入力１、入力２、入力３）および１個の第２の１ビット入力（入力４）と３個の１ビット出力（出力１、出力２、出力３）との対応関係を定める。
【０１６９】
具体的には、出力１は、入力１を除く２個の第１の入力（入力２、入力３）と第２の入力（入力４）の排他的論理和を表わす。出力２は、入力２を除く２個の第１の入力（入力１、入力３）と第２の入力（入力４）の排他的論理和を表わす。出力３は、入力３を除く２個の第１の入力（入力１、入力２）と第２の入力（入力４）の排他的論理和を表わす。
【０１７０】
第４変換部８２は、排他的論理和回路ＥＸＯＲ２から出力される排他的論理和ＥＲ２を第４変換テーブル５６３の１個の第２の入力とし、かつ３個の符号ビットＵ１、Ｕ２、Ｕ３を第４変換テーブル５６３の３個の第１の入力として用い、この入力に対する第４変換テーブル５６３の３個の出力を３個の符号ビットＶ１、Ｖ２、Ｖ３として生成する。また、第４変換部８２は、排他的論理和回路ＥＸＯＲ１から出力される排他的論理和ＥＲ１を第４変換テーブル５６３の１個の第２の入力とし、かつ３個の符号ビットＵ４、Ｕ５、Ｕ６を第４変換テーブル５６３の３個の第１の入力として用い、この入力に対する第４変換テーブル５６３の３個の出力を３個の符号ビットＶ４、Ｖ５、Ｖ６として生成する。
【０１７１】
以上のように、本発明の実施形態の復号化器によれば、論理積の演算の入力と出力の関係を定めた第２変換テーブルと論理演算器を併用して、Ｍｉｎ演算を行なうので、特許文献１に記載されたように論理積の演算をすべて論理演算器を行なう方法よりも、演算器の数を減らすことができる。また、本実施形態では、第１の実施形態のように、Ｍｉｎ演算のすべての論理積を第２変換テーブルを用いて求める方法よりも、第２変換テーブルの容量を少なくできる。
【０１７２】
［第２の実施形態の変形例］
本変形例は、第２変換におけるビット論理演算をテーブルと論理演算器に分担させる分担の割合が、第２の実施形態と相違する。
【０１７３】
第２の実施形態によれば、第２変換部は、論理積回路が、ＳＬ（＝６）個の信号のうちの（ＳＬ−Ｍ）（＝３）個の信号の各ビットの論理積を算出した。そして、Ｍ（＝３）個の第１の入力と、１個の第２の入力とを有する第２変換テーブルを用いて、Ｍ個の第２変換信号の各ビットを生成した。また、第４変換部は、排他的論理和回路が、ＳＬ（＝６）個の信号のうちの（ＳＬ−Ｍ）（＝３）個の信号の符号ビットの排他的論理和を算出した。そして、Ｍ（＝３）個の第１の入力と、１個の第２の入力とを有する第４変換テーブルを用いて、Ｍ個の符号ビットを生成した。ここでは、Ｍは３としたが、これに限定するものではなく、Ｍは１以上、（ＳＬ−１）以下の自然数であればよい。以下では、Ｍは２の例について説明する。
【０１７４】
図２９は、第２の実施形態の変形例の第２変換部の第１ビット変換部９５−１の構成を表わす図である。他のビット変換部も、これと同様である。
【０１７５】
第１ビット変換部９５−１は、論理積回路ＡＮＤ１−１１〜ＡＮＤ１−１６を含む。
論理積回路ＡＮＤ１−１１は、第１変換信号ｙ１、ｙ２の第１ビットの論理積Ｙ１１を算出する。論理積回路ＡＮＤ１−１２は、第１変換信号ｙ３、ｙ４の第１ビットの論理積Ｙ１２を算出する。論理積回路ＡＮＤ１−１３は、第１変換信号ｙ５、ｙ６の第１ビットの論理積Ｙ１３を算出する。論理積回路ＡＮＤ１−１４は、論理積Ｙ１２、Ｙ１３の論理積Ｙ１４を算出する。論理積回路ＡＮＤ１−１５は、論理積Ｙ１１、Ｙ１３の論理積Ｙ１５を算出する。論理積回路ＡＮＤ１−１６は、論理積Ｙ１１、Ｙ１２の論理積Ｙ１６を算出する。
【０１７６】
第１ビット変換部９５−１は、第２メモリ部（領域１−１）９１−１−１を含む。第２メモリ部（領域１−１）９１−１−１では、２個の第１変換信号ｙ１、ｙ２の第１ビットと論理積Ｙ１４からなる３ビットの信号（Ｙ１４、ｙ２１、ｙ１１）がアドレスとして用いられ、当該３ビットの信号に対応する領域に第２変換信号ｚ１、ｚ２の第１ビット目である２ビットの信号（ｚ２１、ｚ１１）の値が格納されている。３ビットの信号（Ｙ１４、ｙ２１、ｙ１１）と２ビットの信号（ｚ２１、ｚ１１）との関係は、第２変換テーブル９３にしたがう。第２メモリ部（領域１−１）９１−１−１は、３ビットの信号（Ｙ１４、ｙ２１、ｙ１１）を受けて、その信号に対応する２ビットの信号（ｚ２１、ｚ１１）を出力する。
【０１７７】
第１ビット変換部９５−１は、第２メモリ部（領域１−２）９１−１−２を含む。第２メモリ部（領域１−２）９１−１−２では、２個の第１変換信号ｙ３、ｙ４の第１ビットと論理積Ｙ１５からなる３ビットの信号（Ｙ１５、ｙ４１、ｙ３１）がアドレスとして用いられ、当該３ビットの信号に対応する領域に第２変換信号ｚ３、ｚ４の第１ビット目である２ビットの信号（ｚ４１、ｚ３１）の値が格納されている。３ビットの信号（Ｙ１５、ｙ４１、ｙ３１）と２ビットの信号（ｚ４１、ｚ３１）との関係は、第２変換テーブル９３にしたがう。第２メモリ部（領域１−２）９１−１−２は、３ビットの信号（Ｙ１５、ｙ４１、ｙ３１）を受けて、その信号に対応する２ビットの信号（ｚ４１、ｚ３１）を出力する。
【０１７８】
第１ビット変換部９５−１は、第２メモリ部（領域１−３）９１−１−３を含む。第２メモリ部（領域１−３）９１−１−３では、２個の第１変換信号ｙ５、ｙ６の第１ビットと論理積Ｙ１６からなる３ビットの信号（Ｙ１６、ｙ６１、ｙ５１）がアドレスとして用いられ、当該３ビットの信号に対応する領域に第２変換信号ｚ５、ｚ６の第１ビット目である２ビットの信号（ｚ６１、ｚ５１）の値が格納されている。３ビットの信号（Ｙ１６、ｙ６１、ｙ５１）と２ビットの信号（ｚ６１、ｚ５１）との関係は、第２変換テーブル９３にしたがう。第２メモリ部（領域１−３）９１−１−５は、３ビットの信号（Ｙ１６、ｙ６１、ｙ５１）を受けて、その信号に対応する２ビットの信号（ｚ６１、ｚ５１）を出力する。
【０１７９】
図３０は、第２の実施形態の変形例の第２変換テーブル９３の例を表わす図である。
図３０を参照して、第２変換テーブル９３では、２個の第１の１ビット入力（入力１、入力２）および１個の第２の１ビット入力（入力３）と２個の１ビット出力（出力１、出力２）との対応関係を定める。
【０１８０】
具体的には、出力１は、入力１を除く１個の第１の入力（入力２）と第２の入力（入力３）のビット論理積を表わす。出力２は、入力２を除く１個の第１の入力（入力１）と第２の入力（入力３）のビット論理積を表わす。
【０１８１】
第１ビット変換部９５−１は、論理積回路ＡＮＤ１−１４から出力される論理積Ｙ１４を第２変換テーブル９３の１個の第２の入力とし、かつ第１変換信号ｙ１、ｙ２の第１ビットを第２変換テーブル９３の２個の第１の入力として用い、この入力に対する第２変換テーブル９３の２個の出力を２個の第２変換信号の第１ビットｚ１１、ｚ２１として生成する。また、第１ビット変換部９５−１は、論理積回路ＡＮＤ１−１５から出力される論理積Ｙ１５を第２変換テーブル９３の１個の第２の入力とし、かつ第１変換信号ｙ３、ｙ４の第１ビットを第２変換テーブル９３の２個の第１の入力として用い、この入力に対する第２変換テーブル９３の２個の出力を２個の第２変換信号の第１ビットｚ３１、ｚ４１として生成する。また、第１ビット変換部９５−３は、論理積回路ＡＮＤ１−１６から出力される論理積Ｙ１６を第２変換テーブル９３の１個の第２の入力とし、かつ第１変換信号ｙ５、ｙ６の第１ビットを第２変換テーブル９３の２個の第１の入力として用い、この入力に対する第２変換テーブル９３の２個の出力を２個の第２変換信号の第１ビットｚ５１、ｚ６１として生成する。
【０１８２】
以上のように、本変形例によれば、第２変換部は、論理積回路が、ＳＬ（＝６）個の信号のうちの（ＳＬ−Ｍ）（＝４）個の信号の各ビットの論理積を算出した。そして、Ｍ（＝２）個の第１の入力と、１個の第２の入力とを有する第２変換テーブルを用いて、Ｍ個の第２変換信号の各ビットを生成した。また、第４変換部についても、同様にして排他的論理和回路が、ＳＬ（＝６）個の信号のうちの（ＳＬ−Ｍ）（＝４）個の信号の各ビットの排他的論理和を算出し、Ｍ（＝２）個の第１の入力と、１個の第２の入力とを有する第４変換テーブルを用いて、Ｍ個の符号ビットを生成することとしてもよい。
【０１８３】
以上のように、本変形例によれば、第２の実施形態と同様の効果が得られる。すなわち、本変形例によれば、特許文献１の方法よりも演算器の数を減らすことができ、第１の実施形態の方法よりも第２変換テーブルの容量を少なくできる。
【０１８４】
（全体を通じての変形例）
本発明は、上記の実施の形態に限定されるものではなく、たとえば以下のような変形例を含む。
【０１８５】
（１）  尤度の高い信号を用いた復号
本発明の実施形態およびその変形例では、尤度が最小の信号を用いて低密度パリティ検査符号を復号する方法を説明した。この方法は、誤りがありそうな信号から順に誤り訂正を行なうので、迅速に一定精度の誤り訂正を行なうことができる。
【０１８６】
しかしながら、尤度が高い所定個数の信号を用いて、誤り訂正を行なうようにしてもよい。例えばターボ符号や畳み込み符号では，BCJRアルゴリズム，ビタビ復号アルゴリズムなどがあり，尤度の高い信号を基に誤り訂正を行なうＭＡＰ（最大事後確率）アルゴリズムがある。これらの方法は、確実な信号を基準にして、誤りのありそうなところを訂正するので、より確実に誤りの訂正が可能となる。
【０１８７】
たとえば、LDPCの復号においても自身を除いて最も大きい信号を用いる復号法（これをmax-sum復号法と呼ぶことにする）を用いてもよい。
【０１８８】
max-sum復号法では、min-sum復号法における式（１）の最小値を出力する演算minが、最大値を出力する演算maxに置き換えられる。そして、第１順位推定部の処理が、小さいものから第１順位である最小値またはその近似値を推定するものから、大きいものから第１順位である最大値またはその近似値を推定するものに置き換えられる。
【０１８９】
この置き換えは、第１変換テーブルと、第３変換テーブルを代えるだけで容易に実現できる。第１変換テーブルにおいて、絶対値信号の順番を逆にし、かつ第３変換テーブルにおいて、第２変換信号の順序を逆にすればよい。たとえば、図７の第１変換テーブルにおいて、絶対値信号の「０００００」、「００００１」、・・・、「１１１１１」が、それぞれ、第１変換信号の「１１１・・・１１１１」、「０１１・・・１１１１」、・・・、「０００・・・００００」に対応するように変形し、図９の第３変換テーブルにおいて、
第２変換信号の「１１１・・・１１１１」、「０１１・・・１１１１」、・・・、「０００・・・００００」が、それぞれ、第３変換信号の「０００００」、「００００１」、・・・、「１１１１１」に対応するように変形すればよい。
【０１９０】
（２）  テーブル
本発明の実施形態では、第１〜第４変換テーブルは、それぞれ個別のメモリ領域に保存されることとしたが、これに限定するものではなく、各変換に際して、同一のＲＡＭ(Random Access Memory)にロードすることとしてもよい。
【０１９１】
（３）  符号生成部の構成
本発明の実施形態の符号生成部では、外部値対数比αｍｎの符号を求めるために、第４変換テーブル、あるいは排他的論理和演算回路と第４変換テーブルを用いたが、排他的論理演算回路のみを用いてもよい。
【０１９２】
図３１は、変形例１の符号生成部９６を表わす図である。
図３１を参照して、排他的論理和回路ＥＸＯＲ１１は、符号ビットＵ２、Ｕ３の排他的論理和ＥＲ１１を算出する。排他的論理和回路ＥＸＯＲ１２は、符号ビットＵ１、Ｕ３の排他的論理和ＥＲ１２を算出する。排他的論理和回路ＥＸＯＲ１３は、符号ビットＵ１、Ｕ２の排他的論理和ＥＲ１３を算出する。排他的論理和回路ＥＸＯＲ１４は、符号ビットＵ１、Ｕ２の排他的論理和ＥＲ１４を算出する。排他的論理和回路ＥＸＯＲ１５は、排他的論理和ＥＲ１と符号ビットＵ４の排他的論理和ＥＲ１５を符号ビットＶ１として生成する。排他的論理和回路ＥＸＯＲ１６は、排他的論理和ＥＲ１２と符号ビットＵ４の排他的論理和ＥＲ１６を符号ビットＶ２として生成する。排他的論理和回路ＥＸＯＲ１７は、排他的論理和ＥＲ３と符号ビットＵ４の排他的論理和ＥＲ１７を符号ビットＶ３として生成する。排他的論理和回路ＥＸＯＲ１８は、排他的論理和ＥＲ１４と符号ビットＵ３の排他的論理和ＥＲ１８を符号ビットＶ４として生成する。
【０１９３】
図３２は、変形例２の符号生成部９７を表わす図である。
排他的論理和回路ＥＸＯＲ１９は、符号ビットＵ１、Ｕ２の排他的論理和ＥＲ１９を算出する。排他的論理和回路ＥＸＯＲ２０は、符号ビットＵ３、Ｕ４の排他的論理和ＥＲ２０を算出する。排他的論理和回路ＥＸＯＲ２１は、符号ビットＵ１と排他的論理和ＥＲ２０の排他的論理和ＥＲ２１を符号ビットＶ２として生成する。排他的論理和回路ＥＸＯＲ２２は、符号ビットＵ２と排他的論理和ＥＲ２０の排他的論理和ＥＲ２２を符号ビットＶ１として生成する。排他的論理和回路ＥＸＯＲ２３は、符号ビットＵ３と排他的論理和ＥＲ１９の排他的論理和ＥＲ２３を符号ビットＶ４として生成する。排他的論理和回路ＥＸＯＲ２４は、符号ビットＵ４と排他的論理和ＥＲ１９の排他的論理和ＥＲ２４を符号ビットＶ３として生成する。
【０１９４】
図３２の符号生成部９７では、図３１の符号生成部９６に比べて、排他的論理和回路の個数を減らすことができる。
【０１９５】
（４）  第１順位推定部の構成
本発明の実施形態では、ビットごとの論理演算によって、絶対値信号の最小値を求めたが、これに限定されるものではない。
【０１９６】
図３３は、変形例１の第１順位推定部９９を表わす図である。
図３３を参照して、比較器ＣＭＰ１は、絶対値信号ｘ２とｘ３の大きさを比較して、小さい方の信号ＣＰ１を出力する。比較器ＣＭＰ１は、絶対値信号ｘ１とｘ３の大きさを比較して、小さい方の信号ＣＰ２を出力する。比較器ＣＭＰ３は、絶対値信号ｘ１とｘ２の大きさを比較して、小さい方の信号ＣＰ３を出力する。比較器ＣＭＰ４は、絶対値信号ｘ１とｘ２の大きさを比較して、小さい方の信号ＣＰ４を出力する。比較器ＣＭＰ５は、絶対値信号ｘ４と信号ＣＰ１の大きさを比較して、小さい方の信号ＣＰ５を第３変換信号ｗ１として出力する。比較器ＣＭＰ６は、絶対値信号ｘ４と信号ＣＰ２の大きさを比較して、小さい方の信号ＣＰ６を第３変換信号ｗ２として出力する。比較器ＣＭＰ７は、絶対値信号ｘ４と信号ＣＰ３の大きさを比較して、小さい方の信号ＣＰ７を第３変換信号ｗ３として出力する。比較器ＣＭＰ８は、絶対値信号ｘ３と信号ＣＰ４の大きさを比較して、小さい方の信号ＣＰ８を第３変換信号ｗ４として出力する。
【０１９７】
図３４は、変形例２の第１順位推定部９８を表わす図である。
図３４を参照して、比較器ＣＭＰ９は、絶対値信号ｘ１とｘ２の大きさを比較して、小さい方の信号ＣＰ９を出力する。比較器ＣＭＰ１０は、絶対値信号ｘ３とｘ４の大きさを比較して、小さい方の信号ＣＰ１０を出力する。比較器ＣＭＰ１１は、絶対値信号ｘ１と信号ＣＰ１０の大きさを比較して、小さい方の信号ＣＰ１１を第３変換信号ｗ２として出力する。比較器ＣＭＰ１２は、絶対値信号ｘ２と信号ＣＰ１０の大きさを比較して、小さい方の信号ＣＰ１２を第３変換信号ｗ１として出力する。比較器ＣＭＰ１３は、絶対値信号ｘ３と信号ＣＰ９の大きさを比較して、小さい方の信号ＣＰ１３を第３変換信号ｗ４として出力する。比較器ＣＭＰ１４は、絶対値信号ｘ４と信号ＣＰ９の大きさを比較して、小さい方の信号ＣＰ１４を第３変換信号ｗ３として出力する。
【０１９８】
図３４の第１順位推定部９８では、図３３の第１順位推定部９９に比べて、比較器の個数を減らすことができる。
【０１９９】
今回開示された実施の形態はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。
【図面の簡単な説明】
【０２００】
【図１】通信システムの構成の一例を示す図である。
【図２】通信路が光ファイバの場合の変調器２よび復調器の出力信号の対応関係を一覧にして示す図である。
【図３】復号化器の構成を概略的に示す図である。
【図４】行処理部の構成を表わす図である。
【図５】第ｍ行処理部の構成を示す図である。
【図６】第１順位推定部２２の構成を表わす図である。
【図７】第１の実施形態の第１変換テーブルの例を表わす図である。
【図８】第１の実施形態の第２変換テーブルの例を表わす図である。
【図９】第１の実施形態の第３変換テーブル５３の例を表わす図である。
【図１０】第１変換部の具体的な構成を表わす図である。
【図１１】第１の実施形態の第２変換部の具体的な構成を表わす図である。
【図１２】第３変換部の具体的な構成を表わす図である。
【図１３】第１の実施形態の符号生成部の構成を表わす図である。
【図１４】第１の実施形態の第４変換テーブルの構成を表わす図である。
【図１５】復号プログラムの処理手順を表わすフローチャートである。
【図１６】第１の実施形態の変形例２の第１変換テーブルの例を表わす図である。
【図１７】第１の実施形態の変形例２の第２変換テーブルの例を表わす図である。
【図１８】第１の実施形態の変形例２の第３変換テーブルの例を表わす図である。
【図１９】第１の実施形態の変形例３の第１変換テーブルの例を表わす図である。
【図２０】第１の実施形態の変形例３の第３変換テーブルの例を表わす図である。
【図２１】第１の実施形態の変形例４の第１変換テーブルの例を表わす図である。
【図２２】第１の実施形態の変形例４の第３変換テーブルの例を表わす図である。
【図２３】第１の実施形態の変形例５の第１変換テーブルの例を表わす図である。
【図２４】第１の実施形態の変形例５の第３変換テーブルの例を表わす図である。
【図２５】第２の実施形態の第２変換部の構成を表わす図である。
【図２６】第２の実施形態の第２変換テーブルの例を表わす図である。
【図２７】第２の実施形態の第４変換部の構成を表わす図である。
【図２８】第２の実施形態の第４変換テーブルの例を表わす図である。
【図２９】第２の実施形態の変形例の第２変換部の第１ビット変換部の構成を表わす図である。
【図３０】第２の実施形態の変形例の第２変換テーブル９３の例を表わす図である。
【図３１】変形例１の符号生成部を表わす図である。
【図３２】変形例２の符号生成部を表わす図である。
【図３３】変形例１の第１順位推定部を表わす図である。
【図３４】変形例２の第１順位推定部を表わす図である。
【符号の説明】
【０２０１】
１  符号化器、２  変調器、３  通信路、４  復調器、４ａ  復調回路、４ｂ  アナログ／デジタル変調回路、５  復号化器、１０  対数尤度比算出部、１２  行処理部、１４
列処理部、１６  ループ判定部、１８−１  第１行処理部、１８−２  第２行処理部、１８−ｍ  第ｍ行処理部、１８−Ｍ  第Ｍ行処理部、２０  加算部、２２，９８，９９  第１順位推定部、２１，９６，９７  符号生成部、２３  結合部、３２  第１変換部、４２，７２  第２変換部、５２  第３変換部、６２，８２  第４変換部、３１−１〜３１−４  第１メモリ部、４１−１〜４１−Ｌ，７１−１−１，７１−１−２，７１−Ｌ−１，７１−Ｌ−２，９１−１−１，９１−１−２，９１−１−３  第２メモリ部、５１−１〜５１−４  第３メモリ部、６１，８１，８３  第４メモリ部、４５−１〜４５−Ｌ  第Ｋビット変換部、９５−１  第１ビット変換部、３３，１３３，２３３，３３３，４３３  第１変換テーブル、４３，９３，１４３，５４３  第２変換テーブル、５３，１５３，２５３，３５３，４５３  第３変換テーブル、６３，５６３  第４変換テーブル、ＡＮＤ１−１，ＡＮＤ１−２，ＡＮＤＬ−１，ＡＮＤＬ−２，ＡＮＤ１−１１〜ＡＮＤ１−１６  論理積回路、ＥＸＯＲ１，ＥＸＯＲ２，ＥＸＯＲ１１〜ＥＸＯＲ２４  排他的論理和回路、ＣＭＰ１〜ＣＭＰ１４  比較器。
【図１】
2010130358.tif 000005
【図２】
2010130358.tif 000006
【図３】
2010130358.tif 000007
【図４】
2010130358.tif 000008
【図５】
2010130358.tif 000009
【図６】
2010130358.tif 000010
【図７】
2010130358.tif 000011
【図８】
2010130358.tif 000012
【図９】
2010130358.tif 000013
【図１０】
2010130358.tif 000014
【図１１】
2010130358.tif 000015
【図１２】
2010130358.tif 000016
【図１３】
2010130358.tif 000017
【図１４】
2010130358.tif 000018
【図１５】
2010130358.tif 000019
【図１６】
2010130358.tif 000020
【図１７】
2010130358.tif 000021
【図１８】
2010130358.tif 000022
【図１９】
2010130358.tif 000023
【図２０】
2010130358.tif 000024
【図２１】
2010130358.tif 000025
【図２２】
2010130358.tif 000026
【図２３】
2010130358.tif 000027
【図２４】
2010130358.tif 000028
【図２５】
2010130358.tif 000029
【図２６】
2010130358.tif 000030
【図２７】
2010130358.tif 000031
【図２８】
2010130358.tif 000032
【図２９】
2010130358.tif 000033
【図３０】
2010130358.tif 000034
【図３１】
2010130358.tif 000035
【図３２】
2010130358.tif 000036
【図３３】
2010130358.tif 000037
【図３４】
2010130358.tif 000038