JP3135552B2 - リードソロモン符号の誤り検出及び訂正装置 - Google Patents

リードソロモン符号の誤り検出及び訂正装置

Info

Publication number
JP3135552B2
JP3135552B2 JP02214264A JP21426490A JP3135552B2 JP 3135552 B2 JP3135552 B2 JP 3135552B2 JP 02214264 A JP02214264 A JP 02214264A JP 21426490 A JP21426490 A JP 21426490A JP 3135552 B2 JP3135552 B2 JP 3135552B2
Authority
JP
Japan
Prior art keywords
error
register
reed
search
root
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP02214264A
Other languages
English (en)
Other versions
JPH0497622A (ja
Inventor
利明 高橋
信数 土居
徹 瀬戸山
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP02214264A priority Critical patent/JP3135552B2/ja
Publication of JPH0497622A publication Critical patent/JPH0497622A/ja
Application granted granted Critical
Publication of JP3135552B2 publication Critical patent/JP3135552B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はリードソロモン符号の誤り検出及び訂正装置
に関する。詳しくはディジタルビデオテープレコーダー
(DVTR)、ディジタルオーディオテープレコーダー(DA
T)等において、信頼性向上のために所定の方法で生成
されたパリティ信号を付加されたリードソロモン符号か
らなるディジタル信号を再生する場合に、付加したパリ
ティ信号をもとに所定の方法で誤りを検出し、元の正し
い信号に訂正する誤り検出及び訂正装置に係り、特に誤
り位置を特定するチェン探索法を用いたリードソロモン
符号の誤り検出及び訂正装置に関する。
〔従来の技術〕
従来、リードソロモン符号の誤り検出及び訂正方法に
ついては、電子通信学会論文誌、第J64−A巻、第2号
(1981年2月)第137頁乃至第144頁において論じられて
いる。該リードソロモン符号の誤り検出及び訂正方法
は、 (1)シンドロームの計算及び誤りの検出 (2)誤りシンボル数の判定及び誤り位置多項式の係数
算出 (3)誤り位置多項式の根の導出 (4)誤りの大きさ算出 (5)訂正の実行 の手順で行われる。ここでは、データである11シンボル
(1シンボル8ビット)に対して、生成多項式 G(X)=(X−1)(X−α)(X−α)(X−
α) …(1) により生成したパリティ4シンボルを付加したリードソ
ロモン符号である、(15,11)リードソロモン符号の復
号を例にとり、復号動作を説明する。なお、以下の説明
の中の演算はすべて有限体GF(28)上で行われる。
(1)シンドロームの計算及び誤りの検出 符号長15の符号語C=(c14,c13,…,c0)を記録して
これを再生したとき、再生系列R=(r14,r13,…,r0
が再生されたとする。ここで、再生系列Rに含まれる誤
り系列すなわち再生系列Rと符号語Cの差をE=(e14,
e13,…,e0)とするとき、Rは次のように表現される。
R(X)=C(X)+E(X) ここで、生成多項式G(X)が式(1)であるから、
シンドロームは、 Si=R(α) =E(α) i=0,1,2,3 …(2) で定義される。パリティのシンボル数だけ存在するシン
ドロームは、再生系列Rに誤りがない場合にはすべて0
(0ベクトル)になる。これより、シンドロームに0で
ないものが存在した場合は、再生系列Rの中に誤りが発
生しているということが検出できる。
シンドロームに0でないものが存在し、誤りが検出さ
れたならば、以下に示す訂正動作が行われる。
(2)誤りシンボル数の判定、及び誤り位置多項式の係
数算出 パリティを4シンボル持つ(15,11)リードソロモン
符号は2個以下の誤りを訂正できるが、誤りが2個かそ
れより多いかを判定することはできない。そこで、まず
訂正能力最大の2個の誤りが位置i,jにそれぞれEi,Ejの
大きさで発生したと仮定すると、式(2)から次式が得
られる。
S0=Ei+Ej …(3) S1=αiEi+αjEj …(4) S2=α2iEi+α2jEj …(5) S3=α3jEi+α3jEj …(6) 誤り位置を根に持つ誤り位置多項式を2次式 σ(X)=X2αaX+α …(7) とすると、 σ(X)=(X+α)(X+α) であることから α=α+α α=αα の関係を持つ。したがって、式(3)〜(6)よりα
+αjαをS0〜S3の関係式で表すことができれ
ば、誤り位置多項式(7)の係数をシンドロームの演算
により求めることができる。
式(4),(5)よりα2i2jの項を消去すると S2+(α+α)×S1=αα(Ei+Ej) である。したがって S2=αaS1+αbS0 …(8) の関係がある。また、式(4)〜(6)より S3=αaS2+αbS1 …(9) の関係がある。式(8),(9)を行列表現で表すと となるから である。したがって α=(S1S2+S0S3)/Δ α=(S22+S1S3)/Δ Δ=S1 2+S0S2 である。ここで、誤りが位置i、大きさEiの1つであっ
た場合は Δ=(αiEi)+Eiα2iEi=0 となることから、Δを誤りシンボル数の判定式として用
いることができる。Δ=0のときは誤りが1つの場合で
あり、その誤り位置多項式 σ(X)=X+α …(10) の定数項αは、σ(X)=0がαを解に持つことか
ら、式(3),(4)より、 α=α=S1/S0 と簡単に求めることができる。
(3)誤り位置多項式の根の導出 誤り位置多項式の根を求める方法としては、主に以下
に述べる2つの方法がある 第1の方法は誤り位置多項式を順次計算できるような
いくつかの多項式に変形し、それぞれの多項式の根を予
め求めて記憶したROMを参照することにより解く方法で
ある。
誤りが1個の場合は式(10)より明らかに、誤り位置
多項式の根はαである。誤りが2個の場合の誤り位置
多項式は、 X2+αaX+α=0 …(11) であり、α=0の時は2乗根となる。
これより、X1=X2=(α12の関係があり、アドレ
スに対してその1/2乗を出力するROMを予め用意しておけ
ば、それを参照することにより根を求めることができ
る。
さて、α≠0の時、式(11)の解をROMにより求め
ようとするならば、αaの2信号を入力する必要が
生じる。ROMのアドレスを16ビットにすれば、単純にROM
を参照することも可能であるが、その場合512kビット
(=216ワード×8ビット)のROMが必要となり、回路規
模等の点で非常に無駄が多い。そこで、 X=αaYとおくことにより、式(11)を、 Y2+Y+αb2a=0 …(12) と変形する。式(12)は定数項のみに外部から入力を必
要とする項を持ち、定数項に対する式(12)の根Y1,Y2
をROMに格納しておけば、4kビット(=28ワード×8ビ
ット)のROMにより効率良く解くことができる。
このように、式(11)を式(12)に変形することで小
容量のROMにより誤り位置多項式の根を求めることがで
きる。同様に3訂正以上の場合もこの観点から解くこと
ができる。詳しくは前述の公知例に述べられている。
第2の方法は本発明のもとになる従来技術で、誤り位
置多項式に全ての元を代入し、それが0となる元を根と
するもので、これは一般にチェン(Chien)探索法と呼
ばれる。例えば誤りが2個の場合を考えると、全ての元
に対するσ(X)すなわち を求めそれが0となる元を根とする方法である。
σ(α)〜σ(α14)は、初期値として K2(0)=1,K1(0)=αa,K0(0)=α σ(α)=K2(0)+K1(0)+K0(0) を与えると、次のような繰り返し計算により求めること
ができる。
K2(i)=α2K2(i−1) K1(i)=αK1(i−1) K0(i)=K0(i−1) σ(α)=K2(i)+K1(i)+K0(i) (4)誤りの大きさ算出 有限体GF(28)上のリードソロモン符号は1シンボル
が8ビットから構成されるため、誤りを訂正するために
は誤りの位置だけでなく、誤りの大きさも求めることが
必要である。式(3)〜(6)を見れば明かなように、
誤りの大きさは誤りの位置とシンドロームから求めるこ
とができる。式(3)、(4)を行列表現を用いて表す
と、 となる。したがって、 となる。1誤りの場合は式(3)から明らかに、Ei=S0
である。
(5)訂正の実行 以上のように求めた再生系列Rのi,j位置のシンボル
からEi,Ejをそれぞれ除くことにより、誤りを訂正する
ことができる。
〔発明が解決しようとする課題〕
上記従来技術の「(3)誤り位置多項式の根の導出」
において、第1の方法であるROMを参照して多項式を解
く方法は、前述のように1,2訂正のときは小容量のROMで
実現することができた。しかし、3訂正,4訂正になる
と、前述の方法により工夫を凝らしても、ROMのアドレ
スはそれぞれ16ビット,24ビットとなり、ハード化の実
現が容易でないという問題があった。
一方、第2の方法であるチェン探索法は、σ(α
からσ(α),σ(α)からσ(α),……,σ
(αN-2)からσ(αN-1)を求める(Nは整数で符号
長)、という具合に誤り位置多項式σ(X)に全ての元
を1個ずつ代入することにより誤り位置を求めている。
すなわち符号長範囲内のすべての位置を代入するため、
訂正する誤りの個数にかかわらず符号長に応じた処理時
間を要し処理に時間がかかる。このためDVTRのような高
速信号処理の要求される装置においては適用が困難であ
るという問題があった。
本発明の目的は、前記第2の方法であるチェン探索法
を改良することにより誤り位置多項式の根の探索時間の
短縮を図ったリードソロモン符号の誤り検出及び訂正装
置を提供することにある。
〔課題を解決するための手段〕
上記目的は、 リードソロモン符号により符号化したディジタル信号
及び誤り検出符号からなるディジタルデータを一時的に
記憶するメモリと、該メモリに記憶された該ディジタル
データに対して所定の有限体上の演算を施すことによ
り、該ディジタルデータの誤りを検出し、訂正する手段
を有するリードソロモン符号の誤り検出及び訂正装置に
おいて、 並列チェン探索により誤り位置多項式の根を求めるこ
とを特徴とするリードソロモン符号の誤り検出及び訂正
装置とすることにより達成される。
ここで上記の並列チェン探索は、チェン探索を並列し
て行なうものを言う。
並列チェン探索の1つの手法は まずσ(α),σ(α),……,σ(αP-1)(Pは
2以上の整数)を求める。
σ(α),σ(α),……,σ(αP-1)から σ(α),σ(αP+1),……,σ(α2p-1)を求める
という具合に全ての元を代入するまで、複数個の元を並
列に代入することにより誤り位置を求めるものである。
例えば、p=2、すなわち2並列にした場合は、従来
の直列チェン探索と同様に初期値を K2=1,K1=αa,K0=α と与えると、以下のようになる。
以上の繰り返し計算で求めることができる。
並列チェン探索の他の手法として、1つの符号語を複
数個のブロックに分割し、各ブロックについて従来技術
のごとく誤り位置多項式σ(X)に元を代入してチェン
探索を行なうこともできる。
〔作用〕
本発明によれば、チェン探索を並列に行なうため、符
号長の数より少ないステップ数ですべての元を探索する
ことが可能である。上記並列チェン探索の上記1つの手
法においては、 σ(α2m)とσ(2α2m+1)(ただしmは負でない整
数)が同時に求められる並列処理であることから、すべ
ての元に対するσ(X)を求めるステップ数を大幅に短
縮できる。例えば上記のp=2の例の場合には、従来の
直列チェン探索のステップ数の約1/2に短縮できる。
従ってリードソロモン符号の誤り検出および訂正の処
理に要する時間が大幅に短縮され、ディジタルVTRのよ
うな高速信号処理の要求される装置において適用が可能
になる。
〔実施例〕
第1図は本発明の実施例による、(15,11)リードソ
ロモン符号の復号を行なう誤り検出及び訂正装置のブロ
ック図を示したものである。リードソロモン符号の復号
は大きく分けて、シンドロームの計算及び誤りの検出,
誤りシンボル数の判定及び誤り位置多項式の係数算出,
誤り位置多項式の根の導出,各誤りの大きさ検出,入力
デイジタルデータの訂正、の5つの段階を経ることによ
り実行される。プログラムROM130はそれら各段階におけ
る回路の制御命令を予め記憶したものであり、プログラ
ムカウンタ131により発生するアドレスに応じて、回路
の各部分に制御信号を供給する。以下第1図を用い、本
発明の動作を各訂正段階に分けて簡単に説明する。
(1)シンドロームの計算及び誤りの検出 第1図において、101は情報部D10〜D0およびパリテイ
部P3〜P0からなる(15,11)リードソロモン符号を一時
的に記憶するメモリである。メモリ101に記憶されたデ
ィジタルデータはD10から順次読み出され、、シンドロ
ーム生成部102に送られる。シンドローム生成部102では
メモリ101から読み出されたディジタルデータPDから、
(15,11)リードソロモン符号の誤りを検出,訂正する
際に必要となる4つのシンドロームS0〜S3を生成する。
第2図は第1図のシンドローム生成部102を示す図であ
る。図のようにSS0レジスタ201,SS1レジスタ202,SS2
ジスタ203,SS3レジスタ204,加算回路205〜208,α12,
α乗算器209〜211により構成されている。ここでは一
例として、シンドロームS3を求める手順について説明す
る。
(a)まず、SS0レジスタ201,SS1レジスタ202,SS2レジ
スタ203,SS3レジスタ204がすべてクリアされて0の状態
となる。
(b)D10が第1図メモリ101から読み出され、加算回路
208に入力される。一方、SS3レジスタ204の内容0とα
の乗算がα乗算器211で行われ、この結果も同時に
加算回路208に供給される。ここで、α器の入力をI
=(U7,U6,U5,U4,U3,U2,U1,U0)、出力を0=(V7,V6,V
5,V4,V3,V2,V1,V0)とすると、 0=(U7,U6,U5,U4,U3,U2,U1,U0) ×(0,0,0,0,1,0,0,0) =(U7α+U6α+U5α+U4α+U3α+U2α+U1α +U0)×α =(U7α10+U6α+U5α+U4α+U3α+U2α +U1α+U0α) である。有限体GF(28)の原始多項式は、 X8+X4+X3+X2+1=0 であるから、 α=α+α+α+1 α=α+α+α+α α10=α+α+α+α ある。したがって、 0=U7+(α+α+α+α)+U6(α+α+α+α) +U5(α+α+α+1)+U4α+U3α+U2α +U1α+U0α =U4α+(U7+U3)α+(U7+U6+U2)α +(U7+U6+U5+U1)α+(U6+U5+U0)α +(U7+U5)α+U6α+U5 より、 V7=U4 V3=U0+U5+U6 V6=U3+U7 V2=U5+U7 V5=U2+U6+U7 V1=U6 V4=U1+U5+U6+U7 V0=U5 の関係が得られる。したがって、第3図に示すようにα
器は8個の排他的論理和301〜308で構成することがで
きる。また、α乗算器209,α乗算器210、及び以降
で用いるαのべき乗器(固定係数乗算器と呼ぶ)はすべ
てこの方法で構成できる。
加算回路208では、2つの入力をビットごとに排他的
論理和演算し(205〜207も同様である)、その結果を新
しくSS3レジスタ204にセットする。式で表せば次の様に
なる。
0×α+D10=D10→SS3 (c)加算回路208にはメモリ101から読み出されたD
9と、SS3レジスタ204の内容とαの積が入力する。加
算回路208は上述のようにビットごとの排他的論理和演
算(以下、単に加算と称す)を行い、その結果をSS3
ジスタ204にセットする。
D10×α+D9→SS3 以下同様の操作が繰り返され、最後にメモリ101からP
0が読み出され、最終的には次の値がSS3レジスタ204に
セットされる。
(…((D10×α+D9)×α+D8)…+P1)×α+P0→SS3 すなわち、 D10×(α14+D9×(α13+…+P1×α+P0→SS3 これは、情報部D10〜D0およびパリティ部P3〜P0から
なる(15,11)リードソロモン符号のシンドロームS3
ある。
他のシンドロームS0,S1,S2も同様に、それぞれに対応
する演算回路において、メモリ101から読み出されるデ
ータD10,…,P0から生成され、それぞれSS0レジスタ201,
SS1レジスタ202,SS2レジスタ203にセットされる。
このようにして求められたシンドロームS0〜S3は、SS
0〜SS3レジスタ201〜204より第1図0検出器103及びシ
ンドロームレジスタ104〜107に供給される。0検出器10
3はシンドロームS0〜S3が全て0であるかどうかを検出
する。すなわち、入力データの誤りの有無を検出する回
路である。第4図は0検出器103を示す図である。論理
和401〜404にはシンドロームS0〜S3それぞれのビット成
分が入力し、すべてのビット成分が“0"、すなわちシン
ドロームが0でありば“0"を出力する。それぞれの出力
はNOR405に入力し、シンドロームS0〜S3のすべてが0で
あれば、0検出器103の出力NEは“1"になる。信号NEは
プログラムカウンタ131に供給され、NEが“0"、すなわ
ち入力データに誤りが存在すればプログラムカウンタ13
1はカウントを開始し、以下の訂正動作が行われる。
(2)誤り位置多項式の係数算出 誤り位置多項式の係数を求める演算は、プログラムRO
M130の制御により、データセレクタ108,算術演算部10
9、及びAレジスタ110〜Dレジスタ113間で行われる。
算術演算部109は、従来技術の項で記述した、誤り位
置多項式の係数を算出するために必要な演算を行う部分
であり、そのブロック図は第5図に示される。第5図に
おいて、501は有限体GF(28)上の加算器、502は乗算器
であり、それぞれ入力U,Vの和,積を出力する。ここ
で、有限体GF(28)上の乗算U×Vは、U=(U7,U6,
U5,U4,U3,U2,U1,U0)、V=(V7,V6,V5,V4,V3,V2,V1,
V0)とすると、 と表すことができるから、第5図の乗算器502は第6図
のように構成できる。601〜608は固定係数乗算器、64個
の609は2入力論理積ゲート、610〜617はパリティジェ
ネレータ回路である。前述のように、固定係数乗算器は
排他的論理和ゲートから、パリティジェネレータもまた
排他的論理和ゲートにより構成されるので、有限体GF
(28)上の乗算器502は、2入力論理積ゲートと排他的
論理和ゲートにより構成できる。また、第5図503は入
力の逆元を出力するROM、504はデータセレクタ、505は
レジスタセレクタである。
従来技術の項で述べた誤り位置多項式の係数算出手順
が予め記憶されているプログラムROM130は、データセレ
クタ504,レジスタセレクタ505及び第1図データセレク
タ108に制御信号を供給する。各部分はその命令にした
がって動作し、最終的にBレジスタ111とCレジスタ112
に係数をセットする。ここで、次に誤り位置多項式の根
を導出する都合上、誤りが2つの場合はAレジスタ110
に1、Bレジスタ111にα、Cレジスタ112にαをセ
ットし、1つの場合はAレジスタ110に0、Bレジスタ1
11に1、Cレジスタ112にαをセットする。
(3)誤り位置多項式の根の導出 算術演算部109で求められた誤り位置多項式の係数K2,
K1,K0はチェン探索部114に送られる。第7図は探索を4
並列にした場合の第1のチェン探索部114の詳細図であ
る。チェン探索部はレジスタ701〜703、固定係数乗算器
704〜711、0検出器712〜715、マルチプレクサ716,71
7、レジスタ718、固定係数乗算器719〜722、マルチプレ
クサ723,724、レジスタセレクタ725、レジスタADR0728,
ADR1727及びコントロール信号発生回路728で構成され
る。以下、並列チェン探索の回路動作を簡単に説明す
る。
(2)で求められた誤り位置多項式の係数K2,K1,K
0は、第1図Aレジスタ110〜Cレジスタ112からレジス
タ701〜703にラッチされ、プログラムカウンタ131がホ
ールドされると共に並列チェン探索が開始される。第7
図の704〜707はそれぞれレジスタAのα器,α器,
α器,α器、708〜711はレジスタBのα器,α
器,α器,α器である。それぞれの乗算器は第3図
に示したα器と同様に、排他的論理和ゲート10〜20個
程度で構成できる。レジスタ701に記憶された値を
α、レジスタ702に記憶された値をαとすると、各
固定係数乗算器の出力信号はそれぞれA1=α2,A2=α4,
A3=α6,A4=α8,B1=αα,B2=αα2,B3=α
α3,B4=ααとなる。
各乗算器の出力は第7図712〜715の0検出器、及び71
6,717のマルチプレクサに供給される。0検出器712〜71
5は誤りを探索する回路であり、マルチプレクサ716,717
は並列探索後新たにレジスタ701,702に信号をセットす
る回路である。第8図は上記の0検出器712の詳細図で
ある。レジスタ701,702,703に記憶された信号をそれぞ
れαabとすると、入力端子にはそれぞれαa
bが入力し、加算回路801により各成分ごとの排他
的論理和が出力される。これが、誤り位置多項式 σ(X)=αaX2+αbX+α のX=αとした時、 σ(α)=α(α+α(α)+α =α+α+α の相当する。このσ(α)が0ベクトルであれば、位
置αすなわちP0が誤りであると言える。σ(α)は
σ(α)の各ビツト成分の論理和802により0ベクト
ルであるかどうかを検出され、0ベクトであれば出力信
号ER0は“0"、そうでなければ“1"となる。同様に、0
検出器713の入力端子にはαα2α,αが入力
し、 σ(α)=σ(α+α(α)+α が0ベクトルであれば出力信号ER1は“0"、そうでなけ
れば“1"となる。信号ER2,ER3も同様にして0検出器71
4,715から出力される。
また、課題を解決する手段の項で述べたごとく、並列
チェン接索の他の手法として1つの符号語を複数個のブ
ロックに分割し、各ブロックごとに対応する元を1つず
つ代入する手法にすることは、言うまでもなく可能であ
る。
誤り位置多項式σ(X)は解を2つ持つことから、信
号ER0,…ER3は最大2個まで“0"になる可能がある。し
たがって、この結果をROMによりレジスタADR0726,ADR17
27に取り込もうとしたならば、ROMのアドレスには出力E
R0,…ER3の他に、過去に検出された根の情報としてレジ
スタADR0726,ADR1727の内容が必要とされる。
上記のようにチェン探索を並列に行うと、根が同時に
複数個求まることがあるため、根をレジスタに格納する
ためのハードウェアはそのすべての可能性に合わせて構
成する必要がある。例えば単純にROMで構成するなら
ば、並列に計算した各σ(X)が0であるかどうかの情
報の他に、どこのレジスタに格納するか、すなわち根を
格納するレジスタの現在の状態の情報がアドレスとして
必要となる。したがって、誤り訂正能力の高い符号を復
号する場合には根を格納するレジスタが多くなり、符号
長が長い等の理由で多並列にした場合はσ(X)が多く
なるので、それぞれ大容量のROMが必要となる。
そこで、回路規模を抑えるために、1回の探索ではα
の指数部の小さい方から1つのみを根とする。例えば2
並列探索の場合においては、σ(α)とσ(α)が
ともに0であった場合にはαのみを根とする。そし
て、 K2=K2α2,K1=K1α,K0=K0 とすることにより、σ(α)が次回再び計算されるよ
うに制御する。K2,K1を制御する回路、及びその制御信
号を供給する回路は、大容量のROMに較べるとはるかに
小さな規模で構成することができる。
本実施例の2訂正,4並列チェン探索の場合では、根を
レジスタADR0726,ADR1727にセットするROMは、アドレス
がER0〜ER3,ADR0726,ADR1727の6ビット、出力がADR072
6,ADR1727の2ビットの26×2ビットの小容量のもので
構成することができる。しかし、誤り訂正能力の高い符
号を訂正する場合や、符号長が長いために多並列にした
場合、例えば4訂正,8並列探索とした場合には212×4
ビットの大容量のROMが必要となる。そこで、本発明で
は1探索で検出する誤りを最大1個とする。αの指数部
が小さい方から1つのみを検出することで、ROMを用い
ずに小さなハードウェア規模で並列チェン探索を構成す
る構成を次に示す。
第7図はこのように構成した場合の回路図である。コ
ントロール信号発生回路728はER0,…,ER3から、検出す
る誤りの位置を示す2ビットの信号CTL0、誤りの有無を
示す1ビットの信号CTL1を発生する回路であり、出力信
号CTL0はマルチプレクサ716,717及びマルチプレクサ72
3,724に、CTL1はレジスタセレクタ725に供給される。マ
ルチプレクサ716,717は制御信号CTL0に応じて新たにレ
ジスタ701,702に信号をセツトする。例えば、位置α
が誤りである(ER1=“0")、すなわちσ(α)=0
であると検出されたとする。CTL0は“01"となってマル
チプレクサ716,717に入力し、レジスタ701,702にはそれ
ぞれα4αがセットされ、次の探索は位置α
αが行われる。また、位置αが誤りである(ER3
“0")と検出された場合、または位置α〜αには誤
りがないと判断した場合には、レジスタ701,702にはそ
れぞれα8αがセットされ次の探索はα〜α
が行われる。
一方、レジスタ718,固定係数乗算器719〜722、マルチ
プレクサ723,724、レジスタセレクタ725では、コントロ
ール信号発生回路の出力CTL0,CTL1による制御をともな
って、レジスタADR0726,ADR1727に誤り位置のセットを
行う。第9図はレジスタセレクタ725の詳細図を示した
ものである。第9図に示すようにレジスタセレクタ725
はダウンカウンタ901、フリップフロップ902,903から構
成されており、制御信号としてコントロール信号発生回
路728からCTL1、プログラムROM130から誤りの個数Nを
入力する。レジスタ718はレジスタ701〜703に誤り位置
多項式の係数K2,K1,K0がセットされるのと同時に1(=
α)にセットされる。各乗算器719〜722はレジスタ71
8の出力信号SA0にα〜αを乗じた信号SA1〜SA4を出
力し、SA0〜SA3がマルチプレクサ724へ、SA1〜SA4がマ
ルチプレクサ723へ供給される。マルチプレクサ723は1
探索終了後にレジスタ718にセットする信号を出力し、
マルチプレクサ724は誤り位置を出力する。例えば、2
誤りでCTL0信号が“01"、すなわち位置αが誤りであ
ったならば、マルチプレクサ724はレジスタセレクタ725
を介してADR1にαをセットする。また、マルチプレク
サ723はαをレジスタ718にセットし、次の探索時には
マルチプレクサ724の入力端子はα〜αが入力され
る。ここで、CTL0が“11"、すなわち位置αが誤りで
あるか誤りが存在しない場合、マルチプレクサ714はと
もにαを出力するが、この場合にはレジスタセレクタ
717のコントロール信号CTL1により、αをレジスタADR
0726にセットするかしないかの制御を行う。
(4)各誤りの誤りの大きさの算出 並列チェン探索によって求められた誤りの位置P2,P1
は、第1図のシンドロームレジスタS2106,S3107にセッ
トされる。誤りの大きさを求める演算は(2)の誤り位
置多項式の係数を求める演算と同様に、プログラムROM1
30の制御により、データレクタ108,算術演算部109、及
びAレジスタ110〜Dレジスタ113間で行われる。従来技
術の項で述べた誤りの大きさ算出手順が予め記憶されて
いるプログラムROM130は、データセレクタ504,レジスタ
セレクタ505及び第1図データセレクタ108に制御信号を
供給する。各部分はその命令にしたがって動作し、最終
的にAレジスタ110とBレジスタ111に係数をセットす
る。ここで、Aレジスタ110にセットされる誤りの大き
さは、レジスタADR0726に格納されている誤りの位置に
対応し、Bレジスタ111はADR1727に対応する。
(5)入力ディジタルデータの訂正 第10図は第1図の訂正部115の詳細図である。訂正部
はRAM1001,ROM1002,マルチプレクサ1003,1004,コンパレ
ータ1005,ラッチ1006,カウンタ1007,1008,加算回路1009
から構成され、誤りの位置P1,P2と誤りの大きさK1,K2
ら入力データを訂正し、訂正後のデータNDを出力する回
路である。RAM1001はデータの位置を示すダウンカウン
タ1007からアドレス信号を入力し、予め書き込まれた訂
正前のデータPDを出力する。なお、ダウンカウンタ1007
は初期状態で符号長にセットされている。マルチプレク
サ1003,1004はそれぞれ次回訂正する誤りの誤りの位置
と誤りの大きさを出力し、カウンタ1008はその制御信号
を供給する。初期状態では、カウンタ1008は“1"にセッ
トされ、マルチプレクサ1003,1004からはそれぞれP2,K2
が出力されている。マルチプレクサ1003の出力はROM100
2のアドレスとして入力し、ROM1002はベクトルとして記
憶されている誤りの位置をαを指数部に変換する。
訂正開始と共にRAM1001はカウンタ1007からアドレス
信号を入力し、格納しているデータを出力する。コンパ
レータ1005はカウンタ1007の出力とROM1002の出力が一
致しているか、すなわちデータが誤りであるかどうかを
調べ、加算回路1009に制御信号を供給する。加算回路10
09ではその制御信号によりデータが誤りであるかどうか
を判断し、誤りであればマルチプレクサ1004の出力、す
なわち誤りの大きさとデータの排他的論理和をとり訂正
する。
また、コンパレータの出力はラッチ1006にも供給さ
れ、次のクロックでラッチ1006の出力がカウンタ1008の
クロックとして入力する。カウンタ1008の内容は2とな
り、マルチプレクサ1003,1004からはP1,K1が出力され
る。以下、同様な処理を行いRAM1001からすべてのデー
タが出力されることにより訂正が完了する。
〔発明の効果〕
本発明で述べた並列チェン探索を行うことにより、す
べての位置を調べるのに必要な探索回数は、従来の直列
チェン探索の符号長回に対して高々、[符号長/並列段
数回]([X]:X以上の最大整数)になる。例えば、実
施例で用いた符号長15の符号で比較すると、従来の直列
チェン探索は15クロック要するのに対して、実施例の4
並列チェン探索は4クロックですべての元を探索するこ
とができる。この探索回数の低減は符号長が長くなるほ
どより顕在化する。
しかし、符号長が長いために多並列にした場合や、訂
正能力の高い符号の復号を行う場合には、探索結果をレ
ジスタに取り込む為に必要なハードウェア量は指数的に
多くなる。それに対して本発明によれば、1度の並列探
索で決定する根を最大1個とする制御回路を設けること
で、探索回数は誤りの個数回ほど多くなるが、ハードウ
ェア量の増加はごくわずかに抑えることができる。
【図面の簡単な説明】
第1図は本発明の実施例による、(15,11)リードソロ
モン符号の復号を行なう誤り検出及び訂正装置のブロッ
ク図、第2図は第1図のシンドローム生成部102を示す
図、第3図は第2図のα乗算器211を示す図、第4図
は第1図の0検出器103を示す図、第5図は第1図の算
術演算部109を示す図、第6図は第5図の乗算器502を示
す図、第7図は第1図のチェン探索部114の詳細図、第
8図は第7図の0検出器706の詳細図、第9図は第7図
のレジスタセレクタ725の詳細図、第10図は第1図の訂
正部115の詳細図である。
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) H03M 13/00 G06F 11/10 330

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】リードソロモン符号により符号化したディ
    ジタル信号及び誤り検査符号からなるディジタルデータ
    を一時的に記憶するメモリと、該メモリに記憶された該
    ディジタルデータに対して所定の有限体上の演算を施す
    ことにより、該ディジタルデータの誤りを検出し、訂正
    する手段を有するリードソロモン符号の誤り検出及び訂
    正装置において、並列チェン探索により誤り位置多項式
    の根を求め、一回の探索で検出する根の数を最大1個と
    し、複数個の根が存在する場合には、次の探索は検出し
    た根の次の元から該並列チェン探索を行うリードソロモ
    ン符号の誤り検出及び訂正装置。
JP02214264A 1990-08-15 1990-08-15 リードソロモン符号の誤り検出及び訂正装置 Expired - Fee Related JP3135552B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP02214264A JP3135552B2 (ja) 1990-08-15 1990-08-15 リードソロモン符号の誤り検出及び訂正装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP02214264A JP3135552B2 (ja) 1990-08-15 1990-08-15 リードソロモン符号の誤り検出及び訂正装置

Publications (2)

Publication Number Publication Date
JPH0497622A JPH0497622A (ja) 1992-03-30
JP3135552B2 true JP3135552B2 (ja) 2001-02-19

Family

ID=16652869

Family Applications (1)

Application Number Title Priority Date Filing Date
JP02214264A Expired - Fee Related JP3135552B2 (ja) 1990-08-15 1990-08-15 リードソロモン符号の誤り検出及び訂正装置

Country Status (1)

Country Link
JP (1) JP3135552B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008290271A (ja) * 2007-05-22 2008-12-04 Murata Mach Ltd ネットワーク複合機

Also Published As

Publication number Publication date
JPH0497622A (ja) 1992-03-30

Similar Documents

Publication Publication Date Title
US5414719A (en) Operating circuit for galois field
JP2821324B2 (ja) 誤り訂正回路
US5157669A (en) Comparison of an estimated CRC syndrome to a generated CRC syndrome in an ECC/CRC system to detect uncorrectable errors
EP0167627A1 (en) Method and apparatus for decoding error correction code
US6543026B1 (en) Forward error correction apparatus and methods
US5490154A (en) Method of and circuit arrangement for decoding RS-coded data signals
EP0105499B1 (en) Method capable of simultaneously decoding two reproduced sequences
JP3281387B2 (ja) Crc/edcチェッカシステム
JP4022293B2 (ja) エラー訂正方法及び装置
JP3345385B2 (ja) チェンサーチ装置
US6128760A (en) Method and apparatus for calculating a CRC remainder
US7047481B2 (en) Decoding method and decoder for Reed Solomon code
JP3135552B2 (ja) リードソロモン符号の誤り検出及び訂正装置
JP3170920B2 (ja) エラー訂正方法及び訂正回路
JP2999881B2 (ja) リードソロモン符号の復号装置
JP3252515B2 (ja) 誤り訂正装置
US6446233B1 (en) Forward error correction apparatus and methods
JP2945539B2 (ja) 誤り訂正結果の検算回路
KR100335482B1 (ko) 에러정정시스템
KR100246342B1 (ko) 리드솔로몬오류수정장치
JP2948026B2 (ja) リードソロモン符号の復号方法
JPS638984Y2 (ja)
JP2553571B2 (ja) ガロア体演算装置
KR0166153B1 (ko) 에러정정 시스템의 에러위치 검색회로
JP2752510B2 (ja) 誤り訂正復号器

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees