JP2800723B2 - リードソロモン復号器の誤り位置検出回路 - Google Patents

リードソロモン復号器の誤り位置検出回路

Info

Publication number
JP2800723B2
JP2800723B2 JP7182225A JP18222595A JP2800723B2 JP 2800723 B2 JP2800723 B2 JP 2800723B2 JP 7182225 A JP7182225 A JP 7182225A JP 18222595 A JP18222595 A JP 18222595A JP 2800723 B2 JP2800723 B2 JP 2800723B2
Authority
JP
Japan
Prior art keywords
register
registers
contents
counter
last
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
JP7182225A
Other languages
English (en)
Other versions
JPH0865175A (ja
Inventor
メイヤー ジャック
Original Assignee
エスジェエス−トムソン ミクロエレクトロニクス ソシエテ アノニム
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 エスジェエス−トムソン ミクロエレクトロニクス ソシエテ アノニム filed Critical エスジェエス−トムソン ミクロエレクトロニクス ソシエテ アノニム
Publication of JPH0865175A publication Critical patent/JPH0865175A/ja
Application granted granted Critical
Publication of JP2800723B2 publication Critical patent/JP2800723B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
    • H03M13/1525Determination and particular use of error location polynomials
    • H03M13/1535Determination and particular use of error location polynomials using the Euclid algorithm

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)
  • Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は(電気的、無線または他
のあらゆる適当な信号による)伝送の間デジタルデータ
に生ずる誤りを訂正するためのリードソロモン復号器に
関し、より詳細には訂正されるデータと訂正値を適当な
順序で与えるリードソロモン復号器の方法と装置に関す
る。
【0002】
【従来の技術】リードソロモン(RS)符号化はRS符
号の形で伝送するためデータのパケットを与えることか
ら成り、該データのパケットは受信機でRS符号を取り
出し訂正される。RS符号は2t個の異なる根を有する
次数が2tの生成多項式の倍数である次数がM−1の多
項式の係数を含むM個のデジタルデータの組である。R
S符号として伝送した場合、t個の誤り係数まで位置が
検出され訂正できる。
【0003】更に、RS符号の係数は有限体の要素に含
まれている。伝送される係数がnビットならば、GF
(2n )で示す2n 要素の有限体が使用される。この有
限体では、RS符号はN=2n −1までの係数を含んで
いる。
【0004】有限体において、二つの数の加算は二つの
数の間でビット対ビットの排他的ORで表される。従っ
て、αが有限体の任意の要素であればα+α=0であ
る。乗算は有限体の二つの要素の積も有限体のある要素
であるように表される。このように、有限体の非ゼロの
要素は該有限体の他の非ゼロで非単位要素の累乗であ
る。N+1個の要素の有限体で、累乗はαが有限体の非
ゼロで非単位の要素でありiが正または負の整数の時、
モジュールN、すなわちαi =αi+N で表される。従っ
て、N+1個の要素の有限体の非ゼロの要素は次のよう
に書けるα0 ,α1,…,αN-1
【0005】RS符号に基づき、データaN-2t-1,…,
0 の組を伝送するため、次の多項式を構成する: a(x)=aN-2t-1N-2t-1+…+a1 x+a0
【0006】r(x)が多項式x2ta(x)を生成多項
式で割った剰余である時、多項式A(x) A(x)=x2ta(x)+r(x) の係数が伝送される。このように、多項式A(x)の係
数AがRS符号を構成し、2tからN−1の次数に対応
する係数が送信される係数aである。伝送においては誤
りを受け、受信された係数Aの幾つかは誤っている。
【0007】誤りの訂正は次のように行なわれる。次数
が2t−1のシンドローム多項式S(x)(以下ではシ
ンドロームと呼ぶ)が形成され、次数i(i=0,1,
…,2t−1)の項の係数は次のように書ける Si =A(αi ) ここに、α0 ,α1 ,…,α2t-1は生成多項式の根であ
る。伝送に誤りが生じなければ、生成多項式の根は多項
式A(x)の根でもあるのでシンドロームはゼロであ
る。
【0008】他方、誤り位置検出多項式と呼ばれ次数が
t以下である多項式λ(x)と、誤り訂正多項式と呼ば
れ次数がt未満である多項式R(x)は次のようにな
る: x2tγ(x)+λ(x)S(x)=R(x) ここに、γ(x)は決定されない多項式である。
【0009】多項式λ(x)は多くてもt個の異なる根
を有している。もし、αr が多項式λ(x)の根であれ
ば、係数AN-r は誤りと共に伝送される。この係数に対
する誤りは次のように表される: er =R(αr )/αr λ′(αr ) (1) ここに、λ′は多項式λの導関数多項式である。
【0010】ユークリッドアルゴリズムは多項式λ
(x)とR(x)を計算するため使用される。ユークリ
ッドアルゴリズムは次の式から出発する 0x2t+1S(x)=S(x) 1x2t+0S(x)=x2t 更に、多くとも2t個のステップのそれぞれで、式の1
つを2つの式の線形結合の式と置き換えることにより新
しい系が上記の式から形成され、右辺の次数の一番高い
項が打ち消される。2つの上記の式の中で、右辺の次数
の一番低い式が残る。この操作は次数がt未満の右辺の
式が得られるまで同じ方法で繰り返される。右辺は多項
式R(x)であり、多項式λ(x)は同じ式でS(x)
を乗じたものである。
【0011】1985年5月のNo5,vol.C−3
4のコンピュータ関連IEEE会報の記事“パイプライ
ンリードソロモン復号器のVLSI設計”には、ユーク
リッドアルゴリズムの使用例と、この例のユークリッド
アルゴリズムを実施する回路が記載されている。この回
路はアルゴリズムの各ステップを計算するため比較的複
雑なセルを必要とするため特に複雑である。更に、各計
算セルは特別な場合(例えば、ゼロ多項式の係数)を考
慮するように設計する必要がある。
【0012】
【課題を解決するための手段】本発明の目的はユークリ
ッドアルゴリズムを実施する特に簡単な回路を提示する
ことである。
【0013】本発明の更に他の目的はユークリッドアル
ゴリズムを実施する該回路の制御法を提示することであ
る。
【0014】本発明の実施態様において、リードソロモ
ン符号器は、次数が2t−1のシンドローム多項式の係
数に対応した値と、1に等しい二番目の値を除いて全て
がゼロである値で内容がそれぞれ初期化される一番目と
二番目のレジスタの組と、一番目と二番目のレジスタの
組の出力に接続され、1で初期化される三番目の組の最
後のレジスタの値を除いてゼロである値で内容が初期化
される三番目と四番目のレジスタの組を含んでいる。
【0015】計算回路は、一番目と二番目の組の各レジ
スタと関係を有しており、前記一番目と二番目の組の前
のレジスタの内容と三番目の組の最後のレジスタの内容
との乗算結果と、三番目と四番目の組の当該レジスタの
内容と一番目の組の最後のレジスタの乗算結果との和を
前記一番目と二番目の組の各レジスタに与えている。
【0016】本実施態様は更に、一番目の数と一番目の
数を1だけ越える数でそれぞれ初期化されるカウンタと
表示レジスタを含んでおり、該表示レジスタはカウンタ
出力に接続されている。
【0017】シーケンサは、(a)カウンタの内容が表
示レジスタの内容以上であれば、または一番目の組の最
後のレジスタの内容がゼロであれば、一番目と二番目の
レジスタの組の書き込みを行い、カウンタの内容を減少
させるため、または、(b)カウンタの内容が表示レジ
スタの内容未満であり、一番目の組の最後のレジスタの
内容がゼロでなければ、一番目、二番目、三番目、四番
目のレジスタの組と表示レジスタの書き込みを行うため
与えられている。シーケンサはカウンタの内容がtだけ
減少すると停止する。
【0018】本発明の実施態様によれば、各計算回路
は、一番目と三番目の組の最後のレジスタのビットを連
続して受けるそれぞれ一番目と二番目のラインと、二番
目のラインが1ならば一番目と二番目の組の関連レジス
タの出力を伝える一番目のゲートの組と、二番目のライ
ンが1ならば三番目と四番目の組の関連レジスタの出力
を伝える二番目のゲートの組と、一番目と二番目のゲー
トの組の出力を受ける一番目の加算器と、一番目の加算
器の出力を乗算レジスタの内容に加える二番目の加算器
と、を含んでおり、乗算レジスタの内容は左側に連続的
にシフトされ、移動子は有限体内で乗算が行なわれるよ
うに該内容と再結合される。
【0019】本発明の実施態様によれば、カウンタは表
示レジスタの出力に接続され、シーケンサはステップ
(b)でカウンタの書き込みを行い、カウンタを減少さ
せる。
【0020】本発明の他の実施態様はリードソロモン符
号として伝送されたデータのt個の誤りまで訂正するに
必要な係数を決定する方法を提示している。この方法
は、次数が2t−1のシンドローム多項式の係数を決定
すること、一番目のレジスタの組にシンドローム多項式
の係数を記憶し、1に等しい二番目の係数を除き全てゼ
ロである係数を二番目のレジスタの組に記憶し、カウン
タ(dR)に一番目の数を記憶すること、1に等しい最
後の係数を除き全てゼロである係数を三番目のレジスタ
の組に記憶すること、全てゼロである係数を四番目のレ
ジスタの組に記憶すること、一番目の数を1だけ越える
数を表示レジスタに記憶すること、(a)カウンタの内
容が表示レジスタの内容以上であれば、または一番目の
組の最後のレジスタの内容がゼロであれば、一番目と二
番目の組の前のレジスタの内容と三番目の組の最後のレ
ジスタの内容との乗算結果と、三番目と四番目の組の当
該レジスタの内容と一番目の組の最後のレジスタの乗算
結果との和を一番目と二番目の組の各レジスタに記憶
し、カウンタを減少すること、(b)一番目と二番目の
レジスタの組の内容とカウンタの内容を三番目と四番目
のレジスタの組と表示レジスタに転送すること、の各ス
テップを含み、カウンタの内容がtだけ減少するまで
(a)または(b)のステップを繰り返し、一番目と二
番目のレジスタの組の中で誤り訂正多項式の係数と誤り
位置検出多項式の係数を読み出すことの各ステップを含
んでいる。
【0021】本発明の実施態様によれば、一番目と三番
目の組は2t−1個のレジスタを含み、二番目と四番目
の組がt+1個のレジスタを含んでいる。二番目の組の
一番目のレジスタが前記二番目の組の最後のレジスタの
内容から得られた和を受ける。
【0022】本発明の実施態様によれば、ステップ
(b)において、カウンタの内容と表示レジスタの内容
が入れ替えられ、カウンタが減少する。
【0023】本発明の実施態様によれば、カウンタに最
初記憶される数はtである。
【0024】本発明の実施態様によれば、乗算結果の和
がそれぞれ、一番目の組の最後のレジスタのビットと三
番目および四番目の組のレジスタの内容を連続して一番
目の部分的な乗算を行なうこと、三番目の組の最後のレ
ジスタのビットと一番目および二番目の組のレジスタの
内容を連続して二番目の部分的な乗算を行なうこと、一
番目と二番目の部分的な乗算結果を連続的に加算し、こ
れらの加算結果を加算毎に左にシフトされるレジスタの
内容に加えること、の各ステップに基づき得られる。
【0025】
【実施例】ユークリッドアルゴリズムの実施は次の体系
の式から発生する: 0x2t+1S(x)=S(x) 1x2t+0S(x)=x2t
【0026】本発明によれば、レジスタの組R、レジス
タの組λ、およびカウンタdRはユークリッドアルゴリ
ズムを実施することにより得られる連続した体系の一番
目の式に関係している。同様に、レジスタの組Q、レジ
スタの組μ、および表示レジスタdQは連続した体系の
二番目の式に関係している。
【0027】レジスタの組Rは2t個のレジスタ、R
2t-1,R2t-2,…,R0 を含んでおり、一番目のそれぞ
れの式の右辺の次数の減少した項の係数に対応してい
る。レジスタの組λはλt からλ0 のt+1個のレジス
タを含んでおり、一番目のそれぞれの式のS(x)の因
子の次数の減少した項の係数に対応している。カウンタ
dRは一番目のそれぞれの式の右辺の次数を示す数を含
んでいる。
【0028】同様に、レジスタQは二番目の式のそれぞ
れの右辺に関係しており、レジスタμは二番目のそれぞ
れの式のS(x)の因子に関係しており、表示レジスタ
dQは二番目のそれぞれの式の右辺の次数に関係してい
る。
【0029】最初、次数の減少する順序で、レジスタの
組Rはシンドロームの係数を記憶し、レジスタの組λは
数0,0,…,0,1,0を記憶し、レジスタの組Qは
数1,0,…,0を記憶し、レジスタの組μはゼロを記
憶する。カウンタdRおよびレジスタdQは例えばそれ
ぞれ2t−1と2tに初期設定される。次に、この方法
によりレジスタは2t−1回のステップを動作し、各ス
テップには次のステップの1つが含まれている(式の中
で、レジスタ識別子もレジスタの内容を示している)。
【0030】(a)カウンタdRの内容がレジスタdQ
の内容以上であれば、またはレジスタR2t-1がゼロなら
ば、各レジスタRi (i=1,2,…,2t−2)の内
容は次式に従い変更される: Ri =R2t-1i-1 +Q2t-1i-1 レジスタR0 の内容は一番目のステップ(a)で打ち消
される。
【0031】同様に、各レジスタλi (i=1,2,
…,t)は次式に基づき変更される: λi =R2t-1μi-1 +Q2t-1λi-1 レジスタλ0 の内容はR2t-1μt +Q2t-1λt と入れ替
えられる。カウンタdRは1だけ減少する。
【0032】この場合、レジスタλの内容は循環的に変
更される、すなわちレジスタλ0 はレジスタλt の内容
から計算された値を受ける。これによりレジスタの数が
抑えられる。代わりに、t−1個のレジスタをレジスタ
λおよびμのそれぞれの組の左に追加することができ
る。
【0033】(b)他方、カウンタdRの内容がレジス
タdQの内容より小さく、レジスタR2t−1の内容が
ゼロでなければ、レジスタの組Rとレジスタの組λの内
容はレジスタの組Qとμの対応するビットにそれぞれ転
送され、カウンタdRとレジスタdQの内容は入れ替え
られる。ステップ(a)の動作も同時に行なわれる。す
なわち、ステップ(b)はステップ(a)のサブステッ
プを含んでいる。
【0034】この方法はカウンタdRがt未満の次数に
対応した値(この場合t−1)を含む時停止する。誤り
位置検出多項式λ(x)の係数はλt からλ0 のレジス
タに記憶され、誤り訂正多項式R(x)の係数はR2t-1
からRt のレジスタに記憶される。
【0035】図1はt=3のリードソロモン符号におい
て次数が5のシンドロームの例に対しこの方法を使用し
た場合を示している。使用された有限体はα0 からα14
の15個のゼロでない要素を有している。対象とするシ
ンドロームの多項式は次式の通りである: S(x)=α75 +α124 +α63 +α122
α14x+α14
【0036】この例は前述のコンピュータに関するIE
EE会報の記事に使用されている。計算の順序を示すた
め、この記事ではα0 からα14の要素を二値を示すテー
ブルを参照している。
【0037】図1は円内の番号で示すように、本発明に
よる方法の連続的なステップで、レジスタR,Q,λ,
μ,dQおよびカウンタdRの状態を示している。レジ
スタの指標は全てのレジスタを表している(レジスタR
およびQの組に対し0から5を付けており、レジスタR
およびQの組において0は一番目のレジスタを、5は最
後のレジスタを示している;レジスタλおよびμの組に
対しては0から3を付けており、レジスタλおよびμの
組において0は一番目のレジスタを、3は最後のレジス
タを示している)。
【0038】最初のステップ0で、シンドロームの係数
α7 ,α12,α6 ,α12,α14,α14はそれぞれR5
らR0 のレジスタに記憶される。数0,0,1,0はλ
3 からλ0 のレジスタに記憶される;数1,0,0,
0,0,0はQ5 からQ0 のレジスタに記憶される;数
0,0,0,0はレジスタμに記憶される。シンドロー
ムの次数である数5はカウンタdRに記憶され、数6は
レジスタdQに記憶される。
【0039】ステップ1は、カウンタdRの内容がレジ
スタdQの内容より小さく、レジスタR5 の内容がゼロ
でないので前述のステップ(b)に対応する。(最後の
レジスタを除き)レジスタRのそれぞれとレジスタλの
それぞれの内容には1が掛けられ、(最後のレジスタを
除き)レジスタQのそれぞれとレジスタμのそれぞれの
内容にはα7 が掛けられる。得られた積の和は1だけ左
にシフトされた後レジスタRの組に入れられ、1だけ左
に循環的にシフトされた後レジスタλの組に入れられ
る。同時に、レジスタRとλの組の前の内容はレジスタ
Qとμの組に転送される。カウンタdRとレジスタdQ
の内容が入れ替えられる。カウンタdRの内容は減少
し、レジスタRの組の新しい内容が次数5の多項式に相
当していることを示す。
【0040】ステップ2はカウンタdRとレジスタdQ
の内容が等しいので前述のステップ(a)に対応してい
る。レジスタRの組とレジスタλの組の内容にはα7
掛けられ、レジスタQの組とレジスタμの組の内容には
α12が掛けられる。得られた積の和は1だけ左にシフト
された後レジスタRの組に入れられ、1だけ左に循環的
にシフトされた後レジスタλの組に入れられる。カウン
タdRが減少する。レジスタRの組の新しい内容は次数
が4の多項式に相当している。
【0041】次のステップ3と4はそれぞれステップ
(b)とステップ(a)に対応している。ステップ4
で、カウンタdRはレジスタRの組の内容が次数3の多
項式に相当していることを示している。しかし、この多
項式は次数2と3の項の係数がゼロであるので実際には
次数1の多項式である。
【0042】理論的にこの方法は停止するが、この特別
な場合を処理するに必要な回路は不必要に複雑になる。
一般的な場合、カウンタdRの内容である3はt=3未
満でないので更にステップが実行される。
【0043】ステップ5はレジスタR5 の内容がゼロな
ので前述のステップ(a)に対応する。レジスタRの組
とレジスタλの組の内容にはα10が掛けられ、レジスタ
Qの組とレジスタμの組の内容には0が掛けられる。和
は1だけ左にシフト(レジスタλの組の場合循環的にシ
フト)された後レジスタRの組およびレジスタλの組に
加えられる。カウンタdRの内容は減少する。この方法
はカウンタdRがt=3未満の次数を示すので停止す
る。
【0044】ステップ5の終わりで、レジスタR5 から
3 に含まれる係数は誤り訂正多項式R(x)の係数で
あり、レジスタλ3 からλ0 に含まれる係数は誤り位置
検出多項式λ(x)の係数である(実際には、これらの
多項式のそれぞれにはこの場合はα10である定数が掛け
られるが誤り訂正には影響を与えない)。この例の場
合、見つけられる多項式は次の通りである: R(x)=α5 x+α λ(x)=α52 +αx+α2
【0045】多項式λ(x)の根はα10とα3 であり、
これは受けた係数の中で指標15−10=5および15
−3=12を有するものが誤っていることを示してい
る。対応する誤りはα11とα7 である。
【0046】図2は本発明による方法を実施する回路の
実施態様を示している。この回路はあらゆるリードソロ
モン符号に容易に展開できる。R2t-2からR0 の各レジ
スタによりその内容がそれぞれの乗算器10に与えられ
る:λt からλ0 の各レジスタによりその内容がそれぞ
れの乗算器12に与えられる:Q2t-2からQ0 の各レジ
スタによりその内容がそれぞれの乗算器14に与えられ
る:μt からμ0 の各レジスタによりその内容がそれぞ
れの乗算器16に与えられる。レジスタR2t-1の内容が
乗算器14と16の二番目の入力に加えられ、レジスタ
2t-1の内容が乗算器10と12の二番目の入力に加え
られる。レジスタRi とQi に関係のある乗算器10と
14の出力がレジスタRi+1 に加えられる加算器18に
加えられる。レジスタλi とレジスタμi に関係のある
乗算器12と16の出力は出力がレジスタλi+1 または
i=tならλ0 に加えられる加算器20に加えられる。
【0047】レジスタRの組はシンドロームSの係数に
対応する初期値を受けるように接続されている。レジス
タλの組は初期値0,0,…,0,1,0を受けるよう
に接続されている。レジスタQの組は初期値1,0,
…,0を受けるように接続されている。最後に、レジス
タμの組はリセット入力RSTを有している。レジスタ
Rの組とレジスタλの組はそれぞれレジスタQの組とレ
ジスタμの組に接続されており、レジスタRの組とレジ
スタλの組の内容はレジスタQとμの組に伝えられる。
図2では、カウンタdRとレジスタdQがループ状にな
っている。
【0048】カウンタdRは漸減入力DECを有してお
り、値tで初期化される。同様に、レジスタdQは値t
+1で初期化される。この実施態様では、この方法を停
止させる時カウンタdRの値をt−1よりも0と比較し
決定することが容易であるため、カウンタdRは前述の
実施態様で示したようにシンドロームの次数に相当する
2t−1の代わり値tで初期化される。
【0049】シーケンサ22はレジスタR2t-1の内容を
0と比較し、更にカウンタdRの内容をレジスタdQの
内容と比較しステップ(a)またはステップ(b)を選
択する。シーケンサ22はレジスタとカウンタを制御
し、前述の動作を得る。シーケンサは、例えばVHDL
のような論理回路記述言語で前述の方法のステップを翻
訳できる当業者により容易に理解できる。
【0050】図2の回路の乗算器と加算器は対象とする
有限体に定義された乗算と加算を実行するため接続され
ている。
【0051】加算(排他的OR)は二値数の加算より容
易である;しかし乗算はより複雑である。
【0052】積2nt(nは各係数のビット数)が伝送
されたリードソロモン符号の係数の数より小さければ、
加算器18、20に関連した2つの乗算器を使用する代
わり、nサイクル中にnビットの2つの数を掛ける唯1
つのシーケンシャル乗算器を使用することができる。シ
ーケンシャル乗算器により、多項式λとRの決定には2
tサイクルの代わりに2ntサイクルが必要となる。こ
れは回路が非直列乗算器よりも簡単な(シーケンシャ
ル)乗算器を半分の数だけ含んでいるので、2ntサイ
クルの時間が各リードソロモン符号の処理に利用可能な
らば欠点ではない。
【0053】図3はレジスタRとQ(i≠2t−
1)の組に関連するシーケンシャル乗算器を示してい
る。レジスタRとQの出力はANDゲート30と3
2の組にそれぞれ加えられる。ゲート30はラインq
2t−1が1の時、レジスタRの出力を加算器34の
一番目の入力に伝える。ゲート32はラインr2t−1
が1の時、レジスタQの出力を加算器34の二番目の
入力に伝える。ラインq2t−1とr2t−1はそれぞ
れレジスタQ2t−1とR2t−1のビットを最上位ビ
ットから最下位ビットまで順に受ける。加算器34の出
力は加算器36によりレジスタPの内容に加えられ
る。加算器36の出力は次の段階のレジスタRi+1
加えられ、レジスタRは前の段階の加算器36の出力
を受ける。
【0054】レジスタQ2t−1の連続したビットは、
レジスタR2t−1の連続したビットがラインr
2t−1に加えられるのと同時にラインq2t−1に加
えられる。ANDゲート30と32はそれぞれレジスタ
とQ2t−1の内容と、レジスタQとR2t−1
の内容の部分的な乗算を行なう。加算器34により与え
られる部分的な乗算の組の和は、レジスタPの内容に
加えられ、レジスタPの内容は加算毎に左にシフトさ
れる。レジスタPはレジスタRおよびレジスタQ
と大きさが同じであり、オーバーフローした時そのキャ
リーはレジスタPの特定のビットに再結合され、対象
とする有限体内で乗算結果を得る。前述の16個の要素
の有限体の例では、キャリーは重み0と1のビットと再
結合される。
【0055】図示のように、スイッチ38はレジスタR
i の入力に置かれている。このスイッチの一番目の位置
で、レジスタRi は前段の加算器36の出力を受ける
(i=0ならば、値0を受ける)。信号INITをイネ
ーブルにすることにより選択される二番目の位置で、レ
ジスタRi はシンドロームの係数Si を受ける。
【0056】スイッチ40はレジスタQi の入力に置か
れている。スイッチ40の一番目の位置で、レジスタQ
i はレジスタRi の出力を受ける。信号INITをイネ
ーブルにすることにより選択されるスイッチ40の二番
目の位置で、レジスタRi は0を受ける(またはi=2
t−1ならば1を受ける)。
【0057】レジスタλの組およびレジスタμの組に関
係する段は同じである。
【0058】最初、信号INITはイネーブルされる。
レジスタR,Q,λ,μは対応した初期値(Si ,0,
1)を受け、これらの値を記憶する。
【0059】前述のように連続したステップ(a),
(b)が実行される。各ステップには部分乗算のn個の
サブステップが含まれ、この部分乗算の間シーケンサ2
2はレジスタR2t-1のnビットをラインr2t-1に連続に
与え、同時にレジスタQ2t-1のnビットをラインq2t-1
に与える。これらのサブステップのそれぞれで、レジス
タPは移動子の再結合により左にシフトするようにイネ
ーブルされる。
【0060】部分乗算のn回のサブステップのそれぞれ
の終わりで、加算器36は最後の結果を出力する。レジ
スタの組Rとλのそれぞれはシーケンサによりイネーブ
ルにされこれらの結果を受ける。ステップ(b)の間、
レジスタQの組とレジスタμの組はレジスタRの組とレ
ジスタλの組と同時にイネーブルにされレジスタRの組
とレジスタλの組の古い値を受ける。
【0061】当業者に明らかなように、種々の変形を前
に開示した好ましい実施態様に行なうことができる。例
えば、カウンタdRとレジスタdQの内容を入れ替えカ
ウンタdRを減少させる代わり、カウンタを減少させる
ことなしにカウンタdRの内容をレジスタdQに転送す
ることができる。更に、この方法の終わりを検出するた
め、カウンタdRの内容を制御する代わり、この装置で
は2t−1回のステップ(a)または(b)を計算する
ことができる。
【0062】本発明の少なくとも1つの実施態様を図に
基づき記載したが、当業者は種々の交換、変更、改善を
容易に行なうことができる。これらの交換、変更、改善
はこの発明の内容および範囲内である。従って、前述の
記載は一例でありこれらにより制限されない。
【図面の簡単な説明】
【図1】本発明による方法の連続的なステップの例を表
す図である。
【図2】本発明による方法を実施する回路の実施態様を
表す図である。
【図3】本発明による方法を実施する回路の他の実施態
様の部分図である。
【符号の説明】
10、12、14、16 乗算器 18、20 加算器 22 シーケンサ 30、32 ANDゲート 34、36 加算器 38、40 スイッチ
───────────────────────────────────────────────────── フロントページの続き (56)参考文献 特開 平5−165662(JP,A) 特開 昭62−186620(JP,A) IEEE TRANS.ON COM P.,VOL.C−33,NO.8,P P.731−6 IEEE TRANS.ON COM P.,VOL.C−34,NO.5,P P.393−403 IEEE TRANS.ON COM P.,VOL.37,NO.10,PP. 1273−80 IEE PROC.E,VOL.138, NO.5,PP.295−8 GEC J.OF RES.,VO L.9,NO.3,PP.172−184 (58)調査した分野(Int.Cl.6,DB名) H03M 13/00 - 13/22

Claims (7)

    (57)【特許請求の範囲】
  1. 【請求項1】 次数が2t−1のシンドローム多項式
    (S)の係数に対応した値と、1に等しい二番目の値を
    除いて全てがゼロである値で内容がそれぞれ初期化され
    る一番目と二番目のレジスタの組(R,λ)と、 一番目と二番目のレジスタの組の出力に接続され、1で
    初期化される三番目の組の最後のレジスタの値を除いて
    ゼロである値で内容が初期化される三番目と四番目のレ
    ジスタの組(Q,μ)と、 一番目と二番目の組の各レジスタ(R,λ)と関係
    を有しており、前記一番目と二番目の組のレジスタ(R
    i−1,λi−1)の前の内容と三番目の組の最後のレ
    ジスタ(Q2t−1)の内容との乗算結果と、三番目と
    四番目の組の対応するレジスタ(Qi−1,μi−1
    の内容と一番目の組の最後のレジスタ(R2t−1)の
    乗算結果との和を前記一番目と二番目の組の各レジスタ
    (R,λ)に与える計算回路(10−20)と、 一番目の数と一番目の数を1だけ越える数でそれぞれ初
    期化されるカウンタ(dR)と表示レジスタ(dQ)
    と、 を含み、該表示レジスタはカウンタ出力に接続されてい
    ることを特徴とし、更に (a)カウンタ(dR)の内容が表示レジスタ(dQ)
    の内容以上であれば、または一番目の組の最後のレジス
    タ(R2t−1)の内容がゼロであれば、一番目と二番
    目のレジスタの組の書き込みを行い、カウンタ(dR)
    の内容を減少させ、 (b)カウンタ(dR)の内容が表示レジスタ(dQ)
    の内容未満であり、一番目の組の最後のレジスタの内容
    がゼロでなければ一番目、二番目、三番目、四番目のレ
    ジスタの組(R,λ,Q,μ)と表示レジスタ(dQ)
    の書き込みを行い、 カウンタの内容がtだけ減少すると停止する、 ためのシーケンサ(22)と、 を含み、 前記各計算回路が、 一番目と三番目の組(R,Q)の最後のレジスタのビッ
    トを連続して受けるそれぞれ一番目と二番目のライン
    (r2t−1,q2t−1)と、 二番目のラインが1ならば一番目と二番目の組の関連レ
    ジスタ(R,λ)の出力を伝える一番目のゲートの
    組(30)と、二番目のラインが1ならば三番目と四番
    目の組の関連レジスタ(Q,μ)の出力を伝える二
    番目のゲートの組(32)と、 一番目と二番目のゲートの組(30、32)の出力を受
    ける一番目の加算器(34)と、 一番目の加算器の出力を乗算レジスタ(P)の内容に
    加える二番目の加算器(36)と、 を含み、乗算レジスタの内容が左側に連続的にシフトさ
    れ、キャリーは有限体内で乗算が行なわれるように該内
    容と再結合されることを特徴とするリードソロモン復号
    器。
  2. 【請求項2】 二番目の組(λ)の一番目のレジスタに
    対応する計算回路が二番目と四番目の組の最後のレジス
    タの内容を用いて計算を行なう請求項1に記載のリード
    ソロモン復号器。
  3. 【請求項3】 カウンタ(dR)が表示レジスタ(d
    Q)の出力に接続され、シーケンサ(22)がステップ
    (b)でカウンタの書き込みを行い、カウンタを減少さ
    せるように動作する請求項1に記載のリードソロモン復
    号器。
  4. 【請求項4】 次数が2t−1のシンドローム多項式の
    係数を決定すること、 一番目のレジスタの組(R)にシンドローム多項式の係
    数を記憶し、1に等しい二番目の係数を除き全てゼロで
    ある係数を二番目のレジスタの組(λ)に記憶し、カウ
    ンタ(dR)に一番目の数を記憶すること、 1に等しい最後の係数を除き全てゼロである係数を三番
    目のレジスタの組(Q)に記憶し、全てゼロである係数
    を四番目のレジスタの組(μ)に記憶し、一番目の数を
    1だけ越える数を表示レジスタ(dQ)に記憶するこ
    と、 (a)カウンタ(dR)の内容が表示レジスタ(dQ)
    の内容以上であれば、または一番目の組の最後のレジス
    タ(R2t−1)の内容がゼロであれば、一番目と二番
    目の組の前のレジスタの内容と三番目の組の最後のレジ
    スタ(Q2t− )の内容との乗算結果と、三番目と四
    番目の組(Q,μ)の当該レジスタの内容と一番目の組
    の最後のレジスタ(R2t−1)の乗算結果との和を一
    番目と二番目の組(R,λ)の各レジスタに記憶し、カ
    ウンタ(dR)を減少すること、 (b)一番目と二番目のレジスタの組(R,λ)の内容
    とカウンタ(dR)の内容を三番目と四番目のレジスタ
    の組(Q,μ)と表示レジスタ(dQ)に転送するこ
    と、 の各ステップを含み、 カウンタ(dR)の内容がtだけ減少するまで(a)ま
    たは(b)のステップを繰り返し、一番目と二番目のレ
    ジスタの組の中で誤り訂正多項式(R)の係数と誤り位
    置検出多項式(λ)の係数を読み出し、 一番目と三番目の組(R,Q)が2t−1個のレジスタ
    を含み、二番目と四番目の組(λ,μ)がt+1個のレ
    ジスタを含み、二番目の組の一番目のレジスタ(λ
    が前記二番目の組の最後のレジスタ(λ)の内容から
    得られた和を受ける、ことを特徴とするリードソロモン
    符号として伝送されたデータ内のt個の誤りを訂正する
    ために必要な係数の決定方法。
  5. 【請求項5】 ステップ(b)において、カウンタ(d
    R)の内容と表示レジスタ(dQ)の内容が入れ替えら
    れ、カウンタが減少する請求項4に記載の方法。
  6. 【請求項6】 カウンタ(dR)に最初記憶される数が
    tである請求項4に記載の方法。
  7. 【請求項7】 乗算結果の和がそれぞれ、 一番目の組の最後のレジスタ(R2t−1)のビットと
    三番目および四番目の組のレジスタ(Q,μ)の内
    容を連続して一番目の部分的な乗算を行なうこと、 三番目の組の最後のレジスタ(R2t−1)のビットと
    一番目および二番目の組のレジスタ(R,λ)の内
    容を連続して二番目の部分的な乗算を行なうこと、 一番目と二番目の部分的な乗算結果を連続的に加算し、
    これらの加算結果を加算毎に左にシフトされるレジスタ
    (P)の内容に加えること、 の各ステップに基づき得られる請求項4に記載の方法。
JP7182225A 1994-06-27 1995-06-27 リードソロモン復号器の誤り位置検出回路 Expired - Fee Related JP2800723B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR9408122A FR2721775B1 (fr) 1994-06-27 1994-06-27 Circuit de localisation d'erreurs d'un décodeur Reed-Solomon.
FR9408122 1994-06-27

Publications (2)

Publication Number Publication Date
JPH0865175A JPH0865175A (ja) 1996-03-08
JP2800723B2 true JP2800723B2 (ja) 1998-09-21

Family

ID=9464883

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7182225A Expired - Fee Related JP2800723B2 (ja) 1994-06-27 1995-06-27 リードソロモン復号器の誤り位置検出回路

Country Status (5)

Country Link
US (1) US5737343A (ja)
EP (1) EP0690584B1 (ja)
JP (1) JP2800723B2 (ja)
DE (1) DE69528796T2 (ja)
FR (1) FR2721775B1 (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2751810B1 (fr) * 1996-07-23 1998-10-23 Sgs Thomson Microelectronics Systeme de correction d'erreurs dans des trames de donnees ayant des codes de parite horizontaux et verticaux
JP3233860B2 (ja) * 1996-10-25 2001-12-04 松下電器産業株式会社 リードソロモン復号器
US6061826A (en) * 1997-07-29 2000-05-09 Philips Electronics North America Corp. Hardware-optimized reed-solomon decoder for large data blocks
US6263471B1 (en) * 1999-03-05 2001-07-17 Industrial Technology Research Institute Method and apparatus for decoding an error correction code
US6571368B1 (en) 2000-02-02 2003-05-27 Macronix International Co., Ltd. Systolic Reed-Solomon decoder
US6671850B1 (en) 2000-05-01 2003-12-30 International Business Machines Corporation On-the-fly algebraic error correction system and method for reducing error location search
US6792569B2 (en) 2001-04-24 2004-09-14 International Business Machines Corporation Root solver and associated method for solving finite field polynomial equations
US7146553B2 (en) * 2001-11-21 2006-12-05 Infinera Corporation Error correction improvement for concatenated codes
US7206993B2 (en) * 2003-03-12 2007-04-17 Matsushita Electric Industrial Co., Ltd. Method and device for decoding Reed-Solomon code or extended Reed-Solomon code
US9954553B1 (en) * 2015-06-05 2018-04-24 Altera Corporation Circuitry and methods for continuous parallel decoder operation

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4504948A (en) * 1982-12-29 1985-03-12 International Business Machines Corporation Syndrome processing unit for multibyte error correcting systems
US4649541A (en) * 1984-11-21 1987-03-10 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Reed-Solomon decoder
US4747103A (en) * 1985-03-21 1988-05-24 Canon Kabushiki Kaisha Signal processing apparatus for correcting decoding errors
FR2605818B1 (fr) * 1986-10-27 1992-09-18 Thomson Csf Codeur-decodeur algebrique de codes en blocs reed solomon et bch, applicable aux telecommunications numeriques
US5325373A (en) * 1986-12-22 1994-06-28 Canon Kabushiki Kaisha Apparatus for encoding and decoding reed-solomon code
US4868828A (en) * 1987-10-05 1989-09-19 California Institute Of Technology Architecture for time or transform domain decoding of reed-solomon codes
US5170399A (en) * 1989-08-30 1992-12-08 Idaho Research Foundation, Inc. Reed-Solomon Euclid algorithm decoder having a process configurable Euclid stack
EP0431629A3 (en) * 1989-12-08 1993-07-21 Sony Corporation Mutual division circuit
JP3252421B2 (ja) * 1991-12-12 2002-02-04 ソニー株式会社 ユークリッドの互除回路
US5442578A (en) * 1991-12-12 1995-08-15 Sony Corporation Calculating circuit for error correction
US5504758A (en) * 1992-04-28 1996-04-02 Mitsubishi Denki Kabushiki Kaisha Error-correcting apparatus
US5517509A (en) * 1993-03-31 1996-05-14 Kabushiki Kaisha Toshiba Decoder for decoding ECC using Euclid's algorithm

Non-Patent Citations (5)

* Cited by examiner, † Cited by third party
Title
GEC J.OF RES.,VOL.9,NO.3,PP.172−184
IEE PROC.E,VOL.138,NO.5,PP.295−8
IEEE TRANS.ON COMP.,VOL.37,NO.10,PP.1273−80
IEEE TRANS.ON COMP.,VOL.C−33,NO.8,PP.731−6
IEEE TRANS.ON COMP.,VOL.C−34,NO.5,PP.393−403

Also Published As

Publication number Publication date
JPH0865175A (ja) 1996-03-08
DE69528796T2 (de) 2003-09-18
FR2721775B1 (fr) 1996-09-06
EP0690584A1 (fr) 1996-01-03
EP0690584B1 (fr) 2002-11-13
FR2721775A1 (fr) 1995-12-29
DE69528796D1 (de) 2002-12-19
US5737343A (en) 1998-04-07

Similar Documents

Publication Publication Date Title
EP0114938B1 (en) On-the-fly multibyte error correction
JP3233860B2 (ja) リードソロモン復号器
US5642367A (en) Finite field polynomial processing module for error control coding
JP3970337B2 (ja) 大規模データ・ブロックのためのハードウェア最適化リード・ソロモン・デコーダ
JPH09507117A (ja) リードソロモン復号化器
JPH0452556B2 (ja)
JP2800723B2 (ja) リードソロモン復号器の誤り位置検出回路
US5818854A (en) Reed-solomon decoder
US5365529A (en) Circuitry for detecting and correcting errors in data words occurring in Reed-Solomon coded blocks and determining when errors are uncorrectable by syndrome analysis, Euclid's algorithm and a Chien search
KR100260415B1 (ko) 고속시리얼에러위치다항식계산회로
JPS63186338A (ja) 誤り訂正回路
JPH1093445A (ja) 誤り位置検出多項式計算装置
US20100174970A1 (en) Efficient implementation of a key-equation solver for bch codes
US20080140740A1 (en) Systems and methods for processing data sets in parallel
US6915478B2 (en) Method and apparatus for computing Reed-Solomon error magnitudes
EP0991196B1 (en) Method of correcting lost data and circuit thereof
JPH10112660A (ja) リード・ソロモン符号を利用した誤り復号方法および装置
JP3614978B2 (ja) ガロア体の除算方法および除算装置
JP2000020333A (ja) 復号装置、演算装置およびこれらの方法
US20070011592A1 (en) Decoder architecture for Reed Solomon codes
US5787100A (en) Apparatus for determining error evaluator polynomial for use in a Reed-Solomon decoder
JP3233502B2 (ja) 復号化装置
JP2553565B2 (ja) ガロア体演算装置
JP2907138B2 (ja) 誤り訂正の演算処理方法及び処理回路
JP2000295116A (ja) 誤り修正符号化方法

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19980609

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20070710

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20080710

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20080710

Year of fee payment: 10

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

Free format text: PAYMENT UNTIL: 20090710

Year of fee payment: 11

LAPS Cancellation because of no payment of annual fees