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
Links
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error 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/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic 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/1525—Determination and particular use of error location polynomials
- H03M13/1535—Determination 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
のあらゆる適当な信号による)伝送の間デジタルデータ
に生ずる誤りを訂正するためのリードソロモン復号器に
関し、より詳細には訂正されるデータと訂正値を適当な
順序で与えるリードソロモン復号器の方法と装置に関す
る。
号の形で伝送するためデータのパケットを与えることか
ら成り、該データのパケットは受信機でRS符号を取り
出し訂正される。RS符号は2t個の異なる根を有する
次数が2tの生成多項式の倍数である次数がM−1の多
項式の係数を含むM個のデジタルデータの組である。R
S符号として伝送した場合、t個の誤り係数まで位置が
検出され訂正できる。
まれている。伝送される係数がnビットならば、GF
(2n )で示す2n 要素の有限体が使用される。この有
限体では、RS符号はN=2n −1までの係数を含んで
いる。
数の間でビット対ビットの排他的ORで表される。従っ
て、αが有限体の任意の要素であればα+α=0であ
る。乗算は有限体の二つの要素の積も有限体のある要素
であるように表される。このように、有限体の非ゼロの
要素は該有限体の他の非ゼロで非単位要素の累乗であ
る。N+1個の要素の有限体で、累乗はαが有限体の非
ゼロで非単位の要素でありiが正または負の整数の時、
モジュールN、すなわちαi =αi+N で表される。従っ
て、N+1個の要素の有限体の非ゼロの要素は次のよう
に書けるα0 ,α1,…,αN-1 。
a0 の組を伝送するため、次の多項式を構成する: a(x)=aN-2t-1xN-2t-1+…+a1 x+a0
式で割った剰余である時、多項式A(x) A(x)=x2ta(x)+r(x) の係数が伝送される。このように、多項式A(x)の係
数AがRS符号を構成し、2tからN−1の次数に対応
する係数が送信される係数aである。伝送においては誤
りを受け、受信された係数Aの幾つかは誤っている。
が2t−1のシンドローム多項式S(x)(以下ではシ
ンドロームと呼ぶ)が形成され、次数i(i=0,1,
…,2t−1)の項の係数は次のように書ける Si =A(αi ) ここに、α0 ,α1 ,…,α2t-1は生成多項式の根であ
る。伝送に誤りが生じなければ、生成多項式の根は多項
式A(x)の根でもあるのでシンドロームはゼロであ
る。
t以下である多項式λ(x)と、誤り訂正多項式と呼ば
れ次数がt未満である多項式R(x)は次のようにな
る: x2tγ(x)+λ(x)S(x)=R(x) ここに、γ(x)は決定されない多項式である。
を有している。もし、αr が多項式λ(x)の根であれ
ば、係数AN-r は誤りと共に伝送される。この係数に対
する誤りは次のように表される: er =R(αr )/αr λ′(αr ) (1) ここに、λ′は多項式λの導関数多項式である。
(x)とR(x)を計算するため使用される。ユークリ
ッドアルゴリズムは次の式から出発する 0x2t+1S(x)=S(x) 1x2t+0S(x)=x2t 更に、多くとも2t個のステップのそれぞれで、式の1
つを2つの式の線形結合の式と置き換えることにより新
しい系が上記の式から形成され、右辺の次数の一番高い
項が打ち消される。2つの上記の式の中で、右辺の次数
の一番低い式が残る。この操作は次数がt未満の右辺の
式が得られるまで同じ方法で繰り返される。右辺は多項
式R(x)であり、多項式λ(x)は同じ式でS(x)
を乗じたものである。
4のコンピュータ関連IEEE会報の記事“パイプライ
ンリードソロモン復号器のVLSI設計”には、ユーク
リッドアルゴリズムの使用例と、この例のユークリッド
アルゴリズムを実施する回路が記載されている。この回
路はアルゴリズムの各ステップを計算するため比較的複
雑なセルを必要とするため特に複雑である。更に、各計
算セルは特別な場合(例えば、ゼロ多項式の係数)を考
慮するように設計する必要がある。
ッドアルゴリズムを実施する特に簡単な回路を提示する
ことである。
ゴリズムを実施する該回路の制御法を提示することであ
る。
ン符号器は、次数が2t−1のシンドローム多項式の係
数に対応した値と、1に等しい二番目の値を除いて全て
がゼロである値で内容がそれぞれ初期化される一番目と
二番目のレジスタの組と、一番目と二番目のレジスタの
組の出力に接続され、1で初期化される三番目の組の最
後のレジスタの値を除いてゼロである値で内容が初期化
される三番目と四番目のレジスタの組を含んでいる。
スタと関係を有しており、前記一番目と二番目の組の前
のレジスタの内容と三番目の組の最後のレジスタの内容
との乗算結果と、三番目と四番目の組の当該レジスタの
内容と一番目の組の最後のレジスタの乗算結果との和を
前記一番目と二番目の組の各レジスタに与えている。
数を1だけ越える数でそれぞれ初期化されるカウンタと
表示レジスタを含んでおり、該表示レジスタはカウンタ
出力に接続されている。
示レジスタの内容以上であれば、または一番目の組の最
後のレジスタの内容がゼロであれば、一番目と二番目の
レジスタの組の書き込みを行い、カウンタの内容を減少
させるため、または、(b)カウンタの内容が表示レジ
スタの内容未満であり、一番目の組の最後のレジスタの
内容がゼロでなければ、一番目、二番目、三番目、四番
目のレジスタの組と表示レジスタの書き込みを行うため
与えられている。シーケンサはカウンタの内容がtだけ
減少すると停止する。
は、一番目と三番目の組の最後のレジスタのビットを連
続して受けるそれぞれ一番目と二番目のラインと、二番
目のラインが1ならば一番目と二番目の組の関連レジス
タの出力を伝える一番目のゲートの組と、二番目のライ
ンが1ならば三番目と四番目の組の関連レジスタの出力
を伝える二番目のゲートの組と、一番目と二番目のゲー
トの組の出力を受ける一番目の加算器と、一番目の加算
器の出力を乗算レジスタの内容に加える二番目の加算器
と、を含んでおり、乗算レジスタの内容は左側に連続的
にシフトされ、移動子は有限体内で乗算が行なわれるよ
うに該内容と再結合される。
示レジスタの出力に接続され、シーケンサはステップ
(b)でカウンタの書き込みを行い、カウンタを減少さ
せる。
号として伝送されたデータのt個の誤りまで訂正するに
必要な係数を決定する方法を提示している。この方法
は、次数が2t−1のシンドローム多項式の係数を決定
すること、一番目のレジスタの組にシンドローム多項式
の係数を記憶し、1に等しい二番目の係数を除き全てゼ
ロである係数を二番目のレジスタの組に記憶し、カウン
タ(dR)に一番目の数を記憶すること、1に等しい最
後の係数を除き全てゼロである係数を三番目のレジスタ
の組に記憶すること、全てゼロである係数を四番目のレ
ジスタの組に記憶すること、一番目の数を1だけ越える
数を表示レジスタに記憶すること、(a)カウンタの内
容が表示レジスタの内容以上であれば、または一番目の
組の最後のレジスタの内容がゼロであれば、一番目と二
番目の組の前のレジスタの内容と三番目の組の最後のレ
ジスタの内容との乗算結果と、三番目と四番目の組の当
該レジスタの内容と一番目の組の最後のレジスタの乗算
結果との和を一番目と二番目の組の各レジスタに記憶
し、カウンタを減少すること、(b)一番目と二番目の
レジスタの組の内容とカウンタの内容を三番目と四番目
のレジスタの組と表示レジスタに転送すること、の各ス
テップを含み、カウンタの内容がtだけ減少するまで
(a)または(b)のステップを繰り返し、一番目と二
番目のレジスタの組の中で誤り訂正多項式の係数と誤り
位置検出多項式の係数を読み出すことの各ステップを含
んでいる。
目の組は2t−1個のレジスタを含み、二番目と四番目
の組がt+1個のレジスタを含んでいる。二番目の組の
一番目のレジスタが前記二番目の組の最後のレジスタの
内容から得られた和を受ける。
(b)において、カウンタの内容と表示レジスタの内容
が入れ替えられ、カウンタが減少する。
初記憶される数はtである。
がそれぞれ、一番目の組の最後のレジスタのビットと三
番目および四番目の組のレジスタの内容を連続して一番
目の部分的な乗算を行なうこと、三番目の組の最後のレ
ジスタのビットと一番目および二番目の組のレジスタの
内容を連続して二番目の部分的な乗算を行なうこと、一
番目と二番目の部分的な乗算結果を連続的に加算し、こ
れらの加算結果を加算毎に左にシフトされるレジスタの
内容に加えること、の各ステップに基づき得られる。
の式から発生する: 0x2t+1S(x)=S(x) 1x2t+0S(x)=x2t
タの組λ、およびカウンタdRはユークリッドアルゴリ
ズムを実施することにより得られる連続した体系の一番
目の式に関係している。同様に、レジスタの組Q、レジ
スタの組μ、および表示レジスタdQは連続した体系の
二番目の式に関係している。
2t-1,R2t-2,…,R0 を含んでおり、一番目のそれぞ
れの式の右辺の次数の減少した項の係数に対応してい
る。レジスタの組λはλt からλ0 のt+1個のレジス
タを含んでおり、一番目のそれぞれの式のS(x)の因
子の次数の減少した項の係数に対応している。カウンタ
dRは一番目のそれぞれの式の右辺の次数を示す数を含
んでいる。
れの右辺に関係しており、レジスタμは二番目のそれぞ
れの式のS(x)の因子に関係しており、表示レジスタ
dQは二番目のそれぞれの式の右辺の次数に関係してい
る。
組Rはシンドロームの係数を記憶し、レジスタの組λは
数0,0,…,0,1,0を記憶し、レジスタの組Qは
数1,0,…,0を記憶し、レジスタの組μはゼロを記
憶する。カウンタdRおよびレジスタdQは例えばそれ
ぞれ2t−1と2tに初期設定される。次に、この方法
によりレジスタは2t−1回のステップを動作し、各ス
テップには次のステップの1つが含まれている(式の中
で、レジスタ識別子もレジスタの内容を示している)。
の内容以上であれば、またはレジスタR2t-1がゼロなら
ば、各レジスタRi (i=1,2,…,2t−2)の内
容は次式に従い変更される: Ri =R2t-1Qi-1 +Q2t-1Ri-1 レジスタR0 の内容は一番目のステップ(a)で打ち消
される。
…,t)は次式に基づき変更される: λi =R2t-1μi-1 +Q2t-1λi-1 レジスタλ0 の内容はR2t-1μt +Q2t-1λt と入れ替
えられる。カウンタdRは1だけ減少する。
更される、すなわちレジスタλ0 はレジスタλt の内容
から計算された値を受ける。これによりレジスタの数が
抑えられる。代わりに、t−1個のレジスタをレジスタ
λおよびμのそれぞれの組の左に追加することができ
る。
タdQの内容より小さく、レジスタR2t−1の内容が
ゼロでなければ、レジスタの組Rとレジスタの組λの内
容はレジスタの組Qとμの対応するビットにそれぞれ転
送され、カウンタdRとレジスタdQの内容は入れ替え
られる。ステップ(a)の動作も同時に行なわれる。す
なわち、ステップ(b)はステップ(a)のサブステッ
プを含んでいる。
対応した値(この場合t−1)を含む時停止する。誤り
位置検出多項式λ(x)の係数はλt からλ0 のレジス
タに記憶され、誤り訂正多項式R(x)の係数はR2t-1
からRt のレジスタに記憶される。
て次数が5のシンドロームの例に対しこの方法を使用し
た場合を示している。使用された有限体はα0 からα14
の15個のゼロでない要素を有している。対象とするシ
ンドロームの多項式は次式の通りである: S(x)=α7 x5 +α12x4 +α6 x3 +α12x2 +
α14x+α14
EE会報の記事に使用されている。計算の順序を示すた
め、この記事ではα0 からα14の要素を二値を示すテー
ブルを参照している。
よる方法の連続的なステップで、レジスタR,Q,λ,
μ,dQおよびカウンタdRの状態を示している。レジ
スタの指標は全てのレジスタを表している(レジスタR
およびQの組に対し0から5を付けており、レジスタR
およびQの組において0は一番目のレジスタを、5は最
後のレジスタを示している;レジスタλおよびμの組に
対しては0から3を付けており、レジスタλおよびμの
組において0は一番目のレジスタを、3は最後のレジス
タを示している)。
α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に記憶される。
スタdQの内容より小さく、レジスタR5 の内容がゼロ
でないので前述のステップ(b)に対応する。(最後の
レジスタを除き)レジスタRのそれぞれとレジスタλの
それぞれの内容には1が掛けられ、(最後のレジスタを
除き)レジスタQのそれぞれとレジスタμのそれぞれの
内容にはα7 が掛けられる。得られた積の和は1だけ左
にシフトされた後レジスタRの組に入れられ、1だけ左
に循環的にシフトされた後レジスタλの組に入れられ
る。同時に、レジスタRとλの組の前の内容はレジスタ
Qとμの組に転送される。カウンタdRとレジスタdQ
の内容が入れ替えられる。カウンタdRの内容は減少
し、レジスタRの組の新しい内容が次数5の多項式に相
当していることを示す。
の内容が等しいので前述のステップ(a)に対応してい
る。レジスタRの組とレジスタλの組の内容にはα7 が
掛けられ、レジスタQの組とレジスタμの組の内容には
α12が掛けられる。得られた積の和は1だけ左にシフト
された後レジスタRの組に入れられ、1だけ左に循環的
にシフトされた後レジスタλの組に入れられる。カウン
タdRが減少する。レジスタRの組の新しい内容は次数
が4の多項式に相当している。
(b)とステップ(a)に対応している。ステップ4
で、カウンタdRはレジスタRの組の内容が次数3の多
項式に相当していることを示している。しかし、この多
項式は次数2と3の項の係数がゼロであるので実際には
次数1の多項式である。
な場合を処理するに必要な回路は不必要に複雑になる。
一般的な場合、カウンタdRの内容である3はt=3未
満でないので更にステップが実行される。
ので前述のステップ(a)に対応する。レジスタRの組
とレジスタλの組の内容にはα10が掛けられ、レジスタ
Qの組とレジスタμの組の内容には0が掛けられる。和
は1だけ左にシフト(レジスタλの組の場合循環的にシ
フト)された後レジスタRの組およびレジスタλの組に
加えられる。カウンタdRの内容は減少する。この方法
はカウンタdRがt=3未満の次数を示すので停止す
る。
R3 に含まれる係数は誤り訂正多項式R(x)の係数で
あり、レジスタλ3 からλ0 に含まれる係数は誤り位置
検出多項式λ(x)の係数である(実際には、これらの
多項式のそれぞれにはこの場合はα10である定数が掛け
られるが誤り訂正には影響を与えない)。この例の場
合、見つけられる多項式は次の通りである: R(x)=α5 x+α λ(x)=α5 x2 +αx+α2
これは受けた係数の中で指標15−10=5および15
−3=12を有するものが誤っていることを示してい
る。対応する誤りはα11とα7 である。
実施態様を示している。この回路はあらゆるリードソロ
モン符号に容易に展開できる。R2t-2からR0 の各レジ
スタによりその内容がそれぞれの乗算器10に与えられ
る:λt からλ0 の各レジスタによりその内容がそれぞ
れの乗算器12に与えられる:Q2t-2からQ0 の各レジ
スタによりその内容がそれぞれの乗算器14に与えられ
る:μt からμ0 の各レジスタによりその内容がそれぞ
れの乗算器16に与えられる。レジスタR2t-1の内容が
乗算器14と16の二番目の入力に加えられ、レジスタ
Q2t-1の内容が乗算器10と12の二番目の入力に加え
られる。レジスタRi とQi に関係のある乗算器10と
14の出力がレジスタRi+1 に加えられる加算器18に
加えられる。レジスタλi とレジスタμi に関係のある
乗算器12と16の出力は出力がレジスタλi+1 または
i=tならλ0 に加えられる加算器20に加えられる。
対応する初期値を受けるように接続されている。レジス
タλの組は初期値0,0,…,0,1,0を受けるよう
に接続されている。レジスタQの組は初期値1,0,
…,0を受けるように接続されている。最後に、レジス
タμの組はリセット入力RSTを有している。レジスタ
Rの組とレジスタλの組はそれぞれレジスタQの組とレ
ジスタμの組に接続されており、レジスタRの組とレジ
スタλの組の内容はレジスタQとμの組に伝えられる。
図2では、カウンタdRとレジスタdQがループ状にな
っている。
り、値tで初期化される。同様に、レジスタdQは値t
+1で初期化される。この実施態様では、この方法を停
止させる時カウンタdRの値をt−1よりも0と比較し
決定することが容易であるため、カウンタdRは前述の
実施態様で示したようにシンドロームの次数に相当する
2t−1の代わり値tで初期化される。
0と比較し、更にカウンタdRの内容をレジスタdQの
内容と比較しステップ(a)またはステップ(b)を選
択する。シーケンサ22はレジスタとカウンタを制御
し、前述の動作を得る。シーケンサは、例えばVHDL
のような論理回路記述言語で前述の方法のステップを翻
訳できる当業者により容易に理解できる。
有限体に定義された乗算と加算を実行するため接続され
ている。
易である;しかし乗算はより複雑である。
されたリードソロモン符号の係数の数より小さければ、
加算器18、20に関連した2つの乗算器を使用する代
わり、nサイクル中にnビットの2つの数を掛ける唯1
つのシーケンシャル乗算器を使用することができる。シ
ーケンシャル乗算器により、多項式λとRの決定には2
tサイクルの代わりに2ntサイクルが必要となる。こ
れは回路が非直列乗算器よりも簡単な(シーケンシャ
ル)乗算器を半分の数だけ含んでいるので、2ntサイ
クルの時間が各リードソロモン符号の処理に利用可能な
らば欠点ではない。
1)の組に関連するシーケンシャル乗算器を示してい
る。レジスタRiとQiの出力はANDゲート30と3
2の組にそれぞれ加えられる。ゲート30はラインq
2t−1が1の時、レジスタRiの出力を加算器34の
一番目の入力に伝える。ゲート32はラインr2t−1
が1の時、レジスタQiの出力を加算器34の二番目の
入力に伝える。ラインq2t−1とr2t−1はそれぞ
れレジスタQ2t−1とR2t−1のビットを最上位ビ
ットから最下位ビットまで順に受ける。加算器34の出
力は加算器36によりレジスタPiの内容に加えられ
る。加算器36の出力は次の段階のレジスタRi+1に
加えられ、レジスタRiは前の段階の加算器36の出力
を受ける。
レジスタR2t−1の連続したビットがラインr
2t−1に加えられるのと同時にラインq2t−1に加
えられる。ANDゲート30と32はそれぞれレジスタ
RiとQ2t−1の内容と、レジスタQiとR2t−1
の内容の部分的な乗算を行なう。加算器34により与え
られる部分的な乗算の組の和は、レジスタPiの内容に
加えられ、レジスタPiの内容は加算毎に左にシフトさ
れる。レジスタPiはレジスタRiおよびレジスタQi
と大きさが同じであり、オーバーフローした時そのキャ
リーはレジスタPiの特定のビットに再結合され、対象
とする有限体内で乗算結果を得る。前述の16個の要素
の有限体の例では、キャリーは重み0と1のビットと再
結合される。
i の入力に置かれている。このスイッチの一番目の位置
で、レジスタRi は前段の加算器36の出力を受ける
(i=0ならば、値0を受ける)。信号INITをイネ
ーブルにすることにより選択される二番目の位置で、レ
ジスタRi はシンドロームの係数Si を受ける。
れている。スイッチ40の一番目の位置で、レジスタQ
i はレジスタRi の出力を受ける。信号INITをイネ
ーブルにすることにより選択されるスイッチ40の二番
目の位置で、レジスタRi は0を受ける(またはi=2
t−1ならば1を受ける)。
係する段は同じである。
レジスタR,Q,λ,μは対応した初期値(Si ,0,
1)を受け、これらの値を記憶する。
(b)が実行される。各ステップには部分乗算のn個の
サブステップが含まれ、この部分乗算の間シーケンサ2
2はレジスタR2t-1のnビットをラインr2t-1に連続に
与え、同時にレジスタQ2t-1のnビットをラインq2t-1
に与える。これらのサブステップのそれぞれで、レジス
タPは移動子の再結合により左にシフトするようにイネ
ーブルされる。
の終わりで、加算器36は最後の結果を出力する。レジ
スタの組Rとλのそれぞれはシーケンサによりイネーブ
ルにされこれらの結果を受ける。ステップ(b)の間、
レジスタQの組とレジスタμの組はレジスタRの組とレ
ジスタλの組と同時にイネーブルにされレジスタRの組
とレジスタλの組の古い値を受ける。
に開示した好ましい実施態様に行なうことができる。例
えば、カウンタdRとレジスタdQの内容を入れ替えカ
ウンタdRを減少させる代わり、カウンタを減少させる
ことなしにカウンタdRの内容をレジスタdQに転送す
ることができる。更に、この方法の終わりを検出するた
め、カウンタdRの内容を制御する代わり、この装置で
は2t−1回のステップ(a)または(b)を計算する
ことができる。
基づき記載したが、当業者は種々の交換、変更、改善を
容易に行なうことができる。これらの交換、変更、改善
はこの発明の内容および範囲内である。従って、前述の
記載は一例でありこれらにより制限されない。
す図である。
表す図である。
様の部分図である。
Claims (7)
- 【請求項1】 次数が2t−1のシンドローム多項式
(S)の係数に対応した値と、1に等しい二番目の値を
除いて全てがゼロである値で内容がそれぞれ初期化され
る一番目と二番目のレジスタの組(R,λ)と、 一番目と二番目のレジスタの組の出力に接続され、1で
初期化される三番目の組の最後のレジスタの値を除いて
ゼロである値で内容が初期化される三番目と四番目のレ
ジスタの組(Q,μ)と、 一番目と二番目の組の各レジスタ(Ri,λi)と関係
を有しており、前記一番目と二番目の組のレジスタ(R
i−1,λi−1)の前の内容と三番目の組の最後のレ
ジスタ(Q2t−1)の内容との乗算結果と、三番目と
四番目の組の対応するレジスタ(Qi−1,μi−1)
の内容と一番目の組の最後のレジスタ(R2t−1)の
乗算結果との和を前記一番目と二番目の組の各レジスタ
(Ri,λi)に与える計算回路(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ならば一番目と二番目の組の関連レ
ジスタ(Ri,λi)の出力を伝える一番目のゲートの
組(30)と、二番目のラインが1ならば三番目と四番
目の組の関連レジスタ(Qi,μi)の出力を伝える二
番目のゲートの組(32)と、 一番目と二番目のゲートの組(30、32)の出力を受
ける一番目の加算器(34)と、 一番目の加算器の出力を乗算レジスタ(Pi)の内容に
加える二番目の加算器(36)と、 を含み、乗算レジスタの内容が左側に連続的にシフトさ
れ、キャリーは有限体内で乗算が行なわれるように該内
容と再結合されることを特徴とするリードソロモン復号
器。 - 【請求項2】 二番目の組(λ)の一番目のレジスタに
対応する計算回路が二番目と四番目の組の最後のレジス
タの内容を用いて計算を行なう請求項1に記載のリード
ソロモン復号器。 - 【請求項3】 カウンタ(dR)が表示レジスタ(d
Q)の出力に接続され、シーケンサ(22)がステップ
(b)でカウンタの書き込みを行い、カウンタを減少さ
せるように動作する請求項1に記載のリードソロモン復
号器。 - 【請求項4】 次数が2t−1のシンドローム多項式の
係数を決定すること、 一番目のレジスタの組(R)にシンドローム多項式の係
数を記憶し、1に等しい二番目の係数を除き全てゼロで
ある係数を二番目のレジスタの組(λ)に記憶し、カウ
ンタ(dR)に一番目の数を記憶すること、 1に等しい最後の係数を除き全てゼロである係数を三番
目のレジスタの組(Q)に記憶し、全てゼロである係数
を四番目のレジスタの組(μ)に記憶し、一番目の数を
1だけ越える数を表示レジスタ(dQ)に記憶するこ
と、 (a)カウンタ(dR)の内容が表示レジスタ(dQ)
の内容以上であれば、または一番目の組の最後のレジス
タ(R2t−1)の内容がゼロであれば、一番目と二番
目の組の前のレジスタの内容と三番目の組の最後のレジ
スタ(Q2t− 1)の内容との乗算結果と、三番目と四
番目の組(Q,μ)の当該レジスタの内容と一番目の組
の最後のレジスタ(R2t−1)の乗算結果との和を一
番目と二番目の組(R,λ)の各レジスタに記憶し、カ
ウンタ(dR)を減少すること、 (b)一番目と二番目のレジスタの組(R,λ)の内容
とカウンタ(dR)の内容を三番目と四番目のレジスタ
の組(Q,μ)と表示レジスタ(dQ)に転送するこ
と、 の各ステップを含み、 カウンタ(dR)の内容がtだけ減少するまで(a)ま
たは(b)のステップを繰り返し、一番目と二番目のレ
ジスタの組の中で誤り訂正多項式(R)の係数と誤り位
置検出多項式(λ)の係数を読み出し、 一番目と三番目の組(R,Q)が2t−1個のレジスタ
を含み、二番目と四番目の組(λ,μ)がt+1個のレ
ジスタを含み、二番目の組の一番目のレジスタ(λo)
が前記二番目の組の最後のレジスタ(λt)の内容から
得られた和を受ける、ことを特徴とするリードソロモン
符号として伝送されたデータ内のt個の誤りを訂正する
ために必要な係数の決定方法。 - 【請求項5】 ステップ(b)において、カウンタ(d
R)の内容と表示レジスタ(dQ)の内容が入れ替えら
れ、カウンタが減少する請求項4に記載の方法。 - 【請求項6】 カウンタ(dR)に最初記憶される数が
tである請求項4に記載の方法。 - 【請求項7】 乗算結果の和がそれぞれ、 一番目の組の最後のレジスタ(R2t−1)のビットと
三番目および四番目の組のレジスタ(Qi,μi)の内
容を連続して一番目の部分的な乗算を行なうこと、 三番目の組の最後のレジスタ(R2t−1)のビットと
一番目および二番目の組のレジスタ(Ri,λi)の内
容を連続して二番目の部分的な乗算を行なうこと、 一番目と二番目の部分的な乗算結果を連続的に加算し、
これらの加算結果を加算毎に左にシフトされるレジスタ
(P)の内容に加えること、 の各ステップに基づき得られる請求項4に記載の方法。
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)
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)
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 |
-
1994
- 1994-06-27 FR FR9408122A patent/FR2721775B1/fr not_active Expired - Fee Related
-
1995
- 1995-06-21 DE DE69528796T patent/DE69528796T2/de not_active Expired - Fee Related
- 1995-06-21 EP EP95410057A patent/EP0690584B1/fr not_active Expired - Lifetime
- 1995-06-22 US US08/493,830 patent/US5737343A/en not_active Expired - Lifetime
- 1995-06-27 JP JP7182225A patent/JP2800723B2/ja not_active Expired - Fee Related
Non-Patent Citations (5)
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 |