JP2001022582A - 低消費電力マイクロプロセッサおよびマイクロプロセッサシステム - Google Patents

低消費電力マイクロプロセッサおよびマイクロプロセッサシステム

Info

Publication number
JP2001022582A
JP2001022582A JP11195409A JP19540999A JP2001022582A JP 2001022582 A JP2001022582 A JP 2001022582A JP 11195409 A JP11195409 A JP 11195409A JP 19540999 A JP19540999 A JP 19540999A JP 2001022582 A JP2001022582 A JP 2001022582A
Authority
JP
Japan
Prior art keywords
instruction
input
circuit
decoder
processing circuit
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
JP11195409A
Other languages
English (en)
Other versions
JP2001022582A5 (ja
JP3705022B2 (ja
Inventor
Tetsuya Yamada
哲也 山田
Tomoichi Hayashi
伴一 林
Sadashige Nakano
定樹 中野
Masanobu Tsunoda
賢伸 津野田
Osamu Nishii
修 西井
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP19540999A priority Critical patent/JP3705022B2/ja
Priority to US09/603,965 priority patent/US6877087B1/en
Publication of JP2001022582A publication Critical patent/JP2001022582A/ja
Publication of JP2001022582A5 publication Critical patent/JP2001022582A5/ja
Priority to US11/095,685 priority patent/US7178046B2/en
Application granted granted Critical
Publication of JP3705022B2 publication Critical patent/JP3705022B2/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/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • 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/3237Power saving characterised by the action undertaken by disabling clock generation or distribution
    • 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/3243Power saving in microcontroller unit
    • 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
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/44Encoding
    • G06F8/443Optimisation
    • G06F8/4432Reducing the energy consumption
    • 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/30145Instruction analysis, e.g. decoding, instruction word fields
    • 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/30145Instruction analysis, e.g. decoding, instruction word fields
    • G06F9/30156Special purpose encoding of instructions, e.g. Gray coding
    • 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/3017Runtime instruction translation, e.g. macros
    • 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/3877Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor
    • 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
    • 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)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Executing Machine-Instructions (AREA)
  • Advance Control (AREA)
  • Microcomputers (AREA)
  • Power Sources (AREA)

Abstract

(57)【要約】 【課題】浮動小数点演算ユニットを持つプロセッサにお
いて、浮動小数点演算ユニットの無駄な電力消費を削減
する。 【解決手段】命令キャッシュ108から供給される命令
列において、命令無効化回路109で浮動小数点演算ユ
ニットを使用しない命令を無効命令に置き換え、その無
効命令を浮動小数点命令レジスタ111に保持し、浮動
小数点演算ユニット内の浮動小数点デコーダ119に供
給するように構成される。無効命令が連続した場合、浮
動小数点データパス123に加え、浮動小数点デコーダ
119と浮動小数点レジスタ121の消費電力が削減で
きる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、マイクロプロセッ
サに関する。例えば、浮動小数点演算ユニット(FP
U)又はディジタル信号処理プロセッサ(DSP)のよ
うに特定用途の専用回路を有するコプロセッサを有し、
PDAやモバイルコンピュータのような電池駆動の携帯
用電子機器において使用される低消費電力型マイクロプ
ロセッサに適用して有用な技術に関する。更には、前記
マイクロプロセッサを組み込んだマイクロプロセッサに
適用して有用な技術に関する。
【0002】
【従来の技術】携帯用電子機器に搭載されるマイクロプ
ロセッサは、演算の高速処理に加え、電池駆動において
長時間の使用を可能とするべく低電力化を達成する必要
がある。演算の高速処理を達成するためには、マイクロ
プロセッサに、FPUなどのコプロセッサを設ける技術
などが知られている。
【0003】また、マイクロプロセッサの低電力技術と
しては以下が知られている。
【0004】まず、携帯用電子機器では待機時間が多い
ため、待機時用の低消費電力モードを用意し、待機時に
はマイクロプロセッサを動作させるためのクロック周波
数を下げる方法がある。具体的な構成としては、クロッ
ク周波数を下げるためのクロック分周器を有し、低消費
電力モードが選択された際、マイクロプロセッサに前記
分周器で分周された周波数を供給する。このことによ
り、クロック消費電力及び単位時間あたりのトランジス
タのスイッチングによる電力が削減され、マイクロプロ
セッサの低消費電力化が達成される。
【0005】また、待機時にクロック周波数を下げる方
法とは異なり、使用しないモジュールに供給するクロッ
クを遮断する方法がある。例えば、ユーザーブレークコ
ントローラは、プログラムのデバッグを容易にするため
の回路であるため、通常のプロセッサ動作時には動作し
ていない。ユーザーブレークコントローラなど、通常時
動作しないモジュールに対しては、通常時にクロックを
遮断しても問題は生じない。クロックを遮断すること
は、前述した、供給するクロック周波数を下げる方法に
比べて低電力化の効果が大きい。クロック遮断を行う具
体的な構成としては、クロックの遮断を制御するための
制御レジスタにモジュール単位で使用しないモジュール
を設定しておき、低消費電力を実行するためのクロック
停止命令を実行することにより、前記制御レジスタに設
定されているモジュールのクロックを停止させる。この
方法では、制御レジスタに設定されたモジュールの消費
電力が0となる。制御レジスタに設定されたモジュール
を使用する際は、割り込みにより所定のモジュールを復
帰させ、クロックの供給を再開させる。しかし、モジュ
ール毎にクロックの供給や遮断を行う方法は、制御レジ
スタに値を設定するなどのオーバーヘッドが大きくな
り、モジュールの実行又は停止が頻繁に切り替わるモジ
ュールには対しては適さない。特開平8−101820
号では、オペレーションを行う部分であるデータパスの
電力削減のために、データパスでオペレーションが行わ
れない場合、データパス部の内部回路の動作を停止させ
る制御信号NOP(No operation)信号を
生成する方式が示されている。命令をデコードし、デコ
ードの結果、データパス部でオペレーションが行われな
い命令であった場合、1ビットのNOP信号CC=1を
出力する。NOP信号CC=1のとき、データパス制御
信号用のラッチを更新しないようにし、制御信号を不変
とする。また、データパスの入出力ラッチを更新しない
ようにし、入出力データを固定とする。このとき、入力
データと制御信号が変化しないので、データパス部でス
イッチングを行わないため低消費電力化が可能となる。
【0006】
【発明が解決しようとする課題】上記に示した、データ
パス部の内部回路の動作を停止させる制御信号NOP信
号を生成する方式は、以下の問題点を抱えている。
【0007】NOP信号生成方式は、データパスの電力
削減が目的であるため、制御部のデコーダで消費する電
力は削減されない。制御部のデコーダは、命令発行制御
に加え、例外処理、制御信号生成論理等があり、そこで
消費される電力は無視できない。
【0008】更に、電力削減回路は付加回路であること
が望ましい。何故なら、例えば、IP(Intelle
ctual Property)による機能部品をコプ
ロセッサとして使用する場合、組み込むIPとしてのコ
プロセッサの内部に手を加えずに、組み込むIP部位以
外に電力削減用の回路を付加するようにすれば、IP回
路内部を変更する場合に対して検証工数が削減できる。
【0009】そこで、本発明の目的は、デコーダ等の制
御部及びデータパス部の電力を削減し、かつ電力削減の
ための付加回路を設ける構成とすることで、低消費電力
化と構成の容易化を図ったマイクロプロセッサを提供す
ることである。
【0010】本発明の前記並びにその他の目的と新規な
特徴は本明細書の記述及び図面から明らかになるであろ
う。
【0011】
【課題を解決するための手段】上記目的を達成するた
め、本発明の代表的な実施形態のマイクロプロセッサで
は、命令が入力される判定回路と、前記判定回路によっ
て制御される命令選択回路と、前記命令をデコードする
命令デコーダと、前記命令デコーダのデコード結果に従
い演算を行う演算回路とにより構成され、前記命令選択
回路は、前記演算回路に演算を行わせるための命令とは
異なる命令が前記判定回路に入力されたとき、前記命令
デコーダに第1の命令を供給することを特徴とする。こ
れにより、無関係な命令が入力されたとき、デコーダ内
部におけるスイッチング回数が減少し、トランジスタの
スイッチング回数が減少し、トランジスタの貫通電流が
削減され、デコーダでの消費電力が削減される。
【0012】更に、本発明の別の代表的な実施形態のマ
イクロプロセッサでは、命令が入力される判定回路と、
前記判定回路によって制御される命令無効化回路と、前
記命令を受ける命令レジスタと、前記命令レジスタの出
力をデコードする命令デコーダと、前記命令デコーダの
デコード結果に従い演算を行う演算回路とにより構成さ
れ、前記命令無効化回路は、前記演算回路に演算を行わ
せるための命令とは異なる命令が前記判定回路に入力さ
れたとき、前記命令レジスタに供給するクロックを停止
させることを特徴とする。これにより、命令レジスタの
動作が停止し、命令レジスタから命令デコーダへ命令が
出力されない。つまり、上記と同様に、デコーダ内部の
トランジスタの貫通電流が減少し、デコーダでの消費電
力が削減される。
【0013】更に、本発明の他の代表的な実施形態のマ
イクロプロセッサでは、命令が入力される判定回路と、
前記判定回路によって制御される命令無効化回路と、前
記命令を受けるスイッチ回路と、前記スイッチ回路の出
力をデコードする命令デコーダと、前記命令デコーダの
デコード結果に従い演算を行う演算回路とにより構成さ
れ、前記命令無効化回路は、前記演算回路に演算を行わ
せるための命令とは異なる命令が前記判定回路に入力さ
れたとき、前記スイッチ回路を開放し、前記命令デコー
ダに命令を供給することを停止させる特徴とする。これ
により、上記と同様に命令デコーダでの消費電力の削減
が可能となる。
【0014】
【発明の実施の形態】以下、本発明の代表的な実施形態
を図面を用いて説明する。
【0015】図1は、マイクロプロセッサとその周辺の
構成を示している。マイクロプロセッサ101は一つの
半導体基板上に形成されている。マイクロプロセッサは
バスインタフェースユニット(BIU:Bus Int
erface Unit)6を介してデータバス4とア
ドレスバス5とに接続されている。データバス4とアド
レスバス5とは、図ではメインメモリ3に接続されてい
る。データバス及びアドレスバスには、メインメモリ以
外の外部デバイスに接続される構成も可能であるが、本
明細書では省略している。また、半導体装置の集積度の
向上に伴い、データバス、アドレスバス及びメインメモ
リをマイクロプロセッサと同一の基板上に形成しても良
い。
【0016】前記マイクロプロセッサは、前述したBI
U6の他、データキャッシュ7、命令キャッシュ8、中
央処理装置(CPU:Central Process
ing Unit)1、浮動小数点演算ユニット(FP
U:Floating Point Unit)2及びク
ロックパルスジェネレータ(CPG:ClockPul
se Generator)18とを有する。マイクロ
プロセッサは、前記以外に、メモリを制御するためのD
MAC(Direct Memory Access
Controler)等を有することも可能であるが、
本明細書及び図面では省略している。
【0017】マイクロプロセッサ内に形成されているF
PUは、浮動小数点の演算を集中的に処理するためのコ
プロセッサである。但し、マイクロプロセッサ内に形成
されるコプロセッサは、FPUに制限されることはな
く、FPU以外、DSP等のように、CPUの処理を補
完するための専用処理回路であればよい。更に、専用処
理回路に限定されることも無く、複数CPUで構成され
たマイクロプロセッサにおけるそれぞれのCPUであっ
てもよい。本明細書では、複数のCPUで構成されたマ
イクロプロセッサにおけるCPUについても、本発明の
趣旨を逸脱しない範囲で、コプロセッサと称することと
する。また、図1では、CPUとコプロセッサであるF
PUとは同一の半導体基板上に形成されていることにな
っているが、コプロセッサを別チップで構成することも
可能である。コプロセッサを別チップで構成した場合、
チップが複数となり実装効率は低下するが、CPUと同
一基板上にコプロセッサを形成するための半導体装置の
設計の必要が無く、既存のコプロセッサチップをCPU
に接続することが可能となり生産が容易となる。本明細
書では、便宜上、コプロセッサを別チップとした場合で
も、CPUチップとコプロセッサチップとを併せてマイ
クロプロセッサと呼称するものとする。
【0018】メインメモリ3はプログラム及びデータを
格納している。データバス4は、マイクロプロセッサと
メモリ間で行われるデータ転送の経路となる。アドレス
バス5は、マイクロプロセッサとメモリとがデータの転
送を行う際、マイクロプロセッサからメモリ等へ、アド
レスを転送する際の経路となる。BIU6はメインメモ
リや外部デバイスと間のアドレス及びデータ転送の制御
を行う。データキャッシュ7は、マイクロプロセッサ内
のCPU及びFPUで処理される或いは処理されたデー
タを格納する。命令キャッシュ8は、CPU及びFPU
で実行される命令を格納する。CPG18は、CPU及
びFPUの動作クロックを生成する。
【0019】以下、CPU1とFPU2の具体的な構成
について示す。CPUは命令IAを受け取り、命令レジ
スタ10に命令を格納する。FPUも同様に、命令キャ
ッシュから命令IAを受取、命令レジスタ11に命令を
格納する。CPUの命令とFPUの命令とは、同一の命
令キャッシュに記憶されている。命令キャッシュから出
力される命令は、CPU側の命令レジスタとFPU側の
命令レジスタとに並列に供給される。それぞれのレジス
タへと分岐する方法については、分岐手段で行うことが
可能である。単なる半導体基板上の金属やシリコン化合
物で形成された配線をそれぞれ同じ幅で分岐するなどの
方法があるが、特に制限されない。CPU命令レジスタ
10及びFPU命令レジスタ11は、CPG18で生成
されたCLK1の立上がりで変化するエッジトリガラッ
チである。但し、図面で示している如く、命令キャッシ
ュとFPU側の命令レジスタとの間には、本発明の特徴
である無効化回路9が形成されている。無効化回路につ
いては後述する。図面では、命令レジスタ10及び無効
化回路とは命令キャッシュからの命令を受ける構成とな
っているが、特に制限されることなく、直接メインメモ
リから命令を受ける構成でも良い。更には、メインメモ
リ以外から命令を受ける構成であっても良い。また、F
PUの命令レジスタ11はCPU内に形成されている
が、FPU内に形成してもよい。IPとして、FPUを
CPUと同一の半導体基板上に形成する場合、或いは別
チップとしてFPUをCPUに接続する場合において、
組み込むFPUに命令レジスタが形成されているかされ
ていないかによって異なる。また、無効化回路もCPU
側に形成されているが、FPU以外のコプロセッサをC
PUに接続した場合、或いは従前とは異なるFPUを接
続した場合、無効化回路がCPU内にあれば、導入する
FPUの内部回路の変更が不要となり、導入が容易とな
る。一方、FPUを提供することを考えると、提供する
FPUに無効化回路があればCPU側の回路変更が不要
となる。つまり、無効化回路をCPU或いはコプロセッ
サの何れに形成するかは、設計及び顧客との関係等によ
り変更することが可能である。但し、無効化回路とレジ
スタとがFPU内に形成された場合、供給される命令は
CPUを経由しないと言うことも可能だが、その場合に
ついても、本明細書では便宜上、CPUを経由してFP
Uに供給される、と見なす。また、FPUがメモリから
命令を受ける際、無効化回路を通してレジスタ11に命
令がフェッチされる構成となっているが、無効化回路と
レジスタ11の順序は逆であってもよい。但し、命令レ
ジスタの前に無効化回路を設けることで有利な点はある
が、それについては後述する。前述した如く、CPUと
FPUとの何れに無効化回路及びレジスタが形成されて
いるかによってその構成は変更することが可能である。
【0020】CPU命令レジスタ10にフェッチされた
命令はCPU内の整数デコーダ12に送られ、命令のデ
コードが行われる。整数デコーダ12は、整数レジスタ
14のリード/ライト制御信号を出力する。また、整数
デコーダ12の出力制御信号はラッチ手段13でラッチ
され、演算を行うALU16に対して演算処理のための
制御信号として出力される。又、CPUと無関係の命令
例えば、NOP(NoOperation)命令では、
低消費電力のためALUの入力ラッチ15と出力ラッチ
17とが更新されないよう制御される。具体的には、N
OP命令が整数デコーダ12に入力された場合、整数デ
コーダ12は、ALUの入力ラッチ15、出力ラッチ1
7に対し、クロックイネーブル信号“0”(“0”はデ
ィスエーブルの意味)を出力し、クロックを停止するこ
とによりラッチ更新を防ぐ。一方、FPU命令レジスタ
11にフェッチされた命令はCPUモジュールからFP
Uモジュールに送られ、浮動小数点デコーダ19によっ
て命令のデコードが行われる。浮動小数点デコーダ19
は、浮動小数点レジスタ21のリード/ライト制御信号
CAを出力する。浮動小数点データや浮動小数点演算結
果を保持する浮動小数点レジスタ21は、制御信号CA
に従って、データInAがラッチ22に出力され、ラッ
チされる。ラッチ22にラッチされたデータは演算部で
ある浮動小数点データパス23に入力される。また、浮
動小数点デコーダ19より出力される制御信号は、ラッ
チ20にてラッチされ、ラッチ20は浮動小数点データ
パスの制御信号CBを出力する。ラッチ22と20と
は、CPG18によって出力されるCLK2の立上がり
で変化するエッジトリガラッチである。浮動小数点デー
タパス23はラッチ22より出力される浮動小数点演算
のためのデータを入力し、浮動小数点演算の結果として
の出力OAは、ラッチ24にラッチされる。ラッチ24
はCLK1の立上がりで変化するエッジトリガラッチで
ある。ラッチ24の出力OBはレジスタに21入力さ
れ、演算結果がレジスタに書き込まれる。データパス入
力ラッチ22とデータパス出力ラッチ24とはそれぞ
れ、ラッチのイネーブル信号EAまたはEBによってラ
ッチの更新が制御される。ラッチのイネーブル信号E
A、EBは、それぞれ浮動小数点デコーダ、浮動小数点
デコーダラッチ出力から生成される。浮動小数点デコー
ダに入力される命令がNOP命令の場合は、デコードに
より、EA=EB=0を出力し、クロック信号とのAN
Dにより、浮動小数点データパス入出力ラッチへのクロ
ック供給を停止する。NOP命令以外の場合は、EA=
EB=1を出力し、浮動小数点データパス入出力ラッチ
のクロックは供給される。上述した整数デコーダ及び浮
動小数点デコーダは、一般的には命令デコーダと呼ばれ
るデコーダである。命令デコーダとは、一般的には、命
令レジスタからの命令を受け、演算器及び演算器に入力
されたり演算器から出力するデータをラッチするラッチ
回路等の装置を制御するための信号を生成するものであ
る。
【0021】以下、本発明の特徴となる、上述したCP
Uモジュール内の無効化回路9についての説明を行う。
命令キャッシュから読み出される命令は、上述した通
り、CPU命令レジスタ10とにフェッチされると同時
にFPUの命令無効化回路に入力される。その際、CP
Uに対してのみ関係する命令であり、FPUには無関係
の命令が命令キャッシュから読み出された場合、無効化
回路9はFPU命令レジスタに対してNOP命令を出力
する。つまり、FPUに関係のない命令の場合、FPU
命令レジスタにはNOP命令がフェッチされることとな
る。FPUに無関係の命令が連続して命令キャッシュか
ら送られてくる際、FPU命令レジスタには常にNOP
命令がフェッチされる。それにより、FPUモジュール
の浮動小数点デコーダ19は、FPUに無関係の命令が
CPUで処理されている間、連続したNOP命令のデコ
ードのみを行うこととなる。つまり、デコーダでのスイ
ッチング動作が行われないため、スイッチングによる貫
通電流が流れることなく、低消費電力化を達成できる。
【0022】更に、NOP命令では浮動小数点データパ
スの入力ラッチ22と出力ラッチ24が更新されないよ
うラッチのイネーブル信号EA又はEBを用いて制御さ
れるため、NOP命令が連続すると、デコードの制御信
号CAとCBが一定となり、ラッチはスイッチングを行
わない。また、データパスの入出力ラッチが更新されな
いため、データパスの入出力データInBとOBは不変
となる。このとき、入力データと制御信号が変化しない
ので、データパス部でスイッチングを行わず、低消費電
力化が可能となる。
【0023】図2では、図1の命令キャッシュからCP
Uに出力される命令コード列の一例を示している。図示
された命令コード列を用いて浮動小数点命令レジスタに
接続される命令無効化回路の動作を示す。図2の命令コ
ード列では、整数命令(CPU命令)と浮動小数点演算
命令(FPU命令)が混在している。命令キャッシュか
らは図示された如く、CPU命令とFPU命令とが混在
した状態で順次CPUに送られてくる。上述した命令無
効化回路は、命令キャッシュから送られてくる図2に示
している命令コード列の中から、FPUに無関係な命令
を無効NOP命令に置き換える。置き換えられた命令コ
ード列を図3に示している。つまり、図1のCPU命令
レジスタ10には図2に示されている命令コード列が入
力され、図1のFPU命令レジスタ11には図3の命令
コード列が入力されることとなる。図2の命令コード列
の1番目、4番目のFPU命令はそのままFPU命令レ
ジスタに出力され、他のCPU命令は均一なNOP命令
に置き換えられFPU命令レジスタに出力される。
【0024】図4には、入力された命令を処理する命令
無効化回路の具体的な構成例を示す。命令キャッシュか
ら送られてくる命令のそれぞれが図示されている命令コ
ードのフォーマットで記載されているとする。命令コー
ド内の2つの斜線部分のそれぞれが、条件Aと条件Bと
を同時に満たしている場合に、その命令がFPU命令で
あると仮定する。命令無効化回路に命令コード401が
入力された場合、2つの斜線部分が条件A及び条件Bを
満たしているか否かを比較器402、403で比較す
る。比較器出力をANDゲート404により論理和する
ことで、入力された命令コード401がFPU命令であ
るか否かを判定する。条件A及び条件Bとが共に成立し
た時はセレクタ405で命令無効化回路に入力された命
令コード401が選択され、命令無効化回路の出力とし
てFPU命令レジスタに出力される。条件A及び条件B
が成立しない時は、入力された命令がFPUには関係の
無い命令と判断され、命令無効化回路はFPU命令レジ
スタに対してNOP命令を出力する。一方、命令フォー
マットによっては、命令コードの1ビットの参照で、F
PU命令かどうか判定できる場合がある。この場合は図
4の比較器が不要であり、FPU命令であるか否かを示
す1ビットをセレクタの制御信号とすることで、命令無
効化回路が構成できる。命令を処理する無効化回路の構
成については、マイクロプロセッサの命令コードの中
の、FPUを制御する命令の形態によって拘束されるこ
ととなるが、本発明の趣旨を逸脱しない範囲で様々な変
更例が考えられる。
【0025】ところで、本実施形態では、命令無効化回
路が命令キャッシュと命令レジスタとの間に形成されて
いるが、特に制限される訳ではない。例えば、命令無効
化回路を浮動小数点デコーダの中に形成することも可能
である。この場合、図1の無効化回路9は浮動小数点デ
コーダ19の中に形成されることとなる。この場合も無
効化回路は、デコードに先立って、命令コード401の
所定ビットをもとに、デコードに入力された命令がFP
U命令か否かを判断し、入力された命令がFPU命令で
あれば入力された命令をデコードしてFPUでの演算を
行う。一方、所定ビットにより、入力された命令がFP
U命令では無いと判断した場合は、命令デコード手段に
対してNOP命令を出力する。
【0026】図5にタイミングチャートを用いて、図1
の命令無効化回路による浮動小数点演算ユニットの電力
削減機構を示す。命令キャッシュからフェッチされる命
令列は図2と同一とする。まず、浮動小数点命令での動
作を説明する。浮動小数点無効化回路の入力をIA、出
力をIBとする。無効化回路によって、CPU命令はN
OP命令に置き換えられ、FPU命令はそのまま出力さ
れるので、IBは図3と同じ命令列となる。FPU命令
レジスタ11はIBを入力とし、命令コードICを出力
する。ICがFPU1命令のとき(time=3:図5
の3)、浮動小数点デコーダ19は、浮動小数点レジス
タ、浮動小数点データパス回路でFPU1演算を行うよ
うtime=3で制御信号CAとしてFPU1命令用制
御信号fpu_cont1を出力する。制御信号CAが
fpu_cont1のとき、time=3で浮動小数点
レジスタ21から入力データinput1が読み出さ
れ、ラッチ22に出力される。また、浮動小数点データ
パス制御信号CBは、制御信号ラッチ20でラッチされ
た後、FPU1命令用制御信号fpu_cont1が出
力される。浮動小数点のデータパスの入力ラッチ22の
イネーブル信号EA=1と出力ラッチ24のイネーブル
信号EB=1となることから、time=4で入力In
Bがinput1で、浮動小数点データパス回路でFP
U1演算が行なわれ、出力ラッチ24で結果outpu
t1をラッチし、time=5でOBとして出力する。
【0027】次に、FPUにおけるCPU命令での動作
を説明する。浮動小数点無効化回路の入力をIA、出力
をIBとすると、図3と同様にIBではCPU命令がN
OP命令に置き換わる。浮動小数点命令レジスタ11は
IBを入力とし、命令コードICを出力する。ICがN
OP命令のとき(time=5)、浮動小数点デコーダ
19は制御信号CAとして、演算を行なわない制御信号
cont_NOPをtime=5で出力する。制御信号
CAにより浮動小数点レジスタファイル21からInA
が読み出され、ラッチ22の入力となる。制御信号CA
がcont_NOPのとき、NOP命令の命令コードか
らレジスタ値が読み出され、入力値はinput_NO
Pとなる。浮動小数点データパスの入力ラッチ22のク
ロック信号はCPGからのCLK2とイネーブル信号E
AとのANDとなり、演算に無関係なラッチは更新され
ない。NOP命令の場合は制御信号CAがcont_N
OPでEA =0となり、ラッチ22出力すなわちIn
Bは更新されない。
【0028】つまり、NOP命令の場合(time=6
〜9)、ラッチ22の出力InBは、FPU1命令と同
じくinput1である。ラッチ20は常に更新される
ため、浮動小数点データパス制御信号CBは、NOP命
令の場合cont_NOPを出力する。浮動小数点デー
タパス回路23は入力はInB、制御信号はCBなの
で、入力はinput1であり、time=4のFPU
1命令と共通であるが、制御信号がfpu_cont1
からcont_NOPと異なるため、出力OAはtim
e=6〜9でoutput1*となる。浮動小数点デー
タパスの出力ラッチ24のクロック信号はCLK1とイ
ネーブル信号EBとのANDなので、浮動小数点データ
パス入力ラッチ22と同様に、演算に無関係なラッチは
更新されない。NOP命令中は、time=6〜9でE
B=0で更新されずラッチ24の出力OBはoutpu
t1で不変である。
【0029】以上のようにCPU命令が連続すると、無
効化回路で連続するNOP命令に置き換えられ、浮動小
数点データパス入力InBとデータパス制御信号CBが
一定となり、データパス回路のスイッチングが行なわれ
ない。また、浮動小数点デコーダ入力ICが一定とな
り、浮動小数点デコーダと浮動小数点レジスタのスイッ
チングが行なわれない。このため、データパス回路、浮
動小数点デコーダと浮動小数点レジスタの消費電力を削
減することができる。FPU命令とCPU命令が交互に
並ぶ場合でも、浮動小数点データパス入出力ラッチ2
2、24のスイッチング回数が減少し、消費電力が削減
される。
【0030】本発明の命令無効化回路は、命令レジスタ
の前段に置けばよく、FPUの内部を変更することがな
い。
【0031】図6には、本発明の別の実施形態を示して
いる。ここでの実施形態では、命令無効化回路を図1の
デコード方式に換えて、無効制御レジスタによる構成と
している。具体的には、浮動小数点演算ユニット(FP
U:Floating Point Unit)を持つマ
イクロプロセッサについて、無効制御レジスタを用いた
命令無効化回路による浮動小数点演算ユニットの電力削
減機構の構成をとっている。図6に示す実施例の特徴と
するところは、図1に示す構成に対して、モジュール単
位で有効/無効を決定する無効制御レジスタを備え、無
効化回路を制御することにある。無効制御レジスタ51
に無効(1)と設定されたモジュールの命令コード無効
化回路9をアクティブにする。無効制御レジスタをソフ
トウェアで書き換えられるようにすれば、ソフトウェア
でモジュール単位で命令コード無効化を設定できる。図
1の実施形態と図6の実施形態との相違点は、図1の実
施形態がFPUモジュールに無関係な命令を検出し、モ
ジュールに無関係な命令をNOP命令に置き換え、命令
レジスタの入力とするのに対し、図6の実施形態では、
無効制御レジスタに無効と設定されたモジュールは命令
コードを無条件にNOP命令に置き換え、命令レジスタ
の入力とすることである。
【0032】図7には、図6の実施形態の命令無効化回
路の構成例を示す。命令キャッシュより命令コード70
2を入力、無効制御レジスタ701出力をセレクタ制御
信号とし、無効制御レジスタでモジュールが無効(1)
と設定された場合、セレクタ703でNOP命令が選択
され、モジュールが有効(0)と設定された場合、命令
コードが選択され、命令無効化回路出力704となる。
他の回路構成は図1と同様であり、タイミングチャート
は図5と同様である。図6の実施形態は、図1の実施形
態に対し、命令無効化回路は簡易となるが、無効命令レ
ジスタを変更するためのオーバーヘッドが増加する。も
ちろん、図6の実施形態と図1の実施形態とを組み合わ
せた構成とすることも可能である。具体的には、無効制
御レジスタでモジュールを無効と設定した場合は、図6
の実施形態の如く、無条件にNOP命令を対象のモジュ
ールに出力する。一方、無効制御レジスタでモジュール
を有効と設定した場合も、図1の実施形態の如く、対象
となるモジュールに関係のない命令に関してはNOP命
令を対象となるモジュールに出力する。この構成であれ
ば回路構成は複雑となるが、きめの細かい低消費電力制
御が可能となる。
【0033】図8には、本発明の第三の実施形態とし
て、コプロセッサ71を持つマイクロプロセッサを示し
ている。図8に示す実施例の特徴とするところは、図1
に対して、CPUモジュール内にコプロセッサ用デコー
ダ19を備えていることである。無効化回路は、コプロ
セッサ71と無関係な命令をNOP命令に置き換え、コ
プロセッサ用のデコーダに出力する。コプロセッサに関
係の無い命令、つまりNOP命令が連続することで、デ
コーダの消費電力は削減される。更に、コプロセッサ回
路62の制御信号を一定とし、コプロセッサのラッチ6
1を更新しないことで、ラッチ61のスイッチング回数
が減少し、電力を削減することも可能である。コプロセ
ッサ用無効化回路は図4と同様に構成できる。本実施形
態は、コプロセッサモジュールの中に命令のデコーダを
設けていないため、IPとしてコプロセッサを導入する
際、第1の実施形態に比べて、IPの選択の幅が広が
る。
【0034】図9には本発明の第四の実施例を示す。図
9に示す実施例の特徴とするところは、コプロセッサ7
1を持つ図8のマイクロプロセッサに対して、モジュー
ル単位で有効/無効を決定する無効制御レジスタを備
え、無効化回路を制御することである。無効化回路は図
7と同様に構成できる。図8に対して命令無効化回路は
簡易となるが、無効命令レジスタを変更するためのオー
バーヘッドが増加する。
【0035】図10には別の実施形態を示している。上
述した何れの実施形態においても、無効化回路は、NO
P命令を出力するとしているが、命令としてのNOP命
令でなくても可能である。具体的には、レジスタ11に
供給されるクロックを停止させることで達成することも
可能である。NOP命令を出力する代わりに、レジスタ
11のクロック供給を停止したとしても、デコーダに供
給される命令は変化しなくなる。つまり、無効化回路に
入力された命令がFPUに無関係な命令であった場合、
制御回路に対して制御信号を出力する。制御回路は、前
記制御信号が入力されることで、レジスタ11に供給さ
れるクロックを停止する。それにより、デコーダに供給
される命令は固定され、デコーダ内でのスイッチング回
数は減少し、デコーダでの消費電力は削減される。その
際、NOP命令がデコーダに入力された場合にはクロッ
クの供給が停止されるレジスタ20,22,24に対し
て、NOP命令がデコーダに供給されたのと同じ状態に
するため、レジスタ20,22,24に供給するクロッ
クを停止させることも可能である。これにより、レジス
タ20,22,24での消費電力の低減が可能となる。
制御回路は、CPG18とレジスタ及び各ラッチとの間
に設けられている。制御回路は、FPUモジュール側に
設けているが、勿論CPU側に設けることも可能であ
る。
【0036】更に、図示はしていないが、更なる実施形
態も可能である。例えば、FPUとは無関係な命令がF
PUに入力された場合、デコーダに供給する命令を遮断
することも可能である。具体的には、デコーダの前段に
遮断回路を設け、FPUとは無関係な命令が無効化回路
に入力された場合、遮断回路によりデコーダとレジスタ
或いはレジスタと無効化回路とを開放する方法も考えら
れる。この方法だと、より確実にデコーダの動作を停止
させることが可能となる。更に、前記遮断回路を命令レ
ジスタの手前に設けることで、命令レジスタでの消費電
力も削減できる。また、本実施形態では、命令の一つと
してのNOP命令に特筆しているが、命令としてのNO
Pに特定される訳ではない。例えば、FPU命令とは無
関係な命令が無効化回路に入力された場合、選択手段に
より、全てが“1”のコードをデコーダに供給すること
も可能である。この場合も、デコーダでのスイッチング
回数は削減され、デコーダでの消費電力低減が可能とな
る。勿論、“1”以外に“0”も可能であるし、その他
の特定のコードでも可能である。また、FPUの命令コ
ードを参照して、FPU以外の命令が入力された場合に
デコードを固定する際、スイッチング回数が最も削減さ
れるコードをシミュレーション等で計算し、そのコード
を無効化回路によってデコーダに供給することも可能で
ある。この方だと、デコーダでの電力削減効果がより大
きくなる。
【0037】上述した実施形態においては、命令無効化
回路をコプロセッサのデコーダ前、具体的にはFPUモ
ジュール側に設けているが、無効化回路をCPU側のデ
コーダの前段に設けることも可能である。これにより、
CPUに無関係の命令つまりコプロセッサ命令によりコ
プロセッサが処理している間、CPU命令レジスタに対
してNOP命令を供給することが可能となり、CPUの
整数デコーダでのスイッチング回数を削減でき、CPU
の消費電力削減を実現することも可能となる。併せて、
CPU側のデータパスのラッチを固定することで一層の
電力削減効果が期待できる。また、上述の方法とコプロ
セッサのデコーダのデコードを停止させる方法とを組み
合わせることで更なる電力削減が可能となる。また、複
数のCPUと複数のコプロセッサとの組合せにより構成
されたマイクロプロセッサにおいて、複数存在する命令
デコーダに、本発明の無効化回路を設けることで、それ
ぞれの処理装置の電力削減が可能となり、全体としての
電力削減が達成できる。また、単一のCPUについても
本発明を応用することは可能である。
【0038】また、本実施形態では、NOP命令等が連
続することで、デコーダでのスイッチングを停止させる
ことを記載しているが、処理装置に無関係な命令が入力
される場合に比べてスイッチングの回数が減少する場合
も含むものである。演算器に関係の無い命令が連続して
無効化回路に入力された場合、一つ目の命令をNOP1
命令へ、2つ目の命令をNOP2命令へ、3つ目の命令
をNOP3へと変換し、4つ目の命令を再びNOP1命
令へと変換させる等の方法により、デコーダの少しのト
ランジスタを動作させたとしても、それらの命令によ
り、無関係な命令がデコーダに入力され場合に比べて電
力削減の効果が期待できる。つまり、前述した命令も、
実質的に本明細書で記すNOP命令であると考えられ
る。勿論、前述したNOP命令に準ずる“1”、“0”
或いは、コプロセッサの命令を基に決定された命令など
の固定された命令についても同じである。
【0039】以上、本発明の具体的な実施形態を述べて
きたが、それらに制限される訳ではない。デコーダでの
電力削減との本発明の思想を逸脱しない範囲で様々な実
施形態が考えられる。
【0040】更に、上記に示したマイクロプロセッサ
を、携帯電話やPDA、モバイルコンピュータなどの、
電池で駆動される場面のある携帯電子機器に搭載するこ
とで、携帯電子機器の消費電力が低減され、電池の使用
可能時間が延び、携帯電子機器の利便性が向上する。
【0041】
【発明の効果】以上説明したように、FPUを持つマイ
クロプロセッサにおいて、本発明の無効化回路によっ
て、FPUと無関係な命令列を均一なNOP命令等に置
き換えてFPUに供給する。これにより、FPUと無関
係な命令の場合、NOP命令がFPUの命令デコーダに
供給され、浮動小数点デコーダを構成しているトランジ
スタのスイッチング回数を削減し、消費電力の低減化が
実現できる。同様に、コプロセッサを持つプロセッサに
おいて、本発明の無効化回路によりコプロセッサの消費
電力を低減できる。CPUにおいても、CPU命令デコ
ーダの前段に命令無効化回路を備えることにより、CP
Uと無関係な命令、例えば浮動小数点演算命令をNOP
命令に置き換えることができ、同様の理由で、CPUの
命令デコーダで消費電力を削減できる。これらの命令無
効化回路は、FPUあるいはコプロセッサの内部を変更
する必要のない付加回路で構成することも可能である。
新規設計の検証工数を削減するだけでなく、既存回路に
も適用が可能である。
【0042】更に、上記マイクロプロセッサを携帯情報
機器等のマイクロプロセッサシステムに組み込むこと
で、携帯電子機器等の低消費電力化が可能である。
【図面の簡単な説明】
【図1】本発明の第一の実施例を示す低電力マイクロプ
ロセッサの構成図である。
【図2】本発明の無効化回路の入力となる命令列を示す
図である。
【図3】本発明の無効化回路の出力となる命令列を示す
図である。
【図4】本発明の無効化回路の構成図である。
【図5】図1に示す構成のタイミングチャート図であ
る。
【図6】本発明の第二の実施例に係わる無効制御レジス
タを用いた無効化回路を有する低電力マイクロプロセッ
サの構成図である。
【図7】本発明の無効制御レジスタを用いた無効化回路
の構成図である。
【図8】本発明の第三の実施例に係わる無効化回路を有
する低電力マイクロプロセッサの構成図である。
【図9】本発明の第四の実施例に係わる無効制御レジス
タを用いた無効化回路を有する低電力マイクロプロセッ
サの構成図である。
【図10】本発明の第5の実施例に係わる無効化回路を
有する低電力マイクロプロセッサの構成図である。
【符号の説明】
101:マイクロプロセッサ 1:CPU、2:FPU 3:メインメモリ、4:データバス、5:アドレスバ
ス、6:BIU 7:データキャッシュ、8:命令キャッシュ 9:命令無効化回路 10:CPU用命令レジスタ、11:FPU用命令レジ
スタ 12:整数デコーダ、13:整数デコーダ用ラッチ、1
4:整数レジスタファイル、15:ALU入力ラッチ、
16:ALU 17:ALU出力ラッチ 18:CPG 19:浮動小数点デコーダ 20:浮動小数点デコーダ用ラッチ、21:浮動小数点
レジスタファイル 22:浮動小数点データパス入力ラッチ 23:浮動小数点データパス回路 24:浮動小数点データパス出力ラッチ 51, 701:無効制御レジスタ 61:コプロセッサ用ラッチ 62:コプロセッサ回路 71:コプロセッサ 401, 702:命令コード 402, 403:比較器 404 :ANDゲート 405, 703:2入力セレクタ 406, 704:無効化回路出力。
フロントページの続き (72)発明者 中野 定樹 東京都国分寺市東恋ケ窪一丁目280番地 株式会社日立製作所中央研究所内 (72)発明者 津野田 賢伸 東京都国分寺市東恋ケ窪一丁目280番地 株式会社日立製作所中央研究所内 (72)発明者 西井 修 東京都国分寺市東恋ケ窪一丁目280番地 株式会社日立製作所中央研究所内 Fターム(参考) 5B013 DD03 DD05 5B022 AA05 CA01 CA03 CA07 CA08 DA02 DA06 EA03 FA09 FA10 5B033 AA05 AA14 BA05 BB04 BC01 DD05

Claims (62)

    【特許請求の範囲】
  1. 【請求項1】命令処理回路と、 前記命令処理回路の出力をデコードする命令デコーダ
    と、前記命令デコーダのデコード結果に従い演算を行う
    演算器とを有し、前記命令処理回路は、入力された命令
    が所定命令の場合、前記入力された命令を前記命令デコ
    ーダに出力し、入力された命令が前記所定命令以外の命
    令の場合、前記入力された命令とは異なる第1の命令を
    前記命令デコーダに出力することを特徴とするマイクロ
    プロセッサ。
  2. 【請求項2】前記命令処理回路は、命令判定回路と命令
    選択回路とを有し、前記命令判定回路は、前記命令処理
    回路に入力された命令が前記所定命令であるか否かを判
    定し、前記命令選択回路は、前記判定の結果に基づき、
    前記入力された命令か前記第1の命令かの何れかを選択
    して前記命令デコーダに出力することを特徴とする請求
    項1記載のマイクロプロセッサ。
  3. 【請求項3】前記所定命令は、前記演算器に演算を行わ
    せるための命令であることを特徴とする請求項1または
    2記載のマイクロプロセッサ。
  4. 【請求項4】前記第1の命令は、NOP命令であること
    を特徴とする請求項1乃至3記載のマイクロプロセッ
    サ。
  5. 【請求項5】前記第1の命令は特定のコードの命令であ
    ることを特徴とする請求項1乃至3記載のマイクロプロ
    セッサ。
  6. 【請求項6】前記演算器は、特定演算回路の演算器であ
    ることを特徴とする請求項1乃至5記載のマイクロプロ
    セッサ。
  7. 【請求項7】前記特定演算回路はFPUであることを特
    徴とする請求項6記載のマイクロプロセッサ。
  8. 【請求項8】前記演算器は、第1のラッチに格納された
    データの演算を行い、演算結果を第2のラッチに出力
    し、前記命令デコーダに前記第1の命令が入力されたと
    き、前記第1のラッチと前記第2のラッチとに対して供
    給されるクロックが停止させることを特徴とする請求項
    1乃至7記載のマイクロプロセッサ。
  9. 【請求項9】前記マイクロプロセッサは、更に、命令を
    受ける第2のレジスタと、 前記第2のレジスタに接続された第2の命令デコーダ
    と、前記第2の命令デコーダの出力によって制御される
    第2の演算器とを有し、前記命令処理回路に供給される
    命令と前記第2のレジスタとに入力される命令とは同じ
    命令であることを特徴とする請求項1乃至8記載のマイ
    クロプロセッサ。
  10. 【請求項10】前記マイクロプロセッサは、同一の半導
    体基板上に形成されていることを特徴とする請求項1乃
    至9記載のマイクロプロセッサ。
  11. 【請求項11】命令が入力される命令処理回路と、前記
    命令処理回路の出力を受ける命令レジスタと、前記命令
    レジスタの出力をデコードする命令デコーダと、前記命
    令デコーダのデコード結果に従い演算を行う演算器とを
    有し、前記命令処理回路は、入力された命令が所定命令
    以外の場合、前記命令レジスタに供給するクロックを停
    止させることを特徴とするマイクロプロセッサ。
  12. 【請求項12】前記命令処理回路は、命令判定回路と、
    クロックが供給されてクロックを前記命令レジスタに供
    給する制御回路とを有し、前記命令判定回路は、前記命
    令処理回路に入力された命令が前記所定命令であるか否
    かを判定し、前記判定の結果を前記制御回路に出力し、
    前記制御回路は、前記判定の結果に基づき、前記入力さ
    れた命令が前記所定命令以外の命令の場合、前記命令レ
    ジスタに供給するクロックを停止させることを特徴とす
    る請求項11記載のマイクロプロセッサ。
  13. 【請求項13】前記命令処理回路は、命令判定手段と制
    御手段とを有し、前記命令判定手段は、前記命令処理回
    路に入力された命令が前記所定命令であるか否かを判定
    し、前記判定の結果を前記制御手段に出力し、前記制御
    手段は、前記判定の結果に基づき、前記入力された命令
    が前記所定命令以外の命令の場合、前記命令レジスタに
    供給するクロックを停止させることを特徴とする請求項
    11記載のマイクロプロセッサ。
  14. 【請求項14】前記所定命令は、前記演算器に演算を行
    わせるための命令であることを特徴とする請求項11乃
    至13記載のマイクロプロセッサ。
  15. 【請求項15】前記演算器は、特定演算回路の演算器で
    あることを特徴とする請求項11乃至14記載のマイク
    ロプロセッサ。
  16. 【請求項16】前記演算器は、第1のラッチに格納され
    たデータの演算を行い、演算結果を第2のラッチに出力
    し、前記命令処理回路に入力された命令が、前記所定命
    令以外の場合、前記第1のラッチと前記第2のラッチと
    に対して供給されるクロックが停止させることを特徴と
    する請求項11乃至15記載のマイクロプロセッサ。
  17. 【請求項17】前記マイクロプロセッサは、更に、命令
    を受ける第2のレジスタと、前記第2のレジスタに接続
    された第2の命令デコーダと、前記第2の命令デコーダ
    の出力によって制御される第2の演算器とを有し、前記
    命令処理回路に供給される命令と前記第2のレジスタと
    に入力される命令とは同じ命令であることを特徴とする
    請求項11乃至16記載のマイクロプロセッサ。
  18. 【請求項18】前記マイクロプロセッサは、同一の半導
    体基板上に形成されていることを特徴とする請求項11
    乃至17記載のマイクロプロセッサ。
  19. 【請求項19】命令処理回路と、前記命令処理回路の出
    力をデコードする命令デコーダと、前記命令デコーダの
    デコード結果に従い演算を行う演算器とを有し、前記命
    令処理回路は、入力された命令が所定命令以外の場合、
    前記入力された命令を前記命令デコーダに供給しないこ
    とを特徴とするマイクロプロセッサ。
  20. 【請求項20】前記命令処理回路は、命令判定回路とス
    イッチ回路とを有し、前記命令判定回路は、前記命令処
    理回路に入力された命令が前記所定命令であるか否かを
    判定して前記判定の結果を前記スイッチ回路に出力し、
    前記スイッチ回路は、前記判定の結果に基づき、前記入
    力された命令が前記所定命令以外の命令の場合、前記命
    令判定回路と前記命令デコーダとの接続を開放させるこ
    とを特徴とする請求項19記載のマイクロプロセッサ。
  21. 【請求項21】前記所定命令は、前記演算器に演算を行
    わせるための命令であることを特徴とする請求項19ま
    たは20記載のマイクロプロセッサ。
  22. 【請求項22】前記演算器は、特定演算回路の演算器で
    あることを特徴とする請求項19乃至21記載のマイク
    ロプロセッサ。
  23. 【請求項23】前記特定演算回路はFPUであることを
    特徴とする請求項22記載のマイクロプロセッサ。
  24. 【請求項24】前記演算器は、第1のラッチに格納され
    たデータの演算を行い、演算結果を第2のラッチに出力
    し、前記命令処理回路に入力された命令が、前記所定命
    令以外の場合、前記第1のラッチと前記第2のラッチと
    に対して供給されるクロックが停止させることを特徴と
    する請求項19乃至23記載のマイクロプロセッサ。
  25. 【請求項25】前記マイクロプロセッサは、更に、命令
    を受ける第2のレジスタと、 前記第2のレジスタに接続された第2の命令デコーダ
    と、前記第2の命令デコーダの出力によって制御される
    第2の演算器とを有し、前記命令処理回路に供給される
    命令と前記第2のレジスタとに入力される命令とは同じ
    命令であることを特徴とする請求項19乃至24記載の
    マイクロプロセッサ。
  26. 【請求項26】前記マイクロプロセッサは、同一の半導
    体基板上に形成されていることを特徴とする請求項19
    乃至25記載のマイクロプロセッサ。
  27. 【請求項27】メモリからの命令が入力される命令処理
    回路と、前記命令処理回路の出力をデコードする第1の
    デコーダと、前記第1のデコーダのデコード結果に従い
    演算を行う第1の演算器と、前記命令処理回路の出力を
    デコードする第2のデコーダと、前記第2のデコーダの
    デコード結果に従い演算を行う第2の演算器とを有し、
    前記命令処理回路に入力された命令が第2の演算器に演
    算を行わせる命令でない場合、前記第2のデコーダの消
    費電力を前記第1のデコーダの消費電力に対して低減さ
    せることを特徴とするマイクロプロセッサ。
  28. 【請求項28】前記命令処理回路は、前記命令処理回路
    に入力された命令が前記第2の演算器に演算を行わせる
    命令でない場合、前記第2のデコーダに対して、前記入
    力された命令とは異なる命令を出力することを特徴とす
    る請求項27記載のマイクロプロセッサ。
  29. 【請求項29】前記異なる命令とは、NOP命令である
    ことを特徴とする請求項28記載のマイクロプロセッ
    サ。
  30. 【請求項30】前記マイクロプロセッサは、前記命令処
    理回路と前記第2のデコーダとの間に命令レジスタを有
    し、前記命令処理回路は、前記命令処理回路に入力され
    た命令が前記第2の演算器に演算を行わせる命令でない
    場合、前記命令レジスタに供給するクロックを停止する
    ことを特徴とする請求項27記載のマイクロプロセッ
    サ。
  31. 【請求項31】前記マイクロプロセッサは、前記命令処
    理回路と前記第2のデコーダとの間にスイッチ回路を有
    し、前記命令処理回路は、前記命令処理回路に入力され
    た命令が前記第2の演算器に演算を行わせる命令でない
    場合、前記スイッチ回路を制御し、前記命令処理回路と
    前記第2のデコーダとの接続を解除することを特徴とす
    る請求項27記載のマイクロプロセッサ。
  32. 【請求項32】命令処理回路と、 前記命令処理回路の出力をデコードする第1のデコーダ
    と、前記第1のデコーダのデコード結果に従い演算を行
    う第1の演算器と、前記命令処理回路の出力をデコード
    する第2のデコーダと、前記第2のデコーダのデコード
    結果に従い演算を行う第2の演算器とを有し、前記命令
    処理回路は、前記命令処理回路に入力された命令が前記
    第2の演算器に演算を行わせる命令でない場合、前記第
    2のデコーダに対して、前記入力された命令とは異なる
    命令を出力することを特徴とするマイクロプロセッサ。
  33. 【請求項33】前記異なる命令は、NOP命令であるこ
    とを特徴とする請求項32記載のマイクロプロセッサ。
  34. 【請求項34】前記第1の演算器はALUであり、第2
    の演算器は特定演算回路の演算器であることを特徴とす
    る請求項32または33記載のマイクロプロセッサ。
  35. 【請求項35】前記特定演算回路は、FPUであること
    を特徴とする請求項34記載のマイクロプロセッサ。
  36. 【請求項36】前記第2の演算器は、第1のラッチに格
    納されたデータの演算を行い、演算結果を第2のラッチ
    に出力し、前記命令処理回路に入力された命令が前記第
    2の演算器に演算を行わせる命令でない場合、前記第1
    のラッチと前記第2のラッチとに対して供給されるクロ
    ックが停止させることを特徴とする請求項32乃至35
    記載のマイクロプロセッサ。
  37. 【請求項37】前記命令処理回路は、前記命令処理回路
    に入力された命令が前記第1の演算器に演算を行わせる
    命令でない場合、前記第1のデコーダに対して、前記入
    力された命令を出力しないことを特徴とする請求項32
    乃至36記載のマイクロプロセッサ。
  38. 【請求項38】前記マイクロプロセッサは、同一の半導
    体基板上に形成されていることを特徴とする請求項32
    乃至37記載のマイクロプロセッサ。
  39. 【請求項39】命令処理回路と、前記命令処理回路の出
    力をデコードする第1のデコーダと、前記第1のデコー
    ダのデコード結果に従い演算を行う第1の演算器と、前
    記命令処理回路の出力をデコードする第2のデコーダ
    と、前記第2のデコーダのデコード結果に従い演算を行
    う第2の演算器とを有し、前記命令処理回路は、前記命
    令処理回路に入力された命令が前記第2の演算器に演算
    を行わせる命令でない場合、前記第2のデコーダに対し
    て、前記入力された命令を出力しないことを特徴とする
    マイクロプロセッサ。
  40. 【請求項40】前記命令処理回路は、前記命令処理回路
    に入力された命令が前記第2の演算器に演算を行わせる
    命令でない場合、前記第2のデコーダに対して、前記入
    力された命令とは異なる命令を前記第2のデコーダに供
    給することを特徴とする請求項39記載のマイクロプロ
    セッサ。
  41. 【請求項41】前記マイクロプロセッサは、更に、前記
    命令処理回路の出力が入力され、その出力が前記第2の
    デコーダに入力される命令レジスタを有し、前記命令処
    理回路は、更に、制御回路を有し、前記制御回路は、前
    記命令処理回路に入力された命令が前記第2の演算器に
    演算を行わせる命令でない場合、前記命令レジスタに供
    給するクロックを停止させることを特徴とする請求項3
    9記載のマイクロプロセッサ。
  42. 【請求項42】前記マイクロプロセッサは、更に、前記
    命令処理回路の出力が入力され、その出力が前記第2の
    デコーダに入力されるスイッチ回路を有し、前記命令処
    理回路は、更に、制御回路を有し、前記制御回路は、前
    記命令処理回路に入力された命令が前記第2の演算器に
    演算を行わせる命令でない場合、前記スイッチ回路を制
    御して、前記命令処理回路と前記第2のデコーダとの接
    続を開放させることを特徴とする請求項39記載のマイ
    クロプロセッサ。
  43. 【請求項43】前記第1の演算器はALUであり、第2
    の演算器は特定演算回路の演算器であることを特徴とす
    る請求項39乃至42記載のマイクロプロセッサ。
  44. 【請求項44】前記特定演算回路は、FPUであること
    を特徴とする請求項43記載のマイクロプロセッサ。
  45. 【請求項45】前記第2の演算器は、第1のラッチに格
    納されたデータの演算を行い、演算結果を第2のラッチ
    に出力し、前記命令処理回路に入力された命令が前記第
    2の演算器に演算を行わせる命令でない場合、前記第1
    のラッチと前記第2のラッチとに対して供給されるクロ
    ックが停止させることを特徴とする請求項39乃至44
    記載のマイクロプロセッサ。
  46. 【請求項46】前記命令処理回路は、前記命令処理回路
    に入力された命令が前記第1の演算器に演算を行わせる
    命令でない場合、前記第1のデコーダに対して、前記入
    力された命令を出力するしないことを特徴とする請求項
    39乃至45記載のマイクロプロセッサ。
  47. 【請求項47】前記マイクロプロセッサは、同一の半導
    体基板上に形成されていることを特徴とする請求項39
    乃至46記載のマイクロプロセッサ。
  48. 【請求項48】命令処理手段と、前記命令処理手段の出
    力をデコードする第1のデコード手段と、前記第1のデ
    コード手段のデコード結果に従い演算を行う演算器とを
    有し、前記命令処理手段は、入力された命令が所定命令
    以外の場合、前記入力された命令を前記第1のデコード
    手段に供給しないことを特徴とするマイクロプロセッ
    サ。
  49. 【請求項49】前記所定命令は、特定演算回路の演算器
    に演算を行わせるための命令であることを特徴とする請
    求項48記載のマイクロプロセッサ。
  50. 【請求項50】前記演算器は、第1のラッチに格納され
    たデータの演算を行い、演算結果を第2のラッチに出力
    し、前記命令処理手段に入力された命令が、前記所定命
    令以外の場合、前記第1のラッチと前記第2のラッチと
    に対して供給されるクロックが停止させることを特徴と
    する請求項48または49記載のマイクロプロセッサ。
  51. 【請求項51】前記マイクロプロセッサは、更に、命令
    を受ける第2のレジスタと、 前記第2のレジスタに接続された第2のデコード手段
    と、前記第2のデコード手段の出力によって制御される
    第2の演算器とを有し、前記命令処理回路に供給される
    命令と前記第2のレジスタとに入力される命令とは同じ
    命令であることを特徴とする請求項48乃至50記載の
    マイクロプロセッサ。
  52. 【請求項52】命令が入力される命令処理回路と、前記
    命令処理回路の出力が入力される命令デコーダと、前記
    命令デコーダのデコード結果に従って演算を行う演算器
    とを有し、前記命令処理回路は、入力された命令とは異
    なる第1の命令か前記入力された命令かの何れかを選択
    して出力する選択回路と、前記入力された命令の所定ビ
    ットが入力される判定回路とを有し、前記判定回路は、
    前記所定ビットが第1の状態であった場合、前記選択回
    路を制御して前記第1の命令を前記命令デコーダに出力
    し、前記判定回路は、前記所定ビットが第1の状態でな
    かった場合、前記選択回路を制御して前記入力された命
    令を前記命令デコーダに出力することを特徴とするマイ
    クロプロセッサ。
  53. 【請求項53】命令が入力される命令処理回路と、前記
    命令処理回路の出力が入力される命令デコーダと、前記
    命令デコーダのデコード結果に従って演算を行う演算器
    とを有し、前記命令処理回路は、入力された命令とは異
    なる第1の命令か前記入力された命令かの何れかを選択
    して出力する選択回路と、制御レジスタとを有し、前記
    制御レジスタの所定ビットが第1の状態であった場合、
    前記選択回路を制御して前記第1の命令を前記命令デコ
    ーダに出力し、前記制御レジスタの所定ビットが第1の
    状態でなかった場合、前記選択回路を制御して前記入力
    された命令を前記命令デコーダに出力することを特徴と
    するマイクロプロセッサ。
  54. 【請求項54】前記第1の命令は、NOP命令であるこ
    とを特徴とする請求項52または53記載のマイクロプ
    ロセッサ。
  55. 【請求項55】前記第1の命令は特定のコードを有する
    命令であることを特徴とする請求項52または53記載
    のマイクロプロセッサ。
  56. 【請求項56】前記演算器は、特定演算回路の演算器で
    あることを特徴とする請求項52乃至55記載のマイク
    ロプロセッサ。
  57. 【請求項57】命令が入力される命令処理回路と、前記
    命令処理回路の出力が入力される命令デコーダと、前記
    命令デコーダのデコード結果に従って演算を行う演算器
    とを有し、前記命令処理回路は、前記入力された命令の
    所定ビットが入力される判定回路と、前記判定回路の出
    力を受ける制御回路とを有し、前記判定回路は、前記所
    定ビットが第1の状態であった場合、前記制御回路を制
    御して前記命令デコーダの動作を停止させることを特徴
    とするマイクロプロセッサ。
  58. 【請求項58】クロック制御回路と、 命令が入力される命令処理回路と、前記命令処理回路の
    出力が入力される命令レジスタと、前記命令レジスタの
    出力が入力される命令デコーダと、前記命令デコーダの
    デコード結果に従って演算を行う演算器とを有し、前記
    命令処理回路は、前記入力された命令の所定ビットが入
    力される判定回路と、前記クロック制御回路の出力と前
    記命令レジスタとに接続されて前記判定回路の出力を受
    けるスイッチ回路とを有し、前記判定回路は、前記所定
    ビットが第1の状態であった場合、前記スイッチ回路を
    制御して前記命令レジスタへのクロック供給を停止させ
    ることを特徴とするマイクロプロセッサ。
  59. 【請求項59】命令が入力される命令処理回路と、前記
    命令処理回路の出力が入力されるスイッチ回路と、前記
    スイッチ回路の出力が入力される命令デコーダと、前記
    命令デコーダのデコード結果に従って演算を行う演算器
    とを有し、前記命令処理回路は、前記入力された命令の
    所定ビットが入力される判定回路を有し、前記判定回路
    は、前記所定ビットが第1の状態であった場合、前記ス
    イッチ回路を制御して前記命令処理回路と命令デコーダ
    との接続を開放することを特徴とするマイクロプロセッ
    サ。
  60. 【請求項60】前記演算器は、特定演算回路の演算器で
    あることを特徴とする請求項57乃至59記載のマイク
    ロプロセッサ。
  61. 【請求項61】請求項19乃至26記載のマイクロプロ
    セッサを搭載したことを特徴とする電池での動作が可能
    な携帯電子機器。
  62. 【請求項62】請求項39乃至47記載のマイクロプロ
    セッサを搭載したことを特徴とする電池での動作が可能
    な携帯電子機器。
JP19540999A 1999-07-09 1999-07-09 低消費電力マイクロプロセッサおよびマイクロプロセッサシステム Expired - Fee Related JP3705022B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP19540999A JP3705022B2 (ja) 1999-07-09 1999-07-09 低消費電力マイクロプロセッサおよびマイクロプロセッサシステム
US09/603,965 US6877087B1 (en) 1999-07-09 2000-06-26 Substituting specified instruction with NOP to functional unit and halting clock pulses to data latches for power saving
US11/095,685 US7178046B2 (en) 1999-07-09 2005-04-01 Halting clock signals to input and result latches in processing path upon fetching of instruction not supported

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP19540999A JP3705022B2 (ja) 1999-07-09 1999-07-09 低消費電力マイクロプロセッサおよびマイクロプロセッサシステム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2005168976A Division JP3906865B2 (ja) 2005-06-09 2005-06-09 低消費電力マイクロプロセッサおよびマイクロプロセッサシステム

Publications (3)

Publication Number Publication Date
JP2001022582A true JP2001022582A (ja) 2001-01-26
JP2001022582A5 JP2001022582A5 (ja) 2004-11-18
JP3705022B2 JP3705022B2 (ja) 2005-10-12

Family

ID=16340630

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19540999A Expired - Fee Related JP3705022B2 (ja) 1999-07-09 1999-07-09 低消費電力マイクロプロセッサおよびマイクロプロセッサシステム

Country Status (2)

Country Link
US (2) US6877087B1 (ja)
JP (1) JP3705022B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7185171B2 (en) 2002-07-25 2007-02-27 Hitachi, Ltd. Semiconductor integrated circuit
EP1653355A3 (en) * 2004-10-26 2008-03-12 Hitachi Software Engineering Co., Ltd. Information processor, information processing method, and programs therefor
JP2009116458A (ja) * 2007-11-02 2009-05-28 Mitsubishi Electric Corp 信号処理プロセッサ

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040205326A1 (en) * 2003-03-12 2004-10-14 Sindagi Vijay K.G. Early predicate evaluation to reduce power in very long instruction word processors employing predicate execution
US8806228B2 (en) * 2006-07-13 2014-08-12 International Business Machines Corporation Systems and methods for asymmetrical performance multi-processors
US9015501B2 (en) * 2006-07-13 2015-04-21 International Business Machines Corporation Structure for asymmetrical performance multi-processors
US7689402B2 (en) * 2006-11-17 2010-03-30 Telefonaktiebolaget Lm Ericsson (Publ) Method and apparatus for retrieving application-specific code using memory access capabilities of a host processor
JP4864840B2 (ja) * 2007-08-31 2012-02-01 株式会社東芝 マイクロプロセッサ
US8185883B2 (en) * 2007-09-14 2012-05-22 International Business Machines Corporation Instruction exploitation through loader late fix-up
JP5211778B2 (ja) * 2008-03-17 2013-06-12 富士通株式会社 ジョブ割当装置、並列計算機システム、ジョブ割当方法、及び、ジョブ割当プログラム
EP2629204B1 (en) * 2010-10-14 2019-02-13 Toyota Jidosha Kabushiki Kaisha Vehicle data acquisition system and vehicle data acquisition method
WO2013001576A1 (en) * 2011-06-29 2013-01-03 Nec Corporation Multiprocessor system and method of saving energy therein
JP5730793B2 (ja) * 2012-01-17 2015-06-10 アラクサラネットワークス株式会社 ネットワーク中継装置およびその制御方法
US20140164738A1 (en) * 2012-12-07 2014-06-12 Nvidia Corporation Instruction categorization for runahead operation
US10447461B2 (en) * 2015-12-01 2019-10-15 Infineon Technologies Austria Ag Accessing data via different clocks
US20230153110A1 (en) * 2021-08-12 2023-05-18 Tenstorrent Inc. Pre-staged instruction registers for variable length instruction set machine

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4167778A (en) * 1975-11-28 1979-09-11 Sperry Rand Corporation Invalid instruction code detector
JPS58127262A (ja) * 1982-01-25 1983-07-29 Toshiba Corp マイクロコンピユ−タ
US5031096A (en) * 1988-06-30 1991-07-09 International Business Machines Corporation Method and apparatus for compressing the execution time of an instruction stream executing in a pipelined processor
US5212693A (en) * 1990-08-02 1993-05-18 Ibm Corporation Small programmable array to the on-chip control store for microcode correction
JPH04111127A (ja) 1990-08-31 1992-04-13 Toshiba Corp 演算処理装置
JPH06119168A (ja) 1992-10-07 1994-04-28 Nec Corp 命令デコード方法
US5392437A (en) * 1992-11-06 1995-02-21 Intel Corporation Method and apparatus for independently stopping and restarting functional units
JPH08101820A (ja) 1994-09-30 1996-04-16 Toshiba Corp マイクロプロセッサ
US5619408A (en) * 1995-02-10 1997-04-08 International Business Machines Corporation Method and system for recoding noneffective instructions within a data processing system
US5745375A (en) * 1995-09-29 1998-04-28 Intel Corporation Apparatus and method for controlling power usage
US5742794A (en) * 1995-10-13 1998-04-21 Dell Usa, L.P. Emulation techniques for computer systems having mixed processor/software configurations
US5860000A (en) * 1996-01-31 1999-01-12 Hitachi Micro Systems, Inc. Floating point unit pipeline synchronized with processor pipeline
US5940311A (en) * 1996-04-30 1999-08-17 Texas Instruments Incorporated Immediate floating-point operand reformatting in a microprocessor
GB2323188B (en) 1997-03-14 2002-02-06 Nokia Mobile Phones Ltd Enabling and disabling clocking signals to elements
JPH113225A (ja) 1997-06-13 1999-01-06 Nec Corp 情報処理装置
JP3841967B2 (ja) * 1999-01-19 2006-11-08 株式会社ルネサステクノロジ マイクロプロセッサ
JP3616556B2 (ja) 1999-06-29 2005-02-02 株式会社東芝 拡張命令を処理する並列プロセッサ

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7185171B2 (en) 2002-07-25 2007-02-27 Hitachi, Ltd. Semiconductor integrated circuit
EP1653355A3 (en) * 2004-10-26 2008-03-12 Hitachi Software Engineering Co., Ltd. Information processor, information processing method, and programs therefor
US7739672B2 (en) 2004-10-26 2010-06-15 Hitachi Software Engineering, Co., Ltd. Information processor, information processing method, and programs therefor
JP2009116458A (ja) * 2007-11-02 2009-05-28 Mitsubishi Electric Corp 信号処理プロセッサ

Also Published As

Publication number Publication date
US20050169086A1 (en) 2005-08-04
JP3705022B2 (ja) 2005-10-12
US7178046B2 (en) 2007-02-13
US6877087B1 (en) 2005-04-05

Similar Documents

Publication Publication Date Title
US7178046B2 (en) Halting clock signals to input and result latches in processing path upon fetching of instruction not supported
US5420808A (en) Circuitry and method for reducing power consumption within an electronic circuit
US7134028B2 (en) Processor with low overhead predictive supply voltage gating for leakage power reduction
US7529958B2 (en) Programmable power transition counter
US9015504B2 (en) Managing power of thread pipelines according to clock frequency and voltage specified in thread registers
US6910141B2 (en) Pipelined data processor with signal-initiated power management control
US20040019762A1 (en) Semiconductor integrated circuit
US20040205326A1 (en) Early predicate evaluation to reduce power in very long instruction word processors employing predicate execution
US5991884A (en) Method for reducing peak power in dispatching instructions to multiple execution units
US8806181B1 (en) Dynamic pipeline reconfiguration including changing a number of stages
JP2000322403A (ja) 電力削減のための複数の等価機能ユニットの制御
JP2001202155A (ja) 低消費電力処理装置
US7263621B2 (en) System for reducing power consumption in a microprocessor having multiple instruction decoders that are coupled to selectors receiving their own output as feedback
JPH10301659A (ja) マイクロプロセッサ
US6993674B2 (en) System LSI architecture and method for controlling the clock of a data processing system through the use of instructions
JP3906865B2 (ja) 低消費電力マイクロプロセッサおよびマイクロプロセッサシステム
JP2007521538A (ja) 要求駆動型クロック・スロットリング電力低減を用いるプロセッサ
US7290153B2 (en) System, method, and apparatus for reducing power consumption in a microprocessor
CN113366458A (zh) 用于自适应互连路由的***、装置和方法
YAMADA et al. A low-power embedded RISC microprocessor with an integrated DSP for mobile applications
JP3729142B2 (ja) 並列演算処理装置
JP5414323B2 (ja) 半導体集積回路装置
KR100416858B1 (ko) 명령어 처리장치
US6473864B1 (en) Method and system for providing power management to a processing system
Irie Processor Core and Low-Power SOC Design for Embedded Systems

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20050412

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050419

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050609

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050718

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

Free format text: PAYMENT UNTIL: 20080805

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20090805

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090805

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100805

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20100805

Year of fee payment: 5

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

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

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20110805

Year of fee payment: 6

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313111

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

Free format text: PAYMENT UNTIL: 20110805

Year of fee payment: 6

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

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20120805

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20130805

Year of fee payment: 8

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees