JP4480787B2 - プロセッサの電力制御装置及び電力制御方法 - Google Patents

プロセッサの電力制御装置及び電力制御方法 Download PDF

Info

Publication number
JP4480787B2
JP4480787B2 JP2009146814A JP2009146814A JP4480787B2 JP 4480787 B2 JP4480787 B2 JP 4480787B2 JP 2009146814 A JP2009146814 A JP 2009146814A JP 2009146814 A JP2009146814 A JP 2009146814A JP 4480787 B2 JP4480787 B2 JP 4480787B2
Authority
JP
Japan
Prior art keywords
power control
power
processor
voltage
index number
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP2009146814A
Other languages
English (en)
Other versions
JP2009245449A (ja
Inventor
丈暢 谷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Panasonic Corp
Panasonic Holdings Corp
Original Assignee
Panasonic Corp
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Corp, Matsushita Electric Industrial Co Ltd filed Critical Panasonic Corp
Priority to JP2009146814A priority Critical patent/JP4480787B2/ja
Publication of JP2009245449A publication Critical patent/JP2009245449A/ja
Application granted granted Critical
Publication of JP4480787B2 publication Critical patent/JP4480787B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Landscapes

  • Power Sources (AREA)

Description

本発明は、プロセッサの内部で消費される電力を制御するための電力制御装置及び電力制御方法に関するものである。
コンピュータ、マイクロプロセッサ、マイクロコントローラ、ディジタル信号処理プロセッサ(DSP)等が知られている。ここでは、これらストアード・プログラム方式の装置を総称して「プロセッサ」という。
従来のプロセッサの中には、電力制御装置を備えたものがある。例えば、あるプロセッサの電力制御装置は、スタンバイモードにおいて当該プロセッサの内部クロックの周波数を特定の周波数まで下げることで、消費電力を削減する。
上記従来のプロセッサの電力制御装置では、低減されたクロック周波数を当該プロセッサのユーザが決めることはできなかった。また、特別な命令を当該プロセッサが実行することでスタンバイモードへ入るようにしていたので、プログラムが大きくなる問題もあった。
本発明の目的は、プロセッサの低消費電力動作をユーザがきめ細かく定義できるようにすることにある。
本発明の他の目的は、イベントドリブン方式の電力制御装置を提供し、以てプログラミングの負担を軽減することにある。
上記目的を達成するために、本発明は、プロセッサの内部で消費される電力を制御するための電力制御装置において、各々が電力制御情報を記憶する複数の電力制御レジスタを備えたパワーテーブルと、プロセッサの所定の内部状況を示す動作条件とインデックス番号とが一対となった情報を複数記憶するための第1のテーブルを有しプロセッサの内部状況が供給される条件判定器と、前記プロセッサの消費電力を制御するためのコントローラとを備えた構成を採用し、前記条件判定器は前記第1のテーブルを参照することにより前記プロセッサの内部状況に応じたインデックス番号を出力し、前記パワーテーブルは前記インデックス番号に応じた電力制御レジスタを選択し、前記コントローラは前記選択された電力制御レジスタに格納された電力制御情報に従って前記プロセッサの消費電力を制御することとしたものである。
また、本発明は、プロセッサの内部で消費される電力を制御するための電力制御方法において、前記プロセッサは各々が電力制御情報を記憶する複数の電力制御レジスタを備えたパワーテーブルを有しており、プロセッサの所定の内部状況を示す動作条件とインデックス番号とが一対となった情報を複数記憶する第1のテーブルを参照することにより前記プロセッサの内部状況に応じたインデックス番号を出力するステップと、出力された前記インデックス番号に応じた電力制御レジスタを前記パワーテーブルから選択するステップと、選択された前記電力制御レジスタに記憶された電力制御情報に従って前記プロセッサの消費電力を制御するステップとを備えることとしたものである。
本発明に係る電力制御装置及び電力制御方法によれば、プログラムの実行前又は実行中に電力制御情報と動作条件とをユーザが書き換えることで、当該プロセッサの低消費電力動作をユーザがきめ細かく定義できる。この書き換えは、プロセッサの製造時に行うことも可能である。
また、本発明に係る電力制御装置及び電力制御方法によれば、プロセッサの現況を条件判定器で自動判定するようにしたので、当該プロセッサのプログラムカウンタが示すアドレス、当該プロセッサに生じたイベントの種別、当該プロセッサの時刻信号が示す時刻等を条件判定器の入力とすることで、イベントドリブン方式の電力制御装置を実現することができる。
以上説明してきたとおり、本発明によれば、パワーテーブル中の電力制御情報とプロセッサの種々の動作条件とを書き換え可能としたので、当該プロセッサの低消費電力動作をユーザがきめ細かく定義できる。また、条件判定器を備えたことにより、プログラミングの負担を軽減できるイベントドリブン方式の電力制御装置を提供することができる。
本発明の第1の実施形態に係るマイクロプロセッサの電力制御装置のブロック図である。 図1中のパワーテーブルの詳細構成例を示すブロック図である。 図1中の電圧コントローラの詳細構成例を示すブロック図である。 図1中のクロックコントローラの詳細構成例を示すブロック図である。 図1の電力制御装置の動作例を示す概念図である。 図1中の条件判定器の変形例を示すブロック図である。 図1中の条件判定器の他の変形例を示すブロック図である。 本発明の第2の実施形態に係る電力制御装置を備えたマイクロプロセッサのブロック図である。 図8中の条件判定器の詳細構成例を示すブロック図である。 図8の電力制御装置の動作例を示す概念図である。 本発明の第3の実施形態に係る電力制御装置を備えたマイクロプロセッサのブロック図である。 図11中の条件判定器の詳細構成例を示すブロック図である。 図11の電力制御装置の動作例を示す概念図である。 図11中の条件判定器の変形例を示すブロック図である。
以下、マイクロプロセッサへの本発明の適用例について、図面を参照しながら具体的に説明する。
《第1の実施形態》
図1は、本発明の第1の実施形態に係るマイクロプロセッサの電力制御装置を示している。当該マイクロプロセッサ10は、プログラムカウンタ11と、複数の回路ブロック15とに加えて、パワーテーブル20と、条件判定器30と、電圧・クロックコントローラ40とで構成された電力制御装置を備えている。
パワーテーブル20は、各々電力制御情報を書き換え可能に記憶するための複数の電力制御レジスタ21を備えている。電力制御情報の各々は、複数の回路ブロック15のうち電力制御の対象とすべき1以上の回路ブロックを指定するためのブロック情報と、制御対象ブロックの電圧に関する情報(電圧情報)と、制御対象ブロックへ供給すべきクロックに関する情報(クロック情報)とを含んでいる。また、複数の電力制御レジスタ21のうちのいずれか1つが、条件判定器30から供給されるインデックス信号により選択されるようになっている。
電圧・クロックコントローラ40は、インデックス信号により選択された電力制御レジスタ21中の電力制御情報に従って制御対象回路ブロックの消費電力を制御するためのコントローラであって、ブロック情報と電圧情報とを受け取る電圧コントローラ41と、ブロック情報とクロック情報とを受け取るクロックコントローラ45とで構成されている。
条件判定器30は、アドレステーブル31と、比較器32と、ラッチ33とを備えている。アドレステーブル31は、各々比較アドレスと、当該比較アドレスに対応付けられたインデックス番号とを書き換え可能に記憶するための複数のレジスタを備えている。比較器32は、プログラムカウンタ11が示すアドレスがアドレステーブル31の中の複数の比較アドレスのいずれに一致したかを判定する。ラッチ33は、一致判定された比較アドレスに対応付けられたインデックス番号を保持し、このインデックス番号を表す信号をパワーテーブル20へ前記インデックス信号として供給する。
図2は、図1中のパワーテーブル20の詳細構成例を示している。各電力制御レジスタ21は、対象ブロック指定フィールドと、第1及び第2の電圧指定フィールドと、第1及び第2のクロック指定フィールドとを持つ。対象ブロック指定フィールドは、複数の回路ブロック15のそれぞれに対応した複数のビットを持ち、例えばビット値“1”が対応回路ブロックを電力制御の対象とすべき旨を表す。この対象ブロック指定フィールドの情報は、ブロック情報(INFO_BLK)として電圧コントローラ41及びクロックコントローラ45へ供給される。第1の電圧指定フィールドは、制御対象回路ブロックへ供給すべき電源電圧Vccの大きさを表す第1の電圧情報(INFO_Vcc)を記憶するためのフィールドである。第2の電圧指定フィールドは、制御対象回路ブロックを構成するトランジスタの閾値電圧Vtを制御するための第2の電圧情報(INFO_Vt)を記憶するためのフィールドである。第1のクロック指定フィールドは、制御対象回路ブロックへ供給すべきクロックの周波数を表す第1のクロック情報(INFO_FREQ)を記憶するためのフィールドである。第2のクロック指定フィールドは、制御対象回路ブロックへのクロック供給を停止するか否かを表す第2のクロック情報(INFO_TERM)を記憶するためのフィールドである。電圧情報は電圧コントローラ41へ、クロック情報はクロックコントローラ45へそれぞれ供給される。
図3は、図1中の電圧コントローラ41の詳細構成例を示している。図3の電圧コントローラ41は、DC−DCコンバータ42と、ゼロ判定器43と、各ブロック用の論路回路44とで構成されている。DC−DCコンバータ42は、基本電圧を第1の電圧情報(INFO_Vcc)で指定された大きさの電圧に変換し、この変換により得た電圧を電源電圧Vccとして出力する。ゼロ判定器43は、第1の電圧情報(INFO_Vcc)がゼロを指定しているか否かを調べる。論理回路44は2個のANDゲートで構成されており、ブロック情報(INFO_BLK)とゼロ判定器43の出力とに基づく電源遮断信号と、ブロック情報(INFO_BLK)と第2の電圧情報(INFO_Vt)とに基づくVt選択信号とを出力する。電源遮断信号は、制御対象回路ブロックにおける電源電圧Vcc供給スイッチの制御に用いられる。Vt選択信号は、制御対象回路ブロックを構成するトランジスタの閾値電圧Vtを制御するように、例えばMOSトランジスタのバックゲート電圧の選択制御に用いられる。各回路ブロックの消費電力は電源電圧Vccの2乗に比例する。したがって、電源電圧Vccの低減は、各回路ブロックの消費電力削減に極めて大きく寄与する。また、トランジスタ閾値電圧Vtの制御は、当該トランジスタの高速動作モードと、漏れ電流が削減された非動作モードとを実現し得る。
図4は、図1中のクロックコントローラ45の詳細構成例を示している。図4のクロックコントローラ45は、PLL46と、分周器47と、各ブロック用の論理回路48とで構成されている。PLL46は、ある周波数を持つ通常動作のための内部クロックを基本クロックから生成する。分周器47は、第1のクロック情報(INFO_FREQ)で指定されたクロック周波数に見合った分周比で、内部クロックを分周する。論理回路48は1個のマルチプレクサと1個のANDゲートとで構成されており、PLL46から供給された内部クロックと分周器47から供給された分周クロックとのいずれかをブロック情報(INFO_BLK)に基づいて選択し、かつ当該選択したクロックの供給・停止を第2のクロック情報(INFO_TERM)に応じて制御する。各回路ブロックの消費電力はクロック周波数に比例する。したがって、クロック周波数の低減は、高速動作が必要でない回路ブロックの消費電力削減に大きく寄与する。
図5は、図1の電力制御装置の動作例を概念的に示している。図5において、パワーテーブル20は、各々インデックス番号0、1、2、3で識別される4個の電力制御レジスタを備えている。アドレステーブル31は、比較アドレス1000とインデックス番号3との組と、比較アドレス1400とインデックス番号2との組と、比較アドレス4B00とインデックス番号0との組と、比較アドレス7010とインデックス番号3との組と、比較アドレスC6FFとインデックス番号1との組と、比較アドレスD200とインデックス番号2との組と、比較アドレスD770とインデックス番号1との組とを記憶しているものとする。
図5によれば、マイクロプロセッサ10のプログラムフローに応じて、次のような電力制御が実現する。まず、アドレス0000からプログラムの実行が開始する。その後、アドレス1000の命令実行時に、プログラムカウンタ11が示すアドレスと、アドレステーブル31の中の1番目の比較アドレスとが一致する。これにより、番号3を表すインデックス信号がパワーテーブル20へ供給される。これを受けて、パワーテーブル20はインデックス番号3で指定された電力制御情報を電圧・クロックコントローラ40へ供給し、電圧・クロックコントローラ40は当該電力制御情報に応じた電圧制御とクロック制御とを実行する。続いて、プログラムの実行がアドレス1400に到達すると、プログラムカウンタ11が示すアドレスと、アドレステーブル31の中の2番目の比較アドレスとが一致し、番号2を表すインデックス信号がパワーテーブル20へ供給される。これを受けて、パワーテーブル20はインデックス番号2で指定された電力制御情報を電圧・クロックコントローラ40へ供給し、電圧・クロックコントローラ40は当該電力制御情報に応じた電圧制御とクロック制御とを実行する。更に、アドレスC6FFへ分岐すべくサブルーチンコール命令が実行されると、プログラムカウンタ11が示すアドレスと、アドレステーブル31の中の5番目の比較アドレスとが一致し、番号1を表すインデックス信号がパワーテーブル20へ供給される。これを受けて、パワーテーブル20はインデックス番号1で指定された電力制御情報を電圧・クロックコントローラ40へ供給し、電圧・クロックコントローラ40は当該電力制御情報に応じた電圧制御とクロック制御とを実行する。
以上のとおり、図1の電力制御装置によれば、パワーテーブル20とアドレステーブル31とをユーザが適宜書き換えることで、当該マイクロプロセッサ10の低消費電力動作をユーザがきめ細かく定義できる。例えば、サブルーチン単位での電力制御や、1命令単位での頻繁な電力制御も可能である。また、特定アドレス区間の命令実行時の電力制御や、多重ループ内の一部命令のみの実行時の電力制御も可能である。しかも、これら電力制御のための特別な命令の実行は不要であるので、電力制御によりアプリケーションプログラム本体の処理効率が低下することはなく、命令メモリ容量の増加を招くこともない。更に、図1の電力制御装置によれば、アプリケーションプログラムの開発と電力制御設計とを独立に行い得る。したがって、プログラム開発の効率向上、保守性向上を図ることができる。また、既存のアプリケーションプログラムを修正することなく、詳細な電力制御を実現することができる。
図6は、図1中の条件判定器30の変形例を示している。図6によれば、プログラムカウンタ11の更新のために、インクリメンタ12と、セレクタ13とが配置されている。インクリメンタ12は、プログラムカウンタ11の出力アドレス信号を受けて、アドレスをインクリメントする。セレクタ13は、通常はインクリメンタ12の出力アドレスをプログラムカウンタ11へ供給するが、ロード信号が与えられた場合には分岐アドレスをプログラムカウンタ11へ供給するように構成されている。図6の条件判定器30は、アドレステーブル31と、比較器32と、ラッチ33とに加えて、ロード信号を受けてイネーブル信号を生成するためのアドレス不連続検出器34を備えている。比較器32は、このイネーブル信号により、プログラムカウンタ11が示すアドレスの不連続変化が検出された場合にのみアドレス一致判定を実行するように制御される。その結果、条件判定器30の内部における消費電力が、図1の場合に比べて削減される。
図7は、図1中の条件判定器30の他の変形例を示している。図7の条件判定器30は、例えばサブルーチン単位での電力制御に適したものであって、各々比較開始アドレスと、当該比較開始アドレスに対応付けられた比較終了アドレスと、当該比較開始アドレス及び比較終了アドレスに対応付けられたインデックス番号とを書き換え可能に記憶するための複数のレジスタを持つアドレステーブル31を備え、プログラムカウンタ11が示すアドレスが複数の比較開始アドレスと複数の比較終了アドレスとで定義される複数のアドレス範囲のいずれに属するかを判定し、この範囲判定された比較開始アドレス及び比較終了アドレスに対応付けられたインデックス番号を表す信号をパワーテーブル20へインデックス信号として供給するようになっている。そのために、図7の条件判定器30は、アドレステーブル31に加えて、第1の比較器32aと、第2の比較器32bと、ANDゲート35と、ラッチ33とを備えている。なお、図1中の比較器32における一致判定をアドレス上位ビットに限定すれば、図7の場合より大まかな範囲判定を実現できる。
《第2の実施形態》
図8は、本発明の第2の実施形態に係る電力制御装置を備えたマイクロプロセッサを示している。図8のマイクロプロセッサ110は、外部ブロック150からのバースト的な大量データの受信を、当該外部ブロック150から与えられる送信開始/完了フラグに基づく割り込み処理として実行する機能を有するものであって、送信開始/完了フラグ等に応じた割り込み種別(イベント種別)を表すイベント信号を発生するためのイベント信号発生器111と、データ受信のための受信処理ブロック115と、受信データを格納するためのメモリブロック116と、その他の機能ブロック117とを備えている。更に、図8のマイクロプロセッサ110は、図1中のパワーテーブル20と同様のパワーテーブル120と、イベント信号に応答して当該パワーテーブル120へインデックス信号を供給するための条件判定器130と、図1中の電圧・クロックコントローラ40と同様の電圧・クロックコントローラ140とを備えており、これらが各回路ブロック115,116,117の消費電力を制御するための電力制御装置を構成している。
図9は、図8中の条件判定器130の詳細構成例を示している。図9の条件判定器130は、イベントテーブル131と、比較器132と、ラッチ133とを備えている。イベントテーブル131は、各々比較イベント種別と、当該比較イベント種別に対応付けられたインデックス番号とを書き換え可能に記憶するための複数のレジスタを備えている。比較器132は、イベント信号発生器111が発生したイベント信号により表されたイベントの種別がイベントテーブル131の中の複数の比較イベント種別のいずれに一致したかを判定する。ラッチ133は、一致判定された比較イベント種別に対応付けられたインデックス番号を保持し、このインデックス番号を表す信号をパワーテーブル120へ前記インデックス信号として供給する。
図10は、図8の電力制御装置の動作例を概念的に示している。図10において、パワーテーブル120は、各々インデックス番号0、1、2、3で識別される4個の電力制御レジスタを備えている。イベントテーブル131は、比較イベント種別1とインデックス番号3との組と、比較イベント種別2とインデックス番号2との組と、比較イベント種別3とインデックス番号0との組と、比較イベント種別4とインデックス番号3との組と、比較イベント種別5とインデックス番号1との組と、比較イベント種別6とインデックス番号2との組と、比較イベント種別7とインデックス番号1との組とを記憶している。外部ブロック150は、マイクロプロセッサ110へのデータ送信を開始する際に送信開始/完了フラグをアクティブにし、送信完了時に当該フラグをネガティブにする。これを受けて、イベント信号発生器111は、送信開始/完了フラグがアクティブになった時点でイベント種別4を表す信号を、当該フラグがネガティブになった時点でイベント種別5を表す信号をそれぞれ発生するものとする。
図10によれば、マイクロプロセッサ110に生じたイベントの種別に応じて、次のような電力制御が実現する。まず、外部ブロック150からマイクロプロセッサ110へのデータ送信の開始時に送信開始/完了フラグがアクティブになると、イベント信号発生器111がイベント種別4を表す信号を発生するので、発生した当該イベント種別と、イベントテーブル131の中の4番目の比較イベント種別とが一致する。これにより、番号3を表すインデックス信号がパワーテーブル120へ供給される。これを受けて、パワーテーブル120はインデックス番号3で指定された電力制御情報を電圧・クロックコントローラ140へ供給し、電圧・クロックコントローラ140は当該電力制御情報に応じた電圧制御とクロック制御とを実行する。ここで、例えば受信処理ブロック115へ供給する電源電圧Vccを高くし、かつ当該ブロック115へ供給するクロックの周波数を高くすることができる。続いて、外部ブロック150からマイクロプロセッサ110へのデータ送信の完了時に送信開始/完了フラグがネガティブになると、イベント信号発生器111がイベント種別5を表す信号を発生するので、発生した当該イベント種別と、イベントテーブル131の中の5番目の比較イベント種別とが一致する。これにより、番号1を表すインデックス信号がパワーテーブル120へ供給される。これを受けて、パワーテーブル120はインデックス番号1で指定された電力制御情報を電圧・クロックコントローラ140へ供給し、電圧・クロックコントローラ140は当該電力制御情報に応じた電圧制御とクロック制御とを実行する。ここで、例えば受信処理ブロック115への電源電圧を遮断し、かつ当該ブロック115へのクロックの供給を停止することができる。これにより、受信処理ブロック115を必要な期間だけ高速動作させることができる。
以上のとおり、図8の電力制御装置によれば、パワーテーブル120とイベントテーブル131とをユーザが適宜書き換えることで、アプリケーションプログラムと非同期に発生するイベント応じた当該マイクロプロセッサ110の低消費電力動作をユーザがきめ細かく定義できる。しかも、これら電力制御のための特別な命令の実行は不要であるので、電力制御によりアプリケーションプログラム本体の処理効率が低下することはなく、命令メモリ容量の増加を招くこともない。更に、図8の電力制御装置によれば、アプリケーションプログラムの開発と電力制御設計とを独立に行い得る。したがって、プログラム開発の効率向上、保守性向上を図ることができる。また、既存のアプリケーションプログラムを修正することなく、詳細な電力制御を実現することができる。
《第3の実施形態》
図11は、本発明の第3の実施形態に係る電力制御装置を備えたマイクロプロセッサを示している。図11のマイクロプロセッサ210は、外部ブロック250との間のデータ送受信を定められた時間帯に実行する機能を有するものであって、時刻を表す時刻信号を発生するためのタイマ211と、データ受信のための受信ブロック215と、データ送信のための送信ブロック216と、その他の機能ブロック217とを備えている。更に、図11のマイクロプロセッサ210は、図1中のパワーテーブル20と同様のパワーテーブル220と、時刻信号に応答して当該パワーテーブル220へインデックス信号を供給するための条件判定器230と、図1中の電圧・クロックコントローラ40と同様の電圧・クロックコントローラ240とを備えており、これらが各回路ブロック215,216,217の消費電力を制御するための電力制御装置を構成している。
図12は、図11中の条件判定器230の詳細構成例を示している。図12の条件判定器230は、タイムテーブル231と、比較器232と、ラッチ233とを備えている。タイムテーブル231は、各々比較時刻と、当該比較時刻に対応付けられたインデックス番号とを書き換え可能に記憶するための複数のレジスタを備えている。比較器232は、タイマ211が発生した時刻信号により表された時刻がイベントテーブル231の中の複数の比較時刻のいずれに一致したかを判定する。ラッチ233は、一致判定された比較時刻に対応付けられたインデックス番号を保持し、このインデックス番号を表す信号をパワーテーブル220へ前記インデックス信号として供給する。
図13は、図11の電力制御装置の動作例を概念的に示している。図13において、パワーテーブル220は、各々インデックス番号0、1、2、3で識別される4個の電力制御レジスタを備えている。タイムテーブル231は、比較時刻とインデックス番号との多数の組を記憶している。図13中のT000、T020、T040、T050、T100、T120、T140、T150は各々時刻を表している。ここでは、当該マイクロプロセッサ210がT040からT050までの時間範囲では送信動作を、T100からT120までの時間範囲では受信動作をそれぞれ実行するものとする。
図13によれば、時間の流れに応じて、次のような電力制御が実現する。まず、タイマ211の時刻信号により表された時刻がT020になると、この時刻と、タイムテーブル231の中の比較時刻T020とが一致する。これにより、番号3を表すインデックス信号がパワーテーブル220へ供給される。これを受けて、パワーテーブル220はインデックス番号3で指定された電力制御情報を電圧・クロックコントローラ240へ供給し、電圧・クロックコントローラ240は当該電力制御情報に応じた電圧制御とクロック制御とを実行する。ここで、例えば受信ブロック215及び送信ブロック216への電源電圧及びクロックの供給を停止し、かつマイクロプロセッサ210の全体の動作周波数を低くすることで、プロセッサ全体として消費電力を削減できる。続いて、タイマ211の時刻信号により表された時刻がT040になると、この時刻と、タイムテーブル231の中の比較時刻T040とが一致する。これにより、番号1を表すインデックス信号がパワーテーブル220へ供給される。これを受けて、パワーテーブル220はインデックス番号3で指定された電力制御情報を電圧・クロックコントローラ240へ供給し、電圧・クロックコントローラ240は当該電力制御情報に応じた電圧制御とクロック制御とを実行する。ここで、例えば受信ブロック215への電源電圧及びクロックの供給を停止したまま、送信ブロック216への電源電圧及びクロックの供給を開始し、かつマイクロプロセッサ210の全体の動作周波数を中程度にまで上げることができる。続いて、タイマ211の時刻信号により表された時刻がT050になると、この時刻と、タイムテーブル231の中の比較時刻T050とが一致する。これにより、番号3を表すインデックス信号がパワーテーブル220へ再び供給されることとなり、T020からT040までの時間範囲と同じ状態に戻る。続いて、タイマ211の時刻信号により表された時刻がT100になると、この時刻と、タイムテーブル231の中の比較時刻T100とが一致する。これにより、番号2を表すインデックス信号がパワーテーブル220へ供給される。これを受けて、パワーテーブル220はインデックス番号2で指定された電力制御情報を電圧・クロックコントローラ240へ供給し、電圧・クロックコントローラ240は当該電力制御情報に応じた電圧制御とクロック制御とを実行する。ここで、例えば送信ブロック216への電源電圧及びクロックの供給を停止したまま、受信ブロック215への電源電圧及びクロックの供給を開始し、かつマイクロプロセッサ210の全体の動作周波数を最大限に上げることができる。
以上のとおり、図11の電力制御装置によれば、パワーテーブル220とタイムテーブル231とをユーザが適宜書き換えることで、時間の流れに沿った当該マイクロプロセッサ210の低消費電力動作をユーザがきめ細かく定義できる。しかも、これら電力制御のための特別な命令の実行は不要であるので、電力制御によりアプリケーションプログラム本体の処理効率が低下することはなく、命令メモリ容量の増加を招くこともない。更に、図11の電力制御装置によれば、アプリケーションプログラムの開発と電力制御設計とを独立に行い得る。したがって、プログラム開発の効率向上、保守性向上を図ることができる。また、既存のアプリケーションプログラムを修正することなく、詳細な電力制御を実現することができる。なお、タイマ211を周期的にリセットするように構成すれば、タイムテーブル231のレジスタ数を削減できる。
図14は、図11中の条件判定器230の変形例を示している。図14の条件判定器230は、各々比較開始時刻と、当該比較開始時刻に対応付けられた比較終了時刻と、当該比較開始時刻及び比較終了時刻に対応付けられたインデックス番号とを書き換え可能に記憶するための複数のレジスタを持つタイムテーブル231を備え、タイマ211の時刻信号が示す時刻が複数の比較開始時刻と複数の比較終了時刻とで定義される複数の時間範囲のいずれに属するかを判定し、この範囲判定された比較開始時刻及び比較終了時刻に対応付けられたインデックス番号を表す信号をパワーテーブル220へインデックス信号として供給するようになっている。そのために、図14の条件判定器230は、タイムテーブル231に加えて、第1の比較器232aと、第2の比較器232bと、ANDゲート235と、ラッチ233とを備えている。なお、図12中の比較器232における一致判定を時刻信号の上位ビットに限定すれば、図14の場合より大まかな範囲判定を実現できる。
なお、上記各実施形態において種々の変更が可能である。例えば図1の構成において、用途に応じてパワーテーブル20とアドレステーブル31とを一体化した1つの装置として実装してもよい。図2中の電力制御レジスタ21は5フィールドからなるが、必ずしもこれに限る必要はない。例えば、用途によっては各電力制御レジスタ21に電源電圧Vccのフィールドのみを実装した構成も可能である。
上記各テーブルは、フリップフロップやラッチ構成に限らず、RAMやEEPROM構成、FPGA等のプログラマブルロジック構成等が可能である。各テーブルを命令実行により書き換えできるようにしてもよい。複数のパワーテーブルを備えた構成も可能である。
上記各パワーテーブルへ供給すべきインデックス信号を命令実行により更新できるようにしてもよい。例えば、サブルーチンコール命令等の分岐命令のオペランド部でパワーテーブルのインデックス番号を指定する。
条件判定器の入力として、命令コードや、当該マイクロプロセッサが扱うデータを採用してもよい。特定メモリ空間(例えばフラッシュメモリの空間)にデータが読み書きされることを条件判定器で検出して電源電圧制御を行うことも可能である。
上記各実施形態の組み合わせによる電力制御も可能である。例えば、アドレス比較により特定のサブルーチン処理時の電源電圧を低くし、かつ外部イベントの発生時にクロック周波数を上げることも可能である。
10 マイクロプロセッサ
11 プログラムカウンタ
20 パワーテーブル
21 電力制御レジスタ
30 条件判定器
31 アドレステーブル
32,32a,32b 比較器
40 電圧・クロックコントローラ
110 マイクロプロセッサ
111 イベント信号発生器
120 パワーテーブル
130 条件判定器
131 イベントテーブル
132 比較器
140 電圧・クロックコントローラ
210 マイクロプロセッサ
211 タイマ
220 パワーテーブル
230 条件判定器
231 タイムテーブル
232,232a,232b 比較器
240 電圧・クロックコントローラ

Claims (2)

  1. プロセッサの内部で消費される電力を制御するための電力制御装置であって、
    各々が電力制御情報を記憶する複数の電力制御レジスタを備えたパワーテーブルと、
    プロセッサの所定の内部状況を示す動作条件とインデックス番号とが一対となった情報を複数記憶するための第1のテーブルを有し、プロセッサの内部状況が供給される条件判定器と、
    前記プロセッサの消費電力を制御するためのコントローラとを備え、
    前記条件判定器は、前記第1のテーブルを参照することにより、前記プロセッサの内部状況に応じたインデックス番号を出力し、
    前記パワーテーブルは前記インデックス番号に応じた電力制御レジスタを選択し、
    前記コントローラは前記選択された電力制御レジスタに格納された電力制御情報に従って、前記プロセッサの消費電力を制御することを特徴とする電力制御装置。
  2. プロセッサの内部で消費される電力を制御するための電力制御方法であって、
    前記プロセッサは、各々が電力制御情報を記憶する複数の電力制御レジスタを備えたパワーテーブルを有しており、
    プロセッサの所定の内部状況を示す動作条件とインデックス番号とが一対となった情報を複数記憶する第1のテーブルを参照することにより、前記プロセッサの内部状況に応じたインデックス番号を出力するステップと、
    出力された前記インデックス番号に応じた電力制御レジスタを、前記パワーテーブルから選択するステップと、
    選択された前記電力制御レジスタに記憶された電力制御情報に従って、前記プロセッサの消費電力を制御するステップとを備えることを特徴とする電力制御方法。
JP2009146814A 2009-06-19 2009-06-19 プロセッサの電力制御装置及び電力制御方法 Expired - Lifetime JP4480787B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009146814A JP4480787B2 (ja) 2009-06-19 2009-06-19 プロセッサの電力制御装置及び電力制御方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009146814A JP4480787B2 (ja) 2009-06-19 2009-06-19 プロセッサの電力制御装置及び電力制御方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2003059641A Division JP4370109B2 (ja) 2003-03-06 2003-03-06 プロセッサの電力制御方法

Publications (2)

Publication Number Publication Date
JP2009245449A JP2009245449A (ja) 2009-10-22
JP4480787B2 true JP4480787B2 (ja) 2010-06-16

Family

ID=41307189

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009146814A Expired - Lifetime JP4480787B2 (ja) 2009-06-19 2009-06-19 プロセッサの電力制御装置及び電力制御方法

Country Status (1)

Country Link
JP (1) JP4480787B2 (ja)

Also Published As

Publication number Publication date
JP2009245449A (ja) 2009-10-22

Similar Documents

Publication Publication Date Title
JP3877518B2 (ja) プロセッサの電力制御装置
US10969849B2 (en) Method and apparatus for implementing power modes in microcontrollers using power profiles
US11372472B2 (en) System on chip for reducing wake-up time, method of operating same, and computer system including same
JP6030987B2 (ja) メモリ制御回路
US7500085B2 (en) Identifying code for compilation
TWI475368B (zh) 電源控制系統及其方法
US9329666B2 (en) Power throttling queue
BR102012024721A2 (pt) Regulação de emissão de instruções de processador
TW201437912A (zh) 具有原生切換機制之非對稱多核心處理器
JP2005528664A (ja) Cpuのパワーダウン方法及びそのための装置
US20120303897A1 (en) Configurable set associative cache way architecture
US8959371B2 (en) Techniques for reducing processor power consumption through dynamic processor resource allocation
JP4370109B2 (ja) プロセッサの電力制御方法
CN100538623C (zh) 一种8位微控制器
JP4480787B2 (ja) プロセッサの電力制御装置及び電力制御方法
JP4800582B2 (ja) 演算処理装置
CN110121688B (zh) 判断加载程序的方法以及电子系统
US7290153B2 (en) System, method, and apparatus for reducing power consumption in a microprocessor
KR20040101344A (ko) 마이크로프로세서, 인스트럭션 시퀀스 발생 방법 및 이를구현한 프로그램 디바이스
KR100442290B1 (ko) 프로그램 카운터 제어회로
US20070245126A1 (en) Program counter of microcontroller and control method thereof
JP2016110400A (ja) 演算処理装置および演算処理装置の制御方法
US20080222399A1 (en) Method for the handling of mode-setting instructions in a multithreaded computing environment
JP2007188137A (ja) マイクロプロセッサ
JP2006048258A (ja) データプロセッサ

Legal Events

Date Code Title Description
TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20100216

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20100316

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130326

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

Ref document number: 4480787

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130326

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140326

Year of fee payment: 4

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term