JP2002268829A - コンピュータ装置、ディスクドライブ装置、データのリード/ライト制御方法、ディフェクトマップの登録方法 - Google Patents
コンピュータ装置、ディスクドライブ装置、データのリード/ライト制御方法、ディフェクトマップの登録方法Info
- Publication number
- JP2002268829A JP2002268829A JP2001059941A JP2001059941A JP2002268829A JP 2002268829 A JP2002268829 A JP 2002268829A JP 2001059941 A JP2001059941 A JP 2001059941A JP 2001059941 A JP2001059941 A JP 2001059941A JP 2002268829 A JP2002268829 A JP 2002268829A
- Authority
- JP
- Japan
- Prior art keywords
- sector
- recording disk
- sectors
- defect
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/18—Error detection or correction; Testing, e.g. of drop-outs
- G11B20/1883—Methods for assignment of alternate areas for defective areas
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B5/00—Recording by magnetisation or demagnetisation of a record carrier; Reproducing by magnetic means; Record carriers therefor
- G11B5/48—Disposition or mounting of heads or head supports relative to record carriers ; arrangements of heads, e.g. for scanning the record carrier to increase the relative speed
- G11B5/54—Disposition or mounting of heads or head supports relative to record carriers ; arrangements of heads, e.g. for scanning the record carrier to increase the relative speed with provision for moving the head into or out of its operative position or across tracks
- G11B5/55—Track change, selection or acquisition by displacement of the head
- G11B5/5521—Track change, selection or acquisition by displacement of the head across disk tracks
- G11B5/5526—Control therefor; circuits, track configurations or relative disposition of servo-information transducers and servo-information tracks for control thereof
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B5/00—Recording by magnetisation or demagnetisation of a record carrier; Reproducing by magnetic means; Record carriers therefor
- G11B5/48—Disposition or mounting of heads or head supports relative to record carriers ; arrangements of heads, e.g. for scanning the record carrier to increase the relative speed
- G11B5/58—Disposition or mounting of heads or head supports relative to record carriers ; arrangements of heads, e.g. for scanning the record carrier to increase the relative speed with provision for moving the head for the purpose of maintaining alignment of the head relative to the record carrier during transducing operation, e.g. to compensate for surface irregularities of the latter or for track following
- G11B5/596—Disposition or mounting of heads or head supports relative to record carriers ; arrangements of heads, e.g. for scanning the record carrier to increase the relative speed with provision for moving the head for the purpose of maintaining alignment of the head relative to the record carrier during transducing operation, e.g. to compensate for surface irregularities of the latter or for track following for track following on disks
- G11B5/59633—Servo formatting
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B5/00—Recording by magnetisation or demagnetisation of a record carrier; Reproducing by magnetic means; Record carriers therefor
- G11B2005/0002—Special dispositions or recording techniques
- G11B2005/0005—Arrangements, methods or circuits
- G11B2005/001—Controlling recording characteristics of record carriers or transducing characteristics of transducers by means not being part of their structure
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B2220/00—Record carriers by type
- G11B2220/20—Disc-shaped record carriers
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B5/00—Recording by magnetisation or demagnetisation of a record carrier; Reproducing by magnetic means; Record carriers therefor
- G11B5/012—Recording on, or reproducing or erasing from, magnetic disks
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Techniques For Improving Reliability Of Storages (AREA)
Abstract
(57)【要約】
【課題】 ディフェクトマップのデータ量を有効に削減
することのできるディスクドライブ装置、ディフェクト
マップの登録方法等を提供することを目的とする。 【解決手段】 ハードディスクドライブ装置を構成する
記録ディスク上のディフェクトセクタの位置情報として
生成されるディフェクトマップを、ディフェクトセクタ
の開始点の位置情報:PLBA(i)と、ディフェクト
セクタが記録ディスクの径方向において連続するトラッ
ク数:TCNT(i)と、ディフェクトセクタが記録デ
ィスクの周方向において連続するセクタ数:SCNT
(i)とで登録する構成とした。
することのできるディスクドライブ装置、ディフェクト
マップの登録方法等を提供することを目的とする。 【解決手段】 ハードディスクドライブ装置を構成する
記録ディスク上のディフェクトセクタの位置情報として
生成されるディフェクトマップを、ディフェクトセクタ
の開始点の位置情報:PLBA(i)と、ディフェクト
セクタが記録ディスクの径方向において連続するトラッ
ク数:TCNT(i)と、ディフェクトセクタが記録デ
ィスクの周方向において連続するセクタ数:SCNT
(i)とで登録する構成とした。
Description
【0001】
【発明の属する技術分野】本発明は、例えばハードディ
スクドライブ等のディスクドライブ装置、データのリー
ド/ライト制御方法、ディフェクトマップの登録方法等
に関する。
スクドライブ等のディスクドライブ装置、データのリー
ド/ライト制御方法、ディフェクトマップの登録方法等
に関する。
【0002】
【従来の技術】コンピュータ装置におけるデータの主な
格納先としてハードディスクドライブ等のディスクドラ
イブ装置が多用されているのは周知の通りである。この
ようなディスクドライブ装置は、ディスクエンクロージ
ャと称される筐体内に、データを記録するための円盤状
の記録ディスクを収納しており、データのリード/ライ
トを行なうためのヘッドが記録ディスクの表面に沿って
移動可能に設けられている。そして、この記録ディスク
の目的のセクタにヘッドがアクセスすることによって、
データのリード/ライトを行なうようになっている。
格納先としてハードディスクドライブ等のディスクドラ
イブ装置が多用されているのは周知の通りである。この
ようなディスクドライブ装置は、ディスクエンクロージ
ャと称される筐体内に、データを記録するための円盤状
の記録ディスクを収納しており、データのリード/ライ
トを行なうためのヘッドが記録ディスクの表面に沿って
移動可能に設けられている。そして、この記録ディスク
の目的のセクタにヘッドがアクセスすることによって、
データのリード/ライトを行なうようになっている。
【0003】ところで、ディスクドライブ装置の製造工
程において、記録ディスクの表面に傷等がつくと、その
傷の部分のセクタに対して、データのリード/ライトが
できなくなったり不安定になったりすることがある。こ
のため、ディスクドライブ装置の出荷前には、記録ディ
スクに対するデータのリード/ライトのテストを行な
い、所定の基準を満たさないセクタは、使用不可能なセ
クタとして登録される。より具体的には、ディスクドラ
イブ装置に備えられる記録ディスク全体について、この
ような使用不可能なセクタの位置情報がディフェクトマ
ップ等と称されるマップ情報として生成され、記録ディ
スクの所定の領域に格納される。そして、ディスクドラ
イブ装置の起動時には、このマップ情報が記録ディスク
からDRAM(Dynamic Random Access Memory)等のメ
モリに読み出され、ホスト側からの指示に基づいてデー
タのリード/ライトを行なう際には、メモリに格納され
たマップ情報を参照し、このマップ情報に登録された使
用不可能なセクタを避けるようになっている。
程において、記録ディスクの表面に傷等がつくと、その
傷の部分のセクタに対して、データのリード/ライトが
できなくなったり不安定になったりすることがある。こ
のため、ディスクドライブ装置の出荷前には、記録ディ
スクに対するデータのリード/ライトのテストを行な
い、所定の基準を満たさないセクタは、使用不可能なセ
クタとして登録される。より具体的には、ディスクドラ
イブ装置に備えられる記録ディスク全体について、この
ような使用不可能なセクタの位置情報がディフェクトマ
ップ等と称されるマップ情報として生成され、記録ディ
スクの所定の領域に格納される。そして、ディスクドラ
イブ装置の起動時には、このマップ情報が記録ディスク
からDRAM(Dynamic Random Access Memory)等のメ
モリに読み出され、ホスト側からの指示に基づいてデー
タのリード/ライトを行なう際には、メモリに格納され
たマップ情報を参照し、このマップ情報に登録された使
用不可能なセクタを避けるようになっている。
【0004】従来、このようなディフェクトマップに
は、使用不可能なセクタの一つ一つに対し、その「位
置」の情報を、登録するものがあった。いわば、一つ一
つのセクタを点登録するのである(以下、この方式を点
登録方式と称する)。しかしながら、これでは、使用不
可能なセクタが多ければ、ディフェクトマップが膨大な
ものとなる。このため、使用不可能なセクタの「位置」
と、その連続するセクタの「数」とを情報として登録す
るものもある。つまり、連続する複数のセクタを線状に
捉え、その位置と長さの情報を登録するのである(以
下、この方式を線登録方式と称する)。図11(a)に
示すように、一般に、記録ディスク1に傷A等がついた
場合、図11(b)の拡大図に示すように、この傷A
は、一つのトラックTで複数のセクタSにわたり、これ
らが使用不可能となることが多い。このような場合、前
記したような線登録方式では、同一のトラックT上で連
続する複数の使用不可能なセクタSの情報を、一つの情
報とすることができるので、ディフェクトマップ全体の
情報量を、点登録方式よりも減少させることが可能とな
る。
は、使用不可能なセクタの一つ一つに対し、その「位
置」の情報を、登録するものがあった。いわば、一つ一
つのセクタを点登録するのである(以下、この方式を点
登録方式と称する)。しかしながら、これでは、使用不
可能なセクタが多ければ、ディフェクトマップが膨大な
ものとなる。このため、使用不可能なセクタの「位置」
と、その連続するセクタの「数」とを情報として登録す
るものもある。つまり、連続する複数のセクタを線状に
捉え、その位置と長さの情報を登録するのである(以
下、この方式を線登録方式と称する)。図11(a)に
示すように、一般に、記録ディスク1に傷A等がついた
場合、図11(b)の拡大図に示すように、この傷A
は、一つのトラックTで複数のセクタSにわたり、これ
らが使用不可能となることが多い。このような場合、前
記したような線登録方式では、同一のトラックT上で連
続する複数の使用不可能なセクタSの情報を、一つの情
報とすることができるので、ディフェクトマップ全体の
情報量を、点登録方式よりも減少させることが可能とな
る。
【0005】
【発明が解決しようとする課題】しかしながら、上記し
たような線登録方式でも、図11(b)でも示したよう
に、複数のトラックTを跨る傷Aに対しては無力であ
り、各トラックT毎に使用不可能なセクタSの情報を登
録するしかなかった。また、近年の記録ディスクの高密
度化に伴い、トラックT間の距離も狭まっている。この
ため、同じ大きさの傷Aであっても、図11(c)に示
すように、より多くのトラックTに、使用不可能なセク
タSが発生することになる。このような理由から、記録
ディスクの高密度化と共に、ディフェクトマップのデー
タ量も増加する傾向にあるのである。
たような線登録方式でも、図11(b)でも示したよう
に、複数のトラックTを跨る傷Aに対しては無力であ
り、各トラックT毎に使用不可能なセクタSの情報を登
録するしかなかった。また、近年の記録ディスクの高密
度化に伴い、トラックT間の距離も狭まっている。この
ため、同じ大きさの傷Aであっても、図11(c)に示
すように、より多くのトラックTに、使用不可能なセク
タSが発生することになる。このような理由から、記録
ディスクの高密度化と共に、ディフェクトマップのデー
タ量も増加する傾向にあるのである。
【0006】ディフェクトマップのデータは、前述した
ように、ディスクドライブ装置の起動時にDRAM等の
メモリに読み出される。一般に、このメモリは、ホスト
側と記録ディスクとの間でリード/ライトするデータを
やり取りするときにデータを一時的に格納するバッファ
領域としても用いられる。このため、ディフェクトマッ
プのデータ量が大幅に増えると、バッファ領域を圧迫す
ることになり、バッファ領域で格納できるデータ量が減
少し、ホスト側とのデータ転送パフォーマンスの低下を
招く結果となってしまう。本発明は、このような技術的
課題に基づいてなされたもので、ディフェクトマップの
データ量を有効に削減することのできるディスクドライ
ブ装置、ディフェクトマップの登録方法等を提供するこ
とを目的とする。
ように、ディスクドライブ装置の起動時にDRAM等の
メモリに読み出される。一般に、このメモリは、ホスト
側と記録ディスクとの間でリード/ライトするデータを
やり取りするときにデータを一時的に格納するバッファ
領域としても用いられる。このため、ディフェクトマッ
プのデータ量が大幅に増えると、バッファ領域を圧迫す
ることになり、バッファ領域で格納できるデータ量が減
少し、ホスト側とのデータ転送パフォーマンスの低下を
招く結果となってしまう。本発明は、このような技術的
課題に基づいてなされたもので、ディフェクトマップの
データ量を有効に削減することのできるディスクドライ
ブ装置、ディフェクトマップの登録方法等を提供するこ
とを目的とする。
【0007】
【課題を解決するための手段】かかる目的のもと、本発
明のコンピュータ装置は、記録ディスクを備えた記憶部
が、記録ディスクのセクタのうち、データのリード/ラ
イトの対象外として設定された特定のセクタについて、
特定のセクタの範囲を2次元方向のパラメータで示すセ
クタ範囲情報を有していることを特徴とする。このセク
タ範囲情報は、例えば、特定のセクタの範囲の基準とな
る位置と、特定のセクタが記録ディスクの周方向に連続
する数と、特定のセクタが記録ディスクの径方向に連続
する数と、を含むものとすることができる。このように
して、特定のセクタの範囲を2次元方向のパラメータで
示すことにより、特定のセクタの一つ一つの位置情報を
有する、いわゆる点登録方式や、連続するセクタの数の
情報を含む1次元方向のパラメータで示す、いわゆる線
登録方式に比べ、特定のセクタについての情報(デー
タ)量を抑えることができる。これは特に、記録ディス
クの表面の傷等が原因となって使用不可能なセクタとし
て登録される、ディフェクトセクタ等の情報を登録する
際に好適である。
明のコンピュータ装置は、記録ディスクを備えた記憶部
が、記録ディスクのセクタのうち、データのリード/ラ
イトの対象外として設定された特定のセクタについて、
特定のセクタの範囲を2次元方向のパラメータで示すセ
クタ範囲情報を有していることを特徴とする。このセク
タ範囲情報は、例えば、特定のセクタの範囲の基準とな
る位置と、特定のセクタが記録ディスクの周方向に連続
する数と、特定のセクタが記録ディスクの径方向に連続
する数と、を含むものとすることができる。このように
して、特定のセクタの範囲を2次元方向のパラメータで
示すことにより、特定のセクタの一つ一つの位置情報を
有する、いわゆる点登録方式や、連続するセクタの数の
情報を含む1次元方向のパラメータで示す、いわゆる線
登録方式に比べ、特定のセクタについての情報(デー
タ)量を抑えることができる。これは特に、記録ディス
クの表面の傷等が原因となって使用不可能なセクタとし
て登録される、ディフェクトセクタ等の情報を登録する
際に好適である。
【0008】そして、このようなコンピュータ装置にお
いて、ホスト部は、記録ディスクのセクタについての第
一の位置情報を有し、記憶部に対してデータのリード/
ライトを命令するときには、データをリード/ライトす
べき目的のセクタを第一の位置情報に基づいて指定す
る。ここで、第一の位置情報としては、ホスト部側で保
持する論理アドレスがある。論理アドレスとは、ディフ
ェクトセクタ等の特定のセクタの存在を考慮せず(無視
して)、記録ディスク上のセクタに対し所定の順序で通
し番号が付与されることによって設定される。また、記
憶部は、ホスト部からの命令に基づいてデータをリード
/ライトするときには、第一の位置情報にセクタ範囲情
報を加味した第二の位置情報を取得し、この第二の位置
情報に基づいて目的のセクタを特定する。ここで、第二
の位置情報としては、物理アドレスがある。この物理ア
ドレスは、ディフェクトセクタ等の特定のセクタである
か否かを問わず、記録ディスク上の全てのセクタに対し
所定の順序で通し番号が付与されることによって設定さ
れる。
いて、ホスト部は、記録ディスクのセクタについての第
一の位置情報を有し、記憶部に対してデータのリード/
ライトを命令するときには、データをリード/ライトす
べき目的のセクタを第一の位置情報に基づいて指定す
る。ここで、第一の位置情報としては、ホスト部側で保
持する論理アドレスがある。論理アドレスとは、ディフ
ェクトセクタ等の特定のセクタの存在を考慮せず(無視
して)、記録ディスク上のセクタに対し所定の順序で通
し番号が付与されることによって設定される。また、記
憶部は、ホスト部からの命令に基づいてデータをリード
/ライトするときには、第一の位置情報にセクタ範囲情
報を加味した第二の位置情報を取得し、この第二の位置
情報に基づいて目的のセクタを特定する。ここで、第二
の位置情報としては、物理アドレスがある。この物理ア
ドレスは、ディフェクトセクタ等の特定のセクタである
か否かを問わず、記録ディスク上の全てのセクタに対し
所定の順序で通し番号が付与されることによって設定さ
れる。
【0009】本発明のディスクドライブ装置は、ヘッド
アセンブリのシークを制御するコントローラが、ディフ
ェクトセクタの位置情報を有するディフェクトセクタ位
置情報保持部と、データをリード/ライトする命令が外
部から入力されたときにディフェクトセクタの位置情報
を参照し、データのリード/ライト対象となるセクタを
特定するセクタ特定部と、を有し、位置情報は、ディフ
ェクトセクタが記録ディスクの周方向に連続する数およ
び径方向に連続する数を含むことを特徴とする。このよ
うにして、記録ディスクの周方向および径方向に連続す
る複数のディフェクトセクタからなるブロック(ディフ
ェクトセクタ群)を一つの位置情報で表すことができ
る。ここで、位置情報としては、ブロックの基準となる
位置、例えば先頭のディフェクトセクタの位置をさらに
含むことが好ましい。また、ディフェクトセクタの位置
情報は、通常、ディスクドライブ装置の記録ディスクに
格納されており、ディスクドライブ装置の起動時に、記
録ディスクから読み出されてRAM等のメモリ上に設定
された所定の領域に展開される。
アセンブリのシークを制御するコントローラが、ディフ
ェクトセクタの位置情報を有するディフェクトセクタ位
置情報保持部と、データをリード/ライトする命令が外
部から入力されたときにディフェクトセクタの位置情報
を参照し、データのリード/ライト対象となるセクタを
特定するセクタ特定部と、を有し、位置情報は、ディフ
ェクトセクタが記録ディスクの周方向に連続する数およ
び径方向に連続する数を含むことを特徴とする。このよ
うにして、記録ディスクの周方向および径方向に連続す
る複数のディフェクトセクタからなるブロック(ディフ
ェクトセクタ群)を一つの位置情報で表すことができ
る。ここで、位置情報としては、ブロックの基準となる
位置、例えば先頭のディフェクトセクタの位置をさらに
含むことが好ましい。また、ディフェクトセクタの位置
情報は、通常、ディスクドライブ装置の記録ディスクに
格納されており、ディスクドライブ装置の起動時に、記
録ディスクから読み出されてRAM等のメモリ上に設定
された所定の領域に展開される。
【0010】本発明を記録ディスクに対するデータのリ
ード/ライト制御方法として捉えると、予め、例えば出
荷前の段階で、記録ディスク上における無効セクタが存
在する範囲の情報を、無効セクタが前記記録ディスクの
周方向に連続するセクタ数と前記記録ディスクの径方向
に隣接するトラック数とを含んで登録しておき、外部か
らデータのリード/ライトを実行すべきセクタの指定を
受けたときには、無効セクタの位置情報を参照し、指定
を受けたセクタの物理アドレスを取得し、しかる後、取
得された物理アドレスに基づき、指定されたセクタに対
してデータのリード/ライトを実行することを特徴とす
ることができる。
ード/ライト制御方法として捉えると、予め、例えば出
荷前の段階で、記録ディスク上における無効セクタが存
在する範囲の情報を、無効セクタが前記記録ディスクの
周方向に連続するセクタ数と前記記録ディスクの径方向
に隣接するトラック数とを含んで登録しておき、外部か
らデータのリード/ライトを実行すべきセクタの指定を
受けたときには、無効セクタの位置情報を参照し、指定
を受けたセクタの物理アドレスを取得し、しかる後、取
得された物理アドレスに基づき、指定されたセクタに対
してデータのリード/ライトを実行することを特徴とす
ることができる。
【0011】また、セクタの物理アドレスを取得するに
際しては、記録ディスクのセクタを、物理アドレス順等
の所定の順序でサーチし、指定されたセクタの直前の無
効セクタが存在する範囲の情報のトラック数が1である
とき、指定されたセクタの論理アドレスとセクタまでの
無効セクタの数とを加算して、セクタの物理アドレスを
取得することができる。ここで、指定されたセクタの
「直前」の無効セクタが存在する範囲、とは、無効セク
タが存在する範囲の先頭の無効セクタの位置である。さ
らに、トラック数が2以上で、かつ指定されたセクタが
直前の無効セクタの範囲に含まれないときも、指定され
たセクタの論理アドレスとセクタまでの無効セクタの数
とを加算して、セクタの物理アドレスを取得することが
できる。そして、トラック数が2以上で、かつ指定され
たセクタが直前の無効セクタの範囲に含まれるときに
は、この無効セクタが存在する範囲のトラックにおい
て、このトラックを構成するセクタの数から無効セクタ
の数を引き、有効なセクタの数を算出する。さらに、指
定されたセクタの論理アドレスから、無効セクタが存在
する範囲の直前のトラックにおける最後尾のセクタのア
ドレスを引き、これを前記有効なセクタの数で割れば、
その商と余りが得られる。この商と余りに基づき、指定
されたセクタの物理アドレスを取得することができる。
際しては、記録ディスクのセクタを、物理アドレス順等
の所定の順序でサーチし、指定されたセクタの直前の無
効セクタが存在する範囲の情報のトラック数が1である
とき、指定されたセクタの論理アドレスとセクタまでの
無効セクタの数とを加算して、セクタの物理アドレスを
取得することができる。ここで、指定されたセクタの
「直前」の無効セクタが存在する範囲、とは、無効セク
タが存在する範囲の先頭の無効セクタの位置である。さ
らに、トラック数が2以上で、かつ指定されたセクタが
直前の無効セクタの範囲に含まれないときも、指定され
たセクタの論理アドレスとセクタまでの無効セクタの数
とを加算して、セクタの物理アドレスを取得することが
できる。そして、トラック数が2以上で、かつ指定され
たセクタが直前の無効セクタの範囲に含まれるときに
は、この無効セクタが存在する範囲のトラックにおい
て、このトラックを構成するセクタの数から無効セクタ
の数を引き、有効なセクタの数を算出する。さらに、指
定されたセクタの論理アドレスから、無効セクタが存在
する範囲の直前のトラックにおける最後尾のセクタのア
ドレスを引き、これを前記有効なセクタの数で割れば、
その商と余りが得られる。この商と余りに基づき、指定
されたセクタの物理アドレスを取得することができる。
【0012】本発明は、記録ディスクのセクタに対し、
所定の条件を満たすセクタをディフェクトセクタとして
設定する段階と、記録ディスクの周方向または径方向の
少なくとも一方に連続するディフェクトセクタに対し、
先頭のディフェクトセクタの位置、ディフェクトセクタ
が記録ディスクのトラック上で連続するセクタ数、ディ
フェクトセクタが記録ディスクの径方向に連続するトラ
ック数、を含む情報により、連続するディフェクトセク
タを1つのブロックとしてディフェクトマップに登録す
る段階と、を含むディフェクトマップの登録方法として
捉えることもできる。なお、記録ディスクの周方向、径
方向に連続するディフェクトセクタが「1」である場合
も、この登録方法を適用できるのは言うまでも無い。こ
のとき、トラック数が2以上であれば、このブロックの
セクタ数を各トラック間で同一の値としたり、同一トラ
ック上にディフェクトセクタのブロックが2以上存在し
ないように、ディフェクトマップに登録することが有効
である。これらの条件を満たさなければ、ブロックを2
以上に分けなければならず、ディフェクトマップのデー
タ量が増えてしまうからである。このため、これらの条
件を満たすように、ディフェクトセクタを設定する基準
を決め、実際の傷等によるディフェクトセクタだけでな
く、その周囲のセクタをディフェクトセクタとして設定
することもできる。これにより、記録ディスク全体にお
いてディフェクトセクタのブロック数を減らすことが可
能となる。
所定の条件を満たすセクタをディフェクトセクタとして
設定する段階と、記録ディスクの周方向または径方向の
少なくとも一方に連続するディフェクトセクタに対し、
先頭のディフェクトセクタの位置、ディフェクトセクタ
が記録ディスクのトラック上で連続するセクタ数、ディ
フェクトセクタが記録ディスクの径方向に連続するトラ
ック数、を含む情報により、連続するディフェクトセク
タを1つのブロックとしてディフェクトマップに登録す
る段階と、を含むディフェクトマップの登録方法として
捉えることもできる。なお、記録ディスクの周方向、径
方向に連続するディフェクトセクタが「1」である場合
も、この登録方法を適用できるのは言うまでも無い。こ
のとき、トラック数が2以上であれば、このブロックの
セクタ数を各トラック間で同一の値としたり、同一トラ
ック上にディフェクトセクタのブロックが2以上存在し
ないように、ディフェクトマップに登録することが有効
である。これらの条件を満たさなければ、ブロックを2
以上に分けなければならず、ディフェクトマップのデー
タ量が増えてしまうからである。このため、これらの条
件を満たすように、ディフェクトセクタを設定する基準
を決め、実際の傷等によるディフェクトセクタだけでな
く、その周囲のセクタをディフェクトセクタとして設定
することもできる。これにより、記録ディスク全体にお
いてディフェクトセクタのブロック数を減らすことが可
能となる。
【0013】
【発明の実施の形態】以下、添付図面に示す実施の形態
に基づいてこの発明を詳細に説明する。図1は、本実施
の形態におけるコンピュータ装置の構成を説明するため
の図である。この図1に示すように、コンピュータ装置
は、ハードディスクドライブ装置(記憶部、ディスクド
ライブ装置)10と、このハードディスクドライブ装置
10に対してデータのリード/ライトを指示するPC
(Personal Computer)等のホスト装置(ホスト部)2
0と、を備えている。ハードディスクドライブ装置10
は、ホスト装置20に内蔵または外付けされ、これらは
互いにバス等を介して接続されている。ハードディスク
ドライブ装置10は、筐体(図示無し)内に、所定枚数
の記録ディスク11と、磁気ヘッド12を備えたヘッド
アセンブリ13と、これらの動作を制御するコントロー
ラ14と、を備えている。
に基づいてこの発明を詳細に説明する。図1は、本実施
の形態におけるコンピュータ装置の構成を説明するため
の図である。この図1に示すように、コンピュータ装置
は、ハードディスクドライブ装置(記憶部、ディスクド
ライブ装置)10と、このハードディスクドライブ装置
10に対してデータのリード/ライトを指示するPC
(Personal Computer)等のホスト装置(ホスト部)2
0と、を備えている。ハードディスクドライブ装置10
は、ホスト装置20に内蔵または外付けされ、これらは
互いにバス等を介して接続されている。ハードディスク
ドライブ装置10は、筐体(図示無し)内に、所定枚数
の記録ディスク11と、磁気ヘッド12を備えたヘッド
アセンブリ13と、これらの動作を制御するコントロー
ラ14と、を備えている。
【0014】記録ディスク11は、例えば磁気ディスク
等の不揮発性の記憶媒体であり、図示しないスピンドル
モータによって、所定の回転速度で回転駆動される。こ
の記録ディスク11は、ハードディスクドライブ装置1
0の仕様に応じ、1枚あるいは2枚以上の複数枚が備え
られる。ここで、記録ディスク11には、データを格納
するための区画として、同心円状に複数のトラックが形
成され、各トラックには、その周方向に複数のセクタが
形成されている。この記録ディスク11には、ホスト装
置20の命令によってデータを格納する領域と、ハード
ディスクドライブ装置10を動作させるときに用いる処
理用データを格納する領域とが設定されている。動作用
データとしては、ハードディスクドライブ装置10を制
御するためのプログラムであるマイクロコードと、ハー
ドディスクドライブ装置10の出荷前の段階で、使用不
可能なセクタ(以下、これをディフェクトセクタと称す
る:特定のセクタ、無効セクタ)の位置情報として生成
されたディフェクトマップ(セクタ範囲情報、ディフェ
クトセクタの位置情報、無効セクタが存在する範囲の情
報)のデータとがある。
等の不揮発性の記憶媒体であり、図示しないスピンドル
モータによって、所定の回転速度で回転駆動される。こ
の記録ディスク11は、ハードディスクドライブ装置1
0の仕様に応じ、1枚あるいは2枚以上の複数枚が備え
られる。ここで、記録ディスク11には、データを格納
するための区画として、同心円状に複数のトラックが形
成され、各トラックには、その周方向に複数のセクタが
形成されている。この記録ディスク11には、ホスト装
置20の命令によってデータを格納する領域と、ハード
ディスクドライブ装置10を動作させるときに用いる処
理用データを格納する領域とが設定されている。動作用
データとしては、ハードディスクドライブ装置10を制
御するためのプログラムであるマイクロコードと、ハー
ドディスクドライブ装置10の出荷前の段階で、使用不
可能なセクタ(以下、これをディフェクトセクタと称す
る:特定のセクタ、無効セクタ)の位置情報として生成
されたディフェクトマップ(セクタ範囲情報、ディフェ
クトセクタの位置情報、無効セクタが存在する範囲の情
報)のデータとがある。
【0015】ヘッドアセンブリ13は、記録ディスク1
1の外周側を軸として記録ディスク11の表面に沿って
揺動可能に設けられており、ボイスコイルモータ15に
よって駆動される。ヘッドアセンブリ13の先端部には
磁気ヘッド12が設けられており、ヘッドアセンブリ1
3が揺動することによって、磁気ヘッド12が記録ディ
スク11の略径方向に移動し、目的のトラックにアクセ
ス(シーク)できるようになっている。ここで、図2に
示すように、ヘッドアセンブリ13は、記録ディスク1
1に対し、その両面側にそれぞれ延びるアーム13aを
有し、各アーム13aに磁気ヘッド12が設けられてい
る。つまり、記録ディスク11に対し、2個一対の磁気
ヘッド12が配置されて、その両面側に対しデータのリ
ード/ライトを実行できるようになっている。
1の外周側を軸として記録ディスク11の表面に沿って
揺動可能に設けられており、ボイスコイルモータ15に
よって駆動される。ヘッドアセンブリ13の先端部には
磁気ヘッド12が設けられており、ヘッドアセンブリ1
3が揺動することによって、磁気ヘッド12が記録ディ
スク11の略径方向に移動し、目的のトラックにアクセ
ス(シーク)できるようになっている。ここで、図2に
示すように、ヘッドアセンブリ13は、記録ディスク1
1に対し、その両面側にそれぞれ延びるアーム13aを
有し、各アーム13aに磁気ヘッド12が設けられてい
る。つまり、記録ディスク11に対し、2個一対の磁気
ヘッド12が配置されて、その両面側に対しデータのリ
ード/ライトを実行できるようになっている。
【0016】図1に示したように、コントローラ14に
は、MPU(Micro Processing Unit)16と、例えば
DRAMからなるメモリ17と、磁気ヘッド12でのデ
ータのリード/ライトを実行するリード/ライト実行部
18と、ボイスコイルモータ15のドライバ19と、が
備えられている。メモリ17には、ハードディスクドラ
イブ装置10の起動時に記録ディスク11の所定の領域
から読み出されるマイクロコードを格納するマイクロコ
ード格納領域17a、同じく起動時に記録ディスク11
から読み出されるディフェクトマップのデータを格納す
るディフェクトマップ用データ格納領域(ディフェクト
セクタ位置情報保持部)17b、ホスト装置20と記録
ディスク11との間でデータをやり取りするときにデー
タを一時的に格納する処理用データ格納領域17c、が
設定されている。
は、MPU(Micro Processing Unit)16と、例えば
DRAMからなるメモリ17と、磁気ヘッド12でのデ
ータのリード/ライトを実行するリード/ライト実行部
18と、ボイスコイルモータ15のドライバ19と、が
備えられている。メモリ17には、ハードディスクドラ
イブ装置10の起動時に記録ディスク11の所定の領域
から読み出されるマイクロコードを格納するマイクロコ
ード格納領域17a、同じく起動時に記録ディスク11
から読み出されるディフェクトマップのデータを格納す
るディフェクトマップ用データ格納領域(ディフェクト
セクタ位置情報保持部)17b、ホスト装置20と記録
ディスク11との間でデータをやり取りするときにデー
タを一時的に格納する処理用データ格納領域17c、が
設定されている。
【0017】コントローラ14は、機能的に見ると、ホ
スト命令受付部21、セクタ情報処理部(セクタ特定
部)22、ヘッドアセンブリ駆動命令部23、リード/
ライト命令部24、データ転送処理部25を備えてい
る。ホスト命令受付部21では、ホスト装置20からデ
ータのリード/ライトの命令を受け付け、その命令をM
PU16に通知する。MPU16では、メモリ17のマ
イクロコード格納領域17aに格納されたマイクロコー
ドに基づき、コントローラ14の各部に対し、ホスト装
置20からの命令に応じた処理を実行させる。このと
き、ホスト装置20では、ハードディスクドライブ装置
10に対してデータのリード/ライトを指示するに際
し、後に詳述するように、記録ディスク11に存在する
ディフェクトセクタを考慮しない論理アドレスを用い、
リード/ライトの対象となる目的のセクタを指定する。
スト命令受付部21、セクタ情報処理部(セクタ特定
部)22、ヘッドアセンブリ駆動命令部23、リード/
ライト命令部24、データ転送処理部25を備えてい
る。ホスト命令受付部21では、ホスト装置20からデ
ータのリード/ライトの命令を受け付け、その命令をM
PU16に通知する。MPU16では、メモリ17のマ
イクロコード格納領域17aに格納されたマイクロコー
ドに基づき、コントローラ14の各部に対し、ホスト装
置20からの命令に応じた処理を実行させる。このと
き、ホスト装置20では、ハードディスクドライブ装置
10に対してデータのリード/ライトを指示するに際
し、後に詳述するように、記録ディスク11に存在する
ディフェクトセクタを考慮しない論理アドレスを用い、
リード/ライトの対象となる目的のセクタを指定する。
【0018】セクタ情報処理部22は、ホスト装置20
からの命令におけるデータのリード/ライト対象となる
目的のセクタの位置情報と、メモリ17のディフェクト
マップ用データ格納領域17bに格納されたディフェク
トマップのデータとに基づき、ディフェクトセクタを考
慮した、記録ディスク11上における目的のセクタの物
理アドレスを求める。ヘッドアセンブリ駆動命令部23
は、セクタ情報処理部22で求められた目的のセクタの
物理アドレスに基づき、記録ディスク11上でこのセク
タが存在するトラックに磁気ヘッド12が対向するよ
う、ヘッドアセンブリ13を駆動させるための命令をド
ライバ19に出す。この命令を受けて、ドライバ19は
ヘッドアセンブリ13を駆動させ、磁気ヘッド12を目
的のセクタが存在するトラックに対向させる。リード/
ライト命令部24は、目的のセクタが存在するトラック
に対向した磁気ヘッド12に対し、リード/ライト実行
部18にデータのリード/ライトを命令する。この命令
を受けて、リード/ライト実行部18は、磁気ヘッド1
2に、記録ディスク11の所定のセクタに対するデータ
のリード/ライトを実行させる。
からの命令におけるデータのリード/ライト対象となる
目的のセクタの位置情報と、メモリ17のディフェクト
マップ用データ格納領域17bに格納されたディフェク
トマップのデータとに基づき、ディフェクトセクタを考
慮した、記録ディスク11上における目的のセクタの物
理アドレスを求める。ヘッドアセンブリ駆動命令部23
は、セクタ情報処理部22で求められた目的のセクタの
物理アドレスに基づき、記録ディスク11上でこのセク
タが存在するトラックに磁気ヘッド12が対向するよ
う、ヘッドアセンブリ13を駆動させるための命令をド
ライバ19に出す。この命令を受けて、ドライバ19は
ヘッドアセンブリ13を駆動させ、磁気ヘッド12を目
的のセクタが存在するトラックに対向させる。リード/
ライト命令部24は、目的のセクタが存在するトラック
に対向した磁気ヘッド12に対し、リード/ライト実行
部18にデータのリード/ライトを命令する。この命令
を受けて、リード/ライト実行部18は、磁気ヘッド1
2に、記録ディスク11の所定のセクタに対するデータ
のリード/ライトを実行させる。
【0019】データ転送処理部25は、ホスト装置20
からデータのリードが命令されたときには、リード/ラ
イト命令部24の命令に基づいて磁気ヘッド12が記録
ディスク11の目的のセクタからリードしたデータを、
リード/ライト実行部18から受け取ってメモリ17の
処理用データ格納領域17cに一旦格納し、しかる後、
このデータを処理用データ格納領域17cから取り出
し、データバス(図示無し)を介してホスト装置20に
転送する。また、ホスト装置20からデータのライトが
命令されたときには、データ転送処理部25は、ホスト
装置20から転送されたデータを、メモリ17の処理用
データ格納領域17cに一旦格納し、しかる後、処理用
データ格納領域17cに格納したデータを取り出し、リ
ード/ライト実行部18に受け渡す。
からデータのリードが命令されたときには、リード/ラ
イト命令部24の命令に基づいて磁気ヘッド12が記録
ディスク11の目的のセクタからリードしたデータを、
リード/ライト実行部18から受け取ってメモリ17の
処理用データ格納領域17cに一旦格納し、しかる後、
このデータを処理用データ格納領域17cから取り出
し、データバス(図示無し)を介してホスト装置20に
転送する。また、ホスト装置20からデータのライトが
命令されたときには、データ転送処理部25は、ホスト
装置20から転送されたデータを、メモリ17の処理用
データ格納領域17cに一旦格納し、しかる後、処理用
データ格納領域17cに格納したデータを取り出し、リ
ード/ライト実行部18に受け渡す。
【0020】さて、以下に、本実施の形態におけるディ
フェクトマップの2次元登録、およびそれを用いたデー
タのリード/ライト処理について説明する。ここで、そ
の説明に先立ち、記録ディスク11上でセクタを特定す
るための情報について説明する。まず、コントローラ1
4のヘッドアセンブリ駆動命令部23やリード/ライト
命令部24において、ヘッドアセンブリ13を駆動させ
て磁気ヘッド12を記録ディスク11上の目的のセクタ
に位置させるときに、セクタの位置を特定するパラメー
タ情報CHSとしては、(シリンダ番号・ヘッド番号・
セクタ番号)の3つがある。図2に示したように、シリ
ンダ番号は、ハードディスクドライブ装置10を構成す
る全ての記録ディスク11上における同一のトラックT
をシリンダCの位置として示すものであり、例えば記録
ディスク11の外周側あるいは内周側から、0から順に
番号が付されている。ヘッド番号は、目的のセクタに対
してリード/ライトを実行する磁気ヘッド12を示すも
のであり、ヘッドアセンブリ13に備えられた所定数の
磁気ヘッド12に対し、0から順に番号が付されてい
る。このヘッド番号で磁気ヘッド12を特定することに
より、目的のセクタが位置する記録ディスク11の面が
特定される。セクタ番号は、トラックT上における目的
のセクタの位置を示すものであり、同一トラックT上に
位置するセクタSに対し、0から順に番号が付されてい
る。
フェクトマップの2次元登録、およびそれを用いたデー
タのリード/ライト処理について説明する。ここで、そ
の説明に先立ち、記録ディスク11上でセクタを特定す
るための情報について説明する。まず、コントローラ1
4のヘッドアセンブリ駆動命令部23やリード/ライト
命令部24において、ヘッドアセンブリ13を駆動させ
て磁気ヘッド12を記録ディスク11上の目的のセクタ
に位置させるときに、セクタの位置を特定するパラメー
タ情報CHSとしては、(シリンダ番号・ヘッド番号・
セクタ番号)の3つがある。図2に示したように、シリ
ンダ番号は、ハードディスクドライブ装置10を構成す
る全ての記録ディスク11上における同一のトラックT
をシリンダCの位置として示すものであり、例えば記録
ディスク11の外周側あるいは内周側から、0から順に
番号が付されている。ヘッド番号は、目的のセクタに対
してリード/ライトを実行する磁気ヘッド12を示すも
のであり、ヘッドアセンブリ13に備えられた所定数の
磁気ヘッド12に対し、0から順に番号が付されてい
る。このヘッド番号で磁気ヘッド12を特定することに
より、目的のセクタが位置する記録ディスク11の面が
特定される。セクタ番号は、トラックT上における目的
のセクタの位置を示すものであり、同一トラックT上に
位置するセクタSに対し、0から順に番号が付されてい
る。
【0021】このようなシリンダ番号・ヘッド番号・セ
クタ番号からなるパラメータ情報CHSを用いて、ハー
ドディスクドライブ装置10の記録ディスク11上のセ
クタSに対し、データのリード/ライトを行なうわけで
あるが、ホスト装置20とハードディスクドライブ装置
10との間では、このパラメータ情報CHSを用いるの
ではない。このときには、ハードディスクドライブ装置
10を構成する記録ディスク11のセクタSに対して付
与された、例えば16進数の所定桁数の通し番号で表さ
れる位置情報が用いられる。
クタ番号からなるパラメータ情報CHSを用いて、ハー
ドディスクドライブ装置10の記録ディスク11上のセ
クタSに対し、データのリード/ライトを行なうわけで
あるが、ホスト装置20とハードディスクドライブ装置
10との間では、このパラメータ情報CHSを用いるの
ではない。このときには、ハードディスクドライブ装置
10を構成する記録ディスク11のセクタSに対して付
与された、例えば16進数の所定桁数の通し番号で表さ
れる位置情報が用いられる。
【0022】ここで、ホスト装置20では、記録ディス
ク11に存在するディフェクトセクタを考慮しない位置
情報である、ホスト側論理的ブロックアドレス(Host-L
ogical Block Address;以下、HLBAと称する:論理
アドレス、第一の位置情報)を保持している。一方、ハ
ードディスクドライブ装置10側では、記録ディスク1
1上のセクタSの位置情報として、記録ディスク11上
の全てのセクタS(ディフェクトセクタを含む)を絶対
的ブロックアドレス(Absolute Block Address;以下、
ABAと称する:物理アドレス、第二の位置情報)と、
ディフェクトセクタを除いたセクタSのみを示す、論理
的ブロックアドレス(Logical Block Address;以下、
LBAと称する)とを用いる。これらABAおよびLB
Aは、コントローラ14において、(シリンダ番号・ヘ
ッド番号・セクタ番号)からなるパラメータ情報(物理
アドレス、第二の位置情報)CHSに変換がなされる。
図3は、記録ディスク11上におけるセクタSを、AB
AとLBAとで示す場合の一例である。この図3では、
簡略化のため、記録ディスク11の特定の一面におけ
る、トラックTおよびセクタSの例を用いており、トラ
ックTの数は7(CYL−0〜6のシリンダ番号を付し
た)、各トラックTを構成するセクタ数は10(SEC
−0〜9のセクタ番号を付した)とした。図3中、
「×」印で示すものはディフェクトセクタであり、
「○」印で示すものはディフェクトセクタ以外の有効な
セクタSである。そして、各セクタSに対して付される
ABA、LBAを例示した。
ク11に存在するディフェクトセクタを考慮しない位置
情報である、ホスト側論理的ブロックアドレス(Host-L
ogical Block Address;以下、HLBAと称する:論理
アドレス、第一の位置情報)を保持している。一方、ハ
ードディスクドライブ装置10側では、記録ディスク1
1上のセクタSの位置情報として、記録ディスク11上
の全てのセクタS(ディフェクトセクタを含む)を絶対
的ブロックアドレス(Absolute Block Address;以下、
ABAと称する:物理アドレス、第二の位置情報)と、
ディフェクトセクタを除いたセクタSのみを示す、論理
的ブロックアドレス(Logical Block Address;以下、
LBAと称する)とを用いる。これらABAおよびLB
Aは、コントローラ14において、(シリンダ番号・ヘ
ッド番号・セクタ番号)からなるパラメータ情報(物理
アドレス、第二の位置情報)CHSに変換がなされる。
図3は、記録ディスク11上におけるセクタSを、AB
AとLBAとで示す場合の一例である。この図3では、
簡略化のため、記録ディスク11の特定の一面におけ
る、トラックTおよびセクタSの例を用いており、トラ
ックTの数は7(CYL−0〜6のシリンダ番号を付し
た)、各トラックTを構成するセクタ数は10(SEC
−0〜9のセクタ番号を付した)とした。図3中、
「×」印で示すものはディフェクトセクタであり、
「○」印で示すものはディフェクトセクタ以外の有効な
セクタSである。そして、各セクタSに対して付される
ABA、LBAを例示した。
【0023】さて、本実施の形態では、ハードディスク
ドライブ装置10を構成する記録ディスク11に対し、
予め出荷前の段階で、データのリード/ライトテストを
行ない、使用不可能であると判断されるセクタSをディ
フェクトセクタとし、記録ディスク11全体について、
ディフェクトセクタの位置を示すディフェクトマップが
生成される。本実施の形態では、このディフェクトマッ
プを、従来のような点登録や面登録方式ではなく、記録
ディスク11の面に沿った2次元方向のパラメータ情報
により、いわば面登録するのである。より具体的には、
ディフェクトセクタの位置情報として、記録ディスク1
1上でその周方向または径方向の少なくともいずれか一
方に連続する一群のディフェクトセクタ(以下、これを
ディフェクトセクタ群と称する)において、基準となる
ディフェクトセクタの位置と、この位置を基準として、
ディフェクトセクタが記録ディスク11の径方向に連続
して並ぶトラックTの数(以下、これをトラックカウン
ト(Track CountあるいはTCNT)と称する)と、デ
ィフェクトセクタがトラックTの連続する方向に連続し
て並ぶセクタの数(以下、これをセクタカウント(Sect
or CountあるいはSCNT)と称する)とを用いる。
ドライブ装置10を構成する記録ディスク11に対し、
予め出荷前の段階で、データのリード/ライトテストを
行ない、使用不可能であると判断されるセクタSをディ
フェクトセクタとし、記録ディスク11全体について、
ディフェクトセクタの位置を示すディフェクトマップが
生成される。本実施の形態では、このディフェクトマッ
プを、従来のような点登録や面登録方式ではなく、記録
ディスク11の面に沿った2次元方向のパラメータ情報
により、いわば面登録するのである。より具体的には、
ディフェクトセクタの位置情報として、記録ディスク1
1上でその周方向または径方向の少なくともいずれか一
方に連続する一群のディフェクトセクタ(以下、これを
ディフェクトセクタ群と称する)において、基準となる
ディフェクトセクタの位置と、この位置を基準として、
ディフェクトセクタが記録ディスク11の径方向に連続
して並ぶトラックTの数(以下、これをトラックカウン
ト(Track CountあるいはTCNT)と称する)と、デ
ィフェクトセクタがトラックTの連続する方向に連続し
て並ぶセクタの数(以下、これをセクタカウント(Sect
or CountあるいはSCNT)と称する)とを用いる。
【0024】図4(a)は、これらの情報から、記録デ
ィスク11全体に存在するディフェクトセクタに対して
生成するディフェクトマップのテーブルの例である。こ
のデータテーブルで、Entry(i):(iはmを最
大値とするポインタ変数)は、記録ディスク11上のデ
ィフェクトセクタ群に対し、前記ABAの順に従って順
次番号を付したものである。また、PseudoLBA(PL
BA)は、各ディフェクトセクタ群で基準となるディフ
ェクトセクタ(ディフェクトセクタ群のうちABAが最
も小さいディフェクトセクタ)の位置を示す仮のLBA
(ディフェクトセクタには実際にはLBAが付されない
ため)である。このPseudoLBAは、基準となるディフ
ェクトセクタのABAから、それ以前に存在するEnt
ry(1)〜Entry(i−1)までのディフェクト
セクタの総数(以下、これをプッシュカウントと称す
る)を引くことによって求められる。そして、各ディフ
ェクトセクタ群のトラックカウント:TCNT(i)と
セクタカウント:SCNT(i):とが、データとして
格納されている。図4(b)は、図3の具体例に基づい
て生成したディフェクトマップのデータテーブルの例で
ある。例えば、図3における符号のディフェクトセクタ
群Gは、ABAの順に従って2番目に位置するので、
「Entry(2)」であり、ディフェクトセクタが径
方向(トラックTが並ぶ方向)に並ぶ数であるトラック
カウント:TCNT(i)は「5」、ディフェクトセク
タがトラックTの連続する方向に並ぶ数であるセクタカ
ウント:SCNT(i)は「3」、となる。そして、デ
ィフェクトセクタ群Gの開始位置となるディフェクトセ
クタS1のPseudoLBAは、このディフェクトセクタS
1のABA「000c」から、この「Entry
(2)」以前に存在する「Entry(1)」のプッシ
ュカウント(トラックカウント:TCNT(1)×セク
タカウント:SCNT(3)=1×3=3)を引くこと
によって、「0009」と求められる。なお、このテー
ブル中、PseudoLBAを表す数列の末尾に「h」とある
のは、数列が16進数であることを示している。
ィスク11全体に存在するディフェクトセクタに対して
生成するディフェクトマップのテーブルの例である。こ
のデータテーブルで、Entry(i):(iはmを最
大値とするポインタ変数)は、記録ディスク11上のデ
ィフェクトセクタ群に対し、前記ABAの順に従って順
次番号を付したものである。また、PseudoLBA(PL
BA)は、各ディフェクトセクタ群で基準となるディフ
ェクトセクタ(ディフェクトセクタ群のうちABAが最
も小さいディフェクトセクタ)の位置を示す仮のLBA
(ディフェクトセクタには実際にはLBAが付されない
ため)である。このPseudoLBAは、基準となるディフ
ェクトセクタのABAから、それ以前に存在するEnt
ry(1)〜Entry(i−1)までのディフェクト
セクタの総数(以下、これをプッシュカウントと称す
る)を引くことによって求められる。そして、各ディフ
ェクトセクタ群のトラックカウント:TCNT(i)と
セクタカウント:SCNT(i):とが、データとして
格納されている。図4(b)は、図3の具体例に基づい
て生成したディフェクトマップのデータテーブルの例で
ある。例えば、図3における符号のディフェクトセクタ
群Gは、ABAの順に従って2番目に位置するので、
「Entry(2)」であり、ディフェクトセクタが径
方向(トラックTが並ぶ方向)に並ぶ数であるトラック
カウント:TCNT(i)は「5」、ディフェクトセク
タがトラックTの連続する方向に並ぶ数であるセクタカ
ウント:SCNT(i)は「3」、となる。そして、デ
ィフェクトセクタ群Gの開始位置となるディフェクトセ
クタS1のPseudoLBAは、このディフェクトセクタS
1のABA「000c」から、この「Entry
(2)」以前に存在する「Entry(1)」のプッシ
ュカウント(トラックカウント:TCNT(1)×セク
タカウント:SCNT(3)=1×3=3)を引くこと
によって、「0009」と求められる。なお、このテー
ブル中、PseudoLBAを表す数列の末尾に「h」とある
のは、数列が16進数であることを示している。
【0025】図5は、このようなディフェクトマップを
用い、ホスト装置20側からの命令に応じ、ハードディ
スクドライブ装置10にてデータのリード/ライトを行
なう場合の処理の流れを示すものである。なお、ハード
ディスクドライブ装置10では、起動時に、記録ディス
ク11の所定の領域から、マイクロコードとディフェク
トマップのデータとが読み出され、メモリ17のマイク
ロコード格納領域17a、ディフェクトマップ用データ
格納領域17bにそれぞれ格納されているものとする。
用い、ホスト装置20側からの命令に応じ、ハードディ
スクドライブ装置10にてデータのリード/ライトを行
なう場合の処理の流れを示すものである。なお、ハード
ディスクドライブ装置10では、起動時に、記録ディス
ク11の所定の領域から、マイクロコードとディフェク
トマップのデータとが読み出され、メモリ17のマイク
ロコード格納領域17a、ディフェクトマップ用データ
格納領域17bにそれぞれ格納されているものとする。
【0026】ホスト装置20側から、データのリード/
ライトの命令が出力されると(ステップS101)、ハ
ードディスクドライブ装置10のコントローラ14で
は、ホスト命令受付部21がホスト装置20からの命令
を受け付け、命令を受けたことをMPU16に通知する
(ステップS102:指定受け付け段階)。このとき、
ホスト装置20側からは、ディフェクトマップを考慮し
ないHLBAによって、データのリード/ライトの対象
となる目的のセクタが指定される。
ライトの命令が出力されると(ステップS101)、ハ
ードディスクドライブ装置10のコントローラ14で
は、ホスト命令受付部21がホスト装置20からの命令
を受け付け、命令を受けたことをMPU16に通知する
(ステップS102:指定受け付け段階)。このとき、
ホスト装置20側からは、ディフェクトマップを考慮し
ないHLBAによって、データのリード/ライトの対象
となる目的のセクタが指定される。
【0027】通知を受けたMPU16は、メモリ17の
ディフェクトマップ用データ格納領域17bに格納され
たディフェクトマップを参照する(ステップS10
3)。そして、セクタ情報処理部22にて、参照したデ
ィフェクトマップに基づいて、HLBAを、目的のセク
タの位置を特定するためのパラメータ情報CHS:(シ
リンダ番号・ヘッド番号・セクタ番号)に変換する。こ
のときには、HLBAに、ディフェクトマップに登録さ
れたディフェクトセクタを加味して、目的のセクタのパ
ラメータ情報CHSを得ることになる(ステップS10
4:位置情報取得段階)。
ディフェクトマップ用データ格納領域17bに格納され
たディフェクトマップを参照する(ステップS10
3)。そして、セクタ情報処理部22にて、参照したデ
ィフェクトマップに基づいて、HLBAを、目的のセク
タの位置を特定するためのパラメータ情報CHS:(シ
リンダ番号・ヘッド番号・セクタ番号)に変換する。こ
のときには、HLBAに、ディフェクトマップに登録さ
れたディフェクトセクタを加味して、目的のセクタのパ
ラメータ情報CHSを得ることになる(ステップS10
4:位置情報取得段階)。
【0028】続いて、ヘッドアセンブリ駆動命令部23
は、このようにして得た目的のセクタのパラメータ情報
CHS:(シリンダ番号・ヘッド番号・セクタ番号)の
うち、シリンダ番号とヘッド番号を取得し、ドライバ1
9に対し、ヘッドアセンブリ13のシークを命令する
(ステップS105)。これを受けたドライバ19は、
ヘッドアセンブリ13を駆動して、取得したヘッド番号
に対応する磁気ヘッド12を、取得したシリンダ番号に
対応したトラックTにシークさせる。しかる後、リード
/ライト命令部24は、目的のセクタのパラメータ情報
CHS:(シリンダ番号・ヘッド番号・セクタ番号)の
うち、セクタ番号を取得し、リード/ライト実行部18
に対し、リード/ライトを命令する(ステップS10
6)。これを受けたリード/ライト実行部18は、シー
クしたトラックT上において、取得したセクタ番号に対
応するセクタSに対し、データのリード/ライトを実行
する(リード/ライト実行段階)。
は、このようにして得た目的のセクタのパラメータ情報
CHS:(シリンダ番号・ヘッド番号・セクタ番号)の
うち、シリンダ番号とヘッド番号を取得し、ドライバ1
9に対し、ヘッドアセンブリ13のシークを命令する
(ステップS105)。これを受けたドライバ19は、
ヘッドアセンブリ13を駆動して、取得したヘッド番号
に対応する磁気ヘッド12を、取得したシリンダ番号に
対応したトラックTにシークさせる。しかる後、リード
/ライト命令部24は、目的のセクタのパラメータ情報
CHS:(シリンダ番号・ヘッド番号・セクタ番号)の
うち、セクタ番号を取得し、リード/ライト実行部18
に対し、リード/ライトを命令する(ステップS10
6)。これを受けたリード/ライト実行部18は、シー
クしたトラックT上において、取得したセクタ番号に対
応するセクタSに対し、データのリード/ライトを実行
する(リード/ライト実行段階)。
【0029】図6〜図8は、セクタ情報処理部22にお
ける上記ステップS103〜S104の処理の、さらに
詳細な一例を示すものである。まず、図6に示すステッ
プS201では、ディフェクトマップのテーブル(図4
(a)参照)を参照して処理を行なうに先立ち、ポイン
タ変数「i」を「1」に初期化する。そしてまず、ホス
ト装置20側からの命令に含まれる、目的のセクタの位
置情報であるHLBAが、PLBA(i)の値(この場
合、ポインタ変数「i」が「1」であるのでディフェク
トマップにおける「Entry(1)」のPseudoLBA
の値)よりも小さいか否かを判定する(ステップS20
2)。判定の結果、HLBAがPLBA(1)よりも小
さくなければ、ステップS203で、ポインタ変数
「i」をインクリメントし、続くステップS204で、
インクリメントしたポインタ変数「i」が最大値mに達
しているか否かを判定する。これは、図4(a)のディ
フェクトマップのテーブルにおける最後のEntryで
あるかどうかを判断しているのである。その結果、ポイ
ンタ変数「i」が最大値mに達していなければ、ステッ
プS202に戻って処理を続行する。一方、前記ステッ
プS202でHLBAがPLBA(i)よりも小さい場
合、および、前記ステップS204でポインタ変数
「i」が最大値mに達した場合、この時点でのポインタ
変数「i」が「1」であるか否かを判定する(ステップ
S205)。その結果、ポインタ変数「i」が「1」で
あれば、HLBAはディフェクトマップの「Entry
(1)」よりも前にあるということになるので、つま
り、このHLBAよりも前にはディフェクトセクタが存
在せず、プッシュカウントは当然のことながら「0」で
あるので、 HLBA=ABA となる。したがって、ABAに対応する(シリンダ番号
・ヘッド番号・セクタ番号)を、目的のセクタのパラメ
ータ情報CHSとして取得する。
ける上記ステップS103〜S104の処理の、さらに
詳細な一例を示すものである。まず、図6に示すステッ
プS201では、ディフェクトマップのテーブル(図4
(a)参照)を参照して処理を行なうに先立ち、ポイン
タ変数「i」を「1」に初期化する。そしてまず、ホス
ト装置20側からの命令に含まれる、目的のセクタの位
置情報であるHLBAが、PLBA(i)の値(この場
合、ポインタ変数「i」が「1」であるのでディフェク
トマップにおける「Entry(1)」のPseudoLBA
の値)よりも小さいか否かを判定する(ステップS20
2)。判定の結果、HLBAがPLBA(1)よりも小
さくなければ、ステップS203で、ポインタ変数
「i」をインクリメントし、続くステップS204で、
インクリメントしたポインタ変数「i」が最大値mに達
しているか否かを判定する。これは、図4(a)のディ
フェクトマップのテーブルにおける最後のEntryで
あるかどうかを判断しているのである。その結果、ポイ
ンタ変数「i」が最大値mに達していなければ、ステッ
プS202に戻って処理を続行する。一方、前記ステッ
プS202でHLBAがPLBA(i)よりも小さい場
合、および、前記ステップS204でポインタ変数
「i」が最大値mに達した場合、この時点でのポインタ
変数「i」が「1」であるか否かを判定する(ステップ
S205)。その結果、ポインタ変数「i」が「1」で
あれば、HLBAはディフェクトマップの「Entry
(1)」よりも前にあるということになるので、つま
り、このHLBAよりも前にはディフェクトセクタが存
在せず、プッシュカウントは当然のことながら「0」で
あるので、 HLBA=ABA となる。したがって、ABAに対応する(シリンダ番号
・ヘッド番号・セクタ番号)を、目的のセクタのパラメ
ータ情報CHSとして取得する。
【0030】ステップS205にて、ポインタ変数
「i」が「0」でなければ、ポインタ変数「i」を
「1」ディクリメント(減少)させる(ステップS20
6)。これにより、HLBAの直前のEntry
(i):(i=i−1)を対象とした検討を行なうこと
になる。そして、ディフェクトマップにおいてHLBA
の直前のEntry(i)で、トラックカウント:TC
NT(i)の値が「1」より大きいか否かを判定する
(ステップS207)。これは、このEntryのディ
フェクトセクタ群が、複数トラックTにわたるものかど
うかを検討しているのである。
「i」が「0」でなければ、ポインタ変数「i」を
「1」ディクリメント(減少)させる(ステップS20
6)。これにより、HLBAの直前のEntry
(i):(i=i−1)を対象とした検討を行なうこと
になる。そして、ディフェクトマップにおいてHLBA
の直前のEntry(i)で、トラックカウント:TC
NT(i)の値が「1」より大きいか否かを判定する
(ステップS207)。これは、このEntryのディ
フェクトセクタ群が、複数トラックTにわたるものかど
うかを検討しているのである。
【0031】その結果、「No」、つまりトラックカウ
ント:TCNT(i)=1であれば、Entry(1)
〜Entry(i−1)におけるプッシュカウント(ト
ラックカウント:TCNT(i)とセクタカウント:S
CNT(i)の積の総和)とを加算し、 ABA=HLBA+プッシュカウント として、このABAに対応する(シリンダ番号・ヘッド
番号・セクタ番号)を、目的のセクタのパラメータ情報
CHSとして取得する。
ント:TCNT(i)=1であれば、Entry(1)
〜Entry(i−1)におけるプッシュカウント(ト
ラックカウント:TCNT(i)とセクタカウント:S
CNT(i)の積の総和)とを加算し、 ABA=HLBA+プッシュカウント として、このABAに対応する(シリンダ番号・ヘッド
番号・セクタ番号)を、目的のセクタのパラメータ情報
CHSとして取得する。
【0032】一方、ステップS207の判定結果が「Y
es」、つまりHLBAの直前のEntry(i)で、
トラックカウント:TCNT(i)の値が「1」より大
きい場合、このEntry(i)のディフェクトセクタ
群が複数のトラックTにわたるものなる。この場合、図
7に示すステップS208に移行する。ここでは、この
Entry(i)のディフェクトセクタ群における先頭
のディフェクトセクタのABA(i)を求める。これに
は、ステップS208に示した式により、このEntr
y(i)のPLBA(i)と、このEntry(i)よ
りも以前のEntry(1)〜Entry(i−1)に
おけるプッシュカウント(トラックカウント:TCNT
(i)とセクタカウント:SCNT(i)の積の総和)
とを加算すれば良い。
es」、つまりHLBAの直前のEntry(i)で、
トラックカウント:TCNT(i)の値が「1」より大
きい場合、このEntry(i)のディフェクトセクタ
群が複数のトラックTにわたるものなる。この場合、図
7に示すステップS208に移行する。ここでは、この
Entry(i)のディフェクトセクタ群における先頭
のディフェクトセクタのABA(i)を求める。これに
は、ステップS208に示した式により、このEntr
y(i)のPLBA(i)と、このEntry(i)よ
りも以前のEntry(1)〜Entry(i−1)に
おけるプッシュカウント(トラックカウント:TCNT
(i)とセクタカウント:SCNT(i)の積の総和)
とを加算すれば良い。
【0033】続いて、ステップS208で得た、先頭の
ディフェクトセクタのABA(i)を、1トラック当た
りのセクタ数:SEC_TRKで割り、その商と余りを
得る。ここで得られた商が、先頭のディフェクトセクタ
が位置するトラックTを示すシリンダ番号:CYL
(i)であり、余りが、先頭のディフェクトセクタが位
置するセクタ番号:SEC(i)となる(ステップS2
09)。
ディフェクトセクタのABA(i)を、1トラック当た
りのセクタ数:SEC_TRKで割り、その商と余りを
得る。ここで得られた商が、先頭のディフェクトセクタ
が位置するトラックTを示すシリンダ番号:CYL
(i)であり、余りが、先頭のディフェクトセクタが位
置するセクタ番号:SEC(i)となる(ステップS2
09)。
【0034】次いで、このシリンダ番号:CYL(i)
のトラックTにおけるABAの最小値:MINABA.
CYL(i)、つまり、このトラックTにおける先頭の
セクタSのABAを求める。これには、ステップS20
8で得た、ディフェクトセクタ群における先頭のディフ
ェクトセクタのABA(i)から、このディフェクトセ
クタのセクタ番号:SEC(i)を引けば良い(ステッ
プS210)。さらに、このシリンダ番号:CYL
(i)のトラックTにおけるLBAの最小値:MINL
BA.CYL(i)、つまり、このトラックTにおける
先頭のセクタSのLBAを求める。これには、ステップ
S210で得た、この先頭のセクタSのABAから、こ
のセクタS以前、つまり検討を行なっているEntry
(i)よりも以前のEntry(1)〜Entry(i
−1)におけるプッシュカウントを引けば良い(ステッ
プS211)。
のトラックTにおけるABAの最小値:MINABA.
CYL(i)、つまり、このトラックTにおける先頭の
セクタSのABAを求める。これには、ステップS20
8で得た、ディフェクトセクタ群における先頭のディフ
ェクトセクタのABA(i)から、このディフェクトセ
クタのセクタ番号:SEC(i)を引けば良い(ステッ
プS210)。さらに、このシリンダ番号:CYL
(i)のトラックTにおけるLBAの最小値:MINL
BA.CYL(i)、つまり、このトラックTにおける
先頭のセクタSのLBAを求める。これには、ステップ
S210で得た、この先頭のセクタSのABAから、こ
のセクタS以前、つまり検討を行なっているEntry
(i)よりも以前のEntry(1)〜Entry(i
−1)におけるプッシュカウントを引けば良い(ステッ
プS211)。
【0035】そして、ステップS211で得た、先頭の
ディフェクトセクタが位置するトラックTの、先頭のセ
クタSのLBAから「1」を減算する。これにより、こ
のセクタSの直前のトラックTにおける最後尾のセクタ
SのLBA:MAXLBA.CYL(i−1)が求まる
ことになる。ここで、検討しているEntry(i)が
存在する複数のトラックTに対して設定するディフェク
トエリア(図3の具体例における二点鎖線DA)におい
て、各トラックTの有効セクタ(ディフェクトセクタで
はないセクタ)の数:GOOD_SECは、1トラック
当たりのセクタ数:SEC_TRKから、ディフェクト
セクタが連続する数であるセクタカウント:SCNT
(i)を引いた数となる(ステップS212)。
ディフェクトセクタが位置するトラックTの、先頭のセ
クタSのLBAから「1」を減算する。これにより、こ
のセクタSの直前のトラックTにおける最後尾のセクタ
SのLBA:MAXLBA.CYL(i−1)が求まる
ことになる。ここで、検討しているEntry(i)が
存在する複数のトラックTに対して設定するディフェク
トエリア(図3の具体例における二点鎖線DA)におい
て、各トラックTの有効セクタ(ディフェクトセクタで
はないセクタ)の数:GOOD_SECは、1トラック
当たりのセクタ数:SEC_TRKから、ディフェクト
セクタが連続する数であるセクタカウント:SCNT
(i)を引いた数となる(ステップS212)。
【0036】次いで、目的のセクタが、ディフェクトエ
リアに入るか否かを検討するため、目的のセクタの位置
情報:HLBAから、ステップS212で得たディフェ
クトエリアの直前のトラックTにおける最後尾のセクタ
SのLBAであるMAXLBA.CYL(i−1)を引
き、これをディフェクトエリアにおける各トラックTの
有効セクタの数:GOOD_SECで割る。そして、そ
の商:WORK1と、余り:WORK2を得る(ステッ
プS213)。ここで得られた商:WORK1は、ディ
フェクトエリアの最初のトラックTを「1」として数え
たときの、目的のセクタが位置するトラックTまでのト
ラック数、余り:WORK2は、そのトラックTにおけ
る目的のセクタまでのセクタSのセクタ数となる。
リアに入るか否かを検討するため、目的のセクタの位置
情報:HLBAから、ステップS212で得たディフェ
クトエリアの直前のトラックTにおける最後尾のセクタ
SのLBAであるMAXLBA.CYL(i−1)を引
き、これをディフェクトエリアにおける各トラックTの
有効セクタの数:GOOD_SECで割る。そして、そ
の商:WORK1と、余り:WORK2を得る(ステッ
プS213)。ここで得られた商:WORK1は、ディ
フェクトエリアの最初のトラックTを「1」として数え
たときの、目的のセクタが位置するトラックTまでのト
ラック数、余り:WORK2は、そのトラックTにおけ
る目的のセクタまでのセクタSのセクタ数となる。
【0037】続く図8のステップS214では、ステッ
プS213で得た商:WORK1が、検討を行なってい
るEntry(i)におけるトラックカウント:TCN
T(i)よりも小さいか否かを判定する(ステップS2
14)。その結果、「No」、つまり商:WORK1が
トラックカウント:TCNT(i)以上であれば、目的
のセクタは、ディフェクトエリア(ii)に入らず、こ
のディフェクトエリア(ii)よりも後のトラックTに
位置することがわかる。したがって、この場合、HLB
AにEntry(1)〜Entry(i−1)における
プッシュカウント(トラックカウント:TCNT(i)
とセクタカウント:SCNT(i)の積の総和)を加算
し、目的のセクタのABAを得る。そして、得られたA
BAに対応する、目的のセクタのパラメータ情報CHS
である(シリンダ番号・ヘッド番号・セクタ番号)が取
得できる。
プS213で得た商:WORK1が、検討を行なってい
るEntry(i)におけるトラックカウント:TCN
T(i)よりも小さいか否かを判定する(ステップS2
14)。その結果、「No」、つまり商:WORK1が
トラックカウント:TCNT(i)以上であれば、目的
のセクタは、ディフェクトエリア(ii)に入らず、こ
のディフェクトエリア(ii)よりも後のトラックTに
位置することがわかる。したがって、この場合、HLB
AにEntry(1)〜Entry(i−1)における
プッシュカウント(トラックカウント:TCNT(i)
とセクタカウント:SCNT(i)の積の総和)を加算
し、目的のセクタのABAを得る。そして、得られたA
BAに対応する、目的のセクタのパラメータ情報CHS
である(シリンダ番号・ヘッド番号・セクタ番号)が取
得できる。
【0038】一方、ステップS214での判定結果が、
「Yes」、つまり商:WORK1がトラックカウン
ト:TCNT(i)よりも小さければ、目的のセクタ
は、ディフェクトエリア(ii)に入ることになる。こ
の場合、商:WORK1と、ステップ209で得たこの
ENTRY(i)において先頭のディフェクトセクタが
位置するトラックTを示すシリンダ番号:CYL(i)
とを加算し、ここから「1」を減算し、その結果を、目
的のセクタの暫定のシリンダ番号:HLBA.CYLと
する。また、ステップS213で得た余り:WORK2
を、目的のセクタの、暫定のセクタ番号:HLBA.S
ECとする(ステップS215)。
「Yes」、つまり商:WORK1がトラックカウン
ト:TCNT(i)よりも小さければ、目的のセクタ
は、ディフェクトエリア(ii)に入ることになる。こ
の場合、商:WORK1と、ステップ209で得たこの
ENTRY(i)において先頭のディフェクトセクタが
位置するトラックTを示すシリンダ番号:CYL(i)
とを加算し、ここから「1」を減算し、その結果を、目
的のセクタの暫定のシリンダ番号:HLBA.CYLと
する。また、ステップS213で得た余り:WORK2
を、目的のセクタの、暫定のセクタ番号:HLBA.S
ECとする(ステップS215)。
【0039】上記ステップS215で、暫定のシリンダ
番号:HLBA.CYL、暫定のセクタ番号:HLB
A.SECとしたのは、余り:WORK2が「0」であ
る場合、目的のセクタは、暫定のシリンダ番号:HLB
A.CYLのトラックTの最後尾に位置し、余り:WO
RK2が「0」以外である場合、目的のセクタは、暫定
のシリンダ番号:HLBA.CYLで表されるトラック
Tの次のトラックTに位置するからである。このため、
ここで、余り:WORK2が「0」であるか否かを判定
する(ステップS216)。その結果、余り:WORK
2が「0」であれば、暫定のシリンダ番号:HLBA.
CYLが、そのまま目的のセクタのシリンダ番号:HL
BA.CYLとなる。また、余り:WORK2が「0」
でなければ、暫定のシリンダ番号:HLBA.CYLに
「1」を加算し、これを目的のセクタのシリンダ番号:
HLBA.CYLとして更新する(ステップS21
7)。
番号:HLBA.CYL、暫定のセクタ番号:HLB
A.SECとしたのは、余り:WORK2が「0」であ
る場合、目的のセクタは、暫定のシリンダ番号:HLB
A.CYLのトラックTの最後尾に位置し、余り:WO
RK2が「0」以外である場合、目的のセクタは、暫定
のシリンダ番号:HLBA.CYLで表されるトラック
Tの次のトラックTに位置するからである。このため、
ここで、余り:WORK2が「0」であるか否かを判定
する(ステップS216)。その結果、余り:WORK
2が「0」であれば、暫定のシリンダ番号:HLBA.
CYLが、そのまま目的のセクタのシリンダ番号:HL
BA.CYLとなる。また、余り:WORK2が「0」
でなければ、暫定のシリンダ番号:HLBA.CYLに
「1」を加算し、これを目的のセクタのシリンダ番号:
HLBA.CYLとして更新する(ステップS21
7)。
【0040】また、余り:WORK2が、ステップ20
9で得たこのENTRY(i)における先頭のディフェ
クトセクタのセクタ番号:SEC(i)より大きいか否
かを判定する(ステップS218)。その結果、余り:
WORK2が、先頭のディフェクトセクタのセクタ番
号:SEC(i)よりも大きければ、暫定のセクタ番
号:HLBA.SECに、このEntry(i)におけ
るセクタカウント:SCNT(i)を加え、「1」を引
き、これを目的のセクタのセクタ番号:HLBA.SE
Cとする(ステップS219)。また、余り:WORK
2が、先頭のディフェクトセクタのセクタ番号:SEC
(i)よりも大きくなければ、暫定のセクタ番号:HL
BA.SECを、そのまま目的のセクタのセクタ番号:
HLBA.SECとする。
9で得たこのENTRY(i)における先頭のディフェ
クトセクタのセクタ番号:SEC(i)より大きいか否
かを判定する(ステップS218)。その結果、余り:
WORK2が、先頭のディフェクトセクタのセクタ番
号:SEC(i)よりも大きければ、暫定のセクタ番
号:HLBA.SECに、このEntry(i)におけ
るセクタカウント:SCNT(i)を加え、「1」を引
き、これを目的のセクタのセクタ番号:HLBA.SE
Cとする(ステップS219)。また、余り:WORK
2が、先頭のディフェクトセクタのセクタ番号:SEC
(i)よりも大きくなければ、暫定のセクタ番号:HL
BA.SECを、そのまま目的のセクタのセクタ番号:
HLBA.SECとする。
【0041】このようにして、ホスト装置20から指定
された目的のセクタの位置情報:HLBAに、ディフェ
クトマップに登録されたディフェクトセクタを加味し、
目的のセクタのパラメータ情報CHS(シリンダ番号・
ヘッド番号・セクタ番号)を得ることができる。
された目的のセクタの位置情報:HLBAに、ディフェ
クトマップに登録されたディフェクトセクタを加味し、
目的のセクタのパラメータ情報CHS(シリンダ番号・
ヘッド番号・セクタ番号)を得ることができる。
【0042】以下に、上記図6〜図8に示した処理によ
って、目的のセクタのパラメータ情報CHSを得る具体
的な例を挙げる。ここで、図3に示した具体例を用い、
1トラック当たりのセクタ数を「10」とし、また図3
に示したセクタSが全てヘッド番号「0」の面に位置し
ているとする。 <例1>例えば、ホスト装置20から、HLBA=000
3のセクタSに対するリード/ライト命令が出力された
場合、まず、ステップS202〜S204において、ポ
インタi=1のときに、HLBA=0003が、図4
(b)に示したディフェクトマップのテーブルにおける
Entry(1):(i=1)のディフェクトセクタ群
G1のPLBA(1)=0005よりも小さくなるとい
うサーチ結果が得られる。すると、ステップS205
で、i=1という条件を満たすことになるので、通常の
変換を行なう。つまり、HLBA=0003のセクタS
はEntry(1)よりも前に位置するので、プッシュ
カウントは「0」であり、 HLBA=ABA=0003 となる。したがって、このABAに対応するパラメータ
情報CHSは、(シリンダ番号・ヘッド番号・セクタ番
号)=(0・0・3)となる。
って、目的のセクタのパラメータ情報CHSを得る具体
的な例を挙げる。ここで、図3に示した具体例を用い、
1トラック当たりのセクタ数を「10」とし、また図3
に示したセクタSが全てヘッド番号「0」の面に位置し
ているとする。 <例1>例えば、ホスト装置20から、HLBA=000
3のセクタSに対するリード/ライト命令が出力された
場合、まず、ステップS202〜S204において、ポ
インタi=1のときに、HLBA=0003が、図4
(b)に示したディフェクトマップのテーブルにおける
Entry(1):(i=1)のディフェクトセクタ群
G1のPLBA(1)=0005よりも小さくなるとい
うサーチ結果が得られる。すると、ステップS205
で、i=1という条件を満たすことになるので、通常の
変換を行なう。つまり、HLBA=0003のセクタS
はEntry(1)よりも前に位置するので、プッシュ
カウントは「0」であり、 HLBA=ABA=0003 となる。したがって、このABAに対応するパラメータ
情報CHSは、(シリンダ番号・ヘッド番号・セクタ番
号)=(0・0・3)となる。
【0043】<例2>また、例えば、ホスト装置20か
ら、HLBA=0006のセクタSに対するリード/ラ
イト命令が出力された場合、まず、ステップS202〜
S204において、ポインタi=2のときに、HLBA
=0006が、図4(b)に示したディフェクトマップ
のテーブルにおけるEntry(2):(i=2)のデ
ィフェクトセクタ群G2のPLBA(1)=0009よ
りも小さくなるというサーチ結果が得られる。すると、
ステップS205で、i=1という条件は満たさず、ス
テップS206以降に進む。そして、ステップS207
で、Entry(1)のトラックカウント:TCNT
(1)>1を満たさないため、この時点で、通常の変換
を行なう。つまり、HLBA=0006のセクタSは、
その前にEntry(1)が存在するため、このEnt
ry(1)のプッシュカウント:TCNT(1)×SC
NT(1)=1×3=3を、HLBA=0006に加算
する。これにより、目的のセクタのABAは、 ABA=HLBA+TCNT(1)×SCNT(1) =0006+3 =0009 を得る。したがって、このABAに対応するパラメータ
情報CHSは、(シリンダ番号・ヘッド番号・セクタ番
号)=(0・0・9)となる。
ら、HLBA=0006のセクタSに対するリード/ラ
イト命令が出力された場合、まず、ステップS202〜
S204において、ポインタi=2のときに、HLBA
=0006が、図4(b)に示したディフェクトマップ
のテーブルにおけるEntry(2):(i=2)のデ
ィフェクトセクタ群G2のPLBA(1)=0009よ
りも小さくなるというサーチ結果が得られる。すると、
ステップS205で、i=1という条件は満たさず、ス
テップS206以降に進む。そして、ステップS207
で、Entry(1)のトラックカウント:TCNT
(1)>1を満たさないため、この時点で、通常の変換
を行なう。つまり、HLBA=0006のセクタSは、
その前にEntry(1)が存在するため、このEnt
ry(1)のプッシュカウント:TCNT(1)×SC
NT(1)=1×3=3を、HLBA=0006に加算
する。これにより、目的のセクタのABAは、 ABA=HLBA+TCNT(1)×SCNT(1) =0006+3 =0009 を得る。したがって、このABAに対応するパラメータ
情報CHSは、(シリンダ番号・ヘッド番号・セクタ番
号)=(0・0・9)となる。
【0044】<例3>例えば、ホスト装置20から、H
LBA=001FのセクタSに対するリード/ライト命
令が出力された場合、まず、ステップS202〜S20
4において、ポインタi=3のときに、HLBA=00
1Fが、図4(b)に示したディフェクトマップのテー
ブルにおけるEntry(3):(i=3)のディフェ
クトセクタ群G3のPLBA(3)=002Eよりも小
さくなるというサーチ結果が得られる。そして、ステッ
プS206〜S207で、このEntry(3)の直前
のEntry(2):(i=2)のディフェクトセクタ
群G2において、トラックカウント:TCNT(2)=
5であるため、ステップS208以降で、目的のセクタ
のHLBA=001Fが、Entry(2)のディフェ
クトセクタ群G2を含むディフェクトエリアDAに含ま
れるか否かをチェックする。
LBA=001FのセクタSに対するリード/ライト命
令が出力された場合、まず、ステップS202〜S20
4において、ポインタi=3のときに、HLBA=00
1Fが、図4(b)に示したディフェクトマップのテー
ブルにおけるEntry(3):(i=3)のディフェ
クトセクタ群G3のPLBA(3)=002Eよりも小
さくなるというサーチ結果が得られる。そして、ステッ
プS206〜S207で、このEntry(3)の直前
のEntry(2):(i=2)のディフェクトセクタ
群G2において、トラックカウント:TCNT(2)=
5であるため、ステップS208以降で、目的のセクタ
のHLBA=001Fが、Entry(2)のディフェ
クトセクタ群G2を含むディフェクトエリアDAに含ま
れるか否かをチェックする。
【0045】ステップS208では、Entry(2)
のディフェクトセクタ群G2における先頭のディフェク
トセクタS1のABAを求める。これには、Entry
(2)のPLBA=0009と、このEntry(2)
よりも以前の、Entry(1)のプッシュカウント:
TCNT(1)×SCNT(1)=1×3=3を加算す
る。 ABA(2)=PLBA(2)+TCNT(1)×SCNT(1) =0009+3 =000C を得る。
のディフェクトセクタ群G2における先頭のディフェク
トセクタS1のABAを求める。これには、Entry
(2)のPLBA=0009と、このEntry(2)
よりも以前の、Entry(1)のプッシュカウント:
TCNT(1)×SCNT(1)=1×3=3を加算す
る。 ABA(2)=PLBA(2)+TCNT(1)×SCNT(1) =0009+3 =000C を得る。
【0046】続いて、ステップS209で、先頭のディ
フェクトセクタS1のABA(2)=000Cを、1ト
ラック当たりのセクタ数:SEC_TRK=10で割
り、その商「1」が、先頭のディフェクトセクタS1が
位置するトラックTを示すシリンダ番号:CYL(2)
となり、余り「2」が、先頭のディフェクトセクタS1
が位置するセクタ番号:SEC(2)となる。
フェクトセクタS1のABA(2)=000Cを、1ト
ラック当たりのセクタ数:SEC_TRK=10で割
り、その商「1」が、先頭のディフェクトセクタS1が
位置するトラックTを示すシリンダ番号:CYL(2)
となり、余り「2」が、先頭のディフェクトセクタS1
が位置するセクタ番号:SEC(2)となる。
【0047】ステップS210では、シリンダ番号:C
YL(2)=1におけるトラックTのABAの最小値:
MINABA.CYL(2)を得る。 MINABA.CYL(2)=ABA(2)−SEC(2) =000C−2 =000A を得る。これによりディフェクトエリアDAの先頭のセ
クタS2のABAが得られる。
YL(2)=1におけるトラックTのABAの最小値:
MINABA.CYL(2)を得る。 MINABA.CYL(2)=ABA(2)−SEC(2) =000C−2 =000A を得る。これによりディフェクトエリアDAの先頭のセ
クタS2のABAが得られる。
【0048】次いで、ステップS211にて、シリンダ
番号:CYL(2)=1のトラックTにおけるLBAの
最小値:MINLBA.CYL(2)を得る。ステップ
S210で得た、シリンダ番号:CYL(2)=1のト
ラックTにおけるABAの最小値:MINABA.CY
L(1)=000Aから、検討を行なっているEntr
y(2)よりも以前のEntry(1)における、プッ
シュカウントTCNT(1)×SCNT(1)=1×3
=3を引く。 MINLBA.CYL(2)=MINABA.CYL(1)−MINLBA .CYL(2) =000A−3 =0007 これによりディフェクトエリアDAの先頭のセクタS2
のLBAが得られる。
番号:CYL(2)=1のトラックTにおけるLBAの
最小値:MINLBA.CYL(2)を得る。ステップ
S210で得た、シリンダ番号:CYL(2)=1のト
ラックTにおけるABAの最小値:MINABA.CY
L(1)=000Aから、検討を行なっているEntr
y(2)よりも以前のEntry(1)における、プッ
シュカウントTCNT(1)×SCNT(1)=1×3
=3を引く。 MINLBA.CYL(2)=MINABA.CYL(1)−MINLBA .CYL(2) =000A−3 =0007 これによりディフェクトエリアDAの先頭のセクタS2
のLBAが得られる。
【0049】続くステップS212では、ステップS2
11で得た、先頭のディフェクトセクタ1が位置するト
ラックTにおける先頭のセクタS2のLBAから「1」
を減算し、このセクタS2の直前のトラックTにおける
最後尾のセクタS3のLBA:MAXLBA.CYL
(1)を得る。 MAXLBA.CYL(1)=MINLBA.CYL(2)−1 =0007−1 =0006 ここで、検討しているEntry(2)が存在するディ
フェクトエリアDAにおいて、各トラックTの有効セク
タ(ディフェクトセクタではないセクタS)の数:GO
OD_SECを求める。 GOOD_SEC=SEC_TRK−SCNT(2) =10−3 =7
11で得た、先頭のディフェクトセクタ1が位置するト
ラックTにおける先頭のセクタS2のLBAから「1」
を減算し、このセクタS2の直前のトラックTにおける
最後尾のセクタS3のLBA:MAXLBA.CYL
(1)を得る。 MAXLBA.CYL(1)=MINLBA.CYL(2)−1 =0007−1 =0006 ここで、検討しているEntry(2)が存在するディ
フェクトエリアDAにおいて、各トラックTの有効セク
タ(ディフェクトセクタではないセクタS)の数:GO
OD_SECを求める。 GOOD_SEC=SEC_TRK−SCNT(2) =10−3 =7
【0050】そして、ステップS213では、目的のセ
クタの位置情報:HLBA=001Fから、ステップS
212で得たディフェクトエリア(ii)の直前のトラ
ックTにおける最後尾のセクタS3のLBA:MAXL
BA.CYL(1)=0006を引き、これを各トラッ
クTの有効セクタの数:GOOD_SEC=7で割る。
これにより、商:WORK1=3、余り:WORK2=
4が得られる。すると、ステップS214では、ステッ
プS213で得た商:WORK1=3が、Entry
(2)におけるトラックカウント:TCNT(2)=5
よりも小さいので、目的のセクタがディフェクトエリア
(ii)内に位置することがわかる。この場合、ステッ
プS215に進み、目的のセクタの、暫定のシリンダ番
号:HLBA.CYLとして、 を得る。また、ステップS213で得た余り:WORK
2=4が「0」ではないので、ステップS217で、目
的のセクタのシリンダ番号:HLBA.CYLとして、 を得る。
クタの位置情報:HLBA=001Fから、ステップS
212で得たディフェクトエリア(ii)の直前のトラ
ックTにおける最後尾のセクタS3のLBA:MAXL
BA.CYL(1)=0006を引き、これを各トラッ
クTの有効セクタの数:GOOD_SEC=7で割る。
これにより、商:WORK1=3、余り:WORK2=
4が得られる。すると、ステップS214では、ステッ
プS213で得た商:WORK1=3が、Entry
(2)におけるトラックカウント:TCNT(2)=5
よりも小さいので、目的のセクタがディフェクトエリア
(ii)内に位置することがわかる。この場合、ステッ
プS215に進み、目的のセクタの、暫定のシリンダ番
号:HLBA.CYLとして、 を得る。また、ステップS213で得た余り:WORK
2=4が「0」ではないので、ステップS217で、目
的のセクタのシリンダ番号:HLBA.CYLとして、 を得る。
【0051】さらに、ステップS213で得た余り:W
ORK2=4が、このENTRY(2)における先頭の
ディフェクトセクタS1のセクタ番号:SEC(2)=
2より大きいので、目的のセクタのセクタ番号:HLB
A.SECは、 HLBA.SEC=HLBA.SEC+SCNT(2)−1 =4+3−1 =6 となる。このようにして、ホスト装置20から指定され
た目的のセクタSoの位置情報:HLBA=001Fに
対応するパラメータ情報CHSは、(シリンダ番号・ヘ
ッド番号・セクタ番号)=(4・0・6)となる。
ORK2=4が、このENTRY(2)における先頭の
ディフェクトセクタS1のセクタ番号:SEC(2)=
2より大きいので、目的のセクタのセクタ番号:HLB
A.SECは、 HLBA.SEC=HLBA.SEC+SCNT(2)−1 =4+3−1 =6 となる。このようにして、ホスト装置20から指定され
た目的のセクタSoの位置情報:HLBA=001Fに
対応するパラメータ情報CHSは、(シリンダ番号・ヘ
ッド番号・セクタ番号)=(4・0・6)となる。
【0052】さて、図9は、発明者が、複数のハードデ
ィスクドライブ装置をサンプリングし、従来の手法であ
る点登録方式におけるディフェクトマップのデータ量に
対し、同じく従来の手法である線登録方式におけるディ
フェクトマップのデータ量(図9(a))と、本実施の
形態における2次元登録方式におけるディフェクトマッ
プのデータ量(図9(b))とを比較したものである。
ここで、同一のハードディスクドライブ装置を対象とし
て、点登録方式、線登録方式、2次元登録方式の計3通
りのディフェクトマップを生成し、各ハードディスクド
ライブ装置で点登録方式のディフェクトマップのデータ
量を100%として、これに対する圧縮率を算出した。
すると、図9(a)に示した線登録方式のディフェクト
マップは、従来の線登録方式のディフェクトマップに対
し、そのデータ量が10%〜100%の範囲にわたって
圧縮されていることがわかる。これに対し、図9(b)
に示した本実施の形態における2次元登録方式のディフ
ェクトマップは、従来の線登録方式のディフェクトマッ
プに対し、そのデータ量が0%〜70%の範囲にわたっ
て圧縮されており、図9(a)に示した線登録方式のデ
ィフェクトマップに比較しても、その分布範囲、ピーク
ともに、より高い圧縮率側に移行していることがわか
る。なお、この図9は、あくまでも発明者が任意に抽出
した所定台数のハードディスクドライブ装置を対象とし
て行なったサンプリングの結果であり、当然のことなが
ら、サンプリングする対象が異なれば、圧縮率の分布も
図9に示したものとは異なってくる。
ィスクドライブ装置をサンプリングし、従来の手法であ
る点登録方式におけるディフェクトマップのデータ量に
対し、同じく従来の手法である線登録方式におけるディ
フェクトマップのデータ量(図9(a))と、本実施の
形態における2次元登録方式におけるディフェクトマッ
プのデータ量(図9(b))とを比較したものである。
ここで、同一のハードディスクドライブ装置を対象とし
て、点登録方式、線登録方式、2次元登録方式の計3通
りのディフェクトマップを生成し、各ハードディスクド
ライブ装置で点登録方式のディフェクトマップのデータ
量を100%として、これに対する圧縮率を算出した。
すると、図9(a)に示した線登録方式のディフェクト
マップは、従来の線登録方式のディフェクトマップに対
し、そのデータ量が10%〜100%の範囲にわたって
圧縮されていることがわかる。これに対し、図9(b)
に示した本実施の形態における2次元登録方式のディフ
ェクトマップは、従来の線登録方式のディフェクトマッ
プに対し、そのデータ量が0%〜70%の範囲にわたっ
て圧縮されており、図9(a)に示した線登録方式のデ
ィフェクトマップに比較しても、その分布範囲、ピーク
ともに、より高い圧縮率側に移行していることがわか
る。なお、この図9は、あくまでも発明者が任意に抽出
した所定台数のハードディスクドライブ装置を対象とし
て行なったサンプリングの結果であり、当然のことなが
ら、サンプリングする対象が異なれば、圧縮率の分布も
図9に示したものとは異なってくる。
【0053】上述したように、ハードディスクドライブ
装置10の記録ディスク11上のディフェクトセクタの
位置情報として生成されるディフェクトマップを、ディ
フェクトセクタの開始点の位置情報:PLBA(i)
と、ディフェクトセクタが記録ディスク11の径方向に
おいて連続するトラック数:TCNT(i)と、ディフ
ェクトセクタが記録ディスク11の周方向において連続
するセクタ数:SCNT(i)とで登録する構成とし
た。これにより、記録ディスク11の傷等によるディフ
ェクトセクタ群を、従来のような点登録方式や線登録方
式ではなく、面状に2次元登録することができる。その
結果、大きなディフェクトセクタ群を1つのデータで表
すことが可能となり、ディフェクトマップ全体のディフ
ェクトセクタ群の数を減らしてそのデータ量を圧縮する
ことが可能となる。したがって、記録ディスク11が高
密度化しても、これに伴ってディフェクトマップのデー
タ量が大幅に増大してメモリ17の処理用データ格納領
域17cを圧迫するのを防ぐことができ、ハードディス
クドライブ装置10のパフォーマンス低下を避けること
ができる。
装置10の記録ディスク11上のディフェクトセクタの
位置情報として生成されるディフェクトマップを、ディ
フェクトセクタの開始点の位置情報:PLBA(i)
と、ディフェクトセクタが記録ディスク11の径方向に
おいて連続するトラック数:TCNT(i)と、ディフ
ェクトセクタが記録ディスク11の周方向において連続
するセクタ数:SCNT(i)とで登録する構成とし
た。これにより、記録ディスク11の傷等によるディフ
ェクトセクタ群を、従来のような点登録方式や線登録方
式ではなく、面状に2次元登録することができる。その
結果、大きなディフェクトセクタ群を1つのデータで表
すことが可能となり、ディフェクトマップ全体のディフ
ェクトセクタ群の数を減らしてそのデータ量を圧縮する
ことが可能となる。したがって、記録ディスク11が高
密度化しても、これに伴ってディフェクトマップのデー
タ量が大幅に増大してメモリ17の処理用データ格納領
域17cを圧迫するのを防ぐことができ、ハードディス
クドライブ装置10のパフォーマンス低下を避けること
ができる。
【0054】なお、このような効果を有効に得るには、 記録ディスク11の同一表面で、ディフェクトセクタ
が、トラックTが並ぶ方向(径方向)に連続し、かつ各
トラックTにおけるディフェクトセクタの連続数(セク
タカウント:SCNT(i))が同一である。 ディフェクトセクタが2次元登録されたディフェクト
エリア(ii)には、他のディフェクトセクタが存在し
ない。 という2つの条件を満たしているのが好ましい。これ
は、やの条件を満たさなければ、ディフェクトマッ
プを構成するディフェクトセクタ群の数が増えることに
なり、ディフェクトマップのデータ量が増大するからで
ある。したがって、このような、の条件を満たすよ
うに、ディフェクトセクタの設定を行なうことも有効で
ある。つまり、実際に存在するディフェクトセクタだけ
でなく、やの条件を満たすように、その周辺の有効
なセクタSまでをディフェクトセクタとして設定してし
まうのである。
が、トラックTが並ぶ方向(径方向)に連続し、かつ各
トラックTにおけるディフェクトセクタの連続数(セク
タカウント:SCNT(i))が同一である。 ディフェクトセクタが2次元登録されたディフェクト
エリア(ii)には、他のディフェクトセクタが存在し
ない。 という2つの条件を満たしているのが好ましい。これ
は、やの条件を満たさなければ、ディフェクトマッ
プを構成するディフェクトセクタ群の数が増えることに
なり、ディフェクトマップのデータ量が増大するからで
ある。したがって、このような、の条件を満たすよ
うに、ディフェクトセクタの設定を行なうことも有効で
ある。つまり、実際に存在するディフェクトセクタだけ
でなく、やの条件を満たすように、その周辺の有効
なセクタSまでをディフェクトセクタとして設定してし
まうのである。
【0055】なお、上記実施の形態では、記録ディスク
11に対する磁気ヘッド12のシーク方式、つまり記録
ディスク11に対するABAの設定方式を何ら具体的に
挙げていないが、例えば、ABAの順にしたがって磁気
ヘッド12をシークさせたときに、図10(a)に示す
ように、例えば磁気ヘッド12が記録ディスク11の表
面をその外周側から内周側に順次シークした後、記録デ
ィスク11の裏面側に移り、その内周側から外周側にシ
ーク、さらに次の記録ディスク11の表面を外周側から
内周側にシークする、といった方式としても良い。ま
た、他の方式としては、図10(b)に示すように、磁
気ヘッド12が記録ディスク11の表面を外周側から内
周側に所定数のトラックT分だけシークした後、その裏
側に移って内周側から外周側にシーク、これを繰り返し
た後、さらに内側に移って同様のシークを繰り返す、と
いった方式、図10(c)に示すように、トラックT毎
に磁気ヘッド12を切り換えていく方式等とすることも
可能である。これ以外にも、本発明の主旨を逸脱しない
限り、上記実施の形態で挙げた構成を取捨選択したり、
他の構成に適宜変更することが可能である。
11に対する磁気ヘッド12のシーク方式、つまり記録
ディスク11に対するABAの設定方式を何ら具体的に
挙げていないが、例えば、ABAの順にしたがって磁気
ヘッド12をシークさせたときに、図10(a)に示す
ように、例えば磁気ヘッド12が記録ディスク11の表
面をその外周側から内周側に順次シークした後、記録デ
ィスク11の裏面側に移り、その内周側から外周側にシ
ーク、さらに次の記録ディスク11の表面を外周側から
内周側にシークする、といった方式としても良い。ま
た、他の方式としては、図10(b)に示すように、磁
気ヘッド12が記録ディスク11の表面を外周側から内
周側に所定数のトラックT分だけシークした後、その裏
側に移って内周側から外周側にシーク、これを繰り返し
た後、さらに内側に移って同様のシークを繰り返す、と
いった方式、図10(c)に示すように、トラックT毎
に磁気ヘッド12を切り換えていく方式等とすることも
可能である。これ以外にも、本発明の主旨を逸脱しない
限り、上記実施の形態で挙げた構成を取捨選択したり、
他の構成に適宜変更することが可能である。
【0056】
【発明の効果】以上説明したように、本発明によれば、
ディフェクトマップのデータ量を抑え、記録ディスクの
高密度化を図ってもデータのリード/ライト時のパフォ
ーマンスの低下を防ぐことが可能となる。
ディフェクトマップのデータ量を抑え、記録ディスクの
高密度化を図ってもデータのリード/ライト時のパフォ
ーマンスの低下を防ぐことが可能となる。
【図1】 本実施の形態におけるコンピュータ装置の構
成を示す図である。
成を示す図である。
【図2】 ハードディスクドライブ装置を構成する記録
ディスクにおいて、セクタの位置を特定するためのシリ
ンダ番号・ヘッド番号・セクタ番号のパラメータ情報を
示す図である。
ディスクにおいて、セクタの位置を特定するためのシリ
ンダ番号・ヘッド番号・セクタ番号のパラメータ情報を
示す図である。
【図3】 ディフェクトセクタが存在するセクタの具体
例を示す図である。
例を示す図である。
【図4】 ディフェクトマップのテーブルの例である。
【図5】 データのリード/ライトを実行する時の処理
の流れを示す図である。
の流れを示す図である。
【図6】 ハードディスクドライブ装置において、ディ
フェクトマップを参照してリード/ライトを実行すべき
目的のセクタを特定するための処理の流れを示す図であ
る。
フェクトマップを参照してリード/ライトを実行すべき
目的のセクタを特定するための処理の流れを示す図であ
る。
【図7】 図6に続く処理の流れを示す図である。
【図8】 図7に続く処理の流れを示す図である。
【図9】 ディフェクトマップのデータ量を、従来の点
登録方式、線登録方式と比較する図である。
登録方式、線登録方式と比較する図である。
【図10】 磁気ヘッドのシーク方式の例を示す図であ
る。
る。
【図11】 記録ディスク上に傷がついたセクタを示す
図である。
図である。
10…ハードディスクドライブ装置(記憶部、ディスク
ドライブ装置)、11…記録ディスク、12…磁気ヘッ
ド、13…ヘッドアセンブリ、14…コントローラ、1
5…ボイスコイルモータ、16…MPU、17…メモ
リ、17b…ディフェクトマップ用データ格納領域(デ
ィフェクトセクタ位置情報保持部)、20…ホスト装置
(ホスト部)、22…セクタ情報処理部(セクタ特定
部)、S…セクタ、T…トラック
ドライブ装置)、11…記録ディスク、12…磁気ヘッ
ド、13…ヘッドアセンブリ、14…コントローラ、1
5…ボイスコイルモータ、16…MPU、17…メモ
リ、17b…ディフェクトマップ用データ格納領域(デ
ィフェクトセクタ位置情報保持部)、20…ホスト装置
(ホスト部)、22…セクタ情報処理部(セクタ特定
部)、S…セクタ、T…トラック
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.7 識別記号 FI テーマコート゛(参考) G11B 20/18 572 G11B 20/18 572B 572F (72)発明者 安東 治男 神奈川県藤沢市桐原町1番地 日本アイ・ ビー・エム株式会社 藤沢事業所内 (72)発明者 黒田 尚 神奈川県藤沢市桐原町1番地 日本アイ・ ビー・エム株式会社 藤沢事業所内 (72)発明者 横江 祐司 神奈川県藤沢市桐原町1番地 日本アイ・ ビー・エム株式会社 藤沢事業所内 (72)発明者 佐藤 寿晃 神奈川県藤沢市桐原町1番地 日本アイ・ ビー・エム株式会社 藤沢事業所内 Fターム(参考) 5B018 GA04 HA21 KA15 MA12 5B065 BA01 EA19 5D044 AB01 BC01 CC05 DE12 DE62 DE65 DE66 EF05 FG19 GK12 HL02
Claims (15)
- 【請求項1】 データが格納される複数のセクタを有す
る記録ディスクを備えた記憶部と、 前記記憶部に対しデータのリード/ライトを命令するホ
スト部と、を備え、 前記記憶部は、前記記録ディスクのセクタのうち、デー
タのリード/ライトの対象外として設定された特定のセ
クタについて、前記特定のセクタの範囲を前記記録ディ
スクの表面に沿った2次元方向のパラメータで示すセク
タ範囲情報を有することを特徴とするコンピュータ装
置。 - 【請求項2】 前記セクタ範囲情報は、前記特定のセク
タの範囲の基準となる位置と、前記特定のセクタが前記
記録ディスクの周方向に連続する数と、前記特定のセク
タが前記記録ディスクの径方向に連続する数と、を含む
ことを特徴とする請求項1記載のコンピュータ装置。 - 【請求項3】 前記特定のセクタは、使用不可能なセク
タとして登録されるディフェクトセクタであることを特
徴とする請求項1記載のコンピュータ装置。 - 【請求項4】 前記ホスト部は、前記記録ディスクのセ
クタについての第一の位置情報を有し、前記記憶部に対
してデータのリード/ライトを命令するときには、デー
タをリード/ライトすべき目的のセクタを前記第一の位
置情報に基づいて指定し、 前記記憶部は、前記ホスト部からの命令に基づいてデー
タをリード/ライトするときには、前記第一の位置情報
に前記セクタ範囲情報を加味した第二の位置情報を取得
し、前記第二の位置情報に基づいて前記目的のセクタを
特定することを特徴とする請求項1記載のコンピュータ
装置。 - 【請求項5】 前記第一の位置情報は、前記ホスト部側
で保持する論理アドレスであり、 前記第二の位置情報は、物理アドレスであることを特徴
とする請求項1記載のコンピュータ装置。 - 【請求項6】 データを記録する複数のセクタを有し、
スピンドルモータにより回転駆動される記録ディスク
と、 前記記録ディスクに対してデータを読み書きするための
ヘッドを有し、当該ヘッドを前記記録ディスクの表面に
沿ってシークさせるヘッドアセンブリと、 外部から入力される命令に基づいて、データのリード/
ライト対象となる前記記録ディスクのセクタに前記ヘッ
ドが対向するよう、前記ヘッドアセンブリのシークを制
御するコントローラと、を備え、 前記コントローラは、前記記録ディスク上でデータのリ
ード/ライトが禁じされたディフェクトセクタの位置情
報を有するディフェクトセクタ位置情報保持部と、 データをリード/ライトする命令が外部から入力された
ときに、前記ディフェクトセクタの位置情報を参照し、
データのリード/ライト対象となるセクタを特定するセ
クタ特定部と、を有し、 前記位置情報は、前記ディフェクトセクタが前記記録デ
ィスクの周方向に連続する数および径方向に連続する数
を含むことを特徴とするディスクドライブ装置。 - 【請求項7】 前記ディフェクトセクタ位置情報保持部
は、前記ディスクドライブ装置における処理用データを
格納するメモリ中に設定され、 前記ディフェクトセクタの位置情報は、前記記録ディス
クに格納され、前記ディスクドライブ装置の起動時に前
記記録ディスクから読み出されて前記メモリ上に展開さ
れることを特徴とする請求項6記載のディスクドライブ
装置。 - 【請求項8】 前記位置情報は、前記記録ディスク上の
セクタにおいて、前記記録ディスクの周方向または径方
向の少なくとも一方に複数のディフェクトセクタが連続
するとき、これら複数のディフェクトセクタが1つのブ
ロックとして登録されていることを特徴とする請求項6
記載のディスクドライブ装置。 - 【請求項9】 記録ディスクに対するデータのリード/
ライト制御方法であって、 予め、前記記録ディスク上における無効セクタが存在す
る範囲の情報を、前記無効セクタが前記記録ディスクの
周方向に連続するセクタ数と前記記録ディスクの径方向
に隣接するトラック数とを含んで登録しておき、 外部からデータのリード/ライトを実行すべきセクタの
指定を受ける指定受け付け段階と、 前記無効セクタが存在する範囲の情報を参照し、指定を
受けた前記セクタの物理アドレスを取得する位置情報取
得段階と、 取得された前記物理アドレスに基づき、指定された前記
セクタに対してデータのリード/ライトを実行するリー
ド/ライト実行段階と、を備えることを特徴とするデー
タのリード/ライト制御方法。 - 【請求項10】 前記指定受け付け段階では、前記記録
ディスクの無効セクタを考慮しない論理アドレスによっ
て、外部からセクタの指定を受けることを特徴とする請
求項9記載のデータのリード/ライト制御方法。 - 【請求項11】 前記位置情報取得段階は、前記記録デ
ィスクのセクタを所定の順序でサーチし、指定されたセ
クタの直前の無効セクタが存在する範囲の情報において
前記トラック数が1であるとき、指定された前記セクタ
の論理アドレスと、前記セクタまでの無効セクタの数
と、を加算して、前記セクタの物理アドレスを取得する
ことを特徴とする請求項10記載のデータのリード/ラ
イト制御方法。 - 【請求項12】 前記位置情報取得段階は、前記記録デ
ィスクのセクタを所定の順序でサーチし、指定されたセ
クタの直前の無効セクタが存在する範囲の情報において
前記トラック数が2以上で、かつ指定された前記セクタ
が、前記直前の無効セクタが存在する範囲に含まれない
とき、指定された前記セクタの論理アドレスと、前記セ
クタまでの無効セクタの数と、を加算して、前記セクタ
の物理アドレスを取得することを特徴とする請求項10
載のデータのリード/ライト制御方法。 - 【請求項13】 記録ディスクに形成されたセクタにお
けるディフェクトセクタの位置を示すディフェクトマッ
プの登録方法であって、 前記記録ディスクのセクタに対し、所定の基準を満たさ
ないセクタをディフェクトセクタとして設定する段階
と、 前記記録ディスクの周方向または径方向の少なくとも一
方に連続するディフェクトセクタに対し、先頭のディフ
ェクトセクタの位置、前記ディフェクトセクタが前記記
録ディスクのトラック上で連続するセクタ数、前記ディ
フェクトセクタが前記記録ディスクの径方向に連続する
トラック数、を含む情報により、連続する前記ディフェ
クトセクタを1つのブロックとしてディフェクトマップ
に登録する段階と、を含むことを特徴とするディフェク
トマップの登録方法。 - 【請求項14】 前記トラック数が2以上であるとき、
前記セクタ数を各トラック間で同一の値として、前記デ
ィフェクトマップに登録することを特徴とする請求項1
3記載のディフェクトマップの登録方法。 - 【請求項15】 前記トラック数が2以上であるとき、
同一トラック上にディフェクトセクタのブロックが2以
上存在しないよう、前記ディフェクトマップに登録する
ことを特徴とする請求項13記載のディフェクトマップ
の登録方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001059941A JP2002268829A (ja) | 2001-03-05 | 2001-03-05 | コンピュータ装置、ディスクドライブ装置、データのリード/ライト制御方法、ディフェクトマップの登録方法 |
US10/075,928 US6850379B2 (en) | 2001-03-05 | 2002-02-14 | Method for registering a defect map within a hard disk drive |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2001059941A JP2002268829A (ja) | 2001-03-05 | 2001-03-05 | コンピュータ装置、ディスクドライブ装置、データのリード/ライト制御方法、ディフェクトマップの登録方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2002268829A true JP2002268829A (ja) | 2002-09-20 |
Family
ID=18919436
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2001059941A Pending JP2002268829A (ja) | 2001-03-05 | 2001-03-05 | コンピュータ装置、ディスクドライブ装置、データのリード/ライト制御方法、ディフェクトマップの登録方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US6850379B2 (ja) |
JP (1) | JP2002268829A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100524937B1 (ko) * | 2002-12-12 | 2005-10-31 | 삼성전자주식회사 | 하드디스크상의 임의 방향 스크래치 처리 장치 및 방법 |
JP2007193919A (ja) * | 2006-01-20 | 2007-08-02 | Hitachi Global Storage Technologies Netherlands Bv | メディア・ドライブ及びメディアの欠陥位置を登録するディフェクト・マップを生成する方法 |
US7660062B2 (en) | 2003-10-01 | 2010-02-09 | Hitachi Global Storage Technologies Netherlands B.V. | Media drive, processing method for recording data onto a medium, processing method for data read from a medium, and method for controlling a process for reading data from a medium |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7047438B2 (en) * | 2002-11-21 | 2006-05-16 | Hitachi Global Storage Technologies Netherlands B.V. | Accommodation of media defect growth on a data storage medium through dynamic remapping |
JP2006085789A (ja) * | 2004-09-15 | 2006-03-30 | Hitachi Global Storage Technologies Netherlands Bv | 磁気ディスクの欠陥登録の方法及び磁気ディスク装置 |
US20060064386A1 (en) * | 2004-09-20 | 2006-03-23 | Aaron Marking | Media on demand via peering |
US11734393B2 (en) | 2004-09-20 | 2023-08-22 | Warner Bros. Entertainment Inc. | Content distribution with renewable content protection |
US7139145B1 (en) * | 2004-09-23 | 2006-11-21 | Western Digital Technologies, Inc. | Cluster-based defect detection testing for disk drives |
JP2007193876A (ja) * | 2006-01-18 | 2007-08-02 | Hitachi Global Storage Technologies Netherlands Bv | 記録ディスク・ドライブ及びその欠陥領域管理方法 |
US8572302B1 (en) | 2006-10-13 | 2013-10-29 | Marvell International Ltd. | Controller for storage device with improved burst efficiency |
KR20120039985A (ko) * | 2010-10-18 | 2012-04-26 | 삼성전자주식회사 | 기록매체에 대한 리드 또는 라이트 처리 방법, 파라미터 조정 방법, 이를 적용한 저장 장치, 컴퓨터 시스템 및 저장매체 |
US8493681B1 (en) | 2010-11-23 | 2013-07-23 | Western Digital Technologies, Inc. | Disk drive generating map of margin rectangles around defects |
US8964320B1 (en) | 2010-12-09 | 2015-02-24 | Western Digital Technologies, Inc. | Disk drive defect scanning by writing consecutive data tracks and skipping tracks when reading the data tracks |
US8711500B1 (en) * | 2011-06-24 | 2014-04-29 | Western Digital Technologies, Inc. | Disk drive to enable defect margining |
US8619529B1 (en) | 2012-03-22 | 2013-12-31 | Western Digital Technologies, Inc. | Methods and devices for enhanced adaptive margining based on channel threshold measure |
US10008286B2 (en) | 2014-11-07 | 2018-06-26 | Elwha Llc | Self-testing data storage devices and methods |
US9368152B1 (en) | 2014-11-25 | 2016-06-14 | Seagate Technology Llc | Flexible virtual defect padding |
JP2019050066A (ja) * | 2017-09-07 | 2019-03-28 | 株式会社東芝 | ハードディスク装置および制御方法 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE69024255T2 (de) * | 1989-05-11 | 1996-05-15 | Mitsubishi Electric Corp | Defektprüfvorrichtung für scheibenförmigen Datenaufzeichnungsträger |
JP2824864B2 (ja) * | 1990-07-12 | 1998-11-18 | 日立電子エンジニアリング株式会社 | ディスク欠陥検査装置 |
JPH06187800A (ja) * | 1992-12-17 | 1994-07-08 | Mitsubishi Electric Corp | 記憶素子の不良モード解析装置 |
MY112118A (en) * | 1993-12-23 | 2001-04-30 | Hitachi Global Storage Tech Netherlands B V | System and method for skip-sector mapping in a data recording disk drive. |
US6088818A (en) * | 1997-01-22 | 2000-07-11 | International Business Machines Corporation | Data read apparatus and data read method |
JP3132754B2 (ja) * | 1997-09-08 | 2001-02-05 | インターナショナル・ビジネス・マシーンズ・コーポレ−ション | 記録装置、記録媒体及び記録制御方法 |
US6154858A (en) * | 1998-04-17 | 2000-11-28 | International Business Machines Corporation | In situ method and apparatus for detecting surface defects to identify handling damage in a disk drive |
US6212647B1 (en) * | 1998-06-02 | 2001-04-03 | Hewlett-Packard Company | Systems and methods to perform defect management to block addressable storage media |
US6281676B1 (en) * | 1998-12-10 | 2001-08-28 | International Business Machines Corporation | Rigid disk surface defect detection and classification |
-
2001
- 2001-03-05 JP JP2001059941A patent/JP2002268829A/ja active Pending
-
2002
- 2002-02-14 US US10/075,928 patent/US6850379B2/en not_active Expired - Fee Related
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100524937B1 (ko) * | 2002-12-12 | 2005-10-31 | 삼성전자주식회사 | 하드디스크상의 임의 방향 스크래치 처리 장치 및 방법 |
US7660062B2 (en) | 2003-10-01 | 2010-02-09 | Hitachi Global Storage Technologies Netherlands B.V. | Media drive, processing method for recording data onto a medium, processing method for data read from a medium, and method for controlling a process for reading data from a medium |
US7746586B2 (en) | 2003-10-01 | 2010-06-29 | Hitachi Global Storage Technologies Netherlands B.V. | Media drive, processing method for recording data onto a medium, processing method for data read from a medium, and method for controlling a process for reading data from a medium |
JP2007193919A (ja) * | 2006-01-20 | 2007-08-02 | Hitachi Global Storage Technologies Netherlands Bv | メディア・ドライブ及びメディアの欠陥位置を登録するディフェクト・マップを生成する方法 |
US7562270B2 (en) | 2006-01-20 | 2009-07-14 | Hitachi Global Storage Technologies Netherlands B.V. | Medium drive and method of generating a defect map for registering positions of defects on a medium |
Also Published As
Publication number | Publication date |
---|---|
US20020122266A1 (en) | 2002-09-05 |
US6850379B2 (en) | 2005-02-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2002268829A (ja) | コンピュータ装置、ディスクドライブ装置、データのリード/ライト制御方法、ディフェクトマップの登録方法 | |
US6779081B2 (en) | Apparatus and method for defragmentation in disk storage system | |
US8443167B1 (en) | Data storage device employing a run-length mapping table and a single address mapping table | |
JP3132754B2 (ja) | 記録装置、記録媒体及び記録制御方法 | |
US7472219B2 (en) | Data-storage apparatus, data-storage method and recording/reproducing system | |
US6735678B2 (en) | Method and apparatus for disc drive defragmentation | |
US8001134B2 (en) | Method for performing an external (disk-based) sort of a large data file which takes advantage of “presorted” data already present in the input | |
JP2010027134A (ja) | 磁気ディスク装置及び同装置におけるデータリフレッシュ方法 | |
JP2010033578A (ja) | データ管理方法、記録媒体及びデータ保存システム | |
US20030056060A1 (en) | Adaptive bi-directional write skip masks in a data storage device | |
JP2006277737A (ja) | アドレス予測機能をもつ不揮発性記憶装置 | |
US6868477B2 (en) | Method and apparatus for optimizing skip mask operations in a disc drive | |
JP2007193439A (ja) | 不揮発性キャッシュメモリを用いる記憶装置とその制御方法 | |
US6301644B1 (en) | Method for managing defect sectors of information storage medium, and apparatus for use with the method | |
JP2012138154A (ja) | 磁気ディスク装置及び同装置におけるディスクアクセス方法 | |
US20060129716A1 (en) | Data storage device and buffer control method thereof | |
US5940242A (en) | Method for determining a position of track-zero and mapping tracks according thereto | |
US6862150B1 (en) | Information storage device and defect information management method | |
US6701465B1 (en) | Method and apparatus for management of defect information in a disk system | |
JP3851723B2 (ja) | ディスク記憶装置及び同装置におけるセグメントキャッシュ制御方法 | |
JP4869416B2 (ja) | 磁気ディスク装置及び同装置におけるデータリフレッシュ方法 | |
JP4470471B2 (ja) | 記録再生装置及び方法、並びに記録再生システム | |
JP3969809B2 (ja) | 記憶装置におけるデータバッファの管理方法 | |
KR101072730B1 (ko) | 기록 재생 장치 및 기록 방법 | |
JP2009199665A (ja) | データ記憶装置及びデータ記憶装置におけるデータ管理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20031218 |