一般的に、多くの通信装置や記録再生装置においては、入力情報系列を符号化した符号系列を伝送する事により、デジタル伝送情報のBERの低減が図られている。
図1は、送信装置11および受信装置12からなる従来の無線通信システム1の構成を示すブロック図である。
図1において、まず、ユーザ側の情報系列は符号化部21に入力され、k/nの比で符号化されて符号系列となる。
ただしここで、kは情報語長、nは符号語長、そして、k/nは符号率あるいは符号化率と呼ばれる。また、符号化は、暗号化、誤り訂正符号化、RLL(run length limited)符号化等、複数の符号化が組み合わされる事が多い。
符号系列は、送信部22に入力され、無線通信システム1における送信装置11ならば、送信部22において送信アンテナによって送信信号が空間に送信される。
送信信号は、受信部31に入力され、無線通信システム1における受信装置12ならば、受信部31において受信アンテナによって空間中の信号からアナログ受信信号に変換される。
これらのアナログ信号は、図示しないアナログ等化器を用いて所定の目標等化特性に等化された後、A/D(analog/digital)変換部32においてデジタル受信信号に毎時刻変換される。なお、A/D変換部32には図示しない位相同期回路が含まれる。
デジタル受信信号は、符号検出部33において、検出符号系列もしくは、その事後確率情報系列に変換された後、復号部34に入力され、n/kの比で検出情報語に復号され、検出情報系列となる。
ただし、アナログ等化器による等化が十分でない場合には、A/D変換部32と符号検出部33との間にデジタル等化器が設けられる場合もある。また近年、符号検出部33においては、ビタビ検出器等の軟判定検出器を用いるのが一般的である。さらに、復号部34において繰り返し復号法を用いる場合には、符号検出部33において事後確率検出器が用いられる場合がある。
なお、図1では、送信装置11と受信装置12からなる無線通信システム1について説明したが、送信部22の代わりに記録部が設けられた記録装置と、受信部31の代わりに再生部が設けられた再生装置からなる記録再生システムとすることも可能である。その場合、記録再生システムにおいて、符号化部21、A/D変換部32、符号検出部33、および復号部34により行われる処理は、無線通信システム1において行われる処理と同様である。
ところで、図1において、符号化部21および復号部34に用いられる誤り訂正符号としては、様々な符号が検討され、リードソロモン(RS(Reed Solomon))符号等、その内の一部が実用化されている。
近年、例えば、移動体通信や深宇宙通信といった通信分野、および地上波または衛星デジタル放送といった放送分野の研究が著しく進められているが、それに伴い、誤り訂正符号化および復号の効率化を目的としての符号理論に関する研究も行われている。
符号性能の理論的限界としては、いわゆるシャノン(C.E.Shannon)の通信路符号化定理によって与えられるシャノン限界が知られている。符号理論に関する研究の目的の1つは、このシャノン限界に近い性能を示す符号を開発することである。シャノン限界に近い性能を示す符号化方法として、例えば、並列連接畳み込み符号(parallel concatenated convolutional codes)や、縦列連接畳み込み符号(serial concatenated convolutional codes)といった、いわゆるターボ符号化(turbo coding)と呼ばれる手法が開発されている。
また近年では、これらのターボ符号が開発される一方で、図1の符号化部21および復号部34に用いられる、伝送情報のBERの低減に有効な誤り訂正符号の1つとして、低密度パリティ検査(LDPC(low-density parity-check)符号の研究が盛んに行なわれている。
LDPC符号は、R.G.Gallagerによって1962年に提案された古くから知られていた符号であったが、最近になって非常に優れた復号性能を有している事が明らかとなってきた。LDPC符号については、非特許文献1に開示されているが、近年の研究により、LDPC符号は、符号率の低い符号では、符号長を長くしていくにしたがって、シャノン限界に近い性能が得られることが分かりつつある。また、LDPC符号は、最小距離が符号長に必ずしも比例しないという性質がある。
ここで、LDPC符号とは、そのパリティ検査行列(以下、検査行列と呼ぶ)において非ゼロ要素の密度が疎(sparse)となるパリティ検査符号の事である。
従って、LDPC符号とは、検査行列における非ゼロ要素の数がある程度曖昧に定義されただけの非常に広い範囲の符号に対して適用される名前であり、例えば一般的によく知られているRS符号の様に、ある特定の符号生成規則に従った符号を指すものでは無い。つまり、LDPC符号と呼べる符号は、無限に存在する事に注意する必要がある。
また、LDPC符号の復号には一般的に、Sum-Product復号法、あるいはBelief-Propagation(BP)復号法と呼ばれる繰り返し復号法の一つが適用される。
LDPC符号において、検査行列の列重みが一定の符号はレギュラLDPC符号、検査行列の列重みが一定でないLDPC符号はイレギュラLDPC符号と呼ばれる。
イレギュラLDPC符号はレギュラLDPC符号と比較して、一般的に高い誤り訂正能力を得られるが、回路規模は大きくなりやすい。ただし、符号率が高いほど、イレギュラLDPC符号とレギュラLDPC符号との誤り訂正能力の差は小さくなる。
また、近年、LDPC符号の符号化器および復号器(図1では、符号化部21および復号部34)の回路規模を削減できる方法の1つとして、古くから知られている準巡回(QC(Quasi Cyclic))符号をLDPC符号として用いる方法が注目されている。
QC符号は検査行列の規則性が非常に高く、その規則性を利用する事により、LDPC符号として用いた時、その符号化器および復号器の回路規模の低減を図る事ができる事が期待される。
ここでQC符号とは、任意の符号語を、ある自然数の周期p(1≦p<n)だけ巡回シフトした系列が、元の符号語以外の符号語となる符号の事である。なお、p=1となるQC符号は、巡回符号と呼ばれる。
QC符号の詳細は、例えば非特許文献2に開示されている。QC符号の検査行列は、qを自然数として、p・q個の巡回行列(cyclic matrix)を用いて表す事ができる。
一般的に、m行m列(m×m)巡回行列は、全ての列がある任意の列、例えば最初の列の巡回シフトである行列として定義される。
すなわち、m×m巡回行列Cの左端最初の列ベクトルを、[x0x1・・・xm-1]T(Tは転置操作を表わす)と定義すれば、Cは次の式(1)の様に表わされる。
ただし、式(1)においては、巡回行列Cの各列を行列の下方向へ巡回させているが、これを上方向へ巡回させて定義しても良い。巡回行列の逆行列および2つの巡回行列の積は、各々巡回行列となる。
p・q個の巡回行列から構成される、周期pを有するQC符号の検査行列H(p,q)は、一般的に次の式(2)の様に定義される。
ここで、式(2)において、Di,hは、H(p,q)の列を並び替えた下記の式(3)の行列H'(p,q)を構成する、m×m巡回行列Ci,jのh番目の列(0≦h<m)がj番目の列となるm×p行列である。
なお、式(3)は、式(2)の列を並べ替えただけなので、白色雑音を有する受信信号に対する復号性能は、どちらの検査行列を有する符号でも同じである。従って以下では、特にことわりが無い限り、式(2)の構造を有する検査行列と、式(3)の構造を有する検査行列とは、区別しない事にする。
この様なQC符号の検査行列を構成する、各巡回行列の列重みwcは零以上の任意の整数であり、かつ、各巡回行列は異なる列重みを有していても良い。しかしながら、これまで一般的には、q=1かつwc≧2で、wcを一定としたものか、q≧2かつwc∈{0,1}としたものしか、具体的な検査行列の設計方法は知られていない。
q=1かつwc≧2の検査行列の具体的な設計方法は、例えば非特許文献3や、本発明者により提案された非特許文献4に開示されている。
また、q≧2かつwc∈{0,1}の検査行列の具体的設計方法は、例えば非特許文献5に開示されている。
q≧2かつwc∈{0,1}の検査行列を用いた場合、レギュラLDPC符号、イレギュラLDPC符号のどちらも比較的設計しやすいという利点がある。
また、符号長がある程度長くかつ符号率が低い場合には、wc∈{0,1}とすると、検査行列上で短いサイクルが生じ難いので、LDPC符号として用いた時に低い誤り率性能を得やすいという利点もある。
一方、非特許文献4の中においても指摘されている様に、符号長が同じであれば、q=1かつwc≧2の検査行列を用いた方が、q≧2かつwc∈{0,1}の検査行列を用いるよりも、より高い符号率の自己直交QC符号を設計する事ができる。符号が自己直交である場合、その検査行列において長さ4のサイクルが存在せず、LDPC符号として用いた際にその復号性能を改善する事ができる事が一般的に知られている。
QC符号は、ごく簡単なシフトレジスタ回路を用いて符号化される事ができる。その方法は、例えば上記の非特許文献2や、特許文献1および特許文献2に開示されている。
また、QC符号に限らず、簡単な符号化回路を構成できる方法の1つとして、検査行列の一部にlower triangular構造あるいはdual diagonal構造を作る方法も提案されており、その詳細は例えば非特許文献6に開示されている。なお、この方法を用いる場合、符号は必ずしもQC符号である必要はない。
ところで、無線通信装置(図1では、無線通信システム1)においては一般的に、符号率の異なる誤り訂正符号を複数用意しておき、伝送路の状況に応じてそれらの1つを選択して用いる事が多い。
この場合、全ての符号について異なる符号化器や復号器(図1では、符号化部21や復号部34)を持つと、回路規模が大きくなってしまう場合があるため、これら複数の符号化・復号器はできるだけ回路が共有される事が望ましい。符号率の異なる複数の符号において、できるだけ回路共有が図られる様に設計された符号は、一般的にRate-Compatible符号と呼ばれる。
LDPC符号についても、近年、Rate-Compatible LDPC(以下、RC-LDPCと呼ぶ)符号とするための様々な検討が行なわれている。
RC-LDPC符号は、ある1つの元になる符号(mother符号)の検査行列を、変形またはそのまま流用してその他の符号率を有する符号の検査行列とする手法が一般的である。これまでに報告されているRC-LDPC符号は、多くの場合に、その検査行列が式(2)において、q≧2かつwc∈{0,1}の構造を有しており、例えば、非特許文献7、非特許文献8、特許文献3に、その内容が開示されている。
RC-LDPC符号の構成方法は、従来から符号理論においてよく知られているパンクチャリング(puncturing)やショートニング(shortening)の技術を利用したものが多く、例えば非特許文献7の方法も、パンクチャリングを利用したものである。
一方で、非特許文献8や特許文献3においては、高符号率のmother符号の検査行列における各行の分割(splitting)を巡回行列単位で行なう事により、低符号率の符号の検査行列を得る方法が提案されている。
図2は、非特許文献8において開示された、検査行列中の一部の巡回行列において行われる行分割について説明する図である。
図2においては、0を零行列、1をwc=1の巡回行列と見なす事により、q≧2かつwc∈{0,1}の検査行列において、巡回行列が複数段に分割される様子が表現されている。また、図2においては、wc=1の巡回行列が具体的にどの様なものか図示されていないが、零行列を除く分割後の各巡回行列は、全て分割前の巡回行列と同じものによって構成される点に注意する必要がある。
分割前の検査行列の行数をm1とすれば、図2の様に巡回行列を2段に分割する事により、分割後の検査行列の行数は2m1となる。今、検査行列がフルランク、すなわち、検査行列の行数とパリティ数とが等しいと仮定すれば、行分割前の検査行列を有する符号の符号率は(n-m1)/nであり、各行を2分割した後の検査行列を有する符号の符号率は(n-2m1)/nである。
この様な巡回行列分割を繰り返し行なう事によって、複数の検査行列を構成すると、それら検査行列はその基本構造が同じである事から、復号回路の共有化を図る事が可能となる。
ここで、検査行列上のパリティの位置は、どこであっても符号化・復号は可能であるが、実際のシステムにおいては、システム構成上の容易さから、パリティの位置は検査行列上で一定間隔に存在するか、あるいは検査行列上の右側あるいは左側にまとまって並んでいる事が望ましい。
ところが、図2の様な行分割を行なって複数の検査行列を構成した場合、全ての検査行列について、パリティを検査行列上の所望の位置に配置する事は、必ずしも容易ではない。このため、非特許文献8の中では、各検査行列は、パリティを検査行列の右側に並べるために、非特許文献7に開示された様なdual diagonal構造を有している。従って、パリティ部分については、図2の様な行分割を行なう事はできず、その規則性は崩れている。
特許文献3の方法もまた、非特許文献8の方法と同様に、巡回行列単位で行方向に分割を行なう方法である。ただし、特許文献3に開示されている方法では、パリティ部分も含めて、図2に示した様な検査行列の行分割を行なっているが、具体的な符号化方法は示されていない。例えば、特許文献3に開示されている符号は、パリティ部分は検査行列上で不規則に存在する。
このため、特許文献3の中でも、実用的な符号化器を構成するためには、dual diagonal構造等の構造を組み合わせなければならない可能性が指摘されているが、その場合、非特許文献8の場合と同様にパリティ部分の規則性は崩れてしまう事になる。
以下、図面を参照しながら本発明の実施の形態について説明する。
図3は、本発明を適用した無線通信システム101の一実施の形態の構成を示すブロック図である。この無線通信システム101は、情報系列を符号化して送信する送信装置111と、その符号系列を受信して復号する受信装置112から構成される。
なお、図3の無線通信システム101において、従来の図1の無線通信システム1と対応する部分には同一の符号を付してあり、その説明は適宜省略する。すなわち、図3の無線通信システム101において、送信装置111は、符号化部21に代わって、符号化部121が設けられている以外は、図1の送信装置11と同様の構成を有している。また、受信装置112は、復号部34に代わって、復号部131が設けられている以外は、図1の受信装置12と同様の構成を有している。
符号化部121は、入力情報系列に対して、LDPC符号による符号化処理を施し、符号化により得られた符号系列を送信部22に供給する。符号化部121によるLDPC符号の符号化の詳細は後述する。
LDPC符号に符号化された符号系列は、送信部22において送信アンテナによって、送信信号として送信される。そして、受信装置112においては、受信部31によって、その送信信号が受信され、A/D変換部32によって、デジタル受信信号に変換され、符号検出部33によって、検出符号系列もしくは事後確率情報系列に変換された後、復号部131に入力される。
続いて、復号部131は、例えば、Sum-Product復号法、あるいはBP復号法等の繰り返し復号法を用いて、変換されたデジタル受信信号を検出情報語に復号し、検出情報系列として出力する。なお、上述したように、復号部131において繰り返し復号法を用いる場合には、符号検出部33において事後確率検出器が用いられる場合がある。
なお、本実施の形態では、送信装置111と受信装置112との2つの装置から構成される無線通信システム101について説明するが、図3の送信装置111と受信装置112とが一体となった送受信装置とすることも可能である。
このように、図3の符号化部121および復号部131においては、伝送情報のBERの低減に有効な誤り訂正符号の1つであるLDPC符号が用いられている。
ところで、符号化部121で行われるRC-LDPC符号は、一般的に符号率の高い符号と、符号率の低い符号とが、各々できるだけ規則的に相関した検査行列を有する。そしてこれまで、その様な規則性を有するRC-LDPC符号の検査行列は、全てq≧2かつwc∈{0,1}の巡回行列から構成されるのが、一般的であった。
しかしながら、検査行列の列重みと符号長が一定であれば、検査行列を構成する巡回行列の列重みは1よりも大きい方が、より高い符号率の自己直交符号を構成できるのであるから、符号率が高くなるほど、検査行列を構成する巡回行列の最大列重みを大きくした方が、より広範囲の符号率において良好な性能を有するLDPC符号を構成できる事が期待される。
図4は、列重み3の10個の巡回行列によって構成されるq=1の検査行列を、巡回行列の最大列重みを減少させながら、q=2およびq=4の検査行列を順次構成した場合について説明する図である。図4において、0は零行列、1はwc=1の巡回行列、2はwc=2の巡回行列、3はwc=3の巡回行列、と各々見なされる。
図4に示すように、q=1の検査行列は、列重み3の10個の巡回行列によって構成される。このq=1の検査行列が2段に分割される事で、列重み1または2からなる10個の巡回行列を2段有するq=2の検査行列となる。さらに、このq=2の検査行列を構成する2段の巡回行列の各々が2段に分割される事で、列重み0または1からなる10個の巡回行列を4段有するq=4の検査行列となる。
これにより、列重み3の10個の巡回行列によって構成されるq=1の検査行列は、巡回行列の最大重みを減少させながら、q=2の検査行列と、q=4の検査行列を順次構成する。
すなわち、本実施の形態において、符号化部121は、全ての検査行列が複数の巡回行列から構成される、複数の符号率を有するLDPC符号を符号化する際に、その中で符号率が最低値でない、ある符号の検査行列を構成する巡回行列の最大列重みをw0とし、かつそれよりも低い符号率を有する符号の検査行列を構成する巡回行列の最大列重みをw1とした時、1 < w0 かつ w1 < w0となるように符号化する。
ただしここで、図4の各検査行列において、各巡回行列の順番は入れ替えても良い。また本実施の形態では、上記のw1 < w0の関係を満たしていればよく、その分割の行ない方を特に限定するものではない。
ただし、図4の様に符号率の異なる符号の検査行列を構成する場合、それら検査行列は、できるだけ規則的に構成されている事が望ましい。そこで、その様な規則的な検査行列の具体的構成法の一例を、以下に示す。
元となるmother符号の検査行列を、H0(p,q)とし、それをs回行分割して得られる検査行列HS(p,q)を次の様に定義する。
ここで、ys i,j ∈{0,1}(0≦i<q・m,0≦j<p・m)は検査行列HS(p,q)におけるi行j列目の2値要素である。
今、検査行列HS(p,q)の列重みを一定値wとした時、そのj列目において、ビット1である行のアドレスbs j,z(0≦z<w)からなる集合をBs j={bs j,0,bs j,1,…,bs j,w1}とする。この時、例えば、Cプログラムにおいては、次の(5)のアルゴリズムに従って、検査行列のj列目の要素が求められる。
また、mother符号の検査行列においてq=1とし、その構造が上記の式(2)によって表現されると仮定して、b0 j,zを次の様に定義する。
なお、式(6)において、aj,z(0≦j<p,0≦z<w)は、検査行列を構成するp個の巡回行列の、最初の列におけるビット1の位置を示すw個の行アドレスである。
ここでは、各aj,zについて、w=3,p=10,m=72を一例にして考えると、次のようになる。
そして、式(4)乃至式(7)に従って、mother符号の検査行列H0(10,1)が求められる。
この時、mother符号の検査行列H0(10,1)を元に、図4に従って行分割された、q=2の検査行列H1(10,2)を、次のb1 j,zから成るB1 jを用いて、式(4)および式(5)から求める。
同様に、mother符号の検査行列H0(10,1)を元に、図4に従って行分割された、q=4の検査行列H2(10,4)を、次のb2 j,zから成るB2 jを用いて、式(4)および式(5)から求める。
ただしここで、δ(X)は、Xが真(true)であった時に1、偽(false)であった時に0となる関数である。
すなわち、式(4)乃至式(9)によって定義される3つの検査行列H0(10,1),H1(10,2),H2(10,4)を用いる事により、符号長720ビット、符号率9/10,4/5,3/5の各符号を構成できる。また、本実施の形態の符号は全て自己直交符号となっている。
また、式(8)および式(9)から明らかな様に、最大符号率を有する符号の検査行列H0(10,1)の、ある列におけるビット1の位置を表す、ある行アドレスをbとした時、その他符号率の符号のパリティ検査行列H1(10,2)およびH2(10,4)における、その列のビット1の位置を表す行アドレスは、巡回行列毎に一定である0以上の整数cを用いて、b + c mと表現されている。
すなわち、本実施の形態においては、最大符号率を有する符号のパリティ検査行列の、ある列におけるビット1の位置を表すある行アドレスをbとした時、その他符号率の符号のパリティ検査行列における、その列のビット1の位置を表す行アドレスが、巡回行列毎に一定である0以上の整数cを用いて、b + c mと表現される。
また、本発明の符号化方法の特徴として、高符号率のmother符号から構成される低符号率の符号の最小ハミング距離が、mother符号の最小ハミング距離以上となるという特徴がある。このため、元となる高符号率のmother符号にできるだけ最小ハミング距離の大きな符号を用いる事により、全ての符号率の符号において大きな最小距離を得る事が可能となる。
この様な最小ハミング距離ができるだけ大きく、かつ符号率の高い符号としては、例えば本発明者による非特許文献4に記載されてなる様な、符号の最小距離が(検査行列の列重み+2)以上となる符号がある。
本発明の実施例に記載されてなる符号率9/10のmother符号も、非特許文献4に開示された技術に基づいて設計されており、検査行列の列重みは3、かつ符号の最小距離は6となっている。従って、本発明の実施例では、符号率4/5,3/5の各符号も、符号の最小距離は6以上となる。
mother符号の符号率をできるだけ高くし、かつ全ての符号の最小距離をできるだけ大きく保つためには、本発明の実施例に記載されてなる様に、検査行列の最小列重みを3、かつ符号の最小距離は6以上とする事が望ましい。
ここで、n×(q m)検査行列Hs(p,q)は、最初の(nq m)列から成る(nq m)×(q m)行列Hs Aと、最後の(q m)列から成る(q m)×(q m)行列Hs Bとを用いて、一般的に次の様に表現できる。
本実施の形態においては、全てのsについて、下記の式(11)が成り立つ様に、式(7)の各ベクトル内において、あらかじめ各要素の順番が調整されている。
ただし、この調整は、式(8)および式(9)におけるmの係数を変化させる事によっても行なう事ができる。
そして、式(10)および式(11)より、各符号の生成行列Gsは、次の式(12)の様に求める事ができる。
なお、式(12)において、Iは、(q m)×(q m)単位行列である。
本実施の形態においては、式(12)の形式に変形できる様に全ての検査行列を構成できるので、全ての符号について、パリティの位置を検査行列の右側に並べる事ができる。ただし、パリティの位置は検査行列の左側に並ぶ様にしてもよいし、検査行列の中で、等間隔で規則的に並ぶ様にしても良い。言い換えれば、パリティが、検査行列上の右側、あるいは左側、あるいは一定間隔のいずれかに配置されるとも言える。
以上の様に、式(11)が全てのHs(p,q)において成立する様に、式(7)乃至式(9)を調整する事により、全ての検査行列上でパリティが規則的に並び、例えば、上記の特許文献2等の方法を用いて、一般的な組織符号(systematic code)としての符号化を容易に行なう事が可能となる。ここで、組織符号とは、情報語が符号語の一部となる符号の事である。
図5は、図3の符号化部121の詳細な構成を示すブロック図である。なお、符号化部121は、例えば、組織符号の符号化回路として構成される。
図5に示すように、図3の符号化部121において、パリティ生成回路151は、式(12)に従って、入力情報系列をパリティ系列に変換する。符号化部121は、パリティ系列と、情報系列から構成されるLDPC符号の符号系列を送信部22に出力する。
なお、パリティ生成回路151は、式(12)に従った方法に限らず、他の方法を用いて、入力情報系列をパリティ系列に変換するようにしてもよい。例えば、パリティ生成回路151は、特許文献2に開示されている方法に従って、入力情報系列をパリティ系列に変換してもよい。
このように、本実施の形態において、符号化部121は、上述したような構成を有するので、mother符号にq=1の検査行列を用いた場合、従来の「巡回行列単位で行分割を行なう方法」よりも、その性能を大きく改善する事ができる。ただしここで、q=1の検査行列を構成する巡回行列の最大列重みは、2以上である必要がある。
また、本実施の形態においては、検査行列の列重みは任意であるが、検査行列の列重みを一定とする事で、より復号回路(図3では、復号部131)を簡略化する事が可能である。なお、その際に、良好なBERを得るためには、検査行列の列重みは3である事が望ましい。
さらに、本実施の形態においては、単位行列の1辺の長さmを変化させた、符号長の異なる符号を含めて、RC-LDPC符号としても良い。ただしその際には、mを変化させても復号性能が劣化しない様、予め検査行列を設計する必要がある。
ここで、符号化部121によって実行される符号化の処理と、従来の図1の符号化部21によって実行される符号化の処理とを比較すると、次のようになる。すなわち、図6は、列重み3の10個の巡回行列によって構成されるq=1の巡回行列を、従来の「巡回行列単位で行分割を行なう方法」に従って行分割を行なった場合の、本実施の形態(本実施例)に対する比較例である。
図6に示すように、q=1の検査行列は、列重み3の10個の巡回行列によって構成される。このq=1の検査行列が2段に分割される事で、列重み0または3からなる10個の巡回行列を2段有するq=2の検査行列となる。さらに、このq=2の検査行列を構成する2段の巡回行列の各々が2段に分割される事で、列重み0または3からなる10個の巡回行列を4段有するq=4の検査行列となる。
ただし、本発明の比較例においては、mother符号の検査行列は、実施例と同じH0(10,1)である。この時、比較例における符号率4/5,3/5の2つの行列は、図6より一意に定まる。
ここで、実施例と比較例との関係を詳細に比較すると次のようになる。すなわち、図7は、本発明の実施例と比較例における、BERのBPSK(Binary Phase Shift Keying)変調における、白色雑音下での信号対雑音比Eb/N0(dB)依存性の比較である。
図7において、縦軸はビット誤り率であるBERを表わし、横軸は信号対雑音比Eb/N0(dB)依存性を表わす。また、図7のグラフにおいて、白色の丸印は、符号率9/10,q=1の実施例のグラフを表わし、白色の上向き三角印は、符号率4/5,q=2の実施例のグラフを表わし、黒色の上向き三角印は、符号率4/5,q=2の比較例のグラフを表わす。また、白色の下向き三角印は、符号率3/5,q=4の実施例のグラフを表わし、黒色の下向き三角印は、符号率3/5,q=4の比較例のグラフを表わす。すなわち、白色の印は実施例のグラフを示し、黒色の印は比較例のグラフを示している。
図7を見て分かる様に、本発明の実施例は比較例と比べて、BER=104において、符号率4/5で +0.4dB、符号率3/5で +1.5dBの符号化利得が各々ある。比較例におけるBERの劣化は、行分割を行なうほど大きくなる。この理由は、図6を見て分かる様に、mother符号の検査行列がq=1の場合、巡回行列単位で行のN分割を行なってq=Nの検査行列を作ると、符号長が1/Nの符号をN個並べたものと等価になってしまうからである。符号性能は符号長が長いほど良くなる傾向があるため、比較例の手法では、その性能が大きく劣化する結果となる。
また、図7を見て分かる様に、本発明の実施例の符号は、全ての符号率においてエラーフロアが観測されておらず、良好なBER性能を示している。
このように、本発明によれば、巡回行列の列重みが2以上の場合に、従来の「巡回行列単位で行分割を行なう方法」を適用した場合よりも、低い符号率での符号化利得を大きくできる。
ただし従来は、巡回行列の列重みが2以上の場合に「巡回行列単位で行分割を行なう方法」を適用した例は無い。従来は、巡回行列の列重みが1の場合に「巡回行列単位で行分割を行なう方法」を適用した例があるのみである。
このため、本発明を適用した符号は、本質的には、列重みが1の巡回行列から検査行列が構成される符号率の最も低い符号の性能が従来と同等で、符号率の高い符号が、巡回行列の列重みを向上させる事により、効率的に構成されていると捉える事もできる。
従来は、720ビットという様な短い符号長において、9/10の様な高い符号率を含むRC-LDPC符号が構成された例は無い。
次に、図8のフローチャートを参照して、図3の符号化部121により実行される符号化処理について説明する。
ステップS11において、符号化部121は、例えば外部の機器等から入力された情報系列を取得する。
ステップS12において、パリティ生成回路151は、例えば、式(12)に従って、取得した情報系列を変換して、パリティ系列を生成する。
ステップS13において、符号化部121は、生成したパリティ系列と、情報系列から構成されるLDPC符号の符号系列を出力して、符号化処理は終了する。
以上のようにして、符号化部121によって、全ての検査行列が複数の巡回行列から構成される、複数の符号率を有するLDPC符号に符号化される際に、その中で符号率が最低値でない、ある符号の検査行列を構成する巡回行列の最大列重みをw0とし、かつそれよりも低い符号率を有する符号の検査行列を構成する巡回行列の最大列重みをw1とした時、1 < w0 かつ w1 < w0となるように符号化される。
ところで、本実施の形態では、送信装置111と受信装置112からなる無線通信システム101について説明したが、本発明は、例えば、記録装置と再生装置からなる記録再生システムに適用することも可能である。
図9は、本発明を適用した記録再生システム201の一実施の形態の構成を示すブロック図である。この記録再生システム201は、例えば、ストレージシステムの一例であって、記録装置211と再生装置212からなるシステムである。
なお、図9の記録再生システム201において、図3の無線通信システムと対応する部分には同一の符号を付してあり、その説明は適宜省略する。すなわち、図9の記録装置211では、図3の送信装置111における送信部22に代わって、記録部221が設けられている。また、再生装置212は、図3の受信装置112における受信部31の代わりに、再生部231が設けられている以外は、図3における場合と同様の構成を有している。
記録装置211において、記録部221は、符号化部121からの符号系列に対応する記録信号を、光ピックアップあるいは磁気ヘッド等を用いて図示しない記録媒体上に記録する。
再生装置212において、再生部231は、アナログ光ピックアップあるいは磁気ヘッドによって図示しない記録媒体に記録されている記録信号を、アナログ再生信号に変換し、A/D変換部32に供給する。
以上のような構成を有する記録再生システム201においては、図3の無線通信システム101と同様に、記録装置211は、LDPC符号に符号化された符号系列を、記録媒体に記録する。
なお、図9の記録再生システム201は、記録装置211と再生装置212とが一体となった記録再生装置として構成されるようにしてもよい。
以上のように、本発明によれば、特に高い符号率で良好なBER性能を有する符号を包含する、実用的なRC-LDPC符号を構成する事を可能とする。また、高い符号率から低い符号率の符号まで、良好なBERを得ることが可能となる。
また、本発明によれば、複数の符号の検査行列におけるパリティの位置を所望の位置とする事により、実用的な符号化器を構成する事を可能とする。またその際に、パリティ部分と情報語部分とで検査行列の規則性を一定とした上で、符号率の異なる全ての符号において、パリティの位置を検査行列上の所望の位置とするための具体的な方法が明らかとなった。
なお、本発明は、例えば、LAN(Local Area Network)、PAN(Personal Area Network)、テレビ放送、携帯型電話、イーサネット(登録商標)等の各種通信装置において、伝送信号の誤り率を低減するための符号の符号化装置に用いられ、符号率の異なる複数の符号を単一の復号器を用いて復号するために用いて好適である。
上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータ等に、プログラム記録媒体からインストールされる。
図10は、上述した一連の処理をプログラムにより実行するパーソナルコンピュータの構成の例を示すブロック図である。CPU(Central Processing Unit)311は、ROM(Read Only Memory)312、または記録部318に記録されているプログラムに従って各種の処理を実行する。RAM(Random Access Memory)313には、CPU311が実行するプログラムやデータ等が適宜記憶される。これらのCPU311、ROM312、およびRAM313は、バス314により相互に接続されている。
CPU311にはまた、バス314を介して入出力インターフェース315が接続されている。入出力インターフェース315には、マイクロホン等よりなる入力部316、ディスプレイ、スピーカ等よりなる出力部317が接続されている。CPU311は、入力部316から入力される指令に対応して各種の処理を実行する。そして、CPU311は、処理の結果を出力部317に出力する。
入出力インターフェース315に接続されている記録部318は、例えばハードディスクからなり、CPU311が実行するプログラムや各種のデータを記録する。通信部319は、インターネットやローカルエリアネットワーク等のネットワークを介して外部の装置と通信する。
また、通信部319を介してプログラムを取得し、記録部318に記録してもよい。
入出力インターフェース315に接続されているドライブ320は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリ等のリムーバブルメディア321が装着されたとき、それらを駆動し、そこに記録されているプログラムやデータ等を取得する。取得されたプログラムやデータは、必要に応じて記録部318に転送され、記録される。
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを格納するプログラム記録媒体は、図10に示すように、磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)を含む)、光磁気ディスク、もしくは半導体メモリ等よりなるパッケージメディアであるリムーバブルメディア321、または、プログラムが一時的もしくは永続的に格納されるROM312や、記録部318を構成するハードディスク等により構成される。プログラム記録媒体へのプログラムの格納は、必要に応じてルータ、モデム等のインターフェースである通信部319を介して、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の通信媒体を利用して行われる。
なお、本明細書において、記録媒体に格納されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。