JP2004032737A - リード−ソロモン復号器 - Google Patents
リード−ソロモン復号器 Download PDFInfo
- Publication number
- JP2004032737A JP2004032737A JP2003156793A JP2003156793A JP2004032737A JP 2004032737 A JP2004032737 A JP 2004032737A JP 2003156793 A JP2003156793 A JP 2003156793A JP 2003156793 A JP2003156793 A JP 2003156793A JP 2004032737 A JP2004032737 A JP 2004032737A
- Authority
- JP
- Japan
- Prior art keywords
- error
- reed
- calculating
- polynomial
- solomon
- 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.)
- Pending
Links
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
-
- 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/1545—Determination of error locations, e.g. Chien search or other methods or arrangements for the determination of the roots of the error locator polynomial
-
- 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
-
- 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
-
- 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
-
- 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/154—Error and erasure correction, e.g. by using the error and erasure locator or Forney polynomial
Landscapes
- Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Probability & Statistics with Applications (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Error Detection And Correction (AREA)
- Detection And Correction Of Errors (AREA)
Abstract
【解決手段】本発明は、−シンドローム多項式S(x)と消失位置多項式Γ(x)を計算する手段を有し、−修正されたシンドローム多項式T(x)=S(x)Γ(x)mod2tを計算する手段を有し、tはリード−ソロモン符号のシンボル誤り訂正能力であり、−誤り位置多項式Δ(x)と誤り評価多項式Ω(x)を計算するユークリッドのアルゴリズムを実行する手段を有し、−誤り/消失位置多項式Ψ(x)=Δ(x)Γ(x)を計算する手段を有し、−並列チェン探索を実行する手段を有し、−フォーニーの等式に従って誤りの大きさを直列に計算する手段を有するリード−ソロモン復号器に関連する。本発明は、誤りロケーションと誤り値を計算するのに必要なサイクルの数を減少させ、同時に比較的低い複雑さのハードウェアのみを必要とする。
【選択図】 図3
Description
【発明の属する技術分野】
本発明は、一般的には、誤り検出/訂正に関連し、特にリードソロモン復号器に使用されるシステム及び方法に関連する。
【0002】
【従来の技術】
一般的に使用される誤り訂正技術は、リードソロモン誤り訂正符号である。リードソロモン(RS)技術を使用して、固定長(n)の符号語が伝送され、各符号語は、kの情報シンボルとn−kの追加の誤り訂正(パリティ)シンボルを含む。各シンボルは、sビットを有する。RS復号器は、符号語内の誤りを含む(n−k)/2シンボルまで、訂正可能である。
【0003】
これらの訂正可能なシンボルの各々は、複数のビット誤りを含むので、RS符号化技術は、複数の連続するビットに影響を及ぼすバースト誤りに対して、特に適する。一般のRS符号化機構は、255の8ビットシンボルの符号語を使用し、その223シンボルは、情報シンボルであり、そして、残りの32シンボルは誤り訂正パリティシンボルである。この符号化機構は、各255の8ビットシンボル符号語内の16誤りシンボルまで訂正でき、これにより、’受信された’ビット誤り率に関して、大きな改善を提供する。
【0004】
RS符号化機構は、知られたロケーションでの誤りであり、そして、訂正するために、少ない情報を必要とする、’消失’も検出できる。消失の数は、RS復号器が訂正できる誤りの数である(n−k)/2を、2倍に増す。
【0005】
参照の容易のために、用語’誤り’は、以後は、未知のロケーションでの誤りと、知られたロケーションでの消失のいずれかを指すのに使用される。
【0006】
図1は、従来技術のRS復号器100の例示のブロック図を示す。復号器100は、各符号語r(x)101を受信し、そして、訂正された符号語c(x)151を発生する。シンドローム計算器110は、対応するシンドローム多項式Si(x)111を発生するために、符号語101を処理する。各符号語は、誤りにのみ依存し、伝送された符号語に依存しない、n−kシンドロームを有する。これらのシンドローム111から、誤り位置多項式Δ(x)121が生成される。ユークリッドアルゴリズム120が、誤り位置多項式121と誤りの大きさ多項式Ω(x)122を提供するために示されているが、しかし、バーレカンプ−マッシイアルゴリズムのような他の方法も同様に使用することが可能である。各RS符号は、そのRS符号に対して選択されたガロア体(FG)の原始元である、パラメータ’α’を有する。誤り位置多項式は、位置pで誤りが発生した場合には、α−pが誤り多項式の根であるように構成される(pは0からn−1である)。
【0007】
繰返しのアプローチが、従来は、誤り位置多項式121の根Xk −1であるα−pの値を決定するために、符号語の各位置pに対して、α−pの各値をテストするために適用される。この繰返しテストに一般的に使用されるアルゴリズムは、チェン誤りロケータ130である。チェンロケータ130は、ブロック140で示されたように、典型的にはフォーニー誤り決定アルゴリズムを介して、誤りの大きさ141の決定を容易にする、関連する誤り微分項Xk −1Δ’(Xk − 1)132も提供する。
【0008】
誤り決定器140は、位置の見つけられた誤りシンボルに対応する、誤りの大きさ多項式122を、評価する。誤りロケータ130が位置を求めた各誤りに対して、誤り訂正器150は、この誤りの位置131と大きさ141に基づいて、訂正された符号語c(x)151を決定する。誤りが所定のシンブルで検出されない場合には、この推定された位置での訂正された符号語c(x)151内のシンボルは、受信された符号語r(x)101内のシンボルに等しい。
【0009】
特許文献1は、同時に、誤り位置多項式と誤りの大きさ多項式のmの根を探索するリード−ソロモン復号器を示す。多項式評価器は、多項式の各項に対応する複数のスライス要素を含む。各スライス要素は、異なる値について項を評価するように構成され、それにより、これらの異なる値の各々で多項式の評価を同時に実行する、複数の係数乗算器を有する。
【0010】
特許文献2は、メモリ効率の良い並列のチェン探索のシステムと方法を示す。このシステムは、チェン探索を実行しそして要求されるメモリの量を減少させる並列構造を採用することにより、多項式の根を決定する。符号語内の誤りのロケーションは、誤り位置多項式の根から得ることができる。チェン探索の性能は並列構造により向上され、そして、誤りのロケーションは、サイクルカウント、並列計算、及び、根を示す乗算器/加算器のランクのインデックスを含むことが好ましい、単純な計算を使用して簡単に決定することができる。複数のランクの乗算器は、データ記憶ユニットの単一の配列に格納されたデータを受信する。各乗算器の乗算値は、ガロア対の元に基づいている。
【0011】
特許文献3は、リード−ソロモン符号を復号する復号器回路を示す。受信された符号語に対する誤り位置多項式を決定するチェン探索と誤りパターンを計算するフォーニーアルゴリズムの同時の実行を行う、復号器が提供される。
【0012】
特許文献4は、パイプラインで、複数の符号語を処理するパイプライン化リード−ソロモン誤り/消失復号器を示す。パイプライン化リード−ソロモン誤り/消失復号器は、単純な繰返しの修正されたシンドローム処理を通して、消失だけでなく誤りを処理することにより、ディジタルシステムで破壊されたリードーソロモン符号化されたワードを処理するように設計されている。
【0013】
【特許文献1】
国際特許出願公開番号WO−A−01/39378号
【特許文献2】
米国特許US−B−6,279,137号
【特許文献3】
欧州特許出願EP−A−1,102,406号
【特許文献4】
米国特許US−B−6,347,389号
【発明が解決しようとする課題】
本発明により解決されるべきの問題は、改善されたリード−ソロモン復号器と、リード−ソロモン復号の改善された方法を提供することである。更に、DVDシステムのような、リード−ソロモン復号器を含む改善された電子システムを提供することである。
【0014】
【課題を解決するための手段】
この問題は、基本的には、独立請求項の特徴を適用することにより、解決される。本発明の好ましい実施例は、従属請求項で与えられる。
【0015】
本質的には、本発明は、並列チェン探索と修正された直列フォーニーの計算を結合することにより、改善されたリード−ソロモン復号を提供する。これは、復号器に要求されるハードウェアの複雑さを減少させ、一方、復号器の性能を増加することを可能とする。
【0016】
本発明に従って、誤り位置のみが並列チェン探索ブロックで計算される。CD又はDVDシステムでは、消失ロケーションは、CD又はDVDシステムの復調ブロックから既に知られているので、消失ロケーションは、チェン探索内で計算される必要はない。
【0017】
’根’と一般的に呼ばれる、消失ロケーションは、知られているので、並列チェン探索論理の複雑さを減少させることが可能である。これは、チェン探索論理が、誤り位置多項式Δ(x)を評価することのみをしなければならいことを暗示する。
【0018】
誤りロケーションとこれらの誤りロケーションに対応する根は、誤り位置多項式の評価後に知られる。根は、シフトレジスタに格納されるのが好ましい。
【0019】
ハードウェアの複雑さは、更に、修正された直列のフォーニーアルゴリズムを使用することにより、減少される。結合された、チェンとフォーニーブロックの高性能は、複数パスの誤り訂正を実行することを可能とし、これは、本質的に出力誤り率を減少させる。
【0020】
本発明のリード−ソロモン復号器は、DVDシステム又は、他の光又は磁気記憶システムのような、多くの電子システムで使用できる。
【0021】
原理的には、本発明の方法は、リード−ソロモン復号に適し且つ、
− シンドローム多項式S(x)と消失位置多項式Γ(x)を計算するステップを有し、
− 修正されたシンドローム多項式T(x)=S(x)Γ(x)mod2tを計算するステップを有し、tは、リード−ソロモン符号のシンボル誤り訂正能力であり、
− 誤り位置多項式Δ(x)と誤り評価多項式Ω(x)を計算するユークリッドのアルゴリズムを実行するステップを有し、
− 並列チェン探索を実行し且つ同時にと誤り/消失位置多項式
【数9】
を計算するステップを有し、
− フォーニーの等式に従って誤りの大きさを直列に計算するステップを有する。
【0022】
原理的には、本発明のリード−ソロモン復号器は、
− シンドローム多項式S(x)と消失位置多項式Γ(x)を計算する手段を有し、
− 修正されたシンドローム多項式T(x)=S(x)Γ(x)mod2tを計算する手段を有し、tは、リード−ソロモン符号のシンボル誤り訂正能力であり、
− 誤り位置多項式Δ(x)と誤り評価多項式Ω(x)を計算するユークリッドのアルゴリズムを実行する手段を有し、
− 誤り/消失位置多項式
【数10】
を計算する手段を有し、
− 並列チェン探索を実行する手段を有し、
− フォーニーの等式に従って誤りの大きさを直列に計算する手段を有する。
【0023】
本発明の優位な追加の実施例はそれぞれの従属請求項に記載されている。
【0024】
【発明の実施の形態】
本発明の例示の実施例を、添付の図面を参照して説明する。
【0025】
以下のリストの定義が使用される。
誤り位置多項式:Δ(x)
消失位置多項式:Γ(x)
誤り/消失位置多項式:
【外9】
誤り位置:il,...,iv
誤りロケーション:
【数11】
誤り値:
【数12】
消失位置:jl,...,jf
消失ロケーション:
【数13】
消失値:
【数14】
リード−ソロモン復号は、5つのステップを使用すると考えることができる。
【0026】
ステップ1:
リード−ソロモン復号は、シンドローム多項式S(x)
【数15】
を計算することで開始する。更に、消失位置多項式Γ(x)
【数16】
が計算される。これにより、消失ロケーション(根)が求められる。
【0027】
ステップ2:
修正されたシンドローム多項式T(x)=S(x)Γ(x)mod2tが計算され、ここで、tは、リード−ソロモン符号のシンボル誤り訂正能力である。
【0028】
ステップ3:
ユークリッドのアルゴリズムが使用され、これは、2つの多項式の最大公約数を求める方法であり、1975年1月の情報と制御、第27巻第87−89ページの、Y.M.Sugiyama,S.H.Kasahara、及び、T.Namekawaの”ゴッパ符号の復号のためのキー等式を解く方法(A Method for Solving the Key Equation for Decoding of Goppa Codes)”を参照する。
【0029】
誤り位置多項式Δ(x)と誤り評価多項式Ω(x)の両方は、ユークリッドのアルゴリズムを使用して計算できる。これは、従来技術から既知であり、1994年のIEEE出版の、Steven B.Wicker,Vijay K.Bhargavaの、”リード−ソロモン符号とその応用(Reed−Solomon codes and their application)”を参照する。
【0030】
ステップ4:
次に、誤りロケーションが並列チェン探索ブロックを使用して計算される。同時に、RS復号器の性能を増加するために、新たな誤り/消失位置多項式
【数17】
が計算される。これは、本発明の特に有利な点である。
【0031】
ステップ5:
新たな誤り/消失位置多項式の係数が、直列フォーニーのブロックのレジスタへロードされ、そして、誤り/消失の大きさの値が計算される。
【0032】
消失位置(根)は、ステップ1を実行後に既に知られているか又は、CD又はDVDシステムの復調ブロックにより得られる。従って、消失位置はステップ5のチェン探索で計算される必要はない。優位に、消失位置は知られているので、並列チェン探索論理の複雑さを減少させることが可能である、即ち、チェン探索論理は、誤り位置多項式Δ(x)のみを評価すればよい。優位に、誤り位置多項式Δ(x)は、9の係数のみを有する。誤りロケーションとこれらの誤りロケーションに対応する根は、この誤り位置多項式の評価後に知られる。
【0033】
図2は、4つのランクを有する並列チェン探索論理を示す。チェン探索論理の各サイクルは、並列に、対応する4つの試行根を検査する。
【0034】
チェン探索論理のランク0は、フィールド元α0、α−4、α−8、等のシーケンスにより定義される4つおきのフィールド元の根(即ち、符号語内の誤りロケーション0,4,8,...)について探索する。
【0035】
チェン探索論理のランク1は、フィールド元α−3、α−7、α−11、等のシーケンスにより定義される4つおきのフィールド元の根(即ち、符号語内の誤りロケーション3,7,11,...)について探索する。
【0036】
チェン探索論理のランク2は、フィールド元α−2、α−6、α−10、等のシーケンスにより定義される4つおきのフィールド元の根(即ち、符号語内の誤りロケーション2,6,10,...)について探索する。
【0037】
チェン探索論理のランク3は、フィールド元α−1、α−5、α−9、等のシーケンスにより定義される4つおきのフィールド元の根(即ち、符号語内の誤りロケーション1,5,9,...)について探索する。
【0038】
ガロア体カウンタGFCは、GF元のべき乗を定義する。初期化中に、α0元が、レジスタにロードされる。各サイクル(クロックCLK)で、カウンタGFCはカウントダウンされる。比較器comp1が、ゼロを示す場合には、カウンタGFCからの現在のべき乗とα−1の元の、乗算器MUL33内の乗算の積は、誤り位置多項式の根である。比較器comp2が、ゼロを示す場合には、カウンタGFCからの現在のべき乗とα−2の元の、乗算器MUL34内の乗算の積は、誤り位置多項式の根である。比較器comp3が、ゼロを示す場合には、カウンタGFCからの現在のべき乗とα−3の元の、乗算器MUL35内の乗算の積は、誤り位置多項式の根である。比較器comp4が、ゼロを示す場合には、カウンタGFCは、根を定義する。
【0039】
(図3の)シフトレジスタSHR1は、消失又は誤りロケーションに対応する根を記憶するのに使用される。復号処理のステップ1中に、消失ロケーションに対応する根は、SHR1レジスタに記憶される。SHR1レジスタの深さは16である。これは、CD又はDVDシステムのRS符号語内で復号される全ての誤りと消失を記憶するのに十分である。
【0040】
ステップ3の間に、誤り位置多項式Δ(x)が計算され、そして、その9の係数が、図2に示されている並列チェン探索ブロックのレジスタREG1からREG9にロードされる。これらのレジスタは、クロックCLKにより、クロックが与えられる。それらの出力値は、各々の4つのランク内で、乗算器MUL*と加算器ADD*のチェインへ、フィードされる。ランク3チェインの出力は、比較器comp1へ送られる。ランク2チェインの出力は、比較器comp2へ送られる。ランク1チェインの出力は、比較器comp3へ送られる。ランク0チェインの出力は、比較器comp4へ送られる。レジスタREG1からREG8の出力は、各々の場合に、それぞれ、乗算器MUL32からMUL25を介してフィードされ、各場合に、ファクタα−32、α−28、α−24、α−20、...、α−4、をそれぞれ与える。
【0041】
誤りロケータは、チェン探索内の誤り位置多項式の評価中に求められる。誤りロケータの逆数の値は、MUL33、MUL34、MUL35及び、GFカウンタから出力される。誤りのこれらのロケーションは、上述のSHR1レジスタへロードされる。
【0042】
図3は、種々のシンボル位置での誤り及び消失の大きさ値を計算し、誤り又は消失パターンを生じるブロックを示す。このブロックは、修正されたフォーニーのアルゴリズムを実行する(直列実行)。修正されたフォーニーのアルゴリズムにより与えられる、誤りの大きさ値と消失の大きさ値は、
【数18】
であり、Ω(Xk −1)は、x=Xk −1で評価された誤り評価多項式Ω(x)であり、
【外10】
は、x=Xk −1で評価された、誤り/消失位置多項式
【外11】
の、形式的微分
【外12】
であり、Ω(Yk −1)は、x=Yk −1で評価された誤り評価多項式Ω(x)である。
【0043】
Ω(x)と
【外13】
多項式は、以下の
【数19】
で表現される。
【0044】
誤り評価多項式の係数(Ω0からΩ15)は、それぞれのレジスタREG0からREG15にロードされる。誤り/消失多項式
【外14】
の、一次微分
【外15】
の係数
【外16】
は、それぞれのレジスタREG16からREG23へロードされる。レジスタREG0からREG15だけでなく、これらのレジスタは、クロックCLKによりクロックが与えられる。
【0045】
その後に、消失又は誤りロケーションに対応する根xは、レジスタSHR1から出力され、そして、フォーニーブロックへ入力される。乗算器MUL0からMUL13のチェインでは、xの次数x1、x2、x3、...、x15が、xから計算される。係数Ω1からΩ15は、それぞれの乗算器MUL14からMUL29を使用して、現在の根xのそれぞれの次数x1、x2、x3、...、x15により乗算される。各サイクルで、15の積の組みは、それぞれの加算器ADD2からADD15により、加算される。更に、ADD1では、値Ω0が、第1の積に加算される。加算器ADD15の出力は、現在の根x=Xk −1での誤り評価多項式Ω(x)の評価の結果である。
【0046】
係数
【外17】
は、現在の根xの対応する次数x1、x2、x3、...、x15と、それぞれの乗算器MUL30からMUL37により、乗算される。クロックCLKの各サイクルで、これらの乗算器の積の組みは、それぞれの加算器ADD16からADD22により加算される。ADD22の出力は、現在の根x=Xk −1での誤り/消失評価多項式
【外18】
の評価の結果である。
【0047】
式(1)で除算の代わりに乗算が使用される場合には、
【数20】
ようになる。
【0048】
加算器ADD22の出力からの積
【外19】
は、GFインバータGFIで逆数にされ、そして、上述の加算器ADD15の出力と、乗算器MUL38で乗算され、それぞれ、誤りの大きさ
【外20】
と消失の大きさ
【外21】
となる。計算された消失又は誤りの大きさ値は、乗算器MUL38から出力され、そして、レジスタSHR2に格納される。このレジスタは、レジスタSHR1と同じ深さを有する。
【0049】
レジスタSHR1に格納された全ての根は、同じように、フォーニーブロックで処理される。計算された大きさ値は、レジスタSHR2に記憶される。
【0050】
優位に、DVDシステム内で、誤りロケーションと誤り値を決定するのに使用される、本発明のチェン及びフォーニー段階は、以下の最少ハードウェアのみを必要とする。
【0051】
チェン探索ブロック:36乗算器、32加算器、9レジスタ、4比較器及び、1GFカウンタ。
【0052】
フォーニーブロック:38乗算器、22加算器、24レジスタ、及び、1GFインバータ。
【0053】
一方、既知のチェン及びフォーニー段階は、以下の最少ハードウェアのみを必要とする。
【0054】
チェン探索ブロック:34乗算器、31加算器、33レジスタ、1比較器及び、1カウンタ及び、1インバータ。
【0055】
フォーニーブロック:136乗算器、124加算器、33レジスタ、4比較器、4カウンタ及び、4インバータ。
【0056】
本発明では、外符号については67サイクルのみがそして、内符号については62サイクルのみが、誤り/消失ロケーションと誤り/消失大きさを計算するのに必要とされる。これは、従来のチェン及びフォーニーブロックと比較して、非常に高速である。
【0057】
本発明は、CD、DVD、青色−レーザDVD(ブル−レイ)又は他の記憶システムのような、誤り検出及び/又は訂正を必要とする電子システムで使用されることが可能である。本発明は、誤りロケーションと誤り値を計算するのに必要なサイクルの数を減少させることができ、そして、同時に、比較的低い複雑さのハードウェアのみを必要とする。
【0058】
【発明の効果】
上述のように、本発明により、改善されたリード−ソロモン復号器と、リード−ソロモン復号の改善された方法を提供することができる。
【図面の簡単な説明】
【図1】従来技術の誤り訂正復号器の例示のブロック図を示す図である。
【図2】本発明に従った並列チェン探索回路のブロック図を示す図である。
【図3】本発明に従った、フォーニーの等式の直列計算の回路のブロック図を示す図である。
【符号の説明】
100 RS復号器
110 シンドローム計算器
120 ユークリッドアルゴリズム
122 誤りの大きさ多項式
130 チェンロケータ
140 誤り決定器
150 誤り訂正器
Claims (12)
- 前記並列チェン探索を実行する手段は、並列にnの試行根を検査する幾つかのnランクを有する、請求項1乃至3のうちいずれか一項に記載のリード−ソロモン復号器。
- 前記フォーニーの等式に従って誤りの大きさを直列に計算する手段は、前記並列チェン探索を実行する手段により決定される根を格納するシフトレジスタ手段(SHR1)を有する、請求項1乃至4のうちいずれか一項に記載のリード−ソロモン復号器。
- nの試行根は、nランクにより並列に検査される、請求項7乃至9のうちいずれか一項に記載のリード−ソロモン復号方法。
- 請求項1乃至6のうちいずれか一項に記載のリードソロモン復号器を有する、CD、DVD、青色レーザDVD又は、他の光学的又は磁気的記憶システムのような、電子システム。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP02090207A EP1370003A1 (en) | 2002-06-07 | 2002-06-07 | Reed-Solomon Decoder |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004032737A true JP2004032737A (ja) | 2004-01-29 |
JP2004032737A5 JP2004032737A5 (ja) | 2006-07-13 |
Family
ID=29433184
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2003156793A Pending JP2004032737A (ja) | 2002-06-07 | 2003-06-02 | リード−ソロモン復号器 |
Country Status (6)
Country | Link |
---|---|
US (1) | US20030229841A1 (ja) |
EP (1) | EP1370003A1 (ja) |
JP (1) | JP2004032737A (ja) |
KR (1) | KR20030095249A (ja) |
CN (1) | CN1467918A (ja) |
TW (1) | TWI227599B (ja) |
Families Citing this family (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7353449B2 (en) * | 2002-05-08 | 2008-04-01 | Thomson Licensing | Method of soft-decision decoding of Reed-Solomon codes |
US20060059409A1 (en) * | 2004-09-10 | 2006-03-16 | Hanho Lee | Reed-solomon decoder systems for high speed communication and data storage applications |
JP4583294B2 (ja) | 2005-11-25 | 2010-11-17 | 東芝ストレージデバイス株式会社 | 誤り訂正装置、誤り訂正プログラム、及び誤り訂正方法 |
KR101149110B1 (ko) * | 2006-02-22 | 2012-05-25 | 삼성전자주식회사 | 디지털 통신 시스템의 rs 복호기 |
US7689894B2 (en) * | 2006-05-11 | 2010-03-30 | Mediatek Inc. | Decoding apparatus and method therefor |
CN101001089B (zh) * | 2006-12-28 | 2010-06-16 | 安凯(广州)微电子技术有限公司 | 一种纠错码解码中的钱搜索方法及装置 |
CN101345533B (zh) * | 2007-07-11 | 2011-06-01 | 光宝科技股份有限公司 | 里得-索罗门解码中有效率的陈氏寻根方法及系统 |
KR101317179B1 (ko) * | 2008-12-03 | 2013-10-15 | 한국전자통신연구원 | Mpe-fec rs 디코더 및 이의 복호 방법 |
US8418041B2 (en) | 2008-12-03 | 2013-04-09 | Electronics And Telecommunications Research Institute | MPE-FEC RS decoder and decoding method thereof |
CN101459431B (zh) * | 2008-12-30 | 2012-03-07 | 北京大学 | 一种信道纠错码bch码和rs码的译码方法 |
CN101854180B (zh) * | 2010-06-01 | 2013-04-24 | 福建新大陆电脑股份有限公司 | 一种条码纠错译码装置 |
US9032277B1 (en) * | 2011-11-28 | 2015-05-12 | Altera Corporation | Parallel low and asymmetric rate Reed Solomon coding |
JP2014082574A (ja) | 2012-10-15 | 2014-05-08 | Samsung Electronics Co Ltd | 誤り検出訂正回路、及びメモリ装置 |
US8977938B2 (en) * | 2013-02-08 | 2015-03-10 | Altera Corporation | Parallel decomposition of Reed Solomon umbrella codes |
US10686471B2 (en) * | 2017-11-22 | 2020-06-16 | Samsung Electronics Co., Ltd. | One-sub-symbol linear repair schemes |
WO2022226962A1 (zh) * | 2021-04-30 | 2022-11-03 | 华为技术有限公司 | Rs码的译码的方法和通信装置 |
US11750222B1 (en) * | 2022-06-29 | 2023-09-05 | Synopsys, Inc. | Throughput efficient Reed-Solomon forward error correction decoding |
CN116192661B (zh) * | 2023-04-26 | 2023-09-29 | 苏州联讯仪器股份有限公司 | 通信模块的稳定性评估方法、装置、设备及可读存储介质 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5170399A (en) * | 1989-08-30 | 1992-12-08 | Idaho Research Foundation, Inc. | Reed-Solomon Euclid algorithm decoder having a process configurable Euclid stack |
US5537426A (en) * | 1992-05-29 | 1996-07-16 | Goldstar Co., Ltd. | Operation apparatus for deriving erasure position Γ(x) and Forney syndrome T(x) polynomials of a Galois field employing a single multiplier |
US5379305A (en) * | 1992-07-20 | 1995-01-03 | Digital Equipment Corporation | Error correction system with selectable error correction capabilities |
US5715262A (en) * | 1995-07-12 | 1998-02-03 | Lsi Logic Corporation | Errors and erasures correcting reed-solomon decoder |
US6279137B1 (en) * | 1998-12-08 | 2001-08-21 | Lsi Logic Corporation | System and method for a storage-efficient parallel Chien Search |
US6347389B1 (en) * | 1999-03-23 | 2002-02-12 | Storage Technology Corporation | Pipelined high speed reed-solomon error/erasure decoder |
EP1102406A3 (en) * | 1999-11-17 | 2003-11-19 | STMicroelectronics, Inc. | Apparatus and method for decoding digital data |
US6539515B1 (en) * | 1999-11-24 | 2003-03-25 | Koninklijke Philips Electronics N.V. | Accelerated Reed-Solomon error correction |
-
2002
- 2002-06-07 EP EP02090207A patent/EP1370003A1/en not_active Withdrawn
-
2003
- 2003-06-02 JP JP2003156793A patent/JP2004032737A/ja active Pending
- 2003-06-03 KR KR10-2003-0035677A patent/KR20030095249A/ko not_active Application Discontinuation
- 2003-06-03 US US10/453,417 patent/US20030229841A1/en not_active Abandoned
- 2003-06-06 TW TW092115330A patent/TWI227599B/zh not_active IP Right Cessation
- 2003-06-09 CN CNA031411185A patent/CN1467918A/zh active Pending
Also Published As
Publication number | Publication date |
---|---|
CN1467918A (zh) | 2004-01-14 |
KR20030095249A (ko) | 2003-12-18 |
TWI227599B (en) | 2005-02-01 |
TW200308149A (en) | 2003-12-16 |
EP1370003A1 (en) | 2003-12-10 |
US20030229841A1 (en) | 2003-12-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6374383B1 (en) | Determining error locations using error correction codes | |
US6539515B1 (en) | Accelerated Reed-Solomon error correction | |
EP1131893B1 (en) | Forward error corrector | |
US5715262A (en) | Errors and erasures correcting reed-solomon decoder | |
JP5300170B2 (ja) | 順方向のチェンサーチ方式のリードソロモンデコーダ回路 | |
US7404134B2 (en) | Encoding/decoding device using a reed-solomon encoder/decoder | |
US7502989B2 (en) | Even-load software Reed-Solomon decoder | |
JP2004032737A (ja) | リード−ソロモン復号器 | |
US7322004B1 (en) | Efficient high-speed Reed-Solomon decoder | |
WO2000057561A1 (en) | Pipelined high speed reed-solomon error/erasure decoder | |
US5535225A (en) | Time domain algebraic encoder/decoder | |
US6279137B1 (en) | System and method for a storage-efficient parallel Chien Search | |
JP3830527B2 (ja) | 3つおよび4つのエラーを訂正するための改良されたシステム | |
CN101483442A (zh) | 根据Nand Flash多余空间来配置纠错能力的BCH解码器 | |
EP1102406A2 (en) | Apparatus and method for decoding digital data | |
US20100174970A1 (en) | Efficient implementation of a key-equation solver for bch codes | |
US6915478B2 (en) | Method and apparatus for computing Reed-Solomon error magnitudes | |
US8255777B2 (en) | Systems and methods for locating error bits in encoded data | |
JP2000020333A (ja) | 復号装置、演算装置およびこれらの方法 | |
US20070011592A1 (en) | Decoder architecture for Reed Solomon codes | |
US6691277B1 (en) | High speed pre-computing circuit and method for finding the error-locator polynomial roots in a Reed-Solomon decoder | |
EP1370005A2 (en) | Reed-Solomon decoder | |
KR101226439B1 (ko) | 리드-솔로몬 디코더, 이를 포함하는 메모리 시스템 및 디코딩 방법 | |
US9032277B1 (en) | Parallel low and asymmetric rate Reed Solomon coding | |
JPH1065552A (ja) | 誤り訂正の演算処理方法及び処理回路 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20040415 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20060524 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060524 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070220 |
|
A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20070518 |
|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20070523 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20071016 |