説明

ディスク・ドライブ及びヘッド位置決め制御方法

【課題】センサ出力を使用したヘッド移動機構のフィードフォワード制御において、制御システムの安定性と適応フィルタの収束性とを両立させる。
【解決手段】本形態のHDD1は、外部振動に応じて、ショック・センサ・フィードフォワード(SSFF)制御におけるフィルタの適応化を行う。適応化処理部APは、ショック・センサQの出力と位置誤差信号(PES)とを参照して、SSFFフィルタFのフィルタ係数を更新する。各フィルタ係数の更新において、その更新量はステップ・サイズ・パラメータによって決まる。適応化処理部は、このステップ・サイズ・パラメータを外部振動の大きさに従って変化させる。具体的には、ショック・センサ出力あるいはフィードフォワード出力を入力とする関数フィルタ出力の絶対値を使用する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、ディスク・ドライブ及びそのヘッド位置制御方法に関し、特に、ヘッドの位置決め制御における加速度センサの出力を使用したフィードフォワード制御に関する。
【背景技術】
【0002】
ディスク・ドライブとして、光ディスク、光磁気ディスク、あるいはフレキシブル磁気ディスクなどの様々な態様のディスクを使用する装置が知られているが、その中で、ハードディスク・ドライブ(HDD)は、コンピュータ・システムの他、動画像記録再生装置やカーナビゲーション・システムなど、多くの電子機器において使用されている。
【0003】
HDDで使用される磁気ディスクは、複数のデータ・トラックと複数のサーボ・トラックとを有している。サーボ・トラックはアドレス情報を有する複数のサーボ・セクタから構成される。また、データ・トラックには、ユーザ・データを含む複数のデータ・セクタから構成されている。円周方向に離間するサーボ・セクタの間に、データ・セクタが記録されている。
【0004】
HDDは揺動するアクチュエータを有し、そのアクチュエータにヘッド・スライダが支持されている。HDDは、ヘッド・スライダによってサーボ・セクタのアドレス情報を読み出し、そのアドレス情報に従ってアクチュエータを制御する(サーボ制御)。これにより、HDDは、ヘッド・スライダを所望の半径位置(ターゲット・データ・トラック)に移動し(シーク)、さらに、その位置に位置決めする(フォロイング)することができる。ターゲット・データ・トラックに位置決めされたヘッド・スライダは、そのトラック内のターゲット・データ・セクタへのデータ書き込みあるいはデータ読み出しを行う。
【0005】
HDDのヘッド位置決め精度はHDD性能を左右する重要な要素の一つであるが,外部振動下においても、ヘッド位置決め精度の劣化量を最小限に抑えることが近年ますます重要となってきている。そのため、外部振動を検知するショック・センサの出力を使用したフィードフォワード制御が提案されている。このショック・センサ・フィードフォワード制御(SSFF制御)は、ショック・センサ出力(加速度信号)を利用して位置誤差信号(PES)の劣化を抑制する補償値を生成し出力するフィードフォワード制御技術である。
【0006】
SSFF制御の性能は、この補償値を生成するSSFFフィルタで決まる。適切なSSFFフィルタは、加速度センサの出力から位置誤差信号までの伝達特性(外部振動伝達特性Rとセンサ特性Qの逆特性の積)、サーボ系の特性等が分かれば、計算することができる。しかし、外部振動伝達特性は、HDDの設置の仕方や外部振動の方向などで異なるため、最適なフィードフォワード・フィルタが使用環境に応じて変わってしまう。
【0007】
そのため、適応フィルタリング技術を用いて,使用環境に応じた適切なSSFFフィルタをオンラインで生成する方法が提案されている(例えば、特許文献1を参照)。この手法は、PESの絶対値を最小にするようSSFFフィルタを適応アルゴリズムに基づいて更新させていくことで、既知情報に基づく振動成分相殺を基本とするSSFF法を、周囲の環境変動にも対応可能としたものである。
【0008】
具体的に説明する。図9は、SSFFシステムの構成を模式的に示すブロック図である。図9において、FはSSFFフィルタの伝達関数、Qはショック・センサの伝達関数、Rは外部振動の伝達関数、Pは制御対象の伝達関数、Kはフィードバック・コントローラの伝達関数、dは外部振動である。図10のブロック図は、図9のブロック図に書き換えることができる。図10のブロック図において、Sは感度関数であり、1/(1+PK)である。
【0009】
SSFFシステムは、位置誤差信号(PES)に対する外部振動の影響を、SSFFフィルタにより相殺するように、SSFFフィルタを適応化する。PES=−S×(PFQ+R)dの関係が成立するため、外部振動の影響を打ち消す理想のSSFFフィルタFidealは、以下の数式1で表わされる。
【数1】

【0010】
数式1に示すように、理想的なSSFFフィルタFidealは、外部振動伝達特性Rと等価な外部振動の内部モデルを持つ必要がある。しかし、外部振動伝達特性Rは、HDDの設置方法や外部振動方向に依存するため、理想的なSSFFフィルタFidealのオフライン設計は不可能である。
【0011】
特許文献1に開示されているSSFF制御は、適応フィルタリング技術を使用して、使用環境に応じた適切なSSFFフィルタをオンラインで生成する。具体的には、このSSFF制御は、LMS(Least Mean Square)法に基づき、PESの2乗値が最小となるようにSSFFフィルタの係数を更新する。具体的に説明する。
【0012】
SSFFフィルタがFIR型フィルタである場合、SSFFフィルタの伝達関数Fは次の数式2で表わされる。
【数2】


SSFF制御は、LMS法に従って、PESの2乗値が最小となるようにフィルタ係数ciを更新する。ciは、以下の関係を満たす。
【数3】


i(k)は、サンプリング時刻kにおける係数ciである。e(k)は、サンプリング・タイミングkにおけるPESである。μはステップ・サイズ・パラメータであり、正の定数である。
【0013】
ここで、e(k)は、次の関係を満足する。
【数4】


s(k)は、サンプリング時刻kにおけるショック・センサの出力である。
【0014】
上記数式3及び数式4から、次の関係式を得ることができる。
【数5】


数式5におけるSPを、本明細書において、整定関数と呼ぶ。SSFFシステムは、上記数式5に従ってフィルタ係数を更新することで、外部振動に対してSSFFフィルタを適応化する。
【先行技術文献】
【特許文献】
【0015】
【特許文献1】特開2003−109336号公報
【発明の概要】
【発明が解決しようとする課題】
【0016】
上記SSFF制御において、唯一の設計パラメータは、ステップ・サイズ・パラメータμである。ステップ・サイズ・パラメータμは、SSFFフィルタの係数の収束速度を決定する。SSFFフィルタの収束速度は、適応計算を含むSSFF法の重要な性能指標の一つである。収束速度が速いほどその振動低減性能が高いため、SSFFの性能に観点からは、ステップ・サイズ・パラメータμが大きいことが好ましい。
【0017】
しかし、外部振動の大きさによって、アルゴリズムの安定性が保証されるステップ・サイズ・パラメータは異なり、大きな外部振動が加わる場合にはステップ・サイズ・パラメータを小さくしておかなければならない。このため、ステップ・サイズ・パラメータは、想定される最大の外乱に合わせて、アルゴリズムの安定性が保たれるよう「十分小さな」正の数としておく必要がある。このパラメータを十分小さくすることは、フィルタ係数の収束速度を落とすことになる。
【0018】
このように、従来のSSFF制御は、アルゴリズム安定性の観点から、収束速度を決定するステップ・サイズ・パラメータを保守的に設計せざるを得ない。そのため、アルゴリズムがシンプルであり演算量が少ない反面、パラメータの収束速度が遅くなる。
【0019】
したがって、システムの安定性と収束性を両立させることができるSSFF制御技術が望まれる。また、SSFF制御においては、HDDに搭載されるMPUの性能制約を考慮して、できるだけ演算量の少ない実装方法とすることが望まれる。
【課題を解決するための手段】
【0020】
本発明の一態様のディスク・ドライブは、ディスクにアクセスするヘッドと、前記ヘッドを前記ディスクの半径方向に移動する移動機構と、前記ヘッドが前記ディスクから読み出したサーボ・データにより前記移動機構のサーボ制御を行うサーボ・システムと、加速度センサとを有する。前記サーボ・システムは、前記ヘッドの位置誤差信号により前記移動機構のフィードバック制御信号を生成するフィードバック・コントローラと、前記加速度センサの出力に応じて前記移動機構のフィードフォワード制御信号を生成するセンサ・フィードフォワード・フィルタと、前記加速度センサのセンサ出力と前記位置誤差信号とを使用して、前記センサ・フィードフォワード・フィルタのフィルタ係数を更新する適応化処理部とを有する。前記適応化処理部は、フィルタ係数の更新量を、前記センサ出力もしくはフィードフォワード制御出力を入力する関数フィルタ出力、位置誤差信号そしてステップ・サイズ・パラメータの積を使用して算出する。前記ステップ・サイズ・パラメータは、前記関数フィルタ出力の絶対値の増加に従って減少する関数である。これにより、加速度センサ出力を使用したヘッド移動機構のフィードフォワード制御において、制御システムの安定性と適応フィルタの収束性とを両立させることができる。
【0021】
好ましくは、前記ステップ・サイズ・パラメータは、前記関数フィルタ出力の2乗値もしくはその2乗値に定数を加算した値に反比例する。これにより、ステップ・サイズ・パラメータを適切に変化させることができる。
【0022】
好ましい例において、前記センサ・フィードフォワード・フィルタは、FIRフィルタである。前記適応化処理部は、各フィルタ係数のそれぞれの更新量を、前記センサ出力を入力とする前記関数フィルタ出力、前記位置誤差信号及び前記ステップ・サイズ・パラメータの積を使用して算出する。前記ステップ・サイズ・パラメータは、前記関数フィルタ出力の2乗値もしくはその2乗値に定数を加算した値に反比例する。これにより、FIRフィルタにおけるステップ・サイズ・パラメータを適切に変化させることができる。
【0023】
好ましい例において、前記センサ・フィードフォワード・フィルタは、IIRである。前記適応化処理部は、前記IIRフィルタの分子における各フィルタ係数のそれぞれの更新量を、前記センサ出力を入力とする関数フィルタ出力、前記位置誤差信号及び前記ステップ・サイズ・パラメータの積を使用して算出する。前記分子の係数更新における前記ステップ・サイズ・パラメータは、前記センサ出力を入力とする関数フィルタ出力の2乗値もしくはその2乗値に定数を加算した値に反比例する。前記適応化処理部は、前記IIRフィルタの分母における各フィルタ係数のそれぞれの更新量を、前記フィードフォワード出力を入力とする関数フィルタ出力、前記位置誤差信号及び前記ステップ・サイズ・パラメータの積を使用して算出する。前記分母の係数更新における前記ステップ・サイズ・パラメータは、フィードフォワード出力を入力とする関数フィルタ出力の2乗値もしくはその2乗値に定数を加算した値に反比例する。これにより、IIRフィルタにおけるステップ・サイズ・パラメータを適切に変化させることができる。
【0024】
好ましい構成において、前記適応化処理部は、前記ステップ・サイズ・パラメータの算出において、除算に代えてビット・シフト処理を行う。これにより、ステップ・サイズ・パラメータを適切に変化させつつ、ステップ・サイズ・パラメータの算出における演算処理量を低減することができる。
【0025】
好ましい構成において、前記適応化処理部による前記フィルタ係数の更新頻度は、前記位置誤差信号のサンプリング頻度よりも少ない。これにより、外部振動に応じてフィルタ係数を適切に更新しつつ、演算処理量を低減することができる。
【0026】
前記適応化処理部は、前記フィルタ係数の更新において、前記関数フィルタ出力の平均値を使用する。これにより、更新後のセンサ・フィードフォワード・フィルタの外部振動に対する一致性を高めることができる。
【0027】
前記平均値は、指数荷重の移動平均であることが好ましい。これにより、より少ない演算処理量によって適切な平均値を算出することができる。
【0028】
好ましい構成において、前記ディスク・ドライブは、さらに、前記センサ出力を取得するセンサ出力取得部と前記適応化処理部とをON/OFFする機能を有する。これにより、センサ出力取得部と適応化処理部による不要な処理の他の処理に対する影響を低減することができる。
【0029】
前記ディスク・ドライブは、前記センサ出力取得部を前記位置誤差信号に応じてONし、前記センサ出力に応じてOFFし、前記適応化処理部を前記センサ出力に応じてON/OFFする。これにより、フィードフォワード制御の性能を低下させることなく、他の処理に対する影響を低減することができる。
【0030】
本発明の他の態様は、ディスク・ドライブにおけるヘッド位置決め制御方法である。この方法は、ヘッドをディスクの半径方向に移動する。前記ヘッドの位置誤差信号により前記移動機構のフィードバック制御信号を生成する。加速度センサの出力に応じて、センサ・フィードフォワード・フィルタにより前記移動機構のフィードフォワード制御信号を生成する。前記加速度センサのセンサ出力と前記位置誤差信号とを使用して、前記センサ・フィードフォワード・フィルタのフィルタ係数を更新する。フィルタ係数の更新量を、前記センサ出力もしくはフィードフォワード制御出力を入力する関数フィルタ出力、位置誤差信号そしてステップ・サイズ・パラメータの積を使用して算出する。前記ステップ・サイズ・パラメータを、前記関数フィルタ出力の絶対値の増加に従って減少するように変化させる。これにより、加速度センサ出力を使用したヘッド移動機構のフィードフォワード制御において、制御システムの安定性と適応フィルタの収束性とを両立させることができる。
【発明の効果】
【0031】
本発明によれば、加速度センサ出力を使用したヘッド移動機構のフィードフォワード制御において、制御システムの安定性と適応フィルタの収束性とを両立させることができる。
【図面の簡単な説明】
【0032】
【図1】本実施形態におけるHDDの全体構成を模式的に示すブロック図である。
【図2】本実施形態のHDDにおけるサーボ制御システムをモデル化したブロック図である。
【図3】図2に示したブロック図を書き換えた図である。
【図4】本実施形態において、SSFFフィルタの更新処理の流れを示すフローチャートである。
【図5】本実施形態において、3つのバンドパス・フィルタBPF1〜BPF3の計算の一部を共通化する構成を模式的に示す図である。
【図6】本実施形態において、直列の2つのノッチ・フィルタにより3つのSSFFフィルタへの入力帯域制限を行なう構成を模式的に示すブロック図である。
【図7】本実施形態において、バンドパス・フィルタを適応化する構成を模式的に示すブロック図である。
【図8】本実施形態において、PESのピークにバンドパス・フィルタBPFの中心周波数が追随する例を説明する図である。
【図9】従来の技術において、SSFF制御システムの構成を模式的に示すブロック図である。
【図10】図9のブロック図を書き換えた図である。
【発明を実施するための形態】
【0033】
以下に、本発明を適用した実施の形態を説明する。説明の明確化のため、以下の記載及び図面は、適宜、省略及び簡略化がなされている。又、各図面において、同一要素には同一の符号が付されており、説明の明確化のため、必要に応じて重複説明は省略されている。以下においては、ディスク・ドライブの一例であるハードディスク・ドライブ(HDD)において、本発明の実施形態を説明する。
【0034】
本形態のHDDは、そのヘッドの位置決め制御において、外部振動を検知するセンサの出力を使用したフィードフォワード制御を使用する。このようなセンサとしては、一般に加速度センサが使用され、ショック・センサやRV(Rotational Vibration)センサが知られている。以下に説明する好ましい構成においては、ショック・センサの出力が使用される。
【0035】
本形態のHDDは、外部振動に応じて、ショック・センサ・フィードフォワード(SSFF)制御におけるフィルタの適応化を行う。HDDは、ショック・センサ出力と位置誤差信号(PES)とを参照して、SSFFフィルタのフィルタ係数を更新して、その適応化を行う。各フィルタ係数の更新において、その更新量はステップ・サイズ・パラメータによって決まる。本形態のHDDは、このステップ・サイズ・パラメータを外部振動の大きさに従って変化させる。具体的には、ショック・センサ出力あるいはフィードフォワード出力を入力とする関数フィルタ出力の絶対値を使用する。これにより、加速度センサ出力を使用したヘッド移動機構のフィードフォワード制御において、制御システムの安定性と適応フィルタの収束性とを両立させることができる。
【0036】
本形態におけるSSFF制御について詳細に説明を行う前に、その制御を行うHDDの全体構成を説明する。図1のブロック図において、HDD1は、エンクロージャ10内に、データを記憶するディスクである磁気ディスク11を有している。スピンドル・モータ(SPM)14は、磁気ディスク11を所定の角速度で回転する。磁気ディスク11の各記録面に対応して、磁気ディスク11にアクセスするヘッド・スライダ12が設けられている。ヘッド・スライダ12はヘッドの一例であり、アクセスは、リード及びライトの上位の概念である。
【0037】
各ヘッド・スライダ12は、磁気ディスク上を飛行するスライダと、スライダに固定され磁気信号と電気信号との間の変換を行うヘッド素子部とを備えている。各ヘッド・スライダ12は、移動機構であるアクチュエータ16の先端部に固定されている。アクチュエータ16はボイス・コイル・モータ(VCM)15に連結され、揺動軸を中心に揺動することによって、ヘッド・スライダ12を回転する磁気ディスク11上においてその半径方向に移動する。
【0038】
アクチュエータ16は、揺動軸を挟んでヘッド・スライダ12の反対側にボイス・コイルを有しており、そのボイス・コイルはVCM15の一部を構成する。磁気ディスク11の外周端近くに、ランプ17がエンクロ−ジャ10内に固定されている。HDD1の電源がOFFのときやアイドル時に、アクチュエータ16は磁気ディスク11の外側においてランプ17上で停止している。なお、本発明は、アクチュエータ16が磁気ディスク11上の所定領域で着地、停止するCSS(コンタクト・スタート・アンド・ストップ)方式のHDDにも適用することができる。
【0039】
エンクロージャ10の外側に固定された回路基板20上には、回路素子が実装されている。モータ・ドライバ・ユニット22は、HDC/MPU23からの制御データに従って、SPM14及びVCM15を駆動する。RAM24は、リード・データ及びライト・データを一時的に格納するバッファとして機能する。エンクロージャ10内のアーム電子回路(AE)13は、複数のヘッド・スライダ12の中から磁気ディスク11へのアクセスを行うヘッド・スライダ12を選択し、その再生信号を増幅してリード・ライト・チャネル(RWチャネル)21に送る。また、RWチャネル21からの記録信号を選択したヘッド・スライダ12に送る。なお、本発明は一つのヘッド・スライダ12のみを有するHDDに適用することができる。
【0040】
RWチャネル21は、リード処理において、AE13から取得したリード信号からデータを抽出し、デコード処理を行う。読み出されるデータは、ユーザ・データとサーボ・データとを含む。デコード処理されたデータは、HDC/MPU23に転送される。また、RWチャネル21は、ライト処理において、HDC/MPU23から転送されたライト・データをコード変調し、更にコード変調されたライト・データをライト信号に変換してAE13に供給する。
【0041】
コントローラであるHDC/MPU23は、リード/ライト処理制御、コマンド実行順序の管理、サーボ・データを使用したヘッド・スライダ12(アクチュエータ16)のポジショニング制御(サーボ制御)、ホスト51との間のインターフェース制御、ディフェクト管理、エラーが発生した場合のエラー対応処理など、データ処理に関する必要な処理及びHDD1の全体制御を実行する。回路基板20上にはショック・センサ25が実装されている。HDC/MPU23は、アクチュエータ16のサーボ制御において、ショック・センサ25からの出力を参照してフィードフォワード制御を行う。
【0042】
HDC/MPU23は、ホスト51からリード/ライトのコマンドを取得すると、シークを開始する。HDC/MPU23は、現在の半径位置からそのコマンドが示すアドレスのデータ・トラック(ターゲット・データ・トラック)にヘッド・スライダ12を移動する(シーク)。HDC/MPU23は、コマンドの指定アドレスをサーボ・アドレスに変換して、ターゲットの半径位置を特定する。シークが終了すると、HDC/MPU23は、ヘッド・スライダ12をターゲット・データ・トラック上に維持する(フォロイング)。
【0043】
シーク及びフォロイングにおいて、HDC/MPU23は記録面から読み出したサーボ・データを使用して、アクチュエータ16(VCM15)を制御する。シーク制御は、一般に、サーボ・データを使用した速度制御と位置制御とによりアクチュエータ16(VCM15)を制御する。フォロイング制御において、HDC/MPU23は、ヘッド・スライダ12の現在半径位置(サーボ・アドレス)とターゲットの半径位置(サーボ・アドレス)と所定範囲内にあるように位置決め制御を行う。
【0044】
サーボ・セクタは、記録面上において、円周方向に略等間隔で離間して形成されている。従って、ヘッド・スライダ12は一定の周期(サーボ・サンプリング周期)でサーボ・データを読み出し、HDC/MPU23は、そのサーボ・データが示す現在のサーボ・アドレスとターゲットのサーボ・アドレスとの位置誤差を示す位置誤差信号(PES)に応じてVCM15の駆動電流を制御する。
【0045】
図2は、本形態のHDD1におけるサーボ制御システムをモデル化したブロック図である。図2において、dは外部振動、Qはショック・センサ25の伝達関数である。Rは、ショック・センサ25には見えない外部振動の伝達関数である。Fは、SSFFフィルタの伝達関数である。APは、SSFFフィルタFの係数を変化させる適応化処理部である。
【0046】
Kは、フィードバック・コントローラの伝達関数である。フィードバック・コントローラは、安定化フィルタ(位相進み器と積分器)と、それに並列にあるピーク・フィルタとを有している。それぞれの伝達関数はC及びPFで表わしている。rは目標値であり、フィードバック・コントローラKへの入力は位置誤差信号e(PES)である。
【0047】
Pは制御対象の伝達関数であり、制御対象は、ノッチ・フィルタ、VCMアンプ、そしてアクチュエータ16を有する。これらの伝達関数は、それぞれ、NF、VCMA、そしてAで表わしている。F、C、PF及びNFは、HDC/MPU23内の構成である。Dはモータ・ドライバ23内のVCMドライバの伝達関数である。ピーク・フィルタ及びノッチ・フィルタの数は、HDDの設計により変化する。
【0048】
安定化フィルタCは、PESに応じてVCM電流値(を示す制御データ)を算出する。安定化フィルタCによる制御は基本的にPID制御であるため、制御の安定性を保ちつつヘッド・スライダ12(アクチュエータ16)の大きな振動に対応することが難しい。そのため、HDC/MPU23は、安定化フィルタCの出力に直列に配置されたノッチ・フィルタNFと、安定化フィルタCに並列に接続されたピーク・フィルタPFとを有している。
【0049】
ノッチ・フィルタNFは、アクチュエータ16の発振を抑制する働きをする。安定化フィルタCからの信号においてアクチュエータ16の発振周波数に対応する成分を小さくすることで、アクチュエータ16の発振周波数における大きな振動を抑えることができる。ピーク・フィルタPFは、外乱によるヘッド・スライダ12(アクチュエータ16)振動を抑圧する働きをする。
【0050】
ヘッド・スライダ12が読み出したサーボ・データから、HDC/MPU23はヘッド・スライダ12の現在半径位置を示すデータ(信号)を生成する。HDC/MPU23は、ホスト51からのコマンドが指定するターゲット半径位置を示すデータを持っている。HDC/MPU23は、ターゲット半径位置と現在半径位置との差異である位置誤差信号PESを算出する。
【0051】
安定化フィルタCは、PESに対して所定の演算処理を行い、ヘッド・スライダ12をターゲット半径位置に近づける(位置誤差を抑制する)ためのVCM電流値を算出する。PESは、安定化フィルタCと並列に接続されているピーク・フィルタPFにも入力される。PESにおける特定周波数成分がフィルタ出力となる。安定化フィルタCからの出力には、ピーク・フィルタPFからの出力とSSFFフィルタFからの出力が加えられる。さらに、その加え合わされた値(信号)がノッチ・フィルタNFに与えられる。
【0052】
本形態のサーボ・システムは、SSFF制御に特徴を有している。以下において、本形態のHDDにおけるSSFF制御について詳細に説明を行う。適応化処理部APは、SSFFフィルタFの適応化(フィルタ係数の適応化)を行う。以下において、適応化処理部APによりSSFFフィルタFの適応化方法(係数更新方法)について説明する。
【0053】
図2に示したブロック図を書き換えると、図3に示すブロック図を得ることができる。Sは閉ループ(フィードバック・ループ)の感度関数である。感度関数は、フィードバック制御系において、制御対象の変動が閉ループ系に及ぼす影響の比率のことをいう。感度関数Sは、1/(1+PK)で表わされる(Pは制御対象、Kはフィードバック制御器)。本形態の適応化処理部APは、PESの絶対値(PESの2乗値はこれと同義)が最小となるようにフィルタ係数更新を行なう。このとき、適応化処理部は、LMS法に従う適応化処理におけるステップ・サイズ・パラメータを外部振動に応じて変化させる。ステップ・サイズ・パラメータを、定数ではなく、外部振動(もしくはショック・センサ出力)の関数(変数)とすることで、SSFFシステムの安定性を損なうことなく、SSFFフィルタの収束性を高める(収束速度を速くする)ことができる。
【0054】
SSFFフィルタは、FIRフィルタあるいはIIRフィルタにより構成される。それぞれのフィルタ構成による本形態の適応化処理方法について説明する。SSFFフィルタがn次のFIRフィルタで構成されているとき、SSFFフィルタは、次の式(伝達関数)で表わされる。
【数6】

【0055】
は各演算子z−iの係数(フィルタ係数)である。FIRフィルタFの出力、つまり、SSFFフィルタのフィードフォワード制御出力は、次の式で表わされる。
【数7】


sはショック・センサ出力である。kは時刻であって、PESのサンプリング時刻に相当する。
【0056】
本形態の適応化処理部APは、以下の関係式に従って、フィルタ係数cを更新する。
【数8】


数式8において、eはPESである。SPは整定関数フィルタであり、高次の関数で近似され、HDD1の設計により決定される。感度関数Sと制御対象Pの積で表される整定関数は、制御対象の入力端から偏差への伝達特性を示す。したがって、フィードバック制御器の設計が終了した段階で算出可能である.また、構成上、SSFF制御出力から偏差までの伝達特性は整定関数となり、適応アルゴリズムに整定関数が表れる。フィルタ係数ciの更新量(ci(k+1)−ci(k))は、ショック・センサ出力の整定関数フィルタの出力の絶対値に反比例する。なお、数式7における右辺第2項の分母に、小さい正の数εを加算してもよい。これにより、SPs(k−i)の絶対値がある程度小さくなった場合に起こる数値計算上の問題を回避することができる。この演算方法でも、更新量は、ショック・センサ出力の整定関数フィルタの出力の絶対値に反比例すると見なすことができる。
【0057】
数式7に示すように、フィルタ係数cの更新量(c(k+1)−c(k))は、前回(サンプル・タイミングk)のPESのサンプル値e(k)と、前回(サンプル・タイミングk)のショック・センサ出力sを閉ループ系の整定関数フィルタSPを通過させた値SPs(k−i)と、ステップ・サイズを決める関数1/(||SPs(k−i)||2)と、の積により算出される。
【0058】
数式8と従来のLMS法による適応演算方法(数式5)と比較して理解できるように、この更新式は、LMS法におけるステップ・サイズ・パラメータμを、次の数式で表わされる値に置き換えたものと解釈することができる。
【数9】

【0059】
数式9から、SPs(k−i)の絶対値(2乗値はこれと同義)が大きくなるほど、ステップ・サイズが小さくなることがわかる。このように、適応化処理部APは、ショック・センサ出力sを閉ループ系の整定関数フィルタSPを通過させえた値の絶対値が増加する従ってステップ・サイズが小さくなるように、関数であるステップ・サイズ・パラメータを変化させる。これにより、SSFFシステムの安定性と収束性とを両立させることができる。
【0060】
次に、SSFFフィルタがp次/q次のIIRフィルタで構成されている場合の、本形態のアルゴリズムによるフィルタ係数の更新方法を説明する。なお、好ましくは、IIRフィルタの次数は2次である。IIRフィルタで構成されているSSFFフィルタのフィードフォワード制御出力vは、次の式で表わされる。
【数10】

【0061】
数式9において、aξはIIRフィルタの分母の係数であり、bηはIIRフィルタの分子の係数である。本形態の適応化処理部APは、以下の関係式に従って、フィルタ係数aξとbηとを更新する。
【数11】

【0062】
適応化処理部APは、SSFFフィルタの適応化演算において、IIRフィルタにおける分子の係数更新ための演算と、分母の係数更新のため演算のそれぞれを行う。さらに、適応化処理部APは、分子及び分母のそれぞれの係数を、それぞれの演算結果に従って更新する。数式11に示すように、分母のフィルタ係数更新におけるステップ・サイズは、フィードフォワード制御出力を整定関数フィルタに通した値(フィードフォワード制御出力の整定関数フィルタ出力)で決まる。また、分子のフィルタ係数更新におけるステップ・サイズは、ショック・センサ出力を整定関数フィルタに通した値(ショック・センサ出力の整定関数フィルタ出力)で決まる。
【0063】
分母の係数更新式において、1/2×(||SPv(k−ξ)||2)を、変化するステップ・サイズ・パラメータであると見なすことができる。また、分子の係数更新式において、1/2×(||SPs(k−η)||2)を、変化するステップ・サイズ・パラメータであると見なすことができる。
【0064】
数式11が示すように、IIRフィルタの分母及び分子のそれぞれにおいて、ステップ・サイズは、整定関数フィルタ出力の絶対値(2乗値はこれに同義)に反比例している。つまり、整定関数フィルタ出力の絶対値が大きくなるほど、ステップ・サイズが小さくなる。分母における整定関数フィルタ出力(SPv(k−ξ))は、SSFFフィルタ出力を入力とする。分子における整定関数フィルタ出力(SPs(k−η))は、ショック・センサ出力を入力とする。
【0065】
このように、適応化処理部APは、IIRフィルタ(SSFFフィルタ)の分母及び分子の係数更新において、閉ループ系の整定関数フィルタSPの出力(SPv(k−ξ)、SPs(k−η))の絶対値が増加する従って、ステップ・サイズが小さくなるように、ステップ・サイズ・パラメータを変化させる。これにより、SSFFシステムの安定性と収束性とを両立させることができる。
【0066】
SSFFフィルタをFIRフィルタあるいはIIRフィルタのいずれで構成した場合においても、上記SSFFフィルタ係数の更新演算は、除算を含んでいる。HDDに実装するSSFFシステムにおいて、フィルタ係数の更新は、HDC/MPU23内におけるMPUが実行することが一般的である。MPUは、上述のように、HDD1の多くの動作の実行制御のための演算を行う。従って、SSFFフィルタの適応化処理における演算量をできるだけ少なくすることが望まれる。
【0067】
好ましい構成において、適応化処理部APは、除算に代えて、ビット・シフト演算を行なう。SSFFフィルタをFIRフィルタで構成する場合、フィルタ係数cの更新式は、次の数式で表わすことができる。
【数12】

【0068】
数式11において、qは量子化器(丸め)、mはビット・シフト量である。t=αkはビット・シフト量更新時刻であり、更新回数は、α=1において、サーボ・サンプリング回数と一致する。ビット・シフト量は、簡単のため、全ての係数について共通であることが好ましい。
【0069】
SSFFフィルタをIIRフィルタで構成する場合、フィルタ係数の更新式は、次の数式で表わすことができる。
【数13】

【0070】
数式13において、qは量子化器(丸め)、maは分母の係数更新におけるビット・シフト量、mbは分子の係数更新におけるビット・シフト量である。t=αkはビット・シフト量更新時刻であり、更新回数は、α=1において、サーボ・サンプリング回数と一致する。FIRフィルタと同様に、分子及び分母のそれそれぞれにおいて、ビット・シフト量は、簡単のため、全ての係数について共通であることが好ましい。
【0071】
フィルタのタイプに係らず、SSFFフィルタの最適なステップ・サイズ(IIRフィルタにおいては、分子と分母のそれぞれ)は、整定関数フィルタ出力の2乗に反比例する。好ましい構成において、HDC/MPU23は、整定関数フィルタ出力とビット・シフト量とを関係付けるテーブルを有している。この表は、HDD1の製造において、HDD1内に予め保存する。
【0072】
適応化処理部AP(MPU)は、位置誤差信号(PES)あるいはフィードフォワード出力の整定関数フィルタ出力を算出し、上記テーブルを参照して、整定関数フィルタ出力に対応するビット・シフト量を選択する。整定関数フィルタがIIRフィルタである場合、適応化処理部APは、分母の更新演算と分子の更新演算のそれぞれのテーブルを参照する。
【0073】
演算処理回数を低減するため、適応化処理部AP(MPU)が行なうSSFFフィルタの係数更新の頻度は、PESのサンプリング頻度よりも少ないことが好ましい。つまり、上記数式12及び数式13において、αは2以上の整数であることが好ましい。例えば、αは100である。SSFFフィルタの係数更新の周期は、PESのサンプリング周期のα倍である。PESの複数回のサンプリング毎にSSFFフィルタの係数更新を行なうことで、SSFFフィルタの係数を適切に更新しつつ、MPUの演算負荷を低減することができる。
【0074】
このように連続するSSFFフィルタの係数更新の間において複数のPESを取得する構成においては、適応化処理部APは、更新量の演算において、SSFFフィルタ出力の平均を使用することが好ましい。これにより、瞬間値を使用する構成と比較して、更新後のSSFFフィルタの外部振動に対する一致性を高めることができる。上述のように、最適なステップ・サイズは整定関数フィルタ出力の2乗に反比例することから、その値の平均を使用する。平均演算において、適応化処理部AP(MPU)は、演算量の点から、指数加重の移動平均を使用することが好ましい。指数加重の移動平均は、移動平均の一つである。
【0075】
適応化処理部APは、整定関数フィルタ出力を移動平均フィルタ処理した信号の2乗値(絶対値と同義)を見ながら、図4の上図に示すグラフに基づいて作成された図4の下図の表を参照して、ビット・シフト量を決定する。上述のように、最適なステップ・サイズは、整定関数フィルタ出力の2乗に反比例する。従って、整定関数フィルタ出力を、その移動平均で置き換えた次式に基づいて決定する。
【数14】

【0076】
ステップ・サイズをビット・シフトで近似的に表現するため、対応する区間を上式に基づいて逆算、定義する。区間xjは、次の数式で定義することができる。
【数15】

【0077】
ビット・シフト量は,整定関数フィルタ出力と最適なステップ・サイズとの関係式13から決定される。演算量削減のために、PES各サンプリング時刻kの整定関数フィルタ出力(瞬時値)ではなく、その絶対値の移動平均が使用されている。このことによって,アルゴリズム安定性が毎時刻完全に保証されるというわけではなくなる。数式14に出てくる値γは信号振幅のばらつきに対応させるためのもので、これをある程度小さく選んでおくことが重要である。値γは典型的には定数である。
【0078】
SSFFは、外部振動下における位置決め精度改善法である。外部振動の無い状況ではその効果は無く、演算負荷のみがかかる。そのため、HDD1のデータ転送速度(パフォーマンス)を悪化させうる。そこで、外部振動による位置決め精度悪化のときにのみSSFFが機能するように、SSFF処理演算部にオン/オフの機能を設けることが好ましい。
【0079】
図5は、オン/オフ機能を有するSSFF処理演算部の構成を模式的に示すブロック図である。図5のブロック図において、MAF1及びMAF2は移動平均フィルタ、OBはセンサ出力取得部である。他の要素は、他の図面のそれらと同様である。図5において、SSFF処理演算部は、二つの機能ブロックを有し、それらがON/OFFされる。一つは、サブルーチン1、もう一つはサブルーチン2である。サブルーチン2はサブルーチン1に含まれ、それらは入れ子構造になっており、サブルーチン1がON状態にあるとき、サブルーチン2がONされうる。サブルーチン1がOFF状態のとき、サブルーチン2もOFF状態にある。典型的に、SSFF処理演算部はMPUの演算による実現されることから、二つの機能ブロックをサブルーチンと呼ぶ。本構成において、ON/OFFするブロックがセンサ出力取得部を含むので、SSFF処理演算部の演算量低減効果が大きい。
【0080】
センサ出力取得部がOFFされているとき、SSFF処理演算部はショック・センサ出力を参照することができない。そのため、SSFF処理演算部はPESを使用して外部振動の大きさについて判定を行う。センサ出力取得部が動作しているときは、ショック・センサ出力を参照することで、より正確に外部振動の大きさについて判定を行うことができる。
【0081】
好ましい構成において、SSFF処理演算部は、PESの絶対値(2乗値の使用は絶対値の使用と同義)、およびショック・センサ出力の絶対値(2乗値の使用は絶対値の使用と同義)の、各々を移動平均フィルタ処理した信号に基づいてON/OFFする。PESの絶対値及びショック・センサ出力の移動平均と異なる平均あるいは演算により得られる値を使用してもよい。演算処理の容易性から、本例においては、移動平均を使用する。平均と異なり値としては、分散を使用することもできる。
【0082】
本構成のSSFF処理演算部によるON/OFF動作について、図6〜図8のフローチャートを参照して説明する。好ましい構成において、SSFF演算処理部は、全てのON/OFF判定をシーク・コマンド受信時に行う。これにより、演算処理を低減し、また、他の処理への影響を小さくする。設計によっては、他のタイミングで判定を行ってもよい。
【0083】
図6は、サブルーチン1及びサブルーチン2の双方がOFF状態にあるとき、サブルーチン1をONする動作(サブルーチン2はOFF)の処理フローである。HDC/MPU203は、シーク処理を行う(S11)。SSFF演算処理部は、移動平均フィルタMAF1の出力を参照してPESの絶対値の移動平均値を取得し、その値と閾値とを比較する(S12)。PESの絶対値の移動平均値が閾値よりも大きいとき(S12におけるY)、SSFF演算処理部は、サブルーチン1をアクティブにする(S13)。PESの絶対値の移動平均値が閾値以下のとき(S12におけるN)、SSFF演算処理部は、サブルーチン1をOFF状態に維持する。
【0084】
図7は、サブルーチン1のみが動作している(ON状態)場合におけるON/OFF判定の処理フローを示している。HDC/MPU23は、シーク処理を行う(S21)。SSFF演算処理部は、移動平均フィルタMAF2の出力を参照してセンサ出力の絶対値の移動平均値を取得し、その値と閾値_HIGHとを比較する(S22)。センサ出力の絶対値の移動平均値が閾値よりも大きいとき(S22におけるY)、SSFF演算処理部は、サブルーチン2をアクティブにする(S23)。その後、SSFF演算処理部は、カウンタをクリアする(S24)。
【0085】
センサ出力の絶対値の移動平均値が閾値以下のとき(S22におけるN)、SSFF演算処理部は、カウンタをインクリメントし(S25)、そのカウンタ値と閾値とを比較する(S26)。この閾値は、図6における閾値とは異なる。カウンタ値が閾値よりも大きいとき(S26におけるY)、SSFF演算処理部はサブルーチン1をOFFし(S27)、さらに、カウンタをクリアする(S24)。カウンタ値が閾値以下のとき(S26におけるN)、SSFF演算処理部は、カウンタもサブルーチン1も、現在の状態を維持する。
【0086】
図8は、サブルーチン1及びサブルーチン2の双方が動作している(ON状態)場合におけるON/OFF判定の処理フローを示している。HDC/MPU23は、シーク処理を行う(S31)。SSFF演算処理部は、移動平均フィルタMAF2の出力を参照してセンサ出力の絶対値の移動平均値を取得し、その値と閾値_LOWとを比較する(S32)。閾値_LOWは閾値_HIGHよりも小さい。センサ出力の絶対値の移動平均値が閾値_LOWよりも小さいとき(S32におけるY)、SSFF演算処理部は、カウンタをインクリメントし(S33)、そのカウンタ値と閾値とを比較する(S34)。カウンタ値が閾値よりも大きいとき(S34におけるY)、SSFF演算処理部は、サブルーチン2をOFFする(S35)。さらに、SSFF演算処理部は、カウンタをクリアする(S36)。
【0087】
カウンタ値が閾値以下のとき(S34におけるN)SSFF演算処理部は、サブルーチン2とカウンタとを、現在の状態を維持する。工程S32において、センサ出力の絶対値の移動平均値が閾値_LOW以上のとき(S32におけるN)、SSFF演算処理部は、カウンタをクリアする(S36)。
【0088】
本構成において、外部振動下であっても、SSFF制御無しで位置決め精度が良好な場合には、フィードフォワード制御部のみならず、ショック・センサ出力取得部もオフされる。PESが悪化し、かつ特定周波数の外部振動が加わっている場合にのみSSFF処理演算部を動作させることにより、演算量を削減することができる。
【0089】
SSFF演算処理部は、動作中のサブルーチンのOFF条件として、カウンタの値を参照する。これにより、サブルーチンがOFFされるまでに所定時間経過が条件となり、短時間の間にサブルーチンがON/OFFされるチャタリング現象を避けることができる。また、SSFF演算処理部は、センサ出力を使用した判定処理において、二つの閾値を使用している。サブルーチン2をONする条件判定において高い閾値を使用し、OFFする条件判定において低い値を使用する。これもまた、短時間の間にサブルーチンがON/OFFされるチャタリング現象を防止する効果を奏する。
【0090】
以上、本発明を好ましい実施形態を例として説明したが、本発明が上記の実施形態に限定されるものではない。当業者であれば、上記の実施形態の各要素を、本発明の範囲において容易に変更、追加、変換することが可能である。例えば、本発明は、HDD以外のディスク・ドライブに適用することができ、ディスクが筐体内に固定されているか否かを問わない。ヘッド・スライダの移動機構は、回動するアクチュエータの他、スライドする機構を使用してもよい。
【符号の説明】
【0091】
1 ハードディスク・ドライブ、10 エンクロージャ、11 磁気ディスク
12 ヘッド・スライダ、16 アクチュエータ、20 回路基板
21 リード・ライト・チャネル、22 モータ・ドライバ・ユニット
23 ハードディスク・コントローラ/MPU
24 ランダム・アクセス・メモリ、51 ホスト、A アクチュエータ
C 安定化フィルタ、F SSFFフィルタ、K フィードバック・コントローラ
P 制御対象、Q ショック・センサ、R 外部振動、S 感度関数
AP SSFFフィルタの適応化処理部、NF ノッチ・フィルタ
OB センサ出力取得部、PF ピーク・フィルタ
MAF1、MAF2 移動平均フィルタ、VCMA VCMアンプ
d 外部振動、e 位置誤差振動

【特許請求の範囲】
【請求項1】
ディスクにアクセスするヘッドと、
前記ヘッドを前記ディスクの半径方向に移動する移動機構と、
前記ヘッドが前記ディスクから読み出したサーボ・データにより前記移動機構のサーボ制御を行うサーボ・システムと、
加速度センサと、を有し、
前記サーボ・システムは、
前記ヘッドの位置誤差信号により前記移動機構のフィードバック制御信号を生成するフィードバック・コントローラと、
前記加速度センサの出力に応じて前記移動機構のフィードフォワード制御信号を生成するセンサ・フィードフォワード・フィルタと、
前記加速度センサのセンサ出力と前記位置誤差信号とを使用して、前記センサ・フィードフォワード・フィルタのフィルタ係数を更新する適応化処理部と、
を有し、
前記適応化処理部は、フィルタ係数の更新量を、前記センサ出力もしくはフィードフォワード制御出力を入力する関数フィルタ出力、位置誤差信号そしてステップ・サイズ・パラメータの積を使用して算出し、
前記ステップ・サイズ・パラメータは、前記関数フィルタ出力の絶対値の増加に従って減少する関数である、
ディスク・ドライブ。
【請求項2】
前記ステップ・サイズ・パラメータは、前記関数フィルタ出力の2乗値もしくはその2乗値に定数を加算した値に反比例する、
請求項1に記載のディスク・ドライブ。
【請求項3】
前記センサ・フィードフォワード・フィルタは、FIRフィルタであって、
前記適応化処理部は、各フィルタ係数のそれぞれの更新量を、前記センサ出力を入力とする前記関数フィルタ出力、前記位置誤差信号及び前記ステップ・サイズ・パラメータの積を使用して算出し、
前記ステップ・サイズ・パラメータは、前記関数フィルタ出力の2乗値もしくはその2乗値に定数を加算した値に反比例する、
請求項1に記載のディスク・ドライブ。
【請求項4】
前記センサ・フィードフォワード・フィルタは、IIRであって
前記適応化処理部は、前記IIRフィルタの分子における各フィルタ係数のそれぞれの更新量を、前記センサ出力を入力とする関数フィルタ出力、前記位置誤差信号及び前記ステップ・サイズ・パラメータの積を使用して算出し、
前記分子の係数更新における前記ステップ・サイズ・パラメータは、前記センサ出力を入力とする関数フィルタ出力の2乗値もしくはその2乗値に定数を加算した値に反比例し、
前記適応化処理部は、前記IIRフィルタの分母における各フィルタ係数のそれぞれの更新量を、前記フィードフォワード出力を入力とする関数フィルタ出力、前記位置誤差信号及び前記ステップ・サイズ・パラメータの積を使用して算出し、
前記分母の係数更新における前記ステップ・サイズ・パラメータは、フィードフォワード出力を入力とする関数フィルタ出力の2乗値もしくはその2乗値に定数を加算した値に反比例する、
請求項1に記載のディスク・ドライブ。
【請求項5】
前記適応化処理部は、前記ステップ・サイズ・パラメータの算出において、除算に代えてビット・シフト処理を行う、
請求項1に記載のディスク・ドライブ。
【請求項6】
前記適応化処理部による前記フィルタ係数の更新頻度は、前記位置誤差信号のサンプリング頻度よりも少ない、
請求項1に記載のディスク・ドライブ。
【請求項7】
前記適応化処理部は、前記フィルタ係数の更新において、前記関数フィルタ出力の平均値を使用する、
請求項6に記載のディスク・ドライブ。
【請求項8】
前記平均値は、指数荷重の移動平均である、
請求項7に記載のディスク・ドライブ。
【請求項9】
さらに、前記センサ出力を取得するセンサ出力取得部と前記適応化処理部とをON/OFFする機能を有する、
請求項1に記載のディスク・ドライブ。
【請求項10】
前記センサ出力取得部を、前記位置誤差信号に応じてONし、前記センサ出力に応じてOFFし、
前記適応化処理部を、前記センサ出力に応じてON/OFFする、
請求項9に記載のディスク・ドライブ。
【請求項11】
ディスク・ドライブにおけるヘッド位置決め制御方法であって、
ヘッドをディスクの半径方向に移動し、
前記ヘッドの位置誤差信号により前記移動機構のフィードバック制御信号を生成し、
加速度センサの出力に応じて、センサ・フィードフォワード・フィルタにより前記移動機構のフィードフォワード制御信号を生成し、
前記加速度センサのセンサ出力と前記位置誤差信号とを使用して、前記センサ・フィードフォワード・フィルタのフィルタ係数を更新し、
フィルタ係数の更新量を、前記センサ出力もしくはフィードフォワード制御出力を入力する関数フィルタ出力、位置誤差信号そしてステップ・サイズ・パラメータの積を使用して算出し、
前記ステップ・サイズ・パラメータを、前記関数フィルタ出力の絶対値の増加に従って減少するように変化させる、
方法。
【請求項12】
前記ステップ・サイズ・パラメータは、前記関数フィルタ出力の2乗値もしくはその2乗値に定数を加算した値に反比例する、
請求項11に記載の方法。
【請求項13】
前記ステップ・サイズ・パラメータの算出は、除算に代えてビット・シフト処理を行う、
請求項11に記載の方法。
【請求項14】
前記フィルタ係数の更新頻度は、前記位置誤差信号のサンプリング頻度よりも少ない、
請求項11に記載の方法。
【請求項15】
前記フィルタ係数の更新において、前記関数フィルタ出力の平均値が使用される、
請求項14に記載の方法。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2011−118980(P2011−118980A)
【公開日】平成23年6月16日(2011.6.16)
【国際特許分類】
【出願番号】特願2009−274926(P2009−274926)
【出願日】平成21年12月2日(2009.12.2)
【出願人】(503116280)ヒタチグローバルストレージテクノロジーズネザーランドビーブイ (1,121)
【Fターム(参考)】