JP2009246640A - 誤り訂正装置、データ読み出し装置及び誤り訂正方法 - Google Patents
誤り訂正装置、データ読み出し装置及び誤り訂正方法 Download PDFInfo
- Publication number
- JP2009246640A JP2009246640A JP2008089987A JP2008089987A JP2009246640A JP 2009246640 A JP2009246640 A JP 2009246640A JP 2008089987 A JP2008089987 A JP 2008089987A JP 2008089987 A JP2008089987 A JP 2008089987A JP 2009246640 A JP2009246640 A JP 2009246640A
- Authority
- JP
- Japan
- Prior art keywords
- correction
- error
- block
- row
- correction block
- 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
Links
Images
Abstract
【課題】消失訂正を利用した誤り訂正処理の訂正効率を向上させることのできる誤り訂正装置、データ読み出し装置及び誤り訂正方法を提供する。
【解決手段】誤り訂正回路20は、左側訂正ブロックで発生した誤りの位置を示す誤り位置情報に基づいて、右側訂正ブロックの各PI符号語が、バーストエラーが発生していると推測されるバーストエラーラインであるか否かを判定する判定回路23を備える。誤り訂正回路20は、バーストエラーラインと判定された右側訂正ブロックのPI符号語に対し、PO方向の消失訂正のための消失フラグを設定し、その設定した消失フラグを用いて右側訂正ブロックに対するPO方向の消失訂正を行う訂正回路21を備える。
【選択図】図2
【解決手段】誤り訂正回路20は、左側訂正ブロックで発生した誤りの位置を示す誤り位置情報に基づいて、右側訂正ブロックの各PI符号語が、バーストエラーが発生していると推測されるバーストエラーラインであるか否かを判定する判定回路23を備える。誤り訂正回路20は、バーストエラーラインと判定された右側訂正ブロックのPI符号語に対し、PO方向の消失訂正のための消失フラグを設定し、その設定した消失フラグを用いて右側訂正ブロックに対するPO方向の消失訂正を行う訂正回路21を備える。
【選択図】図2
Description
本発明は、誤り訂正装置、データ読み出し装置及び誤り訂正方法に関するものである。
近年、光ディスクの大容量化の要望が高まり、このような要望を実現する次世代型光ディスクとしてHD−DVD(High Definition Digital Versatile Disc)ディスクが開発されている(例えば、特許文献1参照)。このようなHD−DVDでは、記憶容量が膨大な上、ディスクの製造時の欠陥等や、ディスクの表面に付着した汚れ等によって、読み出したデータの誤り発生率が非常に高い。具体的には、HD−DVDでは、ディスク上にはデータが正しく記録されているにも関わらず、読み出したデータに単発的に誤りが発生するランダムエラーやディスクの表面に付着した汚れや傷に起因して連続的に誤りが発生するバーストエラーなどの発生率が非常に高い。従って、このようなHD−DVDでは、ディスクから読み出したデータについての誤り訂正処理が重要となる。そこで、HD−DVDに記録されたデータには、リード・ソロモン(RS:Reed-Solomon code)積符号を用いた誤り訂正符号(ECC:Error Correcting Code)がデータと併せて記録されている。そして、この誤り訂正符号に基づいて誤り訂正処理、例えばその誤り訂正符号から誤り位置と数値を判定して行う誤り訂正処理(以下、検出訂正という)や誤り位置を示す消失フラグを用いた誤り訂正処理(以下、消失訂正という)を行うことにより、正しいデータを復元するようにしている。なお、検出訂正では誤り位置と数値を判定する必要があるのに対し、消失訂正では誤り数値のみを判定すればよいため、消失訂正は検出訂正よりも最大で訂正能力が2倍高くなる。
ここで、HD−DVDに記録されたデータのフォーマットについて図16及び図17に従って説明する。
図16に示すように、一つのセクタ40は、12個のデータブロックDB1〜DB12から構成される。これらデータブロックDB1〜DB12は、所定の行数及び列数(図16では、6行×2列)で2次元配列されている。詳しくは、奇数番目のデータブロックDB1,DB3,DB5,DB7,DB9,DB11によって左フレーム40L(左側の列)が形成され、偶数番目のデータブロックDB2,DB4,DB6,DB8,DB10,DB12によって右フレーム40R(右側の列)が形成されている。なお、データブロックDB1には、4バイトの識別データID、2バイトのID誤り判定信号IED及び6バイトの予約領域RSVと160バイトのメインデータが記憶される。データブロックDB2〜データブロックDB11には、172バイトのメインデータが記憶される。データブロックDB12には、168バイトのメインデータと4バイトの誤り判定符号EDCが記憶される。
図16に示すように、一つのセクタ40は、12個のデータブロックDB1〜DB12から構成される。これらデータブロックDB1〜DB12は、所定の行数及び列数(図16では、6行×2列)で2次元配列されている。詳しくは、奇数番目のデータブロックDB1,DB3,DB5,DB7,DB9,DB11によって左フレーム40L(左側の列)が形成され、偶数番目のデータブロックDB2,DB4,DB6,DB8,DB10,DB12によって右フレーム40R(右側の列)が形成されている。なお、データブロックDB1には、4バイトの識別データID、2バイトのID誤り判定信号IED及び6バイトの予約領域RSVと160バイトのメインデータが記憶される。データブロックDB2〜データブロックDB11には、172バイトのメインデータが記憶される。データブロックDB12には、168バイトのメインデータと4バイトの誤り判定符号EDCが記憶される。
HD−DVDに記録する際には、セクタ40内のメインデータに対してスクランブルがかけられ、図17に示すように、32個のセクタ40(左フレーム40L及び右フレーム40R)によって1つのECCブロック70が形成される。このECCブロック70は、左側訂正ブロック70L及び右側訂正ブロック70Rの2つの訂正ブロック(RS積符号)によって構成されている。
左側訂正ブロック70Lは、32個のセクタ40の左フレーム40Lが集められて形成された192バイト×172バイトのデータブロックに対して、各列に16バイト分のPO(Outer Code Parity)符号が付加され、各行に10バイト分のPI(Inner Code Parity)符号が付加されて形成された208バイト×182バイトの積符号である。詳述すると、左側訂正ブロック70Lでは、1行172バイトのデータ列をパラメータ(182,172,11)のPI符号により符号化して182バイトのPI符号語としている。また、左側訂正ブロック70Lでは、1列192バイトのデータ列をパラメータ(208,192,17)のPO符号により符号化して208バイトのPO符号語としている。これらPI符号(第1訂正符号)及びPO符号(第2訂正符号)はRS符号よりなり、上記検出訂正では、PI符号によってPI符号語のうち5バイトまでのデータを訂正することができ、PO符号によってPO符号語のうち8バイトまでのデータを訂正することができる。また、上記消失訂正では、PI符号によってPI符号語のうち10バイトまでのデータを訂正することができ、PO符号によってPO符号語のうち16バイトまでのデータを訂正することができる。
なお、右側訂正ブロック70Rも同様に、32個のセクタ40の右フレーム40Rにより形成された192バイト×172バイトのデータブロックに対して、16バイトのPO符号と10バイトのPI符号とが付加されて形成された208バイト×182バイトの積符号である。
そして、これら左側訂正ブロック70Lと右側訂正ブロック70Rとによって、208バイト×364バイトの上記ECCブロック70が形成される。このECCブロック70が、8−12変調やNRZI変換などが施された後にHD−DVDに記録される。
このようなフォーマットにより、データ再生時の誤り訂正処理において、高い誤り検出訂正能力が確保される。
次に、このようにHD−DVDに記録されたデータを読み出す動作について説明する。
次に、このようにHD−DVDに記録されたデータを読み出す動作について説明する。
図18に示すように、HD−DVDに対してデータの入出力を行うコントローラ30では、まず、HD−DVDからデータが受信回路11を通じて復調回路12に入力され、そのデータが復調回路12にて復調されてバッファメモリ6に格納される。次に、誤り訂正回路13は、バッファメモリ6から読み出した復調データ(ECCブロック)に対して誤り訂正処理を施し、その誤り訂正後のデータを再度バッファメモリ6に格納する。そして、この誤り訂正後のデータがデスクランブル回路14にてスクランブル解除され、インターフェース回路15を通じて外部機器に出力される。なお、このデータ再生時におけるECCブロック70のデータ受信順序は、図17にデータ番号dで示すように、d0→d1→…→d172→d173→…→d181→d182→…→d363→d364…→d75711となる。
次に、誤り訂正回路13における誤り訂正処理について説明する。なお、HD−DVDでは、上述した左側訂正ブロック70Lと右側訂正ブロック70Rとにそれぞれ誤り訂正処理が施されるが、これらの誤り訂正処理は同様に行われるため、ここでは左側訂正ブロック70Lの誤り訂正処理のみを説明する。また、上述のようにHD−DVDのデータフォーマットでは、左側訂正ブロック70Lが208バイト×182バイトの積符号となるが、以下の説明では簡便化のために、図19に示す10バイト×8バイトの積符号を左側訂正ブロック80Lとして説明する。ここで、この左側訂正ブロック80Lは、1行4バイトのデータ列にパラメータ(8,4,5)のPI符号が付加され、1列6バイトのデータ列にパラメータ(10,6,5)のPO符号が付加されている。そのため、検出訂正では、PI方向(第1方向)に2バイト、PO方向(第2方向)に2バイトまでのデータを訂正可能であり、消失訂正では、PI方向に4バイト、PO方向に4バイトまでのデータを訂正可能である。
今、誤り訂正回路13は、図19に示す読み出し番号Lの順番にて左側訂正ブロック80Lをバッファメモリ6から読み出す。このとき、この左側訂正ブロック50Lでは、斜線部で示すデータに誤りが発生しているとする。
誤り訂正回路13は、左側訂正ブロック80Lに対して、まず、PI符号によるPI方向の検出訂正を行う。すなわち、誤り訂正回路13は、左側訂正ブロック80Lの各PI符号語のデータを読み出して生成したPIシンドロームを基に、誤り位置及び誤り数値を算出し、該誤り位置及び誤り数値に基づいてそのPI符号語に発生する誤りを訂正する。このとき、各PI符号語内に発生する誤りが2バイト以下であれば誤り訂正が可能であるため、図20に示すように、誤りが2バイト以下である1,2,3行目のPI符号語の誤りが訂正される(「○」参照)。一方、4,5,6行目のPI符号語については誤りが3バイト以上発生しているため、誤り訂正回路13はその誤りを訂正することができない(「×」参照)。このとき、誤り訂正回路13は、訂正不能なPI符号語についての誤り位置情報を生成する。なお、図20〜図22では、誤りが訂正されたデータの読み出し番号Lを丸印で囲み、誤り訂正のできた行(列)の右側(上側)に「○」を付し、誤り訂正のできなかった行(列)の右側(上側)に「×」を付すとともに、消失フラグを設定した行の右側に「●」を付している。
次に、誤り訂正回路13は、PO符号によるPO方向の検出訂正あるいは消失訂正を行う。
ここでは、まず、PO方向の検出訂正について説明する。誤り訂正回路13は、左側訂正ブロック80Lの各PO符号語のデータを読み出して生成したPOシンドロームを基に、誤り位置及び誤り数値を算出し、該誤り位置及び誤り数値に基づいてそのPO符号語に発生する誤りを訂正する。このとき、各PO符号語内に発生する誤りが2バイト以下であれば誤り訂正が可能であるため、図21(a)に示すように、誤りが2バイト以下である1,3,4,5,6,8列目のPO符号語の誤りが訂正される(「○」参照)。一方、2,7列目のPO符号語については誤りが3バイト以上発生しているため、誤り訂正回路13はその誤りを訂正することができない(「×」参照)。
ここでは、まず、PO方向の検出訂正について説明する。誤り訂正回路13は、左側訂正ブロック80Lの各PO符号語のデータを読み出して生成したPOシンドロームを基に、誤り位置及び誤り数値を算出し、該誤り位置及び誤り数値に基づいてそのPO符号語に発生する誤りを訂正する。このとき、各PO符号語内に発生する誤りが2バイト以下であれば誤り訂正が可能であるため、図21(a)に示すように、誤りが2バイト以下である1,3,4,5,6,8列目のPO符号語の誤りが訂正される(「○」参照)。一方、2,7列目のPO符号語については誤りが3バイト以上発生しているため、誤り訂正回路13はその誤りを訂正することができない(「×」参照)。
次に、PO方向の消失訂正について説明する。誤り訂正回路13は、図21(b)に示すように、上記PI方向の検出訂正において生成された誤り位置情報に基づいて、PI方向の訂正が不能であった4,5,6行目のPI符号語に消失フラグを設定する(「●」参照)。ここで、この消失フラグは最大4個まで設定することが可能である。但し、消失フラグを最大個数まで設定してしまうと誤訂正の確率が飛躍的に上昇してしまうため、本明細書では、消失フラグが3つまでしか設定できないように制限されるようにしている。このとき、図20に示すPI方向の検出訂正後の左側訂正ブロック80Lの結果では、3つの行(4,5,6行目)が訂正不能であるため、訂正不能であった全ての行について消失フラグを設定することができる。次に、誤り訂正回路13は、この消失フラグを用いて誤り訂正(消失訂正)を行う。このとき、PO符号語内に発生する誤りが消失フラグを設定した位置(行)に全て含まれる場合には誤り訂正が可能であるため、図21(b)に示すように、全ての列のPO符号語の誤りが訂正される(「○」参照)。
そして、PO方向の検出訂正の場合には、図21(a)に示すように、訂正不能なPO符号語が残っているため、すなわち左側訂正ブロック80L内に誤りが残っているため、続いてPI方向の検出訂正あるいは消失訂正を行う必要がある。このため、誤り訂正に要する処理時間が増大する。
これに対して、PO方向の消失訂正の場合には、図21(b)に示すように、左側訂正ブロック80Lの全ての列の誤りが訂正される、すなわち左側訂正ブロック80Lの全ての誤りが訂正される。これにより、2回目のPI方向の誤り訂正を行うことなく、左側訂正ブロック80Lに対する誤り訂正処理を終了させることができる。このように消失訂正を利用することにより、検出訂正単独で誤り訂正処理を行うときよりも高い訂正能力を得ることができ、誤り訂正処理に要する処理時間を短縮することができる。
特開2005−259188号公報
ところが、消失訂正では、消失フラグを設定した位置について必ず訂正しようとする特性がある。そのため、もし消失フラグを設定したラインに誤りがなかった場合、検出訂正よりかえって訂正効率を下げるという欠点がある。従って、例えば図22(a)に示すように、PI方向の誤り訂正の結果として、消失フラグの設定可能な個数(3つ)を超える数(ここでは、5つ)のPI符号語(「×」参照)が訂正不能である場合には、消失フラグを設定する位置が重要となる。すなわち、訂正不能であったPI符号語(4〜8行目のPI符号語)のうち、誤りのより多く含まれるPI符号語に消失フラグを設定することが重要となる。例えば、訂正不能であった4〜8行目のPI符号語のうち、誤り数が多い3つの4,5,7行目のPI符号語に消失フラグを設定することができれば、図22(b)に示すように、3,4,5列目のPO符号語内の誤りを訂正することができる。これにより、消失訂正によって高い訂正能力を得ることができる。
しかし、誤り数が多いPI符号語も誤り数が比較的少ないPI符号語も共通して訂正不能とされ、その誤り数が不明であるため、上記誤り訂正回路13では、実際には、訂正不能であったPI符号語のうち、任意の3つのPI符号語(例えば、上から3つあるいは下から3つのPI符号語)に消失フラグが設定される。そのため、誤りの比較的少ないPI符号語に消失フラグが設定されることもあり、このような場合には誤り訂正の効率が低くなるため、消失訂正により訂正能力がかえって悪化してしまうという問題がある。具体的には、図22(a)の左側訂正ブロック90Lにおいて、訂正不能であったPI符号語のうち、下から3つの6,7,8行目のPI符号語に消失フラグが設定された場合には、図22(c)に示すように、全ての列のPO符号語が訂正不能になってしまい、1つの誤りも訂正することができない。これに対して、図22(a)の左側訂正ブロック90Lに対してPO方向の検出訂正を行った場合には、3列目のPO符号語内の誤りを訂正することができる。このように消失フラグを設定する位置によっては、検出訂正よりも訂正能力が高いはずの消失訂正を行ったにも関わらず、検出訂正よりも訂正能力が低くなってしまうという問題がある。
本発明は上記問題点を解決するためになされたものであって、その目的は、消失訂正を利用した誤り訂正処理の訂正効率を向上させることのできる誤り訂正装置、データ読み出し装置及び誤り訂正方法を提供することにある。
上記目的を達成するため、請求項1,6,7に記載の誤り訂正装置(データ読み出し装置、誤り訂正方法)は、第1訂正ブロックに対する誤り訂正処理を行った後に、第2訂正ブロックに対する誤り訂正処理を行う訂正回路と、前記第1訂正ブロックで発生した誤りの位置を示す誤り位置情報に基づいて、前記第2訂正ブロックの各行が、その行内に多数の誤りが連続して発生していると推測されるバーストエラーラインであるか否かを判定し、バーストエラーライン情報を生成する判定回路を備え、前記訂正回路は、前記バーストエラーライン情報に基づいて、前記第2訂正ブロックの行に第2方向の誤り訂正のための消失フラグを設定し、その設定した消失フラグを用いて前記第2訂正ブロックに対する第2方向の誤り訂正を行う。
HD−DVDのデータフォーマットのように、2つの訂正ブロック(第1訂正ブロック及び第2訂正ブロック)によって1つのECCブロックが構成されている場合には、データ受信順序で見ると、第1訂正ブロックの1行目から第2訂正ブロックの1行目へ、第2訂正ブロックの1行目から第1訂正ブロックの2行目へというようにデータが受信される。そのため、ディスク上の傷等に起因するバーストエラーが発生すると、その1つのバーストエラーが2つの訂正ブロックに分散されることになる。
そこで、上記構成では、その1つのバーストエラーが2つの訂正ブロックに分散されることに着目し、一方の第1訂正ブロックの各行の誤り位置情報を利用して、他方の第2訂正ブロックにおいて多数の誤りが連続的に発生している(バーストエラーが発生している)可能性の高い行を推測するようにした。そして、判定回路では、このような行をバーストエラーラインと判定するようにした。
一方、訂正回路において、判定回路にて生成されたバーストエラーライン情報に基づいて、第2訂正ブロックの行に消失フラグが設定され、その設定された消失フラグを用いた第2方向の誤り訂正が行われる。これにより、多数の誤りが発生している可能性の高い行に消失フラグを設定した上で、第2訂正ブロックに対して第2方向の消失訂正を行うことができる。従って、この第2方向の消失訂正により、第2訂正ブロックに発生している誤りを効率的に訂正することができる。そのため、第2訂正ブロックに対して行う、消失訂正を利用した誤り訂正処理の訂正効率を向上させることができる。ひいては、ECCブロックに対する誤り訂正処理の訂正効率を向上させることができる。
請求項2に記載の誤り訂正装置は、前記判定回路は、前記第1訂正ブロックのN行目で発生した誤り数が第1所定数よりも多く、且つ前記第1訂正ブロックのN+1行目で発生した誤り数が第2所定数よりも多い場合に、前記第2訂正ブロックのN行目が前記バーストエラーラインであると判定する。
上述したように、ECCブロックのデータ受信順序は、第1訂正ブロックの1行目(N行目)から第2訂正ブロックの1行目(N行目)へ、第2訂正ブロックの1行目(N行目)から第1訂正ブロックの2行目(N+1行目)へ、というようになる。すなわち、第2訂正ブロックのN行目は、データ受信順序において第1訂正ブロックのN行目とN+1行目とに挟まれている。そのため、仮に第1訂正ブロックのN行目とN+1行目とに多数の誤りが発生している場合には、第1訂正ブロックのN行目、N+1行目及び第2訂正ブロックのN行目に1つのバーストエラーが発生している可能性が高くなる。
そこで、上記構成では、第1訂正ブロックのN行目で発生した誤り数が第1所定数以上で、且つ第1訂正ブロックのN+1行目で発生した誤り数が第2所定数以上のときに、第2訂正ブロックのN行目をバーストエラーラインであると判定するようにした。すなわち、データ受信順序において第2訂正ブロックのN行目を挟む、つまり第2訂正ブロックのN行目の前後のデータが含まれる第1訂正ブロックのN行目及びN+1行目に所定数以上の誤りが発生しているときに、第2訂正ブロックのN行目をバーストエラーラインと判定するようにした。これにより、バーストエラーが発生している可能性の高い行を精度良く推測することができ、バーストエラーラインと判定された行に実際に多数の誤りが含まれる可能性を高くすることができる。なお、ここで、Nは自然数である。
請求項3に記載の誤り訂正装置は、前記判定回路は、前記第1訂正ブロックのN行目の最終列から先頭列側に第3所定数の列分の範囲内で発生した誤り数が第4所定数よりも多く、且つ前記第1訂正ブロックのN+1行目の先頭列から最終列側に第5所定数の列分の範囲内で発生した誤り数が第6所定数よりも多い場合に、前記第2訂正ブロックのN行目が前記バーストエラーラインであると判定する。
上記構成では、第1訂正ブロックのN行目の最終列から所定範囲内で発生した誤り数が第4所定数以上で、且つ第1訂正ブロックのN+1行目の先頭列から所定範囲内で発生した誤り数が第6所定数以上のときに、第2訂正ブロックのN行目をバーストエラーラインであると判定するようにした。すなわち、第2訂正ブロックのN行目に近い前後のデータのみに限定し、その限定した範囲内の誤り位置情報を基にして、第2訂正ブロックのN行目がバーストエラーラインであるか否かを判定するようにした。これにより、バーストエラーが発生している可能性の高い行をより精度良く推測することができる。なお、ここで、Nは自然数である。
請求項4に記載の誤り訂正装置は、前記訂正回路は、前記第2訂正ブロックに対してはじめに行う第1方向の誤り訂正のときに訂正不能と判定された行のうち、前記判定回路にて前記バーストエラーラインであると判定された行に対して優先的に前記消失フラグを設定する。
上記構成によれば、第2訂正ブロックに対してはじめに行う第1方向の誤り訂正のときに訂正不能と判定された行数が、設定可能な消失フラグの数よりも多くなったとしても、その訂正不能と判定された行のうち、バーストエラーラインと判定された行(多数の誤りが発生している可能性の高い行)に消失フラグが優先的に設定される。そのため、多数の行が訂正不能と判定されても、上記設定された消失フラグを用いて第2方向の誤り訂正を行うことにより、多数の誤りが発生している可能性の高い行に消失フラグが設定された上で、第2訂正ブロックに対して第2方向の消失訂正を行うことができる。従って、この第2方向の消失訂正により、第2訂正ブロックに発生している誤りを効率的に訂正することができる。
請求項5に記載の誤り訂正装置は、前記訂正回路は、前記判定回路にて前記バーストエラーラインであると判定された前記第2訂正ブロックの行に前記消失フラグを設定し、前記設定した消失フラグを用いた第2方向の誤り訂正を、前記第2訂正ブロックに対してはじめに行う。
上記構成によれば、第1訂正ブロックに対する誤り訂正処理の結果からバーストエラーラインであると判定された第2訂正ブロックの行に対して、第2方向の消失訂正のための消失フラグが設定される。これにより、第2訂正ブロックに対して、第1方向の検出訂正を行うことなく、上記設定された消失フラグを利用して第2方向の消失訂正を行うことができる。そして、上記構成のように第2訂正ブロックに対して第2方向の消失訂正がはじめに行われることにより、検出訂正よりも訂正能力の高い消失訂正が先に行われるため、第2訂正ブロックに対する誤り訂正処理の訂正効率を向上させることができる。さらに、この消失訂正に用いられる消失フラグは、多数の誤りが発生している可能性の高い行に設定されるため、第2訂正ブロックに発生している誤りを効率良く訂正することができる。
以上説明したように、誤り訂正装置、データ読み出し装置及び誤り訂正方法によれば、消失訂正を利用した誤り訂正処理の訂正効率を向上させることができるという効果を奏する。
(第1実施形態)
以下、本発明を具体化した第1実施形態を図1〜図7に従って説明する。なお、本実施形態において、先の図18で示した従来と同様な構成部分については同一符号を付して説明する。
以下、本発明を具体化した第1実施形態を図1〜図7に従って説明する。なお、本実施形態において、先の図18で示した従来と同様な構成部分については同一符号を付して説明する。
図1に示すように、データ読み出し装置としての光ディスク制御装置1は、ATAPI(AT attachment packet interface)等の所定のインターフェースを介して外部機器としてのコンピュータ2に接続されている。この光ディスク制御装置1は、インターフェースを介して光ディスク駆動装置3に接続されている。
光ディスク駆動装置3は、記録媒体としての大容量光ディスク(HD−DVD)4を所定の速度で回転駆動するとともに、HD−DVD4に記録されたディスクデータを図示しない光ピックアップにより読み出す。そして、光ディスク駆動装置3は、ディスクデータを光ディスク制御装置1に出力する。
光ディスク制御装置1の入出力駆動回路5には、光ディスク駆動装置3から上記ディスクデータが入力され、そのディスクデータを誤り訂正装置としての光ディスクコントローラ(コントローラ)10に出力する。
コントローラ10は、光ディスク駆動装置3への命令送信及びステータス受領と、HD−DVD4からの読み出しフォーマット解読及び誤り訂正と、光ディスク駆動装置3とバッファメモリ6との間のデータ転送と、インターフェース回路15とバッファメモリ6との間のデータ転送等の各処理を行う。また、コントローラ10には、光ディスク駆動装置から出力されるディスクデータが入出力駆動回路5を介して入力される。コントローラ10は、入力されるデータに誤り訂正等の処理を施してバッファメモリ6に格納する。そして、コントローラ10は、マイクロプロセッサの命令に基づいて、バッファメモリ6に格納したデータにデスクランブル処理を施し、そのデスクランブル処理後のデータを、インターフェース回路15を介して上記コンピュータ2に転送する。
次に、光ディスクコントローラ10の内部構成について図2に従って説明する。
図2に示すように、光ディスクコントローラ10の受信回路11には、HD−DVD4から読み出されたディスクデータが入出力駆動回路5を通じて順次入力される。受信回路11は、受信したディスクデータを復調回路12に出力する。復調回路12は、入力されるディスクデータをデジタルデータに変換し、そのデジタルデータを復調する。復調回路12は、復調済データ、すなわち図17に示したECCブロック70をバッファメモリ6に格納する。なお、以下の説明では簡便化のために、この図17に示す208バイト×364バイトのデータブロックであるECCブロック50を、図6に示す10バイト×16バイトのデータブロックであるECCブロック50に置換して説明する。詳しくは、208バイト×182バイトの積符号である各訂正ブロック70L,70Rを、10バイト×8バイトの積符号である左側訂正ブロック50L及び右側訂正ブロック50Rに置換する。ここで、この各訂正ブロック50L,50Rはそれぞれ、図19の左側訂正ブロック80Lと同様に、1行4バイトのデータ列にパラメータ(8,4,5)のPI符号が付加され、1列6バイトのデータ列にパラメータ(10,6,5)のPO符号が付加されている。なお、このECCブロック50では、データ再生時におけるHD−DVD4からのデータ受信順序がデータ番号dで示されており、各データがd0→d1→…→d7→d8→…→d15→d16→…→d159という順に受信される。
図2に示すように、光ディスクコントローラ10の受信回路11には、HD−DVD4から読み出されたディスクデータが入出力駆動回路5を通じて順次入力される。受信回路11は、受信したディスクデータを復調回路12に出力する。復調回路12は、入力されるディスクデータをデジタルデータに変換し、そのデジタルデータを復調する。復調回路12は、復調済データ、すなわち図17に示したECCブロック70をバッファメモリ6に格納する。なお、以下の説明では簡便化のために、この図17に示す208バイト×364バイトのデータブロックであるECCブロック50を、図6に示す10バイト×16バイトのデータブロックであるECCブロック50に置換して説明する。詳しくは、208バイト×182バイトの積符号である各訂正ブロック70L,70Rを、10バイト×8バイトの積符号である左側訂正ブロック50L及び右側訂正ブロック50Rに置換する。ここで、この各訂正ブロック50L,50Rはそれぞれ、図19の左側訂正ブロック80Lと同様に、1行4バイトのデータ列にパラメータ(8,4,5)のPI符号が付加され、1列6バイトのデータ列にパラメータ(10,6,5)のPO符号が付加されている。なお、このECCブロック50では、データ再生時におけるHD−DVD4からのデータ受信順序がデータ番号dで示されており、各データがd0→d1→…→d7→d8→…→d15→d16→…→d159という順に受信される。
誤り訂正回路20内の訂正回路21は、図6に示す読み出し番号Lの順番にてECCブロック50の左側訂正ブロック50Lをバッファメモリ6から読み出し、その左側訂正ブロック50Lに対して従来と同様の誤り訂正処理を施す。訂正回路21は、誤り訂正処理後の左側訂正ブロック50Lをバッファメモリ6に格納するとともに、左側訂正ブロック50Lに対する誤り訂正処理時に取得される、左側訂正ブロック50Lにおける誤り位置を誤り位置メモリ22に格納する。訂正回路21は、左側訂正ブロック50Lに対する誤り訂正処理が終了した後、図6に示す読み出し番号Rの順番にてECCブロック50の右側訂正ブロック50Rをバッファメモリ6から読み出す。このとき、訂正回路21は、読み出した右側訂正ブロック50Rに対して、上記左側訂正ブロック50Lの誤り位置情報を利用した誤り訂正処理を施す。
詳述すると、バーストエラーライン判定回路(判定回路)23は、誤り位置メモリ22から左側訂正ブロック50Lの誤り位置情報を読み出し、その誤り位置情報に基づいて右側訂正ブロック50Rの各行がバーストエラーラインであるか否かを判定する。この判定回路23は、判定によって得られるバーストエラーライン情報を訂正回路21に出力する。ここで、本明細書では、ディスクの表面に付着した汚れや傷などに起因するバーストエラーが発生している、すなわち多数の誤りが連続して発生していると推測される行(PI符号語)のことをバーストエラーラインと呼ぶ。なお、PI符号語内にバーストエラーが実際に発生している場合には、そのPI符号語内には多数の誤りが含まれることになる。
そして、訂正回路21は、入力されるバーストエラーライン情報により重み付けをした上で消失フラグを設定し、その消失フラグを利用したPO方向の消失訂正を含む誤り訂正処理を右側訂正ブロック50Rに対して行う。この訂正回路21は、誤り訂正処理後の右側訂正ブロック50Rをバッファメモリ6に格納する。
デスクランブル回路14は、バッファメモリ6から誤り訂正処理済みのECCブロック50を読み出し、その誤り訂正処理済みのECCブロック50内のメインデータに対してデスクランブル処理を行って該メインデータにかけられた所定のスクランブルを解除する。デスクランブル回路14は、マイクロプロセッサ8の命令に基づいて、上記デスクランブル処理済みのデータをインターフェース回路15を通じて上記コンピュータ2に出力する。
次に、誤り訂正回路20による誤り訂正処理について図3〜図7に従って説明する。
まず、図3のステップS1において、訂正回路21は、バッファメモリ6から読み出したECCブロック50の左側訂正ブロック50L(図6参照)に対して誤り訂正処理を行う。このとき、図6に示すECCブロック50では、斜線部で示すデータdにエラーが発生しているとする。なお、ここでは、この左側訂正ブロック50Lに対する誤り訂正処理が従来と同様であるため、その説明を省略する。
まず、図3のステップS1において、訂正回路21は、バッファメモリ6から読み出したECCブロック50の左側訂正ブロック50L(図6参照)に対して誤り訂正処理を行う。このとき、図6に示すECCブロック50では、斜線部で示すデータdにエラーが発生しているとする。なお、ここでは、この左側訂正ブロック50Lに対する誤り訂正処理が従来と同様であるため、その説明を省略する。
次に、左側訂正ブロック50Lに対する誤り訂正処理が終了すると、訂正回路21は、左側訂正ブロック50Lで発生していた全ての誤りを訂正しているため、誤り訂正処理前に左側訂正ブロック50L内に発生していた全ての誤りの位置情報を取得することができる。そして、訂正回路21は、その取得した誤り位置情報を誤り位置メモリ22に格納する(ステップS2)。なお、このとき、訂正回路21は、誤り訂正処理済みの左側訂正ブロック50Lをバッファメモリ6に格納する。
次に、バーストエラーライン判定回路23(誤り訂正回路20)は、誤り位置メモリ22に格納された左側訂正ブロック50Lの誤り位置情報に基づいて、右側訂正ブロック50Rの各行がバーストエラーラインであるか否かを判定する(ステップS3)。ここで、このバーストエラーラインの判定は、ECCブロック50内で1つのバーストエラーが2つの訂正ブロック50L,50Rに分散される点に着目し、一方の訂正ブロック(左側訂正ブロック50L)の各行の誤り位置情報を利用して他方の訂正ブロック(右側訂正ブロック50R)におけるバーストエラーラインを判定するものである。例えば、図6のECCブロック50におけるデータd36〜d53に発生している誤りは、1つのバーストエラーに起因していると推測される。このように1つのバーストエラーが2つの訂正ブロックに分散しているため、データ受信順序において右側訂正ブロック50Rの対象行(3行目)の前後のデータを含む左側訂正ブロックの行(3,4行目)に多数の誤りが発生しているような場合には、上記対象行がバーストエラーラインである可能性が高くなる。従って、例えば左側訂正ブロック50Lの3行目と4行目の誤り位置情報を基に、データ受信順序においてそれらの行に挟まれる右側訂正ブロック50Rの3行目のPI符号語がバーストエラーラインであるか否かを判定することができる。以下に、このバーストエラーラインの判定方法について図4に従って説明する。
図4に示すステップS11〜ステップS20は、図3のステップS3のサブステップである。すなわち、判定回路23は、行番号Nを「1」に設定し(ステップS11)、誤り位置メモリ22から左側訂正ブロック50LのN行目の誤り位置情報を読み出す(ステップS12)。続いて、判定回路23は、読み出したN行目の誤り位置情報に基づいて、N行目のPI符号語に発生していた誤り数が第1所定数S個(本実施形態では、4個)以上であるか否かを判定する(ステップS13)。このとき、左側訂正ブロック50Lの1,2,5,9,10行目のように、左側訂正ブロック50LのN行目のPI符号語内の誤り数が4個未満の場合には(ステップS13においてNO)、判定回路23は、右側訂正ブロック50RのN行目のPI符号語をバーストエラーラインではないと判定する(ステップS14)。すなわち、図6のECCブロック50では、右側訂正ブロック50Rの1,2,5,9,10行目のPI符号語がバーストエラーラインではないと判定される。
一方、ステップS13において、左側訂正ブロック50Lの3,4,6〜8行目のように、左側訂正ブロック50LのN行目のPI符号語内の誤り数が4個以上の場合には(ステップS13においてYES)、ステップS15に移る。次に、ステップS15において、判定回路23は、誤り位置メモリ22から左側訂正ブロック50LのN+1行目(ここでは、4,5,7〜9行目)の誤り位置情報を読み出す。続いて、判定回路23は、読み出したN+1行目の誤り位置情報に基づいて、N+1行目のPI符号語に発生していた誤り数が第2所定数T個(本実施形態では、4個)以上であるか否かを判定する(ステップS16)。このとき、左側訂正ブロック50Lの4,8行目のN+1行目となる5,9行目のように、左側訂正ブロック50LのN+1行目のPI符号語の誤り数が4個未満の場合には(ステップS16においてNO)、判定回路23は、右側訂正ブロック50RのN行目をバーストエラーラインではないと判定する(ステップS14)。すなわち、図6のECCブロック50では、左側訂正ブロック50Lの5,9行目がN+1行目のときの右側訂正ブロック50RのN行目、つまり右側訂正ブロック50Rの4,8行目のPI符号語がバーストエラーラインではないと判定される。
一方、ステップS16において、左側訂正ブロック50Lの3,6,7行目のN+1行目となる4,7,8行目のように、左側訂正ブロック50LのN+1行目の誤り数が4個以上の場合には(ステップS16においてYES)、右側訂正ブロック50RのN行目のPI符号語をバーストエラーラインと判定する(ステップS17)。すなわち、図6のECCブロック50では、左側訂正ブロック50Lの4,7,8行目がN+1行目のときの右側訂正ブロック50RのN行目、つまり右側訂正ブロック50Rの3,6,7行目のPI符号語がバーストエラーラインと判定される(図6参照)。このように、本実施形態のバーストエラーラインの判定方法では、所定数S,T以上の誤りがそれぞれ発生していた左側訂正ブロック50LのN行目とN+1行目とに、データ受信順序において挟まれる右側訂正ブロック50RのN行目のPI符号語をバーストエラーラインとして判定する。
右側訂正ブロック50RのN行目がバーストエラーラインであるか否かの判定が終了すると、ステップS18において、判定回路23は、バーストエラーラインと判定された行数が設定可能な消失フラグの数(本実施形態では、3つ)と同数になったかを判定する。このとき、バーストエラーラインの数が3つ未満の場合には(ステップS18においてNO)、全ての行に対するバーストエラーラインの判定が終了したかを判定する(ステップS19)。このとき、バーストエラーラインの判定が終了していない行が残っている場合には(ステップS19においてNO)、判定回路23は、行番号Nに「1」を加え(ステップS20)、ステップS12に戻る。例えば上記ステップS12において3行目の誤り位置情報が読み出されている場合には、ステップS20において行番号に「1」が加えられると、次に4行目の誤り位置情報がステップS12において読み出される。このようにバーストエラーラインと判定された行数が設定可能な消失フラグの数と同数となるまで、もしくは全ての行に対するバーストエラーラインの判定が終了するまで、上記ステップS12〜S20が繰り返し実行される。そして、バーストエラーラインと判定された行数が設定可能な消失フラグの数と同数になると(ステップS18においてYES)、もしくは全ての行に対するバーストエラーラインの判定が終了すると(ステップS19においてYES)、判定回路23は、バーストエラーラインの判定を終了し、図3のステップS4に移る。
次に、ステップS4において、判定回路23は、判定したバーストエラーライン情報を訂正回路21に出力する。
続いて、訂正回路21は、バッファメモリ6から読み出したECCブロック50の右側訂正ブロック50Rに対して誤り訂正処理を行う(ステップS5)。以下に、誤り訂正回路20による右側訂正ブロック50Rに対する誤り訂正処理方法を図5に従って説明する。なお、ここでは、右側訂正ブロック50R対してはじめに行われるPI方向の検出訂正が訂正不能となるPI符号語の数が、設定可能な消失フラグの数(3つ)よりも多くなる場合について説明する。
続いて、訂正回路21は、バッファメモリ6から読み出したECCブロック50の右側訂正ブロック50Rに対して誤り訂正処理を行う(ステップS5)。以下に、誤り訂正回路20による右側訂正ブロック50Rに対する誤り訂正処理方法を図5に従って説明する。なお、ここでは、右側訂正ブロック50R対してはじめに行われるPI方向の検出訂正が訂正不能となるPI符号語の数が、設定可能な消失フラグの数(3つ)よりも多くなる場合について説明する。
図5に示すステップS21〜ステップS35は、図3のステップS5のサブステップである。すなわち、訂正回路21は、行番号Nを「1」に設定し(ステップS21)、右側訂正ブロック50RのN行目のPI符号語に対するPI方向の誤り訂正(ここでは、検出訂正)が可能であるか否かを判定する(ステップS22)。すなわち、訂正回路21は、N行目のPI符号語のデータを1バイト毎に読み出してPIシンドロームを生成し、該PIシンドロームを基に誤り位置及び誤り数値を算出する。このとき、訂正回路21は、N行目のPI符号語内に発生する誤りが所定バイト(本実施形態では、2バイト)以下の場合には、そのPI符号語に対するPI方向の検出訂正が可能であると判定する(ステップS22においてYES)。すると、訂正回路21は、そのN行目のPI符号語内の誤りを訂正し(ステップS23)、ステップS26に移る。
一方、ステップS22において、右側訂正ブロック50Rの1,3,6,7行目のように、そのN行目のPI符号語内に発生する誤りが2バイトを超える場合には、N行目のPI符号語に対するPI方向の検出訂正が不能であると判定される(ステップS22においてNO)。すなわち、図7(a)に示すように、右側訂正ブロック50Rでは、誤りの発生している1,3,6,7行目のPI符号語は全て3バイト以上の誤りを含んでいるため、その全ての行に対するPI方向の検出訂正を行うことができない(「×」参照)。このように図7に示す右側訂正ブロック50Rでは、PI方向の検出訂正が訂正不能と判定されたPI符号語の数(4つ)が設定可能な消失フラグの数(3つ)よりも多くなる。なお、図7では、誤り訂正のできた行(列)の右側(上側)に「○」を付し、誤り訂正のできなかった行(列)の右側(上側)に「×」を付し、消失フラグを設定した行(列)の右側(上側)に「●」を付すとともに、誤りが訂正されたデータ番号dを丸印で囲んで示している。この記号は、以下の図8、図12及び図15においても同様である。
次に、訂正回路21は、上記判定回路23から入力されるバーストエラーライン情報に基づいて、上記訂正不能と判定されたN行目のPI符号語が上記ステップS3においてバーストエラーラインと判定されたか否かを判定する(ステップS24)。このとき、右側訂正ブロック50Rの1行目のように、そのN行目のPI符号語がバーストエラーラインではないと判定されている場合には(ステップS24においてNO)、ステップS26に移る。一方、ステップS24において、右側訂正ブロック50Rの3,6,7行目のように、そのN行目がバーストエラーラインであると判定されている場合には(ステップS24においてYES)、訂正回路21は、そのN行目のPI符号語にPO方向の消失訂正のための消失フラグを設定し(ステップS25)、ステップS26に移る。すなわち、本実施形態では、PI方向の検出訂正が不能であると判定されたPI符号語のうち、バーストエラーラインと判定されたPI符号語に優先的にPO方向の消失訂正のための消失フラグが設定される。図7の右側訂正ブロック50Rでは、PI方向の検出訂正が訂正不能と判定された1,3,6,7行目のうち、バーストエラーラインと判定されている3,6,7行目のPI符号語に優先的にPO方向の消失訂正のための消失フラグが設定される(図7(b)の「●」参照)。
なお、ここでは、PI方向の検出訂正が訂正不能と判定され、且つバーストエラーラインではないと判定されたPI符号語に対して消失フラグを設定しないようになっているが、例えば訂正不能と判定されたPI符号語の数が設定可能な消失フラグと同数以下のときには、その訂正不能と判定されたPI符号語の全てに消失フラグを設定する。
次に、図5のステップS26において、訂正回路21は、最終行におけるPI方向の誤り訂正が終了したか否かを判定し、最終行におけるPI方向の誤り訂正が終了するまで、行番号Nに「1」を加えた上で(ステップS27)、ステップS22〜S26を繰り返し実行する。
そして、訂正回路21は、最終行におけるPI方向の誤り訂正が終了するとステップS28に移って、全ての行の誤りが訂正されたか、すなわち全ての誤りが訂正されたかを判定する。このとき、全ての誤りが訂正されている場合には(ステップS28においてYES)、誤り訂正回路20による誤り訂正処理を終了する。一方、図7(a)のように、右側訂正ブロック50R内に誤りが残っている場合には(ステップS28においてNO)、ステップS29に移る。
ステップS29において、訂正回路21は、列番号Mを「1」に設定する。次に、訂正回路21は、右側訂正ブロック50RのM列目のPO符号語に対するPO方向の消失訂正が可能であるか否かを判定する(ステップS30)。すなわち、訂正回路21は、M列目のPO符号語内に、上記ステップS25において消失フラグが設定された位置以外にも誤りが発生しているか否かを判定する。具体的には、図7(b)に示すように、M列目のPO符号語内において、消失フラグの設定された3,6,7行目以外の位置に誤りが発生しているか否かが判定される。このとき、右側訂正ブロック50Rの1〜3,7,8列目のPO符号語のように、消失フラグの設定された3,6,7行目のみに誤りが発生している場合には、そのM列目のPO符号語に対するPO方向の消失訂正が可能であると判定される(ステップS30においてYES)。すると、訂正回路21は、そのM列目のPO符号語に対するPO方向の消失訂正を行って(ステップS31)、M列目のPO符号語内の誤りを訂正し、ステップS33に移る。これにより、図7(b)に示すように、右側訂正ブロック50Rでは、1〜3,7,8列目のPO符号語内の誤りが訂正される(「○」参照)
一方、ステップS30において、右側訂正ブロック50Rの4〜6列目のPO符号語のように、消失フラグの設定された3,6,7行目以外の位置(ここでは、1行目)にも誤りが発生している場合には、その4〜6列目のPO符号語に対するPO方向の消失訂正が不能であると判定される(ステップS30においてNO)。従って、図7(b)に示すように、4〜6列目のPO符号語内に発生する誤りを訂正することができない(「×」参照)。次に、訂正回路21は、上記消失訂正が不能と判定されたM列目にPI方向の消失訂正のための消失フラグを設定し(ステップS32)、ステップS33に移る。これにより、図7(c)に示すように、右側訂正ブロック50Rでは、その4〜6列目のPO符号語にPI方向の消失訂正のための消失フラグが設定される(「●」参照)。
一方、ステップS30において、右側訂正ブロック50Rの4〜6列目のPO符号語のように、消失フラグの設定された3,6,7行目以外の位置(ここでは、1行目)にも誤りが発生している場合には、その4〜6列目のPO符号語に対するPO方向の消失訂正が不能であると判定される(ステップS30においてNO)。従って、図7(b)に示すように、4〜6列目のPO符号語内に発生する誤りを訂正することができない(「×」参照)。次に、訂正回路21は、上記消失訂正が不能と判定されたM列目にPI方向の消失訂正のための消失フラグを設定し(ステップS32)、ステップS33に移る。これにより、図7(c)に示すように、右側訂正ブロック50Rでは、その4〜6列目のPO符号語にPI方向の消失訂正のための消失フラグが設定される(「●」参照)。
ステップS33において、訂正回路21は、最終列におけるPO方向の消失訂正が終了したか否かを判定し、最終列におけるPO方向の消失訂正が終了するまで、列番号Mに「1」を加えた上で(ステップS34)、ステップS30〜S33を繰り返し実行する。
そして、訂正回路21は、最終列におけるPO方向の消失訂正が終了するとステップS35に移って、全ての列の誤りが訂正されたかを判定する。このとき、全ての誤りが訂正されている場合には(ステップS35においてYES)、誤り訂正回路20による誤り訂正処理を終了する。一方、図7(b)のように、右側訂正ブロック50R内に誤りが残っている場合には(ステップS35においてNO)、ステップS21に戻って、再度、右側訂正ブロック50Rに対してPI方向の誤り訂正(ここでは、消失訂正)が施される。
すなわち、訂正回路21は、上記ステップS32において設定された消失フラグを用いて、図7(b)に示す右側訂正ブロック50Rに対してPI方向の消失訂正を行う。具体的には、図7(b)に示す右側訂正ブロック50Rにおいて、誤りの発生している1,3,6,7行目の全てのPI符号語では、消失フラグの設定された4〜6列目のみに誤りが発生しているため(ステップS22においてYES)、訂正回路21は、そのN行目のPI符号語に対するPI方向の消失訂正を行う(ステップS23)。これにより、図7(c)に示すように、1,3,6,7行目のPI符号語内の誤りが訂正され、右側訂正ブロック50R内の全ての誤りが訂正される。
以上のように、右側訂正ブロック50Rに対する誤り訂正処理では、右側訂正ブロック50R内の全ての誤りが訂正されるまで、PI方向の誤り訂正とPO方向の誤り訂正とが繰り返し実行される。そして、図7(c)に示すように右側訂正ブロック50R内の全ての誤りが訂正されると、訂正回路21は、右側訂正ブロック50Rに対する誤り訂正処理を終了する。なお、訂正回路21は、誤り訂正処理済みの右側訂正ブロック50Rをバッファメモリ6に格納する。
ここで、比較例として、バーストエラーラインの判定を行わずに、図7(a)に示すPI方向の検出訂正時に訂正不能と判定された行(1,3,6,7行目)のうち、上から3つの行(1,3,6行目)のPI符号語に、PO方向の消失訂正のための消失フラグを設定した場合のPO方向の消失訂正の結果を図8に示す。
図8を見て明らかなように、消失フラグを任意に上から3つの行(1,3,6行目)のPI符号語に設定した場合には、全ての列のPO符号語において、消失フラグの設定された行以外の7行目にも誤りが発生しているため、その全ての列のPO符号語に対してPO方向の消失訂正を行うことができない(「×」参照)。すなわち、全ての列のPO符号語内に発生する誤りを一つも訂正することができない。従って、バーストエラーラインの判定を行わずに、任意の行にPO方向の消失訂正のための消失フラグを設定すると、第1実施形態と比較して、消失訂正における訂正効率が極めて低くなる場合がある。
以上説明した本実施形態によれば、以下の効果を奏することができる。
(1)HD−DVDは、その線記録密度がDVDの約1.7倍であるため、ディスクに同じサイズの傷がついたとしても、DVDよりも約1.7倍のデータがエラーになってしまう。そこで、HD−DVDでは、バーストエラーに対する訂正能力がDVDよりも約2倍高くなるデータフォーマットになっている。具体的には、ECCブロックのサイズをDVDよりも約2倍大きくし、さらにそのECCブロックを2つの訂正ブロックに分割することで、1つのバーストエラーが2つの訂正ブロックに分散されるようにインターリーブが深く取られている。これにより、1つの誤り訂正符号のデータが広い範囲に分散されて配置されるため、同時に多数のデータがエラーとなることが回避され、バーストエラーに対する訂正能力が高くなる。
(1)HD−DVDは、その線記録密度がDVDの約1.7倍であるため、ディスクに同じサイズの傷がついたとしても、DVDよりも約1.7倍のデータがエラーになってしまう。そこで、HD−DVDでは、バーストエラーに対する訂正能力がDVDよりも約2倍高くなるデータフォーマットになっている。具体的には、ECCブロックのサイズをDVDよりも約2倍大きくし、さらにそのECCブロックを2つの訂正ブロックに分割することで、1つのバーストエラーが2つの訂正ブロックに分散されるようにインターリーブが深く取られている。これにより、1つの誤り訂正符号のデータが広い範囲に分散されて配置されるため、同時に多数のデータがエラーとなることが回避され、バーストエラーに対する訂正能力が高くなる。
このように、HD−DVDでは1つのバーストエラーが2つの訂正ブロックに分散されるため、従来の誤り訂正処理のように各々の訂正ブロックに対する誤り訂正処理をそれぞれ独立して行う方法では、各訂正ブロックにおいて、バーストエラーが発生しているPI符号語を推測することはできない。
これに対して、本実施形態の判定回路23では、上述のように1つのバーストエラーが2つの訂正ブロックに分散されている点に着目し、一方の左側訂正ブロック50Lにおける誤り位置情報を利用し、他方の右側訂正ブロック50Rにおいて多数の誤りが連続して発生している可能性の高いPI符号語を推測するようにした。
具体的には、ECCブロック50のデータ受信順序は、図6に示すように、左側訂正ブロック50Lの1行目(N行目)から右側訂正ブロック50Rの1行目(N行目)へ、右側訂正ブロック50Rの1行目(N行目)から左側訂正ブロック50Lの2行目(N+1行目)へ、というようになる。従って、右側訂正ブロック50RのN行目は、データ受信順序において左側訂正ブロックのN行目とN+1行目とに挟まれている。そのため、仮に左側訂正ブロック50LのN行目とN+1行目とに多数の誤りが発生している場合には、左側訂正ブロック50LのN行目、N+1行目及び右側訂正ブロック50RのN行目に1つのバーストエラーが発生している可能性が高くなる。そこで、本実施形態の判定回路23では、左側訂正ブロック50LのN行目で発生した誤り数が第1所定数S以上で、且つ左側訂正ブロック50LのN+1行目で発生した誤り数が第2所定数T以上のときに、右側訂正ブロック50RのN行目をバーストエラーラインであると判定するようにした。これにより、バーストエラーが発生している可能性の高いPI符号語を精度良く推測することができ、バーストエラーラインと判定されたPI符号語に実際に多数の誤りが含まれる可能性を高くすることができる。
(2)PI方向の検出訂正が訂正不能と判定されたPI符号語のうち、バーストエラーラインと判定されたPI符号語に対して優先的にPO方向の消失訂正のための消失フラグを設定し、その設定した消失フラグを用いてPO方向の消失訂正を行う訂正回路21を設けた。これにより、多数の誤りが発生している可能性の高い行に消失フラグを設定した上で、右側訂正ブロック50Rに対してPO方向の消失訂正を行うことができる。従って、このPO方向の消失訂正により、右側訂正ブロック50Rに発生している誤りを効率的に訂正することができる。このことは、上述した比較例の結果(図8参照)からも明らかである。そのため、右側訂正ブロック50Rに対して行う、消失訂正を利用した誤り訂正処理の訂正効率を向上させることができる。ひいては、ECCブロック50に対する誤り訂正処理の訂正効率を向上させることができ、その誤り訂正処理に要する処理時間を短縮することもできる。
(第2実施形態)
以下、本発明の第2実施形態について、図9及び図10に従って説明する。この実施形態では、バーストエラーラインの判定方法が上記第1実施形態と異なっている。以下に、バーストエラーラインの判定方法を図10に従って説明する。なお、ここでは、上記第1実施形態と同様に、図6に示したECCブロック50に対して誤り訂正処理を行う場合について説明する。
以下、本発明の第2実施形態について、図9及び図10に従って説明する。この実施形態では、バーストエラーラインの判定方法が上記第1実施形態と異なっている。以下に、バーストエラーラインの判定方法を図10に従って説明する。なお、ここでは、上記第1実施形態と同様に、図6に示したECCブロック50に対して誤り訂正処理を行う場合について説明する。
図10に示すステップS41〜ステップS50は、図3のステップS3のサブステップである。すなわち、判定回路23は、行番号Nを「1」に設定し(ステップS41)、誤り位置メモリ22からN行目の誤り位置情報を読み出す(ステップS42)。続いて、判定回路23は、読み出したN行目の誤り位置情報に基づいて、N行目のPI符号語の所定範囲に発生していた誤りの数が第5所定数P個(本実施形態では、3個)以上であるか否かを判定する(ステップS43)。ここで、本実施形態では、N行目のPI符号語の所定範囲を、図9(a)の太線で示すように、そのPI符号語の最終列から先頭列側に第4所定数の列(ここでは、4列)分の範囲(5〜8列目の範囲)とした。このとき、左側訂正ブロック50Lの1,2,4,5,8〜10行目のように、N行目の所定範囲の誤り数が3個未満の場合には(ステップS43においてNO)、判定回路23は、右側訂正ブロック50RのN行目をバーストエラーラインではないと判定する(ステップS44)。すなわち、図6のECCブロック50では、右側訂正ブロック50Rの1,2,4,5,8〜10行目のPI符号語がバーストエラーラインではないと判定される。
一方、図9(a)に示す左側訂正ブロック50Lの3,6,7行目のように、N行目の所定範囲の誤り数が3個以上の場合には(ステップS43においてYES)、判定回路23は、N+1行目(例えば、4,7,8行目)の誤り位置情報を読み出す(ステップS45)。続いて、判定回路23は、読み出したN+1行目の誤り位置情報に基づいて、N+1行目の所定範囲に発生していた誤りの数が第6所定数Q個(本実施形態では、3個)以上であるか否かを判定する(ステップS46)。ここで、本実施形態では、N+1行目のPI符号語の所定範囲を、図9(b)の太線で示すように、そのPI符号語の先頭列から最終列側に第5所定数の列(ここでは、4列)分の範囲(1〜4列目の範囲)とした。このとき、左側訂正ブロック50Lの4,7,8行目のように、N+1行目の所定範囲の誤り数が3個以上の場合には(ステップS46においてYES)、右側訂正ブロック50RのN行目のPI符号語をバーストエラーラインとして判定する(ステップS47)。すなわち、この実施形態では、上記第1実施形態と同様に、左側訂正ブロック50Lの4,7,8行目がN+1行目のときの右側訂正ブロック50RのN行目、つまり右側訂正ブロック50Rの3,6,7行目のPI符号語がバーストエラーラインと判定される(図6参照)。このように、本実施形態のバーストエラーラインの判定方法では、所定数P,Q以上の誤りがそれぞれの所定範囲に発生していた左側訂正ブロック50LのN行目とN+1行目とに、データ受信順序において挟まれる右側訂正ブロック50RのN行目をバーストエラーラインとして判定する。
なお、図10のステップS48〜S50は、図4のステップS18〜S20と略同様の処理であり、バーストエラーラインと判定された行数が設定可能な消失フラグの数と同数となるまで、もしくは全ての行に対するバーストエラーラインの判定が終了するまで、上記ステップS42〜S50が繰り返し実行される。
以上説明した実施形態によれば、以下の効果を奏することができる。
(3)上述したように1つのバーストエラー(連続して発生する誤り)が2つの訂正ブロックに分散されているため、右側訂正ブロック50RのN行目のデータにより近い左側訂正ブロック50Lのデータに誤りが多数発生していると、その右側訂正ブロック50RのN行目にバーストエラーが発生している可能性が高い。
(3)上述したように1つのバーストエラー(連続して発生する誤り)が2つの訂正ブロックに分散されているため、右側訂正ブロック50RのN行目のデータにより近い左側訂正ブロック50Lのデータに誤りが多数発生していると、その右側訂正ブロック50RのN行目にバーストエラーが発生している可能性が高い。
そこで、本実施形態の判定回路23では、左側訂正ブロック50LのN行目の5〜8列目の範囲内で発生した誤り数が第4所定数P以上で、且つ左側訂正ブロック50LのN+1行目の1〜4列目の範囲内で発生した誤り数が第6所定数Q以上のときに、右側訂正ブロック50RのN行目をバーストエラーラインであると判定するようにした。これにより、右側訂正ブロック50RのN行目のデータにより近い前後のデータのみに限定し、その限定した範囲内の誤り位置情報に基づいて、右側訂正ブロック50RのN行目がバーストエラーラインであるか否かを判定することができる。従って、バーストエラーが発生している可能性の高いPI符号語をより精度良く推測することができる。
(第3実施形態)
以下、本発明の第3実施形態について、図11及び図12に従って説明する。この実施形態では、右側訂正ブロック50Rに対する誤り訂正処理方法が上記第1及び第2実施形態と異なっている。以下に、誤り訂正回路20による右側訂正ブロック50Rに対する誤り訂正処理方法を図11に従って説明する。なお、ここでは、上記第1及び第2実施形態と同様に、図6に示したECCブロック50に対して誤り訂正処理を行う場合について説明する。
以下、本発明の第3実施形態について、図11及び図12に従って説明する。この実施形態では、右側訂正ブロック50Rに対する誤り訂正処理方法が上記第1及び第2実施形態と異なっている。以下に、誤り訂正回路20による右側訂正ブロック50Rに対する誤り訂正処理方法を図11に従って説明する。なお、ここでは、上記第1及び第2実施形態と同様に、図6に示したECCブロック50に対して誤り訂正処理を行う場合について説明する。
図11に示すステップS51〜S60は、図3のステップS5のサブステップである。本実施形態の右側訂正ブロック50Rに対する誤り訂正処理では、PI方向の誤り訂正(検出訂正)よりも先行して、判定回路23において判定されたバーストエラーライン情報を利用してPO方向の消失訂正を行う。
すなわち、訂正回路21は、まず、判定回路23から入力されるバーストエラーライン情報に基づいて、バーストエラーラインと判定されたPI符号語にPO方向の消失訂正のための消失フラグを設定する(ステップS51)。具体的には、図12に示す右側訂正ブロック50Rでは、上記第1あるいは第2実施形態のバーストエラーライン判定方法によりバーストエラーラインと判定された3,6,7行目に消失フラグが設定される(「●」参照)。次に、訂正回路21は、ステップS52〜S57において、図5のステップS29〜S34と同様の処理を上記右側訂正ブロック50Rに対して行う。これにより、図12に示すように、右側訂正ブロック50Rの1〜3,7,8列目のPO符号語では、消失フラグの設定された3,6,7行目のみに誤りが発生しているため(ステップS53においてYES)、その1〜3,7,8列目のPO符号語内の誤りが訂正される(ステップS54:図12の「○」参照)。一方、右側訂正ブロック50Rの4〜6列目のPO符号語では、消失フラグの設定された3,6,7行目以外の1行目にも誤りが発生しているため(ステップS53においてNO)、その4〜6列目のPO符号語内の誤りを訂正することができない(図12の「×」参照)。なお、このとき、訂正回路21によって、上記消失訂正が不能と判定された4〜6列目にPI方向の消失訂正のための消失フラグが設定される(ステップS55)。
そして、訂正回路21は、最終列におけるPO方向の消失訂正が終了するとステップS58に移って、全ての誤りが訂正されたかを判定する。このとき、全ての誤りが訂正されている場合には(ステップS58においてYES)、誤り訂正回路20による誤り訂正処理を終了する。一方、図12のように、右側訂正ブロック50R内に誤りが残っている場合には(ステップS58においてNO)、ステップS59に移って、右側訂正ブロック50Rに対するPI方向の誤り訂正(ここでは、消失訂正)が施される。ここでのPI方向の消失訂正は、図7(c)で説明した処理と略同様であるため、その説明を省略する。
以上説明した実施形態によれば、以下の効果を奏することができる。
(4)右側訂正ブロック50Rに対する誤り訂正処理を行うときに、まず、判定回路23にてバーストエラーラインであると判定されたPI符号語に対して、PO方向の消失訂正のための消失フラグを設定するようにした。これにより、右側訂正ブロック50Rに対する誤り訂正処理を行うときに、はじめにPI方向の検出訂正を行うことなく、上記設定された消失フラグを利用してPO方向の消失訂正を行うことができる。
(4)右側訂正ブロック50Rに対する誤り訂正処理を行うときに、まず、判定回路23にてバーストエラーラインであると判定されたPI符号語に対して、PO方向の消失訂正のための消失フラグを設定するようにした。これにより、右側訂正ブロック50Rに対する誤り訂正処理を行うときに、はじめにPI方向の検出訂正を行うことなく、上記設定された消失フラグを利用してPO方向の消失訂正を行うことができる。
(5)右側訂正ブロック50Rに対して、はじめにPO方向の消失訂正を行うようにした。これにより、検出訂正よりも訂正能力の高い消失訂正が先に行われるため、右側訂正ブロック50Rに対する誤り訂正処理の訂正効率を向上させることができる。
(第4実施形態)
以下、本発明の第4実施形態について、図13〜図15に従って説明する。この実施形態では、右側訂正ブロックに対する誤り訂正処理方法が上記第1〜第3実施形態と異なっている。以下に、誤り訂正回路20による右側訂正ブロックに対する誤り訂正処理方法を図14及び図15に従って説明する。なお、ここでは、図13に示すように、図6のECCブロック50と誤り位置の異なるECCブロック60(左側訂正ブロック60L及び右側訂正ブロック60R)に対して誤り訂正処理を行う場合について説明する。この右側訂正ブロック60Rでは、判定回路23によって3,6,7行目のPI符号語がバーストエラーラインと判定されている。
以下、本発明の第4実施形態について、図13〜図15に従って説明する。この実施形態では、右側訂正ブロックに対する誤り訂正処理方法が上記第1〜第3実施形態と異なっている。以下に、誤り訂正回路20による右側訂正ブロックに対する誤り訂正処理方法を図14及び図15に従って説明する。なお、ここでは、図13に示すように、図6のECCブロック50と誤り位置の異なるECCブロック60(左側訂正ブロック60L及び右側訂正ブロック60R)に対して誤り訂正処理を行う場合について説明する。この右側訂正ブロック60Rでは、判定回路23によって3,6,7行目のPI符号語がバーストエラーラインと判定されている。
図14に示すステップS61〜S75は、図3のステップS5のサブステップである。本実施形態の右側訂正ブロック60Rに対する誤り訂正処理では、はじめに行われるPI方向の検出訂正時に、バーストエラーラインと判定されたPI符号語に対しては、検出訂正が可能か否かの判断を行わずに、PO方向の消失訂正のための消失フラグが設定される。その一方で、バーストエラーラインではないと判定されたPI符号語に対しては、PI方向の検出訂正が行われる。
詳述すると、図14のステップS61において、訂正回路21は、行番号Nを「1」に設定する。続いて、訂正回路21は、上記判定回路23から入力されるバーストエラーライン情報に基づいて、右側訂正ブロック60RのN行目が図3のステップS3においてバーストエラーラインと判定されたか否かを判定する(ステップS62)。このとき、図13の右側訂正ブロック60Rの3,6,7行目のように、そのN行目のPI符号語がバーストエラーラインと判定されている場合には(ステップS62においてYES)、訂正回路21は、そのN行目のPI符号語にPO方向の消失訂正のための消失フラグを設定し(ステップS63)、ステップS66に移る。これにより、図15(a)に示すように、右側訂正ブロック60Rでは、3,6,7行目のPI符号語にPO方向の消失訂正のための消失フラグが設定される(「●」参照)。
一方、ステップS62において、右側訂正ブロック60Rの1,2,4,5,8〜10行目のように、そのN行目のPI符号語がバーストエラーラインではないと判定されている場合には(ステップS62においてNO)、ステップS64に移る。次に、ステップS64において、訂正回路21は、そのN行目のPI符号語に対するPI方向の検出訂正が可能であるか否かを判定する。このとき、右側訂正ブロック60Rの1行目のように、そのN行目のPI符号語内に3バイト以上の誤りが発生している場合には、そのPI符号語に対するPI方向の検出訂正が不能と判定され(ステップS64においてNO)、ステップS66に移る。従って、ここでは、図15(a)に示すように、右側訂正ブロック60Rにおける1行目のPI符号語の誤りを訂正することができない(「×」参照)。
一方、ステップS64において、右側訂正ブロック60Rの4,5,8,9行目のように、そのN行目のPI符号語内に発生する誤りが2バイト以下の場合には、訂正回路21は、そのPI符号語に対するPI方向の検出訂正が可能であると判定する(ステップS64においてYES)。すると、訂正回路21は、そのN行目のPI符号語内の誤りを訂正し(ステップS65)、ステップS66に移る。これにより、図15(a)に示すように、右側訂正ブロック60Rにおける4,5,8,9行目のPI符号語内の誤りが訂正される(「○」参照)。
そして、訂正回路21は、最終行におけるPI方向の検出訂正が終了するとステップS68に移って、全ての誤りが訂正されたかを判定する。このとき、全ての誤りが訂正されている場合には(ステップS68においてYES)、誤り訂正回路20による誤り訂正処理を終了する。一方、図15(a)のように、右側訂正ブロック50R内に誤りが残っている場合には(ステップS68においてNO)、ステップS69に移って、右側訂正ブロック50Rに対するPO方向の消失訂正が施される。この後の誤り訂正処理の方法は、図5及び図7(b)、(c)で説明した処理と略同様であるため、その説明を省略する。
以上記述したように、本実施形態によれば、以下の効果を奏する。
(6)右側訂正ブロック60Rに対してはじめに行われるPI方向の検出訂正時において、判定回路23にてバーストエラーラインと判定されたPI符号語に対して、PI方向の検出訂正が可能か否かの判断をすることなく、PO方向の消失訂正のための消失フラグを設定するようにした。これにより、多数の誤りが発生している可能性の高いPI符号語に消失フラグを設定できるとともに、そのPI符号語についてのPIシンドロームの生成等の演算処理を省略することができる。従って、その演算処理を省略した分だけPI方向の検出訂正に要する処理時間を短縮することができる。ひいては、右側訂正ブロック50Rに対する誤り訂正処理に要する全体の処理時間を短縮することができる。
(6)右側訂正ブロック60Rに対してはじめに行われるPI方向の検出訂正時において、判定回路23にてバーストエラーラインと判定されたPI符号語に対して、PI方向の検出訂正が可能か否かの判断をすることなく、PO方向の消失訂正のための消失フラグを設定するようにした。これにより、多数の誤りが発生している可能性の高いPI符号語に消失フラグを設定できるとともに、そのPI符号語についてのPIシンドロームの生成等の演算処理を省略することができる。従って、その演算処理を省略した分だけPI方向の検出訂正に要する処理時間を短縮することができる。ひいては、右側訂正ブロック50Rに対する誤り訂正処理に要する全体の処理時間を短縮することができる。
なお、上記実施形態は、これを適宜変更した以下の態様にて実施することもできる。
・上記各実施形態では、左側訂正ブロック50LのN行目とN+1行目との誤り位置情報に基づいて、右側訂正ブロック50RのN行目がバーストエラーラインであるか否かを判定するようにした。これに限らず、例えば左側訂正ブロック50LのN行目(の所定範囲)の誤り位置情報のみに基づいて、右側訂正ブロック50RのN行目がバーストエラーラインであるか否かを判定するようにしてもよい。また、左側訂正ブロック50LのN+1行目(の所定範囲)の誤り位置情報のみに基づいて、右側訂正ブロック50RのN行目がバーストエラーラインであるか否かを判定するようにしてもよい。
・上記各実施形態では、左側訂正ブロック50LのN行目とN+1行目との誤り位置情報に基づいて、右側訂正ブロック50RのN行目がバーストエラーラインであるか否かを判定するようにした。これに限らず、例えば左側訂正ブロック50LのN行目(の所定範囲)の誤り位置情報のみに基づいて、右側訂正ブロック50RのN行目がバーストエラーラインであるか否かを判定するようにしてもよい。また、左側訂正ブロック50LのN+1行目(の所定範囲)の誤り位置情報のみに基づいて、右側訂正ブロック50RのN行目がバーストエラーラインであるか否かを判定するようにしてもよい。
・上記各実施形態では、バーストエラーラインの判定において、バーストエラーラインと判定されたPI符号語の数が設定可能な消失フラグの数と同数になったときにも終了するようにしたが(図4のステップS18及び図10のステップS48)、それらのステップS18,S48を省略してもよい。この場合、バーストエラーラインと判定されたPI符号語の数が設定可能な消失フラグの数以上になったときに、バーストエラーラインと判定されたPI符号語の中から、バーストエラーラインである可能性がより高いPI符号語を、消失フラグの設定に利用するバーストエラーラインとして選択するようにしてもよい。なお、この選択は、例えば各PI符号語に対してバーストエラーラインと判定したときに利用した左側訂正ブロック50LのN行目とN+1行目とに含まれる誤り数などに基づいて行うようにしてもよい。
・上記各実施形態において、右側訂正ブロック50Rに対する2回目以降のPI方向の誤り訂正及び2回目以降のPO方向の誤り訂正は、検出訂正であっても、消失訂正であってもよい。
・上記第3実施形態において、右側訂正ブロック50Rに対する1回目のPI方向の誤り訂正は、検出訂正であっても、消失訂正であってもよい。
・上記第2実施形態におけるN行目の所定範囲及びN+1行目の所定範囲は、図9に示した範囲に特に制限されない。
・上記第2実施形態におけるN行目の所定範囲及びN+1行目の所定範囲は、図9に示した範囲に特に制限されない。
・上記各実施形態における第1〜第6所定数は、各実施形態で示した数値に特に制限されない。
・上記各実施形態において、消失フラグを最大数設定できるようにしてもよい。
・上記各実施形態において、消失フラグを最大数設定できるようにしてもよい。
・上記各実施形態におけるバーストエラーラインの判定方法及び右側訂正ブロックに対する誤り訂正処理方法は、HD−DVDのように、1つのECCブロックが2つの訂正ブロックに分割されるフォーマットのECCブロックに対して適用可能である。
以上の様々な実施の形態をまとめると、以下のようになる。
(付記1)
ECCブロックを構成する第1訂正ブロックと第2訂正ブロックとに対してそれぞれ、各行毎に行う第1方向の誤り訂正と、各列毎に行う第2方向の誤り訂正と、を含む誤り訂正処理を行う訂正回路を備え、前記訂正回路が、前記第1訂正ブロックに対する誤り訂正処理を行った後に、前記第2訂正ブロックに対する誤り訂正処理を行う誤り訂正装置において、
前記第1訂正ブロックで発生した誤りの位置を示す誤り位置情報に基づいて、前記第2訂正ブロックの各行が、その行内に多数の誤りが連続して発生していると推測されるバーストエラーラインであるか否かを判定し、バーストエラーライン情報を生成する判定回路を備え、
前記訂正回路は、前記バーストエラーライン情報に基づいて、前記第2訂正ブロックの行に前記第2方向の誤り訂正のための消失フラグを設定し、その設定した消失フラグを用いて前記第2訂正ブロックに対する前記第2方向の誤り訂正を行うことを特徴とする誤り訂正装置。
(付記2)
前記判定回路は、前記第1訂正ブロックのN行目とN+1行目における誤り位置情報に基づいて、前記第2訂正ブロックのN行目が前記バーストエラーラインであるか否かを判定する、ことを特徴とする付記1に記載の誤り訂正装置。
(付記3)
前記判定回路は、前記第1訂正ブロックのN行目で発生した誤り数が第1所定数よりも多く、且つ前記第1訂正ブロックのN+1行目で発生した誤り数が第2所定数よりも多い場合に、前記第2訂正ブロックのN行目が前記バーストエラーラインであると判定する、ことを特徴とする付記1又は2に記載の誤り訂正装置。
(付記4)
前記判定回路は、前記第1訂正ブロックのN行目の最終列から先頭列側に第3所定数の列分の範囲内で発生した誤り数が第4所定数よりも多く、且つ前記第1訂正ブロックのN+1行目の先頭列から最終列側に第5所定数の列分の範囲内で発生した誤り数が第6所定数よりも多い場合に、前記第2訂正ブロックのN行目が前記バーストエラーラインであると判定する、ことを特徴とする付記1又は2に記載の誤り訂正装置。
(付記5)
前記訂正回路は、前記第2訂正ブロックに対してはじめに行う前記第1方向の誤り訂正のときに訂正不能と判定された行のうち、前記判定回路にて前記バーストエラーラインであると判定された行に対して優先的に前記消失フラグを設定することを特徴とする付記1〜4のいずれか一つに記載の誤り訂正装置。
(付記6)
前記訂正回路は、前記判定回路にて前記バーストエラーラインであると判定された前記第2訂正ブロックの行に前記消失フラグを設定し、前記設定した消失フラグを用いた前記第2方向の誤り訂正を、前記第2訂正ブロックに対してはじめに行うことを特徴とする付記1〜4のいずれか一つに記載の誤り訂正装置。
(付記7)
前記訂正回路は、前記第2訂正ブロックに対してはじめに行う前記第1方向の誤り訂正時のときに、前記判定回路にて前記バーストエラーラインであると判定された前記第2訂正ブロックの行に対して、前記第1方向の誤り訂正が可能か否かの判断をすることなく、前記消失フラグを設定することを特徴とする付記1〜4のいずれか一つに記載の誤り訂正装置。
(付記1)
ECCブロックを構成する第1訂正ブロックと第2訂正ブロックとに対してそれぞれ、各行毎に行う第1方向の誤り訂正と、各列毎に行う第2方向の誤り訂正と、を含む誤り訂正処理を行う訂正回路を備え、前記訂正回路が、前記第1訂正ブロックに対する誤り訂正処理を行った後に、前記第2訂正ブロックに対する誤り訂正処理を行う誤り訂正装置において、
前記第1訂正ブロックで発生した誤りの位置を示す誤り位置情報に基づいて、前記第2訂正ブロックの各行が、その行内に多数の誤りが連続して発生していると推測されるバーストエラーラインであるか否かを判定し、バーストエラーライン情報を生成する判定回路を備え、
前記訂正回路は、前記バーストエラーライン情報に基づいて、前記第2訂正ブロックの行に前記第2方向の誤り訂正のための消失フラグを設定し、その設定した消失フラグを用いて前記第2訂正ブロックに対する前記第2方向の誤り訂正を行うことを特徴とする誤り訂正装置。
(付記2)
前記判定回路は、前記第1訂正ブロックのN行目とN+1行目における誤り位置情報に基づいて、前記第2訂正ブロックのN行目が前記バーストエラーラインであるか否かを判定する、ことを特徴とする付記1に記載の誤り訂正装置。
(付記3)
前記判定回路は、前記第1訂正ブロックのN行目で発生した誤り数が第1所定数よりも多く、且つ前記第1訂正ブロックのN+1行目で発生した誤り数が第2所定数よりも多い場合に、前記第2訂正ブロックのN行目が前記バーストエラーラインであると判定する、ことを特徴とする付記1又は2に記載の誤り訂正装置。
(付記4)
前記判定回路は、前記第1訂正ブロックのN行目の最終列から先頭列側に第3所定数の列分の範囲内で発生した誤り数が第4所定数よりも多く、且つ前記第1訂正ブロックのN+1行目の先頭列から最終列側に第5所定数の列分の範囲内で発生した誤り数が第6所定数よりも多い場合に、前記第2訂正ブロックのN行目が前記バーストエラーラインであると判定する、ことを特徴とする付記1又は2に記載の誤り訂正装置。
(付記5)
前記訂正回路は、前記第2訂正ブロックに対してはじめに行う前記第1方向の誤り訂正のときに訂正不能と判定された行のうち、前記判定回路にて前記バーストエラーラインであると判定された行に対して優先的に前記消失フラグを設定することを特徴とする付記1〜4のいずれか一つに記載の誤り訂正装置。
(付記6)
前記訂正回路は、前記判定回路にて前記バーストエラーラインであると判定された前記第2訂正ブロックの行に前記消失フラグを設定し、前記設定した消失フラグを用いた前記第2方向の誤り訂正を、前記第2訂正ブロックに対してはじめに行うことを特徴とする付記1〜4のいずれか一つに記載の誤り訂正装置。
(付記7)
前記訂正回路は、前記第2訂正ブロックに対してはじめに行う前記第1方向の誤り訂正時のときに、前記判定回路にて前記バーストエラーラインであると判定された前記第2訂正ブロックの行に対して、前記第1方向の誤り訂正が可能か否かの判断をすることなく、前記消失フラグを設定することを特徴とする付記1〜4のいずれか一つに記載の誤り訂正装置。
上記構成によれば、バーストエラーラインであると判定された行に対して、第1方向の誤り訂正が可能か否かの判断をすることなく、消失フラグが設定される。これにより、多数の誤りが発生している可能性の高い行に消失フラグを設定することができるとともに、その行に対するシンドローム生成等の処理を省略することができる。従って、第2訂正ブロックに発生している誤りを効率良く訂正でき、且つ第2訂正ブロックに対してはじめに行う第1方向の誤り訂正に要する時間を短縮することができる。ひいては、誤り訂正処理に要する全体の処理時間を短縮することができる。
(付記8)
第1訂正符号及び第2訂正符号を有する積符号である第1訂正ブロックと第2訂正ブロックとからなるECCブロックに対して誤り訂正処理を行う誤り訂正装置と、メモリと、を含んで構成され、光ディスクに書き込まれたデータを読み出すデータ読み出し装置であって、
前記誤り訂正装置は、
前記第1訂正ブロックに対して、該第1訂正ブロックの各行毎に誤り訂正を行う第1方向の誤り訂正と、該第1訂正ブロックの各列毎に誤り訂正を行う第2方向の誤り訂正と、を含む誤り訂正処理を行った後、前記第2訂正ブロックに対して、該第2訂正ブロックの各行毎における前記第1方向の誤り訂正と、該第2訂正ブロックの各列毎における前記第2方向の誤り訂正と、を含む誤り訂正処理を行う訂正回路と、
前記第1訂正ブロックで発生した誤りの位置を示す誤り位置情報に基づいて、前記第2訂正ブロックの各行が、その行内に多数の誤りが連続して発生していると推測されるバーストエラーラインであるか否かを判定し、バーストエラーライン情報を生成する判定回路を備え、
前記訂正回路は、前記バーストエラーライン情報に基づいて、前記第2訂正ブロックの行に前記第2方向の誤り訂正のための消失フラグを設定し、その設定した消失フラグを用いて前記第2訂正ブロックに対する前記第2方向の誤り訂正を行うことを特徴とするデータ読み出し装置。
(付記9)
第1訂正符号及び第2訂正符号を有する積符号である第1訂正ブロックと第2訂正ブロックとからなるECCブロックに対して誤り訂正処理を行う誤り訂正方法において、
前記第1訂正ブロックに対して誤り訂正処理を行って得られる、該第1訂正ブロックで発生した誤りの位置を示す誤り位置情報に基づいて、前記第2訂正ブロックの各行が、その行内に多数の誤りが連続して発生していると推測されるバーストエラーラインであるか否かを判定し、
その判定されたバーストエラーライン情報に基づいて、前記第2訂正ブロックの行に第2方向の誤り訂正のための消失フラグを設定し、
前記第2訂正ブロックに対して、前記設定した消失フラグを用いて各列毎に行う前記第2方向の誤り訂正を含む誤り訂正処理を行うことを特徴とする誤り訂正方法。
(付記8)
第1訂正符号及び第2訂正符号を有する積符号である第1訂正ブロックと第2訂正ブロックとからなるECCブロックに対して誤り訂正処理を行う誤り訂正装置と、メモリと、を含んで構成され、光ディスクに書き込まれたデータを読み出すデータ読み出し装置であって、
前記誤り訂正装置は、
前記第1訂正ブロックに対して、該第1訂正ブロックの各行毎に誤り訂正を行う第1方向の誤り訂正と、該第1訂正ブロックの各列毎に誤り訂正を行う第2方向の誤り訂正と、を含む誤り訂正処理を行った後、前記第2訂正ブロックに対して、該第2訂正ブロックの各行毎における前記第1方向の誤り訂正と、該第2訂正ブロックの各列毎における前記第2方向の誤り訂正と、を含む誤り訂正処理を行う訂正回路と、
前記第1訂正ブロックで発生した誤りの位置を示す誤り位置情報に基づいて、前記第2訂正ブロックの各行が、その行内に多数の誤りが連続して発生していると推測されるバーストエラーラインであるか否かを判定し、バーストエラーライン情報を生成する判定回路を備え、
前記訂正回路は、前記バーストエラーライン情報に基づいて、前記第2訂正ブロックの行に前記第2方向の誤り訂正のための消失フラグを設定し、その設定した消失フラグを用いて前記第2訂正ブロックに対する前記第2方向の誤り訂正を行うことを特徴とするデータ読み出し装置。
(付記9)
第1訂正符号及び第2訂正符号を有する積符号である第1訂正ブロックと第2訂正ブロックとからなるECCブロックに対して誤り訂正処理を行う誤り訂正方法において、
前記第1訂正ブロックに対して誤り訂正処理を行って得られる、該第1訂正ブロックで発生した誤りの位置を示す誤り位置情報に基づいて、前記第2訂正ブロックの各行が、その行内に多数の誤りが連続して発生していると推測されるバーストエラーラインであるか否かを判定し、
その判定されたバーストエラーライン情報に基づいて、前記第2訂正ブロックの行に第2方向の誤り訂正のための消失フラグを設定し、
前記第2訂正ブロックに対して、前記設定した消失フラグを用いて各列毎に行う前記第2方向の誤り訂正を含む誤り訂正処理を行うことを特徴とする誤り訂正方法。
1 光ディスク制御装置(データ読み出し装置)
6 バッファメモリ(メモリ)
10 光ディスクコントローラ(誤り訂正装置)
20 誤り訂正回路
21 訂正回路
23 バーストエラーライン判定回路
50,60,70 ECCブロック
50L,60L,70L 左側訂正ブロック(第1訂正ブロック)
50R,60R,70R 右側訂正ブロック(第2訂正ブロック)
6 バッファメモリ(メモリ)
10 光ディスクコントローラ(誤り訂正装置)
20 誤り訂正回路
21 訂正回路
23 バーストエラーライン判定回路
50,60,70 ECCブロック
50L,60L,70L 左側訂正ブロック(第1訂正ブロック)
50R,60R,70R 右側訂正ブロック(第2訂正ブロック)
Claims (7)
- ECCブロックを構成する第1訂正ブロックと第2訂正ブロックとに対してそれぞれ、各行毎に行う第1方向の誤り訂正と、各列毎に行う第2方向の誤り訂正と、を含む誤り訂正処理を行う訂正回路を備え、前記訂正回路が、前記第1訂正ブロックに対する誤り訂正処理を行った後に、前記第2訂正ブロックに対する誤り訂正処理を行う誤り訂正装置において、
前記第1訂正ブロックで発生した誤りの位置を示す誤り位置情報に基づいて、前記第2訂正ブロックの各行が、その行内に多数の誤りが連続して発生していると推測されるバーストエラーラインであるか否かを判定し、バーストエラーライン情報を生成する判定回路を備え、
前記訂正回路は、前記バーストエラーライン情報に基づいて、前記第2訂正ブロックの行に前記第2方向の誤り訂正のための消失フラグを設定し、その設定した消失フラグを用いて前記第2訂正ブロックに対する前記第2方向の誤り訂正を行う、ことを特徴とする誤り訂正装置。 - 前記判定回路は、前記第1訂正ブロックのN行目で発生した誤り数が第1所定数よりも多く、且つ前記第1訂正ブロックのN+1行目で発生した誤り数が第2所定数よりも多い場合に、前記第2訂正ブロックのN行目が前記バーストエラーラインであると判定する、ことを特徴とする請求項1に記載の誤り訂正装置。
- 前記判定回路は、前記第1訂正ブロックのN行目の最終列から先頭列側に第3所定数の列分の範囲内で発生した誤り数が第4所定数よりも多く、且つ前記第1訂正ブロックのN+1行目の先頭列から最終列側に第5所定数の列分の範囲内で発生した誤り数が第6所定数よりも多い場合に、前記第2訂正ブロックのN行目が前記バーストエラーラインであると判定する、ことを特徴とする請求項1に記載の誤り訂正装置。
- 前記訂正回路は、前記第2訂正ブロックに対してはじめに行う前記第1方向の誤り訂正のときに訂正不能と判定された行のうち、前記判定回路にて前記バーストエラーラインであると判定された行に対して優先的に前記消失フラグを設定する、ことを特徴とする請求項1〜3のいずれか一つに記載の誤り訂正装置。
- 前記訂正回路は、前記判定回路にて前記バーストエラーラインであると判定された前記第2訂正ブロックの行に前記消失フラグを設定し、前記設定した消失フラグを用いた第2方向の誤り訂正を、前記第2訂正ブロックに対してはじめに行う、ことを特徴とする請求項1〜3のいずれか一つに記載の誤り訂正装置。
- 第1訂正符号及び第2訂正符号を有する積符号である第1訂正ブロックと第2訂正ブロックとからなるECCブロックに対して誤り訂正処理を行う誤り訂正装置と、メモリと、を含んで構成され、光ディスクに書き込まれたデータを読み出すデータ読み出し装置であって、
前記誤り訂正装置は、
前記第1訂正ブロックに対して、該第1訂正ブロックの各行毎に誤り訂正を行う第1方向の誤り訂正と、該第1訂正ブロックの各列毎に誤り訂正を行う第2方向の誤り訂正と、を含む誤り訂正処理を行った後、前記第2訂正ブロックに対して、該第2訂正ブロックの各行毎における前記第1方向の誤り訂正と、該第2訂正ブロックの各列毎における前記第2方向の誤り訂正と、を含む誤り訂正処理を行う訂正回路と、
前記第1訂正ブロックで発生した誤りの位置を示す誤り位置情報に基づいて、前記第2訂正ブロックの各行が、その行内に多数の誤りが連続して発生していると推測されるバーストエラーラインであるか否かを判定し、バーストエラーライン情報を生成する判定回路を備え、
前記訂正回路は、前記バーストエラーライン情報に基づいて、前記第2訂正ブロックの行に前記第2方向の誤り訂正のための消失フラグを設定し、その設定した消失フラグを用いて前記第2訂正ブロックに対する第2方向の誤り訂正を行う、ことを特徴とするデータ読み出し装置。 - 第1訂正符号及び第2訂正符号を有する積符号である第1訂正ブロックと第2訂正ブロックとからなるECCブロックに対して誤り訂正処理を行う誤り訂正方法において、
前記第1訂正ブロックに対して誤り訂正処理を行って得られる、該第1訂正ブロックで発生した誤りの位置を示す誤り位置情報に基づいて、前記第2訂正ブロックの各行が、その行内に多数の誤りが連続して発生していると推測されるバーストエラーラインであるか否かを判定し、
その判定されたバーストエラーライン情報に基づいて、前記第2訂正ブロックの行に第2方向の誤り訂正のための消失フラグを設定し、
前記第2訂正ブロックに対して、前記設定した消失フラグを用いて各列毎に行う前記第2方向の誤り訂正を含む誤り訂正処理を行う、ことを特徴とする誤り訂正方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008089987A JP2009246640A (ja) | 2008-03-31 | 2008-03-31 | 誤り訂正装置、データ読み出し装置及び誤り訂正方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008089987A JP2009246640A (ja) | 2008-03-31 | 2008-03-31 | 誤り訂正装置、データ読み出し装置及び誤り訂正方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2009246640A true JP2009246640A (ja) | 2009-10-22 |
Family
ID=41308082
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008089987A Pending JP2009246640A (ja) | 2008-03-31 | 2008-03-31 | 誤り訂正装置、データ読み出し装置及び誤り訂正方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2009246640A (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016527832A (ja) * | 2013-08-07 | 2016-09-08 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | 積符号のための誤りおよび消失組合せ復号のためのシステム、方法、およびコンピュータ・プログラム |
-
2008
- 2008-03-31 JP JP2008089987A patent/JP2009246640A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016527832A (ja) * | 2013-08-07 | 2016-09-08 | インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation | 積符号のための誤りおよび消失組合せ復号のためのシステム、方法、およびコンピュータ・プログラム |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7730379B2 (en) | Method and apparatus for error code correction | |
US7350129B2 (en) | Data processing method and apparatus, recording medium, reproducing method and apparatus using the same method | |
US7979776B2 (en) | Error correction block, method and apparatus for generating error correction block, and error correction method | |
US20060242486A1 (en) | Error correction coding method for a high-density storage media | |
US8225179B2 (en) | Method of generating error detection codes | |
JP4978576B2 (ja) | 符号化方法および符号化装置ならびに復号方法および復号装置 | |
KR20060106558A (ko) | 기억 제어 회로, 기억 제어 회로에서의 어드레스 에러 체크방법 | |
WO2016013285A1 (ja) | メモリコントローラおよびメモリコントローラの制御方法 | |
JP4620541B2 (ja) | 誤り検出符号算出回路、誤り検出符号算出方法及び記録装置 | |
US20060259850A1 (en) | Error correcting apparatus | |
JP2007329883A (ja) | Ldpc符号の復号化方法及び復号化装置、これを用いた光情報再生装置 | |
US8301959B2 (en) | Apparatus and method for processing beam information using low density parity check code | |
JP2007299393A (ja) | 回転する記憶媒体の複数の層にデータを読み書きする方法、プログラム及びデータ記憶装置 | |
US7475324B2 (en) | Encoding apparatus for storing data to disk | |
JP2010287271A5 (ja) | ||
JP2009246640A (ja) | 誤り訂正装置、データ読み出し装置及び誤り訂正方法 | |
JP2001023316A (ja) | ディジタルデータ再生方法及びディジタルデータ再生回路並びに誤り検出方法 | |
US20050022095A1 (en) | Error correction decoding method and apparatus | |
US20080109706A1 (en) | Error correction method and apparatus for optical information storage medium recording/reproducing apparatus | |
CN1476013A (zh) | 具有错误处理的光盘数据读取方法 | |
US20080201619A1 (en) | Error correcting device, error correcting method and disk system | |
JP2005276362A (ja) | 訂正符号生成装置、訂正符号生成方法、誤り訂正装置、および誤り訂正方法 | |
JP2007149340A (ja) | データ処理方法及び情報記録媒体 | |
JP2005332544A (ja) | データ符号化回路、データ符号化方法およびデータ記録装置 | |
JP2015215934A (ja) | 符号化装置、復号化装置、光情報記録再生装置、符号化方法、復号化方法 |