JP3850511B2 - リードソロモン復号装置 - Google Patents
リードソロモン復号装置 Download PDFInfo
- Publication number
- JP3850511B2 JP3850511B2 JP11676697A JP11676697A JP3850511B2 JP 3850511 B2 JP3850511 B2 JP 3850511B2 JP 11676697 A JP11676697 A JP 11676697A JP 11676697 A JP11676697 A JP 11676697A JP 3850511 B2 JP3850511 B2 JP 3850511B2
- Authority
- JP
- Japan
- Prior art keywords
- decoding
- input
- reed
- data
- multiplication
- 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
- 238000012545 processing Methods 0.000 claims description 55
- 238000012937 correction Methods 0.000 claims description 44
- 238000004364 calculation method Methods 0.000 claims description 40
- 208000011580 syndromic disease Diseases 0.000 claims description 13
- 230000008034 disappearance Effects 0.000 claims 1
- 238000007792 addition Methods 0.000 description 25
- 230000014509 gene expression Effects 0.000 description 23
- 238000010586 diagram Methods 0.000 description 21
- 230000015654 memory Effects 0.000 description 13
- 238000000034 method Methods 0.000 description 13
- 239000011159 matrix material Substances 0.000 description 3
- 230000002093 peripheral effect Effects 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 239000000470 constituent Substances 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
Images
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/158—Finite field arithmetic processing
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/60—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
- G06F7/72—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
- G06F7/724—Finite field arithmetic
-
- 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/1515—Reed-Solomon codes
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- General Physics & Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computational Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Algebra (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Error Detection And Correction (AREA)
- Detection And Correction Of Errors (AREA)
Description
【発明の属する技術分野】
本発明は、記録媒体やディジタル伝送の誤り訂正符号化として用いられるリードソロモン符号化された信号を復号するリードソロモン復号装置に関する。
【0002】
【従来の技術および発明が解決しようとする課題】
リード・ソロモン符号(以下RS符号)は、その符号化効率の良さとバーストエラーに対する適正から、主に記録媒体やディジタル伝送の外符号に用いられている。
例えばコンパクトディスクで採用されているエラー訂正符号は、CIRC訂正符号(クロスインターリーブ・リード・ソロモン符号)と称され、インターリーブの技法と組み合わせた積符号である。その外符号としてRS(28、24)符号が、内符号としてRS(32、28)符号が採用されていて、それぞれC2符号及びC1符号と呼ばれる。いずれの符号とも、ひとつのRS符号化シンボルは1バイトで構成され、ひとつのRS符号化ブロックは4バイトのパリティ検査列を含んでいる。
【0003】
一般に、RS符号は2tシンボルの検査列でtシンボルの訂正が可能である。tシンボルの訂正にはt個の誤り位置とそのそれぞれの誤りに対応したt個の誤りの値を知る必要がある。RS符号はt個の誤りの発生に対し、復号側でシンドローム演算をすることで2t個の線形独立な方程式を得る。この方程式を解くことで2t個の未知数である、前記t個の誤り位置とそのそれぞれの誤り位置に対応した前記t個の誤りの値を求めることができる。
【0004】
一方、CIRC符号のように積符号の構成を取っているものは、内符号に対する内側RS復号において訂正できなかったRS符号化ブロックや誤訂正の可能性の比較的高いRS符号化ブロックに消失フラグを付加することで、外符号に対応した外側RS復号において消失エラー訂正が可能になる。消失フラグが付加された内符号の消失シンボルはデ・インターリーブによって複数の外側のRS符号化ブロックに分散される。消失エラー訂正では、前記消失シンボルに誤りが存在すると仮定してシンドローム演算から得られる連立方程式を解く。誤り位置を既知として解くので最大2t個の誤りを値を求めることができる。即ち、2tシンボルの検査列を持つRS符号に対しては、消失エラー訂正を実行することで最大2tシンボルの誤り訂正が可能である。
【0005】
CIRC符号を例に挙げて、消失エラー訂正の手法を説明する。
CIRC符号の場合、内符号であるC1符号のRS復号(C1復号)において消失フラグを付加することで、外符号であるC2符号のRS復号(C2復号)で消失エラー訂正が可能である。C1符号、C2符号ともにt=2であるから、C1復号は最大2バイトの訂正が、C2復号の消失エラー訂正では最大4バイトの訂正がそれぞれ可能である。そのC2復号におけるシンドロームs0 〜s3 と、誤り値e1 〜e4 が次のようにして求められる。
CIRC符号の符号生成多項式Ge(x)は、下記式(1)で示される。
【0006】
【数1】
【0007】
ここでαはガロア体の原始元である。このとき、入力系列からシンドローム演算により得たs0 〜s3 は、前記x1 〜x4 およびe1 〜e4 との間に下記式(2)で示される関係がある。
【0008】
【数2】
【0009】
ここで記号‘・’はガロア体上の乗算を示し、記号‘+’はガロア体上の加算を示す。以下、あるガロア体の元同士の四則演算は、そのガロア体上での演算を示すこととする。
前記式(2)を連立方程式を解いて、未知数である誤り値e1 〜e4 を求めると次のようになる
まず、e4 は、下記式(3)として得られる。
【0010】
【数3】
【0011】
この得られたe4 を前記式(2)に代入して3つの等式から成る連立方程式を再構成する。即ち、CIRC符号で用いられているガロア体は加算と減算が同じであることに注意して下記式(4)のように修正することで、前記式(2)の連立方程式は下記式(5)に変形される。
【0012】
【数4】
【0013】
【数5】
【0014】
これは、連立方程式の解を、手計算で順に求めるときによく用いられる手法である。次に、式(5)の連立方程式を解いてe3 を求めると、下記式(6)のようになる。
【0015】
【数6】
【0016】
同様にして修正を施すことで、前記式(5)の連立方程式は下記式(7),(8)のように変形される。
【0017】
【数7】
【0018】
【数8】
【0019】
さらに、式(8)の連立方程式を解いてe2 を求めると、下記式(9)となる。
【0020】
【数9】
【0021】
次に、この求めたe2 を前記式(8)に代入して下記式(10)を得る。
【0022】
【数10】
【0023】
このようにして、誤り値e1 〜e4 を順次求めることができる。
上述した手法において、情報として元来もっているものと、実際の復号の際に行われる演算操作とを区別するために、記号‘=’と‘←’とを使い分けている。つまり、実際の復号演算に対応するのは、式(3)、(4)、(6)、(7)、(9)および(10)であり、少なくとも、ガロア体上の加算が23回、乗算が17回、除算が3回必要である。
一方、消去エラー訂正を行わない場合には、C2復号で最大2バイトまで訂正(2重エラー訂正)ができる。このときは、シンドロームs0 〜s3 から、誤り値e1 ,e2 と誤り位置x’1 ,x’2 を求める。
以上は、4重消去エラー訂正、すなわち、消去位置の数が4の場合の復号演算処理過程である。
【0024】
以下、従来のリードソロモン復号装置について説明する。
図9は、従来のリードソロモン復号装置1の構成図である。
図9に示すように、リードソロモン復号装置1は、メモリブロック2、バスI/Fブロック3および復号演算処理部4を備えている。
メモリブロック2は、スクラッチパッドメモリ5,6およびスイッチ7,8を備えている。
スイッチ7は、入力データを選択的にスクラッチパッドメモリ5,6に出力する。スイッチ8は、スクラッチパッドメモリ5の記憶内容を選択的に訂正操作実行器12に出力する。
【0025】
バスI/Fブロック3は、入力パラメータ演算器9、レジスタBOUT 10、バイナリカウンタ11、訂正操作実行器12およびレジスタBIN13を備えている。
復号演算処理部4は、スイッチ14、レジスタGIN15、レジスタGOUT 16および復号演算器17を備えている。
図10は、リードソロモン復号装置1の動作時におけるデータおよび構成要素の時系列的な状態を示し、(A)は入力データ、(B)は出力データ、(C)はレジスタBOUT 10の記憶状態、(D)はレジスタBIN13の記憶状態、(E)はレジスタGOUT 16の記憶状態、(F)はレジスタGIN15の記憶状態、(G)は復号演算器17の処理状態をそれぞれ示している。
【0026】
図10に示すように、メモリブロック2のスクラッチパッドメモリ5においてC1符号に関する入力データの入出力を行っているときには、バスI/Fブロック3はC1符号に関する入力データ対して、入力パラメータ演算器9において復号演算入力パラメータの計算を行い、訂正操作実行器12において訂正操作を行っている。また、このとき、復号演算処理部4ではC2符号に関する入力データについてC2復号処理が行われている。
【0027】
また、スクラッチパッドメモリ6においてC2符号に関する入力データの入出力を行っているときには、バスI/Fブロック3はC2符号に関する入力データ対して、入力パラメータ演算器9において復号演算入力パラメータの計算を行い、訂正操作実行器12において訂正操作を行っている。また、このとき、復号演算処理部4ではC1符号に関する入力データについてC1復号処理が行われている。
【0028】
ここで、復号演算入力パラメータとは、具体的には、シンドローム(S)および消失位置(I)である。
シンドローム(S)は、図9に示す入力パラメータ演算器9およびレジスタBOUT 10の組み合わせによって演算される。
図11は、入力パラメータ演算器9およびレジスタBOUT 10の構成図である。
図11に示すように、入力パラメータ演算器9は、乗算器24〜27、加算器20〜23、消去フラグ検出器28および分配器29を備えている。
また、レジスタBOUT 10は、レジスタ30〜33およびレジスタ34〜37を備えている。
【0029】
乗算器24〜27は、乗算係数が固定値のガロア体の乗算器であり、それぞれ×α0 、×α1 、×α2 、×α3 の乗算を行う。
消去フラグ検出器28は、入力データに含まれる消去フラグが「1」であるか否かを検出する。
分配器29は、入力データに含まれる各RSシンボル位置と対応して動作するバイナリカウンタ11の出力をレジスタBOUT 10のレジスタ34〜37のいずれかに出力して記憶させる。
このレジスタ34〜37の記憶結果が消失位置(I)を示す。
【0030】
消失位置(I)は、図9に示す復号演算器17において、後述するコンバータにより、ガロア体の表現に、すなわち「i」から「αi 」に変換される。
具体的には、I={i1 ,i2 ,i3 ,i4 }が、X={x1 ,x2 ,x3 ,x4 }に変換される。
【0031】
4重消失エラー訂正を実行する場合の前記式(3),(4),(6),(7)および(10)に対応する復号演算は、復号演算処理部4において実行され、レジスタBOUT 10からの復号演算入力パラメータS={s0 ,s1 ,s2 ,s3 }と、I={i1 ,i2 ,i3 ,i4 }を変換して得られたX={x1 ,x2 ,x3 ,x4 }とを用いて、復号演算出力パラメータE={e1 ,e2 ,e3 ,e4 }およびX’=X={x1 ,x2 ,x3 ,x4 }を得る。消失エラー訂正を行わない場合には、前述した2重エラー訂正においては、復号演算入力パラメータS={s0 ,s1 ,s2 ,s3 }を用いて、復号演算出力パラメータE={e1 ,e2 }およびX’={x’1 ,x’2 }を得る。
【0032】
誤り位置XあるいはX’は、復号演算処理部4において、後述するコンバータで、指数値に、すなわちαi からiに変換される。具体的には、X’=X={x1 ,x2 ,x3 ,x4 }がI={i1 ,i2 ,i3 ,i4 }に変換され、X’={x’1 ,x’2 }がI’={i’1 ,i’2 }に変換される。
【0033】
図12は、訂正操作実行器12およびレジスタBIN13の構成図である。
図12に示すように、訂正操作実行器12は、比較器40、加算器45およびゲートロジック46を備えている。
また、レジスタBIN13は、レジスタ41〜44およびレジスタ47〜50を備えている。
【0034】
バスI/Fブロック3は、レジスタGOUT 16から入力した誤り値(E)と誤り位置(I’)とを用いて、訂正操作を実行する。
バイナリカウンタ11は、スイッチ7,8によるスクラッチパッドメモリ5,6からの出力の切り換わりに対応して動作し、バイナリカウンタ11のバイナリカウンタ値が誤り位置(I’)の構成要素のいずれか(i’n )と一致したときに、ゲートロジック46から対応する誤り値en が加算器45に出力される。そして、加算器45において、誤り値en と、スイッチ8からのメモリブロックのデータ出力とについて、ガロア体の加算が行われ、加算結果が出力データとなる。
【0035】
次に、復号演算処理部4について説明する。
図13は、復号演算処理部4の構成図である。
図13に示すように、復号演算処理部4は、マイクロコードROM50、シーケンサ51、デスティネイションコントローラ52、ワーキングレジスタ53、GLU(Global Logic Unit) 54、ポート選択器55を備えている。
【0036】
CIRC符号のようにtが4より小さく、連立方程式から解が直接的に求められる場合で、かつ、処理スピードが比較的遅くても良いときには、復号演算処理部4としては、RISC(Reduced Instruction Set Computer)型のものが用いられる。
復号演算処理部4では、各演算は逐次的に行われ、演算セットは、GLU54として時分割共有化される。また、一連の演算処理は、マイクロコード化されて、インストラクションコードとしてマイクロコードROM50に格納され、シーケンサ51からのROMアドレスによって、処理順序(メモリからの読み出し順序)が制御される。
【0037】
また、途中の演算結果は、予め用意された複数のワーキングレジスタ53に一時的に記憶されるが、どのワーキングレジスタ53に記憶するかも、インストラクションコード内のデスティネイションコントロールコードに記述されている。この手法によれば、処理スピードの制限はあるものの、GLU54の時分割共有化による装置の縮小化ができると共に、演算処理のマイクロコード化により設計の自由度を高めることができる。
例えば、2つのガロア体の元同士の加算は、各ビットの排他的論理和に相当し、復号演算処理部4では1ステップで実現できる。すなわち、GLU54は、ビット毎の排他的論理和の機能を含んでいる。但し、ガロア体における乗算は、加算に比べてはるかに複雑であり、これをROMを用いて実現しようとすると、2バイトのアドレス入力に対して1バイトの出力を得ることになり、非常に規模が大きくなってしまう。
【0038】
GLU54の構成について説明する。
図14は、GLU54の構成図である。
図14に示すように、GLU54は、オペレイションロジック60,61、コンバータ62,63およびオペレイションセレクタ64を備えている。
GLU54では、2つの入力データa,bのガロア体の元のそれぞれを、コンバータ62において、対応する原始元の指数の値に変換、すなわちαi をiに変換し、指数同士の加算を実行する。そして、その得られた加算結果を、コンバータ63において、対応するガロア体の元に変換、すなわち、iをαi に変換する。
【0039】
例えば、αv とαw の乗算を実行して、αV+W を得るには、GLU54において、下記式(11)に示す4つの演算処理が必要で、少なくとも4ステップを要する。
【0040】
【数11】
【0041】
除算も同様で、乗算における指数部の加算の代わりに指数部の減算を実行する。
従って、上述した手法では、誤り値e1 〜e4 を求めるには、上記式(3),(4),(6),(7),(9)および(10)における乗算・除算が20回あるので、これだけでも80ステップ以上必要となる。これに、23回の加算を含めると、合計103ステップ以上必要となる。そのため、高速処理の要求に応えることができない。
なお、tが4より大きい場合には、前記式(2)に示したような連立方程式を解くことは非現実的であるため、ユークリッド復号法などの繰り返しアルゴリズムが採用される。
しかしながら、いずれにしても、ガロア体の乗算や除算に4ステップも必要となると、高速処理の実現は困難である。
【0042】
一方、CD−ROMのデータ再生におけるスピードの要求は、現在、2倍速から12倍速以上にまで高まっており、誤り訂正の処理ステップ数の制限が日増しに厳しくなってきている。さらには、光学系の読み取り誤差が、当然大きくなってくるわけで、前記消失エラー訂正による訂正能力の強化が強く望まれている。つまり、より高い機能を、より少ないステップ数で実現する必要がある。
【0043】
12倍速対応のC1復号およびC2復号を実現するには、例えば演算の1ステップを16MHzの1クロック内で終了するとすれば、C1とC2の1回ずつの復号を、192ステップ以内で実行する必要がある。これには分岐処理等の周辺処理を含めての条件なので、C2復号のコアの処理はその1/4以内のステップ数で実現する必要がある。
しかしながら、従来の構成では、例えばC2復号で消失エラー訂正を行うときに、その訂正コアの処理だけで103ステップ以上の演算ステップ数を要し、高速処理の要求に答えることができない。
【0044】
本発明は、上述した従来技術に鑑みてなされ、回路規模を大幅に増大させることなく、復号演算を高速に行うことが可能なリードソロモン復号装置を提供することを目的とする。
【0045】
本発明によれば、データ系列からシンドローム及び消失データを生成する入力パラメータ演算手段と、所定の復号演算操作を示す命令コードに基づいて、前記シンドローム及び消失データを用いた復号演算を行ない、誤り値データ及び誤り位置データを生成する復号演算手段と、前記誤り値データ及び誤り位置データを用いて訂正操作を行なう訂正操作手段とを有するリードソロモン復号装置において、
前記復号演算手段が、ガロア体での積和演算を1ステップで実行する演算処理部と、少なくとも第1の入力ポート、第2の入力ポート及び第3の入力ポートと、前記第1の入力ポート及び前記第2の入力ポートから入力されたデータを乗算する乗算器と、前記乗算器の出力データと前記第3の入力ポートから入力されたデータとの加算を行なう加算器と、前記命令コードを記憶する第1の記憶手段と、前記命令コードの実行順序を制御するシーケンサと、前記演算処理部の演算結果を一時的に記憶する複数の作業レジスタを備える第2の記憶手段と、前記命令コードに基づいて、前記複数の作業レジスタの記憶内容をそれぞれ前記第1〜3の入力ポートに出力するポート選択手段とを備える、
リードソロモン復号装置が提供される。
【0049】
好ましくは、前記第2の記憶手段が、前記命令コードに応じて決定した前記作業レジスタに前記演算処理部からの演算結果を記憶し、前記ポート選択手段が、前記複数の作業レジスタの記憶内容をそれぞれ前記第1〜3の入力ポートの何れかに出力可能である。
【0050】
また好ましくは、前記第2の記憶手段が、前記複数の作業レジスタとしてシフトレジスタを用いており、前記演算処理部からの演算結果を所定の作業レジスタに最初に記憶し、 前記ポート選択手段が、前記複数の作業レジスタの記憶内容をそれぞれ前記第1〜3の入力ポートの何れかに出力可能である。
【0051】
好ましくは、前記命令コードが、オペレーションフィールドと、前記複数の作業レジスタの記憶内容をそれぞれ前記復号演算手段の前記第1〜3の入力ポートの何れに出力するかを示すフィールドとを有する。
【0052】
好ましくは、前記復号演算手段が、ガロア体GF(2i)の第1の元αW(AW, i-1, AW, i-2, AW, i-3, …, AW, 3, AW, 2, AW, 1, AW, 0)Tと第2の元αV(AV, i-1, AV, i-2, AV, i-3, …, AV, 3, AV, 2, AV, 1, AV, 0)Tとの乗算を行なう乗算器であって、前記第1の元と前記ガロア体の原始元αのα0, α1, α2, α3, …, αi-3, αi-2, αi-1とのそれぞれの演算を並列に行なうi個の乗算部と、前記i個の乗算部の乗算結果と前記AV, 0, AV, 1,
AV, 2, AV, 3, …, AV, i-3, AV, i-2, AV, i-1とのそれぞれの論理積演算を並列に行なうi個の論理積演算部と、前記i個の論理積演算部の演算結果を加算する加算部とを備える乗算器を有する。
【0053】
好ましくは、前記復号演算手段が、ガロア体GF(2i)の第1の元αW(AW, i-1, AW, i-2, AW, i-3, …, AW, 3, AW, 2, AW, 1, AW, 0)Tと第2の元αV(AV, i-1, AV, i-2, AV, i-3, …, AV, 3, AV, 2, AV, 1, AV, 0)Tとの乗算を行なう乗算器であって、前記第1の元と前記AV, 0, AV, 1, AV, 2, AV, 3, …, AV, i-3, AV, i-2, AV, i-1とのそれぞれの論理積演算を並列に行なうi個の論理積演算部と、前記i個の論理積演算部の乗算結果と前記ガロア体の原始元αのα0, α1, α2, α3, …, αi-3, αi-2, αi-1とのそれぞれの乗算を並列に行なうi個の乗算部と、前記i個の乗算部の乗算結果を加算する加算部とを備える乗算器を有する。
【0054】
【発明の実施の形態】
以下、本発明の実施形態に係わるリードソロモン復号装置について説明する。高速処理を実現するひとつの直接的な手法は、1ステップでガロア体の乗・除算を実現することである。これはROMで実現できるが、かなり大きなもの(それぞれ容量64Kバイト)になることを先に述べた。ところが、乗算についてはその規則性を利用して、高速な乗算回路が300ゲート程度で実現できる。
一例として、ガロア体GF(2i )でi=8の場合を示す。
まず、ガロア体GF(28 )の原始元をαとして、その任意の元αv は下記式(12),(13)のように表現できる。
【0055】
【数12】
【0056】
【数13】
【0057】
ここで、Av,i =0あるいは1であり、v は任意の整数である。また、(αv )は元αv の列ベクトル表現を示し、(…)T は転置行列を表す。
ここで前記ガロア体の任意の元αv とαw :(Aw ,7 Aw ,6... Aw ,1 Aw ,0)T との乗算を考える。前記式(13)から下記式(14)が成り立つ。
【0058】
【数14】
【0059】
この式(14)を列ベクトルで表現して、下記式(15)を得る。
【0060】
【数15】
【0061】
ここで[×αi ]はαi を乗じることに相当する行列で8×8行列である。つまり、下記式(16)が成り立つ。
【0062】
【数16】
【0063】
具体的には、CIRC符号のガロア体の下記式(17)に示す体生成多項式から、下記式(18),(19)が成り立つ。
【0064】
【数17】
【0065】
【数18】
【0066】
【数19】
【0067】
前記式(15)から、ガロア体の乗算回路は、図1に示すように、2つの入力(αw ,αv )のうち、片方の元に乗算器111〜118によってα0 〜α7 を乗じたものを、もう片方の各ビットを一方の入力とするANDゲート121〜128によってゲートして、8個の8バイトの出力を得て、それらの加算(ビットごとの排他的論理和)をGF加算器129によって演算する構成で実現できる。前記式(18)、(19)より[×α0 ]〜[×α7 ]のそれぞれに対応した各係数乗算回路は、それぞれ3〜21個の排他的論理和ゲートを施すとガロア体の乗算回路全体を300ゲートくらいで実現できる。この係数乗算回路は、掛ける値が固定値の乗算回路である。
この乗算回路単体の遅延量は、例えば10ns以下であり、16MHZ の周期で1ステップでの処理が十分可能である。
【0068】
なお、前記式(15)は、下記式(20)のように変形できる。
【0069】
【数20】
【0070】
これに対応して、ガロア体の乗算回路は、図2のようにANDゲートを入力側に配置することも可能である。すなわち、2つの入力(αw ,αv )のANDをANDゲート131〜138によって求め、その結果に、乗算器141〜148によってα0 〜α7 を乗じたものを、GF加算器129によって加算する構成で実現できる。
【0071】
ガロア体の除算については、まず、割る方の元の逆元を求めてから、割られる方の元との乗算を、前記乗算回路で実行する。つまり、2ステップを要することになる。前記逆元を求めるには、8ビットの入力に対し、8ビットの出力を得ればよいので、容量256バイトのROMで実現できる。これは、例えば500ゲート相当であり、回路規模上もさほどインパクトがない。
【0072】
以上より800ゲートの回路でガロア体の乗算が1ステップで、除算が2ステップでそれぞれ実行可能となる。これにより、前記式(3)、(4)、(6)、(7)、(9)、及び(10)の17回の乗算は17ステップで、3回の除算は6ステップで実現でき、23回(23ステップ)の加算を含めて合計46ステップで実現できる。
これは、従来の半分以下のステップ数であるものの、多機能の要求に答えるには不十分である。例えば、オーディオ再生の場合は消失エラー訂正なし、データ再生の場合は消失エラー訂正ありといった複数の用途に対応するとき、メモリに記憶するマイクロコード(インストラクション・コードのセット)の増加を防ぐために、共通の処理はサブルーチン化してできるだけマイクロコードを共有化する必要がある。また、前記式(3)、(4)、(6)、(7)、(9)、及び(10)の演算は、4重消失エラー訂正の場合であるが、消失シンボルの数により3重消失エラー訂正等にも対応しなければならない。すると、分岐処理等の周辺処理が増大し、ますます各訂正コアの処理に使用できるステップ数が限られてくる。
【0073】
そのため、ステップ数を削減するために以下のような工夫を施す。
前記式(3)の分子の項は下記式(21)のように変形できる。
【0074】
【数21】
【0075】
次に、シンドロームを修正することで前記式(6)によるe3 を得るが、下記式(22),(23)に示すように、同じく積和演算の形が現れるように変形する。
【0076】
【数22】
【0077】
【数23】
【0078】
残りはそのままで、下記式(24),(25),(26)に示すようになる。
【0079】
【数24】
【0080】
【数25】
【0081】
【数26】
【0082】
上記式(21)〜(26)によれば、積和演算が数多く出現するが、図3に示すように、グローバルロジックユニット(GLU)として3入力の積和演算ユニットを用いることで、1ステップで積和演算のそれぞれを実現できる。このときの復号演算処理部104を図3に、GLU周辺構成図を図4に示す(ただし、破線の信号を含まない)。
【0083】
以下、本実施形態に係わるリードソロモン復号装置101の構成について詳細に説明する。
リードソロモン復号装置101の全体構成は、基本的に、図9に示す従来のリードソロモン復号装置1と同じである。但し、リードソロモン復号装置101の復号演算処理部は、復号演算処理部4とは異なる。
図3は、リードソロモン復号装置101の復号演算処理部104の構成図である。
図3に示すように、復号演算処理部104は、マイクロコードROM150、シーケンサ151、デスティネイションコントローラ152、ワーキングレジスタ153、GLU(Global Logic Unit) 154、ポート選択器155を備えている。
【0084】
復号演算処理部104としては、例えばRISC型のものが用いられる。
復号演算処理部104では、各演算は逐次的に行われ、演算セットは、GLU154において時分割共有化される。、また、一連の演算処理は、マイクロコード化されて、インストラクションコードとしてマイクロコードROM150に格納され、シーケンサ151からのROMアドレスによって、処理順序(メモリからの読み出し順序)が制御される。
【0085】
また、途中の演算結果は、予め用意された複数のワーキングレジスタ153に一時的に記憶されるが、どのワーキングレジスタ153a,153b,153cに記憶するかは、デスティネイションコントローラ152を介して入力されるデスティネイションコントロールコード内に記述されている。
【0086】
図4は、GLU154の構成図である。
図4に示すように、GLU154は、オペレイションロジック160,161、GFインバージョンROM162、GF乗算加算ロジック163およびオペレイションセレクタ164を備えている。
ここで、GFインバージョンROM162は、入力のガロア体の逆元を出力する(入力:α1 →出力:α-1)。
【0087】
図5は、GLU154のGF乗算加算ロジック163およびワーキングレジスタ153の構成図である。
図5に示すように、GF乗算加算ロジック163には、乗算器163aおよび加算器163bが備えられている。乗算器163aとしては、前述した図1に示す乗算器110あるいは図2に示す乗算器130が用いられ、1ステップでガロア体GF(28 )の乗算を実現する。
また、ワーキングレジスタ153には、レジスタ153a,153b,153cが備えられている。
【0088】
前記式(21)の分子の演算を1ステップ毎に書き直すと下記式(27)に示すようになる。
【0089】
【数27】
【0090】
ここでA〜Cは、それぞれワーキングレジスタ153内のレジスタ153a,153b,153cを示し、A(z)は、レジスタ153aの内容が「z」であることを示す。また、右辺の入力側の時制は、左辺の出力側のそれに対し1ステップ前の時制である。そして、各ステップの右辺の3つの値は、GLU154のc,b,aそれぞれのポートの入力信号である。。例えば、第1のステップ(1:)では、cポートには「s1 」、bポートには「x2 」およびaポートには「s0 」が入力されている。
デスティネーションコントロールコードに基づいて、デスティネイションコントローラ152は、GLU154からのGLUデータS154が、ワーキングレジスタ153内のどのレジスタ153a,153b,153cに取り込まれるかを制御する。例えば、前記式(27)の第1ステップ(1:)においては、GLUデータS154である「s1 +x2 ・s0 」は、レジスタ153aに取り込まれる。
【0091】
このように前記式(21)の分子の演算は、6回の積和演算で実行でき、残りは加算が3回、乗算が2回、除算が1回で、前記誤り値e4 を求めることができる。
また、前記式(22)のシンドロームの修正も積和演算が2回、加算が1回、乗算が1回で実行できる。
同様にして前記式(23)の演算は積和演算が3回、加算が2回、乗算が1回、除算が1回で実行され、続く前記式(24)のシンドロームの修正は、積和演算が1回、加算が1回である。
さらに前記式(25)では積和演算が1回、加算が1回、除算が1回で実行され、続く前記式(26)は、加算が1回である。
このように、C2符号の4重消失エラー訂正は積和演算が13回、加算が9回、乗算が4回、除算が3回で実行され、総ステップ数は13+9+4+3×2=32ステップ、即ち。従来方法の1/3以下のステップ数で実現できる。
【0092】
次に、図3に示すインストラクションコードS150に関して説明する。
図6は、インストラクションコードS150のフォーマットを説明するための図である。
乗算、加算、除算(逆元を求めてから乗算)の各演算処理では、入力が2つ以下であるため、インストラクションコードS150は、4フィールドで構成される(図6の実線)。すなわち、インストラクションコードS150には、それぞれのフィールドにGLU154がどの演算を実行するかを示すオペレーションコードS150aと、2つの入力ポート(ここでは、aポートおよびbポートとする)に、どの信号を入力するかを示すaポートセレクトコードS150bおよびbポートセレクトコードS150cと、GLU154の出力であるGLUデータS154をワーキングレジスタ153のどのレジスタに入力するかを示すデスティネーションコントロールコードS150dが含まれる。例えば、前記4つのフィールドのそれぞれを4ビットで構成すると、演算は最大16個、入力元はそれぞれ16個、出力先も16個の指定が、それぞれ可能である。
【0093】
図5に示すGF乗算加算ロジック163を内蔵したGLU154においては、3入力の選択が必要で、積和演算のときだけ入力セレクトフィールドが3つになる。図6の破線に示すように、この3つめの入力ポート(cポートとする)の選択指定のためにさらに4ビット必要とすると、インストラクションコードS150は全部で5フィールド分の20ビットになる。ところが、このcポートの入力セレクトフィールドは積和演算以外では使用しないので無駄が多く不経済である。
【0094】
図7に示すデスティネイションコントローラ252およびワーキングレジスタ253は、上述した不経済性を改善するもので、オペレーションコードが積和演算を指定したときは、GLU154からのGLUデータS154をレジスタ253aに固定して記憶させるように、デスティネイションコントローラ252がワーキングレジスタ253を制御する。このようにすることで、GLU154からのGLUデータS154の出力先の制御が不要になるため、デスティネーションコントロールコードが不要になる。このようにすることで、積和演算のときにのみ、図8に示すように、デスティネーションコントロールコードの代わりにcポートセレクトコードを配置することができる。つまり、図8のように、この同じフィールドに、デスティネーションコントロールコードとcポートセレクトコードとを時分割で配置できる。このようにすると、インストラクションコードS150は4フィールド分だけ用意すれば良く、インストラクションコードのビット数は増えないため、回路が大規模化するのを避けることができる。
なお、積和演算以外の演算が指定されたときは、ワーキングレジスタ253のレジスタ253a,253b,253cをデスティネーションコントロールコードにより制御すれば、レジスタ253a,253b,253cを通常のワーキングレジスタとして使用できる。
【0095】
このとき、復号演算処理部104は、図3で、破線の信号による制御、すなわち、オペレイションコードS150aによるデスティネイションコントローラ152の制御を含む。
さらに、図7では、積和演算が続くときのことを考慮してレジスタ253a,253b,253cをシフトレジスタ構成とした。
【0096】
以下、図7および図8に示す構成を用いた場合における前記式(21)の分子の演算について、具体的な信号の流れを説明する。
このときの信号の流れは、下記式(28)に示される。
【0097】
【数28】
【0098】
ここで、(.) は内容が省略されていることを示す。各ステップにおける3つの処理は同時に行われ、右辺の入力側は、左辺の出力側のそれに対し1ステップ前の時制である。また、各ステップの最初の行の右辺の3つの値は、GLU154のc,b,aそれぞれのポート入力信号である。
このように前記式(21)の分子の演算を、本実施形態でも6ステップで実行でき、前記4重消失エラー訂正の総ステップ数は32ステップで実現できる。
【0099】
本実施形態はさまざまな変形可能である。具体的には、前記式(20)に示した式の変化はいろいろ考えられる。例えは、下記式(29)のように変形することもできる。
【0100】
【数29】
【0101】
この場合でも、同様に積和演算回路を利用できる。また、本実施形態では、e4 から求めたが、他の誤り値から順次得ることもできる。さらには、図3では、ガロア体の逆元演算をROMで構成したが、ロジック回路でも構成できる。
なお、本発明は、CIRC符号に限らず、また、消失エラー訂正に限らず積和演算を含む一般のRS復号装置にも適用できる。
【0102】
以上説明したように、リードソロモン復号装置101によれば、積和演算を1ステップで実現でき、比較的小規模なROM150を用いて、訂正処理を短時間で行なうことができる。
また、リードソロモン復号装置101によれば、図7に示す構成および図8に示すインストラクションコードS150のフォーマットを採用することで、インストラクションコードS150のビット数を抑え、回路が大規模化することを効果的に回避できる。
【0103】
【発明の効果】
以上説明したように、本発明のリードソロモン復号装置によれば、回路規模を大幅に増大させることなく、復号演算を高速に行うことが可能である。
【図面の簡単な説明】
【図1】図1は、本発明の実施形態に係わるガロア体の乗算器の構成図である。
【図2】図2は、本発明の実施形態に係わるガロア体のその他の乗算器の構成図である。
【図3】図3は、本発明の実施形態に係わるリードソロモン復号装置の復号演算処理部の構成図である。
【図4】図4は、図3に示すGLUの構成図である。
【図5】図5は、図4に示すGF積和演算ロジックおよびワーキングレジスタの構成図である。
【図6】図6は、図3に示すインストラクションコードのフォーマットを説明するための図である。
【図7】図7は、図4に示すワーキングレジスタのその他の構成図である。
【図8】図8は、図3に示すインストラクションコードのその他のフォーマットを説明するための図である。
【図9】図9は、従来のリードソロモン復号装置の構成図である。
【図10】図10は、図9に示すリードソロモン復号装置の動作時におけるデータおよび構成要素の時系列的な状態を示し、(A)は入力データ、(B)は出力データ、(C)はレジスタBOUT の記憶状態、(D)はレジスタBINの記憶状態、(E)はレジスタGOUT の記憶状態、(F)はレジスタGINの記憶状態、(G)は復号演算器の処理状態をそれぞれ示している。
【図11】図11は、図9に示す入力パラメータ演算器およびレジスタの構成図である。
【図12】図12は、図9に示す訂正操作実行器およびレジスタの構成図である。
【図13】図13は、図9に示す復号演算処理部の構成図である。
【図14】図14は、図13に示すGLUの構成図である。
【符号の説明】
104…復号演算処理部、150…マイクロコード、151…シーケンサ、152…デスティネイションコントローラ、153…ワーキングレジスタ、154…GLU、155…ポート選択器、160,161…オペレイションロジック、162…GFインバージョンROM、163…GF乗算加算ロジック、164…オペレイションセレクタ
Claims (6)
- データ系列からシンドローム及び消失データを生成する入力パラメータ演算手段と、
所定の復号演算操作を示す命令コードに基づいて、前記シンドローム及び消失データを用いた復号演算を行ない、誤り値データ及び誤り位置データを生成する復号演算手段と、
前記誤り値データ及び誤り位置データを用いて訂正操作を行なう訂正操作手段と、
を有するリードソロモン復号装置において、
前記復号演算手段が、
ガロア体での積和演算を1ステップで実行する演算処理部と、
少なくとも第1の入力ポート、第2の入力ポート及び第3の入力ポートと、
前記第1の入力ポート及び前記第2の入力ポートから入力されたデータを乗算する乗算器と、
前記乗算器の出力データと前記第3の入力ポートから入力されたデータとの加算を行なう加算器と、
前記命令コードを記憶する第1の記憶手段と、
前記命令コードの実行順序を制御するシーケンサと、
前記演算処理部の演算結果を一時的に記憶する複数の作業レジスタを備える第2の記憶手段と、
前記命令コードに基づいて、前記複数の作業レジスタの記憶内容をそれぞれ前記第1〜3の入力ポートに出力するポート選択手段と、
を備える、
リードソロモン復号装置。 - 前記第2の記憶手段が、前記命令コードに応じて決定した前記作業レジスタに前記演算処理部からの演算結果を記憶し、
前記ポート選択手段が、前記複数の作業レジスタの記憶内容をそれぞれ前記第1〜3の入力ポートの何れかに出力可能である、
請求項1に記載のリードソロモン復号装置。 - 前記第2の記憶手段が、前記複数の作業レジスタとしてシフトレジスタを用いており、前記演算処理部からの演算結果を所定の作業レジスタに最初に記憶し、
前記ポート選択手段が、前記複数の作業レジスタの記憶内容をそれぞれ前記第1〜3の入力ポートの何れかに出力可能である、
請求項1に記載のリードソロモン復号装置。 - 前記命令コードが、オペレーションフィールドと、前記複数の作業レジスタの記憶内容をそれぞれ前記復号演算手段の前記第1〜3の入力ポートの何れに出力するかを示すフィールドとを有する、
請求項1乃至3の何れかに記載のリードソロモン復号装置。 - 前記復号演算手段が、
ガロア体GF(2i)の第1の元αW(AW, i-1, AW, i-2, AW, i-3, …, AW, 3, AW, 2, AW, 1, AW, 0)Tと第2の元αV(AV, i-1, AV, i-2, AV, i-3, …, AV, 3, AV, 2, AV, 1, AV, 0)Tとの乗算を行なう乗算器であって、
前記第1の元と前記ガロア体の原始元αのα0, α1, α2, α3, …, αi-3, αi-2, αi-1とのそれぞれの演算を並列に行なうi個の乗算部と、
前記i個の乗算部の乗算結果と前記AV, 0, AV, 1, AV, 2, AV, 3, …, AV, i-3, AV, i-2, AV, i-1とのそれぞれの論理積演算を並列に行なうi個の論理積演算部と、
前記i個の論理積演算部の演算結果を加算する加算部と、
を備える乗算器を有する、
請求項 1 乃至 4 の何れかに記載のリードソロモン復号装置。 - 前記復号演算手段が、
ガロア体GF(2i)の第1の元αW(AW, i-1, AW, i-2, AW, i-3, …, AW, 3, AW, 2, AW, 1, AW, 0)Tと第2の元αV(AV, i-1, AV, i-2, AV, i-3, …, AV, 3, AV, 2, AV, 1, AV, 0)Tとの乗算を行なう乗算器であって、
前記第1の元と前記AV, 0, AV, 1, AV, 2, AV, 3, …, AV, i-3, AV, i-2, AV, i-1とのそれぞれの論理積演算を並列に行なうi個の論理積演算部と、
前記i個の論理積演算部の乗算結果と前記ガロア体の原始元αのα0, α1, α2, α3, …, αi-3, αi-2, αi-1とのそれぞれの乗算を並列に行なうi個の乗算部と、
前記i個の乗算部の乗算結果を加算する加算部と、
を備える乗算器を有する、
請求項 1 乃至 4 の何れかに記載のリードソロモン復号装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11676697A JP3850511B2 (ja) | 1997-05-07 | 1997-05-07 | リードソロモン復号装置 |
US09/074,551 US6175945B1 (en) | 1997-05-07 | 1998-05-07 | Reed-Solomon decoder |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP11676697A JP3850511B2 (ja) | 1997-05-07 | 1997-05-07 | リードソロモン復号装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH10308674A JPH10308674A (ja) | 1998-11-17 |
JP3850511B2 true JP3850511B2 (ja) | 2006-11-29 |
Family
ID=14695210
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP11676697A Expired - Fee Related JP3850511B2 (ja) | 1997-05-07 | 1997-05-07 | リードソロモン復号装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US6175945B1 (ja) |
JP (1) | JP3850511B2 (ja) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6370671B1 (en) * | 1998-06-18 | 2002-04-09 | Globespan, Inc. | Configurable decoder and method for decoding a reed-solomon codeword |
JP2000124813A (ja) | 1998-10-20 | 2000-04-28 | Texas Instr Japan Ltd | リードソロモン符号化装置およびその方法とリードソロモン復号装置およびその方法 |
JP3606569B2 (ja) * | 2001-03-09 | 2005-01-05 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 復号回路、該復号回路を用いる復号装置、復号方法および半導体デバイス |
JP3552683B2 (ja) * | 2001-03-09 | 2004-08-11 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 信号処理方法、信号処理システム、および信号処理のためのプログラムおよび該プログラムを記録したコンピュータ可読な記録媒体 |
US7082452B2 (en) * | 2001-11-30 | 2006-07-25 | Analog Devices, Inc. | Galois field multiply/multiply-add/multiply accumulate |
US7177891B2 (en) * | 2002-10-09 | 2007-02-13 | Analog Devices, Inc. | Compact Galois field multiplier engine |
US7020826B2 (en) * | 2002-01-23 | 2006-03-28 | Thomson Licensing | Intra-decoder component block messaging |
US6920600B2 (en) * | 2002-01-23 | 2005-07-19 | Thomson Licensing S.A. | Dual chien search blocks in an error-correcting decoder |
US7228490B2 (en) * | 2004-02-19 | 2007-06-05 | Quantum Corporation | Error correction decoder using cells with partial syndrome generation |
EP1878153B1 (de) * | 2005-05-04 | 2012-02-08 | Siemens Enterprise Communications GmbH & Co. KG | Verfahren und vorrichtung zum ermitteln von indizes die korrektursymbolen zugeordnet sind |
US9680509B2 (en) * | 2015-03-27 | 2017-06-13 | Intel Corporation | Errors and erasures decoding from multiple memory devices |
US10164660B1 (en) | 2016-12-23 | 2018-12-25 | Intel Corporation | Syndrome-based Reed-Solomon erasure decoding circuitry |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE3483375D1 (de) * | 1983-06-22 | 1990-11-15 | Hitachi Ltd | Verfahren und system zur fehlerkorrektur. |
US4841300A (en) * | 1986-06-18 | 1989-06-20 | Mitsubishi Denki K.K. | Error correction encoder/decoder |
US4875211A (en) * | 1986-12-10 | 1989-10-17 | Matsushita Electric Industrial Co., Ltd. | Galois field arithmetic logic unit |
JPH0828670B2 (ja) * | 1986-12-10 | 1996-03-21 | 松下電器産業株式会社 | ガロア体演算装置 |
US5414719A (en) * | 1992-04-24 | 1995-05-09 | Sharp Kabushiki Kaisha | Operating circuit for galois field |
-
1997
- 1997-05-07 JP JP11676697A patent/JP3850511B2/ja not_active Expired - Fee Related
-
1998
- 1998-05-07 US US09/074,551 patent/US6175945B1/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
US6175945B1 (en) | 2001-01-16 |
JPH10308674A (ja) | 1998-11-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104391675B (zh) | 用于提高处理效率的设备和处理器 | |
JP3850511B2 (ja) | リードソロモン復号装置 | |
EP0329789B1 (en) | Galois field arithmetic unit | |
JP3790619B2 (ja) | 正値化処理及び飽和演算処理からなる丸め処理を好適に行うことができるプロセッサ | |
US20020116602A1 (en) | Partial bitwise permutations | |
JPH10507557A (ja) | ディスクドライブエミュレータのためのエラー訂正方法および装置 | |
US20040078408A1 (en) | Modular galois-field subfield-power integrated inverter-multiplier circuit for galois-field division over GF(256) | |
US20090063606A1 (en) | Methods and Apparatus for Single Stage Galois Field Operations | |
US5983389A (en) | Error correction decoding apparatus | |
JP5133491B2 (ja) | 単一命令多数データ処理 | |
US6175941B1 (en) | Error correction apparatus and associated method utilizing parellel processing | |
JP2000172520A (ja) | ガロア体演算プロセッサ | |
JP3850512B2 (ja) | リードソロモン復号装置 | |
JP2004206798A (ja) | 光ディスク装置のエンコードデータ符号回路 | |
JPH0865175A (ja) | リードソロモン復号器の誤り位置検出回路 | |
JPH10322226A (ja) | リードソロモン復号方法 | |
EP0584864B1 (en) | A hardware-efficient method and device for encoding BCH codes and in particular Reed-Solomon codes | |
JPH06197026A (ja) | データ消失訂正方法とその回路 | |
JP2553565B2 (ja) | ガロア体演算装置 | |
JP2907138B2 (ja) | 誤り訂正の演算処理方法及び処理回路 | |
JPH09305572A (ja) | ガロア体の除算方法および除算装置 | |
JPH04365139A (ja) | 誤り訂正処理用シンドローム演算回路 | |
US6023782A (en) | RAM based key equation solver apparatus | |
JP2800598B2 (ja) | 誤り訂正復号装置 | |
JPH0677844A (ja) | 誤り訂正装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040430 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060516 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060530 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060728 |
|
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: 20060822 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060830 |
|
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: 20100908 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100908 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110908 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120908 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130908 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |