"各々がそれぞれのブロックの活動レベルに応じてデータを生成するように構成された、1つまたは複数の機能ブロックと、前記データに少なくとも一部基づき、前記1つまたは複数の機能ブロックのうちの1つの機能ブロックに対して、所与の時間間隔中に平均電力消費を決定し、前記平均電力消費が所望の電力消費を超えているという判断に応じて、現在の電力性能状態P状態よりも低いP状態を選択し、前記平均電力消費値が前記所望の電力消費より少ないという判断に応じて、現在のP状態よりも高いP状態を選択するように構成された電力マネージャと、を備えるコンピューティングシステム。前記所望の電力消費が、前記より高いP状態よりも低く、かつ前記より低いP状態よりも高い、仮想P状態に対応し、前記電力マネージャが、前記より高いP状態または前記より低いP状態のいずれかよりも前記所望の電力消費にもっと厳密に一致する平均電力消費を長い期間をかけて生成するために、前記より高いP状態および/またはより低いP状態を交互に選択するように構成された、請求項1に記載のコンピューティングシステム。前記電力マネージャが、前記平均電力消費が前記所望の電力消費を、少なくとも、ゼロよりも大きい絶対値をもつ第1の変化量だけ超えているという判断にさらに応じて、前記より低いP状態を選択し、前記平均電力消費が前記所望の電力消費を、少なくとも、ゼロよりも大きい絶対値をもつ第2の変化量だけ下回っているという判断にさらに応じて、前記より高いP状態を選択するように構成された、請求項1に記載のコンピューティングシステム。前記所望の電力消費が、前記1つまたは複数の機能ブロックに対する熱設計電力に対応する、請求項3に記載のコンピューティングシステム。前記電力マネージャが、対応する閾値に達する率に基づき、前記現在のP状態から2状態以上離れたP状態を選択するようにさらに構成された、請求項2に記載のコンピューティングシステム。新しいP状態を選択する前に、前記電力マネージャが、前記1つまたは複数の機能ブロックが所与の期間、現在のP状態で動作していることを判断するようにさらに構成された、請求項1に記載のコンピューティングシステム。前記電力マネージャが、前記所望の電力消費と複数の機能ブロックの電力消費値との間で、長い期間をかけて、符号付き累算差分を決定し、前記符号付き累算差分が、ゼロよりも大きい絶対値をもつ第1の変化量より大きいという判断にさらに応じて、前記低いP状態を選択し、前記符号付き累算差分が、絶対値がゼロよりも大きい第2の変化量より少ないという判断にさらに応じて、前記より高いP状態を選択するようにさらに構成された、請求項1に記載のコンピューティングシステム。前記時間間隔がN個の機能ブロックサンプル間隔の最大カウントを含み、前記電力マネージャが、前記符号付き累算差分の符号が変わったか、または前記カウントがNに達したかの検出に応じて、どちらが最初に起こったかにより、前記カウントをリセットするようにさらに構成された、請求項7に記載のコンピューティングシステム。安定した仮想動作点を作成するために複数の離散動作点を管理するための方法であって、1つまたは複数の機能ブロックの活動レベルに応じてデータを生成することと、前記データに少なくとも一部基づき、前記1つまたは複数の機能ブロックのうちの1つの機能ブロックに対して、所与の時間間隔中に平均電力消費を決定することと、前記平均電力消費が所望の電力消費を超えているという判断に応じて、現在の電力性能状態P状態よりも低いP状態を選択することと、前記平均電力消費値が前記所望の電力消費よりも少なくとも第2の変化量だけ少ないという判断に応じて、現在のP状態よりも高いP状態を選択することとを含む方法。前記所望の電力消費値が、前記より高いP状態よりも低く、かつ前記より低いP状態よりも高い、仮想P状態に対応し、前記方法が、前記より高いP状態または前記より低いP状態のいずれかよりも前記所望の電力消費レベルにもっと厳密に一致する平均電力消費レベルを長い期間をかけて生成するために、前記より高いP状態および/またはより低いP状態を交互に選択することをさらに含む、請求項9に記載の方法。前記平均電力消費が前記所望の電力消費を、少なくとも、ゼロよりも大きい絶対値をもつ第1の変化量だけ超えているという判断にさらに応じて、前記より低いP状態を選択することと、前記平均電力消費が前記所望の電力消費を、少なくとも、ゼロよりも大きい絶対値をもつ第2の変化量だけ下回っているという判断にさらに応じて、前記より高いP状態を選択することとをさらに含む、請求項9に記載の方法。前記所望の電力消費値が、前記1つまたは複数の機能ブロックに対する熱設計電力に対応する、請求項11に記載の方法。対応する閾値に達する率に基づき、前記現在のP状態から2状態以上離れたP状態を選択することをさらに含む、請求項10に記載の方法。新しいP状態を選択する前に、前記方法が、前記1つまたは複数の機能ブロックが所与の期間、前記現在のP状態で動作していることを判断することをさらに含む、請求項9に記載の方法。前記所望の電力消費値と複数の機能ブロックの電力消費値との間で、長い期間をかけて、符号付き累算差分を決定することと、前記符号付き累算差分が、ゼロよりも大きい絶対値をもつ第1の変化量より大きいという判断にさらに応じて、前記より低いP状態を選択することと、前記符号付き累算差分が、絶対値がゼロよりも大きい第2の変化量より少ないという判断にさらに応じて、前記より高いP状態を選択することとをさらに含む、請求項9に記載の方法。前記時間間隔がN個の機能ブロックサンプル間隔の最大カウントを含み、前記方法が、前記符号付き累算差分の符号が変わったか、または前記カウントがNに達したかの検出に応じて、どちらが最初に起こったかにより、前記カウントをリセットすることをさらに含む、請求項15に記載の方法。安定した仮想動作点を作成するために複数の離散動作点を管理するように機能するプログラム命令を格納するコンピュータ可読記憶媒体であって、前記プログラム命令が、1つまたは複数の機能ブロックの活動レベルに応じてデータを生成し、前記データに少なくとも一部基づき、前記1つまたは複数の機能ブロックのうちの1つの機能ブロックに対して、所与の時間間隔中に平均電力消費を決定し、前記平均電力消費が所望の電力消費を超えているという判断に応じて、現在の電力性能状態P状態よりも低いP状態を選択し、前記平均電力消費値が前記所望の電力消費値よりも少なくとも第2の変化量だけ少ないという判断に応じて、現在のP状態よりも高いP状態を選択するために実行可能な、記憶媒体。前記所望の電力消費値が、前記より高いP状態よりも低く、かつ前記より低いP状態よりも高い、仮想P状態に対応し、前記方法が、前記より高いP状態または前記より低いP状態のいずれかよりも前記所望の電力消費レベルにもっと厳密に一致する平均電力消費レベルを長い期間をかけて生成するために、前記より高いP状態および/またはより低いP状態を交互に選択することをさらに含む、請求項17に記載の記憶媒体。前記プログラム命令が、前記平均電力消費が前記所望の電力消費を、少なくとも、ゼロよりも大きい絶対値をもつ第1の変化量だけ超えているという判断にさらに応じて、前記より低いP状態を選択し、前記平均電力消費が前記所望の電力消費を、少なくとも、ゼロよりも大きい絶対値をもつ第2の変化量だけ下回っているという判断にさらに応じて、前記より高いP状態を選択するためにさらに実行可能な、請求項17に記載の記憶媒体。新しいP状態を選択する前に、前記プログラム命令が、前記1つまたは複数の機能ブロックが所与の期間、前記現在のP状態で動作していることを判断するためにさらに実行可能な、請求項19に記載の記憶媒体。安定した仮想動作点を作成するために複数の離散動作点を管理するためのシステムおよび方法が検討される。一実施形態では、プロセッサは、いくつかの機能ブロックおよび電力マネージャを含む。機能ブロックの各々は、それぞれの機能ブロックに関連した活動レベルに対応するデータを生成する。電力マネージャは、所与のサンプル間隔ごとに一度、そのデータに基づいて電力消費値を決定する。さらに、電力マネージャは、所与の電力目標と電力消費値との間で、長い期間をかけて符号付き累算差分を決定する。一実施形態では、電力目標は、プロセッサに対する熱設計電力TDP:thermaldesignpowerに対応し得る。様々な実施形態では、非生産的なP状態遷移を回避するために、ヒステリシスが使用され得る。かかる実施形態では、電力マネージャは、符号付き累算差分が、負の閾値よりも所与の変化量以上少ない場合、現在のP状態よりも低い電力性能状態P状態を選択する。符号付き累算差分が、正の閾値よりも所与の変化量以上大きい場合、電力マネージャは、現在のP状態よりも高いP状態を選択する。別のP状態への遷移が許可される前に、あるP状態での最低限の滞在が必要とされ得る実施形態が検討される。これらおよび他の実施形態は、以下の説明および図を参照すると、さらに理解されるであろう。本発明は、様々な修正および代替形態の影響を受けやすいが、特定の実施形態が例として図に示され、本明細書で詳述される。しかし、図およびそれらの詳細な説明は、本発明を開示した特定の形態に制限することを意図するものではなく、それとは逆に、本発明は、添付の特許請求の範囲によって定義されるように、本発明の精神および範囲に含まれる全ての修正、相当物および代替手段をカバーすることが理解されるべきである。以下の説明では、本発明の完全な理解を提供するために、多数の具体的詳細が明記されている。しかし、当業者は、これらの具体的詳細なしでも本発明が実施され得ることを認識すべきである。いくつかの場合には、本発明を分かり難くするのを回避するために、周知の回路、構造、および技術が詳細には示されていない。図1を参照すると、半導体チップに対する電力性能状態遷移100の一実施形態が示されている。2本の曲線が、電力対電圧と周波数対電圧との間の非線形例えば、三次または二次関係を示す図に示されている。5つの離散電力性能状態P状態が、P0~P4として図に示されている。図を簡略化するため、少数の離散P状態を示す。5つの離散P状態のみを示しているが、他の数の離散P状態もサポートされ得る。図に示すように、P状態P4は、サポートされる全離散状態のうちの最低性能の離散状態に対応し得、最低の動作周波数を含む。さらに、P状態P4は、サポートされる全離散状態のうちの最低電力消費の離散状態に対応し得、最低の動作電圧を含む。他方、P状態P0は、サポートされる全離散状態のうちの最高性能の離散状態に対応し得、最高の動作周波数を含む。さらに、P状態P0は、サポートされる全離散状態のうちの最高電力消費の離散状態に対応し得、最高の動作電圧を含む。通常、P状態P0およびP4によって表される終点離散状態は、予測可能な性能の範囲を定義する。従って、非線形の周波数対電圧曲線に沿って、複数のP状態または動作点をサポートするようにプロセッサを構成すると、プロセッサなどの半導体チップに対して、安定した、電力の最適利用および性能の供給を提供し得る。P状態の管理は、元々はIntelCorp.、MicrosoftCorp.、および株式会社東芝によって開発された、電力制御インタフェースACPI規格などの業界標準に準拠し得る。図に示すように、電力目標1所望の電力消費レベルが、チップに対して選択され得る。一実施形態では、選択した電力目標1が、そのチップの熱設計電力TDPに対応し得る。熱設計電力TDPは、熱設計点thermaldesignpointとも呼ばれ得、コンピュータ内の冷却システムが散逸することができる最大電力量を表す。ラップトッププロセッサ用の冷却システムは、20ワットTDPに合わせて設計され得る。従って、その冷却システムは、プロセッサ内でトランジスタに対する最高接合部温度を超えることなく、20ワットを散逸することができるということが決定されている。TDP値は、チップを製造する半導体メーカーによって異なり得る。例えば、あるメーカーは、TDP値を、所与の最悪の場合の温度条件下で、既定の電圧レベルで測定した電力値として定義し得る。別のメーカーは、チップが通常のアプリケーション対高電力のウィルスアプリケーションを実行するので、TDP値を、所与の間隔に渡って測定した最大電力値として定義し得る。別の測定定義も可能であり検討される。一実施形態では、ダイ102のプレシリコンpre-siliconモデル上で実行される電力モデルが、電力測定を実行し得る。設計段階の後半で、電力測定は、テスト段階およびデバッグ段階中に、実際の製造されたシリコンダイ上で実行され得る。一実施形態では、チップに対するピーク電力値が、コア上で高電力アプリケーションを実行するチップの機能的な不具合によって定義され得る。TDP値は、通常、ピーク電力値よりも低い。TDP値は、ビニングbinning目的のため、チップの動作電圧および動作周波数を設定するために使用され得る。図1の値電力目標1は、割り当てられたTDP値を表し得る。図1に示すように、電力目標1は、電力対電圧の非線形曲線上のデータ点Aに対応する。データ点Aは、動作電圧V2に対応する。動作電圧V2に関して、非線形の周波数対電圧曲線上のデータ点Aを突き出ると、データ点A ́が提供される。データ点A ́は、動作周波数F2に対応する。動作電圧V2と動作周波数F2の組合わせによって表される動作点は、チップに対して、電力の最適利用および性能の供給を提供し得る。前述し、図に示すように、電力目標1に対する動作点は、データ点A ́によって識別される。しかし、この動作点は、電力対周波数曲線上の離散P状態によって表されない。データ点A ́は、P状態P1とP2との間に位置する。電力消費を削減するため、P状態P2は、対応するチップに対する最初の動作点として選択され得る。動作電圧V1と動作周波数F1の対応する組合わせは、結果として選択された動作点であり得る。この動作点は、値電力目標1より低い電力消費値に対応する。値電力P2は、P状態P2に対応する動作点の低い電力消費値を示す。プロセッサなどのチップは、最初に割り当てられたP状態を利用して、i作業負荷が著しく変化して、報告された活動レベルにおいて著しい変化を引き起こすか、またはii電力モニタリングソフトウェアもしくはファームウェアによって調整されているような、最初のTDP値が変化して、図に示す電力目標値を変更するかのいずれかまで、作業負荷の処理を継続し得る。例えば、プロセッサが、やがて所与の時点で半分になる作業負荷に対する命令を実行している場合、結果として生じる全ての引き出された電流および熱エネルギーは著しく削減されるであろう。一実施形態では、当プロセッサ内に配置され得る、電力マネージャは、この状態を検出し得、それに応じて、より高い電力性能動作点に対応する異なるP状態を選択し得る。例えば、電力マネージャは、現在のP状態P2をより高い性能のP状態P1に増大つまりブーストすることを決定し得る。議論を進めるために、より高い性能のP状態は、より小さい数字をもち得る。例えば、P0は、P1より高い電力性能状態を表し得る。しかし、指定は、P0が、P1より低い電力性能状態を表すために使用されるように、逆にできる。指定のために選択されたアプローチは、単に好みの問題であり得る。P状態のスロットルは、現在選択されているP状態を1つまたは複数のP状態だけ、低い電力消費のP状態に下げることを含む。P状態のブーストは、現在選択されているP状態を1つまたは複数のP状態だけ、高い性能のP状態に高めることを含む。P状態P2のスロットル調整は、現在選択されているP状態P2をより低い電力性能状態P3へ遷移することを含む。一例としてのP状態P2など、所与のP状態のブーストおよびスロットル調整の単純な図を図1に示す。いくつかの実施形態では、各ブースト操作および各スロットル操作は、論理回路がこの追加された複雑さをサポートする場合、現在選択されているP状態を2つ以上のP状態だけ、遷移させ得る。P状態遷移は、プロセッサ内の論理回路によって制御され得、従って、自己完結システムである。しかし、プロセッサまたはプロセッサの外部に配置されたラックコントローラ上で実行する電力管理ソフトウェアは、プロセッサに対するTDP値を変更し得、それは、図における電力目標値を変える。図1においてP状態P2によって示される動作点は、電力目標1値よりも少ない電力を消費するが、P2によって示される動作点は、性能もより低い。測定された活動レベルにおいて著しい変化が生じるまで、より低い性能のP状態を維持するよりもむしろ、プロセッサは、現在の作業負荷に対して平均的な仮想動作点を達成するために、2つの離散P状態間でトグルで切り換え得る。例えば、電力マネージャは、P状態P1へブーストする前に、同一の作業負荷に対してP状態P2を利用する時間を決定し得る。同様に、電力マネージャは、P状態P2へスロットルする前に、同一の作業負荷に対してP状態P1を利用する時間を決定し得る。このプロセスは、作業負荷が著しく変化するまで何度も起こり得る。動作電圧および周波数に加えて、特定のP状態で費やした時間の平均は、図1においてデータ点A ́によって表される仮想動作点をプロセッサが利用していた結果をもち得る。かかる方法は、任意の電力制限設定を有する柔軟な電力管理が、任意の作業負荷に対して、安定した仮想動作点または仮想P状態を、既存の離散P状態上に構築することにより、達成できるようにする。ここで図2を参照すると、コア電力管理システム200の一実施形態が示されている。長期間にわたる動作電圧210および測定された活動レベル220に対する変化が示されている。さらに、電力目標235および平均電力対電力目標比率230が長期間にわたって示されている。図2に示すように、活動レベルが著しい変化を経験する場合および活動レベルが一定の場合の両方で、P状態遷移がある。図では、P状態遷移は動作電圧210における変化と関連がある。いくつかのP状態値が、図でラベルを付けられている。例えば、一定の活動レベル220で、P状態P1が、図に示すように低い動作電圧を有する、P状態P2へ遷移する。測定された活動レベルが一定の場合のP状態値間でのトグル切替えは、P状態ディザリングと呼ばれ得る。P状態ディザリングは、TDP値などの、チップ上で消費される平均電力と電力目標との間で1unityに近い比率を維持するために使用され得る。1に近いかかる比率を維持することにより、チップは、所望の量の電力例えば、対応する冷却システムによって散逸される電力量を消費しながら、性能を最大限にしようとし得る。ここで図3を参照すると、相対的に安定した仮想動作点を作成するために、複数の離散動作点を管理するための方法300の一実施形態が示されている。議論を進めるために、この実施形態および後述する方法の後続の実施形態におけるステップは、連続した順序で示されている。しかし、いくつかのステップは、示された順序とは異なる順序で起こり得、いくつかのステップは同時に実行され得、いくつかのステップは他のステップと組み合わされ得、またいくつかのステップは別の実施形態では欠けている可能性がある。ブロック302では、チップのダイdieに対する電力使用目標が初期化される。前述した方法を含めて、電力使用目標を選択するための様々な方法のいずれかが使用され得る。ブロック304では、そのダイに対する初期の離散電力性能状態P状態が所与の作業負荷において決定される。ファームウェアなどのソフトウェアおよび/またはハードウェアは、P状態を決定し得る。図に示されるようなプロセスが、P状態を決定するために使用され得る。そのダイに対する平均電力消費が、次いでブロック306で測定される。かかる測定の詳細な説明が後で提供される。ブロック308で、測定された平均電力消費が、電力目標と比較されて、差分が決定される。一実施形態では、この差分は他の決定された差分と累算され得る。例えば、累算差分値は保持され得る。別のP状態への遷移は、目標電力と測定された電力との間の差分の検出に応じて開始され得るが、かかるアプローチは、P状態間の非生産的な遷移を引き起こし得る。それ故、一実施形態では、かかる不要な遷移を防ぐために、様々な技術が利用される。一実施形態では、累算差分がP状態遷移を引き起こすのに十分な場合を判断するために、所与の変化量deltaが使用される。例えば、測定された平均電力が目標電力を所与の変化量以上に超えると、高いP状態への遷移が開始され得るか、または許可され得る。同様に、測定された平均電力が目標電力を少なくとも所与の変化量だけ下回ると、低いP状態への遷移が開始され得るか、または許可され得る。前述した変化量は、必要に応じて、超えるかまたは単に満足する必要がある値として利用できることに留意されたい。いくつかの場合には、高いか、または低い状態への遷移の両方に対する所与の変化量は、絶対値に関して同じであり得る。他の実施形態では、高い状態への遷移に対して、低い状態への遷移とは異なる変化量値が使用できる。かかる全ての実施形態が検討される。さらに、変化量値は、様々な実施形態において、プログラム可能であり得るか、またはそうではない。前述に加えて、P状態遷移が起こり得るか否かを判断するために、さらなる条件が利用され得る。例えば、いくつかの実施形態では、遷移が許可される前に、P状態における最低限の滞在が必要とされ得る。さらに、かかる最低限の滞在に関する考察が、図5についての議論で提供される。ブロック310では、累算差分が所与の変化量に達すると、別のP状態への遷移が起こり得る。例えば、電力マネージャは、長期間に渡る前述の比較に対応する符号付き累算差分が所与の閾値を下回る場合、現在のP状態よりも低い電力性能状態P状態を選択し得る。より低いP状態は、通常、電力目標よりも低い電力消費値に相当し得る。同様に、電力マネージャは、長期間に渡る前述の比較に対応する符号付き累算差分が所与の変化量を上回る場合、現在のP状態よりもより高いP状態を選択し得る。再度、図2を参照すると、活動レベル220は作業負荷を追跡し得る。図2の実施形態に示すように、平均電力の電力目標に対する比率が1から変動するときに、P状態遷移が起こる。様々な実施形態では、P状態遷移がいつ起こるかを判断するために、所与の閾値分散が使用され得る。あるいは、符号付き累算差分が、比率よりむしろ、測定された平均電力と電力目標との間で見つかり得る。さらなる詳細を提供する前に、作業負荷を追跡するために活動レベルを測定する一実施形態について説明する。図4を参照すると、コア電力管理400の一実施形態が示されている。ここで、コア102は、任意の集積回路ICであり得る。一実施形態では、コア102は、プロセッサコアであり得る。プロセッサコアは、オンダイon-die命令およびデータキャッシュをもち得る。プロセッサコアは、単一のパイプラインまたは複数のパイプラインを備えたスーパースカラープロセッサであり得る。別の実施形態では、コア102は特定用途向けICASICであり得る。コア102を実装するために、任意のトランジスタファミリーが使用され得る。例には、金属酸化膜半導体電界効果トランジスタMOSFETおよびバイポーラ接合トランジスタBJTを含む。機能ブロック110は、論理関数を実行するように構成されたトランジスタ、データ記憶、またはその他を含み得る。電力管理目的のため、機能ブロック110は、ユニット132a~132dに分割され得る。本明細書では、後ろに英字の付いた参照番号で参照される要素は、まとめて番号だけで参照され得る。例えば、ユニット132a~132dは、まとめてユニット132と呼ばれ得る。一実施形態では、ユニット132は、リオーダreorderバッファ、メモリ管理ユニット、実行ユニットなどの、プロセッサの機能コンポーネントに相当しない可能性がある。むしろ、ユニット132は、電力管理目的用にサンプリングする信号の種類に基づいて選択され得る。例えば、一実施形態では、サンプリングするために選択された信号は、ローカルクロック分配ブロックにルーティングされるクロックイネーブル信号を含む。特定のクロックサイクル中にどの信号をサンプリングするかの選択は、その選択をユニット132内のスイッチングノード容量とどのようにうまく関連付けるかに対応し得る。クロックイネーブル信号など、サンプリングするために選択された信号は、フロアプラン内の機能ブロックと重複し得る。したがって、例えば、ユニット132aおよび132bを分離する区分は、フロアプラン内の区分に対応しない可能性がある。ユニット132は、電力を消費するユニットであり、この電力はリアルタイムで測定される。現在の作業負荷に関連付けられたダイの活動レベルは、選択されたサンプリングする信号に関連付けられた値または重みに対応し得る。一実施形態では、電力モニター130が、所与のサンプリングされた信号全ての論理値など、ユニット132からデータを収集するために使用され得る。一実施形態では、サンプリングされた信号の値が、連続的にスキャンアウトされ得る。したがって、選択された信号が、ユニット112の各々から単一のクロックサイクル内でサンプリングされ、次のサンプリングが実行される前に、連続してスキャンアウトされ得る。データの収集後、電力モニター130は、電力消費推定値を計算し得る。1つのモニター制御132が、各ユニット132に対応し得る。代替実施形態では、モニター制御132は、2つ以上のユニット112に対してデータを収集し、それらのユニット112に対する総電力消費推定値を計算し得る。さらに別の実施形態では、1つのモニター制御132すなわち、制御132aが、1つまたは複数のモニター制御132すなわち、制御132b~132dからデータを収集するために、1つまたは複数の他のモニター制御132すなわち、制御132b~132dとの信号インタフェースを有し得る。次いで、1つまたは複数のモニター制御132に対する電力消費推定値が計算され得る。信号サンプル120およびデータアウト122は、電力管理目的用に使用される制御およびデータ信号であり得る。電力モニター110と機能ブロック130との間のインタフェース信号は、任意の必要な数の信号および通信プロトコルを含み得る。一実施形態では、制御信号サンプル120は、100クロックサイクル毎など、選択した繰返し間隔中に、単一のクロックサイクルに対してのみ行使され得る。一実施形態では、制御信号サンプル120が行使された後、所与の数のクロックサイクルで、データ信号データアウト122が、各クロックサイクルの異なるサンプリングされた信号に対して、論理値の提供を開始し得る。言い換えれば、データ信号データアウト122は、特定のサイクルでサンプリングされた信号の論理値を含む一連の値を完全にスキャンするために使用され得る。また、他の実施形態では、モニター制御132とユニット112の各対の間に、単一対の信号がない可能性がある。代替実施形態では、モニター制御132がユニット112をポーリングpollするため、ユニット112が出力データを伝達する準備ができていることをモニター制御132に対して肯定応答するために、追加の信号が含まれ得る。所与の時間間隔中に複数のサンプルが取得され得る。活動レベルを計算する前に使用する断続的なクロックサイクル数の決定は、サンプリングされたデータの所望の精度および信頼性によって決まり得る。スプレッドシートまたはルックアップテーブルが、アプリケーションの実際の電力消費およびサンプリングからの推定電力消費の両方の統計分析および測定の両方を用いて、生成され得る。統計分析をさらに展開するために、信頼性レベルおよび誤り率が選択され得る。リアルタイム電力推定方法の一例に、2008年4月11日に出願されたSamplingChipActivityforRealTimePowerEstimationという名称の出願整理番号第12/101,598号があり、その内容全体が参照により本明細書に組み込まれる。電力モニター130が、機能ブロック110から繰返し間隔にわたって受信したデータから電力消費推定値を計算するとき、電力モニター130は、現在実行しているアプリケーションの電力プロファイルを決定している。この決定は、電力マネージャ140に伝達される。電力マネージャ140は、アプリケーションが閾値制限を上下回っている場合に電力を削減または増加するために、機能ブロック110の動作点を変更し得る。例えば、電力マネージャ140は、現在のP状態をブーストまたはスロットルさせて、別の所与のP状態へ遷移させ得る。一実施形態では、上記した特定の期間中、電力マネージャ140は、電力モニター130によって提供された電力プロファイルと電力目標との間で符号付きの継続的な累算差分を計算し得る。この場合も、電力目標は熱設計点TDPであり得る。累算差分は、各所与の時間間隔の終わりに、AccTdpDelta=AccTdpDeltaTDP-RcvdPwrとして計算され得る。ここで、変数AccTdpDeltaは、符号付きの継続的な累算差分である。変数TDPは、割り当てられた熱設計電力、または相当数の熱クレジットthermalcreditである。変数RcvdPwrは、電力モニター130から受信した電力消費推定値である。この値は、機能ブロック110内のサンプリングされた信号を測定することにより、ダイの活動レベルを追跡し得る。変数RcvdPwrによって表される測定された活動レベルがTDPより高ければ、累算値AccTdpDeltaは、負の値の方へ押される。累算値が負の所与の閾値に達すると、電力マネージャは、現在のP状態をスロットル調整することを決定し得る。再度、図1を参照すると、現在のP状態をスロットル調整する一例は、P状態P1からP状態P2へ遷移することであろう。かかる状況は、コア内で活動レベルが高い場合に起こり得る。活動レベルが高い値のままである場合、電力マネージャが徐々に現在のP状態をスロットル調整し続け得る。測定された活動レベルがTDPより低ければ、累算値AccTdpDeltaは、正の値の方へ押される。累算値が正の所与の閾値に達すると、電力マネージャ140は、現在のP状態をブーストすることを決定し得る。再度、図1を参照すると、現在のP状態をブーストする一例は、P状態P2からP状態P1へ遷移することであろう。かかる状況は、コア内で活動レベルが低い場合に起こり得る。活動レベルが低い値のままである場合、電力マネージャが徐々に現在のP状態をブーストし続け得る。電力マネージャ140は、電力モニター130から送信された情報が、温度情報ではなく、コア102内の実際の活動レベルおよび電力消費に相当する場合、コア102内の潜在的な熱的問題に対してより素早い対応を提供することができ得る。半導体チップダイのダイ全体に配置されているアナログまたはデジタルの熱センサーが、長い期間をかけて温度波形を決定し得る。熱センサーは、増大した計算活動に起因して、特定の領域でいつダイが熱くなるかに関する時の情報を提供する。しかし、これらのセンサーは、熱に関する各変化が、コア102内での計算に関連した電力消費の増加によるか、または周囲温度の上昇などの外部の環境要因によって駆動されたかにかかわらず、応答する。例えば、データセンター内のラックシステム内の周囲のサーバーが、周囲温度の上昇を引き起こし得る。特定のコア内のスイッチング容量は、時間間隔にわたって変化しないかもしれないが、センサーは、周囲温度の上昇に起因した高い熱エネルギー消費を報告し得る。さらに、計算に関連した電力消費の増加と温度上昇との間に時間遅延がある。それ故、平均電力消費と電力目標との間で1の比率を維持しようとしながら、コア内の活動レベルとスイッチング容量に関連した測定値を温度の測定値と対比して、より良い結果が提供され得る。ここで、図5を参照すると、安定した仮想動作点を作成するために、複数の離散動作点を管理するための方法500の別の実施形態が示されている。議論を進めるために、この実施形態および後述する方法の後続の実施形態におけるステップは、連続した順序で示されている。しかし、いくつかのステップは、示された順序とは異なる順序で起こり得、いくつかのステップは同時に実行され得、いくつかのステップは他のステップと組み合わされ得、またいくつかのステップは別の実施形態では欠けている可能性がある。ブロック502では、半導体チップが1つまたは複数のソフトウェアアプリケーションの命令を実行する。所与のサンプリング間隔の終わりに達すると条件ブロック504、ブロック506で、電力消費推定値が決定され、電力マネージャに伝達される。電力消費推定値は、前述したように、機能ブロック内で選択した信号をサンプリングすること、および対応する重みをサンプリングされた信号に関連付けることにより見つかり得る。決定した電力推定値のカウントに対応するカウンタの値が増加され得る。ブロック508では、電力マネージャが、TDPなどの所与の電力目標と、受信した電力消費値との間で符号付き累算差分を計算し得る。その計算は、前述したように、AccTdpDelta=AccTdpDeltaTDP-RcvdPwrであり、式中、変数RcvdPwrは、受信した電力消費値を表す。P状態遷移が起こる場合、符号付き累算差分AccTdpDeltaは、別のサンプル間隔が起こる時まで、所与の閾値をまだ超えていることに留意されたい。例えば、P状態P2からP状態P1へのブーストは、AccTdpDeltaが正のブースト閾値よりも大きい値に起因して起こり得る。P状態遷移の後、次の時間間隔で、符号付き累算差分AccTdpDeltaは、正のブースト閾値よりもより大きい可能性がある。測定された電力消費値がTDP値を超えるのに十分な時間がなかった可能性がある。したがって、現在のP状態が所与の時間に最良の電力性能動作点を提供すると判断される前に、現在のP状態を素早くブーストし続けることは可能である。前述のとおり、迅速なP状態遷移を防ぐため、次のP状態遷移は、現在のP状態遷移後の所与の間、起こるのが許可されない可能性がある。所与の期間は、最低限の滞在と呼ばれ得る。一実施形態では、現在のP状態遷移の後に許容可能な期間が経過しているかを判断するために、カウンタが使用され得る。そのカウンタ値は、所与の閾値と比較され得る。あるいは、カウンタが、所与の閾値と共にロードされ、ゼロの値まで減少され得る。この許容可能な期間が経過すると、別のP状態遷移が起こり得る。さらに、累算差分AccTdpDeltaに関して熟成値valueagingが使用され得る。熟成値は、チップダイの加熱を防ぐのに役立ち得る。熟成された累算差分は、長い間、高い電力P状態間での遷移またはディザリングditheringのままであり得る。累算差分AccTdpDeltaは、P状態がスロットル調整される場合、累算し続け得る。しばらくすると、累算差分は、ブースト用に利用可能な実際の熱エネルギーの上方空間をもはや表していない可能性がある。したがって、時々、累算差分AccTdpDeltaは、所与の期間の終わりに、リセット値に設定され得る。リセット値は、累算差分AccTdpDeltaの現在の値の何分の1からゼロまで異なり得る。構成レジスタに格納された値が、リセット値を決定するために使用され得る。例えば、第1の格納された値は、累算差分AccTdpDeltaに等しいリセット値に相当し得る。第2の格納された値は、シフトされた例えば、2による除算、4による除算など累算差分AccTdpDeltaに等しいリセット値に相当し得る。第3の格納された値は、ゼロに等しいリセット値に相当し得る。一例では減少され得るカウンタが、前述した所与の期間を設定し得る。そのカウンタは、値Nをロードし得、それは、構成レジスタに格納される。累算差分AccTdpDeltaが各サンプルの終わりに更新される、N個のサンプルが生じた後、または時間間隔の後、累算差分AccTdpDeltaがリセットされ得る。値Nと共にロードされたカウンタは、累算差分AccTdpDeltaの符号が変わるたびにリセットされ得る。再度、図5の方法500を参照すると、P状態の最低限の滞在期間に達していない場合条件ブロック510、N個のサンプルが生じているか否かに関して、チェックが実行される。各サンプル間隔の終わりに、ダイに対して新しい電力消費値が決定され、新しい値が、累算差分AccTdpDeltaに対して計算される。N個のサンプルのカウントが生じている場合条件ブロック516には、ブロック518で、累算差分AccTdpDeltaが、前述のように、所与のリセット値に設定される。P状態の最低限の滞在期間に達した場合条件ブロック510には、ブーストおよびスロットル閾値に関するチェックが実行される。符号付き累算差分AccTdpDeltaが閾値を超えているか否かを判断するために比較が実行され得る。例えば、累算差分AccTdpDeltaは、正のブースト閾値よりも大きい可能性がある。あるいは、累算差分AccTdpDeltaは、負のスロットル閾値よりも小さい可能性がある。累算差分AccTdpDeltaが閾値を超えている場合条件ブロック512には、ブロック514で、対応する次のP状態が、チップダイに対して選択される。例えば、符号付き累算差分AccTdpDeltaが正のブースト閾値よりも大きい場合は、現在のP状態よりも高い電力性能のP状態への遷移が起こり得る。あるいは、符号付き累算差分AccTdpDeltaが負のスロットル閾値よりも小さい場合には、現在のP状態よりも低い電力性能のP状態への遷移が起こり得る。一実施形態では、プロセッサが複数のコアを含む場合、電力消費推定値が各コア内で計算され得る。さらに、各コアが、符号付き累算差分AccTdpDeltaを決定し得る。複数のコアのいずれかがブーストまたはスロットル閾値を超える場合、プロセッサ全体に対するP状態がそれに応じて遷移し得る。その後、方法500の制御フローが条件ブロック516に進む。前述の実施形態は、ソフトウェアを含み得ることに留意されたい。かかる実施形態では、説明したシステムおよび/または方法を表すプログラム命令および/またはデータベースその両方とも命令と呼ばれ得るは、伝達されるか、またはコンピュータ可読媒体上に格納され得る。一般的に、コンピュータアクセス可能記憶媒体は、使用中にコンピュータに命令および/またはデータを提供するために、コンピュータによってアクセス可能な任意の記憶媒体を含み得る。例えば、コンピュータアクセス可能記憶媒体には、磁気または光媒体などの記憶媒体、例えば、ディスク固定または取外し可能、テープ、CD-ROM、もしくはDVD-ROM、CD-R、CD-RW、DVD-R、DVD-RW、もしくはブルーレイなどを含み得る。記憶媒体には、RAM例えば、シンクロナスダイナミックRAMSDRAM、ダブルデータレートDDR、DDR2、DDR3などSDRAM、低電力DDRLPDDR2などSDRAM、RambusDRAMRDRAM、スタティックRAMSRAMなど、ROM、フラッシュメモリ、ユニバーサルシリアルバスUSBインタフェースなどの周辺インタフェースを介してアクセス可能な不揮発性メモリ例えば、フラッシュメモリなどの、揮発性または不揮発性の記憶媒体をさらに含み得る。記憶媒体には、微小電気機械システムMEMSならびに、ネットワークおよび/または無線リンクなどの通信媒体を介してアクセス可能な記憶媒体を含み得る。さらに、命令は、Cなどのプログラム言語、またはVerilog、VHDLなどの設計言語、またはGDSIIストリーム形式GDSIIなどのデータベース形式において、ハードウェア機能の動作レベル記述またはレジスタ転送レベルRTL記述を含み得る。これらの命令は、次いで、システムまたはシステムの一部を含むハードウェアを製作するために、読み取られ、使用され得る。いくつかの場合には、記述は、設計の実装を形成するために、合成ツール例えば、コンピューティング装置上で実行するプログラムコードによって読み取られ得る。例えば、かかるツールは、合成ライブラリsynthesislibraryからのゲートのリストを含むネットリストを生成するため、記述を合成するために使用され得る。ネットリストは通常、システムを含むハードウェアの機能も表すゲートのセットを含み得る。ネットリストは、次いで、マスクに適用される幾何学的形態を記述するデータセットを生成するために配置およびルーティングされ得る。マスクは、次いで、システムに対応する半導体回路または回路を生産する様々な半導体製造ステップで使用され得る。あるいは、コンピュータアクセス可能記憶媒体上の命令は、必要に応じて、ネットリスト合成ライブラリの有無に関わらないまたはデータセットであり得る。さらに、命令は、CadenceR、EVER、およびMentorGraphicsRの各ベンダーからのものなど、ハードウェアベースタイプのエミュレータによるエミュレーションのために利用され得る。例えば、かかる実施形態では、命令は、設計に従って実行するため、FPGAベースのハードウェアを構成するために利用され得る。多数のかかる実施形態が可能であり、検討される。前述の実施形態はかなり詳細に説明しているが、前述の開示を十分に理解すると、多数の変形および修正が当業者には明らかになるであろう。以下の特許請求の範囲が、かかる全ての変形および修正を包含するものと解釈されることを意図する。"