JPH11185399A - Eccブロック構造を使用する記憶装置のための符号化方法及びシステム - Google Patents

Eccブロック構造を使用する記憶装置のための符号化方法及びシステム

Info

Publication number
JPH11185399A
JPH11185399A JP9346438A JP34643897A JPH11185399A JP H11185399 A JPH11185399 A JP H11185399A JP 9346438 A JP9346438 A JP 9346438A JP 34643897 A JP34643897 A JP 34643897A JP H11185399 A JPH11185399 A JP H11185399A
Authority
JP
Japan
Prior art keywords
data
ecc block
byte
section
updated
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
Application number
JP9346438A
Other languages
English (en)
Other versions
JP3896206B2 (ja
Inventor
Masayuki Demura
雅之 出村
Tetsuya Tamura
哲也 田村
Akira Sasaki
昭 佐々木
Hiroshi Itagaki
浩 板垣
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Priority to JP34643897A priority Critical patent/JP3896206B2/ja
Priority to US09/216,014 priority patent/US6357030B1/en
Publication of JPH11185399A publication Critical patent/JPH11185399A/ja
Application granted granted Critical
Publication of JP3896206B2 publication Critical patent/JP3896206B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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
    • H03M13/1515Reed-Solomon codes
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • G11B20/18Error detection or correction; Testing, e.g. of drop-outs
    • G11B20/1806Pulse code modulation systems for audio signals
    • G11B20/1813Pulse code modulation systems for audio signals by adding special bits or symbols to the coded information
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2903Methods and arrangements specifically for encoding, e.g. parallel encoding of a plurality of constituent codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/29Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
    • H03M13/2906Coding, 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/2909Product codes

Abstract

(57)【要約】 【課題】リード・ソロモン符号のような線形符号を有す
るECCブロック構造を採用する記憶装置への書込みの
性能を高めるために、ECCブロックの符号化を効率的
に行う方法を提供する。 【解決手段】リード・ソロモン符号のような線形符号に
よって生成されたPO部q1を有するECCブロックF
1を構成する複数のデータセクタのうち一部のデータセ
クタのデータf1をデータf2で更新して更新後のPO
部q2を有するECCブロックF2を求める際に、更新
前のECCブロックF1と更新後のECCブロックF2
のソースデータ部の排他的論理和のECCブロックF1
+F2を取り、更新されるデータf1と更新データf2
の排他的論理和f1+f2を求める。更新されないデー
タセクタの排他的論理和は0となる。次に、排他的論理
和のECCブロックF1+F2について符号化すると、
リード・ソロモン符号の線形性により、排他的論理和q
1+q2の形のPO部が得られる。q1+q2とq1の
排他的論理和により、q2を求めることができる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、記憶装置のデータの書
込みの際の効率的な符号化方法及びシステムに関し、特
にリード・ソロモン符号のような線形符号によって生成
されたECC符号を有するECCブロック構造を有する
DVDなどの技術分野における効率的なソースデータの
符号化(エンコード)に関する発明である。より具体的
にはデータセクタ単位で書き込む場合に、リード・ソロ
モン符号のような線形符号の線形性を用い、更新される
データセクタのみを考慮してECCブロック全体の符号
化を高速化し、DVDなどの記憶装置への書込みの効率
を高める方法及びシステムに関する発明である。
【0002】
【従来の技術】マルチメディアの技術分野では、動画で
ある映像、文字音声などの大容量の情報を提供するのに
適する記憶装置が要求される。このマルチメディア関連
の技術ニーズに応えるため、記憶装置としてDVD(例
えば、DVD−ROMは片面1層で4.7GB、DVD
−RAMは2.6GB)が提供されている。DVDのデ
ータ構造は、大容量のデータを転送できるように図1の
右側に示すECCブロック構造を採用している。ECC
ブロック構造には、大きさ2064Bのデータセクタの
16個分を含む。各データセクタの構造は、図2に示さ
れる。ホスト例えばPCなどから書き込まれたソースデ
ータは2KB単位に分けられて、そのおのおのにIDの
4B, IED (IDのエラー検出符号)の2B, RSV
(リザーブ)の6B, EDC (エラー検出符号)の4
B、合計で16Bが付加され、2048+16= 206
4B = 172B×12行のデータ構造が形成される。
【0003】DVDなどの記憶装置では、ディスクへの
直接の書き込みは、16のデータセクタを一つの固まり
として行われる。従って、エラー訂正符号(ECC)の
計算は、32KB(16×2KB)単位で行われる。エ
ラー訂正符号としては、リード・ソロモン符号のような
線形符号を用いた積符号が採用される。リード・ソロモ
ン符号を用いた積符号は、データに対して冗長度は約1
3%であり、大きな欠陥でもデータのエラーを訂正する
ことが可能である。リード・ソロモン符号を用いた積符
号化は、周知であるので、簡単に説明すると、ECCブ
ロックの積符号化のしかたは、まず縦方向(列方向)の
バイト列ごとに符号化を行い、得られた16BのECC
符号を関連する列の後につけ、そのECC符号をPO
(Parity of Outer:外符号)部と呼
ぶ。次に、ECCブロックの横方向(行方向)に対して
バイト行ごとに符号化を行い、得られた10BのECC
符号を関連する行の後につけ、そのECC符号をPI
(Parity of Inner:内符号)部と呼
ぶ。なお、列方向の符号化と行方向の符号化の順番を逆
にしてもその結果は同じである。
【0004】ECCブロックをディスクに書き込むとき
は、周知のように1つのECCブロックを16の物理セ
クタに変換する。図3に示すように、ECCブロックを
データセクタの部分及びPI部からなる12行とPO部
の1行とを抜き出し組合せた(図3の+の印)サブブロ
ックが、1つの物理セクタのベースとなる。ここでEC
Cブロックの12行+1行を組合せ、サブブロック(す
なわち物理セクタ)を形成することをインターリーブす
るという。インターリーブによって得られたサブブロッ
クを26等分し、頭に2バイト分のシンクコード(S
Y)を付加することによって2418Bの物理セクタが
得られる。そして、このようにして得られる物理セクタ
に必要な変調処理を行ったものを16回順次ディスクに
書込むことによって、32KBの大きさのECCブロッ
クの書込みが行われる。
【0005】HDD、相変化型光ディスク(例えばP
D)、MOのような記憶装置にはこのような積符号化さ
れて拘束長が長いECCブロック構造は、採用されてい
ない。そのためPC側からソースデータを書き込んだと
しても、そのまま符号化するかあるいは幾つかに分割し
て符号化するので、符号化にかかる手間は小さい。しか
し、DVDでは特有の問題が生じる。次にこれについて
説明する。
【0006】図5を参照して、ECCブロック構造を採
用するDVDなどのディスク記憶装置において、ECC
ブロックの1つのデータセクタの2KBデータを書換え
る場合の従来の書込みシーケンス(1)〜(6)を説明
する。 (1)符号化・復号ブロック20は、ホストから送られ
た2KBのデータを、第1のバッファ21に格納する。
同時に、ディスク側からこの2KBデータが書き込まれ
るべきECCブロックを読取り、第1のバッファ21に
格納する。 (2)読み出したECCブロックにエラーがあれば、復
号器24によりエラー訂正を行う。 (3)第1のバッファ21において、ホストからの2K
Bのデータにより第1のバッファ21に格納されたEC
Cブロックの対応するデータセクタが書換えられる。書
換えられたECCブロックを、第2のバッファ22に転
送する。 (4)第2のバッファ22から変更されたECCブロッ
クのソースデータを順次符号化器23に送り、そのEC
CブロックのPO部の計算を行う。 (5)PO部の計算結果を第1のバッファ21に送って
PO部を書換え、更新された完全なECCブロックを第
1のバッファ21に格納する。 (6)このECCブロックをディスク側に書き込む。 なお、実際には、(1)ではディスクから物理セクタの
データが読取られ、第1のバッファ21でECCブロッ
クデータに変換され、(6)ではECCブロックデータ
が物理セクタデータに変換されてディスクに書込まれ
る。
【0007】この様な従来の書込みシーケンスでは、
(4)で列の全バイトを逐一符号化器23に転送しなけ
らばならない。(5)で全列についてPO部を計算し、
全てのPO部の値を得ないと書込みに入れない。つま
り、DVDではECCブロック構造を採用している関係
上、PC側から1データセクタ分の2KBのソースデー
タの書き込みを行う場合でも、32KBの大きさのEC
Cブロック全体に関してリード・ソロモン符号を用いた
ECC符号を計算しなおさなければならない。そのた
め、2KBのデータの書き込みにもかかわらず、ECC
ブロックの符号化に長い時間がかかり、書き込み効率が
低下する。1つのECCブロックの読取り後、ディスク
が1回転してディスク上の同じECCブロックの先頭に
戻るまでの時間内にPO部の計算処理が終了しない場合
は、更にもう1回転するのを待たなければならないとい
った事態が生じ得る。特にディスク半径が小さいにトラ
ックでは、CLV(Constant Linear
Velocity)方式(例えば2倍速の場合、DVD
では1周するのに12.5ms(内周)〜29.6ms
(外周)の時間がかかる)の場合に、書込みまたは更新
性能の低下はかなり大きい。
【0008】
【発明が解決しようとする課題】したがって、本発明の
目的は、ECCブロック構造を採用する記憶装置への書
込みの性能を高めるために、ECCブロックの符号化を
効率的に行う方法、そのシステム及びその方法を適用し
た書換え可能DVDシステムを提供することである。本
発明の他の目的は、リード・ソロモン符号のような線形
符号の線形性を利用して、ECCに関わる処理が完了す
る前にディスクに書き出せる新しい方法を実現し書き込
み時の性能の向上を図ることである。
【0009】
【課題を解決するための手段】本発明は、リード・ソロ
モン符号のような線形符号の線形性を利用することによ
り、データ書込み時の処理を大幅に効率化できるという
ことを見出したものである。上記ステップ(4)におい
てECCブロックの全データ(172列)を符号化して
ECCのPO部を生成することはしない。実質的に更新
された1または複数のデータセクタのみを考慮してPO
部の生成を実行する。
【0010】本発明は、リード・ソロモン符号のような
線形符号によって生成されたECC符号PO部q1を有
するECCブロックF1を構成する複数のデータセクタ
のうち一部のデータセクタのデータf1をデータf2で
更新する際に、更新後のECCブロックF2のPO部q
2を効率的に符号化する方法である。この方法は、上記
更新前のECCブロックF1と上記更新後のF2のソー
スデータ部のXORを表すECCブロックF1+F2
(以下「+」は、XOR演算を意味する。)を想定する
ステップであって、更新される上記一部のデータセクタ
のデータは、データf1とデータf2とのXOR演算f
1+f2により与えられ、更新されないデータセクタの
データは0とする、ECCブロックF1+F2を想定す
るステップと、更新された上記一部のデータセクタのデ
ータのf1+f2に対してはバイトごとに符号化器で符
号化するステップと、更新されない上記データセクタの
データ0に対しては、複数バイトごとに符号化器で符号
化するステップとを含む上記ECCブロックF1+F2
のPO部q1+q2を得るステップと、上記ECCブロ
ックF1+F2のPO部q1+q2に対して、更新前の
ECCブロックF1のPO部q1のXOR演算により、
更新後のECCブロックF2のPO部q2を得るステッ
プとを備える更新後のECCブロックのPO部の符号化
方法である。本発明は、さらにこの方法を適用したシス
テム、及びこの方法を書換え可能DVDシステムに応用
したものでもある。
【0011】
【発明の実施の形態】図6は、本発明を適用するDVD
記録再生システムの構成を示す。ディスク10はドライ
ブ回路12に接続されたモータ14により回転し、ディ
スク10中に記録されたデータは、光学式ピックアップ
16により読み取られる。また、ドライブ回路12は、
DVD制御ブロック17からの指令で動作する。ピック
アップ16によりディスクから読み取られた信号は、D
VD制御ブロック17に入力され、信号読取回路18で
増幅され、必要な変換がされ、符号化・復号ブロック2
0へ送られる。DVD制御ブロック17は、ディスク中
に記録されたサーボデータに基づいてドライブ回路12
を制御するためのサーボ回路19を含んでいる。
【0012】符号化・復号ブロック20はホストPCに
接続され、新たなデータがホストPCから送り込まれ
る。映像データはATAPIインタフェース(ATA
パケット・インターフェース)29を介し、音声データ
はDAC(デジタルアナログ・コンバータ)25を介
し、それぞれホストPCから符号化・復号ブロック20
に送られる。ディスクから読み取られたデータは、第1
のバッファ21に格納され、復号器24によりリアルタ
イムで誤り訂正される。復号器24は、第1のバッファ
21に格納された読取データのECCブロックのエラー
検出を、PO部を含むバイト列ごとに行い、正しいデー
タを生成する。一方、ホストPCから送られたデータ
は、第1のバッファ21にロードされる。符号化器23
は、バッファ21に送られたデータを含むECCブロッ
クの符号化を、バイト列ごとに行いPO部を生成する。
本発明の典型的な実施例として、ホストPCから1デー
タセクタの2KBのソースデータの書き込みを行うもの
とする。これは単なる例であり、2以上のデータセクタ
分のデータを書き込むことも本発明に含まれる。
【0013】本発明は、ECCブロック構造を採用する
DVDなどの記憶装置において、ソースデータが1個分
のデータセクタを書換える際に、ECC(例えばPO
部)の生成におけるリード・ソロモン符号の線形性を利
用する。具体的には、リード・ソロモン符号の線形性を
用いて、PC側から書き込まれた2KBのデータセクタ
のみを考慮してECCブロックのPO部の全体の符号化
を効率的に行う。
【0014】図7は、リード・ソロモン符号の線形性を
利用して、1つのデータセクタが書換えられた(更新さ
れた)ECCブロックの新しいPO部を得るデータフロ
ーを示している。そこでの定義は以下の通りである。 + :XOR(排他的論理和)演算 F1 :更新前のECCブロック F2 :更新後のECCブロック f1 :更新前の1つのデータセクタのデータ f2 :更新後の1つのデータセクタのデータ q1 :更新前のPO部のデータ q2 :更新後のPO部のデータ f1+f2:更新前後の1つのデータセクタのデータの
XOR演算 q1+q2:更新前後のPO部のデータのXOR演算 F1+F2:f1+f2のXOR演算後のECCブロッ
ク ただし、図7は、説明の簡略化のために、ECCブロッ
ク構造(図1)のリード・ソロモン積符号のうちPI部
は省略して示す。
【0015】更新前のECCブロックF1は、リード・
ソロモン符号を用いて既に符号化処理されている。この
符号化処理は次のように行われる。すなわち、ECCブ
ロックF1のソースデータからバイト列(192行の各
々から1バイトをとった192バイトの列)を読取り、
この192Bのデータを符号化器23に送り、所定の符
号化処理をすることにより、そのバイト列のPO部の1
6Bを得る。バイト列の符号化処理を、172バイト列
の全てについて行うことにより、16行のPO部の全て
が計算され、ECCブロックF1のPO部のq1を得る
(図7の40)。ECCブロックF1の選択されたデー
タセクタのデータf1を新しいデータf2で書換える場
合、従来は、更新されたECCブロックF2を用意し、
ECCブロックF2のソースデータの全バイト列につい
て上述の符号化処理をしてPO部のq2を求めていた。
【0016】本発明は、更新前のECCブロックF1の
ソースデータと更新後のECCブロックF2のソースデ
ータとのXOR演算をとり、得られた結果について上述
のリード・ソロモン符号化処理をしてPO部を求める
と、そのPO部にはq1+q2に相当するデータが得ら
れる(図7の50)という知見に基づくものである。q
1+q2が得られたならば、q1+q2とq1とのXO
R演算をとることにより(図7の70)q2を求めるこ
とができる(図7の60)。XOR演算は、対応するデ
ータ単位(この例ではバイト)ごとに行われる。
【0017】図7の50は、本発明の処理によって得ら
れる結果を表している。このECCブロックは、更新さ
れた1データセクタについてXOR演算f1+f2を有
する。データf1+f2は、バイト単位では全てが0と
は限らない。一方、ECCブロックF1+F2の残りの
15データセクタについては、対応するデータは変化し
ないので、全て0である。また、このECCブロックF
1+F2のソースデータ部のバイト列について上述のリ
ード・ソロモン符号化処理を施すと、PO部にはq1+
q2に対応するデータが得られる。図7の50と60の
PO部どうしを結ぶ点線70に示すように、ECCブロ
ックF1+F2のPO部q1+q2に対して既知の値q
1のXOR演算を施すことにより、更新後のECCブロ
ックF2のPO部q2を確保できる。このようにECC
ブロックF1+F2のソースデータを符号化処理すると
得られるPO部が、ECCブロックF1とF2のPO部
のq1及びq2のXOR演算となることを、リード・ソ
ロモン符号の線形性と呼ぶことにする。
【0018】本発明の処理の特徴は、早いタイミングで
更新後のECCブロックの書込みを開始できることであ
る。これは、主として、次の組合せの作用に基づく。1
つは、q1+q2が求められた段階で書込みに入ること
ができ、すべてのq2が求められるまで書込みを遅延さ
せる必要はないことである。すなわち、q1+q2が求
められたならば、(q1+q2)XOR(q1)の演算
によりPO部のバイト行ごとにq2を順次求め、1バイ
ト行のq2が求められるたびに上記のインターリーブに
より1データセクタの書込みを行うことができる。第2
には、更新されないデータセクタのXOR演算はすべて
ゼロであるから、これらのデータセクタについては実際
にXOR演算を行う必要はなく、符号化器23において
ゼロを内部発生させることによりリード・ソロモン符号
化処理を効率的に行うことができることである。したが
って、q1+q2を早く求めることができ、書込み開始
可能時間を早くすることができる。
【0019】次に図6および図8を参照して、本発明の
処理を詳細に説明する。第1のバッファ21はDRAM
からなり、第2のバッファ23は符号化器23または復
号器24との間でデータ転送を高速に行うためにSRA
Mからなる。図8に示されるように、本発明において第
2のバッファ22は、SRAMの2つのバンク26と2
7とから構成される。符号化器23は、1バイト列の1
92バイトのデータを順次入力することにより16バイ
トのPO部を生成し出力する。この1バイト列の符号化
の際、符号化器23への入力データの単位を、バイトま
たは複数バイトとすることができる。
【0020】次に、この例では、バイト入力モードとワ
ード(2バイト)入力モードとの間で切り換えることが
できる符号化器23を採用することを説明する。 図9
と図10のそれぞれは、符号化器23がバイト(8ビッ
ト)入力モードの場合とワード(16ビット)入力モー
ドの場合の符号化回路を示している。バイト入力符号化
回路では、入力を8ビットを単位として1バイト列の1
92Bを順次入力する。入力されたバイト列は、順次1
6個の乗算器の各々において図に示す各係数g0〜g15
と掛け合わされ、リード・ソロモン符号の生成多項式の
演算を実行する。そして、192B全ての入力が終了し
た時点で、16個の8ビットレジスタにPO部の16B
が生成される。ワード入力符号化回路では、入力を16
ビット(列方向の2バイト)を単位として1バイト列の
192Bを順次入力する。入力されたワード列は、順次
8個の乗算/和算器の各々において図に示す各種係数と
掛け合わされ、リード・ソロモン符号の生成多項式の演
算を実行する。そして、192B全ての入力が終了した
時点で、8個の16ビットレジスタにPO部の16B
(8×2B)が生成される。なお、バイト入力符号化回
路とワード入力符号化回路は独立に設けてもよくまた
は、8ビットレジスタを8個の16ビットレジスタに内
部的に再構成して、共通して使用してもよい。
【0021】ECCブロックの1のデータセクタを更新
する際は、先ず、ホストから更新用のデータセクタが第
1のバッファ21に送られた、またディスクからこのデ
ータセクタを含む16データセクタからなるECCブロ
ックを第1のバッファ21に読み出す。
【0022】次に、本発明の符号化処理が、XOR演算
f1+f2を確保に関して、次のように行われる。 [1]ECCブロックの書換えられる1データセクタの
新しいデータf2と元のデータf1については、XOR
演算f1+f2を、以下の手順により第2のバッファ2
2に確保する。 (a)第1のバッファ21に格納されている書換えられ
る1のデータセクタの元のデータf1の12バイト行を
バンク27に送る。 (b)第1のバッファ21に格納されている新しいデー
タf2の12バイト行を第2のバッファ22に送り、同
時にバンク27に格納されている元のデータf1の12
バイト行を読む。 (c)双方のデータのXOR演算をMPU(図示せず)
で行い、その結果f1+f2をバンク26に確保する。 [2]バンク26のデータを符号化する場合、符号化器
23はバイト入力モードにセットされる。そして、バン
ク26から1つのバイト行の1バイトを取出し、そのバ
イトを符号化器23のバイト入力とする(図9)。 [3]ECCブロックF1+F2の残りの15データセ
クタについては、データの変更はないため、180バイ
ト行の全てについて0である。このデータセクタ部の1
80バイト行に関しては、[1](a)〜(c)の処理
をする必要はない。この場合符号化器23の入力モード
を、[2]のバイト入力からワード入力に切り替え、そ
の入力のワードデータを0と見なして符号化器23内で
オールゼロのデータを発生し、符号化をワード単位(即
ち、列方向の2バイト)で行う(図10の2バイト入力
u、Cd)。符号化をワード単位で処理できるのはオー
ルゼロデータを内部発生できるからである。SRAMで
あるバンク26はアドレス方式の制限のため、列方向の
複数バイトを同時的にアクセスすることはできず、した
がってバンク26の更新されるデータセクタはバイト入
力モードで符号化される必要がある。 [4]処理[2]と[3]を全バイト列に行うことによ
り、ECCブロックF1+F2のPO部は、更新前EC
CブロックF1のPO部q1と更新後ECCブロックF
2のPO部q2のXOR演算q1+q2として与えられ
る。このPO部q1+q2の12バイト行を、第1のバ
ッファ21に確保する。 [5]ECCブロックF1+F2のPO部のXOR演算
q1+q2の1バイト行の172Bに対して、図7の点
線のように更新前ECCブロックF1のPO部q1のX
OR演算を行うと、リード・ソロモン符号の線形性によ
り、データf2で書換えられたECCブロックF2の真
のPO部q2の1行が得られる。図7の点線の処理を、
PO部の16バイト行全てに順次に行うことにより、デ
ータf2で書換えられたECCブロックF2のPO部q
2の全て(16バイト行)が確保される。更新後ECC
ブロックF2の真のPO部q2の1バイト行が得られた
段階で、そのECCブロックのソースデータの12バイ
ト行とPO部の1バイト行とを組合せて順次インターリ
ーブして、ディスク側に送ることができる。
【0023】本発明の符号化方法では、処理[3]では
符号化器23への入力を0とみなせる部分では、外から
のデータ転送スピードに依存しない。符号化器23への
入力を0とみなした部分は、実際には符号化器23への
入力を行わず、ワード単位で符号化を行う。この符号化
方法では、符号化器23をバイト入力からワード入力に
変更することによって、実質的に符号化器23の計算速
度を上げることができる。従って、ECCブロックの1
6データセクタのバイト列方向の192バイト全てに対
してバイト毎に符号化する従来のものに比べて、PO部
の1バイト行の確保を早くできる有利な効果を有する。
図3に示すECCブロックのソースデータの12バイト
行とPO部の1バイト行とを組合せてインターリーブを
早期に行い、ディスク側の書込み性能が向上する。な
お、この例では、入力を0とみなせる部分をワード(2
バイト)単位で処理するものとして説明したが、ワード
より大きい単位で処理することにより、一層ECCブロ
ックの符号化の計算速度を高めることができる。また、
符号化器23は、複数のバイト列を並列して符号化でき
るように、同じものを複数個設けることもできる。
【0024】
【実施例】実際にかかる処理時間は、DVD−RAMの
オプティカル・ディスク・コントローラのデータフロー
・アーキテクチャで使用される値にもとづいて、上記の
処理[1]〜[5]について表1のように計算される(表
1)。 [C/B] 又は [行][列] [1/B] [回] −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− [1]12 ×172×1/32”×2 ×1.34[μS/C]=173 [2]12 ×172×1 ×50[nS] =103 [3]180×172×1 ×1/2×50[nS] =387 [4] 172×1 ×1.5[μS] =258 [5]16 ×172×1/2” ×2 ×0.84[μS/C]=2312 −−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−− 合計3231[μS] 「C」は、サイクルを意味し、”の所の数値の単位は[C/B] 表1 [1]では、ECCブロックの更新される1データセク
タの元データf1を、第1のバッファー21(DRA
M)から第2のバッファー22(SRAM)のバンク2
7へ転送する時間は、DRAMバスサイクルを1.34
μSとして、そのサイクル中で符号化のために32B転
送(1B当たり1/32サイクルを占める)すると、1
2×172×1/32[サイクル/B]×1.34=8
6.4μSとなる。ホストから第1のバッファ21に送
られた新データf2を読み出し、第2のバッファー22
のバンク27から読み出したデータf1とXOR演算を
行いながら、第2のバッファー22のバンク26へ転送
する時間も同様に、DRAMバスサイクルを1.34μ
Sとし、そのサイクル中で符号化のために32B転送
(1B当たり1/32サイクルを占める)すると、12
×172×1/32[サイクル/B]×1.34=8
6.4μSとなる。表1の[1]は、両者の合計時間を
示している。[2]は、第2のバッファー22(SRA
M)へのアクセスタイムを50nSとした場合、第2の
バッファー(バンク26)の12バイト行分のデータを
1アクセスで1Bを読み出して、バイト入力符号化器2
3に転送する時間を示している。[3]は、符号化器2
3の動作クロックを50nSとした場合、更新されなか
ったデータ180Bをゼロと見なし、そのオール0に対
して符号化器23をバイト入力からワード入力(2バイ
ト入力)に切り替え、内部的に符号化する時間を示して
いる。[2]と[3]の処理により、1のデータセクタ
f1+f2を含むECCブロックF1+F2に対しての
PO部の計算が終了し、q1+q2が確保される。PO
部q1+q2に対して、第1のバッファー21にある元
PO部q1とのXOR演算を行い、第1のバッファー2
1に書き戻すことができるので、[3]の処理までで実
質的に172バイト列のPO部q2の準備が完了したも
のと見なすことができる。[4]は、MPUが符号化器
23の出力からPO部q1+q2の1バイト列の16B
をワーキングエリアに読み出す時間を1.5μSとした
場合、全172バイト列のPO部を読み出す時間を示し
ている。[5]は、MPUが元のECCブロックF1の
PO部q1を第1のバッファー21(DRAM)からワ
ーキングエリアに読み出し、データf1+f2を含むE
CCブロックF1+F2のPO部q1+q2とXOR演
算を行い、真のPO部q2(図7の点線70の処理)を
第1のバッファ21に書き戻す時間の合計を示してい
る。この計算において、DRAMバスサイクルを0.8
4μS(処理[1]のDRAMバスサイクル1.34μ
Sに比べて小さいのは、MPUは処理[5]ではECC
ブロックのソースデータを第2のバッファ22(SRA
M)に転送が不要なためその分、バスサイクルを早くで
きるからである)として、MPUはそのサイクル中で2
B単位で(1B当たり1/2サイクルを占める)読み出
しまたは書込みできるとしている。真のPO部q2は、
バイト行ごとに生成され、最終的に16バイト行全てが
確保される。この1バイト行172BのPO部を第1の
バッファ21のDRAM格納し、ソースデータ部の12
バイト行とを組合せて図3のようにインターリーブす
る。
【0025】図4に示すように、1ECCブロックを読
み取ってから、更新されたECCブロックF2のPO部
の計算終了時までに要する時間は、DRAMバスサイク
ルなどの条件を上記計算と同じにした場合に、従来の符
号化方法においては約4501μSであった。これに対
して、本発明の符号化方法の実施例の処理[1]〜
[5]の時間合計は3231μSであり、従来の方法と
比べて一見大きな差が無い様にみえる。しかしながら、
本発明の符号化方法では、書き込みをスタートできるタ
イミングが速いことから本発明の方が有利である。なぜ
なら本発明では[4]の処理が終わった時点で既に全て
のECCのPO部q1+q2の計算が終了していて転送
をスタートすることができるからである。[4]の処理
において与えられたECCブロックF1+F2のPO部
q1+q2の1バイト行に対して、[5]の処理を介し
て更新前ECCブロックF1のPO部q1のバイト行の
XOR演算を行うと、更新後ECCブロックF2のPO
部q2の1バイト行を得る。このPO部q2の1バイト
行が得られた時点で、それとソースデータの12バイト
行とをインターリーブして(図3を参照)ディスク側に
送ることが可能となる。具体的に、本発明の方法のEC
Cブロックの書き込み開始可能時間は、ECCブロック
の読取り後(PO部の処理を開始してから)約919μ
S([1]〜[4]の処理時間の合計)である。従来の
方法では、PO部の16バイト行全てがそろう4501
μSを経ないと、更新後のECCブロックの書込みを開
始できないのと比べて本発明の方法は書込み性能が向上
している。
【0026】CLV(Constant Linear
Velocity)方式の2倍速の場合のDVD技術
では、ディスク半径が小さくなる程回転速度だ増加する
(1周するのに29.6ms(外周)〜12.5ms
(内周)の時間がかかる)。そのため、ディスクの内側
に行くほど、更新時間に使用できる時間が短くなる。ト
ラックの半径が臨界半径、すなわち、ディスクが一回転
しECCブロックの先頭に再び戻るまでの時間内に所要
の更新処理を完了して書込み可能状態に入ることができ
るような最小半径より小さくなると、ディスクが1回転
する間に更新処理を完了できず、ディスクがさらに1回
転するのを待たなければならなくなる。図4の外側のト
ラックは、従来の方法における臨界半径を示している。
本発明の場合、PO部の準備に要する919μSの後に
早いタイミングで書込みを開始できるので、図4の内側
のトラックで示されるように、臨界半径を減少させるこ
とができる。従来の方法を用いて内側のトラックのEC
Cブロックを書換える場合、書込み可能になるのは、E
CCブロックに入ってからであり、もう1回転するのを
待たなければならない。
【0027】本発明の場合に、データセクタの更新によ
るECCブロックの書込みによる周回遅れの生ずる半径
は、以下の計算によりCLV方式において相対的に16
%減らすことができる。本発明では、従来のPO部の処
理時間4501μsから、本発明の書込みの開始時間
([1]〜[4])919μsを差し引くことにより、
これまでに比べて約3.58ms速く書き込みを実行で
きることになる。インターリーブすることができる時間
が早くなったことにより、一周遅れなしに書き込みがで
きる半径領域は、全半径に対して 3.58ms/(29.6ms−12.5ms)=約2
1% 増大することになる。実施例はリード・ソロモン符号を
用いたECCブロックに関して説明されたが、本発明は
同様の線形性を有する他の線形符号、例えば、ハミング
符号、BHC符号、ファイア符号を用いたECCブロッ
クにも適用可能である。
【0028】
【発明の効果】本発明は、ECCブロックを有する記憶
装置などにおいて、リード・ソロモン符号のような線形
符号の線形性を用いてECCに関わる処理が完了する前
にディスクに書き出せる新しい符号化の処理方法を実現
し書き込み時の性能の向上を図ることができる。
【図面の簡単な説明】
【図1】DVDで使用するECCブロックの構造を示す
図である。
【図2】DVDで使用するデータセクタの構造を示す図
である。
【図3】ECCブロックをインターリーブして与えられ
た物理セクタの構造を示す図である。
【図4】CLV方式のディスク上のECCブロックの書
込み開始可能時間と、従来の方法に比べて本発明の方法
が、ディスクの1回転でECCブロックを書込み開始可
能となる半径が減少すること、を示す図である。
【図5】ECCブロックの書換える流れを、図6の構成
要素の1つの符号・復号化ブロック20で示した図であ
る。
【図6】本発明の符号化方法に適用した書換え可能なD
VD記録再生システムの構成を示す図である。
【図7】リード・ソロモン符号の線形性を用いた本発明
の符号化方法の処理手順を示す図である。
【図8】第2のバッファを構成する2つのバンクを利用
して、更新されるデータセクタの元データと新データと
のXOR演算結果を確保する処理手順を示し図である。
【図9】符号化回路23がバイト入力モードの場合のバ
イト入力符号化回路を示す。
【図10】符号化回路23がワード入力モードの場合の
バイト入力符号化回路を示す。
【符号の説明】
10 デジタルビデオ・ディスク 12 ドライブ回路 14 モータ 16 ピックアップ 17 DVD制御ブロック 18 信号読取回路 19 サーボ回路 20 符号化・復号ブロック 21 第1のバッファ 22 第2のバッファ 23 符号化器 24 復号器 25 デジタル・アナログ・コンバータ(DA
C) 26 バンク1 27 バンク2 29 ATAPIインタフェース
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 FI H03M 13/00 H03M 13/00 (72)発明者 田村 哲也 神奈川県大和市下鶴間1623番地14 日本ア イ・ビー・エム株式会社 大和事業所内 (72)発明者 佐々木 昭 滋賀県野洲郡野洲町大字市三宅800番地 日本アイ・ビー・エム株式会社 野洲事業 所内 (72)発明者 板垣 浩 神奈川県大和市下鶴間1623番地14 日本ア イ・ビー・エム株式会社 大和事業所内

Claims (14)

    【特許請求の範囲】
  1. 【請求項1】リード・ソロモン符号のような線形符号に
    よって生成されたECC符号PO部q1を有するECC
    ブロックF1を構成する複数のデータセクタのうち一部
    のデータセクタのデータf1をデータf2で更新して更
    新後のECCブロックF2のECC符号PO部q2を求
    める方法であって、 更新前のECCブロックF1と更新後のECCブロック
    F2のソースデータ部のXOR演算を表すECCブロッ
    クF1+F2(以下「+」は、XOR演算を意味す
    る。)を想定するステップであって、更新される上記一
    部のデータセクタのデータは、データf1とデータf2
    とのXOR演算f1+f2により与えられ、更新されな
    いデータセクタのデータは0とする、ECCブロックF
    1+F2を想定するステップと、 上記ECCブロックF1+F2について符号化すること
    により、q1+q2と等価なPO部を得るステップと、 上記ECCブロックF1+F2のPO部q1+q2と上
    記ECCブロックF1のPO部q1とのXOR演算を行
    うことにより、上記ECCブロックF2のPO部q2を
    得るステップと、 とからなる更新後のECCブロックF2のPO部を得る
    方法。
  2. 【請求項2】リード・ソロモン符号のような線形符号に
    よって生成されたECC符号PO部q1を有するECC
    ブロックF1を構成する複数のデータセクタのうち一部
    のデータセクタのデータf1をデータf2で更新する際
    に、更新後のECCブロックF2のPO部q2を効率的
    に符号化する方法において、 上記更新前のECCブロックF1と上記更新後のF2の
    ソースデータ部のXORを表すECCブロックF1+F
    2を想定するステップであって、更新される上記一部の
    データセクタのデータは、データf1とデータf2との
    XOR演算f1+f2により与えられ、更新されないデ
    ータセクタのデータは0とする、ECCブロックF1+
    F2を想定するステップと、 更新された上記一部のデータセクタのデータのf1+f
    2に対してはバイトごとに符号化器で符号化するステッ
    プと、更新されない上記データセクタのデータ0に対し
    ては、複数バイトごとに符号化器で符号化するステップ
    とを含む、上記ECCブロックF1+F2のPO部q1
    +q2を得るステップと、 上記ECCブロックF1+F2のPO部q1+q2に対
    して、更新前のECCブロックF1のPO部q1のXO
    R演算により、更新後のECCブロックF2のPO部q
    2を得るステップと、 を備える更新後のECCブロックのPO部の符号化方
    法。
  3. 【請求項3】上記ECCブロックは16のデータセクタ
    で構成され、1または2のデータセクタを書換えること
    を特徴とする請求項2の方法。
  4. 【請求項4】上記複数バイトは、ワード又はダブルワー
    ドであり、更新されないデータセクタに対しては符号化
    器でデータ0を内部発生して符号化することを特徴とす
    る請求項2の方法。
  5. 【請求項5】上記データセクタは12バイト行×172
    バイト列からなり、上記ECCブロックのソースデータ
    は192バイト行×172バイト列であり、各バイト列
    に対して16BのPO部を有する請求項3の方法。
  6. 【請求項6】上記更新後のECCブロックF2のPO部
    q2を得るステップは、PO部q1+q2に対して、バ
    イト行ごとにPO部q1のXOR演算を行うことにより
    PO部q2のバイト行を確保し、 更に上記PO部q2の1バイト行が得られるたびに、該
    PO部q2の1バイト行と上記ECCブロックF2のソ
    ースデータ部の所定数のバイト行とをインターリーブす
    るステップを含む請求項2の方法。
  7. 【請求項7】上記PO部q1+q2を得るステップで
    は、上記符号化器の入力をバイトごと又は複数バイトご
    とになるように切り換えることを特徴とする請求項2又
    は請求項6の方法。
  8. 【請求項8】上記PO部q1+q2を得るステップで
    は、2つの符号化器を用い、上記ECCブロックF1+
    F2の2バイト列の符号化を並列して行うことを特徴と
    する請求項7の方法。
  9. 【請求項9】第1のバッファ、第2のバッファ、及びリ
    ード・ソロモン符号を生成する符号化器を有するシステ
    ムにおいて、ディスク側からリード・ソロモン符号によ
    って生成されたECC符号PO部を有するECCブロッ
    クが上記第1のバッファ上に読み込まれ、上記ECCブ
    ロックを構成する複数のデータセクタのうち一部のデー
    タセクタに対して書換えを行う際に、効率的にECCブ
    ロックのPO部を符号化する方法であって、(a)新デ
    ータを第1のバッファに転送するステップと、(b)上
    記第1バッファから上記一部のデータセクタの元データ
    と上記新データを読み出して両データのXORの演算結
    果を第2のバッファに確保し、更新されないデータセク
    タについてXOR演算結果を0とみなし、書換え前後の
    ECCブロックのソースデータ部のXOR演算結果を準
    備するステップと、(c)書換え前後の上記ECCブロ
    ックのソースデータ部のXOR演算結果をバイト列方向
    ごとに上記符号器に送り、上記ソースデータ部の演算結
    果に対するPO部を確保するステップと、(d)上記ス
    テップ(c)で確保されたPO部の演算結果に対して、
    更新前の上記ECCブロックのPO部のXOR演算を行
    い、更新後の上記ECCブロックのPO部を生成するス
    テップとを備え、 上記ステップ(c)は、書換え前後のECCブロックの
    ソースデータ部のXOR演算結果のうち更新される上記
    データセクタに関しては上記第2のバッファから上記X
    OR演算結果を列方向にバイトごとに符号化器に送り、
    書換え前後のECCブロックのソースデータ部のXOR
    演算結果のうち更新されない上記データセクタに関して
    は0とみなし、複数バイト単位で符号化を行うことを特
    徴とする、 ECCブロックのリード・ソロモン符号を符号化する方
    法。
  10. 【請求項10】上記ステップ(d)でPO部の1バイト
    行が生成されるごとに、更新後の上記ECCブロックの
    ソースデータ部の選択された部分と上記PO部の1バイ
    ト行とをインターリーブしてディスク側への書込みを順
    次行う書込みステップを含むことを特徴とする請求項9
    の方法。
  11. 【請求項11】第1のバッファ、第2のバッファ、及び
    リード・ソロモン符号を生成する符号化器を有するシス
    テムにおいて、ディスク側からリード・ソロモン符号に
    よって生成されたECC符号PO部を有するECCブロ
    ックが上記第1のバッファ上に読み込まれ、上記ECC
    ブロックを構成する複数のデータセクタのうち一部のデ
    ータセクタに対して書換えを行う際に、効率的にECC
    ブロックのPO部を符号化するシステムであって、
    (a)新データを第1のバッファに転送する手段と、
    (b)上記第1バッファから上記一部のデータセクタの
    元データと上記新データを読み出して両データのXOR
    の演算結果を第2のバッファに確保し、更新されないデ
    ータセクタについてXOR演算結果を0とみなし、書換
    え前後のECCブロックのソースデータ部のXOR演算
    結果を準備する手段と、(c)書換え前後の上記ECC
    ブロックのソースデータ部のXOR演算結果をバイト列
    方向ごとに上記符号器に送り、上記ソースデータ部の演
    算結果に対するPO部を確保する手段と、(d)上記手
    段(c)で確保されたPO部の演算結果に対して、更新
    前の上記ECCブロックのPO部のXOR演算を行い、
    更新後の上記ECCブロックのPO部を生成する手段と
    を備え、 上記手段(c)は、書換え前後のECCブロックのソー
    スデータ部のXOR演算結果のうち更新される上記デー
    タセクタに関しては上記第2のバッファから上記XOR
    演算結果を列方向にバイトごとに符号化器に送り、書換
    え前後のECCブロックのソースデータ部のXOR演算
    結果うち更新されない上記データセクタに関しては0と
    みなし、複数バイト単位で符号化を行うことを特徴とす
    る、 ECCブロックのリード・ソロモン符号を符号化するシ
    ステム。
  12. 【請求項12】上記手段(d)でPO部の1バイト行が
    生成されるごとに、更新後の上記ECCブロックのソー
    スデータ部の選択された部分と上記PO部の1バイト行
    とをインターリーブしてディスク側への書込みを順次行
    う書込み手段を含むことを特徴とする請求項11のシス
    テム。
  13. 【請求項13】DVDに記録されたデータを書換え可能
    なDVD再生システムであって、 上記DVDを回転させるモータと、 上記DVDに記録されたデータを光で読み取り、またデ
    ータを光で書き込む、光学式ピックアップと、 上記モータ及びピックアップを動作させる、ドライブ手
    段と、 上記読取りデータを有するECCブロックの誤りを復号
    により訂正しする復号器と、更新された上記ECCブロ
    ックのリード・ソロモン符号を生成する符号化器とを含
    む、符号化・復号手段と上記読取りデータを上記符号化
    ・復号手段へ送信し、上記符号化・復号手段から書き込
    みデータを受信し、上記読取り又は書込み動作に基づき
    上記ドライブ手段へサーボ動作指令を発する、DVD制
    御手段とを具備しており、 上記符号化・復号手段は、更に、更新されるECCブロ
    ックのPO部を生成するために使用する第1のバッファ
    と第2のバッファとを具備し、(a)新データを上記第
    1のバッファに転送する手段と、(b)上記第1バッフ
    ァから1部のデータセクタの元データと上記新データを
    読み出して両データのXORの演算結果を第2のバッフ
    ァに確保し、残りのデータセクタについてXOR演算結
    果を0とみなし、書換え前後のECCブロックのソース
    データ部のXOR演算結果を準備する手段と、(c)書
    換え前後の上記ECCブロックのソースデータ部のXO
    R演算結果をバイト列方向ごとに上記符号器に送り、上
    記ソースデータ部の演算結果に対するPO部を確保する
    手段と、(d)上記手段(c)で確保されたPO部の演
    算結果に対して、更新前の上記ECCブロックのPO部
    のXOR演算を行い、更新後の上記ECCブロックのP
    O部を生成する手段とを備え、 上記手段(c)は、書換え前後のECCブロックのソー
    スデータ部のXOR演算結果のうち更新される上記デー
    タセクタに関しては上記第2のバッファから上記XOR
    演算結果を列方向にバイトごとに符号化器に送り、書換
    え前後のECCブロックのソースデータ部のXOR演算
    結果うち更新されない上記データセクタに関しては0と
    みなし、複数バイト単位で符号化を行うことを特徴とす
    る、 書換え可能なDVD再生システム。
  14. 【請求項14】上記手段(d)でPO部の1バイト行が
    生成されるごとに、上記更新後のECCブロックのソー
    スデータ部の選択された部分と上記PO部の1バイト行
    とをインターリーブしてディスク側への書込みを行う書
    込み手段を含むことを特徴とする請求項13の書換え可
    能なDVD再生システム。
JP34643897A 1997-12-16 1997-12-16 Eccブロック構造を使用する記憶装置のための符号化方法及びシステム Expired - Fee Related JP3896206B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP34643897A JP3896206B2 (ja) 1997-12-16 1997-12-16 Eccブロック構造を使用する記憶装置のための符号化方法及びシステム
US09/216,014 US6357030B1 (en) 1997-12-16 1998-12-16 ECC block format for storage device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP34643897A JP3896206B2 (ja) 1997-12-16 1997-12-16 Eccブロック構造を使用する記憶装置のための符号化方法及びシステム

Publications (2)

Publication Number Publication Date
JPH11185399A true JPH11185399A (ja) 1999-07-09
JP3896206B2 JP3896206B2 (ja) 2007-03-22

Family

ID=18383433

Family Applications (1)

Application Number Title Priority Date Filing Date
JP34643897A Expired - Fee Related JP3896206B2 (ja) 1997-12-16 1997-12-16 Eccブロック構造を使用する記憶装置のための符号化方法及びシステム

Country Status (2)

Country Link
US (1) US6357030B1 (ja)
JP (1) JP3896206B2 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1134663A3 (en) * 2000-03-17 2004-04-07 SANYO ELECTRIC Co., Ltd. Write cache circuit, recording apparatus with write cache circuit, and write cache method
US7409627B2 (en) 2002-05-03 2008-08-05 Electronics And Telecommunications Research Institute Method for transmitting and receiving variable length packets based on forward error correction (FEC) coding
JP2009104785A (ja) * 2009-02-16 2009-05-14 Victor Co Of Japan Ltd 情報記録媒体、情報記録媒体再生装置、情報記録媒体再生方法、情報記録媒体記録装置、情報記録媒体記録方法
JP2009110659A (ja) * 2009-01-23 2009-05-21 Victor Co Of Japan Ltd 情報記録媒体、情報記録媒体再生装置、情報記録媒体再生方法、情報記録媒体記録装置、情報記録媒体記録方法
JP2009538050A (ja) * 2006-05-18 2009-10-29 モトローラ・インコーポレイテッド 無線通信ネットワークにおける符号語上での情報の符号化
JP2017085254A (ja) * 2015-10-23 2017-05-18 ファナック株式会社 通信システム

Families Citing this family (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000242440A (ja) * 1999-02-25 2000-09-08 Alps Electric Co Ltd ディスク装置
US6662335B1 (en) * 2000-01-25 2003-12-09 Mediatek Inc. Method and apparatus for accessing DVD data
US6842411B2 (en) * 1999-12-22 2005-01-11 Lg Electronics, Inc. Optical disc driver and data recording method therefor
US6601216B1 (en) * 2000-03-31 2003-07-29 Microsoft Corporation Differential cyclic redundancy check
US6631172B1 (en) * 2000-05-01 2003-10-07 Lucent Technologies Inc. Efficient list decoding of Reed-Solomon codes for message recovery in the presence of high noise levels
TW468158B (en) * 2000-06-16 2001-12-11 Ali Corp Disc decoding method and system
JP2002074862A (ja) * 2000-08-25 2002-03-15 Toshiba Corp データ処理方法及び装置及び記録媒体及び再生方法及び装置
AU2002221006B2 (en) * 2000-11-27 2007-10-18 Rovi Europe Limited A copy protected DVD disc and method for producing and validating same
US8656246B2 (en) * 2001-04-16 2014-02-18 Qualcomm Incorporated Method and an apparatus for use of codes in multicast transmission
US6910174B2 (en) * 2001-06-01 2005-06-21 Dphi Acquisitions, Inc. Error correction code block format
US6883131B2 (en) * 2001-09-28 2005-04-19 Sun Microsystems, Inc. XOR processing incorporating error correction code data protection
US7073117B1 (en) * 2002-02-21 2006-07-04 Ciena Corporation Method and apparatus for generating bit errors in a forward error correction (FEC) system to estimate power dissipation characteristics of the system
JP4132934B2 (ja) * 2002-04-12 2008-08-13 株式会社ソニー・ディスクアンドデジタルソリューションズ 再生専用光記録媒体および光記録方法
JP2006517048A (ja) * 2003-01-21 2006-07-13 エルジー エレクトロニクス インコーポレーテッド エラー訂正ブロックをエンコーディング及びデコーディングする方法
CN100433169C (zh) * 2003-06-13 2008-11-12 联发科技股份有限公司 线性区段码修正系统与方法
US7996645B2 (en) * 2003-09-26 2011-08-09 Hitachi Global Storage Technologies Netherlands B.V. Log-structured file system for disk drives with shingled writing
US7490212B2 (en) * 2003-09-29 2009-02-10 Hitachi Global Storage Technologies Netherlands B.V. System and method for writing data to dedicated bands of a hard disk drive
DE102004036383B4 (de) * 2004-07-27 2006-06-14 Siemens Ag Codier-und Decodierverfahren , sowie Codier- und Decodiervorrichtungen
US7861141B2 (en) * 2005-10-21 2010-12-28 Mediatek Inc. Method and device for error analysis of optical disc
US8031680B2 (en) * 2006-05-18 2011-10-04 Motorola Mobility, Inc. Communicating non-scheduling information in wireless networks
JP2007317271A (ja) * 2006-05-24 2007-12-06 Hitachi Global Storage Technologies Netherlands Bv データ記憶装置及びそのリード処理におけるエラー処理方法
CN100583277C (zh) * 2007-02-16 2010-01-20 联发科技股份有限公司 光学储存装置及其存储装置管理方法
US8209577B2 (en) * 2007-12-20 2012-06-26 Microsoft Corporation Optimizing XOR-based codes
US8359514B2 (en) * 2008-08-15 2013-01-22 Micron Technology, Inc. Data and error correction code mixing device and method
US8307258B2 (en) * 2009-05-18 2012-11-06 Fusion-10, Inc Apparatus, system, and method for reconfiguring an array to operate with less storage elements
US8392754B2 (en) 2010-10-11 2013-03-05 International Business Machines Corporation Disaster recovery production takeover
US8839062B2 (en) 2012-01-11 2014-09-16 International Business Machines Corporation Incremental modification of an error detection code background of the invention
US9104591B2 (en) 2012-12-11 2015-08-11 Sandisk Technologies Inc. Data recovery on cluster failures and ECC enhancements with code word interleaving
US9798620B2 (en) 2014-02-06 2017-10-24 Sandisk Technologies Llc Systems and methods for non-blocking solid-state memory
US10055267B2 (en) 2015-03-04 2018-08-21 Sandisk Technologies Llc Block management scheme to handle cluster failures in non-volatile memory
US10079612B1 (en) 2017-03-15 2018-09-18 Alibaba Group Holding Limited Distributed erasure coding pool deployed in hyperscale infrastructure

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4564945A (en) 1983-06-20 1986-01-14 Reference Technology, Inc. Error-correction code for digital data on video disc
US4633471A (en) 1983-09-19 1986-12-30 Storage Technology Partners Ii Error detection and correction in an optical storage system
US5134619A (en) * 1990-04-06 1992-07-28 Sf2 Corporation Failure-tolerant mass storage system
US5537567A (en) * 1994-03-14 1996-07-16 International Business Machines Corporation Parity block configuration in an array of storage devices
JP3661205B2 (ja) * 1994-09-09 2005-06-15 株式会社日立製作所 ディスクアレイシステムおよびディスクアレイシステムのパリティデータの生成方法
JPH08335370A (ja) * 1995-06-07 1996-12-17 Sony Corp データ記録方法及び再生方法
US5734815A (en) * 1996-08-22 1998-03-31 Emc Corporation Method and apparatus for efficient cyclical redundancy check (CRC) maintenance for sub-sector writes
US5901157A (en) 1996-10-29 1999-05-04 Hewlett-Packard Company Method and apparatus for reducing the access time for storage systems
US6012123A (en) * 1997-06-10 2000-01-04 Adaptec Inc External I/O controller system for an independent access parity disk array

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1134663A3 (en) * 2000-03-17 2004-04-07 SANYO ELECTRIC Co., Ltd. Write cache circuit, recording apparatus with write cache circuit, and write cache method
US7409627B2 (en) 2002-05-03 2008-08-05 Electronics And Telecommunications Research Institute Method for transmitting and receiving variable length packets based on forward error correction (FEC) coding
JP2009538050A (ja) * 2006-05-18 2009-10-29 モトローラ・インコーポレイテッド 無線通信ネットワークにおける符号語上での情報の符号化
JP2009110659A (ja) * 2009-01-23 2009-05-21 Victor Co Of Japan Ltd 情報記録媒体、情報記録媒体再生装置、情報記録媒体再生方法、情報記録媒体記録装置、情報記録媒体記録方法
JP2009104785A (ja) * 2009-02-16 2009-05-14 Victor Co Of Japan Ltd 情報記録媒体、情報記録媒体再生装置、情報記録媒体再生方法、情報記録媒体記録装置、情報記録媒体記録方法
JP2017085254A (ja) * 2015-10-23 2017-05-18 ファナック株式会社 通信システム
US10305634B2 (en) 2015-10-23 2019-05-28 Fanuc Corporation Communication system

Also Published As

Publication number Publication date
JP3896206B2 (ja) 2007-03-22
US6357030B1 (en) 2002-03-12

Similar Documents

Publication Publication Date Title
JP3896206B2 (ja) Eccブロック構造を使用する記憶装置のための符号化方法及びシステム
US8010879B2 (en) Error correction method and apparatus for data storage device
JP2004348824A (ja) Eccエンコード方法、eccエンコード装置
JPS63197123A (ja) エラ−訂正及びチエツク装置
US8171373B2 (en) Coding circuit for recording data on DVD disk
JPH11213574A (ja) データ記憶システム
JP2002319242A (ja) 記録方法、記録装置、伝送装置、再生方法、再生装置、受信装置、記録媒体及び伝送媒体
JPH08315515A (ja) データ記録/再生装置および方法、並びにデータ記録媒体
WO2000036595A1 (fr) Lecteur de disque a pistes multiples et son procede de production
JP2856072B2 (ja) 情報記録方法、情報再生方法および情報再生装置
TWI384463B (zh) 光儲存媒體之寫入方法及裝置
JPH11297000A (ja) データ生成方法及びデータ生成装置
JP2000323995A (ja) 誤り訂正積符号ブロックを用いるデータ処理方法及び装置及び記録媒体
JP2002319247A (ja) 光記録媒体、データ記録装置及びデータ記録方法
JP3774423B2 (ja) メモリ
JP3279501B2 (ja) 大容量記憶装置用コントローラの誤り訂正及び誤り検出方法
JPS63197122A (ja) エラ−訂正及びチエツク装置
JP4004102B2 (ja) 符号誤り訂正検出装置
JP3384402B2 (ja) 情報再生方法及び情報再生装置
KR100215807B1 (ko) 디지탈 신호의 에러 정정 장치 및 방법
JP4504591B2 (ja) 光ディスク記録方法及び記録再生装置
JP3384325B2 (ja) 情報記録方法及び再生方法
JP3995693B2 (ja) 符号誤り訂正検出装置
JPH10173546A (ja) 誤り訂正回路及びこれを用いたディスク再生装置及びcd−romドライブ
JP2845770B2 (ja) ディスクアレイ装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040423

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060516

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20060803

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20060808

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061110

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: 20061212

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20061218

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees