JPS63164627A - Missing location polynomial generating circuit - Google Patents
Missing location polynomial generating circuitInfo
- Publication number
- JPS63164627A JPS63164627A JP31083486A JP31083486A JPS63164627A JP S63164627 A JPS63164627 A JP S63164627A JP 31083486 A JP31083486 A JP 31083486A JP 31083486 A JP31083486 A JP 31083486A JP S63164627 A JPS63164627 A JP S63164627A
- Authority
- JP
- Japan
- Prior art keywords
- input
- register
- polynomial
- output
- processing
- 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
- 238000003491 array Methods 0.000 abstract description 2
- 230000010354 integration Effects 0.000 abstract description 2
- 230000000979 retarding effect Effects 0.000 abstract 1
- 238000012545 processing Methods 0.000 description 87
- 238000010586 diagram Methods 0.000 description 46
- 238000000034 method Methods 0.000 description 35
- 238000012937 correction Methods 0.000 description 31
- 230000008569 process Effects 0.000 description 26
- 208000011580 syndromic disease Diseases 0.000 description 25
- 238000004364 calculation method Methods 0.000 description 24
- 238000011156 evaluation Methods 0.000 description 11
- 101100063070 Bacillus subtilis (strain 168) degA gene Proteins 0.000 description 10
- 239000011159 matrix material Substances 0.000 description 6
- 230000014509 gene expression Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 230000003111 delayed effect Effects 0.000 description 2
- 235000010575 Pueraria lobata Nutrition 0.000 description 1
- 241000219781 Pueraria montana var. lobata Species 0.000 description 1
- 241000862969 Stella Species 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000009957 hemming Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 150000003839 salts Chemical class 0.000 description 1
- 210000002784 stomach Anatomy 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
Landscapes
- Error Detection And Correction (AREA)
Abstract
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符号の符号化復号において、消失誤り
訂正を行う技術に関する。The present invention relates to a technique for performing erasure error correction in encoding and decoding BCH codes.
近年、メモリーシステムを始めとする、各種ディジタル
システムの信頼性向上の対策として誤り検出・誤り訂正
符号(以下、単に誤り訂正符号という)の適用が浸透し
てきている。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.
これには、ランダム誤り訂正に適したB CH符号。For this, a BCH code suitable for random error correction is used.
バースト誤り訂正に適したファイヤー符号、更にBCH
符号の1種であり、バイト誤り訂正に適したReed−
3olomon符号(以下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.
3olomon code (hereinafter referred to as R3 code). Among them, the R3 code has the lowest redundancy among linear codes with the same code length and correction ability, and is a very important code in practice. It is widely used in disk drives (hereinafter referred to as CDs), etc.
このR3符号の復号法には種々の物があり、2ないし3
程度の小さな訂正能力に対する復号器の装置化は比較的
容易である。しかし、高信頼性を得る為には、訂正能力
を太き(する必要がある。There are various decoding methods for this R3 code.
It is relatively easy to implement a decoder for a small degree of correction capability. 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日出願)t’1tVLsIア
ーキテクチャの特徴を生かし、次のことを実現した。Therefore, by taking advantage of the features of the rBCH encoding/decoding system (filed on December 22, 1986) t'1tVLsI architecture, which the present applicant had previously applied for, the following was achieved.
■)高信頼性(大能力)
2)高速性
3)内部構造の規則性
4)大集積化
これによって、10−20Mwps=80−1610−
2O以上の処理速度を持つR8符号化復号器が実現出来
ることを示した。また、訂正能力に対して同じ構成のP
Eを1次関数的に増やしていくことによって任意の高信
頼性を得られる構成にした。これは衛星通信等、高信頼
性と高速度性が求められるシステムには非常に有効であ
る。また、復号処理の中心である誤り位置多項式と誤り
数値多項式を求める処理を10−210−2O(cod
elength/5ec)で行うことも出来るので高速
処理には非常に有効な方法である。 ・
しかし、CDまたは磁気ディスクなどで用いているデー
タの転送レートは10 M b p s以下であること
が多く、ハード容量の小型化が求められており、その点
についてはなお問題があった。■) High reliability (large capacity) 2) High speed 3) Regularity of internal structure 4) Large integration As a result, 10-20Mwps = 80-1610-
We have shown that it is possible to realize an R8 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). - 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 regard, as there is a demand for smaller hardware capacity.
以上の点に鑑み、本発明は、本出願人が先に出願した上
記rBC)I符号化復号方式」に示したR3符号化復号
器のアーキテクチャの特徴を生かしなから2)の高速性
の条件を犠牲にすることによって4)の条件を小型化で
達成出来るアーキテクチャを提案する。In view of the above points, the present invention utilizes the characteristics of the architecture of the R3 encoding/decoding system shown in the above rBC) I encoding/decoding method previously filed by the present applicant, thereby achieving the high-speed conditions of 2). We propose an architecture that can achieve condition 4) with miniaturization by sacrificing .
以下図面に基づいて本発明の実施例について説明する。 Embodiments of the present invention will be described below based on the drawings.
前述したR5符号化復号器のアーキテクチャはシストリ
ック・アーキテクチャの考え方を適用したものである。The architecture of the R5 encoder decoder described above applies the idea of systolic architecture.
シストリック・アーキテクチャの特徴は、1つの処理が
同一のPHの同一ネットワークによって処理されること
である。これは全てのプロセッシング・エレメント(P
E)で行われる処理が同一であり、その入出力関係も同
一であることを示している。従って1度の処理を1つの
PEで行った後、次のPHに処理結果を送らずにメモリ
(レジスタ)部に蓄えておき自分自身にフィードバック
することによって、PEの数を増やさずに処理すること
が出来る。そこで、今回の基本となるI’Eを第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 PH. 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, I'E, which will be the basis of this study, is defined 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 GF(2'), the circuit scale is approximately 50 gates with the configuration shown in Figure 37 for the l selector, and the 3rd multiplier for 2.3.
In the configuration shown in Figure 8, one gate has approximately 300 gates, and the 4 adders are the third gate.
The configuration shown in FIG. 9 requires approximately 50 gates, and one register 5-7 requires approximately 50 gates.
また1つのPEに注目した場合、前アーキテクチャでは
1度の処理を行い処理結果を出力した後、そのPEは次
の入力を受は取ることが出来るのでIPEの処理速度を
最大に生かした高速処理が可能であるが、処理結果を次
のPEに送らず自分自身にフィードバックする場合、次
の入力を受は取ることが出来ないので外部的にみた場合
1つのPEへのデータの転送レートは遅(なる。但し、
PE自体の処理速度はl−4からなるPEの演算部で決
定され、その構成は変わらないので10−20 M h
zである。ここでは、後の都合のためにIPEの処理
速度はl 6 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 not sent to the next PE but fed back to itself, the next input cannot be received, so from an external perspective, the data transfer rate to one PE is slow. (It becomes. However,
The processing speed of the PE itself is determined by the calculation unit of the PE consisting of 1-4 units, and its configuration remains unchanged, so the processing speed is 10-20 M h
It is z. Here, for later convenience, the processing speed of IPE is assumed to be l 6 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.
W旦宋シ引IL皿
まず、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.
R5符号は、非二元BCH符号(Bose−Chavd
huri−Hocquenghen code)の特
別な場合であり、有限体(以下、GFと略す。) GF
(q)の元で構成される。ここでは、qはGF (q
)の元の数である。The R5 code is a non-dual BCH code (Bose-Chavd
This is a special case of finite field (hereinafter abbreviated as GF) GF.
It is composed of (q). Here, q is GF (q
) is the original number of
このqを用いると、R3符号を特徴づける各種パラメー
タが以下のように定義される。Using this q, various parameters characterizing the R3 code are defined as follows.
・符 号 長 : n(−符号中のシンボル数)n≦q
−1(2−1)
・情報シンボル数二 k(−符号中の情報シンボル数)
・検査シンボル数:n−k(−符号中の検査シンボル数
)n−に=dmin−1(2−2)
・訂正能力 : t(−符号中の訂正できるシンポ数)
([X]ガウス記号9.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 9. The largest integer not exceeding x) Here, d m i n is what is called the minimum distance (/Hemming distance).
ここで符号語等の多項式表現について説明する。Here, polynomial expressions such as code words will be explained.
例えば、符号化したいに個の情報シンボルを”” (1
o+ 11+・・・+ Ik−+)
(210)とする時、これは次のように多項式表現され
る。For example, if you want to encode as many information symbols as "" (1
o+ 11+...+ Ik-+)
(210), this is expressed as a polynomial as follows.
I(x) = i、+i、 x+i+ x”+・・−+
ih、 xk−2+i、−1x”−’ (2=11)
同様に付加される(n−k)個の検査シンボルC= (
C0,C,、・・・+ Co−h−+ )
(212)は、
C(x) = co+c+ X+C2X”+−・・C,
、−m−1”X−−’ (2−13)更に、これ
らをまとめた符号語F
F= (fo、 L、 fz、−f、−+)
(214)=(c、、c、・・・Cn−に−1
+ to I I+山、・・・ib−+) (21
5)は、
F(x) = fo+f + x+fz x”十’・f
n−2に’−”+fn−I X’−’ (2−16)
はそれを生成した生成多項式G(x)で割り切る事がα
、α2.・・・C1という根を持つから、符号語多項式
F (x)はこの根を代入すると、次式が成立する。I(x) = i, +i, x+i+ x"+...-+
ih, xk-2+i, -1x"-' (2=11)
(n-k) check symbols C= (
C0,C,...+Co-h-+)
(212) is C(x) = co+c+ X+C2X"+-...C,
, -m-1"X--' (2-13) Furthermore, the code word F = (fo, L, fz, -f, -+) that summarizes these
(214)=(c,,c,...-1 to Cn-
+ to I I+ mountain, ... ib-+) (21
5) is F(x) = fo+f + x+fz x”10'・f
n-2 '-'+fn-I X'-' (2-16)
can be divided by the generator polynomial G(x) that generated it.
, α2. . . . Since it has a root C1, when this root is substituted into the code word polynomial F (x), the following equation is established.
F(α’)=0(i=1,2.−・、n−k) (
2−21)この(2−21)式を行列表現すると次のよ
うになる( vTはFの転置行列)。F(α')=0(i=1,2.-・,n-k) (
2-21) Expression (2-21) is expressed as a matrix as follows (vT 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.
塩4L法
既に述べたように、R3符号はBCH符号の一種である
から、一般的なりCH符号の復号アルゴリズムを利用し
て復号を行う事ができる。但しその場合復号処理におけ
る加算2乗算等のシンボルの取扱いは、そのR3符号が
定義される有限体GF (q)の上で行われなければい
けない。Salt 4L Method As already mentioned, since the R3 code is a type of BCH code, it can be decoded using a general RICH code decoding algorithm. However, in that case, handling of symbols such as addition and squaring 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)式を用
い、符号の最小距離は簡単の為dmin=2t+1と置
(事にする。Code length n defined on GF(2''') (m: positive integer)
Considering an R3 code with = 2'''-1, the symbol is represented by an m-bit binary number, and the operation is GF(2''')
done above. Further, equation (2-17) is used as the generating polynomial, and the minimum distance between codes is set to dmin=2t+1 for simplicity.
g(x)−(x −α)(x−a”) −・−(x−a
”−”) (2−17)ただし、αは有限体GF(2
″)上の原始光さて、このようなR3符号の復号手順は
、一般的なりCH符号の場合と同様、次のような4つの
ステップに分けられる。g(x)−(x −α)(x−a”) −・−(x−a
"-") (2-17) However, α is a finite field GF (2
'') The decoding procedure for such an R3 code is divided into the following four steps, as in the case of a general CH code.
ステップ1) シンドローム計算。Step 1) 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 シンドローム8 ・
まず、
送信された符号語をF : F=(fo+ f l、
”’fn +)生じた誤りをE : E=(eo
、 el、”’en−1)受信された受信語をR:
R=(ro、 x、−=rn−1)=F+E
= (fo+eo、 f++e+、−fn−++en−
+)とすると、受信語の多項式表現R(x)は次のよう
になる。Step l Syndrome 8 - First, the transmitted codeword is F: F=(fo+fl,
``'fn +) The error that occurred is E: E=(eo
, el, "'en-1) R the received word:
R = (ro, x, -=rn-1) = 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−+) X’−’ (2−23)ところが、
符号多項式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(α′)のように、誤りEだけで決まる値が求まる
。R(x) =F(x)+E(x)=(fo+e
o) + (f++e+) x+-・+ (fn-++
en-+) X'-' (2-23) However,
The generator polynomial G (x) ((2-
If we substitute the root a' (i=1.-, n-k) of Equation 17), (F(α') = O) holds, so we similarly set a i (i =1.-”, n-k)
Substituting R(α')=F(α・)+E(α')=O+E(α')
A value determined only by the error E is found, such as =E(α').
これをシンドロームと呼び、改めて
S” (Son S+、・・・、 Sn−に−1)
(225)s i R(a”す=E (a”
’ ) (1=0 + 1 + ・・・+ n−に−1
) (226)と定義する。このシンドロームは誤り
に関するすべての情報(誤りの位置と大きさ)を含んで
いる。This is called a syndrome, and it is called S” (Son S+, ..., -1 for Sn-)
(225) s i R(a”s=E (a”
' ) (1=0 + 1 + ...+ -1 to n-
) (226). 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.
5=H−R” (R”:Rの転置行列) (2−
28)ステラ 2 テP l 工 量 −工のステ
ップ2では、ステップ1の計算結果のシンドロームを利
用して誤り位置多項式と誤り評価多項式の算出を行う。5=HR” (R”: transposed matrix of R) (2-
28) In Step 2 of Stella 2 TE P l Effort - Effort, the error locator polynomial and error evaluation polynomial are calculated using the syndrome of the calculation result of Step 1.
まず、ここでは誤りE=(eo、el・・enl )の
非零の元の数、すなわち誤りの個数をf(i!≦t)と
おく。また、誤りの生じている位置をju (u=1゜
2・−1)(ju=o、l・−n−1)とし、位置ju
における誤りをeluとする。更に(2−2)、 (
2−3)式をn−に=dmin−1=2t
(2−30)とおく。すると、(2−26)式のシン
ドローム及びシンドローム多項式は、次のように表わさ
れる。First, let f(i!≦t) be the number of nonzero elements of error E=(eo, el...enl), that is, the number of errors. Also, let the position where the error occurs be ju (u=1゜2・-1) (ju=o, l・−n−1), and the position ju
Let the error in be elu. Furthermore, (2-2), (
2-3) Expression to n-=dmin-1=2t
(2-30). Then, the syndrome and syndrome polynomial of equation (2-26) are expressed as follows.
とお(と、次式が得られる。(and the following equation is obtained.
S (x) = [S −(x)] mod
x” (2−35)さて、ここで誤り位置多
項式σ(X)を次のように定義する。この多項式は、受
信語中の誤り位置ju Cu=1.2.−・−・−・、
I! ) Cju=0,1.・・−・・n−1)に対応
するGF(2”)の元α−1″を根とする多項式である
。S (x) = [S - (x)] mod
x” (2-35)Now, we define the error location polynomial σ(X) as follows.This polynomial is defined as the error location in the received word, ju Cu=1.2.−・−・−・,
I! ) Cju=0,1. It is a polynomial whose root is element α-1'' of GF(2'') corresponding to . . . n-1).
a (x)=(1−a”x) (1−a”x) −”
(1−a’″x) = n (1−a”x)m1
次に、以上述べたσ(x)、S、、 (x)に対し誤り
評価多項式ω(X)を次のように定義する。a (x)=(1-a”x) (1-a”x) −”
(1-a'"x) = n (1-a"x)m1 Next, define the error evaluation polynomial ω(X) for σ(x), S, , (x) described above as follows. do.
すると、(2−34)、(2−35)、(2−37)式
より、次式が成立する。Then, from equations (2-34), (2-35), and (2-37), the following equation holds true.
σ(x)+13 (x) = [ω(x)] modx
” (2−38)従って適当な多項式A (
x)を用いてσ(X)、 S (X)。σ(x)+13 (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 (IIJ (x) < deg cy (x)
≦t(2−40)を満たす。さらにω(X)とσ(X)
は互いに素(最大公約(GCD)多項式が定数)である
から(2−39)、 (2−40)式を満たすω(X
)とσ(X)は定係数の違いを除いて一意的に定まる。A (x)-x"+a (x)・S (x) = ω(x
) (2-39) By the way, since the number of errors l is (1≦t), ω(x) and σ(X) are deg (IIJ (x) < deg cy (x)
≦t(2-40) is satisfied. Furthermore, ω(X) and σ(X)
are relatively prime (the greatest common difference (GCD) polynomial is a constant), (2-39), so ω(X
) and σ(X) are uniquely determined except for the difference in constant coefficients.
以上よりω(x)とa (x)はX21とS (x)の
最大公約(GCD)多項式を求めるユークリッドの互除
法の過程で求め得る。ここで、ユークリッドの互除法を
利用した最大公約(GCD)多項式の算出方法に。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 X21 and S (x). Here, we will discuss how to calculate the greatest common denominator (GCD) polynomial using Euclid's algorithm.
ついて簡単に述べる。まず、2つの多項式A、!:Bの
最大公約多項式をGCD [A、B]と表わすことにす
る。又、このAとBに対し次のような多項式λとn
a degA≧degBの場合λ=A−[A−B’]−
B (2−41)B=B (2−4
2)
−degA≧degBの場合λ= A
(2−43)if = B−[B −A−’] −A
(2−44)([X−Y−’]:多項式Xを多項式
Yで割った商)ヲ定義スルト、GCD [A、B] (
!:GCD Eλ、B]ハ、次式を満たす。I will briefly discuss this. First, two polynomials A, ! : The greatest common denominator polynomial of B will be expressed as GCD [A, B]. Also, for A and B, if the following polynomial λ and n a degA≧degB, λ=A-[A-B']-
B (2-41)B=B (2-4
2) If −degA≧degB, λ=A
(2-43) if = B-[B-A-']-A
(2-44) ([X-Y-']: quotient of polynomial X divided by polynomial Y) Definition Surto, GCD [A, B] (
! :GCD Eλ, B] C, the following formula is satisfied.
GCD [A、B] =GCD [λ、B]
(2−45)従って、上述のXと百とを改め
てA、 Bとおき、各々の次数degA、 degBの
大小関係に応じて(2−41)。GCD [A, B] = GCD [λ, B]
(2-45) Therefore, the above-mentioned X and 100 are rewritten as A and B, and according to the magnitude relationship of the respective degrees 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, in the process of executing the above repeating steps and finding the greatest common polynomial of polynomials A and B whose degree is expressed as i=degA≧degB, polynomials 〇, D, and W that satisfy the following equations are obtained. You can ask for it.
この様な多項式を求める問題を拡張GCD問題と呼ぶ。The problem of finding such a polynomial is called an extended GCD problem.
従って、誤り位置多項式σ(X)と誤り評価多項式ω(
x)は、(2−47)式において、多項式AをX211
多項弐BをS (x)とおいた場合の拡張GCD問題を
解く事により求まる。Therefore, the error locator polynomial σ(X) and the error evaluation polynomial ω(
x) in equation (2-47), polynomial A is
It can be found by solving the extended GCD problem when polynomial 2B is set as S (x).
ルゴ1 ム
まず前述したように、σ(x)とω(x)の導出アルゴ
リズムは拡張GCD問題に帰着できる。すなわち、x
21を多項式AO、シンドローム多項式S (x)((
2−32)式)を多項式Boとおいた時(degAo=
2t。First, as mentioned above, the algorithm for deriving σ(x) and ω(x) can be reduced to an extended GCD problem. That is, x
21 as polynomial AO, syndrome polynomial S (x) ((
When we set Equation 2-32) as the polynomial Bo, (degAo=
2t.
degI3o=2t−1)、GCD [Ao、Bo]を
求める途中で
を満たす多項式り、 Wが求まれば、Dが誤り位置多
項式σ(x)、Wが誤り評価多項式ω(X)を各々表わ
している。このようなσ(x)とω(X)は、定係数の
違いを除いて一意的に定まることがわかっている。従っ
て、AnとBoに対して次のような 多項式A、 B、
U、 V、 L、 Mを定義し
その初期値を
U =M=1 ; L =V=0 ; (A =A
o、 B =Bo)とおいて第40図の繰返しステップ
を実行していき、degA (degB)<tとなった
時にA (B)がω(x)、L (M)がσ(X)とし
て各々求まる。degI3o=2t-1), the polynomial that satisfies the process of finding GCD [Ao, Bo] is: Once W is found, D represents the error locator polynomial σ(x) and W represents the error evaluation polynomial ω(X), respectively. ing. It is known that such σ(x) and ω(X) are uniquely determined except for the difference in constant coefficients. Therefore, for An and Bo, the following polynomials A, B,
Define U, V, L, and M and set their initial values as U = M = 1; L = V = 0; (A = A
o, B = Bo), repeat the steps in Figure 40, and when degA (degB) < t, A (B) becomes ω(x) and L (M) becomes σ(X). Find each.
なお、第40図の方法では、多項式Bの最高次係数αと
多項式Aの最高次係数βを各々A、 Bにたがいちがい
に乗する事により、繰返しステップおけるGF上の除算
を省略している。((2−41)。In addition, in the method shown in Figure 40, the division on GF in the iterative step is omitted by multiplying A and B by the highest degree coefficient α of polynomial B and the highest degree coefficient β of polynomial A, respectively. . ((2-41).
(2−43)式参照)このようにしても、σ(x)とω
(x)の値に本質的な問題は生じない。(See equation (2-43)) Even if we do this, σ(x) and ω
There is no essential problem with the value of (x).
第40図について説明する。まず、ステップlにおいて
U=M =1. L=V=O,A=Ao、 B=B。FIG. 40 will be explained. First, in step l, U=M=1. L=V=O, A=Ao, B=B.
とおいて、初期値を設定する。ステップ2においてde
gA≧degDの判定を行い、ステップ3において多項
式A、Hの最高次係数β、αを各々A、Bにたがいちが
いに乗じ、式(2−41)、 (2−43)の繰返し
ステップにおけるGF上の除算を省略している。and set the initial value. In step 2, de
Determine whether gA≧degD, and in step 3, multiply A and B by the highest order coefficients β and α of polynomials A and H, respectively, and calculate GF in the repeating steps of equations (2-41) and (2-43). The above division is omitted.
ステップ4においてdegA、degBが所定の次数よ
り小さくなった場合、ステップ5.6に進み、ω(x)
=A、 a (x) =L、 ω(x) =B、 a
(x) =Mを算出する。If degA and degB become smaller than the predetermined order in step 4, proceed to step 5.6, and ω(x)
=A, a (x) =L, ω(x) =B, a
Calculate (x)=M.
なお、第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≧de
gB・・・’reduceA’if)degA、deg
B≧tかつdegA≧degB・”“reduceB”
1ii) degA<t もしくは degB<t
・・−’nop”ステップ3 = ; の
のステップ3では、ステップ2で得られた誤り位置多
項式σ(X)と誤り評価多項式ω(X)から、誤り位置
と誤りの値の推定を行う。まず、受信語R= (ro、
r+、・−・、rn−+)中のシンボルの位置i二〇
。i) degA, degB≧t and degA≧de
gB...'reduceA'if) degA, deg
B≧t and degA≧degB・”“reduceB”
1ii) degA<t or degB<t
...-'nop'' Step 3 =; In Step 3, the error position and error value are estimated from the error locator polynomial σ(X) and the error evaluation polynomial ω(X) obtained in Step 2. First, the received word R= (ro,
symbol position i20 in r+, .-., rn-+).
■・・・n−1に応じたGF(2”)の元α−1を誤り
位置多項式σ(X)に逐次代入する。この時、(2−3
6)式よりσ(a−’) =0が成立するならば、iが
誤り位置juに対し、α−1=α−j′が成立している
事がわがる。(j u = 0 、1 =−n −1、
u = 1 、2 ・・1 、 1≦t)また、そのよ
うなα−1=α−I′に対する誤り評価多項式ω(X)
の値は次のようになる。■...The element α-1 of GF(2") corresponding to n-1 is successively substituted into the error locator polynomial σ(X). At this time, (2-3
From equation 6), if σ(a-')=0 holds true, it can be seen that α-1=α-j' holds true for i at the error position ju. (j u = 0, 1 = -n -1,
u = 1, 2...1, 1≦t) Also, the error evaluation polynomial ω(X) for such α−1=α−I′
The value of is as follows.
(k虐1.に≠U)
更に、σ′(X)をσ(x)の微分とすると、が成立す
る。従って(2−48)式と(2−49)式より誤り位
置juにおける誤りの値ejuは次式より求められる。(For k-1.≠U) Furthermore, if σ'(X) is the differential of σ(x), then the following holds true. Therefore, from equations (2-48) and (2-49), the error value eju at the error position ju can be obtained from the following equation.
前述したように、復号のステップ3)では、ステップ2
)で得られた誤り位置多項式σ(X)、誤り評価多項式
ω(X)ならびにσ(X)の微分σ′(X)という3つ
の多項式に、そのR8符号が定義される 。As mentioned above, in step 3) of decoding, step 2
), the R8 code is defined in three polynomials: the error locator polynomial σ(X), the error evaluation polynomial ω(X), and the differential σ'(X) of σ(X).
GF(2”)の元a−’ (j=n−1,−2,1,0
)を逐次代入してその値を求める計算が必要となる。(
ここでは受信シンボルが受信語多項式の高次の項から入
力される。すなわちrjがj=n−1,・・・、2,1
.0の順で入力されるとする。従って、ステップ3)に
ついての説明では、α−’ (j=n 1 、 ・・
・、 2 、 l * O)の代入の順が逆となる事に
注意しなければならない。)末と同様のアルゴリズムを
利用できる。例えば、を次多項式「(X)の計算は次の
ように展開される。Element a-' (j=n-1,-2,1,0
) is required to calculate the value by sequentially substituting (
Here, the received symbols are input from higher-order terms of the received word polynomial. That is, rj is j=n-1,...,2,1
.. It is assumed that the numbers are input in the order of 0. Therefore, in the explanation of step 3), α−' (j=n 1 , . . .
・, 2, l * O) must be noted that the order of assignment is reversed. ) You can use the same algorithm as at the end. For example, the calculation of the degree polynomial "(X)" is expanded as follows.
f (x) = ftx’十ft−1x’ −’+−+
f 1x+fo 矢;=胃主= h
((ftx十ft−1) x+ft −2) x+−
=+f+l x+fo 咲テ;R子但し、シンドローム
計算では各セルが代入すべきXをあらかじめ持っており
、各セルに係数を与えてステップ4 ・ の I
−
(2−9)式より、誤りの生じている位置juにおける
受信シンボルr、は、本来の符号語のシンボルfヶと誤
りの大きさel、、から次のように表わされる。f (x) = ftx'10ft-1x'-'+-+
f 1x+fo arrow;=stomach main=h
((ftx 10ft-1) x+ft-2) x+-
=+f+l
- From equation (2-9), the received symbol r at the position ju where the error occurs can be expressed from the original code word symbols f and the error size el, as follows.
flu= r、u−e)、、
(2−51)従ってステップ4では、ステップ3の実行
結果cy (α−’) =0が成立した位置i (i
= 0 、1 、 ・・−n −1)において、受信シ
ンボルr1から
を引< (GF(2”)上) f、 = rl −e
、 (2−53)事により、位置iにおける誤り
訂正を実行する。flu = r, ue),,
(2-51) Therefore, in step 4, the position i (i
= 0, 1, ... -n -1), subtract from received symbol r1 < (on GF(2")) f, = rl -e
, (2-53) perform 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−+、 rn−2+++、l、 ro)からス
テップ2で必要なシンドローム多項式の係数(S 21
−1 、 S 21−2・・・。In step l, the received sequence R=
From (rn-+, rn-2+++, l, ro), the coefficients of the syndrome polynomial required in step 2 (S21
-1, S21-2...
S+、 So)をシリアルに出力させる必要がある。It is necessary to output S+, So) serially.
具体的なシンドローム多項式の係数の計算は、次の繰り
返しアルゴリズムを用いる。The following iterative algorithm is used to specifically calculate the coefficients of the syndrome polynomial.
S+−+ =(”’((rn−1木α’+r、−z)*
α’+rn−n)’ a’+・+r+)木α’ + r
e
また、上式を次のように分解する。S+-+ =(”'((rn-1 tree α'+r, -z)*
α'+rn-n)'a'+・+r+) tree α' + r
e Also, decompose the above equation as follows.
Za”O
Zl ”Zl−1*α’ + rn−+
(t =1 + ・・・+ n )S、−、=
Z。Za"O Zl "Zl-1*α' + rn-+
(t = 1 + ... + n) S, -, =
Z.
回路を小型化するために、第41図のPHにおいて意味
のない3の乗算器と5のレジスタを削る。これによって
、PEの演算部は400ゲートとなる。ここで、第42
図の受信シンボルの動きに注目すると、1つの受信シン
ボルr n−1は値を変えることな(#1のPEから#
2tのPEまで送られ、加算されるZI−+*αjの項
が変化するだけである。そこで前章ではシンドローム生
成部のPEをαI(j=1.・・・、2t)毎に割り付
けたが、ここではαj大入力らα’(j=1゜・・・、
2t)の値が順次入力され、j=1からm迄を1周期と
して周期的にα’(j=:1.・・・r m )の入力
が繰り返されるようにする。そして受信系列の入力であ
るr+は1つの受信シンボルの値カ月周期の間保持され
ながら受信シンボルrn−+(i=1.・・・rn)が
入力されるようにする。これによって、レジスタ7も削
ることが出来、rI大入力直接加算器に入力する。但し
、レジスタ6はZIの演算結果を#1のPEから#mの
PEの分まで1周期分保存させる必要があるので、m段
必要である。m = 2 tの場合の信号の流れを第3
図に示す。In order to miniaturize the circuit, 3 multipliers and 5 registers which are meaningless in the PH 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 r n-1 does not change value (from PE #1 to #
Only the term ZI-+*αj that is sent and added to the 2t PE changes. Therefore, in the previous chapter, the PE of the syndrome generation unit was assigned to each αI (j=1.., 2t), but here, from αj large input to α' (j=1゜...,
2t) are input sequentially, and the input of α' (j=:1...rm) is repeated periodically, with one cycle being from j=1 to m. Then, r+, which is the input of the received sequence, is held for a period of one month corresponding to the value of one received symbol, while receiving symbols rn-+ (i=1...rn) are input. As a result, the register 7 can also be omitted, and the rI large input is directly input to the adder. However, since the register 6 needs to store the ZI operation result for one cycle from PE #1 to PE #m, m stages are required. The signal flow when m = 2 t is expressed as the third
As shown in the figure.
最初(i=1)、セレクタの選択信号St、 2はr
n−1が入力されているときのみSl、2=IOとなり
、X出力からはC入力であるOが出力されi=1のとき
の演算結果であるZI=rn−tが2を段のレジスタに
順次入力される。それ以後(i = 2 、・・・+
n )、Sl。Initially (i=1), selector selection signal St, 2 is r
Only when n-1 is input, Sl, 2 = IO, and O, which is the C input, is output from the are input sequentially. After that (i = 2,...+
n), Sl.
2=00とすることによってセレクタのX出力は八人力
を選択し、前演算の結果であるZt−1が順次X出力か
ら出力され基本クロックCK毎にαj(j=1゜・・・
、2t)と乗算され、rn−1と加算されることによっ
てZ+=Z+−1*α’+rn−+ (J= L””+
2t)が演算され、順次レジスタに入力される。従って
、2を段のレジスタは5t−I(J=1+・・・、2t
)の演算の途中結果を一時保存して再びフィードバック
させるためのメモリ部となっている。これによって、2
を個のPEの処理を1つのPEで実現できるが、レジス
タ段数分だけ入力r。−1を保持する必要があるので、
処理速度は(16/ 2 t ) M w p sとな
る。By setting 2=00, the X output of the selector selects eight power, and Zt-1, which is the result of the previous calculation, is sequentially output from the X output, and αj (j=1°...
, 2t) and added to rn-1, resulting in Z+=Z+-1*α'+rn-+ (J= L""+
2t) is calculated and sequentially input to the register. Therefore, the register for stage 2 is 5t-I (J=1+..., 2t
) is a memory section that temporarily stores the intermediate results of calculations and feeds them back again. With this, 2
The processing of PEs can be realized with one PE, but the input r is the same as the number of register stages. Since it is necessary to hold -1,
The processing speed is (16/2t) Mwps.
ここでは、回路の小型化のために乗算器3は削り、5と
7のレジスタ列も省いている。従って、第2図のPEの
回路規模は(400+m*50)ゲートとなり、処理速
度は(16/m)Mwpsとなる。mはレジスタの段数
であるが、全処理をIPEで行わせる場合m=2tとな
る。1例として、訂正能力t=8とした場合IPHの回
路規模は120ゲートとなり、処理速度はI 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 I M h
z = 8 Mbps.
また、全処理をIPEで構成せず、複数のPEに分けて
構成する場合、第2図のPEを第4図のように接続する
。このとき、受信シンボルをIPE毎に1周期単位で遅
らせるためにCR2(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 PEs, the PEs shown in FIG. 2 are connected as shown in FIG. 4. At this time, a register controlled by CR2 (clock for each cycle) is required to delay the received symbol by 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) gate. FIG. 5 shows the signal flow when configured with two PEs.
こめ場合αJの割付は、#lのPEがα’(j=L・・
・。In this case, the assignment of αJ is as follows: PE of #l is α'(j=L...
・.
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, and the circuit scale is 800*2=1600 gates.
m = 1としたとき必要なPHの数はに=2tととな
り、CK2=CKとなるのでCR2で制御されるレジス
タはレジスタ7と等価になり、処理速度も16Mwps
となる。従って、これは第42図の無駄な回路を省いた
構成になっている。また、セレクタのB入力が空いてい
ることを利用して、前PEのS (x)出力を入力する
ことによって最後のPEからシンドローム多項式の係数
(S 21−11321−2 、− 、 S + +
S o )をS’(x)としてシリアルに出力すること
ができる。When m = 1, the number of required PHs is 2t, and CK2 = CK, so the register controlled by CR2 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 vacant, by inputting the S (x) output of the previous PE, the coefficients of the syndrome polynomial (S 21-11321-2 , - , S + +
S o ) can be serially output as S'(x).
GCD/、 、 i 、 エ W
エ 。GCD/, , i, eW
workman .
ステップ2の誤り位置多項式σ(X)と誤り数値多項式
ω(X)の導出アルゴリズムは、拡張GCD問題に帰着
できる。第43図の回路に於いて、各々のPEは1度の
Process処理が終るとその出力を次のPRに渡し
、自らは次の入力を受は取り2を回のProcess処
理を行った。その2を回のProcess処理結果を次
のPHに出力せず、自らのレジスタに蓄えシンドローム
多項式S (x)とxlの1連の入力が終った後、レジ
スタに蓄えた結果をフィードバックして、1つのPEで
全処理を行うことを考える。The algorithm for deriving the error locator polynomial σ(X) and the error numeric polynomial ω(X) in step 2 can be reduced to an extended GCD problem. In the circuit shown in FIG. 43, each PE passes the output to the next PR after completing one Process process, and receives and receives the next input and performs two Process processes. Part 2: Do not output the Process processing result to the next PH, but store it in its own register, and after completing one series of inputs of the syndrome polynomials S (x) and xl, feed back the result stored in the register, Consider performing all processing with one PE.
そのと゛きのPHの構成を第6図に示す。第43図と同
様に5tateを設定する回路とα、βを保持するため
のCR2とCLで制御されるレジスタと、at−1゜b
+−+を実現するトめにレジスタ列5.7の後にもう
1段レジスタを挿入する必要がある。従って、PE内の
レジスタ段数をmとしたとき、IPEにおいて必要な回
路規模(State設定の回路はコントロール部である
ので除()は、(700+ (3m+4) $50)ゲ
ートとなる。(700は演算部の回路規模であり、(3
m+4)はレジスタの総数である)1つのPEで全処理
を行う場合には、m=2t(処理結果の多項式の次数は
2を以上にならないため)となり、第40図に示す例に
ついてA (B)を求める場合の信号の流れの初めの部
分を第7図に示し、L (M)を求める場合の信号の流
れの初めの部分を第8図に示す。セレクタ選択信号の切
り替え、及びCR2の制御は挿入したレジスタも考慮に
いれて、基本クロックCKが(m + 1 )毎に行う
ことによって第44図、第45図の動作が逐次的に1つ
のPEで行われることが分かる。The configuration of the PH at that time is shown in FIG. Similarly to FIG. 43, a circuit for setting 5tate, a register controlled by CR2 and CL for holding α and β, and at-1°b
To realize +-+, it is necessary to insert one more stage of registers after register row 5.7. Therefore, when the number of register stages in the PE is m, the circuit scale required in the IPE (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 (3
(m+4) is the total number of registers) When performing all processing with one PE, m = 2t (because the degree of the polynomial of the processing result cannot exceed 2), and for the example shown in Fig. 40, A ( FIG. 7 shows the beginning of the signal flow when determining B), and FIG. 8 shows the beginning of the signal flow when determining L (M). The switching of the selector selection signal and the control of CR2 are performed every (m + 1) basic clock CK, taking into consideration the inserted register, so that the operations shown in FIGS. 44 and 45 can be performed sequentially on one PE. You can see that it is done in
なお、A (B)を求めるときとL (M)を求めると
きでProcess部を独立に2つ持つか、1つを2回
用いなければならない。以下、1つのProcess処
理について評価を行うが、1つのProcess部を2
回用いる場合は処理速度を半分にし、2つのProce
ss部を独立に持つ場合には必要なPEの数を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 PEs may be doubled.
ここでは、シンドローム多項式S (x) (またはM
=1)、及びxh (またはL−〇)入力時のみセレク
タ選択信号Sl、2=11としてx、 y出力にり。Here, the syndrome polynomial S (x) (or M
= 1) and xh (or L-〇) input selector selection signal Sl, 2 = 11 for x, y output.
E入力が出力さ・れるセレクタを用いる。(表にセレク
タ出力の組合せを示す)また、A (B)とL (M)
を1つのProcess部で処理する場合、第9図に示
すPEを用いて、第10図のように31..4を制御す
ることによりA=x″、B=S (x)、L=0.M=
1の入力を行うことも出来る。(セレクタ選択信号の組
合せを表に示す)但し、第43図のlt+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 table shows the combinations of selector outputs) Also, A (B) and L (M)
When processing 31. as shown in FIG. 10 using the PE shown in FIG. .. By controlling 4, A=x″, B=S (x), L=0.M=
You can also input 1. (The combinations of selector selection signals are shown in the table.) However, since the PE of lt+2 in Fig. 43 has meaning only for signal selection by the selector, the PE of Fig. 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の出力を最初のPHにフィー
ドバックさせる必要がある。PHの数をkとすると全体
の処理は(2t/k)に分散されるので、IPHに必要
なレジスタの段数は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 PH. If the number of PHs is k, the entire processing is distributed over (2t/k), so the number of register stages required for IPH is m=(2t/k). Therefore,
The circuit scale in Figure 11 is (2t/m) * (700+
(3m+4) *50) It becomes a gate.
第12図に2つのPEで構成した場合の信号の流れを示
す。この場合、レジスタの段数m = tであるので処
理速度は2/16M1psとなり、回路規模は1950
*2=3900ゲートとなる。FIG. 12 shows the signal flow when configured with two PEs. In this case, the number of register stages m = t, so the processing speed is 2/16M1ps, and the circuit scale is 1950
*2=3900 gates.
m = 1としたとき必要なPEの数はに=2tとなり
、処理速度は16 M l p sとなる。この構成で
は最後の1)Eから最初のPEへフィードバックを行う
ので、2t+1回の処理回数に対してPEの数は2tで
済む。When m = 1, the required number of PEs is 2t, and the processing speed is 16 M l ps. In this configuration, feedback is provided from the last 1)E to the first PE, so the number of PEs is only 2t for 2t+1 processing times.
シストリックな接続にするためにPHの数を処理回数に
対応させて2t+1とすると、信号をフィードバックす
る必要がなくなるので第43図と同じ構成になる。(こ
の場合#2t+2のPEはセレクタとなる)
: 早 び: ロ
ステップ3もステップ1と同様に次の繰り返しアルゴリ
ズム、及び分解式を用いることが出来る。In order to establish a systolic connection, if the number of PHs is set to 2t+1 in correspondence with the number of processing times, there is no need to feed back the signal, resulting in the same configuration as in FIG. 43. (In this case, the PE of #2t+2 becomes a selector.) : As in step 3, the following iterative algorithm and decomposition formula can be used as in step 1.
f = (x ) = f +−+ * x’−’
+ f L−2* x’−’ −+ f + * x
+ f 。f = (x) = f +-+ * x'-'
+ f L-2* x'-' -+ f + * x
+f.
= i・((ft−+*x十ft−z) *x+ft−
3) *x+−+f+) *x+fo)
Zo=O
Z1=Z+−+*x+ft−+ (j=t+・・・
+t)f(x)=Zt
また、回路を小型化するためにステップlと同様に乗算
器3とレジスタ5を削る。また第46図の回路において
α−’(i=n−1,・・・、0)の入力はステップl
と同様に#1のPEから#tのPEまで値を変えること
無く送られるだけである。そこでj=1からmまでを1
周期としてα−1の1つの値が保持されるようにα−’
(i=n−1,・・・、0)を入力する。= i・((ft-+*x ft-z) *x+ft-
3) *x+-+f+) *x+fo) Zo=O Z1=Z+-+*x+ft-+ (j=t+...
+t)f(x)=Zt Also, in order to miniaturize the circuit, the multiplier 3 and the register 5 are removed as in step 1. In addition, in the circuit shown in Fig. 46, the input of α-' (i=n-1,..., 0)
Similarly, the value is simply sent from PE #1 to PE #t without changing the value. Therefore, from j=1 to m is 1
α−' so that one value of α−1 is held as the period
Input (i=n-1,...,0).
またft−1の係数はステップlと同様に1周期毎にf
r−+(j=1.・・・、m)の入力が繰り返されなけ
ればならない。ステップ2のGCD生成部からの出力を
考えた場合、係数f+−+(j=1.・・・、1)は1
度出力されるが、周期的に繰り返し出力されない。そこ
で、選択信号Sl、2によって表のような組合せで出力
°されるセレクタとm段のレジスタ列7を用いて、第1
3図のようにPEを構成し、第14図のように信号を送
る。GCD生成部から係数ft−+(j=L・・・。Also, the coefficient of ft-1 is f
The input of r−+(j=1..,m) must be repeated. Considering the output from the GCD generator in step 2, the coefficient f + - + (j = 1..., 1) is 1
It is output once, but it is not repeatedly output periodically. Therefore, the first
The PE is configured as shown in Figure 3, and signals are sent as shown in Figure 14. From the GCD generation unit, the coefficient ft-+(j=L...
t)が出力されているときはセレクタ選択信号をSl。t) is output, the selector selection signal is set to Sl.
2=11(ft−+が入力されているときのみ)からS
l。2=11 (only when ft-+ is input) to S
l.
2=O1とすることによって、Y出力から係数f I−
+(j=1.・・・、1)が順次出力され、レジスタ列
7に入力される。By setting 2=O1, the coefficient f I-
+(j=1. . . , 1) are sequentially output and input to the register column 7.
その出力をB入力にフィードバックしてセレクタ選択信
号をSl、 2=10 (ft−+が入力されていると
きのみ)からSl、 2=OOとすることによって、再
びY出力から係数f+−+(j=L・・・、1)が出力
され、レジスタ列7に入力される。以後その動作を繰り
返すことによって係数ft−4(j=1.・・・、1)
の周期的な入力が実現される。これによってステップl
と同様にm個のPEの処理を1つのPEで実現できるが
、レジスタ段数分だけ入力α−1を保持する必要がある
ので、処理速度は(16/m)Mwpsとなる。(mは
レジスタ段数)
またIPHに必要な回路規模は(400+ (m+1)
*50)ゲートとなる。By feeding back the output to the B input and changing the selector selection signal from Sl, 2 = 10 (only when ft-+ is input) to Sl, 2 = OO, the coefficient f + - + ( j=L..., 1) is output and input to the register column 7. Thereafter, by repeating this operation, the coefficient ft-4 (j = 1..., 1)
periodic input is realized. This allows step l
Similarly, the processing of m PEs 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) Mwps. (m is the number of register stages) Also, the circuit scale required for IPH 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で構成せず、複数のPHに分けて構
成する場合、第13図のPEを第15図のように接続す
る。このとき、α1をIPE毎に1周期単位で遅らせる
ためにCK2 (1周期毎のクロック)で制御されるレ
ジスタが必要である。Furthermore, when all processing is not configured by IPE but divided into a plurality of PHs, 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)に分散さ
れるので、IPHに必要なレジスタ段数はm=(t/k
)となる。従って、第15図の回路規模は(i/m)*
(400+(m+1)+50)ゲートとなる。第16
図に2つのPEで構成した場合の信号の流れを示す。こ
の場合、t=8であるのでmミ(t/2) =4として
回路規模は3*2*650=3900ゲートとなり、処
理速度は4 M w p sとなる。If the number of PEs is k, the entire processing is distributed over (t/k), so the number of register stages required for IPH is m = (t/k).
). Therefore, the circuit scale in Fig. 15 is (i/m)*
(400+(m+1)+50) gates. 16th
The figure shows the signal flow when configured with two PEs. In this case, since t=8, mmi(t/2)=4, the circuit scale is 3*2*650=3900 gates, and the processing speed is 4 Mw ps.
m=1としたとき必要なPRの数はに=tとなり、CK
2=CKとなるのでCK2で制御されるレジスタはレジ
スタ5と等価になり、f +−+の割り付は部をのぞい
て第46図と同じ構成になり、処理速度も] 6 M
w p sとなる。When m = 1, the number of PRs required is = t, and CK
Since 2=CK, the register controlled by CK2 is equivalent to register 5, and the allocation of f+-+ has the same configuration as in Figure 46 except for the part, and the processing speed is also 6 M
It becomes w p s.
また、第17図にa (x)、とσ’(x)を1つのP
Eで処理する場合PEを示し、第18図に信号の流れを
示す。ステップ3は1周期がtであるのでIPEを2度
用いることが出来、またσ′(X)の係数がσ(X)の
係数を用いることを利用する。これによって、ステップ
3が2セツトのPEで実現でき、第18図に示すように
σ(X)、σ′(X)の動作は2を毎となり、ω(x)
の出方も第19図のようにすることによって2を毎に動
作させることが出来る。Also, in Fig. 17, a (x) and σ'(x) are expressed as one P
When processing with E, PE is shown, and FIG. 18 shows the signal flow. In step 3, since one period is t, IPE can be used twice, and the coefficient of σ'(X) uses 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)
2 can be operated every time by making the appearance as shown in FIG. 19.
ここでは出力の組合せが表のようになるセレクタを用い
てY出力が0となるときだけセレクタ選択信号を81゜
、3=001とすればよい。この場合、処理速度は2
M w p s / 2 = I M w p sとな
り、必要なPEのセットも2セ゛ントとなるので回路規
模は2 * 850=1700ゲートとなる。Here, it is sufficient to use a selector whose output combinations are as shown in the table, and to set the selector selection signal to 81°, 3=001 only when the Y output is 0. In this case, the processing speed is 2
M w p s / 2 = I M w p s, and the required set of PEs is also 2 cents, so the circuit scale is 2*850=1700 gates.
ここでは、ステップlからのシンドローム多項式の係数
出力S (x)を受けて消失訂正を行うために必要なS
(x) *λ(X)を生成する。Here, 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)を生成することを考える
二
λ(x) = (1−Y+*x)*(1−Yz*x)−
”(1−Ya*x)であり、前章と同様にλ(X)を次
のように分解する。First, consider generating the vanishing position polynomial λ(x). Two λ(x) = (1-Y+*x)*(1-Yz*x)-
”(1-Ya*x), and similarly to the previous chapter, λ(X) is decomposed as follows.
Zo=1
Z+= (1−’/+ * x ) * Z+−+
=Y+*Z+−1*x +Z;−+ (+=1.・・
・、s)λ (x)=Zs
まず、回路を小型化するために乗算器3及びレジスタ6
を削る。ここでは処理クロック数またはレジスタ段数に
対応させる。またZ +−+入力をlクロック遅らせる
ためのレジスタを1つ用意する。従って、PHの構成は
第22図のようになり、IPHに必要な回路規模は(4
00+ (m+1)$50)ゲートとなる。(mはレジ
スタ段数)第23図に信号の流れを示す。Zo=1 Z+= (1-'/+ * x ) * Z+-+
=Y+*Z+-1*x +Z;-+ (+=1...
, s)λ (x)=Zs First, in order to miniaturize the circuit, the multiplier 3 and the 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 Z +-+ input by l clock. Therefore, the configuration of PH is as shown in Figure 22, and the circuit scale required for IPH is (4
00+ (m+1)$50) gate. (m is the number of register stages) FIG. 23 shows the signal flow.
IPE内のレジスタ段数m(ここではm=2tとする)
を1周期としてYlの1つの値が保持されるようにYl
(i=1.・・・、s)を入力する。最初、(Y+入力
時)セレクタ選択信号をSl、 2=11としXにD入
力Za=1、YにC入力Oを入力し演算結果のYlを次
のクロックでレジスタ列6に入力する。以降、Sl、
2=10としてXl、:C入力0SYi、:Zoを1ク
ロック遅らせた八人力を出力し、演算結果Zo=1を次
のクロックでレジスタ列6に入力する。その次のクロッ
ク以降は演算結果が0であるので0がレジスタ列6に入
力される。1周期後、(Y2八人力)レジスタ列6から
前演算結果Z + = Y I* x + 1 (次数
Xは信号の順序を表す)が出力されるので、Sl。Number of register stages m in IPE (here m = 2t)
Yl is set so that one value of Yl is held as one period.
Input (i=1..,s). First, (at the time of Y+ input) the selector selection signal is S1, 2=11, the D input Za=1 is input to X, the C input O is input to Y, and the operation result Y1 is input to the register column 6 at the next clock. Hereafter, Sl,
Assuming that 2=10, outputs the eight power output by delaying Xl, :C input 0SYi, :Zo by one clock, and inputs the calculation result Zo=1 to the register column 6 at the next clock. From the next clock onwards, since the calculation result is 0, 0 is input to the register column 6. After one cycle, the pre-computation result Z + = Y I * x + 1 (order X represents the order of the signals) is output from the register array 6 (Y2 8-man power), so Sl.
2=01としXに前演算結果の最高次係数Ylを八人力
から、YにC入力の0を出力し演算結果のYI*Y2を
次のクロックでレジスタ列6に入力する。2=01, the highest order coefficient Yl of the previous calculation result is outputted to X, 0 of the C input is outputted to Y, and the calculation result YI*Y2 is inputted to the register column 6 at the next clock.
以降、81.2=OOとしてXにzIの次の係数lを八
人力から、Yに1クロック遅らせたzlの最高次係数Y
+をB入力から選択し、演算結果Yl十Y2を次のクロ
ックでレジスタ列6に入力する。このときXからはOS
Yからはzlの次の係数1が出力され、次のクロックで
演算結果lがレジスタ列6に入力され、以降演算結果が
0であるので0が入力される。Hereafter, as 81.2=OO, the next coefficient l of zI is set to X from the eight power, and Y is the highest coefficient Y of zl delayed by 1 clock.
+ is selected from the B input, and the operation result Y1+Y2 is input to the register column 6 at the next clock. At this time, from X
The coefficient 1 next to zl is output from Y, and the calculation result l is input to the register array 6 at the next clock. Since the calculation result is 0, 0 is input thereafter.
Y2八人力の動作をY3人力以降も繰り返すことによっ
てY6人力後にレジスタ列6からλ(x)が高次の係数
から出力される。By repeating the operation of the Y2 eight-manpower operation after the Y3-manpower operation, λ(x) is outputted from the register row 6 from the higher-order coefficient after the Y6 manpower.
S≦21であるので、Y+=O(i=s+1.−.2t
)を入力すればよい。Since S≦21, Y+=O(i=s+1.-.2t
).
従って、処理速度は(16/ 2 t / m ) M
l p sとなる。1例として、t=8として全処理
をIPEで行わせる場合、回路規模は1250ゲートと
なり、処理速度は1/16M1psとなる。Therefore, the processing speed is (16/2 t/m) M
l p s. 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/16M1ps.
また、全処理をIPEで構成せず、複数のPHに分けて
構成する場合、第22図のPEを第24図のように接続
する。このときYlの値を2tクロツクの間保持するた
めに各PE毎にYlを設定するレジスタが必要である。Furthermore, when all processing is not configured by IPE but divided into a plurality of PHs, the PEs shown in FIG. 22 are connected as shown in FIG. 24. At this time, in order to hold the value of Yl for 2t clocks, a register for setting Yl is required for each PE.
PEの数をkとすると全体の処理は(、2t / k
)に分散されるので、IPEに必要なレジスタ段数はm
=(2t/k)となる。従って、第24図の回路規模は
(2t/m) * (400+ (m+1)*50)ゲ
ートとなる。第25図に2つのPEで構成した場合の信
号の流れを示す。このときの回路規模は850*2=1
700ゲートとなり、処理速度は2/ 16 M l
p sとなる。If the number of PEs is k, the whole process is (,2t/k
), the number of register stages required for IPE is m
=(2t/k). Therefore, the circuit scale in FIG. 24 is (2t/m)*(400+(m+1)*50) gates. FIG. 25 shows the signal flow when configured with two PEs. The circuit scale at this time is 850*2=1
700 gates, processing speed 2/16 Ml
ps.
m = 1としたとき必要なPEの数はに=2tとなり
、処理速度も(16/ 2 t ) M l p sと
なり、第47図の構成と等価になる。When m = 1, the required number of PEs is 2t, and the processing speed is (16/2t) Mlps, 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 the 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−z*x’−”+
−+a+*x+a。A(x) = am-1*x""+am-z*x'-"+
-+a+*x+a.
としたとき
C(x) =am−+ * l3(x)*x″′−’
+am−2* B(x)* x’″−1,+、、・+a
+*B(x)*x+aoB(x)
となるので
Z o = O
Z+=Z+−+*x+B(x)*am−+ (j=1
1−1m)C(x) =Zm
従って、B (x)が入力されている間a□−1を保持
しZ+=Z+−+*x+B (X) *am−+を演算
した後レジスタ列6に挿入し、1周期後その演算結果を
21−1としてフィードバックすればよい。しかし、入
力S (x)及びλ(X)はステップlのシンドローム
生成部、及び前述の誤り位置多項式生成部から1度基本
クロックCKの転送レートで入力されるだけである。そ
こで、レジスタ列5,7を用いて繰り返し入力を実現し
、CK2で制御されるレジスタを用いて設定値を保持す
る。また、レジスタ列7からのB (x)出力はレジス
タ列6からの21−1出力より1クロック遅れてフィー
ドバックされる必要があるのでPEの構成は第26図の
ようになる。B (x) =S (’x)。Then C(x) = am-+ * l3(x) * x″'-'
+am-2* B(x)* x'''-1, +, ・+a
+*B(x)*x+aoB(x), so Z o = O Z+=Z+-+*x+B(x)*am-+ (j=1
1-1m) C(x) = Zm Therefore, while B (x) is input, a□-1 is held and after calculating Z+ = Z+-+*x+B (X) *am-+, register column 6 It is sufficient to insert the calculation result into 21-1 after one cycle and feed it back as 21-1. 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 21-1 output from register row 6, the configuration of PE is as shown in FIG. 26. B (x) = S ('x).
am−i”λ2l−1(i = O、−、2t )とし
た場合の信号の流れを第27図に示す。(IPE内のレ
ジスタ段数m−1=2t−1とする)
先ず、セレクタ選択信号St、2=01としてλ(X)
をF入力からW出力を通してレジスタ列5に入力する。Figure 27 shows the signal flow when am-i''λ2l-1 (i = O, -, 2t). (The number of register stages in the IPE is m-1 = 2t-1.) First, selector selection λ(X) as signal St, 2=01
is input to the register column 5 from the F input through the W output.
そのときλ(x)の最高次係数λ2tをCK2によって
制御されるレジスタに蓄え、乗算機3の入力に設定する
。またS (x)をλ(X)より1クロック遅らせてE
に入力し、Yに出力させレジスタ列7に入力する。その
間XはC入力Oを出力する。At that time, the highest order coefficient λ2t of λ(x) is stored in a register controlled by CK2 and set as an input to the multiplier 3. Also, if S (x) is delayed by one clock from λ(X), E
It is input to Y, outputted to Y, and inputted to register column 7. Meanwhile, X outputs C input O.
これによってλ2.*5(x)が演算され、レジスタ列
6に入力される。このときλ(x)*S (x)の最高
次係数λ2L*521−1は演算されているのでCKD
によってラッチされ出力される。1周期をm(ここでは
m = 2 t )として、1周期後セレクタ選択信号
Sl、2=00とする。Bからはm段のレジスタ列7に
よってフィードバックされたS (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, the highest order coefficient λ2L*521-1 of λ(x)*S (x) has been calculated, so CKD
is latched and output. Let one period be m (here, m = 2 t ), and after one period, the selector selection signal Sl, 2 = 00. S (x) fed back by the m-stage register array 7 is input from B, and is inputted again from Y to the register array 7. From D, λ(x) with the highest order coefficient shifted is fed back by the m-stage register array 5 and output to W.
従って、CK2ではλ(X)の次の係数λ2t−1が蓄
えられ乗算器3に設定される。Aからはm−1段のレジ
スタ列6によって全演算結果の最高次係数がずれたもの
がフィードバックされB (x) =S (x)に対し
1次係数がずれた形で入力される。これによって、Zl
=Z+−+ *x+B (x) *am−iが演算され
レジスタ列6に入力される。以降CK2にλ0が入力さ
れ演算が終了するまで同様に演算が行われる。但し、答
えとなる演算結果は入力にフィードバックするときずれ
てしまうので、演算される度にCKDによって出力され
る。またλ(X)の係数も入力にフィードバックすると
きずれてしまうので1次づつ係数が減ってしまう。ずら
された係数は必要ないのでフィードバックされるときセ
レクタ選択信号をSl、 2=10とすることによって
X、Wに0を出力する。Therefore, in CK2, the coefficient λ2t-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. This allows Zl
=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 coefficients are not needed, 0 is output to X and W by setting the selector selection signal to Sl,2=10 when fed back.
また演算終了後レジスタ列6には答えの演算結果が残っ
ているので同様の動作を繰り返すことによりレジスタ列
6の結果が1係数づつずらされてCKDから出力される
。Furthermore, since the answer operation result 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.
IPEに必要な回路規模はPE内のレジスタ段数をm−
1とした場合(400+3m*50)ゲート)となる。The circuit scale required for IPE 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で構成せず、複数のPHに分けて
構成する場合、第26図のPEを第28図のように接続
する。このときam−iの値を2tクロツクの間保持す
るために各PE毎にam−1を設定するレジスタが必要
である。PHの数をkとすると全体の処理は(2t/k
)に分散されるので、IPHに必要なレジスタ段数はm
=(2t/k)となる。従うて、第28図の回路規模は
(2t/m) * (400+3m*50)ゲートとな
る。第29図に2つのPEで構成した場合の信号の流れ
を示す。このときの回路規模1600*2=3200ゲ
ートとなり、処理速度は(1/+6)M l p sと
なる。Further, when all processing is not configured by IPE but divided into a plurality of PHs, the PEs shown in FIG. 26 are connected as shown in FIG. 28. At this time, in order to hold the value of am-i for 2t clocks, a register for setting am-1 is required for each PE. If the number of PHs is k, the whole process 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 signal flow when configured with two PEs. At this time, the circuit scale is 1600*2=3200 gates, and the processing speed is (1/+6) M l ps.
m=1としたとき必要なPEの数はに=2tとなり、処
理速度も(1/2)Mlpsとなる。When m=1, the number of PEs required is 2t, and the processing speed is also (1/2) Mlps.
符号化は情報1 (x) = (Ik−+、Ik−2.
・=、Io)からパリティP (x) = (P2t、
P2t−1,・・・、Pl)を生成する。符号化とは生
成多項式を
g (X) =gm*x”+gm−+ *x’″−’
十g IT+−2* x”−2・・・十g1*x+g。The encoding is information 1 (x) = (Ik-+, Ik-2.
・=, Io) to parity P (x) = (P2t,
P2t-1,..., Pl) are generated. Encoding means generating polynomial g (X) = gm * x" + gm-+ *x'"-'
10g IT+-2*x”-2...10g1*x+g.
とすると
P (x) =I (x) *x” mod g
(x)を求めることであり、
g’ (x) =gm−+*x′″−’+gm−2*x
′″−”−十g+*x+g。Then, P (x) = I (x) *x” mod g
(x), g' (x) = gm-+*x'''-'+gm-2*x
′″-”-10g+*x+g.
とすると この式は次のように分解される。Then This formula can be decomposed as follows.
Zo=I(x)
Z+=gm*Z’ +−++Zm*g’ (x)
(i=L−+k)P(x) =Zk
ここでZmは多項式Z、−1の最高次係数とし、Z’
=1はZt−+から最高次係数を除いた多項式とする。Zo=I(x) Z+=gm*Z'+-++Zm*g' (x)
(i=L-+k)P(x) =Zk Here, Zm is the highest degree coefficient of the polynomial Z,-1, and Z'
=1 is a polynomial obtained by removing the highest order coefficient from Zt-+.
Zrnをg′(X)の入力中保持し、Zm*g’(x)
の演算を行う。ここでは、g m = 1とし、第30
図のようにPEを構成する。Hold Zrn while inputting g'(X), and Zm*g'(x)
Perform the calculation. Here, g m = 1 and the 30th
Configure PE as shown.
glからg’ (x)の係数gm−1からgoがmを1
周期として周期的に乗算器2に入力される。またCK2
(1周期毎のクロック)とCLによって制御されるレジ
スタによってZmを保持し、Aに入力する。From gl to the coefficient gm-1 of g' (x), go sets m to 1
The signal is periodically input to the multiplier 2 as a period. Also CK2
Zm is held by a register controlled by (clock for each cycle) and CL, and is input to A.
Z’i−1は前演算結果Zl−1を周期に対してlクロ
ック早(出力することによって実現する。従ってレジス
タ列6の段数をm−1とし、B入力にフィードバックす
る。情報1 (x)はCから入力され1周期の間1つの
値が保持されるように入力する。Z'i-1 is realized by outputting the previous operation result Zl-1 l clocks 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 input so that one value is held for one cycle.
第31図に符号化の様子を示す。先ずi=1のときを考
える。初期状態としてCK2で制御されるレジスタに情
報シンボルI k−+が保持され、C入力からは情報1
に一□−1が入力され、レジスタ列6に情報シンボルが
I k−2からIk−□迄蓄えられている場合を考える
。演算部ではA入力からのIk−+にg’ (x)を乗
じて、B入力からのTo−z〜Ik−□、及びC入力か
らのIk−m−1と加算して、レジスタ列6に入力する
。FIG. 31 shows the encoding process. First, consider the case when i=1. As an initial state, the information symbol Ik-+ is held in the register controlled by CK2, and information 1 is input from the C input.
Consider the case where 1□-1 is input to , and information symbols from Ik-2 to Ik-□ are stored in register column 6. In the arithmetic unit, Ik-+ from the A input is multiplied by g' (x), added to To-z~Ik-□ from the B input, and Ik-m-1 from the C input, and the result is the register column 6. Enter.
(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=00、C入力の時Sl、2=01とする)その演算
結果を21の高次の項からI’ k−+ = I k−
1*gm、+Ih−+−1とする。(j= l+ ”・
+ m ) t = 2以降も1’ h−tに対して同
様の処理をi=kまで行うことにより符号化が行われる
。2=00, Sl for C input, 2=01) The result of the operation is calculated from the 21 higher-order terms as I' k-+ = I k-
1*gm, +Ih−+−1. (j=l+”・
+m) After t=2, encoding is performed by performing the same processing on 1' h-t up to i=k.
また、初期状態を実現するために第32図(m=4の場
合)のようにする。情報入力はIh−+−Io迄1周期
の開鎖が保持されるように入力する。先ずセレクタ選択
信号St、2=01とし、最初の受信シンボルI b−
+をCから入力しYに出力する。へ人力へはCK2で制
御されるレジスタのCLによって0を入力し、Xに出力
させる。PE内のレジスタ段数がm−1であるので、B
入力には周期の1クロツク前にIk−+がフィードバッ
クされる。そのとき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 until Ih-+-Io. First, the selector selection signal St,2=01, and the first received symbol Ib-
Input + from C and output to Y. To the manual input, 0 is input by register CL controlled by CK2, and output is made to X. Since the number of register stages in PE is m-1, B
Ik-+ is fed back to the input one clock cycle before the cycle. At that time Sl.
2=00としlクロック分だけB入力をYに出力しSl
、2の設定を元に戻す。このときCからは次の受信シン
ボルIi+−2が入力されるのでレジスタ列6にはI
k−1を1クロック分入力した後、I k−2を入力す
ることになる。I k−z人力中、レジスタ列6からの
フィードバック入力とのずれは2クロック分になるの
で、それに合わせてセレクタ選択信号をSl、2=OO
とする。そのとき、Ik−1の後にI k−zが1り
ロック分選択される。以上の動作をIk−ffl迄行進
行とによってレジスタ列6にn+−+ 〜I h−□が
蓄えられていく。I k−m−lを入力するとき、Ik
−+はレジスタ列6からはみ出すがCK2で制御される
レジスタにラッチされることによって初期状態が実現さ
れる。2=00, output the B input to Y for l clocks, and
, restore the settings in step 2. At this time, the next received symbol Ii+-2 is input from C, so register row 6 contains I
After inputting k-1 for one clock, Ik-2 is inputted. During Ik-z manual input, the deviation from the feedback input from register row 6 is two clocks, so the selector selection signal is set to Sl, 2=OO
shall be. At that time, Ik-z is 1 after Ik-1.
The lock is selected. By performing the above operations in rows up to Ik-ffl, n+-+ to Ih-□ are stored in the register column 6. When inputting I k-m-l, Ik
-+ protrudes from the register row 6, but is latched into the register controlled by CK2, thereby achieving an initial state.
また、演算終了後の情報I (x)とパリティP (x
)の切り替えもセレクタの2出力を利用して第33図の
ようにして行う。上述の符号化演算中、2は1周期毎の
情報シンボルの入力であるC入力を出力する。演算終了
後パリティ出力をレジスタ列6を通して循環させるが、
PE内のレジスタ段数がm −1であるのでCK2で制
御されるレジスタはパリティの1循環毎に1次ずれたパ
リティを出力しA入力にフィードバックする。そのとき
ZはA入力を選択しパリティを1周期毎に出力する。Also, information I (x) and parity P (x
) is also performed as shown in FIG. 33 using the two outputs of the selector. During the above-mentioned encoding operation, 2 outputs the C input which is the input of information symbols for each cycle. After the operation is completed, the parity output is circulated through the register row 6.
Since the number of register stages in the PE is m -1, the register controlled by CK2 outputs parity shifted by one order for each cycle of parity and feeds it back to the A input. At that time, Z selects the A input and outputs parity every cycle.
従って、このときの回路規模、及び処理速度は(400
+m*50)ゲート、及び(16/ m ) M w
p sである。全処理を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) gate, and (16/m) M w
ps. When all processing is configured with IPE, m =
It becomes 2t. As an example, when the correction capacity t=8, the circuit scale of the IPE is 1200 gates, and the processing speed is I M w p s = 8 M b p s.
また、全処理をIPEで構成せず、複数のPEに分けて
構成する場合、第30図のPEを第34図のように接続
する。PHの数をkとすると全体の処理は(2t/k)
に分散されるので、IPEに必要なレジスタの段数はm
=(2t/k)となる。従って、第34図の回路規模は
(2t / m ) * (400+m * 50 )
ゲートとなる。第35図に2つのPEで構成した場合の
信号の流れを示す。この場合、レジスタ段数はm =
tであるので処理速度は2 M w p s = f
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 PHs 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)
It 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 = f
6 Mbps, and the circuit scale is 800*2=1
There will be 600 gates.
m=1としたとき必要なPHの数はに=2tとなるが、
#にのPEから#lのPEへのフィードバック、及び1
(x)の同時入力は変わらないので、このアーキテクチ
ャにおいても符号器はやはりシストリックな構成になら
ない。When m = 1, the number of PHs required is = 2t, but
Feedback from PE in # to PE in #l, and 1
Since the simultaneous inputs of (x) remain the same, the encoder is still not systolic in this architecture.
5F’−’−0びシスーム
ステップ3のf(α−′)出力は第17図のPEを用い
た場合2を毎にI CK分だけ出力されるが、σ′(α
−′)とσ(αI)、ω(σ′)ではタイミングが半周
期ずれるのでσ′(α−′)はCK2 (2を毎のクロ
ック)で制御されるレジスタでラッチさせ、σ(α−1
)。5F'-'-0 and f(α-') output of system step 3 are output by I CK every 2 when using the PE shown in FIG. 17, but σ'(α
-'), σ(αI), and ω(σ') have a half-cycle timing difference, so σ'(α-') is latched by a register controlled by CK2 (2 every clock), and σ(α- 1
).
ω(α−I)はCK2’ (CK2を半周期ずらしたク
ロック)でラッチし、更にCK2で制御されるレジスタ
でラッチすることによって第48図と同様なステップ4
の誤り訂正が実現される。(タイミングは第21図に示
す。但し、GCD生成部においてはA (B)。ω(α-I) is latched by CK2' (a clock shifted by half a cycle from CK2), and further latched by a register controlled by CK2, resulting in step 4 similar to that shown in FIG.
error correction 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 need to go through a buffer) to the error correction execution unit in step 4. When optimized, it becomes as shown in Fig. 20.
ω(α−1)、σ(α−1)、σ′(α−′)の出力の
タイミングを合わせた後の動作は前章と同じである。従
って、ステップ4に於いて必要な回路規模はバッファと
逆数生成用ROMを除いて、450+5*50=700
ゲートとなる。ステップ4の誤り訂正実行部はシストリ
ックな構造を持たないので、レジスタ段数を増加しても
回路の小型化を行うことは出来ない。The operation after synchronizing the output timings of ω(α−1), σ(α−1), and σ′(α−′) is the same as in the previous chapter. Therefore, the circuit size required in step 4 is 450 + 5 * 50 = 700, excluding the buffer and reciprocal generation ROM.
It becomes a gate. Since the error correction execution unit in step 4 does not have a systolic structure, the circuit cannot be made smaller even if the number of register stages is increased.
従って、その状況に応じて最適な回路の簡単化を行えば
よい。またα−’ (i=n−1,・・・、0)発生回
路も同様である。Therefore, it is only necessary to simplify the circuit optimally depending on the situation. The same applies to the α-' (i=n-1, . . . , 0) generation circuit.
以上述べてきたように、RS符号の各復号ステラ プは
高速性と引き替えに回路を小型化できる。As described above, each RS code decoding stamp can reduce the size of the circuit in exchange for high speed.
第49図の復号器に於いて1例として次の組合せにする
ことよって、各PEの制御をセレクタ選択信号とCK
2のみで全体のシステムを動かすことが出来る。As an example, in the decoder of FIG. 49, the control of each PE is controlled by the selector selection signal and the CK
You can run the entire system with only 2.
ステップ1)SYNDROME:図62ステップ2)
GCD 、図69ステップ3)EVALUAT
E、図77ステツプ4)CORRECT :図80符
号化復号器をシステムとして考えた場合、第50図の消
失誤り訂正のための復号器を1例として、次の組合せに
することによって小型化された符号化復号器として実現
できる。Step 1) SYNDROME: Figure 62 Step 2)
GCD, Figure 69 Step 3) EVALUAT
E, Figure 77 Step 4) CORRECT: When the encoder/decoder in Figure 80 is considered as a system, the decoder for erasure error correction in Figure 50 is taken as an example, and it is miniaturized by the following combination. It can be implemented as an encoder/decoder.
1)SYNDROME :図622) GCD
:図693)EVALUATE
:図774)CORRECT :図805)E
RASURE I :図826)ERASURE
II :図8にれはステップ4で示した復号器
にERASURE■とERASURE IIを加えた
ものである。また、ステップ4で示した復号器に第30
図の符号器を加えて符号化復号器とすることも出来る。1) SYNDROME: Figure 622) GCD
:Figure 693) EVALUATE
: Figure 774) CORRECT : Figure 805) E
RASURE I: Figure 826) ERASURE
II: In FIG. 8, ERASURE ■ and ERASURE II are added to the decoder shown in step 4. Also, the 30th decoder shown in step 4
The encoder shown in the figure can also be added to form an encoder/decoder.
(符号化と復号を同時に行わない場合には、PEの接続
、及びPHの制御を符号化と復号で可変にすることによ
って第49図の回路で回路規模を変えることなく符号化
復号器を実現できる)
各々の処理における回路規模(ゲート単位)、及び処理
速度(M w p s単位)は前述したように次の通り
である。(wps=word/5ec)1) (2t
/m)*(400+m+50)、16/m2) (2
t/m)*(700+ (3m+4) +50)、 n
*(16/2t/m)3) 2*(2t/m)*(4
00+ (m+1) +50)、 16/m5) (
2t/m)*(400+(m+1)+50)、n*(1
6/2t/m)6) (2t/m)*(400*(3
m+2)+50)、n*(16/4t)/m)7)
ENCODE :図89 ; (2t/m)*(
400+m+50)、 16/m1例としてR5復号器
がt=8としたとき次のような回路規模、及び処理速度
で実現できる。(符号長n≧4tであり、またIPEで
実現するためにm = 2 tとする)
1200 + 3300 + 2500 + 700
= 7700 gateI 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″′)(7)回路規模をMゲートとする
と、GF(2”)の回路規模は約4Mゲートとなる。し
かし、lワードの構成がmビットから2mビットとなる
ことを考えると、IPE当りの処理速度はlO〜20
M w p s(ワード7秒)であるのでm ・(10
〜20)Mbpsから2m・(10〜20)Mbpsと
なり、2倍になる。(If encoding and decoding are not performed at the same time, by making PE connections and PH control variable between encoding and decoding, an encoding/decoding device can be realized using the circuit shown in Figure 49 without changing the circuit scale.) As described above, the circuit scale (in gate units) and processing speed (in M w ps units) for each process are as follows. (wps=word/5ec)1) (2t
/m)*(400+m+50), 16/m2) (2
t/m)*(700+ (3m+4) +50), n
*(16/2t/m)3) 2*(2t/m)*(4
00+ (m+1) +50), 16/m5) (
2t/m)*(400+(m+1)+50), n*(1
6/2t/m)6) (2t/m)*(400*(3
m+2)+50), n*(16/4t)/m)7)
ENCODE: Figure 89; (2t/m)*(
400+m+50), 16/m1 As an example, when the R5 decoder has 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 gateI M w p s = 8
M b p s and when t=2, 600 +1500 + 1300 + 700 +
3100gate4 M w p s = 32 M
b p s (2'') (7) If the circuit scale is M gates, the circuit scale of GF (2'') is approximately 4M gates. However, considering that the structure of l word changes from m bits to 2m bits, the processing speed per IPE is lO~20
Since M w p s (word 7 seconds), m ・(10
~20) Mbps becomes 2m/(10-20) Mbps, doubling.
段数を2段とすればよい。すると、必要なPEの数は、
k=(2t/m)、m=2であるのでt個となる。従っ
て、ガロア体の構成をGF(2M)からGF(22M)
とした場合、同一処理速度での回路規模の増加は2倍と
なる。一般的にガロア体の構成をGF(2″)からGF
(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. In general, the structure of a Galois field is changed from GF (2″) to GF
(2''-'), the circuit scale increases by a times.
以上説明したように、前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.
これによって、回路規模(ゲート単位)と処理速度(M
w p s単位)が訂正能力tと、レジスタ段数mに
よって関数的に示すことができ、実現可能な回路規模で
任意の処理能力、処理速度を実現できる。As a result, the circuit scale (gate unit) and processing speed (M
(w p s units) 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.
第1図は本発明による小型化プロセッシング・エレメン
ト(PE)の構成図
第2図は本発明による第1図のPEを最適化したシンド
ローム生成回路の説明図
第3図は本発明による第2図のPEのタイミング図第4
図は本発明による第2図のPHの接続図第5図は本発明
による第2図のPEを2つ用いたシンドローム生成回路
のタイミング図
第6図は本発明による第1図のPEを用いたGCD生成
回路の説明図
第7図は本発明による第1図のPEを用いたGCD生成
回路のタイミング図
第8図は本発明による第1図のI’Eを用いた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を最適化した消失位置多項式生成回路の
説明図
第23図は本発明による第22図のPHのタイミング図
第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図のPHのタイミング図
(初期入力時)
第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生成用PEの接続図第44図は従来
のGCD生成用PHの動作タイミングを示す図
第45図は従来のGCD生成用PEの動作タイミングを
示す図
第46図は従来の誤り評価用PEの接続図第47図は従
来の消失位置多項式生成用PHの接続図
第48図は従来の誤り訂正実行用PEを説明するための
図
第49図は従来の誤り訂正復号器をシステムを構成図
第50図は消失誤り訂正復号器の例を示す図O・・・・
・・・・・・・・・・・・・・・・・・・・・・・・・
・・・・・・・・・・・・・・・・・・・・・・・・・
・・・・・・・・・・乗算器■ ・・・・・・・・・・
・・・・・・・・・・・・・・・・・・・・・・・・・
・・・・・・・・・・・・・・・・・・・・・・・・・
・・・・加算器特許出願人 キャノン株式会社
第22
c−t t t−−−t t I t t
−−−範6図
C11
躬10区
葛 oAx
第4318
″、(GQ χこ ;°2
為灸−6・
鴫
oト xNへ
嘘 稔躬4b図
躬49図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. FIG. 7 is a timing diagram of a GCD generation circuit using the PE of FIG. 1 according to the present invention. FIG. 8 is a timing diagram of a GCD generation circuit using the I'E of FIG. 1 according to the present invention. 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.
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 an erasure position polynomial generation circuit that optimizes PE. FIG. 23 is a timing diagram of the PH 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 version of the PE shown in FIG. 1 according to the present invention. 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 of FIG. 26 are used according to the present invention. FIG. 30 is an explanatory diagram of an encoder that optimizes the PE of FIG. 1 according to the present invention. FIG. 32 is a timing diagram of the PH 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
3 is a connection diagram of a conventional PE for GCD generation. FIG. 44 is a diagram showing the operation timing of a conventional PH for GCD generation. FIG. 45 is a diagram showing the operation timing of a conventional PE for GCD generation. FIG. 47 is a connection diagram of a conventional PE for error evaluation. FIG. 48 is a diagram for explaining a conventional PE for error correction. FIG. 49 is a diagram of a conventional error correction decoder. System configuration diagram Figure 50 is a diagram showing an example of an erasure error correction decoder.
・・・・・・・・・・・・・・・・・・・・・・・・
・・・・・・・・・・・・・・・・・・・・・・・・
・・・・・・・・・Multiplier■ ・・・・・・・・・・・・
・・・・・・・・・・・・・・・・・・・・・・・・
・・・・・・・・・・・・・・・・・・・・・・・・
...Adder patent applicant Canon Co., Ltd. No. 22 c-t t t---t t I t t
---Ban 6 Diagram C11 躬10 ward kudzu oAx No. 4318 ″, (GQ χ こ ;°2 Tame moxibustion-6・髫oto
Claims (1)
そのセレクタ出力の少なくとも一方を入力に持つガロア
体上の乗算器と、その乗算器出力を少なくとも一方の入
力に持つガロア体上の加算器と、その加算出力および前
記セレクタ出力を蓄えるm段のレジスタ列から構成され
る演算回路を複数同型に接続することによって消失位置
多項式λ(x)=(1−Y_1・x)・(1−Y_2・
x)…(1−Y_sx)をY_i(i=1、…、s)に
対して求める回路、及び、多項式A(x)、B(x)の
乗算(A(x)、B(x)の次数は任意) C(x)=A(x)・B(x) を求める消失位置多項式生成回路。(1) A multiplier on a Galois field that has a multi-input, multiple-output or multi-input and one-output selector and at least one of its selector outputs as an input, and an addition on a Galois field that has at least one input as the multiplier output. The vanishing position polynomial λ(x)=(1-Y_1・x)・(1- Y_2・
x)...(1-Y_sx) for Y_i (i=1,...,s), and the multiplication of polynomials A(x) and B(x) (of A(x) and B(x) (order is arbitrary) Vanishing position polynomial generation circuit that calculates C(x)=A(x)・B(x).
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP31083486A JPS63164627A (en) | 1986-12-26 | 1986-12-26 | Missing location polynomial 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 |
---|---|---|---|
JP31083486A JPS63164627A (en) | 1986-12-26 | 1986-12-26 | Missing location polynomial generating circuit |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS63164627A true JPS63164627A (en) | 1988-07-08 |
Family
ID=18009955
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP31083486A Pending JPS63164627A (en) | 1986-12-22 | 1986-12-26 | Missing location polynomial generating circuit |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS63164627A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63233614A (en) * | 1987-03-20 | 1988-09-29 | Canon Inc | Reed-solomon encoding/decoding system |
JPS63233613A (en) * | 1987-03-20 | 1988-09-29 | Canon Inc | Reed-solomon encoding/decoding system |
JP2829678B2 (en) * | 1990-05-04 | 1998-11-25 | ベル コミュニケーションズ リサーチ インコーポレーテッド | Forward error correction code system |
-
1986
- 1986-12-26 JP JP31083486A patent/JPS63164627A/en active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63233614A (en) * | 1987-03-20 | 1988-09-29 | Canon Inc | Reed-solomon encoding/decoding system |
JPS63233613A (en) * | 1987-03-20 | 1988-09-29 | Canon Inc | Reed-solomon encoding/decoding system |
JP2829678B2 (en) * | 1990-05-04 | 1998-11-25 | ベル コミュニケーションズ リサーチ インコーポレーテッド | Forward error correction code system |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6928602B2 (en) | Encoding method and encoder | |
US5170399A (en) | Reed-Solomon Euclid algorithm decoder having a process configurable Euclid stack | |
US4797848A (en) | Pipelined bit-serial Galois Field multiplier | |
US7870468B1 (en) | Reed-solomon decoder using a configurable arithmetic processor | |
JPH07212248A (en) | Calculating method for error position polynomial, and device therefor | |
US9065482B1 (en) | Circuit for forward error correction encoding of data blocks | |
EP2309650B1 (en) | A systematic encoder with arbitrary parity positions | |
Zhang | VLSI architectures for Reed–Solomon codes: Classic, nested, coupled, and beyond | |
US5887006A (en) | Methods and apparatus for error correction | |
JPS63164627A (en) | Missing location polynomial generating circuit | |
US5964826A (en) | Division circuits based on power-sum circuit for finite field GF(2m) | |
US5887005A (en) | Methods and apparatus for error correction | |
EP1175015B1 (en) | Decoding circuit and decoding method thereof | |
JPS63164624A (en) | Syndrome generating circuit | |
EP0989680A1 (en) | Method of correcting lost data and circuit thereof | |
JPS63164626A (en) | Circuit for generating error location and value of error | |
JPS63164629A (en) | Bch coding and decoding device | |
JPH0476540B2 (en) | ||
US5889793A (en) | Methods and apparatus for error correction | |
Tang et al. | An efficient parallel architecture for resource-shareable reed-solomon encoder | |
US20050086278A1 (en) | Method and apparatus for performing multiplication in finite field GF(2n) | |
JPS63164628A (en) | Encoder | |
JPS63164625A (en) | Gcd generating circuit | |
US6138134A (en) | Computational method and apparatus for finite field multiplication | |
JPS63157530A (en) | Bch coding decoding system |