JPS63316525A - ユ−クリッド互除演算回路 - Google Patents

ユ−クリッド互除演算回路

Info

Publication number
JPS63316525A
JPS63316525A JP15223487A JP15223487A JPS63316525A JP S63316525 A JPS63316525 A JP S63316525A JP 15223487 A JP15223487 A JP 15223487A JP 15223487 A JP15223487 A JP 15223487A JP S63316525 A JPS63316525 A JP S63316525A
Authority
JP
Japan
Prior art keywords
polynomial
flag
stage
circuit
degree
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
JP15223487A
Other languages
English (en)
Inventor
Norihisa Shirota
典久 代田
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP15223487A priority Critical patent/JPS63316525A/ja
Publication of JPS63316525A publication Critical patent/JPS63316525A/ja
Priority to US07/950,779 priority patent/US5341385A/en
Pending legal-status Critical Current

Links

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 この発明は、リード・ソロモン符号の復号に適用できる
ユークリッド互除演算回路に関する。
〔発明の概要〕
この発明では、被除多項式と除多項式との次数差を示す
フラグIXを形成し、除算を行う毎にフラグIXO値を
1変化させるための加減算が有限体の元の乗算に変換さ
れ、被除多項式と除多項式の互いの最高次係数を乗算と
元の乗算とが時分割動作で処理され、被除多項式と除多
項式との次数差を示すフラグIXにより、演算の停止が
検出され、被除多項式のデータ系列と除多項式のデータ
系列とが他のフラグCRの制御により、入れ替えられる
ことにより、実時間処理が可能で、回路規模が小さく、
IC化に好適なユークリッド互除演算回路が実現される
〔従来の技術〕
リード・ソロモン符号(Reed Solomlon 
Code)の復号は、 i)シンドロームの計算 ii)誤り位置多項式σ(X)、誤り評価多項式ω(×
)の導出 ji)誤り位置と誤り値の推定 iv)誤り訂正の実行 のステップでなされる。従来の方程式の根を利用した解
を用いる復号方法は、5誤り以上の多重誤りの訂正の場
合には、適用できない。この5娯り以上の訂正の場合に
は、ユークリッド互除法を用いたものが知られている。
即ち、ユークリッド互除法を使用して、誤り位置多項式
σ(χ)及び誤り評価多項式ω(x)の産出がなされる
リード・ソロモン符号のt重誤り訂正用のパリティ検査
行列Hは、(t:訂正可能数、n:符号長)とすると、 上述のパリティ検査行列Hと受信信号の積から下記のよ
うに、シンドロームが発生され、また、シンドローム多
項式が定義される。
S、=Σrt  α″′1   −Σek  α”−”
aE S+ =i’l” ct””−”  づj、e ka 
2(k I 1sj−Σr 、  α(J ’ + )
 (ニー1)−Σe、 α(j++1 (k−11st S 2t−1−、’F7 、r i (X ” (i−
”−Σe 、 αZ t Lk −11et 上式で発生された値を係数とする次の多項式をシンドロ
ーム多項式と称する。
5(x)=30+S、X+S、X” + ・・+52t
−IX”−’誤り訂正のために種々の多項式があるが、
それらは次の関係式を満足する。
φ(x)  ・x” +σ(x)  ・5(x) =ω
(x)但し、 1い at 上式の中で、実際の訂正をする場合に必要となるものは
、誤り位置多項式σ(x)と誤り評価多項式ω(x)の
二つである。
1式が常に成り立つとした場合、x!tは当然分かるが
、受信信号から知ることが出来るのは、5(x)のみで
ある。このxlとS (x)からユークリッド互除法に
より、σ(X)、ω(X)を求めることができる。ここ
で、良く知られたユークリッド互除法の例として、[与
えられた正の整数mとnに対し、それの最大公約数d及
び(am十bn=d)となる整数a、bを計算せよ」と
いう問題を解くのにユークリッド互除法が使用される。
整数に限らず、多項式の場合も同様である。即ち、(m
−+xzt)(n−+5(x))と対応させれば良い。
但し、上記の整数の問題は、互除法を最後まで実行して
最大公約数dを求めるわけであるが、誤り訂正を実行す
るために、σ(X)、ω(x)を求める場合は、最後ま
で互除法を実行して最大公約数を求めるわけではない。
途中で次の条件が成立したら、互除法の実行を止める。
t≧deg a (x) >deg ω(x)(deg
は、多項式の次数を意味する。)ユークリッド互除法を
用いて、σ(X)、ω(x)を求める具体例について4
サンプル誤り訂正符号の場合について説明する。受信信
号が第4図Aに示すように、nシンボルの場合、誤り位
置多項式σ(x)のXとして代入される値は、第4図B
に示すように、受信信号の最後から、その最初に向かっ
て順に(1,α−1,α−2,・・・α−(1’−11
・・・α−(n−11)となる。即ち、Pという番号は
、受信信号の最後から数えた番号である。
−例として、第5図Aにおいて、斜線で示すように、受
信信号の最後を0番目とすると、1番目。
2番目、3番目、4番目の各々の位置で、誤りが発生し
、これらの誤りが第5図Bに示すように、(α4.α、
α7.α2)の誤りパターンである場合の訂正を考える
。この場合のシンドロームは、下記のものとなる。
6一 So−α4α十αα2+α7α3+α2α4−α5+α
3+α10+α−一αB SI“α4α2+αα4+α7α6+α2α8−α6+
α5+αI3+αl0=O 32−α4α3+αα6+α7α9+α2α12=α7
+α7+α+α′4−α7 S3−α4 α4 +αα8 +α7 α1t+α2 
α16=α8+α9+α4+α3−α2 S4 =cx’ cx’ +txcx10+ct7ct
”+a” at”=α9+α1+α7+α7=α2 ss  −ot’  cx”  +otcx”+cx7
 ct”+az a”−αIO+α13+α10+α■
−α4S6−α4α7+αα′4+α7α1+α2αt
8−αI 1 + 1+α13+1−α4Sフーα4 
α8+αα′6+α7α24+α2α32=α12+α
2+α十α4=α9 S (x)  −α’  X7 +α’  x6  +
α’  xs+αz  xa  +α2  x3  +
α’l  xZ  +α8上記のシンドローム多項式S
 (x)とX2・4とを用い、σ(x)及びω(x)を
求める。但し、ユークリッド互除法の手続きは、 deg  (J) (x) <deg a (x)≦4
で終了する。
B(χ)≧(α−9X十α)S(x)+R1(χ)B(
に)−xa R1(x)=x’ +ot’ xs+cx”x’ +r
x” x″αIIxz+αI4X+α9 S(x) −(cr9x+α”) R1(x) +R2
(x)R2(x)=cx14xs+tx’ x’ +α
’ x”十aI3xz+a”x +ot’ R1(x) −(α−” x+ot3) R2(x) 
4−R3(x)R3(x) −rx” x’ +cx1
0x” +ot”x”十α”x+1 R2(x)= (α”x+cr−”)R3(x)+R4
(x)R4(x)=tr’ x3+a’ x” +a’
 x+a”上記の演算をまとめると、 R1=B+QIS R2=S+Q2R1=S+Q2 (B+QIS)=Q2
B+ (1+Q2Q1)S R3=R1+Q3R2=B+QIS +Q3 (Q2B+ (1+Q2Q1)S)=  (1
+Q3Q2)B+  (Q1+Q3+Q3Q2Ql)S
R4=R2+Q4R3=Q2B+ (1+Q2Q1)S
十Q4 (1+Q3Q2)B +Q4  (Q1+Q3+Q3Q2Q1)S、°、R4
−(Q2+Q4+Q4Q3Q2)B+  (1+Q2Q
1+Q4Q1−)−Q4Q3+Q4Q3Q2Q1)S この式において、R4がω(x)と対応し、右辺の第1
項が誤り位置多項式φ(x)と対応し、右辺の第2項が
誤り評価多項式ω(x)と対応している。
ここで、 Q  1 =a−9x+a、     Q2=rx’ 
  x+rx’重。
Q3−a−”  +a” 、Q4=a”x+a−”従っ
て、 σ(x) −α”x’ +a” x3+cx’ x” 
+cxx+or”G)(X)=α9 x3+α4 xt
+α9X+α11deg σ(x) −4,deg /
J)(X) =3σ(X)を微分してなるσ′(×)は
、σ’(x)=α6x2+α =8− となる。これらの誤り位置多項式及び誤り評価多項式を
用いて、エラー位置及びエラーパターンを求める。
〔X−α−1〕のエラー σ(α−1)=α9+α3+α7+1+α3−0従って
、エラー位置が分かる。
σ′(α−′)−α4+α=1 ω(α伺)−α6+α2+α8+α目−α4、°、エラ
ーパターンe〜1=ω(α−1)/σ′(α伺)=α4 〔X−α4〕のエラー σ(α−2)=α5+1+α5+α′4+α3−0従っ
て、エラー位置であることが分る。
σ′(α−2)=α2+α=α5 ω(α−2)−αJ+1+αフ+α目−αも、°、エラ
ーパターンe−z−ω(α−2)/σ′(α−2)= 
α 〔X−α−3〕のエラー σ(α−3)−α+α−3+α3+α−2+α3−0従
って、エラー位置であることが分る。
σ′(α−3)−1+α=α4 ω(α弓)=−1+α−2+α6+α■−α目、°、エ
ラーパターンe−35ω(α−3/σ′(α−i);α
7 [x=α−4〕のエラー σ(α−4)=α−3+α−6+α+α−3+α3=。
従って、エラー位置であることが分る。
σ′(α−4)=α−2+α−α1t ω(α−4)=α−3+α−4+α5+α目=αI4、
°、エラーパターンe、−ω(α−4)/σ′(α−4
)−α2 上述のように、σ(x)及びω(x)により求められた
エラー位置、エラーパターンが最初に設定しておいたも
のと同一であることが分かる。
以上説明したようなユークリッド互除法を用いたリード
・ソロモン符号の復号装置をハードウェア化する場合、
問題となるのは、被除多項式の最高次係数にあわせるよ
うに、α−9などという逆数を計算することである。即
ち、二つの多項式B(×)とS (x)の最高次数の係
数をす、 Sとすると、まず、(bxs−’)を計算す
る必要がある。このためには、Sの逆数を求めるROM
或いはROMに相当する回路が必要となり、ハードウェ
ア量がかなり増大する要因となる。
そこで、例えばI’IEEE TRANSACTION
S ON COMP−IJTER3,VOL、c−34
,NO,5,MAY 1985  :頁393〜403
」には、逆数演算を使用しないユークリッド互除法が提
案されている。この方法について、前出の4誤り訂正の
例と同様の例を用いて説明する。
B(x)−x” 5(x) =cr’ x’ +rr’ x6+tr’ 
x’ +tr” x’α2 x1+α? X2+α8 計算は、互いの最高次係数を乗算しあいながら、順次次
数を減らす方式である。
r 1 (x) 876543210  次数 α9 十α9α4α4α2α2α70 α8 0 α4α4α2α2α″0 α80 deg  r 1 (x)  =1 r 1(x)=α’  x’  +tx’  x6 +
tx2 xSαZ x4+α7x3+αa x r 1 (X)の最高次係数が7であるので、更に5(
x)で割ることができる。
■ R1(x) 0 α3α7α α■α■α2αI2 deg R1(x) =6 R1(x)=cr3x6+a7x’ +txx’α11
X3+α目X2+α2X+αI2deg R1(x) 
<deg S (x)であるので、更に5(X)をR1
(x)で割る。
■と■をまとめると、 α’ B=xS+r 1 a9r 1=a’ S+R1 上式からrlを消去すると、 −12= (α9 )2 B−(α9 X+α’)S+R1となる
。そこで、σ(×)とω(×)の候補が形成されていく
過去をみると、 a’ B+xS=r 1 (α9 ) Z B +(α9X+α4)S−凡工この
下線を付した項がσ(に)及びω(x)になる部分であ
る。従って、■のステップ迄では(α9X十α4)の次
数がまだ1次であり、R1の次数がまだ6次である。本
当は、各々が4次及び3次になるまで演算を行う必要が
ある。従って、以下、この手順を進める。
血 r 2 (x) 0 αI4α600 α14α6α目 deg r 2(x) =6 r 2(x) −aI4xb+tx6 xS+cx”x
”+α6x+α目 r 2 (x)の最高次係数が6であるので、更にr2
は、Riで割ることができる。
R2(x) 0 α51 α10α4α3α1゜ degR2(x) = 5 R2(x) =tx’ x5+x’ +ctI0x”α
4  XZ +α3x+a” (deg R2<deg R1)となったので、次にR
1をR2で割ってゆく。
r 3 (x) 0α101α14α1皿α5α2 deg r 3(x) =5 −1 ζ − r 3(x) =txI0x’ +x’ +ct14x
”ex”x”  +a5 x   +ot2R3(に) 0 1  α8 α7 α9 α′3 deg  R3(x)  =4 R3(x)=x’ +α8x’ 十a7x2a9x+t
x”r 4 (X) 0  α6 α3 α90  α10 deg r 4(x)  =4 r 4(x) =cx” x’十α3X3+α9 xZ
+α10R4(x) Q   l   a I (l l   a Zdeg
  R4(x)  −3 R4(x)=x3+aI0x” +x+cx”ここで、
ω(X)の候補であるR 4 (x)が3次式となった
ので、以上の手続きを中止する。そして、改めて、演算
の結果をまとめると以下の通りとなる。
rx9B=l xS+r 1−+α9B+xS=r 1
α9 r L=α’ S+R1−+ or” B+(α9x+cr’ ) S=R1α3S=
α9xR1+r2→ α”xB+ (α3x” +rx”x+tr3)S=r
2α3r2−α′4R1+R2−+ (x+cx2)B+ (α’ x2+rx’°x+cr
” ) S =R2cx’ R1=α″xR2+r3−
+ (α’ x” +tx’ x+rxll)B+(α9x
3+αI3x” +a”x+a’ )S−r 3= 1
6− αツ’r3=α”R2+R3→ (cr” x” +α)B+(α”X3+α9x” 十
αX+αS  )  5=R3 1・ R2−α5 xR3+r4−+ (a”x3+aI3x十α” )B+ (α’ x’ 
+α”x3 +a”  )S=r 4 1  ・ r 4=α’  R3+R4→(α”X3+
α”x”−f−αI″x+α12)B+(α’x’ 十
α”x” +x2+cx7x+a’ )S=R4このR
4が求まった段階ではじめて deg R4<deg  (α’ x’ +a”x” 
十x2+α7X+α9)≦t (=4) の関係が成り立ったので、この手続きを中止する。
従って、 σ(χ)−α4 X4+α”x” +x”+α7X十α
9ω(X) =R4(x) =x’ −1−α”x” 
+x十α2となる。これらの式をα9倍すると、前述の
α−9を使用して求めたσ(x)及びω(x)と同一と
なる。
即ち、誤り位置を求めることは当然として、誤りパター
ンを求める式も、分子及び分母の両者をα9倍=18− しても、誤りパターン自体は、何ら変化せず、正しい答
えが得られる。結局、互いの最高次数係数を乗算しなが
ら、1次づつ除算しても良い。
前述の■〜■の順序でなされる処理を回路化する場合に
考えられる構成は、第14図に示すものである。
第14図において、2A〜2Hは、演算部を示し、これ
らの8個の演算部2A〜2Hは、縦続接続されている。
各演算部は、基本的には、積和演算回路の構成を有して
おり、互いに同一の構成である。即ち、第1の入力信号
が供給される乗算回路13と乗算回路13に接続された
レジスタ14と第2の入力信号が供給される乗算回路1
7と乗算回路17と接続されたレジスタ16と第2の入
力信号を1クロツク遅延して出力するレジスタ18と乗
算回路13の出力信号と乗算回路17の出力信号とを加
算する加算回路15とにより、第1の入力信号及び第2
の入力信号に対する積和回路が構成され、第3の入力信
号が供給される乗算回路23と乗算回路23に接続され
たレジスタ24と第4の入力信号が供給される乗算−1
0= 回路27と乗算回路27と接続されたレジスタ26と第
4の入力信号を1クロツク遅延して出力するレジスタ2
日と乗算回路23の出力信号と乗算回路27の出力信号
とを加算する加算回路25とにより、第3の入力信号及
び第4の入力信号に対する積和回路が構成される。
この第14図における回路において、1クロツクデータ
を進めることは、その多項式にXを乗算することであり
、また、1クロツクデータを遅らせることは、その多項
式にx −+を乗算して次数を1次下げることである。
第14図Aは、上述の■のステップの処理を行う時の演
算部の入力及び出力を示す。第14図Bは、上述の■の
ステップの処理を行う時の演算部の入力及び出力を示す
。第14図Cは、上述の■のステップの処理を行う時の
演算部の入力及び出力を示す。
第14図りは、上述の■のステップの処理を行う時の演
算部の入力及び出力を示す。第14図Eは、上述の■の
ステップの処理を行う時の演算部の入力及び出力を示す
。第14図Fは、上述の■のステップの処理を行う時の
演算部の入力及び出力を示す。第14図Gは、上述の■
のステップの処理を行う時の演算部の入力及び出力を示
す。第14図Hは、上述の■のステップの処理を行う時
の演算部の人力及び出力を示す。
上述のように、誤り位置多項式σ(x)及び誤り評価多
項式ω(x)を自動的に求める処理は、f (x)  
・B(x) 十g(x)  ・5(x) −h(x)d
eg h (x) <deg g (x)≦tを満足す
る多項式g (x)及びh (x)を求めることに他な
らない。別の表現では、多項式B、Aを用いて、 f+  (x)  B+g+  (x)  A=h+ 
 (x)(iは、演算手順の番号) という関係を満足する多項式f + (x) 、  g
L(x)を常に出力する回路である。
そして、 degg+ ≦deggt≦deggs≦degg、・
・・degh、≦degh2≦degh3≦degh、
・・・となるので、何回かの手続きの後に、 −  t IJ− deg  hl  <deg  g  i ≦tという
関係式を満足する時点がくることになる。
〔発明が解決しようとする問題点〕
以上のように、誤り位置多項式σ(x)及び誤り評価多
項式ω(x)を求める構成が考えられる。しかし、第1
4図の構成は、演算部のみの構成であって、第1の入力
信号と第2の入力信号の入れ替え(除多項式と被除多項
式との交換)の制御並びに次数差の関係が(deg (
+3 (x) <deg tr (x) )になること
の検出については、明らかにされてない。
従って、この発明の目的は、演算部を縦続接続して、実
時間処理により、誤り位置多項式σ(×)及び誤り評価
多項式ω(x)を求めることを実現するための制御方法
が改良されたユークリッド互除演算回路を提供するもの
である。
〔問題点を解決するための手段〕
この発明では、被除多項式と除多項式との次数差を示す
フラグIXを形成し、除算を行う毎にフラグIXの値を
1変化させるための加減算が有限体の元の乗算に変換さ
れ、被除多項式と除多項式の互いの最高次係数を乗算と
元の乗算とが時分割動作で処理され、被除多項式と除多
項式との次数差を示すフラグIXにより、演算の停止が
検出され、被除多項式のデータ系列と除多項式のデータ
系列とが他のフラグCRの制御により、入れ替えられる
〔作用〕
互除演算は、(deg ω(x) <deg a (x
) )の条件が成立する時に停止される。このために、
次数差を示すフラグIXが制御用に必要となる。しかし
、このフラグIXのビット数が数ビットになるため、実
時間処理のために、基本構成を多段接続した時には次段
に数ビットのフラグIXの伝送が必要となる。
このことは、IC化する場合に、ICのピン数の増加を
もたらし、不都合が生じる。
この発明では、データ系列にフラグ1xが時分割多重さ
れているので、ピン数の増加が防止される。
また、互除演算を行う毎に、フラグIXを加減算するた
めに、加算回路が必要となる。この発明では、フラグI
Xの加減算が有限体の元の乗算に変換されており、多項
式の互除演算のための乗算回路を時分割動作させること
で、加算回路を省略できる。
〔実施例〕
以下、この発明の一実施例について図面を参照して説明
する。この説明は、下記の順序に従ってなされる。
a、基本的構成(制御部及び演算部) b、  4誤り訂正符号の例 c、  5誤り訂正符号の一例 d、5誤り訂正符号の他の例 e、互除演算の具体的回路 a、基本的構成(制御部及び演算部) 第1図は、この発明の一実施例の基本的構成を示す。を
誤り訂正符号の場合には、この第1図に示す基本的構成
が所定個数、縦続接続される。
第1図に示すように、4本のデータ伝送ラインと2本の
フラグ伝送ラインとが設けられる。第1のデータライン
には、P系列のデータが供給され、第2のデータライン
には、Q系列のデータが供給され、第3のデータライン
には、R系列のデータが供給され、第4のデータライン
には、S系列のデータが供給される。CR及びIXが制
御用のフラグであり、フラグ伝送ラインに各々供給され
る。
基本的構成は、データ制御部1と演算部2とからなる。
データ制御部1には、クロス制御回路3が設けられ、第
1のデータラインと第2のデータラインとをクロスさせ
るかどうかの制御並びに第3のデータラインと第4のデ
ータラインとをクロスさせるかどをかの制御がクロス制
御回路3によりなされる。フラグ伝送ラインと第2のデ
ータ伝送ラインと第4のデータ伝送ラインとの入力側に
は、レジスタ4,5,6.7が各々接続されている。フ
ラグの処理を行うために、ORゲート8及びANDゲー
ト9とをデータ制御部1が有している。
一25= 演算部2には、フラグIXの処理のための加算回路11
とレジスタ12とデータに対する積和演算回路とが設け
られている。P系列及びQ系列に対する積和演算回路は
、乗算回路13とレジスタ14と加算回路15とレジス
タ16と乗算回路17とにより構成されている。同様に
、R系列及びS系列に対する積和演算回路は、乗算回路
23とレジスタ24と加算回路25とレジスタ26と乗
算回路27とにより構成されている。
P系列及びQ系列に対する積和演算回路のみを抜き出す
と第2図に示す構成となる。P系列として、多項式F(
に)(最高次係数:f)が供給され、Q系列として多項
式x”G(x)(最高次係数:g)が供給され、P系列
の出力として、R(x) −g−F(x) 十f−x”
 −G(x)が得られる。演算部が正規演算をするため
の条件は、レジスタ14及び16に各々これらの最高次
係数f及びgが同時にロードできることである。
このことは、(deg F(x) −deg x’ G
(x) )ということと等価である。また、(g≠0)
である。
26一 第2回に示すように、(deg F (x) >deg
 G (×))で、n次の次数差がある二つの多項式を
、各々被除多項式及び除多項式とする場合、出力の多項
式R(x)は、多項式F (x)より少なくとも次数が
1次減少している。従って、F (x)をG (X)で
割れるところまで割るには、(n+1)個の演算部を使
えば良い。そして、次の新たな互除演算を続けるには、
最終段出力P4のR(x)とQ4の出力G (x)の各
々が次段のQ系列及びP系列に入力されるように、クロ
スさせれば良い。
データ制御部1の役目は、次の二つである。
第1には、二つの系列の多項式を何時クロスさせ、除多
項式と被除多項式を交換させるかの制御を行う。
第2には、(deg ω(x) <deg a (x)
 )の演算停止条件が成立したことを検出する。
この発明では、第1の制御を行う場合、多項式の係数を
全て格納できるようなバッファメモリを持たずに、実時
間処理を行う。この実時間処理を可能とするために、フ
ラグIX及びCRが用いられる。
フラグIXは、実際に除算演算を始める前の二つの多項
式の次数差を示す。ガロア体GF (2’)では、一般
に8ビツト必要である。
フラグCRは、条件が整えば、何時でも、P系列とQ系
列並びにR系列とS系列とをクロスしなさいということ
を示すフラグである。フラグCRがハイレベルの時がク
ロスしなさいを意味し、フラグCRがローレベルの時が
クロスしなくても良いを意味する。
フラグCRに関して、「条件が整えば」という事は、P
系列とQ系列の入力多項式の最高次数係数がレジスタ1
4及び16に同時にロードできるとういう条件である。
また、(IX−−1)となることば、除多項式(Q4の
出力)の次数が互除演算の結果である余り多項式(P4
出力)の次数よりも、1次大きいことを意味する。この
場合には、P系列とQ系列とを交換して、新しい除多項
式で互除演算を続けなければならない事を示している。
ここで、直ぐにP系列とQ系列とを交換して、演算に入
るべきかどうかの判定をすることにより、次段に伝達す
るCR4を(L−+H)にすべきか、又はI、のままで
良いかが違ってくる。このように、フラグCRとTXと
は、常に、ペアとして考えるべき信号である。フラグI
X及びCRの制御方法は、複雑であるので、第3図のフ
ローチャートに示す。
第3図の各ステップは、以下のものである。
ステップ■・・・初期条件の設定である。即ち、(CR
=H:ハイレベル)(IX=1)とフラグが設定される
。データは、P系列として、S (x)が供給され、Q
系列として、x!tが供給され、R系列として、■が供
給され、S系列として、0が供給される。
ステップ■・・Q系列及びS系列の各々に1段の遅延を
入れる。
ステップ■・・・ (CR=H?)の判断。
ステップ■・・・ (IX=−1?)の判断。即ち、被
除多項式の次数より、除多項式の次数が大きいかどうか
の判断。) ステップ■■・・・最高次数が同時に入力されたかどう
かの判断。
ステップ■■・・・系列をクロスさせる処理。
ステップ■■@・・互除演算の処理。互除演算がされる
と、フラグIXが(+1)又は(−1)される。
ステップ[株]・・・互除演算がされず、フラグIXが
(+3)され、フラグCRがHとされる。
ステップ@・・・互除演算がされず、フラグIXが(+
1)される。
ステップ@・・・(deg ω(x) <deg σ(
x) )の条件が成立したかどうかの判断。この条件が
成立すると、演算が停止される。
b、  4誤り訂正符号の例 この発明を4誤りの訂正に適用した例について説明する
。第4図Aに示すように、n個のシンボルからなる受信
系列の場合、誤り位置多項式σ(X)或いは誤り評価多
項式ω(x)のXとして代入する値は、第4図Bに示す
ように、受信系列の最後から順に、(1,α−1,α−
2,・・・α−3′−0・・・α−(n−1))とされ
る。
第5図Aにおいて、斜線で示す4個の誤りが生じており
、第5図Bに示す誤りパターンの場合を考える。シンド
ロームの発生が完了し、シンドローム多項式S (x)
が求められ、このシンドローム多項式S (x)が入力
されることから、処理が始められる。
まず、ステップ■の初期設定がなされる。次に、ステッ
プ■の段階で、Q系列即ち、B (x)のデータ系列に
1クロツクの遅延が入れられるので、P系列及びQ系列
の最高次係数1とα9とが同位相となる。
ステップ■では、(CR=H)であるから、ステップ■
へ移行し、更に、同時入力するから、ステップ■へ移行
する。ステップ■により、クロスさせられる処理がなさ
れ、第8図Aに示す演算部2AのP系列及びQ系列とし
て、B (x)及び5(X)が各々入力される。また、
ステップ■で、データ系列がクロスされたので、(CR
1=H)から(CR4=L)に変える。また、演算部2
A−31= では、互除演算が実際に実行され、出力系列P4として
は、入力多項式P3(8次)より、次数が1減少した多
項式が出力される。従って、P系列とQ系列との相対的
次数差を示すフラグIXを1減少させたものが新たなI
X (IX4)とする操作がされる。
上述のように、第8図Aの処理では、第3図に示すフロ
ーチャートに従って、(■→■→■→■→■→■→@)
)のステップの処理がされる。この処理は、演算停止の
条件が満足される迄、繰り返される。
第8図Bは、2段目の処理を示している。この2段目で
は、(■→■→■→■→0)の処理がされる。
第8図Cは、3段目の処理を示している。この3段目で
は、(■→■→■→■→■→■→0)の処理がされる。
第8図りは、4段目の処理を示している。この4段目で
は、(■→■→■→■→0)の処理がされる。
第8図Eは、5段目の処理を示している。この5段目で
は、(■→■→■→■→■→■→[相])の処理がされ
る。
第8図Fは、6段目の処理を示している。この6段目で
は、(■→■→■→■→0)の処理がされる。
第8図Gは、7段目の処理を示している。この7段目で
は、(■→■→■→■→■→■→0)の処理がされる。
第8図Hは、8段目の処理を示している。この8段目で
は、(■→■→■→■→0)の処理がされる。この段階
で、ステップ[相]の条件が成立するので、演算の停止
のステップ■に移行し、処理が終了する。
0.5誤り訂正符号の一例 第6図Aにおいて斜線で示すように、5個のシンボルの
誤りが存在し、シンドローム多項式の上位の3個の係数
が0となる場合について説明する。
上位の3個の係数がOとなるのは、第6図Bに示すよう
に、α7.α、α2.■、α2の誤りパターンの場合で
ある。シンドローム多項式S (x)の係数は、下記の
ものとなる。
So−α3.S、−α2.S2−α1゜S3 =ot”
、54−a、S5−ct”、S、=IS? 、SR,5
9−0 上述の例に対して、この発明を適用した時の制御部1及
び演算部2の動作は、第9図に示すものとなる。第8図
と同様に、第9図Aから順に第9図B、第9図C1・・
・と処理が進められる。
第9図Aの処理では、第3図に示すフローチャートに従
って、(■→■→■→■→@→[相])のステップの処
理がされる。
第9図Bは、2段目の処理を示している。この2段目で
は、(■→■→■→@→0)の処理がされる。
第9図Cは、3段目の処理を示している。この3段目で
は、(■→■→■→@→0)の処理がされる。
第9図りは、4段目の処理を示している。この4段目で
は、(■→■→■→■→■→[相])の処理がされる。
第9図Eは、5段目の処理を示している。この5段目で
は、(■→■→■→■→0)の処理がされる。
第9図Fは、6段目の処理を示している。この6段目で
は、(■→■→■→■→[相])の処理がされる。
第9図Gは、7段目の処理を示している。この7段目で
は、(■→■→■→■→0)の処理がされる。
第9図Hは、8段目の処理を示している。この8段目で
は、(■→■→■→■→0)の処理がされる。
第9図1は、9段目の処理を示している。この8段目で
は、(■→■→■→■→■→■→0)の処理がされる。
第9図Jは、10段目の処理を示している。この10段
目では、(■→■→■→■→0)の処理がされる。この
段階で、ステップ[相]の条件が成立するので、演算の
停止のステップ[相]に移行し、処理が終了する。
上述の上位の3係数が全てOとなる例は、前述の3誤り
訂正符号の例とは異なっている。即ち、上位の3係数が
全てOであるため、(B(x)=x10)の系列を1ク
ロツク遅延させただけでは、P系列及びQ系列の最高次
係数を同一タイミングで、レジスタにロードできない。
シンドローム多項式S (x)が6次であるため、B 
(x)を4段遅延する必要がある。この遅延処理を行っ
ているのが、データ制御部IA、IB、IC,IDであ
る。この時の処理は、第3図のフローチャートにおける
ステップ■、■、■の処理であり、この遅延処理を3回
繰り返し、4回目でデータをクロスさせて互除演算がな
される。このクロスがされる迄、フラグCRは、Hであ
る。また、二つの多項式の相対次数差が4まで増加する
。また、演算がされない(NO0PERATION )
とは、レジスタ14,16゜24.26には、1.0が
各々ロードされる。更に、4段目のデータ制御部IDで
実際の演算が開始されてから、(IX=−1)となる8
段目までは、データラインがクロスされない。
d、5誤り訂正符号の他の例 第7図Aにおいて斜線で示すように、3個のシンボルの
誤りが存在し、シンドローム多項式の上位の第2番目及
び第3番目の2個の係数が0となる場合について説明す
る。上位の2個の係数がOとなるのは、第7図Bに示す
ように、α5,1゜α3の誤りパターンの場合である。
シンドローム多項式S (x)の係数は、下記のものと
なる。
S、   =a、   S、   =a”、   S、
   −tx”  、   S、   =tx 7S4
=α′3. s、−α7.S6−αI4S7 、Ss 
=O,S9 =α2 上述の例に対して、この発明を適用した時の制御部1及
び演算部2の動作は、第10図に示すものとなる。第8
図及び第9図と同様に、第10図Aから順に第10図B
1第10図01 ・・・と処理が進められる。
第10図Aの処理では、第3図に示すフローチャートに
従って、(■→■→■→■→■→@→0)のステップの
処理がされる。
第10図Bは、2段目の処理を示している。この2段目
では、(■→■→■→■→0)の処理がされる。
第10図Cは、3段目の処理を示している。この3段目
では、(■→■→■→■→[相]→0)の処理がされる
第10図りは、4段目の処理を示している。この4段目
では、(■→■→■→■→■→0)の処理がされる。
第10図Eは、5段目の処理を示している。この5段目
では、(■→■→■→■→0)の処理がされる。
第10図Fは、6段目の処理を示している。この6段目
では、(■→■→■→■→0)の処理がされる。この段
階で、ステップ[相]の条件が成立するので、演算の停
止のステップ■に移行し、処理が終了する。
上述の例で、注意する点は、第10図Cの3段目のデー
タ制御部ICの動作である。(IX−一1)であるから
、データ制御部ICのクロス制御は、ORゲート8への
信号をHとする。これは、(CR1=L)であっても、
この段以降、どこかでデータラインをクロスさせる必要
があることを意味する。そこで、データ制御部ICの中
でクロス可能かどうかを検出する。このために、Q系列
に1クロツクの遅延を入れた多項式系列とP系列の多項
式系列とを比較して、最高次係数が同時にレジスタにロ
ードされるかどうかを判断する。この例では、Q系列の
最高次次数がα2の時、P系列は、まだ0である。従っ
て、このデータ制御部ICでは、クロスできないことに
なるから、ANDゲート9に対する信号をHとして、フ
ラグ(CR4=H)として、次段以降でクロスさせるよ
うに、フラグを伝達している。また、この時には、演算
処理をしないように、レジスタ14.24の内容が1と
され、レジスタ16.26の内容が0とされる。
更に、この3段目の演算部2Cでは、フラグIXに(+
3)の処理がなされている。(IX−1)の時にクロス
を行った時には、通常IXに(+1)の処理を行えば良
い。また、同時に、最高次係数がロード出来なくて、演
算部を非動作とする時にも、IXに1を加えた。上述の
例の3段目の演算部2Cでは、上記の二つのことが同時
に起きているので、IXに対して2を加えれば良いと考
えられるが、実際には、3を加える必要がある。
e、互除演算の具体的回路 第1図に示す基本的構成は、第11図に示す回路により
具体化できる。第11図において、F○○の符号は、D
型フリップフロップを示し、JQ○は、JK型ラフリッ
プフロップ示し、T1〜T4がクロックイネーブルD型
フリップフロップを示す。第1図の基本的構成との対応
関係は、ORゲート8がOR7と対応し、ANDゲート
9がAND7と対応する。また、乗算回路13.17が
MULI、MUL2と対応し、加算回路15がADDl
と対応し、レジスタ14及び16がT1及びT2と対応
する。同様に、乗算回路23.27がMUL3.MUL
4と対応し、加算回路25がADD2と対応し、レジス
タ24及び26がT3及びT4と対応する。更に、フラ
グCRは、第11図においては、CRO3Sと表されて
いる。
第11図の回路構成の特徴的な点は、フラグIXの取り
扱いである。上述の説明では、フラグlXは、独立に段
間で受は渡ししていた。しかしながら、フラグIXは、
通常でも、5ビット程度を必要とし、符号の最大能力を
持たせる時には、8ビツト必要となる。このため、各段
の構成をIC化した時に、入力及び出力で16本のピン
が必要となる。このことは、IC化にとって、コストの
上昇をもたらし、不利である。また、フラグIXの加減
算のために、通常の加算回路11を設けているが、この
加算回路11を省略できることが好ましい。
上述の理由で、第11図の構成においては、フラグIX
がP系列の先頭に付加されて、入力及び出力のピン数の
削減が図られている。また、IXの加減算が乗算回路M
ULIで行われる構成とし、フラグIX用の加算回路が
省略されている。即ち、=41− =40− IXの加算をαIXと考えて、IXの加減算が指数の加
減算に置き換えられている。この場合、(rX=−1)
の検出を行うために、8ビツトの比較回路COMPが設
けられ、α−1が検出されたら比較回路COMPがHを
出力する。この比較回路COMPの出力信号がクロック
イネーブル付のフリップフロップF102によりラッチ
される。これから入力を始めているデータ系列の属性を
示す信号INVが形成され、この信号INVがOR7に
入力される。
このOR7には、前段からのCRO3S信号がF21゜
F22を介して供給される。
第11図におけるMD倍信号、二つの役目を有している
。その一つは、多項式系列の入力開始を知らせることで
あり、第二には、((P、 Q、 R。
Sの最大次数幅)+(IX用の1クロツク)〕のパルス
幅を有している。従って、MD倍信号、基本回路のデー
タ設定、モードリセットが行われる。
次に、J72.J82.J92は、JKフリップフロッ
プであって、P、Q、R系列に入力してくる多項式の次
数だけHとなる信号を作っているもので、最高次数係数
の後、途中の係数が“0”になっても、出力がLとなら
ないように、JKフリップフロップが使用されている。
この出力を用い、J72の否定信号と、J82を1段遅
延させたF1aの出力信号とを比較することにより、P
Q系列の最高次係数がレジスタT1及びT2に同時に入
力させることが可能かどうかが判断されている。これが
AD7の信号で、一旦J74でラッチしている。これが
Hだと、クロス禁止(CROSSIN旧旧T)という意
味でCRINHと記することにする。これは、第3図の
フローチャートでは、ステップ■及び■の判断ステップ
に相当しており、(CRINH= H)がステップ■及
び■では、NOに相当し、(CRINH= L )がス
テップ■及び■では、YESに相当する。
J72の否定出力とJ92の出力信号とを比較すること
により、フローチャート中のステップ[相]である演算
の停止の条件を検出している。J93の出力信号がHと
なれば、全ての演算が停止され、P、 R系列も、Q、
 S系列に遅延の段数があわせられるようになっている
。この制御を行っているのがMUXI〜MUX4.MU
X8.MUX9である。また、互除演算で、最大次数が
1減少したときのみ、MUX7は、0人力を選択し、M
Dのパルス幅が1クロック分小さくなるようにされてい
る。
これらのデータセレクタがどのような選択動作を行うか
を第12図に示す。この第12図には、フローチャート
のどのステップに対応するかも示されている。
第13図は、第11図の具体回路の動作を示すタイミン
グチャートである。この第13図の例は、4誤り訂正の
例の場合である。第13図Aが一段目の回路の動作を示
し、以下、第13図B〜第13図Iまで2段目〜9段目
の各段の動作が示されている。
〔発明の効果〕
この発明によれば、除多項式と被除多項式との間の次数
差を示すフラグを次段に伝送する場合に、データ系列に
時分割多重しているので、基本的構成をIC化した時に
、入力/出力のピン数を削減できる。また、この次数差
を示すフラグの加減算が乗算に変換されているので、加
算回路を設ける必要がなく、多項式の演算のための乗算
回路を用いることができる。
【図面の簡単な説明】
第1図はこの発明の一実施例の基本的構成のブロック図
、第2図は第1図から取り出された演算部のブロック図
、第3図は制御部の動作説明のためのフローチャート、
第4図、第5図、第6図。 及び第7図は誤りの例を各々示す路線図、第8図。 第9図及び第10図は基本的回路の動作を説明するため
のブロック図、第11図はこの発明の一実施例の具体回
路、第12図は具体回路の動作説明のための路線図、第
13図は具体回路の動作説明を示すタイミングチャート
、第14図はこの発明の説明の参考としたリード・ソロ
モン符号の復号回路の一例の説明のための路線図である
。 図面における主要な符号の説明 1、IA、IB・・・:データ制御部。 2.2A、2B・・・:演算部、3:クロス制御回路、
11,15,25:加算回路、14.16゜24.26
:レジスタ、13,17,23,27:乗算回路。

Claims (1)

    【特許請求の範囲】
  1. 被除多項式と除多項式との次数差を示すフラグ I Xを
    形成し、除算を行う毎に上記フラグ I Xの値を1変化
    させるための加減算が有限体の元の乗算に変換され、上
    記被除多項式と上記除多項式の互いの最高次係数を乗算
    と上記元の乗算とが時分割動作で処理され、上記被除多
    項式と上記除多項式との次数差を示すフラグ I Xによ
    り、演算の停止が検出され、上記被除多項式のデータ系
    列と上記除多項式のデータ系列とが他のフラグCRの制
    御により、入れ替えられるようにしたことを特徴とする
    ユークリッド互除演算回路。
JP15223487A 1987-06-18 1987-06-18 ユ−クリッド互除演算回路 Pending JPS63316525A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP15223487A JPS63316525A (ja) 1987-06-18 1987-06-18 ユ−クリッド互除演算回路
US07/950,779 US5341385A (en) 1987-06-18 1992-09-24 Method and apparatus for decoding Reed-Solomon code

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP15223487A JPS63316525A (ja) 1987-06-18 1987-06-18 ユ−クリッド互除演算回路

Publications (1)

Publication Number Publication Date
JPS63316525A true JPS63316525A (ja) 1988-12-23

Family

ID=15536017

Family Applications (1)

Application Number Title Priority Date Filing Date
JP15223487A Pending JPS63316525A (ja) 1987-06-18 1987-06-18 ユ−クリッド互除演算回路

Country Status (1)

Country Link
JP (1) JPS63316525A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0595326A2 (en) * 1992-10-30 1994-05-04 Sony Corporation Method of correcting lost data and circuit thereof

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0595326A2 (en) * 1992-10-30 1994-05-04 Sony Corporation Method of correcting lost data and circuit thereof
EP0595326A3 (en) * 1992-10-30 1995-10-04 Sony Corp Method of correcting lost data and circuit thereof
US5566190A (en) * 1992-10-30 1996-10-15 Sony Corporation Apparatus and methods for correcting lost data
EP0989680A1 (en) * 1992-10-30 2000-03-29 Sony Corporation Method of correcting lost data and circuit thereof
EP0989679A1 (en) * 1992-10-30 2000-03-29 Sony Corporation Method of correcting lost data and circuit thereof
EP0991196A1 (en) * 1992-10-30 2000-04-05 Sony Corporation Method of correcting lost data and circuit thereof

Similar Documents

Publication Publication Date Title
EP0114938B1 (en) On-the-fly multibyte error correction
JPH0452556B2 (ja)
CA1256202A (en) Method and apparatus for decoding bch code
JPH02148225A (ja) 有限体の乗法的逆数元を計算するデータ処理方法及び装置
JP3354025B2 (ja) エラー位置多項式の計算方法およびその装置
US5341385A (en) Method and apparatus for decoding Reed-Solomon code
JPS63186338A (ja) 誤り訂正回路
JPS63316525A (ja) ユ−クリッド互除演算回路
EP1175015B1 (en) Decoding circuit and decoding method thereof
JPS63316524A (ja) リ−ド・ソロモン符号の復号方法
US20010054052A1 (en) Method and apparatus for the calculation of modular multiplicative inverses
JPS6217256B2 (ja)
JP2907138B2 (ja) 誤り訂正の演算処理方法及び処理回路
JPH047847B2 (ja)
JP2600681B2 (ja) リード・ソロモン符号の復号方法
JP2600683B2 (ja) リード・ソロモン符号の復号方法
JPH03172027A (ja) 誤り訂正処理装置
JP2797569B2 (ja) ユークリッドの互除回路
JPS6399623A (ja) 有限体の演算回路
JPS5880769A (ja) ガロア体における除算装置
JP2797570B2 (ja) ユークリッドの互除回路
JPH011332A (ja) リ−ド・ソロモン符号の復号方法
JPS6394720A (ja) 誤り訂正符号の復号化回路
JPH05100880A (ja) 誤り位置及び誤りパターン導出回路
JPH01276825A (ja) 誤り訂正復号回路