(57)【特許請求の範囲】
【請求項１】
複数のトラック、複数のセクタ、およびデータの位置情報である複数のサーボ情報に基づき、データの読出しおよび書込みがなされる磁気ディスクと、
前記磁気ディスクから読み出した複数のサーボ情報のうち、第１サーボ情報の次のサーボ情報である第２サーボ情報に基づき、前記第１サーボ情報と前記第２サーボ情報との間で読み出したデータが本来のトラックであるオントラックのセクタから読み出したデータであるかを判定するセクタ判定部と、
前記セクタ判定部の判定結果に基づき、前記第１サーボ情報と前記第２サーボ情報の間のセクタに格納されたデータを上位ホストに出力するか否かを制御する出力制御部と、
を備える磁気ディスク装置。
【請求項２】
請求項１に記載の磁気ディスク装置において、
前記セクタ判定部は、前記サーボ情報に基づきオントラックであると確認されるときに出力される確認信号が、前記第２サーボ情報の読出しのときに出力されない場合、前記第１サーボ情報と前記第２サーボ情報の間で読み出したデータが本来のトラックであるオントラックのセクタから読み出したデータでないと判定し、
前記出力制御部は、前記セクタ判定部によってオントラックのセクタから読み出したデータでないと判定された場合、前記第１サーボ情報と前記第２サーボ情報の間のセクタに格納されたデータを上位ホストに出力しないよう制御することを特徴とする磁気ディスク装置。
【請求項３】
複数のトラック、複数のセクタに基づきデータの読出しおよび書込みがなされる記憶媒体上に備えられた、前記データの位置情報である複数のサーボ情報のうち、第１サーボ情報の次のサーボ情報である第２サーボ情報に基づき、前記記憶媒体から読み出した前記第１サーボ情報と前記第２サーボ情報との間で読み出したデータが本来のトラックであるオントラックのセクタから読み出したデータであるかを判定するセクタ判定部と、
前記セクタ判定部の判定結果に基づき、前記第１サーボ情報と前記第２サーボ情報の間のセクタに格納されたデータを上位ホストに出力するか否かを制御する出力制御部と、
を備える磁気ディスク制御装置。
【請求項４】
複数のトラック、複数のセクタに基づきデータの読出しおよび書込みがなされる記憶媒体上に備えられた、前記データの位置情報である複数のサーボ情報のうち、第１サーボ情報の次のサーボ情報である第２サーボ情報に基づき、前記記憶媒体から読み出した前記第１サーボ情報と前記第２サーボ情報の間で読み出したデータが本来のトラックであるオントラックのセクタから読み出したデータであるかを判定し、
判定結果に基づき、前記第１サーボ情報と前記第２サーボ情報の間のセクタに格納されたデータを上位ホストに出力するか否かを制御する磁気ディスク制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、オフトラック状態におけるリード時のデータ保証を強化する磁気ディスク装置、磁気ディスク制御装置、磁気ディスク制御方法に関するものである。
【背景技術】
【０００２】
従来、ＨＤＤ（ＨＤＤ：Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）はリード時のデータ保証としてＥＣＣ（ＥＣＣ：Ｅｒｒｏｒ  Ｃｏｒｒｅｃｔｉｎｇ  Ｃｏｄｅ）及びＣＲＣ（ＣＲＣ：Ｃｙｃｌｉｃ  Ｒｅｄｕｎｄａｎｃｙ  Ｃｈｅｃｋ）が使用されている。ＥＣＣは主にデータ訂正として使用され、ＣＲＣはデータの正当性を検証するために、ＬＢＡ（ＬＢＡ：Ｌｏｇｉｃａｌ  Ｂｌｏｃｋ  Ａｄｄｒｅｓｓ）等のセクタ固有なデータに基づき、期待と異なるセクタのデータをリードしてしまうことを検出する目的がある。
【０００３】
また、本発明の関連ある従来技術として、路線間クロストークの大きさを検出して磁気記録機能の正常、異常の状態判定を行い、磁気記録機能を保証する磁気ディスク装置が開示されている（例えば特許文献１）。また、磁気ディスク装置等の記憶媒体にリード、ライトする外部記憶部が正確に目的のアドレスのデータを読み出したことを処理の最中に確認して、データを保証するデータ保証方法が開示されている（例えば特許文献２）。
【特許文献１】特開２００４−１９２６７６号公報
【特許文献２】特開平５−２２４８３３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、近年、ＨＤＤの記憶容量の増大及び記録密度の向上に伴いトラック間が狭まる一方、ライドヘッドとリードヘッドのコア幅の違いや単版ＳＴＷ等の影響により、トラック間に予期せず別のトラックが存在してしまう問題が発生する。この予期しないトラックにデータがライトされてしまった場合、それを検出し本来のトラックにデータを書き戻したとしても同一セクタ情報を保持したトラックが二重に存在してしまい、残留振動等で別のトラックのデータをリードしてもセクタ異常を検出できずデータ化けが発生する場合がある。
【０００５】
上述の事象を図７にて説明する。本来、Ｄ１からＤ３までが正常なセクタであるのに対し、Ｄ１’からＤ３’までの予期しないトラック上のセクタにデータがライトされてしまった場合、それが検出され本来のトラック（Ｄ１からＤ３）にデータが書き戻される。その後、ＨＤＤの使用によって、本来のトラック（Ｄ１からＤ３）に新たに別のデータが書き込まれた場合、Ｄ１からＤ３までに格納されたデータは当然Ｄ１’からＤ３’までに格納されたデータとは異なる状態となる（図７の上段図）。
【０００６】
上述の状態において、リード時、例えば本来Ｄ１、Ｄ２、Ｄ３が読み出されるべきところを残留振動等によって図７下段の矢印のようにＤ１、Ｄ２、Ｄ３’のデータが読み出されても、セクタ異常を検出できずデータ化けが発生する。
【０００７】
本発明は上述した問題点を解決するためになされたものであり、リード時のセクタがオントラック上のセクタか予期しないオフトラック上のセクタかを判定し、判定結果に基づきセクタに格納されたデータを上位ホストに出力するか否かを制御する磁気ディスク装置、磁気ディスク制御装置、磁気ディスク制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上述した課題を解決するため、本発明の一態様に係る磁気ディスク装置は、複数のトラック、複数のセクタ、およびデータの位置情報である複数のサーボ情報に基づき、データの読出しおよび書込みがなされる磁気ディスクと、前記磁気ディスクから読み出した複数のサーボ情報のうち、第１サーボ情報の次のサーボ情報である第２サーボ情報に基づき、前記第１サーボ情報と前記第２サーボ情報との間で読み出したデータが本来のトラックであるオントラックのセクタから読み出したデータであるかを判定するセクタ判定部と、前記セクタ判定部の判定結果に基づき、前記第１サーボ情報と前記第２サーボ情報の間のセクタに格納されたデータを上位ホストに出力するか否かを制御する出力制御部と、を備えるものである。
【０００９】
また、上述した課題を解決するため、本発明の一態様に係る磁気ディスク制御装置は、複数のトラック、複数のセクタに基づきデータの読出しおよび書込みがなされる記憶媒体上に備えられた、前記データの位置情報である複数のサーボ情報のうち、第１サーボ情報の次のサーボ情報である第２サーボ情報に基づき、前記記憶媒体から読み出した前記第１サーボ情報と前記第２サーボ情報との間で読み出したデータが本来のトラックであるオントラックのセクタから読み出したデータであるかを判定するセクタ判定部と、前記セクタ判定部の判定結果に基づき、前記第１サーボ情報と前記第２サーボ情報の間のセクタに格納されたデータを上位ホストに出力するか否かを制御する出力制御部と、を備えるものである。
【００１０】
さらに、上述した課題を解決するため、本発明の一態様に係る磁気ディスク制御方法は複数のトラック、複数のセクタに基づきデータの読出しおよび書込みがなされる記憶媒体上に備えられた、前記データの位置情報である複数のサーボ情報のうち、第１サーボ情報の次のサーボ情報である第２サーボ情報に基づき、前記記憶媒体から読み出した前記第１サーボ情報と前記第２サーボ情報の間で読み出したデータが本来のトラックであるオントラックのセクタから読み出したデータであるかを判定し、判定結果に基づき、前記第１サーボ情報と前記第２サーボ情報の間のセクタに格納されたデータを上位ホストに出力するか否かを制御するものである。
【発明の効果】
【００１１】
本発明の一態様に係る磁気ディスク装置、磁気ディスク制御装置、磁気ディスク制御方法によって、オフトラック状態であるときにリードしたデータを上位ホストに出力するか否かを制御することができる。
【発明を実施するための最良の形態】
【００１２】
以下、本発明の実施の形態について図面を参照しつつ説明する。
【００１３】
図１に、本実施の形態における磁気ディスク装置の構成を示す。本実施の形態における磁気ディスク装置１００は、磁気ディスク制御回路１０、マイクロプロセッサ２０、データバッファ３０、ヘッド位置決め制御部４０、リードライト制御部５０、モータ駆動制御部６０、アクチュエータ７１、ヘッド７２、スピンドルモータ７３、ディスク媒体７４を備える。
【００１４】
磁気ディスク制御回路１０は、主にインターフェース・プロトコル制御、データバッファ制御、ディスク・フォーマット制御を行う。また、磁気ディスク制御回路１０は、ディスク媒体７４上の所定のサーボ情報（第１サーボ情報）の次のサーボ情報（第２サーボ情報）に基づき、所定のサーボ情報と次のサーボ情報の間のセクタがオントラックのセクタであるかを判定し、判定結果に基づき、所定のサーボ情報と次のサーボ情報の間のセクタに格納されたデータを上位ホストに出力するか否かを制御する。
【００１５】
マイクロプロセッサ２０は、後述するリードライト制御部５０、モータ駆動制御部６０を制御すると共に各種演算処理を行う。データバッファ３０は、上位ホスト２００にデータを送信する際、データを一時的に保持するリングバッファである。
【００１６】
ヘッド位置決め制御部４０は、データをリード、ライトをする際、ヘッド７２を支えるアクチュエータ７１の動作制御およびヘッド７２の位置を決定する。リードライト制御部５０は、データのリード、ライトの制御（復調、データ変調）を行う。また、モータ駆動制御部６０は、スピンドルモータ７３の制御を行う。
【００１７】
ヘッド７２は、データのリードおよびライトを行うデータの書き込み用ライトヘッドおよび読み出し用ＭＲヘッドをもつ複合型ヘッドである。スピンドルモータ７３は、ディスク媒体７４を保持するスピンドル軸の回転制御を行う。ディスク媒体７４は、複数のトラック、複数のセクタ、およびデータの位置情報である複数のサーボ情報に基づき、ヘッド７２にてデータの読出しおよび書込みがなされる磁気ディスク媒体である。
【００１８】
次に、磁気ディスク制御回路１０の詳細を図２に示す。磁気ディスク制御回路１０は、カウンタ１からカウンタ７、データフロー制御部８、Ｉ／Ｆ制御部９（Ｉ／Ｆ：Ｉｎｔｅｒｆａｃｅ）を備える。
【００１９】
カウンタ１からカウンタ７は、それぞれ異なるものをカウントしている。カウンタ１は、データセクタの終わりでカウンタ値をカウントアップする。カウンタ２は、データセクタのＥＣＣ訂正（誤り訂正）まで完了し、正常にリードできた場合にカウンタ値をカウントアップする。カウンタ３は、カウンタ２のカウンタ値をサーボ情報の位置まで保持する。カウンタ４は、次のサーボ情報の確認信号が出力されるまでカウンタ３の値を保持する。尚、確認信号は直前のサーボ情報から問題なく目的のトラックにヘッドが位置付けられている場合にオントラック状態を示すパルス信号であり、本実施の形態では従来ライト時のみ使用されている確認信号をリード時でも使用する。また、確認信号はヘッド位置決め制御部４０から出力される。
【００２０】
カウンタ５は、カウンタ１の値をサーボマークの位置まで保持する。カウンタ６は、確認信号あるいはカウンタ２の更新タイミングでカウンタ２とカウンタ５のうち小さいカウンタ値をコピーし、保持する。カウンタ７は、上位ホストとのデータフローに使用され、カウンタ６の更新タイミングでその増加量分を累積加算するとともに、上位ホストへのデータ出力があった場合、その出力分が減算されるカウンタである。
【００２１】
尚、カウンタ５からカウンタ６は、ＥＣＣ訂正に時間を要した場合でも、その遅延を最小限に抑える機能を提供するためのカウンタである。またカウンタ７は上位ホストとのデータフロー制御のためのカウンタであり、データ出力の効率化を図るためのカウンタである。
【００２２】
データフロー制御部８は、カウンタ７を監視することで上位ホスト２００へのデータフローを制御する。Ｉ／Ｆ制御部９は、リードしたデータがオントラックのセクタであるか否かを判定することで、上位ホスト２００と磁気ディスク制御回路１０とのデータ出力を制御する。尚、オントラックのセクタであるか否かの判定はマイクロプロセッサ２０に処理させ、Ｉ／Ｆ制御部９はリードしたデータを上位ホスト２００へ出力するか否かの制御のみを行う実装でもよい。
【００２３】
尚、上述の各カウンタの管理は、磁気ディスク制御回路１０によってなされるものとする。
【００２４】
従来の磁気ディスク装置は、ＥＣＣ訂正することで正常にリードできた場合にカウンタ値をカウントアップするカウンタ２を使用して、上位ホスト２００に送信すべきデータであるかを判定し、リードデータを上位ホストに送信していたが、本実施の形態における磁気ディスク装置１００は、カウンタ２とは別にサーボ情報で更新されるカウンタ３と確認信号によってオントラックが確認できるまで更新されないカウンタ４を追加することでリードデータの送信判定を行う。
【００２５】
次に、上述のカウンタ（カウンタ１からカウンタ４）を用いてどのように予期せぬトラックにライトされたデータであることを検出し、誤って古いデータをリードしてデータ化けが発生することを防止するかを図３を参照しつつ説明する。
【００２６】
以降、サーボ情報をＳ０、Ｓ１、・・・、Ｓｎで表記し、セクタをＤ０、Ｄ１、Ｄ２、・・・、Ｄｎと表記する。また誤って書き込まれたセクタはＤ１’、Ｄ２’、・・・、Ｄｎ’と表記する。よって図３においては、Ｓ０からＳ１の間に誤って書き込まれたセクタ（Ｄ１’、Ｄ２’、Ｄ３’）が存在することになる。また、以降の説明では、特にＳ０とＳ１との間に関して言及するが、いずれのサーボ情報間であってもよい。また、以降の説明で使用する図面は、Ｔ軸を時間軸として示しているものとする。
【００２７】
カウンタ１はセクタ（Ｄｎ）の終わりにカウントアップし、カウンタ２はカウンタ１をカウントアップしたセクタに格納されたデータ対するＥＣＣ訂正が行われることで、ＥＣＣ訂正の完了のタイミングでカウントアップされる。よってカウンタ１とカウンタ２とでは、ＥＣＣ訂正処理分のタイムラグが発生する。またＥＣＣ訂正の完了とカウンタ１のカウントアップは非同期であるため、カウンタ１とカウンタ２は非同期となる。
【００２８】
カウンタ３は、Ｓ０の位置におけるカウンタ２のカウンタ値（Ｘ＋１）をＳ１（次のサーボ情報）の位置まで保持し、カウンタ４はＳ１の確認信号までカウンタ３のカウンタ値（Ｘ＋１）を保持する。
【００２９】
このカウンタ４のカウンタ値がカウントアップしたとき、Ｓ１の確認信号によりＳ１がオントラック状態であることが確定する。よってＳ０がオントラック状態である場合は、Ｓ０からＳ１の間のセクタであるＤ１、Ｄ２、Ｄ３が誤ったセクタではなく上位ホスト２００へ送信すべきセクタであると確定される。
【００３０】
これらの仕組みによってカウンタ４がカウントアップすることで、サーボ情報間のセクタがオントラック状態のセクタであると判定される。すなわち、このカウンタ４が進んだカウンタ値分（Ｘ＋１とＸ＋４の差分である３セクタ分）のセクタ（Ｄ１、Ｄ２、Ｄ３）がオントラック状態のセクタであることがＩ／Ｆ制御部９にて判定され、上位ホストに該当セクタに格納されたデータが送信される。
【００３１】
その次のＳ１からＳ２までの間でも同様に、カウンタ４がカウントアップしたとき、Ｓ２の確認信号によりＳ２がオントラック状態であることが確定する。Ｓ１も上述のようにオントラック状態、Ｓ２もオントラック状態であるため、その間のセクタ（Ｄ４、Ｄ５、Ｄ６）は予期せぬトラック上のセクタではなく上位ホスト２００へ送信すべきセクタであるとＩ／Ｆ制御部９にて判定され、Ｄ４、Ｄ５、Ｄ６に格納されているデータが上位ホスト２００に送信される。
【００３２】
次に、オフトラック状態となり、確認信号が出力されなかった場合を図４に示す。Ｓ１がオフトラック状態であるためＳ１の確認信号が出力されない。よってカウンタ４のカウンタ値はカウントアップしないため、Ｓ０の確認信号のときと変化せずＸ＋１のままとなる。よってＤ１以降のセクタに格納されたデータは上位ホスト２００に出力されない。尚、確認信号は、以降Ｓ１の確認がなされるまで出力されないため、ディスク媒体７４が所定の回転数に達してもＳ１の確認信号が出力されない場合はリードエラーとなる。
【００３３】
このように、本実施の形態における磁気ディスク装置１００および磁気ディスク制御回路１０は、上述のカウンタによって、ディスク媒体７４上の複数のサーボ情報のうち、所定のサーボ情報（第１サーボ情報）の次のサーボ情報（第２サーボ情報）に基づき（確認信号はサーボ情報に基づき出力される。）、これらサーボ情報の間のセクタがオントラックのセクタであるかを判定する。この判定結果に基づき、磁気ディスク装置１００および磁気ディスク制御回路１０は、前記第１サーボ情報と前記第２サーボ情報の間のセクタに格納されたデータを上位ホストに出力するか否かを制御することで、誤ったセクタ（オフトラック上のセクタ）に書き込まれた古いデータを出力することを防止する。
【００３４】
上述は、ＥＣＣ訂正が比較的短時間で処理される場合を例としたが、ＥＣＣ訂正の処理が遅れ、次のサーボ情報の読取り以降に完了した場合にデータ送信の遅延が生ずる。図５にＥＣＣ訂正の処理が遅れた場合の例を示す。
【００３５】
Ｄ３に格納されたデータのＥＣＣ訂正処理が遅延し、Ｓ１の確認信号以降に完了した場合、Ｓ１の確認信号が出力されたときのカウンタ２のカウンタ値はＸ＋３（遅延しなかった場合はＸ＋４）となる。カウンタ４のカウンタ値は、Ｓ１の確認信号が出力されたときのカウンタ３のカウンタ値にカウントアップされるため（このときのカウンタ３のカウンタ値はカウンタ２のそれと同値）、Ｘ＋３となる。このことにより、本来上位ホスト２００に送信すべきセクタの数（Ｄ１、Ｄ２、Ｄ３の３セクタ）とカウンタ４が進んだカウンタ値分（Ｘ＋１とＸ＋３の差分である２セクタ分）とが異なる。よってＤ１、Ｄ２は上位ホスト２００に送信すべきデータを格納したセクタであると確定され、上位ホスト２００へ出力されるが、Ｄ３の確定はＳ２の確認信号が出力されるまで遅延する。
【００３６】
上述のデータ送信の遅延を回避するため、磁気ディスク制御回路１０はカウンタ５およびカウンタ６を使用する。ここで、図６を参照しつつ説明する。
【００３７】
上述のようにカウンタ５は、カウンタ１の値をサーボ情報の位置で保持するカウンタであり、カウンタ６は、カウンタ２とカウンタ５のうち小さいほうの値を確認信号の出力タイミングあるいはカウンタ２の更新タイミングまで保持するカウンタである。図６において、カウンタ６のＸ＋１からＸ＋３へのカウントアップは確認信号によってカウント２のカウンタ値となり、Ｘ＋３からＸ＋４へのカウントアップは、カウンタ２の更新タイミングでカウンタ２とカウンタ５のうち小さいほうの値となる。このカウンタ６の更新タイミングによって、送信すべきセクタが確定する。
【００３８】
すなわち、カウンタ６のＸ＋１からＸ＋３へのカウントアップのタイミングで、その差分である２セクタ分（Ｄ１、Ｄ２に対応）が、オントラック状態の正常セクタであり、かつＥＣＣ訂正処理後であるとＩ／Ｆ制御部９によって判定される。また、Ｘ＋３からＸ＋４へのカウントアップのタイミングで、その差分である１セクタ分（Ｄ３に対応）が、オントラック状態の正常セクタであり、かつＥＣＣ訂正処理後であるとＩ／Ｆ制御部９によって判定される。このことにより、Ｄ３はＳ２まで待たずに、遅延状態であったＥＣＣ訂正処理後と同時に、送信すべきセクタであると判定されるため、その遅延を最小限に抑えることができる。
【００３９】
尚、カウンタ２におけるＸ＋５、Ｘ＋６、Ｘ＋７のカウントアップ時は、カウンタ５のカウンタ値がＸ＋４であるため、カウンタ６のカウンタ値は変化しない。
【００４０】
また、確定したセクタのデータは、上位ホスト２００が要求するデータにまとまり上位ホスト２００へ送信（上位ホスト２００への送信は、上述の送信すべきセクタの確定とは非同期）されるまで、一時的にデータバッファ３０に格納される。また、データバッファ３０はリングバッファであり、その記憶領域は有限であるため、どの程度データバッファ３０に格納されているかが管理される必要がある。カウンタ７は、このようにリードしたデータがデータバッファ３０にどの程度たまっているかをセクタ数として保持しているカウンタである。
【００４１】
カウンタ７は、上述のようにカウンタ６の更新タイミングでその増加量を足し合わせ、上位ホストへのデータ出力で出力分減算するカウンタである。例えば図６において、セクタＸ分のデータがデータバッファ３０に格納されている場合、所定のタイミングでデータがＸセクタ分上位ホスト２００に出力されたときにカウンタ７の値はＸから０に変化する。カウンタ６がＸからＸ＋１にカウントアップしたとき、カウンタ７は０から１に変化する。同様にカウンタ６がＸ＋３、Ｘ＋４にカウントアップされたとき、カウンタ７の値も３、４に変化し、３セクタ上位ホスト２００に出力されたときに４から１に変化する。
【００４２】
データフロー制御部８は、このようにカウンタ６を上位ホスト２００とのデータフローに使用するために、カウンタ７を監視することで上位ホスト２００へのデータフローを制御する。また、Ｉ／Ｆ制御部９は、データフロー制御部８のデータフロー制御に基づき、上位ホスト２００へデータを出力する。
【００４３】
尚、上述の例では、カウンタ６に対しカウンタ７およびデータフロー制御部８を用いることで上位ホスト２００とのデータフローを制御したが、カウンタ７およびデータフロー制御部８の構成およびその概念は、図３におけるカウンタ４に対しても当然適用することができる。
【００４４】
また、上述の説明では、各カウンタのカウンタ値は主に増加（カウントアップ）することを前提としたが、Ｉ／Ｆ制御部９はカウンタ値の変化（更新）と、その変化の前後の差分が分かればよいため、例えばカウンタ値を減少（カウントダウン）させる実装でもよい。
【００４５】
本実施の形態における磁気ディスク制御回路１０は、同様の機能を有する磁気ディスク制御装置としても適用可能である。
【００４６】
本実施の形態における磁気ディスク装置１００は、以下の効果を奏することができる。
【００４７】
オントラックが確認できるまで反映されないカウンタ４を使用することにより、オフトラック状態で誤ってリードしたデータを上位ホスト２００に送信することを防止することができる。
【００４８】
オントラック確認後にＥＣＣ訂正が完了する場合、次のサーボ情報まで待つことなくリードデータを上位ホストに送信できる。
【００４９】
上位ホストとのデータフローに適用することで、バッファ領域を効率的に使用できる。
【００５０】
（付記１）  複数のトラック、複数のセクタ、およびデータの位置情報である複数のサーボ情報に基づき、データの読出しおよび書込みがなされる記憶部と、
前記記憶部の複数のサーボ情報のうち、第１サーボ情報の次のサーボ情報である第２サーボ情報に基づき、前記第１サーボ情報と前記第２サーボ情報の間のセクタがオントラックのセクタであるかを判定するセクタ判定部と、
前記セクタ判定部の判定結果に基づき、前記第１サーボ情報と前記第２サーボ情報の間のセクタに格納されたデータを上位ホストに出力するか否かを制御する出力制御部と、
を備える磁気ディスク装置。
（付記２）  付記１に記載の磁気ディスク装置において、
前記セクタ判定部は、前記サーボ情報に基づきオントラックであると確認されるときに出力される確認信号が、前記第２サーボ情報の読出しのときに出力されない場合、前記第１サーボ情報と前記第２サーボ情報の間のセクタがオントラックのセクタでないと判定し、
前記出力制御部は、前記セクタ判定部によって前記第１サーボ情報と前記第２サーボ情報の間のセクタがオントラックのセクタでないと判定された場合、前記第１サーボ情報と前記第２サーボ情報の間のセクタに格納されたデータを上位ホストに出力しないよう制御することを特徴とする磁気ディスク装置。
（付記３）  付記１に記載の磁気ディスク装置において、
前記セクタ判定部は、
セクタの区切りで自身のカウンタ値を更新する第１カウンタと、
前記第１カウンタを更新させたセクタに格納されたデータに対し誤り訂正が行われた時点で、自身のカウンタ値を更新する第２カウンタと、
前記第２カウンタのカウンタ値を前記第２サーボ情報が読み取られるまで保持する第３カウンタと、
前記サーボ情報に基づきオントラックであると確認されるときに出力される確認信号が前記第２サーボ情報の読み取りのときに出力されるまで、前記第３カウンタのカウンタ値を保持する第４カウンタとを備え、
前記第４カウンタのカウンタ値が更新されない場合、前記第１サーボ情報と前記第２サーボ情報の間のセクタがオントラックのセクタでないと判定し、
前記出力制御部は、前記セクタ判定部によって前記第１サーボ情報と前記第２サーボ情報の間のセクタがオントラックのセクタでないと判定された場合、前記第１サーボ情報と前記第２サーボ情報の間のセクタに格納されたデータを上位ホストに出力しないよう制御することを特徴とする磁気ディスク装置。
（付記４）  付記１に記載の磁気ディスク装置において、
前記セクタ判定部は、更に前記第１サーボ情報と前記第２サーボ情報の間のセクタに格納されたデータに対し誤り訂正が行われ、該誤り訂正の完了が前記第２サーボ情報の読み取り後である場合、前記誤り訂正の完了の時点で前記第１サーボ情報と前記第２サーボ情報の間のセクタがオントラックのセクタかつ誤り訂正処理済みのセクタであるかを判定することを特徴とする磁気ディスク装置。
（付記５）  付記４に記載の磁気ディスク装置において、
前記セクタ判定部は、更に
セクタの区切りで自身のカウンタ値を更新する第１カウンタと、
前記第１カウンタを更新させたセクタに格納されたデータに対し誤り訂正が行われた時点で、自身のカウンタ値を更新する第２カウンタと、
前記第１カウンタのカウンタ値を前記第２サーボ情報が読み取られるまで保持する第５カウンタと、
前記サーボ情報に基づきオントラックであると確認されるときに出力される確認信号の出力のときまたは前記第２カウンタの更新のときに、前記第２カウンタの現在のカウンタ値と前記第５カウンタの現在のカウンタ値との比較結果に基づき自身のカウンタ値を更新する第６カウンタとを備え、
前記第６カウンタのカウンタ値が更新された場合、前記第１サーボ情報と前記第２サーボ情報の間のセクタがオントラックのセクタかつ誤り訂正処理済みのセクタであると判定し、
前記出力制御部は、更に前記セクタ判定部によって前記第１サーボ情報と前記第２サーボ情報の間のセクタがオントラックのセクタかつ誤り訂正処理済みのセクタであると判定された場合、前記第１サーボ情報と前記第２サーボ情報の間のセクタに格納されたデータを上位ホストに出力することを特徴とする磁気ディスク装置。
（付記６）  付記３に記載の磁気ディスク装置において、
前記セクタ判定部は、更に、前記第４カウンタのカウンタ値が更新されたときまたは前記出力制御部にてデータが出力されたときに、前記第４カウンタのカウンタ値と前記上位ホストへ出力したセクタ数とに基づいたカウンタ値に更新する第７カウンタを備え、
前記出力制御部は、更に前記第７カウンタのカウンタ値を監視することで、データを出力するか否かを制御することを特徴とする磁気ディスク装置。
（付記７）  付記５に記載の磁気ディスク装置において、
前記セクタ判定部は、更に、前記第６カウンタのカウンタ値が更新されたときまたは前記出力制御部にてデータが出力されたときに、前記第６カウンタのカウンタ値と前記上位ホストへ出力したセクタ数とに基づいたカウンタ値に更新する第７カウンタを備え、
前記出力制御部は、更に前記第７カウンタのカウンタ値を監視することで、データを出力するか否かを制御することを特徴とする磁気ディスク装置。
（付記８）  複数のトラック、複数のセクタに基づきデータの読出しおよび書込みがなされる記憶媒体上に備えられた、前記データの位置情報である複数のサーボ情報のうち、第１サーボ情報の次のサーボ情報である第２サーボ情報に基づき、前記第１サーボ情報と前記第２サーボ情報の間のセクタがオントラックのセクタであるかを判定するセクタ判定部と、
前記セクタ判定部の判定結果に基づき、前記第１サーボ情報と前記第２サーボ情報の間のセクタに格納されたデータを上位ホストに出力するか否かを制御する出力制御部と、
を備える磁気ディスク制御装置。
（付記９）  付記８に記載の磁気ディスク制御装置において、
前記セクタ判定部は、前記サーボ情報に基づきオントラックであると確認されるときに出力される確認信号が、前記第２サーボ情報の読出しのときに出力されない場合、前記第１サーボ情報と前記第２サーボ情報の間のセクタがオントラックのセクタでないと判定し、
前記出力制御部は、前記セクタ判定部によって前記第１サーボ情報と前記第２サーボ情報の間のセクタがオントラックのセクタでないと判定された場合、前記第１サーボ情報と前記第２サーボ情報の間のセクタに格納されたデータを上位ホストに出力しないよう制御することを特徴とする磁気ディスク制御装置。
（付記１０）  付記８に記載の磁気ディスク制御装置において、
前記セクタ判定部は、
セクタの区切りで自身のカウンタ値を更新する第１カウンタと、
前記第１カウンタを更新させたセクタに格納されたデータに対し誤り訂正が行われた時点で、自身のカウンタ値を更新する第２カウンタと、
前記第２カウンタのカウンタ値を前記第２サーボ情報が読み取られるまで保持する第３カウンタと、
前記サーボ情報に基づきオントラックであると確認されるときに出力される確認信号が前記第２サーボ情報の読み取りのときに出力されるまで、前記第３カウンタのカウンタ値を保持する第４カウンタとを備え、
前記第４カウンタのカウンタ値が更新されない場合、前記第１サーボ情報と前記第２サーボ情報の間のセクタがオントラックのセクタでないと判定し、
前記出力制御部は、前記セクタ判定部によって前記第１サーボ情報と前記第２サーボ情報の間のセクタがオントラックのセクタでないと判定された場合、前記第１サーボ情報と前記第２サーボ情報の間のセクタに格納されたデータを上位ホストに出力しないよう制御することを特徴とする磁気ディスク制御装置。
（付記１１）  付記８に記載の磁気ディスク制御装置において、
前記セクタ判定部は、更に前記第１サーボ情報と前記第２サーボ情報の間のセクタに格納されたデータに対し誤り訂正が行われ、該誤り訂正の完了が前記第２サーボ情報の読み取り後である場合、前記誤り訂正の完了の時点で前記第１サーボ情報と前記第２サーボ情報の間のセクタがオントラックのセクタかつ誤り訂正処理済みのセクタであるかを判定することを特徴とする磁気ディスク制御装置。
（付記１２）  付記１１に記載の磁気ディスク制御装置において、
前記セクタ判定部は、更に
セクタの区切りで自身のカウンタ値を更新する第１カウンタと、
前記第１カウンタを更新させたセクタに格納されたデータに対し誤り訂正が行われた時点で、自身のカウンタ値を更新する第２カウンタと、
前記第１カウンタのカウンタ値を前記第２サーボ情報が読み取られるまで保持する第５カウンタと、
前記サーボ情報に基づきオントラックであると確認されるときに出力される確認信号の出力のときまたは前記第２カウンタの更新のときに、前記第２カウンタの現在のカウンタ値と前記第５カウンタの現在のカウンタ値との比較結果に基づき自身のカウンタ値を更新する第６カウンタとを備え、
前記第６カウンタのカウンタ値が更新された場合、前記第１サーボ情報と前記第２サーボ情報の間のセクタがオントラックのセクタかつ誤り訂正処理済みのセクタであると判定し、
前記出力制御部は、前記セクタ判定部によって前記第１サーボ情報と前記第２サーボ情報の間のセクタがオントラックのセクタかつ誤り訂正処理済みのセクタであると判定された場合、前記第１サーボ情報と前記第２サーボ情報の間のセクタに格納されたデータを上位ホストに出力することを特徴とする磁気ディスク制御装置。
（付記１３）  付記１０に記載の磁気ディスク制御装置において、
前記セクタ判定部は、更に、前記第４カウンタのカウンタ値が更新されたときまたは前記出力制御部にてデータが出力されたときに、前記第４カウンタのカウンタ値と前記上位ホストへ出力したセクタ数とに基づいたカウンタ値に更新する第７カウンタを備え、
前記出力制御部は、更に前記第７カウンタのカウンタ値を監視することで、データを出力するか否かを制御することを特徴とする磁気ディスク制御装置。
（付記１４）  付記１２に記載の磁気ディスク制御装置において、
前記セクタ判定部は、更に、前記第６カウンタのカウンタ値が更新されたときまたは前記出力制御部にてデータが出力されたときに、前記第６カウンタのカウンタ値と前記上位ホストへ出力したセクタ数とに基づいたカウンタ値に更新する第７カウンタを備え、
前記出力制御部は、更に前記第７カウンタのカウンタ値を監視することで、データを出力するか否かを制御することを特徴とする磁気ディスク制御装置。
（付記１５）  複数のトラック、複数のセクタに基づきデータの読出しおよび書込みがなされる記憶媒体上に備えられた、前記データの位置情報である複数のサーボ情報のうち、第１サーボ情報の次のサーボ情報である第２サーボ情報に基づき、前記第１サーボ情報と前記第２サーボ情報の間のセクタがオントラックのセクタであるかを判定し、
判定結果に基づき、前記第１サーボ情報と前記第２サーボ情報の間のセクタに格納されたデータを上位ホストに出力するか否かを制御する磁気ディスク制御方法。
（付記１６）  付記１５に記載の磁気ディスク制御方法において、
前記判定は、前記サーボ情報に基づきオントラックであると確認されるときに出力される確認信号が、前記第２サーボ情報の読出しのときに出力されない場合、前記第１サーボ情報と前記第２サーボ情報の間のセクタがオントラックのセクタでないと判定し、
前記制御は、前記第１サーボ情報と前記第２サーボ情報の間のセクタがオントラックのセクタでないと判定された場合、前記第１サーボ情報と前記第２サーボ情報の間のセクタに格納されたデータを上位ホストに出力しないよう制御することを特徴とする磁気ディスク制御方法。
（付記１７）  付記１５に記載の磁気ディスク制御方法において、
前記判定は、
セクタの区切りで自身のカウンタ値を更新する第１カウンタと、
前記第１カウンタを更新させたセクタに格納されたデータに対し誤り訂正が行われた時点で、自身のカウンタ値を更新する第２カウンタと、
前記第２カウンタのカウンタ値を前記第２サーボ情報が読み取られるまで保持する第３カウンタと、
前記サーボ情報に基づきオントラックであると確認されるときに出力される確認信号が前記第２サーボ情報の読み取りのときに出力されるまで、前記第３カウンタのカウンタ値を保持する第４カウンタとによって成され、
前記第４カウンタのカウンタ値が更新されない場合、前記第１サーボ情報と前記第２サーボ情報の間のセクタがオントラックのセクタでないと判定し、
前記制御部は、前記第１サーボ情報と前記第２サーボ情報の間のセクタがオントラックのセクタでないと判定された場合、前記第１サーボ情報と前記第２サーボ情報の間のセクタに格納されたデータを上位ホストに出力しないよう制御することを特徴とする磁気ディスク制御方法。
（付記１８）  付記１５に記載の磁気ディスク制御方法において、
前記判定は、更に前記第１サーボ情報と前記第２サーボ情報の間のセクタに格納されたデータに対し誤り訂正が行われ、該誤り訂正の完了が前記第２サーボ情報の読み取り後である場合、前記誤り訂正の完了の時点で前記第１サーボ情報と前記第２サーボ情報の間のセクタがオントラックのセクタかつ誤り訂正処理済みのセクタであると判定することを特徴とする磁気ディスク制御方法。
（付記１９）  付記１８に記載の磁気ディスク制御方法において、
前記判定は、更に、
セクタの区切りで自身のカウンタ値を更新する第１カウンタと、
前記第１カウンタを更新させたセクタに格納されたデータに対し誤り訂正が行われた時点で、自身のカウンタ値を更新する第２カウンタと、
前記第１カウンタのカウンタ値を前記第２サーボ情報が読み取られるまで保持する第５カウンタと、
前記サーボ情報に基づきオントラックであると確認されるときに出力される確認信号の出力のときまたは前記第２カウンタの更新のときに、前記第２カウンタの現在のカウンタ値と前記第５カウンタの現在のカウンタ値との比較結果に基づき自身のカウンタ値を更新する第６カウンタとによって成され、
前記第６カウンタのカウンタ値が更新された場合、前記第１サーボ情報と前記第２サーボ情報の間のセクタがオントラックのセクタかつ誤り訂正処理済みのセクタであると判定し、
前記制御は、前記第１サーボ情報と前記第２サーボ情報の間のセクタがオントラックのセクタかつ誤り訂正処理済みのセクタであると判定された場合、前記第１サーボ情報と前記第２サーボ情報の間のセクタに格納されたデータを上位ホストに出力することを特徴とする磁気ディスク制御方法。
（付記２０）  付記１７に記載の磁気ディスク制御方法において、
前記判定は、更に、前記第４カウンタのカウンタ値が更新されたときまたは前記出力制御部にてデータが出力されたときに、前記第４カウンタのカウンタ値と前記上位ホストへ出力したセクタ数とに基づいたカウンタ値に更新する第７カウンタによって成され、
前記制御は、更に前記第７カウンタのカウンタ値を監視することで、データを出力するか否かを制御することを特徴とする磁気ディスク制御方法。
【図面の簡単な説明】
【００５１】
【図１】本実施の形態における磁気ディスク装置の構成の一例を示す図である。
【図２】本実施の形態における磁気ディスク制御回路の構成の一例を示す図である。
【図３】本実施の形態におけるリードオフトラックを考慮したカウンタの動作を示す図である。
【図４】本実施の形態におけるリードオフトラックを検出した際のカウンタ動作を示す図である。
【図５】本実施の形態におけるＥＣＣ訂正の遅延によってカウントアップが遅延する一例を示す図である。
【図６】本実施の形態におけるＥＣＣ訂正の遅延によってカウントアップの遅延を防ぐカウンタおよび上位ホストとのデータフロー用のカウンタの動作を示す図である。
【図７】予期せぬセクタに対しデータがライト、リードされた場合の一例を示す図である。
【符号の説明】
【００５２】
１  カウンタ、２  カウンタ、３  カウンタ、４  カウンタ、５  カウンタ、６  カウンタ、７  カウンタ、８  データフロー制御部、９  Ｉ／Ｆ制御部、１０  磁気ディスク制御回路、２０  マイクロプロセッサ、３０  データバッファ、４０  ヘッド位置決め制御部、５０  リードライト制御部、６０  モータ駆動制御部、７１  アクチュエータ、７２  ヘッド、７３  スピンドルモータ、７４  ディスク媒体、１００  磁気ディスク装置、２００  上位ホスト。
【図１】
0004956708.tif 000002
【図２】
0004956708.tif 000003
【図３】
0004956708.tif 000004
【図４】
0004956708.tif 000005
【図５】
0004956708.tif 000006
【図６】
0004956708.tif 000007
【図７】
0004956708.tif 000008