(57)【特許請求の範囲】
【請求項１】
空冷ファンと、
冷却対象の複数のデバイスそれぞれの周辺に設けられ、各々がその対応するデバイス周辺の温度を検出する複数の温度センサと、
前記複数のデバイスそれぞれにファン回転開始温度およびファン回転速度を割り当てるとともに、前記複数の温度センサのいずれかが当該温度センサに対応するデバイスの温度が当該デバイスに対応するファン回転開始温度以上になったことを検出したとき、当該温度センサに対応するデバイスに割り当てられたファン回転速度で前記空冷ファンを回転させるファン回転速度制御手段であって、前記複数のデバイスの中の２以上のデバイスの温度がそれぞれ対応するファン回転開始温度以上であることが前記２以上のデバイスそれぞれに対応する温度センサによって検出された場合には、前記２以上のデバイスそれぞれに対応するファン回転速度の中で最も高速のファン回転速度を優先し、前記最も高速のファン回転速度で前記空冷ファンを回転させるファン回転速度制御手段とを具備することを特徴とするコンピュータシステム。
【請求項２】
前記複数の温度センサの１つは前記コンピュータシステムのＣＰＵの周辺に配置されており、
前記ＣＰＵの近くに配置された温度センサがそれに割り当てられたファン回転開始温度以上の温度を検出したとき、前記ＣＰＵの動作速度を低下させる手段をさらに具備することを特徴とする請求項１記載のコンピュータシステム。
【請求項３】
前記ファン回転速度制御手段は、
前記複数の温度センサの中のいずれかがそれに割り当てられたファン回転開始温度以上の温度を検出したとき、その温度センサを示す温度センサＩＤを、割り込み信号を利用して前記コンピュータシステムのＣＰＵに通知する手段を含み、
前記ＣＰＵは、
前記通知された温度センサＩＤに基づいて前記空冷ファンの回転速度を決定し、前記空冷ファンの回転速度がその決定した回転速度になるように前記空冷ファンを制御することを特徴とする請求項１記載のコンピュータシステム。
【請求項４】
前記空冷ファンは、前記複数のデバイスが収容されている前記コンピュータシステム内から外部に空気を排出する排気ファンであり、
外部から前記コンピュータシステム内部に外気を取り込む吸気ファンをさらに具備することを特徴とする請求項１記載のコンピュータシステム。
【請求項５】
空冷ファンと、冷却対象の複数のデバイスそれぞれの周辺に設けられ、各々がその対応するデバイス周辺の温度を検出する複数の温度センサとを有するコンピュータシステムで使用され、そのコンピュータシステムをクーリングするクーリング制御方法であって、
前記複数のデバイスそれぞれにファン回転開始温度およびファン回転速度を割り当てるとともに、前記複数の温度センサのいずれかが当該温度センサに対応するデバイスの温度が当該デバイスに対応するファン回転開始温度以上になったことを検出したとき、当該温度センサに対応するデバイスに割り当てられたファン回転速度で前記空冷ファンを回転させ、
前記複数のデバイスの中の２以上のデバイスの温度がそれぞれ対応するファン回転開始温度以上であることが前記２以上のデバイスそれぞれに対応する温度センサによって検出された場合、前記２以上のデバイスそれぞれに対応するファン回転速度の中で最も高速のファン回転速度を優先し、前記最も高速のファン回転速度で前記空冷ファンを回転させることを特徴とするクーリング制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明はコンピュータシステムに関し、特にシステム内のデバイスの過熱を防止するための機能を持つコンピュータシステムに関する。
【０００２】
【従来の技術】
近年、携行が容易でバッテリにより動作可能なラップトップタイプまたはノートブックタイプのパーソナルコンピュータが種々開発されている。この種のパーソナルコンピュータに於いては、ＣＰＵの高性能化が進められており、これによってユーザは快適な使用環境を容易に手にすることが可能になってきている。
【０００３】
しかし、ＣＰＵの高性能化に伴い、ＣＰＵの発熱量が大きくなり、その熱による障害が問題となってきている。つまり、ＣＰＵからの発熱により、コンピュータ内の温度が他の部品の動作補償温度を越えてしまったり、ＣＰＵ自体がその熱によって誤動作するなどの問題が生じている。
【０００４】
そこで、最近では、ＣＰＵの周辺に配置された温度センサによってＣＰＵの温度を監視し、発熱が大きい場合には空冷用のファンによってＣＰＵを冷却するなどの手法が採用され始めている。この場合、ＣＰＵの温度があらかじめ設定されたファン回転開始温度に達すると空冷用ファンの回転が開始され、ＣＰＵの冷却が行われる。そして、ＣＰＵ温度があらかじめ設定されたファン回転停止温度以下になると、空冷用ファンの回転が停止される。
【０００５】
【発明が解決しようとする課題】
ところで、パーソナルコンピュータにおいては、実際には、熱源となるデバイスはＣＰＵだけではなく、たとえばハードディスクドライブやＰＣカードコンローラなどについてもかなりの高温を発する。
【０００６】
しかし、空冷用ファンを用いた従来のクーリング制御方法では、一個の温度センサしか用いられてないため、ＣＰＵ温度が低下すると、その時のハードディスクドライブやＰＣカードコンローラなどの他のデバイスがたとえ過熱状態であったとしても、ファンの回転は停止されてしまう。このため、ハードディスクドライブやＰＣカードコンローラなどに対しては十分なクーリングを行うことができないという問題があった。
【０００７】
この問題は、前述のファン回転開始温度、つまりファン回転を開始するＣＰＵ温度の値を十分に低めに設定しておくことによってある程度は解決することが可能であるが、このようにすると、今度は、ハードディスクドライブやＰＣカードコンローラの温度が低くその冷却が不要なときであってもファンが回転してしまい、無駄なファン回転による電力消費やノイズの増大といった問題が生じることになる。
【０００８】
この発明はこのような点に鑑みてなされたものであり、過熱からの保護が必要な複数のデバイスそれぞれに合った冷却方式を使用することが可能なコンピュータシステムおよびそのクーリング制御方法を提供することを目的とする。
【０００９】
【課題を解決するための手段】
この発明によるコンピュータシステムは、空冷ファンと、冷却対象の複数のデバイスそれぞれの周辺に設けられ、各々がその対応するデバイス周辺の温度を検出する複数の温度センサと、前記複数のデバイスそれぞれにファン回転開始温度およびファン回転速度を割り当てるとともに、前記複数の温度センサのいずれかが当該温度センサに対応するデバイスの温度が当該デバイスに対応するファン回転開始温度以上になったことを検出したとき、当該温度センサに対応するデバイスに割り当てられたファン回転速度で前記空冷ファンを回転させるファン回転速度制御手段であって、前記複数のデバイスの中の２以上のデバイスの温度がそれぞれ対応するファン回転開始温度以上であることが前記２以上のデバイスそれぞれに対応する温度センサによって検出された場合には、前記２以上のデバイスそれぞれに対応するファン回転速度の中で最も高速のファン回転速度を優先し、前記最も高速のファン回転速度で前記空冷ファンを回転させるファン回転速度制御手段とを具備することを特徴とする。
【００１０】
このコンピュータシステムにおいては、冷却対象のデバイス毎に温度センサが設けられており、個々のデバイスの温度変化がそれぞれ監視される。また、冷却対象のデバイス毎に、ファン回転開始温度およびファン回転速度を割り当てられる。各温度センサが当該温度センサに対応するデバイスの温度が当該デバイスに対応するファン回転開始温度以上になったことを検出したときは、当該温度センサに対応するデバイスに割り当てられたファン回転速度で前記空冷ファンが回転されるが、複数のデバイスの中の２以上のデバイスの温度がそれぞれ対応するファン回転開始温度以上であることが前記２以上のデバイスそれぞれに対応する温度センサによって検出された場合には、前記２以上のデバイスそれぞれに対応するファン回転速度の中で最も高速のファン回転速度が優先され、前記最も高速のファン回転速度で前記空冷ファンが回転される。これにより、１つの空冷ファンで各デバイスの温度特性に合致した強さの空冷を実現できるようになる。
【００１１】
【発明の実施の形態】
以下、図面を参照してこの発明の実施形態を説明する。
【００１２】
図１には、この発明の第１実施形態に係わるコンピュータシステムの構成が示されている。このコンピュータシステムは、ラップトップタイプまたはノートブックタイプのポータブルパーソナルコンピュータシステムであり、図示のように、ＣＰＵ１１、システムコントローラ１２、システムメモリ１３、ＢＩＯＳ−ＲＯＭ１４、リアルタイムクロック（ＲＴＣ）１５、電源コントローラ１６、キーボードコントローラ１７、通信用ゲートアレイ１８、ハードディスクドライブ１９、ＰＣ−カードコントローラ２０、空冷用電動ファン２１、ファン駆動制御回路２２、および３つの温度センサＡ，Ｂ，Ｃを備えている。
【００１３】
ＣＰＵ１１としては、例えば、米インテル社により製造販売されているマイクロプロセッサ“ｐｅｎｔｉｕｍ”などが使用される。ＣＰＵ１１はＰＬＬ回路を内蔵しており、このＰＬＬ回路は外部クロックＣＬＫに基づいてその外部クロックＣＬＫと同一またはそれよりも高速の内部クロックＣＬＫ２を生成する。このＣＰＵ１１は、図２に示されているように、電力消費の異なる３つの動作ステート、つまり、ノーマルステート（Ｎｏｒｍａｌ  Ｓｔａｔｅ）、ストップグラントステート（Ｓｔｏｐ  Ｇｒａｎｔ  Ｓｔａｔｅ）、およびストップクロックステート（ＳＴＯＰ  Ｃｌｏｃｋ  Ｓｔａｔｅ）を有している。
【００１４】
ノーマルステートはＣＰＵ１１の通常の動作ステートであり、命令はこのノーマルステートにおいて実行される。このノーマルステートは電力消費の最も多いステートであり、その消費電流は〜７００ｍＡ程度である。
【００１５】
最も電力消費の少ないのはストップクロックステートであり、その消費電流は〜３０μＡ程度である。このストップクロックステートにおいては、命令の実行が停止されるだけでなく、外部クロックＣＬＫおよび内部クロックＣＬＫ２も停止されている。
【００１６】
ストップグラントステートは、ノーマルステートとストップクロックステートの中間の動作ステートであり、その消費電流は２０〜５５ｍＡ程度と比較的少ない。ストップグラントステートにおいては、命令は実行されない。また、外部クロックＣＬＫおよび内部クロックＣＬＫ２は共にランニング状態であるが、ＣＰＵ内部ロジック（ＣＰＵコア）への内部クロックＣＬＫ２の供給は禁止される。このストップグラントステートは外部クロックＣＬＫの停止可能なステートであり、このストップグラントステートにおいて外部クロックＣＬＫを停止すると、ＣＰＵ１１はストップグラントステートからストップクロックステートに移行する。
【００１７】
ノーマルステートとストップグラントステート間の遷移は、ストップクロック（ＳＴＰＣＬＫ＃）信号によって高速に行うことができる。
【００１８】
すなわち、ノーマルステートにおいてＣＰＵ１１に供給されるＳＴＰＣＬＫ＃信号がイネーブルつまりアクティブステートに設定されると、ＣＰＵ１１は、現在実行中の命令が完了後、次の命令を実行すること無く、内部のパイプラインをすべて空にしてから、ストップグラントサイクルを実行して、ノーマルステートからストップグラントステートに移行する。一方、ストップグラントステートにおいてＳＴＰＣＬＫ＃信号がディスエーブルつまりインアクティブステートに設定されると、ＣＰＵ１１は、ストップグラントステートからノーマルステートに移行し、次の命令の実行を再開する。
【００１９】
また、ストップグラントステートからストップクロックステートへの移行は、外部クロックＣＬＫを停止することによって瞬時に行われる。ストップクロックステートにおいてＣＰＵ１１への外部クロックＣＬＫの供給が再開されると、１ｍｓ後にＣＰＵ１１はストップグラントステートに移行する。このようにストップクロックステートからの復帰には時間がかかる問題がある。
【００２０】
以上のように、ストップグラントステートは、ノーマルステートに比べ非常にローパワーであり、且つＳＴＰＣＬＫ＃信号によってノーマルステート、つまり命令実行状態に高速に復帰できるという特徴を持っている。このため、このシステムでは、ＣＰＵ動作速度を低下させるための機能として、ストップグラントステートを利用している。
【００２１】
さらに、図１のＣＰＵ１１は、次のようなシステム管理機能を備えている。
【００２２】
すなわち、ＣＰＵ１１は、アプリケーションプログラムやＯＳなどのプログラムを実行するためのリアルモード、プロテクトモード、仮想８６モードの他、システム管理モード（ＳＭＭ；Ｓｙｓｔｅｍ  Ｍａｎａｇｅｍｅｎｔ  ｍｏｄｅ）と称されるシステム管理または電力管理専用のシステム管理プログラムを実行するための動作モードを有している。
【００２３】
リアルモードは、最大で１Ｍバイトのメモリ空間をアクセスできるモードであり、セグメントレジスタで表されるベースアドレスからのオフセット値で物理アドレスが決定される。プロテクトモードは１タスク当たり最大４Ｇバイトのメモリ空間をアクセスできるモードであり、ディスクプリタテーブルと称されるアドレスマッピングテーブルを用いてリニアアドレスが決定される。このリニアアドレスは、ページングによって最終的に物理アドレスに変換される。仮想８６モードは、リアルモードで動作するように構成されたプログラムをプロテクトモードで動作させるためのモードであり、リアルモードのプログラムはプロテクトモードにおける１つのタスクとして扱われる。
【００２４】
システム管理モード（ＳＭＭ）は疑似リアルモードであり、このモードでは、ディスクプリタテーブルは参照されず、ページングも実行されない。システム管理割込み（ＳＭＩ；Ｓｙｓｔｅｍ  Ｍａｎａｇｅｍｅｎｔ  Ｉｎｔｅｒｒｕｐｔ）がＣＰＵ１１に発行された時、ＣＰＵ１１の動作モードは、リアルモード、プロテクトモード、または仮想８６モードから、ＳＭＭにスイッチされる。ＳＭＭでは、システム管理またはパワーセーブ制御専用のシステム管理プログラムが実行される。
【００２５】
ＳＭＩはマスク不能割込みＮＭＩの一種であるが、通常のＮＭＩやマスク可能割込みＩＮＴＲよりも優先度の高い、最優先度の割り込みである。このＳＭＩを発行することによって、システム管理プログラムとして用意された種々のＳＭＩサービスルーチンを、実行中のアプリケーションプログラムやＯＳ環境に依存せずに起動することができる。このコンピュータシステムにおいては、ＯＳ環境に依存せずに、システム内部のデバイスのクーリングを実現するために、このＳＭＩを利用して電動ファン２１の回転制御およびＣＰＵ１１の動作速度制御が行われる。
【００２６】
システムコントローラ１２は、このシステム内のメモリやＩ／Ｏを制御するためのゲートアレイであり、ここにはＣＰＵ１１へのＳＭＩ信号およびＳＴＰＣＬＫ＃信号の発生を制御するためのハードウェアが組み込まれている。
【００２７】
システムメモリ１３は、オペレーティングシステム、処理対象のアプリケーションプログラム、およびアプリケーションプログラムによって作成されたユーザデータ等を格納する主メモリである。ＳＭＲＡＭ（Ｓｙｓｔｅｍ  Ｍａｎａｇｅｍｅｎｔ  ＲＡＭ）５０は、メインメモリ１３のアドレス３００００Ｈから３ＦＦＦＦＨまでのアドレス空間にマッピングされるオ−バレイであり、ＳＭＩ信号がＣＰＵ１１に入力された時だけアクセス可能となる。ここで、ＳＭＲＡＭがマッピングされるアドレス範囲は固定ではなく、ＳＭＢＡＳＥと称されるレジスタによって４ＧバイトのＣＰメモリアドレス空間の任意の場所に変更することが可能である。ＳＭＢＡＳＥレジスタは、ＳＭＭ中でないとアクセスできない。ＳＭＢＡＳＥレジスタの初期値は、アドレス３０００Ｈである。
【００２８】
ＣＰＵ１１がＳＭＭに移行する時には、ＣＰＵステータス、つまりＳＭＩが発生された時のＣＰＵ１１のレジスタ等が、ＳＭＲＡＭ５０にスタック形式でセーブされる。このＳＭＲＡＭ５０には、ＢＩＯＳ−ＲＯＭ１４のシステム管理プログラムを呼び出すための命令が格納されている。この命令は、ＣＰＵ１１がＳＭＭに入った時に最初に実行される命令であり、この命令実行によってシステム管理プログラムに制御が移る。
【００２９】
ＢＩＯＳ−ＲＯＭ１４は、ＢＩＯＳ（Ｂａｓｉｃ  Ｉ／Ｏ  Ｓｙｓｔｅｍ）を記憶するためのものであり、プログラム書き替えが可能なようにフラッシュメモリによって構成されている。ＢＩＯＳは、リアルモードで動作するように構成されている。このＢＩＯＳには、システムブート時に実行されるＩＲＴルーチンと、各種Ｉ／Ｏデバイスを制御するためのデバイスドライバと、システム管理プログラムが含まれている。システム管理プログラムは、ＳＭＭにおいて実行されるプログラムであり、ＣＰＵ動作速度の制御や電動ファン２１の回転制御を行うためのＳＭＩ処理ルーチンなどを含むＳＭＩプログラムと、実行するＳＭＩルーチンを決定するためのＳＭＩハンドラ等を含んでいる。
【００３０】
ＳＭＩハンドラは、ＳＭＩが発生した時にＣＰＵ１１によって最初に呼び出されるＢＩＯＳ内のプログラムであり、これによって、ＳＭＩの発生要因のチェックや、その発生要因に対応したＳＭＩルーチンの呼び出しが実行される。
【００３１】
ＲＴＣ１５は、独自の動作用電池を持つ時計モジュールであり、その電池から常時電源が供給されるＣＭＯＳメモリを有している。このＣＭＯＳメモリは、システム動作環境を示すセットアップ情報の格納等に利用される。このセットアップ情報には、冷却モードとして“Ｐｅｒｆｏｒｍａｎｃｅ”モードと“Ｑｕｉｅｔ”モードの２つのモードが用意されており、どちらのモードを使用するかはユーザが指定することができる。
【００３２】
“Ｐｅｒｆｏｒｍａｎｃｅ”モードは、ＣＰＵ１１の動作性能を低下させずに、システム内部の温度を低下するモードである。このモードでは、温度センサＡ，Ｂ，Ｃそれぞれによって検出されたＣＰＵ温度、ＨＤＤ温度、ＰＣカードコントローラ周辺温度に基づいて、ファン１９の回転・停止のタイミング、および回転速度が制御される。
【００３３】
“Ｑｕｉｅｔ”モードは、ノイズ源となる電動ファン２１を使用せずに、ＣＰＵ１１の発熱量を低下させるモードである。このモードでは、ＣＰＵ１１の温度が所定温度以上に上がると、ＣＰＵ１１の動作速度が低下される。これは、定期的にＣＰＵ１１をストップグラントステートに設定して、ＣＰＵ１１を断続的に動作させる事によって行われる。
【００３４】
また、このシステムでは、これらモードを所定のキー入力操作によって切り替えるためのホットキー機能が設けられている。ここで、ホットキーとは、システム動作環境の設定／変更のために行う各種動作モード切り替え等をＣＰＵ１１に対して直接的に要求するためのキーであり、キーボード上の特定の幾つかのキーがそのホットキーとして割り当てられている。このホットキーが操作されると、ＣＰＵ１１によって提供されるシステム動作環境の設定／変更に係わる幾つかの機能が直接呼び出され、実行される。このホットキー処理においては、通常のキーデータ送信の場合とは異なり、ＣＰＵ１１にＳＭＩが発行され、これによってホットキーが押されたことがＣＰＵ１１に通知される。ＳＭＩを利用したホットキーの技術は、例えば本出願人によって出願された特願平４−２７２４７９号公報に記載されている。
【００３５】
電源コントローラ１６は、電源回路を制御してシステム内の各ユニットに電源を供給するものであり、１チップマイクロコンピュータを内蔵している。この電源コントローラ１６は、リセットスイッチのオン／オフ、メイン電源スイッチのオン／オフ、バッテリ残存容量、ＡＣアダプタの接続の有無、ディスプレイパネル開閉検出スイッチのオン／オフなどの状態管理を初め、温度センサＡ，Ｂ，Ｃを利用してＣＰＵ１１、ＨＤＤ１９、およびＰＣカードコントローラ２０の温度を監視している。
【００３６】
この場合、温度センサＡ，Ｂ，Ｃには、ＣＰＵ１１、ＨＤＤ１９、およびＰＣカードコントローラ２０の温度特性にそれぞれあった閾値温度が設定されている。すなわち、温度センサＡにはファン回転開始を示す閾値温度Ａ２とファン回転停止を閾値温度Ａ１（Ａ２＞Ａ１）が割り当てられており、同様に、温度センサＢにはファン回転開始を示す閾値温度Ｂ２とファン回転停止を示す閾値温度Ｂ１（Ｂ２＞Ｂ１）が、温度センサＣにはファン回転開始を示す閾値温度Ｃ２とファン回転停止を示す閾値温度Ｃ１（Ｃ２＞Ｃ１）が割り当てられている。ファン回転開始温度よりもファン回転停止温度が低いのは、十分なクーリングを行った後にファンの回転を停止するためである。これら各ファン回転開始温度およびファン回転停止温度の値はシステムパワーオン時にＩＲＴによって電源コントローラ１６に設定される。
【００３７】
システム内で最も高温となるのはＣＰＵ１１であり、次に、ＨＤＤ１６、ＰＣカード周辺と続く。このため、閾値温度の温度関係は、Ａ２＞Ｂ２＞Ｃ２、Ａ１＞Ｂ１＞Ｃ１となっている。
【００３８】
電源コントローラ１６は、温度センサＡ，Ｂ，Ｃそれぞれによる検出温度と、対応するファン回転開始温度Ａ２，Ｂ２，Ｃ２およびファン回転停止温度Ａ１，Ｂ１，Ｃ１とを常時比較し、ある温度センサがファン回転開始温度またはファン回転停止温度に達したとき、ＳＭＩにてそれをＣＰＵ１１に通知する。
【００３９】
この場合、ＳＭＩを利用した電源コントローラ１６からＣＰＵ１１への情報通知は、次の手順で行われる。
【００４０】
ここでは、ＣＰＵ１１の温度に着目し、温度センサＡを例に取る。温度センサＡによって検出されたＣＰＵ１１の温度がＡ２以上になった場合や、Ａ１以下になった場合、電源コントローラ１６からＣＰＵ１１にＳＭＩが発行される。この場合、電源コントローラ１６は、まず、温度センサＡのＩＤと、温度上昇によるＳＭＩか温度低下によるＳＭＩかを示す情報を通信用ゲートアレイ１８のステータスレジスタにセットする。次いで、電源コントローラ１６は、ＳＭＩ発生フラグを通信用ゲートアレイ１８のＳＭＩ発生用レジスタにセットする。これにより、通信用ゲートアレイ１８からＳＭＩ（ここでは、ＰＳ−ＳＭＩ）が発生され、それがシステムコントローラ１２を介してＣＰＵ１１に供給される。
【００４１】
ＳＭＩルーチンは、通信用ゲートアレイ１８のステータスレジスタから温度センサＩＤ、および温度上昇／下降情報を読みとる。温度センサＩＤから温度センサＡであることが識別される。また温度上昇／下降情報から温度上昇によるＳＭＩか、下降によるＳＭＩであるかが識別される。温度センサＡによって検知された温度上昇に起因するＳＭＩである場合には、ＳＭＩルーチンは、ＣＰＵ１１、ＨＤＤ１９、ＰＣカードコントローラ２０それぞれに対応するクーリング方式Ａ，Ｂ，Ｃの中で、ＣＰＵ１１の冷却に最も好適なクーリング方式Ａを選択し、そのクーリング方式Ａで定義された回転速度でファン２１を回転させる。ここで、ファン２１の回転速度はクーリング方式Ａ，Ｂ，Ｃの順に低く設定されている。もしもクーリング方式Ａの実施中に温度センサＢによるＳＭＩが発生したとしても、クーリング方式Ａはクーリング方式Ｂよりも強力な空冷であるため、クーリング方式Ａが優先となり、クーリング方式Ｂは実施されない。クーリング方式Ｂ，Ｃが有効となるのは、温度センサＡによって検出されたＣＰＵ１１の温度がＡ１以下となることによって、クーリング方式Ａが解除された後である。
【００４２】
同様に、クーリング方式Ｂの実施中に温度センサＣによるＳＭＩが発生しても、クーリング方式Ｂを優先し、クーリング方式Ｃは実施しない。クーリング方式Ｃが有効となるのは、温度センサＢによって検出されたＨＤＤ１９の温度がＢ１以下となることによって、クーリング方式Ｂが解除された後である。
【００４３】
キーボードコントローラ１７は、コンピュータ本体に組み込まれている標準装備の内蔵キーボードを制御するためのものであり、内蔵キーボードのキーマトリクスをスキャンして押下キーに対応する信号を受けとり、それを所定のキーコード（スキャンコード）に変換する。キーボードコントローラ１７は２つの通信ポートＰ１，Ｐ２を有しており、通信ポートＰ１はシステムバス１に接続され、通信ポートＰ２はゲートアレイ１８に接続されている。
【００４４】
内蔵キーボード上に設けられているホットキーに対応するキーコード（例えば、Ｆｎ  ＋  Ｆ２キー）は、通信ポートＰ２からゲートアレイ１８に送られ、そのゲートアレイ１８内のステータスレジスタにセットされる。この場合、ゲートアレイ１７からはＳＭＩ（ＨＯＴキーＳＭＩ）が発生され、これによってＣＰＵ１１にホットキーがオンされたことが通知される。
【００４５】
一方、ホットキー以外の他のキーコードは、通常通り、通信ポートＰ１からシステムバス１に出力される。
【００４６】
空冷用電動ファン２１は排気用ファンであり、これによりコンピュータ本体に設けられた吸気口から排気口に向かって外気が導入され、コンピュータ本体内の暖かい空気が外部に排出される。このファン２２の回転数は、ＣＰＵ１１の制御の下、駆動制御回路２０によって可変制御される。
【００４７】
温度センサＡ，Ｂ，Ｃは、前述したようにそれぞれＣＰＵ１１、ＨＤＤ１９、およびＰＣカード周辺の温度を検出するためのものであり、各々サーミスタなどによって構成されている。
【００４８】
次に、システムコントローラ１２に設けられた、ＳＭＩおよびＳＴＰＣＬＫ＃の発生制御のためのハードウェア構成について説明する。
【００４９】
システムコントローラ１２においては、ＣＰＵ１１に外部クロックＣＬＫを供給するクロック発生回路１２１、ＣＰＵ１１にＳＭＩを供給するＳＭＩ発生回路１２２、ＳＴＰＣＬＫ＃の発生制御を行うストップクロック制御回路１２３、ＳＴＰＣＬＫ＃の発生間隔を制御するストップクロックインターバルタイマ１２４、ＣＰＵ１１をストップグラントステートに保持する期間を制御するストップクロックホールドタイマ１２５、およびこれらタイマ１２４，１２５のタイムアウトカウント値をプログラマブルにするためのレジスタ群１２６が設けられている。
【００５０】
このシステムでは、ＣＰＵ１１の動作速度低下を実現するために、ストップグラントステートとノーマルステートとをある時間間隔で交互に繰り返すための制御が行われる。以下、この制御動作について、図３を参照して説明する。
【００５１】
ストップクロックインターバルタイマ１２４は、レジスタ群１２６にストップクロックインターバル時間がセットされると、その時間毎に定期的にタイムアウト出力を発生する。このタイムアウト出力に応答して、ストップクロック制御回路１２３はＳＴＰＣＬＫ＃をアクティブステートに設定する。また、ストップクロックホールドタイマ１２５は、ＳＴＰＣＬＫ＃がアクティブステートに設定されてから、レジスタ群１２６にセットされたホールド時間だけ経過した時にタイムアウト出力を発生する。このタイムアウト出力に応答して、ストップクロック制御回路１２３はＳＴＰＣＬＫ＃をインアクティブステートに戻す。
【００５２】
ＳＴＰＣＬＫ＃がアクティブステートに設定されると、ＣＰＵ１１はグラントサイクルを実行した後、ノーマルステートからストップグラントステートに移行する。そして、ＳＴＰＣＬＫ＃がインアクティブステートに戻されるまで、ストップグラントステートに維持される。
【００５３】
従って、ＣＰＵ１１はストップグラントステートとノーマルステートとをある時間間隔で交互に繰り返すので、その平均動作速度が低下される。この場合、動作速度の低下の割合は、ストップクロックインターバル時間とホールド時間との比によって決定される。
【００５４】
次に、図４乃至図６を参照して、このシステムに用意された２つの冷却モード（“Ｐｅｒｆｏｒｍａｎｃｅ”モード、“Ｑｕｉｅｔ”モード）について詳細に説明する。
【００５５】
図４には、このシステムで使用されるセットアップ画面の一例が示されている。
【００５６】
図示のように、このセットアップ画面には、システム動作環境を規定するための設定情報として、メモリに関する設定情報、ディスプレイに関する設定情報、ハードディスクに関する設定情報、Ｉ／Ｏポートに関する設定情報、パスワード登録に関する設定情報、およびその他の設定情報（ＯＴＨＥＲＳ）が表示される。このセットアップ画面はＢＩＯＳ−ＲＯＭのセットアップルーチンなどによって提供されるものであり、キーボードからの所定のコマンド入力によって呼び出すことができ、このセットアップ画面上で設定した動作環境にポータブルコンピュータを設定することができる。
【００５７】
このセットアップ画面におけるその他の設定情報（ＯＴＨＥＲＳ）内には、バッテリセーブモード（Ｂａｔｔｅｒｙ  Ｓａｖｅ  Ｍｏｄｅ）の設定状態を規定するための複数の項目が含まれている。このシステムでは、バッテリセーブモードとして、フルパワーモード（Ｆｕｌｌ  Ｐｏｗｅｒ）、ローパワーモード（Ｌｏｗ  Ｐｏｗｅｒ）、ユーザセッティングモード（Ｕｓｅｒ  Ｓｅｔｔｉｎｇ）の３つのモードがある。
【００５８】
（１）フルパワーモードは高性能動作のための動作モードであり、フルパワーモードにおける環境設定の内容は、図５（ａ）のようなウインドウ表示によってユーザに提示される。すなわち、フルパワーモードにおいては、処理速度は高速（Ｈｉｇｈ）に設定され、その他、ＣＰＵスリープ機能などは無効状態（Ｄｉｓａｂｌｅ）に設定される。
【００５９】
また、このフルパワーモードにおいては、冷却モード（Ｃｏｏｌｉｎｇ  Ｍｅｔｈｏｄ）は“Ｐｅｒｆｏｒｍａｎｃｅ”モードに設定される。
【００６０】
（２）ロウパワーモードは、バッテリ使用時間を延ばすための低消費電力化のための動作モードであり、ロウパワーモードにおける環境設定の内容は、図５（ｂ）のようなウインドウ表示によってユーザに提示される。すなわち、ロウパワーモードにおいては、処理速度は低速（Ｌｏｗ）に設定され、その他、ＣＰＵスリープ機能などは有効状態（Ｅｎａｂｌｅ）に設定される。
【００６１】
また、このロウパワーモードにおいては、冷却モード（Ｃｏｏｌｉｎｇ  Ｍｅｔｈｏｄ）は“Ｑｕｉｅｔ”モードに設定される。
【００６２】
（３）ユーザセッティングモードは、ユーザがセットアッププログラムで設定した各バッテリセーブオプション情報にしたがって動作環境を規定するモードであり、図５（Ｃ）のようなウインドウ上で項目毎に動作状態を設定することがでできる。この場合、冷却モード（Ｃｏｏｌｉｎｇ  Ｍｅｔｈｏｄ）については、“Ｐｅｒｆｏｒｍａｎｃｅ”モードと“Ｑｕｉｅｔ”モードのどちらを選択することもできる。
【００６３】
これら３つのバッテリセーブモードと冷却モード（Ｃｏｏｌｉｎｇ  Ｍｅｔｈｏｄ）との関係を図６に示す。
【００６４】
図６から分かるように、バッテリセーブモードと冷却モードとは互いに連係されており、ＡＣ電源使用時に利用される事が多いフルパワーモードにおいては、Ｃｏｏｌｉｎｇ  ＭｅｔｈｏｄとしてＣＰＵ速度を優先した“Ｐｅｒｆｏｒｍａｎｃｅ”モードが利用される。一方、バッテリ駆動時に使用される事が多いローパワーモードにおいては、Ｃｏｏｌｉｎｇ  Ｍｅｔｈｏｄとしては低消費電力を優先した“Ｑｕｉｅｔ”モードが利用される。
【００６５】
これら３つのモード（フルパワーモード、ロウパワーモード、ユーザセッティングモード）は、セットアップ画面を利用せずに、前述したホットキー操作（Ｆｎ＋Ｆ２）によって順番に切り替える（フルパワーモード、ロウパワーモード、ユーザセッティングモードの順にトグルさせる）こともできる。
【００６６】
次に、“Ｐｅｒｆｏｒｍａｎｃｅ”モードと“Ｑｕｉｅｔ”モードそれぞれにおける冷却動作について説明する。
【００６７】
（１）“Ｑｕｉｅｔ”モードは、ノイズ源となる空冷ファン２１を用いずにシステムを冷却するモードであり、温度センサＡによって検知されたＣＰＵ１１の温度に基づいて、ＣＰＵ１１の動作速度が制御される。この場合、前述の閾値温度Ａ２はＣＰＵ動作スピードダウン要求を示すＳＭＩを発行する温度として用いられ、またＡ１はＣＰＵ動作スピードアップ要求を示すＳＭＩを発行する温度として用いられる。
【００６８】
（２）“Ｐｅｒｆｏｒｍａｎｃｅ”モードにおいては、空冷ファン２１を用いたクーリングが実行される。この場合、空冷ファン２１の回転速度は、以下のように４段階に可変設定される。
【００６９】
０：停止
１：動作弱
２：動作中
３：動作強
どの回転速度を用いるかは、前述したようにＳＭＩ発生要因となった温度センサＩＤによって決定される。
【００７０】
温度センサＡ，Ｂ，Ｃそれぞれに設定された閾値温度と、実施されるクーリング方式、および空冷ファン２１の回転速度との対応関係を図７に示す。
【００７１】
図７から分かるように、温度センサＡによってＣＰＵ温度が閾値温度Ａ２以上になったことが検出された場合には、ＣＰＵ１１の温度特性にあったクーリング方式Ａが実施される。この場合の空冷ファン２１の回転速度は、ｆａｎ＝３、つまり「動作強」に設定される。クーリング方式Ａの実施は、温度センサＡによってＣＰＵ温度が閾値温度Ａ１以下になったことが検出された場合に解除される。この場合の空冷ファン２１の回転速度は、ｆａｎ＝０、つまり「停止」される。同様に、温度センサＢによってＨＤＤ温度が閾値温度Ｂ２以上になったことが検出された場合には、ＨＤＤ１９の温度特性にあったクーリング方式Ｂが実施される。この場合の空冷ファン２１の回転速度は、ｆａｎ＝２、つまり「動作中」に設定される。クーリング方式Ｂの実施は、温度センサＢによってＨＤＤ温度が閾値温度Ｂ１以下になったことが検出された場合に解除される。この場合の空冷ファン２１の回転速度は、ｆａｎ＝０、つまり「停止」される。
【００７２】
また、温度センサＣによってＰＣカード周辺温度が閾値温度Ｃ２以上になったことが検出された場合には、ＰＣカードコントローラ周辺の温度特性にあったクーリング方式Ｃが実施される。この場合の空冷ファン２１の回転速度は、ｆａｎ＝１、つまり「動作弱」に設定される。クーリング方式Ｃの実施は、温度センサＣによってＰＣカード周辺温度が閾値温度Ｃ１以下になったことが検出された場合に解除される。この場合の空冷ファン２１の回転速度は、ｆａｎ＝０、つまり「停止」される。
【００７３】
図８には、システム内の温度上昇時および下降時におけるファン回転速度の変化の様子が示されている。
【００７４】
ここでは、閾値温度の上下関係は、
Ａ２＞Ｂ２＞Ａ１＞Ｃ２＞Ｂ１＞Ｃ１
である場合を想定している。この場合、もし温度センサＣ，Ｂ，Ａの順で温度検知対象デバイス周辺の温度がＣ２，Ｂ２，Ａ２以上になったことが検出されたと仮定すると、ファン回転速度は、図８（Ａ）のように、ｆａｎ＝０，１，２，３の順で段階的に速くなる。
【００７５】
一方、各デバイスの温度低下時においては、ファン回転速度は原理的には図８（Ｂ）のように変化する。すなわち、ｆａｎ＝３のクーリング（クーリング方式Ａ）はクーリング方式Ｂ（ｆａｎ＝２）よりも優先であるため、クーリング方式Ａが一旦実施されると、ＣＰＵ温度がＡ１以下になるまで他のクーリング方式への切り替えは行われない。同様に、ｆａｎ＝２のクーリング（クーリング方式Ｂ）はクーリング方式Ｃ（ｆａｎ＝１）よりも優先であるため、クーリング方式Ｂが一旦実施されると、ＨＤＤ温度がＢ１以下になるまでクーリング方式Ｃへの切り替えは行われない。
【００７６】
図９には、“Ｐｅｒｆｏｒｍａｎｃｅ”モードにおけるクーリング制御の第２の例が示されている。
【００７７】
ここでは、ＣＰＵ温度が閾値温度Ａ２以上になった場合には、空冷ファン２１を用いたクーリング（ｆａｎ＝３）とＣＰＵ動作速度の低下（ｌｏｗ）とが組み合わされ、ＨＤＤ温度が閾値温度Ｂ２以上になった場合、およびＰＣカード周辺温度が閾値温度Ｃ２以上になった場合のクーリングは前述の例と同様に空冷ファン２１の制御のみで行われる。これにより、ＣＰＵ１１が過熱したときは最も冷却効果の高いクーリング方式を適用できるようになり、いち早くＣＰＵ１１を冷却することが可能となる。図９のクーリング制御を行った場合におけるシステム内の温度上昇時および下降時におけるファン回転速度の変化の様子を図１０（Ａ），（Ｂ）に示す。
【００７８】
次に、図１１のフローチャートを参照して、ＳＭＩルーチンによって実行される“Ｐｅｒｆｏｒｍａｎｃｅ”モードにおけるクーリング制御処理の手順について説明する。
【００７９】
ＳＭＩルーチンは、電源コントローラ１６からのＳＭＩによって起動されると、まず、通信用ゲートアレイ１８のステータスレジスタから温度センサＩＤ、および温度上昇／下降情報を読みとる（ステップＳ１０１）。
【００８０】
ＳＭＩルーチンは、読みとった温度センサＩＤから温度センサＡによるＳＭＩであるか否かを調べ（ステップＳ１０２）、温度センサＡによるＳＭＩであれば、温度上昇／下降のいずれに起因するＳＭＩであるかを判断する（ステップＳ１０３）。温度上昇に伴う温度センサＡからのＳＭＩであれば、ＳＭＩルーチンは、クーリング方式Ａの設定（ｆａｎ＝３、または  ｆａｎ＝３、およびＣＰＵ＝ｌｏｗ）を行う（ステップＳ１０４）。一方、温度下降に伴う温度センサＡからのＳＭＩであれば、ＳＭＩルーチンは、クーリング方式Ａの設定解除（ｆａｎ＝０、または  ｆａｎ＝０、およびＣＰＵ＝ｈｉｇｈ）を行う（ステップＳ１０５）。
【００８１】
温度センサＡによるＳＭＩではない場合には、まず、クーリング方式Ａが実行中であるか否かが調べられ（ステップＳ１０６）、実行中であれば、その時点でＳＭＩルーチンは終了する。これにより、クーリング方式Ａの実行中においては、クーリング方式Ｂ，Ｃへの切り替えは禁止される。
【００８２】
クーリング方式Ａが実行中でなければ、ステップＳ１０１で読みとった温度センサＩＤから温度センサＢによるＳＭＩであるか否かを調べ（ステップＳ１０７）、温度センサＢによるＳＭＩであれば、温度上昇／下降のいずれに起因するＳＭＩであるかを判断する（ステップＳ１０８）。温度上昇に伴う温度センサＢからのＳＭＩであれば、ＳＭＩルーチンは、クーリング方式Ｂの設定（ｆａｎ＝２）を行う（ステップＳ１０９）。一方、温度下降に伴う温度センサＢからのＳＭＩであれば、ＳＭＩルーチンは、クーリング方式Ｂの設定解除（ｆａｎ＝０）を行う（ステップＳ１１０）。
【００８３】
温度センサＢによるＳＭＩではない場合には、クーリング方式Ｂが実行中であるか否かが調べられ（ステップＳ１１１）、実行中であれば、その時点でＳＭＩルーチンは終了する。これにより、クーリング方式Ｂの実行中においては、クーリング方式Ｃへの切り替えは禁止される（クーリング方式Ａへの切り替えは可能）。
【００８４】
クーリング方式Ｂが実行中でなければ、ステップＳ１０１で読みとった温度センサＩＤから温度センサＣによるＳＭＩであるか否かを調べ（ステップＳ１１２）、温度センサＣによるＳＭＩであれば、温度上昇／下降のいずれに起因するＳＭＩであるかを判断する（ステップＳ１１３）。温度上昇に伴う温度センサＣからのＳＭＩであれば、ＳＭＩルーチンは、クーリング方式Ｃの設定（ｆａｎ＝１）を行う（ステップＳ１１４）。一方、温度下降に伴う温度センサＣからのＳＭＩであれば、ＳＭＩルーチンは、クーリング方式Ｃの設定解除（ｆａｎ＝０）を行う（ステップＳ１１５）。
【００８５】
図１２には、図１１のクーリング制御を行った場合におけるシステム内の温度変化の一例が示されている。
【００８６】
図１２において、実線はＣＰＵ温度、一点鎖線はＨＤＤ温度、二点鎖線はＰＣカード周辺温度を示している。なお、この図１２においては、その説明を簡単にするために、ＣＰＵ温度、ＨＤＤ温度、ＰＣカード周辺温度間の相関関係については無視している。
【００８７】
図１２の例においては、まず、最初に、ＣＰＵ温度が閾値温度Ａ２に達っすることにより、クーリング方式Ａによるクーリングが開始されている。クーリング方式Ａによるクーリング中にＨＤＤ温度がＢ２に達するが、クーリング方式Ａによるクーリングはそのまま維持される。そして、ＣＰＵ温度が閾値温度Ａ１以下になった時点でクーリング方式Ａの設定が解除される。この後、ＨＤＤ温度がＢ２に達すると、クーリング方式Ｂによるクーリングが開始される。クーリング方式Ｂによるクーリング中にＣＰＵ温度が閾値温度Ａ２に再び達っすると、クーリング方式Ｂからクーリング方式Ａへの切り替えが行われる。
【００８８】
以上のように、第１実施形態においては、ＣＰＵ１１、ＨＤＤ１９、およびＰＣカードコントローラ２０それぞれの近くに温度センサＡ，Ｂ，Ｃを設け、それらＣＰＵ１１、ＨＤＤ１９、およびＰＣカードコントローラ２０毎に異なる閾値温度とクーリング方式を割り当てることにより、冷却が必要なデバイスそれぞれに合った適切なファン回転速度でそのデバイスのクーリングを行うことができる。
【００８９】
よって、従来のようにファン回転を開始するＣＰＵ温度を、ＣＰＵの温度特性で決まる本来のファン回転開始温度よりも低く設定するといった制御を行うことなく、ＨＤＤ１９、およびＰＣカード周辺の冷却を行うことが可能となり、無駄に空冷ファン２１に回転させることなく、デバイス個々の過熱対策を講じることができるようになる。
【００９０】
次に、この発明の第２実施形態について説明する。
【００９１】
図１３には、この発明の第２実施形態に係るパーソナルコンピュータのシステム構成が示されている。
【００９２】
このシステムにおいては、３つの空冷用電動ファン２１ａ，２１ｂ，２１ｃが設けられており、第１実施形態における多段階のファン回転数制御の代わりに、同時に駆動するファン数を可変制御する構成である。
【００９３】
すなわち、ＣＰＵ１１、ＨＤＤ１９、およびＰＣカードコントローラ２０それぞれの近くに温度センサＡ，Ｂ，Ｃを設け、それらＣＰＵ１１、ＨＤＤ１９、およびＰＣカードコントローラ２０毎に異なる閾値温度とクーリング方式を割り当てる点は第１実施形態と同じであり、異なるのは、冷却が必要なデバイスそれぞれに合った冷却強度を、同時に駆動するファン数を可変制御することで行う点だけである。
【００９４】
次に、図１４を参照して、第２実施形態における“Ｐｅｒｆｏｒｍａｎｃｅ”モードと“Ｑｕｉｅｔ”モードそれぞれにおける冷却動作について説明する。
【００９５】
（１）“Ｑｕｉｅｔ”モードは、ノイズ源となる空冷ファン２１ａ，２１ｂ，２１ｃを用いずにシステムを冷却するモードであり、第１実施形態と同様にして、温度センサＡによって検知されたＣＰＵ１１の温度に基づいてＣＰＵ１１の動作速度が制御される。この場合、前述の閾値温度Ａ２はＣＰＵ動作スピードダウン要求を示すＳＭＩを発行する温度として用いられ、またＡ１はＣＰＵ動作スピードアップ要求を示すＳＭＩを発行する温度として用いられる。
【００９６】
（２）“Ｐｅｒｆｏｒｍａｎｃｅ”モードにおいては、空冷ファン２１ａ，２１ｂ，２１ｃを選択的に用いたクーリングが実行される。この場合、同時に駆動される空冷ファンの数は、以下のように４段階に可変設定される。
【００９７】
０：全停止
１：１つ動作
２：２つ動作
３：３つ動作
同時に何個の空冷ファンを駆動するかは、ＳＭＩ発生要因となった温度センサＩＤなどに基づいて決定される。
【００９８】
温度センサＡ，Ｂ，Ｃそれぞれに設定された閾値温度と、実施されるクーリング方式、および同時に駆動される空冷ファン数との対応関係を図１５に示す。
【００９９】
図１５から分かるように、温度センサＡによってＣＰＵ温度が閾値温度Ａ２以上になったことが検出された場合には、ＣＰＵ１１の温度特性にあったクーリング方式Ａが実施される。この場合の同時駆動ファン数は、ｆａｎ＝３、つまり「３つ動作」に設定される。クーリング方式Ａの実施は、温度センサＡによってＣＰＵ温度が閾値温度Ａ１以下になったことが検出された場合に解除される。この場合の同時駆動ファン数は、ｆａｎ＝０、つまり「全停止」にされる。
【０１００】
同様に、温度センサＢによってＨＤＤ温度が閾値温度Ｂ２以上になったことが検出された場合には、ＨＤＤ１９の温度特性にあったクーリング方式Ｂが実施される。この場合の同時駆動空冷ファン数は、ｆａｎ＝２、つまり「２つ動作」に設定される。クーリング方式Ｂの実施は、温度センサＢによってＨＤＤ温度が閾値温度Ｂ１以下になったことが検出された場合に解除される。この場合の同時駆動空冷ファン数は、ｆａｎ＝０、つまり「全停止」にされる。
【０１０１】
また、温度センサＣによってＰＣカード周辺温度が閾値温度Ｃ２以上になったことが検出された場合には、ＰＣカードコントローラ周辺の温度特性にあったクーリング方式Ｃが実施される。この場合の同時駆動空冷ファン数は、ｆａｎ＝１、つまり「１つ動作」に設定される。クーリング方式Ｃの実施は、温度センサＣによってＰＣカード周辺温度が閾値温度Ｃ１以下になったことが検出された場合に解除される。この場合の同時駆動空冷ファン数は、ｆａｎ＝０、つまり「全停止」にされる。
【０１０２】
閾値温度の上下関係は、
Ａ２＞Ｂ２＞Ａ１＞Ｃ２＞Ｂ１＞Ｃ１
である。この場合、もし温度センサＣ，Ｂ，Ａの順で温度検知対象デバイス周辺の温度がＣ２，Ｂ２，Ａ２以上になったことが検出されたと仮定すると、同時駆動ファン数は、ｆａｎ＝０，１，２，３の順で段階的に増える。
【０１０３】
一方、各デバイスの温度低下時においては、ｆａｎ＝３のクーリング（クーリング方式Ａ）はクーリング方式Ｂ（ｆａｎ＝２）よりも優先であるため、クーリング方式Ａが一旦実施されると、ＣＰＵ温度がＡ１以下になるまで他のクーリング方式への切り替えは行われない。同様に、ｆａｎ＝２のクーリング（クーリング方式Ｂ）はクーリング方式Ｃ（ｆａｎ＝１）よりも優先であるため、クーリング方式Ｂが一旦実施されると、ＨＤＤ温度がＢ１以下になるまでクーリング方式Ｃへの切り替えは行われない。
【０１０４】
図１６には、第２実施形態における“Ｐｅｒｆｏｒｍａｎｃｅ”モード時のクーリング制御の第２の例が示されている。
【０１０５】
ここでは、ＣＰＵ温度が閾値温度Ａ２以上になった場合には、空冷ファン２１ａ，２１ｂ，２１ｃを用いたクーリング（ｆａｎ＝３）とＣＰＵ動作速度の低下（ｌｏｗ）とが組み合わされ、ＨＤＤ温度が閾値温度Ｂ２以上になった場合、およびＰＣカード周辺温度が閾値温度Ｃ２以上になった場合のクーリングは前述の例と同様に駆動する空冷ファン数の制御のみで行われる。これにより、ＣＰＵ１１が過熱したときは最も冷却効果の高いクーリング方式を適用できるようになり、いち早くＣＰＵ１１を冷却することが可能となる。
【０１０６】
次に、この発明の第３実施形態について説明する。
【０１０７】
図１７には、この発明の第３実施形態に係るパーソナルコンピュータのシステム構成が示されている。
【０１０８】
このシステムにおいては、３つの空冷用電動ファン２１ａ，２１ｂ，２１ｃがそれぞれＣＰＵ１１、ＨＤＤ１９、ＰＣカードコントローラ２０に隣接して設けられており、冷却対象デバイスに対応するファンを駆動制御する構成である。
【０１０９】
すなわち、温度センサＡによってＣＰＵ１１の冷却が必要であることが検出されるとファン２１ａが回転され、同様に、温度センサＢによってＨＤＤ１９の冷却が必要であることが検出されるとファン２１ｂが、温度センサＣによってＰＣカード周辺の冷却が必要であることが検出されるとファン２１ｃが回転される。このように、冷却対象デバイス毎に駆動するファンを変えることにより、各デバイス毎に最適なクーリングを実現できる。
【０１１０】
次に、図１８を参照して、第３実施形態における“Ｐｅｒｆｏｒｍａｎｃｅ”モードと“Ｑｕｉｅｔ”モードそれぞれにおける冷却動作について説明する。
【０１１１】
（１）“Ｑｕｉｅｔ”モードは、ノイズ源となる空冷ファン２１ａ，２１ｂ，２１ｃを用いずにシステムを冷却するモードであり、第１実施形態と同様にして、温度センサＡによって検知されたＣＰＵ１１の温度に基づいてＣＰＵ１１の動作速度が制御される。この場合、前述の閾値温度Ａ２はＣＰＵ動作スピードダウン要求を示すＳＭＩを発行する温度として用いられ、またＡ１はＣＰＵ動作スピードアップ要求を示すＳＭＩを発行する温度として用いられる。
【０１１２】
（２）“Ｐｅｒｆｏｒｍａｎｃｅ”モードにおいては、空冷ファン２１ａ，２１ｂ，２１ｃを選択的に用いたクーリングが実行される。この場合、空冷ファン２１ａ（ＦＡＮ−Ａ），２１ｂ（ＦＡＮ−Ｂ），２１ｃ（ＦＡＮ−Ｃ）の各々は、以下のようにオン・オフの２段階の動作制御が行われる。
【０１１３】
ＦＡＮ−Ａ    ０：全停止  １：動作
ＦＡＮ−Ｂ    ０：全停止  １：動作
ＦＡＮ−Ｃ    ０：全停止  １：動作
どのファンをオン・オフ制御するかは、ＳＭＩ発生要因となった温度センサＩＤなどに基づいて決定される。
【０１１４】
温度センサＡ，Ｂ，Ｃそれぞれに設定された閾値温度と、実施されるクーリング方式、およびオン・オフ制御される空冷ファンとの対応関係を図１９に示す。図１９から分かるように、温度センサＡによってＣＰＵ温度が閾値温度Ａ２以上になったことが検出された場合には、ＣＰＵ１１の温度特性にあったクーリング方式Ａが実施される。この場合のファン制御は、ＦＡＮ−Ａ＝１、つまりＦＡＮ−Ａが「動作」状態に設定される。クーリング方式Ａの実施は、温度センサＡによってＣＰＵ温度が閾値温度Ａ１以下になったことが検出された場合に解除される。この場合、ＦＡＮ−Ａ＝０、つまりＦＡＮ−Ａが「停止」状態に設定される。
【０１１５】
同様に、温度センサＢによってＨＤＤ温度が閾値温度Ｂ２以上になったことが検出された場合には、ＨＤＤ１９の温度特性にあったクーリング方式Ｂが実施される。この場合のファン制御は、ＦＡＮ−Ｂ＝１、つまりＦＡＮ−Ｂが「動作」状態に設定される。クーリング方式Ｂの実施は、温度センサＢによってＨＤＤ温度が閾値温度Ｂ１以下になったことが検出された場合に解除される。この場合のファン制御は、ＦＡＮ−Ｂ＝０、つまりＦＡＮ−Ｂが「停止」状態に設定される。
【０１１６】
また、温度センサＣによってＰＣカード周辺温度が閾値温度Ｃ２以上になったことが検出された場合には、ＰＣカードコントローラ周辺の温度特性にあったクーリング方式Ｃが実施される。この場合のファン制御は、ＦＡＮ−Ｃ＝１、つまりＦＡＮ−Ｃが「動作」状態に設定される。クーリング方式Ｃの実施は、温度センサＣによってＰＣカード周辺温度が閾値温度Ｃ１以下になったことが検出された場合に解除される。この場合のファン制御は、ＦＡＮ−Ｃ＝０、つまりＦＡＮ−Ｃが「停止」状態に設定される。
【０１１７】
閾値温度の上下関係は、
Ａ２＞Ｂ２＞Ａ１＞Ｃ２＞Ｂ１＞Ｃ１
である。この場合、もし温度センサＣ，Ｂ，Ａの順で温度検知対象デバイス周辺の温度がＣ２，Ｂ２，Ａ２以上になったことが検出されたと仮定すると、ファン２１ｃ（ＦＡＮ−Ｃ）、ファン２１ｂ（ＦＡＮ−Ｂ）、ファン２１ａ（ＦＡＮ−Ａ）の順で動作状態に設定される。したがって、デバイス毎のファン制御ではあっても、全体的には段階的にクーリング強度が切り替えられることになる。
【０１１８】
一方、各デバイスの温度低下時においては、クーリング方式間に優先度の関係はなく、ファン回転停止温度以下になったことが検出されたデバイス毎に、対応するファンの動作が停止される。
【０１１９】
図２０には、第３実施形態における“Ｐｅｒｆｏｒｍａｎｃｅ”モード時のクーリング制御の第２の例が示されている。
【０１２０】
ここでは、ＣＰＵ温度が閾値温度Ａ２以上になった場合には、空冷ファン２１ａを用いたクーリング（ＦＡＮ−Ａ＝１）とＣＰＵ動作速度の低下（ｌｏｗ）とが組み合わされ、ＨＤＤ温度が閾値温度Ｂ２以上になった場合、およびＰＣカード周辺温度が閾値温度Ｃ２以上になった場合のクーリングは前述の例と同様に対応するファンの駆動制御のみで行われる。これにより、ＣＰＵ１１が過熱したときは最も冷却効果の高いクーリング方式を適用できるようになり、いち早くＣＰＵ１１を冷却することが可能となる。
【０１２１】
以上のように、第１乃至第３実施形態においては、複数の温度センサＡ，Ｂ，Ｃを用いてデバイス毎にその周辺温度を管理する事により、過熱したデバイスに応じて最適なクーリング方式（ファン回転数、同時駆動ファン数、使用するファンの選択、ファン制御とＣＰＵ動作速度との組み合わせ）を選択できるようになり、より少ないノイズおよび電力消費で効率よくクーリングを行うことが可能となる。
【０１２２】
なお、以上の説明では、温度センサＡ，Ｂ，Ｃそれぞれに対して閾値温度の値が固定的に決められている場合について説明したが、これら各閾値温度の値をユーザが変更できるようにするためのユーザインターフェースを設けることが好ましい。以下、図２１および図２２を参照して、このユーザインタフェースについて説明する。
【０１２３】
図２１は、セットアップ画面で提供されるフルパワーモードにおける環境設定情報の内容が示されている。この画面は図５（ａ）に相当するものであるが、ここでは、さらに、クーリングレベルメニュー（Ｃｏｏｌｉｎｇ  Ｌｅｖｅｌ  Ｍｅｎｕｅ）という項目が追加されている。この項目は、冷却対象のデバイス毎にその冷却開始温度の値を変化させるためのものであり、「Ｎｏｒｍａｌ」においては、システムで予め決められた値の閾値温度（Ａ２，Ａ１，Ｂ２，Ｂ１，Ｃ２，Ｃ１）が用いられる。ユーザが画面上でクーリングレベルメニューを「Ｕｓｅｒ」に変更すると、図２２のクーリングレベルメニュー設定ウインドウが現れる。
【０１２４】
このクーリングレベルメニュー設定ウインドウには、図示のように、ＣＰＵ冷却開始温度、ＨＤＤ冷却開始温度、およびＰＣカード周辺の冷却開始温度をそれぞれ調整するための３つのスケールが表示される。各スケール上のカーソル位置はＮｏｒｍａｌモードでは右端に位置されている。このカーソル位置は、システムで規定されたデフォルトの冷却開始温度を示している。このデフォルトの冷却開始温度の値は、最高レベル、つまりシステム動作を保証できる範囲の中の最大値に設定されている。
【０１２５】
ユーザはカーソルを左に移動することにより、各デバイスの冷却開始温度をシステム値よりも低く設定し直すことができる。しかし、システム値よりも高く設定することはできない。高く設定すると、システム動作が保障されない危険があるためである。
【０１２６】
たとえば、ＣＰＵ冷却開始温度調整スケール上のカーソルをユーザがマウスドラッキング操作などによって左に移動させると、その冷却開始温度を示す閾値（Ａ２）の値は低下される。このＡ２の値の変化に連動して、Ａ２＞Ａ１の関係が維持されるように、Ａ１の値は自動的に変更される。
【０１２７】
また、ＣＰＵ冷却開始温度調整スケール上のカーソルが左端に移動されたときは、実際のＣＰＵ温度とは無関係に全てのファンが常時回転され続ける最大クーリングモードに設定される。この場合、ファンが１個の第１実施形態においては、温度センサＡ，Ｂ，Ｃによる検出温度とは無関係にファン２１が常に最大強度で回転されることになる。
【０１２８】
クーリングレベルメニュー設定ウインドウ上で変更されたクーリングレベルの内容、電源コントローラ１６に反映される。これにより、以降のＳＭＩの発生は、変更されたクーリングレベルに従って制御される。
【０１２９】
図２３には、第１実施形態のシステムの吸気機構の変形例が示されている。
【０１３０】
ここでは、コンピュータ本体に設けられた吸気口に隣接した位置に吸気用の電動ファン５００が追加されている。この電動ファン５００を回転することにより、空気循環が高められ、より強力なクーリングを実現することが可能となる。したがって、たとえば、この電動ファン５００を上述のクーリング方式Ａのときに回転させ、クーリング方式Ｂ，Ｃのときに電動ファン５００の回転を停止させることにより、ＣＰＵ温度が過熱して強力なクーリングが必要になったときにＣＰＵ温度を急速に低下させることが可能となる。このような吸気用ファン５００との連動によるクーリング制御は、第２および第３実施形態に対しても同様にして適用することができる。この場合、第３実施形態においては、ＣＰＵ冷却用のファン２１ａの回転・停止と連動して吸気用ファン５００の回転・停止を制御すればよい。
【０１３１】
また、クーリング方式Ａ，Ｂ，Ｃのいずれかが実施されているとき吸気用ファン５００を回転させ、どのクーリング方式も実行されてないときに吸気用ファン５００を停止させるといった制御を行ってもよい。
【０１３２】
【発明の効果】
以上説明したように、この発明によれば、デバイス毎に設けた温度センサによって各デバイスの温度を管理することにより、各デバイスの温度特性に合致した最適なクーリング方式で各デバイスを冷却できるようになる。よって、無駄に空冷ファンに回転させることなく、デバイス個々に対する過熱対策を効率よく講じることができる。
【図面の簡単な説明】
【図１】この発明の第１実施形態に係わるコンピュータシステムの構成を示すブロック図。
【図２】同第１実施形態のシステムに設けられたＣＰＵの３つの動作ステートを説明するための図。
【図３】同第１実施形態のシステムで使用されるＣＰＵ動作性能制御動作を説明するための図。
【図４】同第１実施形態のシステムで使用されるセットアップ画面の一例を示す図。
【図５】図４のセットアップ画面上にウインドウ表示されるバッテリセーブオプションの内容を説明するための図。
【図６】同第１実施形態のシステムに用意された３つのバッテリセーブモードと２つの冷却モードとの対応関係を説明するための図。
【図７】同第１実施形態のシステムにおけるデバイス毎の温度とクーリング方式との関係を説明するための図。
【図８】同第１実施形態のシステムにおけるファン回転速度の変化の様子を示す図。
【図９】同第１実施形態のシステムにおけるデバイス毎の温度とクーリング方式との関係の他の例を説明するための図。
【図１０】同第１実施形態のシステムにおけるファン回転速度およびＣＰＵ動作速度の変化の様子を示す図。
【図１１】同第１実施形態のシステムにおけるクーリング制御処理の手順を説明するためのフローチャート。
【図１２】図１１のクーリング制御処理を実行した場合における各デバイスの温度変化の様子を示す図。
【図１３】この発明の第２実施形態に係わるコンピュータシステムの構成を示すブロック図。
【図１４】同第２実施形態のシステムに用意された３つのバッテリセーブモードと２つの冷却モードとの対応関係を説明するための図。
【図１５】同第２実施形態のシステムにおけるデバイス毎の温度とクーリング方式との関係を説明するための図。
【図１６】同第２実施形態のシステムにおけるデバイス毎の温度とクーリング方式との関係の他の例を説明するための図。
【図１７】この発明の第３実施形態に係わるコンピュータシステムの構成を示すブロック図。
【図１８】同第３実施形態のシステムに用意された３つのバッテリセーブモードと２つの冷却モードとの対応関係を説明するための図。
【図１９】同第３実施形態のシステムにおけるデバイス毎の温度とクーリング方式との関係を説明するための図。
【図２０】同第３実施形態のシステムにおけるデバイス毎の温度とクーリング方式との関係の他の例を説明するための図。
【図２１】この発明の各実施形態で用いられるセットアップ画面の変形例を示す図。
【図２２】この発明の各実施形態で用いられるクーリングレベル設定ウインドウの一例を示す図。
【図２３】この発明の各実施形態で用いられる吸気構造を説明するための図。
【符号の説明】
１１…ＣＰＵ
１２…システムコントローラ
１３…メインメモリ
１４…ＢＩＯＳ−ＲＯＭ
１６…電源コントローラ
１７…キーボードコントローラ
１９…ＨＤＤ
２０…ＰＣカードコントローラ
２１，２１ａ，２１ｂ，２１ｃ…排気用電動ファン
１２３…ストップクロック制御回路
１２４…ストップクロックインターバルタイマ
１２５…ストップクロックホールドタイマ
Ａ，Ｂ，Ｃ…温度センサ
【図１】
0003637181.tif 000002
【図２】
0003637181.tif 000003
【図３】
0003637181.tif 000004
【図４】
0003637181.tif 000005
【図５】
0003637181.tif 000006
【図６】
0003637181.tif 000007
【図７】
0003637181.tif 000008
【図８】
0003637181.tif 000009
【図９】
0003637181.tif 000010
【図１０】
0003637181.tif 000011
【図１１】
0003637181.tif 000012
【図１２】
0003637181.tif 000013
【図１３】
0003637181.tif 000014
【図１４】
0003637181.tif 000015
【図１５】
0003637181.tif 000016
【図１６】
0003637181.tif 000017
【図１７】
0003637181.tif 000018
【図１８】
0003637181.tif 000019
【図１９】
0003637181.tif 000020
【図２０】
0003637181.tif 000021
【図２１】
0003637181.tif 000022
【図２２】
0003637181.tif 000023
【図２３】
0003637181.tif 000024