(57)【特許請求の範囲】
【請求項１】
ディスクにアクセスするヘッドと、
前記ヘッドを前記ディスクの半径方向に移動する移動機構と、
前記ヘッドが前記ディスクから読み出したサーボ・データにより前記移動機構のサーボ制御を行うサーボ・システムと、
加速度センサと、を有し、
前記サーボ・システムは、
前記ヘッドの位置誤差信号により前記移動機構のフィードバック制御信号を生成するフィードバック・コントローラと、
前記加速度センサの出力に応じて前記移動機構のフィードフォワード制御信号を生成するセンサ・フィードフォワード・フィルタと、
前記加速度センサのセンサ出力と前記位置誤差信号とを使用して、前記センサ・フィードフォワード・フィルタのフィルタ係数を更新する適応化処理部と、
を有し、
前記適応化処理部は、フィルタ係数の更新量を、前記センサ出力もしくはフィードフォワード制御出力を入力する関数フィルタ出力、位置誤差信号そしてステップ・サイズ・パラメータの積を使用して算出し、
前記ステップ・サイズ・パラメータは、前記関数フィルタ出力の絶対値の増加に従って減少する関数である、
ディスク・ドライブ。
【請求項２】
前記ステップ・サイズ・パラメータは、前記関数フィルタ出力の２乗値もしくはその２乗値に定数を加算した値に反比例する、
請求項１に記載のディスク・ドライブ。
【請求項３】
前記センサ・フィードフォワード・フィルタは、ＦＩＲフィルタであって、
前記適応化処理部は、各フィルタ係数のそれぞれの更新量を、前記センサ出力を入力とする前記関数フィルタ出力、前記位置誤差信号及び前記ステップ・サイズ・パラメータの積を使用して算出し、
前記ステップ・サイズ・パラメータは、前記関数フィルタ出力の２乗値もしくはその２乗値に定数を加算した値に反比例する、
請求項１に記載のディスク・ドライブ。
【請求項４】
前記センサ・フィードフォワード・フィルタは、ＩＩＲフィルタであって
前記適応化処理部は、前記ＩＩＲフィルタの分子における各フィルタ係数のそれぞれの更新量を、前記センサ出力を入力とする関数フィルタ出力、前記位置誤差信号及び前記ステップ・サイズ・パラメータの積を使用して算出し、
前記分子の係数更新における前記ステップ・サイズ・パラメータは、前記センサ出力を入力とする関数フィルタ出力の２乗値もしくはその２乗値に定数を加算した値に反比例し、
前記適応化処理部は、前記ＩＩＲフィルタの分母における各フィルタ係数のそれぞれの更新量を、前記フィードフォワード制御出力を入力とする関数フィルタ出力、前記位置誤差信号及び前記ステップ・サイズ・パラメータの積を使用して算出し、
前記分母の係数更新における前記ステップ・サイズ・パラメータは、前記フィードフォワード制御出力を入力とする関数フィルタ出力の２乗値もしくはその２乗値に定数を加算した値に反比例する、
請求項１に記載のディスク・ドライブ。
【請求項５】
前記適応化処理部は、前記ステップ・サイズ・パラメータの算出において、除算に代えてビット・シフト処理を行う、
請求項１に記載のディスク・ドライブ。
【請求項６】
前記適応化処理部による前記フィルタ係数の更新頻度は、前記位置誤差信号のサンプリング頻度よりも少ない、
請求項１に記載のディスク・ドライブ。
【請求項７】
前記適応化処理部は、前記フィルタ係数の更新において、前記関数フィルタ出力の平均値を使用する、
請求項６に記載のディスク・ドライブ。
【請求項８】
前記平均値は、指数加重移動平均である、
請求項７に記載のディスク・ドライブ。
【請求項９】
さらに、前記センサ出力を取得するセンサ出力取得部と前記適応化処理部とをＯＮ／ＯＦＦする機能を有する、
請求項１に記載のディスク・ドライブ。
【請求項１０】
前記センサ出力取得部を、前記位置誤差信号に応じてＯＮし、前記センサ出力に応じてＯＦＦし、
前記適応化処理部を、前記センサ出力に応じてＯＮ／ＯＦＦする、
請求項９に記載のディスク・ドライブ。
【請求項１１】
ディスク・ドライブにおけるヘッド位置決め制御方法であって、
移動機構によりヘッドをディスクの半径方向に移動し、
前記ヘッドの位置誤差信号により前記移動機構のフィードバック制御信号を生成し、
加速度センサの出力に応じて、センサ・フィードフォワード・フィルタにより前記移動機構のフィードフォワード制御信号を生成し、
前記加速度センサのセンサ出力と前記位置誤差信号とを使用して、前記センサ・フィードフォワード・フィルタのフィルタ係数を更新し、
フィルタ係数の更新量を、前記センサ出力もしくはフィードフォワード制御出力を入力する関数フィルタ出力、位置誤差信号そしてステップ・サイズ・パラメータの積を使用して算出し、
前記ステップ・サイズ・パラメータを、前記関数フィルタ出力の絶対値の増加に従って減少するように変化させる、
方法。
【請求項１２】
前記ステップ・サイズ・パラメータは、前記関数フィルタ出力の２乗値もしくはその２乗値に定数を加算した値に反比例する、
請求項１１に記載の方法。
【請求項１３】
前記ステップ・サイズ・パラメータの算出は、除算に代えてビット・シフト処理を行う、
請求項１１に記載の方法。
【請求項１４】
前記フィルタ係数の更新頻度は、前記位置誤差信号のサンプリング頻度よりも少ない、
請求項１１に記載の方法。
【請求項１５】
前記フィルタ係数の更新において、前記関数フィルタ出力の平均値が使用される、
請求項１４に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ディスク・ドライブ及びそのヘッド位置制御方法に関し、特に、ヘッドの位置決め制御における加速度センサの出力を使用したフィードフォワード制御に関する。
【背景技術】
【０００２】
ディスク・ドライブとして、光ディスク、光磁気ディスク、あるいはフレキシブル磁気ディスクなどの様々な態様のディスクを使用する装置が知られているが、その中で、ハードディスク・ドライブ（ＨＤＤ）は、コンピュータ・システムの他、動画像記録再生装置やカーナビゲーション・システムなど、多くの電子機器において使用されている。
【０００３】
ＨＤＤで使用される磁気ディスクは、複数のデータ・トラックと複数のサーボ・トラックとを有している。サーボ・トラックはアドレス情報を有する複数のサーボ・セクタから構成される。また、データ・トラックには、ユーザ・データを含む複数のデータ・セクタから構成されている。円周方向に離間するサーボ・セクタの間に、データ・セクタが記録されている。
【０００４】
ＨＤＤは揺動するアクチュエータを有し、そのアクチュエータにヘッド・スライダが支持されている。ＨＤＤは、ヘッド・スライダによってサーボ・セクタのアドレス情報を読み出し、そのアドレス情報に従ってアクチュエータを制御する（サーボ制御）。これにより、ＨＤＤは、ヘッド・スライダを所望の半径位置（ターゲット・データ・トラック）に移動し（シーク）、さらに、その位置に位置決めする（フォロイング）することができる。ターゲット・データ・トラックに位置決めされたヘッド・スライダは、そのトラック内のターゲット・データ・セクタへのデータ書き込みあるいはデータ読み出しを行う。
【０００５】
ＨＤＤのヘッド位置決め精度はＨＤＤ性能を左右する重要な要素の一つであるが，外部振動下においても、ヘッド位置決め精度の劣化量を最小限に抑えることが近年ますます重要となってきている。そのため、外部振動を検知するショック・センサの出力を使用したフィードフォワード制御が提案されている。このショック・センサ・フィードフォワード制御（ＳＳＦＦ制御）は、ショック・センサ出力（加速度信号）を利用して位置誤差信号（ＰＥＳ）の劣化を抑制する補償値を生成し出力するフィードフォワード制御技術である。
【０００６】
ＳＳＦＦ制御の性能は、この補償値を生成するＳＳＦＦフィルタで決まる。適切なＳＳＦＦフィルタは、加速度センサの出力から位置誤差信号までの伝達特性（外部振動伝達特性Ｒとセンサ特性Ｑの逆特性の積）、サーボ系の特性等が分かれば、計算することができる。しかし、外部振動伝達特性は、ＨＤＤの設置の仕方や外部振動の方向などで異なるため、最適なフィードフォワード・フィルタが使用環境に応じて変わってしまう。
【０００７】
そのため、適応フィルタリング技術を用いて，使用環境に応じた適切なＳＳＦＦフィルタをオンラインで生成する方法が提案されている（例えば、特許文献１を参照）。この手法は、ＰＥＳの絶対値を最小にするようＳＳＦＦフィルタを適応アルゴリズムに基づいて更新させていくことで、既知情報に基づく振動成分相殺を基本とするＳＳＦＦ法を、周囲の環境変動にも対応可能としたものである。
【０００８】
具体的に説明する。図９は、ＳＳＦＦシステムの構成を模式的に示すブロック図である。図９において、ＦはＳＳＦＦフィルタの伝達関数、Ｑはショック・センサの伝達関数、Ｒは外部振動の伝達関数、Ｐは制御対象の伝達関数、Ｋはフィードバック・コントローラの伝達関数、ｄは外部振動である。図１０のブロック図は、図９のブロック図に書き換えることができる。図１０のブロック図において、Ｓは感度関数であり、１／（１＋ＰＫ）である。
【０００９】
ＳＳＦＦシステムは、位置誤差信号（ＰＥＳ）に対する外部振動の影響を、ＳＳＦＦフィルタにより相殺するように、ＳＳＦＦフィルタを適応化する。ＰＥＳ＝−Ｓ×（ＰＦＱ＋Ｒ）ｄの関係が成立するため、外部振動の影響を打ち消す理想のＳＳＦＦフィルタＦｉｄｅａｌは、以下の数式１で表わされる。
【数１】
0005546838.tif 000002
【００１０】
数式１に示すように、理想的なＳＳＦＦフィルタＦｉｄｅａｌは、外部振動伝達特性Ｒと等価な外部振動の内部モデルを持つ必要がある。しかし、外部振動伝達特性Ｒは、ＨＤＤの設置方法や外部振動方向に依存するため、理想的なＳＳＦＦフィルタＦｉｄｅａｌのオフライン設計は不可能である。
【００１１】
特許文献１に開示されているＳＳＦＦ制御は、適応フィルタリング技術を使用して、使用環境に応じた適切なＳＳＦＦフィルタをオンラインで生成する。具体的には、このＳＳＦＦ制御は、ＬＭＳ（Ｌｅａｓｔ  Ｍｅａｎ  Ｓｑｕａｒｅ）法に基づき、ＰＥＳの２乗値が最小となるようにＳＳＦＦフィルタの係数を更新する。具体的に説明する。
【００１２】
ＳＳＦＦフィルタがＦＩＲ型フィルタである場合、ＳＳＦＦフィルタの伝達関数Ｆは次の数式２で表わされる。
【数２】
0005546838.tif 000003
ＳＳＦＦ制御は、ＬＭＳ法に従って、ＰＥＳの２乗値が最小となるようにフィルタ係数ｃiを更新する。ｃiは、以下の関係を満たす。
【数３】
0005546838.tif 000004
ｃi（ｋ）は、サンプリング時刻ｋにおける係数ｃiである。ｅ（ｋ）は、サンプリング・タイミングｋにおけるＰＥＳである。μはステップ・サイズ・パラメータであり、正の定数である。
【００１３】
ここで、ｅ（ｋ）は、次の関係を満足する。
【数４】
0005546838.tif 000005
ｓ（ｋ）は、サンプリング時刻ｋにおけるショック・センサの出力である。
【００１４】
上記数式３及び数式４から、次の関係式を得ることができる。
【数５】
0005546838.tif 000006
数式５におけるＳＰを、本明細書において、整定関数と呼ぶ。ＳＳＦＦシステムは、上記数式５に従ってフィルタ係数を更新することで、外部振動に対してＳＳＦＦフィルタを適応化する。
【先行技術文献】
【特許文献】
【００１５】
【特許文献１】特開２００３−１０９３３６号公報
【発明の概要】
【発明が解決しようとする課題】
【００１６】
上記ＳＳＦＦ制御において、唯一の設計パラメータは、ステップ・サイズ・パラメータμである。ステップ・サイズ・パラメータμは、ＳＳＦＦフィルタの係数の収束速度を決定する。ＳＳＦＦフィルタの収束速度は、適応計算を含むＳＳＦＦ法の重要な性能指標の一つである。収束速度が速いほどその振動低減性能が高いため、ＳＳＦＦの性能に観点からは、ステップ・サイズ・パラメータμが大きいことが好ましい。
【００１７】
しかし、外部振動の大きさによって、アルゴリズムの安定性が保証されるステップ・サイズ・パラメータは異なり、大きな外部振動が加わる場合にはステップ・サイズ・パラメータを小さくしておかなければならない。このため、ステップ・サイズ・パラメータは、想定される最大の外乱に合わせて、アルゴリズムの安定性が保たれるよう「十分小さな」正の数としておく必要がある。このパラメータを十分小さくすることは、フィルタ係数の収束速度を落とすことになる。
【００１８】
このように、従来のＳＳＦＦ制御は、アルゴリズム安定性の観点から、収束速度を決定するステップ・サイズ・パラメータを保守的に設計せざるを得ない。そのため、アルゴリズムがシンプルであり演算量が少ない反面、パラメータの収束速度が遅くなる。
【００１９】
したがって、システムの安定性と収束性を両立させることができるＳＳＦＦ制御技術が望まれる。また、ＳＳＦＦ制御においては、ＨＤＤに搭載されるＭＰＵの性能制約を考慮して、できるだけ演算量の少ない実装方法とすることが望まれる。
【課題を解決するための手段】
【００２０】
本発明の一態様のディスク・ドライブは、ディスクにアクセスするヘッドと、前記ヘッドを前記ディスクの半径方向に移動する移動機構と、前記ヘッドが前記ディスクから読み出したサーボ・データにより前記移動機構のサーボ制御を行うサーボ・システムと、加速度センサとを有する。前記サーボ・システムは、前記ヘッドの位置誤差信号により前記移動機構のフィードバック制御信号を生成するフィードバック・コントローラと、前記加速度センサの出力に応じて前記移動機構のフィードフォワード制御信号を生成するセンサ・フィードフォワード・フィルタと、前記加速度センサのセンサ出力と前記位置誤差信号とを使用して、前記センサ・フィードフォワード・フィルタのフィルタ係数を更新する適応化処理部とを有する。前記適応化処理部は、フィルタ係数の更新量を、前記センサ出力もしくはフィードフォワード制御出力を入力する関数フィルタ出力、位置誤差信号そしてステップ・サイズ・パラメータの積を使用して算出する。前記ステップ・サイズ・パラメータは、前記関数フィルタ出力の絶対値の増加に従って減少する関数である。これにより、加速度センサ出力を使用したヘッド移動機構のフィードフォワード制御において、制御システムの安定性と適応フィルタの収束性とを両立させることができる。
【００２１】
好ましくは、前記ステップ・サイズ・パラメータは、前記関数フィルタ出力の２乗値もしくはその２乗値に定数を加算した値に反比例する。これにより、ステップ・サイズ・パラメータを適切に変化させることができる。
【００２２】
好ましい例において、前記センサ・フィードフォワード・フィルタは、ＦＩＲフィルタである。前記適応化処理部は、各フィルタ係数のそれぞれの更新量を、前記センサ出力を入力とする前記関数フィルタ出力、前記位置誤差信号及び前記ステップ・サイズ・パラメータの積を使用して算出する。前記ステップ・サイズ・パラメータは、前記関数フィルタ出力の２乗値もしくはその２乗値に定数を加算した値に反比例する。これにより、ＦＩＲフィルタにおけるステップ・サイズ・パラメータを適切に変化させることができる。
【００２３】
好ましい例において、前記センサ・フィードフォワード・フィルタは、ＩＩＲである。前記適応化処理部は、前記ＩＩＲフィルタの分子における各フィルタ係数のそれぞれの更新量を、前記センサ出力を入力とする関数フィルタ出力、前記位置誤差信号及び前記ステップ・サイズ・パラメータの積を使用して算出する。前記分子の係数更新における前記ステップ・サイズ・パラメータは、前記センサ出力を入力とする関数フィルタ出力の２乗値もしくはその２乗値に定数を加算した値に反比例する。前記適応化処理部は、前記ＩＩＲフィルタの分母における各フィルタ係数のそれぞれの更新量を、前記フィードフォワード出力を入力とする関数フィルタ出力、前記位置誤差信号及び前記ステップ・サイズ・パラメータの積を使用して算出する。前記分母の係数更新における前記ステップ・サイズ・パラメータは、フィードフォワード出力を入力とする関数フィルタ出力の２乗値もしくはその２乗値に定数を加算した値に反比例する。これにより、ＩＩＲフィルタにおけるステップ・サイズ・パラメータを適切に変化させることができる。
【００２４】
好ましい構成において、前記適応化処理部は、前記ステップ・サイズ・パラメータの算出において、除算に代えてビット・シフト処理を行う。これにより、ステップ・サイズ・パラメータを適切に変化させつつ、ステップ・サイズ・パラメータの算出における演算処理量を低減することができる。
【００２５】
好ましい構成において、前記適応化処理部による前記フィルタ係数の更新頻度は、前記位置誤差信号のサンプリング頻度よりも少ない。これにより、外部振動に応じてフィルタ係数を適切に更新しつつ、演算処理量を低減することができる。
【００２６】
前記適応化処理部は、前記フィルタ係数の更新において、前記関数フィルタ出力の平均値を使用する。これにより、更新後のセンサ・フィードフォワード・フィルタの外部振動に対する一致性を高めることができる。
【００２７】
前記平均値は、指数荷重の移動平均であることが好ましい。これにより、より少ない演算処理量によって適切な平均値を算出することができる。
【００２８】
好ましい構成において、前記ディスク・ドライブは、さらに、前記センサ出力を取得するセンサ出力取得部と前記適応化処理部とをＯＮ／ＯＦＦする機能を有する。これにより、センサ出力取得部と適応化処理部による不要な処理の他の処理に対する影響を低減することができる。
【００２９】
前記ディスク・ドライブは、前記センサ出力取得部を前記位置誤差信号に応じてＯＮし、前記センサ出力に応じてＯＦＦし、前記適応化処理部を前記センサ出力に応じてＯＮ／ＯＦＦする。これにより、フィードフォワード制御の性能を低下させることなく、他の処理に対する影響を低減することができる。
【００３０】
本発明の他の態様は、ディスク・ドライブにおけるヘッド位置決め制御方法である。この方法は、ヘッドをディスクの半径方向に移動する。前記ヘッドの位置誤差信号により前記移動機構のフィードバック制御信号を生成する。加速度センサの出力に応じて、センサ・フィードフォワード・フィルタにより前記移動機構のフィードフォワード制御信号を生成する。前記加速度センサのセンサ出力と前記位置誤差信号とを使用して、前記センサ・フィードフォワード・フィルタのフィルタ係数を更新する。フィルタ係数の更新量を、前記センサ出力もしくはフィードフォワード制御出力を入力する関数フィルタ出力、位置誤差信号そしてステップ・サイズ・パラメータの積を使用して算出する。前記ステップ・サイズ・パラメータを、前記関数フィルタ出力の絶対値の増加に従って減少するように変化させる。これにより、加速度センサ出力を使用したヘッド移動機構のフィードフォワード制御において、制御システムの安定性と適応フィルタの収束性とを両立させることができる。
【発明の効果】
【００３１】
本発明によれば、加速度センサ出力を使用したヘッド移動機構のフィードフォワード制御において、制御システムの安定性と適応フィルタの収束性とを両立させることができる。
【図面の簡単な説明】
【００３２】
【図１】本実施形態におけるＨＤＤの全体構成を模式的に示すブロック図である。
【図２】本実施形態のＨＤＤにおけるサーボ制御システムをモデル化したブロック図である。
【図３】図２に示したブロック図を書き換えた図である。
【図４】本実施形態において、ＳＳＦＦフィルタの更新処理の流れを示すフローチャートである。
【図５】本実施形態において、３つのバンドパス・フィルタＢＰＦ１〜ＢＰＦ３の計算の一部を共通化する構成を模式的に示す図である。
【図６】本実施形態において、直列の２つのノッチ・フィルタにより３つのＳＳＦＦフィルタへの入力帯域制限を行なう構成を模式的に示すブロック図である。
【図７】本実施形態において、バンドパス・フィルタを適応化する構成を模式的に示すブロック図である。
【図８】本実施形態において、ＰＥＳのピークにバンドパス・フィルタＢＰＦの中心周波数が追随する例を説明する図である。
【図９】従来の技術において、ＳＳＦＦ制御システムの構成を模式的に示すブロック図である。
【図１０】図９のブロック図を書き換えた図である。
【発明を実施するための形態】
【００３３】
以下に、本発明を適用した実施の形態を説明する。説明の明確化のため、以下の記載及び図面は、適宜、省略及び簡略化がなされている。又、各図面において、同一要素には同一の符号が付されており、説明の明確化のため、必要に応じて重複説明は省略されている。以下においては、ディスク・ドライブの一例であるハードディスク・ドライブ（ＨＤＤ）において、本発明の実施形態を説明する。
【００３４】
本形態のＨＤＤは、そのヘッドの位置決め制御において、外部振動を検知するセンサの出力を使用したフィードフォワード制御を使用する。このようなセンサとしては、一般に加速度センサが使用され、ショック・センサやＲＶ（Ｒｏｔａｔｉｏｎａｌ  Ｖｉｂｒａｔｉｏｎ）センサが知られている。以下に説明する好ましい構成においては、ショック・センサの出力が使用される。
【００３５】
本形態のＨＤＤは、外部振動に応じて、ショック・センサ・フィードフォワード（ＳＳＦＦ）制御におけるフィルタの適応化を行う。ＨＤＤは、ショック・センサ出力と位置誤差信号（ＰＥＳ）とを参照して、ＳＳＦＦフィルタのフィルタ係数を更新して、その適応化を行う。各フィルタ係数の更新において、その更新量はステップ・サイズ・パラメータによって決まる。本形態のＨＤＤは、このステップ・サイズ・パラメータを外部振動の大きさに従って変化させる。具体的には、ショック・センサ出力あるいはフィードフォワード出力を入力とする関数フィルタ出力の絶対値を使用する。これにより、加速度センサ出力を使用したヘッド移動機構のフィードフォワード制御において、制御システムの安定性と適応フィルタの収束性とを両立させることができる。
【００３６】
本形態におけるＳＳＦＦ制御について詳細に説明を行う前に、その制御を行うＨＤＤの全体構成を説明する。図１のブロック図において、ＨＤＤ１は、エンクロージャ１０内に、データを記憶するディスクである磁気ディスク１１を有している。スピンドル・モータ（ＳＰＭ）１４は、磁気ディスク１１を所定の角速度で回転する。磁気ディスク１１の各記録面に対応して、磁気ディスク１１にアクセスするヘッド・スライダ１２が設けられている。ヘッド・スライダ１２はヘッドの一例であり、アクセスは、リード及びライトの上位の概念である。
【００３７】
各ヘッド・スライダ１２は、磁気ディスク上を飛行するスライダと、スライダに固定され磁気信号と電気信号との間の変換を行うヘッド素子部とを備えている。各ヘッド・スライダ１２は、移動機構であるアクチュエータ１６の先端部に固定されている。アクチュエータ１６はボイス・コイル・モータ（ＶＣＭ）１５に連結され、揺動軸を中心に揺動することによって、ヘッド・スライダ１２を回転する磁気ディスク１１上においてその半径方向に移動する。
【００３８】
アクチュエータ１６は、揺動軸を挟んでヘッド・スライダ１２の反対側にボイス・コイルを有しており、そのボイス・コイルはＶＣＭ１５の一部を構成する。磁気ディスク１１の外周端近くに、ランプ１７がエンクロ−ジャ１０内に固定されている。ＨＤＤ１の電源がＯＦＦのときやアイドル時に、アクチュエータ１６は磁気ディスク１１の外側においてランプ１７上で停止している。なお、本発明は、アクチュエータ１６が磁気ディスク１１上の所定領域で着地、停止するＣＳＳ（コンタクト・スタート・アンド・ストップ）方式のＨＤＤにも適用することができる。
【００３９】
エンクロージャ１０の外側に固定された回路基板２０上には、回路素子が実装されている。モータ・ドライバ・ユニット２２は、ＨＤＣ／ＭＰＵ２３からの制御データに従って、ＳＰＭ１４及びＶＣＭ１５を駆動する。ＲＡＭ２４は、リード・データ及びライト・データを一時的に格納するバッファとして機能する。エンクロージャ１０内のアーム電子回路（ＡＥ）１３は、複数のヘッド・スライダ１２の中から磁気ディスク１１へのアクセスを行うヘッド・スライダ１２を選択し、その再生信号を増幅してリード・ライト・チャネル（ＲＷチャネル）２１に送る。また、ＲＷチャネル２１からの記録信号を選択したヘッド・スライダ１２に送る。なお、本発明は一つのヘッド・スライダ１２のみを有するＨＤＤに適用することができる。
【００４０】
ＲＷチャネル２１は、リード処理において、ＡＥ１３から取得したリード信号からデータを抽出し、デコード処理を行う。読み出されるデータは、ユーザ・データとサーボ・データとを含む。デコード処理されたデータは、ＨＤＣ／ＭＰＵ２３に転送される。また、ＲＷチャネル２１は、ライト処理において、ＨＤＣ／ＭＰＵ２３から転送されたライト・データをコード変調し、更にコード変調されたライト・データをライト信号に変換してＡＥ１３に供給する。
【００４１】
コントローラであるＨＤＣ／ＭＰＵ２３は、リード／ライト処理制御、コマンド実行順序の管理、サーボ・データを使用したヘッド・スライダ１２（アクチュエータ１６）のポジショニング制御（サーボ制御）、ホスト５１との間のインターフェース制御、ディフェクト管理、エラーが発生した場合のエラー対応処理など、データ処理に関する必要な処理及びＨＤＤ１の全体制御を実行する。回路基板２０上にはショック・センサ２５が実装されている。ＨＤＣ／ＭＰＵ２３は、アクチュエータ１６のサーボ制御において、ショック・センサ２５からの出力を参照してフィードフォワード制御を行う。
【００４２】
ＨＤＣ／ＭＰＵ２３は、ホスト５１からリード／ライトのコマンドを取得すると、シークを開始する。ＨＤＣ／ＭＰＵ２３は、現在の半径位置からそのコマンドが示すアドレスのデータ・トラック（ターゲット・データ・トラック）にヘッド・スライダ１２を移動する（シーク）。ＨＤＣ／ＭＰＵ２３は、コマンドの指定アドレスをサーボ・アドレスに変換して、ターゲットの半径位置を特定する。シークが終了すると、ＨＤＣ／ＭＰＵ２３は、ヘッド・スライダ１２をターゲット・データ・トラック上に維持する（フォロイング）。
【００４３】
シーク及びフォロイングにおいて、ＨＤＣ／ＭＰＵ２３は記録面から読み出したサーボ・データを使用して、アクチュエータ１６（ＶＣＭ１５）を制御する。シーク制御は、一般に、サーボ・データを使用した速度制御と位置制御とによりアクチュエータ１６（ＶＣＭ１５）を制御する。フォロイング制御において、ＨＤＣ／ＭＰＵ２３は、ヘッド・スライダ１２の現在半径位置（サーボ・アドレス）とターゲットの半径位置（サーボ・アドレス）と所定範囲内にあるように位置決め制御を行う。
【００４４】
サーボ・セクタは、記録面上において、円周方向に略等間隔で離間して形成されている。従って、ヘッド・スライダ１２は一定の周期（サーボ・サンプリング周期）でサーボ・データを読み出し、ＨＤＣ／ＭＰＵ２３は、そのサーボ・データが示す現在のサーボ・アドレスとターゲットのサーボ・アドレスとの位置誤差を示す位置誤差信号（ＰＥＳ）に応じてＶＣＭ１５の駆動電流を制御する。
【００４５】
図２は、本形態のＨＤＤ１におけるサーボ制御システムをモデル化したブロック図である。図２において、ｄは外部振動、Ｑはショック・センサ２５の伝達関数である。Ｒは、ショック・センサ２５には見えない外部振動の伝達関数である。Ｆは、ＳＳＦＦフィルタの伝達関数である。ＡＰは、ＳＳＦＦフィルタＦの係数を変化させる適応化処理部である。
【００４６】
Ｋは、フィードバック・コントローラの伝達関数である。フィードバック・コントローラは、安定化フィルタ（位相進み器と積分器）と、それに並列にあるピーク・フィルタとを有している。それぞれの伝達関数はＣ及びＰＦで表わしている。ｒは目標値であり、フィードバック・コントローラＫへの入力は位置誤差信号ｅ（ＰＥＳ）である。
【００４７】
Ｐは制御対象の伝達関数であり、制御対象は、ノッチ・フィルタ、ＶＣＭアンプ、そしてアクチュエータ１６を有する。これらの伝達関数は、それぞれ、ＮＦ、ＶＣＭＡ、そしてＡで表わしている。Ｆ、Ｃ、ＰＦ及びＮＦは、ＨＤＣ／ＭＰＵ２３内の構成である。Ｄはモータ・ドライバ２３内のＶＣＭドライバの伝達関数である。ピーク・フィルタ及びノッチ・フィルタの数は、ＨＤＤの設計により変化する。
【００４８】
安定化フィルタＣは、ＰＥＳに応じてＶＣＭ電流値（を示す制御データ）を算出する。安定化フィルタＣによる制御は基本的にＰＩＤ制御であるため、制御の安定性を保ちつつヘッド・スライダ１２（アクチュエータ１６）の大きな振動に対応することが難しい。そのため、ＨＤＣ／ＭＰＵ２３は、安定化フィルタＣの出力に直列に配置されたノッチ・フィルタＮＦと、安定化フィルタＣに並列に接続されたピーク・フィルタＰＦとを有している。
【００４９】
ノッチ・フィルタＮＦは、アクチュエータ１６の発振を抑制する働きをする。安定化フィルタＣからの信号においてアクチュエータ１６の発振周波数に対応する成分を小さくすることで、アクチュエータ１６の発振周波数における大きな振動を抑えることができる。ピーク・フィルタＰＦは、外乱によるヘッド・スライダ１２（アクチュエータ１６）振動を抑圧する働きをする。
【００５０】
ヘッド・スライダ１２が読み出したサーボ・データから、ＨＤＣ／ＭＰＵ２３はヘッド・スライダ１２の現在半径位置を示すデータ（信号）を生成する。ＨＤＣ／ＭＰＵ２３は、ホスト５１からのコマンドが指定するターゲット半径位置を示すデータを持っている。ＨＤＣ／ＭＰＵ２３は、ターゲット半径位置と現在半径位置との差異である位置誤差信号ＰＥＳを算出する。
【００５１】
安定化フィルタＣは、ＰＥＳに対して所定の演算処理を行い、ヘッド・スライダ１２をターゲット半径位置に近づける（位置誤差を抑制する）ためのＶＣＭ電流値を算出する。ＰＥＳは、安定化フィルタＣと並列に接続されているピーク・フィルタＰＦにも入力される。ＰＥＳにおける特定周波数成分がフィルタ出力となる。安定化フィルタＣからの出力には、ピーク・フィルタＰＦからの出力とＳＳＦＦフィルタＦからの出力が加えられる。さらに、その加え合わされた値（信号）がノッチ・フィルタＮＦに与えられる。
【００５２】
本形態のサーボ・システムは、ＳＳＦＦ制御に特徴を有している。以下において、本形態のＨＤＤにおけるＳＳＦＦ制御について詳細に説明を行う。適応化処理部ＡＰは、ＳＳＦＦフィルタＦの適応化（フィルタ係数の適応化）を行う。以下において、適応化処理部ＡＰによりＳＳＦＦフィルタＦの適応化方法（係数更新方法）について説明する。
【００５３】
図２に示したブロック図を書き換えると、図３に示すブロック図を得ることができる。Ｓは閉ループ（フィードバック・ループ）の感度関数である。感度関数は、フィードバック制御系において、制御対象の変動が閉ループ系に及ぼす影響の比率のことをいう。感度関数Ｓは、１／（１＋ＰＫ）で表わされる（Ｐは制御対象、Ｋはフィードバック制御器）。本形態の適応化処理部ＡＰは、ＰＥＳの絶対値（ＰＥＳの２乗値はこれと同義）が最小となるようにフィルタ係数更新を行なう。このとき、適応化処理部は、ＬＭＳ法に従う適応化処理におけるステップ・サイズ・パラメータを外部振動に応じて変化させる。ステップ・サイズ・パラメータを、定数ではなく、外部振動（もしくはショック・センサ出力）の関数（変数）とすることで、ＳＳＦＦシステムの安定性を損なうことなく、ＳＳＦＦフィルタの収束性を高める（収束速度を速くする）ことができる。
【００５４】
ＳＳＦＦフィルタは、ＦＩＲフィルタあるいはＩＩＲフィルタにより構成される。それぞれのフィルタ構成による本形態の適応化処理方法について説明する。ＳＳＦＦフィルタがｎ次のＦＩＲフィルタで構成されているとき、ＳＳＦＦフィルタは、次の式（伝達関数）で表わされる。
【数６】
0005546838.tif 000007
【００５５】
ｃｉは各演算子ｚ−ｉの係数（フィルタ係数）である。ＦＩＲフィルタＦの出力、つまり、ＳＳＦＦフィルタのフィードフォワード制御出力は、次の式で表わされる。
【数７】
0005546838.tif 000008
ｓはショック・センサ出力である。ｋは時刻であって、ＰＥＳのサンプリング時刻に相当する。
【００５６】
本形態の適応化処理部ＡＰは、以下の関係式に従って、フィルタ係数ｃｉを更新する。
【数８】
0005546838.tif 000009
数式８において、ｅはＰＥＳである。ＳＰは整定関数フィルタであり、高次の関数で近似され、ＨＤＤ１の設計により決定される。感度関数Ｓと制御対象Ｐの積で表される整定関数は、制御対象の入力端から偏差への伝達特性を示す。したがって、フィードバック制御器の設計が終了した段階で算出可能である．また、構成上、ＳＳＦＦ制御出力から偏差までの伝達特性は整定関数となり、適応アルゴリズムに整定関数が表れる。フィルタ係数ｃｉの更新量（ｃｉ（ｋ＋１）−ｃｉ（ｋ））は、ショック・センサ出力の整定関数フィルタの出力の絶対値に反比例する。なお、数式７における右辺第２項の分母に、小さい正の数εを加算してもよい。これにより、ＳＰｓ（ｋ−ｉ）の絶対値がある程度小さくなった場合に起こる数値計算上の問題を回避することができる。この演算方法でも、更新量は、ショック・センサ出力の整定関数フィルタの出力の絶対値に反比例すると見なすことができる。
【００５７】
数式７に示すように、フィルタ係数ｃｉの更新量（ｃｉ（ｋ＋１）−ｃｉ（ｋ））は、前回（サンプル・タイミングｋ）のＰＥＳのサンプル値ｅ（ｋ）と、前回（サンプル・タイミングｋ）のショック・センサ出力ｓを閉ループ系の整定関数フィルタＳＰを通過させた値ＳＰｓ（ｋ−ｉ）と、ステップ・サイズを決める関数１／（｜｜ＳＰｓ（ｋ−ｉ）｜｜2）と、の積により算出される。
【００５８】
数式８と従来のＬＭＳ法による適応演算方法（数式５）と比較して理解できるように、この更新式は、ＬＭＳ法におけるステップ・サイズ・パラメータμを、次の数式で表わされる値に置き換えたものと解釈することができる。
【数９】
0005546838.tif 000010
【００５９】
数式９から、ＳＰｓ（ｋ−ｉ）の絶対値（２乗値はこれと同義）が大きくなるほど、ステップ・サイズが小さくなることがわかる。このように、適応化処理部ＡＰは、ショック・センサ出力ｓを閉ループ系の整定関数フィルタＳＰを通過させえた値の絶対値が増加する従ってステップ・サイズが小さくなるように、関数であるステップ・サイズ・パラメータを変化させる。これにより、ＳＳＦＦシステムの安定性と収束性とを両立させることができる。
【００６０】
次に、ＳＳＦＦフィルタがｐ次／ｑ次のＩＩＲフィルタで構成されている場合の、本形態のアルゴリズムによるフィルタ係数の更新方法を説明する。なお、好ましくは、ＩＩＲフィルタの次数は２次である。ＩＩＲフィルタで構成されているＳＳＦＦフィルタのフィードフォワード制御出力ｖは、次の式で表わされる。
【数１０】
0005546838.tif 000011
【００６１】
数式９において、ａξはＩＩＲフィルタの分母の係数であり、ｂηはＩＩＲフィルタの分子の係数である。本形態の適応化処理部ＡＰは、以下の関係式に従って、フィルタ係数ａξとｂηとを更新する。
【数１１】
0005546838.tif 000012
【００６２】
適応化処理部ＡＰは、ＳＳＦＦフィルタの適応化演算において、ＩＩＲフィルタにおける分子の係数更新ための演算と、分母の係数更新のため演算のそれぞれを行う。さらに、適応化処理部ＡＰは、分子及び分母のそれぞれの係数を、それぞれの演算結果に従って更新する。数式１１に示すように、分母のフィルタ係数更新におけるステップ・サイズは、フィードフォワード制御出力を整定関数フィルタに通した値（フィードフォワード制御出力の整定関数フィルタ出力）で決まる。また、分子のフィルタ係数更新におけるステップ・サイズは、ショック・センサ出力を整定関数フィルタに通した値（ショック・センサ出力の整定関数フィルタ出力）で決まる。
【００６３】
分母の係数更新式において、１／２×（｜｜ＳＰｖ（ｋ−ξ）｜｜2）を、変化するステップ・サイズ・パラメータであると見なすことができる。また、分子の係数更新式において、１／２×（｜｜ＳＰｓ（ｋ−η）｜｜2）を、変化するステップ・サイズ・パラメータであると見なすことができる。
【００６４】
数式１１が示すように、ＩＩＲフィルタの分母及び分子のそれぞれにおいて、ステップ・サイズは、整定関数フィルタ出力の絶対値（２乗値はこれに同義）に反比例している。つまり、整定関数フィルタ出力の絶対値が大きくなるほど、ステップ・サイズが小さくなる。分母における整定関数フィルタ出力（ＳＰｖ（ｋ−ξ））は、ＳＳＦＦフィルタ出力を入力とする。分子における整定関数フィルタ出力（ＳＰｓ（ｋ−η））は、ショック・センサ出力を入力とする。
【００６５】
このように、適応化処理部ＡＰは、ＩＩＲフィルタ（ＳＳＦＦフィルタ）の分母及び分子の係数更新において、閉ループ系の整定関数フィルタＳＰの出力（ＳＰｖ（ｋ−ξ）、ＳＰｓ（ｋ−η））の絶対値が増加する従って、ステップ・サイズが小さくなるように、ステップ・サイズ・パラメータを変化させる。これにより、ＳＳＦＦシステムの安定性と収束性とを両立させることができる。
【００６６】
ＳＳＦＦフィルタをＦＩＲフィルタあるいはＩＩＲフィルタのいずれで構成した場合においても、上記ＳＳＦＦフィルタ係数の更新演算は、除算を含んでいる。ＨＤＤに実装するＳＳＦＦシステムにおいて、フィルタ係数の更新は、ＨＤＣ／ＭＰＵ２３内におけるＭＰＵが実行することが一般的である。ＭＰＵは、上述のように、ＨＤＤ１の多くの動作の実行制御のための演算を行う。従って、ＳＳＦＦフィルタの適応化処理における演算量をできるだけ少なくすることが望まれる。
【００６７】
好ましい構成において、適応化処理部ＡＰは、除算に代えて、ビット・シフト演算を行なう。ＳＳＦＦフィルタをＦＩＲフィルタで構成する場合、フィルタ係数ｃｉの更新式は、次の数式で表わすことができる。
【数１２】
0005546838.tif 000013
【００６８】
数式１１において、ｑは量子化器（丸め）、ｍはビット・シフト量である。ｔ＝αｋはビット・シフト量更新時刻であり、更新回数は、α＝１において、サーボ・サンプリング回数と一致する。ビット・シフト量は、簡単のため、全ての係数について共通であることが好ましい。
【００６９】
ＳＳＦＦフィルタをＩＩＲフィルタで構成する場合、フィルタ係数の更新式は、次の数式で表わすことができる。
【数１３】
0005546838.tif 000014
【００７０】
数式１３において、ｑは量子化器（丸め）、ｍａは分母の係数更新におけるビット・シフト量、ｍｂは分子の係数更新におけるビット・シフト量である。ｔ＝αｋはビット・シフト量更新時刻であり、更新回数は、α＝１において、サーボ・サンプリング回数と一致する。ＦＩＲフィルタと同様に、分子及び分母のそれそれぞれにおいて、ビット・シフト量は、簡単のため、全ての係数について共通であることが好ましい。
【００７１】
フィルタのタイプに係らず、ＳＳＦＦフィルタの最適なステップ・サイズ（ＩＩＲフィルタにおいては、分子と分母のそれぞれ）は、整定関数フィルタ出力の２乗に反比例する。好ましい構成において、ＨＤＣ／ＭＰＵ２３は、整定関数フィルタ出力とビット・シフト量とを関係付けるテーブルを有している。この表は、ＨＤＤ１の製造において、ＨＤＤ１内に予め保存する。
【００７２】
適応化処理部ＡＰ（ＭＰＵ）は、位置誤差信号（ＰＥＳ）あるいはフィードフォワード出力の整定関数フィルタ出力を算出し、上記テーブルを参照して、整定関数フィルタ出力に対応するビット・シフト量を選択する。整定関数フィルタがＩＩＲフィルタである場合、適応化処理部ＡＰは、分母の更新演算と分子の更新演算のそれぞれのテーブルを参照する。
【００７３】
演算処理回数を低減するため、適応化処理部ＡＰ（ＭＰＵ）が行なうＳＳＦＦフィルタの係数更新の頻度は、ＰＥＳのサンプリング頻度よりも少ないことが好ましい。つまり、上記数式１２及び数式１３において、αは２以上の整数であることが好ましい。例えば、αは１００である。ＳＳＦＦフィルタの係数更新の周期は、ＰＥＳのサンプリング周期のα倍である。ＰＥＳの複数回のサンプリング毎にＳＳＦＦフィルタの係数更新を行なうことで、ＳＳＦＦフィルタの係数を適切に更新しつつ、ＭＰＵの演算負荷を低減することができる。
【００７４】
このように連続するＳＳＦＦフィルタの係数更新の間において複数のＰＥＳを取得する構成においては、適応化処理部ＡＰは、更新量の演算において、ＳＳＦＦフィルタ出力の平均を使用することが好ましい。これにより、瞬間値を使用する構成と比較して、更新後のＳＳＦＦフィルタの外部振動に対する一致性を高めることができる。上述のように、最適なステップ・サイズは整定関数フィルタ出力の２乗に反比例することから、その値の平均を使用する。平均演算において、適応化処理部ＡＰ（ＭＰＵ）は、演算量の点から、指数加重の移動平均を使用することが好ましい。指数加重の移動平均は、移動平均の一つである。
【００７５】
適応化処理部ＡＰは、整定関数フィルタ出力を移動平均フィルタ処理した信号の２乗値（絶対値と同義）を見ながら、図４の上図に示すグラフに基づいて作成された図４の下図の表を参照して、ビット・シフト量を決定する。上述のように、最適なステップ・サイズは、整定関数フィルタ出力の２乗に反比例する。従って、整定関数フィルタ出力を、その移動平均で置き換えた次式に基づいて決定する。
【数１４】
0005546838.tif 000015
【００７６】
ステップ・サイズをビット・シフトで近似的に表現するため、対応する区間を上式に基づいて逆算、定義する。区間ｘｊは、次の数式で定義することができる。
【数１５】
0005546838.tif 000016
【００７７】
ビット・シフト量は，整定関数フィルタ出力と最適なステップ・サイズとの関係式１３から決定される。演算量削減のために、ＰＥＳ各サンプリング時刻kの整定関数フィルタ出力（瞬時値）ではなく、その絶対値の移動平均が使用されている。このことによって，アルゴリズム安定性が毎時刻完全に保証されるというわけではなくなる。数式１４に出てくる値γは信号振幅のばらつきに対応させるためのもので、これをある程度小さく選んでおくことが重要である。値γは典型的には定数である。
【００７８】
ＳＳＦＦは、外部振動下における位置決め精度改善法である。外部振動の無い状況ではその効果は無く、演算負荷のみがかかる。そのため、ＨＤＤ１のデータ転送速度（パフォーマンス）を悪化させうる。そこで、外部振動による位置決め精度悪化のときにのみＳＳＦＦが機能するように、ＳＳＦＦ処理演算部にオン／オフの機能を設けることが好ましい。
【００７９】
図５は、オン／オフ機能を有するＳＳＦＦ処理演算部の構成を模式的に示すブロック図である。図５のブロック図において、ＭＡＦ１及びＭＡＦ２は移動平均フィルタ、ＯＢはセンサ出力取得部である。他の要素は、他の図面のそれらと同様である。図５において、ＳＳＦＦ処理演算部は、二つの機能ブロックを有し、それらがＯＮ／ＯＦＦされる。一つは、サブルーチン１、もう一つはサブルーチン２である。サブルーチン２はサブルーチン１に含まれ、それらは入れ子構造になっており、サブルーチン１がＯＮ状態にあるとき、サブルーチン２がＯＮされうる。サブルーチン１がＯＦＦ状態のとき、サブルーチン２もＯＦＦ状態にある。典型的に、ＳＳＦＦ処理演算部はＭＰＵの演算による実現されることから、二つの機能ブロックをサブルーチンと呼ぶ。本構成において、ＯＮ／ＯＦＦするブロックがセンサ出力取得部を含むので、ＳＳＦＦ処理演算部の演算量低減効果が大きい。
【００８０】
センサ出力取得部がＯＦＦされているとき、ＳＳＦＦ処理演算部はショック・センサ出力を参照することができない。そのため、ＳＳＦＦ処理演算部はＰＥＳを使用して外部振動の大きさについて判定を行う。センサ出力取得部が動作しているときは、ショック・センサ出力を参照することで、より正確に外部振動の大きさについて判定を行うことができる。
【００８１】
好ましい構成において、ＳＳＦＦ処理演算部は、ＰＥＳの絶対値（２乗値の使用は絶対値の使用と同義）、およびショック・センサ出力の絶対値（２乗値の使用は絶対値の使用と同義）の、各々を移動平均フィルタ処理した信号に基づいてＯＮ／ＯＦＦする。ＰＥＳの絶対値及びショック・センサ出力の移動平均と異なる平均あるいは演算により得られる値を使用してもよい。演算処理の容易性から、本例においては、移動平均を使用する。平均と異なり値としては、分散を使用することもできる。
【００８２】
本構成のＳＳＦＦ処理演算部によるＯＮ／ＯＦＦ動作について、図６〜図８のフローチャートを参照して説明する。好ましい構成において、ＳＳＦＦ演算処理部は、全てのＯＮ／ＯＦＦ判定をシーク・コマンド受信時に行う。これにより、演算処理を低減し、また、他の処理への影響を小さくする。設計によっては、他のタイミングで判定を行ってもよい。
【００８３】
図６は、サブルーチン１及びサブルーチン２の双方がＯＦＦ状態にあるとき、サブルーチン１をＯＮする動作（サブルーチン２はＯＦＦ）の処理フローである。ＨＤＣ／ＭＰＵ２０３は、シーク処理を行う（Ｓ１１）。ＳＳＦＦ演算処理部は、移動平均フィルタＭＡＦ１の出力を参照してＰＥＳの絶対値の移動平均値を取得し、その値と閾値とを比較する（Ｓ１２）。ＰＥＳの絶対値の移動平均値が閾値よりも大きいとき（Ｓ１２におけるＹ）、ＳＳＦＦ演算処理部は、サブルーチン１をアクティブにする（Ｓ１３）。ＰＥＳの絶対値の移動平均値が閾値以下のとき（Ｓ１２におけるＮ）、ＳＳＦＦ演算処理部は、サブルーチン１をＯＦＦ状態に維持する。
【００８４】
図７は、サブルーチン１のみが動作している（ＯＮ状態）場合におけるＯＮ／ＯＦＦ判定の処理フローを示している。ＨＤＣ／ＭＰＵ２３は、シーク処理を行う（Ｓ２１）。ＳＳＦＦ演算処理部は、移動平均フィルタＭＡＦ２の出力を参照してセンサ出力の絶対値の移動平均値を取得し、その値と閾値＿ＨＩＧＨとを比較する（Ｓ２２）。センサ出力の絶対値の移動平均値が閾値よりも大きいとき（Ｓ２２におけるＹ）、ＳＳＦＦ演算処理部は、サブルーチン２をアクティブにする（Ｓ２３）。その後、ＳＳＦＦ演算処理部は、カウンタをクリアする（Ｓ２４）。
【００８５】
センサ出力の絶対値の移動平均値が閾値以下のとき（Ｓ２２におけるＮ）、ＳＳＦＦ演算処理部は、カウンタをインクリメントし（Ｓ２５）、そのカウンタ値と閾値とを比較する（Ｓ２６）。この閾値は、図６における閾値とは異なる。カウンタ値が閾値よりも大きいとき（Ｓ２６におけるＹ）、ＳＳＦＦ演算処理部はサブルーチン１をＯＦＦし（Ｓ２７）、さらに、カウンタをクリアする（Ｓ２４）。カウンタ値が閾値以下のとき（Ｓ２６におけるＮ）、ＳＳＦＦ演算処理部は、カウンタもサブルーチン１も、現在の状態を維持する。
【００８６】
図８は、サブルーチン１及びサブルーチン２の双方が動作している（ＯＮ状態）場合におけるＯＮ／ＯＦＦ判定の処理フローを示している。ＨＤＣ／ＭＰＵ２３は、シーク処理を行う（Ｓ３１）。ＳＳＦＦ演算処理部は、移動平均フィルタＭＡＦ２の出力を参照してセンサ出力の絶対値の移動平均値を取得し、その値と閾値＿ＬＯＷとを比較する（Ｓ３２）。閾値＿ＬＯＷは閾値＿ＨＩＧＨよりも小さい。センサ出力の絶対値の移動平均値が閾値＿ＬＯＷよりも小さいとき（Ｓ３２におけるＹ）、ＳＳＦＦ演算処理部は、カウンタをインクリメントし（Ｓ３３）、そのカウンタ値と閾値とを比較する（Ｓ３４）。カウンタ値が閾値よりも大きいとき（Ｓ３４におけるＹ）、ＳＳＦＦ演算処理部は、サブルーチン２をＯＦＦする（Ｓ３５）。さらに、ＳＳＦＦ演算処理部は、カウンタをクリアする（Ｓ３６）。
【００８７】
カウンタ値が閾値以下のとき（Ｓ３４におけるＮ）ＳＳＦＦ演算処理部は、サブルーチン２とカウンタとを、現在の状態を維持する。工程Ｓ３２において、センサ出力の絶対値の移動平均値が閾値＿ＬＯＷ以上のとき（Ｓ３２におけるＮ）、ＳＳＦＦ演算処理部は、カウンタをクリアする（Ｓ３６）。
【００８８】
本構成において、外部振動下であっても、ＳＳＦＦ制御無しで位置決め精度が良好な場合には、フィードフォワード制御部のみならず、ショック・センサ出力取得部もオフされる。ＰＥＳが悪化し、かつ特定周波数の外部振動が加わっている場合にのみＳＳＦＦ処理演算部を動作させることにより、演算量を削減することができる。
【００８９】
ＳＳＦＦ演算処理部は、動作中のサブルーチンのＯＦＦ条件として、カウンタの値を参照する。これにより、サブルーチンがＯＦＦされるまでに所定時間経過が条件となり、短時間の間にサブルーチンがＯＮ／ＯＦＦされるチャタリング現象を避けることができる。また、ＳＳＦＦ演算処理部は、センサ出力を使用した判定処理において、二つの閾値を使用している。サブルーチン２をＯＮする条件判定において高い閾値を使用し、ＯＦＦする条件判定において低い値を使用する。これもまた、短時間の間にサブルーチンがＯＮ／ＯＦＦされるチャタリング現象を防止する効果を奏する。
【００９０】
以上、本発明を好ましい実施形態を例として説明したが、本発明が上記の実施形態に限定されるものではない。当業者であれば、上記の実施形態の各要素を、本発明の範囲において容易に変更、追加、変換することが可能である。例えば、本発明は、ＨＤＤ以外のディスク・ドライブに適用することができ、ディスクが筐体内に固定されているか否かを問わない。ヘッド・スライダの移動機構は、回動するアクチュエータの他、スライドする機構を使用してもよい。
【符号の説明】
【００９１】
１  ハードディスク・ドライブ、１０  エンクロージャ、１１  磁気ディスク
１２  ヘッド・スライダ、１６  アクチュエータ、２０  回路基板
２１  リード・ライト・チャネル、２２  モータ・ドライバ・ユニット
２３  ハードディスク・コントローラ／ＭＰＵ
２４  ランダム・アクセス・メモリ、５１  ホスト、Ａ  アクチュエータ
Ｃ  安定化フィルタ、Ｆ  ＳＳＦＦフィルタ、Ｋ  フィードバック・コントローラ
Ｐ  制御対象、Ｑ  ショック・センサ、Ｒ  外部振動、Ｓ  感度関数
ＡＰ  ＳＳＦＦフィルタの適応化処理部、ＮＦ  ノッチ・フィルタ
ＯＢ  センサ出力取得部、ＰＦ  ピーク・フィルタ
ＭＡＦ１、ＭＡＦ２  移動平均フィルタ、ＶＣＭＡ  ＶＣＭアンプ
ｄ  外部振動、ｅ  位置誤差振動
【図１】
0005546838.tif 000017
【図２】
0005546838.tif 000018
【図３】
0005546838.tif 000019
【図４】
0005546838.tif 000020
【図５】
0005546838.tif 000021
【図６】
0005546838.tif 000022
【図７】
0005546838.tif 000023
【図８】
0005546838.tif 000024
【図９】
0005546838.tif 000025
【図１０】
0005546838.tif 000026