(57)【要約】【課題】ディスク・ドライブ装置の落下に対する安全性を高める。【解決手段】本形態のＨＤＤは、落下センサの検知結果データが落下を示していると確認すると、ヘッド・スライダをディスク上から待機位置にアンロードする。ＨＤＤは、シーク開始のタイミングで、落下センサの検知結果データが落下を示しているかを確認する。落下を示している場合、コントローラは、アクチュエータをアンロードする。ＨＤＤは、シーク完了のタイミングで、シーク・フェイク・エラーを発行する。エラー回復処理の再シークの開始タイミングで、ＨＤＤは、検知結果データを参照した落下確認を行う。【選択図】図２
2009266301.tif 000002
【特許請求の範囲】
【請求項１】
ディスクと、
前記ディスクにアクセスするヘッドと、
前記ヘッドを支持し、前記ヘッドを前記ディスクの半径方向において移動する移動機構と、
落下を検知するためのセンサと、
前記センサの出力に応じて前記移動機構を制御するコントローラと、を有し、
前記コントローラは、
コマンドに対応した処理内において、予め定められている処理上のタイミングで、前記落下センサの検知結果データが落下を示しているかを確認し、落下が確認された場合に前記移動機構を制御して前記ヘッドをアンロードし、
前記コマンドに対応した処理内の前記いずれかのタイミングにおいて、フェイク・エラーを発行し、
前記フェイク・エラーに対するエラー回復処理を開始し、
前記エラー回復処理において、前記予め定められている処理上のタイミングでの前記確認を行い、落下が確認された場合に前記移動機構を制御して前記ヘッドをアンロードする、
ディスク・ドライブ装置。
【請求項２】
前記予め定められている処理上のタイミングは、前記ヘッドのシーク開始タイミングを含む、
請求項１に記載のディスク・ドライブ装置。
【請求項３】
前記エラー回復処理は再シークの工程を含み、
前記コントローラは、前記再シークの開始タイミングにおいて前記落下センサの検知結果データが落下を示しているかを確認し、落下が確認された場合に前記移動機構を制御して前記ヘッドをアンロードする、
請求項２に記載のディスク・ドライブ装置。
【請求項４】
前記コントローラは、前記エラー回復処理をエラー回復テーブルに従って行い、
前記再シークの工程は、前記エラー回復テーブルに登録されている最初に実行する工程である、
請求項３に記載のディスク・ドライブ装置。
【請求項５】
前記コントローラは、常に同一エラーのフェイク・エラーを発行する、
請求項１に記載のディスク・ドライブ装置。
【請求項６】
前記コントローラは、前記フェイク・エラーを前記ヘッドのシーク完了のタイミングで発行する、
請求項１に記載のディスク・ドライブ装置。
【請求項７】
前記フェイク・エラーは、シーク・エラーのフェイク・エラーである、
請求項１に記載のディスク・ドライブ装置。
【請求項８】
前記コントローラは、すでに落下が検知されている場合に、前記コマンドに対応した処理内のいずれかのタイミングにおいて前記フェイク・エラーを発行する、
請求項１に記載のディスク・ドライブ装置。
【請求項９】
前記検知結果データは、前記落下のためのセンサが落下を検知していることを示すデータである、
請求項１に記載のディスク・ドライブ装置。
【請求項１０】
ディスク・ドライブ装置において落下検知に応じたアンロードを制御する方法であって、
コマンドに対応した処理内において、予め定められている処理上のタイミングで、落下センサの検知結果データが落下を示しているかを確認し、落下が確認された場合にヘッドをアンロードし、
前記コマンドに対応した処理内のいずれかのタイミングにおいて、フェイク・エラーを発行し、
前記フェイク・エラーに対するエラー回復処理を開始し、
前記エラー回復処理において、前記予め定められている処理上のタイミングでの前記確認を行い、落下が確認された場合に前記ヘッドをアンロードする、
方法。
【請求項１１】
前記予め定められている処理上のタイミングは、前記ヘッドのシーク開始タイミングを含む、
請求項１０に記載の方法。
【請求項１２】
前記エラー回復処理は再シークの工程を含み、
前記再シークの開始タイミングにおいて前記落下センサの検知結果データが落下を示しているかを確認し、落下が確認された場合に前記移動機構を制御して前記ヘッドをアンロードする、
請求項１１に記載の方法。
【請求項１３】
前記エラー回復処理をエラー回復テーブルに従って行い、
前記再シークの工程は、前記エラー回復テーブルに登録されている最初に実行する工程である、
請求項１２に記載の方法。
【請求項１４】
常に同一エラーのフェイク・エラーを発行する、
請求項１０に記載の方法。
【請求項１５】
前記フェイク・エラーを前記ヘッドのシーク完了のタイミングで発行する、
請求項１０に記載の方法。
【請求項１６】
前記フェイク・エラーは、シーク・エラーのフェイク・エラーである、
請求項１０に記載の方法。
【請求項１７】
すでに落下が検知されている場合に、前記コマンドに対応した処理内のいずれかのタイミングにおいて前記フェイク・エラーを発行する、
請求項１０に記載の方法。
【請求項１８】
前記検知結果データは、前記落下のためのセンサが落下を検知していることを示すデータである、
請求項１０に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
ディスク・ドライブ装置及びディスク・ドライブ装置において落下検知に応じたアンロードを制御する方法に関し、特に、ホストからのコマンドに対応した処理中での落下検知に対応したアンロードの制御に関する。
【背景技術】
【０００２】
ディスク・ドライブ装置として、光ディスク、光磁気ディスク、あるいはフレキシブル磁気ディスクなどの様々な態様のディスクを使用する装置が知られているが、その中で、ハードディスク・ドライブ（ＨＤＤ）は、コンピュータの記憶装置として広く普及し、現在のコンピュータ・システムにおいて欠かすことができない記憶装置の一つとなっている。さらに、コンピュータにとどまらず、動画像記録再生装置、カーナビゲーション・システム、あるいは携帯電話など、ＨＤＤの用途はその優れた特性により益々拡大している。
【０００３】
ＨＤＤを搭載した携帯可能な電子機器においては、電子機器を誤って地面等に落下させた際の衝撃からＨＤＤを保護することが重要な課題である。ＨＤＤは、磁気ディスクへのアクセスのために、磁気ディスクを回転し、磁気ディスク上を浮上するヘッド・スライダを目的のデータ・セクタに移動する。このため、ＨＤＤの動作中に落下による衝撃が発生すると、ヘッド・スライダと磁気ディスクが衝突することによってヘッド・スライダやそれを支持するサスペンション、あるいは磁気ディスク（磁気ディスク上のデータ）を破損するおそれがある。
【０００４】
このような破損を防止するため、ＨＤＤ又はこれを搭載した電子機器が落下状態にあることを検知し、ヘッド・スライダを磁気ディスクと接触しない安全な位置（待機位置）に退避させる保護機構が知られている。典型的には、ＨＤＤは、アクチュエータを待避させるためのランプを有し、落下を検知するとアクチュエータをランプ上に移動する。このような保護機構が実装されているＨＤＤは、例えば特許文献１に開示されている。
【０００５】
ヘッド・スライダは、落下の他に、外部からの衝撃によっても、磁気ディスクと衝突を行う可能性がある。そのため、落下センサを有する典型的なＨＤＤは、衝撃・センサも有し、その衝撃・センサが衝撃を検知するとアクチュエータをランプ上に移動する（例えば、特許文献２を参照）。外部から衝撃が加えられるタイミングは不定である。一方、ＨＤＤ内の動作により、ＨＤＤの衝撃への耐性は異なる。
【０００６】
このため、特許文献２は、ＨＤＤの動作に応じてアクチュエータをアンロードする衝撃の閾値を変更することを提案している。例えば、特許文献２に開示されているＨＤＤは、シークとフォローイングに対して異なる閾値を適用し、それらの動作において対応する閾値を超える衝撃を検知すると、それらの動作を停止してアクチュエータ（ヘッド・スライダ）をアンロードする。
【特許文献１】特開２００７−１１５３０９号公報
【特許文献２】特開２００１−１４７８３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
典型的なＨＤＤの落下において、ＨＤＤは、自由落下の後に床に衝突する。ＨＤＤは、落下を検知した後、この衝突の前にアクチュエータをアンロードすることが必要である。しかし、ＨＤＤに直接に衝撃が与えられる場合と異なり、落下においては、落下開始からＨＤＤに衝撃が加えられるまでにある程度の落下時間が存在する。従って、コントローラは、落下開始から衝突までの間にアクチュエータをアンロードすればよく、落下開始直後にアクチュエータをアンロードしなくともよい。
【０００８】
ＨＤＤ内のコントローラは、ホストからのコマンドに対応した処理を中断すると、中断のタイミングによってはその処理を再開するために多くの変数を保存しておく必要があり、コントローラに対して大きな負荷となる。また、コマンドに対応した処理中の任意のタイミングで落下に対応してアンロードを行うことは、コントローラ内の処理におけるエラーを引き起こす要因なり得、コントローラの処理の安全性を低下させることにもなる。
【０００９】
従って、コマンドに対応した処理内の予め限られたタイミングにおいてのみ、落下検知に対するアンロード処理を行うことが好ましい。落下を確認するとアクチュエータのアンロードを行うＨＤＤにおいては、コントローラが落下を確認するタイミングを制限することによって、アンロード処理のタイミングを所望の処理上のタイミングに限定することができる。
【００１０】
また、コントローラは落下開始から衝突までの猶予時間内でコマンド対応処理を進めることができる。従って、処理上でのアンロード可能なタイミングを限定しても、適切なタイミングを設定しておくことによって、床との衝突による衝撃がＨＤＤに加わる前に、コントローラの処理が落下確認のタイミングまで進み、コントローラは安全にヘッド・スライダを待避させることができる。
【００１１】
しかし、落下開始からＨＤＤに衝撃が加わるまでの時間は落下の高さに依存する。ＨＤＤがより多くのモバイル製品に実装されるにつれて、より低い高さからの落下に対して、確実な保護動作を行うことが求められてきている。落下に対するＨＤＤの安全性を高め、低い位置からの落下に対しても衝突前にアクチュエータをアンロードすることができるようにするには、落下後にコントローラが落下確認をするまので時間を短縮することが必要となる。
【００１２】
落下を確認してアクチュエータのアンロードを行うＨＤＤにおいては、コントローラが落下検知を確認する頻度を高くすることによって落下確認の時間間隔を短縮することができる。これにより、落下開始後に落下確認を行うことなく処理を継続する時間を短縮し、落下後のより早いタイミングでのアンロードを達成することができる。
【００１３】
しかし、落下検知を確認するタイミングを新たに設定することは、他の処理への影響の検証や新たなタイミングに対応したアンロード処理の検証など、多くの時間とリソースが必要となる。技術進歩の極めて速いＨＤＤの設計開発においては、設計の迅速化と高いフレキシビリティが要求されている。従って、既存の設計を大きく変更することなく、落下検知を確認する頻度を高くし、より低い位置からの落下に対してもより安全にアクチュエータをアンロードすることができる技術が望まれる。
【課題を解決するための手段】
【００１４】
本発明の一態様に係るディスク・ドライブ装置は、ディスクと、前記ディスクにアクセスするヘッドと、前記ヘッドを支持し、前記ヘッドを前記ディスクの半径方向において移動する移動機構と、落下を検知するためのセンサと、前記センサの出力に応じて前記移動機構を制御するコントローラを有する。前記コントローラは、コマンドに対応した処理内において、予め定められている処理上のタイミングで、前記落下センサの検知結果データが落下を示しているかを確認し、落下が確認された場合に前記移動機構を制御して前記ヘッドをアンロードし、前記コマンドに対応した処理内の前記いずれかのタイミングにおいて、フェイク・エラーを発行し、前記フェイク・エラーに対するエラー回復処理を開始し、前記エラー回復処理において、前記予め定められている処理上のタイミングでの前記確認を行い、落下が確認された場合に前記移動機構を制御して前記ヘッドをアンロードする。これにより、より容易な設計変更によりディスク・ドライブ装置の落下に対する安全性を高めることができる。
【００１５】
前記予め定められている処理上のタイミングは、前記ヘッドのシーク開始タイミングを含むことが好ましい。これにより、コマンドに対応する処理の初期段階において、処理の区切りにおいて落下確認することができる。さらに、前記エラー回復処理は再シークの工程を含み、前記コントローラは、前記再シークの開始タイミングにおいて前記落下センサの検知結果データが落下を示しているかを確認し、落下が確認された場合に前記移動機構を制御して前記ヘッドをアンロードすることが好ましい。これにより、通常処理と同様の方法で落下確認を行うことができる。さらに、前記コントローラは、前記エラー回復処理をエラー回復テーブルに従って行い、前記再シークの工程は、前記エラー回復テーブルに登録されている最初に実行する工程であることが好ましい。これにより、より早く落下確認を行うことができる。
【００１６】
前記コントローラは、常に同一エラーのフェイク・エラーを発行することが好ましい。これにより、落下確認のために効率的な処理を実現することができる。前記コントローラは、前記フェイク・エラーを前記ヘッドのシーク完了のタイミングで発行することが好ましい。シーク完了のタイミングはシーク開始タイミングの中間にあり、処理の区切りであるからである。
【００１７】
好ましくは、前記フェイク・エラーは、シーク・エラーのフェイク・エラーである。これにより、アンロード後のロード処理を効率的に行うことができる。前記コントローラは、すでに落下が検知されている場合に、前記コマンドに対応した処理内のいずれかのタイミングにおいて前記フェイク・エラーを発行することが好ましい。これにより効率的な処理を行うことができる。前記検知結果データは、前記落下のためのセンサが落下を検知していることを示すデータであることが好ましい。これにより、コントローラの負荷を小さくすることができる。
【００１８】
本発明の他の態様は、ディスク・ドライブ装置において落下検知に応じたアンロードを制御する方法である。この方法は、コマンドに対応した処理内において、予め定められている処理上のタイミングで、落下センサの検知結果データが落下を示しているかを確認し、落下が確認された場合にヘッドをアンロードする。前記コマンドに対応した処理内のいずれかのタイミングにおいて、フェイク・エラーを発行する。前記フェイク・エラーに対するエラー回復処理を開始する。前記エラー回復処理において、前記予め定められている処理上のタイミングでの前記確認を行い、落下が確認された場合に前記ヘッドをアンロードする。これにより、より容易な設計変更によりディスク・ドライブ装置の落下に対する安全性を高めることができる。
【発明の効果】
【００１９】
本発明により、落下を検知してアクチュエータをアンロードするディスク・ドライブ装置において、落下に対する安全性を高めることができる。
【発明を実施するための最良の形態】
【００２０】
以下に、本発明を適用した実施の形態を説明する。説明の明確化のため、以下の記載及び図面は、適宜、省略及び簡略化がなされている。又、各図面において、同一要素には同一の符号が付されており、必要に応じて重複説明は省略されている。以下においては、ディスク・ドライブ装置の一例であるハードディスク・ドライブ（ＨＤＤ）について説明する。
【００２１】
本形態のＨＤＤは、ＨＤＤの落下を検知するためのセンサを有している。センサの検知結果データが落下を示していると確認すると、ＨＤＤはアクチュエータ（ヘッド・スライダ）を磁気ディスク上から待機位置にアンロードする。これにより、落下後の衝撃によりヘッド・スライダ、あるいは磁気ディスク上のデータが破損することを防ぐ。
【００２２】
落下に対応したアンロードは、ＨＤＤのコントローラが実行制御する。コントローラは、リード処理やライト処理などのコマンドに対応した処理内において、予め定められている処理上のタイミングで、落下センサの検知結果データが落下を示しているか否かを確認する。この確認において検知結果データが落下を示している場合、コントローラは、アクチュエータをアンロードする。
【００２３】
本形態のコントローラは、コマンドに対応した処理内において、上記予め定められている処理上のタイミングとは異なるタイミングにおいて、フェイク・エラーを発行する。フェイク・エラーは、実際のエラーが発生してないにも係らず発行される偽のエラーの通知である。フェイク・エラーは本当のエラー通知と同様の形式を有しており、コントローラは、フェイク・エラーに対しても、通常のエラーの通知と同様のエラー回復処理を実行する。
【００２４】
このフェイク・エラーに対応したエラー回復処理は、上記予め定められている処理上のタイミングに対応する工程を含む。コントローラは、上記エラー回復処理内において、通常処理と同様の方法により、つまり、上記予め定められている処理上のタイミングで、検知結果データを参照した落下確認を行う。
【００２５】
これにより、コマンド対応処理内でのコントローラによる落下確認の回数（頻度）を増やし、より早いタイミングでのアンロードを行うことができる。また、エラー回復処理内での落下確認は、通常処理内での落下確認と同じ方法（処理上のタイミング）で行うため、設計の変更を効率的に行うことができ、また、既存の設計への影響を少なくしてより安全に設計の変更を行うことができる。
【００２６】
本形態のフェイク・エラーによる落下確認及びそれに対応したアンロード処理について詳細を説明する前に、本形態のＨＤＤの全体構成を説明する。図１のブロック図に示すように、ＨＤＤ１は、エンクロージャ１０の外側に固定された回路基板２０を備えている。回路基板２０上には、リード・ライト・チャネル（ＲＷチャネル）２１、モータ・ドライバ・ユニット２２、ハードディスク・コントローラ（ＨＤＣ）とＭＰＵの集積回路（ＨＤＣ／ＭＰＵ）２３及び半導体メモリのＲＡＭ２４などの各回路を有している。さらに、ＨＤＤ１は、回路基板２０上に、落下センサ２５を有している。落下センサ２５は、ＨＤＤ１のいずれの位置に実装してもよい。
【００２７】
エンクロージャ１０内において、スピンドル・モータ（ＳＰＭ）１４は所定の角速度で磁気ディスク１１を回転する。磁気ディスク１１は、データを記憶するディスクである。ヘッドの一例であるヘッド・スライダ１２は、磁気ディスク１１上を浮上するスライダと、スライダに固定され磁気信号と電気信号との間の変換（データの読み書き）を行うヘッド素子部とを備えており、磁気ディスク１１にアクセス（リードもしくはライト）する。各ヘッド・スライダ１２はアクチュエータ１６の先端部に固定されている。ヘッド・スライダ１２の移動機構であるアクチュエータ１６は、ボイス・コイル・モータ（ＶＣＭ）１５に連結され、回動軸を中心に回動することによって、ヘッド・スライダ１２を回転する磁気ディスク１１上においてその半径方向に移動する。
【００２８】
ＨＤＤ１はランプ・ロード・アンドード方式を採用しており、磁気ディスク１１の回転を停止して非動作状態に移行する場合には、磁気ディスク１１の記録面上からアクチュエータ１６（ヘッド・スライダ１２）を退避させる。退避したアクチュエータ１６は、磁気ディスク１１の近傍に配置されたランプ１７に乗り上げた状態で静止する。より詳細には、アクチュエータ１６の先端に形成されたタブ(不図示)が、ランプ１７の面に乗り上げた状態で静止する。このとき、ヘッド・スライダ１２は磁気ディスク１１の外側にある。
【００２９】
ヘッド・スライダ１２（アクチュエータ１６）を磁気ディスク１１上からランプ１７上の待機位置に退避する動作をアンロードと呼び、ヘッド・スライダ１２をランプ１７から磁気ディスク１１面上に移動することをロードと呼ぶ。なお、本明細書においては、アクチュエータ１６（ヘッド・スライダ１２）の待機位置に係らず、アクチュエータ１６を待機位置に移動する処理をアンロード、待機位置から磁気ディスクのデータ領域上に移動する動作をロードと呼ぶ。
【００３０】
モータ・ドライバ・ユニット２２は、ＨＤＣ／ＭＰＵ２３からの制御データに従って、ＳＰＭ１４とＶＣＭ１５とを駆動する。アーム電子回路（ＡＥ）１３は、ＨＤＣ／ＭＰＵ２３からの制御データに従って複数のヘッド・スライダ１２の中から磁気ディスク１１にアクセス（リードもしくはライト）するヘッド・スライダ１２を選択し、リード／ライト信号の増幅を行う。ＲＷチャネル２１は、リード処理において、ＡＥ１３から取得したリード信号からサーボ・データ及びユーザ・データを抽出し、デコード処理を行う。デコード処理されたデータは、ＨＤＣ／ＭＰＵ２３に供給される。また、ＲＷチャネル２１は、ライト処理において、ＨＤＣ／ＭＰＵ２３から供給されたライト・データをコード変調し、さらに、コード変調されたデータをライト信号に変換してＡＥ１３に供給する。
【００３１】
ＨＤＣ／ＭＰＵ２３において、ＨＤＣはロジック回路であり、ＭＰＵはＲＡＭ２４にロードされたファームウェアに従って動作する。ＨＤＤ１の起動に伴い、ＲＡＭ２４には、制御及びデータ処理に必要とされるデータが磁気ディスク１１あるいはＲＯＭ（不図示）からロードされる。ＨＤＣ／ＭＰＵ２３はコントローラの一例であり、ヘッド・ポジショニング制御、インターフェース制御、ディフェクト管理などのデータ処理に関する必要な処理の他、ＨＤＤ１の全体制御を実行する。
【００３２】
ＨＤＣ／ＭＰＵ２３は、落下センサ２５の出力に応じて、アクチュエータ１６のロード及びアンロードを制御する。ＨＤＣ／ＭＰＵ２３は、落下センサ２５の出力から、ＨＤＤが落下していると確認すると、アクチュエータ１６（ヘッド・スライダ１２）をアンロードする。ＨＤＤ１が落下後に静止状態に戻ると、ＨＤＣ／ＭＰＵ２３はアクチュエータ１６を、再度、ロードする。
【００３３】
以下において、ホストからのコマンドに対応した処理であるリード処理あるいはライト処理（リード／ライト処理）における、落下に対応した本形態のアンロード処理について説明する。本形態のＨＤＣ／ＭＰＵ２３は、リード／ライト処理において、予め定められた処理上のタイミングにおいて落下確認を行う。ＨＤＣ／ＭＰＵ２３は、落下を確認すると、アクチュエータ１６をアンロードする。
【００３４】
落下確認の好ましいタイミングの一つは、シーク開始のタイミングである。図２のフローチャートを参照して、シーク開始タイミングにおいてＨＤＣ／ＭＰＵ２３が落下確認を行うリード／ライト処理の流れを説明する。図２は、リード／ライト処理のデータが、２データ・トラックに渡る例での処理フローを示している。
【００３５】
ＨＤＣ／ＭＰＵ２３は、ホスト５１からリード／ライト・コマンドを取得すると、そのコマンドに対応したリード／ライト処理を開始する（Ｓ１１）。ＨＤＣ／ＭＰＵ２３は、モータ・ドライバ・ユニット２２を介してＶＣＭ１５を制御し、コマンドが指定するロジカル・ブロック・アドレスが存在するデータ・トラックにヘッド・スライダ１２のシークを開始する（Ｓ１２）。ＨＤＣ／ＭＰＵ２３は、ヘッド・スライダ１２の実際の移動を開始する前に、落下センサ２５の出力に基づく落下確認を行う。落下確認については後述する。ここで、ＨＤＤ１が落下している場合、ＨＤＣ／ＭＰＵ２３は、アクチュエータ１６（ヘッド・スライダ１２）をアンロードする。
【００３６】
ＨＤＤ１が落下してない場合は、ＨＤＣ／ＭＰＵ２３は最初のターゲット・データ・トラックへのヘッド・スライダ１２の移動を開始し（Ｓ１２）、それが完了すると（Ｓ１３）、ターゲット・データ・トラック上のフォローイング（Ｓ１４）を行う。さらに、ＨＤＣ／ＭＰＵ２３は、ヘッド・スライダ１２がターゲット・セクタに到着すると、ヘッド・スライダ１２によりターゲット・データ・セクタからのデータ読み出し／書き込みを開始する（Ｓ１５）。そのデータ・トラックにおけるデータ読み出し／書き込みが終了すると（Ｓ１６）、ＨＤＣ／ＭＰＵ２３は次のターゲット・データ・トラックへのシークを行う（Ｓ１７）。
【００３７】
このシーク開始のタイミングにおいて、ＨＤＣ／ＭＰＵ２３は、落下確認を行う。ＨＤＤ１が落下している場合、ＨＤＣ／ＭＰＵ２３は、アクチュエータ１６（ヘッド・スライダ１２）をアンロードする。ＨＤＤ１が落下してない場合は、ＨＤＣ／ＭＰＵ２３は次のターゲット・データ・トラックへのヘッド・スライダ１２の移動を開始し（Ｓ１７）、それが完了すると（Ｓ１８）、ターゲット・データ・トラック上のフォローイングを行う（Ｓ１９）。さらに、ＨＤＣ／ＭＰＵ２３は、ヘッド・スライダ１２がターゲット・セクタに到着すると、ヘッド・スライダ１２によりターゲット・データ・セクタからのデータ読み出し／書き込みを行い（Ｓ２０、Ｓ２１）、リード／ライト処理を完了する（Ｓ２２）。
【００３８】
シーク処理の開始は、リード／ライト処理内の一つの区切りになっている。従って、このタイミングでのアンロードにより、他のタイミングと比較して、より安全なアンロード及び効率的な中断処理の再開を実現することができる。また、アンロードによるコントローラの処理のエラー発生をより確実に防ぐことができる。また、ヘッド・スライダ１２が磁気ディスク上にあるとき、リード／ライト処理の最初の主な動作はシークであり、リード／ライト処理開始の直前に落下確認を行うことができる。
【００３９】
ＨＤＣ／ＭＰＵ２３は、コマンド対応処理を行っていない場合には頻繁に落下確認を行う。従って、リード／ライト処理が完了した後、ＨＤＣ／ＭＰＵ２３はすぐに落下確認を行う。このように、シーク開始のタイミングで落下確認を行うことで、次の落下確認までの時間を短縮することができる。また、上記例のように、リード／ライト処理の途中においてシークを行う場合も、ＨＤＣ／ＭＰＵ２３は落下確認を行う。従って、複数データ・トラックに渡るアクセス（読み出し／書き込み）がある場合も、落下確認の間隔が長くなることがなく、一定の範囲内に収めることができる。
【００４０】
図２に示すように、本形態のＨＤＣ／ＭＰＵ２３は、落下確認の規定のタイミングであるシーク開始のタイミングに加えて、他のタイミングにおいて、フェイク・エラーを使用した落下確認を行う。好ましいタイミングとして、ＨＤＣ／ＭＰＵ２３は、シーク完了のタイミングにおいて、（所定条件を満たす場合に）フェイク・エラーを生成し、それに応じたエラー回復処理内において、落下確認を行う。
【００４１】
このエラー回復処理はシークを行う工程を有しており、ＨＤＣ／ＭＰＵ２３は、そのシーク開始のタイミングにおいて落下確認を行う。このように、エラー回復処理内で、規定タイミングと同じタイミング（同じ方法）で落下確認を行うことで、既存の設計への影響を少なくしてより安全に設計の変更を行うことができる。
【００４２】
フェイク・エラーを使用した落下確認について詳細に説明する前に、通常処理内のシーク開始タイミングにおける落下確認及びアンロード処理について、図３のブロック図を参照して説明する。本形態のＨＤＤ１が使用する落下センサ２５は、いくつかの異なる構成の落下センサ中から選択することができる。その中で、落下判定回路を有する落下センサは、ＨＤＤ１に使用する落下センサ２５として好適である。
【００４３】
一般に、落下センサは、互いに直行する３軸の加速度センサを有している。好ましい例において、落下センサ２５は判定回路を有し、上記加速度センサの出力値から、落下しているか否かの判定を行う。例えば、３方向それぞれの加速度の絶対値が基準範囲内にあり、さらに、その状態が規定時間続いた場合、判定回路は、現在落下状態にあると判定する。落下センサ２５が落下判定を行うことで、ＨＤＣ／ＭＰＵ２３の負荷を低減することができる。
【００４４】
図３のブロック図は、通常処理内での落下確認及びアンロード処理に関係する構成要素を模式的に示している。ＨＤＣ／ＭＰＵ２３内に示されている各要素は、ＨＤＣ／ＭＰＵ２３が実行する機能に相当する。ＨＤＣ／ＭＰＵ２３内のハードウェア及びファームウェアに従って動作するＭＰＵは、コマンド対応処理部２３２、割り込み制御部２３１、そして落下対応処理部２３３として機能する。ＨＤＣとＭＰＵの一方あるいは双方が協同して、これらの機能を実現する。ＨＤＣ／ＭＰＵ２３は検知結果レジスタ２３４を有しており、そこに落下センサ２５の検知結果データが格納される。
【００４５】
図３のブロック図において、ホスト５１からリード／ライト・コマンドを受信すると、コマンド対応処理部２３２が、そのコマンドに対応した処理を制御、実行する。具体的には、シーク、フォローイング、データの読み出し／書き込みなどの各処理を行う。落下センサ２５は、落下を検知する（落下していると判定する）と、ＨＤＣ／ＭＰＵ２３にＥＶＥＮＴの通知を行って割り込みを行い、さらに、検知結果データである落下検知フラグを検知結果レジスタ２３４に格納する。
【００４６】
割り込み制御部２３１は、落下センサ２５からの割り込みを制御する。コマンド対応処理部２３２が処理を行っている間、割り込み制御部２３１は、落下センサ２５からのＥＶＥＮＴの通知を受けてもすぐに対応することなく、コマンド対応処理部２３２がシークを開始するタイミングまでＥＶＥＮＴ通知を保持する。コマンド対応処理部２３２のシーク開始の直前に、割り込み制御部２３１は、ＡＣＴＩＯＮの通知を発行して落下対応処理部２３３を起動し、落下センサ２５の落下検知に対応する処理を行うことを指示する。
【００４７】
コマンド対応処理部２３２の処理は、ヘッド・スライダ１２を移動する直前のこのタイミングで中断する。落下対応処理部２３３は、検知結果レジスタ２３４内の落下検知フラグを参照し、ＨＤＤ１が落下しているか否かを確認する（落下確認）。落下検知フラグはＨＤＤ１の現在の落下を示しているので、落下対応処理部２３３は、アクチュエータ１６をアンロードする。
【００４８】
次に、フェイク・エラーを使用した落下確認及びアンロード処理について、図４のブロック図を参照して説明する。図４のブロック図において、エラー回復処理部２３５は、ＨＤＣ／ＭＰＵ２３が実行する機能の一つである。図２を参照して説明したように、ＨＤＣ／ＭＰＵ２３は、リード／ライト処理におけるシーク完了のタイミングでフェイク・エラーの通知を発行し、そのフェイク・エラーに対応した処理において落下確認を行う。
【００４９】
ホスト５１からのリード／ライト・コマンドに対応するコマンド対応処理部２３２の処理は、図３を参照した説明と同様である。コマンド対応処理部２３２がシークを開始した後、落下センサ２５は落下を検知すると、ＥＶＥＮＴの通知によりＨＤＣ／ＭＰＵ２３に割り込みを行い、さらに、検知結果レジスタ２３４に落下検知フラグをセットする。割り込み制御部２３１は、落下センサ２５からのＥＶＥＮＴ通知を保持する。
【００５０】
コマンド対応処理部２３２がシークを完了すると、割り込み制御部２３１は、フェイク・エラーを発行する。コマンド対応処理部２３２は処理中断し、さらに、エラー回復処理部２３５は、発行されたフェイク・エラーに対応したエラー回復処理を開始する。エラー回復処理はシークの工程を含んでいる。通常処理と同様に、割り込み制御部２３１は、エラー回復処理部２３５のシーク開始タイミングにおいて、落下センサ２５からの割り込み（ＥＶＥＮＴ通知）に答えて、ＡＣＴＩＯＮの通知を発行して落下対応処理部２３３を起動する。
【００５１】
エラー回復処理部２３５の処理は、このタイミングで中断する。落下対応処理部２３３は、検知結果レジスタ２３４内の落下検知フラグを参照し、ＨＤＤ１が落下しているか否かを確認する（落下確認）。落下検知フラグはＨＤＤ１の現在の落下を示しているので、落下対応処理部２３３は、アクチュエータ１６をアンロードする。
【００５２】
フェイク・エラーとして使用されるエラーは、実際に存在するエラー・タイプから選択する。通常処理におけるエラーとしては、シーク・エラー、リード・エラー、ライト・エラーなどが存在する。この中で、シーク・エラーは、フェイク・エラーとして使用するのに好ましいエラーである。上述のように、ＨＤＣ／ＭＰＵ２３は、シーク開始のタイミングで落下確認を行う。従って、エラー回復処理における早いタイミング、できれは最初の工程において、エラー回復処理部２３５がシーク処理を行うことが好ましい。
【００５３】
エラー回復処理部２３５は、シーク・エラーに対して、シークＥＲＰテーブル２４１を参照して、エラー回復処理を行う。ＥＲＰテーブル２４１は、複数のエラー回復ステップから構成されており、エラー回復処理は、優先度の高いステップから、各ステップを順次実行する。シークＥＲＰテーブル２４１は再シークのステップを有しており、また、効果的なエラー回復のため、最優先のエラー回復ステップにおいて再シークを行う。これにより、エラー回復処理の初期にＨＤＣ／ＭＰＵ２３は落下確認を行い、アンロードまでの時間を短縮することができる。
【００５４】
続いて、図５のフローチャートを参照して、リード／ライト処理における、落下確認処理及びアンロード処理について、より具体的な例を説明する。図５のフローチャートは、通常処理上の規定タイミング（シーク開始タイミング）における落下確認と、フェイク・エラーを使用した落下確認の双方を含んでいる。また、フェイク・エラーとして、シーク・エラーを使用する例を説明する。
【００５５】
コマンド対応処理部２３２は、リード／ライト・コマンドに対応した処理を開始する。割り込み制御部２３１は、落下センサ２５からの割り込みを受けている場合（Ｓ４１におけるＹ）、シーク開始のタイミング（実際のヘッド移動の直前）に、落下対応処理部２３３にそれを通知する。
【００５６】
落下対応処理部２３３は、検知結果レジスタ２３４内の落下検知フラグを参照し（Ｓ５１）、ＨＤＤ１が落下しているか否かを確認する（落下確認）。落下検知フラグはＨＤＤ１の現在の落下を示しているので、落下対応処理部２３３は、アクチュエータ１６をアンロードする（Ｓ５２）。
【００５７】
シーク開始タイミングにおいて割り込み制御部２３１が落下センサ２５からの割り込みを受けてない場合（Ｓ４１におけるＮ）、コマンド対応処理部２３２がターゲット・データ・トラックへのシークを開始する（Ｓ４２）。シークが完了すると（Ｓ４３）、シーク開始後における落下センサ２５からの割り込みの有無により、その後の処理が分岐する。
【００５８】
落下センサ２５からの割り込みが存在している場合（Ｓ４４におけるＹ）、割り込み制御部２３１は、フェイクのシーク・エラーを発行する（Ｓ４９）。落下対応処理部２３３は、発行された偽のシーク・エラーに応答して、エラー回復処理を開始する（Ｓ５０）。具体的には、エラー回復処理はシークＥＲＰであり、落下対応処理部２３３、シークＥＲＰテーブル２４１を参照して、最優先のエラー回復ステップを開始する。最優先のエラー回復ステップは、再シーク（通常のシークと同一条件でのシーク）である。
【００５９】
従って、この再シークの開始タイミングにおいて、通常処理と同様に、割り込み制御部２３１は、落下センサ２５からの割り込みに答えて、落下対応処理部２３３に落下センサ２５の落下検知に対応する処理を指示する。エラー回復処理部２３５の処理は、このタイミングで中断する。
【００６０】
落下対応処理部２３３は、検知結果レジスタ２３４内の落下検知フラグを参照し（Ｓ５１）、ＨＤＤ１が落下しているか否かを確認する（落下確認）。落下検知フラグはＨＤＤ１の現在の落下を示しているので、落下対応処理部２３３は、アクチュエータ１６をアンロードする（Ｓ５２）。
【００６１】
シークが完了時に落下センサ２５からの割り込みが存在していない場合（Ｓ４４におけるＮ）、コマンド対応処理部２３２は、ターゲット・データ・トラックのフォローイングを開始し（Ｓ４５）、ターゲット・データ・セクタからの読み出し／書き込みを行う（Ｓ４６）。コマンド対応処理部２３２は、データ・トラックを１周するまで、ターゲット・セクタからの読み出し／書き込みを行う（Ｓ４７及びＳ４８におけるＮ）。データ・トラックを１周する前に（Ｓ４７におけるＮ）アクセスするデータ・セクタが終了すると（Ｓ４８におけるＹ）、コマンド対応処理部２３２はリード／ライト処理を完了する。
【００６２】
読み出し／書き込むべきデータが終了する前にデータ・トラックを１周すると（Ｓ４７におけるＹ）、コマンド対応処理部２３２は、次のデータ・トラックへのシークを開始する（Ｓ４２）。割り込み制御部２３１は、このシーク開始タイミングにおいて、落下センサ２５からの割り込みに対応した処理を行う（Ｓ４１）。工程Ｓ４２以下の処理は、上述と同様である。
【００６３】
以上のように、フェイク・エラーを発行することで、通常処理における落下確認の規定タイミングを変更することなく、落下確認の機会を増やすことができる。これにより、リード／ライト処理において発生した落下に対してより迅速に対応することができると共に、ＨＤＤ設計・開発のフレキシビリティが増し、設計変更にともにシステム・エラーの危険性を小さくすることができる。
【００６４】
上記好ましい例は、通常処理におけるシーク完了のタイミングにおいてフェイク・エラーを発行する。しかし、シーク完了タイミングに代えて、あるいはこれに加えて、異なるタイミングにおいて、フェイク・エラーを発行するようにしてもよい。例えば、データの読み出し／書き込みの直前、直後、あるいはその最中に発行することも可能である。しかし、シーク開始タイミングを規定の落下確認タイミングとして選択するのと同様に、処理の区切りという観点からシーク完了のタイミングが好適である。
【００６５】
リード／ライト処理における複数の処理上のタイミングでフェイク・エラーを発行する場合、いずれのタイミングにおいても同一タイプのエラーを発行することが好ましい。フェイク・エラーの目的は、落下確認という同一の処理であり、このために適切なエラーを選択することが好ましいからである。
【００６６】
発行するフェイク・エラーは、シーク・エラーが好ましい。上述のようにシーク・エラーの回復処理が再シーク工程を最優先のステップとして含む他、落下終了後に中断したエラー回復処理を再開することで、ランプに退避しているヘッド・スライダ１２をアンロード前のターゲットのデータ・トラックに、容易にすぐ戻すことができるからである。
【００６７】
従って、リード／ライト処理内の異なるタイミングでフェイク・エラーを発行する場合、いずれのタイミングにおいても、シークのフェイク・エラーを発行することが好ましい。また、シーク完了でのフェイク・エラーのように、シーク処理と関連するフェイク・エラーは、シークに対応したエラーが好ましい。
【００６８】
ＨＤＤ１は、落下センサ２５として、上記の構成と異なる構成の落下センサを使用することができる。例えば、無重力状態の場合に開放状態となるメカニカル・スイッチによって無重力状態であることを感知する落下センサを使用することもできる。
【００６９】
あるいは、落下センサ２５は落下判定回路を有さず、３軸のセンサの出力を演算した重力値をＨＤＣ／ＭＰＵ２３に渡すようにしてもよい。この場合、ＨＤＣ／ＭＰＵ２３が、落下の判定を行う。ＨＤＣ／ＭＰＵ２３は、検知結果データである検知重力値と閾値を比較して、重力値が閾値より小さい場合に落下が起きていると判定する（落下検知）。このような落下センサを使用する場合、例えば、ＨＤＣ／ＭＰＵ２３は、頻繁に落下判定処理を行い、落下を検知（落下しているとの判定）した場合に、落下検知フラグを立てる。この落下検知フラグが、上記検知結果データである。ＨＤＣ／ＭＰＵ２３は、シーク開始のタイミングにおいて落下検知フラグを参照して、落下確認を行う。
【００７０】
あるいは、ＨＤＣ／ＭＰＵ２３は、上記の落下確認タイミングにおいて、落下センサが検知した重力値と閾値とを比較して落下確認を行ってもよい。この例においては、落下センサの出力である重力値が検知結果データである。落下センサは、レジスタに格納されている検知重力値を頻繁に更新する。ＨＤＣ／ＭＰＵ２３は、処理上の規定タイミングでこの検知結果データと閾値を比較して落下の判定（落下確認に相当）するほか、所定のタイミングでフェイク・エラーを発行し、そのエラー回復処理内で検知結果データと閾値との比較を行う。
【００７１】
この例において、ＨＤＣ／ＭＰＵ２３は、決まった処理上のタイミングで常にフェイク・エラーを発行し、落下確認を行う。これに対して、上記他の例は、落下が検知されている場合に、ＨＤＣ／ＭＰＵ２３はフェイク・エラーを発行する。無駄な処理を避ける点からは、落下が検知されている場合にフェイク・エラーを発行することが好ましい。しかし、設計によっては、本例のように、特定のタイミングで常にフェイク・エラーを発行して落下確認を行う構成を採用してもよい。
【００７２】
以上、本発明について好ましい態様を使用して説明したが、本発明は上述した実施の形態のみに限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能であることは勿論である。例えば、本発明は、ＨＤＤに限らず、磁気ディスクと異なるディスクを媒体として使用するディスク・ドライブ装置に適用することができる。本発明は、リードあるいはライトのみ行うＨＤＤに適用することができる。
【００７３】
また、本発明は、コンタクト・スタート・ストップを採用するＨＤＤのように、ランプ上の位置と異なる待避位置を有するＨＤＤに適用することができる。ヘッド・スライダの移動機構としては、回動するアクチュエータが好ましいが、これとは異なる動作によりヘッド・スライダを移動する移動機構を使用してもよい。
【図面の簡単な説明】
【００７４】
【図１】本実施形態にかかるハードディスク・ドライブの構成を模式的に示すブロック図である。
【図２】本実施形態においてリード／ライト処理において規定タイミングでの落下確認及びフェイク・エラーを使用した落下確認を行う処理の流れを示すフローチャートである。
【図３】本実施形態において、通常処理内での落下確認及びアンロード処理に関係する構成要素を模式的に示している。
【図４】本実施形態において、フェイク・エラーを使用した落下確認及びアンロード処理に関係する構成要素を模式的に示している。
【図５】本実施形態において、リード／ライト処理における落下確認処理及びアンロード処理の流れを示すフローチャートである。
【符号の説明】
【００７５】
１  ハードディスク・ドライブ、１０  エンクロージャ、１１  磁気ディスク
１２  ヘッド・スライダ、１３  アーム・エレクトロニクス
１４  スピンドル・モータ、１５  ボイス・コイル・モータ、１６  アクチュエータ
１７  ランプ、２０  回路基板、２１  リード・ライト・チャネル
２２  モータ・ドライバ・ユニット、２３  ハードディスク・コントローラ／ＭＰＵ
２５  落下センサ、２３１  割り込み制御部、２３２  コマンド対応処理部
２３３  落下対応処理部、２３４  検知結果レジスタ、２３５  エラー回復処理部
２４１  ＥＲＰテーブル
【図１】
2009266301.tif 000003
【図２】
2009266301.tif 000004
【図３】
2009266301.tif 000005
【図４】
2009266301.tif 000006
【図５】
2009266301.tif 000007