(57)【要約】【課題】ＨＤＤの起動時間を短縮する。【解決手段】本発明の一態様にかかるＨＤＤは、ＰＯＲ（Power On Reset）処理において、ヘッド・セレクション・テストとマグネティック・レコーディング・テストとを実行する。過去のＰＯＲ処理において、予め正確なテスト・データを、スキューをつけて磁気ディスクの各記録面に書き込んでおく。ヘッド・セレクション・テストは、スキューをもったテスト・データを読み出して、読み出したデータが正確なデータであるかを確認する。これによって、ヘッド・セレクション・テストを実行することで、ヘッド・テスト時間を短縮することができる。【選択図】図５
2007226857.tif 000002
【特許請求の範囲】
【請求項１】
１もしくは複数の記録面を備える、１もしくは複数のディスクと、
前記１もしくは複数の記録面にアクセスする複数のヘッドと、
外部からのトリガに応答して、そのトリガより前に書き込まれており前記複数のヘッドのそれぞれに対応してスキューがついた各テスト・データを、前記複数のヘッドを順次選択して読み出し、ヘッド・セレクション・テストを実行する、コントローラと、
を備えるディスク・ドライブ装置。
【請求項２】
前記１もしくは複数のディスクは、複数の記録面を有し、
前記複数のヘッドのそれぞれは、前記複数の記録面のそれぞれに対応し、
前記コントローラは、前記外部からのトリガに応答して、前記複数の記録面の同一シリンダの各データ・トラックに前記トリガより前に書き込まれておりスキューがついた各テスト・データを、前記複数のヘッドを順次選択して読み出し、ヘッド・セレクション・テストを実行する、請求項１に記載のディスク・ドライブ装置。
【請求項３】
前記各データ・トラックの複数のデータ・セクタに、前記テスト・データが書き込まれている、請求項２に記載のディスク・ドライブ装置。
【請求項４】
前記各データ・トラックにおける各テスト・データに対して、他のデータ・トラックの前記予め定められたデータ・セクタ数先に、前記テスト・データが書き込まれており、
前記コントローラは、ヘッドを切り替えて、一つ前に読み出したテスト・データから予め定められたセクタ数先のテスト・データを読み出す、
請求項３に記載のディスク・ドライブ装置。
【請求項５】
前記各データ・トラックの全データ・セクタに、前記テスト・データが書き込まれている、請求項２に記載のディスク・ドライブ装置。
【請求項６】
前記テスト・データは、対応するヘッドを特定するデータと、前記ヘッド・セレクション・テストを表すデータと、を備える、請求項２に記載のディスク・ドライブ装置。
【請求項７】
前記コントローラは、前記ヘッド・セレクション・テストの後に、前記複数の記録面それぞれに、前記ヘッドを切り替えながらデータを書き込み、さらに、前記ヘッドを切り替えながらその書き込まれたデータを読み出して書き込みデータの確認を行う、請求項２に記載のディスク・ドライブ装置。
【請求項８】
前記コントローラは、前記ヘッド・セレクション・テストの後に、前記複数の記録面の同一シリンダの各データ・トラックに、前記ヘッドを切り替えながらスキューを持ったデータを書き込み、さらに、前記ヘッドを切り替えながらその書き込まれたデータを読み出して書き込みデータの確認を行う、請求項２に記載のディスク・ドライブ装置。
【請求項９】
前記コントローラは、外部からのトリガに応答した初期設定処理において前記ヘッド・セレクション・テストを実行し、そのヘッド・セレクション・テストを実行する初期設定処理よりも以前の初期設定処理において、前記テスト・データを前記各データ・トラックに書き込む、請求項２に記載のディスク・ドライブ装置。
【請求項１０】
前記コントローラは、前記複数ヘッドから正確に選択したヘッドが正確にデータの書き込みを行うことを確認する確認テストを実行した後に、前記テスト・データを前記各データ・トラックに書き込む、請求項９に記載のディスク・ドライブ装置。
【請求項１１】
前記確認テストのテスト方法は、前記ヘッド・セレクション・テストと異なる、請求項１０に記載のディスク・ドライブ装置。
【請求項１２】
前記テスト・データを書き込んだ後に、前記ヘッド・セレクション・テストを行うことなく前記初期設定処理を終了する、請求項１０に記載のディスク・ドライブ装置。
【請求項１３】
ディスク・ドライブ装置における初期設定方法であって、
１もしくは複数の記録面において、複数のヘッドを使用してテスト・データを予め書き込み、
前記テスト・データを書き込んだ後に受けた外部からのトリガに応答して、初期設定処理を開始し、
前記初期設定処理において、前記複数のヘッドのそれぞれに対応してスキューがついた各テスト・データを前記複数のヘッドを順次選択して読み出し、ヘッド・セレクション・テストを実行する、方法。
【請求項１４】
前記ディスク・ドライブ装置は複数の記録面を備え、
複数の記録面のそれぞれにおいて、各記録面に対応したヘッドを使用して、同一シリンダのデータ・トラックにテスト・データを予め書き込み、
前記テスト・データを書き込んだ後に受けた外部からのトリガに応答して、初期設定処理を開始し、
前記初期設定処理において、前記複数の記録面の各データ・トラックにおけるスキューをもった位置にある各テスト・データを、前記複数のヘッドを順次選択して読み出し、ヘッド・セレクション・テストを実行する、請求項１３に記載の方法。
【請求項１５】
さらに、前記ヘッド・セレクション・テストの後に、前記複数の記録面の同一シリンダの各データ・トラックに、前記ヘッドを切り替えながらスキューを持ったデータを書き込み、さらに、前記ヘッドを切り替えながらその書き込まれたデータを読み出して書き込みデータの確認を行う、請求項１４に記載の方法。
【請求項１６】
前記複数ヘッドから選択したヘッドが正確にデータの書き込みを行うことを確認する確認テストを実行した後に、前記テスト・データを前記各データ・トラックに書き込む、請求項１４に記載の方法。
【請求項１７】
前記確認テストのテスト方法は前記ヘッド・セレクション・テストと異なる、請求項１６に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はディスク・ドライブ装置及びそのヘッド・テスト方法に関し、特に、ディスク・ドライブ装置におけるヘッド・セレクション・テストに関する。
【背景技術】
【０００２】
ディスク・ドライブ装置として、光ディスクや光磁気ディスクなどの様々な態様の記録ディスクを使用する装置が知られているが、その中で、ハードディスク・ドライブ（Hard Disk Drive：ＨＤＤ）は、コンピュータの記憶装置として広く普及し、現在のコンピュータ・システムにおいて欠かすことができない装置の一つとなっている。更に、コンピュータにとどまらず、動画像記録再生装置、カーナビゲーション・システム、あるいはデジタル・カメラなどで使用されるリムーバブルメモリなど、ＨＤＤの用途は、その優れた特性により益々拡大している。
【０００３】
ＨＤＤは一つもしくは複数の磁気ディスク、各磁気ディスクの各記録面において同心円状に形成された複数のデータ・トラックを有している。各データ・トラックはアドレス情報を有する複数のサーボ・データとユーザ・データを含む複数のデータ・セクタが記録されている。揺動するアクチュエータに支持されたヘッド・スライダのヘッド素子部が、サーボ・データのアドレス情報に従って所望のデータ・セクタにアクセスすることによって、データ・セクタへのデータ書き込み及びデータ・セクタからのデータ読み出しを行うことができる。
【０００４】
上述のように、現在、コンシューマ・エレクトロニクス（Consumer Electronics：ＣＥ）に大容量記憶装置としてＨＤＤが搭載されるケースが増えてきている。その導入において、他の記憶装置と比較される問題の一つとしてCOME READY TIMEの遅延が挙げられる。一般に、ＨＤＤにおけるCOME READY TIMEとは、電源がＯＮにセットされてから、その装置のインターフェースがREADYになるまでの時間と捉えられている。しかし、特にコンシューマ・エレクトロニクスにおいて問題とされるのは、ＨＤＤのリード／ライトの準備が整うまでの時間である。これは、ＣＥデバイス自身の起動のためには、そこに組み込まれている記憶装置の情報が必要不可欠だからである。本明細書においては、この時間をCOME READY TIMEとする。
【０００５】
ＨＤＤは、その電源が投入されると、初期設定処理であるＰＯＲ処理（Power On Reset処理）を実行する。このＰＯＲ処理が正常に終了すると、ホストからコマンドを受けることが可能となる。つまり、このＰＯＲ処理の時間がCOME READY TIMEに対応する。なお、ＰＯＲ処理において解決不能なエラーが発生すると、ＨＤＤ自体がフェイルとなって使用不可となる。
【０００６】
典型的なＰＯＲ処理において、ＨＤＤはライト・テストを実行する。ライト・テストは、磁気ディスクへの正確なデータ書き込み及びデータ読み出しをテストする。多くのＨＤＤは、その記憶容量を上げるため、複数の記録面と各記録面に対応した複数のヘッド・スライダとを備えている。このため、ライト・テストは二つの点についてチェックを行う。一つには、正確に目的のヘッド素子部を選択していることをチェックする（ヘッド・セレクション・チェック）。他の一つとして、選択したヘッド素子部が実際にデータの書き込み及び読み出しを行うことができるかをチェックする（マグネティック・レコーディング・チェック）。
【０００７】
COME READY TIMEを短縮するために、ライト・テストの実行時間を短縮することが望ましい。その一つの手法は、例えば、特許文献１に開示されている。特許文献１に開示の技術は、定期的又は不定期に、ヘッド素子部の診断を実施して、障害の発生を検知する。ヘッド素子部の診断処理時間を短縮するために、ヘッド素子部毎の診断領域を磁気ディスク上において、ヘッド切り替え処理時間分ずらして配置する。これにより、磁気ディスクが１回転する間に複数のヘッド素子部にて診断領域の書き込みまたは読み出しを実施し、診断処理時間を短縮することができる。
【特許文献１】特開２００３−２６３７０３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかし、ヘッド切り替え処理時間分ずらして、磁気ヘッドによるテスト・データの書き込み及び読み出しを行う場合、正確にヘッド・セレクション・チェックを行うことができない場合がある。具体的に、ＨＤＤがヘッド０とヘッド１の二つのヘッド素子部を備えるケースについて説明する。各ヘッド素子部で記録面へのデータの書き込みを順次行い、その後に各ヘッド素子部でデータの読み出しを順次行う。各記録面に書き込むデータの円周方向位置は、ヘッド素子部の切り替え処理時間分ずれている。
【０００９】
もし、ＨＤＤが、ヘッド０の代わりに、間違えてヘッド１を選択すると、ＨＤＤは、ヘッド１でデータを書き込んだ後、もう一度ヘッド１を選択してデータを書き込む。さらに、ＨＤＤは、ヘッド０を選択するつもりでヘッド１を選択し、先に１回目に書き込んだデータを読み出す。さらに、ＨＤＤはヘッド１を選択して、２回目に書き込んだデータを読み出す。
【００１０】
ヘッド１が書き込んだ各データは、ヘッド切り替え処理時間分ずれているので、２回目のデータが１回目のデータを上書きすることがない。従って、ＨＤＤは、１回目及び２回目のデータを正確に読み出し、ヘッド・セレクションを正確に行ったと誤認識する。ヘッド素子部の誤選択は、ユーザ・データの消去、あるいは誤データのホストへの転送となる。具体的には、リード処理におけるヘッド素子部の誤選択は、ホストが要求したデータと異なるデータを読み出し、その誤データをホストに転送してしまう。また、ライト処理におけるヘッド素子部の誤選択は、保存しておくべきユーザ・データを上書きしてしまうとともに、ホストからのデータ読み出し要求に対して、誤データをホストに転送することになる。このため、ヘッド素子部の誤選択を確実に防止することが必要とされる。
【００１１】
ヘッド・セレクション・テストを確実に行う方法として、ヘッド０とヘッド１とが、同一のシリンダの同一データ・セクタに、それぞれ固有のデータを書き込むことが考えられる。セレクション・エラーがある場合、２回目のデータが１回目のデータを上書きする。上述と同様のミス・セレクションがある場合、ＨＤＤがヘッド０のデータ読み出しを試みた場合に、ヘッド１のデータを読み出すため、セレクション・エラーを検出することができる。
【００１２】
しかし、各ヘッド素子部が、同一データ・セクタにデータを書き込む場合、データ書き込み及びデータ読み出しのために、ヘッド素子部の数の２倍の磁気ディスク回転が必要とされる。これは、COME READY TIMEの増加につながる。特に、小型のＨＤＤは磁気ディスク回転の安定化時間が短く、COME READY TIMEに占めるヘッド・テスト時間が大きいため、ヘッド・テスト時間の短縮が重要な問題となっている。
【課題を解決するための手段】
【００１３】
本発明の一つの態様に係るディスク・ドライブ装置は、１もしくは複数の記録面を備える、１もしくは複数のディスクと、前記１もしくは複数の記録面にアクセスする複数のヘッドと、外部からのトリガに応答して、そのトリガより前に書き込まれており前記複数のヘッドのそれぞれに対応してスキューがついた各テスト・データを、前記複数のヘッドを順次選択して読み出し、ヘッド・セレクション・テストを実行する、コントローラを備える。外部からのトリガの前に予め書き込まれているテスト・データを使用することによって、スキューがついた各テスト・データを読み出すことで正確なヘッド・セレクション・テストを行うことができ、そのテスト時間を短縮することができる。
【００１４】
前記１もしくは複数のディスクは、複数の記録面を有し、前記複数のヘッドのそれぞれは、前記複数の記録面のそれぞれに対応し、前記コントローラは、前記外部からのトリガに応答して、前記複数の記録面の同一シリンダの各データ・トラックに前記トリガより前に書き込まれておりスキューがついた各テスト・データを、前記複数のヘッドを順次選択して読み出し、ヘッド・セレクション・テストを実行することができる。複数記録面及びそれに対応したヘッドを備えるディスク・ドライブ装置において、正確なヘッド・セレクション・テストを行うことができ、そのテスト時間を短縮することができる。
【００１５】
前記各データ・トラックの複数のデータ・セクタに、前記テスト・データが書き込まれていることが好ましい。これによって、外部からのトリガに応答して迅速にテストを開始することができる。さらに、前記各データ・トラックにおける各テスト・データに対して、他のデータ・トラックの前記予め定められたデータ・セクタ数先に、前記テスト・データが書き込まれており、前記コントローラは、ヘッドを切り替えて、一つ前に読み出したテスト・データから予め定められたセクタ数先のテスト・データを読み出すことが好ましい。これによって、いずれのテスト・データからテストを開始しても、迅速にテストを行うことができる。
【００１６】
前記各データ・トラックの全データ・セクタに、前記テスト・データが書き込まれていることが好ましい。これによって、外部からのトリガに応答して即テストを開始することができるとともに、所望のスキューをもったテスト・データを読み出すことができる。
【００１７】
前記テスト・データは、対応するヘッドを特定するデータと、前記ヘッド・セレクション・テストを表すデータと、を備えることが好ましい。これによってヘッド選択エラーを検出することができるとともに、テストにおいて目的のシリンダを読み出していることを確認することができる。
【００１８】
前記コントローラは、前記ヘッド・セレクション・テストの後に、前記複数の記録面それぞれに、前記ヘッドを切り替えながらデータを書き込み、さらに、前記ヘッドを切り替えながらその書き込まれたデータを読み出して書き込みデータの確認を行うことが好ましい。これによって、ヘッド・テストをより十全に行うことができる。
【００１９】
前記コントローラは、前記ヘッド・セレクション・テストの後に、前記複数の記録面の同一シリンダの各データ・トラックに、前記ヘッドを切り替えながらスキューを持ったデータを書き込み、さらに、前記ヘッドを切り替えながらその書き込まれたデータを読み出して書き込みデータの確認を行うことが好ましい。これによって、ヘッド・テストをより十全に行うことができるとともに、書き込みデータの確認を迅速に行うことができる。
【００２０】
前記コントローラは、外部からのトリガに応答した初期設定処理において前記ヘッド・セレクション・テストを実行し、そのヘッド・セレクション・テストを実行する初期設定処理よりも以前の初期設定処理において、前記テスト・データを前記各データ・トラックに書き込むことが好ましい。初期設定処理でテスト・データを書き込むことで、容易に確実なテスト・データ書き込みを行うことができる。
【００２１】
さらに、前記コントローラは、前記複数ヘッドから正確に選択したヘッドが正確にデータの書き込みを行うことを確認する確認テストを実行した後に、前記テスト・データを前記各データ・トラックに書き込むことが好ましい。これによって、テスト・データが正確に書き込まれていることを保証することができる。
【００２２】
さらに、前記確認テストのテスト方法は、前記ヘッド・セレクション・テストと異なることが好ましい。テスト・データの書き込みのためのテストとそれを使用するテストとが異なることで、より確実なヘッド・テストを行うことができる。あるいは、前記テスト・データを書き込んだ後に、前記ヘッド・セレクション・テストを行うことなく前記初期設定処理を終了することが好ましい。別のヘッド・テストが行われており、処理時間を短縮することができる。
【００２３】
本発明の他の態様は、ディスク・ドライブ装置における初期設定方法であって、１もしくは複数の記録面において、複数のヘッドを使用してテスト・データを予め書き込み、前記テスト・データを書き込んだ後に受けた外部からのトリガに応答して、初期設定処理を開始し、前記初期設定処理において、前記複数のヘッドのそれぞれに対応してスキューがついた各テスト・データを前記複数のヘッドを順次選択して読み出し、ヘッド・セレクション・テストを実行する。
【００２４】
前記ディスク・ドライブ装置は複数の記録面を備え、複数の記録面のそれぞれにおいて、各記録面に対応したヘッドを使用して、同一シリンダのデータ・トラックにテスト・データを予め書き込み、前記テスト・データを書き込んだ後に受けた外部からのトリガに応答して、初期設定処理を開始し、前記初期設定処理において、前記複数の記録面の各データ・トラックにおけるスキューをもった位置にある各テスト・データを、前記複数のヘッドを順次選択して読み出し、ヘッド・セレクション・テストを実行することができる。
【００２５】
さらに、前記ヘッド・セレクション・テストの後に、前記複数の記録面の同一シリンダの各データ・トラックに、前記ヘッドを切り替えながらスキューを持ったデータを書き込み、さらに、前記ヘッドを切り替えながらその書き込まれたデータを読み出して書き込みデータの確認を行うことが好ましい。
【００２６】
前記複数ヘッドから選択したヘッドが正確にデータの書き込みを行うことを確認する確認テストを実行した後に、前記テスト・データを前記各データ・トラックに書き込むことが好ましい。また、前記確認テストのテスト方法は前記ヘッド・セレクション・テストと異なることが好ましい。
【発明の効果】
【００２７】
本発明によれば、ヘッド・セレクション・テストを正確に行うことができるとともに、そのテスト時間を短縮することができる。
【発明を実施するための最良の形態】
【００２８】
以下に、本発明を適用可能な実施の形態を説明する。説明の明確化のため、以下の記載及び図面は、適宜、省略及び簡略化がなされている。又、各図面において、同一要素には同一の符号が付されており、説明の明確化のため、必要に応じて重複説明は省略されている。
【００２９】
以下においては、ディスク・ドライブ装置の一例であるハードディスク・ドライブ（ＨＤＤ）を例として、本発明の実施形態を説明する。本形態のＨＤＤは、外部からのトリガの例である電源投入あるいはホストからのコマンドに応答して、初期設定処理としてのＰＯＲ（Power On Reset）処理を実行する。ＰＯＲ処理において、ＨＤＤは、ヘッド・テストを実行する。ヘッド・テストは、ヘッド・セレクション・テストとマグネティック・レコーディング・テストとを含む。ヘッド・セレクション・テストは、複数のヘッド素子部から、正確に目的のヘッド素子部を選択していることをチェックする。マグネティック・レコーディング・テストは、選択されたヘッド素子部が、磁気ディスクの所望の位置に正確にデータを書き込み、さらにそのデータを読み出すことがきるかをチェックする。
【００３０】
本形態のＨＤＤは、ＰＯＲ処理の前に、予め正確なテスト・データを磁気ディスクの各記録面に書き込んでおく。このテスト・データを使用してヘッド・セレクション・テストを実行することで、ヘッド・テスト時間を短縮することができる。本発明の理解の容易化のため、本形態のＰＯＲ処理について説明する前に、まず、ＨＤＤの全体構成を説明する。
【００３１】
図１は、本実施の形態に係るＨＤＤ１の構成を模式的に示すブロック図である。図１に示すように、ＨＤＤ１は、エンクロージャ１０内に、記録ディスクの一例である磁気ディスク１１、ヘッドの一例であるヘッド素子部１２、アーム電子回路（ＡＥ：Arm Electronics）１３、スピンドル・モータ（ＳＰＭ）１４、ボイス・コイル・モータ（ＶＣＭ）１５、そしてアクチュエータ１６を備えている。本形態のＨＤＤ１は複数のヘッド素子部１２を備えており、図１においては２つのヘッド素子部１２が例示されている。
【００３２】
ＨＤＤ１は、さらに、エンクロージャ１０の外側に固定された回路基板２０を備えている。回路基板２０上には、リード・ライト・チャネル（Ｒ／Ｗチャネル）２１、モータ・ドライバ・ユニット２２、ハードディスク・コントローラ（ＨＤＣ）とＭＰＵの集積回路（以下、ＨＤＣ／ＭＰＵ）２３及びＲＡＭ２４などの各ＩＣを備えている。尚、各回路構成は一つのＩＣに集積すること、あるいは、複数のＩＣに分けて実装することができる。
【００３３】
外部ホスト５１からのユーザ・データは、ＨＤＣ／ＭＰＵ２３によって受信され、Ｒ／Ｗチャネル２１、ＡＥ１３を介して、ヘッド素子部１２によって磁気ディスク１１に書き込まれる。また、磁気ディスク１１に記憶されているユーザ・データはヘッド素子部１２によって読み出され、そのユーザ・データは、ＡＥ１３、Ｒ／Ｗチャネル２１を介して、ＨＤＣ／ＭＰＵ２３から外部ホスト５１に出力される。
【００３４】
磁気ディスク１１は、ＳＰＭ１４に固定されている。ＳＰＭ１４は所定の角速度で磁気ディスク１１を回転する。ＨＤＣ／ＭＰＵ２３からの制御データに従って、モータ・ドライバ・ユニット２２がＳＰＭ１４を駆動する。各ヘッド素子部１２はスライダ（不図示）に固定されている。以下において、このアセンブリをヘッド・スライダと呼ぶ。ヘッド・スライダはアクチュエータ１６の先端部に固定されている。アクチュエータ１６はＶＣＭ１５に連結され、揺動軸を中心に揺動することによって、ヘッド素子部１２（ヘッド・スライダ）を回転する磁気ディスク１１上においてその半径方向に移動する。モータ・ドライバ・ユニット２２は、ＨＤＣ／ＭＰＵ２３からの制御データ（以下、ＤＡＣＯＵＴと呼ぶ）に従ってＶＣＭ１５を駆動する。
【００３５】
ヘッド素子部１２には、磁気ディスク１１への記録データに応じて電気信号を磁界に変換するライト素子、及び磁気ディスク１１からの磁界を電気信号に変換するリード素子を備えている。ライト素子のライト電流値は、ＨＤＣ／ＭＰＵ２３がセットした制御値に従って変化する。なお、磁気ディスク１１は、１枚以上あればよく、記録面は磁気ディスク１１の片面あるいは両面に形成することができる。
【００３６】
ＡＥ１３は、ＨＤＣ／ＭＰＵ２３から指示に従って、複数のヘッド素子部１２の中から磁気ディスク１１へのアクセスを行う１つのヘッド素子部１２を選択し、選択されたヘッド素子部１２により再生される再生信号を一定のゲインで増幅（プリアンプ）し、Ｒ／Ｗチャネル２１に送る。また、Ｒ／Ｗチャネル２１からの記録信号を選択したヘッド素子部１２に送る。Ｒ／Ｗチャネル２１は、リード処理において、ＡＥ１３から供給されたリード信号を一定の振幅となるように増幅し、取得したリード信号からデータを抽出し、デコード処理を行う。読み出されるデータは、ユーザ・データとサーボ・データを含む。デコード処理されたユーザ・データは、ＨＤＣ／ＭＰＵ２３に供給される。また、ライト処理において、Ｒ／Ｗチャネル２１はＨＤＣ／ＭＰＵ２３から供給されたライト・データをコード変調し、更にコード変調されたライト・データをライト信号に変換してＡＥ１３に供給する。
【００３７】
ＨＤＣ／ＭＰＵ２３において、ＭＰＵはＲＡＭ２４にロードされたコードに従って動作する。ＨＤＤ１の起動に伴い、ＲＡＭ２４には、ＭＰＵ上で動作するコードの他、制御及びデータ処理に必要とされるデータが磁気ディスク１１あるいはＲＯＭ（不図示）からロードされる。ＨＤＣ／ＭＰＵ２３は、リード／ライト処理制御、コマンド実行順序の管理、サーボ信号を使用したヘッド素子部１２のポジショニング制御（サーボ制御）、インターフェース制御、ディフェクト管理などのデータ処理に関する必要な処理の他、ＨＤＤ１の全体制御を実行する。特に、本形態のＨＤＣ／ＭＰＵ２３は、ＰＯＲ処理の実行制御を行う。本形態のＰＯＲ処理については、後に詳述する。
【００３８】
図２は、ＨＤＤ１におけるＳＰＭ１４、磁気ディスク１１及ヘッド・スタック・アセンブリ（ＨＳＡ）の構成を模式的に示している。図２の例は、回転軸方向にスタックされた２枚の磁気ディスク１１を備え、各磁気ディスク１１はデータを記録する記録面を両面に備える。従って、ＨＤＤ１は４つの記録面１１ａ−１１ｄを備える。また、各記録面１１ａ−１１ｄに対応して、４つのヘッド・スライダ１２ａ−１２ｄを備えている。各ヘッド・スライダ１２ａ−１２ｄは、アクチュエータ１６のサスペンション１６ａ−１６ｄのそれぞれに固定されている。本明細書において、アクチュエータ１６とヘッド・スライダ１２ａ−１２ｄのアセンブリを、ＨＳＡと呼ぶ。
【００３９】
各記録面１１ａ−１１ｄに対向する各ヘッド・スライダ１２ａ−１２ｄのＡＢＳ（Air Bearing Surface）面と回転している記録面１１ａ−１１ｄとの間の空気の粘性による圧力が、サスペンション１６ａ−１６ｄによって記録面１１ａ−１１ｄ方向に加えられる圧力とバランスすることによって、各ヘッド・スライダ１２ａ−１２ｄは各記録面１１ａ−１１ｄ上を一定のギャップを置いて浮上する。なお、本形態のＨＤＤ１は複数の記録面を備えるが、１枚以上の磁気ディスク１１を備えればよく、また、記録面を磁気ディスク１１の片面もしくは両面に形成することができる。
【００４０】
上述のように、ＨＤＣ／ＭＰＵ２３は、ＰＯＲ処理を実行制御する。ＨＤＣ／ＭＰＵ２３は、ＨＤＤ１の電源投入に応答して、あるいはホスト５１からのコマンドに従ってＰＯＲ処理を実行する。ＰＯＲ処理はＨＤＤ１の初期設定処理であり、いくつかの処理工程を含む。例えば、ＰＯＲ処理は、ＲＯＭからのマイクロ・コード・ロード、各種ハードウェア診断、ＳＰＭ１４起動、磁気ディスク１１からのマイクロ・コード・ロード、サーボ・パラメータ調整、ディフェクト・テーブル・ロードなどを実行する。このほか、ＰＯＲ処理は、ヘッド・テスト（ライト・テスト）を実行する。ヘッド・テストは、正確に選択したヘッド素子部１２が正確にデータの書き込み及び読み出しを行うことをチェックする。本形態は、このヘッド・テストに特徴がある。
【００４１】
図３は、本形態のヘッド・テストの全体処理構成を示すフローチャートである。ＰＯＲ処理においてヘッド・テストを開始すると（Ｓ１１）、ＨＤＣ／ＭＰＵ２３はヘッド・セレクション・テスト（Ｓ１２）を開始する。ヘッド・セレクション・テスト（Ｓ１２）は、正確に選択したヘッド素子部１２が磁気ディスク１１にアクセスすることをチェックする。本形態はそのヘッド・セレクション・テスト（Ｓ１２）に特徴点を備える。ヘッド・セレクション・テスト（Ｓ１２）の詳細は、後述する。
【００４２】
ヘッド・セレクション・テスト（Ｓ１２）が、後述する前処理工程（Ｓ１９）で書き込まれるテスト・データを使用して各ヘッド素子部１２を正確に選択することを確認すると（Ｓ１３におけるＹＥＳ）、ＨＤＣ／ＭＰＵ２３はマグネティック・レコーディング・テストを実行する（Ｓ１４）。マグネティック・レコーディング・テスト（Ｓ１４）は、各ヘッド素子部１２が、各記録面１１ａ−１１ｄの所望位置にデータを書き込み、その書き込まれたデータを読み出して、正確にデータが書き込まれたかを確認する。
【００４３】
マグネティック・レコーディング・テスト（Ｓ１４）が、各ヘッド素子部１２が正確に各記録面１１ａ−１１ｄに正確にアクセスすることを確認すると（Ｓ１５におけるＹＥＳ）、ヘッド・テストが「パス」として終了する（Ｓ１６）。他の処理が正常終了すると、ＰＯＲ正常終了として、ＨＤＤ１はホスト５１からのコマンド受付が可能な状態となる。
【００４４】
マグネティック・レコーディング・テスト（Ｓ１４）においてエラーが検出されると（Ｓ１５におけるＮＯ）、ＨＤＣ／ＭＰＵ２３はホスト５１にフェイルの結果を送信する（Ｓ２０）。また、ヘッド・セレクション・テスト（Ｓ１２）においてエラーが発生すると（Ｓ１３におけるＮＯ）、ＨＤＣ／ＭＰＵ２３は、ヘッド・セレクション・テスト（Ｓ１２）及びマグネティック・レコーディング・テスト（Ｓ１４）とは異なる、他の態様のヘッド・テストを実行する（Ｓ１７）。
【００４５】
このテスト工程（Ｓ１７）は、ヘッド・セレクションとマグネティック・レコーディングのテストを同時に行う。このテストが正常終了すると（Ｓ１８におけるＹＥＳ）、ＨＤＣ／ＭＰＵ２３は、次のＰＯＲ処理におけるヘッド・セレクション・テストのための前処理を行う（Ｓ１９）。具体的には、ＨＤＤ１は、磁気ディスク１１の各記録面１１ａ−１１ｄにヘッド・セレクション・テスト用のテスト・データを書き込む。Ｓ１７のヘッド・テストにおいてエラーが検出されると（Ｓ１８におけるＮＯ）、ＨＤＣ／ＭＰＵ２３はホスト５１にフェイルの結果を送信する。
【００４６】
ＨＤＤ１の最初のＰＯＲ処理においては、ヘッド・セレクション・テスト（Ｓ１２）のテスト・データが書き込まれていないため、（Ｓ１７）のヘッド・セレクション・マグネティック・レコーディング・テスト及び、次のＰＯＲ処理のための前処理（Ｓ１９）が実行されて終了する。その次からのＰＯＲ処理は、エラーが起きなければ、ヘッド・セレクション・テスト（Ｓ１２）及びマグネティック・レコーディング・テスト（Ｓ１４）を実行する。ヘッド・セレクション・テスト（Ｓ１２）においてエラーが起きた場合は、ＨＤＤ１はヘッド・テスト（Ｓ１７）及びの前処理（Ｓ１９）を実行し、マグネティック・レコーディング・テスト（Ｓ１４）においてエラーが起きたときは、ＨＤＤ１はフェイルの通知をホスト５１に行う。
【００４７】
以下において、図３のフローチャートに示された、各テスト工程について詳細に説明する。まず、本形態のヘッド・セレクション・テスト（Ｓ１２）について説明する。本形態のヘッド・セレクション・テストは、図４に示すように、各記録面１１ａ−１１ｄの特定のシリンダに予め書き込まれているテスト・データを、各ヘッド・スライダ１２ａ−１２ｄのヘッド素子部によって読み出す。テスト・データは、記録面１１ａ−１１ｄの同一シリンダに書き込まれている。つまり、同一シリンダのデータ・トラック１１１ａ−１１１ｄに、それぞれテスト・データが書き込まれている。以下、各ヘッド・スライダ１２ａ−１２ｄのヘッド素子部を、同一の符号１２ａ−１２ｄで示す。
【００４８】
ここで、磁気ディスク・フォーマットを説明する。磁気ディスクの各記録面１１ａ−１１ｄには、磁気ディスク１１の中心から半径方向に放射状に延び、所定の角度毎に離間して形成された複数のサーボ領域と、隣り合う２つのサーボ領域間にデータ領域が形成されている。各サーボ領域には、ヘッド素子部１２ａ−１２ｄの位置決め制御を行うためのサーボ・データが記録される。各データ領域には、ユーザ・データが記録される。各記録面１１ａ−１１ｄには、半径方向に所定幅を有し、同心円状に形成された複数のデータ・トラックが形成される。
【００４９】
ユーザ・データは、データ・トラックに沿って記録される。一つのデータ・トラックは複数のデータ・セクタ（ユーザ・データの記録単位）を備えており、典型的にはサーボ領域間に複数のデータ・セクタを備える。ＨＤＤ１における各データ・セクタは、いわゆるＣＨＳアドレス、つまりシリンダ番号、ヘッド番号及びデータ・セクタ番号を使用して特定することができる。シリンダ番号はデータ・トラック番号に対応し、ヘッド番号は記録面番号に対応する。なお、データ・セクタ長が大きい場合は、１データ・セクタが１サーボ領域間を越えることもある。
【００５０】
好ましくは、各データ・トラック１１１ａ−１１１ｄの全データ・セクタにテスト・データが書き込まれている。つまり、図４に示すように、各データ・トラック１１１ａ−１１１ｄの全データ・セクタが、テスト・データが書き込まれたデータ・セクタ１１２である。テスト・データは、各ヘッド素子部（ヘッド・スライダ）１２ａ−１２ｄを特定するヘッドＩＤ（HEAD ID）１１３と、ヘッド・セレクション・テストのためのデータであることを示すセレクション・テストＩＤ（SELECTION TEST ID）１１４とを備えている。各データ・トラック１１１ａ−１１１ｄに書き込まれるテスト・データは、同一のテスト・データでよい。また、セレクション・テストＩＤ１１４は、各データ・トラック１１１ａ−１１１ｄにおいて同一でよい。
【００５１】
ＨＤＣ／ＭＰＵ２３は、各データ・トラック１１１ａ−１１１ｄから読み出したデータを、予め備えているヘッドＩＤ及びセレクション・テストＩＤと比較して、同一であることを確認する。読み出したデータが、選択したヘッド素子部に対応するテスト・データである場合、ＨＤＣ／ＭＰＵ２３は、ヘッド・セレクションを正確に行ったと判定する。ここで重要なことは、各データ・トラック１１１ａ−１１１ｄには、正確なヘッドＩＤを備えるテスト・データが書き込まれていることが保証されていることである。
【００５２】
図３に示すように、このテスト・データは、ヘッド・セレクション・テスト（Ｓ１２）の前処理（Ｓ１９）において各データ・トラック１１１ａ−１１１ｄにおいて書き込まれる。この前処理の前に、ＨＤＤ１は他の態様のヘッド・テストを行い（Ｓ１７）、ヘッド・セレクション及びマグネティック・レコーディングが正確に行われたことを確認している。従って、正確なテスト・データが、各データ・トラック１１１ａ−１１１ｄに書き込まれていることが保証される。
【００５３】
図５は、ヘッド・セレクション・テスト（Ｓ１２）におけるヘッド選択方法を模式的に示している。図５は、各データ・セクタ１１５ａ−１１５ｄを、各ヘッド素子部１２ａ−１２ｄが正確に読み出した例を示している。ＨＤＣ／ＭＰＵ２３は、最初にヘッド素子部１２ａを選択して、データ・トラック１１１ａのデータ・セクタ１１５ａを読み出す。次に、ＨＤＣ／ＭＰＵ２３は、ヘッド素子部１２ｂを使用してデータ・トラック１１１ｂのデータ・セクタ１１５ｂを読み出す。
【００５４】
データ・セクタ１１５ｂは、データ・セクタ１１５ａに対してスキューをもった位置にある。このスキューは、ヘッド切り替え時間以上であって、それと実質的に同一であることが好ましい。ヘッド切り替え時間は、一つのデータ・トラックのデータ・セクタを読み出してから、他のデータ・トラックのデータ・セクタの読み出しを開始することができるまでの時間である。図５の例においては、ヘッド切り替え時間は２データ・セクタに相当する。
【００５５】
続いて、ＨＤＣ／ＭＰＵ２３はヘッド素子部１２ｃを使用してデータ・トラック１１１ｃのデータ・セクタ１１５ｃを読み出す。データ・セクタ１１５ｃとデータ・セクタ１１５ｂとの間の位置関係は、データ・セクタ１１５ｃとデータ・セクタ１１５ｂとの間の位置関係と同様である。さらに、ＨＤＣ／ＭＰＵ２３はヘッド素子部１２ｄを使用してデータ・トラック１１１ｄのデータ・セクタ１１５ｄを読み出す。ヘッド間のスキューについては、上述と同様である。
【００５６】
上述のように、それぞれがスキューをもった位置にある各データ・トラックのデータ・セクタを順次読み出すことによって、ヘッド・セレクション・テストのテスト時間を短縮することができる。上述の例においては、磁気ディスク１回転内で、ヘッド・セクション・テストを終了することができる。また、本例においては各データ・トラックの全データ・セクタにテスト・データが書き込まれているので、ヘッド位置にかかわらず最も早いタイミングでテストを開始することができる。
【００５７】
このように、ヘッド・セレクション・テストにおいてヘッド素子部毎にスキューを持ってデータ・リードできるのは、予め正確なテスト・データが各データ・トラックに書き込まれていることに拠る。本形態においては、ヘッド・セレクション・テスト（Ｓ１２）とは異なる態様のテスト（Ｓ１７）を使用してそれを保証することで、より正確なテストを行うことができる。
【００５８】
図５は、各データ・セクタ１１５ａ−１１５ｄを、各ヘッド素子部１２ａ−１２ｄが正確に読み出す例を示している。これに対して、いずれかのヘッド素子部が正確にテスト・データを読み出すことができない場合の例を、図６（ａ）及び（ｂ）に示す。データ読み出しエラーは、実際にヘッド素子部がターゲットのデータ・セクタを読み出すことができない場合、あるいは読み出したテスト・データがそのデータ・トラックのテスト・データでない場合を含む。図６（ａ）は、データ・トラック１１１ｂにおいて、ヘッド素子部１２ｂが、データ・セクタ１１６のテスト・データを正確に読み出すことが出来ない例を示している。
【００５９】
ヘッド素子部１２ａがデータ・セクタ１１５ａのテスト・データを読み出した後、ＨＤＣ／ＭＰＵ２３は、ヘッド素子部１２ｂによって、データ・セクタ１１６のテスト・データの読み出しを試みる。しかし、エラーのために、ＨＤＣ／ＭＰＵ２３は４データ・セクタ先のデータ・セクタ１１７ｂの読み出しを行う。外乱もしくは磁気ディスク１１上の傷などのためにエラーが繰り返しことを避けるため、複数データ・セクタ先のデータの再読み出しを行うことが好ましい。なお、４データ・セクタは一例である。ヘッド素子部１２ｂはデータ・セクタ１１７ｂのテスト・データを正確に読み出し、ＨＤＣ／ＭＰＵ２３はデータ・トラック１１１ｃのデータ・セクタ１１７ｃを、ヘッド素子部１２ｃを使用して読み出す。データ・セクタ１１７ｃとデータ・セクタ１１７ｂとの間には、上述のスキューを持たせてある。さらに、ＨＤＣ／ＭＰＵ２３はデータ・トラック１１１ｄのデータ・セクタ１１７ｄを、ヘッド素子部１２ｃを使用して読み出して、ヘッド・セレクション・テストが終了する。
【００６０】
図６（ａ）の例は、エラー発生したデータ・トラック１１１ｂからリードのリトライを開始するが、図６（ｂ）に示すように、リトライを最初のデータ・トラック１１１ａから始めることもできる。データ・トラック１１１ｂのデータ・セクタ１１６の読み出しに失敗すると、ＨＤＣ／ＭＰＵ２３はヘッド素子部１２ａを選択して、データ・セクタ１１７ａの読み出しを行う。その後、スキューを持って配置されているデータ・セクタ１１７ｂ、１１７ｃ及び１１７ｄを、ＨＤＣ／ＭＰＵ２３は読み出していく。本例においては、データ・トラックの全セクタにテスト・データが書き込まれているので、ヘッド位置に関わらずテスト・データのリード処理を開始することができ、テスト時間の短縮に寄与する。
【００６１】
なお、規定数リトライを繰り返しても正確にテスト・データを読み出すことができない場合、ヘッド・セレクション・テストはエラーとなり（図３、Ｓ１３におけるＮＯ）ＨＤＣ／ＭＰＵ２３は、ヘッド・セレクションとマグネティック・レコーディングの同時テスト工程に移行する。
【００６２】
ヘッド・セレクション・テスト（Ｓ１２）の具体的工程を、図７のフローチャートを参照して説明する。ヘッド・セレクション・テストが開始すると（Ｓ１２１）、ＨＤＣ／ＭＰＵ２３は、各変数に初期値を設定する（Ｓ１２２）。設定する変数は、リトライ回数RETRY_CNT、テスト・シリンダTEST_CYL、テスト・ヘッドTEST_HD及びテスト・セクタTEST_SCTである。
【００６３】
リトライ回数RETRY_CNTには、リード・リトライを行う最大数MAX.RETRY#が設定され、テスト・シリンダTEST_CYLには、テスト・シリンダ番号TEST_CYLINDER#が設定される。テスト・シリンダTEST_CYLは、典型的には、各記録面においてユーザ・データが書き込まれることがない管理領域内に設定される。テスト・ヘッドTEST_HDには、最初にテストするヘッド素子部として最大ヘッド番号MAX.HEAD#が代入され（図２の例において３）、テスト・セクタTEST_SCTには、テストするシリンダTEST_CYLINDER#において読み出すデータ・セクタ番号S#が設定される。
【００６４】
ＨＤＣ／ＭＰＵ２３は、各変数TEST_CYL、TEST_HD及びTEST_SCTが示すデータ・セクタのデータを読み出し、さらに、その読み出したテスト・データを確認する（Ｓ１２３）。確認は、読み出したデータと、そのデータ・セクタに対応する予め保存されたヘッドＩＤとセレクション・テストＩＤとを比較することで行う。比較する基準データは、磁気ディスク１１もしくはＲＯＭからロードされ、ＨＤＣ／ＭＰＵ２３のレジスタもしくはＲＡＭ２４に格納しておくことができる。この点は、以下のベリファイ処理において同様である。
【００６５】
ターゲット・セクタから正確なデータを読み出すことができた場合（Ｓ１２４におけるＹＥＳ）、ＨＤＣ／ＭＰＵ２３は、次にテストするヘッド素子部（記録面）とその記録面から読み出すデータ・セクタを設定する（Ｓ１２５）。本例においては隣接するヘッド素子部を選択し、具体的には、テスト終了したヘッド素子部の一つ前（１だけ小さい）のヘッド番号を備えるヘッド素子部を選択する。また、アクセス時間を短縮するため、ヘッド切り替え時間に相当するスキューを備えるデータ・セクタが選択される。なお、スキュー値は、予め磁気ディスク１１の管理領域などに登録されており、ＨＤＣ／ＭＰＵ２３はそのスキュー値を使用する。
【００６６】
設定されたヘッド番号が０である場合（Ｓ１２６におけるＹＥＳ）、全てのヘッド素子部及び記録面のテストが終了しているため、ヘッド・セレクション・テスト（Ｓ１２）は正常終了する（Ｓ１２７）。ヘッド番号が０に達していない場合（Ｓ１２６におけるＮＯ）、選択されたヘッド素子部及びデータ・セクタについて、データ読み出し及び読み出しデータの確認処理を実行する。ヘッド番号が０に達するまで、つまり、全てのヘッド素子部のテストが終了するまで、このループを繰り返す。なお、各ヘッド素子部に対応したシリンダは、全て同一である。
【００６７】
データを正確に読み出すことができない場合（Ｓ１２４におけるＮＯ）、ＨＤＣ／ＭＰＵ２３は、そのヘッド素子部の同一データ・トラックにおける異なるデータ・セクタの読み出しを行う。本例においては、ＨＤＣ／ＭＰＵ２３は、４データ・セクタ先のデータ・セクタを読み出すべきターゲット・セクタとして設定する（Ｓ１２８）。さらに、ＨＤＣ／ＭＰＵ２３は、リトライ回数を示す変数RETRY_CNTから１を引く（Ｓ１２８）。
【００６８】
変数RETRY_CNTが０に達し、規定数のリトライが繰り返された場合（Ｓ１２９におけるＹＥＳ）、ＨＤＣ／ＭＰＵ２３は、ヘッド・セレクション・テストをフェイルと判定する（Ｓ１３０）。リトライ回数が規定数に達してない場合（Ｓ１２９におけるＮＯ）、設定されたターゲット・データ・セクタについて、ＨＤＣ／ＭＰＵ２３はリード・ベリファイを実行する。以下、上述の処理を繰り返していく。
【００６９】
上述のように、テスト・データは、データ・トラックの全データ・セクタに書き込まれていることが好ましい。しかし、各データ・トラックにおいて、離間した複数のデータ・セクタにテスト・データを書き込むことができる。図８（ａ）はリード・ベリファイ・エラーが起きることなくヘッド・セレクション・テストが終了するケース、図８（ｂ）はデータ・トラック１１１ｂにおいてエラー発生する例を示している。
【００７０】
図８（ａ）及び図８（ｂ）は、６データ・セクタ毎にテスト・データが書き込まれている例を示しており、テスト・データが書き込まれているデータ・セクタ１１２の間には５つのテスト・データが書き込まれていないデータ・セクタ１１８が存在する。データ・トラック間においては、テスト・データが書き込まれているデータ・セクタ１１２は、スキューを持って選択されている。つまり、隣接する二つのデータ・トラックにおいて、隣接するデータ・セクタ１１２間の間隔は３データ・セクタである。２データ・セクタはヘッド切り替え時間に相当する。
【００７１】
図８（ａ）を参照して、ＨＤＣ／ＭＰＵ２３は、データ・トラック１１１ａのデータ・セクタ１１５ａをヘッド素子部１２ａで読み出し、読み出したデータの確認を行う。正確なデータ読み出しを確認すると、ＨＤＣ／ＭＰＵ２３はデータ・トラック１１１ｂのデータ・セクタ１１５ｂをヘッド素子部１２ｂで読み出し、読み出したデータの確認を行う。以下、データ・トラック１１１ｃ、１１１ｄについても同様の処理を実行する。
【００７２】
図８（ｂ）に示すように、データ・トラック１１１ｂのデータ・セクタ１１６でリード・ベリファイ・エラーが発生すると、ＨＤＣ／ＭＰＵ２３は同一のデータ・トラック１１１ｂのデータ・セクタ１１７ｂの次のテスト・データを読み出す。以下、データ・トラック１１１ｂ、１１１ｃ、１１１ｄの各データ・セクタ１１７ｂ、１１７ｃ、１１７ｄを読み出し、確認処理を行う。なお、ＨＤＣ／ＭＰＵ２３は、図６（ａ）の例のように、エラー発生したデータ・トラックから再リード処理を行ってもよい。
【００７３】
次に、マグネティック・レコーディング・テスト（Ｓ１４）の具体的処理を説明する。本形態のマグネティック・レコーディング・テストは、各データ・トラック１１１ａ−１１１ｄに順次データを書き込み、その後、各データ・トラック１１１ａ−１１１ｄの書き込みデータを順次読み出す。ＨＤＣ／ＭＰＵ２３は、この読み出したデータと予め保存してある書き込みデータとを比較して、正確にデータが書き込み・読み出されたことの確認処理を行う。本例において、マグネティック・レコーディング・テストが使用するシリンダはヘッド・セレクション・テストと同一である。書き込むデータは、ヘッド・セレクション・テストで使用するヘッドＩＤ及びセレクション・テストＩＤに加えて、テスト毎に生成される乱数を含む。ヘッド・セレクション・テストで必要とされるデータ・サイズは１セクタのサイズより小さいので、余っているエリアにテスト毎に生成される乱数を埋め込み、リード時に確認を行う。これによって、確実にベリファイ処理を行うことができる。
【００７４】
マグネティック・レコーディング・テスト（Ｓ１４）において、各データ・トラック１１１ａ−１１１ｄへのアクセスは、スキューをもって実行される。つまり、図９に示すように、ＨＤＣ／ＭＰＵ２３は、各データ・トラック１１１ａ−１１１ｄにおいて、ヘッド切り替え時間に相当するスキューを持って選択されたデータ・セクタ１１９ａ−１１９ｄにデータを書き込む。データ書き込みは、磁気ディスク１１の１回転内で終了することができる。
【００７５】
さらに、データ書き込みの後、ＨＤＣ／ＭＰＵ２３は、データ・セクタ１１９ａ−１１９ｄを順次読み出し、読み出したデータの確認処理を実行する。データ読み出しに必要な時間はデータ書き込みと同様であって、磁気ディスク１回転内で全データ・セクタ１１９ａ−１１９ｄを読み出すことができる。ＨＤＣ／ＭＰＵ２３は、各データ・セクタ１１９ａ−１１９ｄを読み出す毎に、正確なデータを読み出したかを確認する。このように、スキューをもって選択された各データ・トラックのデータ・セクタにアクセスすることによって、マグネティック・レコーディング・テストのテスト時間を短縮することができる。
【００７６】
マグネティック・レコーディング・テスト（Ｓ１４）の具体的工程を、図１０のフローチャートを参照して説明する。マグネティック・レコーディング・テストが開始すると（Ｓ１４１）、ＨＤＣ／ＭＰＵ２３は、各変数に初期値を設定する（Ｓ１４２）。設定する変数は、リトライ回数RETRY_CNT、テスト・シリンダTEST_CYL、テスト・ヘッドTEST_HD及びテスト・セクタTEST_SCTである。
【００７７】
リトライ回数RETRY_CNTには、リトライを行う最大数MAX.RETRY#が代入され、テスト・シリンダTEST_CYLには、テスト・シリンダ番号TEST_CYLINDER#が代入される。テスト・ヘッドTEST_HDには、最大ヘッド番号MAX.HEAD#が代入され、テスト・セクタTEST_SCTには、テストするシリンダTEST_CYLINDER#において読み出すデータ・セクタ番号S#が代入される。
【００７８】
ＨＤＣ／ＭＰＵ２３は、各変数TEST_CYL、TEST_HD及びTEST_SCTが示すデータ・セクタへのライト処理を行う（Ｓ１４３）。ライト・データは、上述のように、ヘッドＩＤ及びセレクション・テストＩＤ及びテスト毎に生成される乱数である。ライト・アボートとならず、データをターゲット・セクタに書きこむことができると（Ｓ１４４におけるＹＥＳ）、ＨＤＣ／ＭＰＵ２３は、次にテストするヘッド素子部（TEST_HD）の設定（Ｓ１４５）及びその記録面から読み出すデータ・セクタ（TEST_SCT）の設定を行う（Ｓ１４６）。
【００７９】
本例においては、ライト終了したヘッド素子部の一つ前（１だけ小さい）のヘッド番号を備えるヘッド素子部を選択する（Ｓ１４５）。つまり、隣接するヘッド素子部を選択する。また、アクセス時間を短縮するため、ヘッド切り替え時間に相当するスキューを備えるデータ・セクタが選択される（Ｓ１４６）。なお、スキュー値は、予め磁気ディスク１１の管理領域などに登録されており、ＨＤＣ／ＭＰＵ２３はそのスキュー値を使用する。
【００８０】
設定されたヘッド番号が０である場合（Ｓ１４７におけるＹＥＳ）、全てのヘッド素子部によるデータ書き込みが終了しているため、各データ・トラックへのデータ書き込みは正常に終了する。ヘッド番号が０に達していない場合（Ｓ１４７におけるＮＯ）、上記選択されたヘッド素子部による選択されたデータ・セクタへのデータ書き込みを実行する。ヘッド番号が０に達するまで、つまり、全てのヘッド素子部のデータ書き込みが終了するまで、このループを繰り返す。
【００８１】
ヘッド素子部によるデータ書き込みにおいてライト・アボートが起きた場合（Ｓ１４４におけるＮＯ）、ＨＤＣ／ＭＰＵ２３はライト・リトライを実行する。具体的には、ＨＤＣ／ＭＰＵ２３は最初に選択したヘッド素子部に戻って、ライト処理を初めから繰り返す。ＨＤＣ／ＭＰＵ２３は、最初のヘッド素子部（MAX.HEAD#）によって、同一データ・トラックの異なるデータ・セクタへのデータ書き込みを試みる。本例においては、ＨＤＣ／ＭＰＵ２３は予め定められたセクタ数先のデータ・セクタへのライト処理を実行する。本例においては、４データ・セクタ先のデータ・セクタへのライト処理を実行する（Ｓ１５５）。このため、ライト・リトライの前に、ＨＤＣ／ＭＰＵ２３は、変数リトライ回数RETRY_CNTから１を減じ、変数テスト・セクタTEST_SCTに４を加算し、テスト・ヘッドTEST_HDにMAX.HEAD#を代入する（Ｓ１５５）。
【００８２】
変数リトライ回数RETRY_CNTが０を示す場合（Ｓ１５６におけるＹＥＳ）、規定数のリトライを実行したことを意味するので、ＨＤＣ／ＭＰＵ２３はマグネティック・レコーディング・テストにおいて回復不能なエラーがあると判定し、テスト・フェイルの判定を行う（Ｓ１５６）。リトライ数が規定数に達していない場合（Ｓ１５６におけるＮＯ）、Ｓ１４４〜Ｓ１４７に示したように、最初のヘッド素子部（MAX.HEAD#）からライト処理を実行する。
【００８３】
データ書き込み処理が終了すると、ＨＤＤ１は、次にデータ読み出し処理を実行する。ＨＤＣ／ＭＰＵ２３は、テスト・ヘッドTEST_HDにMAX.HEAD#を代入し（Ｓ１４８）、ライト処理と同様に、ヘッド番号MAX.HEAD#のヘッド素子部から、リード・ベリファイ処理を開始する（Ｓ１４９）。リード・ベリファイ処理が成功すると（Ｓ１５０におけるＹＥＳ）、次のヘッド素子部を選択し（Ｓ１５１）、そのヘッド素子部が読み出すデータ・セクタを設定する（Ｓ１５２）。選択するヘッド素子部のヘッド番号は、一つ前のヘッド素子部の番号から１を減じたものであり、隣接するヘッド素子部である（Ｓ１５１）。また、読み出すデータ・セクタは、一つまえの読み出しデータ・セクタに対して、データ書き込み処理において付されたスキューずれたものとなる（Ｓ１５２）。
【００８４】
ヘッド番号が０である場合（Ｓ１５３におけるＹＥＳ）、すでに全ヘッド素子部によるリード・ベリファイ処理が正常に終了しているので、ＨＤＣ／ＭＰＵ２３はマグネティック・レコーディング・テストを正常終了する（Ｓ１５４）。ヘッド番号が０でない場合（Ｓ１５３におけるＮＯ）、リード・ベリファイを終了していないヘッド素子部が存在するので、ＨＤＣ／ＭＰＵ２３は処理を続行する。
【００８５】
いずれかのヘッド素子部によるリード・ベリファイ処理においてエラーが発生した場合（Ｓ１５０におけるＮＯ）、ＨＤＣ／ＭＰＵ２３は、マグネティック・レコーディング・テストの最初のステップ、つまりデータ書き込み処理から再開する。このとき、データを書き込むデータ・セクタ番号は、エラー発生時のデータ・セクタ番号に予め定められた数だけ異なる。具体的には、ライト処理においてエラー発生した場合と同様に、４データ・セクタだけ離れたデータ・セクタを選択する（Ｓ１５５）。以下の処理は、上述と同様である。
【００８６】
次に、ヘッド・セレクションとマグネティック・レコーディングの同時テスト（Ｓ１７）の説明を行う。このテストは、図１１に示すように、各データ・トラック１１１ａ−１１１ｄの同一セクタ１２０ａ−１２０ｄにデータを書き込み、さらに、その書き込んだ各データを読み出し、確認処理を実行する。書き込むデータは、各ヘッド素子部を特定するヘッドＩＤ（HEAD ID）と、この同時テスト毎に生成される乱数（RANDOM DATA）を含む。
【００８７】
具体的には、図１１に示すように、ＨＤＣ／ＭＰＵ２３はヘッド素子部１２ａを選択して、データ・トラック１１１ａのデータ・セクタ１２０ａにデータを書き込む。次に、磁気ディスク１１が１回転するのを待って、データ・トラック１１１ｂの同一データ・セクタ１２０ｂにデータを書き込む。以後、データ・トラック１１１ｃ及びデータ・トラック１１１ｄの各同一データ・セクタ１２０ｃ、１２０ｄに、磁気ディスク１１の回転を待ってそれぞれデータを書き込む。
【００８８】
続いて、ＨＤＣ／ＭＰＵ２３は書き込んだデータの確認処理を実行する。まず、ＨＤＣ／ＭＰＵ２３はヘッド素子部１２ａを選択して、データ・トラック１１１ａのデータ・セクタ１２０ａを読み出し、そのデータが正確なデータであるか確認する。次に、磁気ディスク１１が１回転するのを待って、データ・トラック１１１ｂのデータ・セクタ１２０ｂのリード・ベリファイ処理を行う。以後、データ・トラック１１１ｃ及びデータ・トラック１１１ｄの各同一データ・セクタ１２０ｃ、１２０ｄについて、磁気ディスク１１の回転を待ってそれぞれリード・ベリファイ処理を行う。
【００８９】
各データ・トラック１１１ａ−１１１ｄの同一セクタにデータを書き込むことによって、ヘッド・セレクション・テストとマグネティック・レコーディング・テストとを同時に行うことができる。例えば、ヘッド素子部１２ａの代わりに、間違えてヘッド素子部１２ｂを選択する場合、データ・トラック１１１ａには、ヘッド素子部１２ｂに対応するデータが書き込まれる。従って、データ・トラック１１１ａの確認処理は、ヘッド素子部１２ｂに対応するデータを読み出すため、ＨＤＣ／ＭＰＵ２３がヘッド・セレクション・エラーを検出することができる。
【００９０】
上述の説明から理解されるように、エラーなく終了する場合、この同時テストは磁気ディスク８回転の時間を必要とする。一方、予め書き込まれているテスト・データを使用したヘッド・セレクション・テスト（Ｓ１２）及びマグネティック・レコーディング・テスト（Ｓ１４）は、それぞれは磁気ディスク１回転の時間と磁気ディスク２回転の時間を要する。従って、予め書き込まれているテスト・データを使用することで、５回転の時間短縮となる。
【００９１】
同時テスト（Ｓ１７）の具体的工程を、図１２のフローチャートに示す。このテストのフローチャート（図１２）と、マグネティック・レコーディング・テスト（Ｓ１４）のフローチャート（図１０）との相違は、図１０のフローチャートが、Ｓ１４６及びＳ１５２の各工程備えることである。つまり、各データ・トラック１１１ａ−１１１ｄに書き込まれるデータ・セクタが、スキューをもって配置されているか否か、そしてデータ書き込みのためにＨＤＣ／ＭＰＵ２３が磁気ディスク１１の回転を待つか否かである。従って、図１２のフローチャートの詳細説明は省略する。各工程の対応は以下の通りである。Ｓ１７１−Ｓ１７５がＳ１４１−Ｓ１４５に対応し、Ｓ１７６−Ｓ１８０がＳ１４７−Ｓ１５１に対応し、Ｓ１８１−Ｓ１８５がＳ１５３−Ｓ１５７に対応する。
【００９２】
最後に、ヘッド・セレクション・テスト（Ｓ１２）のための前処理（Ｓ１９）について説明する。この処理は、ヘッド・セレクション・テスト（Ｓ１２）のための下地データを、選択されたシリンダの各データ・トラック１１１ａ−１１１ｄに書き込む。前処理（Ｓ１９）は、最初のＰＯＲ処理、あるいは、ＰＯＲ処理におけるヘッド・セレクション・テスト（Ｓ１２）でエラーが発生した場合に実行される。書き込むデータについては上述の通りである。また、ヘッド・セレクション・テスト（Ｓ１２）におけるエラーとしては、テスト・データやサーボ・データのエラー、外乱によるヘッドのポジショニング・エラー、回路基板２０の接触不良によるセレクション・エラーなどがある。
【００９３】
図１３のフローチャートを参照して、具体的工程を説明する。ヘッド・セレクション・テストのための前処理が開始すると（Ｓ１９１）、ＨＤＣ／ＭＰＵ２３は、各変数に初期値を設定する（Ｓ１９２）。設定する変数は、テスト・データを書き込むシリンダCYL、最初にデータを書き込むヘッドHEAD及び最初にデータを書き込みデータ・セクタSCTである。変数CYLには、所定のシリンダ番号CYLINDER#が代入され、変数HEADには最大ヘッド番号MAX.HEAD#が代入され、変数SCTには０が代入される。
【００９４】
次に、ＨＤＣ／ＭＰＵ２３は、下地データとして書き込むテスト・データの設定を行う（Ｓ１９３）。具体的には、各データ・セクタは、その０ビット目からヘッド番号を特定するデータHEAD#を備える。さらに、各データ・セクタは、１６ビット目からヘッド・セレクション・テスト用のデータであることを表すデータを含み、図１３においては、ＡＢＣＤ１２３４Ｈ（１６進数）が例示されている。ＨＤＣ／ＭＰＵ２３は、設定したMAX.HEAD#のヘッド素子部によって、シリンダCYLINDER#の全データ・トラックの全セクタにテスト・データのライト処理を実行する（Ｓ１９４）。
【００９５】
このライト処理において、いずれかのデータ・セクタのデータ書き込みにおいてライト・アボートなどのエラーが発生した場合（Ｓ１９５におけるＮＯ）、そのエラー・データ・セクタへのデータ書き込みをスキップして、その次のデータ・セクタへのライト処理を開始する。具体的には、ＨＤＣ／ＭＰＵ２３は、エラーを起こしたデータ・セクタがそのトラックの最後のデータ・セクタであるかを判定する（Ｓ１９９）。最後のデータ・セクタでない場合（Ｓ１９９におけるＮＯ）、そのエラー・セクタの次のデータ・セクタを書き込みターゲット・セクタと設定して（Ｓ２００）、テスト・データのライト処理を続行する（Ｓ１９４）。
【００９６】
エラーが発生した場合には、データ・トラックの全データ・セクタにデータが書き込まれないが、エラー発生はまれであり、また、わずかな数のデータ・セクタにテスト・データが書き込まれていなくとも、ヘッド・セレクション・テストのテスト時間に実質的な影響はない。一方。エラーがおきたデータ・セクタへのリライトは、この処理の時間を増加させることになるため、処理時間短縮の点から、上述のようにスキップすることが好ましい。なお、この処理の処理時間を考慮しないのであれば、エラー・セクタへのリライト処理を行ってもよい。
【００９７】
エラー・セクタが、そのトラックの最後のデータ・セクタである場合（Ｓ１９９におけるＹＥＳ）、ＨＤＣ／ＭＰＵ２３は次のヘッド素子部を選択する（Ｓ１９６）。選択するヘッド素子部のヘッド番号は、その前のヘッド素子部のヘッド番号から１を減じたものであり、隣接ヘッドである。データ・トラックの全てのデータ・セクタに正常にテスト・データを書き込んだ場合も（Ｓ１９５におけるＹＥＳ）、同様である。
【００９８】
ＨＤＣ／ＭＰＵ２３は、以上の処理を全てのヘッド素子部について実行する（Ｓ１９７におけるＮＯによるループ）。最後のヘッド素子部によるテスト・データのライト処理が終了すると（Ｓ１９７におけるＹＥＳ）、ヘッド・セレクション・テストのための前処理が終了する（Ｓ１９８）。
【００９９】
なお、本発明は上述した実施の形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。例えば、本発明は、ＨＤＤに好適であるが、他のディスク・ドライブ装置に適用することができる。上述の各処理は、隣接ヘッド素子部を順次選択するが、ヘッド素子部の選択順序は設計によって変更することができる。例えば、ライト処理とリード処理のヘッド選択順序が異なることができる。上述においては、一つのテスト・シリンダにおいて各テストを実行するが、例えば、ヘッド・セレクション・テストとマグネティック・レコーディング・テストとを、異なるシリンダにおいて実行することができる。
【０１００】
上述の例はＰＯＲにおけるヘッド・テストを説明しているが、他の態様におけるヘッド・テストに本発明を適用することが可能である。確実なヘッド・テストを行うためには、上述の例のように、ヘッド・セレクション・テストとマグネティック・レコーディング・テストをセットで行うことが好ましいが、他の態様においてヘッド・セレクション・テストのみを行うことの可能である。
【０１０１】
上述のように、ヘッド・セレクション・テストのテスト・データは、一つ以上前のＰＯＲ処理において書き込むことが好ましいが、例えば、サーボ・ライトなどの製造工程において、そのデータを磁気ディスクに書き込んでおくことも可能である。また、上述のＨＤＤにおいては、１ヘッドが１記録面に対応するが、ＨＤＤは１記録面に複数のヘッド素子部を備え、各ヘッド素子部を上述手法に違ってテストすることができる。あるいは、２回目以降のＰＯＲ処理においてヘッド・セレクション・テスト（Ｓ１２）においてエラーが発生した場合、（Ｓ１７）の同時テスト及びその結果のチェック（Ｓ1８）をスキップしてもよい。
【図面の簡単な説明】
【０１０２】
【図１】本実施形態において、ＨＤＤの全体構成を模式的に示すブロック図である。
【図２】本実施形態において、ＨＤＤにおけるＳＰＭ、磁気ディスク及びＨＳＡの構成を模式的に示す図である。
【図３】本実施形態のヘッド・テストの全体処理構成を示すフローチャートである。
【図４】本実施形態のヘッド・セレクション・テストにおいて読み出されるテスト・データを模式的に示す図である。
【図５】本実施形態において、ヘッド・セレクション・テストにおけるヘッド選択方法を模式的に示す図である。
【図６】本実施形態のヘッド・セレクション・テストにおいて、いずれかのヘッド素子部が正確にテスト・データを読み出すことができない場合の例を模式的に示す図である。
【図７】本実施形態のヘッド・セレクション・テストの具体的工程を示すフローチャートである。
【図８】本実施形態のヘッド・セレクション・テストにおいて、読み出されるテスト・データ及びその読み出し方法の他の例を模式的に示す図である。
【図９】本実施形態のマグネティック・レコーディング・テストにおいて、アクセスするデータ・セクタ及びアクセス方法を模式的に示す図である。
【図１０】本実施形態のマグネティック・レコーディング・テストの具体的工程を示すフローチャートである。
【図１１】本実施形態のヘッド・セレクションとマグネティック・レコーディングの同時テストにおいて、アクセスするデータ・セクタ及びアクセス方法を模式的に示す図である。
【図１２】本実施形態のヘッド・セレクションとマグネティック・レコーディングの同時テストの具体的工程を示すフローチャートである。
【図１３】本実施形態において、ヘッド・セレクション・テストのためのテスト・データを次のＰＯＲの前に予め書き込む処理を示す模式的に示すフローチャートである。
【符号の説明】
【０１０３】
１０  エンクロージャ、１１  磁気ディスク、１１ａ−１１ｄ  記録面
１２  ヘッド素子部、１３  アーム・エレクトロニクス、１４  スピンドル・モータ
１５  ボイス・コイル・モータ、１６  アクチュエータ
１６ａ−１６ｄ  サスペンション、２０  回路基板、２１  Ｒ／Ｗチャネル
２２  モータ・ドライバ・ユニット、２３  ＨＤＣ／ＭＰＵ、２４  ＲＡＭ
５１  ホスト、１１１ａ−１１１ｄ  データ・トラック
【図１】
2007226857.tif 000003
【図２】
2007226857.tif 000004
【図３】
2007226857.tif 000005
【図４】
2007226857.tif 000006
【図５】
2007226857.tif 000007
【図６】
2007226857.tif 000008
【図７】
2007226857.tif 000009
【図８】
2007226857.tif 000010
【図９】
2007226857.tif 000011
【図１０】
2007226857.tif 000012
【図１１】
2007226857.tif 000013
【図１２】
2007226857.tif 000014
【図１３】
2007226857.tif 000015