データを所定の伝送路に伝送したり、または例えば磁気ディスク、光ディスク、光磁気ディスク等の記録媒体に記録する際、伝送路や記録媒体に適するように、データの変調が行われる。このような変調方法の1つとして、ブロック符号が知られている。ブロック符号とは、データ列をm×iビットからなる単位(以下データ語という)にブロック化し、このデータ語を適当な符号則に従って、n×iビットからなる符号語に変換するものである。そしてこの符号は、i=1のときには固定長符号となり、またiが複数個選べるとき、すなわち、1乃至imax(最大のi)の範囲の所定のiを選択して変換したときには可変長符号となる。このブロック符号化された符号は可変長符号(d,k;m,n;r)と表される。
ここでiは拘束長と称され、imaxはr(最大拘束長)となる。またdは、例えば、連続する“1”の間に入る“0”の最小連続個数、すなわち“0”の最小ランを示し、kは連続する“1”の間に入る“0”の最大連続個数、すなわち“0”の最大ランを示している。
ところで上述のようにして得られる符号語を、光ディスクや光磁気ディスク等に記録する場合、例えばコンパクトディスク(CD)やミニディスク(MD)(登録商標)では、可変長符号列より、“1”を反転とし、“0”を無反転とするNRZI(NonReturn to Zero Inverted)変調を行い、NRZI変調された可変長符号(以下、記録波形列と称する)に基づき、記録が行なわれている。これはマークエッジ記録と称される。これに対して、ISO規格の3.5inch・230MB容量の光磁気ディスク等では、記録変調された符号列が、NRZI変調されずにそのまま記録される。これはマークポジション記録と称される。現在のように高記録密度化された記録メディアでは、マークエッジ記録が多く用いられている。
記録波形列の最小反転間隔をTminとし、最大反転間隔をTmaxとするとき、線速方向に高密度記録を行うためには、最小反転間隔Tminは長い方が、即ち最小ランdは大きい方が良く、またクロックの再生の面からは、最大反転間隔Tmaxは短い方が、即ち最大ランkは小さい方が望ましい。またオーバーライト特性を考慮する場合にはTmax/Tminは小さい方が望ましい。さらには、JitterやS/Nの点から検出窓幅Tw=m/nが大きいことが重要になるなど、メディアの条件と照らし合わせながら種々の変調方法が提案され、実用化されている。
ここで具体的に、光ディスク、磁気ディスク、または光磁気ディスク等において、提案されたり、あるいは実際に使用されている変調方式をあげてみる。CDやMDで用いられるEFM符号((2,10;8,17;1)とも表記される)やDVD(Digital Versatile Disc)で用いられる8-16符号((2,10;1,2;1)とも表記される)、そしてPD(120mm650MB容量)で用いられるRLL(2,7)((2,7;m,n;r)とも表記される)は、最小ランd=2のRLL符号である。また、MD−DATA2あるいはISO規格の3.5inchMO(640MB容量)で用いられるRLL(1,7)((1,7;2,3;r)とも表記される)は、最小ランd=1のRLL符号である。この他、現在開発研究されている、記録密度の高い光ディスクや光磁気ディスク等の記録再生ディスク装置においては、最小マークの大きさや、変換効率のバランスの取れた、最小ランd=1のRLL符号(Run Length Limited code)がよく用いられている。
可変長の RLL(1,7)符号の変調テーブルは、例えば以下のようなテーブルである。
<表1>
RLL(1,7) : (d,k;m,n;r) = (1,7;2,3;2)
データパターン 符号パターン
i=1 11 00x
10 010
01 10x
i=2 0011 000 00x
0010 000 010
0001 100 00x
0000 100 010
ここで変調テーブル内の記号xは、次に続くチャネルビットが“0”であるときに“1”とされ、また次に続くチャネルビットが“1”であるときに“0”とされる。最大拘束長rは2である。
可変長RLL(1,7)のパラメータは(1,7;2,3,2)であり、記録波形列のビット間隔をTとすると、(d+1)Tで表される最小反転間隔Tminは2(=1+1)Tとなる。データ列のビット間隔をTdataとすると、この(m/n)×2で表される最小反転間隔Tminは1.33(=(2/3)×2)Tdataとなる。また(k+1)Tで表される最大反転間隔Tmaxは、Tmax = 8(=7+1)T(=(m/n)×8Tdata = (2/3)×8Tdata = 5.33Tdata) である。さらに検出窓幅Twは(m/n)×Tdataで表され、その値は、Tw = 0.67(=2/3)Tdata となる。
ところで、表1のRLL(1,7)による変調を行ったチャネルビット列においては、発生頻度としてはTminである2Tが一番多く、以下、3T,4T,5T,6T,…の順に多い。そして最小ラン(Tmin)である2Tが繰り返した場合、即ちエッジ情報が早い周期で多く発生することは、クロック再生には有利となる場合が多い。
ところが、例えば光ディスクの記録再生において、さらに記録線密度を高くしていった場合、最小ランは、エラーが発生しやすい部位となる。なぜなら、ディスク再生時において、最小ランの波形出力は、他のランよりも小さく、例えばデフォーカスやタンジェンシャル・チルト等による影響を受けやすいからである。またさらに、高記録線密度における、最小マークの連続した記録再生は、ノイズ等の外乱の影響も受けやすく、従ってデータ再生誤りを起こしやすくなる。この時のデータ再生誤りのパターンとしては、連続する最小マークの先頭のエッジから最後のエッジまでが、一斉にシフトして誤るという場合がある。即ち発生するビットエラー長は、最小ランの連続する区間の、先頭から最後まで伝搬することになる。従ってエラー伝搬は長くなってしまうという問題が現れる。
高線密度にデータを記録再生する場合の安定化のためには、最小ランの連続を制限することが効果的である。
一方、記録媒体へのデータの記録、あるいはデータの伝送の際には、記録媒体あるいは伝送路に適した符号化変調が行われるが、これら変調符号に低域成分が含まれていると、例えば、ディスク装置のサーボ制御におけるトラッキングエラーなどの、各種のエラー信号に変動が生じ易くなったり、あるいはジッターが発生し易くなったりする。従って変調符号は、低域成分がなるべく抑制されている方が望ましい。
低域成分を抑制する方法として、DSV(Digital Sum Value)制御がある。DSVとは、チャネルビット列をNRZI化(すなわちレベル符号化)して記録符号列とし、そのビット列(データのシンボル)の“1”を符号「+1」、“0”を符号「−1」として、符号を加算していったときのその総和を意味する。DSVは記録符号列の低域成分の目安となる。DSVの正負のゆれの絶対値を小さくすること、すなわちDSV制御を行うことは、記録符号列の直流成分を除き、低域成分を抑制することになる。
前記表1に示した、可変長RLL(1,7)テーブルによる変調符号は、DSV制御が行われていない。このような場合のDSV制御は、変調後の符号化列(チャネルビット列)において、所定の間隔でDSV計算を行い、所定のDSV制御ビットを符号化列(チャネルビット列)内に挿入することで、実現される(例えば、特許文献1)。
チャネルビット列内に挿入するDSV制御ビット数は、最小ランdによって決まる。d=1の時、最小ランを守るように、符号語内の任意の位置にDSV制御ビットを挿入する場合、必要なビット数は2(=d+1)チャネルビットである。また最大ランを守るように、符号語内の任意の位置にDSV制御ビットを挿入する場合に必要となるビット数は4(=2×(d+1))チャネルビットである。これらよりも少ないチャネルビットでDSV制御を行うと、挟まれる前後のパターンによって、DSV制御できない場合が発生する。
(d,k;m,n) = (1,7;2,3)である RLL(1,7)符号において、前記DSV制御ビットを、変換率と合わせて、データに換算すると、
4チャネルビット×2/3 = 8/3 = 2.67データ相当(2.67 Tdata)
になる。
ところでDSV制御ビットは、基本的には冗長ビットである。従って符号変換の効率から考えれば、DSV制御ビットはなるべく少ないほうが良い。
またさらに、挿入されるDSV制御ビットによって、最小ランdおよび最大ランkは、変化しないほうが良い。(d,k)が変化すると、記録再生特性に影響を及ぼしてしまうからである。
ただし、実際のRLL符号においては、最小ランは記録再生特性への影響が大きいために、必ず守られる必要があるが、最大ランについては必ずしも守られてはいない。場合によっては最大ランを破るパターンを同期パターンに用いるフォーマットも存在する。例えば、DVD(Digital Versatile Disk)の8-16符号における最大ランは11Tだが、同期パターン部分において最大ランを超える14Tを与え、同期パターンの検出能力を上げている。
以上を踏まえて本発明者等は、(d,k)=(1,7)で、さらに高記録密度に対応した変調方式として、表2の1,7PP符号を先に提案した(例えば、特許文献2参照)。
<表2>
1,7PP : (d,k;m,n;r) = (1,7;2,3;4)
データパターン 符号パターン
i=1 11 *0*
10 001
01 010
i=2 0011 010 100
0010 010 000
0001 000 100
i=3 000011 000 100 100
000010 000 100 000
000001 010 100 100
000000 010 100 000
i=3 110111 001 000 000(next010)
i=4 00001000 000 100 100 100
00000000 010 100 100 100
if xx1 then *0* = 000
xx0 then *0* = 101
=============================
Sync & Termination
#01 001 000 000 001 000 000 001 (24 channel bits)
# = 0 not terminate case
# = 1 terminate case
Termination table
00 000
0000 010 100
110111 001 000 000(next010):
When next channel bits are '010',
convert '11 01 11' to '001 000 000'.
表2の変調テーブルは、変換パターンとして、それがないと変換処理ができない基礎パターン((11)から(000000)までのデータパターンよりなる変換パターン)、それがなくても変換処理は可能であるが、それを行うことによって、より効果的な変換処理が実現する置換パターン((110111),(00001000),(00000000)のデータパターンよりなる変換パターン)、および、データ列を任意の位置で終端させるための終端パターン((00),(0000)のデータパターンよりなる変換パターン)を有している。
また、表2は、最小ランd=1、最大ランk=7で、基礎パターンの要素に不確定符号(*で表される符号)を含んでいる。不確定符号は、直前および直後の符号語列の如何によらず、最小ランdと最大ランkを守るように、“0”か“1”に決定される。すなわち表2において、変換する2データパターンが(11)であったとき、その直前の符号語列(チャネルビット列)によって、“000”または“101”の符号パターンが選択され、そのいずれかに変換される。例えば、直前の符号語列の1チャネルビットが“1”である場合、最小ランdを守るために、データパターン(11)は、符号パターン“000”に変換され、直前の符号語列の1チャネルビットが“0”である場合、最大ランkが守られるように、データパターン(11)は、符号パターン“101”に変換される。
表2の変調テーブルの基礎パターンは可変長構造を有している。すなわち、拘束長i=1における基礎パターンは、必要数の4つ(2^m = 2^2 = 4)よりも少ない3つ(*0*,001,010の3つ)で構成されている。その結果、データ列を変換する際に、拘束長i=1だけでは変換出来ないデータ列が存在することになる。結局、表2において、全てのデータ列を変換するには(変調テーブルとして成り立つためには)、拘束長i=3までの基礎パターンを参照する必要がある。
また、表2の変調テーブルは、最小ランdの連続を制限する置換パターンを持っているため、データパターンが(110111)である場合、さらに後ろに続く符号語列が参照され、それが“010”であるとき、この6データパターン符号パターン“001 000 000”に置き換えられる。また、このデータパターンは、後ろに続く符号語列が“010”以外である場合、2データ単位((11),(01),(11))で符号パターンに変換されるので、符号語“*0* 010 *0*”に変換される。これによって、データを変換した符号語列は、最小ランの連続が制限され、最大でも6回までの最小ラン繰り返しとなる。
そして表2の変調テーブルは、最大拘束長r=4である。拘束長i=4の変換パターンは、最大ランk=7を実現するための、置換パターン(最大ラン保証パターン)で構成されている。すなわち、データパターン(00001000)は、符号パターン“000 100 100 100”に変換され、データパターン(00000000)は、符号パターン“010 100 100 100”に変換されるように構成されている。そしてこの場合においても、最小ランd=1は守られている。
さらに表2は、同期パターンを挟むために、データ列の任意の位置において終端させる場合、データ列が(00)または(0000)で終端位置となる際には、終端パターンが用いられる。挿入される同期パターンは、先頭の1符号語が終端パターン使用識別ビットとなっており、終端パターンが用いられた時は、直後の同期パターン列の先頭符号語が“1”となる。また終端パターンが用いられなかった時は、“0”となる。なお、表2における同期パターンは、上述の終端パターン使用識別ビットと、同期パターン検出のために、最大ランk=7を超えるk=8の符号パターンを2回繰り返し、合計24符号語で構成してある。
ところで表2の変換パターンは、データパターンの要素としての「1」の個数を2で割った時の余りと、変換される符号パターンの要素としての「1」の個数を2で割った時の余りが、どちらも1あるいは0で同一(対応するいずれの要素も「1」の個数が奇数または偶数)となるような変換規則を持っている。例えば、変換パターンのうちのデータパターン(000001)は、“010 100 100”の符号パターンに対応しているが、それぞれの要素としての「1」の個数は、データパターンでは1個、対応する符号パターンでは3個であり、どちらも2で割ったときの余りが1(奇数)で一致している。同様にして、変換パターンのうちのデータパターン(000000)は、“010 100 000”の符号パターンに対応しているが、それぞれ「1」の個数は、データパターンでは0個、対応する符号パターンでは2個であり、どちらも2で割ったときの余りが0(偶数)で一致している。
次に、DSV制御を行う方法について述べる。表1のRLL(1,7)符号のような、変調テーブルにDSV制御が行われていない場合における従来のDSV制御は、例えば、データ列を変調した後、変調後のチャネルビット列に、所定の間隔で、DSV制御ビットを少なくとも(d+1)ビットだけ付加することで行われた。表2のような変調テーブルにおいても、従来と同様にDSV制御を行うことが出来るが、表2における、データパターンと符号パターンの関係を生かして、さらに効率良くDSV制御を行うことができる。即ち、変調テーブルが、データパターンの要素としての「1」の個数と符号パターンの要素としての「1」の個数を2で割った時の余りが、どちらも1あるいは0で同一となるような変換規則を持っている時、前記のようにチャネルビット列内に、「反転」を表す“1”、あるいは「非反転」を表す“0”のDSV制御ビットを挿入することは、データビット列内に、「反転」するならば(1)の、「非反転」ならば(0)の、それぞれDSV制御ビットを挿入することと等価となる。
例えば表2において、データ変換する3ビットが(001)と続いたときに、その後ろにおいてDSV制御ビットを挾むものとすると、データは、(001−x)(xは1ビットで、「0」又は「1」)となる。ここでxに「0」を与えれば、表2の変調テーブルで、
データパターン 符号パターン
0010 010 000
の変換が行われ、また、「1」を与えれば、
データパターン 符号パターン
0011 010 100
の変換が行われる。符号語列をNRZI化して、レベル符号列を生成すると、これらは
データパターン 符号パターン レベル符号列
0010 010 000 011111
0011 010 100 011000
となり、レベル符号列の最後の3ビットが相互に反転している。このことは、DSV制御ビットxの(1)と(0)を選択することによって、データ列内においても、DSV制御が行えることを意味する。
DSV制御による冗長度を考えると、データ列内の1ビットでDSV制御を行うということは、チャネルビット列で表現すれば、表2の変換率(m:n=2:3)より、1.5チャネルビットでDSV制御を行っていることに相当する。一方、表1のようなRLL(1,7)テーブルにおいてDSV制御を行うためには、チャネルビット列においてDSV制御を行う必要があるが、この時最小ランを守るためには、少なくとも2チャネルビットが必要であり、表2のDSV制御と比較すると、冗長度がより大きくなってしまう。換言すれば、表2のテーブル構造を持つ時、データ列内でDSV制御を行うことで、効率よくDSV制御を行うことができる。
以上に説明した(d,k)=(1,7)の最小ランと最大ランを持った、高記録密度に対応した表2の変調テーブルは、例えば高密度光ディスクシステムである、Blu-ray Disc ReWritable ver1.0(登録商標)におけるフォーマットとして採用されている。
そして、今後さらなる高記録密度に対して、具体的に例えば、高密度光ディスクに対するさらなる高密度規格に対して、変調方式においても、さらに安定したシステムが要求されている。
その際、既に商品化されているBlu-ray Disc ReWritable ver1.0に対し、従来の (1,7)PP符号と同様なパラメータであり、かつ同様な変調テーブルの構成で、より安定したシステムを実現する変調方式が実現すれば、従来の設計技術を流用することが出来るので、ハードウエア設計時の設計リスクを低減することができる。
特開平6−197024号公報
特開平11−346154号公報
以下に本発明の実施の形態を説明するが、本発明の構成要件と、明細書または図面に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、明細書または図面に記載されていることを確認するためのものである。従って、明細書または図面中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
本発明の一側面は、第1のデータパターンと第1の符号パターンを対応付ける第1のテーブルに従って、入力されたデータの前記第1のデータパターンと一致する部分を、対応する前記第1の符号パターンに変換する第1の変換手段(例えば、図3の変換テーブル122、最小ラン連続制限テーブル113A)と、第2のデータパターンと第2の符号パターンを対応付ける第2のテーブルに従って、入力されたデータの前記第2のデータパターンと一致する部分を、対応する前記第2の符号パターンに変換する第2の変換手段(例えば、図3の最小ラン連続制限テーブル113B、特定規則変換テーブル116)と、前記第2のテーブルにより変換された前記第2の符号パターンの使用頻度に基づいて、前記第1の符号パターンまたは前記第2の符号パターンを選択する選択手段(例えば、図3の変換パターン決定部53)とを備える変調装置(例えば、図3の変調装置1)である。
本発明の一側面はまた、第1のデータパターンと第1の符号パターンを対応付ける第1のテーブルに従って、入力されたデータの前記第1のデータパターンと一致する部分を、対応する前記第1の符号パターンに変換する第1の変換ステップ(例えば、図4のステップS6、図6のステップS79)と、第2のデータパターンと第2の符号パターンを対応付ける第2のテーブルに従って、入力されたデータの前記第2のデータパターンと一致する部分を、対応する前記第2の符号パターンに変換する第2の変換ステップ(例えば、図4のステップS5、図6のステップS74)と、前記第2のテーブルにより変換された前記第2の符号パターンの使用頻度に基づいて、前記第1の符号パターンまたは前記第2の符号パターンを選択する選択ステップ(例えば、図4のステップS8)とを備える変調方法またプログラム(例えば、図4の記録処理を行う変調方法またはプログラム)である。
以下、本発明の実施の形態について説明する。以後、変換前のデータ列(データパターン)を(000011)のように( )で区切って表し、変換後のチャネルビット列(符号パターン)を“000 100 100”のように“ ”で区切って表す。また、本明細書において、最小ランd=1、最大ランk=7、かつ変換率(m:n)=(2:3)である可変長符号であり、さらに、最小ランの連続する回数を制限し、かつ、最小ラン及び最大ランを守りながら、効率の良いDSV制御ビットで、完全なDSV制御を行う変換テーブルを持つ符号を、1,7PP符号(PP : Parity-preserve Prohibit-repeated-minimum-transition-runlength)と呼ぶ。
以下の表3は、本発明の一実施の形態としての変調テーブルを表す。
<表3>
1,7PP-rmtr5_code. rev.11 RLL(1,7;2,3;5)
データパターン 符号パターン
i=1 11 *0*
10 001
01 010
i=2 0011 010 100
0010 010 000
0001 000 100
i=3 000011 000 100 100
000010 000 100 000
000001 010 100 100
000000 010 100 000
i=4 00001000 000 100 100 100
00000000 010 100 100 100
i=3 110111 001 000 000(next010)
i=4 01110111 (pre1)010 000 000 101(not010)
i=5 1001110111 $0$ 010 000 000 101(not010)
If xx1 then *0* = 000
xx0 then *0* = 101
If x10 or x01 then $0$ = 000
x00 then $0$ = 101
Sync & Termination
#01 010 000 000 010 000 000 010 yyy yyy (30 cbits = SY_24 cbits + ID_6 cbits)
# = 0 not terminate case
# = 1 terminate case
Termination table
00 000
0000 010 100
表3の変換テーブルは、そのまま適用して符号語列を発生させた時、その符号語列は、最小ランd=1、最大ランk=7、FS(フレームシンク)の最大ランk=8、そして最小ランの連続は、5回までに制限されたものとなる。
なお、符号パターン“001 000 000”(next010)は、符号パターン“001 000 000”の次の符号パターンが“010”である場合に変換が行われることを意味する。符号パターン”(pre1)010 000 000 101(not010)”の(pre1)は、直前の符号が“1”である場合に変換が行われることを意味し、(not010)は、直後の符号が“010”でない場合に変換が行われることを意味する。他の変換パターンにおいても同様である。
表3の変調テーブルは、表1あるいは表2の変調テーブルと同様に、データパターンと符号パターンとよりなる変換パターンで構成されている。変調装置が表3の変調テーブルに従って変調を行う場合、変調装置に入力されたデータ列が、表3に記述されているデータパターンと一致すれば、そのデータ列のデータパターンと一致する部分は、対応する(表3において右側に示される)符号パターンに変換され、符号語列として出力される。
表3の変調テーブルは1,7PP符号であり、さらに基本構成が表2と同様である。この表3の変調テーブルは、基礎変換テーブル、置換変換テーブル、および終端テーブルにより構成される。
基礎変換テーブルは、それがないと変換処理ができない変換パターン(基礎パターン)により構成され、置換変換テーブルは、それがなくても変換処理は可能であるが、それを行うことによって、より効果的な変換処理を実現する(最大ランを制限したり、最小ランの連続を制限する)ことができる変換パターン(置換パターン)により構成される。終端テーブルは、符号を任意の位置で終端させるための変換パターン(終端パターン)により構成される。
具体的には、表3に示される変調テーブルのうち、(11)から(000000)までのデータパターンからなる基礎データパターンと、それに対応する“*0*”から“010 100 000”までの符号パターンからなる基礎符号パターンを含む変換パターン(基礎パターン)により構成される部分が基礎変換テーブルとしての変調テーブルであり、(00001000),(00000000),(110111),(01110111),(1001110111)のデータパターンからなる置換データパターンと、それに対応する“000 100 100 100”,“010 100 100 100”,“001 000 000(next010)”,“(pre1)010 000 000 101(not010)”,“$0$ 010 000 000 101(not010)”の符号パターンからなる置換符号パターンを含む変換パターン(置換パターン)により構成される部分が置換変換テーブルとしての変調テーブルである。
置換変換テーブルのうち、(00001000),(00000000)のデータパターンからなる置換データパターンと、それに対応する“000 100 100 100”,“010 100 100 100”の符号パターンからなる置換符号パターンを含む部分は、最大ランを制限するための置換パターンのテーブルであり、(110111),(01110111),(1001110111)のデータパターンからなる置換データパターンと、それに対応する“001 000 000(next010)”,“(pre1)010 000 000 101(not010)”,“$0$ 010 000 000 101(not010)”の符号パターンからなる置換符号パターンにより構成される部分が最小ランの連続を制限する置換パターンのテーブルである。
以下においては、(11)から(00000000)までのデータパターンと、それに対応する“*0*”から“010 100 100 100”までの符号パターンをRLL変換パターンとも記述する。
これに対して、(110111),(01110111),(1001110111)のデータパターンと、それに対応する“001 000 000”,“010 000 000 101”,“$0$ 010 000 000 101”の符号パターン(最小ランの連続を制限する置換パターン)を、狭義の置換パターンとも記述する。
また、(00),(0000)のデータパターンからなる終端データパターンと、それに対応する“000”,“010 100”の符号パターンからなる終端符号パターンを含む変換パターン(終端パターン)により構成される部分が終端テーブルとしての変調テーブルである。
データパターンと符号パターンの対応関係を記述するのが変調テーブルであり、以下においては、表3の一部のことも必要に応じて変調テーブルあるいは変換テーブルと記述する。
表3は、最小ランd=1、最大ランk=7で、基礎符号の要素に不確定符号(*で表される符号)を持つ。不確定符号は、直前および直後の符号語列の如何によらず、最小ランdと最大ランkを守るように、“0”か“1”に決定される。即ち表3において、変換する2データが(11)であったとき、その直前の符号語列(チャネルビット列)によって、“000”または“101”が選択され、そのいずれかに変換される。例えば、直前の符号語列の1チャネルビットが“1”である場合、最小ランdを守るために、2データ(11)は、符号語“000”に変換され、直前の符号語列の1チャネルビットが“0”である場合、最大ランkが守られるように、2データ(11)は、符号語“101”に変換される。
表3の変換テーブルは可変長構造を有しているので、基礎パターンはi=1からi=3までを持つ。
また、表3の変換テーブルは、拘束長i=3において、最小ランdの連続を制限する置換パターンを持っている。データパターンが(110111)である場合、さらに直後の符号語が参照される。後ろに続く符号語列が“010”の符号パターンと一致する時、この6データは、符号パターン“001 000 000”に置き換えられる。またこの6データは、直後の符号語列が符号パターン“010”と一致しない場合、分割された2データ単位((11),(01),(11))で符号語に変換されるので、符号語“*0* 010 *0*”即ち符号語“*0* 010 101”に変換される。
表3の変換テーブルはさらに、拘束長i=5において、最小ランdの連続を制限する置換パターンを別途持っている。データ列が(1001110111)である場合、後述の例外処理の場合(続く符号が“010”である場合)を除いて、このデータ列10ビットは、符号語“$0$ 010 000 000 101”に置き換えられる。
“$”はRLL規則を守り、かつ、最小ランの連続を所定回数までに制限するための不確定符号である。具体的には、最小ランを守るために、直前の符号語列の1チャネルビットが“1”である場合に、符号語“$0$”は符号語“000”に変換され、最大ランを守るために、直前の符号語列の1チャネルビットが“0”である場合に、符号語“$0$”は符号語“101”に変換される。さらに、最小ランの連続を所定回数までに制限するために、直前の符号語列の3チャネルビットが“010”である場合に、符号語“$0$”は符号語“000”に変換される。
以上をまとめると、直前の符号語列の2チャネルビットが、“10”あるいは“01”である場合に、符号語“$0$”は符号語“000”に変換され、そうでない時、即ち“00”である場合に、符号語“$0$”は符号語“101”に変換されることになる。
なお、2チャネルビットのパターンとしては、4通りあるが、残る“11”は最小ランd=1を満たしていないので、変換パターンとして利用されない。
また、例外処理とは、以下の通りである。即ち、データ列がデータパターン(1001110111)と一致する場合、さらに直後の符号語列が参照され、後ろに続く符号語列が“010”であった時、上述の様な符号語“$0$ 010 000 000 101”への一括した置き換え処理は行われずに、先頭の2ビット(10)のみが、符号語“001”に変換される。以下、同様に、(01),(110111)と区分(分割)して順次変換される。
そして、表3の変調テーブルは、拘束長i=4において最小ランdの連続を制限する置換パターンを別途持っている。同期パターンが挿入された後の符号語列において、変換処理を行うデータ列が(01110111)である時、さらにその直前の符号語が“1”であり、かつ後ろに続く符号語列が“010”でなかった時、この8データは、符号語“010 000 000 101”に置き換えられる。またこのデータ列は、直前の符号語が“0”であるか、または直後の符号語列が“010”である場合、区分(分割)され、2データ(01)が符号語“010”に変換される。そして次の変換処理でデータ(110111)の変換処理が行われる。
以上、データを変換した符号語列は、最小ランの連続が制限され、最大でも5回までの最小ラン繰り返しとなる。
表3の変換テーブルは、拘束長i=4の変換パターンにおいて、最大ランk=7を実現するための置換パターン(最大ラン保証パターン)を持っている。即ち、データパターン(00001000)は符号パターン“000 100 100 100”に変換され、データパターン(00000000)は符号パターン“010 100 100 100”に変換されるようになされている。なお、この場合にも最小ランd=1は守られている。
さらに表3は、同期パターンを挟むために、データ列の任意の位置において終端させる場合、データ列が(00)または(0000)で終端位置となる場合には、終端パターンが用いられる。挿入される同期パターンは、先頭の1符号語が終端パターン使用識別ビットとなっており、終端パターンが用いられた時は、直後の同期パターン列の先頭符号語が“1”となり、終端パターンが用いられなかった時は“0”となる。なお、表3における同期パターンは、上述の終端パターン使用識別ビットと、同期信号検出のために最大ランk=7を超えるk=8の符号語(同期位置を特定するためのパターン)を持ち、さらに複数の同期パターンのいずれであるのかを識別する識別ビットとしての6符号語が与えられている。この6符号語は、RLL規則を守るように任意に選択することができる。以上より、例えば表3にあるように、同期パターンはk=8を2回繰り返して、合計30符号語(チャネルビット)で構成されている。
ところで表3の変換パターンは、基本的にデータパターンの“1”の個数を2で割った時の余りと、対応する符号パターンの“1”の個数を2で割った時の余りが、どちらも1あるいは0で同一(対応するいずれのパターンも“1”の個数が奇数または偶数)となるような変換規則を持っている。例えば、変換パターンのうちのデータパターン(000001)は、“010 100 100”の符号パターンに対応しているが、それぞれのパターンの“1”の個数は、データパターンでは1個、対応する符号パターンでは3個であり、どちらも2で割ったときの余りが1(奇数)で一致している。同様にして、変換パターンのうちのデータパターン(000000)は、符号パターン“010 100 000”に対応しているが、それぞれ“1”の個数はデータパターンでは0個、対応する符号パターンでは2個であり、どちらも2で割ったときの余りが0(偶数)で一致している。即ち、これらのパターンは偶奇性が保存されている偶奇性保存パターンである。
データ列内において、冗長ビットとしてDSV制御ビットを1ビット挿入し、このDSV制御ビットが(1)である時、DSV制御ビット部分を含むデータ列をチャネルビット列に変換し、NRZI化して記録符号列を作成すると、“1”と“0”の極性が反転する。またDSV制御ビットが(0)である時、DSV制御ビット部分を含むデータ列をチャネルビット列に変換し、NRZI化して記録符号列を作成すると、記録符号列の極性は反転しない。従って、データ列内に冗長ビットとして挿入された1ビットによって、これをデータ変換しNRZI化した後の極性を変えることが出来るので、データ列内でDSV制御が出来ることになる。すなわち、表3は、データ列によって符号のDSVを制御することができる規則(基本規則)を持ったテーブルである。
一方、表3は、拘束長i=4において最小ランdの連続を制限する置換パターンの変換が行われた場合は、8ビットのデータパターン(01110111)が12チャネルビットの符号パターン “010 000 000 101”に置き換えられる。これらのパターンは、データパターンの“1”の個数を2で割った時の余りと、符号パターンの“1”の個数を2で割った時の余りが0と1で一致していない偶奇性保存違反パターンである。したがって、この変調テーブルは、データ列によって符号のDSVを制御することが出来ない規則(特定規則)を一部に持ったテーブルである。
そこで表3は、DSV制御を行うことが出来ない拘束長i=4の最小ランdの連続を制限する置換パターンの出現位置が、同期パターンの直後に限定されるようにしてある。そして、同期パターンは30符号語であり、偶奇性保存違反パターン“010 000 000 101”は12チャネルビットであるので、合計のチャネルビット数は42となる。42チャネルビットは、変換率(m/n)でデータビットに換算すると28ビットとなる(42×(変換率)= 42×2/3=28)。そこで、データ列内で28データおき以上の間隔で1ビットのDSV制御ビットが挿入される(DSV区間が28ビット以上とされる)。これにより、偶奇性保存違反パターンによる影響を避けることができる。よって表3においては、28データ+1DSV制御ビットが、偶奇性保存違反パターンによる影響がない最小値である。DSV区間をこれ以上の間隔(例えば、45+1DSV)とすれば、DSV制御は通常通り行うことができる。
本実施の形態は、再生互換を考慮した変調装置を与えるが、再生互換をとるテーブルを、表2の変調テーブルとし、性能を向上させた新規テーブルを、表3の変調テーブルとする。表2と表3を比較して明らかなように、両者の異なる部分、即ち、表3によって追加された部分は、以下の通りである。
<表4>
データパターン 符号パターン
i=4 01110111 (pre1)010 000 000 101(not010)
i=5 1001110111 $0$ 010 000 000 101(not010)
そこで、表4の変換処理が置換処理であることより、この置換処理を行うか行わないかを個別に制御することで、表3による符号語列でありながら、従来1,7PP符号(表2)による復調装置(デコーダ)での復調が可能となるように考慮することができる。
次に、本発明に係る変調装置の実施の形態を図面を参照しながら説明する。この実施の形態では、データ列が表3に従って、可変長符号(d,k;m,n;r)=(1,7;2,3;5)に変換される。
図1は本発明の変調装置の実施の形態の原理的構成を表している。変調装置1は、符号化装置11と、記録媒体13に符号列を記録する記録部12により構成されている。符号化装置11は、DSV制御ビット挿入部21、変調部22、同期パターン挿入部23、NRZI化部24により構成されている。変調部22は、RLL変換パターン処理部51、置換パターン処理部52、変換パターン決定部53、および置換パターン処理制御部54により構成されている。
RLL変換パターン処理部51はRLL変換パターンのテーブル(第1のテーブル)を有し、置換パターン処理部52は置換パターンのテーブル(第2のテーブル)を有する。RLL変換パターン処理部51は、DSV制御ビット挿入部21からの入力データから、RLL規則を守った符号語列(RLL変換パターン処理情報)を発生する。置換パターン処理部52は、入力データから、最小ランの連続を制限するパターンに従った符号語列(置換パターン処理情報)を発生する。なお、表3の各変換パターンは、偶奇性保存パターンはもとより、偶奇性保存違反パターンも、同期パターンが挿入されるDSV区間と挿入されないDSV区間のいずれの区間においても使用可能とされている。即ち、使用位置は制限されない。置換パターン処理制御部54は、置換パターン処理部52が出力する所定の置換パターンに関する情報を用いて、置換パターン処理制御情報を生成する。変換パターン決定部53は、RLL変換パターン処理情報、置換パターン処理情報、そして置換パターン処理制御情報を用いて、変換パターンを決定し、符号語列を出力する。
RLL変換パターン処理部51は、以下の変換を行う。即ち、RLL変換パターン処理部51は、再生互換をとる他のテーブル(表2のテーブル)に対応するテーブルとしての表3のテーブルの一部として、以下の表5のテーブルを有する。
<表5>
データパターン 符号パターン
i=1 11 *0*
10 001
01 010
i=2 0011 010 100
0010 010 000
0001 000 100
i=3 000011 000 100 100
000010 000 100 000
000001 010 100 100
000000 010 100 000
i=4 00001000 000 100 100 100
00000000 010 100 100 100
置換パターン処理部52は、以下の表6の変換を行う。
<表6>
データパターン 符号パターン
i=3 110111 001 000 000(next010)
i=4 01110111 (pre1)010 000 000 101(not010)
i=5 1001110111 $0$ 010 000 000 101(not010)
置換パターン処理部52が置換パターン処理制御部54へ情報を送るのは、表4の変換制御対象パターンの変換を行ったときである。
変換パターン決定部53は、RLL変換パターン処理情報、置換パターン処理情報、および置換パターン処理制御情報を用いて、変換パターンを決定し、同期パターン挿入部23に出力する。置換パターン処理制御情報は、上述した2通りの置換パターンの置換許可フラグである。置換許可フラグがonであれば、所定の置換パターンがあった時、変換パターン決定部53においてその置換パターンによる処理が選択される。一方、置換許可フラグがoffであれば、置換パターンがあったとしても、変換パターン決定部53において、その置換パターンによる処理は選択されない。
同期パターン挿入部23は入力された符号列に同期パターンを挿入し、NRZI化部24に出力する。NRZI化部24は同期パターンが挿入された符号列をNRZI化する。記録部12はNRZI化された符号列を、光ディスクあるいは光磁気ディスクなどよりなる記録媒体13に記録する。
図2は、変調装置1の実施の形態の構成を示すブロック図である。図1に示される構成の他、直前符号検出部81と総合検出部82を有する検出部61が設けられている。また、DSV制御ビット挿入部21は、入力されたデータにDSV制御ビットを加算する加算器41を有している。
加算器41は、入力されたデータ列に、DSV制御ビットを所定の間隔で挿入する。DSV制御ビットの含まれた入力データ列は、RLL変換パターン処理部51と置換パターン処理部52へ送られる。RLL変換パターン処理部51は、表3の基礎パターン部分と、最小ランk=7を実現するための置換パターンを有しており(RLL変換パターンを有しており)、RLL規則を守るように変換パターン処理を行い、その処理情報を変換パターン決定部53へ供給する。この変換パターン処理には、直前符号検出部81からの情報が用いられる。またRLL変換パターン処理部51は、同期パターンを挿入するための終端テーブルを持っており、所定の位置で終端させるように、必要に応じて終端テーブルを用いる。終端テーブルが用いられた際には、その情報が同期パターン内に与えられる。
置換パターン処理部52は、表3の最小ランdの連続を制限する置換パターンを含んでおり、所望の最小ランの連続回数までに制限するように処理を行い、その処理情報を変換パターン決定部53へ供給する。この処理には、直前符号検出部81からの情報と、さらに総合検出部82からの情報が用られる。置換パターン処理制御部54は、表4の変換制御対象パターンに関して制御処理を行っており、変換制御対象パターンによる変換処理を行うか、行わないかの制御を行う。例えば、所定の条件下では、変換制御対象パターンによる変換処理が禁止される。置換パターン処理情報は、2つの変換制御対象パターンのそれぞれに対して出力される。
変換パターン決定部53は、RLL変換パターン処理部51からの情報と、置換パターン処理部52からの情報、そして置換パターン処理制御部54からの情報により、最終的に確定した変換パターンを選び出し、その符号語列を出力する。例えば、置換パターン処理制御情報により、変換処理が禁止された置換パターンは、変換パターンとして選択されない。符号語列には、同期パターン挿入部23により所定の間隔、所定の位置で同期パターンが挿入される。同期パターンの決定には、必要に応じて、RLL変換パターン処理部51から出力された終端テーブル処理情報が用いられる。そして同期パターン挿入部23の出力は、NRZI化部24において、NRZI化され、記録符号列(あるいは伝送路に出力する場合は伝送符号列)として出力される。この出力は、記録部12により記録媒体13に記録されるか、あるいは所定の伝送路に伝送される。
図2においてさらに、直前符号検出部81は、変換パターン決定部53が出力する最終的に確定した変換パターン、および同期パターン挿入部23の出力から、RLLを保証するために必要な情報を生成し、RLL変換パターン処理部51及び置換パターン処理部52へ供給する。
総合検出部82は、変換パターン決定部53が出力する最終的に確定した変換パターン、および同期パターン挿入部23が出力する同期パターンから、最小ランの連続制限回数を保証するために必要な情報を生成し、置換パターン処理部52へ供給する。
置換パターン処理制御部54はこのほか、図示していないが、クリア信号が入力されており、例えば、クリア信号によって、必要に応じて所定の間隔で内部情報及び出力をクリアさせることができる。また、制御信号が入力されており、例えば、制御信号によって、必要に応じて処理制御を切り替えることができる。
また各部の動作のタイミングは、図示しないタイミング管理部から供給される、タイミング信号に同期して管理されている。
図3は、符号化装置11のより詳細な構成を示すブロック図である。DSV制御ビット挿入部21は、加算器41の他、シフトレジスタ42を有している。RLL変換パターン処理部51は、変換パターン検出部121、変換テーブル122(122A乃至122D)、セレクタ123、および不確定ビット決定部124を有している。置換パターン処理部52は、最小ラン連続制限パターン検出予想部111、最小ラン連続制限パターン検出部112、最小ラン連続制限テーブル113(113A,113B)、不確定ビット決定部114、特定規則変換パターン検出部115、および特定規則変換テーブル116により構成されている。
入力されたデータ列には、加算器41によりDSV制御ビットが所定の間隔で挿入される。DSV制御ビットの含まれた入力データ列は、シフトレジスタ42により1データずつシフトされるが、処理は2データ単位で行われる。変換パターン検出部121、最小ラン連続制限パターン検出部112、最小ラン連続制限パターン検出予想部111、そして、特定規則変換パターン検出部115のそれぞれに対して、各部がその処理を行うのに必要な2データ単位のデータ列が供給される。
表3を適用した場合においては、各部がその処理を行うのに必要な参照データの最大ビット数は、15データとなっている。
変換パターン検出部121は、データ列より、RLL規則を守る変換パターンの検出を行い、その結果情報を変換パターン決定部53へ出力するとともに、各変換テーブル122A乃至122Dへも出力する。ここで変換テーブル122A内にある不確定ビットについては、セレクタ123と不確定ビット決定部124によって不確定ビットが決定され、出力する。各変換テーブル122A乃至122Dは、検出した変換パターン(変換チャネルビット列)を、変換パターン決定部53に供給する。また変換パターン検出部121は、必要に応じて不確定パターン識別情報を出力する。
最小ラン連続制限パターン検出部112は、データ列内において、最小ランの連続回数を制限するための変換パターンを検出した時、その情報を最小ラン連続制限パターン検出情報として、変換パターン決定部53へ出力するとともに、各最小ラン連続制限テーブル113A,113Bへも出力する。ここで最小ラン連続制限テーブル113B内にある不確定ビットについては、不確定ビット決定部114によって不確定ビットが決定され、出力する。各最小ラン連続制限テーブル113A,113Bは、検出した変換パターン(変換チャネルビット列)を、変換パターン決定部53に供給する。最小ラン連続制限パターン検出情報はこのほか、置換パターン処理制御部54へも出力される。
最小ラン連続制限パターン検出予想部111は、データ列の先頭では無い所定位置において、最小ランの連続回数を制限するための変換パターンのうち、所定の変換パターンを検出した時、その情報を変換パターン決定部53へ出力し、さらに置換パターン処理制御部54へも出力する。
特定規則変換パターン検出部115は、表3における、最小ランdの連続を制限する置換パターンのうち、データ列内でDSV制御を行うことの出来ない特定規則を持った置換パターンを有しており、その変換パターンを検出した時、その情報を特定規則変換パターン検出情報として、変換パターン決定部53へ出力するとともに、特定規則変換テーブル116へも出力する。特定規則変換テーブル116は、検出した変換パターン(変換チャネルビット列)を、変換パターン決定部53に供給する。特定規則変換パターン検出情報はこのほか、置換パターン処理制御部54へも出力される。特定規則変換パターンの検出には必要に応じて、直前に挿入された同期パターンの情報が用いられる。
置換パターン処理制御部54は、表4のテーブルにおける変換パターンに関して制御処理を行っており、最小ラン連続制限パターン検出部112、最小ラン連続制限パターン検出予想部111、そして、特定規則変換パターン検出部115からの情報にもとづき、表4のテーブルにおける変換パターンの変換処理を行うか、行わないかの制御を行う。所定の条件下では、表4のテーブルにおける変換パターンの変換処理が禁止される。置換パターン処理制御情報は、表4の各変換パターンに対して出力される。
変換パターン決定部53は、変換パターン検出部121、最小ラン連続制限パターン検出部112、最小ラン連続制限パターン検出予想部111、特定規則変換パターン検出部115、そして、置換パターン処理制御部54からの情報を用いて、各変換テーブル122A乃至122D、最小ラン連続制限テーブル113A,113B、特定規則変換テーブル116からのチャネルビット列出力より、変換パターンを決定して出力する。置換パターン処理制御情報により、変換処理が禁止された置換パターンは選択されない。
同期パターン挿入部23は、決定された変換パターン列に対して、所定の間隔、所定の位置で同期パターンを挿入し、出力する。同期パターンの決定には、必要に応じて、変換パターン検出部121にて発生し、変換パターン決定部53を通して得られた、終端テーブル処理に関する情報が用いられる。
NRZI化部24は、同期パターン挿入後のチャネルビット列をNRZI化し、記録符号列(あるいは伝送路に出力する場合は伝送符号列)として出力する。記録媒体13には、この記録符号列が記録される。あるいは所定の伝送路には、この伝送符号列が伝送される。
図3においてさらに、直前符号検出部81は、変換パターン決定部53および同期パターン挿入部23の出力に基づいて、RLLを保証するために必要な情報を生成し、不確定ビット決定部114と不確定ビット決定部124へ供給する。
総合検出部82は、変換パターン決定部53と同期パターン挿入部23の出力に基づいて、最小ランの連続制限回数を保証するために必要な情報を生成し、不確定ビット決定部114へ供給するとともに、別途特定規則変換パターン検出部115へも供給する。
また各部の動作のタイミングは、図示しないタイミング管理部から供給される、タイミング信号に同期して管理されている。
次に、図4のフローチャートを参照して、図1乃至図3の変調装置1の記録方法(変調方法)について説明する。ステップS1において、DSV制御ビット挿入部21の加算器41は、入力されたデータ列に対してDSV制御ビットを付加する。
ステップS2においてシフトレジスタ42は、加算器41より供給されたDSV制御ビットが付加されたデータ列を2ビット単位で保持する。ステップS3で最小ラン連続制限パターン検出予想部111により予想処理が、ステップS4で最小ラン連続制限パターン検出部112と最少ラン連続制限テーブル113により最小ラン連続制限パターン検出処理が、ステップS5で特定規則変換パターン検出部115と特定規則変換テーブル116により特定規則変換パターン検出処理が、そして、ステップS6でRLL変換パターン処理部51(変換パターン検出部121と変換テーブル122)により変換パターン検出処理が、それぞれ実行される。
なお、実際には、これらのステップS3乃至ステップS6の処理はそれぞれ並列して実行される。
ステップS3の予想処理の詳細は図5のフローチャートを参照して後述するが、これにより、データに変換パターン(110111)が途中(5ビット目)から含まれており、かつ、次のチャネルビットが“010”である場合には予想フラグ(D5)がonされ、変換パターン(110111)が途中(3ビット目)から含まれており、かつ、次のチャネルビットが“010”である場合には予想フラグ(D3)がonされる。そして、それ以外の場合には、予想フラグがoffされる。
これに対して、ステップS4の最小ラン連続制限パターン検出処理の詳細は図6のフローチャートを参照して後述するが、これによりデータが変換パターン(1001110111)である場合には、最小ラン連続制限パターン検出フラグ(10data)がonとされ、10データを15チャネルビットに変換する処理が実行される。また、データが変換パターン(110111)であり、次のチャネルビットが“010”である場合には、最小ラン連続制限パターン検出フラグ(6data)がonとされる。そして、それ以外の場合には、最小ラン連続制限データ検出フラグがoffとされる。
ステップS5の特定規則変換パターン検出処理の詳細は、図8のフローチャートを参照して後述するが、これにより、データがデータパターン(01110111)と一致し、かつ最小ラン連続制限総合フラグ(2)がonである場合には、特定規則変換パターン検出フラグがonとされ、8データが12チャネルビットに変換される。そして、それ以外の場合には特定規則変換パターン検出フラグがoffとされる。
ステップS6の変換パターン検出処理の詳細は図9のフローチャートを参照して後述するが、これにより、8データを12チャネルビットに変換する処理、6データを9チャネルビットに変換する処理、4データを6チャネルビットに変換する処理、または2データを3チャネルビットに変換する処理が実行される。
図4に戻って、次に、ステップS7において、置換パターン処理制御部54により置換パターン処理制御が実行される。この処理の詳細は、図13を参照して後述するが、これにより最少ラン連続制限パターン検出フラグ(10data)がonであり、かつ予想フラグ(D5)がoffである状態の回数が、予め設定されている所定の基準値以上となったとき、置換パターン制御フラグ(1)がoffとされる。置換パターン制御フラグ(1)がoffとなったとき、10データの最少ラン連続制限パターン(表4のデータパターン(1001110111))の変換が禁止される。また、特定規則変換パターン検出フラグがonであり、かつ予想フラグ(D3)がoffである状態の回数が、予め設定されている所定の基準値以上となったとき、置換パターン制御フラグ(2)がoffとされる。置換パターン制御フラグ(2)がoffとなったとき、8データの最少ラン連続制限パターン(表4の偶奇性保存違反データパターン(01110111))の変換が禁止される。
ステップS8において、変換パターン決定部53は変換パターン決定処理を実行する。この変換パターン決定処理の詳細は図14のフローチャートを参照して後述するが、これによりRLL変換パターン処理部51の変換テーブル122により変換された符号パターン、最小ラン連続制限テーブル113により変換された符号パターン、または特定規則変換テーブル116により変換された符号パターンのいずれかが選択され、出力される。
ステップS9において、同期パターン挿入部23は、変換パターン決定部53より入力された、変換パターンが最終的に確定された符号列に対して同期パターンを挿入する。ステップS10において、NRZI化部24は、同期パターン挿入部23より供給された同期パターンが挿入されている符号列をNRZI化する。ステップS11において、記録部12は、NRZI化部24によりNRZI化された記録符号列を記録媒体13に記録する。
次に、図5のフローチャートを参照して、図4のステップS3における予想処理の詳細について説明する。
ステップS51において、最小ラン連続制限パターン検出予想部111は、予想フラグをクリアする。即ち、後述するステップS54,S57で出力される予想フラグ(D5),(D3)がクリアされる。ステップS52において、最小ラン連続制限パターン検出予想部111は、シフトレジスタ42より供給されたデータがデータパターン(xxxx110111)と一致するかを判定する。入力されたデータがデータパターン(xxxx110111)と一致する(データがデータパターン(110111)と5ビット目から一致する)場合には、ステップS53において、最小ラン連続制限パターン検出予想部111は、次のチャネルビットが“010”かを判定する。次のチャネルビットが“010”である場合には、ステップS54において、最小ラン連続制限パターン検出予想部111は、予想フラグ(D5)onを最小ラン連続制限パターン検出予想情報として変換パターン決定部53と置換パターン処理制御部54に出力する。このフラグは後述する図13のステップS333と図14のステップS362で利用される。
ステップS52において、データがデータパターン(xxxx110111)と一致しないと判定された場合、ステップS55において、最小ラン連続制限パターン検出予想部111は、データがデータパターン(xx110111)と一致するかを判定する。入力されたデータがデータパターン(xx110111)と一致する(データがデータパターン(110111)と3ビット目から一致する)場合には、ステップS56において、最小ラン連続制限パターン検出予想部111は、次のチャネルビットが“010”かを判定する。次のチャネルビットが“010”である場合には、ステップS57において、最小ラン連続制限パターン検出予想部111は、予想フラグ(D3)onを最小ラン連続制限パターン検出予想情報として変換パターン決定部53と置換パターン処理制御部54に出力する。このフラグは後述する図13のステップS339と図14のステップS368で利用される。
ステップS53において、次のチャネルビットが“010”ではないと判定された場合(“000”,“101”、または“001”である場合)、ステップS55において、データがデータパターン(xx110111)と一致しないと判定された場合、またはステップS56において、次のチャネルビットが“010”ではないと判定された場合(“000”,“101”、または“001”である場合)、ステップS58において、最小ラン連続制限パターン検出予想部111は、予想フラグoffを出力する。この予想フラグoffは、ステップS54で生成される予想フラグ(D5)のoffを意味するとともに、ステップS57で生成される予想フラグ(D3)のoffをも意味する。
次に、図6のフローチャートを参照して、図4のステップS4の最小ラン連続制限パターン検出処理について説明する。
ステップS71において、最小ラン連続制限パターン検出部112は、検出フラグをクリアする。即ち、後述するステップS73,S78で出力される最小ラン連続制限パターン検出フラグ(10data),(6data)がクリアされる。ステップS72において、最小ラン連続制限パターン検出部112は、シフトレジスタ42より供給されたデータがデータパターン(1001110111)と一致するかを判定する。入力されたデータがデータパターン(1001110111)と一致する場合には、ステップS73において、最小ラン連続制限パターン検出部112は、最小ラン連続制限パターン検出フラグ(10data)onを最小ラン連続制限パターン検出情報として、変換パターン決定部53と最小ラン連続制限テーブル113A,113Bの他、置換パターン処理制御部54に出力する。このフラグは後述する図13のステップS332と図14のステップS361で利用される。
ステップS74において、最小ラン連続制限テーブル113Bは、10データ/15チャネルビット処理を実行する。この処理の詳細は図7に示されている。
図7のステップS91において、最小ラン連続制限テーブル113Bは符号パターン“$0$ 010 000 000 101”を不確定ビット決定部114に出力する。ステップS92において、不確定ビット決定部114は、直前符号フラグはonかを判定する。直前符号フラグは、直前符号検出部81が出力するフラグであり、直前の符号語列の1チャネルビットが“1”のときonとされる(その詳細は、図11を参照して後述する)。
ステップS92において、直前符号フラグがonであると判定された場合(直前の符号が“1”である場合)、ステップS96において、不確定ビット決定部114は、ステップS91で出力された不確定符号を含む符号語“$0$”を“000”に設定し、ステップS97において“000 010 000 000 101”を出力する。
ステップS92において、直前符号フラグがonではない(offである)と判定された場合(直前の符号が“0”である場合)、ステップS93において、不確定ビット決定部114は、最小ラン連続制限総合フラグ(1)がonかを判定する。この最小ラン連続制限総合フラグ(1)は、総合検出部82により検出されるフラグであり、直前符号語列の3チャネルビットが“010”のときonとされる(その詳細は、図12を参照して後述する)。
ステップS93において最小ラン連続制限総合フラグ(1)がonであると判定された場合(直前の符号が“010”である場合)には、ステップS96において、不確定ビット決定部114は、直前符号フラグがonである場合と同様に、“$0$”に“000”を設定し、ステップS97においてチャネルビット列“000 010 000 000 101”を出力する。この置換パターン(チャネルビット列)は図14のステップS364で選択、出力される。
ステップS93において、最小ラン連続制限総合フラグ(1)がonではない(offである)と判定された場合(直前の符号が“010”ではない場合)、ステップS94において、不確定ビット決定部114は、符号語“$0$”に“101”を設定し、ステップS95においてチャネルビット列“101 010 000 000 101”を出力する。この置換パターン(チャネルビット列)は図14のステップS364で選択、出力される。
図6に戻って、ステップS72において、データがデータパターン(1001110111)と一致しないと判定された場合、ステップS75において、最小ラン連続制限パターン検出部112は、データがデータパターン(110111)と一致するかを判定する。データがデータパターン(110111)と一致する場合には、ステップS76において、最小ラン連続制限パターン検出部112は、次の3チャネルビットが“010”かを判定する。次の3チャネルビットが“010”である場合には、ステップS78において、最小ラン連続制限パターン検出部112は、最小ラン連続制限パターン検出フラグ(6data)onを出力する。このフラグは図14のステップS365で利用される。ステップS79において、最小ラン連続制限テーブル113Aは、置換パターン“001 000 000”を変換パターン決定部53に出力する。この置換パターン(チャネルビット列)は図14のステップS366で選択、出力される。
ステップS75において、入力されたデータがデータパターン(110111)と一致しないと判定された場合、並びにステップS76において、次の3チャネルビットが“010”ではないと判定された場合には、ステップS77において、最小ラン連続制限パターン検出部112は、最小ラン連続制限データ検出フラグoffを変換パターン決定部53に出力する。この最小ラン連続制限パターン検出フラグのoffは、最小ラン連続制限パターン検出フラグ(10data)がoffであることを意味するとともに、最小ラン連続制限パターン検出フラグ(6data)がoffであることを意味する。
次に図8のフローチャートを参照して、図4のステップS5における特定規則変換パターン検出処理について説明する。
ステップS151において、特定規則変換パターン検出部115は、データがデータパターン(01110111)と一致するかを判定する。データがデータパターン(01110111)と一致する場合、ステップS152において、特定規則変換パターン検出部115は、最小ラン連続制限総合フラグ(2)がonかを判定する。最小ラン連続制限総合フラグ(2)がonである場合(図12を参照して後述するように、直前の符号語列の1チャネルビットが“1”である場合)、ステップS153で特定規則変換パターン検出部115は、特定規則変換パターン検出フラグonを出力する。このフラグは図13のステップS338と図14のステップS367で利用される。ステップS154において、特定規則変換テーブル116は、8データを12チャネルビットに変換する。具体的には、データパターン(01110111)が符号パターン“010 000 000 101”に一括して変換される。このチャネルビット列は図14のステップS370で選択、出力される。
ステップS151において、データがデータパターン(01110111)と一致しないと判定された場合、並びにステップS152において、最小ラン連続制限総合フラグ(2)がonではない(offである)と判定された場合(直前の符号語列の1チャネルビットが“0”である場合)、ステップS155において、特定規則変換パターン検出部115は特定規則変換パターン検出フラグoffを出力する。
次に、図9のフローチャートを参照して、図4のステップS6における変換パターン検出処理の詳細について説明する。
ステップS211において、変換パターン検出部121は、シフトレジスタ42より入力されたデータがデータパターン(00001000),(00000000)と一致するかを判定する。入力されたデータがデータパターン(00001000)または(00000000)と一致する場合には、ステップS212において、変換パターン検出部121は、8データ/12チャネルビットの変換パターン決定情報を出力する。この情報は、変換パターン決定部53と変換テーブル122A乃至122Dに供給される。ステップS213において、変換テーブル122Dは、8データを12チャネルビットに変換する。そして、12チャネルビットは変換パターン決定部53に供給される。即ち、入力されたデータがデータパターン(00001000)または(00000000)と一致する場合には、それぞれ符号列“000 100 100 100”または“010 100 100 100”が出力される。ステップS212で出力された情報は後述する図14のステップS371で利用され、ステップS213で変換された符号列はステップS372で選択、出力される。
ステップS211において、入力されたデータがデータパターン(00001000),(00000000)と一致しないと判定された場合、ステップS214において、変換パターン検出部121は、入力されたデータがデータパターン(000011),(000010),(000001),(000000)と一致するかを判定する。入力されたデータがこの4つのいずれかと一致する場合には、ステップS215において変換パターン検出部121は、6データ/9ャネルビット決定情報を変換パターン決定部53と変換テーブル122A乃至122Dに出力する。ステップS216において、変換テーブル122Cは、6データを9チャネルビットに変換し、変換パターン決定部53に出力する。即ち、入力されたデータがデータパターン(000011),(000010),(000001),(000000)のいずれかである場合には、符号列“000 100 100”,“000 100 000”,“010 100 100”,“010 100 000”がそれぞれ出力される。ステップS215で出力された情報は図14のステップS373で利用され、ステップS216で変換された符号列はステップS374で選択、出力される。
ステップS214において、入力されたデータがデータパターン(000011),(000010),(000001),(000000)のいずれとも一致しないと判定された場合には、ステップS217において変換パターン検出部121は、入力されたデータがデータパターン(0011),(0010),(0001)と一致するかを判定する。入力されたデータがこの3つのデータパターンのいずれかと一致する場合には、ステップS218において変換パターン検出部121は、4データ/6チャネルビットの変換パターン決定情報を変換パターン決定部53と変換テーブル122A乃至122Dに出力する。ステップS219において変換テーブル122Bは、4データを6チャネルビットに変換し、変換パターン決定部53に出力する。即ち、入力されたデータがデータパターン(0011)と一致する場合には符号列“010 100”が出力され、入力データがデータパターン(0010)と一致する場合には符号列“010 000”が出力され、入力データがデータパターン(0001)と一致する場合には符号列“000 100”が出力される。ステップS218で出力された情報は図14のステップS375で利用され、ステップS219で変換された符号列はステップS376で選択、出力される。
ステップS217において、入力されたデータがデータパターン(0011),(0010),(0001)のいずれとも一致しないと判定された場合には、ステップS220において変換パターン検出部121は、入力されたデータがデータパターン(11),(10),(01)と一致するかを判定する。入力されたデータがこの3つのデータパターンのいずれかと一致する場合には、ステップS221において変換パターン検出部121は、2データ/3チャネルビットの変換パターン決定情報を変換パターン決定部53と変換テーブル122A乃至122Dに出力する。この情報は、図14のステップS377,S378で利用される。
ステップS222において、変換パターン検出部121は、入力された2データはデータパターン(11)と一致するかを判定する。入力されたデータがデータパターン(11)と一致する場合には、ステップS223において変換パターン検出部121は、不確定パターン識別情報をセレクタ123に出力する。不確定パターン識別情報は、後述する図10のステップS252で利用される。
ステップS222において、入力されたデータがデータパターン(11)と一致しないと判定された場合においては、ステップS223の処理はスキップされる。ステップS223の処理の後、またはステップS222でデータがデータパターン(11)と一致しないと判定された場合には、ステップS224において、変換テーブル122Aは、2データ/3チャネルビット処理を実行する。この2データ/3チャネルビット処理の詳細は図10のフローチャートに示されている。
次に、図10のフローチャートを参照して、図9のステップS224における2データ/3チャネルビット処理の詳細について説明する。
ステップS251において、変換テーブル122Aは、2データを3チャネルビットに変換してセレクタ123に出力する。即ち、変換テーブル122Aは、入力されたデータがデータパターン(11)と一致する場合には符号列“*0*”を出力し、入力されたデータがデータパターン(10)と一致する場合には符号語“001”を出力し、入力されたデータがデータパターン(01)と一致する場合には符号語“010”を出力する。
ステップS252において、セレクタ123は、不確定パターン識別情報を取得したかを判定する。不確定パターン識別情報(図9のステップS223で出力される)が変換パターン検出部121より取得されてない場合には、ステップS253においてセレクタ123は、3チャネルビットを変換パターン決定部53に出力する処理を実行する。具体的には、変換テーブル122Aより入力された元々不確定ビットを含まないチャネルビット“001”,“010”が変換パターン決定部53に出力される。ステップS253で出力された符号列は、図14のステップS380で選択、出力される。
これに対して、ステップS252において、不確定パターン識別情報が変換パターン検出部121より取得されたと判定された場合、ステップS254において、セレクタ123は3チャネルビット(“*0*”)を不確定ビット決定部124に出力する。ステップS255において、不確定ビット決定部124は直前符号フラグはonかを判定する。この直前符号フラグは、後述する図11のステップS303,S304の処理に基づき、直前符号検出部81から供給されている。直前符号フラグがonである場合(直前の符号語列の1チャネルビットが“1”である場合)には、ステップS256において不確定ビット決定部124は、符号語“000”を変換パターン決定部53に出力する。これに対して、直前符号フラグがonではない(offである)場合(直前の符号語列の1チャネルビットが“0”である場合)、ステップS257において不確定ビット決定部124は、符号語“101”を変換パターン決定部53に出力する。ステップS256,S257で出力された符号列は、図14のステップS379で選択、出力される。
次に、図11と図12のフローチャートを参照して、直前符号検出部81と総合検出部82の処理について説明する。
最初に、図11のフローチャートを参照して、直前符号検出部81の直前符号検出処理について説明する。
ステップS301において、直前符号検出部81は、同期パターンが直前に挿入されている場合は、挿入パターンの最後のチャネルビットを直前の符号語列の1チャネルビットとする。即ち、直前符号検出部81は、同期パターン挿入部23からの出力に基づいて、同期パターンが挿入されているかを判定し、挿入されている場合には、次のステップS302の判定における直前の符号語列の1チャネルビットとして、挿入パターン(同期パターン)の最後の1チャネルビットを選択する。
ステップS302において、直前符号検出部81は、変換パターン決定部53により最終的に確定された符号列より、次の変換処理の直前の符号列の1チャネルビットは“1”かを判定する。直前の符号列の1チャネルビットが“1”である場合には、ステップS303において直前符号検出部81は、直前符号フラグonを出力する。これに対して、ステップS302において、直前の符号列の1チャネルビットが“1”ではないと判定された場合(“0”であると判定された場合)、ステップS304において、直前符号検出部81は直前符号フラグoffを出力する。この直前符号フラグは、不確定ビット決定部124と不確定ビット決定部114に出力され、図7のステップS92と図10のステップS255で利用される。
次に、図12のフローチャートを参照して、総合検出部82による最小ラン連続制限総合検出処理について説明する。
ステップS321において、総合検出部82は、同期パターンが直前に挿入されている場合は、挿入パターンの最後の3チャネルビットを直前の符号語列の3チャネルビットとする。即ち、総合検出部82は、同期パターン挿入部23からの出力に基づいて、同期パターンが挿入されているかを判定し、挿入されている場合には、次のステップS322の判定における直前の符号語列の3チャネルビットとして、挿入パターン(同期パターン)の最後の3チャネルビットを選択する。
ステップS322において、総合検出部82は、変換パターン決定部53により決定された符号列より、次の変換処理の直前の符号語列の3チャネルビットは“010”かを判定する。直前の符号語列の3チャネルビットが“010”である場合には、ステップS323において、総合検出部82は、最小ラン連続制限総合フラグ(1)onを出力する。ステップS322において、直前の符号語列の3チャネルビットが“010”ではないと判定された場合(“000”,“101”,“001”である場合)、ステップS324において、総合検出部82は、最小ラン連続制限総合フラグ(1)offを出力する。この最小ラン連続制限総合フラグ(1)は不確定ビット決定部114に出力され、図7のステップS93で利用される。
ステップS325において、総合検出部82は、変換パターン決定部53により決定された符号列より、次の変換処理の直前の符号語列の1チャネルビットは“1”かを判定する。直前の符号語列のチャネルビットが“1”である場合には、ステップS326において、総合検出部82は、最小ラン連続制限総合フラグ(2)onを出力する。ステップS325において、直前の符号語列の1チャネルビットが“1”ではないと判定された場合(“0”である場合)、ステップS327において、総合検出部82は、最小ラン連続制限総合フラグ(2)offを出力する。この最小ラン連続制限総合フラグ(2)は特定規則変換パターン検出部115に出力され、図8のステップS152で利用される。
次に、図13を参照して、図4のステップS7の置換パターン処理制御処理について説明する。ステップS331において、置換パターン処理制御部54は、所定間隔でカウント(count1,count2)をクリアする。即ち後述するステップS334,S340で使用される変数count1,count2が、ここで初期化される。この処理は例えば、符号列の誤りの訂正の単位であるECC(Error-Correcting Code)ブロック毎に行われる。
ステップS332において、置換パターン処理制御部54は、最少ラン連続制限パターン検出フラグ(10data)はonかを判定する。このフラグは図6のステップS73,S77で出力されたものである。最少ラン連続制限パターン検出フラグ(10data)がonである場合(データがデータパターン(1001110111)と一致する場合)、ステップS333において、置換パターン処理制御部54は、予想フラグ(D5)がonかを判定する。このフラグは図5のステップS54,S58で出力されたものである。
予想フラグ(D5)がonではない(offである)場合(データがデータパターン(xxxx110111)と一致しないか、または一致したとしても、次のチャネルビットが“010”でない場合)、ステップS334において、置換パターン処理制御部54は、変数count1を1だけインクリメントする(count1 = count1+1)。ステップS335において、置換パターン処理制御部54は、(count1 + count2)が基準回数以上かを判定する。カウント値(count1 + count2)が予め定められている基準回数(基準値)より小さい場合、ステップS337において置換パターン処理制御部54は、置換パターン制御フラグ(1)をonする。これに対して、カウント値(count1 + count2)が基準値以上である場合、ステップS332において最少ラン連続制限パターン検出フラグ(10data)がoffであると判定された場合、並びにステップS333で予想フラグ(D5)がonであると判定された場合、ステップS336において置換パターン処理制御部54は、置換パターン制御フラグ(1)をoffする。
さらに、ステップS336,S337の処理の後、ステップS338において、置換パターン処理制御部54は、特定規則変換パターン検出フラグはonかを判定する。このフラグは図8のステップS153,S155で出力されたものである。特定規則変換パターン検出フラグがonである場合(データがデータパターン(01110111)と一致し、かつ直前の符号が“1”である場合)、ステップS339において、置換パターン処理制御部54は、予想フラグ(D3)がonかを判定する。このフラグは図5のステップS57,S58で出力されたものである。
予想フラグ(D3)がonではない(offである)場合(データがデータパターン(xx110111)と一致しないか、または一致したとしても、次のチャネルビットが“010”でない場合)、ステップS340において、置換パターン処理制御部54は、変数count2を1だけインクリメントする(count2 = count2+1)。ステップS341において、置換パターン処理制御部54は、(count1 + count2)が基準回数以上かを判定する。カウント値(count1 + count2)が基準値より小さい場合、ステップS343において置換パターン処理制御部54は、置換パターン制御フラグ(2)をonする。これに対して、カウント値(count1 + count2)が基準値以上である場合、ステップS338において特定規則変換パターン検出フラグがoffであると判定された場合、並びにステップS339で予想フラグ(D3)がonであると判定された場合、ステップS342において置換パターン処理制御部54は、置換パターン制御フラグ(2)をoffする。
変数count1は、例えばECCブロック内において、最少ラン連続制限パターン検出フラグ(10data)がonであり、かつ予想フラグ(D5)がoffである状態が発生した場合の回数、即ちデータパターン(1001110111)が対応する符号パターン“$0$ 010 000 000 101”に変換された回数(使用頻度)を表す。count2は、特定規則変換パターン検出フラグがonであり、かつ予想フラグ(D3)がoffである状態が発生した場合の回数、即ち、偶奇性保存違反データパターン(01110111)が、対応する偶奇性保存違反符号パターン“010 000 000 101”に変換された回数(使用頻度)を表す。カウント値(count1 + count2)は結局、表4の変換テーブルによるパターン変換が行われた回数を示している。
図14を参照して後述するように、置換パターン制御フラグ(1)(許可フラグ)がonである場合、ステップS363,S364において、図6のステップS74でデータパターン(1001110111)を変換した符号パターン“$0$ 010 000 000 101”(“101 010 000 000 101”,“000 010 000 000 101”)が選択、出力される(即ち、表2の変換テーブルに対応した復調装置では復調できない部分の変換が行われる)。これに対して、置換パターン制御フラグ(1) (許可フラグ)がoffである場合、符号パターン“101 010 000 000 101”,“000 010 000 000 101”は選択されず、データパターン(1001110111)を個別に変換した符号パターン(データパターン(10),(01),(11),(01),(11)として変換した符号パターン)が選択、出力される(即ち、表2の変換テーブルに対応した復調装置で復調できる部分の変換が行われる)。
同様に、置換パターン制御フラグ(2)(許可フラグ)がonである場合、図14のステップS369,S370において、図8のステップS154でデータパターン(01110111)を変換した符号パターン“010 000 000 101”が選択、出力される(即ち、表2の変換テーブルに対応した復調装置では復調できない部分の変換が行われる)。これに対して、置換パターン制御フラグ(2) (許可フラグ)がoffである場合、符号パターン“010 000 000 101”は選択されず、データパターン(01110111)の個別に変換した符号パターン(データパターン(01),(11),(01),(11)として変換した符号パターン)が選択、出力される(即ち、表2の変換テーブルに対応した復調装置で復調できる部分の変換が行われる)。
表2の変換テーブルに対応した復調装置(従来の装置)によって復調できない部分の変換結果は、復調エラーとなる。そこで、図13のステップS335およびS341における、カウント値(count1 + count2)と比較される基準回数として、例えばECCブロックにおいて、発生した誤りを訂正することが可能な範囲内の所定の値に予め定めておく。これにより、従来の装置では復調が出来ない部分の変換が行われたとしても、ECCブロックにおけるエラー訂正処理によって、元のデータ列を得ることができる。
すなわち、従来の変換テーブルを改良し、一部が従来の変換テーブルと共通する新たな変換テーブルを開発した場合に、改良された変換テーブルに基づき変調(変換)された符号を、本来その改良された符号を復調する機能を有しない、改良前の符号を復調する装置により復調させることが可能になる。
なお、本実施の形態においては、表4のテーブルが、最小ラン連続制限テーブル113Bと特定規則変換テーブル116により構成されているのに対して、変換テーブル122(122A乃至122D)と最小ラン連続制限テーブル113Aにより、再生互換の対象とされる表2のテーブル(既存の変調装置(従来の装置)が有しているテーブル)が構成されており、全体として表3のテーブルが構成されている。
次に、図14のフローチャートを参照して、図4のステップS8における変換パターン決定処理の詳細について説明する。
ステップS361において、変換パターン決定部53は、最小ラン連続制限パターン検出フラグ(10data)がonかを判定する。この最小ラン連続制限パターン検出フラグ(10data)は、図6のステップS73,S77で最小ラン連続制限パターン検出部112より出力されたものである。最小ラン連続制限パターン検出フラグ(10data)がonである場合(入力データがデータパターン(1001110111)と一致する場合)には、ステップS362において変換パターン決定部53は、予想フラグ(D5)がonかを判定する。この予想フラグ(D5)は、図5のステップS54,S58において最小ラン連続制限パターン検出予想部111より出力されたものである。
予想フラグ(D5)がonではない(offである)場合(入力データ列がデータパターン(xxxx110111)と一致しないか、または一致したとしても、次のチャネルビットが“010”でない場合)、ステップS363において変換パターン決定部53は、置換パターン制御フラグ(1)がonかを判定する。このフラグは図13のS336,S337において置換パターン処理制御部54により出力されたものである。置換パターン制御フラグ(1)がonである場合(カウント値(count1 + count2)が基準値(基準回数)より小さい場合)、符号パターン“$0$ 010 000 000 101”への変換(使用)が許可される。そこで、ステップS364において変換パターン決定部53は、置換パターン10データ/15チャネルビットを選択、出力する。具体的には、図7のステップS95,S97で出力された符号パターン“101 010 000 000 101”あるいは“000 010 000 000 101”が選択、出力される。
これに対して、置換パターン制御フラグ(1)がoffである場合(カウント値(count1 + count2)が基準値以上である場合)、ステップS364の処理は実行されない。
ステップS361において、最小ラン連続制限パターン検出フラグ(10data)がonではない(offである)と判定された場合(入力データのデータパターンは(1001110111)ではないと判定された場合)、ステップS365において変換パターン決定部53は、最小ラン連続制限パターン検出フラグ(6data)がonかを判定する。この最小ラン連続制限パターン検出フラグ(6data)は、図6のステップS78でデータパターンが(110111)であり、次の3チャネルビットが“010”である場合に出力されたものである。ステップS365において、最小ラン連続制限パターン検出フラグ(6data)がonであると判定された場合(データパターンが(110111)と一致し、次の3チャネルビットが“010”である場合)、ステップS366において変換パターン決定部53は、置換パターン6データ/9チャネルビットの変換出力を選択、出力する。即ち、図6のステップS79で変換された置換パターン“001 000 000”が選択、出力されることになる。
ステップS365において、最小ラン連続制限パターン検出フラグ(6data)がoffであると判定された場合(入力データがデータパターン(110111)ではないか、あるいはそうであったとしても次のチャネルビットが“010”ではない場合)、ステップS362で予想フラグ(D5)がonであると判定された場合(データがデータパターン(1001110111)と一致し、さらにデータが(xxxx110111)で、かつ次のチャネルビットが“010”である場合)、並びにステップS363で置換パターン制御フラグ(1)がoffであると判定された場合(カウント値(count1 + count2)が基準値(基準回数)以上である場合)、ステップS367において変換パターン決定部53は、特定規則変換パターン検出フラグはonかを判定する。このフラグは図8のステップS153で、データがデータパターン(01110111)と一致し、直前の符号が“1”である場合にonとされる。
特定規則変換パターン検出フラグがonである場合(データがデータパターン(01110111)と一致し、直前の符号が“1”である場合)、ステップS368において変換パターン決定部53は、予想フラグ(D3)がonかを判定する。この予想フラグ(D3)は、図5のステップS57,S58において最小ラン連続制限パターン検出予想部111より出力されたものである。
予想フラグ(D3)がonではない(offである)場合(入力データ列がデータパターン(xx110111)と一致しないか、または一致したとしても、次のチャネルビットが“010”ではない場合)、ステップS369において変換パターン決定部53は、置換パターン制御フラグ(2)がonかを判定する。このフラグは図13のS342,S343において置換パターン処理制御部54により出力されたものである。置換パターン制御フラグ(2)がonである場合(カウント値(count1 + count2)が基準値(基準回数)より小さい場合)、符号パターン“010 000 000 101”への変換(使用)が許可される。そこで、ステップS370において変換パターン決定部53は、置換パターン8データ/12チャネルビットを選択し、出力する。具体的には、図8のステップS154で出力した置換パターン“010 000 000 101”が選択され、同期パターン挿入部23に出力される。一方、置換パターン制御フラグ(2)がoffである場合(カウント値(count1 + count2)が基準値以上である場合)、ステップS370の処理は実行されない。
ステップS367において、特定規則変換パターン検出フラグがoffであると判定された場合(データがデータパターン(01110111)と一致しない場合)、ステップS368で予想フラグ(D3)がonであると判定された場合(データがデータパターン(01110111)と一致し、直前の符号が“1”であり、さらに、データが(xx110111)で、かつ次のチャネルビットが“010”である場合)、並びにステップS369で置換パターン制御フラグ(2)がoffであると判定された場合(カウント値(count1 + count2)が基準値(基準回数)以上である場合)、ステップS371において変換パターン決定部53は、8データ/12チャネルビットの変換パターン決定情報を受信したかを判定する。この決定情報は、図9のステップS212で出力されたものである。8データ/12チャネルビットの変換パターン決定情報が受信されている場合には、ステップS372において変換パターン決定部53は、8データ/12チャネルビットの変換出力を選択、出力する。即ち、図9のステップS213で変換されたチャネルビット列“000 100 100 100”または“010 100 100 100”が選択、出力されることになる。
ステップS371において、8データ/12チャネルビットの変換パターン決定情報を受信していないと判定された場合には、ステップS373において変換パターン決定部53は、6データ/9チャネルビットの変換パターン決定情報を受信したかを判定する。この決定情報は、図9のステップS215で出力されたものである。6データ/9チャネルビットの変換パターン決定情報を受信した場合には、ステップS374において変換パターン決定部53は、6データ/9チャネルビットの変換出力を選択、出力する。即ち、図9のステップS216で出力されたチャネルビット“000 100 100”,“000 100 000”,“010 100 100”,“010 100 000”が選択、出力されることになる。
ステップS373において、6データ/9チャネルビットの変換パターン決定情報を受信してないと判定された場合には、ステップS375において変換パターン決定部53は、4データ/6チャネルビットの変換パターン決定情報を受信したかを判定する。この決定情報は、図9のステップS218で出力されたものである。4データ/6チャネルビットの変換パターン決定情報を受信している場合には、ステップS376において変換パターン決定部53は、4データ/6チャネルビットの変換出力を選択、出力する。即ち、図9のステップS219で出力されたチャネルビット“010 100”,“010 000”,“000 100”が選択、出力されることになる。
ステップS375において、4データ/6チャネルビットの変換パターン決定情報が受信されていないと判定された場合、ステップS377において変換パターン決定部53は、2データ/3チャネルビットの変換パターン決定情報を変換パターン検出部121より受信したかを判定する。この情報は、図9のステップS221において出力されたものである。2データ/3チャネルビットの変換パターン決定情報を受信した場合には、ステップS378において変換パターン決定部53は、さらにその2データ/3チャネルビットの変換パターン決定情報は、データ(11)の変換パターン決定情報かを判定する。即ち、不確定符号を含む符号に変換されるべきデータパターンであるのかが判定される。データ(11)の変換パターン決定情報を受信したと判定された場合には、ステップS379において変換パターン決定部53は、不確定ビット決定部124の3チャネルビット選択、出力する。具体的には、図10のステップS256,S257において出力された3チャネルビット“000”,“101”が選択出力される。
これに対して、ステップS378において、2データ/3チャネルビットの変換パターン決定情報が、データ(11)の変換パターン決定情報ではないと判定された場合(不確定符号を含む符号に変換されるデータのチャネルビットではないと判定された場合)、ステップS380において変換パターン決定部53は、セレクタの3チャネルビットを選択し、出力する。即ち、この場合には、図10のステップS253で出力された符号パターン“001”,“010”が選択、出力される。
以上のようにして変換パターンが決定されると、決定されたチャネルビットに相当する分だけデータ列がシフトレジスタ42においてシフトされ、次のデータの変換パターン決定処理が実行されることになる。
以上のようにして、基本構成を 1,7PP符号と同様とし、即ち、最小ランd=1と最大ランk=7、及び変換率(m:n)=(2:3)であり、データ列内の所定の位置に1ビットのDSV制御ビットを挿入することで効率良くDSV制御を行い、さらに、所定の識別ビットを持った、同期パターンが挿入された場合においても、最小ランの連続する回数を制限し、記録再生時のエラー伝搬特性を改善するような変換テーブルと変調装置を実現することができる。
さらに、所定のECCブロックの間隔内において、表4の変換が行われた回数をカウントしておき、基準回数までは、フラグをオン(許可)とし、基準回数以上になったらフラグをオフ(禁止)にする。こうすることによって、表4にある置換パターンの変換が行われた頻度を、再生互換性が与えられるように管理することができる。
すなわち、表3に基づく変調処理を行うことによって、記録再生時にエラーパターンとなりやすい、最小ランの連続する部位を減らし、より安定したシステムを与えることができるとともに、さらに、表3に基づく復調装置だけでなく、表2に基づく復調装置を用いても復調を行えるようにすることができるので、例えば表2のテーブルを含むフォーマットを持った、既に製品化された復調装置においても、本発明によって表3のテーブルを含むフォーマットを用いて記録された符号列を、再生することが可能となる。
ところで表3のテーブルより、特定規則変換パターン検出部115において、(01110111)と一致し、さらに直前に決定された変換パターンあるいは同期パターンの最終符号語が“1”であること(最終ラン連続制限総合フラグ(2))を検出に用いたが、これを変更して、所定の間隔で挿入されている同期パターンの位置を情報として、同期パターン挿入直後において(01110111)と一致することを検出に用いて、行うようにしてもよい。
そして、直前符号検出部81および総合検出部82が出力するフラグの供給先はテーブルが変更され、不確定ビットの位置が変化した場合には、その変化した位置に供給すれば良い。
また、不確定符号$,*は、テーブルに対して所望の条件を満たすために、直前の符号だけではなく、直後の符号も用いて決定してもよい。
また、図13の置換パターン処理制御処理において、表4の2つの変換パターンの使用禁止に異なる重みをつけたり、片方を全て禁止したりしてもよい。この場合、図13中の基準回数の設定を、基準回数(1)、基準回数(2)と、セパレートさせればよい。
このほか、表3のテーブルを内蔵した変調装置で、表2のフォーマットに基づいた符号語列を出力することができる。例えば、図3の置換パターン処理制御部54には、図示しない外部からの制御信号に基づき、置換パターンに対する変換処理を禁止する情報を出力させる。こうすることによって、変換パターン決定部53では、置換処理が禁止されることとなり、変換パターン決定部53からの出力は、表2のテーブルに基づいた符号語列とすることができる。
この場合の置換パターン処理制御部54における処理動作は、外部からの制御信号に基づき、置換パターン制御フラグ(1)及び置換パターン制御フラグ(2)のフラグを切り替えるようにするので、
図13については、
(置換パターン処理制御処理スタート)
↓
(外部からの置換パターン処理制御信号を受け取る)
↓
(置換パターン制御フラグ(1)を出力する)
↓
(置換パターン制御フラグ(2)を出力する)
↓
(リターン)
のように、外部からの制御信号に従って置換パターン制御フラグ(1),(2)を出すのみの簡単なフローチャートで示すことができる。
一方、図14にある動作は同様である。
また、外部からの制御信号に基づき、置換パターン制御フラグ(1),(2)をoffに固定できるようにした上で、図13の機能も実現するならば、以下のようにすればよい。
(置換パターン処理制御処理スタート)
↓
(外部からの置換パターン処理制御信号が有る場合は、
その情報を基準回数へ反映させて入力する)
↓
以下、図13のステップS331に続く。
すなわち、置換パターン制御フラグ(1),(2)をoffに固定する時は、図13中にある基準回数を0にすればよい。
例えば、互換性をとるべきディスクの記録密度と、互換性を取る必要のないディスクの記録密度に関する情報を、外部からの制御信号として取得し、記録密度が互換性を取る必要のないディスクの記録密度より高い場合には、置換パターン制御フラグ(1),(2)を常にonとし、記録密度が互換性を取る必要のないディスクの記録密度より低い場合には、置換パターン制御フラグ(1),(2)を図13に従ってonまたはoffとなるように制御することができる。また、ディスクがハイブリッド構造であり、互換性を取るべき部分と、互換性を取る必要のない部分が混在している場合は、各部分を識別フラグに基づいて識別し、互換性を取る必要のない部分では、置換パターン制御フラグ(1),(2)を常にonとし、互換性を取るべき部分では、置換パターン制御フラグ(1),(2)を図13に従ってonまたはoffとなるように制御することができる。これらのディスクの情報は、例えば、ディスク上のヘッダ位置に記録されているヘッダ情報の中のTOC(Table of Contents)情報から取得することができる。
さらに互換性を確保する期限を定めておき、一定期限までにおいて互換性を取るようにする場合は、内蔵時計などの時間的な情報に基づいて、一定の期限までは、置換パターン制御フラグ(1),(2)を図13に従ってonまたはoffとなるようにし、一定の期限が経過したときは、置換パターン制御フラグ(1),(2)を常にonとなるように制御することができる。あるいはこの制御を、LAN(Local Area Network)等の外部からの制御情報に基づき行うこともできる。
以上、表3を具体例として説明したが、表3のテーブルに限定されるものではなく、2つのテーブルAとテーブルBがあった場合、テーブルB内に、テーブルAに含まれない変換規則があるとき、本発明を適用することによって、テーブルBを搭載した変調装置による発生符号語列を、テーブルAを搭載した復調装置でも復調することができる。
1,7PP符号は、最小ランd=1、最大ランk=7、変換率(m:n)=(2:3)の変調テーブルにおいて、最小ラン長の繰り返し回数を制限する置換パターンを設けるようにしたので、
(1)高線密度での記録再生、およびタンジェンシャル・チルトに対する許容度が向上する。
(2)信号レベルが小さい部分が減少し、AGC(Auto Gain Control)やPLL(Phase-Locked Loop)等の波形処理の精度が向上し、総合特性を高めることができる。
(3)従来と比較して、ビタビ復号等の際のパスメモリ長を短く設計することができ、回路規模を小さくすることができる。
また、DSV制御区間を所定以上の長さにすることによって、DSV制御ビットを挿入する位置において、変調テーブルの変換パターンを構成するデータ列の「1」の個数と、符号語列の「1」の個数を、2で割った時の余りが、どちらも1あるいは0で一致するようにしたので、
(4)DSVの制御のための冗長ビットを少なくすることができる。
(5)最小ランd=1かつ(m,n)=(2,3)においては、1.5符号語でDSV制御を行うことができる。
(6)冗長度が少ない上に、最小ランと最大ランを守ることができる。さらに表3のテーブルは、表2の1,7PP符号と較べて、最小ランの連続回数制限を6回から5回へと少なくしたので、データ記録再生時のエラー伝播を、より少なくすることができる。
上述したように、データ再生誤りのパターンとしては、連続する最小マークの先頭のエッジから最後のエッジまでが、一斉にシフトして誤るという場合がある。即ち発生するビットエラー長は、最小ランの連続する区間の、先頭から最後まで伝搬することになる。従ってエラー伝搬は長くなってしまうという問題が現れる。しかし、最小ランの連続を5回に制限することによって、このようなエラーの発生を少なくすることができ、より安定したデータの記録再生を実現することができる。
図15は、上述した一連の処理をプログラムにより実行するパーソナルコンピュータの構成の例を示すブロック図である。CPU(Central Processing Unit)321は、ROM(Read Only Memory)322、または記憶部328に記憶されているプログラムに従って各種の処理を実行する。RAM(Random Access Memory)323には、CPU321が実行するプログラムやデータなどが適宜記憶される。これらのCPU321、ROM322、およびRAM323は、バス324により相互に接続されている。
CPU321にはまた、バス324を介して入出力インターフェース325が接続されている。入出力インターフェース325には、キーボード、マウス、マイクロホンなどよりなる入力部326、ディスプレイ、スピーカなどよりなる出力部327が接続されている。CPU321は、入力部326から入力される指令に対応して各種の処理を実行する。そして、CPU321は、処理の結果を出力部327に出力する。
入出力インターフェース325に接続されている記憶部328は、例えばハードディスクからなり、CPU321が実行するプログラムや各種のデータを記憶する。通信部329は、インターネットやローカルエリアネットワークなどのネットワークを介して外部の装置と通信する。また、通信部329を介してプログラムを取得し、記憶部328に記憶してもよい。
入出力インターフェース325に接続されているドライブ330は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア331が装着されたとき、それらを駆動し、そこに記録されているプログラムやデータなどを取得する。取得されたプログラムやデータは、必要に応じて記憶部328に転送され、記憶される。
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム格納媒体からインストールされる。
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを格納するプログラム格納媒体は、図15に示すように、磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)を含む)、光磁気ディスク(MD(Mini-Disc)(登録商標)を含む)、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア331、または、プログラムが一時的もしくは永続的に格納されるROM322や、記憶部328を構成するハードディスクなどにより構成される。プログラム格納媒体へのプログラムの格納は、必要に応じてルータ、モデムなどのインターフェースである通信部329を介して、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の通信媒体を利用して行われる。
なお、本明細書において、プログラム格納媒体に格納されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
1 変調装置, 11 符号化装置, 21 DSV制御ビット挿入部, 22 変調部, 23 同期パターン挿入部, 24 NRZI化部, 41 加算器, 51 RLL変換パターン処理部, 52 置換パターン処理部, 53 変換パターン決定部, 54 置換パターン処理制御部, 81 直前符号検出部, 82 総合検出部, 111 最小ラン連続制限パターン検出予想部, 112 最小ラン連続制限パターン検出部, 113A,113B 最小ラン連続制限テーブル, 114 不確定ビット決定部, 115 特定規則変換パターン検出部, 116 特定規則変換テーブル, 121 変換パターン検出部, 122A乃至122D 変換テーブル, 123 セレクタ, 124 不確定ビット決定部