JPH0133055B2 - - Google Patents

Info

Publication number
JPH0133055B2
JPH0133055B2 JP57114281A JP11428182A JPH0133055B2 JP H0133055 B2 JPH0133055 B2 JP H0133055B2 JP 57114281 A JP57114281 A JP 57114281A JP 11428182 A JP11428182 A JP 11428182A JP H0133055 B2 JPH0133055 B2 JP H0133055B2
Authority
JP
Japan
Prior art keywords
error
syndrome
circuit
error position
symbols
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired
Application number
JP57114281A
Other languages
Japanese (ja)
Other versions
JPS595759A (en
Inventor
Yukihiro Okada
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.)
NEC Home Electronics Ltd
Original Assignee
NEC Home Electronics Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Home Electronics Ltd filed Critical NEC Home Electronics Ltd
Priority to JP57114281A priority Critical patent/JPS595759A/en
Publication of JPS595759A publication Critical patent/JPS595759A/en
Publication of JPH0133055B2 publication Critical patent/JPH0133055B2/ja
Granted legal-status Critical Current

Links

Classifications

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

Landscapes

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

Description

【発明の詳細な説明】 本発明はリード・ソロモン符号を用いた誤り訂
正復号方式に関する。
DETAILED DESCRIPTION OF THE INVENTION The present invention relates to an error correction decoding method using Reed-Solomon codes.

リード・ソロモン符号はランダム誤りを訂正す
るために現在知られている最も強力な誤り訂正符
号の1つである。
Reed-Solomon codes are one of the most powerful error correcting codes currently known for correcting random errors.

リード・ソロモン符号に関しては米国のノー
ス・ホーランド パブリツシング カンパニイ
(NORTH−HOLLAND PUBLISHING
COMPANY)から1978年に発行されたエフ・ジ
エー・マツクウイリアム(F.J.MACWILIAM)
およびエヌ・ジエー・エイ・スローン(N.J.A.
SLOAN)著ザ セオリイ オブ エラー コレ
クテイング コード(THE THEORY OF
ERROR CORRECTING CODES)に詳述され
ている。
Regarding Reed-Solomon codes, the North Holland Publishing Company in the United States (NORTH-HOLLAND PUBLISHING
FJMACWILIAM, published in 1978 by COMPANY
and N.J.A. Sloan (N.J.A.
The Theory of Error Correcting Code (THE THEORY OF
ERROR CORRECTING CODES).

この符号は、巡回符号の一種であるためにその
符号化に関しては、よく知られた巡回符号の符号
器を用いて比較的簡単に実現できるが、その復号
に関しては一般的な従来の方法を用いると装置が
非常に複雑になり、また符号自体のもつ誤り検出
能力を十分に使いきつていないという欠点を有し
ている。
Since this code is a type of cyclic code, its encoding can be realized relatively easily using a well-known cyclic code encoder, but its decoding requires a general conventional method. This has the disadvantage that the device becomes very complex and the error detection ability of the code itself is not fully utilized.

本発明の目的は従来のこのような欠点を除去す
るにある。
The object of the present invention is to eliminate these drawbacks of the prior art.

上述の目的を達成するため、本発明は、M個
(但しMは正の整数)の1次多項式の積で得られ
る生成多項式から生成され、N個のシンボルで構
成された符号長N(但しNはMよりも大きい正の
整数)のリード・ソロモン符号を受信し、N個の
各々のシンボルを受信する毎に予めメモリに書き
込まれた原始元ηi(但しηi=αi、i=0、……、M
−1、iに対してシンドロームS0、……Si、……
SM-1が与えられる。)を受信シンボルと乗算し、
これと次の受信シンボルとの排他的論理和をとつ
てシフトレジスタに蓄積すると共に、その出力を
分岐して前記メモリに戻し、この操作をN個のシ
ンボル全てに対して行い、前記シフトレジスタよ
りシンドローム演算出力を引き出すシンドローム
演算手段と、シンドロームをガロア体GF(2y
(但しyは正の整数)を条件として原子元αの羃
乗で表現してそれぞれの対応した指数を演算する
指数算出手段と、上記演算手段から得られたシン
ドロームに対応する原子元αの羃指数のmod2y
1加算を行いこの加算結果が存在するとき、これ
を誤り位置jとして検出する誤り位置検出手段
と、上記シンドローム演算手段から得得られたシ
ンドロームと、上記誤り位置検出手段から得られ
た誤り位置jとを受けて、誤り訂正を実行する誤
り訂正実行手段とから構成される。
In order to achieve the above object, the present invention provides a code length N (where M is a positive integer) that is generated from a generator polynomial obtained by the product of M (where M is a positive integer) first-order polynomials and is composed of N symbols. N is a positive integer larger than M) Reed-Solomon code is received, and each time each N symbol is received, the primitive element η i (where η ii , i= 0,...,M
-1, for i the syndrome S 0 ,...S i ,...
S M-1 is given. ) by the received symbol,
The exclusive OR of this and the next received symbol is taken and stored in the shift register, and its output is branched and returned to the memory. This operation is performed for all N symbols, and the result is stored in the shift register. A syndrome calculation means that extracts the syndrome calculation output and a syndrome that is converted into a Galois field GF (2 y )
(where y is a positive integer) is expressed as a power of the atomic element α and calculates each corresponding exponent, and the power of the atomic element α corresponding to the syndrome obtained from the above calculation means. Exponent mod2 y
1 addition and when this addition result exists, error position detection means detects it as an error position j; a syndrome obtained from the syndrome calculation means; and an error position j obtained from the error position detection means. and error correction execution means for executing error correction in response to the error correction.

次に図面を参照して本発明を詳細に説明する。 Next, the present invention will be explained in detail with reference to the drawings.

第1図は本発明の一実施例を示すブロツク図で
あり、この実施例はシンドロームS0.S1、S2、…
…、SM-1演算回路2,3,4,……,5と、指数
算出用の読み出し専用メモリ(以下、ROMと略
す)6,7,8,……9と、mod255加算回路1
0,11,12,……,13と、誤り位置(j)比較
判定回路14と、シンドロームゼロ判定回路15
と、誤り訂正実行回路16とを有し、ここではシ
ンドロームS0、S1、S2、……、SM-1演算回路2,
3,4,……,5がシンドローム演算手段に相当
し、以下同様に、指数算出手段に相当するものは
ROM6,7,8,……9及びmod255加算回路
10,11,12,……,13、誤り位置検出手
段に相当するものは誤り位置(j)比較判定回路1
4、誤り訂正実行手段に相当するものは誤り訂正
実行回路16である。
FIG . 1 is a block diagram showing an embodiment of the present invention.
..., S M-1 arithmetic circuits 2, 3, 4, ..., 5, read-only memory (hereinafter abbreviated as ROM) for exponent calculation 6, 7, 8, ... 9, and mod255 addition circuit 1
0, 11, 12, ..., 13, error position (j) comparison judgment circuit 14, and syndrome zero judgment circuit 15
and an error correction execution circuit 16, in which syndromes S 0 , S 1 , S 2 , ..., S M-1 arithmetic circuit 2,
3, 4, ..., 5 correspond to the syndrome calculation means, and similarly, the following correspond to the index calculation means.
ROM 6, 7, 8, ... 9 and mod255 addition circuits 10, 11, 12, ..., 13, the error position (j) comparison judgment circuit 1 corresponds to the error position detection means.
4. The error correction execution circuit 16 corresponds to the error correction execution means.

さて、このブロツク図に従つて本実施例の動作
の詳細を説明する前にまずその動作原理を先に説
明する。
Now, before explaining the details of the operation of this embodiment according to this block diagram, the principle of operation will first be explained.

一般に、リード・ソロモン符号においては、N
個のシンボルが1符号ブロツクを構成し、この1
符号ブロツク中にM個の検査用シンボルと、N−
M個の情報伝達用シンボルとが含まれている。こ
こで用いられる各シンボルには種々あるが、本実
施例では、一般に広く用いられている8ビツトの
符号ベクトルと仮定する。また、説明を具体的に
するために、1符号ブロツク中のシンボルの数
(符号長)をNとし、また1符号ブロツク中の検
査用シンボルの数をMと仮定する。従つて1符号
ブロツク中の情報伝達データ用シンボルの数は、
N−Mとなる。
Generally, in a Reed-Solomon code, N
symbols constitute one code block, and this one
M check symbols and N-
M information transmission symbols are included. Although there are various symbols used here, in this embodiment, an 8-bit code vector, which is generally widely used, is assumed. In order to make the explanation more concrete, it is assumed that the number of symbols (code length) in one code block is N, and the number of test symbols in one code block is M. Therefore, the number of information transmission data symbols in one code block is:
It becomes N-M.

さて、1符号ブロツク中のN個の各シンボルを
A0、A1、A2、……AM-1、AM、……、Aj、……
AM-1 で現すことにする。任意のAjは1バイトの符号
であり、従つて、28=256個の元の中の1つの元
を表わしている。また、この中のシンボルAM
AN-1のN−M個が情報伝達データ用シンボルで、
残りのA0〜AM-1のM個がこのAM〜AN-1をもとに
して作られた検査用シンボルであると仮定する。
Now, each of the N symbols in one code block is
A 0 , A 1 , A 2 , ...A M-1 , A M , ..., Aj, ...
I will express it as A M-1 . Any Aj is a 1-byte code and therefore represents one element out of 2 8 =256 elements. Also, the symbol A M ~
N-M of A N-1 are symbols for information transmission data,
It is assumed that the remaining M symbols A 0 to A M-1 are test symbols created based on A M to A N-1 .

さて、リード・ソロモン符号においては、符号
化の過程において、検査用シンボルA0〜AM-1
情報伝達データ用シンボルAM〜AN-1との間で次
の拘束関係を満足するように作られる。すなわ
ち、 A0+A1+A2+……+Aj+……+AN-1=0 A0+αA1+α2A2+……+αjAj+…… +αN-1AN-1=0 A0+α2A1+α4A2+……+α2jAj +……+α2(N-1)AN-1=0 A0+α3A1+α6A2+……+α3jAj +……+α3(N-1)AN-1=0 〓 〓 〓 A0+αM-1A1+α2(M-1)A2+……+α(M-1)j ×Aj+……+α(M-1)(N-1)AN-1=0 (1) この(1)式においては、各シンボルの記号Ajの
ほかに、記号αが用いられ、また、+で結ばれた
和の演算と、α同志間の積(αの羃)およびαの
羃とAjとの積の演算が用いられている。このα
は特定のシンボルを代表し、また上述の和および
積も一般の2進数の和および積とは異なる特別の
演算を意味する。以下これについて説明する。
Now, in the Reed-Solomon code, during the encoding process, the test symbols A 0 to A M-1 satisfy the following constraint relationship with the information transmission data symbols A M to A N-1. made in That is, A 0 +A 1 +A 2 +...+Aj+...+A N-1 =0 A 0 +αA 12 A 2 +...+α j Aj+... +α N-1 A N-1 =0 A 02 A 14 A 2 +...+α 2j Aj +...+α 2(N-1) A N-1 =0 A 03 A 16 A 2 +...+α 3j Aj +...+α 3( N-1) A N-1 =0 〓 〓 〓 A 0M-1 A 12(M-1) A 2 +...+α (M-1)j ×Aj+...+α (M-1) (N-1) A N-1 = 0 (1) In equation (1), in addition to the symbol Aj for each symbol, the symbol α is used, and the sum operation connected with + and α The calculations of the product between comrades (the power of α) and the product of the power of α and Aj are used. This α
represents a specific symbol, and the above-mentioned sums and products also mean special operations different from general binary sums and products. This will be explained below.

上述のように、本実施例ではAjもαもともに
8ビツトの“1”、“0”符号でできている符号ベ
クトルとする。従つて、いずれも28=256個の元
の中の1つの元を表わしている。
As mentioned above, in this embodiment, both Aj and α are code vectors made up of 8-bit "1" and "0" codes. Therefore, each represents one element out of 2 8 =256 elements.

さて、この256個の中から任意の2つの元Aと
Bとを選び、この2つの元の和で指定される元A
+Bおよび2つの元の積で指定される元ABのい
ずれも、もとの256個中の1つの元になると仮定
して各々を次のように定義できる。
Now, select any two elements A and B from these 256 elements, and select the element A specified by the sum of these two elements.
Assuming that +B and the element AB specified by the product of two elements are each one of the original 256 elements, each can be defined as follows.

和:第2図に示すように元Aおよび元Bを符号
ベクトルの形で表示し、各桁(各次元)ごとの排
他的論理和をとつた結果生ずる符号ベクトルをA
+Bと定義する。和の演算がこのように定義され
るために2個の同じ元の和は常に“0”(各次元
の成分がすべて“0”の符号ベクトル)となり、
また、和の逆算としての差の演算は和の演算と同
じになる。
Sum: As shown in Figure 2, elements A and B are expressed in the form of code vectors, and the code vector resulting from the exclusive OR of each digit (each dimension) is expressed as A.
+B is defined. Because the sum operation is defined in this way, the sum of two same elements is always “0” (a code vector in which all the components of each dimension are “0”),
Further, the calculation of the difference as the inverse calculation of the sum is the same as the calculation of the sum.

積:例えば第3図1に示すような元Aおよび元
Bがあると、これをχの多項式表現 A=1+χ2+χ3+χ5 B=χ2+χ4 とし、この多項式の積ABを AB=(1+χ2+χ3+χ5)(χ2+χ4) =χ2+(χ4+χ4)+χ5+χ6 +(χ7+χ7)+χ9 のように作る。この中でχの同じ羃乗の項は、符
号ベルトルの同じ桁(次元)に対応するので、上
述の排他的論理和の規則を適用して整理すると上
式は、 AB=χ9+χ6+χ5+χ2 となる。この多項式はχの7乗以上の項(すなわ
ちχ9の項)を含むので、このままではこれに対応
する8ビツトの符号ベクトルを指定することがで
きない。
Product: For example, if we have elements A and B as shown in Figure 3, we express them as a polynomial of χ: A = 1 + χ 2 + χ 3 + χ 5 B = χ 2 + χ 4 , and the product AB of this polynomial is AB = (1 + χ 2 + χ 3 + χ 5 ) (χ 2 + χ 4 ) = χ 2 + (χ 44 ) + χ 56 + (χ 77 )+χ 9 . In this, terms of the same power of χ correspond to the same digit (dimension) of the code belt, so applying the above exclusive disjunction rule and rearranging the above equation, AB=χ 965 + χ 2 . Since this polynomial includes a term greater than or equal to the seventh power of χ (ie, a term of χ 9 ), it is not possible to specify the corresponding 8-bit code vector as is.

そこで、積を定義する場合には、それに伴つて
8次のある既約多項式f(χ)を予め定めておき、
これを用いて以下のように定義する。
Therefore, when defining the product, an irreducible polynomial f(χ) of degree 8 is determined in advance,
Using this, it is defined as follows.

このf(χ)を f(χ)=χ8+χ5+χ3+χ+1 と定義すると、このf(χ)を用いて前記ABの
多項式を割算し、その結果生ずる剰余を作る。
If this f(χ) is defined as f(χ)=χ 853 +χ+1, then this f(χ) is used to divide the AB polynomial, and the resulting remainder is generated.

こうすると、剰余は必ずχの7次またはそれ以
下の次数の多項式となるので、これに対応する8
ビツトの符号ベクトルが存在する。これを積AB
と定義する。今の場合、上述のABの多項式をf
(χ)で除した商は、χとなり、剰余は、 χ5+χ4+χ となる(この演算においても前述の排他的論理和
の規則が適用されていて、引き算と足し算は同じ
である)。これより AB=χ5+χ4+χ となり、これを符号ベクトルで表示すると第3図
2に示すようになる。
In this case, the remainder will always be a polynomial of degree 7 or lower than χ, so the corresponding 8
There is a code vector of bits. Product AB
It is defined as In this case, the polynomial of AB mentioned above is expressed as f
The quotient divided by (χ) is χ, and the remainder is χ 54 +χ (the above-mentioned exclusive OR rule is applied to this operation as well, and subtraction and addition are the same). From this, AB=χ 54 +χ, which is expressed as a code vector as shown in FIG. 32.

以上のように、8次の既約多項式f(χ)を指
定すると、それに応じて256個の各元の間で、和
および積が定義され、またその逆算としての差お
よび商も定義され、256個の元の中で4則演算が
矛盾なく行われる。
As described above, when the 8th-order irreducible polynomial f(χ) is specified, the sum and product are defined between each of the 256 elements, and the difference and quotient are also defined as their inverse calculations. Four arithmetic operations are performed consistently among 256 elements.

さて、前記既約多項式f(χ)を適当に選ぶこ
とにより、前記256個の元の中の“0”(すべての
桁の成分が“0”の元)を除く256個のすべての
元を、ある元αの羃乗の形で表わすことができ
る。すなわち、1を単位元とし、これにつぎつぎ
にαを乗ずることによつて生ずる元、α、α2
α3、……、α255は前記“0”を除くすべての元を
一巡してα255で再び単位元1に戻るようにするこ
とができる。
Now, by appropriately selecting the irreducible polynomial f(χ), all of the 256 elements except for "0" (an element in which all digit components are "0") can be solved. , can be expressed in the form of a power of some element α. In other words, the elements α, α 2 ,
α 3 , . . . , α 255 can be made to go around all the elements except the aforementioned “0” and return to the identity element 1 again at α 255 .

実際に、前記既約多項式f(χ)として、 f(χ)=χ8+χ5+χ3+χ+1 を用い、αとして多項式表現のχを用いると、
255のすべての元はαj(但しj=0、1、2、……
255)として表わすことができる。但しα0=α255
=1である。このαを原始元と呼び、またこのよ
うな性質を有する多項式f(χ)を原始多項式と
呼ぶ。このような性質をもつ8次の原始多項式
は、上述のものを含んで16個あることが知られて
いる。本実施例においては、この16個の中の特定
の1つの原始多項式によつて元の間の演算が定義
されていると仮定し、またこれによつて定義され
る前記原始元αを用いることにする。この結果0
を除く任意の元は、αj(但しj=0、1、2、…
…、255)で表現され、従つて、任意の元は、指
数jだけでも指定することができる。これを元の
指数表現と呼ぶことにする。この指数表現を用い
ると、“0”を除く任意の2つの元の積は、各々
の元の指数表現をとり、この両者を255を法とし
て加えることにより両者の積の指数表現として簡
単に演算することができる。もし一方の元に
“0”が含まれる場合には結果の元を“0”とす
ればよい。また、商を作る場合には、分母になる
元の指数表現の2進数を、その各桁の“1”、
“0”を反転してから前述と同様に255を法として
加えればよい。
Actually, if f(χ)=χ 853 +χ+1 is used as the irreducible polynomial f(χ), and χ in polynomial expression is used as α,
All elements of 255 are α j (where j=0, 1, 2,...
255). However, α 0 = α 255
=1. This α is called a primitive element, and the polynomial f(χ) having such properties is called a primitive polynomial. It is known that there are 16 8th-order primitive polynomials with such properties, including the ones mentioned above. In this example, it is assumed that operations between elements are defined by one specific primitive polynomial among these 16, and the primitive element α defined by this is used. Make it. This result is 0
Any element except α j (where j=0, 1, 2,...
..., 255), and therefore any element can be specified using only the index j. We will call this the original exponential representation. Using this exponential representation, the product of any two elements except “0” can be easily calculated by taking the exponential representation of each element and adding both modulo 255 as the exponential representation of the product of both. can do. If one element contains "0", the element of the result may be set to "0". In addition, when creating a quotient, the binary number in the original exponential representation that becomes the denominator is ``1'' for each digit,
Just invert "0" and then add 255 modulo as above.

勿論、2つの元の和を演算する場合には、符号
ベクトルの表現を用いると簡単に行なうことがで
きる。
Of course, when calculating the sum of two elements, it can be easily performed using code vector representation.

このように、各元は、αの羃乗でも、αの指数
表現でも、符号ベクトル表現としても、また多項
式表現としても指定することができる。これらの
中のいずれの表現を用いるかは、その使用目的に
よつて最も適当なものを選ぶことができる。
In this way, each element can be specified as a power of α, an exponential representation of α, a code vector representation, or a polynomial representation. Which of these expressions to use can be selected depending on the purpose of use.

さて、こうして(1)式の演算は定義されたが、実
際に、任意の情報伝達データ用シンボルAM
AN-1から(1)式の拘束条件を満足する検査用シン
ボルA0〜AM-1を生成するには次のようにする。
今、生成多項式g(χ)として、g(χ)=(χ−
1)(χ−α)(χ−α2)(χ−α3)……(χ−
αM-1)を定義し、一方符号多項式C(χ)として
C(χ)=AN-1χN-1+AN-2χN-1+……+AMχMを定
義する。このC(χ)をg(χ)で除した剰余の多
項式をR(χ)とすると、R(χ)はχに関するM
−1次またはそれ以下の多項式となるので、R
(χ)=bM-1χM-1+bM-2χM-2+……+b3χ3+b2χ2
b1χ+b0と表わせる。こうして定まるbM-1、bM-2
……b3、b2、b1、b0、をそれぞれ検査用シンボル
AM-1、AM-2、……、A3、A2、A1、A0として用
いると、これらは次のような理由で(1)式の拘束条
件を満す検査用シンボルとなつている。
Now, the operation of equation (1) has been defined in this way, but in reality, any information transmission data symbol A M ~
To generate test symbols A 0 to A M-1 that satisfy the constraint condition of equation (1) from A N-1 , do as follows.
Now, as the generator polynomial g(χ), g(χ)=(χ−
1) (χ−α) (χ−α 2 ) (χ−α 3 )……(χ−
α M-1 ) is defined, and C(χ)=A N-1 χ N-1 +A N-2 χ N-1 +...+A M χ M is defined as a one-sign polynomial C(χ). If the polynomial of the remainder obtained by dividing this C(χ) by g(χ) is R(χ), then R(χ) is M with respect to χ
- It is a polynomial of degree 1 or lower, so R
(χ)=b M-1 χ M-1 +b M-2 χ M-2 +...+b 3 χ 3 +b 2 χ 2 +
It can be expressed as b 1 χ + b 0 . Thus determined b M-1 , b M-2 ,
……b 3 , b 2 , b 1 , b 0 are the inspection symbols, respectively.
When used as A M-1 , A M-2 , ..., A 3 , A 2 , A 1 , A 0 , these are inspection symbols that satisfy the constraint condition of equation (1) for the following reasons. It's summery.

今、C(χ)をg(χ)で除した商をQ(χ)と
書くと、C(χ)=g(χ)Q(χ)+R(χ)とな
り、これから、C(χ)+R(χ)=g(χ)Q(χ)
が導かれる(この場合もR(χ)を引くことはR
(χ)を加えることと同じである)。従つてC(χ)
+R(χ)はg(χ)で割り切れて、AN-1χN-1
AN-2χN-2+……+AMχM+AM-1χM-1+AM-2χM-2
……+A3χ3+A2χ2+A1χ+A0=(χ−2)(χ−
2(χ−α)(χ−α2)(χ−α3)……(χ−αM-1

Q(χ)が成立する。上式の両辺のxに、それぞ
れ1、α、α2、α3、……αM-1をつぎつぎに代入す
ることによつて、(1)式の関係が導かれる。
Now, if we write the quotient of C(χ) divided by g(χ) as Q(χ), then C(χ)=g(χ)Q(χ)+R(χ), and from this, C(χ)+R (χ)=g(χ)Q(χ)
is derived (also in this case, subtracting R(χ) is R
(same as adding (χ)). Therefore C(χ)
+R(χ) is divisible by g(χ), A N-1 χ N-1 +
A N-2 χ N-2 +……+A M χ M +A M-1 χ M-1 +A M-2 χ M-2
...+A 3 χ 3 +A 2 χ 2 +A 1 χ+A 0 = (χ-2) (χ-
2(χ−α)(χ−α 2 )(χ−α 3 )……(χ−α M-1
)
Q(χ) holds true. By successively substituting 1, α, α 2 , α 3 , . . . α M-1 into x on both sides of the above equation, the relationship in equation (1) is derived.

さて、上述のようにして送信側で作られた(1)式
の拘束条件を満す符号ブロツクA0、A1、A2、…
…、AN-1を送信し、それらがA^0、A^1、A^2、…
…、A^N-1として受信されたとする。そしてこれ
らの中の1つのシンボルAjにだけ誤りが生じた
と仮定する。すなわち、j以外のkに対しては、 A^K=AK ……(2) が成立し、Ajに対しては A^j=Aj+ej ……(3) とする。但し、ejはj番目のシンボルに起つた誤
りとする。
Now, the code blocks A 0 , A 1 , A 2 , . . . that satisfy the constraint condition of equation (1) created on the transmitting side as described above are
…, A N-1 , and they are A^ 0 , A^ 1 , A^ 2 ,…
..., A^ N-1 . It is assumed that an error occurs in only one symbol Aj among these. That is, for k other than j, A^ K =A K (2) holds true, and for Aj, A^j = Aj + ej (3). However, ej is an error occurring in the j-th symbol.

さて、今受信側において、受信シンボルA^0
A^1、A^2、……、A^N-1を用いて(1)式の各式の左辺
に相当する演算を行ない、その結果をそれぞれ
S0、S1、S2、……SM-1とする。すなわち、 S0=A^0+A^1+A^2……+A^j+……+A^N-1 S1=A^0+αA^1+α2A^2+……+αjA^j +……+αN-1A^N-1 S2=A^0+α2A^1+α4A^2+……+α2jA^j +……+α2(N-1)A^N-1 S3=A^0+α3A^1+α6A^2+……+α3jA^j +……+α3(N-1)A^N-1 〓 〓 〓 SM-1=A^0+αM-1A^1+α2(M-1)A^2+…… SM-1=A^0+αM-1A^1+α2(M-1)A^2+…… +αj(M-1)A^j+……+α(M-1)(N-1)A^N-1(4)
とする。もし、受信に全く誤りがなければ、(4)式
の左辺は(1)式の左辺と全く同じになり、従つて、
S0〜SM-1はすべて“0”になる筈である。受信に
誤りがあると(4)式の各左辺に相当する演算結果は
一般に“0”でないそれぞれの値S0、S2、……
SM-1をとることになる。これをシンドロームとい
う。本実施例は、このシンドロームS0〜SM-1を用
い、送信側で一ブロツク内のシンボル間に加えた
(1)式の拘束演算関係から誤り分を求めてこれを訂
正する方式である。
Now, on the receiving side, the received symbol A^ 0 ,
Using A^ 1 , A^ 2 , ..., A^ N-1 , perform the operation corresponding to the left side of each equation in equation (1), and calculate the results respectively.
S 0 , S 1 , S 2 , ...S M-1 . That is, S 0 =A^ 0 +A^ 1 +A^ 2 ...+A^j+...+A^ N-1 S 1 =A^ 0 +αA^ 12 A^ 2 +…+α j A^j +… …+α N-1 A^ N-1 S 2 =A^ 0 +α 2 A^ 1 +α 4 A^ 2 +……+α 2j A^j +……+α 2(N-1) A^ N-1 S 3 =A^ 03 A^ 16 A^ 2 +...+α 3j A^j +...+α 3(N-1) A^ N-1 〓 〓 〓 S M-1 =A^ 0M-1 A^ 12(M-1) A^ 2 +... S M-1 =A^ 0M-1 A^ 12(M-1) A^ 2 +... +α j( M-1) A^j+……+α (M-1)(N-1) A^ N-1 (4)
shall be. If there is no error in reception, the left side of equation (4) will be exactly the same as the left side of equation (1), and therefore,
All of S 0 to S M-1 should be "0". If there is an error in reception, the operation results corresponding to the left side of equation (4) will generally be non-zero values S 0 , S 2 , . . .
I will take S M-1 . This is called a syndrome. This example uses the syndromes S 0 to S M-1 and adds the
This method calculates the error amount from the constraint calculation relationship in equation (1) and corrects it.

さて、(2)式、(3)式の関係を(4)式に代入し、(1)の
関係を用いると、結果は次のようになる。
Now, by substituting the relationships in equations (2) and (3) into equation (4) and using the relationship in (1), the result is as follows.

S0=ej S1=αjej S2=α2jej S3=α3jej 〓 〓 SM-1=α(M-1)jej ……(5) この(5)式を変形すると、次の式が導かれる。 S 0 = ej S 1 = α j ej S 2 = α 2j ej S 3 = α 3j ej 〓 〓 S M-1 = α (M-1)j ej ……(5) Transforming this equation (5), , the following formula is derived.

S0=ej (6) αj=S1・S0 - 1 (7) α2j=S2・S0 -1 (8) α3j=S3・S0 -1 (9) 〓 〓 〓 α(M-1)j=SM-1・S0 -1 (10) ここにおいて、S0〜SM-1をGF(28)の条件でα
の羃乗で表現し、それぞれをαx0〜αxn-1とする
と、上記(7)〜(10)式はそれぞれ次式の如くなる。な
お、この条件において、α-x=α255-xである。
S 0 =ej (6) α j =S 1・S 0 - 1 (7) α 2j =S 2・S 0 -1 (8) α 3j =S 3・S 0 -1 (9) 〓 〓 〓 α (M-1)j = S M-1・S 0 -1 (10) Here, S 0 ~ S M-1 is α under the condition of GF (2 8 )
Expressed as a power of , and let α x0 to α xn-1 , respectively, the above equations (7) to (10) become as shown in the following equations. Note that under this condition, α -x = α 255-x .

j=(255−χ0)+χ1 ……(11) 2j=(255−χ0)+χ2 ……(12) 3j=(255−χ0)+χ3 ……(13) 〓 〓 〓 (M−1)j=(255−χ0)+χM-1 ……(14) これらの式(11)〜(14)における加算は、255を
法とする加算、即ちmod255加算である。そして、
これらの式(11)〜(14)の関係が成立するj値が存
在した場合のみ、誤り位置jに対し、誤り情報ej
=S0を用いて訂正することができるのである。な
お、ここで、誤り情報ejは上記(6)式からS0として
求まり、また誤り位置jは(11)〜(14)式を演算す
ることによつて求まるものである。
j=(255−χ 0 )+χ 1 …(11) 2j=(255−χ 0 )+χ 2 …(12) 3j=(255−χ 0 )+χ 3 …(13) 〓 〓 〓 (M −1) j=(255−χ 0 )+χ M-1 (14) The addition in these equations (11) to (14) is addition modulo 255, that is, mod255 addition. and,
Only when there exists a j value that satisfies the relationships in equations (11) to (14), error information ej is calculated for error position j.
= S 0 can be used to correct it. Note that here, the error information ej is found as S 0 from the above equation (6), and the error position j is found by calculating equations (11) to (14).

以下、その構成および動作を第1図に示す本発
明の実施例により説明する。
The configuration and operation thereof will be explained below using the embodiment of the present invention shown in FIG.

送信側より送信されてきたN個のシンボルを有
する送信符号ブロツクAN-1、AN-2……、A2
A1、A0は、第1図に示す本発明の回路において、
受信入力端子1にA^N-1、A^N-2……A^2、A^1、A^0
順で入力され、M個のシンドローム演算回路、即
ちS0演算回路2、S1演算回路3、S2演算回路4、
……、SM-1演算回路5によつて上記(4)式で示すシ
ンドロームS0〜SM-1を演算する。
Transmission code blocks A N-1 , A N-2 ..., A 2 , having N symbols transmitted from the transmitting side
A 1 and A 0 are as follows in the circuit of the present invention shown in FIG.
A^ N-1 , A^ N-2 ...A^ 2 , A^ 1 , A^ 0 are input to the reception input terminal 1 in the order of M syndrome arithmetic circuits, that is, S0 arithmetic circuit 2, S 1 arithmetic circuit 3, S 2 arithmetic circuit 4,
..., the syndromes S 0 to S M-1 shown in the above equation (4) are calculated by the S M-1 calculation circuit 5.

なお、この中の、例えばS1を求める演算回路例
を第4図に示す。これは1段のシフトレジスタ1
10、ROM111、および排他的論理和回路1
12から成つている。シフトレジスタ110およ
び排他的論理和回路112はそれぞれ8ビツト分
を並列に処理する。またROM111は、シフト
レジスタ110の出力(8ビツト)でアドレス指
定のできる256のメモリアドレスを有し、各メモ
リアドレス当り8ビツトのデータを格納できる容
量を有する。シフトレジスタ110の生力により
指定されるROM111のメモリアドレスからデ
ータが読み出され、回路112により入力端子1
からの入力データとの排他的論理和がとられ、こ
れがシフトレジスタ110に読み込まれる。任意
の8ビツトの2進数A′で指定されるROM111
のメモリアドレスにαA′(但し、αA′はこの2進数
A′に対応する符号ベクトルと原始元αとの積と
する)を書き込んでおくと、ROM111はα倍
の乗算器として動作する。かくて、最初にシフト
レジスタ110をリセツトし、入力データを前述
のようにA^N-1、A^N-2、……A^0の順序で次々に回
路112を介して入力すると、A^0が入力された
時点で、シフトレジスタ110の内容は、 (……((A^N-1α+A^N-2)α+A^N-3)α+……+
A^1)α+A^0=αN-1A^N-1+αN-2A^N-2αN-3A^N-3+…
…+αA^1+A^0となり、求めるシンドロームS1
なる。ROM111の内容を、上述のαのかわり
にα2、α3、……αM-1の相当するものとすることに
より、同様な回路を用いてそれぞれシンドローム
S2、S3、……SM-1を演算する回路が得られ、また
ROM111を除きシフトレジスタ110の内容
をそのまま回路112にフイードバツクすること
によりシンドロームS0を演算する回路が得られ
る。
Incidentally, an example of an arithmetic circuit for calculating, for example, S 1 is shown in FIG. 4. This is a 1-stage shift register 1
10, ROM111, and exclusive OR circuit 1
It consists of 12. Shift register 110 and exclusive OR circuit 112 each process 8 bits in parallel. The ROM 111 has 256 memory addresses that can be addressed by the output (8 bits) of the shift register 110, and has a capacity that can store 8 bits of data in each memory address. Data is read from the memory address of the ROM 111 specified by the output of the shift register 110, and the circuit 112 reads the data from the input terminal 1.
The exclusive OR is performed with the input data from , and this is read into the shift register 110 . ROM111 specified by arbitrary 8-bit binary number A'
αA′ (however, αA′ is this binary number
When the product of the code vector corresponding to A' and the primitive element α) is written, the ROM 111 operates as an α-times multiplier. Thus, if we first reset the shift register 110 and input the input data through the circuit 112 in the order of A^ N-1 , A^ N-2 , ...A^ 0 as described above, then A When ^ 0 is input, the contents of the shift register 110 are (...((A^ N-1 α+A^ N-2 ) α+A^ N-3 ) α+...+
A^ 1 )α+A^ 0N-1 A^ N-1N-2 A^ N-2 α N-3 A^ N-3 +…
…+αA^ 1 +A^ 0 , resulting in the desired syndrome S 1 . By setting the contents of the ROM 111 to those corresponding to α 2 , α 3 , ... α M-1 instead of α described above, each syndrome can be created using a similar circuit.
A circuit that calculates S 2 , S 3 , ...S M-1 is obtained, and
By excluding the ROM 111 and feeding back the contents of the shift register 110 as is to the circuit 112, a circuit for calculating the syndrome S0 can be obtained.

このようにして得られたシンドロームS0〜SM-1
は、上記ROM6〜9にアドレスとして入力さ
れ、上記(11)〜(14)式で示した指数255−χ0、χ1
χ2……、χM-1をそれぞれ算出する。このROM6
〜9は、一種の変換回路であつて、アドレスとし
て入力されたシンドロームS0〜SM-1のメモリロケ
ーシヨンに固定データとして上記指数255−χ0
χ1、χ2、……χM-1に相当するデータが記憶されて
おり、S0〜SM-1がアドレスとして入力されること
により上記指数255−χ0、χ1、χ2、……χM-1が出
力されるものである。そして、このように出力さ
れた255−χ0、χ1、χ2、……χM-1をmod255加算回
路10〜13に供給し、上記(11)〜(14)式に示す
mod255加算を行う。即ち、mod255加算回路10
においては、ROM6からの255−χ0とROM7か
らのχ1とを受信して、上記(11)式に示すmod255加
算を行つて、その結果jを算出し、このjを誤り
位置(j)比較判定回路14に供給し、mod255加算
回路11においては、ROM6からの255−χ0
ROM8からのχ2とを受信して、上記(12)式に示す
mod255加算を行つて2jを算出し、この2jを上記
誤り位置(j)比較判定回路14に供給し、以下同様
にして、mod255加算回路13においては、
ROM6からの255−χ0とROM9からのχM-1とを
受信して、上記(14)式に示すmod255加算を行
つて(M−1)jを算出し、この(M−1)jを
誤り位置(j)比較判定回路14に供給する。このよ
うにして算出され、上記(11)〜(14)式に対応する
j、2j、3j、……、(M−1)jを供給された誤
り位置(j)比較判定回路14は、これらの情報から
誤り位置情報jを算出する。この回路は単に上記
情報からjを算出するのみならず、2j、3j、…
…、(M−1)jがそれぞれjに対して2倍、3
倍、……(M−1)倍の関係にあつて、それぞれ
が同じ誤り位置jを示していることも確認するも
のである。このような回路は通常の論理回路の組
み合せで容易に実現することもできるし、またマ
イクロコンピユータ等を利用しても容易に実現す
ることができるものである。そして、この誤り位
置(j)比較判定回路14からの誤り位置jの出力信
号は誤り訂正実行回路16に供給され、その誤り
位置を通知する。
The syndrome S 0 ~ S M-1 obtained in this way
are input as addresses to the above ROMs 6 to 9, and the exponents 255−χ 0 , χ 1 , shown in the above equations (11) to (14) are
χ 2 ..., χ M-1 are calculated respectively. This ROM6
~ 9 is a kind of conversion circuit, which inputs the above exponent 255− χ0 ,
Data corresponding to χ 1 , χ 2 , ... χ M-1 is stored, and by inputting S 0 to S M-1 as addresses, the above indices 255−χ 0 , χ 1 , χ 2 , ...χ M-1 is what is output. Then, the 255−χ 0 , χ 1 , χ 2 , ...χ M-1 output in this way is supplied to the mod255 addition circuits 10 to 13, and the results are expressed as shown in equations (11) to (14) above.
Perform mod255 addition. That is, mod255 addition circuit 10
, receives 255−χ 0 from ROM6 and χ 1 from ROM7, performs mod255 addition shown in equation (11) above, calculates the result j, and uses this j as the error position (j). It is supplied to the comparison/determination circuit 14, and in the mod255 addition circuit 11, the 255−χ 0 and
χ 2 from ROM8 is received and shown in equation (12) above.
Perform mod255 addition to calculate 2j, supply this 2j to the error position (j) comparison judgment circuit 14, and in the same manner, in the mod255 addition circuit 13,
Receive 255-χ 0 from ROM6 and χ M-1 from ROM9, perform mod255 addition shown in equation (14) above to calculate (M-1)j, and calculate (M-1)j is supplied to the error position (j) comparison/judgment circuit 14. The error position (j) comparison/judgment circuit 14, which is thus calculated and supplied with j, 2j, 3j, ..., (M-1)j corresponding to the above equations (11) to (14), Error position information j is calculated from the information. This circuit not only calculates j from the above information, but also calculates 2j, 3j,...
..., (M-1)j is twice and 3 for j, respectively.
It is also confirmed that there is a relationship of times, . . . (M-1) times, and that each indicates the same error position j. Such a circuit can be easily realized by combining ordinary logic circuits, or by using a microcomputer or the like. The output signal of the error position j from the error position (j) comparison/judgment circuit 14 is supplied to the error correction execution circuit 16 to notify the error position.

上記シンドロームゼロ判定回路15は、上記
S0、S1、S2、……、SM-1演算回路2〜5からのシ
ンドロームS0〜SM-1を受信し、これらのシンドロ
ームS0〜SM-1がすべてゼロであつて受信した符号
ブロツクに全く誤りがないか、S0〜SM-1がすべて
ゼロではないが1個でもゼロがあつて受信した符
号ブロツクに2個以上の誤りがあるのかを検出す
る回路であつて、前者、即ちS0〜SM-1がすべてゼ
ロであつて受信した符号ブロツクに全く誤りがな
い場合には、一方の出力リード線400上に誤り
なし信号を出力し、この誤りなし信号を誤り訂正
実行回路16に伝達し、符号ブロツク中に誤りが
ないことを通知する。また、後者、即ちS0〜SM-1
がすべてゼロではないが1個でもゼロがあつて受
信した符号ブロツクの中に2個以上の誤りがある
場合には、他方の出力リード線500上に誤り2
個以上信号を出力し、この誤り2個以上信号を誤
り訂正実行回路16に伝達し、符号ブロツク中に
誤りが2個以上あることを通知する。なお、誤り
が1個の場合には、(1)式から(4)式の関係からS0
SM-1はすべてゼロでなく、それぞれの値を取り(11)
〜(14)式より決められるjはすべて等しい値と
なり、これは上記誤り位置(j)比較判定回路14に
よつて比較範囲されるj値として算出され、誤り
訂正実行回路16に供給されて判断されるのであ
る。そして、この時同時に、S0演算回路2から供
給されるS0を上記(6)式に示すように誤りejとして
用い、上記誤り位置jのシンボルを訂正して、出
力リード線18上に出力データとして訂正した符
号ブロツクを送出するのである。なお、この時、
他方の出力リード線17にはエラーフラグは送出
されず、リード線18から送出された符号ブロツ
クには誤りがないことを示している。また、符号
ブロツクに誤りが全くなく、上記シンドロームゼ
ロ判定回路15からリード線400を介して誤り
訂正実行回路16に誤りなし信号が供給された場
合には、入力端子1から供給された符号ブロツク
は誤り訂正実行回路16を介して、直接、リード
線18から出力され、この時にも同時にエラーフ
ラグは送出されない。更に、符号ブロツク中に誤
りが2個以上あつて、上記シンドロームゼロ判定
回路15からリード線500を介して誤り訂正実
行回路16に誤り2個以上信号が供給された場合
には、誤り訂正は行われず、入力端子1から供給
された符号ブロツクは誤りを含んだまま誤り訂正
実行回路16を介して、直接、リード線18から
出力されると同時に、シンドロームゼロ判定回路
15からリード線500を介して供給される誤り
2個以上信号によつて判定し、エラーフラグをリ
ード線17に送出し、符号ブロツク中に誤りがあ
ることを知らせる。
The syndrome zero determination circuit 15
S0 , S1 , S2 , . _ This is a circuit that detects whether there are any errors in the received code block, or if S 0 to S M-1 are not all zero but there is at least one zero, and there are two or more errors in the received code block. In the former case, that is, when S 0 to S M-1 are all zero and there is no error in the received code block, an error-free signal is output on one output lead 400, and this error-free signal is output on one output lead 400. A signal is transmitted to the error correction execution circuit 16 to notify that there are no errors in the code block. Also, the latter, that is, S 0 ~ S M-1
If the received code block has at least one zero, but not all zeros, and there are two or more errors in the received code block, error 2 will be sent on the other output lead 500.
This signal is transmitted to the error correction execution circuit 16 to notify that there are two or more errors in the code block. In addition, if there is one error, S 0 ~
S M-1 is not all zero, but takes each value (11)
The values of j determined from equations (14) to (14) are all equal, and this is calculated as the j value to be compared by the error position (j) comparison and judgment circuit 14, and is supplied to the error correction execution circuit 16 for judgment. It will be done. At this time, S 0 supplied from the S 0 arithmetic circuit 2 is used as the error ej as shown in equation (6) above, the symbol at the error position j is corrected, and the symbol is output on the output lead wire 18. The corrected code block is sent out as data. Furthermore, at this time,
No error flag is sent out on the other output lead 17, indicating that the code block sent out from lead 18 is error-free. Further, when the code block has no errors and a no-error signal is supplied from the syndrome zero determination circuit 15 to the error correction execution circuit 16 via the lead wire 400, the code block supplied from the input terminal 1 is The error flag is output directly from the lead wire 18 via the error correction execution circuit 16, and at this time, no error flag is sent out at the same time. Further, if there are two or more errors in the code block and a signal of two or more errors is supplied from the syndrome zero determination circuit 15 to the error correction execution circuit 16 via the lead wire 500, error correction is not performed. Instead, the code block supplied from the input terminal 1 is directly output from the lead wire 18 via the error correction execution circuit 16 while containing errors, and at the same time is outputted from the syndrome zero determination circuit 15 via the lead wire 500. It is determined based on two or more error signals supplied, and an error flag is sent to the lead line 17 to notify that there is an error in the code block.

以上説明したように、本発明によれば、N個の
シンボルで1個の符号ブロツクをなすリード・ソ
ロモン符号内に生じた1個の誤りを訂正する方式
において、検査用シンボルの数M個までのすべて
のシンドロームの情報を有効に利用し、かつ、簡
潔な回路構成により目的を達成する信頼性の高い
復号方式を提供することができる。これにより信
頼性、経済性の向上を達成できる。また、符号ブ
ロツク内に2シンボル以上の誤りを検出したらエ
ラーフラグを送出し、符号ブロツク内に誤りがあ
ることを知らせている。
As explained above, according to the present invention, in a method for correcting one error occurring in a Reed-Solomon code in which N symbols form one code block, up to M check symbols can be used. It is possible to provide a highly reliable decoding method that effectively utilizes information on all the syndromes and achieves the objective with a simple circuit configuration. This makes it possible to improve reliability and economy. Furthermore, if two or more symbols of errors are detected in a code block, an error flag is sent to notify that there is an error in the code block.

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

第1図は本発明の一実施例を示すブロツク図、
第2図は本実施例で用いる和の演算を説明するた
めの図、第3図1は本実施例で用いる演算の符号
多項式を説明するための図、第3図2は本実施例
で用いる積の演算を説明するための図、第4図は
本実施例のシンドローム演算回路の内部回路例を
示す図である。 2〜5……シンドローム演算手段、6〜9,1
0〜13……指数算出手段、14……誤り位置(j)
検出手段、15……シンドロームゼロ判定回路、
16……誤り訂正実行手段。
FIG. 1 is a block diagram showing one embodiment of the present invention;
Figure 2 is a diagram for explaining the sum operation used in this example, Figure 3 1 is a diagram for explaining the sign polynomial for the operation used in this example, and Figure 3 2 is used in this example. FIG. 4, which is a diagram for explaining the product calculation, is a diagram showing an example of the internal circuit of the syndrome calculation circuit of this embodiment. 2-5... Syndrome calculation means, 6-9, 1
0 to 13... Index calculation means, 14... Error position (j)
Detection means, 15...Syndrome zero determination circuit,
16...Error correction execution means.

Claims (1)

【特許請求の範囲】 1 M個(但しMは正の整数)の1次多項式の積
で得られる生成多項式から生成され、N個のシン
ボルで構成された符号長N(但しNはMよりも大
きい正の整数)のリード・ソロモン符号を受信
し、N個の各々のシンボルを受信する毎に予めメ
モリに書き込まれた原始元ηi(但しηi=αi、i=
0、……、M−1、iに対してシンドロームS0
……Si、……SM-1が与えられる。)を受信シンボ
ルと乗算し、これと次の受信シンボルとの排他的
論理和をとつてシフトレジスタに蓄積すると共
に、その出力を分岐して前記メモリに戻し、この
操作をN個のシンボル全てに対して行い、前記シ
フトレジスタよりシンドローム演算出力を引き出
すシンドローム演算手段と、 シンドロームをガロア体GF(2y)(但しyは正
の整数)を条件として原子元αの羃乗で表現して
それぞれの対応した指数を演算する指数算出手段
と、 上記演算手段から得られたシンドロームに対応
する原子元αの羃指数のmod2y−1加算を行いこ
の加算結果が存在するとき、これを誤り位置jと
して検出する誤り位置検出手段と、 上記シンドローム演算手段から得られたシンド
ロームと、上記誤り位置検出手段から得られた誤
り位置jとを受けて、誤り訂正を実行する誤り訂
正実行手段と、 を有することを特徴とするリード・ソロモン符号
復号方式。
[Claims] 1. Code length N (where N is greater than M) generated from a generator polynomial obtained by the product of M (where M is a positive integer) first-order polynomials and made up of N symbols. A large positive integer) Reed-Solomon code is received, and each time each N symbol is received, the primitive element η i (where η ii , i=
Syndrome S 0 for 0,...,M-1,i,
...S i , ...S M-1 are given. ) is multiplied by the received symbol, exclusive ORed with this and the next received symbol, and stored in the shift register, and the output is branched and returned to the memory, and this operation is applied to all N symbols. syndrome calculation means for extracting the syndrome calculation output from the shift register ; An exponent calculation means for calculating the corresponding exponent, and mod2 y −1 addition of the power exponent of the atomic element α corresponding to the syndrome obtained from the above calculation means, and when this addition result exists, it is used as the error position j. Error position detection means for detecting an error position; and error correction execution means for performing error correction upon receiving the syndrome obtained from the syndrome calculation means and the error position j obtained from the error position detection means. A Reed-Solomon code decoding method characterized by:
JP57114281A 1982-06-30 1982-06-30 Read solomon code decoding system Granted JPS595759A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP57114281A JPS595759A (en) 1982-06-30 1982-06-30 Read solomon code decoding system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP57114281A JPS595759A (en) 1982-06-30 1982-06-30 Read solomon code decoding system

Publications (2)

Publication Number Publication Date
JPS595759A JPS595759A (en) 1984-01-12
JPH0133055B2 true JPH0133055B2 (en) 1989-07-11

Family

ID=14633900

Family Applications (1)

Application Number Title Priority Date Filing Date
JP57114281A Granted JPS595759A (en) 1982-06-30 1982-06-30 Read solomon code decoding system

Country Status (1)

Country Link
JP (1) JPS595759A (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS60246125A (en) * 1984-05-22 1985-12-05 Trio Kenwood Corp Decoder for bch code
JPS63317837A (en) * 1987-10-09 1988-12-26 Sanyo Electric Co Ltd Data processor

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5432240A (en) * 1977-08-15 1979-03-09 Ibm Error correcting unit
JPS5778608A (en) * 1980-10-31 1982-05-17 Matsushita Electric Ind Co Ltd Decoding method of reed-solomon code

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5432240A (en) * 1977-08-15 1979-03-09 Ibm Error correcting unit
JPS5778608A (en) * 1980-10-31 1982-05-17 Matsushita Electric Ind Co Ltd Decoding method of reed-solomon code

Also Published As

Publication number Publication date
JPS595759A (en) 1984-01-12

Similar Documents

Publication Publication Date Title
US4099160A (en) Error location apparatus and methods
US5440570A (en) Real-time binary BCH decoder
EP0114938A2 (en) On-the-fly multibyte error correction
EP0167627A1 (en) Method and apparatus for decoding error correction code
EP0233075B1 (en) Method and apparatus for generating error detection check bytes for a data record
US7392461B2 (en) Decoding for algebraic geometric code associated with a fiber product
EP0112988A2 (en) Syndrome processing for multibyte error correcting systems
JPS63244935A (en) Method and system for detecting and correcting errors
CN101814922A (en) Multi-bit error correcting method and device based on BCH (Broadcast Channel) code and memory system
EP0061345A2 (en) Processing circuits for operating on digital data words which are elements of a Galois field
EP0249982B1 (en) Decoder
WO1997000559A1 (en) Dedicated alu architecture for 10-bit reed-solomon error correction module
EP0621698A2 (en) Error correction method including erasure correction, and apparatus therefore
JPS6316929B2 (en)
JPH10112659A (en) Error correction decoding device
JP3245290B2 (en) Decoding method and device
JPH10112660A (en) Error decoding method and device utilizing reed solomon code
KR100281946B1 (en) Syndrome calculation device
JPH0133055B2 (en)
JPS6217256B2 (en)
JPH10322226A (en) Reed solomon decoding method
JP2694794B2 (en) Error correction processing method
KR100239798B1 (en) Error correction method in the reproduction of digital signal and apparatus therefor
JPH0636286B2 (en) Error correction method and apparatus
KR950008485B1 (en) Unierror correction r-s decoder