(57)【特許請求の範囲】
【請求項１】
ヘッドとディスクとを有するディスク記憶装置において、前記ヘッドを前記ディスク上の目標位置に移動させるシーク制御と、前記ヘッドを前記目標位置を基準とする目標範囲内に位置決め整定するトラック追従制御とを実行するヘッド位置決め制御システムであって、
前記ヘッドの位置と前記目標位置との位置誤差を検出する手段と、
前記位置誤差から前記ヘッドを前記目標位置に位置決めするためのフィードバック値を算出する手段と、
前記位置誤差に含まれる、前記ディスクの回転に同期した偏心成分の大きさを表す偏心量を適応学習により取得する適応学習手段と、
前記適応学習手段により取得された偏心量を抑制するためのフィードフォワード値を算出する手段と、
前記フィードバック値及び前記フィードフォワード値を加算して前記ヘッドの位置決め制御値として出力する手段と、
前記ディスクの予め定められた異なる半径位置毎の偏心量が予め記憶された不揮発性記憶手段と、
前記ディスクの予め定められた異なる半径位置毎の偏心量を、前記適応学習手段での適応学習の初期値として記憶する初期値記憶手段と、
前記目標位置に応じて前記初期値記憶手段から前記適応学習手段での適応学習に必要な初期値を選択して、その選択した初期値を前記適応学習手段に与える初期値決定手段と、
前記ディスク記憶装置の起動時に、前記不揮発性記憶手段に記憶されている前記ディスクの予め定められた異なる半径位置毎の適応学習の初期値を前記初期値記憶手段にコピーする手段と、
前記ディスク記憶装置の起動時に、前記ディスクの特定の半径位置での偏心量を前記適応学習手段により学習させる手段と、
前記不揮発性記憶手段から前記初期値記憶手段にコピーされた予め定められた異なる半径位置毎の適応学習の初期値のうちの前記ディスクの特定の半径位置に対応する適応学習の初期値に対する、前記ディスク記憶装置の起動時に学習された前記ディスクの特定の半径位置での偏心量の変化率を算出する手段と、
前記初期値記憶手段に記憶されている予め定められた異なる半径位置毎の適応学習の初期値を、算出された変化率に応じて補正する補正手段と
を具備することを特徴とするヘッド位置決め制御システム。
【請求項２】
ヘッドとディスクとを有するディスク記憶装置において、前記ヘッドを前記ディスク上の目標位置に移動させるシーク制御と、前記ヘッドを前記目標位置を基準とする目標範囲内に位置決め整定するトラック追従制御とを実行するヘッド位置決め制御システムであって、
前記ヘッドの位置と前記目標位置との位置誤差を検出する手段と、
前記位置誤差から前記ヘッドを前記目標位置に位置決めするためのフィードバック値を算出する手段と、
前記位置誤差に含まれる、前記ディスクの回転に同期した偏心成分の大きさを表す偏心量を適応学習により取得する適応学習手段と、
前記適応学習手段により取得された偏心量を抑制するためのフィードフォワード値を算出する手段と、
前記フィードバック値及び前記フィードフォワード値を加算して前記ヘッドの位置決め制御値として出力する手段と、
前記ディスクの予め定められた異なる半径位置毎の偏心量から求められる前記ディスクの半径位置に対する偏心量の関係を表す偏心特性情報が予め記憶された不揮発性記憶手段と、
前記ディスクの予め定められた異なる半径位置毎の偏心量から求められる前記ディスクの半径位置に対する偏心量の関係を表す偏心特性情報を記憶する偏心特性記憶手段と、
前記目標位置と前記偏心特性記憶手段に記憶されている偏心特性情報とから当該目標位置での偏心量を推定し、その推定した偏心量を前記適応学習手段での適応学習に必要な初期値として当該適応学習手段に与える初期値決定手段と、
前記ディスク記憶装置の起動時に、前記不揮発性記憶手段に記憶されている偏心特性情報を前記偏心特性記憶手段にコピーする手段と、
前記ディスク記憶装置の起動時に、前記ディスクの特定の半径位置での偏心量を前記適応学習手段により学習させる手段と、
前記不揮発性記憶手段から前記偏心特性記憶手段にコピーされた偏心特性情報から前記ディスクの特定の半径位置での偏心量を推定する手段と、
前記ディスクの特定の半径位置での推定された偏心量に対する、前記ディスク記憶装置の起動時に学習された前記ディスクの特定の半径位置での偏心量の変化率を算出する手段と、
前記偏心特性記憶手段に記憶されている偏心特性情報を、算出された変化率に応じて補正する補正手段と
を具備することを特徴とするヘッド位置決め制御システム。
【請求項３】
ヘッドとディスクとを有するディスク記憶装置において、前記ヘッドを前記ディスク上の目標位置に移動させるシーク制御と、前記ヘッドを前記目標位置を基準とする目標範囲内に位置決め整定するトラック追従制御とを実行するヘッド位置決め制御方法であって、
前記ディスクの回転に同期した偏心成分の大きさを表す偏心量を、前記ディスクの予め定められた異なる半径位置毎に予め学習して不揮発性記憶手段に記憶するステップと、
前記ディスク記憶装置の起動時に、前記不揮発性記憶手段に記憶されている前記ディスクの予め定められた異なる半径位置毎の偏心量を適応学習の初期値として初期値記憶手段にコピーするステップと、
前記ヘッドの位置と前記目標位置との位置誤差が検出される度に、当該位置誤差から前記ヘッドを前記目標位置に位置決めするためのフィードバック値を算出するステップと、
前記トラック追従制御の期間、前記位置誤差が検出される度に、当該位置誤差に含まれる偏心成分の大きさを表す偏心量を適応学習により取得するステップと、
前記適応学習に用いられる初期値を、前記初期値記憶手段に記憶されている半径位置毎の偏心量から前記目標位置に応じて選択して、当該適応学習で使用させるステップと、
前記適応学習により取得された偏心量を抑制するためのフィードフォワード値を算出するステップと、
前記フィードバック値及び前記フィードフォワード値を加算して前記ヘッドの位置決め制御値として出力するステップと、
前記ディスク記憶装置の起動時に、前記ディスクの特定の半径位置での偏心量を適応学習により取得するステップと、
前記不揮発性記憶手段から前記初期値記憶手段にコピーされた予め定められた異なる半径位置毎の適応学習の初期値のうちの前記ディスクの特定の半径位置に対応する適応学習の初期値に対する、前記ディスク記憶装置の起動時に学習された前記ディスクの特定の半径位置での偏心量の変化率を算出するステップと、
前記初期値記憶手段に記憶されている予め定められた異なる半径位置毎の適応学習の初期値を、算出された変化率に応じて補正するステップと
を具備することを特徴とするヘッド位置決め制御方法。
【請求項４】
ヘッドとディスクとを有するディスク記憶装置において、前記ヘッドを前記ディスク上の目標位置に移動させるシーク制御と、前記ヘッドを前記目標位置を基準とする目標範囲内に位置決め整定するトラック追従制御とを実行するヘッド位置決め制御方法であって、
前記ディスクの回転に同期した偏心成分の大きさを表す偏心量を、前記ディスクの予め定められた異なる半径位置毎に予め学習して、前記ディスクの半径位置に対する偏心量の関係を表す偏心特性情報を抽出するステップと、
抽出された特性情報を不揮発性記憶手段に記憶するステップと、
前記ディスク記憶装置の起動時に、前記不揮発性記憶手段に記憶されている偏心情報を偏心特性記憶手段にコピーするステップと、
前記ヘッドの位置と前記目標位置との位置誤差が検出される度に、当該位置誤差から前記ヘッドを前記目標位置に位置決めするためのフィードバック値を算出するステップと、
前記トラック追従制御の期間、前記位置誤差が検出される度に、当該位置誤差に含まれる偏心成分の大きさを表す偏心量を適応学習により取得するステップと、
前記適応学習に用いられる初期値を前記目標位置と前記偏心特性記憶手段に記憶されている偏心特性情報とから推定して、当該適応学習で使用させるステップと、
前記適応学習により取得された偏心量を抑制するためのフィードフォワード値を算出するステップと、
前記フィードバック値及び前記フィードフォワード値を加算して前記ヘッドの位置決め制御値として出力するステップと
前記ディスク記憶装置の起動時に、前記ディスクの特定の半径位置での偏心量を適応学習により取得するステップと、
前記不揮発性記憶手段から前記偏心特性記憶手段にコピーされた偏心特性情報をもとに前記ディスクの特定の半径位置での偏心量を推定するステップ、
前記ディスクの特定の半径位置での推定された偏心量に対する、前記ディスク記憶装置の起動時に学習された前記ディスクの特定の半径位置での偏心量の変化率を算出するステップと、
前記偏心特性記憶手段に記憶されている偏心特性情報を、算出された変化率に応じて補正するステップと
を具備することを特徴とするヘッド位置決め制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ヘッドをディスク上の目標位置（が属する目標トラック）に移動させて当該目標位置を基準とする目標範囲内に位置決めするための制御を実行するディスク記憶装置に係り、特にディスクの回転に同期する偏心量のディスクの半径位置の違いを補正することが可能なヘッド位置決め制御システム及び方法に関する。
【０００２】
【従来の技術】
従来、磁気ディスク装置に代表されるディスク記憶装置には、ディスク（ディスク記録媒体）上の目標位置（が属する目標トラック）の目標範囲内に、ヘッドを位置決め制御するためのサーボシステム（ヘッド位置決め制御システム）が設けられている。このサーボシステムは、ディスク上に離散的に配置されたサーボエリアからヘッドにより再生されるサーボデータに基づいて、当該ヘッドを搭載しているアクチュエータ（制御対象）を駆動制御する。サーボシステムは、アクチュエータを駆動制御することにより、ヘッドを目標トラックまで移動させるシーク動作を実行するシーク制御機能と、目標トラックに移動されたヘッドを当該目標トラックの目標範囲内に位置決めするためのトラック追従動作を実行するトラック追従制御機能とを有している。
【０００３】
従来のサーボシステムは、フィードバック制御システムによって実現されている。このフィードバック制御システムは、位置誤差検出器とフィードバック（ＦＢ）コントローラとを主要素とする。位置誤差検出器は、ヘッド位置ｙと目標位置ｒとの位置誤差ｅを検出する。目標位置ｒは、シーク動作では目標トラック（目標トラック位置）であり、トラック追従動作では目標トラックの例えば中心線である。なお、ヘッドがＭＲ（Ｍａｇｎｅｔｏ  Ｒｅｓｉｓｔｉｖｅ；磁気抵抗効果型）ヘッドのようにリードヘッドとライトヘッドとから構成されている場合には、トラック追従動作における目標位置はリード時とライト時とで異なる。
【０００４】
フィードバック（ＦＢ）コントローラは、位置誤差検出器によって検出される位置誤差ｅを観測し、当該位置誤差ｅを解消するための制御値（フィードバック値）Ｕｂを算出する。この制御値Ｕｂは制御対象（プラント）に与えられる。制御対象は、ＦＢコントローラからの制御値Ｕｂに応じてヘッドを駆動制御する。ここで、ＦＢコントローラは、ディスク記憶装置の主制御装置を構成するマイクロプロセッサ（ＣＰＵ）である。また、制御対象は、ボイスコイルモータ（ＶＣＭ）を含むロータリ型アクチュエータである。
【０００５】
ところで、ディスク上の目標位置ｒは、ディスクの回転偏心（ｄｉｓｋ  ｒｕｎｏｕｔ）や、ディスクをスピンドルモータのハブにねじ止めすることに起因するディスクの半径方向の歪み等により、ディスクの回転に同期して変動することが確認されている。しかし、上記したフィードバック制御システムでは、この変動する成分の大きさ（偏心量）を観測することはできない。
【０００６】
そこで近年は、特開平１１−３９８１４号公報に記載されているような、ディスクの回転に同期する偏心成分の大きさ（偏心量）を位置誤差から検出（算出）し、その偏心量を位置誤差から除去するサーボシステム（を備えたディスク装置）が提案されている。この偏心量は、上記位置誤差の観測値に対してフーリエ級数展開を施すフーリエ変換演算を実行することで、偏心次数に対応する各フーリエ係数毎のサイン（ｓｉｎ）成分とコサイン（ｃｏｓ）成分として求められる。上記公報記載のサーボシステム（ヘッド位置決め制御システム）では、トラック追従動作において、１サンプル前に得られた偏心量のフーリエ係数、つまり学習値に、現時点の位置誤差の観測値より得られるフーリエ級数の変化分を加算することで、現時点のヘッド位置における偏心量を求める適応学習手法が適用される。この学習手法では、学習値（適応学習値）の初期値が必要となる。
【０００７】
しかし、サーボシステムに学習値の初期値を与えるには、次の点を考慮する必要がある。即ち、ヘッドはロータリ型アクチュエータにより駆動されることから、ヘッドのディスク上の軌跡は円弧状となる。このため、ディスクの回転に同期する偏心量は、トラック位置によって、つまりディスクの半径方向位置（半径位置）によって変化するという点である。即ち、ヘッド位置によって学習値の初期値を切り替える必要があるということである。
【０００８】
そこで米国特許第６００２５４０号明細書では、特定トラックで学習した偏心量を目標トラック位置に応じて補正することで、ヘッド位置に適した学習値の初期値を決定することが提案されている。ここでは、補正量のディスクの半径位置の違いによる振幅差を予め定められた１つの数式モデルに従って求めることで、ヘッド位置に適した学習値の初期値を決定している。
【０００９】
【発明が解決しようとする課題】
上記したように近年は、ヘッドの主としてトラック追従制御の精度を向上するために、ディスクの回転に同期する偏心量を位置誤差から検出し、その偏心量を位置誤差から除去するサーボシステムが知られている。また、この種のサーボシステムに好適な技術として、米国特許第６００２５４０号明細書に記載されている技術、即ち特定トラック（学習トラック）で学習した偏心量を予め定められた数式モデルに従って目標トラック位置に適した値に補正して、その補正後の値を目標トラック位置での学習値の初期値とする技術（以下、先行技術と称する）が提案されている。
【００１０】
しかし、実際のディスク記憶装置では、ヘッドが位置するディスク半径位置（トラック位置）と偏心量との関係は数式モデル通りの特性になるとは限らない。このため、上記先行技術では装置ばらつきに対応できない。つまり、上記先行技術では、実際のディスク記憶装置に適合しない初期値が用いられるために、シーク後の偏心量の差分を補正するのに多大な時間を要し装置のパフォーマンスが低下する虞があった。
【００１１】
本発明は上記事情を考慮してなされたものでその目的は、適応学習値の初期値として、実際のディスク記憶装置に適合し、且つ目標位置に応じた偏心量を用いることができ、これによりヘッドを目標位置に高精度に追従させることができるヘッド位置決め制御システム及び方法を提供することにある。
【００１２】
【課題を解決するための手段】
本発明は、ヘッドをディスク上の目標位置に移動させるシーク制御と、上記ヘッドを上記目標位置を基準とする目標範囲内に位置決め整定するトラック追従制御とを実行するディスク記憶装置のヘッド位置決め制御システムにおいて、ヘッド位置と目標位置との位置誤差を検出する手段と、上記位置誤差からヘッドを目標位置に位置決めするためのフィードバック値を算出する手段と、上記位置誤差に含まれる、ディスクの回転に同期した偏心成分の大きさを表す偏心量を適応学習により取得する手段と、この取得された偏心量を抑制するためのフィードフォワード値を算出する手段と、上記フィードバック値及び上記フィードフォワード値を加算してヘッドの位置決め制御値として出力する手段と、上記ディスクの予め定められた異なる半径位置毎の偏心量を、上記適応学習手段での適応学習の初期値として記憶する手段と、上記目標位置に応じて、上記初期値記憶手段から上記適応学習手段での適応学習に必要な初期値を選択して、その選択した初期値を当該適応学習手段に与える初期値決定手段とを備えたことを特徴とする。
【００１３】
このようなシステムにおいては、適応学習値の初期値が、目標位置（が属する目標トラック位置）に応じて、実際のディスク記憶装置におけるディスクの半径方向の位置（半径位置）による歪み量等の相違に起因する偏心量（目標位置の変動量）の違いを反映した値に切り替えられるため、ヘッドを目標位置に高精度に追従させることが可能となる。
【００１４】
ここで、ディスクの半径位置に対する偏心量の関係（偏心特性）は、各ディスク記憶装置間だけでなく、各ディスク面間でもばらつく。したがって上記初期値記憶手段には、当該記憶手段を備えたディスク記憶装置における上記ディスクの予め定められた異なる半径位置毎の偏心量を、各ディスク面毎（つまりヘッド毎）に記憶させるようにするとよい。
【００１５】
ここで、少なくとも、トラック追従制御中にヘッドを新たな目標位置（が属する目標トラック）へ移動させるシーク制御への切り替えが必要となった場合に、上記適応学習手段により最も最近に取得された偏心量で、現在のヘッド位置に対応する上記初期値記憶手段内の初期値を更新する手段を上記初期値決定手段に持たせるとよい。この場合、上記初期値記憶手段内の更新後の初期値は、ディスク記憶装置の最新の状態における、該当するディスクの半径位置での偏心量を表す。したがって、ヘッドを目標位置に、より高精度に追従させることが可能となる。
【００１６】
また、ディスク記憶装置の起動時に、上記ディスクの上記予め定められた異なる半径位置毎の偏心量を上記適応学習手段により学習させて、上記初期値記憶手段に記憶させる制御手段を設けるようにしてもよい。この場合、上記初期値記憶手段には、ディスク記憶装置が起動される毎に、当該記憶装置の最新の状態における予め定められた異なる半径位置毎の偏心量が記憶される。したがって、ディスクの半径位置毎の偏心量がディスク記憶装置毎にばらつくだけでなく経時変化したとしても、どのディスク記憶装置においても、そのばらつきに影響されずにヘッドを目標位置に、より高精度に追従させることが可能となる。
【００１７】
また、上記ディスクの上記予め定められた異なる半径位置毎の偏心量が予め記憶された不揮発性記憶手段を追加すると共に、上記制御手段に代えて、ディスク記憶装置の起動時に、上記ディスクの特定の半径位置での偏心量を上記適応学習手段により学習させて、その学習された偏心量と上記不揮発性記憶手段に記憶されている偏心量との関係から、現時点における上記予め定められた異なる半径位置毎の偏心量を推定し、その推定した異なる半径位置毎の偏心量が上記初期値記憶手段に記憶されるように制御する補正手段を用いるようにしてもよい。この場合、ディスク記憶装置の起動時には、ディスクの特定の半径位置での偏心量だけを学習すればよいため、起動時の学習処理のために起動時間が長くなるのを防止できる。なお、不揮発性記憶手段に予め記憶される偏心量の学習値は、ディスク記憶装置の製造時に求めればよい。
【００１８】
また、当該ディスクを半径方向に複数のゾーンに分割し、そのゾーン毎に、上記ディスクの予め定められた異なる半径位置を定めるとよい。この半径位置（トラック位置）をゾーンのほぼ中央に定めるならば、なおよい。ここでは、適応学習手段に初期値を与える際には、目標位置（目標トラック）が、上記複数のゾーンのいずれに属するかを判定し、当該目標位置が属するゾーンに対応する偏心量（初期値）を選択すればよい。
【００１９】
更に、上記初期値記憶手段に代えて、ディスクの予め定められた異なる半径位置毎の偏心量から求められるディスクの半径位置に対する偏心量の関係を表す偏心特性を記憶する偏心特性記憶手段を設けると共に、上記初期値決定手段に代えて、目標位置と上記偏心特性記憶手段に記憶されている偏心特性とから当該目標位置での偏心量を推定し、その推定した偏心量を上記適応学習手段での適応学習に必要な初期値として当該適応学習手段に与える初期値決定手段を設けてもよい。この場合、目標位置での偏心量が高精度に推定できるため、ヘッドを目標位置に、より高精度に追従させることが可能となる。
【００２０】
上記偏心特性記憶手段に記憶される偏心特性は、ディスク記憶装置の起動時に、ディスクの予め定められた異なる半径位置毎の偏心量を適応学習手段により学習させて、その学習結果から求めることが可能である。また、ディスク記憶装置の製造時等に求めて不揮発性記憶手段に予め記憶させておき、ディスク記憶装置の起動時に、ディスクの特定の半径位置での偏心量を適応学習手段により学習させて、その学習された偏心量と不揮発性記憶手段に記憶されている偏心特性との関係から、現時点における偏心特性を推定して、その推定した偏心特性が上記偏心特性記憶手段に記憶されるようにしてもよい。この場合、ディスク記憶装置の起動時には、ディスクの特定の半径位置での偏心量だけを学習すればよいため、起動時の学習処理のために起動時間が長くなるのを防止できる。
【００２１】
なお、以上のヘッド位置決め制御システムに係る本発明は、当該システムを備えたディスク記憶装置に係る発明、或いは当該システムに相当する方法（ヘッド位置決め制御方法）に係る発明としても成立する。
【００２２】
【発明の実施の形態】
以下、本発明を磁気ディスク装置に適用した実施の形態につき図面を参照して説明する。
【００２３】
図１は本発明の一実施形態に係る磁気ディスク装置の構成を示すブロック図である。
図１の磁気ディスク装置（ＨＤＤ）において、１はデータが磁気記録される記録媒体としてのディスク（磁気ディスク）、２はディスク１へのデータ書き込み及びディスク１からのデータ読み出しに用いられるヘッド（磁気ヘッド）である。ヘッド２は、ディスク１の各記録面（ディスク面）に対応してそれぞれ設けられているものとする。なお、図１の構成では、ディスク１が２枚積層配置されたＨＤＤを想定しているが、ディスク１が３枚以上積層配置されたＨＤＤ、或いは単一枚のディスク１を備えたＨＤＤであっても構わない。
【００２４】
ディスク１の記録面には、同心円状の多数のデータトラックが形成されている。各トラックには、ヘッド２のシーク・位置決め等に用いられるサーボデータが記録されたサーボエリアが等間隔で配置されている。つまり本実施形態のＨＤＤでは、ディスク１に、いわゆるセクタサーボ方式のフォーマットを適用している。サーボデータは、トラックコード（シリンダ番号）及びサーボバーストデータを含む。トラックコードは、データトラックを識別するためのトラックアドレスである。サーボバーストデータは、データトラックの目標範囲内にヘッド２を位置決めするためのトラック追従動作に使用される位置誤差データである。サーボエリア間には複数のセクタ（データセクタ）が配置されている。各サーボエリアは、ディスク１上では中心から各トラックを渡って放射状に等間隔で配置されている。
【００２５】
ディスク１はスピンドルモータ（以下、ＳＰＭと称する）３により高速に回転する。ヘッド２はヘッド移動機構としてのロータリ型のアクチュエータ４に取り付けられている。アクチュエータ４は主として、ヘッド２を保持しているサスペンションを含むアーム５と、当該アーム５をディスク１の半径方向に駆動するためのボイスコイルモータ（ＶＣＭ）６とから構成される。アクチュエータ４は、後述するサーボシステムでの制御対象（プラント）２３に相当する。
【００２６】
ＳＰＭ３は、ＳＰＭドライバ７Ａから供給される駆動電流（ＳＰＭ電流）により駆動される。アクチュエータ４は、ＶＣＭドライバ７Ｂから供給される駆動電流（ＶＣＭ電流）により駆動される。本実施形態において、ＳＰＭドライバ７Ａ及びＶＣＭドライバ７Ｂは、１チップに集積回路化されたドライバＩＣ７によって実現されている。
【００２７】
ヘッド２は信号処理回路１０と接続されている。信号処理回路１０は、ヘッドアンプ回路（ヘッドＩＣ）１１と、リード／ライト（Ｒ／Ｗ）チャネル１２と、サーボ処理回路１３とから構成される。ヘッドアンプ回路１１は、ヘッド２により読み出されたリード信号を増幅するリードアンプ、及びライトデータをライト電流に変換するライトアンプを有する。Ｒ／Ｗチャネル１２は、リード信号に対するＡ／Ｄ（アナログ／ディジタル）変換処理、ライトデータの符号化処理及びリードデータの復号化処理等の各種の信号処理を実行する。Ｒ／Ｗチャネル１２は、リード信号をパルス化してパルス化リードデータとして出力するパルス化機能と、サーボ処理回路１３からのタイミング信号（バーストタイミング信号）に応じてサーボデータ中のサーボバーストデータを抽出する機能とを有している。このサーボバーストデータはＣＰＵ１６に送られて、ヘッド２を目標トラックの目標範囲内に位置決めするためのトラック追従制御に用いられる。
【００２８】
サーボ処理回路１３は、Ｒ／Ｗチャネル１２から出力されるリードパルスからバーストタイミング信号を含む各種タイミング信号を生成する機能と、サーボデータに含まれているトラックコードを抽出する機能とを有している。このトラックコードは、ＣＰＵ１６に送られて、ヘッド２を目標トラックに移動するシーク制御に用いられる。
【００２９】
ディスクコントローラ（ＨＤＣ）１４は、ＨＤＤを利用するホストシステムと接続されている。ホストシステムは、パーソナルコンピュータ等のデジタル機器である。ディスクコントローラ１４は、ホストシステムとの間のコマンド（ライトコマンド、リードコマンド等）、データの通信を制御するインタフェース制御機能と、信号処理回路１０を介してディスクｌとの間のデータ転送を制御するディスク制御機能と、バッファメモリ１５を制御するバッファ制御機能とを有する。
【００３０】
バッファメモリ１５は、主として、ホストシステムから転送されてディスクｌに書き込むべきデータ（ライトデータ）を一時格納するためのライトキャッシュと、ディスクｌから読み出されてホストシステムに転送されるデータ（リードデータ）を一時格納するためのリードキャッシュとして用いられる。バッファメモリ１５は例えばＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）を用いて構成される。
【００３１】
ＣＰＵ１６は、不揮発性メモリ、例えば書き換え可能な不揮発性メモリとしてのフラッシュＲＯＭ（Ｆｌａｓｈ  Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）１７に格納されている制御プログラムに従ってＨＤＤ全体の制御を実行する。この制御プログラムは、サーボシステムの制御プロセスを含む。ＣＰＵ１６が制御プロセスを実行することにより実現される制御には、サーボ処理回路１３により抽出されたトラックコードに基づいてヘッド２を目標トラックに移動させるシーク制御と、Ｒ／Ｗチャネル１２により抽出されたバーストデータに基づいてヘッド２を目標トラックの目標範囲内に位置決めするためのトラック追従制御とが含まれている。
【００３２】
ＣＰＵ１６には、フラッシュＲＯＭ（以下、ＦＲＯＭと称する）１７とＲＡＭ１８とが接続されている。ＲＡＭ１８は、ＣＰＵ１６のワーク領域等を提供する。
【００３３】
図２は図１中のＣＰＵ１６が制御プロセスを実行することにより実現されるサーボシステムの概念を説明するためのブロック図である。
図２のサーボシステムはヘッド２をディスク１上の目標位置を基準とする目標範囲内に位置決めするためのヘッド位置決め制御システムである。このシステムは、フィードバック制御系２１と、学習型のフィードフォワード制御系２２とから構成される。
【００３４】
フィードバック制御系２１は、フィードバックコントローラ（以下、ＦＢコントローラと称する）２１１と位置誤差検出器２１２とを主要素とする。フィードフォワード制御系２２は、偏心成分検出器２２１とフィードフォワードコントローラ（以下、ＦＦコントローラと称する）２２２とを主要素とする。
【００３５】
フィードバック制御系２１において、位置誤差検出器２１２は目標位置ｒとヘッド位置ｙとの位置誤差ｅを検出する。シーク制御の場合、目標位置ｒ、ヘッド位置ｙ、位置誤差ｅは、それぞれ目標トラック（目標シーク位置）、ヘッド２が位置するトラック、目標トラックとヘッド２が位置するトラックとの間のトラック差である。ヘッド２が位置するトラックは、サーボ処理回路１３によりサーボデータから抽出されるトラックコードによって示される。一方、トラック追従制御の場合、位置誤差ｅは、Ｒ／Ｗチャネル１２によってリード信号から抽出されるサーボバーストデータの振幅のＡ／Ｄ変換値によって示される。ＦＢコントローラ２１１は、位置誤差ｅをもとに、当該位置誤差ｅを解消する制御値（フィードバック値）Ｕｂを算出する。シーク制御が行われるモードをシークモードと呼び、トラック追従制御が行われるモードをトラック追従モードと呼ぶ。
【００３６】
フィードフォワード制御系２２において、偏心成分検出器２２１はトラック追従モードでは、位置誤差ｅに含まれるディスク１の回転に同期した偏心成分の大きさ（偏心量）をフーリエ変換演算により検出（算出）する。但し、本実施形態のＨＤＤでは、ディスク１にセクタサーボ方式のフォーマットを適用しているので、サーボデータは離散的にしか得られない。このため、位置誤差ｅは、サーボデータが検出されるサンプル時点毎に検出される。そこで偏心成分検出器２２１は、位置誤差検出器２１２によって位置誤差ｅが検出される毎に、当該位置誤差ｅと１サンプル前における偏心成分検出器２２１の検出結果（学習値）とをもとに、当該位置誤差ｅに含まれる偏心量を検出（算出）する適応学習を行う。つまり偏心成分検出器２２１は適応学習器である。
【００３７】
偏心成分検出器２２１は、フィードバックコントローラ２１１で吸収しきれない位置誤差からフィードフォワード量を求めるためのものである。即ち、制御対象（プラント）２３のゲインのばらつき、例えばＶＣＭ６のトルク定数のディスク１における内外周差や、観測系のばらつき、例えばヘッド２の位置ずれ量とバースト振幅の関係やディスク１の内外周でのヨー角の差などを含めた系全体の特性により、検出される偏心成分は異なってくる。このように、ここでの偏心成分検出器２２１は、ディスク１の物理的な偏心量を直接知るものではなく、フィードバックコントローラ２１１で吸収しきれない制御量を補うためのフィードフォワード量を求める働きをしている。そして実際のフィードフォワード量は、上述のばらつきによって、ヘッド２のディスク１上の半径方向位置により異なってくる。
【００３８】
偏心成分検出器２２１での適応学習により検出（算出）された偏心量はＦＦコントローラ２２２に出力される。また偏心成分検出器２２１は、シークモードでは、適応学習機能をオフし、偏心量（適応学習値）の初期値をそのままＦＦコントローラ２２２に出力する。
【００３９】
ディスク１の回転に同期する偏心成分の大きさ（偏心量）は、当該ディスク１の半径方向の位置（半径位置）によって異なる。この偏心量は、図４に示すように、ディスク１の内周側と外周側とで大きく異なる。このため前記先行技術では、特定トラックで学習した偏心量を目標トラック位置に応じて補正することで、ヘッド位置に適した学習値の初期値を決定している。しかし、実際のＨＤＤでは、ヘッドのディスク半径位置（トラック位置）と偏心量との関係は、ＨＤＤ毎に、且つディスク面（ヘッド）毎に異なり、数式モデル通りの特性になるとは限らない。
【００４０】
そこで本実施形態では、ディスク１を半径方向にｎ（ｎは２以上の整数）個のゾーン０〜ｎ−１に分割し、ＨＤＤの起動時にディスク１の各ディスク面（ヘッド）の各ゾーンｉ（ｉ＝０〜３）毎に、そのゾーンｉ内の特定トラック、例えばほぼ中央のトラックで偏心量を学習し、その学習値を当該ディスク面のゾーンｉに固有の偏心量の初期値として、ＲＡＭ１８に格納するようにしている。そのためＲＡＭ１８には、図３（ａ）に示すように、ヘッド（ディスク面）毎で且つゾーンｉ毎の学習値の初期値を格納するための初期値領域１８０ａが確保される。本実施形態では、ディスク１は図１に示すように２枚であり、したがってヘッドはヘッド０〜３の３つである。また本実施形態では、図５に示すように、ゾーン数ｎがゾーン０〜３の４つの場合を想定している。
【００４１】
フィードフォワード制御系２２には、偏心成分検出器２２１及びＦＦコントローラ２２２の他に、ＲＡＭ１８によって実現されるメモリ部２２３と、偏心成分検出器２２１での偏心量検出（適応学習）に必要な初期値を決定する初期値決定部２２４とが設けられている。
【００４２】
メモリ部２２３は、図３（ｂ）に示すように、ＲＡＭ１８内の初期値領域１８０ａに相当する初期値領域２２３ａを有する。初期値領域２２３ａ（１８０ａ）のデータ構造例を図６に示す。
【００４３】
ＦＦコントローラ２２２は、偏心成分検出器２２１から出力される偏心量をもとに、当該偏心量を位置誤差ｅから除去するための制御値（フィードフォワード値）Ｕｆを算出する。
【００４４】
フィードバック制御系２１は、ＦＦコントローラ２２２によって算出された制御値ＵｆとＦＢコントローラ２１１によって算出された制御値Ｕｂとを加算部２１３によって加算した結果を、プラント２３の制御値として与える。
【００４５】
次に、本実施形態の動作を図７のフローチャートを参照して説明する。
まず、図１のＨＤＤの起動時に、ディスク１の各ヘッド０〜３の各ゾーン０〜３で偏心量を学習する（ステップＡ１）。この学習は、ヘッド２をゾーンｉ（ｉ＝０〜３）のほぼ中央のトラックにシークさせて行われる。学習自体は、ＨＤＤの起動後にホストシステムからのリード／ライトコマンドに応じて、当該コマンドで指定されたトラックにシークした後のトラック追従動作での学習と同様であるため、ここでは説明を省略する。
【００４６】
各ヘッド０〜３の各ゾーン０〜３毎に求められた偏心量の学習結果（学習値）は、初期値決定部２２４の制御により、初期値としてメモリ部２２３（ＲＡＭ１８）内の初期値領域２２３ａ（１８０ａ）に図６のようにテーブル形式で格納される（ステップＡ２）。
【００４７】
さて、ＨＤＤの起動後に、当該ＨＤＤに対してホストシステムからリード／ライトコマンドが与えられ、これに応じて、当該コマンドで指定されたディスク１上の目標トラックにヘッド２を移動させるシーク要求がＣＰＵ１６により発生されたものとする（ステップＡ３）。この場合、ＣＰＵ１６は、上記目標トラックにヘッド２を移動させるシーク制御（速度制御）を、制御プログラム中の制御プロセスに従って実行する。
【００４８】
以下、シーク制御時の動作の詳細について、ＣＰＵ１６が制御プロセスを実行することにより実現されるサーボシステム内での動作を例に説明する。
【００４９】
まず、位置誤差検出器２１２には、ヘッド１０４によりサーボデータが読み出される毎に、ヘッド位置ｙとして、サーボ処理回路１３によりサーボデータから抽出されるトラックコードが与えられる。また位置誤差検出器２１２には、目標位置ｒとして、目標トラックを示す情報が与えられる。
【００５０】
初期値決定部２２４は、偏心成分検出器２２１に対してシークモードを指定することで、偏心量の適応学習機能をオフさせる（ステップＡ４）。この状態で、シーク制御が次のように実行される（ステップＡ５）。
【００５１】
初期値決定部２２４は、ヘッド２が位置するトラック（ヘッド位置ｙ）が属するゾーンに対応した偏心量の初期値（適応学習値の初期値）をメモリ部２２３内の初期値領域２２３ａから読み出して偏心成分検出器２２１に与える。
【００５２】
偏心成分検出器２２１は、適応学習機能がオフの場合、初期値決定部２２４から与えられる偏心量の初期値（適応学習値の初期値）を、そのまま検出結果として出力する。
【００５３】
ＦＦコントローラ２２２は、偏心成分検出器２２１から出力される偏心量をもとに、当該偏心量を位置誤差ｅから除去するための、つまり位置誤差ｅに含まれる偏心成分を抑制（圧縮）するためのデジタルの制御値（フィードフォワード値）Ｕｆを算出する。
【００５４】
フィードバック制御系２１は、ＦＦコントローラ２２２によって算出された制御値ＵｆとＦＢコントローラ２１１によって算出された制御値Ｕｂとを加算部２１３によって加算した結果を、プラント２３の制御値として与える。但し、実際には、制御値Ｕｆと制御値Ｕｂとの加算結果（デジタル値）はＶＣＭドライバ７Ｂに出力されて、当該ドライバ７Ｂ内のＤ／Ａ変換器により電圧信号に変換され、その電圧信号で決まる正または負のＶＣＭ電流が、プラント２３を構成するアクチュエータ４中のＶＣＭ６に供給される。
【００５５】
以上のシーク制御を、サーボデータが検出されるサンプル時点毎に繰り返し実行することで、ヘッド２を目標トラックに移動させることができる。
【００５６】
さて、シーク制御中にヘッド位置ｙが属するゾーンが切り替わると（ステップＡ６，Ａ７）、初期値決定部２２４はメモリ部２２３内の初期値領域２２３ａから読み出す適応学習値の初期値を、新たなゾーンに対応した初期値に切り替える（ステップＡ８）。これにより、偏心成分検出器２２１からＦＦコントローラ２２２に出力される偏心量も、新たなゾーンに対応した初期値に変更される。
【００５７】
やがて、ヘッド２が目標トラックに移動されると、つまりシーク動作が完了すると（ステップＡ６）、初期値決定部２２４は偏心成分検出器２２１に対してトラック追従モードを指定することで、偏心量の適応学習機能をオンさせる（ステップＡ９）。この状態で、ヘッド２を目標トラックの目標位置（例えば目標トラックの中心線）を基準とする目標範囲内に位置決め整定させるためのトラック追従制御（位置制御）が次のように実行される（ステップＡ１０）。
【００５８】
まず、位置誤差検出器２１２は、ヘッド１０４によりサーボデータが読み出される毎に、Ｒ／Ｗチャネル１２によりリード信号から抽出されるサーボバーストデータの振幅のＡ／Ｄ変換値によって示される位置誤差ｅを検出する。  偏心成分検出器２２１は、位置誤差検出器２１２によって位置誤差ｅが検出される毎に、当該位置誤差ｅと１サンプル前における偏心成分検出器２２１の検出結果（適応学習値）とをもとに、当該位置誤差ｅに含まれる偏心量を検出（算出）する適応学習を行う。なお、トラック追従制御が開始された際の、１サンプル前における適応学習値、つまり適応学習値の初期値には、初期値決定部２２４から与えられた初期値が用いられる。このことは、初期値決定部２２４から偏心成分検出器２２１に対して、目標トラック（目標位置ｒ）が属するゾーンに対応した初期値が与えられることと等価である。
【００５９】
さて、偏心成分検出器２２１での適応学習は、特開平１１−３９８１４号公報の段落００２７乃至００３７に記載されている手法を用いて次のように実行される。
【００６０】
まず誤差ｅの中で、ディスクの回転に同期した偏心成分の大きさ（偏心量）は、周期関数として捉えることができるので、フーリエ級数により展開表現することができる。即ち、ディスクの回転周期をＴ、位置誤差の観測情報をｅ（ｔ）とすれば、ｅ（ｔ）は次式（１）により表すことができる。
【００６１】
【数１】
0003581316.tif 000002
【００６２】
ここで、ａ１，ａ２，ａ３，…，ｂ１，ｂ２，ｂ３，…，ｃ０はフーリエ係数（１，２，３，…は偏心次数を意味する）であり、各偏心成分の大きさと位相を表す。
【００６３】
各フーリエ係数のサイン（ｓｉｎ）成分ａｍ及びコサイン（ｃｏｓ）成分ｂｍ（ｍは１，２，３…）は次式（２）により求めることができる。
【００６４】
【数２】
0003581316.tif 000003
【００６５】
但し、本実施形態のＨＤＤでは、サーボデータは離散的にしか得られないため、位置誤差ｅを時間的に連続な情報として得ることはできない。そこで、位置誤差ｅを離散的な情報として得る場合のフーリエ係数ａｍ，ｂｍを求める関係式（３）を以下に示す。
【００６６】
【数３】
0003581316.tif 000004
【００６７】
さらに、前記式（３）を数式的に変形して、１サンプル前（（ｋ−１）時点）までに得られた偏心成分のフーリエ係数ａｍ（ｋ−１），ｂｍ（ｋ−１）に、現時点（ｋ時点）での観測情報ｅ（ｋ）により得られたフーリエ係数の変化分を逐次加算していく演算式として下記の関係式（４）を求めることができる。
【００６８】
【数４】
0003581316.tif 000005
【００６９】
ここで、ａｍ（ｋ−１），ｂｍ（ｋ−１）は、偏心成分検出器２２１に保持されている最新の学習値である。ａｍ（ｋ−１），ｂｍ（ｋ−１）の初期値、つまりｋ−１＝０時点のａｍ（ｋ−１），ｂｍ（ｋ−１）は、前記したように初期値決定部２２４から与えられる。
【００７０】
偏心成分検出器２２１は、この最新学習値（ａｍ（ｋ−１），ｂｍ（ｋ−１））と位置誤差ｅ（ｋ）とから、上記式（４）に従って、現時点（ｋ時点）での特定周波数（偏心次数ｍ）の偏心成分のｓｉｎ成分ａｍ（ｋ）とｃｏｓ成分ｂｍ（ｋ）を求める。偏心成分検出器２２１は、求めた偏心成分の大きさ（偏心量）を最新の適応学習値として、次のサンプル時点での式（４）に従う偏心量算出（学習）のために保持する。つまり偏心成分検出器２２１は、自身が保持している学習値を最新の学習値に更新する。
【００７１】
偏心成分検出器２２１によって求められた偏心量はＦＦコントローラ２２２に出力される。ＦＦコントローラ２２２は、この偏心量をもとに、当該偏心量を位置誤差ｅから除去するための制御値Ｕｆを算出する。
【００７２】
この制御値ＵｆはＦＢコントローラ２１１により算出される制御値Ｕｂに加算部２１３によって加算され、その加算結果がプラント２３の制御値として与えられる。
【００７３】
さて、ヘッド１０４によりサーボデータが読み出されて、上記したトラック追従制御が実行されると、新たにシーク要求が発生したか否かが判定される（ステップＡ１１）。もし、シーク要求が発生していないならば、次のサーボデータが読み出されてサーボバーストデータが抽出されるのを待って、次のトラック追従制御が実行される（ステップＡ１０）。
【００７４】
これに対し、新たなシーク要求が発生したならば、初期値決定部２２４は、今回、偏心成分検出器２２１によって求められた最新の適応学習値で、メモリ部２２３内の初期値領域２２３ａに格納されている同じゾーンの学習値の初期値を更新する（ステップＡ１２）。その後、ステップＡ４以降の処理が実行される。
【００７５】
ステップＡ１２の実行により、次に同じゾーン内でシーク動作が行われるときは、ＨＤＤ起動時に求められた初期値ではなくて、トラック追従制御で求められた最新の適応学習値が初期値として用いられるため、トラック追従精度が一層向上する。
【００７６】
なお、トラック追従制御の実行中におけるシーク要求の発生の有無に無関係に、偏心成分検出器２２１によって適応学習値が求められる毎に、その学習値で、メモリ部２２３に格納されている同じゾーンの学習値の初期値を更新するようにしてもよい。
【００７７】
また、以上の説明では、シークモードにおいて初期値決定部２２４から偏心成分検出器２２１に与えられる初期値が、当該偏心成分検出器２２１によってそのままＦＦコントローラ２２２に出力されるものとしたが、これに限るものではない。例えば、偏心成分検出器２２１とＦＦコントローラ２２２との間に、初期値決定部２２４から出力される初期値及び偏心成分検出器２２１により検出（算出）される偏心量を入力とするセレクタを設け、そのいずれか一方の入力が当該セレクタによってＦＦコントローラ２２２に選択出力されるようにしてもよい。この場合、初期値決定部２２４はセレクタを制御して、シークモードでは初期値が選択され、トラック追従モードでは偏心成分検出器２２１からの偏心量が選択されるようにすればよい。
【００７８】
また、シークモードでは、サーボシステムからフィードフォワード制御系２２を切り離して、フィードバック制御系２１のみを動かし、トラック追従モードに切り替わった時点で、フィードフォワード制御系２２も動作させるようにしても構わない。この場合、トラック追従モードに切り替わった際に、初期値決定部２２４から偏心成分検出器２２１に対して、目標トラックが属するゾーンに対応した初期値を与えればよい。
【００７９】
［第１の変形例］
次に前記実施形態の第１の変形例について説明する。
前記実施形態では、各ヘッドのゾーン毎の偏心量の学習をＨＤＤの起動時に行っていたため、ＨＤＤ起動時間が長くなる。そこで、このＨＤＤ起動時間が長くなるのを防止するために、第１の変形例の第１の特徴は、各ヘッドのゾーン毎の偏心量の学習をＨＤＤの製造段階で行って、その結果をＦＲＯＭ１７に保存する点にある。第１の変形例の第２の特徴は、偏心量は経時変化する可能性があることを考慮し、ＨＤＤ起動時に各ヘッドのゾーン毎の偏心量の学習値（初期値）を補正する点にある。
【００８０】
そこで、第１の変形例では、ＦＲＯＭ１７内に、図８に示すように、ＲＡＭ１８（メモリ部２２３）内の初期値領域１８０ａ（２２３ａ）と同様のデータ構造の初期値領域１７０ａを確保して、当該初期値領域１７０ａに、ＨＤＤの製造段階で各ヘッドのゾーン毎に取得された、予め定められた周波数別の偏心量の学習値（初期値）を保存するようにしている。
【００８１】
以下、第１の変形例における学習値（初期値）の補正について、図９のフローチャートを参照して説明する。
まず、図１のＨＤＤの起動時に、ＦＲＯＭ１７の初期値領域１７０ａに保存されている製造時の学習値（初期値）をＲＡＭ１８（メモリ部２２３）内の初期値領域１８０ａ（２２３ａ）にコピーする（ステップＢ１）。
【００８２】
次に、ディスク１の各ヘッド０〜３の特定のゾーンｓ（ｓは０〜３のいずれか１つ）の特定トラックＴＲｓで、それぞれ偏心量の再学習を行う（ステップＢ２）。この特定トラックＴＲｓは、製造時の学習で用いられたゾーンｓ内のトラックと同一トラックとするのが好ましい。
【００８３】
次に、再学習で求めたゾーンｓでの学習値の、ＲＡＭ１８（メモリ部２２３）内の初期値領域１８０ａ（２２３ａ）に格納されている同じゾーンｓでの学習値に対する変化率を各ヘッド毎に求める（ステップＢ３）。
【００８４】
次に、初期値領域１８０ａ（２２３ａ）に格納されている全てのヘッドの全てのゾーンでの学習値を、対応する変化率分だけ補正する（ステップＢ４）。
【００８５】
具体的には、ＨＤＤ製造時のゾーンｎでの学習値をｘ（ｎ）、起動時のゾーンｎｓでの学習値をｘｓとすると、ゾーンｎでの補正された学習値ｘ′（ｎ）は、次式
ｘ′（ｎ）＝ｘ（ｎ）＊ｘｓ／ｘ（ｎｓ）    …（５）
に従って求めることができる。ここで、ｘｓ／ｘ（ｎｓ）は変化率である。
【００８６】
このようにして補正された学習値と補正前の学習値との関係を、１つのヘッド（ディスク面）について図１０に示す。図の例では、実線は補正前（製造時）の学習値を示し、破線は補正後（起動時）の学習値を示す。
【００８７】
［第２の変形例］
次に前記実施形態の第２の変形例について説明する。
前記第１の変形例では、ＨＤＤの製造時に各ヘッドのゾーン毎に求められた学習値をＨＤＤ起動時に補正して、そのゾーン内のいずれのトラックでも当該補正後の学習値を共通に用いている。しかし、同一ゾーンでも、トラック位置により偏心量の変化の影響が異なるため、補正後の学習値がゾーン内の各トラックに対して必ずしも正確な偏心量を表しているとは限らない。このため第１の変形例において、トラック位置による偏心量の変化をより正確に補正するには、ゾーンを構成するトラック数が少なくなるように、ゾーン数を増やす必要がある。この場合、ＨＤＤの製造段階での学習処理とＨＤＤ起動時の補正処理とに要する時間が長くなる。
【００８８】
そこで、上記各処理に要する時間、特にＨＤＤ起動時の補正処理に要する時間が長くなるのを防止するために、第２の変形例の第１の特徴は、ＨＤＤの製造段階で各ヘッド毎に複数のトラックで偏心量の学習を行い、その学習値から、ディスク１のトラック位置（半径位置）に対する偏心量の特性を各ヘッド毎に折れ線または曲線で近似して、その近似折れ線または近似曲線を表す関数情報（以下、偏心特性情報と称する）をＦＲＯＭ１７に保存する点にある。第２の変形例の第２の特徴は、ＨＤＤ起動時に各ヘッド毎の近似折れ線または近似曲線を補正する点にある。
【００８９】
そこで、第２の変形例では、図１１（ａ）に示すように、ＦＲＯＭ１７内に偏心特性領域１７０ｂを確保して、当該領域１７０ｂに、ＨＤＤの製造段階で求められた各ヘッド毎の偏心特性情報を保存するようにしている。この場合、ＲＡＭ１８、メモリ部２２３には、それぞれ図１１（ｂ）、図１１（ｃ）に示すように、ＦＲＯＭ１７内の偏心特性領域１７０ｂの内容がコピーされる偏心特性領域１８０ｃ、偏心特性領域２２３ｃが確保される。
【００９０】
以下、第２の変形例における学習値（初期値）の補正について、図１２のフローチャートを参照して説明する。
まず、図１のＨＤＤの起動時に、ＦＲＯＭ１７の偏心特性領域１７０ｂに保存されている各ヘッド毎の偏心特性情報をＲＡＭ１８（メモリ部２２３）内の偏心特性領域１８０ｃ（２２３ｃ）にコピーする（ステップＣ１）。
【００９１】
次に、ディスク１の各ヘッド０〜３の特定のゾーンｓ（ｓは０〜３のいずれか１つ）の特定トラックＴＲｓで、それぞれ偏心量の再学習を行う（ステップＣ２）。この特定トラックＴＲｓは、製造時の学習で用いられたゾーンｓ内のトラックと同一トラックとするのが好ましい。
【００９２】
次に、再学習で求めたゾーンｓでの学習値（再学習値）の、同じゾーンｓでのＨＤＤ製造時の学習値に対する変化率を各ヘッド毎に求める。即ち、ＲＡＭ１８（メモリ部２２３）内の偏心特性領域１８０ｃ（２２３ｃ）に格納されている偏心特性情報の示す偏心特性（近似折れ線または近似曲線）からトラックＴＲｓでの偏心量を推定し、その推定値に対する上記再学習値の変化率を各ヘッド毎に求める（ステップＣ３，Ｃ４）。
【００９３】
次に、ＲＡＭ１８（メモリ部２２３）内の偏心特性領域１８０ｃ（２２３ｃ）に格納されている全てのヘッドの偏心特性情報を対応する変化率分だけ補正する（ステップＣ５）。つまり、ステップＣ５では、ＨＤＤ製造時のゾーンｎｓでの学習値をｘ（ｎｓ）、起動時のゾーンｎｓでの学習値をｘｓとすると、ＨＤＤ製造時に求めた偏心特性（近似折れ線または近似曲線）に対して、変化率ｘｓ／ｘ（ｎｓ）を乗じて偏心特性を補正する。したがって、この偏心特性から、目的とするトラックでの偏心量を初期値として算出することで、当該トラックでの偏心量をより正確に補正することが可能になる。
【００９４】
このようにして補正された偏心特性と補正前の偏心特性との関係を、１つのヘッド（ディスク面）について図１３に示す。図の例では、実線は補正前（製造時）の偏心特性を示し、破線は補正後（起動時）の偏心特性を示す。
【００９５】
なお、前記第１の変形例と同様に、ＦＲＯＭ１７及びＲＡＭ１８（メモリ部２２３）内に初期値領域を確保して、ＨＤＤの起動時に、ＦＲＯＭ１７に保存されている製造時の学習値（初期値）をＲＡＭ１８にコピーするようにしてもよい。この場合、ＨＤＤの起動時の再学習で取得した学習値に基づいて算出される変化率で、製造時に求められた学習値を補正し、その補正後の学習値から偏心特性を近似して、その偏心特性を表す情報で偏心特性領域１８０ｃ（２２３ｃ）内の情報を補正（更新）することも可能である。ここでは、トラック追従制御の実行中にシーク要求が発生した場合に、前記実施形態と同様に、偏心成分検出器２２１によって求められた最新の適応学習値で、メモリ部２２３に格納されている同じゾーンの学習値の初期値を更新することができる。また、更新後のメモリ部２２３の内容から、偏心特性を近似して、その偏心特性を表す情報で偏心特性領域１８０ｃ（２２３ｃ）内の情報を補正（更新）することも可能である。
【００９６】
以上に述べた実施形態においては、本発明を磁気ディスク装置に適用した場合について説明したが、本発明は、光ディスク装置、光磁気ディスク装置など、ヘッドをディスク上の目標位置に位置決めするためのヘッド位置決め制御が行われるディスク記憶装置全般に適用することができる。
【００９７】
なお、本発明は、上記実施形態及びその変形例に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。更に、上記実施形態及びその変形例にには種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組み合わせにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件から幾つかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得る。
【００９８】
【発明の効果】
以上詳述したように本発明によれば、適応学習値の初期値を、目標位置に応じて、実際のディスク記憶装置におけるディスクの半径位置による歪み量等の相違に起因する偏心量の違いを反映した値に切り替えることができるため、ディスク記憶装置毎の偏心特性のばらつきに影響されずにヘッドを目標位置に高精度に追従させることができる。
【図面の簡単な説明】
【図１】本発明の一実施形態に係る磁気ディスク装置の構成を示すブロック図。
【図２】同実施形態において実現されるサーボシステムの概念を説明するためのブロック図。
【図３】同実施形態においてＲＡＭ１８及びメモリ部２２３に初期値領域が確保されている様子を示す図。
【図４】ディスク１の回転に同期する偏心成分の大きさが当該ディスク１の半径方向の位置によって異なる様子を示す図。
【図５】ディスク１における偏心量の初期値を学習する単位としてのゾーンを説明するための図。
【図６】初期値領域のデータ構造例を示す図。
【図７】同実施形態における動作を説明するためのフローチャート。
【図８】同実施形態の第１の変形例においてＦＲＯＭ１７に初期値領域が確保されている様子を示す図。
【図９】同第１の変形例における学習値（初期値）の補正を説明するためのフローチャート。
【図１０】同第１の変形例における学習値（初期値）の補正前と補正後との関係を示す図。
【図１１】同実施形態の第２の変形例において、ＦＲＯＭ１７、ＲＡＭ１８及びメモリ部２２３に偏心成分特性領域が確保されている様子を示す図。
【図１２】同第２の変形例における学習値（初期値）の補正を説明するためのフローチャート。
【図１３】同第２の変形例における偏心特性の補正前と補正後との関係を示す図。
【符号の説明】
１…ディスク
２…ヘッド
３…スピンドルモータ
４…アクチュエータ
６…ＶＣＭ（ボイスコイルモータ）
１０…信号処理回路
１６…ＣＰＵ
１７…ＦＲＯＭ（フラッシュＲＯＭ）
１８…ＲＡＭ
２１…フィードバック制御系
２２…フィードフォワード制御系
１７０ａ，１８０ａ，２２３ａ…初期値領域
１７０ｂ，１８０ｂ，２２３ｂ…偏心成分特性領域
２１１…ＦＢ（フィードバック）コントローラ
２１２…位置誤差検出器
２１３…加算部（出力手段）
２２１…偏心成分検出器（適応学習器）
２２２…ＦＦ（フィードフォワード）コントローラ
２２３…メモリ部
２２４…初期値決定部
【図１】
0003581316.tif 000006
【図２】
0003581316.tif 000007
【図３】
0003581316.tif 000008
【図４】
0003581316.tif 000009
【図５】
0003581316.tif 000010
【図６】
0003581316.tif 000011
【図７】
0003581316.tif 000012
【図８】
0003581316.tif 000013
【図９】
0003581316.tif 000014
【図１０】
0003581316.tif 000015
【図１１】
0003581316.tif 000016
【図１２】
0003581316.tif 000017
【図１３】
0003581316.tif 000018