JP2014110063A - ディスク記憶装置、制御方法及び情報処理装置 - Google Patents
ディスク記憶装置、制御方法及び情報処理装置 Download PDFInfo
- Publication number
- JP2014110063A JP2014110063A JP2012263075A JP2012263075A JP2014110063A JP 2014110063 A JP2014110063 A JP 2014110063A JP 2012263075 A JP2012263075 A JP 2012263075A JP 2012263075 A JP2012263075 A JP 2012263075A JP 2014110063 A JP2014110063 A JP 2014110063A
- Authority
- JP
- Japan
- Prior art keywords
- servo
- internal model
- interrupt processing
- head
- interrupt
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B5/00—Recording by magnetisation or demagnetisation of a record carrier; Reproducing by magnetic means; Record carriers therefor
- G11B5/02—Recording, reproducing, or erasing methods; Read, write or erase circuits therefor
- G11B5/09—Digital recording
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
- G11B20/10009—Improvement or modification of read or write signals
- G11B20/10305—Improvement or modification of read or write signals signal quality assessment
- G11B20/10388—Improvement or modification of read or write signals signal quality assessment control of the read or write heads, e.g. tracking errors, defocus or tilt compensation
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B5/00—Recording by magnetisation or demagnetisation of a record carrier; Reproducing by magnetic means; Record carriers therefor
- G11B5/48—Disposition or mounting of heads or head supports relative to record carriers ; arrangements of heads, e.g. for scanning the record carrier to increase the relative speed
- G11B5/58—Disposition or mounting of heads or head supports relative to record carriers ; arrangements of heads, e.g. for scanning the record carrier to increase the relative speed with provision for moving the head for the purpose of maintaining alignment of the head relative to the record carrier during transducing operation, e.g. to compensate for surface irregularities of the latter or for track following
- G11B5/596—Disposition or mounting of heads or head supports relative to record carriers ; arrangements of heads, e.g. for scanning the record carrier to increase the relative speed with provision for moving the head for the purpose of maintaining alignment of the head relative to the record carrier during transducing operation, e.g. to compensate for surface irregularities of the latter or for track following for track following on disks
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Moving Of The Head To Find And Align With The Track (AREA)
Abstract
【課題】サーボ割り込み処理の実行のスキップが発生した場合でも、装置の性能劣化やサーボ制御処理が不安定になる事態を回避することにある。
【解決手段】本実施形態によれば、ディスク記憶装置は、割り込み処理モジュールと、サーボ制御モジュールとを具備する。前記割り込み処理モジュールは、サーボ割り込み処理の実行の可否を判定し、前記判定結果の否決の回数を保持する。前記サーボ制御モジュールは、ヘッドの検出位置に追従して前記ヘッドの目標位置との位置誤差である推定現在位置を算出するための内部モデルを含み、前記割り込み処理手段による前記判定結果が可決の場合に前記内部モデルの状態を前記否決の回数に基づいて補正し、前記内部モデルの演算結果に基づいてヘッド位置決め制御を実行する。
【選択図】図1
【解決手段】本実施形態によれば、ディスク記憶装置は、割り込み処理モジュールと、サーボ制御モジュールとを具備する。前記割り込み処理モジュールは、サーボ割り込み処理の実行の可否を判定し、前記判定結果の否決の回数を保持する。前記サーボ制御モジュールは、ヘッドの検出位置に追従して前記ヘッドの目標位置との位置誤差である推定現在位置を算出するための内部モデルを含み、前記割り込み処理手段による前記判定結果が可決の場合に前記内部モデルの状態を前記否決の回数に基づいて補正し、前記内部モデルの演算結果に基づいてヘッド位置決め制御を実行する。
【選択図】図1
Description
本発明の実施形態は、ディスク記憶装置、制御方法及び情報処理装置に関する。
従来、例えばハードディスクドライブ(HDD)などのディスク記憶装置では、ホストからのリードライト動作のコマンド処理以外に、ヘッドをディスク上の目標位置に位置決めするための位置決め制御を行なうサーボ処理が実行される。
HDDのコントローラは、ディスク上のサーボ情報を読み出すサンプリング時点でサーボ割り込み要求を生成し、サーボ割り込み処理の実行に応じてサーボ処理に移行する。この場合、コントローラは、コマンド処理を優先的に実行するため、コマンド処理の実行中であればサーボ割り込み処理の実行を否決してスキップする。従って、コマンド処理の実行中はサーボ割り込み抜けが発生する。
HDDは、状態オブザーバを含むフィードバック制御システムの方法によりサーボ処理を実行する。この場合、状態オブザーバは、制御対象に相当する内部モデルの演算処理を実行して、実際にはヘッドの現在位置を推定する。状態オブザーバは、サーボ情報を使用して算出される実際のヘッド位置に内部モデル状態が追従するようにモデル演算処理を実行する。
ここで、コマンド処理の実行中にサーボ割り込み処理の実行がスキップされると、その期間のサーボ情報が得られず、実際のヘッド位置を検出できない状態となる。従って、コマンド処理の終了直後にサーボ処理を開始する際に、状態オブザーバは実際のヘッドの位置から乖離した推定位置に基づいてモデル演算処理を実行することになる。これにより、特にサーボ割り込み処理の実行のスキップ回数が多くなると、フィードバック制御システムに不要な応答を引き起こし、装置の性能劣化さらにはサーボ制御処理が不安定になる危険性がある。
そこで、本発明の目的は、サーボ割り込み処理の実行のスキップが発生した場合でも、装置の性能劣化やサーボ制御処理が不安定になる事態を回避することにある。
本実施形態のディスク記憶装置は、割り込み処理手段と、サーボ制御手段とを具備する。前記割り込み処理手段は、サーボ割り込み処理の実行の可否を判定し、前記判定結果の否決の回数を保持する。前記サーボ制御手段は、ヘッドの検出位置に追従して前記ヘッドの目標位置との位置誤差である推定現在位置を算出するための内部モデルを含み、前記割り込み処理手段による前記判定結果が可決の場合に前記内部モデルの状態を前記否決の回数に基づいて補正し、前記内部モデルの演算結果に基づいてヘッド位置決め制御を実行する。
以下図面を参照して、実施形態を説明する。
[ディスクドライブの構成]
図1及び図2は本実施形態に関するマイクロプロセッサおよびディスクドライブの要部を説明するためのブロック図である。
図1及び図2は本実施形態に関するマイクロプロセッサおよびディスクドライブの要部を説明するためのブロック図である。
図2に示すように、ディスクドライブは大別して、ヘッド・ディスクアセンブリ(head-disk assembly:HDA)、ヘッドアンプ集積回路(以下、ヘッドアンプIC)11と、システムオンチップ(SoC:system on a chip)15とから構成されている。HDAは、記憶媒体であるディスク1と、スピンドルモータ(SPM)2と、ヘッド10とを有する。ディスク1は、スピンドルモータ2により回転する。
ヘッド10は、ボイスコイルモータ(VCM)を含むアクチュエータの駆動により、ディスク1上の目標位置まで移動制御される。ヘッド10はスライダを本体として、当該スライダに実装されているライトヘッド10W及びリードヘッド10Rを有する。リードヘッド10Rは、ディスク1上のサーボ領域からサーボ情報を読み出し、またデータ領域からユーザデータを読み出す。サーボ情報はサーボウェッジ(servo wedge:SVW)とも呼ばれる。ライトヘッド10Wは、ディスク1上のデータ領域にユーザデータを書き込む。
ヘッドアンプIC(HIC)11は、リードアンプ及びライトドライバを有する。リードアンプは、リードヘッド10Rにより読み出されたリード信号を増幅して、リード/ライト(R/W)チャネル12に伝送する。一方、ライトドライバは、R/Wチャネル12から出力されるライトデータに応じたライト電流をライトヘッド10Wに伝送する。
SoC15は、R/Wチャネル12と、ハードディスクコントローラ(HDC)13と、マイクロプロセッサ(MPU)14とを含む1チップの集積回路から構成されている。R/Wチャネル12は、リードチャネル(RIC)12Rとライトチャネル12Wとを含む。リードチャネル(RIC)12Rは、後述するように、リード信号を処理してサーボ情報やユーザデータを復号する。ライトチャネル12Wはライトデータの信号処理を実行する。
ハードディスクコントローラ(HDC)13は、ホスト17とR/Wチャネル12との間のデータ転送を制御するインターフェースコントローラとユーザーロジック回路を含む。インターフェースコントローラはバッファメモリ(DRAM)16を制御して、リードデータ及びライトデータをバッファメモリ16に一時的に格納することでデータ転送制御を実行する。ユーザーロジック回路は、ハードウェアによる各種演算回路であり、MPU14よりも低レベルの処理を高速に演算する。
MPU14はディスクドライブのメインコントローラであり、後述するように、サーボ制御処理を実行するサーボ制御システムを有する。サーボ制御システムは、ヘッド10を目標位置に位置決めするヘッド位置決め機構をサンプリング処理で制御する。ヘッド位置決め機構は、ヘッド10を駆動するためのアクチュエータ(VCMを含む)及びVCMドライバである。
図1は便宜的に、MPU14の構成をハードウェア及びファームウェア(ソフトウェア)により表している。図1に示すように、MPU14は、レジスタ20、オアゲート21、プログラムカウンタ(PC)22、及びスキップカウンタ25を有する。さらに、MPU14は、ファームウェアとしてメイン処理ルーチン23、サーボ割り込み処理ルーチン24、及びコマンド処理ルーチン26を実行する。
[実施形態の動作]
以下、図3から図5を参照して、本実施形態のサーボ割り込み処理及びサーボ制御処理を説明する。
以下、図3から図5を参照して、本実施形態のサーボ割り込み処理及びサーボ制御処理を説明する。
先ず、図4のタイミングチャートを参照して、本実施形態のサーボ割り込み処理を説明する。
ディスクドライブでは、ヘッド10をディスク1上の目標位置に位置決めするサーボ制御処理を実行する場合に、ヘッド10によりサーボ情報(SVW)が読み出される。サーボ情報(SVW)は、ディスク1上の周方向に且つ周期的に記録されている。ヘッドアンプIC(HIC)11は、読み出されたリード信号(サーボ情報の再生信号を含む)100Rを増幅して、リード/ライト(R/W)チャネル12に伝送する。リードチャネル(RIC)12Rは、HIC11の出力に含まれるサーボ情報の再生信号110Sを処理してサーボ情報を復号する。
リードチャネル(RIC)12Rは、サーボ情報に含まれるサーボアドレスマークの先頭を示す所定のパターンを検出すると、サーボアドレスマーク検出信号120SMを出力する。ハードディスクコントローラ(HDC)13は、サーボアドレスマーク検出信号120SMを受信すると、サーボ割り込み要求信号130IQを生成してMPU14に出力する。
MPU14では、サーボ割り込み要求信号130IQがレジスタ20にセットされると、割り込み禁止信号Inhがネゲート(negate、無効)であれば、オアゲート21によりアサート(assert、有効)される。即ち、オアゲート21はサーボ割り込信号SVIをプログラムカウンタ(PC)22に出力する。ここで、割り込み禁止信号Inhは、コマンド処理ルーチン26に含まれる割り込みマスク処理27によりアサートされる。
プログラムカウンタ(PC)22は、サーボ割り込信号SVIに応じて、サーボ割り込み処理ルーチン24の先頭アドレスに書き換えられる。同時に、オアゲート21からのサーボ割り込信号SVIにより、レジスタ20の出力であるサーボ割り込み制御信号131ICはリセットされる。
図4(A)〜(G)は、以上の処理のタイミングを示すタイミングチャートである。即ち、図4(A),(B)に示すように、ディスク1上のサーボ領域(n-1セクタ)から読み出されたサーボ情報SVWであるW[n-1]が検出されると、リードチャネル(RIC)12Rはサーボアドレスマーク検出信号120SMを出力する。さらに、ハードディスクコントローラ(HDC)13はサーボ割り込み要求信号130IQを生成してMPU14に出力する。図4(C)に示すように、MPU14では、レジスタ20からサーボ割り込み制御信号131ICが出力される。
図4(E)に示すように、MPU14は、有効なサーボ割り込み制御信号131ICに応じてオアゲート21からサーボ割り込信号SVIが出力されると、サーボ割り込み処理ルーチン24を実行する。MPU14は、後述するように、サーボ割り込み処理ルーチン24においてサーボ制御システムの内部モデルの演算処理を実行する。図4(G)に示すように、内部モデルの演算処理の結果に応じて、次のセクタであるnセクタ目の内部モデル状態が確定する。サーボ領域(nセクタ)から読み出されたサーボ情報SVWであるW[n]が検出された際においても同様の処理となる。
図4(D)に示すように、MPU14では、メイン処理ルーチン23においてコマンド待機状態であれば、コマンド処理の実行は停止している。ここで、ホスト17からコマンド処理要求が発生すると、MPU14は、コマンド処理ルーチン26を呼び出してコマンド処理を実行する。
一方、MPU14は、メイン処理ルーチン23においてサーボ割り込み要求が発生すると、PC22がサーボ割り込み処理ルーチン24の先頭アドレスに書き換えられるため、サーボ割り込み処理ルーチン24を実行する。これを実行した後に、MPU14は、メイン処理ルーチン23に復帰する。
ここで、図4(D),(E)に示すように、コマンド処理ルーチン26の実行中には、サーボ割り込み処理ルーチン24の実行は禁止される。即ち、MPU14は、サーボ割り込み処理に対してコマンド処理を優先的に実行する。具体的には、コマンド処理ルーチン26を実行する場合には、サーボ割り込み処理との不整合を防止するため、その開始時において割り込みマスク処理27が実行される。これにより、割り込み禁止信号Inhがアサートされて、オアゲート21からサーボ割り込信号SVIは出力されない。コマンド処理が終了した時点で、割り込みマスク解除処理29が実行されて、割り込み禁止信号Inhがネゲートされる。これにより、図4(C)〜(E)に示すように、サーボ割り込み要求が発生すると、再びサーボ割り込み処理ルーチン24が実行される。
ところで、図3に示すように、ディスクドライブには、ヘッド位置決め制御系として、状態オブザーバ32を含むサーボ制御システムが組み込まれている。サーボ制御システムは大別して、制御対象(プラントP)であるヘッド位置決め機構31及びMPU14により構成されている。ヘッド位置決め機構31は、ヘッド10を駆動するためのアクチュエータ(VCMを含む)及びVCMドライバである。MPU14は、サーボ割り込み処理ルーチン24を実行することにより、フィードバック制御機能(フィードバックフィルタG)30及び状態オブザーバ32の各演算処理(サーボ制御処理)を実行する。
状態オブザーバ32は、フィードバック制御演算(フィードバック制御機能30)と並行して、ヘッド10の位置及び移動速度を推定するためのモデル演算を行なうダイナミクスモデル(内部モデル)を有する。図3に示すように、ヘッド位置決め機構31(プラントP)は、離散的な制御入力u[k]に対して検出位置ydetを出力する。ここで、kはサンプリング周期で規格化した時刻を表している。
状態オブザーバ32の内部モデルは、プラントPと等価なダイナミクスモデルであり、状態方程式「X[k+1] = AX[k] + Bu[k]」および出力方程式「y[k] = CX[k]」に相当する演算処理である。X[k]はサンプリング時点における内部モデルの状態変数ベクトルを意味する。u[k]は、フィードバック制御演算(30)により算出される内部モデルに対する制御入力である。y[k]は、内部モデルの出力(ここではヘッド10の推定位置)である。なお、A、B,Cはそれぞれ内部モデルのダイナミクスを表す係数行列である。
サーボ制御システムは、前回のサンプル時に演算された1サンプル後の状態変数(即ち、現サンプルの状態変数予測値)から現サンプルの位置出力y[k]を入力し、これを検出位置ydetに相当する現在位置として使用する。サーボ制御システムは、目標位置d[k]と現在位置y[k]との差分を位置誤差e[k]として算出する。フィードバック制御演算(30)は、位置誤差e[k]を安定的にゼロとするように設計されたフィードバックフィルタGを使用して、プラントP(31)に対する制御入力u[k]を算出する。ここで、状態オブザーバ32は、ダイナミクスモデルである内部モデルの挙動を、実機構31であるプラントPの挙動に追従させる。具体的には、検出位置ydetと推定位置y[k]との差分(推定誤差)をゲインLによってフィードバックする。
このようなサーボ制御システムにおいて、MPU14は、サーボ割り込み処理ルーチン24を実行することにより、ヘッド10をディスク1上の目標位置d[k]に位置決めするサーボ制御処理(ヘッド位置決め制御)を実行する。ここで、前述したように、MPU14は、コマンド処理を優先して実行するため、コマンド処理ルーチン26の実行時間が長時間になる場合、その時間分だけサーボ割り込み処理ルーチン24が停止となる。このため、本来は所定のサンプリングで実行される内部モデルの演算処理が正確に行なわれなくなる。
このような事態について、図4(A)〜(G)を参照して具体的に説明する。
図4(A),(D)に示すように、ヘッド10がサーボ情報SVWであるW[n]とW[n+1]との間を走査している際にコマンド処理要求が発生すると、MPU14はコマンド処理ルーチン26を呼び出してコマンド処理を実行する。ヘッド10によりW[n+1]が検出されるため、図4(C)に示すように、サーボ割り込み制御信号131ICはアサートされる(有効となる)。一方、コマンド処理ルーチン26が実行中であるため、サーボ割り込み禁止状態であり、図4(E)に示すように、サーボ割り込み処理ルーチン24は実行されない。従って、サーボ割り込み処理ルーチン24が実行されない期間は、図4(G)に示すように、状態オブザーバ32の内部モデル状態(推定位置y[k])が次セクタであるn+1セクタのままで維持されている。即ち、nセクタにはW[n]が記録されているため、内部モデルは、W[n]から検出される検出位置ydetに応じた推定位置y[k]を維持している状態である。
図4(A),(D),(E)に示すように、W[n+2]が検出された後にコマンド処理ルーチン26の実行が終了すると、サーボ割り込み要求が許可状態となる。ここで、内部モデルの状態は1サンプル後の推定値が保存されているので、n+3セクタ目のW[n+3]検出時であるにも関わらず、n+2セクタ目の時間経過モデルに相当する状態である。即ち、ここで確定するのは、これまで確定していたn+1セクタ目のモデルから1サンプル進んだn+2セクタ目の時間経過モデルに相当する状態である。
本来は、図4(G)に示すように、内部モデル状態は、n+4セクタ目のモデル状態であるべきにも関わらず、2セクタ分過去の時間であるn+2セクタ目のモデル状態で確定される。
状態オブザーバ32では、内部モデルが検出位置ydetに追従するように推定位置y[k]を修正する。しかし、コマンド処理ルーチン26の終了直後においては、フィードバック制御演算(30)は、実際の位置ydetから乖離した推定位置により制御演算を実行する。この乖離は、図3のオブザーバフィードバックゲインLで徐々に収束していくものの、その間の過渡応答は発生してしまう。
そこで、本実施形態のMPU14は、コマンド処理ルーチン26の実行中に、サーボ割り込み制御信号131ICの発生を監視してアサート状態にあれば、割り込みリセット処理28を実行してサーボ割り込制御信号131ICをネゲートさせる。このとき、当該サーボ情報(例えばW[n+1])におけるサーボ割り込み処理は実行されなくなる。MPU14は、サーボ割り込み処理がスキップされたとして、スキップカウンタ25のカウント値Skipをインクリメントしてサーボ割り込み処理のスキップ回数を保持する。
スキップカウンタ25は、コマンド処理ルーチン26の実行時間が複数のサーボ情報の通過時間にまたがる場合でも、所定のタイミングでリセット処理28に応じてスキップ回数をインクリメントする。MPU14は、コマンド処理ルーチン26の実行が終了して、サーボ割り込み処理の禁止が解除されて、サーボ割り込み制御信号131ICが発生すると、サーボ割り込み処理ルーチン24を実行する。
ここで、サーボ割り込み処理ルーチン24では、前回のサーボ割り込み処理が実行された際に演算された内部モデルの状態変数の1サンプル後の推定値が保持されている。サーボ割り込み処理ルーチン24では、スキップカウンタ25に保持されているカウント値Skipが1以上の場合には、保持されている状態変数がその回数Skipのサンプル分だけ過去の値に相当する。このため、サーボ割り込み処理ルーチン24では、カウント値Skipのサンプル分だけモデル演算を時間的に進行させる処理が実行される。
以下、図5のフローチャートを参照して、MPU14が実行するサーボ割り込み処理ルーチン24の手順を説明する。
ここで、スキップカウンタ25に保持されているカウント値Skipをスキップ回数NSCとする。MPU14は、スキップ回数が1以上であるか否かを判定する(ブロック500)。スキップ回数が0の場合には、MPU14は、サーボ割り込み処理がスキップされていないため、図3に示すように、内部モデルの出力演算「y[k] = CX[k]」を実行する(ブロック500のNO,503)。さらに、MPU14は、フィードバック制御演算30である演算「u[k]=G(d[k]-y[k])」を実行する(ブロック504)。この後、MPU14は、次回の状態予測演算「X[k+1]=AX[k]+Bu[k]+L(y[k]- ydet)」を実行する(ブロック505)。
一方、スキップ回数が1以上の場合には、MPU14は、今回の予測状態を補正するための補正演算「X[k]new=A[NSC]*X[k]old+B[NSC]*u[k]old」を実行する(ブロック500のYES,501)。ここで、X[k]oldは前回のサーボ割り込み処理において保持されていた予測状態である。また、u[k]oldは前回のサーボ割り込み処理での制御入力値である。X[k]newは、NSCサンプル分の時間進み演算(A[Nsc],B[Nsc])により更新(補正)された予測状態である(図3を参照)。MPU14は、スキップカウンタ25をリセットする(ブロック502)。この後は、スキップ回数が0の場合と同様に、MPU14は、内部モデルの出力演算、フィードバック制御演算、及び次回の状態予測演算を実行する(ブロック503〜505)。
以上のように本実施形態によれば、優先的に実行するコマンド処理の実行中にサーボ割り込み処理がスキップされた場合に、当該コマンド処理の実行の時間経過に相当する内部モデルの状態(サンプリング時点における内部モデルの状態変数X[k])を補正する。換言すれば、そのスキップ回数を計数・保持することにより、サンプリング毎のサーボ割り込み処理が復帰した際に、スキップ回数に相当した時間だけ内部モデル演算を時間的に進ませる。
従って、MPU14は、コマンド処理ルーチン26の実行終了後に、サーボ割り込み要求に応じてサーボ割り込み処理ルーチン24を実行する場合に、正確な内部モデルの演算を実現することができる。従って、コマンド処理終了の直後に、推定位置と実位置との乖離に起因する、サーボ制御システムに不要な応答を引き起こすことを抑制し、安定したヘッド位置決め制御(サーボ制御)を実現できる。
[変形例]
図6は、本実施形態の変形例に関するサーボ割り込み処理ルーチン24の手順を説明するためのフローチャートである。
図6は、本実施形態の変形例に関するサーボ割り込み処理ルーチン24の手順を説明するためのフローチャートである。
本実施形態は、スキップカウンタ25を使用してサーボ割り込み処理がスキップ回数を算出する方法を採用している。本変形例は、前回のサーボ割り込みルーチンが実行された際のタイムスタンプの差分から、サーボ割り込み処理がスキップ回数を推定する方法である。
MPU14は、前回のサーボ割り込み処理ルーチン実行時に保存されたタイマ値を、内部メモリ(図示せず)に保持する。このタイマ値をToldとする。MPU14は、タイマ値Toldと今回のタイマ値Tnewの差分をサンプリング時間Tsで除算して整数値に丸めて(round)、1を減算した値Mscをサーボ割り込み処理のスキップカウント値Skipとしてセットする(ブロック600)。この場合、コマンド処理ルーチン26の実行において、スキップ回数値Mscをインクリメントする処理は必ずしも必要ない。
MPU14は、スキップ回数値Mscが0の場合には(ブロック601のNO)、サーボ割り込み処理がスキップされていないため、前述した図5の処理(ブロック503〜505)と同様に内部モデルの出力演算、フィードバック制御演算、及び次回の状態予測演算を実行する(ブロック604〜606)。
一方、スキップ回数Mscが1以上の場合には、MPU14は、今回の予測状態を補正するための補正演算「X[k]new=A[MSC]*X[k]old+B[MSC]*u[k]old」を実行する(ブロック601のYES,602)。この後に、MPU14は内部メモリのタイマ値Mscをリセットする(ブロック603)。
以上のように本変形例の場合でも、スキップ回数Mscを計数・保持することにより、サンプリング毎のサーボ割り込み処理が復帰した際に、スキップ回数に相当した時間だけ内部モデル演算を時間的に進ませる。従って、コマンド処理終了の直後に、推定位置と実位置との乖離に起因する、サーボ制御システムに不要な応答を引き起こすことを抑制し、安定したヘッド位置決め制御(サーボ制御)を実現できる。なお、本変形例の場合には、連続する2回のサンプリングでのサーボ割り込み処理の実行値のタイムスタンプ差分からスキップ回数を同定することにより、サーボマーク検出ミスによるサンプリング割り込み要求未発生時にも対応することができる。
なお、本実施形態及び変形例によれば、セクタ番号のカウントをファームウェアで実現する構成を採っている場合に、サーボ割り込みルーチンがスキップされてセクタカウンタのインクリメント処理が実行されないような場合でも、サーボ割り込み処理の復帰時にスキップされたサーボ割り込み数を用いてセクタ番号を補正することができる。また、コマンド処理が長時間を要する場合に、サーボ割り込み処理のスキップ対策に限らず、信号品質の起因などによるサーボアドレスマーク検出が行なわれなかった場合にも対応することができる。
[他の実施形態]
図7は、他の実施形態に関するMPU70の構成を説明するためのブロック図である。
図7は、他の実施形態に関するMPU70の構成を説明するためのブロック図である。
図7に示すMPU70は、HDDのサーボ制御以外に、例えば、光ディスク記憶装置のサーボ制御や各種の制御系に適用する場合である。基本的機能及び動作は、図1に示すMPU14と同様である。即ち、MPU70は、レジスタ71、オアゲート72、プログラムカウンタ(PC)73、及びスキップカウンタ76を有する。さらに、MPU14は、ファームウェアとしてメイン処理ルーチン74、割り込み処理ルーチン75、及びコマンド処理ルーチン77を実行する。コマンド処理ルーチン77は、割り込みマスク処理78、割り込みリセット処理79及び割り込みマスク解除処理80を含む。
MPU70には、所定のサンプリングで継続的に実行する制御の割り込み信号700IQが入力される。また、MPU70は、割り込み処理ルーチン75により制御系を実行する。制御系は、状態オブザーバによりサンプリング時に内部モデルの状態を更新するモデル演算及びフィードバック制御演算を実行する。MPU70は、割り込み中断回数(スキップ回数)をスキップカウンタ76により計数・保持し、割り込み中断に伴う内部モデルの状態を補正する。
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
1…ディスク、2…スピンドルモータ(SPM)、10…ヘッド、
11…ヘッドアンプIC(HIC)、12…リード/ライト(R/W)チャネル、
12R…リードチャネル(RIC)、13…ハードディスクコントローラ(HDC)、
14…マイクロプロセッサ(MPU)、15…SoC、
16…バッファメモリ(DRAM)。
11…ヘッドアンプIC(HIC)、12…リード/ライト(R/W)チャネル、
12R…リードチャネル(RIC)、13…ハードディスクコントローラ(HDC)、
14…マイクロプロセッサ(MPU)、15…SoC、
16…バッファメモリ(DRAM)。
Claims (9)
- サーボ割り込み処理の実行の可否を判定し、前記判定結果の否決の回数を保持する割り込み処理手段と、
ヘッドの検出位置に追従して前記ヘッドの目標位置との位置誤差である推定現在位置を算出するための内部モデルを含み、前記割り込み処理手段による前記判定結果が可決の場合に前記内部モデルの状態を前記否決の回数に基づいて補正し、前記内部モデルの演算結果に基づいてヘッド位置決め制御を実行するサーボ制御手段と
を具備するディスク記憶装置。 - 前記サーボ割り込み処理を禁止して優先的にコマンド処理を実行するコマンド処理手段を有し、
前記割り込み処理手段は、
サンプリング時点毎のサーボ割り込み要求に対して、前記コマンド処理の実行状態に基づいて前記サーボ割り込み処理の可否を判定し、
前記判定結果の否決に応じて、前記コマンド処理の実行経過時間に対応する前記否決の回数をカウントして保持する請求項1に記載のディスク記憶装置。 - 前記サーボ制御手段は、
前記コマンド処理の実行終了後に前記サーボ割り込み処理が復帰した際に、前記否決の回数に対応する時間に基づいて前記内部モデル演算の状態変数を補正する請求項2に記載のディスク記憶装置。 - 前記コマンド処理手段は、
前記コマンド処理の実行中に発生する前記サーボ割り込み処理を禁止し、
前記前記コマンド処理の実行終了後に前記サーボ割り込み処理を許可する請求項2または請求項3のいずれか1項に記載のディスク記憶装置。 - コマンド処理を実行するコマンド処理手段を有し、
前記コマンド処理手段は、
前記コマンド処理を実行時のサーボ割り込み要求の否決に応じて、前記サーボ割り込み処理を禁止する請求項1に記載のディスク記憶装置。 - 前記割り込み処理手段は、
前記否決の回数を、前記サーボ割り込み処理の実行経過時間を計測するタイマ値に基づいてカウントして保持する請求項1から請求項5のいずれか1項に記載のディスク記憶装置。 - 前記サーボ制御手段は、
前記推定現在位置に基づいて前記ヘッドの位置を変化させるための制御入力値を算出するフィードバック制御演算及びサンプリング時点での次回の内部モデルの状態予測値を算出する状態予測演算を実行し、
前記サーボ割り込み処理の開始時に前記否決の回数に基づいて前記状態予測演算の時間変数により前記状態予測値を補正する請求項1から請求項6のいずれか1項に記載のディスク記憶装置。 - ヘッドの検出位置に追従して前記ヘッドの目標位置との位置誤差である推定現在位置を算出するための内部モデルを含み、ヘッド位置決め制御を実行するディスク記憶装置に適用するサーボ制御方法であって、
サーボ割り込み処理の実行の可否を判定し、
前記判定結果の否決の回数を保持し、
前記判定結果が可決の場合に前記内部モデルの状態を前記否決の回数に基づいて補正するサーボ制御方法。 - サンプリング時点毎に制御系の割り込み処理の実行の可否を判定し、前記判定結果の否決の回数を保持する割り込み処理手段と、
制御対象の出力値に追従して目標値との誤差である推定入力値を算出するための内部モデルを含み、前記割り込み処理手段による前記判定結果が可決の場合に前記内部モデルの状態を前記否決の回数に基づいて補正し、前記内部モデルの演算結果に基づいて前記制御系の演算を実行する演算手段と
を具備する情報処理装置。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012263075A JP2014110063A (ja) | 2012-11-30 | 2012-11-30 | ディスク記憶装置、制御方法及び情報処理装置 |
US13/851,212 US8896952B2 (en) | 2012-11-30 | 2013-03-27 | Disk storage apparatus and method for servo controlling |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2012263075A JP2014110063A (ja) | 2012-11-30 | 2012-11-30 | ディスク記憶装置、制御方法及び情報処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2014110063A true JP2014110063A (ja) | 2014-06-12 |
Family
ID=50825222
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2012263075A Pending JP2014110063A (ja) | 2012-11-30 | 2012-11-30 | ディスク記憶装置、制御方法及び情報処理装置 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8896952B2 (ja) |
JP (1) | JP2014110063A (ja) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9208809B2 (en) | 2013-05-01 | 2015-12-08 | International Business Machines Corporation | Magnetic head and system having offset arrays |
US9449628B2 (en) | 2013-05-01 | 2016-09-20 | International Business Machines Corporation | Quasi-statically oriented, bi-directional tape recording head |
US9129614B2 (en) | 2013-05-01 | 2015-09-08 | International Business Machines Corporation | Magnetic head having canted arrays |
US8810957B1 (en) | 2013-09-05 | 2014-08-19 | International Business Machines Corporation | Quasi-statically tilted head having dilated transducer pitch |
US9214164B2 (en) | 2013-09-16 | 2015-12-15 | International Business Machines Corporation | Miniskirt tape head having quasi-statically tilted transducer arrays |
US9218838B2 (en) | 2013-12-12 | 2015-12-22 | International Business Machines Corporation | Quasi-statically tilted head having offset reader/writer transducer pairs |
US9007712B1 (en) | 2013-12-16 | 2015-04-14 | International Business Machines Corporation | Backward compatible head for quasi-static tilted reading and/or recording |
US9117470B1 (en) | 2014-07-17 | 2015-08-25 | International Business Machines Corporation | Write delay to de-skew data in read while write function for tape storage devices |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH077985A (ja) | 1993-06-15 | 1995-01-10 | Hitachi Ltd | ディジタル式速度検出装置及びそれを用いた電動機の速度制御装置 |
US7437201B2 (en) * | 2003-01-14 | 2008-10-14 | Cullen Christopher P | Electric motor controller |
JP2005196558A (ja) | 2004-01-08 | 2005-07-21 | Yamatake Corp | 制御方法および制御装置 |
JP2009217917A (ja) | 2008-03-12 | 2009-09-24 | Toshiba Corp | ディスク記憶装置及びサーボ制御方法 |
US8331655B2 (en) * | 2008-06-30 | 2012-12-11 | Canon Kabushiki Kaisha | Learning apparatus for pattern detector, learning method and computer-readable storage medium |
-
2012
- 2012-11-30 JP JP2012263075A patent/JP2014110063A/ja active Pending
-
2013
- 2013-03-27 US US13/851,212 patent/US8896952B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US8896952B2 (en) | 2014-11-25 |
US20140153127A1 (en) | 2014-06-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2014110063A (ja) | ディスク記憶装置、制御方法及び情報処理装置 | |
JP4970184B2 (ja) | 記憶装置、制御方法及び制御装置 | |
US8587889B2 (en) | Disk storage apparatus, disk control apparatus and write control method | |
US8879181B2 (en) | Read/write apparatus and read/write method | |
US10490223B2 (en) | Magnetic disk device and refresh processing method | |
JP2007122798A (ja) | ディスク記憶装置及びその制御方法 | |
JP2016122486A (ja) | 磁気ディスク装置及びライト制御方法 | |
US6970315B2 (en) | Method and apparatus write control in a disk drive | |
US9361944B1 (en) | Magnetic disk drive and rewrite processing method | |
JP2007207375A (ja) | 記憶装置、シーク制御方法及びプログラム | |
JP2008059634A (ja) | 制御装置および記憶装置 | |
US20120194940A1 (en) | Magnetic disk device and data verification control method in the device | |
JP2007335012A (ja) | 制御装置および記憶装置 | |
JP4960482B2 (ja) | 磁気ディスク装置及び同装置におけるパラメータ調整方法 | |
JP2008059636A (ja) | 制御装置および記憶装置 | |
US20060176003A1 (en) | Data storage apparatus and control method thereof with compensation | |
JP2020202004A (ja) | 磁気ディスク装置 | |
JP2005243160A (ja) | ディスク装置 | |
JPH08106742A (ja) | 磁気ディスク装置 | |
JP2005025852A (ja) | ディスク記憶装置及びヘッド位置決め制御方法 | |
US9842617B1 (en) | Electronic system with head management mechanism and method of operation thereof | |
KR100801126B1 (ko) | 위치 결정 제어 장치 및 디스크 장치 | |
US10607643B2 (en) | Magnetic disk device and recording method | |
JP2010123162A (ja) | 記憶装置および制御装置 | |
US8804274B1 (en) | Disk storage apparatus and servo control method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD07 | Notification of extinguishment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7427 Effective date: 20140415 |