JP2695195B2 - 誤り訂正回路 - Google Patents

誤り訂正回路

Info

Publication number
JP2695195B2
JP2695195B2 JP63218262A JP21826288A JP2695195B2 JP 2695195 B2 JP2695195 B2 JP 2695195B2 JP 63218262 A JP63218262 A JP 63218262A JP 21826288 A JP21826288 A JP 21826288A JP 2695195 B2 JP2695195 B2 JP 2695195B2
Authority
JP
Japan
Prior art keywords
code
data
circuit
crc
galois field
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
JP63218262A
Other languages
English (en)
Other versions
JPH0267825A (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.)
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 JP63218262A priority Critical patent/JP2695195B2/ja
Priority to KR1019890012461A priority patent/KR930001071B1/ko
Priority to US07/401,968 priority patent/US5068857A/en
Priority to DE68924944T priority patent/DE68924944T2/de
Priority to CN89106740A priority patent/CN1012400B/zh
Priority to EP89308902A priority patent/EP0357461B1/en
Priority to CA000610262A priority patent/CA1322056C/en
Publication of JPH0267825A publication Critical patent/JPH0267825A/ja
Application granted granted Critical
Publication of JP2695195B2 publication Critical patent/JP2695195B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G03PHOTOGRAPHY; CINEMATOGRAPHY; ANALOGOUS TECHNIQUES USING WAVES OTHER THAN OPTICAL WAVES; ELECTROGRAPHY; HOLOGRAPHY
    • G03GELECTROGRAPHY; ELECTROPHOTOGRAPHY; MAGNETOGRAPHY
    • G03G15/00Apparatus for electrographic processes using a charge pattern
    • 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/09Error detection only, e.g. using cyclic redundancy check [CRC] codes or single parity bit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • 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
    • 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/29Coding, 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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes

Landscapes

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

Description

【発明の詳細な説明】 [産業上の利用分野] この発明は、RS(リードソロモン)符号の誤り訂正及
びCRC(サイクリックダンダンシ符号)の誤り検出によ
り記録体のデータの誤りを訂正する回路に関し、特に経
済的な構成でCRC計算を高速化した誤り訂正回路データ
の処理方法に関する。
[従来の技術] 一般に、DAD(ディジタルオーディオディスク)、DAT
(ディジタルオーディオテープ)、光ディスク等におい
ては、データの誤りを訂正するために、情報mビットを
1シンボルとして扱い且つ冗長シンボル2tシンボルに対
しtシンボル訂正可能な符号で、m=8としたRS符号が
用いられている。
このうち、光ディスクにおいては、他の記録装置が2
〜3シンボル訂正のRS符号をい用いるのに対し、訂正能
力の大きい8シンボル訂正のRS符号を用いている。8シ
ンボルの誤りを高速に訂正するためには、例えば「ガロ
ア演算ユニットを用いたRS符号の復号法に関する一検
討」、吉田他、第9回情報理論とその応用シンポジウ
ム、第167〜170頁(1986)に示されたガロア体演算回路
を構成し、ユークリッドアルゴリズム又はバーレンカン
プアルゴリズム等の繰返し演算を実行すればよい。
第3図は、例えば「光ディスク用誤り訂正装置の一検
討」、吉田他、昭61信総全大、6−53(1987)の論文に
示された従来の誤り訂正回路のブロック図であり、特に
大きい符号長に対応するため、受信データからRS符号の
シンドローム計算するシーケンス回路を並列構成し、同
一回路を用いて誤り位置を求めている場合を示してい
る。
図において、(1)はRS符号(外符号)及びCRC(内
符号)を含む交錯した複数のデータ系列を格納するバツ
ファメモリである。
(2)はバッファメモリ(1)内のデータの交錯を解
くインタフェイス、(3)は各RS符号のシンドロームに
基づいてガロア体上の四則演算を行なうと共に、誤り数
値(パターン)を求めてバッファメモリ(1)内のデー
タを訂正するガロア体演算回路、(4)は各データから
RS符号のシンドロームを計算すると共に四則演算結果か
らチェンサーチを並列演算するシーケンス回路であり、
これらはデータバスを介して連結されている。
(5)はインタフェイス(2)、ガロア体演算回路
(3)及びシーケンス回路(4)を制御する制御回路で
あり、制御回路(5)には、シーケンス回路(4)とは
別チップのCRC符号化シーケンス回路(後述する)が接
続されている。
データ系列において、CRCを内符号とし且つRS符号を
外符号とした構成は、誤り検出能力が高く、RS符号にお
いて消失訂正を行なっても誤訂正の確率が小さいという
特長を有している。又、これらの符号をインタリーブ
(交錯)して用いることにより、バースト誤りに対して
も強い構成となる。尚、CRCは誤り検出を目的とした巡
回符号の一種であるが、RS符号もCRCと同様に誤り検出
に用いることができる。
ところで、5.25インチの追記型光ディスクにおいて
も、RS符号が用いられて標準化されようとしており、
(例えば、ISO/TC 97/SC23,Proposal for ISO,firstISO
DP9171/4,July,1987)、第4図は512バイト/セクタの
標準フォーマット例を示す。
ここで用いられるRS符号は、原始多項式p(X)が、 p(X)=X8+X5+X3+X2+1 … で表わされ、生成多項式G(X)が、 で表わされる。但し、α=(β88であり、βは原
始多項式p(X)の元である。又、CRCについては、原
始多項式がp(X)と同様であり、生成多項式g(X)
が、 で表わされる。第4図のフォーマットにおいて、#0〜
#4の各RS符号の情報シンボルの最後には、RS符号訂正
用のRSチェックシンボルが設けられている。
次に、CRC符号化シーケンス回路でのCRCチェックシン
ボルの生成動作について説明する。まず、データから以
下の式で表わされるI(X)を求める。
但し、Lは交錯数、nは符号長、dはRS符号の最小距
離、ij,kは情報シンボルであり、i≧L−4ならば、
j,0=0である。
512バイト/セクタでは、L=5、n=122、d=17で
あり、このI(X)に対するCRCチェックシンボルを求
める。ここで、I(X)に対するC(X)は、 C(X)=I(X)X4+Re[I(X)X4/8(X)] =I(X)+a3X3+a2X2+a1X=a0 … となる。但し、Re[A/B]はA/Bの剰余多項式、ak(k=
0〜3)はCRCチェックシンボルである。
式のチェックシンボルakは、I(X)が得られれば
簡単な回路構成により求めることができる。第5図はこ
のようなCRC符号化シーケンス回路を示す構成図であ
り、(6)はI(X)の入力端子、(7)はCRCチェッ
クシンボルa0〜a4の出力端子、(8)は制御回路(5)
に接続される制御信号入力端子、(9)〜(12)は直列
接続された各8ビット構成のレジスタ、(13)〜(16)
は各レジスタ(9)〜(12)の出力端子側に挿入された
論理加算回路、(17)〜(20)は各レジスタ(9)〜
(12)の入力端子側に接続されたα(式より、M=
40、117、228、97)倍用の乗算回路、(21)は論理加算
回路(16)の出力と制御信号との論理積を各乗算回路
(17)〜(20)に入力するゲートである。
次に、第5図のCRC符号化シーケンス回路の動作につ
いて説明する。
制御信号入力端子(8)からレジスタ(9)〜(12)
にリセツト信号を印加して各レジスタの内容をクリア
し、入力端子(6)からI(X)を高次から入力する
と、I(X)のシンボルは、論理加算回路(16)でレジ
スタ(12)の出力と論理加算され、更にゲート(21)を
介して乗算回路(17)〜(20)に入力される。従って、
乗算回路(17)でα40倍されたデータは制御信号入力端
子(8)から入力されるタイミング信号によりレジスタ
(9)にラッチされ、又、乗算回路18でα117倍された
データは、論理加算回路(13)でレジスタ(9)の出力
と論理加算され、その加算結果が、制御信号入力端子
(8)から入力されるタイミング信号によりレジスタ
(10)にラッチされる。以下、乗算回路(19)及び(2
0)の出力データも同様の処理がなされる。
こうしてデータI(X)を全て入力した時点で、レジ
スタ(9)には式のa0のデータが、レジスタ(10)に
はa1のデータが、レジスタ(11)にはa2のデータが、レ
ジスタ(12)にはa3のデータがラッチされる。次に、ゲ
ート(21)をオフした後、これらデータをレジスタ
(9)〜(12)に順にシフトし、出力端子(7)からCR
Cチェックシンボルa0〜a3として出力する。
このCRCチェックシンボルa0〜a3を、第4図に示すフ
ォーマツトの各チェックシンボル書込みエリアに対し、
符号化の場合は、 a3→i1,0 a2→i2,0 a1→i3,0 a0→i4,0 のように書込み、又、復号においては、一致するかどう
かを比較して誤り検出を行なう。
復号動作は、受信語(誤りを含むデータ)#0〜#4
について、以下の手順1)〜4)に従って順次RS符号が
訂正される。
1)受信語からRS符号のシンドロームを求める。
2)シンドロームから誤り位置多項式及び誤り数値多項
式を求める。
3)誤り位置多項式からチェンサーチにより誤り位置を
求める。
4)誤り位置、誤り位置多項式及び誤り数値多項式から
誤り数値を求め訂正を行なう。
以上の手順のうち、2)及び4)はガロア体演算回路
(3)、1)及び3)はシーケンス回路(4)により、
それぞれ分担実行される。
こうして訂正されたデータは、バッファメモリ(1)
に貯えられる。そして、全ての符号語(符号化されたデ
ータ)をRS符号で訂正した後、、第5図のCRC符号化シ
ーケンス回路を用いてCRCチェックシンボルを求め、更
に論理加算によりCRCの計算を行なっている。
[発明が解決しようとする課題] 以上のように従来の誤り訂正回路は、I(X)が得ら
れればCRCチェックシンボルakを容易に求めることがで
きるが、交錯した情報シンボルを論理加算しなければな
らないうえ、I(X)の0次ではCRCチェックシンボル
部分を0として計算しなければならず、又、復号時にお
いては交錯した全ての符号語をRS符号で訂正した後でな
いと、CRCの計算を開始できないという問題点があっ
た。
又、例えば特開昭62−161221号公報に記載されている
ように、RS符号の復号を行うエラー訂正回路と、RS符号
の誤り検出用のCRC計算を行うCRC演算回路とを並列に設
け、エラー訂正すると共に最終的にCRCによりエラー検
出するために、各回路のいずれか一方を選択的に動作さ
せて時分割処理又は並列処理を行う復号装置も提案され
ている。しかしながら、上記公報に開示された復号装置
は、データリクエスト信号が来たときに、誤り訂正処理
の実行を禁止して途中結果に対してCRC計算を行うもの
であり、信頼性を損なわずに高速化を実現することはで
きない。
この発明は上記のような問題点を解決するためになさ
れたもので、RS符号の復号を実行しながらCRC計算を実
行すると共に、ガロア体演算中には受信データをアクセ
スしない構成とすることにより、信頼性を損なうことな
く、I(X)を求めることなく高速にCRCチェックシン
ボルを計算できる誤り訂正回路のデータ処理方法を得る
ことを目的とする。
[課題を解決するための手段] この発明に係る誤り訂正回路の処理方法は、データの
誤りを訂正するRS符号を複数個交錯し、且つ複数個交錯
したRS符号データの誤り訂正後の誤りを検出するための
CRCを有する符号系列を複数個交錯し、符号系列をデー
タ系列として貯えるバッファメモリと、データ系列の交
錯を解くインタフェイスと、ガロア体上の四則演算を行
うと共に、少なくともCRCチェックシンボルデータのサ
イズ分のメモリを有するガロア体演算回路と、インタフ
ェイスを介してバッファメモリに接続されたシーケンス
回路と、インタフェイス、ガロア体演算回路及びシーケ
ンス回路を制御する制御回路とを備え、シーケンス回路
は、データからシンドロームを計算すると共に、ガロア
体演算回路の演算結果からチェンサーチにより誤り位置
を求めるRS符号シーケンス回路と、CRCの符号化計算を
行なうCRC符号化シーケンス回路とからなる並列回路に
より構成され、制御回路は、RS符号シーケンス回路及び
CRC符号化シーケンス回路のうちの一方を選択的に動作
させるように構成された誤り訂正回路において、制御回
路は、RS符号シーケンス回路及びガロア体演算回路を用
いて、各データに関する誤り訂正を実行し、CRC符号化
シーケンス回路及びガロア体演算回路を用いて、誤り訂
正が終了したRS符号データに関するCRC計算を次のRS符
号データの誤り訂正中に実行し、ガロア体演算回路は、
RS符号シーケンス回路によるシンドロームの演算結果を
受け取り、RS符号の復号動作中に、誤り訂正が終了して
いる前回のRS符号データ系列の情報シンボルについてCR
C符号化シーケンス回路を動作させることにより、前回
のRS符号についてのCRCチェックシンボルデータを計算
し、CRCチェックシンボルデータの計算が終了し且つガ
ロア体演算回路でのRS符号の復号動作が終了してCRC符
号化シーケンス回路でチェンサーチを演算する段階にお
いて、CRCチェックシンボルデータと、既に得られてガ
ロア体演算回路内に記憶されているCRCチェックシンボ
ルデータとを、シンボル毎にそれぞれガロア体加算して
再びガロア体演算回路内のメモリに記憶し、受信された
データ内のCRCチェックコードデータの対象となってい
るRS符号に関するデータ訂正及びCRC計算が終了して、R
S符号の復号が全て終了した時点で、既に得られたRS符
号部分のCRCチェックシンボルデータの加算結果をシン
ボル毎にそれぞれ加算し、制御回路は、RS符号により訂
正されたバッファメモリ内のCRCチェックコードデータ
とCRC計算及びガロア体演算の加算結果により得られた
メモリ内のCRCチェックシンボルデータとを比較し、両
者が一致しない場合に、CRCチェックコードデータの対
象となっているCRCチェックシンボルデータにRS符号デ
ータの訂正後に誤りが残存していると判定するものであ
る。
[作用] この発明においては、CRCが線形符号であることを利
用して、RS符号の復号を行なうガロア体演算回路の演算
動作中に並行して、CRC符号化シーケンス回路で、先にR
S符号により訂正した符号語の情報部分のCRCチェックシ
ンボルを求め、ガロア体演算回路で、これを先に得られ
た符号語のCRCチェックシンボルと逐次論理加算する。
そして、ガロア体演算回路で、RS符号の情報部分に記
録されているCRCチェックシンボルデータに対して生成
されるCRCチェックシンボルを求め、先に得られたCRCチ
ェックシンボルと論理加算し、更に、この論理加算によ
り得られたCRCチェックシンボルとRS符号の情報シンボ
ル部分に配置されたCRCチェックシンボルとを比較して
誤りを検出する。従って、従来のガロア体演算回路を用
いて、RS符号で訂正したデータのCRCチェックシンボル
を論理加算することができ、メモリのサイズはCRCチェ
ックシンボルデータのバイト容量分のみで済む。
[実施例] 第1図はこの発明の一実施例を示すブロック図であ
り、(1)〜(3)及び(5)は前述と同様のものであ
る。
(4A)はこの発明の要部をなすシーケンス回路であ
り、第5図と同構成のCRC符号化シーケンス回路(22)
と、RS符号のシンドローム計算及びチェンサーチを行な
うRS符号シーケンス回路(23)との並列回路から構成さ
れている。CRC符号化シーケンス回路(22)、RS符号シ
ーケンス回路(23)の各出力端子側には、バス出力制御
ゲート(26)、(27)が挿入されている。(24)は制御
回路(5)からシーケンス回路(4A)に入力される制御
信号、(25)はシーケンス回路(4A)とインタフェイス
(2)及びガロア体演算回路(3)とを連接するデータ
バスである。
次に、第2図のフローチャート図を参照しながら、第
1図に示したこの発明の一実施例の動作について説明す
る。尚、ここでは、第4図の標準フォーマットを用いた
光ディスクを例にとって説明する。
第2図において、S01、S11、S21、S31及びS41は前述
の手順1)、S02、S12、S22、S32及びS42は手順2)、S
03、S13、S23、S33及びS43は手順3)、S04、S14、S2
4、S34及びS44は手順4)に相当し、又、S05、S15、S2
5、S35及びS45はCRC計算ステップ、S06、S16、S26、S36
及びS46はCRCチェックシンボル記憶ステップ、S50は論
理加算ステップ、S60は比較ステップであり、途中の繰
り返しステップS32〜S43は図示しない。
尚、シーケンス回路(4A)内において、最初は、制御
信号(24)によりRS符号シーケンス回路(23)が動作す
るようにモード選択されている。
RS符号シーケンス回路(23)は、ステップS01〜S04に
より受信語#0の訂正が終了した後、受信語#1のRS符
号のシンドロームを求め(S11)、バス出力制御ゲート
(27)を介してガロア体演算回路(3)に転送する。
ガロア体演算回路(3)は、シンドロームデータから
受信語#1の誤り位置多項式及び誤り数値多項式を求め
(S12)、訂正動作を続ける。
この間に、シーケンス回路(4A)では、制御信号(2
4)によりCRC符号化シーケンス回路(22)が動作するよ
うにモード選択され、既に訂正された受信語#0の情報
データが、第4図に示す情報シンボルi0,n−d、i
0,n−d−1、…、i0,0の順に、バッファメモリ(1)
からインターフェイス(2)及びデータバス(25)を介
して、CRC符号化シーケンス回路(22)に入力される。C
RC符号化シーケンス回路(22)は、前述と同様に受信語
#0のCRCチェックシンボルakを求める(S05)。このと
き、入力端子(6)(第5図参照)には、I(X)の代
わりに1つの受信語データが入力される。
ステップS05及びS12が終了した時点で、受信語#0の
CRCチェックシンボルデータは、CRC符号化シーケンス回
路(22)からバス出力制御ゲート(26)及びデータバス
(25)を介してガロア体演算回路(3)に転送され、後
のステップS15により受信語#1のCRCチェックシンボル
データが求まるまで記憶される(S06)。
次に、シーケンス回路(4A)は、制御信号(24)によ
りRS符号シーケンス回路(23)が動作するようにモード
選択され、ガロア体演算回路(3)からの各多項式デー
タに基づいて、チェンサーチ演算により受信語#1の誤
り位置を求める(S13)。
そして、受信語#1の誤り位置がすべて求まった時点
で、ガロア体演算回路(3)により誤り数値を求め、受
信語#1を訂正する(S14)。
以下、同様にして、ステップS01〜S46により、第4図
のフォーマットのセクタ内のすべての受信語#0〜#4
についての処理操作を行なう。
このとき、フォーマット(i1,0〜i4,0)上のCRCチ
ェックシンボル(a3〜a0)も情報データとして入ってし
まうがとりあえずそのままにしておく。又、ステップS1
5、S25、S35及びS45で得られる受信語#1以降のCRCチ
ェックシンボルデータは、ステップS16、S26、S36及びS
46により、受信語#0のCRCチェックシンボルデータに
順次論理加算され、ガロア体演算回路(3)内に記憶さ
れる。
最後に、情報シンボルデータ部分に書込まれていたCR
Cチェックシンボルをガロア体演算回路(3)で論理加
算し、これを情報データとしたCRCチェックシンボルを
求め、これを受信語#0〜#4のCRCチェックシンボル
データを論理加算したデータに更に論理加算する(S5
0)。
そして、得られたCRCチェツクコードデータが、バッ
ファメモリ(1)内のフォーマット上に書込まれたCRC
チェックシンボルデータ(CRCチェックコード)と一致
するかどうかを比較し(S60)、RS符号による訂正後の
誤りを検出する。
このように、制御回路(5)は、ガロア体演算回路
(3)及びRS符号シーケンス回路(23)を用いて各デー
タに関する誤り訂正を実行し、次の誤り訂正を実行して
いる間に、ガロア体演算回路(3)及びCRCシーケンス
回路(22)を用いて、誤り訂正終了後のデータに関する
CRC計算を実行し、得られたCRCチェックシンボルデータ
をガロア体演算回路(3)内のメモリに蓄える。
同様に、次のデータに関する誤り訂正終了後に、更に
次のデータに関する誤り訂正を実行している間に、次の
誤り訂正終了後のデータに関するCRC計算を実行し、得
られたCRCチェックシンボルデータと、ガロア体演算回
路(3)内のメモリに記憶されている前回のCRCチェッ
クシンボルデータとを、ガロア体演算回路(3)で各シ
ンボル毎に論理加算して、再びガロア体演算回路(3)
内のメモリに記憶する。
最後に、受信データ内のCRCチェックコードデータの
対象となっているRS符号のデータ訂正及びCRC計算が終
了した時点で、上記演算により得られてガロア体演算回
路(3)内に記憶されているCRCチェックシンボルデー
タから、受信データに含まれてRS符号により訂正された
CRCチェックコードデータを計算した影響を、ガロア体
演算回路(3)を用いて除去し、これをCRCチェックシ
ンボルデータとする。
しかるのち、上記CRCチェックシンボルデータとバッ
ファメモリ(1)内に記憶されたRS符号で訂正されたCR
Cチェックコードデータとを比較し、両者が一致しない
場合に、RS符号による訂正後の誤りを検出することがで
きる。
このとき、RS符号のCRCチェックシンボルの論理加算
は、従来のガロア体演算回路を用いることができ、又、
ガロア体演算回路(3)内のメモリサイズは、CRCチェ
ックシンボルデータのバイト容量分のみで済むため、特
にコストアップにつながることはない。
尚、上記実施例では復号時のCRCを求める操作につい
て説明したが、符号化時のCRCのチェツクシンボルを求
める場合にも同様に適用できることは言うまでもない。
[発明の効果] 以上述べたようにこの発明によれば、シーケンス回路
をRS符号シーケンス回路及びCRC符号化シーケンス回路
の並列回路で構成し、演算モードにより何れか一方が動
作するように構成し、制御回路は、RS符号シーケンス回
路及びCRC符号化シーケンス回路のうちの一方を選択的
に動作させるように構成された誤り訂正回路において、
制御回路は、RS符号シーケンス回路及びガロア体演算回
路を用いて、各データに関する誤り訂正を実行し、CRC
符号化シーケンス回路及びガロア体演算回路を用いて、
誤り訂正が終了したRS符号データに関するCRC計算を次
のRS符号データの誤り訂正中に実行し、ガロア体演算回
路は、RS符号シーケンス回路によるシンドロームの演算
結果を受け取り、RS符号の復号動作中に、誤り訂正が終
了している前回のRS符号データ系列の情報シンボルにつ
いてCRC符号化シーケンス回路を動作させることによ
り、前回のRS符号についてのCRCチェックシンボルデー
タを計算し、CRCチェックシンボルデータの計算が終了
し且つガロア体演算回路でのRS符号の復号動作が終了し
てCRC符号化シーケンス回路でチェンサーチを演算する
段階において、CRCチェックシンボルデータと、既に得
られてガロア体演算回路内に記憶されているCRCチェッ
クシンボルデータとを、シンボル毎にそれぞれガロア体
加算して再びガロア体演算回路内のメモリに記憶し、受
信されたデータ内のCRCチェックコードデータの対象と
なっているRS符号に関するデータ訂正及びCRC計算が終
了して、RS符号の復号が全て終了した時点で、既に得ら
れたRS符号部分のCRCチェックシンボルデータの加算結
果をシンボル毎にそれぞれ加算し、制御回路は、RS符号
により訂正されたバッファメモリ内のCRCチェックコー
ドデータとCRC計算及びガロア体演算の加算結果により
得られたメモリ内のCRCチェックシンボルデータとを比
較し、両者が一致しない場合に、CRCチェックコードデ
ータの対象となっているCRCチェックシンボルデータにR
S符号データの訂正後に誤りが残存していると判定する
ようにしたので、信頼性を損なわずに、CRC計算に必要
な最小限の回路を追加するだけで、I(X)を求めるこ
となくCRCによる誤り検出が可能になり、又、RS符号の
復号と並列してCRCの計算処理を実行するので、セクタ
単位の訂正を高速で行なうことのできる誤り訂正回路の
データ処理方法が得られるという効果を奏する。
【図面の簡単な説明】
第1図はこの発明の一実施例を示すブロック図、第2図
は第1図の動作を説明するためのフローチャート図、第
3図は従来の誤り訂正回路を示すブロック図、第4図は
光ディスクの512バイト/セクタのデータの標準フォー
マットを示す説明図、第5図は一般的なCRC符号化シー
ケンス回路を示す構成図である。 (1)……バッファメモリ、(2)……インタフェイス (3)……ガロア体演算回路 (4A)……シーケンス回路、(5)……制御回路 (22)……CRC符号化シーケンス回路 (23)……RS符号シーケンス回路 (24)……制御信号 尚、図中、同一符号は同一又は相当部分を示す。

Claims (1)

    (57)【特許請求の範囲】
  1. 【請求項1】データの誤りを訂正するRS符号を複数個交
    錯し、且つ前記複数個交錯したRS符号データの誤り訂正
    後の誤りを検出するためのCRCを有する符号系列を複数
    個交錯し、前記符号系列をデータ系列として貯えるバッ
    ファメモリと、 前記データ系列の交錯を解くインタフェイスと、 ガロア体上の四則演算を行うと共に、少なくともCRCチ
    ェックシンボルデータのサイズ分のメモリを有するガロ
    ア体演算回路と、 前記インタフェイスを介して前記バッファメモリに接続
    されたシーケンス回路と、 前記インタフェイス、前記ガロア体演算回路及び前記シ
    ーケンス回路を制御する制御回路とを備え、 前記シーケンス回路は、 前記データからシンドロームを計算すると共に、前記ガ
    ロア体演算回路の演算結果からチェンサーチにより誤り
    位置を求めるRS符号シーケンス回路と、 前記CRCの符号化計算を行なうCRC符号化シーケンス回路
    と からなる並列回路により構成され、 前記制御回路は、前記RS符号シーケンス回路及び前記CR
    C符号化シーケンス回路のうち一方を選択的に動作させ
    るように構成された誤り訂正回路において、 前記制御回路は、 前記RS符号シーケンス回路及び前記ガロア体演算回路を
    用いて、前記各データに関する誤り訂正を実行し、 前記CRC符号化シーケンス回路及び前記ガロア体演算回
    路を用いて、誤り訂正が終了したRS符号データに関する
    CRC計算を次のRS符号データの誤り訂正中に実行し、 前記ガロア体演算回路は、 前記RS符号シーケンス回路による前記シンドロームの演
    算結果を受け取り、 前記RS符号の復号動作中に、誤り訂正が終了している前
    回のRS符号データ系列の情報シンボルについて前記CRC
    符号化シーケンス回路を動作させることにより、前記前
    回のRS符号についてのCRCチェックシンボルデータを計
    算し、 前記CRCチェックシンボルデータの計算が終了し且つ前
    記ガロア体演算回路での前記RS符号の復号動作が終了し
    て前記CRC符号化シーケンス回路で前記チェンサーチを
    演算する段階において、前記CRCチェックシンボルデー
    タと、既に得られて前記ガロア体演算回路内に記憶され
    ているCRCチェックシンボルデータとを、シンボル毎に
    それぞれガロア体加算して再び前記ガロア体演算回路内
    のメモリに記憶し、 受信された前記データ内のCRCチェックコードデータの
    対象となっている前記RS符号に関するデータ訂正及び前
    記CRC計算が終了して、前記RS符号の復号が全て終了し
    た時点で、既に得られたRS符号部分の前記CRCチェック
    シンボルデータの加算結果をシンボル毎にそれぞれ加算
    し、 前記制御回路は、 前記RS符号により訂正された前記バッファメモリ内のCR
    Cチェックコードデータと前記CRC計算及びガロア体演算
    の加算結果により得られた前記メモリ内のCRCチェック
    シンボルデータとを比較し、両者が一致しない場合に、
    前記CRCチェックコードデータの対象となっている前記C
    RCチェックシンボルデータに前記RS符号データの訂正後
    に誤りが残存していると判定することを特徴とする誤り
    訂正回路のデータ処理方法。
JP63218262A 1988-09-02 1988-09-02 誤り訂正回路 Expired - Fee Related JP2695195B2 (ja)

Priority Applications (7)

Application Number Priority Date Filing Date Title
JP63218262A JP2695195B2 (ja) 1988-09-02 1988-09-02 誤り訂正回路
KR1019890012461A KR930001071B1 (ko) 1988-09-02 1989-08-31 에러 정정회로
DE68924944T DE68924944T2 (de) 1988-09-02 1989-09-01 Fehlerkorrekturschaltung.
CN89106740A CN1012400B (zh) 1988-09-02 1989-09-01 错误校正电路
US07/401,968 US5068857A (en) 1988-09-02 1989-09-01 Error correction circuit
EP89308902A EP0357461B1 (en) 1988-09-02 1989-09-01 Error correction circuit
CA000610262A CA1322056C (en) 1988-09-02 1989-09-05 Error correction circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63218262A JP2695195B2 (ja) 1988-09-02 1988-09-02 誤り訂正回路

Publications (2)

Publication Number Publication Date
JPH0267825A JPH0267825A (ja) 1990-03-07
JP2695195B2 true JP2695195B2 (ja) 1997-12-24

Family

ID=16717116

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63218262A Expired - Fee Related JP2695195B2 (ja) 1988-09-02 1988-09-02 誤り訂正回路

Country Status (7)

Country Link
US (1) US5068857A (ja)
EP (1) EP0357461B1 (ja)
JP (1) JP2695195B2 (ja)
KR (1) KR930001071B1 (ja)
CN (1) CN1012400B (ja)
CA (1) CA1322056C (ja)
DE (1) DE68924944T2 (ja)

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0318364A1 (fr) * 1987-11-24 1989-05-31 Gaston Huguenin Ensemble de coffre-fort
JPH0458619A (ja) * 1990-06-28 1992-02-25 Canon Inc 誤り訂正システム
WO1992013344A1 (en) * 1991-01-22 1992-08-06 Fujitsu Limited Error correction processing device and error correction method
DE69223694T2 (de) * 1991-07-18 1998-04-23 Canon Kk Kodierungs- und Dekodierungssystem zur Fehlerkorrektur
DE69325415T2 (de) * 1992-05-18 1999-11-25 Canon Kk Datenverarbeitungsvorrichtung
US5446745A (en) * 1992-10-05 1995-08-29 Mitsubishi Semiconductor America, Inc. Apparatus for correcting errors in optical disks
JP2821324B2 (ja) * 1992-11-04 1998-11-05 三菱電機株式会社 誤り訂正回路
US5357527A (en) * 1992-12-31 1994-10-18 Trimble Navigation Limited Validation of RAM-resident software programs
FI940322A (fi) * 1993-01-25 1994-07-26 Hughes Aircraft Co Parannettu virheen korjaava dekooderi ja menetelmä vastaanottajille digitaalisissa solukkokommunikaatiojärjestelmissä
US5465260A (en) * 1993-11-04 1995-11-07 Cirrus Logic, Inc. Dual purpose cyclic redundancy check
KR0147150B1 (ko) * 1995-06-29 1998-09-15 김주용 디코더를 이용한 순환 리던던시 체크 오류 검출 및 정정 장치
JP3154679B2 (ja) * 1996-10-18 2001-04-09 三菱電機株式会社 連接符号の誤り訂正復号装置及び復号方法
US5970075A (en) * 1997-06-18 1999-10-19 Uniden San Diego Research And Development Center Inc. Method and apparatus for generating an error location polynomial table
CN100383886C (zh) * 1998-02-25 2008-04-23 松下电器产业株式会社 纠错装置和纠错方法
US6092231A (en) * 1998-06-12 2000-07-18 Qlogic Corporation Circuit and method for rapid checking of error correction codes using cyclic redundancy check
KR100340125B1 (ko) * 1999-10-06 2002-06-10 지 천 만 자외선 살균기의 전원 공급회로
US7111228B1 (en) 2002-05-07 2006-09-19 Marvell International Ltd. System and method for performing parity checks in disk storage system
US7007114B1 (en) 2003-01-31 2006-02-28 Qlogic Corporation System and method for padding data blocks and/or removing padding from data blocks in storage controllers
US7287102B1 (en) 2003-01-31 2007-10-23 Marvell International Ltd. System and method for concatenating data
US7039771B1 (en) 2003-03-10 2006-05-02 Marvell International Ltd. Method and system for supporting multiple external serial port devices using a serial port controller in embedded disk controllers
US7870346B2 (en) 2003-03-10 2011-01-11 Marvell International Ltd. Servo controller interface module for embedded disk controllers
US7492545B1 (en) 2003-03-10 2009-02-17 Marvell International Ltd. Method and system for automatic time base adjustment for disk drive servo controllers
US7080188B2 (en) 2003-03-10 2006-07-18 Marvell International Ltd. Method and system for embedded disk controllers
US7064915B1 (en) 2003-03-10 2006-06-20 Marvell International Ltd. Method and system for collecting servo field data from programmable devices in embedded disk controllers
US7526691B1 (en) 2003-10-15 2009-04-28 Marvell International Ltd. System and method for using TAP controllers
KR100594241B1 (ko) * 2004-01-29 2006-06-30 삼성전자주식회사 순방향 치엔 서치 방식의 리드 솔로몬 디코더 회로
US7139150B2 (en) 2004-02-10 2006-11-21 Marvell International Ltd. Method and system for head position control in embedded disk drive controllers
US7120084B2 (en) 2004-06-14 2006-10-10 Marvell International Ltd. Integrated memory controller
US8166217B2 (en) 2004-06-28 2012-04-24 Marvell International Ltd. System and method for reading and writing data using storage controllers
US9201599B2 (en) 2004-07-19 2015-12-01 Marvell International Ltd. System and method for transmitting data in storage controllers
US8032674B2 (en) 2004-07-19 2011-10-04 Marvell International Ltd. System and method for controlling buffer memory overflow and underflow conditions in storage controllers
US7757009B2 (en) 2004-07-19 2010-07-13 Marvell International Ltd. Storage controllers with dynamic WWN storage modules and methods for managing data and connections between a host and a storage device
US7386661B2 (en) 2004-10-13 2008-06-10 Marvell International Ltd. Power save module for storage controllers
US7240267B2 (en) 2004-11-08 2007-07-03 Marvell International Ltd. System and method for conducting BIST operations
US7802026B2 (en) 2004-11-15 2010-09-21 Marvell International Ltd. Method and system for processing frames in storage controllers
US7290189B2 (en) * 2005-03-28 2007-10-30 Verigy (Singapore) Pte. Ltd. Compilation of calibration information for plural testflows
US7609468B2 (en) 2005-04-06 2009-10-27 Marvell International Ltd. Method and system for read gate timing control for storage controllers
US7673222B2 (en) * 2005-07-15 2010-03-02 Mediatek Incorporation Error-correcting apparatus including multiple error-correcting modules functioning in parallel and related method
CN100437805C (zh) * 2006-01-16 2008-11-26 华中科技大学 高密度光盘的纠错编码方法及数据格式编制方法
WO2014041596A1 (ja) * 2012-09-11 2014-03-20 三菱電機株式会社 安全コントローラ
CN107196665B (zh) * 2017-06-14 2020-11-06 中国电子科技集团公司第三十六研究所 一种纠错纠删rs码的识别方法
US11061772B2 (en) * 2018-12-14 2021-07-13 Samsung Electronics Co., Ltd. FPGA acceleration system for MSR codes

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4162480A (en) * 1977-01-28 1979-07-24 Cyclotomics, Inc. Galois field computer
DE3376907D1 (en) * 1982-06-15 1988-07-07 Toshiba Kk Apparatus for dividing the elements of a galois field
EP0156440B1 (en) * 1984-03-24 1990-01-24 Koninklijke Philips Electronics N.V. An information transmission method with error correction for user words, an error correcting decoding method for such user words, an apparatus for information transmission for use with the method, a device for information decoding for use with the method and an apparatus for use with such device
JPH07114371B2 (ja) * 1986-01-10 1995-12-06 ソニー株式会社 復号装置
CA1264091A (en) * 1986-01-10 1989-12-27 Yoichiro Sako Generator for error correcting code and decoder for the code
JP2605271B2 (ja) * 1987-02-10 1997-04-30 ソニー株式会社 エラー訂正及びチエツク装置
US4949342A (en) * 1987-04-14 1990-08-14 Matsushita Electric Industrial Co., Ltd. Code error detecting method
JPS63257966A (ja) * 1987-04-15 1988-10-25 Matsushita Electric Ind Co Ltd 符号誤り検出方法

Also Published As

Publication number Publication date
EP0357461A3 (en) 1991-11-13
KR900005242A (ko) 1990-04-13
DE68924944D1 (de) 1996-01-11
US5068857A (en) 1991-11-26
DE68924944T2 (de) 1996-08-08
CN1040698A (zh) 1990-03-21
KR930001071B1 (ko) 1993-02-15
EP0357461B1 (en) 1995-11-29
CA1322056C (en) 1993-09-07
JPH0267825A (ja) 1990-03-07
CN1012400B (zh) 1991-04-17
EP0357461A2 (en) 1990-03-07

Similar Documents

Publication Publication Date Title
JP2695195B2 (ja) 誤り訂正回路
JP2605271B2 (ja) エラー訂正及びチエツク装置
US5946328A (en) Method and means for efficient error detection and correction in long byte strings using integrated interleaved Reed-Solomon codewords
US5629949A (en) Error correction verification method and apparatus using CRC check remainders
US5805799A (en) Data integrity and cross-check code with logical block address
US6553536B1 (en) Soft error correction algebraic decoder
KR0163566B1 (ko) 에러 정정 방법
US5020060A (en) Error code correction device having a galois arithmetic unit
US8429489B2 (en) Data retrieval from a storage device using a combined error correction and detection approach
US20070011598A1 (en) Error detection and correction for encoded data
JPH0812614B2 (ja) データ・ブロックを訂正する装置
JP3945602B2 (ja) 訂正検査方法及び訂正検査装置
JPH08330975A (ja) 誤り訂正符号復号化方法およびこの方法を用いる回路
JP2001292066A (ja) 誤り訂正装置および誤り訂正方法
JPH05218883A (ja) 復号回路
JP2000010807A (ja) ディジタルデータ再生装置
JP2605270B2 (ja) エラー訂正及びチエツク装置
JP2544109B2 (ja) 情報記録装置
US7213190B2 (en) Data processing apparatus and method
JP3158260B2 (ja) 誤り訂正装置
KR100234400B1 (ko) 디지탈 비디오 디스크 시스템의 에러 정정 장치 및 방법
JPS6161188B2 (ja)
JP3279501B2 (ja) 大容量記憶装置用コントローラの誤り訂正及び誤り検出方法
JP2000101447A (ja) 誤り訂正装置および誤り訂正方法
JP2553571B2 (ja) ガロア体演算装置

Legal Events

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