(57)【特許請求の範囲】
【請求項１】
周辺機器の中断制御回路によって実行される方法であって、
前記周辺機器に接続されたバス上のホスト・デバイスからのデータ・アクティビティに基づいて、アクティビティ信号を生成するステップと、
そのアクティビティ信号に基づいて、前記バス上でのアクティビティのないことが所定時間経過したことに応じて、前記周辺機器内のマイクロコントローラから中断信号を受け取るステップと、
その中断信号に基づいて、中断モードに入るための中断動作を開始するステップであって、その中断動作が
中断動作の間、再開動作が開始されるのを防ぐために再開信号を阻止し、
状態情報を格納し、
中断動作を開始した後に、前記周辺機器内のクロックを第１の所定の期間の後にディスエーブルにし、
該クロックをディスエーブルした後に、前記周辺機器内の発振器を第２の所定の期間の後にディスエーブルにする
ことを含む方法。
【請求項２】
前記アクティビティ信号に基づいて、前記中断モードから再開動作を開始するステップをさらに含み、その再開動作が、
前記発振器をイネーブルにし、
該発振器をイネーブルにした後に、第３の所定期間の後に前記クロックをイネーブルにし、
前記格納済みの状態情報で装置を更新する
ことを含む請求項１記載の方法。
【請求項３】
前記第３の所定期間が、信号をクロックと独立した時間基準回路に送ることによって測定される請求項２記載の方法。
【請求項４】
前記クロックと独立した時間基準回路が時定数を有する抵抗−容量ネットワークを含む請求項２記載の方法。
【請求項５】
周辺機器の中断制御回路であって、該中断制御回路が、
ホスト・デバイスからのデータ・アクティビティの検出のために、周辺機器に接続されたバスを監視して、データ・アクティビティを検出したときにアクティビティ信号を発するバス監視回路と、
そのアクティビティ信号により、所定期間アクティビティでないことが指示された場合に、前記周辺機器のマイクロコントローラから中断信号を受け取り、その中断信号に基づいて中断モードに入るための中断動作を開始する中断検出回路と、
中断動作の間、再開動作を防ぐためにアクティビティ信号を阻止する再開イネーブル回路と、
中断動作の開始に応じて、周辺機器が状態情報を格納するために第１遅延を提供する時間基準回路と、
中断動作の開始に応じて、前記第１遅延の後、周辺機器のクロックをディスエーブルさせるクロックイネーブル回路と、
中断動作の開始に応じて、前記クロックがディスエーブルされた後、周辺機器の発振器をディスエーブルにする発振イネーブル回路と
を有する周辺機器の中断制御回路。
【請求項６】
前記バス監視回路が中断モード中バス上のアクティビティを検出した後に、前記マイクロコントローラへの割り込み信号を生成する割り込み回路をさらに備え、この割り込み信号は前記マイクロコントローラが前記周辺装置を動作のために構成するよう指令するものである請求項５記載の周辺機器の中断制御回路。
【請求項７】
前記発振イネーブル回路は、前記アクティビティ信号の受信に応答して前記発振器をイネーブルにし、
前記時間基準回路は、前記再開動作の開始に応じて、前記発振器が安定状態となるまで、第２遅延を提供し、
前記再開動作の開始に応じて、前記第２の遅延後に、該クロックをイネーブルにすること
を含む請求項５記載の周辺機器の中断制御回路。
【請求項８】
前記時間基準回路は、前記発振器に関して時間的に独立に動作する抵抗−容量ネットワークを有する請求項５記載の周辺機器の中断制御回路。
【請求項９】
前記バス監視回路、前記中断検出回路、前記再開イネーブル回路、前記時間基準回路、前記発振イネーブル回路及び前記クロック・イネーブル回路がすべて同一のシリコン基板に存在している請求項５記載の周辺機器の中断制御回路。
【発明の詳細な説明】
発明の分野
本発明は、電子デバイスの電力管理分野に関する。詳しくは、本発明はコンピュータ・システム内でバスから電力を受ける電子デバイスに低電力動作モードを与える装置と方法に関する。
発明の背景
ユニバーサル・シリアル・バス（ＵＳＢ）はＵＳＢデバイスをＵＳＢホストに接続する。ホストはコントローラを含み、システム内の各ＵＳＢデバイスの動作を管理する。各ＵＳＢシステム上には１つのホストがある。ＵＳＢの物理的な内部接続は、層状星形トポロジ（ｔｉｅｒｅｄ  ｓｔａｒ  ｔｏｐｏｌｏｇｙ）である。各星形の中央には１つのハブがある。各ワイヤ・セグメントはホストとハブ、ＵＳＢデバイス、別のハブあるいはＵＳＢデバイスに接続されているハブとの間でポイント・ツー・ポイント接続になっている。第１図にはＵＳＢのトポロジを示す。
ＵＳＢは４ワイヤ・ケーブルで信号と電力を送信する。２本のワイヤは、ポイント・ツー・ポイント・セグメントからの信号を搬送するためのものである。電圧線とアース線は、ＵＳＢケーブルの中でＵＳＢデバイスに電力を送るためのものである。電圧線、すなわちＶバスはソースでは公称５ボルトである。各ＵＳＢセグメントがケーブルで供給する電力量は制限されている。ホストは直接接続されているＵＳＢデバイスが使用する電力を供給する。ＵＳＢホストは、ＵＳＢからは独立した電力管理システムを有する。ＵＳＢシステム・ソフトウェアはホストの電力管理システムと相互作用し、ＵＳＢシステム内で電力の節約を助ける中断モードや再開モードなどの、システムの電力事象を扱う。
中断モードは電力節約状態で、ＵＳＢデバイスがたとえば３．０ミリ秒などの所定の時間以上バス・ライン上でアイドル状態が続いていると検出した時にＵＳＢデバイスが入る状態である。再開モードは、中断状態にあるＵＳＢデバイスを再開するためにホストまたはデバイスによって使用される。中断モード動作と再開モード動作をサポートするＵＳＢデバイスは、多くの要件を満たす必要がある。第１にＵＳＢデバイスは、中断状態で動作している時には現在は５００マイクロアンペアとなっている所定の電流より少ない電流を導き出す必要がある。この電力の制限を満たす方法の１つは、中断状態のＵＳＢデバイス上でクロックと発振器の電力を落とすことである。第２に、ＵＳＢデバイス上でクロックと発振器の電力を落とす前に、十分な時間をＵＳＢデバイスに割り当て、現在のＵＳＢデバイス状態情報をメモリに格納する必要がある。これによって、ＵＳＢデバイスが中断状態を終了した時に同じ状態に戻ることができる。第３に、ＵＳＢデバイスが再開信号で起動した時、発振器に十分な時間を与え、クロックは発振器が安定してから発振器から公称周波数を導き出すようにする必要がある。これによって、クロックが不安定な周波数でクロック・パルスを生成するのが防げる。第４に、十分な時間をＵＳＢデバイスに割り当て、格納されたＵＳＢデバイス状態情報をレジスタに書き込んでから再開状態を終了し、通常の動作を始める必要がある。
従って、コンピュータ・システム内のバスから電力を受け取るデバイス内での電力節約モードをサポートする方法と装置が必要とされている。
発明の概要
本発明の１態様によれば、デバイス内で電力を管理する装置が記述される。装置はクロック・イネーブル回路を備え、第１の信号を受信すると発振器から出力された生の周波数から取り出された公称クロック周波数を生成するクロックをディスエーブルにする。時間的に独立した時間基準回路はクロック・イネーブル回路に接続され、第２の信号を受信すると所定の期間後にクロック・イネーブル回路に第１の信号を送り、中断状態に入る。
本発明の別の態様によれば、発振器と、発振器から公称周波数を導き出すクロックと共に動作するデバイス内で電力を管理する装置が記述される。この装置はバス上のアクティビティを監視するバス監視回路を備える。バス監視回路は、アクティビティを検出するとアクティビティ信号をデバイスのマイクロコントローラに送信する。発信器イネーブル回路はバス監視回路と結合している。発信器イネーブル回路は、再開信号を受信すると発振器を起動する。時間基準回路は、再開信号を受信すると所定の期間後にクロック・イネーブル信号を生成する。時間基準回路は発振器とクロックに関して時間的に独立して動作する。クロック・イネーブル回路は時間基準回路と結合している。クロック・イネーブル回路がクロックをイネーブルにする。クロック・イネーブル回路は第１の信号を受信するとクロックをディスエーブルにする。
本発明のさらなる側面によれば、バスから電力を受けて電子デバイスが電力節約モードを終了し、発振器を動作させその発信器からの導き出される公称周波数で電子デバイスを動作させる方法が記述されている。この方法によれば、アクティビティを再開する信号が受信される。発振器がイネーブルになる。発振器がイネーブルになってから第１の所定の時間が測定される。その測定は発振器あるいはクロックに対して時間的に独立して実行される。クロックは第１の所定の時間後にイネーブルになる。
【図面の簡単な説明】
本発明は添付の図面の図で例示されるが、これに限定されるものではない。この図の中で同じ参照番号は同じ要素を示す。
第１図は、ユニバーサル・シリアル・バスのトポロジを表す図である。
第２図は、本発明の一実施形態を実行するコンピュータ・システムのブロック図である。
第３図は、本発明を実装したユニバーサル・シリアル・バス・デバイスの実施形態のブロック図である。
第４図は、本発明の一実施形態による中断制御回路の実施形態のブロック図である。
第５図は、本発明に使用されるＲ−Ｃネットワークの一実施形態である。
第６図は、時間の経過に応じて発振器が生成した周波数と、発振器周波数から導き出されたクロック・パルスを示す図である。
第７図は、中断制御回路内の信号を示すタイミング図である。
第８図は、バスから電力を受け取る電子デバイス内の電力節約モードをサポートする方法を示すフロー・チャートである。
詳細な説明
第２図では、本発明の実施形態が実装されたコンピュータ・システムの一例が２００として示されている。コンピュータ・システム２００は、ディジタル・データを処理するプロセッサ２０１を備える。プロセッサ２０１は、複雑命令セット・コンピューティング（ＣＩＳＣ）マイクロプロセッサ、縮小命令セット・コンピューティング（ＲＩＳＣ）マイクロプロセッサ、超長命令ワード（ＶＬＩＷ）マイクロプロセッサ、命令セットの組み合わせを実行するプロセッサ、あるいはそのほかのプロセッサ・デバイスのどれでもよい。プロセッサ２０１は、ＣＰＵバス２１０と結合され、ＣＰＵバス２１０はプロセッサ２０１とコンピュータ・システム２００内の別の構成要素との間で信号を伝送する。
例示の実施形態では、メモリ２１３はダイナミック・ランダム・アクセス・メモリ（ＤＲＡＭ）デバイス、静的ランダム・アクセス・メモリ（ＳＲＡＭ）デバイス、あるいはほかのメモリ・デバイスを備える。メモリ２１３はプロセッサ２０１による実行の間、情報などの中間データを格納する。ブリッジ・メモリ・コントローラ２１１は、ＣＰＵバス２１０とメモリ２１３に結合されている。ブリッジ・メモリ・コントローラ２１１は、プロセッサ２０１、メモリ２１３、およびコンピュータ・システム２００内のほかの構成要素の間のデータのトラフィックを管理し、これらの構成要素から高速Ｉ／Ｏバス２２０へ信号を橋渡しする。
例示の実施形態で、高速Ｉ／Ｏバス２２０は高速データ・スループット・レートで動作する周辺機器をサポートする。バス２２０は単一バスでもよく、複数バスの組み合わせでもよい。たとえば、バス２２０は周辺構成要素相互接続（ＰＣＩ）バス、パーソナル・コンピュータ・メモリ・カード・インターナショナル・アソシエーション（ＰＣＭＣＩＡ）バス、あるいはほかのバスでもよい。バス２２０は、コンピュータ・システム２００内の混成要素の間での通信リンクとなっている。ネットワーク・コントローラ２２１はコンピュータのネットワークをリンクし、マシン間で通信を行う。表示デバイス・コントローラ２２２は、高速Ｉ／Ｏバス２２０に結合されている。表示デバイス・コントローラ２２２は、表示デバイスとコンピュータ・システムの結合を可能にし、表示デバイスとコンピュータ・システム２００の間のインタフェースとしての役割を果たす。表示デバイスは、表示デバイス・コントローラ２２２を通じてプロセッサ２０１から情報とデータを受け取り、その情報とデータをコンピュータ・システム２００のユーザに表示する。
例示の実施形態で、バス・ブリッジ２２３は高速Ｉ／Ｏバス２２０をＩ／Ｏバス２３０とＩ／Ｏバス２４０へ結合する。バス・ブリッジ２２３はトランスレータを備え、高速Ｉ／Ｏバス２２０とＩ／Ｏバス２３０、Ｉ／Ｏバス２４０の間の信号を橋渡しする。
Ｉ／Ｏバス２３０は、低いスループット・レートで動作する周辺機器の間で情報を通信するために使われる。Ｉ／Ｏバス２３０は、単一のバスでも複数バスの組み合わせでもよい。たとえば、バス２３０は業界標準アーキテクチャ（ＩＳＡ）バス、拡張業界標準アーキテクチャ（ＥＩＳＡ）バス、あるいはマイクロ・チャネル・アーキテクチャ（ＭＣＡ）バスのどれでもよい。バス２３０は、コンピュータ・システム２００内の構成要素の間の通信リンクである。データ保存デバイス２３１はハード・ディスク・ドライブ、フロッピ・ディスク・ドライブ、ＣＤ−ＲＯＭデバイス、フラッシュ・メモリ・デバイス、あるいはほかの大量保存デバイスのどれでもよい。
Ｉ／Ｏバス２４０は、Ｉ／Ｏバス２４０に結合されたデバイスに電力を供給する能力を有するバスである。Ｉ／Ｏバス２４０は、単一のバスでも、複数のバスの組み合わせでもよい。コンピュータシステム２００の一実施形態では、Ｉ／Ｏバス２４０はＵＳＢであり、バス・ブリッジ２２３はＵＳＢ２４０へのホスト・コントローラとして動作する。バス２４０は、コンピュータ・システム内の構成要素の間での通信リンクである。構成要素２４１は、バス２４０に結合されたＵＳＢデバイスである。ＵＳＢデバイス２４１はたとえば、ビデオ・カメラ、音声スピーカ、キーボード・コントローラ、音声コントローラなどのデバイスでもよい。中断制御回路２４２はＵＳＢデバイス２４１内部に常駐し、ＵＳＢデバイス２４１の電力保存モードをサポートするように動作する。中断制御回路２４２は、ＵＳＢ以外のバスから電力を受け取る、ＵＳＢデバイス以外のデバイスでも実行できる。
第３図は、本発明を実施するＵＳＢデバイス２４１の一実施形態を示すブロック図である。ＵＳＢデバイス２４１はマイクロコントローラ回路３０１を含み、マイクロコントローラ回路３０１は情報を処理し、ＵＳＢデバイス２４１の機能をサポートするように動作する。マイクロコントローラ回路３０１に中断制御回路２４２が結合されている。中断制御回路２４２はＵＳＢデバイス２４１内で低電力動作モードをサポートするように動作する。中断制御回路２４２に発振器ユニット３０２が結合されている。発振器ユニット３０２は生の周波数のクロックをＵＳＢデバイス２４１に与えるように動作する。発振器ユニット３０２は、波形を生成する発振器と発振器波形からクロック・パルスを導き出すセルを含む。生の周波数とは、発振器ユニット３０２が直接生成した周波数である。公称周波数あるいは副周波数が、中断制御回路２４２内のクロックによって生の周波数から導き出される。
中断制御回路２４２はＵＳＢ２４０のアイドルでない状態を検出することによって、ＵＳＢ２４０のアクティビティを監視する。中断制御回路２４２は、ＵＳＢ２４０のアクティビティを検出すると、マイクロコントローラ回路３０１にアクティビティ信号を送る。マイクロコントローラ３０１は時間ウィンドウを決め、その中で中断制御回路２４２からのアクティビティ信号を待つ。マイクロコントローラ３０１が時間ウィンドウの中でアクティビティ信号を受信しないと、マイクロコントローラ３０１は中断信号を中断制御回路２４２に送り、ＵＳＢデバイス２４１を中断状態にするように指示する。中断状態で動作している時、ＵＳＢデバイス２４１は中断制御回路２４２内のクロックとＵＳＢデバイス２４１内の発振器ユニット３０２をディスエーブルにして電力の消費を減らす。中断制御回路２４２内のクロックと発振器ユニット３０２がディスエーブルになると、ＵＳＢデバイス２４１は静的状態になり、電流の消費はＵＳＢデバイス２４１内の構成要素からのリークだけになる。
中断制御回路２４２は、ＵＳＢデバイス状態情報を格納してから回路自体のクロックと発振器ユニット３０２をディスエーブルにするように動作を延ばす。マイクロコントローラ３０１から中断信号を受信すると、中断制御回路２４２は中断制御回路２４２内に常駐する時間基準回路を起動する。所定の時間後、時間基準回路は中断制御回路２４２に信号を送り、クロックと外部の発振器ユニット３０２をディスエーブルにする。時間基準回路はマイクロコントローラ３０１に十分な時間を与え、ＵＳＢデバイス２４１の状態情報をメモリの中に格納してからクロックと発振器ユニット３０２をディスエーブルにするように構成されている。時間基準回路は、ＵＳＢデバイス２４１内のクロックと発振器ユニット３０２とは時間的に独立している。マイクロコントローラ３０１がＵＳＢデバイス状態情報をメモリ内に格納すると、中断制御回路２４２は中断制御回路２４２内に常駐するクロックをディスエーブルにする。中断制御回路２４２内に常駐するクロックがディスエーブルになると、中断制御回路２４２は発振器ユニット３０２をディスエーブルにする。
中断制御回路２４２はデバイス２４１が中断モードの間、ＵＳＢ２４０を監視し続ける。ＵＳＢ２４０上でアクティビティが検出されると、中断制御回路２４２は再開状態に入る。再開状態に入ると、中断制御回路２４２は発振器ユニット３０２をイネーブルにする。中断制御回路２４２は発振器ユニット３０２に十分な時間を与え、発振器ユニットが安定してから中断制御回路２４２内のクロックをイネーブルにする。この時間は、中断制御回路２４２内に常駐している時間基準回路によって測定される。時間基準回路はＵＳＢデバイス２４１内のクロックと発振器ユニット３０２とは時間的に独立しており、安定するための時間を必要としないので、信頼できるタイミング基準を提供する。発振器ユニット３０２とクロックの両方がイネーブルになると、中断制御回路２４２はマイクロコントローラ３０１に割り込み信号を送り、マイクロコントローラ３０１に再開モードが開始し、メモリ内に格納されたＵＳＢ状態情報でマイクロコントローラ３０１内のレジスタを更新するように指示する。レジスタが更新されると、中断制御回路２４２は第２の割り込み信号をマイクロコントローラ３０１に送り、再開モードが終了したので通常のアクティビティを開始するように指示する。マイクロコントローラ３０１、中断制御回路２４２、発振器ユニット３０２は既知の任意の回路によって実行することが可能である。
第４図は本発明の一実施形態による、中断制御回路２４２の実施形態を示すブロック図である。中断制御回路２４２はバス監視回路４０５を含む。バス監視回路４０５はＵＳＢ２４０上にバス信号を検出することによってＵＳＢ２４０のアクティビティを監視するように動作する。バス監視回路４０５はＵＳＢ２４０上でアクティビティを検出すると、アクティビティ信号かアクティビティ・ビットを生成する。アクティビティ信号はマイクロコントローラに送られ、マイクロコントローラはこの信号を使用してＵＳＢデバイス２４１を中断状態にするかどうかを決定する。ＵＳＢデバイス２４１は中断状態の場合、例示された実施形態では所定の５００マイクロアンペアより少ない量の電流をＵＳＢから導き出す。この電力消費の削減は、中断制御回路２４２のクロック（例示された実施形態では、クロック・イネーブル回路４３０の中に配置されている）とＵＳＢデバイス内の発振器ユニット３０２をディスエーブルにすることによって達成される。アクティビティ信号は発信器イネーブル回路４２５にも送られ、発信器イネーブル回路４２５は信号を時間基準回路４２０に渡す。
中断制御回路２４２はさらに、中断アサート／デアサート検出回路（ＳＡＤＤＣ）４１０を含む。ＳＡＤＤＣ４１０はマイクロコントローラ３０１に結合され、マイクロコントローラ３０１がＵＳＢデバイス２４１が中断状態に入るべきであると決定した時に、マイクロコントローラ３０１から中断信号を受信する。ＳＡＤＤＣ４１０は最初に信号を再開イネーブル回路４１５に送り、バスのアクティビティが早く中断プロセスを中止しないように阻止する。再開イネーブル回路４１５は信号を発信器イネーブル回路４２５に送り、ＵＳＢデバイス２４１が中断状態に入るように指示する。発信器イネーブル回路４２５はそれから信号を時間基準回路４２０に送る。
時間基準回路４２０はＵＳＢデバイス２４１が中断状態に入ることを示す信号を発信器イネーブル回路４１０から受け、遅延してからクロック・イネーブル回路４３０内のクロックをディスエーブルにする。この遅延があるため、マイクロコントローラ３０１はＵＳＢデバイス状態情報をローカル・メモリに格納してから、マイクロコントローラ３０１が中断モードに入ることができる。本発明の一実施形態では、時間基準回路４２０は、ＵＳＢデバイス２４１上のクロックと発振器ユニット３０２とは時間的に独立して動作する抵抗−容量（Ｒ−Ｃ）ネットワークを使用した遅延回路を備える。Ｒ−Ｃネットワーク内の抵抗器とコンデンサは十分な遅延を与え、マイクロコントローラがＵＳＢデバイス状態情報をメモリ内に格納できるように構成されている。必要な遅延の量は適用例によって異なり、実験によって決定される。
第５図は本発明で使用されるＲ−Ｃネットワーク５００の一実施形態を示す。ダイオード５１０はＵＳＢデバイスの供給電圧に結合されている。Ｒ−Ｃネットワーク５００に電力が供給されていないと、Ｖｃｃとアースは同じ電位で、コンデンサ５２０はダイオード５１０を通じて放電することができる。ｒｃ＿ｏｕｔ信号を使用してＲ−Ｃネットワーク内のコンデンサ５２０に電圧を提供し、充電する。ｒｃ＿ｉｎ信号は監視され、回路が充電されたかどうかを決定する。Ｒ−Ｃネットワークを充電するための時間は、抵抗器構成要素とコンデンサ構成要素に使われる値によって異なり、上記のように、適用例によって異なり、実験によって決定される。Ｒ−Ｃネットワークは充電されている時間と放電されている時間の両方を測定するために使われる。遅延の後、時間基準回路４２０は信号をクロック・イネーブル回路４３０に送り、マイクロコントローラがＵＳＢデバイス状態情報をメモリ内に格納したことを示す。
第４図に戻ると、クロック・イネーブル回路４３０は、中断制御論理の外部にある発振器ユニット３０２から公称周波数あるいは副周波数を導き出すクロックを含む。クロック・イネーブル回路４３０は、マイクロコントローラがＵＳＢデバイス状態情報の格納を終えたことを示す信号を時間基準回路４２０から受け取ると、クロックをディスエーブルにする。発振器ユニットを基準として使って測定された所定の時間の後、クロック・イネーブル回路４３０は発信器イネーブル回路４２５に信号を送り、発振器ユニット３０２をディスエーブルにする。クロック・イネーブル回路４３０の中のクロックがディスエーブルになってから、発振器ユニット３０２がディスエーブルになる。最初にクロックをディスエーブルにすることによって、クロックが発振器ユニット３０２の不安定な出力から不安定なクロック信号を導き出すことが防げる。不安定なクロック信号は、マイクロコントローラがディスエーブルな状態になる原因になる。本発明の一実施形態では、所定の時間は発振器ユニット３０２によって生成された生の周波数によって測定され、発振器ユニット３０２によって所定された１つの期間である。
中断状態の間、バス監視回路４０５はＵＳＢ２４０上のアクティビティを監視し続ける。ＵＳＢ２４０上でアクティビティを検出すると、バス監視回路４０５は再開信号を発振器イネーブル回路４２５に送り、次に発振器イネーブル回路４２５は信号を時間基準回路４２０に送る。発振器イネーブル回路４２５は、バス監視回路４０５から再開信号を受信すると、発振器ユニット３０２をイネーブルにする。時間基準回路４２０は所定の遅延を経てから信号をクロック・イネーブル回路４３０に送り、クロック・イネーブル回路４３０はバス監視回路４０５から再開信号を受信するとクロックをイネーブルにする。所定の遅延によって発振器ユニットが安定してから、クロック・イネーブル回路４３０内のクロックは発振器ユニット３０２から出力された生の周波数から公称周波数あるいは副周波数を導き出す。
第６図は、一定の時間にわたって発振器ユニット３０２の発振器から出力される生のクロック周波数の例を示す図である。波形６１０は発振器が生成する出力である。発振器が時間０から時間ｔの間に生成する波は、強さが変動する振幅を有する。時間ｔの後、発振器は安定し、変動しない振幅を有する波を生成する。パルス形６２０は、発振器の波出力から生の周波数を導き出す発振器ユニット３０２のセルの出力である。時間０から時間ｔの間、発振器が生成する不安定な振幅の波は、時間０から時間ｔの間にセルが不安定な周波数を有する不完全な生の周波数を生成する原因になる。時間ｔの後、変動しない振幅を有する波から生成される生の周波数は、安定した周波数を有する。
第４図に戻ると、前に記述したように、クロック・イネーブル回路４３０内のクロックは、発振器ユニット３０２が安定してからイネーブルになる。時間基準回路４２０は発振器ユニット３０２がイネーブルになってから所定時間遅延し、発振器ユニット３０２が安定してからクロック・イネーブル回路４３０内のクロックをイネーブルにする。本発明の一実施形態では、時間基準回路４２０は上記と同じＲ−Ｃネットワークを使用して、遅延させる。本発明の別の実施形態では、構成は異なるが、クロックや発振器ユニット３０２に関して時間的に独立して動作する異なるＲ−Ｃネットワークが使用されている。Ｒ−Ｃネットワーク内の抵抗器とコンデンサは適切な遅延を与え、発振器ユニット３０２が安定してからクロックをイネーブルにし、発振器ユニット３０２が出力する生の周波数から公称周波数や副周波数を導き出すように構成されている。同様に、必要な遅延の量は用途によって異なり、経験的に決定される。
第３図が示すように、割り込み回路４３５はクロック・イネーブル回路４３０とマイクロコントローラに結合されている。クロック・イネーブル回路４３０内のクロックがイネーブルになると、クロック・イネーブル回路４３０は再開開始信号を割り込み回路４３５に送る。割り込み回路４３５は再開開始信号に応じて、第１の割り込みをマイクロコントローラ３０１に送る。第１の割り込みはマイクロコントローラ３０１に対し、再開状態が開始し、中断モードの間にメモリに格納されたＵＳＢデバイス状態情報をマイクロコントローラ３０１内のレジスタに書き戻す必要があることを示す。ＵＳＢデバイス２４１状態情報がマイクロコントローラ３０１のレジスタに再び格納されると、割り込み回路４３５は第２の割り込み信号をマイクロコントローラ３０１に送り、再開状態が終わり、ＵＳＢデバイス２４１は通常の動作状態に戻ることを示す。ＵＳＢは両方の回線が一定の時間低く駆動されると、再開の終わりを知らせる信号を送る。バス監視回路４０５はこの状態を見て、第２の割り込みをマイクロコントローラ３０１に送る。
本発明の一実施形態では、再開イネーブル回路４５１はＳＡＤＤＣ４１０、発信器イネーブル回路４２５、クロック・イネーブル回路４３０に結合されている。再開イネーブル回路４１５はＵＳＢデバイス２４１が中断状態に入るステップを完了してから、再開状態に入るステップを開始するように動作する。ＳＡＤＤＣ４１０は時間基準回路４２０に信号を送り、ＵＳＢデバイス２４１が再開イネーブル回路４１５により中断状態に入るべきであることを示す。再開イネーブル回路４１５は発信器イネーブル回路４２５に信号を送り、さらに時間基準回路４２０に送って、バス監視回路４０５からの任意の再開信号が発信器イネーブル回路４２５からブロックされ、その結果、時間基準回路４２０からもブロックされるようにする。これによってＵＳＢデバイス２４１は割り込みを受けずに、中断状態に入るステップを完了することが可能になる。クロック・イネーブル回路４３０が、マイクロコントローラ３０１がＵＳＢ状態情報の格納を終了し中断状態に入ろうとしていることを示す信号を時間基準回路４２０から受信すると、クロック・イネーブル回路４３０は信号を再開イネーブル回路４１５に送る。再開イネーブル回路４１５はこれに応じて信号を発信器イネーブル回路４２５に送り、発信器イネーブル回路４２５はバス監視回路４０５からの再開信号のブロッキングを除去する。本発明の一実施形態では、バス監視回路４０５、ＳＡＤＤＣ４１０、再開イネーブル回路４１５、時間基準回路４２０、発信器イネーブル回路４２５、クロック・イネーブル回路４３０、割り込み回路４３５はすべて同じシリコン基板上の１つのチップ上にある。
バス監視回路４０５、ＳＡＤＤＣ４１０、再開イネーブル回路４１５、時間基準回路４２０、発信器イネーブル回路４２５、クロック・イネーブル回路４３０、割り込み回路４３５は既知の任意の回路で実行することができる。第４図に示された中断制御回路２４２はＵＳＢ以外のバスから電力を受け取るＵＳＢデバイス以外のデバイスでも実行できる。
第７図は中断制御回路内の信号を示すタイミング図である。時間０で、ＵＳＢデバイスは通常の動作状態で動作している。時間５で中断が検出される。マイクロコントローラはＵＳＢ上の一定の時間の非アクティビティ後、中断パルスを中断制御回路に送る。中断制御回路内の中断アサート／デアサート検出回路は中断パルスを受信し、中断制御回路内の時間基準回路に信号を送る。時間基準回路は遅延回路を通じて、ｒｃ＿ｏｕｔとして示された信号をアサートする。時間１０で、遅延回路はｒｃ＿ｉｎ上の信号をアサートして応答する。ｒｃ＿ｏｕｔとｒｃ＿ｉｎのアサートの間の時間はマイクロコントローラが使い、ＵＳＢデバイス状態情報をメモリ内に格納する。
時間１５において、ＵＳＢデバイスへ向けられたアクティビティがバス監視回路によって検出される。中断制御回路内のバス監視回路は、発信器イネーブル回路を通じて発信器イネーブル回路と時間基準回路に再開パルスを送る。時間基準回路はｒｃ＿ｏｕｔと示された信号をデアサートする。時間２０において、遅延回路はｒｃ＿ｉｎ上の信号をデアサートして応答する。ｒｃ＿ｏｕｔとｒｃ＿ｉｎのデアサートの間の独立した時間は中断制御回路内のクロック・イネーブル回路が基準として使用する。クロック・イネーブル回路はこの時間を基準として使用し、発振器ユニットが安定してからクロックをイネーブルにする。
時間２０において、再開開始割り込み信号はクロックがイネーブルになった後、割り込み回路によってマイクロコントローラに送られる。マイクロコントローラは、メモリ内に格納されたＵＳＢデバイス状態情報をマイクロコントローラのレジスタに書き込むことによって、再開開始割り込みに応答する。時間２５において、再開終了割り込みが割り込み回路からマイクロコントローラに送られる。再開終了割り込みはマイクロコントローラに対し、ＵＳＢデバイスが通常の動作モードで実行されることを知らせる。
第８図は、バスによって電力を供給される電子デバイスの電力節約モードを終了する方法を示したフロー・チャートである。電子デバイスは発振器と、発振器から公称周波数を導き出すクロックと共に動作する。ステップ８０１では、電子デバイスへのバスにアクティビティがあるかどうかが決定される。電子デバイスへのバス上にアクティビティがない場合、制御はステップ８０１に進む。電子デバイスへのバス上にアクティビティがある場合、制御はステップ８０２に進む。
ステップ８０２では、発振器がイネーブルになる。
ステップ８０３では、時間が発振器がイネーブルになった時間とは独立して測定される。測定は発振器とクロックから独立した時間基準を使用して実行される。本発明の一実施形態では、独立した測定は遅延回路を通じて信号を送ることによって達成される。遅延回路は抵抗−容量ネットワークを使用して実行することも可能である。この時間は発振器が安定するために必要な時間よりも多い。
ステップ８０４では、時間終了後にクロックがイネーブルになる。
以上の説明では、本発明を特定の実施形態について記述した。しかし本発明の広い趣旨と範囲から逸脱することなく、さまざまな修正や変更を加えることが可能である。従って、本明細書と図面は制限的なものではなく例示的なものであると見なすべきである。
【図１】
0004191254.tif 000002
【図２】
0004191254.tif 000003
【図３】
0004191254.tif 000004
【図４】
0004191254.tif 000005
【図５】
0004191254.tif 000006
【図６】
0004191254.tif 000007
【図７】
0004191254.tif 000008
【図８】
0004191254.tif 000009