JP5069291B2 - 複数のグラフィックスサブシステムと低減電力消費モードとを有する装置、ソフトウェアおよび該装置の動作方法 - Google Patents

複数のグラフィックスサブシステムと低減電力消費モードとを有する装置、ソフトウェアおよび該装置の動作方法 Download PDF

Info

Publication number
JP5069291B2
JP5069291B2 JP2009513431A JP2009513431A JP5069291B2 JP 5069291 B2 JP5069291 B2 JP 5069291B2 JP 2009513431 A JP2009513431 A JP 2009513431A JP 2009513431 A JP2009513431 A JP 2009513431A JP 5069291 B2 JP5069291 B2 JP 5069291B2
Authority
JP
Japan
Prior art keywords
graphics
graphics subsystem
electronic device
mode
power consumption
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
JP2009513431A
Other languages
English (en)
Other versions
JP2009539192A (ja
Inventor
ササ・マリンコヴィック
ルーメン・サルチェフ
ジョージ・サイ
フィル・ムンマー
ミンウェイ・チェン
ジェイソン・ロング
マイケル・トレシッダー
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.)
ATI Technologies ULC
Original Assignee
ATI Technologies ULC
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 ATI Technologies ULC filed Critical ATI Technologies ULC
Publication of JP2009539192A publication Critical patent/JP2009539192A/ja
Application granted granted Critical
Publication of JP5069291B2 publication Critical patent/JP5069291B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/363Graphics controllers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • 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
    • G06F1/3215Monitoring of peripheral devices
    • G06F1/3218Monitoring of peripheral devices of display devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2330/00Aspects of power supply; Aspects of display protection and defect management
    • G09G2330/02Details of power systems and of start or stop of display operation
    • G09G2330/021Power management, e.g. power saving
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/06Use of more than one graphics processor to process data before displaying to one or more screens

Description

この出願は2006年5月30日出願の米国特許出願番号第11/421005号の利益を主張するものであり、その内容全体はこれにより参照によって採り入れられる。
本発明は、一般に電子装置における電力消費の低減に、より詳しくは、複数のグラフィックスプロセッサを有する装置における電力消費を引き下げる方法ならびに、関係する装置およびソフトウェアに関する。
従来のコンピューティング装置といった多くの電子装置は現在、2次元および3次元グラフィックスのレンダリング、動画ビデオの復号化および符号化などが可能なグラフィックスサブシステムを含む。これらの機能および望ましい処理速度を提供するために、現代のグラフィックスサブシステムは絶え間なく増加する数のトランジスタを含む。当然ながら、トランジスタ数の増加は、グラフィックスサブシステムによる呼応したより大きな電力消費につながっている。
その結果、最速かつ豊富な機能のグラフィックスサブシステムは、ほとんどの場合、増大した電力需要を満たすことができる装置のために確保されている。ラップトップ、パーソナルディジタルアシスタント、ビデオおよびオーディオプレーヤ、携帯電話などといった可搬型コンピューティング装置はしばしば、機能的に限られているが電気的に効率的な(すなわち低電力の)構成要素を装備している。
これらのグラフィックスサブシステムはたいてい、プロセッサ相互接続回路(しばしば「チップセット」と呼ばれる)といった他のコンピューティング構成要素に組み込まれている。
近年、固定型コンピュータのそれらに匹敵するグラフィックス機能および性能を可搬型装置に提供する傾向が存在する。たいていこれは、可搬型装置へのオプションの外部の強力なグラフィックスサブシステムの追加を可能にすることによって行われる。例えば、PCI Express(PCIe)規格は、ラップトップコンピュータへの外部構成要素として、グラフィックスサブシステムを含むPCI Express準拠グラフィックスカードの相互接続を想定している。
同時に、ワイヤレス構成要素、大型ディスプレイなどといった他のコンピューティング機能の進歩は、可搬型装置およびノート型コンピュータに給電するためにより長期のバッテリ寿命の要請を生じている。
バッテリ寿命を延長する1つの方法は、消費される電力を一時的に低減することである。装置が消費する電力の総量は、装置構成要素の個々の電力需要によって決定される。例えば、中央処理装置(CPU)、ハードディスク装置(HDD)およびグラフィックスサブシステムは全部、個別の電力需要を有する。
従って、電力低減技法は、クロックゲート制御、電圧スロットリングおよび資源休止状態を含む。クロックゲート制御は、トランジスタおよびキャパシタスイッチング動作を低減することによって消費電力を低減する。これは、クロック信号がプロセッサのアイドル回路に着信していないかどうか、またその速度を制御することを電子装置のある回路に許すことによって達成される。
電圧スロットリングは、電子装置のプロセッサへの供給電圧を引き下げることによって全体の電力消費を低減する。供給電圧の低減は一般にクロック周波数の低減と連係して行われる。
資源休止状態は、電子構成要素のある特定の構成要素が不作動の期間中に、電源を切断されるか、「スリープモード」に位置づけられるか、または別様に低電力消費モードに位置づけられることを可能にする。例えば、Advanced Configuration and Power Interface(ACPI)仕様は、消費される全体の電力を低減するために組み合わせることができる多くの異なる装置電力状態を規定している。
高性能の提供とバッテリ寿命の節約とのバランスを最適化することは課題を呈示し続けている。従って、電子装置およびコンピュータにおけるグラフィックス処理に関係する電力消費を引き下げる方法および装置の必要性は依然として存在する。
多くのコンピューティング装置は今や2個以上のグラフィックスサブシステムを含み得る。複数のグラフィックスサブシステムは、種々の能力を有することができ、そして例えば、1個のサブシステムが他のものよりも多くの平均電力を消費して、異なる量の電力を消費し得る。高電力消費グラフィックスサブシステムは装置に結合され、低電力消費グラフィックスサブシステムの代わりに、またはそれに加えて使用することができ、結果的に高性能または付加的な能力を、しかし増大した全電力消費をもたらす。高電力消費グラフィックスサブシステムの使用から低電力消費グラフィックスサブシステムへ移行させることによって、高電力消費グラフィックスサブシステムを低電力消費モードに位置づけている間、全電力消費は低減される。
本発明の態様によれば、グラフィックスをレンダリングするために動作可能な第1のグラフィックスサブシステム、グラフィックスをレンダリングするために動作可能な第2のグラフィックスサブシステム、第1のグラフィックスサブシステムおよび第2のグラフィックスサブシステムの両方と通信しているディスプレイ、およびプロセッサを含む電子装置が提供される。プロセッサは、第2のグラフィックスサブシステムがディスプレイにグラフィックスをレンダリングする第1のモードから第1のグラフィックスサブシステムがディスプレイにグラフィックスをレンダリングし、そして第2のグラフィックスサブシステムが低電力消費モードに位置づけられる第2のモードに電子装置を移行させるようにプロセッサを至らしめるプロセッサ実行可能命令を実行する。
1実施形態において、プロセッサ実行可能命令はさらに、電子装置を望ましい高電力消費状態の感知に応答して第2のモードから第1のモードへ移行させる。
別の実施形態において、望ましい高電力消費状態の感知は相互接続された周辺装置が切断されたことを感知することを含む。
また別の実施形態において、周辺装置は、外部光、USB装置、キーボード、マウス、および外部メディアドライブ、プリンタ、スキャナのうちの少なくとも1つよりなる。
さらなる実施形態において、望ましい高電力消費状態の感知は規定のしきい値を上回る使用可能電気エネルギーの感知を含む。
またさらなる実施形態において、望ましい高電力消費状態の感知はAC電源コンセントへの電子装置の相互接続の感知を含む。
またさらなる実施形態において、望ましい高電力消費状態の感知は周辺装置の動作停止の感知を含む。
さらなる実施形態において、周辺装置はモデムまたはネットワークインタフェースのうちの1つよりなる。
さらなる実施形態において、望ましい高電力消費状態の感知は、電子装置のネットワークインタフェースによって使用される帯域幅が規定のしきい値未満に低下したことの感知を含む。
またさらなる実施形態において、望ましい高電力消費状態の感知はユーザが電子装置でログインしたことの断定を含む。
さらなる実施形態において、望ましい高電力消費状態の感知はグラフィックス集約的ソフトウェアアプリケーションが起動されたことの断定を含む。
またさらなる実施形態において、望ましい高電力消費状態の感知はソフトウェアアプリケーションがグラフィックス集約的モードに切り替えられたことの断定を含む。
さらなる実施形態において、望ましい高電力消費状態の感知はしきい値を上回る帯域幅を有するビデオストリームが復号化されていることの断定を含む。
またさらなる実施形態において、望ましい高電力消費状態の感知はグラフィックス画像が表示されていることの断定を含む。
またさらなる実施形態において、望ましい高電力消費状態の感知は文字ベースのインタフェースからグラフィカルなオペレーティングシステムインタフェースへの切り替えの感知を含む。
さらなる実施形態において、望ましい高電力消費状態の感知はモニタがディスプレイとして電子装置に相互接続されたことの感知を含む。
さらなる実施形態において、望ましい高電力消費状態の感知はディスプレイの解像度がしきい値を超えて増大したことの感知を含む。
またさらなる実施形態において、望ましい高電力消費状態の感知は第2のグラフィックスサブシステムが電子装置に挿入されたことの感知を含む。
さらなる実施形態において、望ましい高電力消費状態の感知は電子装置のための物理的ケースが開けられたことの感知を含む。
またさらなる実施形態において、プロセッサ実行可能命令はさらに、望ましい高電力モードを示すエンドユーザ会話の感知に応答して電子装置を第2のモードから第1のモードへ移行させる。
またさらなる実施形態において、プロセッサ実行可能命令はさらに、第1のグラフィックスサブシステムのエンドユーザによる使用中止に応答して電子装置を第2のモードから第1のモードへ移行させる。
またさらなる実施形態において、プロセッサ実行可能命令はさらに、第1のグラフィックスサブシステムの故障に応答して電子装置を第2のモードから第1のモードへ移行させる。
またさらなる実施形態において、プロセッサ実行可能命令はさらに、第1のグラフィックスサブシステムのソフトウェアドライバの取り外しに応答して電子装置を第2のモードから第1のモードへ移行させる。
さらなる実施形態において、プロセッサ実行可能命令は望ましい低電力消費状態の感知に応答して電子装置を第2のモードに位置づける。
さらなる実施形態において、望ましい低電力消費状態の感知は周辺装置が相互接続されたことの感知よりなる。周辺装置は、外部光、USB装置、キーボード、マウス、および外部メディアドライブ、プリンタ、スキャナのうちの少なくとも1つを含む。
さらなる実施形態において、望ましい低電力消費状態の感知は相互接続されたモニタの輝度がしきい値を超えて増加したことの感知を含む。
またさらなる実施形態において、望ましい低電力消費状態の感知は規定のしきい値未満の使用可能電気エネルギーの感知を含む。
さらなる実施形態において、望ましい低電力消費状態の感知は装置のDC電源の低電力状態を含む。
さらなる実施形態において、望ましい低電力消費状態の感知は電子装置の少なくとも一部の温度の感知を含む。
さらなる実施形態において、望ましい低電力消費状態の感知は第2のグラフィックスサブシステムの温度の感知を含む。
さらなる実施形態において、望ましい低電力消費状態の感知はAC電源コンセントからの電子装置の切断の感知を含む。
さらなる実施形態において、望ましい低電力消費状態の感知は規定の期間にわたる電子装置の実質的な不活動の感知を含む。
またさらなる実施形態において、望ましい低電力消費状態の感知は周辺装置の起動の感知を含む。周辺装置は例えばモデムまたはネットワークインタフェースのうちの1つよりなるとしてよい。
さらなる実施形態において、望ましい低電力消費状態の感知は、電子装置のネットワークインタフェースによって使用される帯域幅が規定のしきい値未満に低下したことの感知を含む。
さらなる実施形態において、望ましい低電力消費状態の感知は全部のユーザが電子装置からログアウトしたことの断定を含む。
さらなる実施形態において、望ましい低電力消費状態の感知はグラフィックス集約的ソフトウェアアプリケーションが終了されたことの断定を含む。
さらなる実施形態において、望ましい低電力消費状態の感知はグラフィックス集約的ソフトウェアアプリケーションが終了されたことの断定を含む。
さらなる実施形態において、望ましい低電力消費状態の感知は電子装置がドッキングステーションから取り外されたことの断定を含む。
さらなる実施形態において、望ましい低電力消費状態の感知はグラフィックス画像がもはや表示されていないことの断定を含む。
さらなる実施形態において、望ましい低電力消費状態の感知は、グラフィカルなオペレーティングシステムインタフェースから文字ベースのインタフェースへの切り替えの感知を含む。
さらなる実施形態において、望ましい低電力消費状態の感知はモニタが電子装置から切断されたことの感知を含む。
さらなる実施形態において、望ましい低電力消費状態の感知はディスプレイの解像度がしきい値を超えて減少したことの感知を含む。
さらなる実施形態において、望ましい低電力消費状態の感知は第2のグラフィックスサブシステムが電子装置から取り外されたことの感知を含む。
またさらなる実施形態において、望ましい低電力消費状態の感知は電子装置の物理的ケースが閉じられたことの感知を含む。
またさらなる実施形態において、プロセッサ実行可能命令は望ましい低電力モードを示すエンドユーザ会話の感知に応答して電子装置を第2のモードに位置づける。
またさらなる実施形態において、プロセッサ実行可能命令は第2のグラフィックスサブシステムのエンドユーザによる使用中止に応答して電子装置を第2のモードへ移行する。
さらなる実施形態において、プロセッサ実行可能命令は第2のグラフィックスサブシステムの故障に応答して電子装置を第2のモードに位置づける。
さらなる実施形態において、プロセッサ実行可能命令は第2のグラフィックスサブシステムのソフトウェアドライバの取り外しに応答して電子装置を第2のモードに位置づける。
本発明の別の態様によれば、第1および第2のグラフィックスサブシステムを有するコンピューティング装置を動作させる方法が提供される。方法は、高電力消費モードにおいて、相互接続されたディスプレイでの表示のために第2のグラフィックスサブシステムを用いてグラフィックスをレンダリングすることと、コンピューティング装置の望ましい低電力消費モードを検出し、望ましい低電力モードの検出に応答して第2のグラフィックスサブシステムを低電力消費モードに位置づけ、第2のグラフィックスサブシステムが低電力消費モードにある間、相互接続されたディスプレイにグラフィックスをレンダリングするように第1のグラフィックスサブシステムを構成する、ソフトウェアを実行することとを含む。
本発明のまた別の態様によれば、第1および第2のグラフィックスサブシステムを有するコンピューティング装置を動作させる方法が提供される。方法は、低電力消費モードにおいて、相互接続されたディスプレイでの表示のために第1のグラフィックスサブシステムを用いてグラフィックスをレンダリングすることと、コンピューティング装置の望ましい高電力消費モードを検出し、望ましい高電力消費モードの検出に応答して第2のグラフィックスサブシステムを高電力消費モードに位置づけ、相互接続されたディスプレイにグラフィックスをレンダリングするように第2のグラフィックスサブシステムを構成する、ソフトウェアを実行することとを含む。
本発明のまた別の態様によれば、DC電源、ディスプレイ、中央処理装置、第1のグラフィックスサブシステムおよびマザーボード上のメモリを収容するハウジングを含む可搬型コンピューティング装置が提供される。周辺装置拡張スロットがハウジング内部に形成されている。第2のグラフィックスサブシステムが周辺装置拡張スロットの周辺装置拡張カード上にある。メモリは電力管理ソフトウェアを記憶しており、それは実行された時に、周辺装置拡張カードの第2のグラフィックスサブシステムを、周辺装置拡張カードのグラフィックスサブシステムがグラフィックスをレンダリングする高電力消費モードから低電力消費モードに移行させ、望ましい低電力モードの感知に応答して第1のグラフィックスサブシステムを用いてグラフィックスをレンダリングする。
本発明の他の態様および特徴は、添付図面とともに本発明の特定の実施形態の以下の説明の精査により当業者にとって明らかになるであろう。
図面各図は本発明の実施形態を例証としてのみ例示する。
図1は、2個のグラフィックスサブシステム30および40ならびにディスプレイ26を含む電子装置10の単純化した高水準ブロック図である。明らかになるように、各グラフィックスサブシステム30、40は、2Dグラフィックス、3Dグラフィックス、復号化動画ビデオなどのうちの1つ以上の形態でコンピュータグラフィックスをレンダリングする能力がある専用電子回路を含む。
一方のグラフィックスサブシステム40は、他方のグラフィックスサブシステム30よりも高い平均電力を消費する。一般に、高い平均電力を消費するグラフィックスサブシステム40は、グラフィックスサブシステム30よりも優れたグラフィックスレンダリング能力を有する。例えば、グラフィックスサブシステム40は、低い平均電力を消費するグラフィックスサブシステムよりも高いフレームレートで2Dまたは3Dグラフィックスをレンダリングすることができるとしてよい。同様に、グラフィックスサブシステム30、40は同一の能力を有する必要はない。グラフィックスサブシステム40は一般にグラフィックスサブシステム30よりも多くの機能ブロックを含む。
両方のグラフィックスサブシステム30および40は、レンダリングされたグラフィックスが表示される同一のディスプレイ26と物理的または論理的に結合されている。本発明の実施形態の例示的な装置10は、ディスプレイ26へのグラフィックスが高電力消費のグラフィックスサブシステム40によってレンダリングされる高電力消費モードから、ディスプレイ26へのグラフィックスが低電力消費のグラフィックスサブシステム30によってレンダリングされ、かつグラフィックスサブシステム40が部分的に、完全に、またはほとんどディスエーブルにされる低電力モードに切り替わることができる。
都合のよいことに、高電力モードから低電力モードへの移行は、装置10に電力サイクル(すなわち電源切断および再始動)を要求することなく動的に行われ、そしてソフトウェア制御のもとでプロセッサ12によって行うことができる。この文脈において、ソフトウェアはファームウェア、デバイスドライバ、DIOSなどを含むとしてよい。
本発明は、2個のグラフィックスサブシステムを含む実質的にあらゆる電子装置の一部を成すことができる。そうしたものとして、装置10は、デスクトップコンピューティング装置、可搬型コンピューティング装置(ラップトップコンピュータ、PDA、携帯電話、ビデオまたはオーディオプレーヤ、メディアセンターなどを含む)の形態を取ることができよう。
以下に説明する例示的な実施形態において、本発明の実施形態はモバイル(ラップトップ)コンピューティング装置の一部を成すものとして開示される。
具体的には、図2は、本発明の実施形態の例示的な特定のモバイルコンピューティング装置10の単純化したブロック図である。図1に示された図示の装置10は、従来のインテル(Intel)x86コンピュータアーキテクチャに基づくコンピューティング装置である。しかし当業者は、本発明がPowerPCアーキテクチャ、AMDx86または他の既知のアーキテクチャといった他のアーキテクチャを有するコンピューティング装置において具体化され得ることを容易に認識するであろう。
図示の通り、例示装置10は、中央処理装置(CPU)として形成されたプロセッサ12、ホストメモリ14および周辺装置を含み、これらは全部、統合インタフェース回路16および18(北ブリッジ16および南ブリッジ18とも称する)によって相互接続されている。これらは全部マザーボード上に形成することができる。
インタフェース回路16は、高速インタフェースであり、CPU12、メモリ14および周辺装置を高速拡張バス20によって相互接続する。インタフェース回路16はさらにCPU12を低速インタフェース回路18に相互接続する。1個以上の周辺装置拡張スロット22が高速拡張バス20によってインタフェース回路16と相互接続され得る。例示的な高速拡張バス20は、ギガバイト/秒範囲の帯域幅を有するPCI Express(PCIe)バスであり、この帯域幅でのデータ転送リード/ライトを可能にする。
インタフェース回路16はさらに、モニタ、LCDパネル、テレビなどの形態であるとしてよいディスプレイ26での表示のためのビデオ信号の生成に適格な統合グラフィックスプロセッサ(IGP)として具体化された第1のグラフィックスサブシステム30を含む。
付加的な第2のグラフィックスサブシステム40が装置10の一部を形成する。例示的な実施形態において、グラフィックスサブシステム40は周辺装置拡張カード46に形成された外部グラフィックスプロセッサとして具体化されている。周辺装置拡張カード46はまた、拡張バス20の拡張スロット22によってインタフェース回路16と接続される。明らかになるように、第2のグラフィックスサブシステム40を設けることによって、装置10は、さもなければ装置10には存在しない拡張グラフィックス能力を提供することができる。第2のグラフィックスサブシステムによるフレームバッファとしての使用のために、グラフィックスメモリ50が周辺装置拡張カード46に含まれるとしてよい。同様に、グラフィックスサブシステム40と通信している電力コントローラ60が拡張カード46に随意で形成されることができ、グラフィックスサブシステム40の動作を制御することができる。具体的には、電力コントローラ60は、グラフィックスサブシステム40の構成要素によって使用されるメモリクロックおよびピクセルクロックといったクロックを調節する、グラフィックスサブシステム40の機能ブロックをディスエーブルに(または切断)する、グラフィックスサブシステム40の各部分に印加される電圧を下げる、または別様に、電力消費が低減される1つ以上のモードにサブシステム40を既知の方法で位置づけることができる。
オプションの別の電力コントローラ70が第1のグラフィックスサブシステム30と通信しているとしてよく、グラフィックスサブシステム30の構成要素によって使用されるメモリクロックおよびピクセルクロックといったクロックを調節する、グラフィックスサブシステム30の機能ブロックをディスエーブルに(または切断)する、グラフィックスサブシステム30の各部分に印加される電圧を下げる、または別様に、電力消費が低減される1つ以上のモードにサブシステム30を既知の方法で位置づけることができる。
例示的なグラフィックスサブシステム40は周辺装置拡張カード46に形成されているが、当業者はグラフィックスサブシステム40が装置10のマザーボードに、または他の場所にまったく簡単に形成できるはずであることを容易に認識するであろう。
グラフィックスサブシステム33および40は、同じ供給者/製造者または異なる供給者/製造者に由来してよい。インタフェース回路18は、光ディスクドライブ28といった低速周辺装置および相互配線、ならびにハードディスクドライブの形態の持続型記憶メモリ34を統合IDE/SATAポート(図示せず)によって、そしてプリンタおよび他の周辺装置をパラレルまたはUSBポート(図示せず)によって相互接続する。さらに他の周辺装置が、例えば既知のPCIまたはISA規格に準拠した低速拡張バス24によって相互接続され得る。サウンドカードおよびネットワークインタフェース(図示せず)といった他の構成要素も同様に低速拡張バス24によって、または別様にインタフェース回路18と相互接続され得る。
上述の通り、装置10はラップトップまたは小型コンピューティング装置の形態の可搬型コンピューティング装置として好適に形成することができる。そうしたものとして、単一のハウジングがDC電源38、ディスプレイ26および、上述のマザーボードおよび構成要素を収容するとしてよい。第2のグラフィックスサブシステム40は、コンピューティング装置の他の部分を収容する単一のハウジングに追加してもよいし、または装置10が物理的に相互接続された時に装置10の一部を成すにすぎないドッキングステーションの一部を形成してもよい。
装置10は、少なくとも2つの電力消費モード、すなわち、高電力消費モードおよび低電力消費モードで動作することができる。図示された実施形態において、装置10の高電力モードは装置10がAC(主)電源に接続された電源36によって給電される時に呈するとしてよく、低電力消費モードは装置10が1個以上のバッテリ、燃料電池などを使用するDC電源38によって給電される時に呈するとしてよい。一方、電力消費モードは、例えばユーザ選好、実行されているソフトウェアアプリケーションの形式、バッテリレベルなどに基づき、ユーザ選択されるか、ソフトウェア制御されるか、または別様に選択され得る。低および高電力消費モードの例示使用法のシナリオを以下に詳述する。
図示された実施形態において、装置10は、図3に図示の通り、システムメモリ内部に記憶されたソフトウェア200を実行する。システムメモリは持続型記憶メモリ34およびホストメモリ14を含み(図2)、さらにソフトウェア200を記憶し実行するために装置10により使用される付加的なランダムアクセスメモリ、読出し専用メモリおよびディスク記憶メモリの適格な組合せを含み得る。例示的なソフトウェア200は、例えば、読出し専用メモリに記憶されるか、またはディスクドライブ28(図1)といった外部周辺装置から、またはコンピュータネットワーク(図示せず)によってロードされることができよう。
例示実施形態において、ソフトウェア200はマイクロソフト・ウィンドウズ(登録商標)XP(Microsoft Windows(登録商標) XP)プラットホームに基づく。しかし、装置10を動作させるソフトウェアは、本発明の実施形態の例示的な様態において、このプラットホームに基づく必要はない。代わりに、例示的なソフトウェアは、リナックス(Linux)、マック・オーエスエックス(MacOSX)、マイクロソフト・ウィンドウズ(登録商標)・ヴィスタ(Microsoft Windows(登録商標) Vista)といった他の既知のコンピュータオペレーティングシステム、または他のオペレーティングシステムとともに機能することができる。異なるオペレーティングシステムにより、ソフトウェアアーキテクチャは図2に図示されたそれと著しく異なり得る。
図3に図示の通り、例示的なソフトウェア200は、アプリケーションソフトウェア202、グラフィックスライブラリ204、入出力マネージャ206、ビデオポート208および、装置10を本発明の実施形態の例示的な様態で動作するように適応させるハードウェアドライバプログラム210a、210b、212a、212b、214および216を含む。例示ソフトウェア200は、マイクロソフト・ウィンドウズ(登録商標)プラットホームに特定的である。当然、ソフトウェア200は、図3には具体的に詳示していないが当業者には明白な、ライブラリ、機能ブロック、ドライバなどの形態の他のソフトウェア構成要素を含むとしてよい。
ウィンドウズ(登録商標)XPオペレーティングシステム環境において、グラフィックスサブシステム30、40といったハードウェア構成要素の低レベル制御は一般に、ドライバと一般に呼ばれるソフトウェアモジュールによって制御される。各ハードウェア構成要素の動作は1個以上のそのようなドライバによって制御される。明らかになるように、一部のドライバはさらに、それらの生成を助成するために複数の構成要素にまとめることができる。明快さのために、ごく少数のドライバおよびドライバ構成要素(すなわちドライバ210a、210b、212a、212b、214および216)だけが図示されている。当然、ドライバ構成要素の正確な数および形式は大部分、装置10の完全なハードウェア機器構成に依存するであろう。ウィンドウズ(登録商標)XPオペレーティングシステムの脈絡におけるドライバアーキテクチャは、例えば、www.microsoft.com/whdc/driver/wdf/wdf−arch.mspxから入手可能な「ウィンドウズ(登録商標)ドライバ基盤のアーキテクチャ(Architecture of the Windows(登録商標) Driver Foundation)」(2006年5月10日)に詳細に記載されており、その内容はこれにより参照によって採り入れられる。
例示的なグラフィックスライブラリ204、入出力マネージャ206、ビデオポート208およびプラグアンドプレイドライバ214は一般に、マイクロソフト・ウィンドウズ(登録商標)オペレーティングシステムの一部として提供される。そうしたものとして、例示的なグラフィックスライブラリ204は、マイクロソフトのDirectXライブラリ、GDIライブラリおよびOpenGLライブラリを含むとしてよい。
ソフトウェア200は階層化されており、上位レベル層は特定の機能性を提供するために下位レベル層を使用する。従って、アプリケーションソフトウェア202は一般に、グラフィックスライブラリ204に呼出しを行うことによってグラフィックスをレンダリングする。転じてグラフィックスライブラリ204は、グラフィックスサブシステム30および40を用いてグラフィックスをレンダリングするためにウィンドウズ(登録商標)オペレーティングシステムおよびドライバを使用する。
グラフィックスライブラリ204はオペレーティングシステム入出力マネージャ206ならびにドライバ構成要素212aおよび212b(ディスプレイドライバ212とも称する)と通信する。入出力マネージャ206はオペレーティングシステムビデオポート208と通信する。ビデオポート208およびディスプレイドライバ212は転じてドライバ構成要素210aおよび210b(ミニポート構成要素210とも称する)と通信する。ビデオポート208は、全部のサードパーティービデオドライバに共通である汎用のハードウェア独立コードだけを含む。
ソフトウェア200はさらに、2個の別個のドライバ212aおよび212bならびに2個の別個のミニポート構成要素210aおよび210bを含み、一方のドライバ212aおよび一方のミニポート構成要素210aがグラフィックスサブシステム30との低レベル通信およびその制御を行い、そして他方のドライバ212bおよびミニポート構成要素210bがグラフィックスサブシステム40との低レベル通信およびその制御を行う。各々のミニポート構成要素210aおよび210bならびにドライバ212a、212bは、グラフィックスサブシステム30および40のインストールされたものに特定的であり、一般に同じ供給者によって提供される。ディスプレイドライバおよびミニポート構成要素212a、212bおよび210a、210bは、ウィンドウズ(登録商標)XPおよび類似のアーキテクチャに特定的であり、密に結合されている。ミニポート構成要素210は、ウィンドウズ(登録商標)オペレーティングシステムとともに供給されるオペレーティングシステムビデオポート部208と通信している。ミニポート構成要素210はプロセッサ12に対し、グラフィックスサブシステム30および40の状態変化を管理すること、グラフィックスサブシステム30、40に配置されたカーソルまたはポインタハードウェアを管理すること、ソフトウェアアプリケーション206およびドライバ構成要素212にビデオフレームバッファを利用可能にすることなどを可能にする。ウィンドウズ(登録商標)XPアーキテクチャにおいて、ミニポート構成要素210aおよび210bはレンダリング命令を実行するために使用されない。代わりに、レンダリングは、グラフィックスライブラリ204と通信しているとしてよいビデオドライバ212によって実行される。
バス20の動作を制御するためにオペレーティングシステムによって使用される付加的なハードウェアドライバ構成要素214もまた図3に図示されている。図示の通り、ドライバソフトウェアはプラグアンドプレイドライバ214およびPCIeバスインタフェースドライバ構成要素216を含む。さらに、プラグアンドプレイドライバ214はウィンドウズ(登録商標)XPまたは類似のオペレーティングシステムとともに供給される。プラグアンドプレイドライバ214は、コンピューティング装置10がオンである間に装置10に追加された新しいハードウェアの存在をウィンドウズ(登録商標)オペレーティングシステムの他の部分に報告し、必要に応じてドライバをシステムメモリに動的にロードおよびアンロードするために使用される。さらなるバスインタフェースドライバ構成要素216が図示されている。バスインタフェースドライバ構成要素216は完全に従来のものであり、一般にインタフェース回路16の供給元によって供給される。バスインタフェースドライバ構成要素216は、バス20のあらゆる周辺装置の存在をプラグアンドプレイドライバ214に報告する。
付加的なフィルタアプリケーション218もまた図示されている。以下で詳述するように、フィルタアプリケーション218はバスインタフェースドライバ構成要素216からのメッセージをインタセプトし、バス20で相互接続された装置に関する照会に応答することができる。
本発明の実施形態の例示的なソフトウェアは、グラフィックスライブラリ204、アプリケーションソフトウェア206(特に電力制御アプリケーション208)および/または、ドライバ構成要素210a、210b、212a、212b、214および216の一部を形成するとしてよい。
図4は、図2の装置10の一部のさらなる単純化したブロック図を示す。図示の通り、インタフェース回路16は、中央処理装置12およびシステムメモリ14を相互接続する。グラフィックスサブシステム30(インタフェース回路16上でグラフィックスプロセッサとして具体化)は、グラフィックスエンジン32、メモリコントローラ72、ディスプレイインタフェース74およびバスインタフェース78を含んでいる。
グラフィックスエンジン32は、2Dグラフィックスまたは3Dグラフィックス復号化ビデオなどのレンダリングが可能な機能ブロックである。十分に理解されるように、グラフィックスサブシステム30は複数のグラフィックスエンジンを含むことができる。
メモリコントローラ72は、グラフィックスサブシステム30がグラフィックスメモリおよびホストメモリ14へアクセスするのを可能にする。図示された実施形態において、グラフィックスサブシステム30によって使用されるグラフィックスメモリは、ホストメモリ14の一部を成す。しかし当業者は、グラフィックスサブシステム30がそれ自身のローカルメモリを含むか、またはそれと通信することができることを容易に認識するであろう。バスインタフェース78はサブシステム30がバス20によって通信するのを可能にする。
十分に理解されるように、ディスプレイインタフェース74は、ポート78によって相互接続されたディスプレイ装置26での表示のためにバッファ内のデータを変換するためのいずれかの適格なインタフェースであるとしてよい。例えば、ディスプレイインタフェース74は、ランダムアクセスメモリ・ディジタルアナログコンバータ(RAMDAC)の形態を取ることができる。1個以上のビデオコネクタが、LCDパネル、モニタ、テレビなどといった1個以上のディスプレイ装置とのグラフィックスサブシステム30の相互接続を可能にする。出力ポート78は、VGAポート、コンポジットビデオポート、DVIポート、LVDSポート、DVOポート、SDVOポートなどの形態を取ることができる。
グラフィックスサブシステム40(図2の周辺装置拡張カード46に形成)もまた、高速拡張バス20の拡張スロットによってインタフェース回路16に接続されている。グラフィックスサブシステム40は、グラフィックスエンジン42、メモリコントローラ52、バスインタフェース58およびディスプレイインタフェース54を含む。グラフィックスサブシステム40はグラフィックスメモリ50を含むか、またはそれと通信しているとしてよい。
グラフィックスエンジン42は、グラフィックスエンジン32と同様、2Dグラフィックスまたは3Dグラフィックス復号化ビデオなどのレンダリングが可能な機能ブロックである。十分に理解されるように、グラフィックスサブシステムは複数のグラフィックスエンジンを含むことができる。ことによると、グラフィックスエンジン42はグラフィックスエンジン32によって単純に提供されない機能を提供することができる。
メモリコントローラ52は、グラフィックスサブシステム40がメモリ50およびホストメモリ14にアクセスするのを可能にする。バスインタフェース58はグラフィックスサブシステム40がバス20によって通信するのを可能にする。
ディスプレイインタフェース54は、メモリコントローラ52によってグラフィックスメモリ50のフレームバッファをサンプリングしビデオコネクタで画像を呈示する。このようにして、メモリ50のフレームバッファにおける外部グラフィックスエンジン42によってレンダリングされた画像は表示され得る。ビデオコネクタは、外部ディスプレイと直接にか、またはビデオ信号が統合ディスプレイに経路指定される場合装置10のマザーボードと、または外部ディスプレイを装置10に取り付けるためのコネクタと接続され得る。やはり、ディスプレイインタフェース54は、RAMDAC、シングルエンドまたは差動送信器などといった、ディスプレイ装置32での表示のためにバッファ内のデータを変換するためのいずれかの適格なインタフェースであるとしてよい。
上述の通り、電力コントローラ60がグラフィックスサブシステム40と通信しており、ディスプレイインタフェース54、メモリコントローラ52、グラフィックスエンジン42、バスインタフェース58およびグラフィックスメモリ50のうちの1つ以上の各々またはいくつかの電力消費を、これらの構成要素の全部または一部のクロックおよび電圧スロットリング、電源切断または別様なディスエーブルといった従来の電力消費技法を用いて制御する。電力コントローラ60は、バス20の信号によって、または別様に制御することができ、そして例えばACPI規格に準拠であるとしてよい。
グラフィックスサブシステム30はグラフィックスサブシステム40とまったく同様に動作する。そうしたものとして、グラフィックスサブシステム30は、ホストメモリ14に、またはサブシステム30のローカルなメモリに保持されたフレームバッファにアクセスするためにメモリコントローラ72を使用する。このフレームバッファはディスプレイインタフェース74によってサンプリングされ、画像がビデオ出力コネクタに呈示され、それはディスプレイと直接接続されることができよう。経済的な統合型構成要素を提供する努力において、グラフィックスサブシステム30は限られた機能性を提供する。例えば、グラフィックスサブシステム30の解像度、メモリ、グラフィックスプロセッサ速度、3Dグラフィックス能力などは相対的に制限されているとしてよく、グラフィックスサブシステム40の外部グラフィックスプロセッサ42よりも低速に動作するとしてよい。
より高性能なコンピューティングおよびグラフィックスは、オプションのアドオングラフィックスサブシステム40によって提供され得る。グラフィックスサブシステム40の存在時に、グラフィックスサブシステム40は、(図示されていないモニタ、LCDディスプレイなど)といった第1のディスプレイ装置と直接物理的に接続されることができ、グラフィックスサブシステム30は、グラフィックスサブシステム30が第2の相互接続されたディスプレイ装置32を駆動させるために第2のディスプレイ装置と物理的に相互接続され得る。マイクロソフト・ウィンドウズ(登録商標)XPは、例えば、DualViewオプションを用いて、複数の物理的ディスプレイの同時使用をサポートする。複数のディスプレイを使用することによって、アプリケーションソフトウェア202およびオペレーティングシステムの他の部分は、グラフィックスをメモリ50のフレームバッファおよびメモリ14のフレームバッファに同時に呈示させることができる。一般に、複数のディスプレイが以下の3つの構成のうちの1つにおいて使用される。すなわち、第1の構成では、同一の画像が両方のフレームバッファに供給され得る。第2の構成では、第1のものとは異なる無関係な画像が異なるモニタにレンダリングされ、事実上エンドユーザにアプリケーションのための2つのデスクトップを与える。第3のモードでは、2つのフレームバッファが単一の拡張デスクトップとして扱われ得る。既存のオペレーティングシステムは、相互接続されたグラフィックスサブシステムの性質および能力に依存して選択的に各ディスプレイに画像をレンダリングすることができる。従って、例えば、3次元グラフィックスをレンダリングするアプリケーションは、相互接続されたディスプレイへの出力のために、そのような加速をサポートするサブシステムと相互接続されたディスプレイにハードウェア加速を用いてそれを行うことができる。
3次元グラフィックス、ゲームグラフィックスなどといった計算集約的なグラフィックスは、グラフィックスサブシステム40によってより効果的に実行される。従って、装置10内部のアドオングラフィックスサブシステム40の使用は、ゲーム、コンピュータ支援設計ソフトウェア、アニメーションソフトウェア、レンダリングソフトウェアなどといったグラフィックス集約的アプリケーションの最新のものをエンドユーザが経験することを可能にする。都合のよいことに、アドオングラフィックスサブシステム40は、エンドユーザによって選択され、必要に応じて、取り替えられ最新に保つことができる。従来、追加的なグラフィックス計算能力は、ワークステーションコンピューティング装置で利用可能であるにすぎなかった。モバイルコンピューティング装置の拡張スロットの登場により、そのような計算能力は今やラップトップといった可搬型コンピューティング装置の所有者にも利用可能である。当然、グラフィックスサブシステム40でのより高い(または異なる)性能のグラフィックスエンジン42の使用は、装置10の全電力消費を増大させる。この増大した電力消費は、バッテリ、燃料電池などの形態のDC電源38によって給電されるコンピューティング装置では支えきれないかもしれない。
同時に、グラフィックスエンジン42を伴うアドオングラフィックスサブシステム40の存在時に、グラフィックスサブシステム30は冗長であるかもしれない。例えば、複数の物理的ディスプレイが装置10に接続されていない場合、グラフィックスサブシステム30は役割を果たさないかもしれない。従って、グラフィックスサブシステム30はディスエーブルにされ得る。一方、グラフィックスサブシステム30の動作を制御する電力コントローラ70の存在時に、グラフィックスサブシステム30はまた、使用中でない時に低電力モードに位置づけられるかもしれない。やはり、電力コントローラ70は、グラフィックスサブシステム30の一部をディスエーブルにまたは切断するか、またはグラフィックスサブシステム30の一部をクロックまたは電圧スロットリングするかもしれない。
本発明の実施形態の例示的なソフトウェア200は、サブシステム30の存在時に、装置10が一方の高電力グラフィックスサブシステム40を選択的にディスエーブルにするのを可能にする働きをする。
このために、そして図4に図示の通り、コンピューティング装置10はスイッチ56をさらに含む。スイッチ56はサブシステム40およびサブシステム30によって生成されたビデオ信号を第1および第2の入力で受信する。スイッチ56は、マルチプレクサといったいずれかの適格なビデオスイッチであるとしてよく、その2つの信号入力の従来のビデオ信号の一方をそのビデオ出力コネクタに呈示するように動作可能である。スイッチ56の入力に呈示されるビデオ信号は、(LVDSまたはTMDSフォーマットなどといった)ディジタル信号または(VGAフォーマットといった)アナログ信号といった従来のビデオ信号であるとしてよい。スイッチ56がディジタルおよびアナログ入力信号の両方を受信するか、またはどちらか一方の出力でビデオを供給するように構成されている場合、スイッチ56はフォーマットコンバータを含み得る。さらに、スイッチ56は、ディジタルまたはアナログディスプレイ装置32のどちらか一方または両方の接続を可能にするために1個以上のビデオ出力を含み得る。
スイッチ56は制御入力(CNTRL)をさらに含む。この制御入力は、どちらの信号入力がスイッチ56のビデオ出力に供給されるかを制御する。図示された実施形態において、制御入力は、装置10の電力モードの変更が必要または望ましいことの検出または断定に応答して、汎用入出力(GPIO)インタフェース(図示せず)により、プロセッサ12によって切り替えられる。明らかになるように、スイッチ56は、装置10が低電力消費モードで動作している場合にグラフィックスサブシステム30によって生成された従来のビデオ信号が選定されるように構成されている。逆に言えば、装置10が高電力消費モードで動作している場合、高性能な外部グラフィックスサブシステム40によって生成されたビデオ信号が表示用に選定される。同様に、グラフィックスサブシステム40またはグラフィックスサブシステム30に供給される電力は低減またはディスエーブルにされ得る。スイッチングは、装置10が使用中の間、装置10に再始動(すなわちコールドまたはウォームスタート)するように要求することなく、動的に行われ得る。
これを達成するために、コンピューティング装置10はまた、上述した少なくとも1個の電力コントローラ60を含むとしてよい。図示された実施形態において、電力コントローラ60は、グラフィックスサブシステム40を保持する周辺装置拡張カード46の一部を形成する。しかし電力コントローラ60は、コンピューティング装置10のマザーボードの一部を、またはインタフェース16の一部としてまったく同様に形成することができよう。電力コントローラ60が拡張カード46の一部を形成する場合、それはサブシステム40の動作を制御するためにより大きな柔軟性を有するかもしれない。電力コントローラ60がコンピューティング装置10の一部を形成する場合、それはグラフィックスサブシステム40への電力をディスエーブルにする能力を有するだけかもしれない。
システムメモリ12内部のソフトウェア200は、スイッチ56および電力コントローラ60を構成し制御するために使用される。従って図5は、本発明の実施形態の例示的な2つの利用可能な電力消費モード間で装置10を切り替えるための例示的なソフトウェアブロックS500を例示するフローチャートである。
ブロックS500を詳述する前に、ドライバ210a、210b、212a、212b、214および216が従来は(装置10といった)関係するコンピューティング装置の動作をどのように制御するかということの簡単な説明は価値がある。一般に、装置10の電源投入後、オペレーティングシステムは、ドライバ210a、210b、212a、212b、214および216を含む、装置10の動作に必要なあらゆるドライバをロードする。2個のグラフィックスサブシステム30および40の存在時には、2個のディスプレイドライバ212aおよび212bならびにミニポート構成要素210a、210bがロードされる。構成要素/ドライバ210a、210b、212a、212bはさらに、どのディスプレイがグラフィックスサブシステム30および40と物理的に相互接続されているかを評価し、相互接続されたディスプレイを識別するメモリに記憶された適切な状態変数(例えばオペレーティングレジストリ項目)を設定する。これらの相互接続されたディスプレイは論理的にイネーブルにされ、後に構成要素/ドライバ210a、210b、212a、212bによって物理的にイネーブルにされ得る。アプリケーションソフトウェア202がその後、いずれかの相互接続され論理的にイネーブルにされたディスプレイの起動および、上述のように振る舞う複数のアダプタの使用を可能にする。当然、単一のディスプレイだけが2個のグラフィックスサブシステム30、40に接続されている場合、そのサブシステムだけが起動され得る。ゲーム、エンドユーザアプリケーションなどの形態のアプリケーションソフトウェア202は、オペレーティングシステムおよび構成要素/ドライバ210a、210b、212b、212aを通じて動作し、そして存在するそれらの装置を利用する。それに応じて、アプリケーションソフトウェア202は、現在利用可能な(またはイネーブルにされた)サブシステム30または40によって提供される資源を用いて画像をレンダリングすることができる。必要に応じて、アプリケーションソフトウェア202内部の特定のアプリケーションは、それらの動作に必要なイネーブルにされたハードウェアがない場合、動作をやめるかもしれない。
この時、本発明の実施形態の例示的な装置10の電力状態は、装置10が最初に電源投入された時に評価される。電力制御アプリケーション220は、必要に応じて、そして以下に詳述するように、サブシステム30および40ならびにスイッチ56を構成する。
本発明の実施形態の例示的なソフトウェアブロックS500は、ホストメモリ14内部の電力制御アプリケーション220の制御下でプロセッサ12によって実行され得る。ブロックS500は、装置10が状態/モード変更を被るたびに実行されるとしてよく、そのためにグラフィックスサブシステム30および40は相応に構成されなければならない。図示の通り、ブロックS502で、電力制御アプリケーション220は装置10が高電力消費モードまたは低電力消費モードになければならないかを決定する。
装置10の望ましい電力消費モードおよび電力消費モード間の移行は、多数の要因に依存して電力制御アプリケーション220によって制御され得る。
詳細には、例えば、電力制御アプリケーション220は、装置10における合計使用可能電力に依存し得る任意の数の感知または断定された電力消費状態または使用可能な資源、および装置10の動作環境に応答して、装置10の望ましい電力消費モード(すなわち低または高電力消費モード)を制御することができる。
例えば、装置10の望ましい低電力消費モードは、電力制御アプリケーション220が装置10の使用可能電力の低減を直接的または間接的に検出した場合に位置づけられるとしてよい。使用可能電力の低減は、例えば、DC電源38の貯蔵エネルギー(例えばmAh)レベルまたは瞬時的な使用可能電力がしきい値未満に低下した場合、AC電源36がプラグを抜かれた場合、または装置10がラップトップでありドッキングステーションから取り外された場合に、検出され得る。
一方、装置10のグラフィックスサブシステム30、40は、既存の電力/エネルギーがサブシステム30、40および装置10の他の周辺装置または構成要素の間で配分されるのを可能にするために低電力消費モードに移行されるかもしれない。低電力モードへのグラフィックスサブシステム30、40の移行は、例えば、USB装置といった周辺装置がバッテリ動作装置に取り付けられた場合、DC電力動作装置10の相互接続されたディスプレイの輝度レベルがしきい値を超えて増大した場合、PS/2キーボード/マウスがバッテリ動作装置10に取り付けられた場合、外部装置照明が点灯した場合、無線/有線ネットワークインタフェースがアクティブになった場合、別の付属装置(例えばプリンタ、光ドライブ、スキャナその他)がバッテリ動作装置10で動作中になった場合に、電力制御アプリケーション220によって行われ得る。同様に、無線インタフェースの帯域幅使用量がしきい値を超えて上昇した場合、より少ない電力をサブシステム30、40に割り当てることが適切かもしれない。やはり、電力制御アプリケーション220は、低電力消費モードに切り替えることを決定するために相互接続された周辺装置の存在/動作状態の変化を監視することができる。
同様に、装置10の望ましい低電力モードは電力制御アプリケーション220によって代替的または付加的に推測することができる。そのような推測は、例えば、規定の期間の相当の不作動が観察された場合、装置10の筐体が開位置から物理的に閉じられた場合、装置10がそのユーザによって‘休止状態モード’、‘スタンバイ’または類似のモードに位置づけられた場合、または外部モニタがその省電力モードに入った場合に、引き出され得る。
同様に、装置10の望ましい低電力モードは、高電力消費グラフィックスサブシステム40の処理能力がもはや要求されなくなった場合に推測することができる。例えば、高電力消費サブシステム40は、3Dゲームといったグラフィックス集約的アプリケーションが終了した(すなわち閉じられた)場合、または潜在的に高需要のアプリケーションがよりグラフィックス集約的なウインドウからそうでないものに切り替わった場合、全部のアプリケーションが閉じられた(そして背景画像が単純でグラフィックス集約的でない)場合に、もはや要求されないとしてよい。同様に、外部モニタが取り外された場合、ネットワークインタフェースの帯域幅使用量がしきい値未満に低下した場合、オペレーティングシステムがDOSモード(例えばDOSモードでのウィンドウズ(登録商標)98)にある場合、高電力サブシステム40は要求されないと仮定することができる。
電力制御アプリケーション220が望ましい低電力モードを推測するために使用し得る他の例示的事象は、グラフィックス処理を使用していない間にシステム資源を恐らく占有するソフトウェアアプリケーションの起動を含む。例示ソフトウェアアプリケーションは、いかなるユーザインタフェースも伴わない、またはプロセッサ資源の大部分を消費する文字ベースのユーザインタフェース(DOS様の)によるアプリケーション、主ハードドライブスキャンを開始するアプリケーション、システムバックアップを実行するアプリケーションなどを含み得る。同様に、グラフィックス集約的ではないコンソールアプリケーション(非コンソールアプリケーションはVista、MacOSにおけるように姿を消しつつある)が実行している、またはエンドユーザまたは他のアプリケーションソフトウェアによって開始される、DOSのような文字ベースのシェルまたはUnix(登録商標)シェルへの切り替えは、グラフィックス資源が必要ではないことの、そして低電力消費モードへの切り替えが適切であるとしてよい指標になり得る。やはり、関連アプリケーションの起動は電力制御アプリケーション220によって監視されるとしてよく、それは装置10をその低電力状態へ移行させ得る。
電力制御アプリケーション220はまた、1人(または全部の)ユーザがログアウトした時に、または相互接続されたモニタの画面解像度が規定のしきい値未満に減少した場合、望ましい低電力消費モードを推測し、装置10を低電力消費モードに移行させ得る。
一方、ユーザが明示的または暗黙的に高電力サブシステム40の使用を中止し、電力制御アプリケーション220に対しサブシステム30を要求する状態へ装置10を移行させるようにすることができる。これはやはり、サブシステム30が故障した場合、OSによって検出されない場合、または必要なドライバがアンインストールまたは更新された場合に、電力制御アプリケーション220によって行われ得る。やはり、サブシステム30および/またはそのドライバの存在は電力制御アプリケーション220によって検出され得る。
さらに、電力制御アプリケーション220はまた、装置10がその低電力消費モードに移行されなければならないか否かを決定するために、装置10の全体の動作状態を感知するとしてよい。例えば装置10は、装置10(またはグラフィックスサブシステム40の構成要素といったその一部)の温度が既定のしきい値温度を超えて上昇したということの感知に応答して、その低電力消費モードに移行され得る。
装置10の電力制御アプリケーション220がサブシステム30、40を高電力状態に移行させる条件は同様に、例えばバッテリエネルギーレベルまたは使用可能瞬時電力が充電中にしきい値を超えて上昇した場合、または装置10がAC電源コンセントに接続された場合の、使用可能電力の全体的増加を含み得る。
同様に、装置10の電力制御アプリケーション220は、サブシステム30、40以外の装置10の各部分によってより少ない電力が消費される場合に、サブシステム30、40を高電力消費モードに移行させるかもしれない。例えば、電力制御アプリケーション220は、外部照明または背面照光がバッテリ動作コンピューティング装置においてオフにされた場合、USB装置がバッテリ動作コンピューティング装置から取り外された場合、PS/2キーボード/マウス、外部メディアドライブ、プリンタ、スキャナなどといった別の周辺装置(CD/DVD/その他)がバッテリ動作装置から取り外された場合、周辺装置(スキャナ、プリンタその他)が動作を停止した場合、無線/有線モデム/ネットワークインタフェースといった周辺装置がバッテリ動作装置において不作動状態にされた場合、または、ネットワークカード帯域幅使用量がバッテリ動作装置においてしきい値未満に低下した場合に、高電力モードへの切り替えを生じるとしてよい。
一方、より強力なグラフィックスサブシステムの必要性は電力制御アプリケーション220によって直接または間接的に検出され得る。これは例えば、単にユーザがスタートアップ画面からログインしたことを検出した電力制御アプリケーション220によって;3Dゲームといった高需要のソフトウェアアプリケーションが起動されたことを検出したことによって;アプリケーションがよりグラフィックス集約的なウインドウに切り替えられたことを検出したことによって;ビデオアプリケーションにより使用される帯域幅(例えば復号化ビデオストリームのbps)がしきい値を超えて増加したことを検出したことによって;例えばグラフィックス集約的な背景画像を呈示するアプリケーションまたは他のアプリケーションを閉じた結果として全部のグラフィックス画像が呈示されていることを検出したことによって;最大化された文字ベースの(例えばDOS)アプリケーションが最小化または終了され、それによって他のアプリケーションのウインドウを呈示させたことを検出したことによって;DOS/Unix(登録商標)のような文字ベースのターミナルからウィンドウズ(登録商標)/XPウィンドウズ(登録商標)のようなグラフィックOSターミナルへの切り替えが生じた開始されたことを検出したことによって;コンソールグラフィックスアプリケーションの優先順位が増大した(Linux、UNIX(登録商標)における‘ナイス(nice)’コマンド)場合;外部モニタが取り付けられた(または付属の外部モニタが電源投入された)場合;または相互接続されたモニタ画面の解像度が規定のしきい値を超えて増大した場合に、起こり得る。
より強力なグラフィックスサブシステム40に対する要求はまた、システム40を具体化している拡張カードがホットスワップされた場合(すなわち挿入された場合);DC動作装置がスリープモードから起動した場合;装置10のケースが閉位置から物理的に開けられたか、または別様にアクティブにされた場合に、電力制御アプリケーション220によって直接または間接的に検出され得る。やはり、望ましい高電力モードが電力制御アプリケーション220に対し装置10をサブシステム40が使用中/アクティブである高電力モードに切り替えさせるようにするとしてよい。
同様に、装置10とのユーザ始動会話が電力制御アプリケーション220を低電力状態から高電力消費モードへ移行させ得る。例えば、ユーザは、電力制御アプリケーション220のグラフィカルユーザインタフェースと会話することによって、高電力サブシステム40を使用するように明示的に決定することができる。
一方、ユーザは低電力サブシステム30の使用を中止し、電力制御アプリケーション220にサブシステム40を要求する状態へ装置10を移行させるようにすることができる。これは例えば、ユーザがサブシステム30用のデバイスドライバをアップグレードした時に起こり得る。同様に、例えば故障または誤りのために、または関連するドライバが削除されたために、サブシステム30が検出されない場合、電力制御アプリケーション220は装置10をその高電力消費状態に位置づけるかもしれない。
当然、高電力消費状態への切り替えは、強力なグラフィックスサブシステム40への十分な電力が装置10に実際に使用可能である場合に行われる必要があるにすぎない。
十分に理解されるように、ユーザ制御可能パラメータおよび選好は、モード間の移行およびサブシステム30、40の使用を決定するとしてよい。そのような選好は、上記の移行条件において電力制御アプリケーション220が低電力および高電力消費モード間で移行しなければならないかばかりでなく、関係するパラメータ(使用可能DC電力/エネルギーのしきい値レベル、ネットワークアダプタ帯域幅使用量しきい値、ビデオストリーム帯域幅しきい値、モニタ解像度しきい値、アイドル時間、温度その他)を含むとしてよい。そのような選好およびパラメータは、電力制御アプリケーション220とのグラフィカルユーザインタフェース(図示せず)によって調整することができる。
装置10がその高電力消費モードを再開(またはそれに移行)するべき場合、ブロックS504〜S510が実行される。ブロックS504で、サブシステム40は、それがまだそのモードになければ、その全動作(高電力消費)モードに位置づけられる。これは、例えばミニポートドライバ構成要素210bの制御下に、プロセッサ12によって電力コントローラ60に適切な信号を供給することによって実行され得る。次に、サブシステム40およびいずれかの取り付けられたディスプレイがブロックS506およびS508で論理的にイネーブルにされる。これは、プラグアンドプレイドライバ214にAPI呼出しを行い、それがサブシステム40の存在を検出するのを可能にしてから、新しくイネーブルにされた装置(複数も)を列挙して割り当てられた名前(複数も)を取得することによって実行され得る。いったん名前がわかると、オペレーティングシステムがサブシステム40および相互接続されたディスプレイを新しくイネーブルにするために使用され得る。「論理的に」イネーブルおよびディスエーブルにするというのは、グラフィックスをレンダリングする、またはしないために関係するグラフィックスサブシステムおよび装置を使用するようにオペレーティングシステムを設定することを指すことに留意されたい。ウィンドウズ(登録商標)XP環境において、ディスプレイは、サブシステム30および40のディスプレイがアクティブな状態で、拡張デスクトップをイネーブルにすることによってイネーブルにすることができる。
サブシステム30および/またはそれに取り付けられたいずれかのディスプレイは、ブロックS510で論理的にディスエーブルにされ得る。最後に、適切なAPI呼出しが行われて、グラフィックスサブシステム40の論理的表示を行い、主(または単独)ディスプレイがオペレーティングシステムによって認識される。
ブロックS506およびS510は、適格なオペレーティングシステムAPI呼出しによって、または別様に状態情報を記憶する適格なメモリを設定することによって、実行することができる。さらに、スイッチ56はステップS508において、グラフィックスサブシステム40からの出力が相互接続されたディスプレイ26に供給されるように切り替えられる。具体的には、ウィンドウズ(登録商標)XP環境において、どちらの論理的ディスプレイが相互接続されているかは既知のEnumDisplayDevices()呼出しを用いて評価され得る。その後、1個のグラフィックスサブシステムから別のものに切り替えるために、グラフィックスサブシステム(30または40)は、2個のディスプレイ(および従ってグラフィックスサブシステム)を、その後で単一のディスプレイだけを、ChangeDisplaySettingsEX()API呼出しを用いて、論理的にイネーブルにすることによって論理的にイネーブルにされ得る。
これは、両方のグラフィックスサブシステムおよび従ってディスエーブルにされていたものを論理的にイネーブルにすることになる。設定するべきモードは拡張デスクトップモードである。グラフィックスサブシステム30はその後、同様にして論理的にディスエーブルにされ得る。随意選択で、ドライバ210bはグラフィックスサブシステム30の状態についてのあらゆる照会をトラップすることができ、それによりオペレーティングシステムの他の部分はグラフィックスサブシステム30をディスエーブルまたは欠如として認識する。
装置10がその低電力消費モードに移行またはそれを再開した時に、ブロックS512〜S518が実行される。大まかに言って、グラフィックスサブシステム40はディスエーブルにされその低電力消費モードに位置づけられる一方、グラフィックスサブシステム30はイネーブルにされる。そのために、グラフィックスサブシステム30はブロックS512およびS514でイネーブルにされる。やはりこれは、グラフィックスサブシステム30をその関係するドライバ210aによって論理的にイネーブルにし、ブロックS512において適切なAPI呼出しを行い(ブロックS506に関して上に述べた通り)、ステップS510でサブシステム30がディスエーブルにされたのと同様にしてブロックS514でサブシステム40を論理的にディスエーブルにすることによって実行され得る。ブロックS512およびS514はやはり、上述のEnumDisplayDevices()およびChangeDisplaySettingsEX()呼出しといった適切なオペレーティングシステムAPI呼出しによって、またはハードウェアとの直接的な通信によって実行され得る。
ディスプレイが論理的にディスエーブルにされた後、ドライバ212へのAPI呼出しが使用されてブロックS518でグラフィックスサブシステムをその低電力モードに物理的に位置づけるとしてよい。そのように、プロセッサ12はグラフィックスサブシステム40をその低電力状態に位置づける適格な信号を電力コントローラ60に供給する。その最も単純な形態において、電力コントローラ60は、グラフィックスサブシステム40またはグラフィックスサブシステム40の構成要素への電力を切断する。一方、電力制御アプリケーション220は電力コントローラ60に命令してグラフィックスサブシステム40をACPI仕様によって規定された装置電力状態のうちの1つといった低電力スリープモードに位置づけることができる。いずれにしても、この低電力消費モードにおいて、電圧は抑えられ、かつ/またはアダプタ40の全部または一部は電源切断され、かつ/またはアダプタ40によって使用される選択クロックは減速される。
いったんグラフィックスサブシステム30がイネーブルにされると、ドライバ/構成要素210aおよび212aを通じたアプリケーション202の他のものは、グラフィックスサブシステム30によってグラフィックスをレンダリングし続ける。
さらに、図示された実施形態において、ブロックS518におけるグラフィックスサブシステム40の電源切断により、インタフェースドライバ216(図3)は、照会に応答してかまたは別様に、バス20でのグラフィックスサブシステム40の欠如をプラグアンドプレイドライバ214に信号で知らせるようにさせられ得る。応じてプラグアンドプレイドライバ214は、ドライバおよび構成要素212、210にさらなる修正を要さずに、バスインタフェース16とグラフィックスサブシステム40との間のバスリンクに割り当てられた資源を解放するであろう。もしこれが生じたら、グラフィックスサブシステム40への再給電により、インタフェース16は、プラグアンドプレイドライバ214およびバスドライバ構成要素216の制御下に、バス20によるリンクを新しくネゴシエートするようにさせられるであろう。それに応じて、メモリアドレス空間、割り込みなどといった資源は再割当てされる。
従って、不要なリンクネゴシエーションを回避するために、ソフトウェアフィルタアプリケーション218が、図6のステップS600に図示の通り、バスインタフェースドライバ216によって生成されたプラグアンドプレイドライバ214に向けられたあらゆるメッセージを処理する。グラフィックスサブシステム40がもはやアクティブではないことをプラグアンドプレイアダプタに通知するグラフィックスサブシステム40の低電力モードまたはその欠如を識別するあらゆるメッセージは、ブロックS602でインタセプトされる。そのような各メッセージは、ステップS604で生成されるグラフィックスサブシステム40が実際上アクティブであることを指示するメッセージと取り替えられる。このようにして、プラグアンドプレイドライバ214およびバスドライバ216は、グラフィックスサブシステム40の低(または無)電力状態に気づかされることはなく、従って、バス20によってグラフィックスサブシステム40をインタフェース16に接続するリンクと関係する資源を解放しない。
有利には、スイッチ56ならびにグラフィックスサブシステム40およびグラフィックスサブシステム30を上述の通り構成することにより、電力消費を低減し、装置10に2個のグラフィックスプロセッサのうちの一方だけに必要な電力を消費するようにさせ、それによって全体のエネルギー消費を低減しバッテリ寿命を温存する。例えば、可搬型コンピューティング装置は一般にビジネス旅行者によってバッテリ動作モード(DC電力)で使用される。旅行中のそのようなユーザの典型的な使用パターンは、文書処理、プレゼンテーションおよび電子メールアプリケーションを含むであろう。これらのアプリケーションは、外部グラフィックスサブシステム40によって提供される高負荷のグラフィックス加速を要求しない。第2の(例えば外部)グラフィックスサブシステム40の使用から、低い平均電力消費を有する第1の(例えば統合)グラフィックスサブシステム30の使用へ移行することにより、全体のシステム性能を犠牲にすることなく、高性能グラフィックス処理と低電力消費との間でバランスを取るうえで助けとなる。
図7は、本発明の別の実施形態の例示的なコンピューティング装置10’の一部の例示的な単純化したブロック図である。コンピューティング装置10’はコンピューティング装置10とほぼ類似である。従って、装置10の構成要素と機能的に等価な装置10’の構成要素はプライム記号(’)を付記しており、詳細には説明しない。しかし簡単に言えば、装置10’は2個のグラフィックスサブシステム30’および40’を含む。やはり、グラフィックスサブシステム30’は、グラフィックスエンジン32’、メモリコントローラ72’、ディスプレイインタフェース74’およびバスインタフェース78’を含む。第2のグラフィックスサブシステム40’は高速バス20’によってグラフィックスサブシステム30’と通信している。グラフィックスサブシステム40’は、それ自身のグラフィックスエンジン42’、メモリコントローラ52’、ディスプレイインタフェース54’を含む。グラフィックスサブシステム40’はさらにグラフィックスメモリ50’と通信している。特に言えば、装置10’は、グラフィックスサブシステム30’およびグラフィックスサブシステム40’のどちらがディスプレイ26’と相互接続されるかを制御するために使用されるスイッチを含まない。代わりに、そして明白になるように、サブシステム40’はグラフィックスをバス20’によってメモリ14’に供給するように適応されている。
装置10’の動作を制御するソフトウェアの編成は装置10のそれと類似である。しかし、装置10’が高および低電力消費状態間で移行する際に装置10’の動作を制御するソフトウェアの一部は、装置10のそれらと異なる。
具体的には、図8は、装置10’のシステムメモリ内部のソフトウェア制御下でプロセッサ12’によって実行され得る本発明の実施形態の例示的なソフトウェアブロックS800を図示している。やはり、ブロックS800は装置10’が状態変化を受けるごとに実行され、それらについてサブシステム30’および40’は相応に構成されなければならない。図示の通り、ブロックS802において、ソフトウェアは装置10’がその高電力消費モードか、またはその低電力消費モードを取っているのかを決定しなければならない。
装置10’がその高電力消費モードを再開(または移行)した場合、ブロックS804〜S810が実行される。ブロックS804において、グラフィックスサブシステム40’は、それがまだそのモードでなければ、その全動作(高電力消費)モードに位置づけられる。これは、グラフィックスサブシステム40’を制御するドライバを介して電力コントローラ60’に適格な信号を供給することによって実行することができる。次に、グラフィックスサブシステム40’がブロックS806およびS808でイネーブルにされる。やはりこれは、グラフィックスサブシステム30’と関係する相互接続されたいずれかのディスプレイをブロックS804で論理的にディスエーブルにし、グラフィックスサブシステム40’と接続されたディスプレイをブロックS808で論理的にイネーブルにすることによって実行することができる。ブロックS806およびS808はやはり、上述のEnumDisplayDevices()およびChangeDisplaySettingsEX()呼出しといった適切なオペレーティングシステムAPI呼出しによってか、またはハードウェアとの直接的な通信によって実行することができる。
特に言えば、いずれの物理的ディスプレイもグラフィックスサブシステム40’に接続されていない。(装置10(図4)の)スイッチ56がない場合、グラフィックスサブシステム40’の動作を制御するドライバソフトウェアは、ステップS810において関係するメモリ50’内部の代わりにグラフィックスサブシステム30’のバッファ14’に画像を供給するように構成される。都合のよいことに、高速バス20(例えば、PCIeバスとして具体化された)の存在時、そのような供給は、ある程度バスによってイネーブルにされる転送速度のおかげでバス20によって可能である。
同様に、グラフィックスサブシステム30’のためのドライバはさらに、相互接続されたディスプレイ26’のメモリ14’のフレームバッファにグラフィックスサブシステム40’によって供給された画像を呈示するために、グラフィックスサブシステム30’のディスプレイインタフェース74’にメモリ14’のフレームバッファをサンプリングさせるように構成されている。同時に、グラフィックスサブシステム30’のドライバは、グラフィックスサブシステム30’のグラフィックスエンジン32’に対し実質的に活動停止状態またはアイドル状態のままであるように指示することができる。この動作モードは、図9Aに図式的に図示されており、グラフィックスサブシステム40’およびグラフィックスサブシステム30’のアクティブブロックだけが網掛けされている。
明白になるように、図9Aの実施形態において、メモリ50’およびディスプレイインタフェース54’は使用されていない。そうしたものとして、これらの機能ブロックはサブシステム40’から削除することができ、コスト低減を可能にする。そのようなグラフィックスサブシステムを創成することは、サブシステム40’がサブシステム30’によって提供される機能性を補完するように創成され得るので、有益かもしれない。例えば、サブシステムは、3Dグラフィックスまたはビデオ復号化能力を提供するグラフィックスエンジン42’を提供することができよう。グラフィックスエンジン32’はこれらの能力を含まなくてもよい。同時に、グラフィックスエンジン32’によって提供される2Dグラフィックス能力は、サブシステム40’に包含される必要はない。転じて消費者は、付加的な機能性が必要な場合にのみグラフィックスサブシステム30’を追加することができよう。
装置10’がその低電力消費モードに移行またはそれを再開した場合、ブロックS812〜S818が実行される。大まかに言って、グラフィックスサブシステム40’は、部分的にまたは完全にディスエーブルにされてその低電力消費モードに位置づけられ、レンダリングはやはりグラフィックスサブシステム30’によって実行される。そうするために、グラフィックスサブシステム30’と関係する相互接続されたあらゆるディスプレイは、ブロックS812でイネーブルにされ、グラフィックスサブシステム40’と物理的に接続されたあらゆるディスプレイはブロックS814で論理的にディスエーブルにされる。次に、グラフィックスサブシステム30’の動作を制御するドライバソフトウェアはやはり、グラフィックスサブシステム30’に画像をメモリ14’に供給させるように構成される。ディスプレイインタフェース74’は、ポート78’と相互接続されたディスプレイ26’で画像を呈示するためにメモリ14’をサンプリングし続ける。同様に、プロセッサ12’は最初に、ブロックS818で電力コントローラ60’に適格な信号を供給し、グラフィックスサブシステム40’をその低電力状態に位置づける。その最も単純な形態において、電力コントローラ60’はグラフィックスサブシステム40’への電力を遮断するか、またはグラフィックスサブシステム40’を低電力スリープモードに位置づける。やはり、この低電力消費モードにおいて、電圧は抑えられ、かつ/またはグラフィックスサブシステム40’全部または一部は電源切断され、かつ/またはグラフィックスサブシステム40’によって使用される選択されたクロックが減速される。具体的には、グラフィックスサブシステムのグラフィックスエンジン42’は、アイドル状態のままであるか、またはほとんどアイドル状態のままである(例えばそれは減速されるか、ディスエーブルにされるか、または電源切断される)。この動作モードは、図9Bに図式的に図示されており、アダプタ40’およびグラフィックスサブシステム30’のアクティブな機能ブロックだけが網掛けされている。非作動状態/アイドル状態の機能ブロックは、完全にディスエーブルにされるかまたは、低減した電圧またはクロック速度で動作する。
随意選択で、グラフィックスサブシステム30’の一部は、グラフィックスエンジン32’が使用されていない時にディスエーブルにすることができよう。これは、グラフィックスサブシステム40’が画像のレンダリングに責任を有する任意の時に、グラフィックスエンジン32’および他の構成要素を、GPIOまたは類似の回路によってディスエーブルにされ得る1つ以上のボルテージアイランド(voltage island)にさせることによって容易に行うことができよう。
他の変更例もまた明白なはずである。例えば、図9Aに図示された高電力モードにおいて、両方のグラフィックスサブシステム30’およびグラフィックスサブシステム40’は、メモリ14’またはメモリ50’に供給することができよう。このようにして、2個のグラフィックスサブシステム30’および40’は、各々がメモリ14’の交番フレームに供給するか、またはメモリ14’の各フレームの交番部分(例えばスキャンライン)に供給して、協調して動作することができる。
また他の実施形態において、付加的なディスプレイをグラフィックスサブシステム30’および40’に接続して高電力消費モードでの複数のディスプレイの同時使用を可能にすることができる。このようにして、ディスプレイインタフェース54は第2のディスプレイを駆動するために使用することができよう。低電力消費モードへの移行時に、装置10’は図9Bに図示された通り動作するように構成できよう。
同様に、装置10’(または10)はバス20’(または20)に接続された複数の付加的なグラフィックスサブシステムを含むことができ、それらの全部が高電力消費モードでアクティブであることができ、グラフィックスサブシステム30’のディスプレイインタフェース74’によってグラフィックスをレンダリングすることができよう。低電力消費モードへの移行時に、これらはディスエーブルにすることができ、レンダリングはグラフィックスサブシステム30’のグラフィックスエンジン32’に任せられ得る。
図10に図示されたまた別の実施形態において、コンピューティング装置10’は直接メモリアクセス(DMA)コントローラ90を含むとしてよい。DMAコントローラ90はデータをメモリ50’からメモリ14’に転送することができる。このようにして、装置10’の高電力消費モードにおいて、グラフィックスサブシステム40’は画像をメモリ50’に供給することができよう。これらの供給された画像はその後、DMAコントローラ90によってメモリ14’のフレームバッファに転送され得る。DMAコントローラ90’は、(例えばグラフィックスエンジン32’または42’のDMAエンジンとして)グラフィックスサブシステム30’または40’の一部を形成するか、またはコンピューティング装置10’において別様に配置され得る。データはメモリ50’からメモリ14’へバス20’によってか、または別様に直接転送され得る。ディスプレイインタフェース74’は、供給された画像をディスプレイ26’で呈示するためにメモリ14’のフレームバッファをサンプリングして上述の通り動作し続ける。やはり、その高電力消費モードにある図10の装置10’のアクティブブロックは図10において網掛けして図示されている。
さらなる実施形態において、プラグアンドプレイドライバ214(図3)は、アダプタ40をその低(またはオフ)電力消費モードに位置づける直接的な結果として、グラフィックスサブシステム40(または40’)からグラフィックスサブシステム30(または30’)への移行を管理することができよう。同様に、プラグアンドプレイドライバ214は、ドライバ構成要素または付加的な構成要素214への修正を要することなく、アダプタ40の再電源投入を処理することができよう。
当然ながら、上述の実施形態は決して限定としてではなく例証としてのみ意図されている。本発明を実施する上述の実施形態は、形態、部品の構成配置、動作の詳細および順序の多くの修正を受けることができる。むしろ、本発明はそのような全部の修正を、請求項によって規定されるところのその範囲内に包含するように意図されている。
本発明の実施形態の例示的なコンピューティング装置の単純化した略ブロック図である。 本発明の実施形態の例示的なコンピューティング装置の単純化した略ブロック図である。 図2のコンピューティング装置における例示的なソフトウェアの単純化した機能ブロック図である。 図2のコンピューティング装置の部分のさらなる単純化した略ブロック図である。 本発明の実施形態の例示的な図2の装置におけるソフトウェアによって実行されるステップを詳述するフローチャートである。 本発明の実施形態の例示的な図2の装置におけるソフトウェアによって実行されるステップを詳述するフローチャートである。 本発明のさらなる実施形態の例示的なコンピューティング装置の部分のさらなる単純化した部分略ブロック図である。 本発明の実施形態の例示的な図6の装置におけるソフトウェアによって実行されるステップを詳述するフローチャートである。 図7の装置の動作を例示する単純化したブロック図である。 図7の装置の動作を例示する単純化したブロック図である。 本発明のさらなる実施形態の例示的なコンピューティング装置の部分のさらなる単純化した部分略ブロック図である。

Claims (27)

  1. 電子装置であって、
    フレームバッファと、
    グラフィックスをレンダリングするために動作可能な第1のグラフィックスサブシステムと、
    グラフィックスをレンダリングするために動作可能な第2のグラフィックスサブシステムと
    プロセッサと、
    を備え、
    前記第1のグラフィックスサブシステムは、前記フレームバッファのグラフィックスをディスプレイに呈示するディスプレイインタフェースを備えており、前記ディスプレイは、前記ディスプレイインターフェースと相互接続されており、
    前記プロセッサは、プロセッサ実行可能命令を実行することによって、前記電子装置を第1のモードから第2のモードに移行させ、
    前記第1のモードにおいて、前記第2のグラフィックスサブシステムは、前記フレームバッファに前記グラフィックスを供給し、
    前記第2のモードにおいて、前記第1のグラフィックスサブシステムは、前記フレームバッファに前記グラフィックスを供給し、そして前記第2のグラフィックスサブシステムは、前記電子装置を再始動させることなく低電力消費モードに位置づけられることを特徴とする電子装置。
  2. 前記電子装置は、前記プロセッサと通信している拡張バスを付与するバスインタフェースをさらに備えており、前記第1のグラフィックスサブシステムは前記バスインタフェースと統合されている請求項1の電子装置。
  3. 前記第2のグラフィックスサブシステムはドッキングステーションに形成されている請求項1の電子装置。
  4. 前記第1のグラフィックスサブシステムと、前記第2のグラフィックスサブシステムと、前記プロセッサとはマザーボード上に含まれている請求項1の電子装置。
  5. 前記電子装置は、前記拡張バスと相互接続された周辺装置拡張カードをさらに備えており、前記第2のグラフィックスサブシステムは前記周辺装置拡張カードに形成されている請求項2の電子装置。
  6. 前記電子装置は、更に、スイッチを備え、
    前記スイッチは、
    前記第1のグラフィックスサブシステムのビデオ出力と相互接続された第1の信号入力と、
    前記第2のグラフィックスサブシステムのビデオ出力と相互接続された第2の信号入力と、
    前記第1の信号入力および前記第2の信号入力の一方における信号を前記ディスプレイに供給する出力と、
    前記第1の信号入力および前記第2の信号入力のどちらが前記第1及び第2のグラフィックスサブシステムに相互接続された前記ディスプレイに供給されるかを選定するために前記プロセッサと通信している制御入力と、
    を備える請求項1の電子装置。
  7. 前記スイッチはマルチプレクサよりなる請求項6の電子装置。
  8. 前記電子装置は、更に、前記第2のグラフィックスサブシステムを前記低電力消費モードで動作させるために前記第2のグラフィックスサブシステムと相互接続された電力コントローラを備える請求項1の電子装置。
  9. 前記電子装置は、更に、前記第1のグラフィックスサブシステムを前記第1のモードにおいて低電力消費モードで動作させるために前記第1のグラフィックスサブシステムと相互接続された電力コントローラを備える請求項1の電子装置。
  10. 前記拡張バスはPCI Expressバスよりなる請求項2の電子装置。
  11. 前記電力コントローラは前記第2のモードにおいて前記第2のグラフィックスサブシステムの少なくとも一部への電力を遮断する請求項8の電子装置。
  12. 前記電力コントローラは前記第2のモードにおいて前記第2のグラフィックスサブシステムのメモリクロックおよびピクセルクロックのうちの少なくとも一方を低減する請求項8の電子装置。
  13. 前記電力コントローラは前記第2のモードにおいて前記第2のグラフィックスサブシステムの少なくとも一部に供給される電圧を低減する請求項8の電子装置。
  14. 前記コンピュータ実行可能命令はユーザ選択に応答して前記電子装置を前記第2のモードに位置づける請求項1の電子装置。
  15. 前記プロセッサ実行可能命令は低減した電力状態の感知に応答して前記電子装置を前記第2のモードに位置づける請求項1の電子装置。
  16. 前記電子装置は、更に、DC電源を備える請求項15の電子装置。
  17. 前記電子装置は、更に、AC電源に接続可能な電源を備えており、前記低減した電力状態は、前記コンピューティング装置が前記AC電源に接続可能な前記電源によってもはや給電されていないことを感知することを含む請求項16の電子装置。
  18. 前記低減した電力状態は前記DC電源の低電力状態を感知することを含む請求項16の電子装置。
  19. 前記電子装置は、更に、
    前記第2のグラフィックスサブシステムに対応するローカルメモリと、
    前記ローカルメモリとフレームバッファとの間でデータを転送する直接メモリアクセスコントローラと、
    を備えており、
    前記第1のグラフィックスサブシステムは、前記フレームバッファの画像を前記ディスプレイに呈示するディスプレイインタフェースを備えており、
    前記第2のグラフィックスサブシステムは、グラフィックスデータを前記ローカルメモリに供給し、そして前記直接メモリアクセスコントローラは前記第1のモードにおいて前記グラフィックスデータを前記フレームバッファに転送する請求項1の電子装置。
  20. 前記第1のグラフィックスサブシステムおよび前記第2のグラフィックスサブシステムは、それぞれ、第1および第2のグラフィックスエンジンを備えており、前記第2のグラフィックスエンジンは前記第2のモードにおいて低電力状態に位置づけられる請求項1の電子装置。
  21. フレームバッファと第1および第2のグラフィックスサブシステムを有するコンピューティング装置を動作させる方法であって、前記第1のグラフィックスサブシステムは、前記フレームバッファのグラフィックスをディスプレイに呈示するディスプレイインタフェースを備えており、前記ディスプレイは、前記第1のグラフィックスサブシステムと相互接続されており、
    前記方法は、
    高電力消費モードにおいて、前記第2のグラフィックスサブシステムを用いてグラフィックスを前記フレームバッファに供給することと、
    ソフトウェアを実行することと、
    を含み、
    前記ソフトウェアは、
    前記コンピューティング装置の所望の低電力消費モードを検出し、
    前記所望の低電力消費モードの検出に応答して、前記コンピューティング装置を再始動させることなく前記第2のグラフィックスサブシステムを低電力消費モードに位置づけ、
    前記第2のグラフィックスサブシステムが前記低電力消費モードにある間グラフィックスを前記フレームバッファに供給前記第1のグラフィックスサブシステムを構成することを特徴とする方法。
  22. 前記ソフトウェアは、DC電源を使用して前記コンピューティング装置の動作を検出することによって前記所望の低電力消費モードを検出する請求項2の方法。
  23. 前記コンピューティング装置は可搬型コンピューティング装置であり、前記第2のグラフィックスサブシステムは周辺装置拡張バスによって前記コンピューティング装置と相互接続された周辺装置拡張カードに形成されている請求項2の方法。
  24. 前記方法は、更に、前記コンピューティング装置の前記高電力消費モードを検出し、応答して、前記ディスプレイにグラフィックスをレンダリングするように前記第2のグラフィックスサブシステムを構成する前記ソフトウェアを実行することを含む請求項2の方法。
  25. フレームバッファと第1および第2のグラフィックスサブシステムを有するコンピューティング装置を動作させる方法であって、前記第1のグラフィックスサブシステムは、前記フレームバッファのグラフィックスをディスプレイに呈示するディスプレイインタフェースを備えており、前記ディスプレイは、前記第1のグラフィックスサブシステムと相互接続されており、
    前記方法は、
    低電力消費モードにおいて前記第1のグラフィックスサブシステムを用いてグラフィックスを前記フレームバッファに供給することと、
    ソフトウェアを実行することと、
    を含み、
    前記ソフトウェアは、
    前記コンピューティング装置の所望の高電力消費モードを検出し、
    前記所望の高電力消費モードの検出に応答して、前記コンピューティング装置を再始動させることなく前記第2のグラフィックスサブシステムを高電力消費モードに位置づけ、
    グラフィックスを前記フレームバッファに供給前記第2のグラフィックスサブシステムを構成することを特徴とする方法。
  26. 可搬型コンピューティング装置であって、
    DC電源と、ディスプレイと、中央処理装置と、第1のグラフィックスサブシステムと、マザーボード上のメモリとを収容するハウジングと、
    前記ハウジングに形成された周辺装置拡張スロットと、
    前記周辺装置拡張スロットの周辺装置拡張カードの第2のグラフィックスサブシステムと、
    を備えており、
    前記第1のグラフィックスサブシステムは、フレームバッファのグラフィックスを前記ディスプレイに呈示するディスプレイインターフェースを備えており、前記ディスプレイは、前記ディスプレイインターフェースと相互接続されており、
    前記メモリは、電力管理ソフトウェアを記憶しており、
    前記電力管理ソフトウェアが実行された時に前記電力管理ソフトウェアは、所望の低電力モードの感知に応答して、前記周辺装置拡張カードの前記第2のグラフィックスサブシステムを高電力消費モードから低電力消費モードに移行させ前記第1のグラフィックスサブシステムを用いてグラフィックスをレンダリングし、
    前記高電力消費モードにおいて、前記周辺装置拡張カードの前記第2グラフィックスサブシステムはグラフィックスを前記フレームバッファに供給することを特徴とする可搬型コンピューティング装置。
  27. 前記可搬型コンピューティング装置は、更に、AC電源に接続された電源を備えており、前記所望の低電力モードの前記感知は、前記AC電源に接続された前記電源からの前記可搬型コンピューティング装置への給電から、前記DC電源からの前記可搬型コンピューティング装置への給電に移行することを感知することを含む請求項26の可搬型コンピューティング装置。
JP2009513431A 2006-05-30 2007-05-30 複数のグラフィックスサブシステムと低減電力消費モードとを有する装置、ソフトウェアおよび該装置の動作方法 Active JP5069291B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US11/421,005 2006-05-30
US11/421,005 US7730336B2 (en) 2006-05-30 2006-05-30 Device having multiple graphics subsystems and reduced power consumption mode, software and methods
PCT/US2007/069969 WO2007140404A2 (en) 2006-05-30 2007-05-30 Device having multiple graphics subsystems and reduced power consumption mode, software and methods

Publications (2)

Publication Number Publication Date
JP2009539192A JP2009539192A (ja) 2009-11-12
JP5069291B2 true JP5069291B2 (ja) 2012-11-07

Family

ID=38586847

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009513431A Active JP5069291B2 (ja) 2006-05-30 2007-05-30 複数のグラフィックスサブシステムと低減電力消費モードとを有する装置、ソフトウェアおよび該装置の動作方法

Country Status (6)

Country Link
US (2) US7730336B2 (ja)
EP (4) EP2428948B1 (ja)
JP (1) JP5069291B2 (ja)
KR (1) KR101456723B1 (ja)
CN (1) CN101536080B (ja)
WO (1) WO2007140404A2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014029532A (ja) * 2007-12-13 2014-02-13 Ati Technologies Ulc 分割マルチコネクタ要素差動バスコネクタを使用するフレーム再使用を備えるディスプレイシステム

Families Citing this family (125)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080143731A1 (en) * 2005-05-24 2008-06-19 Jeffrey Cheng Video rendering across a high speed peripheral interconnect bus
US7730336B2 (en) * 2006-05-30 2010-06-01 Ati Technologies Ulc Device having multiple graphics subsystems and reduced power consumption mode, software and methods
US7433191B2 (en) * 2005-09-30 2008-10-07 Apple Inc. Thermal contact arrangement
US8555099B2 (en) * 2006-05-30 2013-10-08 Ati Technologies Ulc Device having multiple graphics subsystems and reduced power consumption mode, software and methods
US7698579B2 (en) * 2006-08-03 2010-04-13 Apple Inc. Multiplexed graphics architecture for graphics power management
US8681159B2 (en) * 2006-08-04 2014-03-25 Apple Inc. Method and apparatus for switching between graphics sources
US9099050B1 (en) * 2006-08-24 2015-08-04 Nvidia Corporation Method and apparatus for dynamically modifying the graphics capabilities of a mobile device
US8199155B2 (en) * 2006-11-22 2012-06-12 Nvidia Corporation System, method, and computer program product for saving power in a multi-graphics processor environment
US10127480B1 (en) 2007-03-09 2018-11-13 R. B. III Associates, Inc. System for automated decoration
US8619443B2 (en) 2010-09-29 2013-12-31 The Powerwise Group, Inc. System and method to boost voltage
US8085009B2 (en) 2007-08-13 2011-12-27 The Powerwise Group, Inc. IGBT/FET-based energy savings device for reducing a predetermined amount of voltage using pulse width modulation
US8120307B2 (en) 2007-08-24 2012-02-21 The Powerwise Group, Inc. System and method for providing constant loading in AC power applications
US8085010B2 (en) 2007-08-24 2011-12-27 The Powerwise Group, Inc. TRIAC/SCR-based energy savings device for reducing a predetermined amount of voltage using pulse width modulation
US8698447B2 (en) 2007-09-14 2014-04-15 The Powerwise Group, Inc. Energy saving system and method for devices with rotating or reciprocating masses
US8810190B2 (en) 2007-09-14 2014-08-19 The Powerwise Group, Inc. Motor controller system and method for maximizing energy savings
US20090079746A1 (en) 2007-09-20 2009-03-26 Apple Inc. Switching between graphics sources to facilitate power management and/or security
US8610725B2 (en) * 2007-10-10 2013-12-17 Apple Inc. Framework for dynamic configuration of hardware resources
US8284205B2 (en) 2007-10-24 2012-10-09 Apple Inc. Methods and apparatuses for load balancing between multiple processing units
US8233000B1 (en) * 2007-11-08 2012-07-31 Nvidia Corporation System and method for switching between graphical processing units
US8166326B2 (en) 2007-11-08 2012-04-24 International Business Machines Corporation Managing power consumption in a computer
US8345052B1 (en) * 2007-11-08 2013-01-01 Nvidia Corporation Method and system for using a GPU frame buffer in a multi-GPU system as cache memory
US8259119B1 (en) * 2007-11-08 2012-09-04 Nvidia Corporation System and method for switching between graphical processing units
US8041521B2 (en) 2007-11-28 2011-10-18 International Business Machines Corporation Estimating power consumption of computing components configured in a computing system
US8022956B2 (en) 2007-12-13 2011-09-20 Ati Technologies Ulc Settings control in devices comprising at least two graphics processors
JP5427187B2 (ja) * 2007-12-13 2014-02-26 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド 複数のグラフィックサブシステムおよび低電力消費モードを有するコンピューティングデバイス用ドライバアーキテクチャ、ソフトウェアおよび方法
US8890876B1 (en) * 2007-12-21 2014-11-18 Oracle America, Inc. Microprocessor including a display interface in the microprocessor
US9336752B1 (en) * 2007-12-21 2016-05-10 Oracle America, Inc. Microprocessor including a display interface in the microprocessor
TW200928664A (en) 2007-12-27 2009-07-01 Asustek Comp Inc Computer system and power-saving method thereof
CN101470685B (zh) * 2007-12-28 2012-07-18 辉达公司 增强移动计算装置绘图性能的方法及设备
KR100969322B1 (ko) 2008-01-10 2010-07-09 엘지전자 주식회사 멀티 그래픽 컨트롤러를 구비한 데이터 처리 장치 및 이를이용한 데이터 처리 방법
CN101493761B (zh) 2008-01-25 2013-05-29 国际商业机器公司 处理器流水线处理指令的方法及相应的处理器
US8635480B1 (en) * 2008-02-26 2014-01-21 Nvidia Corporation Method and apparatus for controlling power to a processing unit
US8963935B1 (en) * 2008-04-16 2015-02-24 Nvidia Corporation Method and system for accessing display configuration information in a multi-GPU system using hot-plug detection signals
US9064322B1 (en) * 2008-04-16 2015-06-23 Nvidia Corporation Method and system for steering access to display configuration information in a multi-GPU system
US8243082B1 (en) * 2008-04-16 2012-08-14 Nvidia Corporation Method and system for accessing display configuration information in a multi-GPU system via an embedded controller
US8525840B2 (en) * 2008-05-15 2013-09-03 Apple Inc. Thermal management of graphics processing units
US8103884B2 (en) 2008-06-25 2012-01-24 International Business Machines Corporation Managing power consumption of a computer
GB0812770D0 (en) * 2008-07-11 2008-08-20 Zbd Displays Ltd A display system
US8004255B2 (en) 2008-08-07 2011-08-23 The Powerwise Group, Inc. Power supply for IGBT/FET drivers
US9182939B1 (en) 2008-09-19 2015-11-10 Nvidia Corporation Method and system for managing the power state of an audio device integrated in a graphics device
US8190937B1 (en) * 2008-09-19 2012-05-29 Nvidia Corporation Method and system for managing the power state of an audio device integrated in a graphics device
US8347118B1 (en) 2008-09-19 2013-01-01 Nvidia Corporation Method and system for managing the power state of an audio device integrated in a graphics device
US8041976B2 (en) 2008-10-01 2011-10-18 International Business Machines Corporation Power management for clusters of computers
US8300056B2 (en) * 2008-10-13 2012-10-30 Apple Inc. Seamless display migration
US9165493B2 (en) * 2008-10-14 2015-10-20 Apple Inc. Color correction of electronic displays utilizing gain control
US9063713B2 (en) * 2008-10-28 2015-06-23 Apple Inc. Graphics controllers with increased thermal management granularity
US8514215B2 (en) 2008-11-12 2013-08-20 International Business Machines Corporation Dynamically managing power consumption of a computer with graphics adapter configurations
US8717371B1 (en) * 2008-12-01 2014-05-06 Nvidia Corporation Transitioning between operational modes in a hybrid graphics system
US8717372B1 (en) * 2008-12-01 2014-05-06 Nvidia Corporation Transitioning between operational modes in a hybrid graphics system
US9865233B2 (en) * 2008-12-30 2018-01-09 Intel Corporation Hybrid graphics display power management
US8508538B2 (en) * 2008-12-31 2013-08-13 Apple Inc. Timing controller capable of switching between graphics processing units
US9542914B2 (en) * 2008-12-31 2017-01-10 Apple Inc. Display system with improved graphics abilities while switching graphics processing units
US20100164966A1 (en) * 2008-12-31 2010-07-01 Apple Inc. Timing controller for graphics system
US9075559B2 (en) * 2009-02-27 2015-07-07 Nvidia Corporation Multiple graphics processing unit system and method
US8310488B2 (en) * 2009-04-02 2012-11-13 Sony Computer Intertainment America, Inc. Dynamic context switching between architecturally distinct graphics processors
US9324294B2 (en) * 2009-04-07 2016-04-26 Nvidia Corporation Graphics system for supporting multiple digital display interface standards
JP2011008343A (ja) * 2009-06-23 2011-01-13 Toshiba Corp 電子機器
BR112012005097A2 (pt) * 2009-09-08 2016-05-03 Powerwise Group Inc sistema de economia de energia e método para dispositivos com massas de alternância ou rotatórias
US8698446B2 (en) 2009-09-08 2014-04-15 The Powerwise Group, Inc. Method to save energy for devices with rotating or reciprocating masses
US8839012B2 (en) * 2009-09-08 2014-09-16 Advanced Micro Devices, Inc. Power management in multi-GPU systems
US8316255B2 (en) * 2009-09-09 2012-11-20 Ati Technologies Ulc Method and apparatus for responding to signals from a disabling device while in a disabled state
US8943347B2 (en) * 2009-09-09 2015-01-27 Advanced Micro Devices, Inc. Controlling the power state of an idle processing device
US8305380B2 (en) * 2009-09-09 2012-11-06 Advanced Micro Devices, Inc. Managing resources to facilitate altering the number of active processors
US20110063309A1 (en) * 2009-09-16 2011-03-17 Nvidia Corporation User interface for co-processing techniques on heterogeneous graphics processing units
US9830889B2 (en) 2009-12-31 2017-11-28 Nvidia Corporation Methods and system for artifically and dynamically limiting the display resolution of an application
US8368702B2 (en) 2010-01-06 2013-02-05 Apple Inc. Policy-based switching between graphics-processing units
US8797334B2 (en) * 2010-01-06 2014-08-05 Apple Inc. Facilitating efficient switching between graphics-processing units
US8648868B2 (en) * 2010-01-06 2014-02-11 Apple Inc. Color correction to facilitate switching between graphics-processing units
JP2011141707A (ja) * 2010-01-07 2011-07-21 Sony Corp 情報処理装置、情報処理方法及びプログラム
US8903366B2 (en) * 2010-03-01 2014-12-02 Samsung Electronics Co., Ltd. Dynamic switching between software and hardware graphics rendering for power consumption
US20110216078A1 (en) * 2010-03-04 2011-09-08 Paul Blinzer Method, System, and Apparatus for Processing Video and/or Graphics Data Using Multiple Processors Without Losing State Information
TWI465890B (zh) * 2010-03-26 2014-12-21 Hon Hai Prec Ind Co Ltd 電壓轉換裝置
US8730251B2 (en) 2010-06-07 2014-05-20 Apple Inc. Switching video streams for a display without a visible interruption
JP2012078931A (ja) * 2010-09-30 2012-04-19 Sony Corp 表示制御装置、情報処理装置及び表示方法
EP2450786A1 (en) * 2010-11-03 2012-05-09 Giga-Byte Technology Co., Ltd. A detection switch system of a video operation module
WO2012141677A1 (en) * 2011-04-11 2012-10-18 Hewlett-Packard Development Company, L.P. Performing a task in a system having different types of hardware resources
US8924752B1 (en) 2011-04-20 2014-12-30 Apple Inc. Power management for a graphics processing unit or other circuit
WO2011110121A2 (zh) 2011-04-22 2011-09-15 华为技术有限公司 管理电源的方法、终端设备、网络侧设备和通信系统
US9652016B2 (en) * 2011-04-27 2017-05-16 Nvidia Corporation Techniques for degrading rendering quality to increase operating time of a computing platform
US8477490B2 (en) 2011-05-02 2013-07-02 Apple Inc. Cooling system for mobile electronic devices
TWI471721B (zh) * 2011-07-27 2015-02-01 Ibm 具有電源供應超載模式之電腦系統
DE112011105705T5 (de) * 2011-10-27 2014-07-17 Hewlett Packard Development Company, L.P. Automatisch konfigurierbare Videosysteme mit mehreren Quellen und Verfahren zum Konfigurieren von Videosystemen
CN103123612B (zh) * 2011-11-21 2017-11-28 联想(北京)有限公司 一种共享设备的控制方法及一种电子设备
US10242418B2 (en) 2011-11-21 2019-03-26 Intel Corporation Reconfigurable graphics processor for performance improvement
US8856566B1 (en) 2011-12-15 2014-10-07 Apple Inc. Power management scheme that accumulates additional off time for device when no work is available and permits additional power consumption by device when awakened
TWI449921B (zh) * 2011-12-21 2014-08-21 Acer Inc 調整電能消耗的裝置及其方法
US9037877B2 (en) * 2012-01-20 2015-05-19 Dell Products L.P. System and method for operating a plurality of components according to first or second operating characteristics in response to a detected first or second power input characteristic associated with a first or second power input respectively
US9390461B1 (en) 2012-05-08 2016-07-12 Apple Inc. Graphics hardware mode controls
US9035956B1 (en) 2012-05-08 2015-05-19 Apple Inc. Graphics power control with efficient power usage during stop
CN103455120A (zh) * 2012-05-28 2013-12-18 鸿富锦精密工业(深圳)有限公司 电源控制系统及方法
US20150356655A1 (en) * 2012-05-31 2015-12-10 Matthew Nathan Lehrer System and method for automated design element translation
US9250665B2 (en) 2012-06-07 2016-02-02 Apple Inc. GPU with dynamic performance adjustment
US10552846B2 (en) * 2012-10-12 2020-02-04 Document Security Systems, Inc. Authenticated barcode patterns
US9454943B2 (en) 2012-10-16 2016-09-27 Razer (Asia-Pacific) Pte. Ltd. Computing systems and methods for controlling a computing system
TWI467362B (zh) * 2012-10-22 2015-01-01 Chicony Power Tech Co Ltd 具有低待機功耗之電源供應裝置
US9208755B2 (en) 2012-12-03 2015-12-08 Nvidia Corporation Low power application execution on a data processing device having low graphics engine utilization
US9125299B2 (en) 2012-12-06 2015-09-01 Apple Inc. Cooling for electronic components
US9160227B2 (en) 2012-12-14 2015-10-13 Chicony Power Technology Co., Ltd. Power supply apparatus with low standby power consumption
TWI515549B (zh) 2012-12-26 2016-01-01 萬國商業機器公司 目標裝置的過熱保護方法、過熱保護裝置、及其資訊處理系統
US9201487B2 (en) * 2013-03-05 2015-12-01 Intel Corporation Reducing power consumption during graphics rendering
US9256316B2 (en) 2013-05-04 2016-02-09 Nvidia Corporation Power gating a display of a data processing device during cloning thereof across an external display while retaining touch-sensibility thereof
US9400540B2 (en) * 2013-05-20 2016-07-26 Ati Technologies Ulc Event based dynamic power management
US10242652B2 (en) 2013-06-13 2019-03-26 Intel Corporation Reconfigurable graphics processor for performance improvement
US9223167B2 (en) 2013-06-26 2015-12-29 Apple Inc. Liquid crystal switching barrier thermal control
US10496152B2 (en) * 2013-09-27 2019-12-03 Intel Corporation Power control techniques for integrated PCIe controllers
US9389029B2 (en) 2013-09-30 2016-07-12 Apple Inc. Heat transfer structure
CN103714308A (zh) * 2013-12-07 2014-04-09 苏州斯普锐智能系统有限公司 一种具有温度调节模块的条码扫描装置
CN103945255A (zh) * 2014-04-10 2014-07-23 苏州佳世达电通有限公司 显示装置及显示装置的控制方法
KR102202110B1 (ko) * 2014-04-30 2021-01-13 삼성전자주식회사 서비스 제공 방법, 전자 장치 및 저장 매체
KR102327803B1 (ko) 2014-11-21 2021-11-17 삼성전자 주식회사 전력 소모를 줄이기 위한 전력 제어 방법 및 장치
US10324137B2 (en) * 2015-02-24 2019-06-18 Quanta Computer Inc. Intelligent method for calibrating battery capacity
CN106033242B (zh) 2015-03-09 2019-08-16 光宝电子(广州)有限公司 外部电源供应器以及应用于其的系统连接侦测单元
US10726408B2 (en) * 2015-03-30 2020-07-28 Felica Networks, Inc. Information processing apparatus, information processing method, and information processing system
US9674986B2 (en) 2015-08-03 2017-06-06 Apple Inc. Parallel heat spreader
CN105808191A (zh) * 2016-03-15 2016-07-27 山东超越数控电子有限公司 一种自动识别输出通道的显示转换方法
US10394313B2 (en) 2017-03-15 2019-08-27 Microsoft Technology Licensing, Llc Low latency cross adapter VR presentation
TWI619011B (zh) * 2017-04-26 2018-03-21 全漢企業股份有限公司 電源供應裝置與電源供應方法
US11043158B2 (en) * 2018-01-05 2021-06-22 Intel Corporation Video bandwidth optimization for multi-monitor systems
US11137815B2 (en) 2018-03-15 2021-10-05 Nvidia Corporation Metering GPU workload with real time feedback to maintain power consumption below a predetermined power budget
JP6617388B1 (ja) * 2018-06-21 2019-12-11 レノボ・シンガポール・プライベート・リミテッド 情報処理装置、映像表示装置、および映像表示システム
KR20210125330A (ko) * 2020-04-08 2021-10-18 삼성전자주식회사 보안 데이터 처리 방법 및 이를 지원하는 전자 장치
US11514551B2 (en) 2020-09-25 2022-11-29 Intel Corporation Configuration profiles for graphics processing unit
US20220317756A1 (en) * 2021-03-31 2022-10-06 Advanced Micro Devices, Inc. Graphics processing unit (gpu) selection based on a utilized power source
CN114035421A (zh) * 2021-07-06 2022-02-11 珠海奔图电子有限公司 图像形成装置及其休眠控制方法
WO2023075744A1 (en) * 2021-10-25 2023-05-04 Hewlett-Packard Development Company, L.P. Hardware component voltage regulation

Family Cites Families (48)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2716812B2 (ja) 1989-09-22 1998-02-18 豊信 吉田 高硬度を有する窒化ほう素堆積膜の形成方法
JPH03107450U (ja) * 1990-02-19 1991-11-06
US5485562A (en) 1993-09-14 1996-01-16 International Business Machines Corporation System and method for clipping pixels drawn in one of plurality of windows in a computer graphics system
US5712664A (en) 1993-10-14 1998-01-27 Alliance Semiconductor Corporation Shared memory graphics accelerator system
DE4405330A1 (de) * 1994-02-21 1995-08-24 Vobis Microcomputer Ag Verfahren zum Scrollen von mehreren Rasterzeilen in einem Fenster eines Grafikmodus betriebenen Bildschirms eines Personalcomputers
US5488385A (en) 1994-03-03 1996-01-30 Trident Microsystems, Inc. Multiple concurrent display system
JPH0922339A (ja) 1995-07-05 1997-01-21 Matsushita Electric Ind Co Ltd 遠隔操作装置
US5896141A (en) 1996-07-26 1999-04-20 Hewlett-Packard Company System and method for virtual device access in a computer system
US6046709A (en) 1997-01-17 2000-04-04 Intergraph Corporation Multiple display synchronization apparatus and method
US6018340A (en) 1997-01-27 2000-01-25 Microsoft Corporation Robust display management in a multiple monitor environment
US5949437A (en) 1997-02-19 1999-09-07 Appian Graphics Corp. Dual video output board with a shared memory interface
US6104414A (en) 1997-03-12 2000-08-15 Cybex Computer Products Corporation Video distribution hub
JPH1165719A (ja) * 1997-08-21 1999-03-09 Toshiba Corp コンピュータおよび画像表示方法
JPH11109937A (ja) 1997-09-29 1999-04-23 Casio Comput Co Ltd 表示制御装置
US6040845A (en) 1997-12-22 2000-03-21 Compaq Computer Corp. Device and method for reducing power consumption within an accelerated graphics port target
US6208361B1 (en) 1998-06-15 2001-03-27 Silicon Graphics, Inc. Method and system for efficient context switching in a computer graphics system
US6532019B1 (en) 1998-06-17 2003-03-11 Advanced Micro Devices, Inc. Input/output integrated circuit hub incorporating a RAMDAC
US6573905B1 (en) 1999-11-09 2003-06-03 Broadcom Corporation Video and graphics system with parallel processing of graphics windows
TW436694B (en) * 1999-08-24 2001-05-28 Via Tech Inc System control chip and computer system having a multiplexed graphic bus architecture
US6624816B1 (en) * 1999-09-10 2003-09-23 Intel Corporation Method and apparatus for scalable image processing
US6760031B1 (en) 1999-12-31 2004-07-06 Intel Corporation Upgrading an integrated graphics subsystem
JP3862976B2 (ja) * 2001-07-31 2006-12-27 株式会社東芝 表示機構
JP3862983B2 (ja) * 2001-09-17 2006-12-27 株式会社東芝 表示機構およびコンピュータシステム
US7079149B2 (en) * 2001-10-09 2006-07-18 Texas Instruments Incorporated System, method, and device for accelerated graphics port linking
US20030158886A1 (en) 2001-10-09 2003-08-21 Walls Jeffrey J. System and method for configuring a plurality of computers that collectively render a display
US6864891B2 (en) * 2002-01-31 2005-03-08 Hewlett-Packard Development Company L.P. Switching between internal and external display adapters in a portable computer system
JP2003233780A (ja) 2002-02-06 2003-08-22 Mitsubishi Electric Corp データ通信装置
US6700580B2 (en) 2002-03-01 2004-03-02 Hewlett-Packard Development Company, L.P. System and method utilizing multiple pipelines to render graphical data
US6886057B2 (en) 2002-06-06 2005-04-26 Dell Products L.P. Method and system for supporting multiple bus protocols on a set of wirelines
US7388579B2 (en) * 2003-05-01 2008-06-17 Motorola, Inc. Reduced power consumption for a graphics accelerator and display
US7538762B2 (en) * 2003-09-30 2009-05-26 Intel Corporation Switching display update properties upon detecting a power management event
US7102645B2 (en) 2003-12-15 2006-09-05 Seiko Epson Corporation Graphics display controller providing enhanced read/write efficiency for interfacing with a RAM-integrated graphics display device
US7289125B2 (en) 2004-02-27 2007-10-30 Nvidia Corporation Graphics device clustering with PCI-express
US7265759B2 (en) 2004-04-09 2007-09-04 Nvidia Corporation Field changeable rendering system for a computing device
US6985152B2 (en) 2004-04-23 2006-01-10 Nvidia Corporation Point-to-point bus bridging without a bridge controller
US20050237329A1 (en) * 2004-04-27 2005-10-27 Nvidia Corporation GPU rendering to system memory
JP2005316176A (ja) 2004-04-28 2005-11-10 Toshiba Corp 電子機器及び表示制御方法
US7730335B2 (en) * 2004-06-10 2010-06-01 Marvell World Trade Ltd. Low power computer with main and auxiliary processors
US8446417B2 (en) 2004-06-25 2013-05-21 Nvidia Corporation Discrete graphics system unit for housing a GPU
TWM261751U (en) 2004-07-09 2005-04-11 Uniwill Comp Corp Switching display processing architecture for information device
US7721118B1 (en) * 2004-09-27 2010-05-18 Nvidia Corporation Optimizing power and performance for multi-processor graphics processing
US7545380B1 (en) * 2004-12-16 2009-06-09 Nvidia Corporation Sequencing of displayed images for alternate frame rendering in a multi-processor graphics system
CN100507825C (zh) * 2004-12-20 2009-07-01 建碁股份有限公司 计算机图像系统与处理装置
US7817155B2 (en) 2005-05-24 2010-10-19 Ati Technologies Inc. Master/slave graphics adapter arrangement
US7730336B2 (en) 2006-05-30 2010-06-01 Ati Technologies Ulc Device having multiple graphics subsystems and reduced power consumption mode, software and methods
CN1968369A (zh) * 2005-11-18 2007-05-23 南京Lg同创彩色显示系统有限责任公司 显示模式选择导引方法及装置
JP5076317B2 (ja) * 2005-12-27 2012-11-21 ソニー株式会社 情報処理装置、情報処理方法及びそのプログラム
US7698579B2 (en) * 2006-08-03 2010-04-13 Apple Inc. Multiplexed graphics architecture for graphics power management

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014029532A (ja) * 2007-12-13 2014-02-13 Ati Technologies Ulc 分割マルチコネクタ要素差動バスコネクタを使用するフレーム再使用を備えるディスプレイシステム

Also Published As

Publication number Publication date
US7730336B2 (en) 2010-06-01
EP2426661A1 (en) 2012-03-07
EP2423913B1 (en) 2015-12-02
CN101536080A (zh) 2009-09-16
US8868945B2 (en) 2014-10-21
WO2007140404A2 (en) 2007-12-06
EP2423913A1 (en) 2012-02-29
KR101456723B1 (ko) 2014-11-12
JP2009539192A (ja) 2009-11-12
CN101536080B (zh) 2013-06-19
WO2007140404A3 (en) 2008-02-07
EP2428948B1 (en) 2017-06-21
EP2428948A1 (en) 2012-03-14
US20070283175A1 (en) 2007-12-06
KR20090040410A (ko) 2009-04-24
EP2033183A2 (en) 2009-03-11
EP2033183B1 (en) 2015-11-18
US20100293402A1 (en) 2010-11-18
EP2426661B1 (en) 2015-12-02

Similar Documents

Publication Publication Date Title
JP5069291B2 (ja) 複数のグラフィックスサブシステムと低減電力消費モードとを有する装置、ソフトウェアおよび該装置の動作方法
US8555099B2 (en) Device having multiple graphics subsystems and reduced power consumption mode, software and methods
US8487943B2 (en) Driver architecture for computing device having multiple graphics subsystems, reduced power consumption modes, software and methods
US7698579B2 (en) Multiplexed graphics architecture for graphics power management
US8233000B1 (en) System and method for switching between graphical processing units
JP5076317B2 (ja) 情報処理装置、情報処理方法及びそのプログラム
US7219240B2 (en) Monitor and method for controlling power-on and power-off of host computer
US8259119B1 (en) System and method for switching between graphical processing units
JP2007508583A (ja) 電力管理イベントの検出によるディスプレイ更新特性の切り替え
JPH11194847A (ja) コンピュータシステムおよび初期化制御装置
KR20230164087A (ko) 활용된 전원에 기초한 그래픽 프로세싱 유닛(gpu) 선택
JP4988036B2 (ja) 情報処理装置および同装置における映像信号の出力制御方法
JP5201231B2 (ja) 情報処理装置、情報処理方法及びそのプログラム
JP2012118891A (ja) コンピュータの消費電力の低減方法およびコンピュータ

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100506

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20111109

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111129

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120227

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120229

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120327

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120523

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

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

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

Free format text: PAYMENT UNTIL: 20150824

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5069291

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

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