(57)【要約】【課題】リード実行時間を最適化してエラーの少ない読出しを可能とする。【解決手段】ハードディスクコントローラ２８は、セクタパルスを基準に設定された所定のリード開始時間とリード終了時間をもつリードゲート信号ＲＧを発生する。リードデータ復調部７６はリードゲート信号ＲＧに基づくリード実行により媒体の読出信号からリードデータを再生する。リードゲート最適化部６６は、リードゲート信号ＲＧのリード開始時間とリード終了時間を変化させながらリードデータ復調部７６により復調されるリードデータのエラーを検出し、検出されたエラーが最小となるリード開始時間とリード終了時間を判定してリードゲート発生部に設定する。【選択図】      図１
2004342213.tif 000002
【特許請求の範囲】
【請求項１】
セクタパルスを基準に設定された所定のリード開始時間とリード終了時間をもつリードゲート信号を発生するリードゲート発生部と、
前記リードゲート信号に基づくリード実行により媒体の読出信号からリードデータを再生するデータ復調部と、
を備えた磁気ディスク装置に於いて、
前記リードゲート信号のリード開始時間とリード終了時間を変化させながら前記データ復調部により復調されるリードデータのエラーを検出し、検出されたエラーが最小となるリード開始時間とリード終了時間を判定して前記リードゲート発生部に設定するリードゲート最適化部を設けたことを特徴とする磁気ディスク装置。
【請求項２】
請求項１記載の磁気ディスク装置に於いて、前記リードゲート最適化部は、
複数回のテストリード実行毎に、リードゲート信号のリード開始時間とリード終了時間を変化させて前記データ復調部に出力するタイミング調整部と、
前記タイミング調整部からリードゲート信号によりテストリード実行毎に前記データ復調部で復調されたリードデータのエラーを検出するエラー検出部と、
前記エラー検出部により検出された複数のエラーの内、エラーが最小となるリードゲート信号のリード開始時間とリード終了時間を最適時間として判定して前記リードゲート発生部に設定する最適時間判定部と、
を備えたことを特徴とする磁気ディスク装置。
【請求項３】
請求項２記載の磁気ディスク装置に於いて、
前記タイミング調整部は、前記リードゲート信号のリード開始時間とリード終了時間とを個別に変化させ、
前記最適時間判定部は、前記エラー検出部により検出されたエラーが最小となるリード開始時間とリード終了時間を個別に判定して前記リードゲート発生部に設定することを特徴とする磁気ディスク装置。
【請求項４】
セクタパルスを基準に設定された所定のリード開始時間とリード終了時間をもつリードゲート信号を発生するリードゲート発生部と、前記リードゲート信号に基づくリード実行により媒体の読出信号からリードデータを再生するデータ復調部とを備えた磁気ディスク装置のリードゲート最適化方法に於いて、
複数回のテストリード実行毎に、リードゲート信号のリード開始時間とリード終了時間を変化させて前記データ復調部に出力するタイミング調整ステップと、
前記タイミング調整ステップで出力されたリードゲート信号によりテストリード実行毎に前記データ復調部で復調されたリードデータのエラーを検出するエラー検出ステップと、
前記エラー検出ステップにより検出された複数のエラーの内、エラーが最小となるリードゲート信号のリード開始時間とリード終了時間を最適時間として判定して前記リードゲート発生部に設定する最適時間判定ステップと、
を備えたことを特徴とする磁気ディスク装置のリードゲート最適化方法。
【請求項５】
セクタパルスを基準に設定された所定のリード開始時間とリード終了時間をもつリードゲート信号を発生するリードゲート発生部と、前記リードゲート信号に基づくリード実行により媒体の読出信号からリードデータを再生するデータ復調部とを備えた磁気ディスク装置内蔵のコンピュータに、
複数回のテストリード実行毎に、リードゲート信号のリード開始時間とリード終了時間を変化させて前記データ復調部に出力するタイミング調整ステップと、
前記タイミング調整ステップで出力されたリードゲート信号によりテストリード実行毎に前記データ復調部で復調されたリードデータのエラーを検出するエラー検出ステップと、
前記エラー検出ステップにより検出された複数のエラーの内、エラーが最小となるリードゲート信号のリード開始時間とリード終了時間を最適時間として判定して前記リードゲート発生部に設定する最適時間判定ステップと、
を実行させることを特徴とするプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、リードゲートの設定により媒体読出し信号からリードデータを復調する磁気ディスク装置、リードゲート最適化方法及びプログラムに関し、特に、テストリードの実行によりリードゲートの開始と終了のタイミングを最適化する磁気ディスク装置、びリードゲート最適化方法及びプログラムに関する。
【０００２】
【従来の技術】
従来、磁気ディスク装置において、媒体に記録されたサーボ情報の読取信号から得られたセクタパルスを基準にリードゲート信号を発生してリード実行時間を決めており、通常、リード実行時間は媒体どの場所においても一定である。これは磁気ディスク装置そのもののフォーマットが媒体のどのデータエリアにあっても常に一定であるからである。
【０００３】
具体的な例としては、シンクバイト部（ＳＢ部）が４バイト、データ部（Ｄａｔａ）が５１２バイト、ＥＣＣ部が３０バイトとなるフォーマットの場合、
2004342213.tif 000003
となる。ここで、ＰＬＯはリードチャネルのＡＧＣ及びＰＬＬが必要な引き込み時間、αはパイプラインによる時間（通常はマイナス）である。
【０００４】
リードを開始する時間は、上位側でコントロールしており、例えばハードディスクコントローラ（ＨＤＣ）内に持つ。ハードディスクコントローラ内では、サーボ情報を示すウィンドウ（サーボゲート）により、ライト及びリードのタイミングを制御するための基準クロックであるセクタパルスを生成しており、リードゲート信号が立上るリード開始時間はセクタパルスを基準に決められる。
【０００５】
リード開始時間は、媒体に書かれたデータを最適な位置からリードするために決定される値であり、この値を決める要素としては、先に挙げたリードチャネル内のＡＧＣ及びＰＬＬの引き込みに必要な時間、ヘッドＩＣの書き込み時のディレイ時間、リードチャネルのエンコーダ遅延時間、ライトヘッドとリードヘッドのギャップ距離等が挙げられる。一方、リードゲート信号が立下るリード終了時間は、リード開始時間から（１）式のリード時間後となる。
【０００６】
従来の磁気ディスク装置においては、リード開始時間はセクタパルスを基準とし、予め決められたタイミングからリードを開始し、そこから一定時間後にリードを終了するというのが、通常用いられている手法である。
【０００７】
また、最近では、ゾーン・ビット・レコーディング（Ｚｏｎｅ  Ｂｉｔ  Ｒｅｃｏｒｄｉｎｇ）方式として、半径方向を数ゾーンに分割して、転送レートを変えて記録することが多い。この場合でも磁気ディスク装置内は、媒体のどのエリアであっても予め決められたセクタフォーマットに応じ設定されているため、セクタフォーマットが一定である限りリード時間は一定である。
【０００８】
【特許文献１】
特開平１１−３１３５８号公報
【０００９】
【発明が解決しようとする課題】
しかしながら、このような従来の磁気ディスク装置においては、以下のような問題がある。
【００１０】
（１）リード開始時間が規定値である時に起こり得る不具合
ヘッドに搭載しているライトヘッドとリードヘッドのギャップが大きい場合、媒体に書き込まれるデータは時間的により遅れて書き込まれる。このため規定のリード開始時間でリードを開始すると、本来リードすべきであるＰＬＯ位置からの読み出しが出来ず、ＰＬＯが書かれていない手前の部分から早くリードを開始することになってしまう。
【００１１】
この場合、書き込み前の下地のデータは通常ＤＣ的にイレーズされているので、リード開始時にＤＣイレーズの部分を読むことになり、復調ＩＣにおいて自動利得制御（ＡＧＣ）が誤動作してしまう恐れがあった。
【００１２】
このようなライトヘッドとリードヘッドのギャップ間距離は、データを読み書きするヘッドの特性に左右され、ヘッドの製造メーカやウエハのばらつきなどの要素で変わってくる。
【００１３】
（２）リード終了時間が規定値であることで、起こり得る不具合
リード終了時間が規定値である場合、起こり得る現象として、媒体に書き込まれるデータが時間的に早く書き込まれてしまったときに、ＥＣＣの後のＰＡＤ部のデータを読み取れないことが起こる。
【００１４】
この場合、ＰＡＤ部は書き込んだデータの位相とは異なるデータが書かれているため、リードチャネル内のデコーダの誤訂正を招くことになる。これにより、データとしてはＥＣＣ部のミスコレクションを起こす可能性がある。媒体にデータが早く書き込まれてしまう要因としては、環境温度等によりヘッドやプリアンプ等の特性が変化する場合がある。
【００１５】
（３）フォーマット効率向上により起こりうる不具合（ＰＡＤ不足）
もう一つの要因としては、ＰＡＤ部の不足により、リードすべきデータが最後まで書かれていない場合である。最近の装置では、性能向上のために必要なデータが読めた時点でリード終了時間を終了させるパイプライン処理が実施されている。
【００１６】
パイプライン処理は、リード後半部の無駄な時間はなるべく無くす処理を行なっているもので、長所として、フォーマット効率の上昇とリードのパフォーマンス向上につながっている。しかし、これは裏を返せばデータ後半部のリードを確実に行なうというマージンの不足を招く。
【００１７】
当然のことながら、データ部後半に十分な長さのＰＡＤ部に書かれていれば、このようなことは起きないが、近年はフォーマット効率を少しでも良くするため、このＰＡＤ部も少なくする傾向があるため、必ずしもＰＡＤ部が十分にあるとはいえなくなってきている。
【００１８】
このようなデータ後半部のマージン不足によりＰＡＤ後半部のデータの書かれていない部分を読んでしまい、データのエラー、この場合はＥＣＣのミスコレクションを招くことになる。
【００１９】
本発明は、リード実行時間を最適化してエラーの少ない読出しを可能とする磁気ディスク装置、リードゲート最適化方法及びプログラムを提供することを目的とする。
【００２０】
【課題を解決するための手段】
図１は本発明の原理説明図である。本発明は、セクタパルスを基準に設定された所定のリード開始時間とリード終了時間をもつリードゲート信号を発生するリードゲート発生部と、リードゲート信号に基づくリード実行により媒体の読出信号からリードデータを再生するリードデータ復調部７６とを備えた磁気ディスク装置を対象とし、リードゲート信号のリード開始時間とリード終了時間を変化させながらリードデータ復調部７６により復調されるリードデータのエラーを検出し、検出されたエラーが最小となるリード開始時間とリード終了時間を判定してリードゲート発生部に設定するリードゲート最適化部６６を設けたことを特徴とする。
【００２１】
このようにリードゲートの開始時間の最適化を行なうことで、媒体に書かれたデータを正しくリード開始できるようになり、エラーの少ない読み出しを可能とデータを末尾まで確実にリードできる。またリード終了時間を最適化することで、パイプライン処理によりリード処理がパイプライン処理なしの時に比べ早く終わっている場合にも、媒体のデータを正しい位置までリードすることができ、例えば、ＰＡＤ以降に書かれないゴミデータを読むことがなくなり、その結果、ＥＣＣミスコレクションを防止する。
【００２２】
リードゲート最適化部は、複数回のテストリード実行毎に、リードゲート信号のリード開始時間とリード終了時間を変化させてリードデータ復調部７６に出力するタイミング調整部７０と、タイミング調整部７０からリードゲート信号によりテストリード実行毎にリードデータ復調部７６で復調されたリードデータのエラーを検出するエラー検出部７２と、エラー検出部７２により検出された複数のエラーの内、エラーが最小となるリードゲート信号のリード開始時間とリード終了時間を最適時間として判定してリードゲート発生部に設定する最適時間判定部７４とを備えたことを特徴とする。
【００２３】
タイミング調整部７０は、リードゲート信号のリード開始時間とリード終了時間とを個別に変化させ、最適時間判定部７４は、エラー検出部７２により検出されたエラーが最小となるリード開始時間とリード終了時間を個別に判定してリードゲート発生部に設定する。
【００２４】
タイミング調整部７０は、リード開始時間及びリード終了時間を、デフォルト値を中心に前後に所定時間単位で変化させる。具体的にタイミング調整部７０は、リード開始時間及びリード終了時間を、デフォルト値を中心に前後にリードデータの１バイト時間単位で変化させる。
【００２５】
エラー検出部７２は、リードデータのエラーとして、リードデータ復調部７６に設けたビタビ判定部のビタビ・メトリック・マージン（ＶＭＭ）を検出し、最適時間判定部７４は、検出されたビタビ・メトリック・マージンが最大となるリード開始時間及びリード終了時間を判定してリードゲート発生部に設定する。このビタビ・メトリック・マージン（ＶＭＭ）は、ビタビ判定部内のパスメモリの分岐失敗数をカウントしており、エラーレートに比べ少ないリードデータでエラー内容が判定できる。
【００２６】
エラー検出部７２は、リードデータ復調部７６により復調されるリードデータのエラーレートを検出し、最適時間判定部７４は、検出されたエラーレートが最小となるリード開始時間及びリード終了時間を判定してリードゲート発生部に設定する。
【００２７】
本発明の磁気ディスク装置は、パワーオンスタート時に、リードゲート最適化部６６を動作させてリード実行時間を最適化する。また所定のタイムスケジュールに従ってリードゲート最適化部６６を動作させてもよい。更に装置内部温度等の環境条件の変化を検出した際にリードゲート最適化部を動作させることもできる。
【００２８】
本発明の磁気ディスク装置は、複数の読出ヘッドを備えた場合、各ヘッド単位にリードゲート最適化部６６を動作させる。また媒体をゾーン分割した場合、各ゾーン単位にリードゲート最適化部６６を動作させる。
【００２９】
本発明は、セクタパルスを基準に設定された所定のリード開始時間とリード終了時間をもつリードゲート信号を発生するリードゲート発生部と、リードゲート信号に基づくリード実行により媒体の読出信号からリードデータを再生するデータ復調部とを備えた磁気ディスク装置のリードゲート最適化方法を提供する。
【００３０】
このリードゲート最適化方法として本発明は、
複数回のテストリード実行毎に、リードゲート信号のリード開始時間とリード終了時間を変化させて前記データ復調部に出力するタイミング調整ステップと、タイミング調整ステップで出力されたリードゲート信号によりテストリード実行毎にリードデータ復調部で復調されたリードデータのエラーを検出するエラー検出ステップと、
エラー検出ステップにより検出された複数のエラーの内、エラーが最小となるリードゲート信号のリード開始時間とリード終了時間を最適時間として判定して前記リードゲート発生部に設定する最適時間判定ステップと、
を備えたことを特徴とする。
【００３１】
本発明は、セクタパルスを基準に設定された所定のリード開始時間とリード終了時間をもつリードゲート信号を発生するリードゲート発生部と、リードゲート信号に基づくリード実行により媒体の読出信号からリードデータを再生するデータ復調部とを備えた磁気ディスク装置内蔵のコンピュータにより実行されるプログラムを提供する。
【００３２】
このプログラムは、磁気ディスク装置内蔵のコンピュータに、
複数回のテストリード実行毎に、リードゲート信号のリード開始時間とリード終了時間を変化させてデータ復調部に出力するタイミング調整ステップと、
タイミング調整ステップで出力されたリードゲート信号によりテストリード実行毎にデータ復調部で復調されたリードデータのエラーを検出するエラー検出ステップと、
エラー検出ステップにより検出された複数のエラーの内、エラーが最小となるリードゲート信号のリード開始時間とリード終了時間を最適時間として判定してリードゲート発生部に設定する最適時間判定ステップと、
を実行させることを特徴とするプログラム。
【００３３】
なお、本発明によるリードゲート最適化方法及びプログラムの詳細は、装置の場合と基本的に同じになる。
【００３４】
【発明の実施の形態】
図２は、本発明が適用される磁気ディスク装置であるハードディスクドライブ（ＨＤＤ）１０のブロック図である。
【００３５】
図２において、ハードディスクドライブ１０はディスクエンクロージャ１２とコントロールボード１４で構成される。ディスクエンクロージャ１２にはスピンドルモータ（ＳＰＭ）１６とボイスコイルモータ（ＶＣＭ）１８が設けられる。
【００３６】
スピンドルモータ１６の回転軸には磁気ディスク媒体２０−１，２０−２が接続され、一定速度で回転する。ボイスコイルモータ１８にはヘッドアクチュエータが装着されており、アーム先端にヘッド２２−１〜２２−４が支持され、磁気ディスク媒体２０−１，２０−２のディスク面に対し情報の読み書きを行う。
【００３７】
ヘッド２２−１〜２２−４には、ライトヘッドとリードヘッドが所定のギャップを介して一体に搭載されている。ヘッドＩＣ２４は、ヘッド２２−１〜２２−４の各ライトヘッド及びリードヘッドを信号線接続しており、コントロールボード１４側からのヘッドセレクト信号に基づいて、いずれか１つのヘッドを選択して、ライトまたはリードを行う。
【００３８】
コントロールボード１４には、リードライトＬＳＩ２６、ハードディスクコントローラ（ＨＤＣ）２８、ホストインタフェース３０、ＳＤＲＡＭ３２、ＭＰＵ３４、フラッシュＲＯＭ３６及びＶＣＭ／ＳＰＭコントローラ３８が設けられている。
【００３９】
このような構成を持つハードディスクドライブ１０のライト及びリード動作は次のようになる。ホストインタフェース３０を介して接続している上位装置例えばパーソナルコンピュータからライトコマンドとライトデータを受信すると、転送バッファとして機能するＳＤＲＡＭ３２にライトデータをバッファした後、ハードディスクコントローラ２８でライトデータのフォーマットとＥＣＣのためのエンコードを行い、リードチャネルとして機能するリードライトＬＳＩ２６の中のライトデータ復調部で復調処理を行った後、ヘッドＩＣ２４に与えられ、そのとき選択されているヘッドのライトヘッドによりディスク媒体に対する書込みを行う。
【００４０】
このときライトコマンドに基づくＭＰＵ３４の指示により、ＶＣＭ／ＳＰＭコントローラ３８はボイスコイルモータ１８を駆動して、ヘッドをライトコマンドで指定された媒体位置にシークしてオントラック制御しており、従ってライトコマンドで指定された媒体位置にライトデータの書込みが行われる。
【００４１】
ホストインタフェース３０が上位装置からのリードコマンドを受信すると、ＭＰＵ３４によるヘッドＩＣ２４の選択と、ＶＣＭ／ＳＰＭコントローラ３８によるボイスコイルモータ１８のヘッドシークによる位置決めオントラックにより、リードコマンドで指定されたデータの読み出しが行われる。
【００４２】
磁気ディスクからの読出し信号は、ヘッドＩＣ２４でプリ増幅された後、リードライトＬＳＩ２６に内蔵されているリードデータ復調部においてリードデータの復調が行われ、ハードディスクコントローラ２８でＥＣＣのデコード処理によるエラー検出訂正を行った後、転送バッファとしてのＳＤＲＡＭ３２のバッファを経由して、ホストインタフェース３０から上位装置にリードデータが転送される。
【００４３】
図３は図２のリードライトＬＳＩの内部構成のブロック図である。図３において、ライトデータ変調部７５は、スクランブル回路４４、ＲＬＬエンコーダ４６、プリコーダ４８で構成される。またリードデータ復調部７６は可変利得アンプ（ＶＧＡ）５０、非対称性補正回路５２、ローパスフィルタ（ＬＰＦ）５４、ＡＤコンバータ５６、ＦＩＲフィルタ５８、ビタビデコータ６０、ＲＬＬデコーダ６２及びデスクランブル回路６４で構成される。
【００４４】
ハードディスクコントローラ２８からのＮＲＺライトデータはスクランブル回路４４でランダマイズされた後、ＲＬＬエンコーダ４６で例えば３２／３４ＲＬＬ符号に変換され、連続する「０」の数が最小３２で最大３４のデータとなる。
【００４５】
プリコーダ４８は、１ビット前の磁化反転の影響で次の磁化反転が前方にシフトする非線形シフト（ＮＬＴＳ）を補償するため、ライトデータを予め僅かに移動させる。プリコーダ４８のライトデータはＮＲＺ符号からＮＲＺＩ符号（Ｎｏｎ  −Ｒｅｔｕｒｎ−ｔｏ  Ｚｅｒｏ  Ｉｎｔｅｒｌｅａｖｅ符号）に変換された後にヘッドＩＣ２４内のライトアンプによりデータに対応した記録電流をライトヘッド４０に流し、磁気ディスク媒体に記録される。
【００４６】
磁気ディスク媒体２２に記録されたデータはリードヘッド４２で読み出され、ヘッドＩＣ２４に内蔵したプリアンプで増幅した後、可変利得アンプ５０で読出波形の振幅を一定にし、非対称補正回路７４で読出信号の波形の上下非対称性を補正した後、ローパスフィルタ７２で不要なノイズを除去する。
【００４７】
ＡＤコンバータ５６はＶＦＯ回路（図示せず）からのクロックにより読出信号をサンプルホールドしてデジタル的なリードデータに変換する。ＦＩＲフィルタ５８はパーシャルレスポンスに従ってリードデータを波形等化する。ビタビデコーダ６０は、候補のパスを記憶するパスメモリと、正負交互にデータが反転することにより正しいパスを判定する判定回路で構成され、最尤検出されたリードデータを出力する。
【００４８】
ＲＬＬデコーダ６２は３２／３４ＲＬＬ符号を元のＮＲＺデータに変換する。デスクランブル回路６４は変調時に対する逆変換としてデスクランブルしたＮＲＺリードデータを生成し、ハードディスクコントローラ２８に出力する。
【００４９】
図４は、本発明によるリードゲート最適化処理の機能構成のブロック図である。図４において、本発明のリードゲート最適化処理は、ＭＰＵ３４のプログラム制御によりリードゲート最適化部６６の機能として実現される。
【００５０】
リードゲート最適化部６６は、リードゲート信号のリード開始時間とリード終了時間を変化させながら、リードデータ復調部７６により復調されるリードデータのエラーを検出し、検出されたエラーが最小となるリード開始時間とリード終了時間を判定して、リードゲートを発生するハードディスクコントローラ２８のフラッシュＲＯＭ３６に設定する。
【００５１】
ＭＰＵ３４に設けたリードゲート最適化部６６は、パラメータ設定部６８、タイミング調整部７０、最適時間判定部７４及びエラー検出部７２の機能を有する。パラメータ設定部６８には、図５に示すようなパラメータテーブル７８が格納されている。
【００５２】
図５のパラメータテーブル７８には、リードゲート信号について予め設定されたディフォルトとしてのリード開始時間ＴＳとリード終了時間ＴＥ、更にタイミング調整部７０でリードゲート信号のリード開始時間とリード終了時間を変化させるための可変量として、この実施形態にあっては「０，＋１，＋２，＋３，＋４，−１，−２，−３，−４」で示されるバイト時間が格納されている。
【００５３】
このパラメータ設定部６８に設定されたリード開始時間ＴＳ、リード終了時間ＴＥ及び可変量に基づき、タイミング調整部７０はリードゲート最適化のために行われる複数回のテストリード実行ごとに、リードゲート信号のリード開始時間とリード終了時間を異なる時間に変化させてリードデータ復調部７６に出力する。
【００５４】
ここでタイミング調整部７０による調整は、リードゲート信号のリード開始時間を可変させる処理と、リードゲート信号のリード終了時間を可変させる処理とを分けて個別に行う。なお、実際のプログラムにあっては、パラメータテーブル７８のパラメータはプログラム領域の値として確保されている。
【００５５】
エラー検出部７２は、タイミング調整部７０からのリードゲート信号によるテストリード実行ごとに、リードデータ復調部７６で復調されたリードデータのエラーを検出する。本発明におけるリードデータのエラー検出方法としては次の２つのいずれかを行う。
（１）ビタビデコーダ６０におけるビタビ・メトリック・マージン（ＶＭＭ）
（２）エラーレート
ビタビデコーダ６０内部で検出されるビタビ・メトリック・マージンは、内蔵したパスメモリにおいて分岐に失敗したパスの数をカウントしており、比較的短いリードデータにより得られる値であり、より高速にリードデータのエラーを検出することができる。
【００５６】
これに対しエラーレートは、ライトデータとリードデータをビット単位に比較して、エラーしたビット数をカウントするもので、エラーレートを正確に検出できるが、ある程度の量のリードデータを必要とするため、ビタビ・メトリック・マージンによるエラー検出に比べ時間がかかることになる。
【００５７】
最適時間判定部７４はエラー検出部７２により検出された複数回のテストリード実行結果に対するエラーのうち、エラーが最小となるタイミング調整されたリードゲート信号のリード開始時間とリード終了時間を最適時間として判定し、リードゲート発生部として機能するハードディスクコントローラ２８の時間発生管理情報として、フラッシュＲＯＭ３６にパラメータ設定部６８を経由して格納する。
【００５８】
図６は本発明の磁気ディスク装置におけるリード及びライトのタイミングチャートである。図６（Ａ）はハードディスクコントローラ２８から出力されるフォーマット処理が済んだＮＲＺライトデータであり、ギャップ領域ＧＡＰ１、パイロット領域ＰＬＯ、サーボ膜領域ＳＭ１、データ領域Ｄａｔａ、エラー検出修正領域ＥＣＣ、パッド領域ＰＡＤ及びギャップ領域ＧＡＰ２で構成される。
【００５９】
このＮＲＺライトデータは図６（Ｂ）のライトゲート信号に基づき、図６（Ｃ）のように媒体に書き込まれる。ここで、媒体書込データのパイロット部ＰＬＯにはエンコードディレイτｄ１が生じ、またデータ領域Ｄａｔａについてもエンコードディレイτｄ２が生じている。
【００６０】
リード動作は、図６（Ｄ）のセクタパルスを基準に所定のリード開始時間ＴＳとリード終了時間ＴＥにより図６（Ｅ）のリードゲート信号が発生され、リードゲート信号によるリード動作の実行で、図６（Ｆ）のようなフォーマットを持つＮＲＺリードデータがハードディスクコントローラ２８に出力される。
【００６１】
図７は、図４のリードゲート最適化部６６の処理で作成されてハードディスクコントローラ２８によるリードゲート信号発生のためにフラッシュＲＯＭ３６に設定されるリードゲート時間テーブルの説明図である。
【００６２】
このリードゲート時間テーブル８０にあっては、ヘッド番号と媒体のゾーン番号により分けて、リードゲート信号最適化処理で得られたリード開始時間及びリード終了時間を格納している。またリード開始時間及びリード終了時間は、図５のパラメータテーブル７８に示したディフォルトとしてのリード開始時間ＴＳ及びリード終了時間ＴＥに最適化処理でタイミング調整された可変量としてのバイト時間を加算または減算した値として格納している。
【００６３】
図８は、図４のリードゲート最適化部６６でリード開始時間を変化させて最適値を判定する際に検出されたエラーレートの説明図である。図４のリードゲート最適化部６６にあっては、図５に示したパラメータテーブル７８のようにリード開始時間ＴＳの可変量として０，＋１〜＋４，−１〜−４の設定値を含む９つのリード開始時間の変化によるタイミング調整を行っており、それぞれのタイミング調整時間によって得られたエラーレート、即ち縦軸に示すエラー回数を折れ線として、例えば特性曲線８２，８４のような２つを例に取っている。
【００６４】
まず特性曲線８２は設定値によるリードゲート開始時間が最適な場合であり、設定値を中心とした＋１〜＋４バイト及び−１〜−４バイトの各バイト時間の調整に対し、−３〜＋３バイトの範囲でエラーカウントが設定値の場合とほぼ同じ最小値を示している。このため設定値としてのリードゲート開始時間は、エラーが最小であると同時に、時間的に見た前後について十分なタイミングマージンを持つことから、安定した値ということができる。
【００６５】
これに対し特性曲線８４は、ディフォルトとしての設定値によるリードゲート開始時間が最適でない場合であり、エラーカウントの最小値は設定値に対し＋側となる＋１，＋２，＋３バイトの各バイト時間で得られている。この場合には、エラーカウントを最小とし且つ左右に十分なマージンを持たせるため、リードゲート開始時間の最適値を＋２バイトとし、設定値の時間に対し後ろ側に持っていけばよい。
【００６６】
このようなエラーカウントに基づくリードゲート開始時間をエラーカウントの最小値で且つマージンも十分に取れるようにする最適値の判定は、エラーゲート終了時間についても同様にして行われる。またエラーカウントの代わりにビタビデコーダ内で得られるビタビ・メトリック・マージンについて、マージンが最大となる最適時間、即ちパスメモリの分岐失敗数が最小となる時間で且つマージンを十分に持つ時間を最適時間として判定する。
【００６７】
図９は、本発明によるリードゲート最適化処理のフローチャートであり、この処理手順が図４におけるＭＰＵ３４のプログラムの内容を表わしている。ここで図９のリードゲート最適化処理は、磁気ディスク装置における例えば次のタイミングで実行される。
（１）パワーオンスタート時にリードゲート最適化処理を実行
（２）パワーオンスタート時にリードゲート最適化処理を実行した後、所定のタイムスケジュールに従ってリードゲート最適化処理をその後実行
（３）磁気ディスク装置の内部温度などの環境条件の変化を検出したときにリードゲート最適化処理を実行
また磁気ディスク装置の運用中にリードゲート最適化処理を実行する際には、リードライト動作が行われていないアイドル状態で実行することになる。
【００６８】
更に本発明のリードゲート最適化処理にあっては、磁気ディスク媒体のゾーンごとに実行するが、この場合、まず選択したゾーンの所定の位置にテストデータを書き込んだ後に、テストリードを実行しながらリードゲート最適化処理を行うことになる。
【００６９】
リードゲート最適化処理に使用するテストデータとしては、ユーザデータをそのまま使用することも可能であるが、ユーザデータの破損などを回避するためには、専用のテストデータの領域を割り付け、ここにテストデータを書き込んでテストリードすることが望ましい。図９のリードゲート最適化処理の手順は次のようになる。
【００７０】
ステップＳ１：ヘッド番号Ｈ＝０、ゾーン番号Ｚ＝０に初期化する。
ステップＳ２：ヘッド番号Ｈ＝０のヘッドを選択し、ゾーン番号Ｚ＝０にヘッドをシークしてオントラックする。
ステップＳ３：リード開始時間の最適化処理を実行する。
ステップＳ４：リード終了時間の最適化処理を実行する。
ステップＳ５：最終ゾーンか否か判別し、最終ゾーンでなければステップＳ６に進む。最終ゾーンであればステップＳ７に進む。
ステップＳ６：ゾーン番号Ｚを１つ増加して、ステップＳ２に戻る。
ステップＳ７：最終ヘッドか否か判別し、最終ヘッドでなければステップＳ８に進み、最終ヘッドであればステップＳ９に進む。
ステップＳ８：ヘッド番号Ｈを１つ増加し、且つゾーン番号をＺ＝０に初期化した後、ステップＳ２に戻る。
ステップＳ９：調整結果として得られた図７のようなリードゲート時間テーブル８０をハードディスクコントローラ２８側のフラッシュＲＯＭ３６に格納する。
【００７１】
図１０は、図９のステップＳ３におけるリード開始時間最適化処理のフローチャートであり、次の処理手順に従って行われる。なお、このフローチャートにあっては、エラーとしてビタビ・メトリック・マージンを測定した場合を例に取っている。
【００７２】
ステップＳ１：リード開始時間のディフォルト値ＴＳをセットし、リード終了時間ＴＥは固定とする。
ステップＳ２：テストデータのリードを調整されたリード開始時間と固定のリード終了時間を持つリードゲート信号の発生により実行する。
ステップＳ３：ビタビデコーダ６０内のビタビ・メトリック・マージンを測定する。
ステップＳ４：＋バイト時間によるオフセットが終了したか否かチェックし、終了していなければステップＳ５に進み、終了していればステップＳ６に進む。
ステップＳ５：リード開始時間ＴＳを（ＴＳ＋１）として１バイト遅くする。
ステップＳ６：リード開始時間の−オフセットが終了したか否か判別する。終了していなければステップＳ７に進み、終了していればステップＳ８に進む。
ステップＳ７：リード開始時間ＴＳを（ＴＳ＋１）として１バイト早める。
ステップＳ８：測定されたビタビ・メトリック・マージンから最適開始時間を判定する。
ステップＳ９：リード開始時間が変更か否か判別し、変更がなければ処理を終了し、変更があればステップＳ１０に進む。
ステップＳ１０：変更したリード開始時間をテーブルに保存する。
【００７３】
図１１は、図９のステップＳ４におけるリード終了時間最適化処理のフローチャートである。このリード終了時間最適化処理の処理手順は基本的に図１０のリード開始時間最適化処理と同じであり、図１０におけるリード開始時間ＴＳをリード終了時間ＴＥと読み替えればよい。
【００７４】
ステップＳ１：リード終了時間のディフォルト値ＴＥをセットし、リード開始時間ＴＳは固定とする。
ステップＳ２：テストデータのリードを固定のリード開始時間と調整されたリード終了時間を持つリードゲート信号の発生により実行する。
ステップＳ３：ビタビデコーダ６０内のビタビ・メトリック・マージンを測定する。
ステップＳ４：＋バイト時間によるオフセットが終了したか否かチェックし、終了していなければステップＳ５に進み、終了していればステップＳ６に進む。
ステップＳ５：リード終了開始時間ＴＳを（ＴＳ＋１）として１バイト遅くする。
ステップＳ６：リード終了時間の−オフセットが終了したか否か判別する。終了していなければステップＳ７に進み、終了していればステップＳ８に進む。
ステップＳ７：リード終了時間ＴＳを（ＴＳ＋１）として１バイト早める。
ステップＳ８：測定されたビタビ・メトリック・マージンから最適終了時間を判定する。
ステップＳ９：リード終了時間が変更か否か判別し、変更がなければ処理を終了し、変更があればステップＳ１０に進む。
ステップＳ１０：変更したリード終了時間をテーブルに保存する。
【００７５】
なお上記の実施形態にあっては、リードゲート信号におけるリード開始時間とリード終了時間の両方をタイミング調整により最適化しているが、リード開始時間のみをタイミング調整して最適化する実施形態であってもよいし、リード終了時間のみのタイミング調整して最適化する処理であってもよい。
【００７６】
また本発明は上記の実施形態に限定されず、その目的と利点を損なうことのない適宜の変形を含む。更に本発明は上記の実施形態に示した数値による限定は受けない。
ここで本発明の特徴を列挙すると次の付記のようになる。
【００７７】
（付記）
（付記１）
セクタパルスを基準に設定された所定のリード開始時間とリード終了時間をもつリードゲート信号を発生するリードゲート発生部と、
前記リードゲート信号に基づくリード実行により媒体の読出信号からリードデータを再生するデータ復調部と、
を備えた磁気ディスク装置に於いて、
前記リードゲート信号のリード開始時間とリード終了時間を変化させながら前記データ復調部により復調されるリードデータのエラーを検出し、検出されたエラーが最小となるリード開始時間とリード終了時間を判定して前記リードゲート発生部に設定するリードゲート最適化部を設けたことを特徴とする磁気ディスク装置。（１）
【００７８】
（付記２）
付記１記載の磁気ディスク装置に於いて、前記リードゲート最適化部は、
複数回のテストリード実行毎に、リードゲート信号のリード開始時間とリード終了時間を変化させて前記データ復調部に出力するタイミング調整部と、
前記タイミング調整部からリードゲート信号によりテストリード実行毎に前記データ復調部で復調されたリードデータのエラーを検出するエラー検出部と、
前記エラー検出部により検出された複数のエラーの内、エラーが最小となるリードゲート信号のリード開始時間とリード終了時間を最適時間として判定して前記リードゲート発生部に設定する最適時間判定部と、
を備えたことを特徴とする磁気ディスク装置。（２）
【００７９】
（付記３）
付記２記載の磁気ディスク装置に於いて、
前記タイミング調整部は、前記リードゲート信号のリード開始時間とリード終了時間とを個別に変化させ、
前記最適時間判定部は、前記エラー検出部により検出されたエラーが最小となるリード開始時間とリード終了時間を個別に判定して前記リードゲート発生部に設定することを特徴とする磁気ディスク装置。
【００８０】
（付記４）
付記２記載の磁気ディスク装置に於いて、前記タイミング調整部は、前記リード開始時間及びリード終了時間を、デフォルト値を中心に前後に所定時間単位で変化させることを特徴とする磁気ディスク装置。
【００８１】
（付記５）
付記２記載の磁気ディスク装置に於いて、前記タイミング調整部は、前記リード開始時間及びリード終了時間を、デフォルト値を中心に前後にリードデータの１バイト時間単位で変化させることを特徴とする磁気ディスク装置。
【００８２】
（付記６）
付記２記載の磁気ディスク装置に於いて、
前記エラー検出部は、前記リードデータのエラーとして、前記データ復調部に設けたビタビ判定部のビタビ・メトリック・マージンを検出し、
前記最適時間判定部は、検出されたビタビ・メトリック・マージンが最大となるリード開始時間及びリード終了時間を判定して前記リードゲート発生部に設定することを特徴とする磁気ディスク装置。
【００８３】
（付記７）
付記１記載の磁気ディスク装置に於いて、
前記エラー検出部は、前記データ復調部により復調されるリードデータのエラーレートを検出し、
前記最適時間判定部は、検出されたエラーレートが最小となるリード開始時間及びリード終了時間を判定して前記リードゲート発生部に設定することを特徴とする磁気ディスク装置。
【００８４】
（付記８）
付記１記載の磁気ディスク装置に於いて、パワーオンスタート時に、前記リードゲート最適化部を動作させることを特徴とする磁気ディスク装置。
【００８５】
（付記９）
付記１記載の磁気ディスク装置に於いて、所定のタイムスケジュールに従って前記リードゲート最適化部を動作させることを特徴とする磁気ディスク装置。
【００８６】
（付記１０）
付記１記載の磁気ディスク装置に於いて、装置内部温度等の環境条件の変化を検出した際に前記リードゲート最適化部を動作させることを特徴とする磁気ディスク装置。
【００８７】
（付記１１）
付記１記載の磁気ディスク装置に於いて、複数の読出ヘッドを備えた場合、各ヘッド単位に前記リードゲート最適化部を動作させることを特徴とする磁気ディスク装置。
【００８８】
（付記１２）
付記１記載の磁気ディスク装置に於いて、媒体をゾーン分割した場合、各ゾーン単位に前記リードゲート最適化部を動作させることを特徴とする磁気ディスク装置。
【００８９】
（付記１３）
セクタパルスを基準に設定された所定のリード開始時間とリード終了時間をもつリードゲート信号を発生するリードゲート発生部と、前記リードゲート信号に基づくリード実行により媒体の読出信号からリードデータを再生するデータ復調部とを備えた磁気ディスク装置のリードゲート最適化方法に於いて、
複数回のテストリード実行毎に、リードゲート信号のリード開始時間とリード終了時間を変化させて前記データ復調部に出力するタイミング調整ステップと、
前記タイミング調整ステップで出力されたリードゲート信号によりテストリード実行毎に前記データ復調部で復調されたリードデータのエラーを検出するエラー検出ステップと、
前記エラー検出ステップにより検出された複数のエラーの内、エラーが最小となるリードゲート信号のリード開始時間とリード終了時間を最適時間として判定して前記リードゲート発生部に設定する最適時間判定ステップと、
を備えたことを特徴とする磁気ディスク装置のリードゲート最適化方法。（３）
【００９０】
（付記１４）
付記１３記載の磁気ディスク装置のリードゲート最適化方法に於いて、前記タイミング調整ステップは、前記リードゲート信号のリード開始時間とリード終了時間とを個別に変化させることを特徴とする磁気ディスク装置のリードゲート最適化方法。
【００９１】
（付記１５）
付記１３記載の磁気ディスク装置のリードゲート最適化方法に於いて、前記タイミング調整ステップは、前記リード開始時間及びリード終了時間を、デフォルト値を中心に前後に所定時間単位で変化させることを特徴とする磁気ディスク装置のリードゲート最適化方法。
【００９２】
（付記１６）
付記１３記載の磁気ディスク装置のリードゲート最適化方法に於いて、前記タイミング調整ステップは、前記リード開始時間及びリード終了時間を、デフォルト値を中心に前後にリードデータの１バイト時間単位で変化させてエラーを検出することを特徴とする磁気ディスク装置のリードゲート最適化方法。
【００９３】
（付記１７）
付記１記載の磁気ディスク装置のリードゲート最適化方法に於いて、
前記エラー検出ステップは、前記リードデータのエラーとして、前記データ復調部に設けたビタビ判定部のビタビ・メトリック・マージンを検出し、
前記最適時間判定ステップは、検出されたビタビ・メトリック・マージンが最大となるリード開始時間及びリード終了時間を判定して前記リードゲート発生部に設定することを特徴とする磁気ディスク装置のリードゲート最適化方法。
【００９４】
（付記１８）
付記１記載の磁気ディスク装置のリードゲート最適化方法に於いて、
前記エラー検出ステップは、前記データ復調部により復調されるリードデータのエラーレートを検出し、
前記最適時間判定ステップは、検出されたエラーレートが最小となるリード開始時間及びリード終了時間を判定して前記リードゲート発生部に設定することを特徴とする磁気ディスク装置のリードゲート最適化方法。
【００９５】
（付記１９）
セクタパルスを基準に設定された所定のリード開始時間とリード終了時間をもつリードゲート信号を発生するリードゲート発生部と、前記リードゲート信号に基づくリード実行により媒体の読出信号からリードデータを再生するデータ復調部とを備えた磁気ディスク装置内蔵のコンピュータに、
複数回のテストリード実行毎に、リードゲート信号のリード開始時間とリード終了時間を変化させて前記データ復調部に出力するタイミング調整ステップと、
前記タイミング調整ステップで出力されたリードゲート信号によりテストリード実行毎に前記データ復調部で復調されたリードデータのエラーを検出するエラー検出ステップと、
前記エラー検出ステップにより検出された複数のエラーの内、エラーが最小となるリードゲート信号のリード開始時間とリード終了時間を最適時間として判定して前記リードゲート発生部に設定する最適時間判定ステップと、
を実行させることを特徴とするプログラム。（５）
【００９６】
【発明の効果】
以上説明してきたように本発明によれば、リードゲートのリード開始時間の最適化を行うことで、媒体から読み出されたデータを対象に正しくリード動作を実行することができ、エラーの少ないデータ読出しを実現することができる。
【００９７】
また、リード終了時間について最適化を行うことにより、媒体に書かれたデータを末尾まで確実にリードすることができ、この結果、パイプライン処理によりリード処理がパイプラインなしの時に比べて早く終わっている場合にも、媒体のデータを正しい位置までリードすることができ、パッド部以降に書かれていないゴミデータを読むことがなくなり、ＥＣＣにおけるミスコレクションを防止することができる。
【図面の簡単な説明】
【図１】本発明の原理説明図
【図２】本発明が適用される磁気ディスク装置のブロック図
【図３】図２のリードライトＬＳＩの内部構成のブロック図
【図４】本発明によるリードゲート最適化処理の機能構成のブロック図
【図５】図４のパラメータ設定部に保持されるパラメータテーブルの説明図
【図６】本発明におけるライト及びリードのタイミングチャート
【図７】図４のリードゲート最適化処理により生成されるリードゲート時間テーブルの説明図
【図８】本発明でリード開始時間を変化させたときのエラーレートの説明図
【図９】本発明のリードゲート最適化処理のフローチャート
【図１０】図９におけるリード開始時間最適化処理のフローチャート
【図１１】図９におけるリード終了時間最適化処理のフローチャート
【符号の説明】
１０：ハードディスクドライブ（ＨＤＤ）
１２：ディスクエンクロージャ
１４：コントロールボード
１６：スピンドルモータ（ＳＰＭ）
１８：ボイスコイルモータ（ＶＣＭ）
２０，２０−１，２０−２：磁気ディスク媒体
２２−１〜２２−４：ヘッド
２４：ヘッドＩＣ
２６：リードライトＬＳＩ
２８：ハードディスクコントローラ（ＨＤＣ）
３０：ホストインタフェース
３２：ＳＤＲＡＭ
３４：ＭＰＵ
３６：フラッシュＲＯＭ
３８：ＶＣＭ／ＳＰＭコントローラ
４０：ライトヘッド
４２：リードヘッド
４４：スクランブル回路
４６：ＲＬＬエンコーダ
４８：プリコーダ
５０：可変利得アンプ（ＶＧＡ）
５２：非対称性補正回路
５４：ローパスフィルタ（ＬＰＦ）
５６：ＡＤコンバータ
５８：有限長フィルタ（ＦＩＲフィルタ）
６０：ビタビデコーダ
６２：ＲＬＬデコーダ
６４：デスクランブル回路
６６：リードゲート最適化部
６８：パラメータ設定部
７０：タイミング調整部
７２：エラー検出部
７４：最適時間判定部
７５：ライトデータ変調部
７６：リードデータ復調部
７８：パラメータテーブル
８０：リードゲート時間テーブル
【図１】
2004342213.tif 000004
【図２】
2004342213.tif 000005
【図３】
2004342213.tif 000006
【図４】
2004342213.tif 000007
【図５】
2004342213.tif 000008
【図６】
2004342213.tif 000009
【図７】
2004342213.tif 000010
【図８】
2004342213.tif 000011
【図９】
2004342213.tif 000012
【図１０】
2004342213.tif 000013
【図１１】
2004342213.tif 000014