(57)【要約】【課題】マイクロプロセッサに供給すべき電源電圧を最適化する。【解決手段】判定部２２は、マイクロプロセッサ１０の状態を判定する。設定部２４は、判定部２２により判定されたマイクロプロセッサ１０の状態に応じて、マイクロプロセッサ１０に対して供給すべき電源電圧Ｖｄｄを設定する。電源回路２６は、設定部２４において設定された電源電圧Ｖｄｄを、電源ライン１２を介してマイクロプロセッサ１０に供給する。判定部２２は、所定のタイミングごとにマイクロプロセッサ１０の状態を判定し、設定部２４は、判定部２２による判定毎に電源電圧Ｖｄｄを再設定する。【選択図】図２
2007213412.tif 000002
【特許請求の範囲】
【請求項１】
マイクロプロセッサに対して供給すべき電源電圧の設定方法であって、
前記マイクロプロセッサの状態を判定する判定ステップと、
前記判定ステップにより判定された状態に応じて、前記電源電圧を設定する設定ステップと、
を備え、前記判定ステップおよび前記設定ステップを、前記マイクロプロセッサが最終的に搭載される電子機器に実装された状態で実行することを特徴とする方法。
【請求項２】
前記判定ステップを、所定のタイミングごとに実行し、
前記判定ステップを実行するたびに、前記設定ステップによって、前記電源電圧を再設定することを特徴とする請求項１に記載の方法。
【請求項３】
前記判定ステップは、前記マイクロプロセッサを用いて、所定の判定プログラムを実行し、
前記設定ステップは、前記判定ステップにおいて前記判定プログラムを実行した結果にもとづき、前記電源電圧を設定することを特徴とする請求項１または２に記載の方法。
【請求項４】
前記判定ステップは、前記マイクロプロセッサに所定の処理を実行させた状態で、前記マイクロプロセッサに供給する電源電圧を順次低下させていき、
前記設定ステップは、前記マイクロプロセッサが動作可能な下限電圧を検出し、検出した下限電圧付近の電圧を、前記電源電圧として設定することを特徴とする請求項３に記載の方法。
【請求項５】
前記判定プログラムを、前記マイクロプロセッサが実装される電子機器が出荷された後に更新する更新ステップをさらに備えることを特徴とする請求項３に記載の方法。
【請求項６】
前記判定プログラムは、前記マイクロプロセッサに必要な電源電圧が最大となる処理コードを含むことを特徴とする請求項３に記載の方法。
【請求項７】
前記判定ステップは、前記マイクロプロセッサの動作電圧の下限値の指標となる特性を測定し、
前記設定ステップは、測定された指標となる特性に応じて、前記電源電圧を設定することを特徴とする請求項１または２に記載の方法。
【請求項８】
前記指標となる特性は、前記マイクロプロセッサ内に設けられたリングオシレータの発振周波数であって、
前記設定ステップは、測定された前記発振周波数にもとづき、前記電源電圧を設定することを特徴とする請求項７に記載の方法。
【請求項９】
前記判定ステップは、前記マイクロプロセッサの累積動作時間を計測する計測ステップを含み、
前記設定ステップは、前記計測ステップにより計測された累積動作時間に応じて、前記電源電圧を設定することを特徴とする請求項１または２に記載の方法。
【請求項１０】
マイクロプロセッサと、
前記マイクロプロセッサの状態を判定する判定部と、
前記判定部により判定されたマイクロプロセッサの状態に応じて、前記マイクロプロセッサに対して供給すべき電源電圧を設定する設定部と、
前記設定部において設定された電源電圧を、前記マイクロプロセッサに供給する電源回路と、
を備えることを特徴とする演算処理装置。
【請求項１１】
前記判定部は、所定のタイミングごとに前記マイクロプロセッサの状態を判定し、
前記設定部は、前記判定部による判定毎に前記電源電圧を再設定することを特徴とする請求項１０に記載の演算処理装置。
【請求項１２】
前記判定部は、前記マイクロプロセッサを用いて、所定の判定プログラムを実行し、
前記設定部は、前記判定プログラムを実行した結果にもとづき、前記電源電圧を設定することを特徴とする請求項１０または１１に記載の演算処理装置。
【請求項１３】
前記設定部および前記電源回路は、前記マイクロプロセッサに所定の処理を実行させた状態において、前記マイクロプロセッサに供給する電源電圧を順次低下させていき、
前記設定部は、前記マイクロプロセッサが動作可能な下限電圧を検出し、検出した下限電圧付近の電圧を、前記電源電圧として設定することを特徴とする請求項１２に記載の演算処理装置。
【請求項１４】
前記判定プログラムを、前記マイクロプロセッサが実装される電子機器が出荷された後に更新する更新部をさらに備えることを特徴とする請求項１２に記載の演算処理装置。
【請求項１５】
前記判定部は、前記マイクロプロセッサに必要な電源電圧が最大となる処理コードを含む判定プログラムを、前記マイクロプロセッサに実行させることを特徴とする請求項１２に記載の演算処理装置。
【請求項１６】
前記判定部は、前記マイクロプロセッサの状態として、前記マイクロプロセッサの動作電圧の下限値の指標となる特性を測定し、
前記設定部は、測定された指標となる特性に応じて、前記電源電圧を設定することを特徴とする請求項１０または１１に記載の演算処理装置。
【請求項１７】
前記マイクロプロセッサは、リングオシレータを含み、
前記判定部は、前記動作電圧の下限値の指標となる特性として、前記リングオシレータの発振周波数を測定する周波数測定部を含み、
前記設定部は、前記周波数測定部により測定された発振周波数にもとづき、前記電源電圧を設定することを特徴とする請求項１６に記載の演算処理装置。
【請求項１８】
前記判定部は、前記マイクロプロセッサの状態として、その累積動作時間を計測する計測部を含み、
前記設定部は、前記計測部により計測された累積動作時間に応じて、前記電源電圧を設定することを特徴とする請求項１０または１１に記載の演算処理装置。
【請求項１９】
マイクロプロセッサに供給すべき電源電圧の設定するためのプログラムであって、当該マイクロプロセッサが搭載される演算処理装置に、
前記マイクロプロセッサに所定の処理を実行させた状態で、前記マイクロプロセッサに供給する電源電圧を低下させていく電圧低下ステップと、
前記マイクロプロセッサが動作可能な下限電圧を検出する検出ステップと、
前記検出ステップにおいて検出された下限電圧付近の電圧を、前記電源電圧として設定する設定ステップと、
を実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ＣＰＵなどのマイクロプロセッサに対して電源電圧を供給すべき電源電圧の設定技術に関する。
【背景技術】
【０００２】
パーソナルコンピュータやワークステーション、あるいはゲーム機器などに使用されるＣＰＵなどのマイクロプロセッサには、電圧レギュレータ回路（以下、単にレギュレータ回路ともいう）によって安定化された所定の電源電圧が供給される。マイクロプロセッサに供給すべき電源電圧は、マイクロプロセッサの半導体製造プロセスなどに応じて設定され、近年の低電圧プロセスを用いたマイクロプロセッサの電源電圧は１．２Ｖ程度となっている。
【０００３】
現在、複数のベンダーによって様々なマイクロプロセッサが供給されている。各ベンダーから供給されるマイクロプロセッサは、レギュレータ回路に対し、独自の方式によって自身に供給すべき電源電圧を指示している。言い換えれば、レギュレータ回路は、マイクロプロセッサからの電源電圧の指定を受け付けられるように設計される。図８は、従来のマイクロプロセッサとレギュレータ回路の構成例を示すブロック図である。
【０００４】
図８に示すように、マイクロプロセッサ６０と、レギュレータ回路６２間は、たとえば５ビットの信号線６４でパラレル接続されている。マイクロプロセッサ６０は、この信号線６４を介してＶＩＤ（Ｖｏｌｔａｇｅ  ＩＤ）信号を送信し、レギュレータ回路６２に対して自身に供給すべき電源電圧Ｖｄｄを指示する。レギュレータ回路６２は、マイクロプロセッサ６０によって指示された電源電圧Ｖｄｄを生成し、電源ライン６６を介してマイクロプロセッサ６０に供給する。このような構成をとることにより、たとえばマイクロプロセッサ６０およびレギュレータ回路６２が搭載される機器（以下単にセットともいう）の出荷後において、ユーザが別のマイクロプロセッサ６０に交換した場合にも、交換後のマイクロプロセッサ６０に最適な電源電圧Ｖｄｄを供給することができる。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来の技術では、マイクロプロセッサ６０のＶＩＤは、マイクロプロセッサが搭載されるセットの製造時等に、一旦設定されると、その後変更されることはなかった。したがって、あるマイクロプロセッサに供給される電源電圧は、出荷後の使用時間などによらず、一定となる。
【０００６】
かかる状況においては、マイクロプロセッサを製造するベンダーは、マイクロプロセッサの経時劣化や、動作周波数、搭載されるセットにおいて発生する電圧降下、使用温度を考慮し、最悪の状態を想定したマージンを持たせて、電源電圧、すなわちＶＩＤを設定していた。このことは、本来、マイクロプロセッサが動作可能な状態よりも高い電源電圧をマイクロプロセッサに供給していることを意味する。逆にいえば、もしマイクロプロセッサの状態に応じて最適な電源電圧を設定することができれば、マイクロプロセッサの消費電力を低減することができる。
【０００７】
本発明はこうした課題に鑑みてなされたものであり、その目的は、マイクロプロセッサに供給すべき電源電圧を最適化する技術の提供にある。
【課題を解決するための手段】
【０００８】
上記課題を解決するための本発明のある態様は、マイクロプロセッサに対して供給すべき電源電圧の設定方法あるいはその設定方法を利用した演算処理装置に関する。この技術では、以下の処理を行う。
（１）  マイクロプロセッサの状態を判定する。
「マイクロプロセッサの状態」とは、そのマイクロプロセッサの性能（動作可能な最低電圧）、累積動作時間、動作周波数、使用温度、固体間のばらつきなどを意味し、さらに、搭載される機器の電源ラインのインピーダンスなども含み、広くマイクロプロセッサの動作電圧に影響を及ぼす状態を包含する概念である。
（２）  （１）において判定されたマイクロプロセッサの状態に応じて、マイクロプロセッサに供給すべき電源電圧を設定する。
（３）  （１）、（２）の２つの処理は、マイクロプロセッサが最終的に搭載される電子機器に実装された状態において、その電子機器の諸機能を動作させた状態において、少なくとも１回実行される。
【０００９】
この態様によると、マイクロプロセッサが実際に動作する状態において、マイクロプロセッサの個体ごと、搭載される機器ごとに応じて最適な電源電圧設定を行うことができる。
【発明の効果】
【００１０】
本発明によれば、マイクロプロセッサに供給すべき電源電圧を最適化することができる。
【発明を実施するための最良の形態】
【００１１】
本発明の技術思想は、以下のさまざまな態様によって実現される。はじめに、その態様の概要について説明する。
【００１２】
本発明のある態様は、マイクロプロセッサに対して供給すべき電源電圧の設定方法である。この方法は、マイクロプロセッサの状態を判定する判定ステップと、判定ステップにより判定された状態に応じて、電源電圧を設定する設定ステップと、を備える。この方法において、判定ステップおよび設定ステップは、マイクロプロセッサが電子機器に搭載された状態で実行される。
【００１３】
判定ステップを、所定のタイミングごとに実行し、判定ステップを実行するたびに、設定ステップによって、電源電圧を再設定してもよい。電子機器の電源投入時、あるいはあらかじめ定められた時刻など、所定のタイミングで、電源電圧を再設定することにより、その時々に応じた最適な電源電圧を設定することができる。
【００１４】
マイクロプロセッサの状態の判定および電源電圧の設定は、たとえば以下の態様によって実現される。
（設定方法１）
判定ステップでは、マイクロプロセッサを用いて、所定の判定プログラムが実行される。設定ステップでは、判定ステップにおいて判定プログラムを実行した結果にもとづき、電源電圧を設定される。この判定プログラムは、マイクロプロセッサに必要な電源電圧が最大となる処理コードを含んでもよい。
【００１５】
このとき、判定ステップは、マイクロプロセッサに所定の処理を実行させた状態で、マイクロプロセッサに供給する電源電圧を順次低下させていってもよい。設定ステップは、マイクロプロセッサが動作可能な下限値付近の電圧を検出し、検出した電圧を、電源電圧として設定してもよい。
電源電圧を徐々に低下させると、ある電圧以下ではマイクロプロセッサが所定の処理を実行できなくなる。そこで、マイクロプロセッサが動作可能な下限電圧を見積もり、電源電圧として設定する。この方法によれば、判定ステップを実行したときのマイクロプロセッサの状態に応じた最適な電圧設定が実現できる。
【００１６】
更新ステップによって、判定プログラムを、マイクロプロセッサが搭載される電子機器が出荷された後に更新してもよい。
【００１７】
（設定方法２）
判定ステップは、マイクロプロセッサの動作電圧の下限値の指標となる特性を測定する。たとえば、指標となる特性は、マイクロプロセッサ内に設けられたリングオシレータの発振周波数である。リングオシレータの発振周波数は、マイクロプロセッサを構成するトランジスタゲートの性能の指標となり、発振周波数が高いほど、動作電圧の下限値は低下する。この場合、周波数測定ステップによってリングオシレータの発振周波数を測定し、設定ステップにおいて、周波数測定ステップにより測定された周波数にもとづき、電源電圧を設定してもよい。
【００１８】
判定ステップは、マイクロプロセッサの累積動作時間（以下、オン時間ともいう）を計測する計測ステップを含んでもよい。設定ステップは、計測ステップにより計測された累積動作時間に応じて、電源電圧を設定してもよい。マイクロプロセッサのトランジスタゲートの性能は、マイグレーションなどによって経時的に劣化するため、最低動作電圧は、時間とともに上昇する。そこで、マイクロプロセッサの累積動作時間を計測することにより、経時劣化を加味した電源電圧の設定が可能となる。
【００１９】
本発明の別の態様は、演算処理装置である。この装置は、マイクロプロセッサと、マイクロプロセッサの状態を判定する判定部と、判定部により判定されたマイクロプロセッサの状態に応じて、マイクロプロセッサに対して供給すべき電源電圧を設定する設定部と、設定部において設定された電源電圧を、マイクロプロセッサに供給する電源回路と、を備える。
【００２０】
なお、以上の構成要素の任意の組合せ、本発明の表現を、方法、装置、システム、などの間で変換したものもまた、本発明の態様として有効である。
【００２１】
以下、本発明の実施の形態に係る演算処理装置の詳細を、図面を参照しつつ説明する。
図１は、実施の形態に係る電子機器１０００の構成を示すブロック図である。電子機器１０００は、ゲーム機器、パーソナルコンピュータ、ワークステーション、ＰＤＡなどである。以下、電子機器１０００がゲーム機器である場合を例に説明するが、本発明はこれに限定されるものではない。
【００２２】
この電子機器１０００は、演算処理装置１００、メモリ１１０、記録装置１２０、インターフェース部１３０、画像出力部１４０、バス１５０などを含んで構成される。
【００２３】
演算処理装置１００は、たとえばＣＰＵやグラフィックプロセッサなどを含むユニットであり、所定のデジタル演算処理を行う。ＣＰＵは、電子機器１０００を統合的に管理するユニットである。グラフィックプロセッサは、画像処理に特化して設計されたＬＳＩである。ＣＰＵおよびグラフィックプロセッサの機能は、ひとつのＬＳＩで実現されてもよい。グラフィックプロセッサによって生成された画像データは、画像出力部１４０を介して、図示しない外部の映像表示装置に出力される。演算処理装置１００は、記録装置１２０からプログラムやデータをメモリ１１０にロードし、演算処理を行う。
【００２４】
記録装置１２０は、ハードディスク装置や、ＤＶＤ装置などであって、本機器において実行されるプログラムなどが格納される。インターフェース部１３０は、ＵＳＢポートや、モデム、無線ＬＡＮ（Local Area Network）ユニットなどであって、外部機器やインターネットなど外部ネットワークに接続するために用いられる。各ブロックは、バス１５０によって接続されている。
【００２５】
本実施の形態に係る演算処理装置１００は、このような電子機器１０００に用いることができ、特に消費電力が大きなものに好適に用いることができる。以下、演算処理装置１００の詳細について説明する。
【００２６】
図２は、実施の形態に係る演算処理装置１００の構成を示すブロック図である。演算処理装置１００は、ＣＰＵやグラフィックプロセッサなどのマイクロプロセッサ１０と、マイクロプロセッサ１０に対して電源電圧Ｖｄｄを供給する電源装置２０を含む。ここで、各ブロックは、発明の理解のために便宜的に区別したものであり、したがって、図中、様々な処理を行う機能ブロックとして記載される各要素は、ハードウェア的には、ＣＰＵ、メモリ、その他のＬＳＩで構成することができ、ソフトウェア的には、メモリにロードされたプログラムなどによって実現される。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。
【００２７】
マイクロプロセッサ１０と電源装置２０は、電源ライン１２を介して接続される。以降の図において、同一または同等の構成要素には同一の符号を付し、適宜説明を省略するものとする。電源装置２０により駆動されるマイクロプロセッサ１０は、典型的には１．２Ｖ程度の電源電圧で動作するものである。しかしながら、実際には、実行する演算処理の内容、マイクロプロセッサ１０の温度、あるいは、実装されてからの使用年月などのさまざまな要因によって、最適な電源電圧Ｖｄｄは変化する。そこで、本実施の形態に係る演算処理装置１００は、マイクロプロセッサ１０の状態を判定し、判定結果にもとづき、マイクロプロセッサ１０に供給すべき電源電圧を動的、あるいは静的に設定する。
【００２８】
電源装置２０は、判定部２２、設定部２４、電源回路２６を含む。判定部２２は、マイクロプロセッサ１０の状態を判定する。判定部２２は、判定の結果得られたマイクロプロセッサ１０の状態を示す制御信号Ｓ１を、設定部２４に送信する。設定部２４は、制御信号Ｓ１を参照し、判定部２２により判定されたマイクロプロセッサ１０の状態に応じて、マイクロプロセッサ１０に対して供給すべき電源電圧Ｖｄｄを設定する。設定部２４は、設定した電源電圧Ｖｄｄを示す制御信号Ｓ２を、電源回路２６に送信する。電源回路２６は、レギュレータ回路などであって、設定部２４において設定された電源電圧Ｖｄｄを、マイクロプロセッサ１０に供給する。
【００２９】
判定部２２、設定部２４の機能は、たとえばハードウェア的には、システムコントローラなどによって実現することができ、また、その機能の一部を、マイクロプロセッサ１０により実行されるプログラムによって実現してもよい。
【００３０】
このように、本実施の形態に係る演算処理装置１００および電源電圧の設定方法では、マイクロプロセッサ１０を含む演算処理装置１００が電子機器１０００に実装された後に、電源電圧の設定を行う。その結果、マイクロプロセッサ１０の実動作状態において、マイクロプロセッサの個体ごと、搭載される機器ごとに応じて最適な電源電圧の設定を行うことができる。
【００３１】
以下においては、判定部２２および設定部２４によるマイクロプロセッサ１０の状態の判定および電源電圧Ｖｄｄの設定の好適な具体例について説明する。
【００３２】
（第１の設定方法）
図３は、図１の演算処理装置１００における第１の電源電圧の設定方法のフローチャートである。実装ステップＳ１００は、電子機器１０００の製造工程を示しており、この実装ステップＳ１００において、マイクロプロセッサ１０を含む演算処理装置１００が電子機器１０００に搭載される。
【００３３】
実装ステップＳ１００以降、判定ステップＳ１１０および設定ステップＳ１２０が順に実行される。判定ステップＳ１１０では、電圧供給の対象となるマイクロプロセッサ１０を用いて、所定の判定プログラムが実行される。設定ステップＳ１２０では、判定ステップＳ１１０において判定プログラムを実行した結果にもとづき、電源電圧Ｖｄｄが設定される。設定ステップＳ１３０は、設定部２４により実行される。
【００３４】
判定ステップＳ１１０および設定ステップＳ１２０は、それぞれ判定部２２および設定部２４の機能に対応する。判定ステップＳ１１０および設定ステップＳ１２０の２つのステップは、マイクロプロセッサ１０を含む演算処理装置１００が電子機器１０００に搭載された状態において実行される。
【００３５】
判定ステップＳ１１０は、マイクロプロセッサ１０の使用開始以降、所定のタイミングごとに実行してもよい。所定のタイミングとは、電子機器１０００の起動時や、夜中などのユーザが電子機器１０００を使用していない時間、あるいは予めユーザによって指定された時刻などである。この場合、判定ステップＳ１１０を実行するたびに、設定ステップＳ１２０によって、電源電圧Ｖｄｄを再設定する。判定ステップＳ１１０を、所定のタイミングごとに実行することにより、その時々に応じた最適な電源電圧を設定することができる。
【００３６】
判定ステップＳ１１０は、マイクロプロセッサ１０を用いて、所定の判定プログラムを実行してもよい。図４は、判定プログラムに含まれるルーチンの一部を示すフローチャートである。
まず、ステップＳ１１２において、所定の初期化処理を実行する。この初期化処理は、電子機器１０００の初期化に加えて、電源電圧Ｖｄｄを初期値Ｖｉｎｉｔに設定する。この電源電圧Ｖｄｄの初期値Ｖｉｎｉｔは、マイクロプロセッサ１０が以下で説明する所定の処理を確実に実行可能な程度に高い値とすることが望ましい。
【００３７】
次いで、ステップＳ１１４において、電源電圧Ｖｄｄを所定値ΔＶだけ低下させ、マイクロプロセッサ１０に対して、低下させた電源電圧Ｖｄｄ’を印加する。次いで、ステップＳ１１６において、マイクロプロセッサ１０に、所定の処理を実行させる。次いで、ステップＳ１１８において、マイクロプロセッサ１０が所定の処理を実行可能であるか判定する。もし、所定の処理が実行できれば（Ｓ１１８のＹ）、ステップＳ１１４に戻り、電源電圧Ｖｄｄを所定値だけ低下させる。もし、所定の処理が実行できなければ（Ｓ１１８のＮ）、マイクロプロセッサ１０が動作可能な下限値付近の電圧を、電源電圧として設定する（Ｓ１２０）。マイクロプロセッサ１０が動作可能な下限値付近とは、最後にマイクロプロセッサ１０が所定の処理を実行可能であった電源電圧Ｖｄｄとしてもよいし、その電圧に所定のマージンを加算した電圧としてもよい。
【００３８】
電源電圧を徐々に低下させると、ある電圧以下ではマイクロプロセッサ自体が動作しなくなったり、所定の処理を実行できなくなる。そこで、マイクロプロセッサが動作可能な下限電圧を見積もり、電源電圧として設定することにより、不要なマージンを考慮する必要がなくなるため、消費電力を低減することができる。
【００３９】
なお、ある電源電圧を低下させた結果、マイクロプロセッサ１０が動作不能となると、その後の処理が継続できなくなる場合も想定される。この場合には、マイクロプロセッサ１０とは別にサービスプロセッサを設けて再度電源電圧を増加させて再起動すればよい。
ある態様において、電子機器は、第１、第２プロセッサが搭載された形で出荷されるものである。たとえば、第１プロセッサはメインプロセッサであり、第２プロセッサはサブプロセッサであって、電源電圧の設定時以外には電子機器の通常動作に利用されるものである。第２プロセッサは、第１プロセッサを動作させながらその電源電圧を所定の初期値から下げて行くことにより到来する動作限界電圧を検出する。そして、第１プロセッサの電源電圧を第２プロセッサによって検出された動作限界電圧に所定のマージンを加えた値に設定する。
【００４０】
なお、判定プログラムにおいて実行される所定の処理は、マイクロプロセッサ１０に必要な電源電圧Ｖｄｄが最大となる処理コードを含むことが望ましい。
マイクロプロセッサ１０などのＬＳＩには、クリティカルパスと呼ばれる遅延が非常に大きくなるトランジスタゲートのパスが存在し、このパス上のゲートを利用した処理を行うとき、演算処理装置の処理能力が低く見積もられる。したがって、このクリティカルパスを使用する処理コードを判定プログラムに実装することにより、電源電圧Ｖｄｄを適切に設定することができる。
【００４１】
判定プログラムは、マイクロプロセッサ１０が搭載される電子機器１０００が出荷された後に更新可能とすることが望ましい。たとえば、図１のインターフェース部１３０を介して、インターネット上のサーバにアクセスすることにより、更新プログラムをダウンロードしてもよい。また、ＣＤ−ＲＯＭやＤＶＤ−ＲＯＭなどのディスク媒体を介して、更新プログラムを更新してもよい。それぞれの場合において、更新機能は、インターフェース部１３０や記録装置１２０によって実現される。
【００４２】
（第２の設定方法）
上述の第１の設定方法では、マイクロプロセッサ１０に所定の処理を実行させることにより、電源電圧Ｖｄｄの最適値を見積もった。これに対して、以下で説明する第２の設定方法では、まず、マイクロプロセッサ１０の動作電圧の下限値の指標となる特性を測定する。次いで、測定された指標となる特性に基づいて、電源電圧の下限値を推定して設定する。
【００４３】
マイクロプロセッサ１０の動作電圧の下限値の指標となる特性として、リングオシレータの発振周波数が挙げられる。図５は、リングオシレータの周期Ｔｐ（発振周波数ｆｏｓｃの逆数）と、動作電圧の下限値Ｖｄｄｍｉｎの関係を示す図であり、横軸がリングオシレータの周期Ｔｐを、縦軸が電源電圧の下限値Ｖｍｉｎを示している。図５に示すように、リングオシレータの周期Ｔｐと、下限値Ｖｍｉｎとの間には相関があり、リングオシレータの周期Ｔｐが長くなるほど、したがって発振周波数ｆｏｓｃが低くなるほど、電源電圧の下限値Ｖｍｉｎは上昇する。
【００４４】
そこで、第２の設定方法では、マイクロプロセッサ１０内にリングオシレータを設け、その発振周波数ｆｏｓｃを電源電圧の下限値Ｖｍｉｎの指標として利用する。図６は、第２の設定方法に係る演算処理装置１００の模式図である。リングオシレータ１４は、マイクロプロセッサ１０に設けられる。タイマ回路１６は、システムクロックＣＫを用いて、リングオシレータの周期（発振周波数）を測定する。リングオシレータ１４を構成する複数段のインバータの個数は、リングオシレータ１４の周期が、システムクロックＣＫの周期よりも十分低くなるように設計するのが望ましい。タイマ回路１６の機能は、図６に示すように、マイクロプロセッサ１０自身に実装してもよいし、マイクロプロセッサ１０の外部に実装してもよい。
【００４５】
タイマ回路１６は、測定したリングオシレータ１４の周期Ｔｐを、設定部２４に通知する。設定部２４は、通知された周期Ｔｐにもとづき、図５の相関を利用して電源電圧Ｖｄｄを設定する。演算処理装置１００は、測定した発振周波数（周期）と、電源電圧の設定値を対応付けるテーブル２８を備えていてもよい。このテーブル２８に格納すべきデータは、図５の相関を予め測定することにより取得することができる。設定部２４は、テーブル２８を参照して、適切な電源電圧Ｖｄｄを設定し、設定した電源電圧Ｖｄｄを示す制御信号Ｓ２を電源回路２６へと出力する。また、別の実施例において、リングオシレータの周期Ｔｐと電源電圧Ｖｍｉｎを計算式Ｖｍｉｎ＝ｆ（Ｔｐ）として保持しておき、この計算式にもとづいて、電源電圧の設定を行ってもよい。さらに、このテーブルや計算式は、更新可能に構成することが望ましい。
【００４６】
第２の設定方法によれば、マイクロプロセッサ１０の個体差に応じて、最適な電源電圧Ｖｄｄを設定することができる。また、同一のマイクロプロセッサ１０においても、経時劣化によって、内部のトランジスタゲートの性能は劣化するため、オン時間が長くなると、リングオシレータ１４の発振周波数は低下する場合がある。したがって、第２の設定方法では、経時劣化を考慮した電源電圧の設定を行うことができる。
【００４７】
（第３の設定方法）
第３の設定方法では、マイクロプロセッサ１０の動作電圧の下限値の指標となる特性として、マイクロプロセッサ１０の累積動作時間（POH:Power On Hour）を測定する。マイクロプロセッサ１０は、ゲートと呼ばれる無数のトランジスタ素子が集積化されて構成される。このトランジスタ素子が安定に動作する電源電圧レベルは、マイグレーションなどの経時劣化によって、徐々に上昇することが知られている。従来では、経時劣化を加味した電圧マージンを固定的に付加して電源電圧を設定する手法がとられていた。
【００４８】
これに対して、第３の設定方法では、マイクロプロセッサ１０のオン時間ＰＯＨを計測し、経時劣化に応じて電源電圧を徐々に上昇させる。図７は、従来の予め定めた電圧マージンを固定的に付加して電源電圧を設定した場合（点線）と、第３の設定方法による経過時間に応じて電源電圧を設定した場合（実線）の、オン時間ＰＯＨと最小動作電圧の増加量ΔＶの関係を示す図である。
【００４９】
マイクロプロセッサ１０のオン時間ＰＯＨは、マイクロプロセッサ１０自身で管理してもよいし、システムコントローラなどによって管理してもよい。何れの場合であっても、オン時間ＰＯＨを計測する計測部をソフトウェアあるいはハードウェアで構成することができる。
【００５０】
従来のように、固定的に電圧マージンを付加すると、オン時間が小さい場合にも必要以上に高い電源電圧を供給することになるため、消費電力が大きくなる。また、必要以上に大きい電源電圧を供給することにより、経時劣化が加速され、増加量ΔＶが大きくなるという問題があった。これに対して、第３の設定方法では、オン時間ＰＯＨに応じて、図７に実線で示す増加量ΔＶを、電源電圧に段階的に付加していく。その結果、オン時間ＰＯＨが小さい場合には、不要な電圧マージンが加算されないため、消費電力を低減することができる。さらに、電源電圧を低く設定できることから劣化が抑制され、増加量ΔＶは、点線で示した場合よりも小さくすることができる。さらに、第３の設定方法によれば、従来よりも動作電圧を下げることができ低消費電力化が図れることから、発熱量も低減するため、静音化も実現される。
【００５１】
以上、本発明について、実施の形態をもとに説明した。この実施の形態は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【００５２】
実施の形態で説明したいくつかの電源電圧の設定方法は、単独で用いてもよいし、複数を組み合わせて用いてもよい。
【００５３】
また、設定部２４から電源回路２６に指示される電源電圧Ｖｄｄの設定値と、実際にマイクロプロセッサ１０に供給される電源電圧Ｖｄｄは、電源ライン１２のインピーダンスのばらつきや、電源回路２６内部における基準電圧のばらつきなどによって、機器ごとに異なる場合が想定される。したがって、第１から第３の設定方法においては、これらのばらつきを考慮して電源電圧を設定してもよい。たとえば、マイクロプロセッサ１０および電源装置２０がセットに実装された状態で、電源電圧の設定値と、マイクロプロセッサ１０に実際に印加される電源電圧の誤差を測定し、この誤差を設定部２４による電源電圧Ｖｄｄの設定に反映させてもよい。
【図面の簡単な説明】
【００５４】
【図１】実施の形態に係る電子機器の構成を示すブロック図である。
【図２】実施の形態に係る演算処理装置の構成を示すブロック図である。
【図３】図１の演算処理装置における第１の電源電圧の設定方法のフローチャートである。
【図４】判定プログラムに含まれるルーチンの一部を示すフローチャートである。
【図５】リングオシレータの周期Ｔｐと、動作電圧の下限値Ｖｄｄｍｉｎの関係を示す図である。
【図６】第２の設定方法に係る演算処理装置の模式図である。
【図７】オン時間ＰＯＨと最小動作電圧の増加量ΔＶの関係を示す図である。
【図８】従来のマイクロプロセッサとレギュレータ回路の構成例を示すブロック図である。
【符号の説明】
【００５５】
１０  マイクロプロセッサ、  １２  電源ライン、  １４  リングオシレータ、  １６  タイマ回路、  ２０  電源装置、  ２２  判定部、  ２４  設定部、  ２６  電源回路、  １００  演算処理装置、  １１０  メモリ、  １２０  記録装置、  １３０  インターフェース部、  １４０  画像出力部、  １５０  バス、  １０００  電子機器。
【図１】
2007213412.tif 000003
【図２】
2007213412.tif 000004
【図３】
2007213412.tif 000005
【図４】
2007213412.tif 000006
【図５】
2007213412.tif 000007
【図６】
2007213412.tif 000008
【図７】
2007213412.tif 000009
【図８】
2007213412.tif 000010