JP3993921B2 - 記憶装置 - Google Patents
記憶装置 Download PDFInfo
- Publication number
- JP3993921B2 JP3993921B2 JP28559697A JP28559697A JP3993921B2 JP 3993921 B2 JP3993921 B2 JP 3993921B2 JP 28559697 A JP28559697 A JP 28559697A JP 28559697 A JP28559697 A JP 28559697A JP 3993921 B2 JP3993921 B2 JP 3993921B2
- Authority
- JP
- Japan
- Prior art keywords
- data
- row
- old data
- correction code
- changed
- 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
Links
Images
Classifications
-
- 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
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Probability & Statistics with Applications (AREA)
- Theoretical Computer Science (AREA)
- Signal Processing (AREA)
- Detection And Correction Of Errors (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Error Detection And Correction (AREA)
Description
【発明が属する技術分野】
本発明は記憶システムに係り、とりわけ記憶システムに対するアクセス時間の短縮に関する。
【0002】
【従来の技術】
デジタルデータを記録する場合、ユーザデータをブロックに分類し、エラー訂正データを加えることによってデータの完全性を保護するのが通常である。一般に用いられる方式は、2レベルのエラー訂正コード(ECC)が加えられるリードソロモン積符号である。これら2つのレベルは、内部エラー訂正コードおよび外部エラー訂正コード、またはECC1およびECC2と呼ばれる場合が多い。
【0003】
ブロック内において、ヘッダ情報を加えたユーザデータが、行と列からなるアレイをなすように構成される。各行毎にECC1コードフィールドが加えられ、各列毎にECC2コードフィールドが加えられる。結果生じるデータブロックは、最小の記録可能なブロックすなわち単位レコードを形成する。
【0004】
しかし、ホストコンピュータは、さらに小さいデータセグメントすなわちセクタの操作を行う可能性がある。一般に、記録可能なブロックすなわち単位レコード内には、複数のセクタが存在する。ホストがセクタの修正を行うことになる場合、一般に、ドライブが、関連ブロックを読み取って、ブロックのエラー訂正を行い、データの新セクタでブロックを更新し、この新ブロックに関するエラー訂正フィールド値を計算し、新単位レコードをディスクに書き込む。
【0005】
新ECCの計算プロセスには、一般に、ディスクにデータを書き込みながら、行に沿ってデータを走査することが必要になる。ECC1は、この行走査中に計算され、ディスクのデータに追加される。行から行へと走査が進行するつれて、そのうち、ECC2が漸次累算される。これは、ECC2が、データブロックの走査が完了するまで得られないことを表している。それは、また、変更のないデータの書き換えが不要な状況においても、新ECC2を累算するには、データブロック全体を走査しなければならないということも表している。
【0006】
さらに、例えば、DVDフォーマットのように、フォーマットによっては、ECC2は、より一般的な、終端への追加ではなく、データブロック全体にわたるインターリーブが実施される。これは、ECC2が得られるまで、書き込みを開始できないということを表している。内側のトラックの場合、データブロックを読み取り、従来のやり方でECC2を計算するのに必要なデータブロックの完全な走査を実施し、さらに、ディスクが1回転する間に、新データブロックの書き換えも行うのに十分な時間はない。これは、ブロックの書き込みを完了するには、さらに回転させる必要があることを表している。
【0007】
従って、マルチレベルのエラー訂正符号化制約条件、とりわけ単位ブロック内におけるエラー訂正コードのインターリーブによって、現行のテクノロジによる記憶システムの装置にアクセス制限が加えられ、多くの用途において、これらの装置の利用が妨げられることになるのは明らかである。
【0008】
【発明が解決しようとする課題】
従って、本発明の目的は、現行のテクノロジによる記憶システムのアクセス時間を大幅に改善し、同時に、とりわけ単位ブロック内においてエラー訂正コードのインターリーブを用いる装置の場合に、信頼できるマルチレベルエラー訂正を可能にするマルチレベルエラー訂正を行うための技術を提供することにある。
【0009】
【課題を解決するための手段】
本発明は、現行のテクノロジによる記憶システムのアクセス時間を大幅に改善し、同時に、信頼できるマルチレベルエラー訂正を可能にするマルチレベルエラー訂正を行うための技術である。それ自体、単位ブロック内においてエラー訂正コードがインターリーブされる場合に用いるのに適している。
【0010】
本発明は、変更すべき旧セクタと新置換セクタの両方の、単位ブロックに関する外側のエラー訂正コード(ECC2)フィールドに対する「付加量」、を計算することによって、アクセス性能の改善を実現することができる。旧セクタによる付加量は、もとのECC2から除去され、新規セクタの付加量が、もとのECC2に加えられる。
【0011】
ある実施例の場合、ECC2付加量の計算は、行列乗法によって実施される。行列の要素は、単位ブロックのどのセクタを変更すべきかによって決まる。もとのECC2に対する付加量の除去または追加は、単純な排他的ORプロセスによって実施される。
【0012】
セクタのECC2に対する付加量の代替計算方法は、もとのブロックの読み取り中に付加量を累算することである。これは、通常のECC2と同様のやり方で計算されるが、変更すべきセクタのデータバイト以外の全てのデータバイトがゼロに置換される。
【0013】
いずれにせよ、この新しいアプローチによれば、読み取り操作に用いられたのと同じ回転で、更新されるデータの書き換えに間に合うように新ECC2を得ることが可能になる。この結果、ディスクの追加回転が排除されるので、アクセス時間が改善される。
【0014】
エラー訂正コードに対して付加量の除去および追加を行うこのアプローチは、他の記録状況にも適用可能である。一般に、このアプローチは、エラー訂正コード以外には、変更されるデータの処理だけしか必要としないということである。このため、データ処理の減少とアクセス時間の改善の両方が可能になる。
【0015】
【発明の実施の形態】
以下では、図1〜図5に関連して、本発明の実施例について説明を行うことにする。ただし、当該技術の熟練者には容易に明らかになるように、本発明は、これら制限された実施例の範囲を超えるものであるため、これらの図に関連して行われる詳細な説明は解説を目的としたものである。
【0016】
図1および図2は、両方を合わせると、内部および外部エラー訂正符号化方式を用いたデータブロック編成の一般化表現を利用する本発明を例示している。図1には、非インターリーブ方式が示され、図2には、インターリーブ方式が示されている。図1の場合、単位ブロック100は、ユーザデータ(ヘッダ情報を加えた)領域101、内部訂正コードECC1領域102、および、外部訂正コードECC2領域103に分割される。単位ブロック100は、1度に1行ずつ走査され、各行は、対応するECC1コードフィールドを備えている。例えば、行105には、ECC1コードフィールド106が含まれている。1つの行の各データ単位は、関連するECC2コードフィールドを備える列の一部である。従って、行105のデータ単位109は、ECC2コードフィールド108を含む列107の一部である。
【0017】
図2の場合、単位ブロック100は、ユーザデータ(ヘッダ情報を加えた)領域101、内部訂正コードECC1領域102、および、外部訂正コードECC2領域103に分割される。しかし、図2において明らかなように、単位ブロック100全体にわたって、外側訂正コードECC2領域103の部分は、ユーザデータ(ヘッダ情報を加えた)領域101の部分とインターリーブされている。
【0018】
DVD光ディスク記憶フォーマットは、こうした方式を利用しており、こうしたマルチレベルエラー訂正方式に関連した一般的な問題を例示するために利用することが可能である。DVDの場合、32キロバイトの、ヘッダ情報を加えたユーザデータが、172バイト×192バイトのアレイをなすように構成される。172バイトの各行毎に、10バイトのECC1が加えられ、192バイトの各列毎に、16バイトのECC2が加えられる。結果生じる182バイト×208バイトのデータブロックが、最小の記録可能ブロック、すなわち、単位レコードを形成する。
【0019】
しかし、ホストコンピュータは、一般に2キロバイトといった、より小さいデータセグメントの操作を行う可能性がある。ホストが、2キロバイトのセクタを修正する場合、ドライブは、一般に、32キロバイトの関連ブロックを読み取って、ブロックのエラー訂正を行い、新しい2キロバイトのデータでブロックを更新し、この新ブロックに関するエラー訂正バイトを計算し、新単位レコードをディスクに書き込む。
【0020】
新ECCの計算プロセスには、一般に、ディスクにデータを書き込みながら、行に沿ってデータを走査することが必要になる。ECC1は、この行走査中に計算され、ディスクのデータに追加される。行から行へと走査が進行するつれて、そのうち、ECC2が漸次累算される。これは、ECC2が、データブロックの走査が完了するまで得られないことを表している。それは、また、変更のないデータの書き換えが不要な状況においても、新ECC2を累算するには、データブロック全体を走査しなければならないということも表している。
【0021】
DVDフォーマットの場合、ECC2は、より一般的な、終端への追加ではなく、データブロック全体にわたるインターリーブが実施される。すなわち、1行分のECC2が、16の2キロバイトセクタのそれぞれに追加される。これは、ECC2が得られるまで、連続書き込みを開始できないことを表している。DVDの内側トラックの場合、データブロックを読み取り、従来のやり方でECC2を計算するのに必要なデータブロックの完全な走査を実施し、さらに、ディスクが1回転する間に、新データブロックの書き換えも行うのに十分な時間はない。これは、ブロックの書き込みを完了するには、さらに回転させる必要があることを表している。
【0022】
この新規のアプローチには、新旧の両方の2キロバイトセクタのECC2に対する「付加量」を計算することが必要になる。旧セクタによる付加量は、もとのECC2から除去され、新セクタの付加量は、もとのECC2に加えられる。これは、より少ない処理を必要とし、従って、より迅速に実施することが可能になる。
【0023】
図3は、本発明の実施例に従って構成された、アクセス時間を短縮するための装置を備えた記憶システムの側面図である。記憶システム200には、記憶媒体201、読み取り装置204、書き込み装置205、および、コントローラ203が含まれている。記憶媒体201には、データブロック202が含まれており、方向206に移動する。例えば、記憶媒体201がCD−ROMの場合には、方向206に回転する。代わりに、記録媒体201がテープであれば、テープは、方向206に進む。
【0024】
単位ブロックであるデータブロック202が読み取り装置204を通過する際、読み取り装置204は単位ブロックであるデータブロック202の走査を行う。これには、変更すべき旧データの走査が含まれる。コントローラ203は、変更すべき旧データからの訂正コードに対する付加量を計算し、変更すべき旧データに取って代わる新データからの訂正コードに対する付加量を計算し、訂正コードの付加量の変化に基づいて、訂正コードを調整する。単位ブロックであるデータブロック202が、書き込み装置205を通過する際、新データおよび調整された訂正コードが、単位ブロックであるデータブロック202に書き込まれる。
【0025】
図4は、本発明の実施例に従って記憶システムのアクセス時間を短縮するための方法を示すフローチャートである。フローチャート300において、変更すべき旧データが走査される(301)。変更すべき旧データからの訂正コードに対する付加量が計算される(302)。変更すべき旧データに取って代わる新データからの訂正コードに対する付加量が計算される(303)。訂正コードは、訂正コードの付加量の変化に基づいて調整される(304)。新データおよび調整された訂正コードが、単位ブロックに書き込まれる(305)。
【0026】
ある実施例の場合、ECC2の付加量の計算は、行列乗法によって実施される。例えば、DVDの場合、12×16の行列の要素は、単位ブロックのどの2キロバイトセクタを変更すべきかによって決まる。ある実施例の場合、もとのECC2に対する付加量の除去または追加は単純な排他的ORプロセスによって実施される。
【0027】
変更すべき旧セクタのECC2に対する付加量を計算する代替方法では、もとの単位ブロックの読み取り中に、付加量を累算する。従って、DVDの場合、変更すべき2キロバイトセクタのECC2に対する付加量を計算する代替方法では、もとの32キロバイトのブロックの読み取り中に、付加量の累算を行う。この付加量の計算は、通常のECC2の計算と同じやり方で実施され、変更すべき2キロバイトセクタのデータバイト以外の全てのデータバイトが、ゼロだけに置換される。
【0028】
この累算アプローチは、行列乗法アプローチよりもさらに複雑である。この複雑さは、累算段階において読み取られるデータが、ECC1プロセスだけしか受けておらず、従って、消去、それどころか、エラーを含んでいる可能性があるために(この可能性を最小限に抑えるため、追加エラー検出情報があるが)、生じる。いずれにせよ、変更すべき旧データの消去またはエラーによって、ECC2の付加量計算にエラーを生じる可能性がある。
【0029】
しかし、計算されたECC2の付加量エラーは、エラーのある行による付加量を除去し、訂正された行の付加量を追加するのと同じ技法を用いて訂正することが可能である。代替案として、累算プロセス中に、このエラーのある行を全てゼロにセットすることによって、付加量エラーの機先を制することも可能である。このアプローチを拡張すれば、行ではなく、単一バイトエラーの付加量を除去し、追加することが可能になる。
【0030】
図5は、本発明の代替実施例に従って記憶システムのアクセス時間を短縮する方法を示すフローチャートである。フローチャート400は、旧データ行の走査から開始される(401)。次に、テストを実施して、走査を受ける行が、変更すべきデータを有するセクタからの行であるか否かが判定される(402)。走査を受ける行が、変更すべきでない場合には、訂正コードの累算に対して、ゼロの行付加量が設定される(403)。
【0031】
テストを実施して、最後の行の走査が済んだか否かの判定が行われる(407)。最後の行の走査が済んでいなければ、次の旧データ行が、走査を受ける(401)。一方、最後の行の走査が済んでいる場合には、変更されたデータによる訂正コードの付加量が計算される(408)。
【0032】
判定ボックス402に戻ると、走査を受ける行のデータを変更すべき場合には、訂正コードの累算に対する行付加量が設定される(404)。次に、テストを実施して、行内のエラーを検出したか否かの判定が行われる(405)。エラーが検出されなければ、最後の行のテスト(407)を実施して、既述のように処理が進められる。エラーが検出されると、最後の行のテスト(407)を実施する前に、エラーの付加量によって、付加量累算が調整される(406)。
【0033】
下記の例(原理を例示することだけを意図した)では、8データバイト(すなわち、D1〜D8)と4ECCワード(すなわち、P1〜P4)から構成されるコードワードが用いられている。従って、この例の場合、ブロック長「N」は、12記号であり、冗長「R」は、2記号の訂正力「t」を可能にする4である。この例では、原始他項式P(x)=x8+x7+x2+x+1を利用することによって、GF(256)が生成される。
【0034】
生成行列Aと、8データバイトD1、D2、D3、D4、D5、D6、D7、およびD8を利用して、冗長バイトP1、P2、P3、およびP4を計算することが可能である。
【0035】
【数1】
【0036】
制限されたデータバイト数による付加量を計算すると、例えば下記のようになる。
【0037】
【数2】
【0038】
行列乗算は、下記のより単純な計算に簡約される。
【0039】
【数3】
【0040】
従って、4バイトコードワードが16進表記法で表現された、下記のもとのデータ(オリジナルデータ)およびECCを想定してみることにする。なお、以下の表において、「ECC」なる表記は、「ECCが添付されたデータ行」を示す。
【0041】
【表1】
【0042】
ホストが、第3と第4のデータコードワード(すなわち、D3およびD4)を、例えば、それぞれ2Fおよび32に置き換えることになるものと仮定する。
【0043】
【表2】
【0044】
しかし、変更すべき旧データからのECC付加量の累算、および新置換データによって、それぞれ下記が得られる。
【0045】
【表3】
【0046】
【表4】
【0047】
これは新データに必要なECCであり、変更されたデータだけを利用して生成された。
【0048】
この例の場合、ECC付加量は、下記の行列乗法によって生成することも可能である。
【0049】
【数4】
【0050】
ここで要素Xおよび要素Yは、置換すべきデータバイトの位置によって決まる。
【0051】
本発明の多くの特徴および利点は、上記解説から明らかであり、従って、付属の請求項は、本発明のこうした特徴および利点の全てを包含することを意図したものである。さらに、当該技術の熟練者であれば、多くの修正および変更がすぐに思い浮かぶので、本発明を例示および解説したそのままの構成および動作に制限することを望むものではない。従って、適合する修正および同等物は、全て、本発明の範囲内に含まれるものとして再分類することが可能である。
【0052】
以下に本発明の実施の形態を要約する。
1. 変更すべき旧データを走査し、
前記変更すべき旧データからの訂正コードに対する付加量を計算し、
前記変更すべき旧データに取って代わる新データからの前記訂正コードに対する付加量を計算し、
前記訂正コードの付加量の変化に基づいて前記訂正コードの調整を行い、
前記新データおよび前記調整された訂正コードを書き込むエラー訂正方法。
【0053】
2. 前記変更すべき旧データが、レコードブロックの一部であり、前記変更すべき旧データからの前記訂正コードが、前記レコードブロック内にインターリーブされている複数の訂正コードの1つである上記1に記載のエラー訂正方法。
【0054】
3. 前記変更すべき旧データからの前記訂正コードに対する前記付加量が、行列乗法を利用して計算される上記1に記載のエラー訂正方法。
【0055】
4. 前記新データからの前記訂正コードに対する前記付加量が、行列乗法を利用して計算される上記1に記載のエラー訂正方法。
【0056】
5. 前記調整された訂正コードが、前記旧データからの前記訂正コードに対する前記付加量と前記新データからの前記訂正コードに対する前記付加量との間における排他的OR演算を利用して計算される上記1に記載のエラー訂正方法。
【0057】
6. 前記調整された訂正コードが、前記旧データが変化することになる部分以外はゼロの行が得られるように、ゼロ化された行の旧データのエラーコード付加量を計算するステップと、前記旧データが変化することになる部分以外はゼロの行が得られるようにゼロ化された行の新データのエラーコード付加量を計算し、前記旧データが変化することになる部分の前記旧データを前記新データに置換するステップと、前記ゼロ化された行の旧データのエラーコード付加量と、前記旧データのエラーコードと、前記ゼロ化された行の新データのエラーコードの付加量との間において、排他的OR演算を実施するステップを利用して計算される上記1に記載のエラー訂正方法。
【0058】
7. 前記旧データを有する行が正しく読み取られたか否かを判定し、
エラーが生じた場合には、エラーのある前記行による前記付加量を除去し、前記訂正されたデータ行の前記付加量を加算する上記6に記載のエラー訂正方法。
【0059】
8. 前記旧データが正しく読み取られたか否かを判定し、
エラーが生じた場合には、エラーのある前記データによる前記付加量を除去し、前記訂正されたデータの前記付加量を加算する上記6に記載のエラー訂正方法。
【0060】
9. 前記調整された訂正コードが、前記旧データが、正しく読み取られたか否かを判定し、エラーが生じなかった場合、前記旧データが変化することになる部分以外はゼロの行が得られるように、ゼロ化された行の旧データのエラーコード付加量を計算し、エラーが生じた場合、前記旧データが変化することになる部分以外はゼロの行が得られるように、ゼロ化された行の旧データのエラーコード付加量を計算し、前記旧データが変化することになる部分の前記旧データを訂正旧データに置換し、前記旧データが変化することになる部分以外はゼロの行が得られるように、ゼロ化された行の新データのエラーコード付加量を計算し、前記旧データが変化することになる部分の前記旧データを前記新データに置換し、前記ゼロ化された行の旧データのエラーコード付加量と、前記旧データのエラーコードと、前記ゼロ化された行の新データのエラーコード付加量との間で、排他的OR演算を実施するステップを利用して、計算される上記1に記載のエラー訂正方法。
【0061】
10. エラー訂正を行う記憶システムの装置において、
変更すべき旧データを走査するための読み取り手段と、
前記変更すべき旧データからの訂正コードに対する付加量を計算し、前記変更すべき旧データに取って代わる新データからの前記訂正コードに対する付加量を計算し、前記訂正コード付加量の変化に基づいて、前記訂正コードを調整するためのコントローラ手段と、 前記新データおよび前記調整された訂正コードを書き込むための書き込み手段とを具備したエラー訂正装置。
【0062】
11. 前記変更すべき旧データが、レコードブロックの一部であり、前記変更すべき旧データからの前記訂正コードが、前記レコードブロック内にインターリーブされている複数の訂正コードの1つである上記10に記載のエラー訂正装置。
【0063】
12. 前記変更すべき旧データからの前記訂正コードに対する前記付加量が、行列乗法を利用して計算される上記10に記載のエラー訂正装置。
【0064】
13. 前記新データからの前記訂正コードに対する前記付加量が、行列乗法を利用して計算される上記10に記載のエラー訂正装置。
【0065】
14. 前記調整された訂正コードが、前記旧データからの前記訂正コードに対する前記付加量と前記新データからの前記訂正コードに対する前記付加量との間における排他的OR演算を利用して計算される上記10に記載のエラー訂正装置。
【0066】
15. 前記コントローラ手段が、前記旧データが変化することになる部分以外はゼロの行が得られるように、ゼロ化された行の旧データのエラーコード付加量を計算することと、前記旧データが変化することになる部分以外はゼロの行が得られるように、ゼロ化された行の新データのエラーコード付加量を計算し、前記旧データが変化することになる部分の前記旧データを前記新データに置換することと、前記ゼロ化された行の旧データのエラーコード付加量と、前記旧データのエラーコードと、前記ゼロ化された行の新データのエラーコードの付加量との間において、排他的OR演算を実施することによって調整訂正コードの計算を行う上記10に記載のエラー訂正装置。
【0067】
16. 前記コントローラ手段が、前記旧データを有する行が、正しく読み取られたか否かを判定し、エラーが生じた場合には、エラーのある前記行による前記付加量を除去し、訂正された前記行の前記付加量を加算する上記15に記載のエラー訂正装置。
【0068】
17. 前記コントローラ手段が、前記旧データが、正しく読み取られたか否かを判定し、エラーが生じた場合には、エラーのある前記データによる前記付加量を除去し、訂正された前記データの前記付加量を加算する上記15に記載のエラー訂正装置。
【0069】
18. 前記コントローラ手段が、前記旧データが、正しく読み取られたか否かを判定することと、エラーが生じなかった場合、前記旧データが変化することになる部分以外はゼロの行が得られるように、ゼロ化された行の旧データのエラーコード付加量を計算することと、エラーが生じた場合、前記旧データが変化することになる部分以外はゼロの行が得られるように、ゼロ化された行の旧データのエラーコード付加量を計算し、前記旧データが変化することになる部分の前記旧データを訂正旧データに置換することと、前記旧データが変化することになる部分以外はゼロの行が得られるように、ゼロ化された行の新データのエラーコード付加量を計算し、前記旧データが変化することになる部分の前記旧データを前記新データに置換することと、前記ゼロ化された行の旧データのエラーコード付加量と、前記旧データのエラーコードと、前記ゼロ化された行の新データのエラーコードの付加量との間で、排他的OR演算を実施することによって、前記調整された訂正コードの計算を行う上記10に記載のエラー訂正装置。
【0070】
【発明の効果】
付加量が行列乗法と累算のどちらで計算されるかには関係なく、DVDの場合、付加量計算のアプローチによって、読み取り操作に用いられていたのと同じ回転で、更新された32キロバイトの書き換えに間に合うように新ECC2を得ることが可能になる。これによって、ディスクの追加回転が排除され、従って、アクセス時間が改善される。
【0071】
ただし、エラー訂正コードに対して付加量の除去および追加を行うアプローチは、他の記録状況にも適用可能である。一般に、この付加量の調整アプローチは、エラー訂正コード以外に、絶対に処理しなければならないのは、変更されるデータだけということになる。不変のままのデータは、必ずしも、どうしても実施しなければならないというわけではない。従って、結果として得られる処理の減少およびアクセス時間の短縮を利用した、データ記憶アーキテクチャの設計が可能になる。
【図面の簡単な説明】
【図1】図2を合わせると、内部および外部エラー訂正符号化方式を用いたデータブロック編成の一般化表現を利用する本発明を示すことになる図である。
【図2】図1を合わせると、内部および外部エラー訂正符号化方式を用いたデータブロック編成の一般化表現を利用する本発明を示すことになる図である。
【図3】本発明の望ましい実施例に従って構成された、アクセス時間を短縮するための装置を備える記憶システムの側面図である。
【図4】本発明の実施例に従って記憶システムのアクセス時間を短縮するための方法を示すフローチャートである。
【図5】本発明の代替実施例に従って記憶システムのアクセス時間を短縮するための方法を示すフローチャートである。
【符号の説明】
200 記憶システム
201 記憶媒体
202 データブロック
203 コントローラ
204 読み取り装置
205 書き込み装置
Claims (4)
- DVDフォーマットのデータのエラー訂正を行う記憶装置において、
変更すべき旧データを走査するための読み取り手段と、
前記変更すべき旧データからの訂正コードに対する付加量を計算し、前記変更すべき旧データに取って代わる新データからの前記訂正コードに対する付加量を計算し、前記訂正コード付加量の変化に基づいて、前記訂正コードを調整するためのコントローラ手段と、
前記新データおよび前記調整された訂正コードを書き込むための書き込み手段とを具備し、
前記変更すべき旧データからの前記訂正コードに対する前記付加量と前記新データからの前記訂正コードに対する前記付加量の少なくとも一方は行列乗法を利用して計算される記憶装置。 - DVDフォーマットのデータのエラー訂正を行う記憶装置において、
変更すべき旧データを走査するための読み取り手段と、
前記変更すべき旧データからの訂正コードに対する付加量を行列乗法を利用して計算し、前記変更すべき旧データに取って代わる新データからの前記訂正コードに対する付加量を行列乗法を利用して計算し、前記訂正コード付加量の変化に基づいて、前記訂正コードを調整するためのコントローラ手段と、
前記新データおよび前記調整された訂正コードを書き込むための書き込み手段とを具備し、
前記コントローラ手段が、
前記旧データが変化することになる部分以外はゼロの行にたいする、ゼロ化された行の旧データのエラーコード付加量を計算し、
前記旧データが変化することになる部分以外はゼロの行にたいする、ゼロ化された行の新データのエラーコード付加量を計算し、前記旧データが変化することになる部分の前記旧データを前記新データに置換し、
前記ゼロ化された行の旧データのエラーコード付加量と、前記旧データのエラーコードと、前記ゼロ化された行の新データのエラーコード付加量との間において、排他的 OR 演算を実施することにより、
前記調整された訂正コードを計算することを特徴とする記憶装置。 - 前記コントローラ手段がさらに、
前記旧データを有する行が正しく読み取られたか否かを判定し、
エラーが生じた場合には、エラーのある前記行による前記付加量を除去し、訂正された前記行による前記付加量を加算する
ことを特徴とする請求項2に記載の記憶装置。 - 前記コントローラ手段がさらに、
前記旧データが正しく読み取られたか否かを判定し、
エラーが生じた場合には、エラーのある前記データによる前記付加量を除去し、訂正された前記データによる前記付加量を加算する
ことを特徴とする請求項2に記載の記憶装置。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US08/744,717 US5901157A (en) | 1996-10-29 | 1996-10-29 | Method and apparatus for reducing the access time for storage systems |
US744-717 | 1996-10-29 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH10222387A JPH10222387A (ja) | 1998-08-21 |
JP3993921B2 true JP3993921B2 (ja) | 2007-10-17 |
Family
ID=24993726
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP28559697A Expired - Fee Related JP3993921B2 (ja) | 1996-10-29 | 1997-10-17 | 記憶装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US5901157A (ja) |
JP (1) | JP3993921B2 (ja) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3896206B2 (ja) | 1997-12-16 | 2007-03-22 | インターナショナル・ビジネス・マシーンズ・コーポレーション | Eccブロック構造を使用する記憶装置のための符号化方法及びシステム |
JP4066289B2 (ja) * | 1999-01-08 | 2008-03-26 | パイオニア株式会社 | 情報記録方法 |
KR20010081335A (ko) * | 2000-02-12 | 2001-08-29 | 구자홍 | 차세대 고밀도 기록 매체를 위한 디지털 데이터의 오류정정 부호화 방법 |
US6691203B1 (en) | 2000-08-30 | 2004-02-10 | Mosel Vitelic Corporation | Integrated controller to process both optical reads and optical writes of multiple optical media |
US6765739B2 (en) | 2002-03-18 | 2004-07-20 | Hewlett-Packard Development Company, L.P. | Method and apparatus for discouraging duplication of digital data |
EP2672387B1 (en) * | 2012-06-04 | 2018-08-01 | Amplidata NV | A distributed object storage system |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5283791A (en) * | 1988-08-02 | 1994-02-01 | Cray Research Systems, Inc. | Error recovery method and apparatus for high performance disk drives |
US5134619A (en) * | 1990-04-06 | 1992-07-28 | Sf2 Corporation | Failure-tolerant mass storage system |
-
1996
- 1996-10-29 US US08/744,717 patent/US5901157A/en not_active Expired - Lifetime
-
1997
- 1997-10-17 JP JP28559697A patent/JP3993921B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH10222387A (ja) | 1998-08-21 |
US5901157A (en) | 1999-05-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6661591B1 (en) | Disk drive employing sector-reconstruction-interleave sectors each storing redundancy data generated in response to an interleave of data sectors | |
US6687850B1 (en) | Disk drive for storing sector-reconstruction sectors and for storing a sector-reconstruction status in sectors distributed around a disk | |
JP4709485B2 (ja) | オンドライブ統合化セクタ・フォーマットraidの誤り訂正符号システムおよび方法 | |
US6367047B1 (en) | Multi-level error detection and correction technique for data storage recording device | |
US4949342A (en) | Code error detecting method | |
US9229813B2 (en) | Error correction with on-demand parity sectors in magnetic data storage devices | |
US7559009B1 (en) | System and method for performing parity checks in disk storage systems | |
US5737344A (en) | Digital data storage with increased robustness against data loss | |
US20030147167A1 (en) | Multiple level (ML), integrated sector format (ISF), error correction code (ECC) encoding and decoding processes for data storage or communication devices and systems | |
EP1566807A2 (en) | Recording and/or reproducing method, recording and/or reproducing apparatus, and computer readable recording medium storing program for performing the method | |
KR910005557B1 (ko) | 자기 테이프상에 디지탈 정보를 엔코딩하고 저장하기 위한 시스템 및 방법 | |
US20050154959A1 (en) | Method and apparatus for embedding an additional layer of error correction into an error correcting code | |
WO2000023998A1 (en) | Rewrite method and apparatus for data storage device | |
JP3993921B2 (ja) | 記憶装置 | |
US7131052B2 (en) | Algebraic decoder and method for correcting an arbitrary mixture of burst and random errors | |
JPH11297000A (ja) | データ生成方法及びデータ生成装置 | |
JPH117736A (ja) | 誤り検知方法および装置、復号化装置、ならびに、記録再生装置 | |
JP3314389B2 (ja) | データ記録方法および記録媒体 | |
JP3279501B2 (ja) | 大容量記憶装置用コントローラの誤り訂正及び誤り検出方法 | |
KR100215807B1 (ko) | 디지탈 신호의 에러 정정 장치 및 방법 | |
JPH0535416A (ja) | フアイル制御装置 | |
JP3838195B2 (ja) | 情報記録装置 | |
JP3321143B2 (ja) | 円盤状記録媒体記録装置及び円盤状記録媒体記録方法 | |
JP3321144B2 (ja) | 円盤状記録媒体記録装置及び円盤状記録媒体記録方法 | |
JP3061799B2 (ja) | 円盤状記録媒体記録装置及び円盤状記録媒体記録方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20041015 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20041015 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060928 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20061010 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20061222 |
|
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: 20070703 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070730 |
|
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: 20100803 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110803 Year of fee payment: 4 |
|
LAPS | Cancellation because of no payment of annual fees |