(57)【要約】【課題】回転円板形記憶装置において、複数の論理セクタで構成される物理セクタがフォーマットされた記録媒体に対して論理セクタの単位でデータ・ブロックを記録する。【解決手段】バッファ１７にエキストラ・アドレス＃００４、００５、００２６、００２７を確保してホスト装置から転送された記録データ・ブロック（ＬＢＡ１０〜ＬＢＡ２９）を記憶する。記録媒体から物理セクタ単位でデータ・ブロック（ＬＢＡ０８〜ＬＢＡ３１）を再生する。スキップ・リード部２９は、再生したデータ・ブロックから記録データ・ブロックと同一ＬＢＡのデータ・ブロック（ＬＢＡ１０〜ＬＢＡ２９）を破棄して残りのデータ・ブロックをバッファに送る。バッファには、物理セクタに記録する順番にデータ・ブロックが記憶される。【選択図】図３
2007184046.tif 000002
【特許請求の範囲】
【請求項１】
ホスト装置により論理セクタのアドレスが指定され、先頭データ・ブロックと最終データ・ブロックを含む記録データ・ブロックを物理セクタの単位で記録する回転円板形記憶装置であって、
複数の論理セクタで構成された物理セクタがフォーマットされた回転円板形記録媒体と、
前記ホスト装置から転送された前記記録データ・ブロックと、前記先頭データ・ブロックを記録する先頭論理セクタを含む前記物理セクタから再生され前記先頭論理セクタの前に配置された先行論理セクタに記録された先行データ・ブロックを記憶するバッファと、
前記先行データ・ブロックと前記記録データ・ブロックが前記バッファ上で前記物理セクタに記録する順番に並ぶように前記バッファを制御する制御手段と
を有する回転円板形記憶装置。
【請求項２】
前記制御手段が前記先頭データ・ブロックが記憶される前記バッファのアドレスの前にエキストラ・アドレスを確保する請求項１記載の回転円板形記憶装置。
【請求項３】
前記バッファが前記最終データ・ブロックを記録する最終論理セクタを含む物理セクタから再生され、前記最終論理セクタの後に配置された後続論理セクタに記録された後続データ・ブロックを記憶し、前記制御手段が前記先行データ・ブロックと前記記録データ・ブロックと前記後続データ・ブロックが前記バッファ上で前記物理セクタに記憶する順番に並ぶように前記バッファを制御する請求項１記載の回転円板形記憶装置。
【請求項４】
前記制御手段が前記最終データ・ブロックが記憶される前記バッファのアドレスの後にエキストラ・アドレスを確保する請求項３記載の回転円板形記憶装置。
【請求項５】
前記制御手段が前記物理セクタから再生したデータ・ブロックの中から前記記録データ・ブロックのアドレスと同一アドレスのデータ・ブロックを破棄するスキップ・リード部を有する請求項１記載の回転円板形記憶装置。
【請求項６】
前記データ・ブロックが前記物理セクタを構成する論理セクタのデータ・ブロックごとにＥＣＣを備える請求項１記載の回転円板形記憶装置。
【請求項７】
前記バッファが前記データ・ブロックとＣＲＣＣを組にしたデータ・セットを記憶する請求項１記載の回転円板形記憶装置。
【請求項８】
前記バッファが前記記録データ・ブロックが記録される論理セクタを含む物理セクタから再生されたデータ・ブロックを記憶し、前記制御手段は前記バッファに記憶された記録データ・ブロックを前記再生されたデータ・ブロックの中で前記記録データ・ブロックと同一ＬＢＡを有するデータ・ブロックが記憶された前記バッファのアドレスに上書きする請求項１記載の回転円板形記憶装置。
【請求項９】
複数の論理セクタを含む物理セクタがフォーマットされた回転円板形記録媒体を備える記憶装置において、ホスト装置から前記論理セクタのアドレスが指定された、先頭データ・ブロックと最終データ・ブロックを含む記録データ・ブロックを記録する方法であって、
前記ホスト装置からアドレスが指定された論理セクタを含む前記物理セクタからデータ・ブロックを再生して再生データ・ブロックを生成するステップと、
前記先頭データ・ブロックが記録される論理セクタに先行する先行論理セクタに記録された先行データ・ブロックと前記記録データ・ブロックをバッファ内で前記物理セクタに記録する順番に並べるステップと、
前記先行データ・ブロックと前記記録データ・ブロックを前記バッファから読み出して前記回転円板形記憶媒体に記録するステップと
を有する記録方法。
【請求項１０】
前記順番に並べるステップが、前記先頭データ・ブロックが記憶される前記バッファのアドレスの前にエキストラ・アドレスを確保するステップを有する請求項９記載の記録方法。
【請求項１１】
前記順番に並べるステップが、前記先行データ・ブロックと、前記記録データ・ブロックと、前記最終データ・ブロックが記録される論理セクタに続く後続論理セクタに記録された後続データ・ブロックを前記バッファ内で前記物理セクタに記録する順番に並べるステップを含む請求項９記載の記録方法。
【請求項１２】
前記順番に並べるステップが、前記最終データ・ブロックが記憶される前記バッファのアドレスの後にエキストラ・アドレスを確保するステップを有する請求項１１記載の記録方法。
【請求項１３】
前記エキストラ・アドレスに続くアドレスに前記記録データ・ブロックに続いて前記ホスト装置から転送されたデータ・ブロックを記憶するステップを含む請求項１２記載の記録方法。
【請求項１４】
前記再生データ・ブロックを生成するステップが、前記先頭データ・ブロックと前記最終データ・ブロックを記録する物理セクタからだけデータ・ブロックを再生するステップを含む請求項９記載の記録方法。
【請求項１５】
前記順番に並べるステップが、前記再生データ・ブロックの中から前記記録データ・ブロックのアドレスと同一アドレスのデータ・ブロックを破棄するステップを含む請求項９記載の記録方法。
【請求項１６】
前記順番に並べるステップが、前記バッファに記憶された前記記録データ・ブロックを、前記記録データ・ブロックと同一ＬＢＡを有する前記再生データ・ブロックが記憶された前記バッファのアドレスに上書きするステップを有する請求項９記載の記録方法。
【請求項１７】
前記記録するステップが、前記物理セクタの単位ごとにＥＣＣを生成するステップを含む請求項９記載の記録方法。
【請求項１８】
ホスト装置により論理セクタのアドレスが指定されたデータ・ブロックを物理セクタの単位で記録する回転円板形記憶装置であって、
複数の論理セクタで構成された物理セクタがフォーマットされた回転円板形記録媒体と、
前記ホスト装置から転送された記録データ・ブロックと、前記ホスト装置からアドレス指定された論理セクタを含む前記物理セクタから再生された再生データ・ブロックを記憶するバッファと、
前記記録データ・ブロックと前記再生データ・ブロックのアドレスが等しい場合は前記記録データ・ブロックを優先させながら前記記録データ・ブロックと前記再生データ・ブロックを前記バッファから前記物理セクタに記録する順番に読み出す読み出し手段と
を有する回転円板形記憶装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は複数の論理セクタで構成された物理セクタの単位でアクセスする回転円板形記憶装置において、物理セクタの一部の論理セクタにデータを記録する技術に関する。
【背景技術】
【０００２】
回転円板形記憶装置の一例である磁気ディスク装置は、一般に５１２バイトのデータ・ブロックとこれに付随する付帯情報で物理セクタが構成され、物理セクタの単位でデータの読み書きができる直接アクセス記憶装置である。一方、ホスト装置のオペレーティング・システムは、ファイルを複数の論理セクタで構成されたクラスタの単位で管理している。したがって、ホスト装置が磁気ディスク装置にアクセスするときは、論理セクタのアドレスが指定される。
【０００３】
近年磁気ディスク装置は、大きなデータ・ファイルである映像や音声の記録再生装置としても使用されてきており、一層の記憶容量の増大が求められている。磁気ディスク装置では、物理セクタの単位で磁気ディスクにアクセスするために、各物理セクタにユーザ・データを記憶するデータ・ブロックに加えて、プリアンブル、アドレス情報、ＥＣＣ、ポストアンブルといった付帯情報を加えている。これらの付帯情報は、磁気ディスクの記録面におけるユーザ・データの記録領域を狭くし、面積当たりの記録密度を下げる要因になっている。
【０００４】
面積当たりの記録密度を向上させる方法のひとつとして、データ・ブロックの占有面積に対して付帯情報が占有する面積を低減することが考えられる。この場合、データ・ブロック長を５１２バイトより大きい１キロ・バイトあるいは４キロ・バイトといった値にして物理セクタを大きくすることになる。一方、Windows（登録商標）などのオペレーティング・システムは、５１２バイトの論理セクタが複数集合したクラスタの単位でファイルを管理している。したがって、磁気ディスク装置がこれらのオペレーティング・システムが導入された多くのコンピュータ装置にも対応できるためには、５１２バイトの論理セクタの単位で直接アクセスができるようになっている必要がある。
【０００５】
物理セクタのデータ・ブロック長と論理セクタのデータ・ブロック長が一致していれば、ホスト装置から特定の論理セクタに対するライト・コマンドを受け取った磁気ディスク装置は物理セクタの単位でデータを記録することができる。しかし、物理セクタのデータ・ブロック長より論理セクタのデータ・ブロック長が短い場合に、ホスト装置から特定の論理セクタに対するライト・コマンドを受け取った磁気ディスク装置は、直接論理セクタの単位でデータを記録することができない。
【０００６】
特許文献１には、物理的なセクタ長と論理的なセクタ長が異なる磁気ディスク装置に対して、外部入力装置から高速に書き込む方法を開示する。同文献に記載された方式によれば、データ・バッファに記憶されたデータと外部入力装置から転送されたデータからアクセス・データ長を決定して書き込み、回転待ち時間を短縮している。
【０００７】
特許文献２は、受信データが記録される光ディスクの記録領域内にゾーン境界等の不連続領域がある場合は、不連続領域の直前までのデータを１回の記録動作で書き込み、書き込み後のキャッシュ・メモリ内の残存データは上位装置から光ディスクの後続の連続領域への書き込みデータを受信したときにこの受信データとともに光ディスクに記録する技術を開示する。その結果、不連続領域以降のデータは、後で受信するデータと一緒に記録されるため、データを記録する際には光ディスクの回転待ちを極力少なくできるようになっている。
【特許文献１】特開平５−２８９８２１号公報
【特許文献２】特開平１０−１０６１４３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
物理セクタのデータ・ブロック長より論理セクタのデータ・ブロック長が短い場合は、１つの物理セクタの中に複数の論理セクタが含まれることになる。ホスト装置が、すでにデータが記録されている物理セクタの一部の論理セクタに記録されていたデータを更新する場合には、１つの物理セクタの中に更新される論理セクタと更新されないで記録が維持される論理セクタが存在することになる。しかし、磁気ディスク装置は物理セクタの単位でしか磁気ディスクに記録することができないため、記録が維持されるデータ・ブロックを一旦磁気ディスクから読み取って、物理セクタを構成するすべての論理セクタに対するデータ・ブロックを一度に書き込む必要がある。
【０００９】
そこで本発明の目的は、複数の論理セクタで構成される物理セクタでフォーマットされた記録媒体を備え、論理セクタ単位でデータを書き込むことができる回転円板形記憶装置を提供することにある。さらに本発明の目的は、複数の論理セクタで構成される物理セクタでフォーマットされた記録媒体を備え、速い転送速度でデータを書き込むことができる回転円板形記憶装置を提供することにある。さらに本発明の目的は、そのような回転円板形記憶装置におけるデータの記録方法を提供することにある。
【課題を解決するための手段】
【００１０】
本発明は、１つの物理セクタが複数の論理セクタで構成され、物理セクタの単位でアクセスする回転円板形記憶装置において、物理セクタを構成する一部の論理セクタにデータ・ブロックを記録する技術を提供する。記録データ・ブロックは、通常複数のデータ・ブロックで構成され、最初のアドレスを有する先頭データ・ブロックと最後のアドレスを有する最終データ・ブロックで構成される。ただし、本発明は、先頭データ・ブロックと最終データ・ブロックのアドレスが同一となる１個のデータ・ブロックを記録する場合にも有効である。
【００１１】
物理セクタの一部を構成する論理セクタにデータ・ブロックを記録するためには、あらたに記録するデータ・ブロックとそれまで記録されていたデータ・ブロックの中で更新されないデータ・ブロックを一旦物理セクタのフォーマットに並べる必要がある。本発明では、バッファを利用して物理セクタのフォーマットに適合したデータ・ブロックの配列を形成する。
【００１２】
本発明の一の態様では、バッファにホスト装置から転送された記録データ・ブロックを記憶する。さらにバッファは、先頭データ・ブロックを記憶する先頭論理セクタを含む物理セクタから再生され、先頭データ・ブロックが記録される論理セクタの前に配置された先行論理セクタに記録された先行データ・ブロックを記憶する。制御手段は、先行データ・ブロックと記録データ・ブロックがバッファ内で物理セクタに記録される順番に並ぶように制御する。この結果、１つの物理セクタを構成する一部の論理セクタのデータ・ブロックだけが記録または更新されるときに、バッファから順番にデータ・ブロックを読み出して残りのデータ・ブロックと一緒に物理セクタのフォーマットを形成して記録することができる。
【００１３】
記録動作時には、バッファに記録データ・ブロックが再生データ・ブロックより時間的に早いタイミングで記憶されるので、先頭データ・ブロックの前にエキストラ・アドレスを確保しておけば、その後にバッファに記憶される先行データ・ブロックをエキストラ・アドレスに記憶することでバッファには物理セクタに記録する順番にデータ・ブロックを並べることができる。同様に最終データ・ブロックの後にエキストラ・アドレスを確保して、後からバッファに記憶される後続データ・ブロックをエキストラ・アドレスに記録すると、後続データ・ブロックをバッファに記憶する前に他のデータ・ブロックをバッファに記憶しても物理セクタに記録する順番を維持することができる。
【００１４】
物理セクタから再生された再生データ・ブロックには、記録データ・ブロックが記録されるアドレスから再生されたデータ・ブロックも含まれるが、これらのデータ・ブロックは再度書き込みをするための物理セクタのフォーマットには含まれることはない。したがって、スキップ・リード部でそのようなデータ・ブロックを破棄することで不必要なデータ・ブロックをバッファに記憶することがなくなる。また、先頭データ・ブロックの前および最終データ・ブロックの後にエキストラ・アドレスを確保しておけば、スキップ・リード部を通過したデータ・ブロックを記録データ・ブロックが記憶されたバッファに順番に記憶するだけで、バッファ内に物理セクタのフォーマットの順番にデータ・ブロックを配置することができる。バッファ内で物理セクタに記録する順番にデータ・ブロックを配置するためには、記録データ・ブロックと物理セクタのすべての再生データ・ブロックを一旦バッファに記憶し、つぎに、記録データ・ブロックを、再生データ・ブロックの中で記録データ・ブロックと同一ＬＢＡを有するデータ・ブロックが記憶されたバッファのアドレスに上書きすることもできる。
【００１５】
本発明の他の態様では、記録データ・ブロックと、ホスト装置からアドレス指定された論理セクタを含む物理セクタから再生された再生データ・ブロックをバッファに記憶する。そして、記録データ・ブロックと再生データ・ブロックのアドレスが等しい場合は記録データ・ブロックを優先させながら記録データ・ブロックと再生データ・ブロックをバッファから物理セクタに記録する順番に読み出す。この態様では、バッファに記憶するときは、記録データ・ブロックと再生データ・ブロックをバッファに到着した順に記憶し、記録媒体に記録するためにバッファからデータ・ブロックを読み出すときに、物理セクタに記録する順番になるようにアドレスを管理する。
【発明の効果】
【００１６】
本発明により、複数の論理セクタで構成される物理セクタでフォーマットされた記録媒体を備え、論理セクタ単位でデータを書き込むことができる回転円板形記憶装置を提供することができた。さらに本発明により、複数の論理セクタで構成される物理セクタでフォーマットされた記録媒体を備え、速い転送速度でデータを書き込むことができる回転円板形記憶装置を提供することができた。さらに本発明により、そのような回転円板形記憶装置におけるデータの記録方法を提供することができた。
【発明を実施するための最良の形態】
【００１７】
図１は、本発明の実施の形態にかかる磁気ディスク装置１０の概略を示すブロック図で、図２は磁気ディスク３９のフォーマット構造を説明する図である。図２（Ａ）は、物理セクタと論理セクタが一致する一般的なデータ・セクタ５０のフォーマット構造である。データ・セクタ５０は、プリアンブル５１、同期コード（ＳＹＮＣ）５３、データ・ブロック５５、ＣＲＣＣ５７、ＥＣＣ５９、およびポストアンブル６１で構成されている。プリアンブル５１は２０バイトで構成され、ユーザ・データの読み出し前にリード・クロックの位相および周波数をビット単位で同期させるために使用される。ＳＹＮＣ５３は、ＲＬＬ（Run Length Limited）方式のパターンにはない特殊なパターンでデータ・ブロック５５の開始位置を獲得するために使用される。データ・ブロック５５は、ＲＬＬ方式で変調されたユーザ・データを記録する５１２バイトの記憶領域である。
【００１８】
本実施の形態においては、ＣＲＣＣ５７は４バイトのエラー検出コードで、ＥＣＣ５９は５９バイトのエラー訂正コードである。ポストアンブル６１は５バイトで構成され、パーシャル・レスポンス（Partial Response）方式と最尤検出（Maximum Likelihood）方式とを組み合わせたＰＲＭＬと呼ばれる情報再生方式において最尤検出を終了させるために使用される。このように１つのデータ・セクタ５０はデータ・ブロックとその他の附帯情報で構成されており、磁気ディスク装置がアクセスできる物理セクタと論理セクタの単位はデータ・セクタ５０に一致している。本明細書においては、データ・ブロック５５とＣＲＣＣ５７との組をデータ・セットということにする。
【００１９】
図２（Ｂ）は、本実施の形態にかかる磁気ディスク装置１０で採用している磁気ディスク３９のフォーマット構造である。磁気ディスク装置１０は、データ面サーボ方式を採用しており、円環状の１つのデータ・トラック上ではサーボ・データの間に１つまたは複数の物理セクタ８１ｃ、８１ａ、８１ｂが配置される。各物理セクタは、プリアンブル８５ａ、ＳＹＮＣ８６ａ、８個の論理セクタ８８で構成される論理セクタ群８７ａ、ＥＣＣ８８ａ、およびポストアンブル８９ａで構成される。各論理セクタ８８には、磁気ディスク３９の記録面全体に渡って順番に０番から論理ブロック・アドレス（以後、ＬＢＡという。）が割り当てられる。論理セクタ８８には、論理セクタ５０と同じように５１２バイトのデータ・ブロックとＣＲＣＣからなるデータ・セットが記録されるが、論理セクタ８８にはプリアンブルやＳＹＮＣなどの付帯情報がないために、記録または再生のために直接アクセスすることはできない。
【００２０】
各物理セクタを構成する論理セクタには、磁気ヘッドにより再生または記録される順番にＬＢＡが割り当てられている。各物理セクタは８個の論理セクタ８８で構成されているため、各物理セクタにおいて最初にアクセスされる論理セクタのＬＢＡは、０、８、１６・・・と８の倍数となるため、磁気ディスク装置は各物理セクタのアドレスを最初にアクセスされる論理セクタのＬＢＡで特定することができる。複数の論理セクタで構成される物理セクタのフォーマット構造を採用すると、記録または再生のためのアクセスは物理セクタの単位になるが、データ・ブロックのバイト数に対する附帯情報のバイト数の割合を低下させることができ、データの記録密度を向上することができる利点がある。
【００２１】
本明細書においては、物理セクタおよび論理セクタという用語は磁気ディスクのフォーマット構造の意味で使用し、データ・ブロックという用語は各論理セクタに記憶される単位のデータの集合という意味で使用する。ＬＢＡは物理セクタおよび論理セクタに割り当てられた磁気ディスク上でのアドレス番号を示すが、論理セクタに記憶されるデータ・ブロックおよびデータ・セットもそれらが記憶される予定の論理セクタまたは記憶されている論理セクタのＬＢＡで表すことがある。
【００２２】
図１に戻って、磁気ディスク装置１０は、コンピュータや映像記録再生装置などのようなホスト装置１１に接続されている。ホスト装置１１は、オペレーティング・システムが５１２バイトのデータ・ブロックを複数個集合したクラスタの単位でファイルを管理しており、磁気ディスク装置１０に対してクラスタを単位にして記録または再生のアクセスをする。ホスト装置１１は、データ・ブロックを記録するときに、記録する論理セクタのＬＢＡと論理セクタの数を指定して、データ・ブロック群を磁気ディスク装置に転送する。
【００２３】
ホスト・インターフェース回路１３は、ホスト装置１１と磁気ディスク装置１０とのデータ通信を制御するＡＴＡ規格に対応する回路である。ホスト装置１１と磁気ディスク装置１０との間では、ホスト・インターフェース回路１３を通じてデータ、コマンド、および制御情報などの入出力が行われる。ホスト装置１１は、磁気ディスク装置１０にデータを書き込んだり、磁気ディスク装置１０からデータを読み取ったりするときに、ホスト・インターフェース回路１３上に割り当てられたＡＴＡレジスタにアクセスする。
【００２４】
入出力制御部１５は、セクタ・バッファ１７、ＣＲＣ回路１９、およびＥＣＣ回路２５に対するデータの入出力を制御する。さらに入出力制御部１５は、セクタ・バッファ１７に記憶するデータのアドレスをＦＩＦＯ（First-In First-Out）方式で管理する。さらにまた入出力制御部１５は、磁気ディスク３９にデータを記録するときには、付帯情報とデータ・セットからなる物理セクタのフォーマット構造を生成する。セクタ・バッファ１７は８ＭバイトのＳＤＲＡＭである。セクタ・バッファ１７は、磁気ディスク装置１０の内部における処理速度とホスト装置１１に対する転送速度との差を吸収して転送レートを向上させるために、リード・キャッシュやライト・キャッシュ機能を実現する。セクタ・バッファ１７はまた、本実施の形態によるデータ・ブロックの記録方法を実現するために、ホスト装置１１から転送された記録データ・ブロックと磁気ディスク３９から再生された記録が維持されるデータ・ブロックを、物理セクタのフォーマット順に並べるための記憶領域として使用されるがその詳細は後に説明する。
【００２５】
フォーマット部２３は、各物理セクタに付加するプリアンブル、ＳＹＮＣ、ポストアンブルといった付帯情報を生成して入出力制御部１５に送る。ＣＲＣ回路１９は、ホスト・インターフェース回路１３から入出力制御部１５に転送されてきた各データ・ブロックに対して、巡回冗長検査（ＣＲＣ）方式に基づく生成多項式を使用してＣＲＣＣを生成する。本実施の形態においては、ＣＲＣＣは論理セクタの記憶単位に相当する５１２バイトのデータ・ブロックごとに計算され４バイトで構成されている。入出力制御部１５は、５１２バイトのデータ・ブロックと４バイトのＣＲＣＣを組にして１個のデータ・セットを形成し、データ・セットごとにセクタ・バッファ１７の所定のアドレスに記憶するためにセクタ・バッファ１７を制御する。
【００２６】
ＣＲＣ回路１９は、ホスト装置１１にデータ・ブロックを送る前および磁気ディスク３９にデータ・ブロックを書き込む前に、セクタ・バッファ１７から入出力制御部１５に読み出された各データ・セットについて、生成多項式を使用してビット反転エラーの有無を検査する。記録動作時において、ＥＣＣ回路２５は入出力制御部１５がセクタ・バッファ１７から読み出して形成した１つの物理セクタに記録される８個のデータ・セットに対して、リードソロモン方式でＥＣＣ８８ａを生成する。ＥＣＣのバイト数は多いほどエラー訂正能力は向上する。磁気ディスクの物理的な欠陥が１つの物理セクタの全体に渡って発生する蓋然性が低いことを前提にすれば、ＥＣＣ８８ａのバイト数は、従来の論理セクタ５０におけるＥＣＣ５９を８倍したバイト数より少なくしながら実質的なエラー訂正能力を同等に維持することができる。
【００２７】
ＥＣＣ回路２５は、再生動作においてリード・チャネル３１からスキップ・リード部２９に読み出された８個のデータ・セットとＥＣＣの組ごとに、エラー・シンドロームを計算して８個のデータ・セットにビット反転エラーがあるか否かを検査する。ＥＣＣ回路２５は、検出したビット反転エラーが訂正能力の範囲内であれば、データ・セットのビット値を正しい値に訂正する。
【００２８】
スキップ・リード部２９は、本実施の形態にかかるデータ記録の過程において、リード・チャネル３１から送られた８個のデータ・セットから、ＭＰＵユニット２１の指示があるときには、記録データ・ブロックのＬＢＡを有するデータ・セットを破棄して残りのデータ・セットを入出力制御部１５に送る。スキップ・リード部２９の動作は後に詳しく説明する。
【００２９】
リード・チャネル３１は、磁気ディスク３９から図２（Ｂ）の物理セクタ８１ｃ、８１ａ、８１ｂの単位で読み出したデータを処理してスキップ・リード部２９に送る。リード・チャネル３１は、さらに磁気ディスク３９から読み出したサーボ・データを処理してサーボ・コントローラ２７に送る。ライト・チャネル３１は物理セクタ８１ａのようなフォーマット構造のデータを入出力制御部１５から受け取ってこれを処理し、ヘッド機構３７に送る。
【００３０】
ヘッド機構３７は、磁気ヘッド４１と、磁気ヘッドを磁気ディスク３９の所定の位置に位置付けるキャリッジ機構で構成される。ＭＰＵユニット２１は、プロセッサ、ＲＡＭ、ＥＥＰＲＯＭ、およびファームウエアを格納するＲＯＭなどで構成され、磁気ディスク装置１０の記録または再生動作を制御する。ＭＰＵユニット２１は、ホスト装置１１からホスト・インターフェース回路１３のＡＴＡレジスタに書き込まれたコマンドを解釈して磁気ディスク装置１０の動作を制御する。ＭＰＵユニット２１は、ホスト装置１１からライト・コマンドとともに送られたＬＢＡに基づいて、ドライバ回路３５に信号を送り磁気ヘッドを所定のＬＢＡを有する物理セクタに位置づけるようにヘッド機構３７を制御する。ＭＰＵユニット２１は、ホスト装置１１から転送されたデータ・ブロックをセクタ・バッファ１７に記憶するアドレスを計算して、入出力制御部１５に通知する。ＭＰＵユニット２１は、データを記録するために再生した再生データ・セットから記録データ・セットと同一ＬＢＡのデータ・セットを破棄するようにスキップ・リード部２９を制御する。セクタ・バッファ１７のアドレス計算およびスキップ・リード部２９の制御については後に詳しく説明する。
【００３１】
サーボ・コントローラ２７は、リード・チャネル３１から受け取ったサーボ情報を処理してＭＰＵユニット２１に磁気ヘッド４１の位置情報を送る。ＭＰＵユニット２１はサーボ・コントローラ２７から送られた位置情報に基づいて、ヘッド機構３７の操作量に対応する制御信号を生成してドライバ３５に送る。ドライバ３５は、ＭＰＵユニット２１から指示された位置に磁気ヘッド４１を位置付けるための制御電流を生成して、ヘッド機構３７に送る。磁気ディスク装置１０を構成するには、これら以外にも多くの周知の要素が必要であるが、本発明には特に関係がないので説明を省略する。また、図１に示した機能ブロックは例示として示したものであり、これらのいくつかの機能を１つの半導体装置に統合したり分割したりすることは当業者が自由になし得ることである。
【００３２】
つぎに、図３および図４を参照して、磁気ディスク装置１０において、物理セクタを構成する一部の論理セクタにデータを記録する方法を説明する。本発明は、ホスト装置１１からアドレス指定された論理セクタの中に、同一の物理セクタの中でデータを記録する論理セクタとデータを記録しないで記録されていたデータを維持する論理セクタが発生する場合に関係している。そのような物理セクタは、１つのライト・コマンドでＬＢＡが指定された連続する複数の論理セクタの中で先頭の論理セクタを含む物理セクタおよび最後の論理セクタを含む物理セクタまたそのいずれかである可能性がある。
【００３３】
図３は、データ記録時のデータの流れを示す図で、図４は記録動作の手順を示すフローチャートである。図３において、磁気ディスク３９には、図２の物理セクタ８１ａと同じフォーマット構造の物理セクタ１０７、１０８、１０９にデータ・ブロックが記憶されている。物理セクタ１０７、１０８、１０９に対しては、磁気ヘッド４１がアクセスする順番にＬＢＡ０８〜ＬＢＡ３１までの合計２４個の論理セクタが含まれている。ホスト装置１１は、５個の論理セクタで構成されるクラスタでファイルを管理しているものとし、４個のクラスタに相当するＬＢＡ１０〜ＬＢＡ２９の２０個の記録にかかる記録データ・ブロック１０１を磁気ディスク３９に記録するものとする。そして、記録データ・ブロック１０１の中で、最初に記録されるデータ・ブロック（以後、先頭データ・ブロックという）のＬＢＡを１０とし、最後に記録されるデータ・ブロック（以後、最終データ・ブロックという。）のＬＢＡを２９とする。なお、物理セクタにおいて先頭データ・ブロックが記録される論理セクタを先頭論理セクタといい、最終データ・ブロックが記録される論理セクタを最終論理セクタということにする。
【００３４】
ＬＢＡ１０〜ＬＢＡ２９の論理セクタは、物理セクタ１０７から開始して物理セクタ１０９で終了する。物理セクタ１０７において、ＬＢＡ０８、０９の論理セクタには記録データ・ブロック１０１の書き込みがされないのでそれまでに書き込まれているデータを維持する必要がある。物理セクタ１０９のＬＢＡ３０、３１の論理セクタについても同様である。
【００３５】
磁気ディスク装置１０は、物理セクタの単位でしかデータの書き込みをすることができないので、物理セクタ１０７、１０９の論理セクタにデータ・セットを記録するためには、それぞれの物理セクタを構成するすべての論理セクタに対応するデータ・セットを物理セクタのフォーマットに設定して一度に書き込む必要がある。具体的には、物理セクタ１０７において先頭論理セクタ（ＬＢＡ１０）に先行するＬＢＡ０８、ＬＢＡ０９の論理セクタ（以後、先行論理セクタという。）、および物理セクタ１０９において最終論理セクタ（ＬＢＡ２９）に続くＬＢＡ３０、ＬＢＡ３１の論理セクタ（以後、後続論理セクタという。）のデータ・ブロックを一旦磁気ディスク３９から読み出して、記録データ・ブロック１０１とともに物理セクタに記録するためのフォーマットを構成する必要がある。
【００３６】
ここで、本明細書において先行論理セクタおよび後続論理セクタとは、同一の物理セクタに含まれ先頭論理セクタに先行する論理セクタあるいは最終論理セクタに続く論理セクタという意味で使用する。また、先行論理セクタに対応するデータ・ブロックまたはデータ・セットを、適宜先行データ・ブロックまたは先行データ・セットということにし、後続論理セクタについても同様とする。
【００３７】
ブロック２０１では、ホスト装置からライト・コマンドと先頭データ・ブロックのＬＢＡおよびデータ・ブロック１０１の総数が指定され、データ・ブロック１０１がホスト・インターフェース回路１３に送られてくる。ＭＰＵユニット２１は、データ・ブロック１０１を書き込むために磁気ヘッド４１を先頭論理セクタ（ＬＢＡ１０）が含まれる物理セクタ１０７に位置付けるようにヘッド機構３７を制御する。
【００３８】
ブロック２０３においてＭＰＵユニット２０１は、物理セクタ１０７に関して先行論理セクタの数を計算し、物理セクタ１０９に関して後続論理セクタの数を計算して入出力制御部１５に送る。本実施の形態では、物理セクタ１０７において２個の先行論理セクタ（ＬＢＡ０８、ＬＢＡ０９）が発生し、物理セクタ１０９において２個の後続論理セクタ（ＬＢＡ３０、ＬＢＡ３１）が発生する。ここでセクタ・バッファ１７には、アドレス＃００１〜＃００３まではすでにデータ・セットが記憶されており、入出力制御部１５はＦＩＦＯのアルゴリズムに基づいて決定されたつぎに利用するアドレス（以後、ＦＩＦＯアドレスという。）を＃００４として管理しているものとする。
【００３９】
ブロック２０５では、ＭＰＵユニット２１が先行論理セクタの数がゼロか否かを判断し、先行論理セクタの数がゼロの場合はブロック２０７でＦＩＦＯアドレス（＃００４）からセクタ・バッファ１７に記録データ・ブロック１０１に対応するデータ・セットを記憶する。データ・セットは、ＬＢＡ１０〜ＬＢＡ２９の２０個のデータ・ブロックそれぞれに対してＣＲＣ回路１９が生成したＣＲＣＣを含む。先行論理セクタの数が０の場合でも、物理セクタ１０９に後続論理セクタが発生する場合には、当該物理セクタ１０９に記録される論理セクタと維持される論理セクタが発生するので、物理セクタ１０９の８個の論理セクタに記録されたデータ・ブロックを再生して物理セクタ１０９のフォーマットを事前に設定する必要がある。その手順は、ブロック２１７以降において、ブロック２０５において先行論理セクタの数がゼロでない場合の手順の中で説明する。なお、先行論理セクタも後続論理セクタも発生しない場合は、物理セクタの単位で記録データ・ブロックを直接磁気ディスクに記録することができるので、本実施の形態を採用する必要はない。
【００４０】
ブロック２０５で先行論理セクタの数がゼロでない場合は、ブロック２１１に移行して、入出力制御部１５は、ＦＩＦＯアドレス（＃００４）から先行論理セクタの数だけセクタ・バッファ１７にエキストラ・アドレス＃００４、＃００５のアドレス空間を確保して、アドレス＃００６を先頭データ・セット（ＬＢＡ１０）の記憶開始位置であると決定して入出力制御部１５に通知する。入出力制御部１５は、ＦＩＦＯアドレスにエキストラ・アドレスの数を加えたアドレスから記録データ・ブロック１０１から生成した記録データ・セットを記憶する。さらに入出力制御部１５は、ＭＰＵユニット２１からの指示に基づいて、セクタ・バッファ１７に最終論理セクタ（ＬＢＡ２９）に続く後続論理セクタ（ＬＢＡ３０、３１）の数だけ、最終データ・セットが記憶されるアドレス＃０２５のあとにエキストラ・アドレス”０２６、＃０２７のアドレス空間を確保する。したがって、入出力制御部１５はつぎにセクタ・バッファ１７に記憶するデータ・セットが発生した場合にはアドレス＃２８から記憶する。
【００４１】
ブロック２１３では、リード・チャネル３１が記録データ・ブロック（ＬＢＡ１０〜２９）が記録された物理セクタ１０７、１０８、１０９に含まれる論理セクタのデータ・セットをすべて読み出して、再生データ・セットとしてスキップ・リード部２９に送る。再生データ・セットには、８個ごとに１つのＥＣＣが付帯している。リード・チャネル３１から読み出された再生データ・セットは、先行データ・セット１０３（ＬＢＡ０８、０９）、破棄データ・セット１０４（ＬＢＡ１０〜ＬＢＡ２９）、および後続データ・セット１０５（ＬＢＡ３０、３１）の順番にスキップ・リード部２９に入力される。破棄データ・セットは、記録データ・ブロックのＬＢＡを有する論理セクタから読み出されたデータ・セットである。ＥＣＣ回路２５はスキップ・リード部２９に入力された８個の再生データ・セットごとにエラー訂正を行い、ＥＣＣはその後再生データ・セットから除かれる。
【００４２】
ブロック２１５でスキップ・リード部２９は、ＭＰＵユニット２１から指示された破棄データ・セット１０４（ＬＢＡ１０〜２９）を破棄し、先行データ・セット１０３（ＬＢＡ０８、０９）と後続データ・セット１０５（ＬＢＡ３０、３１）を出力する。磁気ディスク装置１０は、物理セクタの単位でデータ・ブロックを再生することができるので、先行データ・セット１０３または後続データ・セット１０５を含まない物理セクタ１０８のデータ・ブロックは必ずしも再生する必要はない。なお、この手順のように記録にかかる物理セクタのデータ・セットを設定するための再生ではない通常の再生動作では、スキップ・リード部２９は入力されたデータ・セットを破棄しないですべて入出力制御部１５に出力する。
【００４３】
ブロック２１７では、入出力制御部１５が、先行データ・セット１０３をセクタ・バッファ１７のエキストラ・アドレス＃０４、＃０５に記憶する。ブロック２１９では入出力制御部１５が、後続データ・セット１０５をセクタ・バッファ１７のエキストラ・アドレス＃０２６、＃０２７に記憶する。この結果、セクタ・バッファ１７には、記録データ・セットと再生データ・セットの一部で構成された記録にかかるデータ・セット（ＬＢＡ０８〜３１）まで物理セクタ１０７、１０８、１０９のフォーマット順に並んだことになる。先行データ・セット１０３と後続データ・セット１０５は、磁気ディスク３９に記録されていたものであり、記録データ・セットはホスト装置１１から転送されたデータ・ブロックから生成されたものである。
【００４４】
ブロック２２１では、入出力制御部１５がセクタ・バッファ１７のアドレス＃００４から＃０２７まで２４個のデータ・セットを読み出して、付帯情報と組み合わせて物理セクタ１０７、１０８、１０９のそれぞれのフォーマットを形成してライト・チャネル３３に送り、記録データ・ブロック１０１の記録が終了する。このときセクタ・バッファ１７からはアドレスの順番にデータ・ブロックを読み出せばよいので、高速のデータ記録を実現できる。また、スキップ・リード部２９を用いることで、磁気ディスクに対する回転待ちをしないで一度のアクセスで再生した再生データ・セット（ＬＢＡ０８〜３１）から、先行データ・セット、記録データ・セット、後続データ・セットの順番に並んだデータ・セットをセクタ・バッファ１７に形成することができる。
【００４５】
つぎに、物理セクタ１０７、１０８、１０９にエキストラ・アドレスを確保しないで図３で説明したデータ・ブロック１０１を物理セクタ１０７〜１０９に記録する方法を図５を参照して説明する。セクタ・バッファ１７にエキストラ・アドレスを確保しない場合は、図５（Ａ）に示すように２０個の記録データ・セットは、セクタ・バッファ１７にＦＩＦＯアドレス（＃００４）からアドレス＃０２３まで記憶される。記録データ・セットのＬＢＡを有する論理セクタが含まれる物理セクタ１０７、１０８、１０９から読み出した２４個の再生データ・セットを、セクタ・バッファ１７のアドレス＃０２４からアドレス＃０４７までに記憶する。あるいは、先行論理セクタまたは後続論理セクタが発生する物理セクタ１０７、１０９のデータ・セットだけを磁気ディスクから読み出してセクタ・バッファ１７の空いているアドレスに記憶してもよい。
【００４６】
物理セクタ１０７、１０８、１０９のフォーマットを形成して磁気ディスク３９にデータ・ブロックを記録するためには、セクタ・バッファ１７から読み出すデータ・セットが、図３で説明したのと同じように、先行データ・セット、記録データ・セット、および後続データ・セットの順番になっている必要がある。その１つの方法においては、入出力制御部１５またはＭＰＵユニット２１が、セクタ・バッファ１７における記録データ・セットのアドレスと、再生データ・セットのアドレスを管理して順番に読み出すことで実現できる。この場合最初に、再生データ・セットの中で、アドレス＃０２４、０２５に記憶された先行データ・セットを読み出し、続いて、アドレス＃０４からアドレス＃０２３までの記録データ・セットを読み出し、最後に再生データ・セットの中でアドレス＃０４６、＃０４７に記憶された後続データ・セットを読み出す。ここでは、記録データ・セットと再生データ・セットでＬＢＡが等しい場合は、記録データ・セットを優先させて読み出すことになる。
【００４７】
他の方法においては、図５（Ｂ）に示すようにセクタ・バッファ１７において、２０個の記録データ・セット（ＬＢＡ１０〜２９）を、同一ＬＢＡの再生データ・セットを記憶しているアドレスに上書きして、セクタ・バッファ１７において論理セクタの順番に先行データ・セット、記録データ・セットおよび後続データ・セットを並べることで実現できる。具体的には、セクタ・バッファ１７のアドレス＃００４から０２３まで記録データ・セットを記憶したあと、記録データ・セットをアドレス＃０２６からアドレス＃０４５まで上書きすることで、先行データ・セット、記録データ・セット、および後続データ・セットの順番でセクタ・バッファ１７に並べることができる。
【００４８】
以上磁気ディスク装置を例にして実施の形態を説明してきたが、本発明は、物理セクタと論理セクタが異なるフォーマット構造を採用する、ＤＶＤ記憶装置、光磁気ディスク装置などの回転円板形記憶装置に適用することができる。これまで本発明について図面に示した特定の実施の形態をもって説明してきたが、本発明は図面に示した実施の形態に限定されるものではなく、本発明の効果を奏する限り、これまで知られたいかなる構成であっても採用することができることはいうまでもないことである。
【図面の簡単な説明】
【００４９】
【図１】本実施の形態にかかる磁気ディスク装置の概略ブロック図である。
【図２】物理セクタと論理セクタのフォーマット構造を説明する図である。
【図３】データ記録時のデータの流れを説明する図である。
【図４】データ記録の手順を説明する図である。
【図５】データ記録の他の方法を説明する図である。
【符号の説明】
【００５０】
５０…データ・セクタ
８１ａ、８１ｂ、８１ｃ…物理セクタ
８７ａ…論理セクタ群
８８…論理セクタ
１０１…記録データ・ブロック
１０３…先行データ・ブロック
１０４…破棄データ・ブロック
１０５…後続データ・ブロック
【図１】
2007184046.tif 000003
【図２】
2007184046.tif 000004
【図３】
2007184046.tif 000005
【図４】
2007184046.tif 000006
【図５】
2007184046.tif 000007