JP2000322403A - 電力削減のための複数の等価機能ユニットの制御 - Google Patents

電力削減のための複数の等価機能ユニットの制御

Info

Publication number
JP2000322403A
JP2000322403A JP2000073256A JP2000073256A JP2000322403A JP 2000322403 A JP2000322403 A JP 2000322403A JP 2000073256 A JP2000073256 A JP 2000073256A JP 2000073256 A JP2000073256 A JP 2000073256A JP 2000322403 A JP2000322403 A JP 2000322403A
Authority
JP
Japan
Prior art keywords
circuit
speed
function
pipeline
processing
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
JP2000073256A
Other languages
English (en)
Other versions
JP4129345B2 (ja
Inventor
A Deen Alvar
アルヴァー・エイ・ディーン
J Goodnow Kenis
ケニス・ジェイ・グッドナウ
E Perry Patrick
パトリック・イー・ペリー
Sebastian T Ventrone
セバスティアン・ティー・ヴェントローネ
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.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2000322403A publication Critical patent/JP2000322403A/ja
Application granted granted Critical
Publication of JP4129345B2 publication Critical patent/JP4129345B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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/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/3293Power saving characterised by the action undertaken by switching to a less power-consuming processor, e.g. sub-CPU
    • 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)
  • Advance Control (AREA)
  • Microcomputers (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

(57)【要約】 【課題】 機能ユニットの選択を制御する機構を含む、
電力削減のための複数の等価機能ユニットを備えたプロ
セッサを提供する。 【解決手段】 プロセッサは、所定の機能を第1の速度
で実行する第1の回路と、同じ所定の機能を第2の速度
で実行する第2の回路と、その機能を実行するために第
1と第2の回路のどちらかを選択する制御システムとを
含む。制御システムはさらに、第1または第2の回路が
所定の機能を実行していた速度を補償するために、パイ
プライン内のプロセッサ命令の実行速度を制御する機構
を含む。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、一般に、集積回路
の分野に関し、より詳細には、電力削減のため複数の等
価機能ユニットを含むことができるマイクロプロセッサ
などの集積回路に関する。
【0002】
【従来の技術】最新の集積回路の設計において、電池の
電力を利用する応用例がより長い期間動作できるよう
に、消費電力を削減する要件がますます強くなってい
る。たとえば、セルラー・フォン、パーソナル・デジタ
ル・アシスタント、ラップ・トップはすべて、集積回路
を利用する電池ベースのシステムの例である。そのよう
なシステムにおける電力の主な消費装置は、可能な限り
高い速度と性能を提供するように設計されたマイクロプ
ロセッサである。残念ながら、概して、マイクロプロセ
ッサの速度は、電力消費量に比例する。したがって、多
くのシステムは、高い性能を必要としない期間電力消費
を少なくするために、マイクロプロセッサのクロック速
度を遅くする機構を含む。他の類似の機構は、マイクロ
プロセッサを、少ない電力を利用する「スリープ・モー
ド」にするが、ウェイクアップさせてからでなければ動
作を続行することができない。
【0003】そのようなシステムでは、マイクロプロセ
ッサがその動作を実行し続けなければならないことがあ
るが、必ずしも最高性能の期間中に必要とされるものと
同じ速度(すなわち、電力量)である必要のないことが
分かっている。したがって、「スリープ・モード」と正
常な高速動作の間にある動作モードで、システムの要件
が十分に満たされるはずである。たとえば、パーソナル
・デジタル・アシスタントは、キーボードや画面からの
入力を受けるまで、その最高能力で動作する必要がな
い。前述のように、中央処理装置(CPU)の電力のこ
のような削減を達成する現在の方法は、プロセッサ・ユ
ニットに対するクロックを遅くすることによるものであ
る。相補型金属酸化膜半導体(CMOS)の設計は、速
度と電力との間に線形関係がある。したがって、クロッ
ク速度が低下すると電力消費が減少する。しかし、最も
重要な機能ユニット(たとえば、乗算器回路)に対する
クロック速度を低下させると、動作を完了するために必
要なエネルギーの総量は減らず、エネルギーが消費され
る期間が延長されるだけである。したがって、同じ量の
エネルギーが、単により長い期間にわたって使用される
ことになる。したがって、クロック速度の低下は、マイ
クロプロセッサが必要とする全電力消費の削減を必ずし
も保証しない。
【0004】電力消費が、回路内のワイヤまたはネット
のトグリング(toggling)の量に直接関係することが分
かっている。ワイヤが、低電圧レベルと高電圧レベルと
の間でトグルするたびに、一定量の電力が消費される。
ほとんどの高速機能回路では、設計の重点は、電力消費
ではなく速度に置かれる。高速機能回路を実装するため
には、多数の並列動作を同時に実装する必要がある。し
たがって、高速機能動作を実行すると、きわめて短時間
に多数のトグリングが行われ、多量の電力が消費され
る。さらに、そのような動作は、個々の計算の完了に異
なる長さの時間を必要とする多数の並列プロセスを利用
するので、並列処理動作の出力ノードは、最終結果(す
なわち、安定状態)に達するまでに何度もトグルするこ
とがある。その一例を、図3に示すが、この図では、高
速乗算回路の出力信号33を示す。参照番号60におい
て、出力信号33が定常状態に達するまでに何度もトグ
ルすることが分かる。機能的には、クロック・サイクル
62の終了前に定常状態に達する限りトグリングに問題
はない。残念ながら、ほとんどの高速回路で特徴となる
不要なトグリング60は、電力を消費し、したがってシ
ステムの電池を消耗させる。
【0005】
【発明が解決しようとする課題】したがって、クロック
をその最低周波数まで下げた後でも、電力を削減するた
めの解決策が必要である。低電力性能を提供できるプロ
セッサがなければ、電池駆動の応用例を完全に活用する
ことができない。
【0006】
【課題を解決するための手段】本発明は、マイクロプロ
セッサの性能を維持しながらその電力消費を削減するシ
ステムを提供する。本発明は、プロセッサ内の任意の所
与の機能に関して、第2の等価な機能を実装できるよう
にする。電力消費を削減するために、第2の等価な機能
を、より低速でエネルギー消費の少ない回路で実装する
ことができる。したがって、マイクロプロセッサは、同
じ動作を完了するために第2の等価な機能により多くの
時間が提供されるように設計され、あるいはプロセッサ
内で利用可能なより低速のオプションを使用して必要な
追加サイクルの数を最小限に抑えるように設計される。
したがって、本発明は、ある機能を第1の通常速度で実
行する第1の回路と、同じ機能を第2のより低速度で実
行する第2の回路と、その機能を実行するために第1と
第2の回路のどちらかを選択する制御システムとを備え
る処理システムを含む。
【0007】処理システムはさらに、プロセッサ命令の
実行速度を制御する機構を含む。特に、機能を完了する
のに要する時間の長さは、制御システムがどちらの回路
を選択するかに依存するため、その機能が完了するま
で、プロセッサのパイプライン内の次のプロセッサ命令
の実行を待たなければならないことがある。実行速度の
制御は、パイプラインに対するクロック速度を変化させ
るか、またはパイプラインを制御機構に調べさせて機能
が完了したかどうかを判定することによって達成するこ
とができる。最後に、通常速度の回路と機能的に等価な
より低速の回路のどちらを選択するかの判断は、命令ス
トリーム内の命令コードまたは外部信号によって制御す
ることができる。
【0008】
【発明の実施の形態】次に図を参照すると、図1は、様
々な等価な機能26および28を含むプロセッサ10を
示す。各機能は、組合せ論理回路によって実装できるど
んな機能も含むことができる、特定の動作のためのハー
ドウェア実装を表す。なんらかのプロセスを実装する機
能26のそれぞれごとに、論理的に等価な機能28も含
まれる。たとえば、回路A20は、機能的に等価な対応
する回路A'22を有する。したがって、論理機能回路
Aが何を実行しようと(たとえば、乗算)、回路A'2
2は、同じ論理機能を実行することができる。回路A2
0と回路A'22の違いは、回路A'22は動作が遅く、
したがって必要なエネルギーが少ないことである。同様
に、回路Bは、機能的に等価な対応する回路B'を有
し、回路Cは、機能的に等価な対応する回路C'を有す
る。
【0009】プロセッサ10はさらに、こうした状況下
で適切な回路を選択するための制御機構18を含む。た
とえば、制御機構18は、高速乗算が必要であると判断
し、したがって回路A20にその演算を実行するよう指
示することができる。あるいは、制御機構18は、乗算
が必要であるが、その演算を実行する速度は重要ではな
いことを認識することもできる。この場合、制御機構1
8は、回路A'22を選択することになる。信号経路3
2を介して送られる外部信号24によって、あるいは信
号経路30を介して送られるパイプライン12内の命令
から、通常回路とその低電力等価回路のどちらを利用す
るかを制御機構18に指示することができる。さらに、
制御機構に高電力回路か低電力回路を選択させるため
に、ソフトウェア、外部信号、電池監視装置などの他の
どんなシステムも利用できることを理解されたい。
【0010】従来のプロセッサ動作にしたがって、プロ
セッサ命令が、パイプライン12にロードされ、次に実
行のためにディスパッチされる。各命令は、機能回路を
実装するためにプロセッサを必要とすることがあり、そ
のとき、制御機構18は、通常電力回路、高電力回路2
6、または低電力回路28の選択肢のどれを選択するか
を決定することができる。制御機構18が低電力回路2
8を選択する場合、低電力回路がその動作を完了するこ
とを保証するようにパイプライン内の次の命令の実行速
度を変更しなければならない。図1は、パイプライン内
での命令の実行速度を、そのような変更を達成するよう
に制御する可能な2つの方法を示す。第1の方法は、パ
イプライン12のクロック速度を遅くするクロック制御
機構14を組み込むものである。パイプライン12のク
ロック速度を遅くすることによって、低速の機能は、そ
の機能に関連する指定のクロック・サイクル数よりも前
にまたはその範囲内でその動作を完了させる時間がある
ことになる。これを達成するには、制御機構18は、低
速の機能を実行し続いてパイプライン12を制御するク
ロック信号に必要な調整を加えるのに必要な時間の量を
分析しなければならない。これは、それぞれの機能に必
要な時間調整の量を決定するルックアップ・テーブルを
使って達成することができる。
【0011】パイプライン12内の命令の実行速度を制
御する第2の方法は、より低速な回路がそのタスクを完
了するまで命令の次のディスパッチを本質的に遅延させ
るパイプライン・ストール機構16を利用するものであ
る。この実装では、より低速の機能が完了するまで、パ
イプライン・ストール機構16が、制御機構18と通信
することが必要となることがある。これは、結果が正し
くなるまで、パイプライン・ストール機構16に待機信
号を制御機構18にアサートさせることによって達成す
ることができる。完了した後、パイプライン・ストール
機構16は、パイプラインを再開させ、正常な処理を続
行する。この実装では、プロセッサの現行速度を使用し
て、より低速の回路が使用されている間にストール時間
をどれだけパイプラインに追加しなければならないかを
決定することができる。これは、機能を完了するのに必
要な時間と、クロックが動作する速度とを調べるアルゴ
リズムによって達成することができる。たとえば、クロ
ック周期が10ナノ秒で、機能が完了するのに15ナノ
秒かかる場合、必要な結果を保証するストール時間は2
0ナノ秒となる。
【0012】パイプライン12を制御する追加の方法
は、プロセッサ10によって実行されているソフトウェ
ア内の命令を利用して後続の動作を遅延させることであ
る。この制御を実装するために、コンパイラを使用し
て、適切なソフトウェアの命令コードおよびパディング
(たとえば、ストールやノーオペレーション命令)によ
り別々の「低速機能ルーチン」を生成することができ
る。さらにこの手法では、適切な動作を保証するために
コンパイラがクロック速度を完全に制御する命令を生成
することが必要となることがある。本発明はまた、それ
ぞれ同じ機能を実行することができる複数の実行ユニッ
トを含む、Pentium(登録商標)プロセッサなど
のスーパー・スカラー・アーキテクチャ上で実装するこ
ともできる。したがって、低速でより安価な実行ユニッ
トと高速でより高価な実行ユニットを利用することがで
きる。このような実装において、プロセッサは、低電力
の機能に動作をディスパッチし、次いで他の無関係の動
作をディスパッチするか、または新しい命令コードをデ
ィスパッチしないことによって、時間の増加を補償する
ことができる。
【0013】次に、図2を参照すると、低電力乗算回路
40と高電力乗算回路42の特定の実装が示してある。
この例によれば、データ入力信号31が、別々の2つの
ラッチ36および38に供給される。乗算機能が必要な
とき、デコード機構34が、ラッチ36とラッチ38の
どちらかを介してデータ入力31を適切な回路にラッチ
させる適切な信号を提供する。どちらの回路を使用する
かの制御は、適切な回路をイネーブルする働きをする保
持信号35および37によって達成することができる。
この例では、高速かつ高電力の乗算回路42が必要とさ
れる場合は、ラッチ38がイネーブルされる。あるい
は、低電力かつ低速の乗算回路40でよい場合は、ラッ
チ36がイネーブルされる。それぞれの回路がその動作
を完了した後、結果として生じたデータが、データ出力
信号33としてラッチ44からラッチアウトされる。加
算器、比較器、デコーダ、ルックアップ・テーブルなど
の追加の機能46も、同様にして実装することができ
る。
【0014】次に、図3を参照すると、より低速の乗算
回路に対応するようにパイプライン12に対するクロッ
ク信号を変化させた場合に、高速乗算回路と低速乗算回
路がどのような影響を受けるかを示すタイミング図が示
してある。高速乗算回路が動作可能な場合、動作を駆動
するために高速のクロック信号52が使用されることに
なる。そのような場合、データ入力信号31が、時間t
0に高速回路にラッチされる。次いで、高速乗算回路
が、それぞれのクロック・サイクル62の終りの時間t
1までに、その結果を迅速に計算し、データ出力信号3
3を提供することが必要となる。あるいは、低速乗算回
路を実装するために、低速クロック信号50が使用さ
れ、データ入力信号31が、高速乗算クロック信号52
と同じ時間t 0にシステムにラッチされる。しかし、こ
の場合、低速の乗算回路は、計算を行ってデータ出力信
号33'を生成するために、時間t2で終わるより長いク
ロック・サイクル64を与えられる。したがって、パイ
プラインに対するロック信号を変化させることによっ
て、低速機能は、パイプラインの動作をひどく妨害する
ことなく、その機能を実装するためにより多くの時間が
与えられる。
【0015】前述のように、高速クロック信号52が維
持されるが、より低速の機能には、その機能を完了する
ために追加のクロック・サイクルが与えられる、システ
ムを実装することも可能である。図3に示したケースで
は、低速乗算ユニットは、データ出力信号33'を出力
するために、2つのクロックサイクル(t0〜t2)を与
えられる。そのようなストール機構を実装するどんな手
段も本発明の一部として企図される。たとえば、前述の
ように、パイプラインは、次の命令をディスパッチする
前に低速機能が完了したかどうかを検索するシステムを
含むことができる。これは、たとえば、所与の機能の最
悪の場合の動作時間を反映する遅延連鎖を用いて達成す
ることができる。そのような場合、遅延連鎖は、信号が
端まで伝播したときに「1」を出力し、それにより所与
の機能の最悪の場合のタイミング・シナリオを提供する
ことができる。あるいは、各低速機能に必要なクロック
・サイクル数を、システムにハードワイヤし、それによ
って、それぞれの低速機能に、その処理を完了するため
に所定の長さの時間を与えることもできる。
【0016】まとめとして、本発明の構成に関して以下
の事項を開示する。
【0017】(1)処理手段と、前記処理手段の制御の
もとに所定の機能をそれぞれ別々に実行することがで
き、それぞれ異なる処理速度で動作し、それぞれ前記機
能の実行に異なる量のエネルギーを必要とする、複数の
回路とを含み、前記処理手段が、前記機能を実行するた
めに前記複数の回路のうちの1つだけを選択する、処理
システム。 (2)パイプラインをさらに含み、前記パイプライン
が、選択された回路の処理速度に依存する速度で動作す
る、上記(1)に記載の処理システム。 (3)パイプラインと、選択された回路が前記機能の実
行を完了するまで前記パイプラインをストールする手段
とをさらに含む、上記(1)に記載の処理システム。 (4)前記複数の回路のうちの1つの前記選択が、前記
処理手段にロードされた命令コードによって決定され
る、上記(1)に記載の処理システム。 (5)前記複数の回路のうちの1つの前記選択が、処理
システムに入力される外部信号によって決定される、上
記(1)に記載の処理システム。 (6)ある機能を第1の速度で実行する第1の回路と、
前記機能を第2の速度で実行する第2の回路と、前記機
能を実行するために第1と第2の回路のどちらかを選択
する制御システムとを含むマイクロプロセッサ。 (7)プロセッサ命令を保持するパイプラインと、前記
プロセッサ命令の実行速度を制御する機構とを含み、前
記プロセッサ命令の前記実行速度が、制御システムが第
1と第2の回路のどちらを選択したかに依存する、上記
(6)に記載のマイクロプロセッサ。 (8)前記プロセッサ命令の実行速度を制御する前記機
構が、パイプラインのクロック速度を変更する機構を含
む、上記(7)に記載のマイクロプロセッサ。 (9)前記プロセッサ命令の実行速度を制御する前記機
構が、前記機能の実行が完了するまで前記パイプライン
の動作をストールする機構を含む、上記(7)に記載の
マイクロプロセッサ。 (10)第1の回路が、通常の高速度で機能を実行する
デフォルト回路であり、第2の回路が、より低速度で機
能を実行しより少ない電力を必要とする低電力回路であ
る、上記(6)に記載のマイクロプロセッサ。 (11)制御システムが、所定の命令コードが検出され
たとき、第2の回路を使用して機能を実行させる、上記
(10)に記載のマイクロプロセッサ。 (12)制御システムが、外部信号が検出されたとき、
第2の回路を使用して機能を実行させる、上記(10)
に記載のマイクロプロセッサ。 (13)プロセッサ命令を保持しディスパッチするパイ
プライン手段と、第1の量のエネルギーを使用して所定
の機能を実行する第1の回路手段と、第1の量よりも少
ない第2の量のエネルギーを使用して所定の機能を実行
する第2の回路手段と、所定のプロセッサ命令がパイプ
ライン手段からディスパッチされたとき、所定の機能を
実行するために第1と第2の回路手段のどちらかを選択
する制御手段とを含む処理システム。 (14)パイプライン手段の処理速度を変更する手段を
さらに含み、処理速度を変更する手段が、制御手段によ
って選択された回路に依存する、上記(13)に記載の
処理システム。 (15)処理速度を変更する手段が、パイプライン手段
を駆動するクロック速度を変更する手段を含む、上記
(14)に記載の処理システム。 (16)処理速度を変更する手段が、所定の機能が完全
に実行されるまでパイプライン手段をストールする手段
を含む、上記(14)に記載の処理システム。
【図面の簡単な説明】
【図1】本発明の好ましい実施形態による機能的に等価
な回路を備えたプロセッサを示す図である。
【図2】本発明の好ましい実施形態による機能的に等価
な2つの回路の実装の例を示す図である。
【図3】パイプラインに対するクロック制御を変化させ
ることによって好ましい実施形態をどのように実装でき
るかを詳細に示すタイミング図である。
【符号の説明】
10 プロセッサ 12 パイプライン 14 クロック制御機構 16 パイプライン・ストール機構 18 制御機構 24 外部信号 26 高電力回路 28 低電力回路 30 信号経路 31 データ入力信号 32 信号経路 33 データ出力信号 34 デコード機構 35 保持信号 36 ラッチ 37 保持信号 38 ラッチ 40 低電力乗算回路 42 高電力乗算回路 44 ラッチ 50 低速クロック信号 52 高速クロック信号 62 クロックサイクル 64 クロックサイクル
───────────────────────────────────────────────────── フロントページの続き (72)発明者 アルヴァー・エイ・ディーン アメリカ合衆国05452 バーモント州エセ ックス・ジャンクション アスペン・ドラ イブ 28 (72)発明者 ケニス・ジェイ・グッドナウ アメリカ合衆国05452 バーモント州エセ ックス・ジャンクション ルスティック・ ドライブ 8 (72)発明者 パトリック・イー・ペリー アメリカ合衆国05452 バーモント州エセ ックス・ジャンクション プレザント・ス トリート 36 (72)発明者 セバスティアン・ティー・ヴェントローネ アメリカ合衆国05403 バーモント州サウ ス・バーリントン バトラー・ドライブ 38

Claims (16)

    【特許請求の範囲】
  1. 【請求項1】処理手段と、 前記処理手段の制御のもとに所定の機能をそれぞれ別々
    に実行することができ、それぞれ異なる処理速度で動作
    し、それぞれ前記機能の実行に異なる量のエネルギーを
    必要とする、複数の回路とを含み、 前記処理手段が、前記機能を実行するために前記複数の
    回路のうちの1つだけを選択する、処理システム。
  2. 【請求項2】パイプラインをさらに含み、前記パイプラ
    インが、選択された回路の処理速度に依存する速度で動
    作する、請求項1に記載の処理システム。
  3. 【請求項3】パイプラインと、選択された回路が前記機
    能の実行を完了するまで前記パイプラインをストールす
    る手段とをさらに含む、請求項1に記載の処理システ
    ム。
  4. 【請求項4】前記複数の回路のうちの1つの前記選択
    が、前記処理手段にロードされた命令コードによって決
    定される、請求項1に記載の処理システム。
  5. 【請求項5】前記複数の回路のうちの1つの前記選択
    が、処理システムに入力される外部信号によって決定さ
    れる、請求項1に記載の処理システム。
  6. 【請求項6】ある機能を第1の速度で実行する第1の回
    路と、 前記機能を第2の速度で実行する第2の回路と、 前記機能を実行するために第1と第2の回路のどちらか
    を選択する制御システムとを含むマイクロプロセッサ。
  7. 【請求項7】プロセッサ命令を保持するパイプライン
    と、 前記プロセッサ命令の実行速度を制御する機構とを含
    み、前記プロセッサ命令の前記実行速度が、制御システ
    ムが第1と第2の回路のどちらを選択したかに依存す
    る、請求項6に記載のマイクロプロセッサ。
  8. 【請求項8】前記プロセッサ命令の実行速度を制御する
    前記機構が、パイプラインのクロック速度を変更する機
    構を含む、請求項7に記載のマイクロプロセッサ。
  9. 【請求項9】前記プロセッサ命令の実行速度を制御する
    前記機構が、前記機能の実行が完了するまで前記パイプ
    ラインの動作をストールする機構を含む、請求項7に記
    載のマイクロプロセッサ。
  10. 【請求項10】第1の回路が、通常の高速度で機能を実
    行するデフォルト回路であり、第2の回路が、より低速
    度で機能を実行しより少ない電力を必要とする低電力回
    路である、請求項6に記載のマイクロプロセッサ。
  11. 【請求項11】制御システムが、所定の命令コードが検
    出されたとき、第2の回路を使用して機能を実行させ
    る、請求項10に記載のマイクロプロセッサ。
  12. 【請求項12】制御システムが、外部信号が検出された
    とき、第2の回路を使用して機能を実行させる、請求項
    10に記載のマイクロプロセッサ。
  13. 【請求項13】プロセッサ命令を保持しディスパッチす
    るパイプライン手段と、 第1の量のエネルギーを使用して所定の機能を実行する
    第1の回路手段と、 第1の量よりも少ない第2の量のエネルギーを使用して
    所定の機能を実行する第2の回路手段と、 所定のプロセッサ命令がパイプライン手段からディスパ
    ッチされたとき、所定の機能を実行するために第1と第
    2の回路手段のどちらかを選択する制御手段とを含む処
    理システム。
  14. 【請求項14】パイプライン手段の処理速度を変更する
    手段をさらに含み、処理速度を変更する手段が、制御手
    段によって選択された回路に依存する、請求項13に記
    載の処理システム。
  15. 【請求項15】処理速度を変更する手段が、パイプライ
    ン手段を駆動するクロック速度を変更する手段を含む、
    請求項14に記載の処理システム。
  16. 【請求項16】処理速度を変更する手段が、所定の機能
    が完全に実行されるまでパイプライン手段をストールす
    る手段を含む、請求項14に記載の処理システム。
JP2000073256A 1999-03-24 2000-03-16 電力削減のための複数の等価機能ユニットの制御 Expired - Fee Related JP4129345B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/275170 1999-03-24
US09/275,170 US6317840B1 (en) 1999-03-24 1999-03-24 Control of multiple equivalent functional units for power reduction

Publications (2)

Publication Number Publication Date
JP2000322403A true JP2000322403A (ja) 2000-11-24
JP4129345B2 JP4129345B2 (ja) 2008-08-06

Family

ID=23051172

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000073256A Expired - Fee Related JP4129345B2 (ja) 1999-03-24 2000-03-16 電力削減のための複数の等価機能ユニットの制御

Country Status (4)

Country Link
US (1) US6317840B1 (ja)
JP (1) JP4129345B2 (ja)
SG (1) SG90108A1 (ja)
TW (1) TWM252999U (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
US8645954B2 (en) 2001-12-13 2014-02-04 Intel Corporation Computing system capable of reducing power consumption by distributing execution of instruction across multiple processors and method therefore
WO2003090055A1 (en) * 2002-04-19 2003-10-30 International Business Machines Corporation Power control of a processor using hardware structures controlled by a compiler with an accumulated instruction profile
US7366932B2 (en) * 2002-10-30 2008-04-29 Stmicroelectronics, Inc. Method and apparatus to adapt the clock rate of a programmable coprocessor for optimal performance and power dissipation
US7249268B2 (en) * 2004-06-29 2007-07-24 Intel Corporation Method for performing performance optimization operations for a processor having a plurality of processor cores in response to a stall condition
US7373489B1 (en) 2004-06-30 2008-05-13 Sun Microsystems, Inc. Apparatus and method for floating-point exception prediction and recovery
US7401206B2 (en) * 2004-06-30 2008-07-15 Sun Microsystems, Inc. Apparatus and method for fine-grained multithreading in a multipipelined processor core
US7437538B1 (en) * 2004-06-30 2008-10-14 Sun Microsystems, Inc. Apparatus and method for reducing execution latency of floating point operations having special case operands
JP2006059068A (ja) * 2004-08-19 2006-03-02 Matsushita Electric Ind Co Ltd プロセッサ装置
KR101160828B1 (ko) * 2004-12-23 2012-06-29 삼성전자주식회사 표시 장치, 그 구동 방법 및 표시 장치용 구동 장치
US7502948B2 (en) 2004-12-30 2009-03-10 Intel Corporation Method, system, and apparatus for selecting a maximum operation point based on number of active cores and performance level of each of the active cores
JP3866749B2 (ja) * 2005-03-07 2007-01-10 富士通株式会社 マイクロプロセッサ
US8862786B2 (en) * 2009-08-31 2014-10-14 International Business Machines Corporation Program execution with improved power efficiency
US9965279B2 (en) * 2013-11-29 2018-05-08 The Regents Of The University Of Michigan Recording performance metrics to predict future execution of large instruction sequences on either high or low performance execution circuitry
US9870226B2 (en) 2014-07-03 2018-01-16 The Regents Of The University Of Michigan Control of switching between executed mechanisms
GB2539037B (en) 2015-06-05 2020-11-04 Advanced Risc Mach Ltd Apparatus having processing pipeline with first and second execution circuitry, and method

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3700931A (en) * 1971-11-24 1972-10-24 Us Navy Shift register clocking at high speeds where parallel operation is needed
US4238833A (en) * 1979-03-28 1980-12-09 Monolithic Memories, Inc. High-speed digital bus-organized multiplier/divider system
US5128890A (en) 1991-05-06 1992-07-07 Motorola, Inc. Apparatus for performing multiplications with reduced power and a method therefor
JPH05189976A (ja) 1991-09-03 1993-07-30 Seiko Epson Corp 半導体装置及び電子機器
US5493683A (en) 1992-12-29 1996-02-20 Intel Corporation Register for identifying processor characteristics
JPH0795132A (ja) 1993-09-20 1995-04-07 Fujitsu Ltd 冗長系伝送路運用方式
US5774701A (en) * 1995-07-10 1998-06-30 Hitachi, Ltd. Microprocessor operating at high and low clok frequencies
US5694349A (en) * 1996-03-29 1997-12-02 Amati Communications Corp. Low power parallel multiplier for complex numbers
US5862366A (en) * 1996-09-12 1999-01-19 Advanced Micro Devices, Inc. System and method for simulating a multiprocessor environment for testing a multiprocessing interrupt controller
JP2001067865A (ja) * 1999-08-27 2001-03-16 Oki Electric Ind Co Ltd 電源コントロールシステム
JP2001084054A (ja) * 1999-09-10 2001-03-30 Olympus Optical Co Ltd 電子機器

Also Published As

Publication number Publication date
TWM252999U (en) 2004-12-11
JP4129345B2 (ja) 2008-08-06
SG90108A1 (en) 2002-07-23
US6317840B1 (en) 2001-11-13

Similar Documents

Publication Publication Date Title
JP4129345B2 (ja) 電力削減のための複数の等価機能ユニットの制御
US7406588B2 (en) Dynamically reconfigurable stages pipelined datapath with data valid signal controlled multiplexer
JP3845642B2 (ja) ユニット電力調整機構を備えた集積回路装置
US5420808A (en) Circuitry and method for reducing power consumption within an electronic circuit
US6289465B1 (en) System and method for power optimization in parallel units
US5987620A (en) Method and apparatus for a self-timed and self-enabled distributed clock
US6611920B1 (en) Clock distribution system for selectively enabling clock signals to portions of a pipelined circuit
KR100319600B1 (ko) 셀프-타임드시스템의전력소모감소장치및방법
US8806181B1 (en) Dynamic pipeline reconfiguration including changing a number of stages
US5974555A (en) Pipeline processing apparatus having small power consumption
WO2007038532A2 (en) Clock gated pipeline stages
US6906554B1 (en) Pipeline-based circuit with a postponed clock-gating mechanism for reducing power consumption and related driving method thereof
JP2001022582A (ja) 低消費電力マイクロプロセッサおよびマイクロプロセッサシステム
US20030226000A1 (en) Collapsible pipeline structure and method used in a microprocessor
JP2001022582A5 (ja)
US20020104032A1 (en) Method for reducing power consumption using variable frequency clocks
JP4524251B2 (ja) 要求駆動型クロック・スロットリング電力低減を用いるプロセッサ
US9348402B2 (en) Multiple critical paths having different threshold voltages in a single processor core
Lee et al. A low-power implementation of asynchronous 8051 employing adaptive pipeline structure
JP3459821B2 (ja) マイクロプロセッサ
US20040225868A1 (en) An integrated circuit having parallel execution units with differing execution latencies
US6473864B1 (en) Method and system for providing power management to a processing system
JP3906865B2 (ja) 低消費電力マイクロプロセッサおよびマイクロプロセッサシステム
US6459298B1 (en) Structure of controlled pipeline logic
CN1645293A (zh) 电源管理的频率电压装置及频率电压控制的方法

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040210

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20040430

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040430

RD12 Notification of acceptance of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7432

Effective date: 20040430

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20040430

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050210

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050510

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20050510

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20050610

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20060616

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20071015

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20080514

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20080514

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080519

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

Free format text: PAYMENT UNTIL: 20110523

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees