JP2570251B2 - Arithmetic circuit of finite field - Google Patents

Arithmetic circuit of finite field

Info

Publication number
JP2570251B2
JP2570251B2 JP59079684A JP7968484A JP2570251B2 JP 2570251 B2 JP2570251 B2 JP 2570251B2 JP 59079684 A JP59079684 A JP 59079684A JP 7968484 A JP7968484 A JP 7968484A JP 2570251 B2 JP2570251 B2 JP 2570251B2
Authority
JP
Japan
Prior art keywords
matrix
data
output
flip
circuit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP59079684A
Other languages
Japanese (ja)
Other versions
JPS60223333A (en
Inventor
典久 代田
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.)
Sony Corp
Original Assignee
Sony Corp
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 Sony Corp filed Critical Sony Corp
Priority to JP59079684A priority Critical patent/JP2570251B2/en
Publication of JPS60223333A publication Critical patent/JPS60223333A/en
Application granted granted Critical
Publication of JP2570251B2 publication Critical patent/JP2570251B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Detection And Correction Of Errors (AREA)
  • Error Detection And Correction (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 この発明は、エラー訂正符号の符号器、復号器に適用
される有限体の演算回路に関する。
Description: TECHNICAL FIELD The present invention relates to a finite field arithmetic circuit applied to an encoder and a decoder for an error correction code.

〔背景技術とその問題点〕[Background technology and its problems]

デイジタルビデオ信号,デイジタルオーデイオ信号な
どを記録再生する時に、エラー訂正符号として、隣接符
号,リードソロモン符号などが実用化されている。これ
らの訂正符号の符号器では、パリテイデータ(冗長デー
タ)の発生がなされ、復号器では、パリテイデータを含
む受信語からシンドロームを発生し、このシンドローム
を用いてエラー訂正がなされる。このパリテイ発生回
路、シンドローム発生回路及びエラー訂正回路のハード
ウエアとして、有限体の演算回路が用いられる。有限体
とは、次数mの既約多項式P(x)から導かれたpm個の
元を有する体であり、エラー訂正符号については、(p
=2)の場合が重要であり、したがつて、この発明は、
(p=2)の有限体に適用される。
When recording and reproducing digital video signals, digital audio signals, and the like, adjacent codes, Reed-Solomon codes, and the like have been put into practical use as error correction codes. In these correction code encoders, parity data (redundant data) is generated, and in the decoder, a syndrome is generated from a received word including the parity data, and error correction is performed using the syndrome. A finite field arithmetic circuit is used as hardware of the parity generation circuit, the syndrome generation circuit, and the error correction circuit. The finite field is a field having p m elements derived from an irreducible polynomial P (x) of degree m. For an error correction code, (p
= 2) is important, and therefore the present invention provides
(P = 2).

符号器及び復号器に用いられる従来の有限体の演算回
路は、有限体の元の乗算を行なう場合、例えば(α
α)の場合、αをROMに入力し指数iを得、同様に
αをROMに入力し、指数jを得、加算回路により、
(i+j)を発生し、この指数(i+j)をROMに入力
し、αi+jに変換するような処理を行なつていた。有
限体(GF 2m)の演算において、加算(減算は加算と同
じ)は、エクスクルーシブORゲートにより簡単に実現で
きるが、乗除算を行なうには、上述の例から明かなよう
に、ROM及びレジスタを多く必要とし、回路規模が大き
くなる欠点があつた。また、従来の有限体演算回路は、
生成多項式又は演算の種類ごとに専用のハードウエアの
構成とされ、汎用性を欠くものであつた。
A conventional finite field arithmetic circuit used for an encoder and a decoder performs, for example, (α i ·
In the case of α j ), α i is input to the ROM to obtain an index i, and similarly, α j is input to the ROM to obtain an index j.
(I + j) is generated, the index (i + j) is input to the ROM, and a process of converting the index into αi + j is performed. In the operation of the finite field (GF 2 m ), addition (subtraction is the same as addition) can be easily achieved by an exclusive OR gate. And a disadvantage that the circuit scale becomes large. In addition, the conventional finite field operation circuit,
A dedicated hardware is configured for each type of generator polynomial or operation, and lacks versatility.

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

したがつて、この発明の目的は、ROM、レジスタなど
のメモリの必要量が減少され、回路規模が小さくされた
有限体の演算回路を提供することにある。
SUMMARY OF THE INVENTION It is therefore an object of the present invention to provide a finite field arithmetic circuit in which the required amount of memories such as ROMs and registers is reduced and the circuit scale is reduced.

この発明の他の目的は、ハミング符号,隣接符号,リ
ードソロモン符号などの種々のエラー訂正符号の符号器
及び復号器を構成することができ、汎用性に富んだ有限
体の演算回路を提供することにある。
Another object of the present invention is to provide a versatile finite field arithmetic circuit capable of configuring encoders and decoders for various error correction codes such as a Hamming code, an adjacent code, and a Reed-Solomon code. It is in.

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

この発明は、有限体GF(2m)の元がベクトル表現され
たmビツトの第1の入力をマトリクス表現の各要素に変
換し、このマトリクス表現の各要素と有限体GF(2m)の
元がベクトル表現されたmビツトの第2の入力とを乗算
し、第1及び第2の入力の乗算出力を有限体GF(2m)の
ベクトル表現で得る演算回路を2個有し、2つの演算回
路の出力を(mod.2)の加算回路に供給し、加算回路か
ら出力を得るようにした有限体の演算回路である。
The present invention converts the first input of m bits in which the element of the finite field GF (2 m ) is represented by a vector into each element of a matrix representation, and converts each element of the matrix representation and each element of the finite field GF (2 m ). There are two arithmetic circuits for multiplying an m-bit second input whose element is represented by a vector and obtaining a multiplied output of the first and second inputs in a vector representation of a finite field GF (2 m ). This is a finite field arithmetic circuit in which the outputs of two arithmetic circuits are supplied to the (mod. 2) adder circuit and the output is obtained from the adder circuit.

〔実施例〕〔Example〕

この発明の一実施例の理解を容易とするため、以下
に、GF(2m)について説明する。
To facilitate understanding of one embodiment of the present invention, GF (2 m ) will be described below.

最初に生成多項式g(x)とGF(2m)上の元αとの
関係を説明する。一例として、(g(x)=x4+x+
1)とする。この生成多項式g(x)の係数を降べきの
順に書くと(1,0,0,1,1)となる。この係数と対応し
て、フイードバツクループを有する第1図Aに示すシフ
トレジスタ回路を構成することができる。第1図Aにお
いて、初段のレジスタと次段のレジスタとの間に挿入さ
れた加算回路は、(mod.2)の加算回路である。
First, the relationship between the generator polynomial g (x) and the element α i on GF (2 m ) will be described. As an example, (g (x) = x 4 + x +
1). If the coefficients of the generator polynomial g (x) are written in descending power order, they are (1,0,0,1,1). Corresponding to this coefficient, the shift register circuit shown in FIG. 1A having a feedback loop can be constructed. In FIG. 1A, the adder circuit inserted between the first-stage register and the next-stage register is a (mod. 2) adder circuit.

このシフトレジスタ回路に、第1図Bに示すように、
(1000)を初期値として設定し、順次にシフト動作を行
なわせると、各レジスタの内容は、第1図Bに示すよう
に変化する。ここで、g(x)=0の根をα(=α
とおくと、(α+α+1=0)から、(α=α+
1)である。したがつて、第1図Bに示すレジスタの内
容の変化は、下記に示すように、αのべき乗で表わされ
る。
In this shift register circuit, as shown in FIG.
When (1000) is set as an initial value and the shift operation is sequentially performed, the contents of each register change as shown in FIG. 1B. Here, the root of g (x) = 0 is α (= α 1 )
In other words, from (α 4 + α + 1 = 0), (α 4 = α +
1). Therefore, the change in the contents of the register shown in FIG. 1B is represented by a power of α as shown below.

α0:(1000) α8:(1010) α1:(0100) α9:(0101) α2:(0010) α10:(1110) α3:(0001) α11:(0111) α4:(1100) α12:(1111) α5:(0110) α13:(1011) α6:(0011) α14:(1001) α7:(1101) α15:(1000) α以上の元は、(α=α+1)の式を用いて、α
012の線形結合として表現される。つまり、 α=α+1 α=α・α=α(α+1)=α+α α=α・α=α(α+1)=α+α α=α・α=(α+1)(α+1)=α+1 となる。このように、α〜αのベクトル表現を用い
て、α以上を表わすと、第1図Bに示す内容と同一に
なる。
α 0 : (1000) α 8 : (1010) α 1 : (0100) α 9 : (0101) α 2 : (0010) α 10 : (1110) α 3 : (0001) α 11 : (0111) α 4 : (1100) α 12 : (1111) α 5 : (0110) α 13 : (1011) α 6 : (0011) α 14 : (1001) α 7 : (1101) α 15 : (1000) α 4 or more Originally, using the equation of (α 4 = α + 1), α
It is represented as a linear combination of 0 , α 1 , α 2 , α 3 . That is, α 4 = α + 1 α 5 = α · α 4 = α 2 (α + 1) = α 2 + α α 6 = α 2 · α 4 = α 2 (α + 1) = α 3 + α 2 α 8 = α 4 · α 4 = (Α + 1) (α + 1) = α 2 +1. Thus, using the vector representation of alpha 0 to? 3, expressed the alpha 4 or more, the same as the content shown in Figure 1 B.

次に、αとマトリクスTとの関係について説明する。
随伴行列Tは、(g(x)=x4+x+1)とする時に となるものである。第1図Bのαを縦ベクトルとする
と、 T=〔α123〕 の関係がある。T2となり、αを使つて表現すると、T2=〔α234,
α〕となることが分かる。即ち、 Ti=〔αii+1i+2i+3〕 と表現できる。但し、(i=0,1,2,……14)で、i+1,
i+2,i+3は、(mod.15)で計算した値をとる。言い換
えると、Tiの第1列はαのベクトル表現αと同一であ
る。
Next, the relationship between α and the matrix T will be described.
The adjoint matrix T is given by (g (x) = x 4 + x + 1) It is what becomes. If α i in FIG. 1B is a vertical vector, there is a relationship of T = [α 1 , α 2 , α 3 , α 4 ]. T 2 When expressed using α i , T 2 = [α 2 , α 3 , α 4 ,
α 5 ]. That is, T i = [α i , α i + 1 , α i + 2 , α i + 3 ]. However, (i = 0,1,2, ... 14), i + 1,
i + 2 and i + 3 take values calculated by (mod. 15). In other words, the first column of T i is the same as the vector representation α i of α.

次に、(α×α=αi+j)について説明する。ベ
クトル同士の乗算は不可能であるが、マトリクスとベク
トルの乗算は可能である。したがつて、αをマトリク
ス表現Tiに変換することにより乗算が可能となる。Tと
αの乗算は これより、(i=2)以上の場合 T×α=T×α×αi-1=α×αi-1=αi+1 となり、一般に(Tα=αi+1)ということが解る。
逆に、この関係から α=Tα=T2α=T3α=T4α という関係も成り立つ。一般に、(αi+j=Ti・α
が成立する。これらの検討から、αとTiは、乗算の時
は全く同一視でき、(α×α)を計算するには、
(Ti×α)を計算すれば良い。
Next, (α i × α j = α i + j ) will be described. Multiplication between vectors is not possible, but multiplication between matrix and vector is possible. Thus, multiplication is possible by converting α i into a matrix representation T i . The multiplication of T and α is From this, in the case of (i = 2) or more, T × α i = T × α × α i-1 = α 2 × α i-1 = α i + 1 and is generally referred to as (Tα i = α i + 1 ). I understand.
Conversely, it holds the relationship that α 4 = Tα 3 = T 2 α 2 = T 3 α 1 = T 4 α 0 from the relationship. In general, (α i + j = T i · α j )
Holds. From these considerations, α i and T i can be completely identified at the time of multiplication, and to calculate (α i × α j ),
(T i × α j ) may be calculated.

前述のように、Ti=〔αii+1i+2i+3〕と表
現できるので、αから他のベクトルを発生できれば、
マトリクスTiの全ての要素が分かつたことになるので、
この要素とαを乗算すれば、(α×α)の乗算を
実行できる。
As described above, since T i = [α i , α i + 1 , α i + 2 , α i + 3 ], if another vector can be generated from α i ,
It means that all of the elements of the matrix T i is divide,
By multiplying this element by α j , (α i × α j ) can be multiplied.

第2図は、ベクトル表現されたαをマトリクス表現
T1に変換する回路(但し、g(x)=x4+x+1)を示
すものである。第1図Aに示すフイードバツクループを
有するシフトレジスタ回路で、各レジスタにαをセツ
トし、3回シフト動作させることで、αi+1i+2
i+3を順次発生することができる。したがつて、第2図
における4個のレジスタ1,2,3,4にα例えばαを外
部から取り入れ、3回のシフト動作を行なうのと等価な
接続によつて、入力のレジスタの出力と第2図において
破線の位置とに夫々マトリクスT1の各要素を同時に発生
させることができる。即ち、レジスタ1〜4の出力を1
ビツトずつ下側にずらすと共に、このシフト後の最上位
ビツト及び最下位ビツトを(mod.2)の加算器22,23,24
により加算する構成とされる。
Figure 2 is a matrix representation of the alpha 1 which is vector representation
Circuit for converting the T 1 (where, g (x) = x 4 + x + 1) shows a. In a shift register circuit having a feedback loop shown in FIG. 1A, α i is set in each register and shifted three times, so that α i + 1 , α i + 2 , α
i + 3 can be generated sequentially. Therefore, α i, for example, α 1 is externally input to the four registers 1, 2, 3, and 4 in FIG. 2 to connect the input registers by a connection equivalent to performing three shift operations. each element of each matrix T 1 to the broken line position in the output and the second view can be a simultaneously generated. That is, the output of the registers 1-4 is set to 1
The bits are shifted downward by one bit, and the most significant bit and the least significant bit after this shift are added to adders 22, 23 and 24 of (mod. 2).
Are added.

第3図は、この発明の一実施例に用いる演算回路の構
成を示し、入力(LSBからa0,a1,a2,a3)としてαが供
給される。また、生成多項式g(x)の係数giがレジス
タ5,6,7の縦続接続に供給され、各レジスタ5,6,7の夫々
から係数g3,g2,g1が取り出される。(g(x)=x4+x
+1)の時は、(g1=1,g2=g3=0)となる。係数g1
ANDゲート8,11,14に供給され、係数g2がANDゲート9,12,
15に供給され、係数g3がANDゲート10,13,16に供給され
る。
FIG. 3 shows the configuration of an arithmetic circuit used in an embodiment of the present invention, in which α i is supplied as input (a 0 , a 1 , a 2 , a 3 from LSB). The coefficient g i of the generator polynomial g (x) is supplied to the cascade connection of the registers 5, 6, and 7, and the coefficients g 3 , g 2 , and g 1 are extracted from the registers 5, 6, and 7, respectively. (G (x) = x 4 + x
At the time of (+1), (g 1 = 1, g 2 = g 3 = 0). The coefficient g 1 is
The coefficient g 2 is supplied to the AND gates 8, 11, and 14, and the coefficient g 2 is supplied to the AND gates 9, 12, and
Is supplied to 15, the coefficient g 3 is supplied to the AND gates 10,13,16.

ANDゲート8,9,10の出力が夫々エクスクルーシブORゲ
ート(以下、EXORゲートと略す)22,32,42にその一方の
入力として供給される。ANDゲート11,12,13の出力がEXO
Rゲート22,33,43にその一方の入力として供給される。A
NDゲート14,15,16の出力がEXORゲート24,34,44にその一
方の入力として供給される。各列ごとの3個のANDゲー
トの組には、前の列の夫々からMSBが共通に供給され
る。この各列ごとの3個のANDゲートは、生成多項式の
係数giのうちで、0のものが供給される時に常に0とな
り、1のものが供給される時にフイードバツクデータを
EXORゲートに供給する。例えば(g1=1,g2=g3=0)の
時に、EXORゲート22,23,24が(mod.2)の加算器として
動作し、残りの他のEXORゲートは、単に入力を通過させ
るだけである。
Outputs of the AND gates 8, 9, and 10 are supplied to exclusive OR gates (hereinafter, abbreviated as EXOR gates) 22, 32, and 42 as one of the inputs. EXO output of AND gates 11, 12, and 13
It is supplied to the R gates 22, 33, 43 as one input. A
The outputs of the ND gates 14, 15, 16 are supplied to EXOR gates 24, 34, 44 as one input. The set of three AND gates for each column is commonly supplied with the MSB from each of the previous columns. The three AND gates in each column always output 0 when the coefficient g i of the generator polynomial is supplied with 0 and feed back data when the coefficient of 1 is supplied.
Supply to EXOR gate. For example, when (g 1 = 1, g 2 = g 3 = 0), the EXOR gates 22, 23, and 24 operate as adders of (mod. 2), and the other EXOR gates simply pass the input. Just let it.

したがつて、前の列のMSBとEXORゲート22,23,24……,
44の各出力とは、入力a0〜a3と対応するマトリクスの全
ての要素を構成する。このマトリクス表現に変換された
入力と乗算される他のGF(2m)上の元は、入力b0,b1,
b2,b3として供給され、レジスタ51,52,53,54に取り込ま
れる。両者の乗算,即ち の出力をc0,c1,c2,c3とすると、これらは、下式のもの
となる。
Therefore, the MSB in the previous row and EXOR gates 22, 23, 24 ……,
Each output of 44 constitutes all the elements of the matrix corresponding to inputs a 0 to a 3 . Elements on the other GF (2 m ) that are multiplied by the input converted to this matrix representation are the inputs b 0 , b 1 ,
They are supplied as b 2 and b 3 and are taken into the registers 51, 52, 53 and 54. Multiplication of both, ie Let c 0 , c 1 , c 2 , c 3 be the outputs of

c0=T11 b0+T12 b1+T13 b2+T14 b3 c1=T21 b0+T22 b1+T23 b2+T24 b3 c2=T31 b0+T32 b1+T33 b2+T34 b3 c3=T41 b0+T42 b1+T43 b2+T44 b3 上述の出力c0を発生するための乗算は、ANDゲート61,
62,63,64によつてなされ、加算は、EXORゲート65,66,67
によつてなされ、EXORゲート67の出力がc0としてレジス
タ101に貯えられる。
c 0 = T 11 b 0 + T 12 b 1 + T 13 b 2 + T 14 b 3 c 1 = T 21 b 0 + T 22 b 1 + T 23 b 2 + T 24 b 3 c 2 = T 31 b 0 + T 32 b 1 + T 33 b 2 + T 34 b 3 c 3 = T 41 b 0 + T 42 b 1 + T 43 b 2 + T 44 b 3 The above-described multiplication for generating the output c 0 is performed by the AND gate 61,
62, 63, 64, and the addition is performed by EXOR gates 65, 66, 67
Niyotsu and made, the output of the EXOR gate 67 is stored in the register 101 as c 0.

また、出力c1を発生するための乗算は、ANDゲート71,
72,73,74によつてなされ、加算は、EXORゲート75,76,77
によつてなされ、EXORゲート77の出力がc1としてレジス
タ102に貯えられる。同様に、ANDゲート81,82,83,84及
びEXORゲート85,86,87によつて形成された出力c2がレジ
スタ103に貯えられ、ANDゲート91,92,93,94及びEXORゲ
ート95,96,97によつて形成された出力c3がレジスタ104
に貯えられる。
The multiplication for generating the output c 1 is performed by the AND gate 71,
72, 73, 74, and addition is performed by EXOR gates 75, 76, 77.
Niyotsu and made, the output of the EXOR gate 77 is stored in the register 102 as c 1. Similarly, the output c 2 had it occurred form the AND gates 81, 82, 83, 84 and EXOR gate 85, 86, and 87 are stored in register 103, AND gates 91, 92, 93, 94 and EXOR gate 95, output c 3 had it occurred formed in 96 and 97 register 104
Stored in

以上のようにして、第3図に示す構成は、GF(2m)上
のベクトル表現された2個の元の乗算を行ない、乗算出
力を発生すること並びに生成多項式g(x)を変更する
ことが可能な演算回路である。
As described above, the configuration shown in FIG. 3 performs multiplication of two elements expressed as vectors on GF (2 m ), generates a multiplication output, and changes the generator polynomial g (x). It is an arithmetic circuit that can perform

第4図は、この発明の一実施例を示し、上述の乗算を
行なう演算回路を2組用いている。つまり、8ビツトの
入力により、(8×8)のマトリクスT1の各要素を発生
する変換回路17と、Dフリツプフロツプ18を介された8
ビツトの入力A及び変換回路17からの要素を乗算する乗
算ゲート19とにより一方の演算回路が構成され、マトリ
クスT2の各要素を発生する変換回路25と、Dフリツプフ
ロツプ26を介されたマルチプレクサ27の出力及び変換回
路25からの要素を乗算する乗算ゲート28とにより他方の
演算回路が構成される。
FIG. 4 shows an embodiment of the present invention, in which two sets of arithmetic circuits for performing the above-described multiplication are used. That is, the input of 8 bits, a conversion circuit 17 for generating each element of the matrix T 1 of the (8 × 8), received through the D flip-flops 18 8
One of the operation circuit by a multiplication gate 19 for multiplying the elements from the input A and the conversion circuit 17 of the bit is configured, a conversion circuit 25 for generating each element of the matrix T 2, the multiplexer 27 through the D flip-flops 26 And the multiplication gate 28 for multiplying the output from the conversion circuit 25 and the element from the conversion circuit 25 constitute the other operation circuit.

この乗算ゲート19及び28の出力がEXORゲートからなる
(mod.2)の加算器29に供給される。この加算器29の出
力がDフリツプフロツプ30を介して出力Cとして取り出
される。これと共に、加算器29の出力がマルチプレクサ
27にフイードバツクされる。
The outputs of the multiplication gates 19 and 28 are supplied to an adder 29 (mod. 2) composed of EXOR gates. The output of the adder 29 is taken out as an output C via a D flip-flop 30. At the same time, the output of the adder 29 is
Feeded back to 27.

この発明の一実施例において、マルチプレクサ27が入
力Bを選択する時では、 C=T1A+T2B の出力Cが得られる。また、マトリツクT1をT0(単位マ
トリクス)とし、T2をTと設定し、マルチプレクサ27が
フイードバツクされたデータを選択する時には、 の出力Cが得られる。
In the embodiment of the present invention, when the multiplexer 27 selects the input B, an output C of C = T 1 A + T 2 B is obtained. When the matrix T 1 is set to T 0 (unit matrix) and T 2 is set to T, and the multiplexer 27 selects the feedback data, Is obtained.

この第4図に示す演算回路は、種々のエラー訂正符号
のパリテイ発生又は種々のエラー訂正符号のシンドロー
ムの形成を行なうことができる。つまり、ベクトル表現
された有限体の元の乗算をメモリを用いずに行なうこと
ができる。
The arithmetic circuit shown in FIG. 4 can generate parity of various error correction codes or form syndromes of various error correction codes. That is, the original multiplication of the finite field represented by the vector can be performed without using the memory.

第5図を参照してこの発明の他の実施例について説明
する。この例は、第4図に示す演算回路を2組使用し、
8ビツトを1シンボルとするデータ(例えばビデオデー
タ)のエラー訂正符号のパリテイ(冗長ビツト)の発生
及びシンドロームの形成を行なうようにしたものであ
り、データは、8ビツトパラレルで入出力され、1チツ
プのIC回路の構成とされる。
Another embodiment of the present invention will be described with reference to FIG. This example uses two sets of arithmetic circuits shown in FIG.
The parity (redundant bit) of error correction code of data (for example, video data) having 8 bits as one symbol is generated and a syndrome is formed. Data is input / output in 8-bit parallel, and 1 bit is input / output. It is configured as a chip IC circuit.

一方の演算回路は、マトリクスT1の要素を発生する変
換回路35A、乗算ゲート35B、マトリクスT2の要素を発生
する変換回路36A、乗算ゲート36B、乗算ゲート35B及び3
6Bの出力が供給される(mod.2)の加算器37、シフトレ
ジスタ55,56、Dフリツプフロツプ39、40,68,78,79,8
0、マルチプレクサ38A,38B,59により構成される。
One of the operation circuit, converter circuit 35A for generating an element of the matrix T 1, the multiplication gate 35B, converter 36A for generating the elements of the matrix T 2, the multiplication gate 36B, multiplication gate 35B and 3
The adder 37 to which the output of 6B is supplied (mod. 2), shift registers 55 and 56, D flip-flops 39, 40, 68, 78, 79 and 8
0, composed of multiplexers 38A, 38B, 59.

他方の演算回路は、マトリクスT3の要素を発生する変
換回路45A、乗算ゲート45B、マトリクスT4の要素を発生
する変換回路46A、乗算ゲート46B、乗算ゲート45B及び4
6Bの出力が供給される(mod.2)の加算器47、シフトレ
ジスタ57,58、Dフリツプフロツプ49,50,70,98,99,10
0、マルチプレクサ48A,48B,60により構成される。
The other arithmetic circuit, converter circuit 45A for generating an element of the matrix T 3, the multiplication gate 45B, converter 46A for generating the elements of the matrix T 4, the multiplication gate 46B, multiplication gate 45B and 4
The adder 47 to which the output of 6B is supplied (mod. 2), shift registers 57 and 58, D flip-flops 49, 50, 70, 98, 99 and 10
0, constituted by multiplexers 48A, 48B, 60.

8ビツトパラレルの入力データDTAiがDフリツプフロ
ツプ68を介してマルチプレクサ59に供給され、8ビツト
パラレルの入力データDTBiがDフリツプフロツプ70を介
してマルチプレクサ60に供給される。これらのマルチプ
レクサ59,60には、8ビツトパラレルの入力データDTCi
がフリツプフロツプ69を介して供給される。加算器37か
ら乗算ゲート35Bへのフイードバツク系路は、マルチプ
レクサ38A及びDフリツプフロツプ39を含む系路と、マ
ルチプレクサ38B、Dフリツプフロツプ79、マルチプレ
クサ38A、Dフリツプフロツプ39を含む系路とがある。
マルチプレクサ38Bには、加算器37の出力の他に外部か
らの入力データFBPiが供給される。更に、加算器37の出
力がDフリツプフロツプ78,88を介して出力データPiと
して取り出される。加算器47から乗算ゲート46Bへのフ
イードバツク系路は、マルチプレクサ48A及びDフリツ
プフロツプ50を含む系路と、マルチプレクサ48B、Dフ
リツプフロツプ99、マルチプレクサ48A、Dフリツプフ
ロツプ50を含む系路とがある。マルチプレクサ48Bに
は、加算器47の出力の他に外部からの入力データFBQiが
供給される。更に、加算器47の出力がDフリツプフロツ
プ98,89を介して出力データQiとして取り出される。
The 8-bit parallel input data DTAi is supplied to a multiplexer 59 via a D flip-flop 68, and the 8-bit parallel input data DTBi is supplied to a multiplexer 60 via a D flip-flop 70. These multiplexers 59 and 60 have 8-bit parallel input data DTCi.
Is supplied through a flip-flop 69. The feedback path from the adder 37 to the multiplication gate 35B includes a path including a multiplexer 38A and a D flip-flop 39, and a path including a multiplexer 38B, a D flip-flop 79, a multiplexer 38A and a D flip-flop 39.
The multiplexer 38B is supplied with input data FBPi from outside in addition to the output of the adder 37. Further, the output of the adder 37 is extracted as output data Pi via D flip-flops 78 and 88. The feedback path from the adder 47 to the multiplication gate 46B includes a path including the multiplexer 48A and the D flip-flop 50, and a path including the multiplexer 48B, the D flip-flop 99, the multiplexer 48A and the D flip-flop 50. The multiplexer 48B is supplied with input data FBQi from the outside in addition to the output of the adder 47. Further, the output of the adder 47 is taken out as output data Qi via D flip-flops 98 and 89.

変換回路35A,36A,45A,46Aの夫夫が発生するマトリク
スT1,T2,T3,T4の各要素は、シフトレジスタ55,56,57,58
から供給される8ビツトのデータにより定まる。このシ
フトレジスタ55,56,57,58は、パラレルロード及びシリ
アルロード(破線で示すように、4個のシフトレジスタ
が縦続接続される)の何れによつてもロードできるよう
にされている。TCKは、シフトレジスタ55,56,57,58のク
ロツクであり、TPLDは、上述の2つのロードの方法の一
方を指定するための信号である。
Each element of the matrices T 1 , T 2 , T 3 , T 4 generated by each of the conversion circuits 35A, 36A, 45A, 46A is represented by a shift register 55, 56, 57, 58.
Is determined by the 8-bit data supplied from. The shift registers 55, 56, 57, 58 can be loaded by either parallel load or serial load (as shown by the broken lines, four shift registers are cascaded). TCK is a clock for the shift registers 55, 56, 57, 58, and TPLD is a signal for designating one of the above two loading methods.

シフトレジスタ55,56,57,58の夫々のパラレル入力と
して、TM1i,TM2i,TM3iTM4iが供給されており、クロツク
TCKの1クロツクによつて同時にこれらのパラレル入力
が各シフトレジスタに入力される。また、シリアルロー
ド時には、モード設定データMDTの入力系路を用いて、
マトリクスT1〜T4の夫々を確定する(8ビツト×4=32
ビツト)のデータを入力し、破線で示すように、クロツ
クTCKにより1ビツトずつシフトレジスタ55,56,57,58に
このデータをロードする。モード設定データMDTは、ク
ロツクMDCKによつて14ビツトのシフトレジスタ105にロ
ードされ、シフトレジスタ105からモード設定回路106に
入力される。モード設定データは、後述するように、生
成多項式を定めるデータ、マルチプレクサを制御するデ
ータなどからなる14ビツトのもので、モード設定回路10
6から各回路への制御信号が発生する。
TM1i, TM2i, TM3iTM4i are supplied as parallel inputs of shift registers 55, 56, 57, 58, respectively.
These parallel inputs are simultaneously input to each shift register by one clock of TCK. Also, at the time of serial loading, using the input path of the mode setting data MDT,
Determine each of the matrices T 1 to T 4 (8 bits × 4 = 32
), And the data is loaded into the shift registers 55, 56, 57, 58 one bit at a time by the clock TCK as indicated by the broken line. The mode setting data MDT is loaded into the 14-bit shift register 105 by the clock MDCK, and is input from the shift register 105 to the mode setting circuit 106. As described later, the mode setting data is 14-bit data including data for defining a generator polynomial, data for controlling a multiplexer, and the like.
Control signals are generated from 6 to each circuit.

更に、マトリクスとして、ベクトル表現されたマトリ
クス値Tkの他に、0,T0(単位マトリクス)が用意され、
この3種類のマトリクスの選択がDフリツプフロツプ41
を介された8ビツトのデータTSijによつてなされる。TS
ijの2ビツトずつにより、各マトリクスが制御される。
例えばデータTSijのうちの2ビツトTS10,TS11により、
マトリクスT1が0,T0,Tkの何れかとなされる。
Further, as a matrix, 0, T 0 (unit matrix) is prepared in addition to the matrix value T k expressed as a vector.
The selection of these three types of matrices is D flip-flop 41
Through the 8-bit data TSij passed through. TS
Each matrix is controlled by two bits of ij.
For example, according to two bits TS 10 and TS 11 of the data TSij,
Matrix T 1 is made with either 0, T 0, T k.

この発明の一実施例は、エラー訂正符号器のみなら
ず、エラー検出及びエラー訂正の復号器にも適用できる
ものである。この復号を可能とするために、(mod.2)
の加算器108、EXNORゲートからなる一致検出回路122、O
Rゲート109,111,112,113、ANDゲート110、マルチプレク
サ114,115,116,117、セレクト信号形成回路118、Dフリ
ツプフロツプ107,119,120,121が設けられている。マル
チプレクサ115の出力がDフリツプフロツプ119を介して
フラツグFLAGとして出力される。マルチプレクサ117の
出力がDフリツプフロツプ120を介してデータDPQiとし
て出力される。セレクト信号形成回路118は、マルチプ
レクサ117を制御するセレクト信号を発生するもので、
外部より制御信号OTS0及びCTS1が供給される。ORゲート
109,111,112は、入力される8ビツトのうちで1ビツト
でも1(ハイレベル)であれば、1の出力を発生するも
のである。
One embodiment of the present invention can be applied not only to an error correction encoder but also to a decoder for error detection and error correction. To enable this decryption, (mod.2)
Adder 108, a match detection circuit 122 composed of EXNOR gates, O
R gates 109, 111, 112, 113, AND gate 110, multiplexers 114, 115, 116, 117, select signal forming circuit 118, and D flip-flops 107, 119, 120, 121 are provided. The output of the multiplexer 115 is output via the D flip-flop 119 as the flag FLAG. The output of the multiplexer 117 is output as data DPQi via the D flip-flop 120. The select signal forming circuit 118 generates a select signal for controlling the multiplexer 117.
Control signals OTS 0 and CTS 1 are supplied from outside. OR gate
109, 111, and 112 generate one output if at least one (high level) of the input eight bits is one.

モード設定データMDTは、第6図に示すように、クロ
ツクMDCKの立下りごとに1ビツトずつシフトレジスタ10
5に取り込まれる。第7図に示すように、モード設定デ
ータは、ビツトG4から、G5,G6,M1,M2,PM3(2ビツト),
QM3(2ビツト),M4,M5,M6,ECと順番にロードされる。
このモード設定データの3個の例が第7図に示されてい
る。第1の例は、第5図に示す回路を1個用い、隣接符
号のパリテイを発生する場合のものである。第2の例
は、第5図に示す回路を2個用い、リードソロモン符号
のパリテイを発生する場合のものである。第7図の下段
に示すモード設定データの例は、第5図に示す回路を2
個用い、隣接符号又はリードソロモン符号のエラー訂正
を行なう場合のものである。
The mode setting data MDT is, as shown in FIG. 6, one bit at a time of falling of the clock MDCK.
Incorporated in 5. As shown in FIG. 7, the mode setting data consists of bits G4, G5, G6, M1, M2, PM3 (2 bits),
QM3 (2 bits), M4, M5, M6, EC are loaded in that order.
Three examples of this mode setting data are shown in FIG. In the first example, one circuit shown in FIG. 5 is used to generate parity of adjacent codes. In the second example, two circuits shown in FIG. 5 are used to generate parity of a Reed-Solomon code. The example of the mode setting data shown in the lower part of FIG. 7 is based on the circuit shown in FIG.
In this case, error correction of adjacent codes or Reed-Solomon codes is performed.

モード設定データMDTの各ビツトについて説明する。
まず、G4,G5,G6の3ビツトは、生成多項式を決定するも
のである。3ビツト(G4,G5,G6)が(100)の時の生成
多項式は、 G1(x)=1+x2+x3+x4+x8 この3ビツトが(010)及び(001)の時の生成多項式
G2(x)及びG3(x)の夫々は、下記のものとなる。
Each bit of the mode setting data MDT will be described.
First, the three bits G4, G5, and G6 determine the generator polynomial. 3 generator polynomials when the bit (G4, G5, G6) is the generator polynomial when the (100), G 1 (x) = 1 + x 2 + x 3 + x 4 + x 8 The three bits are (010) and (001)
Each of G 2 (x) and G 3 (x) is as follows.

G2(x)=1+x2+x3+x5+x8 G3(x)=1+x2+x3+x6+x8 この3種類の生成多項式は、何れも8次の原始既約多
項式であり、これら以外の設定値は、エラー訂正符号に
は、不適当である。
G 2 (x) = 1 + x 2 + x 3 + x 5 + x 8 G 3 (x) = 1 + x 2 + x 3 + x 6 + x 8 These three types of generator polynomials are all eight-order primitive irreducible polynomials. Is inappropriate for an error correction code.

2ビツトM1及びM2は、マルチプレクサ59及び60の夫々
を制御し、Dフリツプフロツプ40及び49の入力データを
選択するものである。(M1=0)の時は、入力データDT
Ciが選択され、(M1=1)の時は、入力データDTAiが選
択され、(M2=0)の時は、入力データDTCiが選択さ
れ、(M2=1)の時は、入力データDTBiが選択される。
The two bits M1 and M2 control the multiplexers 59 and 60, respectively, and select the input data of the D flip-flops 40 and 49. When (M1 = 0), the input data DT
When Ci is selected, when (M1 = 1), the input data DTAi is selected, when (M2 = 0), the input data DTCi is selected, and when (M2 = 1), the input data DTBi is selected. Selected.

2ビツトPM3は、加算器37の出力のフイードバツク系
路を決定し、2ビツトQM3は、加算器47の出力のフイー
ドバツク系路を決定する。PM3の各ビツトをPM30,PM31と
すると、この2ビツトによつて、下記のようなフイード
バツク系路が構成される。
The two-bit PM3 determines the feedback path of the output of the adder 37, and the two-bit QM3 determines the feedback path of the output of the adder 47. Assuming that each bit of PM3 is PM30 and PM31, these two bits constitute a feedback path as described below.

(PM30=0,PM31=0)の時 加算器37→マルチプレクサ38A→Dフリツプフロツプ39 (PM30=1,PM31=0)の時 加算器37→Dフリツプフロツプ78→マルチプレクサ38B
→Dフリツプフロツプ39 (PM30=0,PM31=1)の時 加算器37→Dフリツプフロツプ78→Dフリツプフロツプ
79→マルチプレクサ38B→マルチプレクサ38A→Dフリツ
プフロツプ39 (PM30=1,PM31=1)の時 加算器37→Dフリツプフロツプ78→Dフリツプフロツプ
88→外部のシフトレジスタ(図示されていない)→Dフ
リツプフロツプ80→マルチプレクサ38B→マルチプレク
サ38A→Dフリツプフロツプ39 また、QM3の2ビツトをQM30及びQM31とすると、この
2ビツトによつて、マルチプレクサ48A及び48Bが制御さ
れ、下記のようなフイードバツク系路が構成される。
When (PM30 = 0, PM31 = 0) Adder 37 → multiplexer 38A → D flip-flop 39 When (PM30 = 1, PM31 = 0) Adder 37 → D flip-flop 78 → multiplexer 38B
→ D flip-flop 39 (PM30 = 0, PM31 = 1) Adder 37 → D flip-flop 78 → D flip-flop
79 → multiplexer 38B → multiplexer 38A → D flip-flop 39 (PM30 = 1, PM31 = 1) Adder 37 → D flip-flop 78 → D flip-flop
88 → external shift register (not shown) → D flip-flop 80 → multiplexer 38B → multiplexer 38A → D flip-flop 39 If the two bits of QM3 are QM30 and QM31, multiplexers 48A and 48B are formed by these two bits. Is controlled, and the following feedback system is constructed.

(QM30=0,QM31=0)の時 加算器47→マルチプレクサ48A→Dフリツプフロツプ50 (QM30=1,QM31=0)の時 加算器47→Dフリツプフロツプ98→マルチプレクサ48B
→マルチプレクサ48A→Dフリツプフロツプ50 (QM30=0,QM31=1)の時 加算器47→Dフリツプフロツプ98→Dフリツプフロツプ
99→マルチプレクサ48B→マルチプレクサ48A→Dフリツ
プフロツプ50 (QM30=1,QM31=1)の時 加算器47→Dフリツプフロツプ98→Dフリツプフロツプ
89→外部のシフトレジスタ(図示せず)→Dフリツプフ
ロツプ100→マルチプレクサ48B→マルチプレクサ48A→
Dフリツプフロツプ50 これらのフイードバツク系路の切替は、加算器37及び
47の出力をフイードバツクする際に挿入される遅延素子
(Dフリツプフロツプ)を1段,2段,3段,4段以上(外部
のシフトレジスタの段数で定まる)に切替えるものであ
る。これは、エラー訂正符号のインターリーブ長と対応
している。
(QM30 = 0, QM31 = 0) Adder 47 → multiplexer 48A → D flip-flop 50 (QM30 = 1, QM31 = 0) Adder 47 → D flip-flop 98 → multiplexer 48B
→ Multiplexer 48A → D flip-flop 50 (QM30 = 0, QM31 = 1) Adder 47 → D flip-flop 98 → D flip-flop
99 → multiplexer 48B → multiplexer 48A → D flip-flop 50 (QM30 = 1, QM31 = 1) Adder 47 → D flip-flop 98 → D flip-flop
89 → external shift register (not shown) → D flip-flop 100 → multiplexer 48B → multiplexer 48A →
D flip-flop 50 These feed-back paths are switched by adder 37 and
The delay element (D flip-flop) inserted when the output of 47 is fed back is switched to one, two, three, four or more stages (determined by the number of external shift registers). This corresponds to the interleave length of the error correction code.

モード設定データMDTのビツトM4は、マルチプレクサ1
16を制御するもので、(M4=0)の時は、一致検出回路
122の出力が選択され、(M4=1)の時は、Dフリツプ
フロツプ98の出力が選択される。
Bit M4 of the mode setting data MDT is
16 and the coincidence detection circuit when (M4 = 0)
When the output of 122 is selected and (M4 = 1), the output of D flip-flop 98 is selected.

ビツトM5は、マルチプレクサ114を制御するためのも
ので、(M5=0)の時は、ORゲート111の出力がマルチ
プレクサ114により選択され、(M5=1)の時は、ORゲ
ート109の出力が選択される。
The bit M5 is for controlling the multiplexer 114. When (M5 = 0), the output of the OR gate 111 is selected by the multiplexer 114. When (M5 = 1), the output of the OR gate 109 is selected. Selected.

M6は、M60及びM61の2ビツトからなり、マルチプレク
サ115を下記のように制御するためのものである。
M6 is composed of two bits, M60 and M61, for controlling the multiplexer 115 as follows.

(M60=0,M61=0)の時、ANDゲート110の出力が選択
される。この時のフラツグFLAGは、エラー訂正完了フラ
ツグとされる。
When (M60 = 0, M61 = 0), the output of the AND gate 110 is selected. The flag FLAG at this time is regarded as an error correction completion flag.

(M60=1,M61=0)の時、ORゲート113の出力が選択
される。この時のフラツグFLAGは、エラー検出フラツグ
である。
When (M60 = 1, M61 = 0), the output of the OR gate 113 is selected. The flag FLAG at this time is an error detection flag.

(M60=0,M61=1)の時、マルチプレクサ114の出力
が選択される。
When (M60 = 0, M61 = 1), the output of the multiplexer 114 is selected.

(M60=1,M61=1)の時、ORゲート112の出力が選択
される。
When (M60 = 1, M61 = 1), the output of the OR gate 112 is selected.

マルチプレクサ115の出力がDフリツプフロツプ119を
介してフラツグFLAGとして出力される。第5図に示す演
算回路を2個縦続接続して、復号器が構成される。その
場合、前段の演算回路がシンドローム発生用とされ、後
段の演算回路がエラー位置検出用及びエラー訂正用とさ
れる。シンドローム発生用のためには、Dフリツプフロ
ツプ78及び98のうちの一方でもエラーが検出されれば、
エラー検出フラツグが立てられるように、ビツトM6によ
り、マルチプレクサ115がORゲート113の出力を選択する
ようにされる。エラー訂正に用いるためには、ビツト
(M60=0,M61=0)とされ、エラー訂正完了フラツグが
出力される。
The output of the multiplexer 115 is output via the D flip-flop 119 as the flag FLAG. A decoder is constructed by cascading two arithmetic circuits shown in FIG. In this case, the first-stage arithmetic circuit is used for syndrome generation, and the second-stage arithmetic circuit is used for error position detection and error correction. For syndrome generation, if an error is detected in one of the D flip-flops 78 and 98,
Bit M6 causes multiplexer 115 to select the output of OR gate 113 so that an error detection flag is raised. To use for error correction, bits (M60 = 0, M61 = 0) are set, and an error correction completion flag is output.

モード設定データの1ビツトECは、外部から供給され
る2ビツトOTS1及びOTS0と共に、マルチプレクサ117を
制御するセレクト信号を形成するために用いられる。更
に、セレクト信号形成回路118には、ANDゲート110の出
力(D110)が供給される。これらの4ビツトにより、マ
ルチプレクサ117の出力データDPQiは、下表に示すもの
となる。ここで、D107はDフリツプフロツプ107の出力,
D78はDフリツプフロツプ78の出力、D98はDフリツプフ
ロツプ98の出力であり、D108は加算器108の出力であ
り、/は、0又は1の何れでも良いことを意味する。
One bit EC of the mode setting data is used together with two bits OTS1 and OTS0 supplied from outside to form a select signal for controlling the multiplexer 117. Further, the output (D110) of the AND gate 110 is supplied to the select signal forming circuit 118. With these four bits, the output data DPQi of the multiplexer 117 is as shown in the table below. Here, D107 is the output of D flip-flop 107,
D78 is the output of the D flip-flop 78, D98 is the output of the D flip-flop 98, D108 is the output of the adder 108, and / means either 0 or 1.

隣接符号の場合、D107は、入力データDTCiそのもので
あり、D78は、出力データ(パリテイ)Piであり、D98
は、出力データ(パリテイ)Qiであり、D108は、エラー
訂正後のデータである。
In the case of the adjacent code, D107 is the input data DTCi itself, D78 is the output data (parity) Pi, and D98
Is output data (parity) Qi, and D108 is data after error correction.

この発明の一実施例において、隣接符号の2つのパリ
テイを発生する時には、14ビツトのモード設定データMD
Tが第7図に示すように、(010000000////1)とされ
る。このモード設定データMDTにより、第5図に示す回
路構成は、第8図に示す等価回路として表わすことがで
きる。第8図及び後出の第10図,第12図においては、変
換回路35A及び乗算ゲート35BをマトリクスT1のマトリク
ス乗算回路35として表し、同様に、他のマトリクスT2,T
3,T4に関しても、マトリクス乗算回路36,45,46として表
わしている。
In one embodiment of the present invention, when two parities of adjacent codes are generated, the 14-bit mode setting data MD is used.
T is set to (010000000 //// 1) as shown in FIG. With the mode setting data MDT, the circuit configuration shown in FIG. 5 can be represented as an equivalent circuit shown in FIG. Figure 10 infra Figure 8 and, in Figure 12, represents the conversion circuit 35A and the multiplier gate 35B as a matrix multiplication circuit 35 of the matrix T 1, Similarly, other matrix T 2, T
3, with respect to T 4, it is represented as a matrix multiplication circuit 36,45,46.

(G4=0,G5=1,G6=0)とすることにより、生成多項
式は、(G2(x)=1+x2+x3+x5+x8)に設定され
る。また、シフトレジスタ55には、α-1がロードされ、
シフトレジスタ58には、αがロードされる。シフトレジ
スタ56,57にロードされるものは何でも良い。このよう
な設定で、例えばW1〜W5の5サンプルデータに対してパ
リテイP,Qを発生するパリテイチエツクマトリクスHを
下記に示す。
By the (G4 = 0, G5 = 1 , G6 = 0), the generator polynomial is set to (G 2 (x) = 1 + x 2 + x 3 + x 5 + x 8). Further, α −1 is loaded into the shift register 55,
The shift register 58 is loaded with α. Anything may be loaded into the shift registers 56 and 57. The parity check matrix H which generates the parity P and Q for the five sample data W1 to W5 in such a setting is shown below.

受信された5サンプルデータをV=〔W1W2W3W4W5PQ〕
とすると、その転置行列VTと上述のパリテイチエツクマ
トリクスHとの積(H・VT)がゼロとなるようにパリテ
イP,Qが定められる。したがつて、 P=T-5W1+T-4W2+T-3W3+T-2W4+T-1W5 Q=T5W1+T4W2+T3W3+T2W4+TW5 により、パリテイP,Qが与えられる。
V = [W1W2W3W4W5PQ] received 5 sample data
When its transposed matrix V T the product of the parity Chie poke matrix H described above (H · V T) parity so becomes zero P, Q are determined. It was but connexion by P = T -5 W1 + T -4 W2 + T -3 W3 + T -2 W4 + T -1 W5 Q = T 5 W1 + T 4 W2 + T 3 W3 + T 2 W4 + TW5, parity P, Q are given.

第9図は、このパリテイP,Qを発生するためのタイム
チヤートである。サンプルデータと同期するクロツク
(時刻ti)に同期してデータの処理がなされる。入力デ
ータDTCiとして5サンプルのデータが供給され、このデ
ータがDフリツプフロツプ69から出力データD69として
生じる。Dフリツプフロツプ40,49の夫々の出力D40,D49
は、1クロツク遅れたものとなる。マトリクスT1〜T4
内容は、図示のものとされる。Dフリツプフロツプ39,7
8の出力D39,D78は、W1,T-1W1+W2,T-2W1+T-1W2+W3,…
…と変化し、上式で表わされるパリテイPが発生する。
同様に、Dフリツプフロツプ50,98の出力D50,D98は、W
1,TW1+W2,T2W1+TW2+W3,……と変化し、上式で表わさ
れるパリテイQが発生する。これらのパリテイP,Qは、
制御信号OTSiよつて、マルチプレクサ117により順次選
択され、Dフリツプフロツプ107の出力データD107に付
加され、出力データDPQiは、パリテイP,Qを含むものと
なる。
FIG. 9 is a time chart for generating the parity P, Q. Data processing is performed in synchronization with the clock (time ti) synchronized with the sample data. Five samples of data are supplied as input data DTCi, and this data is generated from D flip-flop 69 as output data D69. Outputs D40 and D49 of D flip-flops 40 and 49, respectively
Is one clock late. The contents of the matrices T 1 to T 4 are as shown in the figure. D flip flop 39,7
The outputs D39 and D78 of 8 are W1, T - 1W1 + W2, T - 2W1 + T - 1W2 + W3, ...
.., And the parity P expressed by the above equation occurs.
Similarly, outputs D50 and D98 of D flip-flops 50 and 98 are W
1, TW1 + W2, T 2 W1 + TW2 + W3, ...... and changed, parity Q represented by the above formula occurs. These parities P and Q are
Multiplexers 117 are sequentially selected by the control signal OTSi and added to the output data D107 of the D flip-flop 107, so that the output data DPQi includes the parity P and Q.

クロツクの時刻t2において、マトリクスT1,T4が0と
されるのは、パリテイ発生のフイードバツクループをゼ
ロリセツトするためである。時刻t7及びt8において、マ
トリクスT2,T3が0とされるのは、入力データ中の不定
データ(/で示されている)を遮断するためである。
The reason why the matrices T 1 and T 4 are set to 0 at the clock time t 2 is to reset the feedback loop in which the parity occurs to zero. At time t 7 and t 8, the matrix T 2, T 3 is a 0 is to cut off the undefined data in the input data (indicated by /).

この発明が適用された第5図に示す演算回路(1チツ
プのIC構成とされる)を2個用いて、リードソロモン符
号のパリテイを発生する場合について説明する。この2
個の演算回路の一方には、第7図中の第2番目の行に記
入されているように、(100000000////1)の14ビツトの
モード設定データMDTが供給され、その他方には、第7
図中の第3番目の行に記入されているように、(100111
111////1)の14ビツトのモード設定データMDTが供給さ
れる。第10図は、リードソロモン符号のパリテイを発生
する場合の等価回路を示し、131は、前者のモード設定
データが供給される演算回路であり、132は、後者のモ
ード設定データが供給される演算回路である。
A case in which parity of a Reed-Solomon code is generated by using two arithmetic circuits (having a one-chip IC configuration) shown in FIG. 5 to which the present invention is applied will be described. This 2
One of the two arithmetic circuits is supplied with (100000000 //// 1) 14-bit mode setting data MDT as described in the second row in FIG. Is the seventh
As described in the third line of the figure, (100111
The mode setting data MDT of 14 bits (111 //// 1) is supplied. FIG. 10 shows an equivalent circuit for generating parity of the Reed-Solomon code, 131 is an arithmetic circuit to which the former mode setting data is supplied, and 132 is an arithmetic circuit to which the latter mode setting data is supplied. Circuit.

(G4=1,G5=0,G6=0)とすることにより、生成多項
式は、(G1(x)=1+x2+x3+x4+x8)に設定され
る。また、演算回路131に関しては、シフトレジスタ55
に、α-1がロードされ、シフトレジスタ58にはαがロー
ドされる。シフトレジスタ56,57にロードされるものは
何でも良い。演算回路132に関しては、シフトレジスタ5
5にα207がロードされ、シフトレジスタ56にα205がロ
ードされ、シフトレジスタ57にα205がロードされ、シ
フトレジスタ58にα207がロードされる。
By (G4 = 1, G5 = 0 , G6 = 0) to generator polynomial is set to (G 1 (x) = 1 + x 2 + x 3 + x 4 + x 8). Further, regarding the arithmetic circuit 131, the shift register 55
Then, α −1 is loaded, and α is loaded into the shift register 58. Anything may be loaded into the shift registers 56 and 57. As for the arithmetic circuit 132, the shift register 5
5 is loaded with α 207 , the shift register 56 is loaded with α 205 , the shift register 57 is loaded with α 205 , and the shift register 58 is loaded with α 207 .

上述のように、生成多項式を設定した時のパリテイチ
エツクマトリクスHを下記に示す。
As described above, the parity check matrix H when the generator polynomial is set is shown below.

ここで、 KP=T-6W1+T-5W2+T-4W3+T-3W4+T-2W5 KQ=T6W1+T5W2+T4W3+T3W4+T2W5 とした時、2つのパリテイP,Qは、次式を満足するもの
である。
Here, when the KP = T -6 W1 + T -5 W2 + T -4 W3 + T -3 W4 + T -2 W5 KQ = T 6 W1 + T 5 W2 + T 4 W3 + T 3 W4 + T 2 W5, 2 two parities P, Q are satisfy the following equation Is what you do.

KP+T-1P+Q=0 KQ+TP+Q=0 これをパリテイP,Qについて解くと、 P=(T+T-1-1(KP+KQ) Q=(T+T-1-1(TKP+T-1KQ) 2つの演算回路のうちで、入力データが供給される前
段の演算回路131は、前式で表わされるKP,KQを発生する
もので、後段の演算回路132は、このKP,KQからパリテイ
P,Qを発生するものである。第11図は、リードソロモン
符号のパリテイP,Qを発生する時のタイムチヤートであ
り、第11図の上半部が演算回路131の動作説明のタイム
チヤートであり、その下半部が演算回路132の動作説明
のタイムチヤートである。
KP + T -1 P + Q = 0 KQ + TP + Q = 0 Solving this for parity P and Q, P = (T + T -1 ) -1 (KP + KQ) Q = (T + T -1 ) -1 (TKP + T -1 KQ) Among them, the first-stage arithmetic circuit 131 to which input data is supplied generates KP and KQ represented by the previous equation, and the second-stage arithmetic circuit 132 generates a parity from this KP and KQ.
P and Q are generated. FIG. 11 is a time chart when generating the parity P and Q of the Reed-Solomon code. The upper half of FIG. 11 is a time chart for explaining the operation of the arithmetic circuit 131, and the lower half thereof is an arithmetic circuit. It is a time chart of the operation explanation of 132.

この第11図中のクロツクの時刻t8におけるDフリツプ
フロツプ78の出力D78及びDフリツプフロツプ98の出力D
98は、前述の隣接符号のパリテイP,Qの場合と同様に下
記に示すものとなる。
Output D Output D78 and D flip flop 98 of the D flip flop 78 at time t 8 the clock in the Fig. 11
Reference numeral 98 is as shown below in the same manner as in the case of the parity P and Q of the adjacent codes described above.

KP 1=T-5W1+T-4W2+……+T-1W5 KQ 1=T5W1+T4W2+……+T1W5 また、時刻t8まで、マトリクス乗算回路35は、T-1
されていると共に、マトリクス乗算回路46は、T1とされ
ているので、時刻t9では、次のデータに変化する。
KP 1 = T -5 W1 + T -4 W2 + ...... + T -1 W5 KQ 1 = T 5 W1 + T 4 W2 + ...... + T 1 W5 also, until time t 8, the matrix multiplication circuit 35, along with being a T -1 , matrix multiplication circuit 46, since there is a T 1, at time t 9, change to the next data.

KP 2=T-6W1+T-5W2+T-4W3+T-3W4+T-2W5 KQ 2=T6W1+T5W2+T4W3+T3W4+T2W5 即ち、これがパリテイ発生に用いられるデータKP及び
KQである。これらのデータKP 1,KP 2,KQ 1,KQ 2が次段
の演算回路132に供給される。また、入力データがDフ
リツプフロツプ120を介して次段の演算回路132に出力さ
れる。
KP 2 = T -6 W1 + T -5 W2 + T -4 W3 + T -3 W4 + T -2 W5 KQ 2 = T 6 W1 + T 5 W2 + T 4 W3 + T 3 W4 + T 2 W5 That is, the data KP and
KQ. These data KP 1, KP 2, KQ 1 and KQ 2 are supplied to the operation circuit 132 at the next stage. Also, the input data is output to the next-stage arithmetic circuit 132 via the D flip-flop 120.

データKP 1,KP 2がDフリツプフロツプ68,40を介して
マトリクス乗算回路36に供給されると共に、Dフリツプ
フロツプ100,50を介してマトリクス乗算回路46に供給さ
れる。データKQ 1,KQ 2がDフリツプフロツプ80,39を介
してマトリクス乗算回路35に供給されると共に、Dフリ
ツプフロツプ70,49を介してマトリクス乗算回路45に供
給される。これらのマトリクス乗算回路35及び46のマト
リクスT1及びT4は、常に、 T1=T4=(T+T-1-1・T=T207 と設定される。マトリクス乗算回路36及び45のマトリク
スT2及びT3は、常に、 T2=T3=(T+T-1-1・T-1=T205 と設定される。このように、マトリクスを設定すること
により、次式で示すように、パリテイP,Qが計算され
る。
The data KP 1 and KP 2 are supplied to the matrix multiplying circuit 36 via D flip-flops 68 and 40 and to the matrix multiplying circuit 46 via D flip-flops 100 and 50. The data KQ 1 and KQ 2 are supplied to the matrix multiplying circuit 35 via D flip-flops 80 and 39 and to the matrix multiplying circuit 45 via D flip-flops 70 and 49. Matrix T 1 and T 4 of these matrix multiplication circuits 35 and 46 is always set as T 1 = T 4 = (T + T -1) -1 · T = T 207. Matrix T 2 and T 3 of the matrix multiplication circuits 36 and 45 is always set as T 2 = T 3 = (T + T -1) -1 · T -1 = T 205. By setting the matrix in this manner, the parity P, Q is calculated as shown by the following equation.

P=(T+T-1-1(KP+KQ) =(T+T-1-1・T-1・T KP +(T+T-1-1・T・T-1KQ =(T+T-1-1・T-1・KP 1 +(T+T-1-1・T・KQ 1 Q=(T+T-1-1(T KP+T KQ) =(T+T-1-1・T・KP 2 +(T+T-1-1・T-1・KQ2 第11図では、演算回路132にデータKP 1及びKQ 1がKP
2及びKQ 2より先に入力されるので、Dフリツプフロツ
プ78から時刻t12においてパリテイPが発生し、次の時
刻T13において、Dフリツプフロツプ98からパリテイQ
が発生する。そして、第11図に示すように、制御信号CT
Siが切り替えられ、マルチプレクサによつてパリテイP
及びQがデータに対して付加され、Dフリツプフロツプ
120の出力データD120は、これらのパリテイを含むデー
タとなる。
P = (T + T −1 ) −1 (KP + KQ) = (T + T −1 ) −1 · T −1 · T KP + (T + T −1 ) −1 · T · T −1 KQ = (T + T −1 ) −1 · T -1 · KP 1 + (T + T -1 ) -1 · T · KQ 1 Q = (T + T -1 ) -1 (T KP + T KQ) = (T + T -1 ) -1 · T · KP 2 + (T + T) -1 ) -1 · T −1 · KQ 2 In FIG. 11, data KP 1 and KQ 1 are
Since the input 2 and KQ 2 More above, parity P is generated at time t 12 from the D flip-flop 78, at the next time T 13, parity from D flip-flops 98 Q
Occurs. Then, as shown in FIG. 11, the control signal CT
Si is switched and parity P
And Q are added to the data, and the D flip-flop
The output data D120 of 120 is data including these parities.

この発明が適用された第5図に示す演算回路を2個用
いて、リードソロモン符号のエラー訂正を行なう場合に
ついて説明する。この2個の演算回路の一方には、第7
図中の第4番目に記載されているように、(100000000/
/101)のモード設定データMDTが供給され、その他方に
は、第5番目に記載されているように、(1001100001/0
01)のモード設定データMDTが供給される。第12図は、
リードソロモン符号のエラー訂正回路を構成した時の等
価回路を示し、141が前者のモード設定データが供給さ
れる演算回路であり、142が後者のモード設定データが
供給される演算回路である。
A case where error correction of a Reed-Solomon code is performed using two arithmetic circuits shown in FIG. 5 to which the present invention is applied will be described. One of the two arithmetic circuits has a seventh
As described in the fourth column in the figure, (100000000 /
/ 101) mode setting data MDT is supplied, and to the other side, (1001100001/0
01) The mode setting data MDT is supplied. FIG.
An equivalent circuit when a Reed-Solomon code error correction circuit is configured is shown. Reference numeral 141 denotes an arithmetic circuit to which the former mode setting data is supplied, and 142 denotes an arithmetic circuit to which the latter mode setting data is supplied.

生成多項式は、G1(x)が設定される。演算回路141
に関しては、シフトレジスタ55に、α-1がロードされ、
シフトレジスタ58にαがロードされる。シフトレジスタ
56,57に関しては、ロードするデータを設定する必要が
ない。演算回路142に関しては、シフトレジスタ55にα
-1がロードされ、シフトレジスタ56にαがロードさ
れ、シフトレジスタ57にα-6がロードされ、シフトレジ
スタ58にαがロードされる。
G 1 (x) is set as the generator polynomial. Arithmetic circuit 141
For, α −1 is loaded into the shift register 55,
Α is loaded into the shift register 58. Shift register
Regarding 56 and 57, there is no need to set the data to be loaded. As for the arithmetic circuit 142, α
-1 is loaded, alpha 6 in the shift register 56 is loaded, alpha -6 is loaded into the shift register 57, alpha is loaded into the shift register 58.

エラー訂正は、受信データからのシンドロームSP,SQ
の計算、このシンドロームSP,SQを用いたエラー訂正の
検出、エラーデータの訂正との3個の処理からなる。演
算回路141は、シンドロームSP,SQを計算するものであ
り、演算回路142は、エラー位置の検出及びエラーデー
タの訂正を行なうものである。演算回路141のタイムチ
ヤートを第13図Aに示し、演算回路142のタイムチヤー
トを第13図Bに示す。
Error correction is based on the syndrome SP, SQ
, The detection of error correction using the syndromes SP and SQ, and the correction of error data. The arithmetic circuit 141 calculates the syndromes SP and SQ, and the arithmetic circuit 142 detects an error position and corrects error data. The time chart of the arithmetic circuit 141 is shown in FIG. 13A, and the time chart of the arithmetic circuit 142 is shown in FIG. 13B.

演算回路141には、第13図Aに示すように、受信デー
タが入力され、Dフリツプフロツプ69の出力D69から現
れる。受信データW1,W2,……W5,P,Qとすると、2つのパ
リテイに対応するシンドロームSP,SQは、次式によつて
発生される。
As shown in FIG. 13A, the received data is input to the arithmetic circuit 141 and appears from the output D69 of the D flip-flop 69. .., W5, P, Q, the syndromes SP, SQ corresponding to the two parities are generated by the following equations.

SP=T-6W1+T-5W2+T-4W3+T-3W4+T-2W5+T-1P+Q SQ=T6W1+T5W2+T4W3+T3W4+T2W5+TP+Q このシンドロームの発生は、マトリクスT1をT-1
し、マトリクスT4をTとし、これらのマトリクスをデー
タに乗じ、累算を行なうことによりなされる。シンドロ
ームSPは、Dフリツプフロツプ78の出力データD78とし
て得られ、シンドロームSQは、Dフリツプフロツプ98の
D98として得られる。受信データは、Dフリツプフロツ
プ120を介して外部の1ブロツク遅延用の6段のシフト
レジスタ143を介して次段の演算回路142に供給される。
SP = T -6 W1 + T -5 W2 + T -4 W3 + T -3 W4 + T -2 W5 + T -1 P + Q SQ = T 6 W1 + T 5 W2 + T 4 W3 + T 3 W4 + T 2 W5 + TP + Q To generate this syndrome, the matrix T 1 is T -1 and the matrix is T 4 and is T, multiplied by these matrix data, is performed by performing the accumulation. The syndrome SP is obtained as output data D78 of the D flip-flop 78, and the syndrome SQ is obtained as the output data D78 of the D flip-flop 98.
Obtained as D98. The received data is supplied via a D flip-flop 120 to an arithmetic circuit 142 at the next stage via an external six-stage shift register 143 for delaying one block.

また、モード設定データM6が(10)とされているため
に、マルチプレクサ115がORゲート113の出力を選択し、
Dフリツプフロツプ119の出力D119が外部に出力され
る。シンドロームSPが0であるかどうかがORゲート109
により検出され、シンドロームSQが0であるかどうかが
ORゲート111により検出される。受信データにエラーが
無い場合、(SP=SQ=0)となり、ORゲート113の出力
も0となる。しかし、受信データにエラーがあると、シ
ンドロームSP又はSQは0でなくなり、したがつて、ORゲ
ート113の出力が1となる。したがつて、出力D119は、
受信データのエラーの有無を示すエラーフラツグであ
る。演算回路142では、シンドロームSP,SQを受け取り、
エラー位置とエラーパターンeiを見つける。このとき、
シンドロームSP,SQをそのまま使うのでなく、次式で示
すように変形する。
Since the mode setting data M6 is (10), the multiplexer 115 selects the output of the OR gate 113,
The output D119 of the D flip-flop 119 is output to the outside. It is OR gate 109 whether the syndrome SP is 0 or not.
And whether the syndrome SQ is 0
It is detected by the OR gate 111. If there is no error in the received data, (SP = SQ = 0), and the output of the OR gate 113 also becomes 0. However, if there is an error in the received data, the syndrome SP or SQ does not become 0, and the output of the OR gate 113 becomes 1. Therefore, output D119 is
This is an error flag indicating the presence / absence of an error in the received data. The arithmetic circuit 142 receives the syndromes SP and SQ,
Find the error location and error pattern ei. At this time,
Instead of using the syndromes SP and SQ as they are, they are transformed as shown in the following equation.

SP′=T6SP SQ′=T-6SQ この変形後のシンドロームSP′,SQ′の夫々にT-1,T1
を順次、乗じることにより (T-1iSP′=(T1 SQ′=ei が成立することにより、エラー位置i及びエラーパター
ンeiが求められる。予めシンドロームSP,SQにT6,T-6
乗じるのは、受信データの時系列そのままでエラー位置
を順に検出できるようにするためである。リードソロモ
ン符号でなく、隣接符号の場合は、T-6,T6の代わりに、
T-5,T5を各シンドロームに乗じれば良い。
SP ′ = T 6 SP SQ ′ = T −6 SQ T −1 and T 1 respectively for the syndromes SP ′ and SQ ′ after this deformation.
Are sequentially multiplied, (T −1 ) i SP ′ = (T 1 ) i SQ ′ = ei holds, whereby the error position i and the error pattern ei are obtained. The reason why the syndromes SP and SQ are multiplied in advance by T 6 and T -6 is to enable error positions to be sequentially detected without changing the time series of the received data. If the code is not a Reed-Solomon code but an adjacent code, instead of T -6 and T 6 ,
T -5, the T 5 may be multiplied to each syndrome.

第13図Bに示すように、演算回路141からのデータ
は、Dフリツプフロツプ68,70,69の出力D60,D70,D69と
して表われ、更に、Dフリツプフロツプ90,40,49を介さ
れ、Dフリツプフロツプ40の出力D40に含まれるシンド
ロームSPがマトリクス乗算回路36に入力され、Dフリツ
プフロツプ49の出力D49に含まれるシンドロームSQがマ
トリクス乗算回路45に入力される。マトリクス乗算回路
36のマトリクスT2がT6とされ、マトリクス乗算回路45の
マトリクスT3がT-6とされている。したがつて、Dフリ
ツプフロツプ78,39の各出力D78,D39は、SP′T-1SP′,T
-2SP′,……,T-6SP′と変化するものとなり、Dフリツ
プフロツプ98,50の各出力D98,D50は、SQ′,T1SQ′,T2S
Q′,……,T6SQ′と変化するものとなる。
As shown in FIG. 13B, the data from the arithmetic operation circuit 141 appears as outputs D60, D70, D69 of the D flip-flops 68, 70, 69, and further passes through the D flip-flops 90, 40, 49 to form the D flip-flops. The syndrome SP included in the output D40 of 40 is input to the matrix multiplication circuit 36, and the syndrome SQ included in the output D49 of the D flip-flop 49 is input to the matrix multiplication circuit 45. Matrix multiplication circuit
Matrix T 2 of the 36 is a T 6, the matrix T 3 matrix multiplication circuit 45 is a T -6. Therefore, the outputs D78 and D39 of the D flip-flops 78 and 39 are SP'T- 1 SP ', T
-2 SP ', ..., T -6 SP', and the outputs D98, D50 of the D flip-flops 98,50 are SQ ', T 1 SQ', T 2 S
Q ′,..., T 6 SQ ′.

Dフリツプフロツプ69,90,107の夫々の出力データD6
9,D90,D107は、前段の演算回路141からの受信データで
あつて、1クロツクずつ遅れたものである。出力データ
D69は、シフトレジスタ143によつて1ブロツク遅延され
ているので、時刻t11では、シンドロームSP,SQの入力タ
イミングと、遅延されたデータの第1番目のサンプルデ
ータの入力タイミングが同時となる。
Output data D6 of D flip-flops 69, 90 and 107 respectively
9, D90 and D107 are received data from the preceding operation circuit 141, which are delayed by one clock. output data
D69 is because it is Yotsute 1 block delay shift register 143 at time t 11, the syndrome SP, the input timing of the SQ, the input timing of the first sample data of the data delay is simultaneous.

第13図Bでは、受信データのうちのサンプルデータW2
にエラーパターンe2がある場合を想定しており、したが
つて、 SP=T-5e2 SQ=T5e2 となり、 SP′=T6SP=Te2 SQ′=T-6SQ=T-1e2 から、 T-1SP′=TSQ′=e2 となる時刻t14で比較回路144の出力D144が0から1とな
る。
In FIG. 13B, the sample data W2 of the received data
And the assumption that there is an error pattern e2, the was but connexion, SP = T -5 e2 SQ = T 5 e2 becomes, SP '= T 6 SP = Te2 SQ' = T -6 SQ = T -1 e2 from the output D144 of the comparison circuit 144 at T -1 SP '= TSQ' = e2 become time t 14 becomes 1 from 0.

この比較回路144は、第5図における一致検出回路12
2、ANDゲート110、マルチプレクサ115、セレクト信号形
成回路118などをまとめて示すものである。上述の等式
が成立する時に、一致検出回路122の出力が全て1とな
り、ANDゲート110の出力が1となる。この時刻t14にお
けるDフリツプフロツプ98の出力は、エラーパターンe2
であり、マルチプレクサ116を介して加算器108にこのエ
ラーパターンe2が供給される。一方、Dフリツプフロツ
プ107からの受信データが加算器108に供給されているの
で、加算器108では、(W2+e2)=(W2+TSQ)のエラー
訂正が行なわれる。このエラー訂正後のサンプルデータ
がマルチプレクサ117により選択されるので、Dフリツ
プフロツプ120の出力データ、エラーが訂正された受信
データとなる。また、マルチプレクサ115により選択さ
れ、Dフリツプフロツプ119から出力されるデータD119
(FLAG)は、エラー訂正完了を示すものとなる。
This comparison circuit 144 corresponds to the coincidence detection circuit 12 shown in FIG.
2, an AND gate 110, a multiplexer 115, a select signal forming circuit 118, and the like. When the above equation holds, the outputs of the match detection circuit 122 are all 1 and the output of the AND gate 110 is 1. The output of the D flip-flop 98 at the time t 14, the error pattern e2
The error pattern e2 is supplied to the adder 108 via the multiplexer 116. On the other hand, since the data received from the D flip-flop 107 is supplied to the adder 108, the adder 108 performs error correction of (W2 + e2) = (W2 + TSQ). Since the error-corrected sample data is selected by the multiplexer 117, the output data of the D flip-flop 120 and the error-corrected received data are obtained. The data D119 selected by the multiplexer 115 and output from the D flip-flop 119
(FLAG) indicates the completion of error correction.

〔応用例〕[Application example]

この発明が適用された第5図に示す演算回路を6個用
いることにより、4個のパリテイを有し、2シンボルエ
ラーの訂正が可能な隣接符号、リードソロモン符号の符
号器又は復号器を構成することもできる。
By using the six arithmetic circuits shown in FIG. 5 to which the present invention is applied, an encoder or a decoder of an adjacent code or Reed-Solomon code having four parities and capable of correcting two symbol errors is configured. You can also.

〔発明の効果〕〔The invention's effect〕

この発明に依れば、ベクトル表現された有限体の元の
乗算をメモリを用いずに行なうことができ、回路規模を
小さくすることができる。この発明は、汎用性に優れ、
隣接符号、リードソロモン符号などの複数の種類の符号
の符号器又は復号器を構成することができ、IC回路に好
適なものである。
According to the present invention, the original multiplication of a finite field represented by a vector can be performed without using a memory, and the circuit scale can be reduced. This invention has excellent versatility,
An encoder or a decoder for a plurality of types of codes such as an adjacent code and a Reed-Solomon code can be formed, which is suitable for an IC circuit.

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

第1図は有限体上の元とマトリクス表現との関係の説明
に用いる略線図、第2図はベクトル表現されたデータを
マトリクス表現の各要素に変換する変換回路の接続図、
第3図はこの発明の一実施例に用いることができる演算
回路の一例のブロツク図、第4図はこの発明の一実施例
のブロツク図、第5図はこの発明の他の実施例のブロツ
ク図、第6図及び第7図はこの一実施例におけるモード
設定データの説明に用いる波形図及び略線図、第8図及
び第9図はこの一実施例により隣接符号の符号器を構成
する時の説明に用いるブロツク図及びタイムチヤート、
第10図及び第11図はこの一実施例によりリードソロモン
符号の符号器を構成する時の説明に用いるブロツク図及
びタイムチヤート、第12図,第13図A及び第13図Bはこ
の一実施例によりリードソロモン符号(又は隣接符号)
の復号器を構成する時の説明に用いるブロツク図及びタ
イムチヤートである。 1,2,3,4……一方の入力データを貯えるレジスタ、51,5
2,53,54……他方の入力データを貯えるレジスタ、101,1
02,103,104……出力データを貯えるレジスタ、17,25,35
A,36A,45A,46A……マトリクスの各要素を発生する変換
回路、19,28,35B,36B,45B,46B……乗算ゲート、27,38A,
38B,48A,48B,59,60,114,115,116,117……マルチプレク
サ、29,37,47,108……(mod.2)の加算器、122……一致
検出回路。
FIG. 1 is a schematic diagram used to explain the relationship between an element on a finite field and a matrix expression, FIG. 2 is a connection diagram of a conversion circuit for converting data expressed in a vector into each element of a matrix expression,
FIG. 3 is a block diagram of an example of an arithmetic circuit which can be used in one embodiment of the present invention, FIG. 4 is a block diagram of one embodiment of the present invention, and FIG. 5 is a block diagram of another embodiment of the present invention. FIGS. 6, 6 and 7 are waveform diagrams and schematic diagrams used to describe mode setting data in this embodiment, and FIGS. 8 and 9 constitute an encoder of adjacent codes according to this embodiment. Block diagrams and time charts used to explain the time,
FIGS. 10 and 11 are a block diagram and a time chart used for describing an encoder for a Reed-Solomon code according to this embodiment, and FIGS. 12, 13A and 13B are diagrams of this embodiment. Reed-Solomon code (or adjacent code) as usual
FIG. 2 is a block diagram and a time chart used for explanation when configuring the decoder of FIG. 1,2,3,4 …… Register to store one input data, 51,5
2,53,54 …… Register that stores the other input data, 101,1
02,103,104 …… Register for storing output data, 17,25,35
A, 36A, 45A, 46A ... A conversion circuit for generating each element of the matrix, 19, 28, 35B, 36B, 45B, 46B ... Multiplication gates, 27, 38A,
38B, 48A, 48B, 59, 60, 114, 115, 116, 117... Multiplexer, 29, 37, 47, 108 (mod. 2) adder, 122.

Claims (1)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】有限体GF(2m)の元がベクトル表現された
mビットの入力データ及び帰還データの一方を、演算内
容によって定まる選択信号に基づいて選択するための選
択手段と、 第1のマトリクスを生成するための入力データを、第1
の生成多項式の係数に基づいて上記第1のマトリクスの
各要素に変換する状態と、0と、単位マトリクスとの何
れかの状態に設定可能な第1の変換手段と、 前記第1のマトリクス要素と前記選択手段の出力データ
とのマトリクス演算を行なうための第1の演算手段と、 第2のマトリクスを生成するための入力データを、第2
の生成多項式の係数に基づいて上記第2のマトリクスの
各要素に変換する状態と、0と、単位マトリクスとの何
れかの状態に設定可能な第2の変換手段と、 第3の入力データと前記第2のマトリクスの要素とのマ
トリクス演算を行なうための第2の乗算手段と、 前記第1の乗算手段の出力と前記第2の乗算手段の出力
との加算演算を行ない、加算結果を上記選択手段に対し
て、上記帰還データとして与えるための加算手段とから
なる有限体の演算回路。
1. A selecting means for selecting one of m-bit input data and feedback data in which an element of a finite field GF (2 m ) is represented by a vector based on a selection signal determined by operation contents, The input data for generating the matrix of
A state in which each element of the first matrix is converted based on a coefficient of a generator polynomial of the first matrix element, first conversion means that can be set to any state of 0 or a unit matrix, First operation means for performing a matrix operation on the output data of the selection means and input data for generating a second matrix;
A state in which each element of the second matrix is converted based on the coefficients of the generator polynomial, a second conversion means that can be set to any state of 0 and a unit matrix, A second multiplying means for performing a matrix operation with the elements of the second matrix; an addition operation of an output of the first multiplication means and an output of the second multiplication means; A finite field arithmetic circuit comprising an adding means for giving the feedback data to the selecting means.
JP59079684A 1984-04-20 1984-04-20 Arithmetic circuit of finite field Expired - Fee Related JP2570251B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP59079684A JP2570251B2 (en) 1984-04-20 1984-04-20 Arithmetic circuit of finite field

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP59079684A JP2570251B2 (en) 1984-04-20 1984-04-20 Arithmetic circuit of finite field

Publications (2)

Publication Number Publication Date
JPS60223333A JPS60223333A (en) 1985-11-07
JP2570251B2 true JP2570251B2 (en) 1997-01-08

Family

ID=13697028

Family Applications (1)

Application Number Title Priority Date Filing Date
JP59079684A Expired - Fee Related JP2570251B2 (en) 1984-04-20 1984-04-20 Arithmetic circuit of finite field

Country Status (1)

Country Link
JP (1) JP2570251B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5278115B2 (en) * 2009-03-31 2013-09-04 日本電気株式会社 Redundant code generation method and apparatus, data restoration method and apparatus, and RAID storage device

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4037093A (en) * 1975-12-29 1977-07-19 Honeywell Information Systems, Inc. Matrix multiplier in GF(2m)

Also Published As

Publication number Publication date
JPS60223333A (en) 1985-11-07

Similar Documents

Publication Publication Date Title
EP0152702B1 (en) Arithmetic circuit of finite field
JPH0831803B2 (en) Method and apparatus for error correction
US5805617A (en) Apparatus for computing error correction syndromes
US4473887A (en) Processing circuit for operating on elements of a Galois field
US4751704A (en) Method and apparatus for decoding BCH code
KR100305618B1 (en) Multipurpose error correction calculation circuit
JPH10508988A (en) CRC / EDC checker system
JP2001127645A (en) Error correction method and error correction device
JP3279624B2 (en) 1-bit error correction circuit based on CRC operation
JP2570251B2 (en) Arithmetic circuit of finite field
GB2252431A (en) Error correction method and apparatus
US6859905B2 (en) Parallel processing Reed-Solomon encoding circuit and method
JP2718481B2 (en) Error correction device for long distance codes
JP2603243B2 (en) Error correction device
JP2622957B2 (en) Coding and decoding method of BCH code
JP2752510B2 (en) Error correction decoder
KR100335482B1 (en) Error correcting system
JP3223513B2 (en) Error correction decoding device
JP3131969B2 (en) Arithmetic unit
JP2797569B2 (en) Euclidean circuit
JP3268926B2 (en) Error correction circuit
JPH09162753A (en) Decoding system for code word
JP3521558B2 (en) Transmission equipment
KR100499878B1 (en) An error correction circuit for pid in dvd ram
KR930005439B1 (en) Reed solomon encoding circuit of optical recording and reproducing system

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees