Nothing Special   »   [go: up one dir, main page]

JPS61258536A - Double error correction decoder - Google Patents

Double error correction decoder

Info

Publication number
JPS61258536A
JPS61258536A JP9998985A JP9998985A JPS61258536A JP S61258536 A JPS61258536 A JP S61258536A JP 9998985 A JP9998985 A JP 9998985A JP 9998985 A JP9998985 A JP 9998985A JP S61258536 A JPS61258536 A JP S61258536A
Authority
JP
Japan
Prior art keywords
register
error
zero
value
selector
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP9998985A
Other languages
Japanese (ja)
Inventor
Kazuhiro Sugiyama
和宏 杉山
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP9998985A priority Critical patent/JPS61258536A/en
Publication of JPS61258536A publication Critical patent/JPS61258536A/en
Pending legal-status Critical Current

Links

Landscapes

  • Error Detection And Correction (AREA)

Abstract

PURPOSE:To reduce remarkably a decoding time by using the coefficient sigma2 of a polynomial to apply a simple pre-processing, halving values considered to be roots into n/2 ((n-1)/2 for an n of odd number) and executing an arithmetic with a half number. CONSTITUTION:A microprocessor 1 inputs a value (alphaLj)/sigma1 from the A side input of a selector 4 to a register 6 via a data bus 2 and inputs a value (alphaLi)/sigma1 from the A side input of a selector 5 to a register 7, outputs of the registers 6, 7 and '1' are ORed exclusively by an exclusively OR adder 10, and the output of the OR adder 10 is inputted to a zero detector 11 and it is discriminated whether or not it is zero. The output of the register 6 is multiplied by alphaby an alpha multiplier 8 and it is held to the register 6 via the B side input of the selector 4. The output of the register 7 is multiplied by 1/alpha by a 1/alpha multiplier 9 and it is held in the register 7 via the B side input. The process is executed repetitively for n/2 times ((n-1)/2 times for an odd number n). The error location is calculated by the repetitive number when zero is detected.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 この発明は、リード・ソロモン符号(以下R3符号と記
す)の復号器に関するものであり、特に2市誤り位置の
算出を簡単、かつ高速に行なうようにしたものである。
[Detailed Description of the Invention] [Field of Industrial Application] The present invention relates to a decoder for Reed-Solomon codes (hereinafter referred to as R3 codes), and in particular to a decoder for easily and quickly calculating two-city error positions. This is what I decided to do.

〔従来の技術〕[Conventional technology]

以下、第2図の符号フローチャーl−に従って、R3符
号の復号法について述べる。2重誤りまでを訂正できる
R3符号として、下記の様なパリティ検査マI−リソク
スHを用いるものが知られている。
The R3 code decoding method will be described below according to the code flowchart l- in FIG. As an R3 code capable of correcting up to double errors, one using a parity check matrix H as described below is known.

・・・(11 ここで、αは例えばcF (28)の原始多項式の根で
ある。又nは符号長である。
...(11) Here, α is, for example, the root of the primitive polynomial of cF (28). Also, n is the code length.

復号を行なうには、まずステップ30にてエラーシンド
ロームSが計算される。これは符号しnの受信データR
の転置行列RTとパリティ検査マl−リノクスI−[と
の債で求められる。つまり、V fZlを送信符号ベク
トル V (Zl = V Q■v1z■V2 Z2■V3 
Z3■・・・・・・■V n−+z n−1・・・(3
)R(7,1を受信ベクトル Rfzl−rOC+r1 z■r2Z2■r3Z3■・
・・・・・■r yl−IZn’   ・・・(4)と
する時、雑音のある通信路で加算される誤りパターンは
、 e (z) = r (Z)■V (Zl−eQ■eI
Z■e2Z2 ■・・・・・・■en−IZ”   ・・・(5)で表
わせる。式(2)より、 5K=rO■r1 ’ct K■r2(αK)2■r3
  (αK)3■・・・・・・ ■r n−1’ (αK)n−’ ・・・(6) なので、式(5)と式(6)より 5K−V (αK)■e (αK)      ・(7
1となる。一方、αO9α1.α2.α3は符号多項式
V (Z)の根だから、■(αK)−〇となる。従って
、 5H=e  (αK)             ・・
・(8)e (zlが2個の誤りをもつ誤りパターンと
すると、シンドロームは式(9)のようになる。
To perform decoding, first, in step 30, an error syndrome S is calculated. This is the received data R with code n
It is determined by the combination of the transposed matrix RT and the parity check matrix l-linox I-[. In other words, V fZl is the transmission code vector V (Zl = V Q■v1z■V2 Z2■V3
Z3■・・・・・・■V n-+z n-1...(3
)R(7,1 as reception vector Rfzl-rOC+r1 z■r2Z2■r3Z3■・
...■r yl-IZn' ...(4), the error pattern added in a noisy communication channel is e (z) = r (Z)■V (Zl-eQ■ eI
Z■e2Z2 ■・・・・・・■en-IZ" ...It can be expressed as (5). From equation (2), 5K=rO■r1 'ct K■r2(αK)2■r3
(αK)3■... ■r n-1'(αK)n-' ...(6) Therefore, from equations (5) and (6), 5K-V (αK)■e ( αK) ・(7
It becomes 1. On the other hand, αO9α1. α2. Since α3 is the root of the sign polynomial V (Z), it becomes ■(αK)−〇. Therefore, 5H=e (αK)...
-(8)e (If zl is an error pattern with two errors, the syndrome will be as shown in equation (9).

誤り訂正は、このel、eJ+  α1.αjに関する
方程式を解くことに基づいて行なわれる。yl。
Error correction is performed using this el, eJ+ α1. This is done based on solving equations for αj. yl.

αjが求まると、べきi、jがe (zlの誤り位置を
示し、el、eJが求まるとe (zlの誤り数値を示
していることになる。そこで、シンドローム成分Slか
らei、ej、  αi、αjを求める手法を説明する
When αj is found, exponents i and j are e (indicates the error position of zl, and when el and eJ are found, e (indicates the error value of zl. Therefore, from the syndrome component Sl, ei, ej, αi , αj will be explained.

誤り位置多項式を次のように定義する。The error locator polynomial is defined as follows.

σ(Z)−(Z■αj)(Z■αj) =aoZ2■σIZ■ty2   =(10)ここで、 式(9)1式(11)は、べき相対称式と呼ばれるもの
で、次の関係を導くことができる。
σ(Z)-(Z■αj)(Z■αj) =aoZ2■σIZ■ty2 = (10) Here, Equation (9) 1 Equation (11) is called a power-phase symmetry equation, and the following Can lead to relationships.

式(12)によりシンドローム成分Siより誤り位置多
項式σ1.σ2を求めることができる(ステップ31.
32)。ここで式(10)の誤り位置多項式の根(αi
、α3)が何らかの方法で求めることができたとすると
、誤り数値ei、eJは次のように求めることができる
(ステップ33)。
Using equation (12), the error locator polynomial σ1. σ2 can be determined (step 31.
32). Here, the root (αi
, α3) can be obtained by some method, the error values ei and eJ can be obtained as follows (step 33).

以上のように、誤り位置多項式の根が求まれば、式(1
3)により誤り位置、誤り数値が求まり、式(5)によ
り復号を完了させることができる(ステップ34)。
As mentioned above, once the root of the error locator polynomial is found, the formula (1
3), the error position and error value are determined, and the decoding can be completed using equation (5) (step 34).

ここで、σfZlの根を求めるために考案されたデータ
(Chien)の方法〔文献:  R,T、Chien
 ; CyclicDacording Proced
ure for the Bose−Chaudhur
iHocquenghem Codes、 IEIEE
 Trans、 on InformationThe
ory+ I↑−10,PP 357−368. Oc
t、1964 )について説明する。
Here, the data (Chien) method devised to find the root of σfZl [Reference: R, T, Chien
;CyclicDacordingProceded
are for the Bose-Chaudhur
iHocquenghem Codes, IEIEE
Trans, on InformationThe
ory+ I↑-10, PP 357-368. Oc
T, 1964) will be explained.

式00)において、σ1/σ2−η1.σO/σ2−η
2とすると1 .7 tz+ = 1■η1z■η2Z2     −
(14)と変形できる。
In formula 00), σ1/σ2−η1. σO/σ2−η
If it is 2, then 1. 7 tz+ = 1■η1z■η2Z2 −
It can be transformed as (14).

α/  (0≦β≦n−1)が誤り位置であるとすると
、次式が成り立つ。
Assuming that α/(0≦β≦n-1) is the error position, the following equation holds true.

σ(α71)=1■η1αl■η2α2p−0・・・(
15) この式より、復号器では、η1αl、η2α2!lを作
成し、和 η1αp■η2α21       ・・・(16)を
計算する。もしこの和が1になれば、αRはσ(7,1
の根であり誤り位置を示す。従ってデータの方法は誤り
位置として考えられる値(α0.αl。
σ(α71)=1■η1αl■η2α2p-0...(
15) From this equation, in the decoder, η1αl, η2α2! 1, and calculate the sum η1αp■η2α21 (16). If this sum becomes 1, αR becomes σ(7, 1
is the root of and indicates the error location. Therefore, the method of data is the value considered as the error position (α0.αl.

α2.・・・、αn−1)をすべてσ(21に代入し、
σ(Zl=0を満たせば、その時代入した値が誤り位置
であることが判るという方法である。
α2. ..., αn-1) into σ(21,
In this method, if σ(Zl=0) is satisfied, it is determined that the inserted value is an error position.

第3図にデータの方法による誤り位置の算出を実行する
ハードウェアを示す。図中、1はデータの人出力、デー
タ処理、及び制御等を行なうマイクコプロセッサ、2は
マイクロプロセンサーのデータバス、3はマイクロプロ
センサーのコントロールバス、4.5は2人力セレクタ
、6.7はレジスタ、8はα乗算器、13はα2乗算器
、1゜は3人力排他的論理加算器、11ば零検出器であ
る。
FIG. 3 shows hardware for calculating error positions using the data method. In the figure, 1 is a microphone coprocessor that performs data output, data processing, control, etc., 2 is a data bus for the microprocessor sensor, 3 is a control bus for the microprocessor sensor, 4.5 is a 2-manpower selector, and 6. 7 is a register, 8 is an α multiplier, 13 is an α2 multiplier, 1° is a three-man exclusive logic adder, and 11 is a zero detector.

動作を順に説明すると、 1)マイクロプロセッサ1よりの制御信号でセレクタ4
,5をA副入力にセットする。
To explain the operation in order, 1) Selector 4 is activated by a control signal from microprocessor 1.
, 5 to the A sub-input.

2)マイクロプロセンサーよりデータバス2を介して前
述のη1をセレクタ4のA副入力からレジスタ6に入力
し、マイクロプロセンサーからのコントロール信号でη
1をレジスタ6にホールドする。
2) Input the above-mentioned η1 from the microprosensor via the data bus 2 to the register 6 from the A sub-input of the selector 4, and use the control signal from the microprosensor to input η1.
Hold 1 in register 6.

3)マイクロプロセッサ−よりデータバス2を介して前
述のη2をセレクタ5のA副入力からレジスタ7に入力
し、マイクロプロセンサーからのコントロール信号でη
2をレジスタ7にホールドする。
3) The microprocessor inputs the above-mentioned η2 via the data bus 2 into the register 7 from the A sub-input of the selector 5, and the control signal from the microprocessor sensor inputs η2.
2 is held in register 7.

4)マイクロプロセンサーからの制御信号でセレクタ4
,5をB副入力にセットする。
4) Selector 4 with control signal from micropro sensor
, 5 to the B sub-input.

5〉レジスタ6の出力とレジスタ7の出力と、さらに“
1”との排他的論理和を排他的論理加算器10で計算す
る。
5> Output of register 6, output of register 7, and “
1'' is calculated by the exclusive logical adder 10.

6)排他的論理加算器10の出力を零検出器11に入力
し、零であるか否かを判定し、その結果をコントロール
バス3を介してマイクロプロセッサ1に知らせる。
6) The output of the exclusive logic adder 10 is input to the zero detector 11 to determine whether it is zero or not, and the result is notified to the microprocessor 1 via the control bus 3.

7)レジスタ6の出力をα乗算器8でα倍し、これをセ
レクタ4のB副入力を介してレジスタ6にマイクロプロ
セッサ1のコントロール信号によりホールドする。同時
にレジスタ7の出力をα2乗算器13でα2倍し、これ
をセレクタ5のB副入力を介してレノスタフにマイクロ
プロセッサ1のコントロール信号によりホールドする。
7) The output of the register 6 is multiplied by α by the α multiplier 8, and this is held in the register 6 via the B sub-input of the selector 4 by the control signal of the microprocessor 1. At the same time, the output of the register 7 is multiplied by α2 by the α2 multiplier 13, and held by the control signal of the microprocessor 1 through the B sub-input of the selector 5.

この過程を、5→6−7−5−6→7→・・・・・・−
5−6と、符号長n回繰り返し実行する。マイクロプロ
セッサl内では、繰り返し数とその時の零検出器11か
らの信号を監視し、零検出された時の繰り返し数を誤り
位置と判断する。
This process is 5→6-7-5-6→7→・・・・・・−
5-6, the code length is repeated n times. Inside the microprocessor I, the number of repetitions and the signal from the zero detector 11 at that time are monitored, and the number of repetitions when zero is detected is determined to be the error position.

〔発明が解決しようとする問題点〕[Problem that the invention seeks to solve]

従来のデーンの方法を用いた復号器は以」−のように構
成されているので、誤り位Mを算出するのに符号長n回
の繰り返し演算を実行しなければならず、復号時間等に
余裕がない場合にはこの繰り返し演算の回数を削減する
ことが必要で、また、ただ単にこの繰り返し演算の回数
を削減しようとすればハードウェアの規模が大きくなっ
てしまうなどの問題点があった。
Since a conventional decoder using Dane's method is configured as shown below, it is necessary to perform repeated calculations for the code length n times in order to calculate the error level M, which reduces the decoding time, etc. If there is not enough room, it is necessary to reduce the number of repeated operations, and simply trying to reduce the number of repeated operations has the problem of increasing the scale of the hardware. .

この発明は上記のような問題点を解消するためになされ
たもので、誤り位置を算出するのにハードウェアの規模
は全く同じで、繰り返し演算回数を符号長の半分の回数
(nが偶数の場合n/2゜奇数の場合(n−1)/2 
 )で実行できる2重誤り訂正復号器を(Mることを目
的とする。
This invention was made to solve the above-mentioned problems.The scale of the hardware is exactly the same to calculate the error position, and the number of repeated operations is half the code length (if n is an even number). In case n/2゜In case of odd number (n-1)/2
The objective is to create a dual error correction decoder that can be implemented in (M).

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

この発明に係る2重誤り訂正復号器は、誤り位置多項式
の根を求める際、該多項式の係数σ2の値により簡単な
前処理を施して上記多項式の根として考えられる値を半
分に削減する前処理演算子段と、該演算手段により得ら
れた各値に乗算を繰り返して実行するとともに、各値の
排他的論理加算を施して該加算結果が零か否かを検出し
、零になるまでの繰り返し数により2重誤り位置を求め
る誤り位置検出手段とを設けたものである。
In the double error correction decoder according to the present invention, when determining the root of an error locator polynomial, the value of the coefficient σ2 of the polynomial is subjected to simple preprocessing to reduce the value considered as the root of the polynomial by half. A processing operator stage and each value obtained by the calculation means are repeatedly multiplied, and each value is subjected to exclusive logical addition to detect whether or not the addition result is zero until it becomes zero. Error position detection means for determining the double error position based on the number of repetitions of .

〔作用〕[Effect]

この発明においては、前処理により誤り位置多項式の根
として考えられる値をほぼ半分に削減したから、誤り位
置を求めるのに従来の半分の繰り返し演算で実行可佳と
なり、復号時間は大幅に短縮される。
In this invention, the number of possible roots of the error locator polynomial is reduced by almost half through preprocessing, so it can be performed with half as many iterative operations as before to find the error locator, and the decoding time is significantly reduced. Ru.

〔実施例〕〔Example〕

ここで、本発明の詳細な説明する前にその原理について
説明する。
Here, before explaining the present invention in detail, its principle will be explained.

符号長はnであるので、i、j、nの間には次の関係が
ある。
Since the code length is n, the following relationship exists between i, j, and n.

0≦i≦n−1,0≦j≦n−1・・・(17)第4図
はこの関係を基にしたiとjの全ての#He7j合わせ
表を示す図である。1とjの交点にはi→−jの値を示
しである。誤り位置多項式の係数σ2は式(11)より
次のように考えられる。
0≦i≦n-1, 0≦j≦n-1 (17) FIG. 4 is a diagram showing all #He7j combinations of i and j based on this relationship. The intersection of 1 and j indicates the value of i→-j. The coefficient σ2 of the error locator polynomial can be considered from equation (11) as follows.

σ2−α1・αj−αi+3      ・・・(18
)つまりσ2からi+jを求めることができる。ここで
第4図のiとjの組み合わせ表の意味は、i+jが゛与
えられることにより、iとjの存在範囲を明確にしよう
というものである。ところで、前にも説明したようにα
1.αjは誤り位置多項式(]0)の異なる2根である
ので、i−jの範囲ばi。
σ2-α1・αj-αi+3 ...(18
) In other words, i+j can be found from σ2. The meaning of the combination table of i and j in FIG. 4 is to clarify the range of existence of i and j by giving i+j. By the way, as explained before, α
1. Since αj are two different roots of the error locator polynomial (]0), the range i−j is i.

jの範囲の対象外である。またiとjの組み合わせは、
iの値とjの値が入れ替っても差支えない。
It is outside the range of j. Also, the combination of i and j is
There is no problem even if the value of i and the value of j are exchanged.

従って第4図において三角形の斜線を引いた部分が、実
際の’+  Jの組み合わせの範囲となる。
Therefore, the hatched portion of the triangle in FIG. 4 is the actual range of '+J' combinations.

例えば、i+jが1の場合(t、j)の組み合わせは(
1,0)の1組、i+jが2の場合(2゜0)の1組、
・・・・・・、j→−jが5の場合(5,0)。
For example, when i+j is 1, the combination (t, j) is (
1, 0), 1 set when i+j is 2 (2°0),
..., when j→-j is 5 (5, 0).

(4,1)(3,2>の3組、・・・・・・というよう
に、’+  Jの組み合わせが定まる。この中で一番多
くの組み合わせが存在するのばi+jがn−1の場合で
ある。その組み合わせの数は以下のようになる。
(4, 1) (3, 2> 3 sets, etc.), the combinations of '+ J are determined. Among these, the one with the most combinations is i+j, which is n-1. In this case, the number of combinations is as follows.

これらのことから、σ2が与えられると(i。From these facts, given σ2, (i.

j)の組み合わせの数は最大(19)式で示される値に
まで絞ることができる。
The number of combinations of j) can be narrowed down to the maximum value shown in equation (19).

では次に、これらの組み合わせの中から1組を選びだす
方法について述べる。原理的には先に説明したデーンの
方法と同じで、(t、  j)の組み合わせを全て代入
し、次式を満たせばそのときの(i、j)が根となる。
Next, a method for selecting one set from these combinations will be described. The principle is the same as Dane's method explained earlier, and if all combinations of (t, j) are substituted and the following formula is satisfied, then (i, j) becomes the root.

σ1−αl■αj         ・・・(11) 
’式(11) ’ を変形して αj   αj 1−□+□      ・・・(20)σ 1    
   σ 1 の式を満たしても同様である。但し本発明では考えられ
る最大の組み合わせ数は式(19)となり、デーンの方
法と比べると半分に減っている。
σ1−αl■αj ...(11)
Transforming 'Equation (11)', αj αj 1−□+□ ...(20)σ 1
The same holds true even if the formula for σ 1 is satisfied. However, in the present invention, the maximum number of combinations that can be considered is equation (19), which is reduced by half compared to Dane's method.

この処理方法を、第5図の前処理のフロー図と第6図の
原理図と用いて説明する。
This processing method will be explained using the preprocessing flow diagram shown in FIG. 5 and the principle diagram shown in FIG. 6.

ます、ステップ35にてi+jがn−1より大きいか小
さいかで場合分りを行ない、Ll、Ljの値を決定する
。このLl、Jは第6図の繰り返し演算の初期値となる
ものである。例えばj+jがn−1より小さく、5の場
合、ステップ37にてLi =5. 1−3 =0とな
る。またj→=Jがnの場合、ステップ36にてLi 
=n−1,,Lj −1となる。Li、Ljが求まると
αLi、  αL j変換を行ない、さらにσ1で割り
算し、αLi/σ1.αl・j/σ1を出力する。
Next, in step 35, the cases are determined depending on whether i+j is larger or smaller than n-1, and the values of Ll and Lj are determined. These Ll and J serve as initial values for the iterative calculation shown in FIG. For example, if j+j is smaller than n-1 and is 5, in step 37 Li =5. 1-3=0. Also, if j→=J is n, in step 36 Li
=n-1,,Lj-1. Once Li and Lj are determined, αLi and αL j conversion is performed, and further divided by σ1, αLi/σ1. Output αl·j/σ1.

第6図において、13.14はレジスタ、15はα乗算
器、16は1/α乗算器、17は排他的論理加算器、1
8は零比較器である。この回路は、考えられる(i、j
)の組み合わせにおいて、式(20)を順番に計算する
回路である。まず、了、零でなければ、αLiを1/α
倍、αL Iをα倍し、 を計算する。零ならば計算終了、零でなければ、さらに
繰り返し演算を続ける。この繰り返し回数をCoとする
と、 ・・・(23) なるCOを見つけるわけである。この繰り返し演算の回
数は最高式(19)で示される値である。COが求まる
と、次式により誤りの位置i、jを求めることができる
In FIG. 6, 13.14 is a register, 15 is an α multiplier, 16 is a 1/α multiplier, 17 is an exclusive logic adder, 1
8 is a zero comparator. This circuit can be considered (i, j
) is a circuit that sequentially calculates equation (20). First, if it is not zero, αLi is 1/α
Multiply αL by α and calculate . If it is zero, the calculation ends; if it is not zero, the calculation continues. If the number of repetitions is Co, we find CO as follows. (23). The number of times of this repeated operation is the value shown by the highest expression (19). Once CO is determined, error positions i and j can be determined using the following equation.

表  1 表1は横軸にi、縦軸にjをとった場合のi −1−j
の値を示す。また表2は同じく横軸にi、縦軸にjをと
った場合のαl■αjの値を示す。さらに表3及び表4
に、計算に必要なX−αX変換テーブル、αX−X変換
テーブルを示している。ここで、αはCF (2B)の
原始元であり、X8■X4■X3■X2■1を生成多項
式とし、αo=1からα、α2.α3.・・・・・・ 
を表現したものである。
Table 1 Table 1 shows i -1-j when i is plotted on the horizontal axis and j is plotted on the vertical axis.
indicates the value of Table 2 also shows the values of αl■αj when i is plotted on the horizontal axis and j is plotted on the vertical axis. Furthermore, Tables 3 and 4
, shows an X-αX conversion table and an αX-X conversion table necessary for calculation. Here, α is a primitive element of CF (2B), and X8■X4■X3■X2■1 is a generator polynomial, and from αo=1 to α, α2. α3.・・・・・・
It is an expression of

表4において、零元には該当する対数表現(αX→X)
は存在しないので、255で便宜上表現している。
In Table 4, the zero element has the corresponding logarithmic expression (αX→X)
does not exist, so it is expressed as 255 for convenience.

ここで、符号長n−16の2重誤り訂正可能なリード・
ソロモン符号を考える。誤り位置が3番目と12番目と
すると、誤り位置多項式は以下のようになる。
Here, a read code capable of double error correction with code length n-16 is used.
Consider Solomon codes. If the error positions are the 3rd and 12th, the error position polynomial is as follows.

(Z+α3)(Z+α12) −Z2■(α3■α12)Z■α3・α12−Z2■1
97Z■38 =Z2■σIZ■σ2 実際の復号器でば、このσ1とσ2が与えられるわけで
ある。そこで本発明の原理に基づいて誤り位置を求めて
いく。
(Z+α3) (Z+α12) -Z2■ (α3■α12) Z■α3・α12-Z2■1
97Z■38 =Z2■σIZ■σ2 In an actual decoder, these σ1 and σ2 are given. Therefore, the error position is determined based on the principle of the present invention.

σ2−38より、38−αi+l、故に1−1−j=1
5第5図の前処理フロー回通りに計算すると、n−16
より、  Li =15  、LJ =0となる。次に
第6図に従って繰り返し演算を行なう (表2参照)。
From σ2-38, 38-αi+l, therefore 1-1-j=1
5 If calculated according to the preprocessing flow shown in Figure 5, n-16
Therefore, Li = 15 and LJ = 0. Next, repeat calculations are performed according to FIG. 6 (see Table 2).

最  初 α1− ■αI昨 ■1=145■1≠0第
1回目 α1明−1■αレコ4■1 = 247■1≠
0第2回目 α11−2■αt31“λ■1=151■
1≠0第1=目 α四q−3■α1313■1−1■1
−0繰り返し数Go=3の場合、式(23)を満たずこ
とがわかる。これより、各数値を式(24)に代入して i =15−3 =12 j = O+ 3 = 3 となり、誤り位置3.12を求めることができる。
First α1- ■αI last ■1=145■1≠0 1st time α1 light-1■α record 4■1 = 247■1≠
0 2nd time α11-2■αt31"λ■1=151■
1≠0 1st=th α4q−3■α1313■1-1■1
It can be seen that when the number of -0 repetitions Go=3, equation (23) is not satisfied. From this, by substituting each numerical value into equation (24), i = 15-3 = 12 j = O+ 3 = 3, and the error position 3.12 can be found.

第1図に上記本発明の原理に基づいて構成された復号器
の具体的なハードウェアの一実施例を示す。図中、第3
図と同一符号は同−又は相当部う〕を示し、9は1iU
乗算器である。
FIG. 1 shows a specific hardware embodiment of a decoder constructed based on the principle of the present invention. In the figure, the third
The same reference numerals as in the figure indicate the same or equivalent parts], and 9 is 1iU.
It is a multiplier.

この実施例の動作を簡単に説明すると、1)マイクロプ
ロセッサ1よりの制御信号でセレクタ4,5をA側入力
にセットする。
The operation of this embodiment will be briefly described as follows: 1) A control signal from the microprocessor 1 sets the selectors 4 and 5 to the A side input.

2)マイクロプロセンサ1よりデータバス2を介して前
述の(αL 1 ) /σ1をセレクタ4のA側入力か
らレジスタ6に入力し、マイクロプロセッサ1からのコ
ンI・ロール信号で(αLi)/σ1をレジスタ6にポ
ールl”する。
2) Input the above-mentioned (αL 1 ) /σ1 from the microprocessor sensor 1 via the data bus 2 to the register 6 from the A side input of the selector 4, and use the control I roll signal from the microprocessor 1 to input (αLi) /σ1. Poll σ1 to register 6.

3)マイクロプロセッサ1よりデータバス2を介して前
述の(αLi)/σ1をセレクタ5のA側入力からレジ
スタ7に入力し、マイクロプロセッサ1からのコントロ
ール信号で(αL l ) /σ1をレジスタ7にホー
ルドする。
3) Input the above-mentioned (αLi)/σ1 from the microprocessor 1 to the register 7 from the A side input of the selector 5 via the data bus 2, and input (αL l )/σ1 to the register 7 using the control signal from the microprocessor 1. Hold on.

4)マイクロプロセッサ1からの制御信号でセレクタ4
,5をB側入力にセン1−する。
4) Selector 4 with control signal from microprocessor 1
, 5 to the B side input.

5〉レジスタ6の出力とレジスタ7の出力と、ざらに“
1”との排他的論理和を排他的論理加算器10で求める
5> The output of register 6 and the output of register 7, and roughly “
1'' is determined by the exclusive logical adder 10.

6)抽伯的論理加算器10出力を零検出器11に入力し
てこれが零であるか否かを判定し、その結果ヲコントロ
ールハス3を介してマイクロプロセッサ1に知らせる。
6) The output of the abstract logic adder 10 is input to the zero detector 11 to determine whether it is zero or not, and the result is notified to the microprocessor 1 via the controller 3.

7)レジスタ6の出力をα乗算器8でα倍し、これをセ
レクタ4のB ff1l+入力を介してレジスタ6にマ
イクロプロセッサ1のコントロール信号によりホールド
する。同時にレジスタ7の出力を1iU乗算器9で1i
U倍し、これをセレクタ5のB側入力を介してレジスタ
7にマイクロプロセッサ1のコントロール信号によりホ
ールドする。
7) The output of the register 6 is multiplied by α by the α multiplier 8, and this is held in the register 6 via the Bff1l+ input of the selector 4 by the control signal of the microprocessor 1. At the same time, the output of register 7 is converted to 1i by 1iU multiplier 9.
This is multiplied by U and held in the register 7 via the B-side input of the selector 5 by the control signal of the microprocessor 1.

この過程を5→6→7−15→6→7→・・・・・・→
5−6と式(19)で示した回数分繰り返し実行する。
This process is 5→6→7-15→6→7→・・・・・・→
5-6 and the number of times shown in equation (19) are repeated.

さらにマイクロプロセッサ1内では繰り返し数と、その
時の零検出器11からの信号を監視し、零検出された時
の繰り返し数より式(22)を用いて誤り位置を算出す
る。
Furthermore, the microprocessor 1 monitors the number of repetitions and the signal from the zero detector 11 at that time, and calculates the error position using equation (22) from the number of repetitions when zero is detected.

このような本実施例では、誤り位置多項式の根を求める
際、簡単な前処理を施して根として考えられる値を半分
に削減し、これにより繰り返し演算を実行するようにし
たので、従来と同様の構成で、大幅な復号時間の短縮を
図ることができる。
In this embodiment, when finding the root of the error locator polynomial, simple preprocessing is performed to reduce the number of possible roots by half, and the calculation is performed repeatedly. With this configuration, it is possible to significantly shorten the decoding time.

なお、」−記実施例では、マイクロプロセッサを用いて
データの入出力制御を行なった場合について説明したが
、データの入出力制御を専用のハードウェアで行なって
もよ(、上記実施例と同様の効果を奏する。
In addition, in the embodiment mentioned above, a case was explained in which data input/output was controlled using a microprocessor, but data input/output may also be controlled by dedicated hardware (similar to the above embodiment). It has the effect of

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

以」二のように、この発明によれば、2重誤り位置を求
める際、誤り位置多項式の根として考えられるn個の値
を全て代入するのではなく、該多項式の係数σ2を用い
て簡単な前処理を施し、根として考えられる値を半分の
n/21固(n:偶数。
As described below, according to the present invention, when determining the double error location, instead of substituting all n values that can be considered as roots of the error location polynomial, the coefficient σ2 of the polynomial is used to easily calculate the double error location. After preprocessing, the possible root value is halved to n/21 (n: even number.

nが奇数の場合は(n−1)/2(1iU)に削減し、
従来の半分の繰り返し演算で実行できるようにしたので
、復号時間の大幅な短縮が図れる効果がある。
If n is an odd number, reduce to (n-1)/2(1iU),
Since it can be executed with half the number of repetitions compared to conventional methods, it has the effect of significantly shortening decoding time.

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

第1図はこの発明の一実施例による2重誤り訂正復号器
を示すブロック図、第2図は一般の)夏号の手順を示す
フローチャート図、第3図は従来の復号器を示すブロッ
ク図、第4図は本発明の詳細な説明するだめの誤り位置
の組み合わせを示す図、第5図は本発明の前処理部分を
示すフローチャート図、第6図は本発明の詳細な説明す
るためのブロック構成図である。 1・・・マイクロプロセッサ、2・・・データバス、3
・・・コントロールバス、4.5・・・セレクタ、6.
7・・・レジスタ、8・・・α乗算器、9・・・1iU
乗算器、10・・・排他的論理加算器、11・・・零検
出器。 なお図中同一符号は同−又は相当部分を示す。
FIG. 1 is a block diagram showing a dual error correction decoder according to an embodiment of the present invention, FIG. 2 is a flowchart showing the procedure of a general) summer issue, and FIG. 3 is a block diagram showing a conventional decoder. , FIG. 4 is a diagram showing a combination of error positions for a detailed explanation of the present invention, FIG. 5 is a flowchart diagram showing a preprocessing part of the present invention, and FIG. 6 is a diagram for a detailed explanation of the present invention. FIG. 2 is a block configuration diagram. 1... Microprocessor, 2... Data bus, 3
...Control bus, 4.5...Selector, 6.
7...Register, 8...α multiplier, 9...1iU
Multiplier, 10... Exclusive logic adder, 11... Zero detector. Note that the same reference numerals in the figures indicate the same or equivalent parts.

Claims (1)

【特許請求の範囲】[Claims] (1)2重誤り訂正可能な符号長nのリード・ソロモン
符号の復号器において、ガロア体上の演算機能を有し2
次の誤り位置多項式であるZ^2■σ_1Z■σ_2(
■は排他的論理和)の係数σ_2よりi+jを演算する
とともに、 [i+j≧n−1の場合 Li=n−1、Lj=i+j−(n−1) i+j<n−1の場合 Li=i+j、Lj=0 r_1=αLi/σ_1、r_2=αLj/σ_2]但
し、αi+j=σ_2、αi■αj=σ_1i、j:誤
り位置、α:原始多項式の根 なる演算を行なう前処理演算手段と、上記演算結果r_
1、r_2を格納する第1、第2のレジスタ、この第1
のレジスタの値を1/α倍する第1の乗算器、上記第2
のレジスタの値をα倍する第2の乗算器、上記第1、第
2のレジスタの内容及び数値1の3つの値の排他的論理
和を計算する加算器、及び該加算結果が零か否かを判別
する零検出器を有し、 [r_1■r_2■1 r_1/α→r_1、r_2・α→r_2]の演算を繰
り返し実行して(r_1■r_2■1)が零になるまで
の繰り返し数Coより2重誤り位置i=Li−Co j=Lj+Co を求める誤り位置検出手段とを備えたことを特徴とする
2重誤り訂正復号器。
(1) In a Reed-Solomon code decoder with a code length n that is capable of double error correction, it has an arithmetic function on a Galois field and has 2
The following error locator polynomial Z^2■σ_1Z■σ_2(
(2) is the exclusive OR), and calculates i+j from the coefficient σ_2 of , Lj=0 r_1=αLi/σ_1, r_2=αLj/σ_2] However, αi+j=σ_2, αi■αj=σ_1i, j: error position, α: preprocessing calculation means for performing the root operation of the primitive polynomial; Operation result r_
1, the first and second registers storing r_2, this first
a first multiplier that multiplies the value of the register by 1/α;
a second multiplier that multiplies the value of the register by α; an adder that calculates the exclusive OR of the contents of the first and second registers and the three values of the numerical value 1; and whether or not the addition result is zero. It has a zero detector that determines whether the 1. A double error correction decoder comprising: error position detection means for determining a double error position i=Li−Co j=Lj+Co from the number Co.
JP9998985A 1985-05-10 1985-05-10 Double error correction decoder Pending JPS61258536A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9998985A JPS61258536A (en) 1985-05-10 1985-05-10 Double error correction decoder

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9998985A JPS61258536A (en) 1985-05-10 1985-05-10 Double error correction decoder

Publications (1)

Publication Number Publication Date
JPS61258536A true JPS61258536A (en) 1986-11-15

Family

ID=14262053

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9998985A Pending JPS61258536A (en) 1985-05-10 1985-05-10 Double error correction decoder

Country Status (1)

Country Link
JP (1) JPS61258536A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS647816A (en) * 1987-06-30 1989-01-11 Matsushita Electric Ind Co Ltd Galois field arithmetic unit
JPS6419831A (en) * 1987-07-15 1989-01-23 Matsushita Electric Ind Co Ltd Galois field arithmetic unit
US6277430B1 (en) 1997-04-24 2001-08-21 Unilever Patent Holdings B.V. Fat emulsions

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS647816A (en) * 1987-06-30 1989-01-11 Matsushita Electric Ind Co Ltd Galois field arithmetic unit
JPS6419831A (en) * 1987-07-15 1989-01-23 Matsushita Electric Ind Co Ltd Galois field arithmetic unit
US6277430B1 (en) 1997-04-24 2001-08-21 Unilever Patent Holdings B.V. Fat emulsions

Similar Documents

Publication Publication Date Title
EP1131893B1 (en) Forward error corrector
US10187085B2 (en) Decoding method, decoding apparatus and decoder
EP0836285B1 (en) Reed-Solomon decoder with general-purpose processing unit and dedicated circuits
EP0366331B1 (en) System and method for error detection in the result of an arithmetic operation
JPH0728227B2 (en) Decoding device for BCH code
JPS61258536A (en) Double error correction decoder
US7100103B2 (en) Efficient method for fast decoding of BCH binary codes
JPH10112660A (en) Error decoding method and device utilizing reed solomon code
EP0629052B1 (en) Method of and circuit for correcting errors
JPH07202720A (en) Communication method and its equipment
JPS62115928A (en) Decoder for correcting duplicated error
JPS61258535A (en) Double error correcting decoder
JP2575506B2 (en) Chain search circuit
JPH07226687A (en) Error correction processor
JP2907138B2 (en) Error correction arithmetic processing method and processing circuit
JPS63167527A (en) Greatest common measure polynomial calculation circuit on expanded galois field and polynomial mutual division arithmetic circuit
JP2008112522A (en) Device and method for detecting error
JP3280470B2 (en) Error correction circuit
JP2710176B2 (en) Error position and error pattern derivation circuit
KR900000670Y1 (en) Cord word generator of read-solomon encoder
JPS60233938A (en) Error correction coder
JP2013201503A (en) Chien search circuit, decoder, storage device and chien search method
JPH03190327A (en) Error correction circuit
JPH09185518A (en) System and device for generating power of source element alpha
JPH0434785B2 (en)