(57)【特許請求の範囲】
【請求項１】
ディスクにデータを書き込みまたは該ディスクからデータを読み出すディスク装置において、
上記ディスクを回転させるモータと、
書き込みまたは読み出すデータのデータ転送速度に基づいて上記モータの回転速度を制御する制御部とを備え、
該制御部は、上記データ転送速度が閾値Ｒｔｈ（ｍａｘ）を超え、かつ該閾値Ｒｔｈ（ｍａｘ）を超えた状態の継続時間が閾値Ｔｔｈ以上継続した場合に、上記モータの回転速度を上げるように制御するとともに、
上記制御部は、上記モータの回転速度を変更した後、変更後の回転速度での継続時間が所定時間Ｔｏ以上継続しない場合は、回転速度の変更を判定する際の上記継続時間の閾値Ｔｔｈを増加して設定することを特徴とするディスク装置。
【請求項２】
ディスクにデータを書き込みまたは該ディスクからデータを読み出すディスク装置において、
上記ディスクを回転するモータと、
書き込みまたは読み出すデータのデータ転送速度に基づいて上記モータの回転速度を制御する制御部とを備え、
該制御部は、上記データ転送速度が閾値Ｒｔｈ（ｍｉｎ）を下回り、かつ該閾値Ｒｔｈ（ｍｉｎ）を下回った状態の継続時間が閾値Ｔｔｈ以上継続した場合に、上記モータの回転速度を下げるように制御するとともに、
上記制御部は、上記モータの回転速度を変更した後、変更後の回転速度での継続時間が所定時間Ｔｏ以上継続しない場合は、回転速度の変更を判定する際の上記継続時間の閾値Ｔｔｈを増加して設定することを特徴とするディスク装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ホスト装置との間で転送するデータの転送量に応じて、ディスクの回転速度を適宜変更可能なディスク装置に関するものである。
【背景技術】
【０００２】
近年、ハードディスク等のディスク状記録媒体を用いたディスク装置は、ＰＣなどの情報端末だけでなく、ビデオレコーダやミュージックプレーヤーなどの民生機器に搭載されている。民生機器では、主に、映像・音声などのＡＶコンテンツを含む大容量データを蓄積するのに使われている。
【０００３】
ＡＶ用のディスク装置では２つの使用形態がある。１つは、ホスト装置との間で転送されるＡＶコンテンツをリアルタイムで記録または再生する場合で、高速転送であることよりも、騒音を抑えることが要求される。もう１つは、大容量のＡＶコンテンツデータをホスト装置との間で高速に移動（転送）する場合で、騒音に配慮するよりも短時間で記録または再生することが要求される。このようにＡＶ用のディスク装置では、使用目的に応じて異なる要求がなされる。
【０００４】
上記２つの要求に応えるため、従来のディスク装置は、ディスクの回転速度を適宜変更して記録または再生を行っている。すなわち、リアルタイム記録／再生時には、騒音を抑えるために低速回転とし、データの移動時には、高速記録／再生のため高速回転とする。その場合、ホスト装置側が使用目的に応じて回転速度を制御する方式（例えば特許文献１，２を参照）と、ディスク装置側がデータ転送量に基づき回転速度を制御する方式（例えば特許文献３，４を参照）などが提案されている。さらに特許文献２には、ホスト装置が回転速度の変更に伴いコマンドの並び替えを行う技術について、また特許文献３，４には、単位時間当たりのデータ転送速度を検出しそれに応じて回転速度を切り替えることが開示されている。
【０００５】
【特許文献１】特許第３４１３７３１号公報
【特許文献２】特開２００１−２２２３８０号公報
【特許文献３】特開２００３−２０３３５４号公報
【特許文献４】特開２０００−３３９８３９号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
特許文献１，２に示されるような、ホスト装置がディスク装置の機能や性能を判断し回転速度を制御する方法は、ホスト装置の判断機能に依存する。そのため、接続先のホスト装置が固定されているディスク装置においては有効であるが、可搬型ディスク装置のように、接続先のホスト装置が固定されていないディスク装置においては最適な制御が実現するとは言い難い。
【０００７】
また、特許文献３，４は、ディスク装置側で回転速度を制御するものであるが、目的とする騒音の低減や速度制御のスムーズな切り替えに関して、さらに配慮が必要である。すなわち、データ転送速度を検出してそのまま速度制御を行う場合、速度変更が頻繁に実施されることがあり、その結果騒音が増大し、またバッテリーの使用効率を低下させる恐れがある。あるいは、速度変更に伴いコマンド処理、すなわちデータのリード／ライト動作（読み出し／書き込み動作）が一時中断し、必要な処理が遅延することが生じる。
【０００８】
本発明の目的は、ディスクの回転速度が可変であって、騒音の更なる低減とバッテリーの使用効率を図り、またコマンド処理をスムーズに実行可能なディスク装置を提供することにある。
【課題を解決するための手段】
【０００９】
本発明によるディスク装置は、ディスクを回転するモータと、書き込みまたは読み出すデータのデータ転送速度に基づいてモータの回転速度を制御する制御部とを備え、データ転送速度が閾値Ｒｔｈ（ｍａｘ）を超え、かつ閾値Ｒｔｈ（ｍａｘ）を超えた状態の継続時間が閾値Ｔｔｈ以上継続した場合に、モータの回転速度を上げるように制御する。また本発明によるディスク装置は、データ転送速度が閾値Ｒｔｈ（ｍｉｎ）を下回り、かつ閾値Ｒｔｈ（ｍｉｎ）を下回った状態の継続時間が閾値Ｔｔｈ以上継続した場合に、モータの回転速度を下げるように制御する。
【００１０】
ここにデータ転送速度は、ホスト装置から受ける単位時間当たりのデータ転送要求量により求める。また、継続時間の閾値Ｔｔｈは、制御部が回転速度を変更する制御を開始して、データの書き込みまたは読み出す処理が開始可能となるまでに要する時間を基に設定する。そして、回転速度を変更した後、変更後の回転速度での継続時間が所定時間Ｔｏ以上継続しない場合は、継続時間の閾値Ｔｔｈを増加して設定する。
【００１１】
なお、ホスト装置から受けたコマンドの中に時間制約のあるコマンドが含まれている場合は、回転速度の変更の判定結果に係わらず、現在の回転速度を継続させる。
【００１２】
また、回転速度の変更処理中もホスト装置からコマンドを受け入れ、回転速度の変更処理中または変更処理完了時に、変更後の回転速度に基づき、受け入れたコマンドの並び替え処理を実行する。
【発明の効果】
【００１３】
本発明によれば、回転速度変更に伴う騒音が低減し、またバッテリーの使用効率が向上し、さらに回転速度変更時のコマンド処理がスムーズに実行できて実用特性が向上する。
【発明を実施するための最良の形態】
【００１４】
以下、本発明について図面を用いて説明する。
【００１５】
図１は、本発明によるディスク装置の一実施例を示す構成図である。本実施例のディスク装置１０では、記録媒体としてハードディスク媒体１０１を搭載するが、これに限らず光ディスク媒体でもよい。ディスク装置１０は、ホストインタフェース２１を介してＰＣなどのホスト装置２０と接続する。またこのディスク装置は、バッテリー等を電源とする可搬型装置の場合が適する。
【００１６】
ディスク装置１０の構成は、ディスク１０１へのデータの書き込みおよびディスクからのデータの読み出しを行うヘッド１０２、ディスクを回転するモータ１０３、ヘッドを移動するボイスコイルモータ（ＶＣＭ）１０４、モータ及びＶＣＭを駆動するモータドライバ１０５、モータドライバ１０５を制御してディスク１０１の回転速度およびヘッド１０２の移動を制御するサーボ制御部１０６を有する。
【００１７】
回転速度制御部１０７は、ホスト装置２０側からのデータ転送要求量を検出しデータ転送速度を算出するデータ転送量検出部１０８、データ転送速度が閾値Ｒｔｈを超えた状態の継続時間を計測する継続時間計測部１０９、回転速度を変更する際のデータ転送速度の閾値Ｒｔｈ及び継続時間の閾値Ｔｔｈを格納する管理テーブル１１０、サーボ制御部１０６に対して回転速度を変更する指令を発する回転速度変更部１１１を有する。インタフェース部１１２は、ホスト装置２０との間でコマンドやデータを入出力する。
【００１８】
ここでデータ転送量検出部１０８は、インタフェース部１１２で転送されるデータをモニタリングすることにより、単位時間当たりのデータ転送要求量からデータ転送速度Ｒを算出する。そして、管理テーブル１１０に格納するデータ転送速度の閾値Ｒｔｈ及び継続時間の閾値Ｔｔｈと比較し、算出したデータ転送速度Ｒが閾値Ｒｔｈを超え、しかも継続時間計測部１０９の計測した閾値Ｒｔｈを超えた時間が、閾値Ｔｔｈ以上継続する場合に、回転速度の変更を決定して、サーボ制御部１０６に対して回転速度の変更を指令する。
【００１９】
このように本実施例では、回転速度制御部１０７は、データ転送速度Ｒが閾値Ｒｔｈを超えるか否かだけでなく、閾値Ｒｔｈを超えた時間Ｔがどれだけ継続したかを検出して、回転速度の制御を行うものである。よって、頻繁な回転速度変更を回避し、発生する騒音を低減するとともに、バッテリーの使用効率も改善することができる。
【００２０】
また本実施例は、回転速度の制御をホスト装置に依存せず、ディスク装置側の判断で行うものであり、ディスク装置の性能を使用目的に応じて最適化することが可能となる。従って、任意のホスト装置に接続して用いる可搬型ディスク装置において、特に有効な方式となる。
【００２１】
図２は、本実施例のディスク装置における回転速度制御の一具体例を示す図であり、データ転送速度Ｒと回転速度Ｖとの関係を示す。ここでは簡単のために、回転速度を２段階（７２００ｒｐｍと３６００ｒｐｍ）で切り替える場合について示した。図２から分かるように、データ転送速度Ｒが閾値Ｒｔｈ（ｍａｘ）＝３００Ｍｂｐｓを超えると、回転速度Ｖを３６００ｒｐｍから７２００ｒｐｍに上げる。また、データ転送速度Ｒが閾値Ｒｔｈ（ｍｉｎ）＝２２５Ｍｂｐｓを下回ると、回転速度Ｖを７２００ｒｐｍから３６００ｒｐｍに下げる。ここで定める閾値Ｒｔｈ（ｍａｘ）は、当該装置が現在の回転速度３６００ｒｐｍにおいて処理できる最大転送速度を基に決める。また閾値Ｒｔｈ（ｍｉｎ）は、現在の回転速度７２００ｒｐｍより１段低い回転速度３６００ｒｐｍにおける平均データ転送速度とするのがよい。このように回転速度の切り替え点（閾値Ｒｔｈ）を、加速時と減速時において差を設けたので、ヒステリシス制御となり制御特性が安定する。
【００２２】
また本実施例では、閾値Ｒｔｈを超えた時間も合わせて判定する。閾値Ｒｔｈを超えた時間Ｔが予め設定した閾値Ｔｔｈを超えている場合に、回転速度を変更する。この閾値Ｔｔｈは、転送するデータの大きさに合わせ、数ｓｅｃまたは数十ｓｅｃ程度の値が適当である。あるいは閾値Ｔｔｈは、ディスク装置が回転速度変更の制御を開始して、リード（読み出し）処理またはライト（書き込み）処理が開始可能となるまでに要する時間を基に設定する。これにより頻繁な速度変更を回避でき、加速または減速に伴う騒音を低減するとともにバッテリーの使用効率を向上し、スムーズなリード／ライト動作を実現できる。また、頻繁な速度変更を回避することは、装置の消費電力の低減にも寄与するものである。すなわち、回転速度を変更する工程においても所定の追加電力を必要とする。よって速度変更の頻度を抑えて速度変更後の継続時間が一定時間以上となるようにすることで、省電力の効果も期待できる。
【００２３】
データ転送速度の閾値Ｒｔｈや継続時間の閾値Ｔｔｈは、管理テーブル１１０に記憶格納する。なお、図２では２段階の回転速度制御を説明したが、これを拡張して３段階以上の複数段階での制御にも適用できることは、言うまでもない。
【００２４】
図３は、本実施例のディスク装置における回転速度制御のフローチャートを示す図である。ここでは図２に示した２段階の回転速度制御だけでなく、３段階以上の複数段階の制御を対象としている。
【００２５】
ディスク装置１０はホスト装置２０からのコマンドにより、所定の回転速度（初期値）でディスクを回転させる（ステップＳ３０１）。そして、ホスト装置２０との間でデータの転送を開始するとともに、ディスクへのリード／ライト動作を開始する（ステップＳ３０２）。データ転送量検出部１０８は、インタフェース部１１２をモニタリングし、単位時間ΔＴ内に受領したコマンドからデータ転送要求量の総量を算出し、平均データ転送要求速度Ｒ（ｂｐｓ）を算出する（ステップＳ３０３）。
【００２６】
次に、この算出した平均データ転送要求速度Ｒが、現在の回転速度Ｖ１における最大転送速度である閾値Ｒｔｈ（ｍａｘ）を超えるか否かを判定する（ステップＳ３０４）。平均データ転送要求速度Ｒが閾値Ｒｔｈ（ｍａｘ）を超えていれば、さらに継続時間計測部１０９の計測した閾値Ｒｔｈ（ｍａｘ）を超える時間が、予め定めた時間Ｔｔｈ以上継続しているか否かを判定する（ステップＳ３０５）。時間Ｔｔｈ以上継続していれば回転速度をＶ１から１段階上のＶ２に上げる（ステップＳ３０６）。時間Ｔｔｈ以上継続していなければ、回転速度の変更はしない。
【００２７】
ステップＳ３０４で、平均データ転送要求速度Ｒが閾値Ｒｔｈ（ｍａｘ）を超えていない場合、現在の回転速度Ｖ１における最小転送速度である閾値Ｒｔｈ（ｍｉｎ）を下回るか否かを判定する（ステップＳ３０７）。閾値Ｒｔｈ（ｍｉｎ）を下回っていれば、さらに閾値Ｒｔｈ（ｍｉｎ）を下回っている時間が予め定めた時間Ｔｔｈ以上継続しているか否かを判定する（ステップＳ３０８）。時間Ｔｔｈ以上継続していれば回転速度をＶ１から１段階下のＶ０に下げる（ステップＳ３０９）。閾値Ｒｔｈ（ｍｉｎ）を下回らなければ、または、下回ってもその時間が時間Ｔｔｈ以上継続していなければ、回転速度の変更はしない。引き続きステップＳ３０３に戻り、平均データ転送要求速度Ｒを算出し、上記の工程を繰り返す。
【００２８】
このような回転速度制御を行うことで、頻繁な速度変更を回避し、騒音を低減するとともにバッテリーの使用効率を向上させ、よりスムーズなリード／ライト動作を実現できる。
【００２９】
なお上記ステップＳ３０５とＳ３０８は、閾値Ｒｔｈを超えている（または下回っている）時間の判定ステップであるが、いずれか一方のステップのみとしてもよい。好ましくは、加速判定用のステップＳ３０５のみとすることで、低速回転を優先させ、騒音をより低減することができる。
【００３０】
図４は、図３のフローチャートに追加可能な、継続時間の閾値設定の一例を示す図である。回転速度変更後（図３のステップＳ３０６、Ｓ３０９）、変更後の回転速度が所定時間Ｔｏ以上継続するかを判定する（ステップＳ４０１）。もし継続する時間が不足していれば、前記回転速度変更の判定（図３のステップＳ３０５、Ｓ３０８）に用いた継続時間の閾値Ｔｔｈを、不足分に相当する時間分だけ増加して設定する（ステップＳ４０２）。ステップＳ４０１の判定の結果、変更後の回転速度が所定時間Ｔｏ以上継続していれば処理を終了する。上記処理により、平均データ転送要求速度の変動により継続時間の予測値と実行時間が異なった場合でも、回転速度が頻繁に変更されるのを防止することができる。
【００３１】
ここで、ステップＳ４０１で参照する所定時間Ｔｏとして、例えば、回転速度変更開始してリード／ライト処理が開始可能となるまでに要する時間を用いてもよい。なお、このリード／ライト処理が開始可能となるまでに要する時間は、予めディスク装置毎に設定しておけばよい。
【００３２】
これによれば、回転速度が安定し、頻繁に回転速度を変更することによる騒音の増加やバッテリー使用効率の低下を防止することができる。
【００３３】
図５は、図３のフローチャートに追加可能な、時間制約のあるコマンドに対する処理の一例を示す図である。平均データ転送要求速度の判定で回転速度を変更すべきとされた場合であっても、時間制約をもつコマンド（例えば、処理時間に制約のある緊急度の高いコマンド）がキューイングされている場合には、回転速度の変更を禁止するものである。
【００３４】
前記図３のステップＳ３０５またはＳ３０８に続き、キューイング中のコマンドがあるかを調べ（ステップＳ５０１）、キューイング中のコマンドがあれば、その中に時間制約をもつコマンドがあるかを調べる（ステップＳ５０２）。時間制約をもつコマンドがあれば回転速度の変更を行わない。あるいは、時間制約をもつコマンドがあって、その制約された時間が、回転速度の変更を開始してリード／ライト処理を開始するまでに要する時間よりも短い場合には、回転速度の変更を行わずに現在の回転速度を継続する。キューイング中のコマンドに時間制約のあるコマンドがなければ、回転速度の変更処理を行う（ステップＳ５０３）。またステップ５０１において、キューイング中のコマンドがなければ、回転速度変更処理を実行する（ステップＳ５０３）。
【００３５】
なお上記ステップＳ５０２において、時間制約のあるコマンドがあって、回転速度変更処理を実行しなかった場合でも、平均データ転送要求速度の判定の結果引き続き回転速度の変更を要求している場合には、再度ステップＳ５０１に戻る。そして、上記の各ステップを繰り返し、時間制約のあるコマンドがキューイングされているかをチェックし、回転速度変更処理の判断を行う。
【００３６】
図５に示す処理により、時間制約のある（緊急度の高い）コマンドがキューイングされている場合には、その処理を優先して実行することができ、このようなコマンドの処理が遅延することを回避できる。
【００３７】
また、ＰＣなどで映像を再生しながらディスク装置にそのデータをコピーするような場合、途中で回転速度を変更することによって映像のこま落ちや音飛びが発生することを防止することができる。
【００３８】
図６は、回転速度変更時のリード／ライト処理の制御フローチャートを示す図である。実行中の処理があるかを判定し（ステップＳ６０１）、実行中の処理があれば、ライト処理かどうかを判定する（ステップＳ６０２）。ライト処理であれば、キュー先頭のデータの書き込み処理を完了させる（ステップＳ６０３）。次に、回転速度を変更する（ステップＳ６０４）。そして変更後の回転速度に伴う回転時間（回転周期）などのパラメータを変更し、回転速度変更前にキューイングされていたコマンドおよび新たにキューイングされたコマンドの並び替え処理を実行する（ステップＳ６０５）。
【００３９】
ステップＳ６０２においてライト処理でなければ、リード処理かどうかを判定する（ステップＳ６０６）。リード処理であれば、実行中のコマンドのデータ転送を完了させる（ステップＳ６０７）。次に、回転速度を変更する（ステップＳ６０８）。
【００４０】
図６では、ライト処理においてのみキューイングを行う場合の例を示した。さらに、リード処理においてもキューイングを行う場合は、リード、ライトコマンドにかかわらずキュー先頭のコマンドを実行した後、回転速度を変更し、コマンドの並び替えを実行する。
【００４１】
図６に示したリード／ライト処理によれば、ディスク装置側の判断で回転速度を変更するとともに、これに伴いコマンド並び替えに必要なパラメータ（回転時間など）を変更し、コマンド並び替えを実行する。従来、回転速度の変更指示とそれに伴うコマンド並べ替えをホスト装置側で実行したのに対し、本実施例では、ディスク装置内の一連の処理で完結するので、よりスムーズなリード／ライト処理を実現できる。
【００４２】
図７は、回転速度変更処理中にコマンドの並び替えを実行するフローチャートを示す図である。回転速度の変更処理を開始すると（ステップＳ７０１）、回転速度の変更に伴う回転時間などのパラメータを変更し、コマンドの並び替え処理を実行する（ステップＳ７０２）。次に、回転速度変更処理が終了したかを調べ（ステップＳ７０３）、終了していれば処理を終了する。回転速度変更処理が終了していなければ、コマンドを受領したかどうかを調べる（ステップＳ７０４）。コマンドを受領した場合は、コマンドのキューイングを行い（ステップＳ７０５）、コマンド応答を返す（ステップＳ７０６）。その後、ステップＳ７０２に戻りコマンドの並び替え処理を繰り返す。ステップＳ７０４において、コマンドを受領していなければステップＳ７０３に戻り、回転速度変更処理が終了するまでコマンド受領のため待機する。
【００４３】
図７に示した処理によれば、回転速度の変更処理とコマンドの並び替え処理を並行して実行する。そして、回転速度の変更処理が終了次第、その時点で最適とされる新たなコマンド順にて処理を再開するので、回転速度変更に伴うコマンド処理の中断・再開をより短時間で効率的に実行することができる。
【００４４】
なお、回転速度変更処理後にコマンドの並び替えを実行する場合は、ステップＳ７０２をステップＳ７０３の後に実行すればよい。また、ステップＳ７０２のコマンドの並び替え処理では、回転待ち時間とシーク時間を加算した時間が最小になるようにコマンドの並び替えを行う。その際、回転速度変更後においては、リード／ライト処理が開始可能となる位置がすぐに決まらないため、最初に実行するコマンドについては、回転速度変更処理中あるいは回転速度変更処理直後のヘッド位置からのシーク距離が最短となるコマンドを選択し、コマンドの並び替え処理を実行するのがよい。
【００４５】
本実施例のディスク装置は、回転起動時や復帰時において、ホスト装置からのリード／ライトコマンドを受領しない場合には、ディスク装置側で予め定めた回転速度に設定することが可能である。例えば、起動・復帰時の回転速度を低速にするか、高速にするかを予めディスク装置側で設定しておき、これに従って初期回転速度を設定すればよい。
【００４６】
また、ディスク装置の処理終了時またはスタンバイ直前の回転速度のログをディスク装置内に記録しておき、起動・復帰時には記録してある回転速度のログを参照し、その回転速度でそれぞれ起動・復帰することも可能である。
【００４７】
本発明のディスク装置は、ディスク装置より構成されるファイルサーバシステム、ディスク装置を内蔵するＰＣや民生用機器に適用可能で、特に可搬型のディスク装置として有用である。
【図面の簡単な説明】
【００４８】
【図１】本発明によるディスク装置の一実施例を示す構成図。
【図２】本実施例における回転速度制御の一具体例を示す図。
【図３】本実施例における回転速度制御のフローチャートを示す図。
【図４】本実施例における継続時間の閾値設定の一例を示す図。
【図５】本実施例における時間制約のあるコマンドに対する処理の一例を示す図。
【図６】本実施例における回転速度変更時のリード／ライト処理の制御フローチャートを示す図。
【図７】本実施例における回転速度変更処理中にコマンドの並び替えを実行するフローチャートを示す図。
【符号の説明】
【００４９】
１０１…ディスク、１０２…ヘッド、１０３…モータ、１０４…ボイスコイルモータ、１０５…モータドライバ、１０６…サーボ制御部、１０７…回転速度制御部、１０８…データ転送量検出部、１０９…継続時間計測部、１１０…管理テーブル、１１１…回転速度変更部、１１２…インタフェース部、２０…ホスト装置、２１…ホストインタフェース。
【図１】
0004763376.tif 000002
【図２】
0004763376.tif 000003
【図３】
0004763376.tif 000004
【図４】
0004763376.tif 000005
【図５】
0004763376.tif 000006
【図６】
0004763376.tif 000007
【図７】
0004763376.tif 000008