JP6203425B2 - 共有電力領域における異種プロセッサにわたる動的電力管理のための装置、システムおよび方法 - Google Patents

共有電力領域における異種プロセッサにわたる動的電力管理のための装置、システムおよび方法 Download PDF

Info

Publication number
JP6203425B2
JP6203425B2 JP2016558082A JP2016558082A JP6203425B2 JP 6203425 B2 JP6203425 B2 JP 6203425B2 JP 2016558082 A JP2016558082 A JP 2016558082A JP 2016558082 A JP2016558082 A JP 2016558082A JP 6203425 B2 JP6203425 B2 JP 6203425B2
Authority
JP
Japan
Prior art keywords
processing resources
controller
power
sensor
power domain
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2016558082A
Other languages
English (en)
Other versions
JP2017511538A5 (ja
JP2017511538A (ja
Inventor
クリシュナ・ブイエスエスエスアール・ヴァンカ
ヒー・ジュン・パク
スラヴァン・クマール・アンバプラム
シリシュ・クマール・アガルワル
Original Assignee
クアルコム,インコーポレイテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by クアルコム,インコーポレイテッド filed Critical クアルコム,インコーポレイテッド
Publication of JP2017511538A publication Critical patent/JP2017511538A/ja
Publication of JP2017511538A5 publication Critical patent/JP2017511538A5/ja
Application granted granted Critical
Publication of JP6203425B2 publication Critical patent/JP6203425B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3296Power saving characterised by the action undertaken by lowering the supply or operating voltage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/324Power saving characterised by the action undertaken by lowering clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/329Power saving characterised by the action undertaken by task scheduling
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power saving arrangements
    • H04W52/0209Power saving arrangements in terminal devices
    • H04W52/0251Power saving arrangements in terminal devices using monitoring of local events, e.g. events related to user activity
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Power Sources (AREA)

Description

関連出願
本出願は、参照によりその全体が本文書に組み込まれている、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 スケジューラ

Claims (30)

  1. 携帯型コンピューティングデバイス内の電力領域を動的に制御するための方法であって、前記電力領域が電源およびコントローラを共有する処理資源を含み、前記方法が、
    前記携帯型コンピューティングデバイス内の前記電力領域における少なくとも2つの処理資源の現在の状態を監視するステップと、
    前記携帯型コンピューティングデバイス内の前記電力領域における前記少なくとも2つの処理資源のうちの1つの前記現在の状態の変化を識別するステップであって、前記電力領域における前記少なくとも2つの処理資源のうちの1つの前記現在の状態の変化を識別することは、前記コントローラで始まって前記コントローラで終わるセンサバス上で互いに直列に結合される一組のセンサから、修正されたセンサチェーンプロトコルにより受け取られる情報に基づき、少なくとも1つのセンサは、前記コントローラと第1の処理資源との間に結合され、少なくとも1つのセンサは、前記コントローラと最後の処理資源との間に結合され、少なくとも1つのセンサは、前記処理資源の各々の中に含まれる、ステップと、
    前記少なくとも2つの処理資源のうちの1つの前記現在の状態の前記識別された変化に応答して、前記電力領域への入力パラメータに対する調整を決定するステップと、
    前記電力領域への前記入力パラメータに対する前記決定された調整を適用するステップと
    を含む方法。
  2. 前記少なくとも2つの処理資源のうちの1つの前記現在の状態の変化を識別するステップが、前記少なくとも2つの処理資源のうちの前記1つに関連する2進状態インジケータの変化を識別するステップを含む、請求項1に記載の方法。
  3. 前記2進状態が、電力印加状態および電力非印加状態のうちの1つを定義する、請求項2に記載の方法。
  4. 前記少なくとも2つの処理資源のうちの1つの前記現在の状態の変化を識別するステップが、前記少なくとも2つの処理資源のうちの前記1つに関連するクロック周波数の変化を識別するステップを含む、請求項1に記載の方法。
  5. 前記少なくとも2つの処理資源のうちの1つの前記現在の状態の変化を識別するステップが、システム電力マネージャから前記変化を示す信号を受け取るステップを含む、請求項1に記載の方法。
  6. 前記電力領域への前記入力パラメータに対する前記決定された調整を適用するステップが資源ハードウェア状態論理を使用するステップを含む、請求項1に記載の方法。
  7. 資源ハードウェア状態論理を使用するステップが、電源に送られる制御信号を生成するステップを含む、請求項6に記載の方法。
  8. 前記制御信号が、電圧を調整するように前記電源に命じる、請求項7に記載の方法。
  9. 前記少なくとも2つの処理資源のうちの1つの前記現在の状態の変化を識別するステップが、前記少なくとも2つの処理資源のうちの前記1つに関連するセンサから信号を受け取るステップを含む、請求項1に記載の方法。
  10. 前記センサからの前記信号がクロック周波数を示す、請求項9に記載の方法。
  11. 前記センサからの前記信号が、電源のオン/オフ状態を示す、請求項9に記載の方法。
  12. 前記入力パラメータに対する調整を決定する前に、受け取った信号をフィルタリングするためにマスキング論理を実行するステップをさらに含む、請求項9に記載の方法。
  13. 前記センサからの前記信号が、前記少なくとも2つの処理資源のうちの第2の処理資源と関連する第2のセンサをバイパスする、請求項9に記載の方法。
  14. 前記電力領域への前記入力パラメータに対する前記決定された調整を適用するステップが、前記少なくとも2つの処理資源にタスクを割り当てるためタスク割当て論理を修正するようスケジューラをトリガする情報を前記スケジューラに通信するステップを含む、請求項1に記載の方法。
  15. 前記情報が、電圧マージンと、前記少なくとも2つの処理資源との1対1の関係における回路の相対応答性とのうちの1つまたは複数から選択される、請求項14に記載の方法。
  16. 携帯型コンピューティングデバイス内に配置された電力領域であって、
    共有電源によって電力が供給される少なくとも2つの処理資源と、
    前記電力領域にわたって配置される一組のセンサと、
    前記少なくとも2つの処理資源に結合され、かつ、前記一組のセンサから情報を受け取るように構成されたコントローラであって、資源ハードウェア状態論理を用いて前記情報を処理し、前記電力領域内の前記少なくとも2つの処理資源に対する所望の入力電圧を決定するために電源によって使用される第1の制御信号を生成するように構成されるコントローラとを備え
    前記一組のセンサは、前記コントローラで始まって前記コントローラで終わるセンサバス上で互いに直列に結合され、少なくとも1つのセンサは、前記コントローラと第1の処理資源との間に結合され、少なくとも1つのセンサは、前記コントローラと最後の処理資源との間に結合され、少なくとも1つのセンサは、前記処理資源の各々の中に含まれ、
    前記コントローラは、少なくとも2つの処理資源の現在の状態を監視し、
    前記コントローラは、前記一組のセンサから、修正されたセンサチェーンプロトコルにより受け取られる情報に基づき、前記少なくとも2つの処理資源のうちの1つの前記現在の状態の変化を識別し、
    前記コントローラは、前記少なくとも2つの処理資源のうちの1つの前記現在の状態の前記識別された変化に応答して、前記電力領域への入力パラメータに対する調整を決定し、
    前記コントローラは、前記電力領域への前記入力パラメータに対する前記決定された調整を適用する、電力領域。
  17. 前記資源ハードウェア状態論理が、前記少なくとも2つの処理資源のためのそれぞれの電源電圧の存在に応答する、請求項16に記載の電力領域。
  18. 前記資源ハードウェア状態論理が、前記少なくとも2つの処理資源のためのそれぞれのクロック周波数に応答する、請求項16に記載の電力領域。
  19. 前記資源ハードウェア状態論理が、センサチェーン信号プロトコルの中に埋め込まれた状態情報に応答する、請求項16に記載の電力領域。
  20. 前記コントローラが、前記少なくとも2つの処理資源にタスクを割り当てるためタスク割当て論理を修正するためにスケジューラによって使用される第2の制御信号を生成するようにさらに構成される、請求項16に記載の電力領域。
  21. 携帯型コンピューティングデバイス内の電力領域を動的に制御するための方法であって、前記電力領域が電源およびコントローラを共有する処理資源を含み、前記方法が、
    前記携帯型コンピューティングデバイス内の前記電力領域における少なくとも2つの処理資源の現在の状態を監視するステップと、
    前記コントローラで始まって前記コントローラで終わるセンサバス上で互いに直列に結合される一組のセンサから、修正されたセンサチェーンプロトコルによる情報を受け取るステップであって、前記情報は、前記電力領域における前記少なくとも2つの処理資源のうちの1つの前記現在の状態の変化を識別し、少なくとも1つのセンサは、前記コントローラと第1の処理資源との間に結合され、少なくとも1つのセンサは、前記コントローラと最後の処理資源との間に結合され、少なくとも1つのセンサは、前記処理資源の各々の中に含まれる、ステップと、
    前記一組のセンサから前記修正されたセンサチェーンプロトコルにより受け取られた情報に応答して、前記電力領域への入力パラメータに対する調整を決定するステップと、
    前記少なくとも2つの処理資源の前記現在の状態に応答して、前記電力領域でのセンサバスを修正するステップと、
    前記電力領域への前記入力パラメータに対する前記決定された調整を適用するステップとを含む方法。
  22. 前記少なくとも2つの処理資源のうちの1つの現在の状態を監視するステップが、前記処理資源の少なくとも2つの電力供給状態を監視するステップを含む、請求項21に記載の方法。
  23. 前記少なくとも2つの処理資源のうちの1つの現在の状態を監視するステップが、前記少なくとも2つの処理資源のうちの前記1つに関連するクロック周波数を監視するステップを含む、請求項21に記載の方法。
  24. 前記センサバスを修正するステップが、センサをバイパスするステップを含む、請求項21に記載の方法。
  25. 前記センサバスを修正するステップが、センサから電力を除去するステップを含む、請求項21に記載の方法。
  26. 携帯型コンピューティングデバイス内に配置された電力領域であって、
    共有電源によって電力が供給される少なくとも2つの処理資源と、
    前記電力領域にわたって配置される一組のセンサと、
    前記少なくとも2つの処理資源に結合され、かつ、前記少なくとも2つの処理資源を監視する前記一組のセンサから、修正されたセンサチェーンプロトコルによる情報を受け取るように構成されたコントローラであって、資源ハードウェア状態論理を用いて前記情報を処理し、前記電力領域内の前記少なくとも2つの処理資源に対する所望の入力電圧を決定するために電源によって使用される第1の制御信号を生成するように構成されるコントローラとを備え、
    前記一組のセンサは、前記コントローラで始まって前記コントローラで終わるセンサバス上で互いに直列に結合され、少なくとも1つのセンサは、前記コントローラと第1の処理資源との間に結合され、少なくとも1つのセンサは、前記コントローラと最後の処理資源との間に結合され、少なくとも1つのセンサは、前記処理資源の各々の中に含まれ、
    前記コントローラは、前記一組のセンサから、修正されたセンサチェーンプロトコルにより受け取られる情報に基づき、前記少なくとも2つの処理資源のうちの1つの現在の状態の変化を識別し、
    前記コントローラは、前記少なくとも2つの処理資源のうちの1つの前記現在の状態の前記識別された変化に応答して、前記電力領域への入力パラメータに対する調整を決定し、
    前記コントローラは、前記電力領域への前記入力パラメータに対する前記決定された調整を適用する、電力領域。
  27. 前記資源ハードウェア状態論理が、前記少なくとも2つの処理資源についての各クロック周波数に応答する、請求項26に記載の電力領域。
  28. 前記資源ハードウェア状態論理が、センサチェーン信号プロトコル内に埋め込まれた状態情報に応答する、請求項26に記載の電力領域。
  29. 前記コントローラが、前記少なくとも2つの処理資源にタスクを割り当てるためのタスク割当て論理を修正するために、スケジューラを使用して第2の制御信号を生成するようにさらに構成される、請求項26に記載の電力領域。
  30. 前記スケジューラが、前記入力電圧および利用可能なクロック周波数を使用してタスクを実施することができる処理資源の識別に応答して前記タスクを割り当てるためのタスク割当て論理を修正する、請求項29に記載の電力領域。
JP2016558082A 2014-03-25 2015-03-24 共有電力領域における異種プロセッサにわたる動的電力管理のための装置、システムおよび方法 Active JP6203425B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201461970290P 2014-03-25 2014-03-25
US61/970,290 2014-03-25
US14/266,642 US9671857B2 (en) 2014-03-25 2014-04-30 Apparatus, system and method for dynamic power management across heterogeneous processors in a shared power domain
US14/266,642 2014-04-30
PCT/US2015/022326 WO2015148565A1 (en) 2014-03-25 2015-03-24 Apparatus, system and method for dynamic power management across heterogeneous processors in a shared power domain

Publications (3)

Publication Number Publication Date
JP2017511538A JP2017511538A (ja) 2017-04-20
JP2017511538A5 JP2017511538A5 (ja) 2017-08-24
JP6203425B2 true JP6203425B2 (ja) 2017-09-27

Family

ID=54190265

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016558082A Active JP6203425B2 (ja) 2014-03-25 2015-03-24 共有電力領域における異種プロセッサにわたる動的電力管理のための装置、システムおよび方法

Country Status (7)

Country Link
US (2) US9671857B2 (ja)
EP (1) EP3129855A1 (ja)
JP (1) JP6203425B2 (ja)
KR (1) KR20160136410A (ja)
CN (1) CN106133641B (ja)
BR (1) BR112016022266B1 (ja)
WO (1) WO2015148565A1 (ja)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9671857B2 (en) 2014-03-25 2017-06-06 Qualcomm Incorporated Apparatus, system and method for dynamic power management across heterogeneous processors in a shared power domain
US10488902B2 (en) 2015-02-23 2019-11-26 Qualcomm Innovation Center, Inc. Dynamic multi-core processor voltage scaling based on online core count
US10142196B1 (en) * 2016-04-15 2018-11-27 Senseware, Inc. System, method, and apparatus for bridge interface communication
US10896138B2 (en) * 2016-05-27 2021-01-19 Apple Inc. Dynamically controlling random access memory retention in a wireless device
US20180150256A1 (en) * 2016-11-29 2018-05-31 Intel Corporation Technologies for data deduplication in disaggregated architectures
US10401938B1 (en) 2017-04-10 2019-09-03 Apple Inc. Single power plane dynamic voltage margin recovery for multiple clock domains
US10599481B2 (en) * 2017-06-04 2020-03-24 Apple Inc. Scheduler for amp architecture using a closed loop performance controller and deferred inter-processor interrupts
KR102563648B1 (ko) * 2018-06-05 2023-08-04 삼성전자주식회사 멀티 프로세서 시스템 및 그 구동 방법
CN110442224A (zh) * 2019-09-17 2019-11-12 联想(北京)有限公司 电子设备的电源功率分配方法、电子设备和可读存储介质
TWI708957B (zh) * 2019-12-12 2020-11-01 聚眾聯合科技股份有限公司 動態功率定位方法及其動態功率定位系統
US20210200298A1 (en) * 2019-12-30 2021-07-01 Advanced Micro Devices, Inc. Long-idle state system and method
CN114185839A (zh) * 2020-09-15 2022-03-15 阿里巴巴集团控股有限公司 片上系统和调节电压和频率的方法
CN113311934B (zh) * 2021-04-09 2022-10-11 北京航空航天大学 一种多核异构域控制器动态功耗调整方法及系统
DE112022003676T5 (de) * 2021-09-24 2024-05-29 Apple Inc. Globale leistungssteuerung für integrierte schaltungen
CN114297131B (zh) * 2021-11-15 2024-06-11 杭州中天微系统有限公司 传感器控制系统、片上系统和计算装置

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3068394B2 (ja) * 1993-12-16 2000-07-24 株式会社東芝 センサシステム
US6802014B1 (en) * 2000-10-26 2004-10-05 Apple Computer, Inc. Method and apparatus for managing power in computer systems
US20030184271A1 (en) * 2000-12-20 2003-10-02 Kazuo Aisaka Eletronic circuit of low power consumption, and power consumption reducing method
US6952748B1 (en) 2001-01-02 2005-10-04 Advanced Micro Devices, Inc. Voltage request arbiter
US7302599B2 (en) * 2004-02-12 2007-11-27 Via Technologies, Inc. Instantaneous frequency-based microprocessor power management
GB2403561A (en) 2003-07-02 2005-01-05 Advanced Risc Mach Ltd Power control within a coherent multi-processor system
US7039539B2 (en) * 2003-10-07 2006-05-02 Hewlett-Packard Development Company, L.P. Rack equipment environmental condition adjustment system and method
US7526661B2 (en) * 2004-12-02 2009-04-28 Intel Corporation Performance state-based thread management
KR101054946B1 (ko) 2005-02-23 2011-08-08 삼성전자주식회사 전압 레벨 조정 기능을 가진 시스템 온 칩 및 전압 레벨 조정 방법
US8327158B2 (en) * 2006-11-01 2012-12-04 Texas Instruments Incorporated Hardware voting mechanism for arbitrating scaling of shared voltage domain, integrated circuits, processes and systems
US8725488B2 (en) 2007-07-26 2014-05-13 Qualcomm Incorporated Method and apparatus for adaptive voltage scaling based on instruction usage
JP4800289B2 (ja) 2007-11-30 2011-10-26 富士通セミコンダクター株式会社 電源制御装置及びその電源制御装置を有するシステムlsi
US8051320B2 (en) 2007-12-12 2011-11-01 Mips Technologies, Inc. Clock ratio controller for dynamic voltage and frequency scaled digital systems, and applications thereof
US8370663B2 (en) 2008-02-11 2013-02-05 Nvidia Corporation Power management with dynamic frequency adjustments
KR101512493B1 (ko) 2009-02-06 2015-04-15 삼성전자주식회사 저전력 시스템온칩
US8904115B2 (en) 2010-09-28 2014-12-02 Texas Instruments Incorporated Cache with multiple access pipelines
US8984313B2 (en) * 2012-08-31 2015-03-17 Intel Corporation Configuring power management functionality in a processor including a plurality of cores by utilizing a register to store a power domain indicator
US9268382B2 (en) * 2013-07-01 2016-02-23 Oracle International Corporation Method and system for monitoring resource usage of logical domains
US9671857B2 (en) 2014-03-25 2017-06-06 Qualcomm Incorporated Apparatus, system and method for dynamic power management across heterogeneous processors in a shared power domain

Also Published As

Publication number Publication date
CN106133641B (zh) 2019-08-06
CN106133641A (zh) 2016-11-16
US9671857B2 (en) 2017-06-06
US20150370316A1 (en) 2015-12-24
EP3129855A1 (en) 2017-02-15
BR112016022266B1 (pt) 2022-10-18
BR112016022266A2 (ja) 2017-08-15
WO2015148565A1 (en) 2015-10-01
US20150277536A1 (en) 2015-10-01
KR20160136410A (ko) 2016-11-29
US9733694B2 (en) 2017-08-15
JP2017511538A (ja) 2017-04-20

Similar Documents

Publication Publication Date Title
JP6203425B2 (ja) 共有電力領域における異種プロセッサにわたる動的電力管理のための装置、システムおよび方法
US9588804B2 (en) System and method for synchronous task dispatch in a portable device
CN107077397B (zh) 用于多处理器动态不对称和对称模式切换的硬件装置和方法
EP3345070B1 (en) Systems and methods for dynamically adjusting memory state transition timers
CN106415521B (zh) 多处理动态非对称和对称模式切换的硬件设备和方法
US10296069B2 (en) Bandwidth-monitored frequency hopping within a selected DRAM operating point
US10928882B2 (en) Low cost, low power high performance SMP/ASMP multiple-processor system
JP2018505476A (ja) マルチクラスタ異種プロセッサアーキテクチャにおいて動的キャッシュ拡張を提供するためのシステムおよび方法
US10234932B2 (en) Method and apparatus for a multiple-processor system
US20160335127A1 (en) System and method for dynamic granularity control of parallelized work in a portable computing device (pcd)
TWI772438B (zh) 用於計算設備中的動態緩衝器大小設定的系統和方法

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20160927

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170224

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170710

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170710

A871 Explanation of circumstances concerning accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A871

Effective date: 20170710

A975 Report on accelerated examination

Free format text: JAPANESE INTERMEDIATE CODE: A971005

Effective date: 20170718

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20170731

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170829

R150 Certificate of patent or registration of utility model

Ref document number: 6203425

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250