(57)【要約】  漏れ電力推定を提供する方法および装置が開示される。一実施形態では、１つ以上の検知された温度値（１０８）、および、１つ以上の電圧値（１１０）を利用して集積回路（ＩＣ）コンポーネントの漏れ電力が決定される。他の実施形態も記載されている。【選択図】図２
2009537103.tif 000002
【特許請求の範囲】
【請求項１】
１つ以上の検知された温度値に対応する第１の信号を生成する第１のロジック（２０２）と、
１つ以上の電圧値に対応する第２の信号を生成する第２のロジック（２０４、２５２）と、
前記第１の信号および前記第２の信号に基づき、漏れ電力値に対応する第３の信号を生成する第３のロジック（２０８、２５４）と、
を備える装置。
【請求項２】
前記第３の信号に基づき、コンピュータシステム（１００、３００、５００、６００）の１つ以上の構成要素の電力消費を調整する第４のロジック（１１２）をさらに備える、請求項１に記載の装置。
【請求項３】
前記１つ以上の電圧値は、閾値電圧の現在の値と、供給電圧の現在の値とを含む、請求項１に記載の装置。
【請求項４】
基本漏れ電力値に対応する第４の信号を生成する第４のロジック（２０６）をさらに備え、前記第３のロジックは、前記第１の信号、前記第２の信号、および、前記第４の信号に基づき前記第３の信号を生成する、請求項１に記載の装置。
【請求項５】
前記温度値を検知する１つ以上の温度センサ（１０８）をさらに備える、請求項１に記載の装置。
【請求項６】
前記第３のロジックは、前記第１の信号と前記第２の信号とを乗じることにより、前記第３の信号を提供する乗算器（２０８、２５４）を含む、請求項１に記載の装置。
【請求項７】
１つ以上のプロセッサコア（３００）をさらに備え、前記１つ以上のプロセッサコアの少なくとも１つは、前記第１のロジック、前記第２のロジック、または、前記第３のロジックの１つ以上を含む、請求項１に記載の装置。
【請求項８】
１つ以上のプロセッサコア（３００）をさらに備え、前記１つ以上のプロセッサコアの少なくとも１つ、前記第１のロジック、前記第２のロジック、および、前記第３のロジックは、同じダイにある、請求項１に記載の装置。
【請求項９】
デバイス（１０２）から検知された（４０２）１つ以上の温度値に対応する温度基準化値を決定する（４０４）ことと、
前記デバイスに対応する１つ以上の電圧値に基づき、電圧基準化値を決定する（４０４）ことと、
前記デバイスの漏れ電力に対応する信号を生成すべく、前記温度基準化値および前記電圧基準化値に基づき、前記デバイスの基準漏れ電力値を基準化する（４０６）ことと、
を含む方法。
【請求項１０】
前記検知することと、前記基準化することとは、前記デバイスの実行時間中に実行される、請求項９に記載の方法。
【請求項１１】
前記温度基準化値を決定することは、記憶装置（２０２）にアクセスすることを含む、請求項９に記載の方法。
【請求項１２】
前記電圧基準化値を決定することは、記憶装置（２０４、２５２）にアクセスすることを含む、請求項９に記載の方法。
【請求項１３】
複数のスケーリングファクタを表す複数のビットを格納するメモリ（２０２、２０６、２０４、２５２）と、
１つ以上のコンピュータ動作を実行する１つ以上の構成要素を有する第１のロジック（３３０）と、
検知された温度変化と、前記格納された複数のスケーリングファクタの１つ以上とに少なくとも一部基づき、前記１つ以上の構成要素の少なくとも１つに対応する基本漏れ電力値を基準化する第２のロジック（１０６）と、
を含むコンピュータシステム。
【請求項１４】
前記基準化された漏れ電力値に基づき、前記１つ以上の構成要素の少なくとも１つの電力消費を調整する第３のロジック（１１２）をさらに備える、請求項１３に記載のコンピュータシステム。
【請求項１５】
前記第２のロジックは、温度基準化値に対応する第１の信号と、電圧基準化値に対応する第２の信号と、前記基本漏れ電力値に対応する第３の信号とを乗じる乗算器（２０８、２５４）を含む、請求項１３に記載のコンピュータシステム。
【請求項１６】
前記格納された複数のスケーリングファクタは、複数の温度基準化値と、複数の電圧基準化値とを含む、請求項１３に記載のコンピュータシステム。
【請求項１７】
１つ以上のプロセッサコア（３００）をさらに備え、前記１つ以上のプロセッサコアの少なくとも１つは、前記第１のロジック、前記第２のロジック、または、前記第３のロジックを含む、請求項１３に記載のコンピュータシステム。
【請求項１８】
１つ以上のプロセッサコア（３００）をさらに備え、前記１つ以上のプロセッサコアの少なくとも１つ、前記第１のロジック、前記第２のロジック、および、前記第３のロジックは、同じダイにある、請求項１３に記載のコンピュータシステム。
【請求項１９】
前記１つ以上のコンピュータ動作は、データ処理、データ記憶、および、データ通信の１つ以上を含む、請求項１３に記載のコンピュータシステム。
【請求項２０】
オーディオデバイス（５２６、６４７）をさらに備える、請求項１３に記載のコンピュータシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、概してエレクトロニクスの分野に関する。特に、本発明の実施形態は、集積回路（ＩＣ）デバイスにおける漏れ電力推定に関する。
【背景技術】
【０００２】
動的な電力消費、および、漏れの電力消費のどちらもＩＣ設計における主な懸念の１つである。特に、サブスレッショルド漏れ（または漏れ電力）は、連続した設計世代のそれぞれで増大し続ける可能性がある。例えば、供給電圧が低下する（例えば、動的な電力消費が減少する）につれ、閾値電圧も低下する（例えば、低ゲート遅延または高周波数を維持する）。しかしながら、閾値電圧を低下させると、漏れ電力に非線形に影響を及ぼす。
【０００３】
いくつかの実施態様では、実行時間中の漏れ電力は一定値であると思われている。しかしながら、漏れ電力は、例えば、温度、供給電圧、または、閾値電圧における変化によって、実行時間中に変化する可能性がある。したがって、パワーマネジメント技術は、漏れ電力の知識なくしては正確な結果を出すことはできないだろう。
【図面の簡単な説明】
【０００４】
添付の図面を参照して詳細な説明がなされる。図において、参照番号の左端の桁は、その参照番号が最初に現れる図面を特定する。異なる図面中に同じ参照番号が示されている場合、同様のまたは同一の要素を示す。
【０００５】
【図１】本発明のさまざまな実施形態におけるコンピュータシステムのブロック図である。
【０００６】
【図２Ａ−Ｂ】さまざまな実施形態に従う、漏れ電力推定システムの各部を示すブロック図である。
【０００７】
【図３】一実施形態に従うプロセッサコアのブロック図である。
【０００８】
【図４】一実施形態における方法のフローチャートである。
【図５】本発明のさまざまな実施形態におけるコンピュータシステムのブロック図である。
【図６】本発明のさまざまな実施形態におけるコンピュータシステムのブロック図である。
【発明を実施するための最良の形態】
【０００９】
以下の説明において、さまざまな実施形態を完全なる理解をもたらすべく、多くの特定の詳細が記載される。しかしながら、本発明のさまざまな実施形態は、それら特定の詳細がなくとも実行されうる。他の例において、よく知られる方法、手続き、構成要素、および、回路は、本発明の特定の実施形態をあいまいにすることを避ける目的で、詳しくは説明されていない。本発明の実施形態のさまざまな側面は、例えば、集積半導体回路（ハードウェア）、１つ以上のプログラムに編成されるコンピュータ可読命令（ソフトウェア）、または、ソフトウェアとハードウェアとのいくつかの組合せなどのさまざまな手段を用いて実行されうる。本開示において、「ロジック」という言い方は、ハードウェア、ソフトウェア、あるいは、その組合せのいずれかを意味するものとする。
【００１０】
本願明細書中で採りあげられるいくつかの実施形態は、漏れ電力（例えば、ＩＣデバイスの１つ以上の構成要素により生成される静的またはサブスレッショルド漏れ電力）を推定する効果的な技術を提供しうる。一実施形態では、漏れ電力消費は、温度および／または電圧（例えば閾値および／または供給電圧）における変化などの１つ以上の変化により生じうる。さらに、本願明細書中で採りあげられるいくつかの実施形態は、図１、５および６に関連して説明されるコンピュータシステムなどのさまざまなコンピュータシステムに適用されうる。より詳しくは、図１は、一実施形態におけるコンピュータシステム１００のブロック図である。システム１００は、１つ以上のドメイン１０２−１乃至１０２−Ｍ（以降まとめて複数のドメイン１０２またはドメイン１０２と称する）を含みうる。ドメイン１０２−１乃至１０２−Ｍのそれぞれは、さまざまな構成要素を含みうるが、説明を明確にすべく、ここではドメイン１０２−１および１０２−２だけをサンプル構成要素として示す。また、各ドメイン１０２は、コンピュータシステムの一部（図５および６に関連するか、あるいは、もっと一般的にＩＣデバイスの１つ以上のトランジスタに関連して説明される構成要素など）に対応しうる。一実施形態では、ドメイン１０２のそれぞれは、他のドメインで用いられるクロック信号とは異なる可能性もあるクロック信号により計時されるさまざまな回路（またはロジック）を含みうる。一実施形態では、これらのクロック信号の１つ以上は、メソ同期（ｍｅｓｏｓｙｎｃｈｒｏｎｏｕｓ）であってよく、（例えば、継続的に反復したりしなかったりする関係）を有してもよい。
【００１１】
図１に示すように、各ドメインは、１つ以上のバッファ１０４を介して他のドメインとデータを通信しうる。一実施形態では、バッファ１０４は、先入れ先出し（ＦＩＦＯ）バッファでありうる。各ドメインは、対応するドメイン内の１つ以上の構成要素の漏れ電力を推定するロジック（ドメイン１０２−１および１０２−２それぞれに関連して示され、本願明細書中では通常「ロジック１０６」または「複数のロジック１０６」と称されるロジック１０６−１および１０６−２など）と、１つ以上の温度センサ（ドメイン１０２−１および１０２−２にそれぞれ関連して示されたセンサ１０８−１および１０８−２など）、周波数および／または電圧レベルを制御し、および／または、現在の閾値電圧および／または供給電圧値を提供するロジック（例えば、ドメイン１０２−１および１０２−２にそれぞれ関連して示されたロジック１１０−１および１１０−２）と、対応するドメインの１つ以上の構成要素の電力消費を管理するロジック（例えばドメイン１０２−１および１０２−２に関連してそれぞれ示され、本願明細書中では通常「ロジック１１２」または「複数のロジック１１２」と称されるロジック１１２−１および１１２−２）とを含む。一実施形態では、トランジスタの閾値電圧は、トランジスタの本体（または基板）に電流を印加することにより調整されうる。
【００１２】
さまざまな実施形態では、パワーマネジメントロジック１１２は、対応するドメインの１つ以上の構成要素の電力消費を調整しうる。例えば、ロジック１１２は、（例えば、対応するロジック１０６により提供される）漏れ電力推定値、動的電力推定値、および／または、いくらかの他の情報（例えば、サイクルごとのコミット命令、キャッシュミスなど）を利用して対応するドメインの１つ以上の構成要素の供給電圧および／または閾値電圧を調整しうる。また、ロジック１１２は、クロック信号（例えば、対応するドメインの少なくとも一部の範囲内で用いられるクロック信号）の周波数を調整しうる。一実施形態では、ロジック１１２は、１つ以上の構成要素をオフにしうる。１つ以上の構成要素とは、以下を含む。１つ以上のプロセッサコアまたはプロセッサコアの一部（例えば、異なるパイプラインなど）、および／または、データキャッシュ（例えば、レベル１（Ｌ１）、レベル２（Ｌ２）、または、他のレベル）などのさまざまなキャッシュレベルを含む）、または、データキャッシュの一部（例えば、キャッシュの異なるバンク）。
【００１３】
図２Ａおよび２Ｂは、さまざまな実施形態における漏れ電力推定システム２００および２５０の一部を示すブロック図である。一実施形態では、システム２００および２５０は、図１に関連して説明したロジック１０６と同じかまたは同様である。一実施形態では、図２Ａおよび２Ｂに関連して説明される記憶装置は、図５および／または６に関連して説明されるメモリ要素と同じかまたは同様である。
【００１４】
図２Ａおよび２Ｂに示されるように、システム２００および２５０は、（例えば、複数の温度スケーリングファクタ値を格納するための）温度スケーリングファクタ記憶装置２０２を含みうる。記憶装置２０２は、図１、５、および、６に関連して説明されるような１つ以上の構成要素に対応するセンサ１０８から、検知された温度値を受信しうる。システム２００は、（例えば、複数の電圧係数値を格納するための）電圧スケーリングファクタ記憶装置２０４、および、（例えば、基準または基本漏れ電力値を格納するための）基準漏れ記憶装置２０６も含みうる。記憶装置２０６に格納されたベース漏れ値は、（例えば、シミュレーションまたは回路測定によって）設計時に、または、試験時に決定されうる。例えば、ベース漏れ値は、変動性が比較的高い設計の試験時に決定されうる。（各チップおよび／またはブロックごとに基本値を計算すれば、各回路の特性に応じて推定値を適用できるからである。）
【００１５】
一実施形態では、システム２００は、（例えば、検知された値が記憶装置２０２に格納された最も近い値になるように）、センサ１０８から受信された温度値を丸める丸めロジック２１０も含みうる。補間ロジック２１２は、記憶装置２０２により出力された値をセンサ１０８により提供される実際の温度測定値に補間しうる。同様に、システム２００は、（例えば、現在の閾値および／または供給電圧値を記憶装置２０４に格納された最も近い値になるように丸めるための）電圧丸めロジック２１４と、（例えば、記憶装置２０４により出力された値を制御ロジック１１０により提供された実際の電圧値に補間するための）電圧補間ロジック２１８とを含みうる。乗算器２０８は、（例えば、センサ１０８により検知された温度値に基づき記憶装置２０２から取得した）決定温度スケーリングファクタと、（例えば、ロジック１１０により提供された現在の電圧値に基づき記憶装置２０４から取得した）決定電圧スケーリングファクタと、（記憶装置２０６からの）基準漏れ値とを乗じてよい。その後、乗算値は、図１に関連して説明されたような（例えばパワーマネジメントロジック１１２）による電力設定の管理に利用されうる。
【００１６】
図２Ｂを参照すると、システム２５０は、対応する電圧セットのベース漏れ値を格納する基準漏れ記憶装置２５２を含みうる。したがって、一実施形態では、単一の記憶装置（２５２）は、図２Ａの基準漏れ記憶装置２０６に格納された値と、図２Ａの電圧スケーリングファクタ記憶装置２０４に格納された対応する値との組合せに対応する値を格納しうる。例えば、複数の漏れ電力値は、（例えば、センサ１０８により提供される）温度係数と、（例えば、ロジック１１０により提供された閾値電圧値および／または供給電圧値に対応する）電圧係数とによりインデックス付けされる。このような実施形態は、（例えば、ロジック１１０からの現在の閾値および／または供給電圧値に基づく）一回の取得によって、乗算器２５４を介して、（例えばセンサ１０８により提供された検知温度値に基づき）記憶装置２０２から取得される温度スケーリングファクタにより基準化されうる基準漏れ値が得られるようにしうる。あるいは、記憶装置２０２、２０４、２０６、および／または、２５２に格納された値は、単一の記憶装置（図示せず）内で組み合わされることにより、一回の取得によってセンサ１０８により提供された検知温度、および／または、ロジック１１０からの供給電圧値に対応する漏れ値が得られるようにしうる。また、システム２５０は、いくつかの実施形態に従う、（例えばロジック２１０、２１２、２１４、および／または、２１８と同じかまたは同様でありうる）丸めおよび／または補間ロジックを含みうる。
【００１７】
図３は、一実施形態におけるプロセッサコア３００のブロック図を示す。一実施形態では、コア３００は、（図５および６に関連して説明されるような）１つまたは多数のプロセッサ内に存在する可能性のあるさまざまな構成要素を表しうる。プロセッサコア３００は、第２レベルキャッシュドメイン３０２、フロントエンドドメイン３０４、および、１つ以上のバックエンドドメイン３０６などの１つ以上のドメインを含みうる。各ドメイン３０２、３０４、および、３０６内の構成要素は、図１に関連して説明されたような異なるクロック信号により同期を取られることができる。さらに、各ドメイン（例えば３０２、３０４、および、３０６）は、さまざまな実施形態において、図３に示される数以下の構成要素を含みうる。
【００１８】
第２レベル（Ｌ２）キャッシュドメイン３０２は、（例えば、命令を含むデータを格納するための）Ｌ２キャッシュ３０８、センサ１０８、および、ロジック１０６、１１０、１１２を含みうる。一実施形態では、Ｌ２キャッシュ３０８は、図５および６に関連して説明されたようなマルチコアプロセッサ内の複数のコアにより共有されうる。また、Ｌ２キャッシュ３０８は、プロセッサコアと同じダイにあってもなくてもよい。したがって、本発明のさまざまな実施形態では、プロセッサは、ドメイン３０４および３０６を含んでよく、Ｌ２キャッシュ３０８を含んでも含まなくてもよい。
【００１９】
図３に示すように、フロントエンドドメイン３０４は、１つ以上のセンサ１０８、ロジック１０６、１１０、および、１１２、リオーダバッファ３１８、名前変更案内ユニット３２０、命令キャッシュ３２２、デコードユニット３２４、シーケンサ３２６、および／または、分岐予測ユニット３２８を含みうる。一実施形態では、フロントエンドドメイン３０４は、例えば命令フェッチユニットなどの他の構成要素を含みうる。
【００２０】
バックエンドドメイン３０６は、１つ以上の第１レベル（Ｌ１）キャッシュドメイン３２８、および、１つ以上の実行ドメイン３３０−１乃至３３０−Ｎを含みうる。Ｌ１キャッシュドメイン３２８は、（例えば命令を含むデータを格納するための）Ｌ１キャッシュ３３２、センサ１０８、および、ロジック１０６、１１０、１１２を含みうる。さらに、実行ドメイン３３０−１乃至３３０−Ｎは、整数実行ユニットおよび／または浮動小数点実行ユニットの１つ以上を含みうる。実行ドメイン３３０−１乃至３３０−Ｎは、それぞれ、発行キュー（３３８−１乃至３３８−Ｎのそれぞれ）、レジスタファイル（３４０−１乃至３４０−Ｎのそれぞれ）、センサ１０８、ロジック１０６、１１０、１１２、および／または、実行ユニット（３４６−１乃至３４６−Ｎのそれぞれ）を含みうる。
【００２１】
一実施形態では、各ドメイン３０２、３０４、および、３０６は、さまざまなクロックドメインの間（例えば、ドメイン３０２、３０４、および／または、３０６の間）の通信を同期させる１つ以上の先入れ先出し（ＦＩＦＯ）バッファ３４８を含みうる。
【００２２】
加えて、プロセッサコア３００（および、例えば、図３に示されるような一実施形態では、バックエンドドメイン３０６）は、プロセッサコア３００のさまざまな構成要素間の通信を容易にする相互接続またはバス３５０を含みうる。例えば、命令が（実行ドメイン３３０−１乃至３３０−Ｎなどによって）無事実行された後、命令コミットが（例えば相互接続３５０を介し）ＲＯＢ３１８と通信することにより、その命令を取り下げうる。また、バックエンド内のドメイン（例えばドメイン３２８、および、３３０−１乃至３３０−Ｎ）は、相互接続３５０を介し通信しうる。例えば、実行ユニット（３３０−１乃至３３０−Ｎ）間の通信は、型変換命令に対して生じる。図１乃至３の構成要素のさらなる動作は、図４の方法４００に関連して以下に説明する。
【００２３】
さらに、図３では、各ドメイン３０２、３０４、および、３０６がセンサ１０８、ロジック１０６、１１０、１１２を含むように示されているが、異なるドメインが同じセンサ１０８、および、ロジック１０６、１１０、および１１２を共有してもよい。例えば、センサ１０８とロジック１０６、１１０、および、１１２との一式が、プロセッサコア３００のすべてのドメインに利用されうる。
【００２４】
図４は、一実施形態に従う、推定漏れ電力を提供する方法４００のフローチャートである。一実施形態では、方法４００の動作は、例えば、図１乃至３、および、図５、６に関連して説明された構成要素のような１つ以上の構成要素により実行されうる。
【００２５】
図１乃至４を参照すると、動作４０２において、センサ１０８は、ＩＣデバイスに対応する１つ以上の温度値を検知しうる。検知された温度値は、動作４０４において、（例えば記憶装置２０２からの）温度スケーリングファクタを決定するために用いられうる。動作４０４では、（例えば記憶装置２０４および／または２５２から、）図２Ａおよび２Ｂに関連して説明されたような電圧スケーリングファクタも決定されうる。動作４０６では、動作４０４で決定されたスケーリングファクタは、図２Ａおよび図２Ｂに関連して説明されたような、（例えばユニット２０６および／または２５２）に格納された）基本漏れ値を基準化すべく用いられうる。動作４０８では、（例えば、乗算器２０５および２５４により）、ＩＣデバイスの推定漏れ電力に対応する信号が生成されうる。図１に関連して述べられたように、推定された漏れ電力（４０８）は、（図１、５、および／または、６に関連して説明されたシステムのような）コンピュータシステムの１つ以上の構成要素の電力消費を調整すべく用いられうる。
【００２６】
一実施形態では、動作４０８において、推定漏れ電力を提供すべく、以下の方程式が用いられうる。
【数１】
2009537103.tif 000003
【００２７】
上記式では、Ｐは、推定された漏れ電力値に対応し、Ｐ０は、（例えば、ユニット２０６および／または２５２に格納されうる）基本漏れ電力値に対応し、Ｖｄｄは、（ロジック１１０により提供されうる）供給電圧に対応し、Ｖｔｈは、（ロジック１１０により提供されうる）閾値電圧に対応し、Ｖｄｄ０は、基本漏れが測定されたＶｄｄに対応し、Ｖｔｈ０は、基本漏れが測定されたＶｔｈに対応し、Ｔは、センサ１０８により検知された現在の温度値に対応し、Ｔ０は、基本漏れが測定された温度に対応し、δ、βおよびγは、設計者により設定された回路依存定数である。さまざまな実施形態において、項
【数２】
2009537103.tif 000004
に対応する値は、記憶装置２０２に格納されることができ、項
【数３】
2009537103.tif 000005
に対応する値は、記憶装置２０４（または２５２）に格納されうる。それゆえ、項Ｔ（Ｔ）およびＶ（Ｖｄｄ、Ｖｔｈ）を乗算することによりＰの値を得るべく、乗算器（２０８、２５４）が用いられる。
【００２８】
さらに、一実施形態では、ＩＣコンポーネントの動的較正が（例えば、動的電力消費のない）アイドルモードで実行されうる。このような状況において、ＩＣコンポーネントの各部分（例えばブロック）における（制御された周囲温度を超えた）温度上昇は、漏れ電力に依存しうる。ブロック内に配置されうる熱センサ１０８は、（例えば、比較的長い期間の後）安定した温度を記録しうる。温度マップを用い、（例えば、ＩＣコンポーネントの外部にあるコンピュータなどのツール）は、例えば、リバースエンジニアリングを介しシナリオを作成するパワーマップを導きうる。（供給電圧、閾値電圧、および、周囲温度などの他の定数は知られているので）、漏れ値は、各部分の静的温度に基づき計算されうる。計算されたパワーマップは、基準漏れ記憶装置２０６に格納されうる。一実施形態では、較正されるＩＣコンポーネントと、（例えば温度の読取りを報告し、基本漏れのアップデートを実行するための）試験装置との間の通信のために特別な専用マイクロコードが用いられうる。
【００２９】
図５は、本発明の一実施形態に従うコンピュータシステム５００のブロック図である。コンピュータシステム５００は、相互接続ネットワーク（またはバス）５０４を介し通信する１つ以上の中央処理装置（ＣＰＵ）５０２またはプロセッサを含みうる。プロセッサ５０２は、汎用プロセッサ、（コンピュータネットワーク５０３を介し通信されるデータを処理する）ネットワークプロセッサなどの任意のタイプのプロセッサ、または、（縮小命令セットコンピュータ（ＲＩＳＣ）プロセッサ、または、複雑命令セットコンピュータ（ＣＩＳＣ）を含む）他のタイプのプロセッサでありうる。さらに、プロセッサ５０２は、単一または複数のコア設計を有しうる。複数のコア設計を有するプロセッサ５０２は、同じ集積回路（ＩＣ）ダイに異なるタイプのプロセッサコアを集積しうる。また、複数のコア設計を有するプロセッサ５０２は、対称または非対称のマルチプロセッサとして実装されうる。一実施形態では、１つ以上のプロセッサ５０２は、図１乃至４に関連して説明された実施形態を利用しうる。例えば、１つ以上のプロセッサ５０２は、１つ以上のプロセッサコア（３００）を含みうる。また、図１乃至４に関連して説明された動作は、システム５００の１つ以上の構成要素により実行されうる。
【００３０】
チップセット５０６は、相互接続ネットワーク５０４とも通信しうる。チップセット５０６は、メモリ制御ハブ（ＭＣＨ）５０８を含みうる。ＭＣＨ５０８は、メモリ５１２と通信するメモリコントローラ５１０を含みうる。メモリ５１２は、ＣＰＵ５０２、または、コンピュータシステム５００に含まれる他のいかなるデバイスによって実行されるデータおよび命令シーケンスを格納しうる。本発明の一実施形態では、メモリ５１２は、ランダムアクセスメモリ（ＲＡＭ）、ダイナミックＲＡＭ（ＤＲＡＭ）、同期ＤＲＡＭ（ＳＤＲＡＭ）、スタティックＲＡＭ（ＳＲＡＭ）などの１つ以上の揮発性記憶装置（またはメモリ）を含みうる。ハードディスクなどの不揮発性メモリも用いられうる。多重ＣＰＵ、および／または、多重システムメモリなどのさらなるデバイスは、相互接続ネットワーク５０４を介し通信しうる。
【００３１】
ＭＣＨ５０８は、グラフィックアクセラレータ５１６と通信するグラフィックインターフェース５１４も含む。本発明の一実施形態では、グラフィックインターフェース５１４は、アクセラレイティッドグラフィックスポート（ＡＧＰ）を介しグラフィックアクセラレータ５１６と通信しうる。本発明の一実施形態では、（フラットパネルディスプレイなどの）ディスプレイは、例えば、ビデオメモリまたはシステムメモリなどの記憶装置に格納された画像のデジタル表現をディスプレイにより読み取られて表示されるディスプレイ信号に変換する信号変換器を介しグラフィックインターフェース５１４と通信しうる。ディスプレイデバイスにより生成されるディスプレイ信号は、ディスプレイにより読み取られて表示される前にさまざまな制御デバイスを通過しうる。
【００３２】
ハブインターフェース５１８は、ＭＣＨ５０８が入出力制御ハブ（ＩＣＨ）５２０と通信することを可能にする。ＩＣＨ５２０は、コンピュータシステム５００の構成要素と通信するＩ／Ｏデバイスにインターフェースを提供する。ＩＣＨ５２０は、ｐｅｒｉｐｈｅｒａｌ  ｃｏｍｐｏｎｅｎｔ  ｉｎｔｅｒｃｏｎｎｅｃｔ  （ＰＣＩ）ブリッジ、Ｕｎｉｖｅｒｓａｌ  Ｓｅｒｉａｌ  Ｂｕｓ（ＵＳＢ）コントローラなどの周辺ブリッジ（またはコントローラ）５２４を介しバス５２２と通信しうる。ブリッジ５２４は、ＣＰＵ５０２と周辺デバイスとの間のデータパスを提供しうる。他のタイプのトポロジも利用されうる。また、多重バスは、例えば、多重ブリッジまたはコントローラを介しＩＣＨ５２０と通信しうる。さらに、本発明のさまざまな実施形態では、ＩＣＨ５２０と通信する他の周辺装置は、ＩＤＥ（ｉｎｔｅｇｒａｔｅｄ  ｄｒｉｖｅ  ｅｌｅｃｔｒｏｎｉｃｓ）または小型コンピュータシステムインターフェース（ＳＣＳＩ）ハードドライブ、ＵＳＢポート、キーボード、マウス、パラレルポート、シリアルポート、フロッピーディスクドライブ、デジタル出力サポート（例えばデジタルビデオインターフェース（ＤＶＩ））などを含む。
【００３３】
バス５２２は、オーディオデバイス５２６、１つ以上のディスクドライブ５２８、および、（コンピュータネットワーク５０３と通信する）ネットワークインターフェースデバイス５３０と通信しうる。他のデバイスは、バス５２２と通信しうる。また、本発明のいくつかの実施形態では、さまざまな構成要素（ネットワークインターフェースデバイス５３０）は、ＭＣＨ５０８と通信しうる。さらに、プロセッサ５０２とＭＣＨ５０８とを組み合わせることにより、単一のチップが形成されうる。またさらに、本発明の他の実施形態では、グラフィックアクセラレータ５１６は、ＭＣＨ５０８内に含まれうる。
【００３４】
さらに、コンピュータシステム５００は、揮発性および／または不揮発性メモリ（または記憶装置）を含みうる。例えば、不揮発性メモリは、リードオンリーメモリ（ＲＯＭ）、プログラマブルＲＯＭ（ＰＲＯＭ）、消去可能プログラマブルＲＯＭ（ＥＰＲＯＭ）、電気的消去可能ＰＲＯＭ（ＥＥＰＲＯＭ）、ディスクドライブ（例えば５２８）、フロッピーディスク、コンパクトディスクＲＯＭ（ＣＤ−ＲＯＭ）、デジタル多用途ディスク（ＤＶＤ）、フラッシュメモリ、光磁気ディスク、あるいは、電子命令および／またはデータを格納することが可能な他のタイプの不揮発性機械可読媒体のうちの１つ以上を含みうる。
【００３５】
図６は、本発明の一実施形態に従う、ポイントツーポイント（ＰｔＰ）で配置されたコンピュータシステム６００を示す。特に、図６は、プロセッサ、メモリ、および、入出力デバイスが多数のポイントツーポイントインターフェースによって相互接続されているシステムを示す。図１乃至５に関連して説明される動作は、システム６００の１つ以上の構成要素によって実行されうる。
【００３６】
図６に示すように、システム６００は、いくつかのプロセッサを含みうるが、説明を簡単にすべく、そのうちの２つのプロセッサ６０２および６０４のみが図示されている。プロセッサ６０２および６０４のそれぞれは、メモリ６１０および６１２との通信を可能にするローカルメモリコントローラハブ（ＭＣＨ）６０６および６０８を含みうる。メモリ６１０および／または６１２は、メモリ５１２に関連して説明されたようなさまざまなデータを格納しうる。
【００３７】
プロセッサ６０２および６０４は、図５のプロセッサ５０２に関連して説明されたようないかなるタイプのプロセッサであってよい。プロセッサ６０２および６０４は、それぞれ、ＰｔＰインターフェース回路６１６および６１８を用いてポイントツーポイント（ＰｔＰ）インターフェース６１４を介しデータを交換しうる。プロセッサ６０２および６０４は、ポイントツーポイントインターフェース回路６２６、６２８、６３０、および、６３２を用いて、個々のＰｔＰインターフェース６２２および６２４を介しチップセット６２０とデータを交換しうる。チップセット６２０は、ＰｔＰインターフェース回路６３７を用いて、高性能グラフィックインターフェース６３６を介し高性能グラフィック回路６３４とデータを交換してもよい。
【００３８】
本発明の少なくとも１つの実施形態において、プロセッサ６０２および６０４が提供される。例えば、図１に関連して説明された１つ以上のドメイン１０２、および／または、プロセッサコア３００は、プロセッサ６０２および６０４内に配置されうる。しかしながら、図６のシステム６００内の他の回路、論理演算装置、または、デバイスに本発明の他の実施形態が存在してもよい。さらに、本発明の他の実施形態は、図６に示されるいくつかの回路、論理演算装置、または、デバイス全体に分散されてよい。
【００３９】
チップセット６２０は、ＰｔＰインターフェース回路６４１を用いてバス６４０と通信しうる。バス６４０は、バスブリッジ６４２および／またはＩ／Ｏデバイス６４３などと通信する１つ以上のデバイスを有しうる。バスブリッジ６４３は、バス６４４を介し、キーボード／マウス６４５、（例えば、コンピュータネットワーク５０３と通信しうるモデム、ネットワークインターフェースデバイスなどの）通信デバイス６４６、オーディオＩ／Ｏデバイス、および／または、データ記憶装置６４８と通信しうる。データ記憶装置６４８は、プロセッサ６０２および／または６０４により実行されうるコード６４９を格納しうる。
【００４０】
本発明のさまざまな実施形態では、例えば図１乃至６に関連して説明される動作は、例えば、本願明細書中に記載されるプロセスを実行するコンピュータをプログラムするのに用いられる命令（またはソフトウェア手順）を格納する機械可読またはコンピュータ可読媒体を含むコンピュータプログラム製品として提供されうる、ハードウェア（例えば回路）、ソフトウェア、ファームウェア、マイクロコード、または、それらの組合せによって実装されることができる。また、「ロジック」という用語は、例えば、ソフトウェア、ハードウェア、または、ソフトウェアとハードウェアとの組合せを含みうる。機械可読媒体は、図１乃至６に関連して説明されたような記憶装置を含みうる。また、このようなコンピュータ可読媒体は、コンピュータプログラム製品としてダウンロードされうる。その場合、プログラムは、通信リンク（例えば、バス、モデム、または、ネットワーク接続）を介し搬送波、または、他の伝搬媒質で表されるデータ信号により、リモートコンピュータ（サーバなど）から要求元コンピュータ（クライアントなど）へと転送されうる。したがって、本願明細書中では、搬送波は、機械可読媒体を含むものとする。
【００４１】
明細書における、「１つの実施形態」、または、「一実施形態」への言及は、実施形態に関連して記載されている特定の特長、構造、または、特徴が少なくとも１つの実装に含まれうることを意味する。したがって、随所に見られる「一実施形態」というフレーズは、同じ実施形態を指す場合も指さない場合もありうる。
【００４２】
また、明細書および請求項の範囲において、「結合」および「接続」という言葉がそれらの派生語と共に用いられている。本発明のいくつかの実施形態では、「接続」は、２つ以上の要素が物理的または電気的互いに直接接触していることを示すために用いられうる。「結合」は、２つ以上の要素が物理的または電気的に直接接触していることを示すために用いられうる。しかしながら、「結合」は、２つ以上の要素が互いに直接接触してはいないが、互いに協働または作用し合っていることを意味することもある。
【００４３】
したがって、本発明の実施形態は、構造の特長および／または方法論的動作に特有の言葉で説明されてきてはいるものの、請求項の内容は、それら特定の特長および動作に必ずしも限定されないと理解されたい。むしろ、特定の特長および動作は、請求項の内容を実装するサンプルの形式として開示されている。
【図１】
2009537103.tif 000006
【図２Ａ】
2009537103.tif 000007
【図２Ｂ】
2009537103.tif 000008
【図３】
2009537103.tif 000009
【図４】
2009537103.tif 000010
【図５】
2009537103.tif 000011
【図６】
2009537103.tif 000012
【国際調査報告】
2009537103.tif 000013
2009537103.tif 000014
2009537103.tif 000015
2009537103.tif 000016
2009537103.tif 000017
2009537103.tif 000018