JP2001511615A - 積符号のための同時行/列シンドロームジェネレータ - Google Patents
積符号のための同時行/列シンドロームジェネレータInfo
- Publication number
- JP2001511615A JP2001511615A JP2000504660A JP2000504660A JP2001511615A JP 2001511615 A JP2001511615 A JP 2001511615A JP 2000504660 A JP2000504660 A JP 2000504660A JP 2000504660 A JP2000504660 A JP 2000504660A JP 2001511615 A JP2001511615 A JP 2001511615A
- Authority
- JP
- Japan
- Prior art keywords
- syndrome
- error
- codewords
- buffer
- codeword
- 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.)
- Granted
Links
- 208000011580 syndromic disease Diseases 0.000 title claims abstract description 294
- 238000012937 correction Methods 0.000 claims abstract description 110
- 238000012545 processing Methods 0.000 claims abstract description 11
- 238000000034 method Methods 0.000 claims description 45
- 230000006854 communication Effects 0.000 description 13
- 238000004891 communication Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 12
- 230000003287 optical effect Effects 0.000 description 4
- 230000003068 static effect Effects 0.000 description 2
- 230000007704 transition Effects 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 230000036039 immunity Effects 0.000 description 1
- 238000012804 iterative process Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 235000002020 sage Nutrition 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error 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/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic 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
- H03M13/1515—Reed-Solomon codes
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/18—Error detection or correction; Testing, e.g. of drop-outs
- G11B20/1833—Error detection or correction; Testing, e.g. of drop-outs by adding special lists or symbols to the coded information
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/29—Coding, 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
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, 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/29—Coding, 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
- H03M13/2906—Coding, 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 using block codes
- H03M13/2909—Product codes
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/18—Error detection or correction; Testing, e.g. of drop-outs
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Mathematical Physics (AREA)
- Signal Processing (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Error Detection And Correction (AREA)
- Detection And Correction Of Errors (AREA)
Abstract
Description
は、多次元符号の符号語(codeward)のシンドローム(syndrom
e)を生成する有用な方法および装置に関する。
の形の回転磁気または光ディスクの表面に遷移の連続を書き込むために、デジタ
ルデータストリームは、書き込み変換器の動作(例えば、コイルの電流またはレ
ーザビームの強度)を変調する。記録されたデータの読み出しは、読み出し変換
器をデータトラックの上で位置決めし、表面遷移を検知し、そして結果として得
られるアナログ読み出し信号を、最初に記録されたデータを表す推定データシー
ケンスに復調することを必要とする。
ロセスは、デジタルデータがケーブルまたは大気などの雑音を伴う通信媒体を介
して送られる通信チャネルと同様である。通信システムおよび記録システムの両
方における目標は、送られた/記録されたデータを信頼性高く且つ効率的に受け
取る/読み出すことである。信頼性は、データがどれくらい正確に受け取られた
かの尺度である。あるいは、記録/通信プロセスに固有の雑音により改悪された
後にチャネル信号から検出される推定データシーケンスのビット誤り率である。
効率は、ソースデータレートの尺度である。即ち、特定のビット誤り率を維持し
ながら、ソースデータを通信媒体を介していかに速く送ることができるか、であ
る。コンピュータ記憶システムでは、効率は、所与のトラックの線形データ密度
、および1インチあたりの同心トラック数(tpi)の尺度である。
ノン(Shannon)は、通信システムの信頼性パラメータと効率パラメータ
とが関連していることを示した。雑音が通信チャネルにおいて引き起こす基本的
な制限は、通信の信頼性の制限ではなく、通信速度の制限である。誤り確率をゼ
ロに近づけながら、離散的無記憶チャネルを介してデータを送ることができる最
大のレートは、チャネル容量と呼ばれる。チャネル容量は、結局、チャネルバン
ド幅と、信号対雑音比、即ち、SNRとの関数である。
を増加する周知の方法は、ソースデータを誤り訂正符号(ECC)に従って符号
化することである。誤り訂正符号は、雑音に対するシステムの免疫を増加させる
ことにより、有効SNRを増加する。ブロック誤り訂正符号は通常、ディスク記
憶システムにおいて使用され、特に、リード−ソロモンブロック符号が、その優
れた誤り訂正特性、低い実現コストおよび低い複雑性のために、使用されている
。
力ブロックまたは符号語に符号化する。ここで、n−kは、冗長記号の数であり
、k/nは、符号化率と呼ばれる。次いで、符号語が、通信媒体を介して送られ
(通信媒体に記憶され)、そして受信器により復号化される。符号化プロセスは
、出力符号語が、符号の最小距離dminと呼ばれるパラメータだけ互いに異なる ように、入力ブロックに対して数学的演算を行う。符号語間の最小距離dminは 、受け取られた符号語が誤って復号化される前にシステムが耐えることができる
雑音量を決定する。
体GF(2w)から選択される。ここで、wは、記号中のバイナリデータビット 数である。k記号入力ブロックの各記号は、データ多項式D(x)の係数を表す
。次いで、冗長符号(多項式W(x)としても表される)が、入力データ多項式
D(x)を生成多項式G(x)で割るモジュロ除算(modulo divis
ion)として計算される。
多項式W(x)がデータ多項式D(x)に付加され、符号語多項式C(x)を生
成する。
R)として実現することができる。
け取られた符号語C’(x)は、送られた符号語C(x)に誤り多項式E(x)
を足した値に等しい。受け取られた符号語C’(x)は、以下のステップに従っ
て訂正される。(1)誤りシンドロームSiを計算する、(2)誤りシンドロー ムSiを用いて、誤りロケータ多項式の係数を計算する、(3)誤りロケータ多 項式の根(root)を計算する;根の対数は、誤りロケータ多項式の根である
、(4)誤りシンドロームSiおよび誤りロケータ多項式の根を用いて、誤り値 を計算する。
算し、そして誤り値を計算する技術は当業者により周知であるため、本発明を理
解するためには必要でない。例えば、上で参照した「COEFFICIENT
UPDATING METHOD AND APPARATUS FOR RE
ED−SOLOMON DECODER」と題された米国特許第5,446,7
43号を参照されたい。
、符号語を配列して、多次元または積符号として知られているものにすることで
ある。例えば、光ディスク記憶システムは、通常、図2に示されるような2次元
積符号を使用する。符号語は、交差する水平方向(即ち、行)および垂直方向(
即ち、列)の符号語に配列され、そして復号化プロセスが、繰り返しの通過によ
り行われる。まず、できるだけ多くの誤りを訂正するために、水平方向の符号語
の通過が行われ、訂正不可能な水平方向の符号語があれば、それは改変されない
ままである。次いで、できるだけ多くの誤りを訂正するために、垂直方向の符号
語に対して通過が行われ、垂直方向の符号語において訂正された記号がまた、交
差する水平方向の符号語の対応する記号を訂正する。その結果、水平方向の符号
語は、次の水平方向の通過中に訂正可能であり得る。同様に、水平方向の通過中
に訂正された記号は、以前に訂正不可能であった垂直方向の符号語を、次の垂直
方向の通過中に訂正可能にし得る。この反復プロセスは、積符号全体が訂正され
るか、または訂正不可能であると考えられるまで続く。
方向の符号語に対する繰り返しの通過は、かなりの量の計算時間を必要とする。
光ディスク記憶装置では、この計算時間は、ディスクからデータを読み出す際の
待ち時間になり、そしてまた、データを連続ストリームで急いで転送することを
妨げ得る。これは、円滑でとぎれないオーディオ/ビデオストリーミングを必要
とするマルチメディアの応用では特に、非常に望ましくない可能性がある。上で
参照した「A METHOD AND APPARATUS FOR EFFI
CIENTLY PROCESSING A MULTI−DIMENSION
AL CODE1」と題された米国特許出願は、誤りを含むとしてフラグが立て
られた水平方向および垂直方向の符号語だけを処理することにより(即ち、誤り
のない符号語はスキップされる)、積符号の処理時間を短縮する方法を開示して
いる。それでも、水平方向および垂直方向の各通過中に誤りシンドロームを再生
するためにデータバッファから符号語を読み出す際に、かなりの待ち時間がある
。
水平方向の通過中に水平方向および垂直方向の符号語の誤りシンドロームを同時
に生成することにより積符号を処理するための誤り訂正装置が開示されている。
誤りシンドロームはシンドロームバッファに格納され、次いで、その後の訂正フ
ェーズ中に水平方向および垂直方向の符号語中の誤りを検出および訂正するため
に使用される。水平方向の符号語に付与された訂正値は、交差する垂直方向の符
号語の誤りシンドロームを更新するために使用され、そしてその逆の場合も同様
であるため、その後の水平方向または垂直方向の通過中に誤りシンドロームを再
生することは不要である。しかし、この技術は、訂正プロセスに待ち時間をもた
らす。なぜなら、誤り訂正フェーズが始まり得る前、最初の水平方向の通過中に
、水平方向および垂直方向の符号語の誤りシンドロームを生成しなければならな
いからである。
ロセッサが必要とされている。
めの効率的な誤り訂正プロセッサが開示される。誤り訂正は、符号語の第1およ
び第2の組に対して繰り返しの通過を行うことにより実行される。個々の符号語
は、符号語データの関数として計算される誤りシンドロームを用いて訂正される
。好適な実施形態では、個々の符号語は、リード−ソロモン符号に従って符号化
され、そして、誤りシンドロームは、符号語多項式を生成多項式の因子で割るモ
ジュロ除算として計算される。
含み、データバッファに格納された個々の符号語は、繰り返しの通過中に訂正さ
れる。データバッファにアクセスする際の待ち時間を最小限にするために、誤り
訂正プロセッサは、個々の符号語についての誤りシンドロームを格納するための
シンドロームバッファを含む。この態様で、誤りシンドロームがシンドロームバ
ッファにおいて既に利用可能であるとき、データバッファから個々の符号語を読
み出す必要がなくなる。シンドロームバッファは、好ましくは、ダイナミックr
am(DRAM)として実現されるデータバッファと比べて非常に高速であるス
タティックram(SRAM)として実現される。
号語の誤りシンドロームを生成するのと同時に生成される。第1の組の符号語に
対する通過が終了すると、第2の組の符号語の誤りシンドロームは、すぐにシン
ドロームバッファから利用可能となり、第2の組の符号語をデータバッファから
読み出して誤りシンドロームを生成することが不要になる。これにより、誤り訂
正プロセッサのスループットが大幅に増加する。
の符号語の両方の誤りシンドロームを格納する。第1の組の符号語および第2の
組の符号語の両方の誤りシンドロームは、第1の組の符号語に対する最初の通過
中に同時に生成される。この態様で、最初の水平方向の通過後のデータバッファ
への唯一のアクセスは、データ記号を訂正することであり、符号語全体をデータ
バッファから読み出して誤りシンドロームを再生することが不要になる。なぜな
ら、誤りシンドロームは既にシンドロームバッファにおいて利用可能であるから
である。
、交差する符号語で記号が訂正されると、更新される。例えば、第1の組の符号
語の記号が訂正されると、その訂正された記号で第1の組の符号語と交差する第
2の組の符号語についての誤りシンドロームがシンドロームバッファから読み出
され、そして訂正値を用いて更新される。第1の組の符号語および第2の組の符
号語の両方の誤りシンドロームが格納される第2の実施形態では、誤りシンドロ
ームは、訂正されたデータ記号の場所に従って、訂正値を用いて自動的に調節さ
れる。
す本発明の詳細な説明を読むことによって、より良く理解される。
1に示される。書き込み動作(記憶装置はリードオンリでないと仮定する)の間
、ユーザデータはホストコンピュータから転送され、データバッファ2に格納さ
れる。次いで、冗長/シンドロームジェネレータ4は、多次元符号の個々の符号
語についてECC冗長記号を生成するために、データバッファ2からデータを読
み出す。一旦多次元符号のサブセット符号語が生成されると、サブセット符号語
に対してCRC検査記号が生成され、次いで、多次元符号語全体が、ディスク記
憶媒体6に書き込まれる。ディスク記憶媒体6は、磁気であっても光学であって
もよい。
る。リード−ソロモン符号語C(x)は、以下の形の多項式として表される。
成多項式G(x)の次数である。データ多項式D(x)の係数は、ホストシステ
ムから受け取られ且つデータバッファ2に格納されるデータストリームのwビッ
ト記号である。符号語C(x)を生成するために、データ多項式D(x)にxm が掛けられ、そしてECC冗長記号が付加される。ここで、ECC冗長記号は、
以下のモジュロ除算として生成される。
スタ(LFSR)を用いて容易に実現され得る。
してデータバッファ2に格納される。次いで、訂正プロセッサは、符号語の第1
および第2の組に対する繰り返しの通過を開始する。個々の符号語は、データバ
ッファ2から読み出され、そして誤りシンドロームSiは、符号語多項式C’( x)を生成多項式G(x)の因子で割ることにより計算される。
ない場合、それは、符号語C’(x)が、誤った記号を少なくとも1つ含むこと
を示す。シンドロームSiは、ライン10を介して誤り訂正器8に転送される。 誤り訂正器8は、誤り位置および訂正値を計算する。次いで、誤った記号はデー
タバッファ2から読み出されて訂正され、そして、訂正された記号が、データバ
ッファ2に戻される。
在使用されている2次元積符号の例示的なフォーマットを示す。この積符号は、
16個のセクタを含み、各セクタは、12個の符号語を含む。従って、合計で2
08個の水平方向の符号語および182個の垂直方向の符号語となる。各セクタ
の端部には、水平方向および垂直方向の通過の終わりにユーザデータの訂正の有
効性および完全性を確認するためのCRCバイトが4バイトある(上記の参考文
献である「ERROR CORRECTION AND CONCURRENT
VERIFICATION OF A PRODUCT CODE」と題され
た米国特許出願を参照されたい)。水平方向の符号語の各々は、172個の8ビ
ットユーザデータ記号と、10個の8ビットECC冗長記号とを含む。垂直方向
の符号語の各々は、192個の8ビットユーザーデータ記号と、16個の8ビッ
トECC冗長記号とを含む。
各通過中に誤りシンドロームSiを生成するために、データバッファ2から(水 平方向または垂直方向の)符号語全体を読み出す。これは、積符号の符号語全体
を訂正するために数回の通過が必要とされる場合は特に、データバッファ2にア
クセスする際の待ち時間があり、効率的でない。
図1の誤り訂正プロセッサと同様に、本発明は、ホストから受け取った書き込み
データと、ディスク記憶装置から受け取った読み出しデータとを格納するための
データバッファ2を使用する。ただし、図1とは異なり、本発明は、誤りシンド
ロームを格納するためのシンドロームバッファ12を使用して、符号語が処理さ
れるたびに誤りシンドロームを再生するためにデータバッファ2にアクセスする
際の待ち時間を回避する。さらに、シンドロームジェネレータ14は、交差する
符号語の第1および第2の組についての誤りシンドロームを同時に生成するよう
に改変される。この態様で、第1の組の符号語の処理直後に、第2の組の符号語
の誤りシンドロームが利用可能になり、第2の組の符号語をデータバッファ2か
ら読み出して誤りシンドロームを生成することが不要になる。
り訂正器8では、従来技術に加えて、シンドロームバッファ12に格納された誤
りシンドロームを更新するために、訂正値がライン16を介してシンドロームジ
ェネレータ14に送られる。第2の組の符号語中の記号に訂正が行われると、そ
の訂正された記号で第1の組の符号語と交差する第2の組の符号語の誤りシンド
ロームが、訂正値を用いて更新される。例えば、図2に示される2次元積符号に
ついて考える。水平方向の通過中に2番目の水平方向の符号語の3番目の記号1
7が訂正されると、3番目の垂直方向の符号語の誤りシンドロームが、訂正値を
用いて同時に更新される。この態様で、水平方向の符号語に訂正が行われる場合
であっても、水平方向の符号語に対する通過の終了直後に、すべての垂直方向の
符号語の誤りシンドロームが利用可能となる。これにより、誤り訂正器8が、誤
りシンドロームを再生するためにデータバッファから符号語を読み出す必要なく
、垂直方向の符号語の訂正をすぐに開始することができるようになる。
高速なスタティックram(SRAM)として実現される(シンドロームバッフ
ァ12よりかなり多くのデータを格納するデータバッファ2は、好ましくは、コ
スト効率はより優れているがより低速であるダイナミックram(DRAM)を
用いて実現される)。さらに、シンドロームバッファ12は、好ましくは、デー
タバッファ2よりも幅の広いデータバスを使用し、多数の誤りシンドロームを並
行してアクセスおよび更新できるようにする。
る。第1の実施形態では、垂直方向の符号語のシンドロームは、水平方向の通過
中に水平方向の符号語のシンドロームを生成するのと同時に生成される。以下に
より詳細に説明されるように、シンドロームバッファ12は、垂直方向のシンド
ロームの生成を容易にする。従って、シンドロームバッファ12に格納された垂
直方向の符号語のシンドロームは、水平方向の通過の直後に利用可能となり、シ
ンドロームを生成するためにデータバッファにアクセスすることなく、垂直方向
の符号語を訂正することができるため、誤り訂正待ち時間を大幅に短縮する。本
実施形態は、デジタルビデオディスク(DVD)記憶装置などの場合のように大
量のECC冗長を使用する積符号に特によく適している。なぜなら、通常、水平
方向および垂直方向の符号語に対する1回の通過が終わると、訂正が終了するか
らである。
回必要とする積符号に向けられる本発明の第2の実施形態によれば、シンドロー
ムバッファ12は、水平方向の符号語および垂直方向の符号語の両方の誤りシン
ドロームを格納する。シンドロームの2つの組はともに、最初の水平方向の通過
中に同時に生成され、そして、シンドロームは、訂正値を用いて更新される。こ
の態様で、誤りシンドロームを再生するためにデータバッファにアクセスする際
の待ち時間が、水平方向の通過および垂直方向の通過の両方について回避される
。誤り訂正は、数分の1の時間で行われる。なぜなら、最初の通過の後に行われ
る通過は、データを訂正するためにデータバッファにアクセスするだけでよいか
らである。
明の第1の実施形態は、図4および図5を参照して理解される。図4は、水平方
向の各通過中に、水平方向の符号語のシンドロームを生成するために使用される
回路を示す。即ち、水平方向の誤りシンドロームは常に再生され、シンドローム
バッファ12には格納されない。水平方向の誤りシンドロームSiを生成するた めに、図4の回路は、水平方向の符号語C’(x)の各々を生成多項式G(x)
の因子で割るモジュロ除算を行う。
ータバッファ2から順次読み出され、そして、ライン18を介して、線形フィー
ドバックシフトレジスタ(LFSR)200〜209のバンクに付与される。好適
な実施形態では、水平方向の符号語の各々は、図2に示されるように、10個の
ECC冗長記号を含む。このため、図4には10個のLFSRがあり、各LFS
Rは、フィードバック経路に、対応するαi係数乗算器を有する。各LFSRは 、生成多項式G(x)の各因子についてモジュロ除算を行い、それにより、上記
の式に従う誤りシンドロームSiを生成する。図4に開示される回路は当業者に 周知であり、本発明の新規な局面は、垂直方向の符号語の誤りシンドロームを同
時に生成することにある。この詳細は、図5に示される。
語の場合と同じ方法で計算される。即ち、垂直方向の誤りシンドロームSiは、 垂直方向の符号語C’(x)の各々を生成多項式G(x)の因子で割るモジュロ
除算を行うことにより生成される。従来技術のシンドロームジェネレータは、典
型的には、図4に示される回路と同じ回路を使用して、垂直方向の誤りシンドロ
ームを生成する。即ち、垂直方向の符号語の記号(ECC冗長を含む)が、デー
タバッファ2から順次読み出され、そして、LFSRのバンクを通してシフトさ
れる。本発明では、垂直方向の通過中に垂直方向の符号語を読み出すためにデー
タバッファにアクセスすることを回避するために、垂直方向の誤りシンドローム
は、水平方向の誤りシンドロームの生成と同時に生成される。
。この回路の動作は、図2に示される積符号を参照して理解される。シンドロー
ムバッファ12は、182個の垂直方向の符号語それぞれについての16個の誤
りシンドロームSiを格納する容量を有する。シンドロームバッファ12内の垂 直方向の誤りシンドロームSiは、最初の水平方向の通過の始めにゼロに初期化 される。最初の水平方向の符号語を処理するとき、データバッファ2から記号が
順次読み出され、そしてライン18を介して図4のLFSRに付与されて、水平
方向の誤りシンドロームを生成する。これらの記号は、同時にライン18を介し
て図5に示される回路に付与されて、垂直方向の誤りシンドロームを生成する。
図4と同様に、図5は、垂直方向の符号語の記号を生成多項式G(x)の16個
の因子で割るモジュロ除算を行うためのシンドローム生成回路220〜2215の バンクを含む(垂直方向の符号語の各々は、16個のECC冗長記号を含む)。
て考える。最初の水平方向の符号語の最初の記号は、最初の垂直方向の符号語の
最初の記号に対応する。従って、制御ライン24は、シンドロームバッファ12
から、最初の垂直方向の符号語についての16個の垂直方向の誤りシンドローム
(それぞれ8ビット)を取り出す。8ビットの垂直方向の誤りシンドロームの各
々は、対応するレジスタ260〜2615にラッチされ、マルチプレクサ280〜2
815の出力として選択され、そして、対応するαiフィードバック係数300〜3
015が掛けられる。ライン18上の符号語の記号は、マルチプレクサ320〜3 215の出力として選択され、この出力は、加算器340〜3415で、係数乗算器 の出力に付加される。次いで、加算器340〜3415の出力にある更新されたシ ンドロームは、シンドロームバッファ12に戻される。最初の水平方向の符号語
の2番目の記号を処理するとき、制御ライン24は、シンドロームバッファ12
から、2番目の垂直方向の符号語についての16個の垂直方向の誤りシンドロー
ムを取り出し、上記手順が繰り返される。このプロセスは、水平方向の符号語の
各々について継続し、そして、水平方向の通過の終了時には、垂直方向の符号語
を訂正するための誤りシンドロームが、シンドロームバッファ12に格納されて
いる。
12に格納された対応する垂直方向の誤りシンドロームは、訂正された記号を明
らかにするために更新されなければならない。図3のシンドロームジェネレータ
14および誤り訂正器8は、好ましくは、隣接する符号語に対して動作する。言
い換えれば、シンドロームジェネレータ14が、現在の水平方向の符号語の誤り
シンドロームを生成している間、誤り訂正器8は、その前の水平方向の符号語の
記号を訂正している。さらに、誤り訂正は、訂正値を用いた垂直方向の誤りシン
ドロームの調節を単純化するために、水平方向の誤りシンドロームの生成を追跡
する。
の誤りシンドロームを生成しており、誤り訂正器8が、最初の水平方向の符号語
を訂正している場合を考える。シンドロームジェネレータ14が2番目の符号語
の3番目の記号17を通り過ぎており、最初の符号語の3番目の記号36が誤っ
ていると仮定する。誤り訂正器8は、データバッファ2に格納された最初の水平
方向の符号語の3番目の記号36を訂正するために使用される訂正値を生成し、
そして、訂正値はまた、ライン16を介して、図5の垂直方向シンドローム生成
回路220〜2215に付与される。制御ライン24は、シンドロームバッファ1 2から、3番目の垂直方向の符号語の垂直方向の誤りシンドロームを取り出し、
これらの誤りシンドロームは、レジスタ260〜2615にラッチされる。次いで 、レジスタ260〜2615の出力は、マルチプレクサ320〜3215を介して、加
算器340〜3415への入力として選択される。ライン16を介して付与される 訂正値は、マルチプレクサ280〜2815の出力として選択され、対応するαiフ
ィードバック係数300〜3015が掛けられ、次いで、加算器340〜3415で、
垂直方向の誤りシンドロームに付加される。訂正値に、対応するαiフィードバ ック係数300〜3015を掛けることは、現在の垂直方向の誤りシンドローム値 と、訂正されている記号との間のオフセット(即ち、垂直方向の符号語中の1つ
の記号のオフセット)を明らかにするために必要である。
成され、そしてすぐに処理するために利用可能である。従って、垂直方向の通過
を実行するためには、垂直方向の誤りシンドロームは、単にシンドロームバッフ
ァ12から読み出され、そして誤り訂正器8により、垂直方向の符号語を訂正す
るために使用される。垂直方向の通過後に、積符号のCRC記号が、まだ誤りが
残っていることを示すと、上記プロセスが繰り返される(即ち、次の水平方向の
通過中に、水平方向および垂直方向の誤りシンドロームが再生される)。
ロームの両方が、最初の水平方向の通過中に同時に生成されているときに、シン
ドロームバッファ12に格納される。この態様で、以前に説明した実施形態の場
合のように、その後の水平方向の通過中に水平方向のシンドロームを再生するこ
とが不要である。シンドロームは単に、水平方向および垂直方向の通過中に取り
出され、そして符号語を訂正するために使用される。本実施形態は、積符号を訂
正するために通過が多数回必要とされる場合(例えば、ECC冗長記号がより少
ない場合、または、記録密度を高くすることによりSNRが低減される場合)に
、特に有利である。
を更新するための回路は、図6Aおよび図6Bにそれぞれ示される。これらの回
路は、図5の回路と実質的に同じように動作する。ただし、これらの回路では、
オフセットを明らかにする必要がないため、誤り訂正値16にαiを掛けること は不要である。好適な実施形態では、最初の水平方向の通過中に水平方向および
垂直方向の誤りシンドロームを最初に生成するための図4および図5の回路は、
その後の通過中に誤りシンドロームを更新するための図6Aおよび図6Bの回路
と共有される。図6Aおよび図6Bのシンドロームバッファ(単数または複数)
は、別個に実現されてもよく、単一のバッファ(即ち、単一の集積SRAM)と
して実現されてもよい。いずれにしても、制御ライン24を介するアドレス指定
が、どの誤りシンドロームの組(水平方向または垂直方向)が適切な時間にシン
ドロームバッファから取り出されるかを決定する。
ンドロームバッファに格納される場合の本発明の動作を示すフロー図である。ま
ず、最初の水平方向の通過36中、水平方向および垂直方向のシンドロームが同
時に生成され、そしてシンドロームバッファに格納される。最初の水平方向の通
過36中にはまた、水平方向の符号語が訂正され、そして、訂正値を用いて垂直
方向のシンドロームが更新される。最初およびその後の水平方向の通過の後、ス
テップ38で、CRC記号を用いて、積符号への訂正の有効性および完全性が確
認される。水平方向の通過後に誤りがまだ残っていれば、ステップ40で、垂直
方向の通過が実行され、垂直方向の符号語を訂正する。ここで、訂正値を用いて
、シンドロームバッファに格納された水平方向のシンドロームが更新される。垂
直方向の通過後、ステップ42で、CRC記号を用いて、訂正の有効性および完
全性が再び確認される。垂直方向の通過後に誤りがまだ残っていれば、ステップ
44で、別の水平方向の通過が実行され、シンドロームバッファに格納された水
平方向のシンドロームを用いて、水平方向の符号語を訂正する(即ち、水平方向
のシンドロームは、以前に説明した実施形態のように再生されない)。水平方向
および垂直方向の通過は、積符号が訂正されるまで、または、訂正不可能である
と考えられるまで、繰り返される。
成する場合のフロー図が、図7Bに示され、最初の通過中に水平方向の符号語を
訂正し、そして訂正値を用いて垂直方向のシンドロームを更新する場合のフロー
図が、図7Cに示される(図7Bおよび図7Cのフロー図は、並行して実行され
る)。図7Bを参照して、ステップ46で、変数COLおよびROWがゼロに初
期化され、そしてシンドロームバッファが空にされる。次いで、ROWの水平方
向の符号語について、ステップ48で記号が読み出され、そしてこの記号を用い
て、ステップ50で上記の図4の回路を用いて水平方向のシンドロームを更新す
る。図7Bのステップ52で、図5の回路を用いて、上記のCOLの垂直方向の
符号語の垂直方向の誤りシンドロームを更新する。次いで、ステップ54で、変
数COLが増分され、そして現在の水平方向の符号語の次の記号を用いて、水平
方向および垂直方向のシンドロームを更新する。
最後の記号が読み出されたことになる。ステップ58でループが実行され、誤り
訂正手順(図7Cのフロー図)がその前の水平方向の符号語を処理し終わるのを
待つ。前の符号語を訂正し終わると、図7Cのステップ88で、訂正フラグが、
非ビジー状態にリセットされる。図7Bのステップ60で、訂正フラグがビジー
にセットされ、変数C_ROWが現在のROWに設定され、変数ROWが増分さ
れ、そして変数COLがゼロにリセットされる。この時点で、図7Cの訂正手順
が実行され、現在の水平方向の符号語(即ち、C_ROW)を訂正し、それと同
時に、次の水平方向の符号語(即ち、ROW)のシンドロームが生成される。
ジェネレータ手順が、現在の水平方向の符号語を処理し終わり、且つ訂正フラグ
をビジー状態にセットするのを待つ。ステップ66で、訂正中の現在の列を追跡
する変数C_COLがゼロにリセットされる(即ち、訂正されている水平方向の
符号語中の最初の記号にリセットする)。ステップ68で、訂正されている水平
方向の符号語のシンドロームが処理され、誤りロケータ多項式を生成し、そして
、根が有効な記号場所に対応するかどうかを判定する。ステップ70で、シンド
ロームが、誤りが多すぎることを示すか、または、誤りロケータ多項式の根が無
効な記号を指すと、符号語は訂正不可能であると考えられる。ステップ70で符
号語が訂正可能であれば、次いでステップ72で、C_ROWの水平方向の符号
語のシンドロームがクリアされる(ゼロに設定される)。次いでループが実行さ
れ、C_ROWの水平方向の符号語を訂正する。ステップ74で、C_COLの
記号が誤っていれば、分岐が実行され、データバッファに格納された記号を訂正
し、そして、訂正値を用いて垂直方向のシンドロームを更新する。訂正は、ステ
ップ76でC_COLがCOL未満になるまで遅らされる。即ち、図7Cの誤り
訂正手順は、図7Bのシンドローム生成手順が現在の訂正列C_COLを通り過
ぎるまで待つ。これは、図5の回路が正しく働くために必要である。なぜなら、
この回路は、1つの記号のオフセットを明らかにするために、訂正値16にαi 30iを掛けるからである。図7Cのステップ78で、データバッファに格納さ れた水平方向の符号語の記号が、訂正値を用いて訂正され、ステップ80で、図
5を参照して上で説明したように、訂正値を用いて、C_COLの垂直方向の符
号語の垂直方向のシンドロームを更新する。ステップ82で、変数C_COLが
、水平方向の符号語中の次の記号に増分され、そして訂正ループが再実行される
。
符号語の最後の記号が処理されたことになる。次の垂直方向の通過中に行われる
現在の水平方向の符号語の誤りシンドロームの更新を容易にするために、ステッ
プ86で、現在の水平方向の符号語の誤りシンドロームが、符号語の最初の記号
に配置しなおされる。これは、以下の計算により行われる。
HOD AND APPRATATUS FOR EFFICIENTLY P
ROCESSING A MULTI−DIMENSIONAL CODE」と
題された米国特許出願において提供される。
、ステップ64で、図7Bのシンドローム生成手順が、次の水平方向の符号語の
誤りシンドロームを生成し終わるのを待つ。シンドローム生成手順と誤り訂正手
順とは、最後の水平方向の符号語が処理されるまで(即ち、図7Bのステップ6
2でROWが208と等しくなるまで)、並行して行われる。図7Aのステップ
38で、最初の水平方向の通過後に誤りがまだ残っていれば、ステップ40で、
垂直方向の通過が実行される。これについてのフロー図は、図7Dに示される。
る(即ち、最初の垂直方向の符号語の最初の記号にリセットされる)。次いで、
ステップ92で、訂正されている垂直方向の符号語のシンドロームが処理され、
誤りロケータ多項式を生成し、そして、根が有効な記号場所に対応するかどうか
を判定する。ステップ94で、シンドロームが、誤りが多すぎることを示すか、
または、誤りロケータ多項式の根が無効記号を指すと、符号語は訂正不可能であ
ると考えられる。ステップ94で符号語が訂正可能であれば、ステップ96で、
C_COLの垂直方向の符号語のシンドロームがクリアされる(ゼロに設定され
る)。次いでループが実行され、C_COLの垂直方向の符号語を訂正する。ス
テップ98で、C_ROWの記号が誤っていれば、分岐が実行され、ステップ1
00で、データバッファに格納された記号を訂正し、そしてステップ102で、
訂正値を用いて水平方向のシンドロームを更新する。図6Aの回路は、図5を参
照して上で説明された態様と同様の態様で水平方向のシンドロームを更新するた
めに用いられる。C_ROWの水平方向のシンドロームがシンドロームバッファ
12から取り出され、αi30iが掛けられ、訂正値34iに付加され、次いでシ ンドロームバッファ12に戻される。図7Dのフローチャートには示されていな
いが、水平方向のシンドロームは、訂正が行われなくても(即ち、訂正値がゼロ
であっても)、符号語の各記号について更新される。これにより、図6Aのシン
ドローム更新回路が単純化され、このシンドローム更新回路は、誤りシンドロー
ムを次の符号語記号に配置するためにαi乗算器30iしか必要としない。
次の記号に増分される。ステップ106で、C_ROWが208に等しければ、
現在の垂直方向の符号語の最後の記号が処理されたことになる。最後の記号が処
理された後(または、ステップ94で符号語が訂正不可能であれば)、C_CO
Lの垂直方向の符号語の誤りシンドロームは、ステップ107で、符号語の最初
の記号に配置しなおされる。これは、以下の計算により行われる。
て変数C_ROWは、次の垂直方向の符号語の最初の記号を指すよう、ゼロにリ
セットされる。図7Dの訂正手順は、ステップ110でC_COLが182に等
しくなり、垂直方向の符号語のすべてが処理されたことを示すまで繰り返される
。
行われた訂正が有効で完全なものであるかどうかを確認する。ステップ42で積
符号中に誤りがまだ残っていれば、ステップ44で、水平方向の訂正通過が実行
される。これについての詳細は、図7Eのフロー図に示される。
れる(即ち、最初の水平方向の符号語の最初の記号にリセットされる)。次いで
、訂正されている水平方向の符号語のシンドロームはステップ114で処理され
、誤りロケータ多項式を生成し、そして、根が有効記号位置に対応するかどうか
を判定する。ステップ116で、シンドロームが、誤りが多すぎることを示すか
、または、誤りロケータ多項式の根が無効記号を指すと、符号語は訂正不可能で
あると考えられる。ステップ116で符号語が訂正可能であれば、ステップ11
8で、C_ROWの水平方向の符号語のシンドロームがクリアされる(ゼロに設
定される)。次いでループが実行され、C_ROWの水平方向の符号語を訂正す
る。ステップ120で、C_COLの記号が誤っていれば、分岐が実行され、ス
テップ122で、データバッファに格納された記号を訂正し、そして、ステップ
124で、訂正値を用いて垂直方向のシンドロームを更新する。図6Bの回路は
、垂直方向の通過中に水平方向の誤りシンドロームを更新する場合の図6Aを参
照して上で説明された態様と同様の態様で、垂直方向のシンドロームを更新する
ために使用される。C_COLの垂直方向のシンドロームは、シンドロームバッ
ファ12から取り出され、αi30iが掛けられ、訂正値34iに付加され、次い でシンドロームバッファ12に戻される。図7Eにのフロー図には示されていな
いが、垂直方向のシンドロームは、訂正が行われなくても(即ち、訂正値がゼロ
であっても)、符号語の各記号について更新される。これにより、図6Bのシン
ドローム更新回路が単純化され、このシンドローム更新回路は、誤りシンドロー
ムを次の符号語記号に配置するためにαi乗算器30iしか必要としない。
次の記号に増分される。ステップ128で、C_COLが182に等しければ、
現在の水平方向の符号語の最後の記号が処理されたことになる。最後の記号が処
理された後(または、ステップ116で符号語が訂正不可能であれば)、C_R
OWの水平方向の符号語の誤りシンドロームは、ステップ130で、符号語の最
初の記号に配置しなおされる。これは、以下の計算により行われる。
て変数C_COLは、次の水平方向の符号語の最初の記号を指すよう、ゼロにリ
セットされる。図7Eの訂正手順は、ステップ134でC_ROWが208に等
しくなり、水平方向の符号語のすべてが処理されたことを示すまで繰り返される
。
ップ38で、CRC記号を用いて、積符号に行われた訂正が有効で完全なもので
あるかどうかを確認する。誤りがまだ残っていれば、ステップ40で、別の垂直
方向の通過が実行される。繰り返し行われる水平方向および垂直方向の通過は、
積符号が訂正されるまで、または訂正不可能であると考えられるまで続く。
当業者は、本質的な機能から逸脱することなく、異なる実施形態を通して、本発
明の様々な局面を達成することができることを認識する。例えば、図2に示され
る積符号は、典型的にはデジタルビデオディスク(DVD)において使用される
が、本発明は、コンパクトディスク(CD)において使用されるフォーマットな
どの、その他の積符号フォーマットにも等しく適用可能である。さらに、本発明
は、積符号だけではなく、その他の多次元符号に適用されてもよい。このように
、開示された特定の実施形態は例示的なものであって、前掲の特許請求の範囲に
より適切に解釈される本発明の範囲を限定するものではない。
り訂正プロセッサのブロック図である。
号の図である。
り訂正プロセッサのブロック図である。
するための詳細な回路図である。
語の誤りシンドロームを生成するための詳細な回路図である。
よび垂直方向の符号語の両方の誤りシンドロームを格納する場合に、水平方向お
よび垂直方向の誤りシンドロームをそれぞれ更新する回路を示す図である。
よび垂直方向の符号語の両方の誤りシンドロームを格納する場合に、水平方向お
よび垂直方向の誤りシンドロームをそれぞれ更新する回路を示す図である。
ムを用いて積符号を処理する場合の、誤り訂正プロセッサにより実行されるフロ
ー図である。
ドロームを同時に生成する場合のフロー図である。
て、シンドロームバッファに格納された垂直方向の誤りシンドロームを更新する
場合のフロー図である。
直方向の通過中に垂直方向の符号語を訂正し、そして、訂正値を用いて、シンド
ロームバッファに格納された水平方向の誤りシンドロームを更新する場合のフロ
ー図である。
の後の水平方向の通過中に水平方向の符号語を訂正し、そして、訂正値を用いて
、シンドロームバッファに格納される垂直方向の誤りシンドロームを更新する場
合のフロー図である。
Claims (20)
- 【請求項1】 符号語の第2の組と交差する符号語の第1の組を含む複数次
元符号の形で記憶媒体(6)上に記録されるデジタルデータの誤りを訂正するた
めの誤り訂正プロセッサであって、該誤り訂正プロセッサ(8)は、 (a)該記憶媒体(6)から読み出された該デジタルデータを格納するための
データバッファ(2)と、 (b)該符号語の第1の組に関連する第1の誤りシンドロームを格納するため
の第1のシンドロームバッファ(12)と、 (c)該データバッファ(2)に格納された該デジタルデータと、該第1のシ
ンドロームバッファ(12)に格納された該第1の誤りシンドロームとに応答し
て、該符号語の第1および第2の組についてそれぞれ該第1の誤りシンドローム
および第2の誤りシンドロームを同時に生成するためのシンドロームジェネレー
タ(14)と、 (d)該第1および第2の誤りシンドロームに応答して、該データバッファ(
2)に格納された該デジタルデータを訂正するための誤り訂正器(8)と、を含
み、 該シンドロームジェネレータ(14)は、該第2の誤りシンドロームを生成す
る際、該第2の組の符号語の連続した記号を処理し、 該シンドロームジェネレータ(14)は、該第1の組の符号語の記号と交差す
る、該第2の組の符号語の記号を用いて、該第1のシンドロームバッファ(12
)に格納された該第1の誤りシンドロームを更新し、 該誤り訂正器(8)は、該第2の組の符号語の記号を訂正するために、該第2
の誤りシンドロームに応答して誤り訂正値を生成し、 該シンドロームジェネレータ(14)は、該誤り訂正値を用いて、該第1のシ
ンドロームバッファ(12)に格納された該第1の誤りシンドロームを更新し、 該誤り訂正値は、該シンドロームジェネレータ(14)が現在の第2の組の符
号語の誤りシンドロームを生成する間に訂正される、前の第2の組の符号語に対
応する、誤り訂正プロセッサ。 - 【請求項2】 前記シンドロームジェネレータ(14)が、前記第1および
第2の組の符号語の交差する記号の場所により、前記第1のシンドロームバッフ
ァをアドレス指定する、請求項1に記載の誤り訂正プロセッサ。 - 【請求項3】 前記シンドロームジェネレータ(14)が、前記前の第2の
組の符号語と前記現在の第2の組の符号語との間のオフセットを明らかにするた
めに、前記誤り訂正値に定数を掛ける、請求項に1記載の誤り訂正プロセッサ。 - 【請求項4】 前記シンドロームジェネレータ(14)が、前記第2の組の
符号語のデータ記号を生成多項式の根で割ることにより、前記第2の誤りシンド
ロームを生成する、請求項1に記載の誤り訂正プロセッサ。 - 【請求項5】 前記シンドロームジェネレータ(14)が、前記第2の組の
符号語のデータ記号を、前記生成多項式の少なくとも2つの根で並行して割る、
請求項4に記載の誤り訂正プロセッサ。 - 【請求項6】 前記シンドロームジェネレータ(14)が、前記第2の組の
符号語と交差する前記第1の組の符号語のデータ記号を生成多項式の根で割るこ
とにより、前記第1の誤りシンドロームを生成する、請求項1に記載の誤り訂正
プロセッサ。 - 【請求項7】 前記第2の組の符号語の前記第2の誤りシンドロームを格納
するための第2のシンドロームバッファをさらに含む、請求項1に記載の誤り訂
正プロセッサ。 - 【請求項8】 前記シンドロームジェネレータ(14)が、前記第2の組の
符号語の記号を用いて、前記第2のシンドロームバッファに格納された前記第2
の誤りシンドロームを更新する、請求項7に記載の誤り訂正プロセッサ。 - 【請求項9】 (a)前記誤り訂正器(8)が、前記第1の組の符号語の記
号を訂正するために、前記第1のシンドロームに応答して誤り訂正値を生成し、 (b)前記シンドロームジェネレータ(14)が、該誤り訂正値を用いて、前
記第2のシンドロームバッファに格納された前記第2の誤りシンドロームを更新
する、請求項7に記載の誤り訂正プロセッサ。 - 【請求項10】 前記誤り訂正値を用いて前記第2の誤りシンドロームを更
新する前に、前記シンドロームジェネレータ(8)が、前記第1の組の符号語の
訂正された記号の場所に関して前記第2の誤りシンドロームを調節する、請求項
9に記載の誤り訂正プロセッサ。 - 【請求項11】 符号語の第2の組と交差する符号語の第1の組を含む複数
次元符号の形で記憶媒体(6)上に記録されるデジタルデータの誤りを訂正する
方法であって、 (a)該記憶媒体(6)から読み出された該デジタルデータをデータバッファ
(2)に格納するステップと、 (b)該符号語の第1の組に関連する第1の誤りシンドロームを第1のシンド
ロームバッファ(12)に格納するステップと、 (c)該データバッファ(2)に格納された該デジタルデータと、該第1のシ
ンドロームバッファ(12)に格納された該第1の誤りシンドロームとを用いて
、該符号語の第1および第2の組についてそれぞれ該第1の誤りシンドロームお
よび第2の誤りシンドロームを同時に生成するステップ(36)と、 (d)該第1および第2の誤りシンドロームを用いて、該データバッファ(2
)に格納された該デジタルデータを訂正するステップ(78、100、102)
と、を包含し、 該第1の誤りシンドロームおよび第2の誤りシンドロームを同時に生成する該
ステップ(36)が、 該第2の組の符号語の連続した記号を処理して、該第2の誤りシンドローム
を生成するステップ(50)と、 該第1の組の符号語の記号と交差する、該第2の組の符号語の記号を用いて
、該第1のシンドロームバッファ(12)に格納された該第1の誤りシンドロー
ムを更新するステップ(52)と、を包含し、 該データバッファ(2)に格納された該デジタルデータを訂正する該ステップ
(36)が、該第2の組の符号語の記号を訂正するために、該第2の誤りシンド
ロームに応答して誤り訂正値を生成するステップ(78)を包含し、 該第1のシンドロームバッファ(12)に格納された該第1の誤りシンドロー
ムを更新する該ステップ(52)が、該誤り訂正値を使用し(82)、 該誤り訂正値(78)は、現在の第2の組の符号語の誤りシンドロームを生成
する間に訂正される、前の第2の組の符号語に対応する、方法。 - 【請求項12】 前記第1および第2の組の符号語の交差する記号の場所に
より、前記第1のシンドロームバッファ(12)をアドレス指定するステップ(
52)をさらに包含する、請求項11に記載のデジタルデータの誤りを訂正する
方法。 - 【請求項13】 前記第1の誤りシンドロームを更新する前記ステップ(5
2)が、前記前の第2の組の符号語と前記現在の第2の組の符号語との間のオフ
セットを明らかにするために、前記誤り訂正値に定数を掛けるステップを包含す
る、請求項に11記載のデジタルデータの誤りを訂正する方法。 - 【請求項14】 前記第2の誤りシンドロームを生成する前記ステップ(3
6)が、前記第2の組の符号語のデータ記号を生成多項式の根で割るステップを
包含する、請求項11に記載のデジタルデータの誤りを訂正する方法。 - 【請求項15】 前記割るステップが、前記第2の組の符号語のデータ記号
を、前記生成多項式の少なくとも2つの根で並行して割るステップを包含する、
請求項14に記載のデジタルデータの誤りを訂正する方法。 - 【請求項16】 前記第1の誤りシンドロームを生成する前記ステップが、
前記第2の組の符号語と交差する前記第1の組の符号語のデータ記号を、生成多
項式の根で割るステップを包含する、請求項11に記載のデジタルデータの誤り
を訂正する方法。 - 【請求項17】 前記第1の誤りシンドロームおよび前記第2の誤りシンド
ロームを同時に生成する前記ステップ(36)が、前記第2の組の符号語の該第
2の誤りシンドロームを第2のシンドロームバッファに格納するステップを包含
する、請求項11に記載のデジタルデータの誤りを訂正する方法。 - 【請求項18】 前記第1の誤りシンドロームおよび前記第2の誤りシンド
ロームを同時に生成する前記ステップ(36)が、前記第1の組の符号語の記号
と交差する、前記第2の組の符号語の記号を用いて、前記第2のシンドロームバ
ッファに格納された該第2の誤りシンドロームを更新するステップを包含する、
請求項17に記載のデジタルデータの誤りを訂正する方法。 - 【請求項19】 (a)前記データバッファ(2)に格納された前記デジタ
ルデータを訂正する前記ステップが、前記第1の組の符号語の記号を訂正するた
めに、前記第1のシンドロームに応答して誤り訂正値を生成するステップを包含
し、 (b)前記第2のシンドロームバッファに格納された前記第2の誤りシンドロ
ームを更新する前記ステップが、該誤り訂正値を使用する、請求項18に記載の
デジタルデータの誤りを訂正する方法。 - 【請求項20】 前記誤り訂正値を用いて前記第2の誤りシンドロームを更
新する前記ステップの前に、前記第1の組の符号語の訂正された記号の場所に関
して該第2の誤りシンドロームを調節する、請求項19に記載のデジタルデータ
の誤りを訂正する方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/898,774 US5974580A (en) | 1997-07-23 | 1997-07-23 | Concurrent row/column syndrome generator for a product code |
US08/898,774 | 1997-07-23 | ||
PCT/US1998/015091 WO1999005793A1 (en) | 1997-07-23 | 1998-07-21 | Concurrent row/column syndrome generator for a product code |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007329363A Division JP2008148334A (ja) | 1997-07-23 | 2007-12-20 | 積符号のための同時行/列シンドロームジェネレータ |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001511615A true JP2001511615A (ja) | 2001-08-14 |
JP4102546B2 JP4102546B2 (ja) | 2008-06-18 |
Family
ID=25410024
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000504660A Expired - Lifetime JP4102546B2 (ja) | 1997-07-23 | 1998-07-21 | 積符号のための同時行/列シンドロームジェネレータ |
JP2007329363A Withdrawn JP2008148334A (ja) | 1997-07-23 | 2007-12-20 | 積符号のための同時行/列シンドロームジェネレータ |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007329363A Withdrawn JP2008148334A (ja) | 1997-07-23 | 2007-12-20 | 積符号のための同時行/列シンドロームジェネレータ |
Country Status (7)
Country | Link |
---|---|
US (1) | US5974580A (ja) |
EP (1) | EP0998791B1 (ja) |
JP (2) | JP4102546B2 (ja) |
KR (1) | KR100517482B1 (ja) |
AU (1) | AU8504798A (ja) |
DE (1) | DE69805803D1 (ja) |
WO (1) | WO1999005793A1 (ja) |
Families Citing this family (47)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3340933B2 (ja) * | 1997-02-15 | 2002-11-05 | 東芝デジタルメディアエンジニアリング株式会社 | 誤り訂正方法及びdvd再生装置 |
US6457156B1 (en) * | 1998-01-29 | 2002-09-24 | Adaptec, Inc. | Error correction method |
US6047395A (en) * | 1998-01-30 | 2000-04-04 | Cirrus Logic, Inc. | Error correction processor for correcting a multi-dimensional code by generating an erasure polynomial over one dimension for correcting multiple codewords in another dimension |
EP0939403A3 (en) * | 1998-02-25 | 1999-11-17 | Matsushita Electric Industrial Co., Ltd. | High-speed error correcting apparatus with efficient data transfer |
US6370671B1 (en) * | 1998-06-18 | 2002-04-09 | Globespan, Inc. | Configurable decoder and method for decoding a reed-solomon codeword |
CN1286275C (zh) * | 1999-11-24 | 2006-11-22 | 三洋电机株式会社 | 纠错装置 |
KR100685360B1 (ko) | 2000-01-31 | 2007-02-22 | 산요덴키가부시키가이샤 | 회로 규모를 억제하며 고속의 오류 정정을 행하는 것이 가능한 오류 정정 장치 및 복호 장치 |
US7458007B2 (en) * | 2000-02-18 | 2008-11-25 | Texas Instruments Incorporated | Error correction structures and methods |
US7240204B1 (en) * | 2000-03-31 | 2007-07-03 | State Of Oregon Acting By And Through The State Board Of Higher Education On Behalf Of Oregon State University | Scalable and unified multiplication methods and apparatus |
US6651208B1 (en) * | 2000-04-04 | 2003-11-18 | Mosel Vitelic Corporation | Method and system for multiple column syndrome generation |
US6738942B1 (en) | 2000-06-02 | 2004-05-18 | Vitesse Semiconductor Corporation | Product code based forward error correction system |
US6694476B1 (en) | 2000-06-02 | 2004-02-17 | Vitesse Semiconductor Corporation | Reed-solomon encoder and decoder |
US7159164B1 (en) * | 2000-06-05 | 2007-01-02 | Qualcomm Incorporated | Method and apparatus for recovery of particular bits of a frame |
EP1223578A3 (en) * | 2000-12-12 | 2008-07-16 | Kabushiki Kaisha Toshiba | Data processing method using error-correcting code and an apparatus using the same method |
US6910174B2 (en) * | 2001-06-01 | 2005-06-21 | Dphi Acquisitions, Inc. | Error correction code block format |
EP1293978A1 (en) * | 2001-09-10 | 2003-03-19 | STMicroelectronics S.r.l. | Coding/decoding process and device, for instance for disk drives |
US20030061558A1 (en) * | 2001-09-25 | 2003-03-27 | Fackenthal Richard E. | Double error correcting code system |
FR2834146A1 (fr) | 2001-12-20 | 2003-06-27 | St Microelectronics Sa | Turbo-decodeur compact a haute efficacite |
US7266750B1 (en) | 2002-07-10 | 2007-09-04 | Maxtor Corporation | Error recovery strategies for iterative decoders |
US20040163030A1 (en) * | 2003-02-13 | 2004-08-19 | International Business Machines Corporation | Iterative error correcting system |
US8832523B2 (en) * | 2006-03-03 | 2014-09-09 | Ternarylogic Llc | Multi-state symbol error correction in matrix based codes |
EP1569348A1 (en) * | 2004-02-13 | 2005-08-31 | Alcatel | Iterative multidimensional decoding |
DE102004036383B4 (de) * | 2004-07-27 | 2006-06-14 | Siemens Ag | Codier-und Decodierverfahren , sowie Codier- und Decodiervorrichtungen |
US7600177B2 (en) * | 2005-02-08 | 2009-10-06 | Lsi Corporation | Delta syndrome based iterative Reed-Solomon product code decoder |
US7653862B2 (en) * | 2005-06-15 | 2010-01-26 | Hitachi Global Storage Technologies Netherlands B.V. | Error detection and correction for encoded data |
US7774676B2 (en) * | 2005-06-16 | 2010-08-10 | Mediatek Inc. | Methods and apparatuses for generating error correction codes |
US7430701B2 (en) * | 2005-06-16 | 2008-09-30 | Mediatek Incorporation | Methods and systems for generating error correction codes |
US20070067702A1 (en) * | 2005-09-05 | 2007-03-22 | Kuo-Lung Chien | Method and apparatus for syndrome generation |
US7624330B2 (en) * | 2005-12-12 | 2009-11-24 | Lsi Corporation | Unified memory architecture for recording applications |
US7743311B2 (en) * | 2006-01-26 | 2010-06-22 | Hitachi Global Storage Technologies Netherlands, B.V. | Combined encoder/syndrome generator with reduced delay |
US7823049B2 (en) * | 2006-03-15 | 2010-10-26 | Mediatek Inc. | Methods and apparatuses for generating parity symbols for data block |
US20070260960A1 (en) * | 2006-04-21 | 2007-11-08 | Kuo-Lung Chien | Error correction system and related method thereof |
US20070260963A1 (en) * | 2006-04-21 | 2007-11-08 | Kuo-Lung Chien | Error correction system and related method thereof |
US20070260961A1 (en) * | 2006-04-21 | 2007-11-08 | Kuo-Lung Chien | Error correction system and related method thereof |
US9203436B2 (en) * | 2006-07-12 | 2015-12-01 | Ternarylogic Llc | Error correction in multi-valued (p,k) codes |
US7894289B2 (en) * | 2006-10-11 | 2011-02-22 | Micron Technology, Inc. | Memory system and method using partial ECC to achieve low power refresh and fast access to data |
US8196004B1 (en) | 2007-03-27 | 2012-06-05 | Marvell International Ltd. | Fast erasure decoding for product code columns |
US8245117B1 (en) * | 2008-12-23 | 2012-08-14 | Link—A—Media Devices Corporation | Low complexity chien search in chase-type decoding of reed-solomon codes |
US8762818B1 (en) * | 2009-03-05 | 2014-06-24 | Marvell International Ltd. | System and methods for performing decoding error detection in a storage device |
JP5544773B2 (ja) * | 2009-07-22 | 2014-07-09 | ソニー株式会社 | エラー訂正装置、エラー訂正装置のメモリの制御方法および光ディスク記録再生装置 |
US8924814B2 (en) | 2012-08-28 | 2014-12-30 | Seagate Technology Llc | Write management using partial parity codes |
KR101512361B1 (ko) * | 2013-10-16 | 2015-04-15 | 한국과학기술원 | 연접 비씨에이치 디코더 및 연접 비씨에이치 디코딩 방법 |
US9286159B2 (en) * | 2013-11-06 | 2016-03-15 | HGST Netherlands B.V. | Track-band squeezed-sector error correction in magnetic data storage devices |
US9413392B1 (en) | 2015-12-14 | 2016-08-09 | International Business Machines Corporation | Post-decoding error check with diagnostics for product codes |
JP2020195007A (ja) * | 2019-05-24 | 2020-12-03 | キオクシア株式会社 | メモリシステム |
KR20220080589A (ko) * | 2020-12-07 | 2022-06-14 | 삼성전자주식회사 | Ecc 디코딩을 수행하는 ecc 엔진, 이의 동작 방법 및 ecc 엔진을 포함하는 스토리지 장치 |
IL282469B2 (en) * | 2021-04-20 | 2024-10-01 | Maris Tech Ltd | Network media streaming with error correction redundancy |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
NL8601446A (nl) * | 1986-06-05 | 1988-01-04 | Philips Nv | Werkwijze en inrichting voor het dekoderen van een blok kodesymbolen dat op twee manieren verdeeld is over kodewoorden die elk door een minimum-afstandssepareerbare kode beschermd zijn. |
US5068855A (en) * | 1988-07-18 | 1991-11-26 | Canon Kabushiki Kaisha | Error correcting method and apparatus |
JP3137119B2 (ja) * | 1989-06-07 | 2001-02-19 | キヤノン株式会社 | 誤り訂正装置 |
JPH04222029A (ja) * | 1990-12-21 | 1992-08-12 | Sony Corp | エラー訂正方法 |
US5412667A (en) * | 1993-07-08 | 1995-05-02 | Commodore Electronics Limited | Decoder for cross interleaved error correcting encoded data |
US5602857A (en) * | 1993-09-21 | 1997-02-11 | Cirrus Logic, Inc. | Error correction method and apparatus |
WO1995012850A1 (en) * | 1993-11-04 | 1995-05-11 | Cirrus Logic, Inc. | Reed-solomon decoder |
FR2712760B1 (fr) * | 1993-11-19 | 1996-01-26 | France Telecom | Procédé pour transmettre des bits d'information en appliquant des codes en blocs concaténés. |
US5592498A (en) * | 1994-09-16 | 1997-01-07 | Cirrus Logic, Inc. | CRC/EDC checker system |
US5696927A (en) * | 1995-12-21 | 1997-12-09 | Advanced Micro Devices, Inc. | Memory paging system and method including compressed page mapping hierarchy |
US5802080A (en) * | 1996-03-28 | 1998-09-01 | Seagate Technology, Inc. | CRC checking using a CRC generator in a multi-port design |
FR2751810B1 (fr) * | 1996-07-23 | 1998-10-23 | Sgs Thomson Microelectronics | Systeme de correction d'erreurs dans des trames de donnees ayant des codes de parite horizontaux et verticaux |
US5844920A (en) * | 1996-11-07 | 1998-12-01 | Cirrus Logic, Inc. | Thermal asperity compensation using multiple sync marks for retroactive and split segment data synchronization in a magnetic disk storage system |
US5844911A (en) * | 1996-12-12 | 1998-12-01 | Cirrus Logic, Inc. | Disc storage system with spare sectors dispersed at a regular interval around a data track to reduced access latency |
-
1997
- 1997-07-23 US US08/898,774 patent/US5974580A/en not_active Expired - Lifetime
-
1998
- 1998-07-21 WO PCT/US1998/015091 patent/WO1999005793A1/en active IP Right Grant
- 1998-07-21 AU AU85047/98A patent/AU8504798A/en not_active Abandoned
- 1998-07-21 KR KR10-2000-7000623A patent/KR100517482B1/ko not_active IP Right Cessation
- 1998-07-21 EP EP98935888A patent/EP0998791B1/en not_active Expired - Lifetime
- 1998-07-21 DE DE69805803T patent/DE69805803D1/de not_active Expired - Lifetime
- 1998-07-21 JP JP2000504660A patent/JP4102546B2/ja not_active Expired - Lifetime
-
2007
- 2007-12-20 JP JP2007329363A patent/JP2008148334A/ja not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
EP0998791B1 (en) | 2002-06-05 |
KR100517482B1 (ko) | 2005-09-28 |
DE69805803D1 (de) | 2002-07-11 |
AU8504798A (en) | 1999-02-16 |
EP0998791A1 (en) | 2000-05-10 |
JP2008148334A (ja) | 2008-06-26 |
JP4102546B2 (ja) | 2008-06-18 |
US5974580A (en) | 1999-10-26 |
KR20010022054A (ko) | 2001-03-15 |
WO1999005793A1 (en) | 1999-02-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2001511615A (ja) | 積符号のための同時行/列シンドロームジェネレータ | |
KR100562832B1 (ko) | 랜덤화된데이터내의에러를정정하기위한에러정정처리기및그방법 | |
US6272659B1 (en) | Error correction code processor employing adjustable correction power for miscorrection minimization | |
US6047395A (en) | Error correction processor for correcting a multi-dimensional code by generating an erasure polynomial over one dimension for correcting multiple codewords in another dimension | |
KR100573356B1 (ko) | 코드워드데이터를저장하기위한데이터버퍼와에러신드롬을저장하기위한신드롬버퍼를사용하는ecc시스템 | |
US5844919A (en) | Sector and track level error correction system for disc storage systems | |
US5991911A (en) | Concurrent generation of ECC error syndromes and CRC validation syndromes in a DVD storage device | |
US4881232A (en) | Method and apparatus for error correction | |
US6003151A (en) | Error correction and detection system for mass storage controller | |
US8429489B2 (en) | Data retrieval from a storage device using a combined error correction and detection approach | |
JP2007087529A (ja) | 信号復号装置、信号復号方法、および記憶システム | |
JPH1155129A (ja) | 積符号の誤り訂正および並行検査 | |
JP2002008325A (ja) | 情報記録再生方法およびこれを用いた情報記録再生回路装置 | |
JP2004164767A (ja) | データの復号方法およびそれを用いたディスク装置 | |
US7131052B2 (en) | Algebraic decoder and method for correcting an arbitrary mixture of burst and random errors | |
JPH0223575A (ja) | セクター同期外れ検出方法 | |
JP4551408B2 (ja) | 入力ビット・シーケンスをエンコーディングするための方法及び装置、ストレージ・メディアから読み取られたビット・シーケンスをデコーディングするための方法及び装置 | |
JP4244351B2 (ja) | 信号処理装置および信号記憶システム | |
EP1459451A2 (en) | Simple decoding method and apparatus | |
JP2001244823A (ja) | クロスインターリーブドリードソロモンコードの復号の処理内の誤り訂正のための装置 | |
JP4031136B2 (ja) | 符号化・復号化装置及びディスク記憶装置 | |
EP1111799B1 (en) | Error correction with a cross-interleaved Reed-Solomon code, particularly for CD-ROM | |
US20160226526A1 (en) | Systems and Methods for Soft Data Based Cross Codeword Error Correction | |
JP2007200441A (ja) | 符号化装置、復号装置、信号処理装置、および記憶システム | |
JPH0824269B2 (ja) | 誤り訂正方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050708 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20070918 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070920 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20071220 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20080313 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20080324 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110328 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120328 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130328 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130328 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140328 Year of fee payment: 6 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
EXPY | Cancellation because of completion of term |