(57)【要約】【課題】入出力バッファに供給される電源電圧と内部回路に供給される電源電圧との組み合わせを最適化する。【解決手段】ＢＩＯＳは、第１のデバイスコントローラ２０とデバイス２１との間のデータ転送に関する動作テストを、インターフェース電圧の値と動作電圧の値の組み合わせを変化させながら実行する。この動作テストにおいては、インターフェース電圧の値と動作電圧の値との各組み合わせ毎に、テスト用のデータ転送が実行される。次いで、ＢＩＯＳは、動作テストの結果に基づいて、インターフェース電圧と動作電圧との複数の組み合わせの中から、実際に使用すべきある一つの組み合わせを選択する。【選択図】      図２
2005339346.tif 000002
【特許請求の範囲】
【請求項１】
通信路を介してＩ／Ｏデバイスとの通信を実行するデバイスコントローラと、
前記Ｉ／Ｏデバイスおよび前記デバイスコントローラの各々に対して内部回路を駆動するための動作電源電圧と前記通信路に接続される入出力バッファを駆動するためのインターフェース電源電圧とを供給する電源ユニットと、
前記Ｉ／Ｏデバイスと前記デバイスコントローラとの間のデータ転送に関する動作テストを、前記動作電源電圧の値と前記インターフェース電源電圧の値との組み合わせを変化させながら実行するテスト手段と、
前記動作テストの結果に基づいて、前記動作電源電圧の値と前記インターフェース電源電圧の値との複数種の組み合わせの中から使用すべき組み合わせを選択する選択手段とを具備することを特徴とする情報処理装置。
【請求項２】
前記選択手段は、前記動作テストの結果に基づいて、正常にデータ転送を実行可能な前記動作電源電圧の値と前記インターフェース電源電圧の値との組み合わせの中から、前記動作電源電圧の値が最も低い組み合わせを選択する手段を含むことを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記選択手段は、前記動作テストの結果に基づいて、正常にデータ転送を実行可能な前記動作電源電圧の値と前記インターフェース電源電圧の値との組み合わせの中から、前記インターフェース電源電圧の値が最も低い組み合わせを選択する手段を含むことを特徴とする請求項１記載の情報処理装置。
【請求項４】
前記テスト手段は、
前記動作テストを、前記Ｉ／Ｏデバイスと前記デバイスコントローラとの間のデータ転送速度と、前記動作電源電圧の値と、前記インターフェース電源電圧の値との組み合わせを変化させながら実行する手段を含み、
前記選択手段は、
前記動作テストの結果に基づいて、最も高速のデータ転送を実行可能な、前記動作電源電圧の値と前記インターフェース電源電圧の値との組み合わせを選択する手段を含むことを特徴とする請求項１記載の情報処理装置。
【請求項５】
前記選択手段は、
最も高速のデータ転送を実行可能な、前記動作電源電圧の値と前記インターフェース電源電圧の値との組み合わせが複数存在する場合、それら複数の組み合わせの中から前記インターフェース電圧の値が最も低い組み合わせを選択する手段を含むことを特徴とする請求項４記載の情報処理装置。
【請求項６】
前記テスト手段は、前記情報処理装置のパワーオンに応答して、前記動作テストを実行することを特徴とする請求項１記載の情報処理装置。
【請求項７】
前記Ｉ／Ｏデバイスは前記情報処理装置に取り外し自在に構成されており、
前記テスト手段は、前記情報処理装置に前記Ｉ／Ｏデバイスが接続されたことに応答して、前記動作テストを実行することを特徴とする請求項１記載の情報処理装置。
【請求項８】
Ｉ／Ｏデバイスおよび前記Ｉ／Ｏデバイスとの通信を通信路を介して実行するデバイスコントローラの各々に供給すべき動作電源電圧の値とインターフェース電源電圧の値を制御する電源電圧制御方法であって、
前記動作電源電圧は前記Ｉ／Ｏデバイスおよび前記デバイスコントローラの各々の内部回路を駆動するための電源電圧であり、前記インターフェース電源電圧は前記Ｉ／Ｏデバイスおよび前記デバイスコントローラの各々に設けられ前記通信路に接続される入出力バッファを駆動するための電源電圧であり、
前記Ｉ／Ｏデバイスと前記デバイスコントローラとの間のデータ転送に関する動作テストを、前記動作電源電圧の値と前記インターフェース電源電圧の値との組み合わせを変化させながら実行するテストステップと、
前記動作テストの結果に基づいて、前記動作電源電圧の値と前記インターフェース電源電圧の値との複数種の組み合わせの中から使用すべき組み合わせを選択する選択ステップとを具備することを特徴とする電源電圧制御方法。
【請求項９】
前記選択ステップは、前記動作テストの結果に基づいて、正常にデータ転送を実行可能な前記動作電源電圧の値と前記インターフェース電源電圧の値との組み合わせの中から、前記動作電源電圧の値が最も低い組み合わせを選択する手段を含むことを特徴とする請求項８記載の電源電圧制御方法。
【請求項１０】
前記選択ステップは、前記動作テストの結果に基づいて、正常にデータ転送を実行可能な前記動作電源電圧の値と前記インターフェース電源電圧の値との組み合わせの中から、前記インターフェース電源電圧の値が最も低い組み合わせを選択する手段を含むことを特徴とする請求項８記載の電源電圧制御方法。
【請求項１１】
前記テストステップは、
前記動作テストを、前記Ｉ／Ｏデバイスと前記デバイスコントローラとの間のデータ転送速度と、前記動作電源電圧の値と、前記インターフェース電源電圧の値との組み合わせを変化させながら実行するステップを含み、
前記選択ステップは、
前記動作テストの結果に基づいて、最も高速のデータ転送を実行可能な、前記動作電源電圧の値と前記インターフェース電源電圧の値との組み合わせを選択するステップを含むことを特徴とする請求項８記載の電源電圧制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はパーソナルコンピュータのような情報処理装置および同装置で用いられる電源電圧制御方法に関する。
【背景技術】
【０００２】
一般に、パーソナルコンピュータのような情報処理装置においては、様々な省電力技術が用いられている。代表的な省電力技術の一つとしては、プロセッサに供給するクロック周波数や電源電圧を低下する技術が知られている（例えば、特許文献１参照。）
また、パーソナルコンピュータにおいては、そのコンポーネントとして様々なＩ／Ｏデバイスが用いられている。各Ｉ／Ｏデバイスは、例えばケーブル、バスのような通信路を介してデバイスコントローラに接続される。パーソナルコンピュータの省電力化を実現するためには、プロセッサの消費電力のみならず、各Ｉ／Ｏデバイスの消費電力を低減することも必要である。
【特許文献１】特開２００３−２７１２６７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
Ｉ／Ｏデバイスは、ある特定の機能を実現するための内部回路と、デバイスコントローラとの通信のための入出力バッファとを備えている。しかし、通常、Ｉ／Ｏデバイス内のこれら内部回路および入出力バッファには同一の電源電圧が共通に供給される。
【０００４】
このため、もしそのＩ／Ｏデバイスに供給する電源電圧の値を低下させると、Ｉ／Ｏデバイス内の内部回路に供給される電源電圧のみならず、そのＩ／Ｏデバイス内の入出力バッファに供給される電源電圧の値も一緒に低下される。これによって入出力バッファによる信号線駆動能力は低下する。
【０００５】
よって、もしそのＩ／Ｏデバイスに供給する電源電圧の値を単純に低下させると、Ｉ／Ｏデバイスとデバイスコントローラとの間の接続環境（例えば、Ｉ／Ｏデバイスとデバイスコントローラとの間を接続する通信路の長さやその通信路の種類）によっては、Ｉ／Ｏデバイスとデバイスコントローラとの間のデータ転送を正常に実行することができなくなる危険がある。
【０００６】
本発明は上述の事情を考慮してなされたものであり、Ｉ／Ｏデバイスとデバイスコントローラとの間の実際の接続環境を考慮して、入出力バッファに供給される電源電圧と内部回路に供給される電源電圧との組み合わせを最適化することが可能な情報処理装置および電源電圧制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上述の課題を解決するため、本発明の情報処理装置は、通信路を介してＩ／Ｏデバイスとの通信を実行するデバイスコントローラと、前記Ｉ／Ｏデバイスおよび前記デバイスコントローラの各々に対して内部回路を駆動するための動作電源電圧と前記通信路に接続される入出力バッファを駆動するためのインターフェース電源電圧とを供給する電源ユニットと、前記Ｉ／Ｏデバイスと前記デバイスコントローラとの間のデータ転送に関する動作テストを、前記動作電源電圧の値と前記インターフェース電源電圧の値との組み合わせを変化させながら実行するテスト手段と、前記動作テストの結果に基づいて、前記動作電源電圧の値と前記インターフェース電源電圧の値との複数種の組み合わせの中から使用すべき組み合わせを選択する選択手段とを具備することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、Ｉ／Ｏデバイスとデバイスコントローラとの間の実際の接続環境を考慮して、入出力バッファに供給される電源電圧と内部回路に供給される電源電圧との組み合わせを最適化することが可能となる。
【発明を実施するための最良の形態】
【０００９】
以下、図面を参照して、本発明の実施形態を説明する。  
図１には、本発明の一実施形態に係る情報処理装置のシステム構成が示されている。この情報処理装置は、例えば、バッテリ駆動可能なノートブック型のパーソナルコンピュータとして実現されている。
【００１０】
このコンピュータは、図示のように、ＣＰＵ（Central Processing Unit）１１、ノースブリッジ（ＮＢ：North Bridge）１２、主メモリ１３、サウスブリッジ（ＳＢ：South Bridge）１４、グラフィクスコントローラ１５、ＢＩＯＳ−ＲＯＭ１６、エンベデッドコントローラ／キーボードコントローラＩＣ（ＥＣ／ＫＢＣ）１７、電源コントローラ１８、電源回路１９、第１のデバイスコントローラ２０、デバイス２１、および第２のデバイスコントローラ２２を備えている。
【００１１】
ＣＰＵ１１は本コンピュータの動作を制御するために設けられたプロセッサであり、主メモリ１３にロードされたオペレーティングシステムおよび各種アプリケーションプログラムを実行する。また、ＣＰＵ１１は、ＢＩＯＳ−ＲＯＭ１６に格納されたＢＩＯＳ（Basic Input Output System）も実行する。ＢＩＯＳはハードウェア制御のためのシステムプログラムである。
【００１２】
サウスブリッジ１４はＣＰＵ１１のローカルバス１とサウスブリッジ１４との間を接続するブリッジデバイスである。このサウスブリッジ１４には、主メモリ１３をアクセス制御するメモリコントローラも内蔵されている。グラフィクスコントローラ１５は本コンピュータのディスプレイモニタとして使用される表示デバイス（例えば、ＬＣＤ（Liquid Crystal Display）のようなフラットパネルディスプレイ）を制御する。グラフィクスコントローラ１５はビデオメモリ（ＶＲＡＭ）を有しており、ＯＳ／アプリケーションプログラムによってビデオメモリに描画された表示データを表示デバイスに表示する。
【００１３】
サウスブリッジ１４は、ＰＣＩ（Peripheral Component Interconnect）バス２上の各デバイスおよびＬＰＣ（low pin count）バス３上の各デバイスを制御する。ＰＣＩバス２上には、第１のデバイスコントローラ２０、および第２のデバイスコントローラ２２が存在する。
【００１４】
第１のデバイスコントローラ２０は、ＣＰＵ１１の制御の下、デバイス２１との通信を実行してそのデバイス２１を制御する。デバイス２１は、例えば、ＩＤＥ（Integrated Drive Electronics）デバイス、ＵＳＢ（Universal Serial Bus）デバイスのようなＩ／Ｏデバイスである。第２のデバイスコントローラ２２は、ＣＰＵ１１の制御の下、外部デバイス２３を制御する。外部デバイス２３は、本コンピュータの本体に設けられたコネクタ２５に取り外し自在に接続されるオプションＩ／Ｏデバイスであり、例えば、ＩＤＥ（Integrated Drive Electronics）デバイス、ＵＳＢ（Universal Serial Bus）デバイス等から構成される。
【００１５】
ＬＰＣバス３上には、エンベデッドコントローラ／キーボードコントローラＩＣ（ＥＣ／ＫＢＣ）１７が存在する。エンベデッドコントローラ／キーボードコントローラＩＣ（ＥＣ／ＫＢＣ）１７は、電力管理のためのエンベデッドコントローラと、キーボード（ＫＢ）３１を制御するためのキーボードコントローラとが集積された１チップマイクロコンピュータである。このエンベデッドコントローラ／キーボードコントローラＩＣ（ＥＣ／ＫＢＣ）１７は、ユーザによるパワーボタン３１の操作に応じて本コンピュータをパワーオン／パワーオフする機能を有している。エンベデッドコントローラ／キーボードコントローラＩＣ（ＥＣ／ＫＢＣ）１７は、電源コントローラ１８との通信を実行する機能も有している。電源コントローラ１８は、エンベデッドコントローラ／キーボードコントローラＩＣ（ＥＣ／ＫＢＣ）１７の制御の下、電源回路１９を制御する。電源回路１９は、ＡＣ電源（外部電源）３３または内蔵バッテリ３４から、本コンピュータを構成する各コンポーネントに供給すべき動作電源電圧を生成する。
【００１６】
電源回路１９は、第１のデバイスコントローラ２０およびデバイス２１の各々に対して、動作電源電圧およびインターフェース電源電圧の２種類の電源電圧を供給するように構成された電源ユニットである。動作電源電圧は、第１のデバイスコントローラ２０およびデバイス２１の各々の内部回路に供給される電源電圧である。インターフェース電源電圧は、第１のデバイスコントローラ２０およびデバイス２１の各々の入出力バッファに供給される電源電圧である。また、電源回路１９は、第２のデバイスコントローラ２２および外部デバイス２３の各々に対しても、動作電源電圧およびインターフェース電源電圧の２種類の電源電圧を供給する。
【００１７】
図２には、第１のデバイスコントローラ２０とデバイス２１との間の接続構成が示されている。第１のデバイスコントローラ２０とデバイス２１との間には、各種信号線が配設されている。第１のデバイスコントローラ２０とデバイス２１との間の通信は、これら信号線群から構成される通信路を介して実行される。この通信路は、例えば、ケーブル、バスなどによって実現されている。通信路を介して第１のデバイスコントローラ２０とデバイス２１との間で実行されるデータ転送の速度は、例えば、第１のデバイスコントローラ２０およびデバイス２１それぞれに供給するクロック信号の周波数を制御することによって、変化させることができる。電源回路１９は、第１のデバイスコントローラ２０およびデバイス２１の各々に供給すべき電源として、動作電源電圧Ｖｄｄとインターフェース電源電圧Ｖｉとを出力する。電源回路１９からの動作電源電圧Ｖｄｄは、第１のデバイスコントローラ２０およびデバイス２１の双方に共通に供給される。同様に、インターフェース電源電圧Ｖｉも、第１のデバイスコントローラ２０およびデバイス２１の双方に共通に供給される。
【００１８】
デバイス２１は、図４に示されているように、インターフェースユニット４１と、コアユニット４２とを備えている。インターフェースユニット４１は通信路を介して第１のデバイスコントローラ２０との通信を実行する。インターフェースユニット４１は、通信路にそれぞれ接続された入力バッファ１３１および出力バッファ１３２を備えている。インターフェース電源電圧Ｖｉは、入力バッファ１３１および出力バッファ１３２を駆動するための電源電圧として、それら入力バッファ１３１および出力バッファ１３２に供給される。コアユニット４２は、デバイス２１の機能を実現するための内部回路である。動作電源電圧Ｖｄｄは、コアユニット４２を駆動するための電源電圧として、コアユニット４２に供給される。
【００１９】
第２のデバイスコントローラ２０も、デバイス２１と同様に、通信路に接続された入出力バッファと、コアユニットとを含む。入出力バッファにはインターフェース電源電圧Ｖｉが供給され、コアユニットには動作電源電圧Ｖｄｄが供給される。
【００２０】
図３には、第２のデバイスコントローラ２２と外部デバイス２３との間の接続構成が示されている。外部デバイス２３はケーブル２６を介してコネクタ２５に接続される。第２のデバイスコントローラ２２とコネクタ２５との間には、各種信号線が配設されている。第２のデバイスコントローラ２２と外部デバイス２３との間の通信は、これら信号線から構成される通信路と、コネクタと、ケーブル２６とを介して実行される。電源回路１９は、第２のデバイスコントローラ２２および外部デバイス２３の各々に供給すべき電源として、動作電源電圧Ｖｄｄとインターフェース電源電圧Ｖｉとを出力する。電源回路１９からの動作電源電圧Ｖｄｄは、第２のデバイスコントローラ２２および外部デバイス２３の双方に共通に供給される。同様に、インターフェース電源電圧Ｖｉも、第２のデバイスコントローラ２２および外部デバイス２３の双方に共通に供給される。
【００２１】
図５には、第２のデバイスコントローラ２２と外部デバイス２３との間の接続構成の他の例が示されている。外部デバイス２３は、電源回路１９から供給される電源電圧から動作電源電圧Ｖｄｄとインターフェース電源電圧Ｖｉとの２種類の電源電圧を生成する電圧レギュレータ回路を内蔵している。この電圧レギュレータ回路は、例えば第２のデバイスコントローラ２２からのコマンド等に従って、生成すべき動作電源電圧Ｖｄｄの値およびインターフェース電源電圧Ｖｉの値をそれぞれ可変設定することができる。
【００２２】
次に、動作電源電圧Ｖｄｄとインターフェース電源電圧Ｖｉの組み合わせを最適化するための方法について説明する。
【００２３】
以下では、第１のデバイスコントローラ２０およびデバイス２１の各々に供給すべき動作電源電圧Ｖｄｄおよびインターフェース電源電圧Ｖｉの組み合わせを最適化する場合を例示して説明する。
【００２４】
まず、図６を参照して、本実施形態で用いられる動作電源電圧Ｖｄｄ、インターフェース電源電圧Ｖｉ、および第１のデバイスコントローラ２０とデバイス２１との間のデータ転送の速度それぞれの値について説明する。
【００２５】
本実施形態では、第１のデバイスコントローラ２０とデバイス２１との間で実行されるべきデータ転送の速度（以下転送速度と称する）は、１００Ｍｂｐｓ、２００Ｍｂｐｓ、３００Ｍｂｐｓの３種類の速度の内の任意の速度に設定できるものとする。また、電源回路１９が出力可能なインターフェース電源電圧Ｖｉ（以下、インターフェース電圧（Ｉ／Ｆ電圧）と称する）は、１．５Ｖ、２．５Ｖ、３．３Ｖの３種類であり、また電源回路１９が出力可能な動作電源電圧Ｖｄｄ（以下、動作電圧と称する）は、１．８Ｖ、３．３Ｖ、５．０Ｖの３種類であるとする。
【００２６】
図７は、インターフェース電圧の値に対応する転送速度、消費電力、安定度それぞれの傾向と、動作電圧の値に対応する転送速度、消費電力、安定度それぞれの傾向を示している。
【００２７】
インターフェース電圧の値が低い程、通信路上に流れる信号の振幅レベルは小さくなる。信号の振幅レベルが小さい程、信号の論理レベルの遷移に要する時間は短くて済むので、その分だけ転送速度を高速化しやすくなる。よって、インターフェース電圧の値に応じた転送速度の傾向は、
インターフェース電圧（高い→低い）：転送速度（遅い→速い）
の関係で表現される。
【００２８】
またインターフェース電圧の値に応じた消費電力の傾向は、
インターフェース電圧（高い→低い）：消費電力（多い→少ない）
の関係で表現される。
【００２９】
信号の振幅レベルが小さい程、ノイズに対するマージンは低下する。よって、インターフェース電圧の値に応じた動作の安定度の傾向は、
インターフェース電圧（高い→低い）：安定度（高い→低い）
の関係で表現される。
【００３０】
また、動作電圧の値に応じた転送速度の傾向は、
動作電圧（低い→高い）：転送速度（遅い→速い）
の関係で表現される。
【００３１】
また、動作電圧の値に応じた消費電力の傾向は、
動作電圧（低い→高い）：消費電力（少ない→多い）
の関係で表現される。
【００３２】
また、動作電圧の値に応じた動作の安定度の傾向は、
動作電圧（低い→高い）：安定度（低い→高い）
の関係で表現される。
【００３３】
図８は、インターフェース電圧の値と動作電圧の値との複数の組み合わせそれぞれに関する、転送速度、消費電力、安定度の評価を示している。図８においては、転送速度、消費電力、安定度の各々について、評価が５段階で示されている。すなわち、転送速度の評価は、“極遅”、“遅い”、“並み”、“速い”、“極速”の５段階で表される。これら“極遅”、“遅い”、“並み”、“速い”、“極速”それぞれに対応する得点を“１”、“２”、“３”、“４”、“５”とする。消費電力の評価は、“極多”、“多い”、“並み”、“少ない”、“極少”の５段階で表される。これら“極多”、“多い”、“並み”、“少ない”、“極少”に対応する得点をそれぞれ“１”、“２”、“３”、“４”、“５”とする。安定度の評価は、“極低”、“低い”、“並み”、“高い”、“極高”の５段階で表される。これら“極低”、“低い”、“並み”、“高い”、“極高”に対応する得点をそれぞれ“１”、“２”、“３”、“４”、“５”とする。また図８中の［効果］フィールドは、転送速度、消費電力、安定度それぞれの得点の合計値を、総合評価値として示している。
【００３４】
図８から分かるように、総合評価値が満点（１５点）となるような、インターフェース電圧の値と動作電圧の値との組み合わせは存在しない。よって、第１のデバイスコントローラ２０とデバイス２１との間の実際の接続環境を考慮して、より最適なインターフェース電圧と動作電圧との組み合わせを選択することが必要である。
【００３５】
本実施形態では、インターフェース電圧と動作電圧の最適な組み合わせを選択するために、ＢＩＯＳの制御の下に以下の処理を実行する。
【００３６】
（ステップ１）  動作テスト：  ＢＩＯＳは、第１のデバイスコントローラ２０とデバイス２１との間のデータ転送に関する動作テストを、インターフェース電圧の値と動作電圧の値の組み合わせを変化させながら実行する。この動作テストにおいては、インターフェース電圧の値と動作電圧の値との各組み合わせ毎に、テスト用のデータ転送が実行される。
【００３７】
（ステップ２）  最適な組み合わせの選択：  ＢＩＯＳは、動作テストの結果に基づいて、インターフェース電圧と動作電圧との複数の組み合わせの中から、実際に使用すべきある一つの組み合わせを選択する。この場合、もし転送速度よりも消費電力の低減を優先するならば、正常にデータ転送を実行可能な組み合わせの中で、動作電圧の値が最も低い組み合わせが選択される。また、内部回路の消費電力が少ないデバイスの場合には、そのデバイスの消費電力が、動作電圧よりもインターフェース電圧によって支配されることもある（例えば、ＩＤＥケーブルに接続された半導体ストレージデバイスなど）。この場合には、正常にデータ転送を実行可能な組み合わせの中で、インターフェース電圧の値が最も低い組み合わせが選択される。
【００３８】
また、もし消費電力の低減よりも転送速度の高速化を優先するならば、ステップ１においては、ＢＩＯＳは、第１のデバイスコントローラ２０とデバイス２１との間のデータ転送に関する動作テストを、転送速度の値と、インターフェース電圧の値と、動作電圧の値との組み合わせを変化させながら実行する。そして、ステップ２においては、ＢＩＯＳは、動作テストの結果に基づいて、最も高速のデータ転送を実行可能な、インターフェース電圧の値と動作電圧の値の組み合わせを選択する。
【００３９】
次に、インターフェース電圧の値と動作電圧の値との最適な組み合わせを選択する手順の中で実行される幾つかの処理について説明する。
【００４０】
（転送速度設定処理）
転送速度設定処理は、あるインターフェース電圧とある動作電圧との組み合わせにおいて使用可能な転送速度の上限および下限を決定するための処理である。
【００４１】
以下、図９のフローチャートを参照して、転送速度設定処理の手順を説明する。ＢＩＯＳは、まず、インターフェース電圧（Ｉ／Ｆ電圧）および動作電圧それぞれをある規定値に設定するとともに、転送速度を変化させる方向（遅い→速い、または速い→遅い）を定める（ステップＳ１０１）。以下では、転送速度を変化させる方向が“遅い→速い”に設定された場合を想定する。
【００４２】
ＢＩＯＳは、第１のデバイスコントローラ２０とデバイス２１との間で実行されるべきデータ転送の速度を一番遅い転送速度（１００Ｍｂｐｓ）に設定する（ステップＳ１０２）。このステップＳ１０２では、例えば、第１のデバイスコントローラ２０およびデバイス２１それぞれに供給されるクロックの周期数を、一番遅い転送速度に対応する値に設定する処理などが実行される。次いで、ＢＩＯＳは、第１のデバイスコントローラ２０を制御して、第１のデバイスコントローラ２０とデバイス２１との間のデータ転送に関する動作テストを実行する（ステップＳ１０３）。このステップＳ１０３では、テスト用のデータ転送が第１のデバイスコントローラ２０とデバイス２１との間で実行される。ＢＩＯＳは、テスト用のデータ転送が正常に実行できたかどうかを判断する（ステップＳ１０４）。
【００４３】
テスト用のデータ転送が正常に実行できたならば（ステップＳ１０４のＹＥＳ）、ＢＩＯＳは、現在の転送速度よりも一段速い転送速度があるかどうかを判断する（ステップＳ１０５）。現在の転送速度よりも一段速い転送速度があるならば（ステップＳ１０５のＹＥＳ）、ＢＩＯＳは、当該一段速い転送速度で既にテスト動作を実行したかどうかを判断する（ステップＳ１０６）。当該一段速い転送速度で既にテスト動作を実行していないならば（ステップＳ１０６のＮＯ）、ＢＩＯＳは、第１のデバイスコントローラ２０とデバイス２１との間で実行されるべきデータ転送の速度を、現在の転送速度よりも一段速い転送速度に設定する（ステップＳ１０７）。そして、ＢＩＯＳは、第１のデバイスコントローラ２０を制御して、第１のデバイスコントローラ２０とデバイス２１との間のデータ転送に関する動作テストを実行する（ステップＳ１０３）。
【００４４】
一方、テスト用のデータ転送が正常に実行できなかったならば（ステップＳ１０４のＮＯ）、ＢＩＯＳは、現在の転送速度よりも一段遅い転送速度があるかどうかを判断する（ステップＳ１０８）。現在の転送速度よりも一段遅い転送速度がないならば、つまり現在の転送速度が一番遅い転送速度であれば（ステップＳ１０８のＹＥＳ）、転送速度設定処理が失敗となる（ステップＳ１１０）。現在の転送速度よりも一段遅い転送速度があるならば（ステップＳ１０８のＮＯ）、ＢＩＯＳは、第１のデバイスコントローラ２０とデバイス２１との間で実行されるべきデータ転送の速度を、現在の転送速度よりも一段遅い転送速度に設定する（ステップＳ１０９）。そして、ＢＩＯＳは、第１のデバイスコントローラ２０を制御して、第１のデバイスコントローラ２０とデバイス２１との間のデータ転送に関する動作テストを実行する（ステップＳ１０３）。テスト用のデータ転送が正常に実行できたならば（ステップＳ１０４のＹＥＳ）、ＢＩＯＳは、現在の転送速度よりも一段速い転送速度があるかどうかを判断する（ステップＳ１０５）。現在の転送速度よりも一段速い転送速度があるならば（ステップＳ１０５のＹＥＳ）、ＢＩＯＳは、当該一段速い転送速度で既にテスト動作を実行したかどうかを判断する（ステップＳ１０６）。当該一段速い転送速度で既にテスト動作を実行しているならば（ステップＳ１０６のＹＥＳ）、ＢＩＯＳは、処理を終了する。
【００４５】
このようにして、あるインターフェース電圧とある動作電圧との組み合わせにおいて使用可能な最高転送速度が特定される。
【００４６】
（インターフェース電圧設定処理）
インターフェース電圧設定処理は、ある転送速度とある動作電圧との組み合わせにおいて使用可能なインターフェース電圧の上限および下限を決定するための処理である。
【００４７】
以下、図１０のフローチャートを参照して、インターフェース電圧設定処理の手順を説明する。ＢＩＯＳは、まず、転送速度および動作電圧それぞれをある規定値に設定するとともに、インターフェース電圧を変化させる方向（高い→低い、または低い→高い）を定める（ステップＳ２０１）。以下では、インターフェース電圧を変化させる方向が“高い→低い”に設定された場合を想定する。
【００４８】
ＢＩＯＳは、電源コントローラ１８を介して電源回路１９を制御し、インターフェース電圧の値を一番高い値（３．３Ｖ）に設定する（ステップＳ２０２）。次いで、ＢＩＯＳは、第１のデバイスコントローラ２０を制御して、第１のデバイスコントローラ２０とデバイス２１との間のデータ転送に関する動作テストを実行する（ステップＳ２０３）。
【００４９】
テスト用のデータ転送が正常に実行できたならば（ステップＳ２０４のＹＥＳ）、ＢＩＯＳは、現在のインターフェース電圧よりも一段低いインターフェース電圧があるかどうかを判断する（ステップＳ２０５）。現在のインターフェース電圧よりも一段低いインターフェース電圧があるならば（ステップＳ２０５のＹＥＳ）、ＢＩＯＳは、当該一段低いインターフェース電圧で既にテスト動作を実行したかどうかを判断する（ステップＳ２０６）。当該一段低いインターフェース電圧で既にテスト動作を実行していないならば（ステップＳ２０６のＮＯ）、ＢＩＯＳは、インターフェース電圧を、現在のインターフェース電圧の値よりも一段低いインターフェース電圧に設定する（ステップＳ２０７）。そして、ＢＩＯＳは、第１のデバイスコントローラ２０を制御して、第１のデバイスコントローラ２０とデバイス２１との間のデータ転送に関する動作テストを実行する（ステップＳ１０３）。
【００５０】
一方、テスト用のデータ転送が正常に実行できなかったならば（ステップＳ２０４のＮＯ）、ＢＩＯＳは、現在のインターフェース電圧の値よりも一段高いインターフェース電圧があるかどうかを判断する（ステップＳ２０８）。現在のインターフェース電圧の値よりも一段高いインターフェース電圧がないならば、つまり現在のインターフェース電圧が一番高いインターフェース電圧であれば（ステップＳ２０８のＹＥＳ）、インターフェース電圧設定処理は失敗となる（ステップＳ２１０）。現在のインターフェース電圧の値よりも一段高いインターフェース電圧があるならば（ステップＳ２０８のＮＯ）、ＢＩＯＳは、インターフェース電圧を、一段高い値に設定する（ステップＳ２０９）。そして、ＢＩＯＳは、第１のデバイスコントローラ２０を制御して、第１のデバイスコントローラ２０とデバイス２１との間のデータ転送に関する動作テストを実行する（ステップＳ２０３）。テスト用のデータ転送が正常に実行できたならば（ステップＳ２０４のＹＥＳ）、ＢＩＯＳは、現在のインターフェース電圧よりも一段低いインターフェース電圧があるかどうかを判断する（ステップＳ２０５）。現在のインターフェース電圧よりも一段低いインターフェース電圧があるならば（ステップＳ２０５のＹＥＳ）、ＢＩＯＳは、当該一段低いインターフェース電圧で既にテスト動作を実行したかどうかを判断する（ステップＳ２０６）。当該一段低いインターフェース電圧で既にテスト動作を実行しているならば（ステップＳ２０６のＹＥＳ）、ＢＩＯＳは、処理を終了する。
【００５１】
このようにして、ある転送速度とある動作電圧との組み合わせにおいて使用可能なインターフェース電圧の最低値が特定される。
【００５２】
（動作電圧設定処理）
動作電圧設定処理は、ある転送速度とあるインターフェース電圧との組み合わせにおいて使用可能な動作電圧の上限および下限を決定するための処理である。
【００５３】
以下、図１１のフローチャートを参照して、動作電圧設定処理の手順を説明する。ＢＩＯＳは、まず、転送速度およびインターフェース電圧それぞれをある規定値に設定するとともに、動作電圧を変化させる方向（高い→低い、または低い→高い）を定める（ステップＳ３０１）。以下では、動作電圧を変化させる方向が“高い→低い”に設定された場合を想定する。
【００５４】
ＢＩＯＳは、電源コントローラ１８を介して電源回路１９を制御し、動作電圧の値を一番高い値（５．０Ｖ）に設定する（ステップＳ３０２）。次いで、ＢＩＯＳは、第１のデバイスコントローラ２０を制御して、第１のデバイスコントローラ２０とデバイス２１との間のデータ転送に関する動作テストを実行する（ステップＳ３０３）。
【００５５】
テスト用のデータ転送が正常に実行できたならば（ステップＳ３０４のＹＥＳ）、ＢＩＯＳは、現在の動作電圧よりも一段低い動作電圧があるかどうかを判断する（ステップＳ３０５）。現在の動作電圧よりも一段低い動作電圧があるならば（ステップＳ３０５のＹＥＳ）、ＢＩＯＳは、当該一段低い動作電圧で既にテスト動作を実行したかどうかを判断する（ステップＳ３０６）。当該一段低い動作電圧で既にテスト動作を実行していないならば（ステップＳ３０６のＮＯ）、ＢＩＯＳは、動作電圧を、現在の動作電圧の値よりも一段低い動作電圧に設定する（ステップＳ３０７）。そして、ＢＩＯＳは、第１のデバイスコントローラ２０を制御して、第１のデバイスコントローラ２０とデバイス２１との間のデータ転送に関する動作テストを実行する（ステップＳ３０３）。
【００５６】
一方、テスト用のデータ転送が正常に実行できなかったならば（ステップＳ３０４のＮＯ）、ＢＩＯＳは、現在の動作電圧の値よりも一段高い動作電圧があるかどうかを判断する（ステップＳ３０８）。現在の動作電圧の値よりも一段高い動作電圧がないならば、つまり現在の動作電圧が一番高い動作電圧であれば（ステップＳ３０８のＹＥＳ）、動作電圧設定処理は失敗となる（ステップＳ３１０）。現在の動作電圧の値よりも一段高い動作電圧があるならば（ステップＳ３０８のＮＯ）、ＢＩＯＳは、動作電圧を、一段高い値に設定する（ステップＳ３０９）。そして、ＢＩＯＳは、第１のデバイスコントローラ２０を制御して、第１のデバイスコントローラ２０とデバイス２１との間のデータ転送に関する動作テストを実行する（ステップＳ３０３）。テスト用のデータ転送が正常に実行できたならば（ステップＳ３０４のＹＥＳ）、ＢＩＯＳは、現在の動作電圧よりも一段低い動作電圧があるかどうかを判断する（ステップＳ３０５）。現在の動作電圧よりも一段低い動作電圧があるならば（ステップＳ３０５のＹＥＳ）、ＢＩＯＳは、当該一段低い動作電圧で既にテスト動作を実行したかどうかを判断する（ステップＳ３０６）。当該一段低い動作電圧で既にテスト動作を実行しているならば（ステップＳ３０６のＹＥＳ）、ＢＩＯＳは、処理を終了する。
【００５７】
このようにして、ある転送速度とあるインターフェース電圧との組み合わせにおいて使用可能な動作電圧の最低値が特定される。
【００５８】
次に、３つのパラメタ（転送速度、インターフェース電圧、および動作電圧）の最適な組み合わせを決定するための処理について説明する。最適化は、転送速度優先および省電力優先のいずれかのポリシーに従って実行される。
【００５９】
（転送速度高速化処理）
転送速度高速化処理は、転送速度優先のポリシーに従って、転送速度とインターフェース電圧と動作電圧との最適な組み合わせを決定する処理である。
【００６０】
以下、図１２のフローチャートを参照して、転送速度高速化処理の手順について説明する。
【００６１】
ＢＩＯＳは、まず、インターフェース電圧および動作電圧それぞれをある規定値に設定するとともに、転送速度を変化させる方向を定める（ステップＳ４０１）。上述したように、データ転送は、インターフェース電圧は低い方が、動作電圧は高い方が、高速に実行することができる。よって、ステップＳ４０１では、インターフェース電圧＝１．５Ｖ、動作電圧＝５Ｖに設定される。また転送速度を変化させる方向は、“遅い→速い”に設定される。
【００６２】
次いで、ＢＩＯＳは、図９のフローチャートで説明した転送速度設定処理を開始する（ステップＳ４０２）。転送速度を変化させる方向は“遅い→速い”であるから、ステップＳ４０２の転送速度設定処理においては、最初に転送速度＝１００Ｍｂｐｓについての動作テストが実行される。転送速度＝１００Ｍｂｐｓに設定した状態で正常にデータ転送が実行されたならば、今度は、転送速度＝２００Ｍｂｐｓにに設定した状態で動作テストが実行される。転送速度＝２００Ｍｂｐｓに設定した状態で正常にデータ転送が実行されたならば、さらに、転送速度＝３００Ｍｂｐｓに設定した状態で動作テストが実行される。
【００６３】
この後、ＢＩＯＳは、現在のインターフェース電圧よりも一段高いインターフェース電圧があるかどうかを判断する（ステップＳ４０３）。現在のインターフェース電圧よりも一段高いインターフェース電圧があるならば（ステップＳ４０３のＹＥＳ）、ＢＩＯＳは、インターフェース電圧の値を当該一段高いインターフェース電圧に設定した後（ステップＳ４０４）、ステップＳ４０２の転送速度設定処理を実行する。
【００６４】
このようにして、インターフェース電圧の値を１段ずつ変化させながら、ステップＳ４０２の転送速度設定処理が繰り返し実行される。これにより、
（１）動作電圧＝５Ｖ、インターフェース電圧＝１．５Ｖ
（２）動作電圧＝５Ｖ、インターフェース電圧＝２．５Ｖ
（３）動作電圧＝５Ｖ、インターフェース電圧＝３．３Ｖ
それぞれの場合における、使用可能な転送速度の値が決定される。例えば、
（１）動作電圧＝５Ｖ、インターフェース電圧＝１．５Ｖの時には、転送速度＝１００Ｍｂｐｓ、２００Ｍｂｐｓ、３００Ｍｂｐｓのそれぞれで正常に動作し、
（２）動作電圧＝５Ｖ、インターフェース電圧＝２．５Ｖの時には、転送速度＝１００Ｍｂｐｓ、２００Ｍｂｐｓのそれぞれで正常に動作し、
（３）動作電圧＝５Ｖ、インターフェース電圧＝３．３Ｖの時には、転送速度＝１００Ｍｂｐｓで正常に動作したものとする。
【００６５】
ＢＩＯＳは、これらデータ転送が正常に実行できた、動作電圧とインターフェース電圧と転送速度との複数の組み合わせの中から、最も速い転送速度を実現できたインターフェース電圧の値とその時の転送速度の値との組み合わせを選択する（ステップＳ４０５，Ｓ４０６）。上記のテスト結果の例においては、インターフェース電圧＝１．５Ｖの時に転送速度＝３００Ｍｂｐｓでのデータ転送が正常に実行できたので、インターフェース電圧＝１．５Ｖ、転送速度＝３００Ｍｂｐｓの組み合わせが選択される。なお、最高転送速度を実現できたインターフェース電圧の値が複数存在する場合には、最も低い値のインターフェース電圧が選択される。
【００６６】
次いで、ＢＩＯＳは、図１１のフローチャートで説明した動作電圧設定処理を実行する（ステップＳ４０７）。ステップＳ４０７では、インターフェース電圧＝１．５Ｖ、転送速度＝３００Ｍｂｐｓに設定され、また動作電圧の変化方向が“高い→低い”に設定された状態で、動作電圧設定処理が開始される。この動作設定処理により、インターフェース電圧＝１．５Ｖ、転送速度＝３００Ｍｂｐｓでデータ転送を正常に実行可能な動作電圧の最小値が決定される。もし、動作電圧＝３．３Ｖでデータ転送が正常に実行でき、動作電圧＝１．５Ｖでデータ転送が正常に実行できなかった場合には、動作電圧＝３．３Ｖが、インターフェース電圧＝１．５Ｖ、転送速度＝３００Ｍｂｐｓでデータ転送を正常に実行可能な動作電圧の最小値として決定される。これにより、インターフェース電圧＝１．５Ｖ、転送速度＝３００Ｍｂｐｓ、動作電圧＝３．３Ｖという組み合わせが最適な組み合わせとして決定される。
【００６７】
ＢＩＯＳは、電源回路１９を制御してインターフェース電圧＝１．５Ｖ、転送速度＝３００Ｍｂｐｓ、動作電圧＝３．３Ｖに設定するとともに、第１のデバイスコントローラ２０とデバイス２１との間で実行されるべきデータ転送の速度を３００Ｍｂｐｓに設定する。
【００６８】
（パワーセーブ処理）
パワーセーブ処理は、省電力優先のポリシーに従って、転送速度、インターフェース電圧、動作電圧の最適な組み合わせを決定する処理である。
【００６９】
以下、図１３のフローチャートを参照して、パワーセーブ処理の手順の第１の例について説明する。図１３のパワーセーブ処理は、インターフェース電圧よりも動作電圧の方がデバイスの消費電力に与える影響が大きい場合に利用される処理である。
【００７０】
ＢＩＯＳは、まず、転送速度およびインターフェース電圧それぞれをある規定値に設定するとともに、動作電圧を変化させる方向を定める（ステップＳ５０１）。消費電力は、転送速度は遅い方が少なく、インターフェース電圧も低い方が少ない。よって、ステップＳ５０１においては、転送速度＝１００Ｍｂｐｓ、インターフェース電圧＝１．５Ｖに設定される。また動作電圧を変化させる方向は、“高い→低い”に設定される。
【００７１】
次いで、ＢＩＯＳは、図１１のフローチャートで説明した動作電圧設定処理を開始する（ステップＳ５０２）。動作電圧を変化させる方向は“高い→低い”であるので、ステップＳ５０２の動作電圧設定処理においては、最初に動作電圧＝５Ｖについての動作テストが実行される。動作電圧＝５Ｖの状態で正常にデータ転送が実行されたならば、今度は、動作電圧＝３．３Ｖについての動作テストが実行される。動作電圧＝３．３Ｖの状態で正常にデータ転送が実行されたならば、さらに、動作電圧＝１．８Ｖについての動作テストが実行される。
【００７２】
この後、ＢＩＯＳは、現在のインターフェース電圧よりも一段高いインターフェース電圧があるかどうかを判断する（ステップＳ５０３）。現在のインターフェース電圧よりも一段高いインターフェース電圧があるならば（ステップＳ５０３のＹＥＳ）、ＢＩＯＳは、インターフェース電圧の値を当該一段高いインターフェース電圧に設定した後（ステップＳ５０４）、ステップＳ５０２の動作電圧設定処理を実行する。
【００７３】
このようにして、インターフェース電圧の値を１段ずつ変化させながら、ステップＳ５０２の動作電圧設定処理が繰り返し実行される。
【００７４】
次いで、ＢＩＯＳは、データ転送が正常に実行できた、動作電圧とインターフェース電圧と転送速度との複数の組み合わせの中から、最も動作電圧を低く設定可能なインターフェース電圧の値とその時の動作電圧の値との組み合わせを選択する（ステップＳ５０５，Ｓ５０６）。これにより、例えば、インターフェース電圧＝２．５Ｖ、動作電圧＝１．８Ｖの組み合わせが選択される。なお、最も動作電圧を低く設定可能なインターフェース電圧の値が複数存在する場合には、最も低い値のインターフェース電圧が選択される。
【００７５】
次いで、ＢＩＯＳは、図９のフローチャートで説明した転送速度設定処理を実行する（ステップＳ５０７）。ステップＳ５０７では、インターフェース電圧＝２．５Ｖ、動作電圧＝１．８Ｖに設定され、また転送速度の変化方向が“遅い→速い”に設定された状態で、転送速度設定処理が開始される。この転送速度設定処理により、インターフェース電圧＝２．５Ｖ、動作電圧＝１．８Ｖの状態において、データ転送を正常に実行可能な最高転送速度が決定される。もし、転送速度２００Ｍｂｓでデータ転送が正常に実行できなかった場合には、インターフェース電圧＝２．５Ｖ、動作電圧＝１．８Ｖ、転送速度１００Ｍｂｐｓという組み合わせが最適な組み合わせとして決定される。
【００７６】
ＢＩＯＳは、電源回路１９を制御してインターフェース電圧＝２．５Ｖ、動作電圧＝１．８Ｖに設定するとともに、第１のデバイスコントローラ２０とデバイス２１との間で実行されるべきデータ転送の速度を１００Ｍｂｐｓに設定する。
【００７７】
次に、図１４のフローチャートを参照して、パワーセーブ処理の第２の例について説明する。この図１４のパワーセーブ処理は、動作電圧よりもインターフェース電圧の方がデバイスの消費電力に与える影響が大きい場合に利用される処理であり、このパワーセーブ処理では、動作電圧設定処理に先立ってインターフェース電圧設定処理が実行される。
【００７８】
ＢＩＯＳは、まず、転送速度および動作電圧それぞれをある規定値に設定するとともに、インターフェース電圧を変化させる方向を定める（ステップＳ６０１）。消費電力は、転送速度は遅い方が少なく、動作電圧も低い方が少ない。よって、ステップＳ６０１においては、転送速度＝１００Ｍｂｐｓ、動作電圧＝１．８Ｖに設定される。またインターフェース電圧を変化させる方向は、“高い→低い”に設定される。
【００７９】
次いで、ＢＩＯＳは、図１０のフローチャートで説明したインターフェース電圧設定処理を開始する（ステップＳ６０２）。インターフェース電圧を変化させる方向は“高い→低い”であるので、ステップＳ６０２のインターフェース電圧設定処理においては、最初にインターフェース電圧＝３．３Ｖについての動作テストが実行される。インターフェース電圧＝３．３Ｖの状態で正常にデータ転送が実行されたならば、今度は、インターフェース電圧＝２．５Ｖについての動作テストが実行される。インターフェース電圧＝２．５Ｖの状態で正常にデータ転送が実行されたならば、さらに、インターフェース電圧＝１．５Ｖについての動作テストが実行される。
【００８０】
データ転送が正常に実行できた組み合わせがあるならば（ステップＳ６０３のＹＥＳ）、ＢＩＯＳは、転送速度＝１００Ｍｂｐｓ、動作電圧＝１．８Ｖのときにデータ転送を整序に実行可能なインターフェース電圧の最小値を用いて、図１１のフローチャートで説明した動作電圧設定処理を実行する（ステップＳ６０４）。ステップＳ６０４では、使用可能なインターフェース電圧の最小値と、転送速度＝１００Ｍｂｐｓの条件で、使用可能な動作電圧の最小値が求められる。次いで、インターフェース電圧設定処理および動作電圧設定処理でそれぞれ求められたインターフェース電圧の最小値および動作電圧の最小値を用いて、図９のフローチャートで説明した転送速度実行処理を実行する（ステップＳ６０５）。これにより、インターフェース電圧と動作電圧と転送速度の最適な組み合わせが決定される。
【００８１】
次に、図１５のフローチャートを参照して、転送速度、インターフェース電圧、動作電圧の最適な組み合わせを決定するための処理の他の例について説明する。
【００８２】
本例では、ＢＩＯＳは、転送速度、インターフェース電圧、動作電圧の全ての組み合わせそれぞれについて動作テストを実行して、図１６に示すテスト結果テーブルを作成する（ステップＳ７０１〜Ｓ７０４）。そして、ＢＩＯＳは、テスト結果テーブルを参照して、転送速度、インターフェース電圧、動作電圧の最適な組み合わせを決定する。この場合、ＢＩＯＳは、まず、転送速度（高速化）と省電力（パワーセーブ）のどちらを優先すべきであるかを判別する（ステップＳ７０５）。転送速度（高速化）を優先する場合には、ＢＩＯＳは、テスト結果テーブルを参照して最も速い転送速度を実現可能な、動作電圧とインターフェース電圧との組み合わせを選択することにより、転送速度、動作電圧、インターフェース電圧の最適な組み合わせを決定する（ステップＳ７０６）。一方、省電力（パワーセーブ）を優先するならば、ＢＩＯＳは、テスト結果テーブルを参照して最も動作電圧を低く設定可能な転送速度とインターフェース電圧との組み合わせを選択することにより、転送速度、動作電圧、インターフェース電圧の最適な組み合わせを決定する（ステップＳ７０７）。
【００８３】
次に、図１７のフローチャートを参照して、本コンピュータのパワーオンに応答してＢＩＯＳによって実行される一連の処理の手順について説明する。
【００８４】
本コンピュータがパワーオンされたとき、ＢＩＯＳは、ＡＣ電源３３が本コンピュータに接続されているか否かを検出することにより、本コンピュータがＡＣ電源３３および内蔵バッテリ３４のどちらによって駆動されているかを判別する（ステップＳ８０１）。
【００８５】
本コンピュータが内蔵バッテリ３４によって駆動されているならば、ＢＩＯＳは、図１３または図１４のパワーセーブ処理を実行する（ステップＳ８０２）。ステップＳ８０２では、転送速度、動作電圧、インターフェース電圧は、それぞれ省電力のために最適な値に設定される。この後、もし本コンピュータにＡＣ電源３３が接続されたならば（ステップＳ８０３のＹＥＳ）、ＢＩＯＳは、図１２の転送速度高速化処理を実行する（ステップＳ８０４）。ステップＳ８０４では、転送速度、動作電圧、インターフェース電圧は、それぞれ高速データ転送を実現するのために最適な値に設定し直される。
【００８６】
一方、ＡＣ電源３３が接続されている状態で本コンピュータがパワーオンされたならば、ＢＩＯＳは、図１２の転送速度高速化処理を実行する（ステップＳ８０６）。ステップＳ８０５では、転送速度、動作電圧、インターフェース電圧は、それぞれ高速データ転送を実現するのために最適な値に設定される。この後、もし本コンピュータからＡＣ電源３３が取り外されたならば（ステップＳ８０６のＹＥＳ）、ＢＩＯＳは、図１３または図１４のパワーセーブ処理を実行する（ステップＳ８０７）。ステップＳ８０７では、転送速度、動作電圧、インターフェース電圧は、それぞれ省電力のために最適な値に設定し直される。
【００８７】
また、本コンピュータの動作中に外部デバイス２３が本コンピュータに接続された時も、ＢＩＯＳは、ＡＣ電源３３の接続の有無に応じて転送速度高速化処理またはパワーセーブ処理を実行して、外部デバイス２３およびデバイスコントローラ２２の各々に供給すべき動作電圧およびインターフェース電圧と、外部デバイス２３とデバイスコントローラ２２との間のデータ転送に使用すべき転送速度とを決定する。
【００８８】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【００８９】
【図１】本発明の一実施形態に係るコンピュータのシステム構成を示すブロック図。
【図２】図１のコンピュータにおけるデバイスコントローラとデバイスとの間の接続構成の例を示すブロック図。
【図３】図１のコンピュータにおけるデバイスコントローラとデバイスとの間の接続構成の他の例を示すブロック図。
【図４】図１のコンピュータで使用されるデバイスの構成例を示すブロック図。
【図５】図１のコンピュータにおけるデバイスコントローラとデバイスとの間の接続構成のさらに他の例を示すブロック図。
【図６】図１のコンピュータで使用可能な転送速度、インターフェース電圧、および動作電圧を説明するための図。
【図７】インターフェース電圧に対応する転送速度、消費電力、安定度それぞれの傾向と、動作電圧に対応する転送速度、消費電力、安定度それぞれの傾向を説明するための図。
【図８】インターフェース電圧の値と動作電圧の値との複数の組み合わせそれぞれに関する、転送速度、消費電力、安定度の評価を示す図。
【図９】図１のコンピュータによって実行される転送速度設定処理の手順を示すフローチャート。
【図１０】図１のコンピュータによって実行されるインターフェース電圧設定処理の手順を示すフローチャート。
【図１１】図１のコンピュータによって実行される動作電圧設定処理の手順を示すフローチャート。
【図１２】図１のコンピュータによって実行される転送速度高速化処理の手順を示すフローチャート。
【図１３】図１のコンピュータによって実行されるパワーセーブ処理の手順の第１の例を示すフローチャート。
【図１４】図１のコンピュータによって実行されるパワーセーブ処理の手順の第２の例を示すフローチャート。
【図１５】図１のコンピュータによって実行される、転送速度、インターフェース電圧、動作電圧の最適な組み合わせを決定するための処理の手順の例を示すフローチャート。
【図１６】図１のコンピュータで使用されるテスト結果テーブルの例を示す図。
【図１７】図１のコンピュータのパワーオン時に実行される手順を説明するためのフローチャート。
【符号の説明】
【００９０】
１１…ＣＰＵ、１８…電源コントローラ、１９…電源回路、２０…デバイスコントローラ、２１…デバイス、２２…デバイスコントローラ、２３…外部デバイス、４１…インターフェースユニット、４２…コアユニット。
【図１】
2005339346.tif 000003
【図２】
2005339346.tif 000004
【図３】
2005339346.tif 000005
【図４】
2005339346.tif 000006
【図５】
2005339346.tif 000007
【図６】
2005339346.tif 000008
【図７】
2005339346.tif 000009
【図８】
2005339346.tif 000010
【図９】
2005339346.tif 000011
【図１０】
2005339346.tif 000012
【図１１】
2005339346.tif 000013
【図１２】
2005339346.tif 000014
【図１３】
2005339346.tif 000015
【図１４】
2005339346.tif 000016
【図１５】
2005339346.tif 000017
【図１６】
2005339346.tif 000018
【図１７】
2005339346.tif 000019