(57)【要約】【課題】積符号の両方の符号に対してバースト誤りを分散させる。【解決手段】ブロック単位インタリーバは、積符号のうち、ND×NB×NAビットに対して、データを、NBビット毎（＝ブロック毎）に、一方の方向としての列方向の順に入力し、右斜め下方向の順に読み出す処理であるインタリーブＡを行う。次に、ブロック単位インタリーバは、積符号のうち、Ｐに示される内符号のパリティ部分である（NC-ND）×NB×NAビットに対して、データを、NBビット毎に、一方の方向としての列方向の順に入力し、他方の方向としての行方向の順に読み出す処理であるインタリーブＢを行う。本発明は、例えば、記録再生装置に適用することができる。【選択図】図７
2010103882.tif 000002
【特許請求の範囲】
【請求項１】
外符号として、nビットを１シンボルとしたシンボル単位で誤り訂正を行う符号を用い、内符号として、ビット単位で誤り訂正を行う符号を用い、前記外符号、前記内符号の順に符号化された積符号に対して、インタリーブを行って記録順を変換するインタリーブ手段を備え、
前記インタリーブ手段により前記インタリーブが行われた後の記録順において、連続するiビットには、前記内符号の同じ符号語が含まれず、かつ、連続するj（j＞i）ビットは、前記外符号の同じ符号語の複数シンボルに跨らない
データ処理装置。
【請求項２】
前記インタリーブ手段は、
NA個の前記内符号を用いて、NB（NB=n）ビットを１ブロックとするNA×NCブロックの第１のインタリーブを行う第１のインタリーブ手段と、
前記第１のインタリーブ手段による前記第１のインタリーブの後、ビット単位で、NA×NBビットの第２のインタリーブをNC回行う第２のインタリーブ手段と
を含む請求項１に記載のデータ処理装置。
【請求項３】
前記第１のインタリーブ手段は、
一方の方向の順に入力したNA×NCブロックを、斜め方向の順に出力することで、前記第１のインタリーブを行う
請求項２に記載のデータ処理装置。
【請求項４】
前記第１のインタリーブ手段による前記第１のインタリーブは、
ND×NB×NAビット単位（ND×NB≧前記内符号の情報長）のインタリーブと、
それを除く部分のインタリーブとにより構成され、
前記第１のインタリーブ手段は、ND×NB×NAビットの範囲に対して、一方の方向の順に入力したNA×NDブロックを、斜め方向の順に出力し、
次に、（NC-ND）×NB×NAビットの範囲に対して、前記一方の方向の順に入力したNA×（NC-ND）ブロックを、他方の方向の順に出力することにより、前記第１のインタリーブを行う  
請求項２に記載のデータ処理装置。
【請求項５】
NAとNDは、互いに素である
請求項４に記載のデータ処理装置。
【請求項６】
前記第１のインタリーブ手段は、ND×NB×NAビットの範囲に対して、前記内符号をNBビット単位に分割して生成されるブロックのインデックスを順番にx=0,1,…, ND-1とし、前記内符号のインデックスを順番にy=0,1,…,NA-1とし、y番目の内符号のx番目のブロックを、(x,y)とし、kを読みだすブロックの数をカウントする変数とすると、
前記内符号のインデックスの小さい方から、前記ブロックのインデックスの昇順に入力されたブロックを、
x = ( k mod ND )
y = ( k mod NA )
k=0,1,2,…,N-1
で表される(x,y)のブロックの順に出力する  
請求項５に記載のデータ処理装置。
【請求項７】
前記第２のインタリーブ手段は、前記第１のインタリーブ手段により前記第１のインタリーブが行われたブロックに対して、NAブロック毎に順番に処理を行い、
NAブロックの範囲において、各ブロックの１ビット目を順に出力し、次に、各ブロックの２ビット目を順に出力し、その後同様の処理を繰り返し、最後に、各ブロックのNBビット目を順に出力することにより、前記第２のインタリーブを行う
請求項２に記載のデータ処理装置。
【請求項８】
前記インタリーブの周期は、前記積符号の１符号語分よりも小さい
請求項２に記載のデータ処理装置。
【請求項９】
外符号として、nビットを１シンボルとしたシンボル単位で誤り訂正を行う符号を用い、内符号として、ビット単位で誤り訂正を行う符号を用い、前記外符号、前記内符号の順に符号化された積符号に対して、インタリーブを行うデータ処理装置が、
前記積符号に対して、前記インタリーブが行われた後の記録順において、連続するiビットには、前記内符号の同じ符号語が含まれず、かつ、連続するj（j＞i）ビットは、前記外符号の同じ符号語の複数シンボルに跨らないように、前記インタリーブを行い、記録順を変換するステップを
含むデータ処理方法。
【請求項１０】
外符号として、nビットを１シンボルとしたシンボル単位で誤り訂正を行う符号を用い、内符号として、ビット単位で誤り訂正を行う符号を用い、前記外符号、前記内符号の順に符号化された積符号に対して、インタリーブを行うデータ処理装置に、
前記積符号に対して、前記インタリーブが行われた後の記録順において、連続するiビットには、前記内符号の同じ符号語が含まれず、かつ、連続するj（j＞i）ビットは、前記外符号の同じ符号語の複数シンボルに跨らないように、前記インタリーブを行い、記録順を変換するステップを
含む処理を実行させるためのプログラム。
【請求項１１】
外符号として、nビットを１シンボルとしたシンボル単位で誤り訂正を行う符号を用い、内符号として、ビット単位で誤り訂正を行う符号を用い、前記外符号、前記内符号の順に符号化された積符号に対して、インタリーブが行われた後の記録順において、連続するiビットには、前記内符号の同じ符号語が含まれず、かつ、連続するj（j＞i）ビットは、前記外符号の同じ符号語の複数シンボルに跨らないように、前記インタリーブが行われたデータが記録されている記録媒体から読み出されたデータに対して、デインタリーブを行い、元の順に並び替えるデインタリーブ手段
を備えるデータ処理装置。
【請求項１２】
前記デインタリーブ手段は、
ビット単位で、NA×NBビットの第１のデインタリーブをNC回行う第１のデインタリーブ手段と、
前記第１のデインタリーブ手段による前記第１のデインタリーブの後、NA個の前記内符号を用いて、NB（NB=n）ビットを１ブロックとするNA×NCブロックのデインタリーブを行う第２のデインタリーブ手段と
を含む請求項１１に記載のデータ処理装置。
【請求項１３】
前記第２のデインタリーブ手段は、
斜め方向の順に入力したNA×NCブロックを、一方の方向の順に出力することで、前記第１のデインタリーブを行う
請求項１２に記載のデータ処理装置。
【請求項１４】
前記第２のデインタリーブ手段による前記第２のデインタリーブは、
ND×NB×NAビット単位（ND×NB≧前記内符号の情報長）のデインタリーブと、
それを除く部分のデインタリーブとにより構成され、
前記第２のデインタリーブ手段は、ND×NB×NAビットの範囲に対して、斜め方向の順に入力したNA×NCブロックを、一方の方向の順に出力し、
次に、（NC-ND）×NB×NAビットの範囲に対して、他方の方向の順に入力したNA×（NC-ND）ブロックを、前記一方の方向の順に出力することにより、前記第１のデインタリーブを行う  
請求項１２に記載のデータ処理装置。
【請求項１５】
NAとNDは、互いに素である
請求項１４に記載のデータ処理装置。
【請求項１６】
前記第２のデインタリーブ手段は、ND×NB×NAビットの範囲に対して、前記内符号をNBビット単位に分割して生成されるブロックのインデックスを順番にx=0,1,…, ND-1とし、前記内符号のインデックスを順番にy=0,1,…,NA-1とし、y番目の内符号のx番目のブロックを、(x,y)とし、kを入力するブロックの数をカウントする変数とすると、
x = ( k mod ND )
y = ( k mod NA )
k=0,1,2,…,N-1  
で表される(x,y)のブロックを順に入力し、それを前記内符号のインデックスの小さい方から、前記ブロックのインデックスの昇順に出力する  
請求項１５に記載のデータ処理装置。
【請求項１７】
前記第１のデインタリーブ手段は、NAビットを１ブロックとしたNBブロック毎に順番に処理を行い、
NBブロックの範囲において、各ブロックの１ビット目を順に出力し、次に、各ブロックの２ビット目を順に出力し、その後同様の処理を繰り返し、最後に、各ブロックのNAビット目を順に出力することにより、前記第２のデインタリーブを行う
請求項１２に記載のデータ処理装置。
【請求項１８】
前記インタリーブの周期は、前記積符号の１符号語分よりも小さい
請求項１２に記載のデータ処理装置。
【請求項１９】
外符号として、nビットを１シンボルとしたシンボル単位で誤り訂正を行う符号を用い、内符号として、ビット単位で誤り訂正を行う符号を用い、前記外符号、前記内符号の順に符号化された積符号に対して、インタリーブが行われたデータが記録されている記録媒体から読み出されたデータを処理するデータ処理装置が、
前記記録媒体から読み出され、前記インタリーブが行われた後の記録順において、連続するiビットには、前記内符号の同じ符号語が含まれず、かつ、連続するj（j＞i）ビットは、前記外符号の同じ符号語の複数シンボルに跨らないように、前記インタリーブが行われているデータに対して、デインタリーブを行い、元の順に並び替えるステップ
を含むデータ処理方法。
【請求項２０】
外符号として、nビットを１シンボルとしたシンボル単位で誤り訂正を行う符号を用い、内符号として、ビット単位で誤り訂正を行う符号を用い、前記外符号、前記内符号の順に符号化された積符号に対して、インタリーブが行われたデータが記録されている記録媒体から読み出されたデータを処理するデータ処理装置に、
前記記録媒体から読み出され、前記インタリーブが行われた後の記録順において、連続するiビットには、前記内符号の同じ符号語が含まれず、かつ、連続するj（j＞i）ビットは、前記外符号の同じ符号語の複数シンボルに跨らないように、前記インタリーブが行われているデータに対して、デインタリーブを行い、元の順に並び替えるステップ
を含む処理を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ処理装置および方法、並びにプログラムに関し、特に、積符号の両方の符号に対してバースト誤りを分散させることができるようにしたデータ処理装置および方法、並びにプログラムに関する。
【背景技術】
【０００２】
記録装置において、磁気ディスクや光ディスクなどの記録媒体に信号を記録する場合、再生時に読み出し信号の振幅制御およびクロック再生が正常に動作するように、予め変調符号化を行ってから記録が行われる。そして、このような場合の再生には、例えば、PRML(Partial Response Maximum-Likelihood)などの再生方法が用いられる。PRMLとは、再生信号が直前の信号に影響を受けるというメディア特性を考慮してもとの波形を再生し、記録信号の特徴に基づいて、再生信号から最も確からしいデータを読み取る再生方法である。
【０００３】
再生信号に誤りが含まれていた場合、誤り訂正符号により誤りを訂正することができる。ただし、再生信号にバースト誤りが生じた場合には、誤り訂正符号による誤り訂正率が低くなるため、復号前にバースト誤りを分散させることが望ましい。
【０００４】
光ディスクにおけるバースト誤りとして、２種類の原因が考えられる。一方の原因は、読み出し時にはランダム誤りであるが、PRMLにおけるエラー伝播やビタビ復号などにより、数ビット程度の短いバースト誤りになってしまうというものである。他方の原因は、ディスクの傷やゴミ等によって、読み出しに失敗し、1000ビット程度の長いバースト誤りが生じてしまうというものである。
【０００５】
これらのバースト誤りに対処するための方式として、積符号と呼ばれる方式がある。積符号は、２種類の符号により誤り訂正を行う方式であり、復号遅延がある程度許容されており、さらに、単一の符号では所望の性能が得られない場合に用いられる。また、積符号は、比較的簡単なハードウエアで、強力な誤り訂正能力を得ることができる方式であり、CD-ROM(Compact Disc Read Only Memory)やDVD(Digital Versatile Disc)の誤り訂正方式として採用されている（例えば、特許文献１参照）。
【０００６】
図１は、積符号のデータ構成例を表している。積符号は、ユーザデータ、外符号のパリティ、内符号のパリティ、および（外符号の）パリティのパリティからなる。
【０００７】
図１に示される積符号においては、外符号の符号化が行われた後に、内符号の符号化が行われている。すなわち、外符号の符号化は、外符号の符号化方向を表す下向きの矢印に示されるように、図中上から下に向けて行方向に行われる。その結果、積符号においては、ユーザデータの下に外符号のパリティが付加される。その後、内符号の符号化が、内符号の符号化方向を表す右向きの矢印に示されるように、図中左から右に向けて列方向に行われる。その結果、積符号においては、ユーザデータの右に内符号のパリティが付加され、外符号のパリティの右にパリティのパリティが付加される。
【０００８】
このように構成される積符号の復号は、まず、１種類目の符号である内符号の復号から行われる。仮に、内符号の復号が失敗したとしても、その誤りは、２種類目の符号である外符号の複数の符号語に分散される。したがって、長いバースト誤りであっても、バースト誤りを外符号に対してランダム誤りとして訂正することができる。
【０００９】
ここで、ビット単位の復号を行う誤り訂正符号としては、通信や放送の用途で実用化が進んでいる高性能な誤り訂正符号のターボ符号やLDPC(Low Density Parity Check)符号などがある。これらの符号を用いることにより、大きな符号化利得を得ることができ、高品質な伝送が可能となる。
【００１０】
シンボル単位の復号を行う誤り訂正符号として、RS（Reed-Solomon）符号などがある。kシンボルをnシンボルに符号化するRS(n,k)符号(n:符号長,k:情報長)は、限界距離復号によって訂正数(n-k)/2シンボルまでの誤り訂正が可能である。
【００１１】
したがって、積符号の内符号として、ビット単位の復号を行う誤り訂正符号を用い、外符号としてシンボル単位の復号を行う誤り訂正符号を用いた場合、内符号の復号後の誤りを、外符号の訂正数以下に減少させることで、エラーフリーとなる。これにより、非常に強力な誤り訂正が可能となる。
【００１２】
これらの各符号の復号前にバースト誤りをランダム誤りとしてさらに復号確率を高くするために、チャネルインタリーバが用いられる。
【００１３】
図２は、従来のチャネルインタリーバによるインタリーブと、それに対応して行われるデインタリーブの例を表している。なお、図２Ａは、インタリーブの例を表している。図２Ｂは、図２Ａのインタリーブ後に短いバースト誤りが発生した場合のデインタリーブの例を表している。図２Ｃは、図２Ａのインタリーブ後に長いバースト誤りが発生した場合のデインタリーブの例を表している。
【００１４】
図２Ａの例において、説明の便宜上、インタリーブ前のビットを８ビットずつブロックにまとめ、各ブロックを、先頭（左）から順に、Ａブロック、Ｂブロック、Ｃブロック、Ｄブロック、…とそれぞれ称する。同様に、インタリーブ後のビットを８ビットずつブロックにまとめ、各ブロックを、先頭（左）から順に、ａブロック、ｂブロック、ｃブロック、ｄブロック、…とそれぞれ称する。
【００１５】
例えば、チャネルインタリーバは、インタリーブ前のＡブロックの１番目のビット、Ｂブロックの１番目のビット、Ｃブロックの１番目のビット、Ｄブロックの１番目のビットがそれぞれ、ａブロックの１乃至４番目のビットになるようにインタリーブする。チャネルインタリーバは、インタリーブ前のＡブロックの２番目のビット、Ｂブロックの２番目のビット、Ｃブロックの２番目のビット、Ｄブロックの２番目のビットがそれぞれ、ｂブロックの１乃至４番目のビットになるようにインタリーブする。
【００１６】
一方、デインタリーブは、このインタリーブの逆方向の並び替えとなる。すなわち、ａブロックの１番目の１番目乃至４番目のビットは、それぞれ、Ａブロックの１番目のビット、Ｂブロックの１番目のビット、Ｃブロックの１番目のビット、Ｄブロックの１番目のビットとなるように、デインタリーブされる。
【００１７】
これにより、図２Ｂに示されるように、インタリーブ後に１乃至６番目のビットに短いバースト誤りが発生したとしても、デインタリーブ後には、短いバースト誤りが生じた１乃至６番目の各ビットは、それぞれ、元の位置に並び替えられ、分散される。したがって、ブロック単位で復号を行う外符号に対してランダムな誤りとすることができる。
【００１８】
しかしながら、図２Ｃに示されるように、インタリーブ後に長いバースト誤りが発生した場合（図２Ｃの例の場合、３５ビット）、デインタリーブ後も長いバースト誤りのままであり、外符号に対してランダムな誤りとすることが困難となる。したがって、長いバースト誤りが発生した場合、内符号による誤り訂正に失敗する可能性が高くなるため、長いバースト誤りを内符号に対して可能な限りランダム誤りとするチャネルインタリーバが必要となる。
【００１９】
一方で、内符号に対してのみ長いバースト誤りを分散させるチャネルインタリーバも存在する。
【００２０】
図３は、内符号に対して長いバースト誤りを分散させるチャネルインタリーバによるインタリーブとそれに対応するデインタリーブの例を表している。
【００２１】
図３の例の積符号は、１乃至５番目までの内符号で構成され、各内符号は、３５ビットの符号長を有している。図３においては、上から順に、インタリーブ前の積符号、インタリーブ後の積符号、長いバースト誤りが発生した場合のインタリーブ後の積符号、長いバースト誤りが発生した場合のデインタリーブ後の積符号が示されている。
【００２２】
インタリーブ前の積符号において、１番目の内符号に示される丸印は、１番目の内符号の各ビットを表しており、２番目の内符号に示される×印は、２番目の内符号の各ビットを表している。同様に、３番目の内符号に示される上向き三角印は、３番目の内符号の各ビットを表しており、４番目の内符号に示される四角印は、４番目の内符号の各ビットを表し、５番目の内符号に示される下向き三角印は、５番目の内符号の各ビットを表している。
【００２３】
図３のチャネルインタリーバは、入力方向を表す実線矢印に示されるように、１番目の内符号の各ビットを、左から順にバッファに入力して貯め込み、次に、２番目の内符号の各ビットを、左から順にバッファに入力して貯め込んでいく。以降、同様に、チャネルインタリーバは、３乃至５番目の内符号について、各ビットを左から順にバッファに入力して貯め込んでいく。
【００２４】
そして、チャネルインタリーバは、出力方向を表す点線矢印に示される順に、各ビットを出力していく。すなわち、チャネルインタリーバは、１乃至５番目の内符号の先頭ビットを順に出力し、次に、１乃至５番目の内符号の先頭から２番目のビットを順に出力し、１乃至５番目の内符号の先頭から３番目のビットを順に出力していく。以降、同様に、１乃至５番目の内符号の先頭から４乃至３５番目のビットがそれぞれ順に出力されていく。
【００２５】
以上のようにしてインタリーブが行われ、その結果、インタリーブ後の積符号に示されるように、各ビットが並び替えられる。しかしながら、インタリーブが行われた後に、Ｅに示されるように、１番上の行の先頭のビットから３１番目のビットまでの間、長いバースト誤りが発生したとする。
【００２６】
この場合に、上述したインタリーブに対応するデインタリーブが行われると、デインタリーブ後の積符号に示されるように、１乃至５番目の内符号に対しては、バースト誤りをある程度分散させることができる。しかしながら、左から１乃至５番目の列において、上から下への行方向にバースト分散が固まってしまっている。
【００２７】
すなわち、図３のインタリーブの方法では、内符号に対してのみ長いバースト誤りをある程度分散させることができるが、上から下への行方向に復号を行う外符号に対して、バースト誤りを分散させることができない。このため、外符号に対してバースト誤りとなってしまい、外符号による誤り訂正に失敗する確率が高くなってしまう。
【００２８】
したがって、短いバースト誤りを内符号の復号前にランダム誤りとし、長いバースト誤りを内符号の復号前に可能な限りランダム誤りに変換し、内符号による誤り訂正が失敗した場合でも、外符号に対してランダム誤りとすることができるインタリーバが必要である。
【００２９】
【特許文献１】特開２００７−１４９３４０号公報
【発明の開示】
【発明が解決しようとする課題】
【００３０】
以上のように、外符号としてシンボル単位の復号を行う符号、内符号としてビット単位の復号を行う符号を用いる積符号を適用する場合、各符号の復号前に誤りが分散していることが望ましい。このため、短いバースト誤りを内符号の復号前にランダム誤りとし、長いバースト誤りを内符号の復号前に可能な限りランダム誤りに変換し、内符号による誤り訂正が失敗した場合でも、外符号に対してランダム誤りとすることができるインタリーバが必要であった。
【００３１】
しかしながら、これまでのところ、短いバースト誤りを、内符号に対してランダム誤りとし、かつ、長いバースト誤りを両方の符号に対してランダム誤りとすることができるインタリーバは提案されていなかった。
【００３２】
本発明は、このような状況に鑑みてなされたものであり、積符号の両方の符号に対してバースト誤りを分散させることができるようにするものである。
【課題を解決するための手段】
【００３３】
本発明の一側面のデータ処理装置は、外符号として、nビットを１シンボルとしたシンボル単位で誤り訂正を行う符号を用い、内符号として、ビット単位で誤り訂正を行う符号を用い、前記外符号、前記内符号の順に符号化された積符号に対して、インタリーブを行って記録順を変換するインタリーブ手段を備え、前記インタリーブ手段により前記インタリーブが行われた後の記録順において、連続するiビットには、前記内符号の同じ符号語が含まれず、かつ、連続するj（j＞i）ビットは、前記外符号の同じ符号語の複数シンボルに跨らない。
【００３４】
前記インタリーブ手段は、NA個の前記内符号を用いて、NB（NB=n）ビットを１ブロックとするNA×NCブロックの第１のインタリーブを行う第１のインタリーブ手段と、前記第１のインタリーブ手段による前記第１のインタリーブの後、ビット単位で、NA×NBビットの第２のインタリーブをNC回行う第２のインタリーブ手段とを含むことができる。
【００３５】
前記第１のインタリーブ手段は、一方の方向の順に入力したNA×NCブロックを、斜め方向の順に出力することで、前記第１のインタリーブを行うことができる。
【００３６】
前記第１のインタリーブ手段による前記第１のインタリーブは、ND×NB×NAビット単位（ND×NB≧前記内符号の情報長）のインタリーブと、それを除く部分のインタリーブとにより構成され、前記第１のインタリーブ手段は、ND×NB×NAビットの範囲に対して、一方の方向の順に入力したNA×NDブロックを、斜め方向の順に出力し、次に、（NC-ND）×NB×NAビットの範囲に対して、前記一方の方向の順に入力したNA×（NC-ND）ブロックを、他方の方向の順に出力することにより、前記第１のインタリーブを行うことができる。
【００３７】
NAとNDは、互いに素である。
【００３８】
前記第１のインタリーブ手段は、ND×NB×NAビットの範囲に対して、前記内符号をNBビット単位に分割して生成されるブロックのインデックスを順番にx=0,1,…, ND-1とし、前記内符号のインデックスを順番にy=0,1,…,NA-1とし、y番目の内符号のx番目のブロックを、(x,y)とし、kを読みだすブロックの数をカウントする変数とすると、前記内符号のインデックスの小さい方から、前記ブロックのインデックスの昇順に入力されたブロックを、
x = ( k mod ND )
y = ( k mod NA )
k=0,1,2,…,N-1
で表される(x,y)のブロックの順に出力することができる。
【００３９】
前記第２のインタリーブ手段は、前記第１のインタリーブ手段により記録順を変換されたブロックに対して、NAブロック毎に順番に処理を行い、NAブロックの範囲において、各ブロックの１ビット目を順に出力し、次に、各ブロックの２ビット目を順に出力し、その後同様の処理を繰り返し、最後に、各ブロックのNBビット目を順に出力することにより、前記第２のインタリーブを行うことができる。
【００４０】
前記インタリーブの周期は、前記積符号の１符号語分よりも小さい。
【００４１】
本発明の一側面のデータ処理方法は、外符号として、nビットを１シンボルとしたシンボル単位で誤り訂正を行う符号を用い、内符号として、ビット単位で誤り訂正を行う符号を用い、前記外符号、前記内符号の順に符号化された積符号に対して、インタリーブを行うデータ処理装置が、前記積符号を入力し、入力された積符号に対して、前記インタリーブが行われた後の記録順において、連続するiビットには、前記内符号の同じ符号語が含まれず、かつ、連続するj（j＞i）ビットは、前記外符号の同じ符号語の複数シンボルに跨らないように、前記インタリーブを行い、記録順を変換するステップを含む。
【００４２】
本発明の一側面のプログラムは、外符号として、nビットを１シンボルとしたシンボル単位で誤り訂正を行う符号を用い、内符号として、ビット単位で誤り訂正を行う符号を用い、前記外符号、前記内符号の順に符号化された積符号に対して、インタリーブを行うデータ処理装置に、前記積符号を入力し、入力された積符号に対して、前記インタリーブが行われた後の記録順において、連続するiビットには、前記内符号の同じ符号語が含まれず、かつ、連続するj（j＞i）ビットは、前記外符号の同じ符号語の複数シンボルに跨らないように、前記インタリーブを行い、記録順を変換するステップを含む処理を実行させる。
【００４３】
本発明の他の側面のデータ処理装置は、外符号として、nビットを１シンボルとしたシンボル単位で誤り訂正を行う符号を用い、内符号として、ビット単位で誤り訂正を行う符号を用い、前記外符号、前記内符号の順に符号化された積符号に対して、インタリーブが行われた後の記録順において、連続するiビットには、前記内符号の同じ符号語が含まれず、かつ、連続するj（j＞i）ビットは、前記外符号の同じ符号語の複数シンボルに跨らないように、前記インタリーブが行われたデータが記録されている記録媒体から読み出されたデータに対して、デインタリーブを行い、元の順に並び替えるデインタリーブ手段を備える。
【００４４】
前記デインタリーブ手段は、ビット単位で、NA×NBビットの第１のデインタリーブをNC回行う第１のデインタリーブ手段と、前記第１のデインタリーブ手段による前記第１のデインタリーブの後、NA個の前記内符号を用いて、NB（NB=n）ビットを１ブロックとするNA×NCブロックのデインタリーブを行う第２のデインタリーブ手段とを含むことができる。
【００４５】
前記第２のデインタリーブ手段は、斜め方向の順に入力したNA×NCブロックを、一方の方向の順に出力することで、前記第１のデインタリーブを行うことができる。
【００４６】
前記第２のデインタリーブ手段による前記第２のデインタリーブは、ND×NB×NAビット単位（ND×NB≧前記内符号の情報長）のデインタリーブと、それを除く部分のデインタリーブとにより構成され、前記第２のデインタリーブ手段は、ND×NB×NAビットの範囲に対して、斜め方向の順に入力したNA×NCブロックを、一方の方向の順に出力し、次に、（NC-ND）×NB×NAビットの範囲に対して、他方の方向の順に入力したNA×（NC-ND）ブロックを、前記一方の方向の順に出力することにより、前記第１のデインタリーブを行うことができる。
【００４７】
NAとNDは、互いに素である。
【００４８】
前記第２のデインタリーブ手段は、ND×NB×NAビットの範囲に対して、前記内符号をNBビット単位に分割して生成されるブロックのインデックスを順番にx=0,1,…, ND-1とし、前記内符号のインデックスを順番にy=0,1,…,NA-1とし、y番目の内符号のx番目のブロックを、(x,y)とし、kを入力するブロックの数をカウントする変数とすると、
x = ( k mod ND )
y = ( k mod NA )
k=0,1,2,…,N-1  
で表される(x,y)のブロックを順に入力し、それを前記内符号のインデックスの小さい方から、前記ブロックのインデックスの昇順に出力することができる。
【００４９】
前記第１のデインタリーブ手段は、NAビットを１ブロックとしたNBブロック毎に順番に処理を行い、NBブロックの範囲において、各ブロックの１ビット目を順に出力し、次に、各ブロックの２ビット目を順に出力し、その後同様の処理を繰り返し、最後に、各ブロックのNAビット目を順に出力することにより、前記第２のデインタリーブを行うことができる。
【００５０】
前記インタリーブの周期は、前記積符号の１符号語分よりも小さい。
【００５１】
本発明の他の側面のデータ処理方法は、外符号として、nビットを１シンボルとしたシンボル単位で誤り訂正を行う符号を用い、内符号として、ビット単位で誤り訂正を行う符号を用い、前記外符号、前記内符号の順に符号化された積符号に対して、インタリーブが行われたデータが記録されている記録媒体から読み出されたデータを処理するデータ処理装置が、前記記録媒体から読み出され、前記インタリーブが行われた後の記録順において、連続するiビットには、前記内符号の同じ符号語が含まれず、かつ、連続するj（j＞i）ビットは、前記外符号の同じ符号語の複数シンボルに跨らないように、前記インタリーブが行われているデータに対して、デインタリーブを行い、元の順に並び替えるステップを含む。
【００５２】
本発明の他の側面のプログラムは、外符号として、nビットを１シンボルとしたシンボル単位で誤り訂正を行う符号を用い、内符号として、ビット単位で誤り訂正を行う符号を用い、前記外符号、前記内符号の順に符号化された積符号に対して、インタリーブが行われたデータが記録されている記録媒体から読み出されたデータを処理するデータ処理装置に、前記記録媒体から読み出され、前記インタリーブが行われた後の記録順において、連続するiビットには、前記内符号の同じ符号語が含まれず、かつ、連続するj（j＞i）ビットは、前記外符号の同じ符号語の複数シンボルに跨らないように、前記インタリーブが行われているデータに対して、デインタリーブを行い、元の順に並び替えるステップを含む処理を実行させる。
【００５３】
本発明の一側面においては、外符号、内符号の順に符号化された積符号に対して、インタリーブが行われた後の記録順において、連続するiビットには、前記内符号の同じ符号語が含まれず、かつ、連続するj（j＞i）ビットは、前記外符号の同じ符号語の複数シンボルに跨らないように、前記インタリーブが行われ、記録順が変換される。
【００５４】
本発明の他の側面においては、外符号、内符号の順に符号化された積符号に対して、前記インタリーブが行われた後の記録順において、連続するiビットには、前記内符号の同じ符号語が含まれず、かつ、連続するj（j＞i）ビットは、前記外符号の同じ符号語の複数シンボルに跨らないように、前記インタリーブが行われているデータに対して、デインタリーブが行われ、元の順に並び替えられる。
【発明の効果】
【００５５】
本発明の一側面によれば、積符号の記録順を変換することができる。また、本発明の一側面によれば、積符号の両方の符号に対してバースト誤りを分散させることができる。
【００５６】
本発明の他の側面によれば、記録順を変換した積符号を元の順に戻すことができる。また、本発明の他の側面によれば、積符号の両方の符号に対してバースト誤りを分散させることができる。
【発明を実施するための最良の形態】
【００５７】
［記録再生装置の構成例］
図４は、本発明を適用したデータ処理装置としての記録再生装置の実施の形態の構成例を示すブロック図である。この記録再生装置１は、前段から入力されたデータを、予め変調符号化して、装着される記録媒体２に記録し、また記録媒体２から信号を読み出して元の信号を再生し、その結果得られるデータを後段に出力するものである。
【００５８】
図４の例において、記録再生装置１は、符号化ブロック１１、通信路１２、および復号ブロック１３により構成される。記録媒体２は、例えば、Blu-ray Disc（ソニー株式会社の登録商標）やDVD（Digital Versatile Disc）の光ディスク、光磁気ディスク、または磁気ディスクなどからなる。
【００５９】
符号化ブロック１１は、外符号符号化部２１、内符号符号化部２２、インタリーバ２３、および変調部２４により構成され、図示せぬ前段から入力されたデータに対して、所定の符号化処理を行う。
【００６０】
外符号符号化部２１は、前段から入力されたデータに対して、外符号として、nビットを１シンボルとしたシンボル単位で復号を行う誤り訂正符号を用いて、外符号の符号化を行い、そのデータを、内符号符号化部２２に出力する。外符号としては、例えば、シンボル単位の復号を行う誤り訂正符号である、RS（Reed-Solomon）符号が用いられる。kシンボルをnシンボルに符号化するRS(n,k)符号(n:符号長,k:情報長)を用いることで、限界距離復号によって訂正数(n-k)/2シンボルまでの誤り訂正が可能である。
【００６１】
内符号符号化部２２は、外符号符号化部２１からのデータに対して、内符号として、ビット単位で復号を行う誤り訂正符号を用いて、内符号の符号化を行う。内符号としては、例えば、ビット単位で復号を行う誤り訂正符号である、ターボ符号やLDPC(Low Density Parity Check)符号などが用いられる。これらの符号を用いることにより、大きな符号化利得を得ることができ、高品質な伝送が可能となる。内符号符号化部２２は、外符号符号化部２１により符号化された後、内符号符号化部２２により符号化された符号である積符号を、インタリーバ２３に出力する。
【００６２】
インタリーバ２３は、内符号符号化部２２からの積符号に対して、インタリーブ（並べ替え）を行って、記録順を変換し、インタリーブ後のデータを、変調部２４に出力する。インタリーバ２３は、インタリーブ後のデータにおいて、連続するiビットには、内符号の同じ符号語が含まれず、かつ、連続するj（j＞i）ビットは、外符号の同じ符号語の複数シンボルに跨らないように、記録順を変換する。また、インタリーバ２３によるインタリーブの周期は、積符号の１符号語分よりも小さい。
【００６３】
変調部２４は、インタリーバ２３により記録順が変換されたデータに所定の変調を施し、その結果得られる信号を、通信路１２に出力する。
【００６４】
通信路１２は、記録再生部３１および等化部３２により構成され、例えば、PR2 (Partial Response class - 2：パーシャルレスポンスクラス２)の記録再生チャネルでの記録再生処理を行う。記録再生部３１は、符号化ブロック１１から入力された信号を、例えば、NRZI(non return to zero Inverted)符号化し、NRZI符号化された信号を装着された記録媒体２に、例えば、マークエッジ記録（Mark Edge Recording）方法を用いて記録する。
【００６５】
また、記録再生部３１は、記録媒体２に記録されている符号化信号をPR2チャネルで読み出して、読み出された信号を、等化部３２に供給する。等化部３２は、供給された信号に対して、所定の目標等化特性となるように、波形干渉を利用したPR等化を施して、復号ブロック１３に供給する。
【００６６】
復号ブロック１３は、復調部４１、デインタリーバ４２、内符号復号部４３、および外符号復号部４４により構成され、通信路１２からの信号を復号処理する。
【００６７】
復調部４１は、通信路１２からの信号に対して、変調部２４により施された変調に対応する復調を行い、復調されたデータをデインタリーバ４２に出力する。
【００６８】
デインタリーバ４２は、復調部４１からのデータに対して、インタリーバ２３のインタリーブと逆方向にデインタリーブを行って、インタリーブ２３により変換された記録順を元の順に戻し、デインタリーブ後のデータである積符号を、内符号復号部４３に出力する。
【００６９】
内符号復号部４３は、デインタリーバ４２からの積符号に対して、内符号符号化部２２による符号化に対応する内符号の復号を行い、復号したデータを、外符号復号部４４に出力する。外符号復号部４４は、内符号復号部４３からのデータに対して、外符号符号化部２１による符号化に対応する外符号の復号を行い、復号したデータを、図示せぬ後段に出力する。
【００７０】
［インタリーバの構成例］
図５は、図４のインタリーバの構成例を表している。
【００７１】
図５の例において、インタリーバ２３は、２段階でインタリーブを行う。すなわち、インタリーバ２３は、ブロック単位で、１段階目のインタリーブを行うブロック単位インタリーバ５１、および、ビット単位で、２段階目のインタリーブを行うビット単位インタリーバ５２により構成されている。
【００７２】
ブロック単位インタリーバ５１は、データを、NBビット単位で処理する。言い換えると、ブロック単位インタリーバ５１においては、NBビットを１ブロックとして、ブロック単位で処理が行われる。ブロック単位インタリーバ５１は、内蔵するRAMに、内符号NA個分のビット、すなわち、NA×NB×NCビットを貯め込む。なお、NCは、内符号１個分のビット数／NBビット、つまり、内符号１個分におけるブロック数を表す。
【００７３】
ブロック単位インタリーバ５１による１段階目のインタリーブは、ND×n×NAビット単位のインタリーブＡと、残りの（（NA×NB×NC）−（NA×n×ND））ビット単位のインタリーブＢから構成される。
【００７４】
ここで、nは、外符号の１シンボルを表すビット数であり、ブロック単位インタリーバ５１の１ブロックのビット数NBと等しい。また、NAとNDは互いに素であり、ND×n、すなわちND×NBは、内符号の情報長以上である必要がある。
【００７５】
ブロック単位インタリーバ５１は、まず、ND×NB×NAビットに対して、インタリーブＡを行い、(NC−ND)×NB×NAビットに対して、インタリーブＢを行い、インタリーブ後のデータD５１を、ビット単位インタリーバ５２に渡す。すなわち、ブロック単位インタリーバ５１は、ビット単位インタリーバ５２に、インタリーブＡが行われたブロックを先に渡し、次に、インタリーブＢが行われたブロックを渡す。
【００７６】
ビット単位インタリーバ５２は、内蔵するRAM を用いて、NA×NBビットの２段階目のインタリーブをビット単位でNC回行う。ビット単位インタリーバ５２によりインタリーブが行われたデータは、変調部２４に出力される。
【００７７】
［記録再生装置の記録処理］
次に、図６のフローチャートを参照して、記録再生装置１の記録処理について説明する。
【００７８】
図示せぬ前段から、外符号符号化部２１にデータが入力される。外符号符号化部２１は、ステップＳ１１において、入力されたデータに対して、外符号として、nビットを１シンボルとしたシンボル単位で復号を行う誤り訂正符号を用いて、外符号の符号化を行う。外符号の符号化が行われたデータは、内符号符号化部２２に出力される。
【００７９】
ステップＳ１２において、内符号符号化部２２は、外符号符号化部２１からのデータに対して、内符号として、ビット単位で復号を行う誤り訂正符号を用いて、内符号の符号化を行う。内符号符号化部２２は、外符号符号化部２１により符号化された後、内符号符号化部２２により符号化された符号である積符号を、インタリーバ２３に出力する。
【００８０】
ステップＳ１３において、ブロック単位インタリーバ５１は、内符号符号化部２２からの積符号に対して、ブロック単位での１段階目のインタリーブを行う。このブロック単位インタリーバ５１によるインタリーブ処理の詳細は、図７を参照して後述する。
【００８１】
ブロック単位インタリーバ５１によるインタリーブ後のデータD５１は、ビット単位インタリーバ５２に出力される。
【００８２】
ステップＳ１４において、ビット単位インタリーバ５２は、ブロック単位インタリーバ５１によりインタリーブが行われたデータに対して、さらに、ビット単位での２段階目のインタリーブを行う。このビット単位インタリーバ５２によるインタリーブ処理の詳細は、図９を参照して後述する。
【００８３】
ステップＳ１３およびＳ１４の順にインタリーブが行われた後のデータは、連続するｉビットには、内符号の同じ符号語が含まれず、かつ、連続するj（j＞i）ビットは、外符号の同じ符号語の複数シンボルに跨らない記録順に並び替えられている。ビット単位インタリーバ５２によりインタリーブが行われたデータは、変調部２４に出力される。
【００８４】
ステップＳ１５において、変調部２４は、ブロック単位インタリーバ５１およびビット単位インタリーバ５２により記録順が変換されたデータに所定の変調を施し、その結果得られる信号を、記録再生部３１に出力する。
【００８５】
ステップＳ１６において、記録再生部３１は、変調部２４から入力された信号を、NRZI符号化し、NRZI符号化された信号を装着された記録媒体２に記録する。
【００８６】
以上により、記録媒体２には、連続するiビットには、内符号の同じ符号語が含まれず、かつ、連続するj（j＞i）ビットは、外符号の同じ符号語の複数シンボルに跨らないように変換された記録順でデータが記録される。
【００８７】
［ブロック単位インタリーバの詳細］
図７は、ブロック単位インタリーバ５１による１段階目のインタリーブの例を示す図である。図７の例においては、NA＝５，NB＝n＝４，NC＝１０，ND＝７の場合のRAMへの入力順が付された積符号と、その出力順が示されている。
【００８８】
図７の例の場合、積符号は、列方向（図中左から右の方向）にNC=１０ブロックの外符号で構成されており、行方向（図中上から下の方向）にNA＝５個の内符号で構成されている。１番目の内符号に示される丸印は、１番目の内符号の各ビットを表しており、２番目の内符号に示される×印は、２番目の内符号の各ビットを表している。同様に、３番目の内符号に示される上向き三角印は、３番目の内符号の各ビットを表しており、４番目の内符号に示される四角印は、４番目の内符号の各ビットを表し、５番目の内符号に示される下向き三角印は、５番目の内符号の各ビットを表している。
【００８９】
すなわち、１個の内符号の符号長は、４０ビットであり、各内符号のNB＝４ビットを１ブロックとしたNC＝１０ブロックからなる。各ブロックに示される数字は、RAMへの入力順を表している。また、各内符号を構成するNC＝１０ブロックの外符号のうち、ND＝７ブロック分はユーザデータ部分であり、Ｐに示されるNC−ND（＝３）ブロックは、内符号のパリティ部分である。
【００９０】
ブロック単位インタリーバ５１は、図７の積符号のうち、ユーザデータ部分であるND×NB×NA（＝７×４×５）ビットに対して、インタリーブＡを行う。
【００９１】
インタリーブＡにおいて、データは、入力順に示されるように、NBビット毎（＝ブロック毎）に、一方の方向としての列方向の順に入力される。すなわち、１乃至５０の数字が付されたブロックがその数字の昇順に入力される。そして、例えば、入力順が１番目のブロックの次には、１２番目のブロックが読み出されるというように、RAMのデータは、図中、右斜め下方向の順に読み出される。なお、読み出される方向は、斜め方向であればよく、右斜め下方向に限らない。
【００９２】
より具体的には、内符号をNBビット単位に分割して生成されるブロックのインデックスを順番にx=0,1,…, ND-1とし、内符号のインデックスを順番にy=0,1,…,NA-1とし、y番目の内符号のx番目のブロックを、(x,y)とする。例えば、入力順が１番目のブロックは、(0,0)で表される。この場合、インタリーブＡの読み出し順は、式（１）で表される(x,y)のブロックの順となる。
【００９３】
x = ( k mod ND )
y = ( k mod NA )
k=0,1,2,…,N-1                                                  ・・・（１）
【００９４】
ここで、A mod B は、AをBで割った余りを表し、kは、読みだすブロックの数をカウントする変数であり、Nは、読みだされるブロック数NA×NDである。
【００９５】
このインタリーブＡにより、ブロック単位インタリーバ５１からは、ユーザデータ部分であるND×NB×NAビットの範囲のブロックが、出力順に示されるように、次に示される順番で出力される。
【００９６】
まず、１番目の内符号の入力順１番目のブロック(0,0)が１番目に出力され、２番目の内符号の入力順１２番目のブロック(1,1)が２番目に出力され、３番目の内符号の入力順２３番目のブロック(2,2)が３番目に出力される。４番目の内符号の入力順３４番目のブロック(3,3)が４番目に出力され、５番目の内符号の入力順４５番目のブロック(4,4)が５番目に出力される。
【００９７】
その後、１番目の内符号の入力順６番目のブロック(5,0)が６番目に出力され、２番目の内符号の入力順１７番目のブロック(6,1)が７番目に出力され、３番目の内符号の入力順２１番目のブロック(0,2)が８番目に出力される。４番目の内符号の入力順３２番目のブロック(1,3)が９番目に出力され、５番目の内符号の入力順４３番目のブロック(2,4)が１０番目に出力される。次いで、１番目の内符号の入力順４番目のブロック(3,0)が１１番目に出力され、２番目の内符号の入力順１５番目のブロック(4,1)が１２番目に出力され、３番目の内符号の入力順２６番目のブロック(5,2)が１３番目に出力される。４番目の内符号の入力順３７番目のブロック(6,3)が１４番目に出力され、５番目の内符号の入力順４１番目のブロック(0,4)が１５番目に出力される。
【００９８】
さらに、１番目の内符号の入力順２番目のブロック(1,0)が１６番目に出力され、２番目の内符号の入力順１３番目のブロック(2,1)が１７番目に出力され、３番目の内符号の入力順２４番目のブロック(3,2)が１８番目に出力される。４番目の内符号の入力順３５番目のブロック(4,3)が１９番目に出力され、５番目の内符号の入力順４６番目のブロック(5,4)が２０番目に出力される。次いで、１番目の内符号の入力順７番目のブロック(6,0)が２１番目に出力され、２番目の内符号の入力順１１番目のブロック(0,1)が２２番目に出力され、３番目の内符号の入力順２２番目のブロック(1,2)が２３番目に出力される。４番目の内符号の入力順３３番目のブロック(2,3)が２４番目に出力され、５番目の内符号の入力順４４番目のブロック(3,4)が２５番目に出力される。
【００９９】
その後、１番目の内符号の入力順５番目のブロック(4,0)が２６番目に出力され、２番目の内符号の入力順１６番目のブロック(5,1)が２７番目に出力され、３番目の内符号の入力順２７番目のブロック(6,2)が２８番目に出力される。４番目の内符号の入力順３１番目のブロック(0,3)が２９番目に出力され、５番目の内符号の入力順４２番目のブロック(1,4)が３０番目に出力される。次いで、１番目の内符号の入力順３番目のブロック(2,0)が３１番目に出力され、２番目の内符号の入力順１４番目のブロック(3,1)が３２番目に出力され、３番目の内符号の入力順２５番目のブロック(4,2)が３３番目に出力される。４番目の内符号の入力順３６番目のブロック(5,3)が３４番目に出力され、５番目の内符号の入力順４７番目のブロック(6,4)が３５番目に出力される。
【０１００】
以上の順で読み出すことにより、読み出されたデータにおいては、出力順に見たときに連続するi＝NA＝５個のブロックに内符号の同じ符号語に属するブロックが二度現れないようにデータ系列が入れ替えられる。同時に、連続するNA×NEブロックに外符号の同じ符号語の異なるシンボルが現れないようにデータ系列が入れ替えられる。ここで、NEは、NA×NE≦NDを満たす最大の整数である。すなわち、図６の例の場合、NE＝１であり、連続するNA×NE＝５ブロックに外符号の同じ符号語の異なるシンボルが現れないようにデータ系列が入れ替えられる。
【０１０１】
これにより、インタリーブＡが対象とする領域においては、短いバースト誤りが発生しても、短いバースト誤りを外符号、内符号の両方に対してランダム誤りとすることができる。一方、長いバースト誤りが発生した場合も、内符号に対してある程度誤りを分散させ、同時に外符号に対してバースト誤りとすることができる。この効果の詳細は、図１２乃至図１７を参照して後述する。
【０１０２】
なお、ND個のブロックを複数回（例えば、NA回）繰り返し、NA個の内符号を複数回（例えば、ND回）繰り返して生成される範囲を想定する。インタリーブＡは、この範囲において、出力するブロックの斜め下に位置するブロックが次に出力するブロックとなるように、NA×ND個のブロックを順に出力することにより実現されるともいえる。
【０１０３】
次に、ブロック単位インタリーバ５１は、図７の積符号のうち、ユーザデータ部分の除いた部分、すなわち、Ｐに示される内符号のパリティ部分である（NC−ND）×NB×NA（＝２×４×５）ビットに対してインタリーブＢを行う。
【０１０４】
インタリーブＢにおいて、データは、NBビット毎（＝ブロック毎）に、一方の方向としての列方向（図中横方向）の順にRAMに入力され、入力されたRAMのデータは、他方の方向としての行方向（図中縦方向）の順に読み出される。
【０１０５】
このインタリーブＢにより、ブロック単位インタリーバ５１からは、ユーザデータ部分のブロックの後に、内符号のパリティ部分である（NC−ND）×NB×NAビットの範囲のブロックが、出力順に示されるように、以下に示す順番で出力される。
【０１０６】
まず、１番目の内符号の入力順８番目のブロックが３６番目に出力され、２番目の内符号の入力順１８番目のブロックが３７番目に出力され、３番目の内符号の入力順２８番目のブロックが３８番目に出力される。４番目の内符号の入力順３８番目のブロックが３９番目に出力され、５番目の内符号の入力順４８番目のブロックが４０番目に出力される。
【０１０７】
また、１番目の内符号の入力順９番目のブロックが４１番目に出力され、２番目の内符号の入力順１９番目のブロックが４２番目に出力され、３番目の内符号の入力順２９番目のブロックが４３番目に出力される。４番目の内符号の入力順３９番目のブロックが４４番目に出力され、５番目の内符号の入力順４９番目のブロックが４５番目に出力される。次いで、１番目の内符号の入力順１０番目のブロックが４６番目に出力され、２番目の内符号の入力順２０番目のブロックが４７番目に出力され、３番目の内符号の入力順３０番目のブロックが４８番目に出力される。４番目の内符号の入力順４０番目のブロックが４９番目に出力され、５番目の内符号の入力順５０番目のブロックが５０番目に出力される。
【０１０８】
以上の順で読み出すことにより、読み出されたデータにおいては、出力順に見たときに連続するNA＝５個のブロックに同じ内符号の符号語に属するブロックが二度現れないようにデータ系列が入れ替えられる。
【０１０９】
これにより、インタリーブＢが対象とする領域においては、短いバースト誤りが発生しても、短いバースト誤りを外符号、内符号の両方に対してランダム誤りとすることができる。
【０１１０】
なお、このインタリーブＢが対象とする領域は、インタリーブＡが対象とする領域と違って、外符号から見ると符号語ではない部分なので、内符号の復号時に短いバースト誤りがランダム誤りとなればよい。
【０１１１】
また、内符号をNBビット単位に分割して生成されるブロックのインデックスを順番にx=0,1,…, NC-1とし、内符号のインデックスを順番にy=0,1,…,NA-1とし、y番目の内符号のx番目のブロックを、(x,y)とする。
【０１１２】
この場合、ブロック単位インタリーバ５１は、（NC−ND）×NB×NAビットの範囲に対して、インタリーブ前の信号
(ND,0),(ND+1,0),…,(NC-1,0),
(ND,1),(ND+1,1),…,(NC-1,1),
…,
(ND,NA-1),(1,NA-1),…,(NC-1,NA-1)
に対して、インタリーブ後の信号が
(ND,0),(ND,1),…,(ND,NA-1),
(ND+1,0),(ND+1,1),…,(ND+1,NA-1),
…,
(NC-1,0),(NC-1,1),…,(NC-1,NA-1)
となる変換を行うことで、インタリーブＢを実現するともいえる。
【０１１３】
さらに言い換えると、インタリーブＢは、（NC−ND）×NB×NAビットの範囲に対して、各内符号におけるND＋１番目のブロックを順に出力し、各内符号におけるND＋２番目のブロックを順に出力し、その後同様に、各内符号におけるNC番目のブロックを順に出力することにより実現されるともいえる。
【０１１４】
［ブロック単位インタリーバの他の説明］
図８は、ブロック単位インタリーバ５１による１段階目のインタリーブの他の例を示す図である。図８の例においては、NA＝５，NB＝n＝４，NC＝７，ND＝７の場合のRAMへの入力順が付された積符号と、その出力順が示されている。
【０１１５】
図８の例においては、インタリーブＢで処理される部分がないことが図７の例と異なるだけであり、その他の基本的なインタリーブＡの処理は、図７の例の場合と同様である。すなわち、図８の例においては、図示せぬ内符号のパリティ部分に対しても、ユーザデータ部分と同じインタリーブＡが行われる。なお、図８の例の場合、ND＝NCであり、NAとNCが互いに素であるという条件が必要となる。
【０１１６】
すなわち、図８の例の場合、ブロック単位インタリーバ５１は、NC×NB×NA（＝７×４×５）ビットに対して、データを、NBビット毎（＝ブロック毎）に列方向の順に入力する。そして、ブロック単位インタリーバ５１は、入力順が１番目のブロックの次には、９番目のブロックが読み出されるというように、RAMのデータを、図７のND×NB×NAビットの場合と同じ順番で、右斜め下方向の順に読み出す。
【０１１７】
このインタリーブにより、ブロック単位インタリーバ５１からは、NC×NB×NAビットの範囲のブロックが、出力順に示されるように以下に示す順番で出力される。
【０１１８】
まず、１番目の内符号の入力順１番目のブロック(0,0)が１番目に出力され、２番目の内符号の入力順９番目のブロック(1,1)が２番目に出力され、３番目の内符号の入力順１７番目のブロック(2,2)が３番目に出力される。４番目の内符号の入力順２５番目のブロック(3,3)が４番目に出力され、５番目の内符号の入力順３３番目のブロック(4,4)が５番目に出力される。
【０１１９】
また、１番目の内符号の入力順６番目のブロック(5,0)が６番目に出力され、２番目の内符号の入力順１４番目のブロック(6,1)が７番目に出力され、３番目の内符号の入力順１５番目のブロック(0,2)が８番目に出力される。４番目の内符号の入力順２３番目のブロック(1,3)が９番目に出力され、５番目の内符号の入力順３１番目のブロック(2,4)が１０番目に出力される。次いで、１番目の内符号の入力順４番目のブロック(3,0)が１１番目に出力され、２番目の内符号の入力順１２番目のブロック(4,1)が１２番目に出力され、３番目の内符号の入力順２０番目のブロック(5,2)が１３番目に出力される。４番目の内符号の入力順２８番目のブロック(6,3)が１４番目に出力され、５番目の内符号の入力順２９番目のブロック(0,4)が１５番目に出力される。
【０１２０】
さらに、１番目の内符号の入力順２番目のブロック(1,0)が１６番目に出力され、２番目の内符号の入力順１０番目のブロック(2,1)が１７番目に出力され、３番目の内符号の入力順１８番目のブロック(3,2)が１８番目に出力される。４番目の内符号の入力順２６番目のブロック(4,3)が１９番目に出力され、５番目の内符号の入力順３４番目のブロック(5,4)が２０番目に出力される。次いで、１番目の内符号の入力順７番目のブロック(6,0)が２１番目に出力され、２番目の内符号の入力順８番目のブロック(0,1)が２２番目に出力され、３番目の内符号の入力順１６番目のブロック(1,2)が２３番目に出力される。４番目の内符号の入力順２４番目のブロック(2,3)が２４番目に出力され、５番目の内符号の入力順３２番目のブロック(3,4)が２５番目に出力される。
【０１２１】
また、１番目の内符号の入力順５番目のブロック(4,0)が２６番目に出力され、２番目の内符号の入力順１６番目のブロック(5,1)が２７番目に出力され、３番目の内符号の入力順２１番目のブロック(6,2)が２８番目に出力される。４番目の内符号の入力順２２番目のブロック(0,3)が２９番目に出力され、５番目の内符号の入力順３０番目のブロック(1,4)が３０番目に出力される。次いで、１番目の内符号の入力順３番目のブロック(2,0)が３１番目に出力され、２番目の内符号の入力順１１番目のブロック(3,1)が３２番目に出力され、３番目の内符号の入力順１９番目のブロック(4,2)が３３番目に出力される。４番目の内符号の入力順２７番目のブロック(5,3)が３４番目に出力され、５番目の内符号の入力順３５番目のブロック(6,4)が３５番目に出力される。
【０１２２】
以上のように、ブロック単位インタリーバ５１による１段階目のインタリーブは、インタリーブＡのみで構成することもできる。
【０１２３】
［ビット単位インタリーバの説明］
図９は、ビット単位インタリーバ５２による２段階目のインタリーブの例を示す図である。図９の例においては、NA＝５，NB＝４の場合のRAMへの入力順と、出力順が示されている。
【０１２４】
ビット単位インタリーバ５２は、ブロック単位インタリーバ５１により順序が変換されたブロック（NBビット）をNA個集めたNAブロック毎に、NC回、各ビットを入れ替えるビット単位のインタリーブを行う。
【０１２５】
すなわち、ビット単位インタリーバ５２は、４ビットからなるブロックを５個毎にインタリーブを行う。図７においてブロックに付された番号（ブロック単位インタリーバ５１への入力順番号）を用いて説明すると、ビット単位インタリーバ５２は、１番目のブロックの各ビット（丸印）を順に入力し、１２番目のブロックの各ビット（×印）を順に入力する。次に、ビット単位インタリーバ５２は、２３番目のブロックの各ビット（上向き三角印）を順に入力し、３４番目のブロックの各ビット（四角印）を順に入力し、４５番目のブロックの各ビット（下向き三角印）を順に入力する。
【０１２６】
そして、ビット単位インタリーバ５２は、各ブロックの１番目のビットを順に出力し、各ブロックの２番目のビットを順に出力する。次に、ビット単位インタリーバ５２は、各ブロックの３番目のビットを順に出力し、各ブロックの４番目のビットを順に出力し、各ブロックの５番目のビットを順に出力することで、インタリーブを行う。
【０１２７】
すなわち、図９の出力順に示されるように、まず、１番目のブロックの１番目のビット、１２番目のブロックの１番目のビット、２３番目のブロックの１番目のビット、３４番目のブロックの１番目のビット、４５番目のブロックの１番目のビットが順に出力される。次に、１番目のブロックの２番目のビット、１２番目のブロックの２番目のビット、２３番目のブロックの２番目のビット、３４番目のブロックの２番目のビット、４５番目のブロックの２番目のビットが順に出力される。以降、同様に、各ブロックの３乃至４番目のビットが順に出力される。
【０１２８】
その後、上述したブロック以外のブロックに対して、このような処理が、NC−１回繰り返されて、ビット単位インタリーバ５２によるインタリーブは終了される。
【０１２９】
以上のように、記録再生装置１においては、図７を参照して上述したブロック単位インタリーバ５１によるインタリーブと図９を参照して上述したインタリーブビット単位インタリーバ５２によるインタリーブが行われる。
【０１３０】
これにより、外符号、内符号の順に符号化された積符号を、連続するi(=NA)ビットに、内符号の同じ符号語が含まれておらず、かつ、連続するj（j=NA×NB×NE＞i）ビットが、外符号の同じ符号語の複数シンボルに跨っていない順のデータに並び替えることができる。
【０１３１】
［デインタリーバの構成例］
図１０は、図４のデインタリーバの構成例を表している。
【０１３２】
図１０の例において、デインタリーバ４２は、図５のインタリーバ２３とは逆の構成の２段階でデインタリーブを行う。すなわち、デインタリーバ４２は、ビット単位で、１段階目のデインタリーブを行うビット単位デインタリーバ７１、および、ブロック単位で、２段階目のデインタリーブを行うブロック単位デインタリーバ７２により構成される。なお、ビット単位デインタリーバ７１による１段目のデインタリーブは、２段階目のインタリーブに対応している。また、ブロック単位デインタリーバ７２による２段階目のデインタリーブは、１段階目のインタリーブに対応している。
【０１３３】
ビット単位デインタリーバ７１は、図９を参照して上述した２段階目のインタリーブと逆方向にNA×NBビットのデインタリーブをNC回行う。すなわち、再び、図９を参照して、説明するに、ビット単位デインタリーバ７１のRAMには、図９の出力順に各ビットが入力される。そして、RAMから、NA（＝５）ビットからなるNB（＝４）個の各ブロックの１番目のビットが順に出力され、各ブロックの２番目のビットが順に出力される。次に、各ブロックの３番目のビット、各ブロックの４番目のビット、各ブロックの５番目のビットが順に出力される。
【０１３４】
その結果、データの並び順は、図９の入力順に示されるように、それぞれ４ビットからなる１番目、１２番目、２３番目、３４番目、４５番目のブロックの順に変換され、並び順が変換されたデータD７１が、ブロック単位デインタリーバ７２に渡される。
【０１３５】
その後、上述したブロック以外のブロックに対して、このような処理が、NC−１回繰り返されて、ビット単位デインタリーバ７１によるデインタリーブは終了される。
【０１３６】
ブロック単位デインタリーバ７２は、NBビットを１ブロックとしたブロック単位のデインタリーブを行う。ブロック単位デインタリーバ７２によるデインタリーブも、図７を参照して上述した１段階目のインタリーブに対応して、ND×NB×NAビット単位のデインタリーブＡと、残りの(NC−ND)×NB×NAビット単位のデインタリーブＢから構成される。
【０１３７】
ブロック単位デインタリーバ７２は、まず、デインタリーブＡを行い、デインタリーブＢを行い、デインタリーブ後のデータである積符号を、内符号復号部４３に渡す。すなわち、ブロック単位デインタリーバ７２は、内符号復号部４３に、デインタリーブＡが行われたブロックを先に渡し、次に、デインタリーブＢが行われたブロックを渡す。
【０１３８】
デインタリーブＡにおいては、図７を参照して上述したインタリーブＡと逆方向の並び替えが行われる。すなわち、デインタリーブＡにおいて、データは、インタリーブＡの出力順である、右斜め下方向の順に入力される。より具体的には、データは、式（１）で表される(x,y)のブロックの順に入力される。そして、RAMのデータは、インタリーブＡの入力順である、列方向の順に出力される。
【０１３９】
デインタリーブＢにおいては、図７を参照して上述したインタリーブＢと逆方向の並び替えが行われる。すなわち、デインタリーブＢにおいて、データは、インタリーブＢの出力順である、行方向の順に入力され、入力されたRAMのデータは、インタリーブＢの入力順である、列方向の順に読み出される。
【０１４０】
なお、ブロック単位インタリーバ５１が、図８を参照して上述したインタリーブＡのみ行う場合、それに対応して、ブロック単位デインタリーバ７２においても、デインタリーバＡのみが行われる。
【０１４１】
［記録再生装置の再生処理］
次に、図１１のフローチャートを参照して、記録再生装置１の再生処理について説明する。記録媒体２には、連続するiビットには、内符号の同じ符号語が含まれず、かつ、連続するj（j＞i）ビットは、外符号の同じ符号語の複数シンボルに跨らないように変換された記録順で符号化信号が記録されている。
【０１４２】
ステップＳ３１において、記録再生部３１は、記録媒体２に記録されている符号化信号をPR2チャネルで読み出して、読み出された信号を、等化部３２に供給する。ステップＳ３２において、等化部３２は、供給された信号に対して、所定の目標等化特性となるように、波形干渉を利用したPR等化を施して、復号ブロック１３に供給する。
【０１４３】
ステップＳ３３において、復調部４１は、等化部３２からの信号に対して、変調部２４により施された変調に対応する復調を行い、復調されたデータをビット単位デインタリーバ７１に出力する。
【０１４４】
ステップＳ３４において、ビット単位デインタリーバ７１は、２段階目のインタリーブに対応する、ビット単位で１段階目のデインタリーブを行う。すなわち、ビット単位デインタリーバ７１は、図９を参照して上述した２段階目のインタリーブと逆方向に、図１０を参照して詳しく上述したNA×NBビットのデインタリーブをNC回行う。
【０１４５】
ビット単位デインタリーバ７１によるデインタリーブ後のデータD７１は、ブロック単位デインタリーバ７２に出力される。
【０１４６】
ステップＳ３５において、ブロック単位デインタリーバ７２は、１段階目のインタリーブに対応する、ブロック単位で２段階目のデインタリーブを行う。
【０１４７】
ブロック単位デインタリーバ７２は、まず、図１０を参照して詳しく上述したように、デインタリーブＡを行い、デインタリーブＢを行い、デインタリーブ後のデータである積符号を、内符号復号部４３に渡す。すなわち、ブロック単位デインタリーバ７２は、内符号復号部４３に、デインタリーブＡが行われたブロックを先に渡し、次に、デインタリーブＢが行われたブロックを渡す。
【０１４８】
ステップＳ３６において、内符号復号部４３は、ブロック単位デインタリーバ７２からの積符号に対して、内符号符号化部２２による符号化に対応する内符号の復号を行い、復号したデータを、外符号復号部４４に出力する。
【０１４９】
ステップＳ３７において、外符号復号部４４は、内符号復号部４３からのデータに対して、外符号符号化部２１による符号化に対応する外符号の復号を行い、復号したデータを、図示せぬ後段に出力する。
【０１５０】
以上のようにして、記録媒体２に記録されたデータが再生される。
【０１５１】
［効果の具体例］
次に、図１２乃至図１４を参照して、記録再生装置１のインタリーブおよびデインタリーブによる効果について説明する。図１２乃至図１４においては、NA＝５，NB＝n＝４，NC＝１３，ND＝１１の場合の例が示されている。
【０１５２】
図１２は、列方向の順にブロック単位インタリーバ５１のRAMに入力された積符号と、その積符号に対してインタリーブが行われた結果（すなわち、記録媒体２への記録順）のデータを示す図である。図１３は、図１２のインタリーブが行われ、記録媒体２に記録され、記録媒体２から読み出された後に、短いバースト誤りが発生したデータと、そのデータに対して、デインタリーブが行われ、元の順に並び替えられた結果の積符号を示す図である。図１４は、図１２のインタリーブが行われ、記録媒体２に記録され、記録媒体２から読み出された後に、長いバースト誤りが発生したデータと、そのデータに対して、デインタリーブが行われ、元の順に並び替えられた結果の積符号を示す図である。
【０１５３】
図１２の例の場合、積符号は、列方向（図中横方向）にNC＝１３ブロックの外符号で構成されており、行方向にNA＝５個の内符号で構成されている。１番目の内符号に示される丸印は、１番目の内符号の各ビットを表しており、２番目の内符号に示される×印は、２番目の内符号の各ビットを表している。同様に、３番目の内符号に示される上向き三角印は、３番目の内符号の各ビットを表しており、４番目の内符号に示される四角印は、４番目の内符号の各ビットを表し、５番目の内符号に示される下向き三角印は、５番目の内符号の各ビットを表している。
【０１５４】
すなわち、１個の内符号の符号長は、５２ビットであり、各内符号のNB＝４ビットを１ブロックとしたNC＝１３ブロックからなる。また、各内符号を構成するNC＝１３ブロックの外符号のうち、ND＝１１ブロック分はユーザデータ部分であり、Ｐに示されるNC−ND（＝２）ブロックは、内符号のパリティ部である。
【０１５５】
ブロック単位インタリーバ５１は、この積符号のうち、ユーザデータ部分であるND×NB×NA（＝１１×４×５）ビットに対して、インタリーブＡを行う。インタリーブＡにおいて、データは、NB＝４ビット毎（＝ブロック毎）に、一方の方向としての列方向の順にRAMに入力される。そして、RAMに入力されたデータは、図中右斜め下方向の順に読み出される。
【０１５６】
次に、ブロック単位インタリーバ５１は、この積符号のうち、ユーザデータ部分の除いた部分、すなわち、Ｐに示される内符号のパリティ部分である(NC−ND)×NB×NA（＝２×４×５）ビットに対してインタリーブＢを行う。インタリーブＢにおいて、データは、NB＝４ビット毎（＝ブロック毎）に、一方の方向としての列方向（図中横方向）の順にRAMに入力され、入力されたRAMのデータは、他方の方向としての行方向（図中縦方向）の順に読み出される。
【０１５７】
そして、さらに、ビット単位インタリーバ５２は、ブロック単位インタリーバ５１により順序が変換されたブロック（NB＝４ビット）をNA＝５個集めた５ブロック毎に、NC＝１３回、各ビットを入れ替えるビット単位のインタリーブを行う。すなわち、ビット単位インタリーバ５２は、ブロック単位インタリーバ５１により順序が変換されたブロックに対して、５ブロック毎に順番に処理を行い、５ブロックの範囲において、各ブロックの１ビット目を順に出力し、次に、各ブロックの２ビット目を順に出力し、その後同様の処理を繰り返し、最後に、各ブロックのNB＝４ビット目を順に出力することにより、記録順を変換する。
【０１５８】
以上のようにして、１および２段階目のインタリーブが順に行われることにより、その結果（すなわち、記録媒体２への記録順）のデータにおいては、連続するi＝NA＝５ビットに同じ内符号の符号語が二度現れないようにデータ系列が入れ替えられている。
【０１５９】
また、同時に、データのユーザデータ部分において、連続するj＝ NB×NA×NE（NEは、NA×NE≦NDを満たす最大の整数）ビットに外符号の同じ符号語の異なるシンボルが現れないようにデータ系列が入れ替えられている。すなわち、図１２の例の場合、NE＝２であり、連続するj＝ NB×NA×NE＝４×５×２＝４０ビットに外符号の同じ符号語の異なるシンボルが現れないようにデータ系列が入れ替えられている。
【０１６０】
ここで、図１２のインタリーブが行われた結果のデータに、PRMLにおけるエラー伝播などにより、図１３に示されるように、短いバースト誤りが発生したとする。例えば、図１３の例においては、インタリーブ後のデータのユーザデータ部分の４ビットに、Ｅ１に示される短いバースト誤りが発生している。また、インタリーブ後のデータの、Ｐに示される内符号のパリティ部分の５ビットに、Ｅ２に示される短いバースト誤りが発生している。
【０１６１】
このようにＥ１およびＥ２に示される短いバースト誤りが発生したデータに対して、ビット単位デインタリーバ７１は、NA×NB（＝５×４）ビットのデインタリーブをNC（＝１３）回行う。すなわち、ビット単位デインタリーバ７１は、NA＝５ビットを１ブロックとしたNB＝４ブロック毎に順番に処理を行い、NB＝４ブロックの範囲において、各ブロックの１ビット目を順に出力し、次に、各ブロックの２ビット目を順に出力し、その後同様の処理を繰り返し、最後に、各ブロックのNA＝５ビット目を順に出力することにより、データを並び替える。
【０１６２】
さらに、ブロック単位デインタリーバ７２は、ビット単位デインタリーバ７１により順序が変換されたブロックに対して、デインタリーブＡを行い、デインタリーブＢを行う。すなわち、デインタリーブＡにおいて、データは、インタリーブＡの出力順である、右斜め下方向の順に入力され、RAMのデータは、インタリーブＡの入力順である、列方向の順に出力される。また、デインタリーブＢにおいて、データは、インタリーブＢの出力順である、行方向の順に入力され、入力されたRAMのデータは、インタリーブＢの入力順である、列方向の順に読み出される。
【０１６３】
以上のデインタリーブの結果、元の順に並び替えられた積符号において、インタリーブ後のユーザデータ部分に発生したＥ１に示される短いバースト誤りは、ｅ１に示されるように、行方向に並ぶ内符号に対しても、列方向に並ぶ外符号に対しても、ランダム誤りとなる。
【０１６４】
また、内符号のパリティ部分に発生したＥ２に示される短いバースト誤りは、ｅ２に示されるように、行方向に並ぶ内符号に対してのみランダム誤りとなり、外符号に対しては、ランダム誤りとなっていない。
【０１６５】
ただし、この内符号のパリティ部分は、図７を参照して上述したように、外符号による復号が行われない部分であるので、必ずしもランダム誤りとする必要はない。すなわち、インタリーブＡが対象とするNA×ND×NBビットは、外符号による復号を行うビットを含むが、残りのビット（インタリーブＢが対象とする（NC−ND）×NA×NBビット）は外符号による復号を行わない。
【０１６６】
したがって、実際には、記録順のデータにおいて、連続するjビットが外符号の同じ符号語の複数シンボルに跨らないというのは、最初のNA×ND×NBビットにのみ当てはまる。しかしながら、残りのビットはそもそも外符号による復号が行われないので、全体として、連続するjビットが外符号の同じ符号語の複数シンボルに跨らないことと同意となる。
【０１６７】
一方、図１２のインタリーブが行われた結果のデータに、ディスクの傷やゴミ等によって、図１４に示されるように、長いバースト誤りが発生したとする。
【０１６８】
図１４の例においては、インタリーブ後のデータのユーザデータ部分の３８ビットに、Ｅ３に示される長いバースト誤りが発生している。
【０１６９】
このようにＥ３に示される長いバースト誤りが発生したデータに対して、ビット単位デインタリーバ７１は、NA×NBビットのデインタリーブをNC回行う。さらに、ブロック単位デインタリーバ７２は、ビット単位デインタリーバ７１により順序が変換されたブロックに対して、デインタリーブＡを行い、デインタリーブＢを行う。なお、これらのデインタリーブの詳細は、図１３を参照して上述したデインタリーブと基本的に同様の処理を行うため繰り返しになるので省略する。
【０１７０】
以上のデインタリーブの結果、元の順に並び替えられた積符号において、インタリーブ後のユーザデータ部分に発生したＥ３に示される長いバースト誤りは、ｅ３に示されるように、行方向に並ぶ内符号に対しては、ある程度分散され、列方向に並ぶ外符号に対しては、１シンボル分の誤りとなる。すなわち、長いバースト誤りは、外符号に対しては、ランダム誤りとすることができる。
【０１７１】
したがって、長いバースト誤りにより内符号の復号が失敗した場合でも、外符号はランダム誤りとして効果的に復号を行うことができる。
【０１７２】
次に、図１５乃至図１７を参照して、インタリーバ２３およびデインタリーバ４２による効果についてさらに説明する。図１５乃至図１７においては、NA＝５，NB＝n＝８，NC＝７，ND＝５の場合の例が示されている。
【０１７３】
図１５は、列方向の順にブロック単位インタリーバ５１のRAMに入力された積符号と、その積符号に対してインタリーブが行われた結果（すなわち、記録媒体２への記録順）のデータを示す図である。図１６は、図１５のインタリーブが行われ、記録媒体２に記録され、記録媒体２から読み出された後に、短いバースト誤りが発生したデータと、そのデータに対して、デインタリーブが行われ、元の順に並び替えられた結果の積符号を示す図である。図１７は、図１５のインタリーブが行われ、記録媒体２に記録され、記録媒体２から読み出された後に、長いバースト誤りが発生したデータと、そのデータに対して、デインタリーブが行われ、元の順に並び替えられた結果の積符号を示す図である。
【０１７４】
図１５の例の場合、積符号は、列方向（図中横方向）にNC=７ブロックの外符号で構成されており、行方向にNA＝５個の内符号で構成されている。１番目の内符号に示される丸印は、１番目の内符号の各ビットを表しており、２番目の内符号に示される×印は、２番目の内符号の各ビットを表している。同様に、３番目の内符号に示される上向き三角印は、３番目の内符号の各ビットを表しており、４番目の内符号に示される四角印は、４番目の内符号の各ビットを表し、５番目の内符号に示される下向き三角印は、５番目の内符号の各ビットを表している。
【０１７５】
すなわち、１個の内符号の符号長は、５６ビットであり、各内符号のNB＝８ビットを１ブロックとしたNC＝７ブロックからなる。また、各内符号を構成するNC＝７ブロックの外符号のうち、ND＝５ブロック分はユーザデータ部分であり、Ｐに示されるNC−ND（＝２）ブロックは、内符号のパリティ部である。
【０１７６】
ブロック単位インタリーバ５１は、この積符号のうち、ユーザデータ部分であるND×NB×NA（＝５×８×５）ビットに対して、インタリーブＡを行う。インタリーブＡにおいて、データは、NB＝８ビット毎（＝ブロック毎）に、一方の方向としての列方向の順に入力される。そして、例えば、RAMのデータは、図中右斜め下方向の順に読み出される。
【０１７７】
次に、ブロック単位インタリーバ５１は、この積符号のうち、ユーザデータ部分の除いた部分、すなわち、Ｐに示される内符号のパリティ部分である（NC−ND）×NB×NA（＝２×８×５）ビットに対してインタリーブＢを行う。インタリーブＢにおいて、データは、NB＝８ビット毎（＝ブロック毎）に、一方の方向としての列方向（図中横方向）の順にRAMに入力され、入力されたRAMのデータは、他方の方向としての行方向（図中縦方向）の順に読み出される。
【０１７８】
そして、さらに、ビット単位インタリーバ５２は、ブロック単位インタリーバ５１により順序が変換されたブロック（NB＝８ビット）をNA＝５個集めた５ブロック毎に、NC＝７回、各ビットを入れ替えるビット単位のインタリーブを行う。すなわち、ビット単位インタリーバ５２は、ブロック単位インタリーバ５１により順序が変換されたブロックに対して、５ブロック毎に順番に処理を行い、５ブロックの範囲において、各ブロックの１ビット目を順に出力し、次に、各ブロックの２ビット目を順に出力し、その後同様の処理を繰り返し、最後に、各ブロックのNB＝８ビット目を順に出力することにより、記録順を変換する。
【０１７９】
以上のようにして、１および２段階目のインタリーブが行われることにより、その結果（すなわち、記録媒体２への記録順）のデータにおいては、連続するi=NA＝５ビットに同じ内符号の符号語が二度現れないようにデータ系列が入れ替えられている。
【０１８０】
また、同時に、データのユーザデータ部分において、連続するj= NB×NA×NE（NEは、NA×NE≦NDを満たす最大の整数）ビットに外符号の同じ符号語の異なるシンボルが現れないようにデータ系列が入れ替えられている。すなわち、図１５の例の場合、NE＝１であり、連続するj= NB×NA×NE=８×５×１=４０ビットに外符号の同じ符号語の異なるシンボルが現れないようにデータ系列が入れ替えられている。
【０１８１】
ここで、図１５のインタリーブが行われた結果のデータに、PRMLにおけるエラー伝播などにより、図１６に示されるように、短いバースト誤りが発生したとする。例えば、図１６の例においては、インタリーブ後のデータのユーザデータ部分の４ビットに、Ｅ４に示される短いバースト誤りが発生している。また、インタリーブ後のデータの、Ｐに示される内符号のパリティ部分の５ビットに、Ｅ５に示される短いバースト誤りが発生している。
【０１８２】
このようにＥ４およびＥ５に示される短いバースト誤りが発生したデータに対して、ビット単位デインタリーバ７１は、NA×NB（＝５×８）ビットのデインタリーブをNC（＝７）回行う。すなわち、ビット単位デインタリーバ７１は、NA＝５ビットを１ブロックとしたNB＝８ブロック毎に順番に処理を行い、NB＝８ブロックの範囲において、各ブロックの１ビット目を順に出力し、次に、各ブロックの２ビット目を順に出力し、その後同様の処理を繰り返し、最後に、各ブロックのNA＝５ビット目を順に出力することにより、データを並び替える。
【０１８３】
さらに、ブロック単位デインタリーバ７２は、ビット単位デインタリーバ７１により順序が変換されたブロックに対して、デインタリーブＡを行い、デインタリーブＢを行う。すなわち、デインタリーブＡにおいて、データは、インタリーブＡの出力順である、右斜め下方向の順に入力され、RAMのデータは、インタリーブＡの入力順である、列方向の順に出力される。また、デインタリーブＢにおいて、データは、インタリーブＢの出力順である、行方向の順に入力され、入力されたRAMのデータは、インタリーブＢの入力順である、列方向の順に読み出される。
【０１８４】
以上のデインタリーブの結果、元の順に並び替えられた積符号において、ユーザデータ部分に発生したＥ４に示される短いバースト誤りは、ｅ４に示されるように、行方向に並ぶ内符号に対しても、列方向に並ぶ外符号に対しても、ランダム誤りとなる。
【０１８５】
また、内符号のパリティ部分に発生したＥ５に示される短いバースト誤りは、上述した図１３の例と同様に、ｅ５に示されるように、行方向に並ぶ内符号に対してのみ、ランダム誤りとなる。
【０１８６】
一方、図１５のインタリーブが行われた結果のデータに、ディスクの傷やゴミ等によって、図１７に示されるように、長いバースト誤りが発生したとする。図１７の例においては、インタリーブ後のデータのユーザデータ部分の３８ビットに、Ｅ６に示される長いバースト誤りが発生している。
【０１８７】
このＥ６に示される長いバースト誤りが発生したデータに対して、ビット単位デインタリーバ７１は、NA×NBビットのデインタリーブをNC回行う。さらに、ブロック単位デインタリーバ７２は、ビット単位デインタリーバ７１により順序が変換されたブロックに対して、デインタリーブＡを行い、デインタリーブＢを行う。なお、これらのデインタリーブの詳細は、図１６を参照して上述したデインタリーブと基本的に同様の処理を行うため繰り返しになるので省略する。
【０１８８】
以上のデインタリーブの結果、元の順に並び替えられた積符号において、インタリーブ後のユーザデータ部分に発生したＥ６に示される長いバースト誤りは、ｅ６に示されるように、行方向に並ぶ内符号に対しては、ある程度分散され、列方向に並ぶ外符号に対しては、ランダム誤りとすることができる。
【０１８９】
したがって、長いバースト誤りにより内符号の復号が失敗した場合でも、外符号はランダム誤りとして効果的に復号を行うことができる。
【０１９０】
以上のように、記録再生装置１のインタリーバ２３およびデインタリーバ４２によれば、非常に効果的な誤り訂正を行うことができる。なお、図１２乃至図１７を参照して上述した例は、内符号の符号長が非常に短い例であるが、内符号の符号長を長くとれば、長いバースト誤りが発生した場合でも、外符号に対してランダム誤りとすることもできる。
【０１９１】
また、以上のようにインタリーブおよびデインタリーブを行うことで、インタリーブの周期を積符号の１符号分に対して小さくすることができる。
【０１９２】
上述した一連の処理は、ハードウエアにより実行することもできるし、ソフトウエアにより実行することもできる。一連の処理をソフトウエアにより実行する場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【０１９３】
図１８は、上述した一連の処理をプログラムにより実行するコンピュータのハードウエアの構成例を示すブロック図である。
【０１９４】
CPU(Central Processing Unit)１０１、ROM(Read Only Memory)１０２、RAM(Random Access Memory)１０３は、バス１０４により相互に接続されている。
【０１９５】
バス１０４には、さらに、入出力インタフェース１０５が接続されている。入出力インタフェース１０５には、キーボード、マウスなどよりなる入力部１０６、ディスプレイ、スピーカなどよりなる出力部１０７が接続される。また、バス１０４には、ハードディスクや不揮発性のメモリなどよりなる記憶部１０８、ネットワークインタフェースなどよりなる通信部１０９、リムーバブルメディア１１１を駆動するドライブ１１０が接続される。
【０１９６】
以上のように構成されるコンピュータでは、CPU１０１が、例えば、記憶部１０８に記憶されているプログラムを入出力インタフェース１０５及びバス１０４を介してRAM１０３にロードして実行することにより、上述した一連の処理が行われる。
【０１９７】
CPU１０１が実行するプログラムは、例えばリムーバブルメディア１１１に記録して、あるいは、ローカルエリアネットワーク、インターネット、デジタル放送といった、有線または無線の伝送媒体を介して提供され、記憶部１０８にインストールされる。
【０１９８】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【０１９９】
本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【図面の簡単な説明】
【０２００】
【図１】積符号のデータ構成例を示す図である。
【図２】従来のインタリーブとデインタリーブの例を示す図である。
【図３】従来のインタリーブとデインタリーブの他の例を示す図である。
【図４】本発明を適用した記録再生装置の実施の形態の構成例を示すブロック図である。
【図５】インタリーバの構成例を示すブロック図である。
【図６】図４の記録再生装置の記録処理を説明するフローチャートである。
【図７】ブロック単位インタリーバの処理の例を説明する図である。
【図８】ブロック単位インタリーバの処理の他の例を説明する図である。
【図９】ビット単位インタリーバの処理の例を説明する図である。
【図１０】デインタリーバの構成例を示すブロック図である。
【図１１】図４の記録再生装置の再生処理を説明するフローチャートである。
【図１２】記録再生装置によるインタリーブの例を示す図である。
【図１３】短いバースト誤りが発生した場合の効果を説明する図である。
【図１４】長いバースト誤りが発生した場合の効果を説明する図である。
【図１５】記録再生装置によるインタリーブの他の例を示す図である。
【図１６】短いバースト誤りが発生した場合の効果を説明する図である。
【図１７】長いバースト誤りが発生した場合の効果を説明する図である。
【図１８】コンピュータのハードウエアの構成例を示すブロック図である。
【符号の説明】
【０２０１】
１  記録再生装置，  ２  記録媒体，  ２１  外符号符号化部，  ２２  内符号符号化部，  ２３  インタリーバ，  ３１  記録再生部，  ３２  等化部，  ４２  デインタリーバ，  ４３  内符号復号部，  ４４  外符号復号部，  ５１  ブロック単位インタリーバ，  ５２  ビット単位インタリーバ，  ７１  ビット単位デインタリーバ，  ７２  ブロック単位デインタリーバ
【図１】
2010103882.tif 000003
【図２】
2010103882.tif 000004
【図３】
2010103882.tif 000005
【図４】
2010103882.tif 000006
【図５】
2010103882.tif 000007
【図６】
2010103882.tif 000008
【図７】
2010103882.tif 000009
【図８】
2010103882.tif 000010
【図９】
2010103882.tif 000011
【図１０】
2010103882.tif 000012
【図１１】
2010103882.tif 000013
【図１２】
2010103882.tif 000014
【図１３】
2010103882.tif 000015
【図１４】
2010103882.tif 000016
【図１５】
2010103882.tif 000017
【図１６】
2010103882.tif 000018
【図１７】
2010103882.tif 000019
【図１８】
2010103882.tif 000020