(57)【要約】【課題】データの読み出し遅延を抑制すること。【解決手段】記録媒体である磁気ディスク１０のデータトラック２０に記録されたデータを読み出すヘッド１２が、目標のデータトラック２０にオントラックするよう制御するヘッド位置制御部４０と、ヘッド１２が目標のデータトラック２０にオントラックされたか判定するオントラック判定部４２と、ヘッド１２が目標のデータトラック２０にオントラックされていない場合でも、目標のデータトラック２０からのデータの読み出しを行い、データが読み出せないセクタについてはダミーデータを補完するリード制御部４８と、を有する。【選択図】図６
2010225196.tif 000002
【特許請求の範囲】
【請求項１】
記録媒体のデータトラックに記録されたデータを読み出すヘッドが、目標データトラックにオントラックするよう制御するヘッド位置制御部と、
前記ヘッドが前記目標データトラックにオントラックされたか判定するオントラック判定部と、
前記ヘッドが前記目標データトラックにオントラックされていない場合でも、前記目標データトラックからのデータの読み出しを行い、データが読み出せないセクタについてはダミーデータを補完するリード制御部と、
を有することを特徴とする記憶装置。
【請求項２】
前記オントラック判定部は、データトラックにオントラックされたか判定する判定基準を緩く設定して、前記ヘッドが前記目標データトラックにオントラックされたか判定することを特徴とする請求項１記載の記憶装置。
【請求項３】
前記リード制御部は、データを読み出せないセクタがリード範囲の先頭セクタである場合はダミーデータを補完し、先頭セクタでない場合は１つ前のセクタのデータと同じデータを補完することを特徴とする請求項１又は２記載の記憶装置。
【請求項４】
記録媒体のデータトラックに記録されたデータを読み出すヘッドが、目標データトラックにオントラックするよう制御するヘッド位置制御工程と、
前記ヘッドが前記目標データトラックにオントラックされたか判定するオントラック判定工程と、
前記ヘッドが前記目標データトラックにオントラックされていない場合でも、前記目標データトラックからのデータの読み出しを行い、データが読み出せないセクタについてはダミーデータを補完するリード制御工程と、
を有することを特徴とする記憶装置の制御方法。
【請求項５】
請求項１から３のいずれか一項に記載の記憶装置を備えることを特徴とする電子装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、記憶装置、その制御方法及びその記憶装置を用いた電子装置に関する。
【背景技術】
【０００２】
最近、磁気ディスク装置（ＨＤＤ：Hard Disk Drive）は、パーソナルコンピュータ、ナビゲーション装置、ＡＶ（Audio Visual）機器等、様々な製品に搭載されている。このため、映像データや音楽データを記録して再生するような用途に使用される機会が多くなっている。
【０００３】
映像データや音楽データは、ある程度欠落することがあっても、映像や音楽を再生する際には大きな問題とはならない。このため、最近のＨＤＤには、映像データや音楽データを読み出す場合に、データエラー（リードエラー）が生じてもエラーリカバリ処理を行わずに、データを連続して転送する機能が搭載されているものがある。
【０００４】
また、データの読み出し速度を正規の再生速度と同一にリアルタイム的に行わず、高速でデータの読み出しを行い、読み出されたデータをメモリに一旦格納してから転送する方法が提案されている（例えば、特許文献１）。これにより、リードエラーが生じた場合にも、データを連続して転送することができる。
【０００５】
メモリへのデータの格納速度と、メモリからのデータの転送速度が異なることによりメモリがオーバーフローした場合でも、データを連続的に転送可能とする方法も提案されている（例えば、特許文献２）。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００５−７８７６０号公報
【特許文献２】特開２００８−１７６９２６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
従来、ホストからのリード要求に対して、残留振動や外乱等により、ヘッドが目標のデータトラックにオントラックされない場合、再度、目標のデータトラックにヘッドをシークし、オントラックを試みるリカバリ処理が行われている。
【０００８】
図１を用いて、このリカバリ処理について説明する。図１（ａ）のように、ホストからの複数セクタに係るリード要求に対して、目標のデータトラックまでヘッドをシークし、オントラックを試みる。このときに、残留振動や外乱等により、リード要求範囲の先頭セクタでオントラックできずに、途中のセクタ（例えば、先頭セクタから４番目のセクタ）でオントラックされる場合がある。この場合、図１（ｂ）のように、先頭セクタでオントラックされるように再度オントラックを試みるが、このときにディスクの回転待ちが発生する。そして、先頭セクタでオントラックが成功した後、先頭セクタからデータのリード動作を実行し、リードデータをホストに転送する。
【０００９】
図１のようなリカバリ処理が行われる場合、ディスクの回転待ちが発生するため、データの読み出しに遅延が生じてしまう。データの読み出しに遅延が生じている間は、ホストにデータが転送されないため、データの転送が途中で途切れてしまうことになる。
【００１０】
特許文献１及び特許文献２には、このようなオントラックのリカバリ処理に係る課題を解決する技術については開示されていない。
【００１１】
そこで、本発明は、上記課題に鑑みなされたものであり、データの読み出しの遅延を抑制することが可能な記憶装置、その制御方法及びその記憶装置を用いた電子装置を提供することを目的とする。
【課題を解決するための手段】
【００１２】
本明細書に記載の記憶装置は、記録媒体のデータトラックに記録されたデータを読み出すヘッドが、目標データトラックにオントラックするよう制御するヘッド位置制御部と、前記ヘッドが前記目標データトラックにオントラックされたか判定するオントラック判定部と、前記ヘッドが前記目標データトラックにオントラックされていない場合でも、前記目標データトラックからのデータの読み出しを行い、データが読み出せないセクタについてはダミーデータを補完するリード制御部と、を有している。
【００１３】
これによれば、目標データトラックにオントラックされていない場合でもデータの読み出しを行い、データが読み出せないセクタについてはダミーデータを補完することで、オントラックのリカバリ処理がなくなり、データの読み出しの遅延を抑制することができる。よって、データを連続して転送することが可能となる。
【００１４】
本明細書に記載の記憶装置の制御方法は、記録媒体のデータトラックに記録されたデータを読み出すヘッドが、目標データトラックにオントラックするよう制御するヘッド位置制御工程と、前記ヘッドが前記目標データトラックにオントラックされたか判定するオントラック判定工程と、前記ヘッドが前記目標データトラックにオントラックされていない場合でも、前記目標データトラックからのデータの読み出しを行い、データが読み出せないセクタについてはダミーデータを補完するリード制御工程と、を有する。
【００１５】
これによれば、目標データトラックにオントラックされていない場合でもデータの読み出しを行い、データが読み出せないセクタについてはダミーデータを補完することで、オントラックのリカバリ処理がなくなり、データの読み出しの遅延を抑制することができる。よって、データを連続して転送することが可能となる。
【００１６】
本明細書に記載の電子装置は、本明細書に記載の記憶装置を備えている。
【００１７】
これによれば、データの読み出し遅延が抑制され、データを連続して転送することが可能な記憶装置を備えていることで、映像や音楽の再生が途中で途切れることを抑制できる。
【発明の効果】
【００１８】
本明細書に記載の記憶装置及びその制御方法によれば、データの読み出し遅延を抑制することができ、データを連続して転送することが可能となるという効果を奏する。また、本明細書に記載の電子装置によれば、映像や音楽の再生が途中で途切れることを抑制できるという効果を奏する。
【図面の簡単な説明】
【００１９】
【図１】図１はオントラックのリカバリ処理を説明するための図である。
【図２】図２は実施例１及び実施例２に係る記憶装置の構成を説明するためのブロック図である。
【図３】図３は磁気ディスク上に形成されたデータトラックとサーボパターンとを説明するための図である。
【図４】図４は実施例１及び実施例２に係る記憶装置のＭＰＵの機能ブロック図である。
【図５】図５は実施例１に係る記憶装置のリード動作を説明するフローチャート（その１）である。
【図６】図６は実施例１に係る記憶装置のリード動作を説明するフローチャート（その２）である。
【図７】図７は実施例１に係る記憶装置のリード動作を説明するための図（その１）である。
【図８】図８は実施例１に係る記憶装置のリード動作を説明するための図（その２）である。
【図９】図９は実施例２に係る記憶装置のリード動作を説明するフローチャート（その１）である。
【図１０】図１０は実施例２に係る記憶装置のリード動作を説明するフローチャート（その２）である。
【図１１】図１１は実施例２に係る記憶装置のリード動作を説明するための図である。
【図１２】図１２は実施例１又は実施例２に係る記憶装置を備えた電子装置の構成を説明するためのブロック図である。
【発明を実施するための形態】
【００２０】
以下、本発明の記憶装置の実施例としての磁気ディスク装置１００について説明する。
【実施例１】
【００２１】
図２は、実施例１に係る磁気ディスク装置１００のブロック図である。図２のように、磁気ディスク装置１００は、制御ボード９０とディスクエンクロージャ８０とを備えている。
【００２２】
ディスクエンクロージャ８０は、記録媒体としての磁気ディスク１０、ヘッド１２、ヘッドアンプ１４、ボイスコイルモータ１６、及びスピンドルモータ１８を有する。
【００２３】
磁気ディスク１０は、塗布された磁性体の磁化状態を変化させることにより、データを記録する記録媒体であり、図３のように、ユーザデータ等が記録されるデータトラック２０とサーボ情報が記録されたサーボパターン２２とが、磁気ディスク１０面上に形成されている。データトラック２０は、磁気ディスク１０の周方向に沿って同心円状に複数形成されていて、それぞれのデータトラック２０は、複数のセクタに分割されている。サーボパターン２２は、磁気ディスク１０の半径方向に放射状に複数形成されていて、トラックデータ、セクタデータ、及びバーストデータのサーボ情報を有する。トラックデータはデータトラック番号が書き込まれており、セクタデータはセクタ番号が書き込まれている。バーストデータは、データトラック２０に対するヘッド１２の相対位置情報を有し、ヘッド１２を目標のデータトラック２０の中心に正確に位置決めするのに用いられる。
【００２４】
図２に戻り、ヘッド１２は、セラミック等からなる本体内に、磁気ディスク１０へのデータの書き込み及び消去を行うための記録素子と、磁気ディスク１０に書き込まれたデータ及びサーボ情報を読み出すための再生素子とを有する。
【００２５】
ヘッドアンプ１４は、ヘッド１２（再生素子）から読み出されたリード信号を増幅するための再生アンプと、ヘッド１２（記録素子）に供給するライト信号を増幅するための記録アンプとを有する。
【００２６】
ボイスコイルモータ１６は、サーボコントローラ３２の制御の下、ヘッド１２を保持するヘッド・スタック・アッセンブリ（ＨＳＡ）を駆動し、ヘッド１２を磁気ディスク１０の半径方向に移動（シーク）させて、目標のデータトラック２０にヘッド１２を位置決めする。
【００２７】
スピンドルモータ１８は、サーボコントローラ３２の制御の下、磁気ディスク１０を、例えば４２００〜１５０００ｒｐｍ等の適切な回転速度で回転させる。
【００２８】
制御ボード９０は、リードライトチャネル２４、ハードディスクコントローラ（ＨＤＣ）２６、データバッファ２８、メモリ３０、サーボコントローラ３２、及びＭＰＵ（Micro Processing Unit）３４を有する。これらは、システムバス３６により互いに接続している。
【００２９】
リードライトチャネル２４は、記録再生動作に関するリード／ライト信号の処理を行う。
【００３０】
ＨＤＣ２６は、ホスト３８との間の各種命令及びデータの授受の制御を行う。さらに、ＨＤＣ２６は、ＭＰＵ３４からの指示に基づき、リードエラーの判定を行う。データバッファ２８は、ホスト３８から入力されたライトデータや、磁気ディスク１０から読み出されたリードデータを一時的に記憶する。
【００３１】
メモリ３０は、例えばＲＡＭ（Random Access Memory）等の揮発性メモリと、フラッシュＲＯＭ（Read Only Memory）等の不揮発性メモリとを含んでいる。ＲＡＭは、ＭＰＵ３４が制御処理を実行するときに使用するワークメモリである。フラッシュＲＯＭは、ＭＰＵ３４によって実行される制御プログラムが予め格納されている。
【００３２】
サーボコントローラ３２は、ＭＰＵ３４からの指示に基づき、ボイスコイルモータ１６やスピンドルモータ１８を制御する。
【００３３】
ＭＰＵ３４は、リード／ライト動作制御、ヘッド１２の位置決め制御、磁気ディスク１０から読み出されたリードデータのエラー判定制御等、磁気ディスク装置１００全体の制御を行う。このＭＰＵ３４は、図４のように、ヘッド位置制御部４０、オントラック判定部４２、リード継続機能判定部４４、リトライ回数判定部４６、リード制御部４８、及びリードエラー判定制御部５０、を備えている。これらは、システムバス５２により互いに接続していて、メモリ３０のフラッシュＲＯＭに予め格納されている制御プログラムをＭＰＵ３４が読み出すことにより実行される。
【００３４】
ヘッド位置制御部４０は、サーボパターン２２に記録されたサーボ情報を用い、サーボコントローラ３２を制御して、ホスト３８からのリード要求に応じた目標のデータトラック２０までヘッド１２をシークし、オントラック処理を行う。
【００３５】
オントラック判定部４２は、目標のデータトラック２０にヘッド１２がオントラックされたか否かの判定を行う。例えば、ヘッド１２がサーボパターン２２のバーストデータを読み出すことで得られる信号の振幅から、ヘッド１２の位置ずれ量を計算し、当該位置ずれ量が所定の範囲内であるか否かにより、オントラックの成否を判定する。
【００３６】
リード継続機能判定部４４は、リード継続機能がＯＮであるかＯＦＦであるかの判定を行う。リード継続機能は、例えば、ホスト３８からのリード要求の対象となるデータが、映像データ又は音楽データである場合にＯＮとし、情報処理データである場合にＯＦＦと設定することができる。
【００３７】
リトライ回数判定部４６は、目標のデータトラック２０へのヘッド１２のシーク回数が規定回数に達したか、及び同一セクタからのデータのリード回数が規定回数に達したかの判定を行う。
【００３８】
リード制御部４８は、セクタに記録されたデータの読み出しを行う。また、後述するリードエラー判定制御部５０により、セクタから読み出されたリードデータにエラーが生じていると判定された場合は、例えば、ダミーデータを当該セクタのデータとして補完する。
【００３９】
リードエラー判定制御部５０は、ＨＤＣ２６を制御して、セクタから読み出されたリードデータにエラーが生じているか判定する。
【００４０】
次に、図５及び図６のフローチャートを用い、ホスト３８からのリード要求に応じたリード動作について説明する。図５のように、ＭＰＵ３４は、ホスト３８から複数セクタに係るデータのリード要求を受信すると（ステップＳ１０）、サーボコントローラ３２を制御してボイスコイルモータ１６やスピンドルモータ１８を駆動させ、リード要求に応じた目標のデータトラック２０にヘッド１２をシークさせる（ステップＳ１２）。この際、サーボパターン２２に記録されたサーボ情報を用いる。
【００４１】
次に、ＭＰＵ３４は、サーボパターン２２に記録されたバーストデータを用いて、ヘッド１２を目標のデータトラック２０へのオントラックを試み、オントラックが成功したかを判定する（ステップＳ１４）。残留振動や外乱等が生じている場合は、オントラックに失敗することがある。オントラックの成否の判定は、バーストデータから得られる信号の振幅から計算されたヘッド１２の位置ずれ量が、所定の範囲内にあるか否かにより行うことができる。
【００４２】
オントラックに失敗した場合（Ｎｏの場合）、まず、ＭＰＵ３４は、リード継続機能がＯＮであるかＯＦＦであるかの判定を行う（ステップＳ１６）。リード継続機能のＯＮ／ＯＦＦは、ホスト３８からのリード要求に係るデータが、映像データや音楽データであるか、又は情報処理データであるかによって切り換えることができる。
【００４３】
リード継続機能がＯＦＦである場合（Ｎｏの場合）、ホスト３８からのリード要求に係るデータは情報処理データであるため、データの欠落等は許されないことから、ＭＰＵ３４は再度、シーク及びオントラックを試みる。具体的には、まず、ＭＰＵ３４は、目標のデータトラック２０へのシーク回数が、規定シークリトライ回数に達しているかを判定する（ステップＳ１８）。規定回数に到達していない場合（Ｎｏの場合）、ＭＰＵ３４は、再度、目標のデータトラック２０にヘッド１２をシークさせて（ステップＳ２０）、オントラックを試みる（ステップＳ１４）。規定回数に到達している場合（Ｙｅｓの場合）、ヘッド１２の故障等の様々な要因により、目標のデータトラック２０へのシーク及びオントラックができないと考えられるため、ＭＰＵ３４は、シークエラー処理を行い、目標のデータトラック２０へのシークを中止する（ステップＳ２２）。
【００４４】
リード継続機能がＯＮである場合（Ｙｅｓの場合）、ホスト３８からのリード要求に係るデータは映像データ又は音楽データであるため、ある程度のデータの欠落は許される。したがって、図６のように、ＭＰＵ３４は、目標のデータトラック２０へのオントラックのリカバリ処理を行わず（ステップＳ２４）、リード要求範囲の先頭セクタからデータのリード動作を実行する（ステップＳ２６）。リード動作では、ヘッド１２により読み出されたリード信号がリードライトチャネル２４により信号処理されて、ＨＤＣ２６に送られる。
【００４５】
次に、ＭＰＵ３４は、ＨＤＣ２６を制御し、読み出されたリードデータにエラーが生じていないか判定する（ステップＳ２８）。残留振動や外乱等が引き続き生じている場合等は、セクタからデータを正常に読み出すことができず、リードエラーが生じる。リードエラーが生じている場合（Ｙｅｓの場合）、ＭＰＵ３４は、リード動作を実行したセクタが、リード要求範囲の先頭セクタであるか判定する（ステップＳ３０）。先頭セクタである場合（Ｙｅｓの場合）、ＭＰＵ３４は、先頭セクタのデータとしてダミーデータを補完して、データバッファ２８に格納する（ステップＳ３２）。先頭セクタでない場合（Ｎｏの場合）、ＭＰＵ３４は、リード動作を実行したセクタの１つ前のセクタのデータと同じデータを、当該セクタのデータとして補完し、データバッファ２８に格納する（ステップＳ３４）。つまり、１つ前のセクタでダミーデータを補完している場合は、リード動作を実行した当該セクタについてもダミーデータを補完して、データバッファ２８に格納する。また、１つ前のセクタで実際に読み出されたリードデータをデータバッファ２８に格納している場合は、当該セクタについては１つ前のセクタのリードデータを補完して、データバッファ２８に格納する。
【００４６】
ステップＳ２８で、残留振動や外乱等が収まり、セクタからデータを正常に読み出すことができ、リードエラーが生じていない場合（Ｎｏの場合）、ＭＰＵ３４は、実際に読み出されたリードデータを、データバッファ２８に格納する（ステップＳ３６）。
【００４７】
次に、ＭＰＵ３４は、ホスト３８からのリード要求範囲の全てのセクタについてリード動作が完了したか否かを判定する（ステップＳ３８）。全てのセクタについてのリード動作が完了していない場合（Ｎｏの場合）、ＭＰＵ３４は、次のセクタについてリード動作を実行し（ステップＳ４０）、ステップＳ２８からステップＳ３６で説明した工程を実行する。
【００４８】
全てのセクタについてリード動作が完了した場合（Ｙｅｓの場合）、ＭＰＵ３４は、データバッファ２８に格納したデータをホスト３８に転送する（ステップＳ４２）。
【００４９】
図５に戻り、ステップＳ１４で、オントラックに成功したと判定された場合（Ｙｅｓの場合）、ＭＰＵ３４は、リード要求範囲の先頭セクタからデータのリード動作を実行する（ステップＳ４４）。
【００５０】
次に、ＭＰＵ３４は、読み出されたリードデータにエラーが生じていないか判定する（ステップＳ４６）。そして、リード要求範囲の全てのセクタについて、リードエラーが生じていない場合（Ｎｏの場合）、ＭＰＵ３４は、実際に読み出されたリードデータを、データバッファ２８を介してホスト３８に転送する（ステップＳ４８）。
【００５１】
リードエラーが生じている場合（Ｙｅｓの場合）、ＭＰＵ３４は、リード継続機能がＯＮであるかＯＦＦであるかの判定を行う（ステップＳ５０）。リード継続機能がＯＮである場合（Ｙｅｓの場合）、前述したように、リードデータは映像データ又は音楽データに係るものであり、ある程度のデータ欠落は許される。このため、ＭＰＵ３４は、リードエラーが生じたセクタについては、再度のリード動作を実行することなく、ダミーデータをデータバッファ２８に格納する。そして、リードエラーが生じていないセクタについては、実際に読み出されたリードデータをデータバッファ２８に格納し、リード要求範囲の全てのセクタについてリード動作を実行し終えた後、データバッファ２８に格納されたデータをホスト３８に転送する（ステップＳ５２）
【００５２】
リード継続機能がＯＦＦである場合（Ｎｏの場合）、前述したように、リードデータは情報処理データに係るものであり、データの欠落は許されない。このため、リード動作を再度繰り返し実行する。具体的には、ＭＰＵ３４は、まず、同一セクタへのリード動作回数が、規定リードリトライ回数に達しているかを判定する（ステップＳ５４）。規定回数に到達していない場合（Ｎｏの場合）、ＭＰＵ３４は、再度リード動作を実行する（ステップＳ５６）。規定回数に到達している場合（Ｙｅｓの場合）、リードエラー処理を行い、リード動作を中止する（ステップＳ５８）。
【００５３】
次に、図７を用いて、ＭＰＵ３４が、ホスト３８から９セクタに係るリード要求を受信した場合を例に、図６のステップＳ２４からＳ４２に示した工程の処理について説明する。
【００５４】
図７のように、ホスト３８からのリード要求に応じた目標のデータトラック２０にヘッド１２をシークし、オントラックを試みたときに、残留振動や外乱等により、リード要求範囲の先頭セクタでオントラックできない場合がある。この際、ホスト３８からのリード要求に係るデータが映像データ又は音楽データである場合、先頭セクタへのオントラックのリカバリ処理を行わずに、先頭セクタからリード動作を実行する。例えば、先頭セクタから３番目のセクタまでは、残留振動や外乱等の影響が残り、オントラックができずに、リードデータにエラーが生じた場合、先頭セクタから３番目のセクタのデータとしてダミーデータを補完し、データバッファ２８に格納する。そして、例えば、４番目のセクタで、残留振動や外乱等が収まり、オントラックができた場合、リードデータをデータバッファ２８に格納する。そして、９セクタ全てについてリード動作が完了した後、データバッファ２８に格納したデータをホスト３８に転送する。
【００５５】
このように、実施例１によれば、ホスト３８からのリード要求に応じた目標のデータトラック２０にヘッド１２がオントラックされていない場合でも、リード要求範囲の先頭セクタからデータの読み出しを実行する。そして、リードデータにエラーが生じ、正常にデータが読み出せないセクタについては、ダミーデータを補完して、ホスト３８に転送する。また、正常にデータが読み出せたセクタについては、リードデータをホスト３８に転送する。
【００５６】
これにより、目標のデータトラック２０にオントラックがされていない場合でも、オントラックのリカバリ処理がなくなり、リカバリ処理での磁気ディスク１０の回転待ちに起因するデータの読み出し遅延の発生が抑制できる。よって、データを連続してホスト３８に転送することが可能となる。
【００５７】
ホスト３８に転送されるデータは、リードデータとダミーデータとが混在することになるが、前述しているように、映像データや音楽データでは、ある程度のデータ欠落があってもあまり影響がない。つまり、データトラック２０から読み出すデータが映像データ又は音楽データである場合、リードデータとダミーデータとが混在しても、再生される映像や音楽にほとんど影響を与えず、映像データや音楽データを連続して処理することが可能となる。
【００５８】
また、図６のステップＳ３０からＳ３４で説明したように、リードデータにエラーが生じて、正常にデータが読み出せないセクタが、リード要求範囲の先頭セクタである場合は、ダミーデータを補完する。また、正常にデータが読み出せないセクタが先頭セクタでない場合は、１つ前のセクタのデータと同じデータを補完する。これにより、例えば、リードエラーが生じたセクタの１つ前のセクタでは正常にデータが読み出されていた場合に、ダミーデータではなく、リードエラーが生じたセクタの本来のデータと関連性の高い１つ前のセクタのデータを補完することになり、再生される映像や音楽に与える影響をより抑制することができる。
【００５９】
また、図８のように、ホスト３８からのリード要求範囲に係るセクタが異なるデータトラック２０に跨るような、いわゆるヘッドスイッチが発生する場合でも、図５及び図６のフローチャートを用いることができる。つまり、ヘッドスイッチに起因する残留振動や外乱により、ヘッドスイッチ後の目標のデータトラック２０にオントラックできない場合でも、図５及び図６のフローチャートを実行することで、オントラックのリカバリ処理がなくなり、データの読み出し遅延の発生が抑制できる。よって、データを連続してホスト３８に転送することが可能となる。
【実施例２】
【００６０】
実施例２に係る磁気ディスク装置のブロック図は、実施例１に係る磁気ディスク装置１００のブロック図と同じであり、図２に示しているので、ここでは説明を省略する。また、実施例２に係る磁気ディスク装置が有するＭＰＵ３４は、オントラック判定部４２が、リード継続機能がＯＮである場合に、オントラックの判定基準を緩く設定して、オントラックの成否判定を行う点以外は、実施例１と同じであり、図４に示しているので、説明を省略する。
【００６１】
次に、図９及び図１０のフローチャートを用い、ホスト３８からのリード要求に応じたリード動作について説明する。図９のように、ＭＰＵ３４は、ホスト３８から複数セクタに係るデータのリード要求を受信すると（ステップＳ６０）、まず、リード継続機能がＯＮであるかＯＦＦであるかの判定を行う（ステップＳ６２）。
【００６２】
リード継続機能がＯＦＦである場合（Ｎｏの場合）、ＭＰＵ３４は、リード要求に応じた目標のデータトラック２０にヘッド１２をシークし（ステップＳ６４）、オントラックを試み、オントラックが成功したかを判定する（ステップＳ６６）。オントラックの成否の判定は、前述したように、バーストデータから得られる信号の振幅から計算されたヘッド１２の位置ずれ量により判定することができる。ここで、リード継続機能がＯＦＦということは、ホスト３８からのリード要求に係るデータは情報処理データであるため、データの欠落等は許されない。したがって、オントラックの成否を判定する基準値であるヘッド１２の位置ずれ量の許容範囲は、通常通りに狭く設定する。
【００６３】
オントラックに失敗した場合（Ｎｏの場合）、実施例１の図５のステップＳ１８からステップＳ２２で説明した工程と同じように、ＭＰＵ３４は、再度、目標のデータトラック２０へのシーク及びオントラックを試みる。具体的には、ＭＰＵ３４は、シーク回数が規定回数に到達しているか判定し（ステップＳ６８）、到達していない場合（Ｎｏの場合）、目標のデータトラック２０にヘッド１２をシークさせて（ステップＳ７０）、オントラックを試みる（ステップＳ６６）。規定回数に到達している場合（Ｙｅｓの場合）、ＭＰＵ３４は、シークエラー処理を行い、シークを中止する（ステップＳ７２）。
【００６４】
オントラックに成功したと判定された場合（Ｙｅｓの場合）、ＭＰＵ３４は、リード要求範囲の先頭セクタからデータのリード動作を実行し（ステップＳ７４）、読み出されたリードデータにエラーが生じていないか判定する（ステップＳ７６）。そして、リード要求範囲の全てのセクタについて、リードデータにエラーが生じていない場合（Ｎｏの場合）、リードデータを、データバッファ２８を介してホスト３８に転送する（ステップＳ７８）。
【００６５】
リードデータにエラーが生じている場合（Ｙｅｓの場合）、実施例１の図５のステップＳ５４からＳ５８で説明した工程と同じように、ＭＰＵ３４は、再度、リード動作を実行する。具体的には、ＭＰＵ３４は、リード動作回数が、規定回数に到達しているか判定し（ステップＳ８０）、到達していない場合（Ｎｏの場合）、リードエラーが生じたセクタに対して再度リード動作を実行する（ステップＳ８２）。規定回数に到達している場合は（Ｙｅｓの場合）、リードエラー処理を行い、リード動作を中止する（ステップＳ８４）。
【００６６】
ステップＳ６２でリード継続機能がＯＮであると判定された場合（Ｙｅｓの場合）、ホスト３８からのリード要求に係るデータは、映像データ又は音楽データであることから、データにある程度欠落が生じていてもそれほど問題とならない。そこで、ＭＰＵ３４は、オントラックの成否を判定する判定基準を緩く設定する（ステップＳ８６）。具体的には、バーストデータから得られる信号の振幅から計算されたヘッド１２の位置ずれ量の許容範囲を大きくする。
【００６７】
その後、ＭＰＵ３４は、リード要求に応じた目標のデータトラック２０にヘッド１２をシークさせ（ステップＳ８８）、オントラックを試みる。ここで、オントラックの成否の判定基準を緩く変更しているため、通常は、オントラックが失敗したと判定されるようなヘッド１２の位置ずれ量であっても、オントラックは成功したと判定されるようになる。
【００６８】
その後、図１０のフローチャートを実行する。図１０のフローチャートに示すステップＳ９０からステップＳ１０６の工程は、実施例１の図６に示したステップＳ２６からステップＳ４２の工程と同じであるため、それぞれの工程の処理については説明を省略する。
【００６９】
次に、図１１を用いて、ＭＰＵ３４が、ホスト３８から９セクタに係るリード要求を受信した場合を例に、図９及び図１０のステップＳ８６からＳ１０６に示した工程の処理を説明する。
【００７０】
図１１のように、ホスト３８から映像データ又は音楽データに係るリード要求を受信した場合、ヘッド１２の位置ずれ量の許容範囲を大きくすることで、オントラックの判定基準を緩くする。これにより、残留振動や外乱等が多少生じていても影響を受けることなく、オントラックは成功したと判定されるようになる。但し、この場合、目標のデータトラック２０ではなく、例えば、隣のデータトラック２０にオントラックされている場合も起こり得る。その後、オントラックしているデータトラック２０からデータを読み出し、読み出されたリードデータにエラーが生じてなければ、リードデータをデータバッファ２８に格納する。そして、９セクタ全てについてリード動作が完了した後、データバッファ２８に格納したデータをホスト３８に転送する。
【００７１】
このように、実施例２によれば、オントラックの成否を判定する判定基準であるヘッド１２の位置ずれ量の許容範囲を大きくし、判定基準を緩く設定してオントラックの成否を判定する。これにより、残留振動や外乱等の影響に関わらず、オントラックが成功したと判定され易くなり、オントラックのリカバリ処理がなくなる。このため、リカバリ処理での磁気ディスク１０の回転待ちに起因するデータの読み出し遅延が生じることを抑制できる。
【００７２】
また、オントラックの成否の判定基準を緩くすることで、目標のデータトラック２０ではなく、例えば、隣のデータトラック２０にオントラックしている場合も起こり得る。しかしながら、前述しているように、映像データや音楽データは、ある程度データ欠落が生じても大きな問題とならないため、隣のデータトラック２０のデータがホスト３８に多少転送されたとしても、再生される映像や音楽はあまり影響を受けることはない。
【００７３】
図１２は、実施例１又は実施例２に係る磁気ディスク装置１００を備えた電子装置２００のブロック図である。電子装置２００の例としては、電話機、オーディオ機、パソコン、ＨＤＤレコーダ等のデータを記憶する電子装置が挙げられ、特に、映像や音楽の再生に用いられる電子装置が好ましい。
【００７４】
図１２のように、電子装置２００は、磁気ディスク装置１００、コントローラ（ＣＰＵ）２０２、及びインターフェース２０４を有する。これら、磁気ディスク装置１００、コントローラ２０２、及びインターフェース２０４は、システムバス２０６により接続している。
【００７５】
インターフェース２０４は外部との間でデータのやりとりを行う。コントローラ２０２は、磁気ディスク装置１００内のＨＤＣ２６との間の各種命令等の制御を行う。例えば、インターフェース２０４を介して外部から入力されたデータが、磁気ディスク装置１００内の磁気ディスク１０に記録されるように、ＨＤＣ２６に指示を出す。また、コントローラ２０２は、磁気ディスク１０に記録されたデータを読み出すよう、ＨＤＣ２６に指示を出し、読み出されたデータをインターフェース２０４を介して外部に出力する。
【００７６】
実施例１又は実施例２に係る磁気ディスク装置１００は、前述しているように、残留振動や外乱等が生じても、データを連続してインターフェース２０４に送信することができる。このため、例えば、電子装置２００が映像や音楽の再生に用いられる電子装置である場合、映像や音楽を途切れることなく連続して再生させることが可能となる。
【００７７】
上述した実施例は、本発明の好適な実施の例である。但し、これに限定されるものではなく、本発明の趣旨を逸脱しない範囲内において種々の変形実施が可能である。
【符号の説明】
【００７８】
１０  磁気ディスク
１２  ヘッド
１４  ヘッドアンプ
１６  ボイスコイルモータ
１８  スピンドルモータ
２０  データトラック
２２  サーボパターン
２４  リードライトチャネル
２６  ハードディスクコントローラ
２８  データバッファ
３０  メモリ
３２  サーボコントローラ
３４  ＭＰＵ
３８  ホスト
４０  ヘッド位置制御部
４２  オントラック判定部
４４  リード継続機能判定部
４６  リトライ回数判定部
４８  リード制御部
５０  リードエラー判定制御部
８０  ディスクエンクロージャ
９０  制御ボード
１００  磁気ディスク装置
２００  電子装置
２０２  コントローラ（ＣＰＵ）
２０４  インターフェース
【図１】
2010225196.tif 000003
【図２】
2010225196.tif 000004
【図３】
2010225196.tif 000005
【図４】
2010225196.tif 000006
【図５】
2010225196.tif 000007
【図６】
2010225196.tif 000008
【図７】
2010225196.tif 000009
【図８】
2010225196.tif 000010
【図９】
2010225196.tif 000011
【図１０】
2010225196.tif 000012
【図１１】
2010225196.tif 000013
【図１２】
2010225196.tif 000014