(57)【要約】【課題】ディスク欠陥検査において、エラー登録すべきユーザ・データのアドレスを特定する。【解決手段】本発明の一実施形態は、通常のデータ読み取りを行う場合のターゲット・ポジションにリード素子を位置決めした状態において、ライト素子によるデータ書込み処理を実行する。データ書込み処理において予め定められたエラーが生じた場合に、そのエラーが生じたサーボ・データをターゲットとして通常のデータ書き込みを行うユーザ・データのアドレスを予想する。予想されたユーザ・データのアドレスへの通常のデータ書き込みにおいてターゲットとして使用するサーボ・データのアドレスを特定する。特定されたサーボ・データのアドレスとエラーが生じたサーボ・データのアドレスとが一致する場合、予想されたユーザ・データのアドレスをエラー登録する。【選択図】図９
2007193876.tif 000002
【特許請求の範囲】
【請求項１】
リード素子とライト素子とが記録ディスクの半径方向において異なる位置にあるヘッドを備え、前記記録ディスクに記録されたサーボ・データを前記リード素子で読み出しながら前記ヘッドの位置決めを行う記録ディスク・ドライブにおける欠陥領域管理方法であって、
通常のデータ読み取りもしくはデータ書き込みの内の一方のアクセスを行う場合のターゲット・ポジションに前記リード素子を位置決めした状態において、データ書込み処理を実行し、
前記データ書込み処理において予め定められたエラーが生じた場合に、そのエラーが生じたサーボ・データをターゲットとして通常のデータ読み取りもしくはデータ書き込みの内の他方のアクセスを行うユーザ・データのアドレスを予想し、
前記予想されたユーザ・データのアドレスへの前記他方のアクセスにおいてターゲットとして使用するサーボ・データのアドレスを特定し、
前記特定されたサーボ・データのアドレスと前記エラーが生じたサーボ・データのアドレスとを比較し、その比較結果に基づいて前記予想したユーザ・データのアドレスにより特定される領域をエラー登録する、方法。
【請求項２】
前記ユーザ・データのアドレスは、データ・トラックを特定し、
前記エラーが生じたサーボ・データのアドレス及び前記特定されたサーボ・データのアドレスは、それぞれサーボ・トラックを特定し、
前記ユーザ・データのアドレスが特定するデータ・トラックの全ての領域をエラー登録する、請求項１に記載の方法。
【請求項３】
前記ヘッドのシークを行うことなく、前記予想されたユーザ・データのアドレスから前記サーボ・データのアドレスを演算により特定する、請求項１に記載の方法。
【請求項４】
前記サーボ・データのアドレスの演算は、通常のデータ読み取り及びデータ書き込みにおいて使用する演算機能を使用する、請求項３に記載の方法。
【請求項５】
前記記録ディスクに記録されているデータ・トラック・ピッチとサーボ・トラック・ピッチとは異なる、請求項１に記載の方法。
【請求項６】
前記特定されたサーボ・データのアドレスと前記エラーが生じたサーボ・データのアドレスとが一致するまで、前記ユーザ・データのアドレスの予想及び前記サーボ・データのアドレスの特定を繰り返し、
一致した前記ユーザ・データのアドレスにより特定される領域をエラー登録する、請求項１に記載の方法。
【請求項７】
前記特定されたサーボ・データのアドレスと前記エラーが生じたサーボ・トラックのアドレスとが一致しない場合、その特定されたサーボ・データのアドレスに基づいて、そのターゲットとなるサーボ・データが前記エラーが生じたサーボ・データのトラックに近づくように、次のユーザ・データのアドレスを予想する、請求項６に記載の方法。
【請求項８】
リード素子とライト素子とが記録ディスクの半径方向において異なる位置にあるヘッドと、
前記記録ディスクの欠陥領域を格納するメモリと、
通常のデータ読み取りもしくはデータ書き込みの内の一方のアクセスを行う場合のターゲット・ポジションに前記ヘッドを位置決めした状態のデータ書込み処理において予め定められたエラーが生じた場合に、そのエラーが生じたサーボ・データをターゲットとして通常のデータ読み取りもしくはデータ書き込みの内の他方のアクセスを行うユーザ・データのアドレスを予想し、その予想されたユーザ・データのアドレスへの前記他方のアクセスにおいてターゲットとして使用するサーボ・データのアドレスを特定し、その特定されたサーボ・データのアドレスと前記エラーが生じたサーボ・データのアドレスとの比較結果に基づいて前記予想したユーザ・データのアドレスにより特定される領域を前記メモリに格納するコントローラと、
を備える記録ディスク・ドライブ。
【請求項９】
前記記録ディスクに記録されているデータ・トラック・ピッチとサーボ・トラック・ピッチとは異なる、請求項８に記載の記録ディスク・ドライブ。
【請求項１０】
前記ヘッドのシークを行うことなく、前記予想されたユーザ・データのアドレスから前記サーボ・データのアドレスを演算により特定する、請求項８に記載の記録ディスク・ドライブ。
【請求項１１】
前記サーボ・データのアドレスの演算は、通常のデータ読み取り及びデータ書き込みにおいて使用する演算機能を使用する、請求項８に記載の記録ディスク・ドライブ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記録ディスク・ドライブ及びその欠陥領域管理方法に関し、特に、リード・ライト・オフセットが存在するヘッドを有する記録ディスク・ドライブにおける欠陥領域管理に関する。
【背景技術】
【０００２】
データ記憶装置として、光ディスクや磁気テープなどの様々な態様のメディアを使用する装置が知られているが、その中で、ハード・ディスク・ドライブ（Hard Disk Drive：ＨＤＤ）は、コンピュータの記憶装置として広く普及し、現在のコンピュータ・システムにおいて欠かすことができない記憶装置の一つとなっている。更に、コンピュータにとどまらず、動画像記録再生装置、カーナビゲーション・システム、あるいはデジタル・カメラなどで使用されるリムーバブルメモリなど、ＨＤＤの用途は、その優れた特性により益々拡大している。
【０００３】
ヘッド素子部によりデータの記録再生を行うＨＤＤは、磁気ディスク上に形成されたサーボ・データに基づき、ヘッドの位置決め制御を行う。磁気ディスク上で同心円状に形成されたトラックのそれぞれは複数のサーボ・セクタを備え、各サーボ・セクタはサーボ・データとユーザ・データから構成されている。サーボ・データは、ＨＤＤの製造工程において、磁気ディスク上にサーボ・ライタ等により記録される。
【０００４】
近年、ＨＤＤにおける記憶容量高密度化のため、データ・トラック及びサーボ・トラックの間隔、データ・セクタの間隔が狭くなってきている。そのため、ヘッド素子部の揺らぎに対する許容量が減少してきている。ＨＤＤの構造上のばらつきや、サーボ・ライトにおけるヘッド位置のばらつきに起因して、サーボ・トラックの間隔のばらつきが生じる。このサーボ・トラック間隔のばらつきは、トラック又はセクタの間隔が狭くなるにつれて、無視できない大きさになってきている。
【０００５】
例えば、サーボ・トラックの間隔がばらつくことによって、サーボ・トラックが局部的に狭くなるところが生じる。局部的にサーボ・トラックが狭くなると、所望のトラックの隣のトラックに寄ってライトを行いその隣のトラックのデータを消去してしまう"Squeeze"というエラーをひきおこす可能性がある。Squeezeは、ヘッド素子部がサーボ・トラックを正常にリードできないことや、サーボ・トラックが局部的に狭くなるなどの原因によって、所望のトラックの隣のトラックに上書きしてしまう現象である。
【０００６】
そこで、ＨＤＤの製造工程において、ＳＲＳＴ(Self Run Self Test)とよばれる磁気ディスク上の欠陥を検出するテストを行う（例えば、特許文献１を参照）。ＳＲＳＴにおいては、磁気ディスクへのデータ・ライトとデータ・リード行ってキズが形成された欠陥領域などを検出するＳＡＴ（Surface Analysis Test）に加えて、FILL-DATAと呼ばれるテストを行う。テストで検出された欠陥セクタは、ＰＤＭ（Primary Defect Map）とよばれるマップに登録する。ＰＤＭに登録されたデータ・セクタは使用されない。
【０００７】
このFILL-DATAは、磁気ディスクのデータ領域全面にデータのライトを行い、ライト・エラーが発生するデータ・トラックを検出する。そのデータ・トラックに含まれるすべてのデータ・セクタを欠陥領域としてＰＤＭに登録する。FILL-DATAは、サーボ・トラックが狭いことやサーボ・トラックがリードすることができない等のサーボ・トラック・エラーによってライト・エラーが頻繁に発生する欠陥領域を検出する。
【特許文献１】２００２−２６０３５５
【発明の開示】
【発明が解決しようとする課題】
【０００８】
FILL-DATAは、FILL-DATA at write positionとよばれる処理と、FILL-DATA at read positionとよばれる処理を行う。FILL-DATA at write positionは、データ・トラックにデータの書き込みを行う位置（ライト・ポジション）にヘッド素子部（リード素子）を位置決めし、データの書き込み処理を行う。あるデータ・トラックにおいてライト・エラーが発生した場合、そのライト素子の位置する（書き込んでいる）データ・トラックを欠陥トラックと決定し、このトラック内の全てのデータ・セクタをＰＤＭに登録する。
【０００９】
FILL-DATA at read positionは、データ・トラックからユーザ・データを読出すときの位置（リード・ポジション）にヘッド素子部（リード素子）を位置決めし、データの書き込み処理を行う。あるデータ・トラックにおいてライト・エラーが発生した場合、そのリード素子が位置するデータ・トラックを欠陥トラックと決定し、このトラック内の全てのセクタをＰＤＭに登録する。
【００１０】
FILL-DATA at read positionにおいてライト・エラーが検出された場合、リード素子が読み取っているサーボ・トラックにエラーが存在すると考えられる。したがって、このサーボ・トラックを使用してリードするデータ・トラックの他に、そのサーボ・トラックを使用してライトするデータ・トラックも欠陥領域としてＰＤＭに登録することが、ＨＤＤの信頼性の点から好ましい。この点は、FILL-DATA at write positionにおいて検出されたエラー・サーボ・トラックを使用してリードするデータ・トラックについても同様である。
【００１１】
従って、FILL-DATA at read positionにおいて検出されたエラー・サーボ・トラックを使用してライトするデータ・トラックを特定する手法が必要とされる。あるいは、FILL-DATA at write positionにおいて検出されたエラー・サーボ・トラックを使用してリードするデータ・トラックを特定する手法が必要とされる。これらの特定は、データ・トラック・ピッチとサーボ・トラック・ピッチとが異なる磁気ディスクを備えるＨＤＤにおいて特に困難であり、効率的な特定方法が望まれる。
【課題を解決するための手段】
【００１２】
本発明の一つの態様は、リード素子とライト素子とが記録ディスクの半径方向において異なる位置にあるヘッドを備え、前記記録ディスクに記録されたサーボ・データを前記リード素子で読み出しながら前記ヘッドの位置決めを行う記録ディスク・ドライブにおける欠陥領域管理方法であって、通常のデータ読み取りもしくはデータ書き込みの内の一方のアクセスを行う場合のターゲット・ポジションに前記リード素子を位置決めした状態において、データ書込み処理を実行し、前記データ書込み処理において予め定められたエラーが生じた場合に、そのエラーが生じたサーボ・データをターゲットとして通常のデータ読み取りもしくはデータ書き込みの内の他方のアクセスを行うユーザ・データのアドレスを予想し、前記予想されたユーザ・データのアドレスへの前記他方のアクセスにおいてターゲットとして使用するサーボ・データのアドレスを特定し、前記特定されたサーボ・データのアドレスと前記エラーが生じたサーボ・データのアドレスとを比較し、その比較結果に基づいて前記予想したユーザ・データのアドレスにより特定される領域をエラー登録するものである。予想されたユーザ・データのアドレスから対応するサーボ・データのアドレスを特定することによって、記録ディスク・ドライブにおいて通常行われる手法によって、エラー登録すべきユーザ・データのアドレスを特定することができる。
【００１３】
前記ユーザ・データのアドレスは、データ・トラックを特定し、前記エラーが生じたサーボ・データのアドレス及び前記特定されたサーボ・データのアドレスは、それぞれサーボ・トラックを特定し、前記ユーザ・データのアドレスが特定するデータ・トラックの全領域をエラー登録することが好ましい。これによって、サーボ・エラーが存在する場合に、ターゲットと異なるトラックへのデータ書き込みをより確実に防止することができる。
【００１４】
前記ヘッドのシークを行うことなく、前記予想されたユーザ・データのアドレスから前記サーボ・データのアドレスを演算により特定することが好ましい。これによって、迅速にサーボ・データのアドレスを特定することができる。さらに、前記サーボ・データのアドレスの演算は、通常のデータ読み取り及びデータ書き込みにおいて使用する演算機能を使用することが好ましい。これによって、新たにサーボ・データのアドレス特定のための演算機能を実装しなくてすむ。
【００１５】
前記記録ディスクに記録されているデータ・トラック・ピッチとサーボ・トラック・ピッチとは異なる場合、サーボ・データのアドレスとユーザ・データのアドレスとの間の変換処理が複雑となるので、本発明は特に有用である。
【００１６】
前記特定されたサーボ・データのアドレスと前記エラーが生じたサーボ・トラックのアドレスとが一致するまで、前記ユーザ・データのアドレスの予想及び前記サーボ・データのアドレスの特定を繰り返し、一致した前記ユーザ・データのアドレスにより特定される領域をエラー登録する。さらに、前記特定されたサーボ・データのアドレスと前記エラーが生じたサーボ・トラックのアドレスとが一致しない場合、その特定されたサーボ・データのアドレスに基づいて、そのターゲットとなるサーボ・データが前記エラーが生じたサーボ・データのトラックに近づくように、次のユーザ・データのアドレスを予想することが好ましい。これによって、迅速に目的とするユーザ・データのアドレスを特定することができる。
【００１７】
本発明の他の態様に係る記録ディスク・ドライブは、リード素子とライト素子とが記録ディスクの半径方向において異なる位置にあるヘッドと、前記記録ディスクの欠陥領域を格納するメモリと、コントローラを備える。コントローラは、通常のデータ読み取りもしくはデータ書き込みの内の一方のアクセスを行う場合のターゲット・ポジションに前記ヘッドを位置決めした状態のデータ書込み処理において予め定められたエラーが生じた場合に、そのエラーが生じたサーボ・データをターゲットとして通常のデータ読み取りもしくはデータ書き込みの内の他方のアクセスを行うユーザ・データのアドレスを予想し、その予想されたユーザ・データのアドレスへの前記他方のアクセスにおいてターゲットとして使用するサーボ・データのアドレスを特定し、その特定されたサーボ・データのアドレスと前記エラーが生じたサーボ・データのアドレスとの比較結果に基づいて前記予想したユーザ・データのアドレスにより特定される領域を前記メモリに格納する。
【００１８】
前記ヘッドのシークを行うことなく、前記予想されたユーザ・データのアドレスから前記サーボ・データのアドレスを演算により特定することが好ましい。あるいは、前記サーボ・データのアドレスの演算は、通常のデータ読み取り及びデータ書き込みにおいて使用する演算機能を使用することが好ましい。
【発明の効果】
【００１９】
本発明によれば、記録ディスクの欠陥検査において、エラー登録すべきユーザ・データのアドレスを特定することができる。
【発明を実施するための最良の形態】
【００２０】
以下に、本発明を適用可能な実施の形態を説明する。説明の明確化のため、以下の記載及び図面は、適宜、省略及び簡略化がなされている。又、各図面において、同一要素には同一の符号が付されており、説明の明確化のため、必要に応じて重複説明は省略されている。
【００２１】
以下においては、データ記憶装置の一例であるハードディスク・ドライブ（ＨＤＤ）を例として、本発明の実施形態を説明する。本実施形態の磁気ディスク欠陥検出検査は、通常の書き込み位置（ライト・ポジション）におけるライト・テストと、読み取り位置（リード・ポジション）におけるライト・テストを実行する。例えば、リード・ポジションのライト・テストにおいてエラーが発生した場合、同一のサーボ・データを使用してライトするデータ領域を欠陥登録する。本形態の特徴点の一つは、この同一のサーボ・データを使用するデータ領域の特定手法に関する。
【００２２】
本実施形態の特徴点の理解を容易とするため、最初に、ＨＤＤの全体構成の概略を説明する。図１は、本実施の形態に係るＨＤＤ１の構成を模式的に示すブロック図である。図１に示すように、ＨＤＤ１は、密閉されたエンクロージャ１０内に、記録ディスクの一例である磁気ディスク１１、ヘッドの一例であるヘッド素子部１２、アーム電子回路（ＡＥ：Arm Electronics）１３、スピンドル・モータ（ＳＰＭ）１４、ボイス・コイル・モータ（ＶＣＭ）１５、そしてアクチュエータ１６を備えている。
【００２３】
ＨＤＤ１は、エンクロージャ１０の外側に固定された回路基板２０を備えている。回路基板２０上には、リード・ライト・チャネル（Ｒ／Ｗチャネル）２１、モータ・ドライバ・ユニット２２、ハードディスク・コントローラ（ＨＤＣ）とＭＰＵの集積回路（以下、ＨＤＣ／ＭＰＵ）２３及びＲＡＭ２４などの各ＩＣを備えている。尚、各回路構成は一つのＩＣに集積すること、あるいは、複数のＩＣに分けて実装することができる。
【００２４】
外部ホスト５１からのユーザ・データは、ＨＤＣ／ＭＰＵ２３によって受信され、Ｒ／Ｗチャネル２１、ＡＥ１３を介して、ヘッド素子部１２によって磁気ディスク１１に書き込まれる。また、磁気ディスク１１に記憶されているユーザ・データはヘッド素子部１２によって読み出され、そのユーザ・データは、ＡＥ１３、Ｒ／Ｗチャネル２１を介して、ＨＤＣ／ＭＰＵ２３から外部ホスト５１に出力される。
【００２５】
磁気ディスク１１は、ＳＰＭ１４に固定されている。ＳＰＭ１４は所定の角速度で磁気ディスク１１を回転する。ＨＤＣ／ＭＰＵ２３からの制御データに従って、モータ・ドライバ・ユニット２２がＳＰＭ１４を駆動する。各ヘッド素子部１２はスライダ（不図示）に固定されている。また、スライダはアクチュエータ１６の先端部に固定されている。アクチュエータ１６はＶＣＭ１５に連結され、揺動軸を中心に揺動することによって、ヘッド素子部１２（及びスライダ）を回転する磁気ディスク１１上においてその半径方向に移動する。モータ・ドライバ・ユニット２２は、ＨＤＣ／ＭＰＵ２３からの制御データ（本明細書においてＤＡＣＯＵＴと呼ぶ）に従ってＶＣＭ１５を駆動する。
【００２６】
ヘッド素子部１２には、磁気ディスク１１への記録データに応じて電気信号を磁界に変換するライト素子、及び磁気ディスク１１からの磁界を電気信号に変換するリード素子を備えている。ヘッド素子部１２が磁気ディスク１１上に位置するときに、ライト素子とリード素子とは、半径方向に異なる位置にある。このライト素子とリード素子の半径方向の位置の差異（距離）はリード・ライト・オフセットとよばれている。なお、磁気ディスク１１は、１枚以上あればよく、記録面は磁気ディスク１１の片面あるいは両面に形成することができる。
【００２７】
ＡＥ１３は、複数のヘッド素子部１２の中から磁気ディスク１１へのアクセスを行う１つのヘッド素子部１２を選択し、選択されたヘッド素子部１２により再生される再生信号を一定のゲインで増幅（プリアンプ）し、Ｒ／Ｗチャネル２１に送る。また、Ｒ／Ｗチャネル２１からの記録信号を選択されたヘッド素子部１２に送る。Ｒ／Ｗチャネル２１は、リード処理において、ＡＥ１３から供給されたリード信号を一定の振幅となるように増幅し、取得したリード信号からデータを抽出し、デコード処理を行う。読み出されるデータは、ユーザ・データとサーボ・データを含む。デコード処理されたリード・ユーザ・データは、ＨＤＣ／ＭＰＵ２３に供給される。また、ライト処理において、Ｒ／Ｗチャネル２１はＨＤＣ／ＭＰＵ２３から供給されたライト・データをコード変調し、更にコード変調されたライト・データをライト信号に変換してＡＥ１３に供給する。
【００２８】
ＨＤＣ／ＭＰＵ２３において、ＭＰＵはＲＡＭ２４にロードされたコードに従って動作する。ＨＤＤ１の起動に伴い、ＲＡＭ２４には、ＭＰＵ上で動作するコードの他、制御及びデータ処理に必要とされるデータが磁気ディスク１１あるいはＲＯＭ（不図示）からロードされる。ＨＤＣ／ＭＰＵ２３は、リード／ライト処理制御、コマンド実行順序の管理、サーボ信号を使用したヘッド素子部１２のポジショニング制御（サーボ制御）、インターフェース制御、ディフェクト管理などのデータ処理に関する必要な処理の他、ＨＤＤ１の全体制御を実行する。特に本形態において、ＨＤＣ／ＭＰＵ２３は、製造工程における磁気ディスクの欠陥テストを行う。この点については、後に詳述する。
【００２９】
図２を参照して、磁気ディスク１１上の記録データについて説明する。図２は、磁気ディスク１１の記録面の記録データの状態を模式的に示している。図２に示すように、磁気ディスク１１の記録面には、磁気ディスク１１の中心から半径方向に放射状に延び、所定の角度毎に離間して形成された複数のサーボ領域１１１と、隣り合う２つのサーボ領域１１１の間にデータ領域１１２が形成されている。各サーボ領域１１１には、ヘッド素子部１２の位置決め制御を行うためのサーボ・データが記録される。各データ領域１１２には、ユーザ・データが記録される。
【００３０】
磁気ディスク１１の記録面には、半径方向に所定幅を有し、同心円状に形成された複数のデータ・トラック１１３が形成される。ユーザ・データは、トラック１１３に沿って記録される。一つのデータ・トラック１１３は、サーボ領域１１１間に複数のデータ・セクタ（ユーザ・データの記録単位）を備えている。
【００３１】
各複数データ・トラック１１３は、磁気ディスク１１の半径方向の位置に従って、複数のゾーン１１４にグループ化されている。１つのトラック１１３に含まれるデータ・セクタの数は、ゾーンのそれぞれに設定される。図２においては、３つのゾーン１１４ａ−１１４ｃが例示されている。
【００３２】
同様に、磁気ディスク１１は、半径方向に所定幅を有し、同心円状に形成された複数のサーボ・トラックを備えている。各サーボ・トラックは、データ領域１１２で分離された複数のサーボ・データから構成されている。本形態においては。サーボ・トラック・ピッチとデータ・トラック・ピッチが一致していない。この点については後述する。
【００３３】
サーボ・データは、サーボ・トラック番号と、サーボ・トラック内におけるサーボ・セクタ番号、そして細かい位置制御をするためのバースト・パターンを備えている。バースト・パターンは、例えば、半径位置の異なる４つのバースト・パターンＡ、Ｂ、Ｃ、Ｄからなっている。各バースト・パターンの再生信号の振幅によって、サーボ・トラック内の位置を決定することができる。サーボ・トラック内の位置は、半径方向に２５６分割されたＰＥＳ（Position Error Signal）値とよばれるもので表している。本明細書においては、このサーボ・トラック番号、サーボ・セクタ番号及びＰＥＳ値とで表される位置をサーボ・アドレスとする。
【００３４】
本形態のＨＤＤ１は、その製造工程において、ＳＲＳＴ(Self Run Self Test)を実行する。ＳＲＳＴにおいて、ＨＤＤ１は、インストールされているテスト・プログラムを実行することによって、自ら磁気ディスク１１上の欠陥検出テストを行う。ＳＲＳＴは、磁気ディスク１１へのデータ・ライトとデータ・リード行って欠陥を検出するＳＡＴ（Surface Analysis Test）に加えて、データ・ライトのみを行ってライト・エラーを引き起こす領域を検出するFILL-DATAを行う。ＳＲＳＴが検出した欠陥データ・セクタは、ＰＤＭ（Primary Defect Map）に登録される。ＨＤＤ１は、通常動作において、ＰＤＭに登録されたデータ・セクタを使用せず、スキップする。
【００３５】
FILL-DATAは、磁気ディスク１１のデータ領域全面にデータのライト処理を行い、ライト・エラーが発生するデータ・トラックを検出する。そのデータ・トラックに含まれるすべてのデータ・セクタを欠陥領域としてＰＤＭに登録する。ここで、ライト処理は、ターゲットへのシークから磁気ディスク１１へのデータ書き込みまでの一連の処理である。
【００３６】
FILL-DATAは、サーボ・トラックが狭いことやサーボ・トラックがリードすることができない等のサーボ・トラック・エラーによってライト・エラーが頻繁に発生する欠陥領域を検出する。ライト・エラーの具体的な一例としては以下のようなものがある。
【００３７】
（１）ライト・リトライが１５回行われても、ライト・リトライをエラーが発生せずに行うことができない。
（２）ライト・リトライを１５回繰り返す前に、ライト・リトライが成功するが、ライト・リトライが成功するまでの間におこったライト・エラーのセクタが、３サーボ・セクタ間で４セクタ以上ある。ここでいう３サーボ・セクタ間とは、あるサーボ・セクタから、２つ目のサーボ・セクタまでの領域とする。
（３）ライト・リトライを１５回繰り返す前に、ライト・リトライが成功するが、サーボ・データのリード・エラーが発生するセクタが多い。
（４）そのトラックにシークすることができない。
【００３８】
本形態のFILL-DATAは、FILL-DATA at write positionと、FILL-DATA at read positionを行う。これらについて、図３を参照して説明する。図３において、ライト素子１２１ａとリード素子１２２ａとは、リード・ポジションにあり、ライト素子１２１ｂとリード素子１２２ｂとは、ライト・ポジションにある。
【００３９】
具体的には、リード素子１２２ｂは、ライト素子１２１ｂがデータ・トラックDTr_m-2にユーザ・データを書き込むための位置に位置決めされている。一方、リード素子１２２ａはデータ・トラックDTr_mをリードする位置に位置決めされる。その結果、ライト素子１２１ａは、通常のデータ・トラックからは磁気ディスク１１の半径方向においてずれた位置にある。
【００４０】
図３の例を使用して説明すれば、FILL-DATA at write positionは、通常のデータ・トラックDTr_m-2にデータの書き込みを行う位置（ライト・ポジション）にヘッド素子部１２（リード素子１２２）を位置決めし、ライト素子１２１でデータの書き込みを行う。このデータ・トラックDTr_m-2においてライト・エラーが発生した場合、そのライト素子１２１の位置する（書き込んでいる）データ・トラックDTr_m-2を欠陥トラックと決定し、このデータ・トラック内の全てのデータ・セクタをＰＤＭに登録する。ＨＤＤ１は、この処理を各データ・トラックについて実行する。
【００４１】
一方、FILL-DATA at read positionは、データ・トラックDTr_mからユーザ・データを読み取るときの位置（リード・ポジション）にヘッド素子部１２（リード素子１２２）を位置決めし、ライト素子１２１でデータの書き込みを行う。データ・トラックDTr_mにおいてライト・エラーが発生した場合、そのリード素子１２１が位置するデータ・トラックを欠陥トラックと決定し、このトラック内の全てのセクタをＰＤＭに登録する。ＨＤＤ１は、この処理を各データ・トラックについて実行する。
【００４２】
図３の例において、FILL-DATA at read positionにおいてライト・エラーが検出された場合、リード素子１２２が読み取っているサーボ・トラックSTr_nにエラーが存在すると考えられる。従って、このサーボ・トラックSTr_nを使用してリードするデータ・トラックDTr_mの他に、そのサーボ・トラックSTr_nを使用してライトするデータ・トラックDTr_m-2も欠陥領域としてＰＤＭに登録することが、ＨＤＤ１の信頼性の点から好ましい。
【００４３】
上述の点は、FILL-DATA at write positionにおいて検出されたエラー・サーボ・トラックを使用してリードするデータ・トラックについても同様である。つまり、FILL-DATA at write positionにおいてライト・エラーが検出された場合、リード素子１２２ｂが読み取っているサーボ・トラックSTr_nにエラーが存在すると考えられる。従って、このサーボ・トラックSTr_nを使用してライトするデータ・トラックDTr_m-2の他に、そのサーボ・トラックSTr_nを使用してリードするデータ・トラックDTr_mも欠陥領域としてＰＤＭに登録することが好ましい。
【００４４】
ここで、リードにおけるエラーはライトにおけるエラーと異なり、他のデータの上書きを起こさないため、ＨＤＤによっては、FILL-DATA at write positionにおいて検出されたエラー・サーボ・トラックを使用してリードするデータ・トラックをＰＤＭに登録しないことが好ましい。これによって、ＰＤＭの容量をセーブすることができる。なお、設計によっては、FILL-DATA at read positionにおいて検出されたエラー・サーボ・トラックを使用してライトするデータ・トラックをＰＤＭに登録しないことも可能である。
【００４５】
FILL-DATA at read positionにおいてライト・エラーが検出された場合の処理の例を、図４を参照して説明する。本形態の磁気ディスク１１は、データ・トラック・ピッチとサーボ・トラック・ピッチとが異なるアダプティブ・フォーマットに従ってデータを記録している。データ・トラック・ピッチがサーボ・トラック・ピッチよりも大きく、スクイーズやオフトラック・ライトを防止して、信頼性を向上する。
【００４６】
ＨＤＤ１は、FILL-DATA at read positionにおいてライト・エラーを検出すると（Ｓ１１）、そのサーボ・トラックを使用して読み取るデータ・トラックをＰＤＭに登録する（Ｓ１２）。さらに、ＨＤＤ１は、そのサーボ・トラックを使用してデータを書き込むデータ・トラックを特定する（Ｓ１３）。特定されたデータ・トラックは、欠陥領域として、ＰＤＭに登録される（Ｓ１４）。
【００４７】
ここで、ステップＳ１３において、ＨＤＤ１は、リード・ポジションでエラー検出されたサーボ・データを使用してライトされるデータ・トラック（図３におけるデータ・トラックDTr_m-2）を特定することが必要である。しかし、通常のＨＤＤ１の機能は、サーボ・トラックから対応するデータ・トラックを特定することができない。
【００４８】
図５に示すように、ＨＤＤ１は、ホスト５１からライトもしくはリードのターゲット・データ・アドレスを取得すると、それに対応するターゲット・サーボ・アドレスを算出し、そのターゲット・サーボ・アドレスにリード素子１２２を位置決めする。ライト素子１２１とリード素子１２２の半径方向位置が異なりリード・ライト・オフセットが存在する場合、ターゲット・サーボ・アドレスの算出方法は、リード・コマンドとライト・コマンドとで異なることになる。
【００４９】
しかし、ＨＤＤ１は、通常のリード／ライト処理において、サーボ・アドレスからデータ・アドレスを算出する処理を行うことはない。また、サーボ・アドレスからデータ・アドレスを算出する処理は複雑な演算となる。さらに、本形態のように、データ・トラック・ピッチとサーボ・トラック・ピッチとが異なるアダプティブ・フォーマットを場合、データ・アドレスとサーボ・アドレス間の変換処理は極めて複雑なものとなる。典型的には、ターゲット・データ・アドレスからターゲット・サーボ・アドレスの演算は、三次もしくは四次の演算式を使用する。従って、サーボ・アドレスからデータ・アドレスを算出する演算は、極めて複雑なものとなると考えられる。
【００５０】
そのため、ＨＤＤ１の通常処理における演算手法を利用して、データ・アドレス（データ・トラック）を特定することが要求される。また、ＳＲＳＴはＨＤＤ１に実装されたテスト・プログラムによって実行されるため、プログラムの容量は小さいことが好ましい。そのため、ＨＤＤ１の通常機能として実装されている演算機能を利用して、データ・アドレスを特定することが好ましい。例えば、FILL-DATA at read positionにおけるライト・エラーにおいては、エラーが起きたリード・データ・アドレス及びリード・サーボ・アドレスはわかっている。ＨＤＤ１は、これらから、通常の変換処理機能を使用して、そのサーボ・アドレスのサーボ・トラックに対応するライト・データ・トラックを特定する。
【００５１】
図６は、FILL-DATAにおいてエラーが検出された場合に、そのサーボ・トラックに対応するリードもしくはライトのデータ・トラックを特定する処理を行う論理構成を示すブロック図である。ＭＰＵ２３１上で動作するテスト・プログラム３１１が、FILL-DATAの実行を制御する。テスト・プログラム３１１は、FILL-DATA at write positionもしくはFILL-DATA at read positionにおいてエラーを検出すると、アドレス変換ルーチン３１３を使用してエラーが発生したサーボ・トラックに対応するデータ・トラックを特定し、そのデータ・トラックを欠陥領域としてＰＤＭ２４１に登録する。
【００５２】
アドレス変換ルーチン３１３は、ＨＤＤ１が、ホスト５１からのターゲット・データ・アドレスを取得した場合に、それに対応するサーボ・アドレスを算出するルーチンである。FILL-DATAにおける処理について詳細を説明するまえに、通常動作におけるアドレス変換ルーチン３１３の処理について図７を参照して説明する。
【００５３】
ホスト５１からリード、ライトあるいはシークのコマンド及びターゲット・データ・アドレスを取得すると、ＭＰＵ２３１上で動作するコマンド・マネージャ３２１が、シーク・プロセス・ルーチン３２２を呼び出し、ターゲット・データ・アドレスを渡す。シーク・プロセス・ルーチン３２２は、アドレス変換ルーチン３１３を呼び出して、ターゲット・データ・アドレスに対応するサーボ・アドレスを算出させる。アドレス変換ルーチン３１３は、コマンドに応じたターゲット・サーボ・アドレスを算出する。
【００５４】
シーク・プロセス・ルーチン３２２は、ＨＤＣ２３２に対して、ターゲット・サーボ・アドレスと共にシーク指示を出す。ＨＤＣ２３２は、その指示に応答して、Ｒ／Ｗチャネル２１を制御し、現在サーボ・アドレスを取得する。シーク・プロセス・ルーチン３２２は、ＨＤＣ２３２から現在サーボ・アドレスを取得し、ヘッド素子部１２をターゲット位置に移動するために、モータ・ドライバ・ユニット２２に制御データＤＡＣＯＵＴを出力する。モータ・ドライバ・ユニット２２は、ＤＡＣＯＵＴに従ってＶＣＭ２５に電流を供給し、アクチュエータ１６及びヘッド素子部１２を移動する。
【００５５】
アドレス変換ルーチン３１３は、データ・アドレスからサーボ・アドレスを算出することはできるが、その逆を行うことはできない。図６に示すように、テスト・プログラム３１１は、エラーが発生したサーボ・アドレスに対応するデータ・アドレスを予想し、そのデータ・アドレスに対応するサーボ・アドレスをアドレス変換ルーチン３１３に計算させる。テスト・プログラム３１１は、計算されたサーボ・アドレスとエラー・サーボ・アドレスのサーボ・トラックが一致するデータ・アドレスを見つけることによって、エラー・サーボ・トラックに対応するデータ・トラックを特定することができる。
【００５６】
図８を参照して、エラー・サーボ・トラックに対応するデータ・トラックを特定する手法を説明する。図８は、FILL-DATA at read positionにおいてエラーを検出した場合において、エラー・サーボ・トラックSTr_nを使用してデータがライトされるデータ・トラックDTr_m-2を特定する例を示している。テスト・プログラム３１１は、FILL-DATA at read positionでライト・エラーが起きたデータ・トラックDTr_mから、対応するライト・データ・トラックとしてデータ・トラックDTr_m-5を予想データ・トラックとして選択する。
【００５７】
アドレス変換ルーチン３１３がデータ・トラックDTr_m-5に対応するサーボ・トラックSTr_n-3を算出する。テスト・プログラム３１１は、エラー・サーボ・トラックSTr_nとサーボ・トラックSTr_n-3とを比較し、これらが異なるので、次の予想データ・トラックのデータ・アドレスをアドレス変換ルーチン３１３に渡し、対応するサーボ・アドレスを算出させる。以下、算出されたサーボ・アドレスのサーボ・トラックとエラー・サーボ・トラックSTr_nが一致するまで、同様の処理を繰り返す。以上の処理によって、ＨＤＤ１の通常動作において使用されるアドレス変換ルーチン３１３を使用して、エラー・サーボ・トラックに対応するデータ・トラックを特定することができる。
【００５８】
ここで重要な点は、テスト・プログラム３１１は、ヘッド素子部１２のシークを行うことなく、アドレス変換ルーチン３１３の変換結果を得ることができる点である。図６に示すように、テスト・プログラム３１１は、アドレス・リターン・コマンドによってアドレス・リターン・ルーチン３１２を呼び出し、予想データ・アドレスを渡す。アドレス・リターン・ルーチン３１２は、アドレス変換ルーチン３１３を呼び出して予想データ・アドレスを渡し、対応サーボ・アドレスを算出させる。
【００５９】
アドレス変換ルーチン３１３の変換結果としてのサーボ・アドレスは、アドレス・リターン・ルーチン３１２を介して、テスト・プログラム３１１に渡される。アドレス・リターン・コマンドによる処理において、図７を参照して説明したようなヘッド素子部１２のシーク動作は行われない。このように、通常のシーク動作において使用するアドレス変換ルーチン３１３を、シーク動作をスキップして機能させることによって、シークのための時間を必要とせず、アドレス変換に必要な時間を短縮し、テスト時間の短縮及びスループットの向上を図ることができる。
【００６０】
一例として、FILL-DATA at read positionにおいてライト・エラーを検出した場合に、図６の各論理構成要素が、エラー・サーボ・トラックを使用してデータがライトされるデータ・トラックを特定する処理について、図６及び図９を参照して説明する。この処理は、図４におけるステップＳ１３の詳細処理である。
【００６１】
FILL-DATA at read positionにおいてライト・エラーを検出すると、テスト・プログラム３１１は、そのサーボ・アドレス２４２をＲＡＭ２４に一時的に保存する（Ｓ１３１）。テスト・プログラム３１１は、対応するサーボ・データの欠陥を発見したデータ・トラックから、基準トラック数離れたデータ・トラックを予想データ・トラックとして選択する。基準トラック数は、リード・ライト・オフセットに応じた一定値とすることができる。
【００６２】
テスト・プログラム３１１は、アドレス・リターン・ルーチン３１２を介して、予想データ・トラックのアドレスを、アドレス変換ルーチン３１３に渡す。アドレス変換ルーチン３１３が算出したサーボ・アドレスは、アドレス・リターン・ルーチン３１２を介して、テスト・プログラム３１１に渡される。これによって、テスト・プログラム３１１は、シークを行うことなく、サーボ・アドレスを得る（Ｓ１３２）。
【００６３】
テスト・プログラム３１１は、取得したサーボ・アドレスと保存していたエラー・サーボ・トラック２４２とを比較し、それらが一致するか判定する（Ｓ１３３）。一致する場合は、テスト・プログラム３１１は、取得したサーボ・アドレスに対応する予想データ・トラックを、欠陥領域としてＰＤＭ２４１に登録する（Ｓ１３５）。
【００６４】
一致しない場合、テスト・プログラム３１１は、異なるデータ・トラックを予想データ・トラックとして選択する。具体的には、前回のデータ・トラックの隣接データ・トラックであって、対応するサーボ・トラックが、前回のデータ・トラックよりも、保存しているエラー・サーボ・トラックに近づくデータ・トラックを選択する。一致しなかったサーボ・トラックのトラック番号とエラー・サーボ・トラックのトラック番号の大小関係から、いずれの方向のデータ・トラックを選択すべきか決定することができる。
【００６５】
本例においては、ＩＤ側の隣接データ・トラックを選択する。テスト・プログラム３１１は、アドレス変換ルーチン３１３の演算により、新たに選択したデータ・トラックに対応するサーボ・アドレスを取得する（Ｓ１３４）。なお、選択するデータ・トラックは隣接データ・トラックに限らず、上記二つのサーボ・トラックを使用して、現在データ・トラックと次の選択データ・トラックとの間のトラック数を決定することもできる。
【００６６】
テスト・プログラム３１１は、新たに取得したサーボ・アドレスと保存していたエラー・サーボ・トラック２４２とを比較し、それらが一致するか判定する（Ｓ１３３）。演算により取得したサーボ・アドレスのサーボ・トラックがエラー・サーボ・トラック２４２と一致するまで、テスト・プログラム３１１は、以上の処理を繰り返す。
【００６７】
なお、本発明は上述した実施の形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。例えば、上述した実施の形態においては、FILL-DATAにおける欠陥処理方法について記述したが、本発明は他の欠陥検査に適用することができる。上述の欠陥領域のＰＤＭ登録においては、そのデータ・トラック内の全てのデータ・セクタを登録するが、その欠陥サーボ・トラックが対応するデータ・トラックの一部のデータ・セクタを登録しても良い。例えば、エラー・サーボ・データに対応するデータ・セクタのみを欠陥登録することができる。また、本発明は、ＨＤＤに特に好適であるが、他の記録ディスク・ドライブに適用することができる。
【図面の簡単な説明】
【００６８】
【図１】本実施形態において、ＨＤＤの全体構成を模式的に示すブロック図である。
【図２】磁気ディスクの記録面の記録データの状態を模式的に示す図である。
【図３】本実施形態において、FILL-DATA at write positionとFILL-DATA at read positionにおけるヘッド位置を模式的に示す図である。
【図４】本実施形態において、FILL-DATA at read positionにおいてライト・エラーが検出された場合の処理を説明するフロー・チャートである。
【図５】本実施形態において、ＨＤＤが通常動作において行うアドレス変換を模式的に示す図である。
【図６】本実施形態において、FILL-DATAにおいてエラーが検出された場合に、そのサーボ・トラックに対応するリードもしくはライトのデータ・トラックを特定する処理を行う論理構成を模式的に示すブロック図である。
【図７】本実施形態において、通常動作におけるアドレス変換ルーチンの処理に関する論理構成を模式的に示すブロック図である。
【図８】FILL-DATA at read positionにおいてエラーを検出した場合において、エラー・サーボ・トラックSTr_nを使用してデータがライトされるデータ・トラックDTr_m-2を特定する例を示す図である。
【図９】FILL-DATA at read positionにおいてライト・エラーを検出した場合に、図６の各論理構成要素が、エラー・サーボ・トラックを使用してデータがライトされるデータ・トラックを特定する処理を説明するフロー・チャートである。
【符号の説明】
【００６９】
１０  エンクロージャ、１１  磁気ディスク、１２  ヘッド素子部、１３  ＡＥ
１４  ＳＰＭ、１５  ＶＣＭ、１６  アクチュエータ
２０  回路基板、２１  Ｒ／Ｗチャネル、２２  モータ・ドライバ・ユニット
２３  ＨＤＣ／ＭＰＵ、２４  ＲＡＭ、５１  ホスト
１１１  サーボ領域、１１２  データ領域、１１３  トラック、１１４  ゾーン
１２１ａ、ｂ  ライト素子、１２２ａ、ｂ  リード素子、２３１  ＭＰＵ
２３２  ＨＤＣ、３１１  テスト・プログラム
３１２  アドレス・リターン・ルーチン、３１３  アドレス変換ルーチン
３２１  コマンド・マネージャ、３２２  シーク・プロセス・ルーチン
【図１】
2007193876.tif 000003
【図２】
2007193876.tif 000004
【図３】
2007193876.tif 000005
【図４】
2007193876.tif 000006
【図５】
2007193876.tif 000007
【図６】
2007193876.tif 000008
【図７】
2007193876.tif 000009
【図８】
2007193876.tif 000010
【図９】
2007193876.tif 000011