様々な実施形態は、一般に、統合されたPCIeコントローラのための電力制御技術を対象とし得る。より詳細には、様々な実施形態は、統合されたPCIeコントローラからの電力の除去を可能にする技術を対象とする。一実施形態において、例えば、プロセッサ回路は、統合されたPCIeコントローラと、電力低減トリガを検出し、統合されたPCIeコントローラを無効にし、統合されたPCIeコントローラに関する電力除去設定に基づいて、統合されたPCIeコントローラから電力を除去するロジックと、を備えることができる。他の実施形態も説明され特許請求される。
様々な実施形態は、1以上の要素を有することができる。要素は、所定の動作を実行するよう構成された任意の構造を含んでよい。各要素は、設計パラメータ又は性能制約の所与のセットに関して必要に応じて、ハードウェア、ソフトウェア、又はこれらの任意の組合せとして実装することができる。実施形態が、例として、所与のトポロジにおける限定された数の要素を有するものとして説明されるかもしれないが、その実施形態は、所与の実装に関して必要に応じて、代替トポロジにおけるより多くの要素又はより少ない要素を有してもよい。「一実施形態」又は「ある実施形態」との全ての言及は、その実施形態に関して説明される特定の特徴、構造、又は特性が、少なくとも1つの実施形態に含まれることを意味することは特筆に値する。本明細書の様々な箇所における「一実施形態において」、「いくつかの実施形態において」、及び「様々な実施形態において」という語句の出現は、全て同じ実施形態を必ずしも指しているわけではない。
図1は、例えば、様々な実施形態の代表であり得る動作環境100の一実施形態を示している。図1に示されるように、プロセッサ回路102は、PCIeリンク151を介してPCIeデバイス150と通信する。PCIeデバイス150との通信をサポートするために、プロセッサ回路102は、統合されたPCIeコントローラ106及び統合されたPCIe入力/出力(I/O)モジュール108を備える。いくつかの実施形態において、PCIeコントローラ106は、PCIeデバイス150を管理及び/又は構成し、且つ/又は、PCIeリンク151を介するプロセッサ回路102とPCIeデバイス150との間のトランザクションレイヤ通信及び/又はデータレイヤ通信を管理及び/又は構成するよう動作可能な回路を備えることができる。様々な実施形態において、PCIe I/Oモジュール108は、PCIeコントローラ106よりも下位の抽象レイヤでプロセッサ回路102とPCIeデバイス150との間の通信を管理及び/又は構成するよう動作可能な回路を備えることができる。例えば、いくつかの実施形態において、PCIe I/Oモジュール108は、PCIeリンク151を介するプロセッサ回路102とPCIeデバイス150との間の物理レイヤ通信を管理及び/又は構成するよう動作可能であり得る。実施形態は、このコンテキストにおいて限定されるものではない。
動作中、PCIeコントローラ106、PCIe I/Oモジュール108、及び/又はPCIeデバイス150はそれぞれ、電力を消費し得る。様々な実施形態において、PCIeコントローラ106及びPCIe I/Oモジュール108により消費される電力は、処理回路102により消費される電力全体の一部分を含み得る。いくつかの実施形態において、全体的な電力消費レベルが低減されるより低い電力状態にプロセッサ回路102を遷移させることが望ましくなる場合がある。様々な実施形態において、より低い電力状態への遷移を可能にするために、PCIeコントローラ106及び/又はPCIe I/Oモジュール108から電力を除去することが望ましい。PCIeコントローラ106及び/又はPCIe I/Oモジュール108から電力を除去する1つの可能な手法は、PCIeコントローラ106及び/又はPCIe I/Oモジュール108を電力ゲーティングする(power gate)ことを含み得る。一方、いくつかの従来システムは、PCIeデバイス150等のPCIeデバイスからの電力の除去を可能にするが、それらのシステムは、PCIeコントローラ106及びPCIe I/Oモジュール108等のPCIeコンポーネントからの電力の除去をサポートしていない。
図2は、装置200のブロック図を示している。装置200は、図1のPCIeコントローラ106及び/又はPCIe I/Oモジュール108等のPCIeコンポーネントからの電力の除去をサポートすることができる装置の一例を含む。図2に示されるように、装置200は、プロセッサ回路202及びメモリユニット204を含む複数の要素を備える。しかしながら、実施形態は、この図に示される要素のタイプ、数、又は構成に限定されるものではない。
いくつかの実施形態において、装置200は、プロセッサ回路202を備えることができる。プロセッサ回路202は、複合命令セットコンピュータ(CISC)マイクロプロセッサ、縮小命令セットコンピュータ(RISC)マイクロプロセッサ、超長命令語(VLIW)マイクロプロセッサ、x86命令セット互換プロセッサ、命令セットの組合せを実装するプロセッサ、デュアルコアプロセッサ若しくはデュアルコアモバイルプロセッサ等のマルチコアプロセッサ、又は任意の他のマイクロプロセッサ若しくは中央処理装置(CPU)等の任意のプロセッサ又はロジックデバイスを用いて実装することができる。プロセッサ回路202はまた、コントローラ、マイクロコントローラ、組み込みプロセッサ、チップマルチプロセッサ(CMP)、コプロセッサ、デジタル信号プロセッサ(DSP)、ネットワークプロセッサ、メディアプロセッサ、入力/出力(I/O)プロセッサ、媒体アクセス制御(MAC)プロセッサ、無線ベースバンドプロセッサ、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、プログラマブルロジックデバイス(PLD)等といった専用プロセッサとして実装されてもよい。一実施形態において、例えば、プロセッサ回路202は、カリフォルニア州サンタクララのインテル(登録商標)コーポレイションにより製造されたプロセッサ等の汎用プロセッサとして実装することができる。実施形態は、このコンテキストにおいて限定されるものではない。
様々な実施形態において、装置200は、メモリユニット204を備えることができる、又は、メモリユニット204に通信可能に結合するよう構成することができる。メモリユニット204は、揮発性メモリ及び不揮発性メモリの両方を含め、データを記憶することができる任意のマシン読み取り可能な媒体又はコンピュータ読み取り可能な媒体を用いて実装することができる。例えば、メモリユニット204は、読み取り専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、ダイナミックRAM(DRAM)、ダブルデータレートDRAM(DDRAM)、シンクロナスDRAM(SDRAM)、スタティックRAM(SRAM)、プログラム可能なROM(PROM)、消去可能なプログラム可能なROM(EPROM)、電気的に消去可能なプログラム可能なROM(EEPROM)、フラッシュメモリ、強誘電性高分子メモリ等の高分子メモリ、オボニックメモリ、相変化メモリ若しくは強誘電性メモリ、SONOS(silicon-oxide-nitride-oxide-silicon)メモリ、磁気カード若しくは光カード、又は、情報を記憶するのに適した任意の他のタイプの媒体を含み得る。メモリユニット204の一部又は全ては、プロセッサ回路202と同じ集積回路上に含まれてもよいし、メモリユニット204の一部又は全ては、プロセッサ回路202の集積回路の外部にある集積回路又は他の媒体(例えば、ハードディスクドライブ)上に設けられてもよい、ということは特筆に値する。図2において、メモリユニット204は、装置200に含まれるが、いくつかの実施形態においては、メモリユニット204は、装置200の外部にあってもよい。実施形態は、このコンテキストにおいて限定されるものではない。
いくつかの実施形態において、プロセッサ回路202は、PCIeコントローラ206を備えることができる。PCIeコントローラ206は、PCIeデバイス250を管理及び/又は構成し、且つ/又は、プロセッサ回路202とPCIeデバイス250との間のトランザクションレイヤ通信及び/又はデータレイヤ通信を管理及び/又は構成するよう動作可能な回路を備えることができる。PCIeコントローラ206は、図1のPCIeコントローラ106と同じであってもよいし、図1のPCIeコントローラ106に類似するものであってもよい。様々な実施形態において、プロセッサ回路202は、PCIe I/Oモジュール208を備えることができる。PCIe I/Oモジュール208は、PCIeコントローラ206よりも下位の抽象レイヤでプロセッサ回路202とPCIeデバイス250との間の通信を管理及び/又は構成するよう動作可能な回路を備えることができる。PCIe I/Oモジュール208は、図1のPCIe I/Oモジュール108と同じであってもよいし、図1のPCIe I/Oモジュール108に類似するものであってもよい。例えば、いくつかの実施形態において、PCIe I/Oモジュール208は、プロセッサ回路202とPCIeデバイス250との間の物理レイヤ通信を管理及び/又は構成するよう動作可能であり得る。様々な実施形態において、PCIeコントローラ206及びPCIe I/Oモジュール208は、集合的に、プロセッサ回路202とPCIeデバイス250との間のPCIeリンク251を確立、トレーニング、管理、構成、及び/又は維持するよう動作可能であり得る。いくつかの実施形態において、プロセッサ回路202及びPCIeデバイス250は、1以上のPCIe通信プロトコルに従ってPCIeリンク251を介して通信するよう動作可能であり得る。実施形態は、このコンテキストにおいて限定されるものではない。
様々な実施形態において、プロセッサ回路202は、電力制御ユニット(PCU)210を備えることができる。PCU210は、プロセッサ回路202の1以上のコンポーネントへの電力の供給を制御及び/又は管理するよう動作可能な回路、ロジック、及び/又は命令の組合せを備えることができる。いくつかの実施形態において、PCU210は、PCIeコントローラ206及び/又はPCIe I/Oモジュール208への電力の供給を制御及び/又は管理するよう動作可能であり得る。そのような様々な実施形態において、PCU210は、1以上の電力ゲート212を制御することにより、PCIeコントローラ206及び/又はPCIe I/Oモジュール208への電力の供給を制御及び/又は管理するよう動作可能であり得る。各電力ゲート212は、プロセッサ回路202の1以上のコンポーネントから電力を除去するためにPCU210が開状態に設定できる又はプロセッサ回路202の1以上のコンポーネントに電力を供給するためにPCU210が閉状態に設定できるトランジスタ、デバイス、又は回路を備えることができる。いくつかの実施形態において、PCU210は、1つの電力ゲート212を用いてPCIeコントローラ206への電力の供給を制御するよう動作可能であり得、別の電力ゲート212を用いてPCIe I/Oモジュール208への電力の供給を制御するよう動作可能であり得る。様々な他の実施形態においては、PCU210は、1つの電力ゲート212を用いてPCIeコントローラ206及びPCIe I/Oモジュール208の両方への電力の供給を制御するよう動作可能であってもよい。実施形態は、このコンテキストにおいて限定されるものではない。
図2は、システム240のブロック図も示している。システム240は、装置200の前述した要素のうち任意の要素を備えることができる。システム240は、ディスプレイ245をさらに備えることができる。ディスプレイ245は、プロセッサ回路202から受信した情報を表示することができる任意のディスプレイデバイスを含み得る。ディスプレイ245の例は、テレビジョン、モニタ、プロジェクタ、及びコンピュータスクリーンを含み得る。一実施形態において、例えば、ディスプレイ245は、液晶ディスプレイ(LCD)、発光ダイオード(LED)、又は他のタイプの適切なビジュアルインタフェースにより実装することができる。ディスプレイ245は、例えば、タッチ式ディスプレイスクリーン(「タッチスクリーン」)を含み得る。様々な実装において、ディスプレイ245は、埋め込みトランジスタを有する1以上の薄膜トランジスタ(TFT)LCDを含み得る。しかしながら、実施形態は、これらの例に限定されるものではない。
装置200及び/又はシステム240の動作中、それらの全体的な電力消費レベルを低減させることが望ましくなる場合がある。例示的な実施形態において、装置200及び/又はシステム240は、外部電源への接続を用いて動作するポータブルコンピューティングデバイスを含み得る。外部電源への接続が解除された場合、装置200及び/又はシステム240は、バッテリの電力に依拠し得、バッテリ電力が使い尽くされる前に装置200及び/又はシステム240が動作できる時間量を増大させるために、装置200及び/又はシステム240の電力消費レベルを低減させることが望ましい。実施形態は、この例に限定されるものではない。
様々な実施形態において、プロセッサ回路202は、電力低減トリガ214を検出するよう動作可能であり得る。いくつかの実施形態において、電力低減トリガ214は、電力消費の低減が望ましい状況の存在を示す情報及び/又は信号を含み得る。例示的な実施形態において、プロセッサ回路202は、外部電源接続が解除されており、したがって、装置200及び/又はシステム240がバッテリ電力で動作中であることを示す電力低減トリガ214を検出するよう動作可能であり得る。様々な実施形態において、電力低減トリガ214は、単に、プロセッサ回路202により実行された1以上の計算の結果を含み得、プロセッサ回路202は、その1以上の計算を実行し、その結果を識別することにより、電力低減トリガ214を検出することができる、ということは特筆に値する。そのような実施形態の一例において、プロセッサ回路202は、現在の電力消費レベルを目標の電力消費レベルと比較するよう動作可能であり得、電力低減トリガ214は、現在の電力消費レベルが目標の電力消費レベルよりも高いことを示す、プロセッサ回路202により判定された結果を含み得る。実施形態は、これらの例に限定されるものではない。
いくつかの実施形態において、プロセッサ回路202は、より低い電力状態へのプロセッサ回路202の遷移を可能にするために、電力低減トリガ214に基づいて、電力がPCIeコントローラ206及び/又はPCIe I/Oモジュール208から除去されるべきであると決定することができる。様々な実施形態において、PCIeコントローラ206及び/又はPCIe I/Oモジュール208から電力を除去するためのプロセスは、1以上のPCIeデバイスがPCIeコントローラ206及び/又はPCIe I/Oモジュール208によりサーブされている(being served)との判定で開始し得る。図2の例において、PCIeコントローラ206は、PCIeデバイス250が、PCIeリンク251を介してPCIeコントローラ206及び/又はPCIe I/Oモジュール208によりサーブされていると判定することができる。明瞭さ及び簡潔さのために、以下の説明は、PCIeコントローラ206及びPCIe I/Oモジュール208が、図2に示される1つのPCIeデバイス250をサーブするシナリオに関する。しかしながら、PCIeコントローラ206及び/又はPCIe I/Oモジュール208が複数のPCIeデバイスをサーブする実施形態が可能であるとともに意図されており、実施形態は、このコンテキストにおいて限定されるものではないことを理解されたい。
いくつかの実施形態において、PCIeデバイス250が識別されると、プロセッサ回路202は、PCIeデバイス250に関するドライバを含み得るPCIeデバイスドライバ216の1以上のルーチンを呼び出すよう動作可能であり得る。より詳細には、プロセッサ回路202は、PCIeデバイス250の動作に関連付けられた1以上の動作パラメータ218を記憶又は保存するよう動作可能な、PCIeデバイスドライバ216の1以上のルーチンを呼び出すよう動作可能であり得る。様々な実施形態において、動作パラメータ218は、動作中にPCIeデバイス250により生成、受信、処理、変更、送信、又は使用されるロジック、データ、情報、及び/又は命令を含み得る。いくつかの実施形態において、動作パラメータ218は、1以上の特徴及び/又はその機能を実装するためにPCIeデバイス250により使用される情報を含み得る。例えば、PCIeデバイス250が、グラフィックスカードを含む場合、動作パラメータ218は、グラフィックスフレームバッファに配置するためにPCIeデバイス250により生成されるグラフィックス情報を含み得る。様々な実施形態において、動作パラメータ218は、追加的又は代替的に、PCIeデバイス250に関する構成情報を含んでもよい。PCIeデバイス250がグラフィックスカードを含む前述した例において、動作パラメータ218は、解像度設定の値及びリフレッシュレート設定の値を示す情報を含んでもよく、PCIeデバイス250は、その情報に基づいてグラフィックス情報を生成する。実施形態は、これらの例に限定されるものではない。
いくつかの実施形態において、プロセッサ回路202は、PCIeコントローラ206及び/又はPCIe I/Oモジュール208に関する構成情報222の保存を円滑にするランタイム基本入出力システム(BIOS)220を呼び出すよう動作可能であり得る。様々な実施形態において、ランタイムBIOS220は、PCIeデバイスドライバ216、又は、PCIeコントローラ206及び/若しくはPCIe I/Oモジュール208に関するデバイスドライバに関連付けられたルーチン等の、プロセッサ回路202により呼び出される1以上のデバイスドライバルーチンにより呼び出され得る。いくつかの実施形態において、構成情報222は、PCIeデバイス250がPCIeリンク251を介してプロセッサ回路202と通信することを可能にするために、PCIeコントローラ206、PCIe I/Oモジュール208、及び/又はPCIeデバイス250の間でネゴシエートされたパラメータを示す情報を含み得る。様々な実施形態において、そのようなパラメータは、PCIeリンク251のための初期トレーニングシーケンス中にネゴシエートされたものであり得る。いくつかの実施形態において、プロセッサ回路202は、ランタイムBIOS220及び/又はPCIeデバイスドライバ216等のソフトウェアに構成情報222を公開するよう動作可能な回路、ロジック、及び/又は命令を備えることができる。様々な実施形態において、ランタイムBIOS220は、PCIeコントローラ206及び/又はPCIe I/Oモジュール208に関する公開された構成情報222にアクセスし、構成情報222をメモリユニット204及び/又は1以上の他の記憶媒体に記憶するよう動作可能であり得る。実施形態は、このコンテキストにおいて限定されるものではない。
いくつかの実施形態において、PCIeデバイス250は、プロセッサ回路202と通信するために、PCIeコントローラ206及び/又はPCIe I/Oモジュール208により実装されたPCIeリンク251に依拠するので、PCIeコントローラ206及び/又はPCIe I/Oモジュール208から電力を除去することにより、プロセッサ回路202が、PCIeデバイス250により提供される機能を使用することを防ぐことができる。様々な実施形態において、プロセッサ回路202及び/又はランタイムBIOS220は、1以上の同じ機能又は類似する機能の使用を可能にするために、代替デバイス224をアクティブ化するよう動作可能であり得る。代替デバイス224は、PCIeコントローラ206及び/又はPCIe I/Oモジュール208が非アクティブ化されていてもプロセッサ回路202がアクセス可能なデバイスを含み得る。いくつかの実施形態において、代替デバイス224は、PCIeデバイス250と比較して低減された電力消費コストで1以上の同じ機能又は類似する機能の使用を可能にし得る。様々な実施形態において、代替デバイス224は、より低レベルの性能及び/又は品質で1以上の同じ機能又は類似する機能の使用を可能にし得る。したがって、いくつかの実施形態において、代替デバイス224の使用は、省電力を実現するためのトレードオフとして、いくらかの程度の性能及び/又は品質の低下を許容することを伴い得る。
様々な実施形態において、代替デバイス224は、プロセッサ回路202の統合されたデバイス又は回路を含み得る。PCIeデバイス250がグラフィックスカードを含む例示的な実施形態において、代替デバイス224は、プロセッサ回路202内の統合されたグラフィックス回路を含み得る。いくつかの他の実施形態においては、代替デバイス224は、プロセッサ回路202と同じマザーボード上の統合されたデバイス、チップ、又は回路を含んでもよい。さらに他の実施形態においては、代替デバイス224は、PCIeコントローラ206及び/又はPCIe I/Oモジュール208からのサポートなくプロセッサ回路202が通信できるディスクリートカード又は他のデバイスを含んでもよい。様々な実施形態において、代替デバイス224は、アクティブ化されると、PCIeデバイス250に関する記憶されている動作パラメータ218の一部又は全てを用いて動作を開始するよう動作可能であり得る。いくつかの実施形態において、動作パラメータ218は、PCIeデバイス250により以前に提供されていた機能であって代替デバイス224により提供されることになる機能に関連付けられた情報を含み得、代替デバイス224は、動作パラメータ218を使用して、そのような機能を提供することができる。PCIeデバイス250がグラフィックスカードを含み、代替デバイス224がプロセッサ回路202の統合されたグラフィックス回路を含む例示的な実施形態において、動作パラメータ218は、グラフィックスフレームバッファのためのグラフィックス情報を含み得、代替デバイス224は、動作パラメータ218を用いて、グラフィックスフレームバッファに情報を投入することができる。実施形態は、この例に限定されるものではない。
様々な実施形態において、動作パラメータ218及び/又は構成情報222が記憶され、任意の所望の代替デバイス224がアクティブ化されると、プロセッサ回路202は、PCIeコントローラ206を無効状態に遷移させるよう動作可能であり得る。いくつかの実施形態において、PCU210は、PCIeコントローラ206が無効状態に遷移したことを検出するよう動作可能であり得る。様々な実施形態において、PCU210は、次いで、電力除去設定226に基づいて、電力がPCIeコントローラ206及び/又はPCIe I/Oモジュール208から除去されてもよいかどうかを判定するよう動作可能であり得る。電力除去設定226は、PCIeコントローラ206が無効状態に置かれた場合に電力がPCIeコントローラ206及び/又はPCIe I/Oモジュール208から除去されてもよいかどうかを示す情報を含み得る。いくつかの実施形態において、電力除去設定226は、装置200及び/又はシステム240の初期ブートシーケンス中にBIOSにより設定された「PCIe_power_gate_allowed」ビット値又は他の値を含み得る。様々な実施形態において、電力除去設定226は、PCIeコントローラ206及び/又はPCIe I/Oモジュール208から電力を除去するために、1以上の電力ゲート212が開状態に設定されてもよいかどうかを示すことができる。実施形態は、このコンテキストにおいて限定されるものではない。
いくつかの実施形態において、PCIeコントローラ206が無効にされ、電力がPCIeコントローラ206及び/又はPCIe I/Oモジュール208から除去されてもよいと電力除去設定226が示したときに、PCU210は、PCIeコントローラ206及び/又はPCIe I/Oモジュール208から電力を除去するよう動作可能であり得る。そのような様々な実施形態において、PCU210は、PCIeコントローラ206及び/又はPCIe I/Oモジュール208から電力を除去するために1以上の電力ゲート212を開状態に設定するよう動作可能であり得る。実施形態は、このコンテキストにおいて限定されるものではない。
いくつかの実施形態において、電力除去設定226は、電力がPCIeコントローラ206及び/又はPCIe I/Oモジュール208から除去されなくてもよいと示すことができる。例えば、様々な実施形態において、電力除去設定226は、0に等しい値を有するPCIe_power_gate_allowedビットを含み得る。0に等しい値を有するPCIe_power_gate_allowedビットは、PCU210が、PCIeコントローラ206及び/又はPCIe I/Oモジュール208から電力を除去するように電力ゲート212を設定しなくてもよいことを示す。そのようないくつかの実施形態において、PCU210は、PCIeコントローラ206及び/又はPCIe I/Oモジュール208から電力を除去するよう動作可能でなくてもよいが、プロセッサ回路202及び/又はPCU210は、PCIeコントローラ206及び/又はPCIe I/Oモジュール208のための低減された電力状態を実施するよう動作可能であり得る。様々な実施形態において、例えば、PCIeコントローラ206が無効にされたときに、PCIe I/Oモジュール208が低電力状態に置かれ得るように、PCIeコントローラ206は、PCIe I/Oモジュール208のための低電力状態をサポートすることができる。いくつかの実施形態において、低電力状態は、L2状態のような状態を含み得る。実施形態は、このコンテキストにおいて限定されるものではない。
様々な実施形態において、PCU210が、PCIeコントローラ206及び/又はPCIe I/Oモジュール208から電力を除去すると、プロセッサ回路202は、PCIeデバイス250から電力を除去するよう動作可能であり得る。いくつかの実施形態において、プロセッサ回路202は、PCIeデバイス250から電力を除去するために、PCIeデバイスドライバ216及び/又は1以上の他のドライバの1以上のルーチンを呼び出すよう動作可能であり得る。様々な実施形態において、PCIeデバイス250から電力を除去するプロセッサ回路202の能力は、プロセッサ回路202が存在するマザーボードであって、PCIeデバイス250がインタフェースをとるマザーボードによりサポートされている機能に依拠し得る。いくつかの実施形態において、例えば、プロセッサ回路202は、マザーボードがそのような動作をサポートしているならば、PCIeデバイス250が存在するPCIeスロットへの電力供給を止めることにより、PCIeデバイス250から電力を除去するよう動作可能であり得る。そのような状況下では、PCIeコントローラ206及び/又はPCIe I/Oモジュール208から電力を除去することにより省電力を実現することに加えて、PCIeデバイス250から電力を除去することにより、さらなる省電力を実現することができる。マザーボードが、PCIeデバイス250から電力を除去することをサポートしていない場合、PCIeデバイス250は、PCIeコントローラ206及び/又はPCIe I/Oモジュール208に電力供給されていない間も、電力供給されたままであり得る。しかしながら、このような状況下では、PCIeコントローラ206及び/又はPCIe I/Oモジュール208から電力を除去することに関連する省電力は、それでも実現することができる。実施形態は、このコンテキストにおいて限定されるものではない。
様々な実施形態において、PCIeコントローラ206及び/又はPCIe I/Oモジュール208を無効にしてそれらから電力を除去した後に、プロセッサ回路202は、電力増大トリガ228を検出するよう動作可能であり得る。いくつかの実施形態において、電力増大トリガ228は、PCIeデバイス250により提供される機能を使用するために、PCIeコントローラ206、PCIe I/Oモジュール208、及び/又はPCIeデバイス250に関して増大される電力消費を許容することが望ましい状況の存在を示す情報及び/又は信号を含み得る。例示的な実施形態において、プロセッサ回路202は、外部電源接続が確立されており、したがって、装置200及び/又はシステム240がもはやバッテリ電力で動作中でないことを示す電力増大トリガ228を検出するよう動作可能であり得る。別の例示的な実施形態においては、プロセッサ回路202は、現在の電力消費レベルを目標の電力消費レベルと比較するよう動作可能であってもよく、電力増大トリガ228は、現在の電力消費レベルが、PCIeコントローラ206、PCIe I/Oモジュール208、及び/又はPCIeデバイス250により消費された電力量よりも多い電力量の分だけ、目標の電力消費レベルよりも低いことを示す、プロセッサ回路202により判定された結果を含んでもよい。実施形態は、これらの例に限定されるものではない。
様々な実施形態において、プロセッサ回路202は、電力増大トリガ228に基づいて、PCIeコントローラ206及び/又はPCIe I/Oモジュール208が有効にされるべきであると決定するよう動作可能であり得る。いくつかの実施形態において、PCIeコントローラ206及び/又はPCIe I/Oモジュール208を有効にするためのプロセスは、PCU210が、PCIeコントローラ206及び/又はPCIe I/Oモジュール208への電力を復旧させることで開始し得る。様々な実施形態において、PCU210は、PCIeコントローラ206及び/又はPCIe I/Oモジュール208に電力を供給するために、1以上の電力ゲート212を閉状態に設定するよう動作可能であり得る。実施形態は、このコンテキストにおいて限定されるものではない。
いくつかの実施形態において、PCU210が、PCIeコントローラ206及び/又はPCIe I/Oモジュール208に電力を供給すると、プロセッサ回路202は、ランタイムBIOS220を呼び出すよう動作可能であり得る。様々な実施形態において、ランタイムBIOS220は、PCIeデバイスドライバ216、又は、PCIeコントローラ206及び/若しくはPCIe I/Oモジュール208に関するデバイスドライバに関連付けられたルーチン等の、プロセッサ回路202により呼び出される1以上のデバイスドライバルーチンにより呼び出され得る。いくつかの実施形態において、プロセッサ回路202及び/又はランタイムBIOS220は、PCIeコントローラ206を有効状態に遷移させるよう動作可能であり得、ランタイムBIOS220は、記憶されている構成情報222に基づいて、PCIeコントローラ206及び/又はPCIe I/Oモジュール208の構成を元に戻すよう動作可能であり得る。様々な実施形態において、PCIeデバイス250が、現在電力供給されていない場合、プロセッサ回路202は、PCIeデバイス250に電力を供給するために、PCIeデバイスドライバ216及び/又は1以上の他のドライバの1以上のルーチンを呼び出すよう動作可能であり得る。
いくつかの実施形態において、ランタイムBIOS220は、プロセッサ回路202とPCIeデバイス250との間のPCIeリンク251を復旧させるために、再トレーニングシーケンスを呼び出すよう動作可能であり得る。様々な実施形態において、構成情報222の記憶及び取り出しにより、ランタイムBIOS220は、PCIeリンク251を確立するために元々使用された初期トレーニングシーケンスの実行を余儀なくされることなく、再トレーニングシーケンスを使用して、PCIeリンク251を復旧させることが可能になる。いくつかの実施形態において、再トレーニングシーケンスは、初期トレーニングシーケンスよりも高速且つ/又は少ない計算集約型プロセス(computationally intensive process)を含み得る。したがって、PCIeコントローラ206が無効にされるときに構成情報222を記憶することにより、PCIeコントローラ206が再び有効にされるときに、より迅速且つ効率的にPCIeリンク251を再確立することが可能になる。他の利点も、様々な実施形態に関連付けられ得る。実施形態は、このコンテキストにおいて限定されるものではない。
いくつかの実施形態において、プロセッサ回路202は、PCIeデバイス250の動作を再び有効にするよう動作可能な、PCIeデバイスドライバ216の1以上のルーチンを呼び出すよう動作可能であり得る。様々な実施形態において、この1以上のルーチンは、PCIeデバイス250に関する記憶されている動作パラメータ218に基づいて、PCIeデバイス250に関する動作構成を元に戻すよう動作可能であり得る。いくつかの実施形態において、この1以上のルーチンは、追加的又は代替的に、代替デバイス224に関連付けられた動作パラメータ218に基づいて、PCIeデバイス250の動作を再び有効にするよう動作可能であってもよい。そのような様々な実施形態において、PCIeデバイス250の特定の機能を有効にする際、この1以上のルーチンは、代替デバイス224により提供される同じ機能又は類似する機能に関連付けられた動作パラメータ218を使用することができる。PCIeデバイス250がグラフィックスカードを含み、代替デバイス224がプロセッサ回路202の統合されたグラフィックス回路を含む例示的な実施形態において、この1以上のルーチンは、代替デバイス224に関するフレームバッファコンテンツを含む動作パラメータ218を取り出し、PCIeデバイス250を再び有効にする過程で、フレームバッファコンテンツをPCIeデバイス250に転送することができる。いくつかの実施形態において、PCIeデバイス250の再開される動作が開始すると、プロセッサ回路202及び/又はPCU210は、代替デバイス224から電力を除去し、且つ/又は代替デバイス224を無効にするよう動作可能であり得る。実施形態は、このコンテキストにおいて限定されるものではない。
上記実施形態に関する動作が、続く図面及び付随する例を参照してさらに説明され得る。図面の一部は、ロジックフローを含み得る。本明細書で提示されるそのような図面は、特定のロジックフローを含み得るが、そのようなロジックフローは、本明細書に記載の一般的機能をどのように実装できるかの例を提供するに過ぎないことが理解できよう。さらに、所与のロジックフローは、別途明示されない限り、必ずしも提示される順番で実行される必要はない。さらに、所与のロジックフローは、ハードウェア要素、プロセッサにより実行されるソフトウェア要素、又はこれらの任意の組合せにより実装することができる。実施形態は、このコンテキストにおいて限定されるものではない。
図3は、本明細書に記載の1以上の実施形態により実行される動作を表し得るロジックフロー300の一実施形態を示している。より詳細には、ロジックフロー300は、PCIeコントローラ206及び/又はPCIe I/Oモジュール208から電力を除去するためのプロセスとともに図2の装置200及び/又はシステム240において実行され得る動作の例を含み得る。様々な実施形態において、図2のプロセッサ回路202、メモリユニット204、PCIeコントローラ206、PCIe I/Oモジュール208、PCU210、電力ゲート212、装置200、及び/又はシステム240は、ロジックフロー300の動作のうちの1以上を実行するロジックを含み得る。いくつかの実施形態において、ロジックフロー300の動作のうちの1以上を実行するロジックの少なくとも一部はハードウェアであり得る。
ロジックフロー300に示されるように、302において、電力低減トリガが検出され得る。例えば、図2のプロセッサ回路202は、電力低減トリガ214を検出するよう動作可能であり得る。304において、PCIeデバイスに関する動作パラメータが記憶され得る。例えば、図2のプロセッサ回路202は、PCIeデバイス250に関する動作パラメータ218をメモリユニット204に記憶するために、PCIeデバイスドライバ216の1以上のルーチンを呼び出すよう動作可能であり得る。306において、統合されたPCIeコントローラに関する構成情報が記憶され得る。例えば、図2のランタイムBIOS220は、プロセッサ回路202内の統合されたPCIeコントローラ206に関する構成情報222を記憶するよう動作可能であり得る。様々な実施形態において、関連付けられているPCIe I/Oモジュールに関する構成情報も記憶され得る。例えば、図2のランタイムBIOS220は、PCIe I/Oモジュール208に関する構成情報222も記憶するよう動作可能であり得る。
308において、代替デバイスが、PCIeデバイスの代わりに使用されるべき場合、代替デバイスがアクティブ化され得る。例えば、図2の代替デバイス224が、PCIeデバイス250の代わりに使用されるべき場合、プロセッサ回路202及び/又はランタイムBIOS220は、代替デバイス224をアクティブ化するよう動作可能であり得る。いくつかの実施形態においては、PCIeデバイスの代わりに代替デバイスが使用されないこともあり、したがって、動作308は、破線の境界で示されている。310において、統合されたPCIeコントローラが無効にされ得る。例えば、図2のプロセッサ回路202は、PCIeコントローラ206を無効状態に遷移させるよう動作可能であり得る。様々な実施形態において、統合されたPCIeコントローラに関連付けられたPCIe I/Oモジュール208も無効にされ得る。例えば、図2のプロセッサ回路202は、PCIe I/Oモジュール208も無効状態に遷移させるよう動作可能であり得る。
312において、電力除去設定に基づいて、統合されたPCIeコントローラから電力を除去するかどうかが判定され得る。電力が除去されてもよいと電力除去設定が示す場合、電力が、統合されたPCIeコントローラから除去され得る。例えば、図2のPCU210は、PCIeコントローラ206が無効にされたことを検出し、電力がPCIeコントローラ206から除去されてもよいことを示すPCIe_power_gate_allowedビットを電力除去設定226が含んでいると判定し、PCIeコントローラ206から電力を除去するために電力ゲート212を開状態に設定するよう動作可能であり得る。いくつかの実施形態において、電力除去設定に基づいて、統合されたPCIeコントローラに関連付けられたPCIe I/Oモジュールから電力を除去するかどうかも判定され得る。例えば、図2のPCU210は、PCIe_power_gate_allowedビットの値に基づいて、PCIe I/Oモジュール208から電力を除去するために電力ゲート212を開状態に設定するよう動作可能でもあり得る。
314において、電力がPCIeデバイスから除去され得る。例えば、図2のプロセッサ回路202は、PCIeデバイス250が存在するPCIeスロットへの電力供給を止めることにより、PCIeデバイス250から電力を除去するよう動作可能であり得る。様々な実施形態において、PCIeデバイスは、そのPCIeスロットへの電力供給を止めることをサポートしていないマザーボードとインタフェースをとっていることがあり、したがって、PCIeデバイスは、電力が供給された状態のままであることもある。この理由から、動作314は、破線の境界で示されている。実施形態は、上記の例に限定されるものではない。
図4は、本明細書に記載の1以上の実施形態により実行される動作を表し得るロジックフロー400の一実施形態を示している。より詳細には、ロジックフロー400は、PCIeコントローラ206及び/又はPCIe I/Oモジュール208を再び有効にするためのプロセスとともに図2の装置200及び/又はシステム240において実行され得る動作の例を含み得る。いくつかの実施形態において、図2のプロセッサ回路202、メモリユニット204、PCIeコントローラ206、PCIe I/Oモジュール208、PCU210、電力ゲート212、装置200、及び/又はシステム240のうちの1以上は、ロジックフロー400の動作のうちの1以上を実行するロジックを含み得る。様々な実施形態において、ロジックフロー400の動作のうちの1以上を実行するロジックの少なくとも一部はハードウェアであり得る。
ロジックフロー400に示されるように、402において、電力増大トリガが検出され得る。例えば、図2のプロセッサ回路202は、電力増大トリガ228を検出するよう動作可能であり得る。404において、電力が、統合されたPCIeコントローラに供給され得る。例えば、電力増大トリガ228に応じて、図2のPCU210は、PCIeコントローラ206に電力を供給するために電力ゲート212を閉状態に設定するよう動作可能であり得る。いくつかの実施形態において、電力は、統合されたPCIeコントローラに関連付けられたPCIe I/Oモジュールにも供給され得る。例えば、図2のPCU210は、PCIe I/Oモジュール208に電力を供給するために電力ゲート212を閉状態に設定するよう動作可能でもあり得る。
406において、記憶されている構成情報に基づいて、統合されたPCIeコントローラが有効にされ得る。例えば、図2のランタイムBIOS220は、PCIeコントローラ206に関する記憶されている構成情報222を取り出すよう動作可能であり得、プロセッサ回路202は、PCIeコントローラ206に関する構成情報222に基づいて、PCIeコントローラ206を有効にするよう動作可能であり得る。様々な実施形態において、記憶されている構成情報に基づいて、統合されたPCIeコントローラに関連付けられたPCIe I/Oモジュールも有効にされ得る。例えば、図2のランタイムBIOS220は、PCIe I/Oモジュール208に関する記憶されている構成情報222も取り出すよう動作可能であり得、プロセッサ回路202は、PCIe I/Oモジュール208に関する構成情報222に基づいて、PCIe I/Oモジュール208を有効にするように動作可能でもあり得る。408において、統合されたPCIeコントローラにより制御されるPCIeデバイスが、現在電力供給されていない場合、電力がPCIeデバイスに供給され得る。例えば、図2のPCIeデバイス250のPCIeスロットへの電力供給が以前に止められていた場合、プロセッサ回路202は、PCIeスロットへの、したがって、PCIeデバイス250への電力を復旧させるための1以上のドライバルーチンを呼び出すよう動作可能であり得る。いくつかの実施形態において、PCIeデバイスは、すでに電力が供給されている状態であることがあり、したがって、動作408は、破線の境界で示されている。
410において、PCIeデバイスのためのリンクが再トレーニングされ得る。例えば、図2のランタイムBIOS220は、プロセッサ回路202とPCIeデバイス250との間のPCIeリンク251を復旧させるための再トレーニングシーケンスを呼び出すよう動作可能であり得る。412において、PCIeデバイスの動作が復旧され得る。例えば、図2のプロセッサ回路202は、PCIeデバイス250の動作を再び有効にするよう動作可能な、PCIeデバイスドライバ216の1以上のルーチンを呼び出すよう動作可能であり得る。様々な実施形態において、PCIeデバイスの動作は、PCIeデバイスに関する記憶されている動作パラメータに基づいて復旧され得る。例えば、図2のプロセッサ回路202は、PCIeデバイス250に関する記憶されている動作パラメータ218に基づいて、PCIeデバイス250の動作を再び有効にするよう動作可能な、PCIeデバイスドライバ216の1以上のルーチンを呼び出すよう動作可能であり得る。414において、代替デバイスが、PCIeデバイスの代わりに使用されていた場合、代替デバイスが無効にされ得る。例えば、図2の代替デバイス224が、PCIeデバイス250の代わりに使用されていた場合、プロセッサ回路202は、代替デバイス224を無効にするよう動作可能であり得る。いくつかの実施形態において、PCIeデバイス250の代わりに代替デバイスが使用されていないこともあり、したがって、動作414は、破線の境界で示されている。実施形態は、上記の例に限定されるものではない。
図5は、記憶媒体500の一実施形態を示している。記憶媒体500は、光記憶媒体、磁気記憶媒体、又は半導体記憶媒体等の任意の非一時的なコンピュータ読み取り可能な記憶媒体又はマシン読み取り可能な記憶媒体を含み得る。様々な実施形態において、記憶媒体500は、製品を含み得る。いくつかの実施形態において、記憶媒体500は、図3のロジックフロー300及び/又は図4のロジックフロー400を実装するためのコンピュータ実行可能な命令等のコンピュータ実行可能な命令を記憶することができる。コンピュータ読み取り可能な記憶媒体又はマシン読み取り可能な記憶媒体の例は、揮発性メモリ又は不揮発性メモリ、着脱可能なメモリ又は着脱不可能なメモリ、消去可能なメモリ又は消去不可能なメモリ、書き込み可能なメモリ又は再書き込み可能なメモリ等を含め、電子的データを記憶することができる任意の有体の媒体を含み得る。コンピュータ実行可能な命令の例は、ソースコード、コンパイル済みコード、解釈済みコード、実行可能なコード、静的コード、動的コード、オブジェクト指向コード、ビジュアルコード等といった任意の適切なタイプのコードを含み得る。実施形態は、このコンテキストにおいて限定されるものではない。
図6は、システム600の一実施形態を示している。様々な実施形態において、システム600は、図2の装置200及び/若しくはシステム240、図3のロジックフロー300、図4のロジックフロー400、並びに/又は図5の記憶媒体500等の本明細書に記載の1以上の実施形態とともに使用するのに適したシステム又はアーキテクチャを表し得る。実施形態は、この点において限定されるものではない。
図6に示されるように、システム600は、複数の要素を含み得る。1以上の要素は、設計制約又は性能制約の所与のセットに関して必要に応じて、1以上の回路、コンポーネント、レジスタ、プロセッサ、ソフトウェアサブルーチン、モジュール、又はこれらの任意の組合せを用いて実装することができる。図6は、例として、所与のトポロジにおける限定された数の要素を示しているが、所与の実装に関して必要に応じて、任意の適切なトポロジにおけるより多くの要素又はより少ない要素が、システム600において使用されてもよいことが理解できよう。実施形態は、このコンテキストにおいて限定されるものではない。
様々な実施形態において、システム600は、プロセッサ回路602を含み得る。プロセッサ回路602は、任意のプロセッサ又はロジックデバイスを用いて実装することができ、図2のプロセッサ回路202と同じであってもよいし、図2のプロセッサ回路202に類似するものであってもよい。
一実施形態において、システム600は、プロセッサ回路602に結合されるメモリユニット604を含み得る。メモリユニット604は、所与の実装に関して必要に応じて、通信バス643を介してプロセッサ回路602に結合されてもよいし、プロセッサ回路602とメモリユニット604との間の専用通信バスを介してプロセッサ回路602に結合されてもよい。メモリユニット604は、揮発性メモリ及び不揮発性メモリの両方を含め、データを記憶することができる任意のマシン読み取り可能な媒体又はコンピュータ読み取り可能な媒体を用いて実装することができ、図2のメモリユニット204と同じであってもよいし、図2のメモリユニット204に類似するものであってもよい。いくつかの実施形態において、マシン読み取り可能な媒体又はコンピュータ読み取り可能な媒体は、非一時的な媒体を含み得る。実施形態は、このコンテキストにおいて限定されるものではない。
様々な実施形態において、システム600は、無線周波数(RF)トランシーバ644を含み得る。RFトランシーバ644は、様々な適切な無線通信技術を用いて信号を送受信することができる1以上の無線機を含み得る。そのような技術は、1以上の無線ネットワークを介する通信を伴い得る。例示的な無線ネットワークは、無線ローカルエリアネットワーク(WLAN)、無線パーソナルエリアネットワーク(WPAN)、無線メトロポリタンエリアネットワーク(WMAN)、セルラネットワーク、及び衛星ネットワークを含む(が、これらに限定されるものではない)。そのようなネットワークを介する通信において、RFトランシーバ644は、任意のバージョンの1以上の適用可能な規格に従って動作することができる。実施形態は、このコンテキストにおいて限定されるものではない。
様々な実施形態において、システム600は、ディスプレイ645を含み得る。ディスプレイ645は、プロセッサ回路602から受信した情報を表示することができる任意のディスプレイデバイスを含み得る。ディスプレイ645の例は、テレビジョン、モニタ、プロジェクタ、及びコンピュータスクリーンを含み得る。一実施形態において、例えば、ディスプレイ645は、液晶ディスプレイ(LCD)、発光ダイオード(LED)、又は他のタイプの適切なビジュアルインタフェースにより実装することができる。ディスプレイ645は、例えば、タッチ式ディスプレイスクリーン(「タッチスクリーン」)を含み得る。様々な実装において、ディスプレイ645は、埋め込みトランジスタを有する1以上の薄膜トランジスタ(TFT)LCDを含み得る。実施形態は、このコンテキストにおいて限定されるものではない。
様々な実施形態において、システム600は、ストレージ646を含み得る。ストレージ646は、不揮発性記憶デバイスとして実装することができる。そのような不揮発性記憶デバイスとして、例えば、磁気ディスクドライブ、光ディスクドライブ、テープドライブ、内蔵記憶デバイス、外付け記憶デバイス、フラッシュメモリ、バッテリバックアップSDRAM(シンクロナスDRAM)、及び/又はネットワークアクセス可能な記憶デバイスがあるが、これらに限定されるものではない。実施形態において、ストレージ646は、例えば、複数のハードドライブが含まれる場合に、価値のあるデジタルメディアのための記憶性能向上保護を増大させる技術を含み得る。ストレージ646のさらなる例は、ハードディスク、フロッピディスク、コンパクトディスク読み取り専用メモリ(CD−ROM)、コンパクトディスクレコーダブル(CD−R)、コンパクトディスクリライタブル(CD−RW)、光ディスク、磁気媒体、光磁気媒体、着脱可能なメモリカード又はディスク、様々なタイプのDVDデバイス、テープデバイス、カセットデバイス等を含み得る。実施形態は、このコンテキストにおいて限定されるものではない。
様々な実施形態において、システム600は、1以上のI/Oアダプタ647を含み得る。I/Oアダプタ647の例は、ユニバーサルシリアルバス(USB)ポート/アダプタ、IEEE1394 Firewire(登録商標)ポート/アダプタ等を含み得る。実施形態は、このコンテキストにおいて限定されるものではない。
図7は、システム700の一実施形態を示している。様々な実施形態において、システム700は、図2の装置200及び/若しくはシステム240、図3のロジックフロー300、図4のロジックフロー400、図5の記憶媒体500、並びに/又は図6のシステム600等の本明細書に記載の1以上の実施形態とともに使用するのに適したシステム又はアーキテクチャを表し得る。実施形態は、この点において限定されるものではない。
図7に示されるように、システム700は、複数の要素を含み得る。1以上の要素は、設計制約又は性能制約の所与のセットに関して必要に応じて、1以上の回路、コンポーネント、レジスタ、プロセッサ、ソフトウェアサブルーチン、モジュール、又はこれらの任意の組合せを用いて実装することができる。図7は、例として、所与のトポロジにおける限定された数の要素を示しているが、所与の実装に関して必要に応じて、任意の適切なトポロジにおけるより多くの要素又はより少ない要素が、システム700において使用されてもよいことが理解できよう。実施形態は、このコンテキストにおいて限定されるものではない。
実施形態において、システム700は、メディアシステムであり得るが、システム700は、このコンテキストに限定されるものではない。例えば、システム700は、パーソナルコンピュータ(PC)、ラップトップコンピュータ、ウルトララップトップコンピュータ、タブレット、タッチパッド、ポータブルコンピュータ、ハンドヘルドコンピュータ、パームトップコンピュータ、携帯情報端末(PDA)、携帯電話機、携帯電話機/PDAの組合せ、テレビジョン、スマートデバイス(例えば、スマートフォン、スマートタブレット、又はスマートテレビジョン)、モバイルインターネットデバイス(MID)、メッセージングデバイス、データ通信デバイス等に組み込まれてもよい。
実施形態において、システム700は、ディスプレイ745に結合されるプラットフォーム701を含む。プラットフォーム701は、1以上のコンテンツサービスデバイス748、1以上のコンテンツ配信デバイス749、又は他の類似するコンテンツソース等のコンテンツデバイスからコンテンツを受信することができる。1以上のナビゲーション特徴を含むナビゲーションコントローラ750を使用して、例えば、プラットフォーム701及び/又はディスプレイ745とインタラクトすることができる。これらのコンポーネントの各々について、以下でより詳細に説明する。
実施形態において、プラットフォーム701は、プロセッサ回路702、チップセット703、メモリユニット704、トランシーバ744、ストレージ746、アプリケーション751、及び/又はグラフィックスサブシステム752の任意の組合せを含み得る。チップセット703は、プロセッサ回路702、メモリユニット704、トランシーバ744、ストレージ746、アプリケーション751、及び/又はグラフィックスサブシステム752の間の相互通信を提供することができる。例えば、チップセット703は、ストレージ746との相互通信を提供することができるストレージアダプタ(図示せず)を含み得る。
プロセッサ回路702は、任意のプロセッサ又はロジックデバイスを用いて実装することができ、図6におけるプロセッサ回路602と同じであってもよいし、図6におけるプロセッサ回路602に類似するものであってもよい。
メモリユニット704は、データを記憶することができる任意のマシン読み取り可能な媒体又はコンピュータ読み取り可能な媒体を用いて実装することができ、図6におけるメモリユニット604と同じであってもよいし、図6におけるメモリユニット604に類似するものであってもよい。
トランシーバ744は、様々な適切な無線通信技術を用いて信号を送受信することができる1以上の無線機を含み得、図6におけるトランシーバ644と同じであってもよいし、図6におけるトランシーバ644に類似するものであってもよい。
ディスプレイ745は、任意のテレビジョン型モニタ又はディスプレイを含み得、図6におけるディスプレイ645と同じであってもよいし、図6におけるディスプレイ645に類似するものであってもよい。
ストレージ746は、不揮発性記憶デバイスとして実装することができ、図6におけるストレージ646と同じであってもよいし、図6におけるストレージ646に類似するものであってもよい。
グラフィックスサブシステム752は、表示のための静止画又はビデオ等の画像の処理を実行することができる。グラフィックスサブシステム752は、例えば、グラフィックス処理装置(GPU)又はビジュアル処理装置(VPU)であり得る。アナログインタフェース又はデジタルインタフェースを使用して、グラフィックスサブシステム752とディスプレイ745とを通信可能に結合することができる。例えば、このようなインタフェースは、高精細度マルチメディアインタフェース(HDMI(登録商標))、ディスプレイポート、ワイヤレスHDMI(登録商標)、及び/又はワイヤレスHD(登録商標)準拠技術のうちの任意のものであり得る。グラフィックスサブシステム752は、プロセッサ回路702又はチップセット703に統合されてもよい。グラフィックスサブシステム752は、チップセット703に通信可能に結合されるスタンドアロン型カードであってもよい。
本明細書に記載のグラフィックス処理技術及び/又はビデオ処理技術は、様々なハードウェアアーキテクチャにより実装することができる。例えば、グラフィックス機能及び/又はビデオ機能は、チップセット内に統合され得る。代替的に、ディスクリートグラフィックスプロセッサ及び/又はディスクリートビデオプロセッサが使用されてもよい。さらに別の実施形態においては、グラフィックス機能及び/又はビデオ機能は、マルチコアプロセッサを含む汎用プロセッサにより実装されてもよい。さらなる実施形態においては、このような機能は、コンシューマ電子デバイスにおいて実装されてもよい。
実施形態において、1以上のコンテンツサービスデバイス748は、任意の国内サービス、国際サービス、及び/又は独立サービスによりホストされ得、したがって、例えば、インターネットを介してプラットフォーム701によりアクセス可能である。1以上のコンテンツサービスデバイス748は、プラットフォーム701及び/又はディスプレイ745に結合され得る。プラットフォーム701及び/又は1以上のコンテンツサービスデバイス748は、ネットワーク753との間でメディア情報を通信(例えば、送信及び/又は受信)するために、ネットワーク753に結合され得る。1以上のコンテンツ配信デバイス749も、プラットフォーム701及び/又はディスプレイ745に結合され得る。
実施形態において、1以上のコンテンツサービスデバイス748は、ケーブルテレビジョンボックス、パーソナルコンピュータ、ネットワーク、電話機、デジタル情報及び/又はコンテンツを配信することができるインターネット対応デバイス又は機器、及び、ネットワーク753を介して又は直接的にコンテンツプロバイダとプラットフォーム701及び/又はディスプレイ745との間でコンテンツを一方向通信又は双方向通信することができる任意の他の類似するデバイスを含み得る。コンテンツは、ネットワーク753を介して、システム700におけるコンポーネントのうちの任意のコンポーネントとコンテンツプロバイダとの間で一方向及び/又は双方向に通信され得ることが理解されよう。コンテンツの例は、例えば、ビデオ、音楽、医用情報、及びゲーム情報等を含む任意のメディア情報を含み得る。
1以上のコンテンツサービスデバイス748は、メディア情報、デジタル情報、及び/又は他のコンテンツを含む、ケーブルテレビジョンプログラミング等といったコンテンツを受信する。コンテンツプロバイダの例は、任意のケーブルテレビジョン、衛星テレビジョン、ケーブルラジオ、衛星ラジオ、又はインターネットコンテンツプロバイダを含み得る。提供した例は、開示される主題の実施形態を限定するよう意味するものではない。
実施形態において、プラットフォーム701は、1以上のナビゲーション特徴を有するナビゲーションコントローラ750から制御信号を受信することができる。ナビゲーションコントローラ750のナビゲーション特徴を使用して、例えば、ユーザインタフェース754とインタラクトすることができる。実施形態において、ナビゲーションコントローラ750は、ユーザが空間的データ(例えば、連続的な複数次元のデータ)をコンピュータに入力することを可能にするコンピュータハードウェアコンポーネントであり得るポインティングデバイス(具体的には、ヒューマンインタフェースデバイス)であり得る。グラフィカルユーザインタフェース(GUI)、テレビジョン、及びモニタ等の多くのシステムは、ユーザが、身体によるジェスチャを用いて、データを制御しデータをコンピュータ又はテレビジョンに提供することを可能にする。
ナビゲーションコントローラ750のナビゲーション特徴の動きは、ディスプレイ上に表示されるポインタ、カーソル、フォーカスリング、又は他の視覚的インジケータの動きにより、ディスプレイ(例えば、ディスプレイ745)上で繰り返され得る(echoed)。例えば、ソフトウェアアプリケーション751の制御の下では、ナビゲーションコントローラ750上に位置するナビゲーション特徴は、ユーザインタフェース754上に表示される仮想ナビゲーション特徴にマッピングされ得る。実施形態において、ナビゲーションコントローラ750は、プラットフォーム701及び/又はディスプレイ745と別のコンポーネントでなくてもよく、プラットフォーム701及び/又はディスプレイ745に統合されてもよい。しかしながら、実施形態は、図示される又は本明細書に記載の要素に限定されるものではないし、図示される又は本明細書に記載のコンテキストにおいて限定されるものでもない。
実施形態において、ドライバ(図示せず)は、ユーザが、例えば、有効であるときに、初期起動後にボタンにタッチすることにより、テレビジョンのようなプラットフォーム701を瞬間的にオン及びオフすることを可能にする技術を含み得る。プログラムロジックは、プラットフォーム701が「オフ」にされるときに、プラットフォーム701が、コンテンツを、メディアアダプタ、他の1以上のコンテンツサービスデバイス748、又は1以上のコンテンツ配信デバイス749にストリーミングすることを可能にし得る。さらに、チップセット703は、例えば、5.1サラウンドサウンドオーディオ及び/又は高精細度7.1サラウンドサウンドオーディオのためのハードウェアサポート及び/又はソフトウェアサポートを含み得る。ドライバは、統合されたグラフィックスプラットフォームのためのグラフィックスドライバを含み得る。実施形態において、グラフィックスドライバは、周辺コンポーネント相互接続(PCI)エクスプレスグラフィックスカードを含み得る。
様々な実施形態において、システム700における図示されるコンポーネントのうちの任意の1以上のコンポーネントが統合され得る。例えば、プラットフォーム701及び1以上のコンテンツサービスデバイス748が統合されてもよいし、プラットフォーム701及び1以上のコンテンツ配信デバイス749が統合されてもよいし、プラットフォーム701、1以上のコンテンツサービスデバイス748、及び1以上のコンテンツ配信デバイス749が統合されてもよい。様々な実施形態において、プラットフォーム701及びディスプレイ745は、統合されたユニットであり得る。例えば、ディスプレイ745及び1以上のコンテンツサービスデバイス748が統合されてもよいし、ディスプレイ745及び1以上のコンテンツ配信デバイス749が統合されてもよい。これらの例は、開示される主題を限定するよう意味するものではない。
様々な実施形態において、システム700は、無線システム、有線システム、又はこれら両方の組合せとして実装することができる。無線システムとして実装される場合、システム700は、1以上のアンテナ、送信機、受信機、トランシーバ、増幅器、フィルタ、制御ロジック等といった、無線共用媒体を介して通信するのに適したコンポーネント及びインタフェースを含み得る。無線共用媒体の例は、RFスペクトルといった無線スペクトルの一部等を含み得る。有線システムとして実装される場合、システム700は、I/Oアダプタ、I/Oアダプタを対応する有線通信媒体に接続する物理コネクタ、ネットワークインタフェースカード(NIC)、ディスクコントローラ、ビデオコントローラ、オーディオコントローラ等といった、有線通信媒体を介して通信するのに適したコンポーネント及びインタフェースを含み得る。有線通信媒体の例は、ワイヤ、ケーブル、金属リード、プリント回路基板(PCB)、バックプレーン、スイッチファブリック、半導体材料、ツイストペアワイヤ、同軸ケーブル、光ファイバ等を含み得る。
プラットフォーム701は、情報を通信するための1以上の論理チャネル又は物理チャネルを確立することができる。情報は、メディア情報及び制御情報を含み得る。メディア情報は、ユーザのために意図されるコンテンツを表す任意のデータを指し得る。コンテンツの例は、例えば、音声会話からのデータ、ビデオ会議、ストリーミングビデオ、電子メール(「email」)メッセージ、音声メールメッセージ、英数字記号、図形、画像、ビデオ、テキスト等を含み得る。音声会話からのデータは、例えば、スピーチ情報、無音期間、背景雑音、快適雑音、トーン等であり得る。制御情報は、自動化システムのために意図されるコマンド、命令、又は制御語を表す任意のデータを指し得る。例えば、制御情報を使用して、予め定められたように、システムを介してメディア情報をルーティングすることもできるし、メディア情報を処理するようノードに命令することもできる。しかしながら、実施形態は、図7に示される又は説明される要素に限定されるものではないし、図7に示される又は説明されるコンテキストにおいて限定されるものでもない。
上述したように、システム700は、変化する物理的スタイル又はフォームファクタで具現化され得る。図8は、システム700を具現化することができるスモールフォームファクタデバイス800の実施形態を示している。実施形態において、例えば、デバイス800は、無線機能を有するモバイルコンピューティングデバイスとして実装することができる。モバイルコンピューティングデバイスは、処理システムと、例えば、1以上のバッテリ等のモバイル電源と、を有する任意のデバイスを指し得る。
上述したように、モバイルコンピューティングデバイスの例は、パーソナルコンピュータ(PC)、ラップトップコンピュータ、ウルトララップトップコンピュータ、タブレット、タッチパッド、ポータブルコンピュータ、ハンドヘルドコンピュータ、パームトップコンピュータ、携帯情報端末(PDA)、携帯電話機、携帯電話機/PDAの組合せ、テレビジョン、スマートデバイス(例えば、スマートフォン、スマートタブレット、又はスマートテレビジョン)、モバイルインターネットデバイス(MID)、メッセージングデバイス、データ通信デバイス等を含み得る。
モバイルコンピューティングデバイスの例はまた、手首装着型コンピュータ、指装着型コンピュータ、リングコンピュータ、眼鏡型コンピュータ、ベルトクリップコンピュータ、腕装着型コンピュータ、靴装着型コンピュータ、衣類装着型コンピュータ、及び他のウェアラブルコンピュータ等の、人により装着されるよう構成されたコンピュータを含み得る。実施形態において、例えば、モバイルコンピューティングデバイスは、コンピュータアプリケーションに加えて、音声通信及び/又はデータ通信を実行することができるスマートフォンとして実装することができる。いくつかの実施形態は、例えば、スマートフォンとして実装されたモバイルコンピューティングデバイスを有するものとして説明され得るが、他の実施形態は、他の無線モバイルコンピューティングデバイスを用いて実装されてもよいことが理解できよう。実施形態は、このコンテキストにおいて限定されるものではない。
図8に示されるように、デバイス800は、ディスプレイ845、ナビゲーションコントローラ850、ユーザインタフェース854、筐体855、I/Oデバイス856、及びアンテナ857を含み得る。ディスプレイ845は、モバイルコンピューティングデバイスに適した情報を表示するための任意の適切なディスプレイユニットを含み得、図7におけるディスプレイ745と同じであってもよいし、図7におけるディスプレイ745に類似するものであってもよい。ナビゲーションコントローラ850は、ユーザインタフェース854とインタラクトするために使用することができる1以上のナビゲーション特徴を含み得、図7におけるナビゲーションコントローラ750と同じであってもよいし、図7におけるナビゲーションコントローラ750に類似するものであってもよい。I/Oデバイス856は、情報をモバイルコンピューティングデバイスに入力するための任意の適切なI/Oデバイスを含み得る。I/Oデバイス856の例は、英数字キーボード、数字キーパッド、タッチパッド、入力キー、ボタン、スイッチ、ロッカースイッチ、マイクロフォン、スピーカ、音声認識デバイス及び音声認識ソフトウェア等を含み得る。情報はまた、マイクロフォンを介してデバイス800に入力され得る。そのような情報は、音声認識デバイスによりデジタル化され得る。実施形態は、このコンテキストにおいて限定されるものではない。
様々な実施形態は、ハードウェア要素、ソフトウェア要素、又はこれら両方の組合せとして実装することができる。ハードウェア要素の例は、プロセッサ、マイクロプロセッサ、回路、回路素子(例えば、トランジスタ、レジスタ、キャパシタ、インダクタ等)、集積回路、特定用途向け集積回路(ASIC)、プログラマブルロジックデバイス(PLD)、デジタル信号プロセッサ(DSP)、フィールドプログラマブルゲートアレイ(FPGA)、ロジックゲート、レジスタ、半導体デバイス、チップ、マイクロチップ、チップセット等を含み得る。ソフトウェアの例は、ソフトウェアコンポーネント、プログラム、アプリケーション、コンピュータプログラム、アプリケーションプログラム、システムプログラム、マシンプログラム、オペレーティングシステムソフトウェア、ミドルウェア、ファームウェア、ソフトウェアモジュール、ルーチン、サブルーチン、ファンクション、メソッド、プロシージャ、ソフトウェアインタフェース、アプリケーションプログラムインタフェース(API)、命令セット、コンピューティングコード、コンピュータコード、コードセグメント、コンピュータコードセグメント、ワード、値、シンボル、又はこれらの任意の組合せを含み得る。実施形態がハードウェア要素及び/又はソフトウェア要素を用いて実装されるかの決定は、所望の計算速度、電力レベル、熱耐性、処理サイクルバジェット、入力データ速度、出力データ速度、メモリリソース、データバス速度、及び他の設計制約又は性能制約等の任意の数のファクタに応じて変わり得る。
少なくとも1つの実施形態の1以上の態様は、プロセッサ内の様々なロジックを表現する、マシン読み取り可能な媒体に記憶される表現命令により実装され得る。この命令が、マシンにより読み出されたときに、この命令は、マシンに、本明細書に記載の技術を実行するロジックを製造させる。「IPコア」として知られているそのような表現は、有体のマシン読み取り可能な媒体に記憶され得、ロジック又はプロセッサを実際に製造する製造マシンにロードするために、様々な顧客又は製造施設に提供され得る。いくつかの実施形態は、例えば、命令又は命令セットを記憶することができるマシン読み取り可能な媒体又は製品を用いて実装され得る。そのような命令又は命令セットが、マシンにより実行されたときに、そのような命令又は命令セットは、マシンに、実施形態に従った方法及び/又は動作を実行させることができる。そのようなマシンは、例えば、任意の適切な処理プラットフォーム、コンピューティングプラットフォーム、コンピューティングデバイス、処理デバイス、コンピューティングシステム、処理システム、コンピュータ、プロセッサ等を含み得、ハードウェア及び/又はソフトウェアの任意の適切な組合せを用いて実装され得る。マシン読み取り可能な媒体又は製品は、例えば、任意の適切なタイプのメモリユニット、メモリデバイス、メモリ製品、メモリ媒体、記憶デバイス、ストレージ製品、記憶媒体、及び/又は記憶ユニットを含み得、例えば、メモリ、着脱可能な媒体又は着脱不可能な媒体、消去可能な媒体又は消去不可能な媒体、書き込み可能な媒体又は再書き込み可能な媒体、デジタル媒体又はアナログ媒体、ハードディスク、フロッピディスク、コンパクトディスク読み取り専用メモリ(CD−ROM)、コンパクトディスクレコーダブル(CD−R)、コンパクトディスクリライタブル(CD−RW)、光ディスク、磁気媒体、光磁気媒体、着脱可能なメモリカード又はディスク、様々なタイプのデジタル多用途ディスク(DVD)、テープ、カセット等を含み得る。命令は、任意の適切な高水準プログラミング言語、低水準プログラミング言語、オブジェクト指向プログラミング言語、ビジュアルプログラミング言語、コンパイル型プログラミング言語、及び/又はインタプリタ型プログラミング言語を用いて実装される、ソースコード、コンパイル済みコード、解釈済みコード、実行可能なコード、静的コード、動的コード、暗号化コード等といった任意の適切なタイプのコードを含み得る。
以下の例は、さらなる実施形態に関する。
例1は、統合された周辺コンポーネント相互接続エクスプレス(PCIe)コントローラと、少なくとも一部がハードウェアであるロジックであって、電力低減トリガを検出し、前記統合されたPCIeコントローラを無効にし、前記統合されたPCIeコントローラに関する電力除去設定に基づいて、前記統合されたPCIeコントローラから電力を除去するロジックと、を備えたプロセッサ回路である。
例2において、例1のプロセッサ回路は、任意的に、前記統合されたPCIeコントローラに関する構成情報を記憶するロジックを備えてもよい。
例3において、例1又は2のプロセッサ回路は、任意的に、前記統合されたPCIeコントローラのための電力ゲートを開状態に設定することにより、前記統合されたPCIeコンポーネントから電力を除去するロジックを備えてもよい。
例4において、例1〜3のいずれか1つの例の電力低減トリガは、任意的に、外部電源への接続が解除されていることを示してもよい。
例5において、例1〜4のいずれか1つの例のプロセッサ回路は、任意的に、PCIeリンクを介して前記プロセッサ回路と通信するPCIeグラフィックスカードを無効にして、前記プロセッサ回路の統合されたグラフィックス回路をアクティブ化するロジックを備えてもよい。
例6において、例1〜5のいずれか1つの例の電力除去設定は、任意的に、初期ブートシーケンス中に基本入出力システム(BIOS)により設定されたビットを含んでもよい。
例7において、例1〜6のいずれか1つの例のプロセッサ回路は、任意的に、前記統合されたPCIeコントローラから電力を除去した後に、前記プロセッサ回路をより低い電力状態に遷移させるロジックを備えてもよい。
例8において、例1〜7のいずれか1つの例のプロセッサ回路は、任意的に、PCIe入力/出力(I/O)モジュールを備えてもよく、前記ロジックは、任意的に、前記PCI I/Oモジュールを無効にしてもよい。
例9において、例8のプロセッサ回路は、任意的に、電力が前記PCIe I/Oモジュールから除去されてもよいと前記電力除去設定が示す場合に、前記PCIe I/Oモジュールから電力を除去し、電力が前記PCIe I/Oモジュールから除去されなくてもよいと前記電力除去設定が示す場合に、前記PCIe I/Oモジュールを低電力状態に置くロジックを備えてもよい。
例10は、PCIeリンクを制御するための統合された周辺コンポーネント相互接続エクスプレス(PCIe)コントローラを備えたプロセッサ回路と、統合されたデバイスと、少なくとも一部がハードウェアであるロジックであって、電力低減トリガを検出し、前記統合されたデバイスをアクティブ化し、前記統合されたPCIeコントローラを無効にし、前記統合されたPCIeコントローラに関する電力除去設定に基づいて、前記統合されたPCIeコントローラから電力を除去するロジックと、を備えたコンピューティングデバイスである。
例11において、例10のコンピューティングデバイスは、任意的に、メモリユニットを備えてもよく、前記ロジックは、任意的に、前記統合されたPCIeコントローラに関する構成情報を前記メモリユニットに記憶してもよい。
例12において、例10又は11のコンピューティングデバイスは、任意的に、前記統合されたPCIeコントローラのための電力ゲートを開状態に設定することにより、前記統合されたPCIeコンポーネントから電力を除去するロジックを備えてもよい。
例13において、例10〜12のいずれか1つの例の電力低減トリガは、任意的に、外部電源への接続が解除されていることを示してもよい。
例14において、例10〜13のいずれか1つの例のプロセッサ回路は、任意的に、前記PCIeリンクを介してPCIeデバイスと通信してもよく、前記ロジックは、任意的に、前記PCIeデバイスを無効にして、前記統合されたデバイスをアクティブ化してもよい。
例15において、例10〜14のいずれか1つの例の電力除去設定は、任意的に、初期ブートシーケンス中に基本入出力システム(BIOS)により設定されたビットを含んでもよい。
例16において、例10〜15のいずれか1つの例のコンピューティングデバイスは、任意的に、前記統合されたPCIeコントローラから電力を除去した後に、前記プロセッサ回路をより低い電力状態に遷移させるロジックを備えてもよい。
例17において、例10〜16のいずれか1つの例のプロセッサ回路は、任意的に、PCIe入力/出力(I/O)モジュールを備えてもよく、前記ロジックは、任意的に、前記PCI I/Oモジュールを無効にしてもよい。
例18において、例17のコンピューティングデバイスは、任意的に、電力が前記PCIe I/Oモジュールから除去されてもよいと前記電力除去設定が示す場合に、前記PCIe I/Oモジュールから電力を除去し、電力が前記PCIe I/Oモジュールから除去されなくてもよいと前記電力除去設定が示す場合に、前記PCIe I/Oモジュールを低電力状態に置くロジックを備えてもよい。
例19は、例10〜18のいずれか1つの例のコンピューティングデバイスと、ディスプレイと、1以上のRFトランシーバと、を備えたシステムである。
例20は、電力制御命令のセットを含む少なくとも1つのマシン読み取り可能な媒体であって、前記電力制御命令が、コンピューティングデバイス上で実行されたことに応じて、前記電力制御命令のセットは、前記コンピューティングデバイスに、電力低減トリガを検出させ、プロセッサ回路の統合された周辺コンポーネント相互接続エクスプレス(PCIe)コントローラを無効にさせ、前記統合されたPCIeコントローラに関する電力除去設定に基づいて、前記統合されたPCIeコントローラから電力を除去させる、少なくとも1つのマシン読み取り可能な媒体である。
例21において、例20の少なくとも1つのマシン読み取り可能な媒体は、任意的に、前記コンピューティングデバイス上で実行されたことに応じて、前記コンピューティングデバイスに、前記統合されたPCIeコントローラに関する構成情報をメモリユニットに記憶させる電力制御命令を含んでもよい。
例22において、例20又は21の少なくとも1つのマシン読み取り可能な媒体は、任意的に、前記コンピューティングデバイス上で実行されたことに応じて、前記コンピューティングデバイスに、前記統合されたPCIeコントローラのための電力ゲートを開状態に設定することにより、前記統合されたPCIeコントローラから電力を除去させる電力制御命令を含んでもよい。
例23において、例20〜22のいずれか1つの例の電力低減トリガは、任意的に、外部電源への前記コンピューティングデバイスの接続が解除されていることを示してもよい。
例24において、例20〜23のいずれか1つの例の少なくとも1つのマシン読み取り可能な媒体は、任意的に、前記コンピューティングデバイス上で実行されたことに応じて、前記コンピューティングデバイスに、PCIeリンクを介して前記プロセッサ回路と通信するPCIeグラフィックスカードを無効にさせて、前記プロセッサ回路の統合されたグラフィックス回路をアクティブ化させる電力制御命令を含んでもよい。
例25において、例20〜24のいずれか1つの例の電力除去設定は、任意的に、前記コンピューティングデバイスの初期ブートシーケンス中に基本入出力システム(BIOS)により設定されたビットを含んでもよい。
例26において、例20〜25のいずれか1つの例の少なくとも1つのマシン読み取り可能な媒体は、任意的に、前記コンピューティングデバイス上で実行されたことに応じて、前記コンピューティングデバイスに、前記統合されたPCIeコントローラから電力を除去した後に、前記プロセッサ回路をより低い電力状態に遷移させる電力制御命令を含んでもよい。
例27において、例20〜26のいずれか1つの例の少なくとも1つのマシン読み取り可能な媒体は、任意的に、前記コンピューティングデバイス上で実行されたことに応じて、前記コンピューティングデバイスに、PCI入力/出力(I/O)モジュールを無効にさせる電力制御命令を含んでもよい。
例28において、例27の少なくとも1つのマシン読み取り可能な媒体は、任意的に、前記コンピューティングデバイス上で実行されたことに応じて、前記コンピューティングデバイスに、電力が前記PCIe I/Oモジュールから除去されてもよいと前記電力除去設定が示す場合に、前記PCIe I/Oモジュールから電力を除去させ、電力が前記PCIe I/Oモジュールから除去されなくてもよいと前記電力除去設定が示す場合に、前記PCIe I/Oモジュールを低電力状態に置かせる電力制御命令を含んでもよい。
例29は、プロセッサ回路により、電力低減トリガを検出するステップと、前記プロセッサ回路の統合された周辺コンポーネント相互接続エクスプレス(PCIe)コントローラを無効にするステップと、前記統合されたPCIeコントローラに関する電力除去設定に基づいて、前記統合されたPCIeコントローラから電力を除去するステップと、を含む電力制御方法である。
例30において、例29の電力制御方法は、任意的に、前記統合されたPCIeコントローラに関する構成情報をメモリユニットに記憶するステップを含んでもよい。
例31において、例29又は30の電力制御方法は、任意的に、前記統合されたPCIeコントローラのための電力ゲートを開状態に設定することにより、前記統合されたPCIeコンポーネントから電力を除去するステップを含んでもよい。
例32において、例29〜31のいずれか1つの例の電力低減トリガは、任意的に、外部電源への接続が解除されていることを示してもよい。
例33において、例29〜32のいずれか1つの例の電力制御方法は、任意的に、PCIeリンクを介して前記プロセッサ回路と通信するPCIeグラフィックスカードを無効にして、前記プロセッサ回路の統合されたグラフィックス回路をアクティブ化するステップを含んでもよい。
例34において、例29〜33のいずれか1つの例の電力除去設定は、任意的に、コンピューティングデバイスの初期ブートシーケンス中に基本入出力システム(BIOS)により設定されたビットを含んでもよい。
例35において、例29〜34のいずれか1つの例の電力制御方法は、任意的に、前記統合されたPCIeコントローラから電力を除去した後に、前記プロセッサ回路をより低い電力状態に遷移させるステップを含んでもよい。
例36において、例29〜35のいずれか1つの例の電力制御方法は、任意的に、PCIe入力/出力(I/O)モジュールを無効にするステップを含んでもよい。
例37において、例36の電力制御方法は、任意的に、電力が前記PCIe I/Oモジュールから除去されてもよいと前記電力除去設定が示す場合に、前記PCIe I/Oモジュールから電力を除去するステップと、電力が前記PCIe I/Oモジュールから除去されなくてもよいと前記電力除去設定が示す場合に、前記PCIe I/Oモジュールを低電力状態に置くステップと、を含んでもよい。
例38は、例29〜37のいずれか1つの例の電力制御方法を実行する手段を備えた装置である。
例39は、例38の装置と、ディスプレイと、を備えたシステムである。
例40は、例38の装置と、1以上の無線周波数(RF)トランシーバと、を備えたシステムである。
例41は、例29〜37のいずれか1つの例の電力制御方法を実行するよう構成されている通信デバイスである。
例42は、電力低減トリガを検出する手段と、プロセッサ回路の統合された周辺コンポーネント相互接続エクスプレス(PCIe)コントローラを無効にする手段と、前記統合されたPCIeコントローラに関する電力除去設定に基づいて、前記統合されたPCIeコントローラから電力を除去する手段と、を備えたコンピューティングデバイスである。
例43において、例42のコンピューティングデバイスは、任意的に、前記統合されたPCIeコントローラに関する構成情報を記憶する手段を備えてもよい。
例44において、例42又は43のコンピューティングデバイスは、任意的に、前記統合されたPCIeコントローラのための電力ゲートを開状態に設定することにより、前記統合されたPCIeコンポーネントから電力を除去する手段を備えてもよい。
例45において、例42〜44のいずれか1つの例の電力低減トリガは、任意的に、外部電源への接続が解除されていることを示してもよい。
例46において、例42〜45のいずれか1つ例のコンピューティングデバイスは、任意的に、PCIeリンクを介して前記プロセッサ回路と通信するPCIeグラフィックスカードを無効にして、前記プロセッサ回路の統合されたグラフィックス回路をアクティブ化する手段を備えてもよい。
例47において、例42〜46のいずれか1つの例の電力除去設定は、任意的に、コンピューティングデバイスの初期ブートシーケンス中に基本入出力システム(BIOS)により設定されたビットを含んでもよい。
例48において、例42〜47のいずれか1つの例のコンピューティングデバイスは、任意的に、前記統合されたPCIeコントローラから電力を除去した後に、前記プロセッサ回路をより低い電力状態に遷移させる手段を備えてもよい。
例49において、例42〜48のいずれか1つ例のコンピューティングデバイスは、任意的に、PCIe入力/出力(I/O)モジュールを無効にする手段を備えてもよい。
例50において、例49のコンピューティングデバイスは、任意的に、電力が前記PCIe I/Oモジュールから除去されてもよいと前記電力除去設定が示す場合に、前記PCIe I/Oモジュールから電力を除去する手段と、電力が前記PCIe I/Oモジュールから除去されなくてもよいと前記電力除去設定が示す場合に、前記PCIe I/Oモジュールを低電力状態に置く手段と、を備えてもよい。
実施形態の完全な理解を提供するために、本明細書において多数の具体的な詳細が記載されている。しかしながら、実施形態は、これら具体的な詳細がなくとも実施できることが当業者には理解されよう。他の例においては、実施形態を曖昧にしないように、周知の動作、コンポーネント、及び回路は、詳細には記載されていない。本明細書で開示した具体的な構造的詳細及び機能的詳細は、代表的なものであり得、必ずしも実施形態の範囲を限定するものではないことが理解できよう。
いくつかの実施形態は、「結合された」及び「接続された」という用語とともにそれらの派生用語を用いて説明されているかもしれない。これらの用語は、互いに対する同義語として意図されるものではない。例えば、いくつかの実施形態は、2以上の要素が、互いに直接的に物理的に接触している又は互いに直接的に電気的に接触していることを示すために、「結合された」及び/又は「接続された」という用語を用いて説明されているかもしれない。しかしながら、「結合された」という用語は、2以上の要素が、互いに直接的に接触してはいないが、それでも互いと協働している又は互いとインタラクトしていることも意味し得る。
別途明示されない限り、「処理する」、「計算する」、「算出する」、「判定する」等の用語は、コンピューティングシステムのレジスタ及び/又はメモリ内の(例えば、電子的な)物理量として表されたデータを、コンピューティングシステムのレジスタ、メモリ、又は、他のそのような情報記憶デバイス、情報伝送デバイス、若しくは情報表示デバイス内の物理量として同様に表される他のデータに操作及び/又は変換する、コンピュータ、コンピューティングシステム、又は同様の電子コンピューティングデバイスの動作及び/又は処理を指すことが理解できよう。実施形態は、このコンテキストにおいて限定されるものではない。
本明細書に記載の方法は、説明した順番又は任意の特定の順番で実行される必要はないことに留意すべきである。さらに、本明細書で特定される方法に関して説明した様々な動作は、順次的に実行されてもよいし、並列に実行されてもよい。
特定の実施形態を図示し本明細書で説明したが、同じ目的を達成することが意図される任意の構成が、例示した特定の実施形態の代わりに使用されてもよいことを理解すべきである。本開示は、様々な実施形態のありとあらゆる適応形態又は変形形態を網羅することが意図されている。上記説明は、限定的なものではなく例示的なものとしてなされていることを理解されたい。上記実施形態の組合せ、及び本明細書で具体的に説明していない他の実施形態も、上記説明を検討すれば、当業者には明らかであろう。したがって、様々な実施形態の範囲は、上記構成、構造、及び方法が使用される任意の他の応用を含む。
読者が技術的な開示内容の本質を迅速に確認できるようにする要約を求める37C.F.Rセクション1.72(b)に従うよう本開示の要約が提供されていることを強調する。請求項の範囲又は意味を限定又は解釈するためには使用されないという理解の下で、要約は提出されている。さらに、上記の発明を実施するための形態において、様々な特徴が、本開示を簡素化するために、単一の実施形態に一緒にグループ化されていることが理解できよう。開示の本方法は、特許請求される実施形態が、各請求項において明示的に記載されるものよりも多くの特徴を必要とするという意図を示すものとして解釈されるべきでない。そうではなく、請求項が示すように、創造的な主題は、単一の開示した実施形態の全ての特徴よりも少ない特徴を含む。したがって、請求項は、発明を実施するための形態に組み込まれ、各請求項は、それ自身、別々の好ましい実施形態として独立している。特許請求の範囲において、「including(含む、有する、備える)」及び「in which(ここで)」という用語はそれぞれ、「comprising(含む、有する、備える)」及び「wherein(ここで)」という用語のわかりやすい英語の均等語として使用されている。さらに、「第1の」、「第2の」、及び「第3の」等の用語は、単にラベルとして使用されており、その対象に対して数字的な要件を課すことを意図するものではない。
構造的特徴及び/又は方法論的動作に特有の言葉で主題について説明したが、特許請求の範囲において定められる主題は、上述した特定の特徴又は動作に必ずしも限定されないことを理解すべきである。そうではなく、上述した特定の特徴及び動作は、請求項を実施する例示的な形態として開示されている。