以下、本発明の実施の形態を、デイスク記憶装置、位置復調構成、円周方向の位置ずれ補正方法、半径方向の位置ずれ補正方法、他の実施の形態で、説明するが、本発明は、下記実施の形態に限られない。
[デイスク記憶装置]
図1は、本発明の一実施の形態のデイスク記憶装置の構成図、図2は、図1の磁気デイスクの位置信号の配置図、図3は、図1及び図2の磁気デイスクの位置信号の構成図、図4は、図3の位置信号の検出波形図、図5は、ヘッド位置制御の説明図である。
図1は、デイスク記憶装置として、磁気デイスク装置を示す。図1に示すように、磁気記憶媒体である磁気デイスク10が、スピンドルモータ18の回転軸19に設けられている。スピンドルモータ18は、磁気デイスク10を回転する。アクチュエータ(VCM)14は、先端に磁気ヘッド12を備え、磁気ヘッド12を磁気デイスク10の半径方向に移動する。
アクチュエータ14は、回転軸19を中心に回転するボイスコイルモータ(VCM)で構成される。図では、磁気デイスク装置に、2枚の磁気デイスク10が搭載され、4つの磁気ヘッド12が、同一のアクチュエータ14で同時に駆動される。
磁気ヘッド12は、リード素子と、ライト素子とからなる。磁気ヘッド12は、スライダに、磁気抵抗素子を含むリード素子を積層し、その上にライトコイルを含むライト素子を積層して、構成される。
位置検出回路20は、磁気ヘッド12が読み取った位置信号(アナログ信号)をデジタル信号に変換する。リード/ライト(R/W)回路22は、磁気ヘッド12の読み取り及び書込みを制御する。スピンドルモータ(SPM)駆動回路24は、スピンドルモータ18を駆動する。ボイスコイルモータ(VCM)駆動回路26は、ボイスコイルモータ(VCM)14に駆動電流を供給し、VCM14を駆動する。
マイクロコントローラ(MCU)28は、位置検出回路20からのデジタル位置信号から現在位置を検出し、検出した現在位置と目標位置との誤差に従い、VCM駆動指令値を演算する。即ち、位置復調とサーボ制御を行う。リードオンリーメモリ(ROM)30は、MCU28の制御プログラム等を格納する。ハードデイスクコントローラ(HDC)32は、サーボ信号のセクタ番号を基準にして,1周内の位置を判断し,データを記録・再生する。ランダムアクセスメモリ(RAM)34は、リードデータやライトデータを1時格納する。HDC32は、ATAやSCSI等のインターフェイスIFで、ホストと通信する。バス36は、これらを接続する。
図2に示すように、磁気デイスク10には、外周から内周に渡り、各トラックにサーボ信号(位置信号)が、円周方向に等間隔に配置される。尚、各トラックは、複数のセクタで構成され、図2の実線は、サーボ信号の記録位置を示す。図3に示すように、位置信号は,サーボマークServo Markと、トラック番号Gray Codeと、インデックスIndexと、オフセット情報PosA,PosB,PosC,PosDとからなる。
トラック番号Gray Codeとオフセット情報PosA,PosB,PosC,PosDを使い,磁気ヘッドの半径方向の位置を検出することができる。さらに、インデックス信号Indexを元にして,磁気ヘッドの円周方向の位置を把握できる。例えば,インデックス信号を検出したときのセクタ番号を0番に設定し、サーボ信号を検出する毎に、カウントアップして、トラックの各セクタのセクタ番号を得る。
このサーボ信号のセクタ番号は,データの記録再生を行なうときの基準となる。尚、インデックス信号は、1周に1つである、又、インデックス信号の代わりに、セクタ番号を設けることもできる。
図4は、図3の位置信号のヘッド検出波形図である。本実施例は,以上のような,検出したサーボ信号(位置信号)を用いて,半径方向および円周方向の位置を求めるための位置復調装置およびその方法に関するものである。
図5は、図1のMCU28が行うアクチュエータのシーク制御例である。図1の位置検出回路20を通じて、MCU28が、アクチュエータの位置を確認して,サーボ演算し、適切な電流をVCM14に供給する。図5では、あるトラック位置から目標トラック位置へヘッド12を移動するシーク開始時からの制御の遷移と、アクチュエータ14の電流、アクチュエータ(ヘッド)の速度、アクチュエータ(ヘッド)の位置を示す。
即ち、シーク制御は、コアース制御、整定制御及びフォロイング制御と遷移することで,目標位置まで移動させることができる。コアース制御は、基本的に速度制御であり、整定制御、フォロイング制御は、基本的に位置制御であり、いずれも、ヘッドの現在位置を検出する必要がある。
このような,位置を確認するためには,前述の図2のように、磁気デイスク上にサーボ信号を事前に記録しておく。即ち、図3に示したように、サーボ信号の開始位置を示すサーボマーク,トラック番号を表すグレイコード,インデックス信号,オフセットを示すPosA〜Dといった信号が記録されている。この信号を磁気ヘッドで読み出すと,図4のような時間波形を得ることができる。この図4のサーボ信号を、位置検出回路20が、デジタル値に変換し、MCU28が、図6以下にて後述するように、位置を復調する。
[位置復調構成]
図6は、図1のMCU28が実行する位置復調機能のブロック図である。
図6において、信号復調部40は、ヘッド12の読取信号の内、サーボゲートで示される期間の読取信号を抽出し、図3で説明したサーボマーク、トラック番号(グレイコード)、インデックス信号及びオフセット信号PosA〜PosDを復調する。更に、信号復調部40は、オフセット信号PosA〜PosDから下記式で示されるオフセット情報PosN,PosQを復調する。
PosN=PosA−PosB
PosQ=PosC−PosD
次に、現在位置計算部42は、トラック番号Trackと、オフセット情報PosN,PosQを受け、現在位置を計算する。この際に、PosN,PosQの速度オフセットを補正するため、ポジション感度ゲインテーブル44が設けられている。ポジション感度ゲインテーブル44は、各ヘッドの各ゾーンの位置感度ゲインを格納している。
現在のコマンドヘッド番号CmdHeadとコマンドトラック番号CmdTrackとで、ポジション感度ゲインテーブル44から対応するPosN,PosQの感度ゲインを読出す。現在位置計算部42は、入力されたPosN,PosQをこの感度ゲインで補正し、トラック番号に加えて、現在位置を計算する。これらの速度オフセット補正方法は、例えば、特開2001−256741号公報で詳細に開示されている。
次に、位置誤差を計算する。前述の半径方向のずれを補正するトラック変換テーブル46を、現在のコマンドヘッド番号CmdHeadとコマンドトラック番号CmdTrackとで、参照して、ずれを補正したコマンド位置を得る。尚、このトラック変換テーブル46は、ヘッド毎,ゾーン毎に異なるトラック番号ずれを格納し、図16以下で後述する。
そして,加算部48は、現在位置計算部42からの現在位置からトラック変換テーブル46の指令位置を差し引き、位置誤差を得る。加算部50は、ヘッド12が、リード素子とライト素子が分離された場合に、リードとライトで、オフセットを与え、位置誤差からオフセットを差し引くものである。このようにして得られた位置誤差は、MCU28が実行する図示しない周知のサーボ演算部に与えられ、VCM14の制御量が計算される。
サーボゲート発生部60は、基本的に、一定のサンプル周期Ts間隔でサーボゲート信号を生成する。本発明では、後述するように、円周方向のずれ補正を行うための2つのテーブル62、64で、サーボゲート発生部60を制御する。即ち,サーボゲートを生成するブロックには,新たに2つのテーブル62、64が追加されている。このテーブルの一方62は,ヘッド切替え時に、ヘッド間のずれを求めるためのものである。また、他方のテーブル64は,同一トラックでの隣接サーボ信号の時間変動を計算するための値を格納している。
また,セクターカウンタ52は、インデックス信号Indexが見つかったときに,値がセットされ、サンプル(サーボゲート)周期ごとに、「1」ずつ値が増加していき、セクタ番号を出力する。このセクターカウンタ52は、インデックスセクターテーブル54が接続されている。インデックスセクターテーブル54は、各ヘッドに応じたインデックスのずれ量を格納する。即ち、セクタ番号を生成するブロックに,テーブル54を1つ追加し、各ヘッド毎にインデックス信号検出時に格納するセクタ番号を格納する。
比較器56は、セクターカウンタ52のセクター番号とインデックスセクターテーブル54のずれ量を比較し、現在のセクター番号がデイスク上の信号と同期しているかを判定する。
[円周方向の位置ずれ補正方法]
次に、円周方向ずれの補正を説明する。図7は、図6のセクターテーブルの構成図、図8は、図6のヘッド間の位置ずれ補正テーブルの構成図、図9は、サンプル周期補正テーブルの構成図、図10は、インデックスのずれ補正動作の説明図、図11は、インデックス補正動作のタイムチャート図、図12及び図13は、ヘッド切換え時の円周方向の補正動作説明図、図14は、偏心によるサーボゲートの時間変動の説明図、図15は、円周方向の時間ずれ補正動作の説明図である。
円周方向のずれの補正のために、テーブル54、62、64が設けられている。図7に示すように、インデックスセクターテーブル54は、各ヘッド0〜nのインデックスのずれ量をセクタ数で格納する。このインデックスセクターテーブル54は、指令ヘッド番号CmdHeadで参照され、対応するインデックスのずれ量をセクターカウンタ52に出力する。セクターカウンタ52は、インデックスのずれ量を、インデックス信号Indexをトリガーに、初期値としてロードされる。
図10及び図11で、セクタずれ量の物理的な意味を説明する。図10に示すように、ヘッド0とヘッド1,ヘッド2とヘッド3とは,同一のデイスク10の表裏を担当するとする。すると,デイスク10の表裏のずれ量は微小である。一方,異なるデイスク10−1、10−2間のセクタずれ量は大きい。図10の例では,ヘッド0のインデックス信号位置をセクタ0番に定めている。他のヘッドでは,そのずれに応じたセクタずれ量を格納しておく。
図11に示すように、インデックス信号を検出したときに,指令ヘッドのセクターずれ量をテーブル54からセクターカウンタ52にロードする。従って、セクターカウンタ52は、そのずれ分を加算して,新たなセクタ番号を作る。
例えば,図11の例では,ヘッド0からヘッド2へ切替える際の処理を示している。ヘッド0とヘッド2とでは,この例では10セクタ,セクタ番号がずれている。今,ヘッド0を復調しているときに,ヘッド0のセクタ10の個所で,ヘッド2に切替える場合を考える。このとき,ヘッド間でサーボ信号がずれているのだから,セクタ番号が連続になるように,ヘッド2で読めたセクタ番号0という値を,10になるように読替えなければならない。
このため、ヘッド0からのヘッド2のセクタずれ量であるヘッド2のセクタ番号オフセット値を「10」としておく。ヘッド0からヘッド2に切り替え時に、ヘッド2のインデックスを検出して、オフセット値「10」をカウンタ52にロードする。これにより、ヘッド2のインデックスから見たセクター番号「0」、「1」、「2」…は、ヘッド0のセクタ番号と対応して、セクター番号「10」、「11」、「12」…に変換される。即ち、インデックスのずれが補正され、各デイスク間で、円周方向のセクタ位置が同一と補正される。
次に、ヘッド間の円周方向のサーボ信号の位置ずれを補正する。図8に示すように、ヘッド間の時間ずれテーブル62には、各ヘッドのゾーン毎の時間ずれの値が格納されている。この時間ずれの値は,平均値,Cos成分,Sin成分の3つの値から構成されている。Cos成分,Sin成分の値も持つのは,ヘッド間の時間ずれ量は円周方向に一様ではなく,回転周波数と同じ周波数を持つ正弦波状に時間ずれ量が変動するためである。
図6の構成において、ヘッド切換え時に、切換え前のヘッド番号とトラック番号、セクタ番号と、切換え後のヘッド番号から時間ずれテーブル62を参照し、ヘッド間のサーボ信号の時間ずれ量Δを計算し、サーボゲート発生部60のサーボゲートの発生時刻を修正する。
図12及び図13で説明する。図12では、ヘッド0からヘッド2へ切替える際の処理を示している。ヘッド0とヘッド2とでは,この例では10セクタ,セクタ番号がずれている。今,ヘッド0を復調しているときに,ヘッド0のセクタ1の個所で,ヘッド2に切替える場合を考える。このとき,ヘッド間でサーボ信号がずれているのだから,サーボゲートの発生時刻をヘッド切替え直後に調整しなければならない。さらに、前述したように、セクタ番号が連続になるように,ヘッド2で読めたセクタ番号12という値を,2になるように読替えなければならない。
従って、サーボゲートの発生間隔Tsを、ヘッド切換え直後に、(Ts−Δ)に変更し、以降は、サーボゲートの発生間隔をTsに戻す。これにより、円周方向のサーボ信号のずれを補正し、ヘッド切換えしても、サーボ情報をサーボゲートで抽出できる。
図13も同様の例を示す。今度は先とは別の場所で,ヘッド2からヘッド1へきりかえる例を示す。今度はヘッド2でセクタ11で、ヘッド切替えを行う。ところが,サーボ信号のずれ時間が短く,その短い時間内でMCU28の処理が終了しない。そこで,サーボゲートの発生時刻をさらに1サンプル延ばして(Ts+Δ)、ヘッド切替えを実施する。このようにすると,セクタ番号は1の次に3が復調されることになる。
次に、サンプル周期の補正を説明する。図14に示すように、偏心のない時は、同一トラック位置で、サーボ情報は、同一間隔であり、サーボゲートを同一間隔で発生させる。一方、偏心があると、同一円周上のサーボ情報の角速度が変化するため、サーボ信号の時間間隔が変化する。このため、サーボゲートの発生間隔を、これに合わせて変化する必要がある。
図9は、図6のサンプル周期のずれ補正テーブル64の構成図である。このテーブルも,ヘッド0から順に値が格納されている。ゾーン毎に平均値,Cos成分,Sin成分,が格納されている。サンプル周期の変動(隣接したサーボ信号同士の時間間隔の変動)も,デイスクの回転周波数と同じ周波数を持つ正弦波状の変動を示す。そのため,Cos成分,Sin成分が必要になる。
図6の構成では、トラックフォロイング時に、ヘッド番号、トラック番号、セクタ番号で、テーブル64を参照し、対応する平均値、Cos成分、Sin成分を読出し、時間間隔を計算し、サーボゲート発生部60を制御し、サーボゲートの時間間隔を、図14のように制御する。
図15は、STW済の2枚のデイスク10−1,10−2を、スピンドルモータ18に取り付け、ヘッド0、2の動作を示している。スピンドルモータ18の回転中心19と、デイスク10−1,10−2のSTW時の回転中心との相違が,偏心量となる。また,デイスク10−1,10−2間で,半径方向および円周方向にサーボ信号がずれている。
デイスク10−1のヘッド0からデイスク10−2のヘッド2に切換えた(シーク開始)時に、前述のインデックスの補正と、ヘッド間の時間ずれの補正が行われる。そして、各ヘッド0、2のフォロイング時には、前述のサンプル周期の補正が行われる。このようにして、円周方向の位置ずれ補正を行う。
次に、円周方向の時間ずれ量の測定処理を説明する。図16は、ヘッド間の時間ずれの計測処理フロー図である。図16は、円周方向ずれのうちの,セクタ番号ずれ,およびヘッド間の時間ずれ,の計測方法を示す。図中の記号の意味は次の通りである。
CmdHead 目標ヘッド
CmdTrack 目標トラック
BaseHead 基準ヘッド
Zone 測定対象ゾーン
IndexSector[] ヘッド毎のセクタずれ量を保存するテーブル
CmdSector ヘッド切替え時の対象セクタ
MaxZone Zone番号の最大値
MaxHead ヘッド番号の最大値
セクタ番号ずれ量を測定する際には,複数のヘッドの中で,たった1つ基準ヘッドBaseHeadを定める。この基準ヘッドにおいては,セクタ番号ずれ量を0に設定しておく。通常は,後述する半径方向位置ずれ測定時の基準ヘッド測定と同じ番号にしておく。そして,基準ヘッドでトラッキングしながら,異なる番号のヘッドに切替える。切替え直後のセクタ番号の値を検出する。このときの,セクタ番号のずれ量を検出することで,測定ヘッドのセクタ番号オフセットを設定することができる。
このようなセクタ番号のずれは,粗い値である。例えば,1周に120個のセクタ番号がある装置の場合は,1/120の単位でしか円周方向のずれが検出できない。ところが,サーボ信号を検出するためには,より細かい精度の時間ずれが必要になる。このずれ量を正確に把握しておかないと,ヘッド切替え時に,サーボ信号を検出することができない。そのために,次のように設定する。まず,1つのヘッドで位置決めする。このヘッドを測定の基準に定める。
次に,セクタ0番でヘッド切替えを行って,切替え先のヘッドのセクタ番号および時間ずれ量を検出する。切替え直後に検出できなければ,サーボマークをサーチするモードに入れて,その検出した時刻からサーボ信号の時間間隔の標準値を引くことで,時間ずれ量やセクタずれ量を求めても良い。サーボ信号を検出した時点で,その時間ずれを求める。この操作を1周分おこなう。
このずれ量の平均値を求めることで,平均的なずれ時間を求めることができる。また,このヘッド間のずれの1周内の変動は,正弦波に近似できる。そのため,フーリエ変換を行い,回転周波数のサインの係数,コサインの係数を求める。
この時間ずれの平均値と,サイン・コサインの係数は,テーブルに保存しておく。また,セクタ番号のずれ量も同じく保存しておく。
ただし,セクタずれ量だけは,デイスクの内周から外周まで,どの場所においても同一の値を採用しなければならない。時間ずれ量は別の値でよい。なぜなら,時間ずれ量は,ヘッド切替えを行なう際に,確実にサーボ信号を検出できるようにするために用いる。検出できたら不要な値である。
しかし,セクタずれ量は違う。セクタずれ量は,その値を用いて,データを記録・再生するタイミングを作るものである。したがって,例えば,あるトラックでずれ量が「1」,別のトラックでずれ量が「10」のように,異なってしまうと,タイミングの調整が難しくなる。そのため,ヘッド間のセクタ番号のずれ量は,唯一1つの値のみとしなければならない。
このセクタずれ量が唯一1つという制限にともない,場合によっては時間ずれが1サンプル周期を越える場合もありえる。しかし,そのような場合においても,セクタずれ量は唯一1つとしておく。そのために,セクタずれ量を測定する個所を決めなければならない。例えば,外周の特定領域でのみ測定する。
以下、図16の処理フローで説明する。
(S10)補正テーブル54、62を「0」に初期化する。次に、目標ヘッドを「0」に初期化する。
(S12)目標ヘッドが、基準ヘッドか判定する。目標ヘッドが基準ヘッドであれば、ステップS32の目標ヘッド変更ステップに進む。目標ヘッドが基準ヘッドでなければ、測定対象ゾーンを「0」に、ヘッド切換え時の目標セクタを「0」に初期化する。
(S14)このゾーンZoneに対応した目標(測定)トラックをセットする。
(S16)基準ヘッドが目標トラックに位置するように、VCMを移動する。
(S18)基準ヘッドが、目標セクタを検出した時刻に、目標ヘッドに切り替え、時刻の測定を開始する。
(S20)目標ヘッドが、目標セクタ(=0)を検出したかを判定する。目標セクタを検出すると、測定した時刻からセクタずれ量(セクタ数)を得て、補正テーブル54のそのヘッドのセクタずれ量に格納する。
(S22)次に、目標セクタを、「1」加算する。
(S24)目標セクタが、1周のセクタ数の最大値Nを越えたかを判定する。越えていない場合には、ステップS16に戻る。
(S26)一方、目標セクタが、最大値Nを越えていれば、1周の測定が終了したことになり、1周分の時間ずれ測定値から平均値、Cos・Sin成分の係数を計算し、図8の補正テーブル62に格納する。
(S28)次に、測定対象ゾーンがゼロかを判定する。測定対象ゾーンがゼロ(ここでは、最外周)の場合には、図18で後述するように、平均値が、−Ts/2〜+Ts/2の範囲に収まるように、平均値と、セクタずれ量を調整する。
(S30)測定対象ゾーンを「1」加算する。そして、測定対象ゾーンが、デイスクの最大ゾーンMaxZoneを越えたかを判定する。越えていない場合には、ステップS14に戻る。
(S32)測定ゾーンが、最大ゾーンを越えていると、次のヘッドを対象とするため、目標ヘッドを「1」加算する。そして、目標ヘッド番号が、装置の最大ヘッド番号を越えたかを判定する。越えていないと、ステップS12に戻る。逆に、越えていると、全てのヘッドのセクタ位置ずれ、時間ずれを測定したため、終了する。
図17は、この処理を行った測定結果の例である。2.5インチのハードデイスクドライブにおいて、単板STW済のデイスクを2枚搭載した装置にて,測定した。この例では,ヘッド2が基準ヘッドであり,ヘッド2から見たヘッド0の時間ずれ量を測定している。図17の上から順に、平均値、Cos成分、Sin成分を示し、トラック番号(内外周)に応じて、ずれ量が変化している。
図18に示すように、この外周でのセクタずれ量測定時に,同時に時間ずれも測定しておく。そして,この平均時間ずれ量の絶対値が、1/2セクタ分のサーボ時間間隔Tsよりも大きい場合には,−1/2〜+1/2の範囲になるように,1セクタに相当する時間を加減算しておく。
図18では、ヘッド1を基準ヘッドとして,他のヘッド0、2、3を測定対象としている。このとき,セクタずれ量は内外周の可動範囲のうちの1箇所,この例では、図の左端にて,測定する。この個所で時間ずれの平均値が指定範囲にはいるように,セクタずれ量も調整する。
次に、テーブルの保存位置を説明する。このヘッド毎のセクタ番号オフセット値を保存する場所として,2種類ある。1つは,回路基板上の不揮発性メモリ(ROM),2つ目はデイスク上である。ROMに保存する際には,工夫は不要である。そのまま保存しておき,利用するときにROMの値を参照すればよい。
しかし,デイスク10上に保存する時は、工夫が必要である。まず,電源投入直後の,まだ1度もデイスク上の信号を検出していないときには,回路にセクタ番号オフセット量がセットされていない。したがって,そのような状態でも,デイスク上のセクタ番号オフセット量を検出できるようにしなければならない。
図19に示すように、このために,デイスク10上の領域を、A,CとBの2つにわける。1つは,データを記録・再生する際に,デイスク上のセクタ番号をそのまま利用する領域Bであり、2つ目は,データを記録・再生する際に,ヘッド毎のセクタ番号オフセットを,検出したセクタ番号に加算して利用する領域A,Cである。
電源投入直後には,1つ目の領域Bにアクセスにいき,ディスク上から装置個体ごとに異なる情報を読み出す。即ち、領域Bが個体差の情報を保存する領域である。このBの領域を記録・再生する際には,ヘッド間のセクタずれは無視する。なお,この領域Bには,セクタ番号オフセット情報のみでなく,それ以外の情報を記録しておいてもよい。したがって,この領域へアクセスする際には,セクタ番号の読替え量を違えなければならない。
このようにして,ヘッド間の時間ずれを計測し,セクタずれ,時間ずれを補正することができるようになった。しかし,ヘッド切替えをしない場合でも,偏心による時間ずれの問題は生じる。前述の図14で示したように、外部でサーボ信号を記録された装置においては,偏心が生じている。この偏心に伴い,サーボ信号間の時間が変動する。従来の信号復調回路においては,このサーボ信号間の時間は一定であると仮定していた。したがって,この時間が変動することは好ましくない。例えば,偏心があまりにも大きいと,サーボ信号検出のためのサーボマークゲートが実際のサーボ信号と同期せず,サーボマークが検出できずに,エラーが発生する。
この問題を解決するには,サーボ信号間の時間変動(サンプル周期の時間変動)を測定して、実際のサーボ信号にあわせて,サーボゲートの発生時刻を調整する。
図20は、サンプル周期の時間変動測定処理フロー図である。この測定は、デイスク1周の時間変動を測定し,その値の平均値を求めるとともに,フーリエ変換を施して,サインの係数,コサインの係数を求める。
(S40)補正テーブル64を「0」に初期化する。次に、目標ヘッドCmdHeadを「0」に初期化する。
(S42)測定対象ゾーンを「0」に、初期化する。
(S44)このゾーンZoneに対応した目標トラックへVCMを移動する。計測カウント値Countを「0」に初期化する。
(S46)ヘッドの読取信号からサーボ信号を検出し、現在のサーボ信号の規定サンプル周期からのずれ時間を計測する。そして、サーボ信号検出毎に、計測カウント値を「1」アップする。
(S48)計測カウント値が、1周のセクタ数の最大値N×Mを越えたかを判定する。越えていない場合には、ステップS46に戻る。
(S50)一方、計測カウント値が、最大値N×Mを越えていれば、1周の測定が終了したことになり、セクタ間の平均値を計算する。更に、Cos・Sin成分の係数を計算し、図6及び図9の補正テーブル64に格納する。次に、測定対象ゾーンを「1」加算する。
(S52)そして、測定対象ゾーンが、デイスクの最大ゾーンMaxZoneを越えたかを判定する。越えていない場合には、ステップS44に戻る。
(S54)測定ゾーンが、最大ゾーンを越えていると、次のヘッドを対象とするため、目標ヘッドを「1」加算する。そして、目標ヘッド番号が、装置の最大ヘッド番号を越えたかを判定する。越えていないと、ステップS42に戻る。逆に、越えていると、全てのヘッドのサンプル周期の時間ずれを測定したため、終了する。
尚、サーボ信号を復調しているときには,すなわち,位置決め制御をしているときには,常時,テーブル64の測定値を参照し、次のサンプルのサーボゲートまたはサーボマークゲートの時間変動を計算し,そのずれ量に応じて,信号発生時刻をずらす操作を行う。
図21及び図22は,サンプル周期ずれの補正前後の様子を示す。図21及び図22において、各図の上がインデックス信号,すなわちこの信号の間が1周期分である。中の信号が,サーボゲートからの時間ずれを示す。下の信号がサーボゲートの発生時刻の補正用の信号を示す。
図21に示すように、補正しない場合には、時間変動信号が示すように,サーボ信号は1周内で正弦波状に変動している。この変動を測定してサーボゲートの発生時刻を調整することで,図22に示すように,サンプル周期ずれを解消することができる。
次に、図23により、アクチュエータをロードした後のインデックス同期処理を説明する。尚、この例は、既にセクタずれ量が、メモリに格納された後の処理を示す。
(S60)使用ヘッドを選択する。
(S62)そのヘッドの出力からサーボマークをサーチする。
(S64)サーボマークを検出すると、確認カウント値Countを「0」に初期化する。そして、サーボゲートを一定間隔Tsで信号復調部40に供給する。
(S66)そのサーボゲートでサーボマークを検出したかを判定する。検出していない場合には、ステップS62に戻る。一方、サーボマークを検出した場合には、確認カウント値Countを「1」アップする。
(S68)確認カウント値Countが、確認の規定回数を越えたかを判定する。規定回数を越えていない場合には、サーボマークサーチから規定時間以上経過しているかを判定する。規定時間以上経過している場合には、ステップS62に戻る。規定時間以上経過していない場合には、ステップS66に戻る。
(S70)計測カウント値が、規定回数を越えていると、インデックスを検出したかを判定する。インデックスを検出すると、テーブル54からそのヘッドのインデックスずれ量を読出し、セクターカウンタ52にロードする。これにより、インデックス同期処理を終了する。
又、電源投入時には、モータ18によりデイスク10を指定する回転数まで回転させる。次に,特定のヘッドでオントラックする。その際に,電子回路上の不揮発性メモリに,装置個体ごとのずれ量を格納している場合には,インデックスパルスを見つけたときに,サーボ・セクタ番号を「0」には初期化せずに,そのずれ量の値を複写する。
以後,サーボ信号を検出するたびに,セクタ番号を1づつ増やしていく。インデックスパルスが見つかればそのずれ量で初期化する。また1周分のセクタ数になったら,0に初期化する。
又、電子回路は各装置共通で,ずれ量の情報をデイスク上に保存している場合には,次のようにする。まず,サーボ信号を検出して,インデックスパルスを検出したら,サーボセクタ番号は0にする。以後,サーボ信号検出の度に,1ずつ増加させ,1周分のセクタ数になったら,もしくはインデックスパルスを見つけたら,0にクリアする。
次に、すべての装置個体で同じトラック番号の半径位置にアクチュエータを位置決めする。そして,デイスク上に書かれているデータを読み込む。このデータ中には,各種のずれ量が記録されている。そして,このずれ量の値を使用して,セクタずれをセットする。この際には,ヘッド毎に,インデックスパルス発生時のセクタ番号を違える。
次に、ヘッド切換え時の時間ずれ補正処理を、図24の処理フローで説明する。
(S80)シーク命令を受信する。シーク命令には、目標ヘッドCmdHead、目標トラックCmdTrack,オフセットCmdOffsetが含まれる。
(S82)目標ヘッドの位置を計算する。目標トラック番号からゾーンZoneを求める。更に、後述する半径方向のトラック番号補正値(TrackDiffCommonと、ゾーン、ヘッド毎のTrackDiff)とCmdTrackとからそのヘッドのデイスクでの物理トラック番号を計算する。
(S84)次に,2つのヘッド(現在ヘッドと目標ヘッド)間の時間ずれ情報の差分をとる。時間ずれ情報は、平均値,Cos成分,Sin成分で格納されている。現在ヘッド番号CmdHeadOld,目標ヘッド番号CmdHead,現在の位置CmdTrackOldから,テーブル62を参照して,線形補間して,その位置での平均値,Cos成分,Sin成分を求める。この値を,現在のヘッドと,切替え先のヘッドの,2種類求める。この値は,測定時に,特定のヘッドからみたときの相対的なずれを表している。したがって,2つのヘッドのずれ量は,差分を取ることで求めることができる。
(S86)このようにして,2ヘッド間の,そのトラック近傍での平均値,Cos成分,Sin成分のずれ値を求めることができた。この3つの値を使って,その時刻,すなわち現在のセクタ番号での,時間ずれを求める。そのためには,現在のセクタ番号k,1周のセクタ数Nを使って,下記式で計算する。
TimeDiff=平均値のずれ+(Cos成分のずれ)×cos(2πk/N)
+(Sin成分ずれ)×sin(2πk/N)
このときの計算結果であるずれ時間が問題になる。通常,このような操作を行うのは,装置の回路上のマイクロコントローラ28のプログラムである。そのため,有る程度の処理時間が必要になる。計算結果があまりにも短い場合には,処理が間に合わない。したがって,1サンプル分,時間を加算することが必要になる。また,その際にはサーボセクタ番号を「1」増やしておくことも必要になる。
(S88)このようにしてずれ時間を求めて,その時間に応じてサーボゲートの発生時刻を修正する。一方,サーボセクタ番号は,連続であるので,変化はない。しかしながら,デイスク上に記録されている信号には,装置個体ごとに,プログラム上のサーボセクタ番号と,デイスク上のサーボ信号とのずれの関係が違っている。そのため,セクタ番号の同期をとる処理において,インデックスパルス発生時に,指定したセクタになるように対応付けを行う。そして、切換えヘッドがこのサーボゲートでサーボ信号を確認する。
(S90)この確認後、サーボサンプル周期を元のTsに戻し、シーク制御を行い、目標トラックに移動する。尚、目標トラックにフォロイングしている時は、図16の測定結果を保存する時間ずれ補正テーブル64を用いて、サーボサンプル間隔を補正する。
図25は,シーク応答の例を示す。ここでは,2.5インチのハードデイスクドライブに、単板STW済のデイスクを2枚搭載して装置において,ヘッド切換えして、デイスク間でシークを行なった例である。
2つのデイスクは4分の1周ほど故意にずらしている。この例では,検出したインデックス信号をそのまま出力した。したがって,ヘッド切替えの前後(シークの前後)でインデックス信号の間隔が変化しているが、インデックス信号とセクタ番号との対応関係をヘッド毎に変えている。このため、ヘッド切換え時でも正しくシークできる。
[半径方向のずれ補正方法]
次に、半径方向の位置ずれ,すなわち、ヘッド間のトラック番号のずれを補正する方法について述べる。この半径方向のトラック位置ずれについては,公開特許公報 特開2001−266454号「デイスク装置のヘッド位置決め制御方法及びデイスク装置」において,詳細に問題点および解決方法について説明されている。
これを、図27乃至図30で説明する。図28に示すように、デイスク10に対し、ヘッド12−1、12−2間の半径方向の位置ずれがあり,かつそのずれ量が装置個体ごとに異なる。又,図27に示すように、デイスク10上の物理位置(トラック)の範囲0〜14000に対し、アクチュエータ(VCM)の可動範囲によるデータ領域は、デイスク10の偏心により、制限される。更に、図27及び図28に示したように、ヘッド12−1、12−2の半径方向の位置ずれにより、ヘッド間でデータ領域がずれる。
この装置固体毎のヘッド間の半径方向のずれ量の相違により、データを記録・再生するときのシーク時間,特にヘッド切替えを行うときのシーク時間が,装置個体ごとに異なってしまう。即ち、データの記録・再生時間が、装置個体ごとに異なることを意味する。
この時間を短縮するには,ヘッド切替え時の移動距離を少なくする。そのために,ヘッド間のずれ量を保存して,外部から指示されたトラック番号を位置決め制御装置側で読み替えることを、前記公報で提案されている。
この場合に、図28に示すように、ロータリーアクチュエータをヘッドの移動に使用する場合には、外周でのヘッド間のずれ量(ここでは、「2」)が、内周でのヘッド間のずれ量(ここでは、「4」)と一致せず、異なる。
このため、ヘッド間のずれ量を、全データ領域で一義的に定めることができない。そこで、図28に示すように、データ領域Mを複数の領域(ゾーン)M1〜Mnに分割し、各領域の開始位置をずれとして保存する。更に、この開始位置を、ヘッド間のずれ量(オフセット)で規定するため、いずれかのヘッドを基準ヘッドとし、他のヘッドは、基準ヘッドからのずれ量で定義する。
この場合に、図29のように、ヘッド0を基準ヘッドとした場合に、ヘッド1の各領域のずれ量が減少する時は、トラック番号の読み替えで重複が生じる。しかし,先に示した発明においても,複数のディスクを備えた装置の場合に問題が生じる。従って、図30のように、領域のずれ量が増加するように、ヘッド1を基準とし、ヘッド0のヘッド1に対するずれ量を保存する。
この先の提案では,同一デイスクの表裏のヘッドのずれを保存し、変換に使用することを開示したが、複数のデイスク間でも同一と仮定していた。しかし,これでは、デイスク間のずれが考慮されないため、デイスク間でのずれ分だけ装置個体ごとにシーク時間が異なってしまうことになる。
この問題を避けるため、本発明では、複数のデイスクの各ヘッド間の位置ずれを測定し、他のヘッドの位置ずれ量が単調増加となる基準ヘッドを決定し、基準ヘッドから他のヘッドのずれ量を保存するようにした。以下に、その具体的な方法を、図31乃至図33で説明する。
最初に、全てのヘッドの可動範囲を調べる。ヘッド毎にこの値はずれる。そして,個々のヘッド毎に,データ領域が可動範囲に入るように,上位装置から指示されたトラック番号を変換するためのトラック番号一律ずらし量を、全ヘッドに共通に定める。この可動範囲を求める方法としては,実際にアクチュエータを可動限界まで動かしながら,検出できるトラック番号の範囲を求めればよい。
次に仮の測定基準ヘッドを定める。これは任意のヘッドでよい。例えば,0,1,2,3の4つのヘッドがある場合には,基準ヘッドを仮に0と定めておく。
次に基準ヘッドであるヘッド0から,他方の1,2,3のヘッドをみたときの位置ずれをもとめる。このために,まずヘッド0でディスクの外周部に位置決めする。そして他方のヘッドへ切り替えて位置ずれを測定する。次にヘッド0でディスクの内周部に位置決めする。そして同様に他方のヘッドへ切替えて,位置ずれを測定する。ここで,図31に示すように、ヘッド0を仮の基準とした各ヘッド1、2、3の外周部と内周部の2つの位置ずれが求まる。
この位置ずれの差分値を求める。そしてこの差分値について次のように解析する。すべての位置ずれの差分値が,トラック番号増加方向を基準にして正または0ならば,仮の基準ヘッドを真の基準ヘッドと定める。
全ての位置ずれの差分値が,トラック番号増加方向を基準にして、1つでも負の値があるならば,最も値の小さい(負の最大値の傾きをとる)位置ずれを示すヘッドを基準ヘッドに定める。図31では、基準ヘッドは、ヘッド2となる。
このような操作をする理由は,図29、図30で説明したように、トラック番号を読替えたときに,読み替える値のゾーン間で,重なる領域が発生しないようにしなければならない。そのためには,トラック番号のずれ量が,トラック番号増加方向に正方向に増加していなければならない。
図32の基準ヘッドの決定処理フロー図で、処理を説明する。
(S100)基準ヘッド番号BaseHeadを「0」に、仮の基準ヘッド番号BaseHeadTempを「0」に、トラック番号ずれ最小値TrckDiffMinを「0」に初期化する。又、測定対象ヘッド番号CmdHeadを「1」にセットする。
(S102)基準ヘッドを外周に移動し、測定ヘッドに切換え、トラック番号を読み、外周の位置ずれDiffOuterを測定する。
(S104)基準ヘッドを内周に移動し、測定ヘッドに切換え、トラック番号を読み、内周の位置ずれDiffInnerを測定する。
(S106)この測定ヘッドの内外周の位置ずれTrackDiffを、(内周位置ずれ−外周位置ずれ)で計算する。
(S108)ステップS106で求めた内外周の位置ずれが、トラック番号ずれ最小値より小さいかを判定する。小さい場合には、トラック番号ずれ最小値TrckDiffMinに、測定ヘッドの内外周の位置ずれTrackDiffをセットし、仮の基準ヘッドに、この測定ヘッド番号をセットする。
(S110)測定ヘッド番号を「1」インクリメントする。そして、インクリメントした測定ヘッド番号が、装置の最大ヘッド番号を越えたかを判定する。越えていない場合には、ステップS102に戻り、越えていれば、決定処理を終了する。
次に,このように基準ヘッドを定めた後,ゾーン毎に位置ずれを測定する。例えば,領域を8ゾーンや16ゾーンに分け,個々のゾーンで,基準ヘッドから他方のヘッドへの位置ずれをもとめる。このゾーンは,トラック番号が等間隔になるように定めるのが容易である。また,値の変化のカーブが急峻な傾きになる領域が生じる場合には,その付近はより細かく範囲を設定してもよい。
図33は、半径方向の位置ずれの計測処理フロー図である。
(S112)補正テーブル46(図26参照)を「0」に初期化する。次に、目標ヘッドCmdHeadを「0」に初期化する。
(S114)目標ヘッドが、基準ヘッドBaseHeadか判定する。目標ヘッドが基準ヘッドであれば、ステップS130の目標ヘッド変更ステップに進む。目標ヘッドが基準ヘッドでなければ、測定対象ゾーンZoneを「0」に、ヘッド切換え時の目標セクタCmdSectorを「0」に初期化する。
(S116)このゾーンZoneに対応した目標(測定)トラックをセットする。
(S118)基準ヘッドが目標トラックに位置するように、VCMを移動する。基準ヘッドが、目標セクタを検出した時刻に、目標ヘッドに切り替え、半径方向の位置(トラック番号)を測定する。次に、目標セクタCmdSectorを「1」インクリメントする。
(S120)目標セクタが、1周のセクタ数の最大値Nを越えたかを判定する。越えていない場合には、ステップS118に戻る。
(S122)一方、目標セクタが、最大値Nを越えていれば、1周の測定が終了したことになり、1周分の位置ずれ測定値から平均値を計算し、図26の補正テーブル46の対応するヘッド番号、ゾーン番号のトラック番号ずらし量に格納する。
(S124)次に、測定対象ゾーンがゼロかを判定する。測定対象ゾーンが「1」以上かを判定する。「1」以上でない、即ち、「0」なら、ステップS128に進む。
(S126)測定対象ゾーンが「1」以上であれば、今回のゾーンのトラック番号ずらし量TrackDiff[Zone]が、前回のゾーンのトラック番号ずらし量TrackDiff[Zone−1]より小さいかを判定する。小さい場合には、今回のゾーンのトラック番号ずらし量TrackDiff[Zone]に、前回のゾーンのトラック番号ずらし量TrackDiff[Zone−1]をセットし、テーブル46を書き直す。
(S128)測定対象ゾーンを「1」加算する。そして、測定対象ゾーンが、デイスクの最大ゾーンMaxZoneを越えたかを判定する。越えていない場合には、ステップS116に戻る。
(S130)測定ゾーンが、最大ゾーンを越えていると、次のヘッドを対象とするため、目標ヘッドを「1」加算する。そして、目標ヘッド番号が、装置の最大ヘッド番号を越えたかを判定する。越えていないと、ステップS114に戻る。逆に、越えていると、基準ヘッドに対する全てのヘッドの各ゾーンのトラック番号ずらし量を測定したため、終了する。
このテーブル46を用いたトラック番号の変換方法は、次である。
変換後のトラック番号=(指示されたトラック番号+基準ヘッドのトラック番号一律ずらし量+対象ヘッドのゾーン毎のオフセット(ずらし量))
尚、図26に示すように、テーブル46のメモリ領域は,全てのヘッド分を用意しておく。このように構成しておけば,上記の汎用式で対応できる。したがって,基準ヘッドのゾーン毎のオフセット量は「0」である。
以上,説明したように,デイスク間という概念をなくし,ヘッド間のみを測定するように,測定方法を拡張することで,複数デイスクを搭載した装置においても,効果的にトラック番号を読み替えることが出来るようになった。すなわち,トラック番号が同一で,ヘッド番号のみ異なるときに,アクチュエータが移動する距離,すなわちシーク距離を最小に抑えることができる。
図34,図35にヘッド間の半径方向の位置ずれの測定結果を示す。2.5インチのハードデイスクにて実験した。図34、図35の例では、ヘッド1が基準ヘッドである。したがって,図34に示すように、ヘッド1の値は0になる。一方,他のヘッドはずれが生じている。図34、図35に示すように、全ての計測結果が,トラック番号が増加する方向を正方向とすると,正の傾きをとる。
このような補正テーブル26の保存域としては,装置回路基板上のROMのような不揮発性メモリと,デイスク上とがある。ROM保存する場合には,その領域を参照するように,使えばよい。又、デイスク上では、先に述べたように,装置個体ごとヘッド毎に,可動できるトラック番号の範囲が異なる。そこで,図19にて示したように,個体差ばらつきを考慮して,全ての装置でアクセス可能な範囲,例えばデイスクの中央部付近,のトラックに情報を保存しておく。このトラック番号は,全ての装置個体に共通である。この領域を電源投入直後にアクセスして,情報を読み出し,回路上の揮発性メモリ域に展開すればよい。
[他の実施の形態]
以上、デイスク記憶装置を、磁気デイスク装置で説明したが、光デイスク装置、光磁気デイスク装置等の他のデイスク記憶装置にも適用できる。又、円周方向の位置ずれ補正方法は、1枚のデイスクの表裏のヘッド間でも、適用でき、2枚以上のデイスクに限られない。又、デイスクの形状も、円盤形状に限らず、カード形状であっても良い。
以上、本発明を、実施の形態で説明したが、本発明の趣旨の範囲内において、種々の変形が可能であり、これらを本発明の技術的範囲から排除するものではない。
(付記1)ヘッドの位置を検出するためのサーボ信号が記録されたデイスクの異なる面を少なくとも読み取るヘッドを複数備えたデイスク装置のヘッド位置制御方法において、前記複数のヘッドを一のヘッドから他のヘッドに切り替えるステップと、前記他のヘッドにより読み取った前記サーボ信号に含まれる前記デイスクの円周方向の位置を示す信号を抽出するステップと、前記複数のヘッドの各々に対し設けられたセクタ番号ずらし値から、前記他のヘッドのセクタ番号ずらし値を取り出すステップと、前記位置を示す信号と前記取り出したセクタ番号ずらし値からセクタ番号を生成するステップとを有することを特徴とするヘッド位置制御方法。
(付記2)前記生成ステップは、前記位置を示す信号と前記取り出したセクタ番号ずらし値とを加算して、セクタ番号を生成するステップからなることを特徴とする付記1のヘッド位置制御方法。
(付記3)前記生成ステップは、前記サーボ信号の1つ又は複数のインデックス信号を基準にし、前記セクタ番号ずらし値を初期値として、前記デイスクの1周のセクタ番号を生成するステップからなることを特徴とする付記1のヘッド位置制御方法。
(付記4)前記インデックス信号に応じて、前記生成されたセクタ番号と、前記セクタ番号ずらし値とを比較して、前記デイスクの信号との同期を判定するステップを更に有することを特徴とする付記3のヘッド位置制御方法。
(付記5)前記ヘッド毎の前記セクタ番号ずらし値を記録したデイスク面に対応する前記ヘッドのセクタ番号ずらし値をゼロに設定するステップを更に有することを特徴とする付記1のヘッド位置制御方法。
(付記6)前記ヘッド毎のセクタ番号ずらし値を、前記ヘッド切換え前後の前記インデックス信号の位置に応じて測定するステップを更に有することを特徴とする付記1のヘッド位置制御方法。
(付記7)ヘッドの位置を検出するためのサーボ信号が記録されたデイスクの異なる面を少なくとも読み取るヘッドを複数備えたデイスク装置のヘッド位置制御方法において、前記複数のヘッドを一のヘッドから他のヘッドに切り替える際に、前記ヘッド間の前記サーボ信号の円周方向の時間ずれ値を、前記切り替えるセクタ位置から計算するステップと、時間ずれ値で、前記サーボ信号を抽出するサーボゲート信号の時刻を修正するステップとを有することを特徴とするヘッド位置制御方法。
(付記8)前記計算ステップは、前記デイスクの回転周波数と同一の周波数の正弦波で示す時間ずれ情報から前記時間ずれ値を計算するステップからなることを特徴とする付記7のヘッド位置制御方法。
(付記9)前記計算ステップは、前記時間ずれの平均値と、前記デイスクの回転周波数と同一の周波数の正弦波及び余弦波で示す時間ずれ情報から前記時間ずれ値を計算するステップからなることを特徴とする付記7のヘッド位置制御方法。
(付記10)前記各ヘッドの前記サーボ信号の時間変動を測定して得た測定値により、前記サーボゲートの発生時刻を調整するステップを更に有することを特徴とする付記7のヘッド位置制御方法。
(付記11)ヘッドの位置を検出するためのサーボ信号が記録されたデイスクを複数枚備えたデイスク装置のヘッド位置制御方法において、複数のヘッドの内、一のヘッドから他のヘッドを見て、トラック番号増加方向に、前記デイスクの半径方向のずれが正方向に増加する前記一のヘッドを基準として、前記他のヘッドの半径方向の位置ずれ量を格納するテーブルから、ヘッド切り替える時に、前記ヘッドの半径方向の位置ずれ量を取り出すステップと、前記取り出した位置ずれ量で与えられたトラック番号を変換するステップと、変換されたトラック番号で前記ヘッドを駆動するアクチュエータを制御するステップとを有することを特徴とするヘッド位置制御方法。
(付記12)前記一のヘッドを基準として、前記他のヘッドの前記一のヘッドに対する前記デイスクの半径方向の位置ずれ量を前記トラック番号増加方向に測定するステップと、前記測定した位置ずれ量から、前記トラック番号増加方向に、前記デイスクの半径方向のずれが正方向に増加する前記ヘッドを基準ヘッドに決定するステップとを更に有することを特徴とする付記11のヘッド位置制御方法。
(付記13)ヘッドの位置を検出するためのサーボ信号が記録されたデイスクの異なる面を少なくとも読み取るヘッドを複数備えたデイスク装置において、前記複数のヘッドの各々に対し設けられたセクタ番号ずらし値を格納するテーブルと、前記一のヘッドから切り替えられる他のヘッドのセクタ番号ずらし値を前記テーブルから取り出し、前記他のヘッドにより読み取った前記サーボ信号に含まれる前記デイスクの円周方向の位置を示す信号を修正して、セクタ番号を生成するセクタ番号生成部とを有することを特徴とするデイスク装置。
(付記14)前記生成部は、前記位置を示す信号と前記取り出したセクタ番号ずらし値とを加算して、セクタ番号を生成することを特徴とする付記13のデイスク装置。
(付記15)前記生成部は、前記サーボ信号の1つ又は複数のインデックス信号を基準にし、前記セクタ番号ずらし値を初期値として、前記デイスクの1周のセクタ番号を生成することを特徴とする付記13のデイスク装置。
(付記16)前記インデックス信号に応じて、前記生成されたセクタ番号と、前記セクタ番号ずらし値とを比較して、前記デイスクの信号との同期を判定する同期判定部を更に有することを特徴とする付記15のデイスク装置。
(付記17)前記ヘッド毎の前記セクタ番号ずらし値を記録したデイスク面に対応する前記ヘッドのセクタ番号ずらし値をゼロに設定することを特徴とする付記13のデイスク装置。
(付記18)前記ヘッド毎のセクタ番号ずらし値を、前記ヘッド切換え前後の前記インデックス信号の位置に応じて測定する制御部を更に有することを特徴とする付記13のデイスク装置。
(付記19)ヘッドの位置を検出するためのサーボ信号が記録されたデイスクの異なる面を少なくとも読み取るヘッドを複数備えたデイスク装置において、ヘッドの読み取り信号から前記サーボ信号をサーボゲートで抽出する信号復調部と、前記複数のヘッドを一のヘッドから他のヘッドに切り替える際に、前記ヘッド間の前記サーボ信号の円周方向の時間ずれ値を、前記切り替えるセクタ位置から計算し、時間ずれ値で、前記サーボ信号を抽出するサーボゲート信号の時刻を修正するサーボゲート生成部とを有することを特徴とするデイスク装置。
(付記20)前記サーボゲート生成部は、前記デイスクの回転周波数と同一の周波数の正弦波で示す時間ずれ情報から前記時間ずれ値を計算することを特徴とする付記19のデイスク装置。
(付記21)前記サーボゲート生成部は、前記時間ずれの平均値と、前記デイスクの回転周波数と同一の周波数の正弦波及び余弦波で示す時間ずれ情報から前記時間ずれ値を計算することを特徴とする付記19のデイスク装置。
(付記22)前記サーボゲート生成部は、前記各ヘッドの前記サーボ信号の時間変動を測定して得た測定値により、前記サーボゲートの発生時刻を調整することを特徴とする付記19のデイスク装置。
(付記23)ヘッドの位置を検出するためのサーボ信号が記録されたデイスクを複数枚備えたデイスク装置において、複数のヘッドの内、一のヘッドから他のヘッドを見て、トラック番号増加方向に、前記デイスクの半径方向のずれが正方向に増加する前記一のヘッドを基準として、前記他のヘッドの半径方向の位置ずれ量を格納するテーブルと、前記テーブルから、ヘッド切り替える時に、前記ヘッドの半径方向の位置ずれ量を取り出し、前記取り出した位置ずれ量で与えられたトラック番号を変換するトラック番号変換部と、変換されたトラック番号で前記ヘッドを駆動するアクチュエータを制御する制御部とを有することを特徴とするデイスク装置。
(付記24)前記制御部は、前記一のヘッドを基準として、前記他のヘッドの前記一のヘッドに対する前記デイスクの半径方向の位置ずれ量を前記トラック番号増加方向に測定し、前記測定した位置ずれ量から、前記トラック番号増加方向に、前記デイスクの半径方向のずれが正方向に増加する前記ヘッドを基準ヘッドに決定することを特徴とする付記23のデイスク装置。