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

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

Info

Publication number
JPH0865175A
JPH0865175A JP7182225A JP18222595A JPH0865175A JP H0865175 A JPH0865175 A JP H0865175A JP 7182225 A JP7182225 A JP 7182225A JP 18222595 A JP18222595 A JP 18222595A JP H0865175 A JPH0865175 A JP H0865175A
Authority
JP
Japan
Prior art keywords
register
contents
registers
counter
sets
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.)
Granted
Application number
JP7182225A
Other languages
English (en)
Other versions
JP2800723B2 (ja
Inventor
Jacques Meyer
メイヤー ジャック
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.)
STMicroelectronics SA
STMicroelectronics lnc USA
Original Assignee
SGS Thomson Microelectronics SA
SGS Thomson Microelectronics Inc
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 SGS Thomson Microelectronics SA, SGS Thomson Microelectronics Inc filed Critical SGS Thomson Microelectronics SA
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)
  • Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

(57)【要約】 【目的】 リードソロモン復号器のユークリッドアルゴ
リズムを実施する回路および該回路の制御法を開示す
る。 【構成】 リードソロモン誤り訂正装置において、次数
が2t−1のシンドローム多項式の係数はレジスタ内に
記憶され、係数0,0,…,0,1,0はレジスタλに
記憶され、一番目の数はカウンタに記憶される。係数
1,0,…,0はレジスタQに記憶され、複数のゼロは
レジスタμに記憶され、一番目の数を1だけ越える数は
表示レジスタに記憶される。 (a)レジスタの内容が表示レジスタの内容以上であれ
ば、または最後のレジスタRの内容がゼロであれば、値
2t-1i-1 +R2t-1i-1 は各レジスタRi に記憶さ
れ、値Q2t-1λi-1 +R2t-1λi-1 は各レジスタλi
記憶される。 (b)他方、レジスタRとレジスタλの内容およびカウ
ンタの内容は更にレジスタQとレジスタμと表示レジス
タに転送される。ステップ(a)または(b)はカウン
タの内容がtだけ減少するまで繰り返される。

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とレジスタの組λの内容は
レジスタの組μにそれぞれ転送され、カウンタdRとレ
ジスタdQの内容は入れ替えられる。ステップ(b)の
動作も同時に行なわれる。すなわち、ステップ(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に関連した2つの乗算器を使用する代わり、
nサイクル中にnビットの2つの数を掛ける1つの系列
処理乗算器を使用することができる。系列処理乗算器に
より、多項式λとRの決定には2tサイクルの代わりに
2ntサイクルが必要となる。これは回路が非系列処理
乗算器よりも簡単な(系列処理)乗算器を半分含んでい
るので、2ntサイクルが各リードソロモン符号の処理
に利用できるならば欠点ではない。
【0053】図3はレジスタRi とQi (i≠2t−
1)の組に関連のある系列処理乗算器を示している。レ
ジスタRi とQi の出力はANDゲート30と32の組
にそれぞれ加えられる。ゲート30はラインq2t-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の出力を受ける。
【0054】レジスタQ2t-1の連続したビットは、レジ
スタR2t-1の連続したビットがラインr2t-1に加えられ
るのと同時にラインq2t-1に加えられる。ANDゲート
30と32はそれぞれレジスタRi とQ2t-1の内容と、
レジスタQi とR2t-1の内容の部分的な乗算を行なう。
加算器34により与えられる部分的な乗算の組の和は、
和のそれぞれを左にシフトしたレジスタPi の内容に加
えられる。レジスタPi はレジスタRi およびレジスタ
i と大きさが同じであり、オーバーフローした時その
移動子はレジスタPi のビットに再結合され、対象とす
る有限体内で乗算結果を得る。前述の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 スイッチ

Claims (9)

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

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05165662A (ja) * 1991-12-12 1993-07-02 Sony Corp ユークリッドの互除回路

Family Cites Families (11)

* 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
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

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05165662A (ja) * 1991-12-12 1993-07-02 Sony Corp ユークリッドの互除回路

Also Published As

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

Similar Documents

Publication Publication Date Title
EP0114938B1 (en) On-the-fly multibyte error correction
US5170399A (en) Reed-Solomon Euclid algorithm decoder having a process configurable Euclid stack
US6374383B1 (en) Determining error locations using error correction codes
US5517509A (en) Decoder for decoding ECC using Euclid's algorithm
JP3970337B2 (ja) 大規模データ・ブロックのためのハードウェア最適化リード・ソロモン・デコーダ
JP3233860B2 (ja) リードソロモン復号器
EP0329789B1 (en) Galois field arithmetic unit
JPH0452556B2 (ja)
JP2003529233A (ja) データを符号化及び復号化する方法及び装置
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
US5818854A (en) Reed-solomon decoder
JPH0653842A (ja) Rsコードデータ信号を復号化する方法および回路
US5983389A (en) Error correction decoding apparatus
JPH1093445A (ja) 誤り位置検出多項式計算装置
JP2800723B2 (ja) リードソロモン復号器の誤り位置検出回路
JPS63186338A (ja) 誤り訂正回路
EP1442528A2 (en) Decoding method and decoder for reed solomon code
EP0991196B1 (en) Method of correcting lost data and circuit thereof
JP3614978B2 (ja) ガロア体の除算方法および除算装置
JPH09307458A (ja) エラー訂正向け多項式評価装置
JP3233502B2 (ja) 復号化装置
EP0793352B1 (en) Apparatus for determining the error evaluator polynomial for use in a Reed-Solomon decoder
JP2000295116A (ja) 誤り修正符号化方法
JPH047847B2 (ja)
JP2591611B2 (ja) t重誤り訂正符号の符号化復号化回路

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