(57)【要約】【課題】  誤り訂正技術に係り、パンクチャされたビットの確率情報を効率よく補い、復号性能を向上させることを目的とする。【解決手段】  LDPC(Low-density Parity-check：低密度パリティ検査符号)符号化され、パンクチャされた信号を復号する復号方法において、順方向に復号処理を進めて確率情報を更新する順方向処理と、上記順方向と逆方向に復号処理を進めて確率情報を更新する逆方向処理とで復号処理の方向を切り替えるものである。【選択図】        図２
2007329828.tif 000002
【特許請求の範囲】
【請求項１】
LDPC(Low-density Parity-check：低密度パリティ検査符号)符号化され、パンクチャされた信号を復号する復号方法において、
順方向に復号処理を進めて確率情報を更新する順方向処理と、上記順方向と逆方向に復号処理を進めて確率情報を更新する逆方向処理とで復号処理の方向を切り替えることを特徴とする復号方法。
【請求項２】
LDPC(Low-density Parity-check：低密度パリティ検査符号)符号化され、パンクチャされた信号を復号する復号器において、
順方向に復号処理を進めて確率情報を更新する順方向処理と、上記順方向と逆方向に復号処理を進めて確率情報を更新する逆方向処理とで復号処理の方向を切り替えて信号を復号することを特徴とする復号器。
【請求項３】
LDPC(Low-density Parity-check：低密度パリティ検査符号)符号化され、パンクチャされて送信された信号を復号する通信装置において、
順方向に復号処理を進めて確率情報を更新する順方向処理と、上記順方向と逆方向に復号処理を進めて確率情報を更新する逆方向処理とで復号処理の方向を切り替えて信号を復号する復号器を備えたことを特徴とする通信装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明はデジタル通信における誤り訂正技術に係り、特にパンクチャされたLDPC(Low-Density Parity Check：低密度パリティ検査)符号の復号方法、復号器及びこれを備えた通信装置に関するものである。
【背景技術】
【０００２】
ディジタル通信において、誤り訂正符号化された符号化ビット系列における冗長ビット数を柔軟に変える必要がある。第３世代移動体通信では、HARQ(Hybrid Automatic ReQuest)技術が適用されており、冗長ビット数を柔軟に変えるだけでなく、１符号ブロックの冗長ビットを追加して送る機能IR(Incremental Redundancy)がある。冗長ビット数を可変にするために、符号化ビット系列の長い低符号化率の誤り訂正符号系列を生成しておき、必要なビットに合わせてパンクチャを行う手法がある。
【０００３】
LDPC符号は通信路容量に迫る訂正能力を持つ誤り訂正符号である。非０要素(2元ならば1)の疎な行列を検査行列として用い、列方向の非０要素の個数（列重み）、行方向の非０要素の個数（行重み）がそれぞれ均一なLDPC符号を正則LDPC符号と呼び、各重みが不均一な非正則LDPC符号と呼ぶ。一般的に、非正則LDPC符号の復号性能が高い。
【０００４】
LDPC符号は当初符号化の複雑度として、符号化処理が線形時間に収まらないことが問題視されていたが、LDGM(Low Density Generation Matrix)構造による符号化の効率は大幅に改善された。LDGM構造は冗長ビットを生成するための生成行列の非０成分が階段状に配列しており、冗長ビットの先頭から順に生成していくことで、線形時間内での処理が可能である。
【０００５】
LDPC符号の復号方法はSum-Product復号法とその演算量を削減したMin-Sum復号法が良く知られている。LDPC符号の復号は、所定の行処理及び列処理を繰り返すことで復号を行い、繰り返しごとにパリティ検査を行い、パリティ検査をすべて満たせば繰り返しを終え、復号結果を返す処理を行う。しかし、収束速度が遅く復号繰り返し回数が大きくなることからShuffled BP復号法など確率情報の更新スケジュールを工夫した復号方法がある。また、Min-Sum復号法はSum-Product復号法の演算量を低減させる方法であるが、劣化量が大きいためにOffset BP-based復号法などMin-Sum復号法を改善させる復号方法もある。これらの復号方法を組み合わせて、収束速度が速く演算量の少ない復号方式がLDPC符号復号器として開発されている。
【０００６】
LDPC符号を用いて前述のIR機能を搭載する場合にも、パンクチャにより冗長ビット数を可変にすることが可能である。低符号化率の符号化系列を生成し、任意のビット数のパンクチャを行い、残ったビットを変調して送信する。受信側では復調して復号器に受信情報を受け渡すが、パンクチャされたビットの受信情報はないので、復号器ではそのビットは受信情報なしとして復号を行う。
【０００７】
冗長ビットの復号における確率情報の伝播過程を示すために、horizontal Shuffled BP復号法(Log-Domain)のアルゴリズムを以下（４）式に示す。
なお、Ｍ行Ｎ列の行列Ｈmnにおいて、以下（１）式のように定義する。
【０００８】
【数１】
2007329828.tif 000003
・・・・・（１）
【０００９】
また、復号で要する各LLR(Log Likelihood Ratio)に関して、以下（２）式のように定義する。
【００１０】
【数２】
2007329828.tif 000004
・・・・・（２）
【００１１】
また、受信LLRλnは、BPSK変調、AWGN通信路を仮定して以下（３）式のようになる。
【００１２】
【数３】
2007329828.tif 000005
・・・・・（３）
【００１３】
【数４】
2007329828.tif 000006
・・・・・（４）
【００１４】
上記のようなアルゴリズムに基づいてパンクチャされたLDPC符号を復号する場合、パンクチャされたビットの受信情報はないので、パンクチャされたビットは、復号器の該当ビット初期値を0とし、パンクチャされていないビットの確率情報を受けて復号される。なお、0を入力するのはLog-Domainで復号処理する場合であり、受信情報を示す LLR (log(p(0)/p(1)), p(0)：該当ビットが0である確率，p(1)：1である確率)が、0 or 1のいずれにも偏らないので、p(0) = p(1) でありLLR = log(1) = 0 を入力する。Log-Domainでない処理を行う場合には、p(0) = p(1)となる値を初期値とする。パンクチャされていないビットに対しては受信情報からLLRを算出して初期値とする。
【００１５】
図５は、前述のLDGM構造を持つLDPC符号をパンクチャして、horizontal Shuffled BP復号法で処理する際の確率情報の更新過程を模式的に示した説明図である。図５では冗長ビットを４ビットのうち３ビットをパンクチャする例であり、パンクチャされて受信情報がないビットには、0を割り当てる。
【００１６】
図５の矢印はhorizontal Shuffled BPで復号を行う場合の確率の伝播方向を示す。冗長ビットのみに着目すると、ビット番号kの持つ確率情報は次の更新でビット番号k+1に反映され、次の更新ではビット番号k+1の情報がk+2に更新され、繰り返される。horizontal Shuffled BP復号法は、行方向に確率情報の伝播を進めていくことに特徴があり、１行ごとに事後LLR（βn(l)）の更新を行うために、Sum-Product復号法よりも収束速度が速く、少ない復号繰り返し回数で高い復号性能を持つ。
【００１７】
以上のようにhorizontal Shuffled BP復号法では行ごとに更新があり、収束速度が速く、少ない復号繰り返し回数で高い復号性能を持つ。また、この確率情報の更新スケジュール（処理手順）と同様に、Min-Sum復号法やOffset BP-based復号法の更新スケジュールを改善した復号方法(ここでは、horizontal Shuffled Min-Sum復号法、horizontal Shuffled Offset BP-based復号法と呼ぶことにする)なども収束速度が速く、少ない復号繰り返し回数で高い復号性能を持つ。
【００１８】
【非特許文献１】和田山正、「低密度パリティ検査符号とその復号法  ＬＤＰＣ（Ｌｏｗ  Ｄｅｎｓｉｔｙ  Ｐａｒｉｔｙ  Ｃｈｅｃｋ）符号／ｓｕｍ−ｐｒｏｄｕｃｔ復号法」、トリケップス、２００２年６月５日、ｐ．７６−９９
【非特許文献２】F. Guilloud, “Generic architecture for LDPC codes Decoding”, July, 2004, [online],  <URL:http://pastel.paristech.org/archive/00000806/01/these.pdf>
【発明の開示】
【発明が解決しようとする課題】
【００１９】
しかしながら、図５のように、確率情報の１方向の更新では、ｍ行目の情報がｍ+１行目に伝播されていくのみであるため、例えばk+3番目のビットは隣のk+4番目に受信情報を持っているにも関わらず、その情報が受け渡されておらず、効率的に確率情報が使われていないため、復号性能が低くなるという課題があった。
【００２０】
この発明は上記のような課題を解決するためになされたもので、パンクチャされたビットの確率情報を効率よく補い、復号性能を向上させることを目的とする。
【課題を解決するための手段】
【００２１】
この発明に係る復号方法は、LDPC(Low-density Parity-check：低密度パリティ検査符号)符号化され、パンクチャされた信号を復号する復号方法において、順方向に復号処理を進めて確率情報を更新する順方向処理と、上記順方向と逆方向に復号処理を進めて確率情報を更新する逆方向処理とで復号処理の方向を切り替えるものである。
【発明の効果】
【００２２】
パンクチャされたビットの確率情報は双方向から更新されるので、パンクチャされたビットの確率情報を効率よく補い、復号性能を向上させることができる。
【発明を実施するための最良の形態】
【００２３】
実施の形態１．
図１は、LDPC符号化器およびLDPC復号器を含む本実施の形態の通信システムの構成例を示す構成図である。図１において、送信側の通信装置（送信装置と呼ぶ）は、LDPC符号化器１と変調器２を含む構成とし、受信側の通信装置（受信装置と呼ぶ）は、復調器４とＬＤＰＣ復号器５を含む構成とする。
【００２４】
ここで、LDPC符号を採用する通信システムにおける符号化処理、復号処理の流れを簡単に説明する。
【００２５】
送信装置内のLDPC符号化器１では、情報長Ｋのメッセージ（ｕ1，ｕ2，…，ｕK）を受け取り、符号語ｖを生成する。そして、送信装置内の変調器２では、LDPC符号化器１で生成した符号語ｖに対して、BPSK、QPSK、多値QAM等の所定の変調方式によりディジタル変調を行い、その変調信号ｘ＝（ｘ1，ｘ2，…，ｘN）を、通信路３を介して受信装置に送信する。
【００２６】
一方、受信装置では、復調器４が、通信路３を介して受け取った変調信号ｙ＝（ｙ1，ｙ2，…，ｙN）に対して、上記BPSK、QPSK、多値QAM等の変調方式に応じたディジタル復調を行い、さらに、受信装置内のLDPC復号器５が、復調結果に対して復号を実施し、その復号結果（元のメッセージｕ1，ｕ2，…，ｕKに対応）を出力する。
【００２７】
なお、上記送信装置と上記受信装置の双方の構成を搭載した通信装置を複数構成し、当該複数の通信装置間で、互いに信号を送受信するようにしても良い。
【００２８】
図２は、この発明の実施の形態１による復号器の構成例を示す構成図であり、上記LDPC復号器５の内部構成例を示すものである。本実施の形態１による復号器は、受信LLRを設定する受信LLR計算部６、LDPC符号の復号処理を行う復号コア部７、復号処理の処理方向を制御する復号制御部８とで構成する。
【００２９】
受信LLR計算部６は、通信路３を介して受信し、復調器４で復調された受信情報から受信LLRを計算して対応するビットに設定する。パンクチャされたビットに対しては0を設定する。復号コア部７は、上記受信LLR計算部６の設定に基づき、復号制御部８の制御信号に従って復号処理を行う。一例としてhorizontal Shuffled Min-Sum復号法に基づいて復号処理を行うように構成され、復号制御部８からの制御信号に従って、先頭行から順方向に復号処理を進めて確率情報を更新する順方向処理と、末尾行から逆方向に復号処理を進めて確率情報を更新する逆方向処理とで復号処理の方向（確率情報の更新方向）を切り替えることができるように構成されている。復号制御部８は、復号コア部７に対し、順方向処理と逆方向処理のいずれかの処理を実行させる制御信号を出力する。
【００３０】
なお、本実施の形態１では復号コア部７の復号処理として、horizontal Shuffled Min-Sum復号法に基づく復号処理を例とするが、horizontal Shuffled BP復号法(Layered BP復号法)や、Min-Sum復号法よりも性能の良いOffset BP-based復号法などと組み合わせた場合も同様であり、行ごとに確率情報を更新する更新スケジュール（処理手順）を持つ復号法はすべて該当する。
【００３１】
同様に、行方向の更新スケジュールを持つ復号法ではなく、vertical Shuffled BP復号法のように列方向に更新スケジュールを持つ場合も同様で、列方向に順方向処理と逆方向処理に切り替えれば良い。また、Group Shuffled BP復号法のように1行もしくは１列ずつの更新スケジュールではなく、複数ビットを1グループとして、グループ単位の更新スケジュールを持つ復号法や、上記の通り処理を簡易化した復号法と組み合わせた場合も同様である。さらに、本実施の形態では、処理対象行をすべての行としており、すべての行に対する順方向処理を実行した後、すべての行に対する逆方向処理を実行する処理手順を繰り返すようにしているが、順方向処理と逆方向処理の処理対象行を小さい単位に分割して、当該小さい単位に分割された行単位で順方向処理と逆方向処理を交互に行うようにしても良い。
【００３２】
次に、LDPC復号器５の動作について説明する。
送信装置で、符号語ｖに対して任意のビット数のパンクチャを行い、残ったビットを変調して送信された通信情報を受信装置で受信すると、当該受信情報は、復調器４で復調され、LDPC復号器５に入力される。
【００３３】
LDPC復号器５に受信情報が入力されると、受信LLR計算部６が上記受信情報から受信LLRを計算して対応するビットに設定する。このとき、パンクチャされたビットに対しては0を設定する。次に、復号コア部７が上記受信LLR計算部６の設定に基づいて、復号処理を行う。このとき、復号制御部８は、復号コア部７に対し、順方向処理と逆方向処理のいずれの処理を実行させるかを制御する制御信号を出力し、復号コア部７は、上記復号制御部８からの制御信号に従って、順方向処理と逆方向処理を切り替えながら復号を行う。なお、本実施の形態では、上記復号制御部８は、復号コア部７に対し、すべての行に対する順方向処理を実行した後、すべての行に対する逆方向処理を実行するように制御信号を出力する。
【００３４】
このように、復号制御部８からの制御信号に従って、順方向処理と逆方向処理を交互に切り替えながら復号を行うことにより、確率情報の更新方向が交互に切り替えられる。従って、確率情報は、順方向と逆方向の双方向から更新されることになり、当該確率情報の両側に位置する最近接のパンクチャされていないビットの確率情報が反映される。
【００３５】
以下（９）式に、本実施の形態１のアルゴリズムを記す。
なお、（９）式において、Step1の処理が受信LLR計算部６の処理に対応し、Step2、Step3の処理が復号コア部７の処理に対応する。また、ここではStep2において、繰り返し回数ｌが偶数回の時は、順方向更新とし、繰り返し回数ｌが奇数回の時は、逆方向更新とする。なお、偶数回に逆方向更新、奇数回に順方向更新としても良い。
【００３６】
また、Ｍ行Ｎ列の行列Ｈmnにおいて、以下（５）式のように定義する
【００３７】
【数５】
2007329828.tif 000007
・・・・・（５）
【００３８】
また、復号で要する各LLRに関して、以下（６）式のように定義する。
【００３９】
【数６】
2007329828.tif 000008
・・・・・（６）
【００４０】
また、受信LLRλnは、BPSK変調、AWGN通信路を仮定して以下（７）式のようになる。
【００４１】
【数７】
2007329828.tif 000009
・・・・・（７）
【００４２】
また、関数として、以下（８）式のように定義する。
【００４３】
【数８】
2007329828.tif 000010
・・・・・（８）
【００４４】
【数９】
2007329828.tif 000011
・・・・・（９）
【００４５】
図３は、逆方向更新における確率情報の更新過程を模式的に示す説明図である。行の末尾から順次更新が行われ、順方向とは逆の最近接確率情報を利用して復号することになる。例えば、図３に示すように、パンクチャにより冗長ビットのk番目、k+4番目、n-5番目のみ受信情報が存在する場合、k+3番目のビットは、復号処理の順方向処理によりk番目の確率情報が反映され、逆方向処理によりk+4番目の確率情報が反映されるため、k番目とk+4番目の確率情報が反映されることになる。従来の片方向の復号処理では、パンクチャされたビットは片側の最近接にあるパンクチャされていないビットの確率情報のみが反映されて復号されるが、復号処理の処理方向を双方向にすることで、両側に位置する最近接のパンクチャされていないビットの確率情報を反映することができる。なお、双方向に最近接とは、図３のk+1、k+2番目のビットであればkとk+4が双方向に最近接なパンクチャされていないビットである。
【００４６】
以上のように本実施の形態によれば、復号処理において、先頭行から順方向に復号処理を進める順方向処理と、末尾行から逆方向に復号処理を進める逆方向処理とで復号処理の方向（確率情報の更新方向）を交互に切り替えることにより、パンクチャされたビットの確率情報は双方向から更新されるので、片方向にのみ確率情報の更新を行うよりも確率情報を効果的に用いて復号することができ、パンクチャされたビットの確率情報を効率よく補い、復号性能を向上させることができる。これは１行もしくは１列ごとに確率情報を更新する復号法だけでなく、複数グループに分割してグループ単位で確率情報を更新する場合など、同一の繰り返し回数において、更新された確率情報を反映して復号を行う方法すべてにおいて同様である。
【００４７】
また、LDGM構造による符号のように、冗長ビットを生成するための生成行列の非０成分が階段状に配列された生成行列による符号の復号処理において、先頭行から順方向に復号処理を進める順方向処理と、末尾行から逆方向に復号処理を進める逆方向処理とで復号処理の方向（確率情報の更新方向）を交互に切り替えることにより、パンクチャされたビットの確率情報をより効率よく補うことができるので、さらに復号性能を向上させることができる。
【００４８】
なお、本実施の形態において、先頭行から順方向に復号処理を進める順方向処理と、末尾行から逆方向に復号処理を進める逆方向処理とで復号処理の方向（確率情報の更新方向）を交互に切り替える場合について説明したが、パンクチャされたビットの確率情報が双方向から更新されればよく、復号処理の方向の切り替えるタイミングは、これに限定されるものではない。例えば、順方向処理を複数回実施した後に、逆方向処理を１回実施するようにしても良い。また、すべての行に対する順方向(0からM-1)と逆方向処理(M-1から0)を交互に行うのではなく、B分割して、順方向(0からM/B-1)、逆方向(0からM/B-1)、順方向(M/Bから2M/B-1)、逆方向(M/Bから2M/B-1)、順方向(2M/Bから3M/B-1)、逆方向(2M/Bから3M/B-1)…と、分割単位ごとに交互に処理しても良い．
【００４９】
次に、実施の形態１のアルゴリズムに基づいて、復号処理を順方向処理と逆方向処理を交互に行って復号した場合（提案法）と、順方向処理のみで復号した場合（従来法）の復号性能の違いを示す。
【００５０】
図４は、提案法と従来法のシミュレーションによる復号性能を示すグラフである。
なお、本復号性能の比較において、提案法は順方向処理と逆方向処理を交互に行い、従来法は順方向処理のみを行うが、復号処理に関する処理量は同じである。また、LDPC符号はirregular LDPC符号を用い、符号化率1/2の符号化を行い、符号化率4/5となるようにパンクチャした。変調方式はBPSK、通信路はAWGN、復号繰り返し回数は20回としている。BER：ビット誤り率 Bit Error Rate、BLER：ブロック誤り率 Block Error Rateである。
図４に示すように、順方向と逆方向を交互に行うことで、BLERが向上していることがわかる。
【００５１】
このシミュレーションに用いたLDPC符号の生成方法を以下に示す。
非正則（重み分布が非一様）な検査行列を生成することとし、その構造として、ＬＤＧＭ構造であることを前提とする。
【００５２】
まず、検査行列生成処理により生成されるマスキング処理後のイレギュラーなパリティ検査行列ＨMの前提となる、ＬＤＧＭ構造のＱＣ−ＬＤＰＣ符号のパリティ検査行列ＨQCLを定義する。たとえば、Ｍ（＝ｐＪ）行×Ｎ（＝ｐＬ＋ｐＪ）列のＬＤＧＭ構造のＱＣ−ＬＤＰＣ符号のパリティ検査行列ＨQCL（＝［ｈm、n］）は、下記（１０）式のように定義することができる。
【００５３】
【数１０】
2007329828.tif 000012
・・・・・（１０）
【００５４】
なお、ｈm、nは、パリティ検査行列ＨQCLにおいて、行番号ｍ、列番号ｎの要素を表す。また、０≦ｊ≦Ｊ−１、０≦ｌ≦Ｌ−１において、Ｉ（ｐj、l）は、行番号：ｒ（０≦ｒ≦ｐ−１）、列番号：「（ｒ＋ｐj、l）ｍｏｄ  ｐ」の位置が“１”となり、その他の位置が“０”となる巡回置換行列である。たとえば、Ｉ（１）は、下記（１１）式のように表すことができる。
【００５５】
【数１１】
2007329828.tif 000013
・・・・・（１１）
【００５６】
上記パリティ検査行列ＨQCLは、左側の行列（情報ビットに対応する部分）が、上記（１１）式で示したＱＣ符号のパリティ検査行列と同一の擬似巡回行列ＨQCであり、右側の行列（パリティビット（冗長ビット）に対応する部分）が、下記（１２）式に示すＩ（０）を階段状に配置した行列ＨDである。
【００５７】
【数１２】
2007329828.tif 000014
・・・・・（１２）
【００５８】
また、上記ＬＤＧＭ構造とは、上記（１２）式に示す行列のように、パリティ検査行列の一部を下三角行列にした構造のことをいう。
さらに、上記（１２）のように定義されたＬＤＧＭ構造のＱＣ−ＬＤＰＣ符号のパリティ検査行列ＨQCLに、特定の規則性を設けている。具体的には、パリティ検査行列ＨQCLの左側の擬似巡回行列ＨQC部分において、行番号ｊ（＝０、１、２、…Ｊ−１）、列番号ｌ（＝０、１、２、…Ｌ−１）に配置されたｐ行×ｐ列の巡回置換行列Ｉ（ｐj、l）のｐj、lに、ｐ0、lを任意の整数とし、下記（１３）（１４）式となる規則性を設ける。
【００５９】
【数１３】
2007329828.tif 000015
・・・・・（１３）
【００６０】
【数１４】
2007329828.tif 000016
・・・・・（１４）
【００６１】
つづいて、パリティ検査行列ＨQCLに対してマスク処理を実施する。たとえば、上記（１２）式に示す左側の行列を、下記（１５）式に示すように、Ｊ×Ｌの擬似巡回行列ＨQCと表し、マスク行列Ｚ（＝［ｚj、l］）をＧＦ（２）上のＪ行×Ｌ列の行列とした場合、後述する所定のルールを適用すると、マスク処理後の行列ＨMQCは、下記（１６）式のように表すことができる。
【００６２】
【数１５】
2007329828.tif 000017
・・・・・（１５）
【００６３】
【数１６】
2007329828.tif 000018
・・・・・（１６）
【００６４】
なお、上記（１６）式におけるｚj、lＩ（ｐj、l）は、上記所定のルールとして下記（１７）式のように定義される。
【００６５】
【数１７】
2007329828.tif 000019
・・・・・（１７）
【００６６】
上記０行列は、ｐ行×ｐ列の０行列である。また、行列ＨMQCは、擬似巡回行列ＨQCをマスク行列Ｚの０要素によりマスクし、重み分布を非一様にした行列であり、また、行列ＨMQCの巡回置換行列の分布は、マスク行列Ｚの次数分布と同じである。マスク行列Ｚは、下記（１８）式のように定義される。
【００６７】
【数１８】
2007329828.tif 000020
・・・・・（１８）
【００６８】
以上のような手順で非正則（重み分布が非一様）な検査行列を生成し、シミュレーションに用いた。
【図面の簡単な説明】
【００６９】
【図１】この発明の実施の形態１による通信システムの構成例を示す構成図である。
【図２】この発明の実施の形態１による復号器の構成例を示す構成図である。
【図３】逆方向更新における確率情報の更新過程を模式的に示す説明図である。
【図４】復号性能を示すグラフである。
【図５】従来の確率情報の更新過程を模式的に示した説明図である。
【符号の説明】
【００７０】
１  LDPC符号化器、  ２  変調器、  ３  通信路、  ４  復調器、  ５  LDPC復号器、  ６  受信LLR計算部、  ７  復号コア部、  ８  復号制御部。
【図１】
2007329828.tif 000021
【図２】
2007329828.tif 000022
【図３】
2007329828.tif 000023
【図４】
2007329828.tif 000024
【図５】
2007329828.tif 000025