(57)【特許請求の範囲】
【請求項１】
記憶媒体と、上位装置との間でコマンドやデータの送受信を行い前記記憶媒体に対して書き込みまたは読み出し制御を行う制御部とを備えるディスク装置において、
一トラック内のセクタ数の異なる複数のゾーンに前記記憶媒体が分割されており、
前記記憶媒体上に第一のトラック幅を持つ第一のトラック群と第二のトラック幅を持つ第二のトラック群とが存在し、
前記第一のトラック群は隣接するトラック同士で部分的に重ね書きするトラックからなり、前記第二のトラック群はトラック同士で重ね書きしないトラックからなり、
前記ゾーンに前記第一のトラック群と前記第二のトラック群の領域を確保する際に、
前記制御部が、
前記ゾーンに確保すべき前記第一のトラック群と前記第二のトラック群との容量比、もしくは前記第一群のトラック群の容量の第一の初期値と前記第二のトラック群の容量の第二の初期値により、前記ゾーンを前記第一のトラック群用の第一の領域と前記第二のトラック群用の第二の領域に分割するステップ、
連続して前記重ね書きを実施する単位であるバンド単位で、前記第一の領域に前記第一のトラック群を割り当てるステップ、
前記第一の領域内にトラック全体の使用を禁止された欠陥トラックが存在する場合に、前記欠陥トラックにより不足した分の領域を前記第二の領域から前記第一の領域へと振り替えるステップ、
前記第二の領域に前記第二のトラック群を割り当てるステップ
を実行することを特徴とするディスク装置のトラック割り当て方法。
【請求項２】
請求項１に記載のディスク装置のトラック割り当て方法において、前記制御部が、
上位装置の指定する一つもしくは複数の値により、前記容量比もしくは前記第一の初期値と前記第二の初期値を設定するステップ
を実行することを特徴とするディスク装置のトラック割り当て方法。
【請求項３】
請求項１に記載のディスク装置のトラック割り当て方法において、前記制御部が、
前記容量比もしくは前記第一の初期値と前記第二の初期値、および、前記第一の領域に割り当てた前記第一のトラック群の容量と前記第二の領域に割り当てた前記第二のトラック群の容量の比率もしくは前記第一の領域に割り当てた前記第一のトラック群の容量と前記第二の領域に割り当てた前記第二のトラック群の容量、を上位装置から参照可能な前記ディスク装置のシステム領域に格納するステップ
を実行することを特徴とするディスク装置のトラック割り当て方法。
【請求項４】
請求項１に記載のディスク装置のトラック割り当て方法において、前記制御部が、
前記第二の領域に割り当て可能な前記第二のトラック群の容量を算出するステップ、
前記算出した容量が別途定める最低容量を下回る場合に、前記欠陥トラックにより不足した分のトラックを前記第二の領域から前記第一の領域へと振り替えるステップの実行を中止するステップ
を実行することを特徴とするディスク装置のトラック割り当て方法。
【請求項５】
請求項４に記載のディスク装置のトラック割り当て方法において、前記制御部が、
上位装置の指定する値により前記最低容量を設定するステップ
を実行することを特徴とするディスク装置のトラック割り当て方法。
【請求項６】
記憶媒体と、上位装置との間でコマンドやデータの送受信を行い前記記憶媒体に対して書き込みまたは読み出し制御を行う制御部とを備えるディスク装置において、
一トラック内のセクタ数の異なる複数のゾーンに前記記憶媒体が分割されており、
前記記憶媒体上に第一のトラック幅を持つ第一のトラック群と第二のトラック幅を持つ第二のトラック群とが存在し、
前記第一のトラック群は隣接するトラック同士で部分的に重ね書きするトラックからなり、前記第二のトラック群はトラック同士で重ね書きしないトラックからなり、
前記第一のトラック群が別途定める第一のトラック数ごとにグループ分けされており、
前記ゾーンに前記第一のトラック群と前記第二のトラック群の領域を確保する際に、
前記制御部が、
前記ゾーンに確保すべき前記第一のトラック群と前記第二のトラック群との容量比、もしくは前記第一のトラック群の容量の第一の初期値と前記第二のトラック群の容量の第二の初期値により、前記ゾーンを前記第一のトラック群用の第一の領域と前記第二のトラック群用の第二の領域に分割するステップ、
連続して前記重ね書きを実施する単位であるバンド単位で、前記第一の領域に前記第一のトラック群を割り当てるステップ、
前記第一の領域内にトラック全体の使用を禁止された欠陥トラックが存在する場合に、前記欠陥トラック周辺の前記第一のトラック数分の第一のトラック群を確保できない領域に第二のトラック数の前記第二のトラック群を割り当て、前記第二のトラック数分の領域を前記第二の領域から前記第一の領域へと振り替えるステップ、
前記第二の領域に前記第二のトラック群を割り当てるステップ
を実行することを特徴とするディスク装置のトラック割り当て方法。
【請求項７】
請求項６に記載のディスク装置のトラック割り当て方法において、前記制御部が、
上位装置の指定する値により前記第一のトラック数を設定するステップ
を実行することを特徴とするディスク装置のトラック割り当て方法。
【請求項８】
請求項６に記載のディスク装置のトラック割り当て方法において、前記第二のトラック数分の領域を前記第二の領域から前記第一の領域へと振り替える際に、前記欠陥トラック分の領域も前記第二の領域から前記第一の領域へと振り替えること、を特徴とするディスク装置のトラック割り当て方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ディスク装置へのトラック割り当て方法に関し、特にトラック内セクタ数の等しいトラック群であるゾーンの中に複数のトラック幅が存在している方式のディスク装置へのトラック群の割り当て方法に関する。
【背景技術】
【０００２】
ディスク装置の記録密度向上の方法の一つとして、トラック幅とトラック密度の短縮がある。これらを達成するための一つの手段に、ディスク装置の書き込みヘッドと読み出しヘッドの微細化がある。ヘッドの微細化により、トラックをより細い幅で書き込むことが可能になり、トラック幅の短縮によりトラック密度が向上する。書き込みヘッドと読み出しヘッドはアームに固定され、アームはボイスコイルモータにより駆動される。ボイスコイルモータによってアームを動かす構造上、アームの移動には誤差が伴うため、トラックの書き込み時に、書き込み対象トラックの両側にあるトラックに書き込みヘッドがはみ出してデータを破壊する可能性がある。このようなデータ破壊を防止するため、トラック同士の間隔をトラック幅よりも大きくして書き込みマージンを確保している。書き込みマージンは各トラックの両側に一割程度確保してあり、トラック密度の向上を阻害している。ディスク装置ではランダムにセクタに書き込むため各トラックの両側に書き込みマージンが必要になるが、シーケンシャルに書き込むようにすると、書き込みマージンの一方を削除可能になるため、その分だけトラック密度の向上が可能になる。つまり同一の書き込みヘッド、読み出しヘッド、記憶媒体を使っていても、一割程度ディスク装置の容量向上が可能になる。
【０００３】
ディスク装置の通常の書き込み方法ではトラック同士の間隔を書き込みヘッドの幅よりも狭くできないため、書き込みヘッド幅により最短のトラック間隔が決まる。このため書き込みマージンの削除以上にディスク装置の容量向上を達成するには、トラック幅を書き込みヘッド幅よりも縮小する方法が必要になる。このような方法として、米国特許第6,185,063号明細書やWO99/45534では、隣接するトラック同士を部分的に重ね書きすることにより、書き込みヘッド幅よりもトラック幅を短縮することを可能にしている。
【０００４】
さらに米国特許第6,185,063号明細書では、トラックの部分的な重ね書きの方法として、write seldom formatとpaired formatの二種類の方法を提案している。write seldom formatでは、複数のトラックを相互に部分的に重ね書きすることで、任意のトラックを任意の順番で上書き不可能にする代わりにトラック幅の短縮率が向上するのに対し、paired formatでは、隣り合う二つのトラック同士を部分的に重ね書きすることで、任意のトラックを任意の順番で上書き可能にする代わりにトラック幅の短縮率が低下する。
【０００５】
動画や音声など参照用途を主目的としたデータの保存の場合には、動画や音声を記録したファイルのコンテンツ部分は更新の必要がほとんどないのでwrite seldom formatのトラックに保存し、ファイルの管理情報であるメタ情報はファイルを読み出すだけで更新が発生するのでpaired formatのトラックに保存するのが効率的である。
【０００６】
またWO99/45534では、トラック内セクタ数が等しいトラックからなるゾーンがトラックピッチの異なる複数の領域に分割されているディスク装置を提案している。
【０００７】
【特許文献１】WO99/45534
【特許文献２】米国特許第6,185,063号明細書
【発明の開示】
【発明が解決しようとする課題】
【０００８】
トラックの書き込みマージンの一方を削除するのは、トラックの書き込める方向が一方向に限られることを意味する。これはまた、記憶媒体上の領域を複数に分割しておき、それらの領域を一括で書き換える必要があることを意味する。つまり、トラックの書き換え中に停電やホストの暴走などの障碍が発生して書き込み処理が中断すると、書き込みマージンが存在しないため次に書き込み予定のトラックのデータを破壊する可能性がある。WO99/45534に記載の「磁気ディスク装置」では、隣接トラックを部分的に重ね書きする構造上、重ね書きされたデータは消失する。
【０００９】
WO99/45534では、このようなデータ破壊を防止するため、トラックやセクタ単位で追記することにして、論理ブロックアドレス(Logical Block Address, LBA)と物理ブロックアドレス(Physical Block Address, PBA)との対応をアドレス変換表により管理することを提案している。しかしこの方法では、アドレス変換表が巨大になるという問題がある。例えば、容量が100GBのディスク装置でセクタ単位にアドレス変換を管理する場合には、セクタ数が200Mあるため、LBAは28bit幅が必要になりアドレス変換表の一つのエントリは56bitになり、アドレス変換表のサイズが1.4GBになる。このような巨大なアドレス変換表はディスク装置の記憶媒体上に保存することになるため、ディスク装置の容量が低下するばかりでなく、アドレス変換表の検索にも時間がかかるためディスク装置の性能も低下するという問題がある。
【００１０】
このようなデータ更新時のディスク装置の性能劣化を避けるには、上位装置がセクタやトラック単位ではなく隣接トラックを部分的に上書きした複数トラックを一括して更新する手法が有効である。上位装置が一括してデータを更新するには、更新対象のデータサイズが同一容量であるのが望ましい。このようなデータ更新を可能にするトラック構成として、ゾーンにおいて同一トラック数ごとにトラックをグループ分けしてデータ更新単位とし、ゾーンのトラック数をデータ更新単位のトラック数の整数倍にする手法がある。
【００１１】
記憶媒体には、製造時の不良や経年劣化によりデータを読み出せない欠陥セクタが存在する。欠陥セクタは確率的に発生するため、ヘッドの位置決め情報を記録したサーボデータが欠陥セクタとなる場合がある。同一トラック内にサーボデータは複数箇所に記録されるが、この中のいくつかのサーボデータが欠陥セクタである場合などには、トラック全体を欠陥トラックとして使用を禁止する。このため、ゾーンのトラック数がデータ更新単位となるトラック数の整数倍になっていると、欠陥トラックが一つ発生しただけで、データ更新単位のトラック数に満たないトラック群を使用できないという問題がある。このような問題に対応するため、ゾーン内にスペアトラックを用意しておき、欠陥トラックをスペアトラックに交替処理する方法がある。しかし、欠陥トラックがどれだけ発生するかを事前に予測できないのでスペアトラックを多めに用意しなければならないが、未使用のスペアトラックの分だけ実効容量が減るため、隣接トラックを部分的に上書きして容量を増加した効果が低減するという問題がある。
【００１２】
WO99/45534に記載のディスク装置では、ゾーン内に複数のトラックピッチのトラック群が存在する構成を提案しているが、上記問題を解決するためのトラック割り当て方法について開示していない。
【００１３】
本発明の目的は、欠陥トラックに備えたスペアトラックを用意しても、ディスク装置の実効容量を低下させないディスク装置のトラック割り当て方法を提供することである。
【課題を解決するための手段】
【００１４】
前記目的を達成するために、本発明によるディスク装置のトラック割り当て方法は、記憶媒体と、上位装置との間でコマンドやデータの送受信を行い記憶媒体に対して書き込みまたは読み出し制御を行う制御部とを備えるディスク装置において、一トラック内のセクタ数の異なる複数のゾーンに記憶媒体が分割されており、記憶媒体上に第一のトラック幅を持つ第一のトラック群と第二のトラック幅を持つ第二のトラック群とが存在し、ゾーンに第一のトラック群と第二のトラック群の領域を確保する際に、制御部が、ゾーンに確保すべき第一のトラック群と第二のトラック群との容量比、もしくは第一群のトラック群の容量の第一の初期値と第二のトラック群の容量の第二の初期値により、ゾーンを第一のトラック群用の第一の領域と第二のトラック群用の第二の領域に分割するステップ、第一の領域に第一のトラック群を割り当てるステップ、第一の領域内にトラック全体の使用を禁止された欠陥トラックが存在する場合に、欠陥トラックにより不足した分の領域を第二の領域から前記第一の領域へと振り替えるステップ、第二の領域に第二のトラック群を割り当てるステップを実行する。
【００１５】
制御部は、上位装置の指定する一つもしくは複数の値により、容量比、もしくは第一の初期値と第二の初期値を設定する。制御部は、容量比もしくは第一の初期値と第二の初期値、および、第一の領域に割り当てた第一のトラック群の容量と第二の領域に割り当てた第二のトラック群の容量の比率もしくは第一の領域に割り当てた第一のトラック群の容量と第二の領域に割り当てた第二のトラック群の容量、を上位装置から参照可能なディスク装置のシステム領域に格納する。また、制御部は、第二の領域に割り当て可能な第二のトラック群の容量を算出するステップ、算出した容量が別途定める最低容量を下回る場合に、欠陥トラックにより不足した分のトラックを第二の領域から第一の領域へと振り替えるステップの実行を中止するステップを実行する。
【００１６】
また、本発明によるディスク装置のトラック割り当て方法は、記憶媒体と、上位装置との間でコマンドやデータの送受信を行い記憶媒体に対して書き込みまたは読み出し制御を行う制御部とを備えるディスク装置において、一トラック内のセクタ数の異なる複数のゾーンに記憶媒体が分割されており、記憶媒体上に第一のトラック幅を持つ第一のトラック群と第二のトラック幅を持つ第二のトラック群とが存在し、第一のトラック群が別途定める第一のトラック数ごとにグループ分けされており、ゾーンに第一のトラック群と第二のトラック群の領域を確保する際に、制御部が、ゾーンに確保すべき第一のトラック群と第二のトラック群との容量比、もしくは第一のトラック群の容量の第一の初期値と第二のトラック群の容量の第二の初期値により、ゾーンを第一のトラック群用の第一の領域と第二のトラック群用の第二の領域に分割するステップ、第一の領域に第一のトラック群を割り当てるステップ、第一の領域内にトラック全体の使用を禁止された欠陥トラックが存在する場合に、欠陥トラック周辺の第一のトラック数分の第一のトラック群を確保できない領域に第二のトラック数の第二のトラック群を割り当て、第二のトラック数分の領域を第二の領域から第一の領域へと振り替えるステップ、第二の領域に第二のトラック群を割り当てるステップを実行する。
【００１７】
制御部は、上位装置の指定する値により第一のトラック数を設定する。また、第二のトラック数分の領域を第二の領域から第一の領域へと振り替える際に、欠陥トラック分の領域も第二の領域から第一の領域へと振り替える。
【発明の効果】
【００１８】
本発明により、欠陥トラックの交替処理に必要な必要最低限のスペアトラック以外のスペアトラックをデータ記録用のトラックとして再利用することで、ディスク装置の実効容量が向上する。また、記憶媒体の利用率が最も高くなる最密充填方式のトラック配置により、ディスク装置の実効容量が向上する。
【発明を実施するための最良の形態】
【００１９】
発明の実施例について図面を参照して説明する。なお、同一の参照番号は同一の構成要素を示す。隣接トラックを部分的に重ね書きしたトラックをShingled Tracks (ST)、重ね書きしないトラックをTiled Tracks (TT)と記述する。
【実施例１】
【００２０】
本実施例は、ST領域に欠陥トラックがある場合にはスペアトラックもしくはTT領域からST領域に領域を振り替え、残ったスペアトラックもしくはTT領域にTTを割り当てる所に特徴がある。
【００２１】
図１は、隣接トラックを部分的に重ね書きする場合のトラック配置の概念図である。トラック１０１から１０５では書き込みヘッド１２１で書き込んだトラックを部分的に重ね書きし、書き込みヘッド１２１よりも幅の狭い読み出しヘッド１２２で読み出すことで、書き込みヘッド１２１の幅よりもトラック幅１１１を狭くしている。図１ではトラック１０３の書き込み後に、トラック１０４を書き込んでいる。トラック１０４の書き込みによりトラック１０５が消去される。このため、隣接トラックを部分的に重ね書きする場合には、あるトラックに書き込みを開始すると、ある一定範囲のトラックを全て更新する必要がある。このようなトラック群をバンドと呼ぶ。
【００２２】
図２は、複数の連続するトラックからなるバンド構造の概念図である。図２において、２０１はバンド、２０２は二つのバンド間でデータ破壊を防止するためのバンドギャップ、である。図２に示すように、バンドの末尾のトラックのみ幅広にして、バンドギャップ２０２の領域を作ることで隣のバンドのデータ破壊を防止する。
【００２３】
図７は、ディスク装置のブロック図である。フラッシュロム７０１には、ディスク装置の起動に必要なプログラムが格納される。主記憶７０２は、メモリコントローラおよびマイクロプロセッサ７０４の制御用プログラムと制御に必要な各種データの格納に使用する。キャッシュメモリ７０３は、ディスクインタフェース７０６経由で上位装置のディスクコントローラとの間で送受信するデータのキャッシュに使用する。上位装置との通信に用いる通信プロトコルは、ハードディスクコントローラおよびSCSIプロトコルコントローラ７０５のSCSIプロトコルコントローラ部分で処理される。SCSIプロトコルコントローラに送られたコマンドは、メモリコントローラおよびマイクロプロセッサ７０４のマイクロプロセッサ部分により書き込みヘッドおよび読み出しヘッドの駆動命令に変換されて、ハードディスクコントローラおよびSCSIプロトコルコントローラ７０５のハードディスクコントローラ部分に送られる。ハードディスクコントローラは、受信した命令を元にサーボコントローラ７０７とリードライトチャネル７０８とを制御し、記憶媒体へのデータの書き込みまたは読み出しを実行する。アクチュエータアーム７１３の先端に取り付けたヘッド７１１を記憶媒体７１２の読み出し対象のセクタの位置に移動するように、サーボコントローラ７０７がボイスコイルモータ７１４を制御する。ヘッド７１１が読み出し対象のセクタに移動した後で、リードライトチャネル７０８がヘッド７１１に対してデータの送受信を実行する。この時、書き込みであればキャッシュメモリ７０３に保存されたデータを記憶媒体に書き込み、読み出しであれば記憶媒体に保存されたデータをキャッシュメモリ７０３に書き込む。
【００２４】
ディスク装置の電源が投入されると、メモリコントローラおよびマイクロプロセッサ７０４がフラッシュロム７０１から起動用のプログラムを読み出し、メモリコントローラ部分が主記憶７０２、キャッシュメモリ７０３を初期化し、ハードディスクコントローラおよびSCSIプロトコルコントローラ７０５経由でサーボコントローラ７０７とリードライトチャネル７０８を制御して、残りの制御プログラムと制御に必要な各種データをディスク装置の記憶媒体から読み出す。読み出した制御プログラム７２２と各種データ７２１を主記憶７０２上に格納する。これらの制御プログラム７２２には、トラック割り当てプログラムなどがある。データ構造７２１について図５で、制御プログラム７２２の一つについて図４で説明する。
【００２５】
図３は、本発明によるディスク装置のトラック割り当て方法の第一の実施例によるゾーンのトラック配置である。図３において、３００はゾーン、３０１はShingled Tracks(ST)領域、３０２はスペアトラックもしくはTiled Tracks(TT)領域、３０３はST、３０４は欠陥トラック、３０５はTT、３０６はスペアトラックとして使用された領域、３１０は欠陥トラックを間に挟んで作られたバンド、である。
【００２６】
図３(A)はSTとTTの割り当て前、図３(B)はSTとTTの割り当て後の状態を示している。図３(A)に示すように、ゾーン３００にトラックを割り当てる前には、ゾーン３００内のSTとTTの容量比により、ゾーン３００をST領域３０１とスペアトラックもしくはTT領域３０２との二つの領域へと仮に分割している。本実施例では、ST領域３０１内に欠陥トラック３０４があると、スペアトラックもしくはTT領域３０２から必要な領域をST領域３０２へと振り替える。この振り分けにより、スペアトラックとして使用された領域３０６の分だけTT３０５の開始位置がスペアトラックもしくはTT領域３０２の開始位置からゾーンの末尾側に移動する。ST領域の欠陥トラックの周辺は、３１０のように欠陥トラックを含めてバンドを構成するため、欠陥トラック周辺においてトラックの密度が低下する。
【００２７】
STとTTの容量比は、上位装置がディスク装置に対してS.M.A.R.T.コマンドやベンダユニークコマンドにより設定する。上位装置はSTとTTの容量比の他に、STとTTの容量で指定することも可能である。STとTTの容量比での設定は、各ゾーンについて個別の設定や全てのゾーンについて同一の設定などが可能である。STとTTの容量での設定は、各ゾーンについて個別の設定や全てのゾーンについて最低容量のみの設定などが可能である。STの最低容量とTTの最低容量を設定した場合、状況に応じて、それぞれの最低容量の条件を満たす範囲で具体的な容量が決定される。ST領域３０１とスペアトラックもしくはTT領域３０２の仮分割の方法は、これらに限定される訳ではなく、任意の方法を利用できる。
【００２８】
図４、図５により本発明によるディスク装置のトラック割り当て方法の第一の実施例によるトラック割り当て方法について説明する。図４はトラック割り当て方法のフロー図、図５はトラック割り当て管理表である。
【００２９】
図５のトラック割り当て管理表は、STとTTがどのトラックに割り当てられたかを管理する。トラック管理表のエントリは、開始トラック（トラックの開始番号）５０１、終了トラック（トラックの終了番号）５０２、トラック種別５０３とからなる。開始トラック５０１と終了トラック５０２とからなるトラックの範囲でトラック種別５０３を管理することで、トラックごとにトラック種別を管理するよりもトラック管理表のサイズを縮小できる。トラック種別５０３にはSTの場合は０、TTの場合は１を登録する。
【００３０】
図４のトラック割り当て方法は、ゾーン単位でSTとTTを割り当てる。複数のゾーンが存在する場合には、ゾーンの個数だけ図４のトラック割り当て処理を繰返し実行する。ここではゾーン内にSTとTTという二種類のトラック幅がある場合に付いて説明するが、二つより多くのトラック幅が存在する場合にも容易に拡張できる。
【００３１】
トラック割り当ての処理を開始すると、ステップ４０１に進む。ステップ４０１では処理対象のゾーンの先頭にヘッドをシークする。ステップ４０１の終了後、ステップ４１０に進む。ステップ４１０では、処理対象の領域が欠陥トラックであるかを検査する。欠陥トラックであればステップ４２０に進み、そうでなければステップ４２２に進む。ステップ４２０ではスペアトラックもしくはTT領域３０２にST領域に領域を振り替える余裕があるか検査する。例えばゾーン内のTTとして必要な最低容量が別途設定されている場合には、領域をST領域に振り替えることでTTの容量が不足しないか検査する。余裕がある場合にはステップ４２１に進み、余裕がない場合にはステップ４２３に進む。ステップ４２１では、スペアトラックもしくはTT領域からST領域へと領域を振り替える。
【００３２】
ステップ４２３では、割り当て中のバンドを構成するSTを解放し、TT領域へと振り替える。ステップ４２３の終了後、ステップ４２４に進む。ステップ４２４ではステップ４２３で解放した領域の先頭に進む。ステップ４２４の終了後、ステップ４４２に進む。
【００３３】
ステップ４２１では、欠陥トラックと隣接トラックを部分的に上書きできないことにより必要になる余分な領域を、スペアトラックもしくはTT領域３０２からST領域３０１へと振り替える。ステップ４２１の終了後、ステップ４２２に進む。ステップ４２２では、処理対象の領域にSTを割り当てる。ステップ４２２の終了後、ステップ４３０に進む。ステップ４３０では、バンドを構成するのに必要な数のSTを割り当てたかを検査する。必要数のSTの割り当てが完了している場合にはステップ４３１に進み、完了していない場合にはステップ４３２に進む。ステップ４３２では、バンドに必要なSTの割り当てが完了していないので、STのトラック幅の分だけヘッドをシークする。ステップ４３２の終了後、ステップ４１０に戻る。ステップ４３１ではバンドに必要なSTの割り当てが完了しているので、図２のバンドギャップ２０２の分だけヘッドをシークする。ステップ４３１の終了後、ステップ４４１に進む。ステップ４４１では、必要なSTの割り当てを完了したバンドの開始トラックと終了トラックをそれぞれトラック割り当て管理表の開始トラック５０１と終了トラック５０２に登録し、トラック種別５０３にSTを表す０を登録する。ステップ４４１の終了後、ステップ４４０に進む。
【００３４】
ステップ４４０では、処理対象のゾーンに必要なバンド数を確保したかを検査する。確保済の場合にはステップ４４２に進み、確保済みでない場合にはステップ４１０に戻る。ステップ４４２では、処理対象の領域にTTを割り当てる。ステップ４４２の終了後、ステップ４４３に進む。ステップ４４３では、次の領域に移動するためTTのトラック幅だけヘッドをシークする。ステップ４４３の終了後、ステップ４５０に進む。ステップ４５０では、処理対象のゾーンの末尾にヘッドが到達したかを検査する。ゾーン末尾に到達している場合にはステップ４５１に進み、到達していない場合にはステップ４４２に戻る。ステップ４５１では、割り当てたTT群の開始トラックと終了トラックを、ぞれぞれトラック割り当て管理表の開始トラック５０１と終了トラック５０２に登録し、トラック種別５０３にTTを表す１を登録する。ステップ４５１の終了後、トラック割り当て処理を終了する。
【００３５】
図５のトラック割り当て表をディスク装置のシステム領域に格納しておくと、ディスク装置に接続した上位装置はS.M.A.R.T.コマンドやベンダユニークコマンドにより、各ゾーンのSTとTTの容量比や容量を知ることができる。
【００３６】
本実施例ではゾーン内にトラック幅の異なる二種類のトラックがある場合について説明したが、トラック幅の種類は二つに限らない。任意の数のトラック幅の種類の場合に容易に拡張できる。
【実施例２】
【００３７】
第一の実施例ではST領域に欠陥トラックが存在する場合には、３１０のように欠陥トラックを含めてバンドを構成するため、欠陥トラック周辺においてトラック密度が低下する。これに対して本実施例では、欠陥トラックがあって最小面積でバンドを構成できない場合には、その領域に対してSTではなくTTを割り当てる、最密充填方式でSTとTTを配置する所に特徴がある。
【００３８】
図６は、本発明によるディスク装置のトラック割り当て方法の第二の実施例によるゾーンのトラック配置例を示す図である。図６(A)はSTとTTの割り当て前、図６(B)はSTとTTの割り当て後の状態を示している。
【００３９】
図６(A)に示すように、ゾーン３００にトラックを割り当てる前には、ゾーン３００内のSTとTTの容量比により、ゾーン３００をST領域３０１とスペアトラックもしくはTT領域３０２との二つの領域へと仮に分割している。本実施例では、ST領域３０１内に欠陥トラック３０４があり最小面積でバンドを構成できない場合には、ST領域をTT領域に振り替え、TTを割り当てる。全てのバンドを最小面積で構成する最密充填方式のトラック割り当てにより、ゾーン内の実効容量が増加する。例えば、図３(B)に示した第一の実施例によるトラック配置と図６(B)に示した第二の実施例のトラック配置とを比較すると、バンド内に欠陥トラックを含まないことにより図４(B)の方がTTが一本増えている。
【００４０】
図９は、本発明によるディスク装置のトラック割り当て方法の第二の実施例によるゾーンのトラック配置の他の例を示す図である。図９において、９０１はトラックを割り当てられない無効領域、である。
【００４１】
図６に示した例では、３本のST３０３でバンド２０１を構成していたのに対して、図９の例では１２本のST３０３でバンド２０１を構成する。バンド２０１を構成するのに必要なST３０３の本数が増えるほど、欠陥トラック３０４の周辺に割り当てられるTT３０５の本数が増える。図９では、欠陥トラック３０４の周辺に５本のTT３０５を割り当てている。欠陥トラック３０４の周辺の領域にTT３０５割り当てた後に残るTT３０５のトラック幅に満たない領域は、トラックを割り当てられない無効領域９０１となる。つまり、無効領域９０１の幅が常にTT３０５のトラック幅未満となる所に特徴がある。
【００４２】
図８は、本発明によるディスク装置のトラック割り当て方法の第二の実施例によるトラック割り当て方法のフロー図である。図８のトラック割り当て方法は、ゾーン単位でSTとTTを割り当てる。複数のゾーンが存在する場合には、ゾーンの個数だけ図４のトラック割り当て処理を繰返し実行する。ここではゾーン内にSTとTTという二種類のトラック幅がある場合に付いて説明するが、二つより多くのトラック幅が存在する場合にも容易に拡張できる。
【００４３】
トラック割り当て処理を開始すると、ステップ４０１に進む。ステップ４０１の終了後、ステップ８１０に進む。ステップ８１０では、最小面積でバンドを構成可能か、つまりバンドを構成する予定の領域に欠陥トラックが含まれているかどうか、を検査する。欠陥トラックが含まれておらず最小面積でバンドを構成できる場合にはステップ４２２に進んで処理対象の領域にSTを割り当て、最小面積でバンドを構成できない場合にはステップ８１１に進む。
【００４４】
最小面積でバンドを構成可能な場合には、ステップ４２２の終了後、ステップ４３０に進む。ステップ４３０では、バンドを構成する最終トラックかどうかを検査し、最終トラックの場合にはステップ４３１に進み、最終トラックでない場合にはステップ４３２に進む。最終トラックでない場合には、ステップ４３２の終了後、ステップ４２２に戻る。最終トラックの場合には、ステップ４３１の終了後、ステップ４４１に進み、ステップ４４１の終了後ステップ４４０に進む。ステップ４４０では処理対象のゾーンに必要なバンド数を確保したかを検査する。確保済みの場合には、ステップ４４２に進み、確保済みでない場合にはステップ８１０に戻る。
【００４５】
最小面積でバンドを構成不可能な場合には、ステップ８１１で処理対象の領域をST領域からTT領域へと振り替える。ステップ８１１により最小面積でバンドを構成できないST領域内の一部領域をTT領域へと振り替えることで、STの代わりにTTを配置可能になる。欠陥トラックをまたいでバンドを構成しないので、バンドの最終トラックを除いたバンド内の全てのトラックが隣接トラックと部分的に重ね書きされ、領域の利用効率が上がり、ディスク装置の実効容量が向上する。ステップ８１１の終了後、ステップ４４２に進んでTTを割り当て、ステップ４４２の終了後、ステップ４４３に進み、ステップ４４３の終了後、ステップ８２０に進む。ステップ８２０ではステップ８１１でST領域からTT領域へと振り替えたTT領域の末尾に到達したかを検査する。TT領域の末尾に到達した場合にはステップ４５１に進み、到達していない場合にはステップ４４２に戻る。ステップ４５１の終了後、ステップ４２２に戻る。
【００４６】
ステップ４４０で必要なバンド数を確保済みの場合には、ステップ４４２に進み、ステップ４４２に終了後、ステップ４４３に進み、ステップ４４３の終了後、ステップ４５０に進む。ステップ４５０では、処理対象のゾーンの末尾にヘッドが到達したかを検査する。ゾーン末尾に到達している場合にはステップ４５１に進み、到達していない場合にはステップ４４２に戻る。ステップ４５１の終了後、トラック割り当て処理を終了する。
【００４７】
AV用途やバックアップ用途などでは、大規模なデータを一括して書き込むとともに大容量が必要であるため、不要なスペアトラックを通常のデータトラックとして再利用可能にするとともにディスク装置の実効容量を向上できる本発明の有用性が高い。
【図面の簡単な説明】
【００４８】
【図１】隣接トラックを部分的に重ね書きする場合のトラック配置の概念図。
【図２】複数の連続するトラックからなるバンド構造の概念図。
【図３】本発明によるディスク装置のトラック割り当て方法の第一の実施例によるゾーンのトラック配置図。
【図４】本発明によるディスク装置のトラック割り当て方法の第一の実施例によるトラック割り当て方法のフロー図。
【図５】トラック割り当て管理表を示す図。
【図６】本発明によるディスク装置のトラック割り当て方法の第二の実施例によるゾーンのトラック配置図。
【図７】ディスク装置のブロック図。
【図８】本発明によるディスク装置のトラック割り当て方法の第二の実施例によるトラック割り当て方法のフロー図。
【図９】本発明によるディスク装置のトラック割り当て方法の第二の実施例によるゾーンのトラック配置図。
【符号の説明】
【００４９】
１０１ トラック
１０２ トラック
１０３ トラック
１０４ トラック
１０５ トラック
１１１ トラック幅
１２１ 書き込みヘッド
１２２ 読み出しヘッド
２０１ バンド
２０２ 二つのバンド間でデータ破壊を防止するためのバンドギャップ
３００ ゾーン
３０１ Shingled Tracks(ST)領域
３０２ スペアトラックもしくはTiled Tracks(TT)領域
３０３ ST
３０４ 欠陥トラック
３０５ TT
３０６ スペアトラックとして使用された領域
３１０ 欠陥トラックを間に挟んで作られたバンド
５０１ トラックの開始番号
５０２ トラックの終了番号
５０３ トラックの種別
７０１ フラッシュメモリ
７０２ 主記憶
７０３ キャッシュメモリ
７０４ メモリコントローラおよびマイクロプロセッサ
７０５ ハードディスクコントローラおよびSCSIプロトコルコントローラ
７０６ ディスクインタフェース
７０７ サーボコントローラ
７０８ リードライトチャネル
７１１ ヘッド
７１２ 記憶媒体
７１３ アクチュエータアーム
７１４ ボイスコイルモータ
７２１ 各種データ
７２２ 各種制御プログラム
【図１】
0004701088.tif 000002
【図２】
0004701088.tif 000003
【図３】
0004701088.tif 000004
【図４】
0004701088.tif 000005
【図５】
0004701088.tif 000006
【図６】
0004701088.tif 000007
【図７】
0004701088.tif 000008
【図８】
0004701088.tif 000009
【図９】
0004701088.tif 000010