(57)【特許請求の範囲】
【請求項１】
バッテリを装着可能な本体と、
前記本体内に設けられ、第１コアおよび第２コアを含むプロセッサと、
前記本体に装着されたバッテリから前記バッテリの最大放電電流値を示す定格情報を取得し、前記バッテリの最大放電電流値が、前記第１コアおよび前記第２コアが動作可能なマルチコアモードにおける前記プロセッサの消費電量に基づいて予め決定された基準電流値よりも小さい場合、前記プロセッサを、前記第１コアおよび前記第２コアの一方が動作可能なシングルコアモードに設定し、前記バッテリの最大放電電流値が前記基準電流値以上である場合、前記プロセッサを前記マルチコアモードに設定する制御手段とを具備することを特徴とする情報処理装置。
【請求項２】
前記制御手段は、前記本体に外部電源が接続されているか否かを判別する手段と、前記本体に外部電源が接続されていることが判別された場合、前記本体に装着されたバッテリの定格情報とは無関係に前記プロセッサを前記マルチコアモードに設定する手段とを含むことを特徴とする請求項１記載の情報処理装置。
【請求項３】
バッテリを装着可能な本体と、
前記本体内に設けられ、第１コアおよび第２コアを含むプロセッサと、
前記本体へのバッテリの装着後に、前記本体に装着されたバッテリに格納されている前記バッテリの最大放電電流値を示す定格情報を前記バッテリから取得する手段と、
前記本体が電源投入された場合、前記最大放電電流値と、前記第１コアおよび前記第２コアが動作可能なマルチコアモードにおける前記プロセッサの消費電量に基づいて予め決定された基準電流値とを比較し、前記最大放電電流値が前記基準電流値よりも小さい場合、前記プロセッサを、前記第１コアおよび前記第２コアの一方が動作可能なシングルコアモードに設定し、前記バッテリの最大放電電流値が前記基準電流値以上である場合、前記プロセッサを前記マルチコアモードに設定する制御手段とを具備することを特徴とする情報処理装置。
【請求項４】
前記制御手段は、前記本体が電源投入された場合、前記本体に外部電源が接続されているか否かを判別し、前記本体に外部電源が接続されていることが判別された場合には、前記取得された定格情報とは無関係に前記プロセッサを前記マルチコアモードに設定することを特徴とする請求項３記載の情報処理装置。
【請求項５】
バッテリを装着可能な本体内に設けられ第１コアおよび第２コアを含むプロセッサの動作を制御するプロセッサ制御方法であって、
前記バッテリが前記本体に装着された場合、前記バッテリに格納されている前記バッテリの最大放電電流値を示す定格情報を前記バッテリから取得するステップと、
前記本体が電源投入された場合、前記最大放電電流値と、前記第１コアおよび前記第２コアが動作可能なマルチコアモードにおける前記プロセッサの消費電量に基づいて予め決定された基準電流値とを比較し、前記最大放電電流値が前記基準電流値よりも小さい場合、前記プロセッサを、前記第１コアおよび前記第２コアの一方が動作可能なシングルコアモードに設定し、前記バッテリの最大放電電流値が前記基準電流値以上である場合、前記プロセッサを前記マルチコアモードに設定するステップとを具備することを特徴とするプロセッサ制御方法。
【請求項６】
前記本体が電源投入された場合、前記本体に外部電源が接続されているか否かを判別するステップと、
前記本体に外部電源が接続されていることが判別された場合、前記取得された定格情報とは無関係に前記プロセッサを前記マルチコアモードに設定するステップとをさらに具備することを特徴とする請求項５記載のプロセッサ制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はパーソナルコンピュータのような情報処理装置および同装置に設けられたプロセッサを制御するプロセッサ制御方法に関する。
【背景技術】
【０００２】
近年、バッテリ駆動可能な種々のノートブック型パーソナルコンピュータが開発されている。バッテリによってコンピュータを駆動することが可能な時間（バッテリ駆動時間）は、コンピュータに装着されるバッテリの能力によって大きく相違する。大容量のバッテリほどバッテリ駆動時間は長くなるが、その分、バッテリのコストは増加する。
【０００３】
このため、最近では、互いに能力が異なる複数種のバッテリを選択的に装着可能なコンピュータが開発されている。
【０００４】
また、最近では、システム性能の向上を図るために、デュアルコア構成を採用したプロセッサが開発されている。しかし、複数のコアが同時に動作した場合には、プロセッサの消費電力は大幅に増加することとなる。
【０００５】
特許文献１には、バッテリの残存容量に応じて、動作するプロセッサの数を動的に変更する機能を有するコンピュータシステムが開示されている。
【特許文献１】特開平９−１３８７１６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかし、特許文献１においては、コンピュータに装着されるバッテリの定格については何等考慮されていない。
【０００７】
コンピュータを正常に動作させるためには、バッテリがコンピュータの最大消費電流以上の電流値を放電することが可能な能力を有することが必要となる。したがって、もし能力の低いバッテリがコンピュータに装着されているにもかかわらず、複数のプロセッサまたは複数のコアが同時に動作すると、コンピュータの最大消費電流がバッテリの能力を超えてしまい、システムがハングアップする等の不具合が発生する。
【０００８】
本発明は上述の事情を考慮してなされたものであり、装着されたバッテリの定格に応じてシステムの最大消費電流を制御することが可能な情報処理装置およびプロセッサ制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００９】
上述の課題を解決するため、本発明の情報処理装置は、バッテリを装着可能な本体と、前記本体内に設けられ、第１コアおよび第２コアを含むプロセッサと、前記本体に装着されたバッテリから前記バッテリの最大放電電流値を示す定格情報を取得し、前記バッテリの最大放電電流値が、前記第１コアおよび前記第２コアが動作可能なマルチコアモードにおける前記プロセッサの消費電量に基づいて予め決定された基準電流値よりも小さい場合、前記プロセッサを、前記第１コアおよび前記第２コアの一方が動作可能なシングルコアモードに設定し、前記バッテリの最大放電電流値が前記基準電流値以上である場合、前記プロセッサを前記マルチコアモードに設定する制御手段とを具備することを特徴とする。
【発明の効果】
【００１０】
本発明によれば、装着されたバッテリの定格に応じてシステムの最大消費電流を制御することが可能となる。
【発明を実施するための最良の形態】
【００１１】
以下、図面を参照して、本発明の実施形態を説明する。  
まず、図１および図２を参照して、本発明の一実施形態に係る情報処理装置の構成について説明する。この情報処理装置は、例えば、バッテリ駆動可能なノートブック型の携帯型パーソナルコンピュータ１０として実現されている。
【００１２】
図１はコンピュータ１０のディスプレイユニットを開いた状態における斜視図である。本コンピュータ１０は、コンピュータ本体１１と、ディスプレイユニット１２とから構成されている。ディスプレイユニット１２には、ＬＣＤ（Liquid Crystal Display）１７から構成される表示装置が組み込まれており、そのＬＣＤ１７の表示画面はディスプレイユニット１２のほぼ中央に位置されている。
【００１３】
ディスプレイユニット１２は、コンピュータ本体１１に対して開放位置と閉塞位置との間を回動自在に取り付けられている。コンピュータ本体１１はバッテリが取り外し自在に装着可能な薄い箱形の筐体を有している。バッテリは、コンピュータ本体１１の例えば底面に設けられたバッテリ収容部に装着される。
【００１４】
コンピュータ本体１１の上面にはキーボード１３、本コンピュータ１をパワーオン／オフするためのパワーボタンスイッチ１４、およびタッチパッド１５などが配置されている。
【００１５】
次に、図２を参照して、本コンピュータ１０のシステム構成について説明する。
【００１６】
本コンピュータ１０は、図２に示されているように、ＣＰＵ１１１、ノースブリッジ１１４、主メモリ１１５、グラフィクスコントローラ１１６、サウスブリッジ１１７、ＢＩＯＳ−ＲＯＭ１２０、ハードディスクドライブ（ＨＤＤ）１２１、光ディスクドライブ（ＯＤＤ）１２２、各種ＰＣＩデバイス１２３，１２４、エンベデッドコントローラ／キーボードコントローラＩＣ（ＥＣ／ＫＢＣ）１４０、電源コントローラ（ＰＳＣ）１４１、および電源回路１４２等を備えている。
【００１７】
ＣＰＵ１１１は本コンピュータ１０の動作を制御するために設けられたプロセッサであり、ＨＤＤ１２１から主メモリ１１５にロードされるオペレーティングシステムおよび各種アプリケーションプログラムを実行する。また、ＣＰＵ１１１は、ＢＩＯＳ−ＲＯＭ１２０に格納されたシステムＢＩＯＳ（Basic Input Output System）も実行する。システムＢＩＯＳはハードウェア制御のためのプログラムである。
【００１８】
ＣＰＵ１１１は物理的に異なる２つのコア１１２，１１３を備えている。これらコア１１２，１１３は互いに独立して動作することができる。コア１１２，１１３の各々は、タスクを実行することができる。すなわち、コア１１２，１１３の各々は、命令フェッチユニット、デコードユニット、および実行ユニット等を含んでいる。ＣＰＵ１１１においては、処理対象のタスク群は２つのコア１１２，１１３に分散される。これにより、システム性能の向上が実現される。
【００１９】
システムＢＩＯＳは、ＣＰＵ１１１の消費電力を制御するプロセッサ制御処理を実行する機能を有している。このプロセッサ制御処理は、コンピュータ本体１１に装着されたバッテリの定格に応じて、ＣＰＵ１１１をマルチコア動作またはシングルコア動作させるための処理である。すなわち、システムＢＩＯＳは、コンピュータ本体１１に装着されたバッテリの定格に応じて、ＣＰＵ１１１をマルチコアモードおよびシングルコアモードの一方に設定する。
【００２０】
マルチコアモードは２つのコア１１２，１１３が動作可能なモードであり、２つのコア１１２，１１３によってタスク群を並列に実行することができる。もちろん、マルチコアモードにおいても、ＣＰＵ１１１の負荷が小さい場合には、２つのコア１１２，１１３の一方のみを動作させることができる。一方、シングルコアモードは、２つのコア１１２，１１３の内の一方のみが動作可能なモードである。シングルコアモードにおいては、２つのコア１１２，１１３が同時に動作することはない。このため、基本的には、マルチコアモードにおけるＣＰＵ１１１の最大消費電流は、シングルコアモードおけるＣＰＵ１１１の最大消費電流の２倍となる。
【００２１】
ノースブリッジ１１４はＣＰＵ１１１のローカルバスとサウスブリッジ１１７との間を接続するブリッジデバイスである。ノースブリッジ１１４には、主メモリ１１５をアクセス制御するメモリコントローラも内蔵されている。また、ノースブリッジ１１４は、PCI Expressバスなどを介してグラフィクスコントローラ１１６との通信を実行する機能も有している。
【００２２】
グラフィクスコントローラ１１６は本コンピュータ１０のディスプレイモニタとして使用されるＬＣＤ１７を制御する表示コントローラである。このグラフィクスコントローラ１１６はビデオメモリ（ＶＲＡＭ）１１６Ａを有しており、ＯＳ／アプリケーションプログラムによってビデオメモリ（ＶＲＡＭ）１１６Ａに書き込まれた表示データから、ＬＣＤ１７に表示すべき表示イメージを形成する映像信号を生成する。
【００２３】
サウスブリッジ１１７はＰＣＩバス１に接続されており、ＰＣＩバス１を介してＰＣＩデバイス１２３，１２４との通信を実行する。また、サウスブリッジ１１７は、ハードディスクドライブ（ＨＤＤ）１２１および光ディスクドライブ（ＯＤＤ）１２２を制御するためのＩＤＥ（Integrated Drive Electronics）コントローラやSerial ATAコントローラを内蔵している。
【００２４】
エンベデッドコントローラ／キーボードコントローラＩＣ（ＥＣ／ＫＢＣ）１４０は、電力管理のためのエンベデッドコントローラと、キーボード（ＫＢ）１３およびタッチパッド１５を制御するためのキーボードコントローラとが集積された１チップマイクロコンピュータである。このＥＣ／ＫＢＣ１４０は、ユーザによるパワーボタンスイッチ１４の操作に応じて本コンピュータ１０をパワーオン／パワーオフする機能を有している。本コンピュータ１０のパワーオン／パワーオフの制御は、ＥＣ／ＫＢＣ１４０と電源コントローラ（ＰＳＣ）１４１との共同動作によって実行される。ＥＣ／ＫＢＣ１４０から送信されるＯＮ信号を受けると、電源コントローラ（ＰＳＣ）１４１は電源回路１４２を制御して本コンピュータ１０をパワーオンする。また、ＥＣ／ＫＢＣ１４０から送信されるＯＦＦ信号を受けると、電源コントローラ（ＰＳＣ）１４１は電源回路１４２を制御して本コンピュータ１０を電源オフする。
【００２５】
また、電源コントローラ（ＰＳＣ）１４１は、コンピュータ本体１１にバッテリ１５０が装着されたか否かを判別する機能、およびコンピュータ本体１１に外部電源（ＡＣアダプタ１４３）が接続されているか否かを判別する機能を有している。判別結果は、電源コントローラ（ＰＳＣ）１４１によってＥＣ／ＫＢＣ１４０内のステータスレジスタに設定される。
【００２６】
電源回路１４２は、コンピュータ本体１１に装着されたバッテリ１５０からの電力、またはコンピュータ本体１１に外部電源として接続されるＡＣアダプタ１４３からの電力を用いて、各コンポーネントへの動作電源を生成する。コンピュータ本体１１に外部電源（ＡＣアダプタ１４３）が接続されている場合には、電源回路１４２は、外部電源からの電力を用いて各コンポーネントへの動作電源を生成すると共に、外部電源からの電力を用いてバッテリ１５０を充電する。
【００２７】
ＥＣ／ＫＢＣ１４０、電源コントローラ（ＰＳＣ）１４１、電源回路１４２、およびバッテリ１５０は、Ｉ２Ｃバスのようなシリアルバス２を介して相互接続されている。コンピュータ本体１１にバッテリ１５０が装着されている期間中、またはコンピュータ本体１１にＡＣアダプタ１４３が接続されている期間中においては、ＥＣ／ＫＢＣ１４０および電源コントローラ（ＰＳＣ）１４１には、電源回路１４２から動作電源が常時供給される。
【００２８】
バッテリ１５０は複数の２次電池および不揮発性メモリ１５１から構成されている。不揮発性メモリ１５１には、バッテリ１５０の能力を示す定格情報が予め格納されている。定格情報は、例えば、バッテリ１５０の最大放電電流を示す放電電流定格(A)、バッテリ１５０の定格容量(Ah)、バッテリ１５０に搭載された２次電池の個数を示すセル数情報、充放電が実行された回数を示すサイクル数、バッテリ１５０の使用時間の総計値などが含まれている。
【００２９】
本コンピュータ１０においては、互いに定格の異なる複数種のバッテリを使用することができる。どのバッテリも、自身の能力を示す定格情報を格納した不揮発性メモリを備えている。本実施形態では、例えば、以下の２種類のバッテリがコンピュータ本体１１に選択的に装着される場合を想定する。
【００３０】
（１）小容量バッテリ
小容量バッテリのセル数は、例えば３である。小容量バッテリの定格容量(Ah)は、例えば2200mAhである。また、小容量バッテリの最大放電電流は、例えば4000mAである。
【００３１】
（２）大容量バッテリ
大容量バッテリのセル数は、例えば６である。大容量バッテリの定格容量(Ah)は、例えば4700mAhである。また、大容量バッテリの最大放電電流は、例えば7000mAである。
【００３２】
バッテリ１５０がコンピュータ本体１１に装着された時、電源コントローラ（ＰＳＣ）１４１は、シリアルバス２を介してバッテリ１５０の不揮発性メモリ１５１から定格情報をリードし、そのリードした定格情報をＥＣ／ＫＢＣ１４０にセットする。そして、本コンピュータ１０がパワーオンされた時、システムＢＩＯＳは、ＥＣ／ＫＢＣ１４０にセットされたバッテリ１５１の定格情報に基づいて、ＣＰＵ１１１をマルチコアモードおよびシングルコアモードの一方に設定する処理を実行する。
【００３３】
次に、図３を参照して、ＣＰＵ１１１の消費電流について説明する。
【００３４】
（１）マルチコアモードにおいてスロットリング制御を実行した場合：
マルチコアモードにおいては、たとえスピードステップのようなスロットリング制御によって２つのコアの各々を間欠的に動作させたとしても、ＣＰＵ１１１によって消費されるピーク電流の値は、２Ｎ（Ａ）となる。ここで、Ｎは１個のコアの消費電流を示している。
【００３５】
（２）シングルコアモードの場合
シングルコアモードにおいては、動作するコアの数は１個のみである。したがって、シングルコアモードにおいては、ＣＰＵ１１１によって消費されるピーク電流の値は、１Ｎ（Ａ）で済む。よって、ＣＰＵ１１１をシングルコア動作させることにより、システムの消費電流を効率よく低減することができる。
【００３６】
図４には、バッテリの定格とＣＰＵ動作モードとの関係の例が示されている。
【００３７】
本実施形態においては、コンピュータ本体１１に装着されたバッテリ１５０の最大放電電流値（放電定格値とも云う）が基準値以上であるならば、マルチコアモードが選択される。一方、コンピュータ本体１１に装着されたバッテリ１５０の最大放電電流値が上記基準値よりも小さいならば、シングルコアモードが選択される。
【００３８】
上記基準値は、マルチコアモードにおけるＣＰＵ１１１の消費電流、および他の各コンポーネントの消費電流を考慮して予め決定されている。上記基準値は、例えば6000mAである。この場合、コンピュータ本体１１に装着されたバッテリ１５０が上述の大容量バッテリであればマルチコアモードが選択され、コンピュータ本体１１に装着されたバッテリ１５０が上述の小容量バッテリであればシングルコアモードが選択される。
【００３９】
次に、図５のフローチャートを参照して、ＣＰＵ１１１の動作モードをマルチコアモードまたはシングルコアモードに設定するためのＣＰＵ制御処理の手順の例を説明する。
【００４０】
電源コントローラ（ＰＳＣ）１４１は、コンピュータ本体１１にバッテリ１５０が装着されたか否かを判別する（ステップＳ１１）。電源コントローラ（ＰＳＣ）１４１は、例えば、コンピュータ本体１１内のバッテリ収容部に設けられた、バッテリ１５０との通信用の電極群の一つの電圧値を監視し、電圧値が所定の論理レベルに変化したときに、コンピュータ本体１１にバッテリ１５０が装着されたと判断する。コンピュータ本体１１に外部電源（ＡＣアダプタ１４３）が接続されていない時においても、バッテリ１５０が装着されると、その時点で電源コントローラ（ＰＳＣ）１４１およびＥＣ／ＫＢＣ１４０にそれぞれ動作電源が供給される。これにより、たとえコンピュータ本体１１に外部電源（ＡＣアダプタ１４３）が接続されていない時においても、電源コントローラ（ＰＳＣ）１４１は、コンピュータ本体１１にバッテリ１５０が装着されたことを検知することができる。
【００４１】
コンピュータ本体１１にバッテリ１５０が装着された時、電源コントローラ（ＰＳＣ）１４１は、バッテリ１５０から定格情報を取得する（ステップＳ１２）。このステップＳ１２においては、電源コントローラ（ＰＳＣ）１４１は、バッテリ１５０が装着された後にシリアルバス２を介してバッテリ１５０の不揮発性メモリ１５１をリードアクセスする処理を開始し、これにより不揮発性メモリ１５１に格納された定格情報を取得する。
【００４２】
この後、電源コントローラ（ＰＳＣ）１４１は、取得した定格情報をＥＣ／ＫＢＣ１４０に通知するために、取得した定格情報をシリアルバス２を介してＥＣ／ＫＢＣ１４０内の所定のステータスレジスタに設定する（ステップＳ１３）。ステップＳ１３においては、取得した定格情報の内で、ＣＰＵ制御処理に実際に使用されるパラメタのみをＥＣ／ＫＢＣ１４０に設定すればよい。例えば、最大放電電流値（放電定格）をＣＰＵ制御処理に使用する場合においては、電源コントローラ（ＰＳＣ）１４１は、取得した定格情報の内で、最大放電電流値（放電定格）をＥＣ／ＫＢＣ１４０内の所定のステータスレジスタに設定する。
【００４３】
ユーザによるパワーボタンスイッチ１４の操作に応答してコンピュータ本体１１がパワーオンされた時（ステップＳ１４のＹＥＳ）、ＣＰＵ１１１は最初にシステムＢＩＯＳを実行する。システムＢＩＯＳは、ＥＣ／ＫＢＣ１４０内の所定のステータスレジスタに設定されている最大放電電流値をチェックし、その最大放電電流値と上述の基準値とを比較する（ステップＳ１５）。
【００４４】
もし最大放電電流値が上述の基準値より小さいならば（ステップＳ１６のＹＥＳ）、システムＢＩＯＳは、ＣＰＵ１１１をシングルコアモードに設定する（ステップＳ１７）。一方、もし最大放電電流値が上述の基準値以上であるならば（ステップＳ１６のＮＯ）、システムＢＩＯＳは、ＣＰＵ１１１をマルチコアモードに設定する（ステップＳ１８）。
【００４５】
ステップＳ１７，Ｓ１８においては、システムＢＩＯＳは、例えば、ＣＰＵ１１１の動作モード（マルチコアモードまたはシングルコアモード）を指定するモード指定情報をＣＰＵ１１１内の特定のレジスタに設定する。モード指定情報がシングルコアモードを指定するならば、２つのコア１１２，１１３の一方はローパワーステートに設定され、他方のコアは動作ステートに設定される。一方、モード指定情報がマルチコアモードを指定するならば、２つのコア１１２，１１３の双方が動作ステートに設定される。
【００４６】
なお、ＣＰＵ１１１のデフォルトの動作モードはマルチコアモードまたはシングルコアモードのどちらであってもよい。
【００４７】
このように、本実施形態においては、ＣＰＵ１１１の動作モードはコンピュータ本体１１に装着されたバッテリ１５０の最大放電電流値に応じて決定され、そしてＣＰＵ１１１はマルチコアモードまたはシングルコアモードで動作する。これにより、どのような定格のバッテリがコンピュータ本体１１に装着されても、システムの最大消費電流値がバッテリ１５０の最大放電電流値を超えるという事態の発生を未然に防止することができ、システムの安定動作を保証することが可能となる。
【００４８】
また、バッテリの装着時に定格情報を既に取得しているので、コンピュータ本体１１の電源投入時に即座にＣＰＵ動作モードを決定することができる。よって、システムの最大消費電流値がバッテリ１５０の最大放電電流値を超えるという事態の発生を確実に防止することができる。
【００４９】
なお、上述したように、大容量バッテリの最大放電電流値は基準値よりも大きく、小容量バッテリの最大放電電流値は基準値以下であるので、コンピュータ本体１１に装着されたバッテリの定格容量に基づいて、ＣＰＵ１１１をマルチコアモードおよびシングルコアモードのどちらに設定するかを決定してもよい。
【００５０】
また、小容量バッテリ（最大放電電流値が基準値以下のバッテリ）がコンピュータ本体１１に装着されている場合であっても、もし外部電源がコンピュータ本体１１に接続されているならば、システムＢＩＯＳは、ＣＰＵ１１１をマルチコアモードに設定する。この場合のＣＰＵ制御処理の手順の例を図６のフローチャートを参照して説明する。
【００５１】
電源コントローラ（ＰＳＣ）１４１は、コンピュータ本体１１にバッテリ１５０が装着されたか否かを判別する（ステップＳ２１）。コンピュータ本体１１にバッテリ１５０が装着された時、電源コントローラ（ＰＳＣ）１４１は、バッテリ１５０から定格情報を取得する（ステップＳ２２）。ステップＳ２２においては、電源コントローラ（ＰＳＣ）１４１は、シリアルバス２を介してバッテリ１５０の不揮発性メモリ１５１をリードアクセスし、不揮発性メモリ１５１に格納された定格情報を取得する。
【００５２】
この後、電源コントローラ（ＰＳＣ）１４１は、取得した定格情報をＥＣ／ＫＢＣ１４０に通知するために、取得した定格情報をシリアルバス２を介してＥＣ／ＫＢＣ１４０内の所定のステータスレジスタに設定する（ステップＳ２３）。ステップＳ２３においては、取得した定格情報の内で、例えば、最大放電電流値（放電定格）がＥＣ／ＫＢＣ１４０内の所定のステータスレジスタに設定される。
【００５３】
ユーザによるパワーボタンスイッチ１４の操作に応答してコンピュータ本体１１がパワーオンされた時（ステップＳ２４のＹＥＳ）、ＣＰＵ１１１は最初にシステムＢＩＯＳを実行する。システムＢＩＯＳは、ＥＣ／ＫＢＣ１４０内の所定のステータスレジスタ等を参照して、コンピュータ本体１１に外部電源（ＡＣアダプタ１４３）が接続されているか否かを判別する（ステップＳ２５）。
【００５４】
コンピュータ本体１１に外部電源（ＡＣアダプタ１４３）が接続されているならば（ステップＳ２５のＹＥＳ）、システムＢＩＯＳは、バッテリ１５０の定格情報に関係なく、ＣＰＵ１１１をマルチコアモードに設定する（ステップＳ２６）。
【００５５】
一方、コンピュータ本体１１に外部電源（ＡＣアダプタ１４３）が接続されていないならば（ステップＳ２５のＮＯ）、システムＢＩＯＳは、ＥＣ／ＫＢＣ１４０内の所定のステータスレジスタに設定されている最大放電電流値をチェックし、その最大放電電流値と上述の基準値とを比較する（ステップＳ２７）。
【００５６】
もし最大放電電流値が上述の基準値より小さいならば（ステップＳ２８のＹＥＳ）、システムＢＩＯＳは、ＣＰＵ１１１をシングルコアモードに設定する（ステップＳ２９）。一方、もし最大放電電流値が上述の基準値以上であるならば（ステップＳ２８のＮＯ）、システムＢＩＯＳは、ＣＰＵ１１１をマルチコアモードに設定する（ステップＳ３０）。
【００５７】
以上のように、本実施形態によれば、ＣＰＵ１１１の動作モードは本コンピュータ１０に装着されたバッテリ１５０の定格に基づいて自動的に決定され、そしてＣＰＵ１１１は決定された動作モード、つまりマルチコアモードまたはシングルコアモードで動作する。したがって、装着されたバッテリ１５０の定格に応じてシステムの最大消費電流を制御することが可能となり、システムの安定動作を保証することができる。
【００５８】
なお、上述したように、ＣＰＵ制御処理で使用可能な定格情報は最大放電電流値だけではなく、バッテリの能力に関する他の定格値、例えば、定格容量、セル数、サイクル数、または使用時間の総計値等に基づいて実行することもできる。しかし、最大放電電流値を用いることにより、より正確にバッテリの能力を判定することが可能となる。
【００５９】
また、本実施形態では、ＣＰＵ１１１の動作モードをマルチコアモードまたはシングルコアモードに設定する制御処理をシステムＢＩＯＳによって実行する例を説明したが、この制御処理は、専用のハードウェアロジック（コントローラ）によって実行することもできる。このコントローラは、例えば、ノースブリッジ１１４内に設けることができる。
【００６０】
また、本発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。更に、異なる実施形態に構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【００６１】
【図１】本発明の一実施形態に係るコンピュータの概観の例を示す斜視図。
【図２】図１のコンピュータのシステム構成の例を示すブロック図。
【図３】図１のコンピュータで用いられるプロセッサ（ＣＰＵ）の消費電流の例を説明するための図。
【図４】図１のコンピュータにおけるバッテリの定格とＣＰＵ動作モードとの関係の例を示す図。
【図５】図１のコンピュータによって実行されるＣＰＵ制御処理の手順の例を示すフローチャート。
【図６】図１のコンピュータによって実行されるＣＰＵ制御処理の手順の他の例を示すフローチャート。
【符号の説明】
【００６２】
１０…コンピュータ、１１…コンピュータ本体、１１１…ＣＰＵ、１１２，１１３…コア、１４０…ＥＣ／ＫＢＣ、１４１…電源コントローラ（ＰＳＣ）、１５０…バッテリ、１５１…不揮発性メモリ。
【図１】
0004764144.tif 000002
【図２】
0004764144.tif 000003
【図３】
0004764144.tif 000004
【図４】
0004764144.tif 000005
【図５】
0004764144.tif 000006
【図６】
0004764144.tif 000007