(57)【要約】  可変ブロック長を有するブロック低密度パリティ検査符号の符号化／復号化装置及び方法を提供する。本発明は、情報語を入力され、上記情報語をブロック低密度パリティ検査（ＬＤＰＣ）符号として生成時に適用される長さに応じて、第１のパリティ検査行列と第２のパリティ検査行列のうちのどちらか一方のパリティ検査行列を基に符号化して上記ブロックＬＤＰＣ符号として生成することにより、可変長を有するブロックＬＤＰＣ符号の生成を可能にする。
2007535236.tif 000002
【特許請求の範囲】
【請求項１】
可変長を有するブロック低密度パリティ検査（ＬＤＰＣ）符号を符号化する方法において、
情報語が入力されるステップと、
前記情報語をブロックＬＤＰＣ符号として生成するときに適用される長さに応じて、第１のパリティ検査行列と第２のパリティ検査行列のうちのどちらか一方のパリティ検査行列を基に符号化を行い、前記ブロックＬＤＰＣ符号として生成するステップと、を含むことを特徴とする前記方法。
【請求項２】
前記ブロックＬＤＰＣ符号を予め設定されている変調方式により変調して変調シンボルとして生成するステップと、
前記変調シンボルを送信するステップと、をさらに含むことを特徴とする請求項１に記載の前記方法。
【請求項３】
前記第２のパリティ検査行列は、前記第１のパリティ検査行列のサイズを可変させたパリティ検査行列であることを特徴とする請求項１に記載の前記方法。
【請求項４】
前記第１のパリティ検査行列は、予め設定されている符号化率を満足するように、且つ、前記ブロックＬＤＰＣ符号が予め設定された長さを有するように生成されたパリティ検査行列であることを特徴とする請求項３に記載の前記方法。
【請求項５】
前記第１のパリティ検査行列は、予め設定された数の部分ブロックを含み、前記部分ブロックは、所定のサイズを有することを特徴とする請求項４に記載の前記方法。
【請求項６】
前記第２のパリティ検査行列は、前記第１のパリティ検査行列の部分ブロックのサイズを可変させたパリティ検査行列であることを特徴とする請求項５に記載の前記方法。
【請求項７】
前記部分ブロックのそれぞれには、予め設定された順列行列が一対一に対応付けられることを特徴とする請求項６に記載の前記方法。
【請求項８】
前記第２のパリティ検査行列は、前記第１のパリティ検査行列の順列行列のうちの０行列ではない順列行列の指数と前記第２のパリティ検査行列の部分ブロックのサイズに応じて、前記第２のパリティ検査行列の順列行列のうちの０行列ではない順列行列の指数が決められて生成されたパリティ検査行列であることを特徴とする請求項７に記載の前記方法。
【請求項９】
前記第２のパリティ検査行列は、前記第１のパリティ検査行列の順列行列のうちの０行列ではないＬ個の順列行列の指数がａ１、ａ２、・・・、ａＬであり、前記第１のパリティ検査行列の部分ブロックのサイズがＮｓ×Ｎｓ（Ｎｓ）であり、前記第２のパリティ検査行列の順列行列のうちの０行列ではないＬ個の順列行列の指数がａ１’、ａ２’、・・・、ａＬ’であり、前記第２のパリティ検査行列の部分ブロックのサイズがＮｓ’×Ｎｓ’（Ｎｓ’）である場合、下記式６の関係が成り立つことを特徴とする請求項７に記載の前記方法。
【数１】
2007535236.tif 000058
但し、前記式６中、ｍｏｄはモジューロ演算を示す。
【請求項１０】
前記情報語を前記ブロックＬＤＰＣ符号として生成するステップは、
前記長さに応じて、前記第１のパリティ検査行列及び第２のパリティ検査行列のうちのどちらを用いるかを決めるステップと、
前記情報語を前記決められたパリティ検査行列の第１の部分行列と乗算して第１の信号として生成するステップと、
前記情報語を前記決められたパリティ検査行列の第２の部分行列と乗算して第２の信号として生成するステップと、
前記第１の信号と、前記パリティ検査行列の第３の部分行列及び第４の部分行列の逆行列の行列積とを乗算して、第３の信号として生成するステップと、
前記第２の信号と第３の信号を加算して第４の信号として生成するステップと、
前記第４の信号と前記パリティ検査行列の第５の部分行列を乗算して第５の信号として生成するステップと、
前記第２の信号と前記第５の信号を加算して第６の信号として生成するステップと、
前記第６の信号と、前記パリティ検査行列の第４の部分行列の逆行列の行列積とを乗算して、第７の信号として生成するステップと、
前記情報語と、第１のパリティとしての前記第４の信号と、第２のパリティとしての前記第７の信号を、前記ブロックＬＤＰＣ符号フォーマットに応じて多重化して出力するステップと、を含むことを特徴とする請求項９に記載の前記方法。
【請求項１１】
前記第１の部分行列及び第２の部分行列は、前記決められたパリティ検査行列における情報語と関連する情報パートに対応する部分行列であることを特徴とする請求項１０に記載の前記方法。
【請求項１２】
前記第３の部分行列と第４の部分行列は、パリティと関連する第１のパリティパートに対応する部分行列であり、前記第５の部分行列と第６の部分行列は、前記パリティと関連する第２のパリティパートに対応する部分行列であることを特徴とする請求項１１に記載の前記方法。
【請求項１３】
前記符号化率が１／２である場合、前記第１のパリティ検査行列は、下記表１で表わされることを特徴とする請求項５に記載の前記方法。
【表１】
2007535236.tif 000059
前記表１において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示し、Ｉは当該順列行列の指数が０である恒等行列を示すインデックスである。
【請求項１４】
前記符号化率が２／３である場合、前記第１のパリティ検査行列は、下記表２で表わされることを特徴とする請求項５に記載の前記方法。
【表２】
2007535236.tif 000060
前記表２において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示し、Ｉは当該順列行列の指数が０である恒等行列を示すインデックスである。
【請求項１５】
前記符号化率が３／４である場合、前記第１のパリティ検査行列は、下記表３で表わされることを特徴とする請求項５に記載の前記方法。
【表３】
2007535236.tif 000061
前記表３において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示し、Ｉは当該順列行列の指数が０である恒等行列を示すインデックスである。
【請求項１６】
前記符号化率が５／６である場合、前記第１のパリティ検査行列は、下記表４で表わされることを特徴とする請求項５に記載の前記方法。
【表４】
2007535236.tif 000062
前記表４において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示し、Ｉは当該順列行列の指数が０である恒等行列を示すインデックスである。
【請求項１７】
前記符号化率が１／２である場合、前記第１のパリティ検査行列は、下記表５で表わされることを特徴とする請求項５に記載の前記方法。
【表５】
2007535236.tif 000063
前記表５において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項１８】
前記符号化率が２／３である場合、前記第１のパリティ検査行列は、下記表６で表わされることを特徴とする請求項５に記載の前記方法。
【表６】
2007535236.tif 000064
前記表６において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項１９】
前記符号化率が３／４である場合、前記第１のパリティ検査行列は、下記表７で表わされることを特徴とする請求項５に記載の前記方法。
【表７】
2007535236.tif 000065
前記表７において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項２０】
前記符号化率が３／４である場合、前記第１のパリティ検査行列は、下記表８で表わされることを特徴とする請求項５に記載の前記方法。
【表８】
2007535236.tif 000066
前記表８において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項２１】
前記符号化率が１／２である場合、前記第１のパリティ検査行列は、下記表９で表わされることを特徴とする請求項５に記載の前記方法。
【表９】
2007535236.tif 000067
前記表９において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項２２】
前記符号化率が１／２である場合、前記第１のパリティ検査行列は、下記表１０で表わされることを特徴とする請求項５に記載の前記方法。
【表１０】
2007535236.tif 000068
前記表１０において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項２３】
前記符号化率が２／３である場合、前記第１のパリティ検査行列は、下記表１１で表わされることを特徴とする請求項５に記載の前記方法。
【表１１】
2007535236.tif 000069
前記表１１において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項２４】
前記符号化率が２／３である場合、前記第１のパリティ検査行列は、下記表１２で表わされることを特徴とする請求項５に記載の前記方法。
【表１２】
2007535236.tif 000070
前記表１２において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項２５】
前記符号化率が１／２である場合、前記第１のパリティ検査行列は、下記表１３で表わされることを特徴とする請求項５に記載の前記方法。
【表１３】
2007535236.tif 000071
前記表１３において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項２６】
前記符号化率が１／２である場合、前記第１のパリティ検査行列は、下記表１４で表わされることを特徴とする請求項５に記載の前記方法。
【表１４】
2007535236.tif 000072
前記表１４において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項２７】
前記符号化率が２／３である場合、前記第１のパリティ検査行列は、下記表１５で表わされることを特徴とする請求項５に記載の前記方法。
【表１５】
2007535236.tif 000073
前記表１５において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項２８】
可変長を有するブロック低密度パリティ検査（ＬＤＰＣ）符号を符号化する装置において、
情報語をブロックＬＤＰＣ符号として生成するときに適用される長さに応じて、第１のパリティ検査行列と第２のパリティ検査行列のうちのどちらか一方のパリティ検査行列を基に符号化を行い、前記ブロックＬＤＰＣ符号として生成する符号化器と、
前記ブロックＬＤＰＣ符号を予め設定されている変調方式により変調して変調シンボルとして生成する変調器と、
前記変調シンボルを送信する送信機と、を備えることを特徴とする前記装置。
【請求項２９】
前記第２のパリティ検査行列は、前記第１のパリティ検査行列のサイズを可変させたパリティ検査行列であることを特徴とする請求項２８に記載の前記装置。
【請求項３０】
前記第１のパリティ検査行列は、予め設定されている符号化率を満足するように、且つ、前記ブロックＬＤＰＣ符号が予め設定された長さを有するように生成されたパリティ検査行列であることを特徴とする請求項２９に記載の前記装置。
【請求項３１】
前記第１のパリティ検査行列は、予め設定された数の部分ブロックを含み、前記部分ブロックは、所定のサイズを有することを特徴とする請求項３０に記載の前記装置。
【請求項３２】
前記第２のパリティ検査行列は、前記第１のパリティ検査行列の部分ブロックのサイズを可変させたパリティ検査行列であることを特徴とする請求項３１に記載の前記装置。
【請求項３３】
前記部分ブロックのそれぞれには、予め設定された順列行列が一対一に対応付けられることを特徴とする請求項３２に記載の前記装置。
【請求項３４】
前記第２のパリティ検査行列は、前記第１のパリティ検査行列の順列行列のうちの０行列ではない順列行列の指数と前記第２のパリティ検査行列の部分ブロックのサイズに応じて、前記第２のパリティ検査行列の順列行列のうちの０行列ではない順列行列の指数が決められて生成されたパリティ検査行列であることを特徴とする請求項３３に記載の前記装置。
【請求項３５】
前記第２のパリティ検査行列は、前記第１のパリティ検査行列の順列行列のうちの０行列ではないＬ個の順列行列の指数がａ１、ａ２、・・・、ａＬであり、前記第１のパリティ検査行列の部分ブロックのサイズがＮｓ×Ｎｓ（Ｎｓ）であり、前記第２のパリティ検査行列の順列行列のうちの０行列ではないＬ個の順列行列の指数がａ１’、ａ２’ 、・・・、ａＬ’であり、前記第２のパリティ検査行列の部分ブロックのサイズがＮＳ’×ＮＳ’（ＮＳ’）である場合、下記式７の関係が成り立つことを特徴とする請求項３４に記載の前記装置。
【数２】
2007535236.tif 000074
但し、前記式７において、ｍｏｄはモジューロ演算を示す。
【請求項３６】
前記符号化器は、
前記長さに応じて、前記第１のパリティ検査行列及び第２のパリティ検査行列のうちのどちらを用いるかを決める制御器と、
前記情報語を前記決められたパリティ検査行列の第１の部分行列と乗算する第１の行列乗算器と、
前記情報語を前記決められたパリティ検査行列の第２の部分行列と乗算する第２の行列乗算器と、
前記第１の行列乗算器から出力された信号と、前記パリティ検査行列の第３の部分行列と第４の部分行列の逆行列の行列積とを乗算する第３の行列乗算器と、
前記第２の行列乗算器から出力された信号と第３の行列乗算器から出力された信号を加算する第１の加算器と、
前記第１の加算器から出力された信号と前記パリティ検査行列の第５の部分行列を乗算する第４の行列乗算器と、
前記第２の行列乗算器から出力された信号と前記第４の行列乗算器から出力された信号を加算する第２の加算器と、
前記第２の加算器から出力された信号と、前記パリティ検査行列の第４の部分行列の逆行列の行列積とを乗算する第５の行列乗算器と、
前記情報語と、第１のパリティとしての前記第１の加算器の出力信号と、第２のパリティとしての前記第５の行列乗算器の出力信号を、前記ブロックＬＤＰＣ符号フォーマットに応じて多重化して出力するスイッチと、を備えることを特徴とする請求項３５に記載の前記装置。
【請求項３７】
前記第１の部分行列及び第２の部分行列は、前記決められたパリティ検査行列における情報語と関連する情報パートに対応する部分行列であることを特徴とする請求項３６に記載の前記装置。
【請求項３８】
前記第３の部分行列と第４の部分行列は、パリティと関連する第１のパリティパートに対応する部分行列であり、前記第５の部分行列と第６の部分行列は、前記パリティと関連する第２のパリティパートに対応する部分行列であることを特徴とする請求項３７に記載の前記装置。
【請求項３９】
前記符号化率が１／２である場合、前記第１のパリティ検査行列は、下記表１６で表わされることを特徴とする請求項３１に記載の前記装置。
【表１６】
2007535236.tif 000075
前記表１６において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示し、Ｉは当該順列行列の指数が０である恒等行列を示すインデックスである。
【請求項４０】
前記符号化率が２／３である場合、前記第１のパリティ検査行列は、下記表１７で表わされることを特徴とする請求項３１に記載の前記装置。
【表１７】
2007535236.tif 000076
前記表１７において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示し、Ｉは当該順列行列の指数が０である恒等行列を示すインデックスである。
【請求項４１】
前記符号化率が３／４である場合、前記第１のパリティ検査行列は、下記表１８で表わされることを特徴とする請求項３１に記載の前記装置。
【表１８】
2007535236.tif 000077
前記表１８において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示し、Ｉは当該順列行列の指数が０である恒等行列を示すインデックスである。
【請求項４２】
前記符号化率が５／６である場合、前記第１のパリティ検査行列は、下記表１９で表わされることを特徴とする請求項３１に記載の前記装置。
【表１９】
2007535236.tif 000078
前記表１９において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示し、Ｉは当該順列行列の指数が０である恒等行列を示すインデックスである。
【請求項４３】
前記符号化率が１／２である場合、前記第１のパリティ検査行列は、下記表２０で表わされることを特徴とする請求項３１に記載の前記装置。
【表２０】
2007535236.tif 000079
前記表２０において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項４４】
前記符号化率が２／３である場合、前記第１のパリティ検査行列は、下記表２１で表わされることを特徴とする請求項３１に記載の前記装置。
【表２１】
2007535236.tif 000080
前記表２１において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項４５】
前記符号化率が３／４である場合、前記第１のパリティ検査行列は、下記表２２で表わされることを特徴とする請求項３１に記載の前記装置。
【表２２】
2007535236.tif 000081
前記表２２において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項４６】
前記符号化率が３／４である場合、前記第１のパリティ検査行列は、下記表２３で表わされることを特徴とする請求項３１に記載の前記装置。
【表２３】
2007535236.tif 000082
前記表２３において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項４７】
前記符号化率が１／２である場合、前記第１のパリティ検査行列は、下記表２４で表わされることを特徴とする請求項３１に記載の前記装置。
【表２４】
2007535236.tif 000083
前記表２４において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項４８】
前記符号化率が１／２である場合、前記第１のパリティ検査行列は、下記表２５で表わされることを特徴とする請求項３１に記載の前記装置。
【表２５】
2007535236.tif 000084
前記表２５において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項４９】
前記符号化率が２／３である場合、前記第１のパリティ検査行列は、下記表２６で表わされることを特徴とする請求項３１に記載の前記装置。
【表２６】
2007535236.tif 000085
前記表２６において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項５０】
前記符号化率が２／３である場合、前記第１のパリティ検査行列は、下記表２７で表わされることを特徴とする請求項３１に記載の前記装置。
【表２７】
2007535236.tif 000086
前記表２７において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項５１】
前記符号化率が１／２である場合、前記第１のパリティ検査行列は、下記表２８で表わされることを特徴とする請求項３１に記載の前記装置。
【表２８】
2007535236.tif 000087
前記表２８において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項５２】
前記符号化率が１／２である場合、前記第１のパリティ検査行列は、下記表２９で表わされることを特徴とする請求項３１に記載の前記装置。
【表２９】
2007535236.tif 000088
前記表２９において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項５３】
前記符号化率が２／３である場合、前記第１のパリティ検査行列は、下記表３０で表わされることを特徴とする請求項３１に記載の前記装置。
【表３０】
2007535236.tif 000089
前記表３０において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項５４】
可変長を有するブロック低密度パリティ検査（ＬＤＰＣ）符号を復号化する方法において、
信号を受信するステップと、
復号化するブロックＬＤＰＣ符号の長さに応じて、第１のパリティ検査行列及び第２のパリティ検査行列のうちのどちらを用いるかを決め、前記決められたパリティ検査行列に応じて前記受信信号を復号化して前記ブロックＬＤＰＣ符号として検出するステップと、を含むことを特徴とする前記方法。
【請求項５５】
前記第２のパリティ検査行列は、前記第１のパリティ検査行列のサイズを可変させたパリティ検査行列であることを特徴とする請求項５４に記載の前記方法。
【請求項５６】
前記第１のパリティ検査行列は、予め設定されている符号化率を満足するように、且つ、前記ブロックＬＤＰＣ符号が予め設定された長さを有するように生成されたパリティ検査行列であることを特徴とする請求項５５に記載の前記方法。
【請求項５７】
前記第１のパリティ検査行列は、予め設定された数の部分ブロックを含み、前記部分ブロックは、所定のサイズを有することを特徴とする請求項５６に記載の前記方法。
【請求項５８】
前記第２のパリティ検査行列は、前記第１のパリティ検査行列の部分ブロックのサイズを可変させたパリティ検査行列であることを特徴とする請求項５７に記載の前記方法。
【請求項５９】
前記部分ブロックのそれぞれには、予め設定された順列行列が一対一に対応付けられることを特徴とする請求項５８に記載の前記方法。
【請求項６０】
前記第２のパリティ検査行列は、前記第１のパリティ検査行列の順列行列のうちの０行列ではない順列行列の指数と前記第２のパリティ検査行列の部分ブロックのサイズに応じて、前記第２のパリティ検査行列の順列行列のうちの０行列ではない順列行列の指数が決められて生成されたパリティ検査行列であることを特徴とする請求項５９に記載の前記方法。
【請求項６１】
前記第２のパリティ検査行列は、前記第１のパリティ検査行列の順列行列のうちの０行列ではないＬ個の順列行列の指数がａ１、ａ２、・・・、ａＬであり、前記第１のパリティ検査行列の部分ブロックのサイズがＮｓ×Ｎｓ（Ｎｓ）であり、前記第２のパリティ検査行列の順列行列のうちの０行列ではないＬ個の順列行列の指数がａ１’、ａ２’、・・・、ａＬ’であり、前記第２のパリティ検査行列の部分ブロックのサイズがＮｓ’×Ｎｓ’（Ｎｓ’）である場合、下記式８の関係が成り立つことを特徴とする請求項６０に記載の前記方法。
【数３】
2007535236.tif 000090
但し、前記式８において、ｍｏｄはモジューロ演算を示す。
【請求項６２】
前記決められたパリティ検査行列に応じて前記受信信号を復号化して前記ブロックＬＤＰＣ符号として検出するステップは、
前記決められたパリティ検査行列に応じて、デインタリーブ方式及びインタリーブ方式を決めるステップと、
前記受信信号の確率値を検出するステップと、
前記受信信号の確率値から以前の復号化時に生成された信号を減算して第１の信号を生成するステップと、
前記第１の信号を入力して前記デインタリーブ方式によりデインタリーブを行うステップと、
前記デインタリーブされた信号を入力して確率値を検出するステップと、
前記デインタリーブされた信号の確率値から前記デインタリーブされた信号を減算して第２の信号を生成するステップと、
前記第２の信号を前記インタリーブ方式によりインタリーブし、前記インタリーブされた信号を繰り返し復号化して前記ブロックＬＤＰＣ符号を検出するステップと、を含むことを特徴とする請求項６１に記載の前記方法。
【請求項６３】
前記符号化率が１／２である場合、前記第１のパリティ検査行列は、下記表３１で表わされることを特徴とする請求項５７に記載の前記方法。
【表３１】
2007535236.tif 000091
前記表３１において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示し、Ｉは当該順列行列の指数が０である恒等行列を示すインデックスである。
【請求項６４】
前記符号化率が２／３である場合、前記第１のパリティ検査行列は、下記表３２で表わされることを特徴とする請求項５７に記載の前記方法。
【表３２】
2007535236.tif 000092
前記表３２において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示し、Ｉは当該順列行列の指数が０である恒等行列を示すインデックスである。
【請求項６５】
前記符号化率が３／４である場合、前記第１のパリティ検査行列は、下記表３３で表わされることを特徴とする請求項５７に記載の前記方法。
【表３３】
2007535236.tif 000093
前記表３３において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示し、Ｉは当該順列行列の指数が０である恒等行列を示すインデックスである。
【請求項６６】
前記符号化率が５／６である場合、前記第１のパリティ検査行列は、下記表３４で表わされることを特徴とする請求項５７に記載の前記方法。
【表３４】
2007535236.tif 000094
前記表３４において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示し、Ｉは当該順列行列の指数が０である恒等行列を示すインデックスである。
【請求項６７】
前記符号化率が１／２である場合、前記第１のパリティ検査行列は、下記表３５で表わされることを特徴とする請求項５７に記載の前記方法。
【表３５】
2007535236.tif 000095
前記表３５において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項６８】
前記符号化率が２／３である場合、前記第１のパリティ検査行列は、下記表３６で表わされることを特徴とする請求項５７に記載の前記方法。
【表３６】
2007535236.tif 000096
前記表３６において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項６９】
前記符号化率が３／４である場合、前記第１のパリティ検査行列は、下記表３７で表わされることを特徴とする請求項５７に記載の前記方法。
【表３７】
2007535236.tif 000097
前記表３７において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項７０】
前記符号化率が３／４である場合、前記第１のパリティ検査行列は、下記表３８で表わされることを特徴とする請求項５７に記載の前記方法。
【表３８】
2007535236.tif 000098
前記表３８において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項７１】
前記符号化率が１／２である場合、前記第１のパリティ検査行列は、下記表３９で表わされることを特徴とする請求項５７に記載の前記方法。
【表３９】
2007535236.tif 000099
前記表３９において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項７２】
前記符号化率が１／２である場合、前記第１のパリティ検査行列は、下記表４０で表わされることを特徴とする請求項５７に記載の前記方法。
【表４０】
2007535236.tif 000100
前記表４０において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項７３】
前記符号化率が２／３である場合、前記第１のパリティ検査行列は、下記表４１で表わされることを特徴とする請求項５７に記載の前記方法。
【表４１】
2007535236.tif 000101
前記表４１において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項７４】
前記符号化率が２／３である場合、前記第１のパリティ検査行列は、下記表４２で表わされることを特徴とする請求項５７に記載の前記方法。
【表４２】
2007535236.tif 000102
前記表４２において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項７５】
前記符号化率が１／２である場合、前記第１のパリティ検査行列は、下記表４３で表わされることを特徴とする請求項５７に記載の前記方法。
【表４３】
2007535236.tif 000103
前記表４３において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項７６】
前記符号化率が１／２である場合、前記第１のパリティ検査行列は、下記表４４で表わされることを特徴とする請求項５７に記載の前記方法。
【表４４】
2007535236.tif 000104
前記表４４において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項７７】
前記符号化率が２／３である場合、前記第１のパリティ検査行列は、下記表４５で表わされることを特徴とする請求項５７に記載の前記方法。
【表４５】
2007535236.tif 000105
前記表４５において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項７８】
可変長を有するブロック低密度パリティ検査（ＬＤＰＣ）符号を復号化する装置において、
信号を受信する受信機と、
復号化するブロックＬＤＰＣ符号の長さに応じて、第１のパリティ検査行列及び第２のパリティ検査行列のうちのどちらを用いるかを決め、前記決められたパリティ検査行列に応じて前記受信信号を復号化して前記ブロックＬＤＰＣ符号として検出する復号化器と、を備えることを特徴とする前記装置。
【請求項７９】
前記第２のパリティ検査行列は、前記第１のパリティ検査行列のサイズを可変させたパリティ検査行列であることを特徴とする請求項７８に記載の前記装置。
【請求項８０】
前記第１のパリティ検査行列は、予め設定されている符号化率を満足するように、且つ、前記ブロックＬＤＰＣ符号が予め設定された長さを有するように生成されたパリティ検査行列であることを特徴とする請求項７９に記載の前記装置。
【請求項８１】
前記第１のパリティ検査行列は、予め設定された数の部分ブロックを含み、前記部分ブロックは所定のサイズを有することを特徴とする請求項８０に記載の前記装置。
【請求項８２】
前記第２のパリティ検査行列は、前記第１のパリティ検査行列の部分ブロックのサイズを可変させたパリティ検査行列であることを特徴とする請求項８１に記載の前記装置。
【請求項８３】
前記部分ブロックのそれぞれには、予め設定された順列行列が一対一に対応付けられることを特徴とする請求項８２に記載の前記装置。
【請求項８４】
前記第２のパリティ検査行列は、前記第１のパリティ検査行列の順列行列のうちの０行列ではない順列行列の指数と前記第２のパリティ検査行列の部分ブロックのサイズに応じて、前記第２のパリティ検査行列の順列行列のうちの０行列ではない順列行列の指数が決められて生成されたパリティ検査行列であることを特徴とする請求項８３に記載の前記装置。
【請求項８５】
前記第２のパリティ検査行列は、前記第１のパリティ検査行列の順列行列のうちの０行列ではないＬ個の順列行列の指数がａ１、ａ２、・・・、ａＬであり、前記第１のパリティ検査行列の部分ブロックのサイズがＮｓ×Ｎｓ（Ｎｓ）であり、前記第２のパリティ検査行列の順列行列のうちの０行列ではないＬ個の順列行列の指数がａ１’、ａ２’、・・・、ａＬ’であり、前記第２のパリティ検査行列の部分ブロックのサイズがＮｓ’×Ｎｓ’（Ｎｓ’）である場合、下記式９の関係が成り立つことを特徴とする請求項８４に記載の前記装置。
【数４】
2007535236.tif 000106
但し、前記式９において、ｍｏｄは、モジューロ演算を示す。
【請求項８６】
前記復号化器は、
前記復号化するブロックＬＤＰＣ符号の長さに応じて、第１のパリティ検査行列及び第２のパリティ検査行列のうちのどちらを用いるかを決める第１の制御器と、
所定の制御により、前記決められたパリティ検査行列を構成する列のそれぞれのウェイトに応じて、変数ノードを接続して受信信号の確率値を検出して出力する変数ノード復号化器と、
前記変数ノード復号化器から出力された信号から以前の復号化時に生成された信号を減算して出力する第１の加算器と、
前記第１の加算器から出力された信号を入力し、前記決められたパリティ検査行列に応じて設定されたデインタリーブ方式によりデインタリーブして出力するデインタリーバーと、
所定の制御により、前記決められたパリティ検査行列を構成する行のそれぞれのウェイトに応じて、検査ノードを接続して前記デインタリーバーから出力された信号の確率値を検出して出力する検査ノード復号化器と、
前記検査ノード復号化器から出力された信号から前記デインタリーバーから出力された信号を減算する第２の加算器と、
前記第２の加算器から出力された信号を前記決められたパリティ検査行列に応じて設定されたインタリーブ方式によりインタリーブして、前記変数ノード復号化器及び前記第１の加算器に出力するインタリーバーと、
前記デインタリーブ方式及びインタリーブ方式を前記決められたパリティ検査行列に応じて制御する第２の制御器と、を備えることを特徴とする請求項８５に記載の前記装置。
【請求項８７】
前記符号化率が１／２である場合、前記第１のパリティ検査行列は、下記表４６で表わされることを特徴とする請求項８１に記載の前記装置。
【表４６】
2007535236.tif 000107
前記表４６において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示し、Ｉは当該順列行列の指数が０である恒等行列を示すインデックスである。
【請求項８８】
前記符号化率が２／３である場合、前記第１のパリティ検査行列は、下記表４７で表わされることを特徴とする請求項８１に記載の前記装置。
【表４７】
2007535236.tif 000108
前記表４７において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示し、Ｉは当該順列行列の指数が０である恒等行列を示すインデックスである。
【請求項８９】
前記符号化率が３／４である場合、前記第１のパリティ検査行列は、下記表４８で表わされることを特徴とする請求項８１に記載の前記装置。
【表４８】
2007535236.tif 000109
前記表４８において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示し、Ｉは当該順列行列の指数が０である恒等行列を示すインデックスである。
【請求項９０】
前記符号化率が５／６である場合、前記第１のパリティ検査行列は、下記表４９で表わされることを特徴とする請求項８１に記載の前記装置。
【表４９】
2007535236.tif 000110
前記表４９において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示し、Ｉは当該順列行列の指数が０である恒等行列を示すインデックスである。
【請求項９１】
前記符号化率が１／２である場合、前記第１のパリティ検査行列は、下記表５０で表わされることを特徴とする請求項８１に記載の前記装置。
【表５０】
2007535236.tif 000111
前記表５０において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項９２】
前記符号化率が２／３である場合、前記第１のパリティ検査行列は、下記表５１で表わされることを特徴とする請求項８１に記載の前記装置。
【表５１】
2007535236.tif 000112
前記表５１において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項９３】
前記符号化率が３／４である場合、前記第１のパリティ検査行列は、下記表５２で表わされることを特徴とする請求項８１に記載の前記装置。
【表５２】
2007535236.tif 000113
前記表５２において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項９４】
前記符号化率が３／４である場合、前記第１のパリティ検査行列は、下記表５３で表わされることを特徴とする請求項８１に記載の前記装置。
【表５３】
2007535236.tif 000114
前記表９３において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項９５】
前記符号化率が１／２である場合、前記第１のパリティ検査行列は、下記表５４で表わされることを特徴とする請求項８１に記載の前記装置。
【表５４】
2007535236.tif 000115
前記表５４において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項９６】
前記符号化率が１／２である場合、前記第１のパリティ検査行列は、下記表５５で表わされることを特徴とする請求項８１に記載の前記装置。
【表５５】
2007535236.tif 000116
前記表５５において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項９７】
前記符号化率が２／３である場合、前記第１のパリティ検査行列は、下記表５６で表わされることを特徴とする請求項８１に記載の前記装置。
【表５６】
2007535236.tif 000117
前記表５６において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項９８】
前記符号化率が２／３である場合、前記第１のパリティ検査行列は、下記表５７で表わされることを特徴とする請求項８１に記載の前記装置。
【表５７】
2007535236.tif 000118
前記表５７において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項９９】
前記符号化率が１／２である場合、前記第１のパリティ検査行列は、下記表５８で表わされることを特徴とする請求項８１に記載の前記装置。
【表５８】
2007535236.tif 000119
前記表５８において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項１００】
前記符号化率が１／２である場合、前記第１のパリティ検査行列は、下記表５９で表わされることを特徴とする請求項８１に記載の前記装置。
【表５９】
2007535236.tif 000120
前記表５９において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【請求項１０１】
前記符号化率が２／３である場合、前記第１のパリティ検査行列は、下記表６０で表わされることを特徴とする請求項８１に記載の前記装置。
【表６０】
2007535236.tif 000121
前記表６０において、各ブロックは前記部分ブロックを示し、数字は当該順列行列の指数を示し、数字が存在しないブロックは０行列に対応する部分ブロックを示す。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は移動通信システムに係り、さらに詳しくは、可変ブロック長を有するブロック低密度パリティ検査符号を符号化／復号化する装置及び方法に関する。
【背景技術】
【０００２】
移動通信システムが急速に発展していくに伴い、無線ネットワークにおいて、有線ネットワークの容量に近い大容量データを伝送可能な技術の開発が望まれている。このように、音声中心のサービスを越えて、映像、無線データなどの様々な情報を処理して伝送可能な高速で且つ大容量の通信システムが求められるに伴い、適正なチャンネル符号化方式を用いてシステム伝送効率を高めることがシステム性能の向上の上で必ず必要となる。しかしながら、移動通信システムは、移動通信システムの特性から、データを伝送するときに、チャンネルの状況によってノイズと、干渉及びフェージングなどにより不可避にエラーが発生し、このため、上記エラーの発生による情報データの損失が起こる。
【０００３】
このようなエラーの発生による情報データの損失を減らすために、チャンネルの特性によって様々なエラー制御方式を用いることにより、上記移動通信システムの信頼度を高めることができる。上記エラー制御方式のうちの最も普遍的に用いられているエラー制御方式は、エラー訂正符号を用いる方式である。
【０００４】
以下、図１を参照し、通常の移動通信システムの送受信機の構造について説明する。
【０００５】
図１は、通常の通信システムの送受信機の構造を概略的に示す図である。
【０００６】
図１を参照すると、送信機１００は、符号化器１１１と、変調器１１３と、無線周波数（ＲＦ：Radio Frequency、以下、「ＲＦ」と称する。）処理器１１５と、を備え、受信機１５０は、ＲＦ処理器１５１と、復調器１５３と、復号化器１５５と、を備える。
【０００７】
先ず、上記送信機１００に送信したい情報データｕが発生すると、上記情報データｕは、上記符号化器１１１に送られる。上記符号化器１１１は、上記情報データｕを予め設定されている符号化方式により符号化して符号化シンボルｃとして生成した後、上記変調器１１３に出力する。上記変調器１１３は、上記符号化シンボルｃを予め設定されている変調方式により変調して変調シンボルｓとして生成し、上記ＲＦ処理器１１５に出力する。上記ＲＦ処理器１１５は、上記変調器１１３から出力された信号を入力してＲＦ処理した後、アンテナを介してエアー上で送信する。
【０００８】
このように、上記送信機１００からエアー上で送信された信号は、上記受信機１５０のアンテナを介して受信され、上記アンテナを介して受信された信号は、上記ＲＦ処理器１５１に送られる。上記ＲＦ処理器１５１は、上記受信信号をＲＦ処理した後、そのＲＦ処理された信号ｓを上記復調器１５３に出力する。上記復調器１５３は、上記ＲＦ処理器１５１から出力された信号ｓを入力し、上記送信機１００の変調器１１３における変調方式に見合う復調方式により復調した後、その復調した信号ｘを上記復号化器１５５に出力する。上記復号化器１５５は、上記復調器１５３から出力された信号ｘを入力し、上記送信機１００の符号化器１１１における符号化方式に見合う復号化方式により復号化した後、その復号化した信号を最終的に復元された情報データとして出力する。
【０００９】
上記送信機１００から送信された情報データｕを上記受信機１５０においてエラー無しに復元するために、高性能の符号化器及び復号化器が必要となってきている。特に、移動通信システムの特性から、無線チャンネル環境を考慮しなければならないため、無線チャンネル環境により生じうるエラーは一層深刻なものと捉える必要がある。
【００１０】
一方、上記エラー訂正符号の代表的な符号としては、ターボ符号と、低密度パリティ検査（ＬＤＰＣ：Low Density Parity Check、以下、「ＬＤＰＣ」と称する。）符号などがある。
【００１１】
上記ターボ符号は、従来、エラー訂正のために汎用されていた畳み込み符号に比べて、高速データの伝送時における性能ゲインに優れたものであることが知られており、伝送チャンネルにおける雑音によるエラーを効果的に訂正してデータ伝送の信頼度を高めることができるというメリットを有する。また、上記ＬＤＰＣ符号は、ファクターグラフ上において、和積アルゴリズム（sum-product algorithm）に基づく繰り返し復号化アルゴリズムを用いて復号化することができる。上記ＬＤＰＣ符号の復号化器は、上記和積アルゴリズムに基づく繰り返し復号化アルゴリズムを用いるため、上記ターボ符号の復号化器に比べて低い複雑度を有するだけではなく、並列処理復号化器として実現することが容易である。
【００１２】
一方、Shannonのチャンネル符号化理論によれば、チャンネルの容量を超えないデータレートに限って信頼性のある通信が可能であることを明らかにされている。しかしながら、Shannonのチャンネル符号化理論においては、最大チャンネルの容量限界までのデータレートを支援するチャンネル符号化及び復号化方法についての具体的な提示は全くなかった。通常、ブロックサイズが極めて大きなランダム符号は、Shannonのチャンネル符号化理論のチャンネル容量限界に近い性能を示すが、ＭＡＰ（maximum a posteriori）またはＭＬ（maximum likelihood）復号化方法を用いる場合、その多大な計算の負荷が存在するために、実際に実現することが不可能であった。
【００１３】
上記ターボ符号は、１９９３年にBerrouとGlavieux、Thitimajshimaにより提案されており、Shannonのチャンネル符号化理論のチャンネル容量限界に近い、高性能を有している。上記ターボ符号の提案により、符号の繰り返し復号化とグラフ表現についての研究が活発に行われており、この時点において、Gallagerが１９６２年に既に提案したＬＤＰＣ符号が新たに注目を浴びている。また、上記ターボ符号とＬＤＰＣ符号のファクターグラフ上にはサイクルが存在するが、上記サイクルが存在する上記ＬＤＰＣ符号のファクターグラフ上における繰り返し復号化は、準最適であることが既に知られており、上記ＬＤＰＣ符号は、繰り返し復号化によって高性能を有することも実験的に立証されている。これまで知られている最高の性能を有するＬＤＰＣ符号は、ブロックサイズ１０７を用い、ビットエラーレート（ＢＥＲ：Bit Error Rate）１０−５において、Shannonのチャンネル符号化理論のチャンネル容量限界において単に０．０４［ｄＢ］程度の差分を有する性能を示す。また、ｑ＞２であるガロアフィールド（ＧＦ：Galois Field、以下、「ＧＦ」と称する。）、すなわち、ＧＦ（ｑ）において定義されたＬＤＰＣ符号は、その復号化過程中に複雑度が増加するが、バイナリ符号に比べて遥かに高性能を示す。しかしながら、上記ＧＦ（ｑ）において定義されたＬＤＰＣ符号の繰り返し復号化アルゴリズムの成功的な復号化について、満足のいく理論的な説明は未だなされていないのが現状である。
【００１４】
また、上記ＬＤＰＣ符号はGallagerにより提案された符号であり、ほとんどのエレメントが０の値を有し、上記０の値を有するエレメント以外の極めて小数のエレメントが０ではない値を有する、例えば、１の値を有するパリティ検査行列により定義される。以下、説明の便宜上、上記０ではない値を１であるとして説明する。
【００１５】
例えば、（Ｎ、ｊ、ｋ）ＬＤＰＣ符号は、ブロックの長さがＮである線形ブロック符号であり、各列ごとにｊ個の１の値を有するエレメントと、各行ごとにｋ個の１の値を有するエレメントを有し、上記１の値を有するエレメントを除くエレメントはいずれも０の値を有するエレメントにより構成された疎らな構造のパリティ検査行列により定義される。
【００１６】
上述のように、上記パリティ検査行列内の各列のウェイトはｊと一定であり、上記パリティ検査行列内の各行のウェイトはｋと一定であるＬＤＰＣ符号を均一ＬＤＰＣ符号と称する。ここで、上記ウェイトとは、上記パリティ検査行列を構成するエレメントのうちの０ではない値を有するエレメントの数を示す。これとは異なり、上記パリティ検査行列内の各列のウェイトと各行のウェイトが一定ではないＬＤＰＣ符号を不均一ＬＤＰＣ符号と称する。通常、上記均一ＬＤＰＣ符号の性能に比べて、上記不均一ＬＤＰＣ符号の性能の方が一層優れていることが知られている。しかしながら、上記不均一ＬＤＰＣ符号の場合、パリティ検査行列内の各列のウェイトと各行のウェイトが一定ではないため、すなわち、不均一であるため、パリティ検査行列内の各列のウェイトと各行のウェイトを適切に調節しなければ、高性能を保証することができない。
【００１７】
以下、図２を参照し、（Ｎ、ｊ、ｋ）ＬＤＰＣ符号、例えば、（８、２、４）ＬＤＰＣ符号のパリティ検査行列について説明する。
【００１８】
図２は、通常の（８、２、４）ＬＤＰＣ符号のパリティ検査行列を示す図である。
【００１９】
図２を参照すると、先ず、上記（８、２、４）ＬＤＰＣ符号のパリティ検査行列Ｈは、８個の列と４個の行により構成されており、各列のウェイトは２に固定され、各行のウェイトは４に固定されている。このように、上記パリティ検査行列内の各列のウェイトと各行のウェイトが均一であるため、図１に示されている（８、２、４）ＬＤＰＣ符号は均一ＬＤＰＣ符号となる。
【００２０】
図２においては、通常の（８、２、４）ＬＤＰＣ符号のパリティ検査行列について説明した。次に、図３を参照し、図２を参照して述べた（８、２、４）ＬＤＰＣ符号のファクターグラフについて説明する。
【００２１】
図３は、図２の（８、２、４）ＬＤＰＣ符号のファクターグラフを示す図である。
【００２２】
図３を参照すると、上記（８、２、４）ＬＤＰＣ符号のファクターグラフは、８個の変数ノード、すなわち、ｘ１３００と、ｘ２３０２と、ｘ３３０４と、ｘ４３０６と、ｘ５３０８と、ｘ６３１０と、ｘ７３１２と、ｘ８３１４と、４個の検査ノード３１６、３１８、３２０、３２２と、により構成される。上記（８、２、４）ＬＤＰＣ符号のパリティ検査行列のｉ番目の行とｊ番目の列が交差する個所に１の値を有する、すなわち、０ではない値を有するエレメントが存在する場合、変数ノードｘｉとｊ番目の検査ノードとの間にブランチが生成される。
【００２３】
上述のように、ＬＤＰＣ符号のパリティ検査行列は極めて小さなウェイトを有するため、比較的に長いブロック符号においても繰り返し復号化を通じて復号化が可能であり、ブロック符号のブロック長を増大し続けていくと、ターボ符号のようにShannonのチャンネル容量限界に近い性能を示す。また、MacKayとNealは、流れ伝達方式（flow transfer scheme）を用いるＬＤＰＣ符号の繰り返し復号化過程がターボ符号の繰り返し復号化過程にほとんど近い性能を有することを既に証明している。
【００２４】
一方、高性能のＬＤＰＣ符号を生成するためには、幾つかの条件を満足しなければならないが、上記条件を説明すると、下記の通りである。
【００２５】
（１）ＬＤＰＣ符号のファクターグラフ上のサイクルを考慮しなければならない。
【００２６】
上記サイクルとは、ＬＤＰＣ符号のファクターグラフにおいて、変数ノードと検査ノードとを接続するエッジが構成するループのことであるが、上記サイクルの長さは、上記ループを構成するエッジの数として定義される。上記サイクルが長いことは、上記ＬＤＰＣ符号のファクターグラフにおいて、ループを構成する変数ノードと検査ノードとを接続するエッジの数が多いことを示し、これとは逆に、上記サイクルが短いことは、上記ＬＤＰＣ符号のファクターグラフにおいて、ループを構成する変数ノードと検査ノードとを接続するエッジの数が少ないことを示す。
【００２７】
上記ＬＤＰＣ符号のファクターグラフ上のサイクルを長く生成するほど、上記ＬＤＰＣ符号の性能がよくなるが、その理由は、下記の通りである。上記ＬＤＰＣ符号のファクターグラフ上のサイクルを長く生成する場合、上記ＬＤＰＣ符号のファクターグラフ上に短いサイクルがたくさん存在するときに生じるエラーフロアなどの性能劣化が生じないためである。
【００２８】
（２）ＬＤＰＣ符号の効率よい符号化を考慮しなければならない。
【００２９】
上記ＬＤＰＣ符号は、上記ＬＤＰＣ符号の特性から、畳み込み符号やターボ符号に比べて符号化の複雑度が高く、リアルタイムの符号化が困難である。上記ＬＤＰＣ符号の符号化の複雑度を減らすために、繰り返し累積符号（ＲＡ（Repeat Accumulate) code）などが提案されているが、上記繰り返し累積符号もまた、上記ＬＤＰＣ符号の符号化の複雑度を下げることに限界を示している。このため、ＬＤＰＣ符号の効率よい符号化を考慮しなければならない。
【００３０】
（３）ＬＤＰＣ符号のファクターグラフ上の次数分布を考慮しなければならない。
【００３１】
通常、均一ＬＤＰＣ符号よりも不均一ＬＤＰＣ符号の方の性能が優れているが、その理由は、上記不均一ＬＤＰＣ符号のファクターグラフ上の次数が様々であるためである。ここで、上記次数とは、上記ＬＤＰＣ符号のファクターグラフ上において、各ノード、すなわち、変数ノードと検査ノードとに接続されているエッジの数を示す。また、ＬＤＰＣ符号のファクターグラフ上の次数分布とは、特定の次数を有するノードが全体のノード中にどれだけ存在するかを示す。特定の次数分布を有するＬＤＰＣ符号の性能に優れていることは、Richardsonらが既に立証している。
【００３２】
次に、図４を参照し、ブロックＬＤＰＣ符号のパリティ検査行列について説明する。
【００３３】
図４は、通常のブロックＬＤＰＣ符号のパリティ検査行列を概略的に示す図である。
【００３４】
図４を説明するに先立ち、先ず、上記ブロックＬＤＰＣ符号は、効率よい符号化だけではなく、効率よいパリティ検査行列の格納及び性能改善を両方とも考慮した新たなＬＤＰＣ符号であり、上記ブロックＬＤＰＣ符号は、均一ＬＤＰＣ符号の構造を一般化させて拡張した概念のＬＤＰＣ符号である。図４を参照すると、上記ブロックＬＤＰＣ符号のパリティ検査行列は、全体のパリティ検査行列を多数の部分ブロックに分割し、上記部分ブロックのそれぞれに順列行列を対応付ける形を有する。図４に示されているＰは、Ｎｓ×Ｎｓサイズを有する順列行列を示し、上記順列行列Ｐの上付き字ａｐｑは０≦ａｐｑ≦Ｎｓ−１若しくはａｐｑ＝∞を有する。
【００３５】
また、上記ｐは、当該順列行列が上記パリティ検査行列の多数の部分ブロックのうちのｐ番目の行に位置することを示し、ｑは、当該順列行列が上記パリティ検査行列の多数の部分ブロックのうちのｑ番目の列に位置することを示す。すなわち、
【００３６】
【数１】
2007535236.tif 000003
【００３７】
は、上記多数の部分ブロックにより構成されたパリティ検査行列のｐ番目の行とｑ番目の列が交差する個所の部分ブロックに存在する順列行列を示す。すなわち、上記ｐとｑは、上記パリティ検査行列において上記情報パートに相当する部分ブロックの行と列の数を示す。
【００３８】
以下、図５を参照し、上記順列行列について説明する。
【００３９】
図５は、図４の循環行列Ｐを示す図である。
【００４０】
図５に示すように、上記順列行列Ｐは、Ｎｓ×Ｎｓサイズを有する正方形行列であり、上記順列行列Ｐは、上記順列行列Ｐを構成するＮｓ個の列のそれぞれのウェイトが１であり、上記順列行列Ｐを構成するＮｓ個の行のそれぞれのウェイトも１である行列を示す。ここで、留意すべきなのは、上記順列行列ＰのサイズをＮｓ×Ｎｓとしているが、上記順列行列Ｐが正方形行列であるため、そのサイズを、説明の便宜上、Ｎｓとするということである。
【００４１】
一方、図４中、上記順列行列Ｐの上付き字ａｐｑが０であるとき、すなわち、順列行列Ｐ０は恒等行列を示し、上記順列行列Ｐの上付き字ａｐｑが∞であるとき、すなわち、順列行列Ｐ∞は０行列を示す。ここで、
【００４２】
【数２】
2007535236.tif 000004
【００４３】
は、サイズがＮｓ×Ｎｓである恒等行列を示す。
【００４４】
図４中、上記ブロックＬＤＰＣ符号の全体のパリティ検査行列は、全体の行の数がＮｓ×ｐであり、全体の列の数がＮｓ×ｑ（但し、ｐ≦ｑ）であるため、上記ブロックＬＤＰＣ符号の全体のパリティ検査行列が最大なリンクを有する場合、上記部分ブロックのサイズとは無関係に、符号化率は下記式１のように表わすことができる。
【００４５】
【数３】
2007535236.tif 000005
【００４６】
一方、全てのｐ、ｑについてａｐｑ≠∞である場合、上記部分ブロックのそれぞれに対応する順列行列のそれぞれは０行列ではないことを示し、部分ブロックのそれぞれに対応する順列行列のそれぞれの各列のウェイトがｐであり、各行のウェイトがｑである均一ＬＤＰＣ符号となる。ここで、上記部分ブロックに対応する順列行列を「部分行列」と称する。
【００４７】
また、上記全体のパリティ検査行列にはｐ−１個の従属的な行が存在するため、符号化率は前記式１において計算した符号化率よりも大きな値を有する。上記ブロックＬＤＰＣ符号は、全体のパリティ検査行列を構成する部分行列のそれぞれの最初の行のウェイト位置が決められると、残りのＮｓ−１個の行のウェイト位置が決められるため、上記全体のパリティ検査行列の情報を格納するために不規則的にウェイトを選択する場合に比べて、必要となるメモリーのサイズが１／Ｎｓに減る。
【００４８】
一方、上述のように、ＬＤＰＣ符号のファクターグラフ上のサイクルとは、パリティ検査行列のＬＤＰＣ符号のファクターグラフにおいて変数ノードと検査ノードとを接続するエッジが構成するループのことであるが、上記サイクルの長さは、上記ループを構成するエッジの数として定義される。上記サイクルが長いことは、上記ＬＤＰＣ符号のファクターグラフにおいて、ループを構成する変数ノードと検査ノードとを接続するエッジの数が多いことを示す。上記ＬＤＰＣ符号のファクターグラフ上のサイクルを長く生成するほど、上記ＬＤＰＣ符号の性能がよくなる。
【００４９】
これとは逆に、上記ＬＤＰＣ符号のファクターグラフ上に短いサイクルがたくさん存在するほど、上記ＬＤＰＣ符号はエラーフロアなどの性能の劣化が現れるため、エラー訂正能力が低下する。すなわち、上記ＬＤＰＣ符号のファクターグラフ上に短いサイクルがたくさん存在する場合、上記短いサイクルに属している任意の１ノードから出発した自分の情報が、いくつかの繰り返し回数後に再び自分に戻り、上記繰り返し回数が増えるに伴い、その情報が継続して自分に戻るため、情報更新がうまく行われず、結局、エラー訂正能力が低下する。
【００５０】
以下、図６を参照し、ブロックＬＤＰＣ符号のサイクル構造の特性について説明する。
【００５１】
図６は、パリティ検査行列が４個の部分行列により構成されたブロックＬＤＰＣ符号のサイクル構造を概略的に示す図である。
【００５２】
図６を説明するに先立ち、上記ブロックＬＤＰＣ符号は、効率よい符号化だけではなく、効率よいパリティ検査行列の格納及び性能改善を考慮したＬＤＰＣ符号であって、均一ＬＤＰＣ符号の構造を一般化させて拡張した概念のＬＤＰＣ符号である。図６に示すブロックＬＤＰＣ符号のパリティ検査行列は、４個のブロックにより構成され、斜線は、１の値を有するエレメントが存在する位置を示し、上記斜線部分を除く部分は、いずれも０の値を有するエレメントが存在する位置を示す。また、Ｐは、図５を参照して述べたように、順列行列と同じ順列行列を示す。
【００５３】
図６に示すブロックＬＤＰＣ符号のサイクル構造を分析するために、部分行列Ｐａのｉ番目の行に位置する１の値を有するエレメントを基準として定め、上記ｉ番目の行に位置する１の値を有するエレメントを「０−点」と称する。ここで、上記部分行列は、上記部分ブロックに対応する行列を示す。すると、上記０−点は、上記部分行列Ｐａのｉ＋ａ番目の列に位置する。
【００５４】
上記０−点と同じ行に位置している部分行列Ｐｂにおける１の値を有するエレメントを「１−点」と称する。上記０−点と同様に、上記１−点は、部分行列Ｐｂのｉ＋ｂ番目の列に位置する。
【００５５】
次に、上記１−点と同じ列に位置している部分行列Ｐｃにおける１の値を有するエレメントを「２−点」と称する。上記部分行列Ｐｃが恒等行列Ｉの列のそれぞれを右側にモジューロＮｓに対してｃだけ移動して得た行列であるため、２−点は上記部分行列Ｐｃのｉ＋ｂ−ｃ番目の行に位置する。
【００５６】
また、上記２−点と同じ行に位置している部分行列Ｐｄにおける１の値を有するエレメントを「３−点」と称する。上記３−点は、上記部分行列Ｐｄにおけるｉ＋ｂ−ｃ＋ｄ番目の列に位置する。
【００５７】
最後に、上記３−点と同じ列に位置している部分行列Ｐａにおける１の値を有するエレメントを「４−点」と称する。上記４−点は、上記部分行列Ｐａにおけるｉ＋ｂ−ｃ＋ｄ−ａ番目の行に位置する。
【００５８】
図６に示すＬＤＰＣ符号のサイクル構造において、長さが４のサイクルが存在するならば、上記０−点と４−点は互いに同じ位置となる。すなわち、上記０−点と４−点との間には、下記式２のような関係が成り立つ。
【００５９】
【数４】
2007535236.tif 000006
【００６０】
そして、前記式２を再びまとめると、下記式３のように表わすことができる。
【００６１】
【数５】
2007535236.tif 000007
【００６２】
結果的に、前記式３のような関係が成り立つとき、長さが４のサイクルが生成される。一般に、０−点と４ｐ−点が最初に同じになる場合には、
【００６３】
【数６】
2007535236.tif 000008
【００６４】
の関係が成り立ち、下記式４のような関係が成り立つ。
【００６５】
【数７】
2007535236.tif 000009
【００６６】
換言すると、与えられたａ、ｂ、ｃ、ｄに対して前記式４を満足する正の整数のうちの最小値を有する正の整数をｐとすれば、図６に示すようなブロックＬＤＰＣ符号のサイクル構造においては、長さが４ｐのサイクルが最小長を有するサイクルとなる。
【００６７】
結果的に、上述のように、（ａ−ｂ＋ｃ−ｄ）≠０の場合に、ｇｃｄ（Ｎｓ、ａ−ｂ＋ｃ−ｄ）＝１が成り立つと、ｐ＝Ｎｓとなり、このため、長さが４Ｎｓであるサイクルが最小長を有するサイクルとなる。
【００６８】
一方、上記ブロックＬＤＰＣ符号の符号化方式として、Richardson-Urbanke方式を用いる。上記Richardson-Urbanke方式を符号化方式として用いるため、パリティ検査行列の形態は、完全下三角行列（full lower triangular matrix）の形状に類似した形状を有するほど、符号化の複雑度を最小化させることができる。
【００６９】
以下、図７を参照し、完全下三角行列の形状と類似した形状を有するパリティ検査行列について説明する。
【００７０】
図７は、完全下三角行列の形状と類似した形状を有するパリティ検査行列を示す図である。
【００７１】
図７に示すパリティ検査行列は、完全下三角行列の形状と類似した形状を有する完全下三角行列の形状のパリティ検査行列に比べて、パリティパートの形状が完全下三角行列の形状から外れる。図７中、情報パートの順列行列Ｐの上付き字apqは、上述のように、０≦ａｐｑ≦Ｎｓ−１若しくはａｐｑ＝∞を有し、上記情報パートの順列行列Ｐの上付き字ａｐｑが０である場合、すなわち、Ｐ０は恒等行列を示し、上記順列行列Ｐの上付き字ａｐｑが∞であるとき、すなわち、順列行列Ｐ∞は０行列を示す。また、ｐとｑは上記パリティ検査行列において、上記情報パートに相当する部分ブロックの行と列の数を示す。さらに、上記パリティパートの順列行列Ｐの上付き字ａｐ、ｘ、ｙも順列行列Ｐの指数を示し、但し、説明の便宜上、情報パートとの区分のために異なるように設定しているだけである。すなわち、図７において、
【００７２】
【数８】
2007535236.tif 000010
【００７３】
も順列行列であり、上記パリティパートの対角部分に位置する部分行列に順次にインデックスを与えたものである。さらに、図７において、ＰｘとＰｙも順列行列であり、説明の便宜上、任意のインデックスを与えたものである。図７に示すように、パリティ検査行列を有するブロックＬＤＰＣ符号のブロックサイズをＮとしたとき、上記ブロックＬＤＰＣ符号の符号化の複雑度は、上記ブロックサイズＮに対して線形的に増加する（０（Ｎ））。
【００７４】
一方、図７に示すパリティ検査行列を有するＬＤＰＣ符号の最大の問題点は、部分ブロックのサイズをＮｓとしたとき、上記ブロックＬＤＰＣ符号のファクターグラフ上において常に次数が１であるＮｓ個の検査ノードが生成されるという点である。ここで、上記次数が１である検査ノードは、繰り返し復号化による性能の改善に影響せず、これにより、Richardson-Urbanke方式のような標準不均一ＬＤＰＣ符号は、次数が１の検査ノードを含んでいない。このため、次数が１の検査ノードを含んでいないながらも、効率よい符号化が可能になるように、パリティ検査行列を設計するために、図７のようなパリティ検査行列を基本的なパリティ検査行列であるとする。図７のように、部分行列により構成されたパリティ検査行列において、部分行列の選択は、上記ブロックＬＤＰＣ符号の性能の改善に極めて重要な要素であり、このため、上記部分行列の適切な選択の基準を見出すことも極めて重要な要素となる。
【００７５】
以下、上述のブロックＬＤＰＣ符号の構成を元に、上記ブロックＬＤＰＣ符号のパリティ検査行列の設計方法について説明する。
【００７６】
ここで、上記ブロックＬＤＰＣ符号のパリティ検査行列の設計方法と上記ブロックＬＤＰＣ符号の符号化方法に関する説明を容易にするために、図７に示されるパリティ検査行列は、図８に示すような６個の部分行列により構成された形態であるとする。
【００７７】
図８は、図７のパリティ検査行列を６個の部分ブロックに分割した図である。
【００７８】
図８を参照すると、図７に示すブロックＬＤＰＣ符号のパリティ検査行列を、情報パートｓと、第１のパリティパートｐ１と、第２のパリティパートｐ２の部分ブロックに分割する。ここで、上記情報パートｓは、図７を参照して述べた情報パートのように、ブロックＬＤＰＣ符号を符号化する過程において、実際の情報語にマッピングされる上記パリティ検査行列のパートを示し、但し、説明の便宜上、表記を異にしている。また、上記第１のパリティパートｐ１と第２のパリティパートｐ２は、図７を参照して述べたパリティパートのように、上記ブロックＬＤＰＣ符号を符号化する過程において、実際のパリティにマッピングされる上記パリティ検査行列のパートを示し、上記パリティパートを２個のパートに分割したものである。
【００７９】
上記情報パートｓの部分ブロック、すなわち、部分ブロックＡ８０２と部分ブロックＣ８０４に対応する部分行列がＡとＣであり、上記第１のパリティパートｐ１の部分ブロック、すなわち、部分ブロックＢ８０６と部分ブロックＤ８０８に対応する部分行列がＢとＤであり、第２のパリティパートｐ２の部分ブロック、すなわち、部分ブロックＴ８１０と部分ブロックＥ８１２に対応する部分行列がＴ及びＥである。ここで、図８には、上記パリティ検査行列が７個の部分ブロックに分割されていることを示しているが、‘０’は別途の部分ブロックではなく、部分ブロックＴ８１０に対応する部分行列Ｔが完全下三角の形状を有するため、対角線を中心に０行列が配置された領域を‘０’と表記しているだけであることに留意すべきである。上記情報パートｓと、第１のパリティパートｐ１と、第２のパリティパートｐ２の部分行列を用いて符号化方法を簡略にする過程は、下記図１０を参照して後述するため、ここではその詳細な説明を省く。
【００８０】
以下、図８の部分行列を図９を参照して説明する。
【００８１】
図９は、図７のパリティ検査行列の部分行列を、図８の部分行列Ｂの転置行列と、部分行列Ｅと、部分行列Ｔと、部分行列Ｔの逆行列として示す図である。
【００８２】
図９を参照すると、部分行列ＢＴは、上記部分行列Ｂの転置行列を示し、部分行列Ｔ−１は、上記部分行列Ｔの逆行列を示す。また、図９において、
【００８３】
【数９】
2007535236.tif 000011
【００８４】
を示す。さらに、図９において、上記
【００８５】
【数１０】
2007535236.tif 000012
【００８６】
は、恒等行列になりうることはもちろんである。これは、上述のように、上記順列行列の指数、すなわち、ａ１が０になる場合には、上記
【００８７】
【数１１】
2007535236.tif 000013
【００８８】
が恒等行列になるためであり、また、上記順列行列の指数、すなわち、ａ１がこの予め設定された値だけ増える場合には、上記順列行列が上記増加した設定値に見合う分だけさらに循環シフトされて、結果的に、上記
【００８９】
【数１２】
2007535236.tif 000014
【００９０】
が恒等行列となるためである。
【００９１】
以下、図１０を参照して、上記ブロックＬＤＰＣ符号のパリティ検査行列の設計過程について説明する。
【００９２】
図１０は、通常のブロックＬＤＰＣ符号のパリティ検査行列の生成過程を示す手順図である。
【００９３】
図１０を説明するに先立ち、ブロックＬＤＰＣ符号を生成するためには、生成しようとするブロックＬＤＰＣ符号の符号語サイズと符号化率を決め、上記決められた符号語サイズと符号化率に応じて、パリティ検査行列のサイズを決めなければならない。上記ブロックＬＤＰＣ符号の符号語サイズがＮであり、符号化率がＲであるとしたとき、パリティ検査行列のサイズは、Ｎ（１−Ｒ）×Ｎとなる。また、図１０に示すブロックＬＤＰＣ符号のパリティ検査行列の生成過程は、はじめに通信システムのシステムの状況に見合うように生成され、それ以降では、上記生成されているパリティ検査行列を用いるものであるため、実質的に、図１０のパリティ検査行列の生成過程は、１回だけ行われればよい。
【００９４】
図１０を参照すると、先ず、制御器は、ステップＳ１０１１において、上記サイズのパリティ検査行列を、横軸方向にｐ個のブロックに分割し、縦軸方向にｑ個のブロックに分割して、合計でｐ×ｑ個のブロックに分割した後、ステップＳ１０１３へ進む。ここで、上記ブロックのそれぞれのサイズはＮｓ×Ｎｓであるため、上記パリティ検査行列は、Ｎｓ×ｐ個の行とＮｓ×ｑ個の列により構成される。上記ステップＳ１０１３において、上記制御器は、上記ｐ×ｑ個のブロックに分割したパリティ検査行列を情報パートｓとパリティパート、すなわち、第１のパリティパートｐ１と第２のパリティパートｐ２に分類し、ステップＳ１０１５及びステップＳ１０２１へ進む。
【００９５】
上記ステップＳ１０１５において、上記制御器は、上記情報パートｓを、上記ブロックＬＤＰＣ符号の高性能を保証する次数分布に見合うように、０ではないブロック、すなわち、０行列ではないブロックと０であるブロック、すなわち、０行列であるブロックを決め、ステップＳ１０１７へ進む。ここで、上記ブロックＬＤＰＣ符号の高性能を保証する次数分布は、上述の通りであるため、ここではその詳細な説明を省く。上記ステップＳ１０１７において、上記制御器は、上記ブロックＬＤＰＣ符号の高性能を保証する次数分布に見合うように決めたブロックのうち、低い次数を有するブロック中の０行列ではない部分に、上述のように、ブロックサイクルの最小サイクルの長さが最大になるように
【００９６】
【数１３】
2007535236.tif 000015
【００９７】
を決め、ステップＳ１０１９へ進む。ここで、上記
【００９８】
【数１４】
2007535236.tif 000016
【００９９】
を決めるときには、上記情報パートｓだけではなく、上記第１のパリティパートｐ１と第２のパリティパートｐ２のブロックサイクルも考慮して決めなければならない。
【０１００】
上記ステップＳ１０１９において、上記制御器は、上記ブロックＬＤＰＣ符号の高性能を保証する次数分布に見合うように決めたブロックのうち、高次数を有するブロック中の０行列ではない部分に、ランダムに
【０１０１】
【数１５】
2007535236.tif 000017
【０１０２】
を決めて終了する。ここで、上記高次数を有するブロックのうち、０行列ではない部分に適用すべき
【０１０３】
【数１６】
2007535236.tif 000018
【０１０４】
を決めるときにも、同様に、ブロックサイクルの最小サイクルのサイズが最大になるように
【０１０５】
【数１７】
2007535236.tif 000019
【０１０６】
を決めなければならず、また、上記情報パートｓだけではなく、上記第１のパリティパートｐ１と第２のパリティパートｐ２のブロックサイクルも考慮して決めなければならない。上記のように、パリティ検査行列の情報パートｓに
【０１０７】
【数１８】
2007535236.tif 000020
【０１０８】
を配列した形が図７に示してある。
【０１０９】
一方、上記ステップＳ１０２１において、上記制御器は、上記パリティパート、すなわち、第１のパリティパートｐ１と第２のパリティパートｐ２を４個の部分行列、すなわち、部分行列Ｂと、部分行列Ｔと、部分行列Ｄ及び部分行列Ｅに分割した後、ステップＳ１０２３へ進む。上記ステップＳ１０２３において、上記制御器は、上記部分行列Ｂを構成する部分ブロックのうち、２個の部分ブロックに、０ではない
【０１１０】
【数１９】
2007535236.tif 000021
【０１１１】
を入力し、ステップＳ１０２５へ進む。ここで、上記部分行列Ｂを構成する部分ブロックのうち、２個の部分ブロックに、０ではない
【０１１２】
【数２０】
2007535236.tif 000022
【０１１３】
を入力する構造は、既に図９を参照して述べている。
【０１１４】
上記ステップＳ１０２５において、上記制御器は、上記部分行列Ｔの対角部分ブロックには恒等行列Ｉを入力し、上記部分行列Ｔの対角成分下の（ｉ、ｉ＋１）番目の部分ブロックには
【０１１５】
【数２１】
2007535236.tif 000023
【０１１６】
を入力し、ステップＳ１０２７へ進む。ここで、上記部分行列Ｔの対角部分ブロックには恒等行列Ｉを入力し、上記部分行列Ｔの対角成分下の（ｉ、ｉ＋１）番目の部分ブロックには
【０１１７】
【数２２】
2007535236.tif 000024
【０１１８】
を入力する構造は、既に図９を参照して述べている。
【０１１９】
上記ステップＳ１０２７において、上記制御器は、上記部分行列Ｄに順列行列Ｐｘを入力し、ステップＳ１０２９へ進む。上記ステップＳ１０２９において、上記制御器は、上記部分行列Ｅにおける最後の部分ブロックにのみ
【０１２０】
【数２３】
2007535236.tif 000025
【０１２１】
を入力して終了する。ここで、上記部分行列Ｅを構成する部分ブロックのうち、最後の部分ブロックに
【０１２２】
【数２４】
2007535236.tif 000026
【０１２３】
を入力する構造は、既に図９を参照して述べている。
【０１２４】
上述のように、ＬＤＰＣ符号は、ターボ符号と一緒に、高速なデータの伝送時に性能ゲインに優れていることが知られており、伝送チャンネルにおいて生じる雑音によるエラーを効果的に訂正して、データ伝送の信頼度を高めることができるというメリットを有する。しかしながら、上記ＬＤＰＣ符号は、符号化率の面から欠点を有する。すなわち、上記ＬＤＰＣ符号は、比較的に高い符号化率を有するため、符号化率の面から自由ではないという短所を有する。現在提案されているＬＤＰＣ符号の場合、ほとんどが１／２の符号化率を有し、一部のみ１／３の符号化率を有する。このように、符号化率の面からの制限は、結果的に、高速の大容量データの伝送に致命的な影響を及ぼす。もちろん、比較的に低い符号化率を実現するために、密度進化などの方式を用いて最適な性能を示す次数分布を求めることはできるが、上記最適な性能を示す次数分布を有するＬＤＰＣ符号を実現することは、ファクターグラフ上のサイクル構造とハードウェアの実現などの種々の制約条件によって困難である。
【発明の開示】
【発明が解決しようとする課題】
【０１２５】
そこで、本発明の目的は、移動通信システムにおいて、可変ブロック長を有するＬＤＰＣ符号を符号化／復号化する装置及び方法を提供するところにある。
【０１２６】
本発明の他の目的は、移動通信システムにおいて、符号化の複雑度が最低化された、可変ブロック長を有するＬＤＰＣ符号を符号化／復号化する装置及び方法を提供するところにある。
【課題を解決するための手段】
【０１２７】
上記の目的を達成するために、本発明の方法は、可変長を有するブロック低密度パリティ検査（ＬＤＰＣ）符号を符号化する方法において、情報語が入力されるステップと、上記情報語をブロックＬＤＰＣ符号として生成するときに適用される長さに応じて第１のパリティ検査行列と第２のパリティ検査行列のうちのどちらか一方のパリティ検査行列を基に符号化を行い、上記ブロックＬＤＰＣ符号として生成するステップと、を含むことを特徴とする。
【０１２８】
上記の目的を達成するために、本発明の他の方法は、可変長を有するブロック低密度パリティ検査（ＬＤＰＣ）符号を復号化する方法において、信号を受信するステップと、復号化するブロックＬＤＰＣ符号の長さに応じて、第１のパリティ検査行列及び第２のパリティ検査行列のうちのどちらを用いるかを決め、上記決められたパリティ検査行列に応じて上記受信信号を復号化して上記ブロックＬＤＰＣ符号として検出するステップと、を含むことを特徴とする。
【０１２９】
上記の目的を達成するために、本発明の装置は、可変長を有するブロック低密度パリティ検査（ＬＤＰＣ）符号を符号化する装置において、情報語をブロックＬＤＰＣ符号として生成するときに適用される長さに応じて、第１のパリティ検査行列と第２のパリティ検査行列のうちのどちらか一方のパリティ検査行列を基に符号化を行い、上記符号語を上記ブロックＬＤＰＣ符号として生成する符号化器と、上記ブロックＬＤＰＣ符号を予め設定されている変調方式により変調して変調シンボルとして生成する変調器と、上記変調シンボルを送信する送信機と、を備えることを特徴とする。
【０１３０】
上記の目的を達成するために、本発明の他の装置は、可変長を有するブロック低密度パリティ検査（ＬＤＰＣ）符号を復号化する装置において、信号を受信する受信機と、復号化するブロックＬＤＰＣ符号の長さに応じて、第１のパリティ検査行列及び第２のパリティ検査行列のうちのどちらを用いるかを決め、上記決められたパリティ検査行列に応じて上記受信信号を復号化して上記ブロックＬＤＰＣ符号として検出する復号化器と、を備えることを特徴とする。
【発明の効果】
【０１３１】
本発明は、移動通信システムにおいて、最小サイクル長が最大となる可変長ブロックＬＤＰＣ符号を提案することにより、エラー訂正能力を最大化させて、システムの性能を高めるという利点を有する。また、本発明は、効率よいパリティ検査行列を生成することにより、可変長ブロックＬＤＰＣ符号の符号化の複雑度を最小化させるという利点を有する。さらに、可変長ブロックＬＤＰＣ符号の符号化の複雑度をブロック長に比例させて、効率よい符号化を可能にするという利点を有する。特に、本発明は、種々の符号化率に適用可能であり、且つ、様々なブロック長を有するブロックＬＤＰＣ符号を生成可能にすることにより、ハードウェアの複雑度を最小化させるという利点を有する。
【発明を実施するための最良の形態】
【０１３２】
以下、添付した図面に基づき、本発明に係る好適な実施の形態を詳細に説明する。本発明を説明するに当たって、関連する公知の機能あるいは構成についての詳細な説明が本発明の要旨を余計に曖昧にすると認められる場合、その詳細な説明を省く。
【０１３３】
本発明は、可変ブロック長を有するブロック低密度パリティ検査（ＬＤＰＣ：Low Density Parity Check、以下、「ＬＤＰＣ」と称する。）符号（以下、「可変長ブロックＬＤＰＣ符号」と称する。）を符号化及び復号化する装置及び方法を提案する。すなわち、本発明は、ブロックＬＤＰＣ符号のファクターグラフ上の最小サイクルの長さが最大となり、上記ブロックＬＤＰＣ符号の符号化のための複雑度が最小となり、上記ブロックＬＤＰＣ符号のファクターグラフ上の次数分布が最適値の１の分布を有しながらも、様々なブロック長を支援する可変長ブロックＬＤＰＣ符号の符号化及び復号化装置及び方法を提案する。さらに、本発明において、別途に図示及び説明してはいないが、従来の技術の部分の図１における送受信機の構成に、本発明の可変長ブロックＬＤＰＣ符号の符号化及び復号化装置を適用できることはもちろんである。
【０１３４】
特に、次世代の移動通信システムは、パケットサービス通信システムの形で発展してきており、パケットサービス通信システムは、バースト状のパケットデータを多数の移動局に伝送するシステムであって、大容量データの伝送に適するように設計されてきている。特に、上記データの伝送量を増やすために、複合再伝送（ＨＡＲＱ：Hybrid Automatic Retransmission Request、以下、「ＨＡＲＱ」と称する。）方式と適応的な変調及び符号化（ＡＭＣ：Adaptive Modulation and Coding、以下、「ＡＭＣ」と称する。）方式などの様々な方式が提案されており、上記ＨＡＲＱ方式及びＡＭＣ方式などにおいては、可変符号化率を支援するため、様々なブロック長を有するブロックＬＤＰＣ符号が望まれている。
【０１３５】
上記可変長ブロックＬＤＰＣ符号の設計は、通常のＬＤＰＣ符号を設計する場合と同様に、パリティ検査行列の設計により実現される。ところが、移動通信システムにおいて、１個のコーデック（ＣＯＤＥＣ）により可変長ブロックＬＤＰＣ符号を提供するためには、すなわち、様々なブロック長を有するブロックＬＤＰＣ符号を提供するためには、上記パリティ検査行列内に異なるブロック長のブロックＬＤＰＣ符号を示しうるパリティ検査行列が含まれる形である必要がある。以下、可変ブロック長を提供するブロックＬＤＰＣ符号のパリティ検査行列について説明する。
【０１３６】
先ず、設計しようとする設定符号化率について、システムに求められる最小長のブロックＬＤＰＣ符号を設計する。上記パリティ検査行列において部分行列のサイズであるＮｓを増大させ、長いブロックのブロックＬＤＰＣ符号を生成する。ここで、上記部分行列とは、上記従来の技術の欄において述べたように、上記パリティ検査行列を多数の部分ブロックに分割した場合、上記部分ブロックのそれぞれに対応する順列行列を示す。一方、上記部分行列のサイズであるＮｓを増大させると、サイクルの構造が変更されるため、先ず、短いブロックＬＤＰＣ符号を設計し、その次に長いブロックＬＤＰＣ符号を設計する形で拡張する場合を想定して、上記パリティ検査行列の順列行列の指数をサイクルが最大になるように選択する。ここで、上記部分行列のサイズがＮｓであることは、上記部分行列がＮｓ×Ｎｓサイズを有する正方形の行列であることを示し、説明の便宜上、上記部分行列のサイズをＮｓと表わしていることに留意すべきである。
【０１３７】
例えば、基本ブロックＬＤＰＣ符号の部分ブロックサイズＮｓ＝２である場合、上記基本ブロックＬＤＰＣ符号を２倍の長さのＮｓ＝４であるブロックＬＤＰＣ符号に拡張したいとき、順列行列の指数が０である部分行列はＮｓ＝２からＮｓ＝４へと増大すると、０または２の値を選択することができる。ここでは、上記２個の値のうちの上記サイクルを最大化できる値を選択しなければならない。これと同様に、Ｎｓ＝２のブロックＬＤＰＣ符号において、指数が１である部分行列は、Ｎｓ＝２からＮｓ＝４へと増大すると、１または３の値を選択することができる。
【０１３８】
上述のように、基本ブロックＬＤＰＣ符号を用いてＮｓ値を増大させていきながら、ブロックＬＤＰＣ符号を設計すると、それぞれのブロック長別に最大の性能を有するブロックＬＤＰＣ符号を設計することができる。また、上記様々な長さのブロックＬＤＰＣ符号のうちの任意の１個のブロックＬＤＰＣ符号を、基本ブロックＬＤＰＣ符号として定義することができるので、メモリーの効率性の面からも、メリットがある。以下、上記可変長ブロックＬＤＰＣ符号のパリティ検査行列を生成する方法について説明する。本発明においては、上記可変長ブロックＬＤＰＣ符号のパリティ検査行列を、符号化率に応じて４種類に提案しているが、本発明において想定する符号化率は、１／２、２／３、３／４、５／６である。
【０１３９】
一方、上記符号化率は、１／２、２／３、３／４、５／６による可変長ブロックＬＤＰＣ符号のパリティ検査行列について説明する前に、図１５を参照して、本発明において設計したパリティ検査行列を用いて可変長ブロックＬＤＰＣ符号を符号化する過程を説明する。
【０１４０】
図１５は、本発明の第１の実施の形態ないし第１５の実施の形態による可変長ブロックＬＤＰＣ符号の符号化過程を示す手順図である。
【０１４１】
図１５を説明するに先立ち、上記可変長ブロックＬＤＰＣ符号のパリティ検査行列は、上記従来の技術の欄の図８を参照して説明したように、６個の部分行列により構成されているとする。図１５を参照すると、先ず、制御器（図示せず）は、ステップＳ１５１１において、上記可変長ブロックＬＤＰＣ符号に符号化するための
【０１４２】
【数２５】
2007535236.tif 000027
【０１４３】
が入力され、ステップＳ１５１３及びステップＳ１５１５へ進む。ここで、上記ブロックＬＤＰＣ符号に符号化するために入力された
【０１４４】
【数２６】
2007535236.tif 000028
【０１４５】
の長さは、ｋであるとする。上記ステップＳ１５１３において、上記制御器は、上記入力された
【０１４６】
【数２７】
2007535236.tif 000029
【０１４７】
、ステップＳ１５１７へ進む。ここで、上記部分行列Ａに存在する１の値を有するエレメントの数は、０の値を有するエレメントの数に比べて極めて少数であるため、上記
【０１４８】
【数２８】
2007535236.tif 000030
【０１４９】
とパリティ検査行列の部分行列Ａの行列乗算は、比較的に小さい回数の和積演算だけでも可能になる。また、上記部分行列Ａにおいて１の値を有するエレメントの位置は、０ではないブロックの位置と、そのブロックの順列行列の指数乗算により示すことができるので、任意のパリティ検査行列に比べて極めて簡単な演算だけでも行列乗算を行うことができる。また、上記ステップＳ１５１５において、上記制御器は、
【０１５０】
【数２９】
2007535236.tif 000031
【０１５１】
、ステップＳ１５１９へ進む。
【０１５２】
一方、上記ステップ１５１７において、上記制御器は、上記
【０１５３】
【数３０】
2007535236.tif 000032
【０１５４】
、ステップＳ１５１９へ進む。ここで、上述のように、上記行列ＥＴ−１の１の値を有するエレメントの数は極めて少数であるため、ブロックの順列行列の指数さえ知っていると、上記行列乗算を容易に行うことができる。上記ステップ１５１９において、上記制御器は、
【０１５５】
【数３１】
2007535236.tif 000033
【０１５６】
、ステップＳ１８２１へ進む。ここで、加算演算は排他的加算演算であって、同じビットが加算されるときには０となり、異なるビットが加算されるときには１となる。結局、上記ステップＳ１５１９までの過程は、
【０１５７】
【数３２】
2007535236.tif 000034
【０１５８】
を計算するための過程である。
【０１５９】
上記ステップＳ１５２１において、上記制御器は、
【０１６０】
【数３３】
2007535236.tif 000035
【０１６１】
、ステップＳ１５２３へ進む。ここで、
【０１６２】
【数３４】
2007535236.tif 000036
【０１６３】
、上記パリティ検査行列の部分行列Ｔの逆行列Ｔ−１を行列乗算しなければならない。このため、上記ステップＳ１５２３において、上記制御器は、上記
【０１６４】
【数３５】
2007535236.tif 000037
【０１６５】
を求めるために、上記ステップＳ１５２１において計算した
【０１６６】
【数３６】
2007535236.tif 000038
【０１６７】
、ステップＳ１５２５へ進む。上述したように、符号化したいブロックＬＤＰＣ符号の
【０１６８】
【数３７】
2007535236.tif 000039
【０１６９】
のみを知っていれば、
【０１７０】
【数３８】
2007535236.tif 000040
【０１７１】
を求めることができ、その結果、符号語ベクトルを全て得ることが可能になる。そして、上記制御器は、ステップＳ１５２５において、上記
【０１７２】
【数３９】
2007535236.tif 000041
【０１７３】
として生成された
【０１７４】
【数４０】
2007535236.tif 000042
【０１７５】
を生成して伝送し、終了する。
【０１７６】
次に、図１６に基づき、本発明の第１の実施の形態ないし第１５の実施の形態における機能を行うための可変長ブロックＬＤＰＣ符号の符号化装置の内部構造を説明する。
【０１７７】
図１６は、本発明の実施の形態における機能を行うための可変長ブロックＬＤＰＣ符号の符号化装置の内部構造を示すブロック図である。
【０１７８】
図１６を参照すると、上記可変長ブロックＬＤＰＣ符号の符号化装置は、行列Ａ乗算器１６１１と、行列Ｃ乗算器１６１３と、行列ＥＴ−１乗算器１６１５と、加算器１６１７と、行列Ｂ乗算器１６１９と、加算器１６２１と、行列Ｔ−１乗算器１６２３と、スイッチ１６２５、１６２７、１６２９と、を備える。
【０１７９】
先ず、入力信号、すなわち、可変長ブロックＬＤＰＣ符号に符号化したい長さｋの
【０１８０】
【数４１】
2007535236.tif 000043
【０１８１】
が入力され、上記入力された長さｋの
【０１８２】
【数４２】
2007535236.tif 000044
【０１８３】
は、上記スイッチ１６２５と、行列Ａ乗算器１６１１と、行列Ｃ乗算器１６１３に入力される。上記行列Ａ乗算器１６１１は、上記
【０１８４】
【数４３】
2007535236.tif 000045
【０１８５】
と全体のパリティ検査行列の部分行列Ａを乗算した後、行列ＥＴ−１乗算器１６１５と上記加算器１６２１に出力する。また、上記行列Ｃ乗算器１６１３は、上記
【０１８６】
【数４４】
2007535236.tif 000046
【０１８７】
と全体のパリティ検査行列の部分行列Ｃを乗算した後、上記加算器１６１７に出力する。上記行列ＥＴ−１乗算器１６１５は、上記行列Ａ乗算器１６１１から出力された信号に全体のパリティ検査行列の部分行列ＥＴ−１を乗算した後、上記加算器１６１７に出力する。
【０１８８】
上記加算器１６１７は、上記行列ＥＴ−１乗算器１６１５から出力された信号と上記行列Ｃ乗算器１６１３から出力された信号を入力して加算した後、上記行列Ｂ乗算器１６１９及びスイッチ１６２７に出力する。ここで、上記加算器１６１７は、ビット別に排他的論理和演算を行う。例えば、長さ３のベクトルｘ＝（ｘ１、ｘ２、ｘ３）と長さ３のベクトルｙ＝（ｙ１、ｙ２、ｙ３）が上記加算器１６１７に入力される場合、上記加算器１６１７は、上記長さ３のベクトルｘ＝（ｘ１、ｘ２、ｘ３）と長さ３のベクトルｙ＝（ｙ１、ｙ２、ｙ３）を排他的論理和演算して長さ３の
【０１８９】
【数４５】
2007535236.tif 000047
【０１９０】
を出力する。ここで、上記
【０１９１】
【数４６】
2007535236.tif 000048
【０１９２】
は、同じビットが演算されると０となり、異なるビットが演算されると１となる排他的論理和演算を言う。結局、上記加算器１６１７から出力する信号が
【０１９３】
【数４７】
2007535236.tif 000049
【０１９４】
となる。
【０１９５】
また、上記行列Ｂ乗算器１６１９は、上記加算器１６１７から出力された信号、すなわち、
【０１９６】
【数４８】
2007535236.tif 000050
【０１９７】
を入力して上記全体のパリティ検査行列の部分行列Ｂを乗算した後、上記加算器１６２１に出力する。上記加算器１６２１は、上記行列Ｂ乗算器１６１９から出力された信号と上記行列Ａ乗算器１６１１から出力された信号を加算した後、上記行列Ｔ−１乗算器１６２３に出力する。ここで、上記加算器１６２１は、上記加算器１６１７において述べたように、上記行列Ｂ乗算器１６１９から出力された信号と上記行列Ａ乗算器１６１１から出力された信号を排他的論理和演算した後、上記行列Ｔ−１乗算器１６２３に出力するものである。
【０１９８】
上記行列Ｔ−１乗算器１６２３は、上記加算器１６２１から出力された信号と上記行列Ｔ−１を乗算した後、上記スイッチ１６２９に出力する。ここで、上記行列Ｔ−１乗算器１６２３の出力が、結果的に、
【０１９９】
【数４９】
2007535236.tif 000051
【０２００】
となる。一方、上記スイッチ１６２５、１６２７、１６２９のそれぞれは、自分が伝送する時点においてのみスイッチングオンされて当該信号を伝送するようにする。すなわち、上記
【０２０１】
【数５０】
2007535236.tif 000052
【０２０２】
が伝送される時点においては、上記スイッチ１６２５がスイッチングオンされ、上記
【０２０３】
【数５１】
2007535236.tif 000053
【０２０４】
が伝送される時点においては、上記スイッチ１６２７がスイッチングオンされ、上記
【０２０５】
【数５２】
2007535236.tif 000054
【０２０６】
が伝送される時点においては、上記スイッチ１６２９がスイッチングオンとなる。
【０２０７】
また、図１７を参照して詳述するが、本発明の実施の形態においては、可変長を有するブロックＬＤＰＣ符号を生成することが可能でなければならないため、図１６の可変長ブロックＬＤＰＣ符号の符号化装置に用いられる行列のそれぞれは、上記可変長ブロックＬＤＰＣ符号のパリティ検査行列が変更される都度、それに応じて変更されることはもちろんである。このため、図１６には別に示してはいないが、制御器が、上記可変長ブロックＬＤＰＣ符号のパリティ検査行列が変更されるに伴い、上記可変長ブロックＬＤＰＣ符号の符号化装置に用いられる行列を変更することはもちろんである。
【０２０８】
以上、効率よい符号化を考慮した可変長ブロックＬＤＰＣ符号の生成方法について説明した。上述したように、可変長ブロックＬＤＰＣ符号は、可変長ブロックＬＤＰＣ符号の構造的な特性によって、パリティ検査行列に関する情報を格納するためのメモリー効率に優れているだけではなく、パリティ検査行列から部分行列を適切に選択することにより、効率よい符号化が可能になる。ところが、ブロック単位でパリティ検査行列を生成するに伴い、不規則性は減少し、上記不規則性の減少は、ブロックＬＤＰＣ符号の性能の劣化を引き起こすことがある。すなわち、上述したように、不均一ブロックＬＤＰＣ符号が均一ブロックＬＤＰＣ符号に比べて高性能であるため、ブロックＬＤＰＣ符号を設計するに当たり、全体のパリティ検査行列から部分行列を選択することは極めて重要な要素である。
【０２０９】
以下、図１１を参照し、符号化率が１／２である場合の可変長ブロックＬＤＰＣ符号の具体的な生成方法について説明する。
【０２１０】
図１１は、本発明の第１の実施の形態による可変長ブロックＬＤＰＣ符号のパリティ検査行列を示す図である。
【０２１１】
図１１を説明するに先立ち、上記本発明の第１の実施の形態は、符号化率が１／２である場合の可変長ブロックＬＤＰＣ符号のパリティ検査行列を提案する。図１１を参照すると、先ず、上記部分行列のサイズであるＮｓ値を４、８、１２、１６、２０、２４、２８、３２、３６、４０とした場合、図１１に示すように、パリティ検査行列を用いて長さ９６、１９２、２８８、３８４、４８０、５７６、６７２、７６８、８６４、９６０であるブロックＬＤＰＣ符号を生成することができる。図１１に示すブロック、すなわち、部分行列のそれぞれに表記されている値は、順列行列の指数値を示す。ここで、上記可変長ブロックＬＤＰＣ符号のパリティ検査行列は、多数の部分ブロックにより構成され、上記部分ブロックのそれぞれに対応する部分行列が上記順列行列となる。例えば、上記可変長ブロックＬＤＰＣ符号のパリティ検査行列がｐ×ｑ個の部分ブロックにより構成される場合、すなわち、上記可変長ブロックＬＤＰＣ符号のパリティ検査行列の部分ブロックの行の数がｐであり、上記可変長ブロックＬＤＰＣ符号のパリティ検査行列の部分ブロックの列の数がｑである場合、上記可変長ブロックＬＤＰＣ符号のパリティ検査行列を構成する順列行列は、
【０２１２】
【数５３】
2007535236.tif 000055
【０２１３】
のように表わすことができ、順列行列Ｐの上付き字ａｐｑは０≦ａｐｑ≦Ｎｓ−１若しくはａｐｑ＝∞を有する。すなわち、上記
【０２１４】
【数５４】
2007535236.tif 000056
【０２１５】
は、上記多数の部分ブロックにより構成された可変長ブロックＬＤＰＣ符号のパリティ検査行列のｐ番目の行とｑ番目の列が交差する個所の部分ブロックに存在する順列行列を示す。このため、図１１に示す順列行列の指数値は上記ａｐｑであり、上記順列行列の指数値に、上記部分行列のサイズに相当するＮｓ値をモジューロ演算すると、上記Ｎｓ値を有する可変長ブロックＬＤＰＣ符号のパリティ検査行列の順列行列の指数値が得られる。ここで、上記順列行列の指数が上記Ｎｓ値にモジューロ演算された場合、その結果値が０であれば、当該順列行列は恒等行列となる。
【０２１６】
以下、一層具体的な説明のために、下記の如きパラメータを定義する。
【０２１７】
先ず、図１１に示す可変長ブロックＬＤＰＣ符号のパリティ検査行列を「母行列」と称し、上記母行列を構成する部分行列、すなわち、順列行列のうちの０行列ではない順列行列の数をＬと定義し、上記母行列を構成する順列行列のうち、０行列がＬ個の順列行列の指数がａ１、ａ２、・・・、ａＬであり、上記母行列を構成する順列行列のサイズはＮｓであるとする。ここで、上記母行列を構成する順列行列のうちの０行列ではない順列行列がＬ個であるため、最初の順列行列はその指数がａ１となり、２番目の順列行列はその指数がａ２となり、このようにして最後の順列行列であるＬ番目の順列行列はその指数がａＬとなる。
【０２１８】
また、上記母行列とは異なり、新たに生成するパリティ検査行列を「子行列」と称し、上記子行列を構成する部分行列、すなわち、順列行列のうちの０行列ではない順列行列の数をＬであると定義し、上記子行列を構成する順列行列のサイズがＮｓ’であり、上記子行列を構成する順列行列の指数がa１’、ａ２’、・・・、ａＬ’であるとする。ここで、上記子行列を構成する順列行列のうちの０行列ではない順列行列がＬ個であるため、最初の順列行列はその指数がａ１’となり、２番目の順列行列はその指数がａ２’となり、このようにして、最後の順列行列であるＬ番目の順列行列はその指数がａＬ’となる。
【０２１９】
すると、下記式５を用い、１個の母行列から生成したい子行列を構成する順列行列のサイズＮｓ’を選択して、可変ブロック長を有する子行列を生成することが可能である。
【０２２０】
【数５５】
2007535236.tif 000057
【０２２１】
次に、図１２を参照し、符号化率が２／３である場合の可変長ブロックＬＤＰＣ符号の具体的な生成方法について説明する。
【０２２２】
図１２は、本発明の第２の実施の形態による可変長ブロックＬＤＰＣ符号のパリティ検査行列を示す図である。
【０２２３】
図１２を説明するに先立ち、上記本発明の第２の実施の形態は、符号化率が２／３である場合の可変長ブロックＬＤＰＣ符号のパリティ検査行列を提案する。図１２を参照すると、先ず、上記部分行列のサイズであるＮｓ値を８、１６であるとした場合、図１２に示すように、パリティ検査行列を用いて長さ２８８、５７６であるブロックＬＤＰＣ符号を生成することができる。図１２に示すブロック、すなわち、部分行列のそれぞれに表記されている値は、順列行列の指数値を示す。このため、上記順列行列の指数値に、上記部分行列のサイズに相当するＮｓ値をモジューロ演算すると、上記Ｎｓ値を有するブロックＬＤＰＣ符号のパリティ検査行列の順列行列の指数値が得られる。ここで、上記順列行列の指数に、上記Ｎｓ値のモジューロ演算を行ったとき、その結果値が０である場合、当該順列行列は恒等行列となる。
【０２２４】
次に、図１３を参照して、符号化率が３／４である場合の可変長ブロックＬＤＰＣ符号の具体的な生成方法について説明する。
【０２２５】
図１３は、本発明の第３の実施の形態による可変長ブロックＬＤＰＣ符号のパリティ検査行列を示す図である。
【０２２６】
図１３を説明するに先立ち、上記本発明の第３の実施の形態は、符号化率が３／４である場合の可変長ブロックＬＤＰＣ符号のパリティ検査行列を提案する。図１３を参照すると、先ず、上記部分行列のサイズであるＮｓ値が３、６、９、１２、１５、１８であるとした場合、図１３に示すように、パリティ検査行列を用いて長さ９６、１９２、２８８、３８４、４８０、５７６である可変長ブロックＬＤＰＣ符号を生成することができる。図１３に示すブロック、すなわち、部分行列のそれぞれに表記されている値は、順列行列の指数値を示す。このため、上記順列行列の指数値に、上記部分行列のサイズに相当するＮｓ値をモジューロ演算すると、上記Ｎｓ値を有するブロックＬＤＰＣ符号のパリティ検査行列の順列行列の指数値が得られる。ここで、上記順列行列の指数に、上記Ｎｓ値のモジューロ演算を行ったとき、その結果値が０である場合、当該順列行列は恒等行列となる。
【０２２７】
次に、図１４を参照し、符号化率が５／６である場合の可変長ブロックＬＤＰＣ符号の具体的な生成方法について説明する。
【０２２８】
図１４は、本発明の第４の実施の形態による可変長ブロックＬＤＰＣ符号のパリティ検査行列を示す図である。
【０２２９】
図１４を説明するに先立ち、上記本発明の第４の実施の形態は、符号化率が５／６である場合の可変長ブロックＬＤＰＣ符号のパリティ検査行列を提案する。図１４を参照すると、先ず、上記部分行列のサイズであるＮｓ値が８、１６であるとした場合、図１４に示すように、パリティ検査行列を用いて長さ２８８、５７６であるブロックＬＤＰＣ符号を生成することができる。図１４に示すブロック、すなわち、部分行列のそれぞれに表記されている値は、順列行列の指数値を示す。このため、上記順列行列の指数値に、上記部分行列のサイズに相当するＮｓ値をモジューロ演算すると、上記Ｎｓ値を有するブロックＬＤＰＣ符号のパリティ検査行列の順列行列の指数値が得られる。ここで、上記順列行列の指数に、上記Ｎｓ値のモジューロ演算を行ったとき、その結果値が０である場合、当該順列行列は恒等行列となる。
【０２３０】
次に、図１８を参照し、符号化率１／２である場合の可変長ブロックＬＤＰＣ符号の具体的に生成方法について説明する。
【０２３１】
図１８は、本発明の第５の実施の形態による可変長ブロックＬＤＰＣ符号のパリティ検査行列を示す図である。
【０２３２】
図１８を説明するに先立ち、上記本発明の第１の実施の形態は、符号化率が１／２である場合の可変長ブロックＬＤＰＣ符号のパリティ検査行列を提案する。図１８を参照すると、図示のパリティ検査行列を用いて、上記部分行列のサイズであるＮｓ値に基づき長さが４８ＮｓであるブロックＬＤＰＣ符号を生成することができる。図１８に示すブロック、すなわち、部分行列のそれぞれに表記されている値は、順列行列の指数値を示す。このため、上記順列行列の指数値に、上記部分行列のサイズに相当するＮｓ値をモジューロ演算すると、上記Ｎｓ値を有するブロックＬＤＰＣ符号のパリティ検査行列の順列行列の指数値が得られる。ここで、上記順列行列の指数に、上記Ｎｓ値のモジューロ演算を行ったとき、その結果値が０である場合、当該順列行列は恒等行列となる。
【０２３３】
次に、図１９を参照し、符号化率が２／３である場合の可変長ブロックＬＤＰＣ符号の具体的に生成方法について説明する。
【０２３４】
図１９は、本発明の第６の実施の形態による可変長ブロックＬＤＰＣ符号のパリティ検査行列を示す図である。
【０２３５】
図１９を説明するに先立ち、上記本発明の第６の実施の形態は、符号化率が２／３である場合の可変長ブロックＬＤＰＣ符号のパリティ検査行列を提案する。図１９を参照すると、図示のパリティ検査行列を用いて、上記部分行列のサイズであるＮｓ値に基づき長さが４８ＮｓであるブロックＬＤＰＣ符号を生成することができる。図１９に示すブロック、すなわち、部分行列のそれぞれに表記されている値は、順列行列の指数値を示す。このため、上記順列行列の指数値に、上記部分行列のサイズに相当するＮｓ値をモジューロ演算すると、上記Ｎｓ値を有するブロックＬＤＰＣ符号のパリティ検査行列の順列行列の指数値が得られる。ここで、上記順列行列の指数に、上記Ｎｓ値のモジューロ演算を行ったとき、その結果値が０である場合、当該順列行列は恒等行列となる。
【０２３６】
次に、図２０を参照し、符号化率が３／４である場合の可変長ブロックＬＤＰＣ符号の具体的に生成方法について説明する。
【０２３７】
図２０は、本発明の第７の実施の形態による可変長ブロックＬＤＰＣ符号のパリティ検査行列を示す図である。
【０２３８】
図２０を説明するに先立ち、上記本発明の第７の実施の形態は、符号化率が３／４である場合の可変長ブロックＬＤＰＣ符号のパリティ検査行列を提案する。図２０を参照すると、図示のパリティ検査行列を用いて、上記部分行列のサイズであるＮｓ値に基づき長さが４８ＮｓであるブロックＬＤＰＣ符号を生成することができる。図２０に示すブロック、すなわち、部分行列のそれぞれに表記されている値は、順列行列の指数値を示す。このため、上記順列行列の指数値に、上記部分行列のサイズに相当するＮｓ値をモジューロ演算すると、上記Ｎｓ値を有するブロックＬＤＰＣ符号のパリティ検査行列の順列行列の指数値が得られる。ここで、上記順列行列の指数に、上記Ｎｓ値のモジューロ演算を行ったとき、その結果値が０である場合、当該順列行列は恒等行列となる。
【０２３９】
次に、図２１を参照し、符号化率が３／４である場合の可変長ブロックＬＤＰＣ符号の具体的に生成方法について説明する。
【０２４０】
図２１は、本発明の第８の実施の形態による可変長ブロックＬＤＰＣ符号のパリティ検査行列を示す図である。
【０２４１】
図２１を説明するに先立ち、上記本発明の第８の実施の形態は、符号化率が３／４である場合の可変長ブロックＬＤＰＣ符号のパリティ検査行列を提案する。図２１を参照すると、図示のパリティ検査行列を用いて、上記部分行列のサイズであるＮｓ値に基づき長さが４８ＮｓであるブロックＬＤＰＣ符号を生成することができる。図２１に示すブロック、すなわち、部分行列のそれぞれに表記されている値は、順列行列の指数値を示す。このため、上記順列行列の指数値に、上記部分行列のサイズに相当するＮｓ値をモジューロ演算すると、上記Ｎｓ値を有するブロックＬＤＰＣ符号のパリティ検査行列の順列行列の指数値が得られる。ここで、上記順列行列の指数に、上記Ｎｓ値のモジューロ演算を行ったとき、その結果値が０である場合、当該順列行列は恒等行列となる。
【０２４２】
次に、図２２を参照し、符号化率が１／２である場合の可変長ブロックＬＤＰＣ符号の具体的に生成方法について説明する。
【０２４３】
図２２は、本発明の第９の実施の形態による可変長ブロックＬＤＰＣ符号のパリティ検査行列を示す図である。
【０２４４】
図２２を説明するに先立ち、上記本発明の第９の実施の形態は、符号化率が１／２である場合の可変長ブロックＬＤＰＣ符号のパリティ検査行列を提案する。図２２を参照すると、図示のパリティ検査行列を用いて、上記部分行列のサイズであるＮｓ値に基づき長さが２４ＮｓであるブロックＬＤＰＣ符号を生成することができる。図２２に示すブロック、すなわち、部分行列のそれぞれに表記されている値は、順列行列の指数値を示す。このため、上記順列行列の指数値に、上記部分行列のサイズに相当するＮｓ値をモジューロ演算すると、上記Ｎｓ値を有するブロックＬＤＰＣ符号のパリティ検査行列の順列行列の指数値が得られる。ここで、上記順列行列の指数に、上記Ｎｓ値のモジューロ演算を行ったとき、その結果値が０である場合、当該順列行列は恒等行列となる。
【０２４５】
次に、図２３を参照し、符号化率が１／２である場合の可変長ブロックＬＤＰＣ符号の具体的に生成方法について説明する。
【０２４６】
図２３は、本発明の第１０の実施の形態による可変長ブロックＬＤＰＣ符号のパリティ検査行列を示す図である。
【０２４７】
図２３を説明するに先立ち、上記本発明の第１０の実施の形態は、符号化率が１／２である場合の可変長ブロックＬＤＰＣ符号のパリティ検査行列を提案する。図２３を参照すると、図示のパリティ検査行列を用いて、上記部分行列のサイズであるＮｓ値に基づき長さが２４ＮｓであるブロックＬＤＰＣ符号を生成することができる。図２３に示すブロック、すなわち、部分行列のそれぞれに表記されている値は、順列行列の指数値を示す。このため、上記順列行列の指数値に、上記部分行列のサイズに相当するＮｓ値をモジューロ演算すると、上記Ｎｓ値を有するブロックＬＤＰＣ符号のパリティ検査行列の順列行列の指数値が得られる。ここで、上記順列行列の指数に、上記Ｎｓ値のモジューロ演算を行ったとき、その結果値が０である場合、当該順列行列は恒等行列となる。
【０２４８】
次に、図２４を参照し、符号化率が２／３である場合の可変長ブロックＬＤＰＣ符号の具体的に生成方法について説明する。
【０２４９】
図２４は、本発明の第１１の実施の形態による可変長ブロックＬＤＰＣ符号のパリティ検査行列を示す図である。
【０２５０】
図２４を説明するに先立ち、上記本発明の第１１の実施の形態は、符号化率が２／３である場合の可変長ブロックＬＤＰＣ符号のパリティ検査行列を提案する。図２４を参照すると、図示のパリティ検査行列を用いて、上記部分行列のサイズであるＮｓ値に基づき長さが２４ＮｓであるブロックＬＤＰＣ符号を生成することができる。図２４に示すブロック、すなわち、部分行列のそれぞれに表記されている値は、順列行列の指数値を示す。このため、上記順列行列の指数値に、上記部分行列のサイズに相当するＮｓ値をモジューロ演算すると、上記Ｎｓ値を有するブロックＬＤＰＣ符号のパリティ検査行列の順列行列の指数値が得られる。ここで、上記順列行列の指数に、上記Ｎｓ値のモジューロ演算を行ったとき、その結果値が０である場合、当該順列行列は恒等行列となる。
【０２５１】
次に、図２５を参照し、符号化率が２／３である場合の可変長ブロックＬＤＰＣ符号の具体的に生成方法について説明する。
【０２５２】
図２５は、本発明の第１２の実施の形態による可変長ブロックＬＤＰＣ符号のパリティ検査行列を示す図である。
【０２５３】
図２５を説明するに先立ち、上記本発明の第１２の実施の形態は、符号化率が２／３である場合の可変長ブロックＬＤＰＣ符号のパリティ検査行列を提案する。図２５を参照すると、図示のパリティ検査行列を用いて、上記部分行列のサイズであるＮｓ値に基づき長さが２４ＮｓであるブロックＬＤＰＣ符号を生成することができる。図２５に示すブロック、すなわち、部分行列のそれぞれに表記されている値は、順列行列の指数値を示す。このため、上記順列行列の指数値に、上記部分行列のサイズに相当するＮｓ値をモジューロ演算すると、上記Ｎｓ値を有するブロックＬＤＰＣ符号のパリティ検査行列の順列行列の指数値が得られる。ここで、上記順列行列の指数に、上記Ｎｓ値のモジューロ演算を行ったとき、その結果値が０である場合、当該順列行列は恒等行列となる。
【０２５４】
次に、図２６を参照し、符号化率が１／２である場合の可変長ブロックＬＤＰＣ符号の具体的に生成方法について説明する。
【０２５５】
図２６は、本発明の第１３の実施の形態による可変長ブロックＬＤＰＣ符号のパリティ検査行列を示す図である。
【０２５６】
図２６を説明するに先立ち、上記本発明の第１３の実施の形態は、符号化率が１／２である場合の可変長ブロックＬＤＰＣ符号のパリティ検査行列を提案する。図２６を参照すると、図示のパリティ検査行列を用いて、上記部分行列のサイズであるＮｓ値に基づき長さが２４ＮｓであるブロックＬＤＰＣ符号を生成することができる。図２６に示すブロック、すなわち、部分行列のそれぞれに表記されている値は、順列行列の指数値を示す。このため、上記順列行列の指数値に、上記部分行列のサイズに相当するＮｓ値をモジューロ演算すると、上記Ｎｓ値を有するブロックＬＤＰＣ符号のパリティ検査行列の順列行列の指数値が得られる。ここで、上記順列行列の指数に、上記Ｎｓ値のモジューロ演算を行ったとき、その結果値が０である場合、当該順列行列は恒等行列となる。
【０２５７】
次に、図２７を参照し、符号化率が１／２である場合の可変長ブロックＬＤＰＣ符号の具体的に生成方法について説明する。
【０２５８】
図２７は、本発明の第１４の実施の形態による可変長ブロックＬＤＰＣ符号のパリティ検査行列を示す図である。
【０２５９】
前記図２７を説明するに先立ち、上記本発明の第１４の実施の形態は、符号化率が１／２である場合の可変長ブロックＬＤＰＣ符号のパリティ検査行列を提案する。図２７を参照すると、図示のパリティ検査行列を用いて、上記部分行列のサイズであるＮｓ値に基づき長さが２４ＮｓであるブロックＬＤＰＣ符号を生成することができる。図２７に示すブロック、すなわち、部分行列のそれぞれに表記されている値は、順列行列の指数値を示す。このため、上記順列行列の指数値に、上記部分行列のサイズに相当するＮｓ値をモジューロ演算すると、上記Ｎｓ値を有するブロックＬＤＰＣ符号のパリティ検査行列の順列行列の指数値が得られる。ここで、上記順列行列の指数に、上記Ｎｓ値のモジューロ演算を行ったとき、その結果値が０である場合、当該順列行列は恒等行列となる。
【０２６０】
次に、図２８を参照し、符号化率が２／３である場合の可変長ブロックＬＤＰＣ符号の具体的に生成方法について説明する。
【０２６１】
図２８は、本発明の第１５の実施の形態による可変長ブロックＬＤＰＣ符号のパリティ検査行列を示す図である。
【０２６２】
図２８を説明するに先立ち、上記本発明の第１５の実施の形態は、符号化率が２／３である場合の可変長ブロックＬＤＰＣ符号のパリティ検査行列を提案する。図２８を参照すると、図示のパリティ検査行列を用いて、部分ブロックのサイズであるＮｓ値に基づき長さが２４ＮｓであるブロックＬＤＰＣ符号を生成することができる。図２８に示す部分ブロック、すなわち、部分行列のそれぞれに表記されている値は、順列行列の指数値を示す。このため、上記順列行列の指数値に、上記部分行列のサイズに相当するＮｓ値をモジューロ演算すると、上記Ｎｓ値を有するブロックＬＤＰＣ符号のパリティ検査行列の順列行列の指数値が得られる。ここで、上記順列行列の指数に、上記Ｎｓ値のモジューロ演算を行ったとき、その結果値が０である場合、当該順列行列は恒等行列となる。
【０２６３】
一方、上記ＬＤＰＣ符号系の全ての符号は、ファクターグラフ上において和積アルゴリズムにより復号化することが可能である。上記ＬＤＰＣ符号の復号化方式は、両方向伝達方式と流れ伝達方式に大別できる。上記両方向伝達方式により復号化動作を行う場合には、１検査ノードごとにノードプロセッサーがそれぞれ存在して復号化器の複雑度が上記検査ノードの数に比例して複雑になるが、全てのノードが同時に更新されるため、復号化の速度が非常に早くなる。
【０２６４】
これとは異なり、上記流れ伝達方式は、１個のノードプロセッサーが存在して全てのファクターグラフ上のノードを通過しながら情報を更新する。このため、復号化器の複雑度は簡単になるが、パリティ検査行列のサイズが大きくなるほど、すなわち、ノードの数が増えるほど、復号化の速度が遅くなる。しかしながら、本発明において提案する符号化率に応じて、様々なブロック長を有する可変長ブロックＬＤＰＣ符号のように、ブロック単位でパリティ検査行列を生成すると、復号化時に上記パリティ検査行列を構成しているブロックの数分のノードプロセッサーを用いるため、上記両方向伝達方式よりは復号化器の複雑度が下がり、また、上記流れ伝達方式よりは復号化速度が早い復号化器を実現することができる。
【０２６５】
次に、図１７を参照し、本発明の実施の形態によるパリティ検査行列を用いて可変長ブロックＬＤＰＣ符号を復号化する復号化装置の内部構造について説明する。
【０２６６】
図１７は、本発明の実施の形態における機能を行うブロックＬＤＰＣ符号の復号化装置の内部構造を示す図である。
【０２６７】
図１７を参照すると、上記可変長ブロックＬＤＰＣ符号の復号化装置は、ブロック制御器１７１０と、変数ノードパート１７００と、加算器１７１５と、デインタリーバー１７１７と、インタリーバー１７１９と、制御器１７２１と、メモリー１７２３と、加算器１７２５と、検査ノードパート１７５０と、硬判定器１７２９と、を備える。上記変数ノードパート１７００は、変数ノード復号化器１７１１と、スイッチ１７１３、１７１４と、を備え、上記検査ノードパート１７５０は、検査ノード復号化器１７２７を有する。
【０２６８】
先ず、無線チャンネルを介して受信される受信信号は、上記ブロック制御器１７１０に入力される。上記ブロック制御器１７１０は、上記受信信号のブロックサイズを決め、また、上記復号化装置に対応する符号化装置に空いている情報語部分が存在する場合、上記空いている情報語部分に０を挿入して全体のブロックサイズを調整した後、上記変数ノード復号化器１７１１に出力する。
【０２６９】
上記変数ノード復号化器１７１１は、上記ブロック制御器１７１０から出力された信号を入力し、上記ブロック制御器１７１０から出力された信号の確率値を計算し、上記計算された確率値を更新した後、上記スイッチ１７１３及び上記スイッチ１７１４に出力する。ここで、上記変数ノード復号化器１７１１は、上記不均一ブロックＬＤＰＣ符号の復号化装置に予め設定されているパリティ検査行列に応じて変数ノードを接続し、上記変数ノードに接続された１の数分の入力値と出力値を有する更新演算が行われる。上記変数ノードのそれぞれに接続された１の数は、上記パリティ検査行列を構成する列のそれぞれのウェイトと同じである。このため、上記パリティ検査行列を構成する列のそれぞれのウェイトに応じて、上記変数ノード復号化器１７１１の内部演算が異なってくる。上記スイッチ１７１４は、上記スイッチ１７１３がスイッチングオンとなる場合のみを除外し、スイッチングオンとなって上記ブロック制御器１７１０から出力される信号を上記加算器１７１５に送る。
【０２７０】
上記加算器１７１５は、上記変数ノード復号化器１７１１から出力された信号と以前の繰り返し復号化過程における上記インタリーバー１７１９の出力信号を入力し、上記変数ノード復号化器１７１１から出力された信号から、以前の繰り返し復号化過程における上記インタリーバー１７１９の出力信号を減算した後、上記デインタリーバー１７１７に出力する。ここで、上記復号化過程が最初の復号化過程である場合、上記インタリーバー１７１９の出力信号は０として見なすべきであることはもちろんである。
【０２７１】
上記デインタリーバー１７１７は、上記加算器１７１５から出力された信号を入力し、予め設定されている設定方式に応じてデインタリーブした後、上記加算器１７２５と検査ノード復号化器１７２７に出力する。ここで、上記デインタリーバー１７１７の内部構造は、上記パリティ検査行列に見合う構造を有し、その理由は、上記パリティ検査行列の１の値を有するエレメントの位置に応じて、上記デインタリーバー１７１７に対応するインタリーバー１７１９の入力値に対する出力値が異なるためである。
【０２７２】
上記加算器１７２５は、以前の繰り返し復号化過程における上記検査ノード復号化器１７２７の出力信号と上記デインタリーバー１７１７の出力信号を入力し、上記以前の繰り返し復号化過程における上記検査ノード復号化器１７２７の出力信号から、上記デインタリーバー１７１７の出力信号を減算した後、上記インタリーバー１７１９に出力する。上記検査ノード復号化器１７２７は、上記ブロックＬＤＰＣ符号の復号化装置に予め設定されているパリティ検査行列に応じて検査ノードを接続し、上記検査ノードに接続された１の数分の入力値と出力値を有する更新演算が行われる。上記検査ノードのそれぞれに接続された１の数は、上記パリティ検査行列を構成する行のそれぞれのウェイトと同じである。このため、上記パリティ検査行列を構成する行のそれぞれのウェイトに応じて、上記検査ノード復号化器１７２７の内部演算が異なってくる。
【０２７３】
ここで、上記インタリーバー１７１９は、上記制御器１７２１の制御によって、予め設定されている設定方式により上記加算器１７２５から出力された信号をインタリーブした後、上記加算器１７１５及び上記変数ノード復号化器１７１１に出力する。ここで、上記制御器１７２１は、上記メモリー１７２３に格納されているインタリーブ方式に関する情報を読み込んで、上記インタリーバー１７１９のインタリーブ方式と上記デインタリーバー１７１７のデインタリーブ方式を制御する。ここで、上記メモリー１７２３は、上記可変長ブロックＬＤＰＣ符号を生成可能な母行列のみを格納しているので、制御器１７２１は、上記メモリー１７２３に格納されている母行列を読み込んで、予め設定されているブロックサイズに見合う順列行列のサイズＮｓ’を用い、当該子行列を構成する順列行列の指数を生成する。そして、上記制御器１７２１は、上記生成した子行列を用いて上記インタリーバー１７１９のインタリーブ方式と上記デインタリーバー１７１７のデインタリーブ方式を制御する。また、上記復号化過程が最初の復号化過程である場合には、上記デインタリーバー１７１７の出力信号は０として見なすべきであることはもちろんである。
【０２７４】
上記のごとき過程を繰り返し行うことにより、エラーを起こすことなく、信頼度の高い復号化を行い、予め設定された繰り返し回数だけ繰り返し復号化を行った後には、上記スイッチ１７１４が上記変数ノード復号化器１７１１と加算器１７１５との間の接続をオフにした後、上記スイッチ１７１３が上記変数ノード復号化器１７１１と硬判定器１７２９との間の接続をオンにして、上記変数ノード復号化器１７１１から出力された信号を上記硬判定器１７２９に出力する。上記硬判定器１７２９は、上記変数ノード復号化器１７１１から出力された信号を入力して硬判定した後、その硬判定結果を出力し、上記硬判定器１７２９の出力値が最終的に復号化された値となる。
【０２７５】
なお、本発明の詳細な説明においては、具体的な実施の形態について説明したが、本発明の範囲から逸脱しない範囲内であれば、種々な変形が可能であることは言うまでもない。よって、本発明の範囲は、上述した実施の形態に限定されるものではなく、特許請求の範囲とその均等物によって定められるべきである。
【図面の簡単な説明】
【０２７６】
【図１】通常の通信システムの送受信機の構造を概略的に示す図である。
【図２】通常の（８、２、４）ＬＤＰＣ符号のパリティ検査行列を示す図である。
【図３】図２の（８、２、４）ＬＤＰＣ符号のファクターグラフを示す図である。
【図４】通常のブロックＬＤＰＣ符号のパリティ検査行列を概略的に示す図である。
【図５】図４の順列行列Ｐを示す図である。
【図６】パリティ検査行列が４個の部分行列により構成されたブロックＬＤＰＣ符号のサイクル構造を概略的に示す図である。
【図７】完全下三角行列の形状と類似した形状を有するパリティ検査行列を示す図である。
【図８】図７のパリティ検査行列を６個の部分ブロックに分割した図である。
【図９】図７のパリティ検査行列の部分行列を、図８の部分行列Ｂの転置行列と、部分行列Ｅと、部分行列Ｔと、部分行列Ｔの逆行列として示す図である。
【図１０】本発明の実施の形態によるブロックＬＤＰＣ符号のパリティ検査行列の生成過程を示す手順図である。
【図１１】本発明の第１の実施の形態による可変長ブロックＬＤＰＣ符号のパリティ検査行列を示す図である。
【図１２】本発明の第２の実施の形態による可変長ブロックＬＤＰＣ符号のパリティ検査行列を示す図である。
【図１３】本発明の第３の実施の形態による可変長ブロックＬＤＰＣ符号のパリティ検査行列を示す図である。
【図１４】本発明の第４の実施の形態による可変長ブロックＬＤＰＣ符号のパリティ検査行列を示す図である。
【図１５】本発明の第１の実施の形態ないし第４の実施の形態による可変長ブロックＬＤＰＣ符号の符号化過程を示す手順図である。
【図１６】本発明の実施の形態における機能を行うための可変長ブロックＬＤＰＣ符号の符号化装置の内部構造を示すブロック図である。
【図１７】本発明の実施の形態における機能を行うブロックＬＤＰＣ符号の復号化装置の内部構造を示す図である。
【図１８】本発明の第５の実施の形態による可変長ブロックＬＤＰＣ符号のパリティ検査行列を示す図である。
【図１９】本発明の第６の実施の形態による可変長ブロックＬＤＰＣ符号のパリティ検査行列を示す図である。
【図２０】本発明の第７の実施の形態による可変長ブロックＬＤＰＣ符号のパリティ検査行列を示す図である。
【図２１】本発明の第８の実施の形態による可変長ブロックＬＤＰＣ符号のパリティ検査行列を示す図である。
【図２２】本発明の第９の実施の形態による可変長ブロックＬＤＰＣ符号のパリティ検査行列を示す図である。
【図２３】本発明の第１０の実施の形態による可変長ブロックＬＤＰＣ符号のパリティ検査行列を示す図である。
【図２４】本発明の第１１の実施の形態による可変長ブロックＬＤＰＣ符号のパリティ検査行列を示す図である。
【図２５】本発明の第１２の実施の形態による可変長ブロックＬＤＰＣ符号のパリティ検査行列を示す図である。
【図２６】本発明の第１３の実施の形態による可変長ブロックＬＤＰＣ符号のパリティ検査行列を示す図である。
【図２７】本発明の第１４の実施の形態による可変長ブロックＬＤＰＣ符号のパリティ検査行列を示す図である。
【図２８】本発明の第１５の実施の形態による可変長ブロックＬＤＰＣ符号のパリティ検査行列を示す図である。
【符号の説明】
【０２７７】
１００    送信機
１１１    符号化器
１１３    変調器
１１５    無線周波数（ＲＦ）処理器
１５０    受信機
１５１    ＲＦ処理器
１５３    復調器
１５５    復号化器
３００    変数ノードｘ１
３０２    変数ノードｘ２
３０４    変数ノードｘ３
３０６    変数ノードｘ４
３０８    変数ノードｘ５
３１０    変数ノードｘ６
３１２    変数ノードｘ７
３１４    変数ノードｘ８
３１６、３１８、３２０、３２２    検査ノード
８０２    部分ブロックＡ
８０４    部分ブロックＣ
８０６    部分ブロックＢ
８０８    部分ブロックＤ
８１０    部分ブロックＴ
８１２    部分ブロックＥ
１６１１    行列Ａ乗算器
１６１３    行列Ｃ乗算器
１６１５    行列ＥＴ−１乗算器
１６１７    加算器
１６１９    行列Ｂ乗算器
１６２１    加算器
１６２３    行列Ｔ−１乗算器
１６２５、１６２７、１６２９    スイッチ
１７００    変数ノードパート
１７１０    ブロック制御器
１７１１    変数ノード復号化器
１７１３、１７１４    スイッチ
１７１５    加算器
１７１７    デインタリーバー
１７１９    インタリーバー
１７２１    制御器
１７２３    メモリー
１７２５    加算器
１７２７    検査ノード復号化器
１７２９    硬判定器
１７５０    検査ノードパート
【図１】
2007535236.tif 000122
【図２】
2007535236.tif 000123
【図３】
2007535236.tif 000124
【図４】
2007535236.tif 000125
【図５】
2007535236.tif 000126
【図６】
2007535236.tif 000127
【図７】
2007535236.tif 000128
【図８】
2007535236.tif 000129
【図９】
2007535236.tif 000130
【図１０】
2007535236.tif 000131
【図１１】
2007535236.tif 000132
【図１２】
2007535236.tif 000133
【図１３】
2007535236.tif 000134
【図１４】
2007535236.tif 000135
【図１５】
2007535236.tif 000136
【図１６】
2007535236.tif 000137
【図１７】
2007535236.tif 000138
【図１８】
2007535236.tif 000139
【図１９】
2007535236.tif 000140
【図２０】
2007535236.tif 000141
【図２１】
2007535236.tif 000142
【図２２】
2007535236.tif 000143
【図２３】
2007535236.tif 000144
【図２４】
2007535236.tif 000145
【図２５】
2007535236.tif 000146
【図２６】
2007535236.tif 000147
【図２７】
2007535236.tif 000148
【図２８】
2007535236.tif 000149
【国際調査報告】
2007535236.tif 000150