JPS6146623A - Coding and decoding method - Google Patents
Coding and decoding methodInfo
- Publication number
- JPS6146623A JPS6146623A JP59168237A JP16823784A JPS6146623A JP S6146623 A JPS6146623 A JP S6146623A JP 59168237 A JP59168237 A JP 59168237A JP 16823784 A JP16823784 A JP 16823784A JP S6146623 A JPS6146623 A JP S6146623A
- Authority
- JP
- Japan
- Prior art keywords
- code
- alpha
- encoding
- bit
- polynomial
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Detection And Correction Of Errors (AREA)
- Error Detection And Correction (AREA)
Abstract
Description
【発明の詳細な説明】
〔発明の技術分野〕
この発明は誤り訂正符号に関する発明であり、特にその
符号化復号化方法に関するものである。DETAILED DESCRIPTION OF THE INVENTION [Technical Field of the Invention] The present invention relates to an error correction code, and particularly relates to an encoding/decoding method thereof.
第1図は2重符号の復号化を行う復号器の説明図である
。図で(1)は情報入力端子、(2)は出力端子、(3
)はC1復号器、(4)はC2復号器である。この例で
はC1は(n + 、に+ 、 d I)2元符号、(
例えばCRC(Cyc 1 i c Redundan
cy Check)符号C2ハ(n2.に2.d2)。FIG. 1 is an explanatory diagram of a decoder that decodes double codes. In the figure, (1) is the information input terminal, (2) is the output terminal, and (3
) is a C1 decoder, and (4) is a C2 decoder. In this example, C1 is (n + , ni + , d I) binary code, (
For example, CRC (Cyc Redundant)
cy Check) code C2 (n2. to 2.d2).
R3(Reed−3olomon)符号で符号化されて
おり、入力端子から入力された情報は2元符号のシリア
ルシフトレジスターによってシンドローム計算がされ誤
り検出、又は訂正されてC2復号器へ出力されそこで再
度誤り訂正されて出力端子(2)より出力される。ここ
で(n 、 k 、 d) 符号とは符号長n、情報
記号数k、最小距11Jlidの線形符号である。この
場合C1符号は2元符号であるので誤り検出だけにつか
うのならn+−に+段のシフトレジスターで構成できる
が、2元符号であるのでR8符号等に比べるとハードウ
ェアが複雑になる割には訂正できる誤りビット数は少く
特にバースト性の誤りには効果的でない。The information input from the input terminal is encoded with R3 (Reed-3 olomon) code, and the syndrome is calculated by a binary code serial shift register, error detected or corrected, and output to the C2 decoder, where the error is again detected. The corrected data is output from the output terminal (2). Here, the (n, k, d) code is a linear code with code length n, number of information symbols k, and minimum distance 11Jlid. In this case, the C1 code is a binary code, so if it is used only for error detection, it can be configured with n+- and + stage shift registers, but since it is a binary code, the hardware is more complex than an R8 code etc. Since the number of error bits that can be corrected is small, it is not particularly effective against burst errors.
第2図は別の従来例で15)はRS復号器でC1符号を
用いた例である。この場合は符号C1とC2のガロア体
GF(2m)を同じ体にしておけばシンドローム演算回
路はじめかなりの部分のハードウェアを共通化できる特
徴があった。ところがこの場合、C1符号を検出だけに
つかおうとしても旧−に1段のシフトレジスターでは構
成できずほぼシンドローム計算回路と同程度のハードウ
ェアが必要であつた。FIG. 2 shows another conventional example in which 15) uses a C1 code in an RS decoder. In this case, if the Galois fields GF (2m) of codes C1 and C2 were made the same field, a considerable part of the hardware including the syndrome calculation circuit could be made common. However, in this case, even if an attempt was made to use the C1 code only for detection, it could not be constructed with a single-stage shift register as in the old case, and required hardware of approximately the same level as a syndrome calculation circuit.
ここで、2元符号とGF(2m)上の符号が異なる一例
を示そう。Here, an example will be shown in which the binary code and the code on GF(2m) are different.
従来より知られているG F +21上の符号として、
たとえばCRCC(Cyclic Redundanc
y Check Code)がある。その−例として第
8図k、その符号化装置を示す。このCRCCの生成多
項式G1(x) は次式%式%
図において、(6)は情報データの入力端子(7)は、
コントロール信号の入力端子、[81+9+ GO)
fill (121圓05) (161119(+81
119) t20+ (22) U 0勾(至)は1ビ
ツトレジスタ、11JしD(支))は2を法とする1ビ
ツト加算回路額はANDゲート、轍はセレクタ、群は符
号の出力端子である。ここで、情報データをに1ビツト
とし、先頭のデータをに1−1
Ck+、x 、最後のデータをC+ (Ck+ 、
Ck+−+”3・。The conventionally known code on G F +21 is:
For example, CRCC (Cyclic Redundancy)
y Check Code). As an example, FIG. 8k shows the encoding device. The generating polynomial G1(x) of this CRCC is the following formula% formula% In the figure, (6) is the input terminal (7) of the information data,
Control signal input terminal, [81+9+ GO)
fill (121en05) (161119(+81
119) t20+ (22) U 0 slope (to) is a 1-bit register, 11J and D (branch)) is a 1-bit addition circuit modulo 2. The amount is an AND gate, the track is a selector, and the group is a sign output terminal. be. Here, the information data is 1 bit, the first data is 1-1 Ck+, x, and the last data is C+ (Ck+,
Ck+-+"3.
C1は係数で1またはO)と表現するとXの多項式と見
なすことができる。符号長をn1ビツトとするnl−に
+
と、情報データの多項式M (x)にX を乗じ、
これを生成多項式G1(x)で割ると
X” ”FJx)=Qx)G+(*狂R(x)・・(2
1となる。ここでQ (X)は商、R(x)は剰余であ
る。従って
n+ −に+
U (x) = x MX)+・R(X)・Q
(X)c I(X)・・・+31となりU (x)が符
号で上位に1ビツトが情報データ、下位n + −k
+ビットが検査データR(x)を表す。When C1 is expressed as a coefficient of 1 or O), it can be regarded as a polynomial of X. Multiply nl- with a code length of n1 bits by +, and multiply the information data polynomial M(x) by X,
Dividing this by the generator polynomial G1(x) gives
It becomes 1. Here, Q (X) is the quotient and R(x) is the remainder. Therefore, n+ − + U (x) = x MX)+・R(X)・Q
(X)c I(X)...+31, where U (x) is a sign, the upper 1 bit is information data, and the lower n + -k
The + bit represents test data R(x).
第8図ではn+−に+=16とした場合を示しており、
入力端子2からの信号が% I Nの間は、□□□のA
NDゲートが開き、1ビツトレジスタ+81 +91
GO) fill +121 Il& +15) (1
61uTr +181 +191 噛@ (231(2
41a C7)データと、加算回路□ 1131111
(7)出力により(2)式の除算が実行される。セレ
クタ(支)は、入力端子(6)からの情報データを選択
している。Figure 8 shows the case where +=16 for n+-,
While the signal from input terminal 2 is % I N, A of □□□
ND gate opens and 1 bit register +81 +91
GO) fill +121 Il& +15) (1
61uTr +181 +191 bite @ (231(2
41a C7) Data and addition circuit □ 1131111
(7) The division in equation (2) is executed based on the output. The selector (support) selects information data from the input terminal (6).
k1ビットの情報データが入力し終ると、入力端子(7
)からの信号が90″となりANDゲート(2)が閉じ
、次のn+ −k + (=16)ビットの聞咎レジス
タのデータが順次セレクタ例に送り出され、出力端子(
イ)に出力される。When the k1-bit information data has been input, the input terminal (7
) becomes 90'', the AND gate (2) closes, and the next n+ -k + (=16) bits of data in the listening register are sequentially sent to the selector, and the output terminal (
b) is output.
一例として旧=282.に+=216とし、情報データ
として’00000001“の8ビツトを繰り返し用い
たとすると、検査データR(x)は、
’ 0000100010111101”となる。As an example, old = 282. If +=216 and 8 bits of '00000001' are repeatedly used as information data, the test data R(x) becomes '0000100010111101'.
復号化する場合は、nビットの間入力端子(7)の信号
を11”として除算を実行し、誤りがなければ各レジス
タのデータはすべて50“となる。When decoding, division is performed by setting the signal at the input terminal (7) to 11'' for n bits, and if there is no error, all the data in each register becomes 50''.
以上のようにCRCCはビットシリアルで演算できると
いう特徴がある。As described above, CRCC has the feature that it can be calculated bit serially.
一方、従来より知られているGF (2m)上の符号と
しテReed−3o lomon符号(以下R8符号と
呼ぶ)がある。ここではCRCCと対応させるためにG
F(2)上で考える。符号長N、情報長k、最小距離り
の(ト)、k、D)R3符号として(29,27,8)
R3符号を例にとると、ビットシリアルに考えるとn
+=8XN、に+=8XKとなっている。(29,27
,8) R8符号の生成多項式G + (x)は
G1(x)= (x・a )=x 十a x
・H・・(4+で与えられる。ここでαはG F L2
+上の8次の原始多項式(たとえばx +x 十x +
x +1)の根である。On the other hand, a conventionally known code on GF (2m) is the Reed-3o Lomon code (hereinafter referred to as R8 code). Here, in order to correspond with CRCC, G
Consider F(2) above. Code length N, information length k, minimum distance (g), k, D) as R3 code (29, 27, 8)
Taking the R3 code as an example, when considered bit serially, n
+=8XN, and +=8XK. (29, 27
, 8) The generating polynomial G + (x) of the R8 code is G1(x) = (x・a) = x 10a x
・H・・(Given by 4+. Here α is G F L2
An 8th degree primitive polynomial on
x +1).
第4図にその符号化装置の一例を示す。図において、廁
は情報データの入力端子、(31)はコントロール信号
の入力端子、□□□(33)国はGF(2)上における
乗算器、(ト)■は8ビツトレジスタ、(ト)の8)は
8ビツトの2を法とする加算回路、(39)はANDゲ
ート、(4o)はセレクタt41)は符号の出力端子で
ある。清報データをM (x)とすると
xN・KM’(X)=Q’(x)G1(x)+R’(x
)・・・5]となl) U (X)が符号となる。演算
はGF(2)で行われるので、まずガロア体の元の表現
法について説明する。原始多項式X 十x +x 十x
−H=oの根をαとし、αを(00000010)と2
進数で表記すると、α、α 、・・・は以下のようにな
る。FIG. 4 shows an example of the encoding device. In the figure, 廀 is an input terminal for information data, (31) is an input terminal for control signals, □□□ (33) is a multiplier on GF (2), (g) ■ is an 8-bit register, (g) 8) is an 8-bit modulo-2 addition circuit, (39) is an AND gate, and (4o) is a selector t41) is a code output terminal. If the preliminary report data is M (x), then xN・KM'(X)=Q'(x)G1(x)+R'(x
)...5] l) U (X) is the sign. Since the calculation is performed using GF(2), the method of representing the Galois field element will be explained first. Primitive polynomial X 10x +x 10x
−H=o root is α, α is (00000010) and 2
When expressed in base numbers, α, α, . . . are as follows.
α 255−α8
この元の表現法を、ここでは「ベクトル表現」と呼、宗
ことにする。ベクトル表現の一覧を第1表に示す。また
、ベクトル表現を番号とした時の値の表を「対数表現」
と呼ぶことにする。α 255−α8 This original representation method will be referred to as "vector representation" here. A list of vector expressions is shown in Table 1. In addition, the table of values when the vector expression is a number is called "logarithmic expression".
I will call it.
以上のようなGF(2)上の元を用いて第4図の符号化
装置で符号化を行う。入力端子(30)から8ビットパ
ラレルの情報データが入力される。入力端子(31)か
らのコントロール信号は、情報データかにヶ入力される
まで11“になっており、乗算器(32) (331(
341と8ビツトレジスタ(ト)+37) 、加算回路
+36+ +38+により(5)式の除算が実行される
。ここで(32) C33) ’2Aiは入カデタにそ
れぞれα (−α)、α 、αを乗算する乗算器である
。セ1/クタ(40)は入力端子25からの情報データ
を選択し、出力端子(4℃へ出力する。Kヶの情報デー
タの除算が終了すると、入力端子(31)からのコント
ロール信号は”0“となり、8ビツトレジスタ!35)
((資)の出力をセレクタ85で選択し出力端子141
)へ出力する。Encoding is performed by the encoding apparatus shown in FIG. 4 using the elements on GF(2) as described above. 8-bit parallel information data is input from the input terminal (30). The control signal from the input terminal (31) remains at 11" until the information data is input, and the control signal from the multiplier (32) (331 (
341, an 8-bit register (t) +37), and addition circuits +36+ and +38+ execute the division in equation (5). Here, (32)C33)'2Ai is a multiplier that multiplies the input data by α (-α), α, and α, respectively. The controller (40) selects the information data from the input terminal 25 and outputs it to the output terminal (4 degrees Celsius).When the division of K pieces of information data is completed, the control signal from the input terminal (31) is " 0” and becomes an 8-bit register!35)
Select the output of ((capital) with the selector 85 and output terminal 141.
).
一例としてN=29.に=27とし情報データをすべて
C0(−oooooooi)とすると検査データR(x
)はα”5(=OO000011) 、 α (=O
OOOOO10)となる。As an example, N=29. = 27 and all information data is C0 (-ooooooooi), inspection data R(x
) is α”5 (=OO000011), α (=O
OOOOO10).
R’(i)をビットシリアルド並べたものはCRCCで
演算された検査データR(X) (=OOOO1000
10111101)と一致しない。The bit serial order of R'(i) is the inspection data R(X) calculated by CRCC (=OOOO1000
10111101) does not match.
このようk、従来G F (21上の符号とGF (2
”)上の符号をビットシリアルに並べたものは、符号長
、情報長が等しくても検査データは一致しなかった。In this way, k, conventional GF (21) and GF (2
”) When the above codes were arranged in bit serial, the test data did not match even if the code length and information length were the same.
従ってビットシリアルに符号化した符号をmビットパラ
レルに復号する、あるいはその逆を行う事は難しいとい
う欠点があった。またGF(2rrl)上のR8符号を
ビットシリアルでcheck j、 、mビットパラレ
ルで誤り訂正を行うことができないという欠点があった
。Therefore, there is a drawback that it is difficult to decode a bit-serial code into m-bit parallel code, or vice versa. Another drawback is that it is not possible to perform error correction on the R8 code on GF (2rrl) in bit serial and check j, , m bits in parallel.
本発明は従来のかかる不具合を除く目的でなされたもの
で01を検出だけに用いる時はn + −k +段のシ
フトレジスターで構成し、01訂正を実行する時にはC
2符号のハードウェアと共用できるような構成にしたも
ので訂正能力はR3符号と全くおなしでかつ、2元符号
と同じ手法で誤り検出を可能にしたところに特徴がある
。The present invention has been made with the aim of eliminating this conventional problem.When 01 is used only for detection, it is composed of an n+-k+ stage shift register, and when executing 01 correction, it is composed of a shift register of n+-k+ stages.
It has a structure that can be used in common with hardware for binary codes, and its correction ability is completely the same as that of R3 codes, and it is characterized by being able to detect errors using the same method as binary codes.
以下、この発明の一実施例を説明する。 An embodiment of this invention will be described below.
まずC1符号としてG F +21上における(282
、216)二元符号とGF(2)上における(29,
27.8) R8符号について説明する。それぞれの
生成多項式%式%
(7)式の右辺第一項(x +1)が(8)式の右辺第
一項(x+1)に対応し、(7)式の右辺第二項(x8
−1−x’+x8+x2+1)が(8)式の右辺第二項
(X十α8)に対応している。つまりG F +21上
の(7)式とGF(28)の(8)式は同じものとみな
すことができる。これは(7)式の右辺第一項はパリテ
ィを表し、第二項は(8)式のαの原始多項式であるこ
とから理解することができる。この符号をビットシリア
ルに符号化する装置を第5図k、8ビツトパラレルに符
号化する装置を第6図に示す。まず、ビットシリアルに
符号化する装置について説明する。第5図において、(
42は情報データ入力端子、(43)はコントロール信
号の入力端子、(441C45) (4n (49)
(51) (52) U)EA (55) 156+
U) +601 (G21 (1(49) C65)
ハエビットレジスタ、1461 f4a (5fll
(57) 691 (fill +66)は2を法とす
る1ビツト加算器、暁はANDゲート、(68)はセレ
クタ、(69)は符号の出力端子である。入力端子(4
’Zrの情報データ、入力端子(43)のコントロール
信号は、第8図に対応するものと同じものを用いる。First, as a C1 code, (282
, 216) on binary code and GF(2) (29,
27.8) Explain R8 code. The first term (x + 1) on the right side of equation (7) corresponds to the first term (x + 1) on the right side of equation (8), and the second term (x8
-1-x'+x8+x2+1) corresponds to the second term (X10α8) on the right side of equation (8). In other words, equation (7) on G F +21 and equation (8) on GF (28) can be considered to be the same. This can be understood from the fact that the first term on the right side of equation (7) represents parity, and the second term is the primitive polynomial of α in equation (8). An apparatus for bit-serial encoding of this code is shown in FIG. 5k, and an apparatus for encoding this code in 8-bit parallel is shown in FIG. First, a device for bit serial encoding will be explained. In Figure 5, (
42 is an information data input terminal, (43) is a control signal input terminal, (441C45) (4n (49)
(51) (52) U)EA (55) 156+
U) +601 (G21 (1(49) C65)
fly bit register, 1461 f4a (5fll
(57) 691 (fill +66) is a 1-bit adder modulo 2, dawn is an AND gate, (68) is a selector, and (69) is a code output terminal. Input terminal (4
The information data of Zr and the control signal of the input terminal (43) are the same as those shown in FIG.
(282、216)二元符号における検査データは“1
011100110111000“となる。(282, 216) The test data in the binary code is “1”
011100110111000".
一方、第6図において、aO)は情報データの入力端子
、C1)はコントロール信号の入力端子、ff21 (
73) (7Φはそれぞれα 、α 、αを乗算器、C
5)(資)は8ビツトレジスタ、(76)C781は2
を法とする8ビツト加算器、ff9)はANDゲート、
(帥はセレクタ、+76)は出力端子である。入力端子
(70)の情報データ、入力端子−)のコントロール信
号は、第4図に対応するものと同じものを用いる。(2
9,27)R3符号における検査データは、α 、α
となる。α =ゝ10111001“α182=’
10111000”であるので(29,27)R3符号
をMSB側からビットシリアルに並べたものは第6図で
求めたものと完全に一致する。On the other hand, in FIG. 6, aO) is an input terminal for information data, C1) is an input terminal for control signals, and ff21 (
73) (7Φ is α , α , α multiplier, C
5) (capital) is an 8-bit register, (76) C781 is 2
8-bit adder modulo, ff9) is an AND gate,
(Head is a selector, +76) is an output terminal. The information data of the input terminal (70) and the control signal of the input terminal (-) are the same as those corresponding to FIG. 4. (2
9,27) The test data in R3 code are α, α
becomes. α =ゝ10111001"α182='
10111000'', the (29, 27) R3 code arranged bit serially from the MSB side completely matches the one obtained in FIG.
次に復号器について説明する。受信符号に誤りがあるか
どうかのみを検査する場合は、第5図、第6図で検査デ
ータまで含めて除算を行い、各レジスタのデータがオー
ル10“になっているかどうかをチェックすれば良い。Next, the decoder will be explained. If you only want to check whether there is an error in the received code, you can perform division including the test data in Figures 5 and 6, and check whether the data in each register is all 10''. .
第7図は復号化回路の実施例で(1)は情報入力端子、
(2)は情報出力端子、(811はシンドロームSO計
算回路、唖はシンドローム88計算回路、匈)は除算回
路、(841は対数ROMメモリー、(851は178
倍係数器、(86)は誤り位置レジスター、□□□は誤
りパターンレジスター、(図は誤り訂正回路、(8印は
遅延回路、画はS4シンドロ一ムチエツク回路、+91
1は誤り検出端子。FIG. 7 shows an example of a decoding circuit, in which (1) is an information input terminal;
(2) is the information output terminal, (811 is the syndrome SO calculation circuit, 唖 is the syndrome 88 calculation circuit, 匈) is the division circuit, (841 is the logarithm ROM memory, (851 is the 178
Multiplier, (86) is the error position register, □□□ is the error pattern register, (the figure is the error correction circuit, (8 mark is the delay circuit, the picture is the S4 syndromic check circuit, +91
1 is an error detection terminal.
ここで符号C+ 、C2のパラメータを(10,8,8
) 、 (10、7、4)とする。Here, the parameters of code C+ and C2 are (10, 8, 8
) , (10, 7, 4).
従来の方法ではC1復号のシンドローム計算は1=O
ここでαは原始多項式x 十x 十x +x +1=O
の根である。In the conventional method, the syndrome calculation for C1 decoding is 1=O, where α is the primitive polynomial x 10x 10x +x +1=O
It is the root of
C2復号のシンドロームは SO=Σri i=0 9.1 Sl−Σr1α i=。C2 decoding syndrome is SO=Σri i=0 9.1 Sl−Σr1α i=.
従ってシンドローム計算回路So、S+は共用できる。Therefore, the syndrome calculation circuits So and S+ can be shared.
しかしこれではCRCのように2元符号を01符号に用
いてシリアルのシフトレジスターで簡単に符号化復号化
できるメリットはなくなる。2元のシフトレジスターで
GF(2m)の元を生成し、且その元が符号C2の元と
共通になるように工夫することによりC1符号を2元の
符号のように又、R3符号のように符号化復号化するこ
とが本発明の目的である。C1を2元の符号とし、生成
多項式としてG (x)= (x +t) (x 十x
十x +x +1)を選ぶとこれはガロア体GF(2
m)の上での生成多項式Qx)−(X+1) (X十α
)を選んだことになるから、C2復号のシンドローム演
算にS(α)、S(α)を含むように設計すればCI
、C2のシンドローム演算回路i i+l i
+l 力。However, this eliminates the advantage of using a binary code as the 01 code like CRC, which allows easy encoding and decoding with a serial shift register. By generating the element of GF(2m) with a binary shift register and devising a way to make the element common to the element of code C2, the C1 code can be made like a binary code or like an R3 code. It is an object of the present invention to encode and decode the data. Let C1 be a binary code, and use the generator polynomial as G (x)= (x +t) (x + x
If we choose 10x +x +1), this becomes Galois field GF (2
Generator polynomial Qx)-(X+1) (X0α
), so if you design the syndrome calculation for C2 decoding to include S(α) and S(α), CI
, C2 syndrome calculation circuit i i+l i
+l power.
を共用できる。C2符号の根α 、α 、αC1の根
を含むようにするためにはそれぞれの根のαの巾乗の差
が等間隔で並ぶようにすればよい。can be shared. In order to include the roots α, α, and αC1 of the C2 code, the differences in the powers of α of the respective roots may be arranged at equal intervals.
即ち、今の場合はd=8だから例えばC2符号は根α
、α 、α、C1符号は根α、αをもつようにすればよ
い。That is, in this case, d=8, so for example, the C2 code has the root α
, α, α, C1 code may have roots α, α.
従ってC2符号のシンドローム演算は
So=Σri
i=0
のはすべて原始光になりうるからである。そのなかから
2元符号の生成多項式になりうるものをC1符号の生成
多項式に選べばよい。今の場合、C1のRS符号として
の生成多項式は
G(x)= (x十α ) (x+α )でβ;α を
新しい原始光とみれば
G(x)= (x+β )(x十β )でR3符号の生
成多項式になることがわかる。又通常のR3符号は2元
で生成多項式を表現できない。上の例は2元で表現でき
る特殊な例であることが理解できよう。Therefore, in the C2 code syndrome calculation, all So=Σri i=0 can be primitive light. Among them, one that can be a generator polynomial for a binary code may be selected as a generator polynomial for a C1 code. In this case, the generating polynomial as the RS code for C1 is G(x) = (x0α) (x+α) and β; if α is considered a new primitive light, G(x) = (x+β) (x1β) It can be seen that this becomes the generating polynomial of the R3 code. Further, a normal R3 code cannot express a generator polynomial using two elements. It should be understood that the above example is a special case that can be expressed using two elements.
C2復号化を従来のパラレル演算で実行する方法を説明
しよう。Let us explain how to perform C2 decoding using conventional parallel operations.
So、Ssを用いて1エラーを訂正する場合、5o=e
i、5s=ei (α8) iSOパターンは誤りパタ
ーンを示している。誤り位置αi を求める。When correcting one error using So, Ss, 5o=e
i, 5s=ei (α8) The iSO pattern shows an error pattern. Find the error position αi.
、= Ss/So =a81
故に
i” (t/s) 10gctx
より誤り位置を求める。但し、10gctX はGF(
28)の原始光αを底とする対数である。Xを入カバタ
ーンとし10gαX を出力値として出力する。対応表
は表1を対数表現したもので与えられる。ROMメモリ
ーへはベクトル表現がアドレスパターンとして入力され
内容10gαX が出力される。, = Ss/So = a81 Therefore, find the error position from i'' (t/s) 10gctx. However, 10gctX is GF (
28) is the logarithm with the base of the primitive light α. Let X be the input pattern and output 10gαX as the output value. The correspondence table is given by logarithmically expressing Table 1. A vector representation is input to the ROM memory as an address pattern, and the contents 10gαX are output.
第7図で情報入力端子(1)から入力された情報はSo
、Ssシンドローム計算回路+8]) 、 侶21でそ
れぞれ計算されガロア体の除算回路偶)へ入力されx
= Ss/S。In Fig. 7, the information input from the information input terminal (1) is
, Ss syndrome calculation circuit + 8]), are respectively calculated by 21 and input to the Galois field division circuit (even) x
= Ss/S.
がガロア体GF(2)上で実行される。値Xは対数RO
Mで変換され更に係数器で(1/8)倍されて誤り位数
になり(861のレジスターにラッチされる。一方誤り
パターンはSOレジスターから啼のレジスターにラッチ
され遅延回路曽に畜積されていた情報は訂正回路(88
1で訂正され、さらにS4シンドロ一ム再チエツク回路
で正しい訂正であったかどうかを確認して正しければ出
力端子(2)より情報を出力し、誤りが検出されれば検
出端子(91)より検出情報を出力する。is executed on the Galois field GF(2). The value X is logarithm RO
It is converted by M and then multiplied by (1/8) by a coefficient unit to become an error order (latched in register 861. On the other hand, the error pattern is latched from register SO to register 861 and accumulated in delay circuit So. The information that was stored is sent to the correction circuit (88
1, and the S4 syndrome recheck circuit checks whether the correction was correct. If correct, the information is output from the output terminal (2), and if an error is detected, the detection information is output from the detection terminal (91). Output.
なお上記実施例では、G F f21上とGF(2)上
の符号について説明したが、G F f21上とGF(
2m)上の符号の場合も容易に構成が可能である。すな
わチC1符号0) G F t21 、 GF (2”
) 上(7) 生、FA多項式ヲG + (x) 、
G + (x)とすると、G 1(x)= (x +
1) g(X) −・= −(IllG1(x)・(
x+1)(X十αm)・・・1121g (x)は次数
mの原始多項式、αはg (x)の根である。In the above embodiment, the codes on G F f21 and GF (2) were explained, but the codes on G F f21 and GF (
2m) The above code can also be easily configured. That is, C1 code 0) GF t21 , GF (2”
) Above (7) Raw, FA polynomial wo G + (x),
If G + (x), then G 1(x) = (x +
1) g(X) −・= −(IllG1(x)・(
x+1)(X0αm)...1121g(x) is a primitive polynomial of degree m, and α is the root of g(x).
以上述べたようにC1符号をあたかも2元符号のように
符号化復号化できるようにしたためR8符号のもってい
る訂正能力を活かしたままでC1符号を2元の符号と同
等にとり扱うことができる。なお説明の便宜上C1符号
に距離3.C2符号に距14のR3符号を用いたが一般
にどのような距離のR8符号の組合せでも可能である。As described above, since the C1 code can be encoded and decoded as if it were a binary code, the C1 code can be handled in the same way as a binary code while taking advantage of the correction ability of the R8 code. For convenience of explanation, a distance of 3. Although an R3 code with a distance of 14 is used as the C2 code, a combination of R8 codes with any distance is generally possible.
更に今はC1,C2と2つの符号で構成される2次元の
符号に限定して説明したが一般に多次元の符号に適用可
能である。Furthermore, although the explanation has been limited to a two-dimensional code composed of two codes C1 and C2, it is generally applicable to multidimensional codes.
第1図は従来の復号装置のブロック図、第2図は従来の
別の復号装置のブロック図、第8図は従来の(1)式で
与えられる生成多項式を有するCRCCの符号化装置の
ブロック図、第4図は従来の(4)式で与えられる生成
多項式を有するR5符号の符号化装置のブロック図、第
5図はこの発明の一実施例による(7)式の生成多項式
を有する二元符号のビットシリアルの符号化装置のブロ
ック図、第6図はこの発明の一実施例による(8)式の
生成多項式を有するR8符号の8ビツトパラレルの符号
化装置のブロック図、第7図は本発明によるC2復号化
の例である。
図において、f44) f451 (4η(49) C
an (5のt’a飼)□□□倒呼)(叫(□□□(6
1間(清)は1ビツトレジスタ、146)f481(2
)i IHn 391 +6旧(ト)は2を法スタ、σ
e(資))は2を法とする8ビツト加算器、(8Dはシ
ンドロームSO計算回路、曽は88計算回路、■はガロ
ア対の除算回路、(財)は対数ROM回路。
なお図中、同一あるいは相当部分には同一符号を付しで
ある。FIG. 1 is a block diagram of a conventional decoding device, FIG. 2 is a block diagram of another conventional decoding device, and FIG. 8 is a block diagram of a conventional CRCC encoding device having a generator polynomial given by equation (1). 4 is a block diagram of a conventional R5 code encoding device having a generator polynomial given by equation (4), and FIG. FIG. 6 is a block diagram of a bit serial encoding device for an original code, and FIG. 7 is a block diagram of an 8-bit parallel encoding device for an R8 code having a generator polynomial of equation (8) according to an embodiment of the present invention is an example of C2 decoding according to the present invention. In the figure, f44) f451 (4η(49) C
an (5's t'a kai) □□□ inversion) (scream (□□□ (6
1 bit register, 146) f481 (2
) i IHn 391 +6 old (g) is 2 modal star, σ
(e) is an 8-bit adder modulo 2, (8D is a syndrome SO calculation circuit, so is an 88 calculation circuit, ■ is a Galois pair division circuit, and (corporate) is a logarithm ROM circuit. Identical or corresponding parts are given the same reference numerals.
Claims (1)
mon符号化し、C_2符号をReed・Solomo
n符号化して送信し、受信側で誤りを検出または訂正し
て復号化する符号化復号化方法において、C_1符号の
生成多項式をGF(2^m)(mは適当な正整数)のガ
ロア体の元に選んでやることによりC_1を2元符号と
もGF(2^m)上のReed・Solomon符号と
もみなせるようにし、C_2符号の根をα^i、α^i
^+^1、α^i^+^2^l、・・と等間隔にしてC
_1符号の根α^j、α^j^+^k、α^j^+^2
^k、・・を一部共通としたことを特徴とする符号化復
号化方法。(ただし、i、j、k、lは適当な整数。) 2)C_1符号、C_2符号の生成多項式をそれぞれ次
のG_1(x)、G_1′(x)、G_2(x)とした
ことを特徴とする特徴とする特許請求の範囲第一項記載
の符号化復号化方法。 C_1符号の生成多項式 G_1(x)=(x^m+1)g(x)ただしGF(2
)上にてG_1′(x)=(x+1)(x+α^m)た
だしGF(2^m)上にてC_2符号の生成多項式 G_2(x)=^S_1_1(x+α^j^k)ただし
GF(2^m)上にてj=0 ここで、g(x):次数mの原始多項式 α:g(x)の根 S:適当な正整数 であり、m=jkを満すものとする。[Claims] 1) C_1 code is binary encoded or Reed/Solo
mon encoding, and the C_2 code is Reed-Solomo coded.
In an encoding/decoding method in which n encoding is transmitted, errors are detected or corrected, and then decoded on the receiving side, the generating polynomial of the C_1 code is transformed into a Galois field of GF(2^m) (m is an appropriate positive integer). By choosing C_1 as the basis of
^+^1, α^i^+^2^l,... C
Roots of _1 code α^j, α^j^+^k, α^j^+^2
An encoding/decoding method characterized in that ^k,... are partially shared. (However, i, j, k, and l are appropriate integers.) 2) The feature is that the generating polynomials of the C_1 code and C_2 code are the following G_1(x), G_1'(x), and G_2(x), respectively. An encoding/decoding method according to claim 1, characterized in that: Generator polynomial of C_1 code G_1(x)=(x^m+1)g(x) However, GF(2
) on G_1'(x)=(x+1)(x+α^m), but on GF(2^m), the generator polynomial of C_2 code G_2(x)=^S_1_1(x+α^j^k), but on GF( j=0 on 2^m) Here, g(x): Primitive polynomial of degree m α: Root S of g(x): An appropriate positive integer, and m=jk.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP59168237A JPS6146623A (en) | 1984-08-10 | 1984-08-10 | Coding and decoding method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP59168237A JPS6146623A (en) | 1984-08-10 | 1984-08-10 | Coding and decoding method |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP5238393A Division JP2543319B2 (en) | 1993-09-24 | 1993-09-24 | Encoder |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS6146623A true JPS6146623A (en) | 1986-03-06 |
Family
ID=15864309
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP59168237A Pending JPS6146623A (en) | 1984-08-10 | 1984-08-10 | Coding and decoding method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS6146623A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0637646A (en) * | 1992-02-17 | 1994-02-10 | Mitsubishi Electric Corp | Error correction system and decoder using the same |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6133023A (en) * | 1984-07-25 | 1986-02-15 | Mitsubishi Electric Corp | Coding and decoding device |
-
1984
- 1984-08-10 JP JP59168237A patent/JPS6146623A/en active Pending
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6133023A (en) * | 1984-07-25 | 1986-02-15 | Mitsubishi Electric Corp | Coding and decoding device |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0637646A (en) * | 1992-02-17 | 1994-02-10 | Mitsubishi Electric Corp | Error correction system and decoder using the same |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5170399A (en) | Reed-Solomon Euclid algorithm decoder having a process configurable Euclid stack | |
US9037953B2 (en) | Multi-bit error correction method and apparatus based on a BCH code and memory system | |
JPS60204125A (en) | Decoding device | |
JPH03136524A (en) | Error detection and correction system to long burst error | |
JPS6035833A (en) | Device for correcting error of binary data | |
US5905740A (en) | Apparatus and method for error correction | |
EP0836285B1 (en) | Reed-Solomon decoder with general-purpose processing unit and dedicated circuits | |
JPH10107650A (en) | Error detection circuit and error correction circuit | |
KR19980702551A (en) | Improved 3, 4 error correction systems | |
JPH02178738A (en) | Detection of errors in arithmetic computation of at least two operands | |
KR101238108B1 (en) | A method of reed-solomon encoding and decoding | |
JP3248098B2 (en) | Syndrome calculation device | |
JPS6146623A (en) | Coding and decoding method | |
JPH0345020A (en) | Cyclic code processing circuit | |
JP2543319B2 (en) | Encoder | |
JPS6133023A (en) | Coding and decoding device | |
JP2605269B2 (en) | Error correction method | |
US7287207B2 (en) | Method and apparatus for computing parity characters for a codeword of a cyclic code | |
JPH0636286B2 (en) | Error correction method and apparatus | |
JP2622957B2 (en) | Coding and decoding method of BCH code | |
JP2000315955A (en) | Encoding method, syndrome calculating method, number of erroneous bits estimating method, erroneous bit position estimating method, decoding method and decoder | |
JP2000187948A (en) | Error correction coding/decoding system and device therefor | |
JPS6135629A (en) | Coding and decoding method | |
JP2775432B2 (en) | Reed-Solomon code decoder for simultaneously performing error correction / error detection / erasure error correction | |
JPH0582613B2 (en) |