JP2018532185A - ホットスポット補間のための熱センサ配置 - Google Patents

ホットスポット補間のための熱センサ配置 Download PDF

Info

Publication number
JP2018532185A
JP2018532185A JP2018512942A JP2018512942A JP2018532185A JP 2018532185 A JP2018532185 A JP 2018532185A JP 2018512942 A JP2018512942 A JP 2018512942A JP 2018512942 A JP2018512942 A JP 2018512942A JP 2018532185 A JP2018532185 A JP 2018532185A
Authority
JP
Japan
Prior art keywords
temperature
hot spot
thermal sensors
model
chip
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2018512942A
Other languages
English (en)
Inventor
クーツ、ライアン・マイケル
ミッタル、ラジャット
サエイディ、メヘディ
ペンゼス、ポール・アイバン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Qualcomm Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qualcomm Inc filed Critical Qualcomm Inc
Publication of JP2018532185A publication Critical patent/JP2018532185A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01KMEASURING TEMPERATURE; MEASURING QUANTITY OF HEAT; THERMALLY-SENSITIVE ELEMENTS NOT OTHERWISE PROVIDED FOR
    • G01K13/00Thermometers specially adapted for specific purposes
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B15/00Systems controlled by a computer
    • G05B15/02Systems controlled by a computer electric
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/04Generating or distributing clock signals or signals derived directly therefrom
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/16Constructional details or arrangements
    • G06F1/20Cooling means
    • G06F1/206Cooling means comprising thermal management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3089Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
    • G06F11/3093Configuration details thereof, e.g. installation, enabling, spatial arrangement of the probes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/324Power saving characterised by the action undertaken by lowering clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3296Power saving characterised by the action undertaken by lowering the supply or operating voltage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/81Threshold
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Computing Systems (AREA)
  • Human Computer Interaction (AREA)
  • Automation & Control Theory (AREA)
  • Power Sources (AREA)
  • Measuring Temperature Or Quantity Of Heat (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Radiation Pyrometers (AREA)

Abstract

1つの実施形態において、温度管理システムは、チップ上の異なるロケーションにある複数の熱センサと、温度マネジャと、を備える。温度マネジャは、熱センサから複数の温度読取り値を受け取ることと、受け取られた温度読取り値に二次温度モデルを適合させることと、適合させた二次温度モデルを使用してチップ上のホットスポット温度を推定することと、を行うように構成される。

Description

関連出願の相互参照
[0001] 本願は、2015年9月11日に米国特許商標庁に出願された特許出願第14/852,350号の優先権および利益を主張し、その内容全体が、参照によって本明細書に組み込まれている。
[0002] 本開示の態様は、概して、温度感知に関し、より具体的には、ホットスポット温度を推定することに関する。
[0003] チップ(集積回路)の集積化および動作周波数の増加により、チップの電力密度が劇的に増加しており、より高いチップ温度をもたらす。結果として、温度管理は、過熱による損傷からチップを保護するのにますます重要な役割を果たしている。
[0004] これに関して、複数の熱センサが、チップ上の様々なロケーションで温度をモニタするためにチップ上に集積され得る。それら熱センサからの温度読取り値は、過度な電力漏れおよび/または熱暴走を防ぐために、温度読取り値に基づいてチップ上のブロック(例えば、中央処理ユニット(CPU))を管理する温度マネジャに入力され得る。熱暴走は、温度の増加がリーク電力の増加を引き起こし、それが次に、さらなる温度の増加を引き起こすときに生じる。この正のフィードバックは、チップの温度が急速に上昇することを引き起こすこともあり、場合によるとチップを損傷する。
[0005] 以下に、1つまたは複数の実施形態の基本的な理解を提供するために、そのような実施形態の簡略化された概要を提示する。この概要は、企図されるすべての実施形態の広範な概観ではなく、また、すべての実施形態の主要または重要な要素を特定することも、任意またはすべての実施形態の範囲を定めることも意図されていない。その唯一の目的は、後に提示されるより詳細な説明への前置きとして、簡略化された形式で1つまたは複数の実施形態のいくつかの概念を提示することである。
[0006] 第1の態様によると、温度管理システムが提供される。前記温度管理システムは、チップ上の異なるロケーションにある複数の熱センサと、温度マネジャとを備える。前記温度マネジャは、前記熱センサから複数の温度読取り値を受け取り、前記受け取られた温度読取り値に二次温度モデル(quadratic temperature model)を適合させ、前記適合させた二次温度モデルを使用して前記チップ上のホットスポット温度を推定するように構成される。
[0007] 第2の態様は、温度を管理するための方法に関する。前記方法は、複数の熱センサから複数の温度読取り値を受け取ることを備え、前記熱センサは、チップ上の異なるロケーションにある。前記方法は、また、前記受け取られた温度読取り値に二次温度モデルを適合させることと、前記適合させた二次温度モデルを使用して前記チップ上のホットスポット温度を推定することと、を備える。
[0008] 第3の態様は、温度を管理するための装置に関する。前記装置は、複数の熱センサから複数の温度読取り値を受け取るための手段を備え、前記熱センサは、チップ上の異なるロケーションにある。前記装置は、また、前記受け取られた温度読取り値に二次温度モデルを適合させるための手段と、前記適合させた二次温度モデルを使用して前記チップ上のホットスポット温度を推定するための手段と、を備える。
[0009] 第4の態様は、その上に記憶された命令を備えるコンピュータ可読媒体に関する。プロセッサによって実行されると、前記命令は、前記プロセッサに、複数の熱センサから複数の温度読取り値を受け取ることと、ここにおいて、前記熱センサはチップ上の異なるロケーションにあり、前記受け取られた温度読取り値に二次温度モデルを適合させることと、前記適合させた二次温度モデルを使用して前記チップ上のホットスポット温度を推定することと、を行わせる。
[0010] 前述の目的および関連する目的の達成のために、1つまたは複数の実施形態が、以下に十分に説明され、かつ特許請求の範囲において具体的に指し示される特徴を備える。下記の説明および付属の図面は、1つまたは複数の実施形態のある特定の例示的な態様を詳細に述べる。しかしながら、これらの態様は、様々な実施形態の原理が用いられ得る様々な手法のごく一部を示すものであり、説明される実施形態は、そのようなすべての態様およびそれらの同等物を含むことが意図されている。
[0011] 本開示のある特定の態様による、実例的な温度管理システムを示す図。 [0012] 本開示のある特定の態様による、CPUの両側(opposite sides)に配置された熱センサを備える実例的な温度管理システムを示す図。 [0013] 本開示のある特定の態様による、実例的な温度曲線(temperature curve)を例示するプロット。 [0014] 本開示のある特定の態様による、CPUの両側に配置された熱センサと、CPUの内部に配置された熱センサとを備える実例的な温度管理システムを示す図。 [0015] 本開示のある特定の態様による、CPUの各側面に配置された熱センサを備える実例的な温度管理システムを示す図。 [0016] 本開示のある特定の態様による、CPUの各側面に配置された熱センサと、CPUの内部に配置された熱センサとを備える実例的な温度管理システムを示す図。 [0017] 本開示のある特定の態様による、CPUの各側面およびそれぞれの角に配置された熱センサを備える実例的な温度管理システムを示す図。 [0018] 本開示のある特定の態様による、CPUの各側面およびそれぞれの角に配置された熱センサと、CPUの内部に配置された熱センサとを備える実例的な温度管理システムを示す図。 [0019] 本開示のある特定の態様による、2つのCPUに関する温度を管理するために第1の構成で配列された熱センサを備える実例的な温度管理システムを示す図。 [0020] 本開示のある特定の態様による、2つのCPUに関する温度を管理するために第2の構成で配列された熱センサを備える実例的な温度管理システムを示す図。 [0021] 本開示のある特定の態様による、温度マネジャの実例的な動作を例示するフローチャート。 [0022] 本開示のある特定の態様による、温度を管理するための方法のフローチャート。 [0023] 本開示のある特定の態様による、温度を管理するための方法において行われ得る追加のオプションのステップのフローチャート。
詳細な説明
[0024] 添付の図面に関連して以下に述べられる詳細な説明は、様々な構成の説明として意図されており、本明細書で説明されている概念が実現され得るそれら構成のみを表すように意図されたものではない。詳細な説明は、様々な概念の完全な理解を提供する目的で具体的な詳細を含む。しかしながら、これらの概念がこれらの具体的な詳細なしに実現され得ることが当業者には明らかになるであろう。いくつかの事例では、周知の構造およびコンポーネントが、そのような概念を曖昧にすることを避けるためにブロック図の形態で示されている。
[0025] 複数の熱センサが、チップ上の様々なロケーションで温度をモニタするためにチップ上に集積され得る。それら熱センサからの温度読取り値は、過度な電力漏れおよび/または熱暴走を防ぐために温度読取り値に基づいてチップ上のブロック(例えば、中央処理ユニット(CPU))を管理する温度マネジャに入力され得る。例えば、温度読取り値が温度しきい値に達すると、温度マネジャは、CPUの動作周波数を落とす(低減する)というような、温度を低減するためのステップをとり得る。これは、CPUの動的な電力散逸(power dissipation)を低減することによって温度を低減する。
[0026] 図1は、本開示のある特定の態様による、実例的な温度管理システムを示している。温度管理システムは、1つまたは複数の熱センサ110、温度マネジャ120、調整可能なクロックソース140、および調整可能な電力ソース150を備え得る。
[0027] 熱センサ110は、CPU130または他のタイプの回路内の温度を測定し、対応する温度読取り値を温度マネジャ120に出力するように構成され得る。熱センサ110は、図1に示されているように、CPU130中に集積され得る。
[0028] 調整可能なクロックソース140は、CPU130のためのクロック信号を生成することと、温度マネジャ120の制御下でクロック信号の周波数を調整することとを行うように構成される。クロック信号は、CPU130に出力され、それは、CPU130がCPU130内のトランジスタをスイッチ(トグル)するために使用し得る。この例では、クロック信号の周波数は、CPU130の動作周波数に対応し得る。よって、温度マネジャ120は、クロックソース140によって出力されるクロック信号の周波数を調整することによって、CPU130の動作周波数を調整(スケーリング)することができる。
[0029] 調整可能な電力ソース150は、調整可能な供給電圧(「Vdd」と表示)をCPU130に供給することと、温度マネジャ120の制御下で供給電圧Vddを調整することとを行うように構成される。電力ソース150は、電力管理集積回路(PMIC:power management integrated circuit)を備え得る。CPU130は、CPU130内のデバイス(例えば、トランジスタ)に電力供給するために供給電圧Vddを使用し得る。よって、温度マネジャ120は、電力ソース150からCPU130に供給される供給電圧Vddを調整することによって、CPU130の供給電圧を調整(スケーリング)することができる。
[0030] 動作中、温度マネジャ120は、熱センサ110からの温度読取り値を使用してCPU130の温度をモニタする。温度が温度しきい値を上回って上昇する場合、温度マネジャ120は、温度緩和(temperature mitigation)を開始し得、ここにおいて、温度マネジャ120はCPU130の温度を低減するためのアクションをとる。温度マネジャ120は、CPU130の動作周波数を低減すること、供給電圧Vddを低減すること、またはその両方によって温度を低減し得る。動作周波数、供給電圧Vdd、または両方を低減することは、CPU130の動的な電力散逸を低減することによって温度を低減し、それは、動作周波数と供給電圧Vddの二乗とにほぼ比例する。
[0031] 従来のアプローチでは、熱センサは、チップ上の1つまたは複数の熱ホットスポットにできるだけ近く配置される。本明細書で使用されるとき、「ホットスポット」は、所与の時間においてチップの所与のエリアで最も高温のスポットである。このエリアは、チップ上のCPUのエリア、チップ上の別のブロック(例えば、モデム、メモリ、プロセッサ、等)のエリア、チップ全体のエリア、等であり得る。
[0032] 従来のアプローチでの課題は、ホットスポットが典型的には、チップの非常にアクティブで、かつ密に部品が搭載された(densely populated)領域(例えば、チップ上のCPUの中心、またはその近く)に生じるということである。それゆえ、ホットスポット近くに熱センサを配置することは、チップの設計を妨害し、チップのパフォーマンスにマイナスの影響を与えることもある。また、ホットスポットは、時間にわたり(例えば、使用ケースに依存して)チップ内を移動することもあり、ホットスポットの位置を特定(locate)し、ホットスポットの正確な温度測定値を得ることを難しくする。
[0033] 結果として、熱センサからの温度読取り値とホットスポットの温度との間の最悪ケースの差を説明するために、マージン(margin)が温度読取り値へ充てられる(budgeted)必要がある。例えば、ホットスポット温度が摂氏90度に達すると温度マネジャ120が温度緩和を開始するように構成される場合、温度マネジャ120は、熱センサからの温度読取り値が摂氏75度に達すると温度緩和を開始し得る。この例では、15度のマージンが温度読取り値へ充てられている。このアプローチでの課題は、温度読取り値とホットスポット温度との間の差が、ほとんどのケースで最悪ケースの差よりも少ないこともあるということである。結果として、温度マネジャ120は、ホットスポット温度がまだ摂氏90度を下回っている間に温度緩和を開始し得る。温度緩和をあまりにすぐに開始することは、不必要にチップのパフォーマンスを低減させる。これは、温度緩和が典型的にはチップ上のCPUの動作周波数を低減することを伴うこともあり、それは、CPUのパフォーマンス(例えば、処理速度)を低下させるからである。
[0034] 本開示の実施形態は、熱センサがホットスポットに配置されることを必要とせずに、温度マネジャが、チップ上のホットスポットの温度(ホットスポット温度)を推定することを可能にする。単一の熱センサをホットスポットに配置するのではなく、いくつかの熱センサがホットスポットの周りに配置され得る。温度マネジャは、センサから温度読取り値を受け取り、温度読取り値にチップの温度モデルを適合させる。温度読取り値に温度モデルを適合させた後、温度マネジャは、以下にさらに説明されるように、チップ上のホットスポット温度を推定するために温度モデルを使用し得る。ホットスポットがチップ上のCPU内にある例の場合、ホットスポットから離してセンサを配置することの利点は、典型的には、CPUの周りに大量のオープンスペース(例えば、フィラーエリア(filler area))があるということである。これは、センサがCPUにおける臨界経路(critical paths)から離れて配置されることを可能にし、CPUの動作への妨害を最小限にする。
[0035] 図2は、本開示のある特定の態様による、温度管理システムを示している。この例では、温度管理システムは、CPU130の外側に配置された熱センサ210、212、214、および216を備える。より具体的には、温度管理システムは、CPU130の片側に位置する第1および第2のセンサ210および212と、CPU130の反対側に位置する第3および第4のセンサ214および216を含む。この例では、熱センサ210、212、214、および216は、図2に示されているように、CPU130を横切る線218に沿ってほぼ整列(aligned)されている。線218は、線218がCPU130内の推定されたホットスポットロケーションを横切るように置かれ得る。例えば、線218は、ホットスポットがCPU130の中心に、またはその近くに生じると予想される場合、(図2の例に示されているように)CPU130の中心を横切るように置かれ得る。
[0036] 動作中、熱センサ210、212、214、および216の各々は、それのロケーションで温度を測定し、対応する温度読取り値を温度マネジャ220に送る。温度マネジャ220は、熱センサから受け取られた温度読取り値にチップの温度モデルを適合させるように構成され得る。適合させた温度モデルは、以下にさらに説明されるように、温度マネジャ220が、熱センサ間のロケーションにおける温度を補間し、それによって、CPU130内のホットスポット温度を推定することを可能にする。
[0037] これの例が図3に例示されており、それは、図2に示されている線218に沿った温度の実例的なプロットを示している。図3に示されているように、熱センサ210、212、214、および216からの温度読取り値は、線218に沿った熱センサ210、212、214、および216の既知のロケーション(それぞれx0、x1、x2、およびx3と表示)における温度を示す。温度マネジャ220は、次いで、温度読取り値に温度モデルを適合させる。図3の例では、温度モデルは、例えば、回帰(regression)または別の技法を使用して熱センサからの温度読取り値に適合される二次曲線(quadratic curve)310を備える。二次曲線310は、チップ(ダイ)の温度勾配がほぼ二次(quadratic)であるので、線218に沿った温度の良好な推定値を供給する。図3に示されているように、曲線310は、CPU130内に位置するピーク温度Tpを有する凹形である。
[0038] 温度読取り値に温度モデルを適合させた後に、温度マネジャ220はそのモデルを使用してホットスポット温度を推定し得る。図3の例では、温度マネジャ220は、曲線310上のピーク温度Tpを計算し、ピーク温度Tpをホットスポット温度の推定値として使用することによってホットスポット温度を推定し得る。図3に示されているように、曲線310上のピーク温度Tpはロケーションxpにおいて生じ、これは、CPU130内にある。よって、ピーク温度Tpは、ホットスポットが線218上またはその近くに位置すると仮定して、CPU130内のホットスポット温度の正確な推定値を供給する。ホットスポット温度(例えば、ピーク温度Tp)を推定した後、以下にさらに説明されるように、温度マネジャ220は、推定されたホットスポット温度を、温度管理を行うために使用し得る。
[0039] ある特定の態様において、温度モデルは、以下の式によって与えられる二次曲線を備え得、
ここで、T(x)は、(例えば、線218に沿った)ロケーションxの関数としての温度であり、a0、a1、およびa2は、曲線の係数である。式(1)は、以下のように、(例えば、線218に沿った)4つの異なるセンサロケーションに対応する4つの温度読取り値に関して行列形式で書かれることができ、
ここで、T(x0)がセンサロケーションx0(例えば、第1のセンサ210のロケーション)における温度読取り値であり、T(x1)がセンサロケーションx1(例えば、第2のセンサ212のロケーション)における温度読取り値であり、T(x2)がセンサロケーションx2(例えば、第3のセンサ214のロケーション)における温度読取り値であり、T(x3)がセンサロケーションx3(例えば、第4のセンサ216のロケーション)における温度読取り値である。温度マネジャ220は、式(2)に基づく熱センサからの温度読取り値を使用して温度モデルの係数a0、a1、およびa2の値を求め、それによって、温度読取り値に温度モデルを適合させ得る。これは、式(2)の行列における式の数(すなわち、4つの式)が、未知数の数(すなわち、3つの係数a0、a1、およびa2)よりも大きいので可能である。例えば、温度マネジャ220は、以下の式にしたがって係数a0、a1、およびa2の値を求め得、
A=TX-1 (式3)
ここで、Aは、値が求められる係数を備える行列であり、Tは、センサロケーション(例えば、4つのセンサロケーション)における温度読取り値を備える温度行列であり、X-1は、それらセンサロケーションを備える疑似逆行列(a pseudo inverse of a matrix)である。
[0040] 熱センサからの温度読取り値に温度モデルを適合させることが、曲線310が温度読取り値に正確に適合することを必要としないことが認識されるべきである。例えば、曲線310と温度読取り値のうちの1つまたは複数との間に小さい誤差があり得る。この例では、温度マネジャ220は、曲線310と温度読取り値との間の誤差を最小限にする、曲線310に関する係数a0、a1、およびa2を決定(例えば、温度読取り値に曲線310を最もよく適合させる係数a0、a1、およびa2を決定)し得る。
[0041] 係数a0、a1、およびa2が一旦決定されると、温度マネジャ220は、以下の式にしたがって、ピーク温度のロケーションを決定し得、
ここで、xpは、ピーク温度のロケーションである。式(4)は、xに関する式(1)の導関数(derivative)を計算することと、導関数をゼロに等しく設定することと、xの値を求めることとによって導出される。ピークロケーションxpを決定した後、温度マネジャ220は、ピークロケーションxpと、決定された係数a0、a1、およびa2とを式(1)へと入力し、温度の値を求めることによって、ピーク温度を決定し得る。
[0042] ある特定の態様において、温度マネジャ220は、周期的なベースで熱センサから温度読取り値を受け取り、上述されたように、温度マネジャ220が熱センサから温度読取り値を受け取る度にホットスポット温度を推定し得る。これは、温度マネジャ220が、CPU130内のホットスポット温度をモニタし、モニタされたホットスポット温度に基づいて温度管理を行うことを可能にする。例えば、温度マネジャ220は、ホットスポット温度が臨界温度(critical temperature)(例えば、熱暴走がトリガされる温度)に達する、またはそれに近くなることを防ぐために、モニタされたホットスポット温度が温度しきい値に達すると、温度緩和を開始し得る。温度マネジャ220は、調整可能なクロックソース140にCPUの周波数を低減(スケールダウン)するように指示すること、調整可能な電力ソース150に供給電圧Vddを低減するように指示すること、またはその両方によって、温度緩和を行い得る。
[0043] 温度マネジャ220は、熱センサがCPU130内のホットスポットに、またはその近くに位置することを必要とせずに、CPU130内のホットスポット温度を正確に推定することができる。結果として、推定されたホットスポット温度と実際のホットスポット温度との間の差を説明するために推定ホットスポット温度へと組み込まれる必要があるマージンが低減される。低減されたマージンは、熱緩和が開始される前に、より長い期間の間、より速い速度でCPUが動作することを可能にし、これにより、パフォーマンスを向上させる。
[0044] 本開示の態様が図2に示されている熱センサの実例的な配置および数に限定されるものではないことが認識されるべきである。例えば、熱マネジャ220は、4つではなく3つの熱センサを使用してホットスポット温度を推定し得る。これは、3つの異なるセンサロケーションにおける3つの温度読取り値が、式(1)における3つの係数を決定するのに十分であり得るからである。この例では、図2の熱センサのうちの1つが省略され得る。
[0045] 図2はセンサのすべてがCPU130の外側に位置する例を示しているが、これがそうである必要はないことが認識されるべきである。例えば、センサのうちの1つまたは複数が、CPU内の既知のロケーションに配置され得る。この例では、1つまたは複数のセンサは、CPUの動作への妨害を低減するために、CPUの非臨界エリアに配置され得る。これは、本開示の態様が、ホットスポット温度を正確に推定するために温度センサが(典型的にはCPUの臨界エリアに位置する)ホットスポットに配置されることを必要としないので可能である。
[0047] これに関して、図4は、線218に沿った3つの熱センサ410、412、および414を備える温度管理システムの例を示している。より具体的には、温度管理システムは、CPU130の両側に位置する2つの熱センサ410および414と、CPU130内に位置する1つの熱センサ412とを備える。CPU130内の熱センサ412は、上述されたように、CPUの動作への妨害を低減するために、CPUの非臨界エリアに位置し得る。この例では、温度マネジャ220は、3つの熱センサ410、412、および414から温度読取り値を受け取り、受け取られた温度読取り値にチップの温度モデル(例えば、式(1)によって与えられる温度モデル)を適合させ得る。これは、温度マネジャ220が、熱センサ間のロケーションにおける温度を補間することを可能にする。温度マネジャ220は、次いで、上述されたように、適合させた温度モデルを使用してピーク温度を決定することによってホットスポット温度を推定し得る。
[0047] 図5は、本開示のある特定の態様による、温度管理システムを示している。この例では、温度管理システムは、CPU130のすべての側面上に熱センサを備える。より具体的には、温度管理システムは、図2に示されている第1、第2、第3、および第4の熱センサ210、212、214、および216を含む。加えて、温度管理システムは、CPU310の片側に位置する第5および第6の熱センサ510および512と、CPUの反対側に位置する第7および第8の熱センサ514および516を含む。第5、第6、第7、および第8の熱センサ510、512、514、および516は、図5に示されているように、CPU130を横切り、線218にほぼ垂直である、線518に沿ってほぼ整列される。
[0048] 動作中、熱センサ210、212、214、216、510、512、514、および516の各々は、それのロケーションで温度を測定し、対応する温度読取り値を温度マネジャ220に送る。温度マネジャ220は、温度読取り値にチップの温度モデルを適合させ、CPU130のホットスポット温度を推定するために、適合させた温度モデルを使用する。1つの例では、温度モデルは、以下の二次方程式によって与えられ得、
ここで、T(x,y)は、ロケーションx,yの関数としての温度であり、xはx軸に沿ったロケーションであり、yはy軸に沿ったロケーションであり、a0、a1、a2、a3、およびa4は係数である。この例では、線218はx軸と整列され得、線518はy軸と整列され得る。
[0049] この例では、CPU130の周りにある8個の熱センサ210、212、214、216、510、512、514、および516は、温度マネジャ220に、CPU130の周りの8個の異なるロケーションに対応する温度読取り値を供給する。温度マネジャ220は、熱センサから受け取られた温度読取り値と温度センサの既知のロケーションとを使用して温度モデルの5個の係数a0、a1、a2、a3、およびa4の値を求め、それによって、熱センサからの温度読取り値に温度モデルを適合させ得る。適合させたモデルは、温度マネジャ220が、CPU130内の温度を補間することを可能にする。温度モデルを温度読取り値に適合させた後、温度マネジャ220は、そのモデルを使用してピーク温度を決定し、決定されたピーク温度をCPU130内のホットスポット温度の推定値として使用し得る。温度マネジャ220は、次いで、上述されたように、推定されたホットスポット温度に基づいてCPU130の温度を管理し得る。
[0050] 温度マネジャ220は、様々な技法のいずれか1つを使用してピーク温度を決定し得る。1つの例では、温度マネジャ220は、xおよびy次元の式(5)の導関数を算出することと、ピークロケーション(ピーク温度のロケーション)を見つけるために導関数をゼロに設定することと、ピーク温度を決定するためにピークロケーションを式(5)へと入力することとによって、ピーク温度を決定し得る。別の例では、温度マネジャ220は、勾配降下(gradient descent)アルゴリズムのような反復のピーク発見アルゴリズムを使用してピーク温度を決定し得る。さらに別の例では、温度マネジャ220は、温度モデルを使用してロケーションの離散的なセット(discrete set)における各ロケーションに関する温度を算出することと、算出された最高温度を選択することとによって、ピーク温度を決定し得る。計算上の負荷を低減するために、そのロケーションのセットが、ホットスポットにある、またはその近くにある可能性がより高いロケーション(例えば、CPU130における高アクティビティのエリアのロケーションまたはそのエリア近くのロケーション)に低減され得る。
[0051] 本開示で使用されるとき、「ピーク温度」という用語は、必ずしも、温度モデルによって与えられる絶対ピーク温度であるわけではないことが認識されるべきである。例えば、上述されたように、温度マネジャ220は、ロケーションの離散的なセットに関して、モデルによって与えられるピーク温度(最高温度)を決定し得る。この例では、絶対ピーク温度に対応するロケーションがそのロケーションのセットにおけるロケーション間にある場合、決定されたピーク温度は、モデルによって与えられる絶対ピーク温度を近似し得る。
[0052] 熱マネジャ220は、8個より少ないセンサを使用して式(5)に基づいてホットスポット温度を推定し得ることが認識されるべきである。これに関して、図6は、CPU130の各側面にある熱センサと、CPU130内にある1つの熱センサとの合計5個の熱センサを備える、温度管理システムの例を示している。より具体的には、温度管理システムは、線218に沿った2つの熱センサ610および612と、線518に沿った2つの熱センサ616および614と、ほぼ線218および518の交点に位置する1つの熱センサ618とを備える。この例では、5個の熱センサ610、612、614、616、および618は、5個の異なるセンサロケーションに対応する温度読取り値を供給し、それらは、式(5)によって与えられる温度モデルの5個の係数a0、a1、a2、a3、およびa4の値を求めるのに十分であり得る。
[0053] 動作中、温度マネジャ220は、熱センサ610、612、614、616、および618から温度読取り値を受け取り、受け取られた温度読取り値にチップの温度モデル(例えば、式(5)によって与えられる温度モデル)を適合させ得る。温度マネジャ220は、次いで、上述されたように、適合させた温度モデルを使用してピーク温度を決定することによってホットスポット温度を推定し得る。
[0054] 熱センサ618が、図6の例ではCPU130のほぼ中心に位置しているが、これがそうである必要はないことが認識されるべきである。例えば、熱センサ618は、CPU130の中心から熱センサ618を離すように線218に沿って左または右に動かされ得る。この例では、熱センサ614および616もまた、熱センサ614、616、および618が縦線に沿って整列されたままであるように、左または右に動かされ得る。別の例では、熱センサ618は、CPU130の中心から熱センサ618を離すように線518に沿って上または下に動かされ得る。この例では、熱センサ610および612もまた、熱センサ610、612、および618が横線に沿って整列されたままであるように、上または下に動かされ得る。
[0055] 図7は、本開示のある特定の態様による、温度管理システムを示している。この例では、温度管理システムは、CPU130の周りに16個の熱センサを備える。より具体的には、温度管理システムは、図5に示されている熱センサ210、212、214、216、510、512、514、および516を含む。加えて、温度管理システムは、図7に示されているように、第1の対角線718に沿って整列された熱センサ710、712、714、および716と、第2の対角線728に沿って整列された熱センサ720、722、724、および726とを含む。例示しやすくするために、温度マネジャ220は図7には示されていない。
[0056] 動作中、熱センサの各々は、それのロケーションで温度を測定し、対応する温度読取り値を温度マネジャ220に送る。温度マネジャ220は、温度読取り値にチップの温度モデルを適合させ、CPU130のホットスポット温度を推定するために、適合させた温度モデルを使用する。1つの例では、温度モデルは、以下の二次方程式によって与えられ得、
ここで、T(x,y)は、ロケーションx,yの関数としての温度であり、xはx軸に沿ったロケーションであり、yはy軸に沿ったロケーションであり、a0、a1、a2、a3、a4、a5、a6、a7、およびa8は係数である。この例では、線218はx軸と整列され得、線518はy軸と整列され得る。
[0057] この例では、温度マネジャ220は、熱センサから受け取られた温度読取り値と温度センサの既知のロケーションとを使用して温度モデルの係数a0、a1、a2、a3、a4、a5、a6、a7、およびa8の値を求め、それによって、熱センサからの温度読取り値に温度モデルを適合させ得る。温度モデルを温度読取り値に適合させた後、温度マネジャ220は、モデルを使用してピーク温度を決定し、決定されたピーク温度をCPU130内のホットスポット温度の推定値として使用し得る。温度マネジャ220は、上述された技法または他の技法の任意のものを使用してピーク温度を決定し得る。温度マネジャ220は、次いで、上述されたように、推定されたホットスポット温度に基づいてCPU130の温度を管理し得る。
[0058] 熱マネジャ220は、16個より少ないセンサを使用して式(6)に基づいてホットスポット温度を推定し得ることが認識されるべきである。これに関して、図8は、CPU130の各側面上にある熱センサ、CPU130のそれぞれの角にある熱センサ、およびCPU130内にある1つの熱センサの合計9個の熱センサを備える、温度管理システムの例を示している。より具体的には、温度管理システムは、線218に沿った2つの熱センサ812および820と、線518に沿った2つの熱センサ816および824と、対角線718に沿った2つの熱センサ814および822と、対角線728に沿った2つの熱センサ810および818と、ほぼ線218、518、718、および728の交点に位置する1つの熱センサ618とを備える。この例では、9個の熱センサ810、812、814、816、818、820、822、824、および826は、9個の異なるセンサロケーションに対応する温度読取り値を供給し、それらは、式(6)によって与えられる温度モデルの9個の係数a0、a1、a2、a3、a4、a5、a6、a7、およびa8の値を求めるのに十分であり得る。
[0059] 動作中、温度マネジャ220は、熱センサから温度読取り値を受け取り、受け取られた温度読取り値にチップの温度モデル(例えば、式(6)によって与えられる温度モデル)を適合させ得る。温度マネジャ220は、次いで、上述されたように、適合させた温度モデルを使用してピーク温度を決定することによってホットスポット温度を推定し得る。
[0060] よって、本開示の態様は、温度マネジャが、チップ上の既知のロケーションにある熱センサからの温度読取り値に適合される温度モデルを使用して、チップ上のホットスポットの温度を推定することを可能にする。ある特定の態様において、温度モデルは二次である。これは、チップ(ダイ)の温度勾配がほぼ二次であるので、チップ上のCPU内の温度の良好な推定値を供給する。
[0061] 温度マネジャ220が1つのCPUに限定されるものではなく、(例えば、マルチコアシステム内の)2つ以上のCPUに関する温度を管理し得ることが認識されるべきである。これに関して、図9は、本開示のある特定の態様による、第1のCPU930および第2のCPU970に関する温度を管理するように構成された実例的な温度管理システムを示している。温度管理システムは、温度マネジャ935、調整可能なクロックソース940、および調整可能な電力ソース950を備え得る。
[0062] 温度管理システムは、さらに、第1および第2のCPU930および970を横切る線922に沿って整列された複数の熱センサ912、914、916、918、および920を備える。より具体的には、温度管理システムは、第1のCPU930の片側に位置する第1の熱センサ912と、第1のCPU930内に位置する第2の熱センサ914と、第1のCPU930と第2のCPU970との間に位置する第3の熱センサ918と、第2のCPU970内に位置する第4の熱センサと、第1のCPU930の反対にある第2のCPU970の片側に位置する第5の熱センサ920とを備える。熱センサの各々は、以下にさらに説明されるように、それのロケーションで温度を測定し、対応する熱読取り値を温度マネジャ935に送るように構成される。
[0063] 調整可能なクロックソース940は、第1のCPU930のための第1のクロック信号(「Clk1」と表示)と、第2のCPU970のための第2のクロック信号(「Clk2」と表示)とを生成し、温度マネジャ935の制御下で第1および第2のクロック信号の周波数を独立して調整するように構成される。これは、温度マネジャ935が、第1および第2のクロック信号Clk1およびClk2の周波数を独立して調整することによって、第1のCPU930および第2のCPU970の動作周波数を独立して調整(スケーリング)することを可能にする。
[0064] 調整可能な電力ソース950は、第1のCPU930に第1の供給電圧(「Vdd1」と表示)を、第2のCPU970に第2の供給電圧(「Vdd2」と表示)を供給し、温度マネジャ935の制御下で第1および第2の供給電圧Vdd1およびVdd2を独立して調整するように構成される。これは、温度マネジャ935が、第1および第2の供給電圧Vdd1およびVdd2を独立して調整することによって、第1および第2のCPU930および970の供給電圧を独立して調整(スケーリング)することを可能にする。
[0065] 動作中、温度マネジャ935は、第1、第2、および第3の熱センサ912、914、および916から温度読取り値を受け取ることと、受け取られた温度読取り値に温度モデル(例えば、式(1)において与えられる温度モデル)を適合させることとによって、第1のCPU930の温度を管理し得る。温度モデルを適合させた後、温度マネジャ935は、温度モデルを使用してピーク温度を決定し、決定されたピーク温度を第1のCPU930内のホットスポット温度の推定値として使用し得る。温度マネジャ935は、次いで、第1のCPU930内の推定されたホットスポット温度に基づいて第1のCPU930の温度を管理し得る。例えば、第1のCPU930内の推定されたホットスポット温度が温度しきい値を越える場合、温度マネジャ935は、第1のCPU930の温度を低減するために温度緩和を開始し得る。温度マネジャ935は、調整可能なクロックソース940に、第1のクロック信号Clk1の周波数を低減するように指示すること、および/または調整可能な電力ソース950に、第1の供給電圧Vdd1を低減するように指示することによって、温度を低減し得る。
[0066] 温度マネジャ935は、第3、第4、および第5の熱センサ916、918、および920から温度読取り値を受け取ることと、受け取られた温度読取り値に温度モデル(例えば、式(1)において与えられる温度モデル)を適合させることとによって、第2のCPU970の温度を管理し得る。温度モデルを適合させた後、温度マネジャ935は、温度モデルを使用してピーク温度を決定し、決定されたピーク温度を第2のCPU970内のホットスポット温度の推定値として使用し得る。温度マネジャ935は、次いで、第2のCPU970内の推定されたホットスポット温度に基づいて第2のCPU970の温度を管理し得る。例えば、第2のCPU970内の推定されたホットスポット温度が温度しきい値を越える場合、温度マネジャ935は、第2のCPU970の温度を低減するために温度緩和を開始し得る。温度マネジャ935は、調整可能なクロックソース940に、第2のクロック信号Clk2の周波数を低減するように指示すること、および/または調整可能な電力ソース950に、第2の供給電圧Vdd2を低減するように指示することによって、温度を低減し得る。
[0067] 図9の例では、温度マネジャ930は、第1および第2のCPU930および970の両方に関する温度を管理するために第3の熱センサ916からの温度読取り値を使用する。よって、第3の熱センサ916は、第1および第2のCPUによって共有される。しかしながら、本開示がこの例に限定されるものではないことが認識されるべきである。例えば、図9の温度管理システムは、線922に沿って第1のCPUと第2のCPUとの間に2つの熱センサを含むように修正され得、ここにおいて、2つの熱センサのうちの一方が第1のCPU930の方により近く位置し、2つの熱センサのうちの他方が第2のCPU970の方により近く位置する。この例では、温度マネジャ930は、第1のCPU930の方により近く位置する熱センサと第1のCPU930のための熱センサ912および914とからの温度読取り値を使用し、第2のCPU970の方により近く位置する熱センサと第2のCPU970のための熱センサ918および920とを使用し得る。
[0068] 図10は、本開示のある特定の態様による、第1のCPU930および第2のCPU970に関する温度を管理するように構成された実例的な温度管理システムを示している。この例では、温度管理システムは、線922に沿って整列された複数の熱センサ1010、1012、1014、1016、および1018を備える。より具体的には、温度管理システムは、第1のCPU930の片側に位置する第1および第2の熱センサ1010および1012と、第1のCPU930と第2のCPU970との間に位置する第3の熱センサ1014と、第1のCPU930の反対にある第2のCPU970の片側に位置する第4および第5の熱センサ1016および1018とを備える。熱センサの各々は、以下にさらに説明されるように、それのロケーションで温度を測定し、対応する熱読取り値を温度マネジャ935に送るように構成される。
[0069] 動作中、温度マネジャ935は、第1、第2、および第3の熱センサ1010、1012、および1014から温度読取り値を受け取ることと、受け取られた温度読取り値に温度モデル(例えば、式(1)において与えられる温度モデル)を適合させることとによって、第1のCPU930の温度を管理し得る。温度モデルを適合させた後、温度マネジャ935は、温度モデルを使用してピーク温度を決定し、決定されたピーク温度を第1のCPU930内のホットスポット温度の推定値として使用し得る。温度マネジャ935は、次いで、上述されたように、第1のCPU930内の推定されたホットスポット温度に基づいて第1のCPU930の温度を管理し得る。
[0070] 温度マネジャ935は、第3、第4、および第5の熱センサ1014、1016、および1018から温度読取り値を受け取ることと、受け取られた温度読取り値に温度モデル(例えば、式(1)において与えられる温度モデル)を適合させることとによって、第2のCPU970の温度を管理し得る。温度モデルを適合させた後、温度マネジャ935は、温度モデルを使用してピーク温度を決定し、決定されたピーク温度を第2のCPU970内のホットスポット温度の推定値として使用し得る。温度マネジャ935は、次いで、上述されたように、第2のCPU970内の推定されたホットスポット温度に基づいて第2のCPU970の温度を管理し得る。
[0071] ある特定の態様において、温度マネジャ220または935は、電力を節約するために、システムが温度緩和に近くないときは1つの熱センサを使用し得る。例えば、温度マネジャ220または935は、単一の熱センサから温度読取り値を最初に受け取り、各温度読取り値を低い温度しきい値(例えば、摂氏70度)と比較し得る。温度読取り値が低いしきい値を下回る場合、温度マネジャ220または935は、その単一の熱センサのみをモニタし続け得る。これは、単一の熱センサからの温度読取り値が比較的低い(例えば、摂氏70度を下回る)とき、システムは、必要とする温度緩和に近くないという仮定に基づき得る。単一の熱センサからの温度読取り値が低い温度しきい値を超える場合、温度マネジャ220または935は、複数の熱センサ(例えば、熱センサのすべて)をモニタし始め、上述されたようにCPUの温度を管理し得る。
[0072] 単一の熱センサは、ホットスポットに最も近いと予想される熱センサに対応し得る。例えば、図4に示されている例の場合、単一の熱センサは熱センサ412に対応し得る。図4に示されている例の場合、単一の熱センサは、熱センサ212または214(CPU130に最も近い熱センサ)に対応し得る。
[0073] 図11は、ある特定の態様による、温度マネジャ220または935の実例的な動作1100を例示するフローチャートである。最初に、温度マネジャ220または935は、上述されたように、単一の熱センサからの温度読取り値をモニタする。
[0074] ステップ1110において、温度マネジャは、単一の熱センサからの温度読取り値が低い温度しきい値(「Tm」と表示)を越えるかどうかを決定する。低い温度しきい値を越えない場合、温度マネジャは、ステップ1120において、単一のセンサからの温度読取り値をモニタし続ける。そうでない場合、温度マネジャはステップ1130に進む。
[0075] ステップ1130において、温度マネジャは、複数の熱センサ(例えば、CPUの周りの熱センサ)からの温度読取り値をモニタする。ステップ1140において、温度マネジャは、複数の熱センサからの温度読取り値が凹曲線(例えば、凹曲線310)に対応するかどうかを決定する。温度読取り値が凹曲線に対応しない(例えば、凸曲線に対応する)場合、温度マネジャは、ステップ1150において、複数の熱センサからの最大の温度読取り値に基づいて温度管理を行う。例えば、温度マネジャは、最大の温度読取り値を第1の温度しきい値と比較し、最大の温度読取り値が第1の温度しきい値を超えるときに温度緩和を開始し得る。複数の熱センサからの温度読取り値が凹曲線に対応する場合、温度マネジャはステップ1160に進み得る。
[0076] ステップ1160において、温度マネジャは、複数の熱センサからの温度読取り値をとる。ステップ1170において、温度マネジャは、温度読取り値に温度モデルを適合させ、ステップ1180において、温度マネジャは、適合させた温度モデルを使用してピーク温度を算出する。温度マネジャは、ピーク温度をホットスポット温度の推定値として使用し得る。この例では、温度マネジャは、推定されたホットスポット温度が第2の温度しきい値を超えるときに温度緩和を開始し得る。第2の温度しきい値は、第1の温度しきい値よりも高いこともある。これは、推定されたホットスポット温度が、最大の温度読取り値よりも正確なホットスポット温度のインジケーションを供給すると仮定して、より大きいバジェットが第1の温度しきい値へと組み込まれ得るからである。
[0077] 上述されたように、温度マネジャは、ステップ1140において複数の熱センサからの温度読取り値が凹曲線に対応するかどうかを決定する。図2の例の場合、温度マネジャは、熱センサ210および212からの温度読取り値を比較することによってこれを行い得る。熱センサ212からの温度読取り値が熱センサ210からの温度読取り値よりも高い場合、温度マネジャは、ステップ1140において凹曲線を決定し得る。その一方、熱センサ212からの温度読取り値が熱センサ210からの温度読取り値よりも低い場合、温度マネジャは、ステップ1140において凸曲線を決定し得る。
[0078] 図12Aは、本開示のある実施形態による、温度を管理するための方法1200を例示するフローチャートである。方法1200は、温度マネジャ220または935によって行われ得る。
[0079] ステップ1210において、複数の温度読取り値が複数の熱センサから受け取られ、ここにおいて、熱センサは、チップ上の異なるロケーションにある。例えば、熱センサは、プロセッサ(例えば、CPU)の周りに位置する熱センサを含み得る。熱センサは、また、プロセッサ内に位置する1つまたは複数の熱センサを含み得る。
[0080] ステップ1220において、二次温度モデルが、受け取られた温度読取り値に適合される。例えば、二次温度モデルは、温度読取り値に適合される凹形の温度曲線(例えば、曲線310)を定め得る。
[0081] ステップ1230において、チップ上のホットスポット温度は、適合された二次温度モデルを使用して推定される。例えば、ホットスポット温度は、適合された温度モデルのピーク温度を決定することによって推定され得る。
[0082] 図12Bは、ある特定の態様による、温度を管理するための方法1200において行われ得る追加のオプションのステップを例示するフローチャートである。オプションのステップ1240において、推定されたホットスポット温度は温度しきい値と比較される。オプションのステップ1250において、推定されたホットスポット温度が温度しきい値を超える場合、温度緩和が開始される。温度緩和は、クロック信号の周波数を低減すること、供給電圧を低減すること、または両方を伴い得る。
[0083] 本開示の実施形態はCPUの例を使用して上述されているが、本開示の実施形態が、この例に限定されるものではなく、任意のタイプのプロセッサまたは回路に関する温度を管理するために使用され得ることが認識されるべきである。例えば、図2および図4〜図10に示されている温度管理システムの任意のものが、CPUをGPU、モデム、等と置き換えることによって、GPU、モデム、等に関する温度を管理するために使用され得る。
[0084] 上述された実施形態の任意のものによる温度マネジャは、本明細書で説明されている機能を実行するように設計された、汎用プロセッサ、デジタルシグナルプロセッサ(DSP)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)または他のプログラマブル論理デバイス、ディスクリートハードウェアコンポーネント、またはこれらの任意の組合せを用いてインプリメントされ得る。汎用プロセッサはマイクロプロセッサであり得るが、代替として、このプロセッサは、任意の従来のプロセッサ、コントローラ、マイクロコントローラ、またはステートマシンであり得る。プロセッサは、機能を行うためのコードを備えるソフトウェアを実行することによって本明細書で説明されている機能を行うことができる。ソフトウェアは、RAM、ROM、EEPROM(登録商標)、光ディスク、および/または磁気ディスクのような、コンピュータ可読記憶媒体上に記憶され得る。
[0085] 本開示の先の説明は、当業者が本開示を製造または使用することを可能にするために提供されている。本開示に対する様々な修正は、当業者には容易に明らかとなり、本明細書で定義されている包括的な原理は、本開示の範囲または趣旨から逸脱せずに、他の変形物に適用され得る。よって、本開示は、本明細書で説明されている例に限定されるようには意図されておらず、本明細書に開示されている原理および新規の特徴と矛盾しない最大範囲であると認められるべきである。
[0085] 本開示の先の説明は、当業者が本開示を製造または使用することを可能にするために提供されている。本開示に対する様々な修正は、当業者には容易に明らかとなり、本明細書で定義されている包括的な原理は、本開示の範囲または趣旨から逸脱せずに、他の変形物に適用され得る。よって、本開示は、本明細書で説明されている例に限定されるようには意図されておらず、本明細書に開示されている原理および新規の特徴と矛盾しない最大範囲であると認められるべきである。
以下に、本願の出願当初の特許請求の範囲に記載された発明を付記する。
[C1]
温度管理システムであって、
チップ上の異なるロケーションにある複数の熱センサと、
前記熱センサから複数の温度読取り値を受け取ることと、前記受け取られた温度読取り値に二次温度モデルを適合させることと、前記適合させた二次温度モデルを使用して前記チップ上のホットスポット温度を推定することと、を行うように構成された温度マネジャと
を備える、温度管理システム。
[C2]
前記温度マネジャは、前記適合させた二次温度モデルを使用してピーク温度を決定することによって前記ホットスポット温度を推定するように構成される、C1に記載のシステム。
[C3]
前記温度マネジャは、前記ピーク温度に対応するロケーションを決定するために、前記適合させた二次温度モデルの導関数をゼロに設定することと、前記ピーク温度を決定するために、前記適合させた二次温度モデルに前記決定されたロケーションを入力することとによって、前記ピーク温度を決定するように構成される、C2に記載のシステム。
[C4]
前記温度マネジャは、前記適合させた二次温度モデルを使用して前記チップ上の複数の異なるロケーションにおける複数の温度を決定することと、前記決定された温度のうちの最高温度を選択することとによって、前記ピーク温度を決定するように構成される、C2に記載のシステム。
[C5]
前記温度マネジャは、前記推定されたホットスポット温度を温度しきい値と比較することと、前記推定されたホットスポット温度が前記温度しきい値を超える場合に温度緩和を開始することとを行うように構成される、C1に記載のシステム。
[C6]
前記温度マネジャは、クロック信号の周波数を低減するようにクロックソースに指示すること、供給電圧を低減するように電力ソースに指示すること、または両方によって、温度緩和を開始するように構成される、C5に記載のシステム。
[C7]
前記複数の熱センサは、線に沿ってほぼ整列された少なくとも3つの熱センサを備え、前記線は前記チップ上のプロセッサを横切り、前記推定されたホットスポット温度は前記プロセッサ内のロケーションに対応する、C1に記載のシステム。
[C8]
前記少なくとも3つの熱センサはすべて、前記プロセッサの外側に位置する、C7に記載のシステム。
[C9]
前記少なくとも3つの熱センサは、前記プロセッサの外側に位置する少なくとも2つの熱センサと、前記プロセッサ内に位置する少なくとも1つの熱センサとを備える、C7に記載のシステム。
[C10]
温度を管理するための方法であって、
複数の熱センサから複数の温度読取り値を受け取ることと、前記熱センサは、チップ上の異なるロケーションにある、
前記受け取られた温度読取り値に二次温度モデルを適合させることと、
前記適合させた二次温度モデルを使用して前記チップ上のホットスポット温度を推定することと
を備える、方法。
[C11]
前記ホットスポット温度を推定することは、前記適合させた二次温度モデルを使用してピーク温度を決定することを備える、C10に記載の方法。
[C12]
前記ピーク温度を決定することは、前記ピーク温度に対応するロケーションを決定するために、前記適合させた二次温度モデルの導関数をゼロに設定することと、前記ピーク温度を決定するために、前記適合させた二次温度モデルに前記決定されたロケーションを入力することとを備える、C11に記載の方法。
[C13]
前記ピーク温度を決定することは、前記適合させた二次温度モデルを使用して前記チップ上の複数の異なるロケーションにおける複数の温度を決定することと、前記決定された温度のうちの最高温度を選択することとを備える、C11に記載の方法。
[C14]
前記推定されたホットスポット温度を温度しきい値と比較することと、前記推定されたホットスポット温度が前記温度しきい値を超える場合に温度緩和を開始することとをさらに備える、C10に記載の方法。
[C15]
温度緩和を開始することは、クロック信号の周波数を低減するようにクロックソースに指示すること、供給電圧を低減するように電力ソースに指示すること、または両方を備える、C14に記載の方法。
[C16]
前記複数の熱センサは、線に沿ってほぼ整列された少なくとも3つの熱センサを備え、前記線は前記チップ上のプロセッサを横切り、前記推定されたホットスポット温度は前記プロセッサ内のロケーションに対応する、C10に記載の方法。
[C17]
前記少なくとも3つの熱センサはすべて、前記プロセッサの外側に位置する、C16に記載の方法。
[C18]
前記少なくとも3つの熱センサは、前記プロセッサの外側に位置する少なくとも2つの熱センサと、前記プロセッサ内に位置する少なくとも1つの熱センサとを備える、C16に記載の方法。
[C19]
温度を管理するための装置であって、
複数の熱センサから複数の温度読取り値を受け取るための手段と、前記熱センサは、チップ上の異なるロケーションにある、
前記受け取られた温度読取り値に二次温度モデルを適合させるための手段と、
前記適合させた二次温度モデルを使用して前記チップ上のホットスポット温度を推定するための手段と
を備える、装置。
[C20]
前記ホットスポット温度を推定するための前記手段は、前記適合させた二次温度モデルを使用してピーク温度を決定するための手段を備える、C19に記載の装置。
[C21]
前記ピーク温度を決定するための前記手段は、前記ピーク温度に対応するロケーションを決定するために、前記適合させた二次温度モデルの導関数をゼロに設定するための手段と、前記ピーク温度を決定するために、前記適合させた二次温度モデルに前記決定されたロケーションを入力するための手段とを備える、C20に記載の装置。
[C22]
前記ピーク温度を決定するための前記手段は、前記適合させた二次温度モデルを使用して前記チップ上の複数の異なるロケーションにおける複数の温度を決定するための手段と、前記決定された温度のうちの最高温度を選択するための手段とを備える、C20に記載の装置。
[C23]
前記推定されたホットスポット温度を温度しきい値と比較するための手段と、前記推定されたホットスポット温度が前記温度しきい値を超える場合に温度緩和を開始するための手段とをさらに備える、C19に記載の装置。
[C24]
温度緩和を開始するための前記手段は、クロック信号の周波数を低減するようにクロックソースに指示するための手段、供給電圧を低減するように電力ソースに指示するための手段、または両方を備える、C23に記載の装置。
[C25]
前記複数の熱センサは、線に沿ってほぼ整列された少なくとも3つの熱センサを備え、前記線は前記チップ上のプロセッサを横切り、前記推定されたホットスポット温度は前記プロセッサ内のロケーションに対応する、C19に記載の装置。
[C26]
前記少なくとも3つの熱センサはすべて、前記プロセッサの外側に位置する、C25に記載の装置。
[C27]
前記少なくとも3つの熱センサは、前記プロセッサの外側に位置する少なくとも2つの熱センサと、前記プロセッサ内に位置する少なくとも1つの熱センサとを備える、C25に記載の装置。
[C28]
命令を記憶したコンピュータ可読媒体であって、前記命令は、プロセッサによって実行されると、前記プロセッサに、
複数の熱センサから複数の温度読取り値を受け取ることと、ここにおいて、前記熱センサは、チップ上の異なるロケーションにある、
前記受け取られた温度読取り値に二次温度モデルを適合させることと、
前記適合させた二次温度モデルを使用して前記チップ上のホットスポット温度を推定することと
を行わせる、コンピュータ可読媒体。

Claims (28)

  1. 温度管理システムであって、
    チップ上の異なるロケーションにある複数の熱センサと、
    前記熱センサから複数の温度読取り値を受け取ることと、前記受け取られた温度読取り値に二次温度モデルを適合させることと、前記適合させた二次温度モデルを使用して前記チップ上のホットスポット温度を推定することと、を行うように構成された温度マネジャと
    を備える、温度管理システム。
  2. 前記温度マネジャは、前記適合させた二次温度モデルを使用してピーク温度を決定することによって前記ホットスポット温度を推定するように構成される、請求項1に記載のシステム。
  3. 前記温度マネジャは、前記ピーク温度に対応するロケーションを決定するために、前記適合させた二次温度モデルの導関数をゼロに設定することと、前記ピーク温度を決定するために、前記適合させた二次温度モデルに前記決定されたロケーションを入力することとによって、前記ピーク温度を決定するように構成される、請求項2に記載のシステム。
  4. 前記温度マネジャは、前記適合させた二次温度モデルを使用して前記チップ上の複数の異なるロケーションにおける複数の温度を決定することと、前記決定された温度のうちの最高温度を選択することとによって、前記ピーク温度を決定するように構成される、請求項2に記載のシステム。
  5. 前記温度マネジャは、前記推定されたホットスポット温度を温度しきい値と比較することと、前記推定されたホットスポット温度が前記温度しきい値を超える場合に温度緩和を開始することとを行うように構成される、請求項1に記載のシステム。
  6. 前記温度マネジャは、クロック信号の周波数を低減するようにクロックソースに指示すること、供給電圧を低減するように電力ソースに指示すること、または両方によって、温度緩和を開始するように構成される、請求項5に記載のシステム。
  7. 前記複数の熱センサは、線に沿ってほぼ整列された少なくとも3つの熱センサを備え、前記線は前記チップ上のプロセッサを横切り、前記推定されたホットスポット温度は前記プロセッサ内のロケーションに対応する、請求項1に記載のシステム。
  8. 前記少なくとも3つの熱センサはすべて、前記プロセッサの外側に位置する、請求項7に記載のシステム。
  9. 前記少なくとも3つの熱センサは、前記プロセッサの外側に位置する少なくとも2つの熱センサと、前記プロセッサ内に位置する少なくとも1つの熱センサとを備える、請求項7に記載のシステム。
  10. 温度を管理するための方法であって、
    複数の熱センサから複数の温度読取り値を受け取ることと、前記熱センサは、チップ上の異なるロケーションにある、
    前記受け取られた温度読取り値に二次温度モデルを適合させることと、
    前記適合させた二次温度モデルを使用して前記チップ上のホットスポット温度を推定することと
    を備える、方法。
  11. 前記ホットスポット温度を推定することは、前記適合させた二次温度モデルを使用してピーク温度を決定することを備える、請求項10に記載の方法。
  12. 前記ピーク温度を決定することは、前記ピーク温度に対応するロケーションを決定するために、前記適合させた二次温度モデルの導関数をゼロに設定することと、前記ピーク温度を決定するために、前記適合させた二次温度モデルに前記決定されたロケーションを入力することとを備える、請求項11に記載の方法。
  13. 前記ピーク温度を決定することは、前記適合させた二次温度モデルを使用して前記チップ上の複数の異なるロケーションにおける複数の温度を決定することと、前記決定された温度のうちの最高温度を選択することとを備える、請求項11に記載の方法。
  14. 前記推定されたホットスポット温度を温度しきい値と比較することと、前記推定されたホットスポット温度が前記温度しきい値を超える場合に温度緩和を開始することとをさらに備える、請求項10に記載の方法。
  15. 温度緩和を開始することは、クロック信号の周波数を低減するようにクロックソースに指示すること、供給電圧を低減するように電力ソースに指示すること、または両方を備える、請求項14に記載の方法。
  16. 前記複数の熱センサは、線に沿ってほぼ整列された少なくとも3つの熱センサを備え、前記線は前記チップ上のプロセッサを横切り、前記推定されたホットスポット温度は前記プロセッサ内のロケーションに対応する、請求項10に記載の方法。
  17. 前記少なくとも3つの熱センサはすべて、前記プロセッサの外側に位置する、請求項16に記載の方法。
  18. 前記少なくとも3つの熱センサは、前記プロセッサの外側に位置する少なくとも2つの熱センサと、前記プロセッサ内に位置する少なくとも1つの熱センサとを備える、請求項16に記載の方法。
  19. 温度を管理するための装置であって、
    複数の熱センサから複数の温度読取り値を受け取るための手段と、前記熱センサは、チップ上の異なるロケーションにある、
    前記受け取られた温度読取り値に二次温度モデルを適合させるための手段と、
    前記適合させた二次温度モデルを使用して前記チップ上のホットスポット温度を推定するための手段と
    を備える、装置。
  20. 前記ホットスポット温度を推定するための前記手段は、前記適合させた二次温度モデルを使用してピーク温度を決定するための手段を備える、請求項19に記載の装置。
  21. 前記ピーク温度を決定するための前記手段は、前記ピーク温度に対応するロケーションを決定するために、前記適合させた二次温度モデルの導関数をゼロに設定するための手段と、前記ピーク温度を決定するために、前記適合させた二次温度モデルに前記決定されたロケーションを入力するための手段とを備える、請求項20に記載の装置。
  22. 前記ピーク温度を決定するための前記手段は、前記適合させた二次温度モデルを使用して前記チップ上の複数の異なるロケーションにおける複数の温度を決定するための手段と、前記決定された温度のうちの最高温度を選択するための手段とを備える、請求項20に記載の装置。
  23. 前記推定されたホットスポット温度を温度しきい値と比較するための手段と、前記推定されたホットスポット温度が前記温度しきい値を超える場合に温度緩和を開始するための手段とをさらに備える、請求項19に記載の装置。
  24. 温度緩和を開始するための前記手段は、クロック信号の周波数を低減するようにクロックソースに指示するための手段、供給電圧を低減するように電力ソースに指示するための手段、または両方を備える、請求項23に記載の装置。
  25. 前記複数の熱センサは、線に沿ってほぼ整列された少なくとも3つの熱センサを備え、前記線は前記チップ上のプロセッサを横切り、前記推定されたホットスポット温度は前記プロセッサ内のロケーションに対応する、請求項19に記載の装置。
  26. 前記少なくとも3つの熱センサはすべて、前記プロセッサの外側に位置する、請求項25に記載の装置。
  27. 前記少なくとも3つの熱センサは、前記プロセッサの外側に位置する少なくとも2つの熱センサと、前記プロセッサ内に位置する少なくとも1つの熱センサとを備える、請求項25に記載の装置。
  28. 命令を記憶したコンピュータ可読媒体であって、前記命令は、プロセッサによって実行されると、前記プロセッサに、
    複数の熱センサから複数の温度読取り値を受け取ることと、ここにおいて、前記熱センサは、チップ上の異なるロケーションにある、
    前記受け取られた温度読取り値に二次温度モデルを適合させることと、
    前記適合させた二次温度モデルを使用して前記チップ上のホットスポット温度を推定することと
    を行わせる、コンピュータ可読媒体。
JP2018512942A 2015-09-11 2016-08-29 ホットスポット補間のための熱センサ配置 Pending JP2018532185A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/852,350 2015-09-11
US14/852,350 US10401235B2 (en) 2015-09-11 2015-09-11 Thermal sensor placement for hotspot interpolation
PCT/US2016/049300 WO2017044341A1 (en) 2015-09-11 2016-08-29 Thermal sensor placement for hotspot interpolation

Publications (1)

Publication Number Publication Date
JP2018532185A true JP2018532185A (ja) 2018-11-01

Family

ID=56896796

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018512942A Pending JP2018532185A (ja) 2015-09-11 2016-08-29 ホットスポット補間のための熱センサ配置

Country Status (7)

Country Link
US (1) US10401235B2 (ja)
EP (1) EP3347819B1 (ja)
JP (1) JP2018532185A (ja)
KR (1) KR20180053343A (ja)
CN (1) CN108027761B (ja)
TW (1) TW201715324A (ja)
WO (1) WO2017044341A1 (ja)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170248995A1 (en) * 2016-02-29 2017-08-31 GM Global Technology Operations LLC Methods and systems for configurable temperature control of controller processors
US10705581B2 (en) * 2017-03-24 2020-07-07 Motorola Mobility Llc Controlling device performance based on temperature differential
US10386899B2 (en) 2017-08-08 2019-08-20 GM Global Technology Operations LLC Methods and systems for configurable temperature control of controller processors
JP2021083482A (ja) * 2019-11-25 2021-06-03 株式会社村田製作所 口腔内測定装置及び口腔内測定システム
US11616841B2 (en) * 2020-02-07 2023-03-28 Taiwan Semiconductor Manufacturing Company Limited Remote mapping of circuit speed variation due to process, voltage and temperature using a network of digital sensors
US11520731B1 (en) * 2020-11-06 2022-12-06 Amazon Technologies, Inc. Arbitrating throttling recommendations for a systolic array
US11442890B1 (en) 2020-11-06 2022-09-13 Amazon Technologies, Inc. On-circuit data activity monitoring for a systolic array
US11822399B2 (en) 2021-07-28 2023-11-21 Apple Inc. Temperature control loop for integrated circuit
US20230213996A1 (en) * 2022-01-06 2023-07-06 Nvidia Corporation Techniques for controlling computing performance for power-constrained multi-processor computing systems

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0795004B2 (ja) 1986-12-24 1995-10-11 テルモ株式会社 生体の温度測定装置
GB2337121B (en) 1998-05-09 2002-07-31 Motorola Ltd Temperature estimation arrangement and method
JP3781758B2 (ja) 2004-06-04 2006-05-31 株式会社ソニー・コンピュータエンタテインメント プロセッサ、プロセッサシステム、温度推定装置、情報処理装置および温度推定方法
US7347621B2 (en) 2004-07-16 2008-03-25 International Business Machines Corporation Method and system for real-time estimation and prediction of the thermal state of a microprocessor unit
US7590473B2 (en) 2006-02-16 2009-09-15 Intel Corporation Thermal management using an on-die thermal sensor
JP4888040B2 (ja) * 2006-10-18 2012-02-29 株式会社島津製作所 熱式質量流量計
US20080234953A1 (en) * 2007-03-22 2008-09-25 Ignowski James S Power estimation for a semiconductor device
US8265817B2 (en) * 2008-07-10 2012-09-11 Lockheed Martin Corporation Inertial measurement with an imaging sensor and a digitized map
US20100073068A1 (en) 2008-09-22 2010-03-25 Hanwoo Cho Functional block level thermal control
US8452463B2 (en) 2010-06-04 2013-05-28 Apple Inc. Adjusting the thermal behavior of a computing system using indirect information about ambient temperature
JP5631824B2 (ja) * 2011-08-31 2014-11-26 本田技研工業株式会社 発電機の出力制御装置
US9295183B2 (en) 2011-09-16 2016-03-22 Tata Consultancy Services Limited Method and system for real time monitoring, prediction, analysis and display of temperatures for effective thermal management in a data center
US20130151191A1 (en) 2011-12-13 2013-06-13 Ecole Polytechnique Federale De Lausanne (Epfl) Method to determine the distribution of temperature sensors, method to estimate the spatial and temporal thermal distribution and apparatus
US8972759B2 (en) * 2012-06-29 2015-03-03 Qualcomm Incorporated Adaptive thermal management in a portable computing device including monitoring a temperature signal and holding a performance level during a penalty period

Also Published As

Publication number Publication date
US20170074729A1 (en) 2017-03-16
EP3347819A1 (en) 2018-07-18
KR20180053343A (ko) 2018-05-21
US10401235B2 (en) 2019-09-03
TW201715324A (zh) 2017-05-01
CN108027761B (zh) 2021-04-16
WO2017044341A1 (en) 2017-03-16
CN108027761A (zh) 2018-05-11
EP3347819B1 (en) 2020-01-08

Similar Documents

Publication Publication Date Title
JP2018532185A (ja) ホットスポット補間のための熱センサ配置
US10275001B2 (en) Thermal throttling of electronic devices
US9590639B2 (en) Semiconductor device and control method
KR101814264B1 (ko) 최적 전력 레벨들을 예측하기 위해 열 저항 값들을 사용하는 휴대용 컴퓨팅 디바이스에서의 열 관리를 위한 시스템 및 방법
US8087823B2 (en) Method for monitoring thermal control
KR101443800B1 (ko) 반도체 장치의 예측적인 동적 열 관리
JP4575333B2 (ja) 熱感知システム
US10496141B2 (en) System and method for intelligent thermal management in a system on a chip having a heterogeneous cluster architecture
JP2009042211A (ja) 半導体デバイスのための電力推定
US8994447B2 (en) Voltage regulation method and corresponding HPM, chip, and chip system
US9971368B2 (en) Accurate hotspot detection through temperature sensors
JP2013533548A (ja) 安定した仮想周波数のための複数の動作点の管理
US20140132334A1 (en) Semiconductor integrated circuit and an operating method thereof, a timing verifying method for a semiconductor integrated circuit and a test method of a semiconductor integrated circuit
KR20140092328A (ko) 누설 전류 측정으로부터 열 관리 폴리시를 결정하는 시스템 및 방법
JP2009522688A (ja) 独立周波数及び/又は電圧で集積回路の構成要素を動作させるシステムならびに方法
TWI712776B (zh) 用於溫度感測之裝置及系統與用於量測半導體之操作溫度之方法
US10474209B2 (en) Integrated circuit for implementing a cooling algorithm and a mobile device including the same
US10585466B1 (en) Power saving fan control with anti fan-oscillation feature
CN109213297B (zh) 半导体装置以及半导体装置的控制方法
US11216048B1 (en) System and method for controlling computer cooling using ideal cooling system settings, actual cooling system settings, and computer component data
TWM549371U (zh) 電腦系統
US20190079121A1 (en) Estimating a current in an smps
US10551900B2 (en) Voltage regulator efficiency-aware system energy management
TW202314499A (zh) 多核心處理器之功率預算

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180524

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180523