(57)【要約】【課題】プロセッサの処理能力と放熱ファンの回転による騒音を調和してユーザに最大の快適度を与えることのできるコンピュータ用の放熱システムを提供する。【解決手段】放熱システムは、処理能力の変更が可能なプロセッサ１１を含む。放熱ファン３３と温度センサ３１がコンピュータの筐体内に設けられる。回転速度設定部６３は閾値温度と温度センサが測定した測定温度に基づいて放熱ファンの回転速度を段階的に変更する。パフォーマンス制御部１０５、１０７は、測定温度と閾値温度に基づいてプロセッサが処理すべき作業の一部をプロセッサの処理能力を低減させて後続の時間帯で処理させる。この結果、測定温度のピークを後続の時間帯にシフトさせて放熱ファンの回転速度が上昇することを抑制することができる。【選択図】図５
2010039655.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータの筐体に収納された放熱システムであって、
処理能力の変更が可能なプロセッサと、
放熱ファンと、
温度センサと、
閾値温度と前記温度センサが測定した測定温度に基づいて前記放熱ファンの回転速度を段階的に変更する回転速度設定部と、
前記測定温度と前記閾値温度に基づいて前記測定温度が所定時間以内に前記閾値温度を超えると判断したときに前記プロセッサの処理能力を一時的に低減させるパフォーマンス制御部と
を有する放熱システム。
【請求項２】
前記パフォーマンス制御部が、
前記測定温度と前記測定温度の上昇速度と前記閾値温度に基づいて現在の処理能力を維持した場合に前記測定温度が前記閾値温度を超えるまでの予測時間を計算する温度予測部と、
前記予測時間に基づいて前記プロセッサの処理能力を変更する処理能力設定部と
を含む請求項１に記載の放熱システム。
【請求項３】
前記処理能力設定部は、前記予測時間に基づいて処理能力の低減、維持、または増大のいずれかを実行する請求項２に記載の放熱システム。
【請求項４】
前記処理能力設定部は、前記予測時間と前記プロセッサの使用率に基づいて処理能力の低減量を決定する請求項２または請求項３に記載の放熱システム。
【請求項５】
前記処理能力設定部は、前記プロセッサの使用率に基づいて前記予測時間を修正した修正予測時間を生成し、該修正予測時間に基づいて処理能力を最小単位量だけ低減させる請求項２または請求項３に記載の放熱システム。
【請求項６】
処理能力が通常状態より低減している時間と処理能力の低減量に基づいたパフォーマンス特性値を計算してパフォーマンス優先コマンドを前記処理能力設定部に発行するパフォーマンス判定部を有し、前記処理能力設定部は前記パフォーマンス優先コマンドに基づいて前記プロセッサを通常状態またはそれに準ずる状態に復帰させる請求項２ないし請求項５のいずれかに記載の放熱システム。
【請求項７】
前記パフォーマンス特性値に基づいて前記パフォーマンス優先コマンドを生成するための閾値をユーザが入力する設定画面を生成し、前記閾値を前記パフォーマンス判定部に送るユーザ・インターフェース部を有する請求項６に記載の放熱システム。
【請求項８】
前記温度予測部は前記回転速度設定部が前記放熱ファンの回転速度を変更した後の新たな閾値温度に対する新たな予測時間を計算し、前記処理能力設定部は前記新たな予測時間に基づいて前記プロセッサの処理能力を変更する請求項２ないし請求項７のいずれかに記載の放熱システム。
【請求項９】
前記閾値温度は、前記放熱ファンの回転速度を第１の回転速度から該第１の回転速度よりも速い第２の回転速度に上昇させる基準となる第１の閾値と前記第２の回転速度から前記第１の回転速度に下降させる基準となる前記第１の閾値より小さい第２の閾値で構成されている請求項１ないし請求項８のいずれかに記載の放熱システム。
【請求項１０】
前記閾値温度が、前記コンピュータの筐体温度を所定の値以下に抑制するように設定されている請求項１ないし請求項９のいずれかに記載の放熱システム。
【請求項１１】
請求項１ないし請求項９のいずれかに記載の放熱システムを搭載したコンピュータ。
【請求項１２】
処理能力の変更が可能なプロセッサと放熱ファンと温度センサを筐体内に設けたコンピュータにおける放熱方法であって、
前記温度センサが温度を測定するステップと、
閾値温度と前記温度センサが測定した測定温度に基づいて前記放熱ファンの回転速度を前記コンピュータが段階的に変更するステップと、
前記測定温度と前記閾値温度に基づいて前記測定温度が所定時間以内に前記閾値温度を超えるか否かを前記コンピュータが判断するステップと、
前記閾値温度を超えると判断したときに前記プロセッサの処理能力を一時的に低減させるステップと
を有する放熱方法。
【請求項１３】
前記判断するステップが、前記閾値温度と前記測定温度と前記測定温度の上昇速度に基づいて判断する請求項１２に記載の放熱方法。
【請求項１４】
前記閾値温度に到達しないと判断したときに前記処理能力を増加または維持させるステップを有する請求項１３に記載の放熱方法。
【請求項１５】
前記プロセッサの使用率に基づいて前記処理能力の低減量を決定するステップを含む請求項１４に記載の放熱方法。
【請求項１６】
前記処理能力が低減している時間と処理能力の低減の程度に基づいて前記コンピュータがパフォーマンス特性値を計算するステップと、
前記パフォーマンス特性値に基づいて前記プロセッサを通常状態に復帰させるステップと
を有する請求項１４または請求項１５に記載の放熱方法。
【請求項１７】
前記パフォーマンス特性値に対する閾値を前記コンピュータがユーザから受け取るステップを有する請求項１６に記載の放熱方法。
【請求項１８】
前記判断するステップと前記低減させるステップと前記増加または維持させるステップとを変更された回転速度ごとに新たな閾値温度に基づいて実行する請求項１４ないし請求項１７のいずれかに記載の放熱方法。
【請求項１９】
処理能力の変更が可能なプロセッサと放熱ファンと温度センサを筐体内に設けたコンピュータに、
前記温度センサが温度を測定する機能と、
閾値温度と前記温度センサが測定した測定温度に基づいて前記放熱ファンの回転速度を段階的に変更する機能と、
前記測定温度と前記閾値温度に基づいて前記測定温度が所定時間以内に前記閾値温度を超えるか否かを前記コンピュータが判断する機能と、
前記閾値温度を超えると判断したときに前記プロセッサの処理能力を一時的に低減させる機能と
を実現させるコンピュータ・プログラム。
【請求項２０】
前記測定する機能および前記変更する機能を実現するプログラムと、前記判断する機能および前記低減させる機能を実現するプログラムが、相互に異なるプロセッサで実行される請求項１９に記載のコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は放熱ファンを備えるコンピュータの筐体内部の温度を管理する技術に関し、さらに詳細には放熱ファンの騒音とプロセッサの処理能力を調和して温度を管理する技術に関する。
【背景技術】
【０００２】
ノート型パーソナル・コンピュータ(以下、ノートＰＣという。）は、筐体の内部にＣＰＵ、ビデオ・カード、ＰＣカードなどの多くの電子デバイスを高密度に実装している。それらの電子デバイスはノートＰＣの動作に応じて発熱し、電子デバイス自体および筐体内部の温度が上昇する。主要な電子デバイスのチップ内部または近辺には温度を監視する温度センサが設けられており、温度センサの測定した温度に対しては閾値が設定されている。
【０００３】
ノートＰＣには、温度センサが測定する温度が上昇したときに筐体の内部に外気を取り入れて排気することにより外部に放熱するための放熱ファンまたは冷却ファンが設けられている。放熱ファンは、回転速度を複数の段階に制御することで放熱量を調整できるようになっている。放熱ファンの回転速度は、温度センサで測定した測定温度が閾値を超えると増加し、閾値より下がると低下するように調整される。このとき隣接する回転速度間において、１つの閾値で回転速度を上下両方向に制御すると、放熱ファンの回転速度が頻繁に変化して耳障りになるため、通常はヒステリシス特性をもたせている。すなわち、ノートＰＣは温度センサの温度が閾値温度Ｔｈ１を超えたときに回転速度を１段階上げ、閾値温度Ｔｈ２（Ｔｈ２＜Ｔｈ１）より下がったときに回転速度を元に戻す制御をしている。
【０００４】
ＣＰＵはノートＰＣに搭載されている電子デバイスのなかで最も発熱量が大きい。ＣＰＵのクロック速度および動作電圧を下げることにより、消費電力を低減させるスピード・ステップ（SpeedStep、登録商標）とい技術が知られている。さらに、消費電力を低減するためにＣＰＵを間欠動作させるスロットリング（Throttling）という技術も知られている。いずれの技術でも、ＣＰＵの処理能力を低減させて発熱量を低下することができる。また、ＡＣＰＩ（Advanced Configuration and Power Interface）の仕様では、コンピュータ・システムの放熱に関してアクティブ・クーリング方式とパッシブ・クーリング方式の２つの方式を定義して区別している。
【０００５】
アクティブ・クーリング方式では、コンピュータの温度が上昇し始めると最初に放熱ファンを動作させ、放熱ファンが最大の回転速度に到達しても温度上昇が続く場合にＣＰＵの処理能力を低減させる。パッシブ・クーリング方式では、コンピュータの温度が上昇し始めると最初にＣＰＵの処理能力を低減させ、ＣＰＵの処理能力が最低まで低減しても温度上昇が続く場合に放熱ファンを動作させる。アクティブ・クーリング方式は、処理能力優先の考え方であり、パッシブ・クーリング方式は、消費電力の増大および放熱ファンの騒音の抑制を優先する考え方である。
【０００６】
特許文献１の発明は、ＣＰＵの動作速度の低下と電動ファンの回転という２つの冷却方式が存在するときの問題を解決する技術を開示する。同文献には、ＣＰＵの動作速度を低下させる手法を採用すると、コンピュータの動作性能がユーザの意思に反して自動的に低下されてしまうため使用環境が悪化するなどの問題があり、一方、電動ファンを回転させる手法を採用するとその電動ファンによって比較的大きな電力が消費されるため、ポータブル・コンピュータのバッテリ動作可能時間が短くなってしまうなどの問題があることが記載されている。
【０００７】
特許文献１の冷却方式には、ポータブル・コンピュータにＣＰＵの動作速度の低下と電動ファンの回転という２つの冷却機能が設けられており、ユーザによる冷却モードの設定に応じてそれら２つの冷却機能を選択的に使用することができるようになっている。すなわち、ユーザがＱｕｉｅｔモードを選択した場合には、バッテリ動作時間を長くするための低消費電力優先のモードとなり、電動ファンは回転させないでＣＰＵの動作速度だけを低下させる。一方、ユーザがＰｅｒｆｏｒｍａｎｃｅモードを選択した場合には性能優先モードとなり、ＣＰＵの動作速度は低下させないで電動ファンの回転だけで冷却を行う。
【０００８】
特許文献２の発明は、ノートＰＣにおいて、温度センサが監視対象ではない近傍の電子デバイスからの放射熱の影響を受けると、対象とする電子デバイスの冷却には有効でない条件で冷却ファンを回転させたり、回転数を上昇させたりして不必要な騒音や電力消費をもたらしてしまうという問題を解決する技術を開示する。特許文献２の冷却システムでは、ある電子デバイスが負荷状態で動作するときは、サーマル・アクション・テーブルに設定された基準設定値に基づいて冷却ファンの動作を制御する。その電子デバイスがアイドル状態のときには、他の電子デバイスからの放射熱を考慮してサーマル・アクション・テーブルの基準設定値を修正した修正温度値に基づいて冷却ファンの動作を制御する。よって、冷却ファンが放射熱の影響や環境温度の上昇で過剰冷却となるような動作をすることがなくなる。
【特許文献１】特開平８−３２８６９８号公報
【特許文献２】特開２００７−２２６６１７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００９】
ユーザはノートＰＣに対して、作業を短時間で終了したいという処理能力に関する希望と同時に、放熱ファンの騒音には悩まされたくないという静寂性の希望ももっている。処理能力を下げれば発熱量が低下するため、放熱ファンは低い回転速度で動作しても温度を所定の範囲以内に維持することができるので、静寂性の要求を満たすことができる。他方で処理能力を上げれば発熱量が増加するため、温度を維持するためには放熱ファンを高い回転速度で動作させる必要があるので、静寂性の要求を満たすことができなくなる。このように処理能力と静寂性とは筐体内部の温度を介在してトレードオフ要素となる。
【００１０】
ＡＣＰＩの仕様や特許文献１に示された放熱方法は、処理能力優先方式と静寂性優先方式とにあらかじめ優先順位をつけておいて順番に実行したり、ユーザの選択によりいずれか一方を実行したりするというものであった。すなわちこれまでは、処理能力優先方式または静寂性優先方式のいずれか一方だけを択一的に実行するか、一方だけでは温度上昇の抑制が不十分なときに先に実行した放熱方式を最大限機能させておきながら他方の放熱方式を追加的に実行していた。
【００１１】
ノートＰＣを対話型方式で利用するような場合は、処理能力優先方式と静寂性優先方式を同時に実行しなければならない状態はほとんどないため、多くの場合はいずれか一方だけを実行して温度を維持できるような熱設計が行われている。しかしこの場合、処理能力優先方式で放熱した場合には放熱ファンからの騒音が煩わしく、また、静寂性優先方式で放熱した場合には処理能力に不満が残るといったように、ユーザにとって必ずしも満足のいくものではなかった。ユーザの最大快適度は、処理能力と静寂性が調和した範囲で放熱システムが機能する点にあることは明らかであり、それに対応が可能な放熱システムが待望されていた。
【００１２】
そこで本発明の目的は、プロセッサの処理能力と放熱ファンの騒音を調和してユーザに最大の快適度を与えることのできるコンピュータ用の放熱システムを提供することにある。さらに本発明の目的は、処理能力を最低限の範囲で低減させながら、放熱ファンの騒音を低下させることのできるコンピュータ用の放熱システムを提供することにある。さらに本発明の目的は、そのような放熱システムを採用したコンピュータ、ならびにそのような放熱システムにおける放熱方法およびコンピュータ・プログラムを提供することにある。
【課題を解決するための手段】
【００１３】
コンピュータに収納された電子デバイスが発熱した熱を放熱ファンにより放熱する放熱システムの熱設計では、ＣＰＵがアイドル状態のときに放熱ファンの回転速度が最も低くなるか停止するように設定し、ＣＰＵの使用率が上昇して発熱量が上昇した場合に段階的に放熱ファンの回転速度を上昇させて筐体内部を所定の温度に維持するように放熱量と発熱量をバランスさせている。ユーザが作業をしているときには、温度センサが測定した測定温度はシステムの動作状態に応じて変化し、放熱ファンは測定温度に対する閾値温度に基づいて定まる回転速度で動作する。放熱ファンの回転速度の制御にヒステリシス特性があると、先の例では一旦測定温度が閾値温度Ｔｈ１を超えて上昇した場合に放熱ファンの回転速度が上昇し、測定温度が閾値温度Ｔｈ２より下がって回転速度が下降するまでに比較的長い時間を費やすことになる。
【００１４】
しかし、サーバ用コンピュータではなく個人向けのコンピュータ（以下、単にコンピュータと称す）に一般的な負荷をかけたときの測定温度の変化を監視すると、現在の放熱ファンの回転速度を１段上昇させるほど高い温度が長い時間測定され続けられることは希であり、ＣＰＵが高い処理能力で動作する必要がある状態は散発的に発生することが確認できる。回転速度が上昇した後に測定温度が下がるときには、閾値温度Ｔｈ１と閾値温度Ｔｈ２の間では、熱バランス上は回転速度を下げてもよいにもかかわらず放熱ファンは１段上の回転速度で回転しているため、現実の放熱ファンの回転速度に基づく放熱量と実際の発熱量との間に乖離が生ずることになる。また、短時間だけ温度が閾値温度Ｔｈ１を超えるような場合は、処理能力を優先して放熱ファンの回転速度を上昇させるよりも、静寂性を優先して一時的に処理能力を低減させることで低い回転速度を維持した方がユーザの快適度が高いこともわかってきた。
【００１５】
本発明の基本的な原理は、処理時間に関連するプロセッサの処理能力と騒音に関連する放熱ファンの回転速度という温度を介在してトレードオフになる２つの要素をユーザの快適度を最大にするとい視点で調和させる点にある。本発明の態様では放熱ファンと温度センサとプロセッサとがコンピュータの筐体内に収納されており、回転速度設定部が閾値温度と温度センサが測定した測定温度に基づいて放熱ファンの回転速度を段階的に変更する。パフォーマンス制御部は、温度センサが測定した測定温度が所定時間以内に閾値温度を超えて放熱ファンの回転速度が上昇すると予測したときにプロセッサの処理能力を一時的に低減させる。
【００１６】
プロセッサの処理能力が低減すると発熱量は低下する。コンピュータが対話型処理を実行しているときは、プロセッサが高い負荷状態で動作を継続することはほとんどなく、プロセッサの発熱量が高い状態は一過性であるため、プロセッサは重い負荷状態に続いて軽い負荷状態になる。プロセッサは、負荷の重い時間帯では、処理能力が低下したことで処理能力が低下しないとしたら処理できた作業の一部を処理できなくなる。その処理できなくて残った一部の作業はプロセッサで実行待ちの状態になっているか、そもそも直前の作業の実行自体が遅延しているため、まだ実行すべき要求となっていないかであるが、プロセッサはやがて到来する後続の軽い負荷の時間帯でそれを処理する。したがって、処理能力が低下した時間帯で処理されるべきであった作業の一部が後続の作業量の少ない時間帯にシフトされて、プロセッサの発熱量のピークをなくすまたは軽減することができる。このように処理能力の低減により作業量自体が低減され、測定温度は閾値温度を超えなくなり放熱ファンの回転速度を上昇させる必要がなくなる。
【００１７】
パフォーマンス制御部を、現在の測定温度と現在の測定温度の上昇速度と閾値温度に基づいて温度センサが測定する温度が閾値温度を超えるまでの予測時間を計算する温度予測部と、予測時間に基づいてプロセッサの処理能力を変更する処理能力設定部とで構成することができる。処理能力設定部は、予測時間に基づいて現在の処理能力の低減、維持、または増大のいずれかを実行することで、測定温度が閾値温度を越えないようにしながら処理能力の低減量を最小、すなわち、パフォーマンスを最大にすることができる。処理能力設定部は、予測時間と予測時のプロセッサの使用率に基づいて処理能力の低減量を決定することができる。
【００１８】
処理能力設定部は、予測時のプロセッサの使用率に基づいて予測時間を修正した修正予測時間を生成し、修正予測時間に基づいて処理能力を最小単位量だけ変化させることができる。処理能力を最小単位量だけ変化させるとユーザに対する違和感を軽減することができる。処理能力設定部は、予測時間とプロセッサの使用率に基づいて処理能力の低減量を決定することができる。処理能力の低減を長時間続けると、ユーザにとって作業の遅延が許容できなくなる。この場合、作業の遅延の程度をパフォーマンス判定部がパフォーマンス特性値として計測することができる。パフォーマンス特性値は、処理能力が通常状態より低減している間の時間と処理能力の低減量に基づいて計算することができる。パフォーマンス判定部は、パフォーマンス特性値に基づいて処理能力設定部にパフォーマンス優先コマンドを発行する。処理能力設定部は、パフォーマンス優先コマンドを受け取ると、プロセッサの処理能力を通常状態に復帰させるか、または現在の処理能力低減量をより小さくする。
【００１９】
プロセッサの処理能力の低減中に、その処理能力を増大させるタイミングを、パフォーマンス特性値に基づいてユーザが調整できるようにすれば、ユーザの個性や作業状態に対応した最適な処理能力と静寂性の調和を図ることができる。回転速度設定部は閾値温度に基づいて回転速度を段階的に変更するが、温度予測部と処理能力設定部は、変更された新たな回転速度でも同様に機能する。本発明にかかる放熱システムによれば、放熱ファンの回転制御がヒステリシス特性をもつように設定されている場合には、熱バランス上で過冷却となるような状態が発生する機会が減少する。
【発明の効果】
【００２０】
本発明により、プロセッサの処理能力と放熱ファンの騒音を調和してユーザに最大の快適度を与えることのできるコンピュータ用の放熱システムを提供することができた。さらに本発明により、処理能力を最低限の範囲で低減させながら、放熱ファンの騒音を低下させることのできるコンピュータ用の放熱システムを提供することができた。さらに本発明により、そのような放熱システムを採用したコンピュータ、ならびにそのような放熱システムにおける放熱方法およびコンピュータ・プログラムを提供することができた。
【発明を実施するための最良の形態】
【００２１】
図１は、本発明の実施の形態にかかるノートＰＣ１０の外形図で、図２はそのシステム構成を示す概略ブロック図である。ノートＰＣ１０は、表面にキーボードを搭載し内部に電子デバイスを収納したシステム筐体３と、ＬＣＤ筐体１とで構成されている。システム筐体３の内部には、図２に実線のブロックで示す複数の電子デバイスが搭載されている。使用中にノートＰＣ１０の底面７はユーザの膝と接触することがあり、パームレスト５はユーザの手と接触する。したがって、システム筐体３の表面は所定の温度以下に維持する必要があり、そのために従来からノートＰＣ１０には強制冷却の放熱システムが採用されている。
【００２２】
ＣＰＵ１１は、ノートＰＣ１０の中枢機能を担う演算処理装置で、ＯＳ、ＢＩＯＳ、デバイス・ドライバ、あるいはアプリケーション・プログラムなどを実行する。ＣＰＵ１１はさらに、本実施の形態にかかる放熱制御プログラムを実行する。ＣＰＵ１１はノートＰＣ１０の電子デバイスの中で最も消費電力が大きく、かつ、発熱量も多い。ＣＰＵ１１は、スピード・ステップという技術およびスロットリングという技術に対応している。スピード・ステップは米国インテル社が開発した、ＣＰＵの動作電圧および動作周波数の値を自由に設定できる技術である。スピード・ステップでは、システムがある状態のときに許可する最大の動作周波数をシステムＢＩＯＳがＣＰＵ１１のレジスタに設定することにより、実際に当該ＣＰＵが動作する動作周波数を段階的に低減させることができる。
【００２３】
ＣＰＵ１１は動作周波数を低減させるときに同時に当該動作周波数でＣＰＵ１１を動作させるのに必要な値まで動作電圧を低減させる。ＣＰＵ１１は、スピード・ステップを実行するときに、ＥＣ２７に指示してＤＣ／ＤＣコンバータ３７に、ＣＰＵ１１の電圧を設定した最大動作周波数に適合するよう変更させる。スピード・ステップによりＣＰＵ１１の消費電力および発熱量が低減する。スロットリングは、ＣＰＵ１１を一定間隔で動作および停止させて間欠動作をさせることにより平均的な処理速度を切り替える機能である。スロットリングを実行するには、システムＢＩＯＳがＣＰＵ１１のレジスタにスロットリングの有効／無効の設定およびデューティ比（スロットリング率）を設定する。スピード・ステップもスロットリングも段階的にＣＰＵ１１の処理能力および発熱量を変化させることができる。
【００２４】
また、スピード・ステップとスロットリングとを併用し、スピード・ステップによる最低の動作周波数を維持したままでスロットリングに移行することもできる。これらについて本発明との関連においては、ＣＰＵ１１の処理能力を複数の段階に変化させて放熱量を調整できる点が重要である。以後、スピード・ステップおよびスロットリングまたはいずれか一方により変化するＣＰＵ１１の処理能力の各段階を、パフォーマンス・ステップということにする。本実施の形態では、パフォーマンス・ステップを１００％、７５％、５０％、２５％の４段階として説明するが、本発明はこれに限定されるものではない。パフォーマンス・ステップが１００％のときは、処理能力が低下していない状態であり、特にこの状態をＣＰＵ１１の通常状態ということにする。
【００２５】
ノートＰＣ１０に実装されるハードウエアおよびソフトウエアは、ＡＣＰＩ（Advanced Configuration and Power Interface）という規格に適合する。ＡＣＰＩは、ＯＳがＢＩＯＳと連携してＰＣを構成する各デバイスの消費電力を管理するための統一された方式として米国インテル社、米国マイクロソフト社および東芝が中心になって策定したものであり、電源のオン／オフ、サスペンド／レジューム、および放熱ファンの制御などの消費電力の制御にまつわる様々な機能および動作をＯＳが中心となって細かく設定・管理できるものである。ＡＣＰＩはスピード・ステップおよびスロットリングに対応している。
【００２６】
ＣＰＵ１１は、ノース・ブリッジ１３およびノース・ブリッジ１３にさまざまなバスを経由して接続された各デバイスを制御する。ノース・ブリッジ１３は、メイン・メモリ１５へのアクセス動作を制御するためのメモリ・コントローラ機能や、ＣＰＵ１１と他のデバイスとの間のデータ転送速度の差を吸収するためのデータ・バッファ機能などを含む。メイン・メモリ１５は、ＣＰＵ３１が実行するプログラムの読み込み領域、処理データを書き込む作業領域として利用される揮発性のＲＡＭである。ビデオ・コントローラ１７はノース・ブリッジ１３に接続され、ビデオ・チップおよびＶＲＡＭを備えており、ＣＰＵ１１からの命令を受けて描画すべき画像ファイルのイメージを生成してＶＲＡＭに書き込み、ＶＲＡＭから読み出したイメージを画像データとして液晶ディスプレイ装置（ＬＣＤ）１９に送る。ＬＣＤ１９は、ＬＣＤ筐体１に収納される。
【００２７】
サウス・ブリッジ１９は、ノース・ブリッジ１３に接続され、さまざまな周辺入出力デバイスのインターフェースやＰＣＩバス、ＰＣＩ−Ｅｘｐｒｅｓｓバスのポートを備えている。サウス・ブリッジ１９には、オーディオ・コントローラ２１およびＨＤＤ２３などが接続される。ＨＤＤ２３は、ＯＳ、デバイス・ドライバ、およびアプリケーション・プログラムなどの周知のプログラムの他に、本実施の形態にかかる放熱制御プログラムを格納する。放熱制御プログラムの構成は後に説明する。
【００２８】
ＯＳは、ＣＰＵ１１の使用率を示す使用率メータを備えている。Ｗｉｎｄｏｗｓ（登録商標）では、使用率メータがタスクマネージャのパフォーマンスの項目に表示されている。ＯＳは、ＣＰＵ１１の使用率を情報として他のプログラムに伝えることができる。ここにＣＰＵ１１の使用率は、ＣＰＵ１１がアイドル・プロセスという特別な空の命令を実行してＣＰＵ１１が作業をしない待機状態で経過する時間と、ＯＳやアプリケーション・プログラムなどを実行してＣＰＵ１１を占有する時間のある単位時間における割合を示す情報である。ＣＰＵ１１の使用率は実行するプログラムの内容および数によって変化する。使用率が高くなるとＣＰＵは単位時間あたりに多くの作業をしていることになり、消費電力および発熱量が増大する。なお、ここでは詳述しないが、ＣＰＵ１１が単一パッケージ内部にマルチコアタイプで実質的に複数のプロセッサが装備されているＳＭＰ（Symmetric Multiple Processor）システムの場合でも、それぞれのプロセッサコアが同時にフル稼働している場合を稼働率上限（すなわち100%）と見立てて、それらのプロセッサ群全体での適正な使用率を求めることができる。具体的には、例えば２つのコアを持つ場合に一方がフル稼働、他方がアイドル状態の場合には使用率は50%となることになる。
【００２９】
さらにサウス・ブリッジ１９は、ＰＣＩバスまたはＬＰＣバス２５を介して、従来からノートＰＣ１０に使用されているレガシー・デバイス、あるいは高速なデータ転送を要求しないデバイスに接続される。ＬＰＣバス２５には、エンベデッド・コントローラ（ＥＣ）２７、フラッシュＲＯＭ４５、およびＩ／Ｏコントローラ４７などが接続されている。ＥＣ２７は、８〜１６ビットのＣＰＵ、ＲＯＭ、ＲＡＭなどで構成されたマイクロ・コンピュータであり、さらに複数チャネルのＡ／Ｄ入力端子、Ｄ／Ａ出力端子、タイマー、およびディジタル入出力端子を備えている。ＥＣ２７には、それらの入出力端子を介して、放熱ファン駆動回路２９、温度センサ３１、およびパワー・コントローラ３５が接続されており、ノートＰＣ１０の内部の動作環境の管理にかかるプログラムをＣＰＵ１１とは独立して実行させることができる。ＥＣ２７のＲＯＭには、放熱ファン３３の回転速度を制御するプログラムと基準温度値を記述したサーマル・アクション・テーブル（ＴＡＴ）６０（図３参照）が格納されている。
【００３０】
放熱ファン駆動回路２９には放熱ファン３３が接続されている。放熱ファン３３は、システム筐体１３の内部に取り入れた外気を、ヒート・シンクを通じて排気することでシステム筐体３の内部を強制冷却し、各電子デバイスおよびシステム筐体３の表面を許容温度以下に維持する。なお、システム筐体３に実装されている電子デバイスの中で、ＣＰＵ１１、ビデオ・コントローラ１７のビデオ・チップ、およびノース・ブリッジが生成した熱は、ヒート・パイプおよびヒート・シンクを経由して外部に排出され、その他の電子デバイスが生成した熱はシステム筐体３の内部を移動する空気流により外部に排出される。
【００３１】
温度センサ３１は、主要な電子デバイスに対応した位置およびシステム筐体３の所定の位置に設けられている。各温度センサ３１は、外付け型として監視対象となる電子デバイスの近辺に配置されるか、または埋め込み型として当該電子デバイスのダイの中に形成される。ＣＰＵ１１およびビデオ・チップを監視する温度センサは埋め込み型で、その他の電子デバイスおよび筐体表面を監視する電子デバイスは外付け型である。外付け型の温度センサは、それぞれの電子デバイスの近辺においてマザー・ボード上に実装されている。
【００３２】
各温度センサ３１は、対応する電子デバイスを保護する目的以外に、システム筐体３の表面温度を所定値以内に維持する目的で放熱ファン３３の制御に使用される。ＥＣ２７は、温度センサ３１が測定した測定温度に基づいて放熱ファン３３の制御信号を生成して放熱ファン駆動回路２９に送る。放熱ファン駆動回路２９は、ＥＣ２７から送られた制御信号に基づいて、放熱ファン３３のオン／オフ制御および回転速度の段階的な制御を行う。本実施の形態では、放熱ファン駆動回路２９は、放熱ファン３３の回転速度を、超低速回転、低速回転、中速回転、または高速回転の４つのいずれかになるように制御する。なお、ＥＣ２７は回転速度を隣接する回転速度間で変化させ、たとえば超低速回転から中速回転に変化するような制御は行わない。
【００３３】
パワー・コントローラ３５は、ノートＰＣ１０の電源を制御する半導体ロジック回路である。パワー・コントローラ３５には、ＤＣ−ＤＣコンバータ３７が接続される。ＤＣ−ＤＣコンバータ３７は、ＡＣ／ＤＣアダプタ４３またはバッテリ４１から供給される直流電圧を複数の電圧に変換してＣＰＵ１１およびその他の電子デバイスに電力を供給する。ＡＣ／ＤＣアダプタ４３はノートＰＣ１０に接続されると、ＤＣ−ＤＣコンバータ３７とバッテリィ４１を充電する充電器３９に電力を供給する。
【００３４】
フラッシュＲＯＭ４５は不揮発性で記憶内容の電気的な書き替えが可能なメモリであり、Ｉ／Ｏデバイスを制御したり電源および筐体内の温度などを管理するシステムＢＩＯＳ、およびノートＰＣ１０の起動時にハードウエアの試験や初期化を行うＰＯＳＴ（Power-On Self Test）などを格納する。放熱制御プログラムは、ＣＰＵ１１にスピード・ステップまたはスロットリングを実行させる際に、設定すべき動作周波数またはスロットリング率を指定してパワー・マネジメント・ドライバを通じてシステムＢＩＯＳに通知する。通知を受けたシステムＢＩＯＳは、ＣＰＵ１１のレジスタに指定された動作周波数またはスロットリング率を設定する。Ｉ／Ｏコントローラ４７には、キーボードやマウスなどの入力デバイス４９が接続される。
【００３５】
図３は、ＴＡＴ６０の構成の一部を例示して説明する図である。ＴＡＴ６０は、電子デバイスごとに放熱ファン３３の動作状態を超低速回転、低速回転、中速回転、高速回転の間で変更するための基準温度値を記述している。基準温度値は、各動作状態に対するイネーブル温度とディスエーブル温度で構成され、回転速度が上昇方向に変化する場合と下降方向に変化する場合との間にヒステリシス特性を形成している。イネーブル温度ＬＴｅ、ＭＴｅ、ＨＴｅは、温度センサの測定温度が上昇傾向にある場合に放熱ファン３３が、１段階回転速度が遅い動作状態から当該動作状態に移行する温度値である。ディスエーブル温度ＬＴｄ、ＭＴｄ、ＨＴｄは、温度センサの測定温度が下降傾向にある場合に放熱ファン３３が当該動作状態より１段階回転速度の遅い動作状態に移行する温度値である。
【００３６】
ＣＰＵ１１および電子デバイスＡ〜Ｄに対応して温度センサ１１Ｔないし１９Ｔがそれぞれ設けられているものとする。なお、ノートＰＣ１０には電子デバイスに対応する位置だけでなくシステム筐体３の表面に対応する位置にも温度センサが設けられている。各温度センサ３１に対応して設定されている基準温度値は、各電子デバイスとそれを監視する各温度センサが実際にシステム筐体１３の内部に実装されたときに、放熱ファン３３をできるだけ低い回転速度で動作させてシステム筐体３の所定の場所の表面温度が所定値を越えないようにするために設定されている。さらに基準温度値は、各電子デバイスがクリティカル温度を超えないように放熱ファン３３を適切な回転速度で動作させるために設定されている。電子デバイスがクリティカル温度を超えて上昇するような場合は、ノートＰＣ１０は動作を停止したり、サスペンド状態またはハイバネーション状態に移行したりする。
【００３７】
ＥＣ２７は、いずれかの温度センサ３１が測定した測定温度が監視対象の電子デバイスに設定されたイネーブル温度に到達したとき放熱ファン３３の回転速度を１段上昇させ、すべての温度センサ３１が測定した測定温度が監視対象の電子デバイスに設定されたディスエーブル温度以下まで下降したとき放熱ファン３３の回転速度を１段下降させる。具体的には、筐体内部の温度が上昇していずれかの温度センサ３１の測定温度が低速回転のイネーブル温度ＬＴｅに到達したとき放熱ファン３３は低速回転で動作し、中速回転のイネーブル温度ＬＴｅに到達したとき中速回転で動作し、さらに高速回転のイネーブル温度ＨＴｅに到達したとき高速回転で動作する。
【００３８】
放熱ファン３３が高速回転している状態からノートＰＣ１０の負荷が減少して各温度センサ３１が測定した測定温度が低下したときには、放熱ファン３３はすべての温度センサ３１の測定温度が高速回転のディスエーブル温度ＨＴｄに到達すると中速回転に移行し、中速回転のディスエーブル温度ＭＴｄに到達すると低速回転に移行し、低速回転のディスエーブル温度ＬＴｄに到達すると超低速回転に移行する。
【００３９】
図４は、このようなＴＡＴ６０に基づいてＥＣ２７が放熱ファン３３の回転速度を制御したときの放熱ファン３３の回転速度と温度センサ１１Ｔが測定した測定温度を示す図である。図４（Ａ）、図４（Ｂ）において、縦軸はＣＰＵ１１に埋め込まれた温度センサ１１Ｔが測定した測定温度で横軸は経過時間を示す。ここでは、放熱ファン３３の動作を複数の温度センサの中で、温度センサ１１Ｔが支配しているときの様子を示している。ライン６１は、ＣＰＵ１１に対してテスト・プログラムを実行させたときの測定温度の変化を示す。
【００４０】
図４（Ａ）では、時刻ｔ１−ｔ２間、時刻ｔ３−ｔ４間、時刻ｔ５−ｔ６間の時間帯で放熱ファン３３の回転速度が中速回転になり、その他の時間帯では低速回転になっている。図４（Ｂ）のライン６３は、ＣＰＵ１１で図４（Ａ）の場合と同じテスト・プログラムを実行させて、ＣＰＵ１１の最大動作周波数を通常状態の１／３に固定した場合の測定温度の変化を示す。ＣＰＵ１１は、動作周波数および動作電圧が低下してライン６３はライン６１に対して温度が下がる方向にシフトしている。図４（Ｂ）では、時刻ｔ７−ｔ８間で放熱ファン３３の回転速度が中速回転になり、その他の時間帯では低速回転になっている。
【００４１】
このような測定温度の変化と放熱ファンの動作状態を検証すると、ＣＰＵ１１が複雑な技術計算や画像処理などの負荷の重いプログラムを実行している場合は別として、ノートＰＣ１０を対話形式で使用するような通常の使用状態では、測定温度がイネーブル温度ＭＴｅを越えている状態は一過性であり長く持続するものではないということ、および、図４（Ａ）の時刻ｔ９とｔ４の間などではファン制御のヒステリシス特性により、熱バランス上は放熱ファン３３が低速回転でもよいにもかかわらず、中速回転で動作して過冷却状態になっていることである。過冷却状態は、不必要な騒音の発生と消費電力のロスの原因になる。
【００４２】
また、図４（Ｂ）において動作周波数を１／３に低下させた場合は、時刻ｔ７−ｔ８間だけで放熱ファン３３が中速回転になり、図４（Ａ）の場合よりも中速回転の期間が低減してはいるが、測定温度が放熱ファン３３の回転速度の上昇に影響しない多くの時間帯で動作周波数が低下していることがわかる。本実施の形態にかかる放熱システムは、ノートＰＣ１０の通常の使用に基づくＣＰＵ１１の発熱状態の推移の特徴を利用して、放熱ファン３３からの不必要な騒音の発生および消費電力のロスを軽減し、さらに、ＣＰＵ１１の動作周波数を必要以上には低下させないようにする。
【００４３】
図５は、本実施の形態にかかる放熱システムの構成を示すブロック図である。放熱システムは、主要部がＣＰＵ１１で実行される放熱制御プログラム１００と従来からＥＣ２７で実行されるプログラムで構成されている。放熱制御プログラム１００は、ＯＳ上で動作するアプリケーション・プログラムで、ユーザ・インターフェース部１０１、パフォーマンス判定部１０３、温度予測部１０５、および処理能力設定部１０７で機能が構成されている。放熱制御プログラム１００を構成する各機能ブロックは、実際には、放熱制御プログラム、ＯＳ、メイン・メモリ１５、およびＣＰＵ１１などのソフトウエアとハードウエアの複合機能として実現される。
【００４４】
温度予測部１０５は、ＥＣ２７の温度測定部６１から各温度センサ３１が測定した温度情報を定期的に受け取り、それぞれについて温度上昇の速度または加速度を計算する。なお、温度上昇の速度または加速度を総称して以後温度上昇速度という。温度予測部１０５は、ＴＡＴ６０に含まれるイネーブル温度ＨＴｅ、ＭＴｅ、ＬＴｅを保有している。温度予測部１０５は、各温度センサ３１が測定した現在の測定温度とイネーブル温度と温度上昇速度とに基づいて、その時点の温度上昇速度が継続すると仮定した場合にいずれかの温度センサ３１に関する測定温度がイネーブル温度ＨＴｅ、ＭＴｅ、ＬＴｅを越えるまでの時間を予測時間として計算し、処理能力設定部１０７に通知する。
【００４５】
ところで、測定温度が上昇していることは、ＣＰＵ１１の発熱量が放熱ファン３３による放熱量よりも多いことを意味する。そして温度上昇しているＣＰＵ１１の処理能力をある時刻で低下させると、測定温度は処理能力が低下したあとのＣＰＵ１１の発熱量と放熱ファン３３の放熱量による熱バランスで決まる温度に収束する。したがって、処理能力を低下させた直後に測定温度が急降下するわけではなく、処理能力の低下は、収束温度に到達するまでの間に測定温度がイネーブル温度を超えないように行う必要がある。
【００４６】
処理能力設定部１０７は、温度予測部１０５から受け取った予測温度をＯＳの使用率メータ６７から受け取った最近のＣＰＵ１１の使用率に基づいて修正し、新たな予測温度を生成する。このときの様子を図１０（Ａ）に基づいて説明する。図１０（Ａ）には、時刻ｔ０での予測時間ｔｐと修正予測時間ｔｃと修正予測時間ｔｃに対する閾値時間ｔｔ１が示されている。温度予測部１０５が生成した予測時間ｔｐは、時刻ｔ０における温度上昇速度が継続することを想定して計算されるが、時刻ｔ０でのＣＰＵ１１の使用率が低い場合は、時刻ｔ０以後に使用率が上昇して測定温度が予測時間ｔｐ以内にイネーブル温度ＭＴｅに到達し放熱ファン３３の回転速度が上昇する可能性があるので、予測時間ｔｐを使用率で修正することが望ましい。
【００４７】
図１０（Ａ）において、ライン８１は、時刻ｔ０において測定温度が時刻ｔ０における温度上昇速度に基づいて計算したイネーブル温度ＭＴｅに到達するまでの予測時間ｔｐを示しており、ライン８３は時刻ｔ０における使用率に基づいて予測時間ｔｐを修正した修正予測時間ｔｃを示している。修正予測時間ｔｃは、予測時間ｔｐに対して予測時の使用率を考慮することにより、これより短い時間で測定温度がイネーブル温度ＭＴｅに到達することがないことを保証できる時間である。
【００４８】
修正予測時間ｔｃは、たとえば、予測時の使用率が１００％のときは予測時間ｔｐと等しい値にし、使用率がＸ％のときは予測時間ｔｐに使用率Ｘ％を乗じた値にすることができる。この場合、パフォーマンス・ステップを最小単位である１ステップだけ下げることで、修正予測時間ｔｃを閾値時間ｔｔ１を上回るように増大させ、測定温度がイネーブル温度ＭＴｅを越えることがないように定めることができる。その結果、処理能力設定部１０７は、修正予測時間ｔｃが閾値時間ｔｔ１以下になったときにパフォーマンス・ステップを１ステップだけ下げることで、測定温度をイネーブル温度ＭＴｅ以内に維持することができる。具体的には、時刻ｔ０でのパフォーマンス・ステップが１００％、５０％のときには、それぞれ７５％、２５％に低下させる。パフォーマンス・ステップを最小単位である１ステップだけ低減させる場合は、ユーザが処理能力の低下に対して抱く違和感を最小にすることができる。
【００４９】
これとは別に、処理能力設定部１０７は、予測時間ｔｐが所定の閾値時間ｔｔ２以下になったときにパフォーマンス・ステップのステップ数をｎ（ｎ＞１）以上さげて、測定温度をイネーブル温度ＭＴｅ以下に維持することもできる。この様子を図１０（Ｂ）に基づいて説明する。図１０（Ｂ）のライン８５は、図１０（Ａ）のライン８１と同じように、時刻ｔ０において測定温度がＴ１のときに、時刻ｔ０における温度上昇速度が継続すると仮定した場合に、イネーブル温度ＭＴｅに到達するまでの予測時間ｔｐを示している。予測時間ｔｐは使用率を考慮していないため、予測時の使用率によっては、処理能力を低下させないと仮定した場合の測定温度が予測時間ｔｐより早い時間でイネーブル温度ＭＴｅに到達する可能性がある。
【００５０】
このとき低下させるステップ数を多くすることで大きな温度上昇の抑制効果を得ることができる。しかし、必要以上に低下させるステップ数を多くすることは、本来のＣＰＵ１１の性能を無駄にするため好ましくない。必要最小限の範囲でパフォーマンス・ステップを低下させるために、処理能力設定部１０７は低下させるステップ数ｎを、予測時間ｔｐを計算した時刻ｔ０でのＣＰＵ１１の使用率に基づいて決定する。すなわち、予測時間ｔｐを計算した時刻ｔ０でのＣＰＵ１１の使用率が高い場合は、予測時間ｔｐより短い時間で温度がイネーブル温度ＭＴeに到達する可能性は低いので１ステップだけ下げて７５％にし、ＣＰＵ１１の使用率が低い場合は予測時間よりも短い時間で温度がイネーブル温度に到達する可能性が高いので、２ステップまたは３ステップ下げてパフォーマンス・ステップを５０％、２５％にすることができる。図１０（Ｂ）の場合は、図１０（Ａ）の場合に比べて、パフォーマンス・ステップを低下させるときの測定温度がイネーブル温度ＭＴｅに近づき、パフォーマンス・ステップを低下させる頻度は少なくなるが、低下させるときのステップ数は２ステップ以上になることがあるので、ユーザが処理能力の低下を感じる可能性は高くなる。
【００５１】
いずれの場合も処理能力設定部１０７は、温度予測部１０５から受け取ったすべての温度センサに関する予測時間ｔｐが一定値以上または温度上昇を意味しない特別の予約値の場合は、システム筐体３の全体に渡って放熱ファン３３の放熱量と電子デバイスからの発熱量がバランスしているか、放熱量が多くて測定温度が低下していると判断して、パフォーマンス・ステップを１ステップだけ上げる。処理能力設定部１０７はまた、修正予測時間ｔｃまたは予測時間ｔｐに基づいて処理能力を低減させる必要がないと判断し、かつ、処理能力を増大させる必要もないと判断したときは、それまでのパフォーマンス・ステップを維持する。このように処理能力設定部１０７は、ＯＳの使用率メータ６７から受け取った現在のＣＰＵ１１の使用率と温度予測部１０５から受け取った予測時間ｔｐに基づいて、現在のパフォーマンス・ステップを増加方向または低下方向に変更する必要があるか否かを判断してパフォーマンス・ステップを変更し、変更の必要がないときは、その時点のパフォーマンス・ステップを維持する。
【００５２】
処理能力設定部１０７は、パフォーマンス・ステップを変更する場合に、パワー・マネジメント・ドライバを経由してシステムＢＩＯＳにＣＰＵ１１のレジスタに実行するパフォーマンス・ステップのための設定値を書き込む。処理能力設定部１０７が予測温度に基づいて測定温度をイネーブル温度以下に維持する処理を、パフォーマンス調整処理ということにする。なお、パフォーマンス調整処理においては必ずしもＣＰＵ１１の使用率を利用する必要はない。
【００５３】
処理能力設定部１０７は、各温度センサ３１が測定したそれぞれの温度に基づいて現在のパフォーマンス・ステップを増加方向または低下方向に変更する必要があるか否かを判断し、いずれかの温度センサの測定温度についてパフォーマンス・ステップを低下方向に変更すると判断した場合は低下させ、また、すべての温度センサの測定温度についてパフォーマンス・ステップを増加方向に変更すると判断した場合は増加させる。ユーザ・インターフェース部１０１は、各ユーザの個性やそのときの作業状況により変化する処理能力と静寂性のバランス位置を調整してユーザが最大の快適度を得ることができるように、ＬＣＤ１９を通じてユーザに設定画面を提供する。
【００５４】
パフォーマンス判定部１０３は処理能力設定部１０７が最初にパフォーマンス調整処理を開始した時点からパフォーマンス特性値の計算を開始する。パフォーマンス特性値は、パフォーマンス調整処理が行われている間の処理時間の遅延の程度を数値化した値である。パフォーマンス特性値は、処理能力を低下させるステップ数とパフォーマンス調整処理の継続時間の２つのファクターに基づいて計算することができる。パフォーマンス特性値Ｐｆは、たとえば、各パフォーマンス・ステップＰｎでＣＰＵ１１が動作する時間をｔｙとしたときにＰｆ＝Σ（１００−Ｐｎ）×ｔｙで計算することができる。図９にパフォーマンス特性値の計算例を示す。パフォーマンス特性値は、処理能力の低下が大きいほど、また、継続時間が長いほど大きな値となり処理時間の遅延を反映する。
【００５５】
パフォーマンス判定部１０３は、パフォーマンス特性値が所定の閾値に到達したときに、放熱ファン３３の回転速度を上昇させるためのパフォーマンス優先コマンドを処理能力設定部１０３に送る。パフォーマンス判定部１０３は、処理能力設定部１０７を通じて回転速度設定部６３から回転速度が増大したことの通知を受け取ると、パフォーマンス特性値の計算をリセットして、つぎにパフォーマンス調整処理が開始された時点で新たにパフォーマンス特性値の計算を開始し同様にパフォーマンス優先コマンドを生成する。さらにパフォーマンス判定部１０３は、ＣＰＵ１１が通常状態で動作する時間が所定の時間継続したことを示す情報を処理能力設定部１０７から受け取ると、パフォーマンス特性値の計算をリセットし、つぎにパフォーマンス調整処理が開始された時点で再度パフォーマンス特性値の計算を開始して同様にパフォーマンス優先コマンドを生成する。これは、パフォーマンス調整処理が所定時間中断した場合は、パフォーマンス特性値の計算をリセットしてもユーザの快適度に影響を与えないと考えられるからである。
【００５６】
パフォーマンス特性値に対する閾値は、ユーザ・インターフェース部１０１が提供する設定画面を通じて、ユーザが設定できるようになっている。ユーザは、現在のパフォーマンス調整処理に対して、パフォーマンスをより優先したい場合には、閾値を低くしてパフォーマンス調整処理を早く終了させ、静寂性をより優先させたい場合には、閾値を高くしてパフォーマンス調整処理の期間が長く続くようにすることができる。ユーザ・インターフェース部１０１は、ユーザにより設定された閾値をパフォーマンス判定部１０３に送る。ＲＴＣ６５は、ノートＰＣ１０に実装されたリアル・タイム・クロックで、パフォーマンス判定部１０３に時間情報を供給する。
【００５７】
処理能力設定部１０７は、パフォーマンス判定部１０３からパフォーマンス優先コマンドを受け取るとパフォーマンス調整処理を中断し、その時点のパフォーマンス・ステップを最大の１００％に復帰させる。ＣＰＵ１１の負荷が変化しなければやがて測定温度はイネーブル温度を超えるため、ＥＣ２７の回転速度設定部６３は回転速度を１段増加させる。処理能力設定部１０７は、パフォーマンス優先コマンドを受け取ったとき以降に回転速度が上昇した通知を回転速度設定部６３から受け取ると、パフォーマンス優先コマンドをリセットして、上昇した回転速度の下で再度パフォーマンス調整処理を行う。なお、パフォーマンス調整処理を中断してパフォーマンス・ステップを復帰させる際には、必ずしも前述のように100%に復帰させる必要はなく、その時点の発熱量が相対的に大きい場合には、例えばそれまで25%だったステップを、75%までに復帰するような調整があっても良い。これによって、１段増加した次の回転速度でのイネーブル温度（例えばＨＴｅ）をも短時間に一気に超えてしまうような急激な温度上昇に対応することができる。
【００５８】
ＥＣ２７の温度測定部６１は、各温度センサ３１から受け取った信号をディジタルの温度値に変換する。温度測定部６１は、温度予測部１０５と回転速度設定部６３に温度値を転送する。回転速度設定部６３は、温度測定部６１から受け取った温度値とＴＡＴ６０に設定された閾値とに基づいて放熱ファン駆動回路２９に信号を送り、放熱ファン３３の回転速度を制御する。放熱ファン３３は、放熱ファン駆動回路２９の制御下で所定の回転速度で動作する。このようにＥＣ２７が、温度センサ３１が測定した測定温度に基づいて放熱ファン３３の回転速度を制御する処理を放熱量調整処理ということにする。
【００５９】
放熱制御プログラム１００は、ＣＰＵ１１のパフォーマンス・ステップを変更することにより放熱量を変化させてシステム筐体３の内部温度を制御するパフォーマンス系の温度制御構造を構成する。一方、ＥＣ２７は、温度センサ３１が測定した温度とＴＡＴ６０の閾値に基づいて放熱ファン３３の回転速度を調整することによりシステム筐体３の内部温度を制御する強制冷却系の温度制御構造を構成する。パフォーマンス系を構成する放熱制御プログラム１００は、ＣＰＵ１１で実行されるため、ＣＰＵ１１で実行される他のプログラムの影響を受けて一時的に動作が不安定になる可能性も残る。強制冷却系を構成する温度測定部６１、回転速度設定部６３、およびＴＡＴ６０はＥＣ２７のファームエアで構成されＣＰＵ１１から独立して機能する。
【００６０】
すなわち、強制冷却系は、パフォーマンス調整処理とは無関係に温度センサ３１とＴＡＴ６０の値だけに基づいて放熱ファン駆動回路２９を制御するので、何らかの原因でパフォーマンス系の動作が一時的に不安定になってもシステム筐体３の温度を安全な範囲に維持することができる。また、放熱制御プログラム１００は、ＣＰＵ１１で実行するプログラムであるため容易に修正を行うことができ、かつ、強制冷却系にレイヤを重ねる構造であるため強制冷却系の変更を必要としない。
【００６１】
図６は、図５に示したパフォーマンス系と強制冷却系の２つの温度制御構造により構成される放熱システムが、ノートＰＣ１０のシステム筐体３内の温度を制御する手順を示すフローチャートである。ブロック２０１では、放熱ファン３３が強制冷却系の放熱量調整処理によりいずれかの回転速度で回転している。放熱ファン３３が高速回転をしている場合は、それ以上回転速度が上がることはないが、システムがシャットダウンに至るときの温度を閾値温度としてパフォーマンス調整処理を行うことも可能である。温度予測部１０５は、温度測定部６１から定期的に各温度センサ３１が測定した温度値を受け取り、たとえば２秒といった一定時間ごとに測定時点での予測時間を計算して、処理能力設定部１０７に通知する。
【００６２】
処理能力設定部１０７は回転速度設定部６３から現在の回転速度に関する情報を受け取ってパフォーマンス調整処理を実行している。ＣＰＵ１１はユーザにより指定されたプログラムおよびシステムが決定したプログラムを実行しており、パフォーマンス・ステップと使用率に基づいて定まる量の発熱をしている。処理能力設定部１０７はブロック２０３で処理能力を低減させる必要があると判断したときにブロック２０５で図１０を参照して説明したいずれかの方法でパフォーマンス・ステップを低下させる。処理能力設定部１０７は、ブロック２０７で処理能力を増大する必要があると判断したときは、ブロック２０９でパフォーマンス・ステップを増大させる。パフォーマンス判定部１０３はブロック２１１で、パフォーマンス特性値が閾値を越えたか否かを判定し、閾値を越えた場合にはブロック２１３でＣＰＵ１１を通常状態に復帰させる。
【００６３】
ブロック２１５とブロック２１７では、強制冷却系がパフォーマンス系からは独立して温度センサ３１の測定する測定温度に基づいて放熱量調整処理を実行している。そして、いずれかの温度センサ３１が測定した測定温度がＴＡＴ６０のイネーブル温度を越えるとブロック２１９で放熱ファン３３の回転速度を１段上昇させ、すべての温度センサ３１が測定した測定温度がＴＡＴ６０のディスエーブル温度より下がったときにブロック２２１で放熱ファン３３の回転速度を１段下降させる。ブロック２１７、２１９、２２１以降は、ブロック２０３に戻ってパフォーマンス系が新たな回転速度に関するイネーブル温度に基づいてパフォーマンス調整処理を開始する。
【００６４】
図７は、図６の手順を実行したときのパフォーマンス調整処理の一例を示す図である。図７は横軸が経過時間で縦軸がＣＰＵ１１に埋め込まれた温度センサ１１Ｔが示す測定温度である。図７では時刻ｔ０から時刻ｔ９までパフォーマンス調整処理が行われている。この間、処理能力設定部１０７がパフォーマンス・ステップを低下する必要があると判断したときの判断は、温度センサ１１Ｔが支配していたものとしている。時刻ｔ０以前では、放熱ファン３３が低速回転で動作し、パフォーマンス調整処理は行われておらず、ＣＰＵ１１は通常状態で動作しているが、ＣＰＵ１１からの放熱量と低速回転での放熱量の熱バランスが崩れて、温度センサ１１Ｔの測定温度が上昇している。
【００６５】
時刻ｔ０で温度予測部１０５が、時刻ｔ０における温度Ｔ０が、イネーブル温度ＭＴｅに到達する時刻ｔ０ｘまでの時間を予測時間ｔｆ０として計算する。処理能力設定部１０７は、予測時間ｔｆ０に対してＣＰＵ１１の使用率を適用して修正予測時間を計算し閾値時間と比較する。その結果、処理能力設定部１０７は、修正予測時間が閾値時間よりも短いと判断してＣＰＵ１１のパフォーマンス・ステップを１ステップだけ下げて７５％に設定する。処理能力設定部１０７は時刻ｔ１、ｔ２における予測時間ｔｆ１、ｔｆ２から計算した修正予測時間がそれぞれ閾値時間よりも短いため、時刻ｔ１、ｔ２でＣＰＵ１１のパフォーマンス・ステップを１ステップずつ下げて、５０％、２５％とする。なお、時刻ｔ１、ｔ２では前の時刻ｔ０、ｔ１においてそれぞれパフォーマンス・ステップが１段階低下しているので温度上昇速度は鈍化し、予測時間ｔｆ１、ｔｆ２は予測時間ｔｆ０、ｔｆ１よりも長くなっているが、いずれもまだ閾値時間よりは短いため処理能力設定部１０７は、パフォーマンス・ステップを低下させる必要があると判断している。
【００６６】
処理能力設定部１０７は時刻ｔ３、ｔ４、ｔ５における予測時間ｔｆ３、ｔｆ４、ｔｆ５から計算した修正予測時間がそれぞれ閾値時間よりも長くなり、かつ、パフォーマンス・ステップを増加する程度ではないため、時刻ｔ３、ｔ４、ｔ５ではＣＰＵ１１のパフォーマンス・ステップを変更しないで２５％を維持する。時刻ｔ６では処理能力設定部１０７は、測定温度が平衡または下降していることを認識して、パフォーマンス・ステップを１ステップ上げて５０％にする。処理能力設定部１０７は時刻ｔ７における予測時間ｔｆ７から計算した修正予測時間が閾値時間よりも長いため、時刻ｔ７ではＣＰＵ１１のパフォーマンス・ステップを変更しないで５０％を維持する。
【００６７】
パフォーマンス判定部１０３は、時刻ｔ０で処理能力設定部１０７がパフォーマンス調整処理を開始してからパフォーマンス特性値の計算を開始する。パフォーマンス特性値は、パフォーマンス調整処理が継続する時間にしたがって増加する。パフォーマンス特性値の増加率は、低下させるステップ数が大きいほど高くなる。時刻ｔ８では、パフォーマンス特性値が所定の閾値に到達したため、パフォーマンス判定部１０３が処理能力設定部１０７にパフォーマンス優先コマンドを送る。パフォーマンス優先コマンドを受け取った処理能力設定部１０７は、時刻ｔ８でパフォーマンス・ステップを１００％に戻してＣＰＵ１１を通常状態に復帰させる。
【００６８】
パフォーマンス・ステップが１００％に戻ると、温度センサ１１Ｔの温度は、低速回転で動作する放熱ファン３３の放熱量と、処理能力が低下していないＣＰＵ１１の発熱量で定まる温度に収束する。この例では、通常状態でのＣＰＵ１１の発熱量が放熱量を上回っているため、時刻ｔ９では、測定温度がイネーブル温度ＭＴｅに到達するため、強制冷却系は放熱ファン３３の回転速度を１段上げて中速回転で動作させる。時刻ｔ４と時刻ｔ５の間でＣＰＵ１１がアイドル状態になり、測定温度がディスエーブル温度ＬＴｄまで下がったとすれば、回転速度設定部６３は、放熱ファン３３の回転速度を１段下げて超低速回転に移行させる。このように、パフォーマンス系は、パフォーマンス調整処理期間中に、温度がイネーブル温度ＭＴｅを超えないで、かつ、ＣＰＵ１１が最大のパフォーマンス・ステップで動作するように予測温度に基づいてＣＰＵ１１のパフォーマンス・ステップを制御する。
【００６９】
図８は、テスト・プログラムを利用して図７の手順を実行したときの温度センサ１１Ｔが測定した測定温度とパフォーマンス・ステップの推移を説明する図である。図８（Ａ）は、強制冷却系だけを機能させた場合で、図８（Ｂ）は強制冷却系とパフォーマンス系を機能させた場合を示す。図８（Ａ）においては、ＣＰＵ１１の発熱量は、全期間ｔａの間棒グラフで示すように変化するが、パフォーマンス調整処理は行われないため、ライン２０１で示す測定温度が３個所でイネーブル温度ＭＴｅを超えており、放熱ファン３３の回転速度が強制冷却系の制御の下でその都度中速回転に変化している。
【００７０】
図８（Ｂ）では、図８（Ａ）と同じテスト・プログラムを実行しているが、パフォーマンス調整処理が行われているため、ライン２０３で示す測定温度はイネーブル温度ＭＴｅを超えることはない。このとき、ＣＰＵ１１に対して行われる処理能力の変更に応じてＣＰＵ１１の発熱量が変化する。期間ｔｂの間は処理能力を低下させているため発熱量の上限が下がり、それに応じて発熱量も低下し、期間ｔｃの間は処理能力を増加させているため発熱量の上限が上がり、それに応じて発熱量も増加している。
【００７１】
このことより、パフォーマンス調整処理では、ＣＰＵ１１の作業が増大して測定温度が上昇し始めた期間ｔｂのときに一時的に処理能力を低下させて、処理能力を低下させた期間に処理すべきであった作業の一部を、作業が少ない後続の期間ｔｃにシフトさせて測定温度のピークを抑制しているといえる。本発明は、トレードオフになっているＣＰＵ１１の処理能力と放熱ファン３３の静寂性を調和してユーザに最大の快適度を与える。
【００７２】
快適度はユーザの個人差およびそのときの作業状況で変化する。本発明では、ユーザ・インターフェース部１０１が提供する設定画面でユーザが閾値を調整して、パフォーマンスを優先するか、あるいは静寂性を優先するか選択し、ユーザごとにきめの細かい調和点の調整ができるようになっている。具体的には、ユーザはパフォーマンスを優先したい場合は閾値を小さく設定してパフォーマンス特性値が小さい段階で放熱ファン３３の回転速度を上昇させることができる。ユーザは静寂性を優先したい場合は、閾値を大きく設定してパフォーマンス特性値が大きくなるまでパフォーマンス調整処理を継続することができる。
【００７３】
処理能力の調整をＣＰＵ１１で行う例を示したが、スピード・ステップまたはスロットリングは、ビデオ・チップなどの他のプロセッサで行うこともできる。この場合、ＣＰＵ１１およびビデオ・チップまたはそのいずれか一方を利用してパフォーマンス調整処理を行うことができる。また、放熱ファン３３は、図５を参照して説明した強制冷却系を構成するものであれば、システム筐体３の中に複数個設けられていてもよい。
【００７４】
これまで本発明について図面に示した特定の実施の形態をもって説明してきたが、本発明は図面に示した実施の形態に限定されるものではなく、本発明の効果を奏する限り、これまで知られたいかなる構成であっても採用することができることはいうまでもないことである。
【図面の簡単な説明】
【００７５】
【図１】本発明の実施の形態にかかるノートＰＣの外形図である。
【図２】ノートＰＣ１０のシステム構成を示す概略ブロック図である。
【図３】サーマル・アクション・テーブル（ＴＡＴ）の構成を説明する図である。
【図４】従来の放熱方式で放熱ファンを動作させたときの放熱ファンの回転速度を示す図である。
【図５】本実施の形態にかかる放熱システムの構成を示すブロック図である。
【図６】パフォーマンス系と強制冷却系により構成される放熱システムが、ノートＰＣの温度を制御する手順を示すフローチャートである。
【図７】パフォーマンス調整処理の状態の一例を示す図である。
【図８】テスト・プログラムを利用して図７の手順を実行したときの測定温度とパフォーマンス・ステップの推移を説明する図である。
【図９】パフォーマンス特性値の計算例を説明する図である。
【図１０】予測時間に基づいて、処理能力を低減する原理を説明する図である。
【符号の説明】
【００７６】
ＬＴｅ、ＭＴｅ、ＨＴｅ…イネーブル温度
３…システム筐体
６０…サーマル・アクション・テーブル
１００…放熱制御プログラム
【図１】
2010039655.tif 000003
【図２】
2010039655.tif 000004
【図３】
2010039655.tif 000005
【図４】
2010039655.tif 000006
【図５】
2010039655.tif 000007
【図６】
2010039655.tif 000008
【図７】
2010039655.tif 000009
【図８】
2010039655.tif 000010
【図９】
2010039655.tif 000011
【図１０】
2010039655.tif 000012