JP3619151B2 - Data processing method using error correction code and apparatus using the method - Google Patents

Data processing method using error correction code and apparatus using the method Download PDF

Info

Publication number
JP3619151B2
JP3619151B2 JP2000377838A JP2000377838A JP3619151B2 JP 3619151 B2 JP3619151 B2 JP 3619151B2 JP 2000377838 A JP2000377838 A JP 2000377838A JP 2000377838 A JP2000377838 A JP 2000377838A JP 3619151 B2 JP3619151 B2 JP 3619151B2
Authority
JP
Japan
Prior art keywords
error correction
correction code
bytes
data
memory
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
JP2000377838A
Other languages
Japanese (ja)
Other versions
JP2002185335A (en
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2000377838A priority Critical patent/JP3619151B2/en
Priority to EP01107172A priority patent/EP1223578A3/en
Priority to US09/813,782 priority patent/US6983413B2/en
Priority to TW090129583A priority patent/TW579499B/en
Priority to KR10-2001-0078530A priority patent/KR100482939B1/en
Priority to CNB011435593A priority patent/CN1199178C/en
Publication of JP2002185335A publication Critical patent/JP2002185335A/en
Application granted granted Critical
Publication of JP3619151B2 publication Critical patent/JP3619151B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Landscapes

  • Detection And Correction Of Errors (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、映像データ、音声データ、コンピュータデータなどを媒体(例えば、光ディスク、磁気ディスクなど)上に記録する場合、或は媒体に記録されたデータを再生する場合に有効な誤り訂正符号生成処理方法に関する。
【0002】
またこの発明は、上記の映像データなどを伝送処理する場合、或は受信処理する場合に有効な誤り訂正符号生成処理方法に関する。
【0003】
さらにまたこの発明は、上記の誤り訂正符号処理方法を採用した記録装置、再生装置、伝送装置、受信装置に関する。
【0004】
そして特にこの発明は、誤り訂正符号処理を行う場合に、バッファメモリを用いて誤り訂正処理を行う方法に特徴を備えている。
【0005】
【従来の技術】
映像データ、音声データ、コンピュータデータなどを、例えば、光ディスクや磁気ディスク上に記録する場合、データブロックに対して誤り訂正符号が付加される。誤り訂正符号付加処理においては、データブロックを一旦メモリに格納し、そのデータブロックの行、列に対する誤り訂正符号が生成される。
【0006】
行に付加される誤り訂正符号は、通常インナーパリティーと称され、PIと略記され、列に付加される誤り訂正符号は、通常アウターパリティーと称され、POと略記される。
【0007】
【発明が解決しようとする課題】
誤り訂正符号の付加処理において、誤り訂正符号を生成する前に、データブロックを一旦メモリに格納した際、メモリ上のデータが一部破損(エラー発生)することがある。これは、データのパターンやメモリの実装状態が起因するものと見られる。また外部からの突然のノイズが影響している場合もある。
【0008】
このときに生じたエラーは、メモリエラーと称される。
【0009】
このような場合は、メモリエラーが生じているデータブロック(改変データブロックと称することにする)に対する誤り訂正符号が生成され、この誤り訂正符号が改変データブロックに付加されて記録媒体に記録される。
【0010】
記録媒体の再生時には、誤り訂正処理回路において、上記誤り訂正符号が用いられ改変データブロックに対するエラー訂正処理が実行される。つまり改変データブロックが正しく再現されることになる。このことは、上記メモリエラーを含むデータブロックを正確に再生したことを意味する。しかしメモリエラーは、本来のデータには不要なエラーである。
【0011】
したがって、上記のメモリエラーが発生した場合、本来の正しいデータを復元することは不可能である。
【0012】
そこで本発明は、メモリ上でデータエラー(メモリエラー)が生じた場合であっても、本来の正しいデータを復元することが可能な誤り訂正符号を用いたデータ処理方法、この方法を採用した記録系或は再生系の装置、伝送系及び受信系の装置を提供することを目的とする。
【0013】
【課題を解決するための手段】
この発明の誤り訂正符号処理方法の基本的な考え方は、以下の通りである。
【0014】
この発明は、第1のメモリを用いて、M行×N列の(M×N)バイトで構成されるデータブロックの、各行に誤り訂正符号PIのPバイトを生成及び付加し、前記(M×N)バイトで構成されるデータブロックに誤り訂正符号が付加された誤り訂正積符号ブロック(ECCブロック)を複数格納する容量を持つ第2のメモリに、M行×(N+P)列の(M×(N+P))バイトで構成される、誤り訂正符号PIが付加した情報データブロックを、K個集合させ、(K×(M×(N+P)))バイトの集合情報データブロックとし、前記第2のメモリを用いて、前記集合情報データブロックの各列に誤り訂正符号POのSバイトを生成及び付加した誤り訂正積符号ブロック(ECCブロック)とし、前記ECCブロックを前記第2のメモリから読み出して伝送する前に、その各行に付加された誤り訂正符号PIを用いて誤り訂正処理を行い、前記誤り訂正処理をした後のECCブロックを、行順に順次伝送或いは記録媒体に記録するようにしている。
【0015】
またこの発明では、集合情報データブロックは、M行×N列の(M×N)バイトで構成されるデータブロックがK個集合した(K×(M×N))バイトの集合データブロックの各行に誤り訂正符号PIのPバイトが付加されたものであり、また誤り訂正符号POブロックとしては、前記集合情報データブロック及び前記誤り訂正符号PIのブロックの各列に誤り訂正符号POのSバイトが生成されたものであり、
前記誤り訂正符号PIが付加された(K×M×(N+P)))バイトの前記集合情報データブロックと、(S×(N+P))バイトの誤り訂正符号POブロックとが伝送あるいは記録媒体から読み出され送られて来た場合、前記(M×N)バイトで構成されるデータブロックに誤り訂正符号が付加された誤り訂正積符号ブロック(ECCブロック)を複数格納する容量を持つ第2のメモリを用いて、前記誤り訂正符号PI及びPOにより、前記集合データブロックのエラーデータバイトの第1の誤り訂正処理を行い、前記第1の誤り訂正処理を行った後のデータに対して、さらに第1のメモリを用いて、再度前記誤り訂正符号PIにより、行の誤り訂正処理を行うようにした。
【0019】
【発明の実施の形態】
以下、この発明の実施の形態を図面を用いて説明する。
【0020】
まず、図1〜図8を参照して、データ記憶再生装置における誤り訂正符号付加回路、および誤り訂正回路の構成をDVD(デジタル・バーサタイル・ディスク)の例を用いて説明する。
【0021】
はじめに、図1から図6を参照して、DVDの記録データの構造を説明する。
【0022】
図1は、DVDにおける物理セクタを得るためのデータ処理順序を示す図である。セクタは信号処理の段階に従って“データセクタ”、“記録セクタ”、および“物理セクタ”と呼ばれる。データセクタには、図2に示すように、メインデータが2048バイト、識別データ(ID)が4バイト、ID誤り検出符号(IED)(IDのエラーを検出するための符号)が2バイト、著作権管理情報(CPR MAI)が6バイト、および誤り検出信号(EDC)(このデータセクタの誤りを検出するための信号)が4バイト含まれる。このような、ID,IDE,CPR_MAI、EDCを付加する工程が図1のステップA1乃至A3である。ステップA1で、メインデータにIDが付加される。ステップA2でさらにIEDが付加される。さらにステップA3でCPR_MAIが付加される。
【0023】
次に、メインデータに対するEDCが算出され、このEDCがメインデータに付加される。次に、スクランブルデータがデータセクタのメインデータ(2048バイト)に加えられる(ステップA4,A5、A6)。その後、スクランブル後の16個のデータセクタが集合され、この16個のデータセクタに対して、クロスリードソロモン誤り訂正符号が生成及び付加される(ステップA6)。記録セクタはECCが付加された後のセクタであり、誤り訂正符号PI、および誤り訂正符号POが付加されたデータセクタである(ステップA7)。物理セクタは、記録セクタの91バイトごとの先頭に同期符号(SYNC符号)を加えた8/16変調後のセクタである(ステップA8)。
【0024】
続いて、DVDのデータセクタの構造についてさらに図2を用いて説明する。
【0025】
データセクタは、2048バイトのメインデータを含む2064バイトすなわち172バイト×12行から成る。即ち、データセクタには、メインデータが2048バイト、識別データ(ID)が4バイト、ID誤り検出符号(IED)が2バイト、著作権管理情報(CPR MAI)が6バイト、および誤り検出符号(EDC)が4バイト含まれる。
【0026】
図3には、ステップA4でメインデータ(2048バイト)にスクランブルを施すスクランブルデータSkを発生する帰還形シフトレジスタを示している。スクランブルデータSkを発生するための初期値としては、例えばデータセクタのIDの一部のデータが用いられる。スクランブルデータSkは、データセクタのメインデータ(2048バイト)Dkをスクランブルする。これによりスクランブル後のメインデータDk’は、Dkに対してSk(k=0〜2047)が排他的論理和処理された結果となる。
【0027】
図4を用いてECCブロックの構成について説明する。
【0028】
データブロックは、172バイト×12行のデータセクタが16個集まった172列×192行として形成される。この172列×192行に対してリードソロモン誤り訂正符号が生成されて付加される。まず、172列の各列に対して16バイトの誤り訂正符号POが生成されて付加される。PO系列の各列は、192バイト+16バイト、すなわち208バイトで構成される。次に、誤り訂正符号POの行を含む208行すべての行に対して、10バイトの誤り訂正符号PIが生成され付加される。誤り訂正符号PI,POが付加された182列×208行が一つのECCブロックである。なお、PO,PIの生成順序を逆にしても全く同じ符号パターンが得られる。
【0029】
上記ECCブロックの縦方向の1列をPO系列、横方向の1行をPI系列と呼ぶ。1つのPO系列は192バイト+16バイト、即ち208バイトで構成され、1系列内で最大8バイトの誤り訂正が可能である。1つのPI系列は172バイト+10バイト、即ち182バイトで構成され、1系列内で最大5バイトの誤り訂正が可能である。
【0030】
次に、図5および図6を参照して記録セクタの構造について説明する。
【0031】
208行×182列からなるECCブロックに対して、誤り訂正符号POを構成している16行が、1行ごとに分離される。そして、分離された各行は、192行のデータ部の12行ごとの間に1行ずつ挿入され、図6に示すように再配置された形となる。これをPOの行インタ−リーブと言う。したがって、行インターリーブ後のECCブロックは、13行×182バイト(=PIを伴うデータ(12行分)+PO(1行分))の部分が、16個集まって構成される。
【0032】
1つの記録セクタは、図5に示すように、PIを加えたデータ(12行分)+PO(1行分)、即ち(13行×182バイト)で構成されたセクタを指し、行インターリーブ後のECCブロックは、図6に示すように、16個の記録セクタで構成されることを意味する。
【0033】
物理セクタは、13行×182バイトの記録セクタ(2366バイト)に対し、各行の91バイトごとの先頭に同期(SYNC)符号を加え、かつ、0行から行ごとに順次変調したものである。91バイトのデータの先頭にSYNCコードを加えたものをSYNCフレームと呼ぶ。よって、物理セクタは16組×2SYNCフレームから構成される。
【0034】
続いて、図7および図8を参照して、データ記録装置における誤り訂正符号付加回路について説明する。
【0035】
図7において、ホストから送信されたユーザーデータは、バッファメモリ2に順次格納される。格納されたユーザデータは、バッファメモリ201から取り出される際、セクタ情報付加手段202、EDC生成及び付加手段203、スクランブル手段204により処理される。この処理は、2048バイトのメインデータごとに処理され、1つのデータセクタに変換される。
【0036】
セクタ情報付加手段202は、識別データ(ID)4バイト、ID誤り検出符号(IED)2バイト、著作権管理情報(CPR_MAI)6バイト、をメインデータに付加する。EDC生成及び付加手段203は、計2060バイトのデータに対して誤り検出符号(EDC)4バイトを生成して付加し、計2064バイトのデータセクタを生成する。スクランブル手段204は、データセクタ中のメインデータをスクランブルする。
【0037】
スクランブルされたデータセクタは、ECCメモリ205に順次格納される。このECCメモリ205内には、172バイト×12行のデータセクタが16個集まった172列×192行のデータブロックが形成される。この172列×192行のデータブロックに対して、PI生成及び付加手段206、PO生成及び付加手段207により、誤り訂正符号が生成されて付加される。これにより、1つのECCブロックが形成される。
【0038】
前記ECCブロックは、先に説明したように、行インターリーブされた上で、変調・同期付加手段208に送信される。変調・同期付加手段208は、入力された行インターリーブされたECCブロックに対し、8ビットの入力データを16ビットの符号語に変換する。つまり8/16変調を施す。次に、入力データの91バイトごとの先頭にSYNC符号を付加して物理セクタを形成する。形成された物理セクタは、記録データとして送信され媒体に記録される。
【0039】
ここで、誤り訂正符号の効果について説明する。
【0040】
誤り検出及び訂正手段を含むデータ再生系は、記録データを再生する。再生処理では、再生された物理セクタのデータに誤りが発生した場合、誤りを含んだECCブロックに対し誤り訂正符号を用いて誤り訂正を行う。誤り検出及び訂正手段は、その訂正能力の範囲内においては、本来の誤りを含まないECCブロックを復元することができる。
【0041】
次に図8を参照してデータ再生側における誤り訂正符号生成処理方式を説明する。記録媒体から読み込まれた再生データは、同期分離・復調手段221により、同期符号と分離された後、さらに8/16変調データに対する復調が行なわれる。これにより記録セクタが取り出される。ただし記録データを記録、及び再生する際に、ディスクの欠陥や雑音、ジッタやクロストークなどが原因となり誤り(再生信号エラー)が発生するため、再生データには誤りが含まれる。
【0042】
取り出された記録セクタは、ECCメモリ205に順次格納され、16記録セクタで構成される182列×208行のECCブロックが構築される。この182列×208行のECCブロックに対して、PO訂正手段222、PI訂正手段223により誤り訂正が行なわれ、再生信号のエラーが修復される。
【0043】
PI訂正手段223は、ECCブロックの各行に対して誤りパターン検出値シンドロームを計算し、誤りが検出された場合には、誤り訂正を行う。シンドロームは、本来のデータが誤り無く再生された場合には0となる。信号の記録や伝送の途中でデータの誤りが生じたときには、シンドロームは、その誤りが生じた位置を示す誤り位置と、誤りの状態を示す誤りパターンによって決定される値となる。
【0044】
PO訂正手段222は、PO系列の208バイトのデータをメモリ205より取り出し、所定の演算を施す。この演算により、シンドロームが0でない場合は、そのPO系列の誤り訂正を行なう。この誤り訂正処理では、16バイトの誤り訂正符号POにより、系列内で最大8バイトの誤り訂正が可能である。被訂正データに対して誤り訂正が行なわれ、誤り訂正符号生成時点のデータが復元された場合には、シンドロームは0となる。上記操作がECCブロックの182列の全てについて行われる。
【0045】
1つのPO系列に対して8バイト以上の誤りが存在する場合、PO訂正手段222により誤りを訂正することは不可能となる。しかし、この場合においても、PI訂正手段223によりPI系列に対して最大5バイトの誤り訂正が可能であるため、182列に対してPO訂正を施した時点で1つのPI系列に含まれる誤りが5バイト以内であれば、その誤りを訂正可能である。
【0046】
さらに、PO訂正、PI訂正を繰り返すことで、1回のPO訂正、PI訂正で訂正できなかった誤りについても訂正できる可能性がある。全てのシンドロームが0となった時点でECCブロックの誤り訂正は終了する。
【0047】
誤り訂正されたECCブロックは、スクランブル解除手段224に送信される。スクランブル解除手段224は、スクランブルされたデータセクタのメインデータ2048バイトにスクランブルデータを加算(排他的論理和演算)し、メインデータのスクランブルを解除した上でバッファメモリ201に格納する。
【0048】
EDC誤り検出手段225は、データセクタに含まれている誤り検出符号(EDC)4バイトを基にデータセクタの誤り検出し、誤りが検出された場合はそのセクタの再生をやり直す。バッファメモリ201に格納されたデータセクタは、順次ホストに送信される。
【0049】
ところで、バッファメモリ205、201としては、コストが低く容量が大きなDRAM(Dynamic−RAM)が使用される。しかし、DRAMの構造上の理由からデータのパターンやメモリの実装状態によっては、まれにメモリ上のデータが破損(メモリエラー)する場合がある。メモリ上のデータの一部が破損(メモリエラー)し、データブロックが改変された状態において、誤り訂正符号PI,POを生成及び付加した場合、その誤り訂正符号PI,POはメモリエラーによって改変されたデータに対して正しい、誤り訂正符号となる。この改変されたデータに対して生成された誤り訂正符号をもつECCブロックをそのまま記録し、再生するならば、再生後に誤り訂正処理を行ったとしても改変されたデータが復元されてしまう。
【0050】
ここで、図9を参照して、172バイト×192行のデータブロック36の一部に対し、メモリエラー32が発生しデータブロックが改変された場合について説明する。
【0051】
まず、172列の各列に対して誤り訂正符号POがPO生成及び付加手段9により、生成及び付加されるが、列31の誤り訂正符号PO33(16バイト)はメモリエラー32によって改変されたデータをもとに生成される。
【0052】
次に、誤り訂正符号POを含む208行のすべての行に対して、PI生成及び付加回路8により10バイトの誤り訂正符号PIが生成され付加される。行34に対して生成される誤り訂正符号PI36(10バイト)は、メモリエラー32によって改変されたデータをもとに生成される。
【0053】
更に、16行の誤り訂正符号POに対して生成される誤り訂正符号PI37は、メモリエラー32によって改変されたデータをもとに生成された誤り訂正符号PO33を含むデータをもとに生成される。
【0054】
この結果、メモリエラー32によって改変されたデータブロックに対して正常な、誤り訂正符号が付加される。このとき、エラー32が存在する208行に対するPI系列、および182列に対するPO系列の誤りパターン検出値シンドロームは全て0であり、ECCブロックとしては誤りがないものと見なされる。実際には、メモリエラー32により、本来のデータは改変されたものである。
【0055】
ここで、上記改変されたデータブロックをもとに生成されたECCブロックを記録媒体に記録し、この記録媒体から再生した際の再生データについて考える。
【0056】
再生データは、誤り訂正符号を用いて誤り訂正処理が施される。ここで、再生生されたデータに発生した誤りは、訂正能力の範囲内において訂正され、再生データが復元される。しかし記録前に含まれていたメモリエラーを訂正することはできない。即ち、誤り訂正符号PO33を用いてPO系列31の誤り訂正を行ったとしても、メモリエラー32を含んだデータが再現されたうえで誤り訂正が正常に終了し、本来のユーザーデータは復元不可能となってしまう。
【0057】
また再生側において、バッファメモリ上のデータにメモリエラーが発生した場合は、メモリエラーを含んだデータをユーザデータとしてホストに送信してしまう可能性がある。
【0058】
(本発明が着目している点)
上記したように、メモリ上のデータが破損(エラー発生)した場合、メモリエラーにより改変されたデータをもとに誤り訂正符号を生成し、記録媒体に記録するため、再生時このデータを読み出し誤り訂正処理を行ったとしても、エラーにより改変されたデータは復元されるが、本来の正しいデータを復元することは不可能となる。
【0059】
また、再生時に、誤り訂正後のメモリ上のデータが破損(エラー発生)した場合、誤ったデータをホストに送信してしまう可能性がある。
【0060】
メモリ上のデータ破損(エラー発生)を防ぐためには、データを保存するメモリをデータ破損が発生しない構造のメモリ、例えばS−RAM等で実現することが必要となるが、この構成はコストの面で好ましくない。
【0061】
そこで、本発明では、メモリ上でエラーが起こった場合においても、本来のデータを損失することなく誤り訂正符号生成処理が行えるようにした誤り訂正符号生成処理方法とその装置、方法を用いた記録装置、再生装置、伝送装置及び受信装置を提供することである。
【0062】
(本発明の基本的概念)
本発明における誤り訂正符号生成処理方式は、セクタメモリ(例えばSRAMで構成される)と、PIを生成及び付加するPI生成及び付加手段と、PIを付加されたデータを格納するバッファメモリと、POを生成及び付加するPO生成及び付加手段と、行メモリ(例えばSRAMで構成される)と、PI訂正を行なうPI訂正手段と、PO訂正を行なうPO訂正手段とを備え、
前記セクタメモリを用いてデータに誤り訂正符号PIを付加し、PI付加データをバッファメモリに格納し、このバッファメモリからのPI付加データに対して、当該PI付加データの伝送あるいは記録媒体への記録前に、前記行メモリを用いてPI訂正を行ない、これによりメモリエラーを修復することを可能とするものである。
【0063】
上記の処理に対する、再生側においては、データをホストに送信する前に再度のPI訂正を行なうことによりメモリエラーを修復することを可能とする。
【0064】
またこの発明は、上記セクタメモリと、PI生成及び付加手段と、バッファメモリと、PO生成及び付加手段と、PI訂正手段と、PO訂正手段とを備え、
前記セクタメモリを用いてデータに誤り訂正符号PIを付加し情報データブロック(PI付加データ)を生成し、このPI付加データをバッファメモリに格納し、当該PI付加データの伝送あるいは記録媒体への記録前に前記バッファメモリを用いてPI訂正を行ない、これによりメモリエラーを修復することを可能とするものである。
【0065】
またこの発明は、上記PI生成及び付加手段と、バッファメモリと、PO生成及び付加手段と、行メモリと、PI訂正手段と、PO訂正手段とを備え、バッファメモリ格納前のデータを用いて誤り訂正符号PIを生成し、前記データに誤り訂正符号PIを付加した情報データブロック(PI付加データ)を生成し、バッファメモリに格納し、前記バッファメモリからのPI付加データを伝送あるいは記録する前に行メモリを用いてPI訂正を行なうことにより、メモリエラーを修復することを可能とするものである。
【0066】
またこの発明は、上記セクタメモリと、PI生成及び付加手段と、バッファメモリと、PO生成及び付加手段と、PI訂正手段と、PO訂正手段とを備え、前記セクタメモリを用いてデータに誤り訂正符号PIを付加して情報データブロック(PI付加データ)を生成し、このPI付加データをバッファメモリに格納し、このバッファメモリからのPI付加データを伝送あるいは記録した後に、再生側においてホストコンピュータ伝送前に前記PI付加データに対してPI訂正を行なうことにより、メモリエラーを修復することを可能とするものである。
【0067】
以下、本発明の特徴部を具体的な実施例について、図面を用いて詳細に説明する。
【0068】
まず、図10を参照して、本発明の第1の実施形態であるデータ記録装置における誤り訂正符号付加回路について説明する。ホストから送信されたユーザーデータ(メインデータ)はセクタメモリ1に順次格納される。このとき、セクタ情報付加手段5は、メインデータ2048バイトに対して、識別データ(ID)4バイト、ID誤り検出符号(IED)2バイト、著作権管理情報(CPR_MAI)6バイトを付加する。EDC生成及び付加手段6は、ID,IED,CPR_MAIを含む計2060バイトのデータに対し誤り検出符号(EDC)4バイトを生成及び付加する。スクランブル手段7は、スクランブルデータをメインデータ2048バイトに加算(排他的論理和演算)し、スクランブルされたデータセクタを生成する。
【0069】
PI生成及び付加手段8は、セクタメモリ1に格納されたスクランブルされたデータセクタ(又はデータブロック)(172バイト×12行)の各行(172バイト)に対して、誤り訂正符号PI(10バイト)を生成して付加する。これにより182バイト×12行のPIが付加したデータセクタ(情報データブロック)が生成される。
【0070】
セクタメモリ1は、PIが付加したデータセクタ(182バイト×12行)を格納できる容量を持ち、例えばSRAM(Static−RAM)で構成される。SRAMは、その構造上、格納されたデータに誤りが発生することが極めて少なく、前記セクタメモリ1を用いて生成された誤り訂正符号PIは、エラーのないユーザデータに対して生成された正しい符号であると補償できる。
【0071】
セクタメモリ1からのPI付加データ(又は182バイト×12行の情報データブロックと称してもよい)は、順次バッファメモリ2に格納される。バッファメモリ2内では182バイト×12行のデータセクタ(PI付加データ)が16個集合され、182バイト×192行の集合PI付加データ(または集合情報データブロック)が構築される。
【0072】
ここでPO生成及び付加手段9は、バッファメモリ2に格納された集合情報データブロック(182バイト×192行)の各列(192バイト)に対して、誤り訂正符号PO(16バイト)を生成して付加する。この結果、バッファメモリ2に格納された集合情報データブロックに対して、誤り訂正符号PI,POが付加されたECCブロックが構築される。
【0073】
バッファメモリ2は、ホストコンピュータから送信されたデータを記録媒体に記録するまで蓄積する機能を持つために、ECCブロックを複数個格納するに十分な容量を持ち、例えばDRAMで構成されている。DRAMでは、データのパターンやメモリの実装状態によって、まれにメモリ上のデータが破損する場合がある。いわゆるメモリエラーが発生する場合がある。しかしこのメモリエラーは、本発明によりデータ処理方法によれば、後述するように取り除かれることになる。
【0074】
バッファメモリ2内のECCブロックは、その1行(182バイト)ずつ読み出され、行メモリ3に格納される。PI訂正手段10は、行メモリ3を用いてPI訂正処理を行う。ここで先のメモリエラーは訂正され、本来のデータ(正常なECCブロック)に回復する。行メモリ3は、例えばSRAMで構成され、PI系列の1行(182バイト)を格納できる容量をもつ。
【0075】
行メモリ3から出力された行データは、順次変調・同期付加手段4に送られ、8/16変調と同期符号が付加され、記録媒体への記録データとして出力される。
【0076】
図11は、バッファメモリ2から出力されたECCブロックのデータの一部にエラー(上記したメモリエラー、あるいは外部ノイズなどにより生じたエラー42)が生じている様子を示している。
【0077】
本発明では、誤り訂正符号PIは、バッファメモリにデータが格納される前にセクタメモリ1を用いて誤り訂正符号PI生成されている。したがって、行42を含む192行全体にわたって、誤り訂正符号PIは、本来のデータを元とする誤り訂正符号である。つまり、図11の誤り訂正符号PIは、エラー42の存在しないデータに対して作成された誤り訂正符号である。
【0078】
一方、PO生成及び付加手段9は、バッファメモリ2と相俟って各列(192バイト)のデータを元に誤り訂正符号POを生成する。したがって、列41に関する誤り訂正符号PO44(16バイト)は、メモリエラー42を含むデータを元にして作成された誤り訂正符号である。
【0079】
積符号においては、誤り訂正符号に対する誤り訂正符号の部分48は、先に符号PIを生成及び付加し、次に符号POを生成して付加しても、先に符号POを生成付加し、次に符号PIを生成付加しても全く同じ符号パターンが得られる性質がある。
【0080】
ここで、誤り訂正符号PIは、エラー発生前の本来のデータに対して付加された正しい誤り訂正符号である。よって、誤り訂正符号PIのブロックに対して生成及び付加された誤り訂正符号POは本来のデータを元とする正しい誤り訂正符号と言える。また、図11に示した172列のうち列41を除く他の列(171)に付加されている誤り訂正符号POも正しい誤り訂正符号と言える。
【0081】
このようなECCブロックがバッファメモリ2から行順に読み出され、行メモリ3でPI訂正処理を施された場合、行45のエラー42は、容易にPI訂正される。つまり正しいデータの行45が復元される。また、エラー42を含んだデータに対して作成されたPO系の各行に対してもPI訂正が施されることにより、正しいPO系に訂正される。即ち、行46に対してPI訂正が施されることにより、1バイト43が訂正される。同様に他の行(図の三角印の位置)に関しても訂正が行なわれ、正しいPO系が生成されることになる。
【0082】
上記の処理は、行メモリ3において、ECCブロックの全ての行に対してPI訂正処理を行うものとして説明した。しかし、これに限らず、処理時間短縮のために図の三角印の位置の各行のみに対してPI訂正処理を行ってもよい。なぜならば、図の三角印の位置のPO系が正し誤り訂正符号であれば、メモリエラー42は、後で容易に訂正できるからである。
【0083】
上記の説明では、POブロックが集合データブロック内に1行ずつ分散されていないECCブロックを用いて説明した。しかし、実際のECCブロックは、図1、図6で説明したように誤り訂正符号POが、集合データブロック内に1行ずつ分散されている。
【0084】
図12は、上記した処理(図10に示した回路による処理)により得られたECCブロックが記録媒体から再生され、このECCブロックに対してエラー訂正処理を施す再生手段を示している。
【0085】
記録媒体から光ヘッドにより読み取られた再生データは、同期分離・復調手段11に導入される。この同期検出・復調手段11では、再生データから同期検出、8/16変調の復調が施される。これにより記録セクタが得られる。ただし、記録媒体に対してデータを記録、および再生する際に、ディスクの傷やノイズなどが原因となりデータに誤りが発生するため、記録セクタ内のデータには誤りが含まれる場合がある。
【0086】
取り出された記録セクタはバッファメモリ2に順次格納され、16記録セクタが集合され、バッファメモリ2内で182列×208行のECCブロックが形成される。この182列×208行のECCブロックに対して、PO訂正手段14、PI訂正手段10により、誤り訂正が行われる。
【0087】
ここで、PI訂正処理をPO訂正処理に先立って、POブロックに対して行うとが有効である。これは、POブロック内にメモリエラーが生じたとして、PI訂正により正しい誤り訂正符号POを復元することができるからである。
【0088】
誤り訂正されたECCブロックは、バッファメモリ2から1行(182バイト)ずつデータ伝送順に読み出され、セクタメモリ1に格納される。ここでPI訂正手段10は、セクタメモリ1を用いて各行の172バイトに対してPI訂正を行なう。これはPO訂正を行なったときに、バッファメモリ2においてメモリエラーが生じた場合、そのエラーを訂正するために有効である。
【0089】
次にスクランブル解除手段13は、スクランブルされたデータセクタのメインデータ(2048バイト)に対してスクランブルデータを換算(排他的論理和演算)し、スクランブル前のデータセクタを生成する。さらにEDC誤り検出手段12は、データセクタに含まれている誤り検出符号(EDC)4バイトを用いて、データセクタの誤りを検出する。データセクタに誤りがないことが検出されると、そのデータセクタはホストに送信される。
【0090】
上記の説明では、バッファメモリ2からセクタメモリ1にデータが格納されると、PI訂正手段10によりPI訂正が施されるとした。しかし、このPI訂正は、EDCにより誤りが検出されたときのみ行なうようにしてもよい。
【0091】
また、各行の誤りパターンの検出値シンドローム(10バイト)のうち、一部のみを計算して誤り検出を行い、誤りがあることが判定された時のみPI訂正を実行するようにしてもよい。つまり、誤り訂正符号PIによる誤り訂正処理は、誤り訂正符号PIのPバイトから得られる誤りパターン検出値(Pバイト)の内の一部(Rバイト、R<P)のみを計算して誤り検出を行い、誤りがあることが判定された時のみ、訂正処理を実行するのである。
【0092】
図13はこの発明のさらに他の実施の形態である。
【0093】
この実施の形態は、図10の実施例に示した行メモリ3を省略したタイプである。図13の実施例では、PI訂正手段10は、バッファメモリ2を用いてPI訂正を行なう。その他の構成は、先の図10の実施例と同じであるために説明は省略する。メモリエラーが発生した場合、PO生成及び付加手段9により生成された誤り訂正符号POは、メモリエラーを含むデータを元データとする誤り訂正符号となる。しかし、誤り訂正符号POの全ての行に対してPI訂正を行なうことにおり、メモリエラーを含んだデータを元データとする誤り訂正符号POをは、本来のデータを元データとする誤り訂正符号POに回復される。
【0094】
この実施の形態では、PI訂正が行なわれた後のECCブロックは、バッファメモリ2内に存在するために、メモリエラーが含まれる可能性がある。しかしながら、誤り訂正符号POは本来のデータを元データとする誤り訂正符号に一旦回復されているために、メモリエラーが含まれたとしても再生時には、PO訂正により、そのエラーは訂正されることになる。
【0095】
図14は、さらにこの発明の他の実施の形態である。
【0096】
ホストコンピュータからのユーザデータは、セクタ情報付加手段15により、2048バイトのメインデータごとに1つのデータセクタに変換される。
【0097】
セクタ情報付加手段15は、識別データ(ID)4バイト、ID誤り検出符号(IED)2バイト、著作権管理情報(CPR_MAI)6バイト、をメインデータに付加する。EDC生成及び付加手段16は、計2060バイトのデータに対して誤り検出符号(EDC)4バイトを生成して付加し、計2064バイトのデータセクタを生成する。スクランブル手段17は、データセクタ中のメインデータをスクランブルする。
【0098】
スクランブルされたデータセクタは、バッファメモリ2に順次格納される。このバッファメモリ2内には、172バイト×12行のデータセクタが16個集まった172列×192行のデータブロックが形成される。
【0099】
PI生成及び付加手段18は、スクランブル手段17からのデータセクタを受け取る、そして各行(172バイト)のデータに対して、順次10バイトの誤り訂正符号PIを生成し、バッファメモリ2に供給する。これによりバッファメモリ2には、182バイト×192行のPI付データブロックが構築される。このときの誤り訂正符号PIは、本来のデータを元データとする誤り訂正符号である。他の部分は、先に説明した実施の形態と同じであるから説明は省略する。
【0100】
図15は、上記の誤り訂正符号生成回路に対応する誤り訂正回路の例である。
【0101】
この実施の形態は、図12に示した実施の形態と殆ど同様であるが、バッファメモリ2の出力が行メモリ3に与えられる点が異なる。バッファメモリ2のECCブロックに対して、PI訂正手段10は、バッファメモリ2を用いて少なくともPOを含む行に対する誤り訂正を行なう。これにより誤り訂正符号POは正しい誤り訂正符号となる。次に、PO訂正手段14によりPO訂正処理を行う。PO訂正処理を行った後のデータは、伝送順に行ごとに行メモリ3に供給される。そしてPI訂正手段10はこの行メモリ3を用いて、PI訂正を行なう。これにより、PO訂正時にバッファメモリ2においてメモリエラーが生じても、これは行メモリ3において訂正されることになる。
【0102】
行メモリ3から出力されたデータは、スクランブル解除手段13にてスクランブルが解除され、データセクタとなり、このデータセクタに対してEDC誤り検出手段12による誤り検出が行なわれる。
【0103】
図16はさらにまたこの発明の他の実施の形態である。
【0104】
図13の実施の形態に比べてバッファメモリ2を利用したPI訂正手段10が省略されている。その他の部分は、図13の実施の形態と同じである。この実施の形態では、再生系統において、バッファメモリ2に構築されたECCブロックのエラー訂正を行なう場合、PI訂正手段10によりPI訂正をPO訂正よりも先に実行する。
【0105】
上記したように、本発明は、メモリ上でエラーが起こった場合においても、本来のデータを損失することなく誤り訂正符号生成処理が行える信号伝送/記録及び再生装置に有効である。また、本発明ば、バッファメモリの不良検査を簡略化し歩留まりを上げる代わりに、メモリエラーの発生率を挙げた場合でも、本来のデータを損失することなく記録媒体への記録が可能であり、安価な信号伝送/記録及び再生装置に採用して有効である。伝送受信系としては、デジタル通信分野の種々の機器に適用可能である。携帯電話器のような無線器、コンピュータ間の送受信端末、テレビジョン送受信機などである。また記録再生系の分野としては、本発明は、DVD機器、CD機器、さらには通信機能を採用したメモリデバイス等に採用されて有効である。
【0106】
【発明の効果】
以上説明したようにこの発明は、メモリ上でデータエラー(メモリエラー)が生じた場合であっても、本来の正しいデータを復元することが可能な誤り訂正符号を用いたデータ処理方法、この方法を採用した記録系或は再生系の装置、伝送系及び受信系の装置を提供できる。
【図面の簡単な説明】
【図1】DVDにおける物理セクタを得るまでのデータ処理手順を示す説明図。
【図2】DVDにおけるデータセクタの構成を示す説明図。
【図3】スクランブルデータを発生させる帰還形シフトレジスタの説明図。
【図4】ECCブロックを示す説明図。
【図5】記録セクタを示す説明図。
【図6】誤り訂正符号POがインターリーブされたECCブロックを示す説明図。
【図7】従来の記録再生装置の記録系における誤り訂正符号生成方式を説明するために示したブロック図。
【図8】従来の記録再生装置の再生系における誤り訂正処理方式を説明するために示したブロック図。
【図9】従来の記録再生装置において、DRAMメモリエラーが発生した場合の誤り訂正符号を説明するための図。
【図10】本発明に係る誤り訂正符号生成方法の一実施例を説明するために示した記録系のブロック図。
【図11】本発明に係る誤り訂正符号生成方法により得られたECCブロックのデータ構造を説明するために示した説明図。
【図12】本発明に係る誤り訂正符号生成方法により得られたECCブロックに対して、エラー訂正を行なう方法の一実施例を説明するために示した再生系のブロック図。
【図13】本発明に係る誤り訂正符号生成方法の他の実施例を説明するために示した記録系のブロック図。
【図14】本発明に係る誤り訂正符号生成方法のまた他の実施例を説明するために示した記録系のブロック図。
【図15】本発明に係る誤り訂正符号生成方法により得られたECCブロックに対して、エラー訂正を行なう方法の他の実施例を説明するために示した再生系のブロック図。
【図16】本発明に係る誤り訂正符号生成方法と、誤り訂正符号を用いてエラー訂正を行なうエラー訂正方法を採用した一実施例を説明するために示した記録及び再生系のブロック図。
【符号の説明】
1…セクタメモリ、2…バッファメモリ、3…行メモリ、4…変調・同期付加手段、5…セクタ情報付加手段、6…EDC生成及び付加手段、7…スクランブル手段、8…PI生成及び付加手段、9…PO生成及び付加手段、10…PI訂正手段、11…同期分離・復調手段、12…EDC誤り検出手段、13…スクランブル解除手段、14…PO訂正手段。
[0001]
BACKGROUND OF THE INVENTION
The present invention is an error correction code generation process effective for recording video data, audio data, computer data, etc. on a medium (for example, an optical disk, a magnetic disk, etc.) or reproducing data recorded on the medium. Regarding the method.
[0002]
The present invention also relates to an error correction code generation processing method that is effective when the above-mentioned video data or the like is transmitted or received.
[0003]
Furthermore, the present invention relates to a recording apparatus, a reproducing apparatus, a transmission apparatus, and a receiving apparatus that employ the above error correction code processing method.
[0004]
In particular, the present invention is characterized by a method of performing error correction processing using a buffer memory when performing error correction code processing.
[0005]
[Prior art]
When video data, audio data, computer data, or the like is recorded on, for example, an optical disk or a magnetic disk, an error correction code is added to the data block. In the error correction code addition process, the data block is temporarily stored in the memory, and an error correction code for the row and column of the data block is generated.
[0006]
An error correction code added to a row is usually referred to as an inner parity, abbreviated as PI, and an error correction code added to a column is usually referred to as an outer parity, abbreviated as PO.
[0007]
[Problems to be solved by the invention]
In the error correction code addition process, when the data block is temporarily stored in the memory before the error correction code is generated, the data on the memory may be partially damaged (error occurs). This is considered to be caused by the data pattern and the memory mounting state. In addition, sudden noise from the outside may have an effect.
[0008]
The error that occurs at this time is called a memory error.
[0009]
In such a case, an error correction code for a data block in which a memory error has occurred (hereinafter referred to as a modified data block) is generated, and this error correction code is added to the modified data block and recorded on a recording medium. .
[0010]
When reproducing the recording medium, the error correction processing circuit executes error correction processing on the modified data block using the error correction code. That is, the modified data block is correctly reproduced. This means that the data block including the memory error has been accurately reproduced. However, the memory error is an error unnecessary for the original data.
[0011]
Therefore, when the above memory error occurs, it is impossible to restore original correct data.
[0012]
Therefore, the present invention provides a data processing method using an error correction code capable of restoring original correct data even when a data error (memory error) occurs in a memory, and a recording employing this method. An object of the present invention is to provide a system or reproduction system apparatus, a transmission system, and a reception system apparatus.
[0013]
[Means for Solving the Problems]
The basic concept of the error correction code processing method of the present invention is as follows.
[0014]
The present invention uses the first memory to generate and add P bytes of the error correction code PI to each row of a data block composed of (M × N) bytes of M rows × N columns,A capacity to store a plurality of error correction product code blocks (ECC blocks) in which an error correction code is added to the data block composed of (M × N) bytes.In the second memory, K pieces of information data blocks to which the error correction code PI is added, which is composed of (M × (N + P)) bytes in M rows × (N + P) columns, are collected, and (K × (M × (N + P))) an error correction product code block (ECC) in which an S byte of an error correction code PO is generated and added to each column of the set information data block using the second memory. ECC block after the error correction processing is performed using the error correction code PI added to each row before the ECC block is read from the second memory and transmitted. Are sequentially transmitted or recorded in a recording medium in the row order.
[0015]
In the present invention,The set information data block includes an error correction code PI in each row of the (K × (M × N)) byte set data block in which K data blocks composed of (M × N) bytes of M rows × N columns are set. The error correction code PO block is a block in which the S byte of the error correction code PO is generated in each column of the set information data block and the block of the error correction code PI. Yes,
The collective information data block of (K × M × (N + P)) bytes to which the error correction code PI is added and the error correction code PO block of (S × (N + P)) bytes are transmitted or read from the recording medium. If you are sent and sent,A capacity to store a plurality of error correction product code blocks (ECC blocks) in which an error correction code is added to the data block composed of (M × N) bytes.Using the second memory, the first error correction process of the error data byte of the aggregate data block is performed by the error correction codes PI and PO, and the data after the first error correction process is performed And moreFirstThen, the error correction processing of the row is performed again by the error correction code PI.
[0019]
DETAILED DESCRIPTION OF THE INVENTION
Embodiments of the present invention will be described below with reference to the drawings.
[0020]
First, with reference to FIGS. 1 to 8, the configuration of an error correction code adding circuit and an error correction circuit in a data storage / reproducing apparatus will be described using an example of a DVD (digital versatile disk).
[0021]
First, the structure of recorded data on a DVD will be described with reference to FIGS.
[0022]
FIG. 1 is a diagram showing a data processing order for obtaining a physical sector in a DVD. Sectors are called “data sectors”, “recording sectors”, and “physical sectors” according to the stage of signal processing. In the data sector, as shown in FIG. 2, the main data is 2048 bytes, the identification data (ID) is 4 bytes, the ID error detection code (IED) (code for detecting an ID error) is 2 bytes, Rights management information (CPR MAI) includes 6 bytes, and an error detection signal (EDC) (signal for detecting an error in the data sector) includes 4 bytes. Such steps of adding ID, IDE, CPR_MAI, and EDC are steps A1 to A3 in FIG. In step A1, an ID is added to the main data. In step A2, IED is further added. Further, CPR_MAI is added at step A3.
[0023]
Next, the EDC for the main data is calculated, and this EDC is added to the main data. Next, scramble data is added to the main data (2048 bytes) of the data sector (steps A4, A5, A6). Thereafter, 16 scrambled data sectors are aggregated, and a cross-reed-Solomon error correction code is generated and added to the 16 data sectors (step A6). The recording sector is a sector after the ECC is added, and is a data sector to which the error correction code PI and the error correction code PO are added (step A7). The physical sector is a sector after 8/16 modulation in which a synchronization code (SYNC code) is added to the head of every 91 bytes of the recording sector (step A8).
[0024]
Next, the structure of the DVD data sector will be further described with reference to FIG.
[0025]
The data sector is composed of 2064 bytes containing 2048 bytes of main data, that is, 172 bytes × 12 rows. That is, the data sector includes 2048 bytes of main data, 4 bytes of identification data (ID), 2 bytes of ID error detection code (IED), copyright management information (CPR). MAI) includes 6 bytes, and error detection code (EDC) includes 4 bytes.
[0026]
FIG. 3 shows a feedback shift register that generates scrambled data Sk that scrambles the main data (2048 bytes) in step A4. As an initial value for generating the scrambled data Sk, for example, partial data of the data sector ID is used. The scrambled data Sk scrambles the main data (2048 bytes) Dk of the data sector. As a result, the scrambled main data Dk ′ is the result of the exclusive OR operation of Sk (k = 0 to 2047) with respect to Dk.
[0027]
The configuration of the ECC block will be described with reference to FIG.
[0028]
The data block is formed as 172 columns × 192 rows in which 16 data sectors of 172 bytes × 12 rows are collected. A Reed-Solomon error correction code is generated and added to the 172 columns × 192 rows. First, a 16-byte error correction code PO is generated and added to each of 172 columns. Each column of the PO series is composed of 192 bytes + 16 bytes, that is, 208 bytes. Next, a 10-byte error correction code PI is generated and added to all 208 lines including the line of the error correction code PO. One ECC block is 182 columns × 208 rows to which the error correction codes PI, PO are added. Even if the PO and PI generation order is reversed, the same code pattern can be obtained.
[0029]
One column of the ECC block in the vertical direction is called a PO series, and one row in the horizontal direction is called a PI series. One PO sequence is composed of 192 bytes + 16 bytes, that is, 208 bytes, and error correction of a maximum of 8 bytes is possible within one sequence. One PI series is composed of 172 bytes + 10 bytes, that is, 182 bytes, and error correction of a maximum of 5 bytes is possible within one series.
[0030]
Next, the structure of the recording sector will be described with reference to FIGS.
[0031]
For an ECC block having 208 rows × 182 columns, 16 rows constituting the error correction code PO are separated for each row. Each separated row is inserted one by one between every 12 rows of the data portion of 192 rows and rearranged as shown in FIG. This is called PO row interleaving. Therefore, the ECC block after row interleaving is configured by collecting 16 rows of 13 rows × 182 bytes (= data with PI (for 12 rows) + PO (for one row)).
[0032]
As shown in FIG. 5, one recording sector indicates a sector composed of data (12 rows) + PO (1 row) with PI added, that is, (13 rows × 182 bytes). As shown in FIG. 6, the ECC block means that it is composed of 16 recording sectors.
[0033]
The physical sector is a recording sector (2366 bytes) of 13 rows × 182 bytes, in which a synchronization (SYNC) code is added to the head of every 91 bytes of each row, and the modulation is sequentially performed from row 0 to row. A 91-byte data with a SYNC code added to the head is called a SYNC frame. Therefore, the physical sector is composed of 16 sets × 2 SYNC frames.
[0034]
Next, an error correction code adding circuit in the data recording apparatus will be described with reference to FIGS.
[0035]
In FIG. 7, user data transmitted from the host is sequentially stored in the buffer memory 2. The stored user data is processed by the sector information adding unit 202, the EDC generating / adding unit 203, and the scramble unit 204 when being retrieved from the buffer memory 201. This process is performed for each 2048-byte main data and converted into one data sector.
[0036]
The sector information adding means 202 adds identification data (ID) 4 bytes, ID error detection code (IED) 2 bytes, and copyright management information (CPR_MAI) 6 bytes to the main data. The EDC generation / addition unit 203 generates and adds 4 bytes of error detection code (EDC) to a total of 2060 bytes of data, and generates a data sector of 2064 bytes in total. The scramble means 204 scrambles the main data in the data sector.
[0037]
The scrambled data sector is sequentially stored in the ECC memory 205. In the ECC memory 205, a data block of 172 columns × 192 rows in which 16 data sectors of 172 bytes × 12 rows are collected is formed. An error correction code is generated and added by the PI generation / addition means 206 and the PO generation / addition means 207 to the data block of 172 columns × 192 rows. Thereby, one ECC block is formed.
[0038]
As described above, the ECC block is row-interleaved and then transmitted to the modulation / synchronization adding unit 208. Modulation / synchronization adding means 208 converts 8-bit input data into a 16-bit code word for the input row-interleaved ECC block. That is, 8/16 modulation is performed. Next, a SYNC code is added to the head of every 91 bytes of the input data to form a physical sector. The formed physical sector is transmitted as recording data and recorded on the medium.
[0039]
Here, the effect of the error correction code will be described.
[0040]
A data reproduction system including error detection and correction means reproduces recorded data. In the reproduction process, when an error occurs in the reproduced physical sector data, error correction is performed on the ECC block including the error using an error correction code. The error detection and correction means can restore an ECC block that does not contain an original error within the range of the correction capability.
[0041]
Next, an error correction code generation processing method on the data reproduction side will be described with reference to FIG. The reproduction data read from the recording medium is separated from the synchronization code by the synchronization separation / demodulation means 221 and further demodulated with respect to the 8/16 modulation data. As a result, the recording sector is taken out. However, when recording and reproducing recorded data, errors (reproduced signal errors) occur due to disk defects, noise, jitter, crosstalk, etc., and therefore the reproduced data contains errors.
[0042]
The extracted recording sectors are sequentially stored in the ECC memory 205, and an ECC block of 182 columns × 208 rows composed of 16 recording sectors is constructed. An error correction is performed on the ECC block of 182 columns × 208 rows by the PO correction unit 222 and the PI correction unit 223, and the error of the reproduction signal is repaired.
[0043]
The PI correction unit 223 calculates an error pattern detection value syndrome for each row of the ECC block, and performs error correction when an error is detected. The syndrome is 0 when the original data is reproduced without error. When a data error occurs during signal recording or transmission, the syndrome has a value determined by an error position indicating the position where the error has occurred and an error pattern indicating the error state.
[0044]
The PO correction unit 222 takes out the 208-byte data of the PO series from the memory 205 and performs a predetermined calculation. If the syndrome is not 0 by this calculation, error correction of the PO sequence is performed. In this error correction processing, error correction of up to 8 bytes in the sequence is possible with a 16-byte error correction code PO. When error correction is performed on the data to be corrected and the data at the time of error correction code generation is restored, the syndrome is zero. The above operation is performed for all 182 columns of the ECC block.
[0045]
If there is an error of 8 bytes or more for one PO sequence, it is impossible to correct the error by the PO correction means 222. However, even in this case, since the PI correction unit 223 can correct an error of up to 5 bytes for the PI sequence, an error included in one PI sequence is generated when PO correction is performed on the 182 columns. If it is within 5 bytes, the error can be corrected.
[0046]
Further, by repeating PO correction and PI correction, there is a possibility that an error that could not be corrected by one PO correction or PI correction can be corrected. When all the syndromes become 0, error correction of the ECC block ends.
[0047]
The error-corrected ECC block is transmitted to the descrambling means 224. The scramble release means 224 adds the scramble data to the main data 2048 bytes of the scrambled data sector (exclusive OR operation), releases the scramble of the main data, and stores it in the buffer memory 201.
[0048]
The EDC error detection means 225 detects an error in the data sector based on 4 bytes of error detection code (EDC) included in the data sector, and when an error is detected, the sector is reproduced again. Data sectors stored in the buffer memory 201 are sequentially transmitted to the host.
[0049]
By the way, as the buffer memories 205 and 201, DRAM (Dynamic-RAM) with low cost and large capacity is used. However, due to the structure of the DRAM, the data on the memory may rarely be damaged (memory error) depending on the data pattern and the memory mounting state. If part of the data on the memory is damaged (memory error) and the data block is altered, and the error correction codes PI and PO are generated and added, the error correction codes PI and PO are altered by the memory error. This is an error correction code that is correct for the data. If an ECC block having an error correction code generated for the modified data is recorded and reproduced as it is, the modified data is restored even if error correction processing is performed after the reproduction.
[0050]
Here, with reference to FIG. 9, a case where a memory error 32 occurs and a data block is modified with respect to a part of the data block 36 of 172 bytes × 192 rows will be described.
[0051]
First, the error correction code PO is generated and added to the 172 columns by the PO generation and addition means 9, but the error correction code PO33 (16 bytes) in the column 31 is data modified by the memory error 32. Generated based on
[0052]
Next, the PI generation and addition circuit 8 generates and adds a 10-byte error correction code PI to all 208 lines including the error correction code PO. The error correction code PI 36 (10 bytes) generated for the row 34 is generated based on the data modified by the memory error 32.
[0053]
Further, the error correction code PI 37 generated for the 16-line error correction code PO is generated based on data including the error correction code PO 33 generated based on the data modified by the memory error 32. .
[0054]
As a result, a normal error correction code is added to the data block modified by the memory error 32. At this time, the error pattern detection value syndrome of the PI sequence for 208 rows in which error 32 exists and the PO sequence for 182 columns are all 0, and it is considered that there is no error as an ECC block. Actually, the original data is altered by the memory error 32.
[0055]
Here, consider the reproduction data when the ECC block generated based on the modified data block is recorded on the recording medium and reproduced from the recording medium.
[0056]
The reproduced data is subjected to error correction processing using an error correction code. Here, an error occurring in the reproduced data is corrected within the range of the correction capability, and the reproduced data is restored. However, the memory error included before recording cannot be corrected. That is, even if error correction of the PO sequence 31 is performed using the error correction code PO33, the data including the memory error 32 is reproduced and the error correction ends normally, and the original user data cannot be restored. End up.
[0057]
On the playback side, when a memory error occurs in the data on the buffer memory, there is a possibility that the data including the memory error is transmitted to the host as user data.
[0058]
(Points focused on by the present invention)
As described above, when data on the memory is damaged (error occurs), an error correction code is generated based on the data modified due to the memory error and recorded on the recording medium. Even if the correction process is performed, the data modified due to the error is restored, but the original correct data cannot be restored.
[0059]
Further, when data on the memory after error correction is damaged (error occurs) during reproduction, there is a possibility that the incorrect data is transmitted to the host.
[0060]
In order to prevent data corruption (error occurrence) on the memory, it is necessary to realize a memory for storing data with a memory having a structure that does not cause data corruption, such as an S-RAM. It is not preferable.
[0061]
Therefore, in the present invention, even when an error occurs in the memory, an error correction code generation processing method, an apparatus, and a recording method using the error correction code generation processing can be performed without losing the original data. An apparatus, a reproduction apparatus, a transmission apparatus, and a reception apparatus are provided.
[0062]
(Basic concept of the present invention)
The error correction code generation processing method according to the present invention includes a sector memory (for example, composed of SRAM), PI generation and addition means for generating and adding PI, a buffer memory for storing data to which PI is added, PO PO generation and addition means for generating and adding data, a row memory (for example, composed of SRAM), PI correction means for performing PI correction, and PO correction means for performing PO correction,
An error correction code PI is added to the data using the sector memory, the PI additional data is stored in the buffer memory, and the PI additional data from the buffer memory is transmitted or recorded on the recording medium. Before, PI correction is performed using the row memory, thereby making it possible to repair a memory error.
[0063]
On the playback side with respect to the above processing, it is possible to repair the memory error by performing the PI correction again before transmitting the data to the host.
[0064]
The present invention also includes the sector memory, PI generation and addition means, buffer memory, PO generation and addition means, PI correction means, and PO correction means,
An error correction code PI is added to the data using the sector memory to generate an information data block (PI additional data), the PI additional data is stored in a buffer memory, and the PI additional data is transmitted or recorded on a recording medium. PI correction is previously performed using the buffer memory, thereby making it possible to repair a memory error.
[0065]
The present invention also includes the PI generation and addition means, buffer memory, PO generation and addition means, row memory, PI correction means, and PO correction means, and uses the data before storing in the buffer memory. Before generating a correction code PI, generating an information data block (PI additional data) obtained by adding an error correction code PI to the data, storing it in a buffer memory, and transmitting or recording the PI additional data from the buffer memory By performing the PI correction using the row memory, it is possible to repair the memory error.
[0066]
The present invention also comprises the sector memory, PI generation / addition means, buffer memory, PO generation / addition means, PI correction means, and PO correction means, and error correction is performed on data using the sector memory. An information data block (PI additional data) is generated by adding a code PI, the PI additional data is stored in a buffer memory, and the PI additional data from the buffer memory is transmitted or recorded, and then transmitted to the host computer on the playback side. A memory error can be repaired by performing a PI correction on the PI additional data before.
[0067]
Hereinafter, specific examples of features of the present invention will be described in detail with reference to the drawings.
[0068]
First, an error correction code adding circuit in the data recording apparatus according to the first embodiment of the present invention will be described with reference to FIG. User data (main data) transmitted from the host is sequentially stored in the sector memory 1. At this time, the sector information adding means 5 adds 4 bytes of identification data (ID), 2 bytes of ID error detection code (IED), and 6 bytes of copyright management information (CPR_MAI) to 2048 bytes of main data. The EDC generation / addition means 6 generates and adds 4 bytes of error detection code (EDC) to a total of 2060 bytes of data including ID, IED, and CPR_MAI. The scramble means 7 adds the scramble data to the main data 2048 bytes (exclusive OR operation) to generate a scrambled data sector.
[0069]
The PI generation / addition means 8 generates an error correction code PI (10 bytes) for each row (172 bytes) of the scrambled data sector (or data block) (172 bytes × 12 rows) stored in the sector memory 1. Is generated and added. As a result, a data sector (information data block) to which PI of 182 bytes × 12 rows is added is generated.
[0070]
The sector memory 1 has a capacity capable of storing the data sector (182 bytes × 12 rows) added by the PI, and is composed of, for example, an SRAM (Static-RAM). The SRAM has an extremely low structure error due to its structure, and the error correction code PI generated using the sector memory 1 is a correct code generated for error-free user data. Can be compensated.
[0071]
PI additional data (or may be referred to as an information data block of 182 bytes × 12 rows) from the sector memory 1 is sequentially stored in the buffer memory 2. In the buffer memory 2, 16 data sectors (PI additional data) of 182 bytes × 12 rows are aggregated, and aggregated PI additional data (or aggregate information data block) of 182 bytes × 192 rows is constructed.
[0072]
Here, the PO generation and addition means 9 generates an error correction code PO (16 bytes) for each column (192 bytes) of the set information data block (182 bytes × 192 rows) stored in the buffer memory 2. To add. As a result, an ECC block in which the error correction codes PI and PO are added to the set information data block stored in the buffer memory 2 is constructed.
[0073]
Since the buffer memory 2 has a function of accumulating data transmitted from the host computer until it is recorded on a recording medium, the buffer memory 2 has a sufficient capacity to store a plurality of ECC blocks, and is configured by, for example, a DRAM. In a DRAM, data on a memory may be rarely damaged depending on a data pattern or a memory mounting state. A so-called memory error may occur. However, this memory error is eliminated as described later according to the data processing method of the present invention.
[0074]
The ECC block in the buffer memory 2 is read out row by row (182 bytes) and stored in the row memory 3. The PI correction means 10 performs PI correction processing using the row memory 3. Here, the previous memory error is corrected and restored to the original data (normal ECC block). The row memory 3 is composed of, for example, SRAM, and has a capacity capable of storing one row (182 bytes) of the PI series.
[0075]
The row data output from the row memory 3 is sequentially sent to the modulation / synchronization adding means 4, 8/16 modulation and a synchronization code are added, and output as recording data to the recording medium.
[0076]
FIG. 11 shows a state in which an error (error 42 caused by the above-described memory error or external noise) has occurred in a part of the ECC block data output from the buffer memory 2.
[0077]
In the present invention, the error correction code PI is generated using the sector memory 1 before data is stored in the buffer memory. Accordingly, the error correction code PI is an error correction code based on the original data over the entire 192 lines including the line 42. That is, the error correction code PI in FIG. 11 is an error correction code created for data in which no error 42 exists.
[0078]
On the other hand, the PO generation and addition means 9 generates an error correction code PO based on the data of each column (192 bytes) in combination with the buffer memory 2. Therefore, the error correction code PO44 (16 bytes) for the column 41 is an error correction code created based on the data including the memory error 42.
[0079]
In the product code, even if the error correction code portion 48 for the error correction code first generates and adds the code PI and then generates and adds the code PO, the code PO is generated and added first, Even if the code PI is generated and added, the same code pattern can be obtained.
[0080]
Here, the error correction code PI is a correct error correction code added to the original data before the occurrence of the error. Therefore, the error correction code PO generated and added to the block of the error correction code PI can be said to be a correct error correction code based on the original data. Further, the error correction code PO added to the other columns (171) excluding the column 41 in the 172 columns shown in FIG. 11 can also be said to be a correct error correction code.
[0081]
When such an ECC block is read from the buffer memory 2 in the row order and subjected to the PI correction processing in the row memory 3, the error 42 in the row 45 is easily PI corrected. That is, the correct data row 45 is restored. In addition, each PO line created for data including the error 42 is also corrected to a correct PO system by performing PI correction. That is, 1 byte 43 is corrected by performing PI correction on the row 46. Similarly, other rows (the positions indicated by triangles in the figure) are also corrected, and a correct PO system is generated.
[0082]
The above processing has been described on the assumption that the PI correction processing is performed on all the rows of the ECC block in the row memory 3. However, the present invention is not limited to this, and the PI correction process may be performed only on each row at the position of the triangle mark in the drawing in order to shorten the processing time. This is because the memory error 42 can be easily corrected later if the PO system at the position of the triangle mark in the figure is correct and an error correction code.
[0083]
In the above description, the PO block is described using the ECC block in which the row is not distributed line by line in the aggregate data block. However, in the actual ECC block, as described with reference to FIGS. 1 and 6, the error correction code PO is distributed line by line in the aggregate data block.
[0084]
FIG. 12 shows reproducing means for reproducing an ECC block obtained by the above-described processing (processing by the circuit shown in FIG. 10) from a recording medium and performing error correction processing on the ECC block.
[0085]
The reproduction data read from the recording medium by the optical head is introduced into the synchronization separation / demodulation means 11. This synchronization detection / demodulation means 11 performs synchronization detection and demodulation of 8/16 modulation from reproduced data. Thereby, a recording sector is obtained. However, when data is recorded on and reproduced from the recording medium, an error occurs in the data due to a scratch or noise on the disk, and therefore the data in the recording sector may include an error.
[0086]
The extracted recording sectors are sequentially stored in the buffer memory 2, and 16 recording sectors are assembled, and an ECC block of 182 columns × 208 rows is formed in the buffer memory 2. The PO correction unit 14 and the PI correction unit 10 perform error correction on the ECC block of 182 columns × 208 rows.
[0087]
Here, it is effective to perform the PI correction process on the PO block prior to the PO correction process. This is because a correct error correction code PO can be restored by PI correction even if a memory error occurs in the PO block.
[0088]
The error-corrected ECC block is read from the buffer memory 2 in one row (182 bytes) in the order of data transmission and stored in the sector memory 1. Here, the PI correction means 10 performs PI correction on 172 bytes of each row using the sector memory 1. This is effective for correcting an error when a memory error occurs in the buffer memory 2 when PO correction is performed.
[0089]
Next, the descrambling means 13 converts the scrambled data (exclusive OR operation) with respect to the main data (2048 bytes) of the scrambled data sector, and generates a pre-scrambled data sector. Further, the EDC error detection means 12 detects an error in the data sector using an error detection code (EDC) 4 bytes included in the data sector. When it is detected that there is no error in the data sector, the data sector is transmitted to the host.
[0090]
In the above description, when data is stored in the sector memory 1 from the buffer memory 2, the PI correction means 10 performs the PI correction. However, this PI correction may be performed only when an error is detected by the EDC.
[0091]
Further, only a part of the detection value syndrome (10 bytes) of the error pattern of each row may be calculated to perform error detection, and PI correction may be executed only when it is determined that there is an error. In other words, error correction processing by the error correction code PI is performed by calculating only a part (R byte, R <P) of the error pattern detection value (P byte) obtained from the P byte of the error correction code PI. The correction process is executed only when it is determined that there is an error.
[0092]
FIG. 13 shows still another embodiment of the present invention.
[0093]
In this embodiment, the row memory 3 shown in the embodiment of FIG. 10 is omitted. In the embodiment of FIG. 13, the PI correction means 10 performs PI correction using the buffer memory 2. Other configurations are the same as those of the embodiment shown in FIG. When a memory error occurs, the error correction code PO generated by the PO generation and addition means 9 becomes an error correction code having data including the memory error as original data. However, PI correction is performed on all the rows of the error correction code PO, and the error correction code PO having the data including the memory error as the original data is the error correction code having the original data as the original data. Restored to PO.
[0094]
In this embodiment, since the ECC block after PI correction exists in the buffer memory 2, there is a possibility that a memory error is included. However, since the error correction code PO is once restored to an error correction code having original data as original data, even if a memory error is included, the error is corrected by PO correction at the time of reproduction. Become.
[0095]
FIG. 14 shows still another embodiment of the present invention.
[0096]
User data from the host computer is converted by the sector information adding means 15 into one data sector for each 2048-byte main data.
[0097]
The sector information adding means 15 adds identification data (ID) 4 bytes, ID error detection code (IED) 2 bytes, and copyright management information (CPR_MAI) 6 bytes to the main data. The EDC generation / addition means 16 generates and adds 4 bytes of error detection code (EDC) to a total of 2060 bytes of data to generate a data sector of 2064 bytes in total. The scramble means 17 scrambles the main data in the data sector.
[0098]
The scrambled data sector is sequentially stored in the buffer memory 2. In the buffer memory 2, a data block of 172 columns × 192 rows is formed, in which 16 data sectors of 172 bytes × 12 rows are collected.
[0099]
The PI generation and addition means 18 receives the data sector from the scramble means 17, and sequentially generates a 10-byte error correction code PI for each row (172 bytes) of data and supplies it to the buffer memory 2. As a result, a data block with PI of 182 bytes × 192 rows is constructed in the buffer memory 2. The error correction code PI at this time is an error correction code having original data as original data. Since other parts are the same as those of the embodiment described above, the description thereof is omitted.
[0100]
FIG. 15 shows an example of an error correction circuit corresponding to the above error correction code generation circuit.
[0101]
This embodiment is almost the same as the embodiment shown in FIG. 12 except that the output of the buffer memory 2 is given to the row memory 3. For the ECC block of the buffer memory 2, the PI correction unit 10 performs error correction on a row including at least PO using the buffer memory 2. As a result, the error correction code PO becomes a correct error correction code. Next, PO correction processing is performed by the PO correction means 14. The data after the PO correction processing is supplied to the row memory 3 for each row in the order of transmission. The PI correction means 10 performs PI correction using this row memory 3. As a result, even if a memory error occurs in the buffer memory 2 during PO correction, this is corrected in the row memory 3.
[0102]
The data output from the row memory 3 is descrambled by the descrambling means 13 to become a data sector, and the EDC error detecting means 12 performs error detection on this data sector.
[0103]
FIG. 16 shows still another embodiment of the present invention.
[0104]
Compared with the embodiment of FIG. 13, the PI correction means 10 using the buffer memory 2 is omitted. Other parts are the same as those of the embodiment of FIG. In this embodiment, when error correction of the ECC block constructed in the buffer memory 2 is performed in the reproduction system, PI correction is performed by the PI correction means 10 before PO correction.
[0105]
As described above, the present invention is effective for a signal transmission / recording and reproducing apparatus that can perform error correction code generation processing without losing original data even when an error occurs in a memory. In addition, according to the present invention, it is possible to record on a recording medium without losing the original data even if the occurrence rate of memory error is given instead of simplifying the defect inspection of the buffer memory and increasing the yield. The present invention is effective when employed in various signal transmission / recording and reproducing apparatuses. The transmission / reception system can be applied to various devices in the digital communication field. A wireless device such as a cellular phone, a transmission / reception terminal between computers, a television transmission / reception device, and the like. In the field of recording / reproducing systems, the present invention is effectively applied to DVD devices, CD devices, and memory devices that employ communication functions.
[0106]
【The invention's effect】
As described above, the present invention is a data processing method using an error correction code that can restore original correct data even when a data error (memory error) occurs in the memory. Recording system or reproducing system apparatus, transmission system and receiving system apparatus can be provided.
[Brief description of the drawings]
FIG. 1 is an explanatory diagram showing a data processing procedure until a physical sector in a DVD is obtained.
FIG. 2 is an explanatory diagram showing the structure of a data sector in a DVD.
FIG. 3 is an explanatory diagram of a feedback shift register that generates scrambled data.
FIG. 4 is an explanatory diagram showing an ECC block.
FIG. 5 is an explanatory diagram showing a recording sector.
FIG. 6 is an explanatory diagram showing an ECC block in which an error correction code PO is interleaved.
FIG. 7 is a block diagram for explaining an error correction code generation method in a recording system of a conventional recording / reproducing apparatus.
FIG. 8 is a block diagram for explaining an error correction processing method in a reproducing system of a conventional recording / reproducing apparatus.
FIG. 9 is a diagram for explaining error correction codes when a DRAM memory error occurs in a conventional recording / reproducing apparatus.
FIG. 10 is a block diagram of a recording system shown to explain one embodiment of an error correction code generation method according to the present invention.
FIG. 11 is an explanatory diagram for explaining the data structure of an ECC block obtained by the error correction code generation method according to the present invention.
FIG. 12 is a block diagram of a reproduction system shown to explain one embodiment of a method for performing error correction on an ECC block obtained by the error correction code generation method according to the present invention.
FIG. 13 is a block diagram of a recording system shown to explain another embodiment of the error correction code generation method according to the present invention.
FIG. 14 is a block diagram of a recording system shown to explain another embodiment of the error correction code generation method according to the present invention.
FIG. 15 is a block diagram of a reproduction system shown to explain another embodiment of a method for performing error correction on an ECC block obtained by the error correction code generation method according to the present invention.
FIG. 16 is a block diagram of a recording and reproducing system shown to explain an embodiment adopting an error correction code generation method according to the present invention and an error correction method for performing error correction using an error correction code.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 1 ... Sector memory, 2 ... Buffer memory, 3 ... Row memory, 4 ... Modulation / synchronization addition means, 5 ... Sector information addition means, 6 ... EDC production | generation and addition means, 7 ... Scramble means, 8 ... PI production | generation and addition means , 9 ... PO generation and addition means, 10 ... PI correction means, 11 ... Synchronization separation / demodulation means, 12 ... EDC error detection means, 13 ... Scramble release means, 14 ... PO correction means.

Claims (27)

第1のメモリを用いて、M行×N列の(M×N)バイトで構成されるデータブロックの、各行に誤り訂正符号PIのPバイトを生成及び付加し、
前記(M×N)バイトで構成されるデータブロックに誤り訂正符号が付加された誤り訂正積符号ブロック(ECCブロック)を複数格納する容量を持つ第2のメモリに、M行×(N+P)列の(M×(N+P))バイトで構成される、誤り訂正符号PIが付加した情報データブロックを、K個集合させ、(K×(M×(N+P)))バイトの集合情報データブロックとし、
前記第2のメモリを用いて、前記集合情報データブロックの各列に誤り訂正符号POのSバイトを生成及び付加した誤り訂正積符号ブロック(ECCブロック)とし、
前記ECCブロックを前記第2のメモリから読み出して伝送する前に、その各行に付加された誤り訂正符号PIを用いて誤り訂正処理を行い、
前記誤り訂正処理をした後のECCブロックを、行順に順次伝送或いは記録媒体に記録する
ことを特徴とした誤り訂正符号を用いたデータ処理方法。
Using the first memory, generating and adding P bytes of the error correction code PI to each row of a data block composed of (M × N) bytes of M rows × N columns,
In a second memory having a capacity for storing a plurality of error correction product code blocks (ECC blocks) in which an error correction code is added to the data block composed of (M × N) bytes, M rows × (N + P) columns (M × (N + P)) bytes of information data blocks to which the error correction code PI is added are aggregated into K (K × (M × (N + P))) byte aggregate information data blocks,
Using the second memory, an error correction product code block (ECC block) in which an S byte of the error correction code PO is generated and added to each column of the set information data block,
Before the ECC block is read from the second memory and transmitted, error correction processing is performed using the error correction code PI added to each row,
A data processing method using an error correction code, wherein the ECC block after the error correction processing is sequentially transmitted in a row order or recorded on a recording medium.
第1のメモリを用いて、M行×N列の(M×N)バイトで構成されるデータブロックの、各行に誤り訂正符号PIのPバイトを生成及び付加し、
前記(M×N)バイトで構成されるデータブロックに誤り訂正符号が付加された誤り訂正積符号ブロック(ECCブロック)を複数格納する容量を持つ第2のメモリに、M行×(N+P)列の(M×(N+P))バイトで構成される、誤り訂正符号PIが付加した情報データブロックをK個集合させ、(K×(M×(N+P)))バイトの集合情報データブロックとし、
前記第2のメモリを用いて、前記集合情報データブロックの各列に誤り訂正符号POの(S=K×Q)バイトを生成及び付加し、
前記誤り訂正符号POをQバイト毎に、上記誤り訂正符号PIが付加されたK個の各情報データブロックに分散配置させることで、各情報データブロックは、情報データと誤り訂正符号によって構成される、一定値(M+Q)×(N+P)バイトになるように構成された誤り訂正積符号ブロック(ECCブロック)を構成し、
前記ECCブロックを第2のメモリから読み出して伝送する前に、その各行に付加された誤り訂正符号PIを用いて誤り訂正処理を行い、
前記誤り訂正処理をした後のECCブロックを、行順に順次伝送或いは記録媒体に記録することを特徴とした誤り訂正符号を用いたデータ処理方法。
Using the first memory, generating and adding P bytes of the error correction code PI to each row of a data block composed of (M × N) bytes of M rows × N columns,
In a second memory having a capacity for storing a plurality of error correction product code blocks (ECC blocks) in which an error correction code is added to the data block composed of (M × N) bytes, M rows × (N + P) columns A set of (M × (N + P)) bytes of information data blocks to which an error correction code PI has been added is assembled into a set information data block of (K × (M × (N + P))) bytes.
Using the second memory to generate and add (S = K × Q) bytes of the error correction code PO to each column of the set information data block;
Each information data block is composed of information data and an error correction code by distributing the error correction code PO to K information data blocks to which the error correction code PI is added every Q bytes. Configure an error correction product code block (ECC block) configured to be a constant value (M + Q) × (N + P) bytes,
Before the ECC block is read from the second memory and transmitted, error correction processing is performed using the error correction code PI added to each row,
A data processing method using an error correction code, wherein the ECC block after the error correction processing is sequentially transmitted in a row order or recorded on a recording medium.
M行×N行の(N×N)バイトで構成されるデータブロックの各行に誤り訂正符号PIを生成及び付加する場合、
ホストコンピュータより各行(Nバイト)のデータを受け取り、送信されたNバイトのデータを順次第1のメモリに格納する第1の処理と、この第1の処理と並行して、前記送信されたNバイトのデータを元に前記各行の誤り訂正符号PIのPバイトを生成し、生成されたPバイトの誤り訂正符号PIを順次前記第1のメモリに格納する第2の処理とを具備し、M行×(N+P)列の(M×(N+P))バイトで構成されるPI誤り訂正符号が付加した情報データブロックを生成し、
前記(M×N)バイトで構成されるデータブロックに誤り訂正符号が付加された誤り訂正積符号ブロック(ECCブロック)を複数格納する容量を持つ第2のメモリに、M行×(N+P)列の(M×(N+P))バイトで構成される誤り訂正符号PIが付加した情報データブロックを、K個集合させ、(K×(M×(N+P)))バイトの集合情報データブロックとし、
前記第2のメモリを用いて、前記集合情報データブロックの各列に誤り訂正符号POのSバイトを生成及び付加した誤り訂正積符号ブロック(ECCブロック)とし、
前記ECCブロックを前記第2のメモリから読み出して伝送する前に、その各行に付加された誤り訂正符号PIを用いて誤り訂正処理を行い、
前記誤り訂正処理をした後のECCブロックを、行順に順次伝送或いは記録媒体に記録することを特徴とした誤り訂正符号を用いたデータ処理方法。
When generating and adding an error correction code PI to each row of a data block composed of M rows × N rows (N × N) bytes,
A first process of receiving data of each row (N bytes) from the host computer and sequentially storing the transmitted N bytes of data in the first memory, and the transmitted N in parallel with the first process A second process of generating P bytes of the error correction code PI of each row based on the byte data and sequentially storing the generated P byte error correction code PI in the first memory; An information data block to which a PI error correction code composed of (M × (N + P)) bytes in a row × (N + P) column is added is generated,
In a second memory having a capacity for storing a plurality of error correction product code blocks (ECC blocks) in which an error correction code is added to the data block composed of (M × N) bytes, M rows × (N + P) columns The information data blocks to which the error correction code PI composed of (M × (N + P)) bytes is added are aggregated into a set information data block of (K × (M × (N + P))) bytes,
Using the second memory, an error correction product code block (ECC block) in which an S byte of the error correction code PO is generated and added to each column of the set information data block,
Before the ECC block is read from the second memory and transmitted, error correction processing is performed using the error correction code PI added to each row,
A data processing method using an error correction code, wherein the ECC block after the error correction processing is sequentially transmitted in a row order or recorded on a recording medium.
請求項1又は2又は3のいずれかにおいて、
前記ECCブロックに対して、前記誤り訂正符号PIを用いて誤り訂正処理を行う場合、誤り訂正符号POの行のみ行うことを特徴とする誤り訂正符号を用いたデータ処理方法。
In any of claims 1 or 2 or 3
A data processing method using an error correction code, wherein when an error correction process is performed on the ECC block using the error correction code PI, only the row of the error correction code PO is performed.
請求項1又は2又は3のいずれかにおいて、
前記第2のメモリから前記ECCブロックの各行を順次読み出し、第3のメモリに格納し、
前記第3のメモリに格納された単位ブロックに対して、誤り訂正符号PIを用いて誤り訂正処理を行う場合、前記第3のメモリに格納されたデータブロックの各行または誤り訂正符号POの行のいずれかのみを誤り訂正処理を行い、
前記誤り訂正処理をした後の単位ブロックを、行順に順次伝送或いは記録媒体に記録することを特徴とした誤り訂正符号を用いたデータ処理方法。
In any of claims 1 or 2 or 3
Sequentially reading each row of the ECC block from the second memory and storing it in a third memory;
When error correction processing is performed on the unit block stored in the third memory using the error correction code PI, each row of the data block stored in the third memory or the row of the error correction code PO is stored. Only one of them is error-corrected,
A data processing method using an error correction code, wherein the unit blocks after the error correction processing are sequentially transmitted or recorded on a recording medium in a row order.
集合情報データブロックは、M行×N列の(M×N)バイトで構成されるデータブロックがK個集合した(K×(M×N))バイトの集合データブロックの各行に誤り訂正符号PIのPバイトが付加されたものであり、また誤り訂正符号POブロックとしては、前記集合情報データブロック及び前記誤り訂正符号PIのブロックの各列に誤り訂正符号POのSバイトが生成されたものであり、
前記誤り訂正符号PIが付加された(K×M×(N+P)))バイトの前記集合情報データブロックと、(S×(N+P))バイトの誤り訂正符号POブロックとが伝送あるいは記録媒体から読み出され送られて来た場合、
前記(M×N)バイトで構成されるデータブロックに誤り訂正符号が付加された誤り訂正積符号ブロック(ECCブロック)を複数格納する容量を持つ第2のメモリを用いて、前記誤り訂正符号PI及びPOにより、前記集合データブロックのエラーデータバイトの第1の誤り訂正処理を行い、
前記第1の誤り訂正処理を行った後のデータに対して、さらに第1のメモリを用いて、再度前記誤り訂正符号PIにより、行の誤り訂正処理を行うようにしたことを特徴とする誤り訂正符号を用いたデータ処理方法。
The set information data block includes an error correction code PI in each row of the (K × (M × N)) byte set data block in which K data blocks composed of (M × N) bytes of M rows × N columns are set. The error correction code PO block is a block in which the S byte of the error correction code PO is generated in each column of the set information data block and the block of the error correction code PI. Yes,
The collective information data block of (K × M × (N + P)) bytes to which the error correction code PI is added and the error correction code PO block of (S × (N + P)) bytes are transmitted or read from the recording medium. If you are sent and sent,
Using a second memory having a capacity for storing a plurality of error correction product code blocks (ECC blocks) in which an error correction code is added to the data block composed of (M × N) bytes, the error correction code PI And PO, the first error correction processing of the error data bytes of the aggregate data block,
An error, wherein the data after the first error correction processing is further subjected to error correction processing for a row by the error correction code PI again using a first memory. A data processing method using a correction code.
ECCブロックは、M行×N列の(M×N)バイトで構成されるデータブロックの、各行に誤り訂正符号PIのPバイトを生成及び付加し、M行×(N+P)列の(M×(N+P))バイトで構成される、誤り訂正符号PIが付加した情報データブロックをK個集合させ、(K×(M×(N+P)))バイトの集合情報データブロックとし、前記集合情報データブロックの各列に誤り訂正符号POの(S=K×Q)バイトを生成及び付加し、前記誤り訂正符号POをQバイト毎に、上記誤り訂正符号PIが付加されたK個の各情報データブロックに分散配置させることで、各情報データブロックは、情報データと誤り訂正符号によって構成され、一定値(M+Q)×(N+P)バイトになるように構成されているECCブロックであり、
前記(M×N)バイトで構成されるデータブロックに誤り訂正符号が付加された誤り訂正積符号ブロック(ECCブロック)を複数格納する容量を持つ第2のメモリを用いて前記誤り訂正符号PI及びPOにより、前記データブロックのエラーデータバイトの第1の誤り訂正処理を行った後、
前記第1の誤り訂正処理を行った後のデータに対して、さらに第1のメモリを用いて、再度前記誤り訂正符号PIにより、行の誤り訂正処理を行うようにしたことを特徴とする誤り訂正符号を用いたデータ処理方法。
The ECC block generates and adds P bytes of the error correction code PI to each row of a data block composed of (M × N) bytes of M rows × N columns, and (M × N) of M rows × (N + P) columns. (K) (N + P)) bytes of information data blocks to which the error correction code PI is added are assembled into a set information data block of (K × (M × (N + P))) bytes, and the set information data block (S = K × Q) bytes of the error correction code PO are generated and added to each column, and each of the K information data blocks is added with the error correction code PI added to the error correction code PO every Q bytes. Each information data block is an ECC block configured by information data and an error correction code, and configured to be a constant value (M + Q) × (N + P) bytes.
Using the second memory having a capacity for storing a plurality of error correction product code blocks (ECC blocks) in which an error correction code is added to the data block composed of (M × N) bytes, the error correction code PI and After performing the first error correction processing of the error data byte of the data block by PO,
An error, wherein the data after the first error correction processing is further subjected to error correction processing for a row by the error correction code PI again using a first memory. A data processing method using a correction code.
請求項6または7において、
前記第1のメモリを使った誤り訂正処理は、前記第2のメモリからデータを読み出した時、前記データブロックに付加された誤り検出符号(EDC)によって前記データブロックに誤りが存在することが判定された時のみ、実行されることを特徴とする誤り訂正符号を用いたデータ処理方法。
In claim 6 or 7,
In the error correction processing using the first memory, when data is read from the second memory, it is determined that an error exists in the data block by an error detection code (EDC) added to the data block. A data processing method using an error correction code, which is executed only when it is executed.
第1のメモリを用いて、M行×N列の(M×N)バイトで構成されるデータブロックの、各行に誤り訂正符号PIのPバイトを生成及び付加し情報データブロックとし、
前記(M×N)バイトで構成されるデータブロックに誤り訂正符号が付加された誤り訂正積符号ブロック(ECCブロック)を複数格納する容量を持つ第2のメモリにM行×(N+P)列の(M×(N+P))バイトで構成される、誤り訂正符号PIが付加した前記情報データブロックを、K個集合させ、(K×(M×(N+P)))バイトの集合情報データブロックとし、前記第2のメモリを用いて、前記集合情報データブロックの各列に誤り訂正符号POのSバイトを生成及び付加した誤り訂正積符号ブロック(ECCブロック)とし、
前記ECCブロックを前記第2のメモリから読み出して伝送する前に、その各行に付加された誤り訂正符号PIを用いて第1の誤り訂正処理を行い、
前記第1の誤り訂正処理をした後のECCブロックを、行順に順次伝送或いは記録媒体に記録し、
前記第1の誤り訂正処理をした後のECCブロックが伝送あるいは記録媒体から読み出され送られて来た場合、第3のメモリを用いて、前記誤り訂正符号PI及びPOにより、前記データブロックのエラーデータバイトの第2の誤り訂正処理を行い、
前記第2の誤り訂正処理を行った後のデータに対して、さらに第4のメモリを用いて、再度前記誤り訂正符号PIにより、第3の誤り訂正処理を行うようにした
ことを特徴とする誤り訂正符号を用いたデータ処理方法。
Using the first memory, P bytes of the error correction code PI are generated and added to each row of a data block composed of (M × N) bytes of M rows × N columns to form an information data block,
A second memory having a capacity for storing a plurality of error correction product code blocks (ECC blocks) obtained by adding an error correction code to a data block composed of (M × N) bytes has M rows × (N + P) columns. K pieces of the information data blocks to which the error correction code PI is added, which is composed of (M × (N + P)) bytes, are set as a set information data block of (K × (M × (N + P))) bytes, Using the second memory, an error correction product code block (ECC block) in which an S byte of the error correction code PO is generated and added to each column of the set information data block,
Before the ECC block is read from the second memory and transmitted, a first error correction process is performed using the error correction code PI added to each row,
The ECC block after the first error correction processing is sequentially transmitted or recorded on a recording medium in a row order,
If the ECC block after the first error correction came been sent is read out from the transmission or recording medium, using the third memory by the error correction code PI and PO, the data block Perform a second error correction process on the error data byte,
A third error correction process is performed again on the data after the second error correction process using the error correction code PI using a fourth memory. A data processing method using an error correction code.
第1のメモリを用いて、M行×N列の(M×N)バイトで構成されるデータブロックの、各行に誤り訂正符号PIのPバイトを生成及び付加して集合データブロックとし、
前記(M×N)バイトで構成されるデータブロックに誤り訂正符号が付加された誤り訂正積符号ブロック(ECCブロック)を複数格納する容量を持つ第2のメモリにM行×(N+P)列の(M×(N+P))バイトで構成される、誤り訂正符号PIが付加した前記情報データブロックを、K個集合させ、(K×(M×(N+P)))バイトの集合情報データブロックとし、前記第2のメモリを用いて、前記集合情報データブロックの各列に誤り訂正符号POの(S=K×Q)バイトを生成及び付加し、
前記誤り訂正符号POをQバイト毎に、上記誤り訂正符号PIが付加されたK個の各情報データブロックに分散配置させることで、各情報データブロックは、データブロックと誤り訂正符号によって構成される、一定値(M+Q)×(N+P)バイトになるように構成された誤り訂正積符号ブロック(ECCブロック)を構成し、
前記ECCブロックを第2のメモリから読み出して伝送する前に、その各行に付加された誤り訂正符号PIを用いて第1の誤り訂正処理を行い、
前記第1の誤り訂正処理をした後のECCブロックを、行順に順次伝送或いは記録媒体に記録し、
前記誤り訂正処理をした後のECCブロックが伝送あるいは記録媒体から読み出され送られて来た場合、第3のメモリを用いて、前記誤り訂正符号PI及びPOにより、前記データブロックのエラーデータバイトの第2の誤り訂正処理を行い、
前記第2の誤り訂正処理を行った後のデータに対して、さらに第4のメモリを用いて、再度前記誤り訂正符号PIにより第3の誤り訂正処理を行うようにしたことを特徴とする誤り訂正符号を用いたデータ処理方法。
Using the first memory, P bytes of the error correction code PI are generated and added to each row of a data block composed of (M × N) bytes of M rows × N columns to form an aggregate data block,
A second memory having a capacity for storing a plurality of error correction product code blocks (ECC blocks) obtained by adding an error correction code to a data block composed of (M × N) bytes has M rows × (N + P) columns. K pieces of the information data blocks to which the error correction code PI is added, which is composed of (M × (N + P)) bytes, are set as a set information data block of (K × (M × (N + P))) bytes, Using the second memory to generate and add (S = K × Q) bytes of the error correction code PO to each column of the set information data block;
Each information data block is composed of a data block and an error correction code by distributing the error correction code PO to each of K information data blocks to which the error correction code PI is added every Q bytes. Configure an error correction product code block (ECC block) configured to be a constant value (M + Q) × (N + P) bytes,
Before the ECC block is read from the second memory and transmitted, a first error correction process is performed using the error correction code PI added to each row,
The ECC block after the first error correction processing is sequentially transmitted or recorded on a recording medium in a row order,
When the ECC block after the error correction processing is transmitted or read from the recording medium and sent, an error data byte of the data block is transmitted by the error correction codes PI and PO using a third memory. The second error correction process of
An error characterized in that the third error correction process is performed again on the data after the second error correction process by the error correction code PI using a fourth memory. A data processing method using a correction code.
請求項9、10のいずれかにおいて、前記第1及び第4のメモリは、SRAM(Static−RAM)であることを特徴とする誤り訂正符号を用いたデータ処理方法。 11. The data processing method using an error correction code according to claim 9, wherein the first and fourth memories are SRAMs (Static-RAM) . 請求項9、10のいずれかにおいて、
前記誤り訂正符号PIによる第1及び第2の誤り訂正処理は、誤り訂正符号PIのPバイトから得られる誤りパターン検出値(Pバイト)の内の一部(Rバイト、R<P)のみを計算して誤り検出を行い、誤りがあることが判定された時のみ、訂正処理を実行することを特徴とする誤り訂正符号を用いたデータ処理方法。
In any one of Claims 9 and 10,
In the first and second error correction processes using the error correction code PI, only a part (R byte, R <P) of the error pattern detection value (P byte) obtained from the P byte of the error correction code PI is used. A data processing method using an error correction code, characterized in that a correction process is executed only when an error is detected by calculation and it is determined that there is an error.
誤り訂正符号が付加されたデータを伝送又は記録媒体への記録を行なう場合、請求項1、2、3のいずれかのデータ処理方法を用いて、前記誤り訂正符号が付加されたデータを得ることを特徴とするデータ処理装置。 When data with an error correction code added is transmitted or recorded on a recording medium, the data with the error correction code added is obtained using the data processing method according to any one of claims 1, 2, and 3. A data processing apparatus. 誤り訂正符号が付加されたデータが伝送あるいは記録媒体から読み出されて送られて来た場合、請求項6、7のいずれかのデータ処理方法を用いて、誤り訂正された出力データを得ることを特徴とするデータ処理装置。 When the data to which the error correction code is added is transmitted or read out from the recording medium and sent, the output data corrected by using the data processing method according to claim 6 or 7 is obtained. A data processing apparatus. 誤り訂正符号が付加されたデータを伝送又は記録媒体への記録を行ない、また、誤り訂正符号が付加されたデータが伝送あるいは記録媒体から読み出されて送られて来た場合、請求項9、10のいずれかのデータ処理方法を用いて、前記誤り訂正符号が付加されたデータを得、また誤り訂正された出力データを得ることを特徴とするデータ処理装置。 When the data to which the error correction code is added is transmitted or recorded on the recording medium, and the data to which the error correction code is added is read from the transmission or the recording medium and sent, A data processing apparatus characterized by using the data processing method according to any one of 10 to obtain data to which the error correction code is added and to obtain error-corrected output data . 1 のメモリを用いて、M行×N列の(M×N)バイトで構成されるデータブロックの、各行に誤り訂正符号PIのPバイトを生成及び付加する手段と、
前記(M×N)バイトで構成されるデータブロックに誤り訂正符号が付加された誤り訂正積符号ブロック(ECCブロック)を複数格納する容量を持つ第2のメモリに、M行×(N+P)列の(M×(N+P))バイトで構成される、誤り訂正符号PIが付加した情報データブロックを、K個集合させ、(K×(M×(N+P)))バイトの集合情報データブロックを得る手段と、
前記第2のメモリを用いて、前記集合情報データブロックの各列に誤り訂正符号POのSバイトを生成及び付加した誤り訂正積符号ブロック(ECCブロック)を得る手段と、
前記ECCブロックを前記第2のメモリから読み出して伝送する前に、その各行に付加された誤り訂正符号PIを用いて誤り訂正処理を行う手段と、
前記誤り訂正処理をした後のECCブロックを、行順に順次伝送或いは記録媒体に記録する手段と
を具備したことを特徴とする誤り訂正符号を用いたデータ処理装置。
Means for generating and adding P bytes of the error correction code PI to each row of a data block composed of (M × N) bytes of M rows × N columns using the first memory;
In a second memory having a capacity for storing a plurality of error correction product code blocks (ECC blocks) in which an error correction code is added to the data block composed of (M × N) bytes, M rows × (N + P) columns A set of (M × (N + P)) bytes of information data blocks to which the error correction code PI is added is aggregated to obtain a set information data block of (K × (M × (N + P))) bytes. Means,
Means for using the second memory to obtain an error correction product code block (ECC block) in which an S byte of the error correction code PO is generated and added to each column of the set information data block;
Means for performing error correction processing using an error correction code PI added to each row before the ECC block is read from the second memory and transmitted;
Means for sequentially transmitting or recording the ECC blocks after the error correction processing in a row order or on a recording medium;
A data processing apparatus using an error correction code , comprising:
1 のメモリを用いて、M行×N列の(M×N)バイトで構成されるデータブロックの、各行に誤り訂正符号PIのPバイトを生成及び付加する手段と、
前記(M×N)バイトで構成されるデータブロックに誤り訂正符号が付加された誤り訂正積符号ブロック(ECCブロック)を複数格納する容量を持つ第2のメモリに、M行×(N+P)列の(M×(N+P))バイトで構成される、誤り訂正符号PIが付加した情報データブロックをK個集合させ、(K×(M×(N+P)))バイトの集合情報データブロックを得る手段と、
前記第2のメモリを用いて、前記集合情報データブロックの各列に誤り訂正符号POの(S=K×Q)バイトを生成及び付加する手段と、
前記誤り訂正符号POをQバイト毎に、上記誤り訂正符号PIが付加されたK個の各情報データブロックに分散配置させることで、各情報データブロックは、情報データと誤り訂正符号によって構成される、一定値(M+Q)×(N+P)バイトになるように構成さ れた誤り訂正積符号ブロック(ECCブロック)を構成する手段と、
前記ECCブロックを第2のメモリから読み出して伝送する前に、その各行に付加された誤り訂正符号PIを用いて誤り訂正処理を行う手段と、
前記誤り訂正処理をした後のECCブロックを、行順に順次伝送或いは記録媒体に記録する手段と
を具備したことを特徴とする誤り訂正符号を用いたデータ処理装置。
Means for generating and adding P bytes of the error correction code PI to each row of a data block composed of (M × N) bytes of M rows × N columns using the first memory;
In a second memory having a capacity for storing a plurality of error correction product code blocks (ECC blocks) in which an error correction code is added to the data block composed of (M × N) bytes, M rows × (N + P) columns Means for obtaining a set information data block of (K × (M × (N + P))) by collecting K pieces of information data blocks to which an error correction code PI is added, composed of (M × (N + P)) bytes When,
Means for generating and adding (S = K × Q) bytes of the error correction code PO to each column of the set information data block using the second memory;
Each information data block is composed of information data and an error correction code by distributing the error correction code PO to K information data blocks to which the error correction code PI is added every Q bytes. Means for configuring an error correction product code block (ECC block) configured to be a constant value (M + Q) × (N + P) bytes ;
Means for performing an error correction process using the error correction code PI added to each row before the ECC block is read from the second memory and transmitted;
Means for sequentially transmitting or recording the ECC blocks after the error correction processing in a row order or on a recording medium;
A data processing apparatus using an error correction code , comprising:
M行×N行の(M×N)バイトで構成されるデータブロックの各行に誤り訂正符号PIを生成及び付加する場合、
ホストコンピュータより各行(Nバイト)のデータを受け取り、送信されたNバイトのデータを順次第1のメモリに格納する第 1 の処理と、この第 1 の処理と並行して、前記送信されたNバイトのデータを元に前記各行の誤り訂正符号PIのPバイトを生成し、生成されたPバイトの誤り訂正符号PIを順次前記第1のメモリに格納する第2の処理とを行い、M行×(N×P)列の(M×(N+P))バイトで構成されるPI誤り訂正符号が付加した情報データブロックを生成する手段と、
前記(M×N)バイトで構成されるデータブロックに誤り訂正符号が付加された誤り訂正積符号ブロック(ECCブロック)を複数格納する容量を持つ第2のメモリに、M行×(N+P)列の(M×(N+P))バイトで構成される誤り訂正符号PIが付加した情報データブロックを、K個集合させ、(K×(M×(N+P)))バイトの集合情報データブロックを得る手段と、
前記第2のメモリを用いて、前記集合情報データブロックの各列に誤り訂正符号POのSバイトを生成及び付加した誤り訂正積符号ブロック(ECCブロック)を得る手段と、
前記ECCブロックを前記第2のメモリから読み出して伝送する前に、その各行に付加された誤り訂正符号PIを用いて誤り訂正処理を行う手段と、
前記誤り訂正処理をした後のECCブロックを、行順に順次伝送或いは記録媒体に記録する手段と
を具備したことを特徴とする誤り訂正符号を用いたデータ処理装置。
When generating and adding an error correction code PI to each row of a data block composed of (M × N) bytes of M rows × N rows,
It receives data of each line from the host computer (N bytes), a first process of storing the data of N bytes transmitted in the order as soon as the first memory, in parallel with the first process, the transmitted N A P-byte of the error correction code PI for each row is generated based on the byte data, and a second process of sequentially storing the generated P-byte error correction code PI in the first memory is performed. Means for generating an information data block to which a PI error correction code composed of (M × (N + P)) bytes in a × (N × P) sequence is added;
In a second memory having a capacity for storing a plurality of error correction product code blocks (ECC blocks) in which an error correction code is added to the data block composed of (M × N) bytes, M rows × (N + P) columns Means for obtaining a set information data block of (K × (M × (N + P)) bytes by assembling K information data blocks to which an error correction code PI composed of (M × (N + P)) bytes is added When,
Means for using the second memory to obtain an error correction product code block (ECC block) in which an S byte of the error correction code PO is generated and added to each column of the set information data block;
Means for performing error correction processing using an error correction code PI added to each row before the ECC block is read from the second memory and transmitted;
Means for sequentially transmitting or recording the ECC blocks after the error correction processing in a row order or on a recording medium;
A data processing apparatus using an error correction code , comprising:
請求項16又は17又は18のいずれかにおいて、
前記ECCブロックに対して、前記誤り訂正符号PIを用いて誤り訂正処理を行う場合、誤り訂正符号POの行のみ行うことを特徴とする誤り訂正符号を用いたデータ処理装置。
In any of claims 16 or 17 or 18
A data processing apparatus using an error correction code , wherein when an error correction process is performed on the ECC block using the error correction code PI, only the row of the error correction code PO is performed .
請求項16又は17又は18のいずれかにおいて、
前記第2のメモリから前記ECCブロックの各行を順次読み出し、第3のメモリに格納する手段と、
前記第3のメモリに格納された単位ブロックに対して、誤り訂正符号PIを用いて誤り訂正処理を行う場合、前記第3のメモリに格納されたデータブロックの各行または誤り訂正符号POの行のいずれかのみを誤り訂正処理をする手段と、
前記誤り訂正処理をした後の単位ブロックを、行順に順次伝送或いは記録媒体に記録する手段と
を具備したことを特徴とする誤り訂正符号を用いたデータ処理装置。
In any of claims 16 or 17 or 18
Means for sequentially reading out each row of the ECC block from the second memory and storing it in a third memory;
When error correction processing is performed on the unit block stored in the third memory using the error correction code PI, each row of the data block stored in the third memory or the row of the error correction code PO is stored. Means for performing error correction on only one of them,
Means for sequentially transmitting the unit blocks after the error correction processing or recording them on a recording medium in a row order;
A data processing apparatus using an error correction code , comprising:
集合情報データブロックは、M行×N列の(M×N)バイトで構成されるデータブロックがK個集合した(K×(M×N))バイトの集合データブロックの各行に誤り訂正符号PIのPバイトが付加されたものであり、また誤り訂正符号POブロックとしては、前記集合情報データブロック及び前記誤り訂正符号PIのブロックの各列に誤り訂正符号POのSバイトが生成されたものであり、
前記誤り訂正符号PIが付加された(K×M×(N+P)))バイトの前記集合情報データブロックと、(S×(N+P))バイトの誤り訂正符号POブロックとが伝送あるい は記録媒体から読み出され送られて来た場合、
前記(M×N)バイトで構成されるデータブロックに誤り訂正符号が付加された誤り訂正積符号ブロック(ECCブロック)を複数格納する容量を持つ第2のメモリを用いて、前記誤り訂正符号PI及びPOにより、前記集合データブロックのエラーデータバイトの第 1 の誤り訂正処理を行う手段と、
前記第 1 の誤り訂正処理を行った後のデータに対して、さらに第1のメモリを用いて、再度前記誤り訂正符号PIにより、行の誤り訂正処理を行う手段と
を具備したことを特徴とする誤り訂正符号を用いたデータ処理装置。
The set information data block includes an error correction code PI in each row of the (K × (M × N)) byte set data block in which K data blocks composed of (M × N) bytes of M rows × N columns are set. The error correction code PO block is a block in which the S byte of the error correction code PO is generated in each column of the set information data block and the block of the error correction code PI. Yes,
The error correction code PI is added (K × M × (N + P)) and) the set information data blocks of bytes, (S × (N + P )) bytes error-correcting code PO block and the transmission walked recording medium When it is read and sent from
Using a second memory having a capacity for storing a plurality of error correction product code blocks (ECC blocks) in which an error correction code is added to the data block composed of (M × N) bytes, the error correction code PI And a means for performing a first error correction process of error data bytes of the aggregate data block by means of PO and PO ;
Means for performing error correction processing on the data after performing the first error correction processing by using the first memory and again by the error correction code PI using the first memory;
A data processing apparatus using an error correction code , comprising:
ECCブロックは、M行×N列の(M×N)バイトで構成されるデータブロックの、各行に誤り訂正符号PIのPバイトを生成及び付加し、M行×(N+P)列の(M×(N+P))バイトで構成される、誤り訂正符号PIが付加した情報データブロックをK個集合させ、(K×(M×(N+P)))バイトの集合情報データブロックとし、前記集合情報データブロックの各列に誤り訂正符号POの(S=K×Q)バイトを生成及び付加し、前記誤り訂正符号POをQバイト毎に、上記誤り訂正符号PIが付加されたK個の各情報データブロックに分散配置させることで、各情報データブロックは、情報データと誤り訂正符号によって構成され、一定値(M+Q)×(N+P)バイトになるように構成されているECCブロックであり、
集合情報データブロックは、M行×N列の(M×N)バイトで構成されるデータブロックがK個集合した(K×(M×N))バイトの集合データブロックの各行に誤り訂正符号PIのPバイトが付加されたものであり、また誤り訂正符号POブロックとしては、前記集合情報データブロック及び前記誤り訂正符号PIのブロックの各列に誤り訂正符号POのSバイトが生成されたものであり、
前記誤り訂正積符号ブロック(ECCブロック)が伝送或いは記録媒体から読み出され送られて来た場合、
前記(M×N)バイトで構成されるデータブロックに誤り訂正符号が付加された誤り訂正積符号ブロック(ECCブロック)を複数格納する容量を持つ第2のメモリを用いて前記誤り訂正符号PI及びPOにより、前記データブロックのエラーデータバイトの第1の誤り訂正処理を行う手段と、
前記第 1 の誤り訂正処理を行った後のデータに対して、さらに第1メモリを用いて、再度前記誤り訂正符号PIにより、行の誤り訂正処理を行う手段と
を具備したことを特徴とする誤り訂正符号を用いたデータ処理装置。
The ECC block generates and adds P bytes of the error correction code PI to each row of a data block composed of (M × N) bytes of M rows × N columns, and (M × N) of M rows × (N + P) columns. (K) (N + P)) bytes of information data blocks to which the error correction code PI is added are assembled into a set information data block of (K × (M × (N + P))) bytes, and the set information data block (S = K × Q) bytes of the error correction code PO are generated and added to each column, and each of the K information data blocks is added with the error correction code PI added to the error correction code PO every Q bytes. Each information data block is an ECC block configured by information data and an error correction code, and configured to be a constant value (M + Q) × (N + P) bytes.
The set information data block includes an error correction code PI in each row of the (K × (M × N)) byte set data block in which K data blocks composed of (M × N) bytes of M rows × N columns are set. The error correction code PO block is a block in which the S byte of the error correction code PO is generated in each column of the set information data block and the block of the error correction code PI. Yes,
When the error correction product code block (ECC block) is transmitted or read out from a recording medium,
Using the second memory having a capacity for storing a plurality of error correction product code blocks (ECC blocks) in which an error correction code is added to the data block composed of (M × N) bytes, the error correction code PI and Means for performing a first error correction process of error data bytes of said data block by PO;
Wherein the first error correction processing data after using further a first memory, again by the error correction code PI, means for performing error correction processing of the line
A data processing apparatus using an error correction code , comprising:
請求項21または22において、
前記第 1 のメモリを使った誤り訂正処理は、前記第2のメモリからデータを読み出した時、前記データブロックに付加された誤り検出符号(EDC)によって前記データブロックに誤りが存在することが判定された時のみ、実行されることを特徴とする誤り訂正符号を用いたデータ処理装置。
In claim 21 or 22,
In the error correction processing using the first memory, when data is read from the second memory, it is determined that an error exists in the data block by an error detection code (EDC) added to the data block. A data processing apparatus using an error correction code, which is executed only when it is executed .
1 のメモリを用いて、M行×N列の(M×N)バイトで構成されるデータブロックの、各行に誤り訂正符号PIのPバイトを生成及び付加し情報データブロックを得る手段と、
前記(M×N)バイトで構成されるデータブロックに誤り訂正符号が付加された誤り訂正積符号ブロック(ECCブロック)を複数格納する容量を持つ第2のメモリにM行×(N+P)列の(M×(N+P))バイトで構成される、誤り訂正符号PIが付加した前記情報データブロックを、K個集合させ、(K×(M×(N+P)))バイトの集合情報データブロックを得る手段と、
前記第2のメモリを用いて、前記集合情報データブロックの各列に誤り訂正符号POのSバイトを生成及び付加した誤り訂正積符号ブロック(ECCブロック)を得る手段と、
前記ECCブロックを前記第2のメモリから読み出して伝送する前に、その各行に付加 された誤り訂正符号PIを用いて第1の誤り訂正処理を行う手段と、
前記第1の誤り訂正処理をした後のECCブロックを、行順に順次伝送或いは記録媒体に記録する手段と、
前記誤り訂正処理をした後のECCブロックが伝送あるいは記録媒体から読み出され送られて来た場合、前記第3のメモリを用いて、前記誤り訂正符号PI及びPOにより、前記データブロックのエラーデータバイトの第2の誤り訂正処理を行う手段と、
前記第2の誤り訂正処理を行った後のデータに対して、さらに第4のメモリを用いて、再度前記誤り訂正符号PIにより、第3の誤り訂正処理を行う手段と
を具備したことを特徴とする誤り訂正符号を用いたデータ処理装置。
Using a first memory means for obtaining the M rows × N columns of (M × N) bytes in a data block composed, each row generates and adds the P-byte error-correcting code PI data block,
A second memory having a capacity for storing a plurality of error correction product code blocks (ECC blocks) obtained by adding an error correction code to a data block composed of (M × N) bytes has M rows × (N + P) columns. The information data blocks to which the error correction code PI is added and composed of (M × (N + P)) bytes are aggregated to obtain a set information data block of (K × (M × (N + P))) bytes. Means,
Means for using the second memory to obtain an error correction product code block (ECC block) in which an S byte of the error correction code PO is generated and added to each column of the set information data block;
Means for performing a first error correction process using an error correction code PI added to each row before the ECC block is read from the second memory and transmitted ;
Means for sequentially transmitting or recording the ECC block after the first error correction processing in a row order or on a recording medium;
When the ECC block after the error correction processing is transmitted or read from the recording medium and sent, the error data of the data block is transmitted by the error correction codes PI and PO using the third memory. Means for performing a second error correction process of the bytes;
Means for performing a third error correction process again on the data after the second error correction process using the error correction code PI again using a fourth memory;
A data processing apparatus using an error correction code , comprising:
1 のメモリを用いて、M行×N列の(M×N)バイトで構成されるデータブロックの、各行に誤り訂正符号PIのPバイトを生成及び付加して集合データブロックを得る手段と、
前記(M×N)バイトで構成されるデータブロックに誤り訂正符号が付加された誤り訂正積符号ブロック(ECCブロック)を複数格納する容量を持つ第2のメモリにM行×(N+P)列の(M×(N+P))バイトで構成される、誤り訂正符号PIが付加した前記情報データブロックを、K個集合させ、(K×(M×(N+P)))バイトの集合情報データブロックを得る手段と、
前記第2のメモリを用いて、前記集合情報データブロックの各列に誤り訂正符号POの(S=K×Q)バイトを生成及び付加する手段と、
前記誤り訂正符号POをQバイト毎に、上記誤り訂正符号PIが付加されたK個の各情報データブロックに分散配置させることで、各情報データブロックは、データブロックと誤り訂正符号によって構成される、一定値(M+Q)×(N+P)バイトになるように構成された誤り訂正積符号ブロック(ECCブロック)を構成する手段と、
前記ECCブロックを第2のメモリから読み出して伝送する前に、その各行に付加された誤り訂正符号PIを用いて第1の誤り訂正処理を行う手段と、
前記第1の誤り訂正処理をした後のECCブロックを、行順に順次伝送或いは記録媒体に記録する手段と、
前記第1の誤り訂正処理をした後のECCブロックが伝送あるいは記録媒体から読み出され送られて来た場合、前記第3のメモリを用いて、前記誤り訂正符号PI及びPOにより、前記データブロックのエラーデータバイトの第2の誤り訂正処理を行う手段と、
前記第2の誤り訂正処理を行った後のデータに対して、さらに第4のメモリを用いて、再度前記誤り訂正符号PIにより第3の誤り訂正処理を行う手段と
を具備したことを特徴とする誤り訂正符号を用いたデータ処理装置。
Using a first memory means for obtaining the M rows × N columns of (M × N) data block composed in byte, the aggregate data block by generating and attaching a P-byte error-correcting code PI in each row ,
A second memory having a capacity for storing a plurality of error correction product code blocks (ECC blocks) obtained by adding an error correction code to a data block composed of (M × N) bytes has M rows × (N + P) columns. The information data blocks to which the error correction code PI is added and composed of (M × (N + P)) bytes are aggregated to obtain a set information data block of (K × (M × (N + P))) bytes. Means,
Means for generating and adding (S = K × Q) bytes of the error correction code PO to each column of the set information data block using the second memory;
Each information data block is composed of a data block and an error correction code by distributing the error correction code PO to each of K information data blocks to which the error correction code PI is added every Q bytes. Means for configuring an error correction product code block (ECC block) configured to be a constant value (M + Q) × (N + P) bytes;
Means for performing a first error correction process using the error correction code PI added to each row before the ECC block is read from the second memory and transmitted;
Means for sequentially transmitting or recording the ECC block after the first error correction processing in a row order or on a recording medium;
When the ECC block after the first error correction processing is transmitted or read from a recording medium and sent, the data block is transmitted by the error correction codes PI and PO using the third memory. Means for performing a second error correction process on the error data bytes of
Means for performing a third error correction process on the data after the second error correction process using the error correction code PI again using a fourth memory;
A data processing apparatus using an error correction code , comprising:
24、25のいずれかにおいて、前記第1及び第4のメモリは、SRAM(Static−RAM)であることを特徴とする誤り訂正符号を用いたデータ処理装置。 24. The data processing apparatus using an error correction code according to any one of 24 and 25, wherein the first and fourth memories are SRAMs (Static-RAM) . 24、25のいずれかにおいて、
前記誤り訂正符号PIによる誤り訂正処理を行なう手段は、誤り訂正符号PIのPバイトから得られる誤りパターン検出値(Pバイト)の内の一部(Rバイト、R<P)のみを計算して誤り検出を行い、誤りがあることが判定された時のみ、訂正処理を実行することを特徴とする誤り訂正符号を用いたデータ処理方法。
In either 24 or 25
The means for performing error correction processing using the error correction code PI calculates only a part (R byte, R <P) of the error pattern detection value (P byte) obtained from the P byte of the error correction code PI. A data processing method using an error correction code, wherein error correction is performed and correction processing is executed only when it is determined that there is an error.
JP2000377838A 2000-12-12 2000-12-12 Data processing method using error correction code and apparatus using the method Expired - Fee Related JP3619151B2 (en)

Priority Applications (6)

Application Number Priority Date Filing Date Title
JP2000377838A JP3619151B2 (en) 2000-12-12 2000-12-12 Data processing method using error correction code and apparatus using the method
EP01107172A EP1223578A3 (en) 2000-12-12 2001-03-22 Data processing method using error-correcting code and an apparatus using the same method
US09/813,782 US6983413B2 (en) 2000-12-12 2001-03-22 Data processing method using error-correcting code and an apparatus using the same method
TW090129583A TW579499B (en) 2000-12-12 2001-11-29 Data processing method using error-correcting code and an apparatus using the same method
KR10-2001-0078530A KR100482939B1 (en) 2000-12-12 2001-12-12 Data processing method using error-correcting code and an apparatus using the same method
CNB011435593A CN1199178C (en) 2000-12-12 2001-12-12 Data treating method adopting error-correcting code and equipment adopting said method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000377838A JP3619151B2 (en) 2000-12-12 2000-12-12 Data processing method using error correction code and apparatus using the method

Publications (2)

Publication Number Publication Date
JP2002185335A JP2002185335A (en) 2002-06-28
JP3619151B2 true JP3619151B2 (en) 2005-02-09

Family

ID=18846506

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000377838A Expired - Fee Related JP3619151B2 (en) 2000-12-12 2000-12-12 Data processing method using error correction code and apparatus using the method

Country Status (1)

Country Link
JP (1) JP3619151B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100688574B1 (en) 2005-09-16 2007-03-02 삼성전자주식회사 Device and method for data processing in optical disk

Also Published As

Publication number Publication date
JP2002185335A (en) 2002-06-28

Similar Documents

Publication Publication Date Title
US6983413B2 (en) Data processing method using error-correcting code and an apparatus using the same method
US7350129B2 (en) Data processing method and apparatus, recording medium, reproducing method and apparatus using the same method
US6378103B1 (en) Apparatus and method for error correction in optical disk system
US8037389B2 (en) Method and apparatus to data encode and decode, storage medium having recorded thereon program to implement the method, and system to drive the storage medium
US20070076873A1 (en) Data processing device
US20070028140A1 (en) Information processing method and information processing device
JP3619151B2 (en) Data processing method using error correction code and apparatus using the method
JP4140344B2 (en) Decoding device and computer program
JP3519684B2 (en) Data processing device using error correction code
US7213190B2 (en) Data processing apparatus and method
JP2008269746A (en) Data reproducing device
JP2004146014A (en) Data coding/decoding method and apparatus
JP2006191378A (en) Error correction apparatus, reproducing apparatus and reproducing method
JP2004152337A (en) Recording and reproducing device, computer program and transmitting and receiving system
JP3651332B2 (en) Data processing method and data processing apparatus
KR100467270B1 (en) Apparatus and method for correcting error
JP2003173633A (en) Optical disk device
JPS63298776A (en) Error correction processing system
JP2000106530A (en) Error correction method and device
JP2003203420A (en) Digital information recording and reproducing device
JP2004310824A (en) Error correcting method, error correcting circuit, and information reproducing device
JP2004071041A (en) Device and method for information processing, program, and recording medium
JP2008130159A (en) Error correction apparatus and recording/reproducing apparatus

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040106

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040303

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040622

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040820

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20041111

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071119

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081119

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091119

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101119

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101119

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111119

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121119

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131119

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees