(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023142224
(43)【公開日】2023-10-05
(54)【発明の名称】磁気ディスク装置
(51)【国際特許分類】
G11B 5/596 20060101AFI20230928BHJP
G11B 21/10 20060101ALI20230928BHJP
G11B 21/08 20060101ALI20230928BHJP
【FI】
G11B5/596
G11B21/10 W
G11B21/10 V
G11B21/08 C
【審査請求】未請求
【請求項の数】9
【出願形態】OL
(21)【出願番号】P 2022048990
(22)【出願日】2022-03-24
(71)【出願人】
【識別番号】000003078
【氏名又は名称】株式会社東芝
(71)【出願人】
【識別番号】317011920
【氏名又は名称】東芝デバイス&ストレージ株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】弁理士法人酒井国際特許事務所
(72)【発明者】
【氏名】塚原 済
(57)【要約】
【課題】磁気ヘッドの位置決め誤差の補正の精度が高い磁気ディスク装置を得ること。
【解決手段】磁気ディスク装置は、磁気ディスクと、磁気ヘッドと、温度センサと、コントローラと、を備える。磁気ディスクには、第1ポストコードと、第2ポストコードと、を含むサーボデータが記録されたサーボセクタが形成されている。コントローラは、磁気ヘッドの位置決めにおいて、第1ポストコードおよび第2ポストコードと、温度センサによる検出温度である第1温度と、に基づく第3ポストコードを用いて補正を行う。
【選択図】
図6
【特許請求の範囲】
【請求項1】
第1ポストコードと、第2ポストコードと、を含むサーボデータが記録されたサーボセクタが形成された磁気ディスクと、
磁気ヘッドと、
温度センサと、
前記磁気ヘッドの位置決めにおいて、前記第1ポストコードおよび前記第2ポストコードと、前記温度センサによる検出温度である第1温度と、に基づく第3ポストコードを用いて補正を行うコントローラと、
を備える磁気ディスク装置。
【請求項2】
前記コントローラは、前記第1ポストコードおよび前記第2ポストコードが生成された際の前記磁気ディスク装置の温度である第2温度を記憶し、前記第1ポストコードおよび前記第2ポストコードと、前記第1温度と前記第2温度との差分の大きさと、に基づいて前記第3ポストコードを取得する、
請求項1に記載の磁気ディスク装置。
【請求項3】
前記第1ポストコードは前記磁気ディスク装置の温度に依存する成分であり、
前記第2ポストコードは前記磁気ディスク装置の温度に依存しない成分であり、
前記コントローラは、
第1のケースでは前記第1ポストコードと前記第2ポストコードの和を前記第3ポストコードとして取得し、
前記第1のケースよりも前記差分の大きさが大きい第2のケースでは前記第2ポストコードを前記第3ポストコードとして取得する、
請求項2に記載の磁気ディスク装置。
【請求項4】
前記第1ポストコードは前記磁気ディスク装置の温度に依存する成分であり、
前記第2ポストコードは前記磁気ディスク装置の温度に依存しない成分であり、
前記コントローラは、下記差分の大きさが0から大きくなるにしたがって1から0まで小さくなる係数を算出し、前記第1ポストコードに前記係数を乗算し、乗算後の前記第1ポストコードに前記第2ポストコードを加算することによって前記第3ポストコードを取得する、
請求項2に記載の磁気ディスク装置。
【請求項5】
前記コントローラは、前記第1ポストコードおよび前記第2ポストコードと、前記温度センサによる検出温度である第1温度と、前記磁気ディスクへのライトまたはリードの再実行の回数と、に基づいて前記第3ポストコードを取得する、
請求項1に記載の磁気ディスク装置。
【請求項6】
前記コントローラは、前記第1ポストコードおよび前記第2ポストコードが生成された際の前記磁気ディスク装置の温度である第2温度を記憶し、前記第1ポストコードおよび前記第2ポストコードと、前記第1温度と前記第2温度との差分の大きさと、前記再実行の回数と、に基づいて前記第3ポストコードを取得する、
請求項5に記載の磁気ディスク装置。
【請求項7】
前記第1ポストコードは前記磁気ディスク装置の温度に依存する成分であり、
前記第2ポストコードは前記磁気ディスク装置の温度に依存しない成分であり、
前記コントローラは、
第1のケースでは前記第1ポストコードと前記第2ポストコードの和を前記第3ポストコードとして取得し、
前記第1のケースよりも前記差分の大きさが大きくかつ前記第1のケースよりも前記再実行の回数が多い第2のケースでは前記第2ポストコードを前記第3ポストコードとして取得する、
請求項6に記載の磁気ディスク装置。
【請求項8】
前記第1ポストコードは前記磁気ディスク装置の温度に依存する成分であり、
前記第2ポストコードは前記磁気ディスク装置の温度に依存しない成分であり、
前記コントローラは、
第1のケースでは前記第1ポストコードと前記第2ポストコードの和を前記第3ポストコードとして取得し、
前記第1のケースよりも前記差分の大きさが大きくかつ前記第1のケースよりも前記再実行の回数が多い第2のケースでは前記差分の大きさが0から大きくなるにしたがって1から0まで小さくなる係数を算出し、前記第1ポストコードに前記係数を乗算し、乗算後の前記第1ポストコードに前記第2ポストコードを加算することによって前記第3ポストコードを取得する、
請求項6に記載の磁気ディスク装置。
【請求項9】
前記第1ポストコードは前記磁気ディスク装置の温度に依存する次数の成分であり、
前記第2ポストコードは前記磁気ディスク装置の温度に依存しない次数の成分である、
請求項3、請求項4、請求項7または請求項8に記載の磁気ディスク装置。
【発明の詳細な説明】
【技術分野】
【0001】
本実施形態は、磁気ディスク装置に関する。
【背景技術】
【0002】
従来、磁気ディスク装置における磁気ヘッドの位置決め誤差の一つの成分として、RPE(Repeatable Position Error)が知られている。RPEとは、バーストパターンによって定義されるトラックの軌道と実際のトラックの軌道との間の磁気ディスク(およびスピンドルモータ)の回転に同期して変動する磁気ディスク上の位置ずれ量である。RPEをキャンセルするために、目標位置を示す位置指令値に対し、RPEに相当する位置指令値基準のずれ量だけ、補正が行われる。RPEに相当する位置指令値基準のずれ量は、RRO(Repeatable RunOut)と称される。
【0003】
磁気ディスク装置の製造工程では、RROが算出され、得られたRROに相当する値が磁気ディスクに記録される。この値は、ポストコード(またはRRO bit)と称される。磁気ディスク装置が使用される際には、磁気ディスクに記録されたポストコードを用いて位置指令値に対する補正が行われる。
【先行技術文献】
【特許文献】
【0004】
【発明の概要】
【発明が解決しようとする課題】
【0005】
一つの実施形態は、磁気ヘッドの位置決め誤差の補正の精度が高い磁気ディスク装置を得ることを目的とする。
【課題を解決するための手段】
【0006】
一つの実施形態によれば、磁気ディスク装置は、磁気ディスクと、磁気ヘッドと、温度センサと、コントローラと、を備える。磁気ディスクには、第1ポストコードと、第2ポストコードと、を含むサーボデータが記録されたサーボセクタが形成されている。コントローラは、磁気ヘッドの位置決めにおいて、第1ポストコードおよび第2ポストコードと、温度センサによる検出温度である第1温度と、に基づく第3ポストコードを用いて補正を行う。
【図面の簡単な説明】
【0007】
【
図1】
図1は、実施形態の磁気ディスク装置の構成の一例を示す模式的な図である。
【
図2】
図2は、実施形態の磁気ディスクの構成の一例を示す模式的な図である。
【
図3】
図3は、実施形態のサーボセクタSVにライトされたサーボデータの一例を示す図である。
【
図4】
図4は、製造時における第1の実施形態の磁気ディスク装置の動作の一例を示すフローチャートである。
【
図5】
図5は、第1の実施形態の磁気ディスク装置の、磁気ディスクへのアクセス時の動作の一例を示すフローチャートである。
【
図6】
図6は、
図5に示されたS202の処理において実行される第1の実施形態の磁気ディスク装置の動作の一例を示すフローチャートである。
【
図7】
図7は、第3ポストコードを用いた第1の実施形態にかかるRRO補正の制御の一例を説明するためのブロック線図である。本図に示される制御は、
図6のS305において実行される。
【
図8】
図8は、
図5に示されたS202の処理において実行される第2の実施形態の磁気ディスク装置の動作の一例を示すフローチャートである。
【
図9】
図9は、
図5に示されたS202の処理において実行される第3の実施形態の磁気ディスク装置の動作の一例を示すフローチャートである。
【発明を実施するための形態】
【0008】
以降では、特に明記されない限り、RROは、磁気ディスク(およびスピンドルモータ)の回転に同期して変動する磁気ディスク上での位置ずれ量および位置指令値基準の位置ずれ量を意味することとする。
【0009】
RROが磁気ディスクに形成されたトラックの形状のみに起因する場合には、RROは、温度によって変化しない、もしくは変化したとしても非常に小さい。しかしながら、RROには、トラックの形状に起因する成分だけでなく、例えば磁気ディスクを回転させるスピンドルモータ(SPM)からの振動に起因する成分が含まれている場合がある。RROに含まれる、スピンドルモータからの振動に起因する成分は、温度によって変化し得る。
【0010】
上記のようにRROに温度によって変化する成分が含まれる場合でも、磁気ディスクに記録されていたポストコードを用いて補正が行われる際の温度が、ポストコードを生成時の温度に近ければ、RROを精度よく補正できる。しかしながら、両者の温度が著しく乖離している場合には、RROの補正の精度が低下する。
【0011】
そこで、実施形態では、磁気ディスクには予め第1ポストコードと第2ポストコードとが記録される。そして、磁気ディスク装置のコントローラは、第1ポストコードおよび第2ポストコードと、温度センサによる温度検出値と、に基づいて、実際にRROの補正に使用されるポストコードである第3ポストコードを取得する。
【0012】
上記構成によれば、ポストコードが温度に応じて補正されるので、動作時の温度がポストコードの生成時の温度から著しく乖離した場合であっても、温度の乖離に起因したRREの補正の精度の低下が抑制できる。
【0013】
より具体的に説明する。RROは、磁気ディスクの回転を基準としたそれぞれ異なる回転次数(以降、単に次数と表記する)の位置ずれ量の総和と考えることができる。よって、ポストコードは、次数毎の補正量の総和として構成される。そして、RROのうち、特定の次数(第1の次数と表記する)にかかる位置ずれ量は、温度に応じて変化し得る。
【0014】
例えば、第1の次数にかかる位置ずれ量の変化のパターンが、位相の変化である場合がある。そのような場合、生成されたポストコードのうちの第1の次数にかかる補正量の位相と、第1の次数にかかる位置ずれ量の位相との差が180度に至るまで、ポストコードの生成時の温度と動作時の温度との差分が大きくなるほど大きくなる。そして、例えば第1の次数にかかる補正量の位相と、第1の次数にかかる位置ずれ量の位相との差が180度に至ると、ポストコードに第1の次数にかかる補正量が含まれていることによって、位置決め精度が大きく悪化する。
【0015】
実施形態では、一例では、製造時に生成されたポストコードのうち、第1の次数にかかる補正量が第1ポストコードとし、他の次数(つまり温度に応じて変化しない補正量の次数)にかかる補正量が第2ポストコードとされる。そして、コントローラは、ポストコードの生成時の温度と動作時の温度との差分が小さいケースでは、第1ポストコードと第2ポストコードとの和を第3ポストコードとして使用する。コントローラは、ポストコードの生成時の温度と動作時の温度との差分が大きいケースでは、第2ポストコードを第3ポストコードとして使用する。
【0016】
これによって、ポストコードの生成時の温度と動作時の温度との差分が大きい場合に、第1の次数にかかる補正量が含まれていることに起因する位置決め精度の悪化を抑制できる。つまり磁気ヘッドの位置決め誤差の補正の精度が高い磁気ディスク装置を得ることができる。
【0017】
なお、第1の次数にかかる位置ずれ量の変化のパターンが、位相の変化ではなく他の変化(例えば振幅の変化)である場合でも、実施形態の技術は適用可能である。つまり、ポストコードの生成時の温度と動作時の温度とが乖離した場合、位置決め精度の悪化の原因である第1ポストコードを抑圧することで、位置決め精度の悪化を抑制し得る。
【0018】
以下に添付図面を参照して、実施形態にかかる磁気ディスク装置を詳細に説明する。なお、これらの実施形態により本発明が限定されるものではない。
【0019】
(第1の実施形態)
図1は、実施形態の磁気ディスク装置1の構成の一例を示す模式的な図である。
【0020】
磁気ディスク装置1は、ホスト2に接続される。磁気ディスク装置1は、ホスト2から、ライトコマンドやリードコマンドなどの、アクセスコマンドを受信することができる。
【0021】
磁気ディスク装置1は、表面に磁性層が形成された磁気ディスク11を備える。磁気ディスク装置1は、アクセスコマンドに応じて磁気ディスク11にデータをライトしたり磁気ディスク11からデータをリードしたりする。
【0022】
磁気ディスク11に対するデータのライトおよびリードは、磁気ヘッド22を介して行われる。具体的には、磁気ディスク装置1は、磁気ディスク11のほかに、スピンドルモータ12、ランプ13、アクチュエータアーム15、ボイスコイルモータ(VCM)16、温度センサ17、モータドライバIC(Integrated Circuit)21、磁気ヘッド22、ハードディスクコントローラ(HDC)23、ヘッドIC24、リードライトチャネル(RWC)25、プロセッサ26、RAM27、FROM(Flash Read Only Memory)28、およびバッファメモリ29を備える。
【0023】
磁気ディスク11は、同軸に取り付けられたスピンドルモータ(SPM)12により、所定の回転速度で回転される。スピンドルモータ12は、モータドライバIC21により駆動される。
【0024】
プロセッサ26はモータドライバIC21を介して、スピンドルモータ12の回転およびVCM16の回転を制御する。
【0025】
磁気ヘッド22は、それに備わるライトコア22wおよびリードコア22rにより、磁気ディスク11に対して情報のライトおよびリードを行う。また、磁気ヘッド22は、アクチュエータアーム15の先端に取り付けられている。磁気ヘッド22は、モータドライバIC21によって駆動されるVCM16により、磁気ディスク11の半径方向に移動される。なお、磁気ヘッド22に備わるライトコア22wおよびリードコア22rのいずれか一方、またはその両方は、それぞれ単一の磁気ヘッド22に対して複数設けられても良い。
【0026】
磁気ディスク11の回転が停止しているときなどは、磁気ヘッド22は、ランプ13上に移動される。ランプ13は、磁気ヘッド22を、磁気ディスク11から離間した位置で保持するように構成されている。
【0027】
ヘッドIC24は、リード動作時に、磁気ヘッド22が磁気ディスク11からリードした信号を増幅して出力し、RWC25に供給する。また、ヘッドIC24は、ライト動作時に、RWC25から供給されたライト対象のデータに対応した信号を増幅して、磁気ヘッド22に供給する。
【0028】
HDC23は、I/F バスを介してホスト2との間で行われるデータの送受信の制御、バッファメモリ29の制御、および読み出されたデータの誤り訂正処理などを行う。
【0029】
バッファメモリ29は、ホスト2との間で送受信されるデータのバッファとして用いられる。例えば、バッファメモリ29は、ライト対象のデータ、または磁気ディスク11からリードされたデータ、を一時記憶するために用いられる。
【0030】
バッファメモリ29は、例えば、高速な動作が可能な揮発性メモリによって構成される。バッファメモリ29を構成するメモリの種類は、特定の種類に限定されない。バッファメモリ29は、例えば、DRAM(Dynamic Random Access Memory)、SRAM(Static Random Access Memory)、またはこれらの組み合わせによって構成され得る。なお、バッファメモリ29は、任意の不揮発性メモリによって構成されてもよい。
【0031】
RWC25は、HDC23から供給されるライト対象のデータを変調してヘッドIC24に供給する。また、RWC25は、磁気ディスク11からリードされヘッドIC24から供給された信号を復調してデジタルデータとしてHDC23へ出力する。
【0032】
温度センサ17は、動作時の磁気ディスク装置1の温度を検出する。温度センサ17によって検出された温度は、第3ポストコードの取得に使用される。
【0033】
プロセッサ26は、コンピュータウェアプログラムに従って動作する回路である。プロセッサ26は、例えばCPU(Central Processing Unit)である。プロセッサ26には、RAM27、FROM(Flash Read Only Memory)28、バッファメモリ29、および温度センサ17が接続されている。
【0034】
FROM28は、不揮発性メモリである。FROM28には、ファームウェアプログラムおよび各種の動作パラメータなどが格納される。なお、ファームウェアプログラムは、磁気ディスク11に格納されてもよい。
【0035】
RAM27は、例えばDRAM、SRAM、またはこれらの組み合わせによって構成される。RAM27は、プロセッサ26によって動作用のメモリとして使用される。RAM27は、ファームウェアプログラムがロードされる領域、および各種の管理データが一時記憶される領域として使用される。
【0036】
プロセッサ26は、FROM28または磁気ディスク11に格納されているファームウェアプログラムに従って、この磁気ディスク装置1の全体的な制御を行う。例えば、プロセッサ26は、ファームウェアプログラムをFROM28または磁気ディスク11からRAM27にロードし、ロードされたファームウェアプログラムに従って、モータドライバIC21、ヘッドIC24、RWC25、HDC23などの制御を実行する。
【0037】
なお、HDC23、RWC25、およびプロセッサ26を含む構成は、コントローラ30と見なすこともできる。コントローラ30は、これらのほかに、他の要素(例えばRAM27、FROM28、またはバッファメモリ29など)を含んでいてもよい。
【0038】
また、プロセッサ26の機能の一部または全部は、FPGA(Field-Programmable Gate Array)またはASIC(Application Specific Integrated Circuit)などのハードウェア回路によって実現されてもよい。
【0039】
図2は、実施形態の磁気ディスク11の構成の一例を示す模式的な図である。なお、本図には、磁気ディスク11の回転方向の一例が示されている。磁気ヘッド22は、磁気ディスク11の回転によって磁気ディスク11に対して相対的に移動する。したがって、ライト/リード方向、即ち円周方向に沿った磁気ヘッド22によってデータがライトまたはリードされる方向は、磁気ディスク11の回転方向の逆向きである。
【0040】
磁気ディスク11には、製造工程において、例えばサーボライタによって、またはセルフサーボライト(SSW)によって、磁気ヘッド22の位置決めに使用されるサーボデータがライトされる。
図2によれば、サーボデータがライトされたサーボ領域の配置の一例として半径方向に放射状にかつ円周方向に所定の間隔を空けて配置された複数のサーボ領域SVが形成されている。円周方向に連続する2つのサーボ領域SVの間には、データがライトされるデータ領域DAが配置される。
【0041】
磁気ディスク11の半径方向には、同心円の複数のトラック41が設定される。データ領域DAには、各トラック41に沿って複数のデータセクタが連続的に形成される。サーボ領域SVにライトされたサーボデータは、目標とされるトラック41上に磁気ヘッド22のリードコア22rまたはライトコア22wを位置決めするために使用される。目標とされるトラック41上にリードコア22rまたはライトコア22wが位置決めされた状態で、目標とされるデータセクタにユーザデータのライトまたはリードが実行される。以降、トラック41上においてサーボ領域SVによって区分される領域を、サーボセクタSVと表記する。
【0042】
図3は、実施形態のサーボセクタSVにライトされたサーボデータの一例を示す図である。この例では、サーボセクタSVには、プリアンブル、サーボマーク、セクタアドレス、シリンダアドレス、バーストパターン、第1ポストコード、および第2ポストコードが、この順番でライト/リード方向にライトされている。
【0043】
なお、円周方向における位置関係について定義する。ライト/リード方向に沿って第1のデータと第2のデータとがライトされており、かつ第1のデータは第2のデータよりも先にリードされる領域にライトされている場合、第2のデータがライトされた領域からみた第1のデータの領域に向かう向きを、第2のデータがライトされた領域の「前方」と定義する。反対に、第1のデータがライトされた領域からみた第2のデータの領域に向かう向きを、第1のデータがライトされた領域の「後方」と定義する。第1の領域に言及しているときに「直前の第2の領域」と表記した場合、「直前の第2の領域」は、第1の領域を磁気ヘッド22が通過する前に最後に磁気ヘッド22が通過する第2の領域を指すこととする。第1の領域に言及しているときに「直後の第2の領域」と表記した場合、「直後の第2の領域」は、第1の領域を磁気ヘッド22が通過した後に最初に磁気ヘッド22が通過する第2の領域を指すこととする。
【0044】
プリアンブルは、サーボパターンの再生信号への同期のための信号である。サーボマークは、サーボデータの開始を示す。セクタアドレスは、トラック41上の各サーボセクタSVを識別するためのIDである。シリンダアドレスは、磁気ディスク11に設けられた各トラック41を識別するためのIDである。バーストパターンは、トラック41のトラックセンタに対する磁気ヘッド22の半径方向の位置ずれ量を検出するために使用されるデータであり、所定の周期の繰り返しパターンから構成される。例えば、シリンダアドレスは例えば整数値として与えられており、バーストパターンを復調することによってシリンダアドレスが示す位置を基準とした小数点以下のオフセット量を得ることが可能である。
【0045】
第1ポストコードおよび第2ポストコードは、RROを補正するためのデータである。第1ポストコードは、製造時(即ち製造工程時)に生成されたポストコードのうちの温度に応じて変化する次数にかかる成分である。第2ポストコードは、製造時に生成されたポストコードのうちの温度に応じて変化しない次数にかかる成分である。
【0046】
なお、RROを補正すること、つまり目標位置を示す位置指令値に対してポストコードを適用して位置決めすることを、RRO補正、と表記する。
【0047】
各サーボセクタSVに記録された第1ポストコードおよび第2ポストコードのセットは、典型的には、直後のサーボセクタSVの位置におけるRRO補正に使用される。しかしながら、各サーボセクタSVに記録された第1ポストコードおよび第2ポストコードのセットは、2以上のサーボセクタSVだけ後方のサーボセクタSVの位置におけるRRO補正に使用されてもよい。
【0048】
また、1つのサーボセクタSVに、後続する1以上のサーボセクタSVの各位置におけるRRO補正に使用される1セット以上の第1ポストコードおよび第2ポストコードが記録されてもよい。
【0049】
このように、1つのサーボセクタSVにはいずれのサーボセクタSVの位置におけるRRO補正に使用される第1ポストコードおよび第2ポストコードのセットが格納されてもよい。また、1つのサーボセクタSVには第1ポストコードおよび第2ポストコードのセットが2以上記録されてもよい。
【0050】
次に、第1の実施形態にかかる磁気ディスク装置1の動作を説明する。
【0051】
図4は、製造時における第1の実施形態の磁気ディスク装置1の動作の一例を示すフローチャートである。製造工程では、まず、磁気ディスク装置1が組み上げられ、第1ポストコードおよび第2ポストコードを除くサーボデータが記録される。そして、磁気ディスク装置1は、本図に示される一連の動作によって第1ポストコードおよび第2ポストコードの記録を行う。
図4に示される一連の動作は、コントローラ30による制御の下で実行される。一例では、プロセッサ26がファームウェアプログラムに基づいて
図4に示される一連の動作を実現する。
図4に示される一連の動作を実現するファームウェアプログラムは、エンドユーザによる磁気ディスク装置1の使用の際に用いられるファームウェアプログラムに含まれていてもよいし、エンドユーザによる磁気ディスク装置1の使用の際に用いられるファームウェアプログラムと異なっていてもよい。なお、
図4に示される一連の動作のうちの一部または全部は、プロセッサ26以外の構成要素、例えばHDC23など、によって実現されてもよい。
【0052】
まず、コントローラ30は、RPEの測定を行う(S101)。コントローラ30は、サーボ系の感度関数を測定する(S102)。コントローラ30は、RPEの測定値に対して感度関数の逆特性を適用することによって、RROを算出する(S103)。
【0053】
続いて、コントローラ30は、RROのうちの温度に依存する次数の成分を第1ポストコードとしてサーボセクタSVに記録する(S104)。なお、温度に依存する次数は、設計者によって予め特定されていることとする。または、コントローラ30は、S104の前に、測定または計算によって温度に依存する次数を特定してもよい。
【0054】
コントローラ30は、RROのうちの残りの次数の成分を第2ポストコードとしてサーボセクタSVに記録する(S105)。
【0055】
なお、コントローラ30は、S101~S105の各処理を、全てのサーボセクタSVについて実行する。
【0056】
コントローラ30は、S101~S105の処理が実行された際の温度、つまり製造時温度を、所定の位置に不揮発に記録する(S106)。製造時温度の記録位置は、FROM28であってもよいし、磁気ディスク11であってもよい。製造時温度は、ファームウェアプログラムに組み込まれてもよい。
【0057】
S101~S105の処理が実行される工場または製造装置においては、環境温度が所定の温度に制御されている。コントローラ30は、製造時温度を、製造装置または製造者による入力によって取得してもよい。または、コントローラ30は、製造時温度を、温度センサ17によって取得してもよい。
【0058】
以降、S106の処理によって記録される製造時温度を、製造時温度Tiと表記する。
【0059】
S106が完了すると、製造時における第1の実施形態の磁気ディスク装置1の動作が終了する。
【0060】
図5は、第1の実施形態の磁気ディスク装置1の磁気ディスク11へのアクセス時の動作の一例を示すフローチャートである。磁気ディスク11へのアクセスは、データのライトまたはデータのリードである。つまり、
図5に示される一連の動作は、磁気ディスク11へのライトの動作および磁気ディスク11へのリードの動作の何れにおいても実行され得る。
【0061】
コントローラ30(例えばRWC25)は、サーボデータの復調を行う(S201)。コントローラ30は、復調されたサーボデータに基づく位置指令値に対し、RRO補正を実行する(S202)。コントローラ30は、RRO補正が適用された位置決め制御の下で、データ領域DAに対してアクセスを実行する(S203)。
【0062】
S202では、直前のサーボセクタSVから復調されたポストコード(第1ポストコードおよび第2ポストコード)に基づいてRRO補正が実行される。なお、前述されたように、ポストコードのリード元のサーボセクタSVとRRO補正が実行される位置のサーボセクタSVとの関係はこれに限定されない。
【0063】
続いて、コントローラ30はアクセスに成功したか否かを判定する(S204)。アクセスに成功した場合(S204:Yes)、コントローラ30は、上記データ領域DAに対するアクセスの動作が終了する。
【0064】
なお、リードの場合は、アクセスに成功するとは、データ領域DAから誤りを含まないデータを取得することに成功することである。例えば、コントローラ30は、誤り訂正機能を備えている。コントローラ30は、データ領域DAから取得されたデータに対して誤り訂正を実行し、これによって誤りを含まないデータを取得できれば、リードに成功したと判定する。誤り訂正による訂正が不能であれば、コントローラ30はリードに失敗したと判定する。
【0065】
また、ライトの場合は、アクセスに成功するとは、例えば、半径方向におけるライト位置のトラック41のセンターからの位置ずれ量が小さいことである。コントローラ30は、当該位置ずれ量が所定の小さい値に満たない場合には、ライトに成功したと判定する。コントローラ30は、当該位置ずれ量が所定の小さい値を超えた場合には、ライトに失敗したと判定する。
【0066】
なお、アクセスに成功したか否かの判定方法は上記の例に限定されない。
【0067】
アクセスに失敗した場合(S204:No)、コントローラ30は、S201からS204までの処理を再び実行することができる。S201からS204までの処理を再実行することは、リトライアクセスと称される。しかしながら、リトライアクセスを実行できる回数には上限が設けられている。その上限を、ここでは第1しきい値と表記する。第1しきい値は、0以上の整数値である。リトライアクセスの実行回数は、データセクタ毎にカウントされてもよいし、サーボセクタSV毎にカウントされてもよいし、トラック41毎にカウントされてもよい。
【0068】
アクセスに失敗した場合(S204:No)、コントローラ30は、リトライアクセスの実行回数が第1しきい値に達したか否かを判定する(S205)。リトライアクセスの実行回数が第1しきい値に達していない場合(S205:No)、S201に制御が移行する。リトライアクセスの実行回数が第1しきい値に達した場合(S205:Yes)、コントローラ30は、所定のエラー処理を実行して(S206)、アクセス動作が終了する。
【0069】
なお、エラー処理は、特定の処理に限定されない。例えば、コントローラ30は、エラー処理として、ホスト2に対し、アクセスに失敗した旨を通知してもよい。
【0070】
図6は、
図5に示されたS202の処理において実行される第1の実施形態の磁気ディスク装置1の動作の一例を示すフローチャートである。
【0071】
まず、コントローラ30は、温度センサ17から検出温度を取得する(S301)。S301において取得された検出温度を、検出温度Tdと表記する。
【0072】
続いて、コントローラ30は、検出温度Tdと製造時温度Tiとの差分の大きさが所定値以上であるか否かを判定する(S302)。S302において検出温度Tdと製造時温度Tiとの差分の大きさと比較される所定値を、第2しきい値と表記する。また、検出温度Tdと製造時温度Tiとの差分の大きさを、Tdiffと表記する。
【0073】
Tdiffが第2しきい値以上である場合(S302:Yes)、コントローラ30は、第2ポストコードを第3ポストコードとして取得する(S303)。Tdiffが第2しきい値以上でない場合(S302:No)、コントローラ30は、第1ポストコードと第2ポストコードとの和を第3ポストコードとして取得する(S304)。
【0074】
S303またはS304の後、コントローラ30は、第3ポストコードを用いてRRO補正を実行し(S305)、動作が終了する。
【0075】
なお、Tdiffが第2しきい値と等しい場合の処理は
図6に示された例に限定されない。Tdiffが第2しきい値と等しい場合、コントローラ30は、S304の処理を実行してもよい。
【0076】
また、S301の処理の実行タイミングは上記された例に限定されない。コントローラ30は、例えば磁気ディスク装置1の温度を定期的に取得し、S202では、最後に取得された温度を検出温度Tdとして使用してもよい。
【0077】
なお、
図6に示された説明において、Tdiffが第2しきい値以上でないことは、第1のケースの一例である。Tdiffが第2しきい値以上であることは、第1のケースよりもTdiffが大きい第2のケースの一例である。
【0078】
図7は、第3ポストコードを用いた第1の実施形態にかかるRRO補正の制御の一例を説明するためのブロック線図である。本図に示される制御は、
図6のS305において実行される。
【0079】
図7に示される例によれば、加算器31によって、目標位置を示す位置指令値から、VCM16の出力の結果として磁気ヘッド22の移動した現在位置が減算される。これによって、VCM16の出力のフィードバックが行われる。
【0080】
続いて、加算器32によって、加算器31の出力から第3ポストコードが減算される。これによって、位置指令値に対しRROの分の補正が行われる。
【0081】
加算器32の出力は、コントローラ30において所定のフィルタ33が作用せしめられた後、VCM16に送られる。VCM16は、RRO補正後の指令値に応じた位置に磁気ヘッド22を移動せしめる。
【0082】
以上述べたように、第1の実施形態によれば、磁気ディスク11には、第1ポストコードと、第2ポストコードと、を含むサーボデータが記録されたサーボセクタSVが形成されている。第1ポストコードは磁気ディスク装置1の温度に依存する次数の成分であり、第2ポストコードは磁気ディスク装置1の温度に依存しない成分である。コントローラ30は、第1のケースでは第1ポストコードと第2ポストコードの和を第3ポストコードとして取得する。コントローラ30は、温度センサによる検出温度と、第1ポストコードと第2ポストコードとが生成された際の温度と、の差分が第1のケースよりも大きい第2のケースでは、第2ポストコードを第3ポストコードとして取得する。そして、コントローラ30は、磁気ヘッド22の位置決めにおいて、第3ポストコードを用いて補正を行う。
【0083】
ポストコードの生成時の温度と動作時の温度とが乖離した場合、位置決め精度の悪化の原因である第1ポストコードを含まないポストコードが第3ポストコードとして使用され、これによって位置決め精度の悪化が抑制され得る。つまり、磁気ヘッドの位置決め誤差の補正の精度が高い磁気ディスク装置1を得ることができる。
【0084】
(第2の実施形態)
第1ポストコードおよび第2ポストコードと、温度と、に基づいて第3ポストコードを取得するアルゴリズムは、種々に変更可能である。第2の実施形態では、第3ポストコードを取得するアルゴリズムの別の例を説明する。なお、第3ポストコードを取得する動作の他の事項は第1の実施形態と同様であるので、第2の実施形態の説明では、第3ポストコードを取得する動作のみ説明する。
【0085】
図8は、
図5に示されたS202の処理において実行される第2の実施形態の磁気ディスク装置1の動作の一例を示すフローチャートである。
【0086】
図8に示されるように、第2の実施形態にかかる動作は、S303の処理に替えてS401~S404の処理が実行される点で、第1の実施形態と異なる。
【0087】
具体的には、Tdiffが第2しきい値以上である場合(S302:Yes)、コントローラ30は、まず、下記の式(1)に基づいて一時的に使用される係数Ktmpを算出する(S401)。ただし、下記の式(1)において、Cは第2しきい値よりも大きい実数値の定数である。
Ktmp=1-(Tdiff/C) ・・・(1)
【0088】
そして、コントローラ30は、Ktmpが0未満であるか否かを判定する(S402)。Ktmpが0未満である場合(S402:Yes)、コントローラ30は、Ktmpに0をセットする(S403)。Ktmpが0未満でない場合(S402:No)、コントローラ30は、S403の処理をスキップする。
【0089】
続いて、コントローラ30は、第1ポストコードにKtmpを乗算し、乗算後の第1ポストコードに第2ポストコードを加算することによって、第3ポストコードを取得する(S404)。
【0090】
Tdiffが第2しきい値以上でない場合(S302:No)、コントローラ30は、第1ポストコードと第2ポストコードとの和を第3ポストコードとして取得する(S304)。
【0091】
S404またはS304の後、コントローラ30は、第3ポストコードを用いてRRO補正を実行する(S305)。
【0092】
図8のS401~S404で示されたアルゴリズムによれば、係数Ktmpは、Diffが0から大きくなるにしたがって1から0まで小さくなる。係数Ktmpが第1ポストコードに乗算され、乗算後の第1ポストコードに第2ポストコードが加算されて、第3ポストコードが得られる。このように得られた第3ポストコードによれば、Tdiffが大きくなるにつれて第3ポストコードに占める第1ポストコードにかかる成分の量が少なくなる。そして、TdiffがC以上の場合、第3ポストコードは第2ポストコードと等しくなる。
【0093】
このように、コントローラ30は、Diffが0から大きくなるにしたがって1から0まで小さくなる係数Ktmpを算出し、第1ポストコードに係数Ktmpを乗算し、乗算後の第1ポストコードに第2ポストコードを加算することによって第3ポストコードを取得するよう構成されてもよい。
【0094】
上記構成によって、コントローラ30は、ポストコードの生成時の温度と動作時の温度との乖離量(即ちTdiff)が大きくなるほど位置決め精度の悪化の原因である第1ポストコードの成分を抑圧することができるので、位置決め精度の悪化を抑制し得る。つまり、磁気ヘッドの位置決め誤差の補正の精度が高い磁気ディスク装置1を得ることができる。
【0095】
なお、
図8のS401~S404に示された例では、コントローラ30は、Tdiffが0から大きくなるにしたがって第3ポストコードがリニアに減少するアルゴリズムに基づいて第3ポストコードを取得した。第3ポストコードの減少量は、Tdiffの増加量に対して必ずしもリニアでなくてもよい。
【0096】
また、第1の実施形態と同様、Tdiffが第2しきい値と等しい場合の処理は
図8に示された例に限定されない。
【0097】
(第3の実施形態)
第3の実施形態では、第3ポストコードを取得するアルゴリズムのさらに別の例を説明する。なお、第3ポストコードを取得する動作の他の事項は第1の実施形態と同様であるので、第3の実施形態の説明では、第3ポストコードを取得する動作のみ説明する。
【0098】
図9は、
図5に示されたS202の処理において実行される第3の実施形態の磁気ディスク装置1の動作の一例を示すフローチャートである。
【0099】
第3の実施形態では、コントローラ30は、第1ポストコードおよび第2ポストコードと、温度と、リトライアクセスの実行回数と、に基づいて第3ポストコードを取得する。より詳細には、Tdiffが第2しきい値以上であったとしても、リトライアクセスの実行回数が少なければ、コントローラ30は、Tdiffが第2しきい値以上でない場合と同じ方法で第3ポストコードを取得する。例えば、リトライアクセスの実行回数に対して第1しきい値よりも小さい第3しきい値が設定されており、Tdiffが第2しきい値以上であり、かつリトライアクセスの実行回数が第3しきい値以上である場合に、コントローラ30は、第1ポストコードの成分を抑圧する。
【0100】
図9に示されるように、第3の実施形態においても、第1の実施形態と同様に、S301、S302の処理が実行される。そして、Tdiffが第2しきい値以上である場合(S302:Yes)、コントローラ30は、リトライアクセスの実行回数が第3しきい値以上であるか否かを判定する(S501)。第3しきい値は、第1しきい値よりも小さい1以上の整数値である。なお、ここでは、第1しきい値は2以上の整数値とされる。
【0101】
リトライアクセスの実行回数が第3しきい値以上である場合(S501:Yes)、コントローラ30は、第2ポストコードを第3ポストコードとして取得する(S303)。Tdiffが第2しきい値以上でない場合(S302:No)、またはリトライアクセスの実行回数が第3しきい値以上でない場合(S501:No)、コントローラ30は、第1ポストコードと第2ポストコードとの和を第3ポストコードとして取得する(S304)。
【0102】
S303またはS304の後、コントローラ30は、第3ポストコードを用いてRRO補正を実行し(S305)、動作が終了する。
【0103】
なお、
図9に示された例において、Tdiffが第2しきい値以上でないかまたは実施されたリトライアクセスの回数が第3しきい値以上でないことは、第1のケースの一例である。Tdiffが第2しきい値以上であり、かつ実施されたリトライアクセスの回数が第3しきい値以上であることは、第1のケースよりもTdiffが大きくかつ第1のケースよりもリトライアクセスの実行回数が多い第2のケースの一例である。
【0104】
また、第1の実施形態と同様、Tdiffが第2しきい値と等しい場合の処理は
図9に示された例に限定されない。
【0105】
このように、コントローラ30は、第1のケースでは第1ポストコードと第2ポストコードの和を第3ポストコードとして取得する。コントローラ30は、第1のケースよりもTdiffが大きくかつ第1のケースよりもリトライアクセスの実行回数が多い第2のケースでは、第2ポストコードを第3ポストコードとして取得する。
【0106】
例えばRROのうちの温度に依存する成分にかかる位置ずれ量が温度に応じて複雑に変化する場合などでは、第1の実施形態または第2の実施形態の第3ポストコードの取得方法では精度良く位置決めできない場合があり得る。第3の実施形態では、Tdiffが第2しきい値以上であっても、リトライアクセスの実行回数が基準に満たない場合には、コントローラ30は、Tdiffが第2しきい値に満たない場合と同じ方法で第3ポストコードを取得する。そして、リトライアクセスの実行回数が多くなると、つまり第1ポストコードと第2ポストコードとの和によって取得された第3ポストコードによればアクセスが困難である場合には、コントローラ30は、別の方法で第3ポストコードを取得する。つまり、Tdiffが第2しきい値以上になった場合、2種類の異なる方法で取得された第3ポストコードを用いてリトライアクセスを行われ得る。よって、RROのうちの温度に依存する成分にかかる位置ずれ量が温度に応じて複雑に変化する場合は、アクセスに成功する可能性が向上する。
【0107】
なお、第3の実施形態においても、第2のケースでは、コントローラ30は、第2の実施形態で述べた
図8のS401~S404に示された方法で第3ポストコードを取得してもよい。つまり、コントローラ30は、第2のケースでは、Diffが0から大きくなるにしたがって1から0まで小さくなる係数Ktmpを算出し、第1ポストコードに係数Ktmpを乗算し、乗算後の第1ポストコードに第2ポストコードを加算することによって第3ポストコードを取得するよう構成されてもよい。
【0108】
一般に、ライトの場合は、リードの場合に比べ、より厳しい位置決め精度が必要である。よって、第1の実施形態、第2の実施形態、および第3の実施形態で述べた技術は、ライトの動作に対して適用された場合、位置決め精度の向上による効果が大きい。なお、第1の実施形態、第2の実施形態、および第3の実施形態で述べた技術は、磁気ディスク11へのデータのライト、磁気ディスク11からのデータのリード、またはそれらの両方に適用され得る。
【0109】
また、第1の実施形態、第2の実施形態、および第3の実施形態では、第1ポストコードはRROに基づいて生成されたポストコードのうちの温度に依存する次数の成分であり、第2ポストコードはRROに基づいて生成されたポストコードのうちの温度に依存しない次数の成分として説明した。RROに基づいて生成されたポストコードは、必ずしも次数の単位で、温度に依存する成分と、温度に依存しない成分と、に分けられている必要はない。一つの次数にかかる成分が、温度に依存する成分と、温度に依存しない成分と、に分けられていてもよい。つまり、コントローラ30は、RROに基づいて生成されたポストコードのうちの温度に依存する成分を第1ポストコードとしてサーボセクタSVに記録し、RROに基づいて生成されたポストコードのうちの温度に依存しない成分を第2ポストコードとしてサーボセクタSVに記録してもよい。
【0110】
また、第1ポストコードと第2ポストコードとに基づく簡単な演算によって温度に依存する成分と温度に依存しない成分とが特定可能である限り、第1ポストコードおよび第2ポストコードの定義は上記説明された例に限定されない。例えば、コントローラ30は、RROに基づいて生成されたポストコードのうちの温度に依存する成分を第1ポストコードとして記録し、RROに基づいて生成されたポストコードを第2ポストコードとして記録してもよい。そのような場合、コントローラ30は、第2ポストコードから第1ポストコードを減算することによってRROに基づいて生成されたポストコードに含まれる温度に依存しない成分を得ることができる。コントローラ30は、サーボセクタSVに記録された第2ポストコードからサーボセクタSVに記録された第1ポストコードを減算することによって得られたポストコードを、第3ポストコードを取得する動作(例えば
図6、
図8、または
図9に示された動作)における第2ポストコードとして使用するよう、構成されてもよい。
【0111】
第1の実施形態、第2の実施形態、および第3の実施形態に説明されたように、コントローラ30は、磁気ヘッド22の位置決めにおいて、第1ポストコードおよび第2ポストコードと、温度センサ17による検出温度と、に基づく第3ポストコードを用いて補正を行うように構成される。これによって、磁気ヘッド22の位置決め誤差の補正の精度が高い磁気ディスク装置1を得ることができる。
【0112】
本発明のいくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【0113】
1 磁気ディスク装置、2 ホスト、11 磁気ディスク、12 スピンドルモータ、13 ランプ、15 アクチュエータアーム、16 VCM、17 温度センサ、21 モータドライバIC、22 磁気ヘッド、22r リードコア、22w ライトコア、23 HDC、24 ヘッドIC、25 RWC、26 プロセッサ、27 RAM、28 FROM、29 バッファメモリ、30 コントローラ、31,32 加算器、33 フィルタ、41 トラック。