(57)【要約】【課題】チャンネルサイド情報を使用する必要性が、回避される、または少なくとも、かなり減ぜられる、エラー位置のための代替方法を提供すること。【解決手段】本発明は、ランレングス・リミテッド(RLL)符号化されたバイナリd,kチャンネル・ビットストリームを有する信号であって、パラメータdが、当該ビットストリーム3の任意の2つの「1」の間の「0」の最小数を定義し、かつパラメータkが、最大数を定義し、またはその逆を定義し、RLL行8〜13、45と呼ばれる、それぞれN個の逐次的RLLチャネルビットの多数のセクションを有し、各RLL行8〜13、45が、当該RLL行8〜13、45に対するいわゆる行ベースのパリティチェック制約が実現された、行パリティチェック・コードワードと呼ばれるパリティチェック・コードワードを表す、信号において、M個のRLL行8〜13、45のグループの予め定められた位置で、列パリティチェック行21、 22、 43、 44、46と呼ばれる、それぞれN個の逐次的チャネルビットのK個のセクションが、位置づけられることを特徴とし、K、NおよびMが、整数値であり、当該列パリティチェック行21、 22、 43、 44、46が、複数の列パリティチェック使用可能なチャンネルワード30, 42, 48を有し、当該列パリティチェック使用可能なチャンネルワード30, 42, 48の各々が、特定の列パリティチェック使用可能なチャンネルワード30, 42, 48に対応する当該グループの少なくとも当該M個のRLL行8〜13、45の全てのいわゆる対応するセグメントに対して、いわゆる列ベースのパリティチェック制約を実現させ、これによって、列パリティチェック・コードワードを構成する。さらに、本発明は、このような信号を有する記憶媒体、並びにユーザ・データビットのストリームをこのような信号に符号化する方法および装置、並びに、このような信号を復号化する方法および装置に関する。
2005523601.tif 000002
【特許請求の範囲】
【請求項１】
ランレングス・リミテッド(RLL)符号化されたバイナリd,kチャンネル・ビットストリームを有する信号であって、パラメータdが、当該ビットストリームの任意の2つの「1」の間の「0」の最小数を定義し、かつパラメータkが、最大数を定義し、またはその逆を定義し、RLL行と呼ばれる、それぞれN個の逐次的RLLチャネルビットの多数のセクションを有し、各RLL行が、当該RLL行に対するいわゆる行ベースのパリティチェック制約が実現された、行パリティチェック・コードワードと呼ばれるパリティチェック・コードワードを表す信号において、列パリティチェック行と呼ばれる、それぞれN個の逐次的チャネルビットのK個のセクションが、M個のRLL行のグループの予め定められた位置に、位置づけられることを特徴とし、K、NおよびMが、整数値であり、当該列パリティチェック行が、複数の列パリティチェック使用可能なチャンネルワードを有し、当該列パリティチェック使用可能なチャンネルワードの各々が、特定の列パリティチェック使用可能なチャンネルワードに対応する当該グループの少なくとも当該M個のRLL行の全てのいわゆる対応するセグメントに対して、いわゆる列ベースのパリティチェック制約を実現させ、これによって、列パリティチェック・コードワードを構成する、信号。
【請求項２】
列パリティチェック行の数Kが、少なくとも2であることを特徴とする請求項１に記載の信号。
【請求項３】
当該行パリティチェック・コードワードの各々が、それ自体ユーザ・データを含んでいない、RLL符号化されたユーザ・データに追加された行パリティチェック使用可能なチャンネルワードを有することを特徴とする請求項１に記載の信号。
【請求項４】
当該行パリティチェック・コードワードの各々が、符号化されたユーザ・データである行パリティチェック使用可能なチャンネルワードを有する請求項１に記載の信号。
【請求項５】
当該行パリティチェック・コードワードの各々が、デコーダで公知である、予め定められた値にセットされるエンコーダであり、すなわち、それは0または1のいずれかにセットされる、前記行ベースのパリティチェック制約を実現させ、biが、RLL行の当該d,kチャンネル・ビットストリームの逐次的ビットであるパリティチェック・ビットP2H
2005523601.tif 000041
を有することを特徴とする請求項１に記載の信号。
【請求項６】
RLL行の当該対応しているセグメントが、それぞれ当該RLL行の各々の予め定められた位置の或るビットであり、および、それぞれの単一のビット長の列パリティチェック使用可能なチャンネルワードまたは複数のワードが、当該K個の列パリティチェック行の各々の同じ位置で位置づけられることを特徴とする請求項１に記載の信号。
【請求項７】
列パリティチェック行の数Kが、K≧1/Rである整数値であり、Rが、RLL制約dおよびkを有する前記RLLコードのコードレートであることを特徴とする請求項６に記載の信号。
【請求項８】
当該単一のビット長の列パリティチェック使用可能なチャンネルワードの各々が、前記列ベースのパリティチェック制約を実現させるパリティチェック・ビットの符号化された記号P2Vであって、
2005523601.tif 000042
デコーダで公知である予め定められた値にセットされるエンコーダであり、すなわち、0または1のいずれかにセットされ、bLが、或る位置で当該グループの前記RLL行のビットであり、当該記号の前記ビットが、当該K個の列パリティチェック行にわたって広がり、行につき1ビットであることを特徴とする請求項７に記載の信号。
【請求項９】
当該記号が、同様に当該列パリティチェック行の範囲内で前記RLLコードの前記d,k制約を実現させるために当該列ベースのパリティチェック制約P2Vを実現させる多数の異なる記号から選択されることを特徴とする請求項８に記載の信号。
【請求項１０】
当該単一のビット長の列パリティチェック使用可能なチャンネルワードが、列パリティチェック行の各チャンネル・ビット位置で位置づけられ、これによって、すべてのビット長の列で、列パリティチェック・コードワードを構成することを特徴とする請求項６に記載の信号。
【請求項１１】
当該単一のビット長の列パリティチェック使用可能なチャンネルワードが、2番目ごとのチャンネル・ビット位置のみに位置づけられ、これによって、2番目ごとのビット長の列で、列パリティチェック・コードワードを構成することを特徴とする請求項６に記載の信号。
【請求項１２】
当該2番目のビット位置の間のチャネルビットが、当該RLLコードの当該d,k制約および／またはDC-制御のような前記コードの任意の所望のスペクトル的性質を実現させるために、マージング・ビットとして使用されることを特徴とする請求項11に記載の信号。
【請求項１３】
行パリティチェック使用可能なチャンネルワードの当該予め定められた位置が、RLL行の終端であることを特徴とする請求項1に記載の信号。
【請求項１４】
当該K個の列パリティチェック行が、逐次配置されることを特徴とする請求項1に記載の信号。
【請求項１５】
当該M個のRLL行が、逐次配置されることを特徴とする請求項1に記載の信号。
【請求項１６】
当該K個の列パリティチェック行の当該予め定められた位置が、当該グループの終端であることを特徴とする請求項1に記載の信号。
【請求項１７】
当該K個の列パリティチェック行の当該予め定められた位置が、当該グループの前にあることを特徴とする請求項1に記載の信号。
【請求項１８】
当該K個の列パリティチェック行の当該予め定められた位置が、当該グループの範囲内であることを特徴とする請求項1に記載の信号。
【請求項１９】
列パリティチェック行の数Kが、2であり、
当該列パリティチェック行の各々が、少なくとも2つのタイプのセグメントに分割され、および、2つのタイプの場合、交互のセグメント幅N1またはN2の1つより多い逐次的チャネルビットであり、N1およびN2が、整数値であり、N1が、前記第1の列パリティチェック・セグメントの前記幅であり、かつ、N2が、前記第2のパリティチェック・セグメントの前記幅であり、
各列パリティチェック行において、2番目ごとのセグメントのみが、列パリティチェック使用可能なチャンネルワードであり、かつ、
両方の列パリティチェック行の一方のみが、列パリティチェック使用可能なチャンネルワードから始まり、
一方、前記他方の列パリティチェック行において、前記第1の列パリティチェック使用可能なチャンネルワードが、前記第2のセグメント位置であることを特徴とする請求項1に記載の信号。
【請求項２０】
各列パリティチェック行の範囲内で、列パリティチェック使用可能なチャンネルワードの前または後の前記いわゆるマージング・セグメントが、任意のユーザ・データを含まないが、しかし、当該RLLコードの当該d,k制約および／またはDC-制御のような前記コードの任意の所望のスペクトル的性質を実現させるように設計されることを特徴とする、請求項19に記載の信号。
【請求項２１】
両方の列パリティチェック行の前記第1のものにおいて、各列パリティチェック使用可能なチャンネルワードの前記パリティチェック情報が、当該グループの当該M個のRLL行の当該対応しているセグメントに加えて、当該列パリティチェック使用可能なチャンネルワードに対してのみ当該パリティチェック制約を実現させることを特徴とする請求項19に記載の信号。
【請求項２２】
両方の列パリティチェック行の前記第2のものにおいて、各列パリティチェック使用可能なチャンネルワードの前記パリティチェック情報が、当該グループの当該M個のRLL行の当該対応しているセグメントに加えて、当該列パリティチェック使用可能なチャンネルワードに対してのみ当該パリティチェック制約を実現させることを特徴とする請求項21に記載の信号。
【請求項２３】
両方の列パリティチェック行の前記第2のものにおいて、各列パリティチェック使用可能なチャンネルワードの前記パリティチェック情報が、当該グループの当該M個のRLL行の当該対応しているセグメントに加えて、当該列パリティチェック使用可能なチャンネルワード並びに当該第1の列パリティチェック行の前記対応するマージング・セグメントに対する当該パリティチェック制約を実現させることを特徴とする請求項21に記載の信号。
【請求項２４】
当該セグメントまたはチャネルワード幅N1およびN2が、d≦N1,2≦kの範囲であることを特徴とする請求項19に記載の信号。
【請求項２５】
当該パリティチェック制約、
2005523601.tif 000043
が、前記デコーダで公知である前記エンコーダで予め定められた値にセットされ、かつ、好ましくは、0にセットされ、jが、1≦j≦Mに対して各RLL行と関連している固有の添字であり、かつ、j=M+1に対して前記実際の列パリティチェック行と関連している添字であり、かつ、
wjが、当該セグメント幅(N1, N2)の多数の可能なd,k制約を受けたシーケンスの1つを定義する、各ワードWjと関連している固有の添字であり、このようなワードWjが、各対応するセグメントに含まれることを特徴とする請求項21または22に記載の信号。
【請求項２６】
当該列ベースのパリティチェック制約、
2005523601.tif 000044
が、前記デコーダで公知である前記エンコーダの予め定められた値にセットされ、かつ、好ましくは、0にセットされ、jが、1≦j≦Mに対して、各RLL行と関連し、かつ、j=M+1、M+2に対して、各列パリティチェック行と関連している固有の添字であり、かつ、wjが、当該セグメント幅(N1, N2)の前記多数の可能なd,k制約を受けたシーケンスの1つを定義する、各ワードWjと関連している固有の添字であり、このようなワードWjが、各対応するセグメントに含まれることを特徴とする請求項23に記載の信号。
【請求項２７】
当該固有の添字wjが、
2005523601.tif 000045
であり、
2005523601.tif 000046
が、行jのワードWjのビット数iを示し、および、Nd (i)が、長さiの可能なd,k制約を受けたシーケンスの数であることを特徴とする請求項25または26に記載の信号。
【請求項２８】
当該d,kチャンネル・ビットストリームを有する波形によって特徴づけられ、当該d,kチャンネル・ビットストリームにおいて「1」が発生するときはいつでも、当該波形が、2つの状態（ランド、ピット）の間で遷移し、かつ、当該d,kチャンネル・ビットストリームにおいて、「0」が発生するときはいつでも、その現状を保持する、またはその逆が成り立つ、請求項１に記載の信号。
【請求項２９】
請求項1〜28の何れかに記載の信号を格納している記憶媒体。
【請求項３０】
当該記憶媒体が、記録光ディスク、磁気ディスクまたは光磁気のディスク、または記録磁気テープであることを特徴とする請求項29に記載の記憶媒体。
【請求項３１】
ユーザ・データビットのストリームを符号化する方法であって、ユーザ・データビットの当該ストリームを、RLL行と呼ばれる、それぞれN個の逐次的RLLチャネルビットの多数のセクションを有する、バイナリd,kチャンネル・ビットストリームにランレングス・リミテッド(RLL)符号化するステップを有し、パラメータdが、当該ビットストリームの任意の2つの「1」の間の「0」の最小数を定義し、かつパラメータkが、最大数を定義し、またはその逆を定義し、各RLL行が、当該RLL行に対するいわゆる行ベースのパリティチェック制約が実現された、行パリティチェック・コードワードと呼ばれるパリティチェック・コードワードを表す、符号化する方法において、
M個のRLL行のグループの予め定められた位置で、列パリティチェック行と呼ばれる、それぞれN個の逐次的チャネルビットのK個のセクションを生成する、更なるステップにより特徴づけられ、K、NおよびMが、整数値であり、当該列パリティチェック行が、複数の列パリティチェック使用可能なチャンネルワードを有し、
当該列パリティチェック使用可能なチャンネルワードの各々が、特定の列パリティチェック使用可能なチャンネルワードに対応する当該グループの少なくとも当該M個のRLL行のいわゆる対応するセグメントに対して、いわゆる列ベースのパリティチェック制約を実現させ、これによって、列パリティチェック・コードワードを構成する、符号化する方法。
【請求項３２】
請求項1〜30の何れかに記載の信号を生成することによって特徴づけられる請求項31に記載の方法。
【請求項３３】
ユーザ・データビットのストリームを符号化する装置であって、
ユーザ・データビットのストリームを、RLL行と呼ばれる、それぞれN個の逐次的RLLチャネルビットの多数のセクションを有する、バイナリd,kチャンネル・ビットストリームにランレングス・リミテッド(RLL)符号化する符号化手段を有し、パラメータdが、当該ビットストリームの任意の2つの「1」の間の「0」の最小数を定義し、かつパラメータkが、最大数を定義し、またはその逆を定義し、
各RLL行が、当該RLL行に対するいわゆる行ベースのパリティチェック制約が実現された、行パリティチェック・コードワードと呼ばれるパリティチェック・コードワードを表す、符号化する装置において、
当該符号化手段が、M個のRLL行のグループの予め定められた位置で、列パリティチェック行と呼ばれる、それぞれN個の逐次的チャネルビットのK個のセクションを生成するために設計されていることを特徴とし、K、NおよびMが、整数値であり、当該列パリティチェック行が、複数の列パリティチェック使用可能なチャンネルワードを有し、
当該列パリティチェック使用可能なチャンネルワードの各々が、特定の列パリティチェック使用可能なチャンネルワードに対応する当該グループの少なくとも当該M個のRLL行の全てのいわゆる対応するセグメントに対して、いわゆる列ベースのパリティチェック制約を実現させ、これによって、列パリティチェック・コードワードを構成する、符号化する装置。
【請求項３４】
当該装置が、請求項1〜30の何れかに記載の信号を生成するために、請求項31または32に記載の方法を実行するための手段を有することを特徴とする請求項33に記載の装置。
【請求項３５】
請求項1〜30の何れかに記載の信号または請求項31または32の方法によって符号化される信号を復号化するための方法であって、
各RLL行に対して、いわゆる行ベースのパリティチェック制約をチェックするステップ、
当該列パリティチェック使用可能なチャンネルワードに対応する少なくとも当該M個のRLL行の全ての対応するセグメントに沿って、当該列パリティチェック行の各列パリティチェック・セグメントに対して、いわゆる列ベースのパリティチェック制約をチェックするステップ、および、
当該チェックするステップに基づいて誤ったチャネルワードを決定するステップを有する方法。
【請求項３６】
当該決定するステップが、
a)  当該RLL行に対する当該行ベースのパリティチェック制約を破る、誤ったRLL行、および、
b)  当該列が当該列ベースのパリティチェック制約を破る、特定の列パリティチェック使用可能なチャンネルワードに対応する全ての対応するセグメントを有する、誤った列の交差ポイントで誤ったセグメントを位置づけることを含む、請求項35に記載の方法。
【請求項３７】
単一の誤ったセグメントが発生する場合、位置づけられた、誤ったセグメントが訂正される請求項36に記載の方法。
【請求項３８】
1つより多い単一の誤ったセグメントが発生する場合、当該決定するステップが、更にチャンネルサイド情報に基づく、請求項35に記載の方法。
【請求項３９】
当該チャンネルサイド情報が、当該交差ポイントでの前記セグメントの前記チャネルワードにおけるビット遷移のフェーズ・エラー情報である、請求項38に記載の方法。
【請求項４０】
最大の絶対値を有するフェーズ・エラーが、決定され、かつ、前記d,kチャンネル・ビットストリームの前記対応している「1」-ビットが、1つのビット位置だけシフトされる請求項39に記載の方法。
【請求項４１】
当該信号が、2番目ごとのチャンネル・ビット位置のみで、当該列パリティチェック使用可能なチャンネルワードを有し、かつ、当該決定するステップが、最初の誤った列を検出次第、別の誤った列が、当該最初の誤った列の左または右の何れに配置されるかを判断するステップを含む請求項35に記載の方法。
【請求項４２】
当該判断ステップが、チャンネルサイド情報に基づく請求項41に記載の方法。
【請求項４３】
当該信号が、交互のセグメント幅N1またはN2の1つより多い逐次的チャネルビットのセグメントを有し、かつ、単一のビット遷移-シフトエラーが、このようなセグメントの内部と決定される、すなわち、
a)  前記検出された列ベースのパリティチェック制約が、次式のように検出される場合、
2005523601.tif 000047
遷移-シフトエラーが、ビット位置iから右へビット位置i+1へであると決定され、かつ、
b)  前記検出された列ベースのパリティチェック制約が、次式のように検出される場合、
2005523601.tif 000048
遷移-シフトエラーが、ビット位置iから左へビット位置i-1へであると決定され、Nd(i-1)、Nd (i)、Nd(i+1)は、それぞれ、長さi-1、i、i+1の可能なd,k制約を受けるシーケンスの数である、請求項35に記載の方法。
【請求項４４】
当該信号が、交互のセグメント幅N1またはN2の1つより多い逐次的チャネルビットのセグメントを有し、かつ、単一のビット遷移-シフトエラーが、このようなセグメントの内部と決定される、すなわち、
a)  前記検出された列ベースのパリティチェック制約が、次式のように前記現在の列に対して検出される場合、
2005523601.tif 000049
および、前記検出された列ベースのパリティチェック制約が、次式のように前記前の列に対して検出される場合、
2005523601.tif 000050
遷移-シフトエラーが、前記前のセグメントの前記最後のビット位置から前記現在のセグメントの前記第1のビット位置へと決定され、または、
b)  前記検出された列ベースのパリティチェック制約が、次式のように現在の列に対して検出される場合、
2005523601.tif 000051
、前記検出された列ベースのパリティチェック制約が、次式のように前記前の列に対して検出される場合、
2005523601.tif 000052
遷移-シフトエラーが、前記現在のセグメントの前記第1のビット位置から前記前のセグメントの前記最後のビット位置へと決定され、Nd(0)、Nd(N1,2-1)が、長さN1,2-1の可能なd,k制約を受けるシーケンスの数である、請求項35に記載の方法。
【請求項４５】
当該信号が、交互のセグメント幅N1またはN2の1つより多い逐次的チャネルビットのセグメントを有し、かつ、単一のビット遷移-シフトエラーが、このようなセグメントの右境界を交差していることが決定される、すなわち、
a)  前記検出された列ベースのパリティチェック制約が、次式のように、前記現在の列に対して検出される場合、
2005523601.tif 000053
および、前記検出列ベースのパリティチェック制約が、次式のように、前記次の列に対して検出される場合、
2005523601.tif 000054
遷移-シフトエラーが、前記現在のセグメントの前記最後のビット位置から前記次のセグメントの前記第1のビット位置へであると判断され、または、
b)  前記検出列ベースのパリティチェック制約が、次式のように、前記現在の列に対して検出される場合、
2005523601.tif 000055
および、前記検出列ベースのパリティチェック制約が、次式のように、前記次の列に対して、検出される場合、
2005523601.tif 000056
遷移-シフトエラーが、前記次のセグメントの前記第1のビット位置から前記現在のセグメントの前記最後のビット位置へと決定され、Nd(0)=1、および、Nd(N1,2-1)が、長さN1,2-1の可能なd,k制約を受けたシーケンスの数である、請求項35に記載の方法。
【請求項４６】
決定された単一のビット遷移-シフトエラーを有するセグメントが、当該固有の添字
2005523601.tif 000057
を有しているセグメントによって置き換えられることによって訂正され、w'jが、置き換えられる当該セグメントの検出される添字であり、
2005523601.tif 000058
ここで、
2005523601.tif 000059
が、行jの当該セグメントの番号iを有する前記ビットに対して検出されるビット-値を示し、および、Nd (i)は、長さiの可能なd,k制約を受けたシーケンスの数である、請求項43に記載の方法。
【請求項４７】
請求項1〜30の何れかに記載の信号または請求項31または32の方法によって符号化される信号を復号化するための装置であって、
各RLL行に対して、行ベースのパリティチェック制約をパリティチェックする手段、
当該列パリティチェック使用可能なチャンネルワードに対応する少なくとも当該M個のRLL行の全ての対応するセグメントに沿って、当該列パリティチェック行の各列パリティチェック・セグメントに対して、いわゆる列ベースのパリティチェック制約をチェックする手段、および、
当該パリティチェックの前記結果に基づいて誤ったチャネルワードを決定する手段を有する装置。
【請求項４８】
当該装置が、請求項35〜46の何れかに記載の方法を実行するための手段を有する請求項47に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ランレングス・リミテッド(RLL)符号化されたバイナリd,kチャンネル・ビットストリームを有する信号であって、パラメータdが、当該ビットストリームの任意の2つの「1」の間の「0」の最小数を定義し、かつパラメータkが、最大数を定義し、またはその逆を定義し、RLL行と呼ばれる、それぞれN個の逐次的RLLチャネルビットの多数のセクションを有し、各RLL行が、当該RLL行に対するいわゆる行ベースのパリティチェック制約が実現された、行パリティチェック・コードワードと呼ばれるパリティチェック・コードワードを表す、信号に関する。
【０００２】
さらに、本発明は、このような信号を有する記憶媒体に関する。
【０００３】
さらに、本発明は、ユーザ・データビットのストリームを符号化する方法であって、ユーザ・データビットの当該ストリームを、RLL行と呼ばれる、それぞれN個の逐次的RLLチャネルビットの多数のセクションを有する、バイナリd,kチャンネル・ビットストリームに、ランレングス・リミティド(RLL)符号化するステップを有し、パラメータdが、当該ビットストリームの任意の2つの「1」の間の「0」の最小数を定義し、かつパラメータkが、最大数を定義し、またはその逆を定義し、各RLL行が、当該RLL行に対するいわゆる行ベースのパリティチェック制約が実現された、行パリティチェック・コードワードと呼ばれるパリティチェック・コードワードを表す、符号化する方法に関する。
【０００４】
さらに、本発明は、請求項33のプリアンブルに従う、対応する装置に関する。
【０００５】
さらに、本発明は、このような信号またはこのような符号化の方法に従って符号化された信号を復号化する方法に関する。
【０００６】
さらに、本発明は、このような信号またはこのような符号化の方法に従って符号化された信号を復号化する装置に関する。
【背景技術】
【０００７】
大量データ記憶媒体、例えば光ディスク、磁気ディスクおよび光磁気ディスクの領域において、実質的に狭いバンドパス信号装置であるデジタル表面記録装置が使用される。したがって、このような媒体に記録されるデータは、非常に長い同じく非常に短い書込まれたピットを除去するように、符号化される。この符号化は、「変調コーディング」と呼ばれている。それは、一般的に、2つのパラメータ、すなわち制約d,k(d≦k)によって特徴づけられるランレングス・リミテッド(RLL)コードを使用する。RLL符号化されたバイナリシーケンスは、任意の2つの「1」の間で少なくともd個、しかし、多くてもk個の「0」を有する。書込まれたピット間の遷移は、「1」の出現に対応する。バイナリd,kチャンネル・ビットストリームの1つの「1」は、例えば、ピットとランド間の遷移に対応する（ここで、「ランド」は、2つのピット間のスペースを定義する）。
【０００８】
したがって、最小長ピットまたはランドは、d+1チャネルビットから成り、および、最大長ランドまたはピットは、k+1チャネルビットから成る。図1は、d,k制約およびコードレートR=M/nでRLL符号化2される、制約を受けていないユーザ・データのビットストリーム1を示す。したがって、「1」が、ピットからランドへ、またはその逆への遷移を表す、NRZまたはd,kチャンネル・ビットストリーム3が得られる。
【０００９】
RLL波形4は、ランドおよびピットを使用することによって記憶媒体、例えばディスクに記録される。”1”が、d,kチャンネル・ビットストリーム3で発生するときはいつでも、RLL波形4は、ランドからピットへ、またはその逆への遷移を実行する。したがって、ピットおよびランドは、両方とも、長さを変化させる「0」のストリングを表し、各ストリングは、それらの間での遷移を示す、1つの「1」-ビットに先行され、その結果、同じ極性（ピットまたはランド）のビットの実行の長さが「0」の数に1をプラスした数に等しい。
【００１０】
このようなディスクの読出し中の主要なエラー源の1つは、HF（高周波の）信号波形から、(d,k)チャンネル・ビットストリームを引き出す際の不完全性に起因するランダムエラーである。（任意のシンボル間干渉またはISI無しの）完全なチャンネルの場合、この波形は、（+1または-1の何れかに等しい値を有する）二極のチャンネル・ビットストリームから直接生成される波形であるRLL波形4に等しい。しかしながら、（線形および／または非線形）ISIがある場合、現実的なチャンネルの場合には、実際のHF波形は、アイパターンに従って、より短いランレングスでより小さい振幅を有する、RLL波形4の丸みがついたバージョンである。この実際のHF-波形は、ビット検出のために使用され、ここで、いわゆる「単一ビット遷移シフトエラー」(SBTSE)が、起こる可能性がある。
【００１１】
（光記録チャンネルにおける）ランダムエラーは、多くの場合、単一ビットの距離にわたって、遷移（d,kチャンネル・ビットストリームにおける”1”-ビット）のシフトとなる。対応するエラーイベント5は、実際のHF波形から検出されるチャンネル・ビットストリーム6に表される。このエラーイベント5は、単一ビットの距離にわたる第1のランドから第２ピットへの遷移のシフトに帰結する。このようなエラーイベント5が、SBTSEである。検出された（誤った）d,kビットストリーム7において、このようなSBTSEは、1ビットの距離にわたる”1”のシフトに帰結する。
【００１２】
この特定のタイプのランダムエラーに対して、代数的リードソロモンエラー訂正コードを用いる標準エラー訂正コーディング(ECC)を使用しないことは、後者が単一ランダムエラーの訂正のため、（パリティ-バイトと呼ばれる）オーバーヘッドの2つのユーザ・バイト（エラーの位置のための1つのパリティ-バイトとバイト値の訂正のための1つのパリティ-バイト）を要求するので、有利である。
【００１３】
その代わりに、特に設計されたパリティチェックRLLコードは、このようなランダムエラーの存在を検出するために使用することができ、および、PLLのHF波形の各遷移で生成されるフェーズ・エラーの規模の様なチャンネルサイド情報は、エラーの場所を見つけるために使用することができる。
【００１４】
このようなパリティチェックRLLコーディングに対するいくつか提案が、次の文献において、なされている：非特許文献1；非特許文献2；非特許文献3；非特許文献4；および、非特許文献5。
【００１５】
さらに、本発明の発明者の一人は、パリティチェックRLLコーディングに関して、いわゆるコンビコード(combi-code)を使用する考えを次の出版物に発表した：非特許文献6。
【００１６】
後の参照において、単一のSBTSEの場合、ランダムエラー訂正のためのオーバーヘッドは、チャンネルサイド情報を介して扱われるエラー位置を用いて、単一のユーザ-ビットに減ぜられ、パリティチェックRLLコーディングに関する前の方式の不利な点は、除去されたことが示された。
【００１７】
SBTSEに関するチャンネルサイド情報を使用する手続きは、タイミング回復のため、最大の絶対値を備えたフェーズ・エラーを有する遷移に関して、PLL（フェーズロックドループ(phase-locked loop)）内で、検出されてかつ使用された全ての遷移の中で検索し、次に、d,kチャンネル・ビットストリームの対応する遷移（または”1”-ビット）を後方にシフトすることである。しかしながら、この手続きは、100%万全で無いかもしれない：エラー無し遷移に対応する大きなフェーズ・エラーも、また、存在する可能性があり、フェーズ・エラーの量子化が、影響するかもしれない等。
【００１８】
【非特許文献１】（H.M. Hilden, D.G. Howe, E.J. Weldon著）「シフトエラーを訂正する変調コード(Shift Error Correcting Modulation Codes)」(IEEE Trans. Magn., vol. 27, 1991, pp. 4600-4605)
【非特許文献２】（Y. Saitoh, I. Ibe, H. Imai著）「ランレングス・リミティド・シークエンスにおけるチャンネルサイド情報を用いたピークシフトおよびビットエラー訂正(Peak-Shift and Bit Error-Correction with Channel Side Information in Runlength-Limited Sequences)、( 10th Int. Symp. Applied Algebra, Algebraic Algorithms and Error-Correcting Codes, vol. AAECC-10, 1993, pp. 304-315)
【非特許文献３】（P. Perry, M.-C. Lin, Z. Zhang著）「混合タイプのエラーを伴う単一エラー検出のためのランレングス・リミティッド・コード(Runlength-Limited Codes for Single Error-Detection with Mixed Type Errors)」(IEEE Trans. Inform. Theory, vol. 44, 1998, pp. 1588-1592)
【非特許文献４】（S. Gopalaswamy, J. Bergmans著）「d=1の制約を受ける磁気記録チャンネルに関する修正されたターゲットおよび連結コーディング(Modified Target and Concatenated Coding for d = 1 Constrained Magnetic Recording Channels)」(Proceedings of the ICC 2000, New Orleans, June 18-22, 2000)
【非特許文献５】（H. Sawaguchi, M. Kondou, N. Kobayashi, S. Mita著）「高位PRMLチャンネルに関する連結エラー訂正コーディング(Concatenated Error Correction Coding for High-Order PRML Channels)」(Proceedings of Globecom 1998, Sidney, pp. 2694-2699)
【非特許文献６】（W.M.J. Coene, H.P. Pozidis, J.W.M. Bergmans著）、題名「光記録における遷移シフトエラーに関するランレングス・リミティッド・パリティチェック・コーディング(Run-Length Limited Parity-Check Coding for Transition-Shift Errors in Optical Recording)」( Proceedings of Globecom 2001, Paper SPS01_6, San Antonio (USA), Nov. 25-29 2001)
【非特許文献７】「マスデータ記憶システム用のコード(Codes for Mass Data Storage Systems)（K.A. Schouhamer Immink著）( Schannon Foundation Publishers, The Netherlands, 1999, Chap. 6)）
【非特許文献８】「単純化された記号検出器を有する伝送システムおよび記録システム(Transmission System and Recording System having a Simplified Symbol Detector)」（G. J. van den Enden著） (European Pat. No. EP0885499, issued Dec. 23, 1998)
【非特許文献９】「RLLコードの簡単な検出方法（RLL検出器）(A Simple Detection Method for RLL Codes (Run Detector))」（T. Nakagawa, H. Ino and Y. Shimpuku,著） (IEEE Trans. Magn., Vol. 33, no. 5, pp. 3263-3264, Sept. 1997)
【発明の開示】
【発明が解決しようとする課題】
【００１９】
それゆえに、チャンネルサイド情報を使用する必要性が、回避される、または少なくとも、かなり減ぜられる、エラー位置のための代替方法を提供することが、本発明の目的である。
【課題を解決するための手段】
【００２０】
この目的は、上述のタイプに一致するRLL符号化されたバイナリd,kチャンネル・ビットストリームを有する信号であって、列パリティチェック行と呼ばれる、それぞれN個の逐次的チャネルビットのK個のセクションが、M個のRLL行のグループの予め定められた位置に、位置づけられることを特徴とし、K、NおよびMが、整数値であり、当該列パリティチェック行が、複数の列パリティチェック使用可能なチャンネルワードを有し、当該列パリティチェック使用可能なチャンネルワードの各々が、特定の列パリティチェック使用可能なチャンネルワードに対応する当該グループの少なくとも当該M個のRLL行の全てのいわゆる対応するセグメントに対して、いわゆる列ベースのパリティチェック制約を実現させ、かつ、当該列パリティチェック使用可能なチャンネルワードと共に列パリティチェック・コードワードを構成する、信号によって達成される。
【００２１】
この目的は、更に、このような信号を格納している記憶媒体を提供することによって達成される。
【００２２】
この目的は、更に、M個のRLL行のグループの予め定められた位置で、列パリティチェック行と呼ばれる、それぞれN個の逐次的チャネルビットのK個のセクションを生成する、更なるステップにより特徴づけられる上述のタイプに一致する、ユーザ・データビットのストリームを符号化する方法を、提供することによって達成される。ここで、K、NおよびMが、整数値であり、当該列パリティチェック行が、複数の列パリティチェック使用可能なチャンネルワードを有し、当該列パリティチェック使用可能なチャンネルワードの各々が、特定の列パリティチェック使用可能なチャンネルワードに対応する当該グループの少なくとも当該M個のRLL行のいわゆる対応するセグメントに対して、いわゆる列ベースのパリティチェック制約を実現させ、かつ、当該列パリティチェック使用可能なチャンネルワードと共に列パリティチェック・コードワードを構成する。
【００２３】
この目的は、更に、請求項33に記載のユーザ・データビットのストリームを符号化する、対応する装置を提供することによって達成される。
【００２４】
さらに、この目的は、請求項35に記載のユーザ・データビットのストリームを符号化するこのような方法に従って符号化されている信号を復号化する方法によって達成される。
【００２５】
さらに、この目的は、ユーザ・データビットのストリームを符号化するこのような方法に従って符号化されている信号を復号化する、請求項47に記載の対応する装置によって達成される。
【００２６】
本発明の基本的な考えは、RLL符号化されたバイナリd,kチャンネル・ビットストリームに、二次元のコード構造、すなわち、いわゆる積コードを適用することである。このような積コードは、強力なエラー訂正技法を提供する。
【００２７】
いわゆる列ベースのパリティチェック制約は、異なるRLL行からRLL符号化されたセグメントから成る列にわたって作成される。しかしながら、列は、必ずしも垂直に配置される必要はなく、しかし、また、予め定められた割当てによって、例えば横断する方向に、特定の列パリティーチェック・セグメントに対応するd,kチャンネル・ビットストリームの1つのセグメントが、各RLL行に存在するように配置することも可能である。それゆえに、一般的に述べると、列パリティチェック行の列パリティチェック・セグメントは、これらの対応するセグメントの各々が特定の列パリティチェック・セグメントに対応する、グループ（クラスタまたは積コードワード）の全てのRLL行に対応するセグメントに列ベースのパリティチェック制約を実現する。これらの対応するセグメントが、異なるRLL行内で同じ（水平）位置に位置づけられることは、これが好まれる場合であっても、必須でなく、したがって、正確に垂直に向きを定められた列パリティチェック・コードワードを構成する列の場合、後のケースになる。
【００２８】
ランダムなチャネルエラーは、誤ったパリティチェック行（または行パリティチェック・コードワード）および誤ったパリティチェック列（または列パリティチェック・コードワード）との間の交差ポイントに、容易に、位置づけることができる。したがって、チャンネルサイド情報を使用する必要性は、一部の特定のケースに完全には削除されない場合があり得ても、大幅に減ぜられる。
【００２９】
非自明のdおよびk制約に対して、したがってd=0およびk=0を除いて、少なくとも2つの列パリティチェック行が、RLL行の各グループに提供されることが好ましい。したがって、RLL制約は、同様に、列パリティチェック行内に実現することができる。したがって、さらに、DC-制御が、可能である。
【００３０】
列パリティチェック行内で列パリティチェック・セグメント間で、いわゆるマージング・セグメントが、提供されることが好ましい。
【００３１】
これらのマージング・セグメントが、逐次的ワードを連結するときに、RLL制約を実現することを容易にし、およびDC-制御を可能にすることを容易にする。これらのマージング・セグメントは、複数の逐次的チャネルビットにわたってそれぞれ配置されることが好ましく、したがって、行ベースの方法で配置される。これに代えて、これらのマージング・セグメントは、列ベースの方法で配置されても良い。
【００３２】
更なる有利な展開は、従属クレームにおいて定義される。本発明の上記および上記以外の観点は、以下に、添付の図面に示される実施例を参照して明らかになるであろう。
【発明を実施するめの最良の形態】
【００３３】
図1は、本発明の背景を説明するために従来技術に関して説明される。それゆえに、図1に関する上述の説明は、同様に本発明に適用される。
【００３４】
図2は、RLLパリティチェック・コーディングのための積コード方式の、概略図を示す。RLL符号化されたバイナリ(d,k)チャンネル・ビットストリーム3の逐次的セクション8〜13は、二次元配列を生成するために、互いの下に一列に並べられる。(d,k)チャンネル・ビットストリームの方向は、水平矢印14によって示される。この(d,k)チャンネル・ビットストリームは、（好ましくは、インテグレータ・モジュロ2である1T-プリコーダの後）記憶媒体上で一次元の方向に、例えばディスクの上で螺旋方向に、連続的に記録されることが好ましいことに留意されたい。それゆえに、図1に従う二次元の図解は、(d,k)チャンネル・ビットストリームのビットが、必ずしも記憶媒体上で二次元のこのような方向に配置されることを意味しない。二次元の図解は、直角方向に沿ったパリティチェック・コーディングで積コード構造を実現させるためにのみ役に立つ。
【００３５】
しかしながら、二次元の図解を鑑みて、上述のセクション8〜13の各々は、RLL符号化されたバイナリ(d,k)チャンネル・ビットの個々の行と考えることができ、かつ、それゆえに、以下で、RLL行8〜13と呼ばれる。各RLL行8〜13に対して、パリティチェック・コーディングは、(d,k)チャンネル・ビットストリーム3に適用される。したがって、いわゆる行パリティチェック使用可能なチャンネルワード15〜20は、各RLL行8〜13に対して適用され、このことによって、RLL行8〜13の各々に対して行パリティチェック・コードワードを構成する。行パリティチェック使用可能なチャンネルワードは、予め定められた位置に位置づけられるが、必ずしも各行で同じではなく；図2では、単に分かりやすくするために、それらは、全て、行の終端で一列に並べられている。
【００３６】
これは、例えば、非特許文献3に記載されているように、このようなRLL行8〜13の或る位置に、例えば、RLL行8〜13の終端に、このような行パリティチェック使用可能なチャンネルワード15〜20を追加することにより、または、非特許文献6に記載されているように、最後の符号化されたユーザ-ワード（バイト）が、行ベースのパリティチェック制約と呼ばれる、対応するパリティチェック制約を実現させる、コンビコード方式を使用することの何れかにより行われる。
【００３７】
単一のSBTSEの検出のために、行ベースのパリティチェック制約p2Hが、使用される：
2005523601.tif 000003
ここで、biは、或るRLL行の(d,k)チャンネル・ビットストリームの逐次的ビットであり、およびNは、そのRLL行の(d,k)チャンネル・ビットストリームの逐次的ビットの数である。
【００３８】
RLL行に沿ったパリティチェック・コーディングは、単一のSBTSEエラー発生の検出を可能にする。
【００３９】
しかしながら、エラーの位置に対して、詳細情報が必要である。それゆえに、エラーの位置に対して、更なるパリティチェック制約が、適用される、すなわち、エラー検出能力を有する列ベースのまたは垂直のパリティチェック制約が、適用される。この列ベースのパリティチェック制約は、M個のRLL行8〜13のグループに加えられる、多数のK個（図2の具体例では、K=2）の列パリティチェック行21、22によって実現される。これらのK個の列パリティチェック行21、22の各々は、図11〜16を参照に後述されるように、配置することができる複数の列パリティチェック使用可能なチャンネルワード30を有する。これらの列パリティチェック使用可能なチャンネルワード30の各々は、対応する行列の共通部分（対応するセグメント）24〜29と呼ばれるM個のRLL行8〜13の各々の対応する幅の或る行部分に割り当てられる。このような列パリティチェック使用可能なチャンネルワード30またはこのような対応する行列の共通部分24〜29の幅は、1つ以上のビット（Lビット）とすることが可能である。
【００４０】
したがって、特定の列パリティチェック使用可能なチャンネルワード30に対応する、対応する行列の共通部分24〜29が、RLL行8〜13の範囲内で列パリティチェック行21、22の列パリティチェック使用可能なチャンネルワード30と同じ位置に位置づけられる場合、M（またはM+1）個の対応する行列の共通部分24〜29、および、列パリティチェック行21、22（図7、9、10、15、16参照）の1つに位置する、または、多数の、好ましくは、図2、5、6、11〜14に示されるように全てのK個の列パリティチェック行21、22にわたる、少なくとも1つの列パリティチェック使用可能なチャンネルワード30を有する、垂直方向の列23が、生成される。
【００４１】
図3は、誤った行31に発生した単一のSBTSEイベントを示す。それゆえに、行ベースのパリティチェックの復号化は、この誤った行31の位置を示す。さらに、このエラーイベントは、誤った列32において発生した。それゆえに、列ベースのパリティチェックの復号化は、この誤った列32の位置を示す。この結果、エラーイベントは、誤った行31および誤った列32の交差ポイント33で位置づけられる。したがって、行列の共通部分で、対応する、誤ったRLLワードは、容易に位置づけることができる。セグメント幅が1ビットである場合、対応するビットは同様に容易に訂正されることができる。
【００４２】
しかしながら、単一のSBTSEの場合、2つの隣接したビットは、d,kビットストリームにおいて影響を受ける。したがって、2つの隣接した列は、誤りであるとして示される。したがって、このような単一のSBTSEによって発生する(d,k)チャンネル・ビットストリームの両方の誤ったビットは、容易に位置づけられ、かつ訂正される。
【００４３】
RLLパリティチェック・コーディングのための積コード方式の2つの独立ランダムエラーに対して、状況は、より複雑である。図4は、誤った行38と39、並びに、誤った列40、41の検出となる2つのエラーイベント34、35を示す。2つの誤った行および列の検出は、それぞれ、4つの交差ポイントに結果としてなる。実際的な具体例として、各々の行（または列）に対して、単一エラーのみを、検出することができると仮定され、この結果、両方のエラーは、異なる行および異なる列において存在しなければならない。それから、交差ポイントの2×2のセットの対角に沿って配列される2つの可能な訂正のみが、適用されうることが明らかである。
【００４４】
一般に、RLLパリティチェック・コーディングに対する積コード方式のrランダムエラーのために、r!=1・2・3・...・rの可能な解が存在する。
【００４５】
正しい解、すなわち、その訂正パターンが、選択されてなければならない解を選択するために、チャンネルサイド情報が、使用される。例えば、上記のように、二極のビットストリームにおける遷移のフェーズ・エラーからの情報を、使用することができる。しかしながら、RLLワードのそれらの遷移のフェーズ・エラーのみが、列に沿ったおよび行に沿ったパリティチェックの復号化の結果として、誤りであると識別される行および列の共通部分に位置づけられ、したがって、極めて少ない量のチャンネルサイド情報のみを、必要とする。チャンネルサイド情報は、行のグループ（またはクラスタ）において正確に1つの誤った列および1つの誤った行を有するケースの場合、全く必要とされないことに留意されたい。
【００４６】
我々は、今、列の幅が正確に1ビットである状況を仮定する。RLL-行がd,k RLL制約を満たすにもかかわらず、行のグループ（またはクラスタ）において生成される1ビット長の列は、いかなるRLL制約も満たさないことに留意されたい。本発明の一実施例によれば、各々の列に沿ったビットのパリティは、列パリティチェックとして使用される。これは、1/Rチャネルビットを意味する、列につき1つ余分のユーザ-ビットを要求する。ここで、Rは、そのd,k制約を有するRLL(runlength limited)コードのレートである。例えば、R=1/2（およびd=2）の場合、これは、列パリティチェック・セグメントに対し列につき2つのチャネルビットを要求する。これらのビットは、2つの逐次的行に配置される。ここで、パリティ”0”は、例えば、逐次的行位置のチャネルビットとして、”00”または”11”によって実現し、およびパリティ”1”は、例えば、逐次的行位置のチャネルビットとして、”01”または”10”によって実現する。代替選択は、パリティ”0”が”01”または”10”によって実現され、およびパリティ”1”が”00”または”11”によって実現される。
【００４７】
図5は、列パリティ”1”、”1”、”1”、”1”に対するこの状況を示し、例えば、パリティチェック・セグメント42、”01”、”10”、”01”、”10”を、2つの列パリティチェック行21、22に生成する。
【００４８】
図5で図示されたように、逐次的垂直パリティ”1”が逐次的（1ビット長）列において必要なときに、問題は発生する。これは、自動的にd=1より大きな全てのd-制約を除外する、図5で表されるパターンとなる。
【００４９】
図6は、この問題のための解を示す。ここで、垂直パリティ、例えば”1”は、偶数番号をつけられた（1ビット長）列に対してのみ、または単に奇数番号をつけられた（1ビット長）列に対してのみの何れかで符号化される。すなわち、列パリティチェック行21、22内で、2番目ごとのビットは、パリティチェック目的のために使用されない。
【００５０】
SBTSEが常に（1ビット長である）2つの隣接した列に影響を及ぼすので、これらの2つの列の1つのみを正確に指摘することは、充分である。誤った列が検出された後で、他の誤った列が、検出された、誤った列の左または右の何れに配置されているかを判断しなければならない。他の誤った列が、左または右の何れに配置されているかの判断は、チャンネルサイド情報に基づく。
【００５１】
何れの垂直パリティも符号化されない1ビット長の列のチャネルビット”x”は、RLLコードの(d,k)制約を実現させるために、および／またはチャンネル・ビットストリームのDC-制御のための、マージング・ビットとして使用することができる。これは列-パリティチェック行の各々に対してである。DC-制御は、実行デジタル合計(running digital sum)が或るビット位置までの二極のチャンネル・ビットストリームの積分である、或る境界の範囲内で実行デジタル合計を保持することに基づくことに留意されたい。実行デジタル合計に対する積分は、水平の「行」方向に展開し、最初に、第1の行に対して、次に、逐次、次の列-パリティチェック行に対して評価されなければならない。
【００５２】
列のチャネルビットの構成を示す図6から理解できるように、d=3の制約まで、実現することができる。
【００５３】
しかしながら、2つの列パリティチェック行21、22が同時に、2列続けて、符号化される場合、DC-制御は、第2の行に対して、第1の行21における符号化された情報に依存し、かつ両方の行21、22は、同時に符号化されるので、第2の行22に対してDC-制御を可能にすることは、困難である。
【００５４】
図7に示される本発明の他の実施例によれば、M個のRLL行8〜13に加えて少なくとも2つの列パリティチェック行43、44が、列ベースのパリティチェック・コーディングを実現させるために必要である。各RLL行8〜13並びに各列パリティチェック行43、44は、幅N1およびN2チャネルビットの交互のセグメントに分割される。N1およびN2は、必ずではないが、互いに等しくないことが好ましく、行につきN個のRLLチャネルビットのその数に依存する。
【００５５】
第1の追加された列パリティチェック行43において、垂直パリティチェック情報は、長さN1の奇数添え字のセグメントにM+1行にわたって計算される。このパリティチェック情報は、図7のパリティ(a)によって示される。第2の追加された行44において、垂直パリティチェック情報は、この位置で（ハッチングをかけられたセグメントによって示される）マージング領域49を有する第1の列パリティチェック行43を含む、M+2行にわたって、幅N2の偶数添え字のセグメントに、計算される。これは、図5のパリティ(b)によって示される。
【００５６】
パリティ(b)は、また、M+1行のみにわたって、すなわち、この位置でマージング領域49を有する第1のパリティ行43を除外することによって、計算することもできることに留意されたい。しかしながら、第2の列パリティチェック行44のパリティチェック・セグメント・パリティ(b)は、第1の列パリティチェック行43のマージング・セグメント49のRLLビットストリームを考慮することが好ましい。
【００５７】
したがって、いわゆるジグザグ(zig-zag)方式は、垂直パリティチェック情報を符号化するために2つの追加された列パリティチェック行43、44のセグメントにわたって使用され、これによって、RLLパリティチェック・コーディングのための積コード方式を実現させる。
【００５８】
第1の追加された行43の偶数のセグメント、すなわち、マージング・セグメント49は、いかなるコード化情報も含まないが、特に(d,k)制約の違反を禁止するためのおよびDC-制御のための連結目的のために使用される。同様に、第2の追加された行44の奇数のセグメント、すなわちマージング・セグメント50は、いかなるコード化情報も含まないが、例えば、(d,k)制約の違反を禁止するおよび（第2の行の）DC-制御のための連結目的のために使用される。
【００５９】
ジグザグ方式の1つの実際的な利点は、RLLコーディングが、この方式を、マージング・セグメント49のチャネルワードの適切な選択を介し列パリティチェック行でDC-制御に適するようにする、継続的行様式(row-after-row fashion)で行うことができることである。
【００６０】
単一の列に対する垂直または列ベースのパリティチェック・コーディングは、次に記載される。第1の（奇数）列は、N1ビット長である。これらのN1ビットに対して、一般に、(d,k)制約と整合しているNdk(N1)の可能なシーケンスがある。簡単化のため、N1≦kと仮定し、この結果、d-制約のみが可能なシーケンスの数とし、そして、q1=Nd(N1)と考慮する必要がある。
【００６１】
同様に、N2ビット長である、第2の（偶数）列に関して、N2≦kと仮定され、そして、幅N2のチャンネル・ビットを有する可能なシーケンスの数は、q2=Nd(N2)である。
【００６２】
次の表1は、最小ランレングス制約d=1に対する幅N1ビットの関数として可能なシーケンスの数q1 =Nd(N1)を示す。
【表１】
2005523601.tif 000004
最小ランレングス制約d=1に対する幅N1ビットの関数としての可能なシーケンスの数q1=Nd(N1)
より一般に、幅N1ビットの可能なシーケンスの数q1=Nd(N1)は、d= 1,..., 5およびN1= 0,1,2,…, 14に対するパラメータとして最小ランレングス制約dを用いて表2に従って与えられる。
【表２】
2005523601.tif 000005
パラメータとしての最小ランレングス制約dに対する幅N1ビットの関数としての可能なシーケンスの数q1=Nd(N1)
同様の値が、N2ビット幅を有する第2の(偶数の)列に対して適用される。ここにおいて、可能なシーケンスの数は、q2=Nd(N2)である、すなわち、表1および2を、添字「1」を添字「2」で置き換えることによって使用することができる。
【００６３】
計数上のコーディングによって（例えば、非特許文献７参照）、
2005523601.tif 000006
によって示されるそのN1(d,k)-ビットを有する、行jのワードWjと呼ばれる、長さN1の各
異なるシーケンスに対して、固有の添字wjが、0≦wj≦q1-1と関連し、次式によって与えられる。
【００６４】
2005523601.tif 000007
次の表3は、幅N1=4ビットおよびd=1の具体例の場合、ワードWjに関する固有の添字wjの、計算を示す。
【００６５】
表3.   N1=4ビットの場合、すなわち、
2005523601.tif 000008
および
2005523601.tif 000009
の場合、N1ビット
2005523601.tif 000010
が固有の添字
2005523601.tif 000011
を有する行jのワード
2005523601.tif 000012
【表３】
2005523601.tif 000013
M個のRLL行8〜13があるので第1の（奇数）列に対して行M+1に対するN1ビット長の追加のワード（または、行列の共通部分での、セグメント）、すなわち、第1の列パリティチェック行43が、生成され、そして、（Vによって表示され、かつ「0」およびq1の間で数である）次の垂直または列ベースのパリティチェック条件が満たされる：
2005523601.tif 000014
この意味において、追加のワードは、列パリティチェック使用可能なチャンネルワードである。N2チャネルビットの幅を有する第2の（偶数）列の場合、同様の状況が、適用される。したがって、N2ビットの幅を有する各ワードWjに対して、0≦wj≦q2-1である、固有の添字wjは、次式で与えられる。
【００６６】
2005523601.tif 000015
垂直または列ベースのパリティチェック条件は、式(3)によって与えられるように、上述の第1の（奇数）列に関しても算出することもできる。これに代えて、この垂直または列ベースのパリティチェック条件は、M+2行にわたって垂直パリティを計算することによって算出され、次式を生成する：
2005523601.tif 000016
【００６７】
SBTSEが、考慮された（奇数または偶数）列のセグメントまたはワードWjの1つで発生したと仮定されたい。次に、3つの異なる状況が、区別されなければならない：
【００６８】
1.  第1の状況：
SBTSEの遷移シフトは、対応するセグメント内で完全に内部である。遷移シフトは、セグメント境界にわたるいかなるシフトも含まない。遷移は、右(i→i+1)、または左(i→i-1)の何れかの可能性がある。
【００６９】
式(2)に従うワード添字wjを有する（N1ビットの幅の）ワードWjからなるセグメントにおいて右へのシフトエラーは、次式で示すことができる：
2005523601.tif 000017
このようなシフトエラーは、検出されるワード添字wjの変化
2005523601.tif 000018
に結果としてなり、
2005523601.tif 000019
したがって、検出される垂直パリティチェック値の変化となる。
【００７０】
2005523601.tif 000020
したがって、Vの検出される値は、次式のようになる：
2005523601.tif 000021
ここで、Nd(i-1)、Nd(i)、Nd(i+1)は、例えば、表1または表2に従って決定され、「+」は、右への遷移を表し、「-」は、左への遷移を表す。
【００７１】
したがって、SBTSEは、このようなセグメントの内部と決定される、すなわち、
a)  検出された列ベースのパリティチェック制約が、次式のように検出される場合、
2005523601.tif 000022
遷移-シフトエラーは、ビット位置iから右へビット位置i+1へであると決定され、および、
b)  検出された列ベースのパリティチェック制約が、次式のように検出される場合、
2005523601.tif 000023
遷移-シフトエラーは、ビット位置iから左へビット位置i-1へであると決定される。
【００７２】
2.  第2の状況：
遷移シフトが、図8に示されるように、列2に対して、セグメントの左の境界を交差する場合、第2の状況は発生する。オリジナルの遷移-ビットは、現在の列（列2）または前の列（列1）の何れかに存在する可能性がある。現在の列のV基準に対して、この事は、検出される値
2005523601.tif 000024
となり、および前の列に対して、前の列がN1ビットの幅のセグメントを有すると仮定すると、この事は、検出される値V =±Nd(N1-1)となる。
【００７３】
したがって、SBTSEは、このようなセグメントの左の境界を交差していると決定される、すなわち、
a)  検出された列ベースのパリティチェック制約が、次式のように現在の列に対して検出される場合、
2005523601.tif 000025
および、検出された列ベースのパリティチェック制約が、次式のように前の列に対して検出される場合、
2005523601.tif 000026
遷移-シフトエラーは、前のセグメントの最後のビット位置から現在のセグメントの第1のビット位置へと決定され、ここで、N1,2は、左側の（または前の）列のセグメントの範囲内のビットの数（図8で、この数は、N1に等しいように選ばれた）であり、または、
b)  検出された列ベースのパリティチェック制約が、次式のように現在の列に対して検出される場合、
2005523601.tif 000027
および、検出された列ベースのパリティチェック制約が、次式のように前の列に対して検出される場合、
2005523601.tif 000028
遷移-シフトエラーは、現在のセグメントの第1のビット位置から前のセグメントの最後のビット位置へと決定される。
【００７４】
3.  第3の状況：
遷移シフトがセグメントの右の境界を交差する場合、第3の状況が発生する。この事は、第2の状況の簡単な拡張で示し得る、しかし、完全性のために、この状況もまた、充分詳細に記載する。次に、オリジナルの遷移-ビットは、現在の列、または次の列の何れかに存在する可能性がある。現在の列のV基準に対して、この事は、検出される値
2005523601.tif 000029
となり、および次の列に対して、現在の列がN2ビットの幅のセグメントを有すると仮定すると、この事は、検出される値V =±Nd(0)となる。
【００７５】
したがって、SBTSEは、セグメントの右の境界を交差していると決定される、すなわち、
a)  検出される列ベースのパリティチェック制約が、次式のように現在の列に対して検出される場合、
2005523601.tif 000030
ここで、N1,2は、次の列が右側の列に等しいと考慮すると、左側（または現在の）列のセグメントの範囲内のビットの数であり、および、検出された列ベースのパリティチェック制約が、次の式のように次の列に対して検出される場合、
2005523601.tif 000031
遷移-シフトエラーは、現在のセグメントの最後のビット位置から次のセグメントの第1のビット位置へと決定される。または、
b)  検出された列ベースのパリティチェック制約が、次式のように現在の列に対して検出される場合、
2005523601.tif 000032
および、検出された列ベースのパリティチェック制約が、次式のように次の列に対して検出される場合、
2005523601.tif 000033
遷移-シフトエラーは、次のセグメントの第1のビット位置から現在のセグメントの最後のビット位置へであると判断される。
【００７６】
独立した列エラーの場合のエラー訂正は、次に記載される。
【００７７】
列の内部エラーが第1の状況に関して上記の通りに発生したと仮定されたい。前のおよび次の列が、エラーでは、独立していても良いが、エラー値の組合せが、第2のまたは第3の状況の範囲内にはあり得ず、すなわち、（前のセクションの中で拡張的に処理された）セグメントの境界を交差している、内部でないエラーに対するものではない。Vパリティチェック基準の評価によって、検出されるVのゼロでない値に対して、エラーがその列で発生したことを検出することができる。誤った水平または行ベースのパリティチェックがどの行に対して検出されたかをチェックすることによって、エラーが発生した、ワードWjからなるセグメントを、位置づけることが可能である。
【００７８】
行-パリティチェック復号化によって誤りであると識別された行および列-パリティチェック復号化によって誤りであると識別された列の適切な行列の共通部分のエラー位置づけの後、我々は、エラー訂正を実行する必要がある。エラー訂正のための1つより多い手続きがある。
【００７９】
第一実施例として、我々はシフトされた、誤った1-ビットを正確に指摘するための手続きを記載する。全ての実施例において、d制約の違反となるランダムエラーがすでに訂正されたと仮定される。ビット-検出におけるこのような訂正手続きは、非特許文献8；および非特許文献9に記載されるように、ラン(run)検出器またはランレングス・プッシュバック(runlength-push back)検出器として公知である。これは、全ての違反は削除されたので、全てのセグメントのチャネルワードはd制約と整合していることを意味する。
【００８０】
1つより多い”1”-ビットが、ワードにおいて発生する場合、シフトされた”1”-ビットに関して、検出されるV値は、代表的であるので、誤った遷移を正確に指摘することは、依然として可能である。V < Nd(N1)/2の場合には、右シフトが発生している。V > Nd(N1)/2の場合には、左シフトが発生している。具体例として、それに対してq1=Nd(N1)=60である、d=2、k=10、およびN1=k=10の場合が考慮される。
【００８１】
表4は、右のシフトエラーおよびd=2、k=10、N=10に対するシフトされた遷移の位置iの関数として、検出される垂直パリティチェック基準Vas-detectedを示す。
【００８２】
【表４】
2005523601.tif 000034
対応して、検出される垂直パリティチェック基準Vas-detectedは、次のように表5に従う左のシフトエラーに対して得ることができる：
【表５】
2005523601.tif 000035
【００８３】
表4および5に従う値は、ラインd=2の範囲内で2つの隣接した値の間で差値を計算することによってd=2の場合、表2から得られる。
【００８４】
したがって、右シフトSBTSEエラーに対する、および左シフトSBTSEエラーに対する検出されるV値は、次式によって、与えられる：
2005523601.tif 000036
一見して、第1の3ケース(Vas-detected=±1、±1、±1)は、それらが同じV値となるので、区別することができない。しかしながら、右シフトSBTSEに対して、式(20)に従う第1の3つの「+1」が、例えば、第1の4つのビット（第1のビットを除く）の遷移が左にバックシフトしていることを示す。それ故に、検出されるビット・パターンは、（|は、セグメントの左でワード境界を示している）：
|0100 - - -、
|0101 - - -（第2ビットが訂正のための左へシフトバックされる）、
|0010 - - -（第3のビットが訂正のための左へシフトバックされる）、および、
|0001 - - -（第4のビットが訂正のための左へシフトバックされる）。
【００８５】
それぞれ、これらの4つのケースは、明白に次の訂正されたワード（d = 2の場合）となる：
|1000 - - -,
|1001 - - -,
|0100 - - -,
|0010 - - -.
したがって、どの遷移が誤った行および誤った列の交差ポイントでのワードで訂正されるべきか（行列の共通部分でのエラー位置づけ）について、曖昧性は、残されない。ここで考慮される実際的なケース(d = 2)の場合、上記のラン検出器が全てのd=2違反を削除した場合に、第2の状況は発生しないことに留意されたい。
【００８６】
しかしながら、訂正手続きは、より一般に行うことができる。これは、エラー訂正のための第２の実施例である。行ベースのパリティチェックを使用することによって、ワードWjからなるセグメントが、位置づけられ、誤った列の誤ったセグメントとなると仮定する。更に、オリジナルのワード添字がwjでありおよび検出されるワード添字が
2005523601.tif 000037
であると仮定する。それから、垂直または行ベースのパリティチェックの検出される値は、次式である：
2005523601.tif 000038
および、このセグメントに対する訂正された添字は、次式で与えられる：
2005523601.tif 000039
好ましくは、列（またはセグメント）の幅が、可能な限り狭くされる、これは、より密度の高い二次元のグリッドが二次元のエラー位置づけおよび訂正の実行を可能にする。より密度の高いグリッドは、RLLパリティチェック・コーディングのための積コード方式の、より妥当なエラー訂正能力を可能にする。列の最小幅はdチャネルビットによって与えられ、そして、それは任意の2つの他のセグメントまたはワードの間でマージング・ビットとして必要とされるビットの最小数である。最大幅は、kによって与えられる。したがって、幅N1、N2が、次式であたえられる。
【００８７】
2005523601.tif 000040
各列に対して、上部または下部は、マージング・セグメントとして使用することができる。しかしながら、列パリティチェック行43、44の位置づけが、また、M個のRLL行8〜13のグループの範囲内の任意の位置でも可能であるので、マージング・セグメント49、50は、また、列の範囲内で位置づけられることができる。
【００８８】
単独ではない列エラーの場合のエラー訂正は、次に記載されている。セグメントの境界を交差する遷移シフトの場合、第2および第3の状況に関して上記しているように、2つの隣接した列は、誤りであると検出され、および、2つの列の列パリティチェック基準Vは、上述の第2および第3の状況の何れにも対応する。このような場合は、それらは上述したV値を有する上記の典型的エラー・パターンとなるので、直接的に検出可能である。それゆえに、検出された列の境界で対応しているビットは、対応してシフトされることができる。
【００８９】
図9は、図7に従うコーディング方式の場合、単一のSBTSEイベントを示す。単一のSBTSEは、誤った行52および誤った列53に位置づけられる、誤ったセグメント51において発生している。誤った行52は、対応する行パリティチェック基準によって決定される。誤った列53は、対応する列パリティチェック基準によって決定される。したがって、上記した第1の状況に従うエラーイベントが、発生している。このエラーイベントは、この第1の状況に関して上記の通りに訂正される。チャンネルサイド情報は、対応する、誤ったセグメント51および、特にこのセグメント51内の対応する、誤ったビットの検出および／または訂正のために使用される必要が無いことに留意されたい。
【００９０】
図10は、2つの独立したSBTSE 54、55に対する場合を示す。図4に関して先に述べた通りに、エラーが交差ポイント56、57に関するセグメントに現れた、2つのエラー54、55は、状況から区別されることができない。正しい解を選択するために、チャンネルサイド情報は、再度、使用される。チャンネルサイド情報は、交差ポイント56、57に関連したセグメントおよびSBTSE 54、55に関する交差ポイントに関連したセグメントによって示される遷移のためにのみ必要とされることに留意されたい。したがって、少量のチャンネルサイド情報のみが、使用される。
【００９１】
結論として、本発明は、(d,k)チャンネル・ビットストリームに対するパリティチェックコードからなる積コード方式を組み込むための異なる方式を提案する。これらの異なる方式は、図11〜16に関して示される。これら図11〜16の各々において、（各所定のパリティチェック制約を有するRLLパリティチェック・コードワードを表す）M個のRLL行45のグループの後に列パリティチェック行46のK個のグループが続く。
【００９２】
図11において、列47は(d,k)チャンネル・ビットストリームの、すべてのビット位置で構成される。これらの列47の幅は、それゆえに、1ビットである。各列47は、その下端部に、1つの列パリティチェック使用可能なチャンネル(RLL)ワードまたはセグメント48および、M個のRLL行における多数のM個の対応しているセグメント有する。
【００９３】
好ましくは各行の終端に、しかし、列の可能な他の至るところで、行パリティチェック使用可能なチャンネル(RLL)ワード（図示せず）は、行ベースのパリティチェック制約を実現するために提供され、これによって、行パリティチェック・コードワードを構成する。
【００９４】
図12は、図11に示されるのと同じコードを示す、しかしながら、列47は、垂直にでなく、しかし、横断する方向に、配置される。そして、それは同様に可能である。
【００９５】
我々は、今、列が単に1-ビット長である特別の場合に焦点を合わせる。この実施は、ジグザグ実施と実際に異なる。ここで、列の幅はdより小さいべきでない。図13は、図11と全く同じコードを示す、しかしながら、2番目ごとの列は、パリティチェックのために省略される、すなわち、これらの省略された列の(d,k)チャネルビットは、列ベースのパリティチェック符号化されたものではない。したがって、列パリティチェック行46で、2番目ごとのセグメントのみ、列パリティチェック使用可能なチャンネルワード48として使用される。それゆえに、列パリティチェック使用可能なチャンネルワード48は2番目ごとのビット（または列）位置でのみ提供される。
【００９６】
しかしながら、図14は図13のコードに対応するコードを示す。そして、列47が垂直方向でなくて、横断する方向に、向きを定められる。
【００９７】
図15は、（図16に従うコードと比較するための基準を与えている）図7に示されるコードの簡略化された図解であり、ここで、列47の幅は、「1」ビット（最小dビットで）より大きく、及び、列パリティチェック行46の数Kは、2である。したがって、各列47は、対応する幅を有する列パリティチェック使用可能なチャンネルワード48並びにM個のRLL行45の同じ幅の対応しているセグメントを有する。しかしながら、各列パリティチェック行46で、行に関するインタリーブ配置された方向で、2番目ごとのセグメントのみが、列パリティチェック使用可能なチャネルワード48として使用される。ここにおいて、このような列パリティチェック使用可能なチャンネルワード48の間のセグメントは、マージング・セグメントとして、使用される。
【００９８】
再度、好ましくは各RLL行45の終端に、行パリティチェック使用可能なチャンネルワード（図示せず）は行ベースのパリティチェック制約を実現させるために提供され、これによって、行パリティチェック・コードワードを構成する。
【００９９】
図16は、図15とほとんど同じコードを示す、しかしながら、列47は、垂直の代わりに横断する方向に配置される。
【０１００】
図13〜16の場合、列パリティチェック行46の範囲内で単に約半分のセグメントは、列パリティチェック使用可能なチャンネルワードとして使用され、一方、他のセグメントは、マージング・セグメントとして使用されることに留意されたい。
【０１０１】
要約すると、本発明はチャンネルのランダムエラー能力を改善する、積コードと組み合わせられるパリティチェックRLLコードを用いて、光学、磁性または光磁気の記憶媒体として具体化されることが好ましく、したがって、エラー位置づけの目的でチャンネルサイド情報を使用する必要性をかなり減ずる。
【０１０２】
上述の説明において、我々は、「行」は、RLLコードが実現される方向と対応するという規則をつくったことに留意されたい。しかしながら、本発明は、行を列と交換することが可能であり、その逆もしかり、このことにより、更に同じ考えを実現できる。
【図面の簡単な説明】
【０１０３】
【図１】(d,k)チャンネル・ビットストリーム、ディスクに記録されたRLL波形、検出されたRLLビットストリーム、および導かれた(d,k)ビットストリームを生成する、従来技術である、(d,k)制約を用いたユーザ・データのRLL符号化を示す。
【図２】本発明の好ましい実施例に従うRLLパリティチェック・コーディングのための積コード方式を示す。
【図３】単一のエラーイベントの訂正のための方式を示す。
【図４】二重のエラーイベントの訂正のための方式を示す。
【図５】本発明の別の実施例に従う列パリティチェック行のビットストリームを示す。
【図６】本発明の更なる別の実施例に従う列パリティチェック行のビットストリームを示す。
【図７】本発明のさらに別な実施例に従う垂直のまたは列ベースのパリティチェック・コーディングのための「ジグザグ(zig-zag)」方式を示す。
【図８】図7に従う実施例の場合の2つの隣接セグメントの境界を交差させているSBTSEの状況を示す。
【図９】図7に従う実施例において発生している単一のSBTSEイベントを示す。
【図１０】図10は、図7に従う実施例の二重のSBTSEイベントを示す。
【図１１】図5に従う実施例の場合の垂直列の原則配置を示す。
【図１２】図5に従う実施例の場合の横断する列に対する原則配置を示す。
【図１３】図13は、図6に従う実施例に対する垂直列のための原則配置を示す。
【図１４】図6に従う実施例の場合の横断する列の原則配置を示す。
【図１５】図7に従う実施例の場合の垂直列に対する原則配置を示す。
【図１６】図7に従う実施例の場合の横断する列の原則配置を示す。
【符号の説明】
【０１０４】
3  RLL符号化されたバイナリ(d,k)チャンネル・ビットストリーム
8〜13  RLL行
14  水平矢印
15〜20  行パリティチェック使用可能なチャンネルワード
21、22  列パリティチェック行
24〜29  対応する行列の共通部分（対応するセグメント）
30  列パリティチェック使用可能なチャンネルワード
23  行列の共通部分24〜29および少なくとも1つの列パリティチェック使用可能なチャンネルワード30を有する垂直方向の列
【図１】
2005523601.tif 000060
【図２】
2005523601.tif 000061
【図３】
2005523601.tif 000062
【図４】
2005523601.tif 000063
【図５】
2005523601.tif 000064
【図６】
2005523601.tif 000065
【図７】
2005523601.tif 000066
【図８】
2005523601.tif 000067
【図９】
2005523601.tif 000068
【図１０】
2005523601.tif 000069
【図１１】
2005523601.tif 000070
【図１２】
2005523601.tif 000071
【図１３】
2005523601.tif 000072
【図１４】
2005523601.tif 000073
【図１５】
2005523601.tif 000074
【図１６】
2005523601.tif 000075
【国際調査報告】
2005523601.tif 000076
2005523601.tif 000077
2005523601.tif 000078
2005523601.tif 000079