JPH0962418A - 電力管理機能を備えたマイクロプロセッサ - Google Patents

電力管理機能を備えたマイクロプロセッサ

Info

Publication number
JPH0962418A
JPH0962418A JP8190162A JP19016296A JPH0962418A JP H0962418 A JPH0962418 A JP H0962418A JP 8190162 A JP8190162 A JP 8190162A JP 19016296 A JP19016296 A JP 19016296A JP H0962418 A JPH0962418 A JP H0962418A
Authority
JP
Japan
Prior art keywords
power
microprocessor
functional unit
clock
power control
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.)
Granted
Application number
JP8190162A
Other languages
English (en)
Other versions
JP3734888B2 (ja
Inventor
Rajiv Gupta
ラジブ・グプタ
Rage Prasad
プラサド・ラジェ
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.)
HP Inc
Original Assignee
Hewlett Packard Co
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 Hewlett Packard Co filed Critical Hewlett Packard Co
Publication of JPH0962418A publication Critical patent/JPH0962418A/ja
Application granted granted Critical
Publication of JP3734888B2 publication Critical patent/JP3734888B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/324Power saving characterised by the action undertaken by lowering clock frequency
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/325Power saving in peripheral device
    • G06F1/3275Power saving in memory, e.g. RAM, cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3296Power saving characterised by the action undertaken by lowering the supply or operating voltage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30076Arrangements for executing specific machine instructions to perform miscellaneous control operations, e.g. NOP
    • G06F9/30083Power or thermal control instructions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3867Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines
    • G06F9/3869Implementation aspects, e.g. pipeline latches; pipeline synchronisation and clocking
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Power Sources (AREA)
  • Microcomputers (AREA)

Abstract

(57)【要約】 【課題】マイクロプロセッサにおける個々の機能ユニッ
トの消費電力をソフトウェアによって制御する方法およ
び装置を提供する。 【解決手段】機能ユニット各々の消費電力を制御する値
を記憶するため各機能ユニットに対応する複数のフィー
ルドを有する電力制御レジスタをマイクロプロセッサに
備える。機能ユニットは、ソフトウェアによって電力制
御レジスタ・フィールドに記憶された値に応じて、その
実行速度を調節し、それによって消費電力が調節され
る。実行速度を制御する方法には、制御レジスタ・フィ
ールドの値に従って、クロックの細分化、機能ユニット
への電力停止、多ポートRAMにおける1つまたは複数
ポートのセンサまたはバッファ・ドライバの動作停止、
機能ユニットからのデータ除去、およびデータ・バス幅
変更が含まれる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、一般的には電力管
理技術に関するもので、特に、電力管理技術のコンピュ
ータ・システムへの応用に関するものである。
【0002】
【従来の技術】コンピュータ・システムにおける電力管
理は、ラップトップおよびノートブック型コンピュータ
の出現と共にますます重要となって来ている。これらの
携帯型コンピュータは、通常はニッケル・カドミウム
(ニカド)またはニッケル・メタル・ハイドライド(nic
kel-metal-hydride)のバッテリで動作する。あいにく、
バッテリ技術の進歩は、現在の携帯型コンピュータの電
力需要の増加に歩調を合わすことができなかった。白黒
からカラー表示への移行が、マイクロプロセッサのクロ
ック速度およびメイン・メモリのサイズの増加と共に、
電力需要の大幅な増大をもたらした。
【0003】バッテリ寿命を伸ばすため、コンピュータ
・システムはいわゆる「電力管理」技術を取り入れた。
このような技術は、コンピュータ・システム全体の中の
個々のサブシステムの消費電力を減らすことによってシ
ステムの消費電力を最小にすることを試みる。電力管理
機能を備えた従来技術コンピュータ・システム10の一
例が図1に示されている。このシステム10は、中央処
理装置(CPU)またはマイクロプロセッサ12、キー
ボード16、ディスク18、ディスプレイ20、メイン
・メモリ・サブシステム22およびI/Oサブシステム
24を含む。CPU12は、バス14を経由してすべて
のサブシステムに接続している。2つの主要な電力管理
技術がある。第1は、サブシステムのクロック速度を制
御するもので、第2は、例えばアイドル状態のコンポー
ネントの電源の切断のように、サブシステムに供給され
る電力の制御を伴うものである。
【0004】従来技術において周知の通り、CMOS集
積回路(IC)の消費電力は、ICのスイッチ頻度に直
接比例し、このスイッチ頻度は、ICに提供されるクロ
ック速度によって制御される。従って、クロック速度を
調整することによって、ICによって消費される電力を
低減させることができる。システム10は、このような
利点を活かして、種々のサブシステムに供給されるクロ
ック信号を一定の条件の下で減少または停止させる。こ
の条件は、典型的には、サブシステムが所定の時間アイ
ドルであるということである。その活動の監視は、マイ
クロプロセッサによって所定のメモリ位置の書き込みま
たは読み取りを検出することによって行われる。そのよ
うなメモリ活動が所定の時間間隔の間発生しなかった場
合、マイクロプロセッサは、システムへの影響なしにサ
ブシステムを安全に閉じることができると仮定する。
【0005】システム10は、また、マイクロプロセッ
サ12によって個別に制御可能な5つのスイッチS1−
S5を含む。これらのスイッチは、対応するサブシステ
ムに供給される電力、または、それらに供給されるクロ
ック周波数を制御することができる。スイッチがクロッ
ク周波数を制御する場合には、クロック分割回路(図示
されていない)によってクロック信号を典型的には2の
倍数で分割するかまたはクロック周波数をゼロにする。
所定時間のアイドルを検出した後、マイクロプロセッサ
12は、マイクロプロセッサとスイッチの間を連結する
線26のような対応する線上に信号を出すことによって
スイッチS3のようなスイッチをオンに設定する。これ
によって、該スイッチが適切な状態に切り替わり、クロ
ックまたは電力が調節されることとなる。サブシステム
が活動的になると、マイクロプロセッサ12は、該信号
をオフに設定し、これによってその状態が通常に戻り、
クロック周波数が通常の動作周波数に設定されるか、ま
たは電力がサブシステムに再供給される。
【0006】いずれにせよ、典型的には、マイクロプロ
セッサがサブシステムを起動させるかまたは「目覚め」
させた後、サブシステムは直ちに使用可能になる。従っ
て、マイクロプロセッサ12は、サブシステムが再び完
全に機能的になるまであらかじめ決められた時間量待た
なければならない。このような動作は、典型的には、非
マスク型割り込みによって起動される割り込みサービス
・ルーチンによって取り扱われる。次に、割込みサービ
ス・ルーチンは、サブシステムをアクセスしようとした
システム・レベル・アプリケーションへ制御を移す前
に、サブシステムが操作可能であることを確認する。そ
のようなシステムには、インテル社のIntel486SL、Adva
nced Micro Devices社のAM386DY-LVおよびChipset Tech
nologies社のSuperstateなどのシステム管理アーキテク
チャによって実施されているシステムがある。
【0007】これらの技術のすべては、個々のサブシス
テムの電力を減らすことに焦点を当てている。(図1に
示されているような)マイクロプロセッサのクロック速
度を減少させることができるにもかかわらず、そのよう
な技術は、マイクロプロセッサ自身によって浪費される
電力に対する非常にきめの粗いレベルの制御を行う。更
に、クロック周波数を減じることは、システム処理能力
の比例的減退を招来する。マイクロプロセッサ12は、
バス活動を監視する若干の内部論理部を除いてスリープ
に入る。
【0008】いくつかのその他のアプローチは、システ
ム・レベルというよりむしろマイクロプロセッサまたは
「チップ」レベルにおける電力管理に焦点を置いた。そ
のようなチップ・レベルのアプローチは、命令ストリー
ムの中で動的に命令を「感知」し、それらの命令を実行
するために必要とされるチップの全体または部分を閉鎖
する。IBM、モトローラおよびとアップル・コンピュ
ータによる共同開発のPowerPCマイクロプロセッ
サは、そのようなアプローチを使用する。PowerP
Cにおいては、次の4つの異なる電力状態がある。すな
わち、Full On(フル活動)、Doze(まどろみ)、Nap(うた
た寝)およびSleep(睡眠)である。PowerPCアーキ
テクチャは、チップがこれら4つのモードのどのモード
に置かれるかを指定するレジスタを含む。ソフトウェア
典型的にはオペレーティング・システムは、このレジス
タに該当する値を書き込むことによってそのモードを設
定する。「Full On(フル活動)」電力モードに設定され
ると、PowerPCマイクロプロセッサは、現在の命
令を実行する上で必要でない機能ユニットからクロック
をはずすかゲートすることによってそれらの機能ユニッ
トを使用停止にする。「Doze(まどろみ)」モードでは、
「Full On(フル活動)」モードの場合と同様の方法で、
バス監視論理回路および基礎時間減衰計を除いて、すべ
ての機能ユニットが使用停止にされる。「Nap(うたた
寝)」モードでは、バス監視論理回路も使用停止にされ
る。最も電力消費の少ない「Sleep(睡眠)」モードで
は、システム・クロック(SYSCLK)は取り除か
れ、フェーズ・ロック・ループ(PLL)が使用停止に
される。
【0009】インテル社によって製作されたペンティア
ム・マイクロプロセッサは、同様のアプローチを使用し
てその内部浮動小数点機構の消費電力を減らしている。
ペンティアムは、動的に現在の命令を感知して、浮動小
数点活動が存在しない時、すなわち、浮動小数点命令が
浮動小数点機構に送られていない時、その機構に対する
クロックを遮断する。
【0010】発明名称が"Method and Apparatus for Pl
acing an Integrated Circuit Chipin a Reduced Power
Consumption State"であるVolk氏に付与された米国特
許第5,388,265号は、特定のチップ活動がないことを検
出する場合にそのチップ全体への電力供給を動的に遮断
する点を除いて、同様のアプローチを使用する。その電
力遮断は、活動を監視する専用のハードウェアによって
実行され、チップ全体の電力消費を節約する。発明名
称"Microprocessor having Built-in SynchronousMemor
y with Power-Saving Feature"であるShiraishi氏その
他に付与された米国特許第5,276,889号は、チップ搭載
同期メモリの電力消費を減少させるため、メモリが現在
実行中の命令にとって必要とされない場合該メモリを使
用停止にする。命令デコーダが、命令ストリームを動的
に監視して、メモリを使用しない命令が実行される時メ
モリへの電力供給を停止するためメモリ・イネーブル信
号をオフにする。
【0011】これらの「動的」アプローチが持つ問題点
は、それらが命令ストリームを監視して検出するための
負荷をハードウェアに課すことである。これは、高度な
パイプライン方式のマイクロプロセッサにおいてクロッ
ク周期を遅くさせる可能性がある。加えて、ハードウェ
アにとって、特定の命令が発せられようとしているのか
否かを前もって判断することが困難である。検出回路
は、命令バッファの待ち行列に入れられた命令をチェッ
クすることはできるが、この形態でも、先行して警告で
きるのは限られた命令数だけである。このような先行警
告では、命令が実行される前に機能ユニットを完全に使
用できないようにするには不充分なことがある。また、
機能ユニットを目覚めさせるため、パイプライン処理を
減速させる必要がある。
【0012】別のアプローチが、Perry氏その他に付与
の特許名称"Power Conservation inMicroprocessor Con
trolled Devices."である米国特許第5,142,684号に記載
されている。このアプローチは、2つのプロセッサを使
用する。すなわち、1つは、可変速度でフォアグランド
・タスクを実行させる高速プロセッサで、他方はバック
グラウンド・タスクを実行する低速プロセッサである。
低速プロセッサは、処理量の多いフォアグランド・タス
クがスケジュールされる時のみ高速プロセッサを起動す
る。この形態では、大部分のタスクに関しては低速プロ
セッサを使用し、必要な場合にのみ高速従って電力消費
の多いプロセッサを使用することによって、電力を節約
する。更に別のレベルの電源制御がソフトウェアによっ
て提供される。高速プロセッサ・クロックのクロック速
度を制御するクロック制御コードが各サブルーチンに組
み込まれる。高速プロセッサはこのコードを読み、アプ
リケーション特有集積回路(すなわちASIC)へその
コードを書き出す。ASICは、そのコードの値に依存
する所定量だけ高速クロックを分断する。このようにし
て、タスク全体が所与のクロック速度で実行される。こ
のアプローチが持つ問題は、追加費用と複雑性を設計に
加える第2のプロセッサを必要とする点である。
【0013】
【発明が解決しようとする課題】このように、上述のよ
うな従来技術の問題点を持たない電力管理機構を備えた
マイクロプロセッサの必要性が存在する。
【0014】
【課題を解決するための手段】改善された電力管理機構
を含むマイクロプロセッサが提供される。該マイクロプ
ロセッサは、マイクロプロセッサの範囲内の個々の機能
ユニットの消費電力を個別に制御するため、複数のフィ
ールドを有する電力制御レジスタを備える。機能ユニッ
トが将来必要とされるか否かを判断するため将来を見通
すことができる能力を持つソフトウェアによって、電力
制御レジスタ・フィールドは設定される。これによっ
て、マイクロプロセッサは、特定の機能ユニットが現在
実行中のソフトウェアによって必要とされないとソフト
ウェアが判断すると、機能ユニットの任意の1つを遮断
またはその実行速度を調節することができる。これは、
命令活動を動的に検出し解読するタスクの負荷をハード
ウェアからソフトウェアへ移すものである。加えて、ソ
フトウェア制御によって、ハードウェアでは可能でない
電力管理機能を可能にする。例えば、電力を節約するた
め、ソフトウェアは、特定ブロックのコードを実行して
いる間、ブランチ予測ハードウェアを動作停止にするこ
とができる。ソフトウェアは、また、特定ブロックのコ
ードが完全に内部キャッシュの範囲内でまかなわれると
予測される場合、メイン・メモリに対する外部バス・イ
ンターフェースを遮断または低速化することができる。
ソフトウェアは、ハードウェアには利用することができ
ない知識を備えることができるので、処理能力に対する
影響の最も少ない電力管理意思決定を効果的に行うこと
ができる。
【0015】機能ユニットは、電力制御レジスタの対応
するフィールドに応じて、そこに記憶されている値に対
応するように実行速度を調節する。実行速度は、多くの
異なる方法で制御することができる。第1に、機能ユニ
ットに提供されるクロック信号を、電力制御レジスタ・
フィールドに対応して分断することができる。これは、
機能ユニットがI/O装置であるような場合には機能ユ
ニットのレベルで、さもなければマイクロプロセッサ全
体のグローバルなレベルでも実施することができる。第
2に、電力制御レジスタ・フィールドに対応して機能ユ
ニットへの電力供給を停止させることによって、機能ユ
ニットの実行速度を調節することができる。これは、機
能ユニットと接地の間に、あるいは別の形態では機能ユ
ニットと供給電圧(Vdd)の間に、ゲーティング・ト
ランジスタを配置することによって実施することができ
る。第3のアプローチでは、機能ユニットが多ポート型
ランダム・アクセス・メモリ(RAM)である場合、電力
制御レジスタ・フィールドに対応して、該RAMの1つ
または複数のポートのセンサおよびバッファ・ドライバ
を使用停止にする。ポートの1つを使用停止にすること
によって、電力が少なくなるので、多ポートRAMのス
ループットまたは実行速度は低下する。第4のより一般
的なアプローチは、制御レジスタ・フィールドに応じ
て、機能ユニットからデータを取り除くものである。こ
れは、データ・バスと機能ユニットの間に配置された3
態バッファを使用停止にすることによって達成される。
更に別のアプローチでは、電力制御レジスタ・フィール
ドを用いて、32ビットと64ビットの外部インターフ
ェースの間で切り換えを行いI/O装置の電力を減少さ
せることができる。上記列挙したアプローチは可能なも
ののすべてではないが、マイクロプロセッサの内部電力
管理に対するソフトウェア・アプローチの能力を例証す
るものである。
【0016】本発明の別の1つの側面において、マイク
ロプロセッサは、クロック・サイクルの単位で電力待ち
時間値(すなわちPLV−Power Latency Valueの頭文
字)を記憶する電力待ち時間レジスタを含む。ソフトウ
ェアが、電力制御レジスタにある1つの値を書き込むこ
とによって機能ユニットを「目覚めさせる(wake up)」
命令(すなわち機能ユニットの活動、従って電力消費レ
ベルを増加させる命令)を発する場合、該機能ユニット
は、実際に使用可能となるまで一定のサイクル数を要す
る。PLV値は、当該機能ユニットに関して目覚ましに
要するサイクル数に関するソフトウェアによる仮定を表
す。このことは、当該機能ユニットの電力待ち時間レジ
スタが書き込まれた後PLVのサイクル数の間、当該機
能ユニットに関連する命令が命令ストリームに存在しな
いことが保証されることを意味する。機能ユニットが使
用可能になるまでに要する「実際の」サイクル数(以下
Actual Latency Valueの頭文字をとってALVと呼ぶ)
は機能ユニットに記憶されていて、このALV値がPL
V値と比較される。機能ユニットがPLVサイクル数よ
り早く使用可能となれば、アクションをとる必要はな
い。PLVサイクル数より長くかかる場合は、その機能
ユニットが使用可能になるまで別の実行機能ユニットを
停止させる停止信号を発する。従って、電力待ち時間レ
ジスタは、機能ユニットからの応答を必要とする命令を
監視するため低消費電力状態にある時命令ストリームを
動的に監視する必要性から機能ユニットを解放する。こ
の構成の場合、動的に命令を感知する実施形態に比較し
て複雑性は非常に小さい。本発明の好ましい実施形態に
おいて、上記機能を実施するため、2つの減分カウンタ
およびいくつかの関連組合せ回路が必要とされる。
【0017】ソフトウェアは、機能ユニットを目覚めさ
せる命令のスケジュールを制御することによって、特定
の目標チップについてALV値よりPLV値が大きくな
るようにすることができる。機能ユニットの電力遮断に
関する異なる方法を使用し、異なるALV値を持つチッ
プ実施形態も可能である。上述のメカニズムは、コード
に変更を加えない同一のソフトウェアをエラーなしです
なわち互換性を保ちながら異なる実現形態上で正確に実
行させることを可能にする。更に、特定の実施形態に関
する機能ユニットの電力停止を最適化するため、該特定
実施形態のALV値をソフトウェアによって調べること
もできる。
【0018】上記発明の課題を解決する手段として、本
発明は、複数の機能ユニット、各々が1つの機能ユニッ
トに対応し1つの値を記憶する複数のフィールドを有す
る電力制御レジスタ、および、各機能ユニットによって
消費される電力量を決定するため、各機能ユニットに対
応する上記フィールドに記憶された値に応じて各機能ユ
ニットの実行速度を調節する手段を持つ電力管理機能を
備えたマイクロプロセッサを含む。
【0019】
【発明の実施の形態】図2は、本発明に従うマイクロプ
ロセッサ100のブロック図である。本明細書において
使用するマイクロプロセッサという用語は、所与のタス
クを遂行するため、マイクロコードであろうと目的コー
ドであろうがいずれかの形態の命令を実行するICを指
す。従って、該マイクロプロセッサは、従来型のCPU
の他、デジタル信号プロセッサ(DSP)、マイクロコン
トローラ、コプロセッサ、データ変換器その他を含む。
該マイクロプロセッサは、特定の機能を遂行するように
構成された一群の(組合せまたは逐次)論理機構として
定義される。それらに含められる典型的機能ユニットに
は、整数加減乗除の各演算、浮動小数点加減乗除の各演
算およびロード/ストアを実行する機能ユニットがあ
る。また、その他の機能ユニットとして、入出力(I/
0)機構、マルチメディア装置、多ポート・キャッシュ
・メモリ機構、レジスタ・ファイル、命令ディスパッチ
機構、ブランチ予測機構、レジスタ保存エンジン、デー
タ・バスがあり、また、特定の機能またはタスクを遂行
する専用装置も含まれる。
【0020】これら機能ユニット(Functional Unitの
頭文字をとって以下FUと略称する場合がある)は、種
々の機能ユニットにデータ、アドレスおよび制御情報を
提供するバス102および104によって相互に接続さ
れる。電力制御レジスタ106もまたマイクロプロセッ
サ100に含められる。電力制御レジスタ106は、値
を記憶するための複数のフィールドを含む。これらの値
は、製造工程で設定される場合もあり、あるいはまたソ
フトウェアによって設定されることもある。各フィール
ドは、それぞれの機能ユニットに対応する。フィールド
108のような各電力制御レジスタ・フィールドは、対
応する機能ユニットの実行速度従って消費電力を調節す
る。この制御は、後述する種々の形態で実行される。電
力制御レジスタの各フィールドはバスを経由して対応す
る機能ユニットに接続する。例えば、バス110はフィ
ールド108を機能ユニットFU1に接続してそのフィ
ールドに記憶されている値を当該機能ユニットに提供す
る。バス112、114および116は、同様に、それ
ぞれの電力制御レジスタのフィールドの内容を対応する
機能ユニットに提供する。電力制御レジスタ106は、
また、どの機能ユニットにも接続していない付加的フィ
ールドを含むこともできる。それらのフィールドは、マ
イクロプロセッサ・アーキテクチャの将来の拡張、ある
いは、マイクロプロセッサ100の全域的電力管理制御
に備えるものである。そのようなフィールドのビット幅
は、要求される制御の分解能に従う。
【0021】マイクロプロセッサ100は、また、待ち
時間制御レジスタ118を含む。このレジスタ118
も、各々が1つの機能ユニットに対応する複数のフィー
ルドを含む。電力制御レジスタ・フィールドの場合と同
様に、待ち時間制御レジスタのフィールドの内容は、バ
ス120、122、124および126経由でそれぞれ
の機能ユニットへ提供される。図10および図11を参
照して後述するように、待ち時間制御レジスタ・フィー
ルドに記憶される値は、対応する電力制御レジスタ・フ
ィールドに所定の値を書き込むことによって機能ユニッ
トに再び電力が供給された後機能ユニットが完全に作動
する状態になるまでに要するクロック・サイクル数に関
する(コンパイラによって設定される)仮定値に対応す
る。待ち時間制御レジスタ・フィールドの動作の詳細は
後述する。
【0022】図3には、機能ユニットの実行速度従って
電力消費を低下させる第1のアプローチが示されてい
る。このアプローチでは、クロック発振器130に接続
するクロック分割器128が、クロック発振器によって
生成されたマスタ・クロック信号(MASTER_CLOCK)を分割
する。クロック分割器は、マスタ・クロック(MASTER_CL
OCK)を受け取って、刻時ツリー132を介してマイクロ
プロセッサの各部へ分配されるシステム・クロック(SYS
TEM_CLOCK)を生成する。刻時ツリー132は、マイクロ
プロセッサ全体にわたってクロック遅延およびクロック
片寄りを最小限にとどめるため(従来技術の)複数のク
ロック・バッファ134、136および138を含む。
【0023】クロック分割器128は、電力制御レジス
タのグロ―バル・フィールド(FUG)140に接続してそ
こに記憶された値を受け取る。このグローバル・レジス
タ・フィールド140は、特定の機能ユニット専用のも
のではなく、すべての機能ユニットに供給されるクロッ
ク周波数を制御することによってすべての機能ユニット
の実行速度を調節する。フィールド140に記憶された
値が、バス142を経由してクロック分割器128へ提
供される。クロック分割器は、電力制御レジスタ・フィ
ールドに記憶された値に応じてマスタ・クロック信号を
細分する。マスタ・クロック信号が分割される度合い
は、レジスタ・フィールド140のビット数に依存す
る。好ましい実施形態においては、クロック分割器は、
フィールド140に記憶された値に応じて(例えば1/2,
1/3, 1/4 ... 1/16のような)整数比率でマスタ・クロ
ック信号を分割する。分解能の量は、電力制御レジスタ
・フィールドのビット数の関数であって、設計者によっ
て設定されることができる。また、予め定めた値を使用
してマスタ・クロック信号をゼロに分割することもでき
る。
【0024】このアプローチを各機能ユニットに関して
適用すれば、対応する電力制御レジスタ・フィールドに
よって、図4に示されるように、特定の機能ユニットに
供給されるクロック速度を調節することができる。しか
しながら、ほとんどのパイプライン構成のマイクロプロ
セッサは、全体を通して単一のクロック周波数を必要と
する。統一的クロック信号を必要としない実施形態に関
しては、個別のクロック分割回路を使用することができ
る。
【0025】図4には、電力消費を調整または低下させ
るため、機能ユニットの実行速度を低下させる第2のア
プローチが示されている。このアプローチでは、個々の
機能ユニットに提供されるクロック信号が、電力制御レ
ジスタの対応するフィールドに記憶された値に応じて閉
じられる。図3の場合と同様に、クロック発信器144
がマスタ・クロック信号(MASTER_CLOCK)を生成するが、
マスタ・クロック信号を分割する代わりに、個々の機能
ユニットに提供されるクロック信号がANDゲート14
6のようなANDゲートによってゲートされる。AND
ゲート146は、電力制御レジスタ・フィールド108
に記憶された値がすべてバイナリ1でない限り、マスタ
・クロック信号が機能ユニットFU1に分配されること
を禁じる。このように、クロック信号(CLK)は、対応す
る電力制御レジスタ・フィールド108に記憶された値
に基づいて、選択的に適用され機能ユニットから取り除
かれることができる。このアプローチがすべてのバイナ
リーが1であるという値に限定されるものではないが、
現行の論理機構を変更せずにクロック信号をゲートする
ことを前提とすればこれが好ましい実施形態であるとい
う点は明らかであろう。
【0026】図5には、機能ユニットが入出力(I/
O)装置である場合の別のアプローチが示されている。
この場合、機能ユニットは、対応する電力制御レジスタ
・フィールド108へ接続してその値を受け取る論理ブ
ロック148を含む。論理ブロック148は、2つの出
力を生成する。第1は、図3で説明したようなクロック
分割器150に提供されるクロック分割器信号(DIVIDE
R)出力である。論理ブロック148のDIVIDER信号出力
は、クロック分割器150によってクロック分割器の出
力である入出力クロック(I/O_CLK)のクロック速度を決
定するために使用される。I/O_CLK信号は、出力ラッチ
152のクロック(CLK)入力へ送られる。出力ラッチ
は、I/O機能ユニットのデータ出力をゲートまたはラ
ッチするために使用される。このように、機能ユニット
の入出力速度は、対応する電力制御レジスタ・フィール
ド108に記憶される値を変更することによって調節す
ることができる。従って、機能ユニットによって消費さ
れる電力は、I/O速度の関数であって、該フィールド
の値を変えることによって調節することができる。
【0027】論理ブロック148の第2の出力は、出力
励振器154に接続した使用可能(ENABLE)信号である。
この出力励振器154は、3態励振器であって、ENABLE
信号がオフの場合高いインピーダンス状態に置かれる。
励振器の出力は、パッド156に接続され、周知の方法
でマイクロプロセッサへの外部接続機構を提供する。励
振器を使用停止にすることによって、マイクロプロセッ
サは、パッド56に接続する寄生容量Cpの充電または
放電による消費電力を効果的に低下または最小化するこ
とができる。本発明の好ましい実施形態における論理ブ
ロック148は、電力制御レジスタに記憶された所定の
値に応じてイネーブル信号をオフにする。論理ブロック
は、また、クロック率を決定するためクロック分割器に
分割器値(DIVIDER)を提供する。このように、実行速度
を低下させ、電力消費を低減するため2つのレベルの制
御がこのアプローチによって提供される。
【0028】図6には、個々の機能ユニットの電力を削
減する更に別のアプローチが示されている。このアプロ
ーチでは、機能ユニットと供給電圧端子の間にトランジ
スタが配置される。このアプローチは、機能ユニットを
使用停止にすることによって機能ユニットの実行速度を
効果的にゼロに低下させる。図6に示されるように、機
能ユニットの接地端子(GND)とマイクロプロセッサの接
地の間にNPNトランジスタ158が配置される。トラ
ンジスタ158のゲートは、電力制御レジスタ・フィー
ルド108に記憶された値に応じてイネーブル(ENABLE)
信号をトランジスタのゲートに提供する論理ブロック1
60に接続される。このアプローチでは、電力制御レジ
スタ・フィールドは単一ビットでよく、論理ブロックは
単純な誘導因子にすぎない。しかし、電力制御レジスタ
・フィールドを複数ビットとして、論理ブロック160
が予め定められた値を解読してその値が検出される時イ
ネーブル信号をオフにするように働く組合せ論理機構と
することもできる。トランジスタを正の電源(SUPPLY Vd
d)と機能ユニットの正の電力入力端子との間に配置する
こともできる点は当業者に明らかであろう。図6に示さ
れるように、その他の機能ユニットの各々も、その実行
速度を制御するためそれぞれのトランジスタを備え持
つ。これらのトランジスタは、電力制御レジスタの対応
するフィールドに記憶された値に従う。対応する論理ブ
ロックおよび種々の接続機構は簡略化のため図示されて
いない。
【0029】図7には、機能ユニットが多ポート型メモ
リである場合に電力制御レジスタのフィールドに応答し
て機能ユニットの処理速度を調節する別のアプローチが
示されている。多くのマイクロプロセッサは、メモリに
対する複数の同時並行アクセスを可能にする多ポート型
メモリを含む。典型的には、このようなメモリは、レジ
スタ・ファイルあるいはキャッシュ・メモリで使用され
る。図7には、2ポート型静的ランダム・アクセス・メ
モリー(SRAM)162が示されている。センス・ア
ンプ(SENSE AMP)、励振器、アドレス・デコーダ(DECODE
R)およびプルアップ・トランジスタ(PULL-UP)が、ポー
ト1(PORT1)およびポート2(PORT2)の各ポートに接続
されている。
【0030】このアプローチでは、1つのポートまたは
両方のポートに関するセンス・アンプ、励振器、アドレ
ス・デコーダおよびプルアップ・トランジスタが、電力
制御レジスタ・フィールド108に記憶された値に応じ
て選択的に使用停止(DISABLE)とされる。論理ブロック
164が、レジスタ・フィールド108に接続してそこ
に記憶されている値を解読する。論理ブロック164が
電力制御レジスタに記憶された所定の値を検出すると、
第1ポートに関係するコンポーネントに与えられている
イネーブル信号(ENABLE1)をオフにすることによって、
センス・アンプ166、アドレス・デコーダ(DECODE1
よびDECODE2)167、バッファ168およびプルアップ
・トランジスタ(PULL-UP1およびPULL-UP2)169を使用
停止にする。これらのコンポーネントは、使用停止とさ
れ、第1ポートによって消費される電力を減少させる。
【0031】論理ブロック164は、また、第2のイネ
ーブル信号(ENABLE2)を生成し、同様の方法で第2ポー
ト(PORT2)に関係するコンポーネントを制御する。ENABL
E1およびENABLE2信号は、フィールド108のビット数
および分解能に従って、電力制御レジスタに記憶されて
いる同一または異なる値に応答して、オン/オフするこ
とができる。代替形態として、異なるフィールドを各メ
モリ・ポートに割り当てことができる。これらのコンポ
ーネントを選択的に使用停止にすることによって、機能
ユニットFU1の実行速度従って消費電力をそれに応じ
て調節することができる。
【0032】マイクロプロセッサによって消費される電
力量を制御するために使用することができる更なるアプ
ローチが図8に示されている。このアプローチでは、デ
ータが、電力制御レジスタの対応するフィールドに記憶
されている値に応じて機能ユニットから選択的に取り除
かれる。これは、データを機能ユニットに接続させるバ
ッファを3態化(tri-state)化させるかまたは使用停止
にすることによって達成される。例えば、図8に示され
るように、データ・バス170はバッファ172のよう
な3態バッファを経由して種々の機能ユニットに接続し
ている。論理ブロック174が、機能ユニットFU1
対応する電力制御レジスタ・フィールド108と3態バ
ッファ172の間に配置される。論理ブロック174
は、レジスタ・フィールド108の中に検出されるあら
かじめ定められた値に応じて、バッファ172に送られ
るイネーブル信号(ENABLE)をオフにすることによってバ
ッファ172を選択的に使用停止にする。バッファ17
2を使用停止にすることによって、バス176上の寄生
容量を充電/放電することによって消費される電力およ
び該バスに接続する論理ブロック部分によって消費され
る電力が節減される。このアプローチは、また、機能ユ
ニットはデータなしで実行することができないので、機
能ユニットの実行速度を調節するものと見なすことがで
きる。
【0033】代替形態として、データ・バスそれ自体を
1つの機能ユニットとみなすことができる。その場合、
すべての機能ユニットからデータを同時に取り除く機能
を持つ3態バッファ175を使用停止にすることによっ
てデータ・バスを完全に遮断することができる。これ
は、データ・バス上の寄生容量を充電/放電することに
よって消費される電力を節約する。
【0034】機能ユニットがI/O装置である場合に実
行速度を調節し従って消費電力を節約する更なるアプロ
ーチが図9に示されている。このアプローチでは、マイ
クロプロセッサへの外部インタフェースが、32ビット
・インターフェースと64ビット・インターフェースの
間で切り換えられる。論理ブロック178は、マルチプ
レクサ180のセレクト入力に提供されるMUX信号を
生成する。マルチプレクサ180は、セレクト信号(す
なわちMUX)の状態に従って、その入力Aで与えられ
るデータかその入力Bで与えられるデータかいずれかを
供給するという既知の方法で動作する。マルチプレクサ
180は、MUX信号に応じてAとBの入力の間を切り
換えることによって、64ビットすべてのデータを連続
した2つの32ビット・ワードの形で出力させることが
できる。
【0035】論理ブロック178は、電力制御レジスタ
・フィールド108に記憶されている値に応じてMUX
信号を生成する。従って、電力制御レジスタ・フィール
ド108は、32ビットと64ビットのインターフェー
スの間で、機能ユニット従ってマイクロプロセッサを切
り換えるために使用することができ、これによって、駆
動されるデータ線の数が減少するため電力消費がそれに
応じて変化する。これは、例えばモトローラ68040
マイクロプロセッサで使用されている動的バス幅変更技
術に類似しているが、本発明のバス幅変更は、マイクロ
プロセッサに与えられる外部入力によらず、電力制御レ
ジスタに記憶されている値に応じて行われる点が相違す
る。
【0036】本発明の別の側面が図10および図11に
示されている。上記の諸アプローチのどれが使用される
としても、対応する電力制御レジスタ・フィールドが機
能ユニットに通常電力を供給するため変更された後ただ
ちに当該機能ユニットが使用可能または動作可能となら
ない点は当業者に明らかであろう。例えば、電力制御レ
ジスタ・フィールドに適切な値を記憶することによって
電力を機能ユニットに再供給する場合、機能ユニットが
その機能を実行するまでにいくつかのクロック・サイク
ルを要するであろう。従って、命令がその機能ユニット
にあまりに早く発せられると、その結果エラーとなる場
合がある。そのため、本発明は、機能ユニット内に電力
待ち時間レジスタ118および関連論理機構を具備し
て、上記のような条件が発生する場合マイクロプロセを
停止させる。相当なハードウェア負荷を機能ユニットに
課する従来技術と異なって、このアプローチは、機能ユ
ニットが命令を監視することはせず、単に、機能ユニッ
トに記憶される実際の待ち時間レジスタ値と電力待ち時
間レジスタ118の対応する電力待ち時間レジスタ・フ
ィールドの間の簡単な比較を実行するだけである。
【0037】図10に示されるように、機能ユニット
は、実際待ち時間レジスタおよび停止論理ブロックを含
む。実際待ち時間レジスタは、機能ユニットが電力節約
状態から完全動作状態に変わった後機能ユニットが完全
に動作可能となるまでに要する実際のクロック・サイク
ル数を表す値を含む。上述から明らかなように、これ
は、機能ユニットの実行速度を制御する電力制御レジス
タ・フィールドが電力節約状態に対応する値から完全電
力供給状態に対応する値へ変る場合の状況に対応する。
一方、電力待ち時間レジスタ118の中の対応するフィ
ールドは、実際待ち時間レジスタの値に関するコンパイ
ラの仮定に対応する。対応する電力制御レジスタ・フィ
ールドが電力節約状態に対応する値から完全電力供給状
態に対応する値へ変わった後この仮定した値に相当する
サイクル数が経過するまで当該機能ユニットへ命令が発
せられないことを保証するためコンパイラはこの仮定を
使用する。これは、命令をチェックする責任を機能ユニ
ットからコンパイラへダウンロードするものである。こ
れは、機能ユニットが命令を動的に監視する必要がなく
なるので、従来技術に比較してすぐれたアプローチであ
る。このアプローチは、1993年5月6日出願の米国
特許出願第08/059,041号(発明名称"Method and Apparat
us for Simplifying Interlock Hardware" )に記載のも
のと似ている。しかし、コンパイラによって設定された
仮定が実際待ち時間レジスタによって指定されたものと
合致しない場合に問題が起きる。そのような場合、機能
ユニットは、マイクロプロセッサを停止させて、実際待
ち時間レジスタに記憶された値の指定の通り、機能ユニ
ットが完全に動作可能となるまで待たなければならな
い。これを実現するために必要な論理が、図10および
図11に示されている。
【0038】図10において、各装置は、実際待ち時間
レジスタ(APLR)および関連停止論理ブロックを持
つ。例えば、機能ユニットFU1は、実際待ち時間レジ
スタ200および関連停止論理ブロック202を含む。
停止論理ブロック202は、次の3つの入力部を含む。
すなわち、第1は、レジスタ200に接続して実際待ち
時間値を受け取る入力、第2は、電力待ち時間レジスタ
118の対応するフィールドに接続して待ち時間仮定値
を受け取る入力、および第3は、電力制御レジスタ10
6の対応するフィールド108に接続する入力である。
停止論理ブロックは、電力制御レジスタ・フィールド1
08を監視して、そこに記憶された値が動作可能状態に
おける増加に対応する値に変化したことを検出しなけれ
ばならない。本発明の好ましい実施形態において、これ
は機能ユニットが完全に使用可能な状態または通常の状
態に置かれる状況に対応する。しかし、この値は、任意
の動作状態にも、または機能ユニットが動作する多数の
状態にも対応させることができる。
【0039】停止論理ブロック202は、マイクロプロ
セッサの多段階パイプラインを制御するパイプライン制
御機構204へ送る停止信号(POWER-STALL1)を生成す
る。信号線206は、パイプライン制御機構204へこ
の停止信号を渡す。停止論理ブロックは、コンパイラが
実際待ち時間値について誤った仮定を設定した場合、電
力停止信号(POWER-STALL1)をオンにする。電力制御レジ
スタの対応するフィールド108が低消費電力から全電
力または通常電力へ変更された後実際待ち時間レジスタ
値による指定に従って必要サイクル数が経過するまで、
この信号はオンのままにされる。その他の機能ユニット
も、同様の条件で電力停止信号((POWER-STALL2...POWE
R-STALLn)を生成する。
【0040】パイプライン制御機構204は、これらの
電力停止信号のいずれかがオンにされた時、あるいは、
その他の機能停止発生源のいずれかが対応する停止条件
を生成した時、停止信号を生成する。上記その他の機能
停止発生源には、周知の通り、制御またはデータの損壊
が含まれる。マイクロプロセッサのパイプラインは、機
能停止信号がオフにされるまで停止させられる。パイプ
ライン制御機構204の実施形態は当業界において既知
のものであるから、本明細書では説明を行わない。この
技術は、例えば、John L.HennessyおよびDavid A. Patt
erson両氏共著の"Computer Architecture:A Quantitati
ve Approach 251-343(1990)"に記載されている。
【0041】図11の停止論理ブロック202は、電力
制御レジスタ108に接続され、当該フィールドが低消
費電力から全電力または通常電力へ変更されたことを検
出する変更検出器208を含む。変更検出器の出力は、
2つのロード可能なカウンタ器210および212に接
続される。変更検出器208が生成するロード信号に応
答して、カウンタ210および212は、それらのデー
タ入力部(DIN)に提示された値をロードする。カウンタ
210に関しては、ロードされる値は、実際待ち時間レ
ジスタ200に記憶されている値であり、カウンタ21
2に関しては、その値は電力待ち時間レジスタ・フィー
ルド201に記憶されている値である。これらカウント
タ210および212の両方は、システムクロックCL
Kによって刻時されるクロック入力を持つ。カウンタ2
10および212は、更に、カウンタの現在時通算値で
あるデータの出力部(DOUT)を含む。このように、カウン
タがロードされた後、データ出力値は、カウンタにロー
ドされた値に対応する。カウンタが減分されるにつれ、
データ出力値は、その減分された値に対応する。
【0042】カウンタ210の出力データ(COUNT1)がゼ
ロに等しくなると、ゼロ信号(ZERO1)を生成するゼロ検
出器214へ送られる。同様に、ゼロ検出器216は、
カウンタ212のデータ出力がゼロに等しくなる時を検
出するためカウンタ212に接続される。カウンタ21
2によって生成されるCOUNT2信号がゼロに等しくなる
と、ゼロ検出器216はゼロ信号ZERO2を発する。
【0043】出力信号ZERO1はインバータ220を経由
してANDゲート218へ送られ、一方、出力信号ZERO
2はANDゲート218へ直接送られる。ANDゲート
218は、信号ZERO2がオンで信号ZERO1オンでない時停
止信号POWER-STALL1を生成する。この条件は、カウンタ
212がカウンタ210より前に減分を終了した状況に
対応する。これは、電力待ち時間レジスタ・フィールド
201に記憶された値がレジスタ200に記憶された実
際待ち時間値より小さい場合に発生する。この場合、信
号POWER-STALL1はカウンタ210のカウントダウンが終
了するまでオンのままにされる。このようにして、信号
POWER-STALL1は、電力待ち時間レジスタ・フィールド2
01に記憶された値とレジスタ200に記憶された実際
待ち時間値との間の差に等しいクロック数の間オンのま
まにされる。このサイクル数経過後、危機は去って、PO
WER-STALL1はオフにされる。検出器222が、POWER-ST
ALL1上の1から0への状態移行を検出して、それに応じ
て、カウンタ210および212をリセットする。この
ように、停止論理ブロック202は、命令がそれに発せ
られる前に機能ユニットが完全に使用可能となることを
保証する。IBM、モトローラおよびアップル社による
PowerPCマイクロプロセッサにおいて実施されて
いるように命令を明示的に監視する形態をとることな
く、本発明の上記機能は達成される。
【0044】実際待ち時間レジスタに記憶される値は、
ソフトウェアにとって利用可能であるので、そこに記憶
される電力待ち時間レジスタ値の内容をソフトウェアが
変更することが可能である。(例えばステータス・レジ
スタのような)他の制御レジスタが読み取られる場合と
全く同じ方法で、実際待ち時間レジスタの内容を読む命
令によってこれを達成することができる。この能力は、
各々が異なる実際待ち時間値を持つようなマイクロプロ
セッサの複数のバージョンについて共通のプログラム・
コードを使用することを可能にする。このプログラム・
コードが適切な値を電力待ち時間レジスタ・フィールド
に書き込むことができる。
【0045】実行ユニット速度を調節する電力制御レジ
スタおよび関連手段を備えるマイクロプロセッサ100
によって、ソフトウェアが該マイクロプロセッサの消費
電力を調節または制御することが可能となる。この形態
は、ソフトウェアが将来どのような機能ユニットが必要
とされるかを判断するため将来を見通すことができるの
で、ハードウェア実施形態に比較して、有利である。必
要とされない機能ユニットは、電力制御レジスタ・フィ
ールドの対応する値を設定することによって低消費電力
または無電力状態に設定することができる。更に、この
能力によって、ソフトウェアは、さもなければ並列的に
実行されるタスクを順次に実行することによって、あら
かじめ決められた量以下に消費電力を保つことができ
る。この形態はマイクロプロセッサの処理能力を抑える
ことを含むけれども、電力を節約し、それによって、同
じシリコン色素が、低コストのプラスチック・パッケー
ジを含む種々の異なるパッケージまたは放熱板なしのパ
ッケージで使用されることを可能にする。シリコンがパ
ッケージに許容される以上の電力を消費しないことを保
証するため、製造工程中に値を設定することによって、
またはウェーハによって、または部品のパッケージング
によって、特定の機能ユニットを永久に使用停止または
低消費電力状態に設定することもできる。次にソフトウ
ェアがこの設定値をを感知してそれに応じてタスクを直
列化することもできる。
【0046】マイクロプロセッサは、図1に示されるよ
うな従来からのコンピュータ・システムで使用されるこ
とができる。次に、電力制御レジスタに書き込みを行う
ソフトウェアはメイン・メモリ22に記憶される。本明
細書において開示される電力管理技術は、従来技術によ
って提供されるシステム・レベルのアプローチと関連し
て使用して、マイクロプロセッサおよびシステム・レベ
ルの電力管理の改善に供することもできる。
【0047】以上本発明の原理を特定の実施形態を用い
て記述したが、本発明の構成および細部はそのような原
理を逸脱することなく修正することができる点は明らか
であろう。
【0048】本発明には、例として次のような実施様態
が含まれる。 (1)電力管理機能を備えたマイクロプロセッサであっ
て、複数の機能ユニットと、各々が1つの機能ユニット
に対応し1つの値を記憶する複数のフィールドを有する
電力制御レジスタと、各機能ユニットによって消費され
る電力量を決定するため、各機能ユニットに対応する上
記フィールドに記憶された値に応じて各機能ユニットの
実行速度を調節する手段と、を備えるマイクロプロセッ
サ。 (2)上記電力制御レジスタの各フィールドの値がマイ
クロプロセッサの製造工程中に設定される、上記(1)
に記載のマイクロプロセッサ。 (3)上記電力制御レジスタの各フィールドの値がマイ
クロプロセッサの半導体組立工程中に設定される、上記
(2)に記載のマイクロプロセッサ。 (4)上記電力制御レジスタの各フィールドの値がマイ
クロプロセッサのパッケージング工程中に設定される、
上記(2)に記載のマイクロプロセッサ。 (5)上記電力制御レジスタの各フィールドの値がマイ
クロプロセッサによって実行されるソフトウェアによっ
て設定される、上記(1)に記載のマイクロプロセッ
サ。 (6)上記マイクロプロセッサがパイプラインを含み、
電力制御レジスタの1つのフィールドの上記値に応じ
て、該パイプラインを停止させる手段を更に含む上記
(1)に記載のマイクロプロセッサ。 (7)各機能ユニットの実行速度を調節する上記手段
が、電力制御レジスタの対応するフィールドの値に応じ
て当該機能ユニットの電力を停止するため、機能ユニッ
トと電力供給端子の間に配置されたトランジスタを含
む、上記(1)に記載のマイクロプロセッサ。 (8)各機能ユニットの実行速度を調節する上記手段
が、電力制御レジスタの対応するフィールドの値に応じ
て、機能ユニットへのデータ入力に関する状態移行を実
行停止状態にさせる手段を含む、上記(1)に記載のマ
イクロプロセッサ。
【0049】(9)上記マイクロプロセッサがクロック
信号を生成して該クロック信号を機能ユニットに送信す
るクロック回路を更に含み、各機能ユニットの実行速度
を調節する上記手段が、電力制御レジスタの対応するフ
ィールドの値に応じて上記クロック信号率を調節する手
段を含む、上記(1)に記載のマイクロプロセッサ。 (10)上記クロック信号率を調節する手段が、電力制
御レジスタの対応するフィールドの値に応じて、上記ク
ロック信号率をゼロに調節する手段を含む、上記(9)
に記載のマイクロプロセッサ。 (11)上記マイクロプロセッサが、電力制御レジスタ
・フィールドが調節された後当該機能ユニットが使用可
能となるまでに要するクロック・サイクル数に対応する
待ち時間値を記憶する待ち時間フィールドを有する電力
待ち時間レジスタを更に含み、上記クロック・サイクル
数がソフトウエアによって仮定され、上記機能ユニット
が、電力制御レジスタの対応するフィールドが該機能ユ
ニットを通常状態に置くように変更された後該機能ユニ
ットが使用可能となるまでその実行を停止させる手段を
含む、上記(1)に記載のマイクロプロセッサ。 (12)上記電力待ち時間レジスタが、対応する機能ユ
ニットに関する待ち時間値を各々が記憶する複数の待ち
時間フィールドを含む、上記(11)に記載のマイクロ
プロセッサ。
【0050】(13)電力管理機能を持つコンピュータ
であって、複数の機能ユニット、および、各々が上記機
能ユニットの1つに対応する複数の電力制御レジスタ・
フィールドを持つ電力制御レジスタを備えたマイクロプ
ロセッサと、上記マイクロプロセッサに接続して、上記
マイクロプロセッサによる実行が可能な命令を記憶する
メモリと、上記メモリに記憶され、電力消費の水準を制
御する値を上記電力制御レジスタ・フィールドに保存す
ることを当該マイクロプロセッサに要求する実行可能コ
ードと、上記電力制御レジスタ・フィールドに保存され
た値に応じて各機能ユニットの実行速度を調節して各機
能ユニットによって消費される電力を調整する手段と、
を含むコンピュータ。 (14)上記マイクロプロセッサがクロック信号を生成
して該クロック信号を機能ユニットに送信するクロック
回路を更に含み、各機能ユニットの実行速度を調節する
上記手段が、電力制御レジスタの対応するフィールドの
値に応じて上記クロック信号率を調節する手段を含む、
上記(13)に記載のコンピュータ。 (15)クロック信号率を調節する上記手段が、クロッ
ク信号の周波数を、第1に記憶された値に応じて、最大
周波数を分母とする分数に調節するクロック分割回路を
含む、上記(14)に記載のコンピュータ。
【0051】(16)上記クロック分割回路が、第2に
記憶された値に応じて、クロック信号の周波数をゼロに
調節する、上記(15)に記載のコンピュータ。 (17)電力制御レジスタのフィールドに記憶された値
に応じて、データ・バス・インターフェースの幅を第1
のビット数から第2のビット数へ減少させる手段を更に
含む、上記(13)に記載のコンピュータ。 (18)上記マイクロプロセッサが、電力制御レジスタ
・フィールドが調節された後当該機能ユニットが使用可
能となるまでに要するクロック・サイクル数に対応する
待ち時間値を記憶するため各機能ユニットに対応する1
つまたは複数の待ち時間レジスタ・フィールドを持つ電
力待ち時間レジスタを更に含み、上記クロック・サイク
ル数がソフトウエアによって仮定され、待ち時間値によ
って指定されたクロック・サイクルの後命令が発せられ
るが当該機能ユニットがまだ使用可能でない場合該機能
ユニットが使用可能になるまでその命令の実行を停止さ
せる手段を上記機能ユニットが含む、上記(13)に記
載のコンピュータ。 (19)上記マイクロプロセッサが多段階方式のパイプ
ラインを含み、上記機能ユニットが、上記電力制御レジ
スタ・フィールドに記憶された値に応じて、多数の停止
信号を上記パイプラインに送出する手段を含む、上記
(13)に記載のコンピュータ。
【0052】(20)複数の機能ユニットを有するマイ
クロプロセッサを備えたコンピュータにおいて消費電力
を最小にする方法であって、上記複数の機能ユニットの
1つにそれぞれ対応する複数のフィールドを持つ電力制
御レジスタを備えたマイクロプロセッサを準備し、上記
電力制御レジスタの各フィールドに1つの値を記憶し、
マイクロプロセッサによって消費される電力を調節する
ため、上記電力制御レジスタに記憶した上記値に従って
各機能ユニットの実行速度を調節する方法。 (21)上記各機能ユニットの実行速度調節が、機能ユ
ニットに与えられるクロック信号のクロック速度を調節
することを含む、上記(20)に記載の方法。 (22)上記各機能ユニットの実行速度調節が、機能ユ
ニットに接続したバスを3態回路で接続することを含
む、上記(20)に記載の方法。 (23)上記電力制御レジスタの各フィールドへの1つ
の値の記憶が、各機能ユニットに対する1つの値を記憶
することを含む、上記(20)に記載の方法。
【0053】
【発明の効果】本発明は、命令ストリームを監視する負
荷をハードウェアに課す従来技術の電力管理技術の動的
アプローチが持つ問題点を解決し、マイクロプロセッサ
の機能ユニット毎のソフトウェアによる柔軟な消費電力
節約が実現する。
【図面の簡単な説明】
【図1】従来技術の電力管理能力を持つコンピュータ・
システムのブロック図である。
【図2】本発明に従うソフトウェアによる制御可能な電
力管理機能を備えるマイクロプロセッサのブロック図で
ある。
【図3】図2のマイクロプロセッサの電力管理機能の1
側面を示すブロック図である。
【図4】図2のマイクロプロセッサの電力管理機能の第
2の側面を示すブロック図である。
【図5】図2のマイクロプロセッサの電力管理機能の第
3の側面を示すブロック図である。
【図6】図2のマイクロプロセッサの電力管理機能の第
4の側面を示すブロック図である。
【図7】図2のマイクロプロセッサの電力管理機能の第
5の側面を示すブロック図である。
【図8】図2のマイクロプロセッサの電力管理機能の第
6の側面を示すブロック図である。
【図9】図2のマイクロプロセッサの電力管理機能の第
7の側面を示すブロック図である。
【図10】本発明の第2の実施形態を示すブロック図で
ある。
【図11】図10の電力停止論理部分のブロック図であ
る。
【符号の説明】
100 マイクロプロセッサ 102、104、110、112、114、116、1
20、122、124、126、142、176 バ
ス 106 電力制御レジスタ 108 電力制御レジスタのフィールド 118 待ち時間制御レジスタ 128、150 クロック分割器 130、144 クロック発振器 132 刻時ツリー 134、136、138 クロック・バッファ 140 電力制御レジスタのグローバル・フィールド 146 ANDゲート 148、160、164、174、178 論理ブロ
ック 152 出力ラッチ 154 出力励振器 156 パッド 158 NPNトランジスタ 162 多ポートSRAM 166 センス・アンプ 167 アドレス・デコーダ 168 バッファ 169 プルアップ・トランジスタ 172、175 3態バッファ 180 マルチプレクサ 200 実際待ち時間レジスタ 202 停止論理ブロック 204 パイプライン制御機構 206 信号線 208 変更検出器 210、212 カウンタ 214、216 ゼロ検出器 222 検出器

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】電力管理機能を備えたマイクロプロセッサ
    であって、 複数の機能ユニットと、 各々が1つの機能ユニットに対応し1つの値を記憶する
    複数のフィールドを有する電力制御レジスタと、 各機能ユニットによって消費される電力量を決定するた
    め、各機能ユニットに対応する上記フィールドに記憶さ
    れた値に応じて各機能ユニットの実行速度を調節する手
    段と、 を備えるマイクロプロセッサ。
JP19016296A 1995-08-11 1996-07-19 電力管理機能を備えたマイクロプロセッサ Expired - Lifetime JP3734888B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US514,284 1995-08-11
US08/514,284 US5996083A (en) 1995-08-11 1995-08-11 Microprocessor having software controllable power consumption

Publications (2)

Publication Number Publication Date
JPH0962418A true JPH0962418A (ja) 1997-03-07
JP3734888B2 JP3734888B2 (ja) 2006-01-11

Family

ID=24046545

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19016296A Expired - Lifetime JP3734888B2 (ja) 1995-08-11 1996-07-19 電力管理機能を備えたマイクロプロセッサ

Country Status (2)

Country Link
US (1) US5996083A (ja)
JP (1) JP3734888B2 (ja)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020018060A (ko) * 2000-08-29 2002-03-07 이데이 노부유끼 전자 기기 및 그것을 사용하는 외부 기기
JP2002543486A (ja) * 1999-04-26 2002-12-17 メディアキュー, インコーポレイテッド 集積デバイスを低電力状態からパワーアップする方法および装置
JP2003109382A (ja) * 2001-09-28 2003-04-11 Mitsubishi Electric Corp 半導体集積回路装置
JP2003523563A (ja) * 1999-12-23 2003-08-05 インテル・コーポレーション ディジタル・パワー・スロットルを備えたマイクロプロセッサ
JP2009049887A (ja) * 2007-08-22 2009-03-05 Nippon Telegr & Teleph Corp <Ntt> パケット処理装置、方法、およびプログラム
JP2009277252A (ja) * 2003-05-07 2009-11-26 Mosaid Technologies Corp 電力の島を使用した集積回路での電力の管理
JP2010257445A (ja) * 2009-04-14 2010-11-11 Technology Currents Llc ハードウェアカスタマイゼーション及びエネルギー最適化のためのプログラム及びデータアノテーション
JP2012520505A (ja) * 2009-03-10 2012-09-06 コルティナ・システムズ・インコーポレイテッド データインターフェース電力消費制御
JP2012234346A (ja) * 2011-04-28 2012-11-29 Fujitsu Frontech Ltd 最大消費電力軽減装置
JP2013101605A (ja) * 2011-10-31 2013-05-23 Apple Inc プロセッサインストラクションの発行の絞り込み
JP2014059761A (ja) * 2012-09-18 2014-04-03 Fujitsu Ltd 半導体集積回路及びコンパイラ

Families Citing this family (194)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7266725B2 (en) 2001-09-03 2007-09-04 Pact Xpp Technologies Ag Method for debugging reconfigurable architectures
US6115799A (en) * 1996-07-19 2000-09-05 Canon Kabushiki Kaisha Information processing apparatus and associated method for managing a memory using a next fit and for reducing a memory fragmentation problem
DE19651075A1 (de) 1996-12-09 1998-06-10 Pact Inf Tech Gmbh Einheit zur Verarbeitung von numerischen und logischen Operationen, zum Einsatz in Prozessoren (CPU's), Mehrrechnersystemen, Datenflußprozessoren (DFP's), digitalen Signal Prozessoren (DSP's) oder dergleichen
DE19654595A1 (de) 1996-12-20 1998-07-02 Pact Inf Tech Gmbh I0- und Speicherbussystem für DFPs sowie Bausteinen mit zwei- oder mehrdimensionaler programmierbaren Zellstrukturen
EP1329816B1 (de) 1996-12-27 2011-06-22 Richter, Thomas Verfahren zum selbständigen dynamischen Umladen von Datenflussprozessoren (DFPs) sowie Bausteinen mit zwei- oder mehrdimensionalen programmierbaren Zellstrukturen (FPGAs, DPGAs, o.dgl.)
US6282663B1 (en) * 1997-01-22 2001-08-28 Intel Corporation Method and apparatus for performing power management by suppressing the speculative execution of instructions within a pipelined microprocessor
JPH10275080A (ja) * 1997-01-24 1998-10-13 Texas Instr Inc <Ti> マイクロプロセッサ
US6542998B1 (en) 1997-02-08 2003-04-01 Pact Gmbh Method of self-synchronization of configurable elements of a programmable module
CN1157641C (zh) * 1997-09-03 2004-07-14 松下电器产业株式会社 处理器
US8686549B2 (en) 2001-09-03 2014-04-01 Martin Vorbach Reconfigurable elements
DE19861088A1 (de) 1997-12-22 2000-02-10 Pact Inf Tech Gmbh Verfahren zur Reparatur von integrierten Schaltkreisen
EP0953892A1 (en) * 1998-04-29 1999-11-03 Lsi Logic Corporation Method of providing clock signals to load circuits in an ASIC device
JP2000020187A (ja) * 1998-07-07 2000-01-21 Fujitsu Ltd 情報処理装置及び電力制御方法並びに記録媒体
US6378081B1 (en) * 1998-10-01 2002-04-23 Gateway, Inc. Power conservation without performance reduction in a power-managed system
JP2000122747A (ja) * 1998-10-12 2000-04-28 Nec Corp ディジタル信号演算処理部の制御装置および方法
US6657973B1 (en) * 1998-10-27 2003-12-02 Matsushita Electric Industrial Co., Ltd. Communications node, network system and method of controlling network system
US6347377B2 (en) 1998-11-04 2002-02-12 Phoenix Technologies Ltd. Method and apparatus for providing intelligent power management
US6604202B1 (en) * 1998-11-20 2003-08-05 Hitachi, Ltd. Low power processor
US6611891B1 (en) 1998-11-23 2003-08-26 Advanced Micro Devices, Inc. Computer resource configuration mechanism across a multi-pipe communication link
JP3326399B2 (ja) * 1998-12-17 2002-09-24 松下電器産業株式会社 通信ノードおよびこれを有する情報機器、並びにネットワークシステム
US6345362B1 (en) * 1999-04-06 2002-02-05 International Business Machines Corporation Managing Vt for reduced power using a status table
US6477654B1 (en) * 1999-04-06 2002-11-05 International Business Machines Corporation Managing VT for reduced power using power setting commands in the instruction stream
US6438700B1 (en) * 1999-05-18 2002-08-20 Koninklijke Philips Electronics N.V. System and method to reduce power consumption in advanced RISC machine (ARM) based systems
CN1378665A (zh) 1999-06-10 2002-11-06 Pact信息技术有限公司 编程概念
US6564331B1 (en) * 1999-09-24 2003-05-13 Intel Corporation Low power register file
US6662302B1 (en) * 1999-09-29 2003-12-09 Conexant Systems, Inc. Method and apparatus of selecting one of a plurality of predetermined configurations using only necessary bus widths based on power consumption analysis for programmable logic device
ATE366958T1 (de) 2000-01-14 2007-08-15 Texas Instruments France Mikroprozessor mit ermässigtem stromverbrauch
US7100061B2 (en) 2000-01-18 2006-08-29 Transmeta Corporation Adaptive power control
AUPQ542900A0 (en) * 2000-02-04 2000-02-24 Bisinella, Richard Microprocessor
JP3538358B2 (ja) * 2000-02-17 2004-06-14 三菱電機株式会社 プログラマブル・コントローラ
US7856633B1 (en) 2000-03-24 2010-12-21 Intel Corporation LRU cache replacement for a partitioned set associative cache
EP1342158B1 (de) 2000-06-13 2010-08-04 Richter, Thomas Pipeline ct-protokolle und -kommunikation
US6968469B1 (en) 2000-06-16 2005-11-22 Transmeta Corporation System and method for preserving internal processor context when the processor is powered down and restoring the internal processor context when processor is restored
JP3878431B2 (ja) * 2000-06-16 2007-02-07 株式会社ルネサステクノロジ 半導体集積回路装置
US6678815B1 (en) * 2000-06-27 2004-01-13 Intel Corporation Apparatus and method for reducing power consumption due to cache and TLB accesses in a processor front-end
EP1182552A3 (en) * 2000-08-21 2003-10-01 Texas Instruments France Dynamic hardware configuration for energy management systems using task attributes
EP1182548A3 (en) * 2000-08-21 2003-10-15 Texas Instruments France Dynamic hardware control for energy management systems using task attributes
US6766460B1 (en) * 2000-08-23 2004-07-20 Koninklijke Philips Electronics N.V. System and method for power management in a Java accelerator environment
US6963992B1 (en) * 2000-09-28 2005-11-08 Cypress Semiconductor Corp. Method and apparatus to generate clock and control signals for over-clocking recovery in a PLL
US6910139B2 (en) * 2000-10-02 2005-06-21 Fujitsu Limited Software processing apparatus with a switching processing unit for displaying animation images in an environment operating base on type of power supply
US8058899B2 (en) 2000-10-06 2011-11-15 Martin Vorbach Logic cell array and bus system
US7260731B1 (en) * 2000-10-23 2007-08-21 Transmeta Corporation Saving power when in or transitioning to a static mode of a processor
US7069047B2 (en) * 2001-01-19 2006-06-27 Raze Technologies, Inc. System and method for on-line insertion of line replaceable units in wireless and wireline access systems
JP3877518B2 (ja) * 2000-12-13 2007-02-07 松下電器産業株式会社 プロセッサの電力制御装置
US7000130B2 (en) * 2000-12-26 2006-02-14 Intel Corporation Method and apparatus for thermal throttling of clocks using localized measures of activity
US6691301B2 (en) * 2001-01-29 2004-02-10 Celoxica Ltd. System, method and article of manufacture for signal constructs in a programming language capable of programming hardware architectures
US6895520B1 (en) 2001-03-02 2005-05-17 Advanced Micro Devices, Inc. Performance and power optimization via block oriented performance measurement and control
US7444531B2 (en) 2001-03-05 2008-10-28 Pact Xpp Technologies Ag Methods and devices for treating and processing data
US9037807B2 (en) 2001-03-05 2015-05-19 Pact Xpp Technologies Ag Processor arrangement on a chip including data processing, memory, and interface elements
US7844796B2 (en) 2001-03-05 2010-11-30 Martin Vorbach Data processing device and method
US6990598B2 (en) * 2001-03-21 2006-01-24 Gallitzin Allegheny Llc Low power reconfigurable systems and methods
US6993669B2 (en) * 2001-04-18 2006-01-31 Gallitzin Allegheny Llc Low power clocking systems and methods
JP2002366351A (ja) * 2001-06-06 2002-12-20 Nec Corp スーパースカラ・プロセッサ
WO2002103532A2 (de) 2001-06-20 2002-12-27 Pact Xpp Technologies Ag Verfahren zur bearbeitung von daten
US20030120896A1 (en) * 2001-06-29 2003-06-26 Jason Gosior System on chip architecture
US7051218B1 (en) 2001-07-18 2006-05-23 Advanced Micro Devices, Inc. Message based power management
US7174467B1 (en) 2001-07-18 2007-02-06 Advanced Micro Devices, Inc. Message based power management in a multi-processor system
US7996827B2 (en) 2001-08-16 2011-08-09 Martin Vorbach Method for the translation of programs for reconfigurable architectures
WO2003016549A2 (en) * 2001-08-17 2003-02-27 Incyte Genomics, Inc. Nucleic-acid associated proteins
US7434191B2 (en) 2001-09-03 2008-10-07 Pact Xpp Technologies Ag Router
US8686475B2 (en) 2001-09-19 2014-04-01 Pact Xpp Technologies Ag Reconfigurable elements
FI20011947A (fi) * 2001-10-05 2003-04-06 Nokia Corp Menetelmä suorittimen toiminnan ohjaamiseksi ja suoritin
US6938176B1 (en) * 2001-10-05 2005-08-30 Nvidia Corporation Method and apparatus for power management of graphics processors and subsystems that allow the subsystems to respond to accesses when subsystems are idle
US20030088799A1 (en) * 2001-11-05 2003-05-08 Bodas Devadatta V. Method and apparatus for regulation of electrical component temperature and power consumption rate through bus width reconfiguration
GB2366891B (en) * 2001-12-06 2002-11-20 Appsense Ltd Improvements in and relating to computer apparatus terminal server apparatus & performance management methods therefor
US6948079B2 (en) * 2001-12-26 2005-09-20 Intel Corporation Method and apparatus for providing supply voltages for a processor
US20030126477A1 (en) * 2001-12-28 2003-07-03 Zhang Kevin X. Method and apparatus for controlling a supply voltage to a processor
US20030122429A1 (en) * 2001-12-28 2003-07-03 Zhang Kevin X. Method and apparatus for providing multiple supply voltages for a processor
US7114086B2 (en) * 2002-01-04 2006-09-26 Ati Technologies, Inc. System for reduced power consumption by monitoring instruction buffer and method thereof
DE10392560D2 (de) 2002-01-19 2005-05-12 Pact Xpp Technologies Ag Reconfigurierbarer Prozessor
WO2003071432A2 (de) 2002-02-18 2003-08-28 Pact Xpp Technologies Ag Bussysteme und rekonfigurationsverfahren
US8914590B2 (en) 2002-08-07 2014-12-16 Pact Xpp Technologies Ag Data processing method and device
FI115562B (fi) * 2002-03-27 2005-05-31 Nokia Corp Menetelmä ja järjestelmä tehonkulutuksen määrittämiseksi elektroniikkalaitteen yhteydessä ja elektroniikkalaite
US7180322B1 (en) 2002-04-16 2007-02-20 Transmeta Corporation Closed loop feedback control of integrated circuits
US7336090B1 (en) 2002-04-16 2008-02-26 Transmeta Corporation Frequency specific closed loop feedback control of integrated circuits
US7941675B2 (en) * 2002-12-31 2011-05-10 Burr James B Adaptive power control
CN1625727A (zh) * 2002-04-19 2005-06-08 国际商业机器公司 采用由具有累加指令配置的编译器控制的硬件结构的处理器的功率控制
US6957163B2 (en) * 2002-04-24 2005-10-18 Yoshiyuki Ando Integrated circuits having post-silicon adjustment control
US6792379B2 (en) * 2002-04-24 2004-09-14 Yoshiyuki Ando Data-based control of integrated circuits
JP3685151B2 (ja) * 2002-04-26 2005-08-17 セイコーエプソン株式会社 クロック制御回路、データ転送制御装置及び電子機器
JP3685150B2 (ja) * 2002-04-26 2005-08-17 セイコーエプソン株式会社 クロック制御回路、データ転送制御装置及び電子機器
EP1363179A1 (en) * 2002-05-17 2003-11-19 STMicroelectronics S.A. Architecture for controlling dissipated power in a system on a chip and related system
US7269752B2 (en) * 2002-06-04 2007-09-11 Lucent Technologies Inc. Dynamically controlling power consumption within a network node
US6667929B1 (en) 2002-06-14 2003-12-23 International Business Machines Corporation Power governor for dynamic RAM
US7657861B2 (en) 2002-08-07 2010-02-02 Pact Xpp Technologies Ag Method and device for processing data
AU2003286131A1 (en) 2002-08-07 2004-03-19 Pact Xpp Technologies Ag Method and device for processing data
US7634668B2 (en) * 2002-08-22 2009-12-15 Nvidia Corporation Method and apparatus for adaptive power consumption
EP1537486A1 (de) 2002-09-06 2005-06-08 PACT XPP Technologies AG Rekonfigurierbare sequenzerstruktur
US7243217B1 (en) * 2002-09-24 2007-07-10 Advanced Micro Devices, Inc. Floating point unit with variable speed execution pipeline and method of operation
US7774627B2 (en) * 2002-10-03 2010-08-10 Via Technologies, Inc. Microprocessor capable of dynamically increasing its performance in response to varying operating temperature
US20050044429A1 (en) * 2003-08-22 2005-02-24 Ip-First Llc Resource utilization mechanism for microprocessor power management
US7302599B2 (en) * 2004-02-12 2007-11-27 Via Technologies, Inc. Instantaneous frequency-based microprocessor power management
US7814350B2 (en) * 2002-10-03 2010-10-12 Via Technologies, Inc. Microprocessor with improved thermal monitoring and protection mechanism
US7770042B2 (en) * 2002-10-03 2010-08-03 Via Technologies, Inc. Microprocessor with improved performance during P-state transitions
US7698583B2 (en) 2002-10-03 2010-04-13 Via Technologies, Inc. Microprocessor capable of dynamically reducing its power consumption in response to varying operating temperature
US7290156B2 (en) * 2003-12-17 2007-10-30 Via Technologies, Inc. Frequency-voltage mechanism for microprocessor power management
US7849332B1 (en) 2002-11-14 2010-12-07 Nvidia Corporation Processor voltage adjustment system and method
US7886164B1 (en) 2002-11-14 2011-02-08 Nvidia Corporation Processor temperature adjustment system and method
US7882369B1 (en) 2002-11-14 2011-02-01 Nvidia Corporation Processor performance adjustment system and method
US7500126B2 (en) * 2002-12-04 2009-03-03 Nxp B.V. Arrangement and method for controlling power modes of hardware resources
WO2004051449A2 (en) * 2002-12-04 2004-06-17 Koninklijke Philips Electronics N.V. Register file gating to reduce microprocessor power dissipation
US8086884B2 (en) * 2002-12-16 2011-12-27 Hewlett-Packard Development Company, L.P. System and method for implementing an integrated circuit having dynamically variable power limit
US7290152B2 (en) * 2002-12-30 2007-10-30 International Business Machines Corporation Method and system for managing power within a compute component of a multiprocessor system
US7786756B1 (en) 2002-12-31 2010-08-31 Vjekoslav Svilan Method and system for latchup suppression
US7205758B1 (en) 2004-02-02 2007-04-17 Transmeta Corporation Systems and methods for adjusting threshold voltage
US7953990B2 (en) * 2002-12-31 2011-05-31 Stewart Thomas E Adaptive power control based on post package characterization of integrated circuits
US7949864B1 (en) * 2002-12-31 2011-05-24 Vjekoslav Svilan Balanced adaptive body bias control
US7228242B2 (en) * 2002-12-31 2007-06-05 Transmeta Corporation Adaptive power control based on pre package characterization of integrated circuits
US7642835B1 (en) * 2003-11-12 2010-01-05 Robert Fu System for substrate potential regulation during power-up in integrated circuits
US6992675B2 (en) * 2003-02-04 2006-01-31 Ati Technologies, Inc. System for displaying video on a portable device and method thereof
US7185215B2 (en) * 2003-02-24 2007-02-27 International Business Machines Corporation Machine code builder derived power consumption reduction
US20040181654A1 (en) * 2003-03-11 2004-09-16 Chung-Hui Chen Low power branch prediction target buffer
US6915438B2 (en) * 2003-04-04 2005-07-05 Arraycomm, Inc Distributed power management method for monitoring control/status signal of sub-modules to manage power of sub-modules by activating clock signal during operation of sub-modules
US7028197B2 (en) * 2003-04-22 2006-04-11 Lsi Logic Corporation System and method for electrical power management in a data processing system using registers to reflect current operating conditions
US7134028B2 (en) * 2003-05-01 2006-11-07 International Business Machines Corporation Processor with low overhead predictive supply voltage gating for leakage power reduction
JP4700611B2 (ja) 2003-08-28 2011-06-15 ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト データ処理装置およびデータ処理方法
US7174469B2 (en) * 2003-09-30 2007-02-06 International Business Machines Corporation Processor power and energy management
TWI242133B (en) * 2003-12-02 2005-10-21 Via Tech Inc Interrupt signal control method
US7287173B2 (en) * 2003-12-19 2007-10-23 Intel Corporation Method for computing power consumption levels of instruction and recompiling the program to reduce the excess power consumption
US7129771B1 (en) 2003-12-23 2006-10-31 Transmeta Corporation Servo loop for well bias voltage source
US7649402B1 (en) 2003-12-23 2010-01-19 Tien-Min Chen Feedback-controlled body-bias voltage source
US7012461B1 (en) 2003-12-23 2006-03-14 Transmeta Corporation Stabilization component for a substrate potential regulation circuit
US7246219B2 (en) * 2003-12-23 2007-07-17 Intel Corporation Methods and apparatus to control functional blocks within a processor
US7692477B1 (en) * 2003-12-23 2010-04-06 Tien-Min Chen Precise control component for a substrate potential regulation circuit
KR20050071739A (ko) * 2004-01-02 2005-07-08 삼성전자주식회사 누설 전력을 줄이기 위한 마이크로프로세서
US7816742B1 (en) 2004-09-30 2010-10-19 Koniaris Kleanthes G Systems and methods for integrated circuits comprising multiple body biasing domains
US7859062B1 (en) 2004-02-02 2010-12-28 Koniaris Kleanthes G Systems and methods for integrated circuits comprising multiple body biasing domains
US7334418B2 (en) * 2004-02-12 2008-02-26 Via Technologies, Inc. Method and apparatus for microprocessor temperature control
US7376854B2 (en) * 2004-03-31 2008-05-20 Intel Corporation System for enabling and disabling voltage regulator controller of electronic appliance according to a series of delay times assigned to voltage regulator controllers
US7334143B2 (en) * 2004-04-19 2008-02-19 Hewlett-Packard Development Company, L.P. Computer power conservation apparatus and method that enables less speculative execution during light processor load based on a branch confidence threshold value
US7395419B1 (en) * 2004-04-23 2008-07-01 Apple Inc. Macroscalar processor architecture
US7617496B2 (en) * 2004-04-23 2009-11-10 Apple Inc. Macroscalar processor architecture
US7401240B2 (en) * 2004-06-03 2008-07-15 International Business Machines Corporation Method for dynamically managing power in microprocessor chips according to present processing demands
US7562233B1 (en) 2004-06-22 2009-07-14 Transmeta Corporation Adaptive control of operating and body bias voltages
US7774625B1 (en) 2004-06-22 2010-08-10 Eric Chien-Li Sheng Adaptive voltage control by accessing information stored within and specific to a microprocessor
US7330988B2 (en) * 2004-06-30 2008-02-12 Sun Microsystems, Inc. Method and apparatus for power throttling in a multi-thread processor
US7299371B2 (en) * 2004-08-05 2007-11-20 International Business Machines Corporation Hierarchical management for multiprocessor system
US7299372B2 (en) * 2004-08-05 2007-11-20 International Business Machines Corporation Hierarchical management for multiprocessor system with real-time attributes
US20090150692A1 (en) * 2004-11-22 2009-06-11 Koninklijke Philips Electronics, N.V. Portable ultrasound system with variable power consumption
US7395443B1 (en) * 2004-12-28 2008-07-01 Advanced Micro Devices, Inc. Integrated circuit with a hibernate mode and method therefor
US7467325B2 (en) * 2005-02-10 2008-12-16 International Business Machines Corporation Processor instruction retry recovery
US20060184771A1 (en) * 2005-02-11 2006-08-17 International Business Machines Mini-refresh processor recovery as bug workaround method using existing recovery hardware
US7334140B2 (en) * 2005-03-03 2008-02-19 International Business Machines Corporation Apparatus and method to selectively provide power to one or more components disposed in an information storage and retrieval system
US7739531B1 (en) 2005-03-04 2010-06-15 Nvidia Corporation Dynamic voltage scaling
JP4082706B2 (ja) * 2005-04-12 2008-04-30 学校法人早稲田大学 マルチプロセッサシステム及びマルチグレイン並列化コンパイラ
US7444525B2 (en) * 2005-05-25 2008-10-28 Sony Computer Entertainment Inc. Methods and apparatus for reducing leakage current in a disabled SOI circuit
US7472301B2 (en) * 2005-05-27 2008-12-30 Codman Neuro Sciences Sárl Circuitry for optimization of power consumption in a system employing multiple electronic components, one of which is always powered on
US7225100B2 (en) * 2005-07-05 2007-05-29 Via Technologies, Inc. Apparatus and method for dynamic configuration of temperature profile in an integrated circuit
US8914618B2 (en) 2005-12-29 2014-12-16 Intel Corporation Instruction set architecture-based inter-sequencer communications with a heterogeneous resource
JP2009524134A (ja) 2006-01-18 2009-06-25 ペーアーツェーテー イクスペーペー テクノロジーズ アクチエンゲゼルシャフト ハードウェア定義方法
US7555664B2 (en) * 2006-01-31 2009-06-30 Cypress Semiconductor Corp. Independent control of core system blocks for power optimization
US20070188186A1 (en) * 2006-02-14 2007-08-16 Toshiba America Electronic Components Systems and methods for managing power supplied to integrated circuits
US8595279B2 (en) * 2006-02-27 2013-11-26 Qualcomm Incorporated Floating-point processor with reduced power requirements for selectable subprecision
US8102398B2 (en) * 2006-03-03 2012-01-24 Ati Technologies Ulc Dynamically controlled power reduction method and circuit for a graphics processor
US7693257B2 (en) * 2006-06-29 2010-04-06 Accuray Incorporated Treatment delivery optimization
US7565560B2 (en) * 2006-10-31 2009-07-21 International Business Machines Corporation Supplying combinations of clock frequency, voltage, and current to processors
US8667198B2 (en) * 2007-01-07 2014-03-04 Apple Inc. Methods and systems for time keeping in a data processing system
US7818592B2 (en) * 2007-04-18 2010-10-19 Globalfoundries Inc. Token based power control mechanism
US9134782B2 (en) 2007-05-07 2015-09-15 Nvidia Corporation Maintaining optimum voltage supply to match performance of an integrated circuit
US20090125010A1 (en) * 2007-07-06 2009-05-14 Sharkey Hugh R Uterine Therapy Device and Method
US7937568B2 (en) * 2007-07-11 2011-05-03 International Business Machines Corporation Adaptive execution cycle control method for enhanced instruction throughput
US8370663B2 (en) 2008-02-11 2013-02-05 Nvidia Corporation Power management with dynamic frequency adjustments
US8028180B2 (en) * 2008-02-20 2011-09-27 International Business Machines Corporation Method and system for power conservation in a hierarchical branch predictor
US8145923B2 (en) * 2008-02-20 2012-03-27 Xilinx, Inc. Circuit for and method of minimizing power consumption in an integrated circuit device
US20090276644A1 (en) * 2008-05-02 2009-11-05 Goodnow Kenneth J Structure for semiconductor power distribution and control
US20090273239A1 (en) * 2008-05-02 2009-11-05 Goodnow Kenneth J Semiconductor power distribution and control systems and methods
US8181003B2 (en) * 2008-05-29 2012-05-15 Axis Semiconductor, Inc. Instruction set design, control and communication in programmable microprocessor cores and the like
US20100146169A1 (en) * 2008-12-05 2010-06-10 Nuvoton Technology Corporation Bus-handling
US8037325B1 (en) 2008-12-09 2011-10-11 Google Inc. System and method for determining power consumption
US7653826B1 (en) 2009-01-20 2010-01-26 International Business Machines Corporation Method and apparatus for query optimization and management of sleepy drives
US8255716B2 (en) * 2009-08-27 2012-08-28 Qualcomm Incorporated Power optimization for data services
US8700925B2 (en) * 2009-09-01 2014-04-15 Nvidia Corporation Regulating power using a fuzzy logic control system
US8826048B2 (en) * 2009-09-01 2014-09-02 Nvidia Corporation Regulating power within a shared budget
WO2011033626A1 (ja) * 2009-09-16 2011-03-24 株式会社 東芝 コンピュータシステム
NL2003915C2 (en) * 2009-12-07 2011-06-09 Yggdra Solutions Improved power usage management.
US9256265B2 (en) 2009-12-30 2016-02-09 Nvidia Corporation Method and system for artificially and dynamically limiting the framerate of a graphics processing unit
US9830889B2 (en) 2009-12-31 2017-11-28 Nvidia Corporation Methods and system for artifically and dynamically limiting the display resolution of an application
US8839006B2 (en) 2010-05-28 2014-09-16 Nvidia Corporation Power consumption reduction systems and methods
US20110292855A1 (en) * 2010-05-28 2011-12-01 Qualcomm Incorporated Dynamic clock buffer power optimization based on modes of operation
KR101754203B1 (ko) * 2011-01-19 2017-07-07 삼성전자주식회사 파워 게이팅 기반의 재구성가능 프로세서, 이를 위한 컴파일 장치 및 방법
US20120246458A1 (en) * 2011-03-25 2012-09-27 Cisco Technology, Inc. Power optimization on a thin client device
JP5946251B2 (ja) * 2011-07-06 2016-07-06 ルネサスエレクトロニクス株式会社 半導体装置およびシステム
JP5806529B2 (ja) 2011-07-06 2015-11-10 ルネサスエレクトロニクス株式会社 半導体装置、それを用いた無線通信端末、及びクロック周波数制御方法
US9367080B2 (en) * 2011-12-22 2016-06-14 Intel Corporation Apparatus, system, and method for providing clock signal on demand
US10732689B2 (en) 2013-07-09 2020-08-04 Texas Instruments Incorporated Controlling the number of powered vector lanes via a register field
US10175981B2 (en) * 2013-07-09 2019-01-08 Texas Instruments Incorporated Method to control the number of active vector lanes for power efficiency
KR102154080B1 (ko) * 2014-07-25 2020-09-09 삼성전자주식회사 전력 관리 시스템, 이를 포함하는 시스템 온 칩 및 모바일 기기
US9747239B2 (en) * 2014-08-25 2017-08-29 Apple Inc. Transaction filter for on-chip communications network
US9927862B2 (en) 2015-05-21 2018-03-27 Microsoft Technology Licensing, Llc Variable precision in hardware pipelines for power conservation
US9977488B1 (en) * 2016-03-10 2018-05-22 Changming Kong Electronic device with smart power management system
KR20190041330A (ko) 2017-10-12 2019-04-22 에스케이하이닉스 주식회사 전원 게이팅 회로를 포함하는 반도체 장치
US10588607B2 (en) 2017-12-08 2020-03-17 Clarius Mobile Health Corp. Systems and methods for managing power in an ultrasound imaging machine
TWI697841B (zh) * 2018-12-18 2020-07-01 新唐科技股份有限公司 控制電路及快速設定電源模式的方法
US10565036B1 (en) 2019-02-14 2020-02-18 Axis Semiconductor, Inc. Method of synchronizing host and coprocessor operations via FIFO communication

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4991078A (en) * 1987-09-29 1991-02-05 Digital Equipment Corporation Apparatus and method for a pipelined central processing unit in a data processing system
US5142684A (en) * 1989-06-23 1992-08-25 Hand Held Products, Inc. Power conservation in microprocessor controlled devices
JPH0328911A (ja) * 1989-06-26 1991-02-07 Mitsubishi Electric Corp マイクロプロセッサ
US5222239A (en) * 1989-07-28 1993-06-22 Prof. Michael H. Davis Process and apparatus for reducing power usage microprocessor devices operating from stored energy sources
US5167024A (en) * 1989-09-08 1992-11-24 Apple Computer, Inc. Power management for a laptop computer with slow and sleep modes
US5230074A (en) * 1991-01-25 1993-07-20 International Business Machines Corporation Battery operated computer power management system
GB2264794B (en) * 1992-03-06 1995-09-20 Intel Corp Method and apparatus for automatic power management in a high integration floppy disk controller
US5392437A (en) * 1992-11-06 1995-02-21 Intel Corporation Method and apparatus for independently stopping and restarting functional units
EP0597601A1 (en) * 1992-11-13 1994-05-18 National Semiconductor Corporation Reflexively sizing memory bus interface
US5603037A (en) * 1993-04-23 1997-02-11 Intel Corporation Clock disable circuit for translation buffer
US5420808A (en) * 1993-05-13 1995-05-30 International Business Machines Corporation Circuitry and method for reducing power consumption within an electronic circuit
US5471625A (en) * 1993-09-27 1995-11-28 Motorola, Inc. Method and apparatus for entering a low-power mode and controlling an external bus of a data processing system during low-power mode

Cited By (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002543486A (ja) * 1999-04-26 2002-12-17 メディアキュー, インコーポレイテッド 集積デバイスを低電力状態からパワーアップする方法および装置
JP4843144B2 (ja) * 1999-04-26 2011-12-21 エヌヴィディア コーポレイション 集積デバイスを低電力状態からパワーアップする方法および装置
JP2003523563A (ja) * 1999-12-23 2003-08-05 インテル・コーポレーション ディジタル・パワー・スロットルを備えたマイクロプロセッサ
JP2012198922A (ja) * 1999-12-23 2012-10-18 Intel Corp ディジタル・パワー・スロットルを備えたマイクロプロセッサ
KR20020018060A (ko) * 2000-08-29 2002-03-07 이데이 노부유끼 전자 기기 및 그것을 사용하는 외부 기기
JP2003109382A (ja) * 2001-09-28 2003-04-11 Mitsubishi Electric Corp 半導体集積回路装置
US8762923B2 (en) 2003-05-07 2014-06-24 Conversant Intellectual Property Management Inc. Power managers for an integrated circuit
JP2009277252A (ja) * 2003-05-07 2009-11-26 Mosaid Technologies Corp 電力の島を使用した集積回路での電力の管理
US8782590B2 (en) 2003-05-07 2014-07-15 Conversant Intellectual Property Management Inc. Power managers for an integrated circuit
JP2009049887A (ja) * 2007-08-22 2009-03-05 Nippon Telegr & Teleph Corp <Ntt> パケット処理装置、方法、およびプログラム
JP2012520505A (ja) * 2009-03-10 2012-09-06 コルティナ・システムズ・インコーポレイテッド データインターフェース電力消費制御
US9075607B2 (en) 2009-03-10 2015-07-07 Cortina Systems, Inc. Data interface power consumption control
US9746906B2 (en) 2009-03-10 2017-08-29 Inphi Corporation Data interface power consumption control
JP2010257445A (ja) * 2009-04-14 2010-11-11 Technology Currents Llc ハードウェアカスタマイゼーション及びエネルギー最適化のためのプログラム及びデータアノテーション
US9104435B2 (en) 2009-04-14 2015-08-11 Empire Technology Development Llc Program and data annotation for hardware customization and energy optimization
US10331191B2 (en) 2009-04-14 2019-06-25 Empire Technology Development, Llc Program and data annotation for hardware customization and energy optimization
JP2012234346A (ja) * 2011-04-28 2012-11-29 Fujitsu Frontech Ltd 最大消費電力軽減装置
JP2013101605A (ja) * 2011-10-31 2013-05-23 Apple Inc プロセッサインストラクションの発行の絞り込み
JP2014059761A (ja) * 2012-09-18 2014-04-03 Fujitsu Ltd 半導体集積回路及びコンパイラ

Also Published As

Publication number Publication date
JP3734888B2 (ja) 2006-01-11
US5996083A (en) 1999-11-30

Similar Documents

Publication Publication Date Title
JP3734888B2 (ja) 電力管理機能を備えたマイクロプロセッサ
US6021501A (en) Clock enable/disable circuit of power management system
US6118306A (en) Changing clock frequency
US5935253A (en) Method and apparatus for powering down an integrated circuit having a core that operates at a speed greater than the bus frequency
US8051315B2 (en) Power throttling apparatus
US5539681A (en) Circuitry and method for reducing power consumption within an electronic circuit
US6910141B2 (en) Pipelined data processor with signal-initiated power management control
US5630143A (en) Microprocessor with externally controllable power management
US7076681B2 (en) Processor with demand-driven clock throttling power reduction
US7181188B2 (en) Method and apparatus for entering a low power mode
Gary et al. PowerPC 603, a microprocessor for portable computers
JP2004334872A (ja) ユニット電力調整機構を備えた集積回路装置
US6496888B1 (en) Incorporation of bus ratio strap options in chipset logic
US6035315A (en) Floating point power conservation
US5784627A (en) Integrated timer for power management and watchdog functions
EP1237066B1 (en) Microprocessor with hardware controlled power management and selectable input/output control pins and method therfor
JP2007521538A (ja) 要求駆動型クロック・スロットリング電力低減を用いるプロセッサ
KR101896494B1 (ko) 컴퓨팅 디바이스들에서의 전력 관리

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050623

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050628

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050916

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: 20051018

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20051020

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20091028

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20091028

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20101028

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20111028

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20121028

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20121028

Year of fee payment: 7

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

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

Free format text: PAYMENT UNTIL: 20121028

Year of fee payment: 7

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

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

Free format text: PAYMENT UNTIL: 20121028

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20131028

Year of fee payment: 8

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term