JPH0936753A - 記号長コードに従って冗長情報を発生するためにデータのブロックをエンコードする方法、一連のデータワードとしてエンコーダにより受取られるブロックフォーマット化されたデータを記号長リードソロモンコードに従ってエンコードする方法、およびワード形式エンコーダ - Google Patents

記号長コードに従って冗長情報を発生するためにデータのブロックをエンコードする方法、一連のデータワードとしてエンコーダにより受取られるブロックフォーマット化されたデータを記号長リードソロモンコードに従ってエンコードする方法、およびワード形式エンコーダ

Info

Publication number
JPH0936753A
JPH0936753A JP8179249A JP17924996A JPH0936753A JP H0936753 A JPH0936753 A JP H0936753A JP 8179249 A JP8179249 A JP 8179249A JP 17924996 A JP17924996 A JP 17924996A JP H0936753 A JPH0936753 A JP H0936753A
Authority
JP
Japan
Prior art keywords
data
encoder
adder circuit
output
code
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Withdrawn
Application number
JP8179249A
Other languages
English (en)
Inventor
Lisa Fredrickson
リサ・フレドリックソン
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.)
Quantum Corp
Original Assignee
Quantum 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 Quantum Corp filed Critical Quantum Corp
Publication of JPH0936753A publication Critical patent/JPH0936753A/ja
Withdrawn 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)【要約】 【課題】 ワードフォーマット化データブロックをワー
ドクロック信号に応答して処理し8ビット記号コードに
従い冗長発生するワード形式エンコーダを提供する。 【解決手段】 エンコーダは、ワードクロック信号に応
答し8ビット記号コード実現のため1ワードクロックで
受取ったデータワードのバイト半分ずつを各々受取る2
つの並列データ経路を設け、バイトクロックに応答し2
連続バイトの処理後1ワードクロックで標準シーケンシ
ャルエンコーダレジスタ状態を複製し、リードソロモン
データ保全コード実現に使われ、バッファのデータ誤り
の検出機構の設けるためデータチャネルのブロックバッ
ファメモリに一時記憶される関連データブロックへの付
加冗長を発生する。生成多項式とガロア体表現の特別な
選択でガロア体乗算器を削除するエンコーダのハードウ
ェア低減実現例が開示され、これはデータブロック当り
2バイト冗長を発生し、最長伝播経路は1つの乗算器と
2つの加算器を通過する。

Description

【発明の詳細な説明】
【0001】
【発明の分野】この発明は一般的にデータ通信および記
憶システムにおいて誤った伝送からデータのブロックを
保護するためのデータコーディング法および装置の分野
に関する。より特定的には、この発明は、バイトクロッ
ク信号に応答して2つのバイトが処理された後に標準シ
ーケンシャルエンコーダのレジスタ状態を複製するため
に、ワードクロック信号に同期して受取られるデータの
ブロックを、バイト形式記号コードに従って、各データ
ワードを含む2つのデータバイトを1ワードクロックサ
イクルにわたって並列処理することによりエンコードす
るワード形式システマティックエンコーダに関する。
【0002】
【発明の背景】デジタルデータ通信および記憶システム
においては、データチャネルの始めから終りまでユーザ
のデータの保全性を維持することが望ましい。磁気記録
システムに関しては、データを劣化する記憶媒体へのお
よびそこからの信頼性のある読出/書込プロセスを与え
ることに加えて、実際のトランスデューサヘッド/媒体
インタフェースに先立つチャネルの部分部分でのデータ
保全性を維持することがさらに望ましい。
【0003】誤り検出および訂正技術は、典型的には、
雑音のある通信または記録チャネルを介する伝送中にデ
ータブロックを誤りから保護するための、何らかの形式
の付加される冗長情報に依存する。この付加される冗長
度は、保護されるべきデータブロックを形成する正確な
ビットパターンから発生され、およびしたがってそれに
依存する。受信端でのデータの保全性は、(送信端でそ
の冗長度を発生するのに用いられた同じコーディングア
ルゴリズムを用いて、)受信されたデータブロックから
その冗長度を再生し、次いでその再生された冗長度を元
の付加された冗長度と比較することによってチェックさ
れる。この比較の後、データ誤りがあると判断される場
合には、データを再送信または再読出するよう、または
誤り訂正能力を有するコードの場合にはデータ誤りを物
理的に訂正するよう要求がなされ得る。
【0004】現代の磁気記憶システムにおいては、主誤
り訂正コード(ECC)は、磁気媒体自体の記憶面へお
よびそこからデータを読出しおよび書込むプロセス中に
生ずる、データブロックにおける誤りを検出し訂正する
のに用いられる。典型的には異なるエンコードアルゴリ
ズムを利用するクロスチェックコード(XCHK)が、
ECCによって実行される訂正が正しく行なわれること
をチェックするのに用いられてきた。オンザフライ誤り
訂正を行なうためにECCおよびXCHKを実現するデ
ィスクドライブデータ記憶システムの一例が、共通の譲
受人に譲渡された、ピータンソン(Peterson)らへの
「組込デジタル制御装置を伴なうオンザフライ誤り訂正
(“On-The-Fly Error Correction With Embedded Digi
tal Controller”)」と題される米国特許第5,24
1,546号に開示される。共通の譲受人に譲渡され
た、アングイェン(Nguyen)らへの「オンザフライリー
ドソロモン誤り訂正コードのためのクロスチェック
(“Cross-Checking For On-The-FlyReed-Solomon Erro
r Correction Code”)」と題される米国特許第5,4
22,895号には、改良されたクロスチェックコード
および方策が開示されている。
【0005】その開示がここに引用により援用されるこ
れらの特許では、EECとクロスチェックとの組合せ
が、所与のECCコーデイング方策に対するECC訂正
誤りの統計学的な可能性を小さくする。しかしながら、
ECCおよびクロスチェックコードは、動作において、
劣化する記憶媒体上での情報の記憶に関連する誤りの検
出および訂正に限定される。
【0006】共通の譲受人に譲渡された、1995年6
月30日出願の「ディスクドライブバッファ内のデータ
を保護するための方法および装置(“Method And Appar
atusTo Protect Data Within A Disk Drive Buffer
”)」と題される同時係属米国特許出願には、ECC
のクロスチェックコードをデータ保全コードとして利用
する、ブロックバッファメモリにおけるデータを保護す
るためのアーキテクチャが開示される。その開示全体を
ここに引用により援用するこの出願では、ECCによる
訂正誤りを検出するのに用いられるのと同じチェックコ
ードが、好ましくはホストインタフェース回路において
実現され、データチャネルの読出経路と書込経路との両
方においてブロックメモリバッファを通してデータ保全
性チェックを行なう能力を設ける。その出願に開示され
るデータ保全コードアーキテクチャは、これまでにおい
てはブロックメモリバッファを保護するために用いられ
てきた、より強力でないパリティチェックおよび巡回冗
長コードにとって代わる。
【0007】しかしながら、このようなコードの実現
は、利用されるコードの記号期間に対応するクロックへ
の容易なアクセスを有さないシステムでは問題があっ
た。たとえば、256元ガロア体GF(28 )について
の8ビットのリードソロモン記号コードを利用する適用
例の場合には、図3に示されるような従来のシーケンシ
ャルエンコーダを通じてデータバイトをシーケンシャル
にクロックするのにバイトクロックが必要とされてい
た。したがって、コーディング保護が求められるデータ
経路の部分においてNビットの記号コードに対応するク
ロック信号への容易なアクセスを有さない適用例では、
Nビットのリードソロモン記号コードの使用は困難であ
った。
【0008】したがって、ワードクロックのみが利用可
能である環境において記号配向のリードソロモンのため
の回路実現例を提供することは望ましいであろう。「ワ
ード」という語は、ここでは、記号サイズの2倍のビッ
ト列を示すのに用いられる。したがって、8ビット(つ
まりバイト)の記号サイズに対してはワード長は16ビ
ットとなり、10ビットの記号コードは20ビットのワ
ード長を有することになる。このような実現例の特に望
ましい局面は、2つのデータ記号を一度に並列にかつワ
ードクロックに同期して処理して、Nビットのリードソ
ロモン記号コードをワードクロック(つまり2Nの期間
を有する)とともに機能するようにする能力であろう。
さらに、ハードウェアの複雑さが低減され、最長経路長
が最小限にされる、そのようなリードソロモンコードの
実現が望ましいであろう。
【0009】
【発明の概要】この発明の一般的な目的は、記号長コー
ドおよびワードクロック信号に応答してそれを実現する
対応するエンコーダ回路を提供することである。
【0010】この発明の別の目的は、ワードクロック信
号に応答してデータブロックを一連のデータワードとし
て受取る、8ビットのリードソロモンコードに従ってデ
ータブロックをエンコードするためのリードソロモンエ
ンコーダを提供することである。
【0011】この発明の別の目的は、2つの連続する記
号期間後にシーケンシャルエンコーダの状態を真似るた
めに、1つのワードクロック期間中に一度に2つのデー
タ記号で演算するリードソロモンデータ保全コードのた
めのエンコーダを提供することである。
【0012】この発明のさらに別の目的は、保護される
各データブロックに対しバイト長コードに従って2バイ
トのリードソロモン冗長度を生ずる、1つのワードクロ
ック期間中にデータワードを対応する第1および第2の
並列入力にわたって第1および第2のデータバイトとし
て並列に処理するためのリードソロモンエンコーダを提
供することである。
【0013】この発明の別の目的は、最長経路において
乗算器の数を最小限にしてリードソロモンエンコーダ/
検出器を通しての全体の遅延を低減するために1つの乗
算器が削除される、上述の特徴の並列入力アーキテクチ
ャを提供することである。
【0014】この発明のより特定的な目的は、リードソ
ロモンエンコーダ/検出器における最長伝播経路が1つ
の乗算器と2つの加算器とを通過する、上述の特徴の、
ハードウェアが最小限にされたアーキテクチャを提供す
ることである。
【0015】この発明の別のより特定的な目的は、生成
多項式g(x)=z2 −z+α206を用い、ガロア体生
成多項式p(x)=x8 +x4 +x3 +x2 +1により
定義されかつ02x(16進数)に等しい原始アルファ
元を有するGF(256)について演算する、データの
ブロックをエンコードするためのリードソロモンワード
形式エンコーダを提供することである。
【0016】この発明のこれらのおよび他の目的、特徴
ならびに局面に従うと、記号長リードソロモンコードお
よびそれを実現するためのワード形式システマティック
エンコーダ回路が設けられ、このエンコーダは、ワード
フォーマット化されたデータブロックをワードクロック
信号に同期して受取って、その受取ったデータブロック
に基づき記号長コードに従って冗長情報を発生する。
【0017】好ましい実施例では、ワード形式エンコー
ダは2つの並列データ経路が設けられ、その各々は、ワ
ードクロック信号のみが利用可能である環境において8
ビットの記号コードを実現するために、1ワードクロッ
ク期間中に受信されたデータワードのそれぞれのバイト
半分の1つを受取る。好ましいエンコーダは、2つの連
続するバイトが2バイトクロックサイクルにわたって処
理された後に標準シーケンシャル入力エンコーダの状態
を1ワードクロック期間で複製する。
【0018】この発明に従うワード形式エンコーダの好
ましい適用例では、データチャネルを通しての伝送中に
ブロックバッファメモリアレイに一時的に記憶されるデ
ータのブロックを保護するデータ保全コードが実現され
る。この開示されるデータ保全コードは、8ビット記号
サイズを有し、保護されるデータの各ブロックに対して
2つの冗長バイト(r=2)を発生する。現在の好まし
いコードでは、生成多項式およびガロア体表現の特定の
選択によって、r=2エンコーダのg1 乗算器が削除さ
れる、低減されたハードウェア実現例が与えられる。こ
のコードに対する、リードソロモンエンコーダにおける
最長伝播経路は、1つの乗算器と2つの加算器とのみを
通過する。
【0019】この発明のこれらのおよび他の局面、特
徴、目的ならびに利点は、図中の同一番号は対応する部
分を示す添付の図面に関連して与えられるこの発明の好
ましい実施例の以下の詳細な説明を考慮すれば、よりよ
く理解され評価されるであろう。
【0020】
【好ましい実施例の詳細な説明】ここで図1を参照する
と、好ましいワード形式エンコーダ(図1のDIB4)
は、ホストインタフェース2において記号長データ保全
コードを実現するものとして示され、ブロックメモリバ
ッファ6に記憶されるデータブロックに冗長性を与え
る。
【0021】ワード形式エンコーダの好ましいデータ保
全コード実現例では、ホスト計算システム1からのデー
タは一連のデータワードとしてホストインタフェース
(破線のボックス2で示される)に送られる。一旦イン
タフェース2の中に入ると、入来データは、2つの別個
の経路に沿って、好ましくはファーストインファースト
アウト(FIFO)シフトレジスタ5であるシフトレジ
スタと、DIB4とに与えられる。ホスト1と、たとえ
ばSCSIまたはIDEインタフェースであってもよい
ホストインタフェース2との間の通信は、特定のホスト
インタフェース2に関連付けられる通信プロトコルに従
って確立される。DIBエンコーダ回路4は別個のチッ
プ上に形成されてもよいが、それは好ましくはカスタム
ASICパッケージの一部としてインタフェース2のチ
ップに製造される。インタフェース2へのデータ経路
は、ホスト1から受取られるデータのバイトサイズまた
はワードサイズのフォーマット化に対応するために8お
よび16ビット幅経路の間で切換えられてもよく、ここ
に開示されるワード形式コーディング実現例においては
16ビットデータワードモードにある。
【0022】以下により詳細に論じられるように、各ワ
ードフォーマット化されたデータブロック内のデータワ
ードは、インタフェース2回路に与えられるワードクロ
ック信号に同期して、シーケンシャルにクロックされて
DIB4に入る。同時に、各データブロックのデータワ
ードは、さらにシーケンシャルにクロックされてFIF
O5に入りそこから出て、マルチプレクサ11を通過し
て、一時記憶キャッシュとして働くブロックメモリバッ
ファ6に送られる。本実施例では16×64Kメモリア
レイであるバッファ6は、バッファ制御装置13および
監視マイクロコントローラ14の制御下でデータバイト
を受取る。
【0023】データ保全コードによって保護されるべき
データのブロックのすべてのデータワードがDIBエン
コード4およびFIFO5を通してクロックされた後、
DIBエンコード4は好ましくは1つの冗長ワード(図
1および図2においてDIBとラベル付けされる)をク
ロックアウトする。このDIB冗長度が出力される同じ
クロックサイクル中に、DIB冗長度が、マルチプレク
サ11を通過して、バッファ6に記憶される関連付けら
れるデータブロックに付加されるよう、マルチプレクサ
11は状態を切換える。バッファ6に記憶されるデータ
ブロックとその付加されるDIB冗長度とのこの組合せ
は、ここではリードソロモンコードワードと呼ばれる。
【0024】リードソロモンベースのデータ保全コード
の適用によって保護されるであろう最大ブロック長の問
題を簡単に見ると、2m-1 という式がmビットのリード
ソロモンコードの「自然ブロック長」を規定する。リー
ドソロモンコードの距離特性によれば、(付加された冗
長度を含む)2m-1 記号まで有するデータブロックつま
り自然ブロック長の場合、任意の2つのコードワード間
の距離はr+1記号に等しい。したがって、2つの冗長
バイト(r=2)を生ずる8ビットのリードソロモンコ
ードの場合、コードワードが自然ブロック長以下なら
ば、任意の2つの非同一コードワードは少なくとも3バ
イトは異なるよう保証される。このシナリオでは、検出
不可能な3バイトの誤りの、ある組合せが存在する。
【0025】一方、この開示される8ビットデータ保全
コードに対する自然ブロック長制約を超える場合には、
検出不可能な2バイトの誤りの、ある組合せが存在す
る。しかしながら、すべての1バイトの誤りは検出可能
なままである。DRAMに関連付けられる生ビット誤り
率が、自然ブロック長を超えるデータブロックにわたる
コードの拡張を保証するほど十分に低い(典型的には1
-12 以下の大きさである)、ここに開示されるDRA
Mバッファを保護するのに用いられるデータ保全コード
の文脈において、この特定の特性が利用されてもよい。
この8ビットコーディング例の場合、DRAMにおいて
セクタサイズ(つまり512バイト)までのデータのブ
ロックを保護し、一方で約10-20 のブロック検出不可
能誤り率を与えるのに、2バイトのリードソロモン冗長
度が用いられてもよいことが統計学的に判断されてい
る。
【0026】ここで書込経路の議論に戻ると、データ
は、バッファ6を通るデータフローを監視マイクロコン
トローラ4とともに調整するバッファ制御装置13から
受取られる信号に応答して、バッファ6から転送され
る。次に、バッファ6からのデータは、シーケンサ/制
御装置10に入り、その中に含まれるDIBエンコーダ
/検出器8を通って一度に1コードワードずつ送られ
る。処理のこの段階中、DIBエンコーダ/検出器8は
検出器として働き、誤りが検出された場合には、DIB
8からマイクロコントローラ14に誤りフラグを送っ
て、その劣化したデータブロックをホスト1が再度送る
よう要求してもよい。
【0027】次に図2を参照すると、読出経路にわたっ
て転送されるデータを保護するためのデータ保全コード
の動作は、反対方向である以外は、書込経路にわたるコ
ードの動作と同様である。前に付加されたそのDIB冗
長量とともに記憶媒体12から読出されたデータブロッ
ク(好ましくは書込処理中に記憶媒体12に書込まれ
る)は、シーケンサ/制御装置10に入り、バッファ6
へ伝送され、そこでそれはバッファ制御装置13の制御
下でホストインタフェース2に送られる前に一時的に記
憶される。
【0028】「ディスクドライブバッファ内のデータを
保護するための方法および装置」と題される、引用され
る特許出願に記載されるように、シーケンサ/制御装置
10に入るデータブロックは、好ましくはシーケンサ/
制御装置10内に含まれる主ECCエンコーダ回路(図
示せず)にさらに好ましくは入る。ECCエンコーダ
は、エンコーダ回路を通過する各データブロックに応答
して、所定数のECCチェックバイトを発生する。この
新しく発生されたECCチェックバイトは次いで、ディ
スクから関連付けられるデータブロックとともに回復さ
れる付加されたECCチェックバイトと比較される。再
発生されたECCチェックバイトがディスクから回復さ
れたECCチェックバイトと一致しない場合には、1つ
以上の誤りがあるとされ、共通の譲受人に譲渡されたピ
ーターソンらへの米国特許第5,241,546号に開
示される誤り訂正ルーチンが開始されてもよい。
【0029】自身の関連付けられるDIB冗長度ととも
にデータブロックのデータワードがバッファ6からイン
タフェース回路2に転送されると、DIB冗長度を再発
生してその再発生された結果をデータバッファ6から転
送された冗長度と比較する処理が繰返される。インタフ
ェース回路2内のDIBエンコーダ4は、好ましくは、
シーケンサ/制御装置10のDIB回路8によって用い
られる同じコーディングアルゴリズムに従って入来デー
タブロックから冗長度を再発生して(好ましくは、DI
B8によって利用される同じ8ビット記号コードを実現
するよう、ワードクロックに応答するワード形式処理を
用いる)、その結果をバッファ6からの入来冗長バイト
と比較する。DIB値が一致する場合には、その伝送は
誤りがなかったとされる。そうでない場合には、誤りが
あるとされて、その劣化したブロックが記憶媒体12か
ら再度読出されることを要求してもよい、DIB4から
の誤りフラグがマイクロコントローラ14に通信されて
もよい。
【0030】(リードソロモンコードの既知の訂正特性
によれば)データ保全性チェック中に検出された誤りを
実際に訂正することは開示されるリードソロモンコード
の能力内ではあるが、書込経路誤りの場合に情報を再度
送るようホスト1に要求することまたは書込経路誤りの
場合にデータを再度読出すことが比較的容易であること
は、訂正ルーチンの機構をオプションにする。したがっ
て、上で注目されるように、書込モード中、データが記
憶媒体12上における記録のために書込チャネルへ伝送
されるに先立ってホスト1からホストインタフェース2
およびバッファ6を通って送られる際に誤りが検出され
た場合には、そのデータが再度送られることを要求する
よう制御信号がホストインタフェース2を通ってホスト
1に送られてもよい。読出モードで、データが、記憶媒
体12から読戻され、バッファ6を介して送られて、最
終的にホストインタフェース2を介してホスト1に送ら
れるときにも、同様のプロセスをたどってもよい。この
場合、データがバッファ6を通過した後でデータに誤り
が検出された場合には、記憶媒体12からそのデータが
再度読出されるよう状態信号が送られてもよい。
【0031】読出経路の文脈において、ここに論じられ
るデータ保全コードブロックの動作は、記憶媒体12自
体から回復されるデータに存在する誤りを実際に訂正す
るのに用いられる主ECCルーチンの動作とは別個であ
ることが注目されるべきである。しかしながら、ワード
クロックに応答する並列記号処理の使用等の、ここに教
示されるデータ保全コードブロックの実際のハードウェ
ア実現例は、ECCエンコーダ回路および他のリードソ
ロモンコーディング適用例に適用可能である。
【0032】したがって、前述した、バッファ6を保護
するためのデータ保全コードの使用の議論は全体のプロ
セスを例示するのみであることが意図され、データ経路
内のバッファに記憶されるデータを保護するためにクロ
スチェックコードをデータ保全コードとして用いる全体
的なシステムアーキテクチャのより完全な説明のため
に、「ディスクドライブバッファ内のデータを保護する
ための方法および装置」と題される米国特許出願が引用
される。
【0033】記号長リードソロモンコードの好ましいワ
ード形式処理実現例をこれより説明する。リードソロモ
ンコードは、α(「アルファ」)をガロア体GF(q)
の原始元とし、その(q−1)の累乗{α0 ,α1 ,α
2 ,…αq-2 }はその体の零でない元を使い尽くすと
し;J0 をその生成多項式の第1の根の任意の対数(底
はアルファ)とし;rをコードにより発生される冗長記
号の数として、等式(1)の形式の生成多項式(ここで
はzの関数として示される)を有する。したがって、生
成多項式g(z)は、r=2(つまり2つの冗長記号)
の場合、等式(2)のように因数分解された形式に書換
えられ得、項に乗算を行なうと等式(3)のようにな
り、この式は、等式(1)を用いて、(等式(4))の
ように書換えられ得る。
【0034】
【数1】
【0035】フィードバックを有する線形r段シフトレ
ジスタが図3に示される。r段シフトレジスタは、一連
のシーケンシャルに受取られるデータバイトに応答して
2つの冗長バイトを発生するための従来的なエンコーダ
回路として働く。図3の固定された乗算器は生成多項式
係数g0 およびg1 を用い(g2 =1であるため、この
乗算器は削除される);データ記号は集合{mi }を含
み;および2つの冗長記号レジスタR0 およびR1 の内
容は時間iにおいてそれぞれvi およびwi と呼ばれ
る。フィードバックはfi として示される。データブロ
ックの始めで、R 0 およびR1 は初期設定される。エン
コードモードにおいてデータブロックの終りに達する
と、エンコードプロセス中に発生された2つの冗長記号
はレジスタR 0 およびR1 から転送されてデータブロッ
クに付加される。チェックモードにおけるデータブロッ
クの終りで、R0 およびR1 に含まれる2つの冗長記号
は前に付加された記号と比較され(つまりビット形式で
XORされ)、それらが一致する場合にはブロックは誤
りがないとされる。逆に、チェックモード中に発生され
た記号がもとの付加された冗長記号と一致しない場合に
は、1つ以上の誤りが生じたとされて、適当な訂正動作
が上述のようにとられるだろう。
【0036】ここで、並列入力処理を伴なうリードソロ
モンデータ保全コードの好ましい実現例を見ると、図3
のシーケンシャルr=2エンコーダのための以下のテー
ブルは、関連する一般的な方法を示すための開始点の役
割を果たす。テーブル1は、図3のエンコーダが2つの
連続するデータ記号つまりmi およびmi+1 を処理した
後の、レジスタR0 およびR1 ならびにフィードバック
ラインfi の内容を示す。
【0037】
【表1】
【0038】テーブル1の最後の行は、2つのデータ記
号(つまり1ワード)がシーケンシャルに処理された後
の、レジスタR0 およびR1 の内容とフィードバックラ
インfi の状態とを示す等式を含む。2つの記号期間後
のレジスタ内容の検査から、データの2つの記号が1ワ
ードクロックサイクルで処理された後に同じレジスタ内
容およびフィードバックを有する、並列入力を伴なうエ
ンコーダ回路が作られる。これは、並列記号入力の使用
と、1ワードクロック期間後に、2つの記号クロック期
間後の図3のシーケンシャル記号エンコーダのレジスタ
およびフィードバック状態と同一のレジスタおよびフィ
ードバック状態を有するハードウェアアーキテクチャを
通して実現される。重要なことは、ここに教示される対
応するワード形式処理エンコーダのための青写真を与え
るために、多くの異なるシーケンシャルエンコーダ回路
に対してテーブル1と同様のテーブルが構成されてもよ
いということである。
【0039】リードソロモンエンコーダでは、冗長記号
を発生するのに用いられる固定値乗算器の数を減少させ
ることが望ましい。これは、乗算器つまりg0 、g1
2…の組合せ論理がエンコーダに対するハードウェア
要件を支配することにつながるからである。したがっ
て、ある乗算器を削除することができれば、大きなハー
ドウェアの節約と処理時間の全体的な短縮とが達成され
得る。たとえば、図3のシーケンシャル処理エンコーダ
では、1ワードクロック期間中に2記号処理を並列して
行なうために、レジスタR0 およびR1 の内容はいくつ
かの固定値乗算器つまりg0 、g1 およびg1 2 の必要
性を2記号クロック期間後に示す。
【0040】好ましいワード形式エンコーダ/検出器の
1つの実施例では、アルファの累乗に対する任意のオフ
セット値J0 は127になるように選択される。下に示
されるように、J0 に対するこの値の選択はJ0 を1に
等しくして、g0 乗算器が有利に取除かれることを可能
にする。この結果は、コードが演算するガロア体の文脈
における展開されるリードソロモン生成多項式の係数の
検査からわかる。リードソロモンベースのコードでは、
生成多項式の根は、ガロア体の元となるアルファの累乗
である。これは、
【0041】
【数2】
【0042】を生成多項式g(z)の根として等式
(2)にあるように因数分解された形式で書かれたとき
の生成多項式の検査からわかる。さらに、展開された生
成多項式(上述の等式(3))から明らかであるよう
に、ガロア体の元は、エンコードプロセス中に用いられ
るg0 、g1 、…、等の固定値乗算器としてさらに働
く。
【0043】8ビットリードソロモン記号コードの例で
は、コードは、GF(256)またはGF(28 )とし
て示される256の元を有するガロア体について演算を
行なう。一般的なガロア体表現は、ガロア体が原始元ア
ルファと既約多項式p(x)とによって定義される「標
準」基または「アルファ」基である。p(x)は、mを
各コード記号におけるビット数とするm次の既約多項式
である。8ビットリードソロモンコードの例では、現在
好ましいGF(256)は、xが当該技術において既知
であるようにGF(2)について多項式表現で2進の体
の元を表わすとして、p(x)=x8 +x4 +x3 +x
2 +1と、xに等しいその原始元α1 とを有する。完全
なGF(256)真数表を発生させるために、たとえば
以下のように、p(x)を法として、この体における各
連続する元は先行する体の元を原始の体の元で乗算する
ことによって決定されてもよい。
【0044】
【数3】
【0045】GF(256)真数表の全体(つまりα
255 まで)がこの態様で作られれば、対数表を作るには
この真数表を適当な写像を通して単に逆にするだけであ
る。α 1 =xおよびp(x)=x8 +x4 +x3 +x2
+1でのGF(256)に対する完全な真数表および対
数表が以下のように与えられる。
【0046】
【表2】
【0047】
【表3】
【0048】
【表4】
【0049】
【表5】
【0050】
【表6】
【0051】
【表7】
【0052】
【表8】
【0053】
【表9】
【0054】
【表10】
【0055】
【表11】
【0056】
【表12】
【0057】
【表13】
【0058】
【表14】
【0059】
【表15】
【0060】
【表16】
【0061】
【表17】
【0062】
【表18】
【0063】
【表19】
【0064】
【表20】
【0065】
【表21】
【0066】
【表22】
【0067】
【表23】
【0068】
【表24】
【0069】
【表25】
【0070】この真数表および対数表の開示は主にこの
開示されるエンコーダアーキテクチャの低減されたハー
ドウェア実現に到達することにおいて関連する方法の理
解を容易にするためのものであるが、この真数表または
対数表はたとえばエンコーダ回路における固定値乗算を
実行するためにガロア体演算を実現するのに用いられて
もよいことも注目されるべきである。この場合、進数表
および対数表は、エンコーダ回路にとって利用可能にさ
れるメモリに参照テーブルとして記憶されてもよい。代
替的に、ガロア体算術論理ユニット(ALU)を利用し
て必要なガロア体演算を実行してもよい。
【0071】ここで、ワード形式エンコーダ実現(つま
り、ワードクロックに従って2つの記号を並列処理する
こと)に対するハードウェア要件の単純化に戻ると、r
=2の場合、生成多項式g(z)は、
【0072】
【数4】
【0073】の形式であることが想起され、この等式に
0 =127を代入すると等式(5)のようになる。
【0074】真数表(テーブル2)を参照すると、g0
乗算器つまりα255 は1に等しいことがわかり、したが
ってこの乗算器は取除かれ得ることが確認される。g1
においてアルファの2つの累乗(α127 およびα128
を加算するためには、まず上のテーブル2においてこれ
らの数の真数(底はアルファ)を調べ、それらの真数を
ともにビット形式でXORし、ついでこの中間結果の
(テーブル3からの)対数の底アルファをとってアルフ
ァの1乗をその結果として得ることが必要である。テー
ブル2から、α127 は204に等しく、α128 は133
に等しいことがわかる。2を法とした204と133と
のビット形式加算は73に等しい。この結果は次いでテ
ーブル3を用いてアルファの累乗に変換し戻され、73
の対数の底アルファはα152 に等しい。
【0075】したがって等式(5)は等式(6)のよう
に単純化され得る。このコードに対する固定値乗算器
は、g0 =1、g1 =α152 =73、およびg2 =1で
ある。g0 およびg2 の両方が1に等しいため、それら
は取除かれることができ、1つのg1 乗算器のみが残
る。
【0076】図4は、r=2での8ビットリードソロモ
ン記号コードを実現する、ハードウェアの複雑さが低減
された並列入力ワード形式エンコーダ18を示す。エン
コーダ18は、g1 =α152 である2つの固定値g1
算器22と、4つのGF(256)加算器20と、R0
およびR1 としてそれぞれ符号付けされる2つの記憶レ
ジスタ24および26とを含む。エンコーダ18は、デ
ータバイトmi+1 およびmi をそれぞれ受取る2つの並
列入力21および23を有する。1ワードクロックサイ
クル中における、ライン25および19上のレジスタR
0 およびR1 の初期内容(それぞれvi およびwi )の
フィードバックから生ずる項と入来データバイト(それ
ぞれmi+1 およびmi )との組合せは、エンコーダ18
の種々の加算器20および乗算器22の出力において示
される。g0 が0に等しくセットされるテーブル1のレ
ジスタ内容R0 およびR1 と、図4のレジスタ24およ
び26の内容R0 およびR1 との比較は、レジスタ内容
が、1ワードクロック信号後の図4の実現例と、2デー
タバイトが処理された後の図3のシーケンシャルエンコ
ーダとにおいて同じであることを示す。これにより、図
4の並列入力エンコーダ18は図3のシーケンシャルエ
ンコーダの真の代替物であることが確認される。図4の
エンコーダ18における最長伝播経路は2つのg1 乗算
器22と3つの加算器20とを通過することがわかる。
リードソロモンエンコーダ27の別の現在好ましい実施
例が図5に示される。この実施例では、任意のオフセッ
ト値J0 は230に等しくセットされており、g1 固定
乗算器の削除をもたらす。示されるように、このコード
によって、エンコーダ27の所望されるごとくより小さ
くかつより高速である実現例を作ることが可能となる。
【0077】図4のエンコーダ18を参照して記載され
たのと同じ方法に従って、R=2かつJ0 =230で展
開される生成多項式は等式(7)のように与えられる。
【0078】前と同じく、α230 とα231 とはまず上に
開示される真数表と対数表とを用いてともに加算され
る。真数表を参照すると、α230 は244に等しく、α
231 は245に等しいことが示される。これら2つの数
を2を法としてビット形式で加算し、その結果の対数を
(テーブル3から)とると、1に等しいα255 が得られ
る。α255 =1なので、
【0079】
【数5】
【0080】である。したがって、等式(7)は等式
(8)のように書換えられ得る。J0 は230に等しく
かつr=2でのこの8ビット記号コードの場合、乗算器
は、g0 =α206 =83(テーブル2の真数表から)、
1 =1、およびg2 =1の値を持つ。g1 およびg2
の両方が1に等しいため、それらは取除かれることがで
き、g0 乗算器28のみが残る。
【0081】
【数6】
【0082】このコードの図5のハードウェア実現例は
並列入力ワード形式処理アーキテクチャを利用し、デー
タバイトmi+1 およびmi をそれぞれ受取るための2つ
の並列入力29および30と、4つのGF(256)加
算器20と、2つの固定されたg0 乗算器28と、2つ
のレジスタ24および26とを含む。しかしながらこの
実施例では、エンコーダ回路27においてg0 乗算器2
8のみを残して、g1乗算器は削除されている。加算器
20とg0 乗算器28とは図5に示されるように接続さ
れる。レジスタR0 24からのフィードバックライン3
1はデータバイトmi+1 を受取る加算器20に接続さ
れ、R1 26からのフィードバックライン32はmi
力を受取る加算器20に接続される。テーブル1におい
てg1 を1に等しくセットし、テーブル1のレジスタ内
容を図5に示されるレジスタ内容と比較することによっ
て、図5のエンコーダ27は図3のシーケンシャルエン
コーダのワード形式等価物であることが確認され得る。
1 が一旦テーブル1の等式から取除かれると、2つの
エンコーダのレジスタ内容は同一であり、16ビットク
ロックのみが利用可能であるときに8ビット記号コード
を実現するのに図5のエンコーダが用いられてもよいこ
とを示すことがわかる。
【0083】図5のエンコーダ27は特に小型の設計を
有し、図4の実施例に対し伝播経路長における実質的な
短縮を示す。図5では、最長伝播経路は1つの乗算器2
8および2つの加算器20のみを通過する。図5の実現
例を図4の実現例と比較すると、図4の両方の乗算器2
2が3つの排他的または(XOR)遅延を招くとき、図
5の乗算器28はわずかにより小さいということが明ら
かになる。たとえば、Rp をレジスタ伝播時間とし、R
s をレジスタ準備時間とし、Cs をクロックスキュー許
容範囲とし、XをXOR遅延とすると、図4の場合の全
サイクル時間は、 Rp +9X+Rs +Cs である。比較として、図5の場合の全サイクル時間は、 Rp +4X+Rs +Cs である。5つのXOR遅延の低減は、現在の技術では、
伝播遅延において5ナノ秒の改善にほぼ等しい。したが
って、図5のエンコーダ実現例は所望のごとくより小型
でありかつより高速である。
【0084】上述のことから、ハードウェアの複雑さが
低減されかつ記号伝播経路長が最小限にされたワード形
式並列入力エンコーダ/検出器を通して実現されるリー
ドソロモンデータ保全コードが提供されたことがわか
る。ここに開示される一般化された方法についての多く
の変形が可能であることが理解されるはずである。たと
えば、ここにおける教示は、1ワードクロックサイクル
にわたって2つのデータ記号を並列処理するワード形式
リードソロモンECCエンコーダを構成するのに用いら
れてもよい。さらに、たとえば10または16ビット記
号コード等の記号コードの長さと、発生される冗長記号
数との両方に関して利用されるコードについての多くの
変形も可能である。
【0085】このようにこの発明の実施例を記載してき
たが、この発明の目的が十分に達成されていることが理
解され、この発明の構成における多くの変化ならびに幅
広く異なる実施例および適用例がこの発明の精神および
範囲から逸脱することなく示唆されることが当業者には
理解されるであろう。
【0086】たとえば、ここに開示されるリードソロモ
ンエンコーダの特定の実施例は、ワードクロック信号に
応答して16ビットデータワードを受取り、その受取っ
たデータブロックを8ビットのリードソロモンコードに
従ってエンコーダする並列入力リードソロモンエンコー
ダを例示するものであるが、ここにおける教示に基づい
てより多くのコードおよび並列入力エンコーダ回路が設
計されてもよい。したがって、ワードクロックに応答し
てデータワードを受取るエンコーダにおいて記号配向の
コードを実現するための一般化された方法が開示されて
いる。
【0087】したがって、ここにおける開示および記載
は純粋に例示のためのものであって、いかなる意味にお
いても限定的であることを意図されるものではない。
【図面の簡単な説明】
【図1】ブロックメモリバッファにおいてデータブロッ
クを保護するためのデータ保全コードとしてこの発明に
従うワード形式エンコーダ/検出器の好ましい実現例を
示す、ブロックフォーマット化されたデータをブロック
メモリバッファを介してシーケンサ/制御装置回路に伝
送するホストインタフェースを有するデータチャネルに
おける書込経路のトップレベルのブロック図である。
【図2】データ保全コードにおいてこの発明のワード形
式エンコーダ/検出器を組込む、データチャネルの読出
経路の、図1と同様のブロック図である。
【図3】各受取られたデータブロックに対し2つの冗長
バイトの情報(r=2)を発生する、先行技術の線形フ
ィードバックシフトレジスタエンコーダ/検出器のブロ
ック図である。
【図4】受取られたデータブロックを保護するために2
つの冗長バイトを発生するための、この発明に従うエン
コーダ/検出器であって、1に等しい固定された乗算器
0 を有するエンコーダ/検出器のブロック図である。
【図5】2つの冗長バイトの情報を発生し、1に等しい
固定された乗算器g1 を有する、この発明に従うエンコ
ーダ/検出器の現在の好ましい実施例のブロック図であ
る。
【符号の説明】
1 ホスト計算システム 2 ホストインタフェース 4 ワード形式エンコーダ 5 FIFO 6 ブロックメモリバッファ 8 DIBエンコーダ/検出器 10 シーケンサ/制御装置 11 マルチプレクサ 12 記憶媒体 13 バッファ制御装置 14 マイクロコントローラ 18 並列入力ワード形式エンコーダ 19 フィードバックライン 20 GF(256)加算器 21 並列入力 22 固定値g1 乗算器 23 並列入力 24 記憶レジスタ 25 フィードバックライン 26 記憶レジスタ
───────────────────────────────────────────────────── フロントページの続き (54)【発明の名称】 記号長コードに従って冗長情報を発生するためにデータのブロックをエンコードする方法、一連 のデータワードとしてエンコーダにより受取られるブロックフォーマット化されたデータを記号 長リードソロモンコードに従ってエンコードする方法、およびワード形式エンコーダ

Claims (17)

    【特許請求の範囲】
  1. 【請求項1】 記号長コードに従って冗長情報を発生す
    るためにデータのブロックをエンコードする方法であっ
    て、 (a) 複数のデータワードを含むデータブロックをエ
    ンコーダに受けるステップと、 (b) 第1および第2の並列入力経路を設けるステッ
    プとを含み、前記第1および第2の経路は1つのワード
    クロック期間中に受取られるデータワードのそれぞれの
    第1および第2の記号を受取り、前記方法はさらに、 (c) 前記第1および第2の記号を1つのワードクロ
    ック期間中に前記エンコーダの対応する第1および第2
    の並列回路経路を通して送るステップと、 (d) 前記一連のデータワードが前記エンコーダを通
    過した後に、記号長コードに従って、前記データブロッ
    クを表わす、前記エンコーダからの冗長情報を発生する
    ステップとを含む、方法。
  2. 【請求項2】 前記記号長コードはリードソロモンコー
    ドである、請求項1に記載の方法。
  3. 【請求項3】 前記記号長は8ビットであり、前記複数
    のデータワードは16ビットのデータを各々が含む、請
    求項2に記載の方法。
  4. 【請求項4】 前記リードソロモンコードは、生成多項
    式g(x)=z2 −z+α206 によって特徴付けられ、
    256の元を有するガロア体について演算を行ない、前
    記ガロア体は、ガロア体生成多項式p(x)=x8 +x
    4 +x3 +x 2 +1と、02x(16進数)に等しい原
    始アルファ元とによって定義される、請求項3に記載の
    方法。
  5. 【請求項5】 前記リードソロモンコードは、生成多項
    式g(x)=z2 −α152 z+1によって特徴付けら
    れ、256の元を有するガロア体について演算を行な
    い、前記ガロア体は、ガロア体生成多項式p(x)=x
    8 +x4 +x3 +x2 +1と、02x(16進数)に等
    しい原始アルファ元とによって定義される、請求項3に
    記載の方法。
  6. 【請求項6】 前記記号長コードは、データチャネルに
    おけるブロックバッファメモリに記憶されるデータブロ
    ックを保護するデータ保全コードである、請求項1に記
    載の方法。
  7. 【請求項7】 前記データチャネルはディスクドライブ
    記憶装置にある、請求項6に記載の方法。
  8. 【請求項8】 データのブロックは512バイトを含
    む、請求項7に記載の方法。
  9. 【請求項9】 記号長リードソロモンコードに従って、
    一連のデータワードとしてエンコーダにより受取られる
    ブロックフォーマット化されたデータをエンコードする
    方法であって、 (a) エンコーダ回路の入力にデータブロックのデー
    タワードを伝送するステップと、 (b) 記号長コードの記号レートに関連付けられるレ
    ートの半分で前記エンコーダ回路が動作するように前記
    エンコーダにクロック信号を与えるステップと、 (c) 前記伝送されたデータワードを第1および第2
    のデータ記号に分割するステップと、 (d) 前記第1および第2のデータ記号を前記エンコ
    ーダ回路内の第1および第2の並列経路にわたって伝送
    するステップとを含み、前記第1および第2の経路の各
    々は記憶レジスタへのデータ経路を与え、各記憶レジス
    タは各ワードクロック期間中に対応するデータ経路から
    直接くる新しい記憶値で更新され、前記方法はさらに、 (e) 前記一連のデータワードが前記エンコーダを通
    して送られた後、発生される冗長情報を前記記憶レジス
    タから出力するステップを含み、前記発生される冗長度
    は記号長コードに従って形成される、方法。
  10. 【請求項10】 前記記号長は8ビットであり、前記デ
    ータワードは16ビットのデータを各々が含む、請求項
    9に記載の方法。
  11. 【請求項11】 前記リードソロモンコードは、生成多
    項式g(x)=z2−z+α206 によって特徴付けら
    れ、256の元を有するガロア体について演算を行な
    い、前記ガロア体は、ガロア体生成多項式p(x)=x
    8 +x4 +x3 +x2 +1と、02x(16進数)に等
    しい原始アルファ元とによって定義される、請求項10
    に記載の方法。
  12. 【請求項12】 前記リードソロモンコードは、生成多
    項式g(x)=z2−α152 z+1によって特徴付けら
    れ、256の元を有するガロア体について演算を行な
    い、前記ガロア体は、ガロア体生成多項式p(x)=x
    8 +x4 +x3+x2 +1と、02x(16進数)に等
    しい原始アルファ元とによって定義される、請求項10
    に記載の方法。
  13. 【請求項13】 前記記号長コードは、データチャネル
    におけるブロックバッファメモリに記憶されるデータブ
    ロックを保護するデータ保全コードである、請求項9に
    記載の方法。
  14. 【請求項14】 前記データチャネルはディスクドライ
    ブ記憶装置にある、請求項13に記載の方法。
  15. 【請求項15】 前記データブロックは512バイトを
    含む、請求項14に記載の方法。
  16. 【請求項16】 第1の入力と第2の入力とを含み、前
    記第1の入力は第1のデータバイトを受取り、前記第2
    の入力は第2のデータバイトを受取り、前記第1および
    第2のデータバイトはともに1つのデータワードのそれ
    ぞれの半分を含み、さらに、 前記第1の入力に接続される第1の加算回路を含み、前
    記第1の加算回路は前記第1のデータバイトを第1のフ
    ィードバックバイトに加算して第1の加算回路出力を発
    生させ、さらに、 前記第2の入力に接続される第2の加算回路を含み、前
    記第2の加算回路は前記第2のデータバイトを第2のフ
    ィードバックバイトに加算して第2の加算回路出力を発
    生させ、さらに、 前記第1の加算回路出力と前記第2の加算回路出力とに
    接続される第3の加算回路を含み、前記第3の加算回路
    は前記第1の加算回路出力と前記第2の加算回路出力と
    をともに加算して第3の加算回路出力を発生させ、さら
    に、 前記第3の加算回路出力に接続され、前記第3の加算回
    路出力を固定値で乗算して第1の積の出力に達するため
    の第1の乗算器と、 前記第1の積の出力に接続される第1の記憶レジスタ
    と、 前記第2の加算回路出力に接続され、前記第2の加算回
    路出力を前記固定値で乗算して第2の積の出力に達する
    ための第2の乗算器と、 前記第2の積の出力と前記第3の加算回路出力とに接続
    され、これらの出力をともに加算して第4の加算回路出
    力を発生させるための第4の加算回路と、 前記第4の加算回路出力に接続される第2の記憶レジス
    タとを含む、ワード形式エンコーダ。
  17. 【請求項17】 前記第1および前記第2の乗算器はガ
    ロア体乗算器である、請求項16に記載の装置。
JP8179249A 1995-07-12 1996-07-09 記号長コードに従って冗長情報を発生するためにデータのブロックをエンコードする方法、一連のデータワードとしてエンコーダにより受取られるブロックフォーマット化されたデータを記号長リードソロモンコードに従ってエンコードする方法、およびワード形式エンコーダ Withdrawn JPH0936753A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/501,329 US5757826A (en) 1995-07-12 1995-07-12 Word-wise processing for reed-solomon codes
US08/501329 1995-07-12

Publications (1)

Publication Number Publication Date
JPH0936753A true JPH0936753A (ja) 1997-02-07

Family

ID=23993084

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8179249A Withdrawn JPH0936753A (ja) 1995-07-12 1996-07-09 記号長コードに従って冗長情報を発生するためにデータのブロックをエンコードする方法、一連のデータワードとしてエンコーダにより受取られるブロックフォーマット化されたデータを記号長リードソロモンコードに従ってエンコードする方法、およびワード形式エンコーダ

Country Status (6)

Country Link
US (1) US5757826A (ja)
EP (1) EP0753942A2 (ja)
JP (1) JPH0936753A (ja)
KR (1) KR970007623A (ja)
DE (1) DE753942T1 (ja)
SG (1) SG44962A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6219816B1 (en) 1997-10-29 2001-04-17 Nec Corporation Device and method for carrying out Reed-Solomon encoding

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5019088A (en) * 1989-11-07 1991-05-28 Interventional Technologies Inc. Ovoid atherectomy cutter
US6098192A (en) * 1997-09-17 2000-08-01 Cirrus Logic, Inc. Cost reduced finite field processor for error correction in computer storage devices
US6493845B1 (en) * 1999-06-21 2002-12-10 Maxtor Corporation Parallel input output combined system for producing error correction code redundancy symbols and error syndromes
US7353368B2 (en) * 2000-02-15 2008-04-01 Intel Corporation Method and apparatus for achieving architectural correctness in a multi-mode processor providing floating-point support
US6694476B1 (en) 2000-06-02 2004-02-17 Vitesse Semiconductor Corporation Reed-solomon encoder and decoder
US6738942B1 (en) 2000-06-02 2004-05-18 Vitesse Semiconductor Corporation Product code based forward error correction system
US6732317B1 (en) * 2000-10-23 2004-05-04 Sun Microsystems, Inc. Apparatus and method for applying multiple CRC generators to CRC calculation
JP3431136B2 (ja) * 2001-03-02 2003-07-28 日本電気株式会社 送信データ消失検出システム
ITMI20011309A1 (it) * 2001-06-21 2002-12-21 St Microelectronics Srl Metodo di memorizzazione di un file dati in particolare in formato cosiddetto mpeg
JP4112849B2 (ja) * 2001-11-21 2008-07-02 株式会社東芝 半導体記憶装置
US6978415B1 (en) 2001-11-27 2005-12-20 Maxtor Corporation Variable redundancy cyclic code encoders
JP4364012B2 (ja) * 2003-05-14 2009-11-11 株式会社東芝 紙葉類の重送検知装置、および重送検知方法
DE102005028221B4 (de) * 2005-06-17 2007-10-11 Infineon Technologies Ag Vorrichtung und Verfahren zum Schutz der Integrität von Daten
US7904789B1 (en) * 2006-03-31 2011-03-08 Guillermo Rozas Techniques for detecting and correcting errors in a memory device
US8176397B2 (en) * 2008-09-17 2012-05-08 Lsi Corporation Variable redundancy reed-solomon encoder
US8683296B2 (en) 2011-12-30 2014-03-25 Streamscale, Inc. Accelerated erasure coding system and method
US8914706B2 (en) 2011-12-30 2014-12-16 Streamscale, Inc. Using parity data for concurrent data authentication, correction, compression, and encryption

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS574629A (en) * 1980-05-21 1982-01-11 Sony Corp Data transmitting method capable of correction of error
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
US4777635A (en) * 1986-08-08 1988-10-11 Data Systems Technology Corp. Reed-Solomon code encoder and syndrome generator circuit
US5140596A (en) * 1990-02-20 1992-08-18 Eastman Kodak Company High speed encoder for non-systematic codes
US5241546A (en) * 1991-02-01 1993-08-31 Quantum Corporation On-the-fly error correction with embedded digital controller
US5422895A (en) * 1992-01-09 1995-06-06 Quantum Corporation Cross-checking for on-the-fly Reed Solomon error correction code
US5471485A (en) * 1992-11-24 1995-11-28 Lsi Logic Corporation Reed-solomon decoder using discrete time delay in power sum computation
US5383204A (en) * 1993-06-29 1995-01-17 Mitsubishi Semiconductor America, Inc. Parallel encoding apparatus and method implementing cyclic redundancy check and Reed-Solomon codes

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6219816B1 (en) 1997-10-29 2001-04-17 Nec Corporation Device and method for carrying out Reed-Solomon encoding

Also Published As

Publication number Publication date
EP0753942A2 (en) 1997-01-15
SG44962A1 (en) 1997-12-19
DE753942T1 (de) 1997-08-28
KR970007623A (ko) 1997-02-21
US5757826A (en) 1998-05-26

Similar Documents

Publication Publication Date Title
US6574774B1 (en) Physical block address recovery apparatus system and method for cyclic error correction codes
JPH0936753A (ja) 記号長コードに従って冗長情報を発生するためにデータのブロックをエンコードする方法、一連のデータワードとしてエンコーダにより受取られるブロックフォーマット化されたデータを記号長リードソロモンコードに従ってエンコードする方法、およびワード形式エンコーダ
US4777635A (en) Reed-Solomon code encoder and syndrome generator circuit
US5875200A (en) Reed-Solomon code system employing k-bit serial techniques for encoding and burst error trapping
US4494234A (en) On-the-fly multibyte error correcting system
US5805799A (en) Data integrity and cross-check code with logical block address
US4504948A (en) Syndrome processing unit for multibyte error correcting systems
JPH11508712A (ja) ディスクドライブバッファ内のデータを保護するための方法および装置
WO2000057561A1 (en) Pipelined high speed reed-solomon error/erasure decoder
JPS6354254B2 (ja)
JP2001175542A (ja) 記録再生装置および半導体メモリ
JPH0831803B2 (ja) 誤り訂正のための方法と装置
JP2000209102A (ja) リ―ドソロモン符号器/復号器装置
JP2007274239A (ja) 誤り訂正装置
JPH0328093B2 (ja)
EP1589665A1 (en) Error correction decoder comprising an erasure correcting Reed-Solomon decoder and a CRC decoder
JP4022293B2 (ja) エラー訂正方法及び装置
JPH0575479A (ja) データ流における誤りの識別、補正修整回路装置
US5268908A (en) Low data delay triple coverage code apparatus for on-the-fly error correction
EP1102406A2 (en) Apparatus and method for decoding digital data
US6651214B1 (en) Bi-directional decodable Reed-Solomon codes
Tang et al. Coding for error control
WO1989002123A1 (en) High bandwidth reed-solomon encoding, decoding and error correcting circuit
JP2003078421A (ja) 符号系列の先頭位置検出方法とその装置、それを用いた復号方法とその装置
JP2726902B2 (ja) 広帯域巾のリード‐ソロモンエンコード、デコード及びエラー修正回路

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20031007