(57)【要約】コード・ワードおよび付随する次の状態値のテーブルを用いて、一連のデータ・ワードを一連のコード・ワードを含む出力ビット・ストリームに変換する方法である。テーブルは、各データ・ワードに対して、複数の現在状態値のそれぞれに、コード・ワードおよび付随する次の状態値を提供する。コード・ワードは、唯一のデータ・ワードに対応する第1タイプか、または複数のデータ・ワードに対応する第２タイプのいずれかである。第２タイプの各コード・ワードに付随する次の状態値は、第１状態グループの１つに属する。次の状態値は、次の状態値に従って選択される隣接コード・ワードがラン・レングス制限条件を満たすことを保証する。第１状態グループに属するコード・ワードは、固有のビット構造により識別できる。この方法は、ａ）データ・ワードを取り出す取出し工程と、ｂ）複数の現在状態値のコード・ワードの中から、このデータ・ワードに対応し、ラン・レングス制限条件に適合するコード・ワードを選択する選択工程と、ｃ）選択工程ｂで選択されたコード・ワードから、出力ビット・ストリームのｄｃ成分がゼロに最も近くなるコード・ワードを選択する選択工程と、ｄ）選択工程ｃで選択されたコード・ワードを出力ビット・ストリーム内に配置する配置工程とを備える。
2005502980.tif 000002
【特許請求の範囲】
【請求項１】
コード・ワードおよび付随する次の状態値のテーブルを用いて、一連のデータ・ワードを一連のコード・ワードを含む出力ビット・ストリームに変換する方法であって、
前記テーブルは、各データ・ワードに対して、複数の現在状態値のそれぞれに、コード・ワードおよび付随する次の状態値を提供し、
コード・ワードは、唯一のデータ・ワードに対応する第1タイプか、または複数のデータ・ワードに対応する第２タイプのいずれかであり、
第２タイプの各コード・ワードに付随する次の状態値は、第１状態グループの１つに属し、
次の状態値は、次の状態値に従って選択される隣接コード・ワードがラン・レングス制限条件を満たすことを保証し、
前記第１状態グループに属するコード・ワードは、固有のビット構造により識別され、さらに、
ａ．データ・ワードを取り出す取出し工程と、
ｂ．ラン・レングス制限条件に適合する複数の現在状態値のそれぞれについて、前記データ・ワードに対応するコード・ワードを選択する選択工程であって、現在状態値が第１状態グループに属する場合、現在状態値は現在状態値の固有ビット構造にも一致する選択工程と、
ｃ．前記選択工程ｂで選択されたコード・ワードから、出力ビット・ストリームのｄｃ成分がゼロに最も近くなるコード・ワードを選択する選択工程と、
ｄ．前記選択工程ｃで選択されたコード・ワードを前記出力ビット・ストリーム内に配置する配置工程とを備える、
データ・ワードから出力ビット・ストリームへの変換方法。
【請求項２】
請求項１において、現在状態値および次の状態値の数は４である、データ・ワードから出力ビット・ストリームへの変換方法。
【請求項３】
請求項２において、現在状態値および次の状態値は１〜４の範囲内である、データ・ワードから出力ビット・ストリームへの変換方法。
【請求項４】
請求項３において、第１状態グループは、２および３の現在状態値および次の状態値を含む、データ・ワードから出力ビット・ストリームへの変換方法。
【請求項５】
請求項４において、２または３の現在状態値に対応するコード・ワードの固有のビット構造は、少なくとも２つのビットが所定の値を有する、データ・ワードから出力ビット・ストリームへの変換方法。
【請求項６】
請求項５において、２の現在状態値に対応するコード・ワードの固有のビット構造は、第１および第１３番目のビットの両方がゼロである、データ・ワードから出力ビット・ストリームへの変換方法。
【請求項７】
請求項５または６のいずれか一項において、３の現在状態値に対応するコード・ワードの固有のビット構造は、第１および第１３番目のビットの両方がゼロでない、データ・ワードから出力ビット・ストリームへの変換方法。
【請求項８】
請求項１から７のいずれか一項において、データ・ワードの長さが８ビットである、データ・ワードから出力ビット・ストリームへの変換方法。
【請求項９】
請求項１から８のいずれか一項において、コード・ワードの長さが１６ビットである、データ・ワードから出力ビット・ストリームへの変換方法。
【請求項１０】
請求項１から９のいずれか一項において、ラン・レングス制限条件は、出力ビット・ストリームの各２進数１の間に、第１の数以上の２進数ゼロおよび第２の数以下の２進数ゼロが存在する、データ・ワードから出力ビット・ストリームへの変換方法。
【請求項１１】
請求項１０において、第１の数は２であり、第２の数は１０である、データ・ワードから出力ビット・ストリームへの変換方法。
【請求項１２】
請求項１から１１のいずれか一項において、出力ビット・ストリームのｄｃ成分がゼロに最も近くなるコード・ワードの選択は、出力ビット・ストリームと、ラン・レングス制限条件に適合し、現在状態値が第１状態グループに属する場合は、現在状態値の固有のビット構造にも一致するコード・ワードのすべてとのランニング・ディジタル・サムを計算することを含む、データ・ワードから出力ビット・ストリームへの変換方法。
【請求項１３】
請求項１から１２のいずれか一項による方法を用いて変換されるビット・ストリームを格納する記録媒体。
【請求項１４】
請求項１３において、前記記録媒体は、ＣＤ（コンパクト・ディスク）、ＤＶＤ（ディジタル・バーサタイル・ディスク）、またはＭＤ（ミニディスク）である、記録媒体。
【請求項１５】
一連のデータ・ワードを一連のコード・ワードを含む出力ビット・ストリームに変換するエンコーダであって、
ａ．データ・ワードを受け取るデータ・ワード入力と、
ｂ．コード・ワードおよび付随する次の状態値のテーブルを格納する第１メモリであって、前記テーブルは、各データ・ワードに対して、複数の現在状態値のそれぞれについて、コード・ワードおよび付随する次の状態値を提供し、前記コード・ワードは、唯一のデータ・ワードに対応する第1タイプか、または２つ以上のデータ・ワードに対応する第２タイプのいずれかであり、前記第２タイプの各コード・ワードに付随する次の状態値は、第１状態グループの１つに属し、前記次の状態値は、次の状態値に従って選択される隣接コード・ワードがラン・レングス制限条件を満たすことを保証し、前記第１状態グループに属するコード・ワードは、固有のビット構造により識別できる、第１メモリと、
ｃ．複数の現在状態値のコード・ワードの中から、前記データ・ワード入力が受け取るデータ・ワードに対応し、ラン・レングス制限条件に適合するコード・ワードであって、現在状態値が第１状態グループに属する場合は、現在状態値の固有ビット構造にも一致するコード・ワードを選択するセレクタと、
ｄ．前記セレクタｃで選択されたコード・ワードを格納する第２メモリと、
ｅ．前記出力ビット・ストリームおよび前記第２メモリに格納されたコード・ワードのランニング・ディジタル・サムを求めるランニング・ディジタル・サム回路と、
ｆ．前記ディジタル・サム回路ｅが求めたディジタル・サムのうち最少のランニング・ディジタル・サムを有するコード・ワードを前記第２メモリｄから選択するセレクタと、
ｇ．前記出力ビット・ストリーム内に前記セレクタｆに選択されたコード・ワードを配置するコード・ワード出力とを備えたエンコーダ。
【請求項１６】
請求項１５において、前記ランニング・ディジタル・サム回路は、アップ／ダウン２進カウンタを備え、２進数１を検知した後にこのカウンタのカウント方向は変化し、２進数１またはゼロのいずれかを検出すると、この値に応じてカウンタのカウント値は増加または減少する、エンコーダ。
【請求項１７】
請求項１５において、前記ランニング・ディジタル・サム回路は、コード・ワードごとに個々のランニング・ディジタル・サムを有するルックアップ・テーブルを格納するメモリを備えた、エンコーダ。
【請求項１８】
請求項１７において、前記ルックアップ・テーブルは、さらに、コード・ワードごとに方向変更フラグを有する、エンコーダ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、後に続く変調のために、一連のｍビット情報ワード（ｍは整数）を一連のｎビットのコード・ワード（ｎはｍより大きい整数）に符号化する方法および装置に関する。
【背景技術】
【０００２】
一般に（ｄ，ｋ）コードと称される、ラン・レングス・リミテッド・コードは、最近の磁気的および光学式記録システムにおいて広く利用されている。このようなコード、および前記コードを実現する手段は、K.A.Schouhamer Imminkの著書「大量データ格納システム用のコード」（ISBN 90-74249-23-X, 1999）に記載されている。
【０００３】
ラン・レングス・リミテッド・コードは初期の非ゼロ復帰の記録コードの拡張であり、記録される２進数のゼロは記録媒体の磁束変化がないことにより表わされ、一方、記録される２進数の１は磁束の一方向から反対方向への変化により表わされる。
【０００４】
（ｄ，ｋ）コードでは、前述の記録規則は追加の制限条件によって維持される。つまり、ｄ個以上の２進数ゼロが２進数１と次の２進数１との間に記録され、ｋ個以下の２進数ゼロが２進数１と次の２進数１との間に記録されるという制限条件により維持される。
【０００５】
第１の制限条件は、一連の２進数１が連続して記録される場合に、再生される磁束変化のパルスが密集することにより生じる内部符号干渉を未然に防ぐための条件である。第２の制限条件は、再生される磁束変化に位相ロック・ループを「ロック」することにより再生されるデータからクロックを回復する際に生じる条件である。２進数１が間に入っていない、連続した２進数ゼロの切れ目のないストリングが長過ぎる場合、クロックを再生する位相ロック・ループは同期再生ができなくなる。
【０００６】
例えば、（１，７）コードでは、記録された２進数１と次の２進数１との間に少なくとも１つの２進数ゼロがあり、記録された２進数１と次の２進数１との間に７個以下の記録された２進数ゼロがある。
【０００７】
一連の符号化ビットは、モジュロ２積分演算により、ハイ（ｈｉｇｈ）またはロー（ｌｏｗ）信号値を有するビット・セルにより形成された対応する変調信号に変換される。２進数１のビットは変調信号では、ハイからロー信号値への変化、またはその逆の変化により表わされる。２進数ゼロのビットは変調信号の変化がないことにより表わされる。
【０００８】
変調信号の連続する変化の間の最小間隔はｄ＋１ビット間隔であり、最大間隔はｋ＋１ビット間隔である。
【０００９】
さらに、変調信号の低周波成分は可能な限り小さく維持される必要があり、特に、ｄｃ成分はゼロでなければならない。
【００１０】
このようなｄｃフリー信号を使用する第１の理由は、記録チャネルが一般に低周波およびｄｃ成分に応答しないことである。信号中の低周波成分の抑制はまた、信号がトラックに記録されている光学式記録媒体から信号を読み出す際に極めて有利である。なぜなら、記録された信号により乱されない連続したトラッキング制御が可能となるからである。低周波成分を十分に抑制することより、可聴雑音の少ない優れたトラッキングを実現できる。
【００１１】
このような信号を用いて光学式記録媒体または光磁気記録媒体にオーディオ信号を記録または読出する第１の例は、米国特許第4,501,000号に見られる。ここでは、ＥＦＭ（８／１４変調）変調システムを記載しており、これを利用してＣＤ（コンパクト・ディスク）またはＭＤ（ミニディスク）に情報を記録する。
【００１２】
ＥＦＭ変調された信号は、一連の８ビット情報ワードを一連の１４ビットのコード・ワードに変換し、あるコード・ワードと次のコード・ワードとの間に３ビットのマージン・ビットを挿入することにより得られる。
【００１３】
１４ビットの各コード・ワードは（ｄ，ｋ）制限条件を満たし、ここでｄ＝２、ｋ＝１０である。すなわち、少なくとも２および多くとも１０の２進数ゼロが２つの隣り合う２進数１の間に置かれている。コード・ワード間の（ｄ，ｋ）制限条件を満たすために、３ビット・マージンすなわち結合ワード（coupling word）が使用されている。
【００１４】
符号化比率（the rate of the code）は１つのパラメータであり、コード効率の基準である。符号化比率は、情報ワード内のビット数とこの情報ワードを表わすのに必要なビット数との比率である。ＥＦＭコードでは、８ビット情報ワードが１４＋３＝１７ビット（マージン・ワードを含む）に変換されるため、ＥＦＭ符号化比率は８／１７である。
【００１５】
光学式記録媒体または光磁気記録媒体にｄｃ成分のない信号を記録または読出する方法の使用の第２の例は、米国特許第5,917,857号に見られる。これは、一連のｍビット情報ワードを変調信号に変換する方法に関する。この方法はＥＦＭＰｌｕｓと呼ばれることが多い。
【００１６】
ＥＦＭ変換が単一の静的変換テーブルを使用するのに対して、ＥＦＭＰｌｕｓ変換は、変換のためにデータ・ワードが現れるたびに特定規則に従って複数の利用可能な変換テーブルから１つの変換テーブルを選択し、この選択されたテーブルを用いてデータ・ワードをコード・ワードに変換する。なお、特定の単一の変換テーブルの使用は、この変換テーブルに対応する「状態」と呼ばれる。
【００１７】
ＥＦＭＰｌｕｓでは、全部で８つのテーブルがあり、これらテーブルは４つの状態（コーディング状態１〜４）に従ってグループ化され、各状態に付随する２つのテーブル（メイン・テーブルおよび置換テーブル）を有する。各メイン（変換）テーブルは、８ビットで表わすことができる情報ワードの全て（２５６個の情報ワード）、ならびにこれら情報ワードのそれぞれおよび４つのエンコーダ状態のそれぞれに対応する１６ビットのコード・ワードを含む。各置換（変換）テーブルは、（２進表記で）00000000から01010111の８８の情報ワード、ならびにこれら情報ワードのそれぞれおよび４つのエンコーダ状態のそれぞれに対応する１６ビットのコード・ワードを含む。メインおよび置換テーブルの両方は、１〜４の値を有する次の状態インジケータを含み、この状態インジケータは次の変換で使用されるエンコーダ状態を示す。情報ワードが供給されるたびに８つの変換テーブルからコード・ワードの１つを選択する方法は、概要を以下に示す。
【００１８】
現在のエンコーダ状態がｓに等しく、また変換される情報ワードがｉに等しいと仮定する。変換される情報ワードが00000000〜01010111の範囲（０≦ｉ＜８８）にある場合、対応するコード・ワードは、いずれのコード・ワードが対応する変調信号の低周波成分の最大抑制を達成するかに応じて、メイン・テーブルまたは置換テーブルのいずれからでも選択される。変換される情報ワードが上記の範囲内に無い、すなわちｉ＞８７の場合、メイン変換テーブルを使用する必要があり、したがって最大の低周波抑制に基づいて選択することができない。０＜ｉ＜８８の範囲内にある情報ワードを表わす、メインおよび置換テーブル内のコード・ワードは、変調信号中の低周波成分に全く異なる影響を与える。
【００１９】
ＥＦＭＰｌｕｓの８つのコーディング・テーブル内には、唯一の情報ワードにのみ対応するコード・ワードがある。これらのコード・ワードは第１タイプのコード・ワードと呼ばれる。第１タイプのコード・ワードと対応する情報ワードとの間には、１対１の関係がある。第２タイプのコード・ワードと呼ばれる、第２グループのコード・ワードは、２つの情報ワードに対応し、すなわち、２つの異なる情報ワードが同一のコード・ワードに書き換えられる。多義性は、デコーダによって以下のようにして解決される。
【００２０】
第２タイプのコード・ワードのグループは、状態２のコード・ワードまたは状態３のコード・ワードのいずれかが後に来る。しかし、コーディング状態２および３に属するコード・ワードのセットは共通の要素を持たない、すなわち、共通のコード・ワードを持たない。したがって、デコーダは、現在のコード・ワードおよび次に来るコード・ワードの両方を観測し、特に、次に来るコード・ワードが属する状態（すなわち、２または３）を特定することにより、現在のコード・ワードに付随する情報ワードを一意に確定する。
【００２１】
状態２または３に属するコード・ワードの第１および第１３番目のビットの観測結果を用いて前記コード・ワードの関連する状態を確定できるように、状態２および３のコード・ワードは編集されている。したがって、第２タイプのコード・ワードに付随する情報ワードは、現在のコード・ワードと、次に来るコード・ワードの第１および第１３番目のビットとを観測することにより一意に復号化できる。
【００２２】
米国特許第5,790,056号は、８つのコーディング・テーブルからコード・ワードを選択する改良された方法を記載している。前記特許情報開示に記載された発明の概念は、次に来るコード・ワードが状態２または３のいずれかである場合、デコーダは次に来るコード・ワードを観測する必要があるとの考え方に基づいている。次に来るコード・ワードが状態１または４である場合、デコーダは次に来るコード・ワードを観測する必要がない。
【００２３】
エンコーダが状態１であるとき、転送されるコード・ワードと以前に転送されたコード・ワードとを並べて置いたものが所定の（ｄ，ｋ）制限条件を満たす場合、与えられた情報ワードに付随する状態１または４からのコード・ワードのいずれも転送できる。同様に、エンコーダが状態４であるとき、転送されるコード・ワードと以前に転送されたコード・ワードとを並べて置いたものが所定の（ｄ，ｋ）制限条件を満たす場合、与えられた情報ワードに付随する状態１または４からのコード・ワードのいずれも転送できる。このいわゆる状態１−４交換方法は、変調信号の低周波成分を最少化するための、コード・ワードの選択に大きい自由度を与える。
【発明の開示】
【発明が解決しようとする課題】
【００２４】
米国特許第5,917,857号に記載されたＥＦＭＰｌｕｓおよび米国特許第5,790,056号に記載された符号化方法の両方は、達成できる記録密度および低周波成分の十分な抑制に関して、ＥＦＭ変換に対して１７／１６の改良要因、すなわち符号化比率の８／１７から８／１６への改良を実現するが、メインおよび置換変換テーブルを記憶するために過大な記憶容量を必要とする。
【課題を解決するための手段】
【００２５】
本発明の第１構成によれば、コード・ワードおよび付随する次の状態値のテーブルを用いて、一連のデータ・ワードを一連のコード・ワードを含む出力ビット・ストリームに変換する方法を提供する。この方法において、テーブルは、各データ・ワードに対して、複数の現在状態値のそれぞれに、コード・ワードおよび付随する次の状態値を提供する。コード・ワードは、唯一のデータ・ワードに対応する第1タイプか、または複数のデータ・ワードに対応する第２タイプのいずれかである。第２タイプの各コード・ワードに付随する次の状態値は、第１状態グループの１つに属する。次の状態値は、次の状態値に従って選択される隣接コード・ワードがラン・レングス制限条件を満たすことを保証する。第１状態グループに属するコード・ワードは、固有のビット構造により識別できる。この方法は以下の工程、すなわち、
ａ．データ・ワードを取り出す取出し工程と、
ｂ．複数の現在状態値のそれぞれについて、このデータ・ワードに対応し、ラン・レングス制限条件に適合するコード・ワードであって、現在状態値が第１状態グループに属する場合は、現在状態値の固有ビット構造にも一致するコード・ワードを選択する選択工程と、
ｃ．前記選択工程ｂで選択されたコード・ワードから、出力ビット・ストリームのｄｃ成分がゼロに最も近くなるコード・ワードを選択する選択工程と、
ｄ．前記選択工程ｃで選択されたコード・ワードを出力ビット・ストリーム内に配置する配置工程とを備える。
【００２６】
本発明の第２構成によれば、一連のデータ・ワードを一連のコード・ワードを含む出力ビット・ストリームに変換するエンコーダは、
ａ．データ・ワードを受け取るデータ・ワード入力と、
ｂ．コード・ワードおよび付随する次の状態値のテーブルを格納する第１メモリであって、前記テーブルは、各データ・ワードに対して、複数の現在状態値のそれぞれについて、コード・ワードおよび付随する次の状態値を提供し、前記コード・ワードは、唯一のデータ・ワードに対応する第1タイプか、または２つ以上のデータ・ワードに対応する第２タイプのいずれかであり、第２タイプの各コード・ワードに付随する次の状態値は、第１状態グループの１つに属し、次の状態値は、次の状態値に従って選択される隣接コード・ワードがラン・レングス制限条件を満たすことを保証し、第１状態グループに属するコード・ワードは、固有のビット構造により識別できる、第１メモリと、
ｃ．複数の現在状態値のデータ・ワードの中から、前記データ・ワード入力が受け取るデータ・ワードに対応し、ラン・レングス制限条件に適合するコード・ワードであって、現在状態値が第１状態グループに属する場合は、現在状態値の固有ビット構造にも一致するコード・ワードを選択するセレクタと、
ｄ．前記セレクタｃに選択されたコード・ワードを格納する第２メモリと、
ｅ．前記出力ビット・ストリームおよび前記第２メモリに格納された各コード・ワードのランニング・ディジタル・サム（running digital sum）を求めるランニング・ディジタル・サム回路と、
ｆ．前記ディジタル・サム回路ｅが求めたディジタル・サムのうち最少のランニング・ディジタル・サムを有するコード・ワードを前記第２メモリｄから選択するセレクタと、
ｇ．前記出力ビット・ストリーム内に前記セレクタｆによって選択されたコード・ワードを配置するコード・ワード出力とを備える。
【００２７】
このように、本発明は一連の入力データ・ワードを、例えばＤＶＤ（ディジタル・バーサタイル・ディスク）のような記録媒体に記録するのに適した出力ビット・ストリームに符号化する方法および装置を提供する。本発明により、出力ビット・ストリームのｄｃ成分の大幅な抑制を達成でき、置換テーブルの格納を必要としない。有利なことに、本発明による方法を用いて符号化されたビット・ストリームは既存のデコーダと互換性を持つため、デコーダ装置を取り替える必要はない。
【００２８】
好ましい実施形態では、現在状態値および次の状態値の数は４であり、一般にこれらの値は１〜４の範囲にある。
【００２９】
さらに、現在状態値および次の状態値が１〜４の範囲にある場合、第１状態グループは一般に、現在状態値および次の状態値２および３を含む。この場合、現在状態値および次の状態値２または３に対応するコード・ワードの固有ビット構造は、少なくとも２つのビットが所定の値を有する。好ましくは、現在状態値２に対応するコード・ワードの固有ビット構造は、第１および第１３番目のビットの両方がゼロである。同様に、現在状態値３に対応するコード・ワードの固有ビット構造は、好ましくは、第１および第１３番目のビットの少なくとも１つがゼロではない。
【００３０】
一般に、データ・ワードの長さは８ビットであり、コード・ワードの長さは１６ビットである。
【００３１】
ラン・レングス制限条件は一般に、従来技術に関して述べたように、（ｄ，ｋ）制限条件である。すなわち、ラン・レングス制限条件は通常、出力ビット・ストリームの各２進数１の間に、第１の数（ｄ）以上の２進数ゼロおよび第２の数（ｋ）以下の２進数ゼロがある。一般に、第１の数は２、第２の数は１０である。
【００３２】
好ましい実施形態では、出力ビット・ストリームのｄｃ成分がゼロに最も近くなるコード・ワードの選択は、出力ビット・ストリームと、ラン・レングス制限条件に適合し、現在状態値が第１状態グループに属する場合は、現在状態値の固有のビット構造にも一致するコード・ワードのすべてとのランニング・ディジタル・サムを計算することにより選択される。
【００３３】
記憶媒体を使用して、本発明の第１構成に従って変換されたビット・ストリームを収容できる。適切な記録媒体は、ＣＤ（コンパクト・ディスク）、ＤＶＤ（ディジタル・バーサタイル・ディスク）、およびＭＤ（ミニディスク）を含む。
【００３４】
エンコーダのランニング・ディジタル・サム回路は、コード・ワードごとに個々のランニング・ディジタル・サムが格納されているルップアップ・テーブルを記憶するメモリと、出力ビット・ストリームの現在のランニング・ディジタル・サムおよびランニング・ディジタル・サムが増加しているかまたは減少しているかを示す方向フラグを記憶するメモリと、この方向フラグに従って、コード・ワードの個々のランニング・ディジタル・サムを出力ビット・ストリームの現在のランニング・ディジタル・サムに加算するか、または出力ビット・ストリームの現在のランニング・ディジタル・サムからコード・ワードの個々のランニング・ディジタル・サムを減算する加算器／減算器とを備えてもよい。
【００３５】
一般に、メモリはコード・ワードごとに方向変更フラグも格納する。この場合、方向フラグは、方向変更フラグがセットされると逆転し、セットされないときは変化せずにそのままである。
【００３６】
代わりに、ランニング・ディジタル・サム回路は、アップ／ダウン２進カウンタを備えてもよい。これにより、２進数１を検知した後に、このカウンタのカウント方向は変化し、２進数１またはゼロのいずれかを検出すると、この値に応じてカウンタのカウント値は増加または減少する。
【００３７】
次に、添付図面を参照して、本発明によるエンコーダの例および符号化方法を説明する。
【発明を実施するための最良の形態】
【００３８】
図１はｍビットの情報ワードをｎビットのコード・ワードに変換するエンコーダを示す。このエンコーダはコンバータ５０を備え、ｍビットの情報ワードを受け取るｍビット幅のバス５１と、変換されたｎビットコード・ワードを出力するｎビット幅のバス５２とに接続されている。この例では、ｍは８、ｎは１６である。
【００３９】
さらに、コンバータ５０は、その瞬間のコーディング状態を示すエンコーダ現在状態値を受け取るｓビット幅のバス５３と、エンコーダの次の状態値を出力するｓビット幅のバス５５とに接続されている。この例では、可能なエンコーダ状態の数は４であり、したがってｓは２となる。
【００４０】
ｓビットの現在状態値はバッファ・メモリ５４に記憶され、このバッファ・メモリ５４は例えばｓ個のフリップ・フロップを備える。バッファ・メモリ５４は、バス５５に接続されることによりコンバータ５０から次の状態値を受け取り、バス５３に接続されることによりバッファ・メモリ５４に現在記憶されている現在状態値を出力する。
【００４１】
与えられた情報ワードに対して４つのｎビットのコード・ワードのいずれか１つを選択して出力できるようにするために、コンバータ５０は、バス７１および７２により計算・選択装置７０にも接続されている。計算・選択装置７０は、以下に説明するように、４つのｎビットのコード・ワードのいずれをｎビットのバス５２に出力するかを決定する。
【００４２】
コンバータ５０は、バス５１上のｍビットの情報ワード、バス５３上のｓビットの現在状態値、およびバス７１上の選択値に対応して、バス５２上にｎビットのコード・ワードを出力し、またバス５５上にｓビットの次の状態値を出力する。これを実行するために、コンバータ５０は、ｍビットの情報ワードおよびｓビットの現在状態値から、必要なｎビットのコード・ワードおよびｓビットの次の状態値出力を生成する組合せ論理回路を備える。
【００４３】
代わりに、コンバータ５０は、バス５１，５３，７１によりアドレス指定される、情報ワードおよび次の状態値を含むＲＯＭ（リード・オンリ・メモリ）を備えてもよい。基本的に、コンバータ５０内のＲＯＭは図２Ａ〜図２Ｄに示すテーブルの内容を含む。この方法では、情報ワード、現在状態値、および選択値がそれぞれ、バス５１，５３、および７１上に現れると、ＲＯＭは付随するコード・ワードおよび次の状態値を取り出し、それらをそれぞれ、バス５２および５５上に出力する。
【００４４】
バス５２はパラレル−シリアル・コンバータ５６のパラレル入力に接続される。このコンバータ５６は、バス５２によりコンバータ５０から受け取ったコード・ワードを、信号ライン５７を介して変調器回路５８に供給されるシリアル・ビット・ストリームに変換する。この変調器回路５８は、ビット・ストリームをライン６０上に送出される変調信号に変換する。
【００４５】
一般に、変調器５８は、信号ライン５７から受け取ったビット・ストリームを、従来の方法でＮＲＺ（非ゼロ復帰）コードに変換する。したがって、変調器回路５８は、例えば、モジュロ２積分器であってもよい。
【００４６】
実行される動作を同期化するために、図１に示す符号化装置はクロック発生回路（図示せず）を備える。クロック発生回路は、クロック信号を発生して、パラレル／シリアル・コンバータ５８を制御し、またバッファ・メモリ５４の読込みを制御する。
【００４７】
各情報ワードは、４つのコード・ワードおよび４つの次の状態値に対応する。現在状態値を用いて、４つのセットから１つのコード・ワードおよび次の状態値を選択する。ただし、一定の制限条件に適合している場合、コンバータは情報ワードに対応する他の３つのコード・ワードの１つを与えることができる。
【００４８】
これら制限条件は、ラン・レングス制限条件およびビット構造制限条件である。ラン・レングス制限は通常、従来技術に関して既に述べた（ｄ，ｋ）制限である。
【００４９】
ビット構造制限は、以下に説明するように、状態２および３に属するコード・ワード間の区別を可能にする必要から来るものである。この場合は、コード・ワードの第１および第１３番目のビットを検査することによりなされる。状態２に属するコード・ワードは第１および第１３番目のビットの両方がゼロに等しく、一方、状態３に属するコード・ワードは第１および第１３番目のビットの少なくとも１つが１に等しい。
【００５０】
したがって、状態２の代わりに状態３からのコード・ワード、または状態３の代わりに状態２からのコード・ワードを用いることを望む場合、ビット構造制限に適合する必要がある。このように、状態２に属するコード・ワードを置き換えるためには、置換コード・ワードの第１および第１３番目のビットはゼロでなければならない。また、状態３に属するコード・ワードを置き換えるにためには、置換コード・ワードの第１および第１３番目のビットの少なくとも１つは１でなければならない。
【００５１】
適切なコード・ワードから１つのコードを最終的に選択する方法は、ｄｃ抑制に基づいてなされる。すなわち、信号ライン６０の変調ビット・ストリームのｄｃ成分がゼロに最も近くなるコード・ワードが選択される。
【００５２】
ラン・レングス制限、ビット構造制限およびｄｃ抑制に基づいて複数のコード・ワードから１つのコード・ワードを選択するために、計算・選択装置７０が用いられる。バス５１から情報ワードを受け取ると、コンバータ５０は、この情報ワードに対応する４つのコード・ワードのすべておよび現在状態値を、バス７２を通して計算・選択装置７０に転送する。計算・選択装置７０はこれらをローカル・メモリに格納する。
【００５３】
計算・選択装置７０は、４つのコード・ワードのセットのそれぞれがラン・レングス制限条件に適合するか否かを決定し、適合する場合には、ビット構造制限条件にも適合するか否かを決定する手段を備える。
【００５４】
一般に、ラン・レングス制限条件に適合するか否かを決定する手段は組合せ論理回路を備える。この論理回路は、４つのコード・ワードのそれぞれの最初と直前のワードの最後にある２進数ゼロの全ての数をカウントし、この全ての数がラン・レングス範囲内にあれば、すなわち（ｄ，ｋ）制限条件に適合していれば、所定の出力を提供する。
【００５５】
ビット構造制限条件に適合するか否かを決定する手段は、一般に、別の組合せ論理回路を備える。例えば、ＮＯＲゲートを構成して、コード・ワードの第１および第１３番目のビットの両方が２進数ゼロである場合、およびゼロである場合に限り、２進数１の出力を発生する。
【００５６】
ラン・レングス制限およびビット構造制限に適合するこれらのコード・ワードについて、次に、計算・選択装置７０はそれぞれの低周波成分を決定し、信号ライン６０上の変調ビット・ストリームがゼロに最も近くなるコード・ワードを選択する。計算装置の好ましい実施形態では、ランニング・ディジタル・サムを用いて、変調信号の低周波成分を確定する。
【００５７】
ランニング・ディジタル・サムは多くの方法で決定できる。第１の具体化は、図３に示すような２進アップ／ダウン・カウンタ１００を使用する。コード・ワードのビットは、先頭が最上位のビット（ＭＳＢ）になるようにしてシリアル・ビット・ストリームとしてカウンタ１００に与えられる。アップ／ダウン・カウンタ１００がビット・ストリーム内に２進数の１またはゼロのいずれかを検出すると、カウント値は必要に応じて増加または減少される。またアップ／ダウン・カウンタ１００がビット・ストリーム内に２進数の１を検出すると、カウント値を必要に応じて増加または減少した後に、カウント方向を逆にする。ランニング・ディジタル・サムと、ランニング・ディジタル・サムが増加しているかまたは減少しているかを示す方向フラグとは、アキュムレータ１０１に格納される。方向フラグが、ランニング・ディジタル・サムが増加していることを示す場合、加算器／減算器１０２を用いて、ランニング・ディジタル・サムが、カウンタに提供された各コード・ワードに対してアップ／ダウン・カウンタにより生成されたカウント値に加算される。逆に、方向フラグが、ランニング・ディジタル・サムが減少していることを示す場合、カウンタに提供された各コード・ワードに対してアップ／ダウン・カウンタにより生成されたカウント値が、加算器／減算器１０２によりランニング・ディジタル・サムから減算される。加算または減算の結果はレジスタ１０３に格納される。コード・ワードが選択されると、レジスタ１０３からの適切な結果を用いて、新しいランニング・ディジタル・サムでアキュムレータ１０１を更新する。
【００５８】
別の具体化は、図４に示すように、アップ／ダウン・カウンタ１００の代わりにメモリ１１０を使用する。このメモリ１１０は、ルックアップ・テーブル内に、コード・ワードごとに、個々のランニング・ディジタル・サムおよび方向変更フラグを格納する。前述のように、ランニング・ディジタル・サムと、ランニング・ディジタル・サムが増加または減少しているかを示す方向フラグとは、アキュムレータ１０１に格納される。方向フラグが、ランニング・ディジタル・サムが増加していることを示す場合、加算器／減算器１０２を用いて、アキュムレータ１０１のランニング・ディジタル・サムが、メモリ１１０に提供された各コード・ワードに対してメモリ１１０によって与えられる個々のランニング・ディジタル・サムに、加算される。また、方向フラグが、ランニング・ディジタル・サムが減少していることを示す場合、メモリ１１０に提供された各コード・ワードに対してメモリ１１０により与えられる個々のランニング・ディジタル・サムが、加算器／減算器１０２によってランニング・ディジタル・サムから減算される。加算または減算の結果はレジスタ１０３に格納される。コード・ワードが選択されると、レジスタ１０３からの適切な結果を用いて、新しいランニング・ディジタル・サムにアキュルレータ１０１を更新する。選択されたコード・ワードに付随する方向変更フラグがセットされると、方向フラグの値が反転する。このように、ランニング・ディジタル・サムが増加するかまたは減少するかは、方向フラグの現在値および方向変更フラグにより決定される。
【００５９】
選択されたコード・ワードはバス７３を通してコンバータ５０に指示される。次に、前述のように、コンバータ５０はコード・ワードおよび次の状態値をバス５２および５５にそれぞれ出力する。
【００６０】
図２Ａ〜図２Ｄはコンバータ５０により利用されるテーブルを示す。コンバータ５０はこのテーブルを用いて、各８ビット情報および現在状態値に対して、いずれの１６ビットのコード・ワードおよび新しい状態値を交付するかを決定する。コード・ワードおよび次の状態値は、所定のラン・レングスすなわち（ｄ，ｋ）制限条件に適合するように割り当てられている。したがって、コード・ワードが情報ワードおよび次の状態値によってのみ指示されるように選択されている場合、ｄｃ成分の制御はできないが、符号化ビット・ストリームはラン・レングス制限条件に適合する。しかし、情報ワードに関連付けられた変調ワードのディスパリティ同士は全く正反対であるため、異なる状態からコード・ワードを置換する際にランニング・ディジタル・サムへの影響が大きくなる。
【００６１】
テーブルは、辞書式順序で２ｍすなわち２５６が可能な８ビット情報ワードを格納する列２００と、各現在状態値２０３ａ〜ｄに対して、対応するコード・ワードおよび次の状態値を含む１対の列２０１ａ〜ｄ、２０２ａ〜ｄとを備える。
【００６２】
第１タイプのコード・ワードとして公知の情報ワードに一意に対応するコード・ワードと、同一の現在状態値に対して複製されて繰り返し現れるコード・ワードとがある。後者は第２タイプのコード・ワードとして公知である。ただし、次の状態値は常にこれら複製コード・ワード間で異なる。例えば、図２Ａから分かるように、列２０１ａにおいて、情報ワード６および７に対するコード・ワードは同一であるが、次の状態値は異なり、それぞれ３および２である。
【００６３】
状態はまた、２つのグループに分割できる。状態１および４は第１状態グループに属し、一方、状態２および３は第２状態グループに属する。第２状態グループは次の状態値で構成され、次の状態値は、復号化のときに、複製コード・ワードがいずれの情報ワードに対応するのかを決定するのに必要とされる。したがって、上記の例では、次のコード・ワードが状態２に属するかまたは状態３に属するかを決定することにより、情報ワードが６であるかまたは７であるかを決定できる。これは、既に述べたように、これら状態の固有のビット構造により決定される。
【００６４】
与えられたエンコーダが状態１または４にある場合、情報ワードの変換がなされるたびに、情報ワードに対応する４つのコード・ワードから、前に書き込まれたコード・ワードとの並置が前述のラン・レングスすなわち（ｄ，ｋ）制限条件を満たすコード・ワードであって、かつそのコード・ワードに対するランニング・ディジタル・サムが最もゼロに近い、特定のコード・ワードが選択される。このようにして、変調信号のＤＣ電圧レベルはゼロに近いほぼ一定レベルに維持され、低周波成分は可能な限り小さい値に維持される。
【００６５】
エンコーダが状態１または４にある場合、この状態に入る直前に変換されたコード・ワードは第１タイプである。定義によれば、復号化の間、状態１または４のコード・ワードは、前のコード・ワードに付随する情報ワードを一意に確定するために観測される必要はない。したがって、ラン・レングスすなわち（ｄ，ｋ）制限条件を満たす限り、エンコーダは与えられた情報ワードに付随する４つのコード・ワードのいずれからも選択できる。
【００６６】
以下の例は符号化および選択手順を明らかにする。エンコーダ状態が１（または４）であるとし、前に転送されたコード・ワードの終端の２進数ゼロの数が５であるとする。情報ワードがｉ＝０の場合、バイトｉ＝０に付随する４つのコード・ワードのすべて、すなわち、0000010010000000，0100000100100000，0100100001001000，0100000100100000（図２Ａ参照）を集めて選択セットＳとすることができる。これは、前のコード・ワードとすべてのコード・ワードとの並置がｄ＝２およびｋ＝１０のラン・レングス制限条件を満たすからである。
【００６７】
これと異なり、前のコード・ワードの終端のゼロの数が７の場合、３つのコード・ワード、010000010010000，0100100001001000，0100000100100000のみが集められ選択セットＳとされる。これは、コード・ワード0000010010000000は、連続した２進数ゼロの数（終端の２進数ゼロが７および先頭の２進数ゼロが５）が１０を超えるため、ｋ＝１０の制限条件を満たさないからである。
【００６８】
選択セットＳ内の構成要素の数が２以上の場合、コード・ワード・セレクタは、選択セット内の利用可能な構成要素から、低周波成分について最も有利なものを選択する。選択セットが索引構成要素を１つしか含まない場合、その単一コード・ワードを転送する以外の選択はない。
【００６９】
状態２および３に属するコード・ワードの第１および第１３番目のビットの観測結果が、前記コード・ワードの関連する状態を確定するのに十分であるように、状態２および３のコード・ワードは編集されている。
【００７０】
詳細には、状態２のコード・ワードは第１および第１３番目の両ビットがゼロであり、一方、状態３のコード・ワードは第１および第１３番目の両方のビットが共にゼロではない。第２タイプのコード・ワードは常に、このコード・ワードの後に、第２状態グループからのコード・ワード、すなわち状態２または３のコード・ワードが続く。したがって、第２タイプのコード・ワードに付随する情報ワードは、現在のコード・ワードと、次のコード・ワードの第１および第１３番目のビットとを観測することにより、一意に復号化できる。
【００７１】
与えられたエンコーダが状態２にある場合、情報ワードの変換がなされるたびに、情報ワードに付随する４つのコード・ワードから、前に書き込まれたコード・ワードとの並置が前述の（ｄ，ｋ）制限条件およびビット構造制限条件を満たす特定のコード・ワードが選択される。ビット構造制限は、第１および第１３番目の両ビットがゼロのコード・ワードであって、かつそのコード・ワードに対するランニング・ディジタル・サムが最もゼロに近い、というものである。
【００７２】
同様に、与えられたエンコーダが状態３にある場合、情報ワードの変換がなされるたびに、情報ワードに付随する４つのコード・ワードから、前に書き込まれたコード・ワードとの並置が前述の（ｄ，ｋ）制限条件およびビット構造制限条件を満たす特定のコード・ワードが選択される。ビット構造制限条件は、第１および第１３番目の両方のビットが共にゼロでないコード・ワードであって、かつそのコード・ワードに対するランニング・ディジタル・サムが最もゼロに近い、というものである。
【００７３】
以下の例は符号化および選択手順を明らかにする。エンコーダ状態が２であるとし、前に転送されたコード・ワードの終端のゼロの数が５であるとする。情報ワードがｉ＝０の場合、ｉ＝０に付随する４つのコード・ワードのすべて、すなわち、0000010010000000，0100000100100000，0100100001001000，0100000100100000（図２Ａ参照）は、前のコード・ワードとの並置がｄ＝２およびｋ＝１０の制限を満たす、という条件に適合する。
【００７４】
現在の状態が２であるため、候補となるコード・ワードは、第１および第１３番目の両ビットがゼロでなければない。したがって、選択セットＳは２つの構成要素、すなわち0000010010000000および0100000100100000を備える。
【００７５】
選択セット内の構成要素の数が２以上の場合、コード・ワード・セレクタは、選択セット内の利用可能な構成要素から、低周波成分について最も有利なものを選択する。選択セットが１つの構成要素しか含まない場合、その単一コード・ワードを転送する以外の選択はない。
【００７６】
選択セットのサイズはラン・レングス制限に依存するが、これは、２つ以上のコード・ワードを含む選択セットが、すべての状況において各情報ワードに対して利用できるとは限らないことを意味し、いずれにせよランニング・ディジタル・サムに影響を与える可能性がある。具体化において、このことは、変調信号中に低周波成分が存在しないことを保証するのに十分であると思われる。
【００７７】
情報ワードに付随するコード・ワードのセット内に、ランニング・ディジタル・サム内に生じる変化が最大になる一対のコード・ワード、すなわち、これらコード・ワードの付随する変調信号が正反対のディスパリティを有する一対のコード・ワードを含むのが好ましい。ここで、ディスパリティは、変調信号内の２進数ゼロの数および２進数１の数の差として定義されている。
【図面の簡単な説明】
【００７８】
【図１】エンコーダの例を示す。
【図２Ａ】情報ワードとコード・ワードの関係を決定しているコーディング・テーブルの最初の部分を示す。
【図２Ｂ】図２Ａに続く部分を示す。
【図２Ｃ】図２Ｂに続く部分を示す。
【図２Ｄ】図２Ｃに続く部分を示す。
【図３】ランニング・ディジタル・サム回路の第１具体化を示す。
【図４】ランニング・ディジタル・サム回路の第２具体化を示す。
【符号の説明】
【００７９】
５１  データ・ワード入力
７０  セレクタ
５２  コード・ワード出力
【図１】
2005502980.tif 000003
【図２Ａ】
2005502980.tif 000004
【図２Ｂ】
2005502980.tif 000005
【図２Ｃ】
2005502980.tif 000006
【図２Ｄ】
2005502980.tif 000007
【図３】
2005502980.tif 000008
【図４】
2005502980.tif 000009
【国際公開パンフレット】
2005502980.tif 000010
2005502980.tif 000011
2005502980.tif 000012
2005502980.tif 000013
2005502980.tif 000014
2005502980.tif 000015
2005502980.tif 000016
2005502980.tif 000017
2005502980.tif 000018
2005502980.tif 000019
2005502980.tif 000020
2005502980.tif 000021
2005502980.tif 000022
2005502980.tif 000023
2005502980.tif 000024
2005502980.tif 000025
2005502980.tif 000026
2005502980.tif 000027
2005502980.tif 000028
2005502980.tif 000029
2005502980.tif 000030
2005502980.tif 000031
2005502980.tif 000032
2005502980.tif 000033
2005502980.tif 000034
2005502980.tif 000035
2005502980.tif 000036
2005502980.tif 000037
2005502980.tif 000038
2005502980.tif 000039
【国際公開パンフレット（コレクトバージョン）】
2005502980.tif 000040
2005502980.tif 000041
【国際調査報告】
2005502980.tif 000042
2005502980.tif 000043
2005502980.tif 000044