(57)【要約】  技術は全体として、プロセッサの電力消費量の管理に関する。１つの例示の方法は、目標動作制約および第１の動作パラメータを識別すること、目標動作制約および第１の動作パラメータに基づいて第２の動作パラメータを決定すること、実際の動作制約を推定すること、目標動作制約と実際の動作制約とを比較すること、目標動作制約と実際の動作制約との比較に基づいてプロセッサの第１の動作パラメータおよび第２の動作パラメータをセットアップすることを含むことができ、目標動作制約は最悪の場合の動作制約ではない。プロセッサの電力消費量を管理することに関連する方法、システム、およびコンピュータプログラムのその他の例も検討される。
2013502644.tif 000002
【特許請求の範囲】
【請求項１】
プロセッサの電力消費量を管理するための方法であって、
目標動作制約および第１の動作パラメータを識別すること、
前記目標動作制約および前記第１の動作パラメータに基づいて第２の動作パラメータを決定すること、
実際の動作制約を推定すること、
前記目標動作制約と前記実際の動作制約とを比較すること、および
前記目標動作制約と前記実際の動作制約との比較に基づいて前記プロセッサの前記第１の動作パラメータおよび前記第２の動作パラメータをセットアップすることを含み、前記目標動作制約は最悪の場合の動作制約ではない、方法。
【請求項２】
前記目標動作制約は、前記プロセッサのあらかじめ定められた接合温度である請求項１に記載の方法。
【請求項３】
前記最悪の場合の動作制約は、前記プロセッサの仕様に基づく前記プロセッサの可能な最大接合温度である請求項１に記載の方法。
【請求項４】
前記推定することは、前記プロセッサによって処理されているかまたは処理されるべきタスクを監視することをさらに備える請求項１に記載の方法。
【請求項５】
前記推定することは、前記プロセッサに隣接して配置された温度センサによって検出された前記プロセッサの接合温度を受信することをさらに備える請求項１に記載の方法。
【請求項６】
前記セットアップすることは、クロック信号を生成するようにクロック乗算器を構成することをさらに備える請求項１に記載の方法。
【請求項７】
前記セットアップすることは、前記プロセッサのコア電圧を制御するように電力コントローラを構成することをさらに備える請求項１に記載の方法。
【請求項８】
プロセッサの電力消費量を管理するように適合されたコンピューティングデバイスであって、
メモリと、
前記メモリとインターフェイスをとるように構成された処理ユニットとを備え、前記処理ユニットは、
目標動作制約および第１の動作パラメータを識別し、
前記目標動作制約および前記第１の動作パラメータに基づいて第２の動作パラメータを決定し、
実際の動作制約を推定し、
前記目標動作制約と前記実際の動作制約とを比較し、
前記目標動作制約と前記実際の動作制約との比較に基づいて前記プロセッサの前記第１の動作パラメータおよび前記第２の動作パラメータをセットアップするように構成され、前記目標動作制約は最悪の場合の動作制約ではない、コンピューティングデバイス。
【請求項９】
前記最悪の場合の動作制約は、前記プロセッサの仕様で指定された前記プロセッサの可能な最大接合温度である請求項８に記載のコンピューティングデバイス。
【請求項１０】
前記処理ユニットは、前記プロセッサによって処理されているかまたは処理されるべきタスクを監視するようにさらに構成される請求項８に記載のコンピューティングデバイス。
【請求項１１】
前記プロセッサに隣接して配置され、前記プロセッサの実際の接合温度を検出するように構成された温度センサをさらに備える請求項８に記載のコンピューティングデバイス。
【請求項１２】
前記実際の動作制約は、前記プロセッサの前記実際の接合温度である請求項１１に記載のコンピューティングデバイス。
【請求項１３】
前記プロセッサに隣接して配置され、クロック信号を生成するように構成されたクロック乗算器をさらに備える請求項８に記載のコンピューティングデバイス。
【請求項１４】
前記プロセッサに隣接して配置され、前記プロセッサのコア電圧を制御するように構成された電力コントローラをさらに備える請求項８に記載のコンピューティングデバイス。
【請求項１５】
プロセッサの電力消費量を管理するための命令のシーケンスを含むコンピュータ可読媒体であって、前記命令のシーケンスは、コンピューティングデバイスによって実行されたとき、前記コンピューティングデバイスに、
目標動作制約および第１の動作パラメータを識別させ、
前記目標動作制約および前記第１の動作パラメータに基づいて第２の動作パラメータを決定させ、
実際の動作制約を推定させ、
前記目標動作制約と前記実際の動作制約とを比較させ、
前記目標動作制約と前記実際の動作制約との比較に基づいて前記プロセッサの前記第１の動作パラメータおよび前記第２の動作パラメータをセットアップさせ、前記目標動作制約は最悪の場合の動作制約ではない、コンピュータ可読媒体。
【請求項１６】
前記目標動作制約は、前記プロセッサのあらかじめ定められた接合温度である請求項１５に記載のコンピュータ可読媒体。
【請求項１７】
前記最悪の場合の動作制約は、前記プロセッサの仕様で指定された前記プロセッサの可能な最大接合温度である請求項１５に記載のコンピュータ可読媒体。
【請求項１８】
前記コンピューティングデバイスによって実行されたときに前記コンピューティングデバイスに前記プロセッサによって処理されているかまたは処理されるべきタスクを監視させる命令のシーケンスをさらに含む請求項１５に記載のコンピュータ可読媒体。
【請求項１９】
前記コンピューティングデバイスによって実行されたときに前記コンピューティングデバイスに前記プロセッサに隣接して配置された温度センサによって検出された前記プロセッサの接合温度を受信させる命令のシーケンスをさらに含む請求項１５に記載のコンピュータ可読媒体。
【請求項２０】
前記第１の動作パラメータおよび前記第２の動作パラメータはそれぞれ、前記プロセッサのコア電圧および前記プロセッサのクロックレートに関連付けられている請求項１５に記載のコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は一般に、プロセッサ技術に関し、さらに具体的には、プロセッサの電力管理機能に関する。
【背景技術】
【０００２】
本明細書において特に指示のない限り、このセクションにおいて説明される手法は、本明細書の特許請求の範囲の先行技術ではなく、このセクションに含めることにより先行技術であると認めるものではない。
【０００３】
プロセッサの電力管理機能は、プロセッサのさまざまな動作パラメータを切り替えることにより達成されうる。例示の動作パラメータは、プロセッサのコア電圧およびプロセッサのクロックレートを非限定的に含むことができる。事前定義済みの動作制約のセットは、すべての動作制約が設計仕様の範囲内ではあるが予想される最悪の値である、プロセッサの最悪の場合の動作条件を特徴付けるために使用することができる。例示の事前定義済みの動作制約は、プロセッサが、プロセッサの設計に基づいて適正に動作することができる最悪の場合の接合温度（junction temperature）を含むことができる。プロセッサの最悪の場合の動作条件が特徴付けられると、プロセッサの動作パラメータは、プロセッサの電力消費量を制限するように変更することができる。
【発明の概要】
【０００４】
本開示の一部の実施形態は、一般に、プロセッサの電力消費量を管理するための方法に関する。例示の方法は、目標動作制約および第１の動作パラメータを識別すること、目標動作制約および第１の動作パラメータに基づいて第２の動作パラメータを決定すること、実際の動作制約を推定することを含むことができる。例示の方法はさらに、目標動作制約と実際の動作制約とを比較すること、目標動作制約と実際の動作制約との比較に基づいてプロセッサの第１の動作パラメータおよび第２の動作パラメータをセットアップすることを含むことができ、目標動作制約は最悪の場合の動作制約ではない。
【０００５】
本開示の追加の実施形態は、一般に、プロセッサの電力消費量を管理するように適合されたコンピューティングデバイスに関する。例示のコンピューティングデバイスは、メモリ、およびメモリとインターフェイスをとるように構成された処理ユニットを含むことができる。処理ユニットは、目標動作制約および第１の動作パラメータを識別し、目標動作制約および第１の動作パラメータに基づいて第２の動作パラメータを決定し、実際の動作制約を推定するように構成されてもよい。処理ユニットはさらに、目標動作制約と実際の動作制約とを比較し、目標動作制約と実際の動作制約との比較に基づいてプロセッサの第１の動作パラメータおよび第２の動作パラメータをセットアップするように構成されてもよく、目標動作制約は最悪の場合の動作制約ではない。
【０００６】
本開示の一部の実施形態は、一般に、プロセッサの電力消費量を管理するための命令のシーケンスを含むコンピュータ可読媒体に関する。命令のシーケンスがコンピューティングデバイスによって実行されたとき、コンピューティングデバイスは、目標動作制約および第１の動作パラメータを識別し、目標動作制約および第１の動作パラメータに基づいて第２の動作パラメータを決定し、実際の動作制約を推定するように構成されてもよい。コンピューティングデバイスはさらに、目標動作制約と実際の動作制約とを比較し、目標動作制約と実際の動作制約との比較に基づいてプロセッサの第１の動作パラメータおよび第２の動作パラメータをセットアップするように構成されてもよく、目標動作制約は最悪の場合の動作制約ではない。
【０００７】
前述の課題を解決するための手段は、例示的なものに過ぎず、決して限定することを意図するものではない。上記で説明される例示の態様、実施形態、および特徴に加えて、さらなる態様、実施形態、および特徴が、図面および後段の詳細な説明を参照することにより明らかとなろう。
【０００８】
本開示の前述およびその他の特徴は、付属の図面と併せて以下の説明と添付の特許請求の範囲を読めばさらに十分に明らかとなろう。これらの図面は、本開示に従っていくつかの実施形態を示したに過ぎず、その範囲を限定するものと見なされるべきではない。本開示は、添付の図面を用いて、さらに具体的および詳細に説明される。異なる図面において使用される同じ番号は、本開示の同じ実施形態を表すことができる。
【図面の簡単な説明】
【０００９】
【図１】本開示の少なくとも一部の実施形態に従って配置される、プロセッサの動作点のセットを示す散布図である。
【図２】本開示の少なくとも一部の実施形態に従って配置される、プロセッサの動作点のもう１つのセットを示す散布図である。
【図３】本開示の少なくとも一部の実施形態に従って配置される、プロセッサの電力消費量を管理する方法を示す流れ図である。
【図４】本開示の少なくとも一部の実施形態に従って配置される、プロセッサの電力消費量を管理するように適合されたコンピュータプログラム製品を示すブロック図である。
【図５】本開示の少なくとも一部の実施形態に従って配置される、プロセッサの電力消費量を管理するように構成され、例示のコンピューティングデバイスを示す例示のブロック図である。
【発明を実施するための形態】
【００１０】
以下の詳細な説明において、本明細書の一部を形成する付属の図面が参照される。図面において、文脈により特に示されない限り、同様の符号は概して、同様のコンポーネントを識別する。詳細な説明、図面、および特許請求の範囲において説明される例示の実施形態は、限定的であることを意図していない。本明細書において提示される主題の精神および範囲を逸脱することなく、その他の実施形態が使用されてもよく、その他の変更が行われてもよい。本明細書において概ね説明され、図面に示される本開示の態様が、多岐にわたるさまざまな構成において配置され、代替され、組み合わされ、設計されてもよく、それらすべては明示的に検討され、本開示の一部をなすことは容易に理解されよう。
【００１１】
本開示は、とりわけ、プロセッサの電力消費量を管理することに関連する方法、システム、およびコンピュータプログラムに関する。
【００１２】
本開示において、プロセッサの「動作点（ｏｐｅｒａｔｉｎｇ  ｐｏｉｎｔ）」という用語は全体を通じて、プロセッサが確実に動作されうる点を示し、「動作プロファイル（ｏｐｅｒａｔｉｏｎａｌ  ｐｒｏｆｉｌｅ）」という用語は全体を通じて、それらの動作点のセットを示すことができる。「動作パラメータ（ｏｐｅｒａｔｉｎｇ  ｐａｒａｍｅｔｅｒ）」という用語は全体を通じて、動作プロファイルの態様を特徴付けるために使用されるパラメータを示すことができる。「目標動作制約（ｔａｒｇｅｔ  ｏｐｅｒａｔｉｎｇ  ｃｏｎｓｔｒａｉｎｔ）」という用語は全体を通じて、事前定義済みの動作制約を示すことができる。「実際の動作制約（ａｃｔｕａｌ  ｏｐｅｒａｔｉｎｇ  ｃｏｎｓｔｒａｉｎｔ）」という用語は全体を通じて、プロセッサが動作している際に測定された／計算された動作制約を示すことができる。「最悪の場合の動作制約（ｗｏｒｓｔ−ｃａｓｅ  ｏｐｅｒａｔｉｎｇ  ｃｏｎｓｔｒａｉｎｔ）」という用語は全体を通じて、プロセッサの最悪の動作条件を特徴付けるために使用される事前定義済みの動作制約を示すことができる。「コア電圧（ｃｏｒｅ  ｖｏｌｔａｇｅ）」という用語は全体を通じて、電源装置によりプロセッサに供給される電圧を示すことができる。
【００１３】
動作プロファイルは、動作パラメータのセットおよび目標動作制約に基づいて定義されてもよい。動作パラメータは、プロセッサのコア電圧、プロセッサのクロックレート、プロセッサのクロック乗算器、プロセッサの出力スロットル、プロセッサのスリープ状態サイクルなどを、非限定的に含むことができる。目標動作制約は、プロセッサの目標接合温度、目標グランドノイズ、目標クロックジッタなどを、非限定的に含むことができる。プロセッサの電力消費量を管理するために、プロセッサは、そのワークロードに応じてさまざまな動作プロファイルで動作するように構成されてもよい。
【００１４】
最悪の場合の動作制約に基づく動作点を定義するための一部の技法が、当技術分野において知られている。それらの技法は知られているが、本開示では、動作点の定義が、最悪の場合の動作制約とはいえない目標動作制約に基づいて行われてもよいことを認識する。例示の技法は、モデルに基づくシミュレーションを含むことができる。たとえば、シミュレーションは、目標動作制約および第１の動作パラメータを固定すること、モデルが動作点を決定することができなくなるまで第２の動作パラメータを変更することを含むことができる。
【００１５】
動作パラメータを決定した後、次いでプロセッサは、実際の動作制約に基づいてさまざまな動作プロファイル間を切り替えるように構成されてもよい。一部の実施形態において、実際の動作制約は、プロセッサの実際の動作接合温度であってもよい。
【００１６】
図１は、本開示の少なくとも一部の実施形態に従って配置されるプロセッサの動作点のセットを示す散布図である。曲線Ａ、Ｂ、Ｃ、およびＤは、それぞれ、４つの異なる目標動作制約に関連付けられている。たとえば、目標動作制約は目標接合温度であってもよく、曲線Ａは第１の目標接合温度（たとえば、１２５０°Ｃ）に関連付けられていてもよい。同様に、曲線Ｂ、Ｃ、およびＤは、それぞれ、第２の目標接合温度（たとえば、１１５°Ｃ）、第３の目標接合温度（たとえば、１０５°Ｃ）、および第４の目標接合温度（たとえば、９５°Ｃ）であってもよい。第１の目標接合温度を使用して、動作点のセットは、第１の目標接合温度および動作パラメータのセットに基づいて決定されてもよい。一部の実施形態において、動作パラメータは、プロセッサのコア電圧およびプロセッサのクロックレートを非限定的に含むことができる。曲線Ａ上の動作点の各々（たとえば、点１０１および点１１１）は、第１の目標接合温度、プロセッサのコア電圧、およびプロセッサのクロックレートにより定義されてもよい。同様に、その他の曲線上の動作点の各々（たとえば、曲線Ｂ上の点１０３、曲線Ｃ上の点１０５および１０７、曲線Ｄ上の点１０９）は、プロセッサのコア電圧、プロセッサのクロックレート、および曲線に関連付けられているプロセッサの目標接合温度により定義されてもよい。
【００１７】
説明するため、プロセッサが第１の動作点１０１で動作するものと仮定する。第１の動作点１０１において、プロセッサは、第１のコア電圧および第１のクロックレートで動作するように構成されてもよい。プロセッサの実際の動作接合温度が、第１の目標接合温度よりも大幅に低いと決定される（たとえば、測定される）場合、曲線Ａにより定義された動作プロファイルでプロセッサを引き続き動作することは、結果としてプロセッサによる不必要な電力消費量をもたらすこともある。実際の動作接合温度は、温度センサによって測定されてもよいか、または一部の既知の動作パラメータおよびモデルに基づいて計算されてもよい。
【００１８】
電力消費量を管理するため、実際の接合温度は、プロセッサが１つの動作プロファイルでの動作から別の動作プロファイルでの動作に適応的に切り替わると考えられる因子であってもよい。一部の実施形態において、実際の接合温度が第１の目標接合温度と第２の目標接合温度との間である場合、プロセッサは、曲線Ａに対応する動作点のいずれにおいても動作するように構成されてもよい。実際の接合温度が第２の目標接合温度と第３の目標接合温度との間である場合、プロセッサは、曲線Ａおよび曲線Ｂに対応する動作点のいずれにおいても動作するように構成されてもよい。
【００１９】
一部の実施形態において、プロセッサが第１の動作点１０１から第２の動作点１０３に切り替えられる場合、プロセッサは、第２のコア電圧および第２のクロックレートで動作されるように構成されてもよい。第１のクロックレートは第２のクロックレートよりも高くてもよく、第１のコア電圧は第２のコア電圧よりも高くてもよい。言い換えれば、第１の動作点１０１から第２の動作点１０３に切り替えることにより、第１のクロックレートは第２のクロックレートまで下げられてもよい。クロックレートが安定すると、第１のコア電圧は、第２のコア電圧まで下げられてもよい。一方、第２の動作点１０３から第１の動作点１０１に切り替えるため、第２のコア電圧は第１のコア電圧まで上げられてもよい。コア電圧が安定すると、第２のクロックレートは、第１のクロックレートまで上げられてもよい。
【００２０】
一部の実施形態において、各動作点を特徴付ける動作パラメータおよび目標動作制約は、プロセッサに隣接するメモリに格納されてもよい。効率化のため、動作環境について格納される動作パラメータの数が低減されてもよい。
【００２１】
図２は、本開示の少なくとも一部の実施形態に従って配置されるプロセッサの動作点のもう１つのセットを示す散布図２００である。散布図１００に示される４つの曲線とは異なり、図２の曲線上の点は、複数の目標動作制約に対応してもよい。たとえば、異なる目標接合温度に関連付けられている動作環境に対応する図１の同じ動作点１０３、１０５、１０７、１０９、および１１１は、図２に示される曲線上に表される。言い換えれば、引き続き複数の目標動作制約を網羅しているが、少ない数の動作パラメータおよび動作点が格納されてもよい。
【００２２】
図３は、本開示の少なくとも一部の実施形態によるプロセッサの電力消費量を管理するための方法３００を示す流れ図である。方法３００は、ブロック３０１、３０３、３０５、３０７、および／または３０９により示される１つまたは複数の動作、機能、またはアクションを含むことができる。さまざまなブロックは、説明される実施形態に限定することを意図するものではない。たとえば、１つまたは複数のブロックで識別される動作は追加のブロックに分割されてもよく、他の例においてさまざまな動作が結合されてもよい。一部のその他の例において、さまざまなブロック内の１つまたは複数の動作が除去されてもよい。
【００２３】
方法３００の処理は、ブロック３０１（目標動作制約および第１の動作パラメータを識別する）において開始することができ、ここで方法３００は、目標動作制約および第１の動作パラメータを識別するように構成されてもよい。処理は、ブロック３０１からブロック３０３に続行することができる。ブロック３０３（第２の動作パラメータを決定する）において、第２の動作パラメータは、識別された目標動作制約および識別された第１の動作パラメータに基づいて決定されてもよい。処理は、ブロック３０３からブロック３０５（動作点を定義する）に続行することができ、ここでプロセス３００は、識別された目標動作制約、識別された第１の動作パラメータ、および決定された第２の動作パラメータに基づいてプロセッサの動作点を定義するように構成されてもよい。ブロック３０５からブロック３０７（実際の動作制約を推定する）に続行し、ここで実際の動作制約は、測定、計算、ルックアップテーブル、またはその一部の組み合わせを通じて推定されてもよい。処理は、ブロック３０７からブロック３０９（目標動作制約と実際の動作制約とを比較する）に続行することができ、ここで目標動作制約および実際の動作制約が相互に比較される。ブロック３０９からブロック３１１（プロセッサの動作パラメータをセットアップする）に続行して、プロセッサの動作パラメータは、比較および動作点に基づいてセットアップされる。
【００２４】
ブロック３０１において、目標動作制約および第１の動作パラメータが識別されてもよい。目標動作制約は、最悪の場合の動作制約ではないこともある。最悪の場合の動作制約は全体を通じて、プロセッサの最悪の動作条件を特徴付けるために使用される事前定義済みの動作制約を示すことができる。プロセッサの最悪の場合の動作条件は、すべての動作制約が設計仕様の範囲内ではあるが予想される最悪の値である条件を示すことができる。たとえば、最悪の場合の動作条件は、最遅の許容可能なトランジスタ速度、プロセッサの最大接合温度、プロセッサに供給される最小の実際の電圧、最大の許容可能なグランドノイズ、最大の許容可能なクロックジッタなどによって定義されてもよい。一部の実施形態において、第１の動作パラメータは、プロセッサのコア電圧、プロセッサのクロックレート、プロセッサのクロック乗算器、プロセッサのスリープ状態サイクル、クロックパルスの繰り返し周波数、クロックパルスの幅、プロセッサの出力スロットルなどを含むことができる。
【００２５】
ブロック３０３において、第２の動作パラメータは、ブロック３０１において識別された目標動作制約および第１の動作パラメータに基づいて決定されてもよい。一部の実施形態において、第２の動作パラメータは、プロセッサのコア電圧、プロセッサのクロックレート、プロセッサのクロック乗算器、プロセッサのスリープ状態サイクル、クロックパルスの繰り返し周波数、クロックパルスの幅、プロセッサの出力スロットルなどを含むことができる。ブロック３０５において、第１の動作パラメータ、第２の動作パラメータ、および目標動作制約は、動作点を定義するために使用されてもよい。一部の実施形態において、ブロック３０１、３０３、および３０５は、動作点のセットを定義するために繰り返されてもよい。
【００２６】
ブロック３０７において、実際の動作制約は、測定または計算を通じて推定される。実際の動作制約は、プロセッサが動作している際のプロセッサの実際の接合温度であってもよい。ブロック３０９において、実際の動作制約は、目標動作制約と比較される。ブロック３１１において、比較に基づいて、方法３００は、プロセッサに適切な動作プロファイルを選択する。適切である場合、第１の動作プロファイルで動作しているプロセッサは、第２の動作プロファイルで動作するように切り替えられてもよい。例として、第１の動作プロファイルにおける動作点のうちの１つが、１ＧＨｚのクロックレート、１Ｖのコア電圧、４００°Ｃの測定された接合温度、および３００°Ｃの周辺温度に対応すると仮定する。プロセッサは、リソースを消費するタスクが処理されることが予測されるので、クロックレートが４０％増大されて１．４ＧＨｚになることを決定してもよい。増大したクロックレートに応答して、プロセッサはまた、コア電圧が１．１Ｖに増大されることを決定してもよい。一部の実施態様において、プロセッサは、外部クロックから受信されたクロック信号に基づいて、クロック乗算器を通じてクロックレートを変更することができる。プロセッサはまた、外部電源装置を制御する電力コントローラを通じて、供給されるコア電圧を変更することもできる。周辺温度と測定された接合温度の差、目標コア電圧、および目標クロックレートは、プロセッサの動作プロファイルを定義する識別されたモデルに基づいて、約４７°Ｃの目標接合温度を推定するために使用されてもよい。目標電圧、目標クロックレート、および目標接合温度が、第２の動作プロファイルの動作点と一致する場合、プロセッサは、動作電圧を１．１Ｖに調節するためのコマンドを電源装置に発行するように構成されてもよい。一致しない場合、１．４ＧＨｚの目標クロックレートを達成および保持するために、より高い電圧が必要とされてもよい。
【００２７】
図４は、本開示の少なくとも一部の実施形態によるプロセッサの電力消費量を管理するためのコンピュータプログラム製品４００を示すブロック図である。コンピュータプログラム製品４００は、上記で説明され図３において示される方法を実行するための実行可能命令４０２の１つまたは複数のセットを含むことができる。コンピュータプログラム製品４００は、信号伝搬媒体４０４または別の同様の通信媒体４０６で伝送されてもよい。コンピュータプログラム製品４００はまた、コンピュータ可読媒体４０８または別の同様の記録可能媒体４１０に記録されてもよい。
【００２８】
図５は、本開示の少なくとも一部の実施形態によるプロセッサの電力消費量を管理するように構成された例示のコンピューティングデバイスを示す例示のブロック図である。図５は、プロセッサ５１０、メモリ５２０、および１つまたは複数のドライブ５３０を含むコンピュータ５００を示す。ドライブ５３０およびそれらの関連するコンピュータストレージ媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、およびコンピュータ５００のその他のデータを格納する。ドライブ５３０は、オペレーティングシステム５４０、アプリケーションプログラム５５０、プログラムモジュール５６０、およびデータベース５７０を含むことができる。
【００２９】
コンピュータ５００はまた、プロセッサ５１０の実際の接合温度を検出するように構成された温度センサ５７０を含むことができる。コンピュータ５００は、基準クロック信号５８２を生成するクロック発振器５８１をさらに含むことができる。基準クロック信号５８２は、クロック乗算器５８０に送信されてもよい。クロック乗算器５８０は、プロセッサ５１０が動作されるべき第２のクロック信号５８３を生成するように構成されてもよい。クロック乗算器５８０は、第３のクロック信号５８４を生成するように構成されてもよい。プロセッサ５１０、メモリ５２０、およびドライブ５３０は、第３のクロック信号５８４に基づいて相互に通信されてもよい。加えて、コンピュータ５００は、電力コントローラ５９０、および電源装置５９１を含むことができる。電源装置５９１は、システム電圧５９２を電力コントローラ５９０に提供するように構成されてもよい。電力コントローラ５９０は、システム電圧５９２を規制し、規制された電圧５９３および５９４のセットを生成して、それぞれコンピュータ５００のプロセッサ５１０およびその他のコンポーネント（たとえば、メモリ５２０およびドライブ５３０）に電力を供給するように構成されてもよい。一部の実施態様において、クロック乗算器５８０および電力コントローラ５９０は、プロセッサ５１０内に物理的に配置されてもよい。
【００３０】
一部の実施態様において、温度センサ５７０は、プロセッサ５１０の実際の接合温度を常に検出し、プロセッサ５１０が温度センサ５７０によって検出された実際の接合温度を認識できるように、検出された温度信号５７１をプロセッサ５１０に伝送するように構成されてもよい。プロセッサ５１０は、検出された実際の接合温度をメモリ５２０に保存させる。加えて、プロセッサ５１０は、電力管理プログラムモジュール５６０をメモリ５２０で実行させる。プログラムモジュール５６０は、目標動作制約および第１の動作パラメータを識別すること、目標動作制約および第１の動作パラメータに基づいて第２の動作パラメータを決定すること、実際の動作制約を推定すること、目標動作制約と実際の動作制約とを比較すること、目標動作制約と実際の動作制約との比較に基づいてプロセッサの第１の動作パラメータおよび第２の動作パラメータをセットアップすることを含むステップを実行し（ただし、これらに限定されることはない）、目標動作制約は最悪の場合の動作制約ではない。
【００３１】
コンピューティングデバイス５００は、携帯電話、携帯情報端末（ＰＤＡ）、パーソナルメディアプレイヤーデバイス、無線Ｗｅｂ−ｗａｔｃｈデバイス、パーソナルヘッドセットデバイス、特定用途向けデバイス、または上記の機能のいずれかを含む混合デバイスのような、小型フォームファクタのポータブル（またはモバイル）電子デバイスの一部として実施されてもよい。コンピューティングデバイス５００はまた、ラップトップコンピュータおよびラップトップ以外のコンピュータの構成を含むパーソナルコンピュータとして実施されてもよい。
【００３２】
システムの態様のハードウェア実施とソフトウェア実施との間に差異はほとんどなく、ハードウェアまたはソフトウェアの使用は概して（ただし、特定のコンテキストにおいてハードウェアとソフトウェアからの選択が重要になりうるという点において、常にとは限らない）、コストと効率のトレードオフを象徴する設計上の選択である。本明細書において説明されるプロセスおよび／またはシステムおよび／またはその他の技術が達成されうるさまざまな手段があり、好ましい手段は、プロセスおよび／またはシステムおよび／またはその他の技術が配置されるコンテキストによって変化する。たとえば、実施者が速度および精度が最優先事項であると決定する場合、実施者は主としてハードウェアおよび／またはファームウェア手段を選ぶことができ、柔軟性が最優先事項である場合、実施者は主としてソフトウェア実施を選ぶことができ、あるいは、さらにもう１つの選択肢として、実施者はハードウェア、ソフトウェア、および／またはファームウェアの組み合わせを選ぶこともできる。
【００３３】
前述の詳細な説明は、ブロック図、流れ図、および／または例の使用を介してデバイスおよび／またはプロセスのさまざまな実施形態を示してきた。そのようなブロック図、流れ図、および／または例が１つまたは複数の機能および／または操作を含む限りにおいて、そのようなブロック図、流れ図、または例の中の各機能および／または操作は、多種多様なハードウェア、ソフトウェア、ファームウェア、または実質的にそのあらゆる組み合わせにより、個別および／または集合的に実施されてもよいことを、当業者であれば理解するであろう。１つの実施形態において、本明細書において説明される主題の複数の部分は、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、デジタル信号プロセッサ（ＤＳＰ）、またはその他の統合された形式を介して実施されてもよい。しかし、本明細書において開示される実施形態の一部の態様は、全部または一部が、１つまたは複数のコンピュータで実行する１つまたは複数のコンピュータプログラムとして（たとえば、１つまたは複数のコンピュータシステムで実行する１つまたは複数のプログラム）、１つまたは複数のプロセッサで実行する１つまたは複数のプログラムとして（たとえば、１つまたは複数のマイクロプロセッサで実行する１つまたは複数のプログラムとして）、ファームウェアとして、または実質的にそのあらゆる組み合わせとして、集積回路において実施される等価物であってもよく、ソフトウェアおよび／またはファームウェアのための回路の設計および／またはコードの記述は、本開示に照らして当技術分野の技能が十分に対応できる範囲であろうことが、当業者には理解されよう。加えて、本明細書において説明される主題の機構は、さまざまな形態のプログラム製品として配布されることが可能であり、本明細書において説明される主題の例示的な実施形態は、配布を実際に行うために使用される信号伝搬媒体の特定のタイプには関わりなく適用されることが、当業者には理解されよう。信号伝搬媒体の例は、フロッピー（登録商標）ディスク、ハードディスクドライブ、コンパクトディスク（ＣＤ）、デジタルビデオディスク（ＤＶＤ）、デジタルテープ、コンピュータメモリなどのような記録可能なタイプの媒体、ならびにデジタルおよび／またはアナログ通信媒体（たとえば、光ファイバケーブル、導波管、有線通信リンクおよび／またはチャネル、無線通信リンクおよび／またはチャネルなど）のような伝送タイプの媒体を含むが、これらに限定されることはない。
【００３４】
本明細書において示されるようにデバイスおよび／またはプロセスを説明し、その後工学技術的手法を用いてそのような説明されるデバイスおよび／またはプロセスをデータ処理システムに組み入れることは、当技術分野の範囲内では一般的であることが、当業者には理解されよう。すなわち、本明細書において説明されるデバイスおよび／またはプロセスの少なくとも一部は、妥当な量の実験を介してデータ処理システムに組み入れられてもよい。通常のデータ処理システムは一般的に、システムユニット筐体、ビデオ表示デバイス、揮発性および不揮発性メモリのようなメモリ、マイクロプロセッサおよびデジタル信号プロセッサのようなプロセッサ、オペレーティングシステム、ドライバ、グラフィカルユーザインターフェイス、およびアプリケーションプログラムのような計算エンティティ、タッチパッドまたはスクリーンのような１つまたは複数のインタラクションデバイス、および／またはフィードバックループおよび制御モータ（たとえば、位置および／または速度を感知するためのフィードバック、コンポーネントおよび／または数量を移動および／または調整するための制御モータ）を含む制御システムのうちの１つまたは複数を含むことを当業者は理解するであろう。通常のデータ処理システムは、データコンピューティング／通信および／またはネットワークコンピューティング／通信システムにおいて一般的に見られるような、任意の適切な市販のコンポーネントを使用して実施されてもよい。
【００３５】
本明細書に説明される主題は、場合によっては、異なる他のコンポーネント内に含まれるか、またはそれに接続された異なるコンポーネントを示すこともある。そのような示されるアーキテクチャが単なる例に過ぎないこと、および実際に同じ機能を達成する多くの他のアーキテクチャが実施されてもよいことを理解されたい。概念的な意味において、同じ機能を達成するためのコンポーネントの任意の配置は、望ましい機能が達成されるように効果的に「関連して」いる。したがって、特定の機能を達成するために本明細書において組み合わされた任意の２つのコンポーネントは、アーキテクチャまたは中間コンポーネントには関わりなく、望ましい機能が達成されるように、相互に「関連付けられている」ものと見なされてもよい。同様に、そのように関連する任意の２つのコンポーネントはまた、望ましい機能を達成するために相互に「動作可能に接続されている」または「動作可能に結合されている」ものと見なされてもよく、そのように関連付けられうる任意の２つのコンポーネントはまた、望ましい機能を達成するために相互に「動作可能に結合可能である」と見なされてもよい。動作可能に結合可能であることの具体的な例は、物理的に結合可能および／または物理的に対話するコンポーネント、および／または無線により対話可能および／または無線により対話するコンポーネント、および／または論理的に対話および／または論理的に対話可能なコンポーネントを含むが、これらに限定されることはない。
【００３６】
本明細書における実質的に任意の複数形および／または単数形の用語の使用に関して、当業者は、文脈および／または用途に応じて適切に、複数形から単数形に、および／または単数形から複数形に解釈することができる。さまざまな単数形／複数形の置き換えは、明確にするために本明細書において明示的に示されてもよい。
【００３７】
全体として、本明細書において使用され、特に添付の特許請求の範囲（たとえば、添付の特許請求の範囲の本文）において使用される用語は、概して「オープンな」用語（たとえば、「含んでいる（ｉｎｃｌｕｄｉｎｇ）」という用語は「含んでいるが限定されることはない（ｉｎｃｌｕｄｉｎｇ  ｂｕｔ  ｎｏｔ  ｌｉｍｉｔｅｄ  ｔｏ）」と解釈されるべきであり、「有している（ｈａｖｉｎｇ）」という用語は「少なくとも有している（ｈａｖｉｎｇ  ａｔ  ｌｅａｓｔ）」と解釈されるべきであり、「含む（ｉｎｃｌｕｄｅｓ）」という用語は「含むが限定されることはない（ｉｎｃｌｕｄｅｓ  ｂｕｔ  ｉｓ  ｎｏｔ  ｌｉｍｉｔｅｄ  ｔｏ）」と解釈されるべきである、など）として意図されることが、当業者には理解されよう。特定数の提示される特許請求の範囲の列挙が意図される場合、そのような意図は特許請求の範囲において明示的に列挙され、そのような列挙がない場合にはそのような意図は存在しないことを、当業者はさらに理解するであろう。たとえば、理解を助けるものとして、後段の添付の特許請求の範囲は、特許請求の範囲の列挙を提示するために「少なくとも１つの（ａｔ  ｌｅａｓｔ  ｏｎｅ）」および「１つまたは複数の（ｏｎｅ  ｏｒ  ｍｏｒｅ）」という導入句の使用を含むことができる。しかし、そのような句の使用は、不定冠詞「ａ」または「ａｎ」による特許請求の範囲の列挙の提示が、そのように提示された特許請求の範囲の列挙を含む任意の特定の特許請求の範囲を、たとえ同特許請求の範囲が導入句「１つまたは複数の」または「少なくとも１つの」および「ａ」または「ａｎ」（たとえば、「ａ」および／または「ａｎ」は通常「少なくとも１つの」または「１つまたは複数の」を意味すると解釈されるべきである）のような不定冠詞を含む場合であっても、そのような列挙を１つだけ含む発明に限定することを意味するものと解釈されるべきではなく、同様のことが特許請求の範囲の列挙を提示するために使用される定冠詞の使用についてもあてはまる。加えて、特定数の提示される特許請求の範囲の列挙が明示的に列挙される場合であっても、そのような列挙は通常、少なくとも列挙される数を意味する（たとえば、他の修飾語句を伴わずに「２つの列挙」の単なる列挙は通常、少なくとも２つの列挙、または２つ以上の列挙を意味する）ものと解釈されるべきであることを、当業者は理解するであろう。さらに、「Ａ、Ｂ、およびＣのうちの少なくとも１つ（ａｔ  ｌｅａｓｔ  ｏｎｅ  ｏｆ  Ａ、Ｂ、ａｎｄ  Ｃ）など」と類似した表記規約が使用される場合、一般に、そのような構文は当業者が表記規約を理解するような意味において意図されている（たとえば、「Ａ、Ｂ、およびＣのうちの少なくとも１つを有するシステム」は、Ａのみ、Ｂのみ、Ｃのみ、ＡおよびＢを共に、ＡおよびＣを共に、ＢおよびＣを共に、および／またはＡ、Ｂ、およびＣを共に、などを有するシステムを含むが、これらに限定されることはない）。「Ａ、Ｂ、またはＣのうちの少なくとも１つ（ａｔ  ｌｅａｓｔ  ｏｎｅ  ｏｆ  Ａ、Ｂ、ｏｒ  Ｃ）など」と類似した表記規約が使用される例において、一般に、そのような構文は当業者が表記規約を理解するような意味において意図されている（���とえば、「Ａ、Ｂ、またはＣのうちの少なくとも１つを有するシステム」は、Ａのみ、Ｂのみ、Ｃのみ、ＡおよびＢを共に、ＡおよびＣを共に、ＢおよびＣを共に、および／またはＡ、Ｂ、およびＣを共に、などを有するシステムを含むが、これらに限定されることはない）。実質的に任意の離接語および／または２つ以上の代替用語を表す句は、説明、特許請求の範囲、または図面のいずれにおいてであっても、用語のうちの１つ、用語のいずれか、または両方の用語を含む可能性を考慮するものと理解されるべきであることを、当業者はさらに理解するであろう。たとえば、句「ＡまたはＢ」は、「Ａ」または「Ｂ」または「ＡおよびＢ」の可能性を含むものと理解されよう。
【００３８】
本明細書においてさまざまな態様および実施形態が開示されたが、その他の態様および実施形態は当業者には明らかとなろう。本明細書において説明されるさまざまな態様および実施形態は、説明のためのものであって、限定的であることを意図しておらず、真の範囲および精神は後段の特許請求の範囲により示される。
【図１】
2013502644.tif 000003
2013502644.tif 000004
【図２】
2013502644.tif 000005
2013502644.tif 000006
【図３】
2013502644.tif 000007
【図４】
2013502644.tif 000008
【図５】
2013502644.tif 000009
【国際調査報告】
2013502644.tif 000010