JPS63164625A - Gcd generating circuit - Google Patents

Gcd generating circuit

Info

Publication number
JPS63164625A
JPS63164625A JP31083286A JP31083286A JPS63164625A JP S63164625 A JPS63164625 A JP S63164625A JP 31083286 A JP31083286 A JP 31083286A JP 31083286 A JP31083286 A JP 31083286A JP S63164625 A JPS63164625 A JP S63164625A
Authority
JP
Japan
Prior art keywords
input
register
processing
polynomial
output
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP31083286A
Other languages
Japanese (ja)
Inventor
Keiichi Iwamura
恵市 岩村
Hideki Imai
秀樹 今井
Yasutaka Doi
土肥 康孝
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.)
Canon Inc
Original Assignee
Canon Inc
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 Canon Inc filed Critical Canon Inc
Priority to JP31083286A priority Critical patent/JPS63164625A/en
Publication of JPS63164625A publication Critical patent/JPS63164625A/en
Priority to US07/982,062 priority patent/US5325373A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To attain large scale circuit integration with small size by connecting plural identical arithmetic circuits each comprising a multiplier on the Galois field, an adder, and m-stage of register arrays storing its addition output and selector output and using polynomials A, B to obtain its greatest common divisor polynomial GCD [A, B]. CONSTITUTION:In obtaining polynomials A, B and L, M, two independent Process sections are to be provided or one Process section is to be used twice. In using one Process section twice, the processing speed is halved and in providing two Process sections independently, number of required PEs is doubled. For example, the relation of selector selection signals S1, 2=11 is selected only at the input of syndrome polynomials Sx, x<21>, selectors outputting D, E inputs at the X, Y outputs are used. Moreover, in processing A, B and L, M by one processing section, the processing element PE shown in figure is used to control S1-S4 thereby inputting A=x<21>, B=Sx, L=0, M=1.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、誤り訂正の分野に関し、また、通信路を対象
とする信号処理において、並列処理を行う技術に関する
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to the field of error correction, and also relates to a technique for performing parallel processing in signal processing targeting communication channels.

本発明は、BCH符号の符号化復号において、GCD(
最大公約数)生成を行う技術に関する。
The present invention uses GCD (
Regarding the technology for generating (greatest common divisor).

〔従来技術とその問題点〕[Prior art and its problems]

近年、メモリーシステムを始めとする、各種ディジタル
システムの信頼性向上の対策として誤り検出・誤り訂正
符号(以下、単に誤り訂正符号という)の適用が浸透し
てきている。
In recent years, the application of error detection and error correction codes (hereinafter simply referred to as error correction codes) has become widespread as a measure to improve the reliability of various digital systems including memory systems.

この誤り訂正符号には、対象とするシステムに応じた種
々の物があるが、最も代表的なものは巡回符号と呼ばれ
る線形符号の1クラスである。
There are various types of error correction codes depending on the target system, but the most typical one is a class of linear codes called cyclic codes.

これには、ランダム誤り訂正に適したBCI(符号。This includes BCI (code) suitable for random error correction.

バースト誤り訂正に適したファイヤー符号、更にBCH
符号の1種であり、バイト誤り訂正に適したReed−
5olomon符号(以下R3符号)等が含まれる。な
かでもR3符号は、同一の符号長と訂正能力を持つ線形
符号の中で、最も冗長度を低く出来るという特徴を持つ
、実用上非常に重要な符号であり、衛星通信、磁気ディ
スク、コンパクトディスク(以下、CDと呼ぶ)等に広
く利用されている。
Fire code suitable for burst error correction, and BCH
Reed- is a type of code and is suitable for byte error correction.
5olomon code (hereinafter referred to as R3 code). Among them, the R3 code is a code that is extremely important in practice because it has the lowest redundancy among linear codes with the same code length and correction ability, and is used in satellite communications, magnetic disks, and compact disks. (hereinafter referred to as CD), etc., is widely used.

このR8符号の復号法には種々の物があり、2ないし3
種度の小さな訂正能力に対する復号器の装置化は比較的
容易である。しかし、高信頼性を得る為には、訂正能力
を大きくする必要がある。
There are various decoding methods for this R8 code, and there are 2 to 3 decoding methods.
It is relatively easy to implement a decoder for correction capabilities with small degrees of severity. However, in order to obtain high reliability, it is necessary to increase the correction ability.

その場合、装置の規模及び制御が非常に複雑になり、復
号処理に掛かる計算時間も大きくなると言った問題が生
じる。この為、現在CDではCIRCと呼ばれる一種の
2重符号化を用いているが、より高信頼性または高速性
が要求されるシステムでは問題がある。また、高信頼性
を得るために光磁気ディスクなどではLong  Di
stance  Code(以下、LDC)と呼ばれる
多重誤り訂正符号が提案されているが、高速性の実現が
問題である。
In that case, problems arise in that the scale and control of the device becomes extremely complex, and the calculation time required for decoding processing also increases. For this reason, CDs currently use a type of double encoding called CIRC, but this poses a problem in systems that require higher reliability or higher speed. In addition, in order to obtain high reliability, magneto-optical disks use Long Di
A multiple error correction code called a stance code (hereinafter referred to as LDC) has been proposed, but the problem is how to achieve high speed.

衛星通信では、高信頼性と高速性の2つが要求されてい
るが、装置化を考えた場合、以上の2つの条件を満足さ
せることは非常に困難であった。
Satellite communications require two things: high reliability and high speed, but when considering the development of equipment, it has been extremely difficult to satisfy the above two conditions.

そこで本出願人が先に出願したrBCH符号化復号方式
」(昭和61年12月22日出願)ではVLSIアーキ
テクチャの特徴を生かし、次のことを実現した。
Therefore, in "rBCH Encoding/Decoding System" (filed on December 22, 1985), which the present applicant previously applied for, the following was realized by taking advantage of the characteristics of the VLSI architecture.

l)高信頼性(大能力) 2)高速性 3)内部構造の規則性 4)、大集積化 これによって、10−20Mwps=80−1610−
2O以上の処理速度を持つR3符号化復号器が実現出来
ることを示した。また、訂正能力に対して同じ構成のP
Eを1次関数的に増やしていくことによって任意の高信
頼性を得られる構成にした。これは衛星通信等、高信頼
性と高速度性が求められるシステムには非常に有効であ
る。また、復号処理の中心である誤り位置多項式と誤り
数値多項式を求める処理を10−210−2O(cod
elength/5ec)で行うことも出来るので高速
処理には非常に有効な方法である。
l) High reliability (large capacity) 2) High speed 3) Regularity of internal structure 4) Large integration This allows 10-20Mwps = 80-1610-
We have shown that it is possible to realize an R3 encoder decoder with a processing speed of 20 or more. Also, for the correction ability, P of the same configuration
By increasing E in a linear manner, the configuration is such that arbitrary high reliability can be obtained. This is extremely effective for systems that require high reliability and high speed, such as satellite communications. In addition, the process of calculating the error locator polynomial and error value polynomial, which is the center of the decoding process, is performed using 10-210-2O (cod
This is a very effective method for high-speed processing because it can also be performed using length/5ec).

しかし、CDまたは磁気ディスクなどで用いているデー
タの転送レートは10 M b p s以下であること
が多く、ハード容量の小型化が求められており、その点
についてはなお問題があった。
However, the data transfer rate used in CDs, magnetic disks, etc. is often less than 10 Mbps, and there is still a problem in this respect, as there is a demand for a smaller hardware capacity.

〔問題点を解決するための手段〕[Means for solving problems]

以上の点に鑑み、本発明は、本出願人が先に出願した上
記rBCH符号化復号方式」に示したR3符号化復号器
のアーキテクチャの特徴を生かしながら2)の高速性の
条件を犠牲にすることによって4)の条件を小型化で達
成出来るアーキテクチャを〔実施例〕 以下図面に基づいて本発明の実施例について説明する。
In view of the above points, the present invention makes use of the features of the architecture of the R3 encoding decoder shown in the above-mentioned rBCH encoding/decoding method previously filed by the applicant, while sacrificing the high speed condition in 2). [Embodiment] An architecture that can achieve the condition 4) with miniaturization by doing the following.Embodiments of the present invention will be described below based on the drawings.

前述したR8符号化復号器のアーキテクチャはシストリ
ック・アーキテクチャの考え方を適用したものである。
The architecture of the R8 encoder decoder described above applies the idea of systolic architecture.

シストリック・アーキテクチャの特徴は、1つの処理が
同一のPEの同一ネットワークによって処理されること
である。これは全てのプロセッシング・エレメント(P
E)で行われる処理が同一であり、その入出力関係も同
一であることを示している。従って1度の処理を1つの
PEで行った後、次のPHに処理結果を送らずにメモリ
(レジスタ)部に蓄えておき自分自身にフィードバック
することによって、PEの数を増やさずに処理すること
が出来る。そこで、今回の基本となるPEを第1図のよ
うに定める。第1図において、1−4は第36図と同じ
であるが、5−7のレジスタがm段のレジスタ列または
メモリ部となっている。
A feature of the systolic architecture is that one process is handled by the same network of the same PEs. This applies to all processing elements (P
This shows that the processing performed in E) is the same, and the input/output relationships are also the same. Therefore, after performing one process with one PE, the processing result is not sent to the next PH, but is stored in the memory (register) section and fed back to itself, allowing processing without increasing the number of PEs. I can do it. Therefore, we decided on the basic PE as shown in Figure 1. In FIG. 1, numerals 1-4 are the same as those in FIG. 36, but registers 5-7 form an m-stage register array or memory section.

回路規模はGF(2”)を考えた場合、lのセレクタを
第37図の構成で約50ゲート、2,3の乗算器を第3
8図の構成で1つを約300ゲート、4の加算器を第3
9図の構成で約50ゲー、ト、5−7のレジスタ1つを
約50ゲートで計算する。
Considering the circuit scale as GF (2"), the selector l is configured as shown in Fig. 37 with approximately 50 gates, and the multipliers 2 and 3 are connected to the third gate.
In the configuration shown in Figure 8, one gate has approximately 300 gates, and the 4 adders are the third gate.
With the configuration shown in FIG. 9, one register of 5-7 is calculated using about 50 gates.

また1つのPEに注目した場合、前アーキテクチャでは
1度の処理を行い処理結果を出力した後、そのPEは次
の入力を受は取ることが出来るのでIPEの処理速度を
最大に生かした高速処理が可能であるが、処理結果を次
のPEに送らず自分自身にフィードバックする場合、次
の入力を受は取ることが出来ないので外部的にみた場合
1つのPEへのデータの転送レートは遅くなる。但し、
PE自体の処理速度は1−4からなるPEの演算部で決
定され、その構成は変わらないので10−20 M h
 zである。ここでは、後の都合のためにIPHの処理
速度は16 M h zとする。
Also, when focusing on one PE, in the previous architecture, after performing one process and outputting the processing result, that PE can receive and receive the next input, so high-speed processing that takes full advantage of IPE processing speed However, if the processing result is fed back to itself without sending it to the next PE, the receiver cannot receive the next input, so from an external perspective, the data transfer rate to one PE is slow. Become. however,
The processing speed of the PE itself is determined by the arithmetic unit of the PE consisting of 1-4, and its configuration remains unchanged, so the processing speed is 10-20 M h
It is z. Here, for later convenience, the IPH processing speed is assumed to be 16 MHz.

以下、このPEを基本型としてステップ1−4の処理を
実現するが、小型化を目的とするために各々の処理にお
いて不必要な部品は削り、各々の処理においてPEを最
適化していく。
Hereinafter, the processing of steps 1-4 will be realized using this PE as a basic model, but for the purpose of miniaturization, unnecessary parts will be removed in each processing and the PE will be optimized in each processing.

WS士Llの」L皿 まず、R3符号の原理について述べる。R3符号は、同
一の符号長と訂正能力を持つ線形符号の中で、最も冗長
度を低くできるという特徴を持つ、実用上非常に重要な
符号である。
First, the principle of the R3 code will be described. The R3 code is a code of great practical importance, having the characteristic of having the lowest redundancy among linear codes having the same code length and correction ability.

R3符号は、非二元B CH符号(Bose−Chav
dhuri−Ilocquenghen  code)
の特別な場合であり、有限体(以下、GFと略す。) 
GF (q)の元で構成される。ここでは、qはGF 
(q)の元の数である。
The R3 code is a non-dual BCH code (Bose-Chav
dhuri-Ilocquenghen code)
is a special case of finite field (hereinafter abbreviated as GF).
It is composed of elements of GF (q). Here, q is GF
It is the original number of (q).

このqを用いると、R8符号を特徴づける各種パラメー
タが以下のように定義される。
Using this q, various parameters characterizing the R8 code are defined as follows.

・符 号 長 : n(−符号中のシンボル数)n≦q
−1(2−1) ・情報シンボル数二 k(−符号中の情報シンボル数)
・検査シンボル数:n−k(−符号中の検査シンボル数
)n−に=dmin−1(2−2) ・訂正能力 : t(−符号中の訂正できるシンポ数)
([X]ガウス記号6.xを越えない最大の整数)ここ
ではd m i nは最小距離(ハミング距離)°と呼
ばれるものである。
・Code length: n (-number of symbols in the code) n≦q
-1 (2-1) ・Number of information symbols 2 k (-number of information symbols in code)
・Number of check symbols: n-k (-number of check symbols in the code) n- = dmin-1 (2-2) ・Correction ability: t (-number of symbols that can be corrected in the code)
([X] Gaussian symbol 6. The largest integer not exceeding x) where d m i n is what is called the minimum distance (Hamming distance)°.

圧コL北 ここで符号語等の多項式表現について説明する゛。Pressure L north Here, we will explain polynomial expressions such as code words.

例えば、符号化したいに個の情報シンボルをI” (i
o+ 111・・・+  ih−+)        
(210)とする時、これは次のように多項式表現され
る。
For example, if you want to encode as many information symbols as I” (i
o+ 111...+ ih-+)
(210), this is expressed as a polynomial as follows.

I(x) = io+i、 x+i、 x”+・・・+
i、−,x’−”+1k−1x’−’  (2−11)
同様に付加される(n−k)個の検査シンボルC” (
cot c+、・・・、Cn−*−+)     ’ 
  (212)は、 C(x) = Co+C+ X+C2X”+ ・−・C
,−に−、、xa−に−1(2−13)更に、これらを
まとめた符号語F F= (fo、 f+、 fzs・in−+)    
   (214):(Co 、C+ ・・’ C,−h
−+ + L山+ !2 、− ik−+ )   (
215)は、 F(x) = fo十f+ x十f、 x”+−f、、
−,x”−”+fn−+ x’−’  (2−16)は
それを生成した生成多項式〇(x)で割り切る事がα、
α2.・・・α1という根を持つから、符号語多項式F
 (x)はこの根を代入すると、次式が成立する。
I(x) = io+i, x+i, x”+...+
i, -, x'-"+1k-1x'-' (2-11)
Similarly, (n-k) check symbols C” (
cot c+,...,Cn-*-+)'
(212) is, C(x) = Co+C+ X+C2X"+ ・-・C
, - to -, xa- to -1 (2-13) Furthermore, the code word that combines these F F = (fo, f+, fzs・in-+)
(214):(Co,C+...'C,-h
−+ + Mt. L+! 2 , −ik−+ ) (
215) is F(x) = fo ten f + x ten f, x”+-f,,
−, x”-”+fn-+ x'-' (2-16) can be divided by the generator polynomial 〇(x) that generated it by α,
α2. ...Since it has a root α1, the code word polynomial F
By substituting this root into (x), the following equation holds true.

F(<2’)=O(i=1,2.=・、n−k)   
(2−21)この(2−21)式を行列表現すると次の
ようになる(pTはFの転置行列)。
F(<2')=O(i=1,2.=・,n-k)
(2-21) Expression (2-21) is expressed as a matrix as follows (pT is the transposed matrix of F).

ここで、左辺の行列Hは、検査行列と呼ばれ復号におい
ても重要な意味を持つ。
Here, the matrix H on the left side is called a parity check matrix and has an important meaning in decoding.

復2L法 既に述べたように、R5符号はBCH符号の一種である
から、一般的なり CH符号の復号アルゴリズムを利用
して復号を行う事ができる。但しその場合復号処理にお
ける加算1乗算等のシンボルの取扱いは、そのR3符号
が定義される有限体GF (q)の上で行われなければ
いけない。
De2L method As already mentioned, since the R5 code is a type of BCH code, it can be decoded using a general RCH code decoding algorithm. However, in that case, handling of symbols such as addition and multiplication in the decoding process must be performed on the finite field GF (q) in which the R3 code is defined.

GF (2″′) (m :正察数)上で定義された符
号長n = 2″′−1のR3符号について考えると、
シンボルはmビット2進数で表わされ、演算はGF(2
”)上で行われる。また生成多項式には(2−17)式
を用い、符号の最小距離は簡単の為d m i n =
 2 t + 1と置く事にする。
Considering the R3 code with code length n = 2″′-1 defined above, GF (2″′) (m: number of correct guesses),
The symbol is represented by an m-bit binary number, and the operation is GF(2
”). Also, equation (2-17) is used as the generator polynomial, and the minimum distance between codes is d min =
Let's put it as 2 t + 1.

g(x)=(x−αXx−a”)−(x−a″−k) 
 (2−17)ただし、αは有限体GF(2″′)上の
原始光さて、このようなR3符号の復号手順は、一般的
なりCH符号の場合と同様、次のような4つのステップ
に分けられる。
g(x)=(x-αXx-a")-(x-a"-k)
(2-17) However, α is the primitive light on the finite field GF(2″′).The decoding procedure for such an R3 code consists of the following four steps, as in the case of a general CH code. It can be divided into

ステップl) シンドローム計算。Step l) Syndrome calculation.

ステップ2) 誤り位置多項式と誤り評価多項式の算出
Step 2) Calculate error locator polynomial and error evaluation polynomial.

ステップ3) 誤り位置と誤りの値の推定。Step 3) Estimation of error location and error value.

ステップ4) 誤り訂正の実行。Step 4) Execute error correction.

ステップl シンドロームチー・ まず、 送信された符号語をF : F=(fo、  f+、−
fn−+)生じた誤りをE    : E=(eo、 
 el、・・・en−1)受信された受信語をR: R
=(ro、  rl、”’rn−l)=F+E = (fo+eo、  f++e+、−fn−++en
−+)とすると、受信語の多項式表現R(x’)は次の
ようになる。
Step l Syndrome team: First, the transmitted codeword is F: F=(fo, f+, -
fn-+) error caused by E: E=(eo,
el,...en-1) R: R
= (ro, rl, "'rn-l) = F+E = (fo+eo, f++e+, -fn-++en
-+), the polynomial representation R(x') of the received word is as follows.

R(x) =F (x) +E (x)= (fo+e
o) + (f++e+) x+−・・+ (fn−+
 +en−1) x”−’     (223)ところ
が、符号多項式F (x)に生成多項式G (x)((
2−17)式)の根a’ (i=1.=−、n−k)を
代入すると(F(α’) =O)が成立するから、受信
語多項式R(x)に同様にa i (i=1.−・−、
n−k)を代入すると R(α’)=F(α’)+E(α’)=O+E(α’)
=E(αI)のように、誤りEだけで決まる値が求まる
R(x) =F(x)+E(x)=(fo+e
o) + (f++e+) x+-...+ (fn-+
+en-1) x''-' (223) However, the code polynomial F (x) has the generator polynomial G (x) ((
By substituting the root a' (i=1.=-, n-k) of equation 2-17), (F(α') = O) holds, so we similarly set a to the received word polynomial R(x). i (i=1.-・-,
When substituting n-k), R(α')=F(α')+E(α')=O+E(α')
=E(αI), a value determined only by the error E is found.

これをシンドロームと呼び、改めて S= (so、 s+、−−・、 Sn−に−1)  
     (2−25)siR(α”’)=E(α国)
(i=o11+・ In−に−1)  (2−26)と
定義する。このシンドロームは誤りに関するすべての情
報(誤りの位置と大きさ)を含んでいる。
This is called a syndrome, and once again S = (so, s+, --., -1 for Sn-)
(2-25) siR(α”') = E (α country)
(i=o11+・In−1) (2-26) Define. This syndrome contains all the information about the error (location and size of the error).

(シンドロームは誤りがなければ0であるので、誤りの
有無を検出できる。)シンドローム((2−25)。
(Since the syndrome is 0 if there is no error, the presence or absence of an error can be detected.) Syndrome ((2-25).

(2−26)式を行列表現すると次のようになる。Expression (2-26) is expressed as a matrix as follows.

S=H−R”  (R” : Rの転置行列)(2−2
8)ステップ2 f   / エ 曾 −エのステップ
2では、ステップlの計算結果のシンドロームを利用し
て誤り位置多項式と誤り評価多項式の算出を行う。まず
、ここでは誤りE=(e、、el・・el、)の非零の
元の数、すなわち誤りの個数を1!(1≦t)とお(。
S=HR” (R”: transposed matrix of R) (2-2
8) Step 2 In step 2 of f/e, the error locator polynomial and the error evaluation polynomial are calculated using the syndrome of the calculation result in step l. First, here, the number of non-zero elements of error E = (e,,el...el,), that is, the number of errors, is 1! (1≦t)too(.

また、誤りの生じている位置をju (u=1゜2−=
1 ) (ju=o、1−n−1)とし、位置juにお
ける誤りをel。とする。更に(2−2)、  (2−
3)式をn−に=dmin−1=2t        
(2−30)とおく。すると、(2−26)式のシンド
ローム及びシンドローム多項式は、次のように表わされ
る。
Also, the position where the error occurs is ju (u=1゜2−=
1) (ju=o, 1-n-1), and the error at position ju is el. shall be. Furthermore, (2-2), (2-
3) Change the formula to n-=dmin-1=2t
(2-30). Then, the syndrome and syndrome polynomial of equation (2-26) are expressed as follows.

とおくと、次式が得られる。The following equation is obtained.

S  (x)  =  [S−(x)]  mod  
x”     (2−35)さて、ここで誤り位置多項
式σ(X)を次のように定義する。この多項式は、受信
語中の誤り位置J u (u =1 +2S””’+ 
f ) (J u ” 0+1 +”・・”n 1 )
に対応するGF(2”)の元α伺”を根とする多項式で
ある。
S (x) = [S-(x)] mod
x" (2-35) Now, the error location polynomial σ(X) is defined as follows. This polynomial is defined as the error location J u (u = 1 + 2S""'+
f ) (J u ” 0+1 +”...”n 1 )
It is a polynomial whose root is the element αK'' of GF(2'') corresponding to .

a (x) = (1−α”x) (1−αl2x) 
・−(1−α”x) == IT (1−(!”X)U
■f 次に、以上述べたσ(x)、5−(x)に対し誤り評価
多項式ω(X)を次のように定儀する。
a (x) = (1-α”x) (1-αl2x)
・-(1-α”x) == IT (1-(!”X)U
f Next, the error evaluation polynomial ω(X) for σ(x) and 5-(x) described above is defined as follows.

すると、(2−34)、(2−35)、(2−37)式
より、次式が、成立する。 。
Then, from equations (2-34), (2-35), and (2-37), the following equation holds true. .

a (x)・S (x) = [ω(x)] modx
”      (2−38)従って適当な多項式A (
x)を用いてσ(x)、 S (x)。
a (x)・S (x) = [ω(x)] modx
” (2-38) Therefore, an appropriate polynomial A (
x) using σ(x), S(x).

ω(x)の関係が次のように表わされる。The relationship of ω(x) is expressed as follows.

A (x)・x”+ a (x)・S (x) =ω(
x)      (2−39)ところで、誤りの個数l
は(1≦t)としているから、ω(X)とσ(X)は deg (1) (X) < deg a (x)≦t
(2−40)を満たす。さらにω(X)とび(x)は互
いに素(最大公約(GCD)多項式が定数)であるから
(2−39)、  (2−40)式を満たすω(x)と
a (x)は定係数の違いを除いて一意的に定まる。以
上よりω(x)とa (x)はX2′とS (x)の最
大公約(GCD)多項式を求めるユークリッドの互除法
の過程で求め得る。ここで、ユークリッドの互除法を利
用した最大公約(GCD)多項式の算出方法について簡
単に述べる。まず、2つの多項式AとBの最大公約多項
式をGCD [A、Blと表わすことにする。又、この
AとBに対し次のような多項式λと百 ・degA≧degBの場合λ=A−[A−B−’]−
B   (2−41)B=B        (2−4
2) * degA≧degBの場合λ=A(2−43)B 
= B−[B −A−’] −A   (2−44)(
[X−Y−’]:多項式Xを多項式Yで割った商)ヲ定
義スルト、GCD [A、Bl トGCD [λ、B]
lt、次式を満たす。
A (x)・x”+ a (x)・S (x) = ω(
x) (2-39) By the way, the number of errors l
Since (1≦t), ω(X) and σ(X) are deg (1) (X) < deg a (x)≦t
(2-40) is satisfied. Furthermore, since ω(X) steps (x) are relatively prime (the greatest common difference (GCD) polynomial is a constant) (2-39), ω(x) and a (x) that satisfy equation (2-40) are constant. Uniquely determined except for differences in coefficients. From the above, ω(x) and a (x) can be found through the process of Euclid's mutual division method to find the greatest common denominator (GCD) polynomial of X2' and S (x). Here, a method for calculating the greatest common difference (GCD) polynomial using Euclid's algorithm will be briefly described. First, let us represent the greatest common polynomial of two polynomials A and B as GCD [A, Bl. Also, for A and B, if the following polynomial λ and 100 degA≧degB, λ=A-[A-B-']-
B (2-41)B=B (2-4
2) *If degA≧degB, λ=A(2-43)B
= B-[B-A-']-A (2-44)(
[X-Y-']: quotient of polynomial
lt, satisfies the following formula.

GCD  [A、Bl  =GCD  [λ、B]  
     (2−45)従って、上述のλとnとを改め
てA、 Bとおき、各々の次数degA、 degBの
大小関係に応じて(2−41)。
GCD [A, Bl = GCD [λ, B]
(2-45) Therefore, the above-mentioned λ and n are rewritten as A and B, and according to the magnitude relationship of the respective orders degA and degB (2-41).

(2−42)式もしくは(2−43)、  (2−44
)式の変換を行うといった操作を繰返し実行して、Aと
Bのどちらかが零多項式になった時、もう一方の非零多
項式がAとBの最大公約多項式として得られる。なお、
多項式AとBの最大公約多項式を求める事は、次のよう
な多項式CとDを求める事と変りない。なお、degは
次数のことである。
(2-42) or (2-43), (2-44
), and when either A or B becomes a zero polynomial, the other non-zero polynomial is obtained as the greatest common polynomial of A and B. In addition,
Finding the greatest common polynomial of polynomials A and B is no different from finding polynomials C and D as shown below. Note that deg refers to the order.

GCD、[A、I3コ =C−A+D−B      
(2−46)すると、上記繰り返しステップを実行して
、次数がi=degA≧degBと表わされる多項式A
とBの最大公約多項式を求める過程で、次式を満足する
多項式〇、  D、  Wを求める事ができる。
GCD, [A, I3 = C-A+D-B
(2-46) Then, the above repeating step is executed to form a polynomial A whose degree is expressed as i=degA≧degB.
In the process of finding the greatest common polynomial of

この様な多項式を求める問題を拡張GCD問題と呼ぶ。The problem of finding such a polynomial is called an extended GCD problem.

従って、誤り位置多項式σ(X)と誤り評価多項式ω(
X)は、(2−47)式において、多項式AをX2′、
多項式BをS (x)とおいた場合の拡張GCD問題を
解く事により求まる。
Therefore, the error locator polynomial σ(X) and the error evaluation polynomial ω(
X) is, in equation (2-47), polynomial A as X2',
It can be found by solving the extended GCD problem when polynomial B is set as S (x).

ルゴ暑ズム まず前述したように、σ(X)とω(X)の導出アルゴ
リズムは拡張GCD問題に帰着できる。すなわち X2
′を多項式AO、シンドローム多項式S (x)((2
−32)式)を多項式BOとおいた時(degAo=2
t。
First, as mentioned above, the algorithm for deriving σ(X) and ω(X) can be reduced to an extended GCD problem. That is, X2
′ is a polynomial AO, syndrome polynomial S (x) ((2
-32) equation) as the polynomial BO (degAo=2
t.

degBo=2t−1)、GCD [Ao、Bolを求
める途中で を満たす多項式り、  Wが求まれば、Dが誤り位置多
項式σ(X)、Wが誤り評価多項式ω(X)を各々表わ
している。このようなσ(x)とω(X)は、定係数の
違いを除いて一意的に定まることがわかっている。従っ
て、AOとBOに対して次ノヨウナ  多項式A、 B
、 U、 V、 L、 Mを定義し その初期値を U=M=1 ;  L=V=0;  (A=Ao、B=
Bo)とおいて第40図の繰返しステップを実行してい
き、degA (degB)<tとなった時にA (B
)がω(x)、L (M)がσ(X)として各々求ま葛
degBo=2t-1), GCD [Ao, Bol is a polynomial that is satisfied during the calculation, and when W is found, D represents the error locator polynomial σ(X) and W represents the error evaluation polynomial ω(X), respectively. There is. It is known that such σ(x) and ω(X) are uniquely determined except for the difference in constant coefficients. Therefore, for AO and BO, the following polynomials A, B
, U, V, L, M and their initial values are U=M=1; L=V=0; (A=Ao, B=
Bo), repeat the steps in Figure 40, and when degA (degB) < t, A (B
) is found as ω(x), and L (M) is found as σ(X).

なお、第40図の方法では、多項式Bの最高次係数αと
多項式Aの最高次係数βを各々A、 Hにたがいちがい
に乗する事により、繰返しステップおけるGF上の除算
を省略している。((2−41)。
Note that in the method shown in Figure 40, the division on GF in the iterative step is omitted by multiplying A and H by the highest degree coefficient α of polynomial B and the highest degree coefficient β of polynomial A, respectively. . ((2-41).

(2−74,3)式参照)このようにしても、σ(X)
とω(X)の値に本質的な問題は生じない。
(Refer to equation (2-74, 3)) Even if we do this, σ(X)
There is no essential problem with the values of and ω(X).

第40図について説明する。まず、ステップ1において
U=M =1. L=V=O,A=Ao、  B=Il
FIG. 40 will be explained. First, in step 1, U=M=1. L=V=O, A=Ao, B=Il
.

とおいて、初期値を設定する。ステップ2においてde
gA>degBの判定を行い、ステップ3において多項
式A、  Bの最高次係数β、αを各々A、  Bにた
がいちがいに乗じ、式(2−41)、  (2−43)
の繰返しステップにおけるGF上の除算を省略している
and set the initial value. In step 2, de
Determine gA>degB, and in step 3, multiply A and B by the highest order coefficients β and α of polynomials A and B, respectively, and use equations (2-41) and (2-43)
The division on GF in the repetition step is omitted.

ステップ4においてdegA、 degBが所定の次数
より小さくなった場合、ステップ5.6に進み、ω(x
) =A、 a (x) =L、 (1) (x) =
B、 (7(x) =Mを算出する。
If degA and degB become smaller than the predetermined order in step 4, proceed to step 5.6 and calculate ω(x
) = A, a (x) = L, (1) (x) =
B, (7(x) = M is calculated.

なお、第40図の繰返しステップを実行するには、Aと
Bの次数に応じた3つの実行モードが必要であり、それ
らを以後次のように呼ぶ事にする。
Note that in order to execute the iterative steps shown in FIG. 40, three execution modes are required depending on the orders of A and B, and these will be referred to as follows hereinafter.

i)  degA、 degB≧tかつdegA≧d 
e g B ・−・“reduceA”ii)  de
gA、 degB≧tかつdegA≧d e g B−
・−“reduceB″1ii) degA<t  も
しくは degB<t  −、”nap’ステップ3 
 :     ″  の のステップ3では、ステップ
2で得られた誤り位置多項式σ(X)と誤り評価多項式
ω(X)から、誤り位置と誤りの値の推定を行う。まず
、受信語R= (ro、  rl、−、rn−1)中の
シンボルの位置i=0゜■・・・n−1に応じたGF(
2−)の元α″1を誤り位置多項式σ(x)に逐次代入
する。この時、(2−36)式よりσ(a−’) =0
が成立するならば、iが誤り位置juに対し、α1=α
−1uが成立している事がわかる。 (ju=0.1・
・−n−1,u=1.2・1. 1≦t)また、そのよ
うなα−1=α−hに対する誤り評価多項式ω(X)の
値は次のようになる。
i) degA, degB≧t and degA≧d
e g B ・-・“reduceA”ii) de
gA, degB≧t and degA≧d e g B-
・-“reduceB”1ii) degA<t or degB<t −, “nap” step 3
In step 3 of ``, the error position and error value are estimated from the error position polynomial σ(X) and error evaluation polynomial ω(X) obtained in step 2. , rl, -, rn-1) according to the symbol position i=0゜■...n-1)
2-) is successively assigned to the error locator polynomial σ(x). At this time, from equation (2-36), σ(a-') = 0
If i holds, then α1=α for the error position ju
It can be seen that -1u is established. (ju=0.1・
・-n-1, u=1.2・1. 1≦t) Furthermore, the value of the error evaluation polynomial ω(X) for such α−1=α−h is as follows.

更に、σ′(X)をσ(X)の微分とすると、が成立す
る。従って(2−48)式と(2−49)式より誤、り
位ijuにおける誤りの値e、は次式より求められる。
Furthermore, if σ'(X) is the differential of σ(X), then the following holds true. Therefore, from equations (2-48) and (2-49), the error value e at position iju can be obtained from the following equation.

前述したように、復号のステップ3)では、ステップ2
)で得られた誤り位置多項式σ(X)、誤り評価多項式
ω(X)ならびにσ(x)の微分σ′(X)という3つ
の多項式に、そのR3符号が定義されるGF(2”)の
元a−’ (j=n−1,・”2,1.0)を逐次代入
してその値を求める計算が必要となる。(ここでは受信
シンボルが受信語多項式の高次の項から入力される。す
なわちrjがj=n−1,・・・、2,1.0の順で入
力されるとする。従って、ステップ3)についての説明
では、α四(j=n−1,・・・、2,1.0)の代入
の順が逆となる事に注意しなければならない。)鬼と同
様のアルゴリズムを利用できる。例えば、を次多項弐f
 (x)の計算は次のように展開される。
As mentioned above, in step 3) of decoding, step 2
GF(2”) whose R3 code is defined by three polynomials: the error locator polynomial σ(X) obtained from ), the error evaluation polynomial ω(X), and the differential σ′(X) of σ(x) It is necessary to calculate the value by sequentially substituting the element a-' (j=n-1, .multidot.2, 1.0). (Here, the received symbols are input from the higher-order terms of the received word polynomial. That is, it is assumed that rj is input in the order of j=n-1, ..., 2, 1.0. Therefore, step 3 ), it must be noted that the order of substitution for α4 (j=n-1, . . . , 2, 1.0) is reversed. ) You can use the same algorithm as Oni. For example, the degree polynomial 2f
The calculation of (x) is developed as follows.

f (x) =ftx’ 十ft  lx’ ” ’ 
十・・−+f lx +f6          、;
;=ロエ= i−[(ftx+ft−1) x+ft−
2) x+−+f+l xffo #=;イ但し、シン
ドローム計算では各セルが代入すべきXをあらかじめ持
っており、各セルに係数を与えてステ゛ンブ4  ; 
−の − (2−9)式より、誤りの生じている位置juにおける
受信シンボルrおは、本来の符号語のシンボルf2と誤
りの大きさe2から次のように表わされる。
f (x) = ftx' 10 ft lx' ” '
10...-+flx +f6,;
;= Loe = i-[(ftx+ft-1) x+ft-
2) x+-+f+l xffo #=;b However, in the syndrome calculation, each cell has a value of X to be substituted in advance, and a coefficient is given to each cell before step 4;
- From equation (2-9), the received symbol r at the position ju where the error occurs is expressed as follows from the symbol f2 of the original code word and the error size e2.

b+=’=  eh            (2−5
1)従ってステップ4では、ステップ3の実行結果σ(
α一つ二〇が成立した位置i (i=0,1.・・・n
 −1)において、受信シンボルrlから を引<  (GF(2’″)上)  f+=rt  e
t    (253)事により、位置iにおける誤り訂
正を実行する。
b+='=eh (2-5
1) Therefore, in step 4, the execution result σ(
Position i where α120 is established (i=0,1...n
−1), subtract from received symbol rl < (on GF(2'″)) f+=rt e
t (253) performs error correction at position i.

(シンドローム生成部) 次に、本発明の実施例に係るBCH符号化復号器の構成
及び作用について構成単位毎に詳述する。
(Syndrome Generation Unit) Next, the configuration and operation of the BCH encoder/decoder according to the embodiment of the present invention will be described in detail for each configuration unit.

ステップlではシリアルに送られてくる受信系列R= 
(rn−1,rn−2・・−、x、 ro)からステッ
プ2で必要なシンドローム多項式の係数(S 21−1
 、 S 21−2・・・。
In step l, the received sequence R=
From (rn-1, rn-2...-, x, ro), the coefficients of the syndrome polynomial required in step 2 (S 21-1
, S21-2...

St、  So)をシリアルに出力させる必要がある。St, So) must be output serially.

具体的なシンドローム多項式の係数の計算は、次の繰り
返しアルゴリズムを用いる。
The following iterative algorithm is used to specifically calculate the coefficients of the syndrome polynomial.

S+1==(・’−((r、l−、”α’ + 、ll
−、)* (X’ + rn−4)*(1’ + ”・
+ rl)*α’ + r。
S+1==(・'-((r, l-, "α' + , ll
-, ) * (X' + rn-4) * (1' + ”・
+ rl) *α' + r.

また、上式を次のように分解する。Also, the above equation can be decomposed as follows.

z、=O Zt  =Z+−+ *α’十re−+       
(i=1.−、n)St−+ = Zll 回路を小型化するために、第41図のPEにおいて意味
のない3の乗算器と5のレジスタを削る。これによって
、PEの演算部は400ゲートとなる。ここで、第42
図の受信シンボルの動きに注目すると、1つの受信シン
ボルrn−+は値を変えることな(#lのPEから#2
tのPEまで送られ、加算されgZ+−+*αjの項が
変化するだけである。そこで前章ではシンドローム生成
部のPEをαI(j=1f・・・、2t)毎に割り付け
たが、ここではαl入力からα’(j=1゜・・・、2
t)の値が順次入力され、j=1からm迄を1周期とし
て周期的にα’ (j=1.・・・、m)の入力が繰り
返されるようにする。そして受信系列の入力であるr、
は1つの受信シンボルの値が1周期の間保持されながら
受信シンボルrn−i (1=le・・・r n )が
入力されるようにする。これによって、レジスタ7も削
ることが出来、11人力を直接加算器に入力する。但し
、レジスタ6はZIの演算結果を#lのPEから#mの
PEの分まで1周期分保存させる必要があるので、m段
必要である。m=2tの場合の信号の流れを第3図に示
す。
z, =O Zt =Z+-+ *α' ten re-+
(i=1.-, n) St-+ = Zll In order to miniaturize the circuit, 3 multipliers and 5 registers which are meaningless in the PE of FIG. 41 are removed. As a result, the calculation section of the PE has 400 gates. Here, the 42nd
Paying attention to the movement of the received symbols in the figure, one received symbol rn-+ does not change its value (from PE #l to #2
It is sent to the PE of t, is added, and only the term gZ+-+*αj changes. Therefore, in the previous chapter, the PE of the syndrome generation unit was assigned to each αI (j=1f..., 2t), but here, from the αl input to α'(j=1°..., 2t)
The values of t) are input sequentially, and the input of α' (j=1..., m) is repeated periodically, with one cycle being from j=1 to m. And r, which is the input of the received sequence,
allows the received symbols rn-i (1=le...r n ) to be input while the value of one received symbol is held for one period. As a result, register 7 can also be omitted, and 11 manual inputs are directly input to the adder. However, the register 6 needs to store the calculation result of ZI for one cycle from PE #l to PE #m, so m stages are required. FIG. 3 shows the signal flow when m=2t.

最初(i=1)、セレクタの選択信号Sl、  2はr
n−1が入力されているときのみSt、2=10となり
、X出力からはC入力であるOが出力されi=1のとき
の演算結果であるZ(=rn−+が2を段のレジスタに
順次入力される。それ以後(i=2.・・・+ n )
、St。
At first (i=1), selector selection signal Sl, 2 is r
St, 2 = 10 only when n-1 is input, and O, which is the C input, is output from the X output, and Z (=rn-+ is the calculation result when i = 1 It is input to the register sequentially. After that (i=2...+n)
, St.

2;00、とすることによってセレクタのX出力はA入
力を選択し、前演算の結果であるZl−1が順次X出力
から出力され基本クロックCK毎にα’(J”11・・
・、2t)と乗算され、r n−+と加算されることに
よってZ+=Z+−+* α’+ rn−1(j=l、
−,2i)が演算され、順次レジスタに入力される。従
って、2を段のレジスタはSt−+(j=1.・・・、
2t)の演算の途中結果を一時保存して再びフィードバ
ックさせるためのメモリ部となっている。これによって
、2を個のPEの処理を1つのPEで実現できるが、レ
ジスタ段数分だけ入力r n−1を保持する必要がある
ので、処理速度は(16/2t)Mwpsとなる。
2;00, the X output of the selector selects the A input, and Zl-1, which is the result of the previous calculation, is sequentially output from the X output, and α'(J"11...
・, 2t) and added to r n-+, resulting in Z+=Z+-+* α'+ rn-1(j=l,
-, 2i) are calculated and sequentially input into the register. Therefore, the 2nd stage register is St-+(j=1...,
This is a memory section for temporarily storing the intermediate results of the calculations in step 2t) and feeding them back again. As a result, the processing of 2 PEs can be realized with one PE, but since it is necessary to hold the input r n-1 for the number of register stages, the processing speed becomes (16/2t) Mwps.

ここでは、回路の小型化のために乗算器3は削り、5と
7のレジスタ列も省いている。従って、第2図のPEの
回路規模は(400+m*50)ゲートとなり、処理速
度は(16/m)Mwpsとなる。mはレジスタの段数
であるが、全処理をIPEで行わせる場合m=2tとな
る。1例として、訂正能力t=8とした場合IPHの回
路規模は120ゲートとなり、処理速度はl M h 
z = 8 M b p sとなる。
Here, in order to miniaturize the circuit, the multiplier 3 is removed and the register rows 5 and 7 are also omitted. Therefore, the circuit scale of the PE shown in FIG. 2 is (400+m*50) gates, and the processing speed is (16/m) Mwps. m is the number of register stages, and when all processing is performed by IPE, m=2t. As an example, if the correction capacity t = 8, the IPH circuit scale will be 120 gates, and the processing speed will be l M h
z = 8 Mbps.

また、全処理をIPEで構成せず、複数のPE’に分け
て構成する場合、第2図のPEを第4図のように接続す
る。このとき、受信シンボルをIPE毎に1周期率位で
遅らせるためにCK2 (1周期毎のクロック)で制御
されるレジスタが必要である。PEの数をkとすると全
体の処理は(2t/k)に分散されるので、IPHに必
要なレジスタの段数はm=(2t/k)となる。従って
、第4図の回路規模は(2t/m)* (400+m*
50)ゲートとなる。第5図に2つのPEで構成した場
合の信号の流れを示す。
Further, when all processing is not configured by IPE but divided into a plurality of PE', the PEs shown in FIG. 2 are connected as shown in FIG. 4. At this time, a register controlled by CK2 (clock per cycle) is required to delay the received symbol at a rate of one cycle for each IPE. If the number of PEs is k, the overall processing is distributed over (2t/k), so the number of register stages required for IPH is m=(2t/k). Therefore, the circuit scale in Fig. 4 is (2t/m)* (400+m*
50) Becomes a gate. FIG. 5 shows the signal flow when configured with two PEs.

この場合αjの割付は、#lのPEがαI(j=1.・
・・。
In this case, the allocation of αj is such that PE #l is αI(j=1.・
....

t)、#2のPEがα’ (j=t+1.・・・、2t
)となる。
t), PE of #2 is α' (j=t+1...., 2t
).

この場合、レジスタ段数m = tであるので処理速度
は2 M h z = 16 M b p sとなり、
回路規模は800 * 2=1600ゲートとなる。
In this case, the number of register stages m = t, so the processing speed is 2 Mhz = 16 Mbps,
The circuit scale is 800*2=1600 gates.

m = 1としたとき必要なPEの数はに=2tととな
り、CK2=CKとなるのでCK2で制御されるレジス
タはレジスタ7と等価になり、処理速度も16Mwps
となる。従って、これは第42図の無駄な回路を省いた
構成になっている。また、セレクタのB入力が突いてい
ることを利用して、前PEのS (x)出力を入力する
ことによって最後のPEからシンドローム多項式の係数
(S 2L−11821−21=・* S + +  
S o )をS’(x)としてシリアルに出力すること
ができる。
When m = 1, the number of PEs required is 2t, and CK2 = CK, so the register controlled by CK2 is equivalent to register 7, and the processing speed is 16Mwps.
becomes. Therefore, this has a configuration in which unnecessary circuits shown in FIG. 42 are omitted. Also, by utilizing the fact that the B input of the selector is active, by inputting the S (x) output of the previous PE, the coefficients of the syndrome polynomial (S 2L-11821-21=・* S + +
S o ) can be serially output as S'(x).

GCDt u fIo −工 び枦工4゜ステップ2の
誤り位置多項式σ(X)と誤り数値多項式ω(X)の導
出アルゴリズムは、拡張GCD問題に帰着できる。第4
3図の回路に於いて、各々のPEは1度のProces
s処理が終るとその出力を次のPEに渡し、自らは次の
入力を受は取り21回のProcess処理を行った。
The algorithm for deriving the error locator polynomial σ(X) and the error value polynomial ω(X) in step 2 can be reduced to the extended GCD problem. Fourth
In the circuit shown in Figure 3, each PE has one Process
When the s processing is completed, the output is passed to the next PE, and the PE itself receives the next input and performs the Process processing 21 times.

その2を回のProcess処理結果を次のPHに出力
せず、自らのレジスタに蓄えシンドローム多項式S (
x)とX21の1連の入力が終った後、レジスタに蓄え
た結果をフィードバックして、1つのPEで全処理を行
うことを考える。
The second Process processing result is not output to the next PH and is stored in its own register using the syndrome polynomial S (
After completing one series of inputs of x) and

そのときのPEの構成を第6図に示す。第43図と同様
に5tateを設定する回路とα、βを保持するための
CK2とCLで制御されるレジスタと、al−1゜b+
−+を実現するためにレジスタ列5,7の後にもう1段
レジスタを挿入する必要がある。従って、PE内のレジ
スタ段数をmとしたとき、lPEにおいて必要な回路規
模(State設定の回路はコントロール部であるので
除()は、(700+(3m+4) *50)ゲートと
なる。(700は演算部の回路規模であり、(3m+4
)はレジスタの総数である)1つのPEで全処理を行う
場合には、m=2t (処理結果の多項式の次数は2を
以上にならないため)となり、第40図に示す例につい
てA (B)を求める場合の信号の流れの初めの部分を
第7図に示し、L (M)を求める場合の信号の流れの
初めの部分を第8図に示す。セレクタ選択信号の切り替
え、及びCK2の制御は挿入したレジスタも考慮にいれ
て、基本クロックCKが(m + 1 )毎に行うこと
によって第44図、第45図の動作が逐次的に1つのP
Eで行われることが分かる。
The configuration of PE at that time is shown in FIG. As in Fig. 43, a circuit for setting 5tate, a register controlled by CK2 and CL for holding α and β, and al-1°b+
In order to realize -+, it is necessary to insert one more stage of registers after register rows 5 and 7. Therefore, when the number of register stages in the PE is m, the required circuit size in the PE (the State setting circuit is the control section, so the division () is (700 + (3m + 4) * 50) gates. (700 is The circuit scale of the calculation section is (3m+4
) is the total number of registers) When all processing is performed with one PE, m = 2t (because the degree of the polynomial of the processing result is not greater than 2), and for the example shown in Figure 40, A (B ) is shown in FIG. 7, and FIG. 8 shows the beginning of the signal flow in the case of finding L (M). The switching of the selector selection signal and the control of CK2 are performed every (m + 1) basic clock CK, taking into consideration the inserted register, so that the operations shown in FIGS. 44 and 45 are sequentially performed in one P.
It can be seen that this is done in E.

なお、A (B)を求めるときとL (M)を求めると
きでProcess部を独立に2つ持つか、1つを2回
用いなければならない。以下、1つのProcess処
理について評価を行うが、1つのProcess部を2
回用いる場合は処理速度を半分にし、2つのProce
ss部を独立に持つ場合には必要なPHの数を2倍にす
ればよい。
Note that, when calculating A (B) and when calculating L (M), it is necessary to have two independent Process sections or use one Process section twice. Below, we will evaluate one Process process.
If used twice, reduce the processing speed by half and use two Processes.
If the ss section is provided independently, the number of required PHs may be doubled.

ここでは、シンドローム多項式S (x) (またはM
=1)、及びx2I(またはL二〇)入力時のみセレク
タ選択信号Sl、2=11としてX、Y出力にり。
Here, the syndrome polynomial S (x) (or M
= 1) and x2I (or L20) input only selector selection signal Sl, 2 = 11 to X, Y output.

E入力が出力されるセレクタを用いる。(表にセレクタ
出力の組合せを示す)また、A (B)とL (M)を
1つのProcess部で処理する場合、第9図に示す
PEを用いて、第1O図のように31..4を制御する
ことによりA=x”、B=S (x)、L=O,M=1
の入力を行うことも出来る。(セレクタ選択信号の組合
せを表に示す)但し、第43図の@2t+2のPEはセ
レクタによる信号選択のみ意味があるので、第9図のP
EのW出力を利用しPEによる処理回数を2t+1回と
する。(また第6図のPEでは別にセレクタを設けるこ
とによって処理回路を2t+1回に減らす。また、#2
t+2の信号選択はdegB<tの場合54=1とする
ことによってB入力がWから構成される装置 従って、ここでの処理速度は第43図の処理をレジスタ
段数m毎に行うので(16/ 2 t / m ) M
 l p sとなる。1例として、t=8としてm=2
tとしたときの回路規模は3300ゲート、処理速度は
1/16M1ps=n/16Mwpsとなる。
Use a selector that outputs the E input. (The combinations of selector outputs are shown in the table.) When A (B) and L (M) are processed by one Process section, using the PE shown in FIG. 9, 31. .. By controlling 4, A=x'', B=S (x), L=O, M=1
You can also input. (The combinations of selector selection signals are shown in the table.) However, since the PE @2t+2 in Figure 43 has meaning only in signal selection by the selector, the PE in Figure 9
Using the W output of E, the number of processing times by PE is set to 2t+1 times. (Also, in the PE shown in Figure 6, by providing a separate selector, the number of processing circuits is reduced to 2t+1 times.
The signal selection at t+2 is determined by setting 54=1 when degB<t. Therefore, the processing speed here is as follows: The processing shown in FIG. 43 is performed every m register stages (16/ 2t/m) M
l p s. As an example, if t=8 and m=2
When t is the circuit scale, the circuit scale is 3300 gates, and the processing speed is 1/16M1ps=n/16Mwps.

また全処理をIPEで構成せず、複数のPHに分けて構
成する場合、第6図のPEを第11図のように接続する
。このとき、係数データを各PEで循環させながら動作
させるために、最後のPHの出力を最初のPEにフィー
ドバックさせる必要がある。PHの数をkとすると全体
の処理は(2t/k)に分散されるので、IPEに必要
なレジスタの段数はm=(2t/k )となる。従って
、第11図の回路規模は(2t/m)* (700+ 
(3m+4)*50)ゲートとなる。
Furthermore, when all processing is not configured by IPE but divided into a plurality of PHs, the PEs shown in FIG. 6 are connected as shown in FIG. 11. At this time, in order to operate while circulating the coefficient data in each PE, it is necessary to feed back the output of the last PH to the first PE. If the number of PHs is k, the entire processing is distributed over (2t/k), so the number of register stages required for IPE is m=(2t/k). Therefore, the circuit scale in Fig. 11 is (2t/m)* (700+
(3m+4)*50) gate.

第12図に2つのPEで構成した場合の信号の流れを示
す。この場合、レジスタの段数m = tであるので処
理速度は2 / 16 M 1 p sとなり、回路規
模は1950)k2=3900ゲートとなる。
FIG. 12 shows the signal flow when configured with two PEs. In this case, since the number of register stages m=t, the processing speed is 2/16 M 1 ps, and the circuit scale is 1950)k2=3900 gates.

m = 1としたとき必要なPHの数はに=2tとなり
、処理速度は16 M l p sとなる。この構成で
は最後のPEから最初のPEへフィードバックを行うの
で、2t+1回の処理回数に対してPEの数は2tで済
む。
When m = 1, the number of required PHs is 2t, and the processing speed is 16 M l ps. In this configuration, feedback is performed from the last PE to the first PE, so the number of PEs is only 2t for the number of processing times of 2t+1.

シストリックな接続にするためにPEの数を処理回数に
対応させて2t+1とすると、信号をフィードバックす
る必要がなくなるので第43図と同じ構成になる。(こ
の場合#2t+2のPEはセレクタとなる) f  雪  びW ステップ3もステップlと同様に次の繰り返しアルゴリ
ズム、及び分解式を用いることが出来る。
If the number of PEs is set to 2t+1 in correspondence with the number of processing times in order to establish a systolic connection, there will be no need to feed back signals, resulting in the same configuration as in FIG. 43. (In this case, PE #2t+2 becomes a selector.) f Step 3 can also use the following iterative algorithm and decomposition formula as in Step 1.

f = (x ) = f t−+ * x’−’ 十
r l−2* x’−” = 十f + * x + 
f a=  (・−((ft−+*x+ft−2)*x
+ft−3)*x−1−+f+) *x+fo) Zo=O Z+=Z+−+*x+ft−+  (j=1.・・・、
1)f(x)=Zt また、回路を小型化するためにステップlと同様に乗算
器3とレジスタ5を削る。また第46図の回路において
α−’ (i=n−1,・・・、0)の入力はステップ
lと同様に#lのPEから#tのPEまで値を変えるこ
と無く送られるだけである。そこでj=1からmまでを
1周期としてα−1の1つの値が保持されるようにα’
 (i=n−1,・・・、o)を入力する。
f = (x) = f t-+ * x'-' 10r l-2* x'-" = 10f + * x +
f a= (・-((ft-+*x+ft-2)*x
+ft-3) *x-1-+f+) *x+fo) Zo=O Z+=Z+-+*x+ft-+ (j=1...,
1) f(x)=Zt Also, in order to miniaturize the circuit, the multiplier 3 and register 5 are removed as in step 1. Also, in the circuit shown in Figure 46, the input α-' (i=n-1,..., 0) is simply sent from the PE #l to the PE #t without changing the value, as in step l. be. Therefore, α' is set so that one value of α-1 is held from j = 1 to
Input (i=n-1,...,o).

またft−1の係数はステップ1と同様に1周期毎ニf
 t−+ (J = 1 、・・・+ m )の入力が
繰り返されなければならない。ステップ2のGCD生成
部からの出力を考えた場合、係数F+−t(j=1.・
・・、1)は1度出力されるが、周期的に繰り返し出力
されない。そこで、選択信号Sl、2によって表のよう
な組合せで出力されるセレクタとm段のレジスタ列7を
用いて、第13図のようにPEを構成し、第14図のよ
うに信号を送る。GCD生成部から係数ft−+(j=
1.・・・。
Also, as in step 1, the coefficient of ft-1 is
The inputs t-+ (J = 1, . . . + m) must be repeated. Considering the output from the GCD generator in step 2, the coefficient F + - t (j = 1.
. . , 1) is output once, but not periodically and repeatedly. Therefore, a PE is configured as shown in FIG. 13 using selectors output in combinations as shown in the table according to the selection signals Sl, 2 and an m-stage register array 7, and signals are sent as shown in FIG. 14. The coefficient ft-+(j=
1. ....

t)が出力されているときはセレクタ選択信号をSl。t) is output, the selector selection signal is set to Sl.

2=11(ft−+が入力されているときの与)からS
t。
2=11 (given when ft-+ is input) to S
t.

2=O1とすることによって、Y出力から係数ft−1
(j=1.・・・、1)が順次出力され、レジスタ列7
に入力される。
By setting 2=O1, the coefficient ft-1 is obtained from the Y output.
(j=1...., 1) are output sequentially, and the register row 7
is input.

その出力をB入力にフィードバックしてセレクタ選択、
信号をSl、 2=IO(ft−+が入力されていると
きのみ)からSl、2=OOとすることによって、再び
Y出力から係数fr−i(J=’、・・・、1)が出力
され、レジスタ列7に入力される。以後その動作を繰り
返すことによって係数rt−+(J=1.・・・、1)
の周期的な入力が実現される。これによってステップ1
と同様にm個のPHの処理を1つのPEで実現できるが
、レジスタ段数分だけ入力α−1を保持する必要がある
ので、処理速度は(16/ m ) M w p sと
なる。(mはレジスタ段数) またIPEに必要な回路規模は(400+ (m+1)
*50)ゲートとなる。
The output is fed back to the B input to select the selector,
By changing the signal from Sl, 2=IO (only when ft-+ is input) to Sl, 2=OO, the coefficient fr-i (J=',..., 1) is again calculated from the Y output. The signal is output and input to the register column 7. Thereafter, by repeating this operation, the coefficient rt-+(J=1....,1)
periodic input is realized. This allows step 1
Similarly, the processing of m PHs can be realized by one PE, but since it is necessary to hold the input α-1 for the number of register stages, the processing speed becomes (16/m) M w p s. (m is the number of register stages) Also, the circuit scale required for IPE is (400+ (m+1)
*50) Becomes a gate.

mはレジスタ段数であるが、全処理をIPEで行わせる
場合m==tとなる。但し、ω(X)、σ(X)。
m is the number of register stages, and when all processing is performed by IPE, m==t. However, ω(X), σ(X).

σ′(X)の処理のためにPEは3セツト必要である。Three sets of PEs are required to process σ'(X).

1例として、訂正能力t=8とした場合回路規模は3*
850=2550ゲートとなり、処理速度は2 M w
 p sとなる。
As an example, if the correction capacity t=8, the circuit scale is 3*
850 = 2550 gates, processing speed is 2 Mw
It becomes ps.

また全′処理をIPEで構成せず、複数のPEに分けて
構成する場合、第13図のPEを第15図のように接続
する。このとき、α−゛1をIPE毎に1周期単位で遅
らせるためにCK2 (1周期毎のクロック)で制御さ
れるレジスタが必要である。
Further, when all processing is not configured by IPE but divided into a plurality of PEs, the PEs shown in FIG. 13 are connected as shown in FIG. 15. At this time, a register controlled by CK2 (clock for each cycle) is required to delay α-1 by one cycle for each IPE.

PEの数をkとすると全体の処理は(t/k)に分散さ
れるので、IPEに必要なレジスタ段数はm=(t/k
)となる。従って、第15図の回路規模は(t/m)*
 (400+ (m+1)*50)ゲートとなる。第1
6図に2つのPEで構成した場合の信号の流れを示す。
If the number of PEs is k, the entire processing is distributed over (t/k), so the number of register stages required for IPE is m = (t/k).
). Therefore, the circuit scale in Fig. 15 is (t/m)*
It becomes a (400+ (m+1)*50) gate. 1st
Figure 6 shows the signal flow when configured with two PEs.

この場合、t=8であるのでm= (t/2) =4と
して回路規模は3*2*650=3900ゲートとなり
、処理速度は4 M w p sとなる。
In this case, since t=8, m=(t/2)=4, the circuit scale is 3*2*650=3900 gates, and the processing speed is 4 Mw ps.

m=1としたとき必要なPEの数はに=tとなり、CK
2=CKとなるのでCK2で制御されるレジスタはレジ
スタ5と等価になり、f t−+の割り付は部をのぞい
て第46図と同じ構成になり、処理速度もl 6 M 
w p sとなる。
When m = 1, the number of PEs required is = t, and CK
Since 2=CK, the register controlled by CK2 is equivalent to register 5, and the allocation of f t-+ has the same configuration as in Fig. 46 except for the part, and the processing speed is also l 6 M.
It becomes w p s.

また、第17図にσ(X)、とσ′(X)を1つのPR
で処理する場合PEを示し、第18図に信号の流れを示
す。ステップ3は1周期がtであるのでIPEを2度用
いることが出来、またσ′(X)の係数がσ(X・)の
係数を用いることを利用する。これによって、ステップ
3が2セツトのPEで実現でき、第18図に示すように
σ(X)、σ′(X)の動作は2を毎となり、ω(x)
の出力も第19図のようにすることによって2を毎に動
作させることが出来る。
Also, in Figure 17, σ(X) and σ'(X) are combined into one PR.
In the case of processing with PE, FIG. 18 shows the signal flow. Step 3 utilizes the fact that since one period is t, IPE can be used twice, and that the coefficient of σ'(X) is the coefficient of σ(X·). As a result, Step 3 can be realized with two sets of PEs, and as shown in Fig. 18, the operations of σ(X) and σ'(X) are every 2, and ω(x)
By making the output as shown in FIG. 19, it is possible to operate 2 every time.

ここでは出力の組合せが表のようになるセレクタを用い
てY出力が0となるときだけセレクタ選択信号を51.
.3=OO1とすればよい。この場合、処理速度は2M
wps/2=IMwpsとなり、必要なPEのセットも
2セツトとなるので回路規模は2 * 850=170
0ゲートとなる。
Here, a selector whose output combinations are as shown in the table is used, and the selector selection signal is set to 51. only when the Y output becomes 0.
.. 3=OO1. In this case, the processing speed is 2M
wps/2 = IMwps, and the required set of PEs is also 2 sets, so the circuit scale is 2 * 850 = 170
It becomes 0 gate.

ゞ      エ  ロ ここでは、ステップlからのシンドローム多項式の係数
出力S (x)を受けて消失訂正を行うために必要なS
 (x) *λ(X’)を生成する。
ゞ EroHere, we will explain the S required to perform erasure correction in response to the coefficient output S (x) of the syndrome polynomial from step l.
(x) *Generate λ(X').

まず、消失位置多項式λ(X)を生成することを考える
First, consider generating the vanishing position polynomial λ(X).

λ(x) =(1−Y+*x)*(1−Y2*x)−(
1−Ys*x)であり、前章と同様にλ(X)を次のよ
うに分解する。
λ(x) = (1-Y+*x)*(1-Y2*x)-(
1-Ys*x), and similarly to the previous chapter, λ(X) is decomposed as follows.

Zo=1 Z+=  (1−Y+*x)*Z+−+==Y+*Z+
−1 *x+Zt−+ (i=1.−、s)λ (x)
=25 まず、回路を小型化するために乗算器3及びレジスタ6
を削る。ここでは処理クロック数またはレジスタ段数に
対応させる。またZl−+入力を1クロック遅らせるた
めのレジスタを1つ用意する。従って、PEの構成は第
22図のようになり、IPHに必要な回路規模は(40
0+ (m+1)*50)ゲートとなる。(mはレジス
タ段数)第23図に信号の流れを示す。
Zo=1 Z+= (1-Y+*x)*Z+-+==Y+*Z+
−1 *x+Zt−+ (i=1.−, s)λ (x)
=25 First, in order to miniaturize the circuit, multiplier 3 and register 6 are
Sharpen. Here, it is made to correspond to the number of processing clocks or the number of register stages. Also, one register is prepared for delaying the Zl-+ input by one clock. Therefore, the PE configuration is as shown in Figure 22, and the circuit scale required for IPH is (40
0+(m+1)*50) gate. (m is the number of register stages) FIG. 23 shows the signal flow.

IPE内のレジスタ段数m(ここではm=2tとする)
を1周期としてY、の1つの値が保持されるようにY+
(i=1.・・・ts)を入力する。最初、(Y+入力
時)セレクタ選択信号をSl、 2=11としXにD入
力Zo=l、YにC入力0を入力し演算結果のYlを次
のクロックでレジスタ列6に入力する。以降、Sl、2
=IOとしてXi:C入力oSYl、:Zoを1クロッ
ク遅らせたA人力を出力し、演算結果Zo=1を次の、
クロックでレジスタ列6に入力する。その次のクロック
以降は演算結果が0であるので0がレジスタ列6に人力
される。1周期後、(Y2人力時)レジスタ列6から前
演算結果Z+=Y+*x+1 (次数Xは信号の順序を
表す)が出力されるので、Sl。
Number of register stages m in IPE (here m = 2t)
Y+ so that one value of Y is held for one period.
Input (i=1...ts). First, (at the time of Y+ input) the selector selection signal is S1, 2=11, the D input Zo=1 is input to X, the C input 0 is input to Y, and the operation result Y1 is input to the register column 6 at the next clock. Hereafter, Sl, 2
= IO as Xi:C input oSYl, :Outputs A human power which delayed Zo by 1 clock, and calculates the calculation result Zo = 1 as follows,
Input to register column 6 using the clock. Since the calculation result is 0 from the next clock onwards, 0 is manually entered into the register column 6. After one cycle (when Y2 is manually operated), the pre-calculation result Z+=Y+*x+1 (order X represents the order of the signals) is output from the register row 6, so Sl.

2=O1としXに前演算結果の最高次係数YlをA入力
から、YにC入力のOを出力し演算結果のY1*Y2を
次のクロックでレジスタ列6に入力する。
2=O1, the highest order coefficient Yl of the previous operation result is outputted to X from the A input, O of the C input is outputted to Y, and the operation result Y1*Y2 is inputted to the register column 6 at the next clock.

以降、Sl、2=00としてXにZlの次の係数1を六
入力から、Yに1クロック遅らせたZlの最高次係数Y
1をB入力から選択し、演算結果Y + + Y 2を
次のクロックでレジスタ列6に入力する。このときXか
らは0、YからはZlの次の係数1が出力され、次のク
ロックで演算結果1がレジスタ列6に入力され、以降演
算結果が0であるので0が入力される。
Hereafter, with Sl, 2 = 00, the next coefficient 1 of Zl is input to X from 6 inputs, and the highest order coefficient Y of Zl delayed by 1 clock to Y
1 is selected from the B input, and the operation result Y + + Y 2 is input to the register column 6 at the next clock. At this time, 0 is output from X, and the coefficient 1 next to Zl is output from Y. At the next clock, the calculation result 1 is input to the register array 6, and since the calculation result is 0, 0 is input thereafter.

Y2人力時の動作をY3人力以降も繰り返すことによっ
てY5人力後にレジスタ列6からλ(x)が高次の係数
から出力される。
By repeating the operation during Y2 manual power after Y3 manual power, λ(x) is outputted from the register row 6 from the higher-order coefficient after Y5 manual power.

S≦2tであるので、Y+=0 (i=s+ 1.−.
2t)を入力すればよい。
Since S≦2t, Y+=0 (i=s+ 1.-.
2t).

従って、処理速度は(16/2t/m) Mlps h
なる。1例として、t=8として全処理をIPEで行わ
せる場合、回路規模は1250ゲートとなり、処理速度
は1 / 16 M I p sとなる。
Therefore, the processing speed is (16/2t/m) Mlps h
Become. As an example, if t=8 and all processing is performed by IPE, the circuit scale will be 1250 gates and the processing speed will be 1/16 M I ps.

また、全処理をIPEで構成せず、複数のPEに分けて
構成する場合、第22図のPEを第24図のように接続
する。このときY、の値を2tクロツクの間保持するた
めに各PE毎にYlを設定するレジスタが必要である。
Furthermore, when all processing is not configured by IPE but divided into a plurality of PEs, the PEs shown in FIG. 22 are connected as shown in FIG. 24. At this time, in order to hold the value of Y for 2t clocks, a register for setting Yl is required for each PE.

PEの数をkとすると全体の処理は(2t/k)に分散
されるので、IPHに必要なレジスタ段数はm=(2t
/k)となる。従って、第24図の回路規模は(2t/
m) * (400+ (m+1)*50)ゲートとな
る。第25図に2つのPEで構成した場合の信号の流れ
を示す。このときの回路規模は850*2=1700ゲ
ートとなり、処理速度は2/ 16 M 1 p sと
なる。
If the number of PEs is k, the entire processing is distributed over (2t/k), so the number of register stages required for IPH is m = (2t/k).
/k). Therefore, the circuit scale in Fig. 24 is (2t/
m) * (400+ (m+1)*50) gate. FIG. 25 shows the signal flow when configured with two PEs. The circuit scale at this time is 850*2=1700 gates, and the processing speed is 2/16 M 1 ps.

m=1としたとき必要なPEの数はに=2tとなり、処
理速度も(16/ 2 t ) M 1 p sとなり
、第47図の構成と等価になる。
When m=1, the number of PEs required is 2t, and the processing speed is (16/2t) M 1 ps, which is equivalent to the configuration shown in FIG. 47.

次に、乗算回路S (x) *λ(X)を考える。乗算
C,’(X) =A (x) *B (x)の計算を前
章と同様に次のように分解する。
Next, consider the multiplication circuit S (x) *λ(X). The calculation of multiplication C,'(X) =A (x) *B (x) is decomposed as follows in the same way as in the previous chapter.

A(x) =am−1*X”−’+am−2*X”−”
+”’+al*X+aOとしたとき C(x) = am−1* B(x)* x−−’ +
 am−2* B(x)* x”−2+ −+a+*B
(x)*x+aoB(x) となるので Zo=O Z+=Z+−+*x+B(x)*am−+  (j=1
.=−、m)C(x) = Z m 従って、B (x)が入力されている間a□−1を保持
しZ+=Z+−+*x+B (x) *am−+を演算
した後レジスタ列6に挿入し、1周期後その演算結果を
Z+−1としてフィードバックすればよい。しかし、入
力S (x)及びλ<x>はステップlのシンドローム
生成部、及び前述の誤り位置多項式生成部から1度基本
クロックCKの転送レートで入力されるだけである。そ
こで、レジスタ列5,7を用いて繰り返し入力を実現し
、CK2で制御されるレジスタを用いて設定値を保持す
る。また、レジスタ列7からのB (x)出力はレジス
タ列6からのZ+−+出力より1クロツグ遅れてフィー
ドバックされる必要があるのでPEの構成は第26図の
ようになる。B (x) =S (x)。
A(x) = am-1*X"-'+am-2*X"-"
+"'+al*X+aO, then C(x) = am-1* B(x)* x--' +
am-2* B(x)* x"-2+ -+a+*B
(x)*x+aoB(x), so Zo=O Z+=Z+-+*x+B(x)*am-+ (j=1
.. =-, m) C(x) = Z m Therefore, while B (x) is input, hold a□-1 and after calculating Z+ = Z + - + *x + B (x) *am-+ register It is sufficient to insert it into column 6 and feed back the calculation result as Z+-1 after one cycle. However, the inputs S (x) and λ<x> are only input once from the syndrome generating section in step l and the above-mentioned error locator polynomial generating section at the transfer rate of the basic clock CK. Therefore, register arrays 5 and 7 are used to realize repeated input, and a register controlled by CK2 is used to hold set values. Furthermore, since the B(x) output from register row 7 needs to be fed back one clock later than the Z+-+ output from register row 6, the configuration of PE is as shown in FIG. 26. B (x) = S (x).

am−i”λzt−+ (i = 0 、− 、2 t
 )とした場合の信号の流れを第27図に示す。(IP
E内のレジスタ段数m −1= 2 t −1とする) 先ず、セレクタ選択信号Sl、2=01としてλ(x)
をF入力からW出力を通してレジスタ列5に入力する。
am-i"λzt-+ (i = 0, -, 2 t
) is shown in FIG. 27. (IP
(The number of register stages in E is m −1 = 2 t −1.) First, as the selector selection signal Sl, 2 = 01, λ(x)
is input to the register column 5 from the F input through the W output.

そのときλ(x)の最高次係数λ2tをCK 2によっ
て制御されるレジスタに蓄え、乗算機3の入力に設定す
る。またS (x)をλ(X)より1クロック遅らせて
Eに入力し、Yに出力させレジスタ列7に入力する。そ
の間XはC入力0を出力する。
At that time, the highest order coefficient λ2t of λ(x) is stored in a register controlled by CK 2 and set to the input of the multiplier 3. Further, S (x) is delayed by one clock from λ(X), inputted to E, outputted to Y, and inputted to the register array 7. Meanwhile, X outputs C input 0.

これによってλ2.*5(x)が演算され、レジスタ列
6に入力される。このときλ(X) *S (X)の最
高次係数λ21 * S 2t−+は演算されているの
でCKDによってラッチされ出力される。1周期をm(
ここではm = 2 t )として、1周期後セレクタ
選択信号Sl、2=OOとする。Bからはm段のレジス
タ列7によってフィードバックされた5(x)が入力さ
れ、再びY、からレジスタ列7に入力される。Dからは
m段のレジスタ列5によって最高次係数がずれたλ(X
)がフィードバックされWに出力される。
As a result, λ2. *5(x) is calculated and input to register column 6. At this time, since the highest order coefficient λ21 * S 2t-+ of λ(X) *S (X) has been calculated, it is latched by CKD and output. One period is m(
Here, it is assumed that m = 2 t ), and the selector selection signal Sl, 2 = OO after one cycle. From B, 5(x) fed back by the m-stage register row 7 is input, and again from Y, it is input to the register row 7. From D, λ(X
) is fed back and output to W.

従つて、CK 2ではλ(X)の次の係数λ21−1が
蓄えられ乗算器3に設定される。Aからはm−1段のレ
ジスタ列6によって全演算結果の最高次係数がずれたも
のがフィードバックされB (x) =S (x)に対
し1次係数がずれた形で入力される。これによって、Z
+=Z+−+*x+B (x) *am−iが演算され
レジスタ列6に入力される。以降CK2にλ0が入力さ
れ演算が終了するまで同様に演算が行われる。但し、答
えとなる演算結果は入力にフィードバックするときずれ
てしまうので、演算される度にCKDによって出力され
る。またλ(x)の係数も入力にフィードバックすると
きずれてしまうので1次づつ係数が減っでしまう。ずら
された係数は必要ないのでフィードバックされるときセ
レクタ選択信号をSt、2=IOとすることによってX
I WにOを出力する。
Therefore, in CK 2, the coefficient λ21-1 next to λ(X) is stored and set in the multiplier 3. From A, the shifted highest order coefficient of all the calculation results is fed back by the m-1 stage register array 6, and is input to B (x) = S (x) in the form of a shifted first order coefficient. With this, Z
+=Z+-+*x+B (x) *am-i is calculated and input to the register column 6. Thereafter, λ0 is input to CK2, and calculations are performed in the same manner until the calculations are completed. However, since the calculation result that becomes the answer shifts when fed back to the input, it is output by CKD every time the calculation is performed. Furthermore, the coefficient of λ(x) also shifts when fed back to the input, so the coefficient decreases by one order. Since the shifted coefficient is not necessary, when it is fed back, by setting the selector selection signal to St, 2=IO,
Outputs O to IW.

また演算終了後レジスタ列6には答えの演算結果が残っ
ているので同様の動作を繰り返すことに゛よリレジスタ
列6の結果が1係数づつずらされてCKDから出力され
る。
Furthermore, since the result of the answer operation remains in the register column 6 after the operation is completed, by repeating the same operation, the result in the register column 6 is shifted by one coefficient and output from CKD.

IPHに必要な回路規模はPE内のレジスタ段数をm−
1とした場合(400+3m*50)ゲート)となる。
The circuit scale required for IPH is the number of register stages in PE as m-
1, it becomes (400+3m*50) gates).

また、処理速度は演算終了から出力終了まで考える必要
があるので(16/4t/m)/2となる。
Further, the processing speed is (16/4t/m)/2 because it is necessary to consider the period from the end of calculation to the end of output.

全処理をIPEで行う場合PE内のレジスタ段数m=2
tとなり、1例として訂正能力t=8とした場合、回路
規模は2800ゲートとなり、処理速度は(1/32)
Mlpsとなる。
When all processing is performed by IPE, the number of register stages in PE is m = 2
As an example, if the correction capacity is t = 8, the circuit scale will be 2800 gates and the processing speed will be (1/32).
Becomes Mlps.

また、全処理をIPEで構成せず、複数のPEに分けて
構成する場合、第26図のPEを第28図のように接続
する。このときam−+の値を2tクロツクの間保持す
るために各PE毎にam−+を設定するレジスタが必要
である。PEの数をkとすると全体の処理は(2t/k
)に分散されるので、IPHに必要なレジスタ段数はm
=(2t/k)となる。従って、第28図の回路規模は
(2t/m) * (400+3m*50)ゲートとな
る。第29図に2つのPEで構成した場合の信・号の流
れを示す。このときの回路規模1600*2=3200
ゲートとなり、処理速度は(1/16)M I p s
となる。
Further, when all processing is not configured by IPE but divided into a plurality of PEs, the PEs shown in FIG. 26 are connected as shown in FIG. 28. At this time, in order to hold the value of am-+ for 2t clocks, a register for setting am-+ is required for each PE. If the number of PEs is k, the overall processing is (2t/k
), the number of register stages required for IPH is m
=(2t/k). Therefore, the circuit scale in FIG. 28 is (2t/m)*(400+3m*50) gates. FIG. 29 shows the flow of signals when configured with two PEs. Circuit scale at this time 1600*2=3200
gate, and the processing speed is (1/16) M I p s
becomes.

m=1としたとき必要なPHの数はに=2tとなり、処
理速度も(1/2)Mlpsとなる。
When m=1, the number of required PHs is 2t, and the processing speed is also (1/2) Mlps.

U 符号化は情報I (x) = (Ik−+、夏に−2,
−、I o )からパリティP (x ) = (P 
2 t 、 P 21−1 、・・・、Pl)を生成す
る。符号化とは生成多項式を g (X ) = g m * X−+ g m−1*
 X111−’ 十g m−2* XIN′・・・十g
1* x + g。
U encoding is information I (x) = (Ik-+, -2 in summer,
−, I o ) to parity P (x ) = (P
2 t , P 21-1 , ..., Pl). Encoding means generating polynomial g (X) = g m * X-+ g m-1 *
X111-' 10g m-2* XIN'...10g
1* x + g.

とすると P (x) =I (x) *xl+mod  g (
x)を求めることであり、 g’ (x) :gm−1*x″′−’十gm−2*x
”−・・+g+ *x十g。
Then, P (x) = I (x) *xl+mod g (
x), g' (x) :gm-1*x'''-'10gm-2*x
”-...+g+ *x 10g.

とすると この式は次のように分解される。Then This equation can be decomposed as follows.

Zo=l(x) Z+=gm *z’ i−1+2m *g’ (X) 
  (+= L”’+k)P(x)=Zk ここで2□は多項式Z1−1の最高次係数とし、Z”+
−1はZ、−1から最高次係数を除いた多項式とする。
Zo=l(x) Z+=gm *z' i-1+2m *g' (X)
(+= L”'+k)P(x)=Zk Here, 2□ is the highest order coefficient of polynomial Z1-1, and Z"+
-1 is a polynomial obtained by removing the highest order coefficient from Z, -1.

Zmをg’ (x)の入力中保持し、z m * g’
 (x)の演算を行う。ここでは、g m = 1とし
、第30図のようにPEを構成する。
Hold Zm while inputting g' (x), z m * g'
(x) is calculated. Here, g m = 1 and the PE is configured as shown in FIG. 30.

g、からg’ (x)の係数gm−1からgoがmを1
周期として周期的に乗算器2に入力される。またCK2
(1周期毎のクロック)とCLによって制御されるレジ
スタによってZIT+を保持し、Aに入力する。
g, to the coefficient gm-1 of g' (x) so that go makes m 1
The signal is periodically input to the multiplier 2 as a period. Also CK2
ZIT+ is held by a register controlled by (clock for each cycle) and CL, and is input to A.

Z’ +−1は前演算結果Z+−+を周期に対して1ク
ロツク早(出力することによって実現する。従ってレジ
スタ列6の段数をm −1とし、B入力にフィードバッ
クする。情報1 (x)はCから入力され1周期の間1
つの値が保持されるように入力する。
Z' +-1 is realized by outputting the pre-operation result Z+-+ one clock earlier than the period. Therefore, the number of stages of the register array 6 is set to m-1 and is fed back to the B input. Information 1 (x ) is input from C and is 1 for one period.
input so that one value is retained.

第31図に符号化の様子を示す。先ずi=1のときを考
える。初期状態としてCK2で制御されるレジスタに情
報シンボルI k−1が保持され、C入力からは情報I
k−□−1が入力され、レジスタ列6に情報シンボルが
Ik、zからIk−□迄蓄えられている場合を考える。
FIG. 31 shows the encoding process. First, consider the case when i=1. As an initial state, the information symbol Ik-1 is held in the register controlled by CK2, and the information symbol Ik-1 is held from the C input.
Let us consider the case where k-□-1 is input and information symbols from Ik, z to Ik-□ are stored in the register column 6.

演算部ではA入力からのIk−+にg’ (x)を乗じ
て1.B入力からのI k−+〜Ik−□、及びC入力
からのIk−m−+と加算して、レジスタ列6に入力す
る。
The arithmetic unit multiplies Ik-+ from the A input by g' (x) and calculates 1. Ik-+ to Ik-□ from the B input and Ik-m-+ from the C input are added and input to the register column 6.

(Y出力に対するB、 C入力の切り替えはセレクタ選
択信号Sl、2によって行われ、B入力の時Sl。
(Switching between B and C inputs for Y output is performed by selector selection signals Sl and 2, and when B input is selected, Sl.

2=OOSC入力の時Sl、2=01とする)その演算
結果を21の高次の項からI’ k−+ = I k−
+ *g m−i + I k−i−1とする。(j 
= 1、−、 m ) i = 2以降も11に一冒こ
対して同様の処理をi=kまで行うことにより符号化が
行われる。
When 2 = OOSC input, Sl, 2 = 01) The calculation result is calculated from the 21 higher-order terms as I' k-+ = I k-
+ *g m−i + I k−i−1. (j
= 1, -, m) After i = 2, encoding is performed by performing the same processing for 11 until i = k.

また、初期状態を実現するために第32図(m=4の場
合)のようにする。情報入力はI k−+〜IO迄1周
期の開鎖が保持されるように入力する。先ずセレクタ選
択信号Sl、 2=01とし、最初の受信シンボルI 
k−1をCから入力しYに出力する。A入力へはCK2
で制御されるレジスタのCLによって0を入力し、Xに
出力させる。PE内のレジスタ段数がm −1であるの
で、B入力には周期の1クロツク前にI k−+がフィ
ードバックされる。そのときSl。
Further, in order to realize the initial state, it is as shown in FIG. 32 (in the case of m=4). Information is input so that one cycle of open chain is maintained from Ik-+ to IO. First, the selector selection signal Sl,2=01, and the first received symbol I
Input k-1 from C and output to Y. CK2 to A input
0 is input by CL of the register controlled by , and output is made to X. Since the number of register stages in the PE is m-1, Ik-+ is fed back to the B input one clock cycle before. At that time Sl.

2=00としlクロ72分だけB入力をYに出力しSl
、2の設定を元に戻す。このときCからは次の受信シン
ボルIi+−2が入力されるのでレジスタ列6には■、
−1を1クロック分入力した後、I k−2を人力する
ことになる。I k−2人力中、レジスタ列6からの 
フィードバック入力とのずれは2クロック分になるので
、それに合わせてセレクタ選択信号をSt、2=00と
する。そのとき、Ik−+の後にI k−2が1り ロ
ック分選択される。以上の動作をIk−□進行うことに
よってレジスタ列6に1に一1〜Ih−mが蓄えられて
いく。Ib−m’−+を入力するとき、I b−+はレ
ジスタ列6からはみ出すがCR2で制御されるレジスタ
にラッチされることによって初期状態が実現される。
2 = 00, output the B input to Y for 72 minutes of Sl
, restore the settings in step 2. At this time, the next received symbol Ii+-2 is input from C, so register column 6 contains ■,
After inputting -1 for one clock, I k-2 is manually input. I k-2 manual input from register row 6
Since the deviation from the feedback input is two clocks, the selector selection signal is set to St,2=00 accordingly. At that time, Ik-2 is selected by one lock after Ik-+. By proceeding with the above operation Ik-□, 1 to 1 to Ih-m are stored in the register column 6. When inputting Ib-m'-+, Ib-+ protrudes from the register array 6, but is latched into the register controlled by CR2, thereby achieving an initial state.

また、演算終了後の情報I (x)とパリティP (x
)の切り替えもセレクタのZ出力を利用して第33図の
ようにして行う。上述の符号化演算中、2は1周期毎の
情報シンボルの入力であるC゛入力出力する。演算終了
後パリティ出力をレジスタ列6を通して循環させるが、
PE内のレジスタ段数がm −1であるのでCR2で制
御されるレジスタはノくリテイの1循環毎に1次ずれた
パリティを出力しA入力にフィー下バックする。そのと
きZはへ入力を選択しパリティを1周期毎に出力する。
Also, information I (x) and parity P (x
) is also performed as shown in FIG. 33 using the Z output of the selector. During the above-mentioned encoding operation, 2 inputs and outputs C' which is an input of information symbols for each period. After the operation is completed, the parity output is circulated through the register row 6.
Since the number of register stages in PE is m -1, the register controlled by CR2 outputs parity shifted by one order for each cycle of parity and feeds back to the A input. At that time, Z selects the input to and outputs parity every cycle.

従って、このときの回路規模、及び処理速度は(400
+m * 50)ゲート、及び(16/m)Mwpsで
ある。全処理をIPEで構成する場合、m = 2 t
となる。1例として訂正能力t=8とした場合、IPE
の回路規模は1200ゲートとなり、処理速度はI M
 w p s = 8 M b p sとなる。
Therefore, the circuit scale and processing speed at this time are (400
+m * 50) gates, and (16/m) Mwps. When all processing is configured with IPE, m = 2 t
becomes. As an example, if the correction ability t=8, IPE
The circuit scale is 1200 gates, and the processing speed is IM
w p s = 8 M b p s.

また、全処理をIPEで構成せず、複数のPEに分けて
構成する場合、第30図のPEを第34図のように接続
する。PEの数をkとすると全体の処理は(2t/k)
に分散されるので、IPEに必要なレジスタの段数はm
=(2t/k)となる。従って、第34図の回路規模は
(2t / m ) * (400+ m * 50 
)ゲートとなる。第35図に2つのPEで構成した場合
の信号の流れを示す。この場合、レジスタ段数はm =
 tであるので処理速度は2 M w p s = 1
6 M b p sとなり、回路規模は800*2=1
600ゲートとなる。
Furthermore, when all processing is not configured by IPE but divided into a plurality of PEs, the PEs shown in FIG. 30 are connected as shown in FIG. 34. If the number of PEs is k, the total processing is (2t/k)
Therefore, the number of register stages required for IPE is m
=(2t/k). Therefore, the circuit scale in Fig. 34 is (2t/m) * (400 + m * 50
) becomes a gate. FIG. 35 shows the signal flow when configured with two PEs. In this case, the number of register stages is m =
t, so the processing speed is 2 M w p s = 1
6 Mbps, and the circuit scale is 800*2=1
There will be 600 gates.

m == 1としたとき必要なPEの数はに=2tとな
るが、#にのPEから#lのPEへのフィードバック、
及び1 (x)の同時入力は変わらないので、このアー
キテクチャにおいても符号器はやはりシストリックな構
成にならない。
When m == 1, the number of PEs required is = 2t, but the feedback from PE # to PE #l,
Since the simultaneous inputs of and 1 (x) remain unchanged, the encoder is still not systolic in this architecture.

;:′−1  びシステム ステップ3の1(α−°)出力は第17図のPEを用い
た場合2を毎にIcK分だけ出力されるが、σ′(α−
1)とび(α−1)、ω(α−I)ではタイミングが半
周期ずれるのでσ′(α−′)はCR2(2を毎のクロ
ック)で制御されるレジスタでラッチさせ、σ(α−1
)。
;:'-1 and the 1 (α-°) output of system step 3 are output by IcK every 2 when using the PE shown in Fig. 17, but σ'(α-°)
1) Since the timing is shifted by half a cycle at jump (α-1) and ω (α-I), σ'(α-') is latched by a register controlled by CR2 (2 is every clock), and σ (α -1
).

ω(α−I)はCK2’(CR2を半周期ずらしたクロ
ック)でラッチし、更にCR2で制御されるレジスタで
ラッチすることによって第48図と同様なステップ4の
誤り訂正が実現される。(タイミングは第21図に示す
。但し、GCD生成部においてはA (B)。
By latching ω(α-I) with CK2' (a clock shifted by half a cycle from CR2) and further latching it with a register controlled by CR2, error correction in step 4 similar to that shown in FIG. 48 is realized. (The timing is shown in FIG. 21. However, in the GCD generation section, A (B).

L (M)の処理を1つのProcess部を2回用い
ている場合は、ω(x)の係数が先に送られてくるので
バッファを介する必要がある)ステップ4の誤り訂正の
実行部を最適化すると第20図のようになる。
(If one Process unit is used twice to process L(M), the coefficients of ω(x) are sent first, so they must be passed through a buffer). After optimization, the result will be as shown in Fig. 20.

ω(α−1)、σ(α−リ、σ′(α一つの出力のタイ
ミングを合わせた後の動作は前章と同じである。従って
、ステップ4に於いて必要な回路規模はバッファと逆数
生成用ROMを除いて、450+5*50=700ゲー
トとなる。ステップ4の誤り訂正実行部はシストリック
な構造を持たないので、レジスタ段数を増加しても回路
の小型化を行うことは出来ない。
ω(α-1), σ(α-ri, σ'(α) The operation after adjusting the timing of one output is the same as in the previous chapter. Therefore, the circuit size required in step 4 is the buffer and reciprocal. Excluding the generation ROM, there are 450 + 5 * 50 = 700 gates.The error correction execution unit in step 4 does not have a systolic structure, so the circuit cannot be made smaller even if the number of register stages is increased. .

従って、その状況に応じて最適な回路の簡単化を行えば
よい。またα−’ (i=n−1,・・・、O)発生回
路も同様である。
Therefore, it is only necessary to simplify the circuit optimally depending on the situation. The same applies to the α-' (i=n-1, . . . , O) generation circuit.

以上述べてきたように、R5符号の各復号ステラ プは
高速性と引き替えに回路を小型化できる。
As described above, each decoding ladder of the R5 code can reduce the size of the circuit in exchange for high speed.

第49図の復号器に於いて1例として次の組合せにする
ことよって、各PEの制御をセレクタ選択信号とCR2
のみで全体のシステムを動かすことが出来る。
As an example, in the decoder of FIG. 49, the control of each PE is controlled by the selector selection signal and the CR2
You can run the entire system with just one.

ステップ1)SYNDROME:図62ステップ2) 
GCD     :図69ステップ3)EVALUAT
EC図77ステツプ4)CORRECT  :図80符
号化復号器をシステムとして考えた場合、第50図の消
失誤り訂正のための復号器を1例として、′次の組合せ
にすることによって小型化された符号化復号器として実
現できる。
Step 1) SYNDROME: Figure 62 Step 2)
GCD: Figure 69 Step 3) EVALUAT
EC Figure 77 Step 4) CORRECT: When considering the encoder/decoder in Figure 80 as a system, taking the decoder for erasure error correction in Figure 50 as an example, it can be miniaturized by making the following combinations. It can be implemented as an encoder/decoder.

1)SYNDROME    :図622) GCD 
      :図69 3)EVALUATE    :図774)CORRE
CT    :図80 5)ERASURE  I   :図826)ERAS
URE  II   :図8にれはステップ4で示した
復号器にERASURE■とERASURE  IIを
加えたものである。また、ステップ4で示した復号器に
第30図の符号器を加えて符号化復号器とすることも出
来る。(符号化と復号を同時に行わない場合には、PH
の接続、及びPHの制御を符号化と復号で可変にするこ
とによって第49図の回路で回路規模を変えることなく
符号化復号器を実現できる) 各々の処理における回路規模(ゲート単位)、及び処理
速度(M w p s単位)は前述したように次の通り
である。(wps=word/5ec)1)  (2t
/m)*(4(10+m+50)、16/m2)  (
2t/m)*(700+ (3m+4) +50)、 
n*(16/2t/m)3)  2*(2t/m)*(
400+(m+1) +50)、 16/m5)  (
2t/m)*(400+(m+1)+50)、n*(1
6/2t/m)6)  (2t/m) * (400*
 (3m+2) +50)、 n* (16/4t) 
/m)7)  ENCODE :図89 ;  (2t
/m)*(4004m+50)、 16/m1例として
R3復号器がt=8としたとき次のような回路規模、及
び処理速度で実現できる。(符号長n≧4tであり、ま
たIPEで実現するためにm=2tとする) 1200 + 3300 + 2500 + 700 
= 7700 gatel M w p s = 8 
M b p sまたt=2の場合は 600 + 1500 + 1300 + 700 +
 3100gate4 M w p s = 32 M
 b p s(2”)の回路規模をMゲートとすると、
GF(2’)の回路規模は約4Mゲートとなる。しかし
、1ワードの構成がmビットから2mビットとなること
を考えると、IPE当りの処理速度は10〜20 M 
w p s(ワード7秒)であるのでm−、(10〜2
0)Mbpsから2m・(lO〜20)Mbpsとなり
、2倍になる。
1) SYNDROME: Figure 622) GCD
: Figure 69 3) EVALUATE : Figure 774) CORRE
CT: Figure 80 5) ERASURE I: Figure 826) ERAS
URE II: In FIG. 8, ERASURE ■ and ERASURE II are added to the decoder shown in step 4. Furthermore, the encoder shown in FIG. 30 can be added to the decoder shown in step 4 to form a coding decoder. (If encoding and decoding are not performed simultaneously, PH
By making the connection of As mentioned above, the processing speed (in M w ps) is as follows. (wps=word/5ec)1) (2t
/m)*(4(10+m+50), 16/m2) (
2t/m) * (700+ (3m+4) +50),
n*(16/2t/m)3) 2*(2t/m)*(
400+(m+1) +50), 16/m5) (
2t/m)*(400+(m+1)+50), n*(1
6/2t/m)6) (2t/m) * (400*
(3m+2) +50), n* (16/4t)
/m)7) ENCODE:Figure 89; (2t
/m)*(4004m+50), 16/m1 As an example, when the R3 decoder assumes t=8, it can be realized with the following circuit scale and processing speed. (Code length n≧4t, and m=2t to implement with IPE) 1200 + 3300 + 2500 + 700
= 7700 gatel M w p s = 8
M b p s and when t=2, 600 + 1500 + 1300 + 700 +
3100gate4 M w p s = 32 M
If the circuit scale of b p s (2”) is M gate,
The circuit scale of GF(2') is approximately 4M gates. However, considering that the structure of one word is from m bits to 2m bits, the processing speed per IPE is 10 to 20 M bits.
Since w p s (word 7 seconds), m-, (10~2
0) Mbps becomes 2m·(lO~20) Mbps, doubling.

段数を2段とすればよい。すると、必要なPEの数は、
k=(2t/m)、m=2であるのでt個となる。従っ
て、ガロア体の構成をGF(2M)からGF(22M)
とした場合、同一処理速度での回路規模の増加は2倍と
なる。一般的にガロア体の構成をGF(2″′)からG
F (2°−′″)とした時、回路規模の増加は、a倍
となる。
The number of stages may be two. Then, the number of PEs required is
Since k=(2t/m) and m=2, there are t pieces. Therefore, we can change the structure of the Galois field from GF(2M) to GF(22M).
In this case, the circuit scale increases twice at the same processing speed. Generally speaking, the structure of the Galois field is from GF(2″′) to G
When F (2°-'''), the increase in circuit scale is a times.

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

以上説明したように、前R3符号化復号器で用いたPE
のレジスタ段数を増やすだけで、回路規模を小型化でき
るアーキテクチャを示した。
As explained above, the PE used in the previous R3 encoding decoder
We demonstrated an architecture that can reduce the circuit scale by simply increasing the number of register stages.

これによって、回路規模(ゲート単位)と処理速度(1
Mwps単位)が訂正能力tと、レジスタ段数mによっ
て関数的に示すことができ、実現可能な回路規模で任意
の処理能力、処理速度を実現できる。
As a result, the circuit scale (gate unit) and processing speed (1
Mwps unit) can be expressed functionally by the correction capability t and the number of register stages m, and any processing power and processing speed can be achieved with a realizable circuit scale.

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

第1図は本発明による小型化プロセッシング・エレメン
ト(PE)の構成図 第2図は本発明による第1図のPEを最適化したシンド
ローム生成回路の説明図 第3図は本発明による第2図のPEのタイミング図第4
図は本発明による第2図のPEの接続図第5図は本発明
による第2図のPEを2つ用いたシンドローム生成回路
のタイミング図 第6図は本発明による第1図のPEを用いたGCD生成
回路の説明図 第7図は本発明による第1図のPEを用いたGCD生成
回路のタイミング図 第8図は本発明による第1図のPEを用いたGCD生成
回路のタイミング図 第9図は本発明による第1図のPEを用いたGCD生成
回路の説明図 第10図は第9図の入力タイミング図 第11図は本発明による第1図のPEを最適化したGC
D生成回路の説明図 第12図は本発明による第11図のPEを2つ用いたG
CD生成回路のタイミング図 第13図は本発明による第1図のPEを最適化した誤り
評価回路の説明図 第14図は本発明による第13図のPEのタイミング図 第15図は本発明による第13図のPHの接続図第16
図は本発明による第13図のPEを2つ用いた場合のタ
イミング図 第17図は本発明による第13図のPEを最適化した誤
り評価回路の説明図 第18図は本発明による第17図のタイミング図第19
図は本発明による第17図のタイミング図第20図は本
発明による最適化された誤り訂正実行部第21図は本発
明による第20図のタイミング図第22図は本発明によ
る第1図のPEを最適化した消失1位置多項式生成回路
の説明図 第23図は本発明による第22図のPEのタイミング図
第24図は本発明による第22図のPEの接続図第25
図は本発明による第22図のPEを2つ用いた場合のタ
イミング図 第26図は本発明による第1図のPEを最適化した乗算
回路の説明図 第27図は本発明による第26図のPHのタイミング図
第28図は本発明による第26図のPHの接続図第29
図は本発明による第26図のPEを2つ用いた場合のタ
イミング図 第30図は本発明による第1図のPEを最適化した符号
器の説明図 第31図は本発明による第30図のPEのタイミング図
(処理中) 第32図は本発明による第30図のPEのタイミング図
(初期入力時) 第33図は本発明による第30図のPHのタイミング図
(数値出力時) 第34図は本発明による第30図のPHの接続図第35
図は本発明によるPEを2つ用いた場合のタイミング図 第36図は従来のプロセッシング・エレメント(PE)
の構成図 第37図は従来のプロセッシング・エレメント(PE)
のセレクタの構成図 第38図は従来のプロセッシング・エレメント(PE)
の乗算器の構成図 第39図は従来のプロセッシング・エレメント(PE)
の加算器の構成図 第40図はGCDを求めるためのアルゴリズムを説明す
るための図 第41図は従来のシンドローム生成用PEを説明するた
めの図 第42図は従来のシンドローム生成用PHの接続図第4
3図は従来のGCD′CD用PEの接続図第44図は従
来のGCD生成用PEの動作タイミングを示す図 第45図は従来のGCD生成用PEの動作タイミングを
示す図 ′第46図は従来の誤り評価用PHの接続図第47図は
従来の消失位遣多項式生成用PHの接続図 第48図は従来の誤り訂正実行用PEを説明するための
図 第49図は従来の誤り訂正復号器をシステムを構成図 第50図は消失誤り訂正復号器の例を示す図O・・・・
・・・・・・・・・・・・・・・・・・・・・・・・・
・・・・・・・・・・・・・・・・・・・・・・・・・
・・・・・・・・・・乗算器■ ・・・・・・・・・・
・・・・・・・・・・・・・・・・・・・・・・・・・
・・・・・・・・・・・・・・・・・・・・・・・・・
・・・・加算器特許出願人  キャノン株式会社 第22 Gに1 1  +−11+  1  +−第6図 C11 男IO図 ・1         \ \ 葛   o9 Cに11 aJ−)−−・    11  ・−・第21図 〜  く  ラ  マ こ  =° さX   )−u ト 瞬 0 ’H” ’−へ i                     #謔 
                         
  易躬4q図
FIG. 1 is a block diagram of a miniaturized processing element (PE) according to the present invention. FIG. 2 is an explanatory diagram of a syndrome generation circuit that optimizes the PE of FIG. 1 according to the present invention. FIG. 3 is a diagram showing a second diagram according to the present invention. PE timing diagram 4th
5 is a timing diagram of a syndrome generation circuit using two PEs shown in FIG. 2 according to the present invention. FIG. 6 is a diagram using the PEs shown in FIG. 1 according to the present invention. 7 is a timing diagram of a GCD generation circuit using the PE shown in FIG. 1 according to the present invention. FIG. 8 is a timing diagram of a GCD generation circuit using the PE shown in FIG. 1 according to the present invention. FIG. 9 is an explanatory diagram of a GCD generation circuit using the PE of FIG. 1 according to the present invention. FIG. 10 is an input timing diagram of FIG. 9. FIG. 11 is a GC using the PE of FIG. 1 according to the present invention.
FIG. 12 is an explanatory diagram of the D generation circuit.
13 is a timing diagram of the CD generation circuit. FIG. 13 is an explanatory diagram of an error evaluation circuit that optimizes the PE of FIG. 1 according to the present invention. FIG. 14 is a timing diagram of the PE of FIG. 13 according to the present invention. FIG. 15 is according to the present invention. PH connection diagram No. 16 in Fig. 13
The figure is a timing diagram when two PEs shown in FIG. 13 according to the present invention are used. FIG. 17 is an explanatory diagram of an error evaluation circuit that optimizes the PE shown in FIG. 13 according to the present invention. Timing diagram No. 19 in Figure
20 is an optimized error correction execution unit according to the present invention. FIG. 21 is a timing diagram of FIG. 20 according to the present invention. FIG. 22 is a timing diagram of FIG. 1 according to the present invention. An explanatory diagram of a vanishing one-position polynomial generation circuit with optimized PE. FIG. 23 is a timing diagram of the PE of FIG. 22 according to the present invention. FIG. 24 is a connection diagram of the PE of FIG. 22 according to the present invention.
The figure is a timing diagram when two PEs shown in FIG. 22 are used according to the present invention. FIG. 26 is an explanatory diagram of a multiplication circuit that is an optimized PE of FIG. 28 is a PH timing diagram of FIG. 26 according to the present invention, and FIG. 29 is a PH timing diagram of FIG.
The figure is a timing diagram when two PEs shown in FIG. 26 are used according to the present invention. FIG. 30 is an explanatory diagram of an encoder that optimizes the PE shown in FIG. 1 according to the present invention. Fig. 32 is a timing diagram of the PE of Fig. 30 according to the present invention (during initial input) Fig. 33 is a timing diagram of the PH of Fig. 30 according to the present invention (during numerical output) Figure 34 is a connection diagram of the PH of Figure 30 according to the present invention.
The figure is a timing diagram when two PEs according to the present invention are used. Figure 36 is a conventional processing element (PE).
Figure 37 shows the conventional processing element (PE).
Figure 38 shows the configuration of the selector of the conventional processing element (PE).
Figure 39 is a block diagram of the multiplier of the conventional processing element (PE).
Figure 40 is a diagram for explaining the algorithm for determining GCD. Figure 41 is a diagram for explaining the conventional PE for syndrome generation. Figure 42 is the connection of the conventional PH for syndrome generation. Figure 4
Figure 3 is a connection diagram of a conventional GCD'CD PE; Figure 44 is a diagram showing the operation timing of a conventional GCD generation PE; Figure 45 is a diagram showing the operation timing of a conventional GCD generation PE; and Figure 46 is a diagram showing the operation timing of a conventional GCD generation PE. FIG. 47 is a connection diagram of a conventional PH for error evaluation. FIG. 48 is a diagram for explaining a conventional PE for error correction. FIG. 49 is a diagram for explaining a conventional error correction PE. Figure 50 is a diagram illustrating the configuration of a decoder system. Figure 50 shows an example of an erasure error correction decoder.
・・・・・・・・・・・・・・・・・・・・・・・・
・・・・・・・・・・・・・・・・・・・・・・・・
・・・・・・・・・Multiplier■ ・・・・・・・・・・・・
・・・・・・・・・・・・・・・・・・・・・・・・
・・・・・・・・・・・・・・・・・・・・・・・・
... Adder patent applicant Canon Co., Ltd. No. 22 G to 1 1 +-11+ 1 +- Figure 6 C11 Male IO diagram 1 \ \ Kudzu o9 C to 11 aJ-) --- 11 ・-- Figure 21 ~ Kura ma ko = ° sa

Yiman 4q diagram

Claims (1)

【特許請求の範囲】[Claims] (1)多入力多出力、または多入力−出力のセレクタと
そのセレクタ出力の少なくとも一方を入力に持つガロア
体上の乗算器と、その乗算器出力を少なくとも一方の入
力に持つガロア体上の加算器と、その加算出力および前
記セレクタ出力を蓄えるm段のレジスタ列から構成され
る演算回路を複数同型に接続することによって多項式A
、Bから、その最大公約多項式GCD[A、B]を求め
るGCD生成回路。
(1) A multiplier on a Galois field that has a multiple-input multiple-output or multiple-input-output selector and at least one of its selector outputs as inputs, and an addition on a Galois field that has at least one input as the output of the multiplier The polynomial A
, B, a GCD generation circuit that obtains the greatest common denominator polynomial GCD[A,B].
JP31083286A 1986-12-22 1986-12-26 Gcd generating circuit Pending JPS63164625A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP31083286A JPS63164625A (en) 1986-12-26 1986-12-26 Gcd generating circuit
US07/982,062 US5325373A (en) 1986-12-22 1992-11-25 Apparatus for encoding and decoding reed-solomon code

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP31083286A JPS63164625A (en) 1986-12-26 1986-12-26 Gcd generating circuit

Publications (1)

Publication Number Publication Date
JPS63164625A true JPS63164625A (en) 1988-07-08

Family

ID=18009935

Family Applications (1)

Application Number Title Priority Date Filing Date
JP31083286A Pending JPS63164625A (en) 1986-12-22 1986-12-26 Gcd generating circuit

Country Status (1)

Country Link
JP (1) JPS63164625A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63233613A (en) * 1987-03-20 1988-09-29 Canon Inc Reed-solomon encoding/decoding system
JPS63233614A (en) * 1987-03-20 1988-09-29 Canon Inc Reed-solomon encoding/decoding system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63233613A (en) * 1987-03-20 1988-09-29 Canon Inc Reed-solomon encoding/decoding system
JPS63233614A (en) * 1987-03-20 1988-09-29 Canon Inc Reed-solomon encoding/decoding system

Similar Documents

Publication Publication Date Title
US7827471B2 (en) Determining message residue using a set of polynomials
US20030192007A1 (en) Code-programmable field-programmable architecturally-systolic Reed-Solomon BCH error correction decoder integrated circuit and error correction decoding method
US6550035B1 (en) Method and apparatus of Reed-Solomon encoding-decoding
CN103957014A (en) Odd-even check bit generating, transmitting, and receiving apparatuses, and transmitting and receiving method
WO2007132656A1 (en) Error correction coding method and device
US20060107190A1 (en) Even-load software reed-solomon decoder
US6378104B1 (en) Reed-solomon coding device and method thereof
EP1064728B1 (en) Technique for finding a starting state for a convolutional feedback encoder
US5325373A (en) Apparatus for encoding and decoding reed-solomon code
US20060212783A1 (en) Method and apparatus for combined encoder/syndrome computer with programmable parity level
US7096408B1 (en) Method and apparatus for computing the error locator polynomial in a decoder of a forward error correction (FEC) system
EP2309650B1 (en) A systematic encoder with arbitrary parity positions
EP1102406A2 (en) Apparatus and method for decoding digital data
JPS63164625A (en) Gcd generating circuit
Zhang VLSI architectures for Reed–Solomon codes: Classic, nested, coupled, and beyond
JP3343857B2 (en) Decoding device, arithmetic device, and methods thereof
JPS63164629A (en) Bch coding and decoding device
JPS63164626A (en) Circuit for generating error location and value of error
CN111130562A (en) CRC parallel computing method and system
JPS63164627A (en) Missing location polynomial generating circuit
JPS63164624A (en) Syndrome generating circuit
JPS63164628A (en) Encoder
JPS63157528A (en) Generation circuit for errorneous position and errorneous value
Reed et al. Reed-Solomon Codes
JPS63157530A (en) Bch coding decoding system