JP4202161B2 - Encoding device and decoding device - Google Patents

Encoding device and decoding device Download PDF

Info

Publication number
JP4202161B2
JP4202161B2 JP2003074092A JP2003074092A JP4202161B2 JP 4202161 B2 JP4202161 B2 JP 4202161B2 JP 2003074092 A JP2003074092 A JP 2003074092A JP 2003074092 A JP2003074092 A JP 2003074092A JP 4202161 B2 JP4202161 B2 JP 4202161B2
Authority
JP
Japan
Prior art keywords
decoding
unit
bch
encoding
circuit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2003074092A
Other languages
Japanese (ja)
Other versions
JP2004282600A (en
Inventor
英夫 吉田
好邦 宮田
和夫 久保
隆司 水落
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2003074092A priority Critical patent/JP4202161B2/en
Publication of JP2004282600A publication Critical patent/JP2004282600A/en
Application granted granted Critical
Publication of JP4202161B2 publication Critical patent/JP4202161B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Detection And Correction Of Errors (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Description

【0001】
【発明の属する技術分野】
この発明は、デジタル伝送での誤り訂正に有効な符号化装置および復号装置に関するものである。
【0002】
【従来の技術】
デジタル伝送装置の誤り訂正のために、ブロック符号を2次元的に配置した積符号あるいは連接符号がよく用いられる(例えば、非特許文献1参照。)。
例えば、積符号の符号化では、2次元に配列されたユーザデータ(情報記号)の各行に対して水平方向の線形符号で符号化を行うとともに水平方向の検査記号を生成し、その後ユーザデータおよび水平方向の検査記号の各列に対して垂直方向の線形符号で符号化を行うとともに垂直方向の検査記号を生成する。このような符号化で得られた積符号の最小距離は、水平方向の線形符号の最小距離と垂直方向の線形符号の最小距離の積である。従って、最小距離が小さい線形符号を組み合わせることにより、結果として、最小距離が大きい積符号を得ることが可能であり、そのために誤り訂正能力を向上することができる。
【0003】
この積符号の復号では、垂直方向の検査記号に基づいて垂直方向で誤り訂正を行い、その訂正結果に対して、水平方向の検査記号に基づいて水平方向で誤り訂正を行う。後段階の水平方向での誤り訂正では、前段階の垂直方向の誤り訂正では訂正不可等の検出情報を使って、消失訂正を行うこともできる。
【0004】
さらに、水平方向の誤り訂正の結果に対して、再び垂直方向の検査記号に基づいて垂直方向で誤り訂正を行い、またその訂正結果に対して、水平方向の検査記号に基づいて水平方向で誤り訂正を行うことにより、残留誤りを減少させてゆくという繰り返し復号もすでに知られている。
【0005】
一方、積符号に類似する技術として、水平方向の符号化と斜め方向の符号化の組み合わせも提案されている(例えば、特許文献1参照。)。また、送信元では、このように異なる複数の方向で符号化された符号を畳込み符号化し、送信先では、畳込み符号を用いて最尤復号を行い、その最尤復号結果に対してさらに復号を行う方法も提案されている(例えば、特許文献1参照。)。
【0006】
さらに、重要データに対してのみ、重要でないデータに比べて、より強力な誤り訂正能力を有するように誤り訂正符号化を行う技術が開示されている(例えば、特許文献2参照)。特許文献2に記載された技術では、重要データと重要でないデータを分離し、重要データを内符号で符号化し、その符号化結果と重要でないデータを併せてさらに外符号で符号化することにより連接符号を得る。
【0007】
【特許文献1】
特開平1−228327号公報
【特許文献2】
特開平7−162801号公報
【非特許文献1】
今井秀樹著,「符号理論」,第4版,社団法人電子情報通信学会,1990年6月,p.229−245
【0008】
【発明が解決しようとする課題】
しかし、非特許文献1に記載された一般的な積符号を採用した方法では、2次元に配列された積符号に格子状に位置する複数の誤りが存在する場合には、これらの誤りの訂正が困難である。このような格子状の誤りがある積符号をたとえ繰り返し復号しても、復号結果を2次元に配列すると、やはり復号結果上に格子状に位置する誤りが発生する傾向がある。
【0009】
特許文献1に記載された技術では、高い誤り訂正能力を得るために、畳込み符号を使用するが、畳込み符号の使用により、符号ブロックが必然的に長くなり、データの伝送および復号に長時間を要する。また、特許文献1に記載された複雑な畳み込み符号に対する最尤復号は、非常に多くの計算量や記憶量を要し、極めて困難である。
【0010】
特許文献2に記載された技術では、復号器で重要データについては他のデータよりも高い信頼性で誤り訂正が可能ではある。しかし、連接符号化に伴い冗長度が高くなるわりには、内符号による重要データの復号時の誤り訂正が失敗した場合の外符号による誤り訂正能力は高いとはいえない。
【0011】
この発明は、上記のような課題を解決するためになされたもので、高い誤り訂正能力で効率的に復号装置が誤り訂正することが可能であり冗長度が小さい符号を生成する符号化装置を得ることを目的とする。
【0012】
また、この発明は上記のような課題を解決するためになされたもので、冗長度が小さい符号を用いて高い誤り訂正能力で効率的に誤り訂正することが可能な復号装置を得ることを目的とする。
【0013】
【課題を解決するための手段】
この発明に係る符号化装置は、元の情報記号を規則的に分割して得られる複数の情報部分の各々にRS(リード・ソロモン)符号化を施すとともに、各情報部分に対応する複数のRS検査記号を生成するRS検査記号生成部と、元の情報記号とRS検査記号とを有する情報配列に複数のブロック符号化形式による誤り訂正符号化を施すとともに、複数のブロック符号化形式に対応する複数の形式の検査記号を生成する組み合わせ符号化部と、元の情報記号と、RS検査記号が複数のブロック符号化形式により誤り訂正符号化されて生成されたRS検査記号と、複数の形式の検査記号とを出力する出力部と、元の情報記号を組み合わせ符号化部に供給されるべき並びの順序と異なる順序に並べて、RS検査記号生成部に供給するインタリーブ部とを備え、組み合わせ符号化部による誤り訂正符号化は繰り返し復号が可能な形式であり、繰り返し復号による誤り訂正能力よりもRS検査記号による復号の誤り訂正能力が高くされているものである。
【0014】
【発明の実施の形態】
実施の形態1.
図1はこの発明の実施の形態1に係る符号化装置および復号装置で使用される2次元に配列された伝送データフォーマットを示す。図1に示すように、この伝送データフォーマットは、ユーザデータ(元の情報記号)1と、水平方向BCH(Bose-Chaudhuri-Hocquenghem)検査記号部2と、垂直方向BCH検査記号部3と、RS(リード・ソロモン)検査記号部4を有する。
【0015】
図2は、図1の伝送データフォーマットを生成する実施の形態1に係る符号化装置を示す。図2に示すように、この符号化装置は、入力端子5、RS符号化回路(RS検査記号生成部)6、組み合わせ符号化部A、出力端子(出力部)9を備える。組み合わせ符号化部Aは水平方向BCH符号化回路7と垂直方向BCH符号化回路8を備える。
【0016】
入力端子5には元の情報記号であるユーザデータ1が入力され、ユーザデータ1は入力端子5からRS符号化回路6に供給される。図1に示すように、ユーザデータ1は水平記号数(列の数)がkで、垂直記号数(行の数)がkの2次元に配列することができ、2次元の配列として理解することができる。この実施の形態では、正規のデータの並びの順序は、垂直方向の列に沿って進み、各列の終端の次に次の列の先頭に進むと想定するが、この並びの順序にこの発明を限定する意図ではない。入力端子5からは、各列(垂直方向)の情報部分を構成するk個のビットが一度にRS符号化回路6に供給された後に時間間隔をおいて次の列の情報部分を構成するk個のビットが一度にRS符号化回路6に供給されるとよい。あるいは各列の情報部分を構成するビットが一つごとまたは複数ごとに時間間隔をおいてRS符号化回路6に供給されてもよい。
【0017】
RS符号化回路6は、2次元に配列されたと想定される場合のユーザデータ1の各行の情報部分を構成するk個のビットを水平方向(図1の水平処理方向)に読み取り、各行の情報部分にRS符号化を施すとともに、各行の情報部分に対応するRS検査記号を生成する。従って、行の数に等しいk個のRS検査記号が得られる。
【0018】
元のユーザデータ1は、水平方向BCH符号化回路7にも供給される。その後、RS符号化回路6で生成されたRS検査記号も水平方向BCH符号化回路7に供給される。水平方向BCH符号化回路7は、ユーザデータ1の各行(水平方向)の情報部分と、この情報部分に基づいて生成されたRS検査記号を対応付けた形式で、1行の情報部分を構成するk個のビットとRS検査記号からなる行を1回の符号化対象として水平方向(図1の水平処理方向)に読み取り、この行に水平方向のBCH符号化を施すとともに、この行に対応する水平方向BCH検査記号を生成する。従って、水平方向BCH符号化回路7は、k個の行を、k個のBCH符号を用いて符号化し、符号化に伴い生ずるk個の水平方向BCH検査記号(長さはn−k−kである)を得る。水平方向BCH検査記号部2は、これらのk個の水平方向BCH検査記号の集合である。
【0019】
水平方向BCH符号化回路7は、元のユーザデータ1および水平方向にBCH符号化されたRS検査記号符号(長さk×行数k)を正規のデータの並びの順序に従って垂直方向BCH符号化回路8に供給する。その後、水平方向BCH符号化回路7で生成された水平方向BCH検査記号も正規のデータの並びの順序に従って垂直方向BCH符号化回路8に供給される。垂直方向BCH符号化回路8は、各列のk個のビットを1回の符号化対象として垂直方向(図1の垂直処理方向)に読み取り、この列に垂直方向のBCH符号化を施すとともに、この列に対応する垂直方向BCH検査記号を生成する。従って、垂直方向BCH符号化回路8は、n個の列を、n個のBCH符号を用いて符号化し、符号化に伴い生ずるn個の垂直方向BCH検査記号(長さはn−kである)を得る。垂直方向BCH検査記号部3は、これらのn個の垂直方向BCH検査記号の集合である。
【0020】
このようにして図1に示す水平方向BCH検査記号部2と、垂直方向BCH検査記号部3と、RS検査記号部4が得られる。このうちRS検査記号部4は、RS符号化回路6により生成されたRS検査記号が水平方向と垂直方向のBCH符号化(すなわちBCH積符号化)されて生成された符号の集合である。また、水平方向BCH検査記号も垂直方向のBCH符号化されるので、図1に示す水平方向BCH検査記号部2は実際には垂直方向のBCH符号化された水平方向BCH検査記号の集合である。
【0021】
垂直方向BCH符号化回路8は、全く符号化されていない元のユーザデータ1、RS検査記号部4、水平方向BCH検査記号部2および垂直方向BCH検査記号部3を出力端子9に出力する。この出力も、上述した正規のデータの並びの順序に従い、垂直方向の列に沿って進み、各列の終端の次に次の列の先頭に進む。従って、ユーザデータ1の各列とその列に対応する垂直方向BCH検査記号部3の各列が先に出力され、その後RS検査記号部4の各列とその列に対応する垂直方向BCH検査記号部3の各列が出力され、最後に水平方向BCH検査記号部2の各列とその列に対応する垂直方向BCH検査記号部3の各列が出力される。このようにして図1の伝送データフォーマットが実現され、出力端子9も上記の順序に従い伝送データフォーマットを構成するビットを外部に出力する。
【0022】
この伝送データフォーマットは、BCH符号を用いた積符号であるとともに、ユーザデータ1にRS符号の検査記号を付加することにより、さらにユーザデータの誤り訂正能力を高めたものである。従って、垂直方向BCH検査記号部3に基づいて復号し、次にその復号結果を用いながら水平方向BCH検査記号部2に基づいて復号することができる。この後、垂直方向と水平方向のうち一方の形式の復号結果を用いながら、他方の形式の復号をさらに続行する繰り返し復号も可能である。水平方向BCH検査記号部2に基づいて復号した後、RS検査記号に基づいて復号することにより、誤り訂正能力を高めることができる。
【0023】
すなわち、この伝送データフォーマットに関しては、繰り返し復号による誤り訂正能力よりもRS検査記号による復号の誤り訂正能力が高い。具体的には、RS検査記号に基づく復号の誤り訂正能力がその直前に実施される復号(例えば水平方向BCH検査記号部2に基づく復号)の誤り訂正能力よりも高くなるように、この実施の形態のために選択されるRS符号で保証される最小距離は、直前の復号で使われる(例えば水平方向の)BCH符号で保証される最小距離よりも大きい。このため、後述するように、2次元に配列されたと想定されるユーザデータ1に格子状に位置する複数の誤りに関して特に誤り訂正の能力が向上する。
【0024】
図3は図1の伝送データフォーマットから元のユーザデータ1を推定する復号装置の一例を示す。図3に示すように、この復号装置は、受信された情報系列が入力される入力端子10と、繰り返し復号部Bと、RS復号回路17と、出力端子18とを備える。繰り返し復号部Bは、上記の伝送データフォーマットに準拠した受信情報系列を符号化装置が使った垂直方向のBCH符号に対応する復号形式で復号することと、符号化装置が使った水平方向のBCH符号に対応する復号形式で復号することを繰り返す。この目的のため、繰り返し復号部Bは、交互に配置された垂直方向BCH復号回路と、水平方向BCH復号回路を備えており、一方向の復号回路の復号結果が他方向の復号回路に入力されるようになっている。
【0025】
垂直方向BCH復号回路11,13,15の各々は、垂直方向BCH検査記号部3に基づいて情報系列の誤り訂正を行い、水平方向BCH復号回路12,14,16の各々は、水平方向BCH検査記号部2に基づいて情報系列の誤り訂正を行う。繰り返し復号部Bの最終段階の水平方向BCH復号回路16から出力された復号結果は、RS復号回路17に入力される。RS復号回路17は、繰り返し復号部Bの復号結果に対して、RS検査記号部4に基づいてRS符号の復号法による誤り訂正を施して、その誤り訂正結果(ユーザデータ1に相当する)を最終的な誤り訂正結果すなわち推定結果として出力端子18に出力する。
【0026】
まず、入力端子10からは、図1の伝送データフォーマットのうち各列の情報部分を構成するn個のビットが一度に最初の垂直方向BCH復号回路11に入力され、垂直方向BCH復号回路11は図1の垂直処理方向に従いその列を読み取り、その列に含まれるn−k個の垂直方向BCH検査記号に基づいて、その列の誤り訂正を行う。垂直方向BCH復号回路11は一度に一列を扱うのでもよいし、あるいは複数列が同時に入力端子10から垂直方向BCH復号回路11に入力されて並行処理により誤り訂正されてもよい。垂直方向BCH復号回路11の復号により、ユーザデータ1、RS検査記号部4および水平方向BCH検査記号部2に含まれる誤りの少なくとも一部が訂正される。すなわち伝送データフォーマット上で誤りビットが正しいビットに置換される。
【0027】
この誤り訂正の結果、すなわち誤りビットが訂正された伝送データフォーマットは、垂直方向BCH復号回路11から水平方向BCH復号回路12に供給される。この場合には、各行の情報部分を構成するn個のビットが一度に水平方向BCH復号回路12に入力され、水平方向BCH復号回路12は図1の水平処理方向に従いその列を読み取り、その行に含まれる水平方向BCH検査記号に基づいて、その行の誤り訂正を行う。水平方向BCH復号回路12は一度に一行を扱うのでもよいし、あるいは複数行が同時に垂直方向BCH復号回路11から水平方向BCH復号回路12に入力されて並行処理により誤り訂正されてもよい。水平方向BCH復号回路12での誤り訂正では、垂直方向BCH復号回路11での訂正状況に基づいてビットの消失訂正を行うことも可能である。また、垂直方向BCH検査記号部3を水平方向BCH検査記号部2と同じ体上で構成した場合、垂直方向BCH検査記号部3の水平方向の各行も水平方向のBCH符号となっており、その末尾のn−k−k個のビットはその行に対する水平方向BCH検査記号とみなすことができる。従って、他の行と同様の復号法により、その水平方向BCH検査記号を用いて垂直方向BCH検査記号部3も水平方向BCH復号回路12で訂正可能である。
【0028】
水平方向BCH復号回路12による誤り訂正の結果、すなわち誤りビットが訂正された伝送データフォーマットは、垂直方向BCH復号回路11と同様に情報系列を垂直方向BCH検査記号部3に基づいて垂直方向に誤り訂正する垂直方向BCH復号回路13に供給される。垂直方向BCH復号回路13で再び誤り訂正することにより、水平方向BCH復号回路12で残留した誤りを訂正できる可能性がある。また、垂直方向BCH復号回路13での誤り訂正では、水平方向BCH復号回路12での訂正状況に基づいてビットの消失訂正を行うことも可能である。
【0029】
同様の形式で、水平方向の水平方向BCH復号回路14、垂直方向の垂直方向BCH復号回路15、および水平方向の水平方向BCH復号回路16は、前段の復号回路の誤り訂正の結果に対して誤り訂正を行う。このように異なる形式の復号を交互に繰り返すことにより、一度の誤り訂正では訂正できない誤りも訂正可能である。
【0030】
ただし、上記の繰り返し復号だけでは、図4に例示する格子状に位置する複数の誤り20については訂正が難しい。ここで「格子状に位置する」とは、2次元に配列されたと想定されるフォーマット中のある行に存在する複数の誤りと、他の行に存在する複数の誤りが、同じ複数の列上に存在することである。格子状に位置する誤り20は、伝送データフォーマット中に受信当初から含まれていることもあるし、繰り返し復号を行う途中で誤訂正により発生する可能性もある。このような格子状に位置する誤り20がある符号をたとえ繰り返し復号しても、2次元に配列されたと想定される復号結果上に格子状に位置する複数の誤りがやはり発生する傾向がある。特に、繰り返し復号部B中の最後から2番目の段階の垂直方向BCH復号回路(例えば回路15)から出力された誤り訂正結果に格子状に位置する誤りが存在すると、最終段階の水平方向BCH復号回路(例えば回路16)では消失訂正することもできず、場合によっては水平方向BCH検査記号部2に基づく水平方向の復号で保証される最小距離に対応する訂正可能な誤り個数を実在の誤り個数が超えてしまい、誤り訂正が不可能になることがある。
【0031】
そこで、この実施の形態では、RS復号回路17により繰り返し復号部Bの復号結果をさらに復号する。RS復号回路17は、推定されたユーザデータ1の各行の情報部分を構成するk個のビットと、これに対応するk個のビットからなるRS検査記号を水平方向(図1の水平処理方向)に読み取り、これらに基づいて元のユーザデータ1の誤り推定をさらに行う。
【0032】
上記のように、RS検査記号に基づく復号の誤り訂正能力がその直前に実施される復号(例えば水平方向BCH検査記号部2に基づく復号)の誤り訂正能力よりも高くなるように、この実施の形態のために選択されるRS符号で保証される最小距離は、直前の復号で使われる(例えば水平方向の)BCH符号で保証される最小距離よりも大きい。従って、繰り返し復号部Bの最終段階の水平方向BCH復号回路(例えば回路16)から出力された誤り訂正結果に格子状に位置する複数の誤り20が存在していても、上記RS符号で保証される最小距離に基づいてこれらの誤りを訂正することができる。
【0033】
なお、繰り返し復号部Bの最終段階の水平方向BCH復号回路(例えば回路16)では誤り位置の検出のみを行い、誤り訂正を行わないようにすることも可能である。この場合には、繰り返し復号部Bで最終的に検出された誤り位置の判断を検証しながら、RS復号回路17は、繰り返し復号部B中の最後から2番目の段階の垂直方向BCH復号回路(例えば回路15)から出力された誤り訂正結果を復号して誤りを訂正することができる。
【0034】
以上のように、この実施の形態1によれば、符号化装置は、元のユーザデータ1を複数行に分割して得られる複数の情報部分の各々にRS符号化を施すとともに、各情報部分に対応する複数のRS検査記号を生成するRS符号化回路6と、情報部分の各々とこれに対応する前記RS検査記号とを対応付けて配列した情報配列に複数のBCH符号化形式による誤り訂正符号化を施すとともに、複数のBCH符号化形式に対応する複数の形式の検査記号を生成する組み合わせ符号化部Aと、元のユーザデータ1とRS検査記号が複数のBCH符号化形式により誤り訂正符号化されて生成されたRS検査記号部4と水平方向BCH検査記号部2と垂直方向BCH検査記号部3とを出力する出力部とを備える。そして、組み合わせ符号化部Aによる誤り訂正符号化は繰り返し復号が可能な形式であり、繰り返し復号による誤り訂正能力よりもRS検査記号による復号の誤り訂正能力が高くされている。RS検査記号は大幅な冗長度の増大を引き起こさず、繰り返し復号可能な形式の組み合わせ符号化も大幅な冗長度の増大を引き起こさないので、冗長度が小さい符号を符号化装置が生成することができる。また、復号装置は、伝送路上で発生した誤りを繰り返し復号部Bの繰り返し復号によりできる限り訂正し、その訂正結果に残留する誤り、例えば格子状に位置する複数の誤り20を誤り訂正能力が高いRS検査記号による復号でRS復号回路17が訂正することができるので、高い誤り訂正能力で効率的に復号装置が誤り訂正することが可能である。
【0035】
水平方向BCH符号化回路7および水平方向BCH復号回路12,14,16、ならびにRS符号化回路6およびRS復号回路17には、一列(垂直方向)の情報部分が入力された後に、次の列の情報部分が入力されるようになっている一方で、これらは各行(水平方向)の情報部分を水平方向に処理するので、図1の複数の行に相当する複数のビット系列を同時に並列に処理するように設計することが効率的である。このように設計すれば、これらの回路からは複数行にまたがる一列内のビットが同時または短期間内に出力されるので、その後段の垂直方向BCH符号化回路8および垂直方向BCH復号回路11,13,15は、一列内のビットを容易にパイプライン処理することが可能である。上記のように設計すれば、さらに処理の高速化に貢献することが可能である。
【0036】
実施の形態2.
実施の形態1では、RS符号化回路6およびRS復号回路17は、水平方向BCH符号化回路7および水平方向BCH復号回路12,14,16と同様に、図1の水平処理方向に各行のビットを読み取って処理を行う。従って、RS検査記号部4内の個々のRS検査記号は、その作成の元になった同じ行の情報部分と一緒に水平方向にBCH符号化され、同様に一緒に復号される。これに対して、以下に述べる実施の形態2では、RS符号化の方向を水平方向BCH符号化の方向とを異ならせることにより、伝送データフォーマットにおける個々のRS検査記号と、同じ行の情報部分との相関関係を弱めて、復号での誤り訂正能力をさらに高める。
【0037】
図5は、この発明の実施の形態2に係る符号化装置を示す。この符号化装置は、実施の形態1に係る符号化装置(図2)と同様の構成要素に加えて、インタリーブ回路21とデインタリーブ回路22を備える。図5では、図2と共通する構成要素を示すために同一の符号を使用し、説明を簡略化する。インタリーブ回路21は、RS符号化回路6の前段に配置され、元のユーザデータを組み合わせ符号化部Aに供給されるべき正規の並びの順序(入力端子5から入力された並びの順序)と異なる順序に並べて、RS符号化回路6に供給する。デインタリーブ回路22は、RS符号化回路6の後段に配置され、デインタリーブ回路22には、インタリーブ回路21で並べ替えられたユーザデータとRS符号化回路6で生成された複数のRS検査記号が供給される。デインタリーブ回路22は、インタリーブ回路21から供給されたユーザデータを正規の並びの順序のユーザデータ1に戻して、このユーザデータ1を組み合わせ符号化部Aの水平方向BCH符号化回路7に供給し、その後、RS符号化回路6で生成されたRS検査記号を水平方向BCH符号化回路7に供給する。
【0038】
図6および図7を参照しながら、符号化装置の具体的な動作を詳述する。図6において、R,R,R,R…は、RS符号化回路6で生成されるRS検査記号(BCH積符号化されていない)を示す。また、r11,r12,r13,r14…は、RS検査記号R,R,R,R…を生成するのに要するビット列を示す。各ビット列の長さは1以上の任意でよい。これらのビット列のうち、ビット列r11,r12,r13,r14…r1nは同じRS符号化の対象となりRS検査記号Rの生成に利用され、ビット列r21,r22,r23…は他のRS符号化の対象となりRS検査記号Rの生成に利用される。つまり、この実施の形態では、2次元に配列されたと想定される元のユーザデータ1では、ほぼ斜めに並んだ複数のビット列から一つの検査記号を生成する。同じRS検査記号Rを生成するビット列r11,r12,r13,r14…r1nに関しては、2次元に配列されたと想定される元のユーザデータ1では、ビット列r11,r12,r13,r14…は互いに異なる列に存在し、隣合うビット列(例えばビット列r11,r12)は互いに異なる行のビットを含む。
【0039】
このように水平処理方向とは異なる方向に並んだビット列r11,r12,r13,r14…r21,r22,r23…からRS検査記号R,R,R,R…を容易に生成するため、図7に示すようにインタリーブ回路21は正規の並びの順序のユーザデータ1から同じRS符号化の対象となるビット列(例えばビット列r11,r12,r13,r14…r1n)を抽出することを繰り返し、ユーザデータ1をRS符号化回路6による符号化に適するように並べ替える。すなわち同じRS符号化の対象となるビット列(例えばビット列r11,r12,r13,r14…r1n)を一行に並べる。そして、RS符号化回路6は、各行のビット列にRS符号化を施すとともに、RS検査記号R,R,R,R…を生成する。このようにして、ビット列r11,r12,r13,r14…r1nからRS検査記号Rが生成され、ビット列r21,r22,r23…r2nから他のRS検査記号Rが生成される。
【0040】
デインタリーブ回路22は、インタリーブ回路21で並べ替えられたユーザデータを正規の並びの順序に戻して、正規の並びの順序のユーザデータ1を組み合わせ符号化部Aの水平方向BCH符号化回路7に供給し、その後、RS符号化回路6で生成されたRS検査記号を水平方向BCH符号化回路7に供給する。
【0041】
水平方向BCH符号化回路7は、デインタリーブ回路22から受け取った正規の並びの順序のユーザデータ1の各行(水平方向)の情報部分とRS検査記号R,R,R,R…を対応付けた形式で、1行の情報部分を構成するk個のビットとRS検査記号からなる行を1回の符号化対象として水平方向(図6の水平処理方向)に読み取り、この行に水平方向のBCH符号化を施すとともに、この行に対応する水平方向BCH検査記号を生成する。従って、2次元に配列されたと想定される元のユーザデータ1ではほぼ斜めに並んでいたビット列(例えばビット列r11,r12,r13,r14…r1n)から生成された一つのRS検査記号(例えばRS検査記号R)が、同じ行にある情報部分と一緒に水平方向のBCH符号化の対象となる。
【0042】
また実施の形態1と同様に、垂直方向BCH符号化回路8は、2次元に配列されたと想定されるフォーマット内の各列(垂直方向)のビットを1回の符号化対象として垂直方向(図6の垂直処理方向)に読み取り、この列に垂直方向のBCH符号化を施すとともに、この列に対応する垂直方向BCH検査記号を生成する。一つのRS検査記号(例えばRS検査記号R)を作成するために使われたビット列(例えばビット列r11,r12,r13,r14…r1n)は、異なる列上にあるので、異なる垂直方向BCH検査記号の生成に寄与することになる。
【0043】
図8は、実施の形態2に係る復号装置を示す。この復号装置は、実施の形態1に係る復号装置(図3)と同様の構成要素に加えて、インタリーブ回路31とデインタリーブ回路32を備える。図8では、図3と共通する構成要素を示すために同一の符号を使用し、説明を簡略化する。インタリーブ回路31は、繰り返し復号部BとRS復号回路17の間に配置され、繰り返し復号部Bによる復号結果のうち元のユーザデータ1に相当する情報記号を繰り返し復号部Bによる復号結果での並びの順序と異なる順序に並べて、RS復号部17に供給する。
【0044】
具体的には、繰り返し復号部Bからは、図6に示すフォーマットの復号結果の情報系列がインタリーブ回路31に供給される。この復号結果の情報系列では、水平方向BCH復号回路12,14,16により、BCH積符号化の前段階のRS検査記号R,R,R,R…が推定されている。上記の符号化装置のインタリーブ回路21と同様に、図7に示すようにインタリーブ回路31は、正規の並びの順序の情報記号(ユーザデータ1に対応する)から同じRS符号化の対象のビット列(例えばビット列r11,r12,r13,r14…r1n)を抽出することを繰り返し、情報記号をRS復号回路17による復号に適するように並べ替える。すなわち同じRS符号化の対象となったビット列(例えばビット列r11,r12,r13,r14…r1n)を一行に並べる。そして、RS復号回路17は、各行のビット列(例えばビット列r11,r12,r13,r14…r1n)とRS検査記号(例えばRS検査記号R)から当該ビット列の誤り推定を行う。
【0045】
デインタリーブ回路32は、RS復号回路17の後段に配置され、RS復号回路17による復号結果のうち元のユーザデータ1に相当する情報記号を繰り返し復号部Bによる復号結果での並びの順序に戻して、これを最終的な誤り訂正結果すなわち推定結果として出力端子18に出力する。
【0046】
以上のように、この実施の形態2によれば、実施の形態1と同様に、冗長度が小さい符号を符号化装置が生成することができ、復号装置では、繰り返し復号部Bの誤り訂正結果に残留する誤り、例えば格子状に位置する複数の誤り20を誤り訂正能力が高いRS検査記号による復号でRS復号回路17が訂正することができるので、高い誤り訂正能力で効率的に復号装置が誤り訂正することが可能である。
【0047】
さらに、この実施の形態2によれば、符号化装置は、元のユーザデータ1を組み合わせ符号化部Aに供給されるべき並びの順序と異なる順序に並べて、RS符号化回路6に供給するインタリーブ回路21を備える。また、復号装置は、繰り返し復号部Bによる復号結果のうち元のユーザデータ1に相当する情報記号を繰り返し復号部Bによる復号結果での並びの順序と異なる順序に並べて、RS復号回路17に供給するインタリーブ回路31と、RS復号回路17による復号結果のうち元のユーザデータ1に相当する情報記号を繰り返し復号部Bによる復号結果での並びの順序に戻すデインタリーブ回路32を備える。従って、RS符号化の方向を組み合わせ符号化部Aにおける符号化の方向(実施の形態では水平方向BCH符号化の方向)とを異ならせることにより、伝送データフォーマットにおける個々のRS検査記号と、このRS検査記号と一緒に符号化および復号される情報部分との相関関係を弱めて、復号での誤り訂正能力をさらに高めることができる可能性がある。
【0048】
この効果についてより詳細に説明する。図6に示すように、格子状に位置する複数の誤り20のうちいくつかの誤りがRS検査記号部4に存在すると想定する。実施の形態1では、RS検査記号部4内の個々のRS検査記号は、その作成の元になった同じ行の情報部分と一緒に水平方向にBCH符号化され、同様に一緒に復号される。従って、復号装置が伝送フォーマットを受信した段階または繰り返し復号部Bの途中の段階でユーザデータ1とRS検査記号部4の同一行に誤りがあると、誤りが訂正できない可能性がある。これに対して、実施の形態2では、個々のRS検査記号が一緒に符号化・復号される同じ行の情報部分は、インタリーブの効果により、そのRS検査記号と密接な関係を持たない。従って、復号装置が伝送フォーマットを受信した段階または繰り返し復号部Bの途中の段階でユーザデータ1とRS検査記号部4の同一行に誤りがあっても、RS検査記号(例えばRS検査記号R)から復号されるのはインタリーブされたビット列(ビット列r11,r12,r13,r14…r1n)であるから、誤り訂正能力を向上できる可能性がある。なお、実施の形態1に関連して上述したように、繰り返し復号部Bの最終段階の水平方向BCH復号回路(例えば回路16)では誤り位置の検出のみを行い、RS復号回路17は、繰り返し復号部Bで最終的に検出された誤り位置の判断を検証しながら誤り訂正するとさらによい。
【0049】
実施の形態3.
実施の形態2に関連して上述したインタリーブの手法を以下の実施の形態3のように修正してもよい。実施の形態3でも、図5の符号化装置および図8の復号装置を使用する。
【0050】
図9および図10を参照しながら、符号化装置の具体的な動作を詳述する。図9において、r,r,r,r…は、それぞれRS検査記号R,R,R,R…を生成するのに要するビット列を示す。すなわち、ビット列rは同じRS符号化の対象となりRS検査記号Rの生成に利用され、ビット列rは他のRS符号化の対象となりRS検査記号Rの生成に利用される。つまり、この実施の形態では、2次元に配列されたと想定される元のユーザデータ1では、垂直方向に並んだ一つのビット列から一つの検査記号を生成する。
【0051】
このように水平処理方向とは異なる方向に並んだビット列r,r,r,r…からRS検査記号R,R,R,R…を容易に生成するため、図10に示すようにインタリーブ回路21は正規の並びの順序のユーザデータ1から各ビット列r,r,r,r…を抽出することを繰り返し、ユーザデータ1をRS符号化回路6による符号化に適するように並べ替える。すなわち各ビット列を一行に並べる。そして、RS符号化回路6は、各行のビット列にRS符号化を施すとともに、RS検査記号R,R,R,R…を生成する。このようにして、ビット列r,r,r,r…からRS検査記号R,R,R,R…がそれぞれ生成される。従って、水平方向BCH符号化回路7では、2次元に配列されたと想定される元のユーザデータ1で垂直方向に並んでいたビット列(例えばビット列r)から生成された一つのRS検査記号(例えばRS検査記号R)が、同じ行にある情報部分と一緒に水平方向のBCH符号化の対象となる。
【0052】
また実施の形態1および実施の形態2と同様に、垂直方向BCH符号化回路8は、2次元に配列されたと想定されるフォーマット内の各列(垂直方向)のビットを1回の符号化対象として垂直方向(図9の垂直処理方向)に読み取り、この列に垂直方向のBCH符号化を施すとともに、この列に対応する垂直方向BCH検査記号を生成する。一つのRS検査記号(例えばRS検査記号R)を作成するために使われたビット列(例えばビット列r)は、同じ列上にあるので、同じ垂直方向BCH検査記号の生成に寄与することになる。
【0053】
他方、復号装置では、繰り返し復号部Bからは、図9に示すフォーマットの復号結果の情報系列がインタリーブ回路31に供給される。この復号結果の情報系列では、水平方向BCH復号回路12,14,16により、BCH積符号化の前段階のRS検査記号R,R,R,R…が推定されている。上記の符号化装置のインタリーブ回路21と同様に、図10に示すようにインタリーブ回路31は、正規の並びの順序の情報記号(ユーザデータ1に対応する)から各ビット列r,r,r,r…を抽出することを繰り返し、情報記号をRS復号回路17による復号に適するように並べ替える。すなわち各ビット列を一行に並べる。そして、RS復号回路17は、各行のビット列(例えばビット列r)とRS検査記号(例えばRS検査記号R)から当該ビット列の誤り推定を行う。実施の形態3でも、個々のRS検査記号が一緒に符号化・復号される同じ行の情報部分は、インタリーブの効果により、そのRS検査記号と密接な関係を持たない。従って、復号装置が伝送フォーマットを受信した段階または繰り返し復号部Bの途中の段階でユーザデータ1とRS検査記号部4の同一行に誤りがあっても、RS検査記号(例えばRS検査記号R)から復号されるのはインタリーブされたビット列(ビット列r)であるから、誤り訂正能力を向上できる可能性がある。デインタリーブ回路32は、RS復号回路17による復号結果のうち元のユーザデータ1に相当する情報記号を繰り返し復号部Bによる復号結果での並びの順序に戻して、これを最終的な誤り訂正結果すなわち推定結果として出力端子18に出力する。
【0054】
以上のように、この実施の形態3によっても、RS符号化の方向を組み合わせ符号化部Aにおける符号化の方向(実施の形態では水平方向BCH符号化の方向)とを異ならせることにより、伝送データフォーマットにおける個々のRS検査記号と、このRS検査記号と一緒に符号化および復号される情報部分との相関関係を弱めて、復号での誤り訂正能力をさらに高めることができる可能性がある。
【0055】
実施の形態4.
実施の形態1から実施の形態3における復号装置では、入力端子10から情報系列を繰り返し復号部Bに硬入力し、繰り返し復号部Bで硬判定復号するようにしてもよい。しかし、以下に述べる実施の形態4のように、繰り返し復号部Bでは軟判定復号を行って、より訂正能力を強化してもよい。
【0056】
軟判定復号については、例えば、秋田正志(Masashi Akita)、外6名、「長距離DWDM伝送システムのためにターボ積符号を利用した第3世代FEC」("Third Generation FEC Employing Turbo Product Code for Long-Haul DWDM Transmission Systems")、「OFC2002」("Optical Fiber Communication Conference 2002")、(米国)、オプティカル・ソサイエティ・オブ・アメリカ(Optical Society of America)、2002年3月、p.289−290に開示されている。この文献に記載されたターボ積符号の繰り返し復号装置を、本発明に係る復号装置の繰り返し復号部Bとして利用することができる。
【0057】
この文献に開示の技術では、ターボ積符号の繰り返し復号装置の各段階の復号器で軟判定を行う。ここで使用されるターボ積符号はBCH符号の積符号である。ある段階の復号器を第m段階の復号器であると想定する(mは1以上で、繰り返し復号装置の全復号器の数以下のあらゆる整数である)。第m段階の復号器の前段では、ターボ積符号の第k番のチャネル値rを第m段階の復号対象データw(m) に加算器により加えて、合計値である軟入力値yを得る。そして、軟入力値yをSISO(軟入力・軟出力)復号器に入力する。このSISO復号器は、軟入力値yの行列Yに基づいて、符号語成分のいくつかの候補{C}を求め、さらにこれらの候補に関する対数尤度比Lを式(1)に従って算出する。
【0058】
【数1】

Figure 0004202161
ここで、C は第k位置のビットが1である符号語候補であり、C は第k位置のビットが0である符号語候補であり、p(Y|C)はガウスの遷移確率である。
【0059】
ターボ積符号の第k番チャネルの値rは、復号器が対数尤度比Lを算出する間、遅延線で遅延させられた後、復号器が算出した対数尤度比Lから減算器により差し引かれる。この減算結果には、最適な重み係数が乗算器により乗算される。この乗算結果は、次の段階(第m+1段階)の復号器の復号対象データw(m+1) であり、第m+1段階の復号器の前段では、ターボ積符号の第k番のチャネル値rを第m+1段階の復号対象データw(m+1) に加算器により加えて、合計値である軟入力値yを得る。このようにして、ある段階の復号器の復号結果に基づいて、次の段階の復号器が軟判定復号を行うという繰り返し復号が実現される。そして、最終段階の復号器が算出した対数尤度比Lから復号装置に入力された情報系列が推定される。
【0060】
上記の繰り返し復号装置は、実施の形態1から実施の形態3のいずれの復号装置の繰り返し復号部Bとして利用してもよい。つまり、実施の形態1から実施の形態3の各BCH復号回路11〜16を上記の各段階のSISO復号器で置換し、上記の加算器、減算器、遅延線および乗算器を各復号器に付随させてもよい。繰り返し復号部Bの軟判定復号結果に基づいて、RS復号回路17は硬判定復号を行い、その復号結果を最終的な誤り訂正結果すなわち推定結果として出力端子18に出力する。このように、BCH積符号の繰り返し復号を軟入力・軟出力で行うことによって、より訂正能力を強化することが可能である。
【0061】
また、この実施の形態4の繰り返し復号部Bは、繰り返し復号の途中までは軟判定復号し、この軟判定復号結果に対して最終的に硬判定復号するのでもよい。具体的には、例えば、繰り返し復号部B中のBCH復号回路11〜14は上述のSISO復号器とし、最終段階およびその付近の段階のBCH復号回路15,16は簡易な構成の硬判定復号器とし、BCH復号回路15,16では、水平方向BCH復号回路14の軟判定復号結果に基づいて情報系列を硬判定で復号するようにしてもよい。ただし、どの段階まで軟判定復号し、どこから硬判定復号するかは任意であり、例えばBCH復号回路11〜15は上述のSISO復号器とし、最終段階のBCH復号回路16のみは硬判定復号器としてもよい。
【0062】
このように最終段階(および場合によりその付近)のBCH復号回路を硬判定復号器とすることにより、軟判定復号での残留ランダム誤りの個数を明確に硬判定復号器で把握することが可能である。このランダム誤りの個数はRS復号回路17に供給され、RS復号回路17はランダム誤りの個数を参照して、より精確に誤り訂正することが可能である。
【0063】
実施の形態5.
実施の形態3では、繰り返し復号部Bの軟判定復号結果に基づいて、RS復号回路17は硬判定復号を行い、RS復号回路17の硬判定復号結果を最終的な誤り訂正結果すなわち推定結果として出力端子18に出力する。これに対して、以下に述べる実施の形態5では、RS復号回路17の誤り訂正結果または誤り検出結果に基づいて、繰り返し復号部Bの軟判定復号結果を修正して、再度軟判定復号する。
【0064】
図11は、この発明の実施の形態5に係る復号装置を示す。この復号装置は、実施の形態1に係る復号装置(図3)と同様の構成要素に加えて、軟判定更新回路40と第2の繰り返し復号部B2を備える。図11では、図5と共通する構成要素を示すために同一の符号を使用し、説明を簡略化する。この復号装置は、実施の形態1に係る符号化装置(図2)によるBCH積符号の伝送データフォーマットを復号して誤り訂正する。この実施の形態においては、繰り返し復号部Bが実施の形態4に関連して上述したように軟判定復号結果を出力する。一方、RS復号部17は、繰り返し復号部Bの軟判定復号結果に対して硬判定復号により誤り訂正または誤り検出を施すようになっているが、RS復号回路17の出力結果は最終的な誤り訂正結果として出力されるのではない。
【0065】
繰り返し復号部Bの軟判定復号結果およびRS復号回路17による誤り訂正数または誤り検出状態は、軟判定更新回路40に供給される。軟判定更新回路40は、RS復号回路17による誤り訂正数または誤り検出状態に基づいて繰り返し復号部Bの軟判定復号結果を修正する。軟判定更新回路40により修正された軟判定復号結果は、第2の繰り返し復号部B2に供給される。
【0066】
第2の繰り返し復号部B2は、繰り返し復号部Bと同様に、交互に配置された垂直方向BCH復号回路41,43,45と水平方向BCH復号回路42,44,46を備える。第2の繰り返し復号部B2の復号回路41〜46は、繰り返し復号部Bの復号回路11〜16と同様に、垂直方向または水平方向のBCH符号に対応する復号形式で情報系列を復号することが可能であり、さらに実施の形態4の繰り返し復号部Bの復号回路11〜16と同様に、軟判定復号することが可能である。従って、第2の繰り返し復号部B2は、繰り返し復号部Bと同様に、軟判定による繰り返し復号が可能である。ただし、第2の繰り返し復号部B2は、繰り返し復号の途中までは軟判定復号し、この軟判定復号結果に対して最終的に硬判定復号するのでもよい。
【0067】
この実施の形態によれば、RS復号回路17の誤り訂正数または誤り検出状態に基づいて軟判定復号結果を修正し、修正された軟判定復号結果を、再度第2の繰り返し復号部B2によって軟判定による繰り返し復号の対象とすることが可能である。以上のようにして、軟判定復号の精度を高めることが可能である。第2の繰り返し復号部B2の復号結果は、最終的な誤り訂正結果すなわち推定結果として出力端子18に出力してもよいし、図示のように再度RS復号回路47に供給してRS符号の復号法による誤り訂正を施すようにしてもよい。
【0068】
なお、この実施の形態5の復号装置は、実施の形態1に係る復号装置を修正したものであるが、実施の形態2または実施の形態3に係る復号装置(図8)を同様に修正してもよい。
【0069】
以上、この発明をその好適な実施の形態を参照しながら詳細に図示して説明したが、請求の範囲に記載されたこの発明の範囲内で、形式および細部に関する様々な変更が可能であることは当業者であれば理解できることだろう。かかる変更、代替、修正もこの発明の範囲に含まれる。
【0070】
例えば、上記の実施の形態では、伝送データフォーマットでは、BCH符号を用いた積符号が使用されているが、他の形式の繰り返し復号可能な符号を使用してもよい。例えば、ユ・コウ(Yu Kou)、外2名、「有限幾何学に基づく低密度パリティ検査符号:再発見と新結果」("Low-Density Parity-Check Codes Based on Finite Geometries: A Rediscovery and New Results")、「情報理論に関するIEEE報告書」("IEEE Transactions on Information Theory")、(米国)、電気電子技術者協会(Institute of Electrical and Electronics Engineers)、2001年11月、第47巻、第7号、OFC2002、p.2711−2736に開示された各種の低密度パリティ検査符号(low-density parity-check codes)のうち組織符号に分類できる符号を用いて符号化・復号するように、全ての実施の形態を修正してもよい。また、RS符号を用いた積符号、その他のブロック符号を用いた積符号、およびRS符号その他のブロック符号を用いた連接符号を用いるように、全ての実施の形態を修正してもよい。
【0071】
また、上記の実施の形態では、復号装置の繰り返し復号部Bおよび第2の繰り返し復号部B2に三つの垂直方向BCH復号回路と三つの水平方向BCH復号回路12,14,16が設けられているが、垂直方向BCH復号回路および水平方向BCH復号回路の各々の個数は2つ以上であればいくつでもよい。
また、上記の実施の形態では、復号装置の繰り返し復号部Bおよび第2の繰り返し復号部B2において、多数の復号回路が直列に配置されているが、復号回路の復号結果を他の復号回路に供給する形式にして、復号回路の個数を削減してもよい。
【0072】
また、上記の実施の形態では、復号装置での誤り訂正の処理は必ず最終段階の復号回路(例えばRS復号回路17)に進むが、繰り返し復号の途中の段階で復号結果に誤りが含まれていないと確認できれば、誤り訂正処理を終了して、その段階での復号結果を最終的な誤り訂正結果として出力してもよい。
また、上記の実施の形態では、符号化、復号、インタリーブ、デインタリーブといった各種の処理を回路で実現するが、同様の処理を実現するソフトウエアを利用してコンピュータを用いることも可能である。
【0073】
【発明の効果】
以上のように、この発明によれば、元の情報記号を規則的に分割して得られる複数の情報部分の各々にRS(リード・ソロモン)符号化を施すとともに、各情報部分に対応する複数のRS検査記号を生成するRS検査記号生成部と、元の情報記号とRS検査記号とを有する情報配列に複数のブロック符号化形式による誤り訂正符号化を施すとともに、複数のブロック符号化形式に対応する複数の形式の検査記号を生成する組み合わせ符号化部と、元の情報記号と、RS検査記号が複数のブロック符号化形式により誤り訂正符号化されて生成されたRS検査記号と、複数の形式の検査記号とを出力する出力部と、元の情報記号を組み合わせ符号化部に供給されるべき並びの順序と異なる順序に並べて、RS検査記号生成部に供給するインタリーブ部とを備え、組み合わせ符号化部による誤り訂正符号化は繰り返し復号が可能な形式であり、繰り返し復号による誤り訂正能力よりもRS検査記号による復号の誤り訂正能力が高くされているので、冗長度が小さい符号を用いて高い誤り訂正能力で効率的に誤り訂正することが可能となる。特に、組み合わせ符号化部は、複数のブロック符号化形式による誤り訂正符号化を施し、RS符号化もブロック符号化であるので、畳込み符号に比較して、符号の構成が簡単であり、並列処理などの迅速な処理が行いやすく、かつ符号化装置および復号装置を簡易に構成することが可能である。
【図面の簡単な説明】
【図1】 この発明の実施の形態1に係る符号化装置および復号装置で使用される2次元に配列された伝送データフォーマットを示す模式図である。
【図2】 図1の伝送データフォーマットを生成する実施の形態1に係る符号化装置を示すブロック図である。
【図3】 図1の伝送データフォーマットから元の情報記号を推定する実施の形態1に係る復号装置を示すブロック図である。
【図4】 図1の伝送データフォーマット上に存在することがある格子状に位置する複数の誤りを示す模式図である。
【図5】 この発明の実施の形態2に係る符号化装置を示すブロック図である。
【図6】 この発明の実施の形態2に係る符号化装置および復号装置で使用される2次元に配列された伝送データフォーマットを示す模式図である。
【図7】 実施の形態2に係る符号化装置および復号装置の動作を示す模式図である。
【図8】 この発明の実施の形態2に係る復号装置を示すブロック図である。
【図9】 この発明の実施の形態3に係る符号化装置および復号装置で使用される2次元に配列された伝送データフォーマットを示す模式図である。
【図10】 実施の形態3に係る符号化装置および復号装置の動作を示す模式図である。
【図11】 この発明の実施の形態5に係る復号装置を示すブロック図である。
【符号の説明】
1 ユーザデータ(元の情報記号)、2 水平方向BCH検査記号部、3 垂直方向BCH検査記号部、4 RS検査記号部、5 入力端子、6 RS符号化回路、7 水平方向BCH符号化回路、8 垂直方向BCH符号化回路、9 出力端子、10 入力端子、11,13,15,41,43,45 垂直方向BCH復号回路、12,14,16,42,44,46 水平方向BCH復号回路、17 RS復号回路、18 出力端子、20 格子状に位置する複数の誤り、21 インタリーブ回路、22 デインタリーブ回路、31 インタリーブ回路、32 デインタリーブ回路、40 軟判定更新回路、47 RS復号回路、A 組み合わせ符号化部、B 繰り返し復号部、B2 第2の繰り返し復号部。[0001]
BACKGROUND OF THE INVENTION
The present invention relates to an encoding device and a decoding device effective for error correction in digital transmission.
[0002]
[Prior art]
In order to correct an error in a digital transmission apparatus, a product code or a concatenated code in which block codes are two-dimensionally arranged is often used (for example, see Non-Patent Document 1).
For example, in product code encoding, each row of user data (information symbols) arranged in two dimensions is encoded with a horizontal linear code and a horizontal check symbol is generated, and then user data and Each column of check symbols in the horizontal direction is encoded with a vertical linear code and a check symbol in the vertical direction is generated. The minimum distance of the product code obtained by such encoding is the product of the minimum distance of the horizontal linear code and the minimum distance of the vertical linear code. Therefore, by combining linear codes with a small minimum distance, it is possible to obtain a product code with a large minimum distance as a result, thereby improving the error correction capability.
[0003]
In decoding of the product code, error correction is performed in the vertical direction based on the check symbol in the vertical direction, and error correction is performed in the horizontal direction on the basis of the check symbol in the horizontal direction. In the error correction in the subsequent horizontal direction, erasure correction can also be performed using detection information such that correction cannot be performed in the vertical error correction in the previous stage.
[0004]
Furthermore, the horizontal error correction result is corrected again in the vertical direction based on the vertical check symbol, and the error is corrected in the horizontal direction based on the horizontal check symbol. Iterative decoding is also already known in which residual errors are reduced by correction.
[0005]
On the other hand, as a technique similar to a product code, a combination of horizontal coding and diagonal coding has also been proposed (see, for example, Patent Document 1). In addition, the transmission source performs convolution encoding on the codes encoded in a plurality of different directions as described above, and the transmission destination performs maximum likelihood decoding using the convolutional code, and further performs the maximum likelihood decoding result. A method of performing decoding has also been proposed (see, for example, Patent Document 1).
[0006]
Furthermore, a technique is disclosed in which error correction coding is performed only on important data so as to have stronger error correction capability than unimportant data (see, for example, Patent Document 2). In the technique described in Patent Document 2, important data and unimportant data are separated, important data is encoded with an inner code, and the encoded result and unimportant data are combined and further encoded with an outer code. Get the sign.
[0007]
[Patent Document 1]
JP-A-1-228327
[Patent Document 2]
JP-A-7-162801
[Non-Patent Document 1]
Hideki Imai, "Code Theory", 4th edition, The Institute of Electronics, Information and Communication Engineers, June 1990, p. 229-245
[0008]
[Problems to be solved by the invention]
However, in the method using the general product code described in Non-Patent Document 1, if there are a plurality of errors located in a lattice pattern in the product code arranged in two dimensions, correction of these errors is performed. Is difficult. Even if such a product code having a lattice error is repeatedly decoded, if the decoding result is arranged two-dimensionally, there is a tendency that an error located in a lattice shape also occurs on the decoding result.
[0009]
In the technique described in Patent Document 1, a convolutional code is used in order to obtain a high error correction capability. However, the use of the convolutional code inevitably increases the length of the code block, which makes it long for data transmission and decoding. It takes time. Further, maximum likelihood decoding for the complex convolutional code described in Patent Document 1 requires a very large amount of calculation and storage, and is extremely difficult.
[0010]
With the technique described in Patent Document 2, it is possible for an decoder to perform error correction on important data with higher reliability than other data. However, it cannot be said that the error correction capability by the outer code is high when the error correction at the time of decoding the important data by the inner code fails, although the redundancy becomes higher with the concatenated encoding.
[0011]
The present invention has been made in order to solve the above-described problems, and provides an encoding device that can generate a code with a low redundancy that can be efficiently corrected by a decoding device with high error correction capability. The purpose is to obtain.
[0012]
Another object of the present invention is to provide a decoding apparatus capable of efficiently correcting errors with high error correction capability using a code with low redundancy. And
[0013]
[Means for Solving the Problems]
  The encoding apparatus according to the present invention performs RS (Reed-Solomon) encoding on each of a plurality of information parts obtained by regularly dividing the original information symbol, and a plurality of RSs corresponding to each information part. An RS check symbol generation unit for generating a check symbol, and an information array having an original information symbol and an RS check symbol are subjected to error correction encoding using a plurality of block encoding formats, and correspond to a plurality of block encoding formats A combination coding unit that generates a plurality of check symbols, an original information symbol, an RS check symbol generated by error correction coding of the RS check symbol in a plurality of block coding formats, and a plurality of formats An output unit for outputting a test symbol;An interleaving unit that arranges the original information symbols in an order different from the order of the sequences to be supplied to the combination encoding unit and supplies the information symbols to the RS check symbol generation unit;The error correction coding by the combination coding unit is a format that enables iterative decoding, and the error correction capability of decoding by RS check symbols is higher than the error correction capability by iterative decoding.
[0014]
DETAILED DESCRIPTION OF THE INVENTION
Embodiment 1 FIG.
FIG. 1 shows a two-dimensionally arranged transmission data format used in the encoding apparatus and decoding apparatus according to Embodiment 1 of the present invention. As shown in FIG. 1, this transmission data format includes user data (original information symbol) 1, horizontal BCH (Bose-Chaudhuri-Hocquenghem) check symbol portion 2, vertical BCH check symbol portion 3, RS (Reed-Solomon) It has an inspection symbol part 4.
[0015]
FIG. 2 shows an encoding apparatus according to Embodiment 1 that generates the transmission data format of FIG. As shown in FIG. 2, the encoding device includes an input terminal 5, an RS encoding circuit (RS check symbol generation unit) 6, a combination encoding unit A, and an output terminal (output unit) 9. The combination encoding unit A includes a horizontal BCH encoding circuit 7 and a vertical BCH encoding circuit 8.
[0016]
User data 1 which is an original information symbol is input to the input terminal 5, and the user data 1 is supplied from the input terminal 5 to the RS encoding circuit 6. As shown in FIG. 1, the user data 1 has a horizontal symbol number (number of columns) of k.1And the number of vertical symbols (number of rows) is k2Can be understood as a two-dimensional array. In this embodiment, it is assumed that the order of regular data is arranged along a vertical column and proceeds to the beginning of the next column after the end of each column. Is not intended to limit. From the input terminal 5, k constituting the information portion of each column (vertical direction)2K constituting the information part of the next column with a time interval after the bits are supplied to the RS encoding circuit 6 at once2The number of bits may be supplied to the RS encoding circuit 6 at a time. Or the bit which comprises the information part of each row | line | column may be supplied to RS encoding circuit 6 for every one time or every several time intervals.
[0017]
The RS encoding circuit 6 constitutes the information portion of each row of the user data 1 when it is assumed that the RS encoding circuit 6 is arranged in two dimensions.1The bits are read in the horizontal direction (horizontal processing direction in FIG. 1), and RS coding is performed on the information portion of each row, and an RS check symbol corresponding to the information portion of each row is generated. Therefore, k equal to the number of rows2RS check symbols are obtained.
[0018]
The original user data 1 is also supplied to the horizontal BCH encoding circuit 7. Thereafter, the RS check symbol generated by the RS encoding circuit 6 is also supplied to the horizontal BCH encoding circuit 7. The horizontal BCH encoding circuit 7 configures an information portion of one row in a format in which an information portion of each row (horizontal direction) of the user data 1 is associated with an RS check symbol generated based on the information portion. k1A row consisting of a number of bits and an RS check symbol is read in the horizontal direction (horizontal processing direction in FIG. 1) as one encoding target, and BCH encoding in the horizontal direction is applied to this row, and the horizontal corresponding to this row is also read. A direction BCH check symbol is generated. Therefore, the horizontal BCH encoding circuit 72Rows, k2K using the BCH codes and resulting from the encoding2Horizontal BCH check symbols (length is n1-K1-K3Is). The horizontal direction BCH check symbol part 2 has these k2A set of horizontal BCH check symbols.
[0019]
The horizontal BCH encoding circuit 7 includes the original user data 1 and the RS check symbol code (length k) BCH encoded in the horizontal direction.3× Number of rows k2) Is supplied to the vertical BCH encoding circuit 8 in accordance with the order of regular data. Thereafter, the horizontal BCH check symbol generated by the horizontal BCH encoding circuit 7 is also supplied to the vertical BCH encoding circuit 8 in accordance with the order of regular data arrangement. The vertical BCH encoding circuit 8 performs k of each column.2One bit is read in the vertical direction (vertical processing direction in FIG. 1) as one encoding target, and BCH encoding in the vertical direction is performed on this column, and a vertical BCH check symbol corresponding to this column is generated. . Therefore, the vertical direction BCH encoding circuit 8 has n1N columns1N using the BCH codes, and n resulting from the encoding1Vertical BCH check symbols (length is n2-K2Is). The vertical direction BCH check symbol part 3 has these n1A set of vertical BCH check symbols.
[0020]
In this way, the horizontal BCH check symbol part 2, the vertical BCH check symbol part 3 and the RS check symbol part 4 shown in FIG. 1 are obtained. Among these, the RS check symbol unit 4 is a set of codes generated by performing BCH encoding (that is, BCH product encoding) in the horizontal direction and the vertical direction on the RS check symbol generated by the RS encoding circuit 6. Also, since the horizontal BCH check symbol is also BCH encoded in the vertical direction, the horizontal BCH check symbol portion 2 shown in FIG. 1 is actually a set of horizontal BCH check symbols that are BCH encoded in the vertical direction. .
[0021]
The vertical BCH encoding circuit 8 outputs the original user data 1, the RS check symbol part 4, the horizontal BCH check symbol part 2, and the vertical BCH check symbol part 3 that are not encoded at all to the output terminal 9. This output also proceeds along the vertical columns in accordance with the above-described regular data arrangement sequence, and proceeds to the beginning of the next column after the end of each column. Accordingly, each column of the user data 1 and each column of the vertical BCH check symbol portion 3 corresponding to the column are output first, and then each column of the RS check symbol portion 4 and the vertical direction BCH check symbol corresponding to the column. Each column of the unit 3 is output, and finally each column of the horizontal BCH check symbol unit 2 and each column of the vertical BCH check symbol unit 3 corresponding to the column are output. Thus, the transmission data format of FIG. 1 is realized, and the output terminal 9 also outputs the bits constituting the transmission data format to the outside according to the above order.
[0022]
This transmission data format is a product code using a BCH code, and further improves the error correction capability of user data by adding an RS code check symbol to user data 1. Therefore, decoding can be performed based on the vertical direction BCH check symbol unit 3, and then decoding can be performed based on the horizontal direction BCH check symbol unit 2 using the decoding result. Thereafter, it is possible to perform iterative decoding in which the decoding in one format is continued while using the decoding result in the other format in the vertical direction and the horizontal direction. After decoding based on the horizontal BCH check symbol part 2, decoding based on the RS check symbol can improve error correction capability.
[0023]
That is, with regard to this transmission data format, the error correction capability of decoding using RS check symbols is higher than the error correction capability of iterative decoding. Specifically, this implementation is performed so that the error correction capability of decoding based on the RS check symbol is higher than the error correction capability of decoding performed immediately before (for example, decoding based on the horizontal BCH check symbol unit 2). The minimum distance guaranteed by the RS code selected for the form is greater than the minimum distance guaranteed by the BCH code (eg, horizontal) used in the previous decoding. For this reason, as will be described later, the error correction capability is particularly improved with respect to a plurality of errors located in a grid pattern in the user data 1 that is assumed to be two-dimensionally arranged.
[0024]
FIG. 3 shows an example of a decoding apparatus that estimates the original user data 1 from the transmission data format of FIG. As illustrated in FIG. 3, the decoding device includes an input terminal 10 to which the received information series is input, an iterative decoding unit B, an RS decoding circuit 17, and an output terminal 18. The iterative decoding unit B decodes the received information sequence conforming to the transmission data format in a decoding format corresponding to the vertical BCH code used by the encoding device, and the horizontal BCH used by the encoding device. Repeat decoding in a decoding format corresponding to the code. For this purpose, the iterative decoding unit B includes alternately arranged vertical BCH decoding circuits and horizontal BCH decoding circuits, and the decoding result of the one-way decoding circuit is input to the decoding circuit in the other direction. It has become so.
[0025]
Each of the vertical BCH decoding circuits 11, 13, and 15 performs error correction of the information sequence based on the vertical BCH check symbol unit 3, and each of the horizontal BCH decoding circuits 12, 14, and 16 Based on the symbol part 2, error correction of the information series is performed. The decoding result output from the horizontal BCH decoding circuit 16 at the final stage of the iterative decoding unit B is input to the RS decoding circuit 17. The RS decoding circuit 17 performs error correction by the decoding method of the RS code on the decoding result of the iterative decoding unit B based on the RS check symbol unit 4, and the error correction result (corresponding to the user data 1). The final error correction result, that is, the estimation result is output to the output terminal 18.
[0026]
First, from the input terminal 10, n constituting the information portion of each column in the transmission data format of FIG.2Bits are input to the first vertical BCH decoding circuit 11 at a time, and the vertical BCH decoding circuit 11 reads the column in accordance with the vertical processing direction of FIG.2-K2Based on the number of vertical BCH check symbols, error correction of the column is performed. The vertical BCH decoding circuit 11 may handle one column at a time, or a plurality of columns may be simultaneously input from the input terminal 10 to the vertical BCH decoding circuit 11 and subjected to error correction by parallel processing. By decoding by the vertical BCH decoding circuit 11, at least a part of errors included in the user data 1, the RS check symbol part 4 and the horizontal BCH check symbol part 2 is corrected. That is, the error bit is replaced with the correct bit in the transmission data format.
[0027]
The result of this error correction, that is, the transmission data format in which the error bits are corrected is supplied from the vertical BCH decoding circuit 11 to the horizontal BCH decoding circuit 12. In this case, n constituting the information part of each row1Bits are input to the horizontal BCH decoding circuit 12 at a time, and the horizontal BCH decoding circuit 12 reads the column according to the horizontal processing direction of FIG. 1, and based on the horizontal BCH check symbol included in the row, Perform line error correction. The horizontal BCH decoding circuit 12 may handle one row at a time, or a plurality of rows may be simultaneously input from the vertical BCH decoding circuit 11 to the horizontal BCH decoding circuit 12 and error correction may be performed by parallel processing. In the error correction in the horizontal BCH decoding circuit 12, it is possible to perform erasure correction of bits based on the correction status in the vertical BCH decoding circuit 11. When the vertical BCH check symbol part 3 is configured on the same body as the horizontal BCH check symbol part 2, each horizontal row of the vertical BCH check symbol part 3 is also a horizontal BCH code. N at the end1-K1-K3The bits can be regarded as a horizontal BCH check symbol for the row. Therefore, the vertical BCH check symbol unit 3 can be corrected by the horizontal BCH decoding circuit 12 using the horizontal BCH check symbol by the same decoding method as that for other rows.
[0028]
The result of error correction by the horizontal BCH decoding circuit 12, that is, the transmission data format in which error bits are corrected, is similar to the vertical BCH decoding circuit 11 in that the information sequence is errored vertically based on the vertical BCH check symbol unit 3. This is supplied to the vertical BCH decoding circuit 13 to be corrected. There is a possibility that the error remaining in the horizontal BCH decoding circuit 12 can be corrected by correcting the error again in the vertical BCH decoding circuit 13. Further, in the error correction in the vertical BCH decoding circuit 13, it is possible to perform erasure correction of bits based on the correction status in the horizontal BCH decoding circuit 12.
[0029]
In the same manner, the horizontal BCH decoding circuit 14 in the horizontal direction, the vertical BCH decoding circuit 15 in the vertical direction, and the horizontal BCH decoding circuit 16 in the horizontal direction are in error with respect to the error correction result of the preceding decoding circuit. Make corrections. By alternately repeating different types of decoding in this manner, errors that cannot be corrected by a single error correction can be corrected.
[0030]
However, with only the above iterative decoding, it is difficult to correct a plurality of errors 20 located in a lattice shape illustrated in FIG. Here, “located in a grid pattern” means that a plurality of errors existing in one row in a format assumed to be two-dimensionally arranged and a plurality of errors existing in other rows are on the same plurality of columns. Is to exist. The error 20 located in a lattice shape may be included in the transmission data format from the beginning of reception, or may be caused by erroneous correction during the repeated decoding. Even if such a code having the error 20 located in a lattice is repeatedly decoded, a plurality of errors located in a lattice also tend to occur on the decoding result assumed to be arranged in two dimensions. In particular, if there is an error located in a grid pattern in the error correction result output from the last-stage vertical BCH decoding circuit (for example, the circuit 15) in the iterative decoding unit B, the final horizontal BCH decoding is performed. A circuit (for example, the circuit 16) cannot perform erasure correction. In some cases, the number of correctable errors corresponding to the minimum distance guaranteed by the horizontal decoding based on the horizontal BCH check symbol unit 2 is the actual number of errors. Error correction may be impossible.
[0031]
Therefore, in this embodiment, the RS decoding circuit 17 further decodes the decoding result of the iterative decoding unit B. The RS decoding circuit 17 constitutes the information portion of each row of the estimated user data 11Bits and the corresponding k3An RS check symbol consisting of a number of bits is read in the horizontal direction (horizontal processing direction in FIG. 1), and based on these, error estimation of the original user data 1 is further performed.
[0032]
As described above, this implementation is performed so that the error correction capability of decoding based on the RS check symbol is higher than the error correction capability of decoding performed immediately before (for example, decoding based on the horizontal BCH check symbol portion 2). The minimum distance guaranteed by the RS code selected for the form is greater than the minimum distance guaranteed by the BCH code (eg, horizontal) used in the previous decoding. Therefore, even if there are a plurality of errors 20 located in a lattice pattern in the error correction result output from the horizontal BCH decoding circuit (for example, the circuit 16) at the final stage of the iterative decoding unit B, it is guaranteed by the RS code. These errors can be corrected based on a minimum distance.
[0033]
Note that the final horizontal BCH decoding circuit (for example, the circuit 16) of the iterative decoding unit B may perform only error position detection and no error correction. In this case, while verifying the determination of the error position finally detected by the iterative decoding unit B, the RS decoding circuit 17 performs the second-stage vertical BCH decoding circuit (from the last in the iterative decoding unit B ( For example, an error can be corrected by decoding the error correction result output from the circuit 15).
[0034]
As described above, according to the first embodiment, the encoding apparatus performs RS encoding on each of a plurality of information parts obtained by dividing original user data 1 into a plurality of lines, and each information part. RS encoding circuit 6 for generating a plurality of RS check symbols corresponding to, and an error correction using a plurality of BCH encoding formats in an information array in which each information portion and the RS check symbol corresponding thereto are arranged in association with each other Combined encoding section A that performs encoding and generates a plurality of check symbols corresponding to a plurality of BCH encoding formats, and original user data 1 and RS check symbols are error-corrected by a plurality of BCH encoding formats An RS check symbol unit 4 generated by encoding, an output unit that outputs a horizontal BCH check symbol unit 2 and a vertical BCH check symbol unit 3 are provided. The error correction coding by the combination coding unit A is a format that can be iteratively decoded, and the error correction capability of decoding using RS check symbols is higher than the error correction capability of iterative decoding. Since the RS check symbol does not cause a significant increase in redundancy, and the combination coding in a form that can be iteratively decoded does not cause a significant increase in redundancy, the encoding device can generate a code with a small redundancy. . The decoding apparatus corrects errors generated on the transmission path as much as possible by iterative decoding of the iterative decoding unit B, and has a high error correction capability for errors remaining in the correction result, for example, a plurality of errors 20 located in a lattice shape. Since the RS decoding circuit 17 can correct by decoding with the RS check symbol, the decoding apparatus can efficiently correct the error with high error correction capability.
[0035]
The horizontal direction BCH encoding circuit 7 and the horizontal direction BCH decoding circuits 12, 14, 16 and the RS encoding circuit 6 and the RS decoding circuit 17 receive the next column after the information portion of one column (vertical direction) is input. 1 are input, while these process the information portion of each row (horizontal direction) in the horizontal direction, so that a plurality of bit sequences corresponding to the plurality of rows in FIG. It is efficient to design for processing. If designed in this way, bits in one column extending over a plurality of rows are output simultaneously or within a short period from these circuits, so that the subsequent vertical BCH encoding circuit 8 and vertical BCH decoding circuit 11, 13 and 15 can easily pipeline the bits in one column. If designed as described above, it is possible to further contribute to speeding up the processing.
[0036]
Embodiment 2. FIG.
In the first embodiment, the RS encoding circuit 6 and the RS decoding circuit 17 are similar to the horizontal BCH encoding circuit 7 and the horizontal BCH decoding circuits 12, 14, 16 in each row in the horizontal processing direction of FIG. Is read and processed. Accordingly, the individual RS check symbols in the RS check symbol portion 4 are BCH-coded in the horizontal direction together with the information portion of the same row from which they are created, and similarly decoded together. On the other hand, in the second embodiment described below, the RS coding direction is made different from the horizontal BCH coding direction, so that the individual RS check symbols in the transmission data format and the information part in the same row And the error correction capability in decoding is further enhanced.
[0037]
FIG. 5 shows an encoding apparatus according to Embodiment 2 of the present invention. This encoding device includes an interleave circuit 21 and a deinterleave circuit 22 in addition to the same components as those of the encoding device (FIG. 2) according to the first embodiment. In FIG. 5, the same reference numerals are used to indicate the same components as in FIG. 2, and the description will be simplified. The interleave circuit 21 is arranged in the preceding stage of the RS encoding circuit 6 and is different from the normal sequence order (the sequence order input from the input terminal 5) to be supplied to the combination encoding unit A with the original user data. Arranged in order and supplied to the RS encoding circuit 6. The deinterleaving circuit 22 is arranged at the subsequent stage of the RS encoding circuit 6, and the user data rearranged by the interleaving circuit 21 and a plurality of RS check symbols generated by the RS encoding circuit 6 are stored in the deinterleaving circuit 22. Supplied. The deinterleaving circuit 22 returns the user data supplied from the interleaving circuit 21 to the user data 1 in the normal order, and supplies the user data 1 to the horizontal BCH encoding circuit 7 of the combination encoding unit A. Thereafter, the RS check symbol generated by the RS encoding circuit 6 is supplied to the horizontal BCH encoding circuit 7.
[0038]
A specific operation of the encoding apparatus will be described in detail with reference to FIGS. 6 and 7. In FIG. 6, R1, R2, R3, R4... indicates an RS check symbol (not BCH product encoded) generated by the RS encoding circuit 6. R11, R12, R13, R14... RS check symbol R1, R2, R3, R4Indicates the bit string required to generate. The length of each bit string may be one or more. Of these bit strings, bit string r11, R12, R13, R14... r1nAre subject to the same RS encoding and RS check symbol R1Is used to generate a bit string r21, R22, R23... is the target of other RS coding and RS check symbol R2Used to generate That is, in this embodiment, in the original user data 1 that is assumed to be two-dimensionally arranged, one check symbol is generated from a plurality of bit strings arranged substantially obliquely. Same RS inspection symbol R1A bit string r that generates11, R12, R13, R14... r1nIn the original user data 1 that is assumed to be arranged in two dimensions, the bit string r11, R12, R13, R14... exist in different columns, and adjacent bit strings (for example, bit string r)11, R12) Includes bits in different rows.
[0039]
In this way, the bit string r arranged in a direction different from the horizontal processing direction11, R12, R13, R14... r21, R22, R23From RS inspection symbol R1, R2, R3, R4.. Are easily generated, the interleave circuit 21 generates a bit string (for example, bit string r) to be subjected to the same RS encoding from the user data 1 in the regular sequence as shown in FIG.11, R12, R13, R14... r1n) Is repeated, and the user data 1 is rearranged so as to be suitable for encoding by the RS encoding circuit 6. In other words, the same bit string (for example, bit string r) subject to RS encoding11, R12, R13, R14... r1n) On a line. Then, the RS encoding circuit 6 performs RS encoding on the bit string of each row and also performs an RS check symbol R1, R2, R3, R4... is generated. In this way, the bit string r11, R12, R13, R14... r1nTo RS inspection symbol R1Is generated and the bit string r21, R22, R23... r2nTo other RS inspection symbol R2Is generated.
[0040]
The deinterleaving circuit 22 returns the user data rearranged by the interleaving circuit 21 to the normal arrangement order, and the user data 1 in the normal arrangement order is sent to the horizontal BCH encoding circuit 7 of the combination encoding unit A. After that, the RS check symbol generated by the RS encoding circuit 6 is supplied to the horizontal BCH encoding circuit 7.
[0041]
The horizontal BCH encoding circuit 7 receives the information part of each row (horizontal direction) of the user data 1 in the normal sequence received from the deinterleave circuit 22 and the RS check symbol R.1, R2, R3, R4K constitutes the information part of one line in a format in which ... is associated1A row consisting of a number of bits and an RS check symbol is read in the horizontal direction (horizontal processing direction in FIG. 6) as one encoding target, and BCH encoding in the horizontal direction is applied to this row, and the horizontal corresponding to this row is also read. A direction BCH check symbol is generated. Therefore, in the original user data 1 that is assumed to be arranged two-dimensionally, a bit string (for example, bit string r) arranged almost diagonally.11, R12, R13, R14... r1n) Generated from one RS check symbol (for example, RS check symbol R)1) Are subject to BCH encoding in the horizontal direction along with the information part in the same row.
[0042]
Similarly to the first embodiment, the vertical direction BCH encoding circuit 8 uses the bits in each column (vertical direction) in the format assumed to be two-dimensionally arranged as one encoding target in the vertical direction (see FIG. 6 vertical processing directions), BCH encoding in the vertical direction is applied to this column, and a vertical BCH check symbol corresponding to this column is generated. One RS inspection symbol (for example, RS inspection symbol R1) Used to create the bit string (eg, bit string r)11, R12, R13, R14... r1n) Will be on different columns and will contribute to the generation of different vertical BCH check symbols.
[0043]
FIG. 8 shows a decoding apparatus according to the second embodiment. This decoding apparatus includes an interleave circuit 31 and a deinterleave circuit 32 in addition to the same components as those of the decoding apparatus (FIG. 3) according to the first embodiment. In FIG. 8, the same reference numerals are used to indicate the same components as in FIG. 3, and the description will be simplified. The interleave circuit 31 is arranged between the iterative decoding unit B and the RS decoding circuit 17, and arranges information symbols corresponding to the original user data 1 among the decoding results by the iterative decoding unit B in the decoding result by the iterative decoding unit B. These are arranged in an order different from the order of and are supplied to the RS decoding unit 17.
[0044]
Specifically, the information sequence of the decoding result in the format shown in FIG. 6 is supplied from the iterative decoding unit B to the interleave circuit 31. In the information sequence of this decoding result, the RS check symbol R in the previous stage of the BCH product encoding is performed by the horizontal BCH decoding circuits 12, 14, and 16.1, R2, R3, R4... is estimated. Similar to the interleaving circuit 21 of the above encoding apparatus, as shown in FIG. 7, the interleaving circuit 31 starts from the information symbol (corresponding to the user data 1) in the normal sequence and is subjected to the same RS encoding target bit string ( For example, bit string r11, R12, R13, R14... r1n) Are repeated, and the information symbols are rearranged so as to be suitable for decoding by the RS decoding circuit 17. That is, a bit string (for example, bit string r) subjected to the same RS encoding.11, R12, R13, R14... r1n) On a line. Then, the RS decoding circuit 17 performs a bit string (for example, bit string r) in each row.11, R12, R13, R14... r1n) And RS inspection symbol (for example, RS inspection symbol R)1) To estimate the error of the bit string.
[0045]
The deinterleave circuit 32 is arranged at the subsequent stage of the RS decoding circuit 17 and returns the information symbols corresponding to the original user data 1 among the decoding results by the RS decoding circuit 17 to the order of arrangement in the decoding results by the iterative decoding unit B. This is output to the output terminal 18 as a final error correction result, that is, an estimation result.
[0046]
As described above, according to the second embodiment, as in the first embodiment, the encoding device can generate a code with a small redundancy, and the decoding device uses the error correction result of the iterative decoding unit B. Error, for example, a plurality of errors 20 located in a lattice pattern can be corrected by the RS decoding circuit 17 by decoding with an RS check symbol having a high error correction capability, so that the decoding apparatus can efficiently perform with a high error correction capability. It is possible to correct errors.
[0047]
Further, according to the second embodiment, the encoding apparatus arranges the original user data 1 in an order different from the order of the sequences to be supplied to the combination encoding unit A, and supplies it to the RS encoding circuit 6. A circuit 21 is provided. Further, the decoding apparatus arranges information symbols corresponding to the original user data 1 among the decoding results obtained by the iterative decoding unit B in an order different from the arrangement order of the decoding results by the iterative decoding unit B, and supplies the information symbols to the RS decoding circuit 17. And a deinterleaving circuit 32 that returns the information symbols corresponding to the original user data 1 among the decoding results obtained by the RS decoding circuit 17 to the order of arrangement in the decoding results obtained by the repeated decoding unit B. Therefore, by making the RS encoding direction different from the encoding direction in the combination encoding unit A (horizontal direction BCH encoding direction in the embodiment), individual RS check symbols in the transmission data format, and this There is a possibility that the error correction capability in decoding can be further enhanced by weakening the correlation with the information part encoded and decoded together with the RS check symbol.
[0048]
This effect will be described in more detail. As shown in FIG. 6, it is assumed that some errors among a plurality of errors 20 located in a lattice form exist in the RS check symbol part 4. In the first embodiment, each RS check symbol in the RS check symbol portion 4 is BCH-coded in the horizontal direction together with the information portion of the same row from which the RS is generated, and similarly decoded together. . Therefore, if there is an error in the same row of the user data 1 and the RS check symbol part 4 at the stage when the decoding apparatus receives the transmission format or in the middle of the iterative decoding part B, there is a possibility that the error cannot be corrected. On the other hand, in Embodiment 2, the information part of the same row in which individual RS check symbols are encoded and decoded together does not have a close relationship with the RS check symbol due to the effect of interleaving. Therefore, even if there is an error in the same row of the user data 1 and the RS check symbol unit 4 at the stage when the decoding apparatus receives the transmission format or in the middle of the iterative decoding unit B, the RS check symbol (for example, RS check symbol R1) Is decoded from the interleaved bit string (bit string r11, R12, R13, R14... r1nTherefore, there is a possibility that the error correction capability can be improved. As described above in connection with the first embodiment, the final horizontal BCH decoding circuit (for example, circuit 16) of the iterative decoding unit B performs only error position detection, and the RS decoding circuit 17 performs iterative decoding. It is further preferable to correct the error while verifying the judgment of the error position finally detected by the part B.
[0049]
Embodiment 3 FIG.
The interleaving method described above in connection with the second embodiment may be modified as in the third embodiment. Also in the third embodiment, the encoding device of FIG. 5 and the decoding device of FIG. 8 are used.
[0050]
A specific operation of the encoding apparatus will be described in detail with reference to FIGS. 9 and 10. In FIG. 9, r1, R2, R3, R4... are RS inspection symbols R1, R2, R3, R4Indicates the bit string required to generate. That is, the bit string r1Are subject to the same RS encoding and RS check symbol R1Is used to generate a bit string r2Becomes the target of other RS coding and RS check symbol R2Used to generate That is, in this embodiment, in the original user data 1 that is assumed to be two-dimensionally arranged, one check symbol is generated from one bit string arranged in the vertical direction.
[0051]
In this way, the bit string r arranged in a direction different from the horizontal processing direction1, R2, R3, R4From RS inspection symbol R1, R2, R3, R4.. Are easily generated, the interleave circuit 21 generates each bit string r from the user data 1 in the normal sequence as shown in FIG.1, R2, R3, R4Are extracted so that the user data 1 is rearranged so as to be suitable for encoding by the RS encoding circuit 6. That is, each bit string is arranged in one line. Then, the RS encoding circuit 6 performs RS encoding on the bit string of each row and also performs an RS check symbol R1, R2, R3, R4... is generated. In this way, the bit string r1, R2, R3, R4From RS inspection symbol R1, R2, R3, R4... are generated respectively. Therefore, in the horizontal BCH encoding circuit 7, a bit string (for example, bit string r) arranged in the vertical direction in the original user data 1 that is assumed to be two-dimensionally arranged.1) Generated from one RS check symbol (for example, RS check symbol R)1) Are subject to BCH encoding in the horizontal direction along with the information part in the same row.
[0052]
Similarly to the first and second embodiments, the vertical BCH encoding circuit 8 encodes the bits in each column (vertical direction) in the format assumed to be two-dimensionally arrayed once. Are read in the vertical direction (vertical processing direction in FIG. 9), the vertical BCH coding is applied to this column, and a vertical BCH check symbol corresponding to this column is generated. One RS inspection symbol (for example, RS inspection symbol R1) Used to create the bit string (eg, bit string r)1) On the same column will contribute to the generation of the same vertical BCH check symbol.
[0053]
On the other hand, in the decoding device, the iterative decoding unit B supplies the information sequence of the decoding result in the format shown in FIG. In the information sequence of this decoding result, the RS check symbol R in the previous stage of the BCH product encoding is performed by the horizontal BCH decoding circuits 12, 14, and 16.1, R2, R3, R4... is estimated. Similar to the interleave circuit 21 of the above encoding apparatus, as shown in FIG. 10, the interleave circuit 31 generates each bit string r from the information symbol (corresponding to the user data 1) in the normal sequence.1, R2, R3, R4.. Are repeated, and the information symbols are rearranged so as to be suitable for decoding by the RS decoding circuit 17. That is, each bit string is arranged in one line. Then, the RS decoding circuit 17 performs a bit string (for example, bit string r) in each row.1) And RS inspection symbol (for example, RS inspection symbol R)1) To estimate the error of the bit string. Also in the third embodiment, the information part of the same row in which individual RS check symbols are encoded / decoded together does not have a close relationship with the RS check symbol due to the effect of interleaving. Therefore, even if there is an error in the same row of the user data 1 and the RS check symbol unit 4 at the stage when the decoding apparatus receives the transmission format or in the middle of the iterative decoding unit B, the RS check symbol (for example, RS check symbol R1) Is decoded from the interleaved bit string (bit string r1Therefore, there is a possibility that the error correction capability can be improved. The deinterleave circuit 32 returns the information symbols corresponding to the original user data 1 among the decoding results obtained by the RS decoding circuit 17 to the order of arrangement in the decoding results obtained by the iterative decoding unit B, and this is the final error correction result. That is, it outputs to the output terminal 18 as an estimation result.
[0054]
As described above, also in this third embodiment, transmission is performed by making the RS encoding direction different from the encoding direction in combination encoding section A (in the embodiment, the direction of horizontal BCH encoding). There is a possibility that the error correction capability in decoding can be further enhanced by weakening the correlation between individual RS check symbols in the data format and the information parts encoded and decoded together with the RS check symbols.
[0055]
Embodiment 4 FIG.
In the decoding apparatus according to the first to third embodiments, the information sequence may be hard-input from the input terminal 10 to the iterative decoding unit B, and the iterative decoding unit B may perform hard decision decoding. However, as in the fourth embodiment described below, the iterative decoding unit B may perform soft decision decoding to further enhance the correction capability.
[0056]
Regarding soft decision decoding, for example, Masashi Akita, 6 others, “Third Generation FEC Employing Turbo Product Code for Long” -Haul DWDM Transmission Systems ")," OFC 2002 "(" Optical Fiber Communication Conference 2002 "), (USA), Optical Society of America, March 2002, p. 289-290. The iterative decoding apparatus for turbo product codes described in this document can be used as the iterative decoding unit B of the decoding apparatus according to the present invention.
[0057]
In the technique disclosed in this document, a soft decision is performed by a decoder at each stage of a turbo product code iterative decoding apparatus. The turbo product code used here is a product code of a BCH code. Assume that a decoder at a certain stage is a decoder at the m-th stage (m is 1 or more and any integer less than or equal to the total number of decoders of the iterative decoder). In the preceding stage of the m-th stage decoder, the k-th channel value r of the turbo product codekIs the m-th stage decryption target data w(M) kThe soft input value y, which is the total valuekGet. And the soft input value ykAre input to a SISO (soft input / soft output) decoder. This SISO decoder uses a soft input value ykA number of codeword component candidates {Cj} And the log-likelihood ratio L for these candidateskIs calculated according to equation (1).
[0058]
[Expression 1]
Figure 0004202161
Where Cj 1Is a codeword candidate whose bit at the k-th position is 1, and Cj 0Is a codeword candidate whose bit at the k-th position is 0, and p (Y | C) is a Gaussian transition probability.
[0059]
Value of channel k of turbo product code rkIs the log likelihood ratio LkThe log likelihood ratio L calculated by the decoder after being delayed by the delay line while calculatingkIs subtracted from the subtractor. This subtraction result is multiplied by an optimum weight coefficient by a multiplier. The result of multiplication is the decoding target data w of the decoder at the next stage (stage m + 1).(M + 1) kIn the preceding stage of the (m + 1) -th stage decoder, the k-th channel value r of the turbo product codekIs the decoding target data w in the (m + 1) th stage(M + 1) kThe soft input value y, which is the total valuekGet. In this manner, iterative decoding is realized in which the decoder at the next stage performs soft decision decoding based on the decoding result of the decoder at a certain stage. And the log likelihood ratio L calculated by the decoder at the final stagekThe information sequence input to the decoding device is estimated.
[0060]
The above iterative decoding apparatus may be used as the iterative decoding unit B of any decoding apparatus according to the first to third embodiments. That is, the BCH decoding circuits 11 to 16 in the first to third embodiments are replaced with the SISO decoders in the respective stages, and the adder, subtracter, delay line, and multiplier are replaced with the decoders. It may be accompanied. Based on the soft decision decoding result of the iterative decoding unit B, the RS decoding circuit 17 performs hard decision decoding, and outputs the decoding result to the output terminal 18 as a final error correction result, that is, an estimation result. In this way, it is possible to further enhance the correction capability by performing iterative decoding of the BCH product code with soft input / soft output.
[0061]
Further, the iterative decoding unit B of the fourth embodiment may perform soft decision decoding until halfway of iterative decoding, and finally perform hard decision decoding on the soft decision decoding result. Specifically, for example, the BCH decoding circuits 11 to 14 in the iterative decoding unit B are the above-described SISO decoders, and the BCH decoding circuits 15 and 16 in the final stage and the vicinity thereof are hard decision decoders with a simple configuration. In addition, the BCH decoding circuits 15 and 16 may decode the information series with a hard decision based on the soft decision decoding result of the horizontal BCH decoding circuit 14. However, up to which stage soft decision decoding is performed and where hard decision decoding is performed are arbitrary. For example, the BCH decoding circuits 11 to 15 are the above-described SISO decoders, and only the final stage BCH decoding circuit 16 is a hard decision decoder. Also good.
[0062]
In this way, by using the BCH decoding circuit at the final stage (and possibly in the vicinity thereof) as a hard decision decoder, the number of residual random errors in soft decision decoding can be clearly grasped by the hard decision decoder. is there. The number of random errors is supplied to the RS decoding circuit 17, and the RS decoding circuit 17 can correct the error more accurately with reference to the number of random errors.
[0063]
Embodiment 5 FIG.
In the third embodiment, the RS decoding circuit 17 performs hard decision decoding based on the soft decision decoding result of the iterative decoding unit B, and the hard decision decoding result of the RS decoding circuit 17 is used as a final error correction result, that is, an estimation result. Output to the output terminal 18. On the other hand, in the fifth embodiment described below, the soft decision decoding result of the iterative decoding unit B is corrected based on the error correction result or error detection result of the RS decoding circuit 17, and soft decision decoding is performed again.
[0064]
FIG. 11 shows a decoding apparatus according to Embodiment 5 of the present invention. This decoding apparatus includes a soft decision update circuit 40 and a second iterative decoding unit B2 in addition to the same components as the decoding apparatus (FIG. 3) according to the first embodiment. In FIG. 11, the same reference numerals are used to indicate the same components as in FIG. 5, and the description will be simplified. This decoding apparatus decodes and corrects errors in the transmission data format of the BCH product code by the encoding apparatus (FIG. 2) according to the first embodiment. In this embodiment, the iterative decoding unit B outputs the soft decision decoding result as described above in connection with the fourth embodiment. On the other hand, the RS decoding unit 17 performs error correction or error detection on the soft decision decoding result of the iterative decoding unit B by hard decision decoding, but the output result of the RS decoding circuit 17 is a final error. It is not output as a correction result.
[0065]
The soft decision decoding result of the iterative decoding unit B and the error correction number or the error detection state by the RS decoding circuit 17 are supplied to the soft decision updating circuit 40. The soft decision update circuit 40 corrects the soft decision decoding result of the iterative decoding unit B based on the number of error corrections or error detection states by the RS decoding circuit 17. The soft decision decoding result corrected by the soft decision update circuit 40 is supplied to the second iterative decoding unit B2.
[0066]
Similar to the iterative decoding unit B, the second iterative decoding unit B2 includes vertical BCH decoding circuits 41, 43, and 45 and horizontal BCH decoding circuits 42, 44, and 46 that are alternately arranged. Similarly to the decoding circuits 11 to 16 of the iterative decoding unit B, the decoding circuits 41 to 46 of the second iterative decoding unit B2 can decode the information sequence in a decoding format corresponding to the vertical or horizontal BCH code. Further, it is possible to perform soft decision decoding similarly to the decoding circuits 11 to 16 of the iterative decoding unit B of the fourth embodiment. Therefore, like the iterative decoding unit B, the second iterative decoding unit B2 can perform iterative decoding by soft decision. However, the second iterative decoding unit B2 may perform soft-decision decoding until halfway through iterative decoding, and finally perform hard-decision decoding on the soft-decision decoding result.
[0067]
According to this embodiment, the soft decision decoding result is corrected based on the number of error corrections or the error detection state of the RS decoding circuit 17, and the corrected soft decision decoding result is again softened by the second iterative decoding unit B2. It is possible to make it an object of iterative decoding by determination. As described above, the accuracy of soft decision decoding can be increased. The decoding result of the second iterative decoding unit B2 may be output to the output terminal 18 as a final error correction result, that is, an estimation result, or supplied again to the RS decoding circuit 47 as shown in the figure to decode the RS code. Error correction by law may be performed.
[0068]
The decoding apparatus according to the fifth embodiment is a modification of the decoding apparatus according to the first embodiment. However, the decoding apparatus according to the second or third embodiment (FIG. 8) is similarly modified. May be.
[0069]
Although the present invention has been illustrated and described in detail with reference to the preferred embodiments thereof, various changes in form and details can be made within the scope of the invention described in the claims. Will be understood by those skilled in the art. Such changes, substitutions, and modifications are also included in the scope of the present invention.
[0070]
For example, in the above embodiment, a product code using a BCH code is used in the transmission data format, but other types of codes that can be repeatedly decoded may be used. For example, Yu Kou, two others, “Low-Density Parity-Check Codes Based on Finite Geometries: A Rediscovery and New Results ")," IEEE Reports on Information Theory "(" IEEE Transactions on Information Theory "), (USA), Institute of Electrical and Electronics Engineers, November 2001, Vol. 47, Vol. 7, OFC2002, p. All embodiments have been modified so that encoding and decoding are performed using codes that can be classified into systematic codes among various low-density parity-check codes disclosed in 2711-2736. May be. Further, all the embodiments may be modified so that a product code using an RS code, a product code using another block code, and a concatenated code using an RS code or other block code are used.
[0071]
In the above embodiment, the iterative decoding unit B and the second iterative decoding unit B2 of the decoding apparatus are provided with three vertical BCH decoding circuits and three horizontal BCH decoding circuits 12, 14, and 16. However, the number of each of the vertical BCH decoding circuits and the horizontal BCH decoding circuits is not limited as long as it is two or more.
In the above embodiment, a large number of decoding circuits are arranged in series in the iterative decoding unit B and the second iterative decoding unit B2 of the decoding device, but the decoding results of the decoding circuit are transferred to other decoding circuits. The number of decoding circuits may be reduced in the form of supply.
[0072]
In the above embodiment, the error correction processing in the decoding apparatus always proceeds to the final stage decoding circuit (for example, the RS decoding circuit 17), but the decoding result includes an error in the middle of the iterative decoding. If it can be confirmed that there is no error, the error correction process may be terminated and the decoding result at that stage may be output as the final error correction result.
In the above embodiment, various processes such as encoding, decoding, interleaving, and deinterleaving are realized by a circuit. However, a computer can be used by using software that realizes the same process.
[0073]
【The invention's effect】
  As described above, according to the present invention, RS (Reed-Solomon) encoding is performed on each of a plurality of information parts obtained by regularly dividing the original information symbol, and a plurality of information parts corresponding to each information part are provided. An RS check symbol generation unit for generating the RS check symbol, and an information array having the original information symbol and the RS check symbol are subjected to error correction encoding in a plurality of block encoding formats and converted into a plurality of block encoding formats A combination coding unit for generating a check symbol of a plurality of corresponding formats, an original information symbol, an RS check symbol generated by error correction coding of the RS check symbol in a plurality of block coding formats, a plurality of An output unit for outputting a test symbol in the format;An interleaving unit that arranges the original information symbols in an order different from the order of the sequences to be supplied to the combination encoding unit and supplies the information symbols to the RS check symbol generation unit;The error correction coding by the combination coding unit is a format that can be iteratively decoded, and the error correction capability of the RS check symbol is higher than the error correction capability of the iterative decoding, so the redundancy is small It becomes possible to perform error correction efficiently with high error correction capability using a code. In particular, the combination coding unit performs error correction coding in a plurality of block coding formats, and the RS coding is also block coding. Therefore, the code structure is simpler than the convolutional code, and the parallel coding is performed in parallel. It is easy to perform rapid processing such as processing, and it is possible to easily configure the encoding device and the decoding device.
[Brief description of the drawings]
FIG. 1 is a schematic diagram showing a two-dimensionally arranged transmission data format used in an encoding device and a decoding device according to Embodiment 1 of the present invention.
2 is a block diagram showing an encoding apparatus according to Embodiment 1 that generates the transmission data format of FIG. 1; FIG.
3 is a block diagram showing a decoding apparatus according to Embodiment 1 that estimates original information symbols from the transmission data format of FIG. 1; FIG.
4 is a schematic diagram showing a plurality of errors located in a lattice pattern that may exist on the transmission data format of FIG. 1; FIG.
FIG. 5 is a block diagram showing an encoding apparatus according to Embodiment 2 of the present invention.
FIG. 6 is a schematic diagram showing a two-dimensionally arranged transmission data format used in an encoding device and a decoding device according to Embodiment 2 of the present invention.
FIG. 7 is a schematic diagram showing operations of the encoding device and the decoding device according to Embodiment 2.
FIG. 8 is a block diagram showing a decoding apparatus according to Embodiment 2 of the present invention.
FIG. 9 is a schematic diagram showing a two-dimensionally arranged transmission data format used in an encoding device and a decoding device according to Embodiment 3 of the present invention.
FIG. 10 is a schematic diagram showing operations of an encoding device and a decoding device according to Embodiment 3.
FIG. 11 is a block diagram showing a decoding apparatus according to Embodiment 5 of the present invention.
[Explanation of symbols]
1 user data (original information symbol), 2 horizontal BCH check symbol part, 3 vertical BCH check symbol part, 4 RS check symbol part, 5 input terminal, 6 RS encoding circuit, 7 horizontal BCH encoding circuit, 8 vertical BCH encoding circuit, 9 output terminal, 10 input terminal, 11, 13, 15, 41, 43, 45 vertical BCH decoding circuit, 12, 14, 16, 42, 44, 46 horizontal BCH decoding circuit, 17 RS decoding circuit, 18 output terminals, 20 multiple errors located in a grid, 21 interleave circuit, 22 deinterleave circuit, 31 interleave circuit, 32 deinterleave circuit, 40 soft decision update circuit, 47 RS decode circuit, A combination An encoding unit, B iterative decoding unit, B2 second iterative decoding unit.

Claims (6)

元の情報記号を規則的に分割して得られる複数の情報部分の各々にRS(リード・ソロモン)符号化を施すとともに、各情報部分に対応する複数のRS検査記号を生成するRS検査記号生成部と、
前記元の情報記号と前記RS検査記号とを有する情報配列に複数のブロック符号化形式による誤り訂正符号化を施すとともに、前記複数のブロック符号化形式に対応する複数の形式の検査記号を生成する組み合わせ符号化部と、
前記元の情報記号と、前記RS検査記号が前記複数のブロック符号化形式により誤り訂正符号化されて生成されたRS検査記号符号と、前記複数の形式の検査記号とを出力する出力部と
元の情報記号を前記組み合わせ符号化部に供給されるべき並びの順序と異なる順序に並べて、前記RS検査記号生成部に供給するインタリーブ部と
を備え、
前記組み合わせ符号化部による誤り訂正符号化は繰り返し復号が可能な形式であり、前記繰り返し復号による誤り訂正能力よりも前記RS検査記号による復号の誤り訂正能力が高くされている符号化装置。
RS check symbol generation for performing RS (Reed-Solomon) encoding on each of a plurality of information parts obtained by regularly dividing the original information symbol and generating a plurality of RS check symbols corresponding to each information part And
The information array having the original information symbol and the RS check symbol is subjected to error correction coding using a plurality of block coding formats, and a plurality of types of check symbols corresponding to the plurality of block coding formats are generated. A combination coding unit;
An output unit for outputting the original information symbol, the RS check symbol code generated by error correction coding of the RS check symbol using the plurality of block coding formats, and the plurality of check symbols ;
An interleaving unit that arranges original information symbols in an order different from the order of sequences to be supplied to the combination encoding unit and supplies the information symbols to the RS check symbol generation unit ,
The error correction coding by the combination coding unit is a format that allows iterative decoding, and the error correction capability of decoding by the RS check symbol is higher than the error correction capability by the iterative decoding.
組み合わせ符号化部は、元の情報記号とRS検査記号とを有する情報配列にBCH符号化形式による誤り訂正符号化をそれぞれ行い、  The combination coding unit performs error correction coding in the BCH coding format on the information array having the original information symbol and the RS check symbol,
出力部は、外符号として前記RS検査記号をBCH符号化したRS検査記号符号と、内符号として前記情報配列をBCH符号化したBCH検査記号とを有する伝送データフォーマットにしたがって出力することを特徴とする請求項1記載の符号化装置。  The output unit outputs according to a transmission data format having an RS check symbol code obtained by BCH encoding the RS check symbol as an outer code, and a BCH check symbol obtained by BCH encoding the information array as an inner code. The encoding apparatus according to claim 1.
複数のブロック符号化形式に対応する複数の復号形式で情報系列を復号することを繰り返す繰り返し復号部と、
前記繰り返し復号部による復号結果に対してRS符号の復号法による復号を施すRS復号部と
前記繰り返し復号部による復号結果のうち元の情報記号に相当する情報記号を前記繰り返し復号部による復号結果での並びの順序と異なる順序に並べて、前記RS復号部に供給するインタリーブ部と、
前記RS復号部による復号結果のうち元の情報記号に相当する情報記号を前記繰り返し復号部による復号結果での並びの順序に戻すデインタリーブ部とを備えた復号装置。
An iterative decoding unit that repeats decoding an information sequence in a plurality of decoding formats corresponding to a plurality of block encoding formats;
An RS decoding unit that performs decoding by an RS code decoding method on a decoding result by the iterative decoding unit ;
An interleaving unit that supplies information symbols corresponding to original information symbols among the decoding results obtained by the iterative decoding unit to the RS decoding unit by arranging the information symbols in an order different from the order of arrangement of the decoding results by the iterative decoding unit;
The RS decoder decrypt apparatus example Bei a deinterleaving unit for returning to the order of arrangement of the decoding result by the information symbol iterative decoding portion corresponding to the original information symbols out of the decoding result by.
繰り返し復号部は、少なくとも繰り返し復号の途中までは軟判定復号することを特徴とする請求項記載の復号装置。The decoding apparatus according to claim 3 , wherein the iterative decoding unit performs soft decision decoding at least halfway through the iterative decoding. 繰り返し復号部は、繰り返し復号の途中までは軟判定復号し、前記軟判定復号結果に対して硬判定復号することを特徴とする請求項記載の復号装置。The decoding apparatus according to claim 4 , wherein the iterative decoding unit performs soft decision decoding until halfway of iterative decoding, and performs hard decision decoding on the soft decision decoding result. 繰り返し復号部が軟判定復号結果を出力し、RS復号部が前記軟判定復号結果に対して硬判定復号により誤り訂正または誤り検出を施すようになっており、
前記RS復号部による誤り訂正数または誤り検出状態に基づいて前記軟判定復号結果を修正する軟判定更新部と、
複数のブロック符号化形式に対応する複数の復号形式で、前記軟判定更新部により修正された軟判定復号結果を復号することを繰り返す第2の繰り返し復号部とを備え、前記第2の繰り返し復号部は、少なくとも繰り返し復号の途中までは軟判定復号することを特徴とする請求項記載の復号装置。
The iterative decoding unit outputs a soft decision decoding result, and the RS decoding unit performs error correction or error detection on the soft decision decoding result by hard decision decoding,
A soft decision updating unit for correcting the soft decision decoding result based on an error correction number or an error detection state by the RS decoding unit;
A second iterative decoding unit that repeats decoding the soft decision decoding result modified by the soft decision updating unit in a plurality of decoding formats corresponding to a plurality of block coding formats, and the second iterative decoding 5. The decoding apparatus according to claim 4 , wherein the unit performs soft decision decoding at least until halfway of iterative decoding.
JP2003074092A 2003-03-18 2003-03-18 Encoding device and decoding device Expired - Fee Related JP4202161B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2003074092A JP4202161B2 (en) 2003-03-18 2003-03-18 Encoding device and decoding device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2003074092A JP4202161B2 (en) 2003-03-18 2003-03-18 Encoding device and decoding device

Publications (2)

Publication Number Publication Date
JP2004282600A JP2004282600A (en) 2004-10-07
JP4202161B2 true JP4202161B2 (en) 2008-12-24

Family

ID=33289826

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003074092A Expired - Fee Related JP4202161B2 (en) 2003-03-18 2003-03-18 Encoding device and decoding device

Country Status (1)

Country Link
JP (1) JP4202161B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012205297A (en) * 2011-03-28 2012-10-22 Fujitsu Ltd Error correction device and error correction method

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006295510A (en) * 2005-04-08 2006-10-26 Mitsubishi Electric Corp Fec-frame coding equipment, efc multiplexer, fec demultiplexer, and optical communications device
US7447980B2 (en) * 2005-10-17 2008-11-04 Newport Media, Inc. Error detection and correction in data transmission packets
JP4833173B2 (en) * 2006-10-30 2011-12-07 富士通株式会社 Decoder, encoding / decoding device, and recording / reproducing device
JP4978576B2 (en) 2008-07-03 2012-07-18 株式会社Jvcケンウッド Encoding method, encoding apparatus, decoding method, and decoding apparatus
JP5502363B2 (en) * 2009-04-28 2014-05-28 三菱電機株式会社 Optical transmission apparatus and optical transmission method
EP4220967A1 (en) * 2017-09-27 2023-08-02 Mitsubishi Electric Corporation Coding device and transmitter

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012205297A (en) * 2011-03-28 2012-10-22 Fujitsu Ltd Error correction device and error correction method

Also Published As

Publication number Publication date
JP2004282600A (en) 2004-10-07

Similar Documents

Publication Publication Date Title
KR101110586B1 (en) Concatenated iterative and algebraic coding
US10164656B2 (en) Bit flipping algorithm for providing soft information during hard decision hard decoding
Abbas et al. High-throughput VLSI architecture for GRAND
US7774689B2 (en) Encoding and decoding methods and systems
US7203893B2 (en) Soft input decoding for linear codes
JP5354979B2 (en) Low density parity check convolutional code (LDPC-CC) encoder and LDPC-CC decoder
US7453960B1 (en) LDPC encoder and encoder and method thereof
US7246294B2 (en) Method for iterative hard-decision forward error correction decoding
US9214958B2 (en) Method and decoder for processing decoding
JP4389373B2 (en) Decoder for iterative decoding of binary cyclic code
JP5374156B2 (en) Apparatus and method for decoding and encoding data
WO2008075004A1 (en) Decoding of serial concatenated codes using erasure patterns
Cardinal et al. Iterative threshold decoding without interleaving for convolutional self-doubly orthogonal codes
US7231575B2 (en) Apparatus for iterative hard-decision forward error correction decoding
JP4102174B2 (en) Method for obtaining an error correction code, method for decoding an error correction code, an encoder for encoding a block of information elements, and a decoder for decoding a first block of soft values
JP4202161B2 (en) Encoding device and decoding device
US20040019843A1 (en) Turbo decoder and turbo decoding method and storage medium where the method is stored
Heloir et al. Stochastic chase decoder for reed-solomon codes
WO2020170435A1 (en) Error correcting decoding device and error correcting decoding method
Ullah et al. Performance improvement of multi-stage threshold decoding with difference register
EP4205284A1 (en) Staircase polar encoding and decoding
KR101268061B1 (en) Encoing and decoding method using multiple state accumulate code
Leroux et al. A highly parallel turbo product code decoder without interleaving resource
KR101257776B1 (en) Method and apparatus for encoing using state-check code
KR101218658B1 (en) Encoing and decoding method using irregular repeat multiple state accumulate code

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060119

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20071024

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20071024

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20071024

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080514

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080520

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080718

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20080820

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20080909

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20081008

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111017

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121017

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131017

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees