JPH0764810A - Galois field computing element - Google Patents
Galois field computing elementInfo
- Publication number
- JPH0764810A JPH0764810A JP5214357A JP21435793A JPH0764810A JP H0764810 A JPH0764810 A JP H0764810A JP 5214357 A JP5214357 A JP 5214357A JP 21435793 A JP21435793 A JP 21435793A JP H0764810 A JPH0764810 A JP H0764810A
- Authority
- JP
- Japan
- Prior art keywords
- partial product
- galois field
- multiplication
- registers
- adder
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Complex Calculations (AREA)
- Detection And Correction Of Errors (AREA)
Abstract
Description
【0001】 [発明の目的][Object of the Invention]
【産業上の利用分野】本発明は、ディジタルオーディオ
機器等のエラー訂正回路として好適のガロア体演算器に
関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a Galois field arithmetic unit suitable as an error correction circuit for digital audio equipment and the like.
【0002】[0002]
【従来の技術】近年、各種ディジタルシステムの信頼性
を向上させるために、誤り訂正符号が適用されるように
なった。誤り訂正符号としては、システムに応じて種々
のものが採用されている。特に、ガロア体上のReed sol
omon符号(以下、RS符号という)は、冗長度が低く、
CD(コンパクトディスク)、DAT(ディジタルオー
ディオテープ)及び衛星通信の分野等において広く用い
られている重要な符号である。2. Description of the Related Art In recent years, error correcting codes have been applied to improve the reliability of various digital systems. Various types of error correction codes are adopted depending on the system. Especially, Reed sol on Galois field
The omon code (hereinafter referred to as RS code) has low redundancy,
It is an important code widely used in the fields of CD (compact disc), DAT (digital audio tape) and satellite communication.
【0003】ところで、ディジタル化された情報系列に
おいては一般に多項式表現での演算が便利である。例え
ば、ガロア体の乗算A×B=Cは、下記式(1)に示す
多項式表現で表わすことができる。By the way, in a digitized information sequence, it is generally convenient to use a polynomial expression. For example, the Galois field multiplication A × B = C can be expressed by the polynomial expression shown in the following expression (1).
【0004】 C=(((((((B・A7 )・α+B・A6 )・α+B・A5 )・α+B・A 4 )・α+B・A3 )・α+B・A2 )・α+B・A1 )・α+B・A0 …(1) 多項式の計算回路は、基本的には加算回路としての排他
的論理和回路及びゲート回路を用いており、レジスタに
よってAとBの各係数の時間合わせを行って計算を行
う。図3は上記式(1)に示す演算を実現する乗算器の
動作を説明するためのブロック図である。C = ((((((B · A7) · α + B · A6) · α + B · A5) · α + B · A 4) · α + B · A3) · α + B · A2) · α + B · A1) · α + B ・A0 ... (1) A polynomial calculation circuit basically uses an exclusive OR circuit and a gate circuit as an adder circuit, and performs calculation by matching the time of each coefficient of A and B by a register. FIG. 3 is a block diagram for explaining the operation of the multiplier that realizes the calculation shown in the above equation (1).
【0005】入力レジスタ21乃至28には夫々多項式Aの
各係数A7 乃至A0 を与える。入力レジスタ21からの係
数A7 と多項式Bとの積は係数器1に与えてαを掛けた
後、加算器12において入力レジスタ22からの係数A6 と
多項式Bとの積の結果と加算する。この加算結果にαを
掛けて加算器13に与え、係数A5 と多項式Bとの積と加
算する。以後同様に、多項式AとBとの積と前段の加算
器出力のα倍とを加算する。加算器18からの加算結果を
多項式表現によるガロア体の乗算結果としてレジスタ8
に格納する。こうして、上記式(1)が実現される。The input registers 21 to 28 are supplied with the coefficients A7 to A0 of the polynomial A, respectively. The product of the coefficient A7 from the input register 21 and the polynomial B is given to the coefficient unit 1 and multiplied by α, and then added by the adder 12 with the result of the product of the coefficient A6 from the input register 22 and the polynomial B. This addition result is multiplied by α and given to the adder 13 to be added to the product of the coefficient A5 and the polynomial B. After that, similarly, the product of the polynomials A and B is multiplied by α times the output of the adder at the preceding stage. The addition result from the adder 18 is stored in the register 8 as the multiplication result of the Galois field by the polynomial expression.
To store. Thus, the above formula (1) is realized.
【0006】ところで、誤りの位置及び値は、受信符号
多項式Uを生成多項式で割った剰余、即ち、シンドロー
ム多項式を求めることによって得られる。BCH符号で
は、シンドロームは、生成多項式の根である拡大体の元
を受信符号多項式に代入することによって求めることが
でき、例えば、データ数28でパリティ数4であるもの
とすると、下記式(2)乃至(5)によって与えられ
る。なお、Ui はデータのシンボルを示し、αは拡大体
の元である。By the way, the position and value of the error are obtained by obtaining the remainder obtained by dividing the received code polynomial U by the generator polynomial, that is, the syndrome polynomial. In the BCH code, the syndrome can be obtained by substituting the element of the extension field, which is the root of the generator polynomial, into the received code polynomial. For example, assuming that the number of data is 28 and the number of parity is 4, the following equation (2) ) Through (5). Note that Ui represents a data symbol, and α is an element of the extension field.
【0007】 図4は上記式(2)乃至(5)に示す演算を実現するシ
ンドローム演算器の動作を説明するためのブロック図で
ある。[0007] FIG. 4 is a block diagram for explaining the operation of the syndrome computing unit that implements the computations represented by the equations (2) to (5).
【0008】先ず、入力データのシンボルU0 は入力レ
ジスタ61乃至67に入力する。入力レジスタ61,62,64,
67の出力は夫々加算器31,32,34,37に一方の入力とし
て与える。初期状態ではレジスタ41乃至44の内容は0で
あるので、加算器31,32,34,37の他方の入力は0であ
り、レジスタ41乃至44には夫々シンボルU0 が格納され
る。First, the symbol U0 of the input data is input to the input registers 61 to 67. Input registers 61, 62, 64,
The output of 67 is given as one input to the adders 31, 32, 34 and 37, respectively. Since the contents of the registers 41 to 44 are 0 in the initial state, the other inputs of the adders 31, 32, 34 and 37 are 0, and the symbols U0 are stored in the registers 41 to 44, respectively.
【0009】次に、シンボルU1 を入力レジスタ61乃至
67に入力して、加算器31,32,34,37に与える。レジス
タ42の出力は係数器51を介して加算器32に与え、レジス
タ43の出力は係数器52,53を介して加算器34に与え、レ
ジスタ44の出力は係数器54乃至56を介して加算器37に与
える。従って、加算器31,32,34,37の他方の入力は夫
々U0 ,α×U0 ,α×α×U0 ,α×α×α×U0 と
なる。加算器31,32,34,37は夫々2入力を加算してレ
ジスタ41,42,43,44に格納する。この時点におけるレ
ジスタ41,42,43,44の内容は夫々下記式(6)乃至
(9)に示すものとなる。Next, the symbol U1 is transferred to the input registers 61 through 61.
It is input to 67 and given to the adders 31, 32, 34 and 37. The output of the register 42 is given to the adder 32 via the coefficient unit 51, the output of the register 43 is given to the adder 34 via the coefficient units 52 and 53, and the output of the register 44 is added via the coefficient units 54 to 56. Give to vessel 37. Therefore, the other inputs of the adders 31, 32, 34 and 37 are U0, α × U0, α × α × U0 and α × α × α × U0, respectively. The adders 31, 32, 34 and 37 add the two inputs and store them in the registers 41, 42, 43 and 44, respectively. The contents of the registers 41, 42, 43, and 44 at this point are shown in the following equations (6) to (9), respectively.
【0010】 以後同様にして、順次シンボルU2 乃至U28を入力レジ
スタ61乃至67に入力する。レジスタ41乃至44の内容は逐
次更新され、結局レジスタ41乃至44には夫々上記式
(2)乃至(5)のシンドローム係数S0 乃至S3 が得
られる。[0010] Thereafter, similarly, the symbols U2 to U28 are sequentially input to the input registers 61 to 67. The contents of the registers 41 to 44 are sequentially updated, and eventually the syndrome coefficients S0 to S3 of the above equations (2) to (5) are obtained in the registers 41 to 44, respectively.
【0011】ところで、ガロア体上の演算を用いたこの
種のエラー訂正回路はLSI化されている。LSI化の
初期においては動作周波数が低いことから、高速演算を
可能にするために、回路を並列に動作させたパイプライ
ン処理が有効であった。しかし、現在はLSI製造プロ
セスの進歩から回路動作は高速化されており、むしろ微
細パターンを採用して1チップのLSI上で多くの機能
を実現可能にすることが重要となっている。スタンダー
ドセル等の手法によって回路設計を行う場合には、1ブ
ロックにできるだけ多くの機能を持たせ、そのブロック
のパターンを最適化した設計を行うことが回路面積削減
の最も有効な手段となっている。ところが、図3及び図
4の構成は回路規模が大きく、ガロア体の乗算器及びシ
ンドローム演算器を搭載したエラー訂正回路のLSI化
に不利であるという欠点があった。By the way, an error correction circuit of this kind using the operation on the Galois field is implemented as an LSI. Since the operating frequency was low in the early stages of LSI, pipeline processing in which circuits were operated in parallel was effective in order to enable high-speed calculation. However, at present, the circuit operation is accelerated due to the progress of the LSI manufacturing process, and it is rather important to adopt a fine pattern to realize many functions on a one-chip LSI. When designing a circuit using a technique such as a standard cell, the most effective means for reducing the circuit area is to design one block with as many functions as possible and to optimize the pattern of that block. . However, the configurations of FIGS. 3 and 4 have a large circuit scale, which is disadvantageous in that an error correction circuit having a Galois field multiplier and a syndrome calculator is mounted on an LSI.
【0012】[0012]
【発明が解決しようとする課題】このように、上述した
従来のガロア体演算器においては、回路規模が大きくL
SI化した場合に基板面積占有率が高くLSI化に不利
であるという問題点があった。As described above, in the above-mentioned conventional Galois field arithmetic unit, the circuit scale is large and L is large.
There has been a problem that the board area occupation rate is high in the case of SI, which is disadvantageous for LSI.
【0013】本発明は、ガロア体の乗算器とシンドロー
ム演算器との回路ブロックを共用化することにより、L
SI上の回路面積を削減することができるガロア体演算
器を提供することを目的とする。According to the present invention, by sharing the circuit block of the Galois field multiplier and the syndrome calculator,
An object is to provide a Galois field arithmetic unit capable of reducing the circuit area on SI.
【0014】 [発明の構成][Constitution of Invention]
【課題を解決するための手段】本発明に係るガロア体演
算器は、ガロア体の拡大体の元αを乗算する複数のα倍
手段と、被乗数データのビット幅に対応する数のガロア
体の加算手段と、乗数データと被乗数データの各ビット
との積である部分積を保持する複数の部分積保持手段
と、前記部分積保持手段に格納されている前記被乗数デ
ータの所定ビットに対応する部分積を前記α倍手段に与
えて前記拡大体の元αを乗算し、乗算結果を前記加算手
段に与えて次のビットに対応する部分積と加算すること
によりガロア体の乗算を行わせる乗算制御手段と、前記
複数の部分積保持手段のうちの所定の複数の部分積保持
手段の内容を0にすることにより、前記乗算制御手段に
よってガロア体の拡大体の元αのn乗を乗算するべき乗
手段と、前記部分積保持手段のうちの所定の複数の部分
積保持手段にデータのシンボルを与えると共に前記乗算
制御手段を制御して前記α倍手段の出力に代えて前記べ
き乗手段の出力を前記加算手段に与えることにより、前
記加算手段からシンドロームを得る切換手段とを具備し
たものである。A Galois field arithmetic unit according to the present invention comprises a plurality of α multiplication means for multiplying an element α of an extension field of a Galois field and a number of Galois fields corresponding to the bit width of multiplicand data. Adder means, a plurality of partial product holding means for holding a partial product which is a product of multiplier data and each bit of the multiplicand data, and a portion corresponding to a predetermined bit of the multiplicand data stored in the partial product holding means A multiplication control in which the product is given to the α multiplying means to multiply the element α of the extension field, and the multiplication result is given to the adding means to add with the partial product corresponding to the next bit to perform Galois field multiplication. Means and the contents of a predetermined plurality of partial product holding means among the plurality of partial product holding means are set to 0, whereby the multiplication control means multiplies the nth power of the element α of the Galois field extension field by the power Means and holding said partial product By giving data symbols to a predetermined plurality of partial product holding means of the means and controlling the multiplication control means to give the output of the exponentiation means to the addition means instead of the output of the α multiplication means, And a switching means for obtaining the syndrome from the adding means.
【0015】[0015]
【作用】本発明において、乗算制御手段は、部分積保持
手段、α倍手段及び加算手段を用いてガロア体の乗算を
行う。べき乗手段は複数の部分積保持手段の内容を0に
することにより、α倍手段の出力をそのままα倍手段に
入力させることよりαのn乗の乗算を可能にする。切換
手段はべき乗手段の出力を加算手段に与えることによ
り、加算手段からシンドロームを得る。即ち、べき乗手
段及び切換手段によって部分積保持手段、α倍手段及び
加算手段を共用化して、乗算とシンドローム演算とを行
っており、乗算及びシンドローム演算機能を有する回路
の規模を低減する。In the present invention, the multiplication control means performs the Galois field multiplication using the partial product holding means, the α multiplication means and the addition means. The exponentiation means makes it possible to multiply α to the nth power by setting the contents of the plurality of partial product holding means to 0 and inputting the output of the α multiplication means to the α multiplication means as it is. The switching means provides the output of the exponentiation means to the addition means to obtain the syndrome from the addition means. That is, the exponentiation means and the switching means share the partial product holding means, the α multiplication means, and the addition means to perform multiplication and syndrome calculation, and reduce the scale of the circuit having the multiplication and syndrome calculation functions.
【0016】[0016]
【実施例】以下、図面を参照して本発明の実施例につい
て説明する。図1は本発明に係るガロア体演算器の一実
施例を示すブロック図である。Embodiments of the present invention will be described below with reference to the drawings. FIG. 1 is a block diagram showing an embodiment of a Galois field arithmetic unit according to the present invention.
【0017】最上位乃至最下位の部分積レジスタ71乃至
78には夫々被乗数である多項式A又は受信符号多項式U
i を入力する。即ち、ガロア体の乗算器として用いる場
合には、部分積レジスタ71乃至78には夫々多項式Aの各
係数A1 乃至A8 と乗数である多項式Bとの積が格納さ
れる。また、シンドローム演算器として用いる場合に
は、乗数Bとして受信符号多項式Ui を順次入力する。
なお、この場合には、被乗数Aは“69”Hex(01
101001)に固定して、部分積レジスタ71,74,7
6,77の内容を0にするようになっている。The highest to lowest partial product registers 71 to
78 is the polynomial A or the received code polynomial U that is the multiplicand, respectively.
Enter i. That is, when used as a Galois field multiplier, the partial product registers 71 to 78 store the products of the coefficients A1 to A8 of the polynomial A and the polynomial B, which is a multiplier, respectively. When used as a syndrome calculator, the received code polynomial Ui is sequentially input as the multiplier B.
In this case, the multiplicand A is “69” Hex (01
101001), the partial product registers 71, 74, 7
The contents of 6 and 77 are set to 0.
【0018】部分積レジスタ71乃至78の出力は夫々係数
器81及び加算器82乃至88に与える。加算器82乃至88は2
入力を加算して出力する。係数器81は部分積レジスタ71
の出力をα倍して切換え器92の入力端aを介して加算器
82に与える。加算器82,83,85,88の出力は夫々レジス
タ112 ,113 ,115 ,118 に与え、レジスタ112 ,113
,115 ,118 の出力は夫々切換え器92,93,94,96の
入力端bに与える。切換え器93,94,96の入力端aには
加算器82,83,85の出力を与える。切換え器92,93,9
4,96は切換え信号によって制御され、乗算動作を行う
場合には入力端aを選択し、シンドローム演算を行う場
合には入力端bを選択して、選択した入力端からの信号
を夫々加算器82,係数器103 ,104 ,106 に与える。The outputs of the partial product registers 71 to 78 are given to the coefficient unit 81 and the adders 82 to 88, respectively. The adders 82 to 88 are 2
Add input and output. Coefficient unit 81 is a partial product register 71
The output of is multiplied by α and the adder is added through the input terminal a of the switch 92.
Give to 82. The outputs of the adders 82, 83, 85, 88 are given to the registers 112, 113, 115, 118, respectively, and the registers 112, 113 are given.
, 115 and 118 are applied to the input terminals b of the switches 92, 93, 94 and 96, respectively. The outputs of the adders 82, 83 and 85 are given to the input terminals a of the switching devices 93, 94 and 96. Switch 92, 93, 9
4 and 96 are controlled by a switching signal. When performing a multiplication operation, the input end a is selected, when performing the syndrome operation, the input end b is selected, and the signals from the selected input ends are added to the adder. 82 and coefficient units 103, 104 and 106.
【0019】係数器103 ,104 ,106 は入力された信号
をα倍して夫々加算器83,84,86に与える。加算器84,
86は夫々出力を係数器105 ,107 に出力する。係数器10
5 ,107 は入力された信号をα倍して夫々加算器85,87
に出力し、加算器87は出力を係数器108 に与える。係数
器108 は入力された信号をα倍して加算器88に与えるよ
うになっている。なお、レジスタ112 ,113 ,115 ,11
8 はクリア信号によってクリアされるようになってい
る。また、シンドローム演算時には、最上位の部分積レ
ジスタ71の内容は0又は不定であり使用しない。The coefficient units 103, 104 and 106 multiply the input signals by α and give them to the adders 83, 84 and 86, respectively. Adder 84,
86 outputs the outputs to the coefficient multipliers 105 and 107, respectively. Coefficient unit 10
5 and 107 multiply the input signal by α and adder 85 and 87 respectively
, And the adder 87 gives the output to the coefficient unit 108. The coefficient unit 108 multiplies the input signal by α and supplies it to the adder 88. The registers 112, 113, 115, 11
8 is to be cleared by a clear signal. Further, at the time of syndrome calculation, the content of the uppermost partial product register 71 is 0 or undefined and is not used.
【0020】次に、このように構成された実施例の動作
について図2を参照して説明する。図2はシンドローム
演算動作時の等価回路を示すブロック図である。Next, the operation of the embodiment thus constructed will be described with reference to FIG. FIG. 2 is a block diagram showing an equivalent circuit during the syndrome calculation operation.
【0021】先ず、ガロア体の乗算器として動作させる
ものとする。この場合には、切換え器92,93,94,96は
入力端aを選択する。被乗数の係数A7 乃至A0 は夫々
部分積レジスタ71乃至78に与え、部分積レジスタ71乃至
78には夫々部分積であるA7・B,A6 ・B,A5 ・
B,A4 ・B,A3 ・B,A2 ・B,A1 ・B,A0 ・
Bが格納される。最上位の部分積A7 ・Bは係数器81に
与えてα倍し、切換え器92を介して加算器82に与える。
加算器82は部分積レジスタ72からの部分積A6 ・Bと係
数器81の出力とを加算して切換え器93に出力する。First, it is assumed that the multiplier operates as a Galois field multiplier. In this case, the switches 92, 93, 94 and 96 select the input end a. The multiplicand coefficients A7 to A0 are given to the partial product registers 71 to 78, respectively.
78 is the partial product of A7 ・ B, A6 ・ B, A5 ・
B, A4 ・ B, A3 ・ B, A2 ・ B, A1 ・ B, A0 ・
B is stored. The highest-order partial product A7 · B is given to the coefficient unit 81, multiplied by α, and given to the adder 82 via the switching unit 92.
The adder 82 adds the partial products A6.B from the partial product register 72 and the output of the coefficient unit 81 and outputs the result to the switch 93.
【0022】切換え器92,93,94,96は入力端aを選択
しているので、加算器82乃至87の出力は夫々係数器103
乃至108 を介して加算器83乃至88に与えられることにな
る。加算器82の出力((B・A7 )・α+B・A6 )は
係数器103 によってα倍して加算器83に与える。以後同
様に、加算器83乃至87の出力をα倍して次の加算器84乃
至88に与える。結局、この場合には、図3と等価の回路
が構成されて、レジスタ118 に上記式(1)の乗算結果
が格納される。Since the switches 92, 93, 94 and 96 select the input terminal a, the outputs of the adders 82 to 87 are respectively output from the coefficient unit 103.
Through 108 to the adders 83 through 88. The output ((B · A7) · α + B · A6) of the adder 82 is multiplied by α by the coefficient unit 103 and given to the adder 83. Thereafter, similarly, the outputs of the adders 83 to 87 are multiplied by α and are given to the next adders 84 to 88. Eventually, in this case, a circuit equivalent to that of FIG. 3 is constructed, and the multiplication result of the above equation (1) is stored in the register 118.
【0023】次に、シンドローム演算器として動作させ
るものとする。この場合には、部分積レジスタ71乃至78
には乗数Bとして受信符号多項式Ui を順次入力する。
また、被乗数Aとして各レジスタ71乃至78に夫々011
01001(=“69”)を与える。従って、部分積レ
ジスタ71,74,76,77に保持される部分積は0となり、
シンボルは部分積レジスタ72,73,75,78のみから出力
されることになる。また、シンドローム演算開始時には
クリア信号によってレジスタ112 ,113 ,115,118 を
クリアする。Next, it is assumed that it operates as a syndrome calculator. In this case, the partial product registers 71 to 78
The received code polynomial Ui is sequentially input as a multiplier B to the.
Further, the multiplicand A is 011 in each of the registers 71 to 78.
01001 (= “69”) is given. Therefore, the partial products held in the partial product registers 71, 74, 76, 77 are 0,
Symbols will be output only from the partial product registers 72, 73, 75, 78. Further, when the syndrome calculation is started, the registers 112, 113, 115 and 118 are cleared by a clear signal.
【0024】シンドローム演算が指示されると、切換え
器92,93,94,96は入力端bを選択して、レジスタ112
,113 ,115 ,118 の出力を夫々加算器82及び係数器1
03 ,104 ,106 に与える。係数器103 ,104 ,106 は
レジスタ113 ,115 ,118 の出力をα倍して加算器83,
84,86に与える。加算器84,86,87は部分積レジスタ7
4,76,77の内容が0であるので、係数器104 ,106 ,1
07 の出力をそのまま係数器105 ,107 ,108 に出力す
る。更に、係数器105 ,107 ,108 は入力された信号α
倍して加算器85,87,88に出力する。When the syndrome calculation is instructed, the switchers 92, 93, 94 and 96 select the input end b and register the register 112.
, 113, 115, and 118 outputs the output of adder 82 and coefficient unit 1 respectively.
Give to 03, 104 and 106. The coefficient units 103, 104 and 106 multiply the outputs of the registers 113, 115 and 118 by α and adder 83,
Give to 84, 86. Adders 84, 86, 87 are partial product registers 7
Since the contents of 4, 76 and 77 are 0, the coefficient units 104, 106 and 1
The output of 07 is output as it is to the coefficient units 105, 107 and 108. Further, the coefficient units 105, 107 and 108 are provided with the input signal α
It is multiplied and output to adders 85, 87, 88.
【0025】即ち、部分積レジスタ71,74,76,77の出
力を0にすると共に、切換え器92,93,94,96が入力端
bを選択することにより、レジスタ112 の出力はそのま
ま加算器82に与えられ、レジスタ113 の出力はα倍され
て加算器83に与えられ、レジスタ115 の出力はαの2乗
倍されて加算器85に与えられ、レジスタ118 の出力はα
の3乗倍されて加算器88に与えられることになる。従っ
て、この場合には、図2に示す等価回路が構成される。That is, the outputs of the partial product registers 71, 74, 76, 77 are set to 0, and the selectors 92, 93, 94, 96 select the input end b, so that the output of the register 112 remains unchanged. 82, the output of the register 113 is multiplied by α and given to the adder 83, the output of the register 115 is multiplied by α 2 and given to the adder 85, and the output of the register 118 is given by α.
Is multiplied by 3 and is given to the adder 88. Therefore, in this case, the equivalent circuit shown in FIG. 2 is configured.
【0026】演算開始時にはレジスタ112 ,113 ,115
,118 の内容はクリアされているので、切換え器92,
係数器103 ,105 ,108 からは0が加算器82,83,85,
88に与えられる。部分積レジスタ72,73,75,78に入力
されたシンボルU0 は、夫々加算器82,83,85,88を介
してそのままレジスタ112 ,113 ,115 ,118 に与える
ことになる。次に、シンボルU1 を部分積レジスタ72,
73,75,78に入力する。レジスタ112 ,113 ,115 ,11
8 の出力は、図2に示すように、夫々1倍,α倍,αの
2乗倍,αの3乗倍して加算器82,83,85,88に与えて
おり、加算器82,83,85,88は夫々レジスタ112 の出力
及び係数器103 ,105 ,108 の出力と部分積レジスタ7
2,73,75,78からのシンボルUi とを加算して出力す
る。At the start of calculation, the registers 112, 113, 115
Since the contents of 118 are cleared, the switching device 92,
0 is added from the coefficient units 103, 105, 108 to the adders 82, 83, 85,
Given to 88. The symbol U0 input to the partial product registers 72, 73, 75 and 78 is directly applied to the registers 112, 113, 115 and 118 via the adders 82, 83, 85 and 88, respectively. Next, the symbol U1 is transferred to the partial product register 72,
Input in 73, 75, 78. Registers 112, 113, 115, 11
As shown in FIG. 2, the output of 8 is given to adders 82, 83, 85, 88 after being multiplied by 1 times, α times, α times squared, and α times cubed, respectively. 83, 85, and 88 are the output of the register 112 and the outputs of the coefficient multipliers 103, 105, and 108, and the partial product register 7 respectively.
The symbols Ui from 2, 73, 75 and 78 are added and output.
【0027】即ち、部分積レジスタ72の出力は、加算器
82、レジスタ112 及び切換え器92を介して加算器82に与
えることにより累積加算する。シンボルU0 乃至U27を
順次入力することにより、レジスタ112 には上記式
(2)に示すシンドロームS0 が得られる。That is, the output of the partial product register 72 is the adder.
Cumulative addition is performed by giving it to the adder 82 via 82, the register 112 and the switch 92. By sequentially inputting the symbols U0 to U27, the syndrome S0 shown in the above equation (2) can be obtained in the register 112.
【0028】また、部分積レジスタ72の出力は、加算器
83,レジスタ113 、切換え器93及び係数器103 を介して
加算器83に与えることにより、α倍しながら累積加算す
る。従って、シンボルU0 乃至U27を順次入力すること
により、レジスタ113 には上記式(3)に示すシンドロ
ームS1 が格納される。The output of the partial product register 72 is an adder.
By giving it to the adder 83 via 83, the register 113, the switch 93 and the coefficient unit 103, the cumulative addition is performed while multiplying by α. Therefore, by sequentially inputting the symbols U0 to U27, the syndrome S1 shown in the above equation (3) is stored in the register 113.
【0029】また、部分積レジスタ75の出力は、加算器
85,レジスタ115 、切換え器94、係数器104 、加算器84
及び係数器105 を介して加算器85に与えることにより、
αの2乗倍しながら累積加算する。従って、シンボルU
0 乃至U27を順次入力することにより、レジスタ115 に
は上記式(4)に示すシンドロームS2 が格納される。The output of the partial product register 75 is an adder.
85, register 115, switching unit 94, coefficient unit 104, adder 84
And by giving it to the adder 85 via the coefficient unit 105,
Cumulative addition is performed while multiplying α by 2. Therefore, the symbol U
By sequentially inputting 0 to U27, the syndrome S2 shown in the above equation (4) is stored in the register 115.
【0030】同様に、部分積レジスタ78の出力は、加算
器88,レジスタ118 、切換え器96、係数器106 、加算器
86、係数器107 、加算器87及び係数器108 を介して加算
器88に与えることにより、αの3乗倍しながら累積加算
する。従って、シンボルU0乃至U27を順次入力するこ
とにより、レジスタ118 には上記式(5)に示すシンド
ロームS3 が格納される。Similarly, the output of the partial product register 78 is the adder 88, the register 118, the switching unit 96, the coefficient unit 106, and the adder.
By giving it to the adder 88 via the 86, the coefficient unit 107, the adder 87 and the coefficient unit 108, cumulative addition is performed while multiplying α to the third power. Therefore, by sequentially inputting the symbols U0 to U27, the syndrome S3 shown in the above equation (5) is stored in the register 118.
【0031】このように、本実施例においては、切換え
器92,93,94,96を乗算動作時とシンドローム演算時と
で切換えることにより、回路を共用化してガロア体の乗
算とシンドローム演算とを行っている。回路を共用化し
ているので、ガロア体の乗算器とシンドローム演算器と
を別々に構成する場合よりも、回路規模を縮小すること
ができ、LSI化する場合において、基板占有面積を削
減することができる。これにより、略乗算器の構成に必
要な面積を占有するのみで、ガロア体の乗算器とシンド
ローム演算器とを構成することができる。As described above, in the present embodiment, the switches 92, 93, 94, and 96 are switched between the multiplication operation and the syndrome operation, thereby sharing the circuit and performing the Galois field multiplication and the syndrome operation. Is going. Since the circuit is shared, it is possible to reduce the circuit scale as compared with the case where the Galois field multiplier and the syndrome calculator are separately configured, and it is possible to reduce the board occupation area in the case of LSI implementation. it can. As a result, the Galois field multiplier and the syndrome calculator can be configured only by occupying the area required for the configuration of the multiplier.
【0032】なお、本実施例においては、シンドローム
演算時は、切換え器92,93,94,96の出力はαの0乗
倍,α倍,αの2乗倍,αの3乗倍するようにに固定さ
れているが、任意の倍数αのn乗を乗算する係数器を用
いて、外部信号によってnの値を切換えるようにするこ
ともできる。そうすると、パリティ数の増加及びエラー
ロケーション演算に容易に対応することができるという
利点がある。In this embodiment, during the syndrome calculation, the outputs of the switches 92, 93, 94 and 96 are multiplied by α to the 0th power, α times, α to the second power and α to the third power. However, it is also possible to switch the value of n by an external signal using a coefficient unit that multiplies an arbitrary multiple α to the nth power. Then, there is an advantage that it is possible to easily cope with an increase in the number of parities and an error location calculation.
【0033】[0033]
【発明の効果】以上説明したように本発明によれば、ガ
ロア体の乗算器とシンドローム演算器との回路ブロック
を共用化することにより、LSI上の回路面積を削減す
ることができるという効果を有する。As described above, according to the present invention, it is possible to reduce the circuit area on the LSI by sharing the circuit block of the Galois field multiplier and the syndrome calculator. Have.
【図1】本発明に係るガロア体演算器の一実施例を示す
ブロック図。FIG. 1 is a block diagram showing an embodiment of a Galois field arithmetic unit according to the present invention.
【図2】実施例を説明するための説明図。FIG. 2 is an explanatory diagram for explaining an example.
【図3】ガロア体の乗算器の動作を説明するためのブロ
ック図。FIG. 3 is a block diagram for explaining the operation of a Galois field multiplier.
【図4】シンドローム演算動作を説明するためのブロッ
ク図。FIG. 4 is a block diagram for explaining a syndrome calculation operation.
71〜78…部分積レジスタ、81,103 〜108 …係数器、82
〜88…加算器、92〜96…切換え器、112 〜118 …レジス
タ71 to 78 ... partial product register, 81, 103 to 108 ... coefficient unit, 82
~ 88 ... Adder, 92-96 ... Switch, 112-118 ... Register
Claims (2)
のα倍手段と、 被乗数データのビット幅に対応する数のガロア体の加算
手段と、 乗数データと被乗数データの各ビットとの積である部分
積を保持する複数の部分積保持手段と、 前記部分積保持手段に格納されている前記被乗数データ
の所定ビットに対応する部分積を前記α倍手段に与えて
前記拡大体の元αを乗算し、乗算結果を前記加算手段に
与えて次のビットに対応する部分積と加算することによ
りガロア体の乗算を行わせる乗算制御手段と、 前記複数の部分積保持手段のうちの所定の複数の部分積
保持手段の内容を0にすることにより、前記乗算制御手
段によってガロア体の拡大体の元αのn乗を乗算するべ
き乗手段と、 前記部分積保持手段のうちの所定の複数の部分積保持手
段にデータのシンボルを与えると共に前記乗算制御手段
を制御して前記α倍手段の出力に代えて前記べき乗手段
の出力を前記加算手段に与えることにより、前記加算手
段からシンドロームを得る切換手段とを具備したことを
特徴とするガロア体演算器。1. A plurality of α multiplication means for multiplying an element α of an extension field of a Galois field, an addition means for a Galois field of a number corresponding to a bit width of multiplicand data, and each bit of multiplier data and multiplicand data A plurality of partial product holding means for holding a partial product that is a product, and a partial product corresponding to a predetermined bit of the multiplicand data stored in the partial product holding means is given to the α multiplying means to generate an element of the extension field. multiplication control means for multiplying α and giving a multiplication result to the addition means to add with a partial product corresponding to the next bit to perform Galois field multiplication; and a predetermined one of the plurality of partial product holding means. By setting the contents of the plurality of partial product holding means of 0 to 0, exponentiation means for multiplying the nth power of the element α of the Galois field extension field by the multiplication control means, and a predetermined plurality of the partial product holding means The partial product holding means And a switching means for obtaining the syndrome from the adding means by giving the output of the exponent means to the adding means instead of the output of the α multiplying means by giving the symbol of the data and controlling the multiplication control means. A Galois field arithmetic unit characterized by the above.
制御するべき乗制御手段を付加したことを特徴とする請
求項1に記載のガロア体演算器。2. The Galois field arithmetic unit according to claim 1, further comprising a power control means for controlling n of the power means by an external signal.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5214357A JPH0764810A (en) | 1993-08-30 | 1993-08-30 | Galois field computing element |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP5214357A JPH0764810A (en) | 1993-08-30 | 1993-08-30 | Galois field computing element |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0764810A true JPH0764810A (en) | 1995-03-10 |
Family
ID=16654447
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP5214357A Pending JPH0764810A (en) | 1993-08-30 | 1993-08-30 | Galois field computing element |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0764810A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001056640A (en) * | 1999-08-19 | 2001-02-27 | Toyo Commun Equip Co Ltd | Product-sum arithmetic unit and ciphering and deciphering device using the same |
JP2001109376A (en) * | 1999-10-04 | 2001-04-20 | Toyo Commun Equip Co Ltd | Arithmetic circuit and arithmetic processor |
JP2007129618A (en) * | 2005-11-07 | 2007-05-24 | Renesas Technology Corp | alpha MULTIPLICATION CIRCUIT AND ARITHMETIC CIRCUIT OF GALOIS FIELD |
-
1993
- 1993-08-30 JP JP5214357A patent/JPH0764810A/en active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001056640A (en) * | 1999-08-19 | 2001-02-27 | Toyo Commun Equip Co Ltd | Product-sum arithmetic unit and ciphering and deciphering device using the same |
JP2001109376A (en) * | 1999-10-04 | 2001-04-20 | Toyo Commun Equip Co Ltd | Arithmetic circuit and arithmetic processor |
JP2007129618A (en) * | 2005-11-07 | 2007-05-24 | Renesas Technology Corp | alpha MULTIPLICATION CIRCUIT AND ARITHMETIC CIRCUIT OF GALOIS FIELD |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6119262A (en) | Method and apparatus for solving key equation polynomials in decoding error correction codes | |
US5442578A (en) | Calculating circuit for error correction | |
US7089276B2 (en) | Modular Galois-field subfield-power integrated inverter-multiplier circuit for Galois-field division over GF(256) | |
EP0836285B1 (en) | Reed-Solomon decoder with general-purpose processing unit and dedicated circuits | |
US5537426A (en) | Operation apparatus for deriving erasure position Γ(x) and Forney syndrome T(x) polynomials of a Galois field employing a single multiplier | |
US5964826A (en) | Division circuits based on power-sum circuit for finite field GF(2m) | |
US6341297B1 (en) | Parallel processing syndrome calculating circuit and Reed-Solomon decoding circuit | |
JPH0764810A (en) | Galois field computing element | |
KR100336234B1 (en) | Data error correction apparatus | |
JP3614978B2 (en) | Galois field division method and division apparatus | |
JP3233502B2 (en) | Decryption device | |
JPH0476540B2 (en) | ||
EP1037148B1 (en) | Error coding method | |
Chen | Multisequence linear shift register synthesis and its application to BCH decoding | |
KR940011659B1 (en) | Uclid algorithm arithmetic unit | |
JP2963018B2 (en) | Reed-Solomon error correction code decoding circuit | |
JP2907138B2 (en) | Error correction arithmetic processing method and processing circuit | |
JP2603244B2 (en) | Error correction device | |
JP3131969B2 (en) | Arithmetic unit | |
JP2603243B2 (en) | Error correction device | |
JP2943255B2 (en) | Reciprocal calculation circuit | |
KR0167390B1 (en) | Decoder | |
KR970005125B1 (en) | Reed soloman decoder | |
JPH0778748B2 (en) | Galois field arithmetic unit | |
JPH0834440B2 (en) | Galois field calculation method |