(57)【要約】【課題】  プローブベースのデータ記憶装置のプローブによって記憶表面に形成されたピットの有無によって表される、データを上書きする方法および装置を提供する。【解決手段】  入力データは、コード化入力データ（ｂ0、ｂ1、ｂ2、・・・、）内の所与の値ｘの連続するビットが補数値ｘバーの少なくともｄ個のビットによって分離されるようにコーディングされ、ｄは≧２の所定の数である。次に、上書きデータ・ビット（ｖ0、ｖ1、ｖ2、・・・、）は、コード化入力データ・ビット（ｂ0、ｂ1、ｂ2、・・・、）をエンコードすることにより生成される。このエンコード・プロセスでは、１つのピットがデータ記憶装置内の値ｐの１つのビットを表すものと想定し、以下の条件を満足する。第１に、コード化入力データ（ｂ0、ｂ1、ｂ2、・・・、）内の値ｘの任意のビットが値ｐの上書きデータ・ビットとしてエンコードされる。第２に、コード化入力データ（ｂ0、ｂ1、ｂ2、・・・、）内の値ｘバーのＬ≦２ｄ個のビットの任意の有界連続が値ｐバーのＬ個の上書きデータ・ビットの連続としてエンコードされる。第３に、コード化入力データ（ｂ0、ｂ1、ｂ2、・・・、）内の値ｘバーのＬ＞２ｄ個のビットの任意の有界連続が、値ｐのｎ個のビットと値ｐバーの（Ｌ−ｎ）個のビットからなるＬ個の上書きデータ・ビットの連続としてエンコードされる。ｎ＝ＣＥＩＬ［（Ｌ−２ｄ）／ｄ］であり、ｎ個のビットは、連続の末尾からｄ個のビットの範囲内に値ｐの１つのビットが存在し、連続の先頭から２ｄ＋１個のビットの範囲内に値ｐの１つのビットが存在し、ｎ＞１の場合に、ｎ個のビットのそれぞれがｎ個のビットのうちのもう１つのビットからｄ個のビットの範囲内に存在するように連続内に配置される。
2005531097.tif 000002
【特許請求の範囲】
【請求項１】
コード化入力データ（ｂ0、ｂ1、ｂ2、・・・、）内の値ｘの連続するビットが値ｘバーの少なくともｄ個のビットによって分離されるように入力データをコーディングするステップであって、ｄが≧２の所定の数であるステップと、
前記コード化入力データ・ビット（ｂ0、ｂ1、ｂ2、・・・、）をエンコードすることにより上書きデータ・ビット（ｖ0、ｖ1、ｖ2、・・・、）を生成するステップであって、１つのピットがプローブベースのデータ記憶装置（１）内の値ｐの１つのビットを表す場合に、
（ａ）前記コード化入力データ（ｂ0、ｂ1、ｂ2、・・・、）内の値ｘの任意のビットが値ｐの上書きデータ・ビットとしてエンコードされ、
（ｂ）前記コード化入力データ（ｂ0、ｂ1、ｂ2、・・・、）内の値ｘバーのＬ≦２ｄ個のビットの任意の有界連続が値ｐバーのＬ個の上書きデータ・ビットの連続としてエンコードされ、
（ｃ）前記コード化入力データ（ｂ0、ｂ1、ｂ2、・・・、）内の値ｘバーのＬ＞２ｄ個のビットの任意の有界連続が、値ｐのｎ個のビットと値ｐバーの（Ｌ−ｎ）個のビットからなるＬ個の上書きデータ・ビットの連続としてエンコードされ、ｎ＝ＣＥＩＬ［（Ｌ−２ｄ）／ｄ］であり、前記ｎ個のビットが
（ｃ１）前記連続の末尾からｄ個のビットの範囲内に値ｐの１つのビットが存在し、
（ｃ２）前記連続の先頭から２ｄ＋１個のビットの範囲内に値ｐの１つのビットが存在し、
（ｃ３）ｎ＞１の場合に、前記ｎ個のビットのそれぞれが前記ｎ個のビットのうちのもう１つのビットからｄ個のビットの範囲内に存在する
ように前記連続内に配置されるようになっているステップと、
値ｐの１つの上書きデータ・ビットを書き込むことにより当該上書きデータ・ビットからｄ個のビットの範囲内にある値ｐの１つの既存ビットを消去できるようなビット間隔で前記上書きデータ・ビット（ｖ0、ｖ1、ｖ2、・・・、）で記憶表面（４）上のデータを上書きするステップと、
を有し、データがプローブベースのデータ記憶装置（１）のプローブによって記憶表面（４）に形成されたピットの有無によって表される、プローブベースのデータ記憶装置（１）内のデータを上書きするための方法。
【請求項２】
上書き動作のための前記コード化入力データ（ｂ0、ｂ1、ｂ2、・・・、）の先頭の値ｘバーのＬ個のビットの連続の場合、
Ｌ≦ｄの場合に、前記連続を値ｐバーのＬ個の上書きデータ・ビットの連続としてエンコードするステップと、
Ｌ＞ｄの場合に、前記連続を値ｐのｍ個のビットと値ｐバーの（Ｌ−ｍ）個のビットからなるＬ個の上書きデータ・ビットの連続としてエンコードするステップであって、ｍ＝ＣＥＩＬ［（Ｌ−ｄ）／ｄ］であり、前記ｍ個のビットが
（１）前記連続の末尾からｄ個のビットの範囲内に値ｐの１つのビットが存在し、
（２）前記連続の先頭からｄ＋１個のビットの範囲内に値ｐの１つのビットが存在し、
（３）ｍ＞１の場合に、前記ｍ個のビットのそれぞれが前記ｍ個のビットのうちのもう１つのビットからｄ個のビットの範囲内に存在する
ように前記連続内に配置されるステップと、
を含む、請求項１に記載の方法。
【請求項３】
上書き動作のための前記コード化入力データ（ｂ0、ｂ1、ｂ2、・・・、）の末尾の値ｘバーのＬ個のビットの連続の場合、
Ｌ≦ｄの場合に、前記連続を値ｐバーのＬ個の上書きデータ・ビットの連続としてエンコードするステップと、
ｄ＜Ｌ≦２ｄの場合に、前記連続を値ｐの１つのビットで終端する値ｐバーのＬ個のビットからなる（Ｌ＋１）個の上書きデータ・ビットの連続としてエンコードするステップと、
Ｌ＞２ｄの場合に、前記連続を値ｐの１つのビットで終端する請求項１の条件（ｃ）によるＬ個の上書きデータ・ビットの連続からなる（Ｌ＋１）個の上書きデータ・ビットの連続としてエンコードするステップと、
を含む、請求項１または２に記載の方法。
【請求項４】
ｐ＝１である、請求項１ないし３のいずれかに記載の方法。
【請求項５】
ｘ＝１である、請求項１ないし４のいずれかに記載の方法。
【請求項６】
ｄ＝２である、請求項１ないし５のいずれかに記載の方法。
【請求項７】
前記コード化入力データ（ｂ0、ｂ1、ｂ2、・・・、）内の値ｘの連続するビットが値ｘバーの少なくともｄ個かつ多くてもｋ個のビットによって分離されるように前記入力データがコーディングされ、ｋが＞ｄの所定の数である、請求項１ないし６のいずれかに記載の方法。
【請求項８】
ｄ＝２およびｋ＝１０である、請求項７に記載の方法。
【請求項９】
請求項１ないし８のいずれかに記載の方法により記憶表面（４）上にデータを保管するステップと、
‐前記値ｘがプローブベースのデータ記憶装置（１）内の前記値ｐに等しい場合に、前記コード化入力データ（ｂ0、ｂ1、ｂ2、・・・、）を生成するために前記入力データに適用された前記コーディングの逆を実行し、
‐前記値ｘバーが前記データ記憶装置内の前記値ｐに等しい場合に、前記記憶表面から読み取られたデータの補数を取り、次に前記コード化入力データ（ｂ0、ｂ1、ｂ2、・・・、）を生成するために前記入力データに適用された前記コーディングの逆を実行する
ことにより、前記記憶表面（４）から読み取られた前記データをデコードし、それにより前記入力データを回復するステップと、
を有し、データがプローブベースのデータ記憶装置（１）のプローブによって記憶表面（４）に形成されたピットの有無によって表される、プローブベースのデータ記憶装置（１）内のデータの記憶および回復のための方法。
【請求項１０】
コード化入力データ（ｂ0、ｂ1、ｂ2、・・・、）内の値ｘの連続するビットが値ｘバーの少なくともｄ個のビットによって分離されるようにプローブベースのデータ記憶装置（１）に保管すべき入力データをコーディングするためのコーダ（６）であって、ｄが≧２の所定の数であるコーダ（６）と、
前記コード化入力データ・ビット（ｂ0、ｂ1、ｂ2、・・・、）をエンコードすることにより上書きデータ・ビット（ｖ0、ｖ1、ｖ2、・・・、）を生成するための上書きパターン生成器（７）であって、
（ａ）前記コード化入力データ（ｂ0、ｂ1、ｂ2、・・・、）内の値ｘの任意のビットが値ｘの上書きデータ・ビットとしてエンコードされ、
（ｂ）前記コード化入力データ（ｂ0、ｂ1、ｂ2、・・・、）内の値ｘバーのＬ≦２ｄ個のビットの任意の有界連続が値ｘバーのＬ個の上書きデータ・ビットの連続としてエンコードされ、
（ｃ）前記コード化入力データ（ｂ0、ｂ1、ｂ2、・・・、）内の値ｘバーのＬ＞２ｄ個のビットの任意の有界連続が、値ｘのｎ個のビットと値ｘバーの（Ｌ−ｎ）個のビットからなるＬ個の上書きデータ・ビットの連続としてエンコードされ、ｎ＝ＣＥＩＬ［（Ｌ−２ｄ）／ｄ］であり、前記ｎ個のビットが
（ｃ１）前記連続の末尾からｄ個のビットの範囲内に値ｘの１つのビットが存在し、
（ｃ２）前記連続の先頭から２ｄ＋１個のビットの範囲内に値ｘの１つのビットが存在し、
（ｃ３）ｎ＞１の場合に、前記ｎ個のビットのそれぞれが前記ｎ個のビットのうちのもう１つのビットからｄ個のビットの範囲内に存在する
ように前記連続内に配置されるようになっている上書きパターン生成器（７）と、
を有し、データがプローブベースのデータ記憶装置（１）のプローブによって記憶表面（４）に形成されたピットの有無によって表される、プローブベースのデータ記憶装置（１）に保管するためのデータをコーディングするためのコーディング装置。
【請求項１１】
コード化入力データ（ｂ0、ｂ1、ｂ2、・・・、）内の値ｘの連続するビットが値ｘバーの少なくともｄ個のビットによって分離されるようにプローブベースのデータ記憶装置（１）に保管すべき入力データをコーディングするためのコーダ（６）であって、ｄが≧２の所定の数であるコーダ（６）と、
前記コード化入力データ・ビット（ｂ0、ｂ1、ｂ2、・・・、）をエンコードすることにより上書きデータ・ビット（ｖ0、ｖ1、ｖ2、・・・、）を生成するための上書きパターン生成器（７）であって、
（ａ）前記コード化入力データ（ｂ0、ｂ1、ｂ2、・・・、）内の値ｘの任意のビットが値ｘバーの上書きデータ・ビットとしてエンコードされ、
（ｂ）前記コード化入力データ（ｂ0、ｂ1、ｂ2、・・・、）内の値ｘバーのＬ≦２ｄ個のビットの任意の有界連続が値ｘのＬ個の上書きデータ・ビットの連続としてエンコードされ、
（ｃ）前記コード化入力データ（ｂ0、ｂ1、ｂ2、・・・、）内の値ｘバーのＬ＞２ｄ個のビットの任意の有界連続が、値ｘバーのｎ個のビットと値ｘの（Ｌ−ｎ）個のビットからなるＬ個の上書きデータ・ビットの連続としてエンコードされ、ｎ＝ＣＥＩＬ［（Ｌ−２ｄ）／ｄ］であり、前記ｎ個のビットが
（ｃ１）前記連続の末尾からｄ個のビットの範囲内に値ｘバーの１つのビットが存在し、
（ｃ２）前記連続の先頭から２ｄ＋１個のビットの範囲内に値ｘバーの１つのビットが存在し、
（ｃ３）ｎ＞１の場合に、前記ｎ個のビットのそれぞれが前記ｎ個のビットのうちのもう１つのビットからｄ個のビットの範囲内に存在する
ように前記連続内に配置されるようになっている上書きパターン生成器（７）と、
を有し、データがプローブベースのデータ記憶装置（１）のプローブによって記憶表面（４）に形成されたピットの有無によって表される、プローブベースのデータ記憶装置（１）に保管するためのデータをコーディングするためのコーディング装置。
【請求項１２】
請求項１０または１１に記載のコーディング装置と、
記憶表面（４）から読み取られたデータをデコードするためのデコーダ（８）であって、前記コーダ（６）によって実現された前記コードの逆を実現するように配置されるデコーダ（８）と、
を有し、データがプローブベースのデータ記憶装置（１）のプローブによって記憶表面（４）に形成されたピットの有無によって表される、プローブベースのデータ記憶装置（１）内のデータをコーディングしデコードするための装置（５）。
【請求項１３】
記憶表面（４）と、
データが前記記憶表面（４）上のビット位置のピットの有無によって表されるようにその中にピットを形成することにより前記記憶表面（４）上にデータを保管するためのプローブ・メカニズム（２）と、
コード化入力データ（ｂ0、ｂ1、ｂ2、・・・、）内の値ｘの連続するビットが値ｘバーの少なくともｄ個のビットによって分離されるように装置に保管すべき入力データをコーディングするためのコーダ（６）であって、ｄが≧２の所定の数であるコーダ（６）と、
前記コード化入力データ・ビット（ｂ0、ｂ1、ｂ2、・・・、）をエンコードすることにより上書きデータ・ビット（ｖ0、ｖ1、ｖ2、・・・、）を生成するための上書きパターン生成器（７）であって、１つのピットが値ｐの１つのビットを表す場合に、
（ａ）前記コード化入力データ（ｂ0、ｂ1、ｂ2、・・・、）内の値ｘの任意のビットが値ｐの上書きデータ・ビットとしてエンコードされ、
（ｂ）前記コード化入力データ（ｂ0、ｂ1、ｂ2、・・・、）内の値ｘバーのＬ≦２ｄ個のビットの任意の有界連続が値ｐバーのＬ個の上書きデータ・ビットの連続としてエンコードされ、
（ｃ）前記コード化入力データ（ｂ0、ｂ1、ｂ2、・・・、）内の値ｘバーのＬ＞２ｄ個のビットの任意の有界連続が、値ｐのｎ個のビットと値ｐバーの（Ｌ−ｎ）個のビットからなるＬ個の上書きデータ・ビットの連続としてエンコードされ、ｎ＝ＣＥＩＬ［（Ｌ−２ｄ）／ｄ］であり、前記ｎ個のビットが
（ｃ１）前記連続の末尾からｄ個のビットの範囲内に値ｐの１つのビットが存在し、
（ｃ２）前記連続の先頭から２ｄ＋１個のビットの範囲内に値ｐの１つのビットが存在し、
（ｃ３）ｎ＞１の場合に、前記ｎ個のビットのそれぞれが前記ｎ個のビットのうちのもう１つのビットからｄ個のビットの範囲内に存在する
ように前記連続内に配置されるようになっている上書きパターン生成器（７）と、
を有し、
前記プローブ・メカニズム（２）が、値ｐの１つの上書きデータ・ビットを書き込むことにより当該上書きデータ・ビットからｄ個のビットの範囲内にある値ｐの１つの既存ビットを消去できるようなビット間隔で前記上書きデータ・ビット（ｖ0、ｖ1、ｖ2、・・・、）で前記記憶表面（４）上のデータを上書きするように使用中に配置される、プローブベースのデータ記憶装置（１）。
【請求項１４】
前記上書きパターン生成器（７）が、上書き動作のための前記コード化入力データ（ｂ0、ｂ1、ｂ2、・・・、）の先頭の値ｘバーのＬ個のビットの連続をエンコードするために配置され、
Ｌ≦ｄの場合に、前記連続を値ｐバーのＬ個の上書きデータ・ビットの連続としてエンコードし、
Ｌ＞ｄの場合に、前記連続を値ｐのｍ個のビットと値ｐバーの（Ｌ−ｍ）個のビットからなるＬ個の上書きデータ・ビットの連続としてエンコードし、ｍ＝ＣＥＩＬ［（Ｌ−ｄ）／ｄ］であり、前記ｍ個のビットが
（１）前記連続の末尾からｄ個のビットの範囲内に値ｐの１つのビットが存在し、
（２）前記連続の先頭からｄ＋１個のビットの範囲内に値ｐの１つのビットが存在し、
（３）ｍ＞１の場合に、前記ｍ個のビットのそれぞれが前記ｍ個のビットのうちのもう１つのビットからｄ個のビットの範囲内に存在する
ように前記連続内に配置される
ことによる、請求項１３に記載の装置。
【請求項１５】
前記上書きパターン生成器（７）が、上書き動作のための前記コード化入力データ（ｂ0、ｂ1、ｂ2、・・・、）の末尾の値ｘバーのＬ個のビットの連続をエンコードするために配置され、
Ｌ≦ｄの場合に、前記連続を値ｐバーのＬ個の上書きデータ・ビットの連続としてエンコードし、
ｄ＜Ｌ≦２ｄの場合に、前記連続を値ｐの１つのビットで終端する値ｐバーのＬ個のビットからなる（Ｌ＋１）個の上書きデータ・ビットの連続としてエンコードし、
Ｌ＞２ｄの場合に、前記連続を値ｐの１つのビットで終端する請求項１３の条件（ｃ）によるＬ個の上書きデータ・ビットの連続からなる（Ｌ＋１）個の上書きデータ・ビットの連続としてエンコードする
ことによる、請求項１３または１４に記載の装置。
【請求項１６】
前記記憶表面（４）から読み取られたデータをデコードするためのデコーダ（８）を含み、前記デコーダ（８）が
前記値ｘが前記値ｐに等しい場合に、前記コード化入力データ（ｂ0、ｂ1、ｂ2、・・・、）を生成するために前記入力データに適用された前記コーディングの逆を実行し、
前記値ｘバーが前記値ｐに等しい場合に、前記記憶表面（４）から読み取られたデータの補数を取り、次に前記コード化入力データ（ｂ0、ｂ1、ｂ2、・・・、）を生成するために前記入力データに適用された前記コーディングの逆を実行する
ことにより、前記入力データを回復するように配置される、請求項１３ないし１５のいずれか１項に記載の装置。
【請求項１７】
ｐ＝１である、請求項１３ないし１６のいずれか１項に記載の装置。
【請求項１８】
前記プローブ・メカニズム（２）が、前記記憶表面（４）上にデータを書き込むために複数の個々にアドレス可能なプローブを有する、請求項１３ないし１７のいずれか１項に記載の装置。
【請求項１９】
ｘ＝１である、請求項１０ないし１８のいずれか１項に記載の装置。
【請求項２０】
ｄ＝２である、請求項１０ないし１９のいずれか１項に記載の装置。
【請求項２１】
前記コーダ（６）が、前記コード化入力データ（ｂ0、ｂ1、ｂ2、・・・、）内の値ｘの連続するビットが値ｘバーの少なくともｄ個かつ多くてもｋ個のビットによって分離されるように前記入力データをコーディングするように配置され、ｋが＞ｄの所定の数である、請求項１０ないし２０のいずれか１項に記載の装置。
【請求項２２】
ｄ＝２およびｋ＝１０である、請求項２１に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、プローブベースのデータ記憶装置（probe-based data storage device）に関し、詳細には、このような装置におけるデータの上書きに関する。本発明の諸実施形態は、前に書き込まれたデータを先に消去せずにこのような装置にデータを保管できるようにする方法および装置を提供する。
【背景技術】
【０００２】
プローブベースのデータ記憶は、長い間、超高密度（ultra high density）データ記憶のために可能な基礎として認識されていた。プローブベースのデータ記憶装置では、保管データは、装置のプローブによって記憶表面（storage surface）に形成されたくぼみ（indentation）または「ピット（pit）」の有無によって記憶表面上に表される。たとえば、ＡＦＭ（原子間力顕微鏡（Atomic Force Microscope））ベースの記憶装置では、プローブは微細加工した片持ちばり（microfabricated cantilever）の端部に取り付けられたナノメートルの鋭いチップ（tip）である。このチップは、ポリマー基板の形をした記憶媒体の表面上を移動することができる。チップおよびその結果、チップとの接触点におけるポリマー表面を加熱し、チップがポリマー表面に貫入してピットを作成できるようにするためのメカニズムが提供される。このようなピットは概して値「１」のビットを表し、値「０」のビットは記憶表面上のビット位置（bit position）にピットがないことによって表される。読取り走査モード（read-scan mode）では、このサーモメカニカル・プローブ・メカニズムを使用すると、チップがビットくぼみのパターン上を移動するときに片持ちばりの偏向を検出することによってデータをリードバック（read-back）することができる。ＡＦＭベースのデータ記憶については、２０００年５月のＩＢＭ  Ｊｏｕｒｎａｌ  ｏｆ  Ｒｅｓｅａｒｃｈ  ＆  Ｄｅｖｅｌｏｐｍｅｎｔ、Ｖｏｌｕｍｅ４４、Ｎｏ．３、３２３〜３４０ページのＶｅｔｔｉｇｅｒ他による「The 'Millipede'- More Than One Thousand Tips for Future AFM DataStorage」およびその中で引用された参照文献に詳細に記載されている。この文書に記載されている通り、基本的な読取り／書込み動作は単一片持ちばりプローブを使用して実現することができるが、実際には、データ転送速度を増加するために、個々にアドレス可能な片持ちばりの統合アレイを使用する。
【０００３】
したがって、これらのプローブベースの記憶装置における基本的な書込み動作は、マイクロメカニカル・プローブ・メカニズムによって記憶表面にピットを作成することを含む。ピットが作成されると、材料がプローブによって変位し、くぼみ周辺の領域に付着する。たとえば、前述のＡＦＭベースの装置では、溶融ポリマーがピット周辺の領域に付着して、ポリマー・バックグラウンドより高いトポロジ・プロファイルを有する「ドーナツ・ウォール（donut wall）」または「リング」を作成する。既存ピットに十分近いところにピットが形成される場合、変位された材料は部分的に既存ピットを充填し、効果的に「１」を「０」に変更し、その結果、「１」を消去することができる。したがって、プローブベースのデータ記憶のために活用される物理的メカニズムは、データ書込み動作中に作成されたピット間の最小距離に制限を課す。この最小距離Ｔminは、第２のピットを書き込むことにより材料の変位のために第１のピットを消去しないような書込み動作中に作成された隣接ピット間の最小距離である。基本的なデータ書込み動作の場合、この制限Ｔminは、保管データ・ビット間の最小許容距離につながる。
【０００４】
プローブベースの記憶装置において新しいデータによる古いデータの上書きが企図される場合、データ記憶に使用するメカニズムの結果として、所与の困難が発生する。たとえば、ゼロはあるビット位置での「ピットなし（no pit）」に対応するので、あるビット位置でゼロを書き込むことはアクションなし（no action）に対応する。このため、あるビット位置で前に書き込まれた「１」の上にゼロを「書き込む」と、その「１」をそのままにしておくことになり、新たに書き込まれたデータを間違ったものにすることになる。このような諸問題のため、２００２年５月１３日に出願された我々の同時係属欧州特許出願第０２０１０６４８．０号以前のプローブベースのデータ記憶は、「クリーン」な記憶表面、すなわち、その上にデータが前に書き込まれていないかまたはそこから古いデータが消去されている表面上にデータを書き込むことを当てにしていた。たとえば、前に述べたＭｉｌｌｉｐｅｄｅ装置の場合、記憶表面を加熱してポリマーの溶融および「リフロー（reflow）」を引き起こすことによって、古いデータを消去することができる。しかし、古いデータの消去は明らかに電力および時間のかかるプロセスである。上記で参照した我々の欧州特許出願では、プローブベースの記憶装置において新しいデータによる古いデータの直接上書きを可能にするシステムが開示されている。このシステムは効果的に２段階コーディング・プロセスを含む。第１の段階では、コード化入力データ内の所与の値「ｘ」の２つの連続ビットの発生を防止するように入力データがコード化される。たとえば、ｘ＝１である場合、このコーディングは、コード化入力データ内の連続する「１」が少なくとも「ｄ」個のゼロによって分離されることを保証し、ｄは≧１の所定の数である。このコーディングの効果は、書込み動作後に記憶表面に残される連続するピットがいつでも少なくとも１つの「ピットなし」によって分離されることを保証することである。したがって、このコーディングは、上記で説明した通り、最小ビット間隔がＴminに抑制される未コード化ケース以上に保管ビット密度を増加することができる。第２のコーディング段階では、アルゴリズムを使用して、コード化入力ビット・シーケンスから上書きビット・シーケンスを生成する。単純に言えば、ここで使用するアルゴリズムは、ピットの書込みにより上記で述べた材料の変位のために新しいピットのいずれかの側の既存の隣接ピットを消去することができるという前提に基づくものである。結果として生じる上書きビット・シーケンスが記憶表面に書き込まれると、その効果は、特定のオペレーティング・パラメータに応じて、元のコード化入力ビット・シーケンスまたはこのビット・シーケンスの補数を記録することである。この結果は上書きされた古いデータのビット値とは無関係であり、このため、古いデータの消去は不要である。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
プローブベースの記憶装置におけるデータ書込み動作の電力消費は、記憶表面に形成されるピットの数に直接関連する。上記で概略を述べた上書きシステムの基礎をなす原理によれば、所与のコード化入力ビット・シーケンスから生成された上書きシーケンスを書き込むことは必然的に、コード化入力ビット・シーケンスを直接書き込むことより多くのピットを書き込むことを伴うことになる（後者の動作は当然のことながら、古いデータの上書きを可能にするものではないであろう）。したがって、上書き動作は、クリーンな記憶表面上の従来の書込み動作に比べ、所与の入力データの場合に、より多くの電力を必要とする。電力消費はいつでも重要な考慮事項であり、したがって、直接上書き機能が提供される場合、より顕著な要因になる。本発明では、上記で参照した我々の欧州特許出願に開示されている方法に比べ、低減された電力消費で直接上書きを達成することができる。
【課題を解決するための手段】
【０００６】
本発明の一態様によれば、プローブベースのデータ記憶装置内のデータを上書きするための方法が提供され、データはその装置のプローブによって記憶表面に形成されたピットの有無によって表される。この方法は、
コード化入力データ内の値ｘの連続するビットが値
【数１】
2005531097.tif 000003
（以降ｘバーと記載する）
の少なくともｄ個のビットによって分離されるように入力データをコーディングするステップであって、ｄが≧２の所定の数であるステップと、
コード化入力データ・ビットをエンコードすることにより上書きデータ・ビットを生成するステップであって、１つのピットがデータ記憶装置内の値ｐの１つのビットを表す場合に、
（ａ）コード化入力データ内の値ｘの任意のビットが値ｐの上書きデータ・ビットとしてエンコードされ、
（ｂ）コード化入力データ内の値ｘバーのＬ≦２ｄ個のビットの任意の有界連続（bounded run）が値
【数２】
2005531097.tif 000004
（以降ｐバーと記載する）
のＬ個の上書きデータ・ビットの連続（run）としてエンコードされ、
（ｃ）コード化入力データ内の値ｘバーのＬ＞２ｄ個のビットの任意の有界連続が、値ｐのｎ個のビットと値ｐバーの（Ｌ−ｎ）個のビットからなるＬ個の上書きデータ・ビットの連続としてエンコードされ、ｎ＝ＣＥＩＬ［（Ｌ−２ｄ）／ｄ］であり、ｎ個のビットが
（ｃ１）連続の末尾からｄ個のビットの範囲内に値ｐの１つのビットが存在し、
（ｃ２）連続の先頭から２ｄ＋１個のビットの範囲内に値ｐの１つのビットが存在し、
（ｃ３）ｎ＞１の場合に、ｎ個のビットのそれぞれがｎ個のビットのうちのもう１つのビットからｄ個のビットの範囲内に存在する
ように連続内に配置されるようになっているステップと、
値ｐの１つの上書きデータ・ビットを書き込むことによりその上書きデータ・ビットからｄ個のビットの範囲内にある値ｐの１つの既存ビットを消去できるようなビット間隔（bit spacing）で上書きデータ・ビットで記憶表面上のデータを上書きするステップと、
を有する。
【０００７】
したがって、本発明を実施する上書き方法では、装置内に保管すべき入力データはまず、コード化入力データ内の特定の値ｘ（種々の実施形態では０または１になる可能性がある）の連続するビットが補数値（complementary value）ｘバー（記号￣（以降バーと記載する）はこの場合および全体を通してビット反転（bit inversion）を意味する）の少なくともｄ個のビットによって分離されることを保証するようにコーディングされる。このコーディング・プロセスにおける所定の数ｄは≧２である。次に、上書きビット・シーケンスは、３つの条件（ａ）、（ｂ）、（ｃ）を満足するエンコード・プロセスによりコード化入力ビット・シーケンスから生成される。条件（ａ）は、コード化入力データ内の値ｘの任意のビットが値ｐの上書きデータ・ビットとしてエンコードされることを要求するものであり、ｐはデータ記憶装置内の１つのピットによって表されるビット値である。すなわち、ｐはデータ記憶装置内の１つのピットとして書き込まれるビット値であり、したがって、ビット値ｐバーは「ピットなし」に対応し、ｐは当然のことながら種々の実施形態では０または１にすることができる。条件（ｂ）は、コード化入力データ内の値ｘバーのすべてである長さＬ≦２ｄのビットの有界連続に関するエンコードを指定するものであり、本明細書で使用する「有界連続」は補数値の１つのビットによって両側に境界が示される所与の値の複数ビットの連続である。たとえば、Ｌ個のゼロの有界連続は直前に「１」が付き、直後に「１」が付く。条件（ｂ）によれば、コード化入力データ内の値ｘバーのＬ個のビットからなる任意の有界連続は、Ｌ≦２ｄである場合に、値ｐバーのＬ個の上書きデータ・ビットの連続としてエンコードされる。条件（ｃ）は、コード化入力データ内の値ｘバーのすべてである長さＬ＞２ｄのビットの有界連続に関するエンコードを指定するものである。このようなＬビット連続のそれぞれは、値ｐのｎ個のビットと値ｐバーの（Ｌ−ｎ）個のビットからなるＬ個の上書きデータ・ビットの連続としてエンコードされ、ｎ＝ＣＥＩＬ［（Ｌ−２ｄ）／ｄ］である。（既知の関数ＣＥＩＬ（ｙ）は、ｙより大きいかまたはｙに等しい整数のうち、最小のものを表す。）値ｐのｎ個のビットは、上記で指定された３つの副条件（ｃ１）、（ｃ２）、（ｃ３）のすべてが満足されるようなＬビット連続内に配置される。次に、このエンコード・プロセスにより生成される上書きビット・シーケンスは、記憶表面上で既存の前に書き込まれたデータの上に書き込むことができる。この上書き動作のためのビット間隔は、値ｐの１つの上書きビットを書き込むこと（すなわち、記憶表面上に１つのピットを書き込むこと）によりその上書きビットからｄ個のビットの範囲内にある値ｐの１つの既存ビットを消去することができるように設定される。このビット間隔条件については以下により詳細に説明する。
【０００８】
記憶表面上に上書きビット・シーケンスを書き込んだ結果は、値ｐと値ｘとの関係に左右される。ｐ＝ｘである場合、記憶表面上に記録されたビット・シーケンスは元のコード化入力データになる。ｐ＝ｘバーである代替ケースでは、記録されたビット・シーケンスはコード化入力データの補数（すなわち、ビット反転）になる。これについては以下に立証するが、いずれのケースも、その結果は上書きされる古いデータのビット値とは無関係であることが分かるであろう。したがって、古いデータを消去する必要性は回避される。その上、上記で参照した我々の以前の特許出願に開示されている方法に比べ、大幅に低減された電力で直接上書きが達成される。実際に、本発明を実施する特定の方法は、最小電力消費で直接上書きが達成される最適上書き動作を提供する。このような電力上の利点については以下により詳細に説明する。
【０００９】
本発明は、ｄ≧２の場合に、このｄという制約（constraint）によって許可される表面ビット密度の高さを利用すると、上記で参照した我々の以前の特許出願の方法が必要とするより少ないピットを記憶表面に書き込むことにより直接上書きを達成することができるという認識に基づいて予測される。特に、ｄ≧２という制約は、１つのピットを書き込むことにより±ｄ個のビット位置内の１つの既存ピットを消去することができるような上書きシーケンスの書込みのためのビット間隔を可能にする。本発明を実施する方法は、この効果を活用する上書きビット・シーケンスを生成し、より少ないピットを記憶表面に書き込むことにより直接上書きを達成することができる。
【００１０】
値ｘの１つのビットで開始し終了するコード化入力データ・シーケンスの場合、上記の条件（ａ）〜（ｃ）は、コード化入力データ・シーケンス全体をエンコードするために十分なものである。このようなケースでは、結果として生じる上書きデータ・シーケンスは、上書きシーケンスが上書き動作に必要な値ｐの最小可能数のビットを含むという意味で最適なものになる。値ｐのビットは記憶表面上のピットとして書き込まれるので、これは最小数のピットにつながり、このため、上書き動作用の最小電力消費につながる。当然のことながら、一般に、コード化ビット・シーケンスは、値ｘバーの複数ビットの連続で開始および／または終了することができるであろう。このような連続は、上書きシーケンスに様々にエンコードすることができ、残りのビット・シーケンスは直前に記載したように最適にエンコードされるので、全体的な電力消費に対する影響は比較的小さくなるであろう。しかし、好ましい諸実施形態では、このような開始および／または終了連続は以下のように最適にエンコードすることができる。まず上書き動作のためのコード化入力データの先頭の値ｘバーのＬ個のビットの連続を考慮すると、これは、
Ｌ≦ｄの場合に、その連続を値ｐバーのＬ個の上書きデータ・ビットの連続としてエンコードし、
Ｌ＞ｄの場合に、その連続を値ｐのｍ個のビットと値ｐバーの（Ｌ−ｍ）個のビットからなるＬ個の上書きデータ・ビットの連続としてエンコードし、ｍ＝ＣＥＩＬ［（Ｌ−ｄ）／ｄ］であり、ｍ個のビットが
（１）連続の末尾からｄ個のビットの範囲内に値ｐの１つのビットが存在し、
（２）連続の先頭からｄ＋１個のビットの範囲内に値ｐの１つのビットが存在し、
（３）ｍ＞１の場合に、ｍ個のビットのそれぞれがｍ個のビットのうちのもう１つのビットからｄ個のビットの範囲内に存在する
ように連続内に配置されることにより、
最適にエンコードすることができる。
上書き動作のためのコード化入力データの末尾の値ｘバーのＬ個のビットの連続の場合、これは、
Ｌ≦ｄの場合に、その連続を値ｐバーのＬ個の上書きデータ・ビットの連続としてエンコードし、
ｄ＜Ｌ≦２ｄの場合に、その連続を値ｐの１つのビットで終端する値ｐバーのＬ個のビットからなる（Ｌ＋１）個の上書きデータ・ビットの連続としてエンコードし、
Ｌ＞２ｄの場合に、その連続を値ｐの１つのビットで終端する上記の条件（ｃ）で定義されたＬ個の上書きデータ・ビットの連続からなる（Ｌ＋１）個の上書きデータ・ビットの連続としてエンコードすることにより、
最適にエンコードすることができる。
したがって、コード化入力データの末尾の値ｘバーのＬ＞ｄ個のビットの連続は（Ｌ＋１）個の上書きビットの連続としてエンコードされ、その結果、上書きシーケンスの末尾に１つの余分なビットが発生する。この余分なビットは、正しい記録ビット・パターン（recorded bit pattern）を与えるために必要であるが、以下に説明する通り、後続のデータ読出し時に無視することができる。書込み動作のためのコード化入力データの先頭および末尾の値ｘバーの複数ビットの連続に関するこれらの追加のエンコード条件を適用することにより、上書きビット・シーケンス全体は値ｐの最小可能数のビットを含むことになり、このため、上書き動作において最小電力消費を必要とすることになるという点で、上書きビット・シーケンス全体は最適なものになる。
【００１１】
一般に、ｄ≧２という制約を課す任意のコーディング方式は入力データの初期コーディングに使用することができるが、本発明の好ましい諸実施形態では、ＲＬＬ（ランレングス制限（Run-Length Limited））の（ｄ，ｋ）という制約コードの原理に基づくコードを使用する。従来、このようなコードでは、（ｄ，ｋ）という制約は、コード化ビット・シーケンス内の連続する１が少なくとも「ｄ」個のゼロおよび多くても「ｋ」個のゼロによって分離され、ｋ＞ｄであることを意味する。しかし、上記で説明した通り、本発明の種々の実施形態では、初期入力データ・コーディングは、コード化入力データ内の２つの連続「１」（ｘ＝１）または２つの連続「０」（ｘ＝０）を禁止することができる。したがって、「ｄ」および「ｋ」は従来、ゼロの数を表すが、本発明のいくつかの実施形態では、これらの制約をゼロ同士の間に許される「１」の数に適用することができる。
【００１２】
本発明の第２の態様は、プローブベースのデータ記憶装置に保管するためのデータをコーディングするためのコーディング装置を提供し、データはその装置のプローブによって記憶表面に形成されたピットの有無によって表される。この装置は、
コード化入力データ内の値ｘの連続するビットが値ｘバーの少なくともｄ個のビットによって分離されるように装置に保管すべき入力データをコーディングするためのコーダ（coder）であって、ｄが≧２の所定の数であるコーダと、
コード化入力データ・ビットをエンコードすることにより上書きデータ・ビットを生成するための上書きパターン生成器（overwrite pattern generator）であって、
（ａ）コード化入力データ内の値ｘの任意のビットが値ｘの上書きデータ・ビットとしてエンコードされ、
（ｂ）コード化入力データ内の値ｘバーのＬ≦２ｄ個のビットの任意の有界連続が値ｘバーのＬ個の上書きデータ・ビットの連続としてエンコードされ、
（ｃ）コード化入力データ内の値ｘバーのＬ＞２ｄ個のビットの任意の有界連続が、値ｘのｎ個のビットと値ｘバーの（Ｌ−ｎ）個のビットからなるＬ個の上書きデータ・ビットの連続としてエンコードされ、ｎ＝ＣＥＩＬ［（Ｌ−２ｄ）／ｄ］であり、ｎ個のビットが
（ｃ１）連続の末尾からｄ個のビットの範囲内に値ｘの１つのビットが存在し、
（ｃ２）連続の先頭から２ｄ＋１個のビットの範囲内に値ｘの１つのビットが存在し、
（ｃ３）ｎ＞１の場合に、ｎ個のビットのそれぞれがｎ個のビットのうちのもう１つのビットからｄ個のビットの範囲内に存在する
ように連続内に配置されるようになっている上書きパターン生成器と、
を有する。
【００１３】
同様に、本発明の第３の態様は、プローブベースのデータ記憶装置に保管するためのデータをコーディングするためのコーディング装置を提供し、データはその装置のプローブによって記憶表面に形成されたピットの有無によって表され、この装置は、
コード化入力データ内の値ｘの連続するビットが値ｘバーの少なくともｄ個のビットによって分離されるように装置に保管すべき入力データをコーディングするためのコーダであって、ｄが≧２の所定の数であるコーダと、
コード化入力データ・ビットをエンコードすることにより上書きデータ・ビットを生成するための上書きパターン生成器であって、
（ａ）コード化入力データ内の値ｘの任意のビットが値ｘバーの上書きデータ・ビットとしてエンコードされ、
（ｂ）コード化入力データ内の値ｘバーのＬ≦２ｄ個のビットの任意の有界連続が値ｘのＬ個の上書きデータ・ビットの連続としてエンコードされ、
（ｃ）コード化入力データ内の値ｘバーのＬ＞２ｄ個のビットの任意の有界連続が、値ｘバーのｎ個のビットと値ｘの（Ｌ−ｎ）個のビットからなるＬ個の上書きデータ・ビットの連続としてエンコードされ、ｎ＝ＣＥＩＬ［（Ｌ−２ｄ）／ｄ］であり、ｎ個のビットが
（ｃ１）連続の末尾からｄ個のビットの範囲内に値ｘバーの１つのビットが存在し、
（ｃ２）連続の先頭から２ｄ＋１個のビットの範囲内に値ｘバーの１つのビットが存在し、
（ｃ３）ｎ＞１の場合に、ｎ個のビットのそれぞれがｎ個のビットのうちのもう１つのビットからｄ個のビットの範囲内に存在する
ように連続内に配置されるようになっている上書きパターン生成器と、
を有する。
【００１４】
したがって、本発明の第２および第３の態様を実施するコーディング装置は、前に書き込まれたデータを上書きする際に使用するためのデータ記憶装置のプローブ・メカニズムに供給することができる上書きデータ・シーケンスを生成する。所与の入力データ・シーケンスの場合、本発明の第２の態様を実施するコーディング装置は、本発明の第３の態様を実施する装置によって生成された上書きシーケンスの補数である上書きシーケンスを生成する。本発明の第２の態様を実施するコーディング装置は、値ｘの１つのビットが１つのピットとして書き込まれる（ｐ＝ｘ）プローブベースの記憶装置とともに使用するために特に適している。本発明の第３の態様を実施するコーディング装置は、値ｘバーの１つのビットが１つのピットとして書き込まれる（ｐ＝ｘバー）プローブベースの記憶装置とともに使用するために特に適している。いずれのケースでも、装置によって生成される上書きビット・シーケンスは、記憶表面上に書き込むべきデータとしてプローブ・メカニズムに直接供給することができる。しかし、いずれのタイプのコーディング装置も、単に記憶装置内の上書きシーケンスを反転して（すなわち、その補数を取って）記憶表面上に書き込むべき最終書込みシーケンスを得ることにより、反対のタイプのプローブベースの記憶装置（すなわち、１つのピットが直前に指定したものに対する補数値の１つのビットを表す）とともに使用することができるであろう。
【００１５】
また、本発明は、プローブベースのデータ記憶装置内のデータの記憶および回復のための方法も提供し、データは上記の方法によって記憶表面上に保管され、記憶表面から読み取られたデータは、特定のケースにおける値ｐと値ｘとの関係に応じて２通りの方法のうちの一方によってデコードされる。ｐ＝ｘである場合、元の入力データは、コード化入力データを生成するために最初に入力データに適用されたコーディングの逆（inverse）を実行することによって回復される。しかし、ｐ＝ｘバーである場合、元の入力データは、記憶表面から読み取られたデータの補数を取り、次に初期入力データ・コーディングの逆を実行することによって回復される。本発明は同様に、プローブベースのデータ記憶装置内のデータをコーディングしデコードするための装置を提供し、この装置は、上記のコーディング装置と、記憶表面から読み取られたデータをデコードするためのデコーダ（decoder）とを有し、そのデコーダはコーディング装置のコーダによって実現されたコードの逆を実現するように配置される。この場合も、特定の装置内のｐとｘとの関係に応じて、逆コードを実現する前に、記憶表面から読み取られたデータの補数を取ることが必要である可能性がある。したがって、このステップは、実施形態によってはデコーダ自体によって実行できるであろう。
【００１６】
また、本発明は、上記の方法および装置を使用するプローブベースのデータ記憶装置にも及ぶ。特に、本発明の他の一態様は、
記憶表面と、
データが表面上のビット位置（bitlocation）のピットの有無によって表されるようにその中にピットを形成することにより記憶表面上にデータを保管するためのプローブ・メカニズムと、
コード化入力データ内の値ｘの連続するビットが値ｘバーの少なくともｄ個のビットによって分離されるように装置に保管すべき入力データをコーディングするためのコーダであって、ｄが≧２の所定の数であるコーダと、
コード化入力データ・ビットをエンコードすることにより上書きデータ・ビットを生成するための上書きパターン生成器であって、
（ａ）コード化入力データ内の値ｘの任意のビットが値ｐの上書きデータ・ビットとしてエンコードされ、
（ｂ）コード化入力データ内の値ｘバーのＬ≦２ｄ個のビットの任意の有界連続が値ｐバーのＬ個の上書きデータ・ビットの連続としてエンコードされ、
（ｃ）コード化入力データ内の値ｘバーのＬ＞２ｄ個のビットの任意の有界連続が、値ｐのｎ個のビットと値ｐバーの（Ｌ−ｎ）個のビットからなるＬ個の上書きデータ・ビットの連続としてエンコードされ、ｎ＝ＣＥＩＬ［（Ｌ−２ｄ）／ｄ］であり、ｎ個のビットが
（ｃ１）連続の末尾からｄ個のビットの範囲内に値ｐの１つのビットが存在し、
（ｃ２）連続の先頭から２ｄ＋１個のビットの範囲内に値ｐの１つのビットが存在し、
（ｃ３）ｎ＞１の場合に、ｎ個のビットのそれぞれがｎ個のビットのうちのもう１つのビットからｄ個のビットの範囲内に存在する
ように連続内に配置されるようになっている上書きパターン生成器と、
を有し、
プローブ・メカニズムが、値ｐの１つの上書きデータ・ビットを書き込むことによりその上書きデータ・ビットからｄ個のビットの範囲内にある値ｐの１つの既存ビットを消去できるようなビット間隔で上書きデータ・ビットで記憶表面上のデータを上書きするように使用中に配置される、プローブベースのデータ記憶装置を提供する。
【００１７】
一般に、本発明を実施する方法に関していくつかの特徴を本明細書に記載するが、対応する特徴は本発明を実施する装置で提供することができ、その逆も可能であることを理解されたい。
【００１８】
次に、一例として添付図面に関して本発明の諸実施形態について説明する。
【発明を実施するための最良の形態】
【００１９】
図１は、本発明を実施するプローブベースの記憶装置１を示している。装置１は、この実施形態では、上記で参照した文書に記載されているタイプの関連アレイ・ドライバおよび検出器回路（array driver & detector circuitry）３とともに、Ｍｉｌｌｉｐｅｄｅプローブ記憶アレイ（probe-storage array）２を有するプローブ記憶メカニズム（probe-storage mechanism）を含む。したがって、ドライバ／検出器回路３の制御下でプローブ・アレイ２を使用すると、ポリマー記憶媒体（polymer storage medium）４の表面上でデータの書込みおよび読取りを行うことができる。また、装置１は、一般に５に示されるコーディング／デコード装置（coding/decoding apparatus）も含む。コーディング／デコード装置５のコーディング部分は、データ入力とアレイ・ドライバ／検出器回路３との間に図示の通り接続された（ｄ，ｋ）コーダ６と上書きパターン生成器７から構成される。コーディング／デコード装置５のデコード部分は、ドライバ／検出器回路３とデータ出力との間に接続された（ｄ，ｋ）デコーダ８から構成される。
【００２０】
この装置の動作時には、保管すべき入力データは、ｄ≧２の（ｄ，ｋ）コードを実現する（ｄ，ｋ）コーダ６に供給され、コード化入力データ・ビットｂ0、ｂ1、ｂ2、・・・などを生成する。（ｄ，ｋ）コーダは既知の方法で実現することができ、適用される（ｄ，ｋ）コードは、コード化入力データ内の特定の値ｘの連続するビットがｋ＞ｄの場合に値ｘバーの少なくともｄ個かつ多くてもｋ個のビットによって分離されることを保証する。（ｄ，ｋ）コード化入力データｂ0、ｂ1、ｂ2、・・・は、以下にさらに記載するエンコード方式を実現する上書きパターン生成器７に供給され、上書きビット・シーケンスｖ0、ｖ1、ｖ2、・・・などを生成する。この上書きデータｖ0、ｖ1、ｖ2、・・・は、以下に述べるビット間隔で記憶表面４上に上書きデータを書き込むようにプローブ・アレイ２を駆動するアレイ・ドライバ回路３に出力される。
【００２１】
この実施形態では、記憶表面４に形成されるピットは値「１」の１つのビットを表す（すなわち、ｐ＝１）ものと想定する。したがって、回路３に供給される上書きデータ内の「１」は記憶表面上のピットとして書き込まれ、上書きデータ内の「０」は「ピットなし」に対応する。加えて、（ｄ，ｋ）コーディング・プロセスではｘ＝１であり、したがって、（ｄ，ｋ）という制約がゼロの数に適用され、コード化入力データｂ0、ｂ1、ｂ2、・・・内の連続する１は少なくともｄ個かつ多くてもｋ個のゼロによって分離されるものと想定する。一般に、ｄ≧２という制約を課すコードは本発明を実施する上書き方法の動作を可能にし、ここで使用可能な（ｄ，ｋ）コードの特定の例は上記で参照した我々の以前の欧州特許出願に詳細に示されている二率（two rate）８／１６（２，１０）コードであり、その出願の内容は参照により本明細書に組み込まれる。したがって、この実施形態の動作に関する以下の説明は（２，１０）コードの例に焦点を合わせることになる。
【００２２】
この実施形態の動作時には、ｄ＝２という制約の効果は、書込み動作後に記憶表面に残される連続するピットが少なくとも２つの「ピットなし」によって分離されるということである。このため、表面ビット密度は、図２に概略で示す未コード化データ（uncoded data）の表面ビット密度と比べて、増加することができる。この図は、最小可能間隔Ｔmin（すなわち、第２のピットを書き込むことにより材料の変位のために第１のビットを消去しないような最小距離）で記憶表面４に形成された２つの連続するピットを示している。したがって、「１」同士の隣接がビット・シーケンス内に発生する可能性がある未コード化データの場合、Ｔminは記憶表面上にデータを書き込むための最小可能ビット間隔を表す。しかし、ｄ＝２という制約の場合、連続する「１」は必ず少なくとも２つの「０」によって分離されることになり、したがって、最小ビット間隔は図示した通り、Ｔmin／３に低減される。このビット間隔では、値１の上書きビットを書き込むことにより材料の変位のために新たに書き込まれた上書きビットから±２個のビット位置の範囲内にある前に書き込まれた「１」を消去することになる。記載すべき上書きシステムで活用されるのはこの効果である。したがって、この実施形態において書込み動作に使用されるビット間隔は、「１」を書き込むことにより新たに書き込まれた「１」から±２個のビット位置の範囲内にある前に書き込まれた「１」を消去するようなものである。ただし、このビット間隔はｄ＝２の場合に最小可能ビット間隔である必要はないことに留意されたい。最小ビット間隔は最大データ記憶密度を達成するために理想的に使用されるものであるが、実際には図２に示す距離ＤがＴminより小さいことで十分である。より一般的には、本発明を実施する上書きシステムにおいてｄ≧２の任意の値の場合、上書き動作で使用するビット間隔は、値ｐの１つの上書きデータ・ビットを書き込むことにより新たに書き込まれた上書きビットからｄ個のビットの範囲内にある値ｐの１つの既存ビットを消去できるようなものである。最大データ記憶密度の場合、一般に、Ｔmin／（ｄ＋１）という最小可能ビット間隔を使用することが望ましいであろう。
【００２３】
次に、（２，１０）コードの場合に上書きパターン生成器７で実現することができるエンコード方式について図３〜５に関連して説明する。図３では、表の左側の列は、（２，１０）コードをコーダ６で使用するときにコード化入力データｂi、・・・に現れる可能性のある９つの基本連続パターン（basic run pattern）を示している。これらのパターンのそれぞれは、２≦Ｌ≦１０の場合に「１」で終端するＬ個のゼロの連続から構成される。表の右側の列は、これらのｂiパターンのそれぞれをエンコードするために上書きパターン生成器７が使用することができる上書きパターンｖi、・・・を示している。１〜３の番号が付いたｂiパターンとその後の奇数番号のパターンの場合、上書きパターンは固有のものである。残りのｂiパターンの場合、上書きパターン生成器７で使用可能なｖiパターンから選択することができる。上書きパターン生成器で実現されるエンコード規則によれば、コード化入力データｂi、・・・内の値ｘの１つのビットは必ず値ｐの１つの上書きビットとしてエンコードされ、この実施形態ではｘ＝ｐ＝１である。したがって、この表のｂiパターンの末尾にある「１」は、両方の列内の破線によって線引きされているように、対応するｖiパターンの末尾にある「１」としてエンコードされる。各ｂiパターンの残りの部分はＬ個のゼロの連続であり、これらの連続は、Ｌの値に応じて、２つの条件のうちの１つが満足されるようにエンコードされる。Ｌ≦２ｄである場合、すなわち、このケースではＬ≦４である場合、ｂiパターン内のＬ個のゼロの連続はｖiパターン内のＬ個のゼロの連続としてエンコードされる。したがって、この例では、表内の最初の３つの上書きパターンは対応するｂiパターンと同一である。残りのｂiパターンの場合、Ｌ＞２ｄであり、Ｌ個のゼロの連続は異なる規則に応じてエンコードされる。これらの連続のそれぞれは、ｎ個の「１」と（Ｌ−ｎ）個のゼロからなるＬ個の上書きビットの連続としてエンコードされ、数ｎはｎ＝ＣＥＩＬ［（Ｌ−２ｄ）／ｄ］によって示される。したがって、２ｄ＜Ｌ≦３ｄの場合、ｎ＝１であり、３ｄ＜Ｌ≦４ｄの場合、ｎ＝２であり、以下同様になる。その上、上書きビットの連続内のｎ個の「１」の位置は重要である。表に示されている連続について考察すると、いずれのケースでも、連続の末尾からｄ個のビットの範囲内に１つの「１」が存在し、連続の先頭から２ｄ＋１個のビットの範囲内に１つの「１」が存在し、ｎ＞１である場合には、ｎ個の「１」のそれぞれがｎ個の「１」のうちのもう１つの「１」からｄ個のビットの範囲内にあることが分かる。
【００２４】
図３のｖiパターンは、コード化入力データ・シーケンスにおいて対応するｂiパターンの前に「１」が付く場合に適用され、したがって、ｂiパターン内のＬ個のゼロの連続は有界連続になる。コード化入力データ・シーケンス内の先行ｂiパターンは「１」で終端するので、通常、これが該当することになる。しかし、コード化入力データは、前に「１」が付かない複数個のゼロの連続で開始する場合もあれば、「１」で終端しない複数個のゼロの連続で終了する場合もある。このような開始および終了パターンに関するエンコード条件については以下に説明するが、上書きシステムの動作原理は図３の基本パターンから理解することができるので、まずこれらのパターンについて考察することが有用である。上書きパターン生成器７によって出力されるｖiパターンのビットは、図３の表現の左側のビットから始まって、記憶表面４上に順次書き込まれることになり、古いデータはこのプロセスで上書きすることができる。書込み動作のためのビット間隔は、「１」を書き込むことにより新たに書き込まれた「１」からｄ個のビット、この場合は２つのビットの範囲内にある前に書き込まれた「１」を消去するようなものであることを想起されたい。したがって、図３のｖiパターンの最初の２つのビット位置にある古いデータ内の「１」は先行ｖiパターンの終端の１を書き込むことによって消去されているので、これらのビットは必ずゼロになり得る。また、ｖiパターンの書込みが続くにつれて、上書きされる古いデータ内の任意の「１」がｖiパターン内の複数の「１」のうちの１つによって消去されることになるように、「１」がｖiパターン内に配置されることも分かるであろう。その上、ｖiパターン内に２つ以上の「１」が存在する場合、終端の「１」以外はいずれも、ｖiパターン内の後続の「１」を書き込むことによって消去される。したがって、結果として生じ、記憶表面上に記録されるビット・パターンは適切なｂiパターンになる。
【００２５】
書込み動作のためのコード化入力データ・シーケンスの先頭で可能なｂiパターンは、上書きパターン生成器７で使用可能な対応するｖiパターンとともに図４に示されている。ｂiパターン１および２とその後の偶数番号のパターンの場合、上書きパターンは固有のものであり、残りのｂiパターンの場合、上書きパターン生成器７で使用可能なｖiパターンから選択することができる。ｂiパターンのそれぞれは、１≦Ｌ≦１０の場合に「１」で終端するＬ個のゼロの連続から構成される。コード化入力データ内の「１」は必ず上書きデータ内の「１」としてエンコードされるという一般規則によれば、図中のｂiパターンの末尾にある「１」は、両方の列内の破線によって線引きされているように、対応するｖiパターンの末尾にある「１」としてエンコードされる。各ｂiパターンの残りの部分はＬ個のゼロの連続であり、「１」で終端する先行ｂiパターンがまったく存在しないので、これらの連続は有界連続ではない。これらのＬビット連続は、Ｌの値に応じて、２つの条件のうちの１つが満足されるようにｖiパターンでエンコードされる。Ｌ≦ｄの場合、すなわち、ここではＬ≦２の場合、この連続はｖiパターン内のＬ個のゼロの連続としてエンコードされる。しかし、Ｌ＞ｄの場合の各連続は、ｍ個の「１」と（Ｌ−ｍ）個のゼロからなるＬ個の上書きデータ・ビットの連続としてエンコードされ、ｍ＝ＣＥＩＬ［（Ｌ−ｄ）／ｄ］である。したがって、ｄ＜Ｌ≦２ｄの場合、ｍ＝１であり、２ｄ＜Ｌ≦３ｄの場合、ｍ＝２であり、以下同様になる。加えて、ｖiパターン内のこれらのＬビット連続について考察すると、いずれのケースでも、連続の末尾からｄ個のビットの範囲内に１つの「１」が存在し、連続の先頭からｄ＋１個のビットの範囲内に１つの「１」が存在し、ｍ＞１の場合には、ｍ個のビットのそれぞれがｍ個のビットのうちのもう１つのビットからｄ個のビットの範囲内にあるように、ｍ個のビットが配置されることが分かる。この場合のｂiパターン３〜１０について結果として生じるｖiパターンと図３の同じｂiパターンについて結果として生じるｖiパターンとを比較すると、図４のｖiパターンがそのパターンの先頭からｄ＋１個のビットの範囲内に余分な「１」を１つ含むことが分かる。これは、現行ｖiパターンが上書きデータ・シーケンスの先頭であるので、ｖiパターンの最初の２つのビットによって上書きされた古いデータ内の「１」が先行ｖiパターンによって消去されていないという事実に対処するためである。
【００２６】
書込み動作のためのコード化入力データ・シーケンスが図３のｂiパターン以外のｂiパターンで終了する可能性がある限り、可能な終了パターンは、上書きパターン生成器７で使用可能な対応するｖiパターンとともに図５に示されている。ｂiパターンのそれぞれは、１≦Ｌ≦１０の場合にＬ個のゼロの連続から構成され、この場合も、このケースでは終端の「１」がまったく存在しないので、これらの連続は有界連続ではない。ｖiパターン内のこれらの連続をエンコードするための条件は、この場合もＬの値に左右される。Ｌ≦ｄである場合、すなわち、ここではＬ≦２である場合、この連続はＬ個のゼロの連続としてｖiパターン内でエンコードされる。しかし、図５の連続３〜１０は（Ｌ＞ｄの場合）、それぞれ図３のｂiパターン２〜９とまったく同様にエンコードされる。その結果、図５のｖiパターン３〜１０は、それぞれに対応するｂiパターンに比べ、余分なビットを１つ含む。この余分なビットはそのパターンの末尾の「１」であり、余分なビット自体を除き、結果として生じる記録ビット・パターンが正しいｂiパターンであることを保証するために必要なものである。
【００２７】
図３〜５の表は、（２，１０）コードの場合に上書きパターン生成器７で使用することができ、直接上書きを達成するために必要な最小可能数の「１」を含む、すべての可能なｖiパターンを示している。所与のｂiパターンに関するｖiパターンが固有のものではない場合、同等のｖiパターンのうちの任意の１つを使用することができ、したがって、異なる時期に同じｂiパターンについて異なるｖiパターンが使用される可能性がある。しかし、実現例を簡単にするため、上書きパターン生成器は一般に、所与のｂiパターンを所与のｖiパターンとしてエンコードするよう構成される。したがって、好ましい一実施形態では、上書きパターン生成器７は、図３〜５の各ｂiパターンを、選択できる場合に表内に最初にリストされた対応するｖiパターンとしてエンコードする。これらのｖiパターンは、これらの図に示す通り、単純な繰り返し「０１」シーケンスを含む。動作時にコード化入力データを受け取ると、上書きパターン生成器７は、入力ビット・ストリーム内のそれぞれの連続する「１」の位置を見つけるという点で、ある種の先読みエンコーダ（look-ahead encoder）として動作する。それぞれの「１」は現行ｂiパターンの末尾にマークを付け、これは適切なｖiパターンとしてエンコードされ、次にアレイ・ドライバ３に出力される。書込み動作のためのコード化入力データの末尾に「１」がまったく存在しない場合、上書きパターン生成器は図５からの適切なｖiパターンを最後のｖiパターンとして使用する。実施形態によっては、上書きパターン生成器はソフトウェアで実現することができ、適切なソフトウェアは本明細書の説明から当業者には明らかになるであろう。他の実施形態では、上書きパターン生成器はハードウェアまたはハードウェアとソフトウェアの組合せで、たとえば、ハードワイヤード論理ゲートによるかまたはルックアップ・テーブルとして実現することができる。
【００２８】
図６は、上書きパターン生成器７で使用するｖiパターンが図３〜５に最初にリストされたパターンであるケースについて加工された一例として上書き動作を立証するものである。この図の最上部にあるビット・シーケンスは、上書きすべき古いデータ・パターンを表す。第２のビット・シーケンスは、記録すべき新しいデータ・パターン、すなわち、（ｄ，ｋ）コーダ６によって出力されるコード化入力データｂ0、ｂ1、ｂ2、・・・を表す。第３のビット・シーケンスは、コード化入力データから上書きパターン生成器７によって生成された上書きパターンｖ0、ｖ1、ｖ2、・・・である。この極度に単純化された例では、記録すべきデータはわずか１８個のビットから構成されているが、実際には書込み動作のための１行分のデータは概してかなり長いものになる。この図で上書きシーケンスの下にある１９個のビット・パターンのそれぞれは、上書きシーケンスの連続するビットを書き込んだ後に記憶表面上に記録されたビット・パターンを示している。したがって、これらのうちの最初のものはｖ0が書き込まれた後の記録パターンを示し、２番目のものはｖ1が書き込まれた後の記録パターンを示し、以下同様である。各パターンにおいて新たに書き込まれたビットは太字で示されている。「１」を書き込むことにより書込み位置から±２個のビットの範囲内にある前に書き込まれた「１」を消去することができるので、各書込み動作は潜在的に、同図で破線によって境界が示された領域内の５つの連続ビットの値に影響を及ぼす（書込みシーケンスの先頭および末尾に向かって３つの連続ビットまで減少する）可能性がある。書込み動作が進むにつれて、古いデータは徐々に新しいｂiシーケンスに変換される。上書きシーケンスの末尾にある余分なビットｖ18が書き込まれると、この余分なビットの前に記録された１８ビットのシーケンスが必要なｂiシーケンスであることが分かる。この例から、２つの連続する「１」は（ｄ，ｋ）コードによって禁止されているので、書込み位置の左方向または右方向にある２つの「１」を両方とも消去することは決して必要ではないことに留意されたい。また、既存の「１」の位置に「１」が書き込まれると、この位置の両側にある２つの既存ビットが必然的にゼロになり、したがって、この情況ではいずれのビットも消去する必要はない。
【００２９】
いくつかのケースで必要な余分なビットに関しては、実際には、ある行の先頭および末尾にスペースがあることを保証し、異なるセクタ内のデータ間の干渉を回避するために、記憶媒体上の書込み可能セクタの周りにガード・バンド（guard band）が設けられる。データが記憶媒体からリードバックされると、ガード・バンド内の余分なビットは無視され、ｂiシーケンスが単純に検出器回路３によって（ｄ，ｋ）デコーダ８に供給される。このデコーダは、コーダ６によって実行される（ｄ，ｋ）コードの逆を実現し、それにより、元の入力データが出力データとして回復される。
【００３０】
上記のシステムにより、古いデータを直接上書きすることができ、書込み動作の前にデータを消去する必要性を回避することが分かるであろう。その上、これは、上記で参照した我々の以前の欧州特許出願に開示されている方法より大幅に少ない電力消費で達成される。その出願には、「方法１」および「方法２」として同出願で参照されている２通りの基本的な上書き方法が記載されている。図３の基本的なｂiパターンについてこれらの方法によって生成される上書きパターンは図７の表にリストされている。この表の最後の列は、上記で述べた本発明の単純な実施形態のための上書きパターンをリストしている。これらのパターンを比較すると、新しい技法が、以前の方法よりかなり少ない「１」を含む上書きパターンを提供することが分かる。実際に、新しい上書きパターンは、直接上書きを達成するために必要な最小可能数の「１」を含む。これは、上書き動作における最適電力消費につながる。この場合の電力節約の意義は以下の分析によって立証される。
【００３１】
Ｐwは単一書込み動作（すなわち、上記の例で単一の「１」を書き込むこと）に必要な電力とし、ｐiは前後に「１」が付くｉ個の連続ゼロのランレングス（すなわち、ｉ個のゼロの有界連続）の確率とする。上記で述べた（２，１０）コードを一例として挙げると、図７から、３通りの方法のそれぞれに関する平均電力損は以下の式によって示される。
【数３】
2005531097.tif 000005
【数４】
2005531097.tif 000006
Ｐnew＝Ｐw（ｐ2＋ｐ3＋ｐ4＋２ｐ5＋２ｐ6＋３ｐ7＋３ｐ8＋４ｐ9＋４ｐ10）  （３）
特定の上書き方法に必要な電力は、クリーンな記憶表面上での基本的な書込み動作のための対応する電力と照らし合わせて測定しなければならない。
【数５】
2005531097.tif 000007
であるので、このような基本的な書込み動作に必要な電力は以下の通りである。
【数６】
2005531097.tif 000008
他の方法を超える１つの方法を使用することによる電力損の低減は「電力損低減係数（power dissipation reduction factor）」ｆA,Bによって定量化することができ、この係数は以下の通りである。
【数７】
2005531097.tif 000009
【００３２】
他の方法を超える１つの方法の電力上の利点は、使用する特定のコードのランレングス確率（run-length probability）に左右される。ランレングス確率は、我々の以前の出願に開示されている二率８／１６（２，１０）コード（「コード１」および「コード２」という）について推定されており、図８の表に示されている。これらの確率に基づき、両方のコードに関する様々な方法の電力損は図９の表に示されている。方法１を基準として、３通りの上書き方法の電力損低減係数は図１０の表に示されている。これらの表から、たとえばコード２を使用する場合、方法２は方法１が必要とする電力の７３．２％を必要とし、新しい方法はこの電力のわずか３７．２％しか必要としないことが分かる。クリーンな基板上の単純な書込み動作に比べ、新しい方法は約３９％の電力をさらに必要とするが、方法２は約１７３％の電力をさらに必要とする。したがって、新しい上書きシステムは、以前の上書き方法を超える劇的な電力消費の節約をもたらすものである。
【００３３】
（２，１０）コードに関する上書きシステムの動作について上記で例証してきたが、上書きパターンを生成するための一般的エンコード規則を適用することにより、このシステムは任意のｄ≧２コードでも使用することができる。一例として、図１１は、ｄ＝３コードによる基本的ｂiパターン（図３のものと同等）に関する上書きパターンを示している。これらは当然のことながら、ｋの任意の値について継続することができる。実際に、タイミング回復のためにはｋ制約が望ましいが、理論上は上書き技法の動作のためにｋ制約は必要ではない。加えて、上記の例では値ｘ＝ｐ＝１であるが、このシステムは、前に詳述した汎用規則を使用するｘの任意の値およびｐの任意の値によって適用することができる。一例として、図１２は、ｘ＝０およびｐ＝１である代替一実施形態に関する図３と同等の表を示している。ｘ＝ｐである諸実施形態では、この値が「０」であるか「１」であるかにかかわらず、上書き動作の結果は、上記の例のように記憶表面上にコード化入力データｂ0、ｂ1、ｂ2、・・・を記録することである。しかし、図１２のようにｘ＝ｐバーである場合、上書き動作はコード化入力データの補数、すなわち、
【数８】
2005531097.tif 000010
を記録することになる。これは、図６と同等の例を示すが、ｘ＝０およびｐ＝１であると想定している図１３で立証されている。したがって、ｘ＝ｐバーである諸実施形態では、図１のドライブ回路３とデコーダ８との間にインバータ（inverter）が設けられ、それにより、記憶表面から読み取られたデータの補数を取り、次に逆（ｄ，ｋ）コーディングを実行することにより、このデータがデコードされる。
【００３４】
記憶装置１は上記の特定の実施形態においてＭｉｌｌｉｐｅｄｅプローブ記憶アレイを使用するが、本発明を実施する他のプローブベースの記憶装置では異なるプローブ・メカニズムを使用することができる。その上、本発明の諸実施形態では、我々の以前の出願に記載されている書込みパターン選択を使用することができ、それにより、コントローラは書込みパターンが古いデータを上書きするためのものであるかまたは記憶表面のクリーンな領域に書き込むべきものであるかに応じて、書込みパターンとして上書きデータまたはコード化入力データの一方を選択する。しかし、本発明の諸実施形態は、クリーンな表面上での基本的な書込み動作のものに匹敵するほど上書き電力要件を低減しているので、書込みパターン選択はこの場合、関連性が低くなり、上記の単純なシステムの方が一般に好ましいものになる。当然のことながら、本発明の範囲を逸脱せずに、上記の具体的な諸実施形態に対し多くの他の変更および修正を加えることができる。
【図面の簡単な説明】
【００３５】
【図１】本発明を実施するプローブベースのデータ記憶装置の概略ブロック図である。
【図２】図１の実施形態でｄ＝２コードを使用したときに使用可能な表面ビット密度の増加の原理を示す図である。
【図３】ｄ＝２である場合に図１の上書きパターン生成器で実現可能なエンコード方式を示す表である。
【図４】ｄ＝２である場合に図１の上書きパターン生成器で実現可能なエンコード方式を示す表である。
【図５】ｄ＝２である場合に図１の上書きパターン生成器で実現可能なエンコード方式を示す表である。
【図６】本発明を実施するエンコード方式を使用する図１の装置における上書き動作を示す図である。
【図７】本発明を実施するエンコード方式と上記で参照した我々の以前の欧州特許出願に開示されている２通りのエンコード方式とを比較する表である。
【図８】我々の以前の出願による２通りのエンコード方法に関するランレングス確率を示す表である。
【図９】本発明の一実施形態と我々の以前の出願による２通りのエンコード方法とを比較する表である。
【図１０】本発明の一実施形態と我々の以前の出願による２通りのエンコード方法とを比較する表である。
【図１１】ｄ＝３である場合に図１の上書きパターン生成器で実現可能なエンコード方式を示す表である。
【図１２】ビット値ｘ＝０である場合に代替一実施形態で使用するためのエンコード方式を示す表である。
【図１３】図１２の代替実施形態のための上書き動作を示す図である。
【図１】
2005531097.tif 000011
【図２】
2005531097.tif 000012
【図３】
2005531097.tif 000013
【図４】
2005531097.tif 000014
【図５】
2005531097.tif 000015
【図６】
2005531097.tif 000016
【図７】
2005531097.tif 000017
【図８】
2005531097.tif 000018
【図９】
2005531097.tif 000019
【図１０】
2005531097.tif 000020
【図１１】
2005531097.tif 000021
【図１２】
2005531097.tif 000022
【図１３】
2005531097.tif 000023
【国際調査報告】
2005531097.tif 000024
2005531097.tif 000025
2005531097.tif 000026