JPH10135846A - リードソロモン復号器 - Google Patents
リードソロモン復号器Info
- Publication number
- JPH10135846A JPH10135846A JP8283707A JP28370796A JPH10135846A JP H10135846 A JPH10135846 A JP H10135846A JP 8283707 A JP8283707 A JP 8283707A JP 28370796 A JP28370796 A JP 28370796A JP H10135846 A JPH10135846 A JP H10135846A
- Authority
- JP
- Japan
- Prior art keywords
- error
- polynomial
- unit
- signal
- reed
- 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
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
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/18—Error detection or correction; Testing, e.g. of drop-outs
-
- 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
-
- 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/1555—Pipelined decoder implementations
-
- 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
-
- 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)
- Mathematical Physics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Pure & Applied Mathematics (AREA)
- Algebra (AREA)
- Signal Processing (AREA)
- Quality & Reliability (AREA)
- General Engineering & Computer Science (AREA)
- Error Detection And Correction (AREA)
- Detection And Correction Of Errors (AREA)
Abstract
号器の回路規模を低減する。 【解決手段】 第1のパイプラインステージを構成する
シンドローム計算ユニット101と、第2のパイプライ
ンステージを構成するユークリッド互除演算及び誤り値
計算ユニット102並びにチェン探索ユニット103
と、第3のパイプラインステージを構成する誤り訂正ユ
ニット105とを設ける。ユークリッド互除演算及び誤
り値計算ユニット102は、各々単一の逆元計算器とガ
ロア乗算器とガロア加算器との繰り返し使用によって、
シンドローム多項式S(z) から誤り位置多項式σ(z) と
誤り評価多項式ω(z) とを求めるユークリッド互除演算
と、誤り評価値ω (α-ju ) を誤り位置多項式微分値
σ'(α-ju ) で除算することにより誤りの値eu を求め
る計算とを達成する。
Description
ドソロモン(Reed-Solomon)符号の復号器、すなわちリ
ードソロモン復号器に関するものである。
信の伝送情報等において、多重誤り訂正を可能とする符
号としてリードソロモン符号が広く使用されている。
(z) とし、W(z) =0の根をαとするとき、この根αを
原始元とするガロア体(Galois field)の上の符号であ
って、ブロック誤り訂正符号の1つである。ここで、α
をガロア体GF(2m )の原始元とし、α,α2 ,…,
α2tを根とする符号長n=2m −1のリードソロモン符
号を考える。この符号によれば、mビットが1処理単位
すなわち1シンボルとされる。原情報の量はn−2tシ
ンボルである。以下の説明ではm=8とし、1シンボル
が8ビットすなわち1バイトで表わされるものとする。
1パケットの受信語は、n個のシンボルからなる。t=
8の場合には8シンボルの誤り訂正が可能である。
プ(i) 〜(vi)による。ただし、ステップ(iii) 〜(v) に
おいて不合理な結果を生じる場合には、訂正不可能な誤
りが生じたと判定する。
信多項式Y(z) から、 si =Y (αi ) …(1) により、2t個のシンドローム(syndrome)、すなわち
s1 ,s2 ,…,s2tを計算する。各シンドロームsi
はガロア体GF(2m )の元である。シンドローム多項
式S(z) は、 S(z) =s1 +s2 z+…+s2tz2t-1 …(2) で定義される。
りなしと判定する。
ば、シンドローム多項式S(z) から、誤り位置多項式
(error locator polynomial)σ(z) と、誤り評価多項
式(error evaluator polynomial)ω(z) とを求める。
具体的には、φ(z) を多項式とするとき、 φ(z) z2t+σ(z) S(z) =ω(z) …(3) σ(0) =1 …(4) を満たし、かつ互いに素であるt次以下の多項式σ(z)
と、t−1次以下の多項式ω(z) とを求める。
-ju (ju =j1 ,j2 ,…,jk)を求める。ここ
に、kは誤り位置多項式σ(z) の次数であって、誤りの
個数を表わしている。σ(z) にα-i(i=0,1,…,
n)を個々に代入し、σ (α-i) が零かどうかを調べる
方法を採用すれば、全ての根を探索できる。この方法は
チェン探索(Chien search)と呼ばれる。なお、k個の
根α-ju の各々は、いわゆる誤りロケータ(error loca
tor )の逆数である。
ちσ'(z)を求め、 eu =−ω (α-ju ) /σ'(α-ju ) …(5) から、誤りの値e1 ,e2 ,…,ek を求める。ここ
に、ω (α-ju ) を誤り評価値といい、σ'(α-ju ) を
誤り位置多項式微分値という。
-jk から誤りの位置j1 ,j2 ,…,jk を求め、受信
語中のこれらの位置のシンボルからそれぞれ誤りの値e
1 ,e2 ,…,ek を差し引くことによって、受信語中
の誤りを訂正する。
式σ(z) と誤り評価多項式ω(z) とを求める方法の1つ
として、ユークリッド法(Euclid's algorithm)が知ら
れている。ユークリッド法は、z2tとS(z) との最大公
約多項式をユークリッド互除演算で算出することによっ
て、σ(z) とω(z) とを求めるものである。
明する。なお、以下の説明では多項式Xの次数をdeg X
で表わす。まず、4つの多項式A,B,L,Mを、 A=z2t …(6) B=S(z) …(7) L=0 …(8) M=1 …(9) のように初期化する。次に、deg A≧deg Bならば、多
項式Aの最高次数項の係数をaとし、多項式Bの最高次
数項の係数をbとするとき、 A=bA+aBzdegA-degB …(10) L=bL+aMzdegA-degB …(11) にしたがって多項式A及びLをそれぞれ更新する。これ
により、deg Aは減少し、deg Lは増加する。これとは
逆にdeg A<deg Bならば、 B=aB+bAzdegB-degA …(12) M=aM+bLzdegB-degA …(13) にしたがって多項式B及びMをそれぞれ更新する。これ
により、deg Bは減少し、deg Mは増加する。この操作
を繰り返すうちにdeg A≦t−1になった場合にはω
(z) =Aかつσ(z) =Lとし、deg B≦t−1になった
場合にはω(z) =Bかつσ(z) =Mとする。以上の手順
によって、誤り位置多項式σ(z) と誤り評価多項式ω
(z) とが求まる。
ならば、 A=A+(a/b)BzdegA-degB …(14) L=L+(a/b)MzdegA-degB …(15) にしたがって多項式A及びLをそれぞれ更新し、deg A
<deg Bならば、 B=B+(b/a)AzdegB-degA …(16) M=M+(b/a)LzdegB-degA …(17) にしたがって多項式B及びMをそれぞれ更新することと
してもよい。以下の説明では、これを「改良されたアル
ゴリズム」という。
トリックアレイ(systolic array)構造を有するユーク
リッド互除演算回路が開示されている。
8〜16という仕様のリードソロモン符号が一般化して
きており、誤り訂正処理に必要となる計算量が飛躍的に
増大している。したがって、リードソロモン復号器にシ
ストリックアレイ構造を採用する場合には、誤り訂正数
に比例して回路規模が増大してしまうという問題があっ
た。
のリードソロモン復号器の回路規模を低減することにあ
る。
め、本発明は、t重誤り訂正リードソロモン符号よりな
る受信多項式Y(z) からシンドローム多項式S(z) を求
めるための第1のユニットと、ユークリッド互除演算に
よって誤り位置多項式σ(z) と誤り評価多項式ω(z) と
を求めかつ除算の実行によって誤りの値eu を求めるた
めの第2のユニットと、チェン探索によって誤り位置多
項式σ(z) の根α-ju を求めかつ誤り評価値ω
(α-ju ) と誤り位置多項式微分値σ'(α-ju ) とを第
2のユニットへ供給するための第3のユニットと、根α
-ju から誤りの位置を求めかつ受信多項式Y(z) の中の
対応位置から誤りの値eu を差し引くことによって誤り
訂正された多項式W(z) を求めるための第4のユニット
とを備えたリードソロモン復号器の構成を採用したもの
である。しかも、このリードソロモン復号器は、各々1
パケットサイクルに対応する3ステージのパイプライン
構造を採用したものである。第1のユニットは第1のパ
イプラインステージを、第2及び第3のユニットは第2
のパイプラインステージを、第4のユニットは第3のパ
イプラインステージをそれぞれ構成する。
ステージにおいて、まず第2のユニットのユークリッド
互除演算によって誤り位置多項式σ(z) と誤り評価多項
式ω(z) とが求められ、次に第3のユニットのチェン探
索によって誤り位置多項式σ(z) の根α-ju が求められ
かつ誤り評価値ω (α-ju ) と誤り位置多項式微分値
σ'(α-ju ) とが第2のユニットへ供給され、最後に第
2のユニットにおける除算によって誤りの値eu が求め
られる。つまり、第2のユニットは、ユークリッド互除
演算と、誤り値計算とに兼用される。したがって、誤り
訂正数が大きくとも、シストリックアレイ構造を採用す
る場合に比べて小さい回路規模のリードソロモン復号器
を実現できる。
式S(z) を表わす信号とユークリッド互除演算の中間結
果を表わす帰還信号とを格納しかつ最終的に誤り位置多
項式σ(z) を表わす信号と誤り評価多項式ω(z) を表わ
す信号とを供給するためのデータ格納部と、該データ格
納部に格納された信号からユークリッド互除演算の中間
結果を表わす帰還信号を生成しかつ誤り値計算を実行す
るための演算部と、前記データ格納部と演算部とを制御
するための制御部とを備えたものである。しかも、演算
部は、単一の逆元計算器と、単一のガロア乗算器と、単
一のガロア加算器とを有するものである。このような構
成によれば、逆元計算器とガロア乗算器とガロア加算器
との繰り返し使用によって、ユークリッド互除演算と誤
り値計算とが、小規模の回路で達成される。
ジスタで構成された第1及び第2のシフトレジスタと、
t−1段のレジスタで構成された第3のシフトレジスタ
とを備える。上記制御部は、ユークリッド互除演算にお
ける中間多項式の次数を監視するための次数カウンタを
備える。
式A及びBの次数が1ずつ減少するかぎり、第1のシフ
トレジスタが多項式A及びLの格納に、第2のシフトレ
ジスタが多項式B及びMの格納にそれぞれ使用される。
この際、第3のシフトレジスタが使用されることはな
い。ユークリッド互除演算は、多項式A又はBがt−1
次以下の多項式になったときに終了する。ところが、多
項式A又はBの次数が一度に2以上減少することがあ
る。このような多次数減少という例外の処理を効率良く
実行するために、第3のシフトレジスタが設けられてい
る。つまり、多次数減少の場合には、第1のシフトレジ
スタと第3のシフトレジスタとの合体格納器すなわち3
t+1段のレジスタで構成されたシフトレジスタ、又
は、第2のシフトレジスタと第3のシフトレジスタとの
合体格納器すなわち3t+1段のレジスタで構成された
シフトレジスタが使用される。
モン復号器の構成を示している。図1のリードソロモン
復号器は、シンドローム計算ユニット101と、ユーク
リッド互除演算及び誤り値計算ユニット102と、チェ
ン探索ユニット103と、データ遅延用RAM104
と、誤り訂正ユニット105とを備えたものである。シ
ンドローム計算ユニット101は、t重誤り訂正リード
ソロモン符号よりなる受信多項式Y(z) から、式(2)
で定義されるシンドローム多項式S(z) を求める。具体
的には、受信多項式Y(z) は受信語中の各シンボルを係
数とする多項式である。この受信多項式Y(z) から、式
(1)により2t個のシンドローム、すなわちs1,s
2 ,…,s2tが計算される。2t個のシンドロームが全
て零であれば、誤りなしとの判定を誤り訂正ユニット1
05が下す。ユークリッド互除演算及び誤り値計算ユニ
ット102は、ユークリッド互除演算の改良されたアル
ゴリズムに従って、シンドローム多項式S(z) から誤り
位置多項式σ(z) と誤り評価多項式ω(z) とを求める。
具体的には、式(3)及び(4)を満たし、かつ互いに
素であるt次以下の多項式σ(z) と、t−1次以下の多
項式ω(z) とを求める。このユニット102は、チェン
探索ユニット103から各々k(k≦t)個の誤り評価
値ω (α-ju ) と誤り位置多項式微分値σ'(α-ju ) と
の供給を受け、式(5)によりk個の誤りの値eu 、す
なわちe1 ,e2 ,…,ek を求める機能をも有する。
チェン探索ユニット103は、σ(z) =0のk個の根α
-ju (ju =j1,j2 ,…,jk )を求め、該求めた
k個の根α-ju を誤り訂正ユニット105へ供給する。
このユニット103は、誤り評価多項式ω(z) に該k個
の根α-juをそれぞれ代入して得られる誤り評価値ω
(α-ju ) と、誤り位置多項式σ(z)の導関数σ'(z)に該
k個の根α-ju をそれぞれ代入して得られる誤り位置多
項式微分値σ'(α-ju ) とをユークリッド互除演算及び
誤り値計算ユニット102へ供給する機能をも有する。
データ遅延用RAM104は、受信多項式Y(z) を2パ
ケットサイクルだけ遅延させるものである。誤り訂正ユ
ニット105は、チェン探索ユニット103から供給さ
れたk個の根α-ju に基づいて誤りの位置j1,j2 ,
…,jk を求め、データ遅延用RAM104から供給さ
れた受信多項式Y(z) の中のこれらの位置のシンボルか
らそれぞれ誤りの値e1 ,e2 ,…,ek を差し引くこ
とによって受信語中の誤りを訂正し、かつその結果であ
る誤り訂正された多項式W(z) を出力する。
ードソロモン復号器のパイプライン動作を示している。
第1のパケットサイクルでは、ユニット101がパケッ
ト#1のシンドローム計算を実行する。第2のパケット
サイクルでは、ユニット102がパケット#1のユーク
リッド互除演算を実行し、ユニット103がパケット#
1のチェン探索を実行し、ユニット102がパケット#
1の誤り値計算を実行する。第3のパケットサイクルで
は、ユニット105がデータ遅延用RAM104からパ
ケット#1を読み出し、その誤り訂正を実行する。以上
のようなパイプライン動作を実現するため、ユニット1
02及び103へ供給されるクロック信号(不図示)の
周波数は、他のユニットへ供給されるクロック信号(不
図示)の周波数の4倍に設定される。したがって、誤り
訂正数tが大きい場合のリードソロモン復号処理を効率
良く達成できる。なお、第3のパケットサイクルでは、
データ遅延用RAM104からのパケット#1の読み出
しと、該データ遅延用RAM104へのパケット#3の
書き込みとが並行して実行される。
び誤り値計算ユニット102の内部構成を示している。
図3のユニット102は、データ格納部1と、演算部2
と、制御部3とを備えている。データ格納部1は、シン
ドローム多項式S(z) を表わす信号(シンドローム信
号)4と、ユークリッド互除演算の中間結果を表わす帰
還信号(帰還データ信号)19とを格納し、中間多項式
に係る第1〜第4の計算データ信号12,13,14,
15を供給し、かつ最終的に誤り位置多項式σ(z) を表
わす信号(σ信号)9と、誤り評価多項式ω(z) を表わ
す信号(ω信号)8とを供給する。このデータ格納部1
は、不合理な結果を検出した場合に処理エラー信号10
を供給する機能をも有する。演算部2は、第1〜第4の
計算データ信号12,13,14,15からユークリッ
ド互除演算の中間結果を表わす帰還データ信号19を生
成する。この演算部2は、誤り評価値ω (α-ju ) を表
わす信号(ω値信号)6と、誤り位置多項式微分値σ'
(α-ju ) を表わす信号(σ微分値信号)7との供給を
受け、誤りの値eu を表わす信号(誤り値信号)11を
供給する機能をも有する。制御部3は、処理開始信号5
と第1及び第3の計算データ信号12,14との供給を
受けて、データ格納部1を制御するための格納制御コー
ド信号16と、演算部2を制御するための演算制御コー
ド信号17とを供給する。この制御部3は、処理終了信
号18を供給する機能をも有する。
成を示している。図4において、20は第1のセレク
タ、21は第2のセレクタ、22は第1のシフトレジス
タ(Aレジスタ)、23は第2のシフトレジスタ(Bレ
ジスタ)、24は第3のシフトレジスタ、25はエラー
検査器をそれぞれ示している。第1のセレクタ(sel0)2
0は、格納コード制御信号16に応じて、帰還データ信
号(addatA)19と、第1の計算データ信号(sftdtA)12
と、定数「0」のデータ信号(intA0) とのいずれかを第
1の選択データ信号26として供給する。第2のセレク
タ(sel1)21は、格納コード制御信号16に応じて、第
3の計算データ信号(sftdtB)14と、帰還データ信号(a
ddatB)19と、定数「0」のデータ信号(intM0) とのい
ずれかを第2の選択データ信号27として供給する。第
1のシフトレジスタ22は、ユークリッド互除演算中の
多項式Aの係数と多項式Lの係数とを格納するための2
t+2段のレジスタで構成されており、シンドローム信
号(il)4と、格納コード制御信号16と、第1の選択デ
ータ信号26との供給を受け、ω信号8と、σ信号9
と、第1の計算データ信号12と、第2の計算データ信
号13とを供給するものである。第2のシフトレジスタ
23は、ユークリッド互除演算中の多項式Bの係数と多
項式Mの係数とを格納するための2t+2段のレジスタ
で構成されており、シンドローム信号(il)4と、格納コ
ード制御信号16と、第2の選択データ信号27との供
給を受け、第3の計算データ信号14と、第4の計算デ
ータ信号15とを供給するものである。更に、第2のシ
フトレジスタ23は、第5の計算データ信号30を第1
のシフトレジスタ22へ供給する。第3のシフトレジス
タ24は、格納コード制御信号16によって制御される
t−1段のレジスタで構成されている。第3のシフトレ
ジスタ24は第6の計算データ信号33を第2のシフト
レジスタ23へ供給し、第1のシフトレジスタ22は第
7の計算データ信号28を第3のシフトレジスタ24へ
供給し、第3のシフトレジスタ24は第8の計算データ
信号32を第1のシフトレジスタ22へ供給し、第2の
シフトレジスタ31は第9の計算データ信号31を第3
のシフトレジスタ24へ供給する。エラー検査器25
は、第1のシフトレジスタ22から供給された第10の
計算データ信号29と、第3のシフトレジスタ24から
供給された第11の計算データ信号34とに基づいて、
処理エラー信号10を生成する。
トレジスタ22の中の2t+2段目のレジスタから供給
される信号である。第2の計算データ信号13は、第1
のシフトレジスタ22の中の2t+1段目のレジスタか
ら供給される。第3の計算データ信号14は、第2のシ
フトレジスタ23の中の2t+2段目のレジスタから供
給される。第4の計算データ信号15は、第2のシフト
レジスタ23の中の2t+1段目のレジスタから供給さ
れる。第5の計算データ信号(chg) 30は、第2のシフ
トレジスタ23の中の全レジスタから第1のシフトレジ
スタ22の中の全レジスタへ転送される信号である。
して第1のシフトレジスタ22と第3のシフトレジスタ
24との合体格納器が構成される場合には、第3のシフ
トレジスタ24を構成するt−1段のレジスタが、第1
のシフトレジスタ22の中の2段目のレジスタと3段目
のレジスタとの間に挿入される。第7の計算データ信号
(usraen)28は第1のシフトレジスタ22の中の2段目
のレジスタから第3のシフトレジスタ24の中の1段目
のレジスタへ供給される信号であり、第8の計算データ
信号(naen)32は第3のシフトレジスタ24の中のt−
1段目のレジスタから第1のシフトレジスタ22の中の
3段目のレジスタへ供給される信号である。
して第2のシフトレジスタ23と第3のシフトレジスタ
24との合体格納器が構成される場合には、第3のシフ
トレジスタ24を構成するt−1段のレジスタが、第2
のシフトレジスタ23の中の2段目のレジスタと3段目
のレジスタとの間に挿入される。第9の計算データ信号
(usrben)31は第2のシフトレジスタ23の中の2段目
のレジスタから第3のシフトレジスタ24の中の1段目
のレジスタへ供給される信号であり、第6の計算データ
信号(nben)33は第3のシフトレジスタ24の中のt−
1段目のレジスタから第2のシフトレジスタ23の中の
3段目のレジスタへ供給される信号である。
ーの検査のために、第1のシフトレジスタ22の中のt
+4段目から2t+2段目までのt−1段のレジスタか
ら供給される。第11の計算データ信号34は、処理エ
ラーの検査のために、第3のシフトレジスタ24の中の
t−1段のレジスタから供給される。ω信号8は、第1
のシフトレジスタ22の中のt+3段目から2t+2段
目までのt段のレジスタから供給される。σ信号9は、
第1のシフトレジスタ22の中の2段目からt+2段目
までのt+1段のレジスタから供給される。ただし、多
次数減少の場合には、σ信号9は、第1のシフトレジス
タ22の中の3段目からt+2段目までのt段のレジス
タと、第3のシフトレジスタ24の中のt−1段目のレ
ジスタとから供給される。
している。図5において、40は演算入力セレクタ、4
1は逆元計算器、42は第1のレジスタ、43はガロア
乗算器、44はガロア加算器、45は第2のレジスタを
それぞれ示している。演算入力セレクタ40は、第3の
セレクタ64と、第4のセレクタ65と、第5のセレク
タ66とで構成される。第3のセレクタ(cal0)64は、
演算制御コード信号17に応じて、第1の計算データ信
号(rvdtA) 12と、第3の計算データ信号(rvdtB) 14
と、第2の計算データ信号(prvdtA)13と、第4の計算
データ信号(prvdtB)15と、σ微分値信号(sgmd)7との
いずれかを第3の選択データ信号46として供給する。
第4のセレクタ(cal1)65は、演算制御コード信号17
に応じて、ω値信号(omgmgn)6と、第1の計算データ信
号(mldtA) 12と、第3の計算データ信号(mldtB) 14
と、第2の計算データ信号(pmldtA)13と、第4の計算
データ信号(pmldtB)15とのいずれかを第4の選択デー
タ信号47として供給する。第5のセレクタ(cal2)66
は、演算制御コード信号17に応じて、第1の計算デー
タ信号(addtA) 12と、第3の計算データ信号(addtB)
14と、第2の計算データ信号(paddtA)13と、第4の
計算データ信号(paddtB)15と、第1の定数データ信号
(addtB2)と、第2の定数データ信号(evalcst) とのいず
れかを第5の選択データ信号48として供給する。逆元
計算器41は、第3の選択データ信号46の逆数を逆元
データ信号49として供給する。第1のレジスタ42
は、逆元データ信号49を保持し、これを中間データ信
号50として供給する。ガロア乗算器43は、中間デー
タ信号50と活性化された第4の選択データ信号(sben)
47との積を積データ信号51として供給する。第1の
レジスタ42は、ガロア乗算器43から供給された積デ
ータ信号51を保持し、これを中間データ信号50とし
てガロア乗算器43へ供給することもできる。逆元デー
タ信号(revdat)49と積データ信号(revdmul) 51との
いずれを第1のレジスタ42が保持すべきかは、演算制
御コード信号17により指定される。ガロア加算器44
は、積データ信号51と活性化された第5の選択データ
信号(saen)48との和を和データ信号52として供給す
る。第2のレジスタ45は、演算制御コード信号17に
応答して和データ信号(mul) 52を保持し、これを帰還
データ信号19又は誤り値信号11として供給する。
している。図6において、60は次数カウンタ、61は
タイミング発生器、62は制御コード発生器をそれぞれ
示している。次数カウンタ60は、処理開始信号5の供
給を受けてカウント動作を開始し、ユークリッド互除演
算における中間多項式の次数を常に監視する。具体的に
は、次数カウンタ60は、第1の計算データ信号12と
第3の計算データ信号14とを常に監視して、deg A及
びdeg Bのうちのいずれかがt−1以下になったときに
処理終了信号18を供給する。タイミング発生器61
は、処理開始信号5の供給を受けて動作を開始し、第1
の計算データ信号12と第3の計算データ信号14とを
参照しながら制御タイミング信号63を供給する。制御
コード発生器62は、処理開始信号5と制御タイミング
信号63とを受けて、格納制御コード信号16と演算制
御コード信号17とを生成する。
よって生成される格納制御コード信号16及び演算制御
コード信号17の詳細を示している。これらの制御コー
ド信号16,17は、15ビットの制御コードにインプ
リメントされている。図7では、ビット14にsregen-c
tlB 、ビット13にsregen-ctlA 、ビット12,11及
び10にadin-ctl[2:0] 、ビット9にbreg-ctl、ビット
8及び7にmulreg-ctl[1:0] 、ビット6,5及び4にmu
lin-ctl[2:0]、ビット3,2及び1にreg-ctl[2:0]、ビ
ット0にinitreg-ctl のラベル付けが各々なされてい
る。
誤り値計算ユニット102の動作の制御手順を示してい
る。図8に示されたアドレスはタイミング発生器61か
ら制御コード発生器62へタイミング信号63として供
給されるアドレスであり、図8中の制御コードを構成す
る15ビットは図7において説明したものである。
ッド互除演算について説明する。図9は第1のシフトレ
ジスタ22の初期設定を、図10は第2のシフトレジス
タ23の初期設定をそれぞれ示している。図9に示され
るように、シンドローム信号4として供給される2t個
のシンドロームs1 ,s2 ,…,s2tのうちの最高次数
に係る1個のシンドロームs2tを除く2t−1個のシン
ドロームが、第1のシフトレジスタ22の中の4段目か
ら2t+2段目までの2t−1段のレジスタに格納され
る。1段目のレジスタには定数データ「0」が、2段目
のレジスタには定数データ「1」が、3段目のレジスタ
には定数データ「0」がそれぞれ格納される。1段目及
び2段目のレジスタは多項式Lの初期係数を、3段目か
ら2t+2段目までの2t段のレジスタは多項式Aの初
期係数をそれぞれ表わしている。一方、図10に示され
るように、第2のシフトレジスタ23の中の3段目から
2t+2段目までの2t段のレジスタに2t個のシンド
ロームs1 ,s2 ,…,s2tが格納される。1段目のレ
ジスタには定数データ「1」が、2段目のレジスタには
定数データ「0」がそれぞれ格納される。1段目及び2
段目のレジスタは多項式Mの初期係数を、3段目から2
t+2段目までの2t段のレジスタは多項式Bの初期係
数をそれぞれ表わしている。
項式A,B,L,Mはそれぞれ式(6)〜(9)のよう
に初期化される。つまり、初期状態において、多項式A
の次数は2tであり、多項式Bの次数は高々2t−1で
あって、deg A≧deg Bが成り立つ。したがって、予め
多項式A及びLをそれぞれ更新することによって、deg
Aを減少させ、deg Lを増加させておくことができる。
図9に示された次数2t−1の多項式Aと次数1の多項
式Lとは、このようにして予め更新された結果を示して
いる。したがって、最初に、第1のシフトレジスタ22
から第1の計算データ信号12としてシンドロームs
2t-1が、第2のシフトレジスタ23から第3の計算デー
タ信号14としてシンドロームs2tがそれぞれ供給され
る。
してシンドロームs2t-1(多項式Aの最高次数項の係数
aを表わす。)を、第3の計算データ信号14としてシ
ンドロームs2t(多項式Bの最高次数項の係数bを表わ
す。)をそれぞれ最初に受信する。この場合にはdeg A
≧deg Bであるから、制御部3は、式(14)及び(1
5)にしたがって多項式A及びLをそれぞれ更新するよ
うに、格納コード制御信号16及び演算制御コード信号
17を供給する。すなわち、演算部2では、まず商a/
bが第1のレジスタ42に格納される。そして、第1及
び第2のシフトレジスタ22,23のシフト動作によっ
て順次送られて来る第1及び第3の計算データ信号1
2,14の各々について式(14)及び(15)の計算
が実行される。一方、データ格納部1では、帰還データ
信号19が第1のセレクタ20を介して第1のシフトレ
ジスタ22へ、第3の計算データ信号14が第2のセレ
クタ21を介して第2のシフトレジスタ23へそれぞれ
供給される。したがって、更新された多項式A及びLが
第1のシフトレジスタ22に、元のままの多項式B及び
Mが第2のシフトレジスタ23にそれぞれ格納される。
なった場合には、制御部3は、式(16)及び(17)
にしたがって多項式B及びMをそれぞれ更新するよう
に、格納コード制御信号16及び演算制御コード信号1
7を供給する。すなわち、演算部2では、まず商b/a
が第1のレジスタ42に格納される。そして、第1及び
第2のシフトレジスタ22,23のシフト動作によって
順次送られて来る第1及び第3の計算データ信号12,
14の各々について式(16)及び(17)の計算が実
行される。一方、データ格納部1では、帰還データ信号
19が第2のセレクタ21を介して第2のシフトレジス
タ23へ、第1の計算データ信号12が第1のセレクタ
20を介して第1のシフトレジスタ22へそれぞれ供給
される。したがって、更新された多項式B及びMが第2
のシフトレジスタ23に、元のままの多項式A及びLが
第1のシフトレジスタ22にそれぞれ格納される。
g Bのうちのいずれかがt−1以下になった場合には、
制御部3が処理終了信号18を供給する。deg A≦t−
1になったときには、ω(z) =Aかつσ(z) =Lとする
ように、第1のシフトレジスタ22からω信号8及びσ
信号9が供給される。deg B≦t−1になったときに
は、ω(z) =Bかつσ(z) =Mとするように、第2のシ
フトレジスタ23の中の全レジスタから第1のシフトレ
ジスタ22の中の全レジスタへの信号転送の後に、第1
のシフトレジスタ22からω信号8及びσ信号9が供給
される。
減少が生じた場合には、第3のシフトレジスタ24が活
用される。すなわち、多項式Aで多次数減少が発生した
ときには、第1のシフトレジスタ22からなる単独の格
納器と、第2及び第3のシフトレジスタ23,24から
なる合体格納器とが使用される。多項式Bで多次数減少
が発生したときには、第2のシフトレジスタ23からな
る単独の格納器と、第1及び第3のシフトレジスタ2
2,24からなる合体格納器とが使用される。なお、デ
ータ格納制御の都合上、第1の計算データ信号12を第
2の計算データ信号13で代用し、第3の計算データ信
号14を第4の計算データ信号15で代用する場合もあ
る。
求められた誤り位置多項式σ(z) と誤り評価多項式ω
(z) とは、チェン探索ユニット103へ送られる。チェ
ン探索ユニット103は、誤り評価値ω (α-ju ) と誤
り位置多項式微分値σ'(α-ju) とを求める。図5の演
算部2は、ω (α-ju ) を表わすω値信号6と、σ'(α
-ju ) を表わすσ微分値信号7とから、誤りの値eu を
表わす信号11を生成する機能をも備えている。この
際、第3のセレクタ64はσ微分値信号7を、第4のセ
レクタ65はω値信号6を、第5のセレクタ66は定数
データ「0」をそれぞれ選択する。これにより、式
(5)にしたがった誤り値計算が実行される。
ば、各々1パケットサイクルに対応する3ステージのパ
イプライン構造を有するリードソロモン復号器を採用
し、第1のパイプラインステージではシンドローム計算
を、第2のパイプラインステージではユークリッド互除
演算、チェン探索及び誤り値計算を、第3のパイプライ
ンステージでは誤り訂正をそれぞれ実行することとした
ので、誤り訂正数が大きい場合のリードソロモン復号処
理を効率良く達成できる。
ユークリッド互除演算と誤り値計算とに兼用することと
したので、誤り訂正数が大きい場合のリードソロモン復
号器の回路規模を低減することができる。
すブロック図である。
ムチャート図である。
ユニットの内部構成を示すブロック図である。
ク図である。
ある。
ある。
格納制御コード信号及び演算制御コード信号の詳細を示
す図である。
ニットの動作の制御手順を示す図である。
す図である。
示す図である。
Claims (4)
- 【請求項1】 t重誤り訂正リードソロモン符号よりな
る受信多項式Y(z)からシンドローム多項式S(z) を求
めるための第1のユニットと、 ユークリッド互除演算によって前記シンドローム多項式
S(z) から誤り位置多項式σ(z) と誤り評価多項式ω
(z) とを求め、かつk(k≦t)個の誤り評価値を対応
する誤り位置多項式微分値で除算することによってk個
の誤りの値eu を求めるための第2のユニットと、 チェン探索によって前記誤り位置多項式σ(z) のk個の
根α-ju を求め、かつ前記誤り評価多項式ω(z) に前記
k個の根α-ju をそれぞれ代入して得られる誤り評価値
と、前記誤り位置多項式σ(z) の導関数に前記k個の根
α-ju をそれぞれ代入して得られる誤り位置多項式微分
値とを前記第2のユニットへ供給するための第3のユニ
ットと、 前記k個の根α-ju からk個の誤り位置を求め、かつ前
記受信多項式Y(z) の中の対応位置から前記k個の誤り
の値eu のうちの対応する誤りの値をそれぞれ差し引く
ことによって、誤り訂正された多項式W(z) を求めるた
めの第4のユニットとを備え、 前記第1のユニットは1つのパケットサイクルに対応す
る第1のパイプラインステージを、前記第2及び第3の
ユニットは次のパケットサイクルに対応する第2のパイ
プラインステージを、前記第4のユニットは更に次のパ
ケットサイクルに対応する第3のパイプラインステージ
をそれぞれ構成することを特徴とするリードソロモン復
号器。 - 【請求項2】 t重誤り訂正リードソロモン符号よりな
る受信多項式Y(z)からシンドローム多項式S(z) を求
めるための第1のユニットと、 ユークリッド互除演算によって前記シンドローム多項式
S(z) から誤り位置多項式σ(z) と誤り評価多項式ω
(z) とを求め、かつk(k≦t)個の誤り評価値を対応
する誤り位置多項式微分値で除算することによってk個
の誤りの値eu を求めるための第2のユニットと、 チェン探索によって前記誤り位置多項式σ(z) のk個の
根α-ju を求め、かつ前記誤り評価多項式ω(z) に前記
k個の根α-ju をそれぞれ代入して得られる誤り評価値
と、前記誤り位置多項式σ(z) の導関数に前記k個の根
α-ju をそれぞれ代入して得られる誤り位置多項式微分
値とを前記第2のユニットへ供給するための第3のユニ
ットと、 前記k個の根α-ju からk個の誤り位置を求め、かつ前
記受信多項式Y(z) の中の対応位置から前記k個の誤り
の値eu のうちの対応する誤りの値をそれぞれ差し引く
ことによって、誤り訂正された多項式W(z) を求めるた
めの第4のユニットとを備え、 前記第2のユニットは、 前記シンドローム多項式S(z) を表わす信号と、前記ユ
ークリッド互除演算の中間結果を表わす帰還信号とを格
納し、かつ最終的に前記誤り位置多項式σ(z)を表わす
信号と前記誤り評価多項式ω(z) を表わす信号とを供給
するためのデータ格納部と、 前記データ格納部に格納された信号から前記ユークリッ
ド互除演算の中間結果を表わす帰還信号を生成し、かつ
前記k個の誤りの値eu を求めるための除算を実行する
ように、単一の逆元計算器と、単一のガロア乗算器と、
単一のガロア加算器とを有する演算部と、 前記データ格納部と前記演算部とを制御するための制御
部とを備えたことを特徴とするリードソロモン復号器。 - 【請求項3】 請求項2記載のリードソロモン復号器に
おいて、 前記データ格納部は、各々2t+2段のレジスタで構成
された第1及び第2のシフトレジスタと、t−1段のレ
ジスタで構成された第3のシフトレジスタとを備えたこ
とを特徴とするリードソロモン復号器。 - 【請求項4】 請求項2記載のリードソロモン復号器に
おいて、 前記制御部は、前記ユークリッド互除演算における中間
多項式の次数を監視するための次数カウンタを備えたこ
とを特徴とするリードソロモン復号器。
Priority Applications (7)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP28370796A JP3233860B2 (ja) | 1996-10-25 | 1996-10-25 | リードソロモン復号器 |
TW086112405A TW388149B (en) | 1996-10-25 | 1997-08-28 | Reed-Solomon decoder |
EP03020349A EP1370004A3 (en) | 1996-10-25 | 1997-10-10 | Arithmetic unit for Reed-Solomon decoder |
DE69728945T DE69728945T2 (de) | 1996-10-25 | 1997-10-10 | Reed-Solomon Dekoder |
EP97117606A EP0838905B1 (en) | 1996-10-25 | 1997-10-10 | Reed-Solomon Decoder |
US08/951,525 US6122766A (en) | 1996-10-25 | 1997-10-16 | Reed-Solomon decoder having a three-stage pipeline structure |
KR1019970054726A KR100497639B1 (ko) | 1996-10-25 | 1997-10-24 | 리드솔로몬복호기 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP28370796A JP3233860B2 (ja) | 1996-10-25 | 1996-10-25 | リードソロモン復号器 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH10135846A true JPH10135846A (ja) | 1998-05-22 |
JP3233860B2 JP3233860B2 (ja) | 2001-12-04 |
Family
ID=17669046
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP28370796A Expired - Lifetime JP3233860B2 (ja) | 1996-10-25 | 1996-10-25 | リードソロモン復号器 |
Country Status (6)
Country | Link |
---|---|
US (1) | US6122766A (ja) |
EP (2) | EP0838905B1 (ja) |
JP (1) | JP3233860B2 (ja) |
KR (1) | KR100497639B1 (ja) |
DE (1) | DE69728945T2 (ja) |
TW (1) | TW388149B (ja) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6553537B1 (en) | 1998-12-11 | 2003-04-22 | Matsushita Electric Industrial Co., Ltd. | Reed-Solomon decoding apparatus and control method therefor |
US7406651B2 (en) | 2004-01-29 | 2008-07-29 | Samsung Electronics Co., Ltd. | Forward Chien search type Reed-Solomon decoder circuit |
KR100907547B1 (ko) | 2007-03-21 | 2009-07-14 | 아주대학교산학협력단 | 리드-솔로몬 복호기의 에스-디씨엠이 알고리즘 연산방법 및그 연산회로 |
JP2009171347A (ja) * | 2008-01-17 | 2009-07-30 | Hitachi Communication Technologies Ltd | 演算ユニット、エラー訂正復号回路及び誤り位置多項式の演算方法 |
Families Citing this family (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100258952B1 (ko) * | 1997-10-14 | 2000-06-15 | 윤종용 | 새로운 다항식 배열 구조를 채용한 리드-솔로몬(rs) 복호기와그 복호방법 |
EP0986814B1 (en) * | 1998-03-18 | 2003-11-05 | STMicroelectronics S.r.l. | Reed-solomon decoding of data read from dvd or cd supports |
JP3238128B2 (ja) * | 1998-06-02 | 2001-12-10 | 松下電器産業株式会社 | リードソロモン符号化装置および方法 |
US6347389B1 (en) * | 1999-03-23 | 2002-02-12 | Storage Technology Corporation | Pipelined high speed reed-solomon error/erasure decoder |
KR100594002B1 (ko) * | 1999-04-23 | 2006-06-28 | 삼성전자주식회사 | 가변 처리가 가능한 파이프라인 구조의 리드 솔로몬 복호기 |
US6772385B2 (en) * | 2000-01-31 | 2004-08-03 | Sanyo Electric Co., Ltd. | Error-correcting device and decoder enabling fast error correction with reduced circuit scale |
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 |
KR100370239B1 (ko) * | 2000-10-25 | 2003-01-29 | 삼성전자 주식회사 | 고속 블럭 파이프라인 구조의 리드-솔로몬 디코더에적용하기 위한 메모리 장치와 메모리 액세스 방법 및 그메모리 장치를 구비한 리드-솔로몬 디코더 |
US7051267B1 (en) | 2002-04-08 | 2006-05-23 | Marvell International Ltd. | Efficient high-speed Reed-Solomon decoder |
US7010739B1 (en) | 2002-04-11 | 2006-03-07 | Marvell International Ltd. | Error evaluator for inversionless Berlekamp-Massey algorithm in Reed-Solomon decoders |
US6954892B2 (en) * | 2002-06-06 | 2005-10-11 | National Chiao Tung University | Method for calculating syndrome polynomial in decoding error correction codes |
US20040163030A1 (en) * | 2003-02-13 | 2004-08-19 | International Business Machines Corporation | Iterative error correcting system |
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 |
CN1773863B (zh) * | 2004-11-12 | 2010-06-02 | 中国科学院空间科学与应用研究中心 | 一种可用于大容量存储器的rs(256,252)码纠错译码芯片 |
CN1773864B (zh) * | 2004-11-12 | 2010-05-05 | 中国科学院空间科学与应用研究中心 | 一种纠错能力为2的扩展里德—所罗门码的译码方法 |
CN100384116C (zh) * | 2005-03-31 | 2008-04-23 | 中国科学院空间科学与应用研究中心 | 一种高速译码芯片 |
US7467346B2 (en) * | 2005-08-18 | 2008-12-16 | Hitachi Global Storage Technologies Netherlands, B.V. | Decoding error correction codes using a modular single recursion implementation |
US20100073202A1 (en) * | 2008-09-25 | 2010-03-25 | Mazed Mohammad A | Portable internet appliance |
US20080168335A1 (en) * | 2007-01-04 | 2008-07-10 | Broadcom Corporation, A California Corporation | Area efficient on-the-fly error correction code (ECC) decoder architecture |
KR101433620B1 (ko) * | 2007-08-17 | 2014-08-25 | 삼성전자주식회사 | 처리량을 높이기 위하여 더블 버퍼링 구조와 파이프라이닝기법을 이용하는 디코더 및 그 디코딩 방법 |
KR101437396B1 (ko) * | 2008-02-27 | 2014-09-05 | 삼성전자주식회사 | 레이턴시를 줄일 수 있는 에러 정정 블록을 포함하는메모리 시스템 및 그것의 에러 정정 방법 |
US8433985B2 (en) * | 2010-03-29 | 2013-04-30 | Intel Corporation | Error correction mechanisms for flash memories |
KR101678917B1 (ko) * | 2010-09-16 | 2016-11-24 | 삼성전자주식회사 | 디코더, 이의 동작방법, 및 이를 포함하는 장치들 |
JP5275398B2 (ja) * | 2011-03-28 | 2013-08-28 | 株式会社東芝 | リードソロモン復号器及び受信装置 |
CN103929209A (zh) * | 2014-04-09 | 2014-07-16 | 西安电子科技大学 | 基于fpga的高性能组合rs处理器 |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
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 |
US5107503A (en) * | 1987-08-24 | 1992-04-21 | Digital Equipment Corporation | High bandwidth reed-solomon encoding, decoding and error correcting circuit |
US4873688A (en) * | 1987-10-05 | 1989-10-10 | Idaho Research Foundation | High-speed real-time Reed-Solomon decoder |
JP2797569B2 (ja) * | 1989-12-25 | 1998-09-17 | ソニー株式会社 | ユークリッドの互除回路 |
US5504758A (en) * | 1992-04-28 | 1996-04-02 | Mitsubishi Denki Kabushiki Kaisha | Error-correcting apparatus |
US5396502A (en) * | 1992-07-09 | 1995-03-07 | Advanced Hardware Architectures, Inc. | Single-stack implementation of a Reed-Solomon encoder/decoder |
US5379305A (en) * | 1992-07-20 | 1995-01-03 | Digital Equipment Corporation | Error correction system with selectable error correction capabilities |
US5432822A (en) * | 1993-03-12 | 1995-07-11 | Hughes Aircraft Company | Error correcting decoder and decoding method employing reliability based erasure decision-making in cellular communication system |
US5428630A (en) * | 1993-07-01 | 1995-06-27 | Quantum Corp. | System and method for verifying the integrity of data written to a memory |
US5771244A (en) * | 1994-03-09 | 1998-06-23 | University Of Southern California | Universal Reed-Solomon coder/encoder |
US5610929A (en) * | 1994-03-11 | 1997-03-11 | Fujitsu Limited | Multibyte error correcting system |
FR2721775B1 (fr) * | 1994-06-27 | 1996-09-06 | Sgs Thomson Microelectronics | Circuit de localisation d'erreurs d'un décodeur Reed-Solomon. |
JP2963018B2 (ja) * | 1994-11-08 | 1999-10-12 | 旭化成マイクロシステム株式会社 | リード・ソロモン誤り訂正符号復号化回路 |
EP1150435A1 (en) * | 1996-06-27 | 2001-10-31 | Matsushita Electric Industrial Co., Ltd. | Apparatus for performing Euclid's algorithm depending on the coefficients of the syndrome polynomial |
TW311189B (en) * | 1996-09-30 | 1997-07-21 | United Microelectronics Corp | The error-corrected decoding method and its apparatus for Reed-Soloman code |
US5889792A (en) * | 1996-10-01 | 1999-03-30 | Intel Corporation | Method and apparatus for generating syndromes associated with a block of data that employs re-encoding the block of data |
GB9622539D0 (en) * | 1996-10-30 | 1997-01-08 | Discovision Ass | Galois field multiplier for reed-solomon decoder |
US5905740A (en) * | 1997-04-08 | 1999-05-18 | Seagate Technology, Inc. | Apparatus and method for error correction |
US5887005A (en) * | 1997-06-26 | 1999-03-23 | Integrated Device Technology, Inc. | Methods and apparatus for error correction |
-
1996
- 1996-10-25 JP JP28370796A patent/JP3233860B2/ja not_active Expired - Lifetime
-
1997
- 1997-08-28 TW TW086112405A patent/TW388149B/zh not_active IP Right Cessation
- 1997-10-10 EP EP97117606A patent/EP0838905B1/en not_active Expired - Lifetime
- 1997-10-10 DE DE69728945T patent/DE69728945T2/de not_active Expired - Lifetime
- 1997-10-10 EP EP03020349A patent/EP1370004A3/en not_active Withdrawn
- 1997-10-16 US US08/951,525 patent/US6122766A/en not_active Expired - Lifetime
- 1997-10-24 KR KR1019970054726A patent/KR100497639B1/ko not_active IP Right Cessation
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6553537B1 (en) | 1998-12-11 | 2003-04-22 | Matsushita Electric Industrial Co., Ltd. | Reed-Solomon decoding apparatus and control method therefor |
US7406651B2 (en) | 2004-01-29 | 2008-07-29 | Samsung Electronics Co., Ltd. | Forward Chien search type Reed-Solomon decoder circuit |
KR100907547B1 (ko) | 2007-03-21 | 2009-07-14 | 아주대학교산학협력단 | 리드-솔로몬 복호기의 에스-디씨엠이 알고리즘 연산방법 및그 연산회로 |
JP2009171347A (ja) * | 2008-01-17 | 2009-07-30 | Hitachi Communication Technologies Ltd | 演算ユニット、エラー訂正復号回路及び誤り位置多項式の演算方法 |
Also Published As
Publication number | Publication date |
---|---|
DE69728945T2 (de) | 2004-09-02 |
KR19980033139A (ko) | 1998-07-25 |
EP1370004A2 (en) | 2003-12-10 |
DE69728945D1 (de) | 2004-06-09 |
EP0838905B1 (en) | 2004-05-06 |
EP1370004A3 (en) | 2005-05-04 |
TW388149B (en) | 2000-04-21 |
EP0838905A3 (en) | 2001-03-21 |
US6122766A (en) | 2000-09-19 |
JP3233860B2 (ja) | 2001-12-04 |
KR100497639B1 (ko) | 2005-09-08 |
EP0838905A2 (en) | 1998-04-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3233860B2 (ja) | リードソロモン復号器 | |
US5170399A (en) | Reed-Solomon Euclid algorithm decoder having a process configurable Euclid stack | |
JP3970337B2 (ja) | 大規模データ・ブロックのためのハードウェア最適化リード・ソロモン・デコーダ | |
US4567594A (en) | Reed-Solomon error detecting and correcting system employing pipelined processors | |
US5642367A (en) | Finite field polynomial processing module for error control coding | |
US5107503A (en) | High bandwidth reed-solomon encoding, decoding and error correcting circuit | |
US7028247B2 (en) | Error correction code circuit with reduced hardware complexity | |
US5446743A (en) | Coefficient updating method and apparatus for Reed-Solomon decoder | |
US4833678A (en) | Hard-wired serial Galois field decoder | |
US6119262A (en) | Method and apparatus for solving key equation polynomials in decoding error correction codes | |
US6092233A (en) | Pipelined Berlekamp-Massey error locator polynomial generating apparatus and method | |
JP5384492B2 (ja) | メッセージ剰余の決定 | |
US5805617A (en) | Apparatus for computing error correction syndromes | |
US5818854A (en) | Reed-solomon decoder | |
JP3305525B2 (ja) | 復号器、誤りロケータシーケンス生成器および復号方法 | |
JP2004032737A (ja) | リード−ソロモン復号器 | |
EP1502356B1 (en) | A method of soft-decision decoding of reed-solomon codes | |
JPH1093445A (ja) | 誤り位置検出多項式計算装置 | |
JPH11225079A (ja) | 新たな多項式配列構造を採用したリード−ソロモン復号器とその復号方法 | |
JP2800723B2 (ja) | リードソロモン復号器の誤り位置検出回路 | |
US6915478B2 (en) | Method and apparatus for computing Reed-Solomon error magnitudes | |
JP3343857B2 (ja) | 復号装置、演算装置およびこれらの方法 | |
US5787100A (en) | Apparatus for determining error evaluator polynomial for use in a Reed-Solomon decoder | |
JPH09307458A (ja) | エラー訂正向け多項式評価装置 | |
JP2907138B2 (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: 20010904 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080921 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080921 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090921 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090921 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100921 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110921 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120921 Year of fee payment: 11 |