(57)【要約】【課題】過渡的熱システムの熱的状態を予測する方法およびシステムを提供すること。【解決手段】過渡的熱システムの内部温度の推定値の一貫したセットを構成するためにセンサ出力および熱パラメータを組み合わせることを含む。【選択図】図２１
2008507744.tif 000002
【特許請求の範囲】
【請求項１】
過渡的熱システムの熱的状態を推定する方法であって、
過渡的熱システムの内部温度の推定値の一貫したセットを構成するために、センサ出力および熱パラメータを組み合わせるステップを含む、
方法。
【請求項２】
前記過渡的熱システムは、マイクロプロセッサ・ユニットを含む、請求項１に記載の方法。
【請求項３】
前記センサ出力を提供するためにセンサの配列を用いることによりチップ上の温度成分を推定するステップをさらに含む、
請求項１に記載の方法。
【請求項４】
将来温度を予測する方法であって、
命令キャッシュの内容を用いて、予期される電力損失を判断するステップを含む、
方法。
【請求項５】
最高温度を取り出すために測定温度を補間するステップをさらに含む、
請求項４に記載の方法。
【請求項６】
前記命令キャッシュの命令の実行保留により損失される将来の電力を計算するステップをさらに含む、
請求項４に記載の方法。
【請求項７】
前記計算された将来の電力に基づいて冷却能力を移動させるステップをさらに含む、
請求項６に記載の方法。
【請求項８】
熱システムの過渡的性質の温度を推定する方法であって、
温度測定値が利用可能にされることなく、前記熱システムの駆動電流および熱パラメータを決定するステップを含む、
方法。
【請求項９】
推定温度と前記熱システムの表面の最高温度とを関連付けるステップをさらに含む、
請求項１に記載の方法。
【請求項１０】
前記熱システムは、チップを含む、請求項１に記載の方法。
【請求項１１】
チップ表面全体の温度が推定される、請求項１０に記載の方法。
【請求項１２】
前記熱システムはチップを含み、前記チップの表面の局所領域の温度が推定される、請求項１に記載の方法。
【請求項１３】
チップ表面全体の温度、またはチップ表面の局所領域の温度を選択的に推定するステップをさらに含む、
請求項１０に記載の方法。
【請求項１４】
処理されるべき命令ストリームを認識することにより前記熱システムの将来の温度を予測するステップをさらに含む、
請求項１に記載の方法。
【請求項１５】
チップの温度を判断する方法であって、
温度センサの限定されたセットを用い、電力損失を用いて、チップ表面上の温度を推定するステップと、
前記チップにより処理されるべき命令ストリーム特性を認識することにより前記チップの将来の温度を予測するステップとを含む、
方法。
【請求項１６】
前記推定ステップは、リアルタイムで、かつ前記チップのシリコン基板全体にわたって実行される、請求項１５に記載の方法。
【請求項１７】
所定の閾値より高い温度を有すると予測された前記チップの位置に冷却能力を振り向けるステップをさらに含む、
請求項１５に記載の方法。
【請求項１８】
所定の閾値より高い予測温度を生じると決定された命令ストリームを再編成するステップをさらに含む、
請求項１５に記載の方法。
【請求項１９】
前記命令ストリームは、キャッシュ命令ストリームの一部を含む、請求項１８に記載の方法。
【請求項２０】
基板の温度を推定する方法であって、
限定された数のセンサ入力および電力損失特性を用いて、基板表面全体にわたりリアルタイムで現在温度を測定するステップと、
命令待ち行列に基づいて将来の温度変化を予測するステップとを含む、
方法。
【請求項２１】
チップ上の温度を推定するための方法であって、
前記チップの表面を有限かつ隣接する区域に分割するステップと、
前記チップの表面から周囲への動的な熱伝達についての縮小次元推定子モデル（reducedorder estimator model）を展開するステップと、
温度センサを設置し、欠落温度成分を推定するステップと、
温度センサを前記チップの表面に接してまたは離して配置し、様々な区域への実際の電流を測定するステップと、
前記チップに関連する命令キャッシュを、一連のＸ−Ｙ分布された熱パケットの量子（quanta）にマッピングするステップと、
キャッシュ内容の実行を仮定して将来のチップ温度を予測するステップと、
前記命令キャッシュを前記チップ表面上の温度にマッピングするステップと、
電力履歴を用いて、予測リード・タイムを増大し、アルゴリズム複雑度を低減するステップと、
平均計算温度から、代表的ピーク温度マップを計算するステップと、
動的熱管理（ＤＴＭ）モジュールに複合温度を提示するステップとを含む、
方法。
【請求項２２】
過渡的熱システムの熱的状態を予測するための装置であって、
複数のセンサ出力を提供するための複数のセンサと、
過渡的熱システムの内部温度の推定値の一貫したセットを構成するために、センサ出力および熱パラメータを組み合わせるための手段とを含む、
装置。
【請求項２３】
過渡的熱システムの熱的状態を推定する方法を実行するためにデジタル処理装置により実行可能な機械可読命令のプログラムを明確に具体的する信号担持媒体であって、
過渡的熱システムの内部温度の推定値の一貫したセットを構成するために、センサ出力および熱パラメータを組み合わせるステップを含む、
媒体。
【請求項２４】
前記推定ステップは、前記熱システムの不正確なパラメータの存在下において実行される、
請求項３に記載の方法。
【請求項２５】
前記命令キャッシュの待ち行列中の命令に情報を埋め込むステップをさらに含む、
請求項４に記載の方法。
【請求項２６】
作業負荷を再均衡させるための動的熱管理ユニットを含む前記熱システムの機能ユニットにより共有される温度マップを用いるステップをさらに含む、
請求項１に記載の方法。
【請求項２７】
分散型冷却システムを含む前記熱システムの機能ユニットにより共有される温度マップを用い、それにより前記冷却システムの冷却能力を管理するステップをさらに含む、
請求項１に記載の方法。
【請求項２８】
前記冷却システムの冷却能力を、増大された冷却を必要とする前記熱システムの位置へ選択的に移動させるステップをさらに含む、
請求項２７に記載の方法。
【請求項２９】
前記推定値のセットに基づいて前記過渡的熱システムの熱的状態を予測するステップをさらに含む、
請求項１に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電子デバイスの熱的状態の推定および予測のための方法および装置に関し、より具体的には、温度および電流測定値の限られたセットを用いるマイクロプロセッサ・ユニットの熱的状態（例えば、全体的な温度分布）のリアルタイム推定および予測のための方法および装置に関する。
【背景技術】
【０００２】
現在のコンピュータ・システムには、システムの熱力学を説明すると同時に温度の空間的分布（例えば、熱エネルギー）を取り出す能力がない。
【０００３】
一般に、プロセッサを保護モードに入れるトリガーとするために１個ないし２個の熱センサが用いられる。結果として、チップ上の許容温度は、接合部温度仕様の違反を回避するために、必要以上に保守的に低く保たれる。これは非能率的であり、問題となり得る。
【０００４】
加えて、ある区域上での持続的な電力損失は、チップの保全性を低減させ得る「ホット・スポット（ｈｏｔ  ｓｐｏｔｓ）」をシリコン上に生じさせ得る。しかしながら、保守的な温度仕様は、プロセッサの性能を制限する。従って、チップを「安全に」保つことと、チップの性能を最適化することとの間にトレードオフ（二律背反）がある。
【０００５】
本発明以前には、チップ上の局所的および全体的な最高温度のリアルタイムでの取り出しに取り組んだ装置および技術、あるいはチップ上の温度を管理するための構造化された方法の開発を容易にした装置および技術は皆無であった。
【０００６】
マイクロプロセッサ（２０ｍｍ×２０ｍｍシリコン・チップ）における電力消費量は、この１０年間で１００ワットをはるかに超えて増大すると予測されている。図１（Ａ）は、代表的な冷却構成を示しており、機械命令のストリームの実行が、Ｘ−Ｙ平面（例えば、図１（Ｂ）参照）で損失される電力量Ｑ（ｘ，ｙ，ｔ）を決定する。
【０００７】
電力は、「漏洩電流」と呼ばれる一定した（ＤＣ）成分を有する。各クロック・サイクルは、プロセッサ回路層におけるＸ−Ｙ平面内に分布される「エネルギー・パケットの量子（quanta of energy packet）」を放出し、かくして不安定なＡＣ成分の一因となる。
【０００８】
プロセッサにおけるＡＣおよびＤＣ電力損失の累積効果は、プロセッサの十分な潜在的性能を実現する際の主たる制限要因である。電力損失増大の傾向は、プロセッサおよび冷却システム設計に対しいっそう大きな課題を投げかけると予測される。過渡電力は、時間と共に変わる温度を生じさせ、図１（Ｃ）に示されるように、Ｔｉｊは任意の時間における選択された区域（ｉ，ｊ）についての平均温度を表す。座標ｘｉおよびｙｊは、矩形（ｉ，ｊ）の中心に対応する。厳密には、Ｔｉｊは実際には、連続時間系についてのＴｉｊ（ｔ）である。
【０００９】
コンピュータ・システムの冷却能力により、プロセッサ・システムの平均温度が決まる。しかしながら、命令の実行は、プロセッサ中で空間的に不均一であり時間と共に変わる電力損失Ｑ（ｘ，ｙ，ｔ）を引き起こす。ここで「ｔ」は時間を示す。対応する温度Ｔ（ｘ，ｙ，ｔ）は、所与の時刻において局所的最高および全体的最高を有し得る。
【００１０】
複雑な流体力学問題に対する解法が浮動小数点ユニット（ＦＰＵ）に負担をかけることがあるのに対して、例えば、ソーティング・アルゴリズムは、チップの演算ユニット（ＡＵ）に負担をかけることがある。結果として生じる過渡温度Ｔ（ｘ，ｙ，ｔ）は、冷却システムの平均バルク温度に比べて数度変動し得る。関係のある時間尺度は、概して何分の１ミリ秒〜数ミリ秒であり得る。プロセッサは、演算ユニット、浮動小数点ユニット、キャッシュ、命令復号（デコード）ユニット等のいくつかの論理的に独立したユニットを有する。計算操作の間すべてのユニットが均一に稼働させられるのではなく、最高温度が生じる位置は、時間と共に移動することが注目される。
【００１１】
理論的には、能動回路デバイスを含むシリコン表面上に分布された温度センサの大きい配列（アレイ）により、Ｘ−Ｙ次元におけるチップの現在温度への定量的な関連が提供され得るであろう。
【００１２】
しかしながら、デジタル電子回路内へ多数のトランジスタ（ダイオード）ベースの温度センサを埋め込むことは、デジタル回路設計の妨げになるだけでなく、プロセッサ・システムのコスト、性能および信頼性にも影響を与える。
【００１３】
実際に、マイクロプロセッサの温度を測定する１つの方法は、温度センサとしてダイオードを使うことである。このダイオードは、チップの外部に設けるか、またはチップ内に組み込むことができるであろう。外部温度ダイオードは、アナログ回路用に最適化された半導体プロセスにおいて組み立てられ、内部ダイオードよりも良好な分解能を有する傾向がある。現在の技術水準は、＋／−１℃である。組み込みダイオードは、デジタル回路と折り合いをつけなければならず、仕様はずっと劣る。
【００１４】
例えば、Ｍｏｔｏｒｏｌａ  ＰｏｗｅｒＰＣ（Ｒ）は、＋／−４℃の分解能を有する温度感知ダイオードを備える。ダイオード両端の順方向電圧降下Ｖｄは、温度に直線的に比例し、以下の式により与えられることがよく知られている：
Ｖｄ＝（Ｎ＊ｋ＊Ｔ／ｑ）＊ｌｎ（Ｉｆ／Ｉｓ）
式中、Ｎ＝非線形因子、ｋ＝ボルツマン定数、Ｔ＝絶対温度、ｑ＝電子電荷、Ｉｆ＝順方向電流、Ｉｓ＝飽和電流である。ＮおよびＩｓは、プロセスおよびデバイスに依存する。従って、各ダイオードは、使用前に較正されなければならない。これは問題となり、時間がかかる。
【００１５】
しかしながら、較正を回避するための方法がいくつかある。１つの方法は、Ｓａｎｃｈｅｚの米国特許第５，８２９，８７９号により示唆されるように、一方のダイオードを他方のダイオードよりずっと大きくし（３２×）、２つのＶｄ電圧の比率を見ることである。もう１つの方法は、順方向電流Ｉｆを変え、同じく２つの電圧の比率を見て非線形因子を求めるというものである。両方の方法には、ずっと大きい面積（ケース１）または複数の電源（ケース２）という、大きな不利点がある。
【００１６】
温度感知ダイオードは、約２ｍＶ／℃を出し、適切な動作のために安定した電源、低雑音増幅器および高分解能ＡＤＣを必要とする。多くの異なる位置で温度を正確に測定するためにすべてのアナログ部品を雑音のある高速デジタル回路と統合することは大きな課題となるであろう。
【００１７】
もう１つの実際的な検討は、空間的制約のためにダイオード・センサをホット・スポット（hot-spot）上に直接置けないことがよくあるということである。従って、最良のセンサを用いたとしても、真のホット・スポット温度を求めるためには、なんらかの形の空間的補間（extrapolation）が依然必要とされる。
【００１８】
さらに、帯域幅制限センサは、最善でも、ある位置における現在温度の（その時間定数による）遅延した測定を提供できるだけで、所与の計算負荷（load）の下で温度特性を予測する能力は全くない。
【００１９】
熱キャパシタンスによるＸ−Ｙ平面における付加的な伝播遅延は、任意の位置における現在温度を近傍のセンサの温度から逸脱させる。
【００２０】
マイクロプロセッサ・チップの現在温度および将来温度が、インテリジェント方法論（Intelligentmethodology）をセンサの限定されたセット（温度、電流等）と共に用いて数ミリ秒先行して予測できれば、プロセッサ温度を管理する新しい方法が開発され得るであろう。動的熱管理（ＤＴＭ：Dynamic thermal management）手法（例えば、D. Brooksand M. Martonosi, “Dynamic Thermalmanagement for High Performance Microprocessors,” IEEE, 2001, 171-182参照）を、熱的状態の改善された知識を通して応用できる。適応できる冷却システムは、チップ性能を最適化するように構成され得る。
【００２１】
従って、ホット・スポットは、用途のタイプに応じてチップ上を動き回ることがある。それゆえ、全範囲または離散形の温度センサの使用は最適ではない。さらに、２〜３度保守的な予測は、性能を殺すことがある。加えて、離散形のセンサを正しいスポットに置く際に問題がある。事実、多くの用途は、目的とする区域にセンサを置くことを妨げる。
【００２２】
本発明以前には、さらに別の問題は、最適化されたデジタル・ユニット（例えば、最高速度で作動する世代用に最適化されたプロセッサ、浮動小数点ユニット等）の中に異質の（例えば、別個の）温度感知回路を設置することは、プロセッサ（例えば、ゲーム・チップのような特殊化されたチップ）の性能を損なうことがあることであった。
【００２３】
それゆえ、センサを所望の場所に常に設置できるわけではなく、従って温度の推定値が必要とされ得る。同様の理由で、プロセッサ／浮動小数点ユニットの中央にセンサを設置するというぜいたくをすることなく、プロセッサ／浮動小数点ユニット内部の温度を良好な精度で知ることは有用であろう。
【００２４】
従って、本発明以前には、そのような最適な技術が発達しておらず、従来の技術および装置の問題も認識されていなかった。すなわち、チップ温度のリアルタイム実行可能な推定および予測によるチップの温度管理における革新は皆無であった。
【発明の開示】
【発明が解決しようとする課題】
【００２５】
従来の方法および構造の上記ならびにその他の代表的な問題、欠点、および不利点を考慮して、本発明の代表的な目的は、チップ上の局所的および全体的な最高温度をリアルタイムで取り出すための方法および構造を提供することである。
【００２６】
本発明の別の目的は、チップ上の温度を管理するための構造化された方法およびシステムを提供することである。
【００２７】
本発明のさらに別の目的は、電子チップ表面における全体的な温度分布マップを、温度および電流測定値の限定されたセットを用いてリアルタイムで推定および予測する方法（およびシステム）を提供することである。
【課題を解決するための手段】
【００２８】
本発明の第１の態様において、電子チップ表面における全体的な温度分布マップを、温度および電流測定値の限定されたセットを用いてリアルタイムで推定および予測する方法（およびシステム）が提供される。
【００２９】
この方法は、チップ最高温度の計算（例えば、推定あるいは予測を指す）を容易にするために不確実なパラメータを持つシステムの熱の過渡的力学と計画的に配置されたセンサの出力が組み合わされる論理的な枠組み（logical framework）を提供する。この方法は、温度測定に関係する空間オフセットおよび時間遅延を補正する。柔軟性と温度の計算値の精度とを交換することにより、この方法の単純化がさらに達成される。
【００３０】
本発明の方法論（およびシステム）は、以下の項目を含み得るリアルタイム実行可能アルゴリズムを提供する：
【００３１】
１）  シリコン・チップ表面をＸ−Ｙ平面の有限かつ隣接する区域（例えば、矩形区域）に分割する。
２）  チップ表面から周囲への動的な熱伝達についての縮小次元推定子モデル（reduced-orderestimator model）を展開する。
３ａ）  温度センサを設置し、欠落温度成分を推定する。
３ｂ）  （温度センサは、プロセッサに接してまたは離して有利に配置される。）
３ｃ）  （推定精度を向上するために、様々な区域への実際の電流が測定される。）
４）  命令キャッシュを、一連のＸ−Ｙ分布された「熱パケットの量子」にマッピングする。
５）  ステップ４のキャッシュ内容の実行を仮定して将来のチップ温度を予測する。
６）  電力履歴を用いて、予測リード・タイムが増大させられるか、アルゴリズム複雑度が低減される。
７）  平均計算温度から、「代表的」ピーク温度マップを計算する。
８）  ＤＴＭモジュールに複合温度を提示する。
９）  上記のステップ３ｃ〜７を、相応のサンプリング・レートでリアルタイムで繰り返す。
１０）  モデル・パラメータおよび温度予測能力を日常的に評価および更新する。
【００３２】
次に、シリコン表面上の温度の改善された管理を達成するためにＸ−Ｙ面上の予測温度分布が利用される。単純な動的熱管理（ＤＴＭ）方法またはリアルタイム・フィードバック制御双方が実施について考慮され得る。
【００３３】
プロセッサ／冷却システムの詳細に応じて、温度分布を構成するために、より単純な予想アルゴリズム、または独自の補間方式を有するセンサの配列（センサ・アレイ）が用いられる代わりの方法が示される。
【００３４】
従って、本発明は、命令ストリーム（例えば、キャッシュ命令ストリーム）に基づいて電力を推定／予測することができ、そのような命令を処理するためにどれだけの電力がチップに入力されるか（例えば、１Ｍｂ命令ストリームは、所定量の電流を引き起こす、等）が推定され得る。これにより、設計者は、命令ストリームを推測的に検証することが可能になり、チップに「ダンプ」される温度（電流）は、それが生じる前に予測され得るであろう。これにより、なんらかの確立された電力特性基準等の違反があることが決定されれば、プログラムの命令を「入れ替えること（reshuffling）」が可能になるであろう。それゆえ、例えば、１つの命令セットがもう１つの命令セットに有利なように選択的に実行でき、それによって、命令等を実行する順序を変えることにより電力需要を再分布するように、計算シーケンスが管理され得るであろう。
【００３５】
加えて、別の用途おいて、チップ上になんらかの微細形態の温度制御デバイスがあると想定すれば、冷却能力を最も必要としているチップ領域（例えば、「ホット・スポット」）に冷却能力を振り向ける（例えば、移動する）ことができる。すなわち、冷却は、なされた予測に基づいて（例えば、処理される今後の命令に基づいて）「ホット・スポット」に移動させられるであろう。それゆえ、冷却能力が固定されていても、本発明の予測に基づきかつ温度マップを知ることにより、冷却能力をあちこちに再分布させる（移動させる）ことができる。従って、本発明により先取り的な制御が提供される。
【００３６】
本明細書において例示的に論じられる方法（およびシステム）がマイクロプロセッサの温度管理における用途向けに合わせてあるとしても、直接測定できない臨界温度に依存するどのような化学プロセス工業または製造業も、本発明の方法を利用できることが理解されるべきである。
【００３７】
加えて、本発明はセンサの測定／予測出力値をセンサの予想出力と比較できるという点で、本発明は、誤作動または不良温度センサを検出できる。測定／予測値と予想値との間に大きな差異があれば、本発明が、そのセンサが誤作動していると宣言することができ、そのセンサは、本発明のアルゴリズムから取り去られ得る。
【００３８】
それゆえ、１つのセンサが「不正挙動（misbehaving）」していれば、そのセンサは、一致しない出力を生成するということになる。従って、予想値と測定値との誤差を見て、もしその誤差が、ある所定の限界／閾値以上であれば、そのセンサは不良／誤作動と判断することができ、センサの新しいセットと共に動作するようにアルゴリズムを再編成（rearrange）できる。
【００３９】
従って、本発明は温度センサ故障検出用に有利に用いることができる。
【００４０】
上記およびその他の代表的な目的、態様および利点は、図面に関連して本発明の代表的な実施形態の以下の詳細な説明からよりよく理解される。
【発明を実施するための最良の形態】
【００４１】
ここで図面、より具体的には図１〜図２１を参照すると、本発明による方法および構造の代表的な実施形態が示してある。
【実施例】
【００４２】
図１（Ａ）は、従来の冷却システム１００を示しており、プロセッサ回路１１０の切り換えは、命令セットのシーケンス１１５によって駆動され、Ｖ（電圧）−Ｉ（電流）の積により発生される熱流束１２０は、最終的に熱インタフェース材料（ＴＩＭ）１４０を介してヒート・シンク１３０に導かれる。示されるように、そして理解されるように、熱流束は、空間的に分布された不安定な熱流束である。
【００４３】
プロセッサ・チップ１１０自体は、面積約２０ｍｍ×２０ｍｍで、厚さ約５００μｍである。図１（Ｂ）は、能動デバイスをその表面に有するチップ１１０のシリコン表面１１０１の底部を示す。発熱表面１１０１は、図１（Ｂ）に示されるように、Ｘ−Ｙ平面における矩形または正方形１５０の隣接したセットにより分割されている。
【００４４】
典型的なプロセッサ熱システム（thermal system）用の集中パラメータ・モデルが公式化できる（例えば、T. Goh, K. Seetharamau, G. Quadir, and Z. Zainal, “Thermal methodology for evaluating the performance ofmicroelectronics devices with non-uniform power dissipation,” IEEE- Electronics packaging technology conference, 2002, pp.312-315）。
【００４５】
従って、発熱表面（例えば、シリコン表面）は、複数の区域（例えば、矩形区域）を備える１つのグリッド形を有する平面デバイスとしてみなされる。各矩形区域（ｉ，ｊ）は、平均温度（Ｔｉｊ）と関連付けられている。Ｔｉｊが区域（ｉｊ）についての絶対最高温度の代理変数（proxy variable）であることが理解される。Ｔｉｊを代表的なＴｉｊ−ｍａｘと関係させる方法が後に論じられる。課題は、温度がリアルタイムで推定および予測され得るかどうかになる。
【００４６】
単純補間方法：
本発明の推定の特徴に目を向ける前に、チップ上の最高温度を追跡するためのより単純な方法を説明する。
【００４７】
（ｎ×ｎ）個の区域（例えば、図１（Ｂ）参照）を有するチップ表面に温度センサの配列（センサ・アレイ）を設置することにより、（ｎ×ｎ）個の瞬間温度値が測定される。センサを極力離して分布させることが経済的なので、測定データは、真の局所的および全体的な最高を求めるために補間法を必要とする。
【００４８】
一方で、どのような空間的エイリアシング（疑似ライン）効果によっても真の最高が見落とされないように、センサは最低限の分離を有さなければならない。関連した熱キャパシタンスを有するシリコン表面上の温度分布は急な不連続を持つことができないので、２Ｄ（２次元）温度分布について平滑な表面を予想することは理にかなっている。
【００４９】
図２（Ａ）〜（Ｃ）は、システムの離散的な熱モデルの概略図を示しており、熱流束パス２２０は、抵抗網の形でモデル化されており（例えば、図２（Ｂ）および２（Ｃ）参照）、そこには、（例えば、図２（Ｂ）に示されるような）熱流束の直交拡散および（図３に示されるような）熱流束の平面内拡散がある。図１（Ａ）〜（Ｃ）に示されるものと同様に、シリコン・マイクロプロセッサ２１０、ヒート・シンク２３０、および熱インタフェース材料（ＴＩＭ）（熱伝導性ペースト）２４０も留意される。区域のノード（ｉｊ）内への熱流束２２０が、近隣の区域を介してのみ生じ得ることが留意される。
【００５０】
ノード（ｉｊ）と周囲の４つのノードとの間の温度分布が（ｘ，ｙ）のより高次の関数であると仮定すると、一応信頼できそうな最高温度を求めるためにラグランジュ補間法を用いることができる。５つのノードの関与がｘおよびｙにおける１０次の多項式を生じることが注目される。代表的なプロセッサ・システムの熱特性を含む数値的単純化を行うことができ、これは、将来の発明および出願の主題となり得る。
【００５１】
すべてのノードに関して補間および最高値計算を繰り返すことにより、所与の時刻に設定された各測定についての全体的な（global）最大値が得られる。各サンプリング時間に続いて計算操作が繰り返されれば、最高値を含むリアルタイム温度マップを得ることができる。熱キャパシタンスおよび抵抗の効果が明確に考慮されないので、単純温度補間（simple temperature interpolation）方法の信頼度は低下している。本出願は、最高温度の計算における信頼度レベルをさらに向上しようとするものである。
【００５２】
従って、本発明の第１の代表的な特徴は、座標（ｘｉ，ｙｊ）に中心を置かれた矩形（または正方形）の温度Ｔｉｊを推定するための簡単な動的モデルを確立することである。
【００５３】
次の特徴は、期待される電流（または放熱）と共に推定子−予測子を用いて将来の温度を予測することである。（それ自体の中の将来の電流波形を抽出する機構は、別個の発明である。論理的には、実行されようとしている命令待ち行列を分析することにより、電流プロファイルを構成することができる。）
【００５４】
本発明の第３の特徴は、ある区域についての推定温度を、変換操作を介して、最も可能性のあるピーク温度に変換することである。これらの段階の各々は、以下で詳細に論じられる。
【００５５】
モデルの構築：
プロセッサ・チップをその関連する冷却システムと共に、広大な３次元空間中で分布および結合された熱抵抗および熱キャパシタンスの離散集合として数学的に見ることができる（例えば、T. Wang, Y. Lee, and C. Chen, “3D Thermal-ADI - An efficient chip-level transient thermalsimulator,” ISPD, April, 2003, pp. 10-17）。
【００５６】
熱的観点からプロセッサ設計を評価するための精巧なシミュレーション・パッケージが今日市場に存在している（例えば、D. Brooks, V. Tiwari and M. Martonosi, "Wattch: A framework forarchitectural-level power analysis and optimizations," ISCA, 2000, pp.83-94）。
【００５７】
熱システムの状態変数表現は、離散的な熱キャパシタンスの名目温度に対応し、駆動入力は、放熱要素中への電流である。（プロセッサ・システムの完全な有限要素表現は、高次の、例えば２５００以上のモデルという結果になり、従って、リアルタイムでの実施は不可能になるであろう。）
【００５８】
チップの電熱シミュレーションのためのモデル次数は、数学的に低減させ得る（例えば、C.Tsai and S.Kang, "Substrate thermal model reduction for efficienttransient electrothermal simulation," IEEE, 2000, pp. 185-190参照）。
【００５９】
本発明においては、プロセッサ・システムにおける熱伝達の原理およびエンジニアリング・アセスメントを用いて、モデル複雑度は、より低次系に低減される（例えば、１０〜５０の範囲）
【００６０】
システム（系）のより低次モデルを達成するための鍵は、図２（Ａ）〜（Ｃ）に示されるように直交（Ｚ）成分および面内（ＸＹ）成分への熱流束の拡散を見ることである（明確にするため、熱容量は、図２（Ａ）〜（Ｃ）においては示されない）。また、図２（Ｂ）は、接合部温度Ｔｊおよび周囲温度Ｔａｍｂに沿った直交拡散を示す。図２（Ｃ）は、面内拡散を示す。
【００６１】
面内（インプレイン）表面は、有限数の区域（例えば、５×５）に分割される。直交パスは、熱容量および各ＸＹ−区域に対応する抵抗の有限集合を含む（それにより構成される）単一コラム（column）である。
【００６２】
熱システムの状態変数モデルは、電流入力により駆動することができ、モデル出力は、対応する温度値を提供するように構成できる。一般に、モデルが現実の熱システムの正確な表現であれば、どのような直接的な温度測定もなしで、温度分布を計算することが可能なはずである。
【００６３】
しかしながら、実際的な「現実世界（リアル・ワールド）」の用途において、モデルは、熱パラメータが変化を受けやすい複雑な現象の近似にすぎない。従って、温度予測を堅固な（すなわち、信頼できかつ正確な）プロセスにするために、ある程度の温度測定が必要である。
【００６４】
図３は、非常に限定された量の温度測定がチップ自体の上で（例えば、センサ３６０（例えば、雑音ありまたはなしで、シリコン上に直接分布または任意に埋め込まれる）を介して）可能であると仮定される構成を示す。
【００６５】
しかしながら、かなり多数の（例えば、１０〜２０個の）センサ３６１（雑音ありまたまたはなし）が、ヒート・シンク３３０（例えば、ヒート・シンクの平滑表面）のような、冷却システム上に分布され得る。参照符号３３１は、ヒート・シンク３３０のＴＩＭ側を示す。これらのセンサは、プロセッサ設計に影響しないので、有利である。
【００６６】
しかしながら、課題は、これらのセンサ３６１が、チップ表面からある距離（例えば、用途によって約６００μｍ）分離されることになり、シリコン表面３１０が遭遇した瞬間的な最高温度を提供できないかもしれないことである。従って、測定平面３６２は、プロセッサの近傍にあるが、プロセッサから離れて配置されている。
【００６７】
しかしながら、本発明を用いて、熱システムのより低次の状態変数モデルを、分布されたセンサ３６１の測定値と結合することにより、シリコン表面３１０上の欠落温度プロファイルをリアルタイムで構築するための論理手順が作られる。
【００６８】
本発明の方法は、パラメータ変化の存在下で精度を有することが明らかにされている。一般に、以下の制限は、同じ方法論により対処され得る：
・  センサ測定雑音の存在
・  有限のセンサ帯域幅の効果
・  熱パラメータの変化
・  Ｘ−Ｙ区域における未知の電流のための増大されたモデル。
【００６９】
実験的検証：
モデルの精度を検証するために、本発明者らは一連の実験を実施した。最初は、１次元（１Ｄ）熱伝達問題が公式化される実験である。
【００７０】
図４は、代表的な１２．５ｍｍ直径の中実な（solid）銅シリンダ４０５が熱源４１５により駆動される構成４００を示す。デジタル信号プロセッサ（ＤＳＰ）４２５は、代表的な７５ｍｍ×７５ｍｍの正方形の銅板４４５に取り付けられた１組の電力抵抗（熱源４１５を形成する）に所定の電流波形４３５を供給する。銅板４４５は、均一な熱源として機能する。図４には、デジタル−アナログデジタル変換器４７５、ストレージ４８５、およびアナログ−デジタル変換器４９５も示してある。
【００７１】
熱源４１５からの熱流束は、銅シリンダ４０５を通して軸方向に伝導される。熱流束は最終的に、銅シリンダ４０５を包囲している空気の自然対流を介して周囲に伝達される。４つの温度センサ（例えば、熱電対）４６０が、銅シリンダ４０５上に表面設置されており、各々典型的には約２５ｍｍ離されている。
【００７２】
第１の温度（Ｔｉｎ）が駆動入力として選ばれ、残る３つの温度は、状態ベクトルの成分としてモデル化される。理想的には、駆動入力Ｔｉｎは、熱源４１５への電流入力により置き換えられるべきである。
【００７３】
複雑度が低減された方法論の鍵となる特徴を例示するために、説明されたような問題がモデル化され、本発明の実践すべき低減を示す図５〜６に関してさらに説明される。
【００７４】
図５は、４アンペアのステップ入力電流（例えば、図５の挿入図参照）について測定された過渡的温度を示す。すべての温度データにおいて指数関数的な上昇が予想通りに観察される。
【００７５】
時間起点（ｔ＝０またはＴ０）の近くでは、Ｔｉｎと比較してＴ３において２５秒の遅延がある。Ｔｉｎは、Ｔ０または流束を銅シリンダ中へ追いやる温度を表しており、他の３つの温度は、（指数関数的に成長している）Ｔ１、Ｔ２、およびＴ３として監視されている。センサが等距離（２５ｍｍ）にあったとしても、隣接センサ間の温度差は、次第に減少する。これは、軸方向に流れるにつれて対流のために失われる熱流束に起因している。
【００７６】
それゆえ、問題は、モデルを用い、次に温度を測定し、単純された系（システム）においてこれらの温度がどれほど正確に追跡できるかを決定するためにモデルと測定値とを比較することによって他の温度を知ることにより、これらの温度（例えば、Ｔ１、Ｔ２、Ｔ３等）のうちのいくつかが予測され得るかどうかである。
【００７７】
図６（Ａ）〜（Ｃ）は、ＤＣ電流に重ね合わせたランダムな電流波形（交流ＡＣ）、具体的には銅シリンダのランダム加熱に対応する。従って、ステップ入力電流のみを用いる図５と対照的に、図６は、ステップ入力に加えてランダム波形を用いており、それによって、異なる量の電流を発生させる異なるプログラム（従って、異なるタイプの命令）の実行をシミュレーションする。図６（Ｂ）は、図６（Ａ）の細部、具体的にはヒーター中への電流の時系列を示す。
【００７８】
（平均ＤＣ値による実際の温度の指数関数的上昇を示す）図６（Ｃ）から、ＤＣ成分が温度の指数関数的上昇を引き起こすこと、および電流におけるランダムな変動が測定温度（例えば、Ｔｉｎ、Ｔ１、Ｔ２およびＴ３）に実質的に影響しないことが観察できる。
【００７９】
また、測定ポイントが熱源から離れるにつれて、ランダム成分は次第に低減される。従って、Ｔｉｎ波形は、Ｔｉｎが熱源に最も近いので最大の差を示し、Ｔ３は、熱源から最も遠いので最小の差を示す。
【００８０】
実際上、熱源４１５と測定ポイントとの間の熱伝導材料は、低域フィルタとして機能する。従って、熱源４１５と観察ポイントとの間の距離は、推定プロセスにとって極めて重要であると考えられる。
【００８１】
１次元熱モデル：
図７（Ａ）は、図４に対応し、ＤＳＰ７２５、電源７３５、およびＤＡＣ７７５を含む１次元（１Ｄ）熱システムの集中パラメータ・モデル７００（１Ｄ−過渡的熱モデル）を示す。参照符号６１０は、熱キャパシタンスを表す。
【００８２】
電気抵抗は、熱抵抗に対応し、キャパシタンスは、銅シリンダ・セクションの熱容量６１０に対応する。ポイント１、２および３により示される各ノードは、エネルギー・バランスを満たさなければならない。例えば、図２（Ｂ）のノード２は、以下の式（１）および式（２）を満たさなければならない（簡潔にするために、下付き文字は省いた）：
エネルギー流入量    Ｑ１２＝（Ｔ１−Ｔ２）／Ｒ１２
エネルギー流出量    Ｑ２３＝（Ｔ２−Ｔ３）／（Ｒ２３）          （１）
エネルギー流出量    Ｑ２ｇ＝（Ｔ２−Ｔｇ）／Ｒ２ｇ
貯蔵エネルギー            ＝Ｃ２×ｄ（Ｔ２）／ｄｔ
エネルギー・バランス：Ｑ１２＝Ｑ２３＋Ｑ２ｇ＋Ｃ２ｄ（Ｔ２）／ｄｔ  （２）
式中、下付き文字「ｇ」は、（電気系の語法では）接地を意味し、熱系（システム）においては周囲温度として知られており、ｄ（）／ｄｔは、時間微分であり、Ｒは、ノード間の熱抵抗を意味し、Ｃは、熱容量である。銅または空気あるいはその両方の膜熱伝達係数（ｈ）の熱伝導率が抵抗を決定することは留意すべきである。
【００８３】
Ｔ１、Ｔ２およびＴ３が周囲を基準とした温度と呼ばれれば、式（２）は、以下のように書き替えることができる：
Ｃ２×ｄ（Ｔ２）／ｄｔ＝（１／Ｒ１２）×Ｔ１＋（−１／Ｒ１２−１／Ｒ２３−１／Ｒ２ｇ）×Ｔ２＋（１／Ｒ２３）×Ｔ３    （３）
【００８４】
各ノードについて同様なステップが繰り返され、行列が［  ］により表され列ベクトルが太字である行列形式にまとめられれば、以下の動的モデルが得られる：
ｄＴ／ｄｔ＝［Ａｃ］×Ｔ＋［Ｂｃ］×Ｕ      （４）
【００８５】
式（４）において、［Ａｃ］および［Ｂｃ］は一般に、熱システムの連続時間表現と関連した行列であり、［Ｔ］および［Ｕ］は、異なる長さの列ベクトルである。図４の例では、［Ｕ］は１次元変数である。よく知られている打ち切り法を用いて、式（４）は、離散的時刻にのみ観察される熱システムを表すように変換できる。選択されたサンプリング・レートについて、式４は以下のようになる：
Ｔｎ＋１＝［Ａ］×Ｔｎ＋［Ｂ］×Ｕｎ    （５）
式中、行列［Ａ］および［Ｂ］は、［Ａｃ］、［Ｂｃ］およびサンプリング時間のよく知られた整関数である。行列［Ａ］は、選択された例に適用される場合、次数が３×３であり、行−２に３つの非０要素があるバンド対角行列を有する。モデル次数を低く保つため、シリンダの延長部分は、熱容量が全くない抵抗として扱われる。
【００８６】
Ｔｍにより示される測定温度ベクトルは一般に、以下により表される：
Ｔｍｎ＝［Ｃ］×Ｔｎ＋［Ｄ］×Ｕｎ      （６）
状態変数の３つの要素がＴ１、Ｔ２およびＴ３を表し、かつ３つすべてが直接的に測定される例の場合、［Ｃ］は単位行列（identity matrix）であり、［Ｄ］は零（null）行列である。
【００８７】
図８は、ＤＳＰ８２５、電源８３５、ＤＡＣ８７５、ストレージ８８５、およびＡＤＣ８９５を含む集中パラメータを用いる単純予測のモデル８００を例示する。温度は、時間により変化し、Ｔｎは、任意のノード／位置における現在の温度を表し、Ｔｎ＋１は、ある時間が経過した後の温度を表す。
【００８８】
観察により、これは計算のための単純な構造であり、この構造はパラメータ変化に敏感であることが示される。従って、他の位置における予想温度（例えば、Ｔ１、Ｔ２、Ｔ３等）を予測する１つの方法は、１つの位置で複数の温度を測定して熱モデルを作ることであり、このモデルを用いることにより、伝導率および熱容量を用いて温度を予測し、予測値を得ることができる。
【００８９】
単純補間法によるチップ上温度の計算：
式５に表されるモデルは、その精度をテストするために適用できる。電流のステップ入力について、温度が監視できる。
【００９０】
仮定された膜熱伝達係数ｈ＝５０Ｗ／ｍ２ｓについて、図９は、Ｔｉｎが駆動入力として用いられる場合にモデルにより予測されるＴ１、Ｔ２およびＴ３の時間歴を示す。測定値からの大きな逸脱が観察できる。従って、ある仮定がモデル・パラメータについてなされても、そのような仮定が正しくなければ、そのモデルは、うまく予測することができず、値があるべきところからそのモデルがどれだけ逸脱（deviation）しているかを知ることはできないことを図９は示している。
【００９１】
例えば、システム（系）がファンにより冷却されるというのであれば、強制対流は、対応する「ｈ」値を有するであろう。しかしながら、もしそのファンがＯＮでなかったら、自然対流が生じる（これは実験的なケースである）。シリンダ上の自然対流についてのｈ値（＝５．５）が選ばれ、すべての要素が再計算されれば、図１０に例示されるように大いに改善された予測が得られるであろう。
【００９２】
従って、図１０は、温度情報はまったく用いないが、より良いパラメータを用いる（例えば、再度ｈ＝５．５を用いる）単純モデル予測を示す。それゆえ、ｈ＝５．５がモデルに入れられれば、予測温度はより小さい逸脱（偏差）で推移するであろう。従って、良好な予測を行うことができる。
【００９３】
対応する誤差プロットが図１１に示してある。この実験の鍵となる側面は、駆動ポイント（Ｔｉｎ）温度が知られており、現実を密接に反映するようにモデル・パラメータが選ばれていれば、単純な順方向予測は、この事例研究において、最悪６％の精度で温度を与えることができるということである。図１１に示されるように、温度３は、約２％の安定した誤差を有しているのが示される。
【００９４】
マイクロプロセッサ環境において、直交拡散（orthogonal spreading）が研究されるのであれば、別のシナリオが検討されるべきであろう。
【００９５】
熱伝導率のようなＴＩＭ材料（１４０、２４０、３４０）の特性は明確ではなく、変化することがある。２５％変動させられるＴＩＭの熱抵抗にＲ１２が対応すると仮定されれば、式５を用いる単純予測は、図１２に示される特性を与える。対応する誤差プロットは、図１３に示してある。場合によっては、誤差は、示されるように１６％より高いことがある。
【００９６】
従って、課題は、熱システムの作動ライフ・サイクルの間にパラメータ変化の影響をどのように正すかである。
【００９７】
より重要なことには、チップ上の限られた数の温度測定値を用いて、チップ上の他の位置に対応する欠落温度成分を作り上げる方法が望まれる。本発明は、そのような方法論を提供する。具体的には、この課題に対処するため、本発明は、以下で論じられ図１４を参照するように、状態変数推定子手法を活用する。以下では、これらの問題がどのように克服され、そしてセンサによる測定値がどのように利用されるかが説明される。
【００９８】
推定子（estimator）モデルを用いた「欠落」温度シーケンスの計算：
推定子を設計するための理論的枠組みは十分に確立されている。パラメータ変化に対する状態推定値の感度を低減するだけでなく、欠落温度測定値を再構築するためのこの方法の新規な使用は、本発明の重要な属性である
【００９９】
図１４は、過渡的温度推定子の動作を例示する。推定子は、一連の観測結果（すなわち、測定値）を用いて動的なシステムの状態を推定するための数学的に厳密な枠組みを提供する。測定値は、システムの内部状態と関連付けられる。式６は、測定値と状態／入力ベクトルとの間の関係を表している。統計的に最適なパスに沿って状態推定値を更新するために観察結果が用いられるので、この方法は、モデル・パラメータ変化にそれほど敏感ではない。
【０１００】
図１４は、推定された成分が（＾）記号により表される推定アルゴリズムを示す。簡潔にするために、以下の議論においてこの表記は省かれる。図１４は、ＤＳＰ１４２５、電源１４３５、ＤＡＣ１４７５、ストレージ１４８５、およびＡＤＣ１４９５を含む本発明のモデル／アルゴリズム１４００を例示する。
【０１０１】
推定子は、いくつかの基本な計算を実行する。第１の操作は、すでに論じた（例えば、図８と共に論じた）単純なモデルと同一であり、最新の状態Ｔｎ−１（＋）ならびに制御入力Ｕｎ−１および測定値Ｔｍｎ−１が与えられれば、現在の測定時点（ｎ）に対応する予測状態Ｔｎ（−）が式（７）を用いて補間される。
【０１０２】
第２の操作は、時点ｎにおける測定の期待値と実際の測定値との間の加重誤差を用いた状態Ｔｎ（−）の更新を伴う。行列［Ｌ］は、測定誤差ＤＴｎの重み付けを提供する。
【０１０３】
以前の既知の状態Ｔｎ−１（＋）および駆動入力Ｕｎ−１から以下が予測される：
Ｔｎ（−）＝［Ａ］×Ｔｎ−１（＋）＋［Ｂ］×Ｕｎ−１    （７）
測定誤差を用いる状態更新は以下の通りである：
Ｔｎ（＋）＝Ｔｎ（−）＋［Ｌ］×ＤＴｎ    （８）
式中、
ＤＴｎ＝（Ｔｍｎ−｛［Ｃ］×Ｔｎ（−）＋［Ｄ］×Ｕｎ｝）    （９）
（式（７）から式（９）までの）数学的関係の導出は、他の所で見出すことができる。
【０１０４】
１次元（１Ｄ）のケース（例えば、図４参照）を用いて、「欠落」状態、例えばＴ１を再構築する方法が論じられる。状態成分Ｔ２およびＴ３は、直接測定からの推定目的に利用可能であると仮定される。電流のステップ入力およびランダム入力については、状態ベクトルは、１０試料／秒のレートで補間および更新される。
【０１０５】
従って、図１４は、本発明の更新および補間操作を示す。この例では、温度０は、Ｔ２およびＴ３と同様に既知である。しかしながら、Ｔ１は知られていない。本発明により、Ｔ１を正確に見出すことができる。
【０１０６】
図１５、図１６および図１７は、欠落状態要素Ｔ１を再構築するために推定子を用いることのプラス効果を示す。
【０１０７】
すなわち、図１５は、（１／Ｒ１２）を５０％だけ引いた欠落測定値の推定を示しており、Ｔ１は知られていないがＴ２およびＴ３は知られている。これは単純予測モデルであり、ずれ（ドリフト）が示される。
【０１０８】
図１６は、単純予測１６１０と、温度値Ｔ１を予測するために推定子を用いる、具体的には値Ｔ２およびＴ３を用いる予測１６２０との間の推定誤差比較を示す。この例においては、本発明（推定子）を用いると単純予測と比較して８ないし９％の誤差低減がある。図１７は、（１／Ｒ１２）を５０％だけ引いた欠落測定の推定誤差を示しており、Ｔ２およびＴ３は測定される。
【０１０９】
それゆえ、温度センサの数を減らして、多くの欠落温度値がリアルタイムで構築され得る。１つの熱センサが不良またはノイズがあると判明した状況において、推定子は、不良測定の使用を回避するように再構成され得る。
【０１１０】
要約すれば、商業的用途における推定理論の一般的技術を温度センサの減らされた（例えば、経済的な）セットと共に利用することにより、複数の位置における未知の温度値についての理知的な推測がなされ得る。
【０１１１】
マイクロプロセッサ熱システムの多次元モデル：
１−Ｄ（１次元）の例を用いる提示される方法は、マイクロプロセッサ・システムに拡張することもできる。
【０１１２】
図１８（Ａ）は、４つの論理ブロックをその中に有するシミュレーションされた２−Ｄ（２次元）システムを示しており、熱は面内のみ拡散し得る。デモンストレーション目的のため、熱流束は、サイズ（２０×２０ｍｍ）のシリコン材料上の４つの指定された区域内で生成される。熱流束時間歴は、ランプ（ramp）に重ね合わされた正弦波の時間歴に類似するであろう。
【０１１３】
図１８（Ｂ）は、５ｍｓ後の温度分布を示し、図１８（Ｃ）は、２５ｍｓ後に温度が８０℃近くに達することを示す。温度分布が均一ではないことおよび時間の進行につれてピーク温度が位置を移動し得るであろう（図示せず）ことが図１８（Ｃ）の３−Ｄ（３次元）プロットから明白である。
【０１１４】
従って、図１８（Ａ）〜（Ｃ）に示されるように、どの任意の時間においても、１つのチップについて異なる熱マップがあり得る。課題は、ずっと単純なモデルを用いて、例えば、時間の関数として、図１８（Ｂ）および１８（Ｃ）により接近することである。従って、以下では、単一次元（例えば、上記の銅シリンダ）において実証された本発明をどのように２−Ｄ（Ｘ，Ｙ）チップに拡張するかを説明する。
【０１１５】
図１９（Ａ）は、シリコン１８１０、ＴＩＭ１８４０およびヒート・シンク１８３０を含む、熱流束の多次元流れについてのモデル１８００を例示する。すなわち、図１９（Ａ）には、図２において簡略に説明された面内拡散および直交拡散が斜視図で詳しく説明されている。
【０１１６】
式（１）〜（５）において展開された論証と同様に、状態変数定式化は、多次元系の熱状態を結び付けるように構成され得る。熱流束の垂直拡散は、ノードＴｉｊにより駆動される１Ｄ系と同様にモデル化される。
【０１１７】
関係している種々の材料の層の厚さに応じて、Ｚ−軸に沿った付加的な状態が導入され得る。例えば、温度センサ（図１９（Ａ）には示されない）が、ＴＩＭ１８４０に面するヒート・シンク１８３０の表面に置かれれば、この位置は、追加の状態Ｔｉｊ−Ｌ１により指定できる。ここでＬ１は層１を意味する。明らかに、付加的な状態要素を含めることは、計算負荷を非線形的に増大させ、保証のない状態要素を最小に保つのが最善である。
【０１１８】
図１９（Ａ）の集中モデル（lumped model）に対応する状態ベクトルＴの転置（transpose）は、以下に類似するであろう：
転置  Ｔ＝［Ｔ１１  Ｔ１１−Ｌ１  −−−  Ｔｉｊ  Ｔｉｊ−Ｌ１  −−−  Ｔｎｎ  Ｔｎｎ−Ｌ１］  （１０）
（ｎ×ｎ）個の区域に分割されたＸ−Ｙ平面、および単一の温度測定層−１については、温度ベクトルは２（ｎ２）個の要素を有する。
【０１１９】
近隣要素間の対応するエネルギー流れは、図１９（Ｂ）において定義される。直交拡散がいくつかの流れを（例えば、最初に、１つはヒート・シンクへ向かう流れであり、もう１つはチップを支える回路板へ向かう流れ）持ち得ることが注目される。従来の冷却システムは、回路板側からせいぜい約２０％の熱伝達を受ける。
【０１２０】
同等のプロセッサ・モデルの実験的検証：
１Ｄ（１次元）の例と同様に、シリコン構造を代表する多次元熱伝達問題の性能を実証することが重要である。柔軟なプロトタイプを作るために、図２０（Ａ）の構造１９００において示されるように、分散された加熱要素１９１５およびセンサ１９６０を有するようにシリコン・ウェーハ１９０５（例えば、典型的には２７×２７ｍｍの寸法を有する）を設計する。図２０（Ａ）の暗色部分は、示されるようにヒーター要素１９１５を表す。図２０（Ｂ）は、１μｍの厚さであり得るヒーター要素の銅トレース部分１９５１を例示する。他の代表的な寸法も示してある。
【０１２１】
ＤＳＰ（図示せず）を介してヒーター要素を駆動することにより、所望の熱流束が、プロトタイプ・シリコン１９０５に付与される。
【０１２２】
従って、図２１を参照すると、リアルタイム実行可能アルゴリズムを提供する本発明の方法２０００（およびシステム）の流れ図が示してある。
【０１２３】
ステップ２００５において、最初にシリコン・チップ表面が有限で隣接したＸ−Ｙ平面内の区域（例えば、多角形、正方形、または矩形の形状を含み得る分離区域であり、好ましくは、計算の単純さのために矩形形状が用いられ、以下で想定される）に分割される。
【０１２４】
次にステップ２０１０において、チップ表面から周囲への動的熱伝達について縮小次元推定子モデルが展開される。
【０１２５】
ステップ２０１５において、温度センサが配置され、欠落温度成分が推定される。センサは、有利になるようにプロセッサ表面に接してまたは離して配置され得る。
【０１２６】
ステップ２０２０において、モデル・パラメータおよび温度予測能力が日常的に（周期的に）評価および更新され得る。従って、本発明により、チップのライフ・サイクルにわたり、そしてチップが経年変化する（例えば、熱ペーストが劣化して、ヒート・シンクとシリコン・チップとの間のギャップが増大する）につれてアップグレードすることが可能になる。このステップは、較正目的にかなう。このステップは任意とすることができ、さらに、プロセスが実行されるたびに実行され得るが、実行される必要はない。
【０１２７】
ステップ２０２５において、推定精度を向上させるために、種々の区域（例えば、ｉ，ｊ）への実際の電流が測定される。
【０１２８】
ステップ２０３０において、命令キャッシュが、一連のＸ−Ｙ分布された「熱パケットの量子」にマッピングされ、ステップ２０３５において、ステップ２０３０におけるキャッシュ内容の実行を仮定して将来のチップ温度が予測される。従って、命令セットは、シリコン・ウェーハ等上の温度（例えば、エネルギー放出）にマッピングされる。
【０１２９】
ステップ２０４０において、電力履歴を用いて、予測リード・タイムが増大されるか、アルゴリズム複雑度が低減される。「電力履歴」は、特定の使用環境（例えば、航空便予約システム等は、特定タイプの電力履歴を有する）における特定のマシン／プロセッサについての電力履歴を指すことを留意すべきである。従って、各プロセッサは、各用途においてプロセッサがよりうまく予測できるようにする電力履歴を作ることができる。
【０１３０】
ステップ２０４５において、「代表的な」ピーク温度マップが、平均計算温度から計算される。すなわち、各区域が平均温度を有するだけでなく、区域内になんらかの不均一温度（ピーク）もある。従って、平均は、代表的なピーク温度と共に各区域について計算される。実際のピークが見出される必要はないが、代表的なピークは、統計的方法等により見出される必要がある。好ましくは、区域は、計算集中的な要件を回避するために、あまりに恣意的に小さすぎない。すなわち、区域（ｉ，ｊ）がより小さくなると、実行されなければならない計算が多くなり、これは望ましくない。
【０１３１】
ステップ２０５０において、複合温度が動的熱管理（ＤＴＭ）モジュールに提示される。従って、温度分布情報を求めているＤＴＭ構造がどこかにある。本発明のアルゴリズムは、この情報をＤＴＭに提示する。それゆえ、ＤＴＭによる意思決定操作は、本発明の手法の温度推定方法から分離され得る。
【０１３２】
ステップ２０５５において、プロセッサがアイドル・モードにあるかどうかが決定される。もしプロセッサがアイドル・モードにあれば（例えば、「Ｙｅｓ」）、プロセスは、プロセッサが再度アクティブになりプロセスが「開始（ＳＴＡＲＴ）」までループするまで、待機する（例えば、「待機（ＷＡＩＴ）」モードへ行く）。
【０１３３】
もしプロセッサがアイドルでなければ（例えば、「ＮＯ」）、プロセスはステップ２０２５にループ・バックし、ステップ２０２５〜２０４５が、相応のサンプリング・レートでリアルタイムに反復され得る。
【０１３４】
「相応の（commensurate）」は、チップの保全性の信頼性を保つように（例えば、何分の１マイクロ秒間の高ピークに対する何分の１ミリ秒間の適度の平均温度であり得る）、互いに整合性のあるサンプリング・レート（例えば、マイクロ秒速度サンプリング・レート、ミリ秒速度サンプリング・レート等であり得る）を意味する。実際に、温度の高いスパイクが、エレクトロマイグレーション（electromigration）等の種々の現象のためにチップに付与されるより低い平均温度負荷よりも悪いかどうかを決めることは、ともすれば困難である。
【０１３５】
将来の熱流束への命令キャッシュのマッピング：
本発明の別の態様において、そして上記で簡単に触れられたように、メモリベースのコンピューティング・デバイスの独特な特徴は、実行されようとしている命令セットが前もって知られていることであることに留意されたい。より洗練されたプロセッサにおいては、分岐は有限確率でのみ予測され得るが、キャッシュは、生じ得る条件分岐を含んでいる。それとは関係なく、各可能なパスについて命令シーケンスは明確に知られている。
【０１３６】
上記で論じられたように、各命令の実行により、チップ表面にわたり分布された「エネルギーの量子」が放出される。もし各命令タイプについてエネルギー値の分布が命令セットに「符号化」されれば、ひとたびシーケンスが実行された場合に放出される熱エネルギーの量を予測することは論理的に実現可能である。言い換えれば、時間間隔の次の「ｍｓ」の間に放出されるエネルギーを予測する機構は計算され得る。
【０１３７】
サンプリング時間「ｎ」における対応する予測電力を、Ｕｐｒｏｊｅｃｔｅｄで示すようにする。時間「ｎ」において、測定されたＵｎがすでに利用可能になっており、現在の状態推定値を改善するために使用されていることを観察する。しかしながら、Ｕｎとの最近の相互関係から、予測される推定値Ｕｐｒｏｊｅｃｔｅｄを改善することを検討し、次のサンプルが到来する前にＵｐｒｏｊｅｃｔｅｄについての最可能値を導き出すことができるであろう。
【０１３８】
温度の予見（予測）：
Ｕｐｒｏｊｅｃｔｅｄがわかれば、以下の関係を用いて熱システムの温度が予測され得る：
Ｔｎ＋１（−）＝［Ａ］×Ｔｎ（＋）＋［Ｂ］×Ｕｐｒｏｊｅｃｔｅｄ    （１１）
予測式（１１）は、予見予測が、１サンプリングの瞬間先行して実行されると仮定している。Ｕｐｒｏｊｅｃｔｅｄが複数のサンプリング間隔について知られている場合、式（１１）は、将来に向けて複数サンプルの温度を予測するために繰り返し適用され得る。
【０１３９】
別のケースでは、キャッシュ内容が、現在の測定温度から先行してサンプリング時間の何分の一についてしか知られていなければ、式（１１）の行列［Ａ］および［Ｂ］は、それに応じて調整されなければならない（そして、現実世界において式（１１）を実施するモジュールに対して利用可能にされなければならない）。
【０１４０】
連続時間系の式（４）は、全サンプリング間隔を想定して行列［Ａ］および［Ｂ］を導き出すために利用されることに留意されたい。例えば、命令キャッシュが、毎秒２ギガ命令のレートで実行されている１メガ命令を含んでいれば、キャッシュ内容を実行するのに０．５ｍｓしか掛からないであろう。
【０１４１】
しかしながら、公称離散時間表現（式（５））が０．７５ｍｓのサンプリング時間を仮定すれば、式（１１）の使用は、現状のままでは誤った予測を与えるであろう。対応する離散時間行列［Ａ］および［Ｂ］は、０．５ｍｓのサンプリング時間について計算されなければならない。これは、予測値において重大な変化を生じないであろう優れた所見である。しかしながら、それは正確な温度制御にとって重要になり得る。
【０１４２】
「キャッシュからＵｐｒｏｊｅｃｔｅｄ」の詳細な実施機構は、それ自体発明である。プロセッサ・アーキテクチャ（ＣＩＳＣ対ＲＩＳＣ）および分岐予測における高度化のレベルに応じて、予測精度は管理され得る。
【０１４３】
「ホット・スポット」温度への推定温度の関連付け
温度分布を推定し、予測するための方法論は、本発明により確立されている。ある区域の推定温度Ｔｎ（＋）を、「微視的（microscopic）」ピーク温度Ｔｎ−ｐｅａｋに対応する単一の温度値により関係付けるという課題は、まだ解決されずにいる。微視的温度および平均温度は、一連の詳細なオフライン・シミュレーションを介して確率論的に関連させ得る。関係は以下の通りである
Ｔｎ−ｐｅａｋ＝［ｆ（ｉ，ｊ）］Ｔｎ（＋）    （１２）
主に対角の行列（mostly diagonal matrix）（２ｎ×２ｎ）［ｆ（ｉ，ｊ）］は、代表的な冷却構成についての初期の相関関係研究によって得られる。マイクロプロセッサ上のある領域が破壊されようとしているかどうかを試験する最終決定基準は、Ｔｎ−ｐｅａｋに基づいてなされる。矩形区域の寸法がサブミリ程度に近づくにつれ、「微視的」温度および平均温度が同じ値に収束するであろうことは明らかである。この場合、式（１２）の行列［ｆ（ｉ，ｊ）］は単位行列になる。
【０１４４】
上記で説明されたように、本発明の独特かつ非自明な側面を用いて、チップ最高温度の計算（例えば、推定か予測を指す）を容易にするために不確定なパラメータを有する系（システム）の熱過渡的力学および計画的に配置されたセンサの出力が組み合わされる方法およびシステムが提供される。この方法は、温度測定に関係している空間オフセットおよび時間遅延を補正する。この方法の単純化は、温度の計算値の柔軟性および精度を交換（トレードオフ）することにより、さらに達成される。
【０１４５】
加えて、Ｘ−Ｙ平面上の予測温度分布は、シリコン表面上の温度の改善された管理を達成するために利用される。単純な動的熱管理（ＤＴＭ）方法またはリアルタイム・フィードバック制御双方は、本発明により利用され得る。
【０１４６】
プロセッサ／冷却システムの詳細に応じて、別の方法が示され、温度分布を構築するために、単純予測アルゴリズム、または独特な補間方式を有するセンサの配列が用いられる。
【０１４７】
加えて、本発明は、命令ストリーム（例えば、キャッシュ命令ストリーム）に基づいて電力を推定／予測することができ、さらにそのような命令を処理するためにどれだけの電力がチップに入力されるかが推定され得る（例えば、１Ｍｂ命令ストリームは、所定量の電流を生じさせる、等）。これにより、設計者は、命令ストリームを予備知識なしに調べることが可能になり、チップに「ダンプ」される温度（電流）は、それが生じる前に予測され得るであろう。これにより、なんらかの確立された電力特性基準等の違反があることが決定されれば、プログラムの命令を「入れ替えること」が可能になるであろう。
【０１４８】
従って、本発明により、例えば、１つの命令セットがもう１つの命令セットに有利なように選択的に実行でき、それによって、命令等を実行する順序を変えることにより電力需要を再分布するように、計算シーケンスが管理され得るであろう。
【０１４９】
加えて、本発明の別の用途においては、冷却能力を最も必要としているチップ領域（例えば、「ホット・スポット」）に冷却能力を振り向ける（例えば、移動する）能力がある。すなわち、冷却は、なされた予測に基づいて（例えば、処理される今後の命令に基づいて）「ホット・スポット」に移動させられるであろう。それゆえ、冷却能力が固定されていたとしても、本発明の予測に基づきかつ温度マップを知ることにより、冷却能力をあちこちに再分布させる（移動させる）能力がある。従って、本発明により先取り的な制御が提供される。
【０１５０】
本発明をいくつかの代表的な実施形態に関して説明してきたが、本発明は、添付の請求項の精神および範囲の内での変更と共に実施されることを当業者は理解するであろう。
【０１５１】
例えば、本明細書において例示的に論じられた方法（およびシステム）がマイクロプロセッサの熱管理における用途向けに合わせてあるとしても、直接測定できない臨界温度に依存するどのような化学プロセス工業または製造業も、本発明の方法を利用できることが理解されるべきである。
【０１５２】
加えて、当業者にとって明らかなように本出願を全体として解釈することにより、本発明は、プロセッサ全体にまたはプロセッサの回路（例えば、浮動小数点ユニット等）に選択的に有利に適用できる。
【図面の簡単な説明】
【０１５３】
【図１】典型的な冷却システム１００をマイクロプロセッサ・チップと共に示す。
【図２】熱の面内拡散および直交拡散の概略図を示す。
【図３】分散型センサ・システムからの温度の推定および予測を示す。
【図４】銅シリンダ４０５を用いた１次元過渡的実験の構成４００を示す。
【図５】ステップ入力電流に起因する測定温度を示す。
【図６】銅シリンダ４０５のランダム加熱を示す
【図７】１次元過渡的熱モデル７００を示す。
【図８】集中パラメータ・モデル８００を用いた単純予測を示す。
【図９】予測精度に対するパラメータ不一致（例えば、膜伝熱誤差）の影響を示す。
【図１０】予測精度を向上する改善されたモデル・パラメータを示す。
【図１１】膜伝熱係数の誤差に起因する温度予測における相対誤差を示す。
【図１２】予測精度に対するパラメータ不一致（例えば、熱抵抗誤差）の影響を示す。
【図１３】熱抵抗における誤差に起因する温度予測における相対誤差を示す。
【図１４】「欠落」温度成分を構成するための推定方法論／構造１４００を例示する。
【図１５】その他の温度測定についての「欠落」温度の構成を示す。
【図１６】単純予測と推定子ベース構成との間の誤差を示す。
【図１７】欠落状態と比較した測定温度の推定における誤差を示す。
【図１８】過渡的加熱に起因する２次元の温度分布を示す。
【図１９】多次元熱システムのための集中パラメータ・モデルを示す。
【図２０】モデル検証のための２次元熱源を示す。
【図２１】リアルタイム実行可能アルゴリズムを提供する本発明の方法２０００の流れ図である。
【図１】
2008507744.tif 000003
【図２】
2008507744.tif 000004
【図３】
2008507744.tif 000005
【図４】
2008507744.tif 000006
【図５】
2008507744.tif 000007
【図６】
2008507744.tif 000008
【図７】
2008507744.tif 000009
【図８】
2008507744.tif 000010
【図９】
2008507744.tif 000011
【図１０】
2008507744.tif 000012
【図１１】
2008507744.tif 000013
【図１２】
2008507744.tif 000014
【図１３】
2008507744.tif 000015
【図１４】
2008507744.tif 000016
【図１５】
2008507744.tif 000017
【図１６】
2008507744.tif 000018
【図１７】
2008507744.tif 000019
【図１８】
2008507744.tif 000020
【図１９】
2008507744.tif 000021
【図２０】
2008507744.tif 000022
【図２１】
2008507744.tif 000023
【国際調査報告】
2008507744.tif 000024
2008507744.tif 000025
2008507744.tif 000026
2008507744.tif 000027
2008507744.tif 000028
2008507744.tif 000029