(57)【要約】  リンクをコントロールするための方法が提供される。本方法は、リンクに対して接続されている第１デバイスの状態を判断するステップと、第１デバイスにおいて、リンクに対して接続されている第２デバイスから所定のリンク状態に対する要求を受信するステップと、第１デバイスの判断された状態に基づいてリンクの電力状態を決定するステップ  を含む。
2018501576.tif 000002
【特許請求の範囲】
【請求項１】
リンクをコントロールする方法であって、
前記リンクに対して接続されている第１デバイスの状態を判断するステップと、
前記第１デバイスにおいて、前記リンクに対して接続されている第２デバイスから所定のリンク状態に対する要求を受信するステップと、
前記第１デバイスの判断された状態に基づいて、前記リンクの電力状態を決定するステップと、
を含む、方法。
【請求項２】
前記第１デバイスの状態を判断するステップは、前記第１デバイスのアイドル状態を判断するステップ、
を含む、請求項１に記載の方法。
【請求項３】
前記電力状態を決定するステップは、前記第１デバイスの判断されたアイドル状態に基づいて、前記リンクの電源オフ状態を決定するステップ、
を含む、請求項２に記載の方法。
【請求項４】
前記第１デバイスの状態を判断するステップは、前記第１デバイスに係る少なくとも一つのコンポーネントのアクティブ状態を判断するステップ、
を含む、請求項１に記載の方法。
【請求項５】
前記電力状態を決定するステップは、前記第１デバイスに係る少なくとも一つのコンポーネントの判断されたアクティブ状態に基づいて、前記リンクの電源オン状態を決定するステップ、
を含む、請求項４に記載の方法。
【請求項６】
前記リンクは、ペリフェラルコンポーネントインターコネクトエクスプレス（ＰＣＩｅ）リンクである、
請求項１乃至５いずれか一項に記載の方法。
【請求項７】
前記方法は、さらに、
前記リンクの決定された電力状態に基づいて、前記リンクに対する電源をコントロールするステップ、
を含む、請求項６に記載の方法。
【請求項８】
第１デバイスと、
第２デバイスと、
前記第１デバイスと前記第２デバイスとの間のリンクであり、
前記第１デバイスは、前記第１デバイスの状態を判断し、かつ、前記第１デバイスの判断された状態に基づいて、前記リンクの電力状態を決定する、
リンクと、
を含む、電子システム。
【請求項９】
前記第１デバイスは、前記第１デバイスのアイドル状態を判断する、
請求項８に記載の電子システム。
【請求項１０】
前記第１デバイスは、前記第１デバイスの判断されたアイドル状態に基づいて、前記リンクの電源オフ状態を決定する、
請求項９に記載の電子システム。
【請求項１１】
前記第１デバイスは、前記第１デバイスに係る少なくとも一つのコンポーネントのアクティブ状態を判断する、
請求項８に記載の電子システム。
【請求項１２】
前記第１デバイスは、前記第１デバイスに係る少なくとも一つのコンポーネントの判断されたアクティブ状態に基づいて、前記リンクの電源オン状態を決定する、
請求項１１に記載の電子システム。
【請求項１３】
前記リンクは、前記第１デバイスと前記第２デバイスとの間のペリフェラルコンポーネントインターコネクトエクスプレス（ＰＣＩｅ）リンクである、
請求項８乃至１２いずれか一項に記載の電子システム。
【請求項１４】
リンクを有するシステムであって、
前記リンクに対して接続されている第１デバイスの状態を判断するための手段と、
前記第１デバイスにおいて、前記リンクに対して接続されている第２デバイスから所定のリンク状態に対する要求を受信するための手段と、
前記第１デバイスの判断された状態に基づいて、前記リンクの電力状態を決定するための手段と、
を含む、システム。
【請求項１５】
前記状態を判断するための手段は、前記第１デバイスのアイドル状態を判断する、
請求項１４に記載のシステム。
【請求項１６】
前記電力状態を決定するための手段は、前記第１デバイスの判断されたアイドル状態に基づいて、前記リンクの電源オフ状態を決定する、
請求項１５に記載のシステム。
【請求項１７】
前記リンクは、ペリフェラルコンポーネントインターコネクトエクスプレス（ＰＣＩｅ）リンクである、
請求項１４乃至１６いずれか一項に記載のシステム。
【請求項１８】
第１デバイスの状態を判断する第１ロジックであり、前記第１ロジックの少なくとも一部はハードウェアである、第１ロジックと、
前記第１デバイスの判断された状態に基づいて、リンクの電力状態を決定する第２ロジックであり、前記第２ロジックの少なくとも一部はハードウェアである、第２ロジックと、
を含む、電子装置。
【請求項１９】
前記第１ロジックは、前記第１デバイスのアイドル状態を判断する、
請求項１８に記載の電子装置。
【請求項２０】
前記第２ロジックは、前記第１デバイスの判断されたアイドル状態に基づいて、前記リンクの電源オフ状態を決定する、
請求項１９に記載の電子装置。
【請求項２１】
前記リンクは、ペリフェラルコンポーネントインターコネクトエクスプレス（ＰＣＩｅ）リンクである、
請求項１８乃至２０いずれか一項に記載の電子装置。
【請求項２２】
一つまたはそれ以上のインストラクションを含むコンピュータプログラムであって、インストラクションが実行されるとプロセッサに、一つまたはそれ以上のオペレーションを実行させ、
リンクに対して接続されている第１デバイスの状態を判断し、かつ、
前記第１デバイスの判断された状態に基づいて、前記リンクの電力状態を決定する、
コンピュータプログラム。
【請求項２３】
前記一つまたはそれ以上のオペレーションは、前記第１デバイスのアイドル状態を判断すること、を含む、
請求項２２に記載のコンピュータプログラム。
【請求項２４】
前記一つまたはそれ以上のオペレーションは、前記第１デバイスの判断されたアイドル状態に基づいて、前記リンクの電源オフ状態を決定すること、を含む、
請求項２３に記載のコンピュータプログラム。
【請求項２５】
前記リンクは、ペリフェラルコンポーネントインターコネクトエクスプレス（ＰＣＩｅ）リンクである、
請求項２２乃至２４いずれか一項に記載のコンピュータプログラム。
【請求項２６】
請求項２２乃至２５いずれか一項に記載のコンピュータプログラムを記憶した、コンピュータ読取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
実施例は、リンクの電力状態、及び/又は、リンクの電力管理に関する。
【背景技術】
【０００２】
ネットワークシステム、コンピュータシステム、およびモバイル端末といった、電子システムは、様々な目的のために相互に通信するコンポーネントで構成されてよい。通信は、ペリフェラルコンポーネントインターコネクト（ＰＣＩ）またはペリフェラルコンポーネントインターコネクトエクスプレス（ＰＣＩｅ）を使用して提供されてよい。コンポーネントを相互接続（ｉｎｔｅｒｃｏｎｎｅｃｔ）するリンクは、データを転送するためのメカニズムを提供し得る。一つの例として、ＰＣＩエクスプレス（ＰＣＩｅ）は、各ＰＣＩｅデバイスをホストデバイス（別のＰＣＩｅデバイスといったもの）に対して接続している個別のシリアルリンクを用いて、ポイントツーポイントトポロジ（ｐｏｉｎｔ−ｔｏ−ｐｏｉｎｔ  ｔｏｐｏｌｏｇｙ）に基づく高速シリアル拡張バス標準である。
【図面の簡単な説明】
【０００３】
以下の図面を参照して、構成および実施例が詳細に説明され得る。そこでは、同様な参照番号は同様なエレメントを参照している。
【図１】図１は、一つの構成例に従って、（時間にわたる）プロセッサの動作状態と（時間にわたる）ＰＣＩｅリンクの動作状態を示しているグラフである。
【図２】図２は、一つの構成例に従って、（時間にわたる）プロセッサの動作状態と（時間にわたる）ＰＣＩｅリンクの動作状態を示しているグラフである。
【図３Ａ】図３Ａは、一つの実施例に従って、電子システムを示している。
【図３Ｂ】図３Ｂは、一つの実施例に従って、システムオンチップを示している。
【図４】図４は、一つの実施例に従って、リンク電力管理オペレーションを示しているフローチャートである。
【図５】図５は、一つの実施例に従って、リンク電力管理オペレーションを示しているフローチャートである。
【図６】図６は、一つの実施例に従って、電子システムを示している。
【発明を実施するための形態】
【０００４】
以下の詳細な説明において、同様な数字および文字は、異なる図面における同一の、対応する、及び／又は、類似のコンポーネントを示すために使用されてよい。さらに、以下の詳細な説明においては、サイズ／モデル／値／範囲の例が与えられ得るが、実施例は、同一のものに限定されない。実施例を説明するために特定の詳細が明らかにされる場合、当業者にとっては、実施例がこれらの特定な詳細なしで実施され得ることが明らかである。
【０００５】
実施例が、２つのＰＣＩｅデバイス間のＰＣＩｅリンクに関して説明され得る。ＰＣＩｅデバイスは、ＰＣＩｅエンドポイント、スイッチデバイス、ＰＣＩｅルートコンプレクスデバイス、等であってよい。以下において、ＰＣＩｅリンクは、プロセッサ（つまり、アップストリーム（upstream）デバイス）とダウンストリーム（downstream）デバイスとの間にあるものとして説明され得る。他のタイプのリンク及び／又はデバイスも、また、提供され得る。
【０００６】
実施例は、電子システム及び／又は電子デバイスに対して適用可能であり得る。電子システム及び／又は電子デバイスは、モバイル端末、モバイルデバイス、モバイルコンピューティングプラットフォーム、モバイルプラットフォーム、サーバー、ラップトップコンピュータ、タブレット、ウルトラモバイルパーソナルコンピュータ、モバイルインターネットデバイス、スマートフォン、パーソナルデジタルアシスタント、ディスプレイ装置、テレビジョン（ＴＶ）等のうち一つであってよい。
【０００７】
実施例は、プラットフォームとしても参照される、電子システム及び／又は電子デバイスに関し得る。プラットフォームは、ハードウェアとソフトウェアを含んでよい。プロセッサは、プラットフォームのコンポーネントであり得る。
【０００８】
実施例は、ＰＣＩｅデバイスおよびホストデバイス（ＰＣＩｅデバイスでもある）といった、２つのデバイス間のペリフェラルコンポーネントインターコネクト（ＰＣＩ）エクスプレス（ＰＣＩｅ）リンクを含んでよい。ＰＣＩｅデバイスはダウンストリームデバイスとみなされ、ホストデバイスはアップストリームデバイスとみなされる。各ＰＣＩｅデバイスは、ＰＣＩｅポートを含み得る。
【０００９】
ＰＣＩｅデバイスは、リンク（または、インターコネクト）を介して通信することができる。リンクは、２つのＰＣＩｅポート間のポイントツーポイント（point-to-point）通信チャネルであり、ポートは、ＰＣＩ要求（コンフィギュレーションのリード／ライト、入力／出力（Ｉ／Ｏ）リード／ライト、メモリのリード／ライト）を送信／受信し、かつ、割り込みすることができる。２つのデバイス間のＰＣＩｅリンクは、例えば、１から３２レーンを含んでよい。レーンは、２つの差動信号ペア（differential  signaling  pairs）を含んでよい。データを受信するための第１ペアと、データを送信するための第２ペアである。他の数量のレーンも、また、提供され得る。
【００１０】
ＰＣＩｅリンクは、リンク（または、インターコネクト）がアクティブでないときに、電力消費を低減するリンク（または、アクティブ）状態電力管理（power  management）を利用することができる。リンク状態電力管理は、ＰＣＩエクスプレスアクティブステートパワーマネジメント（ＡＳＰＭ）の一部であってよい。例えば、リンクがデータ転送していないときに、ＰＣＩｅデバイスのリンク状態がＬ０（オン（on））からＬ１（オフ（off））に変換されてよい。データがリンクにわたり転送のために利用可能なときに、ハードウェアは自動的にＬ０に戻るよう変換されてよい。
【００１１】
Ｌ１は、低い出口レイテンシ（low  exit  latency）を有するリンク状態である。Ｌ１状態（またはＬ１電力状態）は、電力を消費し得るものであり、ＰＣＩｅデバイスが未解決の要求（outstanding  requests）及び／又は保留中のトランザクションの欠如（lack）を認識するときに要求され得る。Ｌ０は、非常に低い出口レイテンシを有するリンク状態である。Ｌ０状態（またはＬ０電力状態）は、リンクアクティビティ間の短いインターバルの最中の電力の浪費を低減することができる。
【００１２】
実施例は、また、Ｌ１以外のＰＣＩｅ電力およびパフォーマンス状態をコントロールするためにも適用可能であり得る。例えば、実施例は、ＰＣＩｅ  Ｌ１（および全てのサブ状態）、ＰＣＩｅ  Ｌ２／Ｌ３レディ状態（ready  states）、ＰＣＩｅ  Ｌ２状態、及び／又は、ＰＣＩｅダイナミックリンク幅（ＤＬＷ）、等に対して適用可能であり得る。
【００１３】
一つの例として、ＤＬＷは、ＰＣＩｅリンクの幅（width）を動的に再構成する能力である。８個（×８）のＰＣＩｅデバイスは、８レーンのうちの４レーンだけを使用するように動的に構成され得る。リンク削減（reduction）は、電力を節約するために実行され得るものである。
【００１４】
構成および実施例が、Ｌ１リンク状態に関して、これ以降に説明される。しかしながら、実施例は、また、Ｌ０状態、及び／又は、他の電力またはパフォーマンス状態に対しても適用可能であり得る。
【００１５】
未解決の要求または保留中のトランザクションが存在しないときに、Ｌ１状態は、ＰＣＩｅリンク上でアクティブになってよい。Ｌ１状態を使用する一つの利点は、アイドルリンク（idle  links）における電力節約である。しかしながら、Ｌ１状態を使用する一つの欠点は、Ｌ１状態からイグジットする時間量（すなわち、出口レイテンシ（exit  latency））である。Ｌ１出口レイテンシは、トランザクション応答時間の増加を生じさせることがある。
【００１６】
Ｌ１I状態へのエントリは、ダウンストリームデバイス（ＰＣＩｅデバイスといったもの）によって開始されてよい。ダウンストリームデバイスが所定の時間量についてアイドルであるときである。ＰＣＩｅデバイスは、ネットワークストレージデバイス、電力管理デバイス、ネットワークカード、ネットワークコントローラ（つまり、カード）、ストレージコントローラ、グラフィックスコントローラ、管理コントローラといった、いくつかの異なるデバイスのうちいずれであってもよい。一つの例として、ダウンストリームデバイスは、ＰＣＩｅデバイスが、３２ナノ秒といった、所定の時間についてアイドルであるときに、Ｌ１状態要求（またはＬ１要求）を提供し得る。所定の時間は、異なる時間量であってよい。
【００１７】
ホストデバイス（または、アップストリームＰＣＩｅデバイス）は、リンク上で、Ｌ１状態に対する要求を受信し、そして、ホスト（または、アップストリームＰＣＩｅデバイス）は、Ｌ１要求を受け入れる（許可する）か、または、拒否する（否定する）ことができる。ホストデバイスは、チップセットまたは中央処理装置（ＣＰＵ）の中にＰＣＩｅルートコプレックス（root  complex）デバイスを含んでよい。ホストデバイスは、サーバー及び／又はプロセッサ（または、ＣＰＵ）であってよい。不利な構成においては、Ｌ１状態に入るための時間量（つまり、Ｌ１エントリ）、および、Ｌ１状態をイグジットするための時間量（すなわちＬ１イグジット）は、ホストデバイス（プロセッサといったもの）におけるアクティビティとは独立して発生し得る。
【００１８】
一つの欠点は、ＰＣＩｅデバイスにおける、非アクティビティ（inactivity）の短い期間がその後に続く、頻繁な短いアクティビティの期間であり得る。このことは、Ｌ１イグジットの高い数量と、トランザクション応答時間における許容できない増加を結果として生じ得るものである。
【００１９】
構成は、レイテンシのインパクトを回避するために、（ＰＣＩｅデバイスについて）Ｌ１状態に入る能力をディセーブル（disable）することができる。Ｌ１状態の使用をディセーブルすることは、レイテンシのインパクトを排除し得る一方で、Ｌ１状態の使用をディセーブルすることがプラットフォームのアイドル電力を増加させ得る。（Ｌ１状態のディセーブルからの）電力増加は、ＰＣＩｅリンクからのものであり、全てのダウンストリームデバイスがＬ１状態になるまで最も低いアイドル電力状態に到達しないことがある（プロセッサおよびプラットフォームコントローラハブといった）他のプラットフォームコンポーネントに基づくものであり得る。Ｌ１状態の使用をディセーブルすることは、アイドル時またはアクティブ時に、プラットフォーム電力を増加させ得るものである。Ｌ１状態の使用をディセーブルすることは、プラットフォーム（またはプロセッサ）の電力を増加し得るが、また、デバイスの電力を増加させ、かつ、メモリ電圧レギュレータ（ＶＲ）の位相脱落（phase  shedding）を防ぐこともでき得る。
【００２０】
プロセッサ（または、プラットフォーム）は、いつでも、Ｌ１状態がパフォーマンスにインパクトを与えるポテンシャルを有するか否かを判断する能力を有し得る。プロセッサ（または、プラットフォーム）は、また、Ｌ１イグジットレイテンシが、ｃ−状態ウェイクイベント（c-state  wake  event）といった、他の電力管理アクションの背後に隠れているかも判断し得る。例えば、ｃ−状態ウェイクイベントは、プロセッサ（またはプラットフォーム）上の多くのリソースがアイドル状態からアクティブ状態に移行するときに発生し得る。実行が再開する以前に、ｃ−状態のウェイクイベントに続いてアクションがとられてよい。これらのアクションのレイテンシがＬ１イグジットレイテンシを超える場合には、他のアクションに基づいてＬ１イグジットレイテンシが隠されることがある。
【００２１】
プロセッサ（または、プラットフォーム）は、グローバルアイドル状態、または、プロセッサ及び／又はプラットフォーム上に存在するプラットフォームアクティビティに係る他のインジケータに基づいて、判断することができる。例えば、グローバルアイドル状態（または、プラットフォームアクティビティに係る他のインジケータ）は、プラットフォームのコンポーネントがｃ−状態（または、プラットフォームｃ−状態）に入ることができるときに、存在し得る。例えば、プラットフォームがｃ−状態（または、プラットフォームｃ−状態）に入ることができるとき、プラットフォームによって処理されていないトランザクションは、全てが非アクティブ状態（または、非アクティブコンディション（condition））にあってよい。こうした状態の最中のＬ１イグジットレイテンシは、電圧の上昇、または、メモリおよびコアのウェイクアップといった、他のプラットフォームのアクションの背後に隠れることがある。
【００２２】
実施例は、ＰＣＩｅのＬ１状態（または、ＰＣＩｅのＬ１電力状態）の使用を決定するために、グローバルアイドル状態情報を使用し得る。実施例は、また、ＰＣＩｅのＬ１状態の使用を決定するために、プラットフォームアクティビティに係る情報または他のインジケータを使用してもよい。
【００２３】
実施例は、リンクの電力状態をコントロールするために、ハイパフォーマンスな方法を提供し得る。実施例は、Ｌ１状態がパッケージパフォーマンス（または、システムパフォーマンス）にインパクトを与えない期間だけに、Ｌ１状態（または、ＰＣＩｅのＬ１電力状態）の使用を制限（もしくは、使用を拒否）することができる。実施例は、パフォーマンスのインパクトを有することなく、ＰＣＩｅのＬ１I状態に係るアイドル電力の利益を提供することができる。
【００２４】
実施例は、リンクに結合された第１デバイス（プロセッサまたはプラットフォームといったもの）の状態を判断し得る。第１デバイスは、第２デバイス（つまり、ダウンストリームのデバイス）から特定のリンク状態に対する要求を受信し得る。第１デバイスは、第１デバイスに係る判断された条件に基づいて、リンクの電力状態を決定し得る。例えば、第１デバイスは、第１デバイスに係る判断されたアイドル状態に基づいて、リンクの電源オフ状態を決定することができる。他方で、第１デバイスは、第１デバイスの少なくとも一つのコンポーネントに係る判断されたアクティブ状態に基づいて、リンクの電源オン状態を決定することができる。
【００２５】
ホストデバイスは、プロセッサ（または、中央処理装置（ＣＰＵ））であってよい。グローバルアイドル状態またはプラットフォームアクティビティ（または、プロセッサアクティビティ）の他のインジケータに基づいて、Ｌ１状態が使用され得る（または、使用されない）ときに、マイクロコード（または、ＣＰＵマイクロコード）ハードウェア、回路、及び／又はロジックが、調整（coordinating）のためのプラットフォーム（または、プロセッサ）の中に備えられてよい。一つの例として、マイクロコード、ハードウェア、回路、及び／又はロジックが、プロセッサのマイクロコントローラの中に備えられてよい。マイクロコントローラは、グローバルアイドル状態（または、プラットフォームアクティビティに係る他のインジケータ）をモニタリングし、そして、ｃ−状態を交渉することによって動作し得る。プラットフォームコントローラハブ（ＰＣＨ）及び／又はチップセットと同様に、他のプログラムを用いて、といったものである。最終的に、アップストリームデバイスからの全てのリンクがＬ１状態に入る場合に、マイクロコントローラ（または、ＣＰＵ）は、電力を節約するための追加のアクションを取り得る（つまり、より深いｃ−状態に入ること）。しかしながら、グローバルアイドル状態（または、他のインジケータ）がもはや存在しない（すなわち、ｃ−状態をイグジットする）ときに、マイクロコントローラ（または、ＣＰＵ）は、ダウンストリームデバイスからのＬ１要求を拒否するために、アップストリームコンポーネント（プロセッサといったもの）をコンフィグレーションすることによって、Ｌ１状態の使用をディセーブルし得る
【００２６】
コントロールメカニズムは、マイクロコード、ハードウェア、回路、及び／又はロジックによって、全体的または部分的に実施されてよい。
【００２７】
少なくとも一つの実施例において、ダウンストリームデバイスに対して、および、アップストリームデバイス（プロセッサといったもの）に対して結合されているＰＣＩｅリンクについて、マイクロコード、ハードウェア、回路、及び／又はロジックは、ホストデバイス（または、プロセッサといったアップストリームコンポーネント）におけるＬ１状態の使用をイネーブル（許可）し、または、使用をディセーブル（拒否）してよい。少なくとも一つの実施例において、ダウンストリームデバイスに対して、および、アップストリームデバイス（ＣＰＵといったもの）に対して結合されているＰＣＩｅリンクについて、マイクロコード、ハードウェア、回路、及び／又はロジックは、プロセッサにおけるＬ１状態の使用をイネーブル（許可）し、または、使用をディセーブル（拒否）してよい。プロセッサ（または、ＣＰＵ）によって提供されるグローバルアイドルエントリ及び／又はイグジットメッセージに基づいて、Ｌ１状態の使用を認識することができる。
【００２８】
図１は、一つの構成例に従って、（時間にわたる）プロセッサの動作状態と（時間にわたる）ＰＣＩｅリンクの動作状態を示しているグラフである。他の構成も、また、可能である。
【００２９】
図１は、アクティブ状態（または、アクティブコンディション）と、非アクティブ状態（または、アイドル状態）との間で変化しているプロセッサの動作状態を示している。図１は、ｙ軸上でより高い状態であるアクティブ状態（または、図１においてより高いものとして図示されているもの）、および、ｙ軸上でより低い状態であるアイドル状態（または、図１においてより低いものとして図示されているもの）を示している。
【００３０】
図１は、また、アクティブ状態（または、アクティブコンディション）と非アクティブ状態（または、アイドル状態）との間で変化しているＰＣＩリンクの動作状態を示している。図１は、ｙ軸上でより高い状態であるアクティブ状態（または、図１においてより高いものとして図示されているもの）、および、ｙ軸上でより低い状態であるアイドル状態（または、図１においてより低いものとして図示されているもの）を示している。
【００３１】
図１は、アクティブ状態（またはアクティブコンディション）にあるＰＣＩリンクを示している。例えば、図１は、期間２１の最中にアクティブ状態（または、アクティブコンディション）にあり、期間３０の最中に非アクティブ状態（または、非アクティブコンディション）にあり、そして、期間４１の最中にアクティブ状態にある、プロセッサを示している。非アクティブ状態は、また、アイドル状態またはアイドルコンディションとも呼ばれてよい。
【００３２】
図１は、また、プロセッサがアクティブ状態（期間２１におけるといったもの）にある間に、ＰＣＩリンクが異なる時点（期間２２、２４、および２６といったもの）においてアイドル状態（または、アイドルコンディション）にあってよいことも示している。図１は、また、プロセッサがアクティブ状態（期間４１におけるといったもの）にある間に、他の時点（期間４２、４４、４６、４８、５２、５４、５６、および５８といったもの）において、ＰＣＩリンクがアイドル状態（または、アイドルコンディション）にあってよいことも示している。
【００３３】
図１は、また、ＰＣＩリンクのＬ１状態エントリが、プロセッサ活動とは独立してよいことも示している。従って、プロセッサがアクティブである間の頻繁なＰＣＩリンクのＬ１イグジットが、パフォーマンスインパクトを生じ得る。
【００３４】
図２は、一つの構成例に従って、（時間にわたる）プロセッサの動作状態と（時間にわたる）ＰＣＩｅリンクの動作状態を示しているグラフである。他の実施例および構成も、また、提供され得る。
【００３５】
図２は、アクティブ状態（または、アクティブコンディション）と非アクティブ状態（または、アイドル状態）との間で変化しているプロセッサの動作状態を示している。図２は、ｙ軸上でより高い状態であるアクティブ状態（または、図２においてより高いものとして図示されているもの）、および、ｙ軸上でより低い状態であるアイドル状態（または、図２においてより低いものとして図示されているもの）を示している。
【００３６】
図２は、また、アクティブ状態（または、アクティブコンディション）と非アクティブ状態（または、アイドル状態）との間で変化しているＰＣＩリンクの動作状態を示している。図２は、ｙ軸上でより高い状態であるアクティブ状態（または、図２においてより高いものとして図示されているもの）、および、ｙ軸上でより低い状態であるアイドル状態（または、図２においてより低いものとして図示されているもの）を示している。
【００３７】
図２は、期間２１の最中のアクティブ状態（または、アクティブコンディション）、期間３０の最中の非アクティブ状態（または非アクティブコンディション）、および期間４１の最中のアクティブ状態（またはアクティブコンディション）にある、プロセッサを示している。図２は、また、期間３０の最中に非アクティブ状態（または非アクティブコンディション）が、時点２９と時点３１との間に生じることも示している。
【００３８】
実施例は、グローバルアイドル状態（または、プラットフォームアクティビティに係る他のインジケータ）が、時点２９と時点３１との間に生じることを決定することができる。例えば、プロセッサのアクティビティは、時点２９と時点３１との間で非アクティブ（または、アイドルコンディション）であってよい。実施例は、（グローバルアイドル状態または他のインジケータが存在するときに）時点２９と時点３１との間で、Ｌ１状態エントリを許可してよい。実施例は、また、パッケージ（または、システム）がｃ−状態（または、プラットフォームｃ−状態）に入ることができるといったときに、グローバルアイドル状態（または、他のインジケータ）の最中だけでＬ１状態エントリを許可することもできる。
【００３９】
この構成例において、ダウンストリームデバイスは、（ダウンストリームデバイスがアイドルであるときに）期間２２、２４、２６においてＬ１状態エントリを要求することができる。しかしながら、アップストリームデバイスは、プロセッサが期間２１の最中にアクティブ（または、アクティブ状態）であるために、Ｌ１状態エントリ要求を許可しなくてよい。
【００４０】
同様に、ダウンストリームデバイスは、（ダウンストリームデバイスがアイドルまたはアイドル状態であるときに）期間４２、４４、４６、４８、５２、５４、５６、および５８においてＬ１状態エントリを要求することができる。しかしながら、アップストリームデバイスは、プロセッサが期間４１の最中にアクティブ（または、アクティブ状態）であるために、Ｌ１状態エントリ要求を許可しなくてよい。
【００４１】
図２は、プロセッサがアクティブである間（期間２１および４１の最中といったもの）には、Ｌ１状態要求が拒否され、かつ、それぞれのＰＣＩｅリンクはＬ０状態のままであることを示している。つまり、ダウンストリームデバイスはＬ１状態を（期間２１および２１の最中に）要求することができるが、アップストリームデバイスがアクティブ（または、アクティブ状態）であるときには、Ｌ１状態要求が拒否される。
【００４２】
図３Ａは、一つの実施例に従って、電子システムを示している。他の実施例および構成も、また、提供され得る。図３は、また、プラットフォーム及び／又は電子デバイスとしても参照され得るものである。
【００４３】
電子システム（または、プラットフォーム）は、第１プロセッサ１００（または、ＣＰＵ）、ダウンストリームデバイス１２５（または、ダウンストリームデバイス）、プラットフォームコントローラハブ（ＰＣＨ）１５０（または、チップセット）、ダウンストリームデバイス１６０（複数のダウンストリームデバイス）、第２プロセッサ１７０（または、ＣＰＵ）、および、ダウンストリームデバイス１８０（または、複数のダウンストリームデバイス）を示している。システム（または、プラットフォーム）に係る他のコンフィグレーションも、また、提供されてよい。
【００４４】
プロセッサ１００は、第１デバイスと呼ばれてよく、かつ、ダウンストリームデバイスのうち一つは、第２のデバイスと呼ばれてよい。
【００４５】
ＰＣＩｅインターコネクト（リンクを有しているもの）は、プロセッサ１００とダウンストリームデバイス１２５との間に接続される。ＰＣＩｅインターコネクト１６５（リンクを有しているもの）は、プラットフォームコントローラハブ（ＰＣＨ）１５０（またはチップセット）とダウンストリームデバイス１６０との間に結合されている。ＰＣＩｅインターコネクト１９０（リンクを有しているものは、プロセッサ１７０とダウンストリームデバイス１８０との間に結合されている。他のコンフィグレーションも、また、提供され得る。
【００４６】
ＰＣＩｅインターコネクト１３０は、プロセッサ１００と、一つまたはそれ以上のダウンストリームデバイス１２５との間に、一つまたはそれ以上のリンク（ＰＣＩｅリンク）を含んでよい。ＰＣＩインターコネクト１６５は、プラットフォームコントローラハブ（ＰＣＨ）１５０（または、チップセット）と、一つまたはそれ以上のダウンストリームデバイス１６０との間に、一つまたはそれ以上のリンク（ＰＣＩｅリンク）を含んでよい。ＰＣＩｅインターコネクト１９０は、プロセッサ１７０と、一つまたはそれ以上のダウンストリームデバイス１８０との間に、一つまたはそれ以上のリンク（ＰＣＩｅリンク）を含んでよい。
【００４７】
プロセッサ１００は、中央処理装置（ＣＰＵ）であってよい。プロセッサ１００は、ＰＣＩｅルートコンプレクスデバイス１１０およびマイクロコントローラ１２０を含んでいる。ＰＣＩｅルートコンプレクスデバイス１１０は、プロセッサ１００に代わってトランザクション要求を生成することができる。一つの例として、ＰＣＩｅコンプレクスデバイス１１０は、ＰＣＩコントローラであってよい。
【００４８】
ＰＣＩｅルートコンプレクスデバイス１１０は、インターコネクト１３０のＰＣＩｅリンク（または、複数のリンク）に対して接続するための一つまたはそれ以上のＰＣＩｅを含んでよい。ＰＣＩｅルートコンプレクスデバイス１１０は、ＰＣＩｅのＬ１状態要求を許可（または、付与）、および、ＰＣＩｅのＬ１状態要求を拒否することができる。
【００４９】
プロセッサ１００は、リンク１７１によってプロセッサに対して結合されてよい。プロセッサ１７０は、ＣＰＵであってよい。プロセッサ１７０は、マイクロコントローラ１７５とＰＣＩｅルートコンプレクスデバイス１７８を含んでよい。ＰＣＩｅルートコンプレクスデバイス１７８は、プロセッサ１７０に代わってトランザクション要求を生成することができる。一つの例として、ＰＣＩｅルートコンプレクスデバイス１７８は、ＰＣＩIコントローラであってよい。ＰＣＩｅルートコンプレクスデバイス１７８は、インターコネクト１９０のＰＣＩｅリンク（または、複数のリンク）に結合するための一つまたはそれ以上のＰＣＩｅポートを含んでよい。ＰＣＩｅルートコンプレクスデバイス１７８は、ＰＣＩｅのＬ１状態要求を許可（または、付与）、および、ＰＣＩｅのＬ１状態要求を拒否することができる。
【００５０】
プロセッサ１００は、また、第１リンク１４２と第２リンク１４４を介して、プラットフォームコントローラハブ（ＰＣＨ）１５０に対して（または、チップセットに対して）に結合されてよい。
【００５１】
ＰＣＨ１５０は、デバイス１５２（ＰＣＨ１５０の中）、マイクロコントローラ１５４、およびＰＣＩｅルートコンプレクスデバイス１５６（または、ＰＣＩIコントローラ）を含んでよい。ＰＣＨ１５０またはチップセットは、ＰＣＩｅデバイス（デバイス１５２といったもの）を含んでよい。例えば、ＰＣＩｅデバイス１５２は、第１リンク１４２を介して、（プロセッサ１００の）ＰＣＩｅルートコンプレクスデバイス１１０に対して直接的に接続されてよい。ＰＣＩデバイス１５２は、（ＰＣＨまたはチップセットにおける）統合されたネットワークコントローラであってよい。ＰＣＨ１５０は、また、第２リンク１４４を使用して、プロセッサ１００とデータを通信し得る。
【００５２】
図３Ｂは、一つの実施例に従って、システムオンチップ（ＳＯＣ）を示している。他の実施例および構成も、また、提供され得る。システムオンチップ（ＳＯＣ）は、電子システムまたは電子デバイスのコンポーネントであってよい。
【００５３】
システムオンチップ（ＳＯＣ）２００は、シリコンチップを含んでよく、そして、シリコンチップ上で提供される複数のインテレクチュアルプロパティ（ＩＰ）ブロックを含んでよい。ＳＯＣ２００は、電子システムのコンポーネントを単一のシリコンチップの中へと統合する集積回路（ＩＣ）であってよい。ＳＯＣ２００は、デジタル、アナログ、混合信号、および、無線周波数機能を含んでよい。ＳＯＣ２００は、ハードウェア（プロセッサ、コントローラ、メモリ、電圧レギュレータ、等）と、ハードウェアをコントロールするためのソフトウェアの両方を含んでよい。
【００５４】
一つの例として、そして、説明を容易にするために、図３Ｂは、プロセッサ１００、プロセッサコントローラハブ（ＰＣＨ）１５０、およびプロセッサ１７０を含む、ＳＯＣ２００を示している。ＳＯＣ２００は、また、例えば、入力／出力（Ｉ／Ｏ）のためのＩＰブロック２０２とラフィックスのためのＩＰブロック２０４を含んでよい。オーディオ、イメージング、ビデオ、等のためのＩＰブロックといった他のＩＰブロックが使用されてよい。
【００５５】
図３Ｂは、チップ外（off-chip）に配置されたＰＣＩｅデバイスを伴うＳＯＣ２００を示しており、ダウンストリームデバイスも、また、ＳＯＣ２００の外側で提供されてよい。例えば、ダウンストリームデバイス１２５がＰＣＩｅリンクを介してＳＯＣ２００に対して接続されてよく、ダウンストリームデバイス１８０がＰＣＩｅリンクを介してＳＯＣ２００に対して接続されてよく、そして、ダウンストリームデバイス１６０がＰＣＩｅリンクを介してＳＯＣ２００に対して接続されてよい。
【００５６】
少なくとも一つの実施例において、ＳＯＣは、ＰＣＩｅプロトコルを使用して結合されたマルチチップパッケージ（ＭＣＰ）（ＰＣＩｅデバイスを有しているもの）に対して結合されてよい。少なくとも一つの実施例において、ＳＯＣは、ＳＯＣと同じダイ上に組み込まれたＰＣＩｅデバイスを有してよく、そして、ＰＣＩｅデバイスは、ＰＣＩｅプロトコル（Ｌ１を含んでいるもの）を使用して接続されてよい。
【００５７】
図４と図５は、リンク電力管理オペレーションに関する。説明を容易にするために、オペレーションは、図３Ａに示される電子システム（または、プラットフォーム）に関して説明され。図４は、グローバルアイドル状態が満たされるときに（プロセッサ１００がアイドル状態にあるといったもの）、一連のオペレーションが行われ得ることを示している。
【００５８】
図４は、一つの実施例に従って、リンク電力管理オペレーションを示しているフローチャートである。他のオペレーション、オペレーションの順序、および実施例も、また、提供されてよい。以降のフローチャートは、ＰＣＩｅリンクに対して取り付けられたプロセッサを含むシステム、及び／又は、ＰＣＩｅリンクに対して取り付けられたプラットフォームコントローラハブ（ＰＣＨ）またはチップセットを含むシステム、といった電子システムに関する。
【００５９】
図４のリンク電力管理オペレーションは、グローバルアイドル状態にあるプロセッサ１００（つまり、プロセッサがアイドル状態または非アクティブ状態にあるもの）に関する。図５の電力管理オペレーションは、もはやグローバルアイドル状態にないプロセッサ１００（つまり、プロセッサがアクティブコンディションまたは状態にあるもの）に関する。
【００６０】
グローバルアイドル状態は、特定のシステム（または、プラットフォーム）に基づいて予め決定されてよい。グローバルアイドル状態は、一つまたはそれ以上のプラットフォームリソースが同時にアイドルである（または、同時のアイドル状態にある）ときであってよい。一つの例として、グローバルアイドル状態は、プラットフォームの全てのコアが同時にアイドルであるとき、全てのコアとメモリが同時にアイドルである（または、同時のアイドル状態にある）とき、及び／又は、全てのコア、メモリ、およびチップセットが同時にアイドルである（または、同時のアイドル状態にある）ときに、発生し得る。グローバルアイドル状態に対する基準（criteria）は、システムごとに（または、プラットフォームごとに）変動してよい。
【００６１】
図４に示されるように、オペレーション２５０においては、グローバルアイドル状態が提供され得る。これは、例えば、プロセッサ１００のコアに対するアクティビティが停止された（または、アイドルである）ときに発生し得る。上述のように、グローバルアイドル状態は、他の基準に基づいて発生してよい。グローバルアイドル状態は、プロセッサ１００（または、プラットフォーム）がアイドルであるときに発生し得る。
【００６２】
リンクに対して結合されたプロセッサ１００（または、第１デバイス）の状態が判断され得る。（プロセッサ１００の）マイクロコントローラ１２０は、プロセッサ１００がアイドル状態（または、非アクティブ）にあると判断し得る。一つの例として、マイクロコントローラ１２０は、プラットフォームがｃ−状態エントリ（パッケージｃ−状態エントリといったもの）についてレディ（ready）であると判断することができる。グローバルアイドル状態が判断されるとき、他の特定のアクションが提供され得る。
【００６３】
オペレーション２５２においては、グローバルアイドル状態に基づいて、マイクロコントローラ１２０が、ＰＣＩｅのＬ１状態の使用をイネーブル（許可）することができる。マイクロコントローラ１２０は、（プロセッサ１００の）ＰＣＩｅルートコンプレクスデバイス１１０に対してイネーブル情報（enabling  information）を提供してよい。
【００６４】
オペレーション２５３において、ダウンストリームデバイス１２５のうち一つは、ＰＣＩｅのＬ１状態を要求することができる。例えば、ダウンストリームデバイス１２５のうち一つは、プロセッサ１００に対してＰＣＩｅ  Ｌ１状態（または、ＰＣＩｅ  Ｌ１状態要求）に対する要求を提供し得る。要求は、所定の時間量についてダウンストリームデバイス１２５がアイドルであると判断されるときに提供され得る。オペレーション２５３は、プロセッサ（リンクが取り付けられたプロセッサについて）、ＰＣＨ（ＰＣＨが取り付けられたリンクについて）、等といった、アップストリームデバイスに対して要求を提供するＰＣＩｅデバイスに関する。プロセッサ（または、第１デバイス）は、ダウンストリーム（または、第２デバイス）からの特定のリンク状態に対する要求を受け取ってよい。
【００６５】
オペレーション２５４において、アップストリームコンポーネントは（ダウンストリームデバイス１２５によって送信された）ＰＣＩｅのＬ１状態要求を許可することができる。例えば、ＰＣＩｅルートコンプレクスデバイス１１０は、グローバルアイドル状態が存在してから、（ダウンストリームデバイス１２５のうち一つからの）Ｌ１状態要求を許可（付与）することができる。
【００６６】
プロセッサ１００は、プロセッサ（または、第１デバイス）の判断された状態に基づいてリンクの電力状態を決定することができる。一つの例として、プロセッサ１００は、プロセッサ（または、第１デバイス）の判断されたアイドル状態に基づいて、リンクの電力状態を決定することができる。
【００６７】
マイクロコントローラ１２０は、オペレーション２５５において、ＰＣＨに対してｃ−状態エントリ（または、パッケージｃ−状態エントリ）を示すことができる。オペレーション２５５は、プロセッサ１００（または、パッケージ）が、ｃ−状態（または、パッケージｃ−状態）へと入る、あらゆるときに発生し得るものである。
【００６８】
オペレーション２５６において、（ＰＣＨ１５０の）マイクロコントローラ１５４は、ＰＣＩのＬ１状態の使用をイネーブルすることができる。マイクロコントローラ１５４は、（ＰＣＨ１５０の）ＰＣＩｅルートコンプレクスデバイス１５６に対してイネーブル情報を提供することができる。
【００６９】
オペレーション２５７において、ダウンストリームデバイス１６０のうち一つは、ＰＣＩｅのＬ１状態を要求することができる。例えば、ダウンストリームデバイス１６０のうち一つは、ＰＣＩｅのＬ１状態（または、ＰＣＩｅのＬ１状態要求）に対する要求をＰＣＨ１５０に対して提供することができる。要求は、所定の時間量についてダウンストリームデバイス１６０がアイドルであると判断されるときに提供され得る。
【００７０】
オペレーション２５８において、アップストリームコンポーネント（ＰＣＩｅルートコンプレクスデバイス１５６といったもの）は、（ダウンストリームデバイス１６０によって送信された）ＰＣＩｅ  のＬ１状態要求を許可（付与）することができる。例えば、ＰＣＩｅルートコンプレクスデバイス１５６は、（ダウンストリームデバイス１６０のうち一つからの）Ｌ１状態要求を許可（付与）することができる。
【００７１】
オペレーション２５９において、（プロセッサ１００の）マイクロコントローラ１２０は、より深いｃ−状態の中へ入るためのオペレーションを実行することができる。例えば、コンポーネントは、より深いｃ−状態（より深いパッケージのｃ−状態といったもの）の中に入ることができる。一つの例として、パッケージのｃ−状態エントリは、電力を節約するための一式のアクション（プラットフォームにわたる節電といったもの）が含まれてよい。
【００７２】
図４のオペレーションの最中はいつでも、プロセッサ１００は、アクティブ状態（または、アクティブコンディション）の中へ入ることができる。例えば、ｃ−状態（パッケージｃ−状態といったもの）における間に、ＰＣＩｅデバイスのアクティビティは、プロセッサ１００のウェイクアップ（waking  up）を引き起こし得る割り込み（interrupt）を生じてよい。アクティビティが再開するとき、グローバルアイドル状態は、もはや満たされず、そして、図５において説明されたオペレーションが実行されてよい。
【００７３】
図５は、一つの実施例に従って、リンク電力管理オペレーションを示しているフローチャートである。他のオペレーション、オペレーションおよび実施例の順序も、また、提供されてよい。フローチャートは、電子システムに関連してよい。ＰＣＩｅリンクに対して取り付けられたプロセッサ、及び／又は、ＰＣＩｅリンクに対して取り付けられたプラットフォームコントローラハブ（ＰＣＨ）またはチップセットを含むシステム、といったものである。
【００７４】
図５のリンク電力管理オペレーションは、もはやグローバルアイドル状態にはない（つまり、プロセッサがアクティブ状態にある）プロセッサ１００（または、第１デバイス）に関する。
【００７５】
図５に示されるように、オペレーション３００においては、割り込み条件が提供され得る。このことは、例えば、プロセッサ１００に係る少なくとも一つのコアについてアクティビティが発生するときに起こり得る。一つの例として、プロセッサに対して割り込み信号が提供されてよく、イベントが発生して処理される必要があることを示している。割り込みは、プロセッサによって受信されてよく、そして、少なくとも一つのコアをウェイクアップさせることができる（つまり、アイドルからアクティブ状態への移行）。割り込みは、ネットワークコントローラ、ストレージコントローラ、等によって生成されてよい。グローバルアイドル状態の欠如は、プロセッサ１００（または、プラットフォーム）がアクティブである（少なくとも一つのコアがアクティブ状態にある、といった）ときに、発生し得る。
【００７６】
オペレーション３０１において、マイクロコントローラ１２０は、ｃ−状態（例えば、パッケージｃ−状態）のイグジットを実行してよい。マイクロコントローラ１２０は、グローバルアイドルコンディション（または、状態）からアクティブコンディション（または、状態）へとプロセッサ（または、プラットフォーム）を移行することに関するアクションをとってよい（コアに係る少なくとも一つのウェイクアップ、プラットフォームインターコネクトのウェイクアップ、キャッシュに対する電力の補間、メモリのウェイクアップ、等である）。ウェイクアップは、アイドル状態からアクティブ状態へリソースを移行させることを参照してよい。
【００７７】
オペレーション３０２において、マイクロコントローラ１２０は、ＰＣＩｅのＬ１状態の使用をディセーブルすることができる。マイクロコントローラ１２０は（プロセッサ１００の）ＰＣＩｅルートコンプレクスデバイス１１０に対してディセーブル情報を提供してよい。
【００７８】
オペレーション３０３において、ダウンストリームデバイス１２５のうち一つがＰＣＩｅのＬ１状態を要求することができる。例えば、ダウンストリームデバイス１２５のうち一つは、プロセッサ１００に対してＰＣＩｅのＬ１状態（または、ＰＣＩｅのＬ１状態要求）に対する要求を提供することができる。要求は、ダウンストリームデバイス１２５が所定の時間量についてアイドルであると判断されるときに、提供されてよい。オペレーション３０３は、プロセッサ（リンクが取り付けられたプロセッサについて）、ＰＣＨ（ＰＣＨが取り付けられたリンクについて）、等といった、アップストリームデバイスに対して要求を提供するＰＣＩｅデバイスに関する。
【００７９】
オペレーション３０４において、アップストリームコンポーネントは（ダウンストリームデバイス１２５によって送信された）ＰＣＩｅのＬ１状態要求を拒否し得る。例えば、ＰＣＩｅルートコンプレクスデバイス１１０は、（ダウンストリームデバイス１２５のうち一つからの）Ｌ１状態要求を拒否することができる。
【００８０】
マイクロコントローラ１２０は、オペレーション３０５において、ＰＣＨ１５０（または、他のコンポーネント）に対してｃ−状態イグジット（または、パッケージｃ−状態イグジット）を示してよい。オペレーション３０５は、プロセッサ１００（または、プラットフォーム）がｃ−状態（または、パッケージ状態）をイグジットするときはいつでも、発生し得るものである。
【００８１】
オペレーション３０６において、（ＰＣＨ１５０の）マイクロコントローラ１５４は、ＰＣＩのＬ１状態の使用をディセーブルすることができる。マイクロコントローラ１５４は、（ＰＣＨ１５０の）ＰＣＩｅルートコンプレクスデバイス１５６に対してディセーブル情報を提供することができる。
【００８２】
オペレーション３０７において、ダウンストリームデバイス１６０のうち一つは、ＰＣＩｅのＬ１状態要求を要求することができる。例えば、ダウンストリームデバイス１６０のうち一つ、ＰＣＩｅのＬ１状態（または、ＰＣＩｅのＬ１状態要求）の要求をＰＣＨ１５０に対して提供することができる。要求は、所定の時間量についてダウンストリームデバイス１６０がアイドルであると判断されるときに提供され得る。
【００８３】
オペレーション３０８において、アップストリームコンポーネント（ＰＣＩｅルートコンプレクスデバイス１５６といったもの）は、（ダウンストリームデバイス１６０によって送信された）ＰＣＩｅのＬ１状態要求を拒否することができる。例えば、ＰＣＩｅルートコンプレクスデバイス１５６は、（ダウンストリームデバイス１６０のうち一つからの）Ｌ１状態要求を拒否することができる。
【００８４】
オペレーション３０９において、（プロセッサ１００の）マイクロコントローラ１２０は、実行を再開するためのオペレーションを実行することができる。例えば、プロセッサは、インストラクションの実行を再開することができる。
【００８５】
プラットフォームがアクティブであるとき、ＰＣＩｅの非アクティブは、Ｌ１状態に向かっているＰＣＩｅリンクを結果として生じないことがある。ＰＣＩｅのＬ１状態に対するすべての要求が拒否されるので、リンクは、Ｌ０状態のままでよい。
【００８６】
図６は、一つの実施例に従って、電子システムを示している。他の実施例および構成も、また、提供され得る。電子システムは、上述のように動作し得るシステムのコンポーネントを示すために提供される。
【００８７】
図６は、プロセッサ４１０、電源４２０、ディスプレイ４２５、およびメモリ４３０を含む、システム４００を示している。プロセッサ４１０は、例えば、算術論理ユニットおよび内部キャッシュを含んでよい。プロセッサ４１０は、コンピュータ読取り可能な媒体（または、マシン読取り可能な媒体）を介して受信されたインストラクションといった、受信されたインストラクションを使用して、オペレーションを実行することができる。プロセッサ４１０は、前述したあらゆるプロセッサに対応することができる。
【００８８】
上述の機能は、図６に示される電子システム４００の中で提供されてよい。
【００８９】
システム４００は、また、グラフィカルインターフェイス４４０、チップセット４５０、キャッシュ４６０、ネットワークインターフェイス４７０、および無線通信ユニット４８０、ネットワークインターフェイス４７０の中に組み込まれ得るもの、を含んでよい。代替的または追加的に、無線通信ユニット４９０は、プロセッサ４１０に対して結合されてよく、そして、メモリ４３０とプロセッサ４１０との間に直接的な接続が存在してよい。
【００９０】
プロセッサ４１０は、ＣＰＵ、マイクロプロセッサ、または、あらゆる他のタイプの処理または演算回路であってよく、そして、残りの機能の全てまたはあらゆる組合せをと共にチップダイ上に含まれてよい。もしくは、残りの機能のうち一つまたはそれ以上は、既知の接続およびインターフェイスを介して、マイクロプロセッサダイに対して電気的に結合されてよい。示されている接続は、例えば、チッププラットフォーム、機能性、または、アプリケーション要求に応じて、図示されたエレメント間において存在し得る他の接続としての、単なる例示である。
【００９１】
少なくとも一つの実施例において、プロセッサ４１０は、図３Ｂに関して上述したようなシステムオンチップといった、チップ上で提供されてよい。プロセッサは、メモリコントローラやグラフィックスデバイス、等といったコンポーネントを含んでよい。
【００９２】
少なくとも一つの実施例において、コンピュータ読取り可能な媒体（または、マシン読取り可能な媒体）は、ＰＣＩｅリンクの電力状態をコントロールするための制御回路に対するプログラムを保管することができる。回路は、リンクのＬ１状態をコントロールするように制御され得る。プログラムは、システムメモリの中に保管されてよく、例えば、プロセッサに対して内部または外部にあってよい。プログラムは、インストラクションまたはコードを含んでよい。
【００９３】
プロセッサによって実行されるインストラクションまたはコードは、マシン読取り可能な媒体、または、一つまたはそれ以上の電気的にアクセス可能な媒体、等に対するアクセスを提供している、リモート接続を介して（例えば、アンテナ及び／又はネットワークインターフェイスを介したネットワークにわたり）アクセス可能な外部ストレージデバイスから、メモリに提供されてよい。マシン読取り可能な媒体は、マシン（例えば、コンピュータ）によって読み取り可能な形式において情報を提供（つまり、保管及び／又は送信）するあらゆるメカニズムを含んでよい。例えば、マシン読取り可能な媒体は、ランダムアクセスメモリ（ＲＡＭ）、リードオンリーメモリ（ＲＯＭ）、磁気または光ストレージ媒体、フラッシュメモリデバイス、電気的、光学的、音響的、または他の形式の伝播信号（例えば、搬送波、赤外線信号、デジタル信号）、等を含んでよい。代替的な実施例においては、インストラクションまたはコードの代わりに、または、組合せにおいて、ハードワイヤード（hard-wired）回路が使用され得る。そして、従って、実施例は、ハードウェア回路およびソフトウェアインストラクションの特定の組合せに限定されるものではない。
【００９４】
プログラムは、上記で以前に説明した実施例において実行される、あらゆるオペレーションまたは機能を実行するためのコードまたはインストラクションを含んでよい。
【００９５】
上述の実施例の機能は、タスクを実行するためのコードセグメントまたはインストラクションにおいて提供されてよい。コードセグメントまたはタスクは、プロセッサ読取り可能な媒体（または、マシン読取り可能な媒体）の中に保管されてよく、もしくは、伝送媒体または通信リンクにわたる搬送波における演算データ信号（computing  data  signal）によって送信されてよい。プロセッサ読取り可能な媒体、マシン読取り可能な媒体、及び／又は、コンピュータ読取り可能な媒体は、情報を保管または転送できるあらゆる媒体を含んでよい。
【００９６】
以下の例は、さらなる実施例に関する。
【００９７】
実施例１は、リンクをコントロールする方法であって、リンクに対して接続されている第１デバイスの状態を判断するステップと、第１デバイスにおいてリンクに対して接続されている第２デバイスから所定のリンク状態に対する要求を受信するステップと、第１デバイスの判断された状態に基づいてリンクの電力状態を決定するステップと、を含む。
【００９８】
実施例２において、実施例１に係る技術的事項は、任意的に以下を含んでよく、第１デバイスの状態を判断するステップは、第１デバイスのアイドル状態を判断するステップを含む。
【００９９】
実施例３において、実施例１と実施例２に係る技術的事項は、任意的に以下を含んでよく、電力状態を決定するステップは、第１デバイスの判断されたアイドル状態に基づいて、リンクの電源オフ状態を決定するステップを含む。
【０１００】
実施例４において、実施例１に係る技術的事項は、任意的に以下を含んでよく、第１デバイスの状態を判断するステップは、第１デバイスに係る少なくとも一つのコンポーネントのアクティブ状態を判断するステップを含む。
【０１０１】
実施例５において、実施例１と実施例４に係る技術的事項は、任意的に以下を含んでよく、電力状態を決定するステップは、第１デバイスに係る少なくとも一つのコンポーネントの判断されたアクティブ状態に基づいて、リンクの電源オン状態を決定するステップを含む。
【０１０２】
実施例６において、実施例１−５に係る技術的事項は、任意的に以下を含んでよく、リンクは、ペリフェラルコンポーネントインターコネクトエクスプレス（ＰＣＩｅ）リンクである。
【０１０３】
実施例７において、実施例１と実施例６に係る技術的事項は、任意的に以下を含んでよく、第１デバイスはプロセッサを含む。
【０１０４】
実施例８において、実施例１と実施例７に係る技術的事項は、任意的に以下を含んでよく、プロセッサはＰＣＩｅルートコンプレクスデバイスを含む。
【０１０５】
実施例９において、実施例１−８に係る技術的事項は、任意的に、リンクの判断された電力状態に基づいてリンクに対する電力をコントロールするステップを含んでよい。
【０１０６】
実施例１０において、実施例１−９に係る技術的事項は、任意的に以下を含んでよく、リンクの電力状態は、リンクの電源オフ状態またはリンクの電源オン状態である。
【０１０７】
実施例１１において、実施例１に係る技術的事項は、任意的に、決定された電力状態に基づいて、リンクの電源オフ状態を拒否するステップを含んでよい。
【０１０８】
実施例１２において、実施例１に係る技術的事項は、任意的に、決定された電力状態に基づいて、リンクの電源オン状態を許可するステップを含んでよい。
【０１０９】
実施例１３において、実施例１に係る技術的事項は、任意的に以下を含んでよく、状態を判断するステップは、第１デバイスのグローバルアイドル状態を判断するステップを含んでよい。
【０１１０】
実施例１４は、電子システムであり、第１デバイスと、第２デバイスと、第１デバイスと第２デバイスとの間のリンクを有し、第１デバイスは第１デバイスの状態を判断し、かつ、第１デバイスの判断された状態に基づいて、リンクの電力状態を決定する。
【０１１１】
実施例１５において、実施例１４に係る技術的事項は、任意的に以下を含んでよく、第１デバイスは、第１デバイスのアイドル状態を判断する。
【０１１２】
実施例１６において、実施例１４と実施例１５に係る技術的事項は、任意的に以下を含んでよく、第１デバイスは、第１デバイスの判断されたアイドル状態に基づいて、リンクの電源オフ状態を決定する。
【０１１３】
実施例１７において、実施例１４に係る技術的事項は、任意的に以下を含んでよく、第１デバイスは、第１デバイスに係る少なくとも一つのコンポーネントのアクティブ状態を判断する。
【０１１４】
実施例１８において、実施例１４と実施例１７に係る技術的事項は、任意的に以下を含んでよく、第１デバイスは、第１デバイスに係る少なくとも一つのコンポーネントの判断されたアクティブ状態に基づいて、リンクの電源オン状態を決定する。
【０１１５】
実施例１９において、実施例１４−１８に係る技術的事項は、任意的に以下を含んでよく、リンクは、第１デバイスと第２デバイスとの間のペリフェラルコンポーネントインターコネクトエクスプレス（ＰＣＩｅ）リンクである。
【０１１６】
実施例２０において、実施例１４に係る技術的事項は、任意的に以下を含んでよく、第１デバイスはプロセッサを含む。
【０１１７】
実施例２１において、実施例１４と実施例２０に係る技術的事項は、任意的に以下を含んでよく、プロセッサは、マイクロコントローラとＰＣＩｅルートコンプレクスデバイスを含む。
【０１１８】
実施例２２において、実施例１４と実施例２１に係る技術的事項は、任意的に以下を含んでよく、ＰＣＩｅルートコンプレクスデバイスは、リンクの判断された電力状態に基づいてリンクをコントロールする。
【０１１９】
実施例２３において、実施例１４と実施例２１に係る技術的事項は、任意的に以下を含んでよく、ＰＣＩｅルートコンプレクスデバイスは、第２デバイスから、所定のリンク状態に対する要求を受信する。
【０１２０】
実施例２４において、実施例１４と実施例２１に係る技術的事項は、任意的に以下を含んでよく、マイクロコントローラは、第１デバイスの状態を判断する。
【０１２１】
実施例２５において、実施例１４と実施例２１に係る技術的事項は、任意的に以下を含んでよく、マイクロコントローラは、第１デバイスのアイドル状態を判断する。
【０１２２】
実施例２６において、実施例１４と実施例２１に係る技術的事項は、任意的に以下を含んでよく、マイクロコントローラは、第１デバイスに係る少なくとも一つのコンポーネントのアクティブ状態を判断する。
【０１２３】
実施例２７において、実施例１４−２６に係る技術的事項は、任意的に以下を含んでよく、リンクの電力状態は、リンクの電源オフ状態またはリンクの電源オン状態である。
【０１２４】
実施例２８において、実施例１４に係る技術的事項は、任意的に以下を含んでよく、第１デバイスは、決定された電力状態に基づいて、リンクの電源オフ状態を拒否する。
【０１２５】
実施例２９において、実施例１４に係る技術的事項は、任意的に以下を含んでよく、第１デバイスは、決定された電力状態に基づいて、リンクの電源オフ状態を許可する。
【０１２６】
実施例２９において、実施例１４に係る技術的事項は、任意的に以下を含んでよく、第１デバイスは、第１デバイスのグローバルアイドル状態を判断する。
【０１２７】
実施例３１は、第１デバイスを含む電子装置であり、第１デバイスは、第１デバイスの状態を判断し、かつ、第１デバイスの判断された状態に基づいて、リンクの電力状態を決定する。
【０１２８】
実施例３２において、実施例３１に係る技術的事項は、任意的に以下を含んでよく、第１デバイスは、第１デバイスのアイドル状態を判断する。
【０１２９】
実施例３３において、実施例３１と実施例３２に係る技術的事項は、任意的に以下を含んでよく、第１デバイスは、第１デバイスの判断されたアイドル状態に基づいて、リンクの電源オフ状態を決定する。
【０１３０】
実施例３４において、実施例３１に係る技術的事項は、任意的に以下を含んでよく、第１デバイスは、第１デバイスに係る少なくとも一つのコンポーネントのアクティブ状態を判断する。
【０１３１】
実施例３５において、実施例３１と実施例３４に係る技術的事項は、任意的に以下を含んでよく、第１デバイスは、第１デバイスに係る少なくとも一つのコンポーネントの判断されたアクティブ状態に基づいて、リンクの電源オン状態を決定する。
【０１３２】
実施例３６において、実施例３１−３５に係る技術的事項は、任意的に以下を含んでよく、リンクは、第１デバイスと第２デバイスとの間のペリフェラルコンポーネントインターコネクトエクスプレス（ＰＣＩｅ）リンクである。
【０１３３】
実施例３７において、実施例３１と実施例３６に係る技術的事項は、任意的に以下を含んでよく、第１デバイスはプロセッサを含む。
【０１３４】
実施例３８において、実施例３１と実施例３７に係る技術的事項は、任意的に以下を含んでよく、プロセッサは、マイクロコントローラとＰＣＩｅルートコンプレクスデバイスを含む。
【０１３５】
実施例３９において、実施例３１と実施例３８に係る技術的事項は、任意的に以下を含んでよく、ＰＣＩｅルートコンプレクスデバイスは、リンクの判断された電力状態に基づいてリンクをコントロールする。
【０１３６】
実施例４０において、実施例３１と実施例３８に係る技術的事項は、任意的に以下を含んでよく、ＰＣＩｅルートコンプレクスデバイスは、第２デバイスから、所定のリンク状態に対する要求を受信する。
【０１３７】
実施例４１において、実施例３１と実施例３８に係る技術的事項は、任意的に以下を含んでよく、マイクロコントローラは、第１デバイスの状態を判断する。
【０１３８】
実施例４２において、実施例３１と実施例３８に係る技術的事項は、任意的に以下を含んでよく、マイクロコントローラは、第１デバイスのアイドル状態を判断する。
【０１３９】
実施例４３において、実施例３１と実施例３８に係る技術的事項は、任意的に以下を含んでよく、マイクロコントローラは、第１デバイスに係る少なくとも一つのコンポーネントのアクティブ状態を判断する。
【０１４０】
実施例４４において、実施例３１−４３に係る技術的事項は、任意的に以下を含んでよく、リンクの電力状態は、リンクの電源オフ状態またはリンクの電源オン状態である。
【０１４１】
実施例４５において、実施例３１に係る技術的事項は、任意的に以下を含んでよく、第１デバイスは、決定された電力状態に基づいて、リンクの電源オフ状態を拒否する。
【０１４２】
実施例４６において、実施例３１に係る技術的事項は、任意的に以下を含んでよく、第１デバイスは、決定された電力状態に基づいて、リンクの電源オフ状態を許可する。
【０１４３】
実施例４７において、実施例３１に係る技術的事項は、任意的に以下を含んでよく、第１デバイスは、第１デバイスのグローバルアイドル状態を判断する。
【０１４４】
実施例４８は、リンクを有するシステムであって、リンクに対して接続されている第１デバイスの状態を判断するための手段と、第１デバイスにおいて、リンクに対して接続されている第２デバイスから所定のリンク状態に対する要求を受信するための手段と、第１デバイスの判断された状態に基づいて、リンクの電力状態を決定するための手段と、を含む。
【０１４５】
実施例４９において、実施例４８に係る技術的事項は、任意的に以下を含んでよく、状態を判断するための手段は、第１デバイスのアイドル状態を判断する。
【０１４６】
実施例５０において、実施例４８と実施例４９に係る技術的事項は、任意的に以下を含んでよく、電力状態を決定するための手段は、第１デバイスの判断されたアイドル状態に基づいて、リンクの電源オフ状態を決定する。
【０１４７】
実施例５１において、実施例４８に係る技術的事項は、任意的に以下を含んでよく、状態を判断するための手段は、第１デバイスに係る少なくとも一つのコンポーネントのアクティブ状態を判断する。
【０１４８】
実施例５２において、実施例４８と実施例５１に係る技術的事項は、任意的に以下を含んでよく、電力状態を決定するための手段は、第１デバイスに係る少なくとも一つのコンポーネントの判断されたアクティブ状態に基づいて、リンクの電源オン状態を決定する。
【０１４９】
実施例５３において、実施例４８−５２に係る技術的事項は、任意的に以下を含んでよく、リンクは、第１デバイスと第２デバイスとの間のペリフェラルコンポーネントインターコネクトエクスプレス（ＰＣＩｅ）リンクである。
【０１５０】
実施例５４において、実施例４８と実施例５３に係る技術的事項は、任意的に以下を含んでよく、第１デバイスはプロセッサを含む。
【０１５１】
実施例５５において、実施例４８と実施例５４に係る技術的事項は、任意的に以下を含んでよく、プロセッサは、ＰＣＩｅルートコンプレクスデバイスを含む。
【０１５２】
実施例５６において、実施例４４−５５に係る技術的事項は、任意的に、リンクの判断された電力状態に基づいてリンクに対する電力をコントロールするための手段を含んでよい。
【０１５３】
実施例５７において、実施例４８−５６に係る技術的事項は、任意的に、実施例４８−５６のうちいずれか一つに係るシステムを含んでよく、ここで、リンクの電力状態は、リンクの電源オフ状態またはリンクの電源オン状態である。
【０１５４】
実施例５８において、実施例４８に係る技術的事項は、任意的に、決定された電力状態に基づいて、リンクの電源オフ状態を拒否するための手段を含んでよい。
【０１５５】
実施例５９において、実施例４８に係る技術的事項は、任意的に、決定された電力状態に基づいて、リンクの電源オン状態を許可するための手段を含んでよい。
【０１５６】
実施例６０において、実施例４８に係る技術的事項は、任意的に以下を含んでよく、状態を判断するための手段は、第１デバイスのグローバルアイドル状態を判断する。
【０１５７】
実施例６１は、電子装置であって、第１デバイスの状態を判断し、第１ロジックの少なくとも一部はハードウェアである、第１ロジック、および、第１デバイスの判断された状態に基づいてリンクの電力状態を決定し、第２ロジックの少なくとも一部はハードウェアである、第２ロジック、を含む。
【０１５８】
実施例６２において、実施例６１に係る技術的事項は、任意的に以下を含んでよく、第１ロジックは、第１デバイスのアイドル状態を判断する。
【０１５９】
実施例６３において、実施例６１と実施例６２に係る技術的事項は、任意的に以下を含んでよく、第２ロジックは、第１デバイスの判断されたアイドル状態に基づいて、リンクの電源オフ状態を決定する。
【０１６０】
実施例６４において、実施例６１に係る技術的事項は、任意的に以下を含んでよく、第１ロジックは、第１デバイスに係る少なくとも一つのコンポーネントのアクティブ状態を判断する。
【０１６１】
実施例６５において、実施例６１−６４に係る技術的事項は、任意的に以下を含んでよく、第２ロジックは、第１デバイスに係る少なくとも一つのコンポーネントの判断されたアクティブ状態に基づいて、リンクの電源オン状態を決定する。
【０１６２】
実施例６６において、実施例６１−６５に係る技術的事項は、任意的に以下を含んでよく、リンクは、ペリフェラルコンポーネントインターコネクトエクスプレス（ＰＣＩｅ）リンクである。
【０１６３】
実施例６７において、実施例６１−６６に係る技術的事項は、任意的に以下を含んでよく、リンクの電力状態は、リンクの電源オフ状態またはリンクの電源オン状態である。
【０１６４】
実施例６８において、実施例６１に係る技術的事項は、任意的に以下を含んでよく、第２ロジックは、決定された電力状態に基づいて、リンクの電源オフ状態を拒否する。
【０１６５】
実施例６９において、実施例６１に係る技術的事項は、任意的に以下を含んでよく、第２ロジックは、決定された電力状態に基づいて、リンクの電源オン状態を許可する。
【０１６６】
実施例７０において、実施例６１に係る技術的事項は、任意的に以下を含んでよく、第１ロジックは、第１デバイスのグローバルアイドル状態を判断する。
【０１６７】
実施例７１は、一つまたはそれ以上のインストラクションを含むマシン読取り可能な媒体であって、インストラクションが実行されるとプロセッサに、一つまたはそれ以上のオペレーションを実行させ、リンクに対して接続されている第１デバイスの状態を判断し、かつ、第１デバイスの判断された状態に基づいて、前記リンクの電力状態を決定する。
【０１６８】
実施例７２において、実施例７１に係る技術的事項は、任意的に以下を含んでよく、一つまたはそれ以上のオペレーションは、第１デバイスのアイドル状態を判断することを含む。
【０１６９】
実施例７３において、実施例７１と実施例７２に係る技術的事項は、任意的に以下を含んでよく、一つまたはそれ以上のオペレーションは、第１デバイスの判断されたアイドル状態に基づいて、リンクの電源オフ状態を決定することを含む。
【０１７０】
実施例７４において、実施例７１に係る技術的事項は、任意的に以下を含んでよく、一つまたはそれ以上のオペレーションは、第１デバイスに係る少なくとも一つのコンポーネントのアクティブ状態を判断することを含む。
【０１７１】
実施例７５において、実施例７１と実施例７４に係る技術的事項は、任意的に以下を含んでよく、一つまたはそれ以上のオペレーションは、第１デバイスに係る少なくとも一つのコンポーネントの判断されたアクティブ状態に基づいて、リンクの電源オン状態を決定することを含む。
【０１７２】
実施例７６において、実施例７１−７５に係る技術的事項は、任意的に以下を含んでよく、リンクは、ペリフェラルコンポーネントインターコネクトエクスプレス（ＰＣＩｅ）リンクである。
【０１７３】
実施例７７において、実施例７１−７６に係る技術的事項は、任意的に以下を含んでよく、一つまたはそれ以上のオペレーションは、リンクの判断された電力状態に基づいてリンクに対する電力をコントロールすることを含む。
【０１７４】
実施例７８において、実施例７１−７７に係る技術的事項は、任意的に以下を含んでよく、リンクの電力状態は、リンクの電源オフ状態またはリンクの電源オン状態である。
【０１７５】
実施例７９において、実施例７１に係る技術的事項は、任意的に以下を含んでよく、一つまたはそれ以上のオペレーションは、決定された電力状態に基づいて、リンクの電源オフ状態を拒否することを含む。
【０１７６】
実施例８０において、実施例７１に係る技術的事項は、任意的に以下を含んでよく、一つまたはそれ以上のオペレーションは、決定された電力状態に基づいて、リンクの電源オン状態を許可することを含む。
【０１７７】
実施例８１において、実施例７１に係る技術的事項は、任意的に以下を含んでよく、一つまたはそれ以上のオペレーションは、第１デバイスのグローバルアイドル状態を判断することを含む。
【０１７８】
この明細書における「一つの実施例（“ｏｎｅ  ｅｍｂｏｄｉｍｅｎｔ”）」、「実施例（“ａｎ  ｅｍｂｏｄｉｍｅｎｔ”）」、「実施の例（“ｅｘａｍｐｌｅ  ｅｍｂｏｄｉｍｅｎｔ”）」への言及は、実施例に関して説明された所定の特徴、構成、または、特性が、少なくとも一つの実施例に含まれていることを意味している。明細書の中で様々な場所におけるそうしたフレーズの出現は、必ずしも同一の実施例を参照することを要しない。さらに、特定の機能、構造、または特性がいずれかの実施例に関して説明されるとき、実施例に係る他のものに関連してそうした特徴、構成、または、特性に影響することは当業者の視野の範囲内にあることが示されている。
【０１７９】
実施例は、数多くの説明的な実施例を参照して説明されてきたが、本開示の原理に係る精神および範囲内に入る多くの他の変更および実施例が、当業者によって考案され得ることが理解されよう。より特定的には、明細書、図面、および添付の請求項の範囲内で、主題の組合せ構成に係るコンポーネント部分及び／又は配置において、様々な変形および変更が可能である。コンポーネント部分及び／又は配置の変形および変更に加えて、代替の使用も、また、当業者にとっては明らかである。
【図１】
2018501576.tif 000003
【図２】
2018501576.tif 000004
【図３Ａ】
2018501576.tif 000005
【図３Ｂ】
2018501576.tif 000006
【図４】
2018501576.tif 000007
【図５】
2018501576.tif 000008
【図６】
2018501576.tif 000009
【国際調査報告】
2018501576.tif 000010
2018501576.tif 000011