(57)【要約】【課題】複数のコアを有するというマルチコアＣＰＵの特性を考慮した動作制御をその時々の状況に応じて柔軟に行うことを実現した情報処理装置を提供する。【解決手段】ＣＰＵ処理速度制御プログラム１０１は、周辺の騒音レベルをマイクロフォン２４から取得し、この騒音レベルに基づき、ＣＰＵ１１を冷却する冷却ファン２５の回転速度を制御する。そして、ＣＰＵ処理速度制御プログラム１０１は、この回転速度で動作する冷却ファン２５の冷却能力の範囲内で、ＣＰＵ１１が有するコア（１）１１ａ，コア（２）１１ｂの稼働数を制御する。【選択図】      図１
2008242949.tif 000002
【特許請求の範囲】
【請求項１】
複数の命令処理部を有するＣＰＵと、
前記ＣＰＵを冷却するための冷却ファンと、
マイクロフォンと、
前記マイクロフォンの集音状況に応じて、前記冷却ファンの回転速度を制御するファン制御手段と、
前記ファン制御手段が決定した回転速度で動作する前記冷却ファンにより前記ＣＰＵが冷却される条件下において、前記ＣＰＵが有する前記複数の命令処理部の稼働数を制御するＣＰＵ制御手段と、
を具備することを特徴とする情報処理装置。
【請求項２】
前記ＣＰＵ制御手段は、前記複数の命令処理部それぞれの処理速度を制御する手段を含むことを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記複数の命令処理部の稼働数または前記複数の命令処理部それぞれの処理速度のいずれの制御を前記ＣＰＵ制御手段に優先させるかを設定する設定手段をさらに具備することを特徴とする請求項２記載の情報処理装置。
【請求項４】
複数の命令処理部を有するＣＰＵを搭載する情報処理装置の動作制御方法であって、
該装置周辺の音声を集音し、
前記音声の音量から前記ＣＰＵを冷却する冷却ファンの回転速度を制御し、
前記回転速度で動作する冷却ファンにより前記ＣＰＵが冷却される条件下において、前記ＣＰＵが有する前記複数の命令処理部の稼働数を制御する、
ことを特徴とする動作制御方法。
【請求項５】
前記複数の命令処理部それぞれの処理速度をさらに制御することを特徴とする請求項４記載の動作制御方法。
【請求項６】
前記複数の命令処理部の稼働数または前記複数の命令処理部それぞれの処理速度のいずれの制御を優先するかを設定することを特徴とする請求項５記載の動作制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、例えばマルチコアＣＰＵなどと称される複数の命令処理部（コア）を有するＣＰＵを搭載するパーソナルコンピュータ等の情報処理装置に適用して好適な動作制御技術に関する。
【背景技術】
【０００２】
近年、バッテリ駆動可能で携行容易なノートブックタイプのパーソナルコンピュータが広く普及している。また、最近では、無線通信環境が整備されてきたことから、この種のパーソナルコンピュータを携帯すれば、移動中や外出先でも最新の情報を入手して作業することが可能となってきている。
【０００３】
一方で、このように、時や場所を選ばずに利用できるようになったことで、周囲に対する配慮が一つの問題として浮上してきている。このようなことから、その時々の状況に応じた動作制御を柔軟に実施するための提案もこれまで種々なされている（例えば特許文献１等参照）。
【０００４】
この特許文献１の情報処理装置では、集音した騒音等の音量に比例したレベルで冷却ファンを回転させ、かつ、この時に冷却ファンが発揮できる冷却効果内に収まるように処理速度を制御するという仕組みを備える。この仕組みを備えることで、該情報処理装置が発生させる騒音により使用者に与える不快感を低減させる、延いては周囲に対して配慮することが実現される。
【特許文献１】特開平１１−８５３２４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
ところで、冷却ファンによる主要な冷却対象であるＣＰＵは、性能向上等を目的とする改良が日々検討されている。その結果、複数の命令処理部（コア）を有する、マルチコアＣＰＵなどと称される新しいタイプのＣＰＵが開発されるに至っている。そのため、このマルチコアＣＰＵを搭載したパーソナルコンピュータにおいては、処理速度を上下させるという従前の制御ではなく、複数のコアを有するという特性を考慮した（周囲に対して配慮するための）新たな動作制御の手法が望まれる。
【０００６】
この発明は、このような事情を考慮してなされたものであり、複数のコアを有するというマルチコアＣＰＵの特性を考慮した動作制御をその時々の状況に応じて柔軟に行うことを実現した情報処理装置および動作制御方法を提供することを目的とする。
【課題を解決するための手段】
【０００７】
この目的を達成するために、本発明の情報処理装置は、複数の命令処理部を有するＣＰＵと、前記ＣＰＵを冷却するための冷却ファンと、マイクロフォンと、前記マイクロフォンの集音状況に応じて、前記冷却ファンの回転速度を制御するファン制御手段と、前記ファン制御手段が決定した回転速度で動作する前記冷却ファンにより前記ＣＰＵが冷却される条件下において、前記ＣＰＵが有する前記複数の命令処理部の稼働数を制御するＣＰＵ制御手段と、を具備することを特徴とする。
【０００８】
また、本発明の動作制御方法は、複数の命令処理部を有するＣＰＵを搭載する情報処理装置の動作制御方法であって、該装置周辺の音声を集音し、前記音声の音量から前記ＣＰＵを冷却する冷却ファンの回転速度を制御し、前記回転速度で動作する冷却ファンにより前記ＣＰＵが冷却される条件下において、前記ＣＰＵが有する前記複数の命令処理部の稼働数を制御する、ことを特徴とする。
【発明の効果】
【０００９】
この発明によれば、複数のコアを有するというマルチコアＣＰＵの特性を考慮した動作制御をその時々の状況に応じて柔軟に行うことを実現した情報処理装置および動作制御方法を提供できる。
【発明を実施するための最良の形態】
【００１０】
以下、図面を参照して、この発明の一実施形態を説明する。図１には、本実施形態に係る情報処理装置のハードウェア構成例が示されている。この情報処理装置は、例えばバッテリ駆動可能で携行容易なノートブックタイプのパーソナルコンピュータ１として実現されている。
【００１１】
本コンピュータ１は、図１に示すように、コア（１）１１ａ，コア（２）１１ｂの２つの命令処理部（実行コア）を内蔵したＣＰＵ１１を搭載するデュアルコアＣＰＵ搭載システムである。デュアルコアＣＰＵは、マルチコアＣＰＵを代表する一態様であるが、本実施形態で説明する本発明の動作制御手法は、これに限定されず、他の態様のマルチコアＣＰＵ、即ち実行コアを３以上内蔵するＣＰＵを搭載するマルチコアＣＰＵ搭載システムにおいても適用可能である。
【００１２】
そして、図１に示すように、本コンピュータ１は、このＣＰＵ１１をはじめとして、ホストコントローラ１２、メインメモリ１３、表示コントローラ１４、表示装置１５、表示用メモリ１６、Ｉ／Ｏコントローラ１７、記憶装置１８、オーディオコントローラ１９、電源コントローラ２０、クロックジェネレータ２１、ファンコントローラ２２、キーボードコントローラ２３、マイクロフォン２４、冷却ファン２５、キーボード２６、ポインティングデバイス２７等を備えている。
【００１３】
ＣＰＵ１１は、本コンピュータ１内の各部の動作を統合的に管理・制御するためのプロセッサであり、記憶装置１８からメインメモリ１３にロードされるオペレーティングシステム（ＯＳ）や、このＯＳの制御下で動作する、ユーティリティを含む各種アプリケーションプログラムを実行する。この各種アプリケーションプログラムの中には、後述するＣＰＵ処理速度制御プログラム１０１が含まれており、当該ＣＰＵ処理速度制御プログラム１０１は、予め記憶装置１８にインストールされている。
【００１４】
ホストコントローラ１２は、ＣＰＵ１１のローカルバスとＩ／Ｏコントローラ１７との間を接続するブリッジデバイスである。ホストコントローラ１２は、バスを介して表示コントローラ１４との通信を実行する機能を有しており、また、メインメモリ１３をアクセス制御するメモリコントローラも内蔵されている。表示コントローラ１４は、本コンピュータ１のディスプレイモニタとして使用される表示装置１５を制御する。表示コントローラ１４には表示用メモリ１６が接続されており、ＯＳや各種アプリケーションプログラムによって表示用メモリ１６に書き込まれた画像データから表示装置１５に送出すべき表示信号を生成する。
【００１５】
Ｉ／Ｏコントローラ１７には、記憶装置１８を制御するためのコントローラが内蔵されている。また、Ｉ／Ｏコントローラ１７は、オーディオコントローラ１９、電源コントローラ２０、クロックジェネレータ２１、ファンコントローラ２２、キーボードコントローラ２３の制御も行う。
【００１６】
オーディオコントローラ１９は、マイクロフォン２４から送られてきた電気信号をオーディオデータ（ＰＣＭ等）に変換してメインメモリ１３に書き込む。電源コントローラ２０は、ＣＰＵ１１の動作電圧を制御する。動作電圧の制御は、Ｉ／Ｏコントローラ１７から出力される動作コマンドによって行われる。図２に、電源コントローラ２０に対する動作コマンドの一覧を示す。
【００１７】
図示のように、電源コントローラ２０に対する動作コマンドは、”００”，”０１”，”０２”，”０３”の４種類が存在する。”００”が投入されると、電源コントローラ２０は、コア（１）１１ａ，コア（２）１１ｂの双方を電源オフする。また、”０１”が投入されると、電源コントローラ２０は、コア（１）１１ａのみを低電圧レベルで動作させる（コア（２）１１ｂは電源オフ）。そして、”０２”が投入されると、電源コントローラ２０は、コア（１）１１ａ，コア（２）１１ｂの双方を低電圧レベルで動作させ、”０３”が投入されると、コア（１）１１ａ，コア（２）１１ｂの双方を高電圧レベルで動作させる。
【００１８】
一方、クロックジェネレータ２１は、ＣＰＵ１１の動作クロックを制御する。動作クロックの制御は、Ｉ／Ｏコントローラ１７から出力される動作コマンドによって行われる。図３に、クロックジェネレータ２１に対する動作コマンドの一覧を示す。
【００１９】
図示のように、クロックジェネレータ２１に対する動作コマンドは、”１０”，”１１”，”１２”，”１３”の４種類が存在する。”１０”が投入されると、クロックジェネレータ２１は、コア（１）１１ａ，コア（２）１１ｂの双方をクロック停止とする。また、”１１”が投入されると、クロックジェネレータ２１は、コア（１）１１ａのみを低速モードで動作させる（コア（２）１１ｂはクロック停止）。そして、”１２”が投入されると、クロックジェネレータ２１は、コア（１）１１ａ，コア（２）１１ｂの双方を低速モードで動作させ、”１３”が投入されると、コア（１）１１ａ，コア（２）１１ｂの双方を高速モードで動作させる。
【００２０】
また、ファンコントローラ２２は、ＣＰＵ１１を冷却するための冷却ファン２５の回転速度（単位時間当たりの回転数）を制御する。冷却ファン２５の回転数制御は、Ｉ／Ｏコントローラ１７から出力される動作コマンドによって行われる。図４に、ファンコントローラ２２に対する動作コマンドの一覧を示す。
【００２１】
図示のように、ファンコントローラ２２に対する動作コマンドは、”２０”，”２１”，”２２”，”２３”の４種類が存在する。”２０”が投入されると、ファンコントローラ２２は、冷却ファン２５を停止させる。また、”２１”が投入されると、ファンコントローラ２２は、冷却ファン２５をレベル１で回転させる。レベル１とは、コア（１）１１ａのみが低速モードで動作する状態のＣＰＵ１１を冷却するために必要となる回転数である。そして、”２２”が投入されると、ファンコントローラ２２は、冷却ファン２５をレベル２で回転させ、”２３”が投入されると、冷却ファン２５をレベル３で回転させる。レベル２とは、コア（１）１１ａ，コア（２）１１ｂの双方が低速モードで動作する状態のＣＰＵ１１を冷却するために必要となる回転数であり、レベル３とは、コア（１）１１ａ，コア（２）１１ｂの双方が高速モードで動作する状態のＣＰＵ１１を冷却するために必要となる回転数である。
【００２２】
そして、キーボードコントローラ２３は、キーボード２６やポインティングデバイス２７の操作内容をキーコード化してＣＰＵ１１に伝達する。
【００２３】
また、このようなハードウェア構成の本コンピュータ１上で動作するＣＰＵ処理速度制御プログラム１０１は、ＣＰＵ１１の処理速度を制御するプログラムであり、前述のように、予め記憶装置１８にインストールされていて、その実行時にメインメモリ１３へロードされる。本実施形態におけるＣＰＵ処理速度制御プログラム１０１は、本コンピュータ１の周辺の騒音レベルに応じて、冷却ファン２５の回転数の制御と、ＣＰＵ１１の実行コア数制御と、ＣＰＵ１１の動作クロックの制御を行う。より具体的には、ＣＰＵ処理速度制御プログラム１０１は、オーディオコントローラ１９によって得られるオーディオデータに基づき、ファンコントローラ２２に対して図４に示した動作コマンドを投入する指示をＩ／Ｏコントローラ１７に与える、電源コントローラ２０に対して図２に示した動作コマンドを投入する指示をＩ／Ｏコントローラ１７に与える、クロックジェネレータ２１に対して図３に示した動作コマンドを投入する指示をＩ／Ｏコントローラ１７に与える、等を実行するためのモジュールを有している。
【００２４】
本コンピュータ１のユーザは、コア数優先モードと動作クロック優先モードとを選択することができる。そして、そのために、ＣＰＵ処理速度制御プログラム１０１は、図５に示す設定画面をユーザに提供する。
【００２５】
この設定画面上で、ユーザは、第１に、ＣＰＵ処理速度制御プログラム１０１によるＣＰＵ処理速度制御機能を使用するか否かを設定することができる。ＣＰＵ処理速度制御機能を使用する場合、ユーザは、ラジオボタンａ１を選択し、使用しない場合には、ラジオボタンａ２を選択する。ラジオボタンａ１を選択すると、ユーザは、第２に、コア数優先モードおよび動作クロック優先モードのいずれかを設定することができる。コア数優先モードを設定する場合、ユーザは、ラジオボタンａ１１を選択し、動作クロック優先モードを設定する場合、ユーザは、ラジオボタンａ１２を選択する。
【００２６】
ＣＰＵ処理速度制御機能を使用する設定がなされている場合、ＣＰＵ処理速度制御プログラム１０１は、コア（１）１１ａのみが低速モード／低電圧レベルで動作する状態をＣＰＵ１１の初期状態として、また、レベル１で回転する状態を冷却ファン２５の初期状態として、まず、この初期状態にＣＰＵ１１および冷却ファン２５を移行させるべくＩ／Ｏコントローラ１７に指示を与える。
【００２７】
そして、この初期状態から、ＣＰＵ処理速度制御プログラム１０１は、コア数優先モードが選択されている場合、最初にコア（２）１１ｂを有効、次にコア（１）１１ａ／コア（２）１１ｂの動作クロックアップ、の順に、ＣＰＵ１１の処理速度を可能な範囲（周囲の騒音レベルを勘案した冷却ファン２５の回転数の範囲）で上げていく。また、動作クロック優先モードが選択されている場合には、ＣＰＵ処理速度制御プログラム１０１は、最初にコア（１）１１ａの動作クロックアップ、次にコア（２）１１ｂを有効、の順に、ＣＰＵ１１の処理速度を可能な範囲で上げていく。
【００２８】
ここで、図６および図７を参照して、ＣＰＵ処理速度制御プログラム１０１が実行するＣＰＵ処理速度制御の手順について説明する。図６は、コア数優先モードが設定されている場合の動作フロー、図７は、動作クロック優先モードが設定されている場合の動作フローをそれぞれ示している。
【００２９】
まず、図６を参照して、コア数優先モードが設定されている場合におけるＣＰＵ処理速度制御プログラム１０１のＣＰＵ処理速度制御手順について説明する。
【００３０】
ＣＰＵ処理速度制御プログラム１０１は、まず、ＣＰＵ１１のコア（１）１１ａは低速モード／低電圧レベル、コア（２）１１ｂはクロック停止／電源オフ、冷却ファン２５のファン回転数はレベル１の初期状態に本コンピュータ１を設定する（ステップＡ１）。
【００３１】
次に、ＣＰＵ処理速度制御プログラム１０１は、ファン回転数がレベル１での周辺の騒音値をマイクロフォン２４から取得する（ステップＡ２）。また、ＣＰＵ処理速度制御プログラム１０１は、ファン回転数をレベル２に変更し（ステップＡ３）、この変更後の周辺の騒音値をマイクロフォン２４から取得する（ステップＡ４）。
【００３２】
ＣＰＵ処理速度制御プログラム１０１は、ファン回転数を変更前の騒音値と変更後の騒音値とを比較し（ステップＡ５）、変更後の騒音値の方が大きければ（ステップＡ６のＹＥＳ）、ファン回転数をレベル１に設定して終了する（ステップＡ７）。
【００３３】
一方、変更後の騒音値が変更前の騒音値よりも大きくなっていなければ（ステップＡ６のＮＯ）、ＣＰＵ処理速度制御プログラム１０１は、ＣＰＵ１１のコア（２）１１ｂを低速モード／低電圧レベルで稼働させる（ステップＡ８）。続いて、ＣＰＵ処理速度制御プログラム１０１は、ファン回転数をレベル３に変更し（ステップＡ９）、この変更後の周辺の騒音値をマイクロフォン２４から取得する（ステップＡ１０）。
【００３４】
ＣＰＵ処理速度制御プログラム１０１は、ファン回転数を変更前の騒音値と変更後の騒音値とを比較し（ステップＡ１１）、変更後の騒音値の方が大きければ（ステップＡ１２のＹＥＳ）、ファン回転数をレベル２に設定して終了する（ステップＡ１３）。
【００３５】
一方、変更後の騒音値が変更前の騒音値よりも大きくなっていなければ（ステップＡ１２のＮＯ）、ＣＰＵ処理速度制御プログラム１０１は、ＣＰＵ１１のコア（１）１１ａ，コア（２）１１ｂの双方を高速モード／高電圧レベルに変更して終了する（ステップＡ１４）。
【００３６】
次に、図７を参照して、動作クロック優先モードが設定されている場合におけるＣＰＵ処理速度制御プログラム１０１のＣＰＵ処理速度制御手順について説明する。
【００３７】
ＣＰＵ処理速度制御プログラム１０１は、まず、ＣＰＵ１１のコア（１）１１ａは低速モード／低電圧レベル、コア（２）１１ｂはクロック停止／電源オフ、冷却ファン２５のファン回転数はレベル１の初期状態に本コンピュータ１を設定する（ステップＢ１）。
【００３８】
次に、ＣＰＵ処理速度制御プログラム１０１は、ファン回転数がレベル１での周辺の騒音値をマイクロフォン２４から取得する（ステップＢ２）。また、ＣＰＵ処理速度制御プログラム１０１は、ファン回転数をレベル２に変更し（ステップＢ３）、この変更後の周辺の騒音値をマイクロフォン２４から取得する（ステップＢ４）。
【００３９】
ＣＰＵ処理速度制御プログラム１０１は、ファン回転数を変更前の騒音値と変更後の騒音値とを比較し（ステップＢ５）、変更後の騒音値の方が大きければ（ステップＢ６のＹＥＳ）、ファン回転数をレベル１に設定して終了する（ステップＢ７）。
【００４０】
一方、変更後の騒音値が変更前の騒音値よりも大きくなっていなければ（ステップＢ６のＮＯ）、ＣＰＵ処理速度制御プログラム１０１は、ＣＰＵ１１のコア（１）１１ａを高速モード／高電圧レベルに変更する（ステップＢ８）。続いて、ＣＰＵ処理速度制御プログラム１０１は、ファン回転数をレベル３に変更し（ステップＢ９）、この変更後の周辺の騒音値をマイクロフォン２４から取得する（ステップＢ１０）。
【００４１】
ＣＰＵ処理速度制御プログラム１０１は、ファン回転数を変更前の騒音値と変更後の騒音値とを比較し（ステップＢ１１）、変更後の騒音値の方が大きければ（ステップＢ１２のＹＥＳ）、ファン回転数をレベル２に設定して終了する（ステップＢ１３）。
【００４２】
一方、変更後の騒音値が変更前の騒音値よりも大きくなっていなければ（ステップＢ１２のＮＯ）、ＣＰＵ処理速度制御プログラム１０１は、ＣＰＵ１１のコア（２）１１ｂを高速モード／高電圧レベルで稼働させる（ステップＢ１４）。
【００４３】
以上のように、本コンピュータ１は、複数のコアを有するというマルチコアＣＰＵの特性を考慮した動作制御をその時々の状況に応じて柔軟に行うことを実現する。
【００４４】
なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。
【図面の簡単な説明】
【００４５】
【図１】この発明の一実施形態に係る情報処理装置（パーソナルコンピュータ）のハードウェア構成例を示す図
【図２】同実施形態のコンピュータが備える電源コントローラに対する動作コマンドの一覧を示す図
【図３】同実施形態のコンピュータが備えるクロックジェネレータに対する動作コマンドの一覧を示す図
【図４】同実施形態のコンピュータが備えるファンコントローラ２２に対する動作コマンドの一覧を示す図
【図５】同実施形態のコンピュータ上で動作するＣＰＵ処理速度制御プログラムが提供する設定画面の一例を示す図
【図６】同実施形態のコンピュータ上で動作するＣＰＵ処理速度制御プログラムのコア数優先モードが設定されている場合におけるＣＰＵ処理速度制御手順を示すフローチャート
【図７】同実施形態のコンピュータ上で動作するＣＰＵ処理速度制御プログラムの動作クロック優先モードが設定されている場合におけるＣＰＵ処理速度制御手順を示すフローチャート
【符号の説明】
【００４６】
１…情報処理装置（パーソナルコンピュータ）、１１…ＣＰＵ、１１ａ…コア、１１ｂ…コア、１２…ホストコントローラ、１３…メインメモリ、１４…表示コントローラ、１５…表示装置、１６…表示用メモリ、１７…Ｉ／Ｏコントローラ、１８…記憶装置、１９…オーディオコントローラ、２０…電源コントローラ、２１…クロックジェネレータ、２２…ファンコントローラ、２３…キーボードコントローラ、２４…マイクロフォン、２５…冷却ファン、２６…キーボード、２７…ポインティングデバイス、１０１…ＣＰＵ処理速度制御プログラム。
【図１】
2008242949.tif 000003
【図２】
2008242949.tif 000004
【図３】
2008242949.tif 000005
【図４】
2008242949.tif 000006
【図５】
2008242949.tif 000007
【図６】
2008242949.tif 000008
【図７】
2008242949.tif 000009