(19)【発行国】日本国特許庁(JP)
【公報種別】再公表特許(A1)
(11)【国際公開番号】WO2014054283
(43)【国際公開日】20140410
【発行日】20160825
(54)【発明の名称】符号化方法、復号方法、符号化器、及び、復号器
(51)【国際特許分類】
   H03M 13/19 20060101AFI20160729BHJP
   H03M 13/23 20060101ALI20160729BHJP
【FI】
   !H03M13/19
   !H03M13/23
【審査請求】有
【予備審査請求】未請求
【全頁数】934
【出願番号】2014539615
(21)【国際出願番号】JP2013005886
(22)【国際出願日】20131002
(11)【特許番号】5865503
(45)【特許公報発行日】20160217
(31)【優先権主張番号】2012223569
(32)【優先日】20121005
(33)【優先権主張国】JP
(31)【優先権主張番号】2012223570
(32)【優先日】20121005
(33)【優先権主張国】JP
(31)【優先権主張番号】2012223571
(32)【優先日】20121005
(33)【優先権主張国】JP
(31)【優先権主張番号】2012223572
(32)【優先日】20121005
(33)【優先権主張国】JP
(31)【優先権主張番号】2012223573
(32)【優先日】20121005
(33)【優先権主張国】JP
(81)【指定国】 AP(BW,GH,GM,KE,LR,LS,MW,MZ,NA,RW,SD,SL,SZ,TZ,UG,ZM,ZW),EA(AM,AZ,BY,KG,KZ,RU,TJ,TM),EP(AL,AT,BE,BG,CH,CY,CZ,DE,DK,EE,ES,FI,FR,GB,GR,HR,HU,IE,IS,IT,LT,LU,LV,MC,MK,MT,NL,NO,PL,PT,RO,RS,SE,SI,SK,SM,TR),OA(BF,BJ,CF,CG,CI,CM,GA,GN,GQ,GW,KM,ML,MR,NE,SN,TD,TG),AE,AG,AL,AM,AO,AT,AU,AZ,BA,BB,BG,BH,BN,BR,BW,BY,BZ,CA,CH,CL,CN,CO,CR,CU,CZ,DE,DK,DM,DO,DZ,EC,EE,EG,ES,FI,GB,GD,GE,GH,GM,GT,HN,HR,HU,ID,IL,IN,IS,JP,KE,KG,KN,KP,KR,KZ,LA,LC,LK,LR,LS,LT,LU,LY,MA,MD,ME,MG,MK,MN,MW,MX,MY,MZ,NA,NG,NI,NO,NZ,OM,PA,PE,PG,PH,PL,PT,QA,RO,RS,RU,RW,SA,SC,SD,SE,SG,SK,SL,SM,ST,SV,SY,TH,TJ,TM,TN,TR,TT,TZ,UA,UG,US,UZ
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
1.BLU―RAY DISC
2.Blu−ray
3.HDMI
(71)【出願人】
【識別番号】514136668
【氏名又は名称】パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカ
【氏名又は名称原語表記】Panasonic Intellectual Property Corporation of America
【住所又は居所】アメリカ合衆国 90503 カリフォルニア州,トーランス,スイート 200,マリナー アベニュー 20000
(74)【代理人】
【識別番号】110001900
【氏名又は名称】特許業務法人 ナカジマ知的財産綜合事務所
(72)【発明者】
【氏名】村上 豊
【住所又は居所】大阪府門真市大字門真1006番地 パナソニック株式会社内
【テーマコード(参考)】
5J065
【Fターム(参考)】
5J065AD01
5J065AD07
5J065AD10
5J065AG05
5J065AH01
(57)【要約】
所定のパリティ検査行列に基づいて、ある符号化率の符号化を行うことにより、符号化系列を生成する符号化方法に関する。前記所定のパリティ検査行列は、複数のパリティ検査多項式を利用したLDPC(Low−DensityParity−Check)畳み込み符号に対応する第1のパリティ検査行列、または、前記第1のパリティ検査行列に行置換及び/または列置換を施して生成される第2のパリティ検査行列である。前記LDPC畳み込み符号における0を満たすパリティ検査多項式は、特定の式で表される。
【特許請求の範囲】
【請求項1】
符号化方法であって、
行数がm×z、列数が2×m×z行の所定のパリティ検査行列、mは2以上の偶数、zは自然数である、に基づいて、2個の情報系列XからXに対して、符号化率が2/4の符号化を行うことにより、前記2個の情報系列XからX及びパリティ系列Pで構成される符号化系列を生成し、
前記所定のパリティ検査行列は、複数のパリティ検査多項式を利用したLDPC(Low−Density Parity−Check)畳み込み符号に対応する第1のパリティ検査行列、または、前記第1のパリティ検査行列に行置換及び/または列置換を施して生成される第2のパリティ検査行列であり、
前記LDPC畳み込み符号に応じた1×P(D)、1×P(D)に関するそれぞれ2つの0を満たすパリティ検査多項式は、下記式(131−1−1)、(131−1−2)、(131−2−1)、(131−2−2)で表され、
【数1】
ただし、pは1以上2以下の整数、qは1以上r#(2i),p以下の整数、r#(2i),pは自然数としたとき、X(D)は前記情報系列Xの多項式表現であり、P(D)はパリティ系列Pの多項式表現であり、Dは遅延演算子であり、α#(2i),p,q及びβ#(2i),0は自然数、β#(2i),1は自然数、β#(2i),2は0以上の整数、β#(2i),3は自然数であり、また、R#(2i),pは自然数であり、1≦R#(2i),p<r#(2i),pが成立し、
そして、yは1以上r#(2i),p以下の整数、zは1以上r#2i,p以下の整数で、y≠zの(y,z)に対して、α#(2i),p,y≠α#(2i),p,zを満たし、
また、前記LDPC畳み込み符号に応じた1×P(D)、1×P(D)に関するそれぞれ2つの0を満たすパリティ検査多項式は、下記式(132−1−1)、(132−1−2)、(132−2−1)、(132−2−2)によっても表され、
【数2】

ただし、pは1以上2以下の整数、qは1以上r#(2i+1),p以下の整数、r#(2i+1),pは自然数としたとき、X(D)は前記情報系列Xの多項式表現であり、P(D)はパリティ系列Pの多項式表現であり、Dは遅延演算子であり、α#(2i+1),p,q及びβ#(2i+1),0は自然数、β#(2i+1),1は自然数、β#(2i+1),2は0以上の整数、β#(2i+1),3は自然数であり、また、R#(2i+1),pは自然数であり、1≦R#(2i+1),p<r#(2i+1),pが成立し、
そして、yは1以上r#(2i+1),p以下の整数、zは1以上r#(2i+1),p以下の整数で、y≠zの(y,z)に対して、α#(2i+1),p,y≠α#(2i+1),p,zを満たす、
符号化方法。
【請求項2】
所定の符号化方法で符号化された符号化系列を復号する復号方法であって、
前記所定の符号化方法は、行数がm×z、列数が2×m×z行の所定のパリティ検査行列、mは2以上の偶数、zは自然数である、に基づいて、2個の情報系列XからXに対して、符号化率が2/4の符号化を行うことにより、前記2個の情報系列XからX及びパリティ系列Pで構成される符号化系列を生成し、
前記所定のパリティ検査行列は、複数のパリティ検査多項式を利用したLDPC(Low−Density Parity−Check)畳み込み符号に対応する第1のパリティ検査行列、または、前記第1のパリティ検査行列に行置換及び/または列置換を施して生成される第2のパリティ検査行列であり、
前記LDPC畳み込み符号に応じた1×P(D)、1×P(D)に関するそれぞれ2つの0を満たすパリティ検査多項式は、下記式(131−1−1)、(131−1−2)、(131−2−1)、(131−2−2)で表され、
【数3】
ただし、pは1以上2以下の整数、qは1以上r#(2i),p以下の整数、r#(2i),pは自然数としたとき、X(D)は前記情報系列Xの多項式表現であり、P(D)はパリティ系列Pの多項式表現であり、Dは遅延演算子であり、α#(2i),p,q及びβ#(2i),0は自然数、β#(2i),1は自然数、β#(2i),2は0以上の整数、β#(2i),3は自然数であり、また、R#(2i),pは自然数であり、1≦R#(2i),p<r#(2i),pが成立し、
そして、yは1以上r#(2i),p以下の整数、zは1以上r#2i,p以下の整数で、y≠zの(y,z)に対して、α#(2i),p,y≠α#(2i),p,zを満たし、
このyは1以上r#(2i),p以下の整数、zは1以上r#2i,p以下の整数で、y≠zが成立するすべてのy、すべてのzにおいて、α#(2i),p,y≠α#(2i),p,zを満たし、
前記LDPC畳み込み符号に応じた1×P(D)、1×P(D)に関するそれぞれ2つの0を満たすパリティ検査多項式は、下記式(132−1−1)、(132−1−2)、(132−2−1)、(132−2−2)によっても表され、
【数4】
ただし、pは1以上2以下の整数、qは1以上r#(2i+1),p以下の整数、r#(2i+1),pは自然数としたとき、X(D)は前記情報系列Xの多項式表現であり、P(D)はパリティ系列Pの多項式表現であり、Dは遅延演算子であり、α#(2i+1),p,q及びβ#(2i+1),0は自然数、β#(2i+1),1は自然数、β#(2i+1),2は0以上の整数、β#(2i+1),3は自然数であり、また、R#(2i+1),pは自然数であり、1≦R#(2i+1),p<r#(2i+1),pが成立し、
そして、yは1以上r#(2i+1),p以下の整数、zは1以上r#(2i+1),p以下の整数で、y≠zの(y,z)に対して、α#(2i+1),p,y≠α#(2i+1),p,zを満たし、
前記所定のパリティ検査行列に基づいて、信頼度伝播(BP:Belief Propagation)を利用して、前記符号化系列を復号する、
復号方法。
【発明の詳細な説明】
【技術分野】
【0001】
本出願は、日本国で提出された特願2012-223569,特願2012-223570,特願2012-223571,特願2012-223572および特願2012-223573に基づく。このため、これらの出願の内容を援用する。
【0002】
本発明は、符号化率を1/2以上とし、かつ、符号化率(n−1)/n以外の(ただし、nは2以上の整数)符号化率の低密度パリティ検査畳み込み符号(LDPC−CC:Low Density Parity Check-Convolutional Codes)、および、改良したテイルバイティングを用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)を用い符号化方法、復号方法、符号化器、及び、復号器に関する。
【背景技術】
【0003】
近年、実現可能な回路規模で高い誤り訂正能力を発揮する誤り訂正符号として、低密度パリティ検査(LDPC:Low-Density Parity-Check)符号に注目が集まっている。LDPC符号は、誤り訂正能力が高く、かつ実装が容易なので、IEEE802.11nの高速無線LANシステムやディジタル放送システムなどの誤り訂正符号化方式に採用されている。
【0004】
LDPC符号は、低密度なパリティ検査行列Hで定義される誤り訂正符号である。また、LDPC符号は、検査行列Hの列数Nと等しいブロック長を持つブロック符号である(非特許文献1、非特許文献2、非特許文献3参照)。例えば、ランダム的なLDPC符号、QC−LDPC符号(QC:Quasi-Cyclic)が提案されている。
【0005】
また、ブロック符号のLDPC符号(以降、これをLDPC−BC:Low-Density Parity-Check Block Codeと標記する)に対して、任意の長さの情報系列に対しての符号化・復号化が可能なLDPC−CC(Low-Density Parity-Check Convolutional Codes)の検討が行われている(例えば、非特許文献4、非特許文献5参照)。
【0006】
LDPC−CCは、低密度なパリティ検査行列により定義される畳み込み符号である。例えば、符号化率R=1/2(=b/c)のLDPC−CCのパリティ検査行列H[0,n]は、図1で示される。ここで、H[0,n]の要素h(m)(t)は、0又は1をとる。また、h(m)(t)以外の要素は全て0である。MはLDPC−CCにおけるメモリ長、nはLDPC−CCの符号語の長さをあらわす。図1に示されるように、LDPC−CCの検査行列は行列の対角項とその近辺の要素にのみに1が配置されており、行列の左下及び右上の要素はゼロであり、平行四辺形型の行列であるという特徴がある。
【0007】
ここで,h(0)(t)=1,h(0)(t)=1であるとき、検査行列H[0,n]Tで定義されるLDPC−CCの符号化器は図2であらわされる。図2に示すように、LDPC−CCの符号化器は、ビットレングスcのシフトレジスタ2×(M+1)個とmod2加算(排他的論理和演算)器で構成される。このため、LDPC−CCの符号化器には、生成行列の乗算を行う回路、或いは、後退(前方)代入法に基づく演算を行うLDPC−BCの符号化器に比べ、非常に簡易な回路で実現することができるという特徴がある。また、図2は畳み込み符号の符号化器であるため、情報系列を固定長のブロックに区切って符号化する必要はなく、任意の長さの情報系列を符号化することができる。
【0008】
特許文献1、特許文献2には、パリティ検査多項式に基づいたLDPC−CCの生成方法について述べられている。特に、特許文献1では、時変周期2、時変周期3、時変周期4、及び、時変周期が3の倍数のパリティ検査多項式を用いたLDPC−CCの生成方法、特許文献2では、周期とパリティ検査多項式の関係について述べられている。
【先行技術文献】
【特許文献】
【0009】
【特許文献1】特開2009−246926号公報
【特許文献2】WO2011/058760
【非特許文献】
【0010】
【非特許文献1】R. G. Gallager, “Low-density parity check codes,” IRE Trans. Inform. Theory, IT-8, pp-21-28, 1962.
【非特許文献2】D. J. C. Mackay, “Good error-correcting codes based on very sparse matrices,” IEEE Trans. Inform. Theory, vol.45, no.2, pp399-431, March 1999.
【非特許文献3】M. P. C. Fossorier, “Quasi-cyclic low-density parity-check codes from circulant permutation matrices,” IEEE Trans. Inform. Theory, vol.50, no.8, pp.1788-1793, Nov. 2001.
【非特許文献4】A. J. Feltstrom, and K. S. Zigangirov, “Time-varying periodic convolutional codes with low-density parity-check matrix,” IEEE Trans. Inform. Theory, vol.45, no.6, pp.2181-2191, Sep. 1999.
【非特許文献5】R. M. Tanner, D. Sridhara, A. Sridharan, T. E. Fuja, and D. J. Costello Jr., “LDPC block and convolutional codes based on circulant matrices,” IEEE Trans. Inform. Theory, vol.50, no.12, pp.2966-2984, Dec. 2004.
【非特許文献6】M. P. C. Fossorier, M. Mihaljevic, and H. Imai, “Reduced complexity iterative decoding of low density parity check codes based on belief propagation,” IEEE Trans. Commun., vol.47., no.5, pp.673-680, May 1999.
【非特許文献7】J. Chen, A. Dholakia, E. Eleftheriou, M. P. C. Fossorier, and X.-Yu Hu, “Reduced-complexity decoding of LDPC codes,” IEEE Trans. Commun., vol.53., no.8, pp.1288-1299, Aug. 2005.
【非特許文献8】J. Zhang, and M. P. C. Fossorier, “Shuffled iterative decoding,” IEEE Trans. Commun., vol.53, no.2, pp.209-213, Feb. 2005.
【非特許文献9】G. Muller, and D. Burshtein, “Bounds on the maximum likelihood decoding error probability of low-density parity check codes,” IEEE Trans. Inf. Theory, vol.47, no.7, pp.2696-2710, Nov. 2001.
【非特許文献10】R. G. Gallager, “A simple derivation of the coding theorem and some applications,” IEEE Trans. Inf. Theory, vol.IT-11, no.1, pp.3-18, Jan. 1965.
【非特許文献11】A. J. Viterbi, “Error bounds for convolutional codes and an asymptotically optimum decoding algorithm,” IEEE Trans. Inf. Theory, vol.IT-13, no.2, pp.260-269, April 1967.
【非特許文献12】A. J. Viterbi, and J. K. Omura, “Principles of digital communication and coding,” McGraw-Hill, New York 1979.
【非特許文献13】Y. Murakami, S. Okamura, S. Okasaka, T. Kishigami, and M. Orihashi, “LDPC convolutional codes based on parity check polynomials with a time period of 3,” IEICE Trans. Fundamentals, vol.E-92, no.10, Oct. 2009.
【非特許文献14】M. B. S. Tavares, K. S. Zigangirov, and G. P. Fettweis, “Tail-biting LDPC convolutional codes,” Proc. of IEEE ISIT 2007, pp.2341-2345, June 2007.
【非特許文献15】H. H. Ma, and J. K. Wolf, “On tail biting convolutional codes,” IEEE Trans. Commun., vol.com-34, no.2, pp.104-111, Feb. 1986.
【非特許文献16】C. Weiss, C. Bettstetter, and S. Riedel, “Code construction and decoding of parallel concatenated tail-biting codes,” IEEE Trans. Inform. Theory, vol.47, no.1, pp.366-386, Jan. 2001.
【非特許文献17】J.Zhang, and M.P.C Fossorier, “A modified weighted bit-flipping decoding of lowdensity parity-check codes,”IEEE Communications Letters, vol.8, no.3, pp.165-167, 2004.
【非特許文献18】IEEE Standard for Local and Metropolitan Area Networks, IEEE P802.16e/D12, Oct. 2005.
【発明の概要】
【発明が解決しようとする課題】
【0011】
しかしながら、特許文献1、特許文献2では、符号化率(n−1)/nの(nは2以上の整数)パリティ検査多項式に基づくLDPC−CCの符号生成方法について記載されているが、符号化率を1/2以上とし、かつ、符号化率(n−1)/n以外の(ただし、nは2以上の整数)符号化率のパリティ検査多項式に基づくLDPC−CC、および、改良したテイルバイティングを用いたパリティ検査多項式に基づくLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)の生成方法について開示されていない。
【0012】
本発明の目的は、誤り訂正能力の高い符号化率を1/2以上とし、かつ、符号化率(n−1)/n以外の(ただし、nは2以上の整数)符号化率のパリティ検査多項式に基づくLDPC−CC、および、改良したテイルバイティングを用いたパリティ検査多項式に基づくLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)の符号化方法、復号方法、符号化器、及び、復号器を提供することである。
【課題を解決するための手段】
【0013】
本発明の符号化方法の一つの態様は、符号化方法であって、行数がm×z、列数がn×m×z行の所定のパリティ検査行列、ただしnは2以上の整数、mは2以上の偶数、zは自然数である、に基づいて、n-1個の情報系列XからXn−1に対して、符号化率が(n−1)/nの符号化を行うことにより、前記n−1個の情報系列XからXn−1及びパリティ系列Pで構成される符号化系列を生成し、前記所定のパリティ検査行列は、複数のパリティ検査多項式を利用したLDPC(Low−Density Parity−Check)畳み込み符号に対応する第1のパリティ検査行列、または、前記第1のパリティ検査行列に行置換及び/または列置換を施して生成される第2のパリティ検査行列であり、前記LDPC畳み込み符号における第e番目、ただし、eは0以上m×z−1以下の整数、の0を満たすパリティ検査多項式は、特定の式で表される。
【0014】
本発明の復号方法の一つの態様は、所定の符号化方法で符号化された符号化系列を復号する復号方法であって、上記符号化方法は、行数がm×z、列数がn×m×z行の所定のパリティ検査行列、ただしnは2以上の整数、mは2以上の偶数、zは自然数である、に基づいて、n-1個の情報系列XからXn−1に対して、符号化率が(n−1)/nの符号化を行うことにより、前記n−1個の情報系列XからXn−1及びパリティ系列Pで構成される符号化系列を生成し、前記所定のパリティ検査行列は、複数のパリティ検査多項式を利用したLDPC(Low−Density Parity−Check)畳み込み符号に対応する第1のパリティ検査行列、または、前記第1のパリティ検査行列に行置換及び/または列置換を施して生成される第2のパリティ検査行列であり、前記LDPC畳み込み符号における第e番目、ただし、eは0以上m×z−1以下の整数、の0を満たすパリティ検査多項式は、特定の式で表される。
【発明の効果】
【0015】
本発明によれば、高い誤り訂正能力を得ることができるため、高いデータ品質を確保することができる。
【図面の簡単な説明】
【0016】
【図1】LDPC−CCの検査行列を示す図
【図2】LDPC−CC符号化器の構成を示す図
【図3】(7,5)畳み込み符号の検査行列を示す図
【図4】符号化率(n−1)/n、時変周期6のLDPC−CCの検査行列の構成の一例を示す図
【図5】時変周期6のLDPC−CCのツリーの一例を示す図
【図6】時変周期6のLDPC−CCのツリーの一例を示す図
【図7】符号化率(n−1)/n、時変周期7のLDPC−CCの検査行列の構成の一例を示す図
【図8】時変周期7のLDPC−CCのツリーの一例を示す図
【図9】符号化率1/2の符号化器の回路例を示す図
【図10】符号化率1/2の符号化器の回路例を示す図
【図11】符号化率1/2の符号化器の回路例を示す図
【図12】LDPC−CC符号化部の構成の一例を示す図
【図13】ゼロターミネーションの方法を説明するための図
【図14】ゼロターミネーションを行ったときの検査行列の一例を示す図
【図15】パリティ検査多項式#α及び#βに相当するチェックノードと変数ノードとの関係を説明するための図
【図16】パリティ検査行列Hにおいて、X1(D)に関する部分のみを抽出して生成されるサブ行列を示す図
【図17】時変周期7のLDPC−CCのツリーの一例を示す図
【図18】時変周期6のLDPC−CCのツリーの一例を示す図
【図19】LDPC−CCの検査行列の一例を示す図
【図20】テイルバイティングを行ったときの検査行列の構成の一例を示す図
【図21】テイルバイティングを行ったときの検査行列の構成の一例を示す図
【図22】通信システムの概略を示す図
【図23】改良したテイルバイティングを行ったときの検査行列の構成の一例を示す図
【図24】改良したテイルバイティングを行ったときの検査行列の構成の一例を示す図
【図25】通信システムの概略を示す図
【図26】改良したテイルバイティングを行ったときの検査行列の構成の一例を示す図
【図27】改良したテイルバイティングを行ったときの検査行列の構成の一例を示す図
【図28】改良したテイルバイティングを行ったときの検査行列の構成の一例を示す図
【図29】改良したテイルバイティングを行ったときの検査行列の部分行列の構成の一例を示す図
【図30】改良したテイルバイティングを行ったときの検査行列の部分行列の構成の一例を示す図
【図31】改良したテイルバイティングを行ったときの検査行列の構成の一例を示す図
【図32】送信系列に対してインターリーブを行うときの送信装置の構成の一例を示す図
【図33】改良したテイルバイティングを行ったときの検査行列と等価な検査行列の構成の一例を示す図
【図34】送信系列に対してインターリーブを行うときの受信装置の構成の一例を示す図
【図35】符号化率(N−M)/NのLDPC符号の第j番目のブロックの送信系列に対応する検査行列の構成の一例を示す図
【図36】符号化率(N−M)/NのLDPC符号の第j番目のブロックの送信系列に対応する検査行列に対し、行置換を行った検査行列の構成の一例を示す図
【図37】時変周期2×mの符号化率2/4のパリティ検査多項式に基づくLDPC−CCの検査行列の構成の一例を示す図
【図38】時変周期2×mの符号化率2/4のパリティ検査多項式に基づくLDPC−CCの検査行列の構成の一例を示す図
【図39】時変周期2×mの符号化率2/4のパリティ検査多項式に基づくLDPC−CCの検査行列の構成の一例を示す図
【図40】符号化率2/4のパリティ検査多項式に基づくLDPC−CCの符号化器の構成の一例を示す図
【図41】ゼロターミネーションの方法を説明するための図
【図42】ゼロターミネーションの方法を説明するための図
【図43】テイルバイティングを行ったときの符号化率2/4のLDPC−CCの検査行列の構成の一例を示す図
【図44】改良したテイルバイティングを行ったときの符号化率2/4のLDPC−CCの検査行列の構成の一例を示す図
【図45】改良したテイルバイティングを行ったときの符号化率2/4のLDPC−CCの検査行列の構成の一例を示す図
【図46】通信システムの概略を示す図
【図47】送信装置が送信する送信信号の時間軸におけるフレーム構成の一例
【図48】基地局(放送局、アクセスポイント等)の送信装置において、伝送方式を切り替えが可能としたときの、変調信号を生成する部分の構成の一例
【図49】図48とは異なる例について、説明するための図
【図50】図48とは異なる例について、説明するための図
【図51】図50とは異なる構成例を示す図
【図52】一つのストリームを送信する場合の時間―周波数におけるフレーム構成の一例を示す図
【図53】二つのストリームを送信する場合の時間―周波数におけるフレーム構成の一例を示す図
【図54】送信方法及び受信方法を実行する装置を含むシステムの構成例を示す図
【図55】受信方法を実施する受信機の構成の一例を示す図
【図56】多重化データの構成の一例を示す図
【図57】多重化データがどのように多重化されているかの一例を模式的に示す図
【図58】ビデオストリームの格納例を示す図
【図59】多重化データに最終的に書き込まれるTSパケットの形式を示す図
【図60】PMTのデータ構造を詳しく説明する図
【図61】多重化データファイル情報の構成を示す図
【図62】ストリーム属性情報の構成を示す図
【図63】映像音声出力装置の構成の一例をを示す図
【図64】規則的にプリコーディング行列を切り替える方法を用いた放送システムの一例を示す図
【図65】光ディスク装置を示す図
【図66】時変周期2×mの符号化率3/5のパリティ検査多項式に基づくLDPC−CCの検査行列の構成の一例を示す図
【図67】時変周期2×mの符号化率3/5のパリティ検査多項式に基づくLDPC−CCの検査行列の構成の一例を示す図
【図68】時変周期2×mの符号化率3/5のパリティ検査多項式に基づくLDPC−CCの検査行列の構成の一例を示す図
【図69】符号化率3/5のパリティ検査多項式に基づくLDPC−CCの符号化器の構成の一例を示す図
【図70】ゼロターミネーションの方法を説明するための図
【図71】ゼロターミネーションの方法を説明するための図
【図72】テイルバイティングを行ったときの符号化率3/5のLDPC−CCの検査行列の構成の一例を示す図
【図73】改良したテイルバイティングを行ったときの符号化率3/5のLDPC−CCの検査行列の構成の一例を示す図
【図74】改良したテイルバイティングを行ったときの符号化率3/5のLDPC−CCの検査行列の構成の一例を示す図
【図75】時変周期2×mの符号化率5/7のパリティ検査多項式に基づくLDPC−CCの検査行列の構成の一例を示す図
【図76】時変周期2×mの符号化率5/7のパリティ検査多項式に基づくLDPC−CCの検査行列の構成の一例を示す図
【図77】時変周期2×mの符号化率5/7のパリティ検査多項式に基づくLDPC−CCの検査行列の構成の一例を示す図
【図78】符号化率5/7のパリティ検査多項式に基づくLDPC−CCの符号化器の構成の一例を示す図
【図79】ゼロターミネーションの方法を説明するための図
【図80】ゼロターミネーションの方法を説明するための図
【図81】テイルバイティングを行ったときの符号化率5/7のLDPC−CCの検査行列の構成の一例を示す図
【図82】改良したテイルバイティングを行ったときの符号化率5/7のLDPC−CCの検査行列の構成の一例を示す図
【図83】改良したテイルバイティングを行ったときの符号化率5/7のLDPC−CCの検査行列の構成の一例を示す図
【図84】時変周期2×mの符号化率7/9のパリティ検査多項式に基づくLDPC−CCの検査行列の構成の一例を示す図
【図85】時変周期2×mの符号化率7/9のパリティ検査多項式に基づくLDPC−CCの検査行列の構成の一例を示す図
【図86】時変周期2×mの符号化率7/9のパリティ検査多項式に基づくLDPC−CCの検査行列の構成の一例を示す図
【図87】符号化率7/9のパリティ検査多項式に基づくLDPC−CCの符号化器の構成の一例を示す図
【図88】ゼロターミネーションの方法を説明するための図
【図89】ゼロターミネーションの方法を説明するための図
【図90】テイルバイティングを行ったときの符号化率7/9のLDPC−CCの検査行列の構成の一例を示す図
【図91】改良したテイルバイティングを行ったときの符号化率7/9のLDPC−CCの検査行列の構成の一例を示す図
【図92】改良したテイルバイティングを行ったときの符号化率7/9のLDPC−CCの検査行列の構成の一例を示す図
【図93】時変周期2×mの符号化率13/15のパリティ検査多項式に基づくLDPC−CCの検査行列の構成の一例を示す図
【図94】時変周期2×mの符号化率13/15のパリティ検査多項式に基づくLDPC−CCの検査行列の構成の一例を示す図
【図95】時変周期2×mの符号化率13/15のパリティ検査多項式に基づくLDPC−CCの検査行列の構成の一例を示す図
【図96】符号化率13/15のパリティ検査多項式に基づくLDPC−CCの符号化器の構成の一例を示す図
【図97】ゼロターミネーションの方法を説明するための図
【図98】ゼロターミネーションの方法を説明するための図
【図99】テイルバイティングを行ったときの符号化率13/15のLDPC−CCの検査行列の構成の一例を示す図
【図100】改良したテイルバイティングを行ったときの符号化率13/15のLDPC−CCの検査行列の構成の一例を示す図
【図101】改良したテイルバイティングを行ったときの符号化率13/15のLDPC−CCの検査行列の構成の一例を示す図
【発明を実施するための形態】
【0017】
以下、本発明の実施の形態について、図面を参照して詳細に説明する。
【0018】
先ず、実施の形態の具体的な構成及び動作を説明する前に、特許文献1、特許文献2に記載されているパリティ検査多項式に基づくLDPC−CCについて説明する。
【0019】
例えば、符号化率1/2、生成多項式G=[1 G(D)/G(D)]の畳み込み符号を例に考える。このとき、Gはフィードフォワード多項式、Gはフィードバック多項式をあらわす。情報系列(データ)の多項式表現をX(D)、パリティ系列の多項式表現をP(D)とするとパリティ検査多項式は、以下の式(21)のようにあらわされる。
【0020】
【数1】
ここで、Dは、遅延演算子である。
【0021】
図3に、(7,5)の畳み込み符号に関する情報を記載する。(7,5)畳み込み符号の生成行列はG=[1 (D+1)/(D+D+1)]とあらわされる。したがって、パリティ検査多項式は、以下の式(2)となる。
【0022】
【数2】
ここで、時点iにおけるデータをX、パリティビットをPとあらわし、送信系列W=(X,P)とあらわす。そして、送信ベクトルw=(X,P,X,P,・・・,X,P・・・)とあらわす。すると、式(2)から、検査行列Hは図3に示すようにあらわすことができる。このとき、以下の式(3)の関係式が成立する。
【0023】
【数3】
したがって、復号側では、検査行列Hを用い、非特許文献4、非特許文献6、非特許文献7、非特許文献8に示されているようなBP(Belief Propagation)(信頼度伝播)復号、BP復号を近似したmin-sum復号、offset BP復号、Normalized BP復号、shuffled BP復号、スケジューリングされたLayerd BP復号などの信頼度伝播を利用した復号を行うことができる。
【0024】
[符号化率(n−1)/nの(nは2以上の整数)パリティ検査多項式に基づくLDPC−CC]
優れた誤り訂正能力をもつ、時変周期が3より大きいパリティ検査多項式に基づくLDPC−CCの符号構成方法について説明する。
【0025】
[時変周期6]
はじめに、例として、時変周期6のLDPC−CCについて説明する。
【0026】
符号化率(n−1)/n(nは2以上の整数)、時変周期6のLDPC−CCの(0を満たす)パリティ検査多項式として、式(4−0)〜(4−5)を考える。
【0027】
【数4】

このとき、X(D)、X(D)、・・・、Xn−1(D)はデータ(情報)X、X、・・・Xn−1の多項式表現であり、P(D)はパリティの多項式表現であり、Dは遅延演算子である。
。式(4−0)〜(4−5)において、例えば、符号化率1/2の場合、X(D)及びP(D)の項のみが存在し、X(D)、・・・、Xn−1(D)の項は存在しない。同様に、符号化率2/3の場合、X(D)、X(D)、及びP(D)の項のみが存在し、X(D)、・・・、Xn−1(D)の項は存在しない。その他の符号化率についても同様に考えればよい。
【0028】
ここで、式(4−0)〜(4−5)では、X(D)、X(D)、・・・、Xn−1(D)、P(D)それぞれに3つの項が存在するようなパリティ検査多項式とする。
【0029】
また、式(4−0)〜(4−5)では、X(D)、X(D)、・・・、Xn−1(D)、及び、P(D)について、以下が成立するものとする。
【0030】
式(4−q)において、a#q,p,1、a#q,p,2、a#q,p,3は自然数とし、a#q,p,1≠a#q,p,2、a#q,p,1≠a#q,p,3、a#q,p,2≠a#q,p,3が成立するものとする。また、b#q,1、b#q,2、b#q,3は自然数とし、b#q,1≠b#q,2、b#q,1≠b#q,3、b#q,1≠b#q,3が成立するものとする(q=0、1、2、3、4、5;p=1、2、・・・、n−1)。
【0031】
そして、式(4−q)のパリティ検査多項式を「検査式#q」と呼び、式(4−q)のパリティ検査多項式に基づくサブ行列を、第qサブ行列Hと呼ぶ。そして、第0サブ行列H、第1サブ行列H、第2サブ行列H、第3サブ行列H、第4サブ行列H、第5サブ行列Hから生成する時変周期6のLDPC−CCについて考える。
【0032】
時変周期6、符号化率(n−1)/n(nは2以上の整数)のLDPC−CCにおいて、時点iのパリティビットをPi及び情報ビットをXi,1、Xi,2、・・・、Xi,n−1であらわす。このとき、i%6=kとすると(k=0、1、2、3、4、5)、式(4−(k))のパリティ検査多項式が成立する。例えば、i=8とすると、i%6=2(k=2)となるので、式(5)が成立する。
【0033】
【数5】

また、0を満たすパリティ検査式、式(4−g)のサブ行列(ベクトル)をHとする。
【0034】
式(4−0)〜(4−5)において、パリティビットと情報ビットとの関係を簡単化し、かつ、テイルバイティングを行わないとき、パリティビットが逐次的に求まるようにするために、a#q,1,3=0、b#q,3=0(q=0、1、2、3、4、5)とする。したがって、式(4−1)〜(4−5)の(0を満たす)パリティ検査多項式は、式(6−0)〜(6−5)のようにあらわされる。
【0035】
【数6】

また、第0サブ行列H、第1サブ行列H、第2サブ行列H、第3サブ行列H、第4サブ行列H、第5サブ行列Hを、式(7−0)〜(7−5)のようにとあらわすとする。
【0036】
【数7】

式(7−0)〜(7−5)において、連続したn個の「1」は、式(6−0)〜式(6−5)の各式におけるX(D)、X(D)、・・・、Xn−1(D)およびP(D)の項に相当する。
【0037】
このとき、パリティ検査行列Hは、図4のようにあらわすことができる。図4に示すように、パリティ検査行列Hにおいて、第i行と第i+1行とでは、サブ行列がn列右にシフトした構成となる(図4参照)。そして、送信ベクトルuを、u=(X1,0、X2,0、・・・、Xn−1,0、P、X1,1、X2,1、・・・、Xn−1,1、P、・・・、X1,k、X2,k、・・・、Xn−1,k、P、・・・・)とすると、Hu=0が成立する。(ただし、「0」とは、すべての要素が0の(列)ベクトルである。)
ここで、高い誤り訂正能力を得ることができる、式(6−0)〜(6−5)のパリティ検査多項式における条件の例を記述する。
【0038】
(D)、X(D)、・・・、Xn−1(D)に関連する項に対して、以下の<条件#1−1>及び<条件#1−2>が重要となる。なお、以下の各条件において「%」はmoduloを意味し、例えば、「α%6」は、αを6で除算したときの余りを示す。
【0039】
<条件#1−1>
「a#0,1,1%6=a#1,1,1%6=a#2,1,1%6=a#3,1,1%6=a#4,1,1%6=a#5,1,1%6=vp=1 (vp=1:固定値)」
「a#0,2,1%6=a#1,2,1%6=a#2,2,1%6=a#3,2,1%6=a#4,2,1%6=a#5,2,1%6=vp=2 (vp=2:固定値)」
「a#0,3,1%6=a#1,3,1%6=a#2,3,1%6=a#3,3,1%6=a#4,3,1%6=a#5,3,1%6=vp=3 (vp=3:固定値)」
「a#0,4,1%6=a#1,4,1%6=a#2,4,1%6=a#3,4,1%6=a#4,4,1%6=a#5,4,1%6=vp=4 (vp=4:固定値)」



「a#0,k,1%6=a#1,k,1%6=a#2,k,1%6=a#3,k,1%6=a#4,k,1%6=a#5,k,1%6=vp=k (vp=k:固定値) (したがって、k=1、2、・・・、n−1となる。)」



「a#0,n−2,1%6=a#1,n−2,1%6=a#2,n−2,1%6=a#3,n−2,1%6=a#4,n−2,1%6=a#5,n−2,1%6=vp=n−2 (vp=n−2:固定値)」
「a#0,n−1,1%6=a#1,n−1,1%6=a#2,n−1,1%6=a#3,n−1,1%6=a#4,n−1,1%6=a#5,n−1,1%6=vp=n−1 (vp=n−1:固定値)」
及び、
「b#0,1%6=b#1,1%6=b#2,1%6=b#3,1%6=b#4,1%6=b#5,1%6=w (w:固定値)」


<条件#1−2>
「a#0,1,2%6=a#1,1,2%6=a#2,1,2%6=a#3,1,2%6=a#4,1,2%6=a#5,1,2%6=yp=1 (yp=1:固定値)」
「a#0,2,2%6=a#1,2,2%6=a#2,2,2%6=a#3,2,2%6=a#4,2,2%6=a#5,2,2%6=yp=2 (yp=2:固定値)」
「a#0,3,2%6=a#1,3,2%6=a#2,3,2%6=a#3,3,2%6=a#4,3,2%6=a#5,3,2%6=yp=3 (yp=3:固定値)」
「a#0,4,2%6=a#1,4,2%6=a#2,4,2%6=a#3,4,2%6=a#4,4,2%6=a#5,4,2%6=yp=4 (yp=4:固定値)」



「a#0,k,2%6=a#1,k,2%6=a#2,k,2%6=a#3,k,2%6=a#4,k,2%6=a#5,k,2%6=yp=k (yp=k:固定値) (したがって、k=1、2、・・・、n−1となる。)」



「a#0,n−2,2%6=a#1,n−2,2%6=a#2,n−2,2%6=a#3,n−2,2%6=a#4,n−2,2%6=a#5,n−2,2%6=yp=n−2 (yp=n−2:固定値)」
「a#0,n−1,2%6=a#1,n−1,2%6=a#2,n−1,2%6=a#3,n−1,2%6=a#4,n−1,2%6=a#5,n−1,2%6=yp=n−1 (yp=n−1:固定値)」
及び、
「b#0,2%6=b#1,2%6=b#2,2%6=b#3,2%6=b#4,2%6=b#5,2%6=z (z:固定値)」
<条件#1−1>及び<条件#1−2>を制約条件とすることにより、制約条件を満たすLDPC−CCは、正則(Regular)LDPC符号となるので、高い誤り訂正能力を得ることができる。
【0040】
次に、他の重要な制約条件について説明する。
【0041】
<条件#2−1>
<条件#1−1>において、vp=1、vp=2、vp=3、vp=4、・・・、vp=k 、・・・、vp=n−2、vp=n−1、及び、wを、「1」、「4」、「5」に設定する。つまり、vp=k(k=1、2、・・・、n−1)及びwを、「1」、及び、「時変周期6の約数以外の自然数」に設定する。
【0042】
<条件#2−2>
<条件#1−2>において、yp=1、yp=2、yp=3、yp=4、・・・、yp=k 、・・・、yp=n−2、yp=n−1及び、zを「1」、「4」、「5」と設定する。つまり、yp=k(k=1、2、・・・、n−1)及びzを、「1」、及び、「時変周期6の約数以外の自然数」に設定する。
【0043】
<条件#2−1>及び<条件#2−2>の制約条件、又は、<条件#2−1>若しくは<条件#2−2>の制約条件を付加することにより、時変周期を効果的に活用していることになる。この点について、図面を用いて、詳しく説明する。
【0044】
説明を簡単にするために、パリティ検査多項式に基づく時変周期6、符号化率(n−1)/nのLDPC−CCのパリティ検査多項式(6−0)〜(6−5)において、X(D)が2つの項をもつ場合を考える。すると、この場合、パリティ検査多項式は、式(8−0)〜(8−5)のようにあらわされる。
【0045】
【数8】

ここで、vp=k(k=1、2、・・・、n−1)及びwを、「3」に設定した場合を考える。「3」は、時変周期6の約数である。
【0046】
図5は、vp=1及びwを「3」に設定し、a#0,1,1%6=a#1,1,1%6=a#2,1,1%6=a#3,1,1%6=a#4,1,1%6=a#5,1,1%6=3としたときの情報Xのみに着目した場合の、チェックノード及び変数ノードのツリーを示している。
【0047】
式(8−q)のパリティ検査多項式を「検査式#q」と呼ぶ。なお、図5には、ツリーが「検査式#0」から描かれている。図5において、○(一重丸)及び◎(二重丸)は変数ノードを示し、□(四角)はチェックノードを示している。なお、○(一重丸)はX(D)に関連する変数ノードを示し、◎(二重丸)はDa#q、1,1(D)に関連する変数ノードを示している。また、#Y(Y=0,1,2,3,4,5)と記載された□(四角)は、式(8−Y)のパリティ検査多項式に相当するチェックノードであることを意味している。
【0048】
図5では、<条件#2−1>を満たさない、つまり、vp=1、vp=2、vp=3、vp=4、・・・、vp=k、・・・、vp=n−2、vp=n−1(k=1、2、・・・、n−1)及び、wが、時変周期6の約数のうち、1を除く約数に設定されている(w=3)。
【0049】
この場合、図5に示すように、チェックノードにおいて、#Yは0、3と限られた値にしかならない。つまり、時変周期を大きくしても、特定のパリティ検査多項式からしか信頼度が伝播されないため、時変周期を大きくした効果が得られないことを意味している。
【0050】
換言すると、#Yが限られた値しかとらないようになるための条件は、
「vp=1、vp=2、vp=3、vp=4、・・・、vp=k 、・・・、vp=n−2、vp=n−1(k=1、2、・・・、n−1)及びwを、時変周期6の約数のうち、1を除く約数に設定する」ことになる。
【0051】
これに対し、図6は、パリティ検査多項式において、vp=k(k=1、2、・・・、n−1)及びwが「1」に設定された場合のツリーである。vp=k(k=1、2、・・・、n−1)及びwが「1」に設定される場合には、<条件#2−1>の条件が満たされる。
【0052】
図6に示すように、<条件#2−1>の条件が満たされる場合には、チェックノードにおいて、#Yは、0から5まで、すべての値をとる。すなわち、<条件#2−1>の条件が満たされる場合には、信頼度が全てのパリティ検査多項式から伝播されるようになる。この結果、時変周期を大きくした場合にも、信頼度が広範囲から伝播されるようになり、時変周期を大きくした効果を得ることができるようになる。つまり、<条件#2−1>は、時変周期を大きくした効果を得るために、重要な条件であることがわかる。同様に、<条件#2−2>は、時変周期を大きくした効果を得るための重要な条件となる。
【0053】
[時変周期7]
以上を考慮すると、時変周期が素数であることが、時変周期を大きくした効果を得るための重要な条件となる。
【0054】
符号化率(n−1)/n(nは2以上の整数)、時変周期7のLDPC−CCの(0を満たす)パリティ検査多項式として、式(9−0)〜(9−6)を考える。
【0055】
【数9】
式(9−q)において、a#q,p,1、a#q,p,2は1以上の自然数とし、a#q,p,1≠a#q,p,2が成立するものとする。また、b#q,1、b#q,2は1以上の自然数とし、b#q,1≠b#q,2が成立するものとする(q=0、1、2、3、4、5、6;p=1、2、・・・、n−1)。
【0056】
時変周期7、符号化率(n−1)/n(nは2以上の整数)のLDPC−CCにおいて、時点iのパリティビットをPi及び情報ビットをXi,1、Xi,2、・・・、Xi,n−1であらわす。このとき、i%7=kとすると(k=0、1、2、3、4、5、6)、式(9−(k))のパリティ検査多項式が成立する。
【0057】
例えば、i=8とすると、i%7=1(k=1)となるので、式(10)が成立する。
【0058】
【数10】

また、式(9−g)のサブ行列(ベクトル)をHとするとパリティ検査行列は、 [パリティ検査多項式に基づくLDPC−CC]で述べた方法で作成することができる。ここで、第0サブ行列、第1サブ行列、第2サブ行列、第3サブ行列、第4サブ行列、第5サブ行列、第6サブ行列を、式(11−0)〜(11−6)のようにあらわす。
【0059】
【数11】

式(11−0)〜(11−6)において、連続したn個の「1」は、式(9−0)〜(9−6)の各式におけるX(D)、X(D)、・・・、Xn−1(D)及びP(D)の項に相当する。
【0060】
このとき、パリティ検査行列Hは、図7のようにあらわすことができる。図7に示すように、パリティ検査行列Hにおいて、第i行と第i+1行とでは、サブ行列がn列右にシフトした構成となる(図7参照)。そして、送信ベクトルuを、u=(X1,0、X2,0、・・・、Xn−1,0、P、X1,1、X2,1、・・・、Xn−1,1、P、・・・、X1,k、X2,k、・・・、Xn−1,k、P、・・・・)とすると、Hu=0が成立する。(ただし、「0」とは、すべての要素が0の(列)ベクトルである。)
ここで、高い誤り訂正能力を得るための、式(9−0)〜式(9−6)におけるパリティ検査多項式の条件は、時変周期6と同様に以下のようになる。なお、以下の各条件において「%」はmoduloを意味し、例えば、「α%7」は、αを7で除算したときの余りを示す。
【0061】
<条件#1−1’>
「a#0,1,1%7=a#1,1,1%7=a#2,1,1%7=a#3,1,1%7=a#4,1,1%7=a#5,1,1%7=a#6,1,1%7=vp=1 (vp=1:固定値)」
「a#0,2,1%7=a#1,2,1%7=a#2,2,1%7=a#3,2,1%7=a#4,2,1%7=a#5,2,1%7=a#6,2,1%7=vp=2 (vp=2:固定値)」
「a#0,3,1%7=a#1,3,1%7=a#2,3,1%7=a#3,3,1%7=a#4,3,1%7=a#5,3,1%7==a#6,3,1%7vp=3 (vp=3:固定値)」
「a#0,4,1%7=a#1,4,1%7=a#2,4,1%7=a#3,4,1%7=a#4,4,1%7=a#5,4,1%7=a#6,4,1%7=vp=4 (vp=4:固定値)」



「a#0,k,1%7=a#1,k,1%7=a#2,k,1%7=a#3,k,1%7=a#4,k,1%7=a#5,k,1%7=a#6,k,1%7=vp=k (vp=k:固定値) (したがって、k=1、2、・・・、n−1となる。)」



「a#0,n−2,1%7=a#1,n−2,1%7=a#2,n−2,1%7=a#3,n−2,1%7=a#4,n−2,1%7=a#5,n−2,1%7=a#6,n−2,1%7=vp=n−2 (vp=n−2:固定値)」
「a#0,n−1,1%7=a#1,n−1,1%7=a#2,n−1,1%7=a#3,n−1,1%7=a#4,n−1,1%7=a#5,n−1,1%7=a#6,n−1,1%7=vp=n−1 (vp=n−1:固定値)」
及び、
「b#0,1%7=b#1,1%7=b#2,1%7=b#3,1%7=b#4,1%7=b#5,1%7=b#6,1%7=w (w:固定値)」

<条件#1−2’>
「a#0,1,2%7=a#1,1,2%7=a#2,1,2%7=a#3,1,2%7=a#4,1,2%7=a#5,1,2%7=a#6,1,2%7=yp=1 (yp=1:固定値)」
「a#0,2,2%7=a#1,2,2%7=a#2,2,2%7=a#3,2,2%7=a#4,2,2%7=a#5,2,2%7=a#6,2,2%7=yp=2 (yp=2:固定値)」
「a#0,3,2%7=a#1,3,2%7=a#2,3,2%7=a#3,3,2%7=a#4,3,2%7=a#5,3,2%7=a#6,3,2%7=yp=3 (yp=3:固定値)」
「a#0,4,2%7=a#1,4,2%7=a#2,4,2%7=a#3,4,2%7=a#4,4,2%7=a#5,4,2%7=a#6,4,2%7=yp=4 (yp=4:固定値)」



「a#0,k,2%7=a#1,k,2%7=a#2,k,2%7=a#3,k,2%7=a#4,k,2%7=a#5,k,2%7=a#6,k,2%7=yp=k (yp=k:固定値) (したがって、k=1、2、・・・、n−1となる。)」



「a#0,n−2,2%7=a#1,n−2,2%7=a#2,n−2,2%7=a#3,n−2,2%7=a#4,n−2,2%7=a#5,n−2,2%7=a#6,n−2,2%7=yp=n−2 (yp=n−2:固定値)」
「a#0,n−1,2%7=a#1,n−1,2%7=a#2,n−1,2%7=a#3,n−1,2%7=a#4,n−1,2%7=a#5,n−1,2%7=a#6,n−1,2%7=yp=n−1 (yp=n−1:固定値)」
及び、
「b#0,2%7=b#1,2%7=b#2,2%7=b#3,2%7=b#4,2%7=b#5,2%7=b#6,2%7=z (z:固定値)」
<条件#1−1’>及び<条件#1−2’>を制約条件とすることにより、制約条件を満たすLDPC−CCは、正則(Regular)LDPC符号となるので、高い誤り訂正能力を得ることができる。
【0062】
ところで、時変周期6の場合には、高い誤り訂正能力を得るためには、さらに<条件#2−1>及び<条件#2−2>、又は、<条件#2−1>若しくは<条件#2−2>が必要であった。これに対し、時変周期7のように時変周期が素数の場合には、時変周期6の場合に必要であった<条件#2−1>及び<条件#2−2>、又は、<条件#2−1>若しくは<条件#2−2>に相当する条件が不要となる。
【0063】
つまり、
<条件#1−1’>において、vp=1、vp=2、vp=3、vp=4、・・・、vp=k 、・・・、vp=n−2、vp=n−1(k=1、2、・・・、n−1)及びwの値は、「0、1、2、3、4、5、6」のいずれの値であってもよい。
【0064】
また、
<条件#1−2’>において、yp=1、yp=2、yp=3、yp=4、・・・、yp=k 、・・・、yp=n−2、yp=n−1(k=1、2、・・・、n−1)及びzの値は、「0,1、2、3、4、5、6」のいずれの値であってもよい。
【0065】
その理由について、以下で説明する。
【0066】
説明を簡単にするために、パリティ検査多項式に基づく時変周期7、符号化率(n−1)/nのLDPC−CCのパリティ検査多項式(9−0)〜(9−6)において、X(D)が2つの項をもつ場合を考える。すると、この場合、パリティ検査多項式は、式(12−0)〜(12−6)のようにあらわされる。
【0067】
【数12】
ここで、vp=k(k=1、2、・・・、n−1)及びwを、「2」に設定した場合を考える。
【0068】
図8は、vp=1及びwを「2」に設定し、a#0,1,1%7=a#1,1,1%7=a#2,1,1%7=a#3,1,1%7=a#4,1,1%7=a#5,1,1%7=a#6,1,1%7=2としたときの情報Xのみに着目した場合の、チェックノード及び変数ノードのツリーを示している。
【0069】
式(12−q)のパリティ検査多項式を「検査式#q」と呼ぶ。なお、図8には、ツリーが「検査式#0」から描かれている。図8において、○(一重丸)及び◎(二重丸)は変数ノードを示し、□(四角)はチェックノードを示している。なお、○(一重丸)はX(D)に関連する変数ノードを示し、◎(二重丸)はDa#q、1,1(D)に関連する変数ノードを示している。また、#Y(Y=0,1,2,3,4,5,6)と記載された□(四角)は、式(12−Y)のパリティ検査多項式に相当するチェックノードであることを意味している。
【0070】
時変周期6の場合、例えば、図5に示したように、#Yが限られた値のみをとり、チェックノードが限られたパリティ検査多項式としか接続されないケースが存在する。これに対し、時変周期7のように、時変周期が7(素数)の場合、図8のように、#Yは0から6までのすべての値をとり、チェックノードは、全てのパリティ検査多項式と接続されるようになる。そのため、信頼度が全てのパリティ検査多項式から伝播されるようになる。この結果、時変周期を大きくした場合にも、信頼度が広範囲から伝播されるようになり、時変周期を大きくした効果を得ることができるようになる。なお、図8は、a#q,1,1%7(q=0、1、2、3、4、5、6)を「2」に設定した場合のツリーを示したが、「0」以外の値であれば、どの値に設定しても、チェックノードは、全てのパリティ検査多項式と接続されるようになる。
【0071】
このように、時変周期を素数とすると、時変周期が素数でない場合に比べ、高い誤り訂正能力を得るためのパラメータ設定に関する制約条件が、大きく緩和されることがわかる。そして、制約条件が緩和されることにより、さらに別の制約条件を付加して、より高い誤り訂正能力を得ることができるようになる。以下では、その符号構成方法について記述する。
【0072】
[時変周期q(qは3より大きい素数):式(13)]
先ず、符号化率(n−1)/n、時変周期q(qは3より大きい素数)のg番目(g=0、1、・・・、q−1)のパリティ検査多項式が式(13)のようにあらわされる場合について考える。
【0073】
【数13】

式(13)において、a#g,p,1、a#g,p,2は1以上の自然数とし、a#g,p,1≠a#g,p,2が成立するものとする。また、b#g,1、b#g,2は1以上の自然数とし、b#g,1≠b#g,2が成立するものとする(g=0、1、2、・・・、q−2、q−1;p=1、2、・・・、n−1)。
【0074】
上述での説明と同様に、以下に記載する<条件#3−1>及び<条件#3−2>は、LDPC−CCが高い誤り訂正能力を得る上で重要な要件の一つとなる。なお、以下の各条件において「%」はmoduloを意味し、例えば、「α%q」は、αをqで除算したときの余りを示す。
【0075】

<条件#3−1>
「a#0,1,1%q=a#1,1,1%q=a#2,1,1%q=a#3,1,1%q=・・・=a#g,1,1%q=・・・=a#q−2,1,1%q=a#q−1,1,1%q=vp=1 (vp=1:固定値)」
「a#0,2,1%q=a#1,2,1%q=a#2,2,1%q=a#3,2,1%q=・・・=a#g,2,1%q=・・・=a#q−2,2,1%q=a#q−1,2,1%q=vp=2 (vp=2:固定値)」
「a#0,3,1%q=a#1,3,1%q=a#2,3,1%q=a#3,3,1%q=・・・=a#g,3,1%q=・・・=a#q−2,3,1%q=a#q−1,3,1%q=vp=3 (vp=3:固定値)」
「a#0,4,1%q=a#1,4,1%q=a#2,4,1%q=a#3,4,1%q=・・・=a#g,4,1%q=・・・=a#q−2,4,1%q=a#q−1,4,1%q=vp=4 (vp=4:固定値)」



「a#0,k,1%q=a#1,k,1%q=a#2,k,1%q=a#3,k,1%q=・・・=a#g,k,1%q=・・・=a#q−2,k,1%q=a#q−1,k,1%q=vp=k (vp=k:固定値)
(したがって、k=1、2、・・・、n−1となる。)」



「a#0,n−2,1%q=a#1,n−2,1%q=a#2,n−2,1%q=a#3,n−2,1%q=・・・=a#g,n−2,1%q=・・・=a#q−2,n−2,1%q=a#q−1,n−2,1%q=vp=n−2 (vp=n−2:固定値)」
「a#0,n−1,1%q=a#1,n−1,1%q=a#2,n−1,1%q=a#3,n−1,1%q=・・・=a#g,n−1,1%q=・・・=a#q−2,n−1,1%q=a#q−1,n−1,1%q=vp=n−1 (vp=n−1:固定値)」
及び、
「b#0,1%q=b#1,1%q=b#2,1%q=b#3,1%q=・・・=b#g,1%q=・・・=b#q−2,1%q=b#q−1,1%q=w (w:固定値)」

<条件#3−2>
「a#0,1,2%q=a#1,1,2%q=a#2,1,2%q=a#3,1,2%q=・・・=a#g,1,2%q=・・・=a#q−2,1,2%q=a#q−1,1,2%q=yp=1 (yp=1:固定値)」
「a#0,2,2%q=a#1,2,2%q=a#2,2,2%q=a#3,2,2%q=・・・=a#g,2,2%q=・・・=a#q−2,2,2%q=a#q−1,2,2%q=yp=2 (yp=2:固定値)」
「a#0,3,2%q=a#1,3,2%q=a#2,3,2%q=a#3,3,2%q=・・・=a#g,3,2%q=・・・=a#q−2,3,2%q=a#q−1,3,2%q=yp=3 (yp=3:固定値)」
「a#0,4,2%q=a#1,4,2%q=a#2,4,2%q=a#3,4,2%q=・・・=a#g,4,2%q=・・・=a#q−2,4,2%q=a#q−1,4,2%q=yp=4 (yp=4:固定値)」



「a#0,k,2%q=a#1,k,2%q=a#2,k,2%q=a#3,k,2%q=・・・=a#g,k,2%q=・・・=a#q−2,k,2%q=a#q−1,k,2%q=yp=k (yp=k:固定値)
(したがって、k=1、2、・・・、n−1となる。)」



「a#0,n−2,2%q=a#1,n−2,2%q=a#2,n−2,2%q=a#3,n−2,2%q=・・・=a#g,n−2,2%q=・・・=a#q−2,n−2,2%q=a#q−1,n−2,2%q=yp=n−2 (yp=n−2:固定値)」
「a#0,n−1,2%q=a#1,n−1,2%q=a#2,n−1,2%q=a#3,n−1,2%q=・・・=a#g,n−1,2%q=・・・=a#q−2,n−1,2%q=a#q−1,n−1,2%q=yp=n−1 (yp=n−1:固定値)」
及び、
「b#0,2%q=b#1,2%q=b#2,2%q=b#3,2%q=・・・=b#g,2%q=・・・=b#q−2,2%q=b#q−1,2%q=z (z:固定値)」
加えて、(vp=1,yp=1)、(vp=2,yp=2)、(vp=3,yp=3)、・・・(vp=k,yp=k)、・・・、(vp=n−2,yp=n−2)、(vp=n−1,yp=n−1)、及び、(w,z)のセットに対し、<条件#4−1>又は<条件#4−2>が成立すると、高い誤り訂正能力を得ることができる。ここで、k=1、2、・・・、n−1である。
【0076】

<条件#4−1>
(vp=i,yp=i)及び(vp=j,yp=j)を考える。ただし、i=1,2,・・・,n−1、j=1,2,・・・,n−1、及び、i≠jとする。このとき、(vp=i,yp=i)≠(vp=j,yp=j)及び(vp=i,yp=i)≠(yp=j,vp=j)が成立するi,j(i≠j)が存在する。
【0077】
<条件#4−2>
(vp=i,yp=i)及び(w,z)を考える。ただし、i=1,2,・・・,n−1とする。このとき、(vp=i,yp=i)≠(w,z)及び(vp=i,yp=i)≠(z,w)が成立するiが存在する。
【0078】
なお、<条件#4−1,条件#4−2>の制約条件をさらに厳しくすることにより、誤り訂正能力がより高い時変周期q(qは3より大きい素数)のLDPC−CCを生成できる可能性がある。その条件は、<条件#5−1>及び<条件#5−2>、又は、<条件#5−1>若しくは<条件#5−2>が成立することである。
【0079】
<条件#5−1>
(vp=i,yp=i)及び(vp=j,yp=j)を考える。ただし、i=1,2,・・・,n−1、j=1,2,・・・,n−1、及び、i≠jとする。このとき、(vp=i,yp=i)≠(vp=j,yp=j)及び(vp=i,yp=i)≠(yp=j,vp=j)がすべてのi,j(i≠j)で成立する。
【0080】
<条件#5−2>
(vp=i,yp=i)及び(w,z)を考える。ただし、i=1,2,・・・,n−1とする。このとき、(vp=i,yp=i)≠(w,z)及び(vp=i,yp=i)≠(z,w)がすべてのiで成立する。
【0081】
また、vp=i≠yp=i(i=1,2,・・・,n−1)、w≠zが成立する場合、タナーグラフにおいて、短いループの発生を抑えることができる。
【0082】
加えて、2n<qのとき、(vp=i,yp=i)及び(z,w)をすべて異なる値とした場合、より誤り訂正能力が高い時変周期q(qは3より大きい素数)のLDPC−CCを生成できる可能性がある。
【0083】
また、2n≧qのとき、(vp=i,yp=i)及び(z,w)を、0、1、2、・・・、q−1のうちすべての値が存在するように設定すると、より誤り訂正能力が高い時変周期q(qは3より大きい素数)のLDPC−CCを生成できる可能性がある。
【0084】
以上の説明において、時変周期q(qは3より大きい素数)のLDPC−CCのg番目のパリティ検査多項式として、X(D)、X(D)、・・・、Xn−1(D)及びP(D)において項数が3の式(13)を扱った。なお、式(13)において、X(D)、X(D)、・・・、Xn−1(D)、P(D)のいずれかの項数が1、2の場合においても高い誤り訂正能力を得ることができる可能性がある。例えば、X(D)の項数を1又は2とする方法としては、次のような方法がある。時変周期qの場合、q個の0を満たすパリティ検査多項式が存在することになるが、q個の0を満たすパリティ検査多項式すべてにおいて、X(D)の項数を1又は2とする。又は、q個の0を満たすパリティ検査多項式すべてにおいて、X(D)の項数を1又は2とせずに、q個の0を満たすパリティ検査多項式のうち、いずれか(q−1個以下)の0を満たすパリティ検査多項式において、X(D)の項数を1又は2としてもよい。X(D)、・・・、Xn−1(D)、P(D)についても同様である。この場合においても、上述で述べた条件を満たすことが、高い誤り訂正能力を得る上で重要な条件となる。ただし、削減された項に関する条件は不要となる。
【0085】
また、X(D)、X(D)、・・・、Xn−1(D)、P(D)のいずれかの項数が4以上となる場合においても、高い誤り訂正能力を得ることができる可能性がある。例えば、X(D)の項数を4以上とする方法としては、次のような方法がある。時変周期qの場合、q個の0を満たすパリティ検査多項式が存在することになるが、q個の0を満たすパリティ検査多項式すべてにおいて、X(D)の項数を4以上とする。又は、q個の0を満たすパリティ検査多項式すべてにおいて、X(D)の項数を4以上とせずに、q個の0を満たすパリティ検査多項式のうち、いずれか(q−1個以下)の0を満たすパリティ検査多項式において、X(D)の項数を4以上としてもよい。X(D)、・・・、Xn−1(D)、P(D)についても同様である。このとき、増えた項に対しては上記で説明した条件が除外される。
【0086】
[時変周期h(hは3より大きい素数以外の整数):式(14)]
次に、時変周期hが、3より大きい素数以外の整数の場合における符号構成方法について考える。
【0087】
先ず、符号化率(n−1)/n、時変周期h(hは3より大きい素数以外の整数)のg番目(g=0、1、・・・、h−1)のパリティ検査多項式が式(14)のようにあらわされる場合について考える。
【0088】
【数14】
式(14)において、a#g,p,1、a#g,p,2は1以上の自然数とし、a#g,p,1≠a#g,p,2、が成立するものとする。また、b#g,1、b#g,2は1以上の自然数とし、b#g,1≠b#g,2が成立するものとする(g=0、1、2、・・・、h−2、h−1;p=1、2、・・・、n−1)。
上述での説明と同様に、以下に記載する<条件#6−1>及び<条件#6−2>は、LDPC−CCが高い誤り訂正能力を得る上で重要な要件の一つとなる。なお、以下の各条件において「%」はmoduloを意味し、例えば、「α%h」は、αをhで除算したときの余りを示す。
【0089】

<条件#6−1>
「a#0,1,1%h=a#1,1,1%h=a#2,1,1%h=a#3,1,1%h=・・・=a#g,1,1%h=・・・=a#h−2,1,1%h=a#h−1,1,1%h=vp=1 (vp=1:固定値)」
「a#0,2,1%h=a#1,2,1%h=a#2,2,1%h=a#3,2,1%h=・・・=a#g,2,1%h=・・・=a#h−2,2,1%h=a#h−1,2,1%h=vp=2 (vp=2:固定値)」
「a#0,3,1%h=a#1,3,1%h=a#2,3,1%h=a#3,3,1%h=・・・=a#g,3,1%h=・・・=a#h−2,3,1%h=a#h−1,3,1%h=vp=3 (vp=3:固定値)」
「a#0,4,1%h=a#1,4,1%h=a#2,4,1%h=a#3,4,1%h=・・・=a#g,4,1%h=・・・=a#h−2,4,1%h=a#h−1,4,1%h=vp=4 (vp=4:固定値)」



「a#0,k,1%h=a#1,k,1%h=a#2,k,1%h=a#3,k,1%h=・・・=a#g,k,1%h=・・・=a#h−2,k,1%h=a#h−1,k,1%h=vp=k (vp=k:固定値)
(したがって、k=1、2、・・・、n−1となる。)」



「a#0,n−2,1%h=a#1,n−2,1%h=a#2,n−2,1%h=a#3,n−2,1%h=・・・=a#g,n−2,1%h=・・・=a#h−2,n−2,1%h=a#h−1,n−2,1%h=vp=n−2 (vp=n−2:固定値)」
「a#0,n−1,1%h=a#1,n−1,1%h=a#2,n−1,1%h=a#3,n−1,1%h=・・・=a#g,n−1,1%h=・・・=a#h−2,n−1,1%h=a#h−1,n−1,1%h=vp=n−1 (vp=n−1:固定値)」
及び、
「b#0,1%h=b#1,1%h=b#2,1%h=b#3,1%h=・・・=b#g,1%h=・・・=b#h−2,1%h=b#h−1,1%h=w (w:固定値)」

<条件#6−2>
「a#0,1,2%h=a#1,1,2%h=a#2,1,2%h=a#3,1,2%h=・・・=a#g,1,2%h=・・・=a#h−2,1,2%h=a#h−1,1,2%h=yp=1 (yp=1:固定値)」
「a#0,2,2%h=a#1,2,2%h=a#2,2,2%h=a#3,2,2%h=・・・=a#g,2,2%h=・・・=a#h−2,2,2%h=a#h−1,2,2%h=yp=2 (yp=2:固定値)」
「a#0,3,2%h=a#1,3,2%h=a#2,3,2%h=a#3,3,2%h=・・・=a#g,3,2%h=・・・=a#h−2,3,2%h=a#h−1,3,2%h=yp=3 (yp=3:固定値)」
「a#0,4,2%h=a#1,4,2%h=a#2,4,2%h=a#3,4,2%h=・・・=a#g,4,2%h=・・・=a#h−2,4,2%h=a#h−1,4,2%h=yp=4 (yp=4:固定値)」



「a#0,k,2%h=a#1,k,2%h=a#2,k,2%h=a#3,k,2%h=・・・=a#g,k,2%h=・・・=a#h−2,k,2%h=a#h−1,k,2%h=yp=k (yp=k:固定値)
(したがって、k=1、2、・・・、n−1となる。)」



「a#0,n−2,2%h=a#1,n−2,2%h=a#2,n−2,2%h=a#3,n−2,2%h=・・・=a#g,n−2,2%h=・・・=a#h−2,n−2,2%h=a#h−1,n−2,2%h=yp=n−2 (yp=n−2:固定値)」
「a#0,n−1,2%h=a#1,n−1,2%h=a#2,n−1,2%h=a#3,n−1,2%h=・・・=a#g,n−1,2%h=・・・=a#h−2,n−1,2%h=a#h−1,n−1,2%h=yp=n−1 (yp=n−1:固定値)」
及び、
「b#0,2%h=b#1,2%h=b#2,2%h=b#3,2%h=・・・=b#g,2%h=・・・=b#h−2,2%h=b#h−1,2%h=z (z:固定値)」

加えて、上述で説明したように、<条件#7−1>又は<条件#7−2>を付加することにより、より高い誤り訂正能力を得ることができる。
【0090】

<条件#7−1>
<条件#6−1>において、vp=1、vp=2、vp=3、vp=4、・・・、vp=k 、・・・、vp=n−2、vp=n−1(k=1、2、・・・、n−1)及びwを、「1」、及び、「時変周期hの約数以外の自然数」に設定する。
【0091】
<条件#7−2>
<条件#6−2>において、yp=1、yp=2、yp=3、yp=4、・・・、yp=k 、・・・、yp=n−2、yp=n−1(k=1、2、・・・、n−1)及びzを、「1」、及び、「時変周期hの約数以外の自然数」に設定する。
【0092】

そして、(vp=1,yp=1)、(vp=2,yp=2)、(vp=3,yp=3)、・・・(vp=k,yp=k)、・・・、(vp=n−2,yp=n−2)、(vp=n−1,yp=n−1)、及び、(w,z)のセットを考える。ここで、k=1、2、・・・、n−1である。すると、<条件#8−1>又は<条件#8−2>が成立すると、より高い誤り訂正能力を得ることができる。
【0093】
<条件#8−1>
(vp=i,yp=i)及び(vp=j,yp=j)を考える。ただし、i=1,2,・・・,n−1、j=1,2,・・・,n−1、及び、i≠jとする。このとき、(vp=i,yp=i)≠(vp=j,yp=j)及び(vp=i,yp=i)≠(yp=j,vp=j)が成立するi,j(i≠j)が存在する。
【0094】
<条件#8−2>
(vp=i,yp=i)及び(w,z)を考える。ただし、i=1,2,・・・,n−1とする。このとき、(vp=i,yp=i)≠(w,z)及び(vp=i,yp=i)≠(z,w)が成立するiが存在する。
【0095】
また、<条件#8−1,条件#8−2>の制約条件をさらに厳しくすることにより、誤り訂正能力がより高い時変周期h(hは3より大きい素数でない整数)のLDPC−CCを生成できる可能性がある。その条件は、<条件#9−1>及び<条件#9−2>、又は、<条件#9−1>若しくは<条件#9−2>が成立することである。
【0096】
<条件#9−1>
(vp=i,yp=i)及び(vp=j,yp=j)を考える。ただし、i=1,2,・・・,n−1、j=1,2,・・・,n−1、及び、i≠jとする。このとき、(vp=i,yp=i)≠(vp=j,yp=j)及び(vp=i,yp=i)≠(yp=j,vp=j)がすべてのi,j(i≠j)で成立する。
【0097】
<条件#9−2>
(vp=i,yp=i)及び(w,z)を考える。ただし、i=1,2,・・・,n−1とする。このとき、(vp=i,yp=i)≠(w,z)及び(vp=i,yp=i)≠(z,w)がすべてのiで成立する。
【0098】

また、vp=i≠yp=i(i=1,2,・・・,n−1)w≠zが成立する場合、タナーグラフにおいて、短いループの発生を抑えることができる。
【0099】
以上の説明において、時変周期h(hは3より大きい素数以外の整数)のLDPC−CCのg番目のパリティ検査多項式として、X(D)、X(D)、・・・、Xn−1(D)及びP(D)の項数が3の式(14)を扱った。なお、式(14)において、X(D)、X(D)、・・・、Xn−1(D)、P(D)のいずれかの項数が1、2の場合においても、高い誤り訂正能力を得ることができる可能性がある。例えば、X(D)の項数を1又は2とする方法としては、次のような方法ある。時変周期hの場合、h個の0を満たすパリティ検査多項式が存在することになるが、h個の0を満たすパリティ検査多項式すべてにおいて、X(D)の項数を1又は2とする。又は、h個の0を満たすパリティ検査多項式すべてにおいて、X(D)の項数を1又は2とせずに、h個の0を満たすパリティ検査多項式のうち、いずれか(h−1個以下)の0を満たすパリティ検査多項式において、X(D)の項数を1又は2としてもよい。X(D)、・・・、Xn−1(D)、P(D)についても同様である。この場合においても、上述で述べた条件を満たすことが、高い誤り訂正能力を得る上で重要な条件となる。ただし、削減された項に関する条件は不要となる。
【0100】
また、X(D)、X(D)、・・・、Xn−1(D)、P(D)のいずれかの項数が4以上となる場合においても、高い誤り訂正能力を得ることができる可能性がある。例えば、X(D)の項数を4以上とする方法としては、次のような方法ある。時変周期hの場合、h個の0を満たすパリティ検査多項式が存在することになるが、h個の0を満たすパリティ検査多項式すべてにおいて、X(D)の項数を4以上とする。又は、h個の0を満たすパリティ検査多項式すべてにおいて、X(D)の項数を4以上とせずに、h個の0を満たすパリティ検査多項式のうち、いずれか(h−1個以下)の0を満たすパリティ検査多項式において、X(D)の項数を4以上としてもよい。X(D)、・・・、Xn−1(D)、P(D)についても同様である。このとき、増えた項に対しては上記で説明した条件が除外される。
次に、上記で述べたパリティ検査多項式に基づくLDPC−CCの符号化方法及び符号化器の構成について記述する。
【0101】
一例として、先ず、符号化率1/2、時変周期3のLDPC−CCを考える。時変周期3のパリティ検査多項式を以下に与える。
【0102】
【数15】
このとき、P(D)はそれぞれ次式のように求まる。
【0103】
【数16】
そして、式(16−0)〜(16−2)をそれぞれ以下のようにあらわす。
【0104】
【数17】

このとき、式(17−0)に相当する回路を図9に示し、式(17−1)に相当する回路を図10に示し、式(17−2)に相当する回路を図11に示す。(ただし、テイルバイティングを行っていないものとする。)
そして、時点i=3kのとき、式(16−0)、つまり、式(17−0)に相当する図9に示す回路により、時点iのパリティビットを求めることになる。時点i=3k+1のとき、式(16−1)、つまり、式(17−1)に相当する図10に示す回路により、時点iのパリティビットを求めることになる。時点i=3k+2のとき、式(16−2)、つまり、式(17−2)に相当する図11に示す回路により、時点iのパリティビットを求めることになる。したがって、符号化器は、図12の構成を採ることができる。図12において、ウェイト制御部130は、時間とともに、ウェイトをコントロールするための信号を出力する。そして、図12の112−0から112−M、および、122−0から122―Mは、このウェイトをコントロールするための信号に基づき、ウェイトを時間とともに変更することになる。
【0105】
時変周期が3以外であり、符号化率が(n−1)/nの場合も、上述と同様にして、符号化を行うことができる。例えば、時変周期q、符号化率(n−1)/nのLDPC−CCのg番目(g=0、1、・・・、q−1)のパリティ検査多項式は式(13)であらわされることから、P(D)は以下のようにあらわされる。ただし、qは素数に限られない。
【0106】
【数18】
そして、式(18)を式(17−0)〜(17−2)と同様に表現すると以下のようにあらわされる。
【0107】
【数19】
ここで、X[i](r=1,2,…,n−1)は、時点iの情報ビットを示し、P[i]は、時点iのパリティビットを示している。
【0108】
したがって、時点iにおいて、i%q=kのとき、式(18)、式(19)において、式(18)、式(19)のgにkを代入した式を用いて、時点iのパリティビットを求めることができる。
ところで、LDPC−CCは畳み込み符号の一種となるため、情報ビットの復号における信頼度を確保するために、ターミネーションもしくはテイルバイティング(tail-biting)が必要、または、テイルバイティングを行うことになる。ここでは、ターミネーションを行う場合(「Information-zero-termination」又は簡単に「ゼロターミネーション(Zero-termination)」と呼ぶ)について考える。
【0109】
図13は、符号化率(n−1)/nのLDPC−CCにおける「Information-zero-termination」を説明するための図である。時点i(i=0、1、2、3、・・・、s)における情報ビットX、X、・・・、Xn−1及びパリティビットPを、X1,i、X2,i、・・・、Xn−1,i及びパリティビットPとする。そして、図13に示すように、Xn−1,sが送信したい情報の最終ビットであるとする。
【0110】
もし、符号化器が時点sまでしか符号化を行わず、符号化側の送信装置が、Pまでしか復号側の受信装置に伝送しなかった場合、復号器において情報ビットの受信品質が大きく劣化する。この問題を解決するために、最終の情報ビットXn−1,s以降の情報ビット(「仮想の情報ビット」と呼ぶ)を「0」と仮定して符号化を行い、パリティビット(1303)を生成する。
【0111】
具体的には、図13に示すように、符号化器は、X1,k、X2,k、・・・、Xn−1,k(k=t1、t2、・・・、tm)を「0」として符号化し、Pt1、Pt2、・・・、Ptmを得る。そして、符号化側の送信装置は、時点sにおけるX1,s、X2,s、・・・、Xn−1,s、Pを送信後、Pt1、Pt2、・・・、Ptmを送信する。復号器は、時点s以降では、仮想の情報ビットが「0」であるとわかっていることを利用し、復号を行う。
【0112】
「Information-zero-termination」を例とするターミネーションでは、例えば、図12のLDPC−CC符号化器100において、レジスタの初期状態は「0」として符号化を行う。別の解釈として、時点i=0から符号化する場合、例えば式(19)においてzが0より小さい場合、X[z]、X[z]、・・・、Xn−1[z]、P[z]を「0」として符号化を行うことになる。
【0113】
式(13)のサブ行列(ベクトル)をHとすると、第gサブ行列は次式のようにあらわすことができる。
【0114】
【数20】

ここで、n個連続した「1」は、式(13)の各式におけるX(D)、X(D)、・・・Xn−1(D)及びP(D)の項に相当する。
【0115】
よって、ターミネーションを用いたとき、式(13)であらわされる符号化率(n−1)/nの時変周期qのLDPC−CCの検査行列は、図14のようにあらわされる。
【0116】
図14に示すように、パリティ検査行列Hにおいて、第i行と第i+1行とでは、サブ行列がn列右にシフトした構成となる(図14参照)。ただし、1列目より左の要素(図14の例では、H’)は、パリティ検査行列には反映されないことになる(図14参照)。そして、送信ベクトルuを、u=(X1,0、X2,0、・・・、Xn−1,0、P、X1,1、X2,1、・・・、Xn−1,1、P、・・・、X1,k、X2,k、・・・、Xn−1,k、P、・・・・)とすると、Hu=0が成立する。(ただし、「0」とは、すべての要素が0の(列)ベクトルである。)
以上のように、符号化器は、時点iの情報ビットX[i](r=1,2,…,n−1)を入力とし、式(19)を用いて、上述で述べたように、時点iのパリティビットP[i]を生成し、パリティビット[i]を出力することにより、LDPC−CCの符号化を行うことができる。
【0117】

[パリティ検査多項式に基づくLDPC−CC]
以下では、従来の符号化率R=(n−1)/nの(nは2以上の整数)時変LDPC−CCについて記載する。
,X,・・・,Xn−1の情報ビット及びパリティビットPの時点jにおけるビットを、それぞれX1,j,X2,j,・・・,Xn−1,j及びPとあらわす。そして、時点jにおけるベクトルuをu=(X1,j,X2,j,・・・,Xn−1,j,P)とあらわす。また、符号化系列をu=(u,u,・・・,u,・・・)とあらわす。Dを遅延演算子とすると、情報ビットX,X,・・・,Xn−1の多項式はX(D),X(D),・・・,Xn−1(D)とあらわされ、パリティビットPの多項式はP(D)とあらわされる。このとき、式(21)であらわされる0を満たすパリティ検査多項式を考える。
【0118】
【数21】
式(21)においてap,q(p=1,2,・・・,n−1;q=1,2,・・・,r)及びb(s=1,2,・・・,ε)は自然数とする。また、y,z=1,2,・・・,r、y≠zの(y,z)に対して、ap,y≠ap,zを満たす。また、y,z=1,2,・・・,ε、y≠zの(y,z)に対して、b≠bを満たす。ここで、∀は、全称記号(universal quantifier)である。
【0119】
符号化率R=(n−1)/n、時変周期mのLDPC−CCを作成するために、式(21)に基づくパリティ検査多項式を用意する。このときi番目(i=0,1,・・・,m−1)のパリティ検査多項式を式(22)のようにあらわす。
【0120】
【数22】

式(22)において、AXδ,i(D)(δ=1,2,・・・,n−1)及びB(D)のDの最大次数をそれぞれΓXδ,i及びΓP,iとあらわす。そして、ΓXδ,i及びΓP,iの最大値をΓとする。そして、Γ(i=0,1,・・・,m−1)の最大値をΓとする。符号化系列uを考慮すると、Γを用いることにより、i番目のパリティ検査多項式に相当するベクトルhは式(23)のようにあらわされる。
【0121】
【数23】

式(23)において、hi,v(v=0,1,・・・,Γ)は1×nのベクトルであり、式(24)のようにあらわされる。
【0122】
【数24】

なぜなら、式(22)のパリティ検査多項式は、αi,v,Xw(D)及びβi,vP(D)(w=1,2,・・・,n−1、かつ、αi,v,Xw,βi,v∈[0,1])をもつからである。この場合、式(22)の0を満たすパリティ検査多項式は、D(D),D(D),・・・,Dn−1(D)及びDP(D)をもつので、式(25)を満たす。
【0123】
【数25】

式(25)において、kに対して、∧(k)=∧(k+m)を満たす。ただし、∧(k)はパリティ検査行列kの行目におけるhに相当する。
【0124】
式(23)、式(24)及び式(25)を用いることにより、符号化率R=(n−1)/n、時変周期mのパリティ検査多項式に基づくLDPC−CCのパリティ検査行列は、式(26)のようにあらわされる。
【0125】
【数26】

[パリティ検査多項式に基づくLDPC−CCの概要]
「時変周期が3より大きい、パリティ検査多項式に基づくLDPC−CC」に関する重要な事項の説明を行う。
【0126】
LDPC−CCは、LDPC−BCと同様に低密度なパリティ検査行列によって定義される符号であり、無限長の時変パリティ検査行列で定義することができるが、実際は、周期的時変のパリティ検査行列で考えることができる。
【0127】
パリティ検査行列をHとし、シンドロームフォーマーをHとすると、符号化率R=d/c(d<c)のLDPC−CCのHは、式(27)のようにあらわすことができる。
【0128】
【数27】
式(27)において、H(t)(i=0,1,・・・,m)は、c×(c−d)周期サブ行列であり、周期をTとするとi,tに対し、H(t)=H(t+T)が成立する。また、Mはメモリサイズとなる。
【0129】
式(27)によって定義されるLDPC−CCは時変畳み込み符号であり、この符号を時変LDPC−CCと呼ぶ。復号は、パリティ検査行列Hを用いBP復号が行われる。符号化系列ベクトルuとすると、以下の関係式が成立する。
【0130】
【数28】
そして、式(28)の関係式を用いてBP復号を行うことにより、情報系列が得られる。
【0131】
<パリティ検査多項式に基づくLDPC−CC>
符号化率R=1/2,生成行列G=[1 G(D)/G(D)]の組織的畳み込み符号を考える。このとき、Gはフィードフォワード多項式、Gはフィードバック多項式をあらわしている。
【0132】
情報系列の多項式表現をX(D)、パリティ系列の多項式表現をP(D)とすると0を満たすパリティ検査多項式は以下のようにあらわされる。
【0133】
【数29】
ここでは、式(29)を満たす式(30)のように与える。
【0134】
【数30】
式(30)において、a,bは1以上の整数であり(p=1,2,・・・,r;q=1,2,・・・,s)、X(D)およびP(D)にはDの項が存在する。式(30)の0を満たすパリティ検査多項式に基づくパリティ検査行列で定義される符号が時不変LDPC−CCとなる。
【0135】
式(30)に基づく異なるパリティ検査多項式をm個用意する(mは2以上の整数)。その0を満たすパリティ検査多項式を以下のようにあらわす。
【0136】
【数31】
このとき、i=0,1,・・・,m−1である。
【0137】
そして、時点jにおけるデータおよびパリティをX,Pであらわし、u=(X,P)とする。すると、式(32)の0を満たすパリティ検査多項式が成立するものとする。
【0138】
【数32】

すると、式(32)から時点jのパリティPを求めることができる。式(32)の0を満たすパリティ検査多項式に基づき生成されたパリティ検査行列で定義される符号が時変周期mのLDPC−CC(TV-m-LDPC-CC:Time-varying LDPC-CC with a time period of m)となる。
【0139】
このとき、式(30)で定義される時不変LDPC−CCおよび式(32)で定義されるTV-m-LDPC-CCは、P(D)にはDの項が存在し、かつ、bは1以上の整数である。そのため、逐次的にパリティをレジスタおよび排他的論理和で簡単に求めることができるという特徴をもつことになる。(ただし、テイルバイティングを行っていないとき。)
復号部は、時不変LDPC−CCでは式(30)からパリティ検査行列Hを作成し、TV-m-LDPC-CCでは式(32)からパリティ検査行列Hを作成する。そして、復号部は、符号化系列u=(u,u,・・・,u,・・・)に対して、式(28)を用いてBP復号を行い、情報系列を得る。
【0140】
次に、符号化率(n−1)/nの(nは2以上の整数)時不変LDPC−CCおよびTV-m-LDPC-CCを考える。時点jにおける情報系列X,X,・・・,Xn−1およびパリティPをX2,j,・・・,Xn−1,jおよびPとあらわし、u=(X1,j,X2,j,・・・,Xn−1,j,P)とする。そして、情報系列X,X,・・・,Xn−1の多項式表現をX(D),X(D),・・・,Xn−1(D)とすると、0を満たすパリティ検査多項式は以下のようにあらわされる。
【0141】
【数33】
式(33)において、ap,iは1以上の整数であり(p=1,2,・・・,n−1 ; i=1,2, ・・・,rp)、ap,y≠ap,z を満たし((y,z) | y, z=1,2,・・・,rp、 y≠z)、かつ、b≠bz を満たす
(y,z) | y, z=1,2,・・・,ε、y≠z)。
【0142】

式(33)に基づく異なるパリティ検査多項式をm個用意する(mは2以上の整数)。その0を満たすパリティ検査多項式を以下のようにあらわす。
【0143】
【数34】
このとき、i=0,1,・・・,m−1である。
【0144】
すると、時点jにおける情報X,X,・・・,Xn−1およびパリティPのX1,j,X2,j,・・・,Xn−1,jおよびPに対し、式(35)が成立するものとする。
【0145】
【数35】
このとき、式(33)および式(35)に基づく符号が符号化率(n−1)/nの時不変LDPC−CCおよびTV-m-LDPC-CCとなる。
【0146】
正則TV-m-LDPC-CCについて説明する。符号化率(n−1)/nのTV-m-LDPC-CCの#q番目の0を満たすパリティ検査多項式を以下のように与える(q=0,1,・・・,m−1)。
【0147】
【数36】
式(36)において、a#q,p,iは0以上の整数であり(p=1,2,・・・,n−1 ; i=1,2,・・・,rp)、a#q,p,y≠a#q,p,z を満たし((y,z) | y, z=1,2,・・・,rp、 y≠z)、かつ、b#q,y≠b#q,z を満たす((y,z) | y, z=1,2,・・・,ε、 y≠z)。
【0148】
すると、以下のような性質をもつ。
【0149】
性質1:
パリティ検査多項式#αのDa#α,p,iXp(D)の項とパリティ検査多項式#βのDa#β,p,jXp(D)の項(α,β=0,1,・・・,m−1;p=1,2,・・・,n-1; i,j=1,2,・・・,rp)において、また、パリティ検査多項式#αのDb#α,iP(D)の項とパリティ検査多項式#βのDb#β,jP(D)の項(α,β=0,1,・・・,m−1 (β≧α); i,j=1,2,・・・,rp)において以下の関係をもつ。
【0150】
<1>β=αのとき:
{a#α,p,i mod m=a#β,p,j mod m}∩{i≠j}が成立するとき、図15のようにパリティ検査多項式#αに相当するチェックノード及びパリティ検査多項式#βに相当するチェックノードの両者、とエッジを形成する変数ノード$1が存在する。
【0151】
{b#α,i mod m=b#β,jmod m}∩{i≠j}が成立するとき、図15のようにパリティ検査多項式#αに相当するチェックノード及びパリティ検査多項式#βに相当するチェックノードの両者、とエッジを形成する変数ノード$1が存在する。
【0152】
<2>β≠αのとき:
β−α=Lとする。
【0153】
1)a#α,p,i mod m<a#β,p,jmod mのとき
(a#β,p,j mod m)−(a#α,p,i mod m)=Lのとき、図15のようにパリティ検査多項式#αに相当するチェックノード及びパリティ検査多項式#βに相当するチェックノードの両者、とエッジを形成する変数ノード$1が存在する。
【0154】
2)a#α,p,i mod m>a#β,p,jmod mのとき
(a#β,p,j mod m)−(a#α,p,i mod m)=L+mのとき、図15のようにパリティ検査多項式#αに相当するチェックノード及びパリティ検査多項式#βに相当するチェックノードの両者、とエッジを形成する変数ノード$1が存在する。
【0155】
3)b#α,i mod m<b#β,j mod mのとき
(b#β,j mod m)−(b#α,i mod m)=Lのとき、図15のようにパリティ検査多項式#αに相当するチェックノードとパリティ検査多項式#βに相当するチェックノードの両者とエッジを形成する変数ノード$1が存在する。
【0156】
4)b#α,i mod m>b#β,j mod mのとき
(b#β,j mod m)−(b#α,i mod m)=L+mのとき、図15のようにパリティ検査多項式#αに相当するチェックノードとパリティ検査多項式#βに相当するチェックノードの両者とエッジを形成する変数ノード$1が存在する。
【0157】
そして、TV-m-LDPC-CCのサイクル長6(CL6:cycle length of 6)に対し、定理1が成立する。
【0158】
定理1:TV-m-LDPC-CCの0を満たすパリティ検査多項式において、以下の2つの条件を与える。
【0159】
C#1.1:a#q,p,imod m=a#q,p,j mod m=a#q,p,k mod mを満足するpおよびqが存在する。ただし、i≠j, i≠k, j≠kとする。
【0160】
C#1.2:b#q,imod m=b#q,j mod m=b#q,k mod mを満足するqが存在する。ただし、i≠j, i≠k, j≠kとする。
【0161】
C#1.1またはC#1.2を満足した時、少なくとも1つのCL6が存在する。
【0162】
証明:
p=1, q=0おいて、a#0,1,imod m=a#0,1,j mod m=a#0,1,k mod mのときに少なくとも1つのCL6が存在することが証明できれば、X2(D),・・・, Xn-1(D), P(D)についても、X1(D)をX2(D),・・・, Xn-1(D), P(D)に置き換えて考えることにより、q=0のとき、C#1,1, C#1.2が成立すれば、少なくとも1つのCL6が存在することが証明できる。
【0163】
また、q=0のとき上述が証明できれば、同様に考えることで、「q=1,・・・,m-1のときもC#1.1, C#1.2が成立すれば、少なくとも1つのCL6が存在する」ことが証明できる。
【0164】
したがって、p=1, q=0のとき、a#0,1,imod m=a#0,1,j mod m=a#0,1,k mod mが成立すれば少なくとも1つのCL6が存在することを証明する。
【0165】
式(36)のTV-m-LDPC-CCの0を満たすパリティ検査多項式に対し、q=0としたときのX1(D)において、2つ以下の項が存在する場合、C#1.1を満たすことはない。
【0166】
式(36)のTV−m−LDPC−CCの0を満たすパリティ検査多項式に対し、q=0としたときのX1(D)において、3つの項が存在し、かつ、a#q,p,i mod m=a#q,p,j mod m=a#q,p,k mod mを満足する、とすると、q=0の0を満たすパリティ検査多項式は、式(37)のようにあらわすことができる。
【0167】
【数37】
ここで、a#0,1,1>a#0,1,2>a#0,1,3としても一般性は失われず、γ,δは自然数となる。このとき、式(37)において、q=0のとき、X1(D)に関する項、つまり、(Da#0,1,3+mγ+mδ+Da#0,1,3+mδ+Da#0,1,3)X1(D)に着目する。このとき、パリティ検査行列Hにおいて、X(D)に関する部分のみを抽出して生成されるサブ行列は、図16のようにあらわされる。図16において、h1,X1, h2,X1,・・・, hm−1,X1は、それぞれ式(37)の0を満たすパリティ検査多項式において、q=1,2,・・・,m−1のときのX1(D)に関する部分のみを抽出して生成されるベクトルである。
【0168】
このとき、図16のような関係が成立するのは、性質1の<1>が成立するからである。したがって、γ,δ値に関わらず、式(37)のパリティ検査行列のX(D)に関する部分のみを抽出して生成されるサブ行列のみで、図16に示すように、△で示す“1”によって形成されるCL6が必ず発生する。
【0169】
(D)に関する項が4つ以上存在する場合、4つ以上の項の中から3つの項を選択し、選択された3つの項において、a#0,1,i mod m=a#0,1,jmod m=a#0,1,k mod mとなる場合、図16に示すように、CL6が形成される。
【0170】
以上より、q=0のとき、X(D)について、a#0,1,i mod m=a#0,1,j mod m=a#0,1,k mod mとなる場合、CL6が存在することになる。
【0171】
また、X(D),・・・,Xn−1(D),P(D)についても、X(D)に置き換えて考えることにより、C#1.1またはC#1.2が成立した場合、CL6が少なくとも1つ発生することになる。
【0172】
また、同様に考えることで、q=1,・・・,m−1のときについても、C#1.1またはC#1.2を満足した時、少なくとも1つのCL6が存在する。
【0173】
したがって、式(37)の0を満足するパリティ検査多項式において、C#1.1またはC#1.2が成立した場合、CL6が少なくとも1つ発生する。
【0174】
□(証明終わり)
以降で扱う符号化率(n−1)/nのTV-m-LDPC-CCの#q番目の0を満たすパリティ検査多項式を式(30)に基づき以下のように与える(q=0,・・・,m−1)。
【0175】
【数38】
ここで、式(38)において、X(D),X(D),・・・,Xn−1(D),P(D)にはそれぞれ3つの項が存在するものとする。
【0176】
定理1より、CL6の発生を抑えるために、式(38)のXq(D)において、{a#q,p,1 mod m≠a#q,p,2mod m}∩{a#q,p,1 mod m≠a#q,p,3mod m}∩{a#q,p,2 mod m≠a#q,p,3mod m}を満たす必要がある。同様に、式(38)のP(D)において、{b#q,1 mod m≠b#q,2mod m}∩{b#q,1 mod m≠b#q,3mod m}∩{b#q,2 mod m≠b#q,3mod m}を満たす必要がある。なお、∩は、積集合(Intersection)である。
【0177】
そして、性質1から、正則LDPC符号となるための条件の一例として、以下の条件を考える。
【0178】
C#2:qに対して、(a#q,p,1mod m, a#q,p,2 mod m, a#q,p,3 mod m)=(Np,1, Np,2, Np,3)∩(b#q,1 mod m, b#q,2mod m, b#q,3 mod m)= (M1, M2, M3)が成立する。ただし、{a#q,p,1 mod m≠a#q,p,2 mod m}∩{a#q,p,1 mod m≠a#q,p,3 mod m}∩{a#q,p,2 mod m≠a#q,p,3 mod m} および{b#q,1 mod m≠b#q,2 mod m}∩{b#q,1 mod m≠b#q,3 mod m}∩{b#q,2 mod m≠b#q,3 mod m} を満たす。なお、qのは、全称記号(universal quantifier)であり、qは、すべてのqを意味する。
【0179】
以降の議論では、C#2の条件を満足する正則TV-m-LDPC-CCを扱う。
【0180】
[正則TV-m-LDPC-CCの符号設計]
非特許文献9には、二元入力対象出力通信路において、一様ランダムな正則LDPC符号を最尤復号したときの復号誤り率が示されており、一様ランダムな正則LDPC符号によってGallagerの信頼度関数(非特許文献10参照)が達成できることが示されている。ただし、BP復号を行ったときに、一様ランダムな正則LDPC符号によりGallagerの信頼度関数が達成できるかどうかは不明である。
【0181】
ところで、LDPC-CCは、畳み込み符号のクラスに属している。畳み込み符号の信頼度関数については、非特許文献11及び非特許文献12に示されており、その信頼度は拘束長に依存していることが示されている。LDPC-CCは畳み込み符号であるので、パリティ検査行列において、畳み込み符号特有の構造をもつものの、時変周期を大きくすると、パリティ検査行列の「1」の存在する位置が一様ランダムに近づく。ただし、LDPC-CCは畳み込み符号であるため、パリティ検査行列は畳み込み符号特有の構造をもつこと、および、「1」の存在する位置は拘束長に依存することになる。
【0182】
これらの結果から、C#2の条件を満足する正則TV-m-LDPC-CCにおいて、符号設計に関して推論#1の推論を与える。
【0183】
推論#1:
BP復号を用いたとき、C#2の条件を満足する正則TV-m-LDPC-CCにおいて、TV-m-LDPC-CCの時変周期mが大きくなると、パリティ検査行列において、「1」の存在する位置に対し、一様ランダムに近づき、誤り訂正能力の高い符号が得られる。
【0184】
そして、推論#1を実現するための方法について以下では議論を行う。
【0185】
[正則TV-m-LDPC-CCの性質]
本議論で扱う符号化率(n−1)/nのC#2の条件を満足する正則TV-m-LDPC-CCの#q番目の0を満たすパリティ検査多項式である式(38)に関する、ツリーを描いた際に成り立つ性質を述べる。
【0186】
性質2:
C#2の条件を満足する正則TV-m-LDPC-CCにおいて、時変周期mが素数の場合、X1(D),・・・, Xn-1(D)のいずれかの項に着目し、C#3.1が成立する場合を考える。
【0187】
C#3.1:C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(38)において、qに対して、X(D)においてa#q,p,i mod m≠a#q,p,j mod mが成立する(q=0,・・・,m−1)。ただし、i≠jである。
【0188】
C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(38)において、C#3.1を満たすDa#q,p,iXp(D), Da#q,p,jXp(D)に対応する変数ノードのみに限ってツリーを描く場合を考える。
【0189】
このとき、性質1から、式(38)の0を満たす#q番目のパリティ検査多項式に相当するチェックノードを起点とするツリーには、qに対して、#0から#m−1のすべてのパリティ検査多項式に相当するチェックノードが存在する。
【0190】
同様に、C#2の条件を満足する正則TV-m-LDPC-CCにおいて、時変周期mが素数の場合、P(D)の項に着目し、C#3.2が成立する場合を考える。
【0191】
C#3.2:C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(38)において、qに対して、P(D)においてb#q,i mod m≠b#q,j mod mが成立する。ただし、i≠jである。
【0192】
C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(38)において、C#3.2を満たすDb#q,iP(D), Db#q,jP(D)に対応する変数ノードのみに限ってツリーを描く場合を考える。
【0193】
このとき、性質1から、式(38)の0を満たす#q番目のパリティ検査多項式に相当するチェックノードを起点とするツリーには、qに対して、#0から#m−1のすべてのパリティ検査多項式に相当するチェックノードが存在する。
【0194】
例:C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(38)において、時変周期m=7(素数)とし、qに対し、(b#q,1,b#q,2)=(2,0)が成立するものとする。したがって、C#3.2を満たす。
【0195】
そして、Db#q,1P(D), Db#q,2P(D)に対応する変数ノードのみに限ってツリーを描いたとき、式(38)の0を満たす#0番目のパリティ検査多項式に相当するチェックノードを起点とするツリーは図17のようにあらわされる。図17からわかるように、時変周期m=7は、性質2を満たす。
【0196】
性質3:
C#2の条件を満足する正則TV-m-LDPC-CCにおいて、時変周期mが素数でない場合、X1(D),・・・, Xn-1(D)のいずれかの項に着目し、C#4.1が成立する場合を考える。
【0197】
C#4.1:C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(38)において、qに対して、Xp(D)においてa#q,p,i mod m≧a#q,p,jmod mのとき、|a#q,p,i mod m−a#q,p,j mod m|がmの1を除く約数である。ただし、i≠jである。
【0198】
C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(38)において、C#4.1を満たすDa#q,p,iXp(D), Da#q,p,jXp(D)に対応する変数ノードのみに限ってツリーを描く場合を考える。このとき、性質1から、式(38)の0を満たす#q番目のパリティ検査多項式に相当するチェックノードを起点とするツリーには、qに対して、#0から#m−1のすべてのパリティ検査多項式に相当するチェックノードは存在しない。
【0199】
同様に、C#2の条件を満足する正則TV-m-LDPC-CCにおいて、時変周期mが素数でない場合、P(D)の項に着目し、C#4.2が成立する場合を考える。
【0200】
C#4.2:C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(38)において、qに対して、P(D)においてb#q,i mod m≧b#q,j mod mのとき、|b#q,i mod m−b#q j mod m|がmの1を除く約数である。ただし、i≠jである。
【0201】
C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(38)において、C#4.2を満たすDb#q,iP(D), Db#q,jP(D)に対応する変数ノードのみに限ってツリーを描く場合を考える。このとき、性質1から、式(38)の0を満たす#q番目のパリティ検査多項式に相当するチェックノードを起点とするツリーには、qに対して、#0から#m−1のパリティ検査多項式に相当するチェックノードすべてが存在することはない。
【0202】
例:C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(38)において、時変周期m=6(素数でない)とし、qに対し、(b#q,1,b#q,2)=(3,0)が成立するものとする。したがって、C#4.2を満たす。
【0203】
そして、Db#q,1P(D), Db#q,2P(D)に対応する変数ノードのみに限ってツリーを描いたとき、式(38)の0を満たす#0番目のパリティ検査多項式に相当するチェックノードを起点とするツリーは図18のようにあらわされる。図18からわかるように、時変周期m=6は、性質3を満たす。
【0204】
次に、C#2の条件を満足する正則TV-m-LDPC-CCにおいて、時変周期mが特に偶数のときに関する性質を述べる。
【0205】
性質4:
C#2の条件を満足する正則TV-m-LDPC-CCにおいて、時変周期mが偶数の場合、X1(D),・・・,Xn-1(D)のいずれかの項に着目し、C#5.1が成立する場合を考える。
【0206】
C#5.1:C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(82)において、qに対して、Xp(D)においてa#q,p,i mod m≧a#q,p,jmod mのとき、|a#q,p,i mod m−a#q,p,j mod m|が偶数である。ただし、i≠jである。
【0207】
C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(38)において、C#5.1を満たすDa#q,p,iXp(D), Da#q,p,jXp(D)に対応する変数ノードのみに限ってツリーを描く場合を考える。このとき、性質1から、式(38)の0を満たす#q番目のパリティ検査多項式に相当するチェックノードを起点とするツリーには、qが奇数のとき、奇数番目のパリティ検査多項式に相当するチェックノードしか存在しない。また、qが偶数のとき、式(38)の0を満たす#q番目のパリティ検査多項式に相当するチェックノードを起点とするツリーには、偶数番目のパリティ検査多項式に相当するチェックノードしか存在しない。
【0208】
同様に、C#2の条件を満足する正則TV-m-LDPC-CCにおいて、時変周期mが偶数の場合、P(D)の項に着目し、C#5.2が成立する場合を考える。
【0209】
C#5.2:C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(38)において、qに対して、P(D)においてb#q,i mod m≧b#q,j mod mのとき、|b#q,i mod m−b#q,j mod m|が偶数である。ただし、i≠jである。
【0210】

C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(38)において、C#5.2を満たすDb#q,iP(D), Db#q,jP(D)に対応する変数ノードのみに限ってツリーを描く場合を考える。このとき、性質1から、式(38)の0を満たす#q番目のパリティ検査多項式に相当するチェックノードを起点とするツリーには、qが奇数のとき、奇数番目のパリティ検査多項式に相当するチェックノードしか存在しない。また、qが偶数のとき、式(38)の0を満たす#q番目のパリティ検査多項式に相当するチェックノードを起点とするツリーには、偶数番目のパリティ検査多項式に相当するチェックノードしか存在しない。
【0211】
[正則TV-m-LDPC-CCの設計方法]
C#2の条件を満足する正則TV-m-LDPC-CCにおいて、高い誤り訂正能力を与えるための設計指針を考える。ここで、C#6.1,C#6.2のような場合を考える。
【0212】
C#6.1:C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(38)において、Da#q,p,iXp(D), Da#q,p,jXp(D)に対応する変数ノードのみに限ってツリーを描く場合を考える(ただし、i≠jである)。このとき、式(38)の0を満たす#q番目のパリティ検査多項式に相当するチェックノードを起点するツリーには、qに対して、#0から#m−1のパリティ検査多項式に相当するチェックノードすべてが存在することはない。
【0213】
C#6.2:C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(38)において、Db#q,iP(D), Db#q,jP(D)に対応する変数ノードのみに限ってツリーを描く場合を考える(ただし、i≠jである)。このとき、式(38)の0を満たす#q番目のパリティ検査多項式に相当するチェックノードを起点するツリーには、qに対して、#0から#m−1のパリティ検査多項式に相当するチェックノードすべてが存在することはない。
【0214】
C#6.1,C#6.2のような場合、「qに対して、#0から#m−1のパリティ検査多項式に相当するチェックノードすべてが存在することはない。」ことから、推論#1における、時変周期を大きくしたときの効果は得られない。したがって、上記を考慮し、高い誤り訂正能力を与えるために以下の設計指針を与える。
【0215】
[設計指針]:C#2の条件を満足する正則TV-m-LDPC-CCにおいて、X1(D),・・・, Xn-1(D)のいずれかの項に着目し、C#7.1の条件を与える。
【0216】
C#7.1:C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(38)において、Da#q,p,iXp(D), Da#q,p,jXp(D)に対応する変数ノードのみに限ってツリーを描く場合を考える(ただし、i≠jである)。このとき、式(38)の0を満たす#q番目のパリティ検査多項式に相当するチェックノードを起点するツリーには、qに対して、ツリーには#0から#m−1のすべてのパリティ検査多項式に相当するチェックノードが存在する。
【0217】
同様に、C#2の条件を満足する正則TV-m-LDPC-CCにおいて、P(D)の項に着目し、C#7.2の条件を与える。
【0218】
C#7.2:C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(38)において、Db#q,iP(D), Db#q,jP(D)に対応する変数ノードのみに限ってツリーを描く場合を考える(ただし、i≠jである)。このとき、式(38)の0を満たす#q番目のパリティ検査多項式に相当するチェックノードを起点するツリーには、qに対して、ツリーには#0から#m−1のすべてのパリティ検査多項式に相当するチェックノードが存在する。
【0219】
そして、本設計指針では、C#7.1が(i,j)で成立するとともに、pで成立し、C#7.2が(i,j)で成立するものとする。
【0220】
すると、推論#1を満たすことになる。
【0221】
次に、設計指針に関する定理について述べる。
【0222】
定理2:設計指針を満たすためには、a#q,p,i mod m≠a#q,p,jmod mおよびb#q,i mod m≠b#q,jmod mを満たさなければならない。ただし、i≠jである。
【0223】
証明:C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式の式(38)において、Da#q,p,iXp(D), Da#q,p,jXp(D)に対応する変数ノードのみに限ってツリーを描くと、定理2を満たした場合、式(38)の0を満たす#q番目のパリティ検査多項式に相当するチェックノードを起点するツリーには、#0から#m-1のすべてのパリティ検査多項式に相当するチェックノードが存在する。これが、すべてのpに対し、成立する。
【0224】
同様に、C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式の式(38)において、Db#q,iP(D), Db#q,jP(D)に対応する変数ノードのみに限ってツリーを描くと、定理2を満たした場合、式(38)の0を満たす#q番目のパリティ検査多項式に相当するチェックノードを起点するツリーには、#0から#m-1のすべてのパリティ検査多項式に相当するチェックノードが存在する。
【0225】
したがって、定理2は証明された。
【0226】
□(証明終わり)
定理3:C#2の条件を満足する正則TV-m-LDPC-CCにおいて、時変周期mが偶数の場合、設計指針を満たす符号は存在しない。
【0227】
証明:C#2の条件を満足する正則TV-m-LDPC-CCの0を満たすパリティ検査多項式(38)において、p=1とし、設計指針を満たすことがないことが証明できれば、定理3は証明されたことになる。したがって、p=1として証明を進める。
【0228】
C#2の条件を満足する正則TV-m-LDPC-CCでは、(Np,1,Np,2,Np,3)=(“o”,“o”,“o”)∪(“o”,“o”,“e”)∪(“o”,“e”,“e”)∪(“e”,“e”,“e”)がすべての場合をあらわすことができる。ただし、“o”は奇数、“e”は偶数をあらわしている。したがって、(Np,1,Np,2,Np,3)=(“o”,“o”,“o”)∪(“o”,“o”,“e”)∪(“o”,“e”,“e”)∪(“e”,“e”,“e”)において、C#7.1は満たさないことを示す。なお、∪は和集合(union)である。
【0229】
(Np,1,Np,2,Np,3)=(“o”,“o”,“o”)のとき、C#5.1において、i,j=1,2,3(i≠j)を満たすように(i,j)のセットをいずれの値の場合でもC#5.1を満たす。
【0230】
(Np,1,Np,2,Np,3)=(“o”,“o”,“e”)のとき、C#5.1において、(i,j)=(1,2)とするとC#5.1を満たす。
【0231】
(Np,1,Np,2,Np,3)=(“o”,“e”,“e”)のとき、C#5.1において、(i,j)=(2,3)とするとC#5.1を満たす。
【0232】
(Np,1,Np,2,Np,3)=(“e”,“e”,“e”)のとき、C#5.1において、i,j=1,2,3(i≠j)を満たすように(i,j)のセットをいずれの値の場合でもC#5.1を満たす。
【0233】
したがって、(Np,1,Np,2,Np,3)=(“o”,“o”,“o”)∪(“o”,“o”,“e”)∪(“o”,“e”,“e”)∪(“e”,“e”,“e”)のとき、C#5.1を満たす(i,j)のセットが必ず存在する。よって、性質4より、定理3は証明された。
【0234】
□(証明終わり)
したがって、設計指針を満たすためには、時変周期mは奇数でなければならない。また、設計指針を満たすためには、性質2および性質3から、下記条件が有効である。
【0235】
・時変周期mが素数であること。
【0236】
・時変周期mが奇数であり、かつ、mの約数の数が少ないこと。
【0237】
特に、「時変周期mが奇数であり、かつ、mの約数の数が少ないこと」という点を考慮すると、誤り訂正能力が高い符号が得られる可能性が高い条件の例として以下が考えられる。(あくまでの例であり、他の条件でも誤り訂正能力の高い符号が得られる可能性はある。)
(1)時変周期mをα×βとする。
【0238】
ただし、α、βは、1を除く奇数であり、かつ、素数。
【0239】
(2)時変周期mをαとする。
【0240】
ただし、αは、1を除く奇数であり、かつ、素数であり、nは2以上の整数。
【0241】
(3)時変周期mをα×β×γとする。
【0242】
ただし、α、β、γは、1を除く奇数であり、かつ、素数。
【0243】
ただし、z mod mの演算(zは0以上の整数)を行ったときにとる値はm個あり、したがって、mが大きくなるとz mod mの演算を行ったときにとる値の数は増加する。よって、mを増大させると、上述の設計指針を満たすことが容易となる。ただし、時変周期mが偶数とすると高い誤り訂正能力をもつ符号が得られない、というわけではない。
【0244】
次に、LDPC−CCにおけるテイルバイティングについて説明する。
先ず、一例として、非特許文献13に記載されているパリティ検査多項式に基づくLDPC−CCについて説明する。
【0245】
パリティ検査多項式に基づく、符号化率R=(n−1)/nの時変LDPC−CCについて説明する。X,X,・・・,Xn−1の情報ビット、及びパリティビットPの時点jにおけるビットをそれぞれX1,j,X2,j,・・・,Xn−1,j及びPと表す。そして、時点jにおけるベクトルuをu=(X1,j,X2,j,・・・,Xn−1,j,P)と表す。また、符号化系列をu=(u,u,・・・,u,・・・)と表す。Dを遅延演算子とすると、情報ビットX,X,・・・,Xn−1の多項式はX(D),X(D),・・・,Xn−1(D)と表され、パリティビットPの多項式はP(D)と表される。このとき、式(39)で表される0を満たすパリティ検査多項式を考える。
【0246】
【数39】
式(39)において、ap,q(p=1,2,・・・,n−1;q=1,2,・・・,r)及びb(s=1,2,・・・,ε)は自然数とする。また、y,z=1,2,・・・,r、y≠zの(y,z)に対して、ap,y≠ap,zを満たす。また、y,z=1,2,・・・,ε、y≠zの(y,z)に対して、b≠bを満たす。
【0247】
符号化率R=(n−1)/n、時変周期mのLDPC−CCを作成するために、式(39)に基づく0を満たすパリティ検査多項式を用意する。このときi番目(i=0,1,・・・,m−1)の0を満たすパリティ検査多項式を式(40)のように表す。
【0248】
【数40】
式(40)において、AXδ,i(D)(δ=1,2,・・・,n−1)及びB(D)のDの最大次数をそれぞれΓXδ,i及びΓP,iと表す。そして、ΓXδ,i及びΓP,iの最大値をΓとする。そして、Γ(i=0,1,・・・,m−1)の最大値をΓとする。符号化系列uを考慮すると、Γを用いると、i番目のパリティ検査多項式に相当するベクトルhは式(41)のように表される。
【0249】
【数41】
式(41)において、hi,v(v=0,1,・・・,Γ)は1×nのベクトルであり、[αi,v,X1,αi,v,X2,・・・,αi,v,Xn−1,βi,v]と表される。なぜなら、式(41)のパリティ検査多項式は、αi,v,Xw(D)及びβi,vP(D)(w=1,2,・・・,n−1、かつ、αi,v,Xw,βi,v∈[0,1])をもつからである。この場合、式(41)の0を満たすパリティ検査多項式は、D(D),D(D),・・・,Dn−1(D)及びDP(D)をもつので、式(42)を満たす。
【0250】
【数42】
式(42)を用いることにより、符号化率R=(n−1)/n、時変周期mのパリティ検査多項式に基づくLDPC−CCの検査行列は、式(43)のように表される。
【0251】
【数43】
式(43)において、kに対して、Λ(k)=Λ(k+m)を満たす。ただし、Λ(k)はパリティ検査行列kの行目におけるhに相当する。
【0252】
上述では、ベースとなるパリティ検査多項式として、式(39)を取り扱っているが、必ずしも式(39)の形態に限らず、例えば、式(39)のかわりに、式(44)のような0を満たすパリティ検査多項式としてもよい。
【0253】
【数44】
式(44)においてap,q(p=1,2,・・・,n−1;q=1,2,・・・,r)及びb(s=1,2,・・・,ε)は自然数とする。また、y,z=1,2,・・・,r、y≠zの(y,z)に対して、ap,y≠ap,zを満たす。また、y,z=1,2,・・・,ε、y≠zの(y,z)に対して、b≠bを満たす。
【0254】
以下では、上述のパリティ検査多項式に基づく時変LDPC−CCを例に、本実施の形態の形態におけるテイルバイティング方法について説明する。
【0255】
[テイルバイティング方法]
上述で説明したパリティ検査多項式に基づくLDPC−CCにおいて、時変周期qの0を満たすg番目(g=0、1、・・・、q−1)のパリティ検査多項式(式(40)参照)を式(45)のように表す。
【0256】
【数45】
#g,p,1、a#g,p,2は自然数とし、a#g,p,1≠a#g,p,2、が成立するものとする。また、b#g,1、b#g,2は自然数とし、b#g,1≠b#g,2が成立するものとする(g=0、1、2、・・・、q−1;p=1、2、・・・、n−1)。簡単のため、X(D)、X(D)、・・・Xn−1(D)及びP(D)の数は3にする。
【0257】
パリティ検査行列におけるサブ行列(ベクトル)をHとすると、第gサブ行列は、式(46)のように表すことができる。
【0258】
【数46】
式(46)において、n個連続した「1」は、式(45)の各式におけるX(D)、X(D)、・・・Xn−1(D)及びP(D)の項に相当する。
【0259】
すると、パリティ検査行列Hは、図19のように表すことができる。図19に示すように、パリティ検査行列Hにおいて、第i行と第i+1行とでは、サブ行列がn列右にシフトした構成となる(図19参照)。また、第i+1行と第i行とでは、サブ行列がn列右にシフトした構成となる。そして、情報X、X、・・・Xn−1及びパリティPの時点kにおけるデータをそれぞれX1,k、X2,k、・・・、Xn−1,k、Pとする。すると、送信ベクトルuは、u=(X1,0、X2,0、・・・、Xn−1,0、P、X1,1、X2,1、・・・、Xn−1,1、P、・・・、X1,k、X2,k、・・・、Xn−1,k、P、・・・・)と表され、Hu=0が成立する。(ただし、「0」とは、すべての要素が0の(列)ベクトルである。)
非特許文献14において、テイルバイティングを行ったときの検査行列が記載されている。パリティ検査行列は以下のとおりである。
【0260】
【数47】
式(47)において、Hは検査行列であり、Hはシンドロームフォーマーである。また、H(t)(i=0,1,・・・,M)はc×(c−b)のサブ行列、Mはメモリサイズである。
【0261】
図19と式(47)から、パリティ検査多項式に基づく時変周期q、符号化率(n−1)/nのLDPC−CCにおいて、より高い誤り訂正能力を得るために、復号の際に必要とするパリティ検査行列Hでは、以下の条件が重要となる。
【0262】
<条件#1>
・パリティ検査行列の行数は、qの倍数である。
【0263】
・したがって、パリティ検査行列の列数はn×qの倍数である。このとき、復号時に必要な(例えば)対数尤度比は、n×qの倍数のビット分の対数尤度比である。
【0264】
ただし、条件#1が必要となる時変周期q、符号化率(n−1)/nのLDPC−CCの0を満たすパリティ検査多項式は、式(45)に限ったものではなく、式(39)、式(44)に基づく時変LDPC−CCであってもよい。
【0265】
ところで、パリティ検査多項式において、パリティP(D)の項が一つしか存在しない場合、式(47)は、式(48)のようにあらわされる。
【0266】
【数48】
この時変周期LDPC−CCは、フィードフォワードの畳み込み符号の一種であるので、テイルバイティングを行ったときの符号化方法は、非特許文献15、非特許文献16に示されている符号化方法が適用できる。その手順は以下の通りである。
【0267】
<手順1>
例えば、式(48)で定義される時変LDPC−CCでは、P(D)は以下のように表される。
【0268】
【数49】
そして、式(49)は以下のように表される。
【0269】
【数50】
したがって、時点iにおいて、(i−1)%q=kのとき(%はモジュラ演算(modulo)を示す。)、式(49)、式(50)において、g=kとして時点iのパリティを求めることができる。そして、レジスタの初期値を「0」とする。つまり、式(49)を用い、時点iにおいて(i=1、2、・・・)、(i−1)%q=kのとき、式(49)において、g=kとして時点iのパリティを求める。そして、式(49)のX[z]、X[z]、・・・、Xn−1[z]、P[z]において、zが1より小さい場合は、「0」であるものとし、式(49)を用いて符号化を行うことになる。そして、最後のパリティビットまで求める。そして、このときの符号化器におけるレジスタの状態を保持しておく。
【0270】
<手順2>
手順1の保持しているレジスタの状態から(したがって、式(49)のX[z]、X[z]、・・・、Xn−1[z]、P[z]において、zが1より小さい場合について、手順1で得られている値を用いることになる。)、再度、時点i=1から符号化を行い、パリティを求める。
【0271】
このとき得られたパリティと情報ビットが、テイルバイティングを行ったときの符号化系列となる。
【0272】
しかし、フィードフォワード型のLDPC−CCとフィードバックありのLDPC−CCとを、同一符号化率、ほぼ同等の拘束長の条件の下で比較すると、フィードバックありのLDPC−CCの方が、高い誤り訂正能力を示す傾向が強いが、符号化系列を求める(パリティを求める)のが困難であるという課題がある。以下では、この課題に対し、容易に符号化系列(パリティ)を求めることを可能とするテイルバイティング方法がある。
【0273】
まず、パリティ検査多項式に基づくLDPC−CCにおけるテイルバイティングを行った際のパリティ検査行列について説明する。
【0274】
例えば、式(45)で定義する、符号化率(n−1)/n、時変周期qのパリティ検査多項式に基づくLDPC−CCにおいて、時点iにおける情報X、X、・・・、Xn−1、及びパリティPをX1,i、X2,i、・・・、Xn−1,i、Pと表す。すると、<条件#1>を満たすためには、i=1、2、3、・・・、q、・・・、q×N−q+1、q×N−q+2、q×N−q+3、・・・、q×Nとしてテイルバイティングを行うことになる。
【0275】
ここで、Nは自然数であり、送信系列uはu=(X1,1、X2,1、・・・、Xn−1,1、P、X1,2、X2,2、・・・、Xn−1,2、P、・・・、X1,k、X2,k、・・・、Xn−1,k、P、・・・、X1,q×N、X2,q×N、・・・、Xn−1,q×N、Pq×Nとなり、Hu=0が成立する。(ただし、「0」とは、すべての要素が0の(列)ベクトルである。)
このときのパリティ検査行列の構成について図20及び図21を用いて説明する。
【0276】
式(45)のサブ行列(ベクトル)をHgとすると、第gサブ行列は、式(51)のように表すことができる。
【0277】
【数51】
式(51)において、n個連続した「1」は、式(45)の各式におけるX(D)、X(D)、・・・Xn−1(D)及びP(D)の項に相当する。
【0278】
上記で定義した送信系列uに対応するパリティ検査行列のうち、時点q×N近辺のパリティ検査行列を図20に示す。図20に示すように、パリティ検査行列Hにおいて、第i行と第i+1行とでは、サブ行列がn列右にシフトした構成となる(図20参照)。
【0279】
また、図20において、符号2001はパリティ検査行列のq×N行(最後の行)を示しており、<条件#1>を満たしているためq−1番目の0を満たすパリティ検査多項式に相当する。符号2002はパリティ検査行列のq×N−1行を示しており、<条件#1>を満たしているためq−2番目の0を満たすパリティ検査多項式に相当する。符号2003は時点q×Nに相当する列群を示しており、符号2003の列群は、X1,q×N、X2,q×N、・・・、Xn−1,q×N、Pq×Nの順に並んでいる。符号2004は時点q×N−1に相当する列群を示しており、符号2004の列群は、X1,q×N−1、X2,q×N−1、・・・、Xn−1,q×N−1、Pq×N−1の順に並んでいる。
【0280】
次に、送信系列の順番を入れ替え、u=(・・・、X1,q×N−1、X2,q×N−1、・・・、Xn−1,q×N−1、Pq×N−1、1,q×N、X2,q×N、・・・、Xn−1,q×N、Pq×N、1,0、X2,1、・・・、Xn−1,1、P、X1,2、X2,2、・・・、Xn−1,2、P、・・・)に対応するパリティ検査行列のうち時点q×N−1、q×N、1、2近辺のパリティ検査行列を図21に示す。このとき、図21で示したパリティ検査行列の部分が、テイルバイティングを行ったときの特徴的な部分となり、この構成は式(47)と同様の構成となることがわかる。図21に示すように、パリティ検査行列Hにおいて、第i行と第i+1行とでは、サブ行列がn列右にシフトした構成となる(図21参照)。
【0281】
また、図21において、符号2105は図20のようにパリティ検査行列をあらわした場合、q×N×n列目に相当する列となり、符号2106は図20のようにパリティ検査行列をあらわした場合、1列目に相当する列となる。
【0282】
符号2107は時点q×N−1に相当する列群を示しており、符号2107の列群は、X1,q×N−1、X2,q×N−1、・・・、Xn−1,q×N−1、Pq×N−1の順に並んでいる。符号2108は時点q×Nに相当する列群を示しており、符号2108の列群は、X1,q×N、X2,q×N、・・・、Xn−1,q×N、Pq×Nの順に並んでいる。符号2109は時点1に相当する列群を示しており、符号2109の列群は、X1,1、X2,1、・・・、Xn−1,1、Pの順に並んでいる。符号2110は時点2に相当する列群を示しており、符号2110の列群は、X1,2、X2,2、・・・、Xn−1,2、Pの順に並んでいる。
【0283】
符号2111は図20のようにパリティ検査行列をあらわした場合、q×N行目に相当する行となり、符号2112は図20のようにパリティ検査行列をあらわした場合、1行目に相当する行となる。
【0284】
そして、テイルバイティングを行ったときのパリティ検査行列の特徴的な部分は、図21において、符号2113より左かつ符号2114より下の部分となる(式(47)参照)。
【0285】
図20のようにパリティ検査行列をあらわした場合、<条件#1>を満たした場合、行は、0番目の0を満たすパリティ検査多項式に相当する行からはじまり、q−1番目の0を満たすパリティ検査多項式に相当する行で終わる。この点が、より高い誤り訂正能力を得る上で重要となる。実際、時変LDPC−CCは、タナーグラフで短い長さのサイクル(cycle of length)の数が少なくなるように符号を設計する。ここで、テイルバイティングを行ったとき、タナーグラフで短い長さのサイクルの数が少なくなるためには、図21のように記載すると明らかなように、図21のような状況が確保できること、つまり、<条件#1>が重要な要件となる。
【0286】
ただし、通信システムにおいて、テイルバイティングを行う際、システムで求められるブロック長(または情報長)に対し、<条件#1>を満たすようにするために、工夫が必要となる場合がある。この点について、例をあげて説明する。
【0287】
図22は、通信システムの略図である。通信システムは、送信装置2200と受信装置2210とを含んで構成される。
【0288】
送信装置2200は、符号化器2201と変調部2202とを含んで構成される。符号化器2201は、情報を入力とし、符号化を行い、送信系列を生成し、出力する。そして、変調部2202は、送信系列を入力とし、マッピング、直交変調、周波数変換、増幅等の所定の処理を行い、送信信号を出力する。送信信号は、通信媒体(無線、電力線、光など)を介して、受信装置2210に届く。
受信装置2210は、受信部2211と、対数尤度比生成部2212と、復号化器2213とを含んで構成される。受信部2211は、受信信号を入力とし、増幅、周波数変換、直交復調、チャネル推定、デマッピング等の処理を施し、ベースバンド信号、及び、チャネル推定信号を出力する。対数尤度比生成部2212は、ベースバンド信号、及び、チャネル推定信号を入力とし、ビット単位の対数尤度比を生成し、対数尤度比信号を出力する。復号化器2213は、対数尤度比信号を入力とし、ここでは、特に、BP(Belief Propagation)復号(非特許文献4、非特許文献6、非特許文献7、非特許文献8)を用いた反復復号を行い、推定送信系列、または(及び)、推定情報系列を出力する。
【0289】
例えば、符号化率1/2、時変周期12のLDPC−CCを考える。このとき、テイルバイティングを行うことを前提し、設定した情報長(符号化長)を16384とする。その情報をX1,1、X1,2、X1,3、・・・、X1,16384とする。そして、何も工夫せずに、パリティを求めるとすると、P、P、P,3、・・・、P16384が求まることになる。しかし、送信系列u=(X1,1、P、X1,2、P、・・・X1,16384、P16384)に対してパリティ検査行列を作成しても、<条件#1>を満たさない。したがって、送信系列として、X1,16385、X1,16386、X1,16387、X1,16388を追加し、P16385、P16386、P16387、P16388を求めればよい。このとき、符号化器(送信装置)では、例えば、X1,16385=0、X1,16386=0、X1,16387=0、X1,16388=0と設定し、符号化を行い、P16385、P16386、P16387、P16388を求める。ただし、符号化器(送信装置)と復号化器(受信装置)において、X1,16385=0、X1,16386=0、X1,16387=0、X1,16388=0と設定したという約束事を共有している場合、X1,16385、X1,16386、X1,16387、X1,16388を送信する必要はない。
【0290】
したがって、符号化器は、情報系列X=(X1,1、X1,2、X1,3、・・・、X1,16384、1,16385、X1,16386、X1,16387、X1,16388)=(X1,1、X1,2、X1,3、・・・、X1,16384、0、0、0、0)を入力とし、系列(X1,1、P、X1,2、P、・・・X1,16384、P16384、X1,16385、P16385、X1,16386、P16386、X1,16387、P16387、X1,16388、P16388)=(X1,1、P、X1,2、P、・・・X1,16384、P16384、0、P16385、0、P16386、0、P16387、0、P16388)を得る。そして、符号化器(送信装置)、復号化器(受信装置)で既知である「0」を削減し、送信装置は、送信系列を(X1,1、P、X1,2、P、・・・X1,16384、P16384、P16385、P16386、P16387、P16388)として送信する。
【0291】
受信装置2210では、送信系列ごとの、例えば、対数尤度比をLLR(X1,1)、LLR(P)、LLR(X1,2)、LLR(P)、・・・LLR(X1,16384)、LLR(P16384)、LLR(P16385)、LLR(P16386)、LLR(P16387)、LLR(P16388)を得ることになる。
【0292】
そして、送信装置2200で送信しなかった「0」の値のX1,16385、X1,16386、X1,16387、X1,16388の対数尤度比LLR(X1,16385)=LLR(0)、LLR(X1,16386)=LLR(0)、LLR(X1,16387)=LLR(0)、LLR(X1,16388)=LLR(0)を生成し、LLR(X1,1)、LLR(P)、LLR(X1,2)、LLR(P)、・・・LLR(X1,16384)、LLR(P16384)、LLR(X1,16385)=LLR(0)、LLR(P16385)、LLR(X1,16386)=LLR(0)、LLR(P16386)、LLR(X1,16387)=LLR(0)、LLR(P16387)、LLR(X1,16388)=LLR(0)、LLR(P16388)を得ることになるので、これと符号化率1/2、時変周期12のLDPC−CCの16388×32776のパリティ検査行列を用いて、非特許文献4、非特許文献6、非特許文献7、非特許文献8に示されているようなBP(Belief Propagation)(信頼度伝播)復号、BP復号を近似したmin−sum復号、offset BP復号、Normalized BP復号、shuffled BP復号などの信頼度伝播を利用した復号を行うことで、推定送信系列、及び、推定情報系列を得る。
【0293】
この例でわかるように、符号化率(n−1)/n、時変周期qのLDPC−CCにおいて、テイルバイティングを行う場合、受信装置で復号の際、<条件#1>を満たすようなパリティ検査行列をもち、復号を行う。したがって、パリティ検査行列として(行)×(列)=(q×M)×(q×n×M)のパリティ検査行列を復号器は保有していることになる(Mは自然数)。
【0294】
これに対応する符号化器において、符号化に必要となる情報ビット数はq×(n−1)×Mとなる。これにより、q×Mビットのパリティを求めることになる。これに対し、符号化器に入力される情報ビットの数が、q×(n−1)×Mビットより少ない場合は、符号化器において、情報ビット数がq×(n−1)×Mビットとなるように送受信装置(符号化器及び復号化器)間で既知のビット(例えば「0」(「1」でもよい))を挿入する。そして、q×Mビットのパリティを求めることになる。このとき、送信器は、挿入した既知のビットを除いた情報ビットと求めたパリティビットを送信する。(ただし、既知のビットを送信し、常に、q×(n−1)×Mビットの情報とq×Mビットのパリティを送信してもよいが、既知ビット送信分の伝送速度の低下を招くことになる。)

次に、(特許文献2)に示されている符号化率(n−1)/nの(nは2以上の整数)改良したテイルバイティングを用いた、パリティ検査多項式の基づく、周期的時変LDPC−CCについて述べる。
【0295】
[符号化率(n−1)/nの(nは2以上の整数)改良したテイルバイティングを用いた、パリティ検査多項式の基づく、周期的時変LDPC−CC]
まず、一般的なテイルバイティング方法を用いたLDPC畳み込み符号の課題について説明する。
【0296】
パリティ検査多項式に基づく、符号化率R=(n−1)/nの時変LDPC−CCについて説明する。X,X,・・・,Xn−1の情報ビット、及びパリティビットPの時点jにおけるビットをそれぞれX1,j,X2,j,・・・,Xn−1,j及びPと表す。そして、時点jにおけるベクトルuをu=(X1,j,X2,j,・・・,Xn−1,j,P)と表す。また、符号化系列をu=(u,u,・・・,u,・・・)と表す。Dを遅延演算子とすると、情報ビットX,X,・・・,Xn−1の多項式はX(D),X(D),・・・,Xn−1(D)と表され、パリティビットPの多項式はP(D)と表される。このとき、式(52)で表される0を満たすパリティ検査多項式を考える。
【0297】
【数52】
式(52)においてap,q(p=1,2,・・・,n−1;q=1,2,・・・,r)及びb(s=1,2,・・・,ε)は自然数とする。また、y,z=1,2,・・・,r、y≠zの(y,z)に対して、ap,y≠ap,zを満たす。また、y,z=1,2,・・・,ε、y≠zの(y,z)に対して、b≠bを満たす。時変周期mのLDPC−CCのために、m個の0を満たすパリティ検査多項式を用意することになる。このとき、m個の0を満たすパリティ検査多項式を「パリティ検査多項式#0、パリティ検査多項式#1、パリティ検査多項式#2、・・・、パリティ検査多項式#(m−2)、パリティ検査多項式#(m−1)」と名付ける。式(52)の0を満たすパリティ検査多項式に基づいた場合、パリティ検査多項式#0、パリティ検査多項式#1、パリティ検査多項式#2、・・・、パリティ検査多項式#(m−2)、パリティ検査多項式#(m−1)において、Xp(D)の項数(p=1,2,・・・,n−1)は等しくなり、また、パリティ検査多項式#0、パリティ検査多項式#1、パリティ検査多項式#2、・・・、パリティ検査多項式#(m−2)、パリティ検査多項式#(m−1)において、P(D)の項数は等しくなる。しかし、式(52)は一例であり、パリティ検査多項式#0、パリティ検査多項式#1、パリティ検査多項式#2、・・・、パリティ検査多項式#(m−2)、パリティ検査多項式#(m−1)において、Xp(D)の項数は等しくなくてもよく、また、パリティ検査多項式#0、パリティ検査多項式#1、パリティ検査多項式#2、・・・、パリティ検査多項式#(m−2)、パリティ検査多項式#(m−1)において、P(D)の項数は等しくなくてもよい。
符号化率R=(n−1)/n、時変周期mのLDPC−CCを作成するために、0を満たすパリティ検査多項式を用意する。式(52)に基づくi番目(i=0,1,・・・,m−1)の0を満たすパリティ検査多項式を式(53)のように表す。
【0298】
【数53】
式(53)において、AXδ,i(D)(δ=1,2,・・・,n−1)及びB(D)のDの最大次数をそれぞれΓXδ,i及びΓP,iと表す。そして、ΓXδ,i及びΓP,iの最大値をΓとする。そして、Γ(i=0,1,・・・,m−1)の最大値をΓとする。符号化系列uを考慮すると、Γを用いると、i番目のパリティ検査多項式に相当するベクトルhは式(54)のように表される。
【0299】
【数54】
式(54)において、hi,v(v=0,1,・・・,Γ)は1×nのベクトルであり、[αi,v,X1,αi,v,X2,・・・,αi,v,Xn−1,βi,v]と表される。なぜなら、式(53)のパリティ検査多項式は、αi,v,Xw(D)及びβi,vP(D)(w=1,2,・・・,n−1、かつ、αi,v,Xw,βi,v∈[0,1])をもつからである。この場合、式(53)の0を満たすパリティ検査多項式は、D(D),D(D),・・・,Dn−1(D)及びDP(D)をもつので、式(55)を満たす。
【0300】
【数55】
式(55)を用いることにより、符号化率R=(n−1)/n、時変周期mのパリティ検査多項式に基づくLDPC−CCの検査行列は、式(56)のように表される。
【0301】
【数56】
式(56)において、kに対して、Λ(k)=Λ(k+m)を満たす。ただし、Λ(k)はパリティ検査行列kの行目におけるhに相当する。
【0302】
上述では、ベースとなるパリティ検査多項式として、式(52)を取り扱っているが、必ずしも式(52)の形態に限らず、例えば、式(52)のかわりに、式(57)のような0を満たすパリティ検査多項式としてもよい。
【0303】
【数57】
式(57)においてap,q(p=1,2,・・・,n−1;q=1,2,・・・,r)及びb(s=1,2,・・・,ε)は自然数とする。また、y,z=1,2,・・・,r、y≠zの(y,z)に対して、ap,y≠ap,zを満たす。また、y,z=1,2,・・・,ε、y≠zの(y,z)に対して、b≠bを満たす。
ここで、符号化率R=(n−1)/n、時変周期mのLDPC−CCのためのi番目(i=0,1,・・・,m−1)の0を満たすパリティ検査多項式を次式のようにあらわす。
【0304】
【数58】
このとき、bs,i(s=1,2,・・・,)は自然数とし、y,z=1,2,・・・,ε、y≠zの(y,z)に対して、by,i≠bz,iを満たす。そして、εは自然数とする。したがって、符号化率R=(n−1)/n、時変周期mのLDPC−CCのための0を満たすパリティ検査多項式として、i番目(i=0,1,・・・,m−1)の0を満たすパリティ検査多項式において、P(D)の項は2個以上存在することになる。
符号化率R=(n−1)/n、時変周期mのLDPC−CCのための0を満たすパリティ検査多項式として、i番目(i=0,1,・・・,m−1)の0を満たすパリティ検査多項式において、P(D)の項は2個以上存在する場合に、テイルバイティングを行うことを考える。このとき、符号化器では、符号化により、情報ビットX,X,・・・,Xn−1、から、パリティPを求めることになる。
送信ベクトルuをu=(X1,1、X2,1、・・・、Xn−1,1、P、X1,2、X2,2、・・・、Xn−1,2、P、・・・、X1,k、X2,k、・・・、Xn−1,k、P、・・・・)とし、テイルバイティング方法を用いた符号化率R=(n−1)/n、時変周期mのLDPC−CCのパリティ検査行列をHとすると、Hu=0を満たす。(このとき、「Hu=0(ゼロ)」は、全ての要素が0(ゼロ)のベクトルであることを意味する)したがって、パリティP、P、・・・、P、・・・は、Hu=0の連立方程式を解くことで得ることになるが、このとき、P(D)の項は2個以上存在することから、パリティを求めるための演算規模(回路規模)が大きいという課題がある。
この点を考慮し、パリティを求めるための演算規模(回路規模)を小さいするために、フィードフォワード型の時変周期mのLDPC−CCを用いたテイルバイティング方法があるが、誤り訂正能力が低いことが一般的に知られている(拘束長を同一とした場合、フィードバックLDPC−CCのほうが、フィードバックLDPC−CCより誤り訂正能力が高くなる可能性が高い)。
上記の2つの課題に対し、誤り訂正能力が高く、かつ、符号化器の演算(回路)規模が小さくすることが可能な、改良したティルバイティング方法を用いたLDPC−CCについて、特許文献2に記載している。
特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCについて説明する。なお、nは2以上の自然数となる。
特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCでは、ベースとして(基礎的な構造として)、符号化率R=(n−1)/n、時変周期mのパリティ検査多項式に基づくLDPC−CCを利用する。
ベースとなる、符号化率R=(n−1)/n、時変周期mのパリティ検査多項式に基づくLDPC−CCのためのi番目(i=0,1,・・・,m−1)の0を満たすパリティ検査多項式を次式のようにあらわす。
【0305】
【数59】
このとき、k=1、2、・・・、n−2、n−1(kは1以上n−1の整数)を満たす、すべてのk、および、i=0,1,・・・,m−1(iは0以上m−1以下の整数)を満たす、すべてのiにおいて、AXk,i(D)≠0を満たす。そして、b1,iは自然数とする。
したがって、ベースとなる、式(59)の符号化率R=(n−1)/n、時変周期mのパリティ検査多項式に基づくLDPC−CCのための0を満たすi番目(i=0,1,・・・,m−1)パリティ検査多項式は、P(D)の項を2個もつことになる。これが、パリティPを逐次的に求めることができ、演算(回路)規模を削減することができる一つの重要な要件となる。
式(59)の0を満たすパリティ検査多項式の多項式の部分に対し、以下の関数を定義する。
【0306】
【数60】
このとき、時変周期をmとするためには、以下の2つの方法がある。
方法1:
【0307】
【数61】
(vは0以上m−1以下の整数であり、かつ、wは0以上m−1以下の整数であり、かつ、v≠wであり、この条件を満たす、すべてのv、すべてのwにおいて、F(D)≠F(D)が成立する。)
方法2:
【0308】
【数62】
vは0以上m−1以下の整数であり、かつ、wは0以上m−1以下の整数であり、かつ、v≠wであり、式(62)が成立するv、wが存在し、また、
【0309】
【数63】
vは0以上m−1以下の整数であり、かつ、wは0以上m−1以下の整数であり、かつ、v≠wであり、式(63)が成立するv、wが存在するが、時変周期がmとなる。
次に、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCの、ベース(基礎的な構造)となる、符号化率R=(n−1)/n、時変周期mのパリティ検査多項式に基づくLDPC−CCの式(59)の0を満たすパリティ検査多項式の時変周期mと提案する符号化率R=(n−1)/nのテイルバイティング方法を用いたLDPC−CCのブロックサイズの関係について説明する。
この点については、より高い誤り訂正能力を得るために、ベース(基礎的な構造)となる、符号化率R=(n−1)/n、時変周期mのパリティ検査多項式に基づくLDPC−CC(0を満たすパリティ検査多項式は式(59)で定義される。)は、テイルバイティングを行う際、以下の条件が重要となる。
【0310】
<条件#A1>
・パリティ検査行列の行数は、mの倍数である。
【0311】
・したがって、パリティ検査行列の列数はn×mの倍数である。このとき、復号時に必要な(例えば)対数尤度比は、パリティ検査行列の列数の対数尤度比である。
【0312】
ただし、条件#A1が必要となる、ベースとなる、時変周期m、符号化率(n−1)/nのLDPC−CCの0を満たすパリティ検査多項式は、式(59)に限ったものではない。
【0313】
そして、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCについても、<条件#A1>を満たすことになる。(なお、提案する符号化率R=(n−1)/nのテイルバイティング方法を用いたLDPC−CCとベース(基礎的な構造)となる、符号化率R=(n−1)/n、時変周期mのパリティ検査多項式に基づくLDPC−CCの違いについては、あとで詳しく述べる。)したがって、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列をHproとすると、Hproの列数はn×m×zとあらわすことができる(zは自然数)。よって、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCの第sブロックの送信系列(符号化系列(符号語))vはv=(Xs,1,1、Xs,2,1、・・・、Xs,n−1,1、Ppro,s,1、Xs,1,2、Xs,2,2、・・・、Xs,n−1,2、Ppro,s,2、・・・、Xs,1,k、Xs,2,k、・・・、Xs,n−1,k、Ppro,s,k、・・・、Xs,1,m×z、Xs,2,m×z、・・・、Xs,n−1,m×z、Ppro,s,m×zとあらわすことができ(k=1、2、・・・、m×z−1、m×z)、Hpro=0が成立する(このとき、「Hpro=0(ゼロ)」は、全ての要素が0(ゼロ)のベクトルであることを意味する)。なお、Xs,j,kは情報Xのビットであり(jは1以上n−1以下の整数)、Ppro,s,kはパリティPのビットである。また、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列をHproの行数は、m×zとなる。
【0314】
次に、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCにおいて、逐次的にパリティを求めることが可能となる要件について説明する。
特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCにおける、ベース(基礎的な構造)となる、符号化率R=(n−1)/n、時変周期mのパリティ検査多項式に基づくLDPC−CCの式(59)の0を満たすパリティ検査多項式のパリティのみの項で形成する
図5、図6、図8、図17、図18のようなツリーを描いた場合、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCにおいて、逐次的にパリティを求めることが可能とするための条件として、図6、図8、図17のように、式(59)の0番目からm−1番目のすべてのパリティ検査多項式に相当するチェックノードがツリーに出現する必要がある。したがって、以下の条件が有効な方法となる。
<条件#A2−1>
・式(59)の0を満たすパリティ検査多項式において、iは0以上m−1以下の整数であり、かつ、jは0以上m−1以下の整数であり、かつ、i≠jであり、この条件を満たす、すべてi、すべてのjで、b1,i%m=b1,j%m=β(βは自然数であり、βは固定値)を満たす。
【0315】
<条件#A2−2>
・「mの約数のうち、1を除いた、約数の集合をR」としたとき、βはRに属してはならない。
【0316】

ただし、本実施の形態において(本明細書の中で共通である)、「%」はmoduloを意味し、例えば、「α%q」は、αをqで除算したときの余りである。(αは0以上の整数、qは自然数である。)
なお、「mの約数のうち、1を除いた、約数の集合をRとしたとき、少なくともβはRに属してはならない。」という条件に加え、新たに、以下の条件を満たすとよい。
【0317】

<条件#A2−3>
・βは1以上m−1以下の整数の集合に属し、かつ、次の条件を満たす。β/w=g(gは自然数)を満たす、すべてのwを抽出した集合をSとしたとき、R∩Sは空集合である。なお、集合Rは<条件#A2−2>で定義している。
【0318】

なお、<条件#A2−3>を別の表現をすると、<条件#A2−3’>となる。
<条件#A2−3’>
・βは1以上m−1以下の整数の集合に属し、かつ、次の条件を満たす。βの約数の集合をSとしたとき、R∩Sは空集合である。
【0319】

なお、<条件#A2−3><条件#A2−3’>を別の表現をすると、<条件#A2−3”>となる。
<条件#A2−3”>
・βは1以上m−1以下の整数の集合に属し、かつ、次の条件を満たす。βとmの最大公約数が1である。
【0320】

上記について補足を行う。<条件#A2−1>から、βの取り得る値は1以上m−1以下の整数となる。そして、<条件A2−2>かつ<条件A2−3>を満たした場合、βは「mの約数のうち1を除く約数」でなく、かつ、βは「mの約数のうち1を除く約数の整数倍で表現できる値」ではない、ことになる。
以下では、例を用いて説明する。時変周期m=6とする。すると、<条件#A2−1>において、βは自然数であることから、βは{1、2、3、4、5}となる。
そして、<条件#A2−2>「「mの約数のうち、1を除いた、約数の集合をR」としたとき、βはRに属してはならない。」と記載している。このとき、集合Rは{2、3、6}となる(約数のうち1を除くので)。したがって、<条件#A2−1>かつ<条件#A2−2>を満たしたとき、βは{1、4、5}となる。
<条件#A2−3>について考える。(<条件#A2−3’><条件#A2−3”>を考えても同様である。)まず、βは1以上m−1以下の整数の集合に属することから、βとして{1、2、3、4、5}を考えることができる。
次に、「β/w=g(gは自然数)を満たす、すべてのwを抽出した集合をSとしたとき、R∩Sは空集合である。」を考える。上記で説明したように、集合Rは{2,3、6}となる。
βが1のとき、集合Sは{1}となる。したがって、R∩Sは空集合であり、<条件#A2−3>を満たす。
βが2のとき、集合Sは{1,2}となる。したがって、R∩Sは{2}となり、<条件#A2−3>を満たさない。
βが3のとき、集合Sは{1,3}となる。したがって、R∩Sは{3}となり、<条件#A2−3>を満たさない。
βが4のとき、集合Sは{1,2,4}となる。したがって、R∩Sは{2}となり、<条件#A2−3>を満たさない。
βが5のとき、集合Sは{1,5}となる。したがって、R∩Sは空集合であり、<条件#A2−3>を満たす。
したがって、<条件#A2−1>かつ<条件#A2−3>を満たすβは{1、5}となる。
以下では、別の例を説明する。時変周期m=7とする。すると、<条件#A2−1>において、βは自然数であることから、βは{1、2、3、4、5、6}となる。
そして、<条件#A2−2>「「mの約数のうち、1を除いた、約数の集合をR」としたとき、βはRに属してはならない。」と記載している。このとき、集合Rは{7}となる(約数のうち1を除くので)。したがって、<条件#A2−1>かつ<条件#A2−2>を満たしたとき、βは{1、2、3、4、5、6}となる。
<条件#A2−3>について考える。まず、βは1以上m−1以下の整数であることから、βとして{1、2、3、4、5、6}を考えることができる。
次に、「β/w=g(gは自然数)を満たす、すべてのwを抽出した集合をSとしたとき、R∩Sは空集合である。」を考える。上記で説明したように、集合Rは{7}となる。
βが1のとき、集合Sは{1}となる。したがって、R∩Sは空集合であり、<条件#A2−3>を満たす。
βが2のとき、集合Sは{1,2}となる。したがって、R∩Sは空集合であり、<条件#A2−3>を満たす。
βが3のとき、集合Sは{1,3}となる。したがって、R∩Sは空集合であり、<条件#A2−3>を満たす。
βが4のとき、集合Sは{1,2,4}となる。したがって、R∩Sは空集合であり、<条件#A2−3>を満たす。
βが5のとき、集合Sは{1,5}となる。したがって、R∩Sは空集合であり、<条件#A2−3>を満たす。
βが6のとき、集合Sは{1,2,3,6}となる。したがって、R∩Sは空集合であり、<条件#A2−3>を満たす。
したがって、<条件#A2−1>かつ<条件#A2−3>を満たすβは{1、2、3、4、5、6}となる。
また、非特許文献2に示されているように、パリティ検査行列において、「1」の存在する位置は、random-likeであると、高い誤り訂正能力が得られる可能性がある。そのために、以下の条件を満たすとよい。
<条件#A2−4>
・「式(59)の0を満たすパリティ検査多項式において、iは0以上m−1以下の整数であり、かつ、jは0以上m−1以下の整数であり、かつ、i≠jであり、この条件を満たす、すべてi、すべてのjで、b1,i%m=b1,j%m=β(βは自然数であり、βは固定値)を満たし」、
かつ、
「vは0以上m−1以下の整数であり、かつ、wは0以上m−1以下の整数であり、かつ、v≠wであり、b1,v≠b1,wを満たすv、wが存在する」
ただし、条件#A2−4を満たさなくても、高い誤り訂正能力が得られる可能性はある。また、よりランダム性を得るために以下の条件を考えることができる。
【0321】

<条件#A2−5>
・「式(59)の0を満たすパリティ検査多項式において、iは0以上m−1以下の整数であり、かつ、jは0以上m−1以下の整数であり、かつ、i≠jであり、この条件を満たす、すべてi、すべてのjで、b1,i%m=b1,j%m=β(βは自然数であり、βは固定値)を満たし」、
かつ、
「vは0以上m−1以下の整数であり、かつ、wは0以上m−1以下の整数であり、かつ、v≠wであり、この条件を満たす、すべてのv、すべてのwにおいて、b1,v≠b1,wを満たす。」
ただし、条件#A2−5を満たさなくても、高い誤り訂正能力が得られる可能性はある。
また、畳み込み符号ということを考慮する、拘束長は大きい方が高い誤り訂正能力を得ることができる可能性が高い。この点を考慮すると、以下の条件を満たすとよい。
<条件#A2−6>
・「式(59)の0を満たすパリティ検査多項式において、iは0以上m−1以下の整数であり、この条件を満たす、すべてiで、b1,i=1を満たす。」を満たさない。
【0322】

ただし、条件#A2−6を満たさなくても、高い誤り訂正能力が得られる可能性はある。
特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCでは、「ベースとして(基礎的な構造として)、符号化率R=(n−1)/n、時変周期mのパリティ検査多項式に基づくLDPC−CCの、式(59)の0を満たすパリティ検査多項式を利用する」と記載したが、この点について説明する。
これまでに、テイルバイティング方法について説明した。
まず、符号化率R=(n−1)/n、時変周期mのパリティ検査多項式に基づくLDPC−CCの、式(59)の0を満たすパリティ検査多項式のみで、周期的時変LDPC−CCを形成したときのパリティ検査行列について考える。
図23は、符号化率R=(n−1)/n、時変周期mのパリティ検査多項式に基づくLDPC−CCの、式(59)の0を満たすパリティ検査多項式のみでテイルバイティングを行って、テイルバイティングを行った周期的時変LDPC−CCを形成したときのパリティ検査行列Hの構成を示している。
図23は、<条件#A1>を満たしているので、パリティ検査行列の行数はm×z、パリティ検査行列の列数はn×m×zとなる。
図23のパリティ検査行列の第1行は、式(59)の0を満たす0番目のパリティ検査多項式からm−1番目パリティ検査多項式のうちの、「0番目のパリティ検査多項式」を変換することで得られる(「0番目のパリティ検査多項式」から1行、n×m×z列のベクトルを生成することで得られる。)。したがって、図23では「0番目のパリティ検査多項式に相当する行」と記述している。
図23のパリティ検査行列の第2行は、式(59)の0を満たす0番目のパリティ検査多項式からm−1番目パリティ検査多項式のうちの、「1番目のパリティ検査多項式」を変換することで得られる(「1番目のパリティ検査多項式」から1行、n×m×z列のベクトルを生成することで得られる。)。したがって、図23では「1番目のパリティ検査多項式に相当する行」と記述している。



図23のパリティ検査行列の第m−1行は、式(59)の0を満たす0番目のパリティ検査多項式からm−1番目パリティ検査多項式のうちの、「m−2番目のパリティ検査多項式」を変換することで得られる(「m−2番目のパリティ検査多項式」から1行、n×m×z列のベクトルを生成することで得られる。)。したがって、図23では「m−2番目のパリティ検査多項式に相当する行」と記述している。
図23のパリティ検査行列の第m行は、式(59)の0を満たす0番目のパリティ検査多項式からm−1番目パリティ検査多項式のうちの、「m−1番目のパリティ検査多項式」を変換することで得られる(「m−1番目のパリティ検査多項式」から1行、n×m×z列のベクトルを生成することで得られる。)。したがって、図23では「m−1番目のパリティ検査多項式に相当する行」と記述している。



図23のパリティ検査行列の第m×z−1行は、式(59)の0を満たす0番目のパリティ検査多項式からm−1番目パリティ検査多項式のうちの、「m−2番目のパリティ検査多項式」を変換することで得られる(「m−2番目のパリティ検査多項式」から1行、n×m×z列のベクトルを生成することで得られる。)。
図23のパリティ検査行列の第m×z行は、式(59)の0を満たす0番目のパリティ検査多項式からm−1番目パリティ検査多項式のうちの、「m−1番目のパリティ検査多項式」を変換することで得られる(「m−1番目のパリティ検査多項式」から1行、n×m×z列のベクトルを生成することで得られる。)。
よって、図23のパリティ検査行列の第k行は(kは1以上m×z以下の整数)、式(59)の0を満たす0番目のパリティ検査多項式からm−1番目パリティ検査多項式のうちの、「(k−1)%m番目のパリティ検査多項式」を変換することで得られる(「(k−1)%m番目のパリティ検査多項式」から1行、n×m×z列のベクトルを生成することで得られる。)。
以下の説明の準備のため、図23の符号化率R=(n−1)/n、時変周期mのパリティ検査多項式に基づくLDPC−CCの、式(59)の0を満たすパリティ検査多項式のみでテイルバイティングを行って、テイルバイティングを行った周期的時変LDPC−CCを形成したときのパリティ検査行列Hの数式表現を行う。図23のパリティ検査行列Hの第k行目の1行、n×m×z列のベクトルをhとすると、図23のパリティ検査行列Hは次式であらわされる。
【0323】
【数64-1】
次に、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列について説明する。
図24に特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hproの構成例の一例を示す。なお、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hproは、<条件#A1>を満たすことになる。
図24の特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hproの第k行目の1行、n×m×z列のベクトルをgとすると、図24のパリティ検査行列Hproは次式であらわされる。
【0324】
【数64-2】
なお、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCの第sブロックの送信系列(符号化系列(符号語))vはv=(Xs,1,1、Xs,2,1、・・・、Xs,n−1,1、Ppro,s,1、Xs,1,2、Xs,2,2、・・・、Xs,n−1,2、Ppro,s,2、・・・、Xs,1,k、Xs,2,k、・・・、Xs,n−1,k、Ppro,s,k、・・・、Xs,1,m×z、Xs,2,m×z、・・・、Xs,n−1,m×z、Ppro,s,m×zとあらわすことができ(k=1、2、・・・、m×z−1、m×z)、Hpro=0が成立する(このとき、「Hpro=0(ゼロ)」は、全ての要素が0(ゼロ)のベクトルであることを意味する)。なお、Xs,j,kは情報Xのビットであり(jは1以上n−1以下の整数)、Ppro,s,kはパリティPのビットである。
特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hproの構成例の一例である図24ではパリティ検査行列Hproの1行目を除く行、つまり、図24のパリティ検査行列Hproの第2行から第m×z行の構成は、図23のパリティ検査行列Hの第2行から第m×z行の構成と同一となる(図23および図24参照)。したがって、図24において、第1行目の2401には、「「0’」番目のパリティ検査多項式に相当する行」、と記述している(この点については後で説明する)。よって、式(64−1)および式(64−2)から、以下の関係式が成立する。
【0325】
【数65】
そして、iが1のとき、次式が成立する。
【0326】
【数66】

したがって、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hproは次式のようにあらわすことができる。
【0327】
【数67】
なお、式(67)において、式(66)が成立することになる。
次に、パリティが逐次的に求めることができ、かつ、良好な誤り訂正能力を得るための、式(67)のgの構成方法について説明する。
パリティが逐次的に求めることができ、かつ、良好な誤り訂正能力を得るための、式(67)のgの構成方法の一つの例は、ベースとなる(基礎的な構造となる)、符号化率R=(n−1)/n、時変周期mのパリティ検査多項式に基づくLDPC−CCの、式(59)の0を満たすパリティ検査多項式を利用して作成することができる。
は特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hproの第1行目なので、(行番号−1)%m=(1−1)%m=0であるので、ベースとなる(基礎的な構造となる)、符号化率R=(n−1)/n、時変周期mのパリティ検査多項式に基づくLDPC−CCの、式(59)の0を満たすパリティ検査多項式の、0番目のパリティ検査多項式
【0328】
【数68】

を変形した0を満たすパリティ検査多項式から、gを生成するものとする。一例として、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hproの第1行のベクトルgを生成するための0を満たすパリティ検査多項式は、式(59)を利用し、次式とする。
【0329】
【数69】
よって、上式に対し、テイルバイティングを行うことによって得られる1行、n×m×z列のベクトルがgとなる。
なお、式(69)の0を満たすパリティ検査多項式を「0を満たすパリティ検査多項式Y」と名付ける。
よって、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hproの第1行は、式(69)の0を満たすパリティ検査多項式Yを変換することで得られる(つまり、1行、n×m×z列のgが得られる。)
特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCの第sブロックの送信系列(符号化系列(符号語))vはv=(Xs,1,1、Xs,2,1、・・・、Xs,n−1,1、Ppro,s,1、Xs,1,2、Xs,2,2、・・・、Xs,n−1,2、Ppro,s,2、・・・、Xs,1,k、Xs,2,k、・・・、Xs,n−1,k、Ppro,s,k、・・・、Xs,1,m×z、Xs,2,m×z、・・・、Xs,n−1,m×z、Ppro,s,m×zであり、この送信系列を得るために、m×z個の0を満たすパリティ検査多項式が必要となる。このとき、m×z個の0を満たすパリティ検査多項式を順番に並べたとき、e番目の0を満たすパリティ検査多項式を「第e番目の0を満たすパリティ検査多項式」と名付ける(eは0以上m×z−1以下の整数)。したがって、0を満たすパリティ検査多項式は、
0番目:「第0番目の0を満たすパリティ検査多項式」
1番目:「第1番目の0を満たすパリティ検査多項式」
2番目:「第2番目の0を満たすパリティ検査多項式」



e番目:「第e番目の0を満たすパリティ検査多項式」



m×z−2番目:「第m×z−2番目の0を満たすパリティ検査多項式」
m×z−1番目:「第m×z−1番目の0を満たすパリティ検査多項式」
の順に並べられていることになり、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCの第sブロックの送信系列(符号化系列(符号語))vを得ることになる。(なお、上述からわかるように、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hproを式(64−2)のようにあらわした場合、パリティ検査行列Hproのe+1行で構成されるベクトルが、「第e番目の0を満たすパリティ検査多項式」に相当する。)
すると、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCにおいて、
第0番目の0を満たすパリティ検査多項式は、「式(69)の0を満たすパリティ検査多項式Y」であり、
第1番目の0を満たすパリティ検査多項式は、「式(59)の0を満たす1番目のパリティ検査多項式」であり、
第2番目の0を満たすパリティ検査多項式は、「式(59)の0を満たす2番目のパリティ検査多項式」であり、



第m−2番目の0を満たすパリティ検査多項式は、「式(59)の0を満たすm−2番目のパリティ検査多項式」であり、
第m−1番目の0を満たすパリティ検査多項式は、「式(59)の0を満たすm−1番目のパリティ検査多項式」であり、
第m番目の0を満たすパリティ検査多項式は、「式(59)の0を満たす0番目のパリティ検査多項式」であり、
第m+1番目の0を満たすパリティ検査多項式は、「式(59)の0を満たす1番目のパリティ検査多項式」であり、
第m+2番目の0を満たすパリティ検査多項式は、「式(59)の0を満たす2番目のパリティ検査多項式」であり、



第2m−2番目の0を満たすパリティ検査多項式は、「式(59)の0を満たすm−2番目のパリティ検査多項式」であり、
第2m−1番目の0を満たすパリティ検査多項式は、「式(59)の0を満たすm−1番目のパリティ検査多項式」であり、
第2m番目の0を満たすパリティ検査多項式は、「式(59)の0を満たす0番目のパリティ検査多項式」であり、
第2m+1番目の0を満たすパリティ検査多項式は、「式(59)の0を満たす1番目のパリティ検査多項式」であり、
第2m+2番目の0を満たすパリティ検査多項式は、「式(59)の0を満たす2番目のパリティ検査多項式」であり、



第m×z−2番目の0を満たすパリティ検査多項式は、「式(59)の0を満たすm−2番目のパリティ検査多項式」であり、
第m×z−1番目の0を満たすパリティ検査多項式は、「式(59)の0を満たすm−1番目のパリティ検査多項式」
となる。つまり、
「第0番目の0を満たすパリティ検査多項式は、「式(69)の0を満たすパリティ検査多項式Y」であり、第e番目(eは1以上m×z−1の整数)の0を満たすパリティ検査多項式は、「式(59)の0を満たすe%m番目のパリティ検査多項式」
となる。
そして、上記の特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCは、本実施の形態で述べた<条件#A1>、かつ、<条件A2−1>、かつ、<条件#A2−2>を満たすと、逐次的に複数のパリティを求めることができるため、回路(演算)規模を小さくすることができるという利点を得ることができる。
なお、<条件#A1>、かつ、<条件A2−1>、かつ、<条件#A2−2>かつ、<条件#A2−3>を満たすと、多くのパリティが逐次的に求めることができるという利点がある。(<条件#A1>、かつ、<条件A2−1>、かつ、<条件#A2−2>かつ、<条件#A2−3’>を満たすという条件であってもよいし、<条件#A1>、かつ、<条件#A2−1>、かつ、<条件#A2−2>かつ、<条件#A2−3”>を満たすという条件であってもよい。)
以下では、「パリティを逐次的に求めることができる」ことについて説明する。
上述の例の場合、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCの第sブロックの送信系列(符号化系列(符号語))v=(Xs,1,1、Xs,2,1、・・・、Xs,n−1,1、Ppro,s,1、Xs,1,2、Xs,2,2、・・・、Xs,n−1,2、Ppro,s,2、・・・、Xs,1,k、Xs,2,k、・・・、Xs,n−1,k、Ppro,s,k、・・・、Xs,1,m×z、Xs,2,m×z、・・・、Xs,n−1,m×z、Ppro,s,m×zに対し(k=1、2、・・・、m×z−1、m×z)、Hpro=0が成立することから、式(67)より、g=0が成立する。gは式(69)の0を満たすパリティ検査多項式Yを変換することで得られるることから、g=0より、Ppro,s,1が求まる(式(69)の0を満たすパリティ検査多項式において、P(D)の項が一つしかないことから、Ppro,s,1が求まる)。
そして、Xs,j,kは、jは1以上n−1以下の整数とし、kは1以上m×z以下の整数とし、これを満たす、すべてのj、すべてのkで既知のビット(符号化前のビット)であり、かつ、Ppro,s,1が得られていることを利用し、Hproにおけるa[2]行目(a[2]≠1)のベクトルga[2](式(64−2)参照)とvから、ga[2]=0が成立することにより、Ppro,s,a[2]が求まる。
そして、Xs,j,kは、jは1以上n−1以下の整数とし、kは1以上m×z以下の整数とし、これを満たす、すべてのj、すべてのkで既知のビット(符号化前のビット)であり、かつ、Ppro,s,a[2]が得られていることを利用し、Hproにおけるa[3]行目(a[3]≠1、かつ、a[3]≠a[2])のベクトルga[3](式(64−2)参照)とvから、ga[3]=0が成立することにより、Ppro,s,a[3]が求まる。
そして、Xs,j,kは、jは1以上n−1以下の整数とし、kは1以上m×z以下の整数とし、これを満たす、すべてのj、すべてのkで既知のビット(符号化前のビット)であり、かつ、Ppro,s,a[3]が得られていることを利用し、Hproにおけるa[4]行目(a[4]≠1、かつ、a[4]≠a[2]、かつ、a[4]≠a[3])のベクトルga[4](式(64−2)参照)とvから、ga[4]=0が成立することにより、Ppro,s,a[4]が求まる。
以上と同様の操作を繰り返すことで、複数のパリティPpro,s,kが求まる。このことを「パリティを逐次的に求めることができる」とよんでおり、複雑な連立方程式を解くことなく、複数のパリティPpro,s,kを得ることができ、したがって符号化器の回路(演算)規模を小さくすることができるという利点を有することになる。なお、以上と同様の操作を繰り返すことで、kは1以上m×z以下の整数であるすべてのkでPpro,s,kが求まると、非常に回路(演算)規模を小さくすることができるという利点がある。
なお、上述の説明において、<条件#A2−4><条件#A2−5><条件#A2−6>の3つの条件のうち、一つ以上の条件を満たすと高い誤り訂正能力を得られる可能性があるが、満たさなくても高い誤り訂正能力が得られることもある。
以上のように、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCは、高い誤り訂正能力が得られるとともに、複数のパリティを逐次的に求めることが可能となるため、符号化器の回路規模を小さくすることができるという利点をもつことになる。
なお、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCの、ベースとなる(基礎的な構造となる)、符号化率R=(n−1)/n、時変周期mのパリティ検査多項式に基づくLDPC−CCの0を満たすパリティ検査多項式において、情報X(D)項の数、情報X(D)項の数、・・・、情報Xn−2(D)項の数、情報Xn−1(D)項の数のいずれか、または、すべてにおいて、2以上、または、3以上に設定すると高い誤り訂正能力得ることができる可能性があり、この場合、タナ−グラフを描いた際、時変周期を大きくした効果を得るためには、時変周期mは奇数であるとよく、有効な条件の例としては、

(1)時変周期mが素数であること。
【0330】
(2)時変周期mが奇数であり、かつ、mの約数の数が少ないこと。
【0331】
(3)時変周期mをα×βとする。
【0332】
ただし、α、βは、1を除く奇数であり、かつ、素数。
【0333】
(4)時変周期mをαとする。
【0334】
ただし、αは、1を除く奇数であり、かつ、素数であり、nは2以上の整数。
【0335】
(5)時変周期mをα×β×γとする。
【0336】
ただし、α、β、γは、1を除く奇数であり、かつ、素数。
【0337】
(6)時変周期mをα×β×γ×δとする。
【0338】
ただし、α、β、γ、δは、1を除く奇数であり、かつ、素数。
【0339】
(7)時変周期mをA×Bとする。
ただし、A、Bともに、1を除く奇数であり、かつ、素数であり、A≠Bとし、u、vともに1以上の整数。
【0340】
(8)時変周期mをA×B×Cとする。
ただし、A、B、Cいずれも1を除く奇数であり、かつ、素数であり、A≠B、A≠C、B≠Cとし、u、v、wいずれも1以上の整数。
【0341】
(9)時変周期mをA×B×C×Dとする。
ただし、A、B、C、Dいずれも1を除く奇数であり、かつ、素数であり、A≠B、A≠C、A≠D、B≠C、B≠D、C≠Dとし、u、v、w、xいずれも1以上の整数。
【0342】

となる。ただし、時変周期mが偶数とすると高い誤り訂正能力をもつ符号が得られない、というわけではなく、例えば、時変周期mが偶数のとき、以下のような条件を満たしてもよい。
【0343】

(10)時変周期mを2×Kとする。
ただし、Kが素数であり、かつ、gは1以上の整数とする。
【0344】
(11)時変周期mを2×Lとする
ただし、Lが奇数であり、かつ、Lの約数の数が少ないこと、かつ、gは1以上の整数とする。
【0345】
(12)時変周期mを2×α×βとする。
【0346】
ただし、α、βは1を除く奇数、かつ、α、βは素数であり、かつ、gは1以上の整数とする。
【0347】
(13)時変周期mを2×αとする。
【0348】
ただし、αは1を除く奇数であり、かつ、αは素数であり、かつ、nは2以上の整数であり、かつ、gは1以上の整数とする。
【0349】
(14)時変周期mを2×α×β×γとする。
【0350】
ただし、α、β、γは1を除く奇数であり、かつ、α、β、γは素数であり、かつ、gは1以上の整数とする。
【0351】
(15)時変周期mを2×α×β×γ×δとする。
【0352】
ただし、α、β、γ、δは1を除く奇数であり、かつ、α、β、γ、δは素数であり、かつ、gは1以上の整数とする。
【0353】
(16)時変周期mを2×A×Bとする。
ただし、A、Bともに1を除く奇数であり、かつ、A、Bともには素数であり、A≠Bとし、かつ、u、vともに1以上の整数であり、かつ、gは1以上の整数とする。
【0354】
(17)時変周期mを2×A×B×Cとする。
ただし、A、B、Cいずれも1を除く奇数であり、かつ、A、B、Cいずれも素数であり、A≠B、A≠C、B≠Cとし、u、v、wいずれも1以上の整数であり、かつ、gは1以上の整数とする。
【0355】
(18)時変周期mを2×A×B×C×Dとする。
ただし、A、B、C、Dいずれも1を除く奇数であり、かつ、A、B、C、Dいずれも素数であり、A≠B、A≠C、A≠D、B≠C、B≠D、C≠Dとし、u、v、w、xいずれも1以上の整数とし、かつ、gは1以上の整数とする。
【0356】

ただし、時変周期mが上記の(1)から(9)を満たさない奇数の場合でも、高い誤り訂正能力を得ることができる可能性があり、また、時変周期mが上記の(10)から(18)を満たさない偶数の場合でも、高い誤り訂正能力を得ることができる可能性がある。 また、時変周期mが小さいと符号化率が小さいとき高いビット誤り率でエラーフロアーを発生する可能性がある。この点が、通信システム、放送システム、ストレージ、メモリ等で使用したとき問題となるとき、時変周期mは3より大きいことが望まれるが、システム上、許容範囲の場合、時変周期mを小さく設定してもよい。
【0357】
次に、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCの符号化器、復号化器の構成、および、動作について説明する。
【0358】
特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCを通信システムで用いた場合を一例として考える。特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCを通信システムに適用したとき、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCの符号化器、復号化器の特徴は、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro、および、Hpro=0の関係に基づき符号化器、復号化器が構成され、動作する点である。
【0359】
図25の通信システムの略図を用いて説明する。送信装置2501の符号化器2511は、第sブロックの情報系列(Xs,1,1、Xs,2,1、・・・、Xs,n−1,1、Xs,1,2、Xs,2,2、・・・、Xs,n−1,2、・・・、Xs,1,k、Xs,2,k、・・・、Xs,n−1,k、・・・、Xs,1,m×z、Xs,2,m×z、・・・、Xs,n−1,m×z)を入力とし、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro、および、Hpro=0の関係に基づき符号化を行い、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCの第sブロックの送信系列(符号化系列(符号語))v=(Xs,1,1、Xs,2,1、・・・、Xs,n−1,1、Ppro,s,1、Xs,1,2、Xs,2,2、・・・、Xs,n−1,2、Ppro,s,2、・・・、Xs,1,k、Xs,2,k、・・・、Xs,n−1,k、Ppro,s,k、・・・、Xs,1,m×z、Xs,2,m×z、・・・、Xs,n−1,m×z、Ppro,s,m×zを生成し、出力する。なお、上述で説明したように、パリティは逐次的に求めることができることが、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCの特徴となる。
図25の受信装置2520の復号化器2523は、対数尤度比生成部2522が出力する、例えば、第sブロックの送信系列(符号化系列(符号語))v=(Xs,1,1、Xs,2,1、・・・、Xs,n−1,1、Ppro,s,1、Xs,1,2、Xs,2,2、・・・、Xs,n−1,2、Ppro,s,2、・・・、Xs,1,k、Xs,2,k、・・・、Xs,n−1,k、Ppro,s,k、・・・、Xs,1,m×z、Xs,2,m×z、・・・、Xs,n−1,m×z、Ppro,s,m×zの各ビットのそれそれの対数尤度比を入力とし、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hproに基づいて、例えば、非特許文献4、非特許文献6、非特許文献7、非特許文献8に示されているような、min-sum復号、offset BP復号、Normalized BP復号等の簡易的なBP復号、行演算(Horizontal演算)と列演算(Vertical演算)に対しスケジューリングを行った、Shuffled BP復号、Layered BP復号等のBP(Belief Propagation)(信頼度伝搬)復号、または、非特許文献17に示されているようなビットフリッピング復号等、のLDPC符号のための復号が行われ、第sブロックの推定送信系列(推定符号化系列)(受信系列)を得、出力する。
上記では、通信システムを例に、符号化器、復号化器の動作を説明したが、これに限ったものではなく、ストレージ、メモリ等の分野でも符号化器、復号化器を活用することができる。
【0360】
[符号化率(n−1)/nの(nは2以上の整数)改良したテイルバイティングを用いた、パリティ検査多項式の基づく、周期的時変LDPC−CC]

以下では、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のパリティ検査行列の具体的な構成例について説明する。
【0361】
特許文献2の符号化率R=(n−1)/n(nは2以上の整数)の改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のパリティ検査行列をHproとすると、Hproの列数はn×m×zとあらわすことができる(zは自然数)。(なお、mは、ベースとなる符号化率R=(n−1)/n、パリティ検査多項式に基づくLDPC−CCの時変周期である。)
よって、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)の第sブロックのn×m×zのビット数で構成される送信系列(符号化系列(符号語))vはv=(Xs,1,1、Xs,2,1、・・・、Xs,n−1,1、Ppro,s,1、Xs,1,2、Xs,2,2、・・・、Xs,n−1,2、Ppro,s,2、・・・、Xs,1,m×z−1、Xs,2,m×z−1、・・・、Xs,n−1,m×z−1、Ppro,s,m×z−1、Xs,1,m×z、Xs,2,m×z、・・・、Xs,n−1,m×z、Ppro,s,m×z=(λpro,s,1、λpro,s,2、・・・、λpro,s,m×z−1、λpro,s,m×zとあらわすことができ、Hpro=0が成立する(このとき、「Hpro=0(ゼロ)」は、全ての要素が0(ゼロ)のベクトルであることを意味する)。なお、Xs,j,kは情報Xのビットであり(jは1以上n−1以下の整数)、Ppro,s,kは特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のパリティのビットであり、λpro,s,k=(Xs,1,k、Xs,2,k、・・・、Xs,n−1,k、Ppro,s,k)である(したがって、n=2のとき、λpro,s,k=(Xs,1,k、Ppro,s,k)となり、n=3のとき、λpro,s,k=(Xs,1,k、Xs,2,k、Ppro,s,k)となり、n=4のとき、λpro,s,k=(Xs,1,k、Xs,2,k、Xs,3,k、Ppro,s,k)となり、n=5のとき、λpro,s,k=(Xs,1,k、Xs,2,k、Xs,3,k、Xs,4,k、Ppro,s,k)となり、n=6のとき、λpro,s,k=(Xs,1,k、Xs,2,k、Xs,3,k、Xs,4,k、Xs,5,k、Ppro,s,k)となる。)。ただし、k=1、2、・・・、m×z−1、m×z、つまり、kは1以上m×z以下の整数である。また、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のパリティ検査行列をHproの行数は、m×zとなる。
【0362】
そして、上述で説明したように、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのベースとなる符号化率R=(n−1)/n、時変周期mのパリティ検査多項式に基づくLDPC−CCのi番目(iは0以上m−1以下の整数)のパリティ検査多項式は、式(59)のようにあらわされる。
【0363】
ここでは、式(59)で示した、i番目の0を満たすパリティ検査多項式を次式のようにあらわす。
【0364】
【数70】

このとき、ap,i,q(p=1,2,・・・,n−1(pは1以上n−1以下の整数);q=1,2,・・・,r(qは1以上r以下の整数))は自然数とする。また、y,z=1,2,・・・,r(y,zは1以上r以下の整数)かつy≠zであり、これを満たす、(y,z)に対して(すべてのyおよびすべてのzに対して)、ap,i,y≠ap,i,zを満たす。
そして、高い誤り訂正能力を得るために、r、r、・・・、rn−2、rn−1いずれも3以上に設定する(1以上n−1以下の整数であり、これを満たす、すべてのkにおいてrは3以上)。つまり、式(70)において、1以上n−1以下の整数であり、これを満たす、すべてのkにおいて、X(D)の項数は4以上となる。また、b1,iは自然数となる。
【0365】
したがって、特許文献2の符号化率R=(n−1)/n(nは2以上の整数)の改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のパリティ検査行列をHproの第1行目のベクトルを生成するための0を満たすパリティ検査多項式である式(69)は次式であらわされることになる。(式(70)の0番目を利用することになる。)
【0366】
【数71】

なお、式(71)を作成するために利用した式(70)における0番目の(0を満たす)パリティ検査多項式は次式であらわされる。
【0367】
【数72】

上述で述べたように、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)の第sブロックのn×m×zのビット数で構成される送信系列(符号化系列(符号語))vはv=(Xs,1,1、Xs,2,1、・・・、Xs,n−1,1、Ppro,s,1、Xs,1,2、Xs,2,2、・・・、Xs,n−1,2、Ppro,s,2、・・・、Xs,1,m×z−1、Xs,2,m×z−1、・・・、Xs,n−1,m×z−1、Ppro,s,m×z−1、Xs,1,m×z、Xs,2,m×z、・・・、Xs,n−1,m×z、Ppro,s,m×z=(λpro,s,1、λpro,s,2、・・・、λpro,s,m×z−1、λpro,s,m×zであり、この送信系列を得るために、m×z個の0を満たすパリティ検査多項式が必要となる。このとき、m×z個の0を満たすパリティ検査多項式を順番に並べたとき、e番目の0を満たすパリティ検査多項式を「第e番目の0を満たすパリティ検査多項式」と名付ける(eは0以上m×z−1以下の整数)。したがって、0を満たすパリティ検査多項式は、
0番目:「第0番目の0を満たすパリティ検査多項式」
1番目:「第1番目の0を満たすパリティ検査多項式」
2番目:「第2番目の0を満たすパリティ検査多項式」



e番目:「第e番目の0を満たすパリティ検査多項式」



m×z−2番目:「第m×z−2番目の0を満たすパリティ検査多項式」
m×z−1番目:「第m×z−1番目の0を満たすパリティ検査多項式」
の順に並べられていることになり、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)の第sブロックの送信系列(符号化系列(符号語))vを得ることになる。(なお、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のパリティ検査行列Hproのe+1行で構成されるベクトルが、「第e番目の0を満たすパリティ検査多項式」に相当する。
【0368】
上述の説明から、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)において、
第0番目の0を満たすパリティ検査多項式は、「式(71)の0を満たすパリティ検査多項式」であり、
第1番目の0を満たすパリティ検査多項式は、「式(70)の0を満たす1番目のパリティ検査多項式」であり、
第2番目の0を満たすパリティ検査多項式は、「式(70)の0を満たす2番目のパリティ検査多項式」であり、



第m−2番目の0を満たすパリティ検査多項式は、「式(70)の0を満たすm−2番目のパリティ検査多項式」であり、
第m−1番目の0を満たすパリティ検査多項式は、「式(70)の0を満たすm−1番目のパリティ検査多項式」であり、
第m番目の0を満たすパリティ検査多項式は、「式(70)の0を満たす0番目のパリティ検査多項式」であり、
第m+1番目の0を満たすパリティ検査多項式は、「式(70)の0を満たす1番目のパリティ検査多項式」であり、
第m+2番目の0を満たすパリティ検査多項式は、「式(70)の0を満たす2番目のパリティ検査多項式」であり、



第2m−2番目の0を満たすパリティ検査多項式は、「式(70)の0を満たすm−2番目のパリティ検査多項式」であり、
第2m−1番目の0を満たすパリティ検査多項式は、「式(70)の0を満たすm−1番目のパリティ検査多項式」であり、
第2m番目の0を満たすパリティ検査多項式は、「式(70)の0を満たす0番目のパリティ検査多項式」であり、
第2m+1番目の0を満たすパリティ検査多項式は、「式(70)の0を満たす1番目のパリティ検査多項式」であり、
第2m+2番目の0を満たすパリティ検査多項式は、「式(70)の0を満たす2番目のパリティ検査多項式」であり、



第m×z−2番目の0を満たすパリティ検査多項式は、「式(70)の0を満たすm−2番目のパリティ検査多項式」であり、
第m×z−1番目の0を満たすパリティ検査多項式は、「式(70)の0を満たすm−1番目のパリティ検査多項式」
となる。つまり、
「第0番目の0を満たすパリティ検査多項式は、「式(71)の0を満たすパリティ検査多項式」であり、第e番目(eは1以上m×z−1の整数)の0を満たすパリティ検査多項式は、「式(70)の0を満たすe%m番目のパリティ検査多項式」
となる。
【0369】
ただし、本実施の形態において(本明細書の中で共通である)、「%」はmoduloを意味し、例えば、「α%q」は、αをqで除算したときの余りである。(αは0以上の整数、qは自然数である。)

次に、上述の場合のパリティ検査行列の構成について、詳しく説明する。
【0370】

上述で述べたように、式(70)と式(71)により定義することができる特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)の第sブロックのn×m×zのビット数で構成される送信系列(符号化系列(符号語))vはv=(Xs,1,1、Xs,2,1、・・・、Xs,n−1,1、Ppro,s,1、Xs,1,2、Xs,2,2、・・・、Xs,n−1,2、Ppro,s,2、・・・、Xs,1,m×z−1、Xs,2,m×z−1、・・・、Xs,n−1,m×z−1、Ppro,s,m×z−1、Xs,1,m×z、Xs,2,m×z、・・・、Xs,n−1,m×z、Ppro,s,m×z=(λpro,s,1、λpro,s,2、・・・、λpro,s,m×z−1、λpro,s,m×zとあらわすことができ、Hpro=0が成立する(このとき、「Hpro=0(ゼロ)」は、全ての要素が0(ゼロ)のベクトルであることを意味する)。なお、Xs,j,kは情報Xのビットであり(jは1以上n−1以下の整数)、Ppro,s,kは特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のパリティのビットであり、λpro,s,k=(Xs,1,k、Xs,2,k、・・・、Xs,n−1,k、Ppro,s,k)である(したがって、n=2のとき、λpro,s,k=(Xs,1,k、Ppro,s,k)となり、n=3のとき、λpro,s,k=(Xs,1,k、Xs,2,k、Ppro,s,k)となり、n=4のとき、λpro,s,k=(Xs,1,k、Xs,2,k、Xs,3,k、Ppro,s,k)となり、n=5のとき、λpro,s,k=(Xs,1,k、Xs,2,k、Xs,3,k、Xs,4,k、Ppro,s,k)となり、n=6のとき、λpro,s,k=(Xs,1,k、Xs,2,k、Xs,3,k、Xs,4,k、Xs,5,k、Ppro,s,k)となる。)。ただし、k=1、2、・・・、m×z−1、m×z、つまり、kは1以上m×z以下の整数である。また、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のパリティ検査行列をHproの行数は、m×zとなる。
【0371】
このときの改良したテイルバイティングを行った際の、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のパリティ検査行列Hproの構成について図26及び図27を用いて説明する。
【0372】
特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのベースとなる符号化率R=(n−1)/n、時変周期mのパリティ検査多項式に基づくLDPC−CCのi番目(iは0以上m−1以下の整数)のパリティ検査多項式である式(70)に対応するサブ行列(ベクトル)をHとすると、第iサブ行列は次式のようにあらわすことができる。
【0373】
【数73】
式(73)において、n個連続した「1」は、式(70)の各式におけるD(D)=1×X(D)、D(D)=1×X(D)、・・・Dn−1(D)=1×Xn−1(D)(つまり、D(D)=1×X(D)なお、kは1以上n−1以下の整数)及びDP(D)=1×P(D)の項に相当する。
【0374】
上記で定義した送信系列vに対応する改良したテイルバイティングを行った際の、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のパリティ検査行列Hproのうち、時点m×z近辺のパリティ検査行列Hproを図26に示す。図26に示すように、パリティ検査行列Hproにおいて、第i行と第i+1行とでは、サブ行列がn列右にシフトした構成となる(図26参照)。
【0375】
また、図26において、符号2601はパリティ検査行列のm×z行(最後の行)を示しており、上述でも述べたように、式(70)のm−1番目の0を満たすパリティ検査多項式に相当する。符号2602はパリティ検査行列のm×z−1行を示しており、上述でも述べたように、式(70)のm−2番目の0を満たすパリティ検査多項式に相当する。符号2603は時点m×zに相当する列群を示しており、符号2603の列群は、Xs,1,m×z、Xs,2,m×z、・・・、Xs,n−1,m×z、Ppro,s,m×zの順に並んでいる。符号2604は時点m×z−1に相当する列群を示しており、符号2604の列群は、Xs,1,m×z−1、Xs,2,m×z−1、・・・、Xs,n−1,m×z−1、Ppro,s,m×z−1の順に並んでいる。
【0376】
次に、送信系列の順番を入れ替え、v=(・・・、Xs,1,m×z−1、Xs,2,m×z−1、・・・、Xs,n−1,m×z−1、Ppro,s,m×z−1、s,1,m×z、Xs,2,m×z、・・・、Xs,n−1,m×z、Ppro,s,m×z、Xs,1,1、Xs,2,1、・・・、Xs,n−1,1、Ppro,s,1、Xs,1,2、Xs,2,2、・・・、Xs,n−1,2、Ppro,s,2、・・・)に対応するパリティ検査行列のうち時点m×z−1、m×z、1、2近辺のパリティ検査行列を図27に示す。このとき、図27で示したパリティ検査行列の部分が、改良したテイルバイティングを行ったときの特徴的な部分となる。図27に示すように、送信系列の順番を入れ替えたときのパリティ検査行列Hproにおいて、第i行と第i+1行とでは、サブ行列がn列右にシフトした構成となる(図27参照)。
【0377】
また、図27において、符号2705は図26のようにパリティ検査行列をあらわした場合、m×z×n列目に相当する列となり、符号2706は図26のようにパリティ検査行列をあらわした場合、1列目に相当する列となる。
【0378】
符号2707は時点m×z−1に相当する列群を示しており、符号2707の列群は、Xs,1,m×z−1、Xs,2,m×z−1、・・・、Xs,n−1,m×z−1、Ppro,s,m×z−1の順に並んでいる。符号2708は時点m×zに相当する列群を示しており、符号2708の列群は、Xs,1,m×z、Xs,2,m×z、・・・、Xs,n−1,m×z、Ppro,s,m×zの順に並んでいる。符号2709は時点1に相当する列群を示しており、符号2709の列群は、Xs,1,1、Xs,2,1、・・・、Xs,n−1,1、Ppro,s,1の順に並んでいる。符号2710は時点2に相当する列群を示しており、符号2710の列群は、Xs,1,2、Xs,2,2、・・・、Xs,n−1,2、Ppro,s,2の順に並んでいる。
【0379】
符号2711は図26のようにパリティ検査行列をあらわした場合、m×z行目に相当する行となり、符号2712は図26のようにパリティ検査行列をあらわした場合、1行目に相当する行となる。そして、改良したテイルバイティングを行ったときのパリティ検査行列の特徴的な部分は、図27において、符号2713より左かつ符号2714より下の部分、および、実施の形態A1および上述で説明したように、図27の符号2712の図26のようにパリティ検査行列をあらわしたときの1行目の部分となる。
【0380】
特許文献2の符号化率R=(n−1)/n(nは2以上の整数)の改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のパリティ検査行列をHproの第1行目のベクトルを生成するための0を満たすパリティ検査多項式である式(71)に対応するサブ行列(ベクトル)をΩとすると、Ωは次式のようにあらわすことができる。
【0381】
【数74】
式(74)において、n個連続した「1」は、式(71)の各式におけるD(D)=1×X(D)、D(D)=1×X(D)、・・・Dn−1(D)=1×Xn−1(D)(つまり、D(D)=1×X(D)なお、kは1以上n−1以下の整数)及びDP(D)=1×P(D)の項に相当する。
【0382】
すると、図27の符号2712の図26のようにパリティ検査行列をあらわしたときの1行目に相当する行は、式(74)を用いてあらわすことができる(図27の符号2712参照)そして、図27の符号2712(図26のようにパリティ検査行列をあらわしたときの1行目に相当する行)を除く行は、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのベースとなる符号化率R=(n−1)/n、時変周期mのパリティ検査多項式に基づくLDPC−CCのi番目(iは0以上m−1以下の整数)のパリティ検査多項式である式(70)のいずれかの0を満たすパリティ検査多項式に相当する行となる。(この点については、上述で説明したとおりである。)
以上について、図26を用いて補足説明をすると、図26には記載していないが、図26のようにあらわした、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のパリティ検査行列Hproにおいて、第1行を抽出して得られるベクトルは、0を満たすパリティ検査多項式である式(71)に相当するベクトルとなる。
そして、図26のようにあらわした、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のパリティ検査行列Hproのe+1行で構成されるベクトル(ただし、eは1以上m×z−1以下の整数とする。)は、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのベースとなる符号化率R=(n−1)/n、時変周期mのパリティ検査多項式に基づくLDPC−CCのi番目(iは0以上m−1以下の整数)のパリティ検査多項式である式(70)のうちの、e%m番目の0を満たすパリティ検査多項式に相当するベクトルとなる。
【0383】
なお、上述の説明では、説明をわかりやすくするため、式(70)および式(71)で定義する、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列について説明したが、式(59)および式(68)で定義する、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列も同様にして生成することができる。
【0384】
次に、上記で説明した、式(70)および式(71)で定義する、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列と等価のパリティ検査多項行列について説明する。
【0385】
上述では、第s番目のブロックの送信系列(符号化系列(符号語))vはv=(Xs,1,1、Xs,2,1、・・・、Xs,n−1,1、Ppro,s,1、Xs,1,2、Xs,2,2、・・・、Xs,n−1,2、Ppro,s,2、・・・、Xs,1,m×z−1、Xs,2,m×z−1、・・・、Xs,n−1,m×z−1、Ppro,s,m×z−1、Xs,1,m×z、Xs,2,m×z、・・・、Xs,n−1,m×z、Ppro,s,m×z=(λpro,s,1、λpro,s,2、・・・、λpro,s,m×z−1、λpro,s,m×zであり、Hpro=0(なお、「Hpro=0(ゼロ)の「0(ゼロ)」」は、全ての要素が0(ゼロ)のベクトルであることを意味する。)が成立する特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hproの構成について説明したが、以降では、第s番目のブロックの送信系列(符号化系列(符号語))uはu=(Xs,1,1、Xs,1,2、・・・、Xs,1,m×z、Xs,2,1、Xs,2,2、・・・、Xs,2,m×z、・・・、Xs,n−2,1、Xs,n−2,2、・・・、Xs,n−2,m×z、Xs,n−1,1、Xs,n−1,2、・・・、Xs,n−1,m×z、Ppro,s,1、Ppro,s,2、・・・、Ppro,s,m×z=(ΛX1,s、ΛX2,s、ΛX3,s、・・・、ΛXn−2,s、ΛXn−1,s、Λpro,sとあらわされたとき、Hpro_m=0(なお、「Hpro_m=0(ゼロ)の「0(ゼロ)」は、全ての要素が0(ゼロ)のベクトルであることを意味する。)が成立する特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mの構成について説明する。
なお、ΛXk,s=(Xs,k,1、Xs,k,2、Xs,k,3、・・・、Xs,k,m×z−2、Xs,k,m×z−1、Xs,k,m×z)(ただし、kは1以上n−1以下の整数)、および、Λpro,s=(Ppro,s,1、Ppro,s,2、Ppro,s,3、・・・、Ppro,s,m×z−2、Ppro,s,m×z−1、Ppro,s,m×z)とあらわされる。したがって、例えば、n=2のとき、u=(ΛX1,s、Λpro,s、n=3のとき、u=(ΛX1,s、ΛX2,s、Λpro,s、n=4のとき、u=(ΛX1,s、ΛX2,s、ΛX3,s、Λpro,s、n=5のとき、u=(ΛX1,s、ΛX2,s、ΛX3,s、ΛX4,s、Λpro,s、n=6のとき、u=(ΛX1,s、ΛX2,s、ΛX3,s、ΛX4,s、ΛX5,s、Λpro,s、n=7のとき、u=(ΛX1,s、ΛX2,s、ΛX3,s、ΛX4,s、ΛX5,s、ΛX6,s、Λpro,s、n=8のとき、u=(ΛX1,s、ΛX2,s、ΛX3,s、ΛX4,s、ΛX5,s、ΛX6,s、ΛX7,s、Λpro,sとあらわされる。
このとき、1ブロックに含まれる情報Xのビットはm×zビット、1ブロックに含まれる情報Xのビットはm×zビット、・・・、1ブロックに含まれる情報Xn−2のビットはm×zビット、1ブロックに含まれる情報Xn−1のビットはm×zビット、(したがって、1ブロックに含まれる情報Xのビットはm×zビット(kは1以上n−1以下の整数))、1ブロックに含まれるパリティビットPproのビットはm×zビットであるので、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mは、図28のように、Hpro_m=[Hx,1、x,2、・・・、Hx,n−2、x,n−1、]とあらわすことができる。
そして、第s番目のブロックの送信系列(符号化系列(符号語))uはu=(Xs,1,1、Xs,1,2、・・・、Xs,1,m×z、Xs,2,1、Xs,2,2、・・・、Xs,2,m×z、・・・、Xs,n−2,1、Xs,n−2,2、・・・、Xs,n−2,m×z、Xs,n−1,1、Xs,n−1,2、・・・、Xs,n−1,m×z、Ppro,s,1、Ppro,s,2、・・・、Ppro,s,m×z=(ΛX1,s、ΛX2,s、ΛX3,s、・・・、ΛXn−2,s、ΛXn−1,s、Λpro,sとしているので、Hx,1は情報Xに関連する部分行列、Hx,2は情報Xに関連する部分行列、・・・、Hx,n−2は情報Xn−2に関連する部分行列、Hx,n−1は情報Xn−1に関連する部分行列(したがって、Hx,kは情報Xに関連する部分行列(kは1以上n−1以下の整数))、HはパリティPproに関連する部分行列となり、図28に示すように、パリティ検査行列Hpro_mは、m×z行、n×m×z列の行列となり、情報Xに関連する部分行列Hx,1は、m×z行、m×z列の行列、情報Xに関連する部分行列Hx,2は、m×z行、m×z列の行列、・・・、情報Xn−2に関連する部分行列Hx,n−2は、m×z行、m×z列の行列、情報Xn−1に関連する部分行列Hx,n−1は、m×z行、m×z列の行列(したがって、情報Xに関連する部分行列Hx,kは、m×z行、m×z列の行列(kは1以上n−1以下の整数))、パリティPproに関連する部分行列Hは、m×z行、m×z列の行列となる。
特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)の第sブロックのn×m×zのビット数で構成される送信系列(符号化系列(符号語))uはu=(Xs,1,1、Xs,1,2、・・・、Xs,1,m×z、Xs,2,1、Xs,2,2、・・・、Xs,2,m×z、・・・、Xs,n−2,1、Xs,n−2,2、・・・、Xs,n−2,m×z、Xs,n−1,1、Xs,n−1,2、・・・、Xs,n−1,m×z、Ppro,s,1、Ppro,s,2、・・・、Ppro,s,m×z=(ΛX1,s、ΛX2,s、ΛX3,s、・・・、ΛXn−2,s、ΛXn−1,s、Λpro,sであり、この送信系列を得るために、m×z個の0を満たすパリティ検査多項式が必要となる。このとき、m×z個の0を満たすパリティ検査多項式を順番に並べたとき、e番目の0を満たすパリティ検査多項式を「第e番目の0を満たすパリティ検査多項式」と名付ける(eは0以上m×z−1以下の整数)。したがって、0を満たすパリティ検査多項式は、
0番目:「第0番目の0を満たすパリティ検査多項式」
1番目:「第1番目の0を満たすパリティ検査多項式」
2番目:「第2番目の0を満たすパリティ検査多項式」



e番目:「第e番目の0を満たすパリティ検査多項式」



m×z−2番目:「第m×z−2番目の0を満たすパリティ検査多項式」
m×z−1番目:「第m×z−1番目の0を満たすパリティ検査多項式」
の順に並べられていることになり、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)の第sブロックの送信系列(符号化系列(符号語))uを得ることになる。(なお、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のパリティ検査行列Hpro_mのe+1行で構成されるベクトルが、「第e番目の0を満たすパリティ検査多項式」に相当する。
【0386】
よって、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)において、
第0番目の0を満たすパリティ検査多項式は、「式(71)の0を満たすパリティ検査多項式」であり、
第1番目の0を満たすパリティ検査多項式は、「式(70)の0を満たす1番目のパリティ検査多項式」であり、
第2番目の0を満たすパリティ検査多項式は、「式(70)の0を満たす2番目のパリティ検査多項式」であり、



第m−2番目の0を満たすパリティ検査多項式は、「式(70)の0を満たすm−2番目のパリティ検査多項式」であり、
第m−1番目の0を満たすパリティ検査多項式は、「式(70)の0を満たすm−1番目のパリティ検査多項式」であり、
第m番目の0を満たすパリティ検査多項式は、「式(70)の0を満たす0番目のパリティ検査多項式」であり、
第m+1番目の0を満たすパリティ検査多項式は、「式(70)の0を満たす1番目のパリティ検査多項式」であり、
第m+2番目の0を満たすパリティ検査多項式は、「式(70)の0を満たす2番目のパリティ検査多項式」であり、



第2m−2番目の0を満たすパリティ検査多項式は、「式(70)の0を満たすm−2番目のパリティ検査多項式」であり、
第2m−1番目の0を満たすパリティ検査多項式は、「式(70)の0を満たすm−1番目のパリティ検査多項式」であり、
第2m番目の0を満たすパリティ検査多項式は、「式(70)の0を満たす0番目のパリティ検査多項式」であり、
第2m+1番目の0を満たすパリティ検査多項式は、「式(70)の0を満たす1番目のパリティ検査多項式」であり、
第2m+2番目の0を満たすパリティ検査多項式は、「式(70)の0を満たす2番目のパリティ検査多項式」であり、



第m×z−2番目の0を満たすパリティ検査多項式は、「式(70)の0を満たすm−2番目のパリティ検査多項式」であり、
第m×z−1番目の0を満たすパリティ検査多項式は、「式(70)の0を満たすm−1番目のパリティ検査多項式」
となる。つまり、
「第0番目の0を満たすパリティ検査多項式は、「式(71)の0を満たすパリティ検査多項式」であり、第e番目(eは1以上m×z−1以下の整数)の0を満たすパリティ検査多項式は、「式(70)の0を満たすe%m番目のパリティ検査多項式」
となる。
【0387】
ただし、本実施の形態において(本明細書の中で共通である)、「%」はmoduloを意味し、例えば、「α%q」は、αをqで除算したときの余りである。(αは0以上の整数、qは自然数である。)
図29は、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mにおけるパリティPproに関連する部分行列Hの構成を示している。
【0388】
上述の説明から、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mにおけるパリティPproに関連する部分行列Hの第1行目を構成するベクトルは、第0番目の0を満たすパリティ検査多項式、つまり、「式(71)の0を満たすパリティ検査多項式」のパリティに関連する項から生成することができる。
【0389】
同様に、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mにおけるパリティPproに関連する部分行列Hの第2行目を構成するベクトルは、第1番目の0を満たすパリティ検査多項式、つまり、「式(70)の0を満たす1番目のパリティ検査多項式」のパリティに関連する項から生成することができる。
特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mにおけるパリティPproに関連する部分行列Hの第3行目を構成するベクトルは、第2番目の0を満たすパリティ検査多項式、つまり、「式(70)の0を満たす2番目のパリティ検査多項式」のパリティに関連する項から生成することができる。
【0390】



特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mにおけるパリティPproに関連する部分行列Hの第m−1行目を構成するベクトルは、第m−2番目の0を満たすパリティ検査多項式、つまり、「式(70)の0を満たすm−2番目のパリティ検査多項式」のパリティに関連する項から生成することができる。
特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mにおけるパリティPproに関連する部分行列Hの第m行目を構成するベクトルは、第m−1番目の0を満たすパリティ検査多項式、つまり、「式(70)の0を満たすm−1番目のパリティ検査多項式」のパリティに関連する項から生成することができる。
特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mにおけるパリティPproに関連する部分行列Hの第m+1行目を構成するベクトルは、第m番目の0を満たすパリティ検査多項式、つまり、「式(70)の0を満たす0番目のパリティ検査多項式」のパリティに関連する項から生成することができる。
特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mにおけるパリティPproに関連する部分行列Hの第m+2行目を構成するベクトルは、第m+1番目の0を満たすパリティ検査多項式、つまり、「式(70)の0を満たす1番目のパリティ検査多項式」のパリティに関連する項から生成することができる。
特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mにおけるパリティPproに関連する部分行列Hの第m+3行目を構成するベクトルは、第m+2番目の0を満たすパリティ検査多項式、つまり、「式(70)の0を満たす2番目のパリティ検査多項式」のパリティに関連する項から生成することができる。
【0391】



特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mにおけるパリティPproに関連する部分行列Hの第2m−1行目を構成するベクトルは、第2m−2番目の0を満たすパリティ検査多項式、つまり、「式(70)の0を満たすm−2番目のパリティ検査多項式」のパリティに関連する項から生成することができる。
特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mにおけるパリティPproに関連する部分行列Hの第2m行目を構成するベクトルは、第2m−1番目の0を満たすパリティ検査多項式、つまり、「式(70)の0を満たすm−1番目のパリティ検査多項式」のパリティに関連する項から生成することができる。
特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mにおけるパリティPproに関連する部分行列Hの第2m+1行目を構成するベクトルは、第2m番目の0を満たすパリティ検査多項式、つまり、「式(70)の0を満たす0番目のパリティ検査多項式」のパリティに関連する項から生成することができる。
特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mにおけるパリティPproに関連する部分行列Hの第2m+2行目を構成するベクトルは、第2m+1番目の0を満たすパリティ検査多項式、つまり、「式(70)の0を満たす1番目のパリティ検査多項式」のパリティに関連する項から生成することができる。
特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mにおけるパリティPproに関連する部分行列Hの第2m+3行目を構成するベクトルは、第2m+2番目の0を満たすパリティ検査多項式、つまり、「式(70)の0を満たす2番目のパリティ検査多項式」のパリティに関連する項から生成することができる。
【0392】



特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mにおけるパリティPproに関連する部分行列Hの第m×z−1行目を構成するベクトルは、第m×z−2番目の0を満たすパリティ検査多項式、つまり、「式(70)の0を満たすm−2番目のパリティ検査多項式」のパリティに関連する項から生成することができる。
特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mにおけるパリティPproに関連する部分行列Hの第m×z行目を構成するベクトルは、第m×z−1番目の0を満たすパリティ検査多項式、つまり、「式(70)の0を満たすm−1番目のパリティ検査多項式」のパリティに関連する項から生成することができる。
【0393】
よって、
「特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mにおけるパリティPproに関連する部分行列Hの第1行目を構成するベクトルは、第0番目の0を満たすパリティ検査多項式、つまり、「式(71)の0を満たすパリティ検査多項式」のパリティに関連する項から生成することができ、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mにおけるパリティPproに関連する部分行列Hの第e+1行目(eは1以上m×z−1以下の整数)を構成するベクトルは、第e番目の0を満たすパリティ検査多項式、つまり、「式(70)の0を満たすe%m番目のパリティ検査多項式」のパリティに関連する項から生成することができる。」
なお、mは、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのベースとなる符号化率R=(n−1)/nのパリティ検査多項式に基づくLDPC−CCの時変周期である。
【0394】
図29に特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mにおけるパリティPproに関連する部分行列Hの構成を示す。特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mにおけるパリティPproに関連する部分行列Hのi行j列の要素をHp,comp[i][j](iおよびjは1以上m×z以下の整数(i、j=1、2、3、・・・、m×z−1、m×z))とあらわすものとする。すると、以下が成立する。
特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCにおいて、0を満たすパリティ検査多項式が、式(70)および式(71)を満たすとき、パリティPproに関連する部分行列Hの第1行目に関連するパリティ検査多項式は、式(71)となる。
したがって、パリティPproに関連する部分行列Hの第1行目において、要素が「1」を満たす場合は、
【0395】
【数75】
となる。そして、パリティPproに関連する部分行列Hの第1行のHp,comp[1][j]において、式(75)以外の要素は「0」なる。つまり、jは1以上m×z以下の整数であり、かつ、j≠1を満たす、すべてのjにおいて、Hp,comp[1][j]=0となる。なお、式(75)は、式(71)におけるDP(D)(=P(D))に相当する要素である(図29参照)。
特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCにおいて、0を満たすパリティ検査多項式が、式(70)および式(71)を満たすとき、パリティPproに関連する部分行列Hの第s行目において、(sは2以上m×z以下の整数)(s−1)%m=k(%はモジュラ演算(modulo)を示す。)とすると、パリティPproに関連する部分行列Hの第s行目に関連するパリティ検査多項式は、式(70)から、以下のようにあらわされる。
【0396】
【数76】
したがって、パリティPproに関連する部分行列Hの第s行目において、要素が「1」を満たす場合は、
【0397】
【数77】
および、
【0398】
【数78】
となる。そして、パリティPproに関連する部分行列Hの第s行のHp,comp[s][j]において、式(77)、式(78−1,78−2)以外の要素は「0」なる。つまり、s−b1,k≧1の場合、j≠s、かつ、j≠s−b1,kを満たす、すべてのj(ただし、jは1以上m×z以下の整数)において、Hp,comp[s][j]=0となる。s−b1,k<1の場合、j≠s、かつ、j≠s−b1,k+m×zを満たす、すべてのj(ただし、jは1以上m×z以下の整数)において、Hp,comp[s][j]=0となる。
なお、式(77)は、式(76)におけるDP(D)(=P(D))に相当する要素であり(図29の行列の対角成分の「1」に相当する)、また、式(78−1,78−2)における分類は、パリティPproに関連する部分行列Hの行は1からm×zまで存在し、列も1からm×zまで存在するからである。
また、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mにおけるパリティPproに関連する部分行列Hの行と、式(70)、および、式(71)のパリティ検査多項式の関係は、図29に示したようになり、この点は、上述で説明した図24と同様である。
【0399】
次に、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mにおける情報Xに関連する部分行列Hx,qの各要素の値について説明する(qは1以上n−1以下の整数)。
【0400】
図30に特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mにおける情報Xに関連する部分行列Hx,qの構成を示す。
【0401】
特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mにおける情報Xに関連する部分行列Hx,1のi行j列の要素をHx,1,comp[i][j](iおよびjは1以上m×z以下の整数(i、j=1、2、3、・・・、m×z−1、m×z))とあらわすものとする。すると、以下が成立する。
特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCにおいて、0を満たすパリティ検査多項式が、式(70)および式(71)を満たすとき、情報Xに関連する部分行列Hx,1の第1行目のパリティ検査行列は、式(71)となる。
したがって、情報Xに関連する部分行列Hx,1の第1行目において、要素が「1」を満たす場合は、
【0402】
【数79】
および、1−a1,0,y<1となるので(a1,0,yは自然数であるので)、
【0403】
【数80】
yは1以上r以下の整数(y=1、2、・・・、r−1、r)で、式(80)は成立する、
となる。そして、情報Xに関連する部分行列Hx,1の第1行のHx,1,comp[1][j]において、式(79)、式(80)以外の要素は「0」なる。つまり、{j≠1}、かつ、{j≠1−a1,0,y+m×zを、すべてのyで満たす。ただし、yは1以上r以下の整数。}を満たす、すべてのj(ただし、jは1以上m×z以下の整数)において、Hx,1,comp[1][j]=0となる。
なお、式(79)は、式(71)におけるD(D)(=X(D))に相当する要素であり(図30の行列の対角成分の「1」に相当する)、また、式(80)となるのは、情報Xに関連する部分行列Hx,1の行は1からm×zまで存在し、列も1からm×zまで存在するからである。
特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCにおいて、0を満たすパリティ検査多項式が、式(70)および式(71)を満たすとき、情報Xに関連する部分行列Hx,1の第s行目において、(sは2以上m×z以下の整数)(s−1)%m=k(%はモジュラ演算(modulo)を示す。)とすると、情報Xに関連する部分行列Hx,1の第s行目に関連するパリティ検査多項式は、式(70)から、式(76)とあらわされる。
したがって、情報Xに関連する部分行列Hx,1の第s行目において、要素が「1」を満たす場合は、
【0404】
【数81】
および、
【0405】
【数82】
となる。そして、情報Xに関連する部分行列Hx,1の第s行のHx,1,comp[s][j]において、式(81)、式(82−1,82−2)以外の要素は「0」なる。つまり、{j≠s}、かつ、{yは1以上r以下の整数で、これを満たす、すべてのyで、以下が成立する。s−a1,k,y≧1の場合、j≠s−a1,k,yを満たしs−a1,k,y<1の場合、j≠s−a1,k,y+m×zを満たす。}を満たす、すべてのj(ただし、jは1以上m×z以下の整数)において、Hx,1,comp[s][j]=0となる。
なお、式(81)は、式(76)におけるD(D)(=X(D))に相当する要素であり(図30の行列の対角成分の「1」に相当する)、また、式(82−1,82−2)における分類は、情報Xに関連する部分行列Hx,1の行は1からm×zまで存在し、列も1からm×zまで存在するからである。
また、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mにおける情報Xに関連する部分行列Hx,1の行と、式(70)、および、式(71)のパリティ検査多項式の関係は、図30(なお、q=1)に示したようになり、この点は、上述で説明した図24と同様である。
【0406】


上述では、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mにおける情報Xに関連する部分行列Hx,1の構成について説明したが、以下では、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mにおける情報X(qは1以上n−1以下の整数)に関連する部分行列Hx,qの構成について説明する。(部分行列Hx,qの構成は、上述の部分行列Hx,1の説明と同様に、説明することができる。)
特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mにおける情報Xに関連する部分行列Hx,qの構成は、図30のとおりである。
【0407】
特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mにおける情報Xに関連する部分行列Hx,qのi行j列の要素をHx,q,comp[i][j](iおよびjは1以上m×z以下の整数(i、j=1、2、3、・・・、m×z−1、m×z))とあらわすものとする。すると、以下が成立する。
特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCにおいて、0を満たすパリティ検査多項式が、式(70)および式(71)を満たすとき、情報Xに関連する部分行列Hx,qの第1行目のパリティ検査行列は、式(71)となる。
したがって、情報Xに関連する部分行列Hx,qの第1行目において、要素が「1」を満たす場合は、
【0408】
【数83】
および、1−aq,0,y<1となるので(aq,0,yは自然数であるので)、
【0409】
【数84】
yは1以上r以下の整数(y=1、2、・・・、r−1、r)で、式(84)は成立する、
となる。そして、情報Xに関連する部分行列Hx,qの第1行のHx, q,comp[1][j]において、式(83)、式(84)以外の要素は「0」なる。つまり、{j≠1}、かつ、{j≠1−aq,0,y+m×zを、すべてのyで満たす。ただし、yは1以上r以下の整数。}を満たす、すべてのj(ただし、jは1以上m×z以下の整数)において、Hx, q,comp[1][j]=0となる。
なお、式(83)は、式(71)におけるD(D)(=X(D))に相当する要素であり(図30の行列の対角成分の「1」に相当する)、また、式(84)となるのは、情報Xに関連する部分行列Hx,qの行は1からm×zまで存在し、列も1からm×zまで存在するからである。
特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCにおいて、0を満たすパリティ検査多項式が、式(70)および式(71)を満たすとき、情報Xに関連する部分行列Hx,qの第s行目において、(sは2以上m×z以下の整数)(s−1)%m=k(%はモジュラ演算(modulo)を示す。)とすると、情報Xに関連する部分行列Hx,qの第s行目に関連するパリティ検査多項式は、式(70)から、式(76)とあらわされる。
したがって、情報Xに関連する部分行列Hx,qの第s行目において、要素が「1」を満たす場合は、
【0410】
【数85】
および、
【0411】
【数86】
となる。そして、情報Xに関連する部分行列Hx,qの第s行のHx, q,comp[s][j]において、式(85)、式(86−1,86−2)以外の要素は「0」なる。つまり、{j≠s}、かつ、{yは1以上r以下の整数で、これを満たす、すべてのyで、以下が成立する。s−aq,k,y≧1の場合、j≠s−aq,k,yを満たしs−aq,k,y<1の場合、j≠s−aq,k,y+m×zを満たす。}を満たす、すべてのj(ただし、jは1以上m×z以下の整数)において、Hx, q,comp[s][j]=0となる。
なお、式(85)は、式(76)におけるD(D)(=X(D))に相当する要素であり(図30の行列の対角成分の「1」に相当する)、また、式(86−1,86−2)における分類は、情報Xに関連する部分行列Hx,qの行は1からm×zまで存在し、列も1からm×zまで存在するからである。
また、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mにおける情報Xに関連する部分行列Hx,qの行と、式(70)、および、式(71)のパリティ検査多項式の関係は、図30に示したようになり、この点は、上述で説明した図24と同様である。
【0412】

上記では、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mの構成について説明した。以下では、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mと等価なパリティ検査行列の生成方法について説明する。
図31は、符号化率(N−M)/N(N>M>0)のLDPC(ブロック)符号のパリティ検査行列Hの構成を示しており、例えば、図31のパリティ検査行列は、M行N列の行列となる。そして、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mを、図31のパリティ検査行列Hであらわすものとする。(したがって、Hpro_m=(図31の)Hとなる。以下では、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列をHと記載することにする。)
図31において、第j番目のブロックの送信系列(符号語)vT=(Yj,1、Yj,2、Yj,3、・・・、Yj,N−2、Yj,N−1、Yj,N)とする(組織符号の場合、Yj,k(kは1以上N以下の整数)は、情報XまたはパリティP(パリティPpro)となる。)。
このとき、Hv=0が成立する。(なお、ここでの「Hv=0の0(ゼロ)」は、全ての要素が0のベクトルであることを意味する。つまり、すべてのk(kは1以上M以下の整数)において、第k行の値は0である。)
そして、第j番目のブロックの送信系列vの第k行目(ただし、kは、1以上N以下の整数)の要素(図31において、送信系列vの転置行列vの場合、第k列目の要素)は、Yj,kであるとともに、符号化率(N−M)/N(N>M>0)のLDPC(ブロック)符号のパリティ検査行列(つまり、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列)Hの第k列目を抽出したベクトルを図31のようにcとあらわす。このとき、LDPC(ブロック)符号のパリティ検査行列(つまり、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列)Hは、以下のようにあらわされる。
【0413】
【数87】
図32は、第j番目のブロックの送信系列(符号語)vT=(Yj,1、Yj,2、Yj,3、・・・、Yj,N−2、Yj,N−1、Yj,N)に対しインタリーブを行うときの構成を示している。図32において、符号化部3202は、情報3201を入力とし、符号化を行い、符号化後のデータ3203を出力する。例えば、図32の符号化率(N−M)/N(N>M>0)のLDPC(ブロック)符号(特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC)の符号化を行う場合、符号化部3202は、第j番目のブロックにおける情報を入力し、図31の符号化率(N−M)/N(N>M>0)のLDPC(ブロック)符号のパリティ検査行列(つまり、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列)Hに基づき、符号化を行い、第j番目のブロックの送信系列(符号語)vT=(Yj,1、Yj,2、Yj,3、・・・、Yj,N−2、Yj,N−1、Yj,N)を出力する。
そして、蓄積および並び替え部(インタリーブ部)3204は、符号化後のデータ3203を入力とし、符号化後のデータ3203を蓄積し、順番の並び替えを行い、インタリーブ後のデータ3205を出力する。したがって、蓄積および並び替え部(インタリーブ部)3204は、第j番目のブロックの送信系列vを、v=(Yj,1、Yj,2、Yj,3、・・・、Yj,N−2、Yj,N−1、Yj,Nを入力とし、送信系列vの要素の順番の入れ替えを行った結果、図32に示すように送信系列(符号語)v’=(Yj,32、Yj,99、Yj,23、・・・、Yj,234、Yj,3、Yj,43Tを出力することになる(v’は一例である。)。なお、前述でも触れたように第j番目のブロックの送信系列vに対し、送信系列vの要素の順番の入れ替えを行った送信系列がv’となる。したがって、v’は、1行N列のベクトルであり、v’のN個の要素には、Yj,1、Yj,2、Yj,3、・・・、Yj,N−2、Yj,N−1、Yj,Nがそれぞれ一つ存在することになる。
【0414】
図32のように、符号化部3202および蓄積および並び替え部(インタリーブ部)3204の機能をもつ符号化部3207を考える。したがって、符号化部3207は、情報3201を入力とし、符号化を行い、符号化後のデータ3203を出力することになり、例えば、符号化部3207は、第j番目のブロックにおける情報を入力し、図32に示すように送信系列(符号語)v’=(Yj,32、Yj,99、Yj,23、・・・、Yj,234、Yj,3、Yj,43Tを出力することになる。このとき、符号化部3207に相当する符号化率(N−M)/N(N>M>0)のLDPC(ブロック)符号のパリティ検査行列H’ (つまり、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列と等価のパリティ検査行列H’)について、図33を用いて説明する。
【0415】
図33に、送信系列(符号語)v’=(Yj,32、Yj,99、Yj,23、・・・、Yj,234、Yj,3、Yj,43Tとした場合のパリティ検査行列H’の構成を示す。このとき、第j番目のブロックの送信系列v’の第1行目の要素(図33において、送信系列v’の転置行列v’の場合、第1列目の要素)は、Yj,32である。したがって、パリティ検査行列H’の第1列目を抽出したベクトルは、上述で説明したベクトルc(k=1、2、3、・・・、N−2、N−1、N)を用いると、c32となる。同様に、第j番目のブロックの送信系列v’の第2行目の要素(図33において、送信系列v’の転置行列v’の場合、第2列目の要素)は、Yj,99である。したがって、パリティ検査行列H’の第2列目を抽出したベクトルは、c99となる。また、図33から、パリティ検査行列H’の第3列目を抽出したベクトルは、c23となり、パリティ検査行列H’の第N−2列目を抽出したベクトルは、c234となり、パリティ検査行列H’の第N−1列目を抽出したベクトルは、cとなり、パリティ検査行列H’の第N列目を抽出したベクトルは、c43となる。
つまり、第j番目のブロックの送信系列v’の第i行目の要素(図33において、送信系列v’の転置行列v’の場合、第i列目の要素)は、Yj,g(g=1、2、3、・・・、N−2、N−1、N)とあらわされたとき、パリティ検査行列H’の第i列目を抽出したベクトルは、上述で説明したベクトルcを用いると、cとなる。
【0416】
よって、送信系列(符号語)v’=(Yj,32、Yj,99、Yj,23、・・・、Yj,234、Yj,3、Yj,43Tとした場合のパリティ検査行列H’は、以下のようにあらわされる。
【0417】
【数88】
なお、「第j番目のブロックの送信系列v’の第i行目の要素(図33において、送信系列v’の転置行列v’の場合、第i列目の要素)は、Yj,g(g=1、2、3、・・・、N−2、N−1、N)とあらわされたとき、パリティ検査行列H’の第i列目を抽出したベクトルは、上述で説明したベクトルcを用いると、cとなる。」の規則にしたがって、パリティ検査行列を作成すれば、上記の例に限らず、第j番目のブロックの送信系列v’のパリティ検査行列を得ることができる。
【0418】
したがって、符号化率(n−1)/nの特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列の送信系列(符号語)に対し、インタリーブを施した場合、上述のように、符号化率(n−1)/nの特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列に対し、列並び替え(列置換)を行った行列が、インタリーブを施した送信系列(符号語)のパリティ検査行列となる。
よって、当然ながら、インタリーブを施した送信系列(符号語)(v’)を元の順番に戻した送信系列(v)は、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCの送信系列(符号語)である。したがって、インタリーブを施した送信系列(符号語)(v’)とインタリーブを施した送信系列(符号語)(v’)に対応するパリティ検査行列H’に対し、元の順番に戻し、送信系列vを得、送信系列v対応するパリティ検査行列を得ることができ、そのパリティ検査行列は、上述で述べた、図31のパリティ検査行列Hとなる、つまり、符号化率(n−1)/nの特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mである。
【0419】
図34は、図32の符号化を行ったときの受信装置における復号関連の構成の一例を示している。図32の符号化を行ったときの送信系列は、変調方式に基づくマッピング、周波数変換、変調信号の増幅等の処理が施され、変調信号を得、送信装置は変調信号を送信する。そして、受信装置は、送信装置が送信した変調信号を受信し、受信信号を得る。図34の各ビットの対数尤度比計算部3400は、受信信号を入力とし、符号語の各ビットの対数尤度比を計算し、対数尤度比信号3401を出力する。
【0420】
例えば、送信装置が、第jブロックの送信系列(符号語)v’=(Yj,32、Yj,99、Yj,23、・・・、Yj,234、Yj,3、Yj,43Tを送信したものとする。すると、各ビットの対数尤度比計算部3400は、受信信号から、Yj,32の対数尤度比、Yj,99の対数尤度比、Yj,23の対数尤度比、・・・、Yj,234の対数尤度比、Yj,3の対数尤度比、Yj,43の対数尤度比を計算し、出力することになる。
【0421】
蓄積および並び替え部(デインタリーブ部)3402は、対数尤度比信号3401を入力とし、蓄積、並び替えを行い、デインタリーブ後の対数尤度比信号3403を出力する。
【0422】
例えば、蓄積および並び替え部(デインタリーブ部)3402は、Yj,32の対数尤度比、Yj,99の対数尤度比、Yj,23の対数尤度比、・・・、Yj,234の対数尤度比、Yj,3の対数尤度比、Yj,43の対数尤度比を入力とし、並び替えを行い、Yj,1の対数尤度比、Yj,2の対数尤度比、Yj,3の対数尤度比、・・・、Yj,N−2の対数尤度比、Yj,N−1の対数尤度比、Yj,Nの対数尤度比の順に出力するものとする。
【0423】
復号器3404は、デインタリーブ後の対数尤度比信号3403を入力とし、図31に示した符号化率(N−M)/N(N>M>0)のLDPC(ブロック)符号のパリティ検査行列(つまり、符号化率(n−1)/nの特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列)Hに基づき、非特許文献6〜8に示されているようなBP復号、sum-product復号、min-sum復号、offset BP復号、Normalized BP復号、Shuffled BP復号、スケジューリングを行ったLayered BP復号などの信頼度伝播復号(他の復号方法を用いてもよい)を行い、推定系列3405を得る。
【0424】
例えば、復号器3404は、Yj,1の対数尤度比、Yj,2の対数尤度比、Yj,3の対数尤度比、・・・、Yj,N−2の対数尤度比、Yj,N−1の対数尤度比、Yj,Nの対数尤度比の順に入力とし、図31に示した符号化率(N−M)/N(N>M>0)のLDPC(ブロック)符号のパリティ検査行列(つまり、符号化率(n−1)/nの特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列)Hに基づき、信頼度伝播復号(他の復号方法を用いてもよい)を行い、推定系列を得る。
【0425】
上述と異なる復号関連の構成について説明する。上述と異なる点は、蓄積および並び替え部(デインタリーブ部)3402がない点である。各ビットの対数尤度比計算部3400は、上述と同様の動作となるので説明を省略する。
例えば、送信装置が、第jブロックの送信系列(符号語)v’=(Yj,32、Yj,99、Yj,23、・・・、Yj,234、Yj,3、Yj,43Tを送信したものとする。すると、各ビットの対数尤度比計算部3400は、受信信号から、Yj,32の対数尤度比、Yj,99の対数尤度比、Yj,23の対数尤度比、・・・、Yj,234の対数尤度比、Yj,3の対数尤度比、Yj,43の対数尤度比を計算し、出力することになる(図34の3406に相当)。
【0426】
復号器3407は、各ビットの対数尤度比信号3406を入力とし、図33に示した符号化率(N−M)/N(N>M>0)のLDPC(ブロック)符号のパリティ検査行列H’(つまり、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列と等価のパリティ検査行列H’)に基づき、非特許文献6〜8に示されているようなBP復号、sum-product復号、min-sum復号、offset BP復号、Normalized BP復号、Shuffled BP復号、スケジューリングを行ったLayered BP復号などの信頼度伝播復号(他の復号方法を用いてもよい)を行い、推定系列3409を得る。
【0427】
例えば、復号器3407は、Yj,32の対数尤度比、Yj,99の対数尤度比、Yj,23の対数尤度比、・・・、Yj,234の対数尤度比、Yj,3の対数尤度比、Yj,43の順に入力とし、図33に示した符号化率(N−M)/N(N>M>0)のLDPC(ブロック)符号のパリティ検査行列H’(つまり、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列と等価のパリティ検査行列H’)に基づき、信頼度伝播復号(他の復号方法を用いてもよい)を行い、推定系列を得る。
【0428】
以上のように、送信装置が、第j番目のブロックの送信系列vを、v=(Yj,1、Yj,2、Yj,3、・・・、Yj,N−2、Yj,N−1、Yj,Nに対して、インタリーブを施し、送信するデータの順番を入れ替えても、順番の入れ替えに対応するパリティ検査行列を用いることで、受信装置は、推定系列を得ることができる。
したがって、符号化率(n−1)/nの特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCの送信系列(符号語)に対し、インタリーブを施した場合、上述のように、符号化率(n−1)/nの特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列に対し、列並び替え(列置換)を行った行列が、インタリーブを施した送信系列(符号語)のパリティ検査行列を受信装置は用いることで、得られた各ビットの対数尤度比に対し、デインタリーブを行わなくても、信頼度伝播復号を行い、推定系列を得ることができる。
【0429】

上述では、送信系列のインタリーブとパリティ検査行列の関係について説明したが、以降では、パリティ検査行列における行並び替え(行置換)について説明する。
【0430】
図35は、符号化率(N−M)/NのLDPC(ブロック)符号の第j番目のブロックの送信系列(符号語)v=(Yj,1、Yj,2、Yj,3、・・・、Yj,N−2、Yj,N−1、Yj,N)に対応するパリティ検査行列Hの構成を示している。例えば、図35のパリティ検査行列は、M行N列の行列となる。そして、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列Hpro_mを、図35のパリティ検査行列Hであらわすものとする。(したがって、Hpro_m=(図35の)Hとなる。以下では、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列をHと記載することにする。)(組織符号の場合、Yj,k(kは1以上N以下の整数)は、情報XまたはパリティP(パリティPpro)となる。そして、Yj,kは、(N−M)個の情報とM個のパリティで構成されていることになる。)。このとき、Hv=0が成立する。(なお、ここでの「Hv=0の0(ゼロ)」は、全ての要素が0のベクトルであることを意味する。つまり、すべてのk(kは1以上M以下の整数)において、第k行の値は0である。)
そして、図35のパリティ検査行列Hの第k行目(kは1以上M以下の整数)を抽出したベクトルをzとあらわす。このとき、LDPC(ブロック)符号のパリティ検査行列(つまり、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列)Hは、以下のようにあらわされる。
【0431】
【数89】

次に、図35のパリティ検査行列Hに対し、行並び替え(行置換)を行ったパリティ検査行列を考える。
図36は図35のパリティ検査行列Hに対し、行並び替え(行置換)を行ったパリティ検査行列H’の一例を示しており、パリティ検査行列H’は、図35と同様、符号化率(N−M)/NのLDPC(ブロック)符号(つまり、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC)の第j番目のブロックの送信系列(符号語)v=(Yj,1、Yj,2、Yj,3、・・・、Yj,N−2、Yj,N−1、Yj,N)に対応するパリティ検査行列(つまり、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列)となる。
図36のパリティ検査行列H’は、図35のパリティ検査行列Hの第k行目(kは1以上M以下の整数)を抽出したベクトルをzで構成されており、一例として、パリティ検査行列H’の第1行目はz130、第2行目はz24、第3行目はz45、・・・、第M−2行目はz33、第M−1行目はz、第M行目はzで構成されているものとする。なお、パリティ検査行列H’の第k行目(kは1以上M以下の整数)を抽出したベクトルM個の行ベクトルには、z、z、z、・・・zM−2、zM−1、z、がそれぞれ一つ存在することになる。
このとき、LDPC(ブロック)符号(つまり、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC)のパリティ検査行列H’は、以下のようにあらわされ、
【0432】
【数90】
H’v=0が成立する。(なお、ここでの「Hv=0の0(ゼロ)」は、全ての要素が0のベクトルであることを意味する。つまり、すべてのk(kは1以上M以下の整数)において、第k行の値は0である。)
つまり、第j番目のブロックの送信系列vのとき、図36のパリティ検査行列H’の第i行目を抽出したベクトルは、ベクトルc(kは1以上M以下の整数)のいずれかであらわされ、図36のパリティ検査行列H’の第k行目(kは1以上M以下の整数)を抽出したM個の行ベクトルには、z、z、z、・・・zM−2、zM−1、z、がそれぞれ一つ存在することになる。
なお、「第j番目のブロックの送信系列vのとき、図36のパリティ検査行列H’の第i行目を抽出したベクトルは、ベクトルc(kは1以上M以下の整数)のいずれかであらわされ、図36のパリティ検査行列H’の第k行目(kは1以上M以下の整数)を抽出したM個の行ベクトルには、z、z、z、・・・zM−2、zM−1、z、がそれぞれ一つ存在することになる。」の規則にしたがって、パリティ検査行列を作成すれば、上記の例に限らず、第j番目のブロックの送信系列vのパリティ検査行列を得ることができる。
したがって、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCを用いていても、上述で説明したパリティ検査行列、および、図26から図30を用いて説明したパリティ検査行列を、送信装置、および、受信装置で用いているとは限らない。よって、例えば、上述で説明したパリティ検査行列に対し、上述で説明した列並び替え(列置換)を行った行列、または、行並び替え(行置換)を行った行列、および、図26から図30を用いて説明したパリティ検査行列に対し、上述で説明した列並び替え(列置換)を行った行列、または、行並び替え(行置換)を行った行列をパリティ検査行列として、送信装置、および、受信装置は、使用してもよい。
また、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列に対し、上述で説明した列並び替え(列置換)および行並び替え(行置換)の両者を施すことにより得た行列をパリティ検査行列としてもよい。
このとき、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列に対し、列並び替え(列置換)を行い(例えば、図31のパリティ検査行列から図33のパリティ検査行列のような変換を行う)、パリティ検査行列Hを得る。そして、パリティ検査行列Hに対し、行並び替え(行置換)を行い(例えば、図35のパリティ検査行列から図36のパリティ検査行列のような変換を行う)、パリティ検査行列Hを得、送信装置、および、受信装置は、パリティ検査行列Hを用いて、符号化、復号化を行ってもよい。
【0433】
また、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列に対し、1回目の列並び替え(列置換)を行い(例えば、図31のパリティ検査行列から図33のパリティ検査行列のような変換を行う)、パリティ検査行列H1,1を得る。そして、パリティ検査行列H1,1に対し、1回目の行並び替え(行置換)を行い(例えば、図35のパリティ検査行列から図36のパリティ検査行列のような変換を行う)、パリティ検査行列H2,1を得る。
次に、パリティ検査行列H2,1に対し、2回目の列並び替え(列置換)を行い、パリティ検査行列H1,2を得る。そして、パリティ検査行列H1,2に対し、2回目の行並び替え(行置換)を行い、パリティ検査行列H2,2を得る。
以上のような、列並び替え(列置換)、および、行並び替え(行置換)をs(sは2以上の整数)回繰り返して、パリティ検査行列H2,sを得る。このとき、パリティ検査行列H2,k−1に対し、k(kは2以上s以下の整数)回目の列並び替え(列置換)を行い、パリティ検査行列H1,kを得る。そして、パリティ検査行列H1,kに対し、k回目の行並び替え(行置換)を行い、パリティ検査行列H2,kを得ることになる。なお、1回目については、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列に対し、1回目の列並び替え(列置換)を行い、パリティ検査行列H1,1を得る。そして、パリティ検査行列H1,1に対し、1回目の行並び替え(行置換)を行い、パリティ検査行列H2,1を得ることになる。
そして、送信装置、および、受信装置は、パリティ検査行列H2,sを用いて、符号化、復号化を行ってもよい。
【0434】
別の方法として、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列に対し、行並び替え(行置換)を行い(例えば、図35のパリティ検査行列から図36のパリティ検査行列のような変換を行う)、パリティ検査行列Hを得る。そして、パリティ検査行列Hに対し、列並び替え(列置換)を行い(例えば、図31のパリティ検査行列から図33のパリティ検査行列のような変換を行う)、パリティ検査行列Hを得、送信装置、および、受信装置は、パリティ検査行列Hを用いて、符号化、復号化を行ってもよい。
【0435】
また、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列に対し、1回目の行並び替え(行置換)を行い(例えば、図35のパリティ検査行列から図36のパリティ検査行列のような変換を行う)、パリティ検査行列H3,1を得る。そして、パリティ検査行列H3,1に対し、1回目の列並び替え(列置換)を行い(例えば、図31のパリティ検査行列から図33のパリティ検査行列のような変換を行う)、パリティ検査行列H4,1を得る。
【0436】
次に、パリティ検査行列H4,1に対し、2回目の行並び替え(行置換)を行い、パリティ検査行列H3,2を得る。そして、パリティ検査行列H3,2に対し、2回目の列並び替え(列置換)を行い、パリティ検査行列H4,2を得る。
【0437】
以上のような、行並び替え(行置換)、および、列並び替え(列置換)をs(sは2以上の整数)回繰り返して、パリティ検査行列H4,sを得る。このとき、パリティ検査行列H4,k−1に対し、k(kは2以上s以下の整数)回目の行並び替え(行置換)を行い、パリティ検査行列H3,kを得る。そして、パリティ検査行列H3,kに対し、k回目の列並び替え(列置換)を行い、パリティ検査行列H4,kを得ることになる。なお、1回目については、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列に対し、1回目の行並び替え(行置換)を行い、パリティ検査行列H3,1を得る。そして、パリティ検査行列H3,1に対し、1回目の列並び替え(列置換)を行い、パリティ検査行列H4,1を得ることになる。
そして、送信装置、および、受信装置は、パリティ検査行列H4,sを用いて、符号化、復号化を行ってもよい。
【0438】
なお、パリティ検査行列H2、パリティ検査行列H2,s、パリティ検査行列H4、パリティ検査行列H4,sいずれも、行並び替え(行置換)および列並び替え(列置換)を行うと、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列、または、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCの図26から図30を用いて説明したパリティ検査行列を得ることができる。
【0439】
同様に、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCの図26から図30を用いて説明したパリティ検査行列に対し、上述で説明した列並び替え(列置換)および行並び替え(行置換)の両者を施すことにより得た行列をパリティ検査行列としてもよい。
【0440】
このとき、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCの図26から図30を用いて説明したパリティ検査行列に対し、列並び替え(列置換)を行い(例えば、図31のパリティ検査行列から図33のパリティ検査行列のような変換を行う)、パリティ検査行列Hを得る。そして、パリティ検査行列Hに対し、行並び替え(行置換)を行い(例えば、図35のパリティ検査行列から図36のパリティ検査行列のような変換を行う)、パリティ検査行列Hを得、送信装置、および、受信装置は、パリティ検査行列Hを用いて、符号化、復号化を行ってもよい。
【0441】
また、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCの図26から図30を用いて説明したパリティ検査行列に対し、1回目の列並び替え(列置換)を行い(例えば、図31のパリティ検査行列から図33のパリティ検査行列のような変換を行う)、パリティ検査行列H5,1を得る。そして、パリティ検査行列H5,1に対し、1回目の行並び替え(行置換)を行い(例えば、図35のパリティ検査行列から図36のパリティ検査行列のような変換を行う)、パリティ検査行列H6,1を得る。
【0442】

次に、パリティ検査行列H6,1に対し、2回目の列並び替え(列置換)を行い、パリティ検査行列H5,2を得る。そして、パリティ検査行列H5,2に対し、2回目の行並び替え(行置換)を行い、パリティ検査行列H6,2を得る。
【0443】
以上のような、列並び替え(列置換)、および、行並び替え(行置換)をs(sは2以上の整数)回繰り返して、パリティ検査行列H6,sを得る。このとき、パリティ検査行列H6,k−1に対し、k(kは2以上s以下の整数)回目の列並び替え(列置換)を行い、パリティ検査行列H5,kを得る。そして、パリティ検査行列H5,kに対し、k回目の行並び替え(行置換)を行い、パリティ検査行列H6,kを得ることになる。なお、1回目については、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCの図26から図30を用いて説明したパリティ検査行列に対し、1回目の列並び替え(列置換)を行い、パリティ検査行列H5,1を得る。そして、パリティ検査行列H5,1に対し、1回目の行並び替え(行置換)を行い、パリティ検査行列H6,1を得ることになる。
そして、送信装置、および、受信装置は、パリティ検査行列H6,sを用いて、符号化、復号化を行ってもよい。
【0444】
別の方法として、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCの図26から図30を用いて説明したパリティ検査行列に対し、行並び替え(行置換)を行い(例えば、図35のパリティ検査行列から図36のパリティ検査行列のような変換を行う)、パリティ検査行列Hを得る。そして、パリティ検査行列Hに対し、列並び替え(列置換)を行い(例えば、図31のパリティ検査行列から図33のパリティ検査行列のような変換を行う)、パリティ検査行列Hを得、送信装置、および、受信装置は、パリティ検査行列Hを用いて、符号化、復号化を行ってもよい。
【0445】
また、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCの図26から図30を用いて説明したパリティ検査行列に対し、1回目の行並び替え(行置換)を行い(例えば、図35のパリティ検査行列から図36のパリティ検査行列のような変換を行う)、パリティ検査行列H7,1を得る。そして、パリティ検査行列H7,1に対し、1回目の列並び替え(列置換)を行い(例えば、図31のパリティ検査行列から図33のパリティ検査行列のような変換を行う)、パリティ検査行列H8,1を得る。
【0446】
次に、パリティ検査行列H8,1に対し、2回目の行並び替え(行置換)を行い、パリティ検査行列H7,2を得る。そして、パリティ検査行列H7,2に対し、2回目の列並び替え(列置換)を行い、パリティ検査行列H8,2を得る。
【0447】
以上のような、行並び替え(行置換)、および、列並び替え(列置換)をs(sは2以上の整数)回繰り返して、パリティ検査行列H8,sを得る。このとき、パリティ検査行列H8,k−1に対し、k(kは2以上s以下の整数)回目の行並び替え(行置換)を行い、パリティ検査行列H7,kを得る。そして、パリティ検査行列H7,kに対し、k回目の列並び替え(列置換)を行い、パリティ検査行列H8,kを得ることになる。なお、1回目については、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCの図26から図30を用いて説明したパリティ検査行列に対し、1回目の行並び替え(行置換)を行い、パリティ検査行列H7,1を得る。そして、パリティ検査行列H7,1に対し、1回目の列並び替え(列置換)を行い、パリティ検査行列H8,1を得ることになる。
そして、送信装置、および、受信装置は、パリティ検査行列H8,sを用いて、符号化、復号化を行ってもよい。
【0448】
なお、パリティ検査行列H、パリティ検査行列H6,s、パリティ検査行列H、パリティ検査行列H8,sいずれも、行並び替え(行置換)および列並び替え(列置換)を行うと、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのパリティ検査行列、または、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCの図26から図30を用いて説明したパリティ検査行列を得ることができる。
【0449】
なお、符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)を形成するためのパリティ検査多項式として、式(70)および式(71)をあつかったが、パリティ検査多項式は、式(70)、式(71)に限ったものではない。例えば、符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のベースとなる符号化率R=(n−1)/n、時変周期mのパリティ検査多項式に基づくLDPC−CCのi番目(iは0以上m−1以下の整数)のパリティ検査多項式として、式(70)の代わりに次式を扱ってもよい。
【0450】
【数91】

このとき、ap,i,q(p=1,2,・・・,n−1(pは1以上n−1以下の整数);q=1,2,・・・,r(qは1以上r以下の整数))は0以上の整数とする。また、y,z=1,2,・・・,r(y,zは1以上r以下の整数)かつy≠zであり、これを満たす、(y,z)に対して(すべてのyおよびすべてのzに対して)、ap,i,y≠ap,i,zを満たす。
そして、高い誤り訂正能力を得るために、r、r、・・・、rn−2、rn−1いずれも4以上に設定する(1以上n−1以下の整数であり、これを満たす、すべてのkにおいてrは4以上)。つまり、式(91)において、1以上n−1以下の整数であり、これを満たす、すべてのkにおいて、X(D)の項数は4以上となる。また、b1,iは自然数となる。
【0451】
したがって、特許文献2の符号化率R=(n−1)/n(nは2以上の整数)の改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のパリティ検査行列をHproの第1行目のベクトルを生成するための0を満たすパリティ検査多項式である式(69)は次式であらわされることになる。(式(91)の0番目を利用することになる。)
【0452】
【数92】

また、別の方法として、符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のベースとなる符号化率R=(n−1)/n、時変周期mのパリティ検査多項式に基づくLDPC−CCのi番目(iは0以上m−1以下の整数)のパリティ検査多項式において、パリティ検査多項式ごとに、Xk(D)の項数(kは1以上n−1以下の整数)を設定してもよい。すると、例えば、符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のベースとなる符号化率R=(n−1)/n、時変周期mのパリティ検査多項式に基づくLDPC−CCのi番目(iは0以上m−1以下の整数)のパリティ検査多項式として、式(70)の代わりに次式を扱ってもよい。
【0453】
【数93】

このとき、ap,i,q(p=1,2,・・・,n−1(pは1以上n−1以下の整数);q=1,2,・・・,rp,i(qは1以上rp,i以下の整数))は自然数とする。また、y,z=1,2,・・・,rp,i(y,zは1以上rp,i以下の整数)かつy≠zであり、これを満たす、(y,z)に対して(すべてのyおよびすべてのzに対して)、ap,i,y≠ap,i,zを満たす。また、b1,iは自然数となる。なお、式(93)において、iごとに、rp,iを設定することができる点が、式(93)の特徴である。
そして、高い誤り訂正能力を得るために、pは1以上n−1以下の整数、iは0以上m−1以下の整数であり、これを満たす、すべてのp、すべてのiにおいて、rp,iを1以上に設定するとよい。
【0454】
したがって、特許文献2の符号化率R=(n−1)/n(nは2以上の整数)の改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のパリティ検査行列をHproの第1行目のベクトルを生成するための0を満たすパリティ検査多項式である式(69)は次式であらわされることになる。(式(93)の0番目を利用することになる。)
【0455】
【数94】

さらに、別の方法として、符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のベースとなる符号化率R=(n−1)/n、時変周期mのパリティ検査多項式に基づくLDPC−CCのi番目(iは0以上m−1以下の整数)のパリティ検査多項式において、パリティ検査多項式ごとに、Xk(D)の項数(kは1以上n−1以下の整数)を設定してもよい。すると、例えば、符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のベースとなる符号化率R=(n−1)/n、時変周期mのパリティ検査多項式に基づくLDPC−CCのi番目(iは0以上m−1以下の整数)のパリティ検査多項式として、式(70)の代わりに次式を扱ってもよい。
【0456】
【数95】
このとき、ap,i,q(p=1,2,・・・,n−1(pは1以上n−1以下の整数);q=1,2,・・・,rp,i(qは1以上rp,i以下の整数))は0以上の整数とする。また、y,z=1,2,・・・,rp,i(y,zは1以上rp,i以下の整数)かつy≠zであり、これを満たす、(y,z)に対して(すべてのyおよびすべてのzに対して)、ap,i,y≠ap,i,zを満たす。また、b1,iは自然数となる。なお、式(95)において、iごとに、rp,iを設定することができる点が、式(95)の特徴である。
そして、高い誤り訂正能力を得るために、pは1以上n−1以下の整数、iは0以上m−1以下の整数であり、これを満たす、すべてのp、すべてのiにおいて、rp,iを2以上に設定するとよい。
【0457】
したがって、特許文献2の符号化率R=(n−1)/n(nは2以上の整数)の改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のパリティ検査行列をHproの第1行目のベクトルを生成するための0を満たすパリティ検査多項式である式(69)は次式であらわされることになる。(式(95)の0番目を利用することになる。)
【0458】
【数96】
上述では、符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)を形成するためのパリティ検査多項式として、式(70)および式(71)をあつかった。以下では、高い誤り訂正能力を得るための、パリティ検査多項式の式(70)および式(71)の条件の例について説明する。
【0459】
上述で説明したように、
「高い誤り訂正能力を得るために、r、r、・・・、rn−2、rn−1いずれも3以上に設定する(1以上n−1以下の整数であり、これを満たす、すべてのkにおいてrは3以上)。つまり、式(B1)において、1以上n−1以下の整数であり、これを満たす、すべてのkにおいて、X(D)の項数は4以上となる。」
とした。以下では、r、r、・・・、rn−2、rn−1いずれも3以上と設定したとき、高い誤り訂正能力を得るための条件の例について説明する。
なお、式(71)のパリティ検査多項式は、式(70)のパリティ検査多項式の0番目を利用して作成されているため、
「式(71)において、1以上n−1以下の整数であり、これを満たす、すべてのkにおいて、X(D)の項数は4以上となる。」
となる。そして、上述で説明したように、式(70)の0を満たすパリティ検査多項式は、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのベースとなる符号化率R=(n−1)/n、時変周期mのパリティ検査多項式に基づくLDPC−CCの0を満たすi番目(iは0以上m−1以下の整数)のパリティ検査多項式となり、式(71)の0を満たすパリティ検査多項式は、特許文献2の符号化率R=(n−1)/n(nは2以上の整数)の改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のパリティ検査行列をHproの第1行目のベクトルを生成するための0を満たすパリティ検査多項式となる。
【0460】
このとき、図28で示した符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のパリティ検査行列Hpro_mの情報Xに関連する部分行列において、最低列重みを3とするために以下の条件を与えると、高い誤り訂正能力を得ることができる。なお、パリティ検査行列のα列において、α列を抽出したベクトルにおいて、そのベクトルの要素において、「1」が存在する数がα列の列重みとなる。
【0461】
<条件#B−1−1>
「a1,0,1%m=a1,1,1%m=a1,2,1%m=a1,3,1%m=・・・=a1,g,1%m=・・・=a1,m−2,1%m=a1,m−1,1%m=v1,1 (v1,1:固定値)」
「a1,0,2%m=a1,1,2%m=a1,2,2%m=a1,3,2%m=・・・=a1,g,2%m=・・・=a1,m−2,2%m=a1,m−1,2%m=v1,2 (v1,2:固定値)」
(gは0以上m−1以下の整数)

同様に、図28で示した符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のパリティ検査行列Hpro_mの情報Xに関連する部分行列において、最低列重みを3とするために以下の条件を与えると、高い誤り訂正能力を得ることができる。
【0462】
<条件#B−1−2>
「a2,0,1%m=a2,1,1%m=a2,2,1%m=a2,3,1%m=・・・=a2,g,1%m=・・・=a2,m−2,1%m=a2,m−1,1%m=v2,1 (v2,1:固定値)」
「a2,0,2%m=a2,1,2%m=a2,2,2%m=a2,3,2%m=・・・=a2,g,2%m=・・・=a2,m−2,2%m=a2,m−1,2%m=v2,2 (v2,2:固定値)」
(gは0以上m−1以下の整数)




一般化すると、図28で示した符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のパリティ検査行列Hpro_mの情報Xに関連する部分行列において、最低列重みを3とするために以下の条件を与えると、高い誤り訂正能力を得ることができる。(kは、1以上n−1以下の整数)

<条件#B−1−k>
「ak,0,1%m=ak,1,1%m=ak,2,1%m=ak,3,1%m=・・・=ak,g,1%m=・・・=ak,m−2,1%m=ak,m−1,1%m=vk,1 (vk,1:固定値)」
「ak,0,2%m=ak,1,2%m=ak,2,2%m=ak,3,2%m=・・・=ak,g,2%m=・・・=ak,m−2,2%m=ak,m−1,2%m=vk,2 (vk,2:固定値)」
(gは0以上m−1以下の整数)





同様に、図28で示した符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のパリティ検査行列Hpro_mの情報Xn−1に関連する部分行列において、最低列重みを3とするために以下の条件を与えると、高い誤り訂正能力を得ることができる。
【0463】
<条件#B−1−(n−1)>
「an−1,0,1%m=an−1,1,1%m=an−1,2,1%m=an−1,3,1%m=・・・=an−1,g,1%m=・・・=an−1,m−2,1%m=an−1,m−1,1%m=vn−1,1 (vn−1,1:固定値)」
「an−1,0,2%m=an−1,1,2%m=an−1,2,2%m=an−1,3,2%m=・・・=an−1,g,2%m=・・・=an−1,m−2,2%m=an−1,m−1,2%m=vn−1,2 (vn−1,2:固定値)」
(gは0以上m−1以下の整数)

なお、上記において、「%」はmoduloを意味する、つまり、「α%m」は、αをmで除算したときの余りを示す。<条件#B−1−1>から<条件#B−1−(n−1)>を別の表現をすると、以下のように表現することができる。なお、jは1、2である。
【0464】

<条件#B−1’−1>
「a1,g,j%m=v1,j for ∀g g=0,1,2,・・・,m−3,m−2,m−1(v1,j:固定値)」
(gは0以上m−1以下の整数であり、すべてのgでa1,g,j%m=v1,j(v1,j:固定値)が成立する。)

<条件#B−1’−2>
「a2,g,j%m=v2,j for ∀g g=0,1,2,・・・,m−3,m−2,m−1(v2,j:固定値)」
(gは0以上m−1以下の整数であり、すべてのgでa2,g,j%m=v2,j(v2,j:固定値)が成立する。)





一般化すると、以下のようになる。
【0465】
<条件#B−1’−k>
「ak,g,j%m=vk,j for ∀g g=0,1,2,・・・,m−3,m−2,m−1(vk,j:固定値)」
(gは0以上m−1以下の整数であり、すべてのgでak,g,j%m=vk,j(vk,j:固定値)が成立する。)
(kは、1以上n−1以下の整数)





<条件#B−1’−(n−1)>
「an−1,g,j%m=vn−1,j for ∀g g=0,1,2,・・・,m−3,m−2,m−1(vn−1,j:固定値)」
(gは0以上m−1以下の整数であり、すべてのgでan−1,g,j%m=vn−1,j(vn−1,j:固定値)が成立する。)

さらに、以下の条件を満たすと、高い誤り訂正能力を得ることができる。
【0466】

<条件#B−2−1>
「v1,1≠0、かつ、v1,2≠0が成立する。」
かつ
「v1,1≠v1,2が成立する。」

<条件#B−2−2>
「v2,1≠0、かつ、v2,2≠0が成立する。」
かつ
「v2,1≠v2,2が成立する。」





一般化すると、以下のようになる。
【0467】

<条件#B−2−k>
「vk,1≠0、かつ、vk,2≠0が成立する。」
かつ
「vk,1≠vk,2が成立する。」
(kは、1以上n−1以下の整数)





<条件#B−2−(n−1)>
「vn−1,1≠0、かつ、vn−1,2≠0が成立する。」
かつ
「vn−1,1≠vn−1,2が成立する。」

そして、「図28で示した符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のパリティ検査行列Hpro_mの情報Xから情報Xn−1に関連する部分行列がイレギュラー」でなければならないので、以下の条件を与える。
【0468】

<条件#B−3−1>
「a1,g,v%m=a1,h,v%m for ∀g∀h g,h=0,1,2,・・・,m−3,m−2,m−1;g≠h」
(gは0以上m−1以下の整数であり、かつ、hは0以上m−1以下の整数であり、かつ、g≠hであり、これを満たす、すべてのg、すべてのhでa1,g,v%m=a1,h,v%mが成立する。)・・・条件#Xa−1
vは3以上r以下の整数であり、すべてのvで「条件#Xa−1」を満たすことはない。
【0469】

<条件#B−3−2>
「a2,g,v%m=a2,h,v%m for ∀g∀h g,h=0,1,2,・・・,m−3,m−2,m−1;g≠h」
(gは0以上m−1以下の整数であり、かつ、hは0以上m−1以下の整数であり、かつ、g≠hであり、これを満たす、すべてのg、すべてのhでa2,g,v%m=a2,h,v%mが成立する。)・・・条件#Xa−2
vは3以上r以下の整数であり、すべてのvで「条件#Xa−2」を満たすことはない。




一般化すると、以下のようになる。
【0470】

<条件#B−3−k>
「ak,g,v%m=ak,h,v%m for ∀g∀h g,h=0,1,2,・・・,m−3,m−2,m−1;g≠h」
(gは0以上m−1以下の整数であり、かつ、hは0以上m−1以下の整数であり、かつ、g≠hであり、これを満たす、すべてのg、すべてのhでak,g,v%m=ak,h,v%mが成立する。)・・・条件#Xa−k
vは3以上r以下の整数であり、すべてのvで「条件#Xa−k」を満たすことはない。
(kは、1以上n−1以下の整数)



<条件#B−3−(n−1)>
「an−1,g,v%m=an−1,h,v%m for ∀g∀h g,h=0,1,2,・・・,m−3,m−2,m−1;g≠h」
(gは0以上m−1以下の整数であり、かつ、hは0以上m−1以下の整数であり、かつ、g≠hであり、これを満たす、すべてのg、すべてのhでan−1,g,v%m=an−1,h,v%mが成立する。)・・・条件#Xa−(n−1)
vは3以上rn−1以下の整数であり、すべてのvで「条件#Xa−(n−1)」を満たすことはない。
【0471】

なお、<条件#B−3−1>から<条件#B−3−(n−1)>を別の表現をすると以下のような条件となる。
【0472】

<条件#B−3’−1>
「a1,g,v%m≠a1,h,v%m for ∃g∃h g,h=0,1,2,・・・,m−3,m−2,m−1;g≠h」
(gは0以上m−1以下の整数であり、かつ、hは0以上m−1以下の整数であり、かつ、g≠hであり、a1,g,v%m≠a1,h,v%mが成立するg、hが存在する。)・・・条件#Ya−1
vは3以上r以下の整数であり、すべてのvで「条件#Ya−1」を満たす。
【0473】

<条件#B−3’−2>
「a2,g,v%m≠a2,h,v%m for ∃g∃h g,h=0,1,2,・・・,m−3,m−2,m−1;g≠h」
(gは0以上m−1以下の整数であり、かつ、hは0以上m−1以下の整数であり、かつ、g≠hであり、a2,g,v%m≠a2,h,v%mが成立するg、hが存在する。)・・・条件#Ya−2
vは3以上r以下の整数であり、すべてのvで「条件#Ya−2」を満たす。
【0474】





一般化すると、以下のようになる。
【0475】

<条件#B−3’−k>
「ak,g,v%m≠ak,h,v%m for ∃g∃h g,h=0,1,2,・・・,m−3,m−2,m−1;g≠h」
(gは0以上m−1以下の整数であり、かつ、hは0以上m−1以下の整数であり、かつ、g≠hであり、ak,g,v%m≠ak,h,v%mが成立するg、hが存在する。)・・・条件#Ya−k
vは3以上r以下の整数であり、すべてのvで「条件#Ya−k」を満たす。
(kは、1以上n−1以下の整数)





<条件#B−3’−(n−1)>
「an−1,g,v%m≠an−1,h,v%m for ∃g∃h g,h=0,1,2,・・・,m−3,m−2,m−1;g≠h」
(gは0以上m−1以下の整数であり、かつ、hは0以上m−1以下の整数であり、かつ、g≠hであり、an−1,g,v%m≠an−1,h,v%mが成立するg、hが存在する。)・・・条件#Ya−(n−1)
vは3以上rn−1以下の整数であり、すべてのvで「条件#Ya−(n−1)」を満たす。
このようにすることで、「図28で示した符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のパリティ検査行列Hpro_mの情報Xに関連する部分行列、情報Xに関連する部分行列、・・・、情報Xn−1に関連する部分行列において、最低列重みを3となり」、以上の条件を満した、符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)とすることで、「イレギュラーLDPC符号」を生成することができ、高い誤り訂正能力を得ることができる。
なお、以上の条件を踏まえて、高い誤り訂正能力をもつ符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)を生成することになるが、このとき、高い誤り訂正能力をもつ符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)を容易に得るためには、r=r=・・・=rn−2=rn−1=r(rは3以上)と設定するとよい。
また、符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)を形成するためのパリティ検査多項式、式(70)および式(71)に相当するチェックノードが、ツリーを描いたときに、可能な限り多く出現するとよい可能性がある。
これを実現するために、上記で記載した、vk,1およびvk,2(kは、1以上n−1以下の整数)は、以下の条件を満たすとよい。
【0476】

<条件#B−4−1>
・「mの約数のうち、1を除いた、約数の集合をR」としたとき、vk,1はRに属してはならない。
<条件#B−4−2>
・「mの約数のうち、1を除いた、約数の集合をR」としたとき、vk,2はRに属してはならない。
【0477】

さらに、以下の条件を満たしてもよい。
【0478】

<条件#B−5−1>
・vk,1は1以上m−1以下の整数の集合に属し、かつ、次の条件を満たす。vk,1/w=g(gは自然数)を満たす、すべてのwを抽出した集合をSとしたとき、R∩Sは空集合である。なお、集合Rは<条件#B−4−1>で定義している。
【0479】

<条件#B−5−2>
・vk,2は1以上m−1以下の整数の集合に属し、かつ、次の条件を満たす。vk,2/w=g(gは自然数)を満たす、すべてのwを抽出した集合をSとしたとき、R∩Sは空集合である。なお、集合Rは<条件#B−4−2>で定義している。
【0480】

なお、<条件#B−5−1>、<条件#B−5−2>を別の表現をすると、<条件#B−5−1’>、<条件#B−5−2’>となる。
【0481】

<条件#B−5−1’>
・vk,1は1以上m−1以下の整数の集合に属し、かつ、次の条件を満たす。vk,1の約数の集合をSとしたとき、R∩Sは空集合である。
【0482】

<条件#B−5−2’>
・vk,2は1以上m−1以下の整数の集合に属し、かつ、次の条件を満たす。vk,2の約数の集合をSとしたとき、R∩Sは空集合である。
【0483】

なお、<条件#B−5−1><条件#B−5−1’>を別の表現をすると、<条件#B−5−1”>となり、<条件#B−5−2><条件#B−5−2’>を別の表現をすると、<条件#B−5−2”>。
【0484】

<条件#B−5−1”>
・vk,1は1以上m−1以下の整数の集合に属し、かつ、次の条件を満たす。vk,1とmの最大公約数が1である。
【0485】

<条件#B−5−2”>
・vk,2は1以上m−1以下の整数の集合に属し、かつ、次の条件を満たす。vk,2とmの最大公約数が1である。
【0486】
符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)を形成するためのパリティ検査多項式として、式(91)および式(92)をあつかった。以下では、高い誤り訂正能力を得るための、パリティ検査多項式の式(91)および式(92)の条件の例について説明する。
【0487】
上述で説明したように、
「高い誤り訂正能力を得るために、r、r、・・・、rn−2、rn−1いずれも4以上に設定する(1以上n−1以下の整数であり、これを満たす、すべてのkにおいてrは3以上)。つまり、式(B1)において、1以上n−1以下の整数であり、これを満たす、すべてのkにおいて、X(D)の項数は4以上となる。」
とした。以下では、r、r、・・・、rn−2、rn−1いずれも4以上と設定したとき、高い誤り訂正能力を得るための条件の例について説明する。
なお、式(92)のパリティ検査多項式は、式(91)のパリティ検査多項式の0番目を利用して作成されているため、
「式(92)において、1以上n−1以下の整数であり、これを満たす、すべてのkにおいて、X(D)の項数は4以上となる。」
となる。そして、上述で説明したように、式(91)の0を満たすパリティ検査多項式は、特許文献2の符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CCのベースとなる符号化率R=(n−1)/n、時変周期mのパリティ検査多項式に基づくLDPC−CCの0を満たすi番目(iは0以上m−1以下の整数)のパリティ検査多項式となり、式(92)の0を満たすパリティ検査多項式は、特許文献2の符号化率R=(n−1)/n(nは2以上の整数)の改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のパリティ検査行列をHproの第1行目のベクトルを生成するための0を満たすパリティ検査多項式となる。
【0488】

このとき、図28で示した符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のパリティ検査行列Hpro_mの情報Xに関連する部分行列において、最低列重みを3とするために以下の条件を与えると、高い誤り訂正能力を得ることができる。なお、パリティ検査行列のα列において、α列を抽出したベクトルにおいて、そのベクトルの要素において、「1」が存在する数がα列の列重みとなる。
【0489】

<条件#B−6−1>
「a1,0,1%m=a1,1,1%m=a1,2,1%m=a1,3,1%m=・・・=a1,g,1%m=・・・=a1,m−2,1%m=a1,m−1,1%m=v1,1 (v1,1:固定値)」
「a1,0,2%m=a1,1,2%m=a1,2,2%m=a1,3,2%m=・・・=a1,g,2%m=・・・=a1,m−2,2%m=a1,m−1,2%m=v1,2 (v1,2:固定値)」

「a1,0,3%m=a1,1,3%m=a1,2,3%m=a1,3,3%m=・・・=a1,g,3%m=・・・=a1,m−2,3%m=a1,m−1,3%m=v1,3 (v1,3:固定値)」
(gは0以上m−1以下の整数)

同様に、図28で示した符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のパリティ検査行列Hpro_mの情報Xに関連する部分行列において、最低列重みを3とするために以下の条件を与えると、高い誤り訂正能力を得ることができる。
【0490】

<条件#B−6−2>
「a2,0,1%m=a2,1,1%m=a2,2,1%m=a2,3,1%m=・・・=a2,g,1%m=・・・=a2,m−2,1%m=a2,m−1,1%m=v2,1 (v2,1:固定値)」
「a2,0,2%m=a2,1,2%m=a2,2,2%m=a2,3,2%m=・・・=a2,g,2%m=・・・=a2,m−2,2%m=a2,m−1,2%m=v2,2 (v2,2:固定値)」
「a2,0,3%m=a2,1,3%m=a2,2,3%m=a2,3,3%m=・・・=a2,g,3%m=・・・=a2,m−2,3%m=a2,m−1,3%m=v2,3 (v2,3:固定値)」
(gは0以上m−1以下の整数)





一般化すると、図28で示した符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のパリティ検査行列Hpro_mの情報Xに関連する部分行列において、最低列重みを3とするために以下の条件を与えると、高い誤り訂正能力を得ることができる。(kは、1以上n−1以下の整数)

<条件#B−6−k>
「ak,0,1%m=ak,1,1%m=ak,2,1%m=ak,3,1%m=・・・=ak,g,1%m=・・・=ak,m−2,1%m=ak,m−1,1%m=vk,1 (vk,1:固定値)」
「ak,0,2%m=ak,1,2%m=ak,2,2%m=ak,3,2%m=・・・=ak,g,2%m=・・・=ak,m−2,2%m=ak,m−1,2%m=vk,2 (vk,2:固定値)」
「ak,0,3%m=ak,1,3%m=ak,2,3%m=ak,3,3%m=・・・=ak,g,3%m=・・・=ak,m−2,3%m=ak,m−1,3%m=vk,3 (vk,3:固定値)」
(gは0以上m−1以下の整数)





同様に、図28で示した符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のパリティ検査行列Hpro_mの情報Xn−1に関連する部分行列において、最低列重みを3とするために以下の条件を与えると、高い誤り訂正能力を得ることができる。
【0491】

<条件#B−6−(n−1)>
「an−1,0,1%m=an−1,1,1%m=an−1,2,1%m=an−1,3,1%m=・・・=an−1,g,1%m=・・・=an−1,m−2,1%m=an−1,m−1,1%m=vn−1,1 (vn−1,1:固定値)」
「an−1,0,2%m=an−1,1,2%m=an−1,2,2%m=an−1,3,2%m=・・・=an−1,g,2%m=・・・=an−1,m−2,2%m=an−1,m−1,2%m=vn−1,2 (vn−1,2:固定値)」
「an−1,0,3%m=an−1,1,3%m=an−1,2,3%m=an−1,3,3%m=・・・=an−1,g,3%m=・・・=an−1,m−2,3%m=an−1,m−1,3%m=vn−1,3 (vn−1,3:固定値)」
(gは0以上m−1以下の整数)

なお、上記において、「%」はmoduloを意味する、つまり、「α%m」は、αをmで除算したときの余りを示す。<条件#B−6−1>から<条件#B−6−(n−1)>を別の表現をすると、以下のように表現することができる。なお、jは1、2、3である。
【0492】

<条件#B−6’−1>
「a1,g,j%m=v1,j for ∀g g=0,1,2,・・・,m−3,m−2,m−1(v1,j:固定値)」
(gは0以上m−1以下の整数であり、すべてのgでa1,g,j%m=v1,j(v1,j:固定値)が成立する。)

<条件#B−6’−2>
「a2,g,j%m=v2,j for ∀g g=0,1,2,・・・,m−3,m−2,m−1(v2,j:固定値)」
(gは0以上m−1以下の整数であり、すべてのgでa2,g,j%m=v2,j(v2,j:固定値)が成立する。)





一般化すると、以下のようになる。
【0493】

<条件#B−6’−k>
「ak,g,j%m=vk,j for ∀g g=0,1,2,・・・,m−3,m−2,m−1(vk,j:固定値)」
(gは0以上m−1以下の整数であり、すべてのgでak,g,j%m=vk,j(vk,j:固定値)が成立する。)
(kは、1以上n−1以下の整数)





<条件#B−6’−(n−1)>
「an−1,g,j%m=vn−1,j for ∀g g=0,1,2,・・・,m−3,m−2,m−1(vn−1,j:固定値)」
(gは0以上m−1以下の整数であり、すべてのgでan−1,g,j%m=vn−1,j(vn−1,j:固定値)が成立する。)

さらに、以下の条件を満たすと、高い誤り訂正能力を得ることができる。
【0494】

<条件#B−7−1>
「v1,1≠v1,2、v1,1≠v1,3、v1,2≠v1,3が成立する。」

<条件#B−7−2>
「v2,1≠v2,2、v2,1≠v2,3、v2,2≠v2,3が成立する。」





一般化すると、以下のようになる。
<条件#B−7−k>
「vk,1≠vk,2、vk,1≠vk,3、vk,2≠vk,3が成立する。」
(kは、1以上n−1以下の整数)





<条件#B−7−(n−1)>
「vn−1,1≠vn−1,2、vn−1,1≠vn−1,3、vn−1,2≠vn−1,3が成立する。」

そして、「図28で示した符号化率R=(n−1)/nの改良したテイルバイティング方法を用いたLDPC−CC(LDPC−CCを利用したブロック化したLDPC符号)のパリティ検査行列Hpro_mの情報Xから情報Xn−1に関連する部分行列がイレギュラー」でなければならないので、以下の条件を与える。
【0495】

<条件#B−8−1>
「a1,g,v%m=a1,h,v%m for ∀g∀h g,h=0,1,2,・・・,m−3,m−2,m−1;g≠h」
(gは0以上m−1以下の整数であり、かつ、hは0以上m−1以下の整数であり、かつ、g≠hであり、これ