(57)【要約】【課題】  性能を低下させること無しに消費電力を低減できる回路システムの実現。【解決手段】  複数の回路ユニット1A-1Cと、複数の異なる電圧の電源を供給する電源2と、複数の回路ユニットのそれぞれに対応して設けられ、複数の異なる電圧の電源から各回路ユニットに供給する電源を選択する複数の電源選択回路3A-3Cと、複数の回路ユニットのそれぞれの動作状態に応じて、各回路ユニットに供給する電源を選択するように、複数の電源選択回路を制御する制御回路4とを備え、各回路ユニットは、電源選択回路で選択された電源を内部電源として使用する。【選択図】      図１
2006318380.tif 000002
【特許請求の範囲】
【請求項１】
複数の回路ユニットと、
複数の異なる電圧の電源を供給する電源と、
前記複数の回路ユニットのそれぞれに対応して設けられ、前記複数の異なる電圧の電源から各回路ユニットに供給する電源を選択する複数の電源選択回路と、
前記複数の回路ユニットのそれぞれの動作状態に応じて、各回路ユニットに供給する電源を選択するように、前記複数の電源選択回路を制御する制御回路とを備え、
各回路ユニットは、前記電源選択回路で選択された電源を内部電源として使用することを特徴とする回路システム。
【請求項２】
前記電源は、
基準電源を発生する基準電源発生回路と、
前記基準電源の電圧と異なる少なくとの１つの副電源を発生する副電源発生回路とを備え、
前記基準電源は、前記複数の回路ユニットのすべてに供給される請求項１に記載の回路システム。
【請求項３】
各回路ユニットは、前記基準電源の電圧の外部信号を、内部電源の電圧の内部信号に変換する第１レベル変換回路と、内部電源の電圧の内部信号を前記基準電源の電圧の外部信号に変換する第２レベル変換回路とを備える請求項２に記載の回路システム。
【請求項４】
前記副電源発生回路は、前記制御回路の制御により、異なる電圧の電源を発生することが可能な可変電源回路であり、
前記制御回路は、前記副電源発生回路の発生する電源の電圧及び前記複数の電源選択回路を制御して各回路ユニットに供給する電源を選択する請求項２に記載の回路システム。
【請求項５】
周期の異なる複数のクロックを発生するクロック発生回路と、
前記複数の回路ユニットのそれぞれに対応して設けられ、前記複数のクロックから各回路ユニットに供給するクロックを選択する複数のクロック選択回路とを備え、
前記制御回路は、前記複数の回路ユニットのそれぞれの動作状態及び供給される電源に応じて、各回路ユニットに供給するクロックを選択するように、前記複数のクロック選択回路を制御する請求項１から４のいずれか１項に記載の回路システム。
【請求項６】
前記クロック発生回路は、
基準クロックを発生する基準クロック発生回路と、
前記基準クロックと周期の異なる少なくとも１つの副クロックを発生する副クロック発生回路とを備え、
前記基準クロックは、前記複数の回路ユニットのすべてに供給される請求項５に記載の回路システム。
【請求項７】
前記副クロック発生回路は、前記複数の回路ユニットのそれぞれに対応して設けられる請求項６に記載の回路システム。
【請求項８】
前記副クロック発生回路は、前記基準クロックを分周して前記副クロックを発生する分周回路を備える請求項７に記載の回路システム。
【請求項９】
前記制御回路は、マスタプロセッサと制御レジスタとを有し、
前記複数の回路ユニットのそれぞれは、スレーブプロセッサを有し、
前記マスタプロセッサは、各スレーブプロセッサへの処理の割り当てを制御し、割り当てた処理の負荷による各スレーブプロセッサの負荷状態に応じて、各スレーブプロセッサに供給する電源電圧及び各スレーブプロセッサの動作クロックを決定し、決定した電源電圧及び動作クロックに応じた値を前記制御レジスタに書き込み、
前記制御レジスタの出力が、各回路ユニットに対応した前記電源選択回路及び前記クロック選択回路を制御する請求項４に記載の回路システム。
【請求項１０】
少なくとも前記複数の回路ユニットと、前記複数の電源選択回路と、前記制御回路は、１個のチップ内に設けられている請求項１から９のいずれか１項に記載の回路システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マスタプロセッサなどを有する制御回路と、スレーブプロセッサなどを有する複数の回路ユニットとで構成される回路システムに関し、特に回路システムの性能を低下させることなく消費電力を低減する技術に関する。
【背景技術】
【０００２】
近年、コンピュータのＣＰＵなどの回路システムの処理能力に対する要求はますます増加している。それに応じて、ＣＰＵなどの回路ユニットを複数搭載したマルチプロセッサシステムが広く採用されている。マルチプロセッサシステムは、例えば、マスタプロセッサと、複数のスレーブプロセッサと、マスタプロセッサ及び複数のスレーブプロセッサを接続するバスとで構成される。マスタプロセッサは、全体の処理を制御し、複雑な処理を各スレーブプロセッサに割り当てる。各スレーブプロセッサは、割り当てられた処理を実行し、処理結果をマスタプロセッサに送る。マスタプロセッサは、各スレーブプロセッサから送られた処理結果を統合して全体の処理を進める。
【０００３】
携帯電話などのモバイル情報端末に使用される回路システムは、消費電力が少ないことが重要である。そのため、そのような回路システムは、性能を低下すること無しに消費電力を低下させることが求められている。
【０００４】
上記のような回路システムにおいて、消費電力を低下させる手法としては、主として３つの方法が知られている。第１の方法は、回路システム内の非動作部分への電源供給を停止する方法である。特許文献１は、マルチプロセッサシステムにおいて、非動作状態のスレーブプロセッサへの電源供給を停止する構成を記載している。
【０００５】
第２の方法は、クロック周波数を低下させる方法である。一般に、ＣＭＯＳ集積回路は消費電力がクロック信号の周波数に比例して増減する。ただし、回路システムのクロック周波数を低下させれば、その分性能は低下する。そこで、回路システムの動作状態を監視し、動作速度が遅くてもよい場合には、クロック周波数を低下させる。
【０００６】
第３の方法は、電源電圧を低下させる方法である。ただし、電源電圧を低下させると、回路システムを高いクロック周波数で動作させることはできず、電源電圧の低下に応じてクロック周波数を低下させる必要があり、その分性能は低下する。そこで、回路システムの動作状態を監視し、動作速度が遅くてもよい場合には、電源電圧を低下させる。
【０００７】
特許文献２は、電子回路の動作状態を監視して、電子回路に供給する電源電圧及びクロック周波数を調整する方法を記載している。
【０００８】
また、特許文献３は、回路システムを構成する複数の回路ユニットごとに、例えば、マルチプロセッサシステムにおいて、個々のプロセッサの要求性能に応じて最適な電源電圧及びクロック周波数を設定することを記載している。
【０００９】
【特許文献１】特開２００２−２３６５２７号
【特許文献２】国際公開ＷＯ０２／５０６４５Ａ１
【特許文献３】特開２００４−７８９４０号
【発明の開示】
【発明が解決しようとする課題】
【００１０】
特許文献３に記載されたマルチプロセッサシステムは、各プロセッサの電源電圧及びクロック周波数を要求性能に応じて最適に設定するが、この設定は手動で行われ、設定された状態は変更しない限り維持される。言い換えれば、各プロセッサに割り当てられる処理の種類があらかじめ決められており、処理の種類に応じて負荷を推定して、推定した負荷に応じて各プロセッサの電源電圧及びクロック周波数を決定する。
【００１１】
しかし、実際にマルチプロセッサシステムを動作させる場合、実行する処理に応じて各プロセッサの処理内容は変動し、それに応じて各プロセッサの負荷も変動する。そのため、設定した各プロセッサの電源電圧及びクロック周波数は、実際の処理を行う場合の最適な電源電圧及びクロック周波数とは異なることになる。更にいえば、実際の処理を行う場合の最適な電源電圧及びクロック周波数は、処理内容に応じて随時変動するため、特許文献３の構成では、各プロセッサの電源電圧及びクロック周波数は概ね良好な条件に設定されるが、変動する最適条件に対応することは不可能である。
【００１２】
また、特許文献３は、各プロセッサごとに電源電圧及びクロック周波数を設定することを記載しているが、各プロセッサ間での異なる電源電圧及びクロック周波数の信号の入出力については何ら記載していない。
【００１３】
特許文献２に記載された電子回路は、動作状態を監視して、電子回路に供給する電源電圧及びクロック周波数全体を一括して調整する。しかし、この方法で電子回路の性能を低下させること無しに調整を行うには、電子回路内でもっとも高速性を必要とする部分が必要とする電源電圧及びクロック周波数に調整する必要があり、他の部分には不必要な高電圧の電源及び高周波数のクロックが供給されて無駄な電力が消費されることになる。
【００１４】
本発明は、上記のような問題を解決し、性能を低下させること無しに消費電力を一層低減できる回路システムの実現を目的とする。
【課題を解決するための手段】
【００１５】
図１は、本発明の回路システムの基本構成を示す図である。
【００１６】
図１に示すように、本発明の回路システムは、上記目的を実現するため、複数の回路ユニット１Ａ、１Ｂ、１Ｃ、…からなる回路システムにおいて、複数の異なる電圧の電源２を設け、各回路ユニットは、その要求性能を満たすように電源電圧の１つを内部電源として選択し、選択した電源電圧に適したクロック周波数を設定する。言い換えれば、複数の回路ユニットが、それぞれ電源電圧及びクロック周波数の組み合わせを任意に設定できるようにし、各回路ユニットの動作状態に応じてその時点でもっとも低消費電力化を達成できるようにする。
【００１７】
すなわち、本発明の回路システムは、複数の回路ユニット１Ａ、１Ｂ、１Ｃ、…と、複数の異なる電圧の電源を供給する電源２と、前記複数の回路ユニットのそれぞれに対応して設けられ、前記複数の異なる電圧の電源から各回路ユニットに供給する電源を選択する複数の電源選択回路３Ａ、３Ｂ、３Ｃ、…と、前記複数の回路ユニットのそれぞれの動作状態に応じて、各回路ユニットに供給する電源を選択するように、前記複数の電源選択回路を制御する制御回路４を備え、各回路ユニットは、前記電源選択回路で選択された電源を内部電源として使用することを特徴とする。
【００１８】
本発明の回路システムは、各回路ユニットごとに内部電圧を設定することが可能であり、各回路ユニットの動作（負荷）状態に応じて、最適な電源電圧を設定するので、性能を低下させること無しに消費電力を低下させることができる。
【００１９】
本発明の回路システムは、１チップに設けるのに適しているが、これに限定されるものではない。
【００２０】
電源は、回路システムが設けられるチップの外部又は内部に設けられる。電源は、基準電源を発生する基準電源発生回路と、基準電源の電圧と異なる少なくとの１つの副電源を発生する副電源発生回路とを備え、各回路ユニットの電源選択回路に供給された基準電源及び少なくとの１つの副電源から内部電源を選択する。
【００２１】
各回路ユニットの内部電源電圧が異なる場合が起き得るので、各回路ユニットには外部信号と内部信号の電圧レベルが一致するように変換するレベル変換回路を設ける。外部信号は基準電源に基づく信号とし、電源選択回路に供給する電源とは別に基準電源を各回路ユニットに供給する。レベル変換回路には、基準電源と内部電源が供給される。
【００２２】
すなわち、各回路ユニットは、基準電源の電圧の外部信号を、内部電源の電圧の内部信号に変換する第１レベル変換回路と、内部電源の電圧の内部信号を基準電源の電圧の外部信号に変換する第２レベル変換回路とを備える。
【００２３】
副電源発生回路は、制御回路の制御により、異なる電圧の電源を発生することが可能な可変電源回路であることが望ましい。これにより、各回路ユニットの内部電源をより精密に制御することが可能になる。
【００２４】
前述のように、各回路ユニットの電源電圧だけでなく、クロック周波数も制御することが望ましい。
【００２５】
そこで、回路システムは、周期の異なる複数のクロックを発生するクロック発生回路と、複数の回路ユニットのそれぞれに対応して設けられ、複数のクロックから各回路ユニットに供給するクロックを選択する複数のクロック選択回路とを備え、制御回路は、複数の回路ユニットのそれぞれの動作状態及び供給される電源に応じて、各回路ユニットに供給するクロックを選択するように各クロック選択回路を制御する。
【００２６】
クロック発生回路は、基準クロックを発生する基準クロック発生回路と、基準クロックと周期の異なる少なくとも１つの副クロックを発生する副クロック発生回路とを備え、基準クロックは、複数の回路ユニットのすべてに供給されることが望ましい。副クロック発生回路は、前記複数の回路ユニットのそれぞれに対応して設けられ、副クロック発生回路は、基準クロックを分周して副クロックを発生する分周回路を備える。
【００２７】
本発明は、マスタプロセッサと複数のスレーブプロセッサで構成され、マスタプロセッサが各スレーブプロセッサへの処理の割り当てを制御するマルチプロセッサに適用される。制御回路は、マスタプロセッサと制御レジスタとを有し、各回路ユニットはスレーブプロセッサを有するように構成される。マスタプロセッサは、各スレーブプロセッサへ割り当てる処理を解析することにより各スレーブプロセッサの負荷状態を知ることができ、そのために必要なスレーブプロセッサの電源電圧及びクロック周波数を決定できる。そこで、決定した各スレーブプロセッサの電源電圧及びクロック周波数に応じた値を制御レジスタに書き込み、制御レジスタの出力が、各回路ユニットに対応した電源選択回路及びクロック選択回路を制御する。
【発明の効果】
【００２８】
本発明によれば、複数のプロセッサで構成されるマルチプロセッサなどの回路システムにおいて、動作状態に応じて各プロセッサの電源電圧及びクロック周波数を最適な状態に変化させるので、性能を低下させること無しに消費電力を低減することができる。
【発明を実施するための最良の形態】
【００２９】
図２は、本発明の実施例のマルチプロセッサシステムの構成を示す図である。図２に示すように、本実施例のマルチプロセッサシステムは、マスタプロセッサ１５と、４個のスレーブプロセッサ１１Ａ−１１Ｄと、基準電源回路１２と、２個の可変電源回路１２Ａ及び１２Ｂと、制御ユニット１４と、クロック発生回路１６と、共有メモリ１７と、周辺モジュール１８とを有する。本実施例では、基準電源回路１２と２個の可変電源回路１２Ａ及び１２Ｂを除く部分は、１個のチップに実装されている。しかし、本発明はこれに限定されず、基準電源回路１２と２個の可変電源回路１２Ａ及び１２Ｂがチップに実装されていても、２個の可変電源回路１２Ａ及び１２Ｂがチップに実装されていても、またチップに実装されていなくてもよい。
【００３０】
基準電源１２は基準電圧Ｖ０の電源を生成して、電源線２１を介して、すべての回路に供給する。可変電源回路１２Ａは、基準電圧Ｖ０の電源から複数の電圧の電源を生成し、制御ユニット１４から信号線２４Ａを介した制御信号により指示された電圧ＶＡの電源を電源線２１Ａに供給する。可変電源回路１２Ｂも、同様に基準電圧Ｖ０の電源から複数の電圧の電源を生成し、制御ユニット１４から信号線２４Ｂを介した制御信号により指示された電圧ＶＢの電源を電源線２１Ｂに供給する。クロック発生回路１６は、周波数２ｆの基準クロックを発生して、クロック信号線２３を介して、マスタプロセッサ１５と、４個のスレーブプロセッサ１１Ａ−１１Ｄと、制御ユニット１４と、共有メモリ１７と、周辺モジュール１８とに供給する。マスタプロセッサ１５と、４個のスレーブプロセッサ１１Ａ−１１Ｄと、制御ユニット１４と、共有メモリ１７と、周辺モジュール１８は、バス１９及び２５Ａ−２５Ｇを介して、相互にデータを送受信できる。また、制御ユニット１４は、信号線２６Ｅを介してマスタプロセッサ１５と、信号線２６Ａ−２６Ｄを介して４個のスレーブプロセッサ１１Ａ−１１Ｄとそれぞれ接続されている。本実施例では、４個のスレーブプロセッサ１１Ａ−１１Ｄの内部電源の電圧を選択可能であるが、それ以外の構成要素間のインターフェース部分では基準電圧Ｖ０に対応した電圧レベルの信号が使用される。ここでは、基準電圧Ｖ０が最高位の電圧であるとして説明するが、基準電圧Ｖ０は最低位であっても、中間位であってもよい。
【００３１】
図３は、スレーブプロセッサ１１Ａの構成を示す図であり、他のスレーブプロセッサ１１Ｂ−１１Ｄも同様の構成を有する。スレーブプロセッサ１１Ａは、処理モジュール３１と、内部バス３２と、電源選択回路３３と、レベル変換回路３４と、クロック分周回路３５とを有する。処理モジュール３１は、更に複数のモジュールで構成されていてもよい。
【００３２】
制御ユニット１４との間の信号線２６Ａは、電源選択回路３３を制御する電源選択信号のための信号線４０と、割り込み処理のための信号線４１及び４２と、クロック分周回路３５を制御するクロック選択信号のための信号線４３に分かれる。
【００３３】
電源選択回路３３は、信号線４０の制御信号に基づいて、可変電源回路１２Ａ及び可変電源回路１２Ｂからの電源線２１Ａ及び２１Ｂのいずれかを、内部電源線３６に接続するように選択する。
【００３４】
図４は、電源選択回路３３の回路構成を示す図である。電源選択回路３３は、可変電源回路１２Ａ及び可変電源回路１２Ｂからの電源線２１Ａ及び２１Ｂのいずれかを選択するためのＭＯＳスイッチ５１及び５２と、電源選択信号に応じてＭＯＳスイッチ５１及び５２の一方をオン状態に、他方をオフ状態にするインバータ５３とを有する。電源選択信号が”０”「Ｌ」の時に電源線２１Ａが内部電源線３６に接続され、電源選択信号が”１”「Ｈ」の時に電源線２１Ｂが内部電源線３６に接続される。なお、図３及び図４には示されていないが、インバータ５３の電源は電源線２１から供給される。これは、本実施例では電源線２１に供給される電源の電圧がもっとも高く、電源線２１Ａ、２１Ｂの電圧が内部電源線３６に伝わる時のＭＯＳスイッチ５１及び５２での電圧降下を回避するためである。また、ここでは、ＭＯＳスイッチ５１及び５２のいずれかがオンする回路構成であるが、ＭＯＳスイッチ５１及び５２の両方をオフにする制御回路を設けて、スレーブプロセッサに電源を供給しないようにしてもよい。
【００３５】
図３に戻って、電源選択回路３３で選択された内部電源は、内部電源線３６を介して処理モジュール３１及びレベル変換回路３４に供給される。また、図２の基準電源回路１２からの基準電源線２１は、レベル変換回路３４及びクロック分周回路３５に供給される。従って、レベル変換回路３４には、基準電源と内部電源の両方が供給される。
【００３６】
スレーブプロセッサ１１の処理モジュール３１に供給される電源は内部電源である。これに対して、上記のように、スレーブプロセッサ１１の外部から入力される信号は基準電源に基づく信号であり、電圧レベルが異なるので、内部電源の電圧レベルの信号に変換する必要がある。また、スレーブプロセッサ１１から出力する信号も、内部電源に基づく信号から基準電源に基づく信号に変換する必要がある。レベル変換回路３４がこの変換を行う。
【００３７】
図５は、レベル変換回路３４の回路の構成を示す図である。レベル変換回路３４は、クロック分周回路３５からクロック信号線３７に出力される選択クロックのレベルを、内部電源のレベルの信号に変換するレベルダウン回路５４と、バス１９及び２５Ａを介してスレーブプロセッサ１１に入力する入力信号を、内部電源のレベルの信号に変換するレベルダウン回路５５Ａ、…、５５Ｎと、スレーブプロセッサ１１から内部バス３２及び３９を介して出力する内部電源のレベルの信号を、基準電源に基づく出力信号に変換するレベルアップ回路５６Ａ、…、５６Ｎとを有する。なお、レベルダウン回路５５Ａ、…、５５Ｎは、スレーブプロセッサ１１へデータ信号が入力される時のみ出力を行い、それ以外の時には出力がハイインピーダンス状態になる。同様に、レベルアップ回路５６Ａ、…、５６Ｎは、スレーブプロセッサ１１からデータ信号が入力される時のみ出力を行い、それ以外の時には出力がハイインピーダンス状態になる。
【００３８】
図５では、基準電圧が最高位の電圧であるため、レベルダウン回路で外部信号を内部信号に変換し、レベルアップ回路で内部信号を外部信号に変換したが、基準電圧が最低位の電圧であれば、逆の構成になる。
【００３９】
図６の（Ａ）はレベルダウン回路の構成例を示し、図６の（Ｂ）はレベルアップ回路の構成例を示す。
【００４０】
図６の（Ａ）に示すように、レベルダウン回路では、高位の基準電源に基づく入力信号ＩＮは、基準電源線２１から電源が供給される直列に接続された２個のインバータ６１、６２に入力する。インバータ６２の出力は、内部電源線３６から電源が供給される直列に接続された２個のインバータ６３、６４に入力し、低位の内部電源に基づく出力ＯＵＴに変換される。
【００４１】
図６の（Ｂ）に示すように、レベルアップ回路では、低位の基準電源に基づく入力信号ＩＮは、内部電源線３６から電源が供給される直列に接続された２個のインバータ６５、６６に入力する。インバータ６５及び６６の出力は、基準電源線２１から電源が供給される昇圧回路６７の対となるＭＯＳＦＥＴのゲートに印加される。昇圧回路６７の出力は、基準電源線２１から電源が供給されるインバータ６８に入力し、高位の基準電源に基づく出力ＯＵＴに変換される。
【００４２】
図２及び図３に戻って、クロック発生器１６で発生された基準クロックは、クロック信号線２３を介してスレーブプロセッサ１１のクロック分周回路３５に供給される。クロック分周回路３５は、周波数２ｆの基準クロックを分周して、周波数がｆ、ｆ／２、ｆ／４、ｆ／８のクロック信号を発生し、制御回路１４から信号線４３を介して入力されるクロック選択信号に応じて４つの周波数のうちのいずれかの周波数のクロック信号を出力する。
【００４３】
図７は、クロック分周回路３５の構成を示す図である。図７に示すように、クロック分周回路３５は、基準電源により動作する回路であり、周波数２ｆの基準クロックを分周する分周カウンタ７１と、信号線４３を介して入力される２ビットのクロック選択信号Ｑ０、Ｑ１に応じて、分周カウンタ７１により生成された周波数がｆ、ｆ／２、ｆ／４、ｆ／８の４つのクロック信号から１つのクロック信号を選択し、選択クロックとして出力するクロック選択回路７２とを有する。クロック選択信号Ｑ０、Ｑ１の値と選択されるクロック信号の周波数は、図の通りである。選択クロックは、信号線３７を介してレベル変換回路３４に入力され、レベル変換される。
【００４４】
なお、クロック選択信号のビット数を増加し、これに応じて分周カウンタ７１及びクロック選択回路７２を拡張すれば、より多くのクロック選択が可能になる。また、その１つにクロックを選択しないモードを設ければ、クロックの供給を停止するスリープモードを設けることも可能である。
【００４５】
各スレーブプロセッサにおける内部電源の選択及び内部クロックの選択は、制御ユニット１４内のレジスタに書き込まれたデータにより制御される。また、後述するように、可変電源回路１２Ａ及び１２が出力する電源の電圧の選択も、制御ユニット１４内のレジスタに書き込まれたデータにより制御される。
【００４６】
図８は、制御ユニット１４の構成を示す図である。図示のように、制御ユニット１４は、スレーブプロセッサ１１Ａ−１１Ｄに対応した制御レジスタ８１Ａ−８１Ｄと、可変電源回路１２Ａ及び１２に対応した制御レジスタ８２とを有する。制御レジスタ８１Ａ−８１Ｄ及び８２は、内部バス８０、バス２７及び外部のバス１９を介してマスタプロセッサ１５から書き込みが行える。制御レジスタ８１Ａ−８１Ｄは、スレーブプロセッサ１１Ａ−１１Ｄの電源選択回路３３に印加する電源選択信号Ｐ及びクロック選択回路３５のクロック選択信号Ｑ０、Ｑ１を出力する。制御レジスタ８２は、可変電源回路１２Ａ及び１２Ｂから出力する電源の電圧を選択する信号を信号線２４Ａ及び２４Ｂに出力する。
【００４７】
図９は、可変電源回路１２Ａの構成を示す図であり、可変電源回路１２Ｂも同様の構成を有する。図示のように、可変電源回路１２Ａは、電源線２１を介して基準電源Ｖ０が供給され、基準電源から基準電源より低い３つの異なる電圧Ｖ１、Ｖ２、Ｖ３の電源を生成する多電源回路９１と、電源線２１及び多電源回路９１の３つの出力電源線と電源線２１Ａとの４個の接続スイッチＳＷ０、ＳＷ１、ＳＷ２、ＳＷ３と、制御レジスタ８２から信号線２４Ａを介して供給される電源電圧制御信号Ｒ０、Ｒ１に基づいて４個の接続スイッチＳＷ０、ＳＷ１、ＳＷ２、ＳＷ３の開閉を制御するデコーダ９２とを有する。
【００４８】
２ビットの電源電圧制御信号Ｒ０、Ｒ１をデコードすることにより、４個の接続スイッチＳＷ０、ＳＷ１、ＳＷ２、ＳＷ３のいずれか１個をオン状態にし、電源線２１Ａに選択した電圧の電源を出力することができる。なお、図９では、電源電圧制御信号Ｒ０、Ｒ１が（０，１）であり、接続スイッチＳＷ１がオンし、他の接続スイッチがオフしている状態を示す。
【００４９】
次に、本実施例のマルチプロセッサシステムの動作を説明する。図１０は、本実施例のマルチプロセッサシステムの処理動作を説明する図である。マスタプロセッサ１５は、外部から指示された処理のうち、メディア処理のようなまとまった処理で、処理に長時間を要するような負荷の大きな処理をスレッドとして抽出し、バス１９を介してスレッドをスレーブプロセッサ１１Ａ−１１Ｄのいずれかに送る。スレッドを受けたスレーブプロセッサは、スレッドを処理し、処理結果をバス１９を介してマスタプロセッサ１５に送る。マスタプロセッサ１５は、スレッドを送った後、処理結果が送られて来るまで、スレッドの処理結果に影響されない他の処理を行うことができる。図３では、Ｐ処理のスレッドをスレーブプロセッサ１１Ａに送った後、別のＱ処理のスレッドをスレーブプロセッサ１１Ｂに送る。従って、スレーブプロセッサ１１Ａと１１Ｂは、並行してスレッドの処理を行う。図３ではスレーブプロセッサ１１Ａと１１Ｂを示しているが、他のスレーブプロセッサ１１Ｃと１１Ｄも同様に並行してスレッドの処理を行うことができる。
【００５０】
マスタプロセッサ１５からスレーブプロセッサへのスレッドの割り当て動作及びスレーブプロセッサからマスタプロセッサ１５へのスレッドの処理結果の送信は、制御回路１４を介して割り込み処理により行われる。信号線２６Ａ−２６Ｅの一部は、割り込み処理を送信するために使用される。この処理については、本発明と直接関係しないので、詳しい説明は省略する。
【００５１】
いずれにしろ、マスタプロセッサ１５は、各スレーブプロセッサへのスレッドの割り当てを決定するので、各スレーブプロセッサが割り当てられたスレッドを実行するのに最適な電源電圧及びクロック周波数を決定することができる。例えば、処理量が大きく短時間に処理する必要のあるスレッドであれば、それを実行するスレーブプロセッサの電源電圧及びクロック周波数を高くし、処理量が小さく長時間で処理すればよいスレッドであれば、それを実行するスレーブプロセッサの電源電圧及びクロック周波数を低くする。なお、スレッドの処理量が大きくても、他のスレーブプロセッサで並行して実行している処理量の大きなスレッドの処理が終了するまで処理結果の必要のないスレッドであれば、その間に処理が終了するようにスレーブプロセッサの電源電圧及びクロック周波数を決定すればよい。このように、マスタプロセッサ１５は、各スレーブプロセッサの最適な電源電圧及びクロック周波数を決定することが可能である。なお、スレッドの割り当てられないスレーブプロセッサについてはスリープモードにすることも可能である。
【００５２】
マスタプロセッサ１５は、各スレーブプロセッサの最適な電源電圧及びクロック周波数の制御データを、バス１９を介して制御ユニット１４内のレジスタに書き込む。この時、マスタプロセッサ１５は、各スレーブプロセッサを最適な電源電圧及びクロック周波数にするために可変電源回路１２Ａ及び１２Ｂが出力する電圧を選択するデータも制御ユニット１４内のレジスタに書き込む。マスタプロセッサ１５は、各スレーブプロセッサで処理するスレッドを監視し、制御ユニット１４内のレジスタのデータを随時書き換える。この書き換え動作は、新たにスレッドを割り当てる時及びスレッドの処理結果を受信した時に行えばよい。
【００５３】
従って、本実施例のマルチプロセッサシステムを、図１の回路システムの構成と対応付けると、制御ユニット１４とマスタプロセッサ１５が制御回路４に、基準電源回路１２と可変電源回路１２Ａ及び１２Ｂが電源回路２に、スレーブプロセッサの電源選択回路３３が電源選択回路３Ａ−３Ｃに、電源選択回路３３を除くスレーブプロセッサＡ、Ｂ、Ｃが回路ユニット１Ａ、１Ｂ、１Ｃに対応する。
【００５４】
次に、本実施例のマルチプロセッサシステムにおける制御例を説明する。図１１の（Ａ）はスレーブプロセッサ１１Ａ−１１Ｄにおける内部電源電圧と可能なクロック周波数の関係を示し、図１１の（Ｂ）は可変電源回路１２Ａ又は１２Ｂにおいて選択する電源電圧と電源電圧制御信号Ｒ０、Ｒ１の制御コードの関係を示し、図１１の（Ｃ）はクロック分周回路３５において選択するクロック周波数とクロック選択信号Ｑ０、Ｑ１の制御コードの関係を示す。
【００５５】
図１１の（Ａ）に示すように、内部電源電圧が１．８Ｖであれば、クロック周波数は４００ＭＨｚまでのすべての周波数で動作可能である。内部電源電圧が１．２７Ｖの時には、クロック周波数は２００ＭＨｚまでのすべての周波数で動作可能であるが、４００ＭＨｚのクロック周波数で動作することはできない。同様に、内部電源電圧が１．０４Ｖの時には、クロック周波数は１００ＭＨｚまで、内部電源電圧が０．９１Ｖの時には、クロック周波数は５０ＭＨｚまで可能である。
【００５６】
図１１の（Ｂ）に示すように、可変電源回路１２Ａ又は１２Ｂから出力する電圧を、１．８ＶにするにはＲ０とＲ１を”０”と”０”に、１．２７ＶにするにはＲ０とＲ１を”０”と”１”に、１．０４ＶにするにはＲ０とＲ１を”１”と”０”に、０．９１ＶにするにはＲ０とＲ１を”１”と”１”にする。
【００５７】
図１１の（Ｃ）に示すように、内部クロックの周波数を、４００ＭＨｚにするにはＱ０とＱ１を”０”と”０”に、２００ＭＨｚにするにはＱ０とＱ１を”０”と”１”に、１００ＭＨｚにするにはＱ０とＱ１を”１”と”０”に、５０ＭＨｚにするにはＱ０とＱ１を”１”と”１”にする。
【００５８】
図１２は、制御状態の１例を示す図である。図１２の（Ａ）に示すように、この状態では、スレーブプロセッサＡからＤが、それぞれクロック周波数４００ＭＨｚ、２００ＭＨｚ、１００ＭＨｚ、５０ＭＨｚで動作する。この状態を実現するために、可変電源回路１２Ａは１．８Ｖの電源を出力し、可変電源回路１２ＢＡは１．０４Ｖの電源を出力する。そこで、図１２の（Ｂ）に示すように、可変電源回路１２Ａに供給するＲ０とＲ１を”０”と”０”にし、可変電源回路１２Ｂに供給するＲ０とＲ１を”１”と”０”にする。更に、図１２の（Ｃ）に示すように、スレーブプロセッサＡ、Ｂでは電源選択信号Ｐを”０”に、スレーブプロセッサＣ、Ｄでは電源選択信号Ｐを”１”にする。更に、図１２の（Ｄ）に示すように、スレーブプロセッサＡではＱ０とＱ１を”０”と”０”に、スレーブプロセッサＢではＱ０とＱ１を”０”と”１”に、スレーブプロセッサＣではＱ０とＱ１を”１”と”０”に、スレーブプロセッサＤではＱ０とＱ１を”１”と”１”にする。
【００５９】
また、図１３は、制御状態の別の例を示す図である。この状態では、スレーブプロセッサＡとＢがクロック周波数２００ＭＨｚで動作し、スレーブプロセッサＣとＤがクロック周波数５０ＭＨｚで動作する。この状態を実現するために、Ｒ０、Ｒ１、及び各スレーブプロセッサのＰ、Ｑ０、Ｑ１はそれぞれ図示のような制御コードにする。
【００６０】
以上、本発明の実施例を説明したが、本発明は例示した構成に限定されず、各種の変形例が可能である。
【００６１】
例えば、実施例では、制御ユニット１４は、スレーブプロセッサ１１Ａ−１１Ｄの外部に設けられたが、制御ユニット１４の各スレーブプロセッサに対応する部分をそれぞれ各スレーブプロセッサに設けることも可能である。
【００６２】
また、実施例では、クロック発生回路１６は基準クロックのみを出力しているが、クロック発生回路１６に分周カウンタを設けて複数の周波数のクロックを出力するようにし、各スレーブプロセッサにクロック選択回路のみを設けることも可能である。
【００６３】
更に、実施例ではマルチプロセッサシステムを例として説明したが、本発明は、回路ユニットがプロセッサでない場合でも適用可能である。
【産業上の利用可能性】
【００６４】
本発明の回路システムは、性能を低下させることなく動作状態に応じて消費電力を低減することができるので、低消費電力で高性能な動作が要求される携帯電話などのモバイル情報端末などに広く使用することができる。
【図面の簡単な説明】
【００６５】
【図１】本発明の回路システムの基本構成を示す図である。
【図２】本発明の実施例のマルチプロセッサシステムの構成を示す図である。
【図３】スレーブプロセッサの構成を示す図である。
【図４】電源選択回路の構成を示す図である。
【図５】レベル変換回路の構成を示す図である。
【図６】レベルダウン回路及びレベルアップ回路の構成を示す図である。
【図７】クロック分周回路の構成を示す図である。
【図８】制御ユニットの構成を示す図である。
【図９】可変電源回路の構成を示す図である。
【図１０】実施例のマルチプロセッサシステムの動作を説明する図である。
【図１１】スレーブプロセッサにおける内部電源電圧と可能なクロック周波数の関係、可変電源回路における電源電圧選択及びクロック分周回路３５におけるクロック周波数選択の制御コードを示す図である。
【図１２】制御状態の例を示す図である。
【図１３】制御状態の別の例を示す図である。
【符号の説明】
【００６６】
１Ａ−１Ｃ    回路ユニットＡ−Ｃ
２    電源回路
３Ａ−３Ｃ    電源選択回路Ａ−Ｃ
４    制御回路
６    クロック発生回路
１１Ａ−１１Ｄ    スレーブプロセッサＡ−Ｄ
１２    基準電源回路
１２Ａ、１２Ｂ    可変電源回路Ａ、Ｂ
１４    制御ユニット
１５    マスタプロセッサ
【図１】
2006318380.tif 000003
【図２】
2006318380.tif 000004
【図３】
2006318380.tif 000005
【図４】
2006318380.tif 000006
【図５】
2006318380.tif 000007
【図６】
2006318380.tif 000008
【図７】
2006318380.tif 000009
【図８】
2006318380.tif 000010
【図９】
2006318380.tif 000011
【図１０】
2006318380.tif 000012
【図１１】
2006318380.tif 000013
【図１２】
2006318380.tif 000014
【図１３】
2006318380.tif 000015