JP3272308B2 - 誤り訂正システム、誤り訂正方法および誤り訂正機能を有するデータ記憶システム - Google Patents

誤り訂正システム、誤り訂正方法および誤り訂正機能を有するデータ記憶システム

Info

Publication number
JP3272308B2
JP3272308B2 JP27191298A JP27191298A JP3272308B2 JP 3272308 B2 JP3272308 B2 JP 3272308B2 JP 27191298 A JP27191298 A JP 27191298A JP 27191298 A JP27191298 A JP 27191298A JP 3272308 B2 JP3272308 B2 JP 3272308B2
Authority
JP
Japan
Prior art keywords
ecc block
error correction
row
syndrome
storage device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP27191298A
Other languages
English (en)
Other versions
JP2000112776A (ja
Inventor
輝彦 牛尾
光治 山田
俊夫 金井
栄治 國枝
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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 JP27191298A priority Critical patent/JP3272308B2/ja
Priority to TW088112956A priority patent/TW436767B/zh
Priority to KR1019990033468A priority patent/KR100339452B1/ko
Priority to SG9904524A priority patent/SG86356A1/en
Publication of JP2000112776A publication Critical patent/JP2000112776A/ja
Application granted granted Critical
Publication of JP3272308B2 publication Critical patent/JP3272308B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1044Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices with specific ECC/EDC distribution

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Correction Of Errors (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、誤り訂正システムおよ
び誤り訂正機能を有するデータ記憶システムに関し、さ
らに詳細にいえば、DVD(Digital Versatile Disk)
に見られるような積符号形式の誤り訂正符号を用いた誤
り訂正システムにおけるデータ転送効率を高めることに
よって、誤り訂正処理に要する時間を短縮するための技
術に関する。
【0002】
【従来の技術】光デイスクに代表されるDVDは、一般
に、積符号形式の誤り訂正符号を用いた誤り訂正技術を
用いており、誤り訂正符号としてはリード・ソロモン符
号が用いられる。図1は、積符号形式の誤り訂正符号を
用いた基本のデータ・フォーマットを示している。デー
タ・バイトは、k1行×k2列に配列される。知られて
いるように、行(水平)方向には、PI符号(Pari
ty−Inner Code)または内符号と呼ばれる
行誤り訂正符号が付けられ、列(垂直)方向には、PO
符号(Parity−Outer Code)または外
符号と呼ばれる列誤り訂正符号が付けられる。PI符号
およびPO符号を付けられたデータ・バイトの配列1
は、ECCブロックと呼ばれる。知られているように、
PI符号およびPO符号は、行データおよび列データに
基づいて符号生成多項式によりつくられる。
【0003】ECCブロックのフォーマットは、DVD
の標準により定められており、k1は192行、k2は
172バイト、各行のPIは10バイト、POは16行
である。したがって、ECCブロックの行方向の長さY
は182バイトであり、ECCブロックの列方向の長さ
Zは208行である。すなわち、ECCブロックの20
8行の各々は182個のバイトを含み、ECCブロック
の182列の各々は208個のバイトを含む。ECCブ
ロックは、16個のセクタS1−S16を含み、各セク
タは12個のバイト行L1−L12を含む。バイト行L
1−L12の各々は、172個のデータ・バイトおよび
10個のPIバイトを含む。POは、16個のPOバイ
ト行PO1−PO16を含む。
【0004】図2は、DVDのデータ・トラックに記録
されるECCブロック記録フォーマットを概略的に示し
ている。図1の16個のPOバイト行PO1−PO16
は、16個のセクタにそれぞれ分配される。例えば、セ
クタS1は、12個のバイト行L1−L12と、関連す
る1つのPOバイト行PO1との組合せを含み、セクタ
S16は、12個のバイト行L1−L12と、関連する
1つのPOバイト行P16(図示せず)との組合せを含
む。
【0005】図1のECCブロックは図2の記録フォー
マットに変換されてDVDに記録される。一般には、図
1のECCブロックは図2の記録フォーマットに変換さ
れ、フレーム同期信号を付加され、8/16変調(EF
M plus 変調)されてDVDに記録される。読み取り時
には、DVDから読み取られた信号が8/16復調さ
れ、フレーム同期信号を除去されて、図2のECCブロ
ック・フォーマットに組み立てられる。
【0006】誤り訂正処理は、一般に、まず行方向で誤
り訂正を行い、行方向で所定数を超える誤りバイトが検
出されたとき、列方向で消失(イレージャ)訂正を行
う。DVDの場合、行方向のリード・ソロモン符号のハ
ミング距離は11、列方向のリード・ソロモン符号のハ
ミング距離は17である。行方向の最大誤り訂正数は5
バイトであり、列方向の最大誤り訂正数は8バイトであ
る。しかし、行方向の最大誤り訂正数は、通常、5より
も少ない数、例えば3バイト、に制限され、3バイトを
超える誤りが検出されたときは、列方向で消失訂正を行
う。
【0007】次に、図3を参照して、従来のDVDシス
テムにおける誤り訂正手順について説明する。ECCブ
ロック・データは、図2に関して説明した記録フォーマ
ットで、光デイスクのようなDVD11に記憶される。
デイスク11はスピンドル・モータ12によって回転さ
れる。案内棒14上で移動する読み取りヘッド13は、
DVD11から記録データおよびサーボ情報を読み取
り、これらを読み取り回路16へ送る。読み取り回路1
6は、読み取られた記録データおよびサーボ情報をフォ
ーマッタ20へ送る。スピンドル・モータ12の回転お
よび案内棒14上での読み取りヘッド13の移動は、サ
ーボ情報に応答するデイジタル・サーボ・プロセッサ1
8によって制御される。
【0008】図3において、破線およびその破線に示さ
れた括弧内の数字は、データ転送および処理の順序を示
している。
【0009】(1)フォーマッタ20は、読み取られた
信号を8/16復調し、フレーム同期信号を除去し、図
1のフォーマットのECCブロックを生成する。フォー
マッタ20は、図1のECCブロックのバイト行(以
下、ECCブロック行という)L1、L2、L3・・・
PO15、PO16を、第1のバッファ記憶装置として
働くDRAM22へ順次に転送する。DRAM22は、
ECCブロックを保持し、誤りがある場合は訂正された
ECCブロックを記憶し、訂正されたECCブロックを
ホストPC(パーソナル・コンピュータ)へ転送するた
めの作業用メモリとして用いられる。 (2)1つ以上のECCブロック行がDRAM22に転
送されたとき、最初のECCブロック行が、第2のバッ
ファ記憶装置として働くSRAM24へ転送される。S
RAM24は、比較的小容量の高速バッファであり、誤
り訂正処理を効率的に行うためのものである。SRAM
24へ転送されるECCブロック行は、172個のデー
タ・バイトと10個のPIバイトとを含む。 (3)SRAM24に転送されたECCブロック行は次
に、誤り訂正符号デコーダ26へ転送される。デコーダ
26はシンドローム生成器28および誤り訂正回路30
を含む。シンドローム生成器28は、SRAM24から
のECCブロック行のデータに基づいて10バイトのシ
ンドロームを生成する。誤り訂正回路30は生成された
シンドロームに基づいて、ECCブロック行の誤り位置
および誤り数値を求め、誤りバイト数が3以下のとき
は、誤りバイトを訂正する。 (4)デコーダ26は次いで、誤り訂正されたバイトを
MPU32へ送る。 (5)MPU32は、デコーダ26から送られた訂正済
みバイトをDRAM22へ送り、DRAM22内の対応
ECCブロック行の誤りバイトを訂正済みバイトで書き
換える。
【0010】上記の手順はすべてのECCブロック行に
ついて順次に行われる。もしデコーダ26で3個よりも
多い誤りバイトが検出された場合は、消失ポインタがセ
ットされる。消失ポインタがセットされたときは、行方
向の誤り訂正処理の終了後、DRAM22内のECCブ
ロックのバイト列(以下ECCブロック列という)が順
次にSRAM24へ転送される。列方向では16バイト
のシンドロームがシンドローム生成器28で生成され、
行誤り訂正と同様に、列方向において誤り訂正処理が行
われる。列方向の誤り訂正処理をするためには、その前
に、DRAM22内にECCブロック全体が記憶されて
いる必要がある。
【0011】(6)すべての誤り訂正処理が終了したと
き、DRAM22内には、誤りを含まないECCブロッ
クが存在することになる。DRAM22内のECCブロ
ックのデータは線34を介してホストPC(パーソナル
・コンピュータ)へ送られる。
【0012】
【発明が解決しようとする課題】行方向の誤り訂正のた
めのシンドロームは、172個のデータ・バイトおよび
10個のPIバイトを含む182バイトのECCブロッ
ク行に基づいて発生される。上述した従来のシステム
は、SRAM24の下流にシンドローム生成器28を有
するため、182バイトのECCブロック行全体をDR
AM22からSRAM24へ、次いでデコーダ28へ転
送する必要がある。したがって、データの転送に時間が
かかり、誤り訂正処理を効率的に行うことができないと
いう問題があった。
【0013】誤り訂正処理はオン・ザ・フライ様式で、
すなわち、ホストへのデータ転送に待ちを与えることな
くリアル・タイム様式で、実行できることが好ましい。
上記の従来の方式でも、例えば、パイプライン方式の並
行処理を用いて処理効率を上げることにより、オン・ザ
・フライを実現可能であるが、より本質的に処理時間を
短縮できるのが好ましい。DRAM22とデコーダ26
との間のデータ転送時間を短縮できれば、データ転送に
よる内部バス36の占有時間を短縮し、MPU32など
が内部バス36を利用できる時間を増してデータ記憶シ
ステム全体の処理効率を高めることができる。
【0014】また、ECCブロック・フォーマットは固
定されており、ECCブロック行の長さ(182バイ
ト)が2の累乗数でないため、従来のシステムでは、D
RAMバッファ22内に、不使用領域が残ってしまい、
バッファ記憶装置の利用効率が低いという問題があっ
た。
【0015】したがって、本発明の目的は、データ転送
効率を高めることによって、誤り訂正処理に要する時間
を短縮できる誤り訂正システムおよび誤り訂正方法を提
供することである。
【0016】本発明のもう1つの目的は、誤り訂正処理
に要する時間を短縮でき、しかもバッファ記憶装置の使
用効率を高めることができる誤り訂正システムを提供す
ることである。
【0017】本発明の他の目的は、積符号形式の誤り訂
正符号を用いた誤り訂正機能を有し、誤り訂正処理に要
する時間を短縮できるデータ記憶システムを提供するこ
とである。
【0018】
【課題を解決するための手段】本発明の一態様によれ
ば、本発明の誤り訂正システムは、行列に配列されたデ
ータおよび各行に対する行誤り訂正用符号を少なくとも
含むECCブロックを生成するフォーマッタと、前記フ
ォーマッタからの各ECCブロック行に基づいてシンド
ロームを生成するシンドローム生成器と、前記シンドロ
ーム生成器からECCブロック行および関連するシンド
ロームを受け取って記憶する第1のバッファ記憶装置
と、前記第1のバッファ記憶装置からシンドロームを受
け取って、前記第1のバッファ記憶装置内のECCブロ
ック行について誤り訂正処理を行なう誤り訂正符号デコ
ーダとを含む。
【0019】前記第1のバッファ記憶装置は第1および
第2のバンクを有し、前記バンクの各行は2n×(2m
+1)(ここで、nおよびmは正の整数)のバイト長を
有し且つ(2m+1)個のバイト・ブロックに分割され
る。前記ECCブロック行のバイト長Yは、2n×2m
<Y<2n×(2m+1)であり、各前記ECCブロッ
ク行は2nのバイト長のブロック単位で前記第1および
第2のバンクの前記バイト・ブロックに交互にインター
リーブ様式で記憶される。各前記ECCブロック行に対
するシンドロームは、当該ECCブロック行の(2m+
1)番目のブロックが記憶されたバンク・バイト・ブロ
ックの、バイト長[2n×(2m+1)−k]の空領域
に記憶される。
【0020】本発明のもう1つの態様によれば、本発明
のデータ記憶システムは、データおよび積符号形式の誤
り訂正符号を含むセクタ・データを記憶した記憶媒体
と、前記記憶媒体から読み出されたセクタ・データをフ
ォーマットし、行列に配列されたデータ、各行に対する
行誤り訂正用内符号および各列に対する列誤り訂正用外
符号を含むECCブロックを生成するフォーマッタと、
前記フォーマッタからECCブロック行を順次に受け取
り、各ECCブロック行に基づいてシンドロームを発生
するシンドローム生成器と、前記シンドローム生成器か
らECCブロック行および関連するシンドロームを受け
取る第1のバッファ記憶装置と、前記第1の記憶装置か
ら前記シンドロームを受取る第2のバッファ記憶装置
と、前記第2のバッファ記憶装置から前記シンドローム
を受取り、前記第1のバッファに記憶されたECCブロ
ック行について誤り訂正処理を行なうデコーダとを含
む。
【0021】
【発明の実施の形態】次に図4を参照して本発明を説明
する。図4の構成要素のうち、図3のものと対応する構
成要素は同じ参照番号で示されている。本発明の特徴
は、図3の従来のシステムのデコーダ26に含まれてい
たシンドローム生成器28と同様のシンドローム生成器
38をフォーマッタ20とDRAMバッファ22との間
に配置するように変更したことである。シンドローム生
成器38は、フォーマッタ20からECCブロック行を
順次に受け取り、受け取ったECCブロック行をDRA
Mバッファ22へ転送すると共に、そのECCブロック
行に対するシンドロームを生成する。各ECCブロック
行および関連するシンドロームは共にDRAM22に記
憶される。DRAM22はシンドロームのみをSRAM
24へ転送する。SRAM24はDRAM22から受け
取ったシンドロームをデコーダ26へ転送する。デコー
ダ26内の誤り訂正回路30は、SRAM24から受け
取ったシンドロームに基づいて行方向の誤り訂正処理を
行う。デコーダ26内のシンドローム生成器28は、列
方向のシンドロームを発生するために用いられ、行方向
のシンドロームを生成するためには用いられない。
【0022】図4における破線およびその破線に示され
た括弧内の数字は、データ転送および処理の順序を示し
ている。
【0023】(1)フォーマッタ20は、従来と同様
に、図1のフォーマットのECCブロックを生成する。
フォーマッタ20は、ECCブロック行L1、L2、L
3・・・PO15、PO16を、シンドローム生成器3
8へ順次に転送する。 (2)シンドローム生成器38は、フォーマッタ20か
らECCブロック行を受け取る度に、そのECCブロッ
ク行に対する10バイトのシンドロームを生成する。シ
ンドローム生成器38は、受け取ったECCブロック行
を、第1のバッファ記憶装置として働くDRAMバッフ
ァ22へ転送する間に、そのECCブロック行に対する
シンドロームを生成する。生成されたシンドロームは、
関連するECCブロック行と共に、DRAM22に記憶
される。 (3)DRAM22は、シンドロームのみを、第2のバ
ッファ記憶装置として働くSRAM24へ順次に転送す
る。 (4)SRAM24は、DRAM22から受け取ったシ
ンドロームを、誤り訂正符号デコーダ26へ転送する。
デコーダ26の誤り訂正回路30は、受け取ったシンド
ロームに基づいて、関連するECCブロック行の誤り位
置および誤り数値を求め、誤りバイト数が3以下のとき
は、誤りバイトを訂正する。 (5)デコーダ26は次いで、誤り訂正されたバイトを
MPU32へ送る。 (6)MPU32は、デコーダ26から送られた訂正済
みバイトをDRAM22へ送り、DRAM22内の対応
ECCブロック行の誤りバイトを訂正済みバイトで書き
換える。
【0024】デコーダ26で3個よりも多数の誤りバイ
トが検出された場合の消失訂正処理は図3の従来の場合
と同じである。すなわち、消失ポインタがセットされた
ときは、行方向の誤り訂正処理の終了後、DRAM22
内のECCブロックのバイト列が順次にSRAM24へ
転送される。列方向では16バイトのシンドロームがシ
ンドローム生成器28で生成され、行方向の誤り訂正処
理と同様に、列方向の誤り訂正処理が行われる。
【0025】(6)すべての誤り訂正処理が終了したと
き、DRAM22内には、誤りを含まないECCブロッ
クが存在することになる。DRAM22内のECCブロ
ックのデータは線34を介してホストPC(パーソナル
・コンピュータ)へ送られる。
【0026】以上から明らかなように、本発明において
は、行方向のシンドロームはフォーマッタ20とDRA
Mバッファ22との間の位置で生成される。シンドロー
ムは各ECCブロック行と共にDRAM22に記憶され
る。DRAM22からSRAM24およびデコーダ26
へ転送されるのは、10バイトのシンドロームだけであ
り、したがって、182バイトのECCブロック行全体
をDRAM22からSRAM24およびデコーダ26へ
転送する従来に比べて、データ転送時間を大幅に短縮す
ることができる。なお、列方向の消失訂正処理は、従来
と同じ手順で行われるから、消失訂正に要する時間は、
基本的には、従来と同様である。
【0027】本発明では、ECCブロックおよびシンド
ロームの両方がDRAMバッファ22に記憶される。本
発明によれば、DRAMバッファ22の利用効率を高め
ることができる。これは本発明の付加的特徴である。次
に、本発明においてECCブロックおよびシンドローム
をDRAMバッファ22にどのように記憶するかについ
て説明する。
【0028】ECCブロックは、標準によって定められ
た固定データ・フォーマットを有し、各ECCブロック
行は182バイトの長さを有する。一方、DRAMで
は、行方向の長さを2の累乗数にするのが一般的であ
る。したがって、DRAMの各行に1ECCブロック行
を記憶した場合は、空領域が残ってしまい、メモリの利
用効率が低下するという問題がある。また、DRAMの
アドレスは行方向では連続するが、列方向では不連続に
なる。したがって、列方向ではアクセス速度を上げるこ
とができないという問題がある。
【0029】本出願人による特願平10−15740号
は、DRAMバッファの利用効率を高めると共に、行列
両方向で連続的にアクセスできるようにするために、E
CCブロックを2つのメモリ・バンクにインターリーブ
方式で記憶するようにした技術を提案している。2つの
バンクとしては、2つのSDRAM(同期DRAM)チ
ップが用いられる。図5は、この特許出願に開示された
メモリ・データ・マッピングを示している。図5の上側
の部分は図1のECCブロックの論理マッピングを示
し、下側の部分は2つのメモリ・バンク(バンク0およ
びバンク1)への物理的マッピングを示している。図5
のL1、L2、L3・・・は図1および図2のセクタS
1のECCブロック行L0、L1、L3・・・に対応す
る。説明を簡略化するため、ECCブロック行L1−L
4のみが示されている。
【0030】バンク0および1のバイト行は、それぞ
れ、奇数個のバイト・ブロックに分けられる。各バイト
・ブロックは、行方向に同じ長さを有する。バンク0お
よび1の行方向の長さ(バイト数)は、2n×(2m+
1)によって表される。ここで、nおよびmは正の整数
である。2nは1バイト・ブロックのバイト数であり、
この例では64(n=6)である。2m+1はバイト・
ブロックの数であり、この例では3(m=1)である。
バンク0および1の行方向の長さは192バイトであ
る。1ECCブロック行のバイト数(この例では、18
2バイト)をYとしたとき、次の関係が成り立つ。 2n×2m<Y<2n×(2m+1)
【0031】ECCブロックの各行L1、L2、L3・
・・もそれぞれ64バイトの3つのバイト・ブロックに
分けられる。ECCブロック行L1の第1のバイト・ブ
ロックA0はバンク0のバイト・ブロックA0に記憶さ
れ、ECCブロック行L1の第2のバイト・ブロックB
0はバンク1のバイト・ブロックB0に記憶され、L1
の第3のバイト・ブロックA1はバンク0のバイト・ブ
ロックA1に記憶される。ECCブロック行L2の第1
のバイト・ブロックB1はバンク1のバイト・ブロック
B1に記憶され、L2の第2のバイト・ブロックA2は
バンク0のバイト・ブロックA2に記憶され、L2の第
3のバイト・ブロックB2はバンク1のバイト・ブロッ
クB2に記憶される。以下同様に、各ECCブロック行
はバンク0および1のバイト・ブロックにインターリー
ブ様式で記憶される。
【0032】ECCブロック行L1を取り出すときは、
バイト・ブロックA0、B0、A1がバンク0および1
間で交互にアクセスされ、ECCブロック行L2を取り
出すときは、バイト・ブロックB1、A2、B2がバン
ク1および0間で交互にアクセスされる。左側のECC
ブロック列を取り出すときは、バイト・ブロックA0、
B1、A3、B4・・・がバンク0および1間で交互に
アクセスされ、中央のECCブロック列を取り出すとき
は、バイト・ブロックB0、A2、B3、A5・・・が
バンク1および0間で交互にアクセスされる。なお、実
際の列方向の誤り訂正処理ではECCブロックがバイト
列単位で処理されるので、ECCブロックのもっとも左
側のバイト列は、バイト・ブロック列A0、B1、A
3、B4・・・の最も左のバイトを選択することによっ
て取り出される。
【0033】図5のメモリ・データ・マッピングでは、
各バンクは行方向に連続アドレスを有する。また、隣接
する行は異なるバンクに記憶され、各バンクは、プリチ
ャージなどに要する内部回路遅延が見かけ上、外部から
見えないようにバンク・インターリーブ方式でアクセス
できるため、列方向にアドレスを変えた場合でも(19
2を加算する)、列データを連続的に取り出すことがで
きる。したがって、この方式によれば、行列の両方向で
高速アクセスを実現することができる。
【0034】また、各バンクの行方向の長さは192バ
イトであるのに対し、ECCブロック行は182バイト
の長さである。したがって、ECCブロックの右側のバ
イト・ブロック列A1、B2、A4、B5・・・を記憶
するバンク・ブロックのみが54バイトのデータを記憶
する。この時の記憶領域使用効率は182/192=
0.948となり、高い使用効率が得られる。
【0035】したがって、図5のバンク・インターリー
ブ方式によれば、高速アクセスと高い記憶領域使用効率
を得ることができる。しかしながら、各バンク行当た
り、2 n×(2m+1)−Y=192−182=10バ
イトの空領域を含む。
【0036】本発明は、図4のDRAMバッファ22に
図5のバンク・インターリーブ方式を使用すると共に、
バンク行当たり10バイトの不使用領域にシンドローム
を記憶するものである。シンドローム生成器38は、各
ECCブロック行毎に10バイトのシンドロームを生成
するから、ECCブロック行をバンクにインターリーブ
記憶すると共に、関連する10バイトのシンドローム
を、10バイトの不使用領域に記憶することにより、D
RAMバッファ22の使用効率を100%に高めること
ができる。
【0037】以上、特定の実施例について説明したが、
本発明の範囲内で種々の変更をしうることは当業者に明
らかであろう。例えば、実施例では、行方向の誤り訂正
処理の後に列方向の誤り訂正処理を行ったが、先に列方
向の誤り訂正を行う場合にも、本発明を適用しうる。た
だし、この場合は、ECCブロック全体がDRAMバッ
ファ22に記憶されるまでは、誤り訂正処理を開始する
ことができない。先に行方向の誤り訂正処理を行う場合
は、1つ以上のECCブロック行がDRAMバッファに
記憶されたとき誤り訂正処理を開始しうるので、この方
が有利である。また、実施例では、特定の構造のデータ
・フォーマットが用いられたが、他のデータ・フォーマ
ットを使用することも可能である。
【0038】
【発明の効果】本発明では、フォーマッタと第1のバッ
ファ記憶装置との間にシンドローム生成器を配置し、シ
ンドロームのみを誤り訂正用の第2のバッファ記憶装置
およびデコーダへ転送する。したがって、データ転送に
要する時間を大幅に短縮でき、誤り訂正処理を高速化す
ることができる。
【0039】また、第1のバッファ記憶装置にバンク・
インターリーブ記憶方式を使用し、シンドロームを各バ
ンクの不使用行領域に記憶することにより、第1のバッ
ファ記憶装置の使用効率を改善することができる。
【0040】さらに、シンドロームを記憶するのに付加
的な記憶装置を必要とせず、特別の記憶制御も必要ない
から、経済的である。フォーマッタと第1のバッファ記
憶装置との間にシンドローム生成器を追加する必要があ
るが、シンドローム生成器は比較的簡単なゲートで構成
され、安価であるから、シンドローム生成器の追加はシ
ステム全体のコストにはほとんど影響しない程度であ
る。
【図面の簡単な説明】
【図1】DVDで使用されるECCブロックのデータ・
フォーマットを示す図である。
【図2】DVDに記録されるセクタ・データの記録フォ
ーマットを示す図である。
【図3】従来のDVD記憶システムの概略構成を示す図
である。
【図4】本発明の実施例によるDVD記憶システムの概
略構成を示す図である。
【図5】DRAMバッファへのデータ・マッピングを示
す図である。
【符号の説明】
1 ECCブロック 11 DVD 12 モータ 13 読み取りヘッド 16 読み取り回路 18 デイジタル・サーボ・プロセッサ 20 フォーマッタ 22 DRAMバッファ(第1のバッファ記憶装置) 24 SRAMバッファ(第2のバッファ記憶装置) 26 デコーダ 28 シンドローム生成器 30 誤り訂正回路 32 MPU 36 データ・バス 38 シンドローム生成器
───────────────────────────────────────────────────── フロントページの続き (72)発明者 山田 光治 滋賀県野洲郡野洲町大字市三宅800番地 日本アイ・ビー・エム株式会社 野洲 事業所内 (72)発明者 金井 俊夫 滋賀県野洲郡野洲町大字市三宅800番地 日本アイ・ビー・エム株式会社 野洲 事業所内 (72)発明者 國枝 栄治 滋賀県野洲郡野洲町大字市三宅800番地 日本アイ・ビー・エム株式会社 野洲 事業所内 (56)参考文献 特開 平10−117148(JP,A) 特開 平10−229344(JP,A) (58)調査した分野(Int.Cl.7,DB名) G06F 11/10 330 G11B 20/00 H03M 13/00

Claims (11)

    (57)【特許請求の範囲】
  1. 【請求項1】行列に配列されたデータおよび各行に対す
    る行誤り訂正符号を少なくとも含むECCブロックを生
    成するフォーマッタと、 前記フォーマッタからの各ECCブロック行に基づいて
    シンドロームを生成するシンドローム生成器と、 前記シンドローム生成器からECCブロック行および関
    連するシンドロームを受け取って記憶する第1のバッフ
    ァ記憶装置と、 前記第1のバッファ記憶装置から前記シンドロームを受
    け取って、前記第1のバッファ記憶装置内のECCブロ
    ック行について誤り訂正処理を行なう誤り訂正符号デコ
    ーダとを含み、 前記第1のバッファ記憶装置は、2n×(2m+1)
    (ここで、nおよびmは正の整数)のバイト長を有し且
    つ(2m+1)個のバイト・ブロックに分割されたバイ
    ト行を有し、 前記ECCブロック行のバイト長Yは、2n×2m<Y
    <2n×(2m+1)であり、各前記ECCブロック行
    は2nのバイト長のブロック単位で前記バイト・ブロッ
    クに記憶され、 各前記ECCブロック行に対するシンドロームは、当該
    ECCブロック行の(2m+1)番目のブロックが記憶
    されたバイト・ブロックの、バイト長[2n×(2m+
    1)−Y]の空領域に記憶される、 誤り訂正システム。
  2. 【請求項2】前記第1のバッファ記憶装置は第1および
    第2のバンクを有し、 前記バンクの各行は2n×(2m+1)(ここで、nお
    よびmは正の整数)のバイト長を有し且つ(2m+1)
    個のバイト・ブロックに分割されており、 前記ECCブロック行のバイト長Yは、2n×2m<Y
    <2n×(2m+1)であり、各前記ECCブロック行
    は2nのバイト長のブロック単位で前記第1および第2
    のバンクの前記バイト・ブロックに交互にインターリー
    ブ様式で記憶され、 各前記ECCブロック行に対するシンドロームは、当該
    ECCブロック行の(2m+1)番目のブロックが記憶
    されたバンク・バイト・ブロックの、バイト長[2n×
    (2m+1)−Y]の空領域に記憶されることを特徴と
    する請求項1に記載の誤り訂正システム。
  3. 【請求項3】前記Yは182バイトであり、nは6であ
    り、mは1であり、前記シンドロームは10バイト長で
    あることを特徴とする請求項1または2に記載の誤り訂
    正システム。
  4. 【請求項4】前記第1のバッファ記憶装置から前記シン
    ドロームを受取る第2のバッファ記憶装置を含み、 前記デコーダは、前記第2のバッファ記憶装置から各E
    CCブロック行に対するシンドロームを受取り、前記第
    1のバッファ記憶装置に記憶されたECCブロック行に
    ついて誤り訂正処理を行なうことを特徴とする請求項1
    〜3のいずれか1項に記載の誤り訂正システム。
  5. 【請求項5】前記ECCブロックは、各列に対する列誤
    り訂正符号を含み、 前記デコーダは、ECCブロック行の誤り訂正処理の後
    に、必要に応じて、前記第1のバッファ記憶装置内のE
    CCブロック列について誤り訂正処理をすることを特徴
    とする請求項4に記載の誤り訂正システム。
  6. 【請求項6】行列に配列されたデータおよび各行に対す
    る行誤り訂正用符号を少なくとも含むECCブロックの
    各ECCブロック行に基づいてシンドロームを生成する
    ステップと、 前記ECCブロック行および関連するシンドロームをバ
    ッファ記憶装置に記憶するステップと、 前記バッファ記憶装置の前記シンドロームを誤り訂正符
    号デコーダへ転送して、前記バッファ記憶装置における
    ECCブロック行について誤り訂正処理を行なうステッ
    プとを含み、 前記バッファ記憶装置は、2n×(2m+1)(ここ
    で、nおよびmは正の整数)のバイト長を有し且つ(2
    m+1)個のバイト・ブロックに分割されたバイト行を
    有し、 前記ECCブロック行のバイト長Yは、2n×2m<Y
    <2n×(2m+1)であり、各前記ECCブロック行
    は2nのバイト長のブロック単位で前記バイト・ブロッ
    クに記憶され、 各前記ECCブロック行に対するシンドロームは、当該
    ECCブロック行の(2m+1)番目のブロックが記憶
    されたバイト・ブロックの、バイト長[2n×(2m+
    1)−Y]の空領域に記憶される、 誤り訂正方法。
  7. 【請求項7】前記バッファ記憶装置は第1および第2の
    バンクを有し、 前記バンクの各行は2n×(2m+1)(ここで、nお
    よびmは正の整数)のバイト長を有し且つ(2m+1)
    個のバイト・ブロックに分割されており、 前記ECCブロック行のバイト長Yは、2n×2m<Y
    <2n×(2m+1)であり、各前記ECCブロック行
    は2nのバイト長のブロック単位で前記第1および第2
    のバンクの前記バイト・ブロックに交互にインターリー
    ブ様式で記憶され、 各前記ECCブロック行に対するシンドロームは、当該
    ECCブロック行の(2m+1)番目のブロックが記憶
    されたバンク・バイト・ブロックの、バイト長[2n×
    (2m+1)−Y]の空領域に記憶されることを特徴と
    する請求項6に記載の誤り訂正方法。
  8. 【請求項8】前記ECCブロックは、各列に対する列誤
    り訂正符号を含み、 前記デコーダは、ECCブロック行の誤り訂正処理の後
    に、必要に応じて、前記バッファ記憶手段内のECCブ
    ロック列について誤り訂正処理をすることを特徴とする
    請求項6または7に記載の誤り訂正方法。
  9. 【請求項9】データおよび積符号形式の誤り訂正符号を
    含むセクタ・データを記憶した記憶媒体と、 前記記憶媒体から読み出されたセクタ・データをフォー
    マットし、行列に配列されたデータ、各行に対する行誤
    り訂正符号および各列に対する列誤り訂正符号を含むE
    CCブロックを生成するフォーマッタと、 前記フォーマッタからECCブロック行を順次に受け取
    り、各ECCブロック行に基づいてシンドロームを発生
    するシンドローム生成器と、 前記シンドローム生成器からECCブロック行および関
    連するシンドロームを受け取る第1のバッファ記憶装置
    と、 前記第1の記憶装置から前記シンドロームを受取る第2
    のバッファ記憶装置と、 前記第2のバッファ記憶装置から前記シンドロームを受
    取り、前記第1のバッファ記憶装置に記憶されたECC
    ブロック行について誤り訂正処理を行なうデコーダとを
    含み、 前記シンドローム生成器は、前記ECCブロック行を前
    記第1のバッファ記憶装置へ転送すると共に、前記EC
    Cブロック行に対するシンドロームを生成して前記第1
    のバッファ記憶装置に記憶し、 前記第1のバッファ記憶装置は第1および第2のバンク
    を有し、 前記バンクの各行は2n×(2m+1)(ここで、nお
    よびmは正の整数)のバイト長を有し且つ(2m+1)
    個のバイト・ブロックに分割されており、 前記ECCブロック行のバイト長Yは、2n×2m<Y
    <2n×(2m+1)であり、各前記ECCブロック行
    は2nのバイト長のブロック単位で前記第1および第2
    のバンクの前記バイト・ブロックに交互にインターリー
    ブ様式で記憶され、 各前記ECCブロック行に対する前記シンドロームは、
    当該ECCブロック行の(2m+1)番目のブロックが
    記憶されたバンク・バイト・ブロックの、バイト長[2
    n×(2m+1)−Y]の空領域に記憶される、 データ記憶システム。
  10. 【請求項10】前記Yは182バイトであり、nは6で
    あり、mは1であり、前記シンドロームは10バイト長
    であることを特徴とする請求項9に記載のデータ記憶シ
    ステム。
  11. 【請求項11】前記第1のバッファ記憶装置は、前記フ
    ォーマッタからECCブロック行を順次に受け取って1
    ECCブロック分のデータを記憶し、 前記第2のバッファ記憶装置は、ECCブロック行の誤
    り訂正処理の後に、必要に応じて、前記第1のバッファ
    記憶装置内のECCブロック列について誤り訂正処理を
    することを特徴とする請求項9または10に記載のデー
    タ記憶システム。
JP27191298A 1998-09-25 1998-09-25 誤り訂正システム、誤り訂正方法および誤り訂正機能を有するデータ記憶システム Expired - Fee Related JP3272308B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP27191298A JP3272308B2 (ja) 1998-09-25 1998-09-25 誤り訂正システム、誤り訂正方法および誤り訂正機能を有するデータ記憶システム
TW088112956A TW436767B (en) 1998-09-25 1999-07-30 Error correction system, error correction method, and data memory with error correction function
KR1019990033468A KR100339452B1 (ko) 1998-09-25 1999-08-14 오류 정정 시스템, 오류 정정 방법 및 오류 정정 기능을 갖는 데이타 기억 시스템
SG9904524A SG86356A1 (en) 1998-09-25 1999-09-15 Error correction system, error correction method, and data memory with correction function

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP27191298A JP3272308B2 (ja) 1998-09-25 1998-09-25 誤り訂正システム、誤り訂正方法および誤り訂正機能を有するデータ記憶システム

Publications (2)

Publication Number Publication Date
JP2000112776A JP2000112776A (ja) 2000-04-21
JP3272308B2 true JP3272308B2 (ja) 2002-04-08

Family

ID=17506620

Family Applications (1)

Application Number Title Priority Date Filing Date
JP27191298A Expired - Fee Related JP3272308B2 (ja) 1998-09-25 1998-09-25 誤り訂正システム、誤り訂正方法および誤り訂正機能を有するデータ記憶システム

Country Status (4)

Country Link
JP (1) JP3272308B2 (ja)
KR (1) KR100339452B1 (ja)
SG (1) SG86356A1 (ja)
TW (1) TW436767B (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010081335A (ko) 2000-02-12 2001-08-29 구자홍 차세대 고밀도 기록 매체를 위한 디지털 데이터의 오류정정 부호화 방법
CN100530980C (zh) * 2003-07-09 2009-08-19 汤姆森特许公司 里德-所罗门乘积码的错误校正方法
US7607071B2 (en) * 2005-01-28 2009-10-20 Intel Corporation Error correction using iterating generation of data syndrome
KR100724211B1 (ko) * 2006-05-09 2007-05-31 엘지전자 주식회사 차세대 고밀도 기록 매체를 위한 디지털 데이터의 오류정정 부호화 방법
JP2008077458A (ja) 2006-09-22 2008-04-03 Fujitsu Ltd 記憶データ処理装置、記憶装置、記憶データ処理プログラム
KR102281751B1 (ko) * 2015-10-01 2021-07-27 에스케이하이닉스 주식회사 플래시 메모리 시스템 동작 방법

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5761220A (en) * 1994-09-19 1998-06-02 Cirrus Logic, Inc. Minimum latency asynchronous data path controller in a digital recording system

Also Published As

Publication number Publication date
KR20000022714A (ko) 2000-04-25
TW436767B (en) 2001-05-28
KR100339452B1 (ko) 2002-06-05
JP2000112776A (ja) 2000-04-21
SG86356A1 (en) 2002-02-19

Similar Documents

Publication Publication Date Title
JP3863252B2 (ja) 誤り訂正方法、誤り訂正装置、データ読み出し装置、及び、データマッピング方法
JP3307579B2 (ja) データ記憶システム
US6158040A (en) Rotated data-aligmnent in wade embedded DRAM for page-mode column ECC in a DVD controller
JP3896206B2 (ja) Eccブロック構造を使用する記憶装置のための符号化方法及びシステム
US6363511B1 (en) Device and method for decoding data streams from storage media
US20070061691A1 (en) System for encoding digital data and method of the same
JP2007115390A (ja) メモリ機器、データを転送する方法、およびデータを格納する方法
US20070050663A1 (en) Error correction apparatus for performing consecutive reading of multiple code words
JP3272308B2 (ja) 誤り訂正システム、誤り訂正方法および誤り訂正機能を有するデータ記憶システム
CN101256803B (zh) 错误校正设备和记录及再现设备
JPH1198462A (ja) データ再生装置
US5586127A (en) Apparatus and method for correcting error in data read from recording medium
US6697921B1 (en) Signal processor providing an increased memory access rate
JP3313056B2 (ja) Cd−romドライブのデコーディング装置における誤り訂正のためのメモリ読出し方法及び回路
US20050055622A1 (en) Device and method for generating error correction code
JP2605270B2 (ja) エラー訂正及びチエツク装置
JP2000137651A (ja) データ誤り訂正装置およびその方法
KR100390120B1 (ko) 신호 처리 장치
JP3259688B2 (ja) データ処理回路
JP3022688B2 (ja) 補助記憶装置
JP2001237715A (ja) 復号装置
JP2001144628A (ja) データ転送装置
JP2003177973A (ja) データ処理装置
JPS62221223A (ja) デ−タ伝送方法
JP2001143408A (ja) 記録再生装置及びデータ誤り訂正方法

Legal Events

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