JPH0367331A - マイクロプロセッサ - Google Patents

マイクロプロセッサ

Info

Publication number
JPH0367331A
JPH0367331A JP20300089A JP20300089A JPH0367331A JP H0367331 A JPH0367331 A JP H0367331A JP 20300089 A JP20300089 A JP 20300089A JP 20300089 A JP20300089 A JP 20300089A JP H0367331 A JPH0367331 A JP H0367331A
Authority
JP
Japan
Prior art keywords
instruction
microinstruction
common
address
micro
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.)
Pending
Application number
JP20300089A
Other languages
English (en)
Inventor
Akihiro Yoshitake
吉竹 昭博
Toshiharu Oshima
大島 俊春
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP20300089A priority Critical patent/JPH0367331A/ja
Publication of JPH0367331A publication Critical patent/JPH0367331A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野] 本発明は、マイクロプロセッサに関し、特に、マクロ命
令をマイクロ命令により実行するマイクロプロセッサに
係り、マイクロ命令数の削減を意図したマイクロプロセ
ッサに関する。
一般に、マイクロプロセッサは、その基本機能の一部を
マイクロプログラムの形で内蔵するものが多(、マイク
ロプログラムを書換えることにより、アーキテクチャ−
上の変更に柔軟に対応することができる。マイクロプロ
グラムで書かれたファームウェアは、いくつかのマイク
ロ命令の集まりで1つの基本機能を実行するようになっ
ており、本明細書中ではいくつかのマイクロ命令の集ま
りによって実行するマシン命令をマクロ命令という。
〔従来の技術〕
従来のマイクロプロセッサとしては、例えば、マイクロ
プロセッサ内に多数のマイクロ命令を記憶する例えばμ
ROM (マイクロROM)を備え、与えられた命令を
デコードして、該当するマクロ命令のエントリアドレス
を発生し、このエントリアドレスによってμROMをア
クセスして、マイクロ命令を実行することによってマク
ロ命令を実行するものがある。pROM内に格納された
マイクロ命令には、次実行順位のマイクロ命令のエント
リアドレス(ネタストアドレス)が書き込まれており、
1つのマイクロ命令をアクセスすることで、他のいくつ
かのマイクロ命令を逐次に読み出すことができ、1つの
マクロ命令を実行できる。
例えば、1つのマクロ命令が(イ)〜(ニ)までの4つ
のマイクロ命令からなるとき、まず、デコーダからのエ
ントリアドレスによって(イ)がアクセスされ、次に、
(イ)に書き込まれたネタストアドレスによって(ロ)
がアクセスされ、次に、(ロ)に書き込まれたネタスト
アドレスによって(ハ)がアクセスされ・・・・・・最
後に(ニ)がアクセスされて、1つのマクロ命令の実行
を終了する。
〔発明が解決しようとする課題〕
しかしながら、このような従来のマイクロプロセッサに
あっては、デコーダからのマイクロエントリアドレスに
よって最初のマイクロ命令をアクセスし、このマイクロ
命令に続く次順位以下のマイクロ命令のアクセスをμR
OM内に書き込まれたネタストアドレスによって行う構
成となっていたため、各マクロ命令を実現するためのマ
イクロ命令がそのマクロ命令の専用となり、各マクロ命
令に共通のマイクロ命令があったとしても、このマイク
ロ命令を共有化することができなかった。
したがって、例えばn個のマイクロ命令がm個のマクロ
命令に共通であった場合には、nX(m−1)個に相当
する同一のマイクロ命令を余分に格納する必要があり、
それだけμROMの規模を増大させるといった問題点が
あった。
〔発明の目的〕
そこで、本発明は、各マクロ命令に共通するマイクロ命
令を各マクロ命令で共有することができ、μROM内の
マイクロ命令数を削減することを目的としている。
〔課題を解決するための手段〕
第1図は本発明に係るマイクロプロセッサの原理ブロッ
ク図である。
第1図において、マイクロプロセッサは、1つのマクロ
命令を複数のマイクロ命令により実行するマイクロプロ
セッサであって、いくつかのマクロ命令は、同一の共通
マイクロ命令を含むマイクロプロセッサにおいて、マク
ロ命令をデコードすると、当該マクロ命令に固有のマイ
クロ命令をエントリする固有マイクロエントリアドレス
を発生するとともに、当該マクロ命令が前記いくつかの
マクロ命令に該当するとき、前記共通マイクロ命令をエ
ントリする共通マイクロエントリアドレスを発生するマ
イクロエントリアドレス発生手段を備えて構成する。
〔作用〕
本発明では、1つのマクロ命令をデコードすると、その
マクロ命令に固有のマイクロエントリアドレスを発生し
、かつ、そのマクロ命令が他のマクロ命令と共通のマイ
クロ命令を含む特定の命令であった場合には、該共通の
マイクロ命令をアクセスするための共通マイクロエント
リアドレスを発生する。
したがって、上記共通のマイクロ命令を予めμROM内
の所定位置に格納しておけば、これらの共通マイクロ命
令をいくつかのマクロ命令で共有化でき、同一のマイク
ロ命令を格納することなく、μROMの規模を削減でき
る。
〔実施例〕
以下、本発明を図面に基づいて説明する。
第2〜8図は本発明に係るマイクロプロセッサの一実施
例を示す図であり、パイプライン制御を行うマイクロプ
ロセッサに適用した例である。
まず、構成を説明する。第2図において、マイクロプロ
セッサは、命令キュー1、デコーダ2、パイプライン制
御部3およびマイクロプログラム格納部(例えばμRO
M)4を含む命令制御部5と、アドレス発生部6、レジ
スタファイル7および演算部8を含む命令実行部9と、
命令アクセス制御部10およびオペランドアクセス制御
部11を含むメモリ制御部12と、バスブロックアクセ
ス監視制御部13、アドレスモニタリング制御部14お
よびデータ送受部15を含むバス制御部16とを備え、
本発明のポイントであるデコーダ2の具体的な構成は、
第3図に示される。
デコーダ2は、マイクロエントリアドレス発生手段とし
ての機能を有し、その構成は、命令キュー1から取り出
された命令(マクロ命令)の第1オペコードOP、をデ
コードする第1命令デコー1部17、第2オペコードO
P2をデコードする第2命令デコード部18、アドレッ
シングフィールドをデコードし、マクロ命令のデコード
位置を示すステージに関して、次のステージを示す次ス
テージ還移要求デコード部を含むアドレッシングデコー
ド部19、拡張部Bをデコードする付加モードデコード
部20、などの各デコード部17〜20を備えるととも
に、これらのデコード部17〜20の入・出力タイミイ
グを制御する入力側ラッチ21〜26および出力側ラッ
チ27〜30を備え、入力側ランチ21〜26はデコー
ドシーケンサ31力)らのステーシイ言分φ。
に従って動作し、出力側ランチ27〜30は、同じくデ
コードシーケンサ31からのステージ信号φ、に従って
動作する。また、32は第1命令デコード部17のデコ
ード結果あるいは第2命令デコード部18のデコード結
果を選択して第1エントリアドレスをマイクロプログラ
ム格納部4に出力するセレクタ、33は第2エントリア
ドレス生成回路、34は終了判定回路で、第2エントリ
アドレス生戒回路33は、第2命令デコード部18から
出力される例えば第4図に示す命令タグ(TAG)や、
アドレッシングデコード部19からのアドレッシング情
報(ADR3)および命令コード中のサイズ情報(31
2B)を受け、各命令に固有の例えば第6図に示す第2
エントリアドレスを生成する。終了判定回路34は、マ
イクロプログラム格納部4内の一連のマイクロ命令列の
読出し終了に伴って発生する終了指示信号をモニタし、
終了指示信号がアサートされると、セレクタ32および
第2エントリアドレス生成回路33を操作して第2エン
トリアドレス又は、次命令の第1エントリアドレスをマ
イクロプログラム格納部4に出力させる。
ここで、命令キュー1から取り出される命令のフォーマ
ットは、その命令コードが16ビツトを基本長(ハーフ
ワード:HW)とし、最大3つの基本部および基本部が
指定したモードに応じて追加される拡張部からなり、拡
張部はイミディエート、ディスプレースメントあるいは
付加モードである。
第7図は命令フォーマットを具体的に示す図で、第7図
(a)〜(C)の−船形と、第7図(d)〜D)の短縮
形とに分けられる。なお、図中OP、0P110P2は
オペコード部、Sはオペランドサイズ指定部、Aはオペ
ランド指定部、Bは拡張部、Rはレジスタ指定部、■は
即値(イミディエート部)、Dはディスプレースメント
部を表わしている。第7図(a)は、lオペランド(第
1オペランド部0PI)形の可変長命令で、拡張部Bは
16ビツトxn (nはOを含む整数)の長さで可変長
である。第7図(b)は2オペランド(第1オペランド
OP1と第2オペランド0P2)形の可変長命令で、同
様にして拡張部Bは16ビフト×nの長さで可変長であ
る。第7図(C)は、拡張オペランド形の可変長命令で
、イ逅デイエート部Iおよびディスプレースメント部り
を含む。
第7図(d)(e)は各々メモリ・レジスタ間の可変長
命令、第7図(r)はレジスタ・レジスタ間の命令〈例
えば16ビツト固定長)である。
第4図は、共通のマイクロ命令を含むいくつかの命令を
具体的に示すコード表で、コブロセソサ命令(COP)
に関するものである。第4図に示した命令種は、特に、
起動直後に実行される数サイクル分のマイクロ命令が他
の命令と共通命令である。本実施例では、これらの命令
種を各命令デコード部17〜20でデコードすると、2
つのエントリアドレスを発生するようにしている。すな
わち、デコード部17〜20で命令をデコードした結果
、その命令が、第4図に示す何れかの(マクロ)命令で
あるときには、まず第5図に従ってデコードされた第1
エントリアドレスを出力し、このアドレスで指定された
共通マイクロ命令が実行されたあと、第2エントリアド
レスを出力して、その(マクロ)命令に固有のマイクロ
命令を実行する。
第8図は本実施例のマイクロプロセッサの動作を示す図
である。第8図において、DCはデコードステージ、A
Cはアドレス計算ステージ、Mlはマイクロ読出しステ
ージ、OBは演算ステージ、OWは結果の書込ステージ
であり、各ステージはパイプライン処理される。
処理は次のようにして行われる。まず、DCで命令キュ
ー1からの命令を各デコーダに取込み(a)(b) 、
ACで各デコーダのデコード結果のうちTAGやADR
3などを第2エントリアドレス生戒回路33に入力しく
c)(d) 、MIIOでデコード結果の第1エントリ
アドレスをアドレスバス35に出力する(e)。これに
より、マイクロプログラム格納部4の共通マイクロ命令
がエントリされ、命令実行部9に転送される。そして、
ネタストアドレスがマイクロプログラム格納部4からア
ドレスバス35に読み出されてこのネクストアドレスに
従って次順位の共通マイクロ命令がマイクロプログラム
格納部4から読み出される。全ての共通マイクロ命令の
読出しを完了すると、終了指示(h)がアサートされる
。このアサートに従って第4図に示す命令を実行してい
た場合には、Mr20で、第2エントリアドレス生戒回
路33からの第2エントリアドレスをアドレスバス35
に出力し、この第2エントリアドレスにより、そのとき
の命令(DCでデコードした命令)に固有のマイクロ命
令がマイクロプログラム格納部4から読み出され、命令
実行部9に転送される。以降、マイクロプログラム格納
部4からのネタストアドレスに従って固有のマイクロ命
令が命令実行部9に転送され、実行される。
このように、本実施例では、DCで1つの(マクロ)命
令をデコードしたときに、その命令が第4図に示した命
令の何れかの命令であるとき、共通マイクロ命令のエン
トリアドレス(第1エントリアドレス)を発生し、その
後、共通マイクロ命令の終了に伴ってその(マクロ)命
令固有のエントリアドレス(第2エントリアドレス)を
発生するようにしたので、マイクロプログラム格納部4
内に格納する多数のマイクロ命令のうち、いくつかのマ
クロ命令に共通するマイクロ命令を、各マクロ命令で共
有することができ、したがって、同じマイクロ命令を重
複してマイクロプログラム格納部4に記憶する必要がな
くなり、マイクロプログラム格納部4内のマイクロ命令
数を削減することができる。
〔発明の効果〕
本発明によれば、各マクロ命令に共通するマイクロ命令
を各マクロ命令で共有することができ、μROM内のマ
イクロ命令数を削減することができる。
【図面の簡単な説明】
第1図は本発明の原理ブロック図、 第2〜8図は本発明に係るマイクロプロセンサの一実施
例を示す図であり、 第2図はその全体の構成図、 第3図はそのデコーダの構成図、 第4図はその起動直後の数サイクルが共通の命令を示す
図、 第5図はその第1エントリアドレス生戒のためのデコー
ドフォーマットを示す図、 第6図はその第2エントリアドレスを示す図、第7図は
その命令フォーマントを示す図、第8図はその処理動作
を説明するタイミングチャートである。 2・・・・・・デコーダ(マイクロエントリアドレス発
生手段)。 第2エントリアドレスを示す図 第6図

Claims (1)

  1. 【特許請求の範囲】 1つのマクロ命令を複数のマイクロ命令により実行する
    マイクロプロセッサであって、いくつかのマクロ命令は
    、同一の共通マイクロ命令を含むマイクロプロセッサに
    おいて、 マクロ命令をデコードすると、当該マクロ命令に固有の
    マイクロ命令をエントリする固有マイクロエントリアド
    レスを発生するとともに、 当該マクロ命令が前記いくつかのマクロ命令に該当する
    とき、前記共通マイクロ命令をエントリする共通マイク
    ロエントリアドレスを発生するマイクロエントリアドレ
    ス発生手段を備えることを特徴とするマイクロプロセッ
    サ。
JP20300089A 1989-08-04 1989-08-04 マイクロプロセッサ Pending JPH0367331A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP20300089A JPH0367331A (ja) 1989-08-04 1989-08-04 マイクロプロセッサ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP20300089A JPH0367331A (ja) 1989-08-04 1989-08-04 マイクロプロセッサ

Publications (1)

Publication Number Publication Date
JPH0367331A true JPH0367331A (ja) 1991-03-22

Family

ID=16466670

Family Applications (1)

Application Number Title Priority Date Filing Date
JP20300089A Pending JPH0367331A (ja) 1989-08-04 1989-08-04 マイクロプロセッサ

Country Status (1)

Country Link
JP (1) JPH0367331A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013137298A (ja) * 2011-11-29 2013-07-11 Rigaku Corp X線分析装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59225451A (ja) * 1983-06-03 1984-12-18 Nec Corp マイクロプログラム制御装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS59225451A (ja) * 1983-06-03 1984-12-18 Nec Corp マイクロプログラム制御装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013137298A (ja) * 2011-11-29 2013-07-11 Rigaku Corp X線分析装置

Similar Documents

Publication Publication Date Title
KR100327778B1 (ko) 다중명령 세트를 이용한 데이터 프로세싱 방법
JP2651218B2 (ja) フレキシブルasicマイクロコンピュータ
JP2616182B2 (ja) データ処理装置
EP0782071A2 (en) Data processor
US4897787A (en) Data processing system
JPS6339931B2 (ja)
KR20130016246A (ko) 다중 명령 세트에 의해 사용되는 레지스터 간의 매핑
JPH0827716B2 (ja) データ処理装置及びデータ処理方法
TW201530320A (zh) 資料處理裝置及半導體積體電路裝置
US4945511A (en) Improved pipelined processor with two stage decoder for exchanging register values for similar operand instructions
JPH0810428B2 (ja) データ処理装置
US4347566A (en) Data processor with register file and arithmetic logic circuit on one chip and register means directly connected to the chip
JPS645330B2 (ja)
US5185870A (en) System to determine if modification of first macroinstruction to execute in fewer clock cycles
JP2556182B2 (ja) デ−タ処理装置
JP2680828B2 (ja) ディジタル装置
JPH0367331A (ja) マイクロプロセッサ
JPS6217773B2 (ja)
JPS63268033A (ja) データ処理装置
JP2511151B2 (ja) デ―タ処理装置
US5187782A (en) Data processing system
JPS6057435A (ja) マイクロプロセツサ
JP2583506B2 (ja) データ処理装置
US5463747A (en) Microprogram data processor processing operand address calculation and instruction execution with common hardware
JPS6155130B2 (ja)