JP5093620B2 - プラットフォームベースのアイドルタイム処理 - Google Patents

プラットフォームベースのアイドルタイム処理 Download PDF

Info

Publication number
JP5093620B2
JP5093620B2 JP2009170148A JP2009170148A JP5093620B2 JP 5093620 B2 JP5093620 B2 JP 5093620B2 JP 2009170148 A JP2009170148 A JP 2009170148A JP 2009170148 A JP2009170148 A JP 2009170148A JP 5093620 B2 JP5093620 B2 JP 5093620B2
Authority
JP
Japan
Prior art keywords
cpu
smu
operating state
interrupt
critical operating
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
JP2009170148A
Other languages
English (en)
Other versions
JP2010061644A (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 JP2010061644A publication Critical patent/JP2010061644A/ja
Application granted granted Critical
Publication of JP5093620B2 publication Critical patent/JP5093620B2/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
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/24Handling requests for interconnection or transfer for access to input/output bus using interrupt

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Power Sources (AREA)

Description

[0001]本発明の実施形態は、一般的に、モバイルコンピューティングプラットフォームの電力消費を減ずることに関し、より詳細には、コンピューティングプラットフォームにおける中央処理装置(CPU)をパワーオフとしている間にコアロジックにおける割り込みを動的に処理することに関する。
[0002]従来、中央処理装置(CPU)は、アクティビティがほとんど又は全くないときでも、割り込みを処理するのに使用される。従って、CPUの相当部分及びフロントサイドバスは、アイドル中にアクティビティレベルが非常に低いときでも、パワーアップされたままとされ、電力を消費し続ける。マウスの如き入力装置の移動、表示の更新又はシステムクロックの更新により、割り込みが生ずることがある。
[0003]従って、当業分野においては、CPU及びフロントサイドバスを適応的により長い間パワーオフに保ち且つコンピューティングシステムの電力消費を、アクティビティがほとんど又は全くないときに、より頻繁に減少させるようなシステム及び方法が必要とされている。
[0004]異なる電力消費特性を有する複数の動作モードの間でコンピューティングシステムを移行させるシステム及び方法は、CPUのアイドルタイムを実効的に延長して、その電力消費を減少させる。コンピューティングシステムは、そのコンピューティングシステムが低いアクティビティ状態にあるとき、低電力動作モードへと移行させられる。その低いアクティビティ状態においては、システム管理装置(SMU)が、そのCPUに対して意図された割り込みをインターセプトして、処理する。このSMUは、それら割り込みの処理中に必要に応じて変更されるようなクリティカル動作状態のコピーを記憶する。アクティビティのレベルが変化するとき、SMUは、そのクリティカル動作状態のコピーをメモリに記憶し且つCPUにより記憶されたクリティカル動作状態を更新することにより、コンピューティングシステムを、その低電力動作モードから高電力動作モードへと移行させる。それから、CPUが、そのクリティカル動作状態のコピーを使用して、その割り込みの処理を再開する。
[0005]異なる電力消費を有する動作モードの間でコンピューティングシステムを適応的に移行させるための本発明の方法の種々な実施形態は、前記コンピューティングシステムが低いアクティビティ状態にあることを決定するステップと、前記コンピューティングシステムにおける中央処理装置(CPU)に対するシステム管理割り込み(SMI)を開始させるステップと、を含む。それから、前記CPUのクリティカル動作状態が、システムメモリに記憶され、前記CPUは、低電力動作モードにおいて動作するようにコンフィギュレーションされる。システム管理装置(SMU)が、前記CPUに対して意図された割り込みをインターセプトして、処理する。
[0006]本発明の種々な実施形態は、異なる電力消費を有する動作モードの間で適応的に移行するようにコンフィギュレーションされるコンピューティングシステムを含む。このコンピューティングデバイスは、低電力動作モード及び高電力動作モードにおいて動作するようにコンフィギュレーションされる中央処理装置(CPU)と、クリティカル動作状態を記憶するようにコンフィギュレーションされるローカルメモリと、前記CPUの代わりに割り込みを処理することのできるシステム管理装置(SMU)を含むコアロジックと、を含む。前記SMUは、前記コンピューティングシステムが低いアクティビティ状態にあるとき、前記CPUに対するシステム管理割り込みを開始させ、前記CPUのクリティカル動作状態を前記システムメモリに記憶させ、前記CPUを前記低電力動作モードにコンフィギュレーションし、前記CPUに対して意図された割り込みを処理のためインターセプトするようにコンフィギュレーションされる。
[0007]本発明の前述したような特徴を詳細に理解できるように、概要について簡単に前述したような本発明について、幾つかを添付図面に例示している実施形態に関して、以下より特定して説明する。しかしながら、添付図面は、本発明の典型的な実施形態のみを例示しているのであって、従って、本発明の範囲をそれに限定しようとしているものではなく、本発明は、均等の効果を発揮しうる他の実施形態を含みうるものであることに、注意されたい。
本発明の1つ以上の態様を実施するようにコンフィギュレーションされるコンピュータシステムを例示しているブロック図である。 本発明の1つ以上の態様を実施するようにコンフィギュレーションされるコンピュータシステムを例示しているブロック図である。 本発明の1つ以上の態様による、図1Aのコンピュータシステムのためのコアロジックのブロック図である。 本発明の1つ以上の態様による、図1Bのコンピュータシステムのためのコアロジックのブロック図である。 本発明の1つ以上の態様による高電力モードと低電力モードとの間の移行のための方法ステップのフロー図である。 本発明の1つ以上の態様による低電力モードに入るための方法ステップのフロー図である。 本発明の1つ以上の態様による低電力モードに入るための方法ステップのフロー図である。 本発明の1つ以上の態様による低電力モードに入るための方法ステップのフロー図である。 本発明の1つ以上の態様による低電力モードを出るための方法ステップのフロー図である。 本発明の1つ以上の態様による図1A及び図1Bのコンピュータシステムをブートアップするための方法ステップのフロー図である。
[0014]以下の説明においては、本発明をより完全に理解してもらうため、種々な特定の詳細について説明する。しかしながら、当業者に明らかなように、本発明は、これら特定の詳細のうちの1つ以上がなくても実施することができる。また、その他の場合において、よく知られた特徴については、本発明を分かりにくいものとしてしまわないように、記載されていない場合もある。
システム概観
[0015]図1Aは、本発明の1つ以上の態様を実施するようにコンフィギュレーションされるコンピュータシステム100を例示しているブロック図である。コンピュータシステム100は、種々なアクティビティのレベル及び種々な電力消費のレベルを与えるために複数の処理装置を含むハイブリッドコンピューティングプラットフォームである。コンピュータシステム100は、コアロジック105を含むバスパスを介して通信する中央処理装置(CPU)102及びシステムメモリ104を含む。クリティカル動作状態160は、システムメモリ104に記憶される。低電力動作モードへ移行する前に、CPU102は、クリティカル動作状態160をシステムメモリ104へ記憶させる。クリティカル動作状態160は、割り込みサービスルーチンの1つ以上、割り込みを支援しカーソル位置を更新するのに必要とされるオペレーティングシステムの部分、ミニマムデバイスドライバ及び現在ディスプレイサーフェイス(ピクセル画像データ)を含むことができる。本発明の幾つかの実施形態では、クリティカル動作状態160は、システムメモリ104の64キロバイトを占める。
[0016]コアロジック105は、CPU102をプラットフォームにおける1つ以上の他のデバイスへと結合するブリッジデバイスであり、接続113を介してシステムメモリ104に結合される。コアロジック105は、1つ以上のユーザー入力装置108(例えば、キーボード、マウス)からのユーザー入力を受け取り、その入力をパス106を介してCPU102へと送る。コンピュータシステム100はが低電力動作モードにおいて動作しているとき、コアロジック105は、クリティカル動作状態160をコピーし、必要に応じてそのコピーを更新する。低電力動作モードにある間、コアロジック105は、電圧レギュレータ150を通してCPU102への電圧入力を制御することにより、CPU102がパワーオフ状態のままとなるようにコンフィギュレーションする。それから、コアロジック105は、CPU102に対する割り込みをインターセプトして、処理し、CPU102がパワーオフのままとされるようにする。
[0017]コンピュータシステム100は、任意的に、GPU112及び電圧レギュレータ155を含むことができる。GPU112は、バス又は他の通信パス(例えば、PCIエクスプレス、高速グラフィックポート、ハイパートランスポートリンク)を介してコアロジック105に結合され、1つの実施形態では、GPU112は、ピクセルを表示装置110へ分配するグラフィックサブシステムである。デバイスドライバは、システムメモリ104に記憶されて、アプリケーションプログラムの如きCPU102により実行される処理の間のインターフェースを行い且つGPU112とのインターフェースを行い、GPU112による実行のため必要に応じてプログラム命令を変換することができる。ミニマムデバイスドライバは、クリティカル動作状態160に含むことができる。低電力動作モードにある間、コアロジック105は、電圧レギュレータ155を通してGPU112への電圧入力を制御することにより、GPU112がパワーオフ状態に入るようにコンフィギュレーションすることができる。同様に、コアロジック105は、別の電圧レギュレータ(図示せず)を通して電圧入力を制御することにより、システムメモリ104がパワーオフ状態に入るようにコンフィギュレーションすることができる。また、コアロジック105は、それぞれ電圧レギュレータ150及び155を通してCPU102及びGPU112へ通常の動作電圧を再適用する。
[0018]コアロジック105は、表示装置110(例えば、従来のCRT又はLCDベースのモニタ)に結合される。システムディスク114もまた、コアロジック105に結合される。スイッチ116は、コアロジック105と、ネットワークアダプタ118及び種々なアドインカード120及び121の如き他のコンポーネントとの間の接続を与える。USB又は他のポート接続、CDドライブ、DVDドライブ、フィルム記録装置等を含む他のコンポーネント(明白には図示せず)もまた、コアロジック105に接続される。図1Aにおいて種々なコンポーネントを相互接続する通信パスは、PCI(周辺コンポーネント相互接続)、PCIエクスプレス(PCI−E)、AGP(高速グラフィックポート)、ハイパートランスポート、又は任意の他のバス又はポイントツーポイント通信プロトコルの如き任意の適当なプロトコルを使用して実施することができ、異なるデバイスの間の接続は、当業分野にて知られているような異なるプロトコルを使用することができる。
[0019]図1Bは、本発明の1つ以上の態様を実施するようにコンフィギュレーションされるコンピュータシステム100を例示する別のブロック図である。図1Aと違って、システムメモリ104は、コアロジック115を通してではなく、接続103を介して直接にCPU122に接続され、他のデバイスは、コアロジック115及びCPU122を介してシステムメモリ104と通信する。
[0020]ここに示すシステムは、例示であり、種々な変形及び変更が可能であることは、理解されよう。ブリッジの数及び配置を含めて接続トポロジーは、必要に応じて変更することができる。他の代替的トポロジーにおいては、GPU112は、コアロジック105又はコアロジック115にではなくて、CPU102又はCPU122へ直接に接続される。更に他の実施形態では、コアロジック105又はコアロジック115は、複数のチップへと分離することができる。ここに示す特定のコンポーネントは、任意的なものであり、例えば、任意数のアドインカード又は周辺機器を支援することができる。ある幾つかの実施形態では、スイッチ116が省かれ、ネットワークアダプタ118及びアドインカード120、121は、コアロジック105又はコアロジック115に直接に接続される。
[0021]システム100の他の部分へのGPU112の接続も変えることができる。幾つかの実施形態では、GPU112は、システム100の拡張スロットへ挿入されるアドインカードとして実装される。他の実施形態では、GPU112は、コアロジック105又はコアロジック115と共に単一チップとして一体化することができる。更に他の実施形態では、GPU112のある要素又は全ての要素を、CPU102又はCPU122と共に単一チップとして一体化することができる。
コアロジック概観
[0022]図2Aは、本発明の1つ以上の態様による図1Aのコンピュータシステムのためのコアロジック105のブロック図である。図2Bは、本発明の1つ以上の態様による図1Bのコンピュータシステム100のためのコアロジック115のブロック図である。コアロジック105及びコアロジック115の各々は、ARM(アドバンスドリデュースドインストラクションセットマシン)、PowerPC等の如き組み込み低電力プロセッサであってよいシステム管理装置200を含む。システム管理装置200は、CPU102又はCPU122より電力消費が少なく、CPU102又はCPU122によって行われる処理のうちの少なくとも一部分を行うようにコンフィギュレーションされることができる。本発明の好ましい実施形態では、システム管理装置200は、システム割り込みを支援するに必要とされる処理の部分を行うようにコンフィギュレーションされる。
[0023]コアロジック105及びコアロジック115の各々は、クリティカル動作状態コピーを生成するためシステムメモリ104からのクリティカル動作状態160のコピーをロードするようにコンフィギュレーションされるローカルメモリ205をも含む。図1Bに示されたトポロジーが使用されるとき、クリティカル動作状態160は、CPU122及び接続103を通してシステムメモリ104からコピーされる。ローカルメモリ205を構成するのに、オンチップSRAM、オンチップ組み込みDRAM、オフチップDRAM等を使用することができる。ローカルメモリ205及びシステムメモリ104は、システムメモリ104が図1Aに示すように直接にコアロジック105に接続されるときには、同じ物理的エンティティであってよい。インターセプトした割り込みの処理中、システム管理装置200は、クリティカル動作状態コピー260を変更することができる。例えば、リターンプログラムカウンタを更新して、スタックポインタ及び他のシステムレジスタの値を変えることができる。もし、コンピュータシステム100がより高いアクティビティレベルにて動作していたのであれば、低電力モード中にクリティカル動作状態コピー260に対してシステム管理装置200によりなされるこれら変更は、CPU102又はCPU122によりクリティカル動作状態160に対してなされるものと等価である。コンピュータシステム100が低電力動作モードから高電力動作モードへ移行するとき、クリティカル動作状態コピー260は、クリティカル動作状態160を更新するため、システムメモリ104へ書き込まれる。それから、CPU102又はCPU122は、CPU102又はCPU122が低電力動作モードへの移行のためパワーダウンされたとき、CPU102又はCPU122により元々記憶されていた古いクリティカル動作状態の代わりに、現在のクリティカル動作状態を使用して、処理を再開する。
[0024]システム管理装置200は、コンピュータシステム100が低電力動作モードに入り、また、低電力動作モードを出るべきときを決定するように、コンフィギュレーションされる。システム管理装置200は、電圧レギュレータ150をイネーブルし、また、ディスエーブルすることにより、CPU102又はCPU122をパワーアップ又はパワーダウンするように、コンフィギュレーションされる。同様に、システム管理装置200は、電圧レギュレータ155をイネーブルし、また、ディスエーブルすることにより、GPU112をパワーアップ又はパワーダウンするように、コンフィギュレーションされる。前述したように、システム管理装置200は、また、システムメモリ104の如き、コンピュータシステム100内の他のコンポーネントをパワーダウンするように、コンフィギュレーションされることもできる。
[0025]本発明の幾つかの実施形態では、コアロジック105は、システムメモリ104とのインターフェースを行うのに使用されるメモリインターフェース214を含む。システム管理装置200は、コンピュータシステム100にハイブリッド処理能力を与える。何故ならば、システム管理装置200及びCPU102又はCPU122の両者がイネーブルされ、また、システム管理装置200がイネーブルされている間、CPU102又はCPU122が、ディスエーブルされることができるからである。
アイドルタイム処理
[0026]図3は、本発明の1つ以上の態様による高電力モードと低電力モードとの間で移行するための方法ステップのフロー図である。ステップ300において、コンピュータシステム100は、ブートアップされ、CPU102及びコアロジック105の両者がパワーアップされるか、又は、CPU122及びコアロジック115の両者がパワーアップされる。典型的なブートアップシーケンスは、図6に関して説明される。
[0027]ステップ305において、コンピュータシステム100は、高電力モードにて動作している。ステップ310において、システム管理装置200は、コンピュータシステム100が低いアクティビティ状態にあるかを決定する。全くアクティビティがないとき、又はシステム割り込みの頻度が最小しきい値より低くなるとき、低いアクティビティ状態が生ずる。割り込みと割り込みとの間の遅延が低いアクティビティ状態を示すかを決定するのに、システムアクティビティタイマーを使用することができる。本発明の幾つかの実施形態では、オペレーティングシステムが、コンピュータシステム100が低いアクティビティ状態にあるか否かを決定する。もし、ステップ310において、低いアクティビティ状態が検出されない場合には、その時には、ステップ305において、コンピュータシステム100は、高電力モードにて動作し続ける。さもなければ、ステップ320において、コンピュータシステム100は、図4A、図4B及び図4Cに関して詳述されるように、低電力モードに入る。
[0028]ステップ350において、システム管理装置200は、コンピュータシステム100が低いアクティビティ状態のままであるかを決定し、もし、そうであるならば、コンピュータシステム100は、ステップ345に戻り、低電力モードにて動作し続ける。さもなければ、ステップ355において、コンピュータシステム100は、図5に関して詳述するように、低電力モードを出て、ステップ305に戻り、低電力モードから高電力モードへと移行する。システム管理装置200又はオペレーティングシステムは、アクティビティ状態が増大して、割り込み頻度が増大するときに又はクリティカル動作状態コピー260がインターセプトされる割り込みを支援するのに十分でないときに、低電力モードからより高い電力モードへの移行が必要とされることを、決定することができる。
[0029]図4Aは、本発明の1つ以上の態様による図3のステップ320を行うための方法ステップのフロー図である。ステップ415において、システム管理装置は、コンピュータシステム100が低電力動作状態へと移行することを示すCPU102又はCPU122に対するシステム管理割り込み(SMI)を開始する。ステップ420において、CPU102又はCPU122は、現在のクリティカル動作状態160をシステムメモリ104に記憶させる。CPU102又はCPU122が、CPU102又はCPU122内のキャッシュにそのクリティカル動作状態の一部分を記憶させることができるとき、そのキャッシュの内容は、現在のクリティカル動作状態160が正確であることを保証するため、システムメモリ104へと書き込まれる(即ち、そのキャッシュがフラッシュされる)。
[0030]ステップ425において、システム管理装置200は、電圧レギュレータ150をディスエーブルすることにより、CPU102又はCPU122が低電力モードにて動作するようにコンフィギュレーションする。低電力動作モードにおいて、システム管理装置200は、システム割り込みをCPU102又はCPU122へと通すのでなく、処理のため、それらシステム割り込みをインターセプトする。ステップ430において、システム管理装置200は、インターセプトされたシステム割り込みが受け取られたかを決定し、もし、受け取られていない場合には、システム管理装置200は、システム割り込みをインターセプトするのを待つ。システム割り込みがインターセプトされるとき、システム管理装置200は、ステップ435に進み、その割り込みを処理するのに必要とされるクリティカル動作状態160の一部分がクリティカル動作状態160に存在していないかを決定し、もしそうである場合には、ステップ440において、システム管理装置200は、クリティカル動作状態160の少なくとも一部分をクリティカル動作状態コピー260へとコピーする。本発明の好ましい実施形態では、CPU102又はCPU122は、システムメモリ104に加えて、システム管理装置200におけるローカルメモリ205へとクリティカル動作状態160をコピーするように、コンフィギュレーションされる。本発明の他の実施形態では、クリティカル動作状態160の各部分は、システム管理装置200により必要に応じてシステムメモリ104からコピーされる。本発明の他の実施形態では、全クリティカル動作状態160が、システム管理装置200によりコピーされる。システム管理装置200が各割り込みを処理するために必要に応じてクリティカル動作状態160の各部分をコピーするだけのときには、ステップ435及び440が繰り返されることに注意されたい。
[0031]前述したように、クリティカル動作状態160は、システム割り込みを処理するのにシステム管理装置200により必要とされるデータを含む。クリティカル動作状態160は、割り込みを支援し、カーソル位置、ミニマムデバイスドライバ及び現在ディスプレイサーフェイスを更新するのに必要とされるオペレーティングシステムの部分、割り込みサービスルーチンの1つ以上を含むことができる。
[0032]図4Bは、本発明の1つ以上の態様による図3のステップ320を行うための方法ステップの別のフロー図である。ステップ415及び420は、前述したように行われる。ステップ422において、システム管理装置200は、クリティカル動作状態コピー260をローカルメモリ205にロードするため、クリティカル動作状態160をコピーする。システム割り込みをインターセプトした後クリティカル動作状態160の全て又は部分をコピーするのでなく、図4Bに示す方法は、クリティカル動作状態コピー260を生成するため、クリティカル動作状態160をローカルメモリ205へと先取りロードする。ステップ425及び430は、前述したように行われる。
[0033]図4Cは、本発明の1つ以上の態様による図3のステップ320を行うための方法ステップの更に別のフロー図である。ステップ415、420、422及び425は、前述したように行われる。ステップ428において、システム管理装置200は、電圧レギュレータ155をディスエーブルすることにより、システムメモリ104が低電力モードにおいて動作するようにコンフィギュレーションする。システムメモリ104への電力供給を除くことにより、コンピュータシステム100によって消費される電力が更に減少させられる。コンピュータシステム100が低電力動作モードから高電力動作モードへと移行するとき、システム管理装置200は、電圧レギュレータ155をイネーブルして、システムメモリ104への電力を回復させることができる。ステップ430は、前述したように行われる。
[0034]図5は、本発明の1つ以上の態様による低電力動作状態から高電力動作状態への移行を行うように図3のステップ355を行うための方法ステップのフロー図である。ステップ555において、システム管理装置200は、それ自身に対する割り込みを開始し、コンピュータシステム100がもはや低いアクティビティ状態にないことを示す。ステップ560において、システム管理装置200は、クリティカル動作状態160を更新するため、現在のクリティカル動作状態コピー260をシステムメモリ104に記憶させる。ステップ565において、システム管理装置200は、CPU102又はCPU122が高電力モードにて動作するようにコンフィギュレーションする。ステップ570において、CPU102又はCPU122は、システムメモリ104からクリティカル動作状態160を読み取り、インターセプトされた割り込みの処理中にシステム管理装置200により変更された更新クリティカル動作状態でもって処理を再開する。
[0035]図6は、本発明の1つ以上の態様による図1A及び図1Bのコンピュータシステム100をブートアップするように図3のステップ300を行うための方法ステップのフロー図である。ステップ600において、システム管理装置200がパワーアップされる。ステップ605において、システム管理装置200は、コンピュータシステム100に対するパワーオン自己テスト(POST)機能を行う。従来のシステムでは、このPOSTは、高性能CPUにより行われる。このPOSTを行うのにシステム管理装置200を使用することにより、消費される電力が減少させられる。ステップ610において、CPU102又はCPU122がパワーアップされ、ステップ620において、ブートアッププロセスが完了する。本発明の幾つかの実施形態では、ステップ610は、ブートアッププロセス中の電力消費を減少させるため、アプリケーションプログラムがロードされるまで、遅延される。
[0036]本発明の幾つかの実施形態では、オペレーティングシステムは、性能及び/又は電力制約に基づいて、混成コンピューティングプラットフォーム内の種々な処理装置、例えば、CPU102又はCPU122、GPU112、システム管理装置200及び低電力GPU210へ処理タスクを適応的に移す。システムアクティビティが低いときには、オペレーティングシステムは、先ず、クリティカル処理をシステム管理装置200へ移し、全てのクリティカル処理がCPU102又はCPU122から移されたときに、CPU102又はCPU122をパワーダウンすることにより、低電力動作状態への移行を開始することができる。
[0037]異なる電力消費特性を有する動作モードの間でコンピューティングシステム100を適応的に移行させることにより、コンピューティングシステム100がバッテリー電力にて動作する時間を延長することができる。システム管理装置200又はオペレーティングシステムは、コンピュータシステム100が異なる電力モードの間で移行すべきときを決定することができる。低電力モードにおいて、システム管理装置200は、クリティカル動作状態のコピーを更新しながら、CPU102又はCPU122に対して意図された割り込みをインターセプトし、処理する。アクティビティのレベルが変化するとき、CPU102又はCPU122は、システム管理装置200により変更されたクリティカル動作状態を使用して、割り込みの処理を再開する。CPU102又はCPU122、システム管理装置200、GPU112及びシステムメモリ104への電力をイネーブル又はディスエーブルすることにより、種々な電力消費レベルを達成することができる。
[0038]特定の実施形態について本発明を前述してきたのであるが、当業者には理解されるように、特許請求の範囲に記載されるような本発明のより広い精神及び範囲から逸脱することなく、それら実施形態に対して種々な変更及び変形をなすことができるものである。本発明の1つの実施形態は、コンピュータシステムに使用するためのプログラム製品として実施することができる。このプログラム製品のプログラムは、これら実施形態(ここに説明した方法を含む)の諸機能を定めており、種々なコンピュータ読み取り可能な記憶媒体に含ませることができるものである。コンピュータ読み取り可能な記憶媒体の例示としては、これらに限定されるものではないが、(i)情報が永久的に記憶される非書き込み記憶媒体(例えば、CD−ROMドライブにより読み取られるCD−ROMディスクの如きコンピュータ内のリードオンリーメモリデバイス、フラッシュメモリ、ROMチップ又は任意のタイプの固体不揮発性半導体メモリ)、及び(ii)変更可能な情報が記憶される書き込み可能な記憶媒体(例えば、ディスケットドライブ又はハードディスクドライブ内のフロッピーディスク、又は任意のタイプの固体ランダムアクセス半導体メモリ)がある。従って、前述した説明及び図は、それらに限定する意味ではなく、単なる例示であるとして考えられたい。
100・・・コンピュータシステム、102・・・中央処理装置(CPU)、103・・・接続、104・・・システムメモリ、105・・・コアロジック、106・・・フロントサイドバス(パス)、108・・・ユーザー入力装置、110・・・表示装置、112・・・GPU、113・・・表示装置、114・・・システムディスク、115・・・コアロジック、116・・・スイッチ、118・・・ネットワークアダプタ、120・・・アドインカード、121・・・アドインカード、122・・・GPU、150・・・電圧レギュレータ、155・・・電圧レギュレータ、160・・・クリティカル動作状態、200・・・システム管理装置(SMU)、205・・・ローカルメモリ、210・・・一体化GPU(低電力GPU)、214・・・メモリインターフェース、260・・・クリティカル動作状態コピー

Claims (9)

  1. 異なる電力消費を有する複数の動作モードの間でコンピューティングシステムを適応的に移行させるための方法において、
    前記コンピューティングシステムが低いアクティビティ状態にあることを決定するステップと、
    前記コンピューティングシステムにおける中央処理装置(CPU)に対するシステム管理割り込みを開始させるステップと、
    前記CPUのクリティカル動作状態を、システムメモリに記憶するステップと、
    前記CPUを、低電力動作モードにコンフィギュレーションするステップと、
    前記CPUに対して意図された割り込みを、システム管理装置(SMU)による処理のためインターセプトするステップと、
    インターセプトされた割り込みを処理するために、前記CPUのクリティカル動作状態を前記システムメモリから前記SMUへとロードするステップと、含み、
    前記CPUの前記クリティカル動作状態は、ディスプレイサーフェイス、割り込みサービスルーチン及びオペレーティングシステムの部分のうちの少なくとも1つを含み、
    前記SMUは、前記CPUに対して意図された割り込みを処理するように構成されている、
    方法。
  2. 前記SMUによる割り込みの処理の結果として変更される前記クリティカル動作状態のコピーを生成するステップを更に含む、請求項1に記載の方法。
  3. 前記コンピューティングシステムが低いアクティビティ状態にないことを決定するステップと、
    前記SMUによる割り込みを生成して、前記SMUが低電力動作モードから高電力動作モードへの移行を開始するステップと、を更に含む、請求項2に記載の方法。
  4. 前記クリティカル動作状態のコピーを前記SMUから前記システムメモリへと記憶して、前記クリティカル動作状態を更新するステップを更に含む、請求項3に記載の方法。
  5. 前記システムメモリから前記クリティカル動作状態を前記CPUにより読み取るステップと、
    前記CPUが前記高電力動作モードにて動作するようにコンフィギュレーションするステップと、を更に含む、請求項4に記載の方法。
  6. インターセプトされた割り込みを処理するのに前記SMUにより必要とされる前記CPUの前記クリティカル動作状態の部分が、前記SMUに記憶されていないことを決定するステップと、
    前記CPUの前記クリティカル動作状態の部分を前記システムメモリから前記SMUへとロードするステップと、を更に含む請求項1に記載の方法。
  7. 前記CPUに対して意図された前記割り込みは、入力装置からの割り込み、周期的システム更新及び周期的ユニバーサルシリアルバスサイクルのうちの少なくとも1つを含む、請求項1に記載の方法。
  8. 前記システムメモリを低電力動作モードにコンフィギュレーションするステップを更に含む、請求項1に記載の方法。
  9. 前記コンピューティングシステムが低いアクティビティ状態にあることを決定するステップの前に、
    前記SMUをパワーアップするステップと、
    前記CPUをパワーアップする前に、前記パワーアップ及び自己テストシーケンスを行うステップと、を更に含む、請求項1に記載の方法。
JP2009170148A 2008-07-29 2009-07-21 プラットフォームベースのアイドルタイム処理 Active JP5093620B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/182,074 2008-07-29
US12/182,074 US7779191B2 (en) 2008-07-29 2008-07-29 Platform-based idle-time processing

Publications (2)

Publication Number Publication Date
JP2010061644A JP2010061644A (ja) 2010-03-18
JP5093620B2 true JP5093620B2 (ja) 2012-12-12

Family

ID=41609552

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009170148A Active JP5093620B2 (ja) 2008-07-29 2009-07-21 プラットフォームベースのアイドルタイム処理

Country Status (5)

Country Link
US (1) US7779191B2 (ja)
JP (1) JP5093620B2 (ja)
KR (1) KR101078485B1 (ja)
CN (1) CN101639726B (ja)
TW (1) TWI405076B (ja)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP3570178B1 (en) 2002-01-08 2020-05-27 Seven Networks, LLC Secure transport for mobile communication network
US8943347B2 (en) * 2009-09-09 2015-01-27 Advanced Micro Devices, Inc. Controlling the power state of an idle processing device
US8362645B2 (en) * 2010-03-29 2013-01-29 Intel Corporation Method to reduce system idle power through system VR output adjustments during S0ix states
CN102213971B (zh) * 2010-04-09 2015-09-09 赛恩倍吉科技顾问(深圳)有限公司 时序控制电路及具有该时序控制电路的前端总线电源
EP2599280A2 (en) 2010-07-26 2013-06-05 Seven Networks, Inc. Mobile application traffic optimization
EP3367252B1 (en) 2010-07-26 2019-10-16 Seven Networks, LLC Context aware traffic management for resource conservation in a wireless network
US8806232B2 (en) 2010-09-30 2014-08-12 Apple Inc. Systems and method for hardware dynamic cache power management via bridge and power manager
US10817043B2 (en) * 2011-07-26 2020-10-27 Nvidia Corporation System and method for entering and exiting sleep mode in a graphics subsystem
US8707073B2 (en) 2011-08-31 2014-04-22 International Business Machines Corporation Energy-efficient polling loop
US8810584B2 (en) 2011-09-13 2014-08-19 Nvidia Corporation Smart power management in graphics processing unit (GPU) based cluster computing during predictably occurring idle time
DE112011105950T5 (de) * 2011-12-16 2014-09-25 Intel Corporation Verfahren, Vorrichtung und System für erweiterte Grafikverarbeitung über einen externen E/A-Port für Anzeigedaten
US10990407B2 (en) 2012-04-24 2021-04-27 Intel Corporation Dynamic interrupt reconfiguration for effective power management
US9164565B2 (en) * 2012-12-28 2015-10-20 Intel Corporation Apparatus and method to manage energy usage of a processor
US20140189400A1 (en) * 2012-12-28 2014-07-03 Mediatek Inc. Processing system and associated method
US9329658B2 (en) * 2012-12-28 2016-05-03 Intel Corporation Block-level sleep logic
CN104102321B (zh) * 2013-04-07 2018-06-26 索尼公司 降低cpu能耗的方法
CN104102322B (zh) * 2013-04-07 2018-08-03 索尼公司 延长cpu睡眠时间的方法及装置
US10540292B2 (en) 2016-06-08 2020-01-21 Google Llc TLB shootdowns for low overhead
EP3542358B1 (en) * 2016-11-16 2024-06-26 Magic Leap, Inc. Mixed reality system with reduced power rendering
US10963036B2 (en) 2018-04-16 2021-03-30 Nxp Usa, Inc. Idle loop detection and control for processors
CN111077976B (zh) * 2018-10-18 2021-07-20 珠海全志科技股份有限公司 多核心处理器的空闲状态低功耗模式实现方法和处理器

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5537656A (en) * 1994-06-17 1996-07-16 Intel Corporation Method and apparatus for a microprocessor to enter and exit a reduced power consumption state
US6105142A (en) * 1997-02-11 2000-08-15 Vlsi Technology, Inc. Intelligent power management interface for computer system hardware
TW509843B (en) * 1998-07-24 2002-11-11 Mitac Technology Corp Control method and system for dynamically adjusting processor
US6711691B1 (en) * 1999-05-13 2004-03-23 Apple Computer, Inc. Power management for computer systems
US6772241B1 (en) * 2000-09-29 2004-08-03 Intel Corporation Selective interrupt delivery to multiple processors having independent operating systems
US6986066B2 (en) * 2001-01-05 2006-01-10 International Business Machines Corporation Computer system having low energy consumption
TW541453B (en) * 2001-12-27 2003-07-11 Asustek Comp Inc Power saving device for computer and method thereof
US7191349B2 (en) * 2002-12-26 2007-03-13 Intel Corporation Mechanism for processor power state aware distribution of lowest priority interrupt
US7240228B2 (en) * 2003-05-05 2007-07-03 Microsoft Corporation Method and system for standby auxiliary processing of information for a computing device
US7363411B2 (en) * 2003-10-06 2008-04-22 Intel Corporation Efficient system management synchronization and memory allocation
TWI258083B (en) * 2003-11-20 2006-07-11 Via Tech Inc Interrupt signal control system and control method
US7730335B2 (en) * 2004-06-10 2010-06-01 Marvell World Trade Ltd. Low power computer with main and auxiliary processors
US7664970B2 (en) * 2005-12-30 2010-02-16 Intel Corporation Method and apparatus for a zero voltage processor sleep state
JP2006221381A (ja) * 2005-02-09 2006-08-24 Sharp Corp プロセッサシステム、該プロセッサシステムを備えた画像形成装置
WO2007026405A1 (ja) * 2005-08-30 2007-03-08 Fujitsu Limited 稼動時間を測定する情報処理装置
US7496770B2 (en) * 2005-09-30 2009-02-24 Broadcom Corporation Power-efficient technique for invoking a co-processor
US20080082710A1 (en) * 2006-09-29 2008-04-03 Dell Products L.P. System and method for managing system management interrupts in a multiprocessor computer system
GB2455744B (en) * 2007-12-19 2012-03-14 Advanced Risc Mach Ltd Hardware driven processor state storage prior to entering a low power mode
US7962771B2 (en) * 2007-12-31 2011-06-14 Intel Corporation Method, system, and apparatus for rerouting interrupts in a multi-core processor

Also Published As

Publication number Publication date
CN101639726B (zh) 2012-02-01
KR20100012846A (ko) 2010-02-08
US7779191B2 (en) 2010-08-17
CN101639726A (zh) 2010-02-03
KR101078485B1 (ko) 2011-10-31
US20100031071A1 (en) 2010-02-04
TWI405076B (zh) 2013-08-11
JP2010061644A (ja) 2010-03-18
TW201011526A (en) 2010-03-16

Similar Documents

Publication Publication Date Title
JP5093620B2 (ja) プラットフォームベースのアイドルタイム処理
JP4515093B2 (ja) Cpuのパワーダウン方法及びそのための装置
US8028185B2 (en) Protocol for transitioning in and out of zero-power state
CN109739563B (zh) 终端的控制方法、装置、系统及存储介质
US8156362B2 (en) Hardware monitoring and decision making for transitioning in and out of low-power state
US6243831B1 (en) Computer system with power loss protection mechanism
KR100352045B1 (ko) 컴퓨터시스템에서전력소모를감소시키기위한방법및장치
TWI407300B (zh) 電源管理控制器與方法
US5737615A (en) Microprocessor power control in a multiprocessor computer system
US7941683B2 (en) Data processing device with low-power cache access mode
US20110213950A1 (en) System and Method for Power Optimization
US20060294407A1 (en) Response to wake event while a system is in reduced power consumption state
US20080065845A1 (en) Reducing Wake Latency Time For Power Conserving State Transition
TWI483265B (zh) 硬體動態快取電源管理
US20110213998A1 (en) System and Method for Power Optimization
US20110213947A1 (en) System and Method for Power Optimization
US8595386B2 (en) Software controlled redirection of configuration address spaces
JP2001092565A (ja) コンピュータ及びコンピュータの電源制御方法
US9836378B2 (en) Methods for managing performance states in an information handling system
KR20090026895A (ko) 시스템 온 칩에서 전력 소모를 감소시키기 위한 장치 및방법
US20140129759A1 (en) Low power write journaling storage system
CN114064529A (zh) 可配置的减少的存储器启动
US11579876B2 (en) Reducing save restore latency for power control based on write signals
US20220207813A1 (en) Graphics processing units with power management and latency reduction
WO2022040911A1 (en) Methods and apparatus to perform pseudo-s3 protocol to update firmware and/or activate new firmware with warm reset

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110906

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111201

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: 20120821

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120905

R150 Certificate of patent or registration of utility model

Ref document number: 5093620

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150928

Year of fee payment: 3

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

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