(57)【特許請求の範囲】
【請求項１】
外部電源電圧を入力して内部動作電圧を出力する電圧変換部と、内部にクロックを供給するクロックドライバ部と、命令制御部を含むデータパス部とを具備するディジタル信号処理装置において、
前記クロックドライバ部に供給する動作電流と前記データパス部に供給する動作電流を検出し、両電流の比率の増減、両電流の個々の絶対量の増減、あるいは両電流の総量の増減に基づいて前記データパス部の稼働率を判定し、該判定結果に応じて前記電圧変換部の出力電圧を増減制御すると共に、前記命令制御部に対して命令セットの一部又は全部の実行サイクル数を増減制御させる電流モニタ部を設けたことを特徴とするディジタル信号処理装置。
【請求項２】
前記データパス部の信号にパリティチェック信号を保有させ、パリティチェックの結果を前記電圧変換部の出力電圧の増減制御および／又は前記実行サイクル数の増減制御に反映させることを特徴とする請求項１に記載のディジタル信号処理装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ディジタル信号処理プロセッサ（ＤＳＰ）やマイクロプロセッサ等のディジタル信号処理装置に係り、特に稼働率に応じて供給電圧と命令サイクル数を増減制御して省電力を図ると共に動作安定性や処理能率向上を図ったディジタル信号処理装置に関するものである。
【０００２】
【従来の技術】
ディジタル信号処理装置（以下では、プロセッサと呼ぶ）の省エネルギー化には動作電圧の低減が有効であるが、一般に動作電圧を低減すると構成回路の動作速度が低下し、プロセッサの処理を実行するインストラクション（命令）の一部が、定められたマシンサイクル（命令サイクル）数内に終了しない不都合が起きる。逆に、動作電圧を高くすると、構成回路は高速化高能率化されるが、消費電力が増大し、省エネルギー化が著しく損なわれるという問題がある。
【０００３】
その対策として、プロセッサで多用される同期式回路を駆動するクロック周波数を動作電圧に追従して変化させることが考えられたが、この方法では入出力のデータのやりとりを行う周辺ＩＣとの間で動作速度の不整合が生じ、システム全体の安定動作が困難になるという問題点があった。
【０００４】
そこで、従来では、図３に示すように、プロセッサコア部２１の内部回路２２への供給電圧を外部電源端子２３から電圧変換器２４を介して供給し、この電圧変換器２４を、内部回路２２の動作速度を監視する動作速度モニタ（オペレーションモニタ）部２５でモニタした結果に応じて、速度劣化による動作不安定が生じないように、制御していた。２６は外部との間でデータをやりとりするためのＩ／Ｏ回路である。
【０００５】
【発明が解決しようとする課題】
しかしながら、前記従来方法では、動作不安定を回避する観点から動作電圧を十分に低減させることができず、省エネルギー効果が不十分であった。また、動作電圧を高くする場合は、構成回路が高速化される効果は期待できるものの、消費電力が増大する割には、処理効率の向上が十分でなかった。
【０００６】
本発明は以上のような点に鑑みてなされたものであり、その目的は、稼働率をモニタし、そのモニタ結果に応じて最適な動作電圧と命令サイクル数を設定することにより、省エネルギー効果と処理能率の向上を図ったディジタル信号処理装置を提供することである。
【０００７】
【課題を解決するための手段】
前記目的を達成するための第１の発明は、外部電源電圧を入力して内部動作電圧を出力する電圧変換部と、内部にクロックを供給するクロックドライバ部と、命令制御部を含むデータパス部とを具備するディジタル信号処理装置において、前記クロックドライバ部に供給する動作電流と前記データパス部に供給する動作電流を検出し、両電流の比率の増減、両電流の個々の絶対量の増減、あるいは両電流の総量の増減に基づいて前記データパス部の稼働率を判定し、該判定結果に応じて前記電圧変換部の出力電圧を増減制御すると共に、前記命令制御部に対して命令セットの一部又は全部の実行サイクル数を増減制御させる電流モニタ部を設けて構成した。
第２の発明は第１の発明において、前記データパス部の信号にパリティチェック信号を保有させ、パリティチェックの結果を前記電圧変換部の出力電圧の増減制御および／又は前記実行サイクル数の増減制御に反映させるよう構成した。
【０００８】
【発明の実施の形態】
図１は本発明の実施の形態を示す図である。１はプロセッサコア部であり、内部回路２、Ｉ／Ｏ回路３を主要な構成要素とするものである。内部回路２は、全体にクロックを供給するクロックドライバ部４と、データの演算処理その他を実行するデータパス部５を有する。このデータパス部５は命令制御部（instruction controller)６を含んでいる。７は外部電源端子８に供給される電圧（ＶＤＤ）を昇圧あるいは降圧して内部回路２に供給する電圧変換部、９はその電圧変換部７からクロックドライバ部４に供給される動作電流を計測する電流計、１０は電圧変換部７からデータパス部５に供給される動作電流を計測する電流計、１１はその両電流計９，１０で計測された電流値に基づいて電圧変換部７とデータパス部５の命令制御部６に制御信号を送る電流モニタ部である。なお、Ｉ／Ｏ回路３への供給電圧は、外部電源端子８から直接的に電圧ＶＤＤが供給され、そのＩ／Ｏ回路３が外部回路の信号電圧に対応してコンパチブルに動作できるようになっている。
【０００９】
さて、電流モニタ部１１でモニタしたクロックドライバ部４に対する供給電流がＩｃ、データパス部５に対する供給電流がＩｄであったとすると、データパス部５の稼働率γ次の式で表される。
γ  ＝  Ｉｄ／（Ｉｄ＋Ｉｃ）                            ・・・（１）
＝  １−Ｉｃ／Ｉｔ
＝  １−Ｐｃ／Ｐｔ
但し、Ｉｔ＝Ｉｄ＋Ｉｃである。また、Ｐｃはクロックドライバ部４の消費電力、Ｐｔは内部回路２の全体の消費電力であり、
Ｐｃ＝Ｉｃ・（ＶＤＤ±ΔＶ）
Ｐｔ＝Ｉｃ・（ＶＤＤ±ΔＶ）＋Ｉｄ・（ＶＤＤ±ΔＶ）
である。（ＶＤＤ±ΔＶ）は、電圧変換部７からクロックドライバ部４とデータパス部に共通に供給される電圧である。
【００１０】
前記稼働率γが十分に小さく０に近い場合は、消費電流の大半はクロックドライバ部４で消費されており、データパス部５の実効的な稼働率が小さいことを示す。この場合は、電流モニタ部１１は電圧変換部７に対して、内部回路２に供給する電圧（ＶＤＤ±ΔＶ）を低く設定するよう指令する。同時に、プロセッサで実行する命令セットの一部あるいは全部の命令サイクル数（１命令サイクルのクロック数）を１あるいは２程度増加するよう、データパス部５内の命令制御部６に指令する。すなわち、通常では１命令サイクルは、例えば２クロック又は３クロックで実行されるが、このクロック数を増やす。
【００１１】
図２に命令サイクル数の増減の様子を示した。１２は低電圧動作時のサイクル数、１３は高電圧動作時のサイクル数、１４は動作電圧低下によるサイクル時間の増加分である。Ａ，Ｂ，Ｃは命令の種類である。
【００１２】
前記のように稼働率が小さい場合は、内部供給電圧が低減されることにより消費電力の削減が達成され、命令サイクル数が大きくなることにより命令処理に余裕ができ安定した命令処理が実施されるようになる。すなわち、省エネルギー化と安定動作が達成される。
【００１３】
一方、稼働率γが０より十分大きい場合には、内部回路２で消費される電力の内、データパス部５で消費される比率が増大し、データパス部５の実効的な稼働率が大きいことを示す。この場合は、電流モニタ部１１は電圧変換部７に対して、内部回路２に供給する電圧（ＶＤＤ±ΔＶ）を高く設定するよう指令する。同時に、プロセッサで実行する命令の一部あるいは全部の命令サイクル数を１あるいは２程度減少するよう、データパス部５内の命令制御部６に指令する。
【００１４】
このように稼働率が大きい場合は、内部供給電圧を高くなることにより高速動作が実現でき、この高速動作を生かすように、命令サイクル数が小さく設定されるので、処理の高効率化が達成される。
【００１５】
前記した命令サイクル数の増減の設定のタイミングは、命令の合間をぬって再設定を実行するダイナミック設定によっても、あるいは、命令が実施される可能性がない場合に限って再設定を実行するスタティック設定によっても良い。
【００１６】
なお、前記稼働率の算出においては、式（１）に示したクロックドライバ部４への電流Ｉｃとデータパス部４への電流Ｉｄの比率｛＝Ｉｄ／（Ｉｄ＋Ｉｃ）｝以外の比率（＝Ｉｃ／Ｉｄ）のに基づいて行うこともでき、このときの稼働率γは（Ｉｃ／Ｉｄ）に反比例する。またＩｃ、Ｉｄの絶対値に基づいて行うこともでき、このときの稼働率γはＩｄに比例する。さらに、電流ＩｃとＩｄの総量（＝Ｉｃ＋Ｉｄ）に基づいて行うこともでき、このときの稼働率γは（Ｉｃ＋Ｉｄ）に比例する。
【００１７】
また、前記説明において、データパス部５の主要信号にパリティチェック部分を追加しておけば、そのパリティチェックを常時実効させ、そのチェック結果によって、たとえばパリティ誤りが判定さることによりプロッセサの不安定動作を即時に検出できるので、この検出結果を内部回路２に供給する電源電圧や命令サイクル数の最適化に反映することができる。
【００１８】
例えば、稼働率γの結果に基づいて供給電圧を設定して動作した結果、パリティチェックでパリティ誤りが判定されれば、その供給電圧が低すぎたことになるので、その供給電圧を上昇させるよう補正を加え再計算する。また、稼働率γの結果に基づいて命令サイクル数を減少して動作した結果、パリティチェックでパリティ誤りが判定されれば、その命令サイクル数少なすぎたことになるので、その命令サイクル数を増加させるよう補正を加え再計算する。
【００１９】
【発明の効果】
以上から本発明によれば、電圧変換部、電流モニタ部等を追加し、稼働率を判定することにより実現できるので、既存のディジタル信号処理装置の構成の大幅な変更を伴わずに、すなわちゲート数やチップ面積の増大を少なく抑えて、最適な動作電圧と命令サイクル数を設定することができ、省エネルギー効果と処理能率の向上を図ることが可能となる。
【図面の簡単な説明】
【図１】  本発明の実施の形態のディジタル信号処理装置の構成を示す説明図である。
【図２】  命令サイクル数の説明図である。
【図３】  従来のディジタル信号処理装置の構成を示す説明図である。
【符号の説明】
１：プロッセサコア部、２：内部回路、３：Ｉ／Ｏ回路、４：クロックドライバ部、５：データパス部、６：命令制御部、７：電圧変換部、８：外部電源端子、９，１０：電流計、１１：電流モニタ部。
【図１】
0003757252.tif 000002
【図２】
0003757252.tif 000003
【図３】
0003757252.tif 000004