(57)【要約】  携帯型コンピューティングデバイス内の電力領域への入力パラメータを動的に調整するためのシステムおよび方法が開示される。電力領域は、電源を共有する2つ以上の処理資源を含む。2つ以上の処理資源を動的に使用することにより、電力領域における処理資源に関連する状態変化が生じた場合に、入力パラメータを調整する機会が得られる。電力領域におけるコントローラは、入力電圧およびクロック周波数のうちの1つまたは両方を調整するようにデバイスに命じる制御信号を生成することにより、電力領域におけるそれぞれの処理資源に関連する状態インジケータに応答する論理を含む。
2017511538.tif 000002
【特許請求の範囲】
【請求項１】
携帯型コンピューティングデバイス内の電力領域を動的に制御するための方法であって、前記電力領域が電源を共有する処理資源を含み、前記方法が、
前記携帯型コンピューティングデバイス内の前記電力領域における少なくとも2つの処理資源の現在の状態を識別するステップと、
前記携帯型コンピューティングデバイス内の前記電力領域における前記少なくとも2つの処理資源のうちの1つの前記現在の状態の変化に応答して、入力パラメータの調整を開始するステップと、
前記入力パラメータを前記電力領域に印加するステップと
を含む方法。
【請求項２】
前記少なくとも2つの処理資源のうちの1つの前記現在の状態を識別するステップが、前記少なくとも2つの処理資源のうちの1つとのそれぞれの関係において関連付けられる2進状態である、請求項1に記載の方法。
【請求項３】
前記2進状態が、電力印加状態および電力非印加状態のうちの1つを定義する、請求項2に記載の方法。
【請求項４】
前記少なくとも2つの処理資源のうちの1つの前記現在の状態を識別するステップが、前記少なくとも2つの処理資源のうちの1つとのそれぞれの関係においてクロック周波数を定義する、請求項1に記載の方法。
【請求項５】
前記少なくとも2つの処理資源のうちの1つの前記現在の状態を識別するステップが、システム電力マネージャから信号を受け取るステップを含む、請求項1に記載の方法。
【請求項６】
前記調整を開始するステップが資源状態論理を実行するステップを含む、請求項1に記載の方法。
【請求項７】
資源状態論理を実行するステップが、電源に送られる制御信号を生成するステップを含む、請求項6に記載の方法。
【請求項８】
前記制御信号が、電圧を調整するように前記電源に命じる、請求項7に記載の方法。
【請求項９】
前記少なくとも2つの処理資源のうちの1つの前記現在の状態を識別するステップが、センサから信号を受け取るステップを含む、請求項1に記載の方法。
【請求項１０】
前記センサからの前記信号がクロック周波数を識別する、請求項9に記載の方法。
【請求項１１】
前記センサからの前記信号が、いつ電力が印加されたかを識別する、請求項9に記載の方法。
【請求項１２】
前記調整を開始するステップがマスキング論理を実行するステップを含む、請求項9に記載の方法。
【請求項１３】
前記センサからの前記信号が第2のセンサをバイパスする、請求項9に記載の方法。
【請求項１４】
前記入力パラメータの前記調整を開始するステップが、前記少なくとも2つの処理資源にタスクを割り当てる際に論理を適用するスケジューラに情報を通信するステップを含む、請求項1に記載の方法。
【請求項１５】
前記情報が、電圧マージンと、前記少なくとも2つの処理資源との1対1の関係における回路の相対応答性とのうちの1つまたは複数から選択される、請求項14に記載の方法。
【請求項１６】
携帯型コンピューティングデバイス内に配置された電力領域であって、
共有電源によって電力が供給される少なくとも2つの処理資源と、
前記少なくとも2つの処理資源に結合され、かつ、電力マネージャから情報を受け取るように構成されたコントローラであって、前記コントローラは、資源状態論理を用いて前記情報を処理し、前記電力領域内の前記少なくとも2つの処理資源に所望の入力電圧を提供するために電源によって使用される第1の制御信号を生成するように構成されたコントローラと
を備える電力領域。
【請求項１７】
前記資源状態論理が、前記少なくとも2つの処理資源のためのそれぞれの電源電圧の存在に応答する、請求項16に記載の電力領域。
【請求項１８】
前記資源状態論理が、前記少なくとも2つの処理資源のためのそれぞれのクロック周波数に応答する、請求項16に記載の電力領域。
【請求項１９】
前記資源状態論理が、センサチェーン信号プロトコルの中に埋め込まれた状態情報に応答する、請求項16に記載の電力領域。
【請求項２０】
前記コントローラが、前記少なくとも2つの処理資源にタスクを割り当てる際に論理を適用するスケジューラによって使用される第2の制御信号を生成するようにさらに構成される、請求項16に記載の電力領域。
【請求項２１】
携帯型コンピューティングデバイス内の電力領域を動的に制御するための方法であって、前記電力領域が電源を共有する処理資源を含み、前記方法が、
前記携帯型コンピューティングデバイス内の前記電力領域における少なくとも2つの処理資源の現在の状態を識別するステップと、
電力マネージャから受け取った状態情報に応答して、入力パラメータの調整を開始するステップと、
前記少なくとも2つの処理資源の前記現在の状態に応答して、前記電力領域内のセンサバスを修正するステップと、
前記入力パラメータを前記電力領域に印加するステップと
を含む方法。
【請求項２２】
前記少なくとも2つの処理資源のうちの1つの前記現在の状態を識別するステップが、少なくとも2つの電力供給状態を定義する、請求項21に記載の方法。
【請求項２３】
前記少なくとも2つの処理資源のうちの1つの前記現在の状態を識別するステップが、前記少なくとも2つの処理資源のうちの1つとのそれぞれの関係においてクロック周波数を定義する、請求項21に記載の方法。
【請求項２４】
前記センサバスを修正するステップがセンサをバイパスするステップを含む、請求項21に記載の方法。
【請求項２５】
前記センサバスを修正するステップが、センサから電力を除去するステップを含む、請求項21に記載の方法。
【請求項２６】
携帯型コンピューティングデバイス内に配置された電力領域であって、
共有電源によって電力が供給される少なくとも2つの処理資源と、
前記少なくとも2つの処理資源に結合され、かつ、前記少なくとも2つの処理資源を監視するそれぞれのセンサから情報を受け取るように構成されたコントローラであって、前記コントローラは、資源状態論理を用いて前記情報を処理し、前記電力領域内の前記少なくとも2つの処理資源に所望の入力電圧を提供するために電源によって使用される第1の制御信号を生成するように構成されたコントローラと
を備える電力領域。
【請求項２７】
前記資源状態論理が、前記少なくとも2つの処理資源のためのそれぞれのクロック周波数に応答する、請求項26に記載の電力領域。
【請求項２８】
前記資源状態論理が、センサチェーン信号プロトコルの中に埋め込まれた状態情報に応答する、請求項26に記載の電力領域。
【請求項２９】
前記コントローラが、前記少なくとも2つの処理資源にタスクを割り当てる際に論理を適用するスケジューラによって使用される第2の制御信号を生成するようにさらに構成される、請求項26に記載の電力領域。
【請求項３０】
前記スケジューラが、前記入力電圧および利用可能なクロック周波数を使用してタスクを実施することができる処理資源の識別に応答して前記タスクを割り当てる、請求項29に記載の電力領域。
【発明の詳細な説明】
【技術分野】
【０００１】
関連出願
本出願は、参照によりその全体が本文書に組み込まれている、2014年3月25日に出願した、「Apparatus, System and Method for Dynamic Power Management Across Heterogeneous Processors in a Shared Power Domain」(弁理士整理番号141870P1)という名称の米国仮出願第61/970,290号の出願日の優先権および利益を主張するものである。
【背景技術】
【０００２】
コンピューティングデバイスは至る所に存在している。スマートフォン、タブレットコンピュータおよびラップトップコンピュータなどのいくつかのコンピューティングデバイスは携帯型である。これらのデバイスの主機能に加えて、多くは、周辺機能をサポートする要素を含む。たとえばセルラー電話は、セルラー電話呼出しを可能にし、かつ、サポートする主機能、ならびに、スチールカメラ、ビデオカメラ、音楽プレーヤ、広域位置決めシステム(GPS)ナビゲーション、ウェブブラウジング、電子メールの送信および受信、テキストメッセージの送信および受信、プッシュツートーク機能、等々の周辺機能を含むことができる。
【０００３】
ハンドヘルド携帯型コンピューティングデバイスのためのいくつかの従来の設計は、特定のコンピューティングデバイスのために望ましい様々な主機能および周辺機能をサポートするために複数のプロセッサおよび/または複数のコアを有するプロセッサを含む。そのような設計は、しばしば、アナログ回路、デジタル回路および無線周波数回路、またはこれらの機能を単一の基板上にさらに統合しており、一般にシステムオンチップ(SoC)と呼ばれている。これらの異なる回路および機能には、しばしば、異なる動作周波数および電圧レベルが必要であり、また、これらは、共通入力要求事項に基づいて適宜分離される。そのような分離が入力電圧に基づく場合、異なる回路は、共通電源を共有することができる。
【０００４】
そのような携帯型デバイスに電力を提供する電池に蓄えられたエネルギーを節約する要求が動的電力管理技法の実施態様をもたらした。これらの技法は、所望の回路性能を達成するためのクロック周波数、入力電圧または両方の調整を含む。
【０００５】
SoC設計に適用される従来の多重コア電力低減技術は、所望の目標性能を達成するために、測定された回路性能の関数として入力電圧をスケーリングし、それにより半導体製造プロセス変動を補償している。単一の電力領域における複数のコアすなわち機能ブロックが同じ入力電圧に対して異なる応答を有している場合、最も遅い応答に応答するコアすなわち機能ブロックが、必要な入力電圧を指令する。したがって所望の性能を達成するために必要な入力電圧が電力領域に印加される。
【０００６】
図1は、個別の半導体の中に統合された試験回路に印加される電圧および周波数のプロット10を含む。入力電圧は水平軸に沿って示されており、一方、試験回路の周波数応答は垂直軸に沿って示されている。第1の半導体ダイ中の試験回路の応答性は線12で示されており、一方、第2の半導体ダイ中のそれぞれの試験回路の応答性は線14で示されている。第1の半導体ダイ中の第1の試験回路は、第2の半導体ダイ中の全く同じ試験回路よりも速く、かつ、低い入力電圧で応答する。プロットに示されているように、基準電圧VREFが印加されると、高速シリコンは、目標周波数f_targetより高い周波数(たとえばf1_measured)を達成することができる。プロットにさらに示されているように、第1の半導体ダイの試験回路に印加される電源電圧VREF-V1は、試験回路による目標動作周波数の達成を可能にしている。それとは逆に、VREFが第2の半導体ダイに印加されると、試験回路は、目標周波数よりも低い周波数f2_measuredを達成する。試験回路による目標周波数の達成を可能にするためには、電源電圧VREF+V2を第2の半導体ダイに印加しなければならない。これらの状況の下では、第1の半導体ダイは、しばしば、「高速」シリコンを有している、と呼ばれ、一方、第2の半導体ダイは、「低速」シリコンを有している、として記述される。図1にさらに示されているように、第1の半導体ダイおよび第2の半導体ダイのそれぞれの応答性の間の変化は、両方のダイにわたって所望の周波数または目標周波数を達成するためには、目標周波数を達成するために低速シリコンに必要な入力電圧が必要であることを示している。したがって高速シリコンは、V1とV2の合計に等しい電圧マージンで動作されることになる。
【０００７】
静電CMOSゲートを使用している半導体によって散逸されるスイッチング電力はC×V2×fであり、Cはクロックサイクルごとに切り換えられるキャパシタンス、Vは電源電圧、また、fはスイッチング周波数であり、したがって電力消費のこの部分は、電源電圧の変化に応じて二次的に減少する。しかしながら多くの近代のデジタル信号プロセッサ(DSP)および複数のコアプロセッサは、CMOSのみではなく、専用メモリ回路、ドミノ論理などの動的論理、等々を同じく使用して実現されているため、式は正確ではない。その上、静電漏れ電流も同じく存在しており、この静電漏れ電流は、半導体デバイスフィーチャサイズが小さくなるにつれて、また、閾値レベルが低くなるにつれてますます際立っている。
【０００８】
したがって動的電圧スケーリングは、電池によって電力が供給されるデバイスにおけるスイッチング電力消費を管理する戦略に広く使用されている。低電圧モードは、多重コアプロセッサおよびDSPなどの構成要素に関連する電力消費を最少化するために、低められたクロック周波数と関連して使用される。所望の性能が有意な計算電力を要求する場合、電圧および周波数が高くなる。
【０００９】
しかしながらこれらの従来の技法は、電力領域内の複数のコアすなわち全く異なる機能ブロックに影響を及ぼすため、携帯型コンピューティングデバイスの使用には向いていない。電力領域では、各処理資源は共通電源を共有している。
【００１０】
たとえば携帯型スマートフォンの場合、デバイスがパワーオンされている時間の大部分に対して、機能ユニットおよび処理コアの多くは、選択処理コアまたは選択機能回路に電力が供給され、かつ、共有電力領域で使用されている間、低電力消費状態にあるか、またはパワーオフすることさえ可能である。いくつかの使用事例の間、いくつかのコアすなわち機能回路に電力が供給され、かつ、使用され、一定時間の後、もはや必要とされなくなると、パワーオフされるか、または低電力状態に戻される。
【００１１】
図2は、共有クロックおよび入力電圧が複数の処理資源またはコアに分配される従来の電力領域20を示したものである。示されているように、バス18は、それぞれのクロック入力で処理コア22〜28に周期信号を提供している。コア電力低減コントローラ(すなわちCPRコントローラ)15は、電源から第1の電圧を受け取り、また、1つまたは複数センサからの制御信号に応答して、調整された電圧をバス16上に提供する。調整された電圧は、調整された電圧をそれぞれの処理コア22〜28に制御可能に提供するように配置されたスイッチ21〜27の各々に分配される。図2にさらに示されているように、f_targetに対応する所望の応答性を達成するためには、コア22にはVREF+V2の入力電圧が必要である。それとは対照的に、電力領域のための所望の応答性を達成するためには、コア24にはVREF+V2-Xの入力電圧が必要である。一方、所望の応答性を達成するためには、コア26およびコア28にはVREF+V2-2Xの入力電圧が必要である。
【００１２】
所与の瞬間に、携帯型コンピューティングデバイスは、所望のクロック周波数におけるコアの各々のコンピューティング資源を必要とすることがある。図1に示されているように、図2の従来の電力管理技法は、入力電圧VIN=(VREF+V2)を印加することになり、したがって電力領域における各コアは、所望の目標周波数をサポートすることができる。後の時間に、携帯型コンピューティングデバイスは、もはやコアの各々のコンピューティング資源を必要としない可能性がある。しかしながら電力領域のための従来の配電設計は、これらのより速いコアに必要な入力電圧よりも高い入力電圧を印加し続ける。このより高い入力電圧は、1つまたは複数のコアがスタンバイモードまたは低電力モードにある場合であっても印加される。
【発明の概要】
【発明が解決しようとする課題】
【００１３】
したがって電力領域内の電力を節約するための改良型機構が必要である。
【課題を解決するための手段】
【００１４】
携帯型コンピューティングデバイス内の電力領域への入力を動的に調整するためのシステムおよび方法が開示される。電力領域は、電源を共有する2つ以上の処理資源を含む。2つ以上の処理資源を動的に使用することにより、電力領域における処理資源に関連する状態変化が生じた場合に、入力を調整する機会が得られる。電力領域におけるコントローラは、電力領域におけるそれぞれの処理資源に関連する状態インジケータに応答する論理を含む。コントローラ論理は、入力電圧およびクロック周波数のうちの1つまたは両方を調整するようにデバイスに命じる信号を生成する。
【００１５】
実施形態例は、電力領域を有する携帯型コンピューティングデバイスを含む。電力領域は、共有電源から入力電力を受け取る処理資源を含む。少なくとも2つの処理資源に結合されたコントローラは、電力マネージャから情報を受け取るように構成される。コントローラは、資源状態論理を使用して、所望の入力電圧を電力領域に提供するために電源によって使用される第1の制御信号を生成する。
【００１６】
一実施形態例は、処理資源に結合された電力領域コントローラを有する携帯型コンピューティングデバイスを含む。電力領域コントローラは、修正されたセンサチェーン信号プロトコルから情報を受け取る。チェーン内のセンサは、それぞれの回路領域または機能ブロックの動作状態に関する情報を埋め込む。情報は、電力状態およびクロック周波数のうちの1つまたは両方を含む。コントローラは情報を受け取り、かつ、受け取った情報に応じて応答する。たとえば電力領域コントローラは、オフ状態にある選択処理資源からのセンサ情報をマスクし、または無視することができる。別の例では、電力領域コントローラは、それぞれの処理資源がオフ状態にある場合、センサをターンオフするか、またはセンサをバイパスすることができる。
【００１７】
さらに別の実施形態例では、コントローラは、特定の条件の下で、電力領域内の1つまたは複数の処理資源に対する優先権を識別する類似性論理を含む。コントローラは、識別された処理資源にタスクを割り振るスケジューラにこの情報を通信する第2の制御信号を生成する。スケジューラを使用して、全く異なる電力領域にわたって、また、また、個別の電力領域に位置している処理資源間の調整を要求する使用事例に対して、異種機能ブロックを管理することができる。
【００１８】
別の実施形態例は、携帯型コンピューティングデバイス内の電力領域を動的に制御するための方法である。電力領域は、電源を共有する処理資源を含む。方法は、携帯型コンピューティングデバイス内の電力領域における少なくとも2つの処理資源の現在の状態を識別するステップと、現在の状態の変化に応答して入力の調整を開始するステップと、入力を電力領域に印加するステップとを含む。
【００１９】
図面における同様の参照番号は、特に示されていない限り、様々な図を通して同様の部分を参照している。「102A」または「102B」などの文字指定を伴う参照番号の場合、文字指定は、同じ図に存在している2つの同様の部分または要素を区別することができる。ある参照番号が、すべての図にその同じ参照番号を有するすべての部分を包含することが意図されている場合、参照番号に対する文字指定が省略される場合がある。
【図面の簡単な説明】
【００２０】
【図１】個別の半導体の中に統合された試験回路に印加される電位および周波数のプロットである。
【図２】4つのコアプロセッサを含む電力領域における従来の電力低減技法の実施形態例を示す略図である。
【図３】携帯型コンピューティングデバイス例を示す略図である。
【図４】資源状態論理を有する修正された電力領域の実施形態を示す略図である。
【図５】修正された電力領域の代替実施形態の略図である。
【図６】スケジューラに結合された修正された電力領域の実施形態の略図である。
【図７】修正された電力領域の別の実施形態例の略図である。
【図８】携帯型コンピューティングデバイス内の電力領域への入力を動的に制御するための方法の実施形態例を示すフローチャートである。
【発明を実施するための形態】
【００２１】
本明細書において使用される「例示的」という語は、「例、実例または図解として働く」ことを意味している。本明細書において「例示的」として記述されている任意の態様は、他の態様よりも好ましい、または有利な態様として必ずしも解釈してはならない。
【００２２】
この説明においては、「アプリケーション」という用語は、オブジェクトコード、スクリプト、バイトコード、マークアップ言語ファイルおよびパッチなどの実行可能コンテンツを有するファイルを同じく含むことができる。さらに、本明細書において参照されている「アプリケーション」は、オープンされることが必要な場合がある文書、またはアクセスされる必要がある他のデータファイルなどの本質的に実行可能ではないファイルを同じく含むことができる。
【００２３】
「コンテンツ」という用語は、オブジェクトコード、スクリプト、バイトコード、マークアップ言語ファイルおよびパッチなどの実行可能なコンテンツを有するファイルを同じく含むことができる。さらに、本明細書において参照されている「コンテンツ」は、開かれる必要がある場合がある文書またはアクセスされる必要がある他のデータファイルもしくはデータ値などの本質的に実行可能ではないファイルを同じく含むことができる。
【００２４】
この説明に使用されているように、「構成要素」、「データベース」、「モジュール」、「システム」、等々という用語には、ハードウェアであれ、ファームウェアであれ、ハードウェアとソフトウェアの組合せであれ、ソフトウェアであれ、あるいは実行におけるソフトウェアであれ、コンピュータに関連する実体を意味することが意図されている。たとえば構成要素は、それらに限定されないが、プロセッサ上で走るプロセス、プロセッサ、オブジェクト、実行可能ファイル、実行のスレッド、プログラムおよび/またはコンピュータであってもよい。実例として、コンピューティングデバイス上で走るアプリケーションおよびコンピューティングデバイスはいずれも構成要素であってもよい。1つまたは複数の構成要素は、プロセスおよび/または実行のスレッド内に常駐させることができ、また、構成要素は、1つのコンピュータ上に局所化し、および/または2つ以上のコンピュータの間で分散させることも可能である。さらに、これらの構成要素は、様々なデータ構造をその上に記憶した様々なコンピュータ可読媒体から実行することができる。構成要素は、1つまたは複数のデータパケット(たとえば局所システム内、分散システム内、および/または他のシステムを有するインターネットなどのネットワーク全体にわたる別の構成要素と信号によって対話する1つの構成要素からのデータ)を有する信号などに従って、局所プロセスおよび/または遠隔プロセスによって通信することができる。
【００２５】
この説明においては、「携帯型コンピューティングデバイス」またはPCDという用語は、電池および/またはコンデンサなどの限られた容量の充電式電源上で動作する任意のデバイスを記述するべく使用されている。充電式電源を有するPCDは、すでに数十年にわたって使用されているが、第3世代(「3G」)および第4世代(「4G」)のワイヤレス技術の出現と結合した充電式電池の技術的な進歩は、複数の機能を有する多くのPCDを可能にしている。したがってPCDは、とりわけ、セルラー電話、衛星電話、ページャ、PDA、スマートフォン、ナビゲーションデバイス、スマートブックすなわちリーダ、メディアプレーヤ、上記デバイスの組合せ、ワイヤレス接続を有するラップトップコンピュータまたはタブレットコンピュータであってもよい。
【００２６】
携帯型コンピューティングデバイス内の電力領域への入力パラメータを動的に調整するためのシステムおよび方法が開示される。電力領域は、電源を共有する2つ以上の処理資源を含む。2つ以上の処理資源を動的に使用することにより、電力領域における処理資源に関連する状態変化が生じた場合に、入力パラメータを調整する機会が得られる。電力領域におけるコントローラは、入力電圧およびクロック周波数のうちの1つまたは両方を調整するようにデバイスに命じる制御信号を生成することにより、電力領域におけるそれぞれの処理資源に関連する状態インジケータに応答する論理を含む。
【００２７】
第1の実施形態では、状態インジケータは、電力領域の外部のソースから受け取られる。状態インジケータは、対応する処理資源がパワーオンされているか、パワーオフされているか、または低電力状態にあるかを指示する。この第1の実施形態の変形形態では、多重状態インジケータは、電力領域に通信される入力電圧およびクロック周波数に応答する情報を含む。さらに別の変形形態では、複数の状態インジケータは、電力領域に提供される入力電圧、ならびに電力領域内の各個別の処理資源に提供されるクロック周波数に応答する情報を含む。
【００２８】
第2の実施形態では、電力領域の各処理資源の中に統合されたセンサを含む、電力領域全体にわたって分散された一連のセンサからの情報を通信するために使用されるプロトコルは、それぞれの処理資源の電力状態に応答する情報を含むように修正される。情報は、対応する処理資源がパワーオンされているか、パワーオフされているか、または低電力状態にあるかを反映する。さらに、情報は、各処理資源に提供されるクロック周波数をさらに含むことができる。センサがパワーオフされている処理資源内に存在している場合、修正された信号プロトコルは、それぞれのセンサからの情報を無視するか、またはマスクするように電力領域コントローラに命令するマスクビットを含むことができる。第2の構造の代替では、非活動状態の機能ブロックまたは処理資源内のセンサはパワーオフされ、また、センサチェーン内でバイパスされる。
【００２９】
別の実施形態では、電力領域は、資源状態論理および周波数同調論理の両方を使用して構造化されたコントローラを含む。コントローラは、電力領域内の他の処理資源の代わりに1つまたは複数の処理資源に対する類似性または優先権を含む第2の制御信号を生成する。第2の制御信号は、類似性または優先権情報を使用して、現在の要求に合致させる必要がある処理資源を決定するスケジューラに通信される。スケジューラは、回路(ハードウェア)の中またはソフトウェアの中で具体化することができる。
【００３０】
追加実施形態では、共有電力バスを介して電力を受け取る様々な全く異なる処理資源、すなわち異種処理資源が電力領域を定義する。これらの追加実施形態がビデオプロセッサおよびディスプレイプロセッサを含んでいる場合、領域コントローラは、アイドル時間の間、所望の性能を達成するために消費される電力を低減するために、共有電力バス上の入力電圧を調整することができる。
【００３１】
PCD内における動作をとりわけ参照して説明したが、説明した電力管理システムおよび方法は、入力電圧に対する全く異なる応答性特性を有する機能回路を含む1つまたは複数の個別の電力領域を有する任意のコンピューティングシステムに適用することができる。言い換えると、電力管理システムおよび方法は、処理資源に単一の入力電圧を提供する共有電源によって電力が供給される処理資源を有する、デスクトップコンピュータ、サーバコンピュータまたは任意の電子デバイスに適用することができる。
【００３２】
ここで、図示される例が参照される。最初に図3を参照すると、携帯型コンピューティングデバイス(PCD)の例示的非制限態様が示されており、一括して100で示されている。示されているように、PCD100は、マルチコアCPU210を含むオンチップシステム120を含む。マルチコアCPU210は、ゼロ番目のコア211、1番目すなわち第1のコア212およびN番目のコア214を含む。コアすなわち処理資源211〜214は、改良型電力領域400内の要素である。
【００３３】
改良型電力領域400は自律的に動作することができ、あるいはハイパーバイザ240によってイネーブルされる制御スキームの下で動作させることができる。ハイパーバイザ240は、それらに限定されないが、デジタル信号プロセッサ(DSP)220およびグラフィカルプロセッサユニット(GPU)190などのオンチップシステム120の選択要素、ならびにいくつかの構造では、携帯型コンピューティングデバイス100上の電力消費を低減するために実時間で適用することができる1つまたは複数の電力管理技法をサポートする他の選択周辺要素に関連する状態情報を記録する。改良型電力領域400のアーキテクチャおよび動作については、図4〜図7に示されている実施形態例の説明に関連してさらに説明される。
【００３４】
図3に示されているように、ディスプレイコントローラ128およびタッチスクリーンコントローラ130は、マルチコアCPU210に結合されている。また、オンチップシステム120の外部のディスプレイ/タッチスクリーン132は、ディスプレイコントローラ128およびタッチスクリーンコントローラ130に結合されている。ビデオCODEC134、たとえば位相反転線(PAL:phase alternating line)エンコーダ、順次式カラーメモリ(SECAM:sequential couleur a memoire)エンコーダまたは全国テレビジョン方式委員会(NTSC:national television system(s) committee)エンコーダは、マルチコアCPU210に結合されている。さらに、ビデオ増幅器136は、ビデオCODEC134およびディスプレイ/タッチスクリーン132に結合されている。また、ビデオポート138はビデオ増幅器136に結合されている。図3に示されているように、ユニバーサルシリアルバス(USB)コントローラ140はマルチコアCPU210に結合されている。また、USBポート142はUSBコントローラ140に結合されている。システムメモリ250および加入者識別モジュール(SIM)カード146をマルチコアCPU210に結合することも可能である。ハイパーバイザ240は、システムメモリ250または代替不揮発性記憶素子(図示せず)に記憶されている命令に従って1つまたは複数のアルゴリズムを実行する。さらに、図3に示されているように、デジタルカメラ148をマルチコアCPU210に結合することができる。例示的態様では、デジタルカメラ148は、電荷結合デバイス(CCD)カメラまたは相補性金属酸化膜半導体(CMOS)カメラである。
【００３５】
図3にさらに示されているように、ステレオオーディオCODEC150をマルチコアCPU210に結合することができる。その上、オーディオ増幅器152をステレオオーディオCODEC150に結合することも可能である。例示的態様では、第1のステレオスピーカ154および第2のステレオスピーカ156は、オーディオ増幅器152に結合されている。図3は、マイクロホン増幅器158をステレオオーディオCODEC150に結合することも可能であることを示している。さらに、マイクロホン116をマイクロホン増幅器158に結合することができる。特定の態様では、周波数変調(FM)無線チューナ162をステレオオーディオCODEC150に結合することができる。また、FMアンテナ164がFM無線チューナ162に結合されている。さらに、ステレオポート166をステレオオーディオCODEC150に結合することができる。
【００３６】
また、図3は、無線周波数(RF)システムすなわちトランシーバ212がマルチコアCPU210に結合されていることを同じく示している。RFスイッチ170は、RFトランシーバ212およびRFアンテナ172に結合することができる。図3に示されているように、キーパッド174はマルチコアCPU210に結合されている。また、マイクロホンを備えたモノヘッドセット176をマルチコアCPU210に結合することも可能である。さらに、バイブレータデバイス178をマルチコアCPU210に結合することも可能である。図3は、さらに、USBコントローラ140を介して電源180をオンチップシステム120に結合することができることを示している。特定の態様では、電源180は、電力を必要とするPCD100の様々な構成要素に電力を提供する直流(DC)電源である。さらに、特定の態様では、電源は、充電式DC電池、またはAC電源に接続される交流(AC)-DC変圧器から引き出されるDC電源である。
【００３７】
図3は、さらに、PCD100は、データネットワーク、たとえばローカルエリアネットワーク、パーソナルエリアネットワークまたは任意の他のネットワークにアクセスするために使用することができるネットワークカード188を同じく含むことができることを示している。ネットワークカード188は、Bluetooth(登録商標)ネットワークカード、WiFiネットワークカード、パーソナルエリアネットワーク(PAN)カード、または当技術分野でよく知られている任意の他のネットワークカードであってもよい。さらに、ネットワークカード188は、集積回路の中に統合することも可能である。すなわち、ネットワークカード188は、チップ内のフルソリューションであってもよく、個別のネットワークカード188でなくてもよい。
【００３８】
図3に示されているように、ディスプレイ/タッチスクリーン132、ビデオポート138、USBポート142、カメラ148、第1のステレオスピーカ154、第2のステレオスピーカ156、マイクロホン116、FMアンテナ164、ステレオポート166、RFスイッチ170、RFアンテナ172、キーパッド174、モノヘッドセット176、バイブレータ178および電源180は、オンチップシステム120の外部に存在している。
【００３９】
1つまたは複数のモデムを含むことができるRFシステムすなわちトランシーバ212は、モバイル通信のための広域システム(「GSM(登録商標)」)、符号分割多重アクセス(「CDMA」)、広帯域符号分割多重アクセス(「W-CDMA」)、時分割同期符号分割多重アクセス(「TDSCDMA」)、ロングタームエボルーション(「LTE」)、およびそれらに限定されないが、FDB/LTE、PDD/LTEおよび将来のワイヤレスプロトコルなどのLTEの変形形態のうちの1つまたは複数をサポートすることができる。示されている実施形態では、RFシステム212は、オンチップシステム120と共に統合されている。代替実施形態では、RFシステム212およびRFスイッチ170は、オンチップシステム120とは別の、統合されたRFモジュールの中でサポートすることができる。さらに他の実施形態では、RFシステム212およびRFスイッチ170は、いずれもオンチップシステム120とは別であり、また、互いに別である。
【００４０】
示されている実施形態では、マルチコアCPU210の単一の事例が示されている。しかしながら、PCD100に関連する様々な周辺デバイスおよび機能をサポートするために、任意の数の同様に構成されたマルチコアCPUを含むことができることを理解されたい。別法としては、単一の算術論理演算ユニットまたはコアをそれぞれ有する単一のプロセッサまたは複数のプロセッサは、必要に応じてPCD100に関連する様々な周辺デバイスおよび機能をサポートするために、PCD100または他のコンピューティングデバイスの中で展開することができる。
【００４１】
特定の態様では、本明細書において説明される方法ステップのうちの1つまたは複数は、システムメモリ250に記憶されたデータおよびプロセッサ命令の組合せを介してイネーブルすることができる。これらの命令は、本明細書において説明される方法を実施するために、マルチコアCPU210によって実行することができる。さらに、マルチコアCPU210、システムメモリ250、EEPROM(図示せず)またはそれらの組合せは、本明細書において説明される方法ステップのうちの1つまたは複数を実行するための資源状態論理、周波数同調論理、応答性データおよび構成パラメータを含む電力管理論理の非一時的表現を記憶するための手段として働くことができる。
【００４２】
図4は、修正すなわち改良された電力領域すなわち電力領域400を示す略図である。電力領域400は、電源180および複数のクロック信号に結合されている。示されている実施形態では、電力領域400は、処理資源ごとにそれぞれのクロック信号を受け取っている。機能ブロック402〜408の各々は、少なくとも1つの処理資源を個別に表している。第1のクロック信号入力416は、第1の機能ブロック402に結合されている。第2のクロック信号入力417は、第2の機能ブロック404に結合されている。第3のクロック信号入力418は、第3の機能ブロック406に結合されている。第4のクロック信号入力419は、第4の機能ブロック408に結合されている。それぞれのクロック信号入力416〜419は、ハイパーバイザ240からそれぞれの位相固定ループクロック源に通信される制御入力に応答する。代替実施形態では、電力領域400は、2つ、3つまたは5つ以上の機能ブロックを使用して配列することができる。とりわけこれらの代替実施形態では、クロック信号源は、入力電圧の変化に対して同じように応答する機能ブロックの間で共有することができる。
【００４３】
示されている実施形態では、電力領域400は、それぞれのスイッチ401〜407が入力電圧を対応する機能ブロックに運ぶように構成される場合、調整可能な入力電圧を機能ブロック402〜408に提供するバス185を含む。コントローラ420は、接続425を介して制御信号を電源180に提供する。制御信号は、接続415上で電力領域400の外部のソースから通信される状態情報に応答する。コントローラ420は、電源出力に所望の電圧が得られる方法で制御信号を変更するように構成される資源状態論理422を含む。資源状態論理422は、接続415上で受け取った状態情報に対して、論理回路を実行すること、および/または、調整を開始するかもしくは調整を制御信号に命じる実行可能命令を実行することによって、所望の無矛盾の方法で応答する。状態情報は、機能ブロック402〜408の各々がパワーオンされているか、もしくはパワーオフされているかどうかを含み、または別法としては、パワーオンされている場合、状態情報は、追加として、機能ブロック402〜408が高電力状態であるか、中間電力状態であるか、スタンバイ状態であるか、もしくは低電力状態であるかどうかを含むことも可能である。状態情報は、電力領域400内で動作している処理資源すなわち機能ブロック402〜408の現在の状態を識別する。言い換えると、資源状態論理422は、電力領域内の処理資源のためのそれぞれの電源電圧の存在に応答する。接続415上で通信される状態情報は、携帯型コンピューティングデバイス100内のハードウェアまたはソフトウェア内(たとえばハイパーバイザ240内)でイネーブルされるシステム電力マネージャ内で生成することができる。
【００４４】
いくつかの実施形態では、状態情報は2進状態(たとえばオンまたはオフ、すなわち電力が印加されている、または電力が印加されていない)である。たとえばスイッチ401〜407のうちの1つが閉じている場合、電力印加状態を通信することができる。どのような現在の状態が識別されても、機能ブロック402〜408などの処理資源とそれぞれの1対1の関係で関連付けられる。状態情報が、パワーオン状態に加えて、さらに、高電力状態、中間電力状態、スタンバイ状態または低電力状態を識別すると、この追加情報は、単一の2進ビットよりも多い2進ビットによって表される。調整された電圧、すなわち所望の電圧は、調整された電圧をそれぞれの機能ブロック402-408に制御可能に提供するために、スイッチ401〜407の各々に分配される。機能ブロック402〜408を動的に使用することにより、状態変化、すなわち電力領域400における機能ブロック(すなわち処理資源)に関連する状態に変化が生じた場合に、入力電圧、クロックの周波数または両方などの入力パラメータを調整する機会が得られる。
【００４５】
状態情報または状態インジケータは、電力領域400の外部のソースから受け取られる。この第1の実施形態の変形形態では、多重状態インジケータは、電力領域に通信される入力電圧およびクロック周波数に応答する情報を含む。さらに別の変形形態では、複数の状態インジケータは、電力領域400に提供される入力電圧、ならびに電力領域400内の各個別の処理資源に提供されるクロック周波数に応答する情報を含む。
【００４６】
電力領域400は、それぞれのセンサの各々の近傍の回路の応答性を決定するように構成された試験回路と共に配置された一組のセンサを使用してさらに配列されている。示されているように、一組のセンサは、コントローラ420で始まってコントローラ420で終わるセンサバス421上に互いに直列に結合されている。センサ431は、コントローラ420と機能ブロック402との間の回路領域のバス421に沿って位置している。同様に、センサ436は、機能ブロック408とコントローラ420との間の回路領域のバス421に沿って位置している。バス421に沿って位置しているセンサは、応答性データを有するインジケータまたはインデックスを提供するように構成されている。インジケータまたはインデックスは、電力領域400内に対応する回路領域または機能ブロックを定義している。機能ブロックの外部または対応する機能ブロック402〜408内の様々な回路領域から提供される応答性情報は、コントローラ420内の資源状態論理または他の論理回路が使用して、接続425上の制御信号を調整することができる。いくつかの構造では、提供される応答性情報は、第2の回路領域または第2の機能ブロックに対する第1の回路領域または機能ブロックの相対応答性の測度であってもよい。
【００４７】
図5は、修正された電力領域500の代替実施形態の略図である。修正された電力領域500は、電力領域500が外部ソースから状態情報を受け取るようにはなされていない点で電力領域400とは異なっている。電力管理アプリケーションまたはハイパーバイザ240などの外部ソースから状態情報を受け取る代わりに、修正された電力領域500は、修正されたセンサチェーン信号プロトコルから状態情報および追加情報を受け取る。チェーン521内のセンサは、それぞれの機能ブロック、あるいはセンサ531またはセンサ536の場合、機能ブロック402〜408内ではなく、依然として電力領域500内の回路領域の動作状態に関する情報を埋め込む。情報は、電力状態およびクロック周波数のうちの1つまたは両方を含む。この実例では、コントローラ520は、状態情報およびクロック周波数を受け取り、かつ、バス185上の所望の入力電圧を達成するために、所望の方法で接続525上の制御信号を調整することにより、その受け取った状態情報およびクロック周波数に応答する。
【００４８】
たとえばコントローラ520は、マスクまたは無視されるべき特定のセンサ情報を識別するためにマスキング論理を実行する。そのようにマスクまたは無視されるとき、オフ状態にある対応する処理資源すなわち機能ブロック402〜408からのセンサ情報がマスクまたは無視される。別の例では、コントローラ520は、それぞれの処理資源がオフ状態にある場合、選択センサをターンオフし、かつ、そのセンサをバイパスする。図解を簡潔にするためにバイパス経路すなわち回路は示されていないが、電力領域500の周りに分散されているセンサのうちの1つまたは複数は、そのようなバイパス回路すなわち経路によって増加され得ることを理解されたい。そのように提供されると、埋め込まれた状態情報およびそれぞれのクロック周波数は、適用可能である場合、バス521に沿って通信されることになり、それによりコントローラ520への途中、バイパスされた1つまたは複数のセンサを回避する。
【００４９】
状態情報は、電力領域500内で動作している処理資源すなわち機能ブロック402〜408の現在の状態を識別する。言い換えると、資源状態論理522は、電力領域内の処理資源のためのそれぞれの電源電圧の存在に応答する。バス521上で通信される状態情報は、修正されたセンサチェーン信号プロトコルに従って通信される。いくつかの実施形態では、状態情報は2進状態(たとえばオンまたはオフ、すなわち電力が印加されている、または電力が印加されていない)である。たとえばスイッチ401〜407のうちの1つが制御可能に閉じた位置に向けられ、かつ、バス185上に存在する入力電圧が対応する機能ブロックに提供すなわち供給されると、電力印加状態を決定することができる。現在の状態は、それぞれの機能ブロックと1対1の関係で関連付けられる。状態情報が、パワーオン状態に加えて、さらに、高電力状態、中間電力状態または低電力状態を識別すると、追加情報は、単一の2進ビットよりも多い2進ビットによって表される。
【００５０】
図6は、修正された電力領域600の別の実施形態の略図である。修正された電力領域600は、電力領域600が資源状態論理622および周波数同調論理624の両方を有するコントローラ620を使用して配列されている点で電力領域500とは異なっている。コントローラ620は、接続625上で電源180に送られる第1の制御信号を生成する。コントローラ620は、さらに、接続623上で通信される、電力領域600内の他の処理資源の代わりに1つまたは複数の処理資源に対する類似性または優先権を含む第2の制御信号を生成する。第2の制御信号は、類似性または優先権情報を使用して、現在の性能要求に合致させる必要がある処理資源すなわち機能ブロックを決定するスケジューラ630に通信される。スケジューラ630は、回路(ハードウェア)の中で、または電力マネージャまたはハイパーバイザの中などのソフトウェアの中で具体化することができる。しかしながら、具体化されたスケジューラ630は、論理を適用して処理資源にタスクを割り当てる。タスク割当ては、接続635上で、電力領域600の機能ブロック402〜408の各々、または別法としては接続416〜419の各々に結合されたクロック信号源に通信される制御情報の形態で通信される。
【００５１】
示されているように、一組のセンサが、コントローラ620で始まってコントローラ620で終わるセンサバス521上に互いに直列に結合されている。センサ631は、コントローラ620と機能ブロック402との間の回路領域のバス521に沿って位置している。同様に、センサ636は、機能ブロック408とコントローラ620との間の回路領域のバス521に沿って位置している。バス521に沿って位置しているセンサは、応答性データを有するインジケータまたはインデックスを提供する。インジケータまたはインデックスは、電力領域600内に対応する回路領域または機能ブロックを定義している。機能ブロックの外部または対応する機能ブロック402〜408内の様々な回路領域から提供される応答性情報は、接続625上の第1の制御信号を調整するために、コントローラ620内の資源状態論理622によって使用される。さらに、機能ブロック402〜408のうちの1つまたは複数の中に位置しているセンサは、バス521に沿って、コントローラ620内の周波数同調論理624にクロック周波数情報を提供することができる。周波数同調論理624は、状態情報と共にクロック周波数情報を使用して、接続623上の第2の制御信号を調整する。図解を簡潔にするためにバイパス経路すなわち回路は示されていないが、電力領域600の周りに分散されているセンサのうちの1つまたは複数は、そのようなバイパス回路すなわち経路によって増加され得ることを理解されたい。そのように提供されると、埋め込まれた状態情報およびそれぞれのクロック周波数は、適用可能である場合、バス521に沿って通信されることになり、それによりコントローラ620への途中、バイパスされた1つまたは複数のセンサを回避する。
【００５２】
図7は、修正された電力領域700の実施形態例の略図である。電力領域700は、共有電力バス185を介して電力を受け取る様々な全く異なる処理資源、すなわち異種処理資源を含む。電力領域700は、マルチコアプロセッサ210、GPU190、ビデオCODEC134およびステレオ/オーディオCODEC150を含む。これらの全く異なる処理資源のうちの1つまたは複数がアイドルである時間の間、コントローラ720は、所望の性能を依然として達成する一方で、消費される電力を低減するために、電源180への接続725上の制御信号を操作することによって共有電力バス185上の入力電圧を調整することができる。
【００５３】
電力領域700は複数のクロック信号を受け取る。示されている実施形態では、電力領域700は、処理資源ごとにそれぞれのクロック信号を受け取っている。第1のクロック信号入力716はCPU210に結合されている。第2のクロック信号入力717はGPU190に結合されている。第3のクロック信号入力718はビデオCODEC134に結合されている。第4のクロック信号入力719は、ステレオ/オーディオCODEC150に結合されている。それぞれのクロック信号入力716〜719は、ハイパーバイザ240からそれぞれの位相固定ループクロック源に通信される制御入力に応答する。代替実施形態では、電力領域700は、より多くの、またはより少ない機能ブロックを使用して配列することができる。とりわけこれらの代替実施形態では、クロック信号源は、入力電圧の変化に対して同じように応答する機能ブロックの間で共有することができる。
【００５４】
示されている実施形態では、電力領域700は、CPU210、GPU190、ビデオCODEC134およびステレオ/オーディオCODEC150に調整可能な入力電圧を提供するバス185を含む。示されている構造では、バス185上の入力電圧は、CPU210に提供される前は切り換えられない。CPU210とは異なり、バス185上の入力電圧は、それぞれスイッチ701、スイッチ702およびスイッチ703を介して、GPU190、ビデオCODEC134およびステレオ/オーディオCODEC150に運ばれる。コントローラ720は、接続725を介して制御信号を電源180に提供する。制御信号は、バス721上で通信される状態情報に応答する。コントローラ720は、電源出力に所望の電圧が得られる方法で制御信号を変更するように構成される資源状態論理722を含む。資源状態論理722は、バス721上で受け取った状態情報に対して、所望の無矛盾の方法で応答する。状態情報は、GPU190、ビデオCODEC134またはステレオ/オーディオCODEC150の各々がパワーオンされているか、パワーオフされているかどうか、あるいは中間電力状態であるか、スタンバイ状態であるか、または低電力状態であるかどうかを含む。調整された電圧、すなわち所望の電圧は、調整された電圧をGPU190、ビデオCODEC134およびステレオ/オーディオCODEC150に制御可能に提供するために、スイッチ701〜703の各々に分配される。これらの処理資源を動的に使用することにより、状態変化、すなわち電力領域700における処理資源に関連する状態に変化が生じた場合に、入力電圧、クロックの周波数または両方などの入力パラメータを調整する機会が得られる。
【００５５】
電力領域700は、それぞれのセンサの各々の近傍の回路の応答性を決定するように構成された試験回路と共に配置された一組のセンサを使用してさらに配列されている。示されているように、一組のセンサは、コントローラ720で始まってコントローラ720で終わるセンサバス721上に直列に結合されている。センサ731は、コントローラ720とマルチコアCPU210との間の回路領域のバス721に沿って位置している。同様に、センサ736は、ステレオ/オーディオCODEC150とコントローラ720との間の回路領域のバス721に沿って位置している。バス721上のセンサは、応答性データを有するインジケータまたはインデックスを提供するように構成されている。インジケータまたはインデックスは、電力領域700内に対応する回路領域または機能ブロックを定義している。処理資源の外部または対応するCPU210、GPU190、ビデオCODEC134もしくはステレオ/オーディオCODEC150内の様々な回路領域から提供される応答性情報は、コントローラ720内の資源状態論理722または他の論理回路が使用して、接続725上の制御信号を調整することができる。図解を簡潔にするためにバイパス経路すなわち回路は示されていないが、電力領域700の周りに分散されているセンサのうちの1つまたは複数は、そのようなバイパス回路すなわち経路によって増加され得ることを理解されたい。そのように提供されると、埋め込まれた状態情報はバス721に沿って通信されることになり、それによりコントローラ720への途中、バイパスされた1つまたは複数のセンサを回避する。
【００５６】
図8は、携帯型コンピューティングデバイス内の電力領域への入力を動的に制御するための方法800の実施形態例を示すフローチャートである。ブロック802で、携帯型コンピューティングデバイスの電力領域内の少なくとも2つの処理資源の現在の状態が識別される。説明されているように、現在の状態は、処理資源ごとの少なくともオン/オフ状態を含む。いくつかの構造では、現在の状態は、低電力状態またはスタンバイ状態を定義する。さらにいくつかの他の構造では、現在の状態は、クロック周波数などの追加情報を含むことができる。ブロック804で、ブロック802で識別された電力領域内の状態の変化に応答して入力パラメータが調整される。調整は、電力領域内の入力レールに結合される電源によって印加される電位を高くし、あるいは低くすることを含む。いくつかの構造では、調整は、電力領域内のそれぞれの処理資源に結合されたクロック信号の周波数を高くし、あるいは低くすることをさらに含むことができる。ブロック806で、入力パラメータが電力領域に印加される。
【００５７】
本明細書において説明されているプロセスまたはプロセスフローにおける特定のステップは、当然、本発明を説明したように機能させるために他のステップに先行している。しかしながら、そのような順序またはシーケンスが本発明の機能を変えない場合、本発明は、説明されているステップの順序に限定されない。すなわち、いくつかのステップが、本発明の範囲を逸脱することなく、他のステップの前、後、またはそれと並行して(実質的に同時に)実施することができることを認識されたい。いくつかの実例では、特定のステップは、本発明から逸脱することなく、省略すなわち実施されない場合がある。さらに、「それ以降」、「その後」、「次に」、「引き続いて」、等々などの語には、ステップの順序を制限することは意図されていない。これらの語は、単に例示的な方法の説明を通して読者を導くために使用されている。
【００５８】
さらに、携帯型コンピューティングデバイス内の電力管理の技術者は、適当なハードウェアおよび/もしくは回路を識別することができ、ならびに/または本明細書におけるフローチャートおよび関連する説明に基づいて、困難を伴うことなく、開示された発明を実現するための適当な論理および決定を識別することができる。したがって、プログラムコード命令、決定閾値または詳細なハードウェアデバイスの特定のセットの開示は、必ずしも本発明の構築方法および使用方法を適切に理解するために必須のものとは見なされない。特許請求されるプロセッサイネーブルプロセスおよび回路アーキテクチャの本発明による機能および態様は、上記説明の中で、様々なプロセスフローを示すことができる図面に関連してより詳細に説明されている。
【００５９】
上で示された1つまたは複数の例示的態様では、説明された機能は、ハードウェア、ソフトウェア、ファームウェアまたはそれらの任意の組合せで実現することができる。ソフトウェアで実現される場合、機能は、非一時的プロセッサ可読媒体などのコンピュータ可読媒体上に、1つまたは複数の命令またはコードとして記憶することができる。コンピュータ可読媒体は、データ記憶媒体を含む。
【００６０】
記憶媒体は、コンピュータまたはプロセッサによってアクセスすることができる任意の利用可能な媒体であってもよい。非制限の一例として、そのようなコンピュータ可読媒体は、RAM、ROM、EEPROM、CD-ROMもしくは他の光ディスク記憶装置、磁気ディスク記憶装置もしくは他の磁気記憶デバイス、または命令もしくはデータ構造の形態で所望のプログラムコードを搬送もしくは記憶するために使用することができ、また、コンピュータによってアクセスすることができる任意の他の媒体を含むことができる。本明細書において使用されているように、ディスク(disk)およびディスク(disc)は、コンパクトディスク(disc)(「CD」)、レーザディスク(disc)、光ディスク(disc)、デジタル汎用ディスク(disc)(「DVD」)、フロッピーディスク(disk)およびブルーレイディスク(disc)を含み、ディスク(disk)は通常、データを磁気的に再生し、一方、ディスク(disc)は、レーザを使用してデータを光学的に再生する。上記の組合せは、非一時的コンピュータ可読媒体の範囲内に同じく含まれるものとする。
【００６１】
以上、選択された態様について図解し、かつ、詳細に説明したが、本明細書において、特許請求の範囲によって定義されている本システムおよび方法から逸脱することなく、様々な置換および改造を加えることができることは理解されよう。
【符号の説明】
【００６２】
10  個別の半導体の中に統合された試験回路に印加される電圧および周波数のプロット
12  第1の半導体ダイ中の試験回路の応答性を示す線
14  第2の半導体ダイ中の試験回路の応答性を示す線
15  コア電力低減コントローラ(CPRコントローラ)
16、18、185  バス
20  電力領域
21、23、25、27、401、403、405、407、701、702、703  スイッチ
22  処理コア0
24  処理コア1
26  処理コア2
28  処理コア3
100  携帯型コンピューティングデバイス(PCD)
116  マイクロホン
128  ディスプレイコントローラ
120  オンチップシステム
130  タッチスクリーンコントローラ
132  ディスプレイ/タッチスクリーン
134  ビデオCODEC
136  ビデオ増幅器
138  ビデオポート
140  ユニバーサルシリアルバス(USB)コントローラ
142  USBポート
146  加入者識別モジュール(SIM)カード
148  デジタルカメラ
150  ステレオオーディオCODEC
152  オーディオ増幅器
154  第1のステレオスピーカ
156  第2のステレオスピーカ
158  マイクロホン増幅器
162  周波数変調(FM)無線チューナ
164  FMアンテナ
166  ステレオポート
170  RFスイッチ
172  RFアンテナ
174  キーパッド
176  モノヘッドセット
178  バイブレータデバイス
180  電源
188  ネットワークカード
190  グラフィカルプロセッサユニット(GPU)
210  マルチコアCPU(マルチコアプロセッサ)
211  ゼロ番目のコア
212  1番目すなわち第1のコア、RFトランシーバ
214  N番目のコア
220  デジタル信号プロセッサ(DSP)
240  ハイパーバイザ
250  システムメモリ
400  改良型電力領域
402  第1の機能ブロック
404  第2の機能ブロック
406  第3の機能ブロック
408  第4の機能ブロック
415、425、525、623、625、635、725  接続
416、716  第1のクロック信号入力(接続)
417、717  第2のクロック信号入力(接続)
418、718  第3のクロック信号入力(接続)
419、719  第4のクロック信号入力(接続)
420、520、620、720  コントローラ
421、521、721  センサバス
422、522、622、722  資源状態論理
431、436、531、536、631、636、731、736  センサ
500、600、700  修正された電力領域
624  周波数同調論理
630  スケジューラ
【図１】
2017511538.tif 000003
【図２】
2017511538.tif 000004
【図３】
2017511538.tif 000005
【図４】
2017511538.tif 000006
【図５】
2017511538.tif 000007
【図６】
2017511538.tif 000008
【図７】
2017511538.tif 000009
【図８】
2017511538.tif 000010
【手続補正書】
【提出日】平成28年9月27日(2016.9.27)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
携帯型コンピューティングデバイス内の電力領域を動的に制御するための方法であって、前記電力領域が電源を共有する処理資源を含み、前記方法が、
前記携帯型コンピューティングデバイス内の前記電力領域における少なくとも2つの処理資源の現在の状態を監視するステップと、
前記携帯型コンピューティングデバイス内の前記電力領域における前記少なくとも2つの処理資源のうちの1つの前記現在の状態の変化を識別するステップと、
前記少なくとも2つの処理資源のうちの1つの前記現在の状態の前記識別された変化に応答して、前記電力領域への入力パラメータに対する調整を決定するステップと、
前記電力領域への前記入力パラメータに対する前記決定された調整を適用するステップであって、前記電力領域への前記入力パラメータに対する前記適用された調整が前記電力領域内の各処理資源に分配されるステップと
を含む方法。
【請求項２】
前記少なくとも2つの処理資源のうちの1つの前記現在の状態の変化を識別するステップが、前記少なくとも2つの処理資源のうちの前記1つに関連する二進状態インジケータの変化を識別するステップを含む、請求項1に記載の方法。
【請求項３】
前記2進状態が、電力印加状態および電力非印加状態のうちの1つを定義する、請求項2に記載の方法。
【請求項４】
前記少なくとも2つの処理資源のうちの1つの前記現在の状態の変化を識別するステップが、前記少なくとも2つの処理資源のうちの前記1つに関連するクロック周波数の変化を識別するステップを含む、請求項1に記載の方法。
【請求項５】
前記少なくとも2つの処理資源のうちの1つの前記現在の状態の変化を識別するステップが、システム電力マネージャから前記変化を示す信号を受け取るステップを含む、請求項1に記載の方法。
【請求項６】
前記電力領域への前記入力パラメータに対する前記決定された調整を適用するステップが資源ハードウェア状態論理を使用するステップを含む、請求項1に記載の方法。
【請求項７】
資源ハードウェア状態論理を使用するステップが、電源に送られる制御信号を生成するステップを含む、請求項6に記載の方法。
【請求項８】
前記制御信号が、電圧を調整するように前記電源に命じる、請求項7に記載の方法。
【請求項９】
前記少なくとも2つの処理資源のうちの1つの前記現在の状態の変化を識別するステップが、前記少なくとも2つの処理資源のうちの前記1つに関連するセンサから信号を受け取るステップを含む、請求項1に記載の方法。
【請求項１０】
前記センサからの前記信号がクロック周波数を示す、請求項9に記載の方法。
【請求項１１】
前記センサからの前記信号が、電源のオン/オフ状態を示す、請求項9に記載の方法。
【請求項１２】
前記入力パラメータに対する調整を決定する前に、受け取った信号をフィルタリングするためにマスキング論理を実行するステップをさらに含む、請求項9に記載の方法。
【請求項１３】
前記センサからの前記信号が、前記少なくとも2つの処理資源のうちの第2のものと関連する第2のセンサをバイパスする、請求項9に記載の方法。
【請求項１４】
前記電力領域への前記入力パラメータに対する前記決定された調整を適用するステップが、前記少なくとも2つの処理資源にタスクを割り当てるためにタスク割当て論理を修正するようスケジューラをトリガする情報を前記スケジューラに通信するステップを含む、請求項1に記載の方法。
【請求項１５】
前記情報が、電圧マージンと、前記少なくとも2つの処理資源との1対1の関係における回路の相対応答性とのうちの1つまたは複数から選択される、請求項14に記載の方法。
【請求項１６】
携帯型コンピューティングデバイス内に配置された電力領域であって、
共有電源によって電力が供給される少なくとも2つの処理資源と、
前記少なくとも2つの処理資源に結合され、かつ、電力マネージャから情報を受け取るように構成されたコントローラであって、前記コントローラは、資源ハードウェア状態論理を用いて前記情報を処理し、前記電力領域内の前記少なくとも2つの処理資源に対する所望の入力電圧を決定するために電源によって使用される第1の制御信号を生成するように構成され、前記所望の入力電圧が前記電力領域内の各処理資源に分配されるコントローラと
を備える電力領域。
【請求項１７】
前記資源ハードウェア状態論理が、前記少なくとも2つの処理資源のためのそれぞれの電源電圧の存在に応答する、請求項16に記載の電力領域。
【請求項１８】
前記資源ハードウェア状態論理が、前記少なくとも2つの処理資源のためのそれぞれのクロック周波数に応答する、請求項16に記載の電力領域。
【請求項１９】
前記資源ハードウェア状態論理が、センサチェーン信号プロトコルに従って通信される状態情報に応答する、請求項16に記載の電力領域。
【請求項２０】
前記コントローラが、前記少なくとも2つの処理資源にタスクを割り当てるためにタスク割当て論理を修正するためにスケジューラによって使用される第2の制御信号を生成するようにさらに構成される、請求項16に記載の電力領域。
【国際調査報告】
2017511538.tif 000011
2017511538.tif 000012