JPS62222718A - エラ−訂正方法 - Google Patents

エラ−訂正方法

Info

Publication number
JPS62222718A
JPS62222718A JP61066528A JP6652886A JPS62222718A JP S62222718 A JPS62222718 A JP S62222718A JP 61066528 A JP61066528 A JP 61066528A JP 6652886 A JP6652886 A JP 6652886A JP S62222718 A JPS62222718 A JP S62222718A
Authority
JP
Japan
Prior art keywords
error
term
symbol
polynomial
code
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
JP61066528A
Other languages
English (en)
Inventor
Koji Asaba
浅場 康次
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.)
Denso Ten Ltd
Original Assignee
Denso Ten 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 Denso Ten Ltd filed Critical Denso Ten Ltd
Priority to JP61066528A priority Critical patent/JPS62222718A/ja
Publication of JPS62222718A publication Critical patent/JPS62222718A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はリードソロモン符号の2シンボルエラー訂正方
法に関し、シンドロームを用いず、剰余多項式の各係数
からエラーロケーションおよびエラーの大きさを求めて
訂正を行なおうとするものである。
〔従来の技術〕
コンパクトディスク(CD)やデジタルオーディオテー
フ責DAT)ではGF(28)上のリードソロモン符号
を採用している。データ(音楽情報)は8ビット単位に
まとめられ、これはシンボルと称せられる。符号長n、
情報符号長k、符号間距離d (単位は全てシンボル)
のリードソロモン符号は(n、に、d) リードソロモ
ン符号と呼ばれる。こ\でd=n−に+lである。CD
では(32,28,5) リードソロモン符号が用いら
れるので、以下ではこれを例にする。
リードソロモン符号の生成多項式G (xiは次式で定
義される。
こ−でXは複数ピント2値数を多項式表現した場合の各
有効桁を表わす数(例えば該2値数が1011001な
らx6  +x 4  + X3  + 1となる)、
αはガロア体の乗算の基本となる元(原始元)でα=(
OOOOOQIO)と定義される。αの数値の若干を挙
げると 8= α= (00000010)  α  (000111
01)α2= (00000100)  α9= (0
0111010)α3= (00001000)   
:”0 α = (00000001) α = (10000000)  α =αであり、α
255  で最初に戻る巡回符号である。αとXは等し
く、α−X、α −x2  、・・・・・・である。
(32,28,5)符号では前記生成多項式シまG(x
l=  (x+1)(x+α)  (x+α2 )(x
+αハ=x+cx  x  +cx  x  +ct 
 x+a6・・・・・・(2) となる。データによる多項式M (xiがこ\でWiは
各情報データシンボル で表わされるとき、M(x)をG(x)で割り、余りR
(x)を求めてM(に)の後につなげば次式のリードソ
ロモン符号多項式(記録又は送信データ)U(x)が得
られる。
U (x) = M (x) + R(xl     
       ・・・・・・(31勿論U(xl=Q(
x) ・G(x)である(即ちU (xlはG (xi
で割り切れる)。
この符号をベクトル表現とした場合の演算のために、生
成行列CfX)を求めることができる。これにはx’ 
(i = 31 、 30. ・・・・・−4)をG(
x)で割った余りを行ベクトルとして上から順に並べ、
左側に28X28の単位行列をつければよい。演算はU
=M−If( による。今、受信符号V (x)をV (x) = U
 (xl + E (x)としく E [X)は誤り多
項式、即ち受信符号は送信符号に誤りを加えたもの)、
生成多項式G(x)で割って余りS (x)が出たとす
ると、 V [x) = Q (xi −G (x) + S 
(x)        −= (41=Q(x)(x+
1)  (x+cr)  (x+α2 )(x+α )
+5(x) となる。こ\でXに1.α、α2.α3を代入するとG
(x)はそれぞれOになる(本例のようなmod2の加
算では同じものの和はO)となるので、が得られる。5
o=Ssをシンドロームと呼ぶ。
E (xl = OであればS (xl = 0であり
、5O−33=0である。5o=33=1であると、そ
の1である桁がエラーである。V(x)をベクトル表現
して(5)式の計算を行なう場合の行列旧を考えるに、
とおくと、 となる。行列旧をパリティ検査行列という。このHを用
いれば、(6)式よりシンドロームSo〜S3を算出す
ることができる。
前記のようにU(x)= QfX) ・G(xlであり
、V (xl =U (xl + E (xlであるか
ら(4)式よりE (x) = S (x)であり、(
5)式は次のように書き換えることができる。
今V (xlのi番目とj番目のシンボルWi、 Wj
に誤りがあり、その誤りの大きさがEi、  Ejであ
るとすると<2M誤り)、 E(xl=x’  Ei+xjEj         
 −”・(9)と書ける。(81,(91式より の4元連立方程式が得られる。こ−でα゛ 、α1をエ
ラーロケーション数と呼ぶ。
〔発明が解決しようとする問題点〕
従来、リードソロモン符号の2シンボルエラー訂正を行
なう場合、(6)式より得られたシンドロームから00
式の4つの式を全て満足するα1 、αJ。
Ei、 Ejの組合せを探し出し、エラーロケーション
αi、αj及びエラーの大きさEi、 Ejを決定して
いた。例えばピーターソンの方法ではα1 、α1を2
次方程式 %式% の1艮として求める。σ1.σ2は5II=SIS2S
、+5aS2とおくとσ+=S目 /SI3゜σ2=S
12/SI3であり、α4 はσ1+α −σ2/αk を満たすk (0<k<31)を見つけることで求めら
れる(j=k)。α5 が求まるとα’  、 Ei。
Ejは α’  =σ(+α’ 、Ej= (α’  So+S
+)/σ+Ei=So+Ej として得られる。しかしながらこの演算は複雑であり、
多大の時間を要する。本発明はか\る点を改善し、高速
な訂正動作を可能にしようとするものである。
〔問題点を解決するための手段〕
本発明のエラー訂正符号は、符号列v(x)を生成多項
式〇 (x)で割って剰余多項式R(x)を求める第1
のステップと、エラーロケーションαi、αjおよびエ
ラーの大きさEi、 Ejを含む、剰余多項式R(xl
の各項の係数より、エラーシンボルはO次項として1シ
ンボルエラー化し、そのエラーシンボルのロケーション
および大きさを、次いで前記O次項のエラーの大きさを
求める第2のステップと、符号列V(x)を巡回させて
各項を順次O次項とし、この巡回させた符号列に対し、
生成多項式で割った剰余多項式を求め、その各項の係数
より、前記第2のステップによる処理でエラーロケーシ
ョンおよびエラーの大きさを求める第3のステップと、
得られたエラーロケーション及びエラーの大きさにより
符号列V (x)を訂正する第4のステップとを有する
ことを特徴とするものである。
〔作用〕
受信符号列V (xlを、シンボルWn、符号長n=3
2の V(x)=W  x”’  +W  X30 +−・・
・−+W+ x+W。
3I          30 ・・・・・・ ql) とし、そしてこれを前記(2)式で表わされる生成多項
式〇 (xlで割って V (xl = Q (x)・G (x) + R(x
)なる剰余多項式R<x+が得られたとし、R(x)=
r 3 X3+r 2 X2+r + x+r o・・
−(13とおくと、次式で示されるように、各項の係数
r3〜roの値にも前述のエラーロケーションおよびエ
ラーの大きさについての情報が入っており、このR(x
iを用いることによりエラー訂正が可能である。こ−で
2シンボルエラーの時r3〜roはr 3 =cx  
(Ei (cr+ l)(α+ l)(α+ 1)jj
−1j−2 +Ej(α+1)(α +1)(α +1))r2=α
”’(Ef(α’+l)(α +l)(α +1)+E
j(cXJ+1)(αJ−1+1)(αJ−3+1))
r + =a:158(Ei (i+ 1 )(Q’ 
”+ 1)(α’ ”+ 1)+Ej(α+1) (α
 +1)(α +1))ra=cx  (Ei(cr 
 +1>(α +1)(α +1)+Ej(α”+1)
  (α’−”+1)(α”’+1))・・・・・・0
3 で表わされる。今i=0即ちシンボルエラーが受信符号
列V (xlの0次項Woにあったとすると、α1+1
であるから(功式のr3〜rlのEiの項はOになり、
r3〜r1はEjの項でのみ表わされることになり、■
シンボルエラーの訂正の方法をとることが可能になる。
1シンボルエラーの訂正は比較的簡単であり、上記の場
合r3〜rlの比jlj−2j−1 α56(α +1)(α +1): (α +1)j−
32j2j−3 (α +1):α(α +1)(α +1)・・・・・
・(1φ のパターンよりα3 を求めることができる。α1が求
まれば、これを上記r3.r’2.rlのいずれかの式
に代入してエラーの大きさEjを求めることができ、更
にαj  、 Ejをroの式に代入すればEiを求め
ることができ、2シンボルエラー(シンボルWaとα1
 で指定されるシンボルW)訂正可能である。なおエラ
ーロケーションαはエラーシンボルを示すものであり、
エラーの大きさEはシンボル内エラービットを示すもの
である。
一方、リードソロモン符号は巡回符号の一種であるので
、受信符号列V (xlをm次だけシフトさせたxmV
[xlも同様に符号列として扱うことが可能である。今
m=224とすると前記01)式はXmV(x)−V 
31  X255+W30 x254+−−−−−・+
W + x”25+ W a X2”     ・・・
・・・Vyeとなるが、XはGF(28)上の元である
からX−1であり、09式は x” v(xl=w 30 x254+−・・−+W 
l x225+ W o x  + W 3 I=・・
・・t、1$となる。即ちX31がエラーシンボルであ
ったとしても00式ではX31はXの0次項であり、前
記の、シフト前のWoが0次項であったときの方法によ
ってエラー訂正が可能である。
以下同様で、09式にXを乗じるとW2OがO次項、そ
れにまたXを乗じるとX29が0次項、・・・・・・と
なり、上記方法でエラー訂正が可能で、こうしてエラー
ロケーションがどこであっても検出、訂正が可能である
〔実施例〕
第1図に本発明の実施例回路を示す。3は除算器、4は
コンI−ローラ、5は演算器(ガロイックロジック ユ
ニット)、6はROM、7はバッファメモリである。受
信符号列V (x)はシンボル(8ビット)毎に高次(
W 3 、の項)側より入力端1へ入力する。スイッチ
2はa側に倒れており、従って各シンボルは順次除算器
3に入力する。除算器3は第2図に示す構成を有し、受
信符号列V (xlを生成多項式〇 (x)で割る機能
を有する。V (x)は前記(19式で表わされ、そし
てG (xlは前記(2)式で示され、設定器のα 、
α 、α  、α は(2)式のそれである。加算器、
乗算器、レジスタともに4個あり、図示の如(結線され
る。
この除算器の動作の概要は次の如くである。入力端から
はV (xlの各シンボルが順次入力し、4シンボル入
ったところでレジスタの内容はR3がW3x” 、 R
2がX30X3°、R1がW 2g X29、R。
がW2BX  になる。除算ではこれをG (xl =
 x’ +α75X3+α249x2+α78x+α6
 で割るが、この際X がX31x  に等しくなるよ
うにするので商の最初の項はX31X27である。そし
てこのX31X とα X 、α X 、α x、  
α の各種が乗算器M3.M2.Ml、MOで求められ
、加算器A3.A2.AI、AOにおいてX30x。
W 2g X29. W 2.B X28. W 27
 X27との差(mod2では加算=減算)が求められ
、その差がレジスタR3,R2,R1,ROヘセントさ
れる。商の次の項は(x30−α75W31)X26テ
あり、これとα75 x3  、α249 x2  、
α78x、α6の各種が乗算器M3〜MQで求められ、
加算器A3〜Al11においてレジスタR2,R1,R
Oの内容および新しく入力した1シンボルW26x26
との差が求められ、該差がレジスタR3,R2,R1,
ROにセットされる。以下同様であり、最後は(32回
シフトすると)商が立たなくなり、このときのレジスタ
R3〜Roの内容がr3〜roである。
こうして除算器3に剰余多項式の各係数r3〜r。
が得られる。
係数r3〜roは前記03式で表わされ、エラーシンボ
ルがO次項Woにあったとすると前記手順でα1 を、
更にEj、  Eiを求めることができる。
エラーシンボルはW31項かも知れないが、これに対し
てはV (xlを255−31=224回シフトしてW
31項をO次項にし、上記方法をとればよい。これは、
V (xlを224回シフトする代りに、スイッチ2を
b側に倒して入力が常にOになるように除算器3による
演算を224回繰り返してもよい。更にこれは、コント
ローラ4及び演算器5を用いて簡単に行なうことができ
る。即ち、V (xlをG(x)で割った余りR(xl
の係数「3〜roと、x224V(x)をG (xlで
割った余りR’fX)の係数rl’〜ro′との間には
次の関係式が成立つ。
・・・・・・αη そこで一旦、除算器3のレジスタに残ったr3〜roを
コントローラ4に取り込み、演算器5で上記 式の計算
を行ない、rs′〜ro’を求める。
こ\で演算器5は、CF(28)上の任意の元の乗除算
および加算を行なう。また(17)式の係数α159゜
α 、・・・・・・はROM6などに格納しておく。
エラーロケーションを求めるには除算器3の各レジスタ
に係数r3′〜ro′をセットし、スイッチ2はb側に
倒し、演算器5を用いて比r3′:r2’:rl′を求
める。ROM6には比r3′:r2’:rl′ とエラ
ーロケーションとの関係を示すデータを予め書込んでお
き、演算器5で求めた比r3’:   ’:rl′に一
致するエラー0ケーシヨンα を探す。α が得られた
らEj。
α’  、 Eiを求めバッファメモリ7に蓄えておい
た符号列V (xlの該当シンボルに加算器8でEi、
 Ejを加算しく排他オアをとる)、エラー訂正を行な
う。
もし一致するエラーロケーションα1がなければ除算器
3の各レジスタを1回シフト動作させ、上記比を求める
等の一連の処理を行なう。この処理はエラーロケーショ
ン検出、エラー訂正、が行なわれるまで繰り返し、32
回繰り返しても一致するエラーロケーションが見付から
ない場合は3シンボル以上のエラー(これは訂正不能)
と判断する。
以上ではGF(28)上の元を符号とする(32.28
.5)のリードソロモン符号を例にして説明したが、本
発明は一般のリードソロモン符号のみならず、巡回符号
であれば応用可能である。
〔発明の効果〕
本発明によれば、リードソロモン符号の2シンボルエラ
ー訂正のアルゴリズムを、1シンボルエラー訂正のアル
ゴリズムに帰着させることができ、従って訂正動作を高
速化することができる。シンドロームは求めず、剰余多
項式の係数から、1シンボルエラーに帰着させてエラー
ロケーション及びエラーの大きさを求める。この際シフ
トを行なうが、シフト前の前記係数とシフト後のそれと
の関係を予め求めておき、演算よりシフト後の該係数を
求めるようにすると、処理を一層高速化することができ
る。
【図面の簡単な説明】
第1図は本発明の実施例を示すブロック図、第2図は除
算器の構成を示すブロック図である。 図面で3は除算器、8はエラー訂正を行なう加算器であ
る。

Claims (2)

    【特許請求の範囲】
  1. (1)符号列V(x)を生成多項式G(x)で割って剰
    余多項式R(x)を求める第1のステップと、 エラーロケーションαi、αjおよびエラーの大きさE
    i、Ejを含む、剰余多項式R(x)の各項の係数より
    、エラーシンボルは0次項として1シンボルエラー化し
    、そのエラーシンボルのロケーションおよび大きさを、
    次いで前記0次項のエラーの大きさを求める第2のステ
    ップと、 符号列V(x)を巡回させて各項を順次0次項とし、こ
    の巡回させた符号列に対し、生成多項式で割った剰余多
    項式を求め、その各項の係数より、前記第2のステップ
    による処理でエラーロケーションおよびエラーの大きさ
    を求める第3のステップと、得られたエラーロケーショ
    ン及びエラーの大きさにより符号列V(x)を訂正する
    第4のステップとを有することを特徴とする巡回符号の
    エラー訂正方法。
  2. (2)第3のステップにおける剰余多項式の各項の係数
    は、巡回前のそれと巡回後のそれとの間の予め求めてお
    いて関係式により演算して求めることを特徴とする特許
    請求の範囲第1項記載のエラー訂正方法。
JP61066528A 1986-03-25 1986-03-25 エラ−訂正方法 Pending JPS62222718A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61066528A JPS62222718A (ja) 1986-03-25 1986-03-25 エラ−訂正方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61066528A JPS62222718A (ja) 1986-03-25 1986-03-25 エラ−訂正方法

Publications (1)

Publication Number Publication Date
JPS62222718A true JPS62222718A (ja) 1987-09-30

Family

ID=13318462

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61066528A Pending JPS62222718A (ja) 1986-03-25 1986-03-25 エラ−訂正方法

Country Status (1)

Country Link
JP (1) JPS62222718A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63132532A (ja) * 1986-11-25 1988-06-04 Ricoh Co Ltd 拡張ガロア体上の多項式除算回路

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63132532A (ja) * 1986-11-25 1988-06-04 Ricoh Co Ltd 拡張ガロア体上の多項式除算回路

Similar Documents

Publication Publication Date Title
US5517509A (en) Decoder for decoding ECC using Euclid's algorithm
US6543026B1 (en) Forward error correction apparatus and methods
JPH0452556B2 (ja)
JP2001502153A (ja) 大規模データ・ブロックのためのハードウェア最適化リード・ソロモン・デコーダ
WO1997000559A1 (en) Dedicated alu architecture for 10-bit reed-solomon error correction module
JP2800723B2 (ja) リードソロモン復号器の誤り位置検出回路
US20030131308A1 (en) Method and apparatus for solving key equation polynomials in decoding error correction codes
EP1442528A2 (en) Decoding method and decoder for reed solomon code
KR101238108B1 (ko) 리드-솔로몬 인코딩 및 디코딩을 수행하는 방법 및 장치
JPH10112660A (ja) リード・ソロモン符号を利用した誤り復号方法および装置
JPS62222718A (ja) エラ−訂正方法
WO1994015406A1 (en) Method of and circuit for correcting errors
JP3233502B2 (ja) 復号化装置
JP2000295116A (ja) 誤り修正符号化方法
JP2907138B2 (ja) 誤り訂正の演算処理方法及び処理回路
US6446233B1 (en) Forward error correction apparatus and methods
JPS58123144A (ja) リ−ド・ソロモン符号復号方式
JP2008112522A (ja) 誤り検出装置および誤り検出方法
JP2553571B2 (ja) ガロア体演算装置
JP3280470B2 (ja) 誤り訂正回路
JP3230888B2 (ja) ユークリッド互除回路
JPH0834439B2 (ja) ガロア体演算装置
TWI272778B (en) Method and apparatus for generating parity characters for a codeword of a cyclic code
JPS63146619A (ja) ガロア体演算装置
JPH09185518A (ja) 原始元αのべき乗生成方式及びその装置