(57)【要約】アイドル状態の間の電源ユニット（ＰＳＵ）による電力消費を制御することに関する方法及び装置が記載される。一実施形態で、電源ユニットは、プラットフォームの１つ以上のコンポーネントに対応する電力状態情報、及び第１の値（低電力消費状態へ入ることの周波数／頻度に対応）と第１の閾値との比較に基づき、低電力消費状態（例えば、Ｓ９）に入る。他の実施形態も開示及び記載される。
2016513322.tif 000002
【特許請求の範囲】
【請求項１】
少なくとも一部分がハードウェアにあるロジックであり、１つ以上のコンポーネントに対応する電力状態情報及び第１の値と第１の閾値との比較に基づき電源ユニットを低電力消費状態に入らせるロジックを有し、
前記第１の値は、前記低電力消費状態へ最後に入ったときからの時間に対応する、
プロセッサ。
【請求項２】
少なくとも一部分がハードウェアにあるロジックであり、前記低電力消費状態を終了させるためのインジケーションに基づき前記電源ユニットを前記低電力消費状態から抜け出させるロジックを有する
請求項１に記載のプロセッサ。
【請求項３】
前記インジケーションは、信号、タイマの終了、及び第２の値と第２の閾値との比較のうちの１つ以上を有する、
請求項２に記載のプロセッサ。
【請求項４】
前記第２の値は、前記低電力消費状態から抜け出すことの頻度に対応する、
請求項３に記載のプロセッサ。
【請求項５】
少なくとも一部分がハードウェアにあるロジックであり、前記電源ユニットが運転可能であるまで当該プロセッサの起動をブロックするロジックを有する
請求項１に記載のプロセッサ。
【請求項６】
プラットフォームが、前記プロセッサ及び前記１つ以上のコンポーネントを有する、
請求項１に記載のプロセッサ。
【請求項７】
前記低電力消費状態は、前記１つ以上のコンポーネントのうちの少なくとも１つによる１つ以上の低電力動作の機能を可能にする、
請求項１に記載のプロセッサ。
【請求項８】
前記低電力消費状態は、前記１つ以上のコンポーネントのうちの少なくとも１つによる１つ以上低電力動作の機能を可能にし、
前記低電力消費状態は、前記１つ以上のコンポーネントのうちの少なくとも１つによるフルパワー又はフルパフォーマンス動作を駆動しない、
請求項１に記載のプロセッサ。
【請求項９】
前記低電力消費状態は、約数十から約数百ミリ秒の範囲での起動待ち時間を可能にする、
請求項１に記載のプロセッサ。
【請求項１０】
前記電源ユニットへ結合される複数のプロセッサを更に有する
請求項１に記載のプロセッサ。
【請求項１１】
温度、動作周波数、動作電圧、及び電力消費量のうちの１つ以上の変動を検出する１つ以上のセンサを更に有する
請求項１に記載のプロセッサ。
【請求項１２】
前記ロジック、当該プロセッサの１つ以上のプロセッサコア、及びメモリのうちの１つ以上は、単一の集積回路上にある、
請求項１に記載のプロセッサ。
【請求項１３】
前記低電力消費状態は、Ｓ９ステートを有する、
請求項１に記載のプロセッサ。
【請求項１４】
プロセッサに結合されている１つ以上のコンポーネントに対応する電力状態情報、及び第１の値と第１の閾値との比較に基づき、電源ユニットを低電力消費状態に入らせるステップを有し、
前記第１の値は、前記低電力消費状態へ最後に入ったときからの時間に対応する、
方法。
【請求項１５】
前記低電力消費状態を終了させるためのインジケーションに基づき前記電源ユニットを前記低電力消費状態から抜け出させるステップを更に有する
請求項１４に記載の方法。
【請求項１６】
前記インジケーションは、信号、タイマの終了、及び第２の値と第２の閾値との比較のうちの１つ以上を有する、
請求項１５に記載の方法。
【請求項１７】
前記第２の値は、前記低電力消費状態から最後に抜け出したときからの時間に対応する、
請求項１６に記載の方法。
【請求項１８】
複数のプロセッサコアを備えるプロセッサと、
システムの１つ以上のコンポーネントの電力消費量に対応する複数のパラメータを記憶するメモリと、
少なくとも一部分がハードウェアにあるロジックであり、前記１つ以上のコンポーネントに対応する電力状態情報及び第１の値と第１の閾値との比較に基づき電源ユニットを低電力消費状態に入らせるロジックと
を有し、
前記第１の値は、前記低電力消費状態へ最後に入ったときからの時間に対応する、
システム。
【請求項１９】
少なくとも一部分がハードウェアにあるロジックであり、前記低電力消費状態を終了させるためのインジケーションに基づき前記電源ユニットを前記低電力消費状態から抜け出させるロジックを有する
請求項１８に記載のシステム。
【請求項２０】
前記インジケーションは、信号、タイマの終了、及び第２の値と第２の閾値との比較のうちの１つ以上を有する、
請求項１９に記載のシステム。
【請求項２１】
前記第２の値は、前記低電力消費状態から最後に抜け出したときからの時間に対応する、
請求項２０に記載のシステム。
【請求項２２】
少なくとも一部分がハードウェアにあるロジックであり、前記電源ユニットが運転可能であるまで当該プロセッサの起動をブロックするロジックを有する
請求項１９に記載のシステム。
【請求項２３】
プロセッサで実行される場合に、該プロセッサに、請求項１４乃至１７のうちいずれか一項に記載の方法を実行させる１つ以上の命令を有するコンピュータ可読媒体。
【請求項２４】
請求項１４乃至１７のうちいずれか一項に記載の方法を実行する手段を有する装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、概して、エレクトロニクスの分野に関する。特に、発明の実施形態は、アイドル状態の間の電源ユニット（ＰＳＵ；Power  Supply  Unit）による電力消費を制御することに関する。
【背景技術】
【０００２】
集積回路（ＩＣ；Integrated  Circuit）製造技術が改善するにつれて、製造業者は、更なる機能を単一のシリコン基板上に組み込むことができる。そのような機能の数が増えるにつれて、しかしながら、単一ＩＣチップ上の部品点数も増える。更なるコンポーネントは更なる信号スイッチングを加え、つまりは、更なる熱を発生させる。そのような更なる熱は、例えば、熱膨張によって、ＩＣチップにダメージを与えることがある。また、更なる熱は、かかるチップを含むコンピュータ装置の使用場所及び／又は用途を制限することがある。
【０００３】
例えば、ポータブル型コンピュータ装置は、その動作のためにもっぱらバッテリ電力に依存してよい。よって、更なる機能がポータブル型コンピュータ装置に組み込まれる場合に、電力消費量を低減する必要性は、例えば、長期間にわたりバッテリ電力を維持するために、ますます重要になりつつある。非ポータブル型コンピュータ装置も、それらのＩＣ部品がより多くの電力を使用し且つ更なる熱を発生させる場合に、冷却及び電力の問題に直面する。
【図面の簡単な説明】
【０００４】
【図１】ここで開示される様々な実施形態を実装するのに使用され得るコンピュータ装置の実施形態のブロック図を表す。
【図２】幾つかの実施形態に従う、コンピュータシステムコンポーネントのブロック図を表す。
【図３】幾つかの実施形態に従うフロー図を表す。
【図４】ここで開示される様々な実施形態を実装するのに使用され得るコンピュータ装置の実施形態のブロック図を表す。
【図５】ここで開示される様々な実施形態を実装するのに使用され得るコンピュータ装置の実施形態のブロック図を表す。
【図６】ここで開示される様々な実施形態を実装するのに使用され得るコンピュータ装置の実施形態のブロック図を表す。
【発明を実施するための形態】
【０００５】
詳細な説明は、添付の図面を参照して与えられる。図中、参照符号の最左の数字は、その参照符号が最初に現れる図を識別する。異なる図における同じ参照符号の使用は、類似するか又は同じである項目を示す。
【０００６】
［詳細な説明］
以下の記載において、多くの具体的な詳細は、様々な実施形態の完全な理解を提供するために説明される。なお、発明の様々な実施形態は、その具体的な詳細によらずに実施されてよい。他の事例では、よく知られている方法、プロシージャ、コンポーネント、及び回路は、発明の特定の実施形態を不明りょうにしないように詳細に記載されていない。更に、発明の実施形態の様々な態様は、例えば、集積半導体回路（“ハードウェア”）、１つ以上のプログラムに編成されたコンピュータ可読命令（“ソフトウェア”）、又はハードウェアとソフトウェアとの組み合わせのような、様々な手段により実行されてよい。本開示のために、“ロジック”との言及は、ハードウェア、ソフトウェア、又はそれらの何らかの組み合わせを意味すべきである。
【０００７】
一般に、コンピュータ（例えば、デスクトップコンピュータ、ワークステーション、など）の電源ユニット（ＰＳＵ）は、低電力状態での低い効率に起因して、相当量のアイドル電力を消費する。ＣＰＵ（Central  Processing  Unit）及びプラットフォームは、よく管理された電力状態を有し、使用されない場合は極低電力状態に入ってよい。企業環境における定期的な遠隔保守は、Always  On  Always  Connected（ＡＯＡＣ）の新しい機能とともに、常にコンピュータをオンのままとする使用モードを駆動する。壁つきコンセントにプラグにより接続されており、完全にオフされないデスクトップコンピュータは、アイドル電力を消費し続ける。現在、ＰＳＵは、ＣＰＵ及びプラットフォームの起動のために所要応答時間が、ＰＳＵの起動時間と比べて、非常に速いので、電力節約モードに置かれないことがある。非常に多くの据え付けコンピュータに伴うスケールメリットは、このことを、利用料金及びＣＯ２放出の環境影響の両方にとっての深刻な問題とする。
【０００８】
このために、ここで論じられる実施形態の幾つかは、コンピュータシステム及び／又はプロセッサ（汎用プロセッサ、グラフィクスプロセッサ、など）のための効率的且つ柔軟な電力管理を提供する。ある実施形態では、電力消費は、例えば、プラットフォーム低電力状態（例えば、プラットフォームＳ９ステート）のような電力状態の間、ＰＳＵのアイドル状態を制御することによって管理される。一実施形態は、ＰＳＵがプラットフォームアイドル状態（例えば、Ｓ９）で電力節約“モード”（ここでは同義的に“状態”とも呼ばれる。）に入ることを可能にする。ここで論じられるように、Ｓ９電力節約状態は、少なくとも一部の動作を可能にするために必要電圧を（ＰＳＵから）プラットフォームの少なくとも一部へ依然として供給してよいが、より効率的なモードを使用してよい。例えば、この電力状態は、低電力動作の機能を確保してよいが、フルパワー、フルパフォーマンス動作を駆動することはできない。
【０００９】
加えて、ディープＣステートは、一般に、ＣＰＵ又はパッケージのディープスリープ、スリープ、などの状態を対象とし、Ｓステートは、一般に、例えば、通信メッセージ、電子メール同期化、及び他の“動作様の”ルック＆フィール、などのための“ポップアップ”（すなわち、ディープスリープから比較的速やかな脱出）を可能にしながら、プラットフォームのためのディープスリープ、スリープ、などの状態を対象とする。ここで論じられる新しいＳ９スリープステートは、例えば、数十から数百ミリ秒の範囲における、長い起動待ち時間を可能にする。この時間の間に、プラットフォームの電力消費量は比較的低く、従って、ＰＳＵは、例えばＳ９のような低電力モード（非同期モードと同様であり得る。）に置かれてよい。そのような電力状態で、ＰＳＵは依然としていくらかの電力を供給する（従って、“ポップアップ”を可能にするよう一部の機能を保つ。）が、高電流引き込みを認めない（従って、フルパフォーマンスを提供しない。）。
【００１０】
一般に、夫々のＣステートは、ある程度の機能を示してよい。例えば、Ｃ０は、プロセッサが動作していることを示してよく、Ｃ１は、プロセッサが命令を実行していないが、ほぼ瞬時に実行中状態へ戻ることができることを示してよい、など。上記のＣステートは、プロセッサ（及びそれらのコア）にのみ適用してよく、一方、幾つかの実施形態は、（プロセッサレベル、デバイスレベル、全体的、などを含むあらゆるレベルでと同様に）パッケージ又はプラットフォームレベルの電力消費状態に適用される。より一般的に、電力消費状態の幾つかは、Advanced  Configuration  and  Power  Interface（ＡＣＰＩ）仕様、改訂４．０ａ、２０１０年４月５日の下で定義されたものに従ってよい。
【００１１】
加えて、幾つかの実施形態は、例えば、図１乃至５を参照して論じられているもののような、１つ以上のプロセッサ（例えば、１つ以上のプロセッサコアを備える。）を含むコンピュータシステムにおいて適用されてよい。特に、図１は、発明の実施形態に従うコンピュータシステム１００のブロック図を表す。システム１００は、１つ以上のプロセッサ１０２−１乃至１０２−Ｎ（一様にここでは“プロセッサ１０２”（複数を含む。）と呼ばれる。）を有してよい。プロセッサ１０２は、相互接続又はバス１０４を介して通信してよい。夫々のプロセッサは様々なコンポーネントを有してよく、それらの幾つかは、明りょうさのために、プロセッサ１０２−１のみを参照して論じられる。然るに、残りのプロセッサ１０２−２乃至１０２−Ｎの夫々は、プロセッサ１０２−１を参照して論じられる同じか又は類似するコンポーネントを有してよい。
【００１２】
実施形態において、プロセッサ１０２−１は、１つ以上のプロセッサコア１０６−１乃至１０６−Ｍ（ここでは“コア１０６”（複数を含む。）と呼ばれる。）、キャッシュ１０８、及び／又はルータ１１０を有してよい。プロセッサコア１０６は、単一の集積回路（ＩＣ）チップにおいて実装されてよい。加えて、チップは、１つ以上の共有及び／又はプライベートキャッシュ（例えば、キャッシュ１０８）、バス若しくは相互接続（例えば、バス若しくは相互接続１１２）、グラフィクス及び／若しくはメモリコントローラ（例えば、図４及び５を参照して論じられるもの）、又は他のコンポーネントを有してよい。
【００１３】
一実施形態において、ルータ１１０は、プロセッサ１０２−１及び／又はシステム１００の様々なコンポーネントの間で通信するために使用されてよい。加えて、プロセッサ１０２−１は、１よりも多いルータ１１０を有してよい。加えて、複数のルータ１１０は、プロセッサ１０２−１の内外の様々なコンポーネントの間のデータルーティングを可能にするよう通信してよい。
【００１４】
キャッシュ１０８は、例えばコア１０６のような、プロセッサ１０２−１の１つ以上のコンポーネントによって利用されるデータ（例えば、命令を含む。）を記憶してよい。例えば、キャッシュ１０８は、プロセッサ１０２のコンポーネントによるより高速なアクセス（例えば、コア１０６によるより高速なアクセス）のために、メモリ１１４において記憶あれているデータをローカルにキャッシュしてよい。図１に示されるように、メモリ１１４は、相互接続１０４を介してプロセッサ１０２と通信してよい。実施形態において、キャッシュ１０８（供給され得る。）は、ミッドレベルキャッシュ（ＭＬＣ；Mid-level  Cache）、ラストレベルキャッシュ（ＬＬＣ；Last  Level  Cache）、などであってよい。また、コア１０６の夫々は、レベル１（Ｌ１）キャッシュ（１１６−１）（一様にここで“Ｌ１キャッシュ１１０６”と呼ばれる。）、又は例えばレベル２（Ｌ２）キャッシュのような他のレベルキャッシュを有してよい。加えて、プロセッサ１０２−１の様々なコンポーネントは、バス（例えば、バス１１２）及び／又はメモリコントローラ若しくはハブを介して、直接にキャッシュ１０８と通信してよい。
【００１５】
システム１００は、システム１００の１つ以上のコンポーネントへ電力を供給するプラットフォーム電源１２０（例えば、直流（ＤＣ）電源又は交流（ＡＣ）電源）を更に有してよい。実施形態において、プラットフォーム電源１２０は、ここで論じられるＰＳＵであってよい。幾つかの実施形態において、電源１２０は、１つ以上のバッテリパック及び／又はパワーサプライを有してよい。電源１２０は、電圧レギュレータ（ＶＲ）１３０を通じてシステム１００のコンポーネントへ結合されてよい。加えて、たとえ図１が１つの電源１２０及び１つの電圧レギュレータ１３０を表すとしても、更なる電源及び／又は電圧レギュレータが利用されてよい。例えば、プロセッサ１０２のうちの１つ以上は、対応する電圧レギュレータ及び／又は電源を備えてよい。また、電圧レギュレータ１３０は、単一のパワープレーン（例えば、全てのコア１０６へ電力を供給する。）又は複数のパワープレーン（例えば、各パワープレーンは、異なったコア又は異なったコア群へ電力を供給してよい。）を介してプロセッサ１０２へ結合されてよい。
【００１６】
更には、図１は、電源１２０及び電圧レギュレータ１３０を別々のコンポーネントとして表すが、電源１２０及び電圧レギュレータ１３０は、システム１００の他のコンポーネントに組み込まれてよい。例えば、ＶＲ１３０の全て又は部分は、電源１２０及び／又はプロセッサ１０２に組み込まれてよい。
【００１７】
図１に示されるように、プロセッサ１０２は、プロセッサ１０２のコンポーネント（例えば、コア１０６）への電力の供給を制御する電力制御ロジック１４０を更に有してよい。ロジック１４０は、例えば、ここで論じられるようにシステム１００の様々なコンポーネントにより通信される情報などの、ロジック１４０の動作に関する情報を記憶するための、ここで論じられる１つ以上のストレージデバイス（例えば、キャッシュ１０８、Ｌ１キャッシュ１１６、メモリ１１４、又はシステム１００内の他のメモリ）へのアクセスを有してよい。図示されるように、ロジック１４０は、ＶＲ１３０及び／又は、例えばコア１０６及び／又は電源１２０などのシステム１００の他のコンポーネントへ結合されてよい。
【００１８】
例えば、ロジック１４０は、１つ以上のセンサ１５０のステータスを示す情報（例えば、１つ以上のビット又は信号の形をとる。）を受け取るよう結合されてよい。センサ１５０は、例えば、コア１０６、相互接続１０４若しくは１１２、プロセッサ１０２の外のコンポーネント、などのような、システム１００のコンポーネント（又は、例えば、図４及び５を含む他の図を参照して論じられるもののような、ここで論じられる他のコンピュータシステム）の近くに設けられてよく、例えば、温度、動作周波数、動作電圧、電力消費量、及び／又はコア間通信活動、などのような、システム／プラットフォームの電力／熱的挙動に作用する様々な要因の変動を検知する。
【００１９】
ロジック１４０は、次いで、ＶＲ１３０、電源１２０、及び／又はシステム１００の個々のコンポーネント（例えば、コア１０６）に、それらの動作を変更するよう命じてよい。例えば、ロジック１４０は、ＶＲ１３０及び／又は電源１２０（すなわち、ＰＳＵ）に、それらの出力を調整するように指示してよい。幾つかの実施形態において、ロジック１４０は、コア１０６に、それらの動作周波数、電力消費量、などを変更するように要求してよい。また、たとえコンポーネント１４０及び１５０がプロセッサ１０２−１内に含まれるように示されるとしても、それらのコンポーネントは、システム１００内の他の場所に設けられてよい。例えば、電力制御ロジック１４０は、ＶＲ１３０において、電源１２０において、相互接続１０４へ直接結合されて、プロセッサ１０２のうちの１つ以上（又は代替的に全て）の中において、等で、設けられてよい。加えて、図１に示されるように、電源１２０及び／又は電圧レギュレータ１３０は、電力制御ロジック１４０と通信して、自身の電力仕様を報告してよい。
【００２０】
図２は、実施形態に従う電力管理システム２００のブロック図を表す。ＣＰＵ／プロセッサ（及び、特に、電力制御ロジック／ユニット１４０）は、１つ以上の専用ピン、例えばＳＶＩＤ（インテル社によって供給されているシリアル（Serial）ＶＩＤのための通信プロトコルを利用する。）などのシリアルバス、ＤＣライン上でのＨＦ（High  Frequency）変調、又は他のシグナリングモードのいずれかを介して、低電力状態をＰＳＵ１４０へ送る。このシグナリングはまた、例えば、ＰＳＵがレディー信号を返送することを可能にする双方向であってもよい。
【００２１】
図２を参照すると、システム２００は、プロセッサ１０２の中身を、簡単のために、制御ロジック１４０と、プロセッサの残りの部分２０２とに分割する。電源１２０は、プロセッサ／ＣＰＵ電源２０４（例えば、プロセッサ１０２及びそのコンポーネント１４０／２０２用）及びプラットフォーム電源／サプライ２０６（例えば、プラットフォームの残り（すなわち、例えば、１つ以上のプロセッサ１０２以外）へ電力を供給するためのもの）へ電力を供給する。システム２００は、簡単のために図２に図示されていない１つ以上のＶＲ（図１を参照して図示及び議論された。）を更に有してよい。
【００２２】
図２に示されるように、電源１２０は、実施形態において、ＰＳＵの電力状態を調整するよう、電力制御ロジック１４０から受け取った信号／情報に依存してよい。幾つかの実施形態は、（ａ）ＰＳＵに、それがスリープ状態に入ることができるアイドル期間を知らせるために、及び／又は（ｂ）例えば、起動して、ＣＰＵ動作に備えるに足りるほど早く、アラートを供給するために、スリープ状態に関してＣＰＵ及び／又はプラットフォームから／において利用可能な情報を利用する（以下で図３を参照して更に論じられる。）。
【００２３】
図３は、幾つかの実施形態に従って、ＰＳＵによる電力消費を制御する方法３００の実施形態のフロー図を表す。実施形態において、図１乃至２及び４乃至５を参照して論じられる様々なコンポーネントは、図３を参照して論じられる動作のうちの１つ以上を実行するために利用されてよい（例えば、ロジック１４０を含む。）。
【００２４】
図１乃至３を参照すると、動作３０２で、１つ以上のパラメータ及び閾値が設定される（例えば、１つ以上のレジスタ、テーブルエントリ、及び／又は例えば図１乃至３及び４乃至５を参照して論じられるもののようなストレージデバイスにおいて記憶される。）。動作３０２で、１つ以上のタイマもリセットされてよい。パラメータ及び／又は閾値は、ロジック１４０がＰＳＵ１２０を低電力消費状態（例えば、Ｓ９）に入らせるべきレベル／値（例えば、プロセッサ及び／又はプラットフォームによって提供される。）を示してよい。また、動作３０２は、システム始動の一回のみならず、如何なる時点でも動的に実行されてよい点が理解される。
【００２５】
幾つかの実施形態において、（例えば、動作３０４の後に）Ｓ９へ入る条件は、例えば、周波数又はＣステート（例えば、コア及びパッケージのＣステート）によってハードウェアにおいて駆動されるソフトウェア及び／又はハードウェアであることができる。例えば、動作３０４でＳ９へ入るときに、ＣＰＵは、３０８でＰＳＵをスリープ状態に置くことができる（例えば、以下で更に論じられるように、早すぎてＳ９に入らないことを確かにして、結局ただＰＳＵを強制的にＳ９から抜け出させる何らかの動作が続く結果となるために、何らかのカウンタ／タイマに基づき、Ｓ９のためのカウント／タイマが３０６で経過した後）。動作３１０で、タイマはインクリメントされて、動作３１１でのタイマチェックが続く。このことは、性能が過度に影響されないことを確かにするためのヒステリシスを可能にする。然るに、幾つかの実施形態において、タイマは、ＰＳＵが低電力消費状態から抜け出る場合に、例えば、単に、低電力消費状態にある場合にではなく、インクリメントされる。実施形態において、動作３１０のタイマは、ＰＳＵがアイドル状態にあった時間量を示す。３１２でアイドルから脱すると（例えば、ＰＳＵが低電力消費状態から脱するべきとの信号／インジケーション、及び／又はＰＳＵが抜け出るには尚早であることを示す３１０でインクリメントされたタイマの値（若しくは動作３１１での閾値とのその比較）に基づく。）、ＰＳＵは３１４でアクティブにされ、方法３００は、予め定義された時間（例えば、タイマによって決定される。）の間、又はＰＳＵがフルパフォーマンス／機能の準備ができているとのインジケーションに基づき（例えば、図２を参照して記載される何らかの“レディー”信号に基づく。）、３１６で待機する。実施形態で、ＣＰＵの動作は、動作３１６によって決定されるように、ＰＳＵが適切に起動して実行されるまで（あるいは、さもなければ、ＰＳＵが完全に運転可能であるまで）、保持／ブロックされてよい。動作３１６の後、方法３００は、動作３１８で低電力状態を終了する。
【００２６】
上述されたように、タイマ／カウンタは、例えば、低電力消費状態（例えば、Ｓ９ステート）へ入る周波数／頻度（すなわち、どれくらいの頻度でエントリがなされるのか。）、及び／又は低電力消費状態（例えば、Ｓ９ステート）から抜け出る周波数／頻度（すなわち、どれくらいの頻度でイグジットがなされるのか。）を制御するように、方法３００のフローのために（例えば、動作３０６、３１０、３１１、及び／又は３１２のために）加えられてよい。すなわち、極めて頻繁に低電力消費状態に入ること及び／又はそれから抜け出ることは、付加的なイグジット待ち時間に起因して性能／効率を損なう可能性があり、正味エネルギの損失に行き着くこととなり得る。
【００２７】
正味エネルギの損失は、部分的に、そのような遷移の間に且つ必要とされるよりも長くＣＰＵを存続させることによって失われるエネルギのためであり得る。そのようなものとして、タイマは、イグジット事象（及び／又は、ＰＳＵが動作３１０ごとにアイドルにあった時間の量）をカウントしてよく、イグジットの割合が十分に低い場合（例えば、動作３１２でロジック１４０によって決定されるか、あるいは、閾値に対する比較に基づく。）は、ＰＳＵは３１２で低電力モード（例えば、Ｓ９）から抜け出る。また、エントリの割合（例えば、イグジットの割合に対する。）が動作３０６で高すぎる場合（例えば、何らかのカウンタ／タイマ及び何らかの閾値とのその比較に基づき決定される。）は、低電力消費状態へのエントリは遅延される（あるいは、実施形態においてキャンセルされる）。
【００２８】
このために、幾つかの実施形態は、ディープＣステート（例えば、Ｓ９）を結ぶためのＣＰＵ側での検出メカニズム（例えば、ロジック１４０）の付加を可能にし、ＰＳＵへの通信システムを提供して、例えば、ＰＳＵが高電力要件を維持することができる状態にあるまでスリープの終了を延期する。
【００２９】
図４は、発明の実施形態に従うコンピュータシステム４００のブロック図を表す。コンピュータシステム４００は、１つ以上の中央演算処理装置（ＣＰＵ）又はプロセッサ４０２−１乃至４２−Ｐ（ここでは“プロセッサ４０２”（複数を含む。）と呼ばれ得る。）を有してよい。プロセッサ４０２は、相互接続ネットワーク（又はバス）４０４を介して通信してよい。プロセッサ４０２は、汎用プロセッサ、ネットワークプロセッサ（コンピュータネットワーク４０３を介して通信されるデータを処理する。）、又は他のタイプのプロセッサ（縮小命令セットコンピュータ（ＲＩＳＣ）プロセッサ若しくは複数命令セットコンピュータ（ＣＩＳＣ）を含む。）を含んでよい。加えて、プロセッサ４０２は、単一又は多重コア設計を備えてよい。プロセッサ４０２は、同じ集積回路（ＩＣ）ダイ上に異なるタイプのプロセッサコアを集積してよい。また、多重コア設計を備えたプロセッサ４０２は、対称又は非対称マルチプロセッサとして実装されてよい。実施形態において、プロセッサ４０２のうちの１つ以上は、図１のプロセッサ１０２と同じか又は類似してよい。幾つかの実施形態において、プロセッサ４０２のうちの１つ以上は、図１のコア１０６、ロジック１４０、１つ以上のタイマ（例えば、図３を参照して論じられたもの）、及びセンサ１５０のうちの１つ以上を有してよい。また、図１乃至５を参照して論じられる動作は、システム４００の１つ以上のコンポーネントによって実行されてよい。例えば、電圧レギュレータ（例えば、図１のＶＲ１３０）は、ロジック１４０の指示で、図４の１つ以上のコンポーネントへ供給される電圧をレギュレートしてよい。
【００３０】
チップセット４０６も相互接続ネットワーク４０４と通信してよい。チップセット４０６は、グラフィクス及びメモリ制御ハブ（ＧＭＣＨ；Graphics  and  Memory  Control  Hub）４０８を有してよい。ＧＭＣＨ４０８は、メモリ４１２と通信するメモリコントローラ４１０を有してよい。メモリ４１２は、プロセッサ４０２、又はコンピュータシステム４００に含まれるあらゆる他の装置によって実行される命令のシーケンスを含むデータを記憶してよい。発明の一実施形態において、メモリ４１２は、例えばランダムアクセスメモリ（ＲＡＭ）、動的ＲＡＭ（ＤＲＡＭ）、同期ＤＲＡＭ（ＳＤＲＡＭ）、静的ＲＡＭ（ＳＲＡＭ）、又は他のタイプのストレージデバイスなどの１つ以上の揮発性ストレージ（又はメモリ）デバイスを有してよい。不揮発性メモリも、例えばハードディスクなどが利用されてよい。更なる装置は、例えば複数のＣＰＵ及び／又は複数のシステムメモリなどが、相互接続ネットワーク４０４を介して通信してよい。
【００３１】
ＧＭＣＨ４０８は、グラフィクスアクセラレータ４１６と通信するグラフィクスインタフェース４１４を更に有してよい。発明の一実施形態において、グラフィクスインタフェース４１４は、アクセルレイテッドグラフィックスポート（ＡＧＰ；Accelerated  Graphics  Port）を介してグラフィクスアクセラレータ４１６と通信してよい。発明の実施形態において、ディスプレイ（例えば、フラットパネルディスプレイ、陰極線管（ＣＲＴ）、投影スクリーン、など）は、例えば、例えばビデオメモリ又はシステムメモリなどのストレージデバイスに記憶されている画像のデジタル表現を、ディスプレイによって解釈され表示されるディスプレイ信号に変換する信号コンバータを通じて、グラフィクスインタフェース４１４と通信してよい。ディスプレイ装置によって生成されるディスプレイ信号は、ディスプレイによって解釈されてその後にディスプレイ上に表示される前に、様々な制御装置を通ってよい。
【００３２】
ハブインタフェース４１８は、ＧＭＣＨ４０８及び入出力制御ハブ（ＩＣＨ；Input/output  Control  Hub）４２０が通信することを可能にしてよい。ＩＣＨ４２０は、コンピュータシステム４００と通信するＩ／Ｏ装置へのインタフェースを提供してよい。ＩＣＨ４２０は、例えばペリフェラルコンポーネント相互接続（ＰＣＩ；Peripheral  Component  Interconnect）ブリッジ、ユニバーサルシリアルバス（ＵＳＢ；Universal  Serial  Bus）コントローラ、又は他のタイプのペリフェラルブリッジ若しくはコントローラなどのペリフェラルブリッジ（又はコントローラ）４２４を通じて、バス４２２と通信してよい。ブリッジ４２４は、プロセッサ４０２と周辺機器との間のデータパスを提供してよい。他のタイプのトポロジが利用されてよい。また、複数のバスは、例えば、複数のブリッジ又はコントローラを通じて、ＩＣＨ４２０と通信してよい。加えて、ＩＣＨ４２０と通信する他の周辺機器は、発明の様々な実施形態において、統合ドライブエレクトロニクス（ＩＤＥ；Integrated  Drive  Electronics）若しくはスモールコンピュータシステムインタフェース（ＳＣＳＩ；Small  Computer  System  Interface）ハードドライブ、ＵＳＢポート、キーボード、マウス、パラレルポート、シリアルポート、フロッピー（登録商標）ディスクドライブ、デジタル出力サポート（例えば、デジタルビデオインタフェース（ＤＶＩ））、又は他の装置を含んでよい。
【００３３】
バス４２２は、オーディオ装置４２６、１つ以上のディスクドライブ４２８、及び筆以上のネットワークインタフェース装置４３０（コンピュータネットワーク４０３と通信する。）と通信してよい。他の装置はバス４２２を介して通信してよい。また、様々なコンポーネント（例えば、ネットワークインタフェース装置４３０）は、発明の幾つかの実施形態において、ＧＭＣＨ４０８と通信してよい。加えて、プロセッサ４０２及びＧＭＣＨ４０８は、単一のチップを形成するようにまとめられてよい。更に、グラフィクスアクセラレータ４１６は、発明の他の実施形態において、ＧＭＣＨ４０８内に含まれてよい。
【００３４】
更に、コンピュータシステム４００は、揮発性及び／又は不揮発性メモリ（又はストレージ）を有してよい。例えば、不揮発性メモリは、次のものの１つ以上を有してよい：読出専用メモリ（ＲＯＭ）、プログラム可能ＲＯＭ（ＰＲＯＭ）、消去可能ＰＲＯＭ（ＥＰＲＯＭ）、電気的消去可能なＰＲＯＭ（ＥＥＰＲＯＭ）、ディスクドライブ（例えば、４２８）、フロッピー（登録商標）ディスク、コンパクトディスクＲＯＭ（ＣＤ−ＲＯＭ）、デジタルバーサタイルディスク（ＤＶＤ）、フラッシュメモリ、光学磁気ディスク、又は電子データ（例えば、命令を含む。）を記憶することが可能な他のタイプの不揮発性の機械可読媒体。実施形態において、システム４００のコンポーネントは、ポイント・ツー・ポイント（ＰｔＰ）構成において配置されてよい。例えば、プロセッサ、メモリ、及び／又は入出力装置は、多数のポイント・ツー・ポイントインタフェースによって相互接続されてよい。
【００３５】
図５は、発明の実施形態に従う、ポイント・ツー・ポイント（ＰｔＰ）構成において配置されるコンピュータシステム５００を表す。特に、図５は、プロセッサ、メモリ、及び／又は入出力装置が多数のポイント・ツー・ポイントインタフェースによって相互接続されるシステムを示す。図１乃至４を参照して論じられた動作は、システム５００の１つ以上のコンポーネントによって実行されてよい。例えば、電圧レギュレータ（例えば、図１のＶＲ１３０）は、図５の１つ以上のコンポーネントへ供給される電圧をレギュレートしてよい。
【００３６】
図５に表されるように、システム５００は幾つかのプロセッサを有してよい。明りょうさのために、そのうちの２つであるプロセッサ５０２及び５０４しか示されていない。プロセッサ５０２及び５０４は夫々、メモリ５１０及び５１２との通信を可能にする局所メモリコントローラハブ（ＭＣＨ）５０６及び５０８を有してよい。メモリ５１０及び／又は５１２は、例えば図４のメモリ４１２を参照して論じられたもののような様々なデータを記憶してよい。また、プロセッサ５０２及び５０４は、図１のコア１０６、ロジック１４０、１つ以上のタイマ（例えば、図３を参照して論じられたもの）、及び／又はセンサ１５０のうちの１つ以上を有してよい。
【００３７】
実施形態において、プロセッサ５０２及び５０４は、図４を参照して論じられたプロセッサ４０２のうちの１つであってよい。プロセッサ５０２及び５０４は、ＰｔＰインタフェース回路５１６及び５１８を夫々用いて、ポイント・ツー・ポイント（ＰｔＰ）インタフェース５１４を介してデータを交換してよい。また、プロセッサ５０２及び５０４は夫々、ポイント・ツー・ポイントインタフェース回路５２６、５２８、５３０及び５３２を用いて個々のＰｔＰインタフェース５２２及び５２４を介してチップセット５２０とデータを交換してよい。チップセット５２０は更に、例えばＰｔＰインタフェース回路５３７を用いて、高性能グラフィクスインタフェース５３６を介して高性能グラフィクス回路５３４とデータを交換してよい。
【００３８】
少なくとも１つの実施形態において、図１乃至５を参照して論じられる１つ以上の動作は、プロセッサ５０２若しくは５０４及び／又は、例えばバス５４０介して通信するもののような、システム５００の他のコンポーネントによって実行されてよい。発明の他の実施形態は、しかしながら、図５のシステム５００内の他の回路、ロジックユニット、又は装置において存在してよい。更に、発明の幾つかの実施形態は、図５に表されている幾つかの回路、ロジックユニット、又は装置の全体にわたって分配されてよい。
【００３９】
チップセット５２０は、ＰｔＰインタフェース回路５４１を用いてバス５４０と通信してよい。バス５４０は、例えばバスブリッジ５４２及びＩ／Ｏ装置５４３などの、自身と通信する１つ以上の装置を備えてよい。バス５４４を介して、バスブリッジ５４２は、例えばキーボード／マウス５４５、通信装置５４６（例えば、コンピュータネットワーク４０３と通信し得るモデム、ネットワークインタフェース装置、若しくは他の通信装置）、オーディオＩ／Ｏ装置、及び／又はデータストレージデバイス５４８などの他の装置と通信してよい。データストレージデバイス５４８は、プロセッサ５０２及び／又は５０４によって実行され得るコード５４９を記憶してよい。
【００４０】
幾つかの実施形態において、ここで論じられるコンポーネントのうちの１つ以上は、システム・オン・チップ（ＳＯＣ）装置として具現され得る。図６は、実施形態に従うＳＯＣパッケージのブロック図を表す。図６に表されるように、ＳＯＣ６０２は、１つ以上の中央演算処理装置（ＣＰＵ）コア６２０、１つ以上のグラフィクスプロセッサユニット（ＧＰＵ）コア６３０、入出力（Ｉ／Ｏ）インタフェース６４０、及びメモリコントローラ６４２を有する。ＳＯＣパッケージ６０２の様々なコンポーネントは、他の図を参照してここで論じられたような相互接続又はバスへ結合されてよい。また、ＳＯＣパッケージ６０２は、他の図を参照してここで論じられたような、より多くの又はより少ないコンポーネントを有してよい。更に、ＳＯＣパッケージ６０２の各コンポーネントは、例えば、ここで他の図を参照して論じられたような、１つ以上の他のコンポーネントを有してよい。一実施形態において、ＳＯＣパッケージ６０２（及びそのコンポーネント）は、例えば、単一の半導体装置にパッケージ化される１つ以上の集積回路（ＩＣ）ダイにおいて設けられる。
【００４１】
図６に表されるように、ＳＯＣパッケージ６０２は、メモリコントローラ６４２を介してメモリ６６０（他の図を参照してここで論じられたのと同じか又は類似するメモリであってよい。）へ結合される。実施形態において、メモリ６６０（又はその一部分）は、ＳＯＣパッケージ６０２において集積され得る。
【００４２】
Ｉ／Ｏインタフェース６４０は、例えば、他の図を参照してここで論じられたような相互接続及び／又はバスを介して、１つ以上のＩ／Ｏ装置６７０へ結合されてよい。Ｉ／Ｏ装置６７０は、キーボード、マウス、タッチパッド、ディスプレイ、画像／映像キャプチャ装置（例えば、カメラ若しくはカムコーダ／ビデオレコーダ）、タッチスクリーン、スピーカ、又は同様のもののうちの１つ以上を含んでよい。更に、ＳＯＣパッケージ６０２は、実施形態においてロジック１４０を含んで／組み込んでよい。代替的に、ロジック１４０は、ＳＯＣパッケージ６０２の外に（すなわち、ディスクリートロジックとして）設けられてよい。
【００４３】
次の例は、更なる実施形態に関する。
【００４４】
例１は、少なくとも一部分がハードウェアにあるロジックであり、１つ以上のコンポーネントに対応する電力状態情報及び第１の値と第１の閾値との比較に基づき電源ユニットを低電力消費状態に入らせるロジックを有し、前記第１の値は、前記低電力消費状態へ最後に入ったときからの時間に対応する、プロセッサを含む。
【００４５】
例２において、例１の対象は、少なくとも一部分がハードウェアにあるロジックであり、前記低電力消費状態を終了させるためのインジケーションに基づき前記電源ユニットを前記低電力消費状態から抜け出させるロジックを有するプロセッサを任意に含むことができる。
【００４６】
例３において、例２の対象は、前記インジケーションが、信号、タイマの終了、及び第２の値と第２の閾値との比較のうちの１つ以上を有する、プロセッサを任意に含むことができる。
【００４７】
例４において、例３の対象は、前記第２の値が、前記低電力消費状態から抜け出すことの頻度に対応する、プロセッサを任意に含むことができる。
【００４８】
例５において、例１の対象は、少なくとも一部分がハードウェアにあるロジックであり、前記電源ユニットが運転可能であるまで当該プロセッサの起動をブロックするロジックを有するプロセッサを任意に含むことができる。例６において、例１の対象は、プラットフォームが、前記プロセッサ及び前記１つ以上のコンポーネントを有する、プロセッサを任意に含むことができる。
【００４９】
例７において、例１の対象は、前記低電力消費状態が、前記１つ以上のコンポーネントのうちの少なくとも１つによる１つ以上の低電力動作の機能を可能にする、プロセッサを任意に含むことができる。
【００５０】
例８において、例１の対象は、前記低電力消費状態が、前記１つ以上のコンポーネントのうちの少なくとも１つによる１つ以上低電力動作の機能を可能にし、前記低電力消費状態が、前記１つ以上のコンポーネントのうちの少なくとも１つによるフルパワー又はフルパフォーマンス動作を駆動しない、プロセッサを任意に含むことができる。
【００５１】
例９において、例１の対象は、前記低電力消費状態が、約数十から約数百ミリ秒の範囲での起動待ち時間を可能にする、プロセッサを任意に含むことができる。
【００５２】
例１０において、例１の対象は、前記電源ユニットへ結合される複数のプロセッサを更に有する、プロセッサを任意に含むことができる。
【００５３】
例１１において、例１の対象は、温度、動作周波数、動作電圧、及び電力消費量のうちの１つ以上の変動を検出する１つ以上のセンサを更に有する、プロセッサを任意に含むことができる。
【００５４】
例１２において、例１の対象は、前記ロジック、当該プロセッサの１つ以上のプロセッサコア、及びメモリのうちの１つ以上が単一の集積回路上にある、プロセッサを任意に含むことができる。
【００５５】
例１３において、例１の対象は、前記低電力消費状態がＳ９ステートを有する、プロセッサを任意に含むことができる。
【００５６】
例１４は、プロセッサに結合されている１つ以上のコンポーネントに対応する電力状態情報、及び第１の値と第１の閾値との比較に基づき、電源ユニットを低電力消費状態に入らせるステップを有し、前記第１の値が、前記低電力消費状態へ最後に入ったときからの時間に対応する、方法を含む。
【００５７】
例１５において、例１４の対象は、前記低電力消費状態を終了させるためのインジケーションに基づき前記電源ユニットを前記低電力消費状態から抜け出させるステップを更に有する、方法を任意に含むことができる。
【００５８】
例１６において、例１５の対象は、前記インジケーションが、信号、タイマの終了、及び第２の値と第２の閾値との比較のうちの１つ以上を有する、方法を任意に含むことができる。
【００５９】
例１７において、例１６の対象は、前記第２の値が、前記低電力消費状態から最後に抜け出したときからの時間に対応する、方法を任意に含むことができる。
【００６０】
例１８は、複数のプロセッサコアを備えるプロセッサと、システムの１つ以上のコンポーネントの電力消費量に対応する複数のパラメータを記憶するメモリと、少なくとも一部分がハードウェアにあるロジックであり、前記１つ以上のコンポーネントに対応する電力状態情報及び第１の値と第１の閾値との比較に基づき電源ユニットを低電力消費状態に入らせるロジックとを有し、前記第１の値が、前記低電力消費状態へ最後に入ったときからの時間に対応する、システムを含む。
【００６１】
例１９において、例１８の対象は、少なくとも一部分がハードウェアにあるロジックであり、前記低電力消費状態を終了させるためのインジケーションに基づき前記電源ユニットを前記低電力消費状態から抜け出させるロジックを有する、システムを任意に含むことができる。
【００６２】
例２０において、例１９の対象は、前記インジケーションが、信号、タイマの終了、及び第２の値と第２の閾値との比較のうちの１つ以上を有する、システムを任意に含むことができる。
【００６３】
例２１において、例２０の対象は、前記第２の値が、前記低電力消費状態から最後に抜け出したときからの時間に対応する、システムを任意に含むことができる。
【００６４】
例２２において、例１９の対象は、少なくとも一部分がハードウェアにあるロジックであり、前記電源ユニットが運転可能であるまで当該プロセッサの起動をブロックするロジックを有する、システムを任意に含むことができる。
【００６５】
例２３は、プロセッサで実行される場合に、該プロセッサに、例１４乃至１７のうちいずれか一項に記載の方法を実行させる１つ以上の命令を有するコンピュータ可読媒体を含む。
【００６６】
例２４は、プロセッサに結合されている１つ以上のコンポーネントに対応する電力状態情報、及び第１の値と第１の閾値との比較に基づき、電源ユニットを低電力消費状態に入らせる手段を有し、前記第１の値が、前記低電力消費状態へ最後に入ったときからの時間に対応する、装置を含む。
【００６７】
例２５において、例２４の対象は、前記低電力消費状態を終了させるためのインジケーションに基づき前記電源ユニットを前記低電力消費状態から抜け出させる手段を有する、装置を任意に含むことができる。
【００６８】
例２６において、例２５の対象は、前記インジケーションが、信号、タイマの終了、及び第２の値と第２の閾値との比較のうちの１つ以上を有する、装置を任意に含むことができる。
【００６９】
例２７において、例２６の対象は、前記第２の値が、前記低電力消費状態から最後に抜け出したときからの時間に対応する、装置を任意に含むことができる。
【００７０】
発明の様々な実施形態において、例えば図１乃至６を参照して、ここで論じられている動作は、ハードウェア（例えば、ロジック回路）、ソフトウェア、ファームウェア、又はそれらの組み合わせとして実装されてよく、例えば、ここで論じられているプロセスを実行するようにコンピュータをプログラムするのに用いられる命令が記憶された有形な機械可読又はコンピュータ可読媒体を含む、コンピュータプログラムプロダクトとして提供されてよい。機械可読媒体は、例えば図１乃至６を参照して論じられたもののような、ストレージデバイスを含んでよい。
【００７１】
加えて、そのようなコンピュータ可読媒体は、コンピュータプログラムプロダクトとしてダウンロードされてよく、プログラムは遠隔のコンピュータ（例えば、サーバ）から要求元コンピュータ（例えば、クライアント）へ、搬送波又は他の伝播媒体において提供されるデータ信号を用いて通信リンク（例えば、バス、モデム、又はネットワーク接続）を介して伝送されてよい。
【００７２】
「一実施形態」又は「実施形態」との明細書中の言及は、実施形態に関連して記載される特定の機能、構造又は特性が少なくとも１つの実施形態に含まれ得ることを意味する。明細書中の様々な箇所における「一実施形態において」との言い回しの出現は、必ずしも全てが同じ実施形態を参照しているわけではない。
【００７３】
また、明細書及び特許請求の範囲において、「結合される」及び「接続される」との語は、それらの派生語とともに、使用されることがある。発明の幾つかの実施形態において、「接続される」は、２つ以上の要素が互いと直接的な物理的又は電気的な接触を有していることを意味してよい。しかし、「結合される」、２つ以上の要素が互いと直接接触していないが、依然として互いと協働又は相互作用することも意味してよい。
【００７４】
このように、発明の実施形態は、構造上の特徴及び／又は方法論的動作に特有の言語において記載されてきたが、請求される対象は、その記載されている具体的な特徴又は動作に制限され得ない点が理解されるべきである。むしろ、具体的な特徴及び動作は、請求される対象を実装する見本形態として開示されている。
【図１】
2016513322.tif 000003
【図２】
2016513322.tif 000004
【図３】
2016513322.tif 000005
【図４】
2016513322.tif 000006
【図５】
2016513322.tif 000007
【図６】
2016513322.tif 000008
【国際調査報告】
2016513322.tif 000009
2016513322.tif 000010