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

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

Info

Publication number
JP4129345B2
JP4129345B2 JP2000073256A JP2000073256A JP4129345B2 JP 4129345 B2 JP4129345 B2 JP 4129345B2 JP 2000073256 A JP2000073256 A JP 2000073256A JP 2000073256 A JP2000073256 A JP 2000073256A JP 4129345 B2 JP4129345 B2 JP 4129345B2
Authority
JP
Japan
Prior art keywords
circuit
function
speed
pipeline
clock
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2000073256A
Other languages
English (en)
Other versions
JP2000322403A (ja
Inventor
アルヴァー・エイ・ディーン
ケニス・ジェイ・グッドナウ
パトリック・イー・ペリー
セバスティアン・ティー・ヴェントローネ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
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

Images

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)

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'22は、同じ論理機能を実行することができる。回路A20と回路A'22の違いは、回路A'22は動作が遅く、したがって必要なエネルギーが少ないことである。同様に、回路Bは、機能的に等価な対応する回路B'を有し、回路Cは、機能的に等価な対応する回路C'を有する。
【0009】
プロセッサ10はさらに、こうした状況下で適切な回路を選択するための制御機構18を含む。たとえば、制御機構18は、高速乗算が必要であると判断し、したがって回路A20にその演算を実行するよう指示することができる。あるいは、制御機構18は、乗算が必要であるが、その演算を実行する速度は重要ではないことを認識することもできる。この場合、制御機構18は、回路A'22を選択することになる。信号経路32を介して送られる外部信号24によって、あるいは信号経路30を介して送られるパイプライン12内の命令から、通常回路とその低電力等価回路のどちらを利用するかを制御機構18に指示することができる。さらに、制御機構に高電力回路か低電力回路を選択させるために、ソフトウェア、外部信号、電池監視装置などの他のどんなシステムも利用できることを理解されたい。
【0010】
従来のプロセッサ動作にしたがって、プロセッサ命令が、パイプライン12にロードされ、次に実行のためにディスパッチされる。各命令は、機能回路を実装するためにプロセッサを必要とすることがあり、そのとき、制御機構18は、通常電力回路、高電力回路26、または低電力回路28の選択肢のどれを選択するかを決定することができる。制御機構18が低電力回路28を選択する場合、低電力回路がその動作を完了することを保証するようにパイプライン内の次の命令の実行速度を変更しなければならない。図1は、パイプライン内での命令の実行速度を、そのような変更を達成するように制御する可能な2つの方法を示す。第1の方法は、パイプライン12のクロック速度を遅くするクロック制御機構14を組み込むものである。パイプライン12のクロック速度を遅くすることによって、低速の機能は、その機能に関連する指定のクロック・サイクル数よりも前にまたはその範囲内でその動作を完了させる時間があることになる。これを達成するには、制御機構18は、低速の機能を実行し続いてパイプライン12を制御するクロック信号に必要な調整を加えるのに必要な時間の量を分析しなければならない。これは、それぞれの機能に必要な時間調整の量を決定するルックアップ・テーブルを使って達成することができる。
【0011】
パイプライン12内の命令の実行速度を制御する第2の方法は、より低速な回路がそのタスクを完了するまで命令の次のディスパッチを本質的に遅延させるパイプライン・ストール機構16を利用するものである。この実装では、より低速の機能が完了するまで、パイプライン・ストール機構16が、制御機構18と通信することが必要となることがある。これは、結果が正しくなるまで、パイプライン・ストール機構16に待機信号を制御機構18にアサートさせることによって達成することができる。完了した後、パイプライン・ストール機構16は、パイプラインを再開させ、正常な処理を続行する。この実装では、プロセッサの現行速度を使用して、より低速の回路が使用されている間にストール時間をどれだけパイプラインに追加しなければならないかを決定することができる。これは、機能を完了するのに必要な時間と、クロックが動作する速度とを調べるアルゴリズムによって達成することができる。たとえば、クロック周期が10ナノ秒で、機能が完了するのに15ナノ秒かかる場合、必要な結果を保証するストール時間は20ナノ秒となる。
【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が、時間t0に高速回路にラッチされる。次いで、高速乗算回路が、それぞれのクロック・サイクル62の終りの時間t1までに、その結果を迅速に計算し、データ出力信号33を提供することが必要となる。あるいは、低速乗算回路を実装するために、低速クロック信号50が使用され、データ入力信号31が、高速乗算クロック信号52と同じ時間t0にシステムにラッチされる。しかし、この場合、低速の乗算回路は、計算を行ってデータ出力信号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 クロックサイクル

Claims (4)

  1. プロセッサ命令を実行するパイプラインと、
    ある機能を第1の速度で実行する第1の回路と、
    前記機能を、前記第1の速度よりも遅い第2の速度で実行する第2の回路と、
    前記機能を実行するために第1と第2の回路のどちらかを選択する制御システムと、
    制御システムが第1と第2の回路のどちらを選択したかに依存して、前記パイプラインのクロック速度を変更する機構と、
    を含むマイクロプロセッサ。
  2. 第1の回路が、通常の高速度で機能を実行するデフォルト回路であり、第2の回路が、より低速度で機能を実行しより少ない電力を必要とする低電力回路である、請求項記載のマイクロプロセッサ。
  3. 制御システムが、所定の命令コードが検出されたとき、第2の回路を使用して機能を実行させる、請求項1または2記載のマイクロプロセッサ。
  4. パイプラインのクロック速度を変更する前記機構が、前記機能に必要な時間調整の量を決定するルックアップ・テーブルを含む、請求項1〜3のいずれか1項記載のマイクロプロセッサ。
JP2000073256A 1999-03-24 2000-03-16 電力削減のための複数の等価機能ユニットの制御 Expired - Fee Related JP4129345B2 (ja)

Applications Claiming Priority (2)

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

Publications (2)

Publication Number Publication Date
JP2000322403A JP2000322403A (ja) 2000-11-24
JP4129345B2 true 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
CN1625727A (zh) * 2002-04-19 2005-06-08 国际商业机器公司 采用由具有累加指令配置的编译器控制的硬件结构的处理器的功率控制
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
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
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
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
US6317840B1 (en) 2001-11-13
TWM252999U (en) 2004-12-11
SG90108A1 (en) 2002-07-23
JP2000322403A (ja) 2000-11-24

Similar Documents

Publication Publication Date Title
JP4129345B2 (ja) 電力削減のための複数の等価機能ユニットの制御
JP3845642B2 (ja) ユニット電力調整機構を備えた集積回路装置
US7406588B2 (en) Dynamically reconfigurable stages pipelined datapath with data valid signal controlled multiplexer
US7013406B2 (en) Method and apparatus to dynamically change an operating frequency and operating voltage of an electronic device
US5420808A (en) Circuitry and method for reducing power consumption within an electronic circuit
US7076681B2 (en) Processor with demand-driven clock throttling power reduction
US6457131B2 (en) System and method for power optimization in parallel units
US8806181B1 (en) Dynamic pipeline reconfiguration including changing a number of stages
US20140304572A1 (en) Ultra low-power pipelined processor
JP2001022582A (ja) 低消費電力マイクロプロセッサおよびマイクロプロセッサシステム
US20030226000A1 (en) Collapsible pipeline structure and method used in a microprocessor
JP2001022582A5 (ja)
JP2003218680A (ja) 高速に電源スイッチのオンオフが可能な論理回路
US9348402B2 (en) Multiple critical paths having different threshold voltages in a single processor core
JP4524251B2 (ja) 要求駆動型クロック・スロットリング電力低減を用いるプロセッサ
JP4152795B2 (ja) マイクロコントローラ
US20030084353A1 (en) System and method for predictive power ramping
Lee et al. A low-power implementation of asynchronous 8051 employing adaptive pipeline structure
JP3459821B2 (ja) マイクロプロセッサ
Efthymiou et al. A comparative power analysis of an asynchronous processor
US6473864B1 (en) Method and system for providing power management to a processing system
JP2005523499A (ja) 多重命令発行プロセッサ
JPH08101820A (ja) マイクロプロセッサ
WO2006016451A1 (ja) 演算パイプライン、演算パイプラインによる処理方法、半導体装置、コンピュータプログラム
Liu et al. Power-efficient asynchronous design

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