Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JPS638650B2 - - Google Patents
[go: Go Back, main page]

JPS638650B2 - - Google Patents

Info

Publication number
JPS638650B2
JPS638650B2 JP57102809A JP10280982A JPS638650B2 JP S638650 B2 JPS638650 B2 JP S638650B2 JP 57102809 A JP57102809 A JP 57102809A JP 10280982 A JP10280982 A JP 10280982A JP S638650 B2 JPS638650 B2 JP S638650B2
Authority
JP
Japan
Prior art keywords
output
multiplication
error
shift register
linear shift
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired
Application number
JP57102809A
Other languages
Japanese (ja)
Other versions
JPS58219851A (en
Inventor
Jun Inagawa
Masahide Nanun
Tadashi Kojima
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.)
Toshiba Corp
Original Assignee
Tokyo Shibaura 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 Tokyo Shibaura Electric Co Ltd filed Critical Tokyo Shibaura Electric Co Ltd
Priority to JP57102809A priority Critical patent/JPS58219851A/en
Publication of JPS58219851A publication Critical patent/JPS58219851A/en
Publication of JPS638650B2 publication Critical patent/JPS638650B2/ja
Granted legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes

Landscapes

  • Physics & Mathematics (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Detection And Correction Of Errors (AREA)
  • Optical Recording Or Reproduction (AREA)
  • Error Detection And Correction (AREA)

Description

【発明の詳細な説明】 〔発明の技術分野〕 この発明は例えば光学式デジタルオーデイオデ
イスク(DAD)再生装置等に好適するエラー訂
正回路の改良に関する。
DETAILED DESCRIPTION OF THE INVENTION [Technical Field of the Invention] The present invention relates to an improvement in an error correction circuit suitable for, for example, an optical digital audio disk (DAD) playback device.

〔発明の技術的背景〕[Technical background of the invention]

周知のように、近時開発されている光学式
DAD再生装置(特にはCD:コンパクトデイスク
形)においては、そのエラー訂正符号としてクロ
スインターリーブリードソロモン符号(CIRC)
を採用している。
As is well known, the recently developed optical method
Cross-interleaved Reed-Solomon code (CIRC) is used as an error correction code for DAD playback devices (particularly CD (compact disk type)).
is adopted.

すなわち、これは従来より知られている代表的
なランダムエラー訂正符号のうちで最もエラー訂
正能力が高いものとして広範に定義されている
BCH符号の一種であるリードソロモン符号を用
いるものであるが、それにバーストエラーに対し
ても高い訂正能力を持たせるべくクロスインタリ
ーブなる信号処理を伴わせるようにしたものであ
る。
In other words, it is broadly defined as having the highest error correction ability among the typical random error correction codes known to date.
It uses a Reed-Solomon code, which is a type of BCH code, but it is also accompanied by signal processing called cross-interleaving in order to have a high correction ability even for burst errors.

ところで、リードソロモン符号の復号つまりエ
ラー訂正はBCH符号のそれと同様になすことが
できる。
By the way, decoding, that is, error correction of the Reed-Solomon code can be performed in the same way as that of the BCH code.

今、符号長(n)、情報シンボル(k)個、検
査シンボル(n−k)個からなるリードソロモン
符号について、その復号法を調べてみるものとす
る。但し、上記各シンボルは(m)個の2進ビツ
トつまり2m個の元を有する有限体であるガロア体
GF(2m)の元である。
Let us now examine the decoding method for a Reed-Solomon code consisting of a code length (n), information symbols (k), and check symbols (nk). However, each symbol above is a Galois field, which is a finite field having (m) binary bits, that is, 2 m elements.
It is the source of GF (2 m ).

そして、この場合(t)重エラー訂正リードソ
ロモン符号の生成多項式g(x)は、(α)をガロ
ア体GF(2m)の原始元として次の(1)式または(2)式
のように表わされる。
In this case, the generating polynomial g(x) of the (t) multiple error correction Reed-Solomon code is expressed as the following equation (1) or (2), where (α) is a primitive element of the Galois field GF(2 m ). is expressed in

g(x)=(x+α)(x+α2)……(x+α2t
…(1) g(x)=(x+α0)(x+α)……(x+α2t-1

…(2) また、送信符号語をC(x)、受信符号語をR(x)
表わし、且つエラー多項式をE(x)とすると、これ
らの間には次のような関係が成立する。
g(x)=(x+α)(x+α 2 )……(x+α 2t )
…(1) g(x)=(x+α 0 )(x+α)…(x+α 2t-1
)
...(2) Also, if the transmitted codeword is represented by C (x) , the received codeword is represented by R (x) , and the error polynomial is E (x) , the following relationship holds between them. .

R(x)=C(x)+E(x) …(3) この場合、多項式の係数はガロア体GF(2m)に
含まれており、エラー多項式E(x)はエラーロケー
シヨンおよび値(大きさ)に対応する項だけを含
んでいる。
R (x) = C (x) + E (x) …(3) In this case, the coefficients of the polynomial are contained in the Galois field GF (2 m ), and the error polynomial E (x) is defined by the error location and value ( contains only the terms corresponding to the magnitude).

従つて、位置xjにおけるエラー値をYjとすると
E(x)=〓j Yjxj …(4) となり、該(4)式でΣはエラーのすべての位置にわ
たる総和を意味している。
Therefore, if the error value at position x j is Y j , E(x) = 〓 j Y j x j ...(4), and in equation (4), Σ means the sum of errors over all positions. There is.

ここで、シンドロームSiを Si=R(αi) 〔但し、i=0,1……2t−1〕
…(5) の如く定義したとすると、上記(3)式より Si=C(αi)+E(αi) となる。
Here, the syndrome S i is S i =R(α i ) [however, i=0, 1...2t-1]
...If defined as in (5), then S i =C(α i )+E(α i ) from equation (3) above.

この場合、C(x)はg(x)で常に割り切れるので C(αi)=0 であるから Si=E(αi) となる。そこで、上記(4)式より
Si=E(αi)=〓j Yj(αij=〓j YjXi j …(6) と表わすことができる。但しαj=Xjとおいたもの
で、Xjはαjにおけるエラーロケーシヨンを表わし
ている。
In this case, since C (x) is always divisible by g (x) , C (α i ) = 0, so S i = E (α i ). Therefore, from equation (4) above,
It can be expressed as S i = Ei )=〓 j Y ji ) j =〓 j Y j X i j (6). However, α j =X j , where X j represents the error location at α j .

ここで、エラーロケーシヨン多項式σ(x)は、エ
ラー数をeとして
σ(x)=〓i (x−Xi) =xe+σ1xe-1+……+σe …(7) と定義される。
Here, the error location polynomial σ (x) is calculated as follows, where the number of errors is e: σ (x) = 〓 i (x−X i ) = x e + σ 1 x e-1 +……+σ e …(7) defined.

また、(7)式のσ1〜σeはシンドロームSiとの間で
次のように関係付けられる。
Moreover, σ 1 to σ e in equation (7) are related to syndrome S i as follows.

Si+e+σ1Si+e-1+ ……σe-1Si+1+σeSi …(8) つまり、以上のようなリードソロモン符号の復
号手順は () (5)式によりシンドロームSiを計算する。
S i+e1 S i+e-1 + ...σ e-1 S i+1e S i ...(8) In other words, the decoding procedure for the Reed-Solomon code as described above is () (5) The syndrome S i is calculated by:

() (8)式によりエラーロケーシヨン多項式の
係数σ1〜σeを計算する。
() Calculate the coefficients σ 1 to σ e of the error location polynomial using equation (8).

() (7)式によりエラーロケーシヨン多項式の
根Xjを求める。
() Find the root X j of the error location polynomial using equation (7).

() (6)式によりエラー値Yjを求め、(4)式に
よりエラー多項式を求める。
() Find the error value Y j using equation (6), and find the error polynomial using equation (4).

() (3)式によりエラー訂正を行なう。() Error correction is performed using equation (3).

なる()〜()の手順に帰着せしめられる。This results in the steps () to ().

次に、以上のような復号手順によるエラー訂正
の具体例として、1ブロツクデータに4個の検査
シンボルを用いた場合について説明する。
Next, as a specific example of error correction using the above decoding procedure, a case will be described in which four check symbols are used for one block of data.

すなわち、この場合の生成多項式g(x)は g(x)=(x+1)(x+α) (x+α2)(x+α3) となり、2重エラーまでの訂正が可能となるもの
であるが、ここではそれを〔A〕,〔B〕なる二つ
の方式によつた場合について各別に述べるものと
する。
In other words, the generator polynomial g (x) in this case is g (x) = (x + 1) (x + α) (x + α 2 ) (x + α 3 ), and it is possible to correct up to double errors, but here We will discuss the two methods [A] and [B] separately.

〔方式A〕[Method A]

() シンドロームS0〜S3を計算する。 () Calculate syndromes S 0 to S 3 .

() (8)式をe=1,e=2について書き直す
と、e=1の場合には S1+σ1S0=0 S2+σ1S1=0 S3+σ1S2=0 (9) となる。また、e=2の場合には
S2+σ1S1+σ2S0=0 S3+σ1S2+σ2S1=0 (10) となる。
() Rewriting equation (8) for e=1 and e=2, in the case of e=1, S 11 S 0 =0 S 21 S 1 =0 S 31 S 2 =0 ( 9) becomes. Also, in the case of e=2
S 21 S 12 S 0 =0 S 31 S 22 S 1 =0 (10).

ここで、実際の復号器がe=1の場合から動
作を始めるものとすると、先ず連立方程式(9)を
満足する解σ1を求めなければならない。そし
て、この解が存在しなければ、復号器は次にe
=2の場合について連立方程式(10)を満足する解
σ1,σ2を求めなければならない。なお、ここで
解が得られない場合はe≧3とみなすことにな
る。
Here, assuming that the actual decoder starts its operation from the case where e=1, it is first necessary to find a solution σ 1 that satisfies the simultaneous equations (9). Then, if this solution does not exist, the decoder then e
In the case of =2, solutions σ 1 and σ 2 that satisfy simultaneous equations (10) must be found. Note that if no solution is obtained here, it is assumed that e≧3.

(9)式の解σ1は σ1=S1/S0=S2/S1=S3/S2 として求め、(10)式の解σ1,σ2は σ1=S0S3+S1S2/S1 2+S0S2, σ2=S1S3+S2 2/S1 2+S0S2 として求める。 The solution σ 1 of equation (9) is obtained as σ 1 =S 1 /S 0 =S 2 /S 1 =S 3 /S 2 , and the solutions σ 1 and σ 2 of equation (10) are obtained as σ 1 =S 0 S 3 +S 1 S 2 /S 1 2 +S 0 S 2 , σ 2 =S 1 S 3 +S 2 2 /S 1 2 +S 0 S 2 .

() 以上のようにしてエラーロケーシヨン多
項式の係数σ1が得られたならば、次に(7)式によ
りエラーロケーシヨン多項式の根を求める。
() Once the coefficient σ 1 of the error location polynomial has been obtained as described above, the roots of the error location polynomial are then determined using equation (7).

先ず、e=1の場合は σ(x)=x+σ1=0, ∴X1=σ1 となる。また、e=2の場合は σ(x)=x2+σ1x+σ2=0 ……(11) として、該(11)式にガロア体GF(2m)の元を順次
に代入してその解を求めればよく、今この根を
X1,X2とする。
First, when e=1, σ (x) =x+σ 1 =0, ∴X 11 . In addition, in the case of e=2, σ (x) = x 2 + σ 1x + σ 2 = 0 ...(11), and by sequentially substituting the elements of the Galois field GF (2 m ) into equation (11), All you have to do is find the solution, and now find this root.
Let X 1 and X 2 be.

() エラーロケーシヨン多項式の根が求まつ
たなら、次に(6)式によりエラー値Yjを求める。
() Once the roots of the error location polynomial have been found, the error value Y j is then found using equation (6).

先ず、e=1の場合は S0=Y1 ∴Y1=S0 となる。また、e=2の場合は S0=Y1+Y2 S1=Y1X1+Y2X2 より ∴Y1=X2S0+S1/X1+X2 Y2=S0+Y1 () 上述のようにして求めたエラー値Y1
Y2により訂正を行なう。
First, when e=1, S 0 =Y 1 ∴Y 1 =S 0 . In addition , in the case of e=2, S 0 = Y 1 + Y 2 S 1 = Y 1 X 1 + Y 2 X 2 , ∴Y 1 = X 2 S 0 + S 1 / X 1 + ) The error value Y 1 obtained as above,
Correct by Y 2 .

ところで、ポインターイレージヤー法等によ
つてエラーロケーシヨンの値を正確に知ること
ができる場合には、上述した二重エラー訂正用
のリードソロモン符号によつて4重エラーまで
の訂正が可能となるものであり、それが後述す
る〔方式B〕である。
By the way, if the value of the error location can be accurately known using the pointer erasure method or the like, it is possible to correct up to quadruple errors using the above-mentioned Reed-Solomon code for double error correction. This is [Method B], which will be described later.

〔方式B〕[Method B]

() シンドロームS0〜S3を計算する。 () Calculate syndromes S 0 to S 3 .

(),() エラーロケーシヨンを別の検出方
法で知る。
(), () Find out the error location using another detection method.

() (6)式によりエラー値を求める。() Calculate the error value using equation (6).

先ずe=1,e=2の場合は上述した〔方式
A〕の()と同様である。
First, in the case of e=1 and e=2, it is the same as () of the above-mentioned [method A].

そして、e=3の場合 S0=Y1+Y2+Y3 S1=Y1X1+Y2X3+Y3X3 S2=Y1X1 2+Y2X2 2+Y3X3 2 を解いて Y1=(S2+X3S1)+X2(S1+X3S0)/(X1+X2)(
X1+X3) Y2=(S1+X3S0)+Y1(X1+X3)/(X2+X3) Y3=S0+Y1+Y2 となる。
Then, in the case of e=3, S 0 =Y 1 +Y 2 +Y 3 S 1 =Y 1 X 1 + Y 2 X 3 + Y 3 X 3 S 2 = Y 1 X 1 2 + Y 2 Solve Y 1 =(S 2 +X 3 S 1 )+X 2 (S 1 +X 3 S 0 )/(X 1 +X 2 )(
X 1 + X 3 ) Y 2 = (S 1 + X 3 S 0 ) + Y 1 ( X 1 + X 3 ) /(X 2 +

また、e=4の場合は S0=Y1+Y2+Y3+Y4 S1=Y1X1+Y2X2+Y3X3+Y4X4 S2=Y1X1 2+Y2X2 2+Y3X3 2+Y4X4 2 S3=Y1X1 3+Y2X2 3+Y3X3 3+Y4X4 3 を解いて Y1={(S0X4+S1)X3+(S1X4+S2)}X2+(S1X4
+S2)X3+(S2X4+S3)/(X1+X2)(X1+X3)(X1
X4) Y2=(S0X4+S1)X3+(S1X4+S2)+Y1(X1+X3
(X1+X4)/(X2+X3)(X2+X4) Y3=(S0X4+S1)+Y1(X1+X4)+Y2(X2+X4)/
(X3+X4) Y4=S0+Y1+Y2+Y3 となる。
Also, in the case of e=4, S 0 =Y 1 +Y 2 +Y 3 +Y 4 S 1 =Y 1 X 1 +Y 2 X 2 +Y 3 X 3 +Y 4 X 4 S 2 = Y 1 2 +Y 3 X 3 2 + Y 4 X 4 2 S 3 =Y 1 X 1 3 + Y 2 X 2 3 + Y 3 3 + (S 1 X 4 + S 2 )}X 2 + (S 1 X 4
+S 2 )X 3 +(S 2 X 4 +S 3 )/(X 1 +X 2 )(X 1 +X 3 )(X 1 +
X 4 ) Y 2 = (S 0 X 4 + S 1 ) X 3 + (S 1 X 4 + S 2 ) + Y 1 (X 1 + X 3 )
( X 1 +X 4 )/ ( X 2 +X 3 ) (X 2 + X 4 ) Y 3 = ( S 0
(X 3 +X 4 ) Y 4 =S 0 +Y 1 +Y 2 +Y 3 .

() 上述のようにして求めたY1〜Y4により
訂正を行なう。
() Correction is made using Y 1 to Y 4 obtained as described above.

第1図は以上のような原理に基くリードソロモ
ン符号の実際の復号システムでなるエラー訂正回
路を示す概略構成図である。すなわち、入力端
(IN)を介して導かれる被訂正用のデータ(エラ
ー訂正用としてリードソロモン符号が用いられて
いることは勿論である)は二分されて、一方が後
述する復号動作の間データバツフア11に記憶さ
れると共に、他方が復号動作をなすためのシンド
ローム計算器12以下に導かれる。
FIG. 1 is a schematic configuration diagram showing an error correction circuit which is an actual Reed-Solomon code decoding system based on the above principle. That is, the data to be corrected (of course Reed-Solomon code is used for error correction) led through the input terminal (IN) is divided into two parts, one of which is used as a data buffer during the decoding operation described later. 11, and the other one is led to the syndrome calculator 12 and below for decoding operations.

そして、シンドローム計算器12で計算された
シンドロームはシンドロームバツフア13に記憶
される。
The syndrome calculated by the syndrome calculator 12 is stored in the syndrome buffer 13.

ここで、シンドロームバツフア13の出力部に
接続されたオアゲート14はエラーの有無を指示
するもので、エラーがあると前述したような手順
によつてエラー訂正動作を開始することになる。
Here, the OR gate 14 connected to the output part of the syndrome buffer 13 indicates the presence or absence of an error, and if there is an error, an error correction operation is started according to the procedure described above.

つまり、エラーロケーシヨン多項式計算器15
がエラーロケーシヨン多項式σ(x)の係数を計算し、
エラーロケーシヨン計算器16がエラーロケーシ
ヨン多項式の根を計算し、エラー値計算器17が
エラー値を計算し、これらのエラーロケーシヨン
およびエラー値により上記データバツフア11か
ら出力されるデータを訂正するものである。
In other words, the error location polynomial calculator 15
calculates the coefficients of the error location polynomial σ (x) ,
An error location calculator 16 calculates the root of the error location polynomial, an error value calculator 17 calculates an error value, and corrects the data output from the data buffer 11 using these error locations and error values. It is.

ところで、このような復号システムの各計算器
12,15,16,17は0か否かの検出ならび
に必要な加算、乗算および除算等の代数演算をな
すものであるが、これらについての具体例として
従来第2図に示すように構成されたエラーロケー
シヨン多項式計算器(特公昭56―20575号)が知
られている。
By the way, each of the calculators 12, 15, 16, and 17 of such a decoding system detects whether or not it is 0 and performs necessary algebraic operations such as addition, multiplication, and division. Conventionally, an error location polynomial calculator (Japanese Patent Publication No. 56-20575) constructed as shown in FIG. 2 is known.

すなわち、第2図において21はシンドローム
バツフアであつて、シンドロームSiを記憶するた
めのRAMでなり、該シンドロームバツフア21
にはガロア体GF(2m)の元である各シンドローム
がそれぞれmビツトの2進形式で記憶される。
That is, in FIG. 2, 21 is a syndrome buffer, which is a RAM for storing the syndrome S i .
Each syndrome, which is an element of the Galois field GF (2 m ), is stored in m-bit binary format.

また、22は作業用バツフアであつて、エラー
ロケーシヨン多項式の係数を計算する際に、代数
演算の中間結果および最終結果を記憶するための
RAMでなり、後の演算で使用される部分結果も
該作業用バツフア22に記憶される。
Further, 22 is a work buffer, which is used to store intermediate results and final results of algebraic operations when calculating the coefficients of the error location polynomial.
Partial results used in later calculations are also stored in the working buffer 22.

そして、23は代数演算の順序を指示する順序
制御装置であつて、上記シンドロームバツフア2
1および作業用バツフア22に対してアドレスを
供給して適切な記憶位置をアクセスすると共に、
実行された代数演算結果を調べて次の適切な演算
へ分岐せしめるのに供せられる。
23 is a sequence control device for instructing the order of algebraic operations, and the syndrome buffer 2
1 and working buffer 22 to access appropriate storage locations;
It is used to check the result of the algebraic operation executed and branch to the next appropriate operation.

さらに、24,25はそれぞれガロア体GF
(2m)の元の対数および真数を各別にテーブルの
形式で記憶しているROMでなる対数バツフアお
よび真数バツフアである。
Furthermore, 24 and 25 are each Galois field GF
These are a logarithm buffer and an antilog buffer consisting of ROMs that store the original logarithm and antilog of (2 m ) separately in the form of tables.

ここで、前者の対数バツフア24のアドレスは
元αiの2進表示であり、そのエントリーはαを底
とするαの対数すなわちiであるが、後者の真数
バツフア25のアドレスiにおけるエントリーは
αiの2進表示である。
Here, the address of the former logarithm buffer 24 is the binary representation of the element α i , and its entry is the logarithm of α with α as the base, that is, i, but the entry at the address i of the latter logarithm buffer 25 is This is the binary representation of α i .

例えばガロア体GF(28)の法多項式F(x)を F(x)=x8+x6+x5+x4+1 とすると、その0以外の元はF(x)=0の根αのべ
き乗またはα0〜α7までの線形結合
7i=0 aiαi (但しai=0または1) で表わすことができる。
For example, if the modulus polynomial F (x) of the Galois field GF (2 8 ) is F (x) = x 8 + x 6 + x 5 + x 4 + 1, the elements other than 0 are the powers of the root α of F (x) = 0. or a linear combination from α 0 to α 7
7i=0 a i α i (however, a i =0 or 1).

また、この場合a0〜a7までの8個の係数を取り
出して2進ベクトルとして表わすこともできる。
Furthermore, in this case, eight coefficients from a 0 to a 7 can be extracted and expressed as a binary vector.

例えば α1=0・α0+1・α1+0・α2 +0・α3+0・α4+0・α5+0・α6+0・α7 =(01000000) α7=0・α0+……+0・α6+1・α7 =(00000001) α8=1+α4+α5+α6 =(10001110) α9=α・α8=α+α5+α6+α7 =(01000111) の如くであり、これら以外の元も同様にしてベク
トル表示することができる。
For example, α 1 =0・α 0 +1・α 1 +0・α 2 +0・α 3 +0・α 4 +0・α 5 +0・α 6 +0・α 7 = (01000000) α 7 =0・α 0 +…… +0・α 6 +1・α 7 = (00000001) α 8 = 1 + α 4 + α 5 + α 6 = (10001110) α 9 = α・α 8 = α+α 5 + α 6 + α 7 = (01000111) The element of can also be represented as a vector in the same way.

そして、この場合対数テーブルのアドレス(1
〜255)は元αiの8ビツトの2進ベクトル表示で
あり、対応するエントリは指数iの2進表示であ
る。
In this case, the address of the logarithm table (1
~255) is the 8-bit binary vector representation of element α i , and the corresponding entry is the binary representation of index i.

また、真数テーブルは指数iをアドレスに用
い、エントリはαiの2進ベクトル表示である。
Further, the antilog table uses the index i as an address, and the entry is a binary vector representation of α i .

次に、第2図のエラーロケーシヨン多項式計算
器による実際の代数演算を各別に説明する。
Next, the actual algebraic operations performed by the error location polynomial calculator shown in FIG. 2 will be explained separately.

(1) 加算 元αiおよびαjを加算する場合には、これら2つ
の元がAレジスタ20およびBレジスタ26を介
してエクスクルシブオアゲート27により各ビツ
ト毎に排他的な論理和をとる。これによつて得ら
れる上記2つの元の和の結果はCレジスタ19を
介して上記作業用バツフア22に転送される。
(1) Addition When elements α i and α j are added, these two elements are subjected to an exclusive OR gate 27 via the A register 20 and the B register 26 for each bit. The result of the sum of the two elements thus obtained is transferred to the working buffer 22 via the C register 19.

(2) 0であるか否かの検出 元αiが0であるか否かを調べる場合には、元αi
がHレジスタ28を介してオアゲート29により
論理和がとられる。この結果はMレジスタ30を
介して上記作業用バツフア22に転送される。こ
の場合、Mレジスタ30の内容は元αiが0のとき
のみ0になる。
(2) Detection of whether or not element α i is 0 When checking whether element α i is 0, element α i
are logically summed by the OR gate 29 via the H register 28. This result is transferred to the working buffer 22 via the M register 30. In this case, the contents of the M register 30 become 0 only when the element α i is 0.

(3) 乗算 元αiおよびαjを乗算する場合には、先ずこれら
2つの元が0であるか否かが調べられる。若し、
いずれか一方の元が0であれば、実際に乗算する
までもなく、乗算結果は0である。しかるに、両
方とも0でない場合には、これらの元は上記対数
バツフア24用のアドレスレジスタ31に順次に
ロードされる。そして、対数バツフア24からの
出力iおよびjはDレジスタ32およびEレジス
タ33を介して1の補数加算器34により、28
1を法として1の補数加算が行なわれる。これに
よつて得られる結果i+j=tmod(28−1)はL
レジスタ35を介して上記真数バツフア25用の
アドレスレジスタ36にロードされる。この場
合、真数バツフア25のアドレス入力がtであれ
ば、その出力αtが乗算結果としてGレジスタ37
を介して上記作業用バツフア22に転送される。
(3) Multiplication When multiplying elements α i and α j , first it is checked whether these two elements are 0 or not. If,
If either element is 0, the multiplication result is 0 without actually needing to be multiplied. However, if both are non-zero, these elements are sequentially loaded into the address register 31 for the logarithmic buffer 24. Then, the outputs i and j from the logarithm buffer 24 are converted to 2 8
One's complement addition is performed modulo one. The result i+j=tmod(2 8 -1) obtained by this is L
It is loaded via the register 35 into the address register 36 for the antilog buffer 25. In this case, if the address input of the antilog buffer 25 is t, the output α t is the multiplication result of the G register 37.
The data is transferred to the work buffer 22 via the.

(4) 除算 元αjによるαiの除算(αi/αj)は基本的には上
記(3)の乗算の場合と同様であるが、上記Eレジス
タ33の内容を上記Dレジスタ32の内容から減
算せしめる点で異なつている。つまり、Eレジス
タ33にある元αjの対数が補数化器38により補
数化されてFレジスタ39を介して上記1の補数
加算器34に送るようにした点である。そして、
以下(3)の乗算の場合と同様に処理されるものであ
るが、この場合真数バツフア25の出力が求める
除算の結果つまり商となつているものである。
(4) Division The division of α i by the element α jij ) is basically the same as the multiplication in (3) above, but the contents of the E register 33 are transferred to the D register 32. They differ in that they are subtracted from the content. That is, the logarithm of element α j in the E register 33 is complemented by the complement converter 38 and sent to the one's complement adder 34 via the F register 39. and,
The following processing is performed in the same manner as in the case of multiplication (3), but in this case, the output of the antilog buffer 25 is the result of the division, that is, the quotient.

〔背景技術の問題点〕[Problems with background technology]

しかしながら、以上のような従来のエラー訂正
回路は、そのエラーロケーシヨン多項式計算器に
おける代数演算のうち乗算および除算用として対
数バツフアおよび真数バツフアを必要とするもの
であるが、このために用いられるROM等のメモ
リ容量が膨大なものになるので、LSI化が阻害さ
れて大容量のメモリを外付けしなければならない
という不具合を生じていた。
However, the conventional error correction circuits described above require logarithm buffers and antilog buffers for multiplication and division among the algebraic operations in the error location polynomial calculator. Since the memory capacity of ROM etc. becomes enormous, it hinders the conversion to LSI and creates the problem that large capacity memory must be externally attached.

これは、前述した例の如く1シンボル8ビツト
とした場合で255×8ビツト=2040ビツトの
ROMが2つ必要になり、合計4080ビツトにもな
ることからして容易に窺い知れるところである。
This is 255 x 8 bits = 2040 bits when one symbol is 8 bits as in the example above.
This can be easily seen from the fact that two ROMs are required, totaling 4080 bits.

つまり、従来より知られているガロア体におけ
る乗算装置および除算装置はそれらの元の対数お
よび真数を各別にテーブルの形式で記憶している
大容量メモリでなる対数バツフアや真数バツフア
を必要とするので、それだけエラー訂正回路全体
としての構成が複雑化して高価格につくという問
題を有していた。
In other words, conventionally known multipliers and dividers in Galois fields require logarithm buffers and antilog buffers consisting of large-capacity memories that store the logarithms and antilogarithms of these elements separately in the form of tables. Therefore, there was a problem in that the configuration of the entire error correction circuit became complicated and expensive.

〔発明の目的〕[Purpose of the invention]

そこで、この発明は以上のような点に鑑みてな
されたもので、特にエラーロケーシヨン多項式計
算器部において大容量のメモリを必要とする対数
バツフアや真数バツフアを用いることなくガロア
体における乗算や除算をなし得るようにし、以つ
て構成の簡易化ならびに低価格化に寄与し得るよ
うにした極めて良好なるエラー訂正回路を提供す
ることを目的としている。
Therefore, this invention was made in view of the above points, and it is possible to perform multiplication in the Galois field without using logarithm buffers or antilog buffers that require a large amount of memory, especially in the error location polynomial calculator section. It is an object of the present invention to provide an extremely good error correction circuit that can perform division and thus contribute to simplifying the configuration and lowering the cost.

〔発明の概要〕[Summary of the invention]

すなわち、この発明によるエラー訂正回路は、
エラーロケーシヨン多項式計算器部に必要なガロ
ア体における乗算装置が線形シフトレジスタを用
いて比較的簡単に構成し得るのを利用して、ガロ
ア体における除算を乗算処理に変換してなし得る
ようにしたもので、この際に除算を乗算に変換す
る過程を可及的に短時間処理で実現し得るように
構成した点に特徴を有している。
That is, the error correction circuit according to the present invention is
By taking advantage of the fact that the multiplication device in the Galois field required for the error location polynomial calculator section can be constructed relatively easily using a linear shift register, division in the Galois field can be converted into multiplication processing. It is characterized in that the process of converting division into multiplication can be realized in as short a time as possible.

つまり、ガロア体で表わされる被訂正用リード
ソロモン符号から生成されるシンドロームに基
き、エラーロケーシヨン多項式計算器を用いてエ
ラー訂正用のエラーロケーシヨンおよびエラー値
を計算してなるエラー訂正回路において、前記エ
ラーロケーシヨン多項式計算器部に必要なガロア
体における乗算処理をなすもので線形シフトレジ
スタを用いて構成された乗算装置と、前記エラー
ロケーシヨン多項式計算器部に必要なガロア体に
おける除算処理αi÷αjを乗算処理αi×αM(但しαj
×
αM=1)に変換してなすもので、被除数および
除数に予めαN(但しN<M)を乗じる2系統の線
形シフトレジスタ群を用いて構成された除算装置
とを具備してなることを特徴とするエラー訂正回
路である。
That is, in an error correction circuit that calculates an error location and an error value for error correction using an error location polynomial calculator based on a syndrome generated from a Reed-Solomon code to be corrected expressed in a Galois field, A multiplication device configured using a linear shift register that performs multiplication processing in the Galois field necessary for the error location polynomial calculator section, and a division processing α in the Galois field that is necessary for the error location polynomial calculator section. i ÷ α j is multiplied by α i ×α M (where α j
×
α M = 1), and is equipped with a division device configured using a two-system linear shift register group that multiplies the dividend and divisor in advance by α N (where N<M). This is an error correction circuit characterized by:

〔発明の実施例〕[Embodiments of the invention]

先ず、この発明が適用される光学式(CD形)
デジタルオーデイオデイスク(DAD)再生装置
の概要について説明する。
First, the optical type (CD type) to which this invention is applied
An overview of a digital audio disc (DAD) playback device will be explained.

すなわち、第3図に示すようにデイスクモータ
111によつて回転駆動されるターンテーブル1
12上に装着されたデイスク113は光学式ピツ
クアツプ114によつて再生される。この場合、
光学式ピツクアツプ114は半導体レーザ114
aからの出射光をビームスプリツター114b、
対物レンズ114cを介してデイスク113の信
号面に照射し、該デイスク113に所定の
(EFM)変調およびインタリーブを伴つた形態で
記録されている再生すべきオーデイオ信号のデジ
タル(PCM)化データに対応したピツト(反射
率の異なる凹凸)からの反射光を対物レンズ11
4c、ビームスプリツター 114bを介して4
分割フオトデテクタ114dに導き、該4分割フ
オトデテクタ114dで光電変換された4つの再
生信号を外部に出力可能になされているもので、
自からはピツクアツプ送りモータ115によつて
デイスク113の半径方向に直線駆動される。
That is, as shown in FIG. 3, the turntable 1 is rotated by a disk motor 111.
A disk 113 mounted on the optical pickup 112 is played back by an optical pickup 114. in this case,
The optical pickup 114 is a semiconductor laser 114.
A beam splitter 114b transmits the light emitted from the
It illuminates the signal surface of the disk 113 through the objective lens 114c, and corresponds to the digitized (PCM) data of the audio signal to be reproduced that is recorded on the disk 113 in a form with predetermined (EFM) modulation and interleaving. The reflected light from the pits (irregularities with different reflectances) is reflected by the objective lens 11.
4c, 4 through beam splitter 114b
The four reproduced signals are led to a divided photodetector 114d and photoelectrically converted by the four-divided photodetector 114d, and can be outputted to the outside.
The disk 113 is then linearly driven in the radial direction of the disk 113 by a pick-up feed motor 115.

そして、4分割フオトデテクタ114dからの
4つの再生信号はマトリクス回路116に供給さ
れて所定のマトリクス演算処理が施されることに
より、フオーカスエラー信号(F)、トラツキングエ
ラー信号および高周波信号(RF)に分離される。
The four reproduced signals from the four-division photodetector 114d are then supplied to the matrix circuit 116 and subjected to predetermined matrix calculation processing, thereby generating a focus error signal (F), a tracking error signal, and a high frequency signal (RF). separated into

このうち、フオーカスエラー信号Fはフオーカ
スサーチ回路110からのフオーカスサーチ信号
と共に、前記光学式ピツクアツプ114のフオー
カスサーボ系(FS)を駆動するのに供せられる。
Of these, the focus error signal F is used together with the focus search signal from the focus search circuit 110 to drive the focus servo system (FS) of the optical pickup 114.

また、トラツキングエラー信号(T)は後述す
るシステムコントローラ117を介して与えられ
るサーチ制御信号と共に、前記光学式ピツクアツ
プ114のトラツキングサーボ系(TS)を駆動
するのに且つ前記ピツクアツプ送りモータ115
を(リニアトラツキング)制御するのに供せられ
る。
Further, the tracking error signal (T) is used to drive the tracking servo system (TS) of the optical pickup 114 and the pickup feed motor 115 together with a search control signal given via the system controller 117 (described later).
(linear tracking).

そして、残る高周波信号RFが主再生信号成分
として再生信号処理系118に供給される。すな
わち、この再生信号処理系118は先ず再生信号
をスライスレベル(アイパターン)検出器119
によつて制御される波形整形回路120に導いて
不要なアナログ成分と必要とするデータ成分を分
離し、データ成分のみをPLL型でなる同期クロ
ツク再生回路121および第1の信号処理系12
2のエツジ検出器122aに供給する。
The remaining high frequency signal RF is then supplied to the reproduction signal processing system 118 as the main reproduction signal component. That is, this reproduced signal processing system 118 first passes the reproduced signal to a slice level (eye pattern) detector 119.
The signal is guided to a waveform shaping circuit 120 controlled by a PLL type synchronous clock regeneration circuit 121 and a first signal processing system 12 to separate unnecessary analog components and necessary data components.
2 edge detector 122a.

ここで、同期クロツク再生回路121からの同
期クロツクはデータ復調用として第1の信号処理
系122における同期信号分離用クロツク生成回
路122bに導かれて同期信号分離用クロツクを
生成するのに供せられる。
Here, the synchronous clock from the synchronous clock regeneration circuit 121 is guided to the synchronous signal separation clock generation circuit 122b in the first signal processing system 122 for data demodulation, and is used to generate a synchronous signal separation clock. .

一方、上記エツジ検出器122aを通つた再生
信号は同期信号検出器122cに導かれて上記同
期信号分離用クロツクにより同期信号が分離され
ると共に、復調回路122dに導かれてEFM復
調される。
On the other hand, the reproduced signal that has passed through the edge detector 122a is guided to a sync signal detector 122c, where the sync signal is separated by the sync signal separation clock, and is also guided to a demodulation circuit 122d where it is EFM demodulated.

このうち、同期信号は同期信号保護回路122
eを介して誤動作が生じないように保護された状
態で、上記同期信号分離用クロツクと共に入力デ
ータ処理用タイミング信号生成回路122fに導
かれる。
Among these, the synchronization signal is transmitted to the synchronization signal protection circuit 122.
The signal is guided to the input data processing timing signal generation circuit 122f together with the synchronization signal separation clock through the signal line e in a state where it is protected from malfunction.

また、復調信号はデータバス入出力制御回路1
22gを介して後述する第2の信号処理系123
の入出力制御回路123aに供給されると共に、
そのうちのサブコードであるコントロール信号お
よび表示信号成分がコントロール表示処理回路1
22hおよびサブコード処理回路122iに導か
れる。
Also, the demodulated signal is transmitted to the data bus input/output control circuit 1.
A second signal processing system 123 to be described later via 22g
is supplied to the input/output control circuit 123a of
The control signal and display signal components, which are subcodes, are sent to the control display processing circuit 1.
22h and subcode processing circuit 122i.

そして、サブコード処理回路122iで必要な
エラー検出および訂正が施されたサブコードデー
タはシステムコントローラ用インターフエイス回
路122qを介してシステムコントローラ117
に供給される。
The subcode data subjected to necessary error detection and correction by the subcode processing circuit 122i is sent to the system controller 117 via the system controller interface circuit 122q.
supplied to

ここで、システムコントローラ117はマイク
ロコンピユータ、インタフエイス回路およびドラ
イバ用集積回路等を有してなり、コントロールス
イツチ124からの指令信号によりDAD再生装
置を所望の状態に制御すると共に、上述のサブコ
ード(例えば再生曲のインデツクス情報)を表示
器125に表示せしめるのに供せられている。
Here, the system controller 117 includes a microcomputer, an interface circuit, a driver integrated circuit, etc., and controls the DAD playback device to a desired state by command signals from the control switch 124, and also controls the above-mentioned subcode ( For example, the display 125 is used to display the index information of the played music on the display 125.

なお、上記入力データ処理用タイミング信号生
成回路122fからのタイミング信号はデータセ
レクト回路122jを介して上記データバス入出
力制御回路122gを制御するのに供せられると
共に、周波数検出器122kおよび位相検出器1
22lならびにPWM変調器122mを介して上
記デイスクモータ111を線速度一定CLV方式
で駆動するための自動周波数制御AFCおよび自
動位相制御APCに供せられている。
The timing signal from the input data processing timing signal generation circuit 122f is provided to control the data bus input/output control circuit 122g via the data selection circuit 122j, and is also used to control the data bus input/output control circuit 122g. 1
22l and a PWM modulator 122m for automatic frequency control AFC and automatic phase control APC for driving the disk motor 111 in a constant linear velocity CLV method.

この場合、位相検出器122lにはクリスタル
発振器122nからの発振信号に基いて動作する
システムクロツク生成回路122pからのシステ
ムクロツクが供給されている。
In this case, the phase detector 122l is supplied with a system clock from a system clock generation circuit 122p which operates based on an oscillation signal from a crystal oscillator 122n.

そして、第2の信号処理回路123の入出力制
御回路123aを通つた復調データはエラー検出
および訂正または補正用のシンドローム検出器1
23b、エラーポインタ制御回路123c、訂正
回路123dおよびデータ出力回路123eを介
して必要なエラー訂正、デインタリーブ、エラー
補正等の処理を受けてデジタル―アナログ(D/
A)変換器126に導出される。
The demodulated data passing through the input/output control circuit 123a of the second signal processing circuit 123 is sent to the syndrome detector 1 for error detection and correction or correction.
23b, an error pointer control circuit 123c, a correction circuit 123d, and a data output circuit 123e.
A) Derived to converter 126.

この場合、外部メモリ制御回路123fは上記
データセレクト回路122jと共働して訂正に必
要なデータが書き込まれている外部メモリ127
を制御することにより、上記入出力制御回路12
3aを介して訂正に必要なデータを取り込む如く
なされている。
In this case, the external memory control circuit 123f cooperates with the data selection circuit 122j to select the external memory 127 in which data necessary for correction is written.
By controlling the above input/output control circuit 12
3a, data necessary for correction is taken in.

また、タイミングコントロール回路123gは
前記システムクロツク生成回路122pからのシ
ステムクロツクに基いてエラー訂正および補正な
らびにD/A変換に必要なタイミングコントロー
ル信号を供給する如くなされている。
Further, the timing control circuit 123g is configured to supply timing control signals necessary for error correction and correction and D/A conversion based on the system clock from the system clock generation circuit 122p.

また、ミユーテイング(検出)制御回路123
hは上記エラーポインタ制御回路123cからの
出力またはシステムコントローラ117を介して
与えられるコントロール信号に基いてエラー補正
時およびDAD再生装置の動作開始、終了時等に
必要となる所定のミユーテイング制御をなすのに
供せられている。
Additionally, the mutating (detection) control circuit 123
h performs predetermined muting control necessary for error correction and for starting and ending the operation of the DAD playback device, based on the output from the error pointer control circuit 123c or the control signal given via the system controller 117. It is offered to

そして、上記D/A変換器126でアナログ信
号に戻されたオーデイオ信号はローパスフイルタ
128、増幅器129を介してスピーカ130を
奏鳴するのに供せられる。
Then, the audio signal converted back to an analog signal by the D/A converter 126 is passed through a low-pass filter 128 and an amplifier 129, and then sent to the speaker 130 for sound.

次に、以上のようなDAD再生装置に適用され
たこの発明に係るエラー訂正回路の一実施例につ
き図面を参照して詳細に説明する。
Next, an embodiment of the error correction circuit according to the present invention applied to the DAD playback device as described above will be described in detail with reference to the drawings.

すなわち、第4図は第3図における第2の信号
処理回路123の訂正回路123dに主として含
まれる前述したようなエラーロケーシヨン多項式
計算器部を示しているもので、対数バツフアや真
数バツフアを用いることなくガロア体における乗
算および除算がなし得るようにした乗算装置41
および除算装置42を備えている以外は前述した
第2図のそれと同様である。つまり、エラー訂正
符号として採用されたBCH符号の一種であるリ
ードソロモン符号の復号(エラー訂正)のために
各種の代数演算をなすのがエラーロケーシヨン多
項式計算器に与えられた役目であるが、このうち
加算および0であるか否かの検出については第2
図のそれと同様になされるので同一符号を付して
その説明を省略するものとし、第2図のそれとは
異なる乗算および除算について以下に述べるもの
である。
That is, FIG. 4 shows the above-mentioned error location polynomial calculator section mainly included in the correction circuit 123d of the second signal processing circuit 123 in FIG. A multiplication device 41 that allows multiplication and division in a Galois field without using
It is the same as that of FIG. 2 described above except that it includes a dividing device 42 and a dividing device 42. In other words, the role of the error location polynomial calculator is to perform various algebraic operations for decoding (error correction) the Reed-Solomon code, which is a type of BCH code used as an error correction code. Of these, addition and detection of whether or not it is 0 are explained in the second section.
Since they are performed in the same way as those in the figure, the same reference numerals are given and the explanation thereof will be omitted. Multiplication and division that are different from those in FIG. 2 will be described below.

先ず、ガロア体における乗算についてみてみる
に、例えばガロア体GF(28)の元αiとαjとの乗算
(αi・αj,但しαは法多項式F(x)=X8+X6+X5
X4+1の根である)は αi=C(α)=C0+C1α+……C7α7 αj=D(α)=d0+d1α+……d7α7 と表わした場合(但し、C0〜C7,d0〜d7は0また
は1とする) αi・αj=C(α)・D(α)=d7α7C(α)+d6α
6C(α)……d0C(α) =α6〔αd7C(α)+d6C(α)〕+d5α5C(α)+
……+d0C(α) =α5〔α〔αd7C(α)+d6C(α)〕+d5C(α)〕
+d4α4C(α)+……+d0C(α) 〓 =〔α〔α〔α〔α〔α〔α〔αd7C(α)+d6C(α
)〕+d5C(α)〕+d4C(α)〕 +d3C(α)〕+d2C(α)〕+d1C(α)+d0C(α)
〕 となる。
First, let's look at multiplication in a Galois field. For example, the multiplication of the elements α i and α j of the Galois field GF (2 8 ) (α i · α j , where α is the modulus polynomial F (x) = X 8 + X 6 +X 5
The root of _ _ _ _ _ _ _ _ (However, C 0 to C 7 and d 0 to d 7 are 0 or 1) α i・α j =C(α)・D(α)=d 7 α 7 C(α)+d 6 α
6 C (α)……d 0 C (α) = α 6 [αd 7 C (α) + d 6 C (α)] + d 5 α 5 C (α) +
...+d 0 C (α) = α 5 [α [αd 7 C (α) + d 6 C (α)] + d 5 C (α)]
+d 4 α 4 C(α)+……+d 0 C(α) 〓 =[α〔α〔α〔α〔α〔α〔αd 7 C(α)+d 6 C(α
)〕+d 5 C(α)〕+d 4 C(α)〕+d 3 C(α)〕+d 2 C(α)〕+d 1 C(α)+d 0 C(α)
] becomes.

つまり、このようなガロア体GF(28)の元αi
αjとの乗算は線形シフトレジスタを用いて第5図
に示したように構成される乗算装置41で実現し
得ることを物語つている。
In other words, the story shows that such multiplication of the elements α i and α j of the Galois field GF(2 8 ) can be realized by the multiplier 41 configured as shown in FIG. 5 using a linear shift register. It's on.

すなわち、第5図においてAND0〜AND7は各
一端に上記乗数D(α)の係数であるd0〜d7が上
位ビツトから順にシリアルに供給されると共に、
各他端に上記被乗数C(α)の係数であるC0〜C7
が上位ビツトから順にパラレルに供給されるアン
ドゲートである。また、FF0〜FF7は、上記各ア
ンドゲートAND0〜AND7からの出力が入力一端
に対応して供給されるエクスクルシブオアゲート
EX―OR0〜EX―OR7を介して縦続的に接続され
ると共に帰還接続されることにより線形シフトレ
ジスタSR0を構成するフリツプフロツプ回路であ
る。
That is, in FIG. 5, AND 0 to AND 7 are serially supplied with coefficients d 0 to d 7 of the multiplier D (α) in order from the upper bit to one end of each, and
At each other end are coefficients of the multiplicand C(α), C 0 to C 7
is an AND gate in which the bits are supplied in parallel in order from the most significant bits. Furthermore, FF 0 to FF 7 are exclusive OR gates to which the output from each of the AND gates AND 0 to AND 7 is supplied correspondingly to one input end.
These flip-flop circuits are connected in cascade via EX-OR 0 to EX-OR 7 and are also connected in feedback to form a linear shift register SR 0 .

この場合、4段目と5段目、5段目と6段目お
よび6段目と7段目のフリツプフロツプ回路FF3
―FF4,FF4―FF5,FF5―FF7との段間は各一端
が帰還路に接続されたエクスクルシブオアゲート
EX―OR4′,EX―OR5′,EX―OR6′がさらに介
挿された状態で結合されている。また、各フリツ
プフロツプ回路FF0〜FF7のクロツク入力端CKに
は図示しないクロツク発生器からのクロツクパル
スCPがパラレルに供給される如くなされている。
In this case, the flip-flop circuits FF 3 in the 4th and 5th stages, the 5th and 6th stages, and the 6th and 7th stages are
- FF 4 , FF 4 - FF 5 , FF 5 - Between the stages of FF 7 , there is an exclusive OR gate with each end connected to the return path.
EX-OR 4 ′, EX-OR 5 ′, and EX-OR 6 ′ are further inserted and combined. Further, a clock pulse CP from a clock generator (not shown) is supplied in parallel to the clock input terminal CK of each of the flip-flop circuits FF 0 to FF 7 .

つまり、C(α)の係数C0〜C7がビツトシリア
ルに入力されることにより、先ずX0が計算され、
その後X1,X2……と続いて8ビツト入力終了時
に線形シフトレジスタSR0にはX7すなわちC
(α)・D(α)が実現されるもので、各フリツプ
フロツプ回路FF0〜FF7の出力x0,x1……x7が乗
算結果を与えることになる。
In other words, by inputting the coefficients C 0 to C 7 of C(α) in bit serial format, X 0 is first calculated,
After that, X 1 , X 2 , and so on, and when the 8-bit input ends , X 7 , that is, C
(α)·D(α) is realized, and the outputs x 0 , x 1 . . . x 7 of each flip-flop circuit FF 0 to FF 7 give the multiplication result.

ここで、X0〜X7は次の通りである。 Here, X 0 to X 7 are as follows.

X0=d7C(α) X1=αX0+d6C(α) X2=αX1+d5C(α) X3=αX2+d4C(α) X4=αX3+d3C(α) X5=αX4+d2C(α) X6=αX5+d1C(α) X7=αX6+d0C(α)=(x0,x1……x7) 次に、ガロア体における除算についてみてみる
に、例えばガロア体GF(28)の元αiとαjとの除算
αi÷αj(但しαは法多項式F(x)=x8+x6+x5+x4
1の根とする)は αi÷αj=(αi・αM)÷(αj・αM) と同値である(但し、Mは整数) この場合、αj・αM=α255=α0=1ならば αi÷αj=αi・αM となる。
X 0 = d 7 C (α) X 1 = αX 0 + d 6 C (α) X 2 = αX 1 + d 5 C (α) X 3 = αX 2 + d 4 C (α) X 4 = αX 3 + d 3 C (α) X 5 = αX 4 + d 2 C ( α) X 6 = αX 5 + d 1 C ( α ) , looking at division in a Galois field, for example, division of elements α i and α j of Galois field GF(2 8 ) α i ÷ α j (where α is the modulus polynomial F (x) = x 8 + x 6 + x 5 +x 4
1 root) is equivalent to α i ÷ α j = (α i・α M ) ÷ (α j・α M ) (where M is an integer) In this case, α j・α M = α 255 If = α 0 = 1, then α i ÷ α j = α i・α M.

つまり、ガロア体GF(28)の元αiとαjとの除算
(αi÷αj)をなす場合、被除数αi、除数αjにそれぞ
れαを何回か乗じて行く過程で、M回αを乗じた
ときにαj・αM=1になつたとすれば、そのときに
おける被除数αiとαMとの積であるαi・αMが除算結
果であることに外ならないことを利用して、乗算
処理で所期の除算をなせることになる。
In other words, when performing division (α i ÷ α j ) between elements α i and α j of the Galois field GF(2 8 ), in the process of multiplying the dividend α i and the divisor α j by α several times, If α j・α M = 1 when multiplied by α M times, then α i・α M , which is the product of the dividend α i and α M , is the result of division. By using , the desired division can be performed in the multiplication process.

ここで、乗算処理については前述したような線
形シフトレジスタによる乗算装置41を用いてな
すことは言う迄もない。
Here, it goes without saying that the multiplication process is performed using the multiplication device 41 using a linear shift register as described above.

ところで、この場合αj・αM=α255=α0=1を得
るために必要となるαを乗じる回数は、除数αj
α1のときに最高で254回(つまりM=254)となる
が、単純にその通りになせるようにしたのでは乗
算処理に要する時間が徒らに長時間化してしまう
ので好ましくない。
By the way, in this case, the number of times of multiplication by α required to obtain α j・α M = α 255 = α 0 = 1 is the divisor α j =
When α is 1 , the maximum number of times is 254 (that is, M = 254), but if this were simply done, the time required for the multiplication process would become unnecessarily long, which is not preferable.

そこで、この発明では被除数αi、除数αjに対し
予め適数N回だけαを乗じておくことにより、実
際に必要となるαを乗じる回数を低減して短時間
で乗算処理(延いては除算処理)がなせるように
しようとするものである。
Therefore, in this invention, the dividend α i and the divisor α j are multiplied by α an appropriate number N times in advance, thereby reducing the number of times actually required for multiplication by α and speeding up the multiplication process (and by extension, The purpose of this is to make it possible to perform division processing (division processing).

第6図は以上のようにしてガロア体における除
算を乗算処理で実現する除算装置42の具体例を
示すもので、この場合上述のNとしてN1=64、
N2=128、N3=192つまりα64、α128、α192を予め
乗じるようにしたものである。
FIG. 6 shows a specific example of the division device 42 that realizes division in the Galois field by multiplication processing as described above. In this case, the above-mentioned N is N 1 =64,
N 2 = 128, N 3 = 192, that is, α 64 , α 128 , and α 192 are multiplied in advance.

すなわち、除数αjデータは直接あるいはα64
算回路51、α128乗算回路52、α192乗算回路5
3を介して線形シフトレジスタA1,A2,A3,A4
にセツトされる。ここで、線形シフトレジスタ
A1,A2,A3,A4は前述した第5図の線形シフト
レジスタSR0と同様に構成されているもので、ア
ンドゲートAND11を介して与えられるクロツク
パルスCpによりシフトされ、1シフト毎にαが
乗算されることになる。
That is, the divisor α j data is directly transmitted or transmitted through the α 64 multiplication circuit 51, α 128 multiplication circuit 52, and α 192 multiplication circuit 5.
3 through linear shift registers A 1 , A 2 , A 3 , A 4
is set to Here, the linear shift register
A 1 , A 2 , A 3 , and A 4 are constructed in the same way as the linear shift register SR 0 shown in FIG . It will be multiplied by α for each shift.

そして、シフトレジスタA1,A2,A3,A4の各
出力が供給される1検出回路54,55,56,
57は、レジスタの内容が(10000000)=1にな
つたときに1検出出力を生じるようになつてい
る。この1検出回路54,55,56,57の各
出力が供給される4入力ノアゲートNOR10は、
当該1検出出力のいずれかが生じたときに、その
出力が“0”となることによつて前記アンドゲー
トAND10を介してクロツクパルスCpの通過をそ
れ迄の許容状態から禁止状態とする如く制御して
いる。
1 detection circuits 54, 55, 56, which are supplied with the outputs of the shift registers A1 , A2 , A3 , A4 ,
57 is designed to produce a 1 detection output when the contents of the register become (10000000)=1. The 4-input NOR gate NOR 10 to which each output of the 1 detection circuits 54, 55, 56, and 57 is supplied is as follows:
When any of the 1 detection outputs occurs, the output becomes "0" and the passage of the clock pulse Cp is changed from the permissible state to the prohibited state through the AND gate AND10 . It's in control.

また、被除数αiデータも上記除数αjデータと同
様に直接あるいはα64乗算回路58、α128乗算回
路59、α192乗算回路60を介して線形シフトレ
ジスタB1,B2,B3,B4にセツトされた後、上記
クロツクパルスCpによりαが適数回乗算される
ことになる。
In addition, the dividend α i data is also transferred directly or via the α 64 multiplication circuit 58, α 128 multiplication circuit 59, and α 192 multiplication circuit 60 to the linear shift registers B 1 , B 2 , B 3 , B as well as the divisor α j data. After being set to 4 , α is multiplied by the clock pulse C p a suitable number of times.

ここで、シフトレジスタB1,B2,B3,B4の各
出力は上記1検出回路54,55,56,57か
らの各出力と対応的にアンド回路61,62,6
3,64により、アンドがとられることになる。
Here, each output of the shift registers B 1 , B 2 , B 3 , B 4 corresponds to each output from the above-mentioned 1 detection circuits 54 , 55 , 56 , 57 and the AND circuits 61 , 62 , 6 .
3,64, an AND is taken.

そして、アンド回路61,62,63,64の
各出力をオア回路65に通すことで、αi÷αjの除
算結果を得ることができる。
Then, by passing each output of the AND circuits 61, 62, 63, and 64 to the OR circuit 65, a division result of α i ÷ α j can be obtained.

第7図は以上における1検出回路54〜57の
具体例を示すもので、線形シフトレジスタA1
A4からの各出力のうちα1に対応する出力のみに
インバータI10を介して且つそれ以外のα2〜α7
対応する出力が直接的に加えられる8入力ノアゲ
ートNOR11で構成された場合である。
FIG. 7 shows a specific example of the 1 detection circuits 54 to 57 in the above, and shows the linear shift registers A 1 to 57.
It is composed of an 8-input NOR gate NOR 11 in which only the output corresponding to α 1 from each output from A 4 is applied via an inverter I 10 , and the outputs corresponding to other α 2 to α 7 are directly applied. This is the case.

第8図は以上におけるアンド回路61〜64の
具体例を示すもので、各入力一端が線形シフトレ
ジスタB1〜B4からの各出力が対応的に供給され
ると共に、各入力他端に1検出回路54〜57の
各出力が対応的に共通に供給される8個の2入力
アンドゲートAND20〜AND27で構成された場合
である。
FIG. 8 shows a specific example of the AND circuits 61 to 64 described above, in which each input terminal is supplied with each output from the linear shift registers B 1 to B 4 correspondingly, and each input terminal is supplied with one terminal at the other end. This is a case where the outputs of the detection circuits 54 to 57 are constructed of eight two-input AND gates AND20 to AND27 , which are respectively supplied in common.

第9図は以上におけるオア回路65の具体例を
示すもので、上記アンド回路61〜64の各出力
が対応的に供給される8個の4入力オアゲート
OR20〜OR27で構成された場合である。
FIG. 9 shows a specific example of the OR circuit 65 described above, which includes eight 4-input OR gates to which each output of the AND circuits 61 to 64 is supplied correspondingly.
This is a case where it is composed of OR 20 to OR 27 .

第10図は以上におけるα64乗算回路58の具
体例を示すもので、この場合αjが αj=B(α) =b7α7+b6α6+……b1α+b0 で表わされるものとして、次のような原理によつ
ている(但し、b1〜b7は0または1である)。
FIG. 10 shows a specific example of the above α 64 multiplier circuit 58, in which case α j is expressed as α j =B(α) =b 7 α 7 +b 6 α 6 +...b 1 α+b 0 It is based on the following principle (however, b 1 to b 7 are 0 or 1).

すなわち、α64=α7+α6+α5であるので α64・B(α)=(α7+α6+α5)(b7α7+……+
b1α+b0) =(b0+b1+b5+b7)α7+(b0+b4+b6)α6+(b0
+b1+b3)α5+(b1+b2+b5)α4 +(b4+b5)α3+(b3+b4)α2+(b2+b3+b7)α
+(b1+b2+b6) となる。つまり、このような演算は第10図に示
したようなエクスクルシブオア群EX―OR11
EX―OR25で実現されるもので、B(α)が入力
されればα64・B(α)なる乗算出力を得ることが
できる。
In other words, α 64 = α 7 + α 6 + α 5 , so α 64・B(α) = (α 7 + α 6 + α 5 ) (b 7 α 7 +……+
b 1 α + b 0 ) = (b 0 + b 1 + b 5 + b 7 ) α 7 + (b 0 + b 4 + b 6 ) α 6 + (b 0
+b 1 +b 3 ) α 5 + (b 1 + b 2 + b 5 ) α 4 + (b 4 + b 5 ) α 3 + (b 3 + b 4 ) α 2 + (b 2 + b 3 + b 7 ) α
+(b 1 +b 2 +b 6 ). In other words, such an operation is performed using the exclusive or group EX―OR 11 ~ as shown in Figure 10.
It is realized by EX-OR 25 , and if B(α) is input, a multiplication output of α 64 ·B(α) can be obtained.

なお、α128乗算回路59、α192乗算回路60に
ついても上述したα64乗算回路58に準じて容易
に構成することができる。
Note that the α 128 multiplication circuit 59 and the α 192 multiplication circuit 60 can also be easily configured in accordance with the α 64 multiplication circuit 58 described above.

次に、第6図の具体例においてα200÷α180=α20
を実行する場合について説明する。
Next, in the specific example of Figure 6, α 200 ÷ α 180 = α 20
We will explain the case when executing.

この場合、シフトレジスタA1〜A4,B1〜B4
は、次のようにセツトされる。
In this case, shift registers A 1 to A 4 , B 1 to B 4
is set as follows.

A1:α180 A2:α18064=α244 A3:α180128=α308=α53 A4:α180192=α372=α117 B1:α200 B2:α20064=α264=α9 B3:α200128=α328=α73 B4:α200192=α302=α137 そして、クロツクパルスCpが11個入つてきた
状態で、シフトレジスタA2の内容がα255=1とな
ることによつて、それが1検出回路55で検出さ
れるとクロツクパルスCpの供給が停止されるよ
うになる。
A 1 : α 180 A 2 : α 180 . α 64 = α 244 A 3 : α 180 . α 128 = α 308 = α 53 A 4 : α 180 . α 192 = α 372 = α 117 B 1 : α 200 B 2 : α 200 . α 64 = α 264 = α 9 B 3 : α 200 . α 128 = α 328 = α 73 B 4 : α 200 . α 192 = α 302 = α 137 And 11 clock pulses C p In this state, the contents of shift register A 2 become α 255 =1, and when this is detected by 1 detection circuit 55, the supply of clock pulse C p is stopped.

このとき、シフトレジスタB2の内容はα20とな
つており、このα20なる出力がアンド回路62お
よびオア回路65を介して出力されるものであ
る。
At this time, the content of shift register B 2 is α 20 , and the output α 20 is outputted via AND circuit 62 and OR circuit 65 .

このようにして、第6図の具体例によればαを
乗じる回数を最高でも63回(αj=α1のとき)に低
減した状態で所期の除算を乗算処理でなせるもの
である。
In this way, according to the specific example shown in Figure 6, the desired division can be performed by multiplication while reducing the number of times α is multiplied to at most 63 times (when α j = α 1 ). .

この場合、線形シフトレジスタ対をさらに多く
しておけば、αを乗じる回数をより少ない回数に
軽減することができる。
In this case, by increasing the number of linear shift register pairs, the number of times of multiplication by α can be reduced.

第11図は以上のようにガロア体における除算
を乗算処理で実現する除算装置の他の具体例を示
すもので、この場合上述のNとしてN1=1,N2
=2,N3=3つまりα1,α2,α3を予め乗じると
共に、N0=4つまり1回毎にα4を乗じるように
したものである。
FIG. 11 shows another specific example of a division device that realizes division in a Galois field by multiplication processing as described above. In this case, the above N is N 1 =1, N 2
=2, N 3 =3, that is, α 1 , α 2 , α 3 are multiplied in advance, and N 0 =4, that is, α 4 is multiplied every time.

すなわち、除数αjデータは直接あるいはα1乗算
回路51′,α2乗算回路52′,α3乗算回路53′
を介してα4乗算回路を構成する線形シフトレジス
タA1′,A2′,A3′,A4′にセツトされる。
That is, the divisor α j data is directly transmitted or transmitted through the α 1 multiplication circuit 51′, α 2 multiplication circuit 52′, and α 3 multiplication circuit 53′.
are set to linear shift registers A 1 ′, A 2 ′, A 3 ′, and A 4 ′ that constitute the α 4 multiplier circuit.

ここで、線形シフトレジスタA1′,A2′,A3′,
A4′は第12図に示すようにフリツプフロツプ回
路FF10〜FF17をエクスクルシブオアゲートEX―
OR′10〜EX―OR′31を介して適宜縦続的に且つ帰
還的に接続して構成されるもので、アンドゲート
AND10を介して与えられるクロツクパルスCp
よりシフトされ、1シフト毎にα4が乗算される如
くしたα4乗算機能を有している。
Here, linear shift registers A 1 ′, A 2 ′, A 3 ′,
A4 ' is the flip-flop circuit FF10 to FF17 connected to the exclusive OR gate EX- as shown in Figure 12.
It is configured by appropriately connecting cascade and feedback via OR' 10 to EX-OR' 31 , and is an AND gate.
It is shifted by a clock pulse C p applied via AND 10 , and has an α 4 multiplication function such that it is multiplied by α 4 every shift.

そして、シフトレジスタA1′,A2′,A3′,A4′の
各出力が供給される1検出回路54′,55′,5
6′,57′は第12図に示したようにインバータ
I10と8入力ノアゲートNOR10によつて構成され
ているもので、レジスタの内容が(10000000)=
1になつたときに1検出出力を生じるようになさ
れている。この1検出回路54′,55′,56′,
57′の各出力が供給される4入力ノアゲート
NOR11は当該1検出出力のいずれかが生じたと
きに、その出力が“0”となることによつて前記
アンドゲートAND10を介してクロツクパルスCp
の通過をそれ迄の許容状態から禁止状態とする如
く制御している。
1 detection circuits 54', 55', 5 to which respective outputs of shift registers A1 ', A2 ', A3 ', and A4 ' are supplied;
6' and 57' are inverters as shown in Figure 12.
It is composed of I 10 and 8-input NOR gate NOR 10 , and the contents of the register are (10000000) =
When the signal becomes 1, a 1 detection output is generated. These 1 detection circuits 54', 55', 56',
4-input NOR gate supplied with each output of 57'
NOR 11 generates a clock pulse C p through the AND gate AND 10 when the output becomes "0" when any of the 1 detection outputs occurs.
It is controlled so that the passage of the vehicle is changed from the previously permitted state to the prohibited state.

また、被除数αiデータも上記除数αjデータと同
様に直接あるいはα1乗算回路58′,α2乗算回路
59′,α3乗算回路60′を介して第12図に示し
たようなα4乗算回路を構成する線形シフトレジス
タB1′,B2′,B3′,B4′にセツトされた後、上記ク
ロツクパルスCpによりα4が適数回乗算されるこ
とになる。
Similarly to the divisor α j data, the dividend α i data can also be converted to α 4 as shown in FIG. After being set in the linear shift registers B 1 ', B 2 ', B 3 ', and B 4 ' constituting the multiplication circuit, the clock pulse C p is multiplied by α 4 an appropriate number of times.

ここで、シフトレジスタB1′,B2′,B3′,B4′の
各出力は上記1検出回路54′,55′,56′,
57′からの各出力と対応的に第8図に示したよ
うに構成されるアンド回路61′,62′,63′,
64′により、アンドがとられることになる。
Here, each output of the shift registers B 1 ′, B 2 ′, B 3 ′, B 4 ′ is sent to the first detection circuit 54 ′, 55 ′, 56 ′,
AND circuits 61', 62', 63', configured as shown in FIG. 8 corresponding to each output from 57'.
64' causes an AND to be taken.

そして、アンド回路61′,62′,63′,6
4′の各出力を第9図に示したように構成される
オア回路65に通すことで、αi÷αjの除算結果を
得ることができる。
And AND circuits 61', 62', 63', 6
By passing each output of 4' through an OR circuit 65 configured as shown in FIG. 9, a division result of α i ÷ α j can be obtained.

第13図は以上におけるα1乗算回路58′の具
体例を示すもので、この場合αjが αj=B(α) =b7α7+b6α6+……+b1α+b0 で表わされるものとして、次のような原理によつ
ている。つまり、α・B(α)は α・B(α)=b7α8+b6α7+……+b1α2+b0α=b
6α7+(b5+b7)α6 +(b4+b7)α5+(b3+b7)α4+b2α3+b1α2+b0
α なので、第13図に示したようなエクスクルシブ
オアEX―OR32〜EX―OR34を用いて実現され、
B(α)が入力されればα・B(α)なる乗算出力
を得ることができる。
FIG. 13 shows a specific example of the α 1 multiplication circuit 58' in the above case, where α j is expressed as α j =B(α) =b 7 α 7 +b 6 α 6 +...+b 1 α+b 0. It is based on the following principle. In other words, α・B(α) is α・B(α)=b 7 α 8 +b 6 α 7 +……+b 1 α 2 +b 0 α=b
6 α 7 + (b 5 + b 7 ) α 6 + (b 4 + b 7 ) α 5 + (b 3 + b 7 ) α 4 + b 2 α 3 + b 1 α 2 + b 0
α, so it is realized using exclusive OR EX-OR 32 ~ EX-OR 34 as shown in Figure 13,
If B(α) is input, a multiplication output of α·B(α) can be obtained.

なお、α2乗算回路59′,α3乗算回路60′につ
いても上述したα乗算回路58′に準じて容易に
構成することができる。
Incidentally, the α 2 multiplication circuit 59' and the α 3 multiplication circuit 60' can also be easily constructed in accordance with the above-mentioned α multiplication circuit 58'.

而して、以上の構成において被除数αi、除数αj
は直接あるいはα,α2,α3の各乗算回路58′〜
60′を介してα4乗算回路である線形シフトレジ
スタA1′〜A4′,B1′〜B4′に当初
A1′:αj A2′:αj+1 A3′:αj+2 A4′:αj+3 B1′:αi B2′:αi+1 B3′:αi+2 B4′:αi+3 にセツトされた後、クロツクパルスCpが入力さ
れる毎にα4が乗じられる。そして、この過程でレ
ジスタA1′〜A4′のうちのいずれかの内容がα255
1になつた時点で1検出回路54′〜57′により
クロツクパルスCpが停止されると共に、上記α255
=1になつたレジスタA1′〜A4′に対応するレジス
タB1′〜B4′の内容が除算結果としてアンド回路6
1′〜64′、オア回路65を介して出力される。
Therefore, in the above configuration, the dividend α i and the divisor α j
are directly or α, α 2 , α 3 multiplier circuits 58' to
Initially, the linear shift registers A 1 ′ to A 4 ′, B 1 ′ to B 4 ′, which are α 4 multiplication circuits, are
A 1 ′: α j A 2 ′: α j+1 A 3 ′: α j+2 A 4 ′: α j+3 B 1 ′: α i B 2 ′: α i+1 B 3 ′: α i +2 B 4 ': After being set to α i+3 , it is multiplied by α 4 every time the clock pulse C p is input. In this process, the contents of any one of registers A 1 ′ to A 4 ′ become α 255 =
When the clock pulse C p becomes 1, the 1 detection circuits 54' to 57' stop the clock pulse C p and the above α 255
The contents of registers B 1 ′ to B 4 ′ corresponding to registers A 1 ′ to A 4 ′ that have become 1 are sent to the AND circuit 6 as the division result.
1' to 64' are output via the OR circuit 65.

次に、第11図の具体例においてα10÷α240
α10-240=α-230=α25なる除算を実行する場合につ
いて説明する。
Next, in the specific example of FIG. 11, α 10 ÷ α 240 =
A case will be described in which the division α 10-240 = α −230 = α 25 is executed.

この場合レジスタA1′〜A4′,B1′〜B4′は
A1′:α240 A2′:α241 A3′:α242 A4′:α243 B1′:α10 B2′:α11 B3′:α12 B4′:α13 のように当初セツトされるが、クロツクパルス
Cpが3個入つてきた状態でα4・α4・α4=α12が乗
じられることにより
A1′:α252 B2′:α253 A3′:α254 A4′:α255 B1′:α22 B2′:α23 B3′:α24 B4′:α25 の如く、レジスタA4′がα255=1となるのでこれ
に対応するレジスタB4′の内容α25が商として出力
されるものである。
In this case, registers A 1 ′ to A 4 ′, B 1 ′ to B 4 ′ are
A 1 ′: α 240 A 2 ′: α 241 A 3 ′: α 242 A 4 ′: α 243 B 1 ′: α 10 B 2 ′: α 11 B 3 ′: α 12 B 4 ′: α 13 Initially set to
By multiplying α 4・α 4・α 4 = α 12 with 3 C ps ,
A 1 ′: α 252 B 2 ′: α 253 A 3 ′: α 254 A 4 : α 255 B 1 ′: α 22 B 2 ′: α 23 B 3 ′: α 24 B 4 ′: α 25 , the register A 4 ' has α 255 =1, so the corresponding content α 25 of the register B 4 ' is output as the quotient.

このように、第11図の具体例では1回毎にα4
を乗じることにより、必要となるαの乗算回数を
最高でも63回(αj=α1のとき)に低減した状態で
所期の除算を乗算処理でなせるものである。
In this way, in the specific example of FIG. 11, α 4
By multiplying by , the desired division can be performed by multiplication processing while reducing the number of required multiplications of α to 63 times at most (when α j1 ).

また、この場合線形シフトレジスタを5組、α5
乗算回路を使用すれば、必要となるαの乗算回数
を最高でも50回に低減し得る如く、それを拡張す
ることによつてさらなる低減を図ることが可能で
ある。
In addition, in this case, five sets of linear shift registers, α 5
If a multiplication circuit is used, the number of required multiplications of α can be reduced to 50 times at most, and further reductions can be achieved by expanding it.

そして、以上のようなエラー訂正回路は、エラ
ーロケーシヨン多項式計算器部に必要なガロア体
における乗算および除算処理のために、ガロア体
GF(2m)の元の対数および真数をテーブルの形式
で記憶するROM等の大容量メモリでなる対数バ
ツフアや真数バツフアを用いることなく、乗算処
理を単に線形シフトレジスタを用いるだけでなし
得るようにすると共に除算を乗算に変換して乗算
処理でなせるようにしたもので、この際に除算を
乗算処理に変換する過程を可及的に短時間処理で
実現し得るという効用を有している。
The error correction circuit described above uses a Galois field for multiplication and division processing in the Galois field, which is necessary for the error location polynomial calculator section.
The multiplication process can be performed simply by using a linear shift register without using a logarithm buffer or an antilog buffer consisting of a large-capacity memory such as a ROM that stores the original logarithm and antilog of GF (2 m ) in the form of a table. At the same time, division is converted to multiplication so that it can be done by multiplication processing.In this case, it has the advantage of being able to realize the process of converting division into multiplication processing in as short a time as possible. are doing.

なお、この発明は上記し且つ図示した実施例の
みに限定されることなく、この発明の要旨を逸脱
しない範囲で種々の変形や適用が可能であること
は言う迄もない。
It goes without saying that the present invention is not limited to the embodiments described above and illustrated, and that various modifications and applications can be made without departing from the gist of the invention.

例えば、テープPCM等のデジタル化された情
報の伝送や記録再生システム機器に好適するもの
である。
For example, it is suitable for digitized information transmission and recording/reproducing system equipment such as tape PCM.

〔発明の効果〕〔Effect of the invention〕

従つて、以上詳述したようにこの発明によれ
ば、特にエラーロケーシヨン多項式計算器部にお
いて大容量のメモリを必要とする対数バツフアや
真数バツフアを用いることなくガロア体における
乗算や除算をなし得るようにし、以つて構成の簡
易化ならびに低価格化に寄与し得るようにした極
めて良好なるエラー訂正回路を提供することが可
能となる。
Therefore, as detailed above, according to the present invention, multiplication and division in the Galois field can be performed without using logarithm buffers or antilog buffers that require a large capacity of memory, especially in the error location polynomial calculator section. Thus, it is possible to provide an extremely good error correction circuit that can contribute to simplifying the configuration and reducing the cost.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図はリードソロモン符号の復号システムで
なるエラー訂正回路を示す概略構成図、第2図は
従来のエラーロケーシヨン多項式計算器を示す構
成図、第3図はこの発明が適用されるDAD再生
装置の概要を示す構成図、第4図はこの発明の一
実施例を示す要部の構成図、第5図は第4図の乗
算装置部の具体例を示す構成図、第6図は第4図
の除算装置部の具体例を示す構成図、第7図乃至
第10図は第6図各部の具体例を示す構成図、第
11図は第4図の除算装置部の他の具体例を示す
構成図、第12図、第13図は第11図の各部の
具体例を示す構成図である。 21…シンドロームバツフア、22…作業バツ
フア、23…順序制御装置、19,20,26,
28,30,33…レジスタ、29…オア回路、
27…エクスクルシブオアゲート、41…乗算装
置、42…除算装置。
Fig. 1 is a schematic block diagram showing an error correction circuit comprising a Reed-Solomon code decoding system, Fig. 2 is a block diagram showing a conventional error location polynomial calculator, and Fig. 3 is a DAD playback to which this invention is applied. FIG. 4 is a block diagram showing an outline of the device, FIG. 4 is a block diagram of main parts showing an embodiment of the present invention, FIG. 5 is a block diagram showing a specific example of the multiplication unit shown in FIG. 4, and FIG. 4 is a block diagram showing a specific example of the division device section, FIGS. 7 to 10 are block diagrams showing a specific example of each part in FIG. 6, and FIG. 11 is another specific example of the division device section in FIG. 4. FIGS. 12 and 13 are block diagrams showing specific examples of each part in FIG. 11. 21...Syndrome buffer, 22...Work buffer, 23...Sequence control device, 19, 20, 26,
28, 30, 33...Register, 29...OR circuit,
27... Exclusive OR gate, 41... Multiplication device, 42... Division device.

Claims (1)

【特許請求の範囲】 1 それぞれmビツトからなるM個の情報シンボ
ルと4個の検査シンボルを含み g(x)=(X+1)(X+α) (X+α2)(X+α3) なる生成多項式(但しαはガロア体GF(2m)の原
子元)で定義される二重エラー訂正用BCHコー
ドを受けて f(x)=X2+σ1X+σ2 なるエラーロケーシヨン多項式の根を解くことに
より、上記二重エラー訂正用BCHコード中のエ
ラーを訂正するエラー訂正回路であつて、 上記二重エラー訂正BCHコードを記憶する記
憶手段と、 上記二重エラー訂正BCHコードから4個のシ
ンドロームS0,S1,S2およびS3を生成するシンド
ローム生成手段と、 上記4個のシンドロームS0,S1,S2およびS3
基いて σ1=S0S3+S1S2/S1 2+S0S2, σ2=S1S3+S2 2/S1 2+S0S2 なる加算、乗算および除算を含む所定の演算を遂
行することにより、上記エラーロケーシヨンを多
項式f(x)の係数σ1,σ2を算出すると共に、こ
の係数σ1,σ2を上記f(x)に代入してf(x)の
根を算出し、且つこの根からエラー値を算出する
エラーロケーシヨンおよびエラー値算出手段と、 上記エラー値に従つて上記記憶手段に記憶され
ている上記二重エラー訂正用BCHコード中のエ
ラーを訂正する訂正手段とを具備し、 上記エラーロケーシヨンおよびエラー値算出手
段が上記所定の乗算をなすために、第1の線形シ
フトレジスタでなる乗算装置を備えると共に、 上記エラーロケーシヨンおよびエラー値算出手
段が上記所定の除算を乗算に変換するために、除
数αjデータおよび 被除数 αiデータが各別にセ
ツトされる第2および第3の線形シフトレジスタ
と、上記第2の線形シフトレジスタの出力に接続
される第1の“1”検出回路と、上記第1の
“1”検出回路が出力を生じない回数を検出する
共に、この検出結果に従つて上記第2および第3
の線形シフトレジスタをM回シフトするシフト信
号を生成する第1のシフト手段と、上記第1の
“1”検出回路がαj・αM=1を検出したときに得
られる上記第1の“1”検出回路からの“1”検
出出力を受けて、上記第1のシフト手段によつて
制御される上記第2の線形シフトレジスタの出力
がαj・αM=1になつたときに得られる上記第3の
線形シフトレジスタの出力αi・αMを上記除数デー
タαjと被除数データαi間の除算の商 として出力
する第1の出力手段と、上記除数データαjおよび
被除数データαiとに対し予め各別に所定の乗数αN
を乗じるそれぞれ少なくとも1つの第1および第
2の乗算回路と、上記第1および第2の乗算回路
の各出力が各別にセツトされるそれぞれ少なくと
も1つの第4および第5の線形シフトレジスタ、
上記第4の線形シフトレジスタの出力に接続され
る少なくとも1つの第2の“1”検出回路と、上
記第2の“1”検出回路が出力を生じない回数を
検出する 共に、この検出結果に従つて上記第4
および第5の線形シフトレジスタをM回シフトす
るシフト信号を生成する第2のシフト手段と、上
記第2の“1”検出回路がαj・αN・αM=1を検
出したときに得られる上記第2の“1”検出回路
からの“1”検出出力を受けて、上記第2のシフ
ト手段によつて制御される上記第4の線形シフト
レジスタの出力がαj・αN・αM=1になつたとき
に得られる上記第5の線形シフトレジスタの出力
αi・αN・αMを上記除数データαjと被除数データαi
間の除算の商として出力する第2の出力手段とを
備えたことを特徴とするエラー訂正回路。
[Claims] 1. A generator polynomial ( where α is the atomic element of the Galois field GF (2 m )), and by solving the roots of the error location polynomial f(x) = X 2 + σ 1 X + σ 2 , the above An error correction circuit for correcting errors in a BCH code for double error correction, comprising a storage means for storing the double error correction BCH code, and 4 syndromes S 0 , S from the double error correction BCH code. 1 , S 2 and S 3 , and based on the above four syndromes S 0 , S 1 , S 2 and S 3 , σ 1 =S 0 S 3 +S 1 S 2 /S 1 2 +S 0 S 2 , σ 2 = S 1 S 3 +S 2 2 /S 1 2 +S 0 S 2 By performing predetermined operations including addition, multiplication, and division, the above error location can be converted to the polynomial f(x). An error location where the coefficients σ 1 and σ 2 are calculated, and the root of f(x) is calculated by substituting the coefficients σ 1 and σ 2 into the above f(x), and an error value is calculated from this root. and an error value calculation means, and a correction means for correcting an error in the double error correction BCH code stored in the storage means according to the error value, In order to perform the predetermined multiplication, the means includes a multiplication device consisting of a first linear shift register, and in order to convert the predetermined division into multiplication, the error location and error value calculation means include a divisor α j second and third linear shift registers in which data and dividend α i data are set separately; a first "1" detection circuit connected to the output of the second linear shift register; The “1” detection circuit detects the number of times that no output is produced, and according to this detection result, the second and third
a first shift means that generates a shift signal for shifting the linear shift register M times ; In response to the "1" detection output from the "1" detection circuit, the output of the second linear shift register controlled by the first shift means becomes α j ·α M =1. a first output means for outputting the output α i · α M of the third linear shift register as the quotient of the division between the divisor data α j and the dividend data α i ; A predetermined multiplier α N for each i
at least one first and second multiplier circuits, respectively, and at least one fourth and fifth linear shift registers, respectively, in which respective outputs of the first and second multiplier circuits are respectively set;
at least one second "1" detection circuit connected to the output of the fourth linear shift register and detecting the number of times the second "1" detection circuit does not produce an output; Therefore, the fourth
and a second shift means for generating a shift signal for shifting the fifth linear shift register M times ; In response to the "1" detection output from the second "1" detection circuit, the output of the fourth linear shift register controlled by the second shift means is α j · α N · α The output α i · α N · α M of the fifth linear shift register obtained when M = 1 is expressed as the divisor data α j and the dividend data α i
and second output means for outputting a quotient of a division between.
JP57102809A 1982-06-15 1982-06-15 Correcting circuit of error Granted JPS58219851A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP57102809A JPS58219851A (en) 1982-06-15 1982-06-15 Correcting circuit of error

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP57102809A JPS58219851A (en) 1982-06-15 1982-06-15 Correcting circuit of error

Publications (2)

Publication Number Publication Date
JPS58219851A JPS58219851A (en) 1983-12-21
JPS638650B2 true JPS638650B2 (en) 1988-02-24

Family

ID=14337371

Family Applications (1)

Application Number Title Priority Date Filing Date
JP57102809A Granted JPS58219851A (en) 1982-06-15 1982-06-15 Correcting circuit of error

Country Status (1)

Country Link
JP (1) JPS58219851A (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0566215B1 (en) * 1986-09-30 1996-11-20 Canon Kabushiki Kaisha Error correction apparatus
JPH0973709A (en) * 1995-07-03 1997-03-18 Toshiba Corp Disc reproducing apparatus, data reproducing method and signal processing circuit
JP2000090594A (en) * 1998-09-10 2000-03-31 Toshiba Corp Error detection circuit and error detection method

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS54125901A (en) * 1978-03-24 1979-09-29 Sony Corp Error correction system

Also Published As

Publication number Publication date
JPS58219851A (en) 1983-12-21

Similar Documents

Publication Publication Date Title
JPS638651B2 (en)
US4574361A (en) Apparatus for dividing the elements of a Galois field
US4567568A (en) Apparatus for dividing the elements of a Galois field
US4502024A (en) Pulse-width modulation circuit
JPH10500270A (en) Multipurpose error correction system
JP3245119B2 (en) Reed-Solomon decoder employing new polynomial array structure and decoding method thereof
JP3281387B2 (en) CRC / EDC checker system
WO1985003371A1 (en) Circuit for calculating finite fields
JPS638650B2 (en)
JPS638648B2 (en)
US7607074B2 (en) Error detecting code addition circuit, error detection circuit and method, and disc apparatus
US8102996B2 (en) Scrambler, descrambler and method, and disc apparatus
JPH11328880A (en) Error correcting device and optical disk reproducing device
JPS6248254B2 (en)
JPS6237415B2 (en)
US7907359B2 (en) Finite field based short error propagation modulation codes
JPS6237414B2 (en)
JPS638649B2 (en)
US6564352B1 (en) Error detection circuit applicable to a disk reproduction apparatus
JPS6246018B2 (en)
JP2001044853A (en) Chain search circuit, error correction device and disk driver
KR920010184B1 (en) Finite Field Computation Circuit
JPH0677844A (en) Error correction device
JPH0834439B2 (en) Galois field arithmetic unit
JPS63131623A (en) Chien&#39;s algorithm implementation device