JPH10112660A - リード・ソロモン符号を利用した誤り復号方法および装置 - Google Patents

リード・ソロモン符号を利用した誤り復号方法および装置

Info

Publication number
JPH10112660A
JPH10112660A JP9112716A JP11271697A JPH10112660A JP H10112660 A JPH10112660 A JP H10112660A JP 9112716 A JP9112716 A JP 9112716A JP 11271697 A JP11271697 A JP 11271697A JP H10112660 A JPH10112660 A JP H10112660A
Authority
JP
Japan
Prior art keywords
signal
error
syndrome
word
erasure
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
JP9112716A
Other languages
English (en)
Inventor
Wei-Hung Huang
維宏 黄
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.)
RENKA DENSHI KOFUN YUGENKOSHI
Original Assignee
RENKA DENSHI KOFUN YUGENKOSHI
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 RENKA DENSHI KOFUN YUGENKOSHI filed Critical RENKA DENSHI KOFUN YUGENKOSHI
Publication of JPH10112660A publication Critical patent/JPH10112660A/ja
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
    • H03M13/13Linear codes
    • H03M13/15Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
    • H03M13/151Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials

Landscapes

  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

(57)【要約】 【課題】 リード・ソロモン符号を使用してデジタルデ
ータについて誤り復号を行う方法及び装置である。 【解決手段】 この方法では、累乗計算を行わずに、乗
算/加算と、逆数計算と、シフト/対数計算と、位置計
算の一連の演算動作により、リード・ソロモン符号RS
m(n,n−4)として定められるデジタルデータに関
する誤り及びイレイジュアの値及び位置について復号を
行う。これによって、チェンサーチを行うことを避ける
ことができ、復号器を構成する装置が少なくなる。これ
らの計算により、デジタルデータに関する誤り、イレイ
ジュアの値及び位置が正確かつ迅速に決定される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、一般的には、リー
ド・ソロモン符号を利用したデジタルデータの誤り復号
を行う方法及び装置に関する。特に、本発明はリード・
ソロモン符号を利用して、累乗計算を行うことなく、一
連の積和演算動作によってデジタルデータにおける誤り
ワードの値及び位置を復号するための方法及び装置に関
する。
【0002】
【従来の技術】リード・ソロモン(以下「RS」と略記
する)符号は、通信におけるデータ保護のために非常に
重要なものであり、デジタルデータのバイト中の誤り訂
正を連続的に行うものである。一般的に、RS符号復号
器の設計において、二つの異なるタイプの回路が存在す
る。その一つはパイプラインタイプの回路であり、もう
一つはプロセッサに基づくプログラムコントロールタイ
プの回路である。パイプラインタイプのRS符号復号器
は、典型的には、リアルタイムで高速に動作するシステ
ムにおいて使用される。したがって、このパイプライン
タイプRS符号復号器の回路は複雑であり、高価である
ため、普通の速度しか要求しないシステムにおいては資
源及び費用の無駄になる。プロセッサに基づくプログラ
ムコントロールタイプのRS符号復号器においては、演
算論理装置(ALU)を使用して繰り返し計算を行う。
このタイプの復号器では、プログラム制御の下で計算が
行われRS符号復号器の回路の複雑さ及び費用を低減す
ることができる。パイプラインタイプのRS符号復号器
と、プロセッサに基づくプログラムコントロールタイプ
のRS符号復号器には明らかな差異が存在する。
【0003】RS符号復号器を利用した場合、転送され
るワードにおいて3つ以上の誤りが存在する場合には、
復号のための計算は非常に複雑になるため、適切にプロ
セッサに基づくプログラムコントロールタイプのRS符
号復号器を使用することはできない。しかし、従来のシ
ステムでは、3つ以上の誤りを有するワードを復号する
ためこのタイプものが使用され、これについて以下に示
す。
【0004】RS符号は、RSm(n,k)と定義する
ことができる。RS符号復号器の入力端子において、n
シンボルが受信され、各シンボルがmビットで構成され
る。誤り復号の後にkデータシンボルが復号器から転送
される。RSm(n,k) は以下のように定義され
る。 m:取り込まれた各シンボルのビット数 n≦(2m−1):RS符号の符号長 k:RS符号における情報ワードの数 d=n−k+1:RS符号のハミング距離 t=〔(d−1)/2〕:復号器によって復号される誤
りワードの最大の数 したがって、2つの誤りを有するワードを検出するRS
符号復号器において、t=2、d=2t+1=5、k=
n+1−5=n−4、となり、RSm(n,k)は、R
m(n、n−4)のように変形される。RSm(n、n
−4)符号のための生成多項式は次のように表される。
【0005】g(x)=(x−1)(x−α)(x−α
2)(x−α3) nシンボルにおいてv個の誤りワードが、l1,l2,l
3,l4,....,lvに位置し、それらの値はそれぞれ、
1,Y2,Y3,Y4,....,Yvと仮定できる。以下に
RS符号の復号原理を説明するため、nシンボルが復号
される前に位置liが既知の場合には、その誤りワード
を「イレイジュア」として定義し、nシンボルが復号さ
れる前に位置liが未知の場合には、その誤りワードは
「誤り」と定義される。
【0006】p及びqが次の式を満たす場合には、ハミ
ング距離(d=5)を有するRS符号によって、p誤り
ワード及びqイレイジュアワードを検出することができ
る。 2p+q≦d−1=5−1=4 (1) そして、もし、Xi=αli 1≦i≦v の場合、シ
ンドロームは、
【0007】
【数5】
【0008】のようになる。すなわち、Xj 及びYj
れぞれの組み合わせについてシンドロームS0,S1,S
2,S3が得られる。ここで、 v:イレイジュアワードと誤りワードの数、v=p+q p:誤りワードの数 q:イレイジュアワードの数 Xj:Xj=αljであって、ljはj番目の誤りの位置 Sk:シンドローム Yj:j番目の誤りの値 d:符号のハミング距離 いくつかの米国特許において例えば、尾崎(4,85
2,099)及び、岡本ら(4,677,622)によ
って次の式が知られている。
【0009】p=0、q=4の場合
【0010】
【数6】
【0011】q=3、p=0の場合
【0012】
【数7】
【0013】q=2、p=0の場合
【0014】
【数8】
【0015】q=1、p=0の場合 Y1=S0 (6) イレイジュアワードqの数が1から3の場合には、許容
できる誤りワードpの数は式(1)によって0又は1と
なる。pの実際の値が0又は1又は2以上のいずれであ
るかを判断するため(pが2以上の場合には、復号器に
よっていかなる誤りワードもnシンボルから検出するこ
とができない)、一組のファーネイシンドロームを引用
しなければならない。qが1の場合にはファーネイシン
ドロームは次のように定義される。
【0016】 T1=S1+S012=S2+S12 (7) T3=S3+S23 qが2の場合、ファーネイシンドロームは次のように定
義される。 T1=S2+(X1+X2)S1+X120 (8) T2=S3+(X1+X2)S2+X121 qが3の場合、ファーネイシンドロームは次のように定
義される。
【0017】 T1=S3+(X1+X2+X3)S2+(X12+X23 +X31)S1+X1230 (9) qが1又は2の場合にはpの値は次のルールによって決
定される。 (1)ファーネイシンドロームが全て0の場合、pの値
は0となる。 (2)ファーネイシンドロームが全て0でない場合、p
の値は1となる。 (3)ファーネイシンドロームの少なくとも1つが0で
あって、ファーネイシンドロームの少なくとも1つが0
でない場合、復号器によっていかなる誤りワードもnシ
ンボルから検出することができない。
【0018】さらにqが3であるときに、ファーネイシ
ンドロームが0の場合には、復号器によって誤りワード
をnシンボルから検出することができる。qが3であ
り、ファーネイシンドロームが0でない場合には、復号
器によって誤りをnシンボルから検出することはできな
い。pが1である場合、知られていない誤りワードの位
置は次の式によって決定することができる。
【0019】q=1、p=1の場合、
【0020】
【数9】
【0021】となる。q=2、p=1の場合
【0022】
【数10】
【0023】のようになる。上記式(3)から(11)
によって、qの値が0でない場合にのみ、pの値を決定
することができる。qが0の場合、pの値は次の量を評
価することによって決定される。 SA =S11+S02B =S22+S13 (12) SC =S03+S12 (1)3つの量が全て0の場合、pの値は1となる。 (2)3つの量が全て0でない場合、pの値は2とな
る。 (3)1以上の量が0であり1以上の量が0でない場
合、復号器によってnシンボルにおける誤りを訂正する
ことができない。
【0024】(1)の場合、すなわち、q=0及びp=
1の場合には次のようになる。
【0025】
【数11】
【0026】(2)の場合、すなわち、q=0及びp=
2の場合には次のようになる。
【0027】
【数12】
【0028】(p,q)=(2,0)の場合を除き、式
(3)から式(13)によって、X i及びYiは3種類の
計算すなわち、加算、乗算、逆数計算によって決定され
る。(qが0でない場合、i≦qの下で、nシンボルを
取り込みながらXiを得ることができ、Yi及びliの値
はさらに対数計算を行うことによって得られる。) p=2及びq=0の場合には、式(14)及び式(1
5)によって、いくつかの方法によってX1及びX2の値
を解くことができる。例えば、従来の方法としては、
「チェンサーチ」を行う方法がある。チェンサーチを使
用した方法においては。まず、X1が予め決められた値
に設定され、X1+X2がSUMとして設定される。すな
わちX2=SUM−X1が式(14)から得られる。その
後、式(15)においてX1、X2が代入される。この式
において、左辺が右辺の値と同じでない場合には、X1
は、前の値を参照して、他の予め決められた値に設定さ
れる。X1の値の設定を繰り返すことによってX2の値を
得ることができる。しかし、プロセッサに基づくプログ
ラムコントロール復号器においては、異なる値のX1
びX2を代入する計算を数回繰り返すため、復号速度は
非常に遅い。したがって、上記方法はシステム全体に対
して悪影響を及ぼすため、X1及びX2の実際の値を計算
することは実際的ではない。
【0029】
【発明が解決しようとする課題】したがって、本発明
は、リード・ソロモン符号を使用してデジタルデータの
誤りの復号を行う方法を提供するものであり、この方法
によるとリード・ソロモン符号のRSm(n、n−4)
として定められるデジタルデータにおける2つの誤りの
値及び位置を、加算、乗算、除算、シフト/対数計算、
及び位置計算を使用する一連の積和演算動作によって正
確かつ迅速に復号するのに有用である。
【0030】また、本発明のもう1つの目的は、そのよ
うな復号方法を実行するための装置を提供をすることに
ある。
【0031】
【課題を解決するための手段】上記は、本発明におい
て、リード・ソロモン符号を使用してシンドローム信号
を復号するための誤り復号方法を提供することによって
行われ、RS符号はRS m(n,k)として定められ、
ここでmは各シンドロームのビット数であり、nはリー
ド・ソロモン符号長、kはリード・ソロモン符号におけ
る情報ワードの長さであり、リード・ソロモン符号は、
p誤りワードとqイレイジュアワードを含み、n≦(2
m−1)及び2p+q≦d−1、そしてdはハミング距
離である。この誤り復号方法には、各シンドローム信号
に存在する誤りワード及びイレイジュアワードを復号し
て、数p及びqを決定することが含まれる。
【0032】各シンドローム信号に2つの誤りワードが
存在し、イレイジュアワードが存在しない場合に、2つ
の式、X1 2=α2l1及びX2 2=α2l2が位置を計算するに
当たって使用される。ここで、2つの誤りを有するシン
ドローム信号は次のように定義される。
【0033】
【数13】
【0034】ここで、X1=αl1、X2=αl2であり、l
1及びl2は2つの誤りワードの位置を定める。そして、
1及びY2は2つの誤りワードの値である。l1及びl2
は、α2l1及びα2l2の対数計算及びシフト計算をするこ
とによって得られ、Y1及びY2はX1 2=α2l1、X2 2
α2l2に応じた一連の積和演算動作によって得られる。
【0035】上記誤り復号方法において、シンドローム
信号にイレイジュアワードが存在しない場合、誤りワー
ドの数pは3つの量、S11+S02、S22+S
13、及び、S03+S12によって決定することがで
きる。これら3つの量がいずれも0でない場合には、p
は1となる。3つの量が全て0の場合、pは1となる。
上記3つの量の少なくとも1つが0であり、上記3つの
量の少なくとも1つが0でない場合には、pを決定する
ことはできない。
【0036】さらに、上記誤り復号方法において、位置
計算は次の式を計算することによって行われる。 αi+α-i→αi 1≦i≦2m−1 各シンドローム信号に2つの誤りワードが存在し、イレ
イジュアワードが存在しない場合には次のようになる。
【0037】
【数14】
【0038】したがって、誤りワードの位置l1及びl2
は、次の式に応じた位置計算をすることによって決定で
きる。 X1 2=α2l12 2=α2l2 そして、l1及びl2は次のようにして決定される。
【0039】
【数15】
【0040】さらに、本発明にかかる誤り復号方法は、
外部システムから供給されリード・ソロモン符号を使用
する転送されるワード信号に存在する誤りワード及びイ
レイジュアワードワードを復号する装置によって行われ
る。そのような装置としては、外部システムに連結さ
れ、そこから転送されるワード信号を受信しシンドロー
ム信号を発生するシンドローム発生器が含まれる。
【0041】イレイジュアワードを受信するため、外部
システムにイレイジュアカウンタが連結される。イレイ
ジュアワードが検出される度に、イレイジュアカウンタ
に記憶されているイレイジュアカウント値が1つ増加す
る。レジスタがシンドローム発生器に連結され、さらに
外部システムに連結されて、シンドローム信号及びイレ
イジュアワードワードを受信し、シンドローム信号及び
イレイジュアワードワードを予め決められた場所に記憶
する。演算論理装置(ALU)がそのレジスタに連結さ
れ、レジスタに記憶されているシンドローム信号及びイ
レイジュアワードワードを読み取り、レジスタにフィー
ドバック信号を供給し、演繹的な信号を発生させるた
め、予め決められた動作を行う。
【0042】比較器がその演算論理装置に連結され、前
記演繹的信号を受信し、比較動作を行い、比較信号を出
力する。プログラムコントローラが前記比較器及びイレ
イジュアカウンタに連結され、比較器から比較信号を受
信し、イレイジュアカウンタに記憶されているイレイジ
ュアカウント値を読み取り、プログラムコントロール信
号を出力する。プログラムカウンタがそのプログラムコ
ントローラに連結され、プログラムコントロール信号を
受信し、それに対応してプログラムカウント信号を発生
させ、さらに、プログラムコントローラにフィードバッ
ク信号を出力する。フィードバック信号の受信に応じ
て、プログラムコントローラはプログラムコントロール
信号を変更する。
【0043】インタプリタがそのプログラムカウンタに
連結され、プログラムカウント信号を受信し、それに応
じてレジスタアドレス信号及びALUイネーブル信号を
出力する。転送されるワード信号における誤りワードを
復号するため、演算論理装置(ALU)はレジスタアド
レス信号に応じてレジスタに記憶されているシンドロー
ム信号、さらにまた、イレイジュアワードを読み取る。
【0044】さらに、演算論理装置には、インバータ
と、乗算器/加算器回路と、シフト及び対数計算を行う
ためのシフト/対数回路と位置計算を行うためのロケー
タが含まれる。インバータによって、シンドローム信号
の逆数計算が行われ、乗算器/加算器回路によってシン
ドローム信号に対する加算及び乗算が行われる。シフト
/対数回路によってALUイネーブル信号に応じてシン
ドローム信号に対する対数計算及び対数計算の結果に対
するシフト計算が行われる。ロケータによって位置計算
が行われる。
【0045】フィードバック信号及び演繹的信号を発生
させるため、インバータ、乗算器/加算器回路、シフト
/対数回路及びロケータを動作させることによって、演
算論理装置内で選択的に上記方法が実行される。
【0046】
【発明の実施の形態】本発明の他の目的、特徴及び利点
については、以下に示す好適例を通じて、図面を参照し
ながら説明される。但し、この好適例は、本発明の技術
範囲を限定するものではない。図1において、本発明の
好適例としての復号装置200は、シンドローム発生器
210と、レジスタ220と、演算論理装置230と、
インタプリタ240と、比較器250と、プログラムカ
ウンタ260と、プログラムコントローラ270と、イ
レイジュアカウンタ280で構成される。演算論理装置
230は、インバータ232と、乗算器/加算器回路2
34と、シフト/対数回路236と、ロケータ回路23
8を有する。
【0047】外部システム100が信号の転送を開始す
ると、転送されるワード信号は回線10を介してシンド
ローム発生器210に転送され、イレイジュアワード信
号が回線32を介してレジスタ220及びイレイジュア
カウンタ280に転送される。シンドローム発生器21
0は、RS符号のフォーマットに応じて、転送されるワ
ード信号からシンドローム信号を発生させる。シンドロ
ーム信号は、回線12を介してレジスタ220に出力さ
れる。レジスタ220によって、予め決められたレジス
タ内の対応するアドレスに一時的に、各シンドローム信
号及びイレイジュアワード信号が記憶される。イレイジ
ュアカウンタ280が、回線32を介して、イレイジュ
アワード信号を受信する度に、イレイジュアカウンタ2
80に記憶されているイレイジュアカウント値に1が加
えられ、イレイジュアワード信号の合計値をカウントす
る。イレイジュアカウント値は、回線34を介してプロ
グラムコントローラ270に転送される。
【0048】復号装置200が動作可能になると、演算
論理装置230はそれぞれの回線13、14、15を介
して、レジスタ220に記憶されているシンドローム信
号及びイレイジュアワード信号を受信する。演算論理装
置230において一連の計算が選択的になされた後、フ
ィードバック信号は予め決められた位置に記憶されるこ
とになる回線16からレジスタ220に出力される。同
時に、演繹的信号が比較計算のために比較器250に出
力される。その後、比較信号が回線22からプログラム
コントローラ270に出力される。
【0049】比較器250の出力、イレイジュアカウン
タ280からのイレイジュアカウント値及びプログラム
カウンタ260に記憶されているプログラムカウント値
に基づいて、プログラムコントローラ270によって、
プログラムアドレスをジャンプするべきかどうか、及
び、ジャンプすべき場合には、どのアドレスへかが決定
される。前記決定に基づいて、プログラムコントロール
信号が回線28を介してプログラムコントローラ270
からプログラムカウンタ260に出力される。プログラ
ムカウンタ260がプログラムコントロール信号を受信
すると、プログラムカウント信号が回線24を介してイ
ンタプリタ240に出力される。同時に、プログラムカ
ウンタ260によってプログラムカウント値が変更さ
れ、プログラムコントローラ270のシフト動作の参考
とするために回線26からプログラムコントローラ27
0へのフィードバックとしてその変更値が出力される。
【0050】インタプリタ240は、プログラムカウン
タ260からプログラムカウント信号を受信しながら、
回線20からレジスタアドレス信号及び回線30からイ
ネーブル信号をそれぞれレジスタ220及び演算論理装
置230に出力する。演算論理装置230は、イネーブ
ル信号を受信しながら、上記レジスタアドレス信号に対
応して記憶されている値を読み取る。演算論理装置23
0においてなされる演繹的機能によって、転送されたワ
ード信号に存在する誤りワードの値及び位置が決定され
る。
【0051】演繹的機能を発揮させるため演算論理装置
230は、インバータ232、乗算器/加算器回路23
4、シフト/対数回路236及びロケータ回路238で
構成される。インバータ232はALU入力値に対して
逆数計算を行う。乗算器/加算器回路234は、ALU
入力値に対して加算及び乗算を行う。シフト/対数回路
236は、イネーブル信号に応じて、ALU入力値に対
して対数計算を行い、対数計算の結果に基づきALU入
力値に対してシフト計算を行う。ロケータ回路238
は、位置計算を行う。
【0052】図2において、シフト/対数回路236
は、対数計算器410及びマルチプレクサ420を含
む。データを計算する場合には、例えば、ALU入力値
は回線402を介して対数計算器410に転送され、シ
フトされているシンドローム信号及びシフトされていな
いシンドローム信号がそれぞれ、例えば、
【0053】
【数16】
【0054】のように、回線412及び414を介し
て、マルチプレクサ420へ出力される。マルチプレク
サ420がこれらの信号を受信し、回線422を介して
イネーブル信号(シフト)によって動作可能にされる
と、マルチプレクサ420は回線424を介して計算結
果を出力する。
【0055】シフト/対数回路236においてなされる
シフト/対数計算は以下の通りである。
【0056】
【数17】
【0057】位置の計算方法は次の通りである。 αi+α-i→αi 1≦i≦2m-1 (17) ワード信号が転送されると、誤りワード及びイレイジュ
アワードを復号するための装置200が初期動作を行
う。すなわち、まず最初に、レジスタ220の2つに記
憶された値がそれぞれαn、α-1と設定され、これらの
2つのレジスタがr1及びr2と定義される。したがっ
て、レジスタr1の値はαnであってレジスタr2の値は
α-1となる。最初に転送されたワード信号が復号装置2
00に転送されると、レジスタr1の値にα-1が掛けら
れる。そしてレジスタr1の値はr1×α-1に置き換えら
れる。すなわち、シンドローム信号が、転送されたデー
タのL番目の信号の場合には、レジスタr1の値はαn×
α-Lに設定される。イレイジュアワード信号が論理
「0」でないときは、常にr1の値がレジスタ220の
適当なレジスタに記憶される。そしてXi=αliの計算
が2以上の累乗計算をすることなく実行される。これに
よって回路の複雑さが低減される。
【0058】以前は、上述の通り、RS復号器によって
プロセッサに基づくプログラムコントロール構造におい
て2つの誤りを訂正することができた。しかしRS復号
器によって3つ以上の誤りを解かなければならない場合
には、計算式が非常に複雑になるため実際的ではない。
したがって、RS符号に存在する2つの誤りを訂正する
ことのできる復号器によって実際の要求に対応すること
ができる。
【0059】(p,q)=(0,1),(0,2),
(0,3),(0,4),(1,1)、又は(1,2)
の場合、上記式(3)から(10)によって誤り及びイ
レイジュアを訂正することができる。しかしp=2及び
q=0の場合には訂正することがでない。また、(p,
q)=(1,0)の場合には上記誤りは式(13)によ
って計算することができる。(Xi,Yi)の値は、上記
加算、減算及び逆数計算を行うことによって決定するこ
とができ、Yiの位置liの値もまた決定することができ
る。
【0060】また、p=2,q=0の場合、式(14)
及び(15)を解くことができる。
【0061】
【数18】
【0062】従来の計算方法では、例えばチェンサーチ
が行われるが、このサーチでは計算式が非常に複雑であ
り、時間がかかる。本発明においては、位置及びシフト
/対数の新たな計算方法によって誤りを復号する。式
(14)を(15)によって除することによって式(1
7)が次のような形で得られる。
【0063】
【数19】
【0064】位置の計算方法は次のようになる。 αi+α-i→αi 1≦i≦2m-1 (19) 位置の計算方法によって次の式が得られる。
【0065】
【数20】
【0066】式(15)に式(19)を乗ずることによ
って次の等式が得られる。
【0067】
【数21】
【0068】式(16)のシフト/対数計算と同じ方法
によって、l2の値が得られる。この方法によって値X1
2及びX2 2が得られる。式(5)によってY2の値を解く
ためには、X1及びX2の値を見つけるために、 i→αi の計算を行うことが必要である。
【0069】iからαiを計算することを避けるととも
にY2の値を解くために、式(5)が再定義される。
【0070】
【数22】
【0071】図3に示すフローチャ−トにおいて、すべ
ての転送ワードが復号器に入力されると、ステップ31
0で決定されるように、すべてのシンドローム信号が0
である場合には、これはもちろん転送されたワードに誤
りワードが存在しないことを示しているのであるが、次
のステップ、すなわちステップ340において復号動作
が終了する。すべてのシンドローム信号が0、ではない
場合には、ステップ312に進み、イレイジュアカウン
タ280に記憶されているイレイジュアカウント値がチ
ェックされる。イレイジュアカウント値が1、2、又は
3の場合には、左の枝に進み、ステップ314、ステッ
プ316、ステップ318のそれぞれに応じてファーネ
イシンドローム式を使用して誤りワードが存在するかど
うかが判断される。
【0072】例えば、イレイジュアカウント値が1の場
合、ステップ318において、式(7)のファーネイシ
ンドローム式が評価される。イレイジュアカウント値が
2の場合、ステップ316において、式(8)のファー
ネイシンドローム式が評価される。イレイジュアカウン
ト値が3の場合には、ステップ314において、式
(9)のファーネイシンドローム式が評価される。上記
ステップのいずれかが行われた後、ステップ320にお
けるX3及びステップ322におけるX2のようなX i
値が得られる。
【0073】イレイジュアカウント値が4の場合、ステ
ップ324において、式(3)によって値Y4が得ら
れ、そして値S1,S2,及びS0がY4の値に応じて更新
される。ステップ326において、式(4)によってY
3の値が直接得られ、このY3の値に基づいてS2,及び
0が更新される。そして、ステップ328において、
式(20)によってY2の値が得られ、このY2の値に基
づいてS0の値が更新される。そして、ステップ330
において、Y1の値が式(6)によって得られる。
【0074】Yiの計算方法は最大値「i」の代入によ
って開始される。計算値Yi(max)が既知の誤りワードと
され、その誤りワードは転送されたワードから除去され
るものとされても良い。式(2)に示される方法によっ
てSiの新しい値が得られる。例えば、Y4の値が既知で
あれば、Siの新値は、 S0 ← S0+Y41 ← S0+Y442 ← S2+Y44 2 のようになる。各Xiに対応してYiの各値が得られる。
【0075】同様に、イレイジュアカウント値が3の場
合、ステップ314において式(9)によるファーネイ
シンドロームT1が計算されチェックされる。その結果
が0でない場合には、これは誤りが復号されないことを
示し、これによってステップ342において復号が終了
する。シンドロームT1が0の場合には、フローは決定
ステップ314から枝分かれして、すでに述べたよう
に、ステップ326、ステップ328、及びステップ3
30で、Y1,Y2,及びY3の値が別々に計算される。
【0076】イレイジュアカウント値が2の場合、ステ
ップ316において、式(8)に応じてファーネイシン
ドロームT1、T2の値が計算されチェックされる。T1
又はT2が0であって、両方が0ではない場合、フロー
はステップ342において終了する。T1及びT2が共に
0の場合には、プロセスフローは枝分かれして、すでに
述べたように、ステップ328及びステップ330にお
いて値Y1及びY2が別々に得られる。
【0077】イレイジュアカウント値が1の場合、ステ
ップ318の決定が行われ、T1,T2,及びT3ににつ
いてのファーネイシンドローム式(7)が計算されチェ
ックされる。T1,T2,T3,の少なくとも1つが0で
あって、すべてが0ではない場合、復号は行われず、ス
テップ342を介して復号が終了する。T1,T2,及び
3が全て0の場合には、値Y1は上述のようにステップ
330において得られる。
【0078】上述の一連のステップによって値Yiが決
定された場合、対応する位置liはYiに応じる(li
値は上述のようにXiに対するシフト/対数計算によっ
て得られる)。次のステップ332において、liが訂
正範囲にあるかどうかが判断される。入力されたシンド
ローム信号の合計がnであるため、liの値は0からn
−1の範囲に存在しなければならない。もしliが訂正
範囲の外側にある場合には、復号は不可能であり、ブロ
ック342において停止する。
【0079】イレイジュアカウント値が0の場合には、
上記ステップと類似の要領で復号動作は完了できる。フ
ローは決定ブロック312からステップ334に枝分か
れして、そこで式(12)によって誤りワードの数が計
算される。式(12)で計算される量のいくつかが0、
すなわち、1つ以上が0であって全てが0ではない場
合、復号をすることは不可能であり、ブロック340に
おいて復号が終了する。式(12)において計算される
量のいずれもが0でない場合、すなわちp=2の場合に
は、それぞれステップ336及び328において、式
(14)から(19)によって値X1 2及びX2 2が計算さ
れ、そしてY2の値が計算されS0が更新される。式(1
2)において計算される量が全て0の場合、すなわちp
=1の場合には、値X1がステップ338において計算
され、ステップ330においてY1の値が計算される。
つぎに、上述のようにステップ332の試験が行われ
て、訂正範囲のチェックが行われる。
【0080】結論として、本発明はプロセスに基づく構
造の情報の分配を制御するプログラムを使用して、また
チェンサーチの冗長な計算を避けるための位置計算を使
用して、ハミング距離が5のRS符号を復号する新たな
方法を提供するものである。これによって、演算論理装
置が非常に単純となり、累乗計算をする必要がなくなる
ことが重要である。以下の4種の計算を行うだけで足り
る。
【0081】 乗算/加算: a,b,c,→ a・b+c シフト/対数計算: 式(16)参照 位置計算: 式(17)参照 短縮されたRS符号n≠2mに関しては、演算論理装置
230内のシフト/対数回路及びロケータのハードウェ
アがさらに単純化できる。まず最初にシフト/対数回路
はXi及びXi 2を使用して、値liを計算することができ
る。これはliが0からn−1の範囲にあるときのみ意
味があるものであって、liがその範囲外にある場合に
は復号を行うことはできない。したがって、図1のシフ
ト/対数回路236における対数表(図示せず)は0か
ら2n-1にのみ対応するものである。入力された値が有
効な範囲外にある場合には、シフト/対数回路によって
誤りフラグが出力される。
【0082】ロケータ238に関し、(l1>l2の場
合)(l1−l2)は1からn−1の範囲にあるため、式
(17)より、ロケータ回路238の出力値は1から2
m-1の範囲になければならない。したがって、位置計算
は1から最大(2m-1,n−1)の範囲内において実行
することができる。値がこの範囲外にあるときは、復号
器によっていかなる誤りワードの訂正もすることができ
ない、すなわち符号を解くことはできないことを示す誤
りフラグが出力される。
【0083】したがって、ハミング距離が5であるRS
符号を復号する復号器の好適例において、累乗計算を行
う必要はない。これによって演算論理装置が単純化され
る。2つの誤りワードが存在し、イレイジュアワードが
存在しない場合には、複雑な計算を繰り返し行う必要は
ない。そのため、復号速度が増加する。さらに、本発明
においては、RS符号の復号に関する分野において改良
がなされる。
【0084】本発明は、上述のように例示及び好適例を
介して説明がなされたが、本発明は上記開示された実施
例に限定されるものではないことを理解しなければなら
ない。本発明は種々の改良及び類似の構成を含むことを
意図しているものである。したがって、添付の請求の範
囲はそのような改良及び類似の構成を包含するように広
く解釈されなければならい。
【図面の簡単な説明】
【図1】本発明にかかる復号装置の好適例を示す回路ブ
ロック図である。
【図2】前記実施例におけるシフト/対数回路の回路ブ
ロック図である。
【図3】本発明にかかる復号方法の好適例を示すフロー
チャートである。
【符号の説明】
10、12、13、14、15、16、18、20、2
2、24、28、30、32、34、402、412、
414、422、424回線 100 外部システム 200 復号装置 210 シンドローム発生器 220 レジスタ 230 演算論理装置 232 インバータ 234 乗算器/加算器 236 シフト/対数計算器 238 ロケータ 240 インタプリタ 250 比較器 260 プログラムカウンタ 270 プログラムコントローラ 280 イレイジュアカウンタ 410 対数計算器 420 マルチプレクサ

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】 リード・ソロモン符号を使用してシンド
    ローム信号を復号する誤り復号方法であって、リード・
    ソロモン符号はRSm(n,k)として定められ、ここ
    でmは各シンドローム信号のビット数であり、nはリー
    ド・ソロモン符号長であり、kはリード・ソロモン符号
    における情報ワードの長さであり、このリード・ソロモ
    ン符号は、p誤りワードとqイレイジュアワードを含
    み、ここでn≦(2m−1)及び2p+q≦d−1であ
    って、dがリード・ソロモン符号のハミング距離であ
    り、この誤り復号方法は、 (a)シンドロームを復号し、それから各シンドローム
    信号に存在する誤りワード及びイレイジュアワードを得
    て各シンドロームのp及びqの数を決定し、 (b)各シンドロームに2つの誤りワードが存在しイレ
    イジュアワードが存在しない場合に、式X1 2=α2l1
    びX2 2=α2l2から、位置計算により、第1及び第2の
    誤り位置を得て、ここで2つの誤りを有するシンドロー
    ムは次のように定められ、 【数1】 ここで、X1 =αl1,X2 =αl2,l1及びl2は2つの
    誤りワードの位置を示し、Y1及びY2は2つの誤りワー
    ドの値であって、 (c)対数及びシフト演算を行うことにより、α2l1
    びα2l2に応じたl1及びl2を得て、 (d)X2 1=α2l1、X2 2=α2l2によって一連の積和演
    算を行うことにより、Y1及びY2を得ることを特徴とす
    る誤り復号方法。
  2. 【請求項2】 さらに、シンドロームにイレイジュアワ
    ードが存在しない場合に、次の3つの等式を解くことに
    より値SA ,SB ,SC を決定し、 SA =S11+S02B =S22+S13C =S33+S12 そして、SA ,SB ,SC が全て0の場合に、pが1で
    あると判断し、 SA ,SB ,SC のいずれも0でない場合に、pが2で
    あると判断し、 SA ,SB ,SC の1つ又は2つのみが0である場合
    に、pを決定することができないと判断することを特徴
    とする請求項1記載の誤り復号方法。
  3. 【請求項3】 前記ステップ(b)が次の要領で位置計
    算をすることを含むことを特徴とする請求項1記載の誤
    り復号方法。αi+α-i→i
    1≦i≦2m-1
  4. 【請求項4】 p=2及びq=0の場合に、前記ステッ
    プ(b)が次の計算をすることを含むことを特徴とする
    請求項3記載の誤り復号方法。 【数2】
  5. 【請求項5】 前記ステップ(c)が、次の計算によっ
    て誤りワードの位置を決定するl1及びl2を得ることを
    含むことを特徴とする請求項4記載の誤り復号方法。 X1 2=α2l12 2=α2l2
  6. 【請求項6】 前記ステップ(c)が、さらに次の計算
    をすることを含むことを特徴とする請求項5記載の誤り
    復号方法。 【数3】
  7. 【請求項7】 前記ステップ(d)が、次の計算により
    2つの誤りワードの値Y1及びY2を得ることを含むこと
    を特徴とする請求項6記載の誤り復号方法。 【数4】
  8. 【請求項8】 外部システムから転送されるワード信号
    に存在する誤りワード及びイレイジュアワードをリード
    ・ソロモン符号を使用して復号する装置であって、 (a)前記外部システムから転送されるワード信号を受
    信し、シンドローム信号を発生するシンドローム発生器
    と、 (b)前記外部システムからイレイジュアワードを受信
    し、イレイジュアワードを受信する度に、イレイジュア
    カウンタに記憶されているイレイジュアカウント値に1
    を加えるイレイジュアカウンタと、 (c)前記シンドローム発生器に連結され、前記シンド
    ローム発生器からシンドローム信号を受信し、前記外部
    システムからのイレイジュアビットを受信する入力を有
    し、予め決められた位置に前記シンドローム信号及びイ
    レイジュアビットを記憶するレジスタ手段と、 (d)前記レジスタ手段に連結され、前記レジスタ手段
    に記憶されている値を読み取り、予め決められた演算を
    行って第1のフィードバック信号と演繹的信号を発生
    し、そして、この第1のフィードバック信号を前記レジ
    スタ手段に供給する演算論理手段と、 (e)前記演算論理手段に連結され、前記演繹的信号を
    受信し、比較演算を行って比較信号を発生する比較器
    と、 (f)前記比較器及びイレイジュアカウンタに連結さ
    れ、前記比較器からの比較信号を受信し、前記イレイジ
    ュアカウンタに記憶されているイレイジュアカウント値
    を読み取り、プログラムコントロール信号を出力するプ
    ログラムコントローラと、 (g)前記プログラムコントローラにに連結され、前記
    プログラムコントロール信号に応答し、プログラムカウ
    ント信号及び第2のフィードバック信号を発生し、前記
    プログラムコントローラに第2のフィードバック信号を
    出力し、これによって前記プログラムコントローラが第
    2のフィードバック信号に応答して選択的にプログラム
    コントロール信号を変化させるプログラムカウンタと、 (h)前記プログラムカウンタに連結され前記プログラ
    ムカウント信号に応答して、レジスタアドレス信号及び
    イネーブル信号を発生し、前記レジスタ手段に連結され
    前記レジスタ手段に前記レジスタアドレス信号を供給
    し、そして、前記演算論理手段に連結され前記演算論理
    手段にイネーブル信号を送信し、この前記演算論理手段
    は、転送されるワード信号の誤りワードを復号するた
    め、前記イネーブル信号に応答して、前記レジスタアド
    レス信号に応じて、前記レジスタ手段に記憶されている
    前記シンドローム信号及び前記イレイジュアワードを読
    み取るインタプリタとを備えることを特徴とする復号装
    置。
  9. 【請求項9】 前記演算論理手段が、 前記シンドローム信号について逆数計算を行うインバー
    タと、 前記シンドローム信号について加算及び乗算を行う乗算
    器/加算器回路と、 前記イネーブル信号に応じて、前記シンドローム信号に
    ついて対数計算を行うとともに、該対数計算結果に対し
    てシフト計算を行うシフト/対数計算手段と、 位置計算を行うロケータ手段とを含むことを特徴とする
    請求項8記載の復号装置。
  10. 【請求項10】 前記予め決められた演算が、前記第1
    のフィードバックアルゴリズム信号と前記演繹的信号を
    発生するために、前記演算論理手段における前記インバ
    ータ、前記乗算器/加算器手段、前記シフト/対数計算
    手段及び前記ロケータ手段を選択的に実行することを特
    徴とする請求項8記載の復号装置。
JP9112716A 1996-09-30 1997-04-30 リード・ソロモン符号を利用した誤り復号方法および装置 Pending JPH10112660A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
TW085111911A TW311189B (en) 1996-09-30 1996-09-30 The error-corrected decoding method and its apparatus for Reed-Soloman code
TW85111911 1996-09-30

Publications (1)

Publication Number Publication Date
JPH10112660A true JPH10112660A (ja) 1998-04-28

Family

ID=21625465

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9112716A Pending JPH10112660A (ja) 1996-09-30 1997-04-30 リード・ソロモン符号を利用した誤り復号方法および装置

Country Status (5)

Country Link
US (1) US5944848A (ja)
JP (1) JPH10112660A (ja)
DE (1) DE19719654B4 (ja)
FR (1) FR2754121B1 (ja)
TW (1) TW311189B (ja)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3233860B2 (ja) * 1996-10-25 2001-12-04 松下電器産業株式会社 リードソロモン復号器
US6412090B1 (en) * 1998-06-18 2002-06-25 Globespanvirata, Inc. Galois field computation system and method
US20080282128A1 (en) * 1999-08-04 2008-11-13 Super Talent Electronics, Inc. Method of Error Correction Code on Solid State Disk to Gain Data Security and Higher Performance
US6631172B1 (en) 2000-05-01 2003-10-07 Lucent Technologies Inc. Efficient list decoding of Reed-Solomon codes for message recovery in the presence of high noise levels
TW468158B (en) * 2000-06-16 2001-12-11 Ali Corp Disc decoding method and system
US20040093790A1 (en) * 2002-02-28 2004-05-20 Baker Mark R. Combustion improvers for normally liquid fuels
KR20050114162A (ko) * 2004-05-31 2005-12-05 삼성전자주식회사 리드-솔로몬 부호를 사용하는 이동통신 시스템에서 내부및 외부 부호 복호 방법 및 그 장치
US20090106624A1 (en) * 2005-09-01 2009-04-23 Hiroaki Kondo Error correction method
KR100734294B1 (ko) * 2005-12-15 2007-07-02 삼성전자주식회사 결함 영역 검출/복구 방법 및 장치와 이를 이용한 디스크드라이브
US9762262B2 (en) * 2014-06-18 2017-09-12 Alcatel Lucent Hardware-efficient syndrome extraction for entangled quantum states

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0129849B1 (en) * 1983-06-22 1990-10-10 Hitachi, Ltd. Error correction method and system
US4646303A (en) * 1983-10-05 1987-02-24 Nippon Gakki Seizo Kabushiki Kaisha Data error detection and correction circuit
JPH0812612B2 (ja) * 1983-10-31 1996-02-07 株式会社日立製作所 誤り訂正方法及び装置
EP0426657B1 (en) * 1983-12-20 1999-03-10 Sony Corporation Method and apparatus for decoding error correction code
NL8400630A (nl) * 1984-02-29 1985-09-16 Philips Nv Decodeerinrichting voor een stroom van codesymbolen die woordsgewijze beschermd zijn door een dubbele reed-solomon-code met een minimum hamming-afstand van 5 over de codesymbolen en een verbladeringsmechanisme tussen de beide codes, alsmede speler voorzien van zo een decodeerinrichting.
FR2582888B1 (fr) * 1985-05-30 1987-08-21 Dornstetter Jean Louis Procede de transmission, avec possibilite de correction de paquets d'erreurs, de messages d'information et dispositifs de codage et de decodage pour la mise en oeuvre de ce procede.
JPS63193723A (ja) * 1987-02-06 1988-08-11 Sony Corp リ−ドソロモン符号の復号方法
DE3719404A1 (de) * 1987-06-11 1988-12-22 Bosch Gmbh Robert Verfahren und anordnung zur korrektur von fehlern in digitalen signalen
JP2775432B2 (ja) * 1987-11-23 1998-07-16 博一 岡野 誤り訂正/誤り検出/消失誤り訂正を同時に行うリード・ソロモン符号の復号装置
DE4140018A1 (de) * 1991-12-04 1993-06-09 Bts Broadcast Television Systems Gmbh, 6100 Darmstadt, De Verfahren und schaltungsanordnung zum decodieren von rs-codierten datensignalen
US5379305A (en) * 1992-07-20 1995-01-03 Digital Equipment Corporation Error correction system with selectable error correction capabilities
KR950002304B1 (ko) * 1992-10-07 1995-03-16 삼성전자주식회사 다중 오류정정 방법

Also Published As

Publication number Publication date
TW311189B (en) 1997-07-21
FR2754121A1 (fr) 1998-04-03
DE19719654A1 (de) 1998-04-09
FR2754121B1 (fr) 2000-06-16
US5944848A (en) 1999-08-31
DE19719654B4 (de) 2008-05-08

Similar Documents

Publication Publication Date Title
US4852098A (en) Polynomial operator in galois fields and a digital signal processor comprising an operator of this type
US5185711A (en) Apparatus for dividing elements of a finite galois field and decoding error correction codes
US5440570A (en) Real-time binary BCH decoder
KR920000828B1 (ko) 가로아체(Galois field)연산장치
US5535140A (en) Polynominal-set deriving apparatus and method
JP3176171B2 (ja) 誤り訂正方法及びその装置
EP0836285B1 (en) Reed-Solomon decoder with general-purpose processing unit and dedicated circuits
KR100260415B1 (ko) 고속시리얼에러위치다항식계산회로
JPH10112660A (ja) リード・ソロモン符号を利用した誤り復号方法および装置
US5541937A (en) Apparatus for uniformly correcting erasure and error of received word by using a common polynomial
JP2800723B2 (ja) リードソロモン復号器の誤り位置検出回路
JPS63186338A (ja) 誤り訂正回路
JP3343857B2 (ja) 復号装置、演算装置およびこれらの方法
JP3614978B2 (ja) ガロア体の除算方法および除算装置
JPH06314978A (ja) チェン・サーチ回路
EP1037148B1 (en) Error coding method
JP3233502B2 (ja) 復号化装置
JPS6217256B2 (ja)
JP3280470B2 (ja) 誤り訂正回路
JP2907138B2 (ja) 誤り訂正の演算処理方法及び処理回路
GB2324390A (en) Decoding Reed-Solomon codes for error correction
KR900000670Y1 (ko) 리드-솔로몬 엔코오더의 코오드워드 발생회로
KR0176809B1 (ko) 오류정정 장치
EP0458285A1 (en) Error location and error pattern calculation circuit
KR950008485B1 (ko) 단일에러정정용 리드-솔로몬 복호기