1つの装置であって、1つのプロセッサの動作電圧を前記プロセッサのコアおよび/あるいはバスのクロック周波数の1つの変化に応じて調整する第2の手段であって、前記動作電圧が1人のユーザによって前記コアおよび/あるいはバスのクロック周波数とは無関係に調整されることを防止する第2の手段を含む装置。請求項1の装置であって、前記プロセッサのコアクロックを設定する1つの周波数と、前記プロセッサに結合された前記バスを設定する1つの周波数との間の1つの比コア/バス比を求める1つの第1の手段をさらに含む装置。請求項2の装置であって、前記第2の手段が、前記コア/バス比を1つの変数とする1つの一次方程式に従って前記動作電圧を調整する装置。請求項3の装置であって、前記一次方程式の1つの勾配が前記プロセッサの1つの最大および最小許容動作電圧および前記プロセッサの1つの最大および最小許容コア/バス比の間の前記差の1つの比に依存する装置。請求項1の装置であって、前記第2の手段が前記プロセッサの前記動作電圧を自動的に複数回調整し、前記プロセッサをリブートしなくても前記プロセッサが各動作電圧で機能できる装置。請求項5の装置であって、前記第2の手段が前記プロセッサ内に格納され、1人のユーザが利用できない複数のマイクロアーキテクチャ命令を含み、前記複数のマイクロアーキテクチャ命令が前記プロセッサによって実行されると、前記第1の手段によって求められた前記コア/バス比に応じて前記プロセッサの動作電圧が調整される装置。請求項4の装置であって、前記第2の手段が、前記一次方程式を実装するためのプロセッサロジックを含む装置。請求項4の装置であって、前記一次方程式を実装するために、前記第2の手段が複数のコンピュータ読み取り可能マイクロアーキテクチャ命令とプロセッサロジックとの1つの組み合わせを含む装置。1つの方法であって、1つのプロセッサのコアクロック周波数と、前記プロセッサが1つのコンピュータシステム内の他の複数のエージェントとの通信に使用する1つのバスの1つの周波数との間の1つの比コア/バス比の1つの変化を検出する工程と、前記コア/バス比の前記変化の検出に応じて、前記コア/バス比を1つの変数とする1つの一次方程式に従って前記プロセッサの動作電圧を動的に調整する工程と、を含む方法。請求項9の方法であって、前記検出工程が、前記コア/バス比を制御するための1つのマシンレジスタに書き込まれる1つのコマンドを解釈する工程を含む方法。請求項10の方法であって、前記検出工程が、前記変更後のコア/バス比が前記プロセッサの1つの許容範囲内にあるかどうかを識別する工程を含む方法。請求項11の方法であって、前記変更後のコア/バス比が前記プロセッサの1つの許容範囲内にあり、前記コマンドが前記コア/バス比を制御するための1つのマシンレジスタに書き込まれた場合は、前記プロセッサの1つの最大および最小許容動作電圧および前記プロセッサの1つの最大および最小許容コア/バス比の間の前記差に応じて前記一次方程式の前記勾配を計算する方法。請求項12の方法であって、前記電源が1人のユーザによって前記コアあるいはバスのクロック周波数とは無関係に調整されないように、1つの値を前記プロセッサの電源にプログラミングすることによって前記プロセッサの動作電圧を調整する方法。請求項13の方法であって、前記プロセッサの電源を、前記プロセッサをリブートしなくても前記プロセッサが動作できる1つの許容範囲内の複数の動作電圧間で調整する方法。請求項14の方法であって、複数のマイクロアーキテクチャ命令を前記プロセッサ内で実行することによって、前記一次方程式を実装する方法。請求項14の方法であって、プロセッサの論理回路を介して前記一次方程式を実装する方法。請求項14の方法であって、プロセッサロジックと前記プロセッサ内の複数のマイクロアーキテクチャ命令との1つの組み合わせによって前記一次方程式を実装する方法。1つのシステムであって、複数の装置間で情報を伝達するための1つのバスと、前記バスに結合された1つのプロセッサであって、前記プロセッサが機能する前記電圧動作電圧を、前記プロセッサのコア周波数と前記バス周波数との前記比コア/バス比の1つの変化に応じて、前記プロセッサをリブートせずに動的に切り替え、前記コア/バス周波数と動作電圧との組み合わせが1人のユーザによって前記プロセッサを損傷しうる組み合わせにされることを防止するためのロジックを含むプロセッサと、を含むシステム。請求項18のシステムであって、1つの電圧識別値Vidを前記プロセッサに結合された1つの可変電源にプログラミングすることによって前記動作電圧を調整するシステム。請求項19のシステムであって、前記Vidが前記コア/バス比の1つの線形関数であるシステム。請求項20のシステムであって、前記線形関数を実行するためにプロセッサのマイクロコードを用いるシステム。請求項20のシステムであって、前記線形関数を実行するためにプロセッサのロジックを用いるシステム。請求項21のシステムであって、前記線形関数に対応する1つの曲線の前記勾配が前記プロセッサの1つの最大および最小許容動作電圧および前記プロセッサの1つの最大および最小許容コア/バス比の間の前記差の1つの比に依存するシステム。請求項23のシステムであって、前記バスに結合された複数の命令を格納するための1つのメモリと前記バスに結合された1つのオーディオ装置とをさらに含むシステム。1つのプロセッサであって、前記プロセッサのコアクロックを設定する1つの周波数と、前記プロセッサに結合された1つのバスを設定する1つの周波数との間の比コア/バス比を求めるための第1のロジックと、前記第1のロジックによって求められた前記コア/バス比に応じて前記プロセッサの動作電圧を調整し、前記プロセッサの動作電圧が1人のユーザによって調整されることを防止するための第2のロジックと、を含むプロセッサ。請求項25のプロセッサであって、ユーザが利用可能な1つのマシンレジスタを使わずに、前記プロセッサの電源を構成することによって前記第2のロジックが前記動作電圧を調整するプロセッサ。請求項25のプロセッサであって、前記コア/バス比を1つの変数とする1つの一次方程式に従って前記第2のロジックが前記動作電圧を調整するプロセッサ。請求項27のプロセッサであって、前記一次方程式の1つの勾配が前記プロセッサの1つの最大および最小許容動作電圧および前記プロセッサの1つの最大および最小許容コア/バス比の間の前記差の1つの比に依存するプロセッサ。請求項25のプロセッサであって、前記プロセッサの前記動作電圧が前記第2のロジックによって複数回調整され、リブートなしに各動作電圧で機能可能なプロセッサ。請求項29のプロセッサであって、前記第2のロジックが前記プロセッサ内に格納されている、1人のユーザが利用できない複数のマイクロアーキテクチャ命令を実行し、前記第2のロジックによって前記複数のマイクロアーキテクチャ命令が実行されると、前記第1のロジックによって求められた前記コア/バス比に応じて前記プロセッサの動作電圧が調整されるプロセッサ。これら複数の従来技術の手法では、1人のユーザが動作電圧および/あるいは複数のバスおよび/あるいはコアクロック周波数をそれぞれ個別に変更できるので、動作電圧とコア/バス周波数との組み合わせによってはプロセッサの損傷あるいはプロセッサの動作の信頼性低下を引き起こしうるので都合が悪い。本発明の複数の実施形態は、1つのマイクロプロセッサ内の電源制御に関する。より具体的には、本発明の複数の実施形態は、プロセッサの動作電圧をプロセッサのバスおよび/あるいはコアクロック周波数の1つの関数として制御するための1つの手法に関する。本発明の複数の実施形態は、プロセッサのコアおよび/あるいはバスクロック周波数の1つの変化に応じて、1つのプロセッサの動作電圧の計算及び調整を行う。さらに、本発明の複数の実施形態において、プロセッサの動作電圧を自動的に調整する方法は、コアおよび/あるいはバス周波数の1つの変化に応じてプロセッサが適切な動作電圧を設定できることによるので、ユーザが動作電圧を変更しなくてすむ。本発明の1つの実施形態は、プロセッサのバス/コア周波数比Rの1つの変化に応じて、1つのプロセッサの動作電圧を計算及び調整する。さらに、少なくとも1つの実施形態は、1つの最小許容動作電圧/R点と1つの最大許容動作電圧/R点との間の1つの曲線から求められた1つの動作電圧値Vidに応じて1つのプロセッサの動作電圧を調整する。個々の図面を参照しながら本願明細書で説明するいくつかの実施形態は、1つのプロセッサコア/バス周波数比に応じて1つのプロセッサの1つの動作電圧をどのように変えることができるかを示すが、他の複数の実施形態では、プロセッサのコア周波数だけに応じてプロセッサの動作電圧を変えてもよい。さらに、他の複数の実施形態では、バス周波数に応じてプロセッサの動作電圧を変えてもよく、また他の複数の実施形態では、コアおよびバス周波数の他の何らかの数学的組み合わせたとえば積に応じて動作電圧を変えてもよい。図1は、1つのプロセッサの動作電圧Vidをコア/バス周波数比Rの1つの関数として示す1つのグラフである。本発明の1つの実施形態では、曲線101の勾配およびy軸切片105を求めることによって、1つの所与のR値に対して適切な図1のVidが計算される。y軸切片は、プロセッサの最小許容動作電圧に対応して、さまざまなプロセッサ間で異なりうる。少なくとも1つの実施形態においては、Vid範囲をコア/バス比範囲で割ることによって図1の曲線の勾配を計算する。Vid範囲は、最小許容コア/バス周波数比に対応するプロセッサの最小許容動作電圧と、最大許容コア/バス周波数比110に対応するプロセッサの最大許容電圧範囲との間の差である。図1の曲線の勾配が計算されると、一次方程式Vid=mRVidMinによって1つの所与のコア/バス周波数比から何れの動作電圧Vidでも計算しうる。式中のmは曲線の勾配であり、Rは1つの特定のコア/バス比に相当するx軸上の一点であり、VidMinは図1のy軸切片に相当するプロセッサの最小許容動作電圧である。1つのコア/バス比Rが与えられると、図1の曲線から何れの動作電圧Vidでも求めうる。1つの実施形態においては、Rに1つの変化があるたびに、プロセッサの動作中にプロセッサをリブートしなくても動作電圧が動的に切り替わる。本発明の1つの実施形態においては、コア/バス周波数比の1つの変化を検出して、図1の曲線に応じて1つの新しいVid値を計算することによって動作電圧の動的切り替えを容易にすることができる。さらに、プロセッサのコア/バス周波数比だけを構成することによってプロセッサにVidを自動的に選択させうるので、従来技術のようにオペレーティングシステムあるいはBIOSがコア/バス周波数比および複数のVid値の両方を1つのマシン固有レジスタに書き込まなくてよい。この方法では、プロセッサの動作電圧の切り替えが動的に行われるばかりでなく、従来技術に比べより安全に行われるが、この理由はプロセッサが複数のユーザによってプロセッサの損傷あるいはプロセッサの動作の信頼性低下を引き起こしうるVid/Rの1つの組み合わせに置かれる可能性がなくなるからである。一般に、最大許容コア/バス周波数比および最小許容コア/バス周波数比は、プロセッサ内に格納されている、対応する1つの二進値を通じて検出できる。さらに、1つのプロセッサが動作する1つのコア/バス周波数比は、1つのマシン固有レジスタMSRなどの1つのマシンレジスタ内の1つの対応値を読み取ることによって検出できる。ただし、得られたVidを1つのMSRに書き込まなくてもよく、代わりにプロセッサがVidを自動的に計算し、結果として得られた値を用いてプロセッサの電源制御装置を構成しうるので、ユーザによるVidの直接の変更の危険性および可能性を回避しうる。1つの実施形態においては、プロセッサ内の一般にマイクロコードとして公知の複数のコンピュータ読み取り可能マイクロアーキテクチャ命令によって、図1の曲線のような1つの曲線に応じて1つの特定のコア/バス周波数比に対応する動作電圧を計算することができる。さらに、他の複数の実施形態においては、プロセッサのロジックによって、あるいはプロセッサのロジックとマイクロコードとの1つの組み合わせによって、複数のVid計算をすることができる。他の複数の実施形態においては、システムのニーズに応じて、マイクロコード以外の他のソフトウェアを用いてこれら複数の計算を実行してもよい。図2は、本発明の1つの実施形態による複数の工程を示す1つのフローチャートである。図2においては、プロセッサの複数の状態遷移を制御するプロセッサのロジックあるいはマイクロコードなどのソフトウェアを用いて、プロセッサの動作電圧およびコア/バス周波数比を変更することができる。たとえば、工程201においては、1つの値を1つのMSRレジスタに書き込むコマンドなどの1つのコマンドの宛先が、プロセッサの動作電圧および/あるいはコア/バス周波数比を制御する1つのマシンレジスタであるかどうかを判定する。そうである場合は、次に工程205において、要求されたコア/バス比がプロセッサの許容範囲内であるかどうかを判定する。そうでない場合は、工程207において、1つの障害条件を通知する。そうである場合は、図1に一例として示したVid/R曲線の勾配を工程210で計算することができ、さらに工程215で要求されたコア/バス比に対応する目標Vidを計算できる。次に工程220において、この目標Vidを使用してプロセッサの可変電源をプログラミングしうる。図3は、本発明の1つの実施形態を使用しうる1つのフロントサイドバスFSBコンピュータシステムを示す。プロセッサ305は、レベル1L1の1つのキャッシュメモリ310およびメインメモリ315のデータにアクセスする。本発明の他の複数の実施形態においては、このキャッシュメモリは、1つのコンピュータシステムの1つのメモリ階層内のレベル2L2の1つのキャッシュメモリあるいは他のメモリでもよい。さらに、実施形態によっては、図3のコンピュータシステムに1つのL1キャッシュと1つのL2キャッシュとを含めてもよく、この場合は、コヒーレンシーデータをL1キャッシュとL2キャッシュとの間で共有するための1つの包含的キャッシュ階層を含む。図3のプロセッサ内に、本発明306の1つの実施形態が示されている。ただし、本発明の他の複数の実施形態は、このシステム内の他の複数の装置内、たとえば1つの個別バスエージェント内、に実装してもよく、あるいはシステム全体のハードウェア、ソフトウェア、またはこれらの組み合わせに分散させてもよい。メインメモリは、動的ランダムアクセスメモリDRAMなどの各種メモリソース、1つのハードディスクドライブHDD320、あるいはさまざまな複数の記憶装置および複数の技術を含むネットワークインタフェース330を介してコンピュータシステムから離れた場所にある1つのメモリソースに実装してもよい。キャッシュメモリは、プロセッサ内あるいはプロセッサの近傍、たとえばプロセッサのローカルバス307上に配置してもよい。さらに、キャッシュメモリは、1つの6トランジスタ6Tセルなど比較的高速な複数のメモリセル、あるいはアクセス速度がほぼ同じかより速い他のメモリセルを含んでもよい。図3のコンピュータシステムは、ポイントツーポイントPtPネットワーク上の各エージェント専用の複数のバス信号を介して通信する、複数のマイクロプロセッサなどの複数のバスエージェントから成る1つのPtPネットワークでもよい。複数の格納動作が複数のバスエージェント間で1つの迅速な方法で行われるように、発明306の少なくとも1つの実施形態は、各バスエージェント内に存在するか、あるいは各バスエージェントに少なくとも対応付けられる。図4は、1つのポイントツーポイントPtP構成に構成された1つのコンピュータシステムを示す。特に、図4は、複数のプロセッサ、メモリ、および複数の入出力装置がいくつかのポイントツーポイントインタフェースによって相互接続されている1つのシステムを示す。図4のシステムは、いくつかのプロセッサをさらに含みうるが、明確にする目的で、そのうちの2つのプロセッサ470、480だけが図示されている。複数のプロセッサ470、480は、メモリ22、24と接続するべく、それぞれ1つのローカルメモリコントローラハブMCH472、482を含みうる。複数のプロセッサ470、480は、複数のPtPインタフェース回路478、488を使用して、1つのポイントツーポイントPtPインタフェース450経由でデータを交換してもよい。複数のプロセッサ470、480は、複数のポイントツーポイントインタフェース回路476、494、486、498をそれぞれ使用して、個々のPtPインタフェース452、454経由で1つのチップセット490とデータを交換してもよい。チップセット490もまた、1つの高性能グラフィックスインタフェース439経由で1つの高性能グラフィックス回路438とデータを交換してもよい。本発明の少なくとも1つの実施形態は、図4の複数のPtPバスエージェントのそれぞれの内部にある複数のPtPインタフェース回路内に配置してもよい。ただし、本発明の他の複数の実施形態は、図4のシステム内の他の複数の回路、複数の論理演算ユニット、あるいは複数の装置に存在してもよい。さらに、本発明の他の複数の実施形態を、図4に示すいくつかの回路、いくつかの論理演算装置、あるいはいくつかの装置に分散させてもよい。複数の実施例を参照しながら本発明を説明してきたが、この説明は本発明を限定するためのものではない。上記複数の実施例のさまざまな変更、並びに他の複数の実施形態が本発明の精神と範囲に含まれることは、本発明に関係する業界の当業者には明らかであろう。