(57)【要約】【課題】  待機モード時に内部クロックを停止し消費電力を節減する外部記憶制御装置およびそれに用いるプログラムを提供する。【解決手段】  ホストシステム２からコマンドを受け外部記憶装置１Ａとの間でデータの転送を行う外部記憶制御装置ＨＤＣ１において、ＨＤＣ１に発振器１１からクロックを供給する通電モードのときに、ホストシステム２からＨＤＣ１におけるタスクファイルレジスタへの書込みデータを保存するラッチ部３１と、ＨＤＣ１に発振器１１からクロックを供給しない節電モードのときに、同タスクファイルレジスタへの書込みデータを保存するラッチ部３２と、通電モードのときにはラッチ部３１で保存したデータを、節電モードのときにはラッチ部３２で保存したデータを、タスクファイルレジスタに書込むようタスクファイルレジスタへの書込みデータを切替える切替部ＭＵＸとを備える。【選択図】      図１
2006185352.tif 000002
【特許請求の範囲】
【請求項１】
ホストシステムからコマンドを受け外部記憶装置との間でデータの転送を行う外部記憶制御装置において、
前記外部記憶制御装置に発振器からクロックを供給しない節電モードのときに、前記ホストシステムから該外部記憶制御装置におけるタスクファイルレジスタへのデータの書込みコマンドを検出する検出部と、
前記書込みコマンドに同期して前記データを保存するラッチ部と、
を備えたことを特徴とする外部記憶制御装置。
【請求項２】
ホストシステムからコマンドを受け外部記憶装置との間でデータの転送を行う外部記憶制御装置において、
前記外部記憶制御装置に発振器からクロックを供給する通電モードのときに、前記ホストシステムから該外部記憶制御装置におけるタスクファイルレジスタへの書込みデータを保存する第１ラッチ部と、
前記外部記憶制御装置に発振器からクロックを供給しない節電モードのときに、前記ホストシステムから該外部記憶制御装置におけるタスクファイルレジスタへの書込みデータを保存する第２ラッチ部と、
前記通電モードのときに前記第１ラッチ部で保存したデータを前記タスクファイルレジスタに書込み、前記節電モードのときに前記第２ラッチ部で保存したデータを前記タスクファイルレジスタに書込むよう該タスクファイルレジスタへの書込みデータを切替える切替部と、
を備えたことを特徴とする外部記憶制御装置。
【請求項３】
前記外部記憶制御装置に発振器からクロックを供給しない節電モードから前記外部記憶制御装置に発振器からクロックを供給する通電モードに切替えるクロック動作開始時に、前記節電モード中に保存したデータを前記タスクファイルレジスタに書込む信号を生成する信号生成部を備えた請求項１または２に記載の外部記憶制御装置。
【請求項４】
前記節電モード中に保存したデータは前記信号生成部の出力信号が反転する時に前記タスクファイルレジスタに書込まれる請求項３に記載の外部記憶制御装置。
【請求項５】
ホストシステムからコマンドを受け外部記憶装置との間でデータの転送を行う外部記憶制御装置に用いられるプログラムにおいて、
前記外部記憶制御装置に発振器からクロックを供給する通電モードから該クロックを供給しない節電モードに切替えるパワーダウンビットを設定するステップと、
前記パワーダウンビットが設定されたとき前記外部記憶制御装置への前記発振器からのクロックの供給を停止するステップと、
前記節電モードから前記通電モードに切替わった時、前記パワーダウンビットをリセットし、前記外部記憶制御装置への前記クロックの供給が停止されている間にラッチ部に保存した前記ホストシステムから前記外部記憶制御装置におけるタスクファイルレジスタへの書込みデータを前記タスクファイルレジスタに書込むステップと、
前記節電モードから前記通電モードに切替わった時から、前記外部記憶制御装置に前記発振器からクロックの供給を再開するステップと、
をコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は外部記憶制御装置およびそのためのプログラムに関し、特に、ホストコンピュータ等のホストシステムからＡＴＡコマンドを受信しつつハードディスクコントローラ（ＨＤＣ）の電源消費を節約する外部記憶制御装置およびそのためのプログラムに関する。
【背景技術】
【０００２】
従来から電子装置の消費電力を節減する技術が色々と提案され実施されている。例えばパーソナルコンピュータにおけるＣＭＯＳ回路等の消費電力を軽減する技術が開示されている（特許文献１）。
この特許文献１に記載のパーソナルコンピュータは、キー入力待ちのようなアイドル状態のときに、発振回路に対する起動、停止の指令をシステムから受け、この指令を制御レジスタに書込み、停止指令をシステムから受けたときメモリサイクルに同期してゲート回路で発振信号の供給を停止させ、再び発振信号の供給を開始させるための起動指令をシステムから受け、ゲート回路で発振信号の供給を再開し、所定時間経過後にメモリアクセス等を開始することにより、ＣＭＯＳ回路等の消費電力を軽減するものである。この特許文献１に記載のパーソナルコンピュータは発振回路そのものを停止するものではない。
【０００３】
また、フラッシュメモリ等の不揮発性メモリを備えホストコンピュータとの間でデータ転送する外部記憶装置の消費電力を節減する技術が開示されている（特許文献２）。
この特許文献２に記載の外部記憶装置１は、セクタデータのライトアクセスに対する高速化を低消費電力とともに実現するため、発振装置１８のクロック発振が停止しているときに、ホストコンピュータ２からのデータの書き込み要求をホストインタフェース部１１で受け付け、ホストインタフェース部１１が書き込み要求を受け付けると、セクタバッファ制御部１３は、ホストコンピュータ２のライト信号にしたがって、ホストコンピュータ２から出力されたデータをセクタバッファＡまたはＢに保持させる。一方、ホストインタフェース部１１がデータの書き込み要求を受け付けたときに、クロック発振制御部１７は、発振装置１８にクロックの発振を開始するように指示する。マイクロプロセッサ１２は、発振装置１８におけるクロックが安定した後、セクタバッファＡまたはＢに保持するデータを外部記憶装置の一つであるフラッシュメモリ群１９にデータ転送するよう制御を行うことにより、ホストコンピュータ２がセクタデータのライトコマンドを書き込んだときの高速な応答を、クロック発振が停止している間でも可能とする。
【０００４】
この特許文献２に記載の外部記憶装置１は、ホストコンピュータ２との間でデータ転送するものであり、ホストインタフェース部１１は、発振装置１８のクロック発振が停止しているときにホストコンピュータ２からのデータの書き込み要求を受け付け、ホストインタフェース制御部１１内でクロックパルスを生成し、ホストコンピュータ２のライト信号にしたがってホストコンピュータ２から出力されたデータを生成したクロックパルスの立上りまたは立下りに同期させてセクタバッファＡまたはＢに保持させている。しかしながら、この特許文献２に記載の外部記憶装置１は、発振装置１８のクロック発振が停止しているときに用いられる上記生成したクロックパルスの周波数がハードディスクコントローラ（ＨＤＣ）に要求されるウルトラＤＭＡ（Ultra Direct Memory Access）のような高速データ転送に適用できる程高い周波数でない。ウルトラＤＭＡでは高周波数のクロックが必要であり、クロックパルスの立上りと立下りの両方が必要とされる。次に、高周波数のクロックが必要なウルトラＤＭＡが要求されるＨＤＣについて以下に説明する。
【０００５】
図５は従来技術によるハードディスクコントローラのブロック構成図であり、図６は図５に示すタスクファイルラッチ回路の詳細を示す回路図である。図５に示すように、ハードディスクコントローラ（ＨＤＣ）１０１はホストコンピュータ１０２の不図示のＣＰＵボードに接続されており、ＨＤＣ１０１は外付けの発振器１１１と共にハードディスクドライブ（ＨＤＤ）１０１Ａに内蔵されている。ＨＤＣ１０１にはマイクロプロセッサ（ＭＰＵ）１１０、発振器１１１からクロック信号を受け正確に同期した周波数の信号をクロック生成回路１１３に送るフェーズロックトループ（ＰＬＬ）１１２およびクロック生成回路１１３を有する。クロック生成回路１１３はＰＬＬ１１２の出力を受けＭＰＵ１１０およびインタフェース（Ｉ／Ｆ）制御回路１２０やインタフェース（Ｉ／Ｆ）ブロック、すなわちタスクファイル（Task File）ラッチ１３０にクロックパルスを供給する。
【０００６】
図６において、ＦＦはフリップフロップを示し、ＦＦ−０〜ＦＦ−７は８ビットデータをラッチする８つのＦＦを示す。従来技術では内部クロック、すなわち発振器１１１、ＰＬＬ１１２およびクロック生成回路１１３を介したクロックでＩ／Ｆ制御回路１２０内のタスクファイル（Task File）レジスタにホストコンピュータ１０２から伝送される情報を内部クロックに同期化して保存していた。このため、図６に示すように、内部クロックを停止した状態でホストコンピュータ１０２からＡＴＡコマンド（書込みコマンドＤＩＯＷまたは読出しコマンドＤＩＯＲ等）が発行された場合、コマンド受領に必要なTask Fileレジスタに保存されるホストコンピュータ１０２から送られる８ビットデータ（ＤＤ）がＦＦ−０〜ＦＦ−７に一時保存できなかった。このためコマンドが発行される可能性のある待機（ATA Standby）モードでは内部クロックを停止できず、それゆえこの待機モードではＨＤＣ１０１の電源消費を節約できなかった。なお、ＡＴＡコマンドには、ＤＩＯＷ／ＤＩＯＲおよびＤＤの他にＩ／Ｆ制御回路１２０内の７つのレジスタの何れかを指定するＣＳ０、ＣＳ１およびＤＡ０、ＤＡ１、ＤＡ２も含まれる。
【０００７】
図７は従来技術による待機処理のフローチャートであり、図８は従来技術によるスリープ処理のフローチャートである。図７に示す従来の待機（Standby）処理手順では、I/F制御クロックを停止できなかったため、ＭＰＵクロックを発振器１１１からの出力に切換え、ＰＬＬ１１２を停止し、ウェークアップ（Wakeup）するのを待つ処理となっている。しかし、図８に示す従来のスリープ（Sleep）処理手順では、コマンド情報を保存しておく必要が無いため、I/F制御クロックを停止することが可能であるのでI/F制御クロックを停止し、ＰＬＬ１１２および発振器１１１まで停止している。
【０００８】
図７に示すフローチャートにおいて、ステップ７０１ではＭＰＵ１１０へのクロック信号を発振器１１１に選択する。ステップ７０２ではＰＬＬ１１２を停止する。ステップ７０３では電源を節電モードかウェークアップ（Wakeup）モードか否かを判定し、その判定結果がＹＥＳのときはステップ７０４に進み、その判定結果がＮＯのときはステップ７０３に戻る。ステップ７０４ではＰＬＬ１１２を再開し、待機処理を終了する。
図８に示すフローチャートにおいて、ステップ８０１ではPOWER DOWNビットをセットする。ステップ８０２ではI/F制御クロックを停止する。ステップ８０３ではＭＰＵ１１０へのクロック信号を発振器１１１に選択する。ステップ８０４ではＰＬＬ１１２を停止する。ステップ８０５では発振器１１１を停止する。
【０００９】
ステップ８０６では電源を節電モードにするかウェークアップ（Wakeup）モードにするかを判定し、その判定結果がウェークアップモードのときはステップ８０７に進み、その判定結果が節電モードのときはステップ８０６に戻る。
ステップ８０７では発振器を再開する。
ステップ８０８ではＰＬＬ１１２を再開する。ステップ８０９ではI/F制御クロックおよびＭＰＵ１１０へのクロック信号をＰＬＬ１１２に選択する。ステップ８１０ではPOWER DOWNビットをリセットし、スリープ処理を終了する。
【００１０】
【特許文献１】特開平４−１３４５０９号公報の明細書における第２ページ、左上欄の第１１行〜右上欄の第１５行、および図面における第１図
【特許文献２】特開平１０−２８３７６８号公報の明細書における請求項１、段落［０００３］、［０００８］、［００１１］、［００２０］、［００２５］、［００２７］、［００３７］、および図面における［図１］、［図２］
【発明の開示】
【発明が解決しようとする課題】
【００１１】
従来の構成の場合、内部クロックを停止した状態でATAコマンドが発行された場合コマンド受領に必要な情報が保存することができないため、コマンド発行の可能性があるATA Standbyモード時は内部クロックを停止することができず、このため消費電力が大きくなるという問題がある。
【００１２】
それゆえ、本発明は上記問題を解決するため、Standbyモード時でも内部クロックを停止することができ、それゆえ消費電力を節減できる外部記憶制御装置およびそれに用いるプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１３】
上記目的を達成する本発明による第１形態の外部記憶制御装置は、ホストシステムからコマンドを受け外部記憶装置との間でデータの転送を行う外部記憶制御装置において、前記外部記憶制御装置に発振器からクロックを供給しない節電モードのときに、前記ホストシステムから該外部記憶制御装置におけるタスクファイルレジスタへのデータの書込みコマンドを検出する検出部と、前記書込みコマンドに同期して前記データを保存するラッチ部と、を備えたことを特徴とする。
【００１４】
上記目的を達成する本発明による第２形態の外部記憶制御装置は、ホストシステムからコマンドを受け外部記憶装置との間でデータの転送を行う外部記憶制御装置において、前記外部記憶制御装置に発振器からクロックを供給する通電モードのときに、前記ホストシステムから該外部記憶制御装置におけるタスクファイルレジスタへの書込みデータを保存する第１ラッチ部と、前記外部記憶制御装置に発振器からクロックを供給しない節電モードのときに、前記ホストシステムから該外部記憶制御装置におけるタスクファイルレジスタへの書込みデータを保存する第２ラッチ部と、前記通電モードのときに前記第１ラッチ部で保存したデータを前記タスクファイルレジスタに書込み、前記節電モードのときに前記第２ラッチ部で保存したデータを前記タスクファイルレジスタに書込むよう該タスクファイルレジスタへの書込みデータを切替える切替部と、を備えたことを特徴とする。
【００１５】
上記外部記憶制御装置において、前記外部記憶制御装置に発振器からクロックを供給しない節電モードから前記外部記憶制御装置に発振器からクロックを供給する通電モードに切替えるクロック動作開始時に、前記節電モード中に保存したデータを前記タスクファイルレジスタに書込む信号を生成する信号生成部を備える。
上記外部記憶制御装置において、前記節電モード中に保存したデータは前記信号生成部の出力信号が反転する時に前記タスクファイルレジスタに書込まれる。
【００１６】
上記目的を達成する本発明による外部記憶制御装置に用いられるプログラムは、ホストシステムからコマンドを受け外部記憶装置との間でデータの転送を行う外部記憶制御装置に用いられるプログラムにおいて、前記外部記憶制御装置に発振器からクロックを供給する通電モードから該クロックを供給しない節電モードに切替えるパワーダウンビットを設定するステップと、前記パワーダウンビットが設定されたとき前記外部記憶制御装置への前記発振器からのクロックの供給を停止するステップと、前記節電モードから前記通電モードに切替わった時、前記パワーダウンビットをリセットし、前記外部記憶制御装置への前記クロックの供給が停止されている間にラッチ部に保存した前記ホストシステムから前記外部記憶制御装置におけるタスクファイルレジスタへの書込みデータを前記タスクファイルレジスタに書込むステップと、前記節電モードから前記通電モードに切替わった時から、前記外部記憶制御装置に前記発振器からクロックの供給を再開するステップと、をコンピュータに実行させることを特徴とする。
【発明の効果】
【００１７】
本発明は内部クロック停止中にＡＴＡのコマンドを受信するための外部記憶装置に関する発明であり、クロック動作時と停止時で回路を切り替えどちらの場合でもタスクファイル（Task File）レジスタへの書き込み値を保存することができる。
【００１８】
本発明を適用することによりコマンド発行の可能性があるATA Standbyモード時でも内部クロックを停止することが可能となり、ATA Standbyモードでの消費電力の低減が可能となる。また、クロック動作開始時にクロック停止中に保存したTask Fileレジスタへの書込み情報をファームウェアで用いるTask Fileレジスタにコピーすることによりファームウェアでコマンドを解析する時に参照するレジスタを共通化し、ファームウェア動作の共通化を図ることが可能となる。
【発明を実施するための最良の形態】
【００１９】
以下、添付図面を参照しつつ本発明の実施形態を詳細に説明する。
先に図５を用いて説明したように、従来技術によるハードディスクコントローラ１０１においてはホストコンピュータ１０２からのコマンドはI/Fブロック１３０でI/F制御クロックに同期してラッチし、ラッチした情報をI/F制御回路１２０に渡していた。このため、I/F制御クロックを停止すると、ホストコンピュータ１０２からのコマンドをラッチできなかった。
【００２０】
以下に説明する本発明の実施形態において、ホストコンピュータがパーソナルコンピュータである例を用いて本発明を説明するが、ホストコンピュータはこれに限定されるものではなく、例えばＨＤＤと通信する他のシステムでもよい。
図１は本発明によるハードディスクコントローラのブロック構成図であり、図２は図１に示すタスクファイルラッチ回路の詳細を示す回路図である。図１に示すように、ハードディスクコントローラ（ＨＤＣ）１はホストコンピュータ２の不図示のＣＰＵボードに接続されており、ＨＤＣ１は外付けの発振器１１と共にハードディスクドライブ（ＨＤＤ）１Ａに内蔵されている。ＨＤＣ１にはマイクロプロセッサ（ＭＰＵ）１０、発振器１１からクロック信号を受け正確に同期した周波数の信号をクロック生成回路１３に送るフェーズロックトループ（ＰＬＬ）１２およびクロック生成回路１３を有する。クロック生成回路１３はＰＬＬ１２の出力を受けＭＰＵ１０およびインタフェース（Ｉ／Ｆ）制御回路２０やインタフェース（Ｉ／Ｆ）ブロック３０内のタスクファイル（Task File）ラッチ３１にクロックパルスを供給する。
【００２１】
ハードディスクコントローラＨＤＣ１はハードディスクドライブ（ＨＤＤ）１Ａに内蔵されている。図示しないが、ＨＤＤ１Ａ内のハードディスクは、磁性体を塗布したアルミニウムやガラスのディスクから構成されている。ＨＤＤ１Ａはディスクをモータで高速に回転駆動させ磁気ヘッドを近づけてディスク上のデータを読み書きするものである。
【００２２】
図１に示すように、本発明ではI/F制御回路２０からの出力(Power Down）信号に基づき、インタフェース（Ｉ／Ｆ）ブロック３０内の通常時のタスクファイルラッチ３１でI/F制御クロックに同期してラッチするか、Ｉ／Ｆブロック３０内のSleep時のタスクファイルラッチ３２でホストコンピュータ２からのストローブに同期してラッチするかを図２に示すPOWER DOWN信号により選択可能となっている。また、I/Fブロック３０内の通常時のタスクファイルラッチ３１とSleep時のタスクファイルラッチ３２のデータはコピーが可能で、Power Down信号のクリア時に自動的にSleep時のタスクファイルラッチ３２からI/F制御回路２０内のタスクファイルレジスタにコピーし、ＭＰＵ１０はI/F制御回路２０の同一のタスクファイルレジスタよりコマンド情報を取得することが可能となっている。
【００２３】
ＭＰＵ１０はＨＤＣ１内に設けられたＲＯＭまたはバッテリバックアップＲＡＭに書込まれた下記のプログラムを実行する。すなわち、ホストコンピュータ２からコマンドを受け外部記憶装置との間でデータの転送を行う外部記憶制御装置（ＨＤＣ）１に用いられるプログラムにおいて、プログラムは、外部記憶制御装置１に発振器１１からクロックを供給する通電モードからクロックを供給しない節電モードに切替えるパワーダウンビットを設定するステップと、パワーダウンビットが設定されたとき外部記憶制御装置１への発振器１１からのクロックの供給を停止するステップと、節電モードから通電モードに切替わった時、パワーダウンビットをリセットし、外部記憶制御装置１へのクロックの供給が停止されている間にラッチ回路３２に保存したホストコンピュータ２から外部記憶制御装置１におけるタスクファイルレジスタへの書込みデータをタスクファイルレジスタに書込むステップと、節電モードから通電モードに切替わった時から、外部記憶制御装置１に発振器１１からクロックの供給を再開するステップと、をＭＰＵ１０に実行させる。
【００２４】
図２において、ＦＦはフリップフロップを示し、ＦＦ−０〜ＦＦ−７は８ビットデータをラッチする８つのＦＦを示す。図２に示す二つのTask Fileラッチ回路(ＤＩＯＷ／ＤＩＯＲ−同期)３２が本発明で追加した回路で、Ｉ／Ｆ制御（内部）クロックを動かしている場合は従来のTask Fileラッチ回路３１を使用し、内部クロックを停止する場合はパワーダウン（POWER DOWN）信号によりTask Fileラッチ回路３２に乗り換えることにより内部クロックを動かしている場合と停止している場合のどちらの場合でもTask Fileレジスタの情報を保存することが可能となり、内部クロックを停止した状態でもコマンドの受領が可能となる。また、Power Down信号をクリアする時のエッジを利用し、マルチプレクサ（ＭＵＸ）の選択により、クロック停止中に保存したTask Fileレジスタの情報をファームウェア（ＦＷ）用Task Fileレジスタに書込む。
【００２５】
図３は図１に示すＩ／Ｆ制御回路の詳細を示す回路図である。図３に示すように、Ｉ／Ｆ制御回路２０内にはタスクファイルラッチ３０およびＭＰＵ１０間を接続するバスラインを介して接続されるハードディスクの読み書きに必要な７つのレジスタが設けられている。これらのレジスタにタスクファイルラッチ３０から送られたＡＴＡコマンドデータが格納され、ＭＰＵ１０に送られる。７つのレジスタは、総称してタスクファイルレジスタと呼ばれ、コマンドレジスタ２１、デバイスヘッドレジスタ２２、シリンダハイレジスタ２３、シリンダローレジスタ２４、セクタカウントレジスタ２５、セクタナンバーレジスタ２６およびフィーチャレジスタ２７とがある。コマンドレジスタ２１はＡＴＡコマンドの読み書きデータを格納し、デバイスヘッドレジスタ２２はデバイスとヘッドの情報を格納し、シリンダハイレジスタ２３とシリンダローレジスタ２４は、シリンダの位置情報を格納し、セクタカウントレジスタ２５セクタの位置から何セクタ分読み書きするかの情報を格納し、セクタナンバーレジスタ２６はセクタの位置情報を格納し、フィーチャレジスタ２７はコマンドの種類の情報を格納する。
【００２６】
ＭＰＵ１０はコマンドレジスタ２１に格納された情報を読込み、このコマンドに応じて他のレジスタ２２〜２７の情報を用いてハードディスクへの読み書きを実行する。また、Ｉ／Ｆ制御回路２０内にはＭＰＵ１０からタスクファイルラッチ３０に送られるパワーダウン（POWER DOWN）信号を保持するパワーダウン（POWER DOWN）ラッチ２８が設けられている。パワーダウンラッチ２８のビットが、例えば０のとき通電モードであり発振器１１からのクロックをＨＤＣ１に供給し、このビットが１のとき節電モードであり、発振器１１からのクロックをＨＤＣ１に供給しない。
【００２７】
図４は本発明による待機処理のフローチャートである。図４に示す本発明のパワーダウンはするがホストコンピュータ２からのコマンドは受付ける待機（Standby）処理手順では、Standby中にもI/F制御クロックを停止することが可能となったため、従来のパワーダウンをしホストコンピュータ２からのコマンドは受付けないSleep処理手順と同じ手順で、I/F制御クロックを停止することが可能となり、従来のSleep並みの消費電力を達成することが可能となっている。なお、本発明のStandby処理は従来のStandby処理とSleep処理を兼ねている。Standby処理を実行する節電モードかStandby処理を実行しない通電モードかはホストコンピュータ２からのコマンドをＭＰＵ１０が受けて判断し、このコマンドがStandby処理の指令のとき、下記のフローチャートの処理を実行する。
【００２８】
図４に示すフローチャートにおいて、ステップ４０１ではPOWER DOWNビットをセットする。ステップ４０２ではI/F制御クロックを停止する。ステップ４０３ではＭＰＵ１０へのクロック信号を発振器１１に選択する。ステップ４０４ではＰＬＬ１２を停止する。ステップ４０５では発振器１１を停止する。ステップ４０４および４０５の処理は、節電モードである待機処理中にはＭＰＵ１０が発振器１１からの高周波数のクロック信号を必要としないからであり、この間にはＭＰＵ１０には発振器１１からのクロック周波数より相当低い周波数のクロック信号を供給する。
【００２９】
ステップ４０６では電源を節電モードにするかウェークアップ（Wakeup）モードにするかを判定し、その判定結果がウェークアップモードのときはステップ４０７に進み、その判定結果が節電モードのときはステップ４０６に戻る。ステップ４０７では発振器を再開する。
ステップ４０８ではＰＬＬ１２を再開する。ステップ４０９ではI/F制御クロックおよびＭＰＵ１０へのクロック信号をＰＬＬ１２に選択する。ステップ４１０ではPOWER DOWNビットをリセットし、待機処理を終了する。
【００３０】
本発明の図４に示すフローチャートは、従来の図８に示すフローチャートと略同じであり、ステップ４０６（ステップ８０６）でウェークアップする条件が、本発明ではホストコンピュータ２からのコマンドおよびリセット信号のときであり、従来ではリセット信号のときである点が異なるのみである。
以上説明した本発明の実施形態では、デジタル回路単独を適用する例を示したが、これに代えてファームウェアを含むデジタル回路を適用してもよい。また、外部記憶装置としてハードディスクを例に挙げて説明したが、他のＣＤ−Ｒ、ＤＶＤ−ＲＷまたはＭＯ等の外部記憶装置でもよい。
【図面の簡単な説明】
【００３１】
【図１】本発明によるハードディスクコントローラのブロック構成図である。
【図２】図１に示すタスクファイルラッチ回路の詳細を示す回路図である。
【図３】図１に示すＩ／Ｆ制御回路の詳細を示す回路図である。
【図４】本発明による待機処理のフローチャートである。
【図５】従来技術によるハードディスクコントローラのブロック構成図である。
【図６】図５に示すタスクファイルラッチ回路の詳細を示す回路図である。
【図７】従来技術による待機処理のフローチャートである。
【図８】従来技術によるスリープ処理のフローチャートである。
【符号の説明】
【００３２】
１    ハードディスクコントローラ（ＨＤＣ）
１Ａ    ハードディスクドライブ（ＨＤＤ）
２    ホストコンピュータ
１０    ＭＰＵ
１１    発振器
１２    ＰＬＬ
１３    クロック生成回路
２０    Ｉ／Ｆ制御回路
３０    Ｉ／Ｆブロック
３１    通常時タスクファイルラッチ
３２    スリープ時タスクファイルラッチ
ＦＦ    フリップフロップ
ＭＵＸ    マルチプレクサ
【図１】
2006185352.tif 000003
【図２】
2006185352.tif 000004
【図３】
2006185352.tif 000005
【図４】
2006185352.tif 000006
【図５】
2006185352.tif 000007
【図６】
2006185352.tif 000008
【図７】
2006185352.tif 000009
【図８】
2006185352.tif 000010