(57)【要約】【課題】信頼性を向上できる磁気ディスク装置及びライト方法を提供することである。【解決手段】本実施形態に係る磁気ディスク装置は、ディスクと、ディスクに対してデータをライトするヘッドと、ディスクの周方向と平行な第１方向に沿った第１トラックにデータをシーケンシャルにライトし、第１トラックのオフセット量を検出し、第１トラックのオフセット量に基づいて第１方向に沿う第１補正軌道を生成し、ディスクの径方向に平行な第２方向にヘッドを移動した後、第２トラックで第１セクタから第１補正軌道に沿ってデータをシーケンシャルにライトし、第１補正軌道に対する第１セクタのオフセット方向を検出し、第１セクタが第１補正軌道に対して第２方向にオフセットしていることを検出した場合、第１セクタのオフセット方向に応じて第２補正軌道を生成し、第２補正軌道に基づいてヘッドを制御するコントローラと、を備える。【選択図】図１
2018113085.tif 000002
【特許請求の範囲】
【請求項１】
ディスクと、
前記ディスクに対してデータをライトするヘッドと、
前記ディスクの周方向と平行な第１方向に沿った第１トラックにデータをシーケンシャルにライトし、前記第１トラックのオフセット量を検出し、前記第１トラックのオフセット量に基づいて前記第１方向に沿う第１補正軌道を生成し、前記ディスクの径方向に平行な第２方向に前記ヘッドを移動した後、第２トラックで第１セクタから前記第１補正軌道に沿ってデータをシーケンシャルにライトし、前記第１補正軌道に対する前記第１セクタのオフセット方向を検出し、前記第１セクタが前記第１補正軌道に対して前記第２方向にオフセットしていることを検出した場合、前記第１セクタのオフセット方向に応じて第２補正軌道を生成し、前記第２補正軌道に基づいて前記ヘッドを制御するコントローラと、を備える磁気ディスク装置。
【請求項２】
前記コントローラは、前記第１セクタのオフセット量を検出し、前記第１セクタが前記第１補正軌道に対して前記第２方向にオフセットしていることを検出した場合、前記第１セクタのオフセット量に応じて前記第２補正軌道を生成する、請求項１に記載の磁気ディスク装置。
【請求項３】
前記コントローラは、前記第２トラックのオフセット量を検出し、前記第２トラックのオフセット量に基づいて前記第１方向に沿う第３補正軌道を生成し、前記第２トラックから前記第２方向に前記ヘッドを移動した後、前記第３補正軌道に沿って第３トラックにデータをシーケンシャルにライトし、前記第２トラックで前記第１セクタが、周方向において前記第１セクタとシーケンシャルにライトする方向と反対側に隣接する第２セクタに対して、径方向にずれていることを検出した場合、前記第１補正軌道に対する前記第１セクタのオフセット方向及びオフセット量を検出し、前記第１セクタが前記第１補正軌道に対して前記第２方向にオフセットしていることを検出した場合、前記第１セクタのオフセット量に応じて前記第２補正軌道を生成し、前記第２補正軌道に基づいて前記第３トラックをライトする、請求項２に記載の磁気ディスク装置。
【請求項４】
前記コントローラは、前記第３トラックの第３セクタをライトするときに、前記第３セクタの前記第１方向に離間した前記第１セクタを検出し、前記第１セクタが前記第１補正軌道に対して前記第２方向にオフセットしていることを検出した場合、前記第３トラックの前記第３セクタと前記第２トラックの前記第１セクタの前記第２方向に位置する前記第３トラックの第４セクタとを接続する前記第２補正軌道を生成する、請求項３に記載の磁気ディスク装置。
【請求項５】
前記コントローラは、前記第３トラックの第３セクタをライトするときに、前記第３セクタの前記第１方向に離間した前記第１セクタを検出し、前記第１セクタが前記第１補正軌道に対して前記第２方向にオフセットしていることを検出した場合、前記第１補正軌道に対する前記第２セクタのオフセット方向を検出し、前記第２セクタが前記第１補正軌道に対して前記第２方向と反対方向にオフセットしていることを検出した場合、前記第３トラックの前記第３セクタと前記第２トラックの前記第１セクタの前記第２方向に位置する前記第３トラックの第４セクタとを接続する前記第２補正軌道を生成する、請求項３に記載の磁気ディスク装置。
【請求項６】
前記コントローラは、前記第３セクタから前記第４セクタまでの間の複数のセクタに対応する補正値をそれぞれ生成し、生成した複数の補正値に基づいて前記第２補正軌道を生成する、請求項４又は５に記載の磁気ディスク装置。
【請求項７】
前記コントローラは、前記第３トラックの第３セクタをライトするときに、前記第３セクタの前記第１方向に離間した前記第１セクタを検出し、前記第１セクタが前記第１補正軌道に対して前記第２方向にオフセットしていることを検出した場合、前記第３トラックの前記第３セクタと前記第２トラックの前記第１セクタの前記第２方向に位置する前記第３トラックの第４セクタとを接続し、且つ前記第４セクタと前記第４セクタの前記第１方向に離間した第５セクタとを接続する前記第２補正軌道を生成する、請求項３に記載の磁気ディスク装置。
【請求項８】
前記コントローラは、前記第３トラックの第３セクタをライトするときに、前記第３セクタの前記第１方向に離間した前記第１セクタを検出し、前記第１セクタが前記第１補正軌道に対して前記第２方向にオフセットしていることを検出した場合、前記第３セクタから前記第２セクタの前記第２方向と反対方向に隣接する第６セクタの一つ前の第７セクタまで前記第３トラックのトラックセンタに沿った前記第２補正軌道を生成する、請求項３に記載の磁気ディスク装置。
【請求項９】
前記第２トラックは、前記第１トラックの一部に重ね書きされ、前記第３トラックは、前記第２トラックの一部に重ね書きされている、請求項３乃至８のいずれか１項に記載の磁気ディスク装置。
【請求項１０】
前記コントローラは、前記第２トラックの第８セクタをライトするときに、前記第８セクタの前記第１方向に離間した前記第１セクタを検出し、前記第１セクタが前記第１補正軌道に対して前記第２方向にオフセットしていることを検出した場合、前記第８セクタと前記第１セクタとを接続する前記第２補正軌道を生成する、請求項２に記載の磁気ディスク装置。
【請求項１１】
第１トラックと、前記第１トラックの周方向に平行な第１方向にライトされ、前記第１トラックに垂直方向に平行な第２方向で前記第１トラックの一部に重ね書きされ、第１セクタと前記第１セクタの前記第１方向と反対方向に隣接する第２セクタとを有し、前記第１セクタが前記第２セクタに対して前記第２方向にずれている第２トラックと、前記第２トラックの前記第２方向の一部に重ね書きされ、第３セクタと前記第１セクタの前記第２方向に位置する第４セクタとを有し、前記第３セクタから前記第４セクタまで前記第２方向に傾斜する第１領域を有する第３トラックとを備えるディスクと、前記ディスクに対してデータをライトするヘッドと、前記ヘッドを制御するコントローラとを備える磁気ディスク装置。
【請求項１２】
前記第３トラックは、前記第１領域の前記第１方向に位置し、前記第４セクタの前記第１方向に離間した第５セクタを有し、前記第４セクタから前記第５セクタまで前記第１方向と反対方向に傾斜する第２領域を備える、請求項１１に記載の磁気ディスク装置。
【請求項１３】
ディスクと、前記ディスクに対してデータをライトするヘッドとを備える磁気ディスク装置に適用されるライト方法であって、
前記ディスクの周方向と平行な第１方向に沿った第１トラックにデータをシーケンシャルにライトし、
前記第１トラックのオフセット量を検出し、
前記第１トラックのオフセット量に基づいて前記第１方向に沿う第１補正軌道を生成し、
前記ディスクの径方向に平行な第２方向に前記ヘッドを移動した後、第２トラックで第１セクタから前記第１補正軌道に沿ってデータをシーケンシャルにライトし、
前記第１補正軌道に対する前記第１セクタのオフセット方向を検出し、
前記第１セクタが前記第１補正軌道に対して前記第２方向にオフセットしていることを検出した場合、前記第１セクタのオフセット方向に応じて第２補正軌道を生成し、
前記第２補正軌道に基づいて前記ヘッドを制御する、ライト方法。
【請求項１４】
前記第１セクタのオフセット量を検出し、
前記第１セクタが前記第１補正軌道に対して前記第２方向にオフセットしていることを検出した場合、前記第１セクタのオフセット量に応じて前記第２補正軌道を生成する、請求項１３に記載のライト方法。
【請求項１５】
前記第２トラックのオフセット量を検出し、
前記第２トラックのオフセット量に基づいて前記第１方向に沿う第３補正軌道を生成し、
前記第２トラックから前記第２方向に前記ヘッドを移動した後、前記第３補正軌道に沿って第３トラックにデータをシーケンシャルにライトし、
前記第２トラックで前記第１セクタが、周方向において前記第１セクタとシーケンシャルにライトする方向と反対側に隣接する第２セクタに対して、径方向にずれていることを検出した場合、前記第１補正軌道に対する前記第１セクタのオフセット方向及びオフセット量を検出し、
前記第１セクタが前記第１補正軌道に対して前記第２方向にオフセットしていることを検出した場合、前記第１セクタのオフセット量に応じて前記第２補正軌道を生成し、
前記第２補正軌道に基づいて前記第３トラックをライトする、請求項１４に記載のライト方法。
【請求項１６】
前記第３トラックの第３セクタをライトするときに、前記第３セクタの前記第１方向に離間した前記第１セクタを検出し、
前記第１セクタが前記第１補正軌道に対して前記第２方向にオフセットしていることを検出した場合、前記第３トラックの前記第３セクタと前記第２トラックの前記第１セクタの前記第２方向に位置する前記第３トラックの第４セクタとを接続する前記第２補正軌道を生成する、請求項１５に記載のライト方法。
【請求項１７】
前記第３トラックの第３セクタをライトするときに、前記第３セクタの前記第１方向に離間した前記第１セクタを検出し、
前記第１セクタが前記第１補正軌道に対して前記第２方向にオフセットしていることを検出した場合、前記第１補正軌道に対する前記第２セクタのオフセット方向を検出し、
前記第２セクタが前記第１補正軌道に対して前記第２方向と反対方向にオフセットしていることを検出した場合、前記第３トラックの前記第３セクタと前記第２トラックの前記第１セクタの前記第２方向に位置する前記第３トラックの第４セクタとを接続する前記第２補正軌道を生成する、請求項１５に記載のライト方法。
【請求項１８】
前記第３セクタから前記第４セクタまでの間の複数のセクタに対応する補正値をそれぞれ生成し、
生成した複数の補正値に基づいて前記第２補正軌道を生成する、請求項１６又は１７に記載のライト方法。
【請求項１９】
前記第３トラックの第３セクタをライトするときに、前記第３セクタの前記第１方向に離間した前記第１セクタを検出し、
前記第１セクタが前記第１補正軌道に対して前記第２方向にオフセットしていることを検出した場合、前記第３トラックの前記第３セクタと前記第２トラックの前記第１セクタの前記第２方向に位置する前記第３トラックの第４セクタとを接続し、且つ前記第４セクタと前記第４セクタの前記第１方向に離間した第５セクタとを接続する前記第２補正軌道を生成する、請求項１５に記載のライト方法。
【請求項２０】
前記第３トラックの第３セクタをライトするときに、前記第３セクタの前記第１方向に離間した前記第１セクタを検出し、
前記第１セクタが前記第１補正軌道に対して前記第２方向にオフセットしていることを検出した場合、前記第３セクタから前記第２セクタの前記第２方向と反対方向に隣接する第６セクタの一つ前の第７セクタまで前記第３トラックのトラックセンタに沿った前記第２補正軌道を生成する、請求項１５に記載のライト方法。
【請求項２１】
前記第２トラックの第８セクタをライトするときに、前記第８セクタの前記第１方向に離間した前記第１セクタを検出し、
前記第１セクタが前記第１補正軌道に対して前記第２方向にオフセットしていることを検出した場合、前記第８セクタと前記第１セクタとを接続する前記第２補正軌道を生成する、請求項１４に記載のライト方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明の実施形態は、磁気ディスク装置及びライト方法に関する。
【背景技術】
【０００２】
近年、磁気ディスク装置（例えば、ＨＤＤ）の高記録容量化するための様々な技術が開発されている。これら技術の一つとして瓦記録方式（Shingled write Magnetic Recording（ＳＭＲ））でデータをライトする磁気ディスク装置がある。磁気ディスク装置は、瓦記録方式でディスクにデータをライトする場合、１つ前にライトした隣接するトラック（以下、単に、隣接トラックと称する）の一部に重ねて現在のトラックをライトする。磁気ディスク装置は、瓦記録方式でデータをライトすることにより、通常の記録方式でライトするよりもディスクのトラック密度（Track Per Inch：ＴＰＩ）を向上できる。
【０００３】
磁気ディスク装置は、隣接トラックに重ね書きする領域を制御することで、重ね書きした領域を除く残りの隣接トラックの幅、すなわち、リードトラック幅を制御する。そのため、磁気ディスク装置は、リードトラック幅を制御する機能、例えば、データをライトした隣接トラックの位置決め誤差情報に基づいて現在のトラックの目標軌道を設定する機能（Adaptive Track Center:ＡＴＣ）を備えている。
【０００４】
磁気ディスク装置は、例えば、ＡＴＣ機能により、隣接トラックに基づいて現在のトラックをライトする。１つ前にライトした隣接トラックにおいて、データのライトを開始するセクタ（以下、開始セクタと称する）は、同じ隣接トラックにおいてデータのライトを終了し、且つ開始セクタに隣接するセクタ（以下、終了セクタと称する）に対してディスクの径方向にずれる可能性がある。例えば、開始セクタが終了セクタに対してディスクの径方向で現在のトラックの次にトラックをライトする方向（以下、順方向と称する）にずれている場合に、磁気ディスク装置は、ＡＴＣ機能により、隣接トラックに基づいて現在のトラックをライトする。この場合、隣接トラックにおいて、開始セクタ付近の領域のリードトラック幅が、狭窄し得る。  
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】米国特許第８９５３２６６号明細書
【特許文献２】米国特許第７４５７０７５号明細書
【特許文献３】米国特許第７４７４４９１号明細書
【特許文献４】特開２０１４−８９７８０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
本発明の実施形態が解決しようとする課題は、信頼性を向上できる磁気ディスク装置及びライト方法を提供することである。
【課題を解決するための手段】
【０００７】
本実施形態に係る磁気ディスク装置は、ディスクと、前記ディスクに対してデータをライトするヘッドと、前記ディスクの周方向と平行な第１方向に沿った第１トラックにデータをシーケンシャルにライトし、前記第１トラックのオフセット量を検出し、前記第１トラックのオフセット量に基づいて前記第１方向に沿う第１補正軌道を生成し、前記ディスクの径方向に平行な第２方向に前記ヘッドを移動した後、前記第２トラックで第１セクタから前記第１補正軌道に沿ってデータをシーケンシャルにライトし、前記第１補正軌道に対する前記第１セクタのオフセット方向を検出し、前記第１セクタが前記第１補正軌道に対して前記第２方向にオフセットしていることを検出した場合、前記第１セクタのオフセット方向に応じて第２補正軌道を生成し、前記第２補正軌道に基づいて前記ヘッドを制御するコントローラと、を備える。
【図面の簡単な説明】
【０００８】
【図１】図１は、第１実施形態に係る磁気ディスク装置の構成を示すブロック図である。
【図２】図２は、瓦記録領域の一例を示す概要図である。
【図３】図３は、サーボ制御部の構成の一例を示すブロック図である。
【図４】図４は、ＡＴＣ機能によりライトするトラックの一例を示す模式図である。
【図５】図５は、ディスク上のバンド領域にシーケンシャルにライトする複数のトラックの一例を示す模式図である。
【図６】図６は、１周分をライトしたトラックの一例を示す図である。
【図７】図７は、通常のＡＴＣ機能により生成した目標軌道に沿ってライトしているトラックの一例を示す図である。
【図８】図８は、第１実施形態に係るＡＴＣ機能により生成した目標軌道を補正した補正軌道に沿ってライトしているトラックの一例を示す図である。
【図９Ａ】図９Ａは、第１実施形態に係る磁気ディスク装置のライト処理の一例を示すフローチャートである。
【図９Ｂ】図９Ｂは、第１実施形態に係る磁気ディスク装置のライト処理の一例を示すフローチャートである。
【図１０】図１０は、変形例１に係るＡＴＣ機能により生成した目標軌道を補正した補正軌道ＣＰ３に沿ってライトしているトラックの一例を示す図である。
【図１１】図１１は、変形例２に係るＡＴＣ機能により生成した目標軌道を補正した補正軌道に沿ってライトしているトラックの一例を示す図である。
【図１２】図１２は、第２実施形態に係るサーボ制御部の構成の一例を示すブロック図である。
【図１３Ａ】図１３Ａは、第２実施形態に係るＡＴＣ機能により生成した目標軌道を補正した補正軌道に沿ってライトしているトラックの一例を示す図である。
【図１３Ｂ】図１３Ｂは、第２実施形態に係るＡＴＣ機能により生成した目標軌道を補正した補正軌道に沿ってライトしているトラックの一例を示す図である。
【図１４】図１４は、第２実施形態に係る磁気ディスク装置のライト処理の一例を示すフローチャートである。
【発明を実施するための形態】
【０００９】
以下、実施の形態について図面を参照して説明する。なお、図面は、一例であって、発明の範囲を限定するものではない。  
（第１実施形態）  
図１は、第１実施形態に係る磁気ディスク装置１の構成を示すブロック図である。  
磁気ディスク装置１は、後述するヘッドディスクアセンブリ（head-disk assembly：ＨＤＡ）と、ドライバＩＣ２０と、ヘッドアンプ集積回路（以下、ヘッドアンプＩＣ）３０と、揮発性メモリ７０と、不揮発性メモリ８０と、バッファメモリ（バッファ）９０と、１チップの集積回路であるシステムコントローラ１３０とを備える。また、磁気ディスク装置１は、ホストシステム（ホスト）１００と接続される。
【００１０】
ＨＤＡは、磁気ディスク（以下、ディスク）１０と、スピンドルモータ（ＳＰＭ）１２と、ヘッド１５を搭載しているアーム１３と、ボイスコイルモータ（ＶＣＭ）１４とを有する。ディスク１０は、スピンドルモータ１２により回転する。アーム１３及びＶＣＭ１４は、アクチュエータを構成している。アクチュエータは、ＶＣＭ１４の駆動により、アーム１３に搭載されているヘッド１５をディスク１０上の目標半径位置まで移動制御する。ディスク１０およびヘッド１５は、２つ以上の数が設けられてもよい。
【００１１】
ディスク１０は、データ領域に、瓦記録領域（ＳＭＲ領域）１０ｓと、メディアキャッシュ（media cache）領域１０ｍと、が割り当てられている。瓦記録領域１０ｓは、ホスト１００からライト要求されたユーザデータ等が記録される。メディアキャッシュ領域１０ｍは、瓦記録領域１０ｓのキャッシュとして利用され得る。瓦記録領域１０ｓは、１つ前にライトされた隣接するトラック（以下、単に、隣接トラックと称する）の一部に重なるように現在対象とするトラック（以下、単に、現在のトラックと称する）のデータがライトされ、メディアキャッシュ領域１０ｍよりトラック密度（Track Per Inch：ＴＰＩ）の高い記録領域である。瓦記録領域１０ｓは、複数のトラックが重ね書きされた複数のトラック群（以下、バンド領域と称する）を含む。バンド領域は、隣接トラックの一部分に重ね書きされた少なくとも１つのトラック（第１トラック）と、最後に重ね書きされたトラック（第２トラック）とを備えている。第２トラックは、他のトラックを重ね書きされていないため、第１トラックよりもトラック幅が広い。以下で、“トラック”を“ライトトラック”の意味で用いる。なお、“トラック”という用語を“ライトトラック”及び“リードトラック”を含む用語として用いる場合もある。
【００１２】
図２は、瓦記録領域１０ｓの一例を示す概要図である。図２において、横軸をディスク１０の周方向（回転方向）とし、縦軸を周方向に対して直交するディスク１０の径方向とする。以下で、ディスク１０の径方向において、データをシーケンシャルにライトする方向を順方向と称する。ディスク１０の周方向において、データをシーケンシャルにライトする方向を進行方向と称する。順方向は、径方向に平行な方向であり、進行方向は、周方向に平行な方向である。図２おいて、順方向は径方向と同じ方向であり、進行方向は周方向と同じ方向である。なお、順方向は、径方向と反対方向であってもよい。また、進行方向は、周方向と反対方向であってもよい。
【００１３】
図２には、瓦記録領域１０ｓにライトされているバンド領域ＢＤｇ−１、バンド領域ＢＤｇ、及びバンド領域ＢＤｇ＋１を示している。図２では、バンド領域ＢＤｇ−１、バンド領域ＢＤｇ、及びバンド領域ＢＤｇ＋１の順にライトされている。以下で、バンド領域ＢＤｇを一例として説明する。バンド領域ＢＤｇ−１及びＢＤｇ＋１は、バンド領域ＢＤｇと同様の構成が適用できるために説明を省略する。図２では、説明の便宜上、各トラックを周方向に沿った直線で示しているが、実際にはディスク１０を１周する曲線である。また、図２では、説明の便宜上、外乱等に起因する位置決め誤差によるトラックの変動等を示していない。
【００１４】
バンド領域ＢＤｇは、第１トラックＴＲ１、ＴＲ２、及びＴＲ３と第２トラックＴＲ４とを含む。バンド領域ＢＤｇは、ディスク１０の中心と同心円状の軌道上にトラックセンタＴＣ１、ＴＣ２、ＴＣ３、及びＴＣ４が規定されている。バンド領域ＢＤｇにおいて、第１トラックＴＲ１、ＴＲ２、及びＴＲ３と第２トラックＴＲ４とは、それぞれ、ディスク１０の内径側から外径側に向かって放射状に引いた複数の線で規定される複数のセクタを含む。
【００１５】
第１トラックＴＲ１は、データのライトを開始するセクタ（以下、開始セクタと称する）Ｓ１ｓｔからデータのライトを終了するセクタ（以下、終了セクタと称する）Ｓ１ｅｎまでトラックセンタＴＣ１に沿ってシーケンシャルにライトされている。例えば、開始セクタは、隣接トラックから現在のトラックにトラックジャンプした際に最初にデータをライトするセクタ（以下、最初セクタと称する場合もある）を含む。また、終了セクタは、現在のトラックから次のトラックにトラックジャンプする際に起点となるセクタ（以下、最終セクタと称する場合もある）を含む。ここでは、開始セクタＳ１ｓｔを最初セクタＳ１ｓｔとして説明し、終了セクタＳ１ｅｎを最終セクタＳ１ｅｎとして説明する。そのため、実際には、第１トラックＴＲ１において、開始セクタＳ１ｓｔと、終了セクタＳ１ｅｎとは、周方向で隣接している。
【００１６】
第１トラックＴＲ２は、開始セクタＳ２ｓｔから終了セクタＳ２ｅｎまでトラックセンタＴＣ２に沿ってシーケンシャルにライトされている。ここでは、開始セクタＳ２ｓｔを最初セクタＳ２ｓｔとして説明し、終了セクタＳ２ｅｎを最終セクタＳ２ｅｎとして説明する。そのため、実際には、第１トラックＴＲ２において、開始セクタＳ２ｓｔと、終了セクタＳ２ｅｎとは、周方向で隣接している。第１トラックＴＲ２は、第１トラックＴＲ１に対して順方向にずれた位置に位置し、第１トラックＴＲ１の一部に重なっている。
【００１７】
第１トラックＴＲ３は、開始セクタＳ３ｓｔから終了セクタＳ３ｅｎまでトラックセンタＴＣ３に沿ってシーケンシャルにライトされている。ここでは、開始セクタＳ３ｓｔを最初セクタＳ３ｓｔとして説明し、終了セクタＳ３ｅｎを最終セクタＳ３ｅｎとして説明する。そのため、実際には、第１トラックＴＲ３において、開始セクタＳ３ｓｔと、終了セクタＳ３ｅｎとは、周方向で隣接している。第１トラックＴＲ３は、第１トラックＴＲ２に対して順方向にずれた位置に位置し、第１トラックＴＲ２の一部に重なっている。
【００１８】
第２トラックＴＲ４は、開始セクタＳ４ｓｔから終了セクタＳ４ｅｎまでトラックセンタＴＣ４に沿ってシーケンシャルにライトされている。ここでは、開始セクタＳ４ｓｔを最初セクタＳ４ｓｔとして説明し、終了セクタＳ４ｅｎを最終セクタＳ４ｅｎとして説明する。そのため、実際には、第２トラックＴＲ４において、開始セクタＳ４ｓｔと、終了セクタＳ４ｅｎとは、周方向で隣接している。第２トラックＴＲ４は、第１トラックＴＲ３に対して順方向にずれた位置に位置し、第１トラックＴＲ３の一部に重なっている。また、第２トラックＴＲ４のリードトラック幅Ｗｒ４は、第１トラックＴＲ１、ＴＲ２、及びＴＲ３のリードトラック幅Ｗｒ１、Ｗｒ２及びＷｒ３よりも広い。リードトラック幅は、トラック幅と隣接トラックが重なっている部分の幅との差分値である。例えば、リードトラック幅Ｗｒ１、Ｗｒ２、及びＷｒ３は、ほぼ同等である。すなわち、第１トラックＴＲ１から第２トラックＴＲ４までのトラックピッチは、一定である。なお、開始セクタＳ１ｓｔ、Ｓ２ｓｔ、Ｓ３ｓｔ、及びＳ４ｓｔは、それぞれ、各トラックの周方向において異なる位置に位置していてもよい。また、終了セクタＳ１ｅｎ、Ｓ２ｅｎ、Ｓ３ｅｎ、及びＳ４ｅｎも、それぞれ、各トラックの周方向において異なる位置に位置していてもよい。第１トラックＴＲ１、ＴＲ２、ＴＲ３及び第２トラックＴＲ４の各々において、開始セクタ及び終了セクタは、それぞれ、１つのみであるように記載したが、複数個あっても良い。この場合、あるトラックにおいて、シーケンシャルにライトされたあるデータの終了セクタは、このデータに追記された追記データの開始セクタと隣接する。また、バンド領域ＢＤｇは、４つのトラックを含むように記載したが、４つ未満、又は４つよりも多くのトラックを含んでいてもよい。
【００１９】
図１において、ヘッド１５は、スライダを本体として、当該スライダに実装されているライトヘッド１５Ｗ、及びリードヘッド１５Ｒを備える。ライトヘッド１５Ｗは、ディスク１０上にデータを書き込む（ライトする）。リードヘッド１５Ｒは、ディスク１０上のデータトラックに記録されているデータを読み込む（リードする）。なお、ライトすることを記録すると表現する場合もある。  
ドライバＩＣ２０は、システムコントローラ１３０（詳細には、後述するＭＰＵ６０）の制御に従って、ＳＰＭ１２およびＶＣＭ１４の駆動を制御する。  
ヘッドアンプＩＣ３０は、リードアンプ及びライトドライバを有する。リードアンプは、リードヘッド１５Ｒにより読み出されたリード信号を増幅して、リード／ライト（Ｒ／Ｗ）チャネル４０に伝送する。ライトドライバは、Ｒ／Ｗチャネル４０から出力されるライトデータに応じたライト電流をライトヘッド１５Ｗに伝送する。
【００２０】
揮発性メモリ７０は、電力供給が断たれると保存しているデータが失われる半導体メモリである。揮発性メモリ７０は、磁気ディスク装置１の各部での処理に必要なデータ等を格納する。揮発性メモリ７０は、例えば、ＤＲＡＭ（Dynamic Random Access Memory）、又はＳＤＲＡＭ（Synchronous Dynamic Random Access Memory）である。
【００２１】
不揮発性メモリ８０は、電力供給が断たれても保存しているデータを記録する半導体メモリである。不揮発性メモリ８０は、例えば、ＮＯＲ型またはＮＡＮＤ型のフラッシュＲＯＭ（Flash Read Only Memory :ＦＲＯＭ）である。
【００２２】
バッファメモリ９０は、磁気ディスク装置１とホスト１００との間で送受信されるデータ等を一時的に記録する半導体メモリである。なお、バッファメモリ９０は、揮発性メモリ７０と一体に構成されていてもよい。バッファメモリ９０は、例えば、ＤＲＡＭ（Dynamic Random Access Memory）、ＳＲＡＭ（Static Random Access Memory）、ＳＤＲＡＭ、ＦｅＲＡＭ（Ferroelectric Random Access memory）、又はＭＲＡＭ（Magnetoresistive Random Access Memory）等である。
【００２３】
システムコントローラ（コントローラ）１３０は、例えば、複数の素子が単一チップに集積されたSystem-on-a-Chip(SoC)と称される大規模集積回路（ＬＳＩ）を用いて実現される。システムコントローラ１３０は、リード／ライト（Ｒ／Ｗ）チャネル４０と、ハードディスクコントローラ（ＨＤＣ）５０と、マイクロプロセッサ（ＭＰＵ）６０とを含む。
【００２４】
Ｒ／Ｗチャネル４０は、リードデータ及びライトデータの信号処理を実行する。Ｒ／Ｗチャネル４０は、リードデータの信号品質を測定する回路、又は機能を有している。また、Ｒ／Ｗチャネル４０は、ディスク１０へのアクセス情報を取得する。アクセス情報は、ヘッド１５の位置情報（以下、単に、位置情報と称する）、トラック番号、開始セクタのディスク１０上の位置、開始セクタのセクタ番号、終了セクタのディスク１０上の位置、終了セクタのセクタ番号や、各トラックへデータをライトした時間等を含む。位置情報は、位置決め誤差を含む。位置決め誤差は、ディスク１０上のあるトラックの各セクタにおけるヘッド１５（ライトヘッド１５Ｗ）の中心の目標位置（以下、単に、目標位置と称する）に対するヘッド１５（ライトヘッド１５Ｗ）の中心の実際の位置（以下、単に、ヘッド１５の実際の位置と称する）、すなわち、ライトされたセクタのデータパターンの中心位置（以下、単に、セクタと称する）のずれ（誤差）である。以下で、ヘッド１５（ライトヘッド１５Ｗ）の中心位置を単にヘッド１５と称する場合もある。トラック番号は、ディスク１０に順方向に従ってシーケンシャルにライトされた各トラックに割り当てられた数値であり、順方向に従って一定値ずつ増加する。セクタ番号は、各トラックの進行方向に従って各セクタに割り当てられた数値であり、各トラックにおいて開始セクタから終了セクタまで進行方向に従って一定値ずつ増加する。以下では、動作説明を簡単にするため、セクタ番号は、全てのトラックにおいて、周方向で同じ位置のセクタに同じ数値が割り当てられているものとする。例えば、あるセクタのセクタ番号は、この特定のセクタに対して径方向に隣接する他のトラックのセクタのセクタ番号と同じ数値である。なお、セクタ番号は、周方向で同じ位置のセクタに異なる数値が割り当てられる場合もある。
【００２５】
ＨＤＣ５０は、後述するＭＰＵ６０からの指示に応じて、ホスト１００とＲ／Ｗチャネル４０との間のデータ転送を制御する。  
ＭＰＵ６０は、磁気ディスク装置１の各部を制御するメインコントローラである。ＭＰＵ６０は、ドライバＩＣ２０を介してＶＣＭ１４を制御し、ヘッド１５の位置決めを行なうサーボ制御を実行する。また、ＭＰＵ６０は、ディスク１０へのデータのライト動作を制御すると共に、ホスト１００から転送されるライトデータの保存先を選択する。
【００２６】
ＭＰＵ６０は、リード／ライト制御部６１と、サーボ制御部６３とを含む。ＭＰＵ６０は、これら各部の処理をファームウェア上で実行してもよい。  
リード／ライト制御部６１は、コマンドに応じて、リード及びライト動作を制御する。例えば、リード／ライト制御部６１は、サーボ制御部６３を介してヘッド１５を各トラックに移動し、各トラックにおけるヘッド１５の目標軌道（以下、単に、目標軌道と称する）に従ってデータをライトする。目標軌道は、例えば、トラックの周方向の各セクタでの目標位置を接続した経路で規定される。目標軌道を目標トラック、又は目標軌跡と表す場合もある。また、リード／ライト制御部６１は、ディスク１０の瓦記録領域１０ｓにバンド領域毎にデータをシーケンシャルに瓦記録する。例えば、リード／ライト制御部６１は、あるトラックの目標軌道をこのトラックのトラックセンタに決定し、特定のトラックピッチでディスク１０上に各トラックを瓦記録する。リード／ライト制御部６１は、バンド領域のあるトラックに上書き、又は追記できる。なお、リード／ライト制御部６１は、瓦記録方式でない通常の記録方式でディスク１０にデータをライトすることもできる。
【００２７】
サーボ制御部６３は、ヘッド１５の位置情報に基づいて、ヘッド１５の位置決め制御を実行する。すなわち、サーボ制御部６３は、Ｒ／Ｗチャネル４０から受けたヘッド１５の位置情報に基づいて、ドライバＩＣ２０を介してＶＣＭ１４を制御する。サーボ制御部６３は、内部メモリ６１０を含む。サーボ制御部６３は、メモリ、例えば、内部メモリ６１０、揮発性メモリ７０、又は不揮発性メモリ８０にＲ／Ｗチャネル４０から受けたヘッド１５の位置情報を記録する。なお、サーボ制御部６３は、内部メモリ６１０を備えていなくともよい。
【００２８】
例えば、サーボ制御部６３は、現在のトラックに対して順方向と反対側に１つ前にライトした隣接トラック（以下、隣接トラックと称する）に基づいて、現在のトラックの目標軌道を生成する。例えば、サーボ制御部６３は、隣接トラックのあるセクタでの位置決め誤差（オフセット量）に基づいて、隣接トラックのそのセクタの順方向に位置する現在のトラックのセクタでの目標位置の補正値（第１補正値）を生成する。サーボ制御部６３は、隣接トラックの各セクタでの位置決め誤差に基づいて、現在のトラックの各セクタに対する目標位置の補正値（第１補正値）をそれぞれ生成する。サーボ制御部６３は、現在のトラックの各セクタに対する補正値（第１補正値）に基づいて、現在のトラックの目標軌道（第１補正軌道）を生成する。サーボ制御部６３は、生成した現在のトラックの目標軌道に基づいて、現在のトラックでヘッド１５の位置を制御する。このように隣接トラックの位置決め誤差に基づいて、現在のトラックにおける目標軌道を生成する機能の一例として、Adaptive Track Center（ＡＴＣ）機能がある。以下で、説明の便宜上、このような機能をＡＴＣと称するが、ＡＴＣ機能に限定するものではなく、同じ処理が可能であればＡＴＣ機能以外であってもよい。サーボ制御部６３は、ＡＴＣ機能により生成した目標軌道に基づいて、現在のトラックにおいてヘッド１５の位置を制御することで、隣接トラックと現在のトラックとのリードトラック幅を制御する。
【００２９】
さらに、サーボ制御部６３は、隣接トラックのあるセクタの位置決め誤差（オフセット量）とオフセット方向とに基づいて、ＡＴＣ機能により生成した目標軌道を補正した補正軌道を生成する。例えば、サーボ制御部６３は、隣接トラックのあるセクタでの位置決め誤差に基づいて、隣接トラックのそのセクタの順方向に位置する現在のトラックのセクタに対するＡＴＣ機能で生成した目標位置の補正値（第２補正値）を生成する。サーボ制御部６３は、隣接トラックのあるセクタのオフセット量とオフセット方向に基づいて、現在のトラックの幾つかセクタに対する目標位置の補正値（第２補正値）をそれぞれ生成する。サーボ制御部６３は、幾つかのセクタの補正値（第２補正値）に基づいて、ＡＴＣ機能により隣接トラックに基づいて生成した目標軌道を補正した補正軌道を生成する。サーボ制御部６３は、生成した補正軌道に基づいて、現在のトラックにおいてヘッド１５の位置を制御することで、リードトラック幅の狭窄を防止する。なお、サーボ制御部６３は、隣接トラックのあるセクタのオフセット量に依らず、このセクタのオフセット方向のみに応じて、ＡＴＣ機能により生成した目標軌道を補正した補正軌道（第２補正軌道）を生成するように構成されていても良い。
【００３０】
図３は、サーボ制御部６３の構成の一例を示すブロック図である。図３には、セクタ数ｋ、現在のトラックで現在対象とするセクタ（以下、単に、現在のセクタ）のセクタ番号（以下、単に、現在のセクタ番号と称する）ｓ、現在のトラックのトラック番号（以下、単に、現在のトラック番号（シリンダ番号）と称する）ｃ、開始セクタを示すビット（以下、単に、ビットと称する）ｓｔ、位置決め誤差（オフセット量）ｅ、現在のセクタ番号ｓでの目標位置ｒ、目標位置ｒに対するヘッド１５の位置の補正値ａ、目標位置ｒに対するヘッド１５の径方向のオフセット量ｅｅ、制御信号ｕ、及び、ヘッド１５の位置ｙを示している。目標位置ｒ及びヘッド１５の位置ｙは、それぞれ、各トラックにおいて、トラックセンタ上を０として、トラックセンタに対して順方向を正とし、トラックセンタに対して順方向と反対方向を負とする値である。図３において、セクタ数ｋ、現在のセクタ番号ｓ、現在のトラック番号ｃ、ビットｓｔ、位置決め誤差ｅ、補正値ａ、目標位置ｒ、オフセット量ｅｅ、及びヘッド１５の位置ｙは、それぞれ信号として送受信される。図３では、主要な信号の経路について示しているが、各部がそれぞれ信号を送受信できる。また、各部は処理に必要なデータや信号を送受信する。以下で、セクタ番号ｓを用いてセクタｓと表し、トラック番号ｃを用いてトラックｃと表す場合もある。
【００３１】
ＭＰＵ６０は、マルチプレクサ（mux）６０１、６０３、６０５、及び６０７と、内部メモリ６１０と、デマルチプレクサ（demux）６２０と、補正部６３０と、スイッチ部６４０と、ＡＴＣ処理部６５０とを含む。  
マルチプレクサ６０１、６０３、６０５、及び６０７は、それぞれ、入力された２以上の信号を１つの信号として出力する。マルチプレクサ６０１、６０３、６０５、及び６０７は、それぞれ、内部メモリ６１０に電気的に接続されている。
【００３２】
マルチプレクサ６０１は、現在のセクタ番号ｓにセクタ数ｋを加えたセクタ番号ｓ＋ｋと、現在のトラック番号ｃに“−１”を加えたトラック番号、すなわち、隣接トラックのトラック番号（以下、単に、前のトラック番号と称する）ｃ−１とが入力される。マルチプレクサ６０１は、入力された前のトラック番号ｃ−１と、セクタ番号ｓ＋ｋとをアドレス情報［ｃ−１、ｓ＋ｋ］として、例えば、内部メモリ６１０に出力する。
【００３３】
マルチプレクサ６０３は、現在のセクタ番号ｓを示す信号と、前のトラック番号ｃ−１を示す信号とが入力される。マルチプレクサ６０３は、入力された前のトラック番号ｃ−１と、現在のセクタ番号ｓとをアドレス情報［ｃ−１、ｓ］として、例えば、内部メモリ６１０に出力する。
【００３４】
マルチプレクサ６０５は、現在のセクタ番号ｓと、現在のトラック番号ｃとが入力される。マルチプレクサ６０５は、入力された現在のトラック番号ｃと、現在のセクタ番号ｓとをアドレス情報［ｃ、ｓ］として、例えば、内部メモリ６１０に出力する。
【００３５】
マルチプレクサ６０７は、現在のトラックｃの現在のセクタｓに対応するビットｓｔ（以下で、現在のビット［ｃ、ｓ］と示す）と、現在のトラックの現在のセクタの位置決め誤差（以下、単に、現在の位置決め誤差と称する）ｅ［ｃ、ｓ］とが入力される。マルチプレクサ６０７は、ビットｓｔと、現在の位置決め誤差ｅ［ｃ、ｓ］とを１つの信号として、例えば、内部メモリ６１０に出力する。
【００３６】
内部メモリ６１０は、マルチプレクサ６０１、６０３、６０５、及び６０７からそれぞれ入力されたデータを記録する。内部メモリ６１０は、ライトアクセス部６１１と、リードアクセス部６１３、６１５とを備えている。なお、内部メモリ６１０は、サーボ制御部６３と別に設けられていてもよい。また、内部メモリ６１０は、サーボ制御部６３に設けられていなくともよい。この場合、内部メモリ６１０の代わりに、揮発性メモリ７０、又は不揮発性メモリ８０が使用される。
【００３７】
ライトアクセス部６１１は、内部メモリ６１０にデータをライトする。ライトアクセス部６１１は、端子ＡＤ１及び端子ＤＴ１を有している。ライトアクセス部６１１は、マルチプレクサ６０５から入力されたアドレス情報［ｃ、ｓ］の現在のセクタ（以下、現在のセクタ［ｃ、ｓ］と示す）を端子ＡＤ１で対象として指定する（アドレッシング（addressing）する）。ライトアクセス部６１１は、現在の位置決め誤差ｅ［ｃ、ｓ］及び現在のビットｓｔ［ｃ、ｓ］を現在のセクタ［ｃ、ｓ］に対応する１つのデータとして端子ＤＴ１を介して内部メモリ６１０に記録する。
【００３８】
リードアクセス部６１３は、内部メモリ６１０に記録されたデータをリードできる。リードアクセス部６１３は、端子ＡＤ３及び端子ＤＴ３を有している。リードアクセス部６１３は、マルチプレクサ６０３から入力されたアドレス情報［ｃ−１、ｓ］のセクタ（以下、セクタ［ｃ−１、ｓ］と示す）を端子ＡＤ３で対象として指定する。リードアクセス部６１３は、端子ＤＴ３を介してセクタ［ｃ−１、ｓ］に対応する位置決め誤差ｅ０［ｃ−１、ｓ］をリードし、スイッチ部６４０に出力する。
【００３９】
リードアクセス部６１５は、内部メモリ６１０に記録されたデータをリードできる。リードアクセス部６１５は、端子ＡＤ５及び端子ＤＴ５を有している。リードアクセス部６１５は、マルチプレクサ６０１から入力されたアドレス情報［ｃ−１、ｓ＋ｋ］のセクタ（以下、セクタ［ｃ−１、ｓ＋ｋ］と示す）を端子ＡＤ５で対象として指定する。リードアクセス部６１５は、端子ＤＴ５を介してセクタ［ｃ−１、ｓ＋ｋ］に対応する位置決め誤差ｅ［ｃ−１、ｓ＋ｋ］及びビットｓｔ［ｃ−１、ｓ＋ｋ］を含むデータをリードし、デマルチプレクサ６２０に出力する。
【００４０】
デマルチプレクサ６２０は、１つの信号を入力として受け、複数の信号として出力する。デマルチプレクサ６２０は、リードアクセス部６１５から入力された位置決め誤差ｅ［ｃ−１、ｓ＋ｋ］及びビットｓｔ［ｃ−１、ｓ＋ｋ］を含むデータを位置決め誤差ｅ［ｃ−１、ｓ＋ｋ］とビットｓｔ［ｃ−１、ｓ＋ｋ］とに分割し、補正部６３０にそれぞれ出力する。
【００４１】
補正部６３０は、入力された信号を参照して、現在のトラックの現在のセクタから進行方向に離間した隣接トラックの開始セクタを検出する。現在のトラックの現在のセクタから進行方向に離間した隣接トラックの開始セクタを検出した場合、補正部６３０は、例えば、隣接トラックの開始セクタでの位置決め誤差と終了セクタでの位置決め誤差とを比較して、開始セクタの中心の位置（以下、単に、開始セクタと称する）と終了セクタの中心の位置（以下、単に、終了セクタと称する）とが互いに径方向にずれているかずれていないかを検出する。すなわち、補正部６３０は、開始セクタと終了セクタとの間の境界位置で目標軌道が不連続であるかないかを検出する。開始セクタと終了セクタとが径方向で互いにずれていることを検出した場合、補正部６３０は、隣接トラックの開始セクタの目標位置に対するヘッド１５の実際の位置、すなわち、ライトされた開始セクタのデータパターンの中心位置（開始セクタ）のオフセット方向及びオフセット量を検出する。補正部６３０は、隣接トラックの開始セクタの目標位置に対する隣接トラックの開始セクタのオフセット方向及びオフセット量に応じて、目標位置を補正するための補正値を生成する。なお、補正部６３０は、現在のセクタの１つ前のセクタの位置決め誤差等を記録するメモリ等を備えていてもよい。また、補正部６３０は、入力された複数の位置決め誤差を記録してもよい。
【００４２】
例えば、補正部６３０は、隣接トラックの開始セクタと終了セクタとが径方向にずれていることを検出し、且つ隣接トラックの開始セクタが目標位置に対して順方向にオフセットしていることを検出した場合、補正値を生成する。図３に示した例では、補正部６３０は、入力された位置決め誤差ｅ［ｃ−１、ｓ＋ｋ］とビットｓｔ［ｃ−１、ｓ＋ｋ］とを検出し、現在のトラックの現在のセクタの進行方向に離間した開始セクタを検出する。補正部６３０は、立ち上がっているビットｓｔ［ｃ−１、ｓ＋ｋ］（例えば、ｓｔ［ｃ−１、ｓ＋ｋ］＝１）を検出した場合、このビットｓｔ［ｃ−１、ｓ＋ｋ］に対応するセクタ［ｃ−１、ｓ＋ｋ］が開始セクタであると判定する。補正部６３０は、隣接トラックｃ−１の開始セクタ［ｃ−１、ｓ＋ｋ］の位置決め誤差ｅ［ｃ−１、ｓ＋ｋ］と終了セクタ［ｃ−１、ｓ＋ｋ−１］の位置決め誤差ｅ［ｃ−１、ｓ＋ｋ−１］とを比較し、開始セクタ［ｃ−１、ｓ＋ｋ］と終了セクタ［ｃ−１、ｓ＋ｋ−１］とが互いに径方向にずれているかずれていないかを検出する。開始セクタ［ｃ−１、ｓ＋ｋ］と終了セクタ［ｃ−１、ｓ＋ｋ−１］とが互いに径方向にずれていると判定した場合、補正部６３０は、隣接トラックｃ−１の開始セクタ［ｃ−１、ｓ＋ｋ］での位置決め誤差ｅ［ｃ−１、ｓ＋ｋ］がゼロ“０”よりも大きいか（ｅ［ｃ−１、ｓ＋ｋ］＞０）ゼロ“０”以下か（ｅ［ｃ−１、ｓ＋ｋ］≦０）を検出する。すなわち、補正部６３０は、隣接トラックにおいて、開始セクタ［ｃ−１、ｓ＋ｋ］が目標位置に対して順方向にオフセットしているかいないかを検出する。位置決め誤差ｅ［ｃ−１、ｓ＋ｋ］がゼロよりも大きいこと（ｅ［ｃ−１、ｓ＋ｋ］＞０）を検出した場合、補正部６３０は、隣接トラックにおいて、開始セクタ［ｃ−１、ｓ＋ｋ］が目標位置に対して順方向にオフセットしていると判定する。隣接トラックにおいて、開始セクタ［ｃ−１、ｓ＋ｋ］と終了セクタ［ｃ−１、ｓ＋ｋ−１］とが互いに径方向にずれていることを検出し、且つ隣接トラックにおいて、開始セクタ［ｃ−１、ｓ＋ｋ］が目標位置に対して順方向にオフセットしていることを検出した場合、補正部６３０は、開始セクタ［ｃ−１、ｓ＋ｋ］のオフセット量に応じて、セクタ［ｃ、ｓ］からセクタ［ｃ、ｓ＋ｋ］までの各セクタにおける目標位置を補正するための補正値を生成する。例えば、補正部６３０は、現在のトラックにおいて、現在のセクタ［ｃ、ｓ］での目標位置と現在のセクタ［ｃ、ｓ］からｋセクタ先のセクタ［ｃ、ｓ＋ｋ］での目標位置とを連続的に接続する補正軌道をヘッド１５が通るように、セクタ［ｃ、ｓ］からセクタ［ｃ、ｓ＋ｋ］までの各セクタに対する補正値ｅｍ［ｎ］（ｎ＝１、２、…、ｋ−１）を生成する。補正部６３０は、生成した複数の補正値ｅｍ［ｎ］（ｎ＝１、２、…、ｋ−１）をテーブル６３１として保持する。補正値ｅｍ［１］、ｅｍ［２］、…、ｅｍ［ｋ−１］は、それぞれ、セクタ［ｃ、ｓ＋１］、セクタ［ｃ、ｓ＋２］、…、セクタ［ｃ、ｓ＋ｋ−１］での位置決め誤差を補正した位置決め誤差である。つまり、補正値ｅｍ［１］、ｅｍ［２］、…、ｅｍ［ｋ−１］は、それぞれ、セクタ［ｃ、ｓ＋１］、セクタ［ｃ、ｓ＋２］、…、セクタ［ｃ、ｓ＋ｋ−１］での目標位置に対応する。また、隣接トラックにおいて、開始セクタ［ｃ−１、ｓ＋ｋ］と終了セクタ［ｃ−１、ｓ＋ｋ−１］とが互いにずれていることを検出し、且つ開始セクタ［ｃ−１、ｓ＋ｋ］が開始セクタ［ｃ−１、ｓ＋ｋ］における目標位置に対して順方向にオフセットしていることを検出した場合、補正部６３０は、補正値を選択するためのフラグＦＬＧ、例えば、ＦＬＧ＝１とする信号をスイッチ部６４０に出力する。補正部６３０は、生成した補正値ｅｍ［ｎ］をスイッチ部６４０に出力する。例えば、補正部６３０は、ヘッド１５が現在のセクタｓから次のセクタｓ＋１に移動するタイミングで補正値ｅｍ［１］を出力する。補正値６３０は、補正値ｅｍ［１］から補正値ｅｍ［ｋ−１］までをセクタの切り替わりのタイミング毎に出力する。このとき、補正部６３０は、補正値ｅｍ［１］から補正値ｅｍ［ｋ−１］までを、一定のタイミングで順番にスイッチ部６４０に出力しても良いし、入力されるセクタ番号ｓに同期して順番にスイッチ部６４０に出力しても良い。補正部６３０は、補正値ｅｍ［ｋ−１］をスイッチ部６４０に出力した後に、フラグＦＬＧをクリアにする信号、例えば、ＦＬＧ＝０をスイッチ部６４０に出力する。
【００４３】
なお、補正部６３０は、開始セクタと終了セクタとが径方向に互いにずれていることを検出した場合に、開始セクタでの位置決め誤差と終了セクタでの位置決め誤差との差分値と閾値とを比較し、差分値が閾値よりも大きいに場合に、隣接トラックの開始セクタにおける目標位置に対する開始セクタのオフセット方向を検出するように構成されていてもよい。
【００４４】
また、補正部６３０は、隣接トラックにおける目標位置に対する開始セクタのオフセット方向及びオフセット量を検出した後に、隣接トラックの終了セクタを検出し、目標位置に対する終了セクタでのヘッド１５の実際の位置、すなわち、ライトされた終了セクタのデータパターンの中心位置（終了セクタ）のオフセット方向及びオフセット量を検出する。補正部６３０は、隣接トラックの目標位置に対する開始セクタと目標位置に対する終了セクタとのオフセット方向及びオフセット量に応じて、現在のトラックの目標位置を補正するための補正値を生成するように構成されていても良い。なお、この場合、補正部６３０は、隣接トラックの目標位置に対する開始セクタのオフセット方向及びオフセット量と目標位置に対する終了セクタのオフセット方向とに応じて、現在のトラックの目標位置を補正するための補正値を生成するように構成されていても良い。
【００４５】
例えば、補正部６３０は、セクタ［ｃ−１、ｓ＋ｋ］を開始セクタであると判定した場合、開始セクタ［ｃ−１、ｓ＋ｋ］の１つ前のセクタ［ｃ−１、ｓ＋ｋ−１］を終了セクタと判定する。隣接トラックｃ−１において目標位置に対する開始セクタ［ｃ−１、ｓ＋ｋ］のオフセット方向及びオフセット量を検出した後に、補正部６３０は、隣接トラックｃ−１の終了セクタ［ｃ−１、ｓ＋ｋ−１］での位置決め誤差［ｃ−１、ｓ＋ｋ−１］がゼロ“０”よりも小さいか（ｅ［ｃ−１、ｓ＋ｋ−１］＜０）ゼロ“０”以上か（ｅ［ｃ−１、ｓ＋ｋ−１］≧０）を検出する。すなわち、補正部６３０は、隣接トラックのセクタ［ｃ−１、ｓ＋ｋ−１］が目標位置に対して順方向と反対方向にオフセットしているかいないかを検出する。補正部６３０は、位置決め誤差ｅ［ｃ−１、ｓ＋ｋ−１］がゼロよりも小さいことを検出した場合、隣接トラックの終了セクタ［ｃ−１、ｓ＋ｋ−１］が目標位置に対して順方向の反対方向にオフセットしていると判定する。隣接トラックの開始セクタ［ｃ−１、ｓ＋ｋ］が目標位置に対して順方向にオフセットしていることを検出し、且つ隣接トラックの終了セクタ［ｃ−１、ｓ＋ｋ−１］が目標位置に対して順方向と反対方向にオフセットしていることを検出した場合、開始セクタ［ｃ−１、ｓ＋ｋ］のオフセット量に応じて、補正部６３０は、セクタ［ｃ、ｓ］からセクタ［ｃ、ｓ＋ｋ］までの各セクタの目標位置を補正するための補正値を生成する。
【００４６】
また、隣接トラックにおいて、開始セクタと終了セクタとが互いに径方向にずれていることを検出し、且つ隣接トラックにおいて、開始セクタが目標位置に対して順方向にオフセットしていることを検出した場合、補正部６３０は、オフセット量に依らずに、目標位置を補正するための補正値を生成するように構成されていても良い。
【００４７】
スイッチ部６４０は、ＡＴＣ機能で生成された目標位置を補正するか、通常のＡＴＣ機能で目標位置を補正するかを選択する。例えば、スイッチ部６４０は、補正部６３０から受ける信号、例えば、フラグＦＬＧに基づいて、出力する信号を切り替える。スイッチ部６４０は、補正部６３０からフラグＦＬＧ、例えば、ＦＬＧ＝１が入力された場合、補正部６３０からの入力端子にスイッチを切り替え、且つ補正部６３０から入力された補正値ｅｍ［ｎ］（ｎ＝１、２、…、ｋ）を隣接トラックの位置決め誤差ｅ［ｃ−１、ｓ］としてＡＴＣ処理部６５０に出力する。すなわち、スイッチ部６４０は、ＡＴＣ機能で生成された目標位置を補正するモードを選択する。スイッチ部６４０は、補正部６３０からフラグＦＬＧをクリアにする信号、例えば、ＦＬＧ＝０とする信号が入力された場合、メモリ６１０からの入力端子にスイッチを切り替え、且つメモリ６１０のリードアクセス部６１３から入力された位置決め誤差ｅ０［ｃ−１、ｓ］を隣接トラックの位置決め誤差ｅ［ｃ−１、ｓ］としてＡＴＣ処理部６５０に出力する。すなわち、スイッチ部６４０は、通常のＡＴＣ機能で目標位置を補正するモードを選択する。なお、スイッチ部６４０は、補正部６３０からフラグＦＬＧ、例えば、ＦＬＧ＝１とする信号が入力されない場合、リードアクセス部６１３から入力された位置決め誤差ｅ０［ｃ−１、ｓ］を隣接トラックの位置決め誤差ｅ［ｃ−１、ｓ］としてＡＴＣ処理部６５０に出力するように構成されていてもよい。
【００４８】
ＡＴＣ処理部６５０は、スイッチ部６４０から入力された隣接トラックの位置決め誤差に基づいて、現在のトラックｃの現在のセクタｓにおける目標位置ｒに対する補正値を生成する。例えば、ＡＴＣ処理部６５０は、スイッチ部６４０から入力された位置決め誤差ｅ［ｃ−１、ｓ］にゲイン補正や位相補正等の処理を施して現在のセクタｓの目標位置ｒに対する補正値ａ［ｃ、ｓ］を生成する。ＡＴＣ処理部６５０は、生成した補正値ａ［ｃ、ｓ］をドライバＩＣ２０に出力する。
【００４９】
ドライバＩＣ２０は、ＡＴＣ処理部６５０から出力された補正値ａ［ｃ、ｓ］に現在のセクタの位置決め誤差ｅ［ｃ、ｓ］を加えたオフセット量ｅｅが入力される。現在の位置決め誤差ｅ［ｃ、ｓ］は、ヘッド１５の位置ｙと、目標位置ｒとの差分値である。例えば、現在の位置決め誤差は、ｅ［ｃ、ｓ］＝ｒ−ｙで示される。ドライバＩＣ２０は、入力された目標位置ｒに対するオフセット量ｅｅをゼロとする制御信号ｕをＶＣＭ１４（アクチュエータ）に出力する。  
ＶＣＭ１４は、入力された制御信号ｕに従って、現在のトラックｃの現在のセクタｓでヘッド１５を位置ｙに移動する。例えば、ＶＣＭ１４は、現在のトラックｃの現在のセクタｓで、目標位置ｒに対してオフセット量ｅｅの位置ｙにヘッド１５を移動する。
【００５０】
図４は、ＡＴＣ機能によりライトするトラックの一例を示す模式図である。図４では、バンド領域ＢＤｇを一例としてＡＴＣ機能によりライトされたトラックについて説明する。図４のバンド領域ＢＤｇにおいて、図２に示したバンド領域ＢＤｇとほぼ同じ部分には同一の参照符号を付し、その詳細な説明を省略する。図４は、バンド領域ＤＢｇにおいて、トラックをライトしている状態を示している。図４には、トラックＴＲ１、ＴＲ２、及びＴＲ３を示している。図４では、トラックＴＲ２で位置決め誤差が生じている。図４には、トラックＴＲ１のトラックセンタＴＣ１に従う目標軌道ＴＰ１と、トラックＴＲ１のトラックセンタＴＣ１及び目標軌道ＴＰ１に従ってライトされたトラックＴＲ１のデータパターンの径方向の中心位置の実際の軌道（以下、単に、軌道と称する）ＦＰ１とを示している。また、図４には、トラックＴＲ１の軌道ＦＰ１に従うトラックＴＲ２の目標軌道ＴＰ２と、トラックＴＲ２の軌道ＦＰ２とを示している。図４には、トラックＴＲ２の軌道ＦＰ２に従うトラックＴＲ３の目標軌道ＴＰ３と、トラックＴＲ３の軌道ＦＰ３とを示している。
【００５１】
ＭＰＵ６０は、トラックセンタＴＣ１を目標軌道ＴＰ１として軌道ＦＰ１に沿ってトラックＴＲ１をライトする。ＭＰＵ６０は、トラックＴＲ１のライト時の位置情報等を検出する。次に、ＭＰＵ６０は、ＡＴＣ機能によりトラックＴＲ１の軌道ＦＰ１を目標軌道ＴＰ２とし、目標軌道ＴＰ２に沿ってトラックＴＲ２をライトする。トラックＴＲ２を目標軌道ＴＰ２に沿ってライトしているときに、外乱等により目標軌道ＴＰ２に対して位置決め誤差が生じる。ＭＰＵ６０は、目標軌道ＴＰ２に対して位置決め誤差が生じた軌道ＦＰ２に沿ってトラックＴＲ２をライトする。ＭＰＵ６０は、トラックＴＲ２のライト時の位置決め誤差を含む位置情報等を検出する。また、ＭＰＵ６０は、ＡＴＣ機能によりトラックＴＲ２の軌道ＦＰ２を目標軌道ＴＰ３とし、目標軌道ＴＰ３に沿ってトラックＴＲ３をライトする。ＭＰＵ６０は、トラックＴＲ３のライト時の位置情報等を検出する。  
このように、磁気ディスク装置１は、ＡＴＣ機能により、隣接トラックの位置情報に基づいて現在のトラックの目標軌道を生成することで、各トラックのリードトラック幅を制御する。
【００５２】
図５は、ディスク１０上のバンド領域ＢＤｇにシーケンシャルにライトする複数のトラックの一例を示す模式図である。図５は、データをシーケンシャルにライトする場合における各トラック間のヘッド１５（ライトヘッド１５Ｗ）の移動の一例を示している。図５には、第１トラックＴＲ１、ＴＲ２、及びＴＲ３と、第２トラックＴＲ４とを示している。図５には、第１トラックＴＲ１の開始セクタＳ１ｓｔと、第１トラックＴＲ１の終了セクタＳ１ｅｎと、第１トラックＴＲ２の開始セクタＳ２ｓｔと、第１トラックＴＲ２の終了セクタＳ２ｅｎと、第１トラックＴＲ３の開始セクタＳ３ｓｔと、第１トラックＴＲ３の終了セクタＳ３ｅｎと、第２トラックＴＲ４の開始セクタＳ４ｓｔと、第２トラックＴＲ４の終了セクタＳ４ｅｎとを示している。図５において、説明の便宜上、第１トラックＴＲ１の目標軌道ＴＰ１と軌道ＦＰ１は同一とし、第１トラックＴＲ２の目標軌道ＴＰ２と軌道ＦＰ２とは同一とし、第１トラックＴＲ３の目標軌道ＴＰ３と軌道ＦＰ３とは同一として、第２トラックＴＲ４の目標軌道ＴＰ４と軌道ＦＰ４とは同一とする。
【００５３】
はじめに、ＭＰＵ６０は、開始セクタＳ１ｓｔから終了セクタＳ１ｅｎまで軌道ＦＰ１で第１トラックＴＲ１を瓦記録領域１０ｓにシーケンシャルにライトする。次に、ＭＰＵ６０は、ヘッド１５を第１トラックＴＲ１に対して順方向の第２トラックＴＲ２の目標軌道ＴＰ２に移動する（トラックジャンプする）。ＭＰＵ６０は、開始セクタＳ２ｓｔから終了セクタＳ２ｅｎまで軌道ＦＰ２で第１トラックＴＲ２を瓦記録領域１０ｓにシーケンシャルにライトする。ＭＰＵ６０は、ヘッド１５を第１トラックＴＲ２に対して順方向の第１トラックＴＲ３の目標軌道ＴＰ３に移動する。ＭＰＵ６０は、開始セクタＳ３ｓｔから終了セクタＳ３ｅｎまで軌道ＦＰ３で第１トラックＴＲ３を瓦記録領域１０ｓにシーケンシャルにライトする。ＭＰＵ６０は、ヘッド１５を第１トラックＴＲ３に対して順方向の第２トラックＴＲ４の目標軌道ＴＰ４に移動する。ＭＰＵ６０は、開始セクタＳ４ｓｔから終了セクタＳ４ｅｎまで軌道ＦＰ４で第２トラックＴＲ４を瓦記録領域１０ｓにシーケンシャルにライトする。
【００５４】
図５に示すように、現在のトラックから順方向に隣接するトラック（以下、次の隣接トラックと称する）の開始セクタにシーケンシャルにデータをライトする場合、現在のトラックの最終セクタから次の隣接トラックの最初セクタにヘッド１５を移動させるために、トラック間の位置決め所要時間であるシーク時間に相当する分だけ、現在のトラックの最初セクタと次の隣接トラックの最初セクタとの周方向の位置にずれが生じる。例えば、ＭＰＵ６０は、第１トラックＴＲ２の開始セクタＳ２ｓｔを第１トラックＴＲ１の開始セクタＳ１ｓｔに対して周方向で進行方向へ進んだ位置にライトする。隣接トラックの終了セクタから現在のトラックの最初セクタにヘッド１５を移動した場合、ＭＰＵ６０は、現在のトラックの目標軌道（目標位置）に対して径方向にずれた位置に最初セクタのデータパターンをライトし得る。なお、あるトラックにおいて、シーケンシャルにライトされたあるデータの終了セクタに隣接する追記データの開始セクタにヘッド１５を移動した場合にも、ＭＰＵ６０は、現在のトラックの目標軌道に対して径方向にずれた位置に開始セクタのデータパターンをライトし得る。
【００５５】
図６は、１周分をライトしたトラックの一例を示す図である。図６には、バンド領域ＢＤｇにライトされたトラックＴＲ１とトラックＴＲ２とを示している。トラックＴＲ１は、トラックセンタＴＣ１を目標軌道ＴＰ１として、目標軌道ＴＰ１に従う軌道ＦＰ１に沿ってライトされている。トラックＴＲ２は、トラックＴＲ１の一部に重ね書きされている。トラックＴＲ２は、トラックセンタＴＣ２を目標軌道ＴＰ２として、軌道ＦＰ２に沿ってライトされている。図６には、トラックＴＲ２の開始セクタＳ２ｓｔと終了セクタＳ２ｅｎとの境界位置Ｐ２ｓｅが示されている。また、図６には、ＡＴＣ機能により軌道ＦＰ２に基づいて生成された次の隣接トラックの目標軌道ＴＰ３が示されている。
【００５６】
図６に示した例では、トラックＴＲ２において、開始セクタＳ２ｓｔは、目標軌道ＴＰ２に対して順方向にずれている。トラックＴＲ２において、終了セクタＳ２ｅｎは、目標軌道ＴＰ２に対して順方向と反対方向にずれている。すなわち、軌道ＦＰ２は境界位置Ｐ２ｓｅで不連続となっている。この場合、ＭＰＵ６０は、ＡＴＣ機能によりトラックＴＲ２の軌道ＦＰ２に基づいて、トラックＴＲ２の境界位置Ｐ２ｓｅに順方向の位置で不連続なトラックＴＲ３の目標軌道ＴＰ３を生成する。
【００５７】
図７は、通常のＡＴＣ機能により生成した目標軌道ＴＰ３に沿ってライトしているトラックＴＲ３の一例を示す図である。図７は、通常のＡＴＣ機能により、図６に示したトラックＴＲ２の軌道ＦＰ２に基づいて生成した目標軌道ＴＰ３に従う軌道ＦＰ３に沿ってライトされたトラックＴＲ３を示している。また、トラックＴＲ２の境界位置Ｐ２ｓｅの順方向に位置するトラックＴＲ３の位置Ｐ３５を示している。目標軌道ＴＰ３は、位置Ｐ３５の進行方向と反対方向の位置では、トラックセンタＴＣ３に対して順方向と反対方向にオフセットし、位置Ｐ３５より進行方向の位置では、トラックセンタＴＣ３に対して順方向にオフセットしている。すなわち、目標軌道ＴＰ３は、位置Ｐ３５で不連続である。
【００５８】
ＶＣＭ１４には動作周波数帯域に制限があるので、ＭＰＵ６０は、目標軌道が急激に変化した場合、ヘッド１５を即時に移動させることができないため、急激な目標軌道の変化に対して遅れてヘッド１５を移動させる。図７に示した例では、ＭＰＵ６０は、トラックＴＲ３の位置Ｐ３５まで、目標軌道ＴＰ３に従う軌道ＦＰ３でトラックセンタＴＣ３に対して順方向と反対方向に変化するトラックＴＲ３をライトする。ＭＰＵ６０は、位置Ｐ３５で目標軌道ＴＰ３が不連続であるため、位置Ｐ３５から進行方向の位置で、目標軌道ＴＰ３上に緩やかに重なる軌道ＦＰ３に沿ってトラックＴＲ３をライトする。このようにライトすることで、トラックＴＲ２のリードトラック幅が狭窄する。例えば、トラックＴＲ２の開始セクタＳ２ｓｔの境界位置Ｐ２ｓｅのリードトラック幅Ｗｒ２ｓｅが狭窄する。
【００５９】
図８は、本実施形態に係るＡＴＣ機能により生成した目標軌道ＴＰ３を補正した補正軌道ＣＰ３に沿ってライトしているトラックＴＲ３の一例を示す図である。図８には、ＡＴＣ機能により、図６に示したトラックＴＲ２の軌道ＦＰ２に基づいて生成した目標軌道ＴＰ３と、目標軌道ＴＰ３の一部を補正した補正軌道ＣＰ３に沿ってライトされているトラックＴＲ３を示している。
【００６０】
図８に示した例では、ＭＰＵ６０は、トラックＴＲ３のセクタＳ３１まで目標軌道ＴＰ３に沿ってトラックＴＲ３をライトする。ＭＰＵ６０は、トラックＴＲ３のセクタＳ３１で、例えば、４セクタ（＝ｋ）先のセクタＳ３５に順方向と反対側で隣接するトラックＴＲ２のセクタＳ２ｓｔが開始セクタであるかないかを検出する。セクタＳ２ｓｔが開始セクタであると判定した場合、ＭＰＵ６０は、トラックＴＲ２のセクタＳ２ｓｔとセクタＳ２ｅｎとが互いに径方向にずれているかずれていないかを検出する。セクタＳ２ｓｔとセクタＳ２ｅｎとが径方向で互いにずれていることを検出した場合、ＭＰＵ６０は、目標軌道ＴＰ２に対するセクタＳ２ｓｔのオフセット方向及びオフセット量を検出する。ＭＰＵ６０は、セクタＳ２ｓｔが目標軌道ＴＰ２に対して順方向にオフセットしていると判定した場合、セクタＳ２ｓｔのオフセット量に応じて、トラックＴＲ３のセクタＳ３１から４セクタ（＝ｋ）先のセクタＳ３５までの各セクタに対する補正値をそれぞれ生成する。例えば、ＭＰＵ６０は、トラックＴＲ３のセクタＳ３１での目標軌道（目標位置）ＴＰ３とセクタＳ３５での目標軌道（目標位置）ＴＰ３とを連続的に接続するように、セクタＳ３１からセクタＳ３５までの間のセクタＳ３２、Ｓ３３、及びＳ３４に対して補正値をそれぞれ生成する。ＭＰＵ６０は、セクタＳ３２からセクタＳ３５までの各補正値を通る補正軌道ＣＰ３に沿ってトラックＴＲ３をライトする。ＭＰＵ６０は、セクタＳ３５よりも先のセクタにおいて、目標位置ＴＰ３に沿ってトラックＴＲ３をライトする。このようにライトされたトラックＴＲ３は、例えば、セクタＳ３３から位置Ｐ３５まで順方向に傾斜する領域ＡＲ１と、位置Ｐ３５からセクタＳ３７まで順方向と反対方向に傾斜する領域ＡＲ２とを含む。トラックＴＲ３において、セクタＳ３３からセクタＳ３６までの各セクタは、トラックセンタに対して順方向にオフセットしている。また、セクタＳ３４及びセクタＳ３５は、セクタＳ３１よりも順方向に位置している。前述のように、ＭＰＵ６０は、トラックＴＲ２の開始セクタＳ２ｓｔと終了セクタＳ２ｅｎとでトラックＴＲ２の軌道ＦＰ２が不連続であることと、トラックＴＲ２の開始セクタＳ２ｓｔが目標軌道ＴＰ２に対して順方向にオフセットしていることとを検出した場合、位置Ｐ３５の前のセクタ、例えば、セクタＳ３１からセクタＳ３４まで補正軌道ＣＰ３に沿ってトラックＴＲ３をライトする。このようにライトすることで、トラックＴＲ２のリードトラック幅が狭窄しない。例えば、トラックＴＲ２の開始セクタＳ２ｓｔの境界位置Ｐ２ｓｅのリードトラック幅Ｗｒ２ｓｅがデータをリード可能な幅に維持される。なお、ＭＰＵ６０は、現在のセクタから４（＝ｋ）セクタ先のセクタの順方向と反対方向に隣接するセクタが開始セクタであるかないか検出するように記載したが、４以外の数字のセクタ数先のセクタの順方向と反対方向に隣接するセクタが開始セクタであるかないかを検出しても良い。
【００６１】
図９Ａ及び図９Ｂは、本実施形態に係る磁気ディスク装置１のライト処理の一例を示すフローチャートである。  
ＭＰＵ６０は、現在のトラックｃの現在のセクタｓを選択する（Ｂ９０１Ａ）。ＭＰＵ６０は、フラグＦＬＧが“１”であるか“０”であるかを検出する（Ｂ９０２Ａ）。フラグＦＬＧが“０”であることを検出した場合（Ｂ９０２ＡのＮＯ）、ＭＰＵ６０は、図９Ｂの処理１へ進む。
【００６２】
図９Ｂにおいて、ＭＰＵ６０は、処理１から進み、ビットｓｔ［ｃ−１、ｓ＋ｋ］及び位置決め誤差ｅ［ｃ−１、ｓ＋ｋ］を取得する（Ｂ９０１Ｂ）。ＭＰＵ６０は、ビットｓｔ［ｃ−１、ｓ＋ｋ］＝１であるかないかを検出する（Ｂ９０２Ｂ）。すなわち、ＭＰＵ６０は、ビットｓｔ［ｃ−１、ｓ＋ｋ］に対応する隣接トラックｃ−１のセクタ［ｃ−１、ｓ＋ｋ］が開始セクタであるかないかを検出する。ビットｓｔ［ｃ−１、ｓ＋ｋ］＝１でないことを検出した場合（Ｂ９０２ＢのＮＯ）、ＭＰＵ６０は、図９Ａの処理２に進む。ビットｓｔ［ｃ−１、ｓ＋ｋ］＝１であることを検出した場合（Ｂ９０２ＢのＹＥＳ）、ＭＰＵ６０は、セクタ［ｃ−１、ｓ＋ｋ］の位置決め誤差ｅ［ｃ−１、ｓ＋ｋ］とセクタ［ｃ−１、ｓ＋ｋ−１］の位置決め誤差ｅ［ｃ−１、ｓ＋ｋ−１］とが同じか同じでないか検出する（Ｂ９０３Ｂ）。すなわち、ＭＰＵ６０は、開始セクタ［ｃ−１、ｓ＋ｋ］と終了セクタ［ｃ−１、ｓ＋ｋ−１］とがずれているかいないかを判定する。位置決め誤差ｅ［ｃ−１、ｓ＋ｋ］＝位置決め誤差ｅ［ｃ−１、ｓ＋ｋ−１］であることを検出した場合（Ｂ９０３ＢのＹＥＳ）、ＭＰＵ６０は、図９Ａの処理２に進む。位置決め誤差ｅ［ｃ−１、ｓ＋ｋ］＝位置決め誤差ｅ［ｃ−１、ｓ＋ｋ−１］でないことを検出した場合（Ｂ９０３ＢのＮＯ）、ＭＰＵ６０は、位置決め誤差ｅ［ｃ−１、ｓ＋ｋ］＞０であるかないかを検出する（Ｂ９０４Ｂ）。すなわち、ＭＰＵ６０は、隣接トラックの開始セクタ［ｃ−１、ｓ＋ｋ］が目標位置に対して順方向にオフセットしているかいないかを検出する。隣接トラックの開始セクタ［ｃ−１、ｓ＋ｋ］が目標位置に対して順方向にオフセットしていないことを検出した場合（Ｂ９０４ＢのＮＯ）、ＭＰＵ６０は、図９Ａの処理２に進む。隣接トラックの開始セクタ［ｃ−１、ｓ＋ｋ］が順方向にオフセットしていることを検出した場合（Ｂ９０４ＢのＹＥＳ）、ＭＰＵ６０は、フラグＦＬＧ＝１を出力する（Ｂ９０５Ｂ）。すなわち、ＭＰＵ６０は、ＡＴＣ機能で生成されたヘッド１５の目標位置を補正することを選択する。ＭＰＵ６０は、補正値のカウント数をクリア（ｎ＝０）し（Ｂ９０６Ｂ）、補正値ｅｍ［ｎ］（ｎ＝１、２…、ｋ−１）を生成し（Ｂ９０７Ｂ）、図９Ａの処理２に進む。
【００６３】
図９Ａにおいて、フラグＦＬＧが“１”であることを検出した場合（Ｂ９０２ＡのＹＥＳ）、ＭＰＵ６０は、ｎ＝ｋ−１であるでないかを検出する（Ｂ９０３Ａ）。すなわち、ＭＰＵ６０は、最後の補正値ｅｍ［ｋ−１］であるかでないかを検出する。ｎ＝ｋ−１でないことを検出した場合（Ｂ９０３ＡのＮＯ）、ＭＰＵ６０は、ｎ＝ｎ＋１とする。すなわち、ＭＰＵ６０は、次の補正値ｅｍ［ｎ］を生成する（Ｂ９０４Ａ）。ｎ＝ｋ−１であることを検出した場合（Ｂ９０３ＡのＹＥＳ）、ＭＰＵ６０は、フラグをクリアにする信号、例えば、フラグＦＬＧ＝０を出力する（Ｂ９０５Ａ）。すなわち、ＭＰＵ６０は、通常のＡＴＣ機能で目標位置を補正することを選択する。ＭＰＵ６０は、ｅ［ｃ−１、ｓ］＝ｅｍ［ｎ］とする（Ｂ９０６Ａ）。すなわち、ＭＰＵ６０は、隣接トラックｃ−１のセクタｓの位置決め誤差ｅ［ｃ−１、ｓ］として補正値ｅｍ［ｎ］を設定する。処理２の後に、ＭＰＵ６０は、［ｃ−１、ｓ］＝ｅ０［ｃ−１、ｓ］とする（Ｂ９０７Ａ）。すなわち、ＭＰＵ６０は、隣接トラックｃ−１のセクタｓの位置決め誤差ｅ［ｃ−１、ｓ］としてｅ０［ｃ−１、ｓ］を設定する。
【００６４】
ＭＰＵ６０は、隣接トラックｃ−１のセクタｓの位置決め誤差ｅ［ｃ−１、ｓ］から現在のトラックｃのセクタｓの補正値ａ［ｃ、ｓ］を生成する（Ｂ９０８Ａ）。ＭＰＵ６０は、補正値ａ［ｃ、ｓ］を使用してヘッド１５の位置を制御する（Ｂ９０９Ａ）。ＭＰＵ６０は、現在のセクタ［ｃ、ｓ］にデータをライトする。ＭＰＵ６０は、ライトが終了したかしていないかを検出する（Ｂ９１０Ａ）。ライトが終了したことを検出した場合（Ｂ９１０ＡのＹＥＳ）、ＭＰＵ６０は、処理を終了する。ライトが終了していないことを検出した場合（Ｂ９１０ＡのＮＯ）、ＭＰＵ６０は、終了セクタであるかないかを検出する（Ｂ９１１Ａ）。終了セクタではないことを検出した場合（Ｂ９１１ＡのＮＯ）、ＭＰＵ６０は、ｓ＝ｓ＋１とする（Ｂ９１２Ａ）。すなわち、ＭＰＵ６０は、次のセクタｓ＋１にヘッド１５を選択する。終了セクタであることを検出した場合（Ｂ９１１ＡのＹＥＳ）、ＭＰＵ６０は、処理を終了する。
【００６５】
本実施形態によれば、磁気ディスク装置１は、隣接トラックの進行方向に開始セクタを検出し、隣接トラックの目標位置に対する開始セクタのオフセット方向を検出する。磁気ディスク装置１は、隣接トラックの開始セクタと終了セクタとが径方向にずれていることを検出し、且つ隣接トラックの開始セクタが目標位置に対して順方向にオフセットしていることを検出した場合、開始セクタのオフセット量に応じて、通常のＡＴＣ機能により生成された現在のトラックにおける目標軌道を補正した補正軌道を生成する。補正軌道に沿って現在のトラックをライトすることで、磁気ディスク装置１は、隣接トラックの開始セクタで生じるリードトラック幅の狭窄を防止できる。その結果、磁気ディスク装置１は、信頼性を向上できる。
【００６６】
次に、変形例及び他の実施形態に係る磁気ディスク装置及びライト方法について説明する。変形例及び他の実施形態において、前述の実施形態と同一の部分には同一の参照符号を付してその詳細な説明を省略する。
【００６７】
（変形例１）  
変形例１の磁気ディスク装置１は、ＡＴＣ機能により生成された目標軌道が不連続である場合に、現在のトラックの現在のセクタから目標軌道が１つ前のセクタと不連続となるセクタよりも先のセクタまで補正値を生成する点が第１実施形態の磁気ディスク装置１と異なる。
【００６８】
図１０は、変形例１に係るＡＴＣ機能により生成した目標軌道ＴＰ３を補正した補正軌道ＣＰ３に沿ってライトしているトラックＴＲ３の一例を示す図である。図１０には、ＡＴＣ機能により、図６に示したトラックＴＲ２の軌道ＦＰ２に基づいて生成した目標軌道ＴＰ３と、目標軌道ＴＰ３の一部を補正した補正軌道ＣＰ３とに沿ってライトされているトラックＴＲ３を示している。
【００６９】
図１０に示した例では、ＭＰＵ６０は、トラックＴＲ３のセクタＳ３１まで目標軌道ＴＰ３に沿ってトラックＴＲ３をライトする。ＭＰＵ６０は、トラックＴＲ３のセクタＳ３１で、例えば、４セクタ（＝ｋ）先のセクタＳ３５に順方向と反対方向に隣接するトラックＴＲ２のセクタＳ２ｓｔが開始セクタであるかないかを検出する。セクタＳ２ｓｔが開始セクタであると判定した場合、ＭＰＵ６０は、トラックＴＲ２のセクタＳ２ｓｔとセクタＳ２ｅｎとが互いに径方向にずれているかいないかを検出する。セクタＳ２ｓｔとセクタＳ２ｅｎとが径方向で互いにずれていることを検出した場合、ＭＰＵ６０は、目標軌道ＴＰ２に対するセクタＳ２ｓｔのオフセット方向を検出する。ＭＰＵ６０は、セクタＳ２ｓｔが目標軌道ＴＰ２に対して順方向にオフセットしていると判定した場合、トラックＴＲ３のセクタＳ３１から９セクタ（＝ｋ＋５）先のセクタＳ４０までの各セクタに対する補正値を生成する。このとき、ＭＰＵ６０は、目標軌道ＴＰ３に対して順方向に変化する軌道となるように、トラックＴＲ３のセクタＳ３２からセクタＳ３４までの各セクタに対する補正値をそれぞれ生成する。また、ＭＰＵ６０は、目標軌道ＴＰ３に対して順方向と反対方向にオフセットした軌道となるように、トラックＴＲ３のセクタＳ３５からセクタＳ３９までの各セクタに対する補正値をそれぞれ生成する。ＭＰＵ６０は、セクタＳ３２からセクタＳ３９までの各補正値を通る補正軌道ＣＰ３に沿ってトラックＴＲ３をライトする。ＭＰＵ６０は、セクタＳ３９よりも先のセクタにおいて、目標位置ＴＰ３に沿ってトラックＴＲ３をライトする。このようにライトされたトラックＴＲ３は、例えば、セクタＳ３３から位置Ｐ３５まで順方向に傾斜する領域ＡＲ１と、位置Ｐ３５からセクタＳ３９まで順方向と反対方向に傾斜する領域ＡＲ２とを含む。トラックＴＲ３において、セクタＳ３３からセクタＳ３９までの各セクタは、トラックセンタに対して順方向にオフセットしている。また、セクタＳ３４及びセクタＳ３５は、セクタＳ３１よりも順方向に位置している。前述のように、トラックＴＲ２のセクタＳ３１からセクタＳ４０までの各セクタに対して補正値を生成することで、ＭＰＵ６０は、緩やかに変化する補正軌道を生成する。このように補正軌道を生成した場合であっても、トラックＴＲ２のリードトラック幅が狭窄しない。
【００７０】
変形例１によれば、磁気ディスク装置１は、隣接トラックの開始セクタの順方向に位置する現在のトラックのセクタの先のいくつかのセクタに対して補正値をそれぞれ生成する。そのため、磁気ディスク装置１は、前述の実施形態の補正軌道と比較して緩やかに変化する補正軌道を生成する。磁気ディスク装置１は、隣接トラックの開始セクタで生じるリードトラック幅の狭窄を防止できる。また、磁気ディスク装置１は、現在のトラックの順方向へのオフセット量を低減することができる。その結果、磁気ディスク装置１は、信頼性を向上できる。
【００７１】
（変形例２）  
変形例２の磁気ディスク装置１は、ＡＴＣ機能により生成した目標軌道が不連続である場合に、隣接トラックの開始セクタの順方向に位置する現在のトラックのセクタまでの軌道をトラックセンタに基づいて生成する点が前述の実施形態の磁気ディスク装置１と異なる。
【００７２】
図１１は、変形例２に係るＡＴＣ機能により生成した目標軌道ＴＰ３を補正した補正軌道ＣＰ３に沿ってライトしているトラックＴＲ３の一例を示す図である。図１１には、ＡＴＣ機能により、図６に示したトラックＴＲ２の軌道ＦＰ２に基づいて生成した目標軌道ＴＰ３と、目標軌道ＴＰ３の一部を補正した補正軌道ＣＰ３とに沿ってライトされているトラックＴＲ３を示している。
【００７３】
図１１に示した例では、ＭＰＵ６０は、トラックＴＲ３のセクタＳ３０まで目標軌道ＴＰ３に沿ってトラックＴＲ３をライトする。ＭＰＵ６０は、トラックＴＲ３のセクタＳ３０で、例えば、５セクタ（＝ｋ）先のセクタＳ３５に隣接するトラックＴＲ２のセクタＳ２ｓｔが開始セクタであるかどうかを検出する。セクタＳ２ｓｔが開始セクタであると判定した場合、ＭＰＵ６０は、トラックＴＲ２のセクタＳ２ｓｔとセクタＳ２ｓｅとが互いに径方向にずれているかずれていないかを検出する。セクタＳ２ｓｔとセクタＳ２ｅｎとが径方向で互いにずれていることを検出した場合、ＭＰＵ６０は、目標軌道ＴＰ２に対するセクタＳ２ｓｔのオフセット方向及びオフセット量を検出する。ＭＰＵ６０は、セクタＳ２ｓｔが目標軌道ＴＰ２に対して順方向にオフセットしていると判定した場合、セクタＳ２ｓｔのオフセット量に応じて、トラックＴＲ３のセクタＳ３０から５セクタ（＝ｋ）先のセクタＳ３５までの各セクタに対する補正値を生成する。このとき、ＭＰＵ６０は、トラックＴＲ３のセクタＳ３１からセクタＳ３４までの各セクタに対してトラックＴＲ３のトラックセンタに基づく補正値をそれぞれ生成する。ＭＰＵ６０は、セクタＳ３１からセクタＳ３４までの各補正値を通る補正軌道ＣＰ３に沿ってトラックＴＲ３をライトする。ＭＰＵ６０は、セクタＳ３５よりも先のセクタにおいて、目標位置ＴＰ３に沿ってトラックＴＲ３をライトする。このようにライトされたトラックＴＲ３は、例えば、セクタＳ３５で順方向に傾斜する領域ＡＲ１と、セクタＳ３５からセクタＳ３７まで順方向と反対方向に傾斜する領域ＡＲ２とを含む。トラックＴＲ３において、セクタＳ３５からセクタＳ３７までの各セクタは、トラックセンタに対して順方向にオフセットしている。また、セクタＳ３５及びセクタＳ３６は、セクタＳ３１よりも順方向に位置している。
【００７４】
変形例２によれば、磁気ディスク装置１は、トラックＴＲ２の開始セクタＳ２ｓｔと終了セクタＳ２ｅｎとでトラックＴＲ２の軌道ＦＰ２が不連続であることと、トラックＴＲ２の開始セクタＳ２ｓｔが目標軌道ＴＰ２に対して順方向にオフセットしていることとを検出した場合、隣接トラックの開始セクタの順方向に位置する現在のトラックのセクタまでをトラックセンタに基づく補正軌道に沿って現在のトラックをライトする。そのため、磁気ディスク装置１は、隣接トラックの開始セクタで生じるリードトラック幅の狭窄を防止できる。その結果、磁気ディスク装置１は、信頼性を向上できる。
【００７５】
（第２実施形態）  
第２実施形態の磁気ディスク装置１は、現在のトラックの開始セクタが目標軌道に対して順方向にオフセットしていることを検出した場合、現在のトラックの終了セクタを開始セクタに接続する補正軌道を生成する点が前述の実施形態と異なる。
【００７６】
図１２は、第２実施形態に係るサーボ制御部６３の構成の一例を示すブロック図である。  
マルチプレクサ６０１は、現在のセクタ番号ｓにセクタ数ｋを加えたセクタ番号ｓ＋ｋと、現在のトラック番号ｃとが入力される。マルチプレクサ６０１は、入力された現在のトラック番号ｃと、セクタ番号ｓ＋ｋとをアドレス情報［ｃ、ｓ＋ｋ］として、例えば、内部メモリ６１０に出力する。
【００７７】
リードアクセス部６１５は、マルチプレクサ６０１から入力されたアドレス情報［ｃ、ｓ＋ｋ］のセクタ（以下、セクタ［ｃ、ｓ＋ｋ］と示す）を端子ＡＤ５で対象として指定する。リードアクセス部６１５は、セクタ［ｃ、ｓ＋ｋ］に対応する位置決め誤差ｅ［ｃ、ｓ＋ｋ］及びビットｓｔ［ｃ、ｓ＋ｋ］を含むデータを端子ＤＴ５でリードし、デマルチプレクサ６２０に出力する。
【００７８】
デマルチプレクサ６２０は、リードアクセス部６１５から入力された位置決め誤差ｅ［ｃ、ｓ＋ｋ］及びビットｓｔ［ｃ、ｓ＋ｋ］を含むデータを位置決め誤差ｅ［ｃ、ｓ＋ｋ］とビットｓｔ［ｃ、ｓ＋ｋ］とに分割し、補正部６３０にそれぞれ出力する。
【００７９】
補正部６３０は、入力された信号を参照して、現在のトラックの進行方向に開始セクタを検出する。現在のトラックの進行方向に開始セクタを検出した場合、補正部６３０は、現在のトラックの目標位置に対する開始セクタのオフセット方向及びオフセット量を検出する。補正部６３０は、現在のトラックの目標位置に対する開始セクタのオフセット方向及びオフセット量に応じて、現在のトラックの目標位置を補正するための補正値を生成する。
【００８０】
例えば、補正部６３０は、入力された位置決め誤差ｅ［ｃ、ｓ＋ｋ］とビットｓｔ［ｃ、ｓ＋ｋ］とを参照して、進行方向に開始セクタを検出する。補正部６３０は、立ち上がっているビットｓｔ［ｃ、ｓ＋ｋ］（例えば、ｓｔ［ｃ、ｓ＋ｋ］＝１）を検出した場合、このビット［ｃ、ｓ＋ｋ］に対応するセクタ［ｃ、ｓ＋ｋ］が開始セクタ［ｃ、１］であると判定する。補正部６３０は、現在のトラックｃの開始セクタ［ｃ、ｓ＋ｋ］（［ｃ、１］）での位置決め誤差ｅ［ｃ、ｓ＋ｋ］（ｅ［ｃ、１］）がゼロ“０”よりも大きいか（ｅ［ｃ、ｓ＋ｋ］＞０）ゼロ“０”以下か（ｅ［ｃ、ｓ＋ｋ］≦０）を検出する。すなわち、補正部６３０は、現在のトラックのセクタ［ｃ、ｓ＋ｋ］が目標位置に対して順方向にオフセットしているかいないかを検出する。補正部６３０は、位置決め誤差ｅ［ｃ、ｓ＋ｋ］がゼロよりも大きいことを検出した場合、現在のトラックの開始セクタ［ｃ、ｓ＋ｋ］が目標位置に対して順方向にオフセットしていると判定する。補正部６３０は、現在のトラックの開始セクタ［ｃ、ｓ＋ｋ］が開始セクタ［ｃ、１］であることを検出し、且つ現在のトラックの開始セクタ［ｃ、ｓ＋ｋ］（［ｃ、１］）が目標位置に対して順方向にオフセットしていることを検出した場合、現在のトラックの幾つかのセクタの目標位置を補正するための補正値を生成する。例えば、補正部６３０は、現在のトラックにおいて、現在のセクタ［ｃ、ｓ］での目標位置と現在のセクタ［ｃ、ｓ］からｋセクタ先のセクタ［ｃ、ｓ＋ｋ］（［ｃ、１］）での目標位置とを連続的に接続する補正軌道をヘッド１５が通るように、セクタ［ｃ、ｓ］からセクタ［ｃ、ｓ＋ｋ］までの各セクタに対する補正値ｅｍ［ｎ］（ｎ＝１、２、…、ｋ−１）を生成する。補正部６３０は、現在のセクタ［ｃ、ｓ］のｋセクタ先のセクタ［ｃ、ｓ＋ｋ］が開始セクタであることを検出し、且つ現在のトラックのセクタ［ｃ、ｓ＋ｋ］が目標位置に対して順方向にオフセットしていることを検出した場合、補正値を選択するためのフラグＦＬＧ、例えば、ＦＬＧ＝１とする信号をスイッチ部６４０に出力する。補正部６３０は、生成した補正値ｅｍ［ｎ］をスイッチ部６４０に出力する。
【００８１】
図１３Ａは、第２実施形態に係るＡＴＣ機能により生成した目標軌道ＴＰ２を補正した補正軌道ＣＰ２に沿ってライトしているトラックＴＲ２の一例を示す図であり、図１３Ｂは、第２実施形態に係るＡＴＣ機能により生成した目標軌道ＴＰ３に沿ってライトしているトラックＴＲ３の一例を示す図である。図１３Ａには、ＡＴＣ機能により、トラックＴＲ１の軌道ＦＰ１に基づいて生成した目標軌道ＴＰ２と、目標軌道ＴＰ２の一部を補正した補正軌道ＣＰ２とに沿ってライトされたトラックＴＲ２と、トラックＴＲ２の補正軌道ＣＰ２に基づいて生成した目標軌道ＴＰ３とを示している。また、図１３Ｂには、目標軌道ＴＰ３に基づいて生成したトラックＴＲ３を示している。
【００８２】
図１３Ａに示した例では、ＭＰＵ６０は、トラックＴＲ２のセクタＳ２１まで目標軌道ＴＰ２に沿ってトラックＴＲ２をライトする。ＭＰＵ６０は、トラックＴＲ２のセクタＳ２１で、例えば、４セクタ（＝ｋ）先のセクタＳ２ｓｔが開始セクタであるかないかを検出する。ＭＰＵ６０は、セクタＳ２ｓｔが開始セクタであると判定した場合、目標軌道ＴＰ２に対するセクタＳ２ｓｔのオフセット方向及びオフセット量を検出する。ＭＰＵ６０は、セクタＳ２ｓｔが目標軌道（目標位置）ＴＰ２に対して順方向にオフセットしていると判定した場合、セクタＳ２ｓｔのオフセット量に応じて、トラックＴＲ２のセクタＳ２１から４セクタ（＝ｋ）先のセクタＳ２ｓｔまでの各セクタに対する補正値をそれぞれ生成する。このとき、ＭＰＵ６０は、トラックＴＲ２のセクタＳ２ｓｔでの目標軌道（目標位置）ＴＰ２とセクタＳ２１での目標軌道（目標位置）ＴＰ２とを連続的に接続するように、セクタＳ２１からセクタＳ２ｓｔまでの間のセクタＳ２２、Ｓ２３、及びＳ２ｅｎに対して補正値をそれぞれ生成する。例えば、ＭＰＵ６０は、セクタＳ２２からセクタＳ２ｅｎまでの各セクタに対する補正値をそれぞれ生成する。ＭＰ６０は、セクタＳ２２からセクタＳ２ｅｎまでの各セクタに対する各補正値を通る補正軌道ＣＰ２に沿ってトラックＴＲ２をライトし、次の隣接トラック（トラックＴＲ３）の開始セクタにヘッド１５を移動する。図１３Ｂに示すように、ＭＰＵ６０は、トラックＴＲ２に基づいて生成された目標軌道ＴＰ３に沿ってトラックＴＲ３をライトする。このようにライトされたトラックＴＲ３は、開始セクタと終了セクタとが連続的に接続されている。そのため、トラックＴＲ３がトラックＴＲ２に重ね書きされた場合に、トラックＴＲ２のリードトラック幅が狭窄しない。例えば、トラックＴＲ２の開始セクタＳ２ｓｔの境界位置Ｐ２ｓｅのリードトラック幅Ｗｒ２ｓｅがデータをリード可能な幅に維持される。
【００８３】
図１４は、本実施形態に係る磁気ディスク装置１のライト処理の一例を示すフローチャートである。図１４は、図９Ｂに示すフローチャートに対応している。  
ＭＰＵ６０は、図９Ａから続く処理１から進み、ビットｓｔ［ｃ、ｓ＋ｋ］及び位置決め誤差ｅ［ｃ、ｓ＋ｋ］を取得する（Ｂ１４０１）。ＭＰＵ６０は、ビットｓｔ［ｃ、ｓ＋ｋ］＝１であるかないかを検出する（Ｂ１４０２）。すなわち、ＭＰＵ６０は、ビットｓｔ［ｃ、ｓ＋ｋ］に対応する現在のトラックｃのセクタ［ｃ、ｓ＋ｋ］が開始セクタであるかないかを検出する。ビットｓｔ［ｃ、ｓ＋ｋ］＝１でないことを検出した場合（Ｂ１４０２のＮＯ）、ＭＰＵ６０は、図９Ａの処理２に進む。ビットｓｔ［ｃ、ｓ＋ｋ］＝１であることを検出した場合（Ｂ１４０２のＹＥＳ）、ＭＰＵ６０は、位置決め誤差ｅ［ｃ、ｓ＋ｋ］＞０であるかないかを検出する（Ｂ１４０３）。すなわち、ＭＰＵ６０は、開始セクタ［ｃ、ｓ＋ｋ］が目標位置に対して順方向にオフセットしているかいないかを検出する。開始セクタ［ｃ、ｓ＋ｋ］が目標位置に対して順方向にオフセットしていないことを検出した場合（Ｂ１４０３のＮＯ）、ＭＰＵ６０は、図９Ａの処理２に進む。開始セクタ［ｃ、ｓ＋ｋ］が目標位置に対して順方向にオフセットしていることを検出した場合（１４０３のＹＥＳ）、ＭＰＵ６０は、フラグＦＬＧ＝１を出力する（Ｂ９０５Ｂ）。ＭＰＵ６０は、補正値のカウント数をクリア（ｎ＝０）し（Ｂ９０６Ｂ）、補正値ｅｍ［ｎ］（ｎ＝１、２…、ｋ）を生成し（Ｂ９０７Ｂ）、図９Ａの処理２に進む。
【００８４】
本実施形態によれば、磁気ディスク装置１は、現在のトラックの進行方向に開始セクタを検出し、且つ現在のトラックの開始セクタにおける目標位置に対する開始セクタのオフセット方向及びオフセット量を検出する。磁気ディスク装置１は、現在のトラックの開始セクタが目標位置に対して順方向にオフセット方向している場合、開始セクタのオフセット量に応じて、現在のトラックの目標軌道を補正した補正軌道を生成する。補正軌道に沿って現在のトラックをライトすることで、磁気ディスク装置１は、現在のトラックの開始セクタで生じ得るリードトラック幅の狭窄を防止できる。その結果、磁気ディスク装置１は、信頼性を向上できる。
【００８５】
なお、前述の実施形態では瓦記録方式の磁気ディスク装置１について記載したが、通常の瓦記録方式ではない通常の記録方式の磁気ディスク装置１にも前述の実施形態に記載した構成を適用することができる。
【００８６】
いくつかの実施形態を説明したが、これらの実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。これら新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００８７】
１…磁気ディスク装置、１０…磁気ディスク、１０ｓ…瓦記録領域、１０ｍ…メディアキャッシュ領域、１２…スピンドルモータ（ＳＰＭ）、１３…アーム、１４…ボイスコイルモータ（ＶＣＭ）、１５…ヘッド、１５Ｗ…ライトヘッド、１５Ｒ…リードヘッド、２０…ドライバＩＣ、３０…ヘッドアンプＩＣ、４０…リード／ライト（Ｒ／Ｗ）チャネル、５０…ハードディスクコントローラ（ＨＤＣ）、６０…マイクロプロセッサ（ＭＰＵ）、７０…揮発性メモリ、８０…不揮発性メモリ、９０…バッファメモリ、１００…ホストシステム（ホスト）、１３０…システムコントローラ。
【図１】
2018113085.tif 000003
【図２】
2018113085.tif 000004
【図３】
2018113085.tif 000005
【図４】
2018113085.tif 000006
【図５】
2018113085.tif 000007
【図６】
2018113085.tif 000008
【図７】
2018113085.tif 000009
【図８】
2018113085.tif 000010
【図９Ａ】
2018113085.tif 000011
【図９Ｂ】
2018113085.tif 000012
【図１０】
2018113085.tif 000013
【図１１】
2018113085.tif 000014
【図１２】
2018113085.tif 000015
【図１３Ａ】
2018113085.tif 000016
【図１３Ｂ】
2018113085.tif 000017
【図１４】
2018113085.tif 000018