JP2012150815A - 複数の回路における性能パラメータの整合 - Google Patents

複数の回路における性能パラメータの整合 Download PDF

Info

Publication number
JP2012150815A
JP2012150815A JP2012019060A JP2012019060A JP2012150815A JP 2012150815 A JP2012150815 A JP 2012150815A JP 2012019060 A JP2012019060 A JP 2012019060A JP 2012019060 A JP2012019060 A JP 2012019060A JP 2012150815 A JP2012150815 A JP 2012150815A
Authority
JP
Japan
Prior art keywords
performance
frequency
clock
domain
state
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.)
Pending
Application number
JP2012019060A
Other languages
English (en)
Inventor
P Machnicki Erik
ピー マクニッキー エリック
J Millett Timothy
ジェイ ミレット ティモシー
P De Cesare Josh
ピー デ チェザレ ジョシュ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Apple Inc
Original Assignee
Apple Inc
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 Apple Inc filed Critical Apple Inc
Publication of JP2012150815A publication Critical patent/JP2012150815A/ja
Pending legal-status Critical Current

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
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B67OPENING, CLOSING OR CLEANING BOTTLES, JARS OR SIMILAR CONTAINERS; LIQUID HANDLING
    • B67CCLEANING, FILLING WITH LIQUIDS OR SEMILIQUIDS, OR EMPTYING, OF BOTTLES, JARS, CANS, CASKS, BARRELS, OR SIMILAR CONTAINERS, NOT OTHERWISE PROVIDED FOR; FUNNELS
    • B67C11/00Funnels, e.g. for liquids
    • B67C11/02Funnels, e.g. for liquids without discharge valves
    • 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/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Power Sources (AREA)

Abstract

【課題】複数の回路の性能パラメータを整合するためのシステム及び方法を提供する。
【解決手段】複数のドメインにおいて性能パラメータを整合するシステム及び方法が開示される。方法は、第1ドメイン及び第2ドメインを含む電子回路の状態を切り換えるための要求を受け取り、第1ドメインに作用する第1回路の第1パラメータを、その要求に基づいて第1の変更パラメータへと変更させ、そして第2ドメインに作用する第2回路の第2パラメータを、その要求に基づいて第2の変更パラメータへと変更させることを含む。あるケースでは、パラメータは、クロック周波数を含む。他のケースでは、パラメータは、電圧を含む。ある実施形態では、システムは、ロジック回路及び/又はシステムオンチップ(SoC)として具現化される。
【選択図】図1

Description

本発明は、コンピュータシステムの分野に係り、より詳細には、複数の回路の性能パラメータを整合するためのシステム及び方法に係る。
集積回路又は「チップ」に内蔵されるトランジスタの数が増加し続けるにつれて、電力管理の重要性がより明確になってきている。実際に、電力管理は、一般的に、多数の電子装置を設計する上で重要な要件である。例えば、ポータブル装置の場合に、電力管理技術は、バッテリ寿命を延長し、それ故、製品の有用性を高めることができ。更に、特定の装置がバッテリで動作しない場合でも、電力消費の管理により多数の利益を得ることができる。例えば、エネルギー消費量を減少するのに加えて、電力管理は、所与の装置で発生される熱を減少し、ひいては、その冷却要件を改善することができる。
集積回路における電力と性能のトレードオフを管理する部分として、集積回路上の種々のコンポーネントの性能状態を切り換えることができる。例えば、種々のコンポーネントにより使用されるクロックのクロック周波数を切り換えることができる。多数のコンポーネントに対する切り換えの管理を正しく実施することは、困難である。
本発明は、例えば、電力管理メカニズムを実施するコンピューティング装置に関連して種々の環境で使用されるシステム及び方法を開示する。ある実施形態では、ここに開示するシステム及び方法は、多数のハードウェアコンポーネントを単一の回路内に一体化できるようにシステムオンチップ(SoC)又は特定用途向け集積回路(ASIC)において実施される。これらシステム及び方法を使用するのに適した電子装置の例は、デスクトップコンピュータ、ラップトップコンピュータ、タブレット、ネットワークアプリケーション、移動電話、パーソナルデジタルアシスタント(PDA)、e−ブックリーダー、テレビジョン、ビデオゲームコンソール、等を含むが、これに限定されない。
ある実施形態では、方法は、回路が2つ以上の性能ドメインを有する場合に、回路、コンポーネント又は装置の状態を切り換える要求を受け取ることを含む。これら2つ以上の性能ドメインは、異なる性能レベルで動作するように構成された回路、コンポーネント又は装置のエリアを含む。種々の性能レベル又は状態の間をスイッチする能力は、電力管理メカニズムによって与えられる。例えば、装置が第1状態にあるときには、第1の性能ドメインが第1のクロック周波数又は電圧で動作し、一方、第2の性能ドメインが第2のクロック周波数又は電圧で動作する。又、装置が第2状態にあるときには、これらの性能ドメインが、変更された周波数又は電圧で動作する。性能ドメインの他のパラメータを切り換えることもできる。
状態切り換え要求を受け取ると、この方法は、例えば、第1の性能ドメインに作用する第1クロックの第1周波数を第1の変更周波数へと変更し、そして第2の性能ドメインに作用する第2クロックの第2周波数を第2の変更周波数へと変更することを含む。ある実施形態では、第2の変更周波数は、第1の変更周波数とは独立している。他の実施形態では、第2の変更周波数は、第1の変更周波数とは異なってもよいし、その倍数以外のものでもよい。
ある実施形態において、状態切り換え要求は、単一レジスタに書き込まれる値又は指示を含み、これは、次いで、第1及び第2の周波数を第1及び第2の変更周波数(又は電圧)へ各々スイッチするのに使用する構成パラメータをルックアップし又は導出するのに使用される。一例において、この方法は、指示によりインデックスされる性能状態テーブルにアクセスし、このテーブルは、対応する性能ドメインへクロック信号を供給するクロックジェネレータの特定セットにより使用される構成パラメータを含む。別の例において、性能状態テーブルは、対応する性能ドメインへ電圧を供給する電圧供給源の特定セットにより使用される構成パラメータを含む。性能状態テーブルは、種々の他の構成パラメータも含むことができる。
ある実施形態において、クロック周波数を変更することは、第1入力又はソースから第2入力又はソースへのクロック入力を再構成するようにクロックジェネレータに命令することを含む。他の実施形態では、クロック周波数を変更することは、クロック除数を再構成するようにクロックジェネレータに命令することを含む。更に別の実施形態では、電圧を変更することは、異なる入力又は出力へスイッチするように電源回路に命令することを含む。これら実施形態の各々において、性能状態テーブルは、クロックジェネレータ又は電圧供給回路がその動作モードを切り換えるようにさせる基礎的なインストラクション(例えば、選択されたソース、除数値、等)も指示する。
従って、性能状態テーブルを使用すると、あるケースでは、幾つかの基礎的切り換えを行うのに必要な特定の構成パラメータをソフトウェアで与え及び/又は管理しなくても、ソフトウェアで特定の回路又は性能ドメインが望ましい性能状態に入るようにさせることができる。他のケースでは、性能状態テーブルは、装置の所与の状態に対して、装置の性能ドメイン又は回路の各々を適当な又は望ましい状態に入れるように種々の構成パラメータを記憶することができる。その結果、ソフトウェアにより、全装置(又はそのサブセット)が少ないコマンド数で所与の状態に直ちに入るようにさせることができる。
ある実施形態では、システムオンチップ(SoC)は、プロセッサと、該プロセッサに結合されたロジック回路とを備えている。ロジック回路は、SoCを所与の状態に入れる要求に応答して第1周波数及び第2周波数を導出するよう構成され、第2周波数は、第1周波数から独立している。又、ロジック回路は、SoCの第1ドメインに作用する第1のクロック回路が第1周波数で第1クロックを発生するようにさせ、そしてSoCの第2ドメインに作用する第2のクロック回路が第2周波数で第2クロックを発生するようにさせるようにも構成される。
他の実施形態において、ロジック回路は、第1性能ドメイン及び第2性能ドメインを有する装置の状態を切り換える要求を受け取り、第1性能ドメインに作用する第1回路の第1パラメータを第1の変更パラメータへと変更させ、そして第2性能ドメインに作用する第2回路の第2パラメータを第2の変更パラメータへと変更させるように構成される。あるケースでは、第2の変更パラメータは、第1の変更パラメータとは独立している。これらのパラメータは、クロック周波数、電圧、その組み合わせ、及び/又は他のパラメータである。又、ロジック回路は、電力管理回路に結合されて電力管理回路の1つ以上の動作をイネーブルするように構成された1つ以上のプログラム可能なレジスタも備えている。
以下、添付図面を参照して、本発明を詳細に説明する。
ある実施形態によるシステムのブロック図である。 ある実施形態による性能状態テーブルを示す図である。 ある実施形態によりシステムパラメータを整合する方法を表すフローチャートである。 ある実施形態によるソフトウェア環境を示す図である。 ある実施形態によるコンピュータシステムのブロック図である。
本発明は、種々の変更を受けそして別の形態でも実施できるが、その特定の実施形態を一例として添付図面に示して以下に詳細に説明する。しかしながら、添付図面及び詳細な説明は、本発明を、ここに開示する特定の形態に限定するものではなく、本発明は、特許請求の範囲に規定される本発明の精神及び範囲内に入る全ての変更、等効物及び代替え物を網羅することを理解されたい。ここに使用する見出しは、編成上の目的に過ぎず、説明の範囲を限定するためのものではない。又、本出願全体にわたって使用される「〜してもよい(may)」という語は、許すという意味(即ち、〜の潜在性があるという意味)で使用されるもので、強制の意味(即ち、〜しなければならないという意味)ではない。同様に、「含む(include)」、「含んでいる(including)」及び「含む(includes)」という語は、含むことを意味するが、それに限定されない。
種々のユニット、回路又は他のコンポーネントは、1つ又は複数のタスクを遂行するように「構成される」ものとして述べる。この点について、「構成される」とは、動作中に1つ又は複数のタスクを遂行する「回路を有する」ことを一般的に意味する構造を広く表現するものである。従って、ユニット/回路/コンポーネントは、そのユニット/回路/コンポーネントが現在オンでなくても、タスクを遂行するように構成することができる。一般的に、「構成される」に対応する構造を形成する回路は、ハードウェア回路を含む。同様に、種々のユニット/回路/コンポーネントは、説明の便宜上、1つ又は複数のタスクを遂行するものとして説明されてもよい。そのような説明は、「構成される」という句を含むものと解釈されねばならない。1つ以上のタスクを遂行するように構成されたユニット/回路/コンポーネントを表現する場合に、そのユニット/回路/コンポーネントの解釈に関して35U.S.C.§112、第6節を引用しないことが明確に意図される。
ある実施形態において、電力管理ユニット又は回路は、電子装置内に設けられる。電子装置は、例えば、デスクトップコンピュータ、ラップトップコンピュータ、タブレット、ネットワーク機器(例えば、ゲートウェイ、ルーター、アクセスポイント、等)、移動電話、パーソナルデジタルアシスタント(PDA)、e−ブックリーダー、テレビジョン、ビデオゲームコンソール、又は他の適当な電子装置を含む。従って、この装置は、例えば、プロセッサ、周辺装置、コントローラ、等の他の回路又はサブシステムも含む。更に、これら回路の2つ以上(又は回路のグループ)が、変化する性能レベルで動作できる異なる性能ドメインを構成してもよい。従って、ある実施形態では、電力管理ユニットは、複数の性能ドメインのシステムパラメータを整合するための方法を遂行する。より詳細には、電力管理ユニットは、複数のエントリーを有する性能状態テーブルを含む。各エントリーは、2つ以上の性能ドメインに対して構成パラメータを指定する。レジスタ(1つ又は複数)は、テーブルにおけるエントリーの1つを指すようにプログラムされ、そして電力マネージャーは、その選択されたエントリーに指定された性能状態で性能ドメインが動作するようにさせる。
図1は、ある実施形態によるシステムのブロック図である。図示されたように、このシステムは、電源110に結合されたシステムオンチップ(SoC)又は特定用途向け集積回路(ASIC)を形成する集積回路(IC)100を備えている。この集積回路100は、性能ドメイン120A−Fのセットを含む。各性能ドメイン120A−Fは、少なくとも1つのサブシステム、回路又はコンポーネントを含み、そして所与の性能ドメインは、2つ以上のコンポーネントを含む。例えば、性能ドメイン120Aは、2つのコンポーネント、即ちプロセッサ160A及び別のコンポーネント170(例えば、コヒレンシーコントローラ、等)を含み、そして性能ドメイン120Dは、2つ以上のネットワーク又は他の周辺装置160Dを含む。ここに示す実施形態では、性能ドメイン120Bは、グラフィックサブシステム160Bを含み、性能ドメイン120Cは、オーディオサブシステム160Cを含み、性能ドメイン120Eは、メモリコントロール回路160Eを含み、そして性能ドメイン120Fは、任意の第2のプロセッサ160Fを含む。又、集積回路100は、電力管理ユニット(PMU)140も備え、これは、1つ以上の性能構成レジスタ150を含む。PMU140は、クロック及び/又は電圧コントロールユニット(コントロールユニット)130に結合され、これは、電源110に結合される。
集積回路100内のコンポーネントは、適当なバス及び/又はインターフェイスメカニズムを使用して互いに結合される。又、PMU140及びコントロールユニット130は、それらの各インターフェイスに結合されるのに加えて、性能ドメイン120A−Fにも結合される。例えば、コントロールユニット130は、性能ドメイン120A−Fの1つ以上にクロック信号を供給する。それに加えて又はそれとは別に、コントロールユニット130は、電源110と対話して、性能ドメイン120A−Fの1つ以上へ1つ以上の供給電圧を供給することを要求する。集積回路100がポータブル装置内に存在する実施形態では、電源110は、バッテリ、等である。
PMU140は、種々の性能ドメイン120A−Fに対する性能状態間の遷移をコントロールするよう構成される。例えば、PMU140は、性能ドメイン120A−Fの1つ以上を異なる性能状態へ自動的に遷移するように構成される。PMU140の性能状態テーブルの各エントリーは、種々の性能ドメインに対する性能状態の組み合わせでプログラムされ、そしてソフトウェアが、エントリーの1つを選択するために1つ又は複数のレジスタを書き込む。PMU140は、選択されたエントリーで指示された性能状態に対して性能ドメインの遷移を整合するように構成される。
ある実施形態では、性能ドメインは、性能構成の目的でPMU140によりユニットとして制御されるコンポーネントのセットである。即ち、PMU140は、性能ドメインごとに対応する性能状態を確立するように構成され、又、各性能ドメインにおける性能状態間の遷移をコントロールするように構成される。従って、性能ドメインを形成するコンポーネントは、ある性能状態から別の性能状態へ一緒に遷移する。他の実施形態では、異なる性能ドメインのコンポーネントは、少なくともハードウェアの観点から互いに独立し、そして独立して決定された性能状態を有する。ある性能ドメインは、(例えば、ソフトウェアにおいて)より高いレベルに論理的にリンクされる。例えば、ドメイン120C及び120Dは、サウンドを含むビデオをユーザが見る(従って、ビデオ画像を表示するためのグラフィックサブシステム160B及びそれに付随するサウンドを再生するためのオーディオサブシステム160Cを同時に使用する)場合にそれらの性能状態に関して論理的にリンクされる。
所与の性能状態は、それに対応する性能ドメイン内のコンポーネントに対する構成パラメータの組み合わせを含む。構成パラメータとは、コンポーネントの性能に影響するコンポーネントの選択可能な設定である。例えば、コンポーネント又は性能ドメインに与えられるクロック信号の動作周波数は、その性能に影響し、従って、構成パラメータと考えられる。というのは、例えば、低い動作周波数は、低い性能(及び低い電力消費)を生じるからである。別の例として、性能ドメインに与えられる供給電圧は、その性能に影響し、構成パラメータでもある。
ある構成パラメータは、コンポーネント特有のものである。そのような構成パラメータの例は、種々のキャッシュのキャッシュサイズ、インターフェイスのデータ巾又は他のデータ転送レートパラメータ、パラレルに動作するユニット(例えば、プロセッサ内の実行ユニット、グラフィックユニット内のピクセルパイプライン又は他の画像処理パイプライン、等)の中でアクティブな対称的ユニットの数、単位時間当たりに処理されるインストラクション、オペレーション、通信、及び/又はメモリ要求の数、カラーパレットのグラフィック解像度又はサイズ、オーディオ分解能及びサンプリングレート、メモリ帯域巾、プロセッサのスリープ/ウェーク状態、等を含むが、それらに限定されない。更に、コンポーネント又はその一部分が電力ゲート作動及び/又はクロックゲート作動される場合には、電力及び/又はクロックイネーブルが構成パラメータとなる。ある実施形態では、構成パラメータは、1つ以上の性能ドメインがどの性能状態にあるかの情報をメモリコントローラ(例えば、160E)に与える1つ以上のレジスタを含む。手短に述べると、種々の実施形態において、切り換えることができ且つコンポーネント又は性能ドメインの動作又は性能に影響を及ぼすパラメータは、構成パラメータと考えられる。
性能ドメインにおける性能状態の切り換えは、性能ドメインの電力消費に影響する。例えば、動作周波数及び/又は供給電圧を下げると、典型的に、電力消費に直接影響する。キャッシュサイズを減少すると、キャッシュの一部にアクセスする必要がなくなるので、電力消費が減少し、そしてその未使用部分をターンオフする場合には、更なる減少が実現される。更に、キャッシュサイズを減少すると、キャッシュヒット率が低下し、消費者に対してメモリの待ち時間が長くなる。メモリの待ち時間が長くなると、消費者のアクティビティが低下し、電力消費が減少する。インターフェイスにおけるデータ転送巾/レートが減少すると、スイッチングの減少により電力消費が低下する。更に、消費者にデータが供給されるレートを下げると、消費者のアクティビティが低下し、消費者の電力消費が減少する。対称的ユニットにおけるパラレルのアクティビティが低下すると、アクティビティの低下により電力消費が低下する。グラフィック/オーディオ分解能及びカラーパレットが減少すると、画像又はサウンドの単位当たりに転送されるデータの量が減少される。更に、メモリ帯域巾を減少すると、単位時間当たりにメモリにアクセスする電力消費が減少し、消費者のアクティビティが下がる。
ある実施形態では、PMU140は、ロジック回路、等である。従って、PMU140は、バイポーラ接合トランジスタ(BJT)、電界効果トランジスタ(FET)、他の形式のトランジスタ、ロジックゲート、演算増幅器(OPアンプ)、フリップ−フロップ、キャパシタ、ダイオード、抵抗器、等の標準的電子コンポーネントを含む。構成レジスタ150は、特定の機能を実施し及び/又は指定の動作モードに入るためにPMU140により使用される設定を記憶するようにプログラムされる。これら及び他のコンポーネントは、種々の仕方で配列され、そしてここに述べる種々の動作を遂行するよう構成される。
特に、PMU140は、性能ドメイン120A−Fにおいて性能状態遷移を生じさせるように構成された回路を備えている。1つの実施形態において、ソフトウェアは、望ましい性能状態切り換えをPMU140へ明確に通信する(例えば、性能状態テーブルのエントリーを選択する指示の形態で)。PMU140は、その選択されたエントリーにアクセスし、そしてその選択されたエントリーに指定された望ましい性能状態を確立するように構成される。
電圧及び/又はクロック周波数の切り換えを行うことにより性能状態又はレベルに到達するケースでは、PMU140は、新たな電圧及び/又は周波数設定をコントロールユニット130へ通信する。コントロールユニット130は、これらの新たな設定を実施し、要求された周波数でクロックを発生し、及び/又は電源110からの望ましい供給電圧を要求する。コントロールユニット130は、遷移を安全に実行するために、必要に応じて変更を命令する。例えば、クロック周波数及び供給電圧の両方が特定の性能ドメインにおいて増加される場合には、先ず、電圧を増加し、次いで、クロック周波数を上昇するのが安全である。というのは、現在の(低い)供給電圧で回路がゆっくり動作する場合には、クロック周波数を上げると、不適当な動作を招くことがあるからである。ある実施形態では、供給電圧の切り換えで経過する時間の長さは、クロック周波数を切り換える時間より実質的に長いことがある。クロック周波数及び供給電圧が減少される場合には、クロック周波数が先ず減少される(又は周波数及び電圧がパラレルに減少される。というのは、このケースでは、低い供給電圧の前に、低いクロック周波数に到達するからである)。
コントロールユニット130は、望ましい供給電圧を要求するために電源110と通信する回路を備え、又、動的なクロック発生回路も備えている。例えば、コントロールユニット130は、集積回路100の種々のコンポーネント又は性能ドメインに対してクロック信号を動的に発生するために、1つ以上の位相固定ループ(PLL)、マルチプレクサ、クロック除算器/乗算器、等を含む。1つの構成では、1つ以上の発振器が1つ以上のPLLを駆動し、これが、次いで、集積回路100の主要部分のための基本的クロックを発生する。PLL出力は、多数の動的なクロックジェネレータを駆動し、これらジェネレータは、チップの種々の領域又は性能ドメインに対する個々のクロックを発生するように働く。各クロックジェネレータ又は回路は、マルチプレクサ、及び/又は該マルチプレクサに結合された除算器を備えている。動作中に、マルチプレクサは、ジェネレータの入力において特定のクロック信号を選択することができ、そして除算器は、選択された信号の周波数を更に下げて(又は上げて)、望ましい周波数を得る。ある実施形態において、あるジェネレータは、マルチプレクサのみを含み、そして他のジェネレータは、除算器のみを含む。更に、各ジェネレータは、独立してイネーブル及びディスエイブルされ、そしてグリッチフリー的に又は「オンザフライ」で動作する。あるケースでは、グリッチフリー動作を容易にするために、所与のジェネレータは、選択がなされる前にソースが両方とも実行(又はアクティブ)へスイッチされそしてそこからスイッチされることを要求する。
図1を更に参照すれば、プロセッサ160A及び/又は160Fは、インストラクションセットアーキテクチャーを実施し、そしてそのインストラクションセットアーキテクチャーで定義されたインストラクションを実行するように構成される。任意のマイクロアーキテクチャー実施が使用されてもよい(例えば、しかるべき順序で、順序ずれして、思索的に、非思索的に、スカラーで、スーパースカラーで、パイプライン的に、スーパーパイプライン的に、等々)。ある実施形態では、マイクロコーディング技術が、前記のいずれかと組み合わせて使用される。
グラフィックユニット又はサブシステム160Bは、ディスプレイ装置上の画像の表示に関連した回路を備えている。発生される画像は、静的な画像でもよいし、又はビデオの一部分でもよい。グラフィックユニット160Bは、レンダリングハードウェア、(ディスプレイ装置の)リフレッシュハードウェア、ビデオエンコーダ及び/又はデコーダ、ビデオ圧縮及び解凍ユニット、等を含む。オーディオユニット又はサブシステム160Cは、システムにおけるサウンドの再生又は記録に関する回路を備えている。オーディオユニット160Cは、例えば、オーディオエンコーダ及び/又はデコーダ、デジタル信号プロセッサ、等を備えている。
ネットワーク周辺装置及び他の周辺装置160Dは、種々の回路を含む。例えば、ネットワーク周辺機器は、サポートされるネットワークのためのメディアアクセスコントローラ(MAC)ユニットと、物理的レイヤ回路とを備えている。他の周辺装置は、他の望ましい周辺装置を含み、及び/又は周辺コンポーネント相互接続(PCI)、PCIエクスプレス(PCIe)、ファイアワイヤ、ユニバーサルシリアルバス(USB)、等のオフチップ周辺インターフェイスをコントロールするように構成された周辺インターフェイスコントローラを含む。
メモリコントローラ160Eは、ダイナミックランダムアクセスメモリ装置(DRAM)、同期DRAM(SDRAM)、倍データレート(DDR、DDR2、DDR3、DDR4、等)SDRAM、低電力DDR(LPDDR2、等)SDRAM、RAMBUS DRAM(RDRAM)、等のメモリ装置にアクセスするように構成される。1つの実施形態では、メモリコントローラ160Eは、1つ以上のメモリを含む1つ以上のメモリモジュール(例えば、シングルインラインメモリモジュール(SIMM)、デュアルインラインメモリモジュール(DIMM)、等)へインターフェイスするように構成される。従って、メモリコントローラ160Eは、メモリインターフェイスを経て通信し、集積回路100内の他のコンポーネントからメモリ要求をキューイングし、及び/又は他のコンポーネントと通信して、メモリ読み取り及び書き込み動作を満足するように構成される。
図1に示す集積回路100の実施形態は、多数の性能ドメインを含むが、それより多数の又は少数の性能ドメインがサポートされてもよい。性能ドメイン及びそれらのドメインに含まれるコンポーネントの任意の組み合わせが種々の実施形態において具現化される。
集積回路100の他の実施形態は、他のコンポーネントを伴ったり伴わなかったりする図示されたコンポーネントのサブセット、他のコンポーネントを伴うスーパーセット、等を含めて、コンポーネントの他の組み合わせを含む。更に、ここに示す実施形態は、集積回路100に全て含まれたコンポーネント160A−F及び170を示しているが、他の実施形態では、コンポーネントが2つ以上の集積回路として実施されてもよい。それに加えて又はそれとは別に、電源110の少なくとも一部分が集積回路100に含まれてもよい。実際には、適当な集積レベル又は個別のコンポーネントが使用される。
上述したように、PMU140は、種々の性能ドメイン120A−Fに対する性能状態間の遷移をコントロールするように構成される。ある実施形態では、所与の性能状態から別の性能状態へスイッチするための要求は、1つ以上のレジスタに書き込まれる値又は指示を含み、これは、望ましい性能状態に入るための構成パラメータをルックアップし又は導出するためにPMU140によって使用される。一例において、この方法は、レジスタ(1つ又は複数)へ書き込まれる値によりインデックスされる性能状態テーブルにアクセスし、このテーブルは、対応する性能ドメインへクロック信号を発生するクロックジェネレータの特定セットによって使用される構成パラメータを含む。別の例では、性能状態テーブルは、対応する性能ドメインに電圧を付与する電源の特定セットによって使用される構成パラメータを含む。性能状態テーブルは、更に、上述した種々の他の構成パラメータも含む。
非限定の例示として、クロック周波数及び電圧の両方が、性能ドメイン(例えば、ドメイン1ないしm)の各々に対してセットされる構成パラメータであるという状況について考える。性能状態テーブルにn個の状態が得られる(即ち、テーブルにn個のエントリーがある)場合には、考えられる性能状態テーブルは、次のように構成される。
テーブルI
Figure 2012150815
この実施形態では、ソフトウェアが集積回路100の各ドメインに対して周波数(f)及び/又は電圧(V)をセットすることを望む場合に、例えば、ソフトウェアは、性能状態テーブルの対応エントリー(1ないしn)に対するポインタをPMU140の構成レジスタ150に書き込む。PMU140は、選択されたエントリーを読み取り、そして選択されたクロック周波数及び/又は電圧をコントロールユニット130へ通信する。コントロールユニット130は、次いで、ソフトウェアによる更なる介在及び/又は管理を伴わずに各ドメインの種々の周波数及び/又は電圧への切り換えを整合する。その結果、あるケースでは、集積回路100の異なる部分が単一コマンド又はレジスタ書き込みでそれらの種々の異なる状態間を交番する。換言すれば、ユーザ及び/又はソフトウェアの観点から、状態間の切り換えは、アトミックに(実際の基礎的なハードウェア切り換えがパラレルに行われる状況でも)且つ高い抽象レベルで(例えば、要求側ソフトウェアは、各クロックジェネレータを個々にプログラムし及び/又は各ジェネレータがどのように構成されるか理解する必要がない)遂行される。
更に、前記テーブルIに示されたような性能状態テーブルを使用することにより、各性能ドメインは、そのパラメータを独立して切り換える。例えば、クロック周波数のケースでは、所与の状態に対する各周波数ドメインの周波数が互いに異なり、互いの倍数以外のものとなる。他の実施形態では、上述したように、クロック周波数及び電圧以外の構成パラメータがテーブルを埋める。更に、クロック周波数のみがテーブルに含まれる実施形態も考えられる。
ある実施形態では、性能状態テーブルの各エントリーが実際の構成パラメータであり、例えば、f2,3がクロック周波数であり、V2,3が電圧の大きさであり、等々である。しかしながら、他の実施形態では、性能状態テーブルの各エントリーは、望ましい構成を与えるために回路(例えば、コントロールユニット130)に使用される1つ以上の基礎的な設定を含む。例えば、性能ドメイン2が、マルチプレクサ及び除算器を含むクロックジェネレータの作用を受ける場合には、f2,3は、性能ドメイン2へ望ましい周波数を与えるためにクロックジェネレータにより使用できるソース選択及び除算器設定を含む。
図2は、ある実施形態による性能状態テーブルの実施を示す図である。性能状態テーブルは、例えば、PMU140の構成レジスタ内でプログラムされるもので、ハードウェアにおいてテーブルI(上述した)を表す多数の考えられる仕方の1つである。図示されたように、構成レジスタ150は、1つ以上の性能状態レジスタ210と、1つ以上の状態レジスタ220と、プログラム可能な各状態に対して種々の性能ドメイン(1ないしm)の構成パラメータ(1ないしn)を含む複数のレジスタ230−250と、を備えている。個別のコンポーネントとして示されたが、他の実施形態では、レジスタ210−250の2つ以上が結合されてもよい。
性能状態レジスタ210は、レジスタ230−250のどれが(従って、どの性能状態が)現在アクティブであるかコントロールすることができる。例示のため、ソフトウェアが集積回路100の動作を状態2にセットすることを希望するシナリオについて考える。ソフトウェアは、状態2に対応する値を性能状態レジスタ210に書き込み、次いで、PMU140がレジスタ240からパラメータP1,2・・・Pm,2を選択する。パラメータP1,2・・・Pm,2の各々は、各性能ドメイン1ないしmの構成パラメータに対応する。上述したように、パラメータP1,2・・・Pm,2は、クロック周波数、電圧の大きさ、等である。それに加えて又はそれとは別に、所与のパラメータは、クロック周波数、電圧、等を各性能ドメインに与えるよう回路に命令するのに適した設定を含む。いずれにせよ、PMU140は、識別されたパラメータをコントロールユニット130に与え、コントロールユニットは、次いで、ハードウェア(例えば、スイッチ、マルチプレクサ、等)で切り換えを実施する。
別の実施形態では、レジスタ230−250の各々は、(他の性能ドメインを除いて)単一の性能ドメインの各状態に対しパラメータを含む。例えば、レジスタ230内のP1,1は、性能ドメイン1の状態1に対する構成パラメータを表し、P1,2は、その同じ性能ドメイン、即ち性能ドメイン1の状態2に対する構成パラメータであり、等々である。同様に、レジスタ240は、性能ドメイン2の各状態に対して全ての構成パラメータを含み、そしてレジスタ250は、性能ドメインnの各状態に対して全ての構成パラメータを含む。この実施形態では、性能状態レジスタ210は、要求された性能状態に対応する各性能ドメインに対し各レジスタ230−250内の各エントリーを識別し、そしてそれらの構成パラメータをコントロールユニット130に与える。
構成レジスタ150は、状態レジスタ220も含む。例えば、クロックパラメータを構成するとき、コントロールユニット130内の各動的クロックジェネレータは、その構成を切り換える間に「ペンディング」値を示すレジスタを含み、この同じ値が状態レジスタ220へコピーされる。ある実施形態では、これにより、PMU140又はソフトウェアは、単一レジスタ即ち状態レジスタ220上でのポーリングにより性能状態レジスタ210内の変更による全ての変更が効果を発するのを待機できるようになる。別の実施形態では、性能状態レジスタ210は、状態レジスタ220の全てのペンディングビットがクリアされるのを待機せずに変更される。コントロールユニット130は、最終的なクロック構成が、最後に書かれた性能状態レジスタ210の値に一致することを保証するが、動的なクロックジェネレータは、あるときには中間構成でもよい。
図3は、ある実施形態によりシステムパラメータを整合する方法を表すフローチャートである。ある実施形態において、この方法300は、図1のPMU140によって遂行される。310において、PMU140は、集積回路100の1つ以上の性能ドメイン120A−Fの状態を切り換えるための要求を受け取る。この要求は、PMU140内の構成レジスタ150の性能状態レジスタ210の値に基づいて決定される。コントロール回路130の対応クロックジェネレータが例えばマルチプレクサを含む場合のクロック周波数切り換えのケースでは、320において、PMU140は、オリジナルクロック入力及び新たに選択されたクロック入力の両方が作用中又はアクティブであるかどうか決定する。もしそうであれば、340において、PMU140は、状態性能テーブルから新たに要求された状態に対応するパラメータを識別する。PMU140は、次いで、350において、それらパラメータをコントロール回路130に与え、この回路は、次いで、新たに要求された状態に対応するハードウェア切り換えを実施する。さもなければ、330において、PMU140は、コントロールユニット130が新たな状態選択を行う前に両入力をアクチベートすることを要求する。別の実施形態では、状態切り換えを行う前に、320において、他の適当な条件がチェックされる。例えば、電圧切り換えのケースでは、PMU140は、320において、バッテリが最小量の変化を有するかどうか、ポータブル装置が「プラグイン」されたかどうか、等を決定する。
図4は、ある実施形態によるソフトウェア環境を示す図である。ある実施形態において、PMU140の動作は、ユーザから及び/又は他のソフトウェア410−450を経てコマンドを受け取るPMUドライバ140を通して実行される。特に、ソフトウェア環境400は、1つ以上のアプリケーションプログラム、オペレーティングシステム、等(ソフトウェア)410を含む。ソフトウェア410は、システムのコンポーネントを使用するときに種々のドライバと対話する。例えば、グラフィックドライバ420は、グラフィックサブシステム160Bをコントロールするのに使用され、オーディオドライバ430は、オーディオサブシステム160Cをコントロールするのに使用され、ネットワークドライバ440は、ネットワーク周辺装置160Dに使用され、そして他の周辺ドライバ450は、他の周辺装置に使用される。又、PMUドライバ460は、PMU140と対話するのに使用される。従って、ソフトウェア410は、例えば、それがグラフィックサブシステム160Bと通信する場合には、グラフィックドライバ420にコールし、等々である。従って、ドライバ420−460の各々は、それに対応するコンポーネントと通信する。
更に、ドライバ420−450の各々は、PMUドライバ460と通信する。PMUドライバ460は、装置アクティビティテーブル等においてドライバ420−450により駆動されるコンポーネントのアクティビティを監視する。監視されるアクティビティは、対応するコンポーネントをイネーブルし及びディスエイブルすることを含む。監視されるアクティビティは、更に、特定ユニットの他の性能特性への切り換えも含む。ある実施形態において、監視されるアクティビティに基づき、PMUドライバ460は、種々の性能状態で使用されるべき各性能ドメインに対して性能状態を選択する。更に、選択された性能状態にも影響する他の情報を装置アクティビティテーブルへとコード化してもよい(例えば、プロセッサがスリープ状態にあるときの種々のコンポーネントの性能ニーズ)。
他の実施形態では、ソフトウェア410は、PMUドライバ460と直接通信することもできる。例えば、あるコンポーネントのスリープ及びウェーク遷移に対して遂行される自動性能状態遷移に加えて、ソフトウェア410は、システムの全体的なアクティビティに基づいて性能状態を直接的に切り換える。即ち、プロセッサが例えばスリープ状態へ至らない場合でも、1つ以上の性能ドメインの性能状態の切り換えが望まれる。従って、ソフトウェア410は、そのような切り換えを直接要求する。ある実施形態では、コンピュータアクセス可能な記憶媒体は、ここに述べるシステム及び方法の実施形態を合体することができる。
図5は、システムのブロック図である。図示されたように、システム500は、集積回路520の少なくとも1つのインスタンスを含む。集積回路520は、図1の集積回路100内の要素の1つ以上のインスタンスを含む。ある実施形態では、集積回路520は、メモリコントローラ、ビデオ及び/又はオーディオ処理回路、オンチップ周辺装置、及び/又はオフチップ周辺装置へ結合するための周辺インターフェイス、等の種々の付加的な回路を含むシステムオンチップ(SoC)又は特定用途向け集積回路(ASIC)である。集積回路520は、1つ以上の周辺装置540及び外部メモリ530に結合される。集積回路520へ供給電圧を、そしてメモリ530及び/又は周辺装置540へ1つ以上の供給電圧を供給する電源510(図1には110として示される)も設けられる。ある実施形態では、集積回路520の2つ以上のインスタンスが含まれる(又、2つ以上の外部メモリ530も含まれる)。
周辺装置540は、システム500の形式に基づいて望ましい回路を含む。例えば、一実施形態では、システム500は、移動装置(例えば、パーソナルデジタルアシスタント(PDA)、スマートホン、等)であり、そして周辺装置540は、種々の形式のワイヤレス通信のための装置、例えば、Wi−fi、ブルーツース、セルラー、グローバルポジショニングシステム、等を含む。又、周辺装置540は、RAM記憶装置、ソリッドステート記憶装置、又はディスク記憶装置を含めて、付加的な記憶装置も含む。又、周辺装置540は、タッチディスプレイスクリーン又はマルチタッチディスプレイスクリーンを含むディスプレイスクリーン、キーボード又は他の入力装置、マイクロホン、スピーカ、等のユーザインターフェイス装置も含む。他の実施形態では、システム500は、任意の形式のコンピューティングシステムである(例えば、デスクトップ及びラップトップコンピュータ、タブレット、ネットワーク機器、移動電話、パーソナルデジタルアシスタント、e−ブックリーダー、テレビジョン、及びゲームコンソール)。
外部メモリ530は、任意の形式のメモリを含む。例えば、外部メモリ530は、SRAM、不揮発性RAM(「フラッシュ」メモリのようなNVRAM)、ダイナミックRAM(DRAM)、例えば、同期DRAM(SDRAM)、倍データレート(DDR、DDR2、DDR3、等)SDRAM、RAMBUS DRAM、等、及び/又は任意の形式の有形メモリを含む。外部メモリ530は、メモリ装置がマウントされる1つ以上のメモリモジュール、例えば、シングルインラインメモリモジュール(SIMM)、デュアルインラインメモリモジュール(DIMM)、等を含む。
当業者であれば、上述した開示が完全に分かると、多数の修正及び変更が明らかであろう。そのような修正及び変更は、全て、特許請求の範囲に包含されるものとする。
100:集積回路
110:電源
120A−F:性能ドメイン
130:コントロールユニット
140:PMU
150:構成
160A:プロセッサ
160B:グラフィック
160C:オーディオ
160D:ネットワーク、他の周辺装置
160E:メモリコントロール
160F:プロセッサ
170:コンポーネント
210:性能状態レジスタ
220:電力ゲートコントロールレジスタ

Claims (17)

  1. 第1の性能ドメイン及び第2の性能ドメインを含む回路の状態を切り換えるための要求を受け取る段階と、
    前記第1の性能ドメインに作用する第1クロックの第1周波数を、前記要求に基づいて第1の変更周波数へと変更する段階と、
    前記第2の性能ドメインに作用する第2クロックの第2周波数を、前記要求に基づいて第2の変更周波数へと変更する段階であって、前記第2の変更周波数は、前記第1の変更周波数とは独立したものである段階と、
    を備えた方法。
  2. 前記要求を受け取る段階は、性能状態指示がレジスタに記憶されたと決定することを含む、請求項1に記載の方法。
  3. 前記第1の変更周波数及び第2の変更周波数を示すデータを記憶する第1の性能状態テーブルエントリーを識別する性能状態指示を受け取る段階を更に備えた、請求項1に記載の方法。
  4. 前記第1クロック回路の第1周波数を変更する前に前記第1の性能状態テーブルエントリーにおける第1の変更周波数を識別する段階を更に備えた、請求項3に記載の方法。
  5. 前記第1の性能状態テーブルエントリーは、更に、前記第1の性能ドメイン及び第2の性能ドメインに対して1つ以上の付加的な構成パラメータを記憶し、前記方法は、更に、前記付加的な構成パラメータに応答して前記第1の性能ドメイン及び第2の性能ドメインの付加的な構成を変更する段階を備えた、請求項4に記載の方法。
  6. 前記1つ以上の付加的な構成パラメータは、前記第1の性能ドメイン及び第2の性能ドメインに対する供給電圧の大きさを含む、請求項5に記載の方法。
  7. 前記1つ以上の付加的な構成パラメータは、プログラム可能なコンポーネント構成値を含む、請求項5に記載の方法。
  8. 第1クロックの第1周波数を変更する前記段階は、第1入力から第2入力へのクロック入力を再構成するようにクロックジェネレータに命令することを含む、請求項1に記載の方法。
  9. クロック入力を再構成するようにクロックジェネレータに命令する前に前記第1及び第2入力がアクティブであると決定する段階を更に備えた、請求項8に記載の方法。
  10. 第1クロックの第1周波数を変更する前記段階は、クロック除算器を再構成するようにクロックジェネレータに命令することを含む、請求項1に記載の方法。
  11. 前記第1及び第2周波数を変更する前に、装置の状態を切り換えるための後続要求を受け取る段階と、
    少なくとも前記第1及び第2周波数が変更されるまで前記後続要求を拒絶する段階と、
    を更に備えた請求項1に記載の方法。
  12. プロセッサと、
    前記プロセッサに結合されたロジック回路と、
    を備え、前記ロジック回路は、
    システムオンチップ(SoC)に所与の状態を確立するための要求に応答して第1及び第2周波数を導出し、前記第2周波数は、前記第1周波数から独立したものであり、
    コントロール回路が、前記第1周波数を有する第1クロックを前記SoCの第1性能ドメインに与えるようにさせ、
    前記コントロール回路が、前記第2周波数を有する第2クロックを前記SoCの第2性能ドメインに与えるようにさせる、
    ように構成された、システムオンチップ(SoC)。
  13. 前記ロジック回路は、更に、
    前記所与の状態を前記第1及び第2周波数に相関するテーブルから前記第1及び第2の周波数を導出し、
    前記所与の状態に対して前記テーブルに指定されたクロック入力又はクロック除数を選択するように前記コントロール回路に命令する、
    ように構成された、請求項12に記載のSoC。
  14. 前記ロジック回路は、更に、前記所与の状態を前記第1及び第2周波数に相関するテーブルから前記第1及び第2の周波数を導出するように構成され、前記要求は、レジスタに記憶された指示を含み、そして前記指示は、前記テーブル内のエントリーを識別する、請求項13に記載のSoC。
  15. 前記コントロール回路は、更に、前記所与の状態に関する情報を、前記プロセッサに結合されたメモリコントローラに与えるように構成された、請求項12に記載のSoC。
  16. SoCに所与の状態を確立するための要求に応答して第1及び第2周波数を導出し、前記第2周波数は、前記第1周波数から独立したものであり、
    コントロール回路が、前記第1周波数を有する第1クロックを前記SoCの第1性能ドメインに与えるようにさせ、
    前記コントロール回路が、前記第2周波数を有する第2クロックを前記SoCの第2性能ドメインに与えるようにさせる、
    ように構成された電力管理回路を備えたロジック回路。
  17. 前記第2の変更クロック周波数は、前記第1の変更クロック周波数とは異なり且つその倍数以外のものである、請求項16に記載のロジック回路。
JP2012019060A 2011-01-14 2012-01-13 複数の回路における性能パラメータの整合 Pending JP2012150815A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US13/006,967 US8468373B2 (en) 2011-01-14 2011-01-14 Modifying performance parameters in multiple circuits according to a performance state table upon receiving a request to change a performance state
US13/006,967 2011-01-14

Publications (1)

Publication Number Publication Date
JP2012150815A true JP2012150815A (ja) 2012-08-09

Family

ID=45655136

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012019060A Pending JP2012150815A (ja) 2011-01-14 2012-01-13 複数の回路における性能パラメータの整合

Country Status (7)

Country Link
US (1) US8468373B2 (ja)
EP (1) EP2477090A3 (ja)
JP (1) JP2012150815A (ja)
KR (1) KR101324885B1 (ja)
CN (1) CN102692991B (ja)
TW (1) TWI463302B (ja)
WO (1) WO2012096835A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016510471A (ja) * 2013-02-04 2016-04-07 マイクロソフト テクノロジー ライセンシング,エルエルシー 異種メモリの動的管理

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8271812B2 (en) 2010-04-07 2012-09-18 Apple Inc. Hardware automatic performance state transitions in system on processor sleep and wake events
US8924752B1 (en) 2011-04-20 2014-12-30 Apple Inc. Power management for a graphics processing unit or other circuit
CN108509021B (zh) * 2011-11-21 2021-11-09 英特尔公司 用于性能改善的可重配置图形处理器
US9390461B1 (en) * 2012-05-08 2016-07-12 Apple Inc. Graphics hardware mode controls
US8786332B1 (en) 2013-01-17 2014-07-22 Apple Inc. Reset extender for divided clock domains
JP6092649B2 (ja) * 2013-02-15 2017-03-08 キヤノン株式会社 演算装置、アレイ型演算装置およびその制御方法、情報処理システム
US10242652B2 (en) * 2013-06-13 2019-03-26 Intel Corporation Reconfigurable graphics processor for performance improvement
US9946823B2 (en) * 2013-08-12 2018-04-17 Mentor Graphics Corporation Dynamic control of design clock generation in emulation
GB201314938D0 (en) 2013-08-21 2013-10-02 Advanced Risc Mach Ltd Communication between voltage domains
US9471132B2 (en) * 2013-09-27 2016-10-18 Intel Corporation Techniques for putting platform subsystems into a lower power state in parallel
CN103593036B (zh) * 2013-11-05 2016-05-11 三星半导体(中国)研究开发有限公司 动态调整电压/时钟频率的片上系统
US10523207B2 (en) 2014-08-15 2019-12-31 Altera Corporation Programmable circuit having multiple sectors
US10372184B2 (en) * 2016-06-28 2019-08-06 Renesas Electronics America Inc. Method and apparatus for implementing power modes in microcontrollers using power profiles
JP2018106591A (ja) * 2016-12-28 2018-07-05 ルネサスエレクトロニクス株式会社 半導体装置、動作制御方法、及びプログラム
US10423209B2 (en) 2017-02-13 2019-09-24 Apple Inc. Systems and methods for coherent power management
US10642781B2 (en) 2017-04-07 2020-05-05 Qualcomm Incorporated Boot time determination of calibration parameters for a component coupled to a system-on-chip
CN115048214A (zh) * 2018-06-06 2022-09-13 北京嘉楠捷思信息技术有限公司 计算设备的芯片调频方法、装置、算力板、计算设备及存储介质
US10778235B2 (en) * 2018-10-28 2020-09-15 Nuvoton Technology Corporation Intermittent tuning of an oscillator
US11514551B2 (en) 2020-09-25 2022-11-29 Intel Corporation Configuration profiles for graphics processing unit

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001238190A (ja) * 2000-02-25 2001-08-31 Canon Inc 画像処理装置及びその制御処理方法
JP2002366351A (ja) * 2001-06-06 2002-12-20 Nec Corp スーパースカラ・プロセッサ
JP2003108260A (ja) * 2001-09-28 2003-04-11 Hitachi Ltd 情報処理装置及び情報処理装置の制御方法
JP2004303206A (ja) * 2003-03-18 2004-10-28 Matsushita Electric Ind Co Ltd プロセッサ及びその駆動方法並びに電子情報処理機器
JP2005128937A (ja) * 2003-10-27 2005-05-19 Matsushita Electric Ind Co Ltd プロセッサシステム、命令列最適化装置、および命令列最適化プログラム
JP2008524744A (ja) * 2004-12-21 2008-07-10 パケット ディジタル オンデマンド電力管理の方法及び機器

Family Cites Families (35)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4344132A (en) * 1979-12-14 1982-08-10 International Business Machines Corporation Serial storage interface apparatus for coupling a serial storage mechanism to a data processor input/output bus
AU3313795A (en) 1994-10-14 1996-04-26 Compaq Computer Corporation Circuit for placing a cache memory into low power mode in response to special bus cycles
EP0855718A1 (en) 1997-01-28 1998-07-29 Hewlett-Packard Company Memory low power mode control
US6247082B1 (en) * 1998-11-03 2001-06-12 3Com Corporation Method and circuit for providing handshaking to transact information across multiple clock domains
US6535798B1 (en) 1998-12-03 2003-03-18 Intel Corporation Thermal management in a system
US6510525B1 (en) 1999-04-26 2003-01-21 Mediaq, Inc. Method and apparatus to power up an integrated device from a low power state
US6823516B1 (en) 1999-08-10 2004-11-23 Intel Corporation System and method for dynamically adjusting to CPU performance changes
US6665802B1 (en) 2000-02-29 2003-12-16 Infineon Technologies North America Corp. Power management and control for a microcontroller
US20030061383A1 (en) 2001-09-25 2003-03-27 Zilka Anthony M. Predicting processor inactivity for a controlled transition of power states
US6885227B2 (en) * 2003-07-29 2005-04-26 Lattice Semiconductor Corporation Clock generator with skew control
US7475320B2 (en) * 2003-08-19 2009-01-06 International Business Machines Corporation Frequency modification techniques that adjust an operating frequency to compensate for aging electronic components
US7369815B2 (en) 2003-09-19 2008-05-06 Qualcomm Incorporated Power collapse for a wireless terminal
US7319345B2 (en) * 2004-05-18 2008-01-15 Rambus Inc. Wide-range multi-phase clock generator
JP4082706B2 (ja) * 2005-04-12 2008-04-30 学校法人早稲田大学 マルチプロセッサシステム及びマルチグレイン並列化コンパイラ
JP2006318380A (ja) 2005-05-16 2006-11-24 Handotai Rikougaku Kenkyu Center:Kk 回路システム
US7412353B2 (en) * 2005-09-28 2008-08-12 Intel Corporation Reliable computing with a many-core processor
US7689838B2 (en) 2005-12-22 2010-03-30 Intel Corporation Method and apparatus for providing for detecting processor state transitions
US7263457B2 (en) * 2006-01-03 2007-08-28 Advanced Micro Devices, Inc. System and method for operating components of an integrated circuit at independent frequencies and/or voltages
US7590473B2 (en) 2006-02-16 2009-09-15 Intel Corporation Thermal management using an on-die thermal sensor
US7624291B2 (en) 2006-03-31 2009-11-24 Intel Corporation Power optimized multi-mode voltage regulator
US7949887B2 (en) * 2006-11-01 2011-05-24 Intel Corporation Independent power control of processing cores
US7917784B2 (en) 2007-01-07 2011-03-29 Apple Inc. Methods and systems for power management in a data processing system
US7737752B2 (en) * 2007-05-17 2010-06-15 Globalfoundries Inc Techniques for integrated circuit clock management
US8645740B2 (en) 2007-06-08 2014-02-04 Apple Inc. Methods and systems to dynamically manage performance states in a data processing system
US7711864B2 (en) 2007-08-31 2010-05-04 Apple Inc. Methods and systems to dynamically manage performance states in a data processing system
JP4800289B2 (ja) * 2007-11-30 2011-10-26 富士通セミコンダクター株式会社 電源制御装置及びその電源制御装置を有するシステムlsi
US20090204837A1 (en) 2008-02-11 2009-08-13 Udaykumar Raval Power control system and method
US20090204835A1 (en) 2008-02-11 2009-08-13 Nvidia Corporation Use methods for power optimization using an integrated circuit having power domains and partitions
US8219993B2 (en) * 2008-02-27 2012-07-10 Oracle America, Inc. Frequency scaling of processing unit based on aggregate thread CPI metric
JP2010033255A (ja) * 2008-07-28 2010-02-12 Seiko Epson Corp 信号同期化方法及び信号同期化回路
US8020017B2 (en) 2008-08-15 2011-09-13 Freescale Semiconductor, Inc. Management of power domains in an integrated circuit
TWI401558B (zh) * 2008-12-22 2013-07-11 Tatung Co 頻率調整方法及使用此方法的電子裝置、電腦程式產品與電腦可讀取儲存媒體
US20100325451A1 (en) * 2009-06-22 2010-12-23 Chung-Hsing Chang Power-saving trigger-type control device for dynamically and instantly varying frequency and method thereof
GB2472050B (en) 2009-07-22 2013-06-19 Wolfson Microelectronics Plc Power management apparatus and methods
US8352770B2 (en) 2009-09-25 2013-01-08 Intel Corporation Method, system and apparatus for low-power storage of processor context information

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001238190A (ja) * 2000-02-25 2001-08-31 Canon Inc 画像処理装置及びその制御処理方法
JP2002366351A (ja) * 2001-06-06 2002-12-20 Nec Corp スーパースカラ・プロセッサ
JP2003108260A (ja) * 2001-09-28 2003-04-11 Hitachi Ltd 情報処理装置及び情報処理装置の制御方法
JP2004303206A (ja) * 2003-03-18 2004-10-28 Matsushita Electric Ind Co Ltd プロセッサ及びその駆動方法並びに電子情報処理機器
JP2005128937A (ja) * 2003-10-27 2005-05-19 Matsushita Electric Ind Co Ltd プロセッサシステム、命令列最適化装置、および命令列最適化プログラム
JP2008524744A (ja) * 2004-12-21 2008-07-10 パケット ディジタル オンデマンド電力管理の方法及び機器

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016510471A (ja) * 2013-02-04 2016-04-07 マイクロソフト テクノロジー ライセンシング,エルエルシー 異種メモリの動的管理

Also Published As

Publication number Publication date
WO2012096835A1 (en) 2012-07-19
KR101324885B1 (ko) 2013-11-01
CN102692991A (zh) 2012-09-26
US8468373B2 (en) 2013-06-18
EP2477090A3 (en) 2013-12-11
US20120185703A1 (en) 2012-07-19
CN102692991B (zh) 2015-02-04
TW201234169A (en) 2012-08-16
KR20120082836A (ko) 2012-07-24
TWI463302B (zh) 2014-12-01
EP2477090A2 (en) 2012-07-18

Similar Documents

Publication Publication Date Title
KR101324885B1 (ko) 복수의 회로들에서의 성능 파라미터들 조정
US8959369B2 (en) Hardware automatic performance state transitions in system on processor sleep and wake events
US8924758B2 (en) Method for SOC performance and power optimization
US8769332B2 (en) Regional clock gating and dithering
US10147464B1 (en) Managing power state in one power domain based on power states in another power domain
US11922172B2 (en) Configurable reduced memory startup
US20230004400A1 (en) System and method for providing system level sleep state power savings
US10713189B2 (en) System and method for dynamic buffer sizing in a computing device

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130110

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130410

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20131015