(57)【要約】  方法が、コンピューティングデバイス内の複数の温度センサから温度情報を生成することと、温度情報の観測された変化速度に基づいて、電圧低減ステップを生成するために、温度情報を処理することとを含む。
2019527412.tif 000002
【特許請求の範囲】
【請求項１】
コンピューティングデバイス内の複数の温度センサから温度情報を生成することと、
前記温度情報の観測された変化速度に基づいて、電圧低減ステップを生成するために、前記温度情報を処理することと
を備える方法。
【請求項２】
前記コンピューティングデバイスの通常動作中、および前記コンピューティングデバイスの通常動作中に受け取られた更なる温度情報に応答して、前記コンピューティングデバイスの性能を低下させること
をさらに備える、請求項１に記載の方法。
【請求項３】
前記コンピューティングデバイスの前記性能を低下させることは、前記コンピューティングデバイスの動作の電圧を低減させることに加えて、前記コンピューティングデバイスの動作の周波数を低減させることを備える、請求項２に記載の方法。
【請求項４】
前記コンピューティングデバイスの前記性能を低下させることは、前記温度緩和アルゴリズムにおける前記電圧低減ステップに従って、前記コンピューティングデバイスの動作電圧を低減させることを備える、請求項２に記載の方法。
【請求項５】
前記電圧低減ステップは、それぞれの周波数低減ステップに関連付けられている、請求項１に記載の方法。
【請求項６】
前記温度情報の前記観測された変化速度は、
前記コンピューティングデバイスのジャンクション温度に関連付けられた温度情報の変化速度
を備える、請求項１に記載の方法。
【請求項７】
前記コンピューティングデバイスの前記ジャンクション温度は、前記デバイスの複数の温度センサのうちの第１の温度センサの読取り値を備え、ここにおいて、前記読取り値は、前記複数の温度センサのうちの最も高い読取り値である、請求項６に記載の方法。
【請求項８】
データ構造中に電圧差分として複数の電圧低減ステップ値を記憶すること、各電圧低減ステップ値は、周波数低減ステップ値および温度情報変化速度値に関連付けられている、
をさらに備える、請求項１に記載の方法。
【請求項９】
前記データ構造は、ルックアップ表を備える、請求項８に記載の方法。
【請求項１０】
前記温度情報を処理することは、
前記温度情報の前記観測された変化速度を、前記データ構造中の特定の温度情報変化速度値にマッチングするために、前記データ構造を解析することと、
前記データ構造中の前記特定の温度情報変化速度値に対応する第１の電圧低減ステップ値を選択することと、
前記第１の電圧低減ステップ値分だけ前記コンピューティングデバイスの動作電圧を低減させることと
を備える、請求項８に記載の方法。
【請求項１１】
前記コンピューティングデバイスの通常動作中に前記第１の電圧低減ステップ値を使用すること
をさらに備える、請求項１０に記載の方法。
【請求項１２】
コンピュータ可読命令を実行するように構成されたコンピュータプロセッサと、前記コンピュータプロセッサは、コンピューティングデバイス中に取り付けられており、
前記コンピューティングデバイス内に配置された温度感知デバイスと、前記温度感知デバイスは、前記コンピュータプロセッサと通信するように構成され、前記コンピュータプロセッサは、以下の動作を実行するように構成される：
前記温度感知デバイスから温度情報を受け取ること、
前記温度情報からジャンクション温度ランプレート値を計算すること、および
前記ジャンクション温度ランプレート値に基づいて、電圧低減ステップを設定すること、
を備えるシステム。
【請求項１３】
前記温度感知デバイスは、前記コンピューティングデバイスのプリント回路基板上に配置され、前記プリント回路基板は、前記コンピューティングデバイスのハウジング内に封入される、請求項１２に記載のシステム。
【請求項１４】
前記温度感知デバイスは、前記コンピューティングデバイスのハウジング内に封入された複数の温度感知デバイスのうちの１つである、請求項１２に記載のシステム。
【請求項１５】
前記デバイスのジャンクション温度が、前記複数の温度感知デバイスのうちの前記温度センサの読取り値を備え、前記読取り値は、前記複数の温度感知デバイスのうちの最も高い読取り値である、請求項１４に記載のシステム。
【請求項１６】
前記ジャンクション温度ランプレート値は、前記コンピューティングデバイスの較正動作中のジャンクション温度の変化速度を備える、請求項１２に記載のシステム。
【請求項１７】
前記コンピュータプロセッサは、通常動作中、前記電圧低減ステップに従って、前記コンピュータプロセッサの動作電圧を低減させるようにさらに構成される、請求項１２に記載のシステム。
【請求項１８】
コンピューティングデバイスの外部ハウジング内の複数の位置において温度を感知するための手段と、
前記温度を感知する手段からの温度データからジャンクション温度ランプレートを計算するための手段と、
前記ジャンクション温度ランプレートに基づいて、電圧低減ステップサイズ値を選択するために、ルックアップ表を解析するための手段と、
前記電圧低減ステップサイズ値分だけ動作電圧を低減させるための手段と
を備えるコンピューティングデバイス。
【請求項１９】
前記ジャンクション温度ランプレートを計算するための前記手段は、
複数の温度センサを備え、ここにおいて、前記複数の温度センサの第１のサブセットが、前記コンピューティングデバイスの半導体チップ内に配置され、ここにおいて、前記複数の温度センサの第２のサブセットが、前記コンピューティングデバイスのプリント回路基板上に配置される、
請求項１８に記載のコンピューティングデバイス。
【請求項２０】
前記コンピューティングデバイスの不揮発性メモリ中に前記電圧低減ステップサイズ値を記憶するための手段
をさらに備える、請求項１８に記載のコンピューティングデバイス。
【請求項２１】
前記不揮発性メモリから、前記電圧低減ステップサイズ値を取り出すための手段
をさらに備える、請求項２０に記載のコンピューティングデバイス。
【請求項２２】
前記ジャンクション温度ランプレートを計算するための前記手段は、
前記温度を感知する手段の中で最も高い温度読取り値を決定するために、前記温度を感知する手段をポーリングするための手段と、
前記温度を感知する手段の中で前記最も高い温度読取り値から前記ジャンクション温度ランプレートを生成するための手段と
を備える、請求項１８に記載のコンピューティングデバイス。
【請求項２３】
第１の時間期間の間、コンピューティングデバイスのハウジングの内部にある複数の温度センサから温度データを収集することと、
前記温度データから前記コンピューティングデバイスの温度ランプレートを測定することと、
データ構造から値を選択するためのキーとして、前記温度ランプレートを使用することと、ここにおいて、前記値は、電圧ステップサイズを含み、
前記電圧ステップサイズ分だけ前記コンピューティングデバイスの動作電圧を低減させることと
を備える方法。
【請求項２４】
温度データを収集することは、
温度データが収集されるにつれて、前記複数の温度センサの最高の温度読取り値として、ジャンクション温度を計算すること
をさらに備え、
ここにおいて、前記温度ランプレートを測定することは、前記ジャンクション温度のランプレートを測定することを備える、
請求項２３に記載の方法。
【請求項２５】
前記温度ランプレートを測定することは、
前記コンピューティングデバイスのスキン温度を計算することと、
前記コンピューティングデバイスの前記スキン温度のランプレートを計算することと
を備える、請求項２３に記載の方法。
【請求項２６】
前記電圧ステップサイズは、電圧差分を備える、請求項２３に記載の方法。
【請求項２７】
前記電圧ステップサイズを適用することは、
前記測定された温度ランプレートを、前記データ構造中のランプレート値にマッチングするために、前記データ構造を解析することと、
前記データ構造中の前記ランプレート値に対応する前記電圧ステップサイズを選択することと、
前記コンピューティングデバイスにおけるデータ記憶デバイスにおいて、前記電圧ステップサイズを記憶することと
を備える、請求項２３に記載の方法。
【発明の詳細な説明】
【関連出願の相互参照】
【０００１】
[0001]本願は、２０１６年７月８日に出願された米国非仮特許出願第１５／２０５，６７８号の優先権および利益を主張し、それは、全ての適用可能な目的のために、および以下にその全体が完全に記載されているかのように、その全体が参照により本明細書に組み込まれている。
【技術分野】
【０００２】
[0002]本願は、一般に、コンピューティングデバイスの熱管理に関し、より具体的には、コンピューティングデバイスにおける温度緩和アルゴリズムを較正することに関する。
【背景技術】
【０００３】
[0003]従来のコンピューティングデバイス（例えば、スマートフォン、タブレットコンピュータ、等）は、システムオンチップ（ＳＯＣ）を含み得、それは、プロセッサおよび他の演算回路を有する。具体的には、スマートフォン中のＳＯＣは、パッケージ内にプロセッサチップを含み得、ここで、パッケージは、電話の内部でプリント回路基板（ＰＣＢ）上に取り付けられる。電話は、外部ハウジングと、液晶ディスプレイ（ＬＣＤ）のようなディスプレイとを含む。人間のユーザは、電話を使用するとき、外部ハウジングとディスプレイに物理的に触れる。
【０００４】
[0004]ＳＯＣが動作するにつれて、それは発熱する。一例では、スマートフォン内のＳＯＣは、８０℃〜１００℃の温度に達し得る。さらに、従来のスマートフォンは、熱を放散（dissipate）するためのファンを含まない。使用中、人間のユーザがスマートフォンでビデオを見ているときなどに、ＳＯＣは発熱し、熱は電話の内部の部分を通じて電話の外表面へと広がる。
【０００５】
[0005]電話の外表面は、時に「スキン」(skin)と呼ばれる。外表面は、物理的に電話の外側にある外部ハウジングの部分のみならず、ＬＣＤディスプレイのような、その他任意の外部に露出した部分も含む。安全性および人間工学の理由により、電話のスキンが約４０℃〜４５℃よりも高い温度に達するべきでないことが、一般に受け入れられている。上述されたように、ＳＯＣの温度は電話のスキンにおいて直接的に感じられないが、スマートフォン内のＳＯＣは、８０℃〜１００℃の温度に達し得る。代わりに、電話内の放熱（heat dissipation）は、しばしば、電話のスキン温度がＳＯＣ温度よりも低い温度にあることを意味する。さらに、ＳＯＣ温度の変化が比較的迅速であり得る（例えば、秒単位）一方で、デバイスのスキン温度の変化は、比較的遅くなり得る（例えば、数十秒または分単位）。
【０００６】
[0006]従来のスマートフォンは、ＳＯＣ上の温度センサがしきい値レベルに達したとき、ＳＯＣの動作周波数（frequency of operation）を低減させることによって、ＳＯＣ温度とスキン温度の両方を制御するためのアルゴリズムを含む。加えて、スマートフォンモデルの、および個々のスマートフォン自体の物理的特性が、スマートフォンの熱的性能に影響を及ぼす。例えば、薄いフォームファクタを有するスマートフォンは、一般に、厚いフォームファクタを有するスマートフォンが経験するであろうよりも迅速に、高いスキン温度を経験することが予期される。追加の例では、そのプロセッサとそのスキンとの間にエアギャップまたはヒートスプレッダを有するスマートフォンモデルは、一般に、エアギャップまたはヒートスプレッダを有していないスマートフォンが経験するであろうよりもゆっくりと、高いスキン温度を経験することが予期されるであろう。また、製造上の不備および欠陥が、スマートフォンのプロセッサとそのスキンとの間の熱抵抗および熱経路に影響を及ぼすことによって、所与のスマートフォンの熱的性能に影響を及ぼし得る。
【発明の概要】
【０００７】
[0007]一実施形態によると、方法が、コンピューティングデバイス内の複数の温度センサから温度情報を生成することと、温度情報の観測された変化速度（rate of change）に基づいて、電圧低減ステップを生成するために、温度情報を処理することとを含む。
【０００８】
[0008]別の実施形態によると、システムが、コンピュータ可読命令を実行するように構成されたコンピュータプロセッサと、コンピュータプロセッサは、コンピューティングデバイス中に取り付けられており、コンピューティングデバイス内に配置された温度感知デバイスと、温度感知デバイスは、コンピュータプロセッサと通信状態にある、を含み、コンピュータプロセッサは、以下の動作を実行するように構成される：温度感知デバイスから温度情報を受け取ること、温度情報からジャンクション温度ランプレート値（junction temperature ramp rate value）を計算すること、およびジャンクション温度のランプレート値に基づいて、電圧低減ステップを設定すること。
【０００９】
[0009]別の実施形態によると、コンピューティングデバイスが、コンピューティングデバイスの外部ハウジング内の複数の位置において温度を感知するための手段と、温度を感知する手段からの温度データからジャンクション温度ランプレートを計算するための手段と、ジャンクション温度ランプレートに基づいて、電圧低減ステップサイズ値を選択するために、ルックアップ表を解析する（parsing）ための手段と、電圧低減ステップサイズ値分だけ（by）動作電圧を低減させるための手段とを含む。
【００１０】
[0010]別の実施形態によると、方法が、第１の時間期間の間、コンピューティングデバイスのハウジングの内部にある複数の温度センサから温度データを収集することと、温度データからコンピューティングデバイスの温度ランプレートを測定することと、データ構造から値を選択するためのキーとして、温度ランプレートを使用することと、ここにおいて、値は、電圧ステップサイズを含み、電圧ステップサイズ分だけコンピューティングデバイスの動作電圧を低減させることとを含む。
【図面の簡単な説明】
【００１１】
【図１】[0011]図１は、様々な実施形態による方法を実行し得る、例となるコンピューティングデバイスの例示である。
【図２】[0012]図２は、一実施形態による、図１のコンピューティングデバイスの例となる内部アーキテクチャの例示である。
【図３】[0013]図３は、図１のコンピューティングデバイスの使用されるべき温度緩和アルゴリズムのための例となる較正方法の例示である。
【図４】[0014]図４は、一実施形態による、ジャンクション温度ランプレートおよびスキン温度ランプレートのような、温度変化速度に従って温度緩和アルゴリズムを較正するために使用され得る、例となるルックアップ表の例示である。
【図５】[0015]図５は、一実施形態による、コンピューティングデバイスの例となる温度ランプレートの例示である。
【図６】[0016]図６は、一実施形態による、温度緩和アルゴリズムによって適用され得る電圧低減ステップの例の例示である。
【図７】[0017]図７は、熱緩和の例となる方法のフロー図の例示である。
【詳細な説明】
【００１２】
[0018]ここで提供される様々な実施形態は、コンピューティングデバイスの温度緩和を較正するためのシステムおよび方法を含む。例えば、ここで説明される様々な実施形態は、製造されたコンピューティングデバイスの物理的特性を捕捉（capture）し、コンピューティングデバイスの温度緩和プロセスを較正するために、それらの物理的特性を使用する。
【００１３】
[0019]一実施形態では、コンピュータプロセッサが、いくつかの集積回路チップ（例えば、いくつかの処理コア、電力管理集積回路（ＰＭＩＣ）、および同様のものを有するＳＯＣ）を含む。チップは、スマートフォンのような、コンピューティングデバイス内に配置される。コンピューティングデバイスはまた、特に、バッテリ、チップをホストしている（hosting）プリント回路基板、タッチスクリーンディスプレイ、および外側ハウジングを含む。電源、例えば、ＰＭＩＣは、バッテリからの電圧および電流を、他のチップによって使用され得る電圧および電流に変換する。チップが動作するにつれて、それらは、熱を生じる。
【００１４】
[0020]チップからの熱は、コンピューティングデバイスを形成している物理的材料の熱伝導特性に従って、コンピューティングデバイス全体にわたって広がる。しかしながら、一般に、コンピューティングデバイスのスキンは、少なくとも通常の動作状態下では、チップほどは熱くならないことが予期される。システムは、チップ内およびプリント回路基板上の温度センサをモニタし、チップ温度および／またはスキン温度を緩和するために、チップのうちの１つまたは複数の動作周波数および／または動作電圧を低減させる１つまたは複数のプロセスを含む。
【００１５】
[0021]コンピューティングデバイスの物理的特性は、どのように温度緩和アルゴリズムが効果的に使用され得るかに影響を及ぼす。例えば、いくつかのコンピューティングデバイスは、スキン温度が比較的迅速に上昇することを可能にする物理的熱伝導特性を有し得る。別の例では、コンピューティングデバイスは、チップにおいてか、またはプリント回路基板上で検出される温度が比較的迅速に上昇することを可能にする物理的熱伝導特性を有し得る。温度の変化速度は、比較的高いランプレートを有する製造されたコンピューティングデバイスが、チップまたは基板上で検出された、またはスキンについて計算された、温度の高い変化速度（high rate of change of a temperature）を有するように、これらの例では、ランプレートと呼ばれる。
【００１６】
[0022]１つの例となる実施形態では、コンピューティングデバイスが製造された後、チップのうちの１つまたは複数が、チップおよび基板の全体にわたって温度読取り値をモニタしながら、コンピューティングベンチマークテストを実行する。コンピューティングデバイスそれ自体が、ベンチマークテスト中にその性能をトラッキング（tracks）し、実行される命令の数、デフォルトの熱緩和設定下での緩和までの時間（a time to mitigation）、温度ランプレート、および同様のものを含む。温度ランプレートおよび緩和までの時間は、コンピューティングデバイスの熱特性のインジケーションを提供する。コンピューティングデバイスは、スマートフォンの温度緩和アルゴリズムのためのパラメータ値を生成するために、温度情報と、コンピューティングベンチマークテストの他の結果とを処理する。例えば、プロセッサは、ベンチマークテストからのデータに基づいて、ジャンクション温度セットポイント、スキン温度セットポイント、周波数および温度調整インクリメント、温度センサポーリングレート、および同様のものを設定し得る。
【００１７】
[0023]このような較正は、年に１回などの定期的に、またはその他のときに、製造後、ただし出荷前といった、任意の適切なときに実行され得る。様々な実施形態が、従来のシステムおよび技法に対して利点を提供し得る。例えば、ここで説明される様々な実施形態は、その温度緩和アルゴリズムを設定するために、特定のデバイスの物理的特性（physics）を使用することによって、デバイス固有の温度緩和アルゴリズムを提供し得る。これは、同じチップを使用する全ての電話に対して、または同じ型番のもとで作られた全ての個々の電話に対して、同じ温度緩和アルゴリズムを使用し得る従来のシステムとは対照的である。したがって、ここで説明される様々な実施形態は、製造ばらつき、使用中の損傷、および同様のことから生じ得るデバイスの個々の特性に温度緩和をより良く適合させ得る。
【００１８】
[0024]様々な実施形態は、コンピューティングデバイスにおけるハードウェアおよび／またはソフトウェアによって実行され得る。例えば、いくつかの実施形態は、コンピューティングデバイスが動作するにつれて、このデバイスにおける、ＳＯＣの一部であり得る、プロセッサによって実行されるハードウェアおよび／またはソフトウェアアルゴリズムを含む。熱アルゴリズムパラメータ値を調整することは、コンピュータ可読媒体にデータを記憶することを含む。例えば、様々な実施形態は、ジャンクション温度セットポイント、スキン温度セットポイント、電圧および周波数低減ステップ値（voltage and frequency reduction step values）、および温度センサポーリングレートを記憶するために、コンピューティングデバイスにおける集積回路チップにおいて確保される不揮発性または揮発性メモリを含み得る。以下の図３は、例となるプロセスの概観を提供する。
【００１９】
[0025]図１は、様々な実施形態がインプリメントされ得る、例となるコンピューティングデバイス１００を例示する簡略化された図である。図１の例では、コンピューティングデバイス１００は、スマートフォンとして示される。しかしながら、他の実施形態が、タブレットコンピュータ、ラップトップコンピュータ、または他の適切なデバイスを含み得るので、実施形態の範囲は、スマートフォンに限定されない。実際、実施形態の範囲は、モバイルか否かにかかわらず、任意の特定のコンピューティングデバイスを含む。タブレットコンピュータおよびスマートフォンのような、バッテリ駆動型のデバイスを含む実施形態は、ここで開示される概念から利益を享受し得る。具体的には、ここで説明される概念は、コンピューティングデバイス１００の内部で生じ、そしてまた、コンピューティングデバイス１００の外部に放散される熱を管理するための技法を提供し、それによって、人間のユーザに快適さと安全性を提供し、かつバッテリ電力を節約する。
【００２０】
[0026]図１に示されるように、コンピューティングデバイス１００は、外表面またはスキン１２０を含み、これは、人間のユーザの手または他の体の部分と接触することが予期され得る。外表面１２０は、例えば、金属表面およびプラスチック表面ならびにディスプレイユニット１１０を形成している表面を含む。一例では、ディスプレイユニット１１０は、静電容量式（capacitive）液晶ディスプレイ（ＬＣＤ）タッチスクリーンを含み、これは、ガラス、プラスチック、サファイア、またはプラスチックでコーティングされたガラス、等で作られ得る。したがって、外表面１２０は、ディスプレイユニット１１０および外部ハウジングの他の部分などの、様々な外面を含む。コンピューティングデバイス１００の背面カバーは、デバイスの外表面の別の部分、具体的には、外部ハウジングの別の部分を含み、これは、ディスプレイユニット１１０の面に並行な面に配置され得る。
【００２１】
[0027]図２は、一実施形態による、コンピューティングデバイス１００のいくつかの外部および内部コンポーネントの例となる配置を例示する。この例では、コンピューティングデバイスのコンピュータプロセッサは、パッケージ２２０内のシステムオンチップ（ＳＯＣ）においてインプリメントされ、パッケージ２２０は、プリント回路基板２１０に取り付けられ、かつコンピューティングデバイス１００の物理的ハウジング内に配置されている。ヒートスプレッダおよび電磁障害（ＥＭＩ：electromagnetic interference）層２３０が、ＳＯＣパッケージ２２０の上部に配置され、背面カバー２４０は、層２３０の上を覆って配置される。プロセッサを含むパッケージ２２０は、ディスプレイ表面の面と、背面カバー２４０の面とに並行な面に取り付けられ得る。
【００２２】
[0028]図２には示されていないが、コンピューティングデバイス１００は、バッテリ、他のプリント回路基板、他の集積回路チップおよびチップパッケージ、ならびに同様のものなどの、他のコンポーネントを含み得ることが理解される。バッテリ、プリント回路基板、および集積回路チップは、それらが、外表面１２０によって示されるような、コンピューティングデバイス１００の物理的ハウジング内に封入されるように、コンピューティングデバイス１００内に配置される。
【００２３】
[0029]コンピュータプロセッサおよび他のチップが動作するにつれて、それらは熱を生じ、それはコンピューティングデバイス１００の物理的構造の全体にわたって放散する。コンピューティングデバイス１００の特定の熱特性に依存して、ＳＯＣパッケージ２２０内のプロセッサの動作からの熱は、コンピューティングデバイス１００の外表面１２０上で不快なまたはほぼ不快な温度に達し得、熱暴走イベント（runaway heat events）が、パッケージ２２０またはパッケージ２２０内の半導体デバイスの保全性を脅かし得る。したがって、コンピューティングデバイス１００は、全体にわたって位置する温度センサを含む。例となる温度センサが、ＴＪ１、ＴＪ２、およびＴＪ３とラベル付けされて示されている。温度センサＴＪ１およびＴＪ２は、パッケージ２２０のＳＯＣ内でインプリメントされ、一方、ＴＪ３とラベル付けされた温度センサは、プリント回路基板２１０の表面上でインプリメントされる。
【００２４】
[0030]様々な実施形態は、適宜、任意の数の温度センサを含み得る。例えば、ＳＯＣは、中央処理ユニット（ＣＰＵ）、グラフィックス処理ユニット（ＧＰＵ）、カメラコア、モデムコア、および同様のものなどの、複数のコアを含み得る。このよう実施形態では、各コアは、少なくとも１つ（および場合によっては、より多く）の温度センサを含み得る。このような配置は、異なるコアが、所与のアプリケーションに依存して、異なる時間において、および異なる強度において実行されるので、有利であり得る。
【００２５】
[0031]ＴＪは、ジャンクション温度を表し、任意の所与の時間において、ジャンクション温度は、センサのうちの任意のものによる最も高い温度読取り値を指す。例えば、温度センサＴＪ２が３つの温度センサのうちで最も高い温度を読み取った場合には、その温度読取りの値が、ジャンクション温度である。コンピューティングデバイス１００が動作するにつれて、ジャンクション温度は変化し得、ジャンクション温度を読み取る特定のセンサが変わり得る。さらに、コンピューティングデバイス１００が背面カバー２４０またはディスプレイ１１０上に温度センサを含まない一方で、ＳＯＣパッケージ２２０内のプロセッサは、センサＴＪ１〜ＴＪ３からの温度読取り値に基づいて、スキン温度（Ｔｓｋｉｎ）を計算するためのアルゴリズムを含み得る。
【００２６】
[0032]ＳＯＣパッケージ２２０内のコンピュータプロセッサは、ジャンクション温度を含む、様々なセンサにおける温度をモニタするための１つまたは複数のアルゴリズムによって、コンピューティングデバイス１００内で生じた熱を制御し、適切なアクションを取るための機能を提供する。例えば、１つまたは複数のアルゴリズムは、温度センサにおける温度をトラッキングし、ジャンクション温度が１つまたは複数のセットポイントを超えるとき、パッケージ２２０におけるプロセッサの動作の電圧および／または周波数を低減させ得る。同様に、同じまたは同様のアルゴリズムが、Ｔｓｋｉｎの値をトラッキングし得、Ｔｓｋｉｎが１つまたは複数のセットポイントを超えるとき、パッケージ２２０におけるプロセッサの動作の電圧および／または周波数を低減させ得る。
【００２７】
[0033]図３は、一実施形態に従って適合される、温度緩和アルゴリズムを較正するためのプロセス３００の例示である。プロセスは、アクション３１０において、「テストＡ、Ｂ、Ｃを実行する」から始まる。いくつかの実施形態は、単一のコンピューティングベンチマークテストまたは１つより多くのベンチマークテストを実行することを含み得、適切とされる任意の数のベンチマークテストが、様々な実施形態において実行され得る。例となるテストが、Ｄｈｒｙｓｔｏｎｅ１００万命令毎秒（ＤＭＩＰＳ：Dhrystone Million Instructions Per Second）を含み、これはスマートフォンまたは他の処理デバイスに対して様々なテストパターンを実行し、結果を記録することを含む。
【００２８】
[0034]１つまたは複数のベンチマークテストがコンピューティングデバイス上で実行されるにつれて、コンピューティングデバイスは、温度緩和アルゴリズムにおけるデフォルト設定に従って、動作周波数および／または動作電圧を低下させ得る。いくつかの実施形態において使用され得る、例となる温度緩和アルゴリズムが、動的クロックおよび電圧スケーリング（ＤＣＶＳ：Dynamic Clock and Voltage Scaling）を含み、ここにおいて、温度緩和アルゴリズムは、ポーリングレートに従って温度センサをチェックし、その後、ＴＪセットポイントおよびＴｓｋｉｎセットポイントに従って、動作周波数および動作電圧を低下させる。ＴＪおよび／またはＴｓｋｉｎが低減するにつれて、アルゴリズムは、動作周波数および／または動作電圧を増大させ得る。さらに、動作周波数および／または動作電圧は、以下でより詳細に説明されるように、セットステップまたはインクリメントに従って上昇または低下される。様々な実施形態は、任意の温度緩和アルゴリズムを使用することを含み得、ここでは例としてＤＣＶＳが述べられている。
【００２９】
[0035]コンピューティングデバイスがベンチマークテストを実行するにつれて、温度緩和アルゴリズムは、動作周波数を低下させることによって、１秒当たりより少ない数の命令が実行されることを引き起こし得る。したがって、より望ましくない熱伝導特性を有するコンピューティングデバイスは、より望ましい熱伝導特性を有しかつ同じ温度緩和アルゴリズムを実行している別のコンピューティングデバイスよりも、より多くの熱緩和アクティビティを経験し、それによって、１秒当たりより少ない数の命令を実行し得る。コンピューティングデバイスがベンチマークテストを実行するにつれて、それは、実行された命令の数、緩和が起こる前までの時間（a time before mitigation happens）、ＴＪランプレート、Ｔｓｋｉｎランプレート、およびその他任意の有用な値を記録する。
【００３０】
[0036]テストの実行（アクション３１０）中またはテストの実行（アクション３１０）に後続して、アクション３２０〜３５０のうちの１つまたは複数が実行され得る。アクション３２０、「性能を測定する」は、１００万命令毎秒のような、コンピューティング性能を示すテスト結果を記録することおよび／または処理することを含む。アクション３３０、「緩和までの時間を測定する」は、緩和アルゴリズムが、動作周波数を低減させること、電圧を低減させること、または同様のことによって処理を遅くする前まで、コンピューティングデバイスが実行することを許可された時間の量を示すテスト結果を記録することおよび／または処理することを含む。加えて、方法３００は、アクション３４０、「ＴＪランプレートを測定する」をさらに含み、これは、デバイスの内部温度センサにおける温度の変化速度を示すテスト結果を記録することおよび／または処理することを含む。より大きいランプレートは、典型的に、より低いランプレートを有するコンピューティングデバイスでよりも、性能が時間においてより早く緩和されること示す。アクション３５０、「Ｔｓｋｉｎランプレートを測定する」は、温度センサアルゴリズムに基づくスキン温度推定アルゴリズムを使用し、スキン温度のランプレートを計算することを含む。アクション３２０〜３５０において測定された値は、温度緩和アルゴリズムおよび後続のアクションを較正するために使用され得る。
【００３１】
[0037]方法３００は、アクション３２０〜３５０において測定された値に従って、温度緩和アルゴリズムのパラメータを更新するためのアクション３６０、３７０、３８０、および３９０をさらに含む。例えば、アクション３６０は、ＤＣＶＳアルゴリズムによって使用される電圧および周波数ステップを更新することを含む。この例では、ＤＣＶＳアルゴリズムは、電圧を低減または増大するために特定のステップサイズを使用し、そのステップサイズは、ＴＪランプレートおよび／またはＴｓｋｉｎランプレートを含む、いくつかのファクタ（factors）に基づいて選択される。
【００３２】
[0038]この例を続けると、ベンチマークテストが実行されるにつれて、コンピュータプロセッサは、ＴＪランプレートをトラッキングする。ランプレートが測定されて、保存されるとともに、その後、コンピュータプロセッサは、ルックアップ表３６５から電圧ステップサイズを選択し、ＤＣＶＳアルゴリズムの中でそのステップサイズを使用する。
【００３３】
[0039]一実施形態による、例となるルックアップ表が図４に例示される。図４では、ルックアップ表３６５は、ミリボルト単位のステップサイズの選択を提供する、左側の列を含む。右側の列は、１秒当たりの摂氏度単位のランプレート測定値を提供する。これら列の各々は、測定されたランプレートに特定のサイズの電圧ステップを割り当てる。例えば、エントリ４１０は、測定された１秒当たり２５℃のランプレートに、１５ｍＶのステップサイズを割り当てる。同様に、エントリ４４０は、１秒当たり５５℃の測定されたランプレートに、６５ｍＶのステップサイズを割り当てる。他のエントリ４２０、４３０は、それぞれ、上限（top end）のエントリ４４０と下限（bottom end）のエントリ４１０の間の中間である。無論、図４に例示される表３６５は、一例である。他の実施形態は、特定のアプリケーションに適切なより多くのまたはより少ないエントリ、異なるステップサイズ、および異なるランプレートを含み得ることが理解される。
【００３４】
[0040]図５は、一実施形態による、例となるランプレートを例示する。ランプレートは、ベンチマークテストの持続時間のような、定義された時間期間にわたる温度変化を含む。曲線５１０は、より望ましくない熱伝導特性を有するよりローエンドのコンピューティングデバイスに関連付けられ得る、例となるランプレートを例示する。曲線５１０の例では、コンピューティングデバイスの伝導特性は、ジャンクション温度または計算されたＴｓｋｉｎが比較的迅速に上昇することを可能にする。対照的に、曲線５２０は、より望ましい熱伝導特性を有するよりハイエンドのコンピューティングデバイスに関連付けられ得る、例となるランプレートを例示する。曲線５２０において、ジャンクション温度および／またはスキン温度の上昇は、それほど迅速ではない。この例では、より高いジャンクション温度ランプレートまたはＴｓｋｉｎランプレートが、許容レベルに温度を制御するために、より大きい電圧ステップに関連付けられるであろう。したがって、曲線５１０は、曲線５２０（１５ｍＶ）よりも大きい電圧ステップ（３５ｍＶ）に関連付けられる。これは、より高い温度ランプレートが、より大きい電圧ステップに関連付けられた、図４の例となるルックアップ表３６５と一致する。
【００３５】
[0041]図３の例に戻ると、アクション３６０において、コンピュータプロセッサは、アクション３４０からＴＪランプレート測定値を受け取り、その後、ＴＪランプレート測定値をルックアップ表３６５中のエントリと比較する。アクション３６０は、切り上げまたは切り捨て、最も近いマッチを見つけること、または別の選択基準を使用することによるものを含む、ＴＪランプレートの測定された値と、表３６５中の利用可能なエントリとの間の近似マッチングを行うことを含む。したがって、アクション３６０は、観測されたＴＪランプレートを、表中のＴＪランプレート値にマッチングするために、データ構造（このケースでは、表３６５）を解析することと、表中のＴＪランプレート値に対応する電圧ステップ値を選択することと、その後、ＤＣＶＳアルゴリズムに電圧ステップ値を適用することとを含む。無論、他の実施形態は、ジャンクション温度を使用することに加えて、またはその代替として、観測されたＴｓｋｉｎランプレートを表中のエントリとマッチングし、対応する電圧ステップサイズを適用し得る。換言すれば、他の実施形態においてＴｓｋｉｎに基づいて電圧低減ステップサイズを設定することは、ジャンクション温度を使用するアクション３６０と同様に機能する。
【００３６】
[0042]図６は、一実施形態による、通常動作中のＤＣＶＳビヘイビア（DCVS behavior）の例示である。具体的には、アクション３６０は、較正中にルックアップ表３６５から適切な電圧ステップサイズを選択および適用することを含み得、その後、通常動作中に、ＤＣＶＳアルゴリズムは、それが適用された電圧ステップサイズを使用するに伴って、図６に例示されるものと同様のビヘイビアを示す。
【００３７】
[0043]図６は、３つの列を有する表６００を示し、ここにおいて、右側の列は、５０ｍＶの電圧ステップを例示する。具体的には、ステップ１とステップ２の間の差が５０ｍＶであり、また、ステップ２とステップ３の間にも５０ｍＶ電圧差分（voltage delta）が存在する。ステップ３とステップｎの間のステップは、図６のビヘイビアが任意の数のステップを含み得ることを示すために、具体的には例示されていない。ステップｎは、６５０ｍＶに関連付けられているが、ビヘイビアの上限および下限は、様々な実施形態において、任意の適切な電圧レベルに設定され得ることが理解される。
【００３８】
[0044]真ん中の列は、それぞれの電圧レベルおよびステップに関連付けられた周波数値を示す。一般に、より低い電圧での動作は、データビットが適正に捕捉されることを確実にするために、より低いクロック周波数での動作に関連付けられていることが予期される。したがって、図６の実施形態は、より低い動作周波数をより低い動作電圧と関連付ける。様々な実施形態は、適宜、電圧およびクロック周波数を上昇および低下させ得る。
【００３９】
[0045]例えば、図６の行の各々は、温度緩和アルゴリズムによって取られるアクションに対応し得る。したがって、一例では、最初の温度セットポイント（ＴＪまたはＴｓｋｉｎ）が、上昇する温度読取り値によって超えられたとき、温度緩和アルゴリズムは、ステップ１に進み、モニタすることを継続し得る。温度が、特定の時間期間よりも長い間、同じ状態のままであるか、または増大し続けた場合には、温度緩和アルゴリズムは、ステップ２に移動してモニタすることを継続し、温度が安定化したか、または低減し始めた後に、電圧をさらに低減させ続けるか、あるいは電圧を増大し始めるかのいずれかである（either continuing to further decrease the voltage or to begin increasing the voltage after temperature stabilizes or begins to decrease）。
【００４０】
[0046]アクション３６０はまた、性能評価尺度（performance measure）または緩和までの時間に基づいて、電圧ステップサイズを選択することも含み得、ここにおいて、緩和までのより短い時間は、より大きい電圧ステップに関連付けられ得、ここにおいて、より高い測定された性能は、より大きい電圧ステップに関連付けられ得る。
【００４１】
[0047]アクション３７０は、ＴＪランプレート（アクション３４０）および緩和までの時間（アクション３３０）に少なくとも部分的に基づいて、温度セットポイントおよびシャットダウンポイントを更新することを含む。セットポイントは、ＤＣＶＳのような、緩和アルゴリズムが呼び出され得る、様々な温度センサでの温度読取り値を含む。一般に、より短い緩和までの時間およびより大きいランプレートは、より低い温度セットポイントをもたらすことになる。アクション３７０は、コンピュータプロセッサが、アクション３３０、３４０からの値を受け取り、それらの値をルックアップ表３７５にマッチングするという点では、アクション３６０と同様であり得る。その後、アクション３７０は、温度セットポイントとして、ルックアップ表からのエントリを適用する。
【００４２】
[0048]アクション３７０は、シャットダウンポイントを更新することをさらに含み得る。この例では、シャットダウンポイントは、集積回路チップが熱暴走イベントを回避するために完全にオフにされ得る、温度読取り値を含む。一般に、より短い緩和までの時間およびより大きいランプレートは、より低いシャットダウンポイントをもたらすことになる。アクション３７０は、コンピュータプロセッサが、アクション３３０、３４０からの値を受け取り、それらの値をルックアップ表３７５内でマッチングして、適切なシャットダウンポイントを識別し、温度緩和アルゴリズムにそれらのシャットダウンポイントを適用することを含む。
【００４３】
[0049]アクション３９０は、アクション３５０からの測定されたＴｓｋｉｎランプレートに応答して、スキン温度セットポイントを更新することを含む。アクション３９０は、コンピュータプロセッサが、アクション３５０からの値を受け取ることと、それらの値をルックアップ表３９５中のエントリにマッチングすることを含む。その後、アクション３９０は、緩和アルゴリズムにおけるスキン温度セットポイントとして、ルックアップ表３９５から選択されたエントリを適用する。スキン温度セットポイントは、Ｔｓｋｉｎ推定値に対応する温度値を含み得る。コンピュータデバイスが、通常動作中に動作するにつれて、それはまた、Ｔｓｋｉｎを計算し得、Ｔｓｋｉｎがセットポイントを超えるとき、温度緩和は、上記で説明されたように、動作電圧および／または動作周波数を低減させることによって実行され得る。
【００４４】
[0050]アクション３８０は、ＴＪランプレート測定値を受け取ることと、適切なポーリングレート値を識別するために、それらの測定値をルックアップ表３８５中の値にマッチングすることとを含む。この例では、ポーリングレートは、温度センサから温度データを獲得するための頻度（frequency）を含む。一般に、より大きいジャンクション温度ランプレートは、温度センサについてのより高いポーリングレートに対応すべきであると仮定される。アクション３８０は、適切なポーリングレートを識別するために、測定されたＴＪランプレート情報を使用することと、温度緩和アルゴリズムにそれらのポーリングレートを適用することとを含む。
【００４５】
[0051]実施形態は、特定のスマートフォンまたは他のコンピューティングデバイスの製造プロセス中に方法３００を実行することを含み得る。これは、特定のデバイスの熱ポリシ（thermal policies）が、そのデバイスに対して個別に設定されることを可能にする。その後、方法３００は、熱ポリシを調整するために、年に１回またはその他のときなどに、適宜、再実行され得る。対照的に、様々な従来のプロセスは、その特定のモデルの各デバイスが同じ熱ポリシを含むように、デバイスモデルに対して熱ポリシを設定することを含む。
【００４６】
[0052]温度緩和アルゴリズムを較正するために方法３００を使用するいくつかの実施形態の利点は、それらの実施形態が、所与の製造されたコンピューティングデバイスに特有の設定を適用し得るということである。例えば、所与の製造されたコンピューティングデバイスは、チップパッケージとヒートスプレッダとの間のエアギャップのような、製造ばらつきを有し得、これは、コンピューティングデバイスの熱伝導特性に影響を及ぼす。方法３００は、ベンチマークテストを実行し、その後、較正を実行して、その製造されたコンピューティングデバイスについての適切な設定を識別する。同じ設備で製造された他のコンピューティングデバイスは、同じ型番を使用していてさえも、製造ばらつきによる異なる熱伝導特性を有し得、したがって、それらの個々のデバイスにとってより好ましい幾分か異なる温度緩和設定を含み得る。
【００４７】
[0053]熱緩和を提供する例となる方法７００のフロー図が、図７に例示される。一例では、方法７００は、熱管理ユニットによって実行され、これは、コンピューティングデバイスのプロセッサにおけるハードウェアおよび／またはソフトウェア機能を含み得る。いくつかの例では、熱管理ユニットは、コンピューティングデバイスにおける温度センサから温度データを受け取ることと、特定のアルゴリズムに従って、較正機能および温度緩和機能を実行することとを行うためのコンピュータ可読命令を実行する処理回路を含む。
【００４８】
[0054]図７の実施形態は、較正動作中に、アクション７１０〜７４０を実行することを含む。例えば、アクション７１０〜７４０は、コンピューティングベンチマークテストを実行することと、そのコンピューティングベンチマークテスト中に値を捕捉することとに応答して実行され得る。アクション７５０は、較正された温度緩和アルゴリズムを使用して、通常動作中に実行され得る。
【００４９】
[0055]アクション７１０において、熱管理ユニットは、集積回路チップにおける温度センサおよびプリント回路基板上の温度センサから温度感知データを読み取る。例が、図２において上記に示され、ここで、温度センサは、ＴＪ１〜ＴＪ３として示されている。この例でのアクション７１０は、コンピューティングベンチマークテスト中に、デフォルトのレートで温度センサをポーリングすることを含み得る。アクション７１０はまた、図３のアクション３２０〜３５０に関して上記で説明されたように、性能を測定することと、デフォルトの温度緩和設定を使用して、緩和までの時間を測定することと、ＴＪランプレートを測定することと、Ｔｓｋｉｎランプレートを測定することとを含み得る。
【００５０】
[0056]アクション７２０において、熱管理ユニットは、温度情報の観測された変化速度を、データ構造中の特定の温度情報変化速度値にマッチングするために、データ構造を解析する。例えば、上記の例では、温度情報の変化速度は、ランプレートを含む。さらに、上記の例では、熱管理ユニットは、近似的にマッチするランプレート値（approximately matching ramp rate value）に対応する表中のエントリを見つけるためのキーとして、ＴＪランプレート（またはＴｓｋｉｎランプレート）を使用して、ルックアップ表を調べる。換言すれば、ランプレートは、表中のエントリを選択するために、キーと値のペアにおけるキーとして使用され得る。上記例は、データ構造としてルックアップ表を使用するが、実施形態の範囲は、そのように限定されない。他の実施形態は、適宜、異なるデータ構造を使用し得る。
【００５１】
[0057]アクション７３０において、熱管理ユニットは、データ構造中の特定の温度情報変化速度値に対応する第１の電圧低減ステップ値を選択する。一例が図４に関して上記に提供され、ここにおいて、左側の列における電圧低減ステップ値の各々は、右側の列におけるそれぞれのランプレート値に対応する。アクション７３０、熱管理ユニットは、アクション７２０の解析することに応答して、電圧低減ステップ値を選択する。
【００５２】
[0058]アクション７４０において、熱管理ユニットは、温度緩和アルゴリズムに第１の電圧低減ステップ値を適用する。例えば、熱管理ユニットは、コンピューティングデバイスのチップにおける不揮発性メモリ中に第１の電圧低減ステップ値のインジケーションを記憶し得る。
【００５３】
[0059]アクション７５０において、熱緩和ユニットは、コンピューティングデバイスの通常動作中に、温度緩和アルゴリズムに従って、コンピューティングデバイスの性能を低減させる。一例では、温度緩和アルゴリズムは、較正からの設定を収集するために、コンピュータチップ内の不揮発性メモリアドレスを読み取ることによって、デバイスの電源投入時に自分自身を始動するソフトウェアアルゴリズムである。それらの設定のうちの１つが、第１の電圧低減ステップ値である。他の設定は、同様に不揮発性メモリアドレスに記憶された、例えば、ＴＪセットポイントおよびシャットダウンポイント、Ｔｓｋｉｎセットポイント、温度センサポーリングレート、および同様のものを含み得る。
【００５４】
[0060]アクション７５０は、コンピューティングデバイスの少なくとも１つの集積回路チップによって消費されるエネルギを低減させることを含む。一例では、温度緩和アルゴリズムは、１つまたは複数の集積回路チップの動作電圧を低減させ、それによって、電力消費を低減させる。しかしながら、実施形態の範囲は、電圧低減の一部としてか、あるいは電圧低減とは独立してかにかかわらず、動作周波数を低減させるなど、任意の適切な温度緩和技法を含み得る。
【００５５】
[0061]通常の使用中にデバイスが動作するにつれて、熱管理ユニットは、バックグラウンドにおいて温度緩和アルゴリズムを実行し、増大している温度読取り値または低減している温度読取り値のいずれかにおいて、ジャンクション温度セットポイントおよびスキン温度セットポイントが通過されると（passed）、適切なアクションを取る。したがって、人間のユーザが、デバイスをアイドル状態にしておく、電話をかける、テキストメッセージを送る、ビデオを見る、および同様のことを行うとき、熱管理ユニットは、デバイス動作温度がスキンの限界を超えないことを確実にするために、較正された温度緩和アルゴリズムを連続的に実行する。
【００５６】
[0062]実施形態の範囲は、図７に示された特定の方法に限定されない。他の実施形態は、１つまたは複数のアクションを追加、省略、再配置、または修正し得る。例えば、方法７００は、アクション７１０〜７４０が繰り返されるか否かにかかわらず、通常動作中にアクション７５０を繰り返し実行することを含み得る。
【００５７】
[0063]現時点で当業者が認識するように、および目前の特定のアプリケーションに依存して、多くの修正、置換および変形が、その趣旨および範囲から逸脱することなく、本開示のデバイスの材料、装置、構成、および使用方法において、ならびにそれらに対してなされ得る。この点を踏まえると、本開示の範囲は、ここに例示および説明された特定の実施形態のそれに限定されるべきではなく、これは、それらが単にそれについてのいくつかの例にすぎないためであり、むしろ、以下に添付された特許請求の範囲およびそれらの機能的な同等物のそれに完全に相応すべきである。
【図１】
2019527412.tif 000003
【図２】
2019527412.tif 000004
【図３】
2019527412.tif 000005
【図４】
2019527412.tif 000006
【図５】
2019527412.tif 000007
【図６】
2019527412.tif 000008
【図７】
2019527412.tif 000009
【国際調査報告】
2019527412.tif 000010
2019527412.tif 000011