(57)【要約】【課題】　消費電力の低減と適度な動作速度とを同時に実現する。【解決手段】　ＰＬＬ回路部３で生成される動作クロック信号ＣＰＣＫの周波数を２つの分周値記憶部２，１２に書き込む分周値Ｎ，Ｍによって任意の値に設定する。また、ＰＬＬ回路部３内の電圧制御発振器に入力される電圧制御信号ＬＰＳを、電源電圧制御部９にも供給する。電源電圧制御部９は、電圧制御信号ＬＰＳに応じて、ＣＰＵ部１などの他の回路に供給する電源電圧Ｅのレベルを制御する。動作クロック信号ＣＰＣＫの周波数と電源電圧Ｅのレベルは、いずれも電圧制御信号ＬＰＳの電圧レベルに依存しているので、消費電力の低減と適度な動作速度とを同時に実現することができる。【選択図】　図１
2004030686.tif 000002
【特許請求の範囲】
【請求項１】
　マイクロプロセッサを備える情報処理装置であって、
　所望の周波数を有する動作クロック信号を生成して前記マイクロプロセッサに供給するクロック信号生成手段と、
　前記動作クロック信号の周波数に応じた電圧レベルを有する出力電圧を発生し、前記マイクロプロセッサに電源として供給する電源電圧制御手段と、
を備えることを特徴とする情報処理装置。
【請求項２】
　請求項１記載の情報処理装置であって、
　前記クロック信号生成手段は、
　基準クロック信号を発生する基準クロック信号発生手段と、
　所望の第１の分周値に応じて前記動作クロック信号を分周することによって、分周クロック信号を生成する第１の分周器と、
　前記基準クロック信号と前記分周クロック信号との位相を一致させるように、前記動作クロック信号の周波数を調整しつつ前記動作クロック信号を生成するＰＬＬ回路と、
を備える情報処理装置。
【請求項３】
　請求項２記載の情報処理装置であって、
　前記ＰＬＬ回路は、
　前記基準クロック信号と前記分周クロック信号の位相を比較し、前記位相の差分に応じた誤差信号を生成する位相比較器と、
　前記誤差信号を入力とするローパスフィルタと、
　前記ローパスフィルタの出力信号に応じて前記動作クロック信号を生成する電圧制御発振器とを備えており、
　前記電源電圧制御手段は、
　前記ローパスフィルタの出力信号の電圧レベルに応じて前記出力電圧を制御する電圧制御回路を備える、
情報処理装置。
【請求項４】
　請求項２または３記載の情報処理装置であって、
　前記クロック信号生成手段は、さらに、
　前記所望の第１の分周値を記憶する第１の分周値メモリを備えており、
　前記情報処理装置は、さらに、
　前記第１の分周値メモリと前記マイクロプロセッサとを電気的に接続する第１のバス、を備える情報処理装置。
【請求項５】
　請求項４記載の情報処理装置であって、
　前記基準クロック信号発生手段は、さらに、
　所定の周波数を有する原クロック信号を発生する原クロック信号発生手段と、
　前記前記原クロックを所望の第２の分周値で分周することによって前記基準クロック信号を生成する第２の分周器と、
　前記所望の第２の分周値を記憶する第２の分周値メモリと、を備えており、
　前記情報処理装置は、さらに、
　前記第２の分周値メモリと前記マイクロプロセッサとを電気的に接続する第２のバス、
を備える情報処理装置。
【請求項６】
　請求項１ないし５のいずれかに記載の情報処理装置であって、
　前記電源電圧制御手段は、
　前記動作クロック信号を入力とし、前記動作クロック信号の周波数に応じて前記出力電圧を制御する電圧制御回路を備える、
情報処理装置。
【請求項７】
　請求項１ないし６のいずれかに記載の情報処理装置であって、
　前記電源電圧制御手段は、
　前記出力電圧の上限を規定する上位電圧限界制御手段と、
　前記出力電圧の下限を規定する下位電圧限界制御手段と、
を備える情報処理装置。
【請求項８】
　請求項１ないし７のいずれかに記載の情報処理装置であって、
　クロック信号生成手段は、
　前記動作クロック信号の最大周波数を規制する周波数リミッタを備える、
情報処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
　この発明は、消費電力を効率化した情報処理装置に関する。
【背景技術】
【０００２】
　図１０は、従来の情報処理装置を示すブロック図である。この情報処理装置は、ＣＰＵ（中央演算処理装置）部１００にＲＯＭ（リードオンリメモリ）部１０５、ＲＡＭ（ランダムアクセスメモリ）部１０６、記憶装置部１０７、入出力部１０８で構成されたシステムである。従来の装置では、未操作時にＣＰＵ１００の動作クロック周波数をスイッチ１０４で３０ＭＨｚから数ＫＨｚに切換えたり、システムへの供給電源を設計段階で５Ｖから３．３Ｖへと低下させることによって低消費電力化が行われていた。
【０００３】
　図１０に示す装置では、さらに、２系統の発振部１０１，１０２が発生する２種類のクロック信号の一方を選択してＣＰＵ１００に与えることによって、ＣＰＵ１００の動作周波数を切り替えることができるようになっている。２つの発振部１０１，１０２の切換えがスイッチ１０９で指示されると、スイッチ１０９からの指示に応じてタイミング制御部１０３がＣＰＵクロックの切換えタイミングを発生し、これに応じてスイッチ１０４で切換えを実行する。このようにクロックを切換える目的は、アプリケーションプログラムの動作速度を調整することにある。例えば、比較的低速なＣＰＵで実行されることを前提として作成されたゲーム用ソフトウェアを高速なＣＰＵ部１００で実行すると、操作者にとって動作速度が早すぎるような場合がある。このような場合に、クロック周波数を低減すれば動作速度を緩和することができる。
【０００４】
　しかし、上述した従来の情報処理装置については、次のような問題がある。
【０００５】
　１．Ｃ−ＭＯＳトランジスタを用いた回路では、電源電圧を下げると動作速度が低下してしまう。従って、情報処理装置の電源電圧を下げることによって低消費電力を達成する方法では、電圧低下に伴って装置全体の性能が低下する。
【０００６】
　２．入力操作を行なわない時にＣＰＵクロックを切換えることによって低消費電力を達成する方法では、入力操作時には常にＣＰＵクロックが最大周波数になるので、入力操作時には消費電力を低減することができない。
【０００７】
　３．２種類のＣＰＵクロックを切換える方法では、アプリケーションプログラム毎に適切な動作速度を得ることは困難である。
【発明の開示】
【発明が解決しようとする課題】
【０００８】
　本発明は、従来技術における上述の課題を解決するためになされたものであり、消費電力の低減と適度な動作速度とを同時に実現できる情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【０００９】
　上述の課題を解決するため、本発明による情報処理装置は、マイクロプロセッサを備える情報処理装置であって、
　所望の周波数を有する動作クロック信号を生成して前記マイクロプロセッサに供給するクロック信号生成手段と、
　前記動作クロック信号の周波数に応じた電圧レベルを有する出力電圧を発生し、前記マイクロプロセッサに電源として供給する電源電圧制御手段と、
を備えることを特徴とする。
【００１０】
　電源電圧制御手段は、マイクロプロセッサの動作クロック信号の周波数に応じた電圧レベルの電源電圧をマイクロプロセッサに供給する。従って、動作クロック信号の周波数を適切な値に設定することによって、適切な動作速度を達成しつつ、消費電力を低減することができる。
【００１１】
　前記クロック信号生成手段は、
　基準クロック信号を発生する基準クロック信号発生手段と、
　所望の第１の分周値に応じて前記動作クロック信号を分周することによって、分周クロック信号を生成する第１の分周器と、
　前記基準クロック信号と前記分周クロック信号との位相を一致させるように、前記動作クロック信号の周波数を調整しつつ前記動作クロック信号を生成するＰＬＬ回路と、を備えるものとしてもよい。
【００１２】
　こうすれば、第１の分周値を調整することによって、動作クロック信号の周波数を所望の値に設定することができる。
【００１３】
　前記ＰＬＬ回路は、
　前記基準クロック信号と前記分周クロック信号の位相を比較し、前記位相の差分に応じた誤差信号を生成する位相比較器と、
　前記誤差信号を入力とするローパスフィルタと、
　前記ローパスフィルタの出力信号に応じて前記動作クロック信号を生成する電圧制御発振器とを備えており、
　前記電源電圧制御手段は、
　前記ローパスフィルタの出力信号の電圧レベルに応じて前記出力電圧を制御する電圧制御回路を備えるものとしてもよい。
【００１４】
　電圧制御発振器で生成される動作クロック信号の周波数は、ローパスフィルタの出力信号の電圧レベルに依存する。このローパスフィルタの出力信号の電圧レベルに応じてマイクロプロセッサに与えられる電源電圧を制御するので、マイクロプロセッサの電源電圧と動作クロック周波数を互いに関連づけて制御することができる。
【００１５】
　前記クロック信号生成手段は、さらに、
　前記所望の第１の分周値を記憶する第１の分周値メモリを備えており、
　前記情報処理装置は、さらに、
　前記第１の分周値メモリと前記マイクロプロセッサとを電気的に接続する第１のバス、を備えるものとしてもよい。
【００１６】
　こうすれば、マイクロプロセッサにより第１の分周値を書き換えることによって、動作クロック信号の周波数を所望の値に設定することができる。
【００１７】
　前記基準クロック信号発生手段は、さらに、
　所定の周波数を有する原クロック信号を発生する原クロック信号発生手段と、
　前記前記原クロックを所望の第２の分周値で分周することによって前記基準クロック信号を生成する第２の分周器と、
　前記所望の第２の分周値を記憶する第２の分周値メモリと、を備えており、
　前記情報処理装置は、さらに、
　前記第２の分周値メモリと前記マイクロプロセッサとを電気的に接続する第２のバス、を備える。
【００１８】
　こうすれば、マイクロプロセッサにより第１と第２の分周値を書き換えることによって、動作クロック信号の周波数を任意の所望の値に設定することができる。
【００１９】
　前記電源電圧制御手段は、
　前記動作クロック信号を入力とし、前記動作クロック信号の周波数に応じて前記出力電圧を制御する電圧制御回路を備えるものとしてもよい。
【００２０】
　こうすれば、マイクロプロセッサの電源電圧と動作クロック周波数を互いに関連づけて制御することができる。
【００２１】
　前記電源電圧制御手段は、
　前記出力電圧の上限を規定する上位電圧限界制御手段と、
　前記出力電圧の下限を規定する下位電圧限界制御手段と、を備えるものとしてもよい。
【００２２】
　こうすれば、マクロプロセッサに与えられる電源の電圧を適切な範囲に限定することができる。
【００２３】
　前記クロック信号生成手段は、
　前記動作クロック信号の最大周波数を規制する周波数リミッタを備えるものとしてもよい。
【００２４】
　こうすれば、マイクロプロセッサの動作クロック信号の周波数が、過渡的にも所定の上限周波数を越えないようにすることができるので、安定した動作を維持することができる。
【発明を実施するための最良の形態】
【００２５】
　図１は、本発明の第１の実施例としてのコンピュータシステムを示すブロック図である。このコンピュータシステムは、ＣＰＵ部１と、ＣＰＵバス１０と、ＲＯＭ部４と、ＲＡＭ部５と、記憶装置部６と、入出力部７と、加減速発振部８とを備えている。ＲＯＭ部４、ＲＡＭ部５、記憶装置部６、入出力部７、および加減速発振部８は、ＣＰＵバス１０に接続されている。加減速発振部８は、ＣＰＵ部１の同期動作を規定する動作クロック信号ＣＰＣＫを生成してＣＰＵ部１に供給するとともに、コンピュータシステムの他の回路（ＣＰＵ部１、ＲＯＭ部４、ＲＡＭ部５等）に供給する電源電圧Ｅを発生している。ＣＰＵ部１は、ＣＰＵバス１０を通じてシステム全体の動作を制御する。入出力部７への入力は、キ−ボ−ド、マウス、スタイラスペン、タッチパネル、ネットワークの受信回路などの入力デバイスから入力されるデータである。入出力部７からの出力は、ＣＲＴディスプレイ、液晶等の平面表示体などの出力デバイスに与えられる信号である。加減速発振部８は、ＰＬＬ（位相同期ループ）回路部３と、分周値記憶部２と、基準分周値記憶部１２と、電源電圧制御部９とを備えている。
【００２６】
　図２は、加減速発振部８の内部構成を示す回路ブロック図である。ＰＬＬ回路部３は、位相比較部２０と、ループフィルタ（ＬＰＦ）２１と、電圧制御発振器（ＶＣＯ）２２と、分周器２３と、基準発振部２４と、発振子２５と、基準分周器２７とを備えている。なお、位相比較部２０とループフィルタ２１と電圧制御発振器２２とは、狭義のＰＬＬ回路を構成している。電源電圧制御部９は、上位電圧限界制御部９ａと、下位電圧限界制御部９ｂと、電源電圧制御回路９ｃとを備えている。
【００２７】
　基準分周値記憶部１２と分周値記憶部２は、バスを介してＣＰＵ部１に接続されており、ＣＰＵ部１により設定された基準分周値Ｍと分周値Ｎとをそれぞれ記憶している。水晶振動子などの発振子２５が設けられた基準発振部２４は、原クロック信号ＲＣＫ０を生成する。基準分周器２７は、基準分周値記憶部１２に記憶された分周値Ｍで原クロック信号ＲＣＫ０を分周することによって、基準クロック信号ＲＣＫ１を生成する。
【００２８】
　なお、分周値Ｎと基準分周値Ｍは、本願発明における第１と第２の分周値にそれぞれ相当している。
【００２９】
　基準分周器２７で生成された基準クロック信号ＲＣＫ１は、位相比較部２０に基準信号として入力される。分周器２３によって生成される分周信号ＤＶＣＫは、位相比較部２０に比較信号として入力される。位相比較部２０は、これら２つの信号ＲＣＫ１，ＤＶＣＫの位相差を示す誤差信号ＣＰＳを生成する。この誤差信号ＣＰＳは、チャ−ジポンプ回路を内蔵するループフィルタ２１に送られる。ループフィルタ２１内のチャージポンプ回路は、誤差信号ＣＰＳのパルスレベルとパルス数とに応じた電圧レベルを有する電圧制御信号ＬＰＳを生成して出力する。
【００３０】
　ループフィルタ２１で生成された電圧制御信号ＬＰＳは、電圧制御発振器２２と電源電圧制御部９とに供給される。電圧制御発振器２２は、電圧制御信号ＬＰＳの電圧レベルに応じた発振周波数を有する動作クロック信号ＣＰＣＫを出力する。この動作クロック信号ＣＰＣＫは、分周値記憶部２に記憶された分周値Ｎに基づいて、分周器２３で１／Ｎに分周される。分周器２３で生成された分周信号ＤＶＣＫは、前述したように、位相比較部２０に送られて基準クロック信号ＲＣＫ１と位相比較される。そして、２つの信号ＲＣＫ１，ＤＶＣＫの位相差が０になるように、動作クロック信号ＣＰＣＫの周波数が収束していく。収束後の動作クロック信号ＣＰＣＫの周波数は、第１の基準クロック信号ＲＣＫ１の周波数ｆRCK1に分周値Ｎを乗じた値となる。
【００３１】
　原クロック信号ＲＣＫ０の周波数ｆRCK0と、基準クロック信号ＲＣＫ１の周波数ｆRCK1と、動作クロック信号ＣＰＣＫの周波数ｆCPCKとの関係は次の通りである。
　ｆRCK1＝ｆRCK0／Ｍ　　　　　　　　　　　…（１）
　ｆCPCK＝Ｎ×ｆRCK1＝Ｎ×ｆRCK0／Ｍ　　　…（２）
【００３２】
　例えば、ｆRCK0＝１０ＫＨｚ，Ｍ＝４，Ｎ＝２とすれば、ｆRCK1＝２．５ＫＨｚ，ｆCPCK＝５ＫＨｚとなる。
【００３３】
　ＣＰＵ部１が、分周値記憶部２に記憶された分周値Ｎと、基準分周値記憶部１２に記憶された基準分周値Ｍの値を書き換えると、動作クロック信号ＣＰＣＫの周波数ｆCPCKを連続的に任意の所望の値に設定することができる。これは、分周値記憶部２と基準分周値記憶部１２とを設けるようにした利点である。
【００３４】
　電源電圧制御部９は、電源電圧Ｅの上限電圧と下限電圧とを規定するための上位電圧限界制御部９ａおよび下位電圧限界制御部９ｂと、電源電圧Ｅのレベルを制御するための電源電圧制御回路９ｃとを備えている。ループフィルタ２１で得られた電圧制御信号ＬＰＳは電源電圧制御部９に供給され、システムの他の回路に供給される電源電圧Ｅがこの電圧制御信号ＬＰＳに応じて制御される。但し、ループフィルタ２１と電圧制御発振器２２には、電源電圧制御部９からの出力電圧Ｅとは別に、図示しない他の電源から固定電圧が供給されている。
【００３５】
　電源電圧制御部９は、電圧制御信号ＬＰＳの電圧レベルに応じて出力電圧Ｅのレベルを制御している。前述したように、ＣＰＵ部１に与えられる動作クロック信号ＣＰＣＫの周波数ｆCPCKも、電圧制御信号ＬＰＳの電圧レベルに応じて制御されている。換言すれば、動作クロック信号ＣＰＣＫの周波数とシステムの電源電圧Ｅとは互いに関連付けられており、従って、コンピュータシステムは、動作クロック信号ＣＰＣＫの周波数に応じた適切な速度で動作し、かつ、その消費電力も動作クロック信号ＣＰＣＫの周波数に応じて低減される。
【００３６】
　図３は、電源電圧制御部９の内部構成を示すブロック図である。上位電圧限界制御部９ａと下位電圧限界制御部９ｂは、それぞれ一定の電圧Ｖ0 と接地電位との間を２つの抵抗で分圧することによって、上限電圧ＶMAX と下限電圧ＶMIN を発生する回路である。電源電圧制御回路９ｃは、２つのコンパレータ４１，４２と、ＡＮＤ回路４３と、２つのインバータ（ＮＯＴ回路）４４，４５と、３つのスイッチ５１〜５３と、ＤＣ−ＤＣコンバータ６０とを備えている。
【００３７】
　第１のコンパレータ４１は、上位電圧限界制御部９ａから供給された上限電圧ＶMAX のレベルと、ループフィルタ２１から出力された電圧制御信号ＬＰＳの電圧レベルとを比較する。ＬＰＳ≦ＶMAX であればコンパレータ４１の出力信号Ｑ４１はＨレベルとなり、ＶMAX ＜ＬＰＳであればＬレベルとなる。第２のコンパレータ４２は、下位電圧限界制御部９ｂから供給された下限電圧ＶMIN のレベルと、電圧制御信号ＬＰＳの電圧レベルとを比較する。ＶMIN ≦ＬＰＳであればコンパレータ４２の出力信号Ｑ４２はＨレベルとなり、ＬＰＳ＜ＶMIN であればＬレベルとなる。第１のコンパレータ４１の出力Ｑ４１は、ＡＮＤ回路４３と第１のインバータ４４に与えられている。また、第２のコンパレータ４２の出力Ｑ４２は、ＡＮＤ回路４３と第２のインバータ４５に与えられている。ＡＮＤ回路４３の出力は、第１のスイッチ５１をＯＮ／ＯＦＦ制御する切換信号である。２つのインバータ４４，４５の出力は、第２と第３のスイッチ５２，５３をそれぞれＯＮ／ＯＦＦ制御する切換信号である。３つのスイッチ５１〜５３の入力端子には電圧制御信号ＬＰＳと上限電圧ＶMAX と下限電圧ＶMIN とがそれぞれ入力されており、３つのスイッチ５１〜５３の出力は基準電圧ＶREF としてＤＣ−ＤＣコンバータ６０に入力されている。従って、２つのコンパレータ４１，４２における比較結果に応じて、電圧制御信号ＬＰＳと上限電圧ＶMAX と下限電圧ＶMIN との３つの中のいずれか１つが基準電圧ＶREF としてＤＣ−ＤＣコンバータ６０に供給される。
【００３８】
　図３の下部にも示すように、ＤＣ−ＤＣコンバータ６０の基準電圧ＶREF は、電圧制御信号ＬＰＳの電圧レベルに応じて次のように切換られる。
【００３９】
　ＬＰＳ＜ＶMIN の場合　　　　：ＶREF ＝ＶMIN 
　ＶMIN ≦ＬＰＳ≦ＶMAX の場合：ＶREF ＝ＬＰＳ
　　　　　ＶMAX ＜ＬＰＳの場合：ＶREF ＝ＶMAX 
【００４０】
　このように、図３の回路では、ＤＣ−ＤＣコンバータ６０に入力される基準電圧ＶREF を、上限電圧ＶMAX と下限電圧ＶMIN で規定される電圧範囲内において電圧制御信号ＬＰＳの電圧レベルに比例するように設定する。この結果、ＤＣ−ＤＣコンバータ６０の出力電圧Ｅ、すなわち、コンピュータシステムの他の回路に供給される電源電圧Ｅも、所定の電圧範囲内において電圧制御信号ＬＰＳの電圧レベルに比例する。
【００４１】
　ＣＰＵ部１の消費電力は次式で示される。
　　　　　　Ｗ＝ΣＥ2×Ｐ×ｆ×Ｃ　　　…（３）
　　　　　　Ｗ：消費電力［Ｗ］
　　　　　　Ｅ：電源電圧［Ｖ］
　　　　　　Ｐ：信号動作要素［命令／クロック］
　　　　　　ｆCPCK：クロック信号ＣＰＣＫの周波数［ＭＨｚ］
　　　　　　Ｃ：信号の負荷要素［ｐＦ］
【００４２】
　ここで、信号動作要素Ｐとは、ＣＰＵ部１が１クロックで幾つの命令を実行するかを示す値である。近年のマイクロプロセッサには、１クロックで複数の命令を実行するものが存在する。このようなマイクロプロセッサでは、１クロック当たりの命令数に比例して消費電力が増加するので、信号動作要素Ｐによってその効果を考慮している。この信号動作要素Ｐの値は、ＣＰＵ部１として使用されるマイクロプロセッサの種類に依存している。負荷要素Ｃも、コンピュータシステム仕様で決定される固定的な値である。上記の（３）式において変更が可能な要素は、電源電圧Ｅとクロック周波数ｆCPCKである。従って、電源電圧Ｅとクロック周波数ｆCPCKとを変化させることにより、消費電力の低減と適切な動作速度とを同時に実現することができる。すなわち、アプリケ−ションソフトの適切な動作速度が得られるようにＣＰＵ部１のクロック信号ＣＰＣＫの周波数ｆCPCKを任意に設定することができ、また、このクロック周波数ｆCPCKに連動して電源電圧Ｅも変更される。
【００４３】
　例えば、基準発振部２４が発生する原クロック信号ＲＣＫ０の周波数ｆRCK0が１０ＫＨｚ，基準分周器２７に設定された基準分周値Ｍが４であると仮定する。この時、Ｎ＝２に設定すれば、ｆRCK1＝２．５ＫＨｚ，ｆCPCK＝５ＫＨｚとなる。ワ−ドプロセッサ等のアプリケーションプログラムを実行している場合において、入力デバイスの未操作時に分周値Ｎを２に設定すれば、上述した（２）式に従って、動作クロック周波数ｆCPCKは５ＫＨｚとなる。一方、入力デバイスの操作時に分周値Ｎを４０に設定すれば、動作クロック周波数ｆCPCKは１００ＫＨｚとなる。同様に、画面のスクロ−ル時は動作クロック周波数ｆCPCKを５ＭＨｚに設定し、計算処理時には動作クロック周波数ｆCPCKを３０ＭＨｚに設定することができる。このように、コンピュータシステムの各種の動作モードに応じて分周値Ｎの値を書き換えることによって、その動作モードに適した動作速度と消費電力の制御を同時に実現することができる。また、分周値Ｎの値を、アプリケーションプログラムに応じて変更するようにすれば、各アプリケーションプログラムに応じた適切な動作速度を達成することができる。
【００４４】
　なお、アプリケ−ションプログラムが、所望の動作速度ＦＴと、ＣＰＵ部１の処理能力を示す能力係数ＣＴとを設定し、これらのパラメータＦＴ，ＣＴを用いて、次の（４）式に従って動作クロック周波数ｆCPCKを調整することも可能である。
【００４５】
　ｆCPCK＝ｆRCK1×ＦＴ×ＣＴ　　　…（４）
【００４６】
　この能力係数ＣＴは、基準となるマイクロプロセッサの処理速度ＳREF と、コンピュータシステムで実際に使用されているマイクロプロセッサの処理速度ＳCMP との比ＳREF ／ＳCMP で与えられる。例えば、ｉ４８６プロセッサ（インテル社の商標）の処理速度ＳREF を１．０と仮定し、ペンティアムプロセッサ（インテル社の商標）の処理速度ＳCMP を４．０と仮定すると、ｉ４８６の能力係数ＣＴは１、ペンティアムの能力係数ＣＴは０．２５である。（４）式から解るように、同じ動作速度ＦＴを得るためには、能力係数ＣＴの小さなマイクロプロセッサほど（すなわち、処理速度の早いプロセッサほど）動作クロック周波数ｆCPCKは小さくなる。
【００４７】
　能力係数ＣＴと動作速度ＦＴは、アプリケーションプログラムの動作環境として各アプリケーションプログラム内に設定することができる。能力係数ＣＴは、ＣＰＵ部１として用いられているマイクロプロセッサの種類に応じて決まるので、ユーザがアプリケーションプログラムを最初に実行する際に一度設定すればよい。この時、複数のマイクロプロセッサの種類の選択肢を画面に表示して、その中の１つを選択するようにすることが可能である。動作速度ＦＴは、ユーザの好みに応じて適宜変更することが可能である。
【００４８】
　上述した（２）式と（４）式から、分周値記憶部２に書き込むべき分周値Ｎは次の（５）式で与えられる。
【００４９】
　Ｎ＝ＦＴ×ＣＴ　　　…（５）
【００５０】
　この分周値ＮをＣＰＵ部１が分周値記憶部２に書き込むことによって、ユーザが指定した所望の動作速度ＦＴを達成することが出来る。
【００５１】
　例えば、ＣＰＵ部１の能力係数ＣＴが１、基準クロック周波数ｆRCK1が２．５ＫＨｚであると仮定する。思考的な処理を行なうゲ−ムを行なう場合に、キ−入力待ち時に動作速度ＦＴを４０に（すなわち分周値Ｎを４０に）設定すれば動作クロック周波数ｆCPCは１００ＫＨｚとなるので消費電力を低減できる。また、思考的な処理時に動作速度ＦＴを１２０００に（すなわち分周値Ｎを１２０００に）設定すれば動作クロック周波数ｆCPCKを３０ＭＨｚとなるので、思考処理の結果を高速に求めることができる。
【００５２】
　一方、能力係数ＣＴが０．２５のマイクロプロセッサを用いている場合には、動作速度ＦＴを４０に設定した時に分周値Ｎは１０となり、動作クロック周波数ｆCPCKは２５ＫＨｚとなる。また、動作速度を１２０００に設定した時には、分周値Ｎは３０００となり、動作クロック周波数ｆCPCKは７．５ＭＨｚとなる。このように、マイクロプロセッサの処理能力とアプリケーションプログラムの処理内容に応じた適切な動作速度を容易に設定することが可能である。更に、動作クロックを数百Ｈｚと数十ＭＨｚ間を任意に変動させ、動作速度ＦＴを加速したり減速したりする高度なゲ−ムを容易に行うことも可能である。
【００５３】
　また、１つのコンピュータシステムが複数のオペレーションシステム（ＯＳ）によって同時に管理される、いわゆるマルチＯＳ下では、望ましい動作速度がそれぞれのＯＳによって異なる場合が発生する。例えば、異なったＯＳ上で複数の異なったアプリケーションプログラムを動作させるた場合には、それぞれに対する望ましい動作速度ＦＴはそれぞれ異なるのが普通である。このような場合に、本発明によって動作速度と消費電力とを同時に調整するようにすれば、それぞれの望ましい動作速度ＦＴを達成しつつ、消費電力を低減することが可能である。
【００５４】
　図４は、本発明の第２の実施例における加減速発振部８の内部構成を示す回路ブロック図である。図４の回路は、図２の回路に周波数リミッタ部２６を追加した構成を有している。周波数リミッタ部２６には、基準発振部２４によって生成された原クロック信号ＲＣＫ０と、分周器２３によって生成された分周信号ＤＶＣＫと、電圧制御発振器２２によって生成された動作クロック信号ＣＰＣＫとが入力されている。周波数リミッタ部２６は、これらの入力信号に応じて周波数制御信号ＣＰＳＷを生成して、位相比較部２０に供給する。後述するように、動作クロック信号ＣＰＣＫが所定の最大周波数に達すると、周波数リミッタ部２６が周波数制御信号ＣＰＳＷのレベルを変更して、位相比較部２０から出力される誤差信号ＣＰＳをハイインピーダンス状態に設定する。この結果、動作クロック信号ＣＰＣＫの最大周波数が規制される。
【００５５】
　図５は、周波数リミッタ部２６の内部構成を示すブロック図である。周波数リミッタ部２６は、カウンタ部３０とフリプフロップ（ＦＦ）３１とを備えている。原クロック信号ＲＣＫ０がＨレベルになると、カウンタ部３０の内部カウンタが０にリセットされる。また、原クロック信号ＲＣＫ０がＬレベルに立下ると、カウンタ部３０が動作クロック信号ＣＰＣＫのパルス数のカウントアップを開始する。そして、カウント値が、動作クロック周波数ｆCPCKの最大許容値に対応する所定の値以上になると、カウンタ部３０がアップ信号ＵＰＳをＬレベルからＨレベルにセットする。このアップ信号ＵＰＳは、カウンタ部３０のイネーブル端子とフリップフロップ３１のクロック端子とに入力されている。アップ信号ＵＰＳがＨレベルになると、カウンタ部３０のカウントアップが停止し、また、フリップフロップ３１の出力である周波数制御信号ＣＰＳＷは、ＬレベルからＨレベルになる。位相比較部２０から出力される誤差信号ＣＰＳ（図４）は、周波数制御信号ＣＰＳＷがＨレベルになると強制的にハイインピーダンス状態に設定される。そして、分周器２３からの分周信号ＤＶＣＫのパルスがフリップフロップ３１に与えられると、フリップフロップ３１がリセットされて周波数制御信号ＣＰＳＷがＬレベルとなり、この結果、誤差信号ＣＰＳの抑制が解除される。
【００５６】
　図６は、周波数リミッタ部２６の動作を示すタイミングチャ−トである。但し、図６（ｃ），（ｄ）は、周波数リミッタ部２６が無い回路（図２の回路）の動作を示しており、図６（ｅ）〜（ｇ）は、周波数リミッタ部２６を設けた回路（図４の回路）の動作を示している。図６（ａ），（ｂ）は両者に共通である。
【００５７】
　図６の期間Ａにおいて、クロック周波数ｆCPCKを増加させるために、ＣＰＵ部１が分周値記憶部２の分周値Ｎをより大きな値に書き換える。時刻Ｂは、書き換える前の分周値Ｎに応じて分周器２３が分周信号ＤＶＣＫ（図６（ｂ））のパルスを発生するはずであった時刻である。期間Ａにおいて分周値Ｎを大きな値に書き換えると、時刻Ｂでは分周信号ＤＶＣＫのパルスが発生しないので、位相比較部２０は誤差信号ＣＰＳ（図６（ｃ））をハイインピ−ダンス状態からＨレベルに変化させる。なお、図６（ｃ）における斜線部はハイインピーダンス状態であることを示している。時刻Ｂで誤差信号ＣＰＳがＨレベルになると、ループフィルタ２１で生成される電圧制御信号ＬＰＳ（図６（ｄ））の電位が徐々に増加し、これに応じて電圧制御発振器２２で生成される動作クロック信号ＣＰＣＫの周波数ｆCPCK（図６（ｇ））も徐々に上昇する。なお、図６（ｇ）の中央付近以降においてハッチングされている部分は、高周波数のために波形を正確に図示できない部分を示している。
【００５８】
　周波数リミッタ部２６が設けられていない回路（図２）では、図６（ｂ）〜（ｄ）に示すように、時刻Ｄにおいて分周信号ＤＶＣＫの次のパルスが発生するまで電圧制御信号ＬＰＳの電位が上昇を続けるので、これに応じて動作クロック信号ＣＰＣＫの周波数ｆCPCKも増大を続ける。
【００５９】
　ここで、時刻Ｅにおいて動作クロック信号ＣＰＣＫの周波数ｆCPCKがＣＰＵ部１の動作範囲を超える場合を考える。このような場合に、周波数リミッタ部２６を設けた回路（図４）では、時刻Ｅにおいて動作クロック信号ＣＰＣＫの周波数の上昇を抑制する。すなわち、図６（ｅ），（ｆ）に示すように、時刻Ｅで誤差信号ＣＰＳをハイインピ−ダンス状態に設定して電圧制御信号ＬＰＳの上昇を停止させる。ＰＬＬ回路（図４の要素２０〜２３）は、基準クロック信号ＲＣＫ１の立ち上がりと、分周信号ＤＶＣＫの立ち上がりの位相が同位相に収束するように動作し、この結果、動作クロック信号ＣＰＣＫの周波数ｆCPCKが分周値記憶部２によって設定された周波数に収束する。図７は、周波数リミッタ部２６の有無の場合におけるクロック周波数ｆCPCKの収束の状態を比較して示す説明図である。図７（Ａ）に示すように、周波数リミッタ部２６が無い回路では、クロック周波数ｆCPCKの上限はない。一方、図７（Ｂ）に示すように、周波数リミッタ部２６を設けた回路では、クロック周波数ｆCPCKが上限値ｆMAX 以下の範囲で次第に目標値に収束していく。どちらの場合にもクロック周波数ｆCPCKは同じ目標値に収束していくが、周波数リミッタ部２６を設けることによって、ＣＰＵ部１が正常に動作する範囲にクロック周波数ｆCPCKを納めることができる。また、通常は、周波数リミッタ部２６を設けた方が、目標値への収束も早いという利点がある。
【００６０】
　図８は、図４と図５の回路の動作を示すタイミングチャ−トであり、図６の動作の詳細を示したものである。図５の回路図から解るように、カウンタ部３０は、原クロック信号ＲＣＫ０（図８（ｃ））がＬレベルである期間中に動作クロック信号ＣＰＣＫのパルスをカウントアップし、原クロック信号ＲＣＫ０がＨレベルになるとリセットされる。図８（ｄ）の例では時刻Ｅの直前の期間Ｆの間に動作クロック信号ＣＰＣＫの周波数ｆCPCKが大幅に上昇するため、時刻Ｅにおいてカウンタ部３０が所定数のカウントアップを終了して、アップ信号ＵＰＳ（図８（ｅ））をＬレベルからＨレベルに変化させる。すると、アップ信号ＵＰＳに応じてカウンタ部３０が停止し、フリップフロップ３１から出力される周波数制御信号ＣＰＳＷ（図８（ｆ））がＬレベルからＨレベルになる。この周波数制御信号ＣＰＳＷに応じて、位相比較部２０が誤差信号ＣＰＳを強制的にハイインピ−ダンス状態に設定する。この後、時刻Ｄにおいて分周信号ＤＶＣＫ（図８（ｂ））のパルスが発生すると、フリップフロップ３１がリセットされ、この結果、周波数制御信号ＣＰＳＷはＨレベルからＬレベルに戻る。但し、分周信号ＤＶＣＫのパルスに応じて位相比較部２０が誤差信号ＣＰＳをハイインピーダンス状態に設定するので、時刻Ｄ以降も誤差信号ＣＰＳはハイインピーダンス状態に保たれる。時刻Ｃ以降は、Ｂ〜Ｃの期間と類似の動作を繰返しつつ、基準クロック信号ＲＣＫ１と分周信号ＤＶＣＫとが同位相になるように動作クロック信号ＣＰＣＫの周波数が収束する。
【００６１】
　上述の説明からように、原クロック信号ＲＣＫ０がＬレベルに保たれる期間Ｔ（図８（ｃ））は、動作クロック信号ＣＰＣＫの周波数を監視するための監視期間Ｔとして利用されている。周波数リミッタ部２６は、この監視期間Ｔにおいて動作クロック信号ＣＰＣＫのパルス数をカウントし、そのカウント値が最大周波数に対応した値以上に達すると、周波数制御信号ＣＰＳＷを位相比較部２０に送り、位相比較部２０から出力される誤差信号ＣＰＳをハイインピーダンス状態に設定する。その結果、ＣＰＵ部１に与えられるクロック信号ＣＰＣＫの最大周波数を抑制することができる。従って、動作クロック周波数ｆCPCKが変化してもＣＰＵ部１が安定した動作を保つことができる。
【００６２】
　尚、上記説明に用いられた電圧制御発振器２２としては、例えば特開平２−２５６３１１号公報の第１図から第３図に示されたミラー積分回路を伴った回路を用いることができる。こうすることにより、発振周波数が数Ｈｚから百数十ＭＨｚまでの周波数範囲を取り扱える電圧制御発振器を容易に実現することができる。
【００６３】
　また、電圧制御発振器２２から得られた動作クロック信号ＣＰＣＫの発振振幅比（デューティ比）が１：１とならなかった場合は、動作クロック信号ＣＰＣＫをフリップフロップ素子により１／２分周して発振振幅比を１：１することも可能である。
【００６４】
　また、ループフィルタ２１と電圧制御発振器２２の電源として、電源電圧制御部９で制御された電源電圧Ｅを供給することも可能である。
【００６５】
　また、図３に示すＤＣ−ＤＣコンバータ６０の代わりに、電圧制御信号ＬＰＳの電圧レベルに応じて出力電圧Ｅのレベルを調整するような他の電源回路を用いることができ、例えば、スイッチングレギューレータなどを使用することができる。動作クロック周波数ｆCPCKは電圧制御信号ＬＰＳの電圧レベルに依存しているので、このような他の電源回路は、動作クロック周波数ｆCPCKに応じたレベルの出力電圧Ｅを発生する回路であると言い換えることもできる。
【００６６】
　あるいは、電源電圧制御部９として、動作クロック信号ＣＰＣＫを入力とし、動作クロック周波数ｆCPCKに応じた電圧制御を行なうような電源回路を用いることも可能である。図９は、動作クロック周波数ｆCPCKに応じた電圧制御を行なう電源電圧制御回路９ｄを備えた回路構成を示すブロック図である。図９の回路は、図２の回路の電圧制御信号ＬＰＳの代わりに、動作クロック信号ＣＰＣＫを電源電圧制御回路９ｄに入力するようにしたものである。
【００６７】
　上述のように、電源電圧制御部９としては、一般に、動作クロック信号ＣＰＣＫの周波数ｆCPCKに応じた電圧レベルを有する出力電圧Ｅを発生するような電源回路を用いることができる。
【００６８】
　また上記実施例では、電源電圧制御部９で得られた出力電圧Ｅをコンピュータシステムの各回路に供給するものとして説明したが、特に消費電力の大きな回路（例えばＣＰＵ部１、ＲＡＭ部５、グラフィックコントローラ（図示せず）等）に対してのみ電源電圧制御部９の出力電圧Ｅを供給し、他の回路には一定電圧を供給するようにしてもよい。また、消費電力の大きな回路のそれぞれに、各回路に応じた適切な電圧範囲内で電源電圧を制御する電源電圧制御部９を内蔵することも可能である。
【００６９】
　また、ＣＰＵ部１として、ＤＳＰ（デジタル・シグナル・プロセッサ）、映像プロセッサ（ビデオプロセッサ）、３Ｄプロセッサ、認識プロセッサ、判断プロセッサ等の種々のタイプのマイクロプロセッサを用いたシステムにも本発明を適用することができる。
【図面の簡単な説明】
【００７０】
【図１】本発明の実施例によるシステム構成図。
【図２】加減速発振部８の内部構成を示す回路ブロック図。
【図３】電源電圧制御部９の内部構成を示すブロック図。
【図４】第２の実施例における加減速発振部８の内部構成を示す回路ブロック図。
【図５】周波数リミッタ部２６の内部構成を示す回路ブロック図。
【図６】第２の実施例の動作を示すタイミングチャ−ト。
【図７】周波数リミッタ部２６の有無の場合におけるクロック周波数ｆCPCKの収束の状態を比較して示す説明図。
【図８】周波数リミッタ部２６の動作を示すタイミングチャ−ト。
【図９】動作クロック周波数ｆCPCKに応じた電圧制御を行なう電源電圧制御回路９ｄを備えた回路構成を示すブロック図。
【図１０】従来のシステム構成図。
【符号の説明】
【００７１】
　　　２…分周値記憶部
　　　３…ＰＬＬ回路部
　　　４…ＲＯＭ部
　　　５…ＲＡＭ部
　　　６…記憶装置部
　　　７…入出力部
　　　８…加減速発振部
　　　９…電源電圧制御部
　　　９ａ…上位電圧限界制御部
　　　９ｂ…下位電圧限界制御部
　　　９ｃ…電源電圧制御回路
　　　９ｄ…電源電圧制御回路
　　１０…ＣＰＵバス
　　１２…基準分周値記憶部
　　２０…位相比較部
　　２１…ループフィルタ
　　２２…電圧制御発振器
　　２３…分周器
　　２４…基準発振部
　　２５…発振子
　　２６…周波数リミッタ部
　　２７…基準分周器
　　３０…カウンタ部
　　３１…フリップフロップ
　　４１，４２…コンパレータ
　　４３…ＡＮＤ回路
　　４４，４５…インバータ
　　５１〜５３…スイッチ
　　６０…ＤＣ−ＤＣコンバータ
　１００…ＣＰＵ
　１０１，１０２…発振部
　１０３…タイミング制御部
　１０４…スイッチ
　１０５…ＲＯＭ部
　１０６…ＲＡＭ部
　１０７…記憶装置部
　１０８…入出力部
　１０９…スイッチ
【図１】
2004030686.tif 000003
【図２】
2004030686.tif 000004
【図３】
2004030686.tif 000005
【図４】
2004030686.tif 000006
【図５】
2004030686.tif 000007
【図６】
2004030686.tif 000008
【図７】
2004030686.tif 000009
【図８】
2004030686.tif 000010
【図９】
2004030686.tif 000011
【図１０】
2004030686.tif 000012
【手続補正書】
【提出日】平成15年9月2日(2003.9.2)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
　マイクロプロセッサを備える情報処理装置であって、
　所望の周波数を有する動作クロック信号を生成して前記マイクロプロセッサに供給するクロック信号生成手段と、
　前記動作クロック信号の周波数に応じた電圧レベルを有する出力電圧を発生し、前記マイクロプロセッサに電源として供給する電源電圧制御手段と、
を備え、
　前記クロック信号生成手段は、
　基準クロック信号を発生する基準クロック信号発生手段と、
　所望の第１の分周値に応じて前記動作クロック信号を分周することによって、分周クロック信号を生成する第１の分周器と、
　前記基準クロック信号と前記分周クロック信号との位相を一致させるように、前記動作クロック信号の周波数を調整しつつ前記動作クロック信号を生成するＰＬＬ回路と、
を備え、
　前記ＰＬＬ回路は、
　前記基準クロック信号と前記分周クロック信号の位相を比較し、前記位相の差分に応じた誤差信号を生成する位相比較器と、
　前記誤差信号を入力とするローパスフィルタと、
　前記ローパスフィルタの出力信号に応じて前記動作クロック信号を生成する電圧制御発振器とを備えており、
　前記電源電圧制御手段は、
　前記ローパスフィルタの出力信号を入力とし、前記出力電圧を出力とする電圧制御回路を備える、情報処理装置。
【請求項２】
　請求項１記載の情報処理装置であって、
　前記クロック信号生成手段は、さらに、
　前記所望の第１の分周値を記憶する第１の分周値メモリを備えており、
　前記情報処理装置は、さらに、
　前記第１の分周値メモリと前記マイクロプロセッサとを電気的に接続する第１のバス、を備える情報処理装置。
【請求項３】
　請求項２記載の情報処理装置であって、
　前記基準クロック信号発生手段は、さらに、
　所定の周波数を有する原クロック信号を発生する原クロック信号発生手段と、
　前記前記原クロックを所望の第２の分周値で分周することによって前記基準クロック信号を生成する第２の分周器と、
　前記所望の第２の分周値を記憶する第２の分周値メモリと、を備えており、
　前記情報処理装置は、さらに、
　前記第２の分周値メモリと前記マイクロプロセッサとを電気的に接続する第２のバス、
を備える情報処理装置。
【請求項４】
　請求項１ないし３のいずれかに記載の情報処理装置であって、
　クロック信号生成手段は、
　前記動作クロック信号の最大周波数を規制する周波数リミッタを備える、
情報処理装置。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０００９
【補正方法】変更
【補正の内容】
【０００９】
　上述の課題を解決するため、本発明による情報処理装置は、マイクロプロセッサを備える情報処理装置であって、
　所望の周波数を有する動作クロック信号を生成して前記マイクロプロセッサに供給するクロック信号生成手段と、
　前記動作クロック信号の周波数に応じた電圧レベルを有する出力電圧を発生し、前記マイクロプロセッサに電源として供給する電源電圧制御手段と、
を備え、
　前記クロック信号生成手段は、
　基準クロック信号を発生する基準クロック信号発生手段と、
　所望の第１の分周値に応じて前記動作クロック信号を分周することによって、分周クロック信号を生成する第１の分周器と、
　前記基準クロック信号と前記分周クロック信号との位相を一致させるように、前記動作クロック信号の周波数を調整しつつ前記動作クロック信号を生成するＰＬＬ回路と、
を備え、
　前記ＰＬＬ回路は、
　前記基準クロック信号と前記分周クロック信号の位相を比較し、前記位相の差分に応じた誤差信号を生成する位相比較器と、
　前記誤差信号を入力とするローパスフィルタと、
　前記ローパスフィルタの出力信号に応じて前記動作クロック信号を生成する電圧制御発振器とを備えており、
　前記電源電圧制御手段は、
　前記ローパスフィルタの出力信号を入力とし、前記出力電圧を出力とする電圧制御回路を備えることを特徴とする。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００１０
【補正方法】変更
【補正の内容】
【００１０】
　電源電圧制御手段は、マイクロプロセッサの動作クロック信号の周波数に応じた電圧レベルの電源電圧をマイクロプロセッサに供給する。従って、動作クロック信号の周波数を適切な値に設定することによって、適切な動作速度を達成しつつ、消費電力を低減することができる。また、第１の分周値を調整することによって、動作クロック信号の周波数を所望の値に設定することができる。電圧制御発振器で生成される動作クロック信号の周波数は、ローパスフィルタの出力信号の電圧レベルに依存しており、このローパスフィルタの出力信号の電圧レベルに応じてマイクロプロセッサに与えられる電源電圧を制御するので、マイクロプロセッサの電源電圧と動作クロック周波数を互いに関連づけて制御することができる。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００１１
【補正方法】削除
【補正の内容】
【手続補正５】
【補正対象書類名】明細書
【補正対象項目名】００１２
【補正方法】削除
【補正の内容】
【手続補正６】
【補正対象書類名】明細書
【補正対象項目名】００１３
【補正方法】削除
【補正の内容】
【手続補正７】
【補正対象書類名】明細書
【補正対象項目名】００１４
【補正方法】削除
【補正の内容】
【手続補正８】
【補正対象書類名】明細書
【補正対象項目名】００１９
【補正方法】削除
【補正の内容】
【手続補正９】
【補正対象書類名】明細書
【補正対象項目名】００２０
【補正方法】削除
【補正の内容】
【手続補正１０】
【補正対象書類名】明細書
【補正対象項目名】００２１
【補正方法】削除
【補正の内容】
【手続補正１１】
【補正対象書類名】明細書
【補正対象項目名】００２２
【補正方法】削除
【補正の内容】