JP2002176363A - Euclidean calculator, error correcting device and error correcting method - Google Patents

Euclidean calculator, error correcting device and error correcting method

Info

Publication number
JP2002176363A
JP2002176363A JP2000371610A JP2000371610A JP2002176363A JP 2002176363 A JP2002176363 A JP 2002176363A JP 2000371610 A JP2000371610 A JP 2000371610A JP 2000371610 A JP2000371610 A JP 2000371610A JP 2002176363 A JP2002176363 A JP 2002176363A
Authority
JP
Japan
Prior art keywords
polynomial
coefficient
storage means
data
error
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
Application number
JP2000371610A
Other languages
Japanese (ja)
Inventor
Tatsufumi Oyama
達史 大山
Hideki Yamauchi
英樹 山内
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sanyo Electric Co Ltd
Original Assignee
Sanyo Electric Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sanyo Electric Co Ltd filed Critical Sanyo Electric Co Ltd
Priority to JP2000371610A priority Critical patent/JP2002176363A/en
Priority to US09/772,072 priority patent/US6772385B2/en
Priority to KR1020010004290A priority patent/KR100685360B1/en
Priority to CNB2005100095619A priority patent/CN100380507C/en
Priority to CNB011119756A priority patent/CN1199177C/en
Publication of JP2002176363A publication Critical patent/JP2002176363A/en
Priority to US10/845,091 priority patent/US7181483B2/en
Pending legal-status Critical Current

Links

Landscapes

  • Detection And Correction Of Errors (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide an error correcting device realizing high speed error correcting while the increase of a circuit area and power consumption is suppressed. SOLUTION: A Euclidean calculation circuit 200s is provided with first register groups 2010 and 2020 storing first data corresponding to the coefficient of an error evaluation polynomial and second register groups 2030 and 2040 storing second data corresponding to the coefficient of the error position polynomial. A multiplier group 2200 is installed in common to the first and second register groups and performs multiplication on Galois body in a Euclidean algorithm. An exor computing element group 2210 performs an exclusive OR operation on the first and second data.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】この発明は、データ伝送シス
テム等において用いられる誤り訂正装置および誤り訂正
方法に関し、特に、ユークリッドアルゴリズムを用いる
誤り訂正装置および誤り訂正方法に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an error correction device and an error correction method used in a data transmission system or the like, and more particularly, to an error correction device and an error correction method using a Euclidean algorithm.

【0002】[0002]

【従来の技術】デジタル伝送システム、コンピュータの
周辺装置などのようにデジタルデータを伝送する環境に
おいては、デジタルデータ伝送の信頼性の向上を図るた
め、一般に誤り訂正符号が用いられている。特に、最近
では、デジタルデータの受信再生側におけるデータ処理
能力の向上に伴い、高度な訂正能力を有する誤り訂正符
号が用いられるようになってきている。
2. Description of the Related Art In an environment for transmitting digital data such as a digital transmission system and a peripheral device of a computer, an error correction code is generally used in order to improve the reliability of digital data transmission. In particular, recently, with the improvement of the data processing capability on the digital data receiving / reproducing side, an error correction code having a high correction capability has been used.

【0003】図6は、従来のデータ伝送システム、例え
ば、記録再生可能な光磁気ディスク装置における誤り訂
正装置3000の構成を説明するための概略ブロック図
である。
FIG. 6 is a schematic block diagram for explaining a configuration of a conventional data transmission system, for example, an error correction device 3000 in a recordable / reproducible magneto-optical disk device.

【0004】図6を参照して、データ伝送システムで
は、記録されるべきデータに積符号からなる誤り訂正符
号を付加して、記録媒体にデータの格納が行われてい
る。その後、記録媒体に格納されたデータは、必要に応
じて誤り訂正装置3000に受信データとして与えら
れ、誤りの訂正がなされた後に外部に出力される。
Referring to FIG. 6, in a data transmission system, data to be recorded is added with an error correction code composed of a product code, and data is stored in a recording medium. Thereafter, the data stored in the recording medium is provided to the error correction device 3000 as necessary as received data, and is output to the outside after error correction.

【0005】このような構成は、上述した記録再生可能
な光磁気ディスク装置に限らず、再生専用光ディスク装
置においても同様である。
[0005] Such a configuration is not limited to the above-described magneto-optical disk device capable of recording and reproduction, but also applies to a read-only optical disk device.

【0006】以下では、DVD(Digital Versatile Di
sc)を例にとって、誤り訂正処理について説明する。D
VDにおいては、訂正能力の大きいリード・ソロモン符
号(RS符号)による誤り訂正が採用される。
In the following, a DVD (Digital Versatile Di
The error correction process will be described by taking sc) as an example. D
In VD, error correction using a Reed-Solomon code (RS code) having a large correction capability is employed.

【0007】まず、ディスクから誤り訂正装置3000
へ送るために呼び出された受信データは、一旦、半導体
記憶素子、例えばSRAM(Static Random Access Mem
ory)などのメモリ10に格納される。その後、誤り訂
正処理のために、メモリ10からデータが呼び出され、
順次、以下のような処理が行われる。
First, an error correction device 3000 is read from a disk.
The received data called to send the data to a semiconductor memory device, for example, an SRAM (Static Random Access Mem
ory). Thereafter, data is called from the memory 10 for error correction processing,
The following processing is sequentially performed.

【0008】すなわち、リード・ソロモン符号を用いた
誤り訂正を行なうためには、次の5つの手順が一般的で
ある。
That is, the following five procedures are generally used to perform error correction using a Reed-Solomon code.

【0009】(1) 受信データから、シンドローム計
算回路20により、シンドロームを計算する。
(1) The syndrome is calculated by the syndrome calculation circuit 20 from the received data.

【0010】(2) ユークリッド計算回路30によ
り、シンドロームから誤り位置多項式、誤り評価多項式
を求める。
(2) An error locator polynomial and an error evaluation polynomial are obtained from the syndrome by the Euclidean calculation circuit 30.

【0011】(3) チェン(Chien)サーチ回路40
により、誤り位置多項式から誤り位置を求める。
(3) Chien search circuit 40
, An error position is obtained from the error position polynomial.

【0012】(4) チェンサーチ回路40により、誤
り位置多項式、誤り評価多項式および誤り位置から誤り
量を求める。
(4) The Chien search circuit 40 obtains an error amount from the error location polynomial, the error evaluation polynomial, and the error location.

【0013】(5) 誤り訂正回路50により、誤り量
および誤り位置を用いて誤り訂正を行う。
(5) The error correction circuit 50 performs error correction using the error amount and the error position.

【0014】訂正能力の大きいリード・ソロモン符号に
よる誤り訂正では、上述の手順(2)においてシンドロ
ームから誤り位置多項式、誤り評価多項式を求める手法
の1つとして、2つの多項式の最大公約数を求めるユー
クリッド互除法を応用したユークリッドアルゴリズムが
知られている。
In error correction using a Reed-Solomon code having a large correction capability, Euclidean calculation of the greatest common divisor of two polynomials is one of the methods for obtaining an error locator polynomial and an error evaluation polynomial from the syndrome in the above procedure (2). A Euclidean algorithm to which the algorithm is applied is known.

【0015】以下、このユークリッドアルゴリズムにつ
いて、さらに詳しく説明する。上述した受信データの受
信多項式r(x)が以下のように表されるものとする。
Hereinafter, the Euclidean algorithm will be described in more detail. It is assumed that the reception polynomial r (x) of the reception data described above is expressed as follows.

【0016】[0016]

【数1】 (Equation 1)

【0017】ここで、nは符号長である。次に、シンド
ローム計算により求まるシンドローム多項式は、以下の
ように表される。
Here, n is a code length. Next, the syndrome polynomial obtained by the syndrome calculation is expressed as follows.

【0018】[0018]

【数2】 (Equation 2)

【0019】ここで、tは、訂正可能な誤り数であり、
αはGF(2)上の原始多項式の根である。たとえば、
GF(28)の場合、原始多項式の根の集合の元は、
0,1,α1,α2,…,α6で表される。
Here, t is the number of correctable errors,
α is the root of a primitive polynomial on GF (2). For example,
In the case of GF (2 8 ), the element of the set of primitive polynomial roots is
0, 1, α 1 , α 2 ,..., Α 6 .

【0020】ここで、誤り位置多項式σ(x)を以下の
式で定義する。
Here, the error locator polynomial σ (x) is defined by the following equation.

【0021】[0021]

【数3】 (Equation 3)

【0022】ここで、Eは誤りの集合を表し、iは、集
合Eの要素である。また、liは、誤り位置を表す。
Here, E represents a set of errors, and i is an element of the set E. Li represents an error position.

【0023】シンドローム多項式と誤り位置多項式σ
(x)との関係をもとめると、以下のようになる。
Syndrome polynomial and error locator polynomial σ
The relationship with (x) is as follows.

【0024】[0024]

【数4】 (Equation 4)

【0025】ここで上記式(5)において、誤り評価多
項式ω(x)は、以下のように表される多項式である。
Here, in the above equation (5), the error evaluation polynomial ω (x) is a polynomial expressed as follows.

【0026】[0026]

【数5】 (Equation 5)

【0027】ここで、jも、集合Eの要素であり、lj
も、誤り位置を表す。あるいは、式(5)を等価な式に
書き換えると以下のようになる。
Here, j is also an element of the set E, and lj
Also indicates an error position. Alternatively, rewriting equation (5) into an equivalent equation gives the following.

【0028】[0028]

【数6】 (Equation 6)

【0029】ここで、式φ(x)は以下のように表され
る。
Here, the expression φ (x) is expressed as follows.

【0030】[0030]

【数7】 (Equation 7)

【0031】ユークリッド復号アルゴリズムとは、上記
の関係式(7)を基にして、誤り位置多項式σ(x)と
誤り評価多項式ω(x)を求める方法である。
The Euclidean decoding algorithm is a method for obtaining an error locator polynomial σ (x) and an error evaluation polynomial ω (x) based on the above relational expression (7).

【0032】すなわち、誤り個数がt個以下の時は、誤
り位置多項式σ(x)および誤り評価多項式ω(x)
は、上記式(7)から、x2tとS(x)の最大公約多項
式を求めるユークリッド互除法で一意的に求めることが
できる。
That is, when the number of errors is t or less, the error locator polynomial σ (x) and the error evaluation polynomial ω (x)
Can be uniquely obtained from the above equation (7) by the Euclidean algorithm which finds the greatest common divisor of x 2t and S (x).

【0033】以下では、式(7)から誤り位置多項式σ
(x)および誤り評価多項式ω(x)を求める手続きに
ついて簡単にまとめる。
In the following, from the equation (7), the error locator polynomial σ
(X) and the procedure for obtaining the error evaluation polynomial ω (x) will be briefly summarized.

【0034】このような手続きとは、言いかえれば、式
(7)を満たし、かつ互いに素なt次以下の多項式σ
(x)とt−1次以下の多項式ω(x)を求めればよい
ことになる。
In other words, such a procedure is a polynomial σ of order t or less that satisfies the equation (7) and is relatively prime.
(X) and the polynomial ω (x) of degree t-1 or less need only be obtained.

【0035】まず、多項式の漸化式Zi(x)におい
て、以下のようにおくことにする。
First, in the polynomial recurrence equation Z i (x), the following is performed.

【0036】[0036]

【数8】 (Equation 8)

【0037】この式(9)の前提のもとに、以下の式
(10)を満たす多項式Xi(x),Yi(x)、Z
i(x)を順次作っていき、このような操作をYi(x)
がt次以下となり、Zi(x)がt−1次以下となるま
で繰り返す。
Under the premise of Expression (9), polynomials X i (x), Y i (x), Z satisfying the following Expression (10).
i (x) is made sequentially, and such an operation is performed by Y i (x)
Is less than or equal to the t-th order and Z i (x) is less than or equal to the t−1-th order.

【0038】[0038]

【数9】 (Equation 9)

【0039】このようにして生成される多項式Y
i(x)、Zi(x)は、それぞれ定数倍を除いて、誤り
位置多項式σ(x)および誤り評価多項式ω(x)に一
致することが証明され得る。ただし、以下の説明では、
このような一致があるものとして説明を続ける。
The polynomial Y thus generated
It can be proved that i (x) and Z i (x) match the error locator polynomial σ (x) and the error evaluation polynomial ω (x), respectively, except for a constant multiple. However, in the following description,
The description is continued assuming that there is such a match.

【0040】まず、Xi(x),Yi(x)の初期値とし
て以下のようにおく。 X-1(x)=1,X0(x)=0 … (11) Y-1(x)=0,Y0(x)=1 … (12) このとき、i=−1,0に関しては、式(10)が明ら
かに成り立つ。
First, the initial values of X i (x) and Y i (x) are set as follows. X -1 (x) = 1, X 0 (x) = 0 (11) Y -1 (x) = 0, Y 0 (x) = 1 (12) At this time, i = −1,0 Equation (10) clearly holds.

【0041】ただし、Z-1(x)=x2tはt次以上の多
項式であり、また、誤りがt個以下である限りS(x)
の次数はt以上であるために、Z0(x)=S(x)も
t次以上の多項式である。したがって、Z-1(x)およ
びZ0(x)のいずれも誤り評価多項式ω(x)ではあ
り得ない。
Here, Z −1 (x) = x 2t is a polynomial of degree t or higher, and S (x) is equal to or smaller than t.
Is greater than or equal to t, Z 0 (x) = S (x) is also a polynomial of degree t or greater. Therefore, neither Z -1 (x) nor Z 0 (x) can be an error evaluation polynomial ω (x).

【0042】そこで、以下では、式(10)を満たした
ままで、Zi(x)の次数を下げていくことを考える。
Therefore, in the following, it is considered that the order of Z i (x) is reduced while satisfying the expression (10).

【0043】いま仮に、i(≧1)に対して、以下の式
(13)および(14)が成り立っているものとする。
It is now assumed that the following equations (13) and (14) hold for i (≧ 1).

【0044】[0044]

【数10】 (Equation 10)

【0045】ただし、Zi-1(x)はZi-2(x)より次
数が低いものとする。このとき、上記式(13)および
式(14)に基づいて、次数を下げていくためには、Z
i-2(x)をZi-1(x)で割った商をQi(x)とする
とき、式(13)の辺々から式(14)の辺々にQ
i(x)を乗じたものを引けばよい。
It is assumed that Z i-1 (x) has a lower order than Z i-2 (x). At this time, based on the above equations (13) and (14), in order to decrease the order, Z
When the quotient obtained by dividing i-2 (x) by Z i-1 (x) is Q i (x), Q from each of the equations (13) to (14)
What is necessary is just to subtract the product of i (x).

【0046】このことは、式(13)および(14)に
基づいて、Xi(x),Yi(x)、Zi(x)を以下の
ようにおくことに相当する。
This corresponds to setting X i (x), Y i (x), and Z i (x) as follows based on equations (13) and (14).

【0047】[0047]

【数11】 [Equation 11]

【0048】式(13)および式(14)が満たされて
いるのであれば、上記式(15)〜(17)を満たす多
項式Xi(x),Yi(x)、Zi(x)に対して、式
(10)も満たされることになる。
If the equations (13) and (14) are satisfied, the polynomials X i (x), Y i (x), and Z i (x) satisfying the above equations (15) to (17). Equation (10) is also satisfied.

【0049】しかも、Zi(x)は、Zi-2(x)をZ
i-1(x)で割った際の剰余に相当するので、Z
i-1(x)よりも次数は低くなっている。式(15)の
ような処理は、式(9)からすれば、まさに、x2tとS
(x)との最大公約数を求めるユークリッドの互除法の
処理に他ならない。
Further, Z i (x) is obtained by converting Z i-2 (x) to Z
i-1 (x)
The order is lower than i-1 (x). According to equation (9), processing like equation (15) is exactly x 2t and S
This is nothing but Euclid's algorithm for finding the greatest common divisor with (x).

【0050】図7は、このようなユークリッド互除法に
より誤り位置多項式σ(x)と誤り評価多項式ω(x)
を求める処理の流れを説明するためのフローチャートで
ある。
FIG. 7 shows an error locator polynomial σ (x) and an error evaluation polynomial ω (x) by the Euclidean algorithm.
9 is a flowchart for explaining the flow of a process for obtaining the.

【0051】図7においては、例として、(182,1
72,11)RS符号の場合の復号アルゴリズムを示
す。
In FIG. 7, as an example, (182, 1
72, 11) shows a decoding algorithm in the case of RS code.

【0052】したがって、式x2t=x10と、以下の式で
表されるシンドローム多項式S(x)との最大公約数を
求めるためのユークリッドの互除法を行うことになる。
Therefore, the Euclidean algorithm for calculating the greatest common divisor between the equation x 2t = x 10 and the syndrome polynomial S (x) expressed by the following equation is performed.

【0053】 S(x)=S99+S88+S77+S66+S55+S44+S33+S22+S11+S0 …(18) 図7を参照して、ユークリッドの互除法による誤り位置
多項式σ(x)と誤り評価多項式ω(x)の算出処理が
開始されると(ステップS10)、まず、初期値の設定
が行われる。
S (x) = S 9 x 9 + S 8 x 8 + S 7 x 7 + S 6 x 6 + S 5 x 5 + S 4 x 4 + S 3 x 3 + S 2 x 2 + S 1 x 1 + S 0 (18) Referring to FIG. 7, when the process of calculating the error locator polynomial σ (x) and the error evaluation polynomial ω (x) by the Euclidean mutual division method is started (step S10), first, initial values are set.

【0054】まず、x10の係数に対応して、変数R0i
(i=0,1,…,10)が以下のようにして設定され
る。
[0054] First, in response to the coefficient of the x 10, variable R0 i
(I = 0, 1,..., 10) are set as follows.

【0055】 R010=1,R0i=0(i=0,1,…,9) S(x)の係数に対応して、変数R1i(i=0,1,
…,9)が以下のようにして設定される。
R0 10 = 1, R0 i = 0 (i = 0, 1,..., 9) In correspondence with the coefficient of S (x), a variable R1 i (i = 0, 1,
, 9) are set as follows.

【0056】R1i=Si(i=0,1,…,9) さらに、Y-1(x)およびY0(x)の係数にそれぞれ
対応して、変数B0i,B1i(i=0,1,…,5)が
以下のようにして設定される。
R1 i = S i (i = 0, 1,..., 9) Further, corresponding to the coefficients of Y −1 (x) and Y 0 (x), variables B0 i , B1 i (i = 0, 1,..., 5) are set as follows.

【0057】 B0i=0(i=0,1,…,5) B1i=0(i=1,…,5),B10=1 以上で初期設定処理が終了する(ステップS12)。B0 i = 0 (i = 0, 1,..., 5) B1 i = 0 (i = 1,..., 5), B1 0 = 1 When the above is completed, the initial setting process ends (step S12).

【0058】続いて、R0iを係数とする多項式の次数
をN0として求め、この多項式の最高次数係数をQ0と
する。さらに、R1iを係数とする多項式の次数をN1
として求め、この多項式の最高次数係数をQ1とする
(ステップS14)。
Subsequently, the degree of a polynomial having R0 i as a coefficient is determined as N0, and the highest degree coefficient of this polynomial is defined as Q0. Further, the degree of the polynomial having R1 i as a coefficient is N1
And the highest order coefficient of the polynomial is set to Q1 (step S14).

【0059】N1と0との比較が行われ(ステップS1
6)、N1=0であるならば、処理は終了する(ステッ
プS30)。一方、N1が0でなければ、次の処理に進
む。
A comparison is made between N1 and 0 (step S1).
6) If N1 = 0, the process ends (step S30). On the other hand, if N1 is not 0, the process proceeds to the next process.

【0060】DN=N0−N1演算を行い、DN<0で
あるならばフラグ変数FNを1とし、DN≧0ならばフ
ラグ変数FNを0とする(ステップS18)。
The operation of DN = N0-N1 is performed. If DN <0, the flag variable FN is set to 1, and if DN ≧ 0, the flag variable FN is set to 0 (step S18).

【0061】続いて、フラグ変数FNと0との比較が行
われ、FN=0であれば処理は、ステップS22に移行
し、FN=1であれば、処理はステップS28に移行す
る(ステップS20)。
Subsequently, a comparison is made between the flag variables FN and 0. If FN = 0, the process proceeds to step S22, and if FN = 1, the process proceeds to step S28 (step S20). ).

【0062】まず、ステップS20において、FN=0
である場合には、以下の処理が行われる。
First, in step S20, FN = 0
In the case of, the following processing is performed.

【0063】 R1i=Q0*R1(i-DN)(i=0,1,…,9) R0i=Q1*R0i (i=0,1,…,9) R110=0 B1i=Q0*B1(i-DN)(i=0,1,…,5) B0i=Q1*B0i (i=0,1,…,5) ただし、演算*は、ガロア体上の元に対する乗算を表
し、(i−DN)が負の場合は、左辺のR1i,B1i
は、0が代入されるものとする(ステップS22)。
R1 i = Q0 * R1 (i-DN) (i = 0, 1,..., 9) R0 i = Q1 * R0 i (i = 0, 1,..., 9) R1 10 = 0 B1 i = Q0 * B1 (i-DN) (i = 0, 1,..., 5) B0 i = Q1 * B0 i (i = 0, 1,..., 5) where the operation * is a multiplication of an element on a Galois field When (i-DN) is negative, 0 is substituted into R1 i and B1 i on the left side (step S22).

【0064】さらに、係数について、以下の演算が行わ
れる。 R0i=R0i exor R1i (i=0,1,…,
9) B0i=B0i exor B1i (i=0,1,…,
5) ここで、演算exorは、排他的論理和演算を示す(ス
テップS24)。
Further, the following calculation is performed on the coefficient. R0 i = R0 i exor R1 i (i = 0, 1,...,
9) B0 i = B0 i exor B1 i (i = 0, 1,...,
5) Here, the operation exor indicates an exclusive OR operation (step S24).

【0065】続いて、変数R0iにより表される多項式
R0xの次数がt(この例では5)以下であるかの判定
が行われる(ステップS26)。多項式R0xの次数が
t以下であれば、処理は終了し(ステップS30)、多
項式R0xの次数がt以下でなければ、処理はステップ
S28に移行する。
[0065] Then, the order of the polynomial R0x represented by the variable R0 i is t is determined whether (in this example 5) or less is performed (step S26). If the degree of the polynomial R0x is equal to or smaller than t, the process ends (step S30). If the order of the polynomial R0x is not equal to or smaller than t, the process proceeds to step S28.

【0066】したがって、ステップS20において、F
N=0でない場合、または、ステップS26において、
多項式R0xの次数がt以下でない場合は、変数R0i
の値と変数R1iの値をそれぞれ入れ替え、かつ、変数
B0iの値と変数B1iの値をそれぞれ入れ替えるという
処理が行われる。このような入れ替えの後、処理はステ
ップS14に復帰する(ステップS28)。
Therefore, in step S20, F
If N = 0 is not satisfied, or in step S26,
If the degree of the polynomial R0x is not less than t, the variable R0 i
And the value of the variable R1 i are exchanged, and the value of the variable B0 i and the value of the variable B1 i are exchanged. After such replacement, the process returns to step S14 (step S28).

【0067】他のリードソロモン符号、またはより一般
的にはBCH符号(Bose-Chaudhuri-Hpcquenghem cod
e)におけるユークリッドアルゴリズムの計算も同様で
ある。
Other Reed-Solomon codes, or more generally BCH codes (Bose-Chaudhuri-Hpcquenghem cod)
The same applies to the calculation of the Euclidean algorithm in e).

【0068】このような計算には、演算*の計算を行う
ための専用のガロア体の乗算器が必要となる。
For such a calculation, a special Galois field multiplier for calculating the operation * is required.

【0069】[0069]

【発明が解決しようとする課題】しかしながら、この場
合に問題となるのは、高速処理を行うためには乗算器を
多数配備しなければならないことである。すなわち、こ
れらの乗算器の個数が多いと回路規模は増大するもの
の、処理速度は速くすることが可能である。
However, a problem in this case is that a large number of multipliers must be provided in order to perform high-speed processing. That is, when the number of these multipliers is large, the circuit scale increases, but the processing speed can be increased.

【0070】また、乗算の回数の削減も必要である。乗
算の回数が多いと、消費電力が増大するといった欠点が
あるためである。
It is also necessary to reduce the number of multiplications. This is because if the number of times of multiplication is large, there is a disadvantage that power consumption increases.

【0071】たとえば、従来、上述したユークリッド法
を実行するための回路構成としては、乗算器を1個設
け、図7に示されるアルゴリズムを処理する場合の回路
規模および処理量を見積もると以下のとおりである。
For example, conventionally, as a circuit configuration for executing the above-described Euclidean method, one multiplier is provided, and the circuit scale and processing amount when processing the algorithm shown in FIG. 7 are estimated as follows. It is.

【0072】 乗算器の個数 :1 乗算処理に必要なステップ数:2×2t×2t 乗算回数 :2×2t×2t この場合、ステップの数がtの2乗に比例するため、t
が大きくなると、高速化を図ることができないという問
題があった。
Number of multipliers: 1 Number of steps required for multiplication processing: 2 × 2t × 2t Number of multiplications: 2 × 2t × 2t In this case, since the number of steps is proportional to the square of t, t
However, there is a problem that it is not possible to increase the speed when the size becomes larger.

【0073】そこで、このようなユークリッド法の計算
を高速処理するための回路構成が、例えば、特開平1−
276825号公報に開示されている。
A circuit configuration for performing such a high-speed calculation of the Euclidean method is disclosed in, for example,
It is disclosed in 276825.

【0074】特開平1−276825号公報において
は、レジスタ1個につき乗算器を1個設けることによ
り、ユークリッド法の計算の高速化が図られるように工
夫されている。
In Japanese Patent Application Laid-Open No. 1-276825, a device is devised so that the calculation of the Euclidean method is sped up by providing one multiplier for each register.

【0075】例えば、誤り訂正可能な数がtの場合、必
要な最小のレジスタ個数は、(2t+1)個である。し
たがって、特開平1−276825号公報に開示された
回路構成において、回路規模および処理量を見積もると
以下のとおりである。
For example, when the number of error-correctable bits is t, the required minimum number of registers is (2t + 1). Therefore, in the circuit configuration disclosed in Japanese Patent Application Laid-Open No. 1-276825, the circuit scale and processing amount are estimated as follows.

【0076】 乗算器の個数 :2×(2t+1) 乗算処理に必要なステップ数:2t 乗算回数 :2×2t×2t この場合、高速化は図れるものの、乗算器の個数が多
く、回路規模が縮小できないといった問題があった。
Number of multipliers: 2 × (2t + 1) Number of steps required for multiplication processing: 2t Number of multiplications: 2 × 2t × 2t In this case, although the speed can be increased, the number of multipliers is large and the circuit scale is reduced. There was a problem that it could not be done.

【0077】さらに、このようなユークリッド法の計算
を高速処理するための別の回路構成が、例えば、特開平
10−65552号公報に開示されている。
Further, another circuit configuration for performing such high-speed calculation of the Euclidean method is disclosed in, for example, Japanese Patent Application Laid-Open No. H10-65552.

【0078】特開平10−65552号公報において
は、例えば、乗算器を4個設けることにより、ユークリ
ッド法の計算の高速化が図られるように工夫されてい
る。
In Japanese Patent Application Laid-Open No. H10-65552, for example, by providing four multipliers, the calculation of the Euclidean method is speeded up.

【0079】例えば、誤り訂正可能な数がtの場合、特
開平10−65552号公報に開示された回路構成にお
いて、回路規模および処理量を見積もると以下のとおり
である。
For example, when the number of errors that can be corrected is t, the circuit scale and the processing amount in the circuit configuration disclosed in Japanese Patent Laid-Open No. 10-65552 are estimated as follows.

【0080】 乗算器の個数 :4 乗算処理に必要なステップ数:2t×2t 乗算回数 :2×2t×2t この場合も、ステップの数がtの2乗に比例するため、
tが大きくなると、高速化を図ることができないという
問題があった。
Number of multipliers: 4 Number of steps required for multiplication processing: 2t × 2t Number of multiplications: 2 × 2t × 2t Also in this case, since the number of steps is proportional to the square of t,
When t becomes large, there is a problem that the speed cannot be increased.

【0081】さらに、以上説明した従来の回路構成で
は、いずれも乗算回数は、2×2t×2t回であり、消
費電力を抑制することが困難である。
Furthermore, in the conventional circuit configurations described above, the number of multiplications is 2 × 2t × 2t, and it is difficult to suppress power consumption.

【0082】本発明は、このような問題点を解決するた
めになされたもので、その目的は、乗算器の個数の増加
により回路規模を増大させることなく、ユークリッド処
理に要する時間を短縮することが可能な誤り訂正装置お
よび誤り訂正方法を提供することである。
The present invention has been made to solve such a problem, and an object thereof is to reduce the time required for Euclidean processing without increasing the circuit scale by increasing the number of multipliers. It is an object of the present invention to provide an error correction device and an error correction method capable of performing the above.

【0083】この発明の他の目的は、ユークリッド処理
において乗算回数を抑制することにより、回路の消費電
力を低減することが可能な誤り訂正装置および誤り訂正
方法を提供することである。
Another object of the present invention is to provide an error correction device and an error correction method capable of reducing the power consumption of a circuit by suppressing the number of multiplications in Euclidean processing.

【0084】[0084]

【課題を解決するための手段】請求項1記載のユークリ
ッド計算器は、受信データの誤り位置を示す誤り位置多
項式と誤りの量を示す誤り評価多項式をユークリッドア
ルゴリズムに基づく演算により求めるためのユークリッ
ド計算器であって、誤り評価多項式の係数を逐次的に導
出する演算において、誤り評価多項式の係数に対応する
第1のデータを格納し、かつ第1のデータのシフト動作
が可能な第1の記憶手段と、誤り位置多項式の係数を逐
次的に導出する演算において、誤り位置多項式の係数に
対応する第2のデータを格納し、第2のデータのシフト
動作が可能な第2の記憶手段と、受信データに対応する
シンドローム多項式に基づいて、第1および第2の記憶
手段中に格納されるデータの初期設定を行い、ユークリ
ッドアルゴリズムの処理を制御するための制御手段と、
第1の記憶手段と第2の記憶手段とに共通に設けられ、
ユークリッドアルゴリズムにおいてガロア体上の乗算を
行うための乗算手段と、制御手段により制御され、乗算
手段と第1および第2の記憶手段との間のデータ転送を
制御するための選択手段と、第1および第2の記憶手段
中に格納されるデータに対し、ユークリッドアルゴリズ
ムにおいて、論理演算を行うための論理演算手段とを備
える。
According to a first aspect of the present invention, there is provided a Euclidean calculator for calculating an error locator polynomial indicating an error position of received data and an error evaluation polynomial indicating an error amount by an operation based on a Euclidean algorithm. A first storage for storing first data corresponding to a coefficient of the error evaluation polynomial and performing a shift operation of the first data in an operation for sequentially deriving a coefficient of the error evaluation polynomial. Means for storing second data corresponding to the coefficients of the error locator polynomial in an operation for sequentially deriving the coefficients of the error locator polynomial, and second storage means capable of performing a shift operation of the second data; Initializing data stored in the first and second storage means based on the syndrome polynomial corresponding to the received data, and using the Euclidean algorithm And control means for controlling the process,
The first storage unit and the second storage unit are provided in common,
Multiplication means for performing multiplication on Galois field in the Euclidean algorithm; selection means controlled by the control means for controlling data transfer between the multiplication means and the first and second storage means; And a logical operation means for performing a logical operation on data stored in the second storage means in the Euclidean algorithm.

【0085】請求項2記載のユークリッド計算器は、請
求項1記載のユークリッド計算器の構成に加えて、第1
の記憶手段は、第1の係数データを保持するための第1
の評価多項式記憶手段と、第2の係数データを保持し、
かつ第2の係数データのシフト動作を行うことが可能な
第2の評価多項式記憶手段とを含み、第2の記憶手段
は、第3の係数データを保持するための第1の位置多項
式記憶手段と、第4の係数データを保持し、かつ第4の
係数データのシフト動作を行うことが可能な第2の位置
多項式記憶手段とを含み、制御手段は、シンドローム多
項式に基づいて、第1、第2、第3および第4の係数の
初期設定を行い、乗算手段は、i)第1の係数データに
対応する第1の多項式の最高次係数と第2の係数データ
に対応する第2の多項式の最高次係数の逆数との乗算結
果である係数商を、第2の評価多項式記憶手段において
第1の多項式と第2の多項式の次数の差だけシフト動作
された第2の係数データの各々に乗算して、第2の評価
多項式記憶手段に第2の係数データとして再び格納し、
さらに、ii)第2の位置多項式記憶手段において次数
の差だけシフト動作された第4の係数の各々に係数商を
乗算し、論理演算手段は、第1の係数データと第2の係
数データとに対し、それぞれ排他的論理和演算を行った
結果を第1の評価多項式記憶手段に第1の係数データと
して格納し、かつ第3の係数と第4の係数とに対し、そ
れぞれ排他的論理和演算を行った結果を第1の位置多項
式記憶手段に第3の係数として格納し、ユークリッド計
算器は、第1の係数データに対応する第1の多項式が所
定の次数以下でない場合、もしくは、第2の多項式の次
数が第1の多項式の次数よりも大きい場合に、第1の評
価多項式記憶手段に格納された第1の係数データと第2
の評価多項式記憶手段に格納された第2の係数データと
を交換し、かつ第1の位置多項式記憶手段に格納された
第3の係数と第2の位置多項式記憶手段に格納された第
4の係数とを交換するための交換手段をさらに備え、制
御手段は、第1の多項式が所定の次数以下である場合、
第1の多項式を誤り評価多項式と判定し、第3の多項式
を誤り位置多項式と判定する。
The Euclidean calculator according to the second aspect of the present invention has the following features in addition to the configuration of the Euclidean calculator according to the first aspect.
Means for storing the first coefficient data
Holding the evaluation polynomial storage means and the second coefficient data,
And second evaluation polynomial storage means capable of performing a shift operation of the second coefficient data, wherein the second storage means is a first position polynomial storage means for holding third coefficient data. And second position polynomial storage means capable of holding the fourth coefficient data and performing a shift operation of the fourth coefficient data, wherein the control means determines the first, second, and third positions based on the syndrome polynomial. Initialization of the second, third and fourth coefficients is performed, and the multiplying means includes: i) a second highest order coefficient of the first polynomial corresponding to the first coefficient data and a second order coefficient corresponding to the second coefficient data; The coefficient quotient, which is the result of the multiplication of the highest order coefficient of the polynomial by the reciprocal, is stored in the second evaluation polynomial storage means for each of the second coefficient data shifted by the difference between the degree of the first polynomial and the second polynomial. To the second evaluation polynomial storage means. And again stored as the coefficient data,
And ii) multiplying each of the fourth coefficients shifted by the order difference in the second position polynomial storage means by a coefficient quotient, and the logical operation means stores the first coefficient data, the second coefficient data and , The result of performing the exclusive OR operation is stored as first coefficient data in the first evaluation polynomial storage means, and the exclusive OR operation is performed on the third coefficient and the fourth coefficient, respectively. The result of the operation is stored as a third coefficient in the first position polynomial storage means, and the Euclidean calculator calculates whether the first polynomial corresponding to the first coefficient data is not smaller than a predetermined order, or When the degree of the second polynomial is larger than the degree of the first polynomial, the first coefficient data stored in the first evaluation polynomial storage means and the second coefficient
Exchanges the second coefficient data stored in the evaluation polynomial storage means with the third coefficient stored in the first position polynomial storage means and the fourth coefficient data stored in the second position polynomial storage means. Further comprising an exchange means for exchanging the coefficient with the coefficient, wherein the control means comprises:
The first polynomial is determined as an error evaluation polynomial, and the third polynomial is determined as an error location polynomial.

【0086】請求項3記載のユークリッド計算器は、請
求項2記載のユークリッド計算器の構成に加えて、選択
手段は、制御手段に制御されて、第2の評価多項式記憶
手段の出力と第2の位置多項式記憶手段の出力とのいず
れかを選択的に乗算手段に与えるための第1のセレクタ
手段と、制御手段に制御されて、乗算手段の出力を、第
2の評価多項式記憶手段に第2の係数データとして、ま
たは第2の位置多項式記憶手段に第4の係数として選択
的に与えるための第2のセレクタ手段とを含む。
According to a third aspect of the present invention, in addition to the configuration of the Euclidean calculator according to the second aspect, the selection means is controlled by the control means so that the output of the second evaluation polynomial storage means and the second The first selector means for selectively giving either of the output of the position polynomial storage means to the multiplication means and the output of the multiplication means controlled by the control means to the second evaluation polynomial storage means. And second selector means for selectively providing the second coefficient data as the fourth coefficient to the second position polynomial storage means.

【0087】請求項4記載のユークリッド計算器は、請
求項3記載のユークリッド計算器の構成に加えて、受信
データは、BCH符号により符号化されており、制御手
段は、BCH符号により訂正可能な誤り数をt(t:自
然数)とするとき、第1の多項式をx2tとし、かつ、第
2の多項式をシンドローム多項式S(x)として、第1
および第2の係数データの初期設定を行い、所定の次数
は、tである。
According to a fourth aspect of the present invention, in addition to the configuration of the Euclidean calculator according to the third aspect, the received data is encoded by a BCH code, and the control means can correct the received data by the BCH code. When the number of errors is t (t: natural number), the first polynomial is x 2t , and the second polynomial is a syndrome polynomial S (x).
And the initial setting of the second coefficient data, and the predetermined order is t.

【0088】請求項5記載のユークリッド計算器は、受
信データの誤りの量を示す誤り評価多項式をユークリッ
ドアルゴリズムにより求めるためのユークリッド計算器
であって、誤り評価多項式の係数を導出する演算を逐次
的に実行するために、演算経過における第1の係数デー
タを保持するための第1の評価多項式記憶手段と、誤り
評価多項式の係数を導出する演算経過における第2の係
数データを保持し、かつ第2の係数データのシフト動作
を行うことが可能な第2の評価多項式記憶手段と、受信
データに対応するシンドローム多項式に基づいて、第1
および第2の係数データの初期設定を行い、ユークリッ
ドアルゴリズムの処理を制御するための制御手段と、第
1の係数データに対応する第1の多項式の最高次係数と
第2の係数データに対応する第2の多項式の最高次係数
の逆数との乗算結果を格納する記憶手段と、第2の評価
多項式記憶手段において第1の多項式と第2の多項式の
次数の差だけシフト動作された第2の係数データの各々
に、記憶手段からの出力を乗算して、乗算結果を第2の
評価多項式記憶手段に第2の係数データとして再び格納
するための乗算手段と、乗算手段から第2の評価多項式
記憶手段に再格納された第2の係数データと第1の評価
多項式記憶手段に格納された第1の係数データとに対
し、それぞれ排他的論理和演算を行った結果を第1の評
価多項式記憶手段に第1の係数データとして格納するた
めの論理演算手段と、第1の係数データに対応する第1
の多項式が所定の次数以下でない場合、もしくは、第1
の多項式の次数が第2の多項式の次数よりも大きい場合
に、第1の評価多項式記憶手段と第2の評価多項式記憶
手段との間で、格納されたデータを交換するための交換
手段とを備え、制御手段は、第1の多項式が所定の次数
以下である場合、第1の多項式を誤り評価多項式と判定
する。
According to a fifth aspect of the present invention, there is provided a Euclidean calculator for obtaining an error evaluation polynomial indicating the amount of error in received data by a Euclidean algorithm, wherein an operation for deriving a coefficient of the error evaluation polynomial is sequentially performed. A first evaluation polynomial storage means for holding first coefficient data in the course of the operation, and a second coefficient data in the operation course for deriving the coefficient of the error evaluation polynomial, and 2 based on a second evaluation polynomial storage means capable of performing a shift operation of coefficient data of 2 and a syndrome polynomial corresponding to the received data.
And control means for performing initial setting of the second coefficient data and controlling the processing of the Euclidean algorithm, and corresponding to the highest order coefficient of the first polynomial corresponding to the first coefficient data and the second coefficient data. Storage means for storing a result of multiplication of the second polynomial by the reciprocal of the highest order coefficient, and a second evaluation polynomial storage means for shifting the second polynomial by an order difference between the first polynomial and the second polynomial. Multiplying means for multiplying each of the coefficient data by the output from the storage means and storing the multiplication result again as second coefficient data in the second evaluation polynomial storage means; The result of performing an exclusive OR operation on the second coefficient data re-stored in the storage means and the first coefficient data stored in the first evaluation polynomial storage means is stored in a first evaluation polynomial storage. By means And logical operation means for storing a first coefficient data, first corresponding to the first coefficient data
If the polynomial of is not less than or equal to the predetermined degree, or
When the degree of the polynomial is larger than the degree of the second polynomial, the exchange means for exchanging the stored data between the first evaluation polynomial storage means and the second evaluation polynomial storage means The control unit determines that the first polynomial is an error evaluation polynomial when the first polynomial is equal to or smaller than a predetermined order.

【0089】請求項6記載のユークリッド計算器は、請
求項5記載のユークリッド計算器の構成に加えて、受信
データは、BCH符号により符号化されており、制御手
段は、BCH符号により訂正可能な誤り数をt(t:自
然数)とするとき、第1の多項式をx2tとし、かつ、第
2の多項式をシンドローム多項式S(x)として、第1
および第2の係数データの初期設定を行い、所定の次数
は、tである。
In the Euclidean calculator according to claim 6, in addition to the configuration of the Euclidean calculator according to claim 5, the received data is encoded by a BCH code, and the control means can correct the data by the BCH code. When the number of errors is t (t: natural number), the first polynomial is x 2t , and the second polynomial is a syndrome polynomial S (x).
And the initial setting of the second coefficient data, and the predetermined order is t.

【0090】請求項7記載の誤り訂正装置は、受信デー
タの誤り位置を示す誤り位置多項式と誤りの量を示す誤
り評価多項式をユークリッドアルゴリズムに基づく演算
により求めるためのユークリッド計算手段と、導出され
た誤り位置多項式と誤り評価多項式とに基づいて、受信
データの誤り訂正を行うための訂正手段とを備え、ユー
クリッド計算手段は、誤り評価多項式の係数を逐次的に
導出する演算において、誤り評価多項式の係数に対応す
る第1のデータを格納し、かつ第1のデータのシフト動
作が可能な第1の記憶手段と、誤り位置多項式の係数を
逐次的に導出する演算において、誤り位置多項式の係数
に対応する第2のデータを格納し、第2のデータのシフ
ト動作が可能な第2の記憶手段と、受信データに対応す
るシンドローム多項式に基づいて、第1および第2の記
憶手段中に格納されるデータの初期設定を行い、ユーク
リッドアルゴリズムの処理を制御するための制御手段
と、第1の記憶手段と第2の記憶手段とに共通に設けら
れ、ユークリッドアルゴリズムにおいてガロア体上の乗
算を行うための乗算手段と、制御手段により制御され、
乗算手段と第1および第2の記憶手段との間のデータ転
送を制御するための選択手段と、第1および第2の記憶
手段中に格納されるデータに対し、ユークリッドアルゴ
リズムにおいて、論理演算を行うための論理演算手段と
を含む。
The error correction device according to the present invention is derived from a Euclidean calculating means for obtaining an error locator polynomial indicating an error position of received data and an error evaluation polynomial indicating an error amount by an operation based on a Euclidean algorithm. Correction means for correcting errors in the received data based on the error locator polynomial and the error evaluation polynomial, and the Euclidean calculator calculates the error evaluation polynomial in an operation for sequentially deriving the coefficients of the error evaluation polynomial. A first storage unit for storing first data corresponding to the coefficient and capable of shifting the first data; and an operation for sequentially deriving a coefficient of the error locator polynomial, A second storage unit for storing the corresponding second data and capable of performing a shift operation of the second data; A control unit for initializing data stored in the first and second storage units based on the equation and controlling processing of the Euclidean algorithm; and a first storage unit and a second storage unit. Is provided in common, controlled by a multiplying means for performing multiplication on the Galois field in the Euclidean algorithm, and a control means,
Selecting means for controlling data transfer between the multiplying means and the first and second storage means; and performing a logical operation on data stored in the first and second storage means in the Euclidean algorithm. Logic operation means for performing the operation.

【0091】請求項8記載の誤り訂正装置は、請求項7
記載の誤り訂正装置の構成に加えて、第1の記憶手段
は、第1の係数データを保持するための第1の評価多項
式記憶手段と、第2の係数データを保持し、かつ第2の
係数データのシフト動作を行うことが可能な第2の評価
多項式記憶手段とを含み、第2の記憶手段は、第3の係
数データを保持するための第1の位置多項式記憶手段
と、第4の係数データを保持し、かつ第4の係数データ
のシフト動作を行うことが可能な第2の位置多項式記憶
手段とを含み、制御手段は、シンドローム多項式に基づ
いて、第1、第2、第3および第4の係数の初期設定を
行い、乗算手段は、i)第1の係数データに対応する第
1の多項式の最高次係数と第2の係数データに対応する
第2の多項式の最高次係数の逆数との乗算結果である係
数商を、第2の評価多項式記憶手段において第1の多項
式と第2の多項式の次数の差だけシフト動作された第2
の係数データの各々に乗算して、第2の評価多項式記憶
手段に第2の係数データとして再び格納し、さらに、i
i)第2の位置多項式記憶手段において次数の差だけシ
フト動作された第4の係数の各々に係数商を乗算し、論
理演算手段は、第1の係数データと第2の係数データと
に対し、それぞれ排他的論理和演算を行った結果を第1
の評価多項式記憶手段に第1の係数データとして格納
し、かつ第3の係数と第4の係数とに対し、それぞれ排
他的論理和演算を行った結果を第1の位置多項式記憶手
段に第3の係数として格納し、ユークリッド計算手段
は、第1の係数データに対応する第1の多項式が所定の
次数以下でない場合、もしくは、第2の多項式の次数が
第1の多項式の次数よりも大きい場合に、第1の評価多
項式記憶手段に格納された第1の係数データと第2の評
価多項式記憶手段に格納された第2の係数データとを交
換し、かつ第1の位置多項式記憶手段に格納された第3
の係数と第2の位置多項式記憶手段に格納された第4の
係数とを交換するための交換手段をさらに含み、制御手
段は、第1の多項式が所定の次数以下である場合、第1
の多項式を誤り評価多項式と判定し、第3の多項式を誤
り位置多項式と判定する。
The error correction device according to the eighth aspect is the seventh aspect of the invention.
In addition to the configuration of the error correction device described above, the first storage unit stores first evaluation polynomial storage unit for storing first coefficient data, second evaluation unit, and second evaluation data. A second evaluation polynomial storage means capable of performing a coefficient data shift operation, wherein the second storage means includes a first position polynomial storage means for holding third coefficient data; And a second position polynomial storage means capable of holding the coefficient data of the first coefficient data and performing a shift operation of the fourth coefficient data, wherein the control means controls the first, second, and second positions based on the syndrome polynomial. Initializing the third and fourth coefficients, the multiplying means includes: i) the highest order coefficient of the first polynomial corresponding to the first coefficient data and the highest order coefficient of the second polynomial corresponding to the second coefficient data; The coefficient quotient, which is the result of multiplication of the coefficient by the reciprocal, is calculated by the second evaluation The are only shift operation order of the difference between the first polynomial and second polynomial in equation storage means 2
Is multiplied by each of the coefficient data, and stored again as the second coefficient data in the second evaluation polynomial storage means.
i) multiplying each of the fourth coefficients shifted by the order difference in the second position polynomial storage means by a coefficient quotient, and the logical operation means calculates the first coefficient data and the second coefficient data by , The result of performing the exclusive OR operation is the first
The first coefficient data is stored in the evaluation polynomial storage means, and the result obtained by performing an exclusive OR operation on the third coefficient and the fourth coefficient is stored in the first position polynomial storage means. And the Euclidean calculation means determines whether the first polynomial corresponding to the first coefficient data is not smaller than a predetermined degree, or if the degree of the second polynomial is larger than the degree of the first polynomial. Exchanges the first coefficient data stored in the first evaluation polynomial storage means with the second coefficient data stored in the second evaluation polynomial storage means, and stores the first coefficient data in the first position polynomial storage means 3rd done
And a fourth coefficient stored in the second position polynomial storage means. The control means may further comprise: a first polynomial, when the first polynomial is equal to or less than a predetermined degree,
Is determined as an error evaluation polynomial, and the third polynomial is determined as an error location polynomial.

【0092】請求項9記載の誤り訂正装置は、請求項8
記載の誤り訂正装置の構成に加えて、選択手段は、制御
手段に制御されて、第2の評価多項式記憶手段の出力と
第2の位置多項式記憶手段の出力とのいずれかを選択的
に乗算手段に与えるための第1のセレクタ手段と、制御
手段に制御されて、乗算手段の出力を、第2の評価多項
式記憶手段に第2の係数データとして、または第2の位
置多項式記憶手段に第4の係数として選択的に与えるた
めの第2のセレクタ手段とを含む。
The error correction device according to the ninth aspect provides the error correction device according to the eighth aspect.
In addition to the configuration of the error correction device described above, the selection unit is controlled by the control unit to selectively multiply any of the output of the second evaluation polynomial storage unit and the output of the second position polynomial storage unit. Controlled by the first selector means and the control means, the output of the multiplying means is stored in the second evaluation polynomial storage means as second coefficient data or in the second position polynomial storage means. And second selector means for selectively giving a coefficient of 4.

【0093】請求項10記載の誤り訂正装置は、請求項
9記載の誤り訂正装置の構成に加えて、受信データは、
BCH符号により符号化されており、制御手段は、BC
H符号により訂正可能な誤り数をt(t:自然数)とす
るとき、第1の多項式をx2tとし、かつ、第2の多項式
をシンドローム多項式S(x)として、第1および第2
の係数データの初期設定を行い、所定の次数は、tであ
る。
The error correction device according to the tenth aspect provides the error correction device according to the ninth aspect, wherein the received data is
The control means is coded by the BCH code.
When the number of errors that can be corrected by the H code is t (t: natural number), the first and second polynomials are defined as x 2t and the second polynomial is defined as a syndrome polynomial S (x).
Is initialized, and the predetermined order is t.

【0094】請求項11記載の誤り訂正装置は、受信デ
ータの誤り位置を示す誤り位置多項式と誤りの量を示す
誤り評価多項式をユークリッドアルゴリズムにより求め
るためのユークリッド計算手段と、導出された誤り位置
多項式と誤り評価多項式とに基づいて、受信データの誤
り訂正を行うための訂正手段とを備え、ユークリッド計
算手段は、誤り評価多項式の係数を導出する演算を逐次
的に実行するために、演算経過における第1の係数デー
タを保持するための第1の評価多項式記憶手段と、誤り
評価多項式の係数を導出する演算経過における第2の係
数データを保持し、かつ第2の係数データのシフト動作
を行うことが可能な第2の評価多項式記憶手段と、受信
データに対応するシンドローム多項式に基づいて、第1
および第2の係数データの初期設定を行い、ユークリッ
ドアルゴリズムの処理を制御するための制御手段と、第
1の係数データに対応する第1の多項式の最高次係数と
第2の係数データに対応する第2の多項式の最高次係数
の逆数との乗算結果を格納する記憶手段と、第2の評価
多項式記憶手段において第1の多項式と第2の多項式の
次数の差だけシフト動作された第2の係数データの各々
に、記憶手段からの出力を乗算して、乗算結果を第2の
評価多項式記憶手段に第2の係数データとして再び格納
するための乗算手段と、乗算手段から第2の評価多項式
記憶手段に再格納された第2の係数データと第1の評価
多項式記憶手段に格納された第1の係数データとに対
し、それぞれ排他的論理和演算を行った結果を第1の評
価多項式記憶手段に第1の係数データとして格納するた
めの論理演算手段と、第1の係数データに対応する第1
の多項式が所定の次数以下でない場合、もしくは、第1
の多項式の次数が第2の多項式の次数よりも大きい場合
に、第1の評価多項式記憶手段と第2の評価多項式記憶
手段との間で、格納されたデータを交換するための交換
手段とを含み、制御手段は、第1の多項式が所定の次数
以下である場合、第1の多項式を誤り評価多項式と判定
する。
The error correction device according to the eleventh aspect includes a Euclidean calculating means for obtaining an error locator polynomial indicating an error position of the received data and an error evaluation polynomial indicating an error amount by a Euclidean algorithm, and a derived error locator polynomial. Correction means for performing error correction on the received data based on the error evaluation polynomial and the Euclidean calculation means, in order to sequentially execute the operation for deriving the coefficients of the error evaluation polynomial, First evaluation polynomial storage means for holding first coefficient data, and second coefficient data in an operation process for deriving coefficients of an error evaluation polynomial, and a shift operation of the second coefficient data Based on a second evaluation polynomial storage means capable of performing the processing, and a syndrome polynomial corresponding to the received data.
And control means for performing initial setting of the second coefficient data and controlling the processing of the Euclidean algorithm, and corresponding to the highest order coefficient of the first polynomial corresponding to the first coefficient data and the second coefficient data. Storage means for storing a result of multiplication of the second polynomial by the reciprocal of the highest order coefficient, and a second evaluation polynomial storage means for shifting the second polynomial by an order difference between the first polynomial and the second polynomial. Multiplying means for multiplying each of the coefficient data by the output from the storage means and storing the multiplication result again as second coefficient data in the second evaluation polynomial storage means; The result of performing an exclusive OR operation on the second coefficient data re-stored in the storage means and the first coefficient data stored in the first evaluation polynomial storage means is stored in a first evaluation polynomial storage. By means And logical operation means for storing a first coefficient data, first corresponding to the first coefficient data
If the polynomial of is not less than or equal to the predetermined degree, or
When the degree of the polynomial is larger than the degree of the second polynomial, the exchange means for exchanging the stored data between the first evaluation polynomial storage means and the second evaluation polynomial storage means The control means determines that the first polynomial is an error evaluation polynomial when the first polynomial is equal to or smaller than a predetermined order.

【0095】請求項12記載の誤り訂正装置は、請求項
11記載の誤り訂正装置の構成に加えて、受信データ
は、BCH符号により符号化されており、制御手段は、
BCH符号により訂正可能な誤り数をt(t:自然数)
とするとき、第1の多項式をx 2tとし、かつ、第2の多
項式をシンドローム多項式S(x)として、第1および
第2の係数データの初期設定を行い、所定の次数は、t
である。
The error correction device according to the twelfth aspect has the following features.
11. In addition to the configuration of the error correction device described in
Is encoded by a BCH code, and the control means includes:
The number of errors that can be corrected by the BCH code is t (t: natural number)
Let the first polynomial be x 2tAnd the second multiple
The first and the second terms are defined as a syndrome polynomial S (x).
Initialization of the second coefficient data is performed, and the predetermined order is t
It is.

【0096】請求項13記載の誤り訂正方法は、受信デ
ータに対応するシンドローム多項式に基づいて、誤りの
存在する位置を示す誤り位置多項式と誤りの量を示す誤
り評価多項式をユークリッド法により求めるステップを
備え、誤り位置多項式と誤り評価多項式を求めるステッ
プは、第1の係数データR0i(0≦i≦2t)をR0
2t=1,R0i=0(0≦i≦2t−1)とし、第2の
係数データR1i(0≦i≦2t−1)をR1i=S
i(0≦i≦2t−1)とし、第3の係数B0iをB0i
=0(0≦i≦t)とし、第4の係数B1iをB1i=0
(0≦i≦t),B10=1として記憶手段に格納する
第0ステップと、第1の係数データR0iに対応する第
1の多項式の次数N0および最高次数係数Q0を求め、
第2の係数データR1iに対応する第2の多項式の次数
N1および最高次数係数をQ1を求め、Q=Q0*(1
/Q1)を記憶手段に格納する第1ステップと、第1お
よび第2の多項式の次数の差DN=N0−N1を求める
第2ステップと、次数の差DNが0未満である場合、第
1の係数データR0iの値と第2の係数データR1iの値
をそれぞれ入れ替え、かつ、第3の係数B0iの値と第
4の係数B1iの値をそれぞれ入れ替えて、第1ステッ
プに処理を移行する第3ステップと、第2の係数データ
に対して、(i−DN)が0以上の場合は、R1i=Q
*R1(i-DN)(0≦i≦2t−1)とし、(i−DN)
が負の場合は、第2の係数データR1iを0として記憶
手段に格納する第4ステップと、第4の係数に対して、
(i−DN)が負でない場合は、B1i=Q*B1
(i-DN)(0≦i≦t)とし、(i−DN)が負の場合
は、第4の係数B1iを0として記憶手段に格納する第
5ステップと、第1の係数データと第2の係数データと
に対して、R0i=R0i exor R1i(0≦i≦
2t−1)、R12t=0との演算を行い、第3の係数と
第4の係数とに対して、B0i=B0i exor B1
i (0≦i≦t)との演算を行う第6ステップと、第
1の係数データR0iにより表される第1の多項式の次
数がt以下でない場合、第1の係数データR0iの値と
第2の係数データR1iの値をそれぞれ入れ替え、か
つ、第1の係数B0iの値と第4の係数B1iの値をそれ
ぞれ入れ替える処理を行い、第1ステップに処理を移行
する第7ステップとを含み、第1の多項式の次数がt以
下である場合、誤り評価多項式を第1の多項式とし、誤
り位置多項式を第3の係数B0iにより表される第3の
多項式として、誤り位置および誤り量を算出し、受信デ
ータの誤り訂正を行うステップをさらに備える。
According to a thirteenth aspect of the present invention, in the error correction method, a step of obtaining an error position polynomial indicating a position where an error exists and an error evaluation polynomial indicating an error amount based on a syndrome polynomial corresponding to the received data by the Euclidean method. The step of obtaining the error locator polynomial and the error evaluation polynomial comprises: converting the first coefficient data R0 i (0 ≦ i ≦ 2t) to R0
2t = 1, R0 i = 0 (0 ≦ i ≦ 2t−1), and the second coefficient data R1 i (0 ≦ i ≦ 2t−1) is R1 i = S
i (0 ≦ i ≦ 2t−1), and the third coefficient B0 i is B0 i
= 0 (0 ≦ i ≦ t), and the fourth coefficient B1 i is B1 i = 0.
(0 ≦ i ≦ t), the 0th step stored in the storage unit as B1 0 = 1, and the order N0 and the highest order coefficient Q0 of the first polynomial corresponding to the first coefficient data R0 i are obtained.
The order N1 and the highest order coefficient of the second polynomial corresponding to the second coefficient data R1 i are obtained as Q1, and Q = Q0 * (1
/ Q1) in a storage means, a second step of calculating a difference DN = N0−N1 between the degrees of the first and second polynomials, and a first step when the difference DN is less than zero. Of the coefficient data R0 i and the value of the second coefficient data R1 i , and the value of the third coefficient B0 i and the value of the fourth coefficient B1 i are exchanged, and the process proceeds to the first step. And (i-DN) is equal to or greater than 0 in the third step of shifting to R1 i = Q
* R1 (i-DN) (0 ≦ i ≦ 2t-1) and (i-DN)
Is negative, a fourth step of storing the second coefficient data R1 i as 0 in the storage means, and for the fourth coefficient,
If (i-DN) is not negative, B1 i = Q * B1
(i-DN) (0 ≦ i ≦ t). When (i−DN) is negative, a fifth step of storing the fourth coefficient B1 i as 0 in the storage means, For the second coefficient data, R0 i = R0 i exor R1 i (0 ≦ i ≦
2t-1), R1 2t = 0, and B0 i = B0 i exor B1 for the third coefficient and the fourth coefficient.
a sixth step of calculating the i (0 ≦ i ≦ t) , the first case the degree of the polynomial is not equal to or less than t, the value of the first coefficient data R0 i represented by the first coefficient data R0 i And the second coefficient data R1 i are replaced with each other, and the value of the first coefficient B0 i and the value of the fourth coefficient B1 i are replaced with each other, and the process proceeds to the first step. and a step, when the order of the first polynomial is less than t, the error evaluator polynomial and the first polynomial, a third polynomial represented the error position polynomial by a third coefficient B0 i, the error position And calculating the amount of error and correcting the error of the received data.

【0097】[0097]

【発明の実施の形態】以下、本発明を具体化した実施の
形態を図面に基づいて説明する。
Embodiments of the present invention will be described below with reference to the drawings.

【0098】[ディスク再生装置1000の構成]図1
は、この発明に係る誤り訂正装置200を備えたディス
ク再生装置1000の構成を示す概略ブロック図であ
る。
[Configuration of Disc Reproducing Apparatus 1000] FIG.
FIG. 1 is a schematic block diagram showing a configuration of a disk reproducing device 1000 provided with an error correction device 200 according to the present invention.

【0099】図1を参照して、ドライブ駆動回路149
により駆動されるドライブ141でディスクから読取ら
れたデータは、制御回路144中の信号読取回路142
で復調される。サーボ回路143は、信号読取回路14
2に読み取られる信号に基づいて、ドライブ駆動回路1
49を制御する。
Referring to FIG. 1, drive drive circuit 149
The data read from the disk by the drive 141 driven by the
Is demodulated. The servo circuit 143 includes the signal reading circuit 14
Drive drive circuit 1 based on the signal read by
49 is controlled.

【0100】ディスクからのデータは、信号読取回路1
42で復調された後、復号回路147中のデータバッフ
ァ14に転送される。転送されたデータは、誤り訂正回
路200で誤りが訂正された後、誤り検査回路146で
誤りがないことを確認した後、デスクランブル処理が施
され、インターフェース148を介して情報データがホ
ストPCへ転送される。
The data from the disk is read by the signal reading circuit 1
After being demodulated at 42, it is transferred to the data buffer 14 in the decoding circuit 147. The transferred data is subjected to a descrambling process after the error is corrected by the error correction circuit 200 and then confirmed by the error check circuit 146 that there is no error, and the information data is transferred to the host PC via the interface 148. Will be transferred.

【0101】なお、以下の説明では、DVDを例にとっ
て、これに記録されたデータに対応する積符号の誤り訂
正および並行検査装置ならびに方法について説明する
が、本発明はこのような場合に限定されることなく、ユ
ークリッド法が用いられるBCH符号等における誤り訂
正処理に適用することが可能なものである。
In the following description, an apparatus and method for error correction and parallel checking of a product code corresponding to data recorded on a DVD will be described by taking a DVD as an example, but the present invention is limited to such a case. Instead, the present invention can be applied to error correction processing in a BCH code or the like using the Euclidean method.

【0102】また、以下の説明でも、説明の簡単のため
に例として、(182,172,11)RS符号の場合
の復号アルゴリズムに対応する回路構成およびアルゴリ
ズムについて説明する。ただし、本発明は、(182,
172,11)RS符号に限定されることなく、より一
般的に適用可能なものである。
In the following description, a circuit configuration and an algorithm corresponding to a decoding algorithm in the case of the (182, 172, 11) RS code will be described as an example for simplicity. However, the present invention relates to (182,
172, 11) It is more generally applicable without being limited to the RS code.

【0103】図2は、図1に示した誤り訂正回路200
の構成を説明するための概略ブロック図である。
FIG. 2 shows the error correction circuit 200 shown in FIG.
FIG. 2 is a schematic block diagram for explaining the configuration of FIG.

【0104】誤り訂正回路200の構成は、ユークリッ
ド計算回路30が、ユークリッド計算回路2000とな
っている点を除いては、図6に示した従来の誤り訂正回
路3000の構成と同様である。したがって、同一部分
には同一符号を付してその説明は繰り返さない。
The configuration of error correction circuit 200 is the same as that of conventional error correction circuit 3000 shown in FIG. 6, except that Euclidean calculation circuit 30 is replaced by Euclidean calculation circuit 2000. Therefore, the same portions are denoted by the same reference characters and description thereof will not be repeated.

【0105】図3は、図2に示したユークリッド計算回
路2000の構成を説明するための概略ブロック図であ
る。
FIG. 3 is a schematic block diagram for describing a configuration of Euclidean calculation circuit 2000 shown in FIG.

【0106】図3を参照して、ユークリッド計算回路2
000は、式(15)における商多項式Qi(x)およ
び剰余多項式Zi(x)を求めるために、多項式Z
i-2(x)または多項式Zi-1(x)に対応する係数の演
算の途中経過をそれぞれ保持するための第1の評価多項
式レジスタ群2010および第2の評価多項式レジスタ
群2020と、式(17)における剰余多項式Y
i(x)を求めるために、多項式Yi-2(x)または多項
式Yi-1(x)に対応する係数の演算の途中経過をそれ
ぞれ保持するための第1の位置多項式レジスタ群203
0および第2の位置多項式レジスタ群2040と、第1
の評価多項式レジスタ群2010に格納される係数R0
i(i=0,1,…,9)に対応する多項式の最高次数
係数をQ0を格納するためのレジスタ2050と、第2
の評価多項式レジスタ群2020に格納される係数R1
iに対応する多項式の最高次数係数をQ1とを格納する
ためのレジスタ2060と、レジスタ2060内のデー
タを受けて逆数に変換するための逆数変換器2070
と、レジスタ2050およびレジスタ2060内のデー
タに基づいて計算される値Q=Q0*(1/Q1)を保
持するためのレジスタ2080とを備える。
Referring to FIG. 3, Euclidean calculation circuit 2
000 is used to find the quotient polynomial Q i (x) and the remainder polynomial Z i (x) in equation (15).
a first evaluation polynomial register group 2010 and a second evaluation polynomial register group 2020 for holding the progress of the calculation of the coefficient corresponding to i-2 (x) or the polynomial Z i-1 (x), respectively; The remainder polynomial Y in (17)
A first position polynomial register group 203 for holding the progress of the calculation of the coefficient corresponding to the polynomial Y i-2 (x) or the polynomial Y i-1 (x) in order to obtain i (x)
0 and a second set of position polynomial registers 2040;
Coefficient R0 stored in the evaluation polynomial register group 2010
a register 2050 for storing the highest order coefficient of the polynomial corresponding to i (i = 0, 1,..., 9) in Q0;
Coefficient R1 stored in the evaluation polynomial register group 2020
A register 2060 for storing the highest order coefficient of the polynomial corresponding to i as Q1, and a reciprocal converter 2070 for receiving the data in the register 2060 and converting it into a reciprocal.
And a register 2080 for holding a value Q = Q0 * (1 / Q1) calculated based on data in the register 2050 and the register 2060.

【0107】ユークリッド計算回路2000は、さら
に、ユークリッド法の計算処理を制御するためのコント
ローラ2100と、第1および第2の評価多項式レジス
タ群2010および2020の出力、第1および第2の
位置多項式レジスタ群2030および2040の出力、
レジスタ2050および2080ならびに逆数変換器2
070からの出力を受けて、コントローラ2100の制
御に応じて選択される転送先にデータを転送するための
第1のセレクタ回路2110と、第1のセレクタ回路2
110からの出力を受けてガロア体上の乗算を行うため
の乗算器群2200と、第1のセレクタ回路2110か
らの出力を受けて排他的論理和演算を行うためのexo
r演算器群2210と、第1のセレクタ回路2110か
らの出力を受けてデータの交換を行うための交換器22
30と、乗算器群2200の出力とexor演算器群2
210の出力と交換器2230の出力とを受けて、コン
トローラ2100の制御に応じて選択される転送先にデ
ータを転送するための第2のセレクタ回路2300とを
備える。
The Euclidean calculation circuit 2000 further includes a controller 2100 for controlling the calculation processing of the Euclidean method, the outputs of the first and second evaluation polynomial registers 2010 and 2020, the first and second position polynomial registers. The outputs of groups 2030 and 2040;
Registers 2050 and 2080 and reciprocal converter 2
A first selector circuit 2110 for receiving the output from the first selector circuit 070 and transferring data to a destination selected under the control of the controller 2100;
Multiplier group 2200 for receiving the output from 110 and performing multiplication on the Galois field, and exo for receiving the output from first selector circuit 2110 and performing an exclusive OR operation
r operation unit group 2210 and an exchange 22 for exchanging data by receiving an output from the first selector circuit 2110
30, the output of the multiplier group 2200 and the exor operator group 2
A second selector circuit 2300 for receiving the output of the switch 210 and the output of the exchanger 2230 and transferring data to a transfer destination selected under the control of the controller 2100 is provided.

【0108】後に説明するように、第2の評価多項式レ
ジスタ群2020に格納されるデータと第2の位置多項
式レジスタ群2040に格納されるデータとは、第1の
セレクタ回路2110を介して選択的に、乗算器群22
00に与えられる。さらに、第1の評価多項式レジスタ
群2010に格納されるデータと第2の評価多項式レジ
スタ群2020に格納されるデータとの組、あるいは、
第1の位置多項式レジスタ群2030に格納されるデー
タと第2の位置多項式レジスタ群2040に格納される
データの組のいずれかが、第1のセレクタ回路2110
を介して選択的に、exor演算器群2210に与えら
れる。
As will be described later, the data stored in the second evaluation polynomial register group 2020 and the data stored in the second position polynomial register group 2040 are selectively transmitted via the first selector circuit 2110. And the multiplier group 22
00 given. Further, a set of data stored in the first evaluation polynomial register group 2010 and data stored in the second evaluation polynomial register group 2020, or
One of a set of data stored in the first position polynomial register group 2030 and data stored in the second position polynomial register group 2040 is the first selector circuit 2110
Is selectively supplied to the exor operator group 2210 via

【0109】なお、第1および第2の評価多項式レジス
タ群2010および2020と第1および第2の位置多
項式レジスタ群2030および2040とには、シンド
ローム計算回路20からの出力に基づいて、コントロー
ラ2100により初期設定がなされる。また、レジスタ
2050、2060、2080の記憶内容も、コントロ
ーラ2100により制御されて順次更新される。
The first and second evaluation polynomial register groups 2010 and 2020 and the first and second position polynomial register groups 2030 and 2040 are connected to the controller 2100 based on the output from the syndrome calculation circuit 20. Initial settings are made. Also, the storage contents of the registers 2050, 2060, 2080 are controlled by the controller 2100 and sequentially updated.

【0110】図4は、図3に示したユークリッド計算回
路2000おいて点線が囲んだ領域PPに含まれる、第
2の評価多項式レジスタ群2020と第2の位置多項式
レジスタ群2040と、レジスタ2050,2060,
2080と、逆数変換回路2070と、第1のセレクタ
回路2110の一部と、乗算器群2200と、第2のセ
レクタ回路2300の一部を抜き出して示すブロック図
である。
FIG. 4 shows a second evaluation polynomial register group 2020, a second position polynomial register group 2040, a register 2050, and a second evaluation polynomial register group 2020 included in a region PP surrounded by a dotted line in the Euclidean calculation circuit 2000 shown in FIG. 2060,
FIG. 20 is a block diagram extracting and illustrating a part of the second selector circuit 2300, a part of the first selector circuit 2110, a part of the second selector circuit 2300, a part of the first selector circuit 2110, a reciprocal conversion circuit 2070, and the like.

【0111】第2の評価多項式レジスタ群2020は、
係数R1i(i=0,…,9)にそれぞれ対応するレジ
スタ2020.0〜2020.9を備え、第2の位置多
項式レジスタ群2040は、係数B1i(i=0,…,
5)にそれぞれ対応するレジスタ2040.0〜204
0.5を備える。なお、図4には示されていないが、第
1の評価多項式レジスタ群2010は、係数R0i(i
=0,…,9)にそれぞれ対応するレジスタ2010.
0〜2010.9を備え、第1の位置多項式レジスタ群
2030は、係数B0i(i=0,…,5)にそれぞれ
対応するレジスタ2030.0〜2030.5を備えて
いる。
The second evaluation polynomial register group 2020 includes:
Registers 2020.0 to 2020.9 corresponding to the coefficients R1 i (i = 0,..., 9), respectively, and the second position polynomial register group 2040 stores the coefficients B1 i (i = 0,.
Registers 2040.0 to 204 respectively corresponding to 5)
0.5. Although not shown in FIG. 4, the first evaluation polynomial register group 2010 stores the coefficient R0 i (i
= 0,..., 9).
The first position polynomial register group 2030 includes registers 2030.0 to 2030.5 corresponding to coefficients B0 i (i = 0,..., 5), respectively.

【0112】また、第2の評価多項式レジスタ群202
0および第2の位置多項式レジスタ群2040は、コン
トローラ2100により制御されて格納されたデータの
シフト動作を行うことが可能である。
The second evaluation polynomial register group 202
The zero and second position polynomial register group 2040 can perform a shift operation of data stored under the control of the controller 2100.

【0113】第1のセレクタ回路2110は、セレクタ
2110.0〜2110.7を備える。また、乗算器群
2200は、乗算器2200.0〜2200.9を備え
る。さらに、第2のセレクタ回路2300は、セレクタ
2300.0〜2300.6を備える。
The first selector circuit 2110 includes selectors 2110.0 to 2110.7. Further, multiplier group 2200 includes multipliers 2200.0 to 2200.9. Further, the second selector circuit 2300 includes selectors 2300.0 to 2300.6.

【0114】セレクタ2110.i(i=0,…,5)
は、レジスタ2020.iとレジスタ2040.iの出
力を受けて、いずれか一方を乗算器2200.iの一方
入力に与える。乗算器2200.i(i=0,…,5)
は、レジスタ2080の出力を他方入力に受け、乗算結
果をセレクタ2300.i(i=0,…,5)に与え
る。
Selector 2110. i (i = 0, ..., 5)
Are the registers 2020. i and registers 2040. i and one of the multipliers 2200. i is applied to one input. Multiplier 2200. i (i = 0, ..., 5)
Receives the output of register 2080 at the other input, and outputs the multiplication result to selector 2300. i (i = 0,..., 5).

【0115】乗算器2200.6〜2200.8は、レ
ジスタ2020.6〜2020.8の出力を一方入力に
受ける。乗算器2200.6〜2200.8は、レジス
タ2080の出力を他方入力に受け、乗算結果をレジス
タ2020.6〜2020.8にそれぞれ与える。
Multipliers 2200.6 to 2200.8 receive the outputs of registers 2020.6 to 2020.8 at one input. Multipliers 2200.6 to 2200.8 receive the output of register 2080 at the other input, and provide the multiplication results to registers 2020.6 to 2020.8, respectively.

【0116】セレクタ2110.6は、レジスタ202
0.9の出力と逆数変換器2070の出力を受けていず
れか一方を乗算器2200.9の一方入力に与える。セ
レクタ2110.7は、レジスタ2050とレジスタ2
080の出力を受けて、いずれか一方を乗算器220
0.9の他方入力に与える。乗算器2200.9は、乗
算結果をセレクタ2300.6に与える。セレクタ23
00.6は、乗算器2200.9の出力をレジスタ20
80または2020.9のいずれか一方に与える。
The selector 2110.6 is connected to the register 202
Receiving the output of 0.9 and the output of reciprocal converter 2070, one of them is given to one input of multiplier 2200.9. The selector 2110.7 has a register 2050 and a register 2
080, one of them is output to the multiplier 220
0.9 to the other input. Multiplier 2200.9 provides the multiplication result to selector 2300.6. Selector 23
00.6 indicates that the output of the multiplier 2200.9 is
80 or 2020.9.

【0117】図5は、図3および図4に示したユークリ
ッド計算回路2000の処理の流れを示すフローチャー
トである。
FIG. 5 is a flowchart showing the flow of the processing of Euclidean calculation circuit 2000 shown in FIGS.

【0118】図5を参照して、ユークリッドの互除法に
よる誤り位置多項式σ(x)と誤り評価多項式ω(x)
の算出処理が開始されると(ステップS100)、ま
ず、初期値の設定が行われる。
Referring to FIG. 5, error locator polynomial σ (x) and error evaluation polynomial ω (x) by the Euclidean algorithm
Is started (step S100), first, initial values are set.

【0119】まず、式x2t=x10の係数に対応して、第
1の評価多項式レジスタ群2010に以下のようなR0
i(i=0,1,…,10)が格納される。
First, corresponding to the coefficient of the equation x 2t = x 10 , the first evaluation polynomial register group 2010 stores the following R0
i (i = 0, 1,..., 10) are stored.

【0120】 R010=1,R0i=0(i=0,1,…,9) S(x)の係数に対応して、第2の評価多項式レジスタ
群2020に以下のようなR1i(i=0,1,…,
9)が格納される。
R0 10 = 1, R0 i = 0 (i = 0, 1,..., 9) In correspondence with the coefficient of S (x), the second evaluation polynomial register group 2020 stores the following R1 i ( i = 0,1, ...,
9) is stored.

【0121】R1i=Si(i=0,1,…,9) さらに、Y-1(x)およびY0(x)の係数にそれぞれ
対応して、第1の位置多項式レジスタ群2030および
第2の位置多項式レジスタ群2040に以下のようなB
i,B1i(i=0,1,…,5)が格納される。
R1 i = S i (i = 0, 1,..., 9) Further, corresponding to the coefficients of Y −1 (x) and Y 0 (x), the first position polynomial register group 2030 and The second position polynomial register group 2040 has the following B
0 i , B1 i (i = 0, 1,..., 5) are stored.

【0122】 B0i=0(i=0,1,…,5) B1i=0(i=1,…,5),B10=1 以上で初期設定処理が終了する(ステップS102)。B0 i = 0 (i = 0, 1,..., 5) B1 i = 0 (i = 1,..., 5), B1 0 = 1 When the above is completed, the initial setting process ends (step S102).

【0123】続いて、コントローラ2100は、R0i
を係数とする多項式の次数N0と、この多項式の最高次
数係数Q0を求め、値Q0をレジスタ2050に格納す
る。さらに、コントローラ2100は、R1iを係数と
する多項式の次数をN1と、この多項式の最高次数係数
をQ1を求め、値Q1をレジスタ2060に格納する。
さらに、レジスタ2060中のデータが逆数変換器20
70により逆数に変換され、セレクタ2110.6を介
して乗算器2200.9に与えられるとともに、レジス
タ2050の出力がセレクタ2110.7を介して乗算
器2200.9に与えられる。乗算器2200.9の乗
算結果のQ(=Q0*(1/Q1))がセレクタ230
0.6を介してレジスタ2080に格納される(ステッ
プS104)。
Subsequently, the controller 2100 outputs R0 i
, And the highest order coefficient Q0 of this polynomial, and the value Q0 is stored in the register 2050. Further, the controller 2100 obtains the degree of the polynomial using R1 i as a coefficient, N1, and the highest degree coefficient of the polynomial, Q1, and stores the value Q1 in the register 2060.
Further, the data in the register 2060 is
The result is converted into an inverse by 70 and supplied to the multiplier 2200.9 via the selector 2110.6, and the output of the register 2050 is supplied to the multiplier 2200.9 via the selector 2110.7. Q (= Q0 * (1 / Q1)) of the multiplication result of multiplier 2200.9 is
It is stored in the register 2080 via 0.6 (step S104).

【0124】コントローラ2100によりN1と0との
比較が行われ(ステップS106)、N1=0であるな
らば、処理は終了する(ステップS130)。一方、N
1が0でなければ、次の処理ステップS108に進む。
The controller 2100 compares N1 with 0 (step S106). If N1 = 0, the process ends (step S130). On the other hand, N
If 1 is not 0, the process proceeds to the next processing step S108.

【0125】コントローラ2100は、DN=N0−N
1という演算を行い、DN<0であるならばフラグ変数
FNを1とし、DN≧0ならばフラグ変数FNを0とす
る(ステップS108)。
The controller 2100 determines that DN = N0-N
An operation of 1 is performed, and if DN <0, the flag variable FN is set to 1, and if DN ≧ 0, the flag variable FN is set to 0 (step S108).

【0126】続いて、コントローラ2100によりフラ
グ変数FNと0との比較が行われ、FN=0であれば処
理は、ステップS112に移行し、FN=1であれば、
処理はステップS120に移行する(ステップS11
0)。
Subsequently, the controller 2100 compares the flag variable FN with 0. If FN = 0, the process proceeds to step S112. If FN = 1, the process proceeds to step S112.
The process proceeds to step S120 (step S11
0).

【0127】まず、ステップS110において、FN=
0である場合には、第2の評価多項式レジスタ群202
0に格納されているデータに対して値DNだけのシフト
動作が行われ、かつ乗算器群2200により第2の評価
多項式レジスタ群2020に格納されているデータに対
してレジスタ2080内のデータが乗算されて、再び第
2の評価多項式レジスタ群2020に格納されること
で、以下の処理が行われる。
First, in step S110, FN =
If it is 0, the second evaluation polynomial register group 202
The data stored in the register 2080 is multiplied by the data stored in the second evaluation polynomial register group 2020 by the multiplier group 2200 by the shift operation of the value DN. Then, the result is stored in the second evaluation polynomial register group 2020 again, whereby the following processing is performed.

【0128】R1i=Q*R1(i-DN)(i=0,1,
…,9) このとき、(i−DN)が負の場合は、左辺のR1i
は、0が代入されることに相当する処理が行われるもの
とする(ステップS112)。
R1 i = Q * R1 (i-DN) (i = 0, 1,
, 9) At this time, when (i-DN) is negative, a process equivalent to substituting 0 into R1 i on the left side is performed (step S112).

【0129】次に、第2の位置多項式レジスタ群204
0に格納されるデータに対して値DNだけのシフト動作
が行われ、乗算器群2200により第2の位置多項式レ
ジスタ群2040に格納されるデータに対してレジスタ
2080内のデータが乗算されて、再び、第2の位置多
項式レジスタ群2040に格納されることで、以下の処
理が行われる。
Next, the second position polynomial register group 204
The data stored in 0 is subjected to a shift operation by the value DN, and the data stored in the register 2080 is multiplied by the data stored in the second position polynomial register group 2040 by the multiplier group 2200, Again, by being stored in the second position polynomial register group 2040, the following processing is performed.

【0130】B1i=Q*B1(i-DN)(i=0,1,
…,5) ただし、(i−DN)が負の場合は、左辺のB1i
は、0が代入されることに相当する処理が行われるもの
とする(ステップS114)。
B1 i = Q * B1 (i-DN) (i = 0, 1,
, 5) However, when (i-DN) is negative, processing equivalent to substituting 0 into B1 i on the left side is performed (step S114).

【0131】さらに、第1の評価多項式レジスタ群20
10と第2の評価多項式レジスタ群2020に格納され
るデータおよび第1の位置多項式レジスタ群2030と
第2の位置多項式レジスタ群2040に格納されるデー
タに対して、exor演算器群2210により以下の演
算が行われる(ステップS116)。
Further, the first evaluation polynomial register group 20
10 and the data stored in the second position polynomial register group 2030 and the data stored in the first position polynomial register group 2030 and the data stored in the second position polynomial register group 2020 are calculated by the exor operator group 2210 as follows. An operation is performed (step S116).

【0132】 R0i=R0i exor R1i(i=0,1,…,
9) R110=0 B0i=B0i exor B1i (i=0,1,…,
5) 続いて、変数R0iにより表される多項式R0xの次数
がt(この例では5)以下であるかの判定が行われる
(ステップS118)。多項式R0xの次数がt以下で
あれば、処理は終了し(ステップS130)、多項式R
0xの次数がt以下でなければ、処理はステップS12
0に移行する。
R0 i = R0 i exor R1 i (i = 0, 1,...,
9) R1 10 = 0 B0 i = B0 i exor B1 i (i = 0, 1,...,
5) Then, the degree of the polynomial R0x represented by the variable R0 i is t (determination of whether in this example 5) or less is performed (step S118). If the degree of the polynomial R0x is equal to or less than t, the process ends (step S130), and the polynomial R
If the degree of 0x is not less than t, the process proceeds to step S12
Move to 0.

【0133】したがって、ステップS110において、
FN=0でない場合、または、ステップS118におい
て、多項式R0xの次数がt以下でない場合は、交換器
2230により、変数R0iの値と変数R1iの値をそれ
ぞれ入れ替え、かつ、変数B0iの値と変数B1iの値を
それぞれ入れ替えるという処理が行われる。このような
入れ替えの後、処理はステップS104に復帰する(ス
テップS120)。
Therefore, in step S110,
If FN is not 0, or if the degree of the polynomial R0x is not equal to or less than t in step S118, the exchanger 2230 replaces the value of the variable R0 i with the value of the variable R1 i and sets the value of the variable B0 i And the value of the variable B1 i are exchanged. After such replacement, the process returns to step S104 (step S120).

【0134】以上のような処理は、他のリードソロモン
符号またはより一般的なBCH符号におけるユークリッ
ド法の計算にも同様に適用可能である。
The above processing can be similarly applied to the calculation of the Euclidean method in another Reed-Solomon code or a more general BCH code.

【0135】以上のような処理により、多項式R0xが
誤り評価多項式ω(x)に対応する。また、変数B0i
により表される多項式B0xが、誤り位置多項式σ
(x)に対応する。
By the above processing, the polynomial R0x corresponds to the error evaluation polynomial ω (x). Also, the variable B0 i
Is represented by an error locator polynomial σ
(X).

【0136】上述したように、例えば、誤り訂正可能な
数がtの場合、本発明に係るユークリッド法を実行する
ための回路規模および処理量を見積もると以下のとおり
である。
As described above, for example, when the number of errors that can be corrected is t, the circuit scale and processing amount for executing the Euclidean method according to the present invention are estimated as follows.

【0137】 乗算器の個数 :2t 乗算処理に必要なステップ数:4t 乗算回数 :2t×(2t+1) したがって、従来の方法や回路構成に比べて、乗算器の
個数や乗算処理に必要なステップ数がtに比例するのみ
である。このため、回路規模が小さくかつ高速動作する
誤り訂正装置を実現することが可能である。
Number of multipliers: 2t Number of steps required for multiplication processing: 4t Number of multiplications: 2t × (2t + 1) Therefore, compared to the conventional method and circuit configuration, the number of multipliers and the number of steps required for multiplication processing Is only proportional to t. Therefore, it is possible to realize an error correction device having a small circuit size and operating at high speed.

【0138】しかも、乗算回数も削減されるているの
で、消費電力を削減することも可能である。
Further, since the number of times of multiplication is also reduced, it is possible to reduce power consumption.

【0139】今回開示された実施の形態はすべての点で
例示であって制限的なものではないと考えられるべきで
ある。本発明の範囲は上記した説明ではなくて特許請求
の範囲によって示され、特許請求の範囲と均等の意味お
よび範囲内でのすべての変更が含まれることが意図され
る。
The embodiments disclosed this time are to be considered in all respects as illustrative and not restrictive. The scope of the present invention is defined by the terms of the claims, rather than the description above, and is intended to include any modifications within the scope and meaning equivalent to the terms of the claims.

【0140】[0140]

【発明の効果】本発明にあっては、以上説明したとお
り、本発明に係る誤り訂正装置では、誤り位置多項式と
誤り量多項式とを求めるためのユークリッドアルゴリズ
ムの演算を回路面積および消費電力の増加を抑制しつつ
実現し、高速な誤り訂正処理を行なうことができる誤り
訂正装置を提供することができる。さらに、本発明に係
る誤り訂正方法では、ユークリッドアルゴリズムの演算
を回路面積および消費電力の増加を抑制しつつ実現し、
高速な誤り訂正処理を行なうことが可能となる。
According to the present invention, as described above, in the error correction apparatus according to the present invention, the operation of the Euclidean algorithm for obtaining the error locator polynomial and the error amount polynomial increases the circuit area and power consumption. It is possible to provide an error correction device that can be realized while suppressing the error and that can perform a high-speed error correction process. Further, in the error correction method according to the present invention, the operation of the Euclidean algorithm is realized while suppressing an increase in circuit area and power consumption,
High-speed error correction processing can be performed.

【図面の簡単な説明】[Brief description of the drawings]

【図1】 本発明の実施の形態1の誤り訂正回路を用い
た光ディスク再生システムの構成を示す概略ブロック図
である。
FIG. 1 is a schematic block diagram illustrating a configuration of an optical disk reproduction system using an error correction circuit according to a first embodiment of the present invention.

【図2】 誤り訂正回路200の構成を説明するための
概略ブロック図である。
FIG. 2 is a schematic block diagram for explaining a configuration of an error correction circuit 200.

【図3】 ユークリッド計算回路2000の構成を説明
するための概略ブロック図である。
FIG. 3 is a schematic block diagram illustrating a configuration of a Euclidean calculation circuit 2000.

【図4】 ユークリッド計算回路2000おいて点線が
囲んだ領域PPを抜き出して示すブロック図である。
FIG. 4 is a block diagram showing an extracted area PP surrounded by a dotted line in the Euclidean calculation circuit 2000;

【図5】 ユークリッド計算回路2000の処理の流れ
を示すフローチャートである。
FIG. 5 is a flowchart showing a flow of processing of a Euclidean calculation circuit 2000;

【図6】 従来の誤り訂正装置3000の構成を説明す
るための概略ブロック図である。
FIG. 6 is a schematic block diagram for explaining a configuration of a conventional error correction device 3000.

【図7】 従来のユークリッドアルゴリズムの処理の流
れを説明するためのフローチャートである。
FIG. 7 is a flowchart for explaining a processing flow of a conventional Euclidean algorithm.

【符号の説明】 14 データバッファ、141 ドライブ、142 信
号読取回路、143サーボ回路、144 制御回路、1
46 誤り検査回路、147 復号回路、148 イン
ターフェース、149 ドライブ駆動回路、200 誤
り訂正回路、2000 ユークリッド計算回路、201
0 第1の評価多項式レジスタ群、2020 第2の評
価多項式レジスタ群、2030 第1の位置多項式レジ
スタ群、2040 第2の位置多項式レジスタ群、20
50,2060,2080 レジスタ、2070 逆数
変換器、2100 コントローラ、2110 第1のセ
レクタ回路、2200 乗算器群、2210 exor
演算器群2210、2230 交換器、2300 第2
のセレクタ回路,3000 誤り訂正装置。
[Description of Signs] 14 data buffer, 141 drive, 142 signal reading circuit, 143 servo circuit, 144 control circuit, 1
46 error checking circuit, 147 decoding circuit, 148 interface, 149 drive driving circuit, 200 error correcting circuit, 2000 Euclidean calculating circuit, 201
0 first evaluation polynomial register group, 2020 second evaluation polynomial register group, 2030 first position polynomial register group, 2040 second position polynomial register group, 20
50, 2060, 2080 registers, 2070 reciprocal converter, 2100 controller, 2110 first selector circuit, 2200 multiplier group, 2210 exor
Operator group 2210, 2230 Exchanger, 2300 second
Selector circuit, 3000 error correction device.

───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 5B001 AA11 AB02 AC01 AD04 AD06 5J065 AC02 AC03 AD11 AG01 AG02 AG04 AH03 AH04 AH09 5K014 AA01 BA07 EA02  ────────────────────────────────────────────────── ─── Continued on front page F term (reference) 5B001 AA11 AB02 AC01 AD04 AD06 5J065 AC02 AC03 AD11 AG01 AG02 AG04 AH03 AH04 AH09 5K014 AA01 BA07 EA02

Claims (13)

【特許請求の範囲】[Claims] 【請求項1】 受信データの誤り位置を示す誤り位置多
項式と誤りの量を示す誤り評価多項式をユークリッドア
ルゴリズムに基づく演算により求めるためのユークリッ
ド計算器であって、 前記誤り評価多項式の係数を逐次的に導出する演算にお
いて、前記誤り評価多項式の係数に対応する第1のデー
タを格納し、かつ前記第1のデータのシフト動作が可能
な第1の記憶手段と、 前記誤り位置多項式の係数を逐次的に導出する演算にお
いて、前記誤り位置多項式の係数に対応する第2のデー
タを格納し、前記第2のデータのシフト動作が可能な第
2の記憶手段と、 前記受信データに対応するシンドローム多項式に基づい
て、前記第1および第2の記憶手段中に格納されるデー
タの初期設定を行い、前記ユークリッドアルゴリズムの
処理を制御するための制御手段と、 前記第1の記憶手段と前記第2の記憶手段とに共通に設
けられ、前記ユークリッドアルゴリズムにおいてガロア
体上の乗算を行うための乗算手段と、 前記制御手段により制御され、前記乗算手段と前記第1
および第2の記憶手段との間のデータ転送を制御するた
めの選択手段と、 前記第1および第2の記憶手段中に格納されるデータに
対し、前記ユークリッドアルゴリズムにおいて、論理演
算を行うための論理演算手段とを備える、ユークリッド
計算器。
An Euclidean calculator for obtaining an error locator polynomial indicating an error position of received data and an error evaluation polynomial indicating an error amount by an operation based on a Euclidean algorithm, wherein a coefficient of the error evaluation polynomial is sequentially calculated. A first storage means for storing first data corresponding to the coefficient of the error evaluation polynomial and capable of performing a shift operation of the first data; and sequentially calculating the coefficient of the error locator polynomial. A second storage means capable of storing a second data corresponding to a coefficient of the error locator polynomial and performing a shift operation of the second data; and a syndrome polynomial corresponding to the received data. The initialization of the data stored in the first and second storage means is performed based on the above, and the processing of the Euclidean algorithm is controlled. Control means for performing the multiplication on the Galois field in the Euclidean algorithm, provided in common with the first storage means and the second storage means; , The multiplying means and the first
Selecting means for controlling data transfer between the first and second storage means, and performing logical operation on the data stored in the first and second storage means in the Euclidean algorithm. A Euclidean calculator comprising: a logical operation unit.
【請求項2】 前記第1の記憶手段は、 第1の係数データを保持するための第1の評価多項式記
憶手段と、 第2の係数データを保持し、かつ前記第2の係数データ
のシフト動作を行うことが可能な第2の評価多項式記憶
手段とを含み、 前記第2の記憶手段は、 第3の係数データを保持するための第1の位置多項式記
憶手段と、 第4の係数データを保持し、かつ前記第4の係数データ
のシフト動作を行うことが可能な第2の位置多項式記憶
手段とを含み、 前記制御手段は、前記シンドローム多項式に基づいて、
前記第1、第2、第3および第4の係数の初期設定を行
い、 前記乗算手段は、 i)前記第1の係数データに対応する第1の多項式の最
高次係数と前記第2の係数データに対応する第2の多項
式の最高次係数の逆数との乗算結果である係数商を、前
記第2の評価多項式記憶手段において前記第1の多項式
と第2の多項式の次数の差だけシフト動作された前記第
2の係数データの各々に乗算して、前記第2の評価多項
式記憶手段に前記第2の係数データとして再び格納し、
さらに ii)前記第2の位置多項式記憶手段において前記次数
の差だけシフト動作された前記第4の係数の各々に前記
係数商を乗算し、 前記論理演算手段は、 前記第1の係数データと前記第2の係数データとに対
し、それぞれ排他的論理和演算を行った結果を前記第1
の評価多項式記憶手段に前記第1の係数データとして格
納し、かつ前記第3の係数と前記第4の係数とに対し、
それぞれ排他的論理和演算を行った結果を前記第1の位
置多項式記憶手段に前記第3の係数として格納し、 前記ユークリッド計算器は、 前記第1の係数データに対応する前記第1の多項式が所
定の次数以下でない場合、もしくは、前記第2の多項式
の次数が前記第1の多項式の次数よりも大きい場合に、
前記第1の評価多項式記憶手段に格納された前記第1の
係数データと前記第2の評価多項式記憶手段に格納され
た前記第2の係数データとを交換し、かつ前記第1の位
置多項式記憶手段に格納された前記第3の係数と前記第
2の位置多項式記憶手段に格納された前記第4の係数と
を交換するための交換手段をさらに備え、 前記制御手段は、前記第1の多項式が所定の次数以下で
ある場合、前記第1の多項式を前記誤り評価多項式と判
定し、前記第3の多項式を前記誤り位置多項式と判定す
る、請求項1記載のユークリッド計算器。
2. The first storage means includes: first evaluation polynomial storage means for holding first coefficient data; and second coefficient data; and shifting of the second coefficient data. Second evaluation polynomial storage means capable of performing an operation, wherein the second storage means includes: first position polynomial storage means for holding third coefficient data; and fourth coefficient data. And a second position polynomial storage means capable of performing a shift operation of the fourth coefficient data, and the control means, based on the syndrome polynomial,
Initializing the first, second, third and fourth coefficients, the multiplying means comprises: i) a highest-order coefficient of a first polynomial corresponding to the first coefficient data and the second coefficient A coefficient quotient, which is a result of multiplication of the second order polynomial corresponding to the data with the reciprocal of the highest order coefficient, is shifted in the second evaluation polynomial storage means by the difference between the order of the first and second polynomials. Multiplied by each of the calculated second coefficient data, and stored again as the second coefficient data in the second evaluation polynomial storage means;
And ii) multiplying each of the fourth coefficients shifted by the degree difference in the second position polynomial storage means by the coefficient quotient, and the logical operation means comprises: The result of performing an exclusive OR operation on the second coefficient data and the first
Stored in the evaluation polynomial storage means as the first coefficient data, and for the third coefficient and the fourth coefficient,
The result of performing the exclusive OR operation is stored in the first position polynomial storage means as the third coefficient, and the Euclidean calculator calculates that the first polynomial corresponding to the first coefficient data is If not less than a predetermined degree, or if the degree of the second polynomial is greater than the degree of the first polynomial,
Exchanging the first coefficient data stored in the first evaluation polynomial storage means with the second coefficient data stored in the second evaluation polynomial storage means, and storing the first position polynomial storage Further comprising an exchange means for exchanging the third coefficient stored in the means and the fourth coefficient stored in the second position polynomial storage means, wherein the control means comprises the first polynomial. 2. The Euclidean calculator according to claim 1, wherein when is less than or equal to a predetermined order, the first polynomial is determined as the error evaluation polynomial, and the third polynomial is determined as the error locator polynomial.
【請求項3】 前記選択手段は、 前記制御手段に制御されて、前記第2の評価多項式記憶
手段の出力と前記第2の位置多項式記憶手段の出力との
いずれかを選択的に前記乗算手段に与えるための第1の
セレクタ手段と、 前記制御手段に制御されて、前記乗算手段の出力を、前
記第2の評価多項式記憶手段に前記第2の係数データと
して、または前記第2の位置多項式記憶手段に前記第4
の係数として選択的に与えるための第2のセレクタ手段
とを含む、請求項2記載のユークリッド計算器。
3. The multiplying means, controlled by the control means, selectively selects one of an output of the second evaluation polynomial storage means and an output of the second position polynomial storage means. And a second selector polynomial stored in the second evaluation polynomial storage means under the control of the first selector means for giving the second coefficient data to the second evaluation polynomial storage means. The fourth means is stored in the storage means.
And a second selector means for selectively providing the coefficient as a coefficient of Euclidean.
【請求項4】 前記受信データは、BCH符号により符
号化されており、 前記制御手段は、前記BCH符号により訂正可能な誤り
数をt(t:自然数)とするとき、前記第1の多項式を
2tとし、かつ、前記第2の多項式を前記シンドローム
多項式S(x)として、前記第1および第2の係数デー
タの初期設定を行い、 前記所定の次数は、tである、請求項3記載のユークリ
ッド計算器。
4. The received data is encoded by a BCH code, and the control means sets the first polynomial to t (t: natural number) when the number of errors that can be corrected by the BCH code is t (t: natural number). 4. The initialization of the first and second coefficient data is performed by setting x 2t and the second polynomial as the syndrome polynomial S (x), wherein the predetermined order is t. Euclidean calculator.
【請求項5】 受信データの誤りの量を示す誤り評価多
項式をユークリッドアルゴリズムにより求めるためのユ
ークリッド計算器であって、 前記誤り評価多項式の係数を導出する演算を逐次的に実
行するために、演算経過における第1の係数データを保
持するための第1の評価多項式記憶手段と、 前記誤り評価多項式の係数を導出する演算経過における
第2の係数データを保持し、かつ前記第2の係数データ
のシフト動作を行うことが可能な第2の評価多項式記憶
手段と、 前記受信データに対応するシンドローム多項式に基づい
て、前記第1および第2の係数データの初期設定を行
い、前記ユークリッドアルゴリズムの処理を制御するた
めの制御手段と、 前記第1の係数データに対応する第1の多項式の最高次
係数と前記第2の係数データに対応する第2の多項式の
最高次係数の逆数との乗算結果を格納する記憶手段と、 前記第2の評価多項式記憶手段において前記第1の多項
式と第2の多項式の次数の差だけシフト動作された前記
第2の係数データの各々に、前記記憶手段からの出力を
乗算して、乗算結果を前記第2の評価多項式記憶手段に
前記第2の係数データとして再び格納するための乗算手
段と、 前記乗算手段から前記第2の評価多項式記憶手段に再格
納された前記第2の係数データと前記第1の評価多項式
記憶手段に格納された前記第1の係数データとに対し、
それぞれ排他的論理和演算を行った結果を前記第1の評
価多項式記憶手段に前記第1の係数データとして格納す
るための論理演算手段と、 前記第1の係数データに対応する前記第1の多項式が所
定の次数以下でない場合、もしくは、前記第1の多項式
の次数が前記第2の多項式の次数よりも大きい場合に、
前記第1の評価多項式記憶手段と前記第2の評価多項式
記憶手段との間で、格納されたデータを交換するための
交換手段とを備え、 前記制御手段は、前記第1の多項式が所定の次数以下で
ある場合、前記第1の多項式を前記誤り評価多項式と判
定する、ユークリッド計算器。
5. A Euclidean calculator for obtaining an error evaluation polynomial indicating an amount of error in received data by an Euclidean algorithm, wherein an operation for sequentially deriving a coefficient of the error evaluation polynomial is performed. First evaluation polynomial storage means for holding first coefficient data in the course of progress; holding second coefficient data in the course of calculation for deriving the coefficient of the error evaluation polynomial; and storing the second coefficient data in the second course. A second evaluation polynomial storage means capable of performing a shift operation; and an initial setting of the first and second coefficient data based on a syndrome polynomial corresponding to the received data, and a process of the Euclidean algorithm is performed. Control means for controlling; the highest order coefficient of a first polynomial corresponding to the first coefficient data; and the second coefficient data Storage means for storing the result of multiplication of the corresponding second polynomial by the reciprocal of the highest order coefficient; and shifting operation by the difference between the degree of the first polynomial and the degree of the second polynomial in the second evaluation polynomial storage means. Multiplying means for multiplying each of the second coefficient data by the output from the storage means and storing the multiplication result again as the second coefficient data in the second evaluation polynomial storage means; For the second coefficient data re-stored in the second evaluation polynomial storage means from the multiplication means and the first coefficient data stored in the first evaluation polynomial storage means,
Logical operation means for storing the result of performing the exclusive OR operation in the first evaluation polynomial storage means as the first coefficient data; and the first polynomial corresponding to the first coefficient data Is not less than or equal to a predetermined degree, or when the degree of the first polynomial is larger than the degree of the second polynomial,
An exchange unit for exchanging stored data between the first evaluation polynomial storage unit and the second evaluation polynomial storage unit, wherein the control unit determines that the first polynomial is a predetermined one. A Euclidean calculator that determines the first polynomial as the error evaluation polynomial if the degree is equal to or less than the degree.
【請求項6】 前記受信データは、BCH符号により符
号化されており、 前記制御手段は、前記BCH符号により訂正可能な誤り
数をt(t:自然数)とするとき、前記第1の多項式を
2tとし、かつ、前記第2の多項式を前記シンドローム
多項式S(x)として、前記第1および第2の係数デー
タの初期設定を行い、 前記所定の次数は、tである、請求項5記載のユークリ
ッド計算器。
6. The received data is encoded by a BCH code, and the control means sets the first polynomial to t (t: natural number) when the number of errors that can be corrected by the BCH code is t (t: natural number). 6. The initial setting of the first and second coefficient data is performed by setting x 2t and the second polynomial as the syndrome polynomial S (x), and the predetermined order is t. 7. Euclidean calculator.
【請求項7】 受信データの誤り位置を示す誤り位置多
項式と誤りの量を示す誤り評価多項式をユークリッドア
ルゴリズムに基づく演算により求めるためのユークリッ
ド計算手段と、 導出された前記誤り位置多項式と前記誤り評価多項式と
に基づいて、前記受信データの誤り訂正を行うための訂
正手段とを備え、 前記ユークリッド計算手段は、 前記誤り評価多項式の係数を逐次的に導出する演算にお
いて、前記誤り評価多項式の係数に対応する第1のデー
タを格納し、かつ前記第1のデータのシフト動作が可能
な第1の記憶手段と、 前記誤り位置多項式の係数を逐次的に導出する演算にお
いて、前記誤り位置多項式の係数に対応する第2のデー
タを格納し、前記第2のデータのシフト動作が可能な第
2の記憶手段と、 前記受信データに対応するシンドローム多項式に基づい
て、前記第1および第2の記憶手段中に格納されるデー
タの初期設定を行い、前記ユークリッドアルゴリズムの
処理を制御するための制御手段と、 前記第1の記憶手段と前記第2の記憶手段とに共通に設
けられ、前記ユークリッドアルゴリズムにおいてガロア
体上の乗算を行うための乗算手段と、 前記制御手段により制御され、前記乗算手段と前記第1
および第2の記憶手段との間のデータ転送を制御するた
めの選択手段と、 前記第1および第2の記憶手段中に格納されるデータに
対し、前記ユークリッドアルゴリズムにおいて、論理演
算を行うための論理演算手段とを含む、誤り訂正装置。
7. Euclidean calculating means for obtaining an error locator polynomial indicating an error position of received data and an error evaluation polynomial indicating an error amount by an operation based on a Euclidean algorithm, and the derived error locator polynomial and the error evaluation A correction unit for performing error correction of the received data based on the polynomial, and the Euclidean calculation unit calculates the coefficient of the error evaluation polynomial in the operation of sequentially deriving the coefficient of the error evaluation polynomial. First storage means for storing corresponding first data and capable of shifting the first data; and in an operation for sequentially deriving coefficients of the error locator polynomial, coefficients of the error locator polynomial A second storage unit that stores second data corresponding to the received data, and is capable of shifting the second data; Control means for performing initial setting of data stored in the first and second storage means based on the syndrome polynomial to control processing of the Euclidean algorithm; A multiplying means provided in common with a second storage means for performing multiplication on a Galois field in the Euclidean algorithm; controlled by the control means, the multiplying means and the first
Selecting means for controlling data transfer between the first and second storage means, and performing logical operation on the data stored in the first and second storage means in the Euclidean algorithm. An error correction device including a logical operation unit.
【請求項8】 前記第1の記憶手段は、 第1の係数データを保持するための第1の評価多項式記
憶手段と、 第2の係数データを保持し、かつ前記第2の係数データ
のシフト動作を行うことが可能な第2の評価多項式記憶
手段とを含み、 前記第2の記憶手段は、 第3の係数データを保持するための第1の位置多項式記
憶手段と、 第4の係数データを保持し、かつ前記第4の係数データ
のシフト動作を行うことが可能な第2の位置多項式記憶
手段とを含み、 前記制御手段は、前記シンドローム多項式に基づいて、
前記第1、第2、第3および第4の係数の初期設定を行
い、 前記乗算手段は、 i)前記第1の係数データに対応する第1の多項式の最
高次係数と前記第2の係数データに対応する第2の多項
式の最高次係数の逆数との乗算結果である係数商を、前
記第2の評価多項式記憶手段において前記第1の多項式
と第2の多項式の次数の差だけシフト動作された前記第
2の係数データの各々に乗算して、前記第2の評価多項
式記憶手段に前記第2の係数データとして再び格納し、
さらに ii)前記第2の位置多項式記憶手段において前記次数
の差だけシフト動作された前記第4の係数の各々に前記
係数商を乗算し、 前記論理演算手段は、 前記第1の係数データと前記第2の係数データとに対
し、それぞれ排他的論理和演算を行った結果を前記第1
の評価多項式記憶手段に前記第1の係数データとして格
納し、かつ前記第3の係数と前記第4の係数とに対し、
それぞれ排他的論理和演算を行った結果を前記第1の位
置多項式記憶手段に前記第3の係数として格納し、 前記ユークリッド計算手段は、 前記第1の係数データに対応する前記第1の多項式が所
定の次数以下でない場合、もしくは、前記第2の多項式
の次数が前記第1の多項式の次数よりも大きい場合に、
前記第1の評価多項式記憶手段に格納された前記第1の
係数データと前記第2の評価多項式記憶手段に格納され
た前記第2の係数データとを交換し、かつ前記第1の位
置多項式記憶手段に格納された前記第3の係数と前記第
2の位置多項式記憶手段に格納された前記第4の係数と
を交換するための交換手段をさらに含み、 前記制御手段は、前記第1の多項式が所定の次数以下で
ある場合、前記第1の多項式を前記誤り評価多項式と判
定し、前記第3の多項式を前記誤り位置多項式と判定す
る、請求項7記載の誤り訂正装置。
8. The first storage means: first evaluation polynomial storage means for storing first coefficient data; and second coefficient data; and shifting of the second coefficient data. Second evaluation polynomial storage means capable of performing an operation, wherein the second storage means includes: first position polynomial storage means for holding third coefficient data; and fourth coefficient data. And a second position polynomial storage means capable of performing a shift operation of the fourth coefficient data, and the control means, based on the syndrome polynomial,
Initializing the first, second, third and fourth coefficients, the multiplying means comprises: i) a highest-order coefficient of a first polynomial corresponding to the first coefficient data and the second coefficient A coefficient quotient, which is a result of multiplication of the second order polynomial corresponding to the data with the reciprocal of the highest order coefficient, is shifted in the second evaluation polynomial storage means by the difference between the order of the first and second polynomials. Multiplied by each of the calculated second coefficient data, and stored again as the second coefficient data in the second evaluation polynomial storage means;
And ii) multiplying each of the fourth coefficients shifted by the degree difference in the second position polynomial storage means by the coefficient quotient, and the logical operation means comprises: The result of performing an exclusive OR operation on the second coefficient data and the first
Stored in the evaluation polynomial storage means as the first coefficient data, and for the third coefficient and the fourth coefficient,
The result of performing the exclusive OR operation is stored as the third coefficient in the first position polynomial storage unit, and the Euclidean calculation unit calculates that the first polynomial corresponding to the first coefficient data is If not less than a predetermined degree, or if the degree of the second polynomial is greater than the degree of the first polynomial,
Exchanging the first coefficient data stored in the first evaluation polynomial storage means with the second coefficient data stored in the second evaluation polynomial storage means, and storing the first position polynomial storage Means for exchanging the third coefficient stored in the means and the fourth coefficient stored in the second position polynomial storage means, wherein the control means comprises: the first polynomial The error correction device according to claim 7, wherein when is less than or equal to a predetermined order, the first polynomial is determined to be the error evaluation polynomial, and the third polynomial is determined to be the error location polynomial.
【請求項9】 前記選択手段は、 前記制御手段に制御されて、前記第2の評価多項式記憶
手段の出力と前記第2の位置多項式記憶手段の出力との
いずれかを選択的に前記乗算手段に与えるための第1の
セレクタ手段と、 前記制御手段に制御されて、前記乗算手段の出力を、前
記第2の評価多項式記憶手段に前記第2の係数データと
して、または前記第2の位置多項式記憶手段に前記第4
の係数として選択的に与えるための第2のセレクタ手段
とを含む、請求項8記載の誤り訂正装置。
9. The multiplying means, controlled by the control means, selectively selects one of an output of the second evaluation polynomial storage means and an output of the second position polynomial storage means. And a second selector polynomial stored in the second evaluation polynomial storage means under the control of the first selector means for giving the second coefficient data to the second evaluation polynomial storage means. The fourth means is stored in the storage means.
9. The error correction apparatus according to claim 8, further comprising: a second selector for selectively giving the coefficient as a coefficient.
【請求項10】 前記受信データは、BCH符号により
符号化されており、 前記制御手段は、前記BCH符号により訂正可能な誤り
数をt(t:自然数)とするとき、前記第1の多項式を
2tとし、かつ、前記第2の多項式を前記シンドローム
多項式S(x)として、前記第1および第2の係数デー
タの初期設定を行い、 前記所定の次数は、tである、請求項9記載の誤り訂正
装置。
10. The received data is encoded by a BCH code, and the control means sets the first polynomial to t (t: natural number) when the number of errors that can be corrected by the BCH code is t (t: natural number). The initial setting of the first and second coefficient data is performed by setting x 2t and the second polynomial as the syndrome polynomial S (x), wherein the predetermined order is t. Error correction device.
【請求項11】 受信データの誤り位置を示す誤り位置
多項式と誤りの量を示す誤り評価多項式をユークリッド
アルゴリズムにより求めるためのユークリッド計算手段
と、 導出された前記誤り位置多項式と前記誤り評価多項式と
に基づいて、前記受信データの誤り訂正を行うための訂
正手段とを備え、 前記ユークリッド計算手段は、 前記誤り評価多項式の係数を導出する演算を逐次的に実
行するために、演算経過における第1の係数データを保
持するための第1の評価多項式記憶手段と、 前記誤り評価多項式の係数を導出する演算経過における
第2の係数データを保持し、かつ前記第2の係数データ
のシフト動作を行うことが可能な第2の評価多項式記憶
手段と、 前記受信データに対応するシンドローム多項式に基づい
て、前記第1および第2の係数データの初期設定を行
い、前記ユークリッドアルゴリズムの処理を制御するた
めの制御手段と、 前記第1の係数データに対応する第1の多項式の最高次
係数と前記第2の係数データに対応する第2の多項式の
最高次係数の逆数との乗算結果を格納する記憶手段と、 前記第2の評価多項式記憶手段において前記第1の多項
式と第2の多項式の次数の差だけシフト動作された前記
第2の係数データの各々に、前記記憶手段からの出力を
乗算して、乗算結果を前記第2の評価多項式記憶手段に
前記第2の係数データとして再び格納するための乗算手
段と、 前記乗算手段から前記第2の評価多項式記憶手段に再格
納された前記第2の係数データと前記第1の評価多項式
記憶手段に格納された前記第1の係数データとに対し、
それぞれ排他的論理和演算を行った結果を前記第1の評
価多項式記憶手段に前記第1の係数データとして格納す
るための論理演算手段と、 前記第1の係数データに対応する前記第1の多項式が所
定の次数以下でない場合、もしくは、前記第1の多項式
の次数が前記第2の多項式の次数よりも大きい場合に、
前記第1の評価多項式記憶手段と前記第2の評価多項式
記憶手段との間で、格納されたデータを交換するための
交換手段とを含み、 前記制御手段は、前記第1の多項式が所定の次数以下で
ある場合、前記第1の多項式を前記誤り評価多項式と判
定する、誤り訂正装置。
11. Euclidean calculating means for obtaining an error locator polynomial indicating an error position of received data and an error evaluation polynomial indicating an error amount by a Euclidean algorithm, and the derived error locator polynomial and the error evaluation polynomial Correction means for performing error correction on the received data, the Euclidean calculation means comprising: a first step in a calculation process for sequentially executing a calculation for deriving coefficients of the error evaluation polynomial; First evaluation polynomial storage means for holding coefficient data, and holding of second coefficient data in an operation process for deriving coefficients of the error evaluation polynomial, and performing a shift operation of the second coefficient data. A second evaluation polynomial storage unit capable of performing the following, based on the syndrome polynomial corresponding to the received data, Control means for performing initial setting of coefficient data of No. 2 and controlling the processing of the Euclidean algorithm; Storage means for storing the result of multiplication of the second polynomial by the reciprocal of the highest order coefficient, and the second evaluation polynomial storage means being shifted by the difference between the degree of the first polynomial and the degree of the second polynomial. Multiplying means for multiplying each of the second coefficient data by an output from the storage means and storing the multiplication result again as the second coefficient data in the second evaluation polynomial storage means; For the second coefficient data re-stored in the second evaluation polynomial storage means from the multiplication means and the first coefficient data stored in the first evaluation polynomial storage means,
Logical operation means for storing the result of performing the exclusive OR operation in the first evaluation polynomial storage means as the first coefficient data; and the first polynomial corresponding to the first coefficient data Is not less than or equal to a predetermined degree, or when the degree of the first polynomial is greater than the degree of the second polynomial,
An exchange unit for exchanging stored data between the first evaluation polynomial storage unit and the second evaluation polynomial storage unit, wherein the control unit determines that the first polynomial has a predetermined value. An error correction device that determines the first polynomial as the error evaluation polynomial when the degree is equal to or less than the degree.
【請求項12】 前記受信データは、BCH符号により
符号化されており、 前記制御手段は、前記BCH符号により訂正可能な誤り
数をt(t:自然数)とするとき、前記第1の多項式を
2tとし、かつ、前記第2の多項式を前記シンドローム
多項式S(x)として、前記第1および第2の係数デー
タの初期設定を行い、 前記所定の次数は、tである、請求項11記載の誤り訂
正装置。
12. The received data is encoded by a BCH code, and the control unit sets the first polynomial to t (t: natural number) when the number of errors that can be corrected by the BCH code is t (t: natural number). 12. The initialization of the first and second coefficient data is performed by setting x 2t and the second polynomial as the syndrome polynomial S (x), wherein the predetermined order is t. Error correction device.
【請求項13】 誤り訂正方法であって、 受信データに対応するシンドローム多項式に基づいて、
誤りの存在する位置を示す誤り位置多項式と誤りの量を
示す誤り評価多項式をユークリッド法により求めるステ
ップを備え、 前記誤り位置多項式と前記誤り評価多項式を求めるステ
ップは、 第1の係数データR0i(0≦i≦2t)をR02t
1,R0i=0(0≦i≦2t−1)とし、第2の係数
データR1i(0≦i≦2t−1)をR1i=Si(0≦
i≦2t−1)とし、第3の係数B0iをB0i=0(0
≦i≦t)とし、第4の係数B1iをB1i=0(0≦i
≦t),B10=1として記憶手段に格納する第0ステ
ップと、 前記第1の係数データR0iに対応する第1の多項式の
次数N0および最高次数係数Q0を求め、前記第2の係
数データR1iに対応する第2の多項式の次数N1およ
び最高次数係数をQ1を求め、Q=Q0*(1/Q1)
を前記記憶手段に格納する第1ステップと、 前記第1および第2の多項式の次数の差DN=N0−N
1を求める第2ステップと、 前記次数の差DNが0未満である場合、前記第1の係数
データR0iの値と前記第2の係数データR1iの値をそ
れぞれ入れ替え、かつ、前記第3の係数B0iの値と前
記第4の係数B1iの値をそれぞれ入れ替えて、前記第
1ステップに処理を移行する第3ステップと、 前記第2の係数データに対して、(i−DN)が0以上
の場合は、R1i=Q*R1(i-DN)(0≦i≦2t−
1)とし、(i−DN)が負の場合は、前記第2の係数
データR1iを0として前記記憶手段に格納する第4ス
テップと、 前記第4の係数に対して、(i−DN)が負でない場合
は、B1i=Q*B1( i-DN)(0≦i≦t)とし、(i
−DN)が負の場合は、前記第4の係数B1iを0とし
て前記記憶手段に格納する第5ステップと、 前記第1の係数データと前記第2の係数データとに対し
て、 R0i=R0i exor R1i(0≦i≦2t−1) R12t=0 との演算を行い、前記第3の係数と前記第4の係数とに
対して、 B0i=B0i exor B1i (0≦i≦t) との演算を行う第6ステップと、 前記第1の係数データR0iにより表される前記第1の
多項式の次数がt以下でない場合、前記第1の係数デー
タR0iの値と前記第2の係数データR1iの値をそれぞ
れ入れ替え、かつ、前記第1の係数B0iの値と前記第
4の係数B1iの値をそれぞれ入れ替える処理を行い、
前記第1ステップに処理を移行する第7ステップとを含
み、 前記第1の多項式の次数がt以下である場合、前記誤り
評価多項式を前記第1の多項式とし、前記誤り位置多項
式を前記第3の係数B0iにより表される第3の多項式
として、誤り位置および誤り量を算出し、前記受信デー
タの誤り訂正を行うステップをさらに備える、誤り訂正
方法。
13. An error correction method, comprising the steps of:
A step of obtaining an error locator polynomial indicating a position where an error exists and an error evaluation polynomial indicating an amount of error by a Euclidean method; and a step of obtaining the error locator polynomial and the error evaluation polynomial comprises: first coefficient data R0 i ( 0 ≦ i ≦ 2t) the R0 2t =
1, R0 i = 0 (0 ≦ i ≦ 2t−1), and the second coefficient data R1 i (0 ≦ i ≦ 2t−1) is calculated as R1 i = S i (0 ≦
i ≦ 2t−1), and the third coefficient B0 i is B0 i = 0 (0
≦ i ≦ t), and the fourth coefficient B1 i is B1 i = 0 (0 ≦ i
≦ t), B1 and a zeroth storing in the storage means as a 0 = 1, obtains the first order N0 and highest degree coefficients Q0 of the polynomial corresponding to the first coefficient data R0 i, the second coefficient The order N1 and the highest order coefficient of the second polynomial corresponding to the data R1 i are determined as Q1, and Q = Q0 * (1 / Q1)
In the storage means, and the difference DN = N0−N between the degrees of the first and second polynomials.
1; and when the difference DN of the degree is less than 0, the value of the first coefficient data R0 i and the value of the second coefficient data R1 i are respectively replaced, and the third interchanged coefficients B0 i value as the value of the fourth coefficient of B1 i, respectively, a third step of the process proceeds to the first step, with respect to the second coefficient data, (i-DN) Is 0 or more, R1 i = Q * R1 (i-DN) (0 ≦ i ≦ 2t−
1), and when (i-DN) is negative, a fourth step in which the second coefficient data R1 i is set to 0 and stored in the storage means, and (i-DN) ) Is not negative, B1 i = Q * B1 ( i-DN) (0 ≦ i ≦ t), and (i
If -DN) is negative, a fifth step of setting the fourth coefficient B1 i to 0 and storing it in the storage means; and R0 i for the first coefficient data and the second coefficient data = R0 i exor R1 i (0 ≦ i ≦ 2t-1) R1 2t = 0, and B0 i = B0 i exor B1 i (for the third coefficient and the fourth coefficient) 0 ≦ i ≦ t); and if the degree of the first polynomial represented by the first coefficient data R0 i is not less than or equal to t, the first coefficient data R0 i Performing a process of exchanging the value and the value of the second coefficient data R1 i and exchanging the value of the first coefficient B0 i and the value of the fourth coefficient B1 i , respectively;
And a seventh step of shifting a process to the first step. If the degree of the first polynomial is not more than t, the error evaluation polynomial is the first polynomial, and the error locator polynomial is the third polynomial. third as polynomial to calculate the error position and error amount, further comprising the step of performing error correction of the received data, an error correction method which is represented by the coefficient of B0 i.
JP2000371610A 2000-01-31 2000-12-06 Euclidean calculator, error correcting device and error correcting method Pending JP2002176363A (en)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2000371610A JP2002176363A (en) 2000-12-06 2000-12-06 Euclidean calculator, error correcting device and error correcting method
US09/772,072 US6772385B2 (en) 2000-01-31 2001-01-30 Error-correcting device and decoder enabling fast error correction with reduced circuit scale
KR1020010004290A KR100685360B1 (en) 2000-01-31 2001-01-30 Error-correcting device and decoder enabling fast error correction with reduced circuit scale
CNB2005100095619A CN100380507C (en) 2000-01-31 2001-01-31 Error-correcting device and decoder enabling fast error correction with reduced circuit scale
CNB011119756A CN1199177C (en) 2000-01-31 2001-01-31 Error correcting system capable of inhibiting scale of circuit and high-speed correcting error and decoding device
US10/845,091 US7181483B2 (en) 2000-01-31 2004-05-14 Error-correcting device and decoder enabling fast error correction with reduced circuit scale

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000371610A JP2002176363A (en) 2000-12-06 2000-12-06 Euclidean calculator, error correcting device and error correcting method

Publications (1)

Publication Number Publication Date
JP2002176363A true JP2002176363A (en) 2002-06-21

Family

ID=18841306

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000371610A Pending JP2002176363A (en) 2000-01-31 2000-12-06 Euclidean calculator, error correcting device and error correcting method

Country Status (1)

Country Link
JP (1) JP2002176363A (en)

Similar Documents

Publication Publication Date Title
US5642367A (en) Finite field polynomial processing module for error control coding
US7028247B2 (en) Error correction code circuit with reduced hardware complexity
JP3970337B2 (en) Hardware-optimized Reed-Solomon decoder for large data blocks
JP3233860B2 (en) Reed-Solomon decoder
EP0329789B1 (en) Galois field arithmetic unit
US6772385B2 (en) Error-correcting device and decoder enabling fast error correction with reduced circuit scale
US6725416B2 (en) Forward error correction apparatus and methods
JP2687941B2 (en) Reed-Solomon Decoder
JP2004032737A (en) Reed solomon decoder
JP3245119B2 (en) Reed-Solomon decoder employing new polynomial array structure and decoding method thereof
KR100738170B1 (en) Error correction device
EP0660535B1 (en) Apparatus for uniformly correcting erasure and error of received word by using a common polynomial
JP2800723B2 (en) Error location detection circuit of Reed-Solomon decoder
US6651214B1 (en) Bi-directional decodable Reed-Solomon codes
JP3343857B2 (en) Decoding device, arithmetic device, and methods thereof
JP2002176363A (en) Euclidean calculator, error correcting device and error correcting method
US6145112A (en) Error correcting method and apparatus
JP2907138B2 (en) Error correction arithmetic processing method and processing circuit
JP3233502B2 (en) Decryption device
US6446233B1 (en) Forward error correction apparatus and methods
JP3439309B2 (en) Double-extended Reed-Solomon decoder
JPH0834439B2 (en) Galois field arithmetic unit
JPH0828670B2 (en) Galois field arithmetic unit
WO2004059851A1 (en) An encoder for high rate parallel encoding
JPH07109992B2 (en) Error position finding method and device

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050523

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050531

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20051004