JP2009231898A - Error correction device and error correction method - Google Patents

Error correction device and error correction method Download PDF

Info

Publication number
JP2009231898A
JP2009231898A JP2008071500A JP2008071500A JP2009231898A JP 2009231898 A JP2009231898 A JP 2009231898A JP 2008071500 A JP2008071500 A JP 2008071500A JP 2008071500 A JP2008071500 A JP 2008071500A JP 2009231898 A JP2009231898 A JP 2009231898A
Authority
JP
Japan
Prior art keywords
error
data
correction
error data
burst
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.)
Pending
Application number
JP2008071500A
Other languages
Japanese (ja)
Inventor
Makoto Kumazawa
誠 熊澤
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.)
Fujitsu Semiconductor Ltd
Original Assignee
Fujitsu Semiconductor Ltd
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 Fujitsu Semiconductor Ltd filed Critical Fujitsu Semiconductor Ltd
Priority to JP2008071500A priority Critical patent/JP2009231898A/en
Publication of JP2009231898A publication Critical patent/JP2009231898A/en
Pending legal-status Critical Current

Links

Images

Landscapes

  • Error Detection And Correction (AREA)

Abstract

<P>PROBLEM TO BE SOLVED: To predict an error position with a high probability. <P>SOLUTION: An error correction device 1 detects positions of error data of block data 5 for each line using an error data position detection section 2. Then a burst error prediction section 3 refers to positions of error data of other lines, and predicts whether error data at a position detected by the error data position detection section 2 is a burst error. A correction execution section 4 makes erasure correction for error data predicted as a burst error by the burst error prediction section 3, and detects and corrects error data other than the error data predicted as the burst error. <P>COPYRIGHT: (C)2010,JPO&INPIT

Description

本発明は誤り訂正装置および誤り訂正方法に関し、特に、ブロック単位で取り込んだ光ディスクのブロックデータに含まれる誤りデータを訂正する誤り訂正装置および誤り訂正方法に関する。   The present invention relates to an error correction apparatus and an error correction method, and more particularly, to an error correction apparatus and an error correction method for correcting error data included in block data of an optical disk taken in block units.

一般的に、光ディスクのデータを読み出す際、トラッキングの外れや、円周方向の傷や汚れ等により、連続したデータの誤り(バーストエラー)が起こることが知られている。
その対策として直交方向にインターリーブされたライン毎にリードソロモン(Reed-Solomon)符号等のECC(Error Check and Correct)パリティを付加して記録し、再生時に訂正する方法が知られている。
In general, when reading data from an optical disk, it is known that continuous data errors (burst errors) occur due to tracking errors, circumferential scratches, and dirt.
As a countermeasure, there is known a method in which an ECC (Error Check and Correct) parity such as a Reed-Solomon code is added and recorded for each line interleaved in the orthogonal direction, and corrected at the time of reproduction.

近年、光ディスクのデータの高密度化により、誤りデータの数が多くなり、誤りデータが存在する位置(以下、単に「誤り位置」と言う)および誤りデータの数値(以下、単に「誤り数値」という)両方を求めてデータの訂正を行う検出訂正のみでは訂正できるデータの数が限界に達してしまうため、検出訂正に加えて、予め誤り位置を予測してデータの訂正を行う消失訂正も組み合わせてより多くの誤りに対応しようとしている(例えば、特許文献1参照)。   In recent years, due to the increase in the density of optical disc data, the number of error data has increased, the position where error data exists (hereinafter simply referred to as “error position”) and the numerical value of error data (hereinafter simply referred to as “error value”). ) Since the number of correctable data reaches the limit only by detection correction that corrects data by obtaining both, in addition to detection correction, erasure correction that predicts the error position in advance and corrects the data is combined. An attempt is made to deal with more errors (see, for example, Patent Document 1).

図16は、ブロック符号の一例を示す図である。
誤りデータの訂正は、1ライン分のメインデータ192バイト+ECCパリティ16バイトの計208バイトについて、左側から右側に向かって1ライン(図16中斜線部)毎に順次行う。この際、他のラインとの相互関係は無い。一般にECCパリティが2t(t=1、2、・・・n)バイトで、検出訂正が可能なバイト数をkバイト(k個)、消失訂正が可能なバイト数をsバイト(s個)とすると、次式(1)の関係がある。
FIG. 16 is a diagram illustrating an example of a block code.
Error data correction is performed sequentially for each line (shaded portion in FIG. 16) from the left to the right for a total of 208 bytes of main data 192 bytes + ECC parity 16 bytes for one line. At this time, there is no mutual relationship with other lines. Generally, the ECC parity is 2t (t = 1, 2,... N) bytes, the number of bytes that can be detected and corrected is k bytes (k pieces), and the number of bytes that can be lost and corrected is s bytes (s pieces). Then, there is a relationship of the following formula (1).

2k+s≦2t・・・(1)
従って、検出訂正のみ行うと1ラインのうちECCパリティ(16バイト)の半分の8バイトまでの誤りを訂正することができる。
2k + s ≦ 2t (1)
Accordingly, if only detection and correction are performed, an error of up to 8 bytes, which is half of the ECC parity (16 bytes), can be corrected in one line.

さらに、消失訂正を組み合わせた場合、訂正することができる誤りの個数を増やすことができる。例えば、予め8個の誤り位置がわかっていれば、消失訂正8個+検出訂正4個で合計12個まで訂正できる。また、16個の誤り位置の全てが予めわかっていれば、消失訂正のみで16個の誤りを訂正できるが、その場合、検出訂正はできないので、不測のエラーが存在すると訂正不能となる。
特開平5−74066号公報
Furthermore, when erasure correction is combined, the number of errors that can be corrected can be increased. For example, if 8 error positions are known in advance, a total of 12 errors can be corrected by 8 erasure corrections + 4 detection corrections. Further, if all 16 error positions are known in advance, 16 errors can be corrected only by erasure correction. However, in this case, since detection and correction cannot be performed, if there is an unexpected error, correction becomes impossible.
JP-A-5-74066

消失訂正を行うためには、誤りがあると思われるデータの位置にフラグ(消失フラグ)を立てる。フラグの数は前述した式(1)で定めるs個となるが、もしフラグを立てた位置に誤りが無かったとしても、フラグを使用するため、外れたフラグは無駄に使用したことになり、かえって訂正限界を下げることになる。   In order to perform erasure correction, a flag (erasure flag) is set at the position of data that seems to have an error. The number of flags is s determined by the above-described equation (1). However, even if there is no error at the position where the flag is set, the flag is used. On the contrary, the correction limit will be lowered.

このように、誤り位置の予測が外れた場合には正しいデータに対して訂正するECCパリティのバイトを無駄に使ってしまうことになるため、高い確率で誤り位置を予測することが必要となる。   As described above, when the error position is not predicted, the ECC parity byte for correcting the correct data is wasted, and it is necessary to predict the error position with high probability.

本発明はこのような点に鑑みてなされたものであり、より多くの誤りを訂正することができる誤り訂正装置および誤り訂正方法を提供することを目的とする。   The present invention has been made in view of these points, and an object thereof is to provide an error correction apparatus and an error correction method capable of correcting more errors.

上記目的を達成するために、誤り訂正装置および誤り訂正方法が提供される。この誤り訂正装置および誤り訂正方法は、ブロック単位で取り込んだ光ディスクのブロックデータに含まれる誤りデータを訂正するものであり、誤りデータ位置検出部とバーストエラー予測部と、訂正実行部とを有している。   In order to achieve the above object, an error correction apparatus and an error correction method are provided. This error correction apparatus and error correction method corrects error data included in block data of an optical disk taken in block units, and includes an error data position detection unit, a burst error prediction unit, and a correction execution unit. ing.

誤りデータ位置検出部は、ブロックデータの誤りデータの位置をライン毎に検出する。
バーストエラー予測部は、他のラインの誤りデータの位置を参照し、誤りデータ位置検出部により検出された位置の誤りデータがバーストエラーか否かを予測する。
The error data position detection unit detects the position of the error data of the block data for each line.
The burst error prediction unit refers to the position of the error data on another line, and predicts whether or not the error data at the position detected by the error data position detection unit is a burst error.

訂正実行部は、各ラインの、バーストエラー予測部によりバーストエラーであると予測された誤りデータについて消失訂正を行い、それ以外の誤りデータについて検出訂正を行う。   The correction execution unit performs erasure correction on the error data predicted by the burst error prediction unit of each line as a burst error, and performs detection correction on the other error data.

このような誤り訂正装置および誤り訂正方法によれば、誤りデータ位置検出部により、ブロックデータの誤りデータの位置がライン毎に検出される。そして、バーストエラー予測部により、他のラインの誤りデータの位置が参照され、誤りデータ位置検出部によって検出された位置の誤りデータがバーストエラーか否かが予測される。そして、訂正実行部により、各ラインの、バーストエラー予測部によってバーストエラーであると予測された誤りデータについて消失訂正が行われ、それ以外の誤りデータについて検出訂正が行われる。   According to such an error correction apparatus and error correction method, the error data position detection unit detects the position of the error data of the block data for each line. The burst error prediction unit refers to the position of error data on another line, and predicts whether or not the error data at the position detected by the error data position detection unit is a burst error. Then, the correction execution unit performs erasure correction on the error data predicted by the burst error prediction unit of each line as a burst error, and performs detection correction on the other error data.

開示の誤り訂正装置および誤り訂正方法によれば、より多くの誤りを訂正することができる。   According to the disclosed error correction apparatus and error correction method, more errors can be corrected.

以下、本発明の実施の形態を、図面を参照して詳細に説明する。
まず、本発明の概要について説明し、その後、実施の形態を説明する。
図1は、本発明の概要を示す図である。
Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.
First, an outline of the present invention will be described, and then an embodiment will be described.
FIG. 1 is a diagram showing an outline of the present invention.

図1に示す誤り訂正装置1は、ブロック単位で取り込んだ光ディスクのブロックデータ5に含まれる誤りデータを訂正するものであり、誤りデータ位置検出部2とバーストエラー予測部3と、訂正実行部4とを有している。   An error correction apparatus 1 shown in FIG. 1 corrects error data included in block data 5 of an optical disk taken in block units. An error data position detection unit 2, a burst error prediction unit 3, and a correction execution unit 4 And have.

光ディスクとしてはエラー訂正用のパリティビットを備えていればその種別は特に限定されない。
ブロックデータ5は、メインデータ領域とパリティ領域とで構成されている。
The type of optical disc is not particularly limited as long as it has parity bits for error correction.
The block data 5 is composed of a main data area and a parity area.

誤りデータ位置検出部2は、ブロックデータ5の誤りデータの位置をライン毎に検出する。
図1では、一例としてディスク上の記録方向に対して直交する方向を検出方向とし、検出方向に並ぶ1ラインのデータをそれぞれ紙面左側から右側に順番に検出している。
The error data position detector 2 detects the position of the error data of the block data 5 for each line.
In FIG. 1, as an example, the direction orthogonal to the recording direction on the disc is set as the detection direction, and one line of data arranged in the detection direction is detected sequentially from the left side to the right side of the drawing.

バーストエラー予測部3は、他のラインの誤りデータの位置を参照し、誤りデータ位置検出部2により検出された位置の誤りデータがバーストエラーか否かを予測する。
ここで、図1中「×」印の誤りデータは、バーストエラーであると判明した誤りデータを示しており、「●」印の誤りデータは、実際はバーストエラーであるが、誤りデータ位置検出部2が検出した時点では、まだバーストエラーであることが判明していないデータを示しており、「△」印の誤りデータは、実際はバーストエラーでないが、誤りデータ位置検出部2が検出した時点では、まだバーストエラーでないことが判明していないデータを示している。
The burst error prediction unit 3 refers to the position of error data on another line and predicts whether or not the error data at the position detected by the error data position detection unit 2 is a burst error.
Here, the error data indicated by “x” in FIG. 1 indicates error data that has been found to be a burst error, and the error data indicated by “●” is actually a burst error, but an error data position detection unit. 2 indicates data that has not yet been found to be a burst error, and error data marked with “Δ” is not actually a burst error, but at the time the error data position detection unit 2 detects it. Shows data that is not yet known to be a burst error.

バーストエラー予測部3は、「●」印の誤りデータについては、例えば、紙面左隣にバーストエラーが存在することから今回検出した位置の誤りデータがバーストエラーであると予測する。また、「△」印の誤りデータについては、例えば、紙面左隣にバーストエラーが存在しないことから今回検出した位置の誤りデータはバーストエラーでないと予測する。   For the error data marked with “●”, the burst error prediction unit 3 predicts that the error data at the position detected this time is a burst error because there is a burst error on the left side of the page. For the error data marked with “Δ”, for example, since there is no burst error on the left side of the page, it is predicted that the error data at the position detected this time is not a burst error.

訂正実行部4は、各ラインの、バーストエラー予測部3によりバーストエラーであると予測された誤りデータについて消失訂正を行い、それ以外の誤りデータについて検出訂正を行う。   The correction execution unit 4 performs erasure correction on the error data predicted by the burst error prediction unit 3 in each line as a burst error, and performs detection correction on the other error data.

図1では、「●」印の誤りデータについては消失訂正を行い、「△」印の誤りデータについては、検出訂正を行う。これにより、訂正限界を高めることができる。
以下、本発明の実施の形態を説明する。
In FIG. 1, erasure correction is performed for error data marked with “●”, and detection correction is performed for error data marked with “Δ”. Thereby, the correction limit can be increased.
Embodiments of the present invention will be described below.

図2は、光ディスク記録再生装置のハードウェア構成例を示す図である。
光ディスク記録再生装置10は、CPU(Central Processing Unit)11によって装置全体が制御されている。CPU11には、バス17を介してDRAM(Dynamic Random Access Memory)12、ハードディスクドライブ(HDD:Hard Disk Drive)13、グラフィック処理装置14、入力インタフェース15、およびディスクコントローラ16が接続されている。
FIG. 2 is a diagram illustrating a hardware configuration example of the optical disc recording / reproducing apparatus.
The entire optical disc recording / reproducing apparatus 10 is controlled by a CPU (Central Processing Unit) 11. A dynamic random access memory (DRAM) 12, a hard disk drive (HDD) 13, a graphic processing device 14, an input interface 15, and a disk controller 16 are connected to the CPU 11 via a bus 17.

DRAM12には、CPU11に実行させるOS(Operating System)のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。また、DRAM12には、CPU11による処理に必要な各種データが格納される。HDD13には、OSやアプリケーションプログラムが格納される。また、HDD13内には、プログラムファイルが格納される。   The DRAM 12 temporarily stores at least part of an OS (Operating System) program and application programs to be executed by the CPU 11. The DRAM 12 stores various data necessary for processing by the CPU 11. The HDD 13 stores an OS and application programs. A program file is stored in the HDD 13.

グラフィック処理装置14には、モニタ14aが接続されている。グラフィック処理装置14は、CPU11からの命令に従って、画像をモニタ14aの画面に表示させる。入力インタフェース15には、キーボード15aとマウス15bとが接続されている。入力インタフェース15は、キーボード15aやマウス15bから送られてくる信号を、バス17を介してCPU11に送信する。   A monitor 14 a is connected to the graphic processing device 14. The graphic processing device 14 displays an image on the screen of the monitor 14 a in accordance with a command from the CPU 11. A keyboard 15 a and a mouse 15 b are connected to the input interface 15. The input interface 15 transmits signals sent from the keyboard 15 a and the mouse 15 b to the CPU 11 via the bus 17.

ディスクコントローラ16は、光ディスク(後述)の再生等を行う。
光ディスクとしては、例えばCD(Compact Disc)等が挙げられる。
図3は、ディスクコントローラの機能を示すブロック図である。
The disk controller 16 performs reproduction of an optical disk (described later).
Examples of the optical disc include a CD (Compact Disc).
FIG. 3 is a block diagram showing functions of the disk controller.

ディスクコントローラ16は、DSP(Digital Signal Processor)161と、CRC(Cyclic Redundancy Check)チェック部162と、DRAMコントローラ163と、ECC164と、エンコーダ165と、デコーダ166と、インタフェース部167とを有している。   The disk controller 16 includes a DSP (Digital Signal Processor) 161, a CRC (Cyclic Redundancy Check) check unit 162, a DRAM controller 163, an ECC 164, an encoder 165, a decoder 166, and an interface unit 167. .

DSP161は、ディスクコントローラ16全体の制御を行う。
CRCチェック部162は、DRAMコントローラ163のデータのCRCチェックを行う。
The DSP 161 controls the entire disk controller 16.
The CRC check unit 162 performs a CRC check on the data of the DRAM controller 163.

DRAMコントローラ163は、受け取ったデータをDRAM12に送る。また、必要に応じてDRAM12からデータを取り出し、ECC164等に送る。
また、DRAMコントローラ163は、ECC164からメモリアドレスおよび数値を受け取ると、検出訂正および必要に応じて消失訂正を行う。
The DRAM controller 163 sends the received data to the DRAM 12. Further, data is taken out from the DRAM 12 as necessary and sent to the ECC 164 or the like.
When the DRAM controller 163 receives the memory address and the numerical value from the ECC 164, the DRAM controller 163 performs detection correction and erasure correction as necessary.

ECC164は、DRAMコントローラ163から送られたデータに対し誤り位置と数値を算出し、誤り位置をメモリアドレスに変換した後に、変換したメモリアドレスとその数値をDRAMコントローラ163に送る。また、光ディスク100へのデータ書き込み時には、書き込みデータをエンコーダ165に送る。   The ECC 164 calculates an error position and a numerical value for the data sent from the DRAM controller 163, converts the error position into a memory address, and then sends the converted memory address and the numerical value to the DRAM controller 163. In addition, when data is written to the optical disc 100, write data is sent to the encoder 165.

エンコーダ165は、ECC164から供給されたデータをエンコードし、光ディスク100に書き込む。
デコーダ166は、光ディスク100から供給されたデータをデコードし、DRAMコントローラ163に送る。
The encoder 165 encodes the data supplied from the ECC 164 and writes it on the optical disc 100.
The decoder 166 decodes the data supplied from the optical disc 100 and sends it to the DRAM controller 163.

インタフェース部167は、SATA(Serial ATA)規格によってバス17に接続されている。インタフェース部167は、DRAMコントローラ163からの信号を、バス17を介してCPU11に送信する。   The interface unit 167 is connected to the bus 17 according to the SATA (Serial ATA) standard. The interface unit 167 transmits a signal from the DRAM controller 163 to the CPU 11 via the bus 17.

以上のようなハードウェア構成によって、本実施の形態の処理機能を実現することができる。このようなハードウェア構成のシステムにおいて誤り訂正を行うために、ECC164内には、以下のような機能が設けられる。   With the hardware configuration as described above, the processing functions of the present embodiment can be realized. In order to perform error correction in a system having such a hardware configuration, the ECC 164 has the following functions.

図4は、ECCの機能を示すブロック図である。
ブロックデータメモリ12a、12a、・・・は、DRAM12の一領域によって構成され、光ディスク100から読み込まれたブロックデータが、誤り訂正を行うECCブロック単位で格納されている。DRAMコントローラ163は、これらのブロックデータをECC164に送る。
FIG. 4 is a block diagram showing ECC functions.
The block data memories 12a, 12a,... Are constituted by one area of the DRAM 12, and block data read from the optical disc 100 is stored in units of ECC blocks for error correction. The DRAM controller 163 sends these block data to the ECC 164.

ECC164は、シンドローム生成部164aと、シンドローム多項式補正部164bと、ユークリッド互除部164cと、チェンサーチ部164dと、バーストエラーメモリ164eと、アドレス変換部164fとを有している。   The ECC 164 includes a syndrome generation unit 164a, a syndrome polynomial correction unit 164b, an Euclidean mutual division unit 164c, a chain search unit 164d, a burst error memory 164e, and an address conversion unit 164f.

シンドローム生成部164aは、ブロックデータメモリ12a、12a、・・・に格納されているライン毎のデータから誤りパターンのみによって一意に決定されるシンドロームを計算する。   The syndrome generation unit 164a calculates a syndrome that is uniquely determined only by the error pattern from the data for each line stored in the block data memories 12a, 12a,.

シンドローム多項式補正部164bは、バーストエラーメモリ164eから得られるバーストエラーが生じているデータの位置を示すバーストエラー位置情報に基づいて、シンドロームを補正する。   The syndrome polynomial correction unit 164b corrects the syndrome based on the burst error position information indicating the position of the data where the burst error is generated, obtained from the burst error memory 164e.

ユークリッド互除部164cは、補正されたシンドロームおよび消失の位置から誤り位置多項式と誤り数値多項式を計算する。
チェンサーチ部164dは、誤り位置多項式と誤り数値多項式から誤り位置と誤り数値とを算出する。そして、誤り位置のデータをバーストエラーメモリ164eに出力し、誤り位置のデータと誤り数値のデータとをアドレス変換部164fに出力する。
The Euclidean mutual division unit 164c calculates an error position polynomial and an error numerical polynomial from the corrected syndrome and erasure positions.
The chain search unit 164d calculates an error position and an error value from the error position polynomial and the error value polynomial. Then, the error position data is output to the burst error memory 164e, and the error position data and the error value data are output to the address conversion unit 164f.

バーストエラーメモリ164eは、入力された誤り位置のデータが、バーストエラーであるか否かを判断し、バーストエラー位置情報を作成し、シンドローム多項式補正部164bに出力する。   The burst error memory 164e determines whether or not the input error position data is a burst error, creates burst error position information, and outputs the burst error position information to the syndrome polynomial correction unit 164b.

アドレス変換部164fは、誤り位置のデータをメモリアドレスに変換し、誤り数値のデータとともにDRAMコントローラ163に送る。DRAMコントローラ163は、受け取ったアドレス位置のデータをDRAM12より読み取り、誤り位置数値のデータと排他的論理和(EOR)して、DRAM12の同じアドレス位置に書き戻すことにより訂正する。   The address conversion unit 164f converts the data at the error position into a memory address and sends it to the DRAM controller 163 together with the error value data. The DRAM controller 163 reads the data at the received address position from the DRAM 12, performs exclusive OR (EOR) with the data at the error position numerical value, and corrects it by writing it back to the same address position in the DRAM 12.

次に、ブロックデータメモリ12a、12a、・・・に格納されるブロックデータについて説明する。
図5は、ブロックデータを示す図である。
Next, block data stored in the block data memories 12a, 12a,... Will be described.
FIG. 5 is a diagram showing block data.

以下、紙面の上方向を「上」、下方向を「下」、左方向を「左」、右方向を「右」、上下方向を「行方向」、左右方向を「列方向」という。
ブロックデータBD1は、行方向に208バイト、列方向に172バイト(ライン)で構成されている。
In the following, the upward direction on the page is referred to as “up”, the downward direction as “down”, the left direction as “left”, the right direction as “right”, the vertical direction as “row direction”, and the horizontal direction as “column direction”.
The block data BD1 is composed of 208 bytes in the row direction and 172 bytes (lines) in the column direction.

行方向208バイトのうち、上から192バイトはメインデータであり、残りの16バイトはECCパリティである。
このブロックデータBD1には、図5中、左側から右側に向かう方向(記録方向)にデータが書き込まれ、一番右の列に達すると、一行下の左側から記録方向にデータが書き込まれる。
Of the 208 bytes in the row direction, 192 bytes from the top are main data, and the remaining 16 bytes are ECC parity.
In the block data BD1, data is written in the direction from the left side to the right side (recording direction) in FIG. 5, and when reaching the rightmost column, the data is written in the recording direction from the left side one row below.

ここで、図5中、「×」印で示した部位は、バーストエラー(が生じていること)を示している。
次に、ディスクコントローラ16の誤り訂正の動作を説明する。
Here, in FIG. 5, the part indicated by “x” indicates a burst error (occurrence of occurrence).
Next, the error correction operation of the disk controller 16 will be described.

図6は、ディスクコントローラの誤り訂正の動作を示すフローチャートである。
まず、DRAMコントローラ163が、ブロックデータBD1の処理対象の行方向1ラインを設定する(ステップS1)。
FIG. 6 is a flowchart showing the error correction operation of the disk controller.
First, the DRAM controller 163 sets one line in the row direction to be processed for the block data BD1 (step S1).

次に、DRAMコントローラ163が、ECC164が出力したメモリアドレスおよび誤り数値に基づいて、該当する行方向1ラインの検出訂正を行う(ステップS2)。具体的には、誤り位置のデータと誤り数値の排他的論理和を取って、その結果(すなわち、正しいデータ)をブロックデータBD1の、当該誤り位置に書き戻す。   Next, the DRAM controller 163 performs detection and correction of the corresponding line in the row direction based on the memory address and error value output by the ECC 164 (step S2). More specifically, the exclusive OR of the error position data and the error numerical value is calculated, and the result (that is, correct data) is written back to the error position of the block data BD1.

また、チェンサーチ部164dが、誤り位置のデータをバーストエラーメモリ164eに出力する(ステップS3)。
次に、DRAMコントローラ163が、次に処理を行うラインを1ライン右隣のラインとする(ステップS4)。
Further, the chain search unit 164d outputs the data at the error position to the burst error memory 164e (step S3).
Next, the DRAM controller 163 sets the line to be processed next as one line right next (step S4).

次に、バーストエラーメモリ164eが、処理を行うラインにバーストエラーが存在するか否かを判断する(ステップS5)。
バーストエラーが存在しない場合(ステップS5のNo)、ステップS2に移行し、ステップS2以降の動作を引き続き行う。
Next, the burst error memory 164e determines whether or not there is a burst error in the line to be processed (step S5).
If there is no burst error (No in step S5), the process proceeds to step S2, and the operation after step S2 is continued.

一方、バーストエラーが存在する場合(ステップS5のYes)、バーストエラーメモリ164eが、バーストエラー位置をシンドローム多項式補正部164bに出力し、シンドローム多項式補正部164bが、バーストエラーメモリ164eから得られるバーストエラー位置情報に基づいて、シンドロームを補正する。   On the other hand, when there is a burst error (Yes in step S5), the burst error memory 164e outputs the burst error position to the syndrome polynomial correction unit 164b, and the syndrome polynomial correction unit 164b obtains the burst error obtained from the burst error memory 164e. Based on the position information, the syndrome is corrected.

また、DRAMコントローラ163が、シンドローム多項式補正部164b、ユークリッド互除部164c、チェンサーチ部164dおよびアドレス変換部164fの処理結果に基づいて、行方向のラインの検出訂正および消失訂正を行う(ステップS6)。その後、ステップS3に移行し、ステップS3以降の動作を引き続き行う。   Further, the DRAM controller 163 performs line-direction line detection correction and erasure correction based on the processing results of the syndrome polynomial correction unit 164b, the Euclidean mutual division unit 164c, the chain search unit 164d, and the address conversion unit 164f (step S6). . Thereafter, the process proceeds to step S3, and the operations after step S3 are continued.

このような処理を最終ラインに達するまで行う。
図7は、バーストエラーメモリの内部構成を示すブロック図である。
バーストエラーメモリ164eは、誤り位置入力制御回路1641と、行方向1ライン分の誤り位置のデータを保持(記憶)する32個の位置保持レジスタreg0〜reg31と、各レジスタにそれぞれ対応して設けられ、同じ誤り位置が列方向にいくつ連続しているかを数えるカウンタC0〜C31と、バーストエラー位置出力制御回路1642とを有している。
Such processing is performed until the final line is reached.
FIG. 7 is a block diagram showing the internal configuration of the burst error memory.
The burst error memory 164e is provided corresponding to each of the error position input control circuit 1641, 32 position holding registers reg0 to reg31 that hold (store) error position data for one line in the row direction. , Counters C0 to C31 for counting how many of the same error positions continue in the column direction, and a burst error position output control circuit 1642.

誤り位置入力制御回路1641には、ブロックデータBD1のうちの行方向1ライン分の訂正が終わる毎に、チェンサーチ部164dが出力する誤り位置のデータが読み込まれる。   The error position input control circuit 1641 reads error position data output from the chain search unit 164d every time correction of one line in the row direction of the block data BD1 is completed.

誤り位置入力制御回路1641は、各位置保持レジスタreg0〜reg31が誤り位置のデータを保持しているか否か、およびデータを保持している場合、どの誤り位置のデータを保持しているか、を把握しており、既に保持しているデータに列方向に隣接する誤り位置のデータが入力されると、そのレジスタに対応するカウンタをインクリメント(+1カウントアップ)する。また、位置保持レジスタreg0〜reg31が保持していない誤り位置のデータが入力されると、データを保持していない位置保持レジスタに、読み込まれた誤り位置のデータを出力する。   The error position input control circuit 1641 grasps whether or not each position holding register reg0 to reg31 holds data at an error position, and when holding data, which error position data is held. When data at an error position adjacent to the already held data in the column direction is input, the counter corresponding to the register is incremented (+1 counted up). Further, when error position data not held in the position holding registers reg0 to reg31 is inputted, the read error position data is outputted to the position holding register not holding data.

なお、位置保持レジスタおよびカウンタの個数は、特に限定されないが、本実施の形態ではECCパリティの2倍(保持分16バイトおよび余裕分16バイトを併せた32個)にしている。   The number of position holding registers and counters is not particularly limited, but in this embodiment, it is twice the ECC parity (32 including 16 bytes for holding and 16 bytes for margin).

バーストエラー位置出力制御回路1642は、カウンタC0〜C31および位置保持レジスタreg0〜reg31の情報に基づいてバーストエラーの位置を求めてそのバーストエラー位置情報を出力する。   The burst error position output control circuit 1642 obtains the position of the burst error based on the information in the counters C0 to C31 and the position holding registers reg0 to reg31, and outputs the burst error position information.

次に、バーストエラーメモリ164eのバーストエラー位置検出動作を説明する。
誤り位置入力制御回路1641は、行方向1ラインの誤り位置のデータが読み込まれる毎に、入力された誤り位置のデータと、位置保持レジスタreg0〜reg31に保持されている誤り位置のデータとを比較し、列方向に隣接する誤り位置のデータが既に位置保持レジスタreg0〜reg31のいずれかに保持されていれば、対応するカウンタC0〜C31のカウンタ値をインクリメントし、保持されていなければ、読み込んだ誤り位置のデータを空いている位置保持レジスタに保存するとともにカウンタのカウンタ値をインクリメントする。
Next, the burst error position detection operation of the burst error memory 164e will be described.
The error position input control circuit 1641 compares the input error position data with the error position data held in the position holding registers reg0 to reg31 every time the error position data of one line in the row direction is read. If the data at the error position adjacent in the column direction is already held in one of the position holding registers reg0 to reg31, the counter value of the corresponding counter C0 to C31 is incremented. The error position data is saved in an empty position holding register and the counter value of the counter is incremented.

また、所定回数連続して誤り位置のデータが入力されなかった(バイト位置でエラーが無かった)位置保持レジスタについては、その位置保持レジスタに格納されている誤り位置のデータを抹消し、対応するカウンタ値を「0」にする。   For the position holding register in which the error position data has not been input a predetermined number of times (no error at the byte position), the error position data stored in the position holding register is deleted, and the corresponding The counter value is set to “0”.

そして、バーストエラー位置出力制御回路1642は、カウント値が予め設定された値以上であれば、対応する位置保持レジスタに保存されている誤り位置のデータ(の近傍)にはバーストエラーが存在すると判断し、次の行方向1ラインの誤り位置のデータが読み込まれたときに、実際の次のラインのバーストエラーの有無にかかわらず、その誤り位置に消失訂正の対象であることを示す消失フラグを立てる。以降、カウント値が予め設定された値以上であれば、消失フラグを立て続ける。このように、現在のカウンタ値と位置保持レジスタの値によって、次のラインの消失訂正の有無を判断する。   Then, the burst error position output control circuit 1642 determines that there is a burst error in (in the vicinity of) the error position data stored in the corresponding position holding register if the count value is equal to or greater than a preset value. When the data of the error position of the next line in the first line is read, the erasure flag indicating that it is the object of erasure correction is displayed at the error position regardless of the actual burst error of the next line. Stand up. Thereafter, if the count value is equal to or greater than a preset value, the disappearance flag is continuously set. In this manner, the presence / absence of erasure correction for the next line is determined based on the current counter value and the value of the position holding register.

図8は、第1の実施の形態のブロックデータの具体例を示す図である。
本具体例では、連続して同じ誤り位置の情報が入力されなかった位置保持レジスタについて、その誤り位置の情報を抹消している。
FIG. 8 is a diagram illustrating a specific example of block data according to the first embodiment.
In this specific example, the information on the error position is deleted for the position holding register in which the information on the same error position is not continuously input.

ブロックデータBD1aにおいては、バイトmとバイトnにバーストエラーが生じている。また、行方向ラインNo.9は、誤りが9個あるので16バイトのECCパリティでは、検出訂正のみでは誤りを訂正することができない。   In block data BD1a, a burst error has occurred in byte m and byte n. The row direction line No. Since 9 has 9 errors, the ECC parity of 16 bytes cannot be corrected only by detection and correction.

図9は、図8に示すブロックデータをバーストエラーメモリで処理した処理結果を模式的に示す図である。ここで、図9中「B」は、消失フラグを示している。
図9中太枠で囲ったように、行方向ラインNo.9のバイトmは、行方向ラインNo.4から行方向ラインNo.8まで続くバーストエラーにより、引き続きバーストエラーが存在するものとして消失フラグが立てられ、消失訂正が行われる。また、バイトnは、行方向ラインNo.6から行方向ラインNo.8まで続くバーストエラーにより、引き続きバーストエラーが存在するものとして消失フラグが立てられ、消失訂正が行われる。
FIG. 9 is a diagram schematically showing a processing result obtained by processing the block data shown in FIG. 8 with the burst error memory. Here, “B” in FIG. 9 indicates a disappearance flag.
As indicated by the thick frame in FIG. The byte m of 9 indicates the row direction line No. 4 to row direction line No. As a result of the burst error continuing to 8, the erasure flag is set on the assumption that a burst error still exists, and the erasure correction is performed. Byte n is a row direction line No. 6 to the row direction line No. As a result of the burst error continuing to 8, the erasure flag is set on the assumption that a burst error still exists, and the erasure correction is performed.

従って、行方向ラインNo.9は、バイトmとバイトnの計2バイトについては消失訂正が行われ、残りの7バイトについては検出訂正が行われる。これにより、2k+s=2×(9−2)+2=16となり、ECCパリティが16バイトであっても、9個の誤りを訂正することができる。   Therefore, the row direction line No. In No. 9, erasure correction is performed for a total of 2 bytes of byte m and byte n, and detection correction is performed for the remaining 7 bytes. As a result, 2k + s = 2 × (9−2) + 2 = 16. Even if the ECC parity is 16 bytes, nine errors can be corrected.

以上述べたように、本実施の形態の光ディスク記録再生装置10によれば、ディスクコントローラ16が、確度の高い消失フラグを立てて誤り訂正を行うようにしたので、より多くの誤りを訂正することができる。   As described above, according to the optical disc recording / reproducing apparatus 10 of the present embodiment, the disc controller 16 performs error correction by setting a highly accurate erasure flag, so that more errors can be corrected. Can do.

次に、第2の実施の形態の光ディスク記録再生装置について説明する。
以下、第2の実施の形態の光ディスク記録再生装置について、前述した第1の実施の形態との相違点を中心に説明し、同様の事項については、その説明を省略する。
Next, an optical disk recording / reproducing apparatus according to the second embodiment will be described.
Hereinafter, the optical disc recording / reproducing apparatus according to the second embodiment will be described with a focus on differences from the first embodiment described above, and description of similar matters will be omitted.

第2の実施の形態の光ディスク記録再生装置は、光ディスクの種別およびその制御方法が異なっている。
図10は、第2の実施の形態の光ディスク記録再生装置のブロックデータを示す図である。
The optical disc recording / reproducing apparatus of the second embodiment differs in the type of optical disc and its control method.
FIG. 10 is a diagram illustrating block data of the optical disc recording / reproducing apparatus according to the second embodiment.

第2の実施の形態の光ディスクは、DVD(Digital Versatile Disk)やHDDVD(High Definition DVD)のようにメインデータの右側および下側にECCパリティが設けられている。   The optical disk of the second embodiment is provided with ECC parity on the right side and the lower side of the main data like DVD (Digital Versatile Disk) and HDDVD (High Definition DVD).

図10に示すブロックデータBD2の右側のECCパリティ(PI)は10バイトであり、下側のECCパリティ(PO)は16バイトである。
次に、第2の実施の形態のディスクコントローラ16の誤り訂正の動作を説明する。
The right ECC parity (PI) of the block data BD2 shown in FIG. 10 is 10 bytes, and the lower ECC parity (PO) is 16 bytes.
Next, the error correction operation of the disk controller 16 of the second embodiment will be described.

図11は、ディスクコントローラの誤り訂正の動作を示すフローチャートである。
まず、DRAMコントローラ163が、列方向の各ラインについてECCパリティ(PI)を用いて検出訂正を行う(ステップS11)。
FIG. 11 is a flowchart showing the error correction operation of the disk controller.
First, the DRAM controller 163 performs detection and correction for each line in the column direction using ECC parity (PI) (step S11).

検出訂正が終了後、DRAMコントローラ163が、全ての列方向のラインが訂正できたか否か、すなわち、列方向の各ラインそれぞれの誤りの個数が5個以下であるか否かを判断する(ステップS12)。   After completion of detection and correction, the DRAM controller 163 determines whether or not all the lines in the column direction have been corrected, that is, whether or not the number of errors in each line in the column direction is 5 or less (step) S12).

全てのラインが訂正できた場合(ステップS12のYes)、すなわち、各ラインそれぞれの誤りの個数が5個以下であった場合、処理を終了する。
一方、全てのラインが訂正できなかった場合(ステップS12のNo)、すなわち、誤りの個数が5個より多いラインが存在する場合、DRAMコントローラ163が、検出訂正で訂正できなかったライン数が16ライン(2t)より多いか否か(消失訂正可能か否か)を判断する(ステップS13)。
If all the lines have been corrected (Yes in step S12), that is, if the number of errors in each line is 5 or less, the process is terminated.
On the other hand, if all lines could not be corrected (No in step S12), that is, if there are lines with more than 5 errors, the DRAM controller 163 has 16 lines that could not be corrected by detection correction. It is determined whether or not there are more lines (2t) (whether or not erasure correction is possible) (step S13).

訂正不能であったライン数が16より多い場合、すなわち消失訂正できない場合、(ステップS13のYes)、バーストエラーと検出された誤り位置のみに消失フラグを立てながら、行方向のラインについて検出訂正および消失訂正を行う(ステップS14)。その後、ステップS17に移行する。   If the number of lines that could not be corrected is greater than 16, that is, if erasure correction cannot be performed (Yes in step S13), the detection and correction of lines in the row direction are performed while setting the erasure flag only at the error position detected as a burst error. Erasure correction is performed (step S14). Thereafter, the process proceeds to step S17.

一方、訂正不能であったライン数が16以下の場合(ステップS13のNo)、すなわち、消失訂正可能な場合、検出訂正で訂正できなかったラインの全バイトに消失フラグを立てる(ステップS15)。   On the other hand, if the number of lines that could not be corrected is 16 or less (No in step S13), that is, if erasure correction is possible, an erasure flag is set for all bytes of the line that could not be corrected by detection correction (step S15).

その後、行方向のラインの検出訂正および消失訂正を行う(ステップS16)。
行方向の全てのラインが訂正できたか否かを判断する(ステップS17)。
行方向の全てのラインが訂正できた場合(ステップS17のYes)、処理を終了する。
Thereafter, detection correction and disappearance correction of the line in the row direction are performed (step S16).
It is determined whether or not all the lines in the row direction have been corrected (step S17).
If all the lines in the row direction have been corrected (Yes in step S17), the process ends.

一方、行方向の全てのラインが訂正できなかった場合(ステップS17のNo)、訂正できなかった行方向のラインの全バイトに消失フラグを立てる(ステップS18)。
次に、列方向のラインについて検出訂正および消失訂正を行う(ステップS19)。
On the other hand, if all the lines in the row direction could not be corrected (No in step S17), an erasure flag is set for all bytes in the line in the row direction that could not be corrected (step S18).
Next, detection correction and erasure correction are performed on the line in the column direction (step S19).

列方向の全てのラインが訂正できたか否かを判断する(ステップS20)。
列方向の全てのラインが訂正できた場合(ステップS20のYes)、処理を終了する。
It is determined whether or not all the lines in the column direction have been corrected (step S20).
If all the lines in the column direction have been corrected (Yes in step S20), the process ends.

一方、列方向の全てのラインが訂正できなかった場合(ステップS20のNo)、ステップS13に移行し、ステップS13以降の動作を引き続き行う。
次に、具体例を用いて説明する。
On the other hand, if all the lines in the column direction could not be corrected (No in step S20), the process proceeds to step S13, and the operations after step S13 are continued.
Next, a specific example will be described.

図12は、第2の実施の形態のブロックデータの具体例を示す図である。
図中の「+」印、「×」印、「△」印はいずれもバイトの誤り位置を示す。「+」は、バーストエラーを示しており、「×」印は、バーストエラーではないが、列方向に6つ以上の誤りが存在するラインの誤り位置を示しており、「△」印は、誤りの数が5つ以下の列の誤り位置を示している。また、斜線で示す列は、「+」印または「×」印の誤りが存在する列を示している。
FIG. 12 is a diagram illustrating a specific example of block data according to the second embodiment.
In the figure, the “+” mark, the “x” mark, and the “△” mark all indicate byte error positions. “+” Indicates a burst error, “×” indicates an error position of a line that is not a burst error but has six or more errors in the column direction, and “Δ” indicates The error position of the row | line | column whose number of errors is five or less is shown. In addition, columns indicated by diagonal lines indicate columns in which “+” mark or “×” mark errors exist.

列方向のECCパリティ(PI)は10バイトなので、DRAMコントローラ163は、誤りの数が5つまでの列方向の各ラインについて、すなわち、「△」印の誤り位置を備えるラインについては、検出訂正のみで誤りを訂正することができる。   Since the ECC parity (PI) in the column direction is 10 bytes, the DRAM controller 163 detects and corrects each line in the column direction up to five errors, that is, a line having an error position marked with “Δ”. Only can correct the error.

しかし、網掛け部分に示すように、「+」印または「×」印の誤りは、1ラインあたり6個以上あるので、誤りを訂正することができない。また、誤り位置も特定することができない。   However, as shown in the shaded portion, there are six or more errors of the “+” mark or the “x” mark per line, so the error cannot be corrected. Also, the error position cannot be specified.

また、ブロックデータBD2aでは、列方向のECCパリティ(PO)は16バイトであるが、検出訂正で訂正できなかった列方向のラインが18ライン存在し、消失訂正を行っても誤りを訂正することができない。   In the block data BD2a, the ECC parity (PO) in the column direction is 16 bytes, but there are 18 columns in the column direction that could not be corrected by detection correction, and errors can be corrected even if erasure correction is performed. I can't.

よって、行方向のラインについても、まず、検出訂正を行うことになるが、このとき第1の実施の形態と同様にバーストエラーメモリ164eを用いてバーストエラーを検出しながら検出訂正を行う。具体的には、行方向ラインNo.0から順に検出訂正を行い、「+」印のバーストエラーを検出した場合は、第1の実施の形態と同様に消失フラグを用いて消失訂正を行う。   Therefore, detection and correction is first performed for the line in the row direction. At this time, detection and correction are performed while detecting a burst error using the burst error memory 164e as in the first embodiment. Specifically, the row direction line No. When detection correction is performed in order from 0 and a burst error of “+” is detected, erasure correction is performed using the erasure flag as in the first embodiment.

ブロックデータBD2aでは、ラインNo.0からラインNo.7までは「×」印と「+」印とを合わせても誤り位置が8個以内なので検出訂正のみでも誤りを訂正することができるが、ラインNo.8は、「×」印と「+」印とで9個の誤り位置が存在するため、検出訂正のみでは誤りを訂正することができない。   In the block data BD2a, the line No. 0 to line no. Up to 7, even if the “x” mark and the “+” mark are combined, the error position is within 8 so that the error can be corrected only by the detection correction. In FIG. 8, since there are nine error positions for the “x” mark and the “+” mark, the error cannot be corrected only by detection and correction.

このため、バーストエラーメモリ164eが立てた消失フラグを用いて消失訂正を行う、すなわち、「+」印については消失訂正を行うことにより、誤りを訂正することができる。   Therefore, the error can be corrected by performing the erasure correction using the erasure flag set by the burst error memory 164e, that is, by performing the erasure correction on the “+” mark.

ラインNo.14もラインNo.8と同様に、バーストエラーメモリ164eが立てた消失フラグを用いて消失訂正を行うことで誤りを訂正することができる。
従来は、消失訂正を使わず、行方向ラインNo.8、No.14の誤りが残った場合でも、訂正できなかった行方向ラインNo.8、No.14のバイトにフラグを立て、斜線の列についてもう一度列方向の消失訂正を行う必要があるため、訂正時間が大幅に増えてしまい、ディスクの倍速性能を悪化させる。
Line No. 14 is line No. Similarly to 8, the error can be corrected by performing the erasure correction using the erasure flag set by the burst error memory 164e.
Conventionally, no erasure correction is used, and the row direction line No. 8, no. Even if 14 errors remain, the row direction line no. 8, no. Since it is necessary to set a flag at 14 bytes and perform erasure correction in the column direction again for the shaded columns, the correction time is greatly increased, and the double speed performance of the disk is deteriorated.

この第2の実施の形態の光ディスク記録再生装置によれば、第1の実施の形態の光ディスク記録再生装置と同様の効果が得られる。
そして、第2の実施の形態の光ディスク記録再生装置によれば、DVDやHDDVDのように行・列両方にECCパリティを持ったプロダクトコードの場合においても、バーストエラーメモリ164eが立てた消失フラグを用いて消失訂正を行うことで容易かつ確実に誤りを訂正することができる。
According to the optical disc recording / reproducing apparatus of the second embodiment, the same effect as that of the optical disc recording / reproducing apparatus of the first embodiment can be obtained.
According to the optical disk recording / reproducing apparatus of the second embodiment, the erasure flag set by the burst error memory 164e is set even in the case of a product code having ECC parity in both rows and columns, such as DVD and HDDVD. It is possible to correct an error easily and reliably by using it and performing erasure correction.

次に、第3の実施の形態の光ディスク記録再生装置について説明する。
以下、第3の実施の形態の光ディスク記録再生装置について、前述した第1の実施の形態との相違点を中心に説明し、同様の事項については、その説明を省略する。
Next, an optical disk recording / reproducing apparatus according to a third embodiment will be described.
Hereinafter, the optical disk recording / reproducing apparatus of the third embodiment will be described focusing on the differences from the first embodiment described above, and the description of the same matters will be omitted.

第3の実施の形態の光ディスク記録再生装置は、光ディスクの種別およびその制御方法が異なっている。
図13は、第3の実施の形態の光ディスク記録再生装置のブロックデータを示す図である。
The optical disc recording / reproducing apparatus of the third embodiment differs in the type of optical disc and its control method.
FIG. 13 is a diagram illustrating block data of the optical disc recording / reproducing apparatus according to the third embodiment.

第3の実施の形態の光ディスクは、Blu−ray Disc(登録商標)のように、1列毎にPicketコードが設けられ、行方向1ライン毎にECCパリティが設けられている。   The optical disc according to the third embodiment is provided with a Picket code for each column and an ECC parity for each line in the row direction, like Blu-ray Disc (registered trademark).

1つのブロックデータBD3は、64Kバイトのデータを有している。
このデータは、LDC(Long Distance Code)と呼ばれるコードで保護されている。LDCは、行方向に304個のコード・ワードで構成され、それぞれのコード・ワードは、216バイトのメインデータと、32バイトのECCパリティとで構成されている。
One block data BD3 has 64K bytes of data.
This data is protected by a code called LDC (Long Distance Code). The LDC is composed of 304 code words in the row direction, and each code word is composed of 216 bytes of main data and 32 bytes of ECC parity.

これらのコード・ワードは、ECCパリティの2×2毎にインターリーブされ、列方向に152バイト、行方向に496バイトのブロックとして形成されている。
また、ブロックデータBD3の中に、等間隔で4つのPicketコードが設けられている。1番左の「S」と記したPicketコードは、それぞれの行の開始を示す同期パターンである。
These code words are interleaved every 2 × 2 of the ECC parity, and formed as a block of 152 bytes in the column direction and 496 bytes in the row direction.
Also, four Picket codes are provided at equal intervals in the block data BD3. The Picket code marked “S” on the left is a synchronization pattern indicating the start of each line.

PicketコードはBIS(Burst Indicator Subcode)によって誤り訂正符号化し、保護している。このBISは、30バイトのデータに32バイトのECCパリティを付加するといったように、216バイトのデータに32バイトのECCパリティを付加するLDCに比較して誤り訂正能力の高いエラーチェックコードを備えている。従って、Picketコードは、検出訂正のみで誤りを訂正することができる。しかし、本実施の形態の誤り訂正を行うことにより、さらに効率よく誤りを訂正することができる。   The Picket code is protected by being error-corrected by BIS (Burst Indicator Subcode). This BIS has an error check code having a higher error correction capability than an LDC that adds a 32-byte ECC parity to 216-byte data, such as adding a 32-byte ECC parity to 30-byte data. Yes. Therefore, the Picket code can correct an error only by detection and correction. However, errors can be corrected more efficiently by performing error correction according to the present embodiment.

次に、第3の実施の形態のディスクコントローラの誤り訂正の動作を説明する。
図14は、第3の実施の形態のディスクコントローラの誤り訂正の動作を示すフローチャートである。
Next, the error correction operation of the disk controller of the third embodiment will be described.
FIG. 14 is a flowchart illustrating an error correction operation of the disk controller according to the third embodiment.

まず、BISによってPicketコードを検出訂正する(ステップS31)。
次に、検出訂正によって得られたPicketコードの誤り位置に挟まれたバイトに消失フラグとは異なるバーストアラームを立てる(ステップS32)。
First, the Picket code is detected and corrected by BIS (step S31).
Next, a burst alarm different from the erasure flag is set on the byte between the error positions of the Picket code obtained by detection and correction (step S32).

次に、バーストエラーが検出されたバイトまたは、バーストアラームの立っている位置でバーストエラーが検出されたバイトのみに消失フラグを立てながら、LDCラインを検出訂正および消失訂正する(ステップS33)。   Next, the LDC line is detected and corrected and corrected while the erasure flag is set only for the byte where the burst error is detected or the byte where the burst error is detected at the position where the burst alarm is present (step S33).

以上で動作を終了する。
以下、具体例を用いて説明する。
図15は、第3の実施の形態の光ディスク記録再生装置の処理の具体例を示す図である。
This completes the operation.
Hereinafter, a specific example will be described.
FIG. 15 is a diagram illustrating a specific example of processing of the optical disc recording / reproducing apparatus according to the third embodiment.

Picketコードの誤り位置は、その両側に指定バイト分広げた範囲を誤っているものとして、行方向にLDCの訂正を行うときの消失フラグの設定として用いる。
このような処理を行った場合、エリア41のようにバーストエラーが発生している場合はある程度効率的であるが、エリア42のようにバーストエラーが発生していない場合は、消失フラグを無駄にしてしまい、かえってLDCの訂正限界を落とす可能性がある。
The error position of the Picket code is used as the setting of the erasure flag when LDC correction is performed in the row direction, assuming that the range expanded by the designated bytes on both sides is incorrect.
When such a process is performed, it is efficient to some extent if a burst error occurs as in area 41, but if no burst error occurs as in area 42, the lost flag is wasted. On the contrary, there is a possibility that the correction limit of the LDC is dropped.

そこで、Picketコードの両側数バイト(例えば2バイト)まではPicketコードのみで消失訂正を行うが、3バイト以上離れたところではバーストエラーメモリ164eを用いて消失訂正を行う。または、エリア43のようにPicketコード内の誤りで挟まれている場合に、バーストエラーメモリ164eによるバーストエラー位置情報と重なった場合にのみ消失フラグを立て、消失訂正を行う。これにより、消失フラグの確度を上げることができる。   Therefore, erasure correction is performed only with the Picket code up to several bytes (for example, 2 bytes) on both sides of the Picket code, but erasure correction is performed using the burst error memory 164e at a distance of 3 bytes or more. Alternatively, when the error is included in the Picket code as in the area 43, the erasure flag is set only when the burst error position information by the burst error memory 164e overlaps, and the erasure correction is performed. Thereby, the accuracy of the disappearance flag can be increased.

この第3の実施の形態の光ディスク記録再生装置によれば、第1の実施の形態の光ディスク記録再生装置と同様の効果が得られる。
以上、本発明の誤り訂正装置および誤り訂正方法を、図示の実施の形態に基づいて説明したが、本発明はこれに限定されるものではなく、各部の構成は、同様の機能を有する任意の構成のものに置換することができる。また、本発明に、他の任意の構成物や工程が付加されていてもよい。
According to the optical disc recording / reproducing apparatus of the third embodiment, the same effects as those of the optical disc recording / reproducing apparatus of the first embodiment can be obtained.
The error correction apparatus and the error correction method of the present invention have been described based on the illustrated embodiment. However, the present invention is not limited to this, and the configuration of each unit is an arbitrary function having the same function. It can be replaced with that of the configuration. Moreover, other arbitrary structures and processes may be added to the present invention.

また、本発明は、前述した各実施の形態のうちの、任意の2以上の構成(特徴)を組み合わせたものであってもよい。   Further, the present invention may be a combination of any two or more configurations (features) of the above-described embodiments.

本発明の概要を示す図である。It is a figure which shows the outline | summary of this invention. 光ディスク記録再生装置のハードウェア構成例を示す図である。It is a figure which shows the hardware structural example of an optical disk recording / reproducing apparatus. ディスクコントローラの機能を示すブロック図である。It is a block diagram which shows the function of a disk controller. ECCの機能を示すブロック図である。It is a block diagram which shows the function of ECC. ブロックデータを示す図である。It is a figure which shows block data. ディスクコントローラの誤り訂正の動作を示すフローチャートである。It is a flowchart which shows the operation | movement of an error correction of a disk controller. バーストエラーメモリの内部構成を示すブロック図である。It is a block diagram which shows the internal structure of a burst error memory. 第1の実施の形態のブロックデータの具体例を示す図である。It is a figure which shows the specific example of the block data of 1st Embodiment. 図8に示すブロックデータをバーストエラーメモリで処理した処理結果を模式的に示す図である。It is a figure which shows typically the process result which processed the block data shown in FIG. 8 with the burst error memory. 第2の実施の形態の光ディスク記録再生装置のブロックデータを示す図である。It is a figure which shows the block data of the optical disk recording / reproducing apparatus of 2nd Embodiment. ディスクコントローラの誤り訂正の動作を示すフローチャートである。It is a flowchart which shows the operation | movement of an error correction of a disk controller. 第2の実施の形態のブロックデータの具体例を示す図である。It is a figure which shows the specific example of the block data of 2nd Embodiment. 第3の実施の形態の光ディスク記録再生装置のブロックデータを示す図である。It is a figure which shows the block data of the optical disk recording / reproducing apparatus of 3rd Embodiment. 第3の実施の形態のディスクコントローラの誤り訂正の動作を示すフローチャートである。10 is a flowchart illustrating an error correction operation of the disk controller according to the third embodiment. 第3の実施の形態の光ディスク記録再生装置の処理の具体例を示す図である。It is a figure which shows the specific example of a process of the optical disk recording / reproducing apparatus of 3rd Embodiment. ブロック符号の一例を示す図である。It is a figure which shows an example of a block code.

符号の説明Explanation of symbols

1 誤り訂正装置
2 誤りデータ位置検出部
3 バーストエラー予測部
4 訂正実行部
10 光ディスク記録再生装置
12 DRAM
12a ブロックデータメモリ
16 ディスクコントローラ
41〜43 エリア
161 DSP
162 CRCチェック部
163 DRAMコントローラ
164 ECC
1641 誤り位置入力制御回路
1642 バーストエラー位置出力制御回路
164a シンドローム生成部
164b シンドローム多項式補正部
164c ユークリッド互除部
164d チェンサーチ部
164e バーストエラーメモリ
164f アドレス変換部
165 エンコーダ
166 デコーダ
167 インタフェース部
C0〜C31 カウンタ
reg0〜reg31 位置保持レジスタ
DESCRIPTION OF SYMBOLS 1 Error correction apparatus 2 Error data position detection part 3 Burst error prediction part 4 Correction execution part 10 Optical disk recording / reproducing apparatus 12 DRAM
12a block data memory 16 disk controller 41 to 43 area 161 DSP
162 CRC check unit 163 DRAM controller 164 ECC
1641 Error position input control circuit 1642 Burst error position output control circuit 164a Syndrome generation unit 164b Syndrome polynomial correction unit 164c Euclidean mutual division unit 164d Chain search unit 164e Burst error memory 164f Address conversion unit 165 Encoder 166 Decoder 167 Interface unit C0-C31 Counter reg0 ~ Reg31 Position holding register

Claims (6)

ブロック単位で取り込んだ光ディスクのブロックデータに含まれる誤りデータを訂正する誤り訂正装置において、
前記ブロックデータの誤りデータの位置をライン毎に検出する誤りデータ位置検出部と、
他のラインの誤りデータの位置を参照し、前記誤りデータ位置検出部により検出された位置の誤りデータがバーストエラーか否かを予測するバーストエラー予測部と、
各ラインの、前記バーストエラー予測部によりバーストエラーであると予測された誤りデータについて消失訂正を行い、それ以外の誤りデータについて検出訂正を行う訂正実行部と、
を有することを特徴とする誤り訂正装置。
In an error correction apparatus that corrects error data included in block data of an optical disc captured in block units,
An error data position detector for detecting the position of the error data of the block data for each line;
A burst error prediction unit that refers to the position of error data in another line and predicts whether or not the error data at the position detected by the error data position detection unit is a burst error;
A correction execution unit that performs erasure correction on error data that is predicted to be a burst error by the burst error prediction unit of each line, and performs detection correction on other error data;
An error correction apparatus comprising:
前記バーストエラー予測部は、
前記ラインの誤りデータの位置が検出される度に、その位置を記憶する複数のレジスタと、
前記各レジスタにそれぞれ対応して設けられ、検出された誤りデータの位置が、前記レジスタに既に記憶されている誤りデータの位置に検出方向に直交する方向に一致する場合、インクリメントする複数のカウンタと、
前記カウンタが所定値以上である場合、検出された誤りデータの位置がバーストエラーが存在する位置であると判断する判断部と、
を有することを特徴とする請求項1記載の誤り訂正装置。
The burst error prediction unit
Each time a position of error data in the line is detected, a plurality of registers for storing the position;
A plurality of counters which are provided corresponding to the respective registers and which are incremented when the position of the detected error data coincides with the position of the error data already stored in the register in a direction orthogonal to the detection direction; ,
When the counter is equal to or greater than a predetermined value, a determination unit that determines that the position of the detected error data is a position where a burst error exists;
The error correction apparatus according to claim 1, further comprising:
前記カウンタは、対応する前記レジスタに連続して誤りデータの位置が記憶されない場合クリアされることを特徴とする請求項2記載の誤り訂正装置。   3. The error correction apparatus according to claim 2, wherein the counter is cleared when the position of error data is not continuously stored in the corresponding register. 前記光ディスクが、前記光ディスクの記録方向および前記記録方向に直交する方向にそれぞれパリティビットを備えている場合、
前記誤りデータ位置検出部は、前記記録方向のライン毎に誤りデータの位置を検出し、
前記訂正実行部は、検出訂正できなかった前記記録方向のラインの数が、前記記録方向に直交する方向のパリティビットの数を超えている場合、前記バーストエラー予測部によりバーストエラーであると予測された誤りデータについて消失訂正を行い、それ以外の誤りデータについて検出訂正を行うことを特徴とする請求項1記載の誤り訂正装置。
When the optical disc has a parity bit in each of the recording direction of the optical disc and the direction orthogonal to the recording direction,
The error data position detection unit detects the position of error data for each line in the recording direction,
The correction execution unit predicts a burst error by the burst error prediction unit when the number of lines in the recording direction that could not be detected and corrected exceeds the number of parity bits in the direction orthogonal to the recording direction. 2. The error correction apparatus according to claim 1, wherein erasure correction is performed on the error data and detection correction is performed on other error data.
前記光ディスクがPicketコードを備えている場合、
前記訂正実行部は、前記Picketコードの両側所定バイトまでは、前記Picketコードのみで消失訂正を行い、それ以上離れたバイトについては前記バーストエラー予測部の予測結果を用いて消失訂正を行うことを特徴とする請求項1記載の誤り訂正装置。
When the optical disc has a Picket code,
The correction execution unit performs erasure correction using only the Picket code up to a predetermined byte on both sides of the Picket code, and performs erasure correction using a prediction result of the burst error prediction unit for bytes farther away. The error correction apparatus according to claim 1, wherein:
ブロック単位で取り込んだ光ディスクのブロックデータに含まれる誤りデータを訂正する誤り訂正方法において、
誤りデータ位置検出部が、前記ブロックデータの誤りデータの位置をライン毎に検出し、
バーストエラー予測部が、他のラインの誤りデータの位置を参照し、前記誤りデータ位置検出部により検出された位置の誤りデータがバーストエラーか否かを予測し、
訂正実行部が、各ラインの、前記バーストエラー予測部によりバーストエラーであると予測された誤りデータについて消失訂正を行い、それ以外の誤りデータについて検出訂正を行う、
ことを特徴とする誤り訂正方法。
In an error correction method for correcting error data included in block data of an optical disc captured in block units,
The error data position detection unit detects the position of the error data of the block data for each line,
A burst error prediction unit refers to the position of error data on another line, predicts whether or not the error data at the position detected by the error data position detection unit is a burst error,
The correction execution unit performs erasure correction for the error data predicted to be a burst error by the burst error prediction unit for each line, and performs detection correction for the other error data.
An error correction method characterized by the above.
JP2008071500A 2008-03-19 2008-03-19 Error correction device and error correction method Pending JP2009231898A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2008071500A JP2009231898A (en) 2008-03-19 2008-03-19 Error correction device and error correction method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2008071500A JP2009231898A (en) 2008-03-19 2008-03-19 Error correction device and error correction method

Publications (1)

Publication Number Publication Date
JP2009231898A true JP2009231898A (en) 2009-10-08

Family

ID=41246868

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008071500A Pending JP2009231898A (en) 2008-03-19 2008-03-19 Error correction device and error correction method

Country Status (1)

Country Link
JP (1) JP2009231898A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2608205A1 (en) * 2011-12-22 2013-06-26 Thomson Licensing Method and system for reading data from a storage medium

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2608205A1 (en) * 2011-12-22 2013-06-26 Thomson Licensing Method and system for reading data from a storage medium

Similar Documents

Publication Publication Date Title
KR100856399B1 (en) Decoding method and apparatus therefor
KR0163566B1 (en) Error correction method
US7107510B2 (en) Data storage device and data processing method
KR19980042418A (en) Error correction method, error correction device, data reading device, and data mapping method
KR100734262B1 (en) Defect decision device for optimized defect management in the optical device
EP1640988B1 (en) Method and apparatus for decoding multiword information
JP2005235379A (en) Recording/reproducing method, recording/reproducing apparatus, and computer readable recording medium whereon program for performing this method is recorded
JP2011060217A (en) Data storage apparatus, and data writing/reading method
JP2005522137A (en) Method and apparatus for embedding an additional error correction layer in an error correction code
JP2006517048A (en) Method for encoding and decoding error correction blocks
US9230595B2 (en) Error correction method and data reproduction device
JP2010287271A5 (en)
JP2008159198A (en) Error correction apparatus and recording and playback apparatus
US7145852B2 (en) Method and apparatus for decoding encoded data around a linking area on an optical storage medium
JP2009231898A (en) Error correction device and error correction method
TWI381371B (en) Data recording and storing method for an optical storage medium
KR20080036838A (en) Method for correcting error of optical information storing media recording/reproducing apparatus
JP2006003971A (en) Redundant drive group, and writing method and read-out method using the same
JPS62236185A (en) Error correction method
US20050216816A1 (en) Error correction code generator, generation method of error correction code, error correction device, and error correction method
JPH0244577A (en) Reloading type optical disk device
JP2005252973A (en) Data structure and recording medium
JP2006191378A (en) Error correction apparatus, reproducing apparatus and reproducing method
JP2004087018A (en) Error correcting method and error correcting device
JP2004288310A (en) Digital data recording and reproducing device and digital data reproducing method