(57)【特許請求の範囲】
【請求項１】
基本データ長が２ビットのデータを、最小ランが１、かつ最大ランが７の、基本符号語長が３ビットの可変長符号（１，７；２，３；５）に変換する変調テーブルにおいて、
前記基本データ長が２ビットの基礎データからなるデータパターンを前記基本符号語長が３ビットの可変長符号の基礎符号からなる符号パターンに変換する基礎テーブルと、
置換データからなる前記データパターンを置換符号からなる前記符号パターンに置換する置換テーブルとを備え、
前記置換テーブルは、前記最小ランの連続を５回以下に制限する最小ラン連続制限データからなる前記データパターンと、前記最小ラン連続制限データに対応する前記置換符号からなる前記符号パターンを含み、
前記最小ラン連続制限データに対応する前記置換符号の少なくとも１つは、直前の３符号が“０１０”のとき“０”となり、直前の３符号が“０１０”でないとき“１”となる不確定符号“＄”を含む符号語“＄０＄”を含み、
複数の前記最小ラン連続制限データのうちの第１の最小ラン連続制限データは、第２の最小ラン連続制限データの一部を構成し、
前記第２の最小ラン連続制限データは、前記第１の最小ラン連続制限データが途中から始まり、かつ、次の３符号が“０１０”であるとき、個別に符号語に変換され、次の３符号が“０１０”でないとき、全体が一括して前記不確定符号を含む置換符号に変換され、
前記第１の最小ラン連続制限データは、次の３符号が“０１０”であるとき、全体が一括して前記不確定符号を含まない前記置換符号に変換され、次の３符号が“０１０”でないとき、個別に符号語に変換される
変調テーブル。
【請求項２】
前記不確定符号“＄”は、さらに直前の符号が“１”のとき“０”となる
請求項１に記載の変調テーブル。
【請求項３】
基本データ長が２ビットのデータを、最小ランが１、かつ最大ランが７の、基本符号語長が３ビットの可変長符号（１，７；２，３；５）に変換する変調装置において、
データパターンと符号パターンの対応関係を記述する変換テーブルに従って、入力データを符号に変換するデータ変換手段を備え、
前記変換テーブルは、
前記基本データ長が２ビットの基礎データからなる前記データパターンを前記基本符号語長が３ビットの可変長符号の基礎符号からなる前記符号パターンに変換する第１のテーブルと、
置換データからなる前記データパターンを置換符号からなる前記符号パターンに置換する第２のテーブルとを備え、
前記第２のテーブルは、前記最小ランの連続を５回以下に制限する最小ラン連続制限データからなる前記データパターンと、前記最小ラン連続制限データに対応する前記置換符号からなる前記符号パターンを含み、
前記最小ラン連続制限データに対応する前記置換符号の少なくとも１つは、直前の３符号が“０１０”のとき“０”となり、直前の３符号が“０１０”でないとき“１”となる不確定符号“＄”を含む符号語“＄０＄”を含み、
複数の前記最小ラン連続制限データのうちの第１の最小ラン連続制限データは、第２の最小ラン連続制限データの一部を構成し、
前記第２の最小ラン連続制限データは、前記第１の最小ラン連続制限データが途中から始まり、かつ、次の３符号が“０１０”であるとき、個別に符号語に変換され、次の３符号が“０１０”でないとき、全体が一括して前記不確定符号を含む置換符号に変換され、
前記第１の最小ラン連続制限データは、次の３符号が“０１０”であるとき、全体が一括して前記不確定符号を含まない前記置換符号に変換され、次の３符号が“０１０”でないとき、個別に符号語に変換される
変調装置。
【請求項４】
前記データ変換手段は、
前記第１の変換テーブルに従って、前記入力データをＲＬＬ規則を守るように符号に変換する第１の変換手段と、
前記第２の変換テーブルに従って、前記入力データが前記最小ラン連続制限データと一致する場合、前記入力データを、前記最小ランの連続が５回以下に制限されるように、前記符号パターンに変換するとともに、前記不確定符号を確定する第２の変換手段と、
前記不確定符号が確定された前記符号パターンと前記固定的に記述された前記変換テーブルに従って変換された前記符号パターンのいずれかを選択する選択手段と
を備える請求項３に記載の変調装置。
【請求項５】
ＲＬＬ規則を守るための情報を生成するＲＬＬ情報生成手段と、
前記最小ランの連続を５回以下に制限するための情報を生成する制限情報生成手段とをさらに備え、
前記第２の変換手段は、生成された前記ＲＬＬ規則を守るための情報と前記最小ランの連続を５回以下に制限するための情報に基づいて、前記不確定符号を確定する
請求項４に記載の変調装置。
【請求項６】
複数の前記最小ラン連続制限データのうちの第１の最小ラン連続制限データがデータ列の途中から始まり、かつ、次の３符号が“０１０”であることを検出する第１の検出手段と、
前記第１の最小ラン連続制限データを一部に含む第２の最小ラン連続制限データを検出する第２の検出手段とをさらに備え、
前記選択手段は、前記第１の最小ラン連続制限データがデータ列の途中から始まり、かつ、次の３符号が“０１０”であることが検出された場合、前記第２の最小ラン連続制限データを個別に符号語に変換し、次の３符号が“０１０”でない場合、全体を一括して前記不確定符号を含む置換符号に変換する
請求項５に記載の変調装置。
【請求項７】
前記選択手段は、前記第１の最小ラン連続制限データの次の３符号が“０１０”であるとき、前記第１の最小ラン連続制限データの全体を一括して前記不確定符号を含まない符号パターンに変換する
請求項６に記載の変調装置。
【請求項８】
前記入力データのうちの少なくとも１５ビットのデータを記憶する記憶手段をさらに備える
請求項３に記載の変調装置。
【請求項９】
請求項３に記載の変調装置により変調された信号が記録されている記録媒体。
【請求項１０】
基本データ長が２ビットのデータを、最小ランが１、かつ最大ランが７の、基本符号語長が３ビットの可変長符号（１，７；２，３；５）に変換する変調方法において、
データパターンと符号パターンの対応関係を記述する変換テーブルに従って、入力データを符号に変換するデータ変換ステップを含み、
前記変換テーブルは、
前記基本データ長が２ビットの基礎データからなる前記データパターンを前記基本符号語長が３ビットの可変長符号の基礎符号からなる前記符号パターンに変換する第１のテーブルと、
置換データからなる前記データパターンを置換符号からなる前記符号パターンに置換する第２のテーブルとを備え、
前記第２のテーブルは、前記最小ランの連続を５回以下に制限する最小ラン連続制限データからなる前記データパターンと、前記最小ラン連続制限データに対応する前記置換符号からなる前記符号パターンを含み、
前記最小ラン連続制限データに対応する前記置換符号の少なくとも１つは、直前の３符号が“０１０”のとき“０”となり、直前の３符号が“０１０”でないとき“１”となる不確定符号“＄”を含む符号語“＄０＄”を含み、
複数の前記最小ラン連続制限データのうちの第１の最小ラン連続制限データは、第２の最小ラン連続制限データの一部を構成し、
前記第２の最小ラン連続制限データは、前記第１の最小ラン連続制限データが途中から始まり、かつ、次の３符号が“０１０”であるとき、個別に符号語に変換され、次の３符号が“０１０”でないとき、全体が一括して前記不確定符号を含む置換符号に変換され、
前記第１の最小ラン連続制限データは、次の３符号が“０１０”であるとき、全体が一括して前記不確定符号を含まない前記置換符号に変換され、次の３符号が“０１０”でないとき、個別に符号語に変換される
変調方法。
【請求項１１】
基本データ長が２ビットのデータを、最小ランが１、かつ最大ランが７の、基本符号語長が３ビットの可変長符号（１，７；２，３；５）に変換するプログラムにおいて、
データパターンと符号パターンの対応関係を記述する変換テーブルに従って、入力データを符号に変換するデータ変換ステップをコンピュータに実行させるプログラムであって、
前記変換テーブルは、
前記基本データ長が２ビットの基礎データからなる前記データパターンを前記基本符号語長が３ビットの可変長符号の基礎符号からなる前記符号パターンに変換する第１のテーブルと、
置換データからなる前記データパターンを置換符号からなる前記符号パターンに置換する第２のテーブルとを備え、
前記第２のテーブルは、前記最小ランの連続を５回以下に制限する最小ラン連続制限データからなる前記データパターンと、前記最小ラン連続制限データに対応する前記置換符号からなる前記符号パターンを含み、
前記最小ラン連続制限データに対応する前記置換符号の少なくとも１つは、直前の３符号が“０１０”のとき“０”となり、直前の３符号が“０１０”でないとき“１”となる不確定符号“＄”を含む符号語“＄０＄”を含み、
複数の前記最小ラン連続制限データのうちの第１の最小ラン連続制限データは、第２の最小ラン連続制限データの一部を構成し、
前記第２の最小ラン連続制限データは、前記第１の最小ラン連続制限データが途中から始まり、かつ、次の３符号が“０１０”であるとき、個別に符号語に変換され、次の３符号が“０１０”でないとき、全体が一括して前記不確定符号を含む置換符号に変換され、
前記第１の最小ラン連続制限データは、次の３符号が“０１０”であるとき、全体が一括して前記不確定符号を含まない前記置換符号に変換され、次の３符号が“０１０”でないとき、個別に符号語に変換される
プログラム。
【請求項１２】
基本データ長が２ビットのデータを、最小ランが１、かつ最大ランが７の、基本符号語長が３ビットの可変長符号（１，７；２，３；５）に変換するプログラムが記録されている記録媒体において、
データパターンと符号パターンの対応関係を記述する変換テーブルに従って、入力データを符号に変換するデータ変換ステップをコンピュータに実行させるプログラムであって、
前記変換テーブルは、
前記基本データ長が２ビットの基礎データからなる前記データパターンを前記基本符号語長が３ビットの可変長符号の基礎符号からなる前記符号パターンに変換する第１のテーブルと、
置換データからなる前記データパターンを置換符号からなる前記符号パターンに置換する第２のテーブルとを備え、
前記第２のテーブルは、前記最小ランの連続を５回以下に制限する最小ラン連続制限データからなる前記データパターンと、前記最小ラン連続制限データに対応する前記置換符号からなる前記符号パターンを含み、
前記最小ラン連続制限データに対応する前記置換符号の少なくとも１つは、直前の３符号が“０１０”のとき“０”となり、直前の３符号が“０１０”でないとき“１”となる不確定符号“＄”を含む符号語“＄０＄”を含み、
複数の前記最小ラン連続制限データのうちの第１の最小ラン連続制限データは、第２の最小ラン連続制限データの一部を構成し、
前記第２の最小ラン連続制限データは、前記第１の最小ラン連続制限データが途中から始まり、かつ、次の３符号が“０１０”であるとき、個別に符号語に変換され、次の３符号が“０１０”でないとき、全体が一括して前記不確定符号を含む置換符号に変換され、
前記第１の最小ラン連続制限データは、次の３符号が“０１０”であるとき、全体が一括して前記不確定符号を含まない前記置換符号に変換され、次の３符号が“０１０”でないとき、個別に符号語に変換される
プログラムが記録されている記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、変調テーブル、変調装置および方法、プログラム、並びに記録媒体に関し、特に最小ランの連続をより少なくするようにした、変調テーブル、変調装置および方法、プログラム、並びに記録媒体に関する。
【背景技術】
【０００２】
データを所定の伝送路に伝送したり、または例えば磁気ディスク、光ディスク、光磁気ディスク等の記録媒体に記録する際、伝送路や記録媒体に適するように、データの変調が行われる。このような変調方法の１つとして、ブロック符号が知られている。ブロック符号とは、データ列をｍ×ｉビットからなる単位（以下データ語という）にブロック化し、このデータ語を適当な符号則に従って、ｎ×ｉビットからなる符号語に変換するものである。そしてこの符号は、ｉ＝１のときには固定長符号となり、またｉが複数個選べるとき、すなわち、１乃至ｉmax（最大のｉ）の範囲の所定のｉを選択して変換したときには可変長符号となる。このブロック符号化された符号は可変長符号（d,k;m,n;r）と表される。
【０００３】
ここでｉは拘束長と称され、ｉmaxはｒ（最大拘束長）となる。またｄは、例えば、連続する“１”の間に入る“０”の最小連続個数、すなわち“０”の最小ランを示し、ｋは連続する“１”の間に入る“０”の最大連続個数、すなわち“０”の最大ランを示している。
【０００４】
ところで上述のようにして得られる符号語を、光ディスクや光磁気ディスク等に記録する場合、例えばコンパクトディスク(CD)やミニディスク(MD)（登録商標）では、可変長符号列より、“１”を反転とし、“０”を無反転とするNRZI(NonReturn to Zero Inverted)変調を行い、NRZI変調された可変長符号(以下、記録波形列と称する)に基づき、記録が行なわれている。これはマークエッジ記録と称される。これに対して、ISO規格の3.5inch・230MB容量の光磁気ディスク等では、記録変調された符号列が、NRZI変調されずにそのまま記録される。これはマークポジション記録と称される。現在のように高記録密度化された記録メディアでは、マークエッジ記録が多く用いられている。
【０００５】
記録波形列の最小反転間隔をＴminとし、最大反転間隔をＴmaxとするとき、線速方向に高密度記録を行うためには、最小反転間隔Ｔminは長い方が、即ち最小ランｄは大きい方が良く、またクロックの再生の面からは、最大反転間隔Ｔmaxは短い方が、即ち最大ランｋは小さい方が望ましい。またオーバーライト特性を考慮する場合にはＴmax/Ｔminは小さい方が望ましい。さらには、JitterやS/Nの点から検出窓幅Ｔw=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)とも表記される)は、最小ランｄ＝２のRLL符号である。また、MD−DATA２あるいはISO規格の3.5inchMO(640MB容量)で用いられるRLL(1,7)((1,7;2,3;r)とも表記される)は、最小ランｄ＝１のRLL符号である。この他、現在開発研究されている、記録密度の高い光ディスクや光磁気ディスク等の記録再生ディスク装置においては、最小マークの大きさや、変換効率のバランスの取れた、最小ランｄ＝１のRLL符号（Run Length Limited code）がよく用いられている。
【０００７】
可変長のRLL(1,7)符号の変調テーブルは、例えば以下のようなテーブルである。
＜表１＞
RLL(1,7) : (d,k;m,n;r) = (1,7;2,3;2)
データパターン    符号パターン
ｉ＝１  11              00x
10              010
01              10x
ｉ＝２  0011            000 00x
0010            000 010
0001            100 00x
0000            100 010      
【０００８】
ここで変調テーブル内の記号ｘは、次に続くチャネルビットが“０”であるときに“１”とされ、また次に続くチャネルビットが“１”であるときに“０”とされる。最大拘束長ｒは２である。
【０００９】
可変長RLL(1,7)のパラメータは(1,7;2,3,2)であり、記録波形列のビット間隔をＴとすると、(ｄ＋１)Ｔで表される最小反転間隔Ｔminは２(=1＋1)Ｔとなる。データ列のビット間隔をＴdataとすると、この(m/n)×２で表される最小反転間隔Ｔminは1.33(=(2/3)×2)Ｔdataとなる。また(ｋ＋１)Ｔで表される最大反転間隔Ｔmaxは、Ｔmax = ８(=7＋1)Ｔ(=(m/n)×８Ｔdata = (2/3)×８Ｔdata = 5.33Ｔdata) である。さらに検出窓幅Ｔwは(m/n)×Ｔdataで表され、その値は、Ｔw = 0.67(=2/3)Ｔdata となる。
【００１０】
ところで、表１のRLL(1,7)による変調を行ったチャネルビット列においては、発生頻度としてはＴminである２Ｔが一番多く、以下、３Ｔ，４Ｔ，５Ｔ，６Ｔ，…の順に多い。そして最小ラン（Ｔmin）である２Ｔが繰り返した場合、即ちエッジ情報が早い周期で多く発生することは、クロック再生には有利となる場合が多い。
【００１１】
ところが、例えば光ディスクの記録再生において、さらに記録線密度を高くしていった場合、最小ランは、エラーが発生しやすい部位となる。なぜなら、ディスク再生時において、最小ランの波形出力は、他のランよりも小さく、例えばデフォーカスやタンジェンシャル・チルト等による影響を受けやすいからである。またさらに、高記録線密度における、最小マークの連続した記録再生は、ノイズ等の外乱の影響も受けやすく、従ってデータ再生誤りを起こしやすくなる。この時のデータ再生誤りのパターンとしては、連続する最小マークの先頭のエッジから最後のエッジまでが、一斉にシフトして誤るという場合がある。即ち発生するビットエラー長は、最小ランの連続する区間の、先頭から最後まで伝搬することになる。従ってエラー伝搬は長くなってしまうという問題が現れる。
【００１２】
高線密度にデータを記録再生する場合の安定化のためには、最小ランの連続を制限することが効果的である。
【００１３】
一方、記録媒体へのデータの記録、あるいはデータの伝送の際には、記録媒体あるいは伝送路に適した符号化変調が行われるが、これら変調符号に低域成分が含まれていると、例えば、ディスク装置のサーボ制御におけるトラッキングエラーなどの、各種のエラー信号に変動が生じ易くなったり、あるいはジッターが発生し易くなったりする。従って変調符号は、低域成分がなるべく抑制されている方が望ましい。
【００１４】
低域成分を抑制する方法として、DSV(Digital Sum Value)制御がある。DSVとは、チャネルビット列をNRZI化（すなわちレベル符号化）して記録符号列とし、そのビット列（データのシンボル）の“１”を「＋１」、“０”を「−１」として、符号を加算していったときのその総和を意味する。DSVは記録符号列の低域成分の目安となる。DSVの正負のゆれの絶対値を小さくすること、すなわちDSV制御を行うことは、記録符号列の直流成分を除き、低域成分を抑制することになる。
【００１５】
前記表１に示した、可変長RLL(1,7)テーブルによる変調符号は、DSV制御が行われていない。このような場合のDSV制御は、変調後の符号化列（チャネルビット列）において、所定の間隔でDSV計算を行い、所定のDSV制御ビットを符号化列（チャネルビット列）内に挿入することで、実現される（例えば、特許文献１）。
【００１６】
チャネルビット列内に挿入するDSV制御ビット数は、最小ランｄによって決まる。ｄ＝１の時、最小ランを守るように、符号語内の任意の位置にDSV制御ビットを挿入する場合、必要なビット数は２(＝ｄ＋1)チャネルビットである。また最大ランを守るように、符号語内の任意の位置にDSV制御ビットを挿入する場合に必要となるビット数は４(＝2×(ｄ＋1))チャネルビットである。これらよりも少ないチャネルビットでDSV制御を行うと、挟まれる前後のパターンによって、DSV制御できない場合が発生する。
【００１７】
(d,k;m,n) = (1,7;2,3)である RLL(1,7)符号において、前記DSV制御ビットを、変換率と合わせて、データに換算すると、
４チャネルビット×２／３  ＝  ８／３  ＝  ２．６７データ相当（2.67 Ｔdata）
になる。
【００１８】
ところでDSV制御ビットは、基本的には冗長ビットである。従って符号変換の効率から考えれば、DSV制御ビットはなるべく少ないほうが良い。
【００１９】
またさらに、挿入されるDSV制御ビットによって、最小ランｄおよび最大ランｋは、変化しないほうが良い。（ｄ，ｋ）が変化すると、記録再生特性に影響を及ぼしてしまうからである。
【００２０】
ただし、実際のRLL符号においては、最小ランは記録再生特性への影響が大きいために、必ず守られる必要があるが、最大ランについては必ずしも守られてはいない。場合によっては最大ランを破るパターンを同期パターンに用いるフォーマットも存在する。例えば、DVD（Digital Versatile Disk）の8-16符号における最大ランは11Ｔだが、同期パターン部分において最大ランを超える14Ｔを与え、同期パターンの検出能力を上げている。
【００２１】
以上を踏まえて本発明者等は、(d,k)=(1,7)で、さらに高記録密度に対応した変調方式として、表２の1,7PP符号を先に提案した（例えば、特許文献２参照）。
＜表２＞
1,7PP : (d,k;m,n;r) = (1,7;2,3;4)
データパターン    符号パターン
11              *0*
10              001
01              010
0011            010 100
0010            010 000
0001            000 100
000011          000 100 100
000010          000 100 000
000001          010 100 100
000000          010 100 000
110111          001 000 000(next010)
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'.
【００２２】
表２の変調テーブルは、変換パターンとして、それがないと変換処理ができない基礎パターン（（11）から（000000）までのデータパターンよりなる変換パターン）、それがなくても変換処理は可能であるが、それを行うことによって、より効果的な変換処理が実現する置換パターン（（110111），（00001000），（00000000）のデータパターンよりなる変換パターン）、および、データ列を任意の位置で終端させるための終端パターン（（00），（0000）のデータパターンよりなる変換パターン）を有している。
【００２３】
また、表２は、最小ランｄ＝１、最大ランｋ＝７で、基礎パターンの要素に不確定符号（＊で表される符号）を含んでいる。不確定符号は、直前および直後の符号語列の如何によらず、最小ランｄと最大ランｋを守るように、“０”か“１”に決定される。すなわち表２において、変換する２データパターンが（11）であったとき、その直前の符号語列（チャネルビット列）によって、“000”または“101”の符号パターンが選択され、そのいずれかに変換される。例えば、直前の符号語列の１チャネルビットが“１”である場合、最小ランｄを守るために、データパターン（11）は、符号パターン“000”に変換され、直前の符号語列の１チャネルビットが“０”である場合、最大ランｋが守られるように、データパターン（11）は、符号パターン“101”に変換される。
【００２４】
表２の変調テーブルの基礎パターンは可変長構造を有している。すなわち、拘束長ｉ＝１における基礎パターンは、必要数の４つ（2^m = 2^2 = 4）よりも少ない３つ（*0*，001，010の３つ）で構成されている。その結果、データ列を変換する際に、拘束長ｉ＝１だけでは変換出来ないデータ列が存在することになる。結局、表２において、全てのデータ列を変換するには（変調テーブルとして成り立つためには）、拘束長ｉ＝３までの基礎パターンを参照する必要がある。
【００２５】
また、表２の変調テーブルは、最小ランｄの連続を制限する置換パターンを持っているため、データパターンが（110111）である場合、さらに後ろに続く符号語列が参照され、それが“010”であるとき、この６データパターン符号パターン“001 000 000”に置き換えられる。また、このデータパターンは、後ろに続く符号語列が“010”以外である場合、２データ単位（（11），（01），（11））で符号パターンに変換されるので、符号語“*0* 010 *0*”に変換される。これによって、データを変換した符号語列は、最小ランの連続が制限され、最大でも６回までの最小ラン繰り返しとなる。
【００２６】
そして表２の変調テーブルは、最大拘束長ｒ＝４である。拘束長ｉ＝４の変換パターンは、最大ランｋ＝７を実現するための、置換パターン（最大ラン保証パターン）で構成されている。すなわち、データパターン（00001000）は、符号パターン“000 100 100 100”に変換され、データパターン（00000000）は、符号パターン“010 100 100 100”に変換されるように構成されている。そしてこの場合においても、最小ランｄ＝１は守られている。
【００２７】
さらに表２は、同期パターンを挟むために、データ列の任意の位置において終端させる場合、データ列が（00）または（0000）で終端位置となる際には、終端パターンが用いられる。挿入される同期パターンは、先頭の１符号語が終端パターン使用識別ビットとなっており、終端パターンが用いられた時は、直後の同期パターン列の先頭符号語が“１”となる。また終端パターンが用いられなかった時は、“０”となる。なお、表２における同期パターンは、上述の終端パターン使用識別ビットと、同期パターン検出のために、最大ランｋ＝７を超えるｋ＝８の符号パターンを２回繰り返し、合計24符号語で構成してある。
【００２８】
ところで表２の変換パターンは、データパターンの要素としての「１」の個数を２で割った時の余りと、変換される符号パターンの要素としての「１」の個数を２で割った時の余りが、どちらも１あるいは０で同一（対応するいずれの要素も「１」の個数が奇数または偶数）となるような変換規則を持っている。例えば、変換パターンのうちのデータパターン（000001）は、“010 100 100”の符号パターンに対応しているが、それぞれの要素としての「１」の個数は、データパターンでは１個、対応する符号パターンでは３個であり、どちらも２で割ったときの余りが１（奇数）で一致している。同様にして、変換パターンのうちのデータパターン（000000）は、“010 100 000”の符号パターンに対応しているが、それぞれ「１」の個数は、データパターンでは０個、対応する符号パターンでは２個であり、どちらも２で割ったときの余りが０（偶数）で一致している。
【００２９】
次に、DSV制御を行う方法について述べる。表１のRLL(1,7)符号のような、変調テーブルにDSV制御が行われていない場合における従来のDSV制御は、例えば、データ列を変調した後、変調後のチャネルビット列に、所定の間隔で、DSV制御ビットを少なくとも（ｄ＋１）ビットだけ付加することで行われた。表２のような変調テーブルにおいても、従来と同様にDSV制御を行うことが出来るが、表２における、データパターンと符号パターンの関係を生かして、さらに効率良くDSV制御を行うことができる。即ち、変調テーブルが、データパターンの要素としての「１」の個数と符号パターンの要素としての「１」の個数を２で割った時の余りが、どちらも１あるいは０で同一となるような変換規則を持っている時、前記のようにチャネルビット列内に、「反転」を表す“１”、あるいは「非反転」を表す“０”のDSV制御ビットを挿入することは、データビット列内に、「反転」するならば（１）の、「非反転」ならば（０）の、それぞれDSV制御ビットを挿入することと等価となる。
【００３０】
例えば表２において、データ変換する３ビットが（001）と続いたときに、その後ろにおいてDSV制御ビットを挾むものとすると、データは、（001−x）（xは１ビットで、「０」又は「１」）となる。ここでｘに「０」を与えれば、表２の変調テーブルで、
データパターン    符号パターン
0010            010 000
の変換が行われ、また、「１」を与えれば、
データパターン    符号パターン
0011            010 100
の変換が行われる。符号語列をNRZI化して、レベル符号列を生成すると、これらは
データパターン    符号パターン   レベル符号列
0010            010 000        011111
0011            010 100        011000
となり、レベル符号列の最後の３ビットが相互に反転している。このことは、DSV制御ビットｘの（１）と（０）を選択することによって、データ列内においても、DSV制御が行えることを意味する。
【００３１】
DSV制御による冗長度を考えると、データ列内の１ビットでDSV制御を行うということは、チャネルビット列で表現すれば、表２の変換率(m:n=2:3)より、1.5チャネルビットでDSV制御を行っていることに相当する。一方、表１のようなRLL(1,7)テーブルにおいてDSV制御を行うためには、チャネルビット列においてDSV制御を行う必要があるが、この時最小ランを守るためには、少なくとも２チャネルビットが必要であり、表２のDSV制御と比較すると、冗長度がより大きくなってしまう。換言すれば、表２のテーブル構造を持つ時、データ列内でDSV制御を行うことで、効率よくDSV制御を行うことができる。
【００３２】
以上に説明した(d,k)=(1,7)の最小ランと最大ランを持った、高記録密度に対応した表２の変調テーブルは、例えば高密度光ディスクシステムである、Blu-ray Disc ReWritable ver1.0 （登録商標）におけるフォーマットとして採用されている。
【００３３】
そして、今後さらなる高記録密度に対して、具体的に例えば、高密度光ディスクに対するさらなる高密度規格に対して、変調方式においても、さらに安定したシステムが要求されている。
【００３４】
その際、既に商品化されているBlu-ray Disc ReWritable ver1.0 に対し、従来の(1,7)PP符号と同様なパラメータであり、かつ同様な変調テーブルの構成で、より安定したシステムを実現する変調方式が実現すれば、従来の設計技術を流用することが出来るので、ハードウエア設計時の設計リスクを低減することができる。
【００３５】
【特許文献１】特開平6−197024号公報
【特許文献２】特開平11−346154号公報
【発明の開示】
【発明が解決しようとする課題】
【００３６】
以上のように、RLL符号を高線密度にディスクに記録再生する場合、最小ランｄの連続したパターンがあると、長いエラーが発生し易かった。また(1,7;2,3)符号においてDSV制御を行うには冗長ビットを挟む必要があり、なるべくこの冗長ビットを少なくする必要があった。そして、このような状況から開発された、最小ランｄ＝１のRLL符号(d,k;m,n)=(1,7;2,3)において、最小ランの連続する回数を制限し、さらに最小ランおよび最大ランを守りながら、効率の良い制御ビットでDSV制御を行うことができる等の特徴を持つ1,7PP符号に対し、さらに安定した符号列を発生する変調方式が望まれた。具体的には、例えば、エッジシフトによるエラーの発生を、さらに少なくする変調方式が要求された。
【００３７】
さらには、ハードウエア設計を考慮するために、従来の1,7PP符号と同様のテーブル構成であることが望まれた。
【００３８】
本発明は、このような状況に鑑みてなされたものであり、基本構成を 1,7PP符号と同様にした上で、さらに、最小ランの連続する回数を、従来よりもさらに減らすようにし、記録再生時における、長いエラーの発生を改善するものである。
【課題を解決するための手段】
【００３９】
本発明の側面は、基本データ長が２ビットのデータを、最小ランが１、かつ最大ランが７の、基本符号語長が３ビットの可変長符号（１，７；２，３；５）に変換する変調テーブルにおいて、前記基本データ長が２ビットの基礎データからなるデータパターンを前記基本符号語長が３ビットの可変長符号の基礎符号からなる符号パターンに変換する基礎テーブルと、置換データからなる前記データパターンを置換符号からなる前記符号パターンに置換する置換テーブルとを備え、前記置換テーブルは、前記最小ランの連続を５回以下に制限する最小ラン連続制限データからなる前記データパターンと、前記最小ラン連続制限データに対応する前記置換符号からなる前記符号パターンを含み、前記最小ラン連続制限データに対応する前記置換符号の少なくとも１つは、直前の３符号が“０１０”のとき“０”となり、直前の３符号が“０１０”でないとき“１”となる不確定符号“＄”を含む符号語“＄０＄”を含み、複数の前記最小ラン連続制限データのうちの第１の最小ラン連続制限データは、第２の最小ラン連続制限データの一部を構成し、前記第２の最小ラン連続制限データは、前記第１の最小ラン連続制限データが途中から始まり、かつ、次の３符号が“０１０”であるとき、個別に符号語に変換され、次の３符号が“０１０”でないとき、全体が一括して前記不確定符号を含む置換符号に変換され、前記第１の最小ラン連続制限データは、次の３符号が“０１０”であるとき、全体が一括して前記不確定符号を含まない前記置換符号に変換され、次の３符号が“０１０”でないとき、個別に符号語に変換される変調テーブルである。
【００４１】
前記不確定符号“＄”は、さらに直前の符号が“１”のとき“０”とすることができる。
【００４５】
本発明の側面においては、最小ランの連続を５回以下に制限する最小ラン連続制限データが、最小ラン連続制限データに対応する置換符号に置換される。最小ラン連続制限データに対応する前記置換符号の少なくとも１つは、直前の３符号が“０１０”のとき“０”となり、直前の３符号が“０１０”でないとき“１”となる不確定符号“＄”を含む符号語“＄０＄”とされる。複数の最小ラン連続制限データのうちの第１の最小ラン連続制限データは、第２の最小ラン連続制限データの一部を構成し、第２の最小ラン連続制限データは、第１の最小ラン連続制限データが途中から始まり、かつ、次の３符号が“０１０”であるとき、個別に符号語に変換され、次の３符号が“０１０”でないとき、全体が一括して不確定符号を含む置換符号に変換され、第１の最小ラン連続制限データは、次の３符号が“０１０”であるとき、全体が一括して不確定符号を含まない置換符号に変換され、次の３符号が“０１０”でないとき、個別に符号語に変換される。
【００４６】
本発明の他の側面は、基本データ長が２ビットのデータを、最小ランが１、かつ最大ランが７の、基本符号語長が３ビットの可変長符号（１，７；２，３；５）に変換する変調装置において、データパターンと符号パターンの対応関係を記述する変換テーブルに従って、入力データを符号に変換するデータ変換手段を備え、前記変換テーブルは、前記基本データ長が２ビットの基礎データからなる前記データパターンを前記基本符号語長が３ビットの可変長符号の基礎符号からなる前記符号パターンに変換する第１のテーブルと、置換データからなる前記データパターンを置換符号からなる前記符号パターンに置換する第２のテーブルとを備え、前記第２のテーブルは、前記最小ランの連続を５回以下に制限する最小ラン連続制限データからなる前記データパターンと、前記最小ラン連続制限データに対応する前記置換符号からなる前記符号パターンを含み、前記最小ラン連続制限データに対応する前記置換符号の少なくとも１つは、直前の３符号が“０１０”のとき“０”となり、直前の３符号が“０１０”でないとき“１”となる不確定符号“＄”を含む符号語“＄０＄”を含み、複数の前記最小ラン連続制限データのうちの第１の最小ラン連続制限データは、第２の最小ラン連続制限データの一部を構成し、前記第２の最小ラン連続制限データは、前記第１の最小ラン連続制限データが途中から始まり、かつ、次の３符号が“０１０”であるとき、個別に符号語に変換され、次の３符号が“０１０”でないとき、全体が一括して前記不確定符号を含む置換符号に変換され、前記第１の最小ラン連続制限データは、次の３符号が“０１０”であるとき、全体が一括して前記不確定符号を含まない前記置換符号に変換され、次の３符号が“０１０”でないとき、個別に符号語に変換される変調装置である。
【００４７】
前記データ変換手段は、前記第１の変換テーブルに従って、前記入力データをＲＬＬ規則を守るように符号に変換する第１の変換手段と、前記第２の変換テーブルに従って、前記入力データが前記最小ラン連続制限データと一致する場合、前記入力データを、前記最小ランの連続が５回以下に制限されるように、前記符号パターンに変換するとともに、前記不確定符号を確定する第２の変換手段と、前記不確定符号が確定された前記符号パターンと前記固定的に記述された前記変換テーブルに従って変換された前記符号パターンのいずれかを選択する選択手段とを備えることができる。
【００４８】
ＲＬＬ規則を守るための情報を生成するＲＬＬ情報生成手段と前記最小ランの連続を５回以下に制限するための情報を生成する制限情報生成手段とをさらに備え、前記第２の変換手段は、生成された前記ＲＬＬ規則を守るための情報と前記最小ランの連続を５回以下に制限するための情報に基づいて、前記不確定符号を確定することができる。
【００４９】
複数の前記最小ラン連続制限データのうちの第１の最小ラン連続制限データがデータ列の途中から始まり、かつ、次の３符号が“010”であることを検出する第１の検出手段と、前記第１の最小ラン連続制限データを一部に含む第２の最小ラン連続制限データを検出する第２の検出手段とをさらに備え、前記選択手段は、前記第１の最小ラン連続制限データがデータ列の途中から始まり、かつ、次の３符号が“010”であることが検出された場合、前記第２の最小ラン連続制限データを個別に符号語に変換し、次の３符号が“010”でない場合、全体を一括して前記不確定符号を含む置換符号に変換することができる。
【００５０】
前記選択手段は、前記第１の最小ラン連続制限データの次の３符号が“010”であるとき、前記第１の最小ラン連続制限データの全体を一括して前記不確定符号を含まない符号パターンに変換することができる。
【００５１】
前記入力データのうちの少なくとも15ビットのデータを記憶する記憶手段をさらに備えることができる。
【００５３】
前記変調装置により変調された信号を記録媒体に記録することができる。
【００５４】
また本発明の側面は、基本データ長が２ビットのデータを、最小ランが１、かつ最大ランが７の、基本符号語長が３ビットの可変長符号（１，７；２，３；５）に変換する変調方法、プログラム、またはプログラムが記録された記録媒体において、データパターンと符号パターンの対応関係を記述する変換テーブルに従って、入力データを符号に変換するデータ変換ステップを含む変調方法、またはコンピュータに実行させるプログラムであって、前記変換テーブルは、前記基本データ長が２ビットの基礎データからなる前記データパターンを前記基本符号語長が３ビットの可変長符号の基礎符号からなる前記符号パターンに変換する第１のテーブルと、置換データからなる前記データパターンを置換符号からなる前記符号パターンに置換する第２のテーブルとを備え、前記第２のテーブルは、前記最小ランの連続を５回以下に制限する最小ラン連続制限データからなる前記データパターンと、前記最小ラン連続制限データに対応する前記置換符号からなる前記符号パターンを含み、前記最小ラン連続制限データに対応する前記置換符号の少なくとも１つは、直前の３符号が“０１０”のとき“０”となり、直前の３符号が“０１０”でないとき“１”となる不確定符号“＄”を含む符号語“＄０＄”を含み、複数の前記最小ラン連続制限データのうちの第１の最小ラン連続制限データは、第２の最小ラン連続制限データの一部を構成し、前記第２の最小ラン連続制限データは、前記第１の最小ラン連続制限データが途中から始まり、かつ、次の３符号が“０１０”であるとき、個別に符号語に変換され、次の３符号が“０１０”でないとき、全体が一括して前記不確定符号を含む置換符号に変換され、前記第１の最小ラン連続制限データは、次の３符号が“０１０”であるとき、全体が一括して前記不確定符号を含まない前記置換符号に変換され、次の３符号が“０１０”でないとき、個別に符号語に変換される変調方法、プログラム、またはプログラムが記録された記録媒体である。
【００５５】
本発明の側面においては、データパターンと符号パターンの対応関係を記述する変換テーブルに従って、入力データを符号に変換される。変換テーブルは、第１のテーブルと第２のテーブルとを備え、第２のテーブルは、最小ランの連続を５回以下に制限する最小ラン連続制限データからなるデータパターンと、最小ラン連続制限データに対応する置換符号からなる符号パターンを含み、最小ラン連続制限データに対応する置換符号の少なくとも１つは、直前の３符号が“０１０”のとき“０”となり、直前の３符号が“０１０”でないとき“１”となる不確定符号“＄”を含む符号語“＄０＄”を含み、複数の最小ラン連続制限データのうちの第１の最小ラン連続制限データは、第２の最小ラン連続制限データの一部を構成し、第２の最小ラン連続制限データは、第１の最小ラン連続制限データが途中から始まり、かつ、次の３符号が“０１０”であるとき、個別に符号語に変換され、次の３符号が“０１０”でないとき、全体が一括して不確定符号を含む置換符号に変換され、第１の最小ラン連続制限データは、次の３符号が“０１０”であるとき、全体が一括して不確定符号を含まない置換符号に変換され、次の３符号が“０１０”でないとき、個別に符号語に変換される。
【発明の効果】
【００５６】
本発明の側面によれば、最小ランの連続をより少なくし、データの記録再生時のエラー伝播を、より少なくすることができる。
【発明を実施するための最良の形態】
【００７１】
以下、図を参照して本発明の実施の形態について説明する。以後、変換前のデータ列を、（000011）のように（  ）で区切って表し、変換後のチャネルビット列（符号列）を、“000 100 100”のように“  ”で区切って表す。また、本明細書において、1,7PP符号（PP : Parity-preserve Prohibit-repeated-minimum-transition-runlength ）とは、最小ランｄ＝１、最大ランｋ＝７、かつ変換率(m:n)=(2:3)である可変長符号であり、さらに、最小ランの連続する回数を制限し、かつ、最小ランおよび最大ランを守りながら、効率の良いDSV制御ビットで、完全なDSV制御を行う変調テーブル（変換テーブル）を持つ符号をいう。
【００７２】
以下の表３は、本発明の一実施の形態としての変調テーブルを表す。
【００７３】
＜表３＞
1,7PP-rmtr5_code. rev.1    RLL(1,7;2,3;5)
1,7PP-rmtr5_ver.1
データパターン                符号パターン
11                        *0*
10                        001
01                        010
0011                      010 100
0010                      010 000
0001                      000 100
000011                    000 100 100
000010                    000 100 000
000001                    010 100 100
000000                    010 100 000
00001000                  000 100 100 100
00000000                  010 100 100 100
110111(next“010”)       001 000 000
1001110111                $0$ 010 000 000 101
1001110111(next“010”)   001 (no-change)
if xx1  then *0* = 000
xx0  then *0* = 101
if x10 or x01  then $0$ = 000
x00              $0$ = 101
Sync & Termination
#01 010 000 000 010 000 000 010 (24 cbits)
# = 0  not terminate case
# = 1  terminate case
Termination table
00                        000
0000                      010 100
【００７４】
なお、符号パターン“001”(no-change)は、データパターン（1001110111）を一括して変換しないこと、すなわち、データパターン（1001110111）を個別のデータに分割して、それぞれを変換することを意味する。具体的には、データパターン（1001110111）は最初の変換処理で、その先頭のデータ（10）が“001”に変換される。次の変換処理で、次のデータ(01)が“010”に変換される。さらに次のデータ(110111)(next“010”)が、“001 000 000”に変換される。“001”(no-change)の“001”は、最初の回の変換の符号語を表している。
【００７５】
表３の変調テーブルは、表１あるいは表２の変調テーブルと同様に、データパターンと符号パターンとよりなる変換パターンで構成されている。変調装置が表３の変調テーブルに従って変調を行う場合、変調装置に入力されたデータ列が、表３に記述されているデータパターンと一致すれば、そのデータ列のデータパターンと一致する部分は、対応する符号パターンに変換され、符号語列として出力される。
【００７６】
表３の変調テーブルは、1,7PP符号であり、さらに、基本構成が表２と同様である。この表３の変調テーブルは、基礎テーブル、置換テーブル、および終端テーブルにより構成される。
【００７７】
基礎テーブルは、それがないと変換処理ができない変換パターン（基礎パターン）により構成され、置換テーブルは、それがなくても変換処理は可能であるが、それを行うことによって、より効果的な変換処理を実現する（最大ランを制限したり、最小ランの連続を制限する）ことができる変換パターン（置換パターン）により構成される。終端テーブルは、符号を任意の位置で終端させるための変換パターン（終端パターン）により構成される。
【００７８】
具体的には、表３に示される変調テーブルのうち、（11）から（000000）までのデータパターンからなる基礎データパターンと、それに対応する“*0*”から“010 100 000”までの符号パターンからなる基礎符号パターンを含む変換パターン（基礎パターン）により構成される部分が基礎テーブルとしての変調テーブルであり、（00001000），（00000000），（110111）(next“010”)，（1001110111）,（1001110111）(next“010”)のデータパターンからなる置換データパターンと、それに対応する“000 100 100 100”，“010 100 100 100”，“001 000 000”，“$0$ 010 000 000 101”，“001”（no-change）の符号パターンからなる置換符号パターンを含む変換パターン（置換パターン）により構成される部分が置換テーブルとしての変調テーブルである。
【００７９】
置換テーブルのうち、（00001000），（00000000）のデータパターンからなる置換データパターンと、それに対応する“000 100 100 100”，“010 100 100 100”の符号パターンからなる置換符号パターンを含む部分は、最大ランを制限するための置換パターンのテーブルであり、（110111）(next“010”)，（1001110111）,（1001110111）(next“010”)のデータパターンからなる置換データパターンと、それに対応する“001 000 000”，“$0$ 010 000 000 101”，“001”（no-change）の符号パターンからなる置換符号パターンにより構成される部分が最小ランの連続を制限する置換パターン（最小ラン連続制限パターン）のテーブルである。
【００８０】
また、（00），（0000）のデータパターンからなる終端データパターンと、それに対応する“000”，“010 100”の符号パターンからなる終端符号パターンを含む変換パターン（終端パターン）により構成される部分が終端テーブルとしての変調テーブルである。
【００８１】
（11）から（00000000）までのデータパターンは、条件によらず、固定的に、“*0*”から“010 100 100 100”までの対応する符号パターンに変換される。その意味で、以下、これらの変換パターンを固定的変換パターンとも記述する。
【００８２】
これに対して、（110111），（1001110111）のデータパターンは、条件によっては、全体が一括して“001 000 000”，“$0$ 010 000 000 101”の符号パターンに変換されるが、条件によっては、データパターンの全体が一括して変換されず、個別のデータパターン（固定的変換パターン）に分解され、個々のデータパターン毎に対応する符号パターンに変換される。その意味で、以下、これらの変換パターンを、条件的変換パターンとも記述する。
【００８３】
また、データパターンと符号パターンの対応関係を記述するのが変調テーブルであり、以下においては、表３の一部のことも必要に応じて変調テーブルあるいは変換テーブルと記述する。
【００８４】
表３は、最小ランｄ＝１、最大ランｋ＝７で、基礎符号の要素に不確定符号(記号＊で表される符号)を持つ。この不確定符号は、最小ランｄと最大ランｋを守るように、“０”か“１”に決定される。すなわち表３においては、変換するデータがデータパターン（11）と一致するとき（以下、このような場合、必要に応じて変換する２データが（11）であったときのように簡略化として表現する）、その直前の符号語列（チャネルビット列）によって、“000”または“101”が選択され、そのいずれかに変換される。例えば、直前の符号語列の１チャネルビット（符号）が“１”である場合、最小ランｄを守るために、２データ（11）は、符号語“000”に変換され、直前の符号語列の１チャネルビットが“０”である場合、最大ランｋが守られるように、２データ（11）は、符号語“101”に変換される。
【００８５】
表３の変調テーブルは可変長構造を有しているので、基礎パターンはｉ＝１からｉ＝３までの変換パターンを有する。
【００８６】
また、表３の変調テーブルは、拘束長ｉ＝３において、最小ランｄの連続を制限する置換パターンを持っている。データ列が（110111）である場合、さらにその直後の符号語が参照される。後ろに続く符号語列が“010”である時、この６データ（110111）は、符号語“001 000 000”に置き換えられる。またこのデータ列は、直後の符号語列が“010”でない場合（“001”，“101”,または“000”である場合）、一括して変換されず、２データ単位（（11），（01），（11））に分割されて符号語に変換されるので、符号語“*0* 010 *0*”、即ち符号語“*0* 010 101”に変換される。
【００８７】
表３の変調テーブルはさらに、拘束長ｉ＝５において、最小ランｄの連続を制限する置換パターンを別途持っている。データ列が（1001110111）である場合、後述の例外処理（続く符号語列が“010”である場合の処理）を除いて、このデータ列10ビットは、符号語“$0$ 010 000 000 101”に置き換えられる。符号語“$0$”の“＄”はRLL規則を守り、かつ、最小ランの連続を所定回数までに制限するための不確定符号である。具体的には、直前の符号語列の１チャネルビットが“１”である場合には、最小ランを守るために、符号語“$0$”は、符号語“000”に変換される。これに対して直前の符号語列の１チャネルビットが“０”である場合には最大ランを守り、さらに、最小ランの連続を所定回数までに制限するために、直前の符号語列の３チャネルビットが“010”である場合に、符号語“$0$”は符号語“000”に変換され、直前の３チャネルビットが“010”ではない場合には、符号語“101”に変換される。
【００８８】
この実施の形態においては、不確定符号＄を直前の符号の値に基づいて確定するようにしたが、その位置によっては、直後の符号により確定するようにすることもできる。
【００８９】
以上をまとめると、次のようにも表現することができる。すなわち、直前の符号語列の２チャネルビットが、“10”あるいは“01”である場合、“$0$”は符号語“000”に置換され、そうでない時、即ち“00”である場合、“$0$”は符号語“101”に置換される。なお、２チャネルビットのパターンとしては４通りあるが、残る“11”は最小ランｄ＝１を満たしていないので、変換パターンとして規定されていない。
【００９０】
ここで、例外処理とは、以下の通りである。即ち、データ列が（1001110111）である場合、さらに直後の符号語列が参照される。後ろに続く符号語列が“010”である時、上述の様な一括した置換処理は行われずに、先頭の２ビット（10）のみが、符号語“001”に変換される。以下、次回の処理で２ビット（01）が符号語“010”に変換され、さらに次の処理で６ビット（110111），（next“010”）が“001 000 000”に変換される。
【００９１】
これによって、データを変換した符号語列は、最小ランの連続が制限され、最大でも５回までの最小ラン繰り返しとなる。
【００９２】
そして表３の変調テーブルは、拘束長ｉ＝４の変換パターンにおいて、最大ランｋ＝７を実現するための置換パターン（最大ラン保証パターン）を持っている。すなわち、データパターン（00001000）は符号パターン“000 100 100 100”に変換され、データパターン（00000000）は符号パターン“010 100 100 100”に変換される。なお、この場合にも最小ランｄ＝１は守られている。
【００９３】
さらに表３は、同期パターンを挟むために、データ列の任意の位置において終端させる場合、データ列が（00）または（0000）で終端位置となる時は、終端パターンが用いられる。挿入される同期パターンは、先頭の１符号が終端パターン使用識別ビットとなっており、終端パターンが用いられた時は、直後の同期パターン列の先頭符号が“１”となる。また終端パターンが用いられなかった時は、“０”となる。なお、表３における同期パターンは、上述の終端パターン使用識別ビットと、同期パターン検出のために最大ランｋ＝７を超えるｋ＝８の符号語を持ち、最後の符号が“０”となるように構成されており、例えば表３にあるように、ｋ＝８を２回繰り返して、合計24符号（チャネルビット）で構成されている。
【００９４】
ところで表３の変換パターンは、データパターンの要素としての“１”の個数を２で割った時の余りと、符号パターンの要素としての“１”の個数を２で割った時の余りが、どちらも１あるいは０で同一（対応するいずれの変換パターンも、“１”の個数が奇数または偶数）となるような変換規則を持っている。例えば、変換パターンのうちのデータパターン（000001）は、“010 100 100”の符号パターンに対応しているが、それぞれの要素としての“１”の個数は、データパターンでは１個、対応する符号パターンでは３個であり、どちらも２で割ったときの余りが１（奇数）で一致している。同様にして、変換パターンのうちのデータパターン（000000）は、“010 100 000”の符号パターンに対応しているが、それぞれ“１”の個数は、データパターンでは０個、対応する符号パターンでは２個であり、どちらも２で割ったときの余りが０（偶数）で一致している。
【００９５】
結局、各変換パターンにおける、データ列とチャネルビット列は、DSV極性が保存されているので、データ列内において、冗長ビットとしてDSV制御ビットを１ビット挿入し、このDSV制御ビットが（１）である時、DSV制御ビット部分を含むデータ列をチャネルビット列に変換し、NRZI化して記録符号列を作成すると、極性が反転する。また前記DSV制御ビットが（０）である時、DSV制御ビット部分を含むデータ列をチャネルビット列に変換し、NRZI化して記録符号列を作成すると、極性は反転しない。従って、表３のような、DSV極性が保存された変調テーブルは、データ列内に冗長ビットとして挿入された１ビットによって、これをデータ変換し、NRZI化した後の極性を変えることが出来るので、データ列内でDSV制御が出来ることになる。
【００９６】
なお、変換のために参照する最大データ列は、表３において、
データパターン               符号パターン
1001110111(next“010”)      001 (no-change)
の場合である。データパターン（1001110111）の後ろに続く符号パターンが“010”であるかどうかをデータ列から判定するためには、（1001110111）（10ビット）の後ろに続くデータ列の参照は、最大で（00000）（５ビット）となり、合計すると15ビットの参照となる。
【００９７】
次に、本発明の実施の形態に係る変調装置の構成を図面を参照しながら説明する。図１は、本発明の実施の形態の変調装置１の全体の構成を示すブロック図である。変調装置１は、入力されたデータ列を符号化し、出力する符号化装置11と、符号化装置11の出力を記録媒体13に記録する記録部12により構成されている。符号化装置11は、DSV制御ビット決定挿入部21、変調部22、同期パターン挿入部23、並びにNRZI化部24により構成される。
【００９８】
DSV制御ビット決定挿入部21は、入力されたデータ列に対して、所定のフォーマットに従って任意の間隔でDSV制御を行い、その結果任意の間隔でDSV制御ビットである“１”あるいは“０”の決定を行い、挿入を行う。変調部22は、DSV制御ビットの挿入されたデータ列を変調する。同期パターン挿入部23は、所定の間隔で所定の位置に同期パターンを挿入する。NRZI化部24は、同期パターンが挿入されたデータを、記録符号列に変換する（あるいは伝送路に出力する場合は伝送符号列に変換する）。記録部12は、NRZI化部24より入力された記録符号列を、例えば光ディスク、磁気ディスク、光磁気ディスク等により構成される記録媒体13に記録する。また、図示はしないが、タイミング信号を生成し、各部に供給してタイミングを管理するタイミング管理部が設けられている。
【００９９】
図２は、変調装置１の各部に入出力されるデータのデータフォーマットを示す図であり、同期パターンを含んだ、DSV制御ビットの挿入の関係が示されている。図示せぬ装置からDSV制御ビット決定挿入部21に入力されるデータ列（図2A）には、ユーザデータの他、ECC（Error-Correcting Code）等の情報データが含まれている。DSV制御ビット決定挿入部21は、このデータ列の所定間隔の位置にDSV制御ビットを１ビット挿入する（図2B）。先頭の区間は、シンクSYNC(同期パターン)を挿入することを前提として、あらかじめ他の区間と異なる長さとされている。図2B中のDSV区間(DATA1, DATA2, および DATA3)の長さをそれぞれaデータ、bデータ、およびbデータとすると、変換率m:n = 2:3の変調テーブル（表３）を用いた変調部22による変調により、各DSV区間(DATA1, DATA2, およびDATA3)の変換cbit（チャネルビット）区間は、( a×３/２ ) = ( 1.5a )あるいは、( b×３/２) = ( 1.5b )となる（図2C）。その後、同期パターン挿入部23は、所定の位置（図２ではDATA1位置の前の先頭位置）にシンク（SYNC）を挿入する（図2D）。SYNCのチャネルビット数をc(cbit) とすれば、a,b,c の間には、次の式（１）の関係が成り立つようにする。
1.5a ＋ c = 1.5b                    …（１）
【０１００】
このとき、同期パターンを含んだフォーマットにおいても、等しい間隔でDSV制御が行われることとなる。
【０１０１】
図２によるチャネルビット内のDSV制御ビットは、1.5チャネルビット相当である。すなわち、データ列内にDSV制御ビットは１ビット挿入されるから、チャネルビット相当では変換率分だけ増加し、
１ビット  ×  ｎ／ｍ  ＝  １×３／２  ＝  1.5チャネルビット    …（２）
となる。
【０１０２】
これを従来の方式と比較すると、例えば、チャネルビット内でDSV制御を、最小ランｄ＝１を守って行うためには、２チャネルビットが必要である。あるいは、最小ランと最大ランの両方を守ってDSV制御を行うためには、4チャネルビットが必要である。従って、従来のDSV制御方式と較べると、本方式のデータ列内DSV制御ビット挿入は、DSV制御のための冗長チャネルビットが少なく行えることがわかる。
【０１０３】
同期パターンが挿入されたチャネルビット列が、NRZI化部24によりNRZI化され（図2E）、記録符号列として記録部12に供給され、記録媒体13に記録される。
【０１０４】
図３は、符号化装置11の主要部のより詳細な構成を示すブロック図である。DSV制御ビット決定挿入部21は、入力データにDSV制御ビットを付加する加算器41を有している。変調部22は、変換データ処理部51、最小ラン連続制限処理部52、変換パターン決定部53、直前符号検出部54、および直前符号語検出部55により構成されている。変換データ処理部51、最小ラン連続制限処理部52、および変換パターン決定部53は、実質的に表３の変調テーブル（変換テーブル）を有し、それに従ってデータを符号に変換する処理（後述する図９の処理、特にステップS3乃至S6の処理）を実行するブロックであり、データ変換部60を構成している。
【０１０５】
加算器41は、入力されたデータ列に、DSV制御ビットを所定の間隔で挿入する。DSV制御ビットが挿入された入力データ列は、変換データ処理部51と最小ラン連続制限処理部52へ送られる。変換データ処理部51は、表３の基礎パターンと最小ランｋ＝７を実現するための置換パターンを有しており、RLL規則を守るように変換データ処理を行い、その処理情報を変換パターン決定部53へ供給する。この変換データ処理には、直前符号検出部54からの情報が用いられる。また、変換データ処理部51は、同期パターンを挿入するための終端テーブルを有しており、所定の位置で終端させるように、必要に応じて終端テーブルを用いる。終端テーブルが用いられた際には、その情報が同期パターンに埋め込まれる。
【０１０６】
最小ラン連続制限処理部52は、表３の最小ランｄの連続を制限する置換パターンを有しており、最小ランの連続回数を所定の回数までに制限するように処理を行い、その処理情報を変換パターン決定部53へ供給する。この処理には、直前符号検出部54からの情報と直前符号語検出部55からの情報が用いられる。変換パターン決定部53は、変換データ処理部51からの情報と最小ラン連続制限処理部52からの情報より、最終的に確定した変換パターンを選び出し、その符号語列を出力する。符号語列には、同期パターン挿入部23により、所定の間隔、所定の位置に同期パターンが挿入される。同期パターンの決定には、必要に応じて変換データ処理部51から出力された終端テーブル処理情報が用いられる。そして、同期パターン挿入部23の出力はNRZI化部24においてNRZI化され、記録符号列として出力される（あるいは、伝送符号列として伝送路に出力される）。
【０１０７】
直前符号検出部54は、変換パターン決定部53により最終的に確定された変換パターンからRLLを保証するために必要な情報として、処理対象データの直前の１チャネルビットの符号を検出し、その検出結果を変換データ処理部51と最小ラン連続制限処理部52へ供給する。直前符号語検出部55は、変換パターン決定部53により最終的に確定された変換パターンから、最小ランの連続制限回数を保証するために必要な情報として、処理対象データの直前の最小単位の符号語を検出し、その検出結果を最小ラン連続制限処理部52へ供給する。
【０１０８】
また各部の動作のタイミングは、図示しないタイミング管理部から供給される、タイミング信号に同期して管理されている。
【０１０９】
図４は、図３の符号化装置11の主要部のより詳細な構成を示すブロック図である。DSV制御ビット決定挿入部21には、加算器41の出力を２ビット単位で最大16ビット分保持するシフトレジスタ42が設けられている。シフトレジスタ42の出力は、変換データ処理部51と最小ラン連続制限処理部52に出力されている。
【０１１０】
変換データ処理部51は、変換パターン検出部71、変換テーブル（変調テーブル）72A乃至72D、セレクタ73、並びに不確定ビット決定部74により構成されている。
【０１１１】
最小ラン連続制限処理部52は、最小ラン連続制限データ検出予想部81、最小ラン連続制限データ検出部82、最小ラン連続制限テーブル（変調テーブル）83A，83B、並びに不確定ビット決定部84により構成されている。
【０１１２】
加算器41は、入力されたデータ列にDSV制御ビットを所定の間隔で挿入する。DSV制御ビットが挿入された入力データ列は、シフトレジスタ42により１データずつ順次シフトされ、処理単位である２データ単位に揃えられる。２データ単位のデータ列は、変換パターン検出部71、最小ラン連続制限データ検出予想部81、並びに最小ラン連続制限データ検出部82に対して、各部がその処理を行うのに必要なビット数分だけ並列に供給される。
【０１１３】
表３が変調テーブルとされるので、各部がその処理を行うのに必要な参照ビット数の最大値は15ビットであるが、２ビット単位で処理されるため、シフトレジスタ42は16ビットを保持する。
【０１１４】
変換パターン検出部71は、シフトレジスタ42から入力されたデータ列より、RLL規則を守る変換パターンの検出を行い、その結果情報（変換パターン決定情報）を変換パターン決定部53へ出力するとともに、各変換テーブル72A乃至72Dへも出力する。変換テーブル72Aは拘束長ｉ＝１の変換処理を行う。すなわち、２データを３チャネルビットに変換し、セレクタ73に出力する。変換テーブル72Bは拘束長ｉ＝２の変換処理を行う。すなわち、４データを６チャネルビットに変換し、変換パターン決定部53に出力する。変換テーブル72Cは拘束長ｉ＝３の変換処理を行う。すなわち、６データを９チャネルビットに変換し、変換パターン決定部53に出力する。変換テーブル72Dは拘束長ｉ＝４の変換処理を行う。すなわち、８データを12チャネルビットに変換し、変換パターン決定部53に出力する。また、変換パターン検出部71は、不確定符号に対応する不確定データを検出したとき、セレクタ73に不確定パターン識別情報を出力する。
【０１１５】
セレクタ73は、変換パターン検出部71からの不確定パターン識別情報に基づいて、変換テーブル72Aから供給されるチャネルビット列に不確定符号が含まれる場合（不確定パターン識別情報が不確定符号の存在を表している場合）、変換テーブル72Aより供給されたチャネルビット列を不確定ビット決定部74に出力する。
【０１１６】
不確定ビット決定部74は、直前符号検出部54の出力に基づいて、セレクタ73より供給された３チャネルビットに含まれる不確定ビットを確定し、不確定ビットが確定された後の３チャネルビットの符号列を変換パターン決定部53に出力する。これに対して、不確定符号が含まれていない場合には、セレクタ73は、変換テーブル72Aより供給されたチャネルビット列を変換パターン決定部53に直接出力する。
【０１１７】
また、変換データ処理部51は同期パターンを挿入するための終端テーブルを持っており、所定の位置で終端させるように、必要に応じて終端テーブルを用いる。終端テーブルが用いられた際には、その情報が同期パターンに埋め込まれる。
【０１１８】
最小ラン連続制限データ検出部82は、シフトレジスタ42より供給されるデータ列内に、最小ランの連続回数を制限するための変換パターンを検出した時、その情報を最小ラン連続制限データ検出情報として、変換パターン決定部53へ出力するとともに、各最小ラン連続制限テーブル83A，83Bにも出力する。最小ラン連続制限テーブル83Aは、最小ラン連続制限データ検出部82より供給された最小ラン連続制限データ検出情報に基づいて、６データを９チャネルビットに変換する処理を行い、９チャネルビットの符号列を変換パターン決定部53に出力する。最小ラン連続制限テーブル83Bは、最小ラン連続制限データ検出情報に基づいて、10データを15チャネルビットに変換し、不確定ビット決定部84に出力する。不確定ビット決定部84は、直前符号検出部54と直前符号語検出部55の出力に基づいて、最小ラン連続制限テーブル83Bより供給された15チャネルビットに含まれる不確定ビットを確定し、不確定ビット確定された後の15チャネルビットの符号列を変換パターン決定部53に出力する。
【０１１９】
最小ラン連続制限データ検出予想部81は、シフトレジスタ42より入力されたデータ列の先頭ではない所定の位置（途中の位置）において、最小ランの連続回数を制限するための変換パターンのうち所定の変換パターンを検出した時、その情報を最小ラン連続制限データ検出予想情報として変換パターン決定部53へ出力する。
【０１２０】
変換パターン決定部53は、変換パターン検出部71、最小ラン連続制限データ検出部82、そして最小ラン連続制限データ検出予想部81からの情報を用いて、変換テーブル72A乃至72Dおよび最小ラン連続制限テーブル83A，83Bより入力されるチャネルビット列から１つのチャネルビット列（変換パターン）を決定（選択）して、同期パターン挿入部23に出力する。同期パターン挿入部23は、変換パターン決定部53により決定された変換パターン列に対して、所定の間隔、所定の位置に同期パターンを挿入し、出力する。同期パターン挿入部23は、変換データ処理部51により発生され、変換パターン決定部53を介して得られた終端テーブル処理に関する情報を用いて同期パターンを決定する。NRZI化部24は、同期パターンが挿入されたチャネルビット列をNRZI化し、記録符号列（あるいは伝送路に出力する場合は伝送符号列）として出力する。
【０１２１】
直前符号検出部54は、変換パターン決定部53により最終的に確定された変換パターンからRLLを保証するために必要な情報として、次の変換処理の直前のチャネルビットを検出し、その検出結果（直前符号フラグ）を変換データ処理部51内の不確定ビット決定部74と、最小ラン連続制限処理部52内の不確定ビット決定部84へ供給する。直前符号語検出部55は、変換パターン決定部53により最終的に確定された変換パターンから、最小ランの連続制限回数を保証するために必要な情報として、次の変換処理の直前の最小単位の符号語を検出し、その検出結果（直前符号語フラグ）を最小ラン連続制限処理部52内の不確定ビット決定部84へ供給する。
【０１２２】
また各部の動作のタイミングは、図示しないタイミング管理部から供給されるタイミング信号に同期して管理されている。
【０１２３】
図４と表３の間での対応を示すと、次のようになる。すなわち、最小ラン連続制限データ検出部82は、表３において、入力データ列が（110111）であり、さらに続くチャネルビット列が“010”である時、または入力データ列が（1001110111）である時、動作する。最小ラン連続制限データ検出予想部81は、表３において、入力データ列の５データ目以降が、（110111）であり、さらに続くチャネルビット列が“010”である時、動作する。
【０１２４】
直前符号検出部54は、図５に示されるように、決定された変換パターン（チャネルビット列）の一番最後のチャネルビット列を記憶し、これが“１”か、“０”かの情報（直前符号フラグ）を出力する。直前符号語検出部55は、図６に示されるように、決定された変換パターン（チャネルビット列）の、最後から２チャネルビット目を記憶し、これが、“１”か、“０”かの情報（直前符号語フラグ）を出力する。あるいは、直前符号語検出部55は、最小ランｄ＝１の特性とあわせて、最後から３チャネルビット分を記憶し、これが“010”か、そうでないかの情報（直前符号語フラグ）を出力する。不確定ビット決定部74は、図７に示されるように、表３において、入力データ列（11）を“*0*”に変換するテーブルに相当する。直前のチャネルビットが“１”のときは（直前符号フラグがonのときは）“000”が、直前のチャネルビットが“０”のときは（直前符号フラグがoffのときは）“101”が、それぞれ出力される。
【０１２５】
不確定ビット決定部84は、図８に示されるように、表３において、入力データ列（1001110111）を置換符号“$0$ 010 000 000 101”に置換するテーブルに相当する。直前の符号が“１”であるとき（直前符号フラグがonのとき）、または“０”であっても、直前の符号語が“010”であるとき（直前符号語フラグがonのとき）、不確定符号“$0$”は“000”とされる。直前の符号語が“010”ではないとき（直前符号語フラグがoffのとき）、不確定符号“$0$”は“101”とされる。換言すると、直前の２チャネルビットが“10”あるいは“01”のときは置換符号“000 010 000 000 101”が、直前の２チャネルビットが“00”のときは置換符号“101 010 000 000 101”が、それぞれ出力される。
【０１２６】
さらに図４と表３の間での対応を示すと、変換パターン決定部53は、変換テーブル72A乃至72Dからの出力と、最小ラン連続制限テーブル83A，83Bからの出力が重なる場合に、変換パターン検出部71、最小ラン連続制限データ検出部82、そして最小ラン連続制限データ検出予想部81からの情報を用いて、変換パターンの決定を行う。表３において例えば、（11）と、（110111）＋“010”の場合は、拘束長の大きい最小ラン連続制限テーブル83Aからの出力（後者）が選択される。また、表３において、例えば、（10）と、（1001110111）＋“010以外”の場合は、最小ラン連続制限データ検出予想部81からの出力により、拘束長の大きい最小ラン連続制限テーブル83Bからの出力（後者）が選択される。また、表３において例えば、（10）と、（1001110111）＋“010”の場合は、最小ラン連続制限データ検出予想部81からの出力により、拘束長の小さい変換テーブル72Aからの出力（前者）が選択される。
【０１２７】
次に、図９のフローチャートを参照して、図１の変調装置１の記録方法（変調方法）について説明する。ステップS1において、DSV制御ビット決定挿入部21の加算器41は、入力されたデータ列にDSV制御ビットを付加する。ステップS2においてシフトレジスタ42は、加算器41より供給されたDSV制御ビットが付加されたデータ列を２ビット単位で保持する。ステップS3で最小ラン連続制限データ検出予想部81により予想処理が、ステップS4で最小ラン連続制限データ検出部82、最小ラン連続制限テーブル83A，83B、並びに不確定ビット決定部84により最小ラン連続制限データ検出処理が、そして、ステップS5で変換データ処理部51により変換パターン検出処理が、それぞれ実行される。
【０１２８】
なお、実際には、これらのステップS3乃至ステップS5の処理はそれぞれ並列して実行される。
【０１２９】
ステップS3の予想処理の詳細は図10のフローチャートを参照して後述するが、これにより、データに変換パターン（110111）が途中から含まれており、かつ、次のチャネルビットが“010”かが判定され、そうである場合には予想フラグがonされる。そして、そうでない場合には予想フラグがoffされる。
【０１３０】
これに対して、ステップS4の最小ラン連続制限データ検出処理の詳細は図11のフローチャートを参照して後述するが、これによりデータが変換パターン（1001110111）である場合には、最小ラン連続制限データ検出フラグ（10data）がonとされ、10データを15チャネルビットに変換する処理が実行される。また、データが変換パターン（110111）であり、次のチャネルビットが“010”である場合には、最小ラン連続制限データ検出フラグ（６data）がonとされる。そうでない場合には、最小ラン連続制限データ検出フラグがoffとされる。
【０１３１】
ステップS5の変換パターン検出処理の詳細は図13のフローチャートを参照して後述するが、これにより、８データを12チャネルビットに変換する処理、６データを９チャネルビットに変換する処理、４データを６チャネルビットに変換する処理、または２データを３チャネルビットに変換する処理が実行される。
【０１３２】
図９に戻って、次に、ステップS6において、変換パターン決定部53は変換パターン決定処理を実行する。この変換パターン決定処理の詳細は図17のフローチャートを参照して後述するが、これにより変換データ処理部51の変換テーブル72A乃至72Dにより変換された変換パターンと、最小ラン連続制限テーブル83A，83Bにより変換された変換パターンのいずれかが選択され、出力される。
【０１３３】
ステップS7において、同期パターン挿入部23は、変換パターン決定部53より入力された、変換パターンが最終的に確定された符号列に対して同期パターンを挿入する。ステップS8において、NRZI化部24は、同期パターン挿入部23より供給された同期パターンが挿入されている符号列をNRZI化する。ステップS9において、記録部12は、NRZI化部24によりNRZI化された記録符号列を記録媒体13に記録する。
【０１３４】
次に、図10のフローチャートを参照して、図９のステップS3における予想処理の詳細について説明する。
【０１３５】
ステップS31において、最小ラン連続制限データ検出予想部81は、シフトレジスタ42より供給されたデータがデータパターン（xxxx110111）と一致するかを判定する。入力されたデータがデータパターン（xxxx110111）と一致する場合には、ステップS32において、最小ラン連続制限データ検出予想部81は、次のチャネルビットが“010”かを判定する。次のチャネルビットが“010”である場合には、ステップS33において、最小ラン連続制限データ検出予想部81は、予想フラグonを最小ラン連続制限データ検出予想情報として変換パターン決定部53に出力する。なお、予想フラグは予想処理を開始するとき、事前にあらかじめoffに初期設定されている。
【０１３６】
ステップS32において、次のチャネルビットが“010”ではないと判定された場合（“000”,“101”、または“001”である場合）、ステップS34において、最小ラン連続制限データ検出予想部81は、予想フラグoffを出力する。また、ステップS31において、データがデータパターン（xxxx110111）と一致しないと判定された場合にも、最小ラン連続制限データ検出予想部81は、予想フラグoffを出力する。
【０１３７】
これらの予想フラグは、図17のステップS232において利用される。
【０１３８】
次に、図11のフローチャートを参照して、図９のステップS4の最小ラン連続制限データ検出処理について説明する。
【０１３９】
ステップS51において、最小ラン連続制限データ処理部52の最小ラン連続制限データ検出部82は、最小ラン連続制限データ検出フラグをoffする。すなわち、最小ラン連続制限データ検出フラグ（10data）と最小ラン連続制限データ検出フラグ（6data）がoffに初期設定される。ステップS52において、最小ラン連続制限データ検出部82は、シフトレジスタ42より供給されたデータがデータパターン（1001110111）と一致するかを判定する。入力されたデータがデータパターン（1001110111）と一致する場合には、ステップS53において、最小ラン連続制限データ検出部82は、最小ラン連続制限データ検出フラグ（10data）onを最小ラン連続制限データ検出情報として、変換パターン決定部53と最小ラン連続制限テーブル83A，83Bに出力する。
【０１４０】
ステップＳ５４において、最小ラン連続制限テーブル８３Ｂは、１０データ／１５チャネルビット処理を実行する。この処理の詳細は図１２に示されている。
【０１４１】
すなわち、ステップS81において、最小ラン連続制限テーブル83Bは“$0$ 010 000 000 101”を不確定ビット決定部84に出力する。ステップS82において、不確定ビット決定部84は、直前符号フラグはonかを判定する。直前符号フラグは、直前符号検出部54が不確定ビット決定部84に出力するフラグであり、その詳細は図15のフローチャートを参照して後述するが、この直前符号フラグは、直前の符号語列の１チャネルビットが“１”のときonとされる。
【０１４２】
ステップS82において、直前符号フラグがonであると判定された場合（直前の符号が“１”である場合）、ステップS86において、不確定ビット決定部84は、最小ラン連続制限テーブル83Bより供給された不確定符号を含む符号語“$0$”を“000”に設定し、ステップS87において“000 010 000 000 101”を変換パターン決定部53に出力する。
【０１４３】
ステップS82において、直前符号フラグがonではない（offである）と判定された場合（直前の符号が“０”である場合）、ステップS83において、不確定ビット決定部84は、直前符号語フラグがonかを判定する。この直前符号語フラグは、直前符号語検出部55により検出され、不確定ビット決定部84に供給されるフラグであり、このフラグは図16のフローチャートに示されるようにして検出される。その詳細は図16のフローチャートを参照して後述するが、この直前符号フラグは、この直前符号語列の３チャネルビットが“010”のときonとされる。
【０１４４】
ステップS83において直前符号語フラグがonであると判定された場合（直前の符号が“010”である場合）には、ステップS86において、不確定ビット決定部84は、直前符号フラグがonである場合と同様に、“$0$”に“000”を設定し、ステップS87においてチャネルビット列“000 010 000 000 101”を変換パターン決定部53に出力する。
【０１４５】
ステップS83において、直前符号語フラグがonではない（offである）と判定された場合（直前の符号が“010”ではない場合）、ステップS84において、不確定ビット決定部84は、符号語“$0$”に“101”を設定し、ステップS85においてチャネルビット列“101 010 000 000 101”を変換パターン決定部53に出力する。
【０１４６】
図11に戻って、ステップS52において、データがデータパターン（1001110111）と一致しないと判定された場合、ステップS55において、最小ラン連続制限データ検出部82は、データがデータパターン（110111）と一致するかを判定する。データがデータパターン（110111）と一致する場合には、ステップS56において、最小ラン連続制限データ検出部82は、次の３チャネルビットが“010”かを判定する。次の３チャネルビットが“010”である場合には、ステップS58において、最小ラン連続制限データ検出部82は、最小ラン連続データ検出フラグ（６data）onを最小ラン連続制限データ検出情報として、変換パターン決定部53と最小ラン連続制限テーブル83A，83Bに出力する。ステップS59において、最小ラン連続制限テーブル83Aは、置換符号“001 000 000”を変換パターン決定部53に出力する。
【０１４７】
ステップS56において、次の３チャネルビットが“010”ではないと判定された場合には、ステップS57において、最小ラン連続制限データ検出部82は、最小ラン連続制限データ検出フラグoffを変換パターン決定部53に出力する。ステップS55において、入力されたデータがデータパターン（110111）と一致しないと判定された場合にも、ステップS57において最小ラン連続制限データ検出フラグoffが出力される。この最小ラン連続制限データ検出フラグのoffは、最小ラン連続制限データ検出フラグ（10data）がoffであることを意味するとともに、最小ラン連続制限データ検出フラグ（６data）がoffであることを意味する。
【０１４８】
次に、図13のフローチャートを参照して、図９のステップS5における変換パターン検出処理の詳細について説明する。
【０１４９】
ステップS101において、変換パターン検出部71は、シフトレジスタ42より入力されたデータがデータパターン（00001000），（00000000）と一致するかを判定する。入力されたデータがデータパターン（00001000）または（00000000）と一致する場合には、ステップS102において、変換パターン検出部71は、８データ／12チャネルビットの変換データ決定情報を出力する。この情報は、変換パターン決定部53と変換テーブル72A乃至72Dに供給される。ステップS103において、変換テーブル72Dは、８データを12チャネルビットに変換する。そして、12チャネルビットは変換パターン決定部53に供給される。すなわち、入力されたデータがデータパターン（00001000）または（00000000）と一致する場合には、それぞれ符号列“000 100 100 100”または“010 100 100 100”が出力される。ステップS102で出力された情報は後述する図17のステップS236で利用され、ステップS103で変換された符号列はステップS237で選択、出力される。
【０１５０】
ステップS101において、入力されたデータがデータパターン（00001000），（00000000）と一致しないと判定された場合、ステップS104において、変換パターン検出部71は、入力されたデータがデータパターン（000011），（000010），（000001），（000000）と一致するかを判定する。入力されたデータがこの４つのいずれかと一致する場合には、ステップS105において変換パターン検出部71は、６データ／９ャネルビット決定情報を変換パターン決定部53と変換テーブル72A乃至72Dに出力する。ステップS106において、変換テーブル72Cは、６データを９チャネルビットに変換し、変換パターン決定部53に出力する。すなわち、入力されたデータがデータパターン（000011），（000010），（000001），（000000）のいずれかである場合には、符号列“000 100 100”，“000 100 000”，“010 100 100”，“010 100 000”がそれぞれ出力される。ステップS105で出力された情報は図17のステップS238で利用され、ステップS106で変換された符号列はステップS239で選択、出力される。
【０１５１】
ステップS104において、入力されたデータがデータパターン（000011），（000010），（000001），（000000）のいずれとも一致しないと判定された場合には、ステップS107において変換パターン検出部71は、入力されたデータがデータパターン（0011），（0010），（0001）と一致するかを判定する。入力されたデータがこの３つのデータパターンのいずれかと一致する場合には、ステップS108において変換パターン検出部71は、４データ／６チャネルビットの変換データ決定情報を変換パターン決定部53と変換テーブル72A乃至72Dに出力する。ステップS109において変換テーブル72Bは、４データを６チャネルビットに変換し、変換パターン決定部53に出力する。すなわち、入力されたデータがデータパターン（0011）と一致する場合には符号列“010 100”が出力され、入力データがデータパターン（0010）と一致する場合には符号列“010 000”が出力され、入力データがデータパターン（0001）と一致する場合には符号列“000 100”が出力される。ステップS108で出力された情報は図17のステップS240で利用され、ステップS109で変換された符号列はステップS241で選択、出力される。
【０１５２】
ステップS107において、入力されたデータがデータパターン（0011），（0010），（0001）のいずれとも一致しないと判定された場合には、ステップS110において変換パターン検出部71は、入力されたデータがデータパターン（11），（10），（01）と一致するかを判定する。入力されたデータがこの３つのデータパターンのいずれかと一致する場合には、ステップS111において変換パターン検出部71は、２データ／３チャネルビットの変換データ決定情報を変換パターン決定部53と変換テーブル72A乃至72Dに出力する。この情報は、図17のステップS243で利用される。
【０１５３】
ステップS112において、変換パターン検出部71は、入力された２データはデータパターン（11）と一致するかを判定する。入力されたデータがデータパターン（11）と一致する場合には、ステップS113において変換パターン検出部71は、不確定パターン識別情報をセレクタ73に出力する。不確定パターン識別情報は、後述する図14のステップS142で利用されている。
【０１５４】
ステップS112において、入力されたデータがデータパターン（11）と一致しないと判定された場合においては、ステップS113の処理はスキップされる。ステップS113の処理の後、またはステップS112でデータがデータパターン（11）と一致しないと判定された場合には、ステップS114において、変換テーブル72Aは、２データ／３チャネルビット処理を実行する。この２データ／３チャネルビット処理の詳細は図14のフローチャートに示されている。
【０１５５】
次に、図14のフローチャートを参照して、図13のステップS114における２データ／３チャネルビット処理の詳細について説明する。
【０１５６】
ステップS141において、変換テーブル72Aは、２データを３チャネルビットに変換してセレクタ73に出力する。すなわち、変換テーブル72Aは、入力されたデータがデータパターン（11）と一致する場合には符号列“*0*”を出力し、入力されたデータがデータパターン（10）と一致する場合には符号語“001”を出力し、入力されたデータがデータパターン（01）と一致する場合には符号語“010”を出力する。
【０１５７】
ステップS142において、不確定ビット決定部74は、不確定パターン識別情報を取得したかを判定する。不確定パターン識別情報（図13のステップS113で出力される）が変換パターン検出部71より取得されてない場合には、ステップS143においてセレクタ73は、３チャネルビットを変換パターン決定部53に出力する処理を実行する。具体的には、変換テーブル72Aより入力されたチャネルビット“001”，“010”が変換パターン決定部53に出力される。ステップS143で出力された符号列は、図17のステップS245で選択、出力される。
【０１５８】
これに対して、ステップS142において、不確定パターン識別情報が変換パターン検出部71より取得されたと判定された場合、ステップS144において、不確定ビット決定部74は直前符号フラグはonかを判定する。この直前符号フラグは、後述する図15の処理に基づき、直前符号検出部54から供給されている。直前符号フラグがonである場合（直前の符号語列の１チャネルビットが“１”でえある場合）には、ステップS145において不確定ビット決定部74は、符号語“000”を変換パターン決定部53に出力する。これに対して、直前符号フラグがonではない（offである）場合（直前の符号語列の１チャネルビットが“０”である場合）、ステップS146において不確定ビット決定部74は、符号語“101”を変換パターン決定部53に出力する。ステップS145，S146で出力された符号列は、図17のステップS244で選択、出力される。
【０１５９】
次に、図15と図16のフローチャートを参照して、直前符号検出部54と直前符号語検出部55の処理について説明する。
【０１６０】
最初に、図15のフローチャートを参照して、直前符号検出部54の直前符号検出処理について説明する。
【０１６１】
ステップS171において、直前符号検出部54は、変換パターン決定部53により最終的に確定された符号列より、次の変換処理の直前の符号列の１チャネルビットは“１”かを判定する。直前の符号列の１チャネルビットが“１”である場合には、ステップS172において直前符号検出部54は、直前符号フラグonを出力する。これに対して、ステップS171において、直前の符号列の１チャネルビットが“１”ではないと判定された場合（“０”であると判定された場合）、ステップS173において、直前符号検出部54は直前符号フラグoffを出力する。この直前符号フラグは、不確定ビット決定部74と不確定ビット決定部84に出力され、図12のステップS82と図14のステップS144で利用される。
【０１６２】
次に、図16のフローチャートを参照して、直前符号語検出部55による直前符号語検出処理について説明する。
【０１６３】
ステップS201において、直前符号語検出部55は、変換パターン決定部53により決定された符号列より、次の変換処理の直前の符号語列の３チャネルビットは“010”かを判定する。直前の符号語列の３チャネルビットが“010”である場合には、ステップS202において、直前符号語検出部55は、直前符号語フラグonを出力する。ステップS201において、直前の符号語列の３チャネルビットが“010”ではないと判定された場合（“000”，“101”,“001”である場合）、ステップS203において、直前符号語検出部55は、直前符号語フラグoffを出力する。この直前符号語フラグは不確定ビット決定部84に出力され、図12のステップS83で利用される。
【０１６４】
次に、図17のフローチャートを参照して、図９のステップS6における変換パターン決定処理の詳細について説明する。
【０１６５】
ステップS231において、変換パターン決定部53は、最小ラン連続制限データ検出フラグ（10data）がonかを判定する。この最小ラン連続制限データ検出フラグ（10data）は、図11のステップS53，S57で最小ラン連続制限データ検出部82より出力されたものである。最小ラン連続制限データ検出フラグ（10data）がonである場合（入力データがデータパターン（1001110111）と一致する場合）には、ステップS232において変換パターン決定部53は、予想フラグがonかを判定する。この予想フラグは、図10のステップS33，S34において最小ラン連続制限データ検出予想部81より出力されたものである。
【０１６６】
予想フラグがonではない（offである）場合（入力データ列がデータパターン（xxxx110111）と一致しないか、または一致しても、次のチャネルビットが“010”でない場合）、ステップS233において変換パターン決定部53は、10データ／15チャネルビットを選択し、出力する。すなわち、予想フラグがoffである場合には（データが（xxxx110111）でないか、または（xxxx110111）であっても次のチャネルビットが“010”でない場合には）、図12のステップS85，S87で出力した符号列が選択され、同期パターン挿入部23に出力される。
【０１６７】
これに対して、予想フラグがonである場合（データが（xxxx110111）であり、かつ次のチャネルビットが“010”である場合）、ステップS233の処理は実行されず、後述するステップS242以降の２データ／３チャネルビットの変換処理の選択処理が実行される。これにより、最小ラン連続制限データ（110111）＋“010”をその一部に含みうる最小ラン連続制限データ（1001110111）が入力データであった場合、（xxxx110111）＋“010”が満足されるときには、入力データ（1001110111）を一括変換処理するのではなく、分割して先頭から２ビットを変換する処理を行う。
【０１６８】
すなわち、予想フラグがonである場合には、ステップS242において変換パターン決定部53は、２データ／３チャネルビットの変換データ決定情報を変換パターン検出部71より受信したかを判定する。この情報は、図13のステップS111において出力されたものである。２データ／３チャネルビットの変換データ決定情報を受信した場合には、ステップS243において変換パターン決定部53は、さらにその２データ／３チャネルビットの変換データ決定情報は、データ（11）の変換データ決定情報かを判定する。すなわち、不確定符号を含む符号に変換される可能性があるデータパターンであるのかが判定される。データ（11）の変換データ決定情報を受信したと判定された場合には、ステップS244において変換パターン決定部53は、不確定ビット決定部74が出力する３チャネルビットを選択し、出力する処理を実行する。すなわち、図14のステップS145，S146の処理で出力された符号列が選択、出力される。
【０１６９】
これに対して、ステップS243において、２データ／３チャネルビットの変換データ決定情報が、データ（11）の変換データ決定情報ではないと判定された場合（不確定符号を含む符号に変換されるデータのチャネルビットではないと判定された場合）、ステップS245において変換パターン決定部53は、セレクタ73の３チャネルビットを選択し、出力する。すなわち、この場合には、図14のステップS143で出力された符号列が選択、出力される。
【０１７０】
ステップS231において、最小ラン連続制限データ検出フラグ（10data）がonではない（offである）と判定された場合（入力データのデータパターンは（1001110111）ではないと判定された場合）、ステップS234において変換パターン決定部53は、最小ラン連続制限データ検出フラグ（６data）がonかを判定する。この最小ラン連続制限データ検出フラグ（６data）は、図11のステップS58でデータパターンが（110111）であり、次の３チャネルビットが“010”である場合に出力されたものである。ステップS234において、最小ラン連続制限データ検出フラグ（６data）がonであると判定された場合、ステップS235において変換パターン決定部53は、置換符号“001 000 000”を選び、出力する。この置換符号は、図11のステップS59で出力されたものである。
【０１７１】
ステップS233，S235の処理の後、処理は図９のステップS7に戻る。これにより、データ（10），（01）が並列的に変換処理された場合においても、ステップS233，S235の処理が優先して実行されることになる。
【０１７２】
ステップS234において、最小ラン連続制限データ検出フラグ（６data）がoffであると判定された場合（入力データパターンが（110111）ではないか、あるいはそうであったとしても次のチャネルビットが“010”ではない場合）、ステップS236において変換パターン決定部53は、８データ／12チャネルビットの変換データ決定情報を受信したかを判定する。この決定情報は、図13のステップS102で出力されたものである。８データ／12チャネルビットの変換データ決定情報が受信されている場合には、ステップS237において変換パターン決定部53は、８データ／12チャネルビットの変換出力を選択、出力する。すなわち、図13のステップS103で変換されたチャネルビットが選択、出力されることになる。
【０１７３】
ステップS236において、８データ／12チャネルビットの変換データ決定情報を受信していないと判定された場合には、ステップS238において変換パターン決定部53は、６データ／９チャネルビットの変換データ決定情報を受信したかを判定する。この決定情報は、図13のステップS105で出力されたものである。６データ／９チャネルビットの変換データ決定情報を受信した場合には、ステップS239において変換パターン決定部53は、６データ／９チャネルビットの変換出力を選択、出力する。すなわち、図13のステップS106で出力されたデータが選択、出力されることになる。
【０１７４】
ステップS238において、６データ／９チャネルビットの変換データ決定情報を受信してないと判定された場合には、ステップS240において変換パターン決定部53は、４データ／６チャネルビットの変換データ決定情報を受信したかを判定する。この決定情報は、図13のステップS108で出力されたものである。４データ／６チャネルビットの変換データ決定情報を受信している場合には、ステップS241において変換パターン決定部53は、４データ／６チャネルビットの変換出力を選択、出力する。すなわち、図13のステップS109で出力されたチャネルビットが選択、出力されることになる。
【０１７５】
ステップS240において、４データ／６チャネルビットの変換データ決定情報が受信されていないと判定された場合、処理はステップS242乃至S245の処理が上述した場合と同様に実行される。ステップS237，S239，S241，S244，S245の処理の後、処理は図９のステップS7に戻る。
【０１７６】
以上のようにして変換パターンが決定されると、決定されたチャネルビットに相当する分だけデータ列がシフトレジスタ42においてシフトされ、次のデータの変換パターン決定処理が実行されることになる。
【０１７７】
以上の処理のうち、最小ラン連続制限データ検出予想部81、最小ラン連続制限データ検出部82、最小ラン連続制限テーブル83A，83B、変換パターン検出部71、変換テーブル72A乃至72Dの処理についてさらに説明すると、図18に示されるようになる。
【０１７８】
すなわち、入力データ列が(xxxx110111)である場合には、さらに次の３チャネルビットが“010”であるかが判定される。次の３チャネルビットが“010”である場合には、最小ラン連続制限データ検出予想部81は予想フラグonを出力し、一致しない場合には予想フラグoffを出力する。
【０１７９】
また、最小ラン連続制限データの検出は、最小ラン連続制限データ検出部82により、入力データ列の10データが表３にある拘束長ｉ＝５の10データの最小ラン連続制限データ（1001110111）と一致するかどうか比較することで行われる。一致したとき、さらに続くチャネルビット列が“010”であるかが、予想フラグに基づいて、変換パターン決定部53により判定される。続くチャネルビットが“010”でない（予想フラグがoffである）ときは、データ（1001110111）は一括して変換されるが、続くチャネルビットが“010”である（予想フラグがonである）ときは、データ（1001110111）は一括して変換されず、分割して先頭から２ビットが処理される（例外処理される）。10データがデータパターン（1001110111）と一致しなかった場合、最小ラン連続制限データ検出部82は６データが表３にあるｉ＝３の拘束長６データの最小ラン連続制限データ（110111）と一致するかどうかを判定する。一致したとき、最小ラン連続制限データ検出部82は、さらに続くチャネルビット列が“010”であるかをデータ列内で見るために、後続の５データを参照する。５データの先頭から、（01），（001），（00000），終端（0000）のうちのいずれかのパターンと一致した時に、６データの最小ランの連続制限コード検出処理が行われる。
【０１８０】
変換パターンの検出では、変換パターン検出部71は、入力データ列から８データを参照し、それが表３にある拘束長が４の８データの変換パターンと一致するかどうか比較する。一致するパターンがあれば、変換テーブル72Dが置換符号を決定する。８データのパターンが一致しなかった場合、変換パターン検出部71は６データまでを参照し、それが表３にある拘束長が３の６データの変換パターンと一致するかどうか比較する。一致するパターンがあれば、変換テーブル72Cが変換符号を決定する。６データのパターンが一致しなかった場合、変換パターン検出部71は４データまでを参照し、それが表３にある拘束長が２の４データの変換パターンと一致するかどうか比較する。一致するパターンがあれば、変換テーブル72Bが変換符号を決定する。４データのパターンが一致しなかった場合は、変換パターン検出部71は最後に２データまでを参照し、それが表３にある拘束長が１の２データのテーブル（11），（10），（01）と一致するかどうか比較する。この中に一致するパターンがあれば、変換テーブル72Aが変換符号を決定する。
【０１８１】
そして、入力データ列内のデータは、それぞれ決定した分だけシフトレジスタ42において先に進められ、次の検出処理が同様に繰り返される。
【０１８２】
データ検出の様子を拘束長の長さで分けて説明すると、図19に示されるようになる。最小ラン連続制限データ検出部82は、入力データ列から10データを参照し、それが表３にある拘束長が５の10データの最小ラン連続制限データ（1001110111）と一致するかどうか比較する。一致したとき、以下の例外処理を除いて、10データの最小ラン連続制限データ変換処理が行われる。例外処理について、さらに続くチャネルビット列が“010”の場合となる条件（例外処理する場合の条件）をデータ列内で見るために、最小ラン連続制限データ検出予想部81は後続の５データを参照する。５データの先頭から、（01）,（001），（00000）,終端（0000）のうちいずれかのパターンと一致した時に、最小ランの連続制限データ（1001110111）を一括して変換する処理は行われず、分割して先頭から２ビットが処理される（例外処理）。
【０１８３】
10データが一致しなかった場合、最小ラン連続制限データ検出部82は８データまでを参照し、それが表３にある拘束長が４の８データの変換パターンと一致するかどうか比較する。一致するパターンがあれば、変換テーブル72Dが置換符号を決定する。
【０１８４】
８データが変換パターンに一致しなかった場合、最小ラン連続制限データ検出部82は６データまでを参照し、それが表３にある拘束長が３の６データの最小ラン連続制限データ（110111）と一致するかどうか比較する。データがパターン（110111）と一致したとき、さらに続くチャネルビット列が“010”の場合となる条件をデータ列内で見るために、最小ラン連続制限データ検出部82は後続の５データを参照する。５データの先頭が（01），（001），（00000），終端（0000）のうちいずれかのパターンと一致した時に、６データの最小ランの連続制限データ変換処理が行われる。これらのいずれかのパターンにも一致しない時は、最小ランの連続制限データ変換処理は行われず、２ビット単位に分割して変換処理が行われる。
【０１８５】
データパターン（110111）が検出されなかった時は、さらに、表３にある拘束長が３の６データの変換パターンと一致するかどうか比較され、一致するパターンがあれば、変換テーブル72Cが変換符号を決定する。６データが変換パターンに一致しなかった場合、４データまでが参照され、それが表３にある拘束長が２の４データの変換パターンと一致するかどうかが比較される。一致するパターンがあれば、変換テーブル72Bが変換符号を決定する。４データが変換パターンに一致しなかった場合は、最後に２データまでが参照され、それが表３にある拘束長が１の２データのパターン（11），（10），（01）と一致するかどうか比較される。この中に一致するパターンがあれば変換テーブル72Aが変換符号を決定する。
【０１８６】
そして、上述した場合と同様に、入力データ列内のデータはそれぞれ決定した分だけシフトレジスタ42内で先に進められ、次の検出処理が同様に繰り返される。
【０１８７】
以上の様にして、基本構成を 1,7PP符号と同様とし、すなわち、最小ランｄ＝１と最大ランｋ＝７、および変換率(m:n)=(2:3)であり、データ列内の所定の位置に１ビットのDSV制御ビットを挿入することで効率良くDSV制御を行い、さらに、最小ランの連続する回数を、５回までに制限してエラー伝播特性を改善するような変調テーブルと変調装置が実現する。
【０１８８】
なお、表３におけるデータ列とチャネルビット列の各拘束長内では、配列の順序については、同一の規則内であれば、変更してもよい。例えば、以下に表４として示す表３の拘束長ｉ＝１部分は、次の表５のような配列とすることができる。
＜表４＞
データパターン        符号パターン
ｉ＝１  11            *0*
10            001
01            010
＜表５＞
データパターン        符号パターン
ｉ＝１  11            *0*
10            010
01            001
この場合でもデータ列の要素の「１」の個数と、チャネルビット列の要素の「１」の個数は、それぞれ２で割った時の余りがどちらも１あるいは０で一致するようにする。
【０１８９】
この他にも、表３の、データ列の各要素の（１）と（０）を反転させても良い。すなわち、次の表６として示す表３の一部は、表７のように配列することができる。この場合でもデータ列の要素の「１」の個数と、符号語列の要素の「１」の個数は、それぞれ２で割った時の余りがどちらも１あるいは０で一致している。
【０１９０】
＜表６＞
データパターン        符号パターン
11                *0*
10                001
01                010
0011              010 100
0010              010 000
0001              000 100
………
＜表７＞
データパターン        符号パターン
00                *0*
01                001
10                010
1100              010 100
1101              010 000
1110              000 100
………
【０１９１】
表３はさらに、システムの要求にもとづいて、以下のようにすることもできる。例えば、最大ランｋ＝８を許容できる場合、表３において最大ランｋ＝７を実現する置換パターンである、拘束長ｉ＝４の変換パターンを省略することができる。すなわち、拘束長ｉ＝４の変換パターンが省略された表３は、基礎パターンのｉ＝１からｉ＝３までによって、最小ランｄ＝１、最大ランｋ＝８のRLL符号を実現し、さらにｉ＝３及びｉ＝５の最小ランの連続を制限する置換パターンによって、最小ランの連続が最大でも５回までに制限された符号語列を発生することができる。
【０１９２】
そして、DSV制御の性能に対して許容できる場合は、例えば表３において、拘束長i＝４の部分だけを他の部分と偶奇性が反対となるように構成するなどして、偶奇性の規則が部分的に他の部分と異なるテーブルとすることもできる。
【０１９３】
この他、各テーブルの全てのパターンにおいて、データパターンの「１」の個数と、符号パターンの「１」の個数が、それぞれ２で割った時の余りが一致していないように選ぶことができる。ただし、その場合は、そのことを全てのパターンで統一して行う必要がある。
【０１９４】
これらのテーブルはいずれも、本発明に基づいた変調装置によって、同様にして実現することができる。
【０１９５】
図１の変調装置１においては、DSV制御ビット決定挿入部21によりDSV制御ビットとして１または０のうち最適なものを決定し、付加するようにしたが、０を付加したデータ列と１を付加したデータ列の両方を用意し、それぞれを処理し、最後の段階でいずれか一方を選ぶようにすることも可能である。図20は、この場合の変調装置の構成例を表している。
【０１９６】
すなわち、図20の変調装置１の符号化装置11は、DSV制御ビット決定挿入部21に換えて、DSV制御ビット挿入部201が配置されている。また、NRZI化部24の後段に（記録部12の前段に）DSV制御部202が挿入されている。その他の構成は、図１に示される場合と同様である。
【０１９７】
すなわち、図20の変調装置１においては、DSV制御ビット挿入部201において、入力データ列（図21A）に対して、DSV制御ビットとして０を挿入したデータ列（図21B0）と１を挿入したデータ列（図21B1）の両方が生成される。そして、それぞれが変調部22に供給され、チャネルビット列に変換される（図21C0，C1）。同期パターン挿入部23は、変調部22より入力された２系列のチャネルビット列に対してそれぞれ同期パターンを挿入し、２系列のチャネルビット列を出力する。NRZI化部24は、２系列のチャネルビット列をそれぞれNRZI化し、DSV制御部202に出力する。DSV制御部202は、２系列のチャネルビット列のいずれか最適な方を各スパン（DSV区間）毎に選び、１つのチャネルビット列を記録部12に供給する。記録部12は、最終的にDSV制御部202により選択されたチャネルビット列を記録媒体13に記録する。
【０１９８】
以上の様にして、基本構成を1,7PP符号と同様とし、すなわち、最小ランｄ＝１と最大ランｋ＝７、および変換率(m:n)=(2:3)であり、データ列内の所定の位置に１ビットのDSV制御ビットを挿入することで効率良くDSV制御を行い、さらに、最小ランの連続する回数を５回までに制限してエラー伝播特性を改善する変調テーブルと変調装置を実現することができる。
【０１９９】
以下に、本実施の形態の変調テーブルを用いた変調結果を検証した結果を示す。表３に従って変調し、Ｔminの連続を制限し、かつデータ列内においてDSV制御ビットを挿入したデータ列は、特に、複数の最小ラン連続制限パターンによって、Ｔminの連続回数が５回までに制限されている。シミュレーションは、表２の従来1,7PP符号と、表３による符号について行った。
【０２００】
任意に作成したランダムデータ634,880dataを、同期パターンを考慮した上で45data置きにDSV制御ビットの１bitを挿入してDSV制御を行い、表２または表３に従って符号語列（チャネルビット列）に変換した。さらに、データ列相当で1240data間隔で同期パターンを挿入した。結局、チャネルビット数は、989,184符号語（チャネルビット）となる。このとき、発生された符号語列の最小ラン連続の発生分布は以下の通りである。なお、表８では、最小ランの連続の回数がｎ回である場合の最小ラン連続の発生回数をRMTR(n)と表している。
【０２０１】
＜表８＞
*** 1,7PPの比較***
表２の1,7PP  表３の1,7PP
RMTR(1)          42730        42889
RMTR(2)          17458        17517
RMTR(3)           6353         6349
RMTR(4)           2536         2538
RMTR(5)            652          656
RMTR(6)            149       ------
RMTR(7)         ------       ------
max-RMTR             6            5
【０２０２】
表８から、表２の1,7PP符号では最小ランの連続が６回であるのに対して、表３の1,7PP符号では５回までに制限されていることが確認されるとともに、その分布は、RMTR(6)の回数がなくなった一方でRMTR(1)〜RMTR(5)の発生回数に大きな差異はないこと、すなわち、RMTR(6)の部分が、もっぱら別のラン長へ置き換えられていることが判る。
【０２０３】
1,7PP符号は、最小ランｄ＝１、最大ランｋ＝７、変換率(m:n)=(2:3)の変調テーブルにおいて、最小ラン長の繰り返し回数を制限する置換パターンを設けるようにしたので、
（１）高線密度での記録再生、およびタンジェンシャル・チルトに対する許容度が向上する。
（２）信号レベルが小さい部分が減少し、AGC（Auto Gain Control）やPLL（Phase-Locked Loop）等の波形処理の精度が向上し、総合特性を高めることができる。
（３）従来と比較して、ビタビ復号等の際のパスメモリ長を短く設計することができ、回路規模を小さくすることができる。
また、変調テーブルの変換パターンを構成するデータ列の要素の「１」の個数と、符号語列の要素の「１」の個数を、２で割った時の余りが、どちらも１あるいは０で一致するようにしたので、
（４）DSVの制御のための冗長ビットを少なくすることができる。
（５）最小ランｄ＝１かつ(m,n)=(2,3)においては、1.5符号語でDSV制御を行うことができる。
（６）冗長度が少ない上に、最小ランと最大ランを守ることができる。さらに表３のテーブルは、表２の1,7PP符号と較べて、最小ランの連続回数制限を６回から５回へと少なくしたので、データ記録再生時のエラー伝播を、より少なくすることができる。
【０２０４】
上述したように、データ再生誤りのパターンとしては、連続する最小マークの先頭のエッジから最後のエッジまでが、一斉にシフトして誤るという場合がある。即ち発生するビットエラー長は、最小ランの連続する区間の、先頭から最後まで伝搬することになる。従ってエラー伝搬は長くなってしまうという問題が現れる。しかし、最小ランの連続を５回に制限することによって、このようなエラーの発生を少なくすることができ、より安定したデータの記録再生を実現することができる。
【０２０５】
本実施の形態のテーブルは、表２の1,7PP符号と較べ、基本パラメータは同様であり、またテーブルのコンパクトさも、ほぼ同様であるので、回路構成の容易さを同等にしたまま、上述した効果を実現することができる。
【０２０６】
図22は、上述した一連の処理をプログラムにより実行するパーソナルコンピュータの構成の例を示すブロック図である。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に転送され、記憶される。
【０２１０】
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム格納媒体からインストールされる。
【０２１１】
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを格納するプログラム格納媒体は、図22に示すように、磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)を含む）、光磁気ディスク（MD（Mini-Disc）（登録商標）を含む）、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア331、または、プログラムが一時的もしくは永続的に格納されるROM322や、記憶部328を構成するハードディスクなどにより構成される。プログラム格納媒体へのプログラムの格納は、必要に応じてルータ、モデムなどのインターフェースである通信部329を介して、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の通信媒体を利用して行われる。
【０２１２】
なお、本明細書において、プログラム格納媒体に格納されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０２１３】
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【図面の簡単な説明】
【０２１４】
【図１】本発明の一実施の形態の変調装置の構成を示すブロック図である。
【図２】データフォーマットを説明する図である。
【図３】図１の符号化装置のより詳細な構成を示すブロック図である。
【図４】図３の符号化装置のさらにより詳細な構成を示すブロック図である。
【図５】直前符号検出部の機能を説明する図である。
【図６】直前符号語検出部の機能を説明する図である。
【図７】変換データ処理部内の不確定ビット決定部の機能を説明する図である。
【図８】最小ラン連続制限処理部内の不確定ビット決定部の機能を説明する図である。
【図９】記録処理を説明するフローチャートである。
【図１０】図９のステップS3の予想処理を説明するフローチャートである。
【図１１】図９のステップS4の最小ラン連続制限データ検出処理を説明するフローチャートである。
【図１２】図11のステップS54の10データ／15チャネルビット処理を説明するフローチャートである。
【図１３】図９のステップS5の変換パターン検出処理を説明するフローチャートである。
【図１４】図13のステップS114の２データ／３チャネルビット処理を説明するフローチャートである。
【図１５】直前符号検出処理を説明するフローチャートである。
【図１６】直前符号語検出処理を説明するフローチャートである。
【図１７】図９のステップS6の変換パターン決定処理を説明するフローチャートである。
【図１８】変調部の主要処理を説明する図である。
【図１９】変調部の主要処理を説明する他の図である。
【図２０】本発明の他の実施の形態の変調装置の構成を示すブロック図である。
【図２１】図20の変調装置のデータフォーマットを説明する図である。
【図２２】パーソナルコンピュータの構成を示すブロック図である。
【符号の説明】
【０２１５】
１  変調装置，  11  符号化装置，  21  DSV制御ビット決定挿入部，  22  変調部，  23  同期パターン挿入部，  24  NRZI化部，  41  加算器，  51  変換データ処理部，  52  最小ラン連続制限処理部，  53  変換パターン決定部，  54  直前符号検出部，  55  直前符号語検出部，  60  データ変換部，  71  変換パターン検出部，  72A乃至72D  変換テーブル，  83A，83B  最小ラン連続制限テーブル，  201  DSV制御ビット挿入部，  202  DSV制御部
【図１】
0004692234.tif 000002
【図２】
0004692234.tif 000003
【図３】
0004692234.tif 000004
【図４】
0004692234.tif 000005
【図５】
0004692234.tif 000006
【図６】
0004692234.tif 000007
【図７】
0004692234.tif 000008
【図８】
0004692234.tif 000009
【図９】
0004692234.tif 000010
【図１０】
0004692234.tif 000011
【図１１】
0004692234.tif 000012
【図１２】
0004692234.tif 000013
【図１３】
0004692234.tif 000014
【図１４】
0004692234.tif 000015
【図１５】
0004692234.tif 000016
【図１６】
0004692234.tif 000017
【図１７】
0004692234.tif 000018
【図１８】
0004692234.tif 000019
【図１９】
0004692234.tif 000020
【図２０】
0004692234.tif 000021
【図２１】
0004692234.tif 000022
【図２２】
0004692234.tif 000023