処理中

しばらくお待ちください...

設定

設定

出願の表示

1. WO2020170435 - 誤り訂正復号装置および誤り訂正復号方法

Document

明 細 書

発明の名称 誤り訂正復号装置および誤り訂正復号方法

技術分野

0001  

背景技術

0002   0003   0004   0005   0006   0007   0008   0009   0010   0011   0012   0013   0014   0015   0016  

先行技術文献

非特許文献

0017  

発明の概要

発明が解決しようとする課題

0018   0019   0020   0021   0022   0023  

課題を解決するための手段

0024   0025  

発明の効果

0026  

図面の簡単な説明

0027  

発明を実施するための形態

0028   0029   0030   0031   0032   0033   0034   0035   0036   0037   0038   0039   0040   0041   0042   0043   0044   0045   0046   0047   0048   0049   0050   0051   0052   0053   0054   0055   0056   0057   0058   0059   0060   0061   0062   0063   0064   0065   0066   0067   0068   0069   0070   0071   0072   0073   0074   0075   0076   0077   0078   0079   0080   0081   0082   0083   0084   0085   0086   0087   0088   0089   0090   0091   0092   0093   0094   0095   0096   0097   0098   0099   0100   0101   0102   0103   0104  

符号の説明

0105  

請求の範囲

1   2   3   4   5   6   7   8  

図面

1   2   3   4   5   6  

明 細 書

発明の名称 : 誤り訂正復号装置および誤り訂正復号方法

技術分野

[0001]
 本発明は、低密度パリティ検査符号の繰り返し復号処理を用いる誤り訂正復号装置および誤り訂正復号方法に関するものである。

背景技術

[0002]
 光伝送システム等の高速な伝送装置においては、高い伝送容量および長距離による伝送を実現するための有効な方法として、一般的に、誤り訂正符号が適用されている。誤り訂正符号は、有線/無線通信システム、記憶装置等で使用される技術である。誤り訂正符号は、送信側で送り出すデジタルデータに冗長なビットを付加することで、受信したデータにビット誤りが生じたとしても、誤りを訂正可能とする技術である。なお、以下の説明では、「ビット誤り」を単に「誤り」と称す。
[0003]
 誤り訂正符号・復号方式としては、ハミング符号、BCH(Bose-Chaudhuri-Hocquenghem)符号、RS(Reed-Solomon)符号、これらを組み合わせる積符号、連接符号など、様々な方式が提案されている。
[0004]
 誤り訂正符号を適用することで、伝送路で生じる誤りの検出および訂正が可能となる。ただし、誤りが訂正可能な誤りビット数には、限界がある。また、誤り訂正符号方式の誤り訂正性能、および復号方式によって、訂正可能な誤りビット数は異なる。
[0005]
 誤り訂正符号においては、フレームを構成するオーバーヘッド等を含む送信データを、情報ビットと呼ぶ。また、情報ビットに付加される冗長ビットのことを、パリティビットと呼ぶ。パリティビットは、誤り訂正の符号方式に応じて、それぞれ異なる算出方法により、情報ビットから算出される。また、情報ビットとパリティビットとを合わせたビット列を、符号語と呼ぶ。
[0006]
 ブロック符号と呼ばれる誤り訂正符号では、あらかじめ設定されたビット数の単位で、情報ビットからパリティビットを算出する。つまり、1つの符号語内の情報ビット数およびパリティビット数は、あらかじめ決められており、それぞれ、情報ビット長、パリティビット長と呼ばれる。また、符号語のビット数を符号長と呼ぶ。
[0007]
 海底ケーブル、都市間通信等に用いられるコア・メトロ系光伝送システムにおいては、伝送容量の拡大および伝送距離の拡大の需要が顕著である。この結果、1Tbps等の高速伝送に対して強力な誤り訂正符号の適用および提案が行われている。
[0008]
 近年、誤り訂正符号として、低密度パリティ検査(LDPC:Low-Density Parity-Check)符号が広く用いられてきている。LDPC符号は、非0要素の少ない、疎なパリティ検査行列で定義されるブロック符号である。
[0009]
 LDPC符号は、LLR(Log-Likelihood-Ratio)等の軟判定情報を用いて、誤りの多い伝送路でも訂正することが可能であり、かつ数十Gbpsから1Tbps等の高速伝送に対して実装可能な復号方法である。このことから、LDPC符号は、コア・メトロ系光伝送システムに多く用いられている。
[0010]
 一方で、LDPC符号は、訂正前の誤りが比較的小さいところにおいては、訂正前の誤りが大きいところでの訂正結果ほどの訂正の効果が得られない現象が発生しやすい。この現象は、エラーフロアと呼ばれる。
[0011]
 この現象に対しては、LDPC符号を内符号とし、前述のハミング符号、BCH符号、RS符号、これらを組み合わせる積符号、連接符号等を外符号とし、内符号と外符号とを組み合わせる構成が用いられている(例えば、非特許文献1参照)。
[0012]
 非特許文献1では、訂正能力が強力な符号長の長いLDPC符号に、ブロック符号であるBCH符号を連接した符号方式が示されている。
[0013]
 LDPC符号とブロック符号との間には、インタリーブが入れられる構成をとることが多い。このような構成をとることで、複数のLDPC符号のいずれかで残留した誤りを、複数の外符号のブロック符号に分散して、LDPC符号で残留した誤りを訂正することができる。
[0014]
 LDPC符号の復号処理は、軟判定情報を使って行演算と列演算の繰り返し処理を行うことで、強力なエラー耐性を実現している。そのため、誤り訂正回路の復号回路は、外符号に用いられるようなブロック符号に比べ、回路規模が大きくなる。さらに、誤り訂正回路の復号回路は、高速クロックを用いて繰り返し演算処理を行う必要があり、消費電力が大きくなる。
[0015]
 これに対し、繰り返し処理の列演算で得られる復号結果に対して、パリティ検査行列に基づくシンドロームチェックを行うことで、全0を検出したら復号完了として復号処理を止める復号方法がある(例えば、非特許文献2参照)。
[0016]
 また、LDPC符号の復号において、連続する3回分の繰り返しでのシンドロームの非0数判定でもって、訂正不可においても復号処理を止める復号方法がある(例えば、非特許文献3参照)。

先行技術文献

非特許文献

[0017]
非特許文献1 : K.Sugihara,Y.Miyata,T.Sugihara,K.Kubo,H.Yoshida,W.Matsumoto, and T.Mizuochi,“A spatially-coupled type LDPC code with an NCG of 12dB for optical transmission beyond 100Gb/s”,Proc.OFC/NFOEC2013,OM2B.4(2013).
非特許文献2 : Hisashi Futaki and Tomoaki Ohtsuki,“Low-Density Parity-Check(LDPC) Coded OFDM Systems”,in VTC Fall 2001,No.01CH37211 (2001).
非特許文献3 : Tinoosh Mohsenin,Houshmand Shirani-mehr, and Bevan Baas,“Low power LDPC decoder with efficient stopping scheme for undecodable blocks”,ISCAS2011(2011).

発明の概要

発明が解決しようとする課題

[0018]
 しかしながら、従来技術には、以下のような課題がある。
 LDPC符号では、非特許文献1に示されているように、BCH符号等のブロック符号の連接符号が用いられることが多い。しかしながら、非特許文献1には、LDPC符号の復号処理を途中で止める技術までは示されていない。
[0019]
 一方、非特許文献2および非特許文献3においては、LDPC符号の復号処理において、復号処理を途中で止める技術が示されている。しかしながら、非特許文献2および非特許文献3においては、それに続くブロック符号での復号処理には言及されていない。
[0020]
 また、非特許文献2では、復号処理を止める条件として、訂正後の符号系列が、LDPC符号系列であることを示すパリティチェックの非0数が0になるまで、あらかじめ設定された最大繰り返し数まで繰り返し復号を行う。このため、消費電力が大きくなる最大繰り返しを行っても、後段のブロック符号でも訂正できないような誤りがある場合がある。
[0021]
 また、消費電力が比較的小さい後段のブロック符号で訂正できるような残留誤りを訂正するために、繰り返し復号処理を行う場合がある。さらに、後段のブロック符号の復号に影響しないLDPC符号系列のパリティビット部分の誤りを訂正するために、繰り返し復号処理を行う場合がある。
[0022]
 また、非特許文献3では、消費電力が大きくなる最大繰り返しを行っても後段のブロック符号でも訂正できないような誤りがある場合での復号処理を止める条件として、少なくとも3回繰り返し分の条件がそろわなければ、復号処理を止めることができない。従って、復号処理を止めるまでの処理時間がかかることとなる。
[0023]
 本発明は、かかる課題を解決するためになされたものであり、復号処理における消費電力を抑制する誤り訂正復号装置および誤り訂正復号方法を得ることを目的としている。

課題を解決するための手段

[0024]
 本発明に係る誤り訂正復号装置は、LDPC符号に対して繰り返し復号処理を実行し、繰り返し数ごとに仮の硬判定復号結果を順次出力するとともに、仮の硬判定復号結果に対してパリティチェックを実行して得られる非0数を順次出力する繰り返し復号回路と、非0数と比較するために繰り返し数ごとに設定されたスレショルドと、繰り返し復号処理を実行する最大繰り返し数とを、繰り返し復号処理を実行するためのパラメータとして生成するパラメータ生成回路と、繰り返し復号回路の繰り返し動作を制御する第1の制御回路とを備え、第1の制御回路は、パラメータ生成回路で生成されたスレショルドおよび最大繰り返し数をパラメータとして受信し、繰り返し復号回路で実行された繰り返し復号処理の繰り返し数が、最大繰り返し数に達した場合には、繰り返し復号回路による繰り返し動作を停止させ、繰り返し数が最大繰り返し数に達していない場合には、繰り返し復号回路から順次出力される非0数と、繰り返し数ごとに設定されたスレショルドとを比較し、比較結果があらかじめ設定された停止条件を満たす場合には、繰り返し復号回路による繰り返し動作を停止させるものである。
[0025]
 また、本発明に係る誤り訂正復号方法は、本発明に係る誤り訂正復号装置において実行される誤り訂正復号方法であって、LDPC符号に対して繰り返し復号処理を実行し、繰り返し数ごとに仮の硬判定復号結果を順次出力するとともに、仮の硬判定復号結果に対してパリティチェックを実行して得られる非0数を順次出力する繰り返し復号ステップと、非0数と比較するために繰り返し数ごとに設定されたスレショルドと、繰り返し復号処理を実行する最大繰り返し数とを、繰り返し復号処理を実行するためのパラメータとして生成するパラメータ生成ステップと、パラメータ生成ステップで生成されたスレショルドおよび最大繰り返し数をパラメータとして受信するパラメータ受信ステップと、繰り返し復号ステップで実行された繰り返し復号処理の繰り返し数が、最大繰り返し数に達した場合には、繰り返し復号ステップによる繰り返し動作を停止させる正常停止ステップと、繰り返し数が最大繰り返し数に達していない場合には、繰り返し復号ステップにより順次出力される非0数と、繰り返し数ごとに設定されたスレショルドとを比較し、比較結果があらかじめ設定された停止条件を満たす場合には、繰り返し復号ステップによる繰り返し動作を停止させる途中停止ステップとを有するものである。

発明の効果

[0026]
 本発明によれば、復号処理における消費電力を抑制する誤り訂正復号装置および誤り訂正復号方法を得ることができる。

図面の簡単な説明

[0027]
[図1] 本発明の実施の形態1に係る誤り訂正復号装置の構成例を示すブロック図である。
[図2] 本発明の実施の形態1に係る図1に示した誤り訂正復号装置によって実行される一連処理を示すフローチャートである。
[図3] 本発明の実施の形態2に係る誤り訂正復号装置の構成例を示すブロック図である。
[図4] 本発明の実施の形態2に係る図3に示した誤り訂正復号装置によって実行される一連処理を示すフローチャートである。
[図5] 本発明の実施の形態1、2に係る誤り訂正復号装置の各機能を専用のハードウェアである処理回路で実現する場合を示した構成図である。
[図6] 本発明の実施の形態1、2に係る誤り訂正復号装置の各機能をプロセッサおよびメモリを備えた処理回路により実現する場合を示した構成図である。

発明を実施するための形態

[0028]
 以下、本発明の誤り訂正復号装置および誤り訂正復号方法の好適な実施の形態につき、図面を用いて説明する。
[0029]
 実施の形態1.
 図1は、本発明の実施の形態1に係る誤り訂正復号装置の構成例を示すブロック図である。図1では、内符号をLDPC符号とし、外符号をBCH符号とする連接符号の誤り訂正復号装置の構成を例示している。図1に示した誤り訂正復号装置は、内符号繰り返し復号回路1、内符号繰り返し制御回路2、パラメータ生成回路3、および外符号復号回路4を備えて構成されている。
[0030]
 内符号繰り返し復号回路1は、LDPC符号に対して繰り返し復号処理を行う繰り返し復号回路である。これに対し、内符号繰り返し制御回路2は、内符号繰り返し復号回路1の繰り返し動作を制御する第1の制御回路である。このとき、内符号繰り返し復号回路1からは、繰り返し回ごとに仮決定される復号結果に基づくパリティチェックの非0数Sが順次出力され、内符号繰り返し制御回路2に渡される。
[0031]
 また、内符号繰り返し制御回路2に対しては、繰り返し制御を行うためのパラメータを生成するパラメータ生成回路3が接続されている。
[0032]
 また、内符号繰り返し復号回路1に対しては、内符号繰り返し復号回路1で復号した復号結果に対して、残留する誤りを訂正する外符号復号回路4が、後段に接続されている。外符号復号回路4は、残留する誤りを訂正して出力するとともに、訂正ビット数あるいは訂正不可状態を含む情報を訂正情報として出力する。外符号復号回路4からの訂正情報に関する出力は、パラメータ生成回路3にもフィードバックされる。
[0033]
 図2は、本発明の実施の形態1に係る図1に示した誤り訂正復号装置によって実行される一連処理を示すフローチャートである。より具体的には、図2には、図1の構成における内符号繰り返し復号回路1、内符号繰り返し制御回路2、パラメータ生成回路3、および外符号復号回路4の各構成要素により実行される一連処理が示されている。
[0034]
 図2に示したフローチャートは、内符号であるLDPC符号系列が内符号繰り返し復号回路1によって受信されることでスタートする。内符号繰り返し復号回路1がLDPC符号系列のLLR情報を全て受けた後、ステップS201において、誤り訂正復号装置は、初期設定を実行する。
[0035]
 具体的には、内符号繰り返し復号回路1では、各ノードの初期化が行われる。また、内符号繰り返し制御回路2では、繰り返し数iの0設定が行われる。また、パラメータ生成回路3は、最大繰り返し数、および繰り返し回ごとで繰り返し処理を止める判断に用いられるスレショルドを、繰り返し制御を行うためのパラメータとしてあらかじめ生成する。
[0036]
 具体的には、パラメータ生成回路3は、入力されるLDPC符号長、パリティビット長、符号系列に期待される性能特性、スループット、および伝送状態予測に基づいて、最大繰り返し数およびスレショルドを生成する。
[0037]
 また、パラメータ生成回路3は、後述する外符号復号回路4による訂正情報を受けて、最大繰り返し数およびスレショルドを、繰り返し復号処理が順次実行されるごとに更新することができる。
[0038]
 パラメータ生成回路3は、初期設定した最大繰り返し数およびスレショルドに関するパラメータを、内符号繰り返し制御回路2に送信する。なお、最大繰り返し数およびスレショルドに関するパラメータの初期設定は、LDPC符号系列の受信前に実行されるようにしても良い。
[0039]
 繰り返し処理を止める判断に用いられるスレショルドに関するパラメータは、訂正不可を判定するために用いられるスレショルドパラメータF[i]と、後段のブロック符号の復号処理で訂正可と判断するために用いられるスレショルドパラメータE[i]とがある。
[0040]
 ここで、スレショルドパラメータF[i]は、第1スレショルドに相当し、スレショルドパラメータE[i]は、第2スレショルドに相当する。スレショルドパラメータF[i]およびスレショルドパラメータE[i]は、両方あっても良いし、片方であっても良い。また、制御する条件から見て、両パラメータの大小関係は、F[i]>E[i]となる。
[0041]
 ステップS201において初期条件が設定された後、ステップS202において、内符号繰り返し復号回路1は、LDPC符号の復号処理として、列(VARIABLE NODE)演算を行う。このとき、仮の硬判定復号結果も得られる。繰り返し数i=0では、仮の硬判定復号結果は、受信したLDPC符号系列の硬判定結果そのものである。
[0042]
 このステップS202以降、後述するステップS209までの処理が、繰り返し実行される。ステップS203において、内符号繰り返し制御回路2は、繰り返し数iが設定された最大繰り返し数と一致したと判定した場合には、内符号繰り返し復号回路1による繰り返し処理を終了させ、ステップS210以降の処理に進む。
[0043]
 一方、内符号繰り返し制御回路2は、繰り返し数iが設定された最大繰り返し数より少ないと判定した場合には、ステップS204の処理に進む。ステップS204において、内符号繰り返し復号回路1は、仮の硬判定復号結果に対してパリティチェックを計算する。一般的に、LDPC符号系列は、パリティチェックが全て0になるようになっている。
[0044]
 次に、ステップS205において、内符号繰り返し復号回路1は、ステップS204で得られたパリティチェックに関して、非0数Sをカウントする。LDPC符号系列の各ビットは、パリティチェックの各ビットに対して疎に分布している。例えば、DVB-S2で用いられているLDPC符号では、情報ビットの大部分は、1ビットがパリティチェックの3ビットにしか影響せず、また、冗長ビットについてはパリティチェックの2ビットまたは1ビットにしか影響しない。
[0045]
 すなわち、誤りが多い場合には、パリティチェックでの非0数Sが大きく、誤りが少ない場合には、非0数Sが小さくなる。DVB-S2のように冗長ビットの重みが2であれば、冗長ビットが1ビット誤っていた場合に、非0数は2となる。ただし、多数のビット誤りが残っている場合も、その相関で非0数が小さくなる場合がある。
[0046]
 次に、ステップS206において、内符号繰り返し制御回路2は、内符号繰り返し復号回路1から非0数Sを受信し、受信した非0数Sと、繰り返し数iにおけるスレショルドパラメータE[i]とを比較する。
[0047]
 ここで、S<E[i]であれば、内符号繰り返し制御回路2は、誤りが冗長ビットに残っているが、残留していても後段のブロック符号で訂正可能と判断し、繰り返し復号処理を止め、ステップS210以降の処理に移行する。もちろん、非0数が0であれば、LDPC符号系列が符号化規則に沿った系列であり、訂正完了と判断できるため、この場合も、内符号繰り返し制御回路2は、繰り返し復号処理を止める。
[0048]
 なお、内符号繰り返し制御回路2は、繰り返し数iが最大繰り返し数でなく、かつ、非0数が0でない条件で、ステップS206において繰り返し処理を止めると判断した場合に、もう一回繰り返し処理をしてから繰り返し処理を止めてもよい。
[0049]
 また、繰り返し数iが比較的少ない場合には、複数のビット誤りの相関で非0数が小さくなる場合がある。従って、繰り返し処理を止める条件は、厳しくした方がよい。例えば、内符号繰り返し制御回路2は、繰り返し数iがあらかじめ設定された繰り返し数以下では非0数Sが0のとき(すなわち、E[i]=1と設定したとき)のみ、繰り返し処理を止めるようにすることができる。
[0050]
 また、内符号繰り返し制御回路2は、繰り返し数iがあらかじめ設定された繰り返し数よりも大きい場合については、パリティチェックでの非0数Sが固定値の非0数より以下(すなわち、E[i]>1の固定値と設定)のとき、繰り返し処理を止めるようにしても良い。
[0051]
 内符号繰り返し制御回路2は、ステップS206においてNoと判断し、ステップS207の処理に進んだ場合には、非0数Sと、繰り返し数iにおけるスレショルドパラメータF[i]とを比較する。
[0052]
 ここで、S>F[i]であれば、内符号繰り返し制御回路2は、最大繰り返し数まで繰り返し処理を行っても誤りが残留し、かつ、後段のブロック符号の復号においても訂正不可で、誤りが残留する訂正不可状態であると判断し、繰り返し復号処理を止め、ステップS210以降の処理に移行する。すなわち、内符号繰り返し制御回路2は、S>F[i]として規定される停止条件を満たす場合には、繰り返し復号処理を止め、ステップS210以降の処理に移行する。
[0053]
 なお、内符号繰り返し制御回路2は、繰り返し数iが最大繰り返し数までは達しておらず、ステップS207において繰り返し処理を止める判断となった場合には、もう一回繰り返し処理をしてから、繰り返し処理を止めてもよい。
[0054]
 上述したステップS203、ステップS206、およびステップS207のいずれにおいても、繰り返し処理を止める条件に合致しなかった場合には、内符号繰り返し制御回路2は、次の繰り返し処理の準備に入るために、ステップS208以降の処理に進む。すなわち、内符号繰り返し制御回路2は、ステップS208において、繰り返し数iを一つ増やし、ステップS209において、行(CHECK NODE)演算を行い、その後、再び列(VARIABLE NODE)演算を行うために、ステップS202の処理に戻る。
[0055]
 ステップS203、ステップS206、およびステップS207のいずれかにおいて、繰り返し処理を止めるための停止条件に合致することでステップS210に進んだ場合には、内符号繰り返し復号回路1は、仮の硬判定系列を復号結果として設定し、設定した復号結果を出力する。
[0056]
 ここで、ステップS203でYesと判定された場合は、途中停止することなしに最大繰り返し数まで繰り返し復号処理が実行された後に正常停止した場合に相当する。また、ステップ206およびステップS207でYesと判定された場合は、最大繰り返し数まで繰り返し復号処理を実行せずに途中停止した場合に相当する。
[0057]
 次に、ステップS211において、外符号復号回路4は、内符号繰り返し復号回路1から復号結果として受信した仮の硬判定系列を用いて、外符号である次段のブロック(BCH)符号の復号処理を実行する。この結果、外符号復号回路4での復号動作によって残留誤りが訂正され、誤り訂正の一連処理が終了する。
[0058]
 ここで、ステップS206における比較結果、あるいは、ステップS207における比較結果により、繰り返し復号処理を止めた場合には、その際の状況が、LDPC符号系列を受信した伝送路の状態を推定する一助となる。
[0059]
 よって、内符号繰り返し制御回路2は、繰り返し復号処理を止めた際の繰り返し数等の情報を、繰り返し復号停止情報として、パラメータ生成回路3にフィードバックする。そして、パラメータ生成回路3は、フィードバックされた繰り返し復号停止情報に基づいて、次のLDPC符号系列の誤り状態を推定し、最大繰り返し数を抑制する更新処理、繰り返し処理を止める判断に用いられるスレショルドの更新処理等を行うことができる。
[0060]
 この結果、訂正ができないような状況においてフィードバックされる繰り返し復号停止情報に基づいて、繰り返し回ごとにパラメータの更新処理を行うことで、誤り訂正復号装置による消費電力を抑制することができる。
[0061]
 また、パラメータ生成回路3は、外符号復号回路4による外符号復号処理の実行結果として生成される訂正ビット数および訂正不可状態を、フィードバックされた訂正情報として取得することができる。従って、パラメータ生成回路3は、外符号復号回路4からフィードバックされた訂正情報に基づいて、次に入力されるLDPC符号系列の誤り状態を推定し、最大繰り返し数を抑制する更新処理、繰り返し処理を止める判断に用いられるスレショルドの更新処理等を行うことができる。
[0062]
 この結果、訂正ができないような状況においてフィードバックされる訂正情報に基づいて、繰り返し回ごとにパラメータの更新処理を行うことで、誤り訂正復号装置による消費電力を抑制することができる。
[0063]
 なお、図2に示した各ステップのうち、ステップS202~ステップS209は繰り返し復号ステップに相当する。また、繰り返し復号処理の中で実行されるステップS201はパラメータ生成ステップに相当し、ステップS203は正常停止ステップに相当し、ステップS206およびステップS207はパラメータ受信ステップおよび途中停止ステップの両方に相当する。
[0064]
 以上のように、実施の形態1に係る誤り訂正復号装置は、繰り返し回ごとに設定されるスレショルドと、パリティチェックによる非0数とを、繰り返し数が増加する毎に比較し、比較結果に基づいて繰り返し処理を止めるか否かを判断できる構成を備えている。この結果、実施の形態1に係る誤り訂正復号装置は、以下のような効果を実現できる。
[0065]
 (効果1)LDPC符号の復号において、繰り返し回ごとの復号結果に対するシンドロームチェックにおいて、訂正完了と判断して繰り返し復号を止める処理と同時に、最大繰り返し復号を行っても訂正不可と早々に判断して、繰り返し復号を止めることができる。
[0066]
 (効果2)復調、同期補足等を行う前段の回路にも、受信状態が異常であることをフィードバック情報として知らせることができる。この結果、異常な受信状態による後続のLDPC符号系列での無駄な繰り返し復号処理を抑え込むよう、最大繰り返し数を抑制することができる。
[0067]
 (効果3)あらかじめ設定された数での繰り返し復号処理後において、あらかじめ設定されたパリティチェック状態において残留する誤りが、LDPCの復号部分、あるいは後段の復号処理で訂正可能な範囲の誤りと判断できた場合には、早めに繰り返し復号処理を止めることができる。
[0068]
 以上のような構成および効果により、実施の形態1に係る誤り訂正復号装置は、消費電力が比較的小さい外符号復号回路の訂正能力を生かして、LDPC符号の繰り返し復号処理回数を抑え、復号処理における消費電力を抑制することができる。
[0069]
 実施の形態2.
 先の実施の形態1では、LDPC符号系列の繰り返し復号処理を行う際の繰り返し数を制御することにより、消費電力の抑制を図る場合を中心に説明した。これに対して、本実施の形態2では、その後段のブロック符号の復号処理においても、訂正できないような誤りが発生した場合に、復号処理を途中で中止し、消費電力を抑える場合について説明する。
[0070]
 図3は、本発明の実施の形態2に係る誤り訂正復号装置の構成例を示すブロック図である。本実施の形態2に係る誤り訂正復号装置は、内符号繰り返し復号回路1、内符号繰り返し制御回路2、パラメータ生成回路3、外符号復号回路4、および外符号復号処理停止制御回路5を備えて構成されている。
[0071]
 先の実施の形態1における図1の構成と比較すると、本実施の形態2における図3の構成は、第2の制御回路である外符号復号処理停止制御回路5をさらに備えている点が異なっている。そこで、この相違点を中心に以下に説明する。
[0072]
 外符号復号処理停止制御回路5は、内符号繰り返し制御回路2から異常検出フラグを受信する機能を有する。内符号繰り返し制御回路2は、訂正不可状態判定において、あらかじめ設定された異常判定繰り返し数Kに基づいて、異常検出フラグを設定することができる。さらに、外符号復号処理停止制御回路5は、受信した異常検出フラグに基づいて、外符号復号回路4に対して復号処理停止信号を出すことで、外符号復号回路4による復号動作を途中で中止させる機能も有する。
[0073]
 図4は、本発明の実施の形態2に係る図3に示した誤り訂正復号装置によって実行される一連処理を示すフローチャートである。より具体的には、図4には、図3の構成における誤り訂正復号装置に含まれている、内符号繰り返し復号回路1、内符号繰り返し制御回路2、パラメータ生成回路3、外符号復号回路4、および外符号復号処理停止制御回路5の各構成要素により実行される一連処理が示されている。
[0074]
 LDPC符号系列の復号処理に関しては、先の実施の形態1における図2で示した処理と同じであり、同様のステップ番号を用いて、ステップS201~ステップS209として図4中に示されている。図4におけるステップS400~ステップS407が、図2のフローチャートに対して新たに追加された処理である。そこで、これらのステップS400~ステップS407について、以下に詳細に説明する。
[0075]
 内符号繰り返し制御回路2は、ステップS207において、繰り返し数iにおけるスレショルドパラメータF[i]と非0数Sとを比較し、S>F[i]であれば、ステップS400の処理に進む。ステップS207でYesと判断される場合は、最大繰り返し数まで内符号繰り返し復号処理を行っても誤りが残留し、かつ後段のブロック符号の復号においても、訂正不可で誤りが残留するおそれがある場合に相当する。
[0076]
 そこで、内符号繰り返し制御回路2は、ステップS400において、繰り返し復号処理を止めた後、止めた繰り返し数iが、パラメータ生成回路3によりあらかじめ設定された異常判定繰り返し数Kよりも小さいか否かを判断する。そして、内符号繰り返し制御回路2は、i<Kである場合には、LDPC符号系列は、同期が外れたデータが入力されている等、異常状態であると判定し、異常検出フラグAを1にセットする。
[0077]
 さらに、内符号繰り返し制御回路2は、内符号繰り返し復号回路1から仮の硬判定系列がLDPC符号の復号結果として、後段のブロック符号の復号処理を行う外符号復号回路4へ渡されるタイミングに合わせて、異常検出フラグAを外符号復号処理停止制御回路5に渡す。
[0078]
 次に、ステップS210において、内符号繰り返し復号回路1は、仮の硬判定系列を復号結果として設定し、設定した復号結果を出力する。次に、ステップS401において、外符号復号回路4は、LDPC符号の復号結果からBCH符号系列部分を選択し、まず始めにシンドローム演算を行う。
[0079]
 ここで、外符号復号回路4は、BCH符号系列が複数のLDPC符号系列に含まれている場合には、その全てを入力する。また、この場合には、外符号復号処理停止制御回路5は、複数のLDPC符号系列に1対1対応の異常検出フラグAを内符号繰り返し制御回路2から受け取る。
[0080]
 外符号復号回路4では、通常、BCH符号系列部分に対し、ステップS401におけるシンドローム演算、ステップS402におけるシンドローム判定、ステップS406におけるユークリッド演算法等を用いた誤り位置推定処理、およびステップS407におけるチェンサーチ等を用いた誤り位置特定および訂正処理が行われ、一連の誤り訂正復号処理を終了させていた。
[0081]
 これら一連の流れは、誤り訂正不可であっても実行される処理である。特に、訂正能力の大きいBCH符号等、ブロック符号の処理においては、ステップS406による誤り位置推定処理と、ステップS407による誤り位置特定および訂正処理の処理量とが大きい。
[0082]
 一方、BCH符号等のブロック符号では、誤り訂正可能な誤り数の範囲は明確であり、それ以上の誤り数が残留していれば、訂正不可と検出されるか、または誤訂正となる。そこで、本実施の形態2では、外符号復号処理停止制御回路5が、内符号繰り返し制御回路2から受け取った異常検出フラグAを、事前の誤り状態推定として用いている。
[0083]
 そして、後述するように、本実施の形態2では、異常検出フラグAを参照し、シンドローム演算を演算開始前あるいは演算途中で止めるか否かを判断することで、消費電力のさらなる削減を図っている。
[0084]
 具体的には、ステップS401において、BCH符号系列が複数のLDPC符号系列に含まれている場合には、外符号復号回路4は、BCH符号系列のシンドローム演算を行う。それと同時に、外符号復号処理停止制御回路5は、BCH符号系列が含まれている複数のLDPC符号系列の異常検出フラグAがA=1となっている数をカウントする。
[0085]
 次に、ステップS402において、外符号復号回路4は、BCH符号化系列のシンドロームが得られたところで、まず、シンドロームが全0、すなわち、誤り無しであるか否かを判定する。シンドロームが全0であり、誤り無しと判定された場合には、ステップS403に進み、シンドロームが非0であり、誤り有りと判定された場合には、ステップS404に進む。
[0086]
 ステップS403に進んだ場合には、外符号復号回路4は、内符号繰り返し復号回路1により誤り訂正が完了したと判断して、BCH符号入力系列を復号結果とし、復号処理を終了する。
[0087]
 一方、ステップS404に進んだ場合には、外符号復号回路4は、シンドロームが非0であることから、誤りが残留していると判断した上で、異常検出フラグAがA=1である数が、あらかじめ設定された判定数Lよりも大きいか否かを判定する。異常検出フラグA=1のカウント数が、判定数Lより大きければ、ステップS405に進み、異常検出フラグA=1のカウント数が、判定数L以下であれば、ステップS406に進む。
[0088]
 ステップS405に進んだ場合には、外符号復号回路4は、外符号であるBCH符号での復号は訂正不可能であると判定し、復号処理を終了する。すなわち、訂正不可能であると判定された場合には、ステップS406による誤り位置推定処理と、ステップS407による誤り位置特定及び訂正処理とが実行されずに、復号処理を終了させることができる。
[0089]
 一方、ステップS406に進んだ場合には、ステップS406におけるユークリッド演算法等を用いた誤り位置推定処理と、ステップS407におけるチェンサーチ等を用いた誤り位置特定および訂正処理とが行われた後、一連の誤り訂正復号処理が終了する。
[0090]
 以上のように、実施の形態2に係る誤り訂正復号装置は、前段の内符号繰り返し制御回路において異常検出フラグを用いた事前誤り状況推定を行い、推定結果に基づいて、後段の外符号復号処理停止制御回路において外符号復号処理を実行すべきか否かを判断する構成を備えている。この結果、実施の形態2に係る誤り訂正復号装置は、先の実施の形態1の効果に加え、外符号復号処理では訂正できないような誤りに対して、無駄に復号処理を行う必要がなく、消費電力が大きくなる訂正不可状態での消費電力を節約することができる。
[0091]
 なお、本実施の形態2では、BCH符号系列が複数のLDPC符号系列に含まれ、そのシンドローム演算を行ってから、外符号復号処理を実行すべきか否かの判定を行う場合について説明した。しかしながら、本実施の形態2に係る誤り訂正復号装置は、このような処理に限定されるものではない。
[0092]
 本実施の形態2に係る誤り訂正復号装置は、シンドローム演算開始前、あるいはその途中において、異常検出フラグAがA=1である数をカウントし、その数を判定数Lと比較し、外符号復号処理を実行すべきか否かの判定を行うことも可能である。このような処理を採用することで、訂正不可と判定された場合には、シンドローム演算を演算開始前あるいは演算途中で止めることができる。
[0093]
 また、外符号であるBCH符号系列と内符号であるLDPC符号系列が1対1の場合には、外符号復号処理停止制御回路5は、以下のような制御処理を実行することができる。すなわち、外符号復号処理停止制御回路5は、BCH符号系列のシンドローム演算スタートと同時、あるいはスタート前に異常検出フラグAを内符号繰り返し制御回路2から受け取り、外符号復号処理を実行すべきか否かの判定を行う。
[0094]
 そして、外符号復号処理停止制御回路5は、外符号復号処理を実行しないと判定した場合には、シンドローム演算処理を止め、外符号であるBCH符号での復号は訂正不可能であると判定し、復号処理を終了させることができる。
[0095]
 なお、上述した本実施の形態2では、内復号繰り返し処理での異常終了判定を行うにあたり、繰り返し復号処理を終了した際の繰り返し数が異常判定繰り返し数Kより小さい場合に異常検出フラグAをA=1として設定し、外符号復号処理の停止制御を行う場合について説明した。しかしながら、本実施の形態2に係る誤り訂正復号装置は、このような処理に限定されるものではない。
[0096]
 異常終了時の内符号の繰り返し数等の詳細情報を、内符号繰り返し制御回路2から外符号復号処理停止制御回路5に渡す処理を行っても良い。この場合には、外符号復号処理停止制御回路5は、内符号の繰り返し数に基づいて、外符号復号処理の停止処理制御、停止条件の制御、シンドローム計算中あるいはシンドロームチェック後に停止を判定する制御等、より細かい制御を行うことも可能である。
[0097]
 また、本実施の形態2では、外符号をBCH符号として説明したが、リードソロモン符号等、他のブロック符号を外符号として用いても、同様の制御処理が可能であることは言うまでもない。
[0098]
 なお、上述した実施の形態1、2に係る誤り訂正復号装置における各機能は、処理回路によって実現される。各機能を実現する処理回路は、専用のハードウェアであってもよく、メモリに格納されるプログラムを実行するプロセッサであってもよい。図5は、本発明の実施の形態1、2に係る誤り訂正復号装置の各機能を専用のハードウェアである処理回路1000で実現する場合を示した構成図である。また、図6は、本発明の実施の形態1、2に係る誤り訂正復号装置の各機能をプロセッサ2001およびメモリ2002を備えた処理回路2000により実現する場合を示した構成図である。
[0099]
 処理回路が専用のハードウェアである場合、処理回路1000は、例えば、単一回路、複合回路、プログラム化したプロセッサ、並列プログラム化したプロセッサ、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)、またはこれらを組み合わせたものが該当する。図1に示した内符号繰り返し復号回路1、内符号繰り返し制御回路2、パラメータ生成回路3、および外符号復号回路4における各部の機能それぞれ、あるいは、図3に示した内符号繰り返し復号回路1、内符号繰り返し制御回路2、パラメータ生成回路3、外符号復号回路4、および外符号復号処理停止制御回路5における各部の機能それぞれを、個別の処理回路1000で実現してもよいし、各部の機能をまとめて処理回路1000で実現してもよい。
[0100]
 一方、処理回路がプロセッサ2001の場合、内符号繰り返し復号回路1、内符号繰り返し制御回路2、パラメータ生成回路3、外符号復号回路4、および外符号復号処理停止制御回路5における各部の機能は、ソフトウェア、ファームウェア、またはソフトウェアとファームウェアとの組み合わせにより実現される。ソフトウェアおよびファームウェアは、プログラムとして記述され、メモリ2002に格納される。
[0101]
 プロセッサ2001は、メモリ2002に記憶されたプログラムを読み出して実行することにより、各部の機能を実現する。すなわち、誤り訂正復号装置は、処理回路2000により実行されるときに、一例として示した図2における各ステップ、あるいは図4における各ステップが結果的に実行されることになるプログラムを格納するためのメモリ2002を備える。
[0102]
 これらのプログラムは、上述した各部の手順あるいは方法をコンピュータに実行させるものであるともいえる。ここで、メモリ2002は、例えば、RAM(Random Access Memory)、ROM(Read Only Memory)、フラッシュメモリ、EPROM(Erasable Programmable Read Only Memory)、EEPROM(Electrically Erasable and Programmable Read Only Memory)等の、不揮発性または揮発性の半導体メモリが該当する。また、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、DVD等も、メモリ2002に該当する。
[0103]
 なお、上述した各部の機能について、一部を専用のハードウェアで実現し、一部をソフトウェアまたはファームウェアで実現するようにしてもよい。
[0104]
 このように、処理回路は、ハードウェア、ソフトウェア、ファームウェア、またはこれらの組み合わせによって、上述した各部の機能を実現することができる。

符号の説明

[0105]
 1 内符号繰り返し復号回路(繰り返し復号回路)、2 内符号繰り返し制御回路(第1の制御回路)、3 パラメータ生成回路、4 外符号復号回路、5 外符号復号処理停止制御回路(第2の制御回路)。

請求の範囲

[請求項1]
 LDPC符号に対して繰り返し復号処理を実行し、繰り返し数ごとに仮の硬判定復号結果を順次出力するとともに、前記仮の硬判定復号結果に対してパリティチェックを実行して得られる非0数を順次出力する繰り返し復号回路と、
 前記非0数と比較するために前記繰り返し数ごとに設定されたスレショルドと、前記繰り返し復号処理を実行する最大繰り返し数とを、前記繰り返し復号処理を実行するためのパラメータとして生成するパラメータ生成回路と、
 前記繰り返し復号回路の繰り返し動作を制御する第1の制御回路と
 を備え、
 前記第1の制御回路は、
  前記パラメータ生成回路で生成された前記スレショルドおよび前記最大繰り返し数を前記パラメータとして受信し、
  前記繰り返し復号回路で実行された前記繰り返し復号処理の繰り返し数が、前記最大繰り返し数に達した場合には、前記繰り返し復号回路による前記繰り返し動作を停止させ、
  前記繰り返し数が前記最大繰り返し数に達していない場合には、前記繰り返し復号回路から順次出力される前記非0数と、前記繰り返し数ごとに設定された前記スレショルドとを比較し、比較結果があらかじめ設定された停止条件を満たす場合には、前記繰り返し復号回路による前記繰り返し動作を停止させる
 誤り訂正復号装置。
[請求項2]
 前記パラメータ生成回路は、前記LDPC符号の符号長およびパリティビット長に応じて前記スレショルドを生成する
 請求項1に記載の誤り訂正復号装置。
[請求項3]
 前記パラメータ生成回路は、訂正不可を判定するために用いられる第1スレショルドを前記スレショルドとして前記繰り返し数ごとに生成し、
 前記第1の制御回路は、前記繰り返し復号回路から順次出力される前記非0数と前記繰り返し数ごとに設定された前記第1スレショルドとを比較し、前記非0数が前記第1スレショルドよりも大きい場合には、前記繰り返し復号回路による前記繰り返し動作を停止させる
 請求項1または2に記載の誤り訂正復号装置。
[請求項4]
 前記第1の制御回路は、前記繰り返し数が前記最大繰り返し数に達していない状態で前記繰り返し復号回路による前記繰り返し動作を停止させた場合には、前記繰り返し動作を停止させた際の繰り返し数を含む情報を繰り返し復号停止情報として前記パラメータ生成回路にフィードバックし、
 前記パラメータ生成回路は、前記繰り返し復号停止情報に基づいて、前記繰り返し復号回路が次に受信するLDPC符号系列に対して前記繰り返し復号処理を実行する際に用いる前記パラメータを更新する
 請求項1から3のいずれか1項に記載の誤り訂正復号装置。
[請求項5]
 前記繰り返し復号回路での復号結果に対して残留する誤りを訂正する外符号復号処理を実行するために、前記繰り返し復号回路の後段に設けられた外符号復号回路をさらに備え、
 前記外符号復号回路は、前記外符号復号処理の実行結果として、訂正ビット数および訂正不可状態を示す訂正情報を生成し、前記訂正情報を前記パラメータ生成回路にフィードバックし、
 前記パラメータ生成回路は、前記訂正情報に基づいて、前記繰り返し復号回路が次に受信するLDPC符号系列に対して前記繰り返し復号処理を実行する際に用いる前記パラメータを更新する
 請求項1から4のいずれか1項に記載の誤り訂正復号装置。
[請求項6]
 前記外符号復号回路による復号動作を制御する第2の制御回路をさらに備え、
 前記第1の制御回路は、前記繰り返し復号回路による前記繰り返し動作を停止させたときの繰り返し数が、あらかじめ設定された判定数よりも小さい場合には、異常検出フラグをセットし、前記第2の制御回路に対して前記異常検出フラグを送信し、
 前記第2の制御回路は、前記繰り返し復号回路での前記復号結果に訂正不可能な誤りが残留しているか否かを前記異常検出フラグに基づいて判定し、前記訂正不可能な誤りが残留していると判断した場合には、前記外符号復号回路による前記復号動作を途中で停止させる制御を行う
 請求項5に記載の誤り訂正復号装置。
[請求項7]
 前記パラメータ生成回路は、前記繰り返し復号回路による繰り返し動作が完了したと判定するために用いられる第2スレショルドを前記スレショルドとして前記繰り返し数ごとに生成し、
 前記第1の制御回路は、前記繰り返し復号回路から順次出力される前記非0数と前記繰り返し数ごとに設定された前記第2スレショルドとを比較し、前記非0数が前記第2スレショルドよりも小さい場合には、前記繰り返し復号回路による前記繰り返し動作を停止させる
 請求項1から6のいずれか1項に記載の誤り訂正復号装置。
[請求項8]
 請求項1から7のいずれか1項に記載の誤り訂正復号装置において実行される誤り訂正復号方法であって、
 LDPC符号に対して繰り返し復号処理を実行し、繰り返し数ごとに仮の硬判定復号結果を順次出力するとともに、前記仮の硬判定復号結果に対してパリティチェックを実行して得られる非0数を順次出力する繰り返し復号ステップと、
 前記非0数と比較するために前記繰り返し数ごとに設定されたスレショルドと、前記繰り返し復号処理を実行する最大繰り返し数とを、前記繰り返し復号処理を実行するためのパラメータとして生成するパラメータ生成ステップと、
 前記パラメータ生成ステップで生成された前記スレショルドおよび前記最大繰り返し数を前記パラメータとして受信するパラメータ受信ステップと、
 前記繰り返し復号ステップで実行された前記繰り返し復号処理の繰り返し数が、前記最大繰り返し数に達した場合には、前記繰り返し復号ステップによる前記繰り返し動作を停止させる正常停止ステップと、
 前記繰り返し数が前記最大繰り返し数に達していない場合には、前記繰り返し復号ステップにより順次出力される前記非0数と、前記繰り返し数ごとに設定された前記スレショルドとを比較し、比較結果があらかじめ設定された停止条件を満たす場合には、前記繰り返し復号ステップによる前記繰り返し動作を停止させる途中停止ステップと
 を有する誤り訂正復号方法。

図面

[ 図 1]

[ 図 2]

[ 図 3]

[ 図 4]

[ 図 5]

[ 図 6]