少なくとも1つのプロセッサと、1つ以上の性能状態を指示するようにプログラムできる1つ以上のレジスタと、前記1つ以上のレジスタ及び前記プロセッサに結合されたコントロール回路であって、前記プロセッサが低性能状態に入ることを検出するように構成され、且つ前記プロセッサが低性能状態に入るのに応答して、集積回路の少なくとも1つの性能ドメインの性能状態を、1つ以上の性能状態のうちの第1の性能状態へ変更するように構成されたコントロール回路と、を備えた集積回路。前記コントロール回路は、前記プロセッサが低性能状態を出ることを検出するように構成され、そして前記コントロール回路は、前記プロセッサが低性能状態を出るのに応答して、集積回路の少なくとも1つの性能ドメインの性能状態を、1つ以上の性能状態のうちの第2の性能状態へ変更するように構成された、請求項1に記載の集積回路。前記第2の性能状態は、実際に前記プロセッサが低性能状態に入る前の第3の性能状態とは異なる、請求項2に記載の集積回路。前記少なくとも1つの性能ドメインはプロセッサを含む、請求項3に記載の集積回路。前記コントロール回路は、前記第1の性能状態への変更が完了する時間を指示する第1のタイムスタンプを記録するように構成され、そして前記コントロール回路は、前記第2の性能状態への変更が完了する時間を指示する第2のタイムスタンプを記録するように構成された、請求項2に記載の集積回路。実行されたときに、システムの複数のコンポーネントのアクティビティを監視し、それらのコンポーネントは、1つ以上の性能ドメインに含まれ、そしてシステムは、少なくとも1つのプロセッサを備え、前記システムの1つ以上の性能ドメインに対応する複数のレジスタを、その1つ以上の性能ドメインのうちの第1性能ドメインに対して第1性能状態を指示するようにプログラムし、前記システムは、プロセッサが低性能状態に入るのに応答して第1性能ドメインに対して第1性能状態を確立する、という複数のインストラクションを記憶するコンピュータアクセス可能な記憶媒体。前記複数のインストラクションは、複数のコンポーネントのうちの第1コンポーネントをアクチベートする要求に応答して実行され、前記アクティビティの監視は、前記第1コンポーネントのアクチベーションの指示を記録することを含む、請求項6に記載のコンピュータアクセス可能な記憶媒体。前記複数のインストラクションは、前記第1コンポーネントをデアクチベートする要求に応答して実行され、前記アクティビティの監視は、前記第1コンポーネントのデアクチベーションの指示を記録することを含む、請求項7に記載のコンピュータアクセス可能な記憶媒体。前記複数のインストラクションは、実行されたときに、前記システムの1つ以上の性能ドメインに対応する第2の複数のレジスタを、その第1性能ドメインに対して第2性能状態を指示するようにプログラムし、前記システムは、プロセッサが低性能状態を出るのに応答して第1性能ドメインに対して第2性能状態を確立する、請求項6に記載のコンピュータアクセス可能な記憶媒体。前記第1性能ドメインは、プロセッサを含み、そして前記第1性能状態は、前記プロセッサが低性能状態に入る前の前記第1ドメインの第3の性能状態とは異なる、請求項9に記載のコンピュータアクセス可能な記憶媒体。前記第1性能ドメインは、前記プロセッサが前記低性能状態にある時間中アクティブである1つ以上のコンポーネントに対応する、請求項6に記載のコンピュータアクセス可能な記憶媒体。複数の性能ドメインの1つに各々含まれる複数のコンポーネントと、前記複数の性能ドメインの各々に性能状態を確立するように構成された電力管理ユニットであって、プロセッサが異なる性能状態へ移行するのに応答して、少なくとも前記複数の性能ドメインのうちの第1性能ドメインを、電力管理ユニットへプログラムされた第1性能状態へと移行するように構成された電力管理ユニットと、を備えた装置。前記異なる性能状態は、スリープ状態であり、前記電力管理ユニットは、更に、プロセッサがスリープ状態を出るのに応答して、前記第1性能ドメインを、電力管理ユニットへプログラムされた第2性能状態へと移行するよう構成された、請求項12に記載の装置。前記電力管理ユニットは、プロセッサが異なる性能状態へ移行するのに応答して各々の性能ドメインを、電力管理ユニットへプログラムされた各電力状態へと移行するよう構成された、請求項12に記載の装置。前記異なる性能状態は、ウェイクアップ状態を含み、前記プロセッサは、スリープ状態から移行する、請求項12に記載の装置。前記異なる性能状態は、プロセッサがスリープ状態に入る前に動作していた以前の性能状態とは異なる、請求項15に記載の装置。プロセッサがシステムの低性能状態に入る段階と、電力管理ユニットが、システムの性能ドメインを、プロセッサが低性能状態にある時間中に動作するための第1性能状態へ移行させる段階であって、その第1の性能状態は電力管理ユニットにおいてプログラムできるものである段階と、前記システムの動作を監視するのに応答して前記第1性能状態を前記電力管理ユニットへプログラムするよう決定する段階と、を備えた方法。前記システムを監視し続ける段階と、前記監視し続けることに応答して第2の性能状態で前記電力管理ユニットを再プログラミングする段階と、を更に備えた請求項17に記載の方法。前記プロセッサが低性能状態を出ることを前記電力管理ユニットが検出する段階と、前記プロセッサが低性能状態を出るのに続いて動作するための第2性能状態へ前記電力管理ユニットが性能ドメインを更に移行させる段階であって、その第2の性能状態は前記電力管理ユニットにおいてプログラムする段階と、を更に備えた請求項18に記載の方法。前記第2性能状態は、前記プロセッサが低性能状態に入る前の前記性能ドメインの第3の性能状態とは異なる、請求項19に記載の方法。本発明は、種々の変更や代替え形態を受けるが、その特定の実施形態を添付図面に例示して以下に詳細に説明する。しかしながら、添付図面及びその詳細な説明は、ここに開示する特定の形態に本発明を限定するためのものではなく、逆に、特許請求の範囲に規定された本発明の精神及び範囲内に入る全ての変更、等効物及び代替え物を網羅するものとする。ここで使用する見出しは、編集上のものに過ぎず、説明の範囲を限定するのに使用されるものではない。本明細書全体にわたって使用される~してもよいという語は、強制的な意味即ち、~しなければならないを意味するのではなく、許可的な意味即ち、~する潜在性をもつという意味で使用される。同様に、含むという語も、含むことを意味するが、それに限定されない。種々のユニット、回路又は他のコンポーネントは、1つ又は複数のタスクを遂行するように構成されるものとして述べる。この点について、構成されるとは、動作中に1つ又は複数のタスクを遂行する回路を有することを一般的に意味する構造を広く表現するものである。従って、ユニット/回路/コンポーネントは、そのユニット/回路/コンポーネントが現在オンでなくても、タスクを遂行するように構成することができる。一般的に、構成されるに対応する構造を形成する回路は、ハードウェア回路を含む。同様に、種々のユニット/回路/コンポーネントは、説明の便宜上、1つ又は複数のタスクを遂行するものとして説明されてもよい。そのような説明は、構成されるという句を含むものと解釈されねばならない。1つ以上のタスクを遂行するように構成されたユニット/回路/コンポーネントを表現する場合に、そのユニット/回路/コンポーネントの解釈に関して35USC§112、第6節を引用しないことが明確に意図される。図1を参照すれば、システムの一実施形態のブロック図が示されている。図1の実施形態において、このシステムは、システムオンチップを形成する集積回路IC10と、電源12とを備えている。集積回路10は、性能ドメインperformancedomain14A-14Fのセットを含む。各性能ドメイン14A-14Fは、集積回路10の少なくとも1つのコンポーネントを含み、そして所与の性能ドメインは、2つ以上のコンポーネントを含んでもよい。例えば、図1の性能ドメイン14Aは、2つのコンポーネント、即ちプロセッサ16A及び別のコンポーネント18を含み、そして性能ドメイン14Eは、2つ以上の周辺装置24を含む。ここに示す実施形態では、性能ドメイン14Bは、任意の第2のプロセッサ16Bを含み、性能ドメイン14Cは、グラフィックユニット20を含み、性能ドメイン14Dは、オーディオユニット22を含み、性能ドメイン14Eは、ネットワーク周辺装置及び/又は他の周辺装置及び/又は周辺インターフェイスユニット24を含み、そして性能ドメイン14Fは、メモリコントローラ26を含む。又、集積回路10は、電力管理ユニットPMU281つ以上の性能構成レジスタ30を含むと、クロック/電圧コントロールユニット32も備えている。図1に示す種々のコンポーネントは、任意の望ましい形態で結合される。例えば、コンポーネント間には1つ以上のバス又は他のインターフェイスがある。PMU28及びクロック/電圧コントロールユニット32は、インターフェイスに結合されるのに加えて、種々のコンポーネントにも結合される。例えば、クロック/電圧コントロールユニット32は、コンポーネント図1には示さずにクロック信号を供給する。クロック/電圧コントロールユニット32は、電源12から1つ以上の供給電圧を要求するために電源12と通信するように構成される。電源12は、要求された電圧1つ又は複数を発生し、そして集積回路に電圧を供給する。PMU28は、種々の性能ドメイン14A-14Fに対する性能状態performancestate間の移行をコントロールするように構成される。特に、PMU28は、1つ以上のプロセッサ16A-16Bがスリープ状態に入るのに応答して又はプロセッサがスリープ状態に入るべきであるという決定に応答して、性能ドメイン14A-14Fの1つ以上を自動的に移行させるように構成される。又、PMU28は、プロセッサがスリープ状態を出るのに応答してプロセッサがスリープ状態を出るべきであるという決定に応答して、性能ドメイン14A-14Fの1つ以上を自動的に移行させるようにも構成される。スリープ状態を出ることは、プロセッサをウェイクさせるとも称される。プロセッサのスリープ状態及び他の状態は、プロセッサを含む性能ドメインの性能状態である。或いは又、スリープ状態及び他のプロセス状態は、プロセッサを含む性能ドメインに対する性能状態の性能特性である。性能ドメインは、性能構成目的のユニットとしてPMU28によりコントロールされる1つ以上のコンポーネントである。即ち、PMU28は、各性能ドメインのための対応する性能状態を確立するように構成され、又、各性能ドメインにおける性能状態間の移行をコントロールするように構成される。性能ドメインを形成するコンポーネントは、1つの性能状態から別の性能状態へ一緒に移行する。他方、異なる性能ドメインにおけるコンポーネントは、少なくともハードウェアの観点から、互いに独立しており、そして独立して決定された性能状態を有する。ある性能ドメインは、より高いレベルにおいて論理的にリンクされる例えば、ソフトウェアで。例えば、性能ドメイン18C-18Dは、ユーザがサウンドを含むビデオを見る場合に論理的にリンクされる従って、ビデオ画像を表示するためのグラフィックユニット20及びサウンドを送信するためのオーディオユニット22を使用して。性能状態は、対応する性能ドメインにおけるコンポーネントのための性能特性の組み合わせを含む。性能特性とは、コンポーネントのための構成可能な設定で、そのコンポーネントの性能に影響するものである。例えば、コンポーネントに与えられるクロック信号の動作周波数は、その性能に影響する。動作周波数が低いと、性能が低くなる。それに対応する供給電圧も、性能特性である。ある性能特性は、コンポーネントに特有である。例えば、種々のキャッシュのキャッシュサイズは、性能特性である。インターフェイスのデータ巾又は他のデータ転送レートパラメータは、性能特性である。並列に動作する多数の対称的ユニット例えば、プロセッサの実行ユニット、グラフィックユニットにおけるピクセルパイプライン又は他の画像処理パイプライン、等を含むコンポーネントは、アクティブな対称的ユニットの数に関して構成可能である。単位時間当たりに処理されるインストラクションプロセッサ、動作グラフィック又はオーディオ、通信ネットワーク又は他の周辺インターフェイス、又はメモリ要求メモリコントロールユニットの数は、性能特性である。カラーパレットのグラフィック分解能又はサイズ例えば、ピクセル当たりのビットは、性能特性である。オーディオ分解能及びサンプルレートは、性能特性である。メモリ帯域巾は、性能特性である。プロセッサのスリープ/ウェイク状態は、性能特性である。コンポーネント又はその一部分を電力ゲート化及び/又はクロックゲート化できる場合には、電力及び/又はクロックイネーブルが性能特性である。変更でき且つ性能に影響するパラメータは、種々の実施形態における性能特性である。性能ドメインにおける性能状態を変更すると、性能ドメインの電力消費に影響が及ぶ。動作周波数及び供給電圧を減少すると、電力消費に直接影響する。キャッシュサイズを減少すると、キャッシュの一部分がアクセスされないので、電力消費を減少し、そして未使用の部分がターンオフされる場合には、更に大きな減少が実現される。更に、キャッシュサイズが減少すると、キャッシュヒットレートが減少し、消費者に対するメモリ待ち時間が長くなる。メモリ待ち時間が長くなると、消費者の活動が減少し、電力消費を減少させる。インターフェイスにおけるデータ転送幅/レートが減少すると、スイッチングの減少により電力消費が減少する。更に、データを消費者へ供給するレートを下げると、消費者の活動が減少し、消費者の電力消費を減少させる。対称的ユニットにおける並列のアクティビティが低下すると、インストラクション又は他の動作発生レートが下がるので、アクティビティ低下により電力消費が減少する。グラフィック/オーディオ解像度及びカラーパレットが減少すると、画像又は単位サウンド当たりに転送されるデータの量が減少する。メモリ帯域巾が減少すると、単位時間当たりのメモリアクセスにおける電力消費が減少し、消費者の活動が低下する。ある実施形態では、性能状態は、性能特性の複数のインスタンスを含む。例えば、プロセッサがスリープ状態において電源オフされ、そして他のコンポーネントが同じ性能ドメインにある場合には、プロセッサの電圧が、アクティブのままである他のコンポーネントの電圧とは個別にセットされる。同様に、性能ドメイン内の2つ以上のコンポーネントに適用され且つそのようなコンポーネントに対して独立してコントロールされる他の性能特性は、性能状態における複数のインスタンスによって表される。プロセッサが他のコンポーネントと共に性能ドメインにある実施形態では、他のコンポーネントは、プロセッサがスリープ状態にある時間中アクティブのままとなる。例えば、性能ドメイン14Aのコンポーネント18は、プロセッサ16Aがスリープ状態にある時間中アクティブのままである。コンポーネントの性能特性は、プロセッサがスリープ状態にある間に減少動作を反映するように変更される。例えば、コンポーネント18は、プロセッサ16Aに結合されたレベル2L2キャッシュである。そのような実施形態では、L2キャッシュは、スリープ中のプロセッサ16Aによりアクセスされず、キャッシュコヒレンスを維持するためにアクティブのままとなる。L2キャッシュは、ある実施形態では、低いクロック周波数及び電圧で動作するが、キャッシュコヒレンスを保証するに充分な性能は依然与える。PMU28は、性能ドメインにおいて性能状態移行を生じさせるように構成された回路を含む。一実施形態において、PMU28は、プロセッサ16A-16Bがスリープ状態に入り/出ることを検出し、性能ドメインにおいてそれに対応する遷移を生じさせる。他の実施形態では、ソフトウェアがスリープ/ウェイクイベントをPMU28へ明確に通信する。一実施形態では、PMU28は、性能ドメインごとの性能構成でプログラム可能である。例えば、プロセッサがスリープ状態にあるときに性能ドメイン14A-14Fに使用されるべき性能状態は、性能構成レジスタ30に指定される。プロセッサ16A-16Bがスリープ状態を出るアウェイクするときに使用されるべき性能状態も指定される。いずれかのイベントが生じると、PMU28は、望ましい移行を生じさせる。電圧及びクロック周波数が変化する場合に、PMU28は、クロック/電圧コントロールユニット32へ新たな設定を通信する。クロック/電圧コントロールユニット32は、新たな設定を実施し、要求された周波数でクロックを発生し、そして電源12から望ましい供給電圧を要求する。クロック/電圧コントロールユニット32は、移行を安全に行うために必要に応じて変更を命令する。例えば、クロック周波数及び供給電圧が増加される場合には、先ず電圧を増加し、次いで、クロック周波数を増加するのが安全である。というのは、クロック周波数の増加は、回路が現在の低い供給電圧においてゆっくり動作している場合に誤った動作を招くことがあるからである。ある実施形態では、供給電圧の変化において経過する時間量は、クロック周波数を変化させる時間より実質的に長い。クロック周波数及び供給電圧が減少される場合には、先ずクロック周波数を減少する又はこのケースでは低い供給電圧の前に低いクロック周波数に達するので、周波数及び電圧を並列に減少してもよい。クロック/電圧コントロールユニット32は、望ましい供給電圧を要求するために電源12と通信する回路を含み、又、クロック発生回路を含む。例えば、クロック/電圧コントロールユニット32は、コンポーネントのクロックを発生するために、1つ以上の位相固定ループPLL、クロック除算器/乗算器、等を含む。集積回路10に含まれる種々のコンポーネントは、望ましい機能を実施することができる。一般的に、コンポーネントとは、集積回路における動作の特定セットを遂行するように定義された回路であって、集積回路内の他のコンポーネントと通信するための定義されたインターフェイスを有する回路を指す。図1に示すように、例示的コンポーネントは、プロセッサ16A-16B、コンポーネント18、グラフィックユニット20、オーディオユニット22、ネットワーク周辺装置及び他の周辺装置/周辺インターフェイス24複数のコンポーネントでもよい、及びメモリコントローラ26を含む。プロセッサ16A-16Bは、インストラクションセットアーキテクチャーを実施し、そしてそのインストラクションセットアーキテクチャーに定義されたインストラクションを実行するように構成される。マイクロアーキテクチャー実施が使用されてもよい例えば、秩序正しく、無秩序で、推論的に、非推論的に、スカラーで、スーパースカラーで、パイプライン的に、スーパーパイプライン的に、等。ある実施形態では、マイクロコーディング技術が、前記のいずれかとの組み合わせで使用される。上述したように、プロセッサ16A-16Bの性能状態は、スリープ状態を含む。スリープ状態では、プロセッサがアイドルであるインストラクションを実行しない。プロセッサへのクロックが停止される。ある実施形態では、スリープ状態においてプロセッサから電力が除去される。或いは又、2つ以上のスリープ状態があってもよい。スリープ状態の1つは、プロセッサをパワーダウンすることを含み、そして別のスリープ状態は、プロセッサへの電力を保持することを含む。更に、プロセッサは、少なくとも1つのアウェイク状態を含む。複数のアウェイク状態があってもよい。例えば、異なる供給電圧/動作周波数の組合せがサポートされてもよく、イネーブル実行ユニットの異なる組み合わせがサポートされてもよく、異なるインストラクション発生レートがサポートされてもよく、等々である。グラフィックユニット20は、例えば、ユーザが見るためのディスプレイ装置に画像を表示するのに伴う回路を含む。画像は、静止画像でもよいし、又はビデオの一部分でもよい。グラフィック20は、レンダリングハードウェア、リフレッシュディスプレイ装置のハードウェア、ビデオエンコーダ及び/又はデコーダ、ビデオ圧縮及び解凍ユニット、等を含む。オーディオユニット22は、システムにおいてサウンドを再生又は記録するのに伴う回路を含む。オーディオユニット22は、例えば、オーディオエンコーダ及び/又はデコーダ、デジタル信号プロセッサ、等を含む。ネットワーク周辺装置及び他の周辺装置24は、種々の回路を含む。例えば、ネットワーク周辺装置は、サポートされるネットワーク及び物理的レイヤ回路のためのメディアアクセスコントローラMACユニットを含む。他の周辺装置は、他の望ましい周辺装置を含み、及び/又は周辺コンポーネント相互接続PCI、PCIエクスプレスPCI、ファイアワイヤ、ユニバーサルシリアルバスUSB、等のオフチップ周辺インターフェイスをコントロールするように構成された周辺インターフェイスコントローラを含む。メモリコントローラ26は、ダイナミックランダムアクセスメモリ装置DRAM、同期DRAMSDRAM、倍データレートDDR、DDR2、DDR3、DDR4、等SDRAM、低電力DDRLPDDR2、等SDRAM、RAMBUSDRAMRDRAM、等のようなメモリ装置にアクセスするように構成される。一実施形態において、メモリコントローラ26は、前記メモリの1つ以上を含む1つ以上のメモリモジュール例えば、シングルインラインメモリモジュールSIMM、デュアルインラインメモリモジュールDIMM、等へインターフェイスするように構成される。従って、メモリコントローラ26は、メモリインターフェイスを経て通信し、集積回路10の他のコンポーネントからメモリ要求をキューイングし、そして他のコンポーネントと通信してメモリオペレーションを完了させるように構成される。図1に示す集積回路10の実施形態は、多数の性能ドメインを含むが、より多くの又はより少ない性能ドメインがサポートされてもよい。例えば、単一の性能ドメインがサポートされてもよいし、又は2つの性能ドメインがサポートされてもよい例えば、あるドメインは、プロセッサ16A-16Bを含み、そして別のドメインは、残りのコンポーネント18、20、22、24及び26を含む。1つ以上のプロセッサ16A-16Bが、コンポーネント18、20、22、24及び26のサブセットと共に性能ドメインに含まれる。性能ドメインと、それらのドメインに含まれたコンポーネントとの任意の組合せが種々の実施形態において実施される。集積回路10の他の実施形態は、他のコンポーネントを伴う又は伴わない図示されたコンポーネントのサブセット、他のコンポーネントとのスーパーセット、等を含めて、コンポーネントの他の組み合わせを含む。更に、ここに示す実施形態は、全て集積回路10に含まれたコンポーネント16A-16B、18、20、22、24及び26を示しているが、他の実施形態では、コンポーネントが2つ以上の集積回路として実施されてもよい。いかなるレベルの集積又は個別コンポーネントが使用されてもよい。図2は、性能構成レジスタ30の一実施形態を示すブロック図である。ここに示す実施形態では、レジスタ30は、レジスタセット30A、レジスタセット30B、及びレジスタセット30Cを含む。レジスタセット30Bは、各性能ドメインに対する並びにスリープ状態及びウェイク状態に対する構成を含む。従って、図示されたセットは、正の整数をnとすれば、n個までの性能ドメインをサポートする。所与の性能ドメインに対するスリープ状態は、プロセッサがスリープ状態に入ることに応答したドメインの性能状態を指示する。所与の性能ドメインに対するウェイク状態は、プロセッサがスリープ状態を出ることに応答したドメインの性能状態を指示する。ある実施形態では、レジスタ30Bは、対応する電力ドメインにおいて確立されるべき性能状態を定義する値を直接記憶する。このようなケースでは、プロセッサ16A-16Bのスリープ状態に対して集積回路10を準備するソフトウェアが、システムのアクティビティに基づいてスリープ状態及びそれに続くウェイク状態について各レジスタ30Bをプログラムする。ここに示す実施形態では、レジスタ30Bは、レジスタセット30A又は30Cに対するポインタを記憶し、ポインタが指すレジスタのセットは、そのレジスタに対応する性能ドメインに依存する。ある実施形態では、各性能ドメインに対して30A又は30Bと同様のレジスタセットがある。或いは又、同様の性能ドメインがレジスタセットを共有してもよい。例えば、プロセッサ性能ドメイン14A及び14Bが、変更され得る性能特性に関して同じである場合には、性能ドメイン14A-14Bは、同じレジスタセット30A又は30Cを共有する。各レジスタセット30A及び30Bは、それに対応する性能ドメインのための性能状態構成を記憶する。従って、ソフトウェアは、レジスタセット30A又は30Cにおける性能状態のセットをプログラムし、次いで、プロセッサのスリープ移行及びプロセッサのウェイク移行の両方に対する適当な性能状態を、プロセッサがスリープ状態へ移行する前に選択する。この選択は、レジスタ30Bにおいて性能ドメインに対応する各レジスタにポインタを書き込むことによって行われる。従って、性能状態は、各スリープ状態移行の前にシステムのアクティビティに基づいて動的に変更される。プロセッサのウェイク状態に対する性能状態構成を与えることで、種々の性能ドメインは、プロセッサがスリープ状態に入る前に性能ドメインの性能状態とは異なる性能状態へ自動的に移行することが許される。従って、例えば、プロセッサがアウェイクするときに遂行される動作をソフトウェアで予想できる場合には、ウェイク性能状態が、プロセッサがスリープ状態へ移行する前の性能状態とは異なる場合でも、それらの動作に対して望まれる性能状態が確立される。ある実施形態では、レジスタ30Bは、対応する性能ドメインにおいて移行を生じさせるべきかどうか指示するのに使用される有効ビット又は他の指示を含む。従って、所与の性能状態において常に最も効率の高い性能ドメインは、有効ビットをクリアすることにより変更されないままとされる。又は、ディスエイブルされた性能ドメインは、性能ドメイン移行中にイネーブルされることが防止される。又、レジスタ30Bは、スリープ移行が始まることを指示するためにソフトウェアにより書き込まれるレジスタも含む。PMU28は、スリープコマンドレジスタへの更新を監視するように構成され、そしてプロセッサのスリープ移行及び種々の他の性能ドメイン状態移行を遂行するように構成される。或いは又、ソフトウェアは、プロセッサインストラクション実行メカニズムを使用して、プロセッサがスリープ状態に入るようにさせ、そしてPMU28は、他の性能ドメイン状態移行を遂行するように構成される。又、PMU28は、プロセッサをウェイクアップさせる割り込み又は他のイベントを監視して、性能状態を出るための性能状態移行を遂行するようにも構成される。ある実施形態では、PMU28は、プロセッサ動作を監視して、プロセッサがスリープ状態に入るのを自動的に検出するようにも構成される例えば、プロセッサがスリープコマンドレジスタにコマンドを書き込まずに。あるケースでは、1つ以上の性能ドメインが、マルチプロセッサ構成の特定のプロセッサとより厳密にリンクされる。そのようなケースでは、密接にリンクされた性能ドメインは、それに対応するプロセッサがスリープ状態に入るのに応答して異なる性能状態へ移行するが、依然アクティブなプロセッサに密接にリンクされた他の性能ドメインは、移行しない。性能ドメイン移行は、PMU28によりハードウェアコントロールされるか、又は上述した性能構成レジスタにおける有効指示を使用してソフトウェアコントロールされる。或いは又、移行は、最後のプロセッサがスリープ状態に入るときに他のプロセッサが既にスリープ状態にある間に遂行され、そしてスリープ状態から出る移行は、最初のプロセッサがスリープ状態を出るときに例えば、外部の割り込みに応答して遂行される。セット30Aは、種々の性能状態構成を記憶する正の整数をmとすれば、m個までの構成。従って、例えば、セット30Aの種々のレジスタは、性能ドメイン0PD0に対する電圧V0、V1、動作周波数F0、F1、及び/又は他の性能状態情報を記憶する。又、レジスタセット30Cは、性能ドメインnに対する種々の性能状態構成を記憶する正の整数をpとすれば、p個までの構成。整数m、m及びpは、同じである必要はない。ある実施形態では、集積回路は、ある電圧、クロック周波数の対をサポートする例えば、所与のクロック周波数で動作するための最小供給電圧がある。レジスタ30B及び30Cにおける電圧及びクロック周波数構成は、最小供給電圧に違反しないが、あるケースでは、最小以外の供給電圧を使用することが望まれる。例えば、第1のクロック周波数は、プロセッサがスリープ状態を出るときに性能ドメインを戻すための正しい周波数であるとソフトウェアが予想するが、その予想が間違った場合に、より高いクロック周波数が正しい設定である場合には、レジスタ30B及び30Cの対応電圧は、より高い周波数に対して使用される電圧である。このように、予想周波数が間違った場合には、供給電圧を望ましい大きさに予めセットすることができ、予想ミスが生じたときに性能状態を修正するための調整を行う遅延を短縮することができる。図3は、プロセッサがスリープ状態に入るとき又は出るときに性能ドメインにおける性能状態移行を管理するためのPMU28及びクロック/電圧コントロールユニット32の一実施形態の動作を示すフローチャートである。理解を容易にするために特定の順序でブロックが示されているが、他の順序が使用されてもよい。ブロックは、PMU28及び/又はクロック/電圧コントロールユニット32の組み合わせロジックにおいて並列に遂行されてもよい。ブロック、ブロックの組み合わせ、及び/又はフローチャートは、全体として、複数のクロックサイクルにわたりパイプライン化されてもよい。特に、判断ブロック40及び48は、独立したものであり、並列に又はいずれかの順序で遂行されてもよい。PMU28及び/又はクロック/電圧コントロールユニット32は、図3に示す動作を実施するように構成される。PMU28は、プロセッサがスリープ状態に入ること又は入ろうとしていることを検出し、又はある実施形態においてプロセッサセットの最後のプロセッサがスリープ状態に入るが他のプロセッサはスリープ状態にあることを検出する判断ブロック40イエス岐路。種々の実施形態において、この検出は、スリープコマンドレジスタ等でコマンドを受け取ることを経て、プロセッサ16A-16Bを監視することにより、行われる。PMU28は、性能構成レジスタ30から各性能ドメインのためのスリープ性能状態をロードするブロック42。ある実施形態では、レジスタ30における性能状態が有効であるかどうかの指示は、性能状態がロードされたかどうか検証する。性能状態が、供給電圧及び/又はクロック周波数変化を含む場合には、PMU28は、電圧/周波数を指定する値をクロック/電圧コントロールユニット32へ供給する。性能状態が他の変化例えば、キャッシュサイズの変化、インターフェイスサイズの変化、等を含む場合には、PMU28は、その変化をそれに対応するコンポーネントへ送信する。PMU28及び/又はクロック/電圧コントロールユニット32は、性能ドメインを新たな性能状態へ移行させるブロック44。供給電圧の変化は、電源12へ送信され、そして新たな電圧に安定する時間が与えられる。クロック周波数の変化は、クロック/電圧コントロールユニット32のクロック発生回路へとプログラムされ、そして新たな周波数に安定する時間が必要に応じて与えられる例えば、PLLが新たな周波数にロックするための時間。他の変化については、コンポーネントは、新たな状態に切り換わるように信号される。変更を実施するために例えば、ディスエイブルされたキャッシュの一部分をフラッシュするか、巾を変更したインターフェイスのコンポーネントをリセットする、等時間が必要である場合には、そのような時間が与えられる。一実施形態において、PMU28は、性能状態の移行が完了した時間を指示するタイムスタンプを記録する例えば、タイムスタンプを専用に記憶する性能構成レジスタ30に。例えば、システムで実施される電力節約手段の有効性を決定する統計学的分析のためにタイムスタンプをソフトウェアで捕獲する。タイムスタンプは、望ましい形態で捕獲される。例えば、システムは、規則的な間隔でインクリメント又はデクリメントされる自走式カウンタを含む。システムは、カウンタの値をタイムスタンプとして捕獲する。PMU28は、プロセッサがスリープ状態を出ること又はスリープ状態を出ようとしていることを検出する判断ブロック48イエス岐路。種々の実施形態において、この検出は、プロセッサ16A-16Bを監視する、等により行われる例えば、プロセッサの1つに与えられる割り込みを検出する。PMU28は、性能構成レジスタ30から各性能ドメインのためのウェイク性能状態をロードするブロック50。スリープ性能状態をロードすることに関する前記判断と同様に、新たな性能状態構成を実施するために種々の通信が行われる。PMU28及び/又はクロック/電圧コントロールユニット32は、性能ドメインを新たな性能状態へ移行しブロック52、そして移行が完了したときにタイムスタンプを記録するブロック54。プロセッサはタイムスタンプ捕獲とタイムスタンプ捕獲との間はスリープであるから、両タイムスタンプをソフトウェアで捕獲できるように、ウェイクのためのタイムスタンプは、スリープのために記録されるタイムスタンプとは異なるレジスタに記録される。図4は、システムの一実施形態において具現化されるソフトウェア構造を示すブロック図である。ソフトウェアは、1つ以上のアプリケーションプログラムApps、オペレーティングシステムOS、及び種々の他のソフトウェア60を含む。このソフトウェア60は、システムのコンポーネントを使用するときに種々のドライバと対話する。例えば、グラフィックドライバ62は、グラフィックユニット20のために使用され、オーディオドライバ64は、オーディオユニット22のために使用され、ネットワークドライバ66は、ネットワーク周辺装置24のために使用され、他の周辺装置ドライバ68は、他の周辺装置24のために使用され、そしてPMUドライバ70は、PMU28のために使用される。従って、ソフトウェア60がグラフィックユニット20と通信する場合に、ソフトウェア60は、グラフィックドライバ62、等をコールする。ドライバの各々は、それに対応するコンポーネントと通信する。更に、ドライバ62、64、66及び68の各々は、PMUドライバ70と通信する。PMUドライバ70は、装置アクティビティテーブル72においてドライバ62、64、66及び68により駆動されるコンポーネントのアクティビティを監視する。監視されるアクティビティは、対応コンポーネントをイネーブル及びディスエイブルすることを含む。監視されるアクティビティは、更に、ユニットの他の性能特性に対する変化を含む。監視されるアクティビティに基づき、PMUドライバ70は、性能構成レジスタ30のスリープ及びウェイク構成において使用される各性能ドメインに対する性能状態を選択する。更に、選択された性能状態にも影響する他の情報が装置アクティビティテーブルへコード化される例えば、プロセッサがスリープ状態にあるときの種々のコンポーネントの必要な性能。又、ソフトウェア60は、PMUドライバ70と直接通信する。例えば、プロセッサにおいてスリープ及びウェイク移行に対して遂行される自動的な性能状態移行に加えて、ソフトウェア60は、全体的にシステムのアクティビティに基づいて性能状態を直接変更する。即ち、プロセッサがスリープ状態へ進まない場合も、1つ以上の性能ドメインの性能状態を変更することが望ましい。ソフトウェア60は、そのような変更を直接要求する。図5は、PMUドライバ70の一実施形態の動作を示すフローチャートである。PMUドライバ70は、システムで実行されたときに、フローチャートに記載した動作を実施するインストラクションを含む。理解を容易にするためにブロックは特定の順序で示されているが、他の順序を使用してもよい。コンポーネントドライバ62、64、66又は68が装置イネーブル又はディスエイブル要求を受信する場合に、ドライバは、その要求をPMUドライバ70へ送信する。PMUドライバ70は、その要求を受信し、そして判断ブロック80イエス岐路イネーブル又はディスエイブルイベントを装置アクティビティテーブル72に記録するブロック82。ある実施形態では、PMUドライバ70は、装置のイネーブル又はディスエイブルを遂行する。他の実施形態では、対応するコンポーネントドライバは、イネーブル/ディスエイブルを遂行し、そしてイベントを記録するためにPMUドライバ70をコールする。ある実施形態では、PMUドライバ70は、所与のコンポーネントにおける他のイベントを監視する。コンポーネントドライバも、それらのイベントをPMUドライバ70に通信する。そのようなイベントを受信すると判断ブロック84イエス岐路、PMUドライバ70は、そのイベントを装置アクティビティテーブルに記録するブロック82。PMUドライバ70は、1つ以上の性能ドメインに対する性能状態の変更を遂行すべきであることを装置アクティビティテーブル72に記録されたイベントが指示するかどうか決定する。更に、ソフトウェア60は、1つ以上の性能ドメインにおける変更を直接要求する。いずれの場合にも判断ブロック86イエス岐路、PMUドライバ70は、性能状態変更のための対応するハードウェアコンポーネントを準備し例えば、新たな性能特性を通信し-ブロック88、そして移行を呼び出すブロック90。従って、ブロック88及び90は、1つ以上の性能ドメインに対するソフトウェアコントロールの性能状態移行を表わす。PMUドライバ70は、更に、プロセッサがスリープ状態に入る準備をしていることを検出する判断ブロック92イエス岐路。PMUドライバ70は、少なくとも装置アクティビティテーブル72の一部分に基づいて性能ドメインのための望ましいスリープ及びウェイク状態を決定するブロック94。PMUドライバ70は、必要に応じて、性能状態を選択するために性能構成レジスタ30を更新しブロック96、そして性能状態移行を生じさせるためにPMU28にスリープコマンドを送信する例えば、PMU28のスリープコマンドレジスタに書き込みするブロック98。他の実施形態では、スリープ状態に入るプロセッサが直接検出され、その検出に基づいて性能状態移行が生じるようにされる。そのような実施形態では、ブロック98が排除される。従って、ブロック94及び96は、プロセッサにおけるスリープ及びウェイク状態移行の両方に対して、性能ドメインのための性能状態でPMU28をプログラミングすることを表わす。システム及びコンピュータアクセス可能な記憶媒体図6は、システム150の一実施形態のブロック図である。ここに示す実施形態では、システム150は、1つ以上の周辺装置154及び外部メモリ158に結合された集積回路10図1の少なくとも1つのインスタンスを備えている。集積回路10に供給電圧を供給すると共に、メモリ158及び/又は周辺装置154に1つ以上の供給電圧を供給する電源156も設けられている。この電源156は、例えば、図1に示された電源12を含む。ある実施形態では、集積回路10の2つ以上のインスタンスが含まれるそして2つ以上の外部メモリ158も含まれる。周辺装置154は、システム150の形式に基づいて望ましい回路を含む。例えば、一実施形態では、システム150は、移動装置例えば、パーソナルデジタルアシスタントPDA、スマートホン、等を含み、そして周辺装置154は、WiFi、Bluetooth登録商標、セルラー、グローバルポジショニングシステム、等の種々の形式のワイヤレス通信のための装置を含む。又、周辺装置154は、RAM記憶装置、ソリッドステート記憶装置、又はディスク記憶装置を含めて、付加的な記憶装置も含む。更に、周辺装置154は、タッチディスプレイスクリーン又はマルチタッチディスプレイスクリーンを含むディスプレイスクリーン、キーボード又は他の入力装置、マイクロホン、スピーカ、等のユーザインターフェイス装置を含む。他の実施形態では、システム150は、任意の形式のコンピューティングシステム例えば、デスクトップパーソナルコンピュータ、ラップトップ、ワークステーション、ネットトップ、等である。外部メモリ158は、任意の形式のメモリを含む。例えば、外部メモリ158は、SRAM、ダイナミックRAMDRAM、例えば、同期DRAMSDRAM、倍データレートDDR、DDR2、DDR3、等SDRAM、RAMBUSDRAM、等である。外部メモリ158は、メモリ装置がマウントされる1つ以上のメモリモジュール、例えば、シングルインラインメモリモジュールSIMM、デュアルインラインメモリモジュールDIMM、等を含む。図7は、コンピュータアクセス可能な記憶媒体200のブロック図である。一般的に述べると、コンピュータアクセス可能な記憶媒体は、コンピュータにインストラクション及び/又はデータを与えるために使用中にコンピュータによりアクセスできる記憶媒体を含む。例えば、コンピュータアクセス可能な記憶媒体は、磁気又は光学媒体のような記憶媒体、例えば、ディスク固定又は取り外し可能、テープ、CD-ROM、DVD-ROM、CD-R、CD-RW、DVD-R、DVD-RW、又はBlu-Rayを含む。記憶媒体は、更に、揮発性又は不揮発性メモリ媒体、例えば、RAM例えば、同期ダイナミックRAMSDRAM、RambusDRAMRDRAM、スタティックRAMSRAM、等、ROM、フラッシュメモリ、不揮発性メモリ例えば、フラッシュメモリを含み、これらは、ユニバーサルシリアルバスUSBインターフェイス、フラッシュメモリインターフェイスFMI、シリアル周辺インターフェイスSPI、等の周辺インターフェイスを経てアクセスできるものである。記憶媒体は、マイクロエレクトロメカニカルシステムMEMSを含むと共に、ネットワーク及び/又はワイヤレスリンクのような通信媒体を経てアクセスできる記憶媒体を含む。図7のコンピュータアクセス可能な記憶媒体200は、ソフトウェア60、グラフィックドライバ62、オーディオドライバ64、ネットワークドライバ66、他の周辺ドライバ68、PMUドライバ70、及び/又は装置アクティビティテーブル72の1つ以上を記憶する。PMUドライバ70は、実行時に、図5を参照して上述した動作を実施するインストラクションを含む。一般的に、コンピュータアクセス可能な記憶媒体200は、実行時に、図5に示す動作の一部分又は全部を実施するインストラクションのセットを記憶する。キャリア媒体は、コンピュータアクセス可能な記憶媒体や、ワイヤード又はワイヤレス送信のような送信媒体を含む。当業者であれば、以上の開示を完全に理解すると、種々の修正や変更が明らかとなろう。そのような修正や変更は、全て、特許請求の範囲に網羅されるものとする。