JP2600681B2 - Decoding method of Reed-Solomon code - Google Patents
Decoding method of Reed-Solomon codeInfo
- Publication number
- JP2600681B2 JP2600681B2 JP62155190A JP15519087A JP2600681B2 JP 2600681 B2 JP2600681 B2 JP 2600681B2 JP 62155190 A JP62155190 A JP 62155190A JP 15519087 A JP15519087 A JP 15519087A JP 2600681 B2 JP2600681 B2 JP 2600681B2
- Authority
- JP
- Japan
- Prior art keywords
- error
- polynomial
- flip
- flop
- 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.)
- Expired - Fee Related
Links
Landscapes
- Error Detection And Correction (AREA)
Description
【発明の詳細な説明】 〔産業上の利用分野〕 この発明は、リード・ソロモン符号の復号方法に関す
る。Description: TECHNICAL FIELD The present invention relates to a method for decoding a Reed-Solomon code.
リード・ソロモン符号(Reed Solomon Code)の復号
は、 i)シンドロームの計算 ii)誤り位置多項式σ(x),誤り評価多項式ω(x)
の導出 iii)誤り位置と誤り値の推定 iv)誤り訂正の実行 のステップでなされる。従来の方程式の根を利用した解
を用いる復号方法は、5誤り以上の多重誤りの訂正の場
合には、適用できない。この5誤り以上の訂正の場合に
は、ユーリッド互除法を用いたものが知られている。即
ち、ユークリッド互除法を使用して、誤り位置多項式σ
(x)及び誤り評価多項式ω(x)の産出がなされる。Decoding of the Reed Solomon Code is as follows: i) calculation of syndrome ii) error locator polynomial σ (x), error evaluation polynomial ω (x)
Derivation iii) Estimation of error position and error value iv) Execution of error correction. The conventional decoding method using a solution using the root of an equation cannot be applied to the case of correcting multiple errors of 5 or more errors. In the case of correction of five or more errors, a method using the Eulerian mutual division method is known. That is, using the Euclidean algorithm, the error locator polynomial σ
(X) and the error evaluation polynomial ω (x).
リード・ソロモン符号のt重誤り訂正用のバリティ検
査行列Hは、(t:訂正可能数,n:符号長)とすると、 上述のバリティ検査行列Hと受信信号の積から下記の
ように、シンドロームが発生され、また、シンドローム
多項式が定義される。If the parity check matrix H for t-error correction of the Reed-Solomon code is (t: correctable number, n: code length), A syndrome is generated from the product of the above parity check matrix H and the received signal, and a syndrome polynomial is defined as follows.
上式で発生された値を係数とする次の多項式をシンド
ローム多項式と称する。 The following polynomial using the value generated by the above equation as a coefficient is called a syndrome polynomial.
S(x)=S0+S1x+S2x2+・・+S2t-1x2t-1 誤り訂正のために種々の多項式があるが、それらは次
の関数式を満足する。 S (x) = S 0 + S 1 x + S 2 x 2 + ·· + S 2t-1 x 2t-1 There are various polynomials for error correction, they satisfy the following function expression.
φ(x)・x2t+σ(x)・S(x)=ω(x) 但し、 上式の中で、実際の訂正をする場合に必要となるもの
は、誤り位置多項式σ(x)と誤り評価多項式ω(x)
の二つである。φ (x) · x 2t + σ (x) · S (x) = ω (x) where Of the above equations, what is required for actual correction are an error locator polynomial σ (x) and an error evaluation polynomial ω (x)
The two.
上式が常に成り立つとした場合、x2tは当然分かる
が、受信信号から知ることが出来るのは、S(x)のみ
である。このx2tとS(x)からユークリッド互除法に
より、σ(x),ω(x)を求めることができる。ここ
で、良く知られたユークリッド互除法の例として、「与
えられた正の整数mとnに対し、それの最大公約数d及
び(am+bn=d)となる整数a,bを計算せよ」という問
題を解くのにユークリッド互除法が使用される。整数に
限らず、多項式の場合も同様である。即ち、(m→
x2t)(n→S(x))と対応させれば良い。但し、上
記の整数の問題は、互除法を最後まで実行して最大公約
数dを求めるわけであるが、誤り訂正を実行するため
に、σ(x),ω(x)を求める場合は、最後まで互除
法を実行して最大公約数を求めるわけではない。途中で
次の条件が成立したら、互除法の実行を止める。Assuming that the above equation always holds, x 2t is naturally known, but only S (x) can be known from the received signal. The Euclidean algorithm from the x 2t and S (x), σ (x ), can be determined ω (x). Here, as an example of a well-known Euclidean algorithm, "for a given positive integer m and n, calculate the greatest common divisor d and integers a and b which are (am + bn = d)". Euclidean algorithm is used to solve the problem. The same applies to not only integers but also polynomials. That is, (m →
x 2t ) (n → S (x)). However, the problem of the above integer is that the greatest common divisor d is obtained by executing the mutual division method to the end, but when σ (x) and ω (x) are obtained in order to execute error correction, It does not mean that the greatest common divisor is found by executing the algorithm to the end. If the following condition is satisfied on the way, the execution of the mutual division method is stopped.
t≧deg σ(x)>deg ω(x) (degは、多項式の次数を意味する。) ユークリッド互除法を用いて、導出されたσ(x),
ω(x)を用いて、誤り位置の推定及び誤り値の推定が
され、誤り訂正が実行される。この処理について4サン
プル誤り訂正符号の場合について説明する。受信信号が
第3図Aに示すように、nシンボルの場合、誤り位置多
項式σ(x)のxとして代入される値は、第3図Bに示
すように、受信信号の最後から、その最初に向かって順
に(1,α-1,α-2,・・・α-(p-1),・・・α-(n-1))と
なる。即ち、pという番号は、受信信号の最後から数え
た番号である。t ≧ deg σ (x)> deg ω (x) (deg means the degree of a polynomial.) σ (x), derived using the Euclidean algorithm
The error position and the error value are estimated using ω (x), and error correction is performed. This processing will be described for the case of a four-sample error correction code. When the received signal is n symbols as shown in FIG. 3A, the value substituted for x in the error locator polynomial σ (x) is, as shown in FIG. sequentially toward the (1, α -1, α -2 , ··· α - (p-1), ··· α - (n-1)) and becomes. That is, the number p is the number counted from the end of the received signal.
一例として、第4図Aにおいて、斜線で示すように、
受信信号の最後を0番目とすると、1番目及び4番目の
各々の位置で、誤りが発生し、これらの誤りが第4図B
に示すように、(α11,α3)の誤りパターンである場
合の訂正を考える。この場合のシンドローム多項式は、
下記のものとなる。As an example, as shown by hatching in FIG. 4A,
Assuming that the end of the received signal is 0th, errors occur at the first and fourth positions, and these errors are
As shown in ( 1 ), correction when the error pattern is (α 11 , α 3 ) is considered. The syndrome polynomial in this case is
It is as follows.
S(x)=α8x7+α7x6+α7x5 +α10x4+αx3+α3x2+α4x+α2 上記のシンドローム多項式S(x)とx2.4とを用
い、ユークリッド互除演算により、σ(x)及びω
(x)を求める。その結果を示すと、下記のように、誤
り位置多項式σ(x)及び誤り評価多項式ω(x)が求
まる。S (x) = α 8 x 7 + α 7 x 6 + α 7 x 5 + α 10 x 4 + αx 3 + α 3 x 2 + α 4 x + α 2 Using the above-mentioned syndrome polynomial S (x) and x 2.4 , the Euclidean mutual division operation is performed. , Σ (x) and ω
Find (x). As a result, an error locator polynomial σ (x) and an error evaluation polynomial ω (x) are obtained as follows.
σ(x)=x2+α10x+α10 ω(x)=α5x+α12 σ(x)を形式的に1次微分してなるσ′(x)は、 σ′(x)=α10 となる。これらの誤り位置多項式及び誤り評価多項式を
用いて、誤り位置及び誤りパターンを求める。誤り位置
多項式σ(x)に、順に(1,α-1,α-2,・・・)の値を
代入し、その時の値がゼロになれば、誤り位置と推定さ
れる。また、誤りパターンepは、 ep=ω(α-p)/σ′(α-p) により、求められる。σ (x) = x 2 + α 10 x + α 10 ω (x) = α 5 x + α 12 σ (x) is formally first-order differentiated, and σ ′ (x) is expressed as σ ′ (x) = α 10 Become. An error position and an error pattern are obtained using these error position polynomials and error evaluation polynomials. The values of (1, α −1 , α −2 ,...) Are sequentially substituted into the error locator polynomial σ (x), and if the value at that time becomes zero, it is estimated as an error position. Further, the error pattern e p is obtained by the following equation: e p = ω (α- p ) / σ ′ (α- p ).
第4図の場合では、 σ(α-1)=α-2+α9+α10=0 σ(α-4)=α-8+α6+α10=0 となり、誤り位置が分る。In the case of FIG. 4, σ (α -1 ) = α -2 + α 9 + α 10 = 0 σ (α -4 ) = α -8 + α 6 + α 10 = 0, and the error position is known.
誤りパターンe1及びe4は、 e1=ω(α-1)/α10=α6/α10=α-4=α11 e4=ω(α-4)/α10=α13/α10=α3 となり、正しい誤りパターンを求めることができる。誤
り訂正の実行は、受信系列に対して、上記の誤りパター
ンを(mod.2)の加算することでなされる。The error patterns e 1 and e 4 are e 1 = ω (α −1 ) / α 10 = α 6 / α 10 = α -4 = α 11 e 4 = ω (α -4 ) / α 10 = α 13 / α 10 = α 3, and the it is possible to find the correct error pattern. The error correction is performed by adding the above error pattern (mod. 2) to the received sequence.
上述のリード・ソロモン符号に関して、1つの誤り
は、2つの未知数を含んでいる。従って、t重誤り訂正
の場合には、2t個のパリティが付加されて、受信側で発
生される2t個のシンドロームがt個の誤りの場合には、
2t個の独立な方程式に対応して、結局、t個の誤り位置
と、t個の誤りパターンを解くことが可能になってい
る。For the Reed-Solomon code described above, one error contains two unknowns. Therefore, in the case of t-multiple error correction, 2t parities are added, and when 2t syndromes generated on the receiving side are t errors,
Eventually, t error positions and t error patterns can be solved corresponding to 2t independent equations.
この訂正方法と他に、リード・ソロモン符号では、イ
レージャ訂正という方法がある。In addition to this correction method, there is a method called erasure correction in the Reed-Solomon code.
前出の下式を再度、とりあげる。 The following formula is taken up again.
φ(x)・x2 2t+σ(x)・S(x)=ω(x) これより、 σ(x)・S(x)≡ω(x) (mod.x2t) が成り立つ。第4図の例に関して計算する。φ (x) · x 2 2t + σ (x) · S (x) = ω (x) From this, σ (x) · S (x) ≡ω (x) (mod.x 2t ) holds. The calculation is made with respect to the example of FIG.
S(x)=α8x7+α9x6+α7x5 +α10x4+αx3+α3x2+α4x+α2 σ(x)=x2+α10x+α10 α(x)S(x)=α8x9+αx8+α5x+α12 ≡α5x+α12 =ω(x) が成立していることが分る。 S (x) = α 8 x 7 + α 9 x 6 + α 7 x 5 + α 10 x 4 + αx 3 + α 3 x 2 + α 4 x + α 2 σ (x) = x 2 + α 10 x + α 10 α (x) S (x) = Α 8 x 9 + α x 8 + α 5 x + α 12 ≡α 5 x + α 12 = ω (x)
イレージャ訂正の場合には、他の誤り検出符号等を使
用して、ポインタが発生される。ポインタとは、誤りら
しいことを示すもので、ポインタが立ったからといっ
て、そのシンボルが直ちに誤りであるとは限らないこと
に注意する必要がある。第5図A及び第5図Bに示すよ
うに、第4図Bと同様の誤りが発生しており、一方、第
5図Cに示す位置にポインタが立っている場合のイレー
ジャ訂正について説明する。In the case of erasure correction, a pointer is generated using another error detection code or the like. The pointer indicates that the symbol is erroneous, and it should be noted that just because the pointer is raised does not necessarily mean that the symbol is erroneous immediately. As shown in FIGS. 5A and 5B, an erasure correction in the case where the same error as in FIG. 4B has occurred, while the pointer is standing at the position shown in FIG. 5C will be described. .
最初に、ポインタより、誤り位置多項式σ(x)と対
応する誤り位置多項式σ1 *(x)を作る。ポインタ
は、第5図Cから明らかなように、(x=1)(x=α
-1)(x=α-2)(x=α-4)の位置に適当するところ
に立ったので、σ1 *(x)は、次のようになる。First, the error locator polynomial σ (x) and the corresponding error locator polynomial σ 1 * (x) are created from the pointer. As is clear from FIG. 5C, the pointer is (x = 1) (x = α
-1 ) (x = α −2 ) (x = α −4 ) Since the user stands at an appropriate position, σ 1 * (x) becomes as follows.
σ1 *(x)=(x+1)(x+α-1) (x+α-2)(x+α-4) =x4+α7x3+α3x2+α10x+α8 次に、この誤り位置多項式σ1 *(x)とシンドロー
ム多項式S(x)とを用いて誤り評価多項式ω
1 *(x)を求める。σ 1 * (x) = (x + 1) (x + α −1 ) (x + α −2 ) (x + α −4 ) = x 4 + α 7 x 3 + α 3 x 2 + α 10 x + α 8 Next, the error location polynomial σ 1 * (X) and the syndrome evaluation polynomial S (x) using the error evaluation polynomial ω
Find 1 * (x).
σ1 *(x)S(x)≡ω1 *(x) 実際に計算すると、 ω1 *(x)=α5x3+x2+α10(mod.x8) また、 σ1 *′(x)=α7x2+α10 従って、誤りパターンを求めてみると、次のようにな
る。σ 1 * (x) is calculated S (x) ≡ω 1 * ( x) Indeed, ω 1 * (x) = α 5 x 3 + x 2 + α 10 (mod.x 8) Further, σ 1 * '( x) = α 7 × 2 + α 10 Therefore, when an error pattern is obtained, the following is obtained.
x=1 e0=ω1 *(1)/σ1 *′(1) =0/α6=0 誤りでないところなので、誤りパターンが0で良い。x = 1 e 0 = ω 1 * (1) / σ 1 * ′ (1) = 0 / α 6 = 0 Since it is not an error, the error pattern may be 0.
x=α-1 e1=ω1 *(α-1)/σ1 *′(α-1) =α11/1=α11 x=α-2 e2=ω1 *(α-2)/σ1 *′(α-2) =0/α12=0 x=α-4 e4=ω1 *(α-4)/σ1 *′(α-4) =α14/α11=α3 以上のように、全て正しく誤りパターンが求まり、訂
正できることが分る。 x = α -1 e 1 = ω 1 * (α -1) / σ 1 * '(α -1) = α 11/1 = α 11 x = α -2 e 2 = ω 1 * (α -2) / Σ 1 * ′ (α −2 ) = 0 / α 12 = 0 x = α −4 e 4 = ω 1 * (α −4 ) / σ 1 * ′ (α −4 ) = α 14 / α 11 = α three above, Motomari all correct error pattern, it can be seen that can correct.
上述のように、実際にエラー訂正をする場合、(x=
αi)が与えられたとき、σ(αi),ω(αi),
σ′(αi)を計算しなければならない。この場合、σ
(αi)及びσ′(αi)を別々に計算していたので
は、時間がかかり、ハードウェアも余分に必要となる。As described above, when error correction is actually performed, (x =
Given α i ), σ (α i ), ω (α i ),
σ ′ (α i ) must be calculated. In this case, σ
If (α i ) and σ ′ (α i ) are calculated separately, it takes time and extra hardware is required.
従って、この発明の目的は、エラー訂正時に、σ(α
i)及びσ′(αi)を同時に計算でき、処理時間の短
縮及びハードウエァが簡単化できるリード・ソロモン符
号の復号方法を提供することにある。Therefore, an object of the present invention is to provide a method for correcting σ (α
It is an object of the present invention to provide a method for decoding a Reed-Solomon code in which i ) and σ ′ (α i ) can be calculated simultaneously, and the processing time can be reduced and the hardware can be simplified.
この発明は、パリティ検査マトリクスと受信語によ
り、シンドロームを演算し、シンドロームから誤り位置
多項式σ(x)及び誤り評価多項式ω(x)を算出し、
誤り位置多項式σ(x)の形式的一次微分の多項式σ′
(x)及び誤り評価多項式ω(x)を用い、〔ep=ω
(α-p)/σ′(α-p)〕の演算により、誤りパターン
epを求め、誤り位置pのシンボルを訂正するようにした
リード・ソロモン符号の復号方法において、 誤り位置多項式σ(x)の偶数次項σe(x)と奇数
次項σo(x)を分離し、 分離された偶数次項σe(x)及び奇数次項σ
o(x)の各々のxとして、所定の値を代入した時の値
〔σo(α-m)〕及び〔σe(α-m)〕を求め、 σ(α-m)=σe(α-m)+α-mσ′o(α-m) σ′(α-m)=σo′(α-m) の演算により、σ(α-m)及びσ′(α-m)を得ると共
に、 誤り評価多項式ω(x)の偶数次項ωe(x)と奇数
次項ωo(x)を分離し、 分離された偶数次項ωe(x)及び奇数次項ω
o(x)の各々のxとして、所定の値を代入した時の値
〔ωo(α-m)〕及び〔ωe(α-m)〕を求め、 ω(α-m)=ωe(α-m)+α-mω′o(α-m) の演算により、ω(α-m)を得、 誤り位置においてσ′(α-m)から生成したσ′(α
-m)-1とω(α-m)から、 em=ω(α-m)・σ′(α-m)-1 の演算により誤りパターンemを求めることを特徴とする
リード・ソロモン符号の復号方法である。The present invention calculates a syndrome from a parity check matrix and a received word, calculates an error location polynomial σ (x) and an error evaluation polynomial ω (x) from the syndrome,
Polynomial σ ′ of the formal first derivative of the error locator polynomial σ (x)
(X) and the error evaluation polynomial ω (x), [e p = ω
(Α -p ) / σ '(α -p )]
In a decoding method of a Reed-Solomon code in which e p is obtained and a symbol at an error position p is corrected, an even-order term σ e (x) and an odd-order term σ o (x) of an error locator polynomial σ (x) are separated. And the separated even-order term σ e (x) and the odd-order term σ
The values [σ o (α -m )] and [σ e (α -m )] when a predetermined value is substituted for each x of o (x) are obtained, and σ (α -m ) = σ e By calculating (α -m ) + α -m σ ′ o (α -m ) σ ′ (α -m ) = σ o ′ (α -m ), σ (α -m ) and σ '(α -m ) And the even order ω e (x) and the odd order ω o (x) of the error evaluation polynomial ω (x) are separated, and the separated even order ω e (x) and odd order ω
The values [ω o (α -m )] and [ω e (α -m )] when a predetermined value is substituted for each x of o (x) are obtained, and ω (α -m ) = ω e By calculating (α -m ) + α -m ω ′ o (α -m ), ω (α -m ) is obtained, and σ ′ (α generated from σ ′ (α -m ) at the error position is obtained.
From -m) -1 and ω (α -m), e m = ω (α -m) · σ '(α -m) -1 Reed-Solomon and obtains the error pattern e m by computing This is a code decoding method.
誤り位置多項式σ(x)が σ(x)=σ0+σ1x+σ2x2+σ3x3+σ4x4 と与えられた場合、σ(α-i)及びσ′(α-i)を計算
してみる。このとき、 σ(x)=σe(x)+σo(x) σe(x):偶数次項,σo(x):奇数次項 と分離してみる。すると、 (σ′(x)=σo′(x))であり、且つ(σ
o(x)=x・σ′o(x))であるため、 σ(x)=σe(x)+x・σ(x) =σe(x)+x・σ′o(x) と書ける。従って、σ(α-i)を計算する時には、σe
(α-i)とσ′o(α-i)を別々に計算することによ
り、 σ(α-i)=σe(α-i)+α-iσ′o(α-i) σ′(α-i)=σ′o(α-i) と計算でき、σ(α-i)とσ′(α-i)が同時に計算で
きる。誤り評価多項式ω(x)の値の計算も、σ(x)
より1次少ないだけなので、全く同様の方法で計算する
ことができる。If it is given an error position polynomial sigma (x) is σ (x) = σ 0 + σ 1 x + σ 2 x 2 + σ 3 x 3 + σ 4 x 4, σ a (alpha -i) and σ '(α -i) Try to calculate. At this time, σ (x) = σ e (x) + σ o (x), σ e (x): an even-order term, and σ o (x): an odd-order term. Then, (σ ′ (x) = σ o ′ (x)) and (σ
Since o (x) = x · σ ′ o (x)), it can be written as σ (x) = σ e (x) + x · σ (x) = σ e (x) + x · σ ′ o (x) . Therefore, when calculating σ (α −i ), σ e
By separately calculating (α -i ) and σ ' o (α -i ), σ (α -i ) = σ e (α -i ) + α -i σ' o (α -i ) σ '( α− i ) = σ ′ o (α− i ), and σ (α− i ) and σ ′ (α− i ) can be calculated simultaneously. The calculation of the value of the error evaluation polynomial ω (x) is also represented by σ (x)
Since there is only one less order, it can be calculated in exactly the same way.
第1図は、この発明の一実施例の回路構成を示し、第
2図は、第1図の回路動作を示すフローチャートであ
る。FIG. 1 shows a circuit configuration of an embodiment of the present invention, and FIG. 2 is a flowchart showing the circuit operation of FIG.
第1図において、1で示す入力端子には、α-2iの値
が順次供給される。符号長をnとすると、入力端子1に
は、(α-2(n-1),α-2(n-2),α-2(n-3)・・・・
α-2,α0)が順次供給される。第2図Aから分るよう
に、第2図のタイミングチャートでは、(n=32)とさ
れている。In FIG. 1, the value of α −2i is sequentially supplied to the input terminal indicated by 1. Assuming that the code length is n, the input terminal 1 has (α- 2 (n-1 ), α- 2 (n-2) , α- 2 (n-3 )...
α -2 , α 0 ) are sequentially supplied. As can be seen from FIG. 2A, (n = 32) in the timing chart of FIG.
第1図において、2で示す入力端子には、誤り位置多
項式σ(x)の奇数次損Σ0系列(σ7,σ5,σ3,σ1)
が順次供給される。3で示す入力端子には、誤り位置多
項式σ(x)の偶数次項Σe系列(σ6,σ4,σ2,σ0)
が順次供給される。In FIG. 1, an input terminal indicated by 2 has an odd-order loss 0 0 series (σ 7 , σ 5 , σ 3 , σ 1 ) of an error locator polynomial σ (x).
Are sequentially supplied. 3, an even-order term e sequence (σ 6 , σ 4 , σ 2 , σ 0 ) of the error locator polynomial σ (x)
Are sequentially supplied.
4で示す入力端子には、誤り評価多項式ω(x)の奇
数次項Ω0系列が順次供給され、5で示す入力端子に
は、誤り評価多項式ω(x)の偶数次項Ωe系列が順次
供給される。第1図の構成は、σ(x)とω(x)の両
者に関する演算を行うものであり、第2図は、σ(x)
の演算動作に関するタイミングチャートである。The input terminal denoted by 4 is sequentially supplied with an odd-order term Ω 0 series of the error evaluation polynomial ω (x), and the input terminal denoted by 5 is supplied with an even-order Ω e sequence of the error evaluation polynomial ω (x) sequentially. Is done. The configuration of FIG. 1 performs an operation on both σ (x) and ω (x), and FIG. 2 shows the configuration of σ (x)
5 is a timing chart for the calculation operation of FIG.
第1図におけるFの記号は、D型フリップフロップ及
びクロックイネーブル付D型フリップフロップを示す。
また、MLの記号は、有限体の乗算器を示し、ADの記号
は、有限体の加算器を示している。The symbol F in FIG. 1 indicates a D-type flip-flop and a D-type flip-flop with clock enable.
The symbol ML indicates a finite field multiplier, and the symbol AD indicates a finite field adder.
第2図に示すように、D型フリップフロップF0,F1,F
2,F3の各々の出力には、1クロックづつ遅れたタイミン
グのα-2iの値が発生する。また、初段のクロックイネ
ーブル付フリップフロップF10及びF30の各々により、σ
7及びσ6の値がサンプリングされる。また、クロック
イネーブル付フリップフロップF21及びF41の各々によ
り、σ5及びσ4の値がサンプリングされる。As shown in FIG. 2, D-type flip-flops F0, F1, F
At each output of F2, a value of α -2i delayed by one clock is generated. Further, each of the first-stage clock enable flip-flops F10 and F30 provides σ
The values of 7 and 6 are sampled. In addition, the respective clock enable with flip-flops F21 and F 41, the values of sigma 5 and sigma 4 is sampled.
フリップフロップF11を介されたσ7とα-2iとがML1
により乗算され、このML1の出力信号とフリップフロッ
プF21の出力信号とが加算回路AD1により加算される。フ
リップフロップF12を介して加算回路AD1の出力信号が取
り出される。And σ 7 that has been through the flip-flop F11 and the α -2i is ML1
The output signal of the ML1 and the output signal of the flip-flop F21 are added by the adder circuit AD1. The output signal of the adder AD1 is taken out via the flip-flop F12.
同様に、フリップフロップF31を介されたσ6とα-2i
とがML11により乗算され、このMI11の出力信号とフリッ
プフロップF41の出力信号とが加算回路AD11により加算
される。フリップフロップF32を介して加算回路AD11の
出力信号が取り出される。Similarly, σ 6 and α −2i via the flip-flop F31
Are multiplied by ML11, and the output signal of MI11 and the output signal of flip-flop F41 are added by adder circuit AD11. An output signal of the adder circuit AD11 is taken out via the flip-flop F32.
奇数次項及び偶数次項に関して、上述と同様の演算が
順次なされ、フリップフロップF14に取り込まれるデー
タがσ′o(α-p)となり、フリップフロップF24に取
り込まれるデータがσ′e(α-p)となる。このフリッ
プフロップF14の出力とフリップフロップF4を介された
α-iとがML4により乗算され、ML4の出力とフリップフロ
ップF24の出力とが加算器AD4で加算される。The same operation as described above is sequentially performed on the odd-order term and the even-order term, and the data taken into the flip-flop F14 becomes σ ′ o (α −p ), and the data taken into the flip-flop F24 becomes σ′e (α −p ). Becomes The output of the flip-flop F14 is multiplied by α −i passed through the flip-flop F4 by the ML4, and the output of the ML4 and the output of the flip-flop F24 are added by the adder AD4.
従って、加算器AD4の出力には、誤り位置多項式σ
(x)のxとして、α-iが順次代入されたデータが得ら
れる。フリップフロップF25を介された加算器AD4の出力
がNORゲートに供給される。NORゲートは、フリップフロ
ップF25の出力がゼロとなる時に、即ち、誤り位置にお
いてハイレベルとなる出力を発生する。Therefore, the output of the adder AD4 has an error locator polynomial σ
Data obtained by sequentially substituting α -i as x in (x) is obtained. The output of the adder AD4 via the flip-flop F25 is supplied to the NOR gate. The NOR gate generates an output that becomes high when the output of the flip-flop F25 becomes zero, that is, at an error position.
また、フリップフロップF14の出力信号がROMに供給さ
れる。このROMは、σ′o(α-p)の逆元σ′
o(α-p)-1を発生する。フリップフロップF45を介さ
れたROMの出力がNORゲートの出力信号と共に、ANDゲー
トに供給される。このANDゲートの出力が乗算器ML25に
供給される。The output signal of the flip-flop F14 is supplied to the ROM. This ROM is the inverse σ ′ of σ ′ o (α −p )
o (α -p ) -1 . The output of the ROM via the flip-flop F45 is supplied to the AND gate together with the output signal of the NOR gate. The output of the AND gate is supplied to the multiplier ML25.
誤り評価多項式ω(x)に関しても、誤り位置多項式
σ(x)と同様の処理がされ、フリップフロップF54に
ωo(α-p)が取り込まれ、フリップフロップF64にω
e(α-p)が取り込まれる。乗算器ML24及び加算器AD24
により、フリップフロップF55からは、ω(α-p)が発
生する。このフリップフロップF55の出力とANDゲートを
介されたσ′(α-p)-1が乗算器ML25により乗算され
る。With respect to the error evaluation polynomial ω (x), the same processing as that of the error locator polynomial σ (x) is performed, ω o (α −p ) is taken into the flip-flop F54, and ω is put into the flip-flop F64.
e (α -p ) is taken in. Multiplier ML24 and adder AD24
As a result, ω (α− p ) is generated from the flip-flop F55. The output of the flip-flop F55 is multiplied by σ '(α- p ) -1 passed through the AND gate by the multiplier ML25.
乗算器ML25の出力には、〔ep=ω(α-p)/σ′(α
-p)〕で示される誤りパターンが得られ、この誤りパタ
ーンが加算回路AD25に供給され、端子7から供給され、
フリップフロップF65を介された受信データに対して加
算され、誤り訂正が実行される。従って、加算回路AD25
の出力信号は、訂正後のデータとなり、フリップフロッ
プF66を介されて出力端子8に訂正後のデータが取り出
される。The output of the multiplier ML25 includes [e p = ω (α− p ) / σ ′ (α
-p )] is obtained, and this error pattern is supplied to the addition circuit AD25 and supplied from the terminal 7,
The data is added to the data received via the flip-flop F65, and error correction is performed. Therefore, the addition circuit AD25
Is output as corrected data, and the corrected data is taken out to the output terminal 8 via the flip-flop F66.
この発明によれば、誤り位置多項式σ(x)に関し
て、σ(α-m)及びσ′(α-m)を別々に計算する必要
がなくなり、処理時間の短縮を図ることができ、また、
回路規模を小さくすることができる。更に、誤り評価多
項式ω(x)に関しての計算も同様にできるので、上述
の計算を行う時に、σ(x)とω(x)との制御を共通
化することができる。According to the present invention, it is not necessary to separately calculate σ (α −m ) and σ ′ (α −m ) for the error locator polynomial σ (x), so that the processing time can be reduced.
The circuit scale can be reduced. Furthermore, since the calculation for the error evaluation polynomial ω (x) can be performed in the same manner, the control of σ (x) and ω (x) can be shared when the above calculation is performed.
第1図はこの発明の一実施例のブロック図、第2図はこ
の発明の一実施例の動作を示すタイミングチャート、第
3図は受信系列とαの値との対応関係を説明するための
略線図、第4図は誤りパターンの一例を示す略線図、第
5図は誤りパターンの他の例を示す略線図である。 図面における主要な符号の説明 2:誤り位置多項式の奇数次項の値の入力端子、 3:誤り位置多項式の偶数次項の値の入力端子、 4:誤り評価多項式の奇数次項の値の入力端子、 5:誤り評価多項式の偶数次項の値の入力端子、 7:受信系列の入力端子。FIG. 1 is a block diagram of one embodiment of the present invention, FIG. 2 is a timing chart showing the operation of one embodiment of the present invention, and FIG. 3 is a diagram for explaining the correspondence between a reception sequence and the value of α. FIG. 4 is a schematic diagram illustrating an example of an error pattern, and FIG. 5 is a schematic diagram illustrating another example of an error pattern. Explanation of the main symbols in the drawing 2: Input terminal of the value of the odd order of the error locator polynomial, 3: Input terminal of the value of the even order of the error locator polynomial, 4: Input terminal of the value of the odd order of the error evaluation polynomial, 5 : Input terminal for even-order value of error evaluation polynomial. 7: Input terminal for received sequence.
Claims (1)
シンドロームを演算し、上記シンドロームから誤り位置
多項式σ(x)及び誤り評価多項式ω(x)を算出し、
上記誤り位置多項式σ(x)の形式的一次微分の多項式
σ′(x)及び上記誤り評価多項式ω(x)を用い、
〔ep=ω(α-p)/σ′(α-p)〕の演算により、誤り
パターンepを求め、誤り位置pのシンボルを訂正するよ
うにしたリード・ソロモン符号の復号方法において、 上記誤り位置多項式σ(x)の偶数次項σe(x)と奇
数次項σo(x)を分離し、 上記分離された偶数次項σe(x)及び奇数次項σ
o(x)の各々のxとして、所定の値を代入した時の値
〔σo(α-m)〕及び〔σe(α-m)〕を求め、 σ(α-m)=σe(α-m)+α-mσ′o(α-m) σ′(α-m)=σ′o(α-m) の演算により、σ(α-m)及びσ′(α-m)を得ると共
に、 上記誤り評価多項式ω(x)の偶数次項ωe(x)と奇
数次項ωo(x)を分離し、 上記分離された偶数次項ωe(x)及び奇数次項ω
o(x)の各々のxとして、所定の値を代入した時の値
〔ωo(α-m)〕及び〔ωe(α-m)〕を求め、 ω(α-m)=ωe(α-m)+α-mω′o(α-m) の演算により、ω(α-m)を得、 誤り位置において上記σ′(α-m)から生成したσ′
(α-m)-1と上記ω(α-m)から、 em=ω(α-m)・σ′(α-m)-1 の演算により誤りパターンemを求めることを特徴とする
リード・ソロモン符号の復号方法。1. A parity check matrix and a received word,
Calculating a syndrome, calculating an error locator polynomial σ (x) and an error evaluation polynomial ω (x) from the syndrome;
Using the polynomial σ ′ (x) of the formal first derivative of the error locator polynomial σ (x) and the error evaluation polynomial ω (x),
In the decoding method of the Reed-Solomon code in which the error pattern e p is obtained by the operation of [e p = ω (α -p ) / σ '(α -p )] and the symbol at the error position p is corrected, The even order term σ e (x) and the odd order term σ o (x) of the error locator polynomial σ (x) are separated, and the separated even order term σ e (x) and odd order term σ
The values [σ o (α -m )] and [σ e (α -m )] when a predetermined value is substituted for each x of o (x) are obtained, and σ (α -m ) = σ e By calculating (α -m ) + α -m σ ′ o (α -m ) σ ′ (α -m ) = σ ′ o (α -m ), σ (α -m ) and σ '(α -m ) And the even order ω e (x) and the odd order ω o (x) of the error evaluation polynomial ω (x) are separated, and the separated even order ω e (x) and odd order ω
The values [ω o (α -m )] and [ω e (α -m )] obtained by substituting predetermined values for each x of o (x) are obtained, and ω (α -m ) = ω e By calculating (α -m ) + α -m ω ' o (α -m ), ω (α -m ) is obtained, and σ' generated from the above σ '(α -m ) at the error position
From (alpha -m) -1 and the ω (α -m), and obtains the error pattern e m by the calculation of e m = ω (α -m) · σ '(α -m) -1 Decoding method of Reed-Solomon code.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62155190A JP2600681B2 (en) | 1987-06-22 | 1987-06-22 | Decoding method of Reed-Solomon code |
AU18255/88A AU606694B2 (en) | 1987-06-22 | 1988-06-22 | Method and apparatus for decoding reed-solomon code |
CA000570079A CA1314996C (en) | 1987-06-22 | 1988-06-22 | Method and apparatus for decoding reed-solomon code |
EP19880305693 EP0296828A3 (en) | 1987-06-22 | 1988-06-22 | Method and apparatus for decoding reed-solomon code |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62155190A JP2600681B2 (en) | 1987-06-22 | 1987-06-22 | Decoding method of Reed-Solomon code |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS63318819A JPS63318819A (en) | 1988-12-27 |
JP2600681B2 true JP2600681B2 (en) | 1997-04-16 |
Family
ID=15600457
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP62155190A Expired - Fee Related JP2600681B2 (en) | 1987-06-22 | 1987-06-22 | Decoding method of Reed-Solomon code |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2600681B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4371520B2 (en) * | 2000-03-06 | 2009-11-25 | 三菱電機株式会社 | CRC arithmetic unit |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS61216044A (en) * | 1985-03-21 | 1986-09-25 | Canon Inc | Signal processor |
JPS61216041A (en) * | 1985-03-21 | 1986-09-25 | Canon Inc | Signal processor |
JPH0834439B2 (en) * | 1987-06-18 | 1996-03-29 | 松下電器産業株式会社 | Galois field arithmetic unit |
-
1987
- 1987-06-22 JP JP62155190A patent/JP2600681B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPS63318819A (en) | 1988-12-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5715262A (en) | Errors and erasures correcting reed-solomon decoder | |
US5659557A (en) | Reed-Solomon code system employing k-bit serial techniques for encoding and burst error trapping | |
WO2000057561A1 (en) | Pipelined high speed reed-solomon error/erasure decoder | |
JPH0452556B2 (en) | ||
CA1291819C (en) | Decoder | |
EP0836285B1 (en) | Reed-Solomon decoder with general-purpose processing unit and dedicated circuits | |
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 | |
JPH0728227B2 (en) | Decoding device for BCH code | |
US20070061688A1 (en) | Decoding error correction codes using a modular single recursion implementation | |
JP4134029B2 (en) | Soft decision decoding method for Reed-Solomon code | |
EP0296828A2 (en) | Method and apparatus for decoding reed-solomon code | |
EP1102406A2 (en) | Apparatus and method for decoding digital data | |
US20100174970A1 (en) | Efficient implementation of a key-equation solver for bch codes | |
JP2600681B2 (en) | Decoding method of Reed-Solomon code | |
EP1175015B1 (en) | Decoding circuit and decoding method thereof | |
JP2605966B2 (en) | Error correction circuit | |
JP2600683B2 (en) | Decoding method of Reed-Solomon code | |
JPH10322226A (en) | Reed solomon decoding method | |
JP2694794B2 (en) | Error correction processing method | |
JP3139499B2 (en) | Error correction processor | |
KR100335482B1 (en) | Error correcting system | |
JP3398560B2 (en) | Shortened error correction decoding device | |
JP2553571B2 (en) | Galois field arithmetic unit | |
JPS6394720A (en) | Decoding circuit for error correction code | |
JP2003168983A (en) | Decoding circuit and decoding method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |