JPH0520053A - マイクロプロセツサ - Google Patents

マイクロプロセツサ

Info

Publication number
JPH0520053A
JPH0520053A JP19481391A JP19481391A JPH0520053A JP H0520053 A JPH0520053 A JP H0520053A JP 19481391 A JP19481391 A JP 19481391A JP 19481391 A JP19481391 A JP 19481391A JP H0520053 A JPH0520053 A JP H0520053A
Authority
JP
Japan
Prior art keywords
address
micro
microinstruction
register
instruction
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
JP19481391A
Other languages
English (en)
Inventor
Katsunori Suzuki
勝則 鈴木
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP19481391A priority Critical patent/JPH0520053A/ja
Publication of JPH0520053A publication Critical patent/JPH0520053A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】 命令デコーダの回路変更を必要とせずに新規
の命令を追加したり、命令の機能を拡張や変更したりす
ることを可能にする。 【構成】 内蔵キャッシュ43に予め拡張マイクロ命令
を登録しておき、マスクアドレスレジスタ14のマスク
アドレスとマイクロアドレスバス12のマイクロアドレ
スとは比較回路17で比較され、この比較結果によって
マイクロROM1の出力と内蔵キャッシュ43の出力と
の何れかがマイクロ命令出力選択回路38で選択され出
力される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明はマイクロ命令により演
算処理を制御する方式のマイクロプロセッサに関し、特
にマイクロ命令の機能を切り換える手段に関するもので
ある。
【0002】
【従来の技術】図2は従来のマイクロプロセッサに備え
られるマイクロプログラム制御装置の構成を示すブロッ
ク図である。図2において、1はマイクロ命令を記憶す
るマイクロ命令記憶手段としてのマイクロROM、2は
マイクロROM1から読み出されたマイクロ命令、3は
マイクロ命令2を保持するマイクロ命令レジスタ、13
はマイクロ命令2のうち演算器を制御する演算制御マイ
クロ命令、4は演算制御マイクロ命令13をデコードす
るマイクロデコーダ、5はマイクロデコーダ4によって
デコードされた制御信号、6はマイクロ命令2が格納さ
れているエントリを指定するマイクロアドレス、7はマ
イクロアドレス6を格納するマイクロポインタ、8はマ
イクロポインタ7に格納されているマイクロアドレスを
+1するインクリメンタ、9はマイクロ命令2のうち次
のマイクロアドレスを指定するマイクロ次アドレス、1
0はマイクロ次アドレス9を格納するマイクロ次アドレ
スレジスタ、11はマイクロ命令でサブルーチンを実行
する場合の戻り先のマイクロアドレスを格納するマイク
ロスタックレジスタ、12はマイクロROM1をアクセ
スするためのマイクロアドレスをマイクロポインタ7に
格納するためのマイクロアドレスバスである。
【0003】次に、従来のマイクロプログラム制御装置
の動作について説明する。まず、マイクロ命令について
簡単に説明する。一つのマイクロ命令は演算器を制御す
る部分と、次のマイクロ命令の読み出しを制御する部分
とに分けられる。次のマイクロ命令の読み出しを制御す
る部分には、次のマイクロアドレスのマイクロ命令を読
み出す、指定されたマイクロアドレスへジヤンプする、
サブルーチンへジャンプする、サブルーチンへ戻ること
などを示すオペレーションがある。演算器を制御する部
分には、転送、加算、減算などがある。
【0004】命令コードは図示しない外部メモリからフ
ェッチされ、図示しない命令デコーダで解読される。デ
コード結果によってその命令の演算を実現するためのマ
イクロアドレスが生成される。このマイクロアドレスは
マイクロアドレスバス12に出力されマイクロポインタ
7に格納される。マイクロポインタ7に格納されたマイ
クロアドレス6によってマイクロROM1がアクセスさ
れマイクロアドレス6に対応するマイクロ命令2がマイ
クロROM1から出力されマイクロ命令レジスタ3に格
納される。
【0005】次のマイクロアドレスのマイクロ命令を実
行する場合、即ちマイクロ命令が分岐しない場合、一つ
の命令が一つのマイクロ命令で処理される場合には、マ
イクロ命令2の演算器を制御する部分(演算制御マイク
ロ命令13)はマイクロ命令レジスタ3からマイクロデ
コーダ4に入力されマイクロデコーダ4でデコードされ
演算器などを制御する制御信号5を生成する。そして、
次の命令を処理するためのマイクロアドレス6がマイク
ロアドレスバス12からマイクロポインタ7に入力され
マイクロROM1から新たなマイクロ命令2を読み出
す。
【0006】一つの命令が複数のマイクロ命令で処理さ
れる場合には、マイクロROM1からのマイクロ命令2
が読み出されマイクロ命令レジスタ3に保持される。と
同時にマイクロインクリメンタ8によってマイクロポイ
ンタ7のマイクロアドレスは+1される。+1されたマ
イクロアドレスはマイクロポインタ7に格納される。こ
の+1されたマイクロアドレス6によってマイクロRO
M1から次のマイクロ命令2の読み出しを行う。
【0007】マイクロ命令2が分岐を示す場合には、マ
イクロ命令レジスタ3に保持されたマイクロ命令2のう
ちマイクロ次アドレス9をマイクロ次アドレスレジスタ
10に入力する。と同時に演算制御マイクロ命令13は
マイクロ命令レジスタ3からマイクロデコーダ4に入力
される。マイクロデコーダ4では前記同様制御信号5を
生成する。マイクロポインタ7にはマイクロアドレスバ
ス12を通してマイクロ次アドレスレジスタ10からマ
イクロ次アドレスが転送される。この時のマイクロポイ
ンタ7によるマイクロアドレス6で次のマイクロ命令2
をマイクロROM1から読み出す。
【0008】マイクロ命令2がサブルーチン分岐を示す
場合には、マイクロ命令レジスタ3に保持されたマイク
ロ命令のうちマイクロ次アドレス9をマイクロ次アドレ
スレジスタ10に入力する。と同時に演算制御マイクロ
命令13はマイクロ命令レジスタ3からマイクロデコー
ダ4に入力される。さらに、マイクロポインタ7のマイ
クロアドレス6はマイクロインクリメンタ8で+1され
マイクロサブルーチンの戻り先アドレスとしてマイクロ
スタックレジスタ11に格納される。マイクロデコーダ
4では前記同様制御信号5を生成する。マイクロポイン
タ7にはマイクロアドレスバス12を通してマイクロ次
アドレスレジスタ10からマイクロ次アドレスが転送さ
れる。このときのマイクロポインタ7によるマイクロア
ドレス6で次のマイクロ命令2をマイクロROM1から
読み出す。
【0009】マイクロ命令2がマイクロサブルーチンか
らの戻りを示す場合には、次のマイクロアドレスとして
サブルーチンの戻り先アドレスをマイクロスタックレジ
スタ11からマイクロアドレスバス12を通してマイク
ロポインタ7に格納する。このときのマイクロポインタ
7によるマイクロアドレス6でマイクロROM1から次
のマイクロ命令2の読み出しを行う。
【0010】
【発明が解決しようとする課題】以上のようなマイクロ
プログラム制御装置を備えた従来のマイクロプロセッサ
では、マイクロROMにのみ記憶されたマイクロ命令を
読み出して実行するように構成されているので、新規の
命令の追加や、命令の持つ機能を拡張や変更する場合は
マイクロROMを追加する必要があり、そして、その追
加マイクロROMのマイクロアドレスが生成できるよう
にするために命令デコーダの大幅な回路変更が生じ、開
発期間が長くかかるという問題点があった。
【0011】この発明は上記のような問題点を解決する
ためになされたもので、命令デコーダの回路変更を必要
とせずに新規の命令を追加したり、命令の機能を拡張や
変更したりすることができるマイクロプロセッサを提供
することを目的とする。
【0012】
【課題を解決するための手段】この発明に係るマイクロ
プロセッサは、内蔵キャッシュ43にマイクロ命令を拡
張した拡張マイクロ命令を予め登録しておき、マイクロ
命令を記憶するマイクロ命令記憶手段(マイクロROM
1)と、このマイクロ命令記憶手段をアクセスするため
のマイクロアドレスを保持するマイクロポインタ7と、
上記マイクロ命令や拡張マイクロ命令をマスクするため
のマスクアドレスを記憶するマスクアドレス記憶手段
(マスクアドレスレジスタ14)と、上記マスクアドレ
スと上記マイクロアドレスを比較するアドレス比較手段
(比較回路17)と、上記マイクロアドレスを内蔵キャ
ッシュ43に登録されている拡張マイクロ命令のアドレ
スに変換するためのオフセット値を記憶するオフセット
アドレス記憶手段(オフセットアドレスレジスタ15)
と、上記マイクロアドレスと上記オフセット値を加算し
て上記登録されている拡張マイクロ命令のアドレスを出
力する加算手段(加算回路18)と、上記アドレス比較
手段の出力によって上記マイクロ命令記憶手段の出力と
上記内蔵キャッシュ43の出力との何れかを選択するマ
イクロ命令出力選択手段(マイクロ命令出力選択回路3
8)と、内蔵キャッシュ43に入力される上記加算手段
の出力であるアドレスなどを上記アドレス比較手段の出
力によって選択するアドレス入力選択手段(アドレス入
力選択回路22)とを備えたものである。また、上記内
蔵キャッシュ43に拡張マイクロ命令が登録されている
場合に該拡張マイクロ命令が登録されていることを示す
マイクロ命令登録表示手段(イネーブルビット29)
と、このマイクロ命令登録表示手段を設定制御するマイ
クロ命令登録制御手段(マイクロ命令登録制御レジスタ
16)とを備えたものである。
【0013】
【作用】マイクロアドレスとマスクアドレスとの比較結
果によって内蔵キャッシュ43に登録された拡張マイク
ロ命令は呼び出され、マイクロ命令記憶手段(マイクロ
ROM1)の出力であるマイクロ命令から内蔵キャッシ
ュ43の拡張マイクロ命令に切り換えられる。また、内
蔵キャッシュ43に拡張マイクロ命令を登録し、マイク
ロ命令登録表示手段(イネーブルビット29)をセット
しておくと、登録された拡張マイクロ命令はリプレース
されない。
【0014】
【実施例】図1はこの発明の一実施例に係るマイクロプ
ロセッサに備えられるマイクロプログラム制御装置の構
成を示すブロック図である。図1において、図2に示す
構成要素に対応するものには同一の符号を付し、その説
明を省略する。この実施例では、マイクロROM1の出
力のビット数と内蔵キャッシュ43のエントリのデータ
のビット数とが異なる場合について説明する。そのた
め、マイクロROM1から出力されるマイクロ命令2を
フィールドに分割したマイクロ命令フィールドをそれぞ
れ2aと2bとし、また、マイクロ命令2のフィールド
置き換え後の置換マイクロ命令フィールドを2cとし
た。
【0015】図1において、14はマイクロ命令や拡張
マイクロ命令をマスクするためのマスクアドレスを記憶
するマスクアドレス記憶手段としてのマスクアドレスレ
ジスタ、17はマスクアドレスレジスタ14からのマス
クアドレスとマイクロアドレスバス12からのマイクロ
アドレスとを比較するアドレス比較手段としての比較回
路、15はマイクロアドレスを内蔵キャッシュ43に登
録されている拡張マイクロ命令のアドレスに変換するた
めのオフセット値を記憶するオフセットアドレス記憶手
段としてのオフセットアドレスレジスタ、18はマイク
ロアドレスバス12からのマイクロアドレスと上記オフ
セット値とを加算して内蔵キャッシュ43に登録されて
いる拡張マイクロ命令のアドレスを出力する加算手段と
しての加算回路、19は加算回路18の加算結果出力で
ある拡張マイクロ命令の登録アドレス、20は内蔵キャ
ッシュ43に登録或いは検索するデータのアドレス、2
1は比較回路17の結果を示す制御信号、22は内蔵キ
ャッシュ43の登録或いは検索アドレスを選択するアド
レス入力選択手段としてのアドレス入力選択回路、23
は内蔵キャッシュ43に登録されているデータのアドレ
スインデックスを検索するためのアドレスを格納する検
索レジスタ、23aは検索レジスタ23のインデックス
部分、24は内蔵キャッシュ43に登録されているデー
タのアドレスタグを比較するためのアドレスを格納する
比較レジスタ、24aは比較レジスタ24のアドレスタ
グ部分、25は内蔵キャッシュ43に登録するデータの
アドレスを格納する登録レジスタ、25aは登録レジス
タ25のアドレスタグ部分、25bは登録レジスタ25
のインデックス部分、26は検索レジスタ23のインデ
ックス23aと登録レジスタ25のインデックス25b
を選択するインデックス選択回路、27はマイクロ命令
登録制御レジスタ16から出力される制御信号、28は
内蔵キャッシュ43のアドレスタグ登録部、29は内蔵
キャッシュ43に登録されたデータがマイクロ命令であ
ることを示すマイクロ命令登録表示手段としてのイネー
ブルビット、16は内蔵キャッシュ43へのデータ登録
時に登録されたデータがマイクロ命令であることを示す
イネーブルビット29を制御するマイクロ命令登録制御
手段としてのマイクロ命令登録制御レジスタ、30は内
蔵キャッシュ43の登録データ、31は内蔵キャッシュ
43の1つのエントリを示すキャッシュポインタ、32
はキャッシュポインタ31が示すエントリ、33はエン
トリ32に対するエントリ出力、33aはエントリ出力
33のアドレスタグ部分、33bはエントリ出力33の
イネーブルビット部分、33cはエントリ出力33のデ
ータ部分、34は比較レジスタ24のアドレスタグ部分
24aとエントリ出力33のアドレスタグ部分33aの
比較を行うタグコンパレータ、35はタグコンパレータ
34の出力結果でヒット信号、36はエントリ33のデ
ータ出力レジスタ、38はマイクロ命令のフィールド2
bとエントリ33のデータ出力レジスタ36の出力を選
択するマイクロ命令出力選択手段としてのマイクロ命令
出力選択回路、39は内蔵キャッシュ43に登録するデ
ータを格納するデータ入力レジスタ、40はマスクアド
レスレジスタ14,オフセットアドレスレジスタ15,
マイクロ命令登録制御レジスタ16にデータを転送する
ためのS1バス、41はアドレス入力選択回路22にア
ドレスを転送するためのCAバス、42はデータレジス
タ39にデータを転送するためのDDバス、43は上述
したようにマイクロプロセッサの内部に登載されている
内蔵キャッシュを示す。
【0016】まず、通常動作の内蔵キャッシュ43の動
作について説明する。CAバス41から内蔵キャッシュ
43に登録されているデータを検索するためのアドレス
20がアドレス入力選択回路22を経て検索レジスタ2
3に格納される。通常の動作ではアドレス入力選択回路
22はCAバス41からのアドレス20を選択する。格
納された検索レジスタ23のインデックス23aはイン
デックス選択回路26を経てキャッシュポインタ31に
入力され、特定のエントリ32を選択する。次に、検索
レジスタ23に格納されたアドレスは比較レジスタ24
に転送される。転送後、空となった検索レジスタ23は
次に検索するためのアドレスがCAバス41から転送さ
れる。比較レジスタ24のアドレスタグ部分24aはタ
グコンパレータ34に入力され選択されたエントリ32
のエントリ出力33のアドレスタグ部分33aと比較さ
れる。比較した結果一致した時にはヒット信号35とし
て出力され、不一致(ミスヒット)のときにはヒット信
号35は出力されない。ヒットした時にはデータ出力レ
ジスタ36の値が図に記載されていない命令デコーダ部
に転送される。
【0017】一方、ミスヒットの時にはデータ出力レジ
スタ36の値が命令デコーダ部に転送されず、以下の動
作に移る。格納されている比較レジスタ24の内容を登
録レジスタ25に転送し、登録レジスタ25のアドレス
を基に外部メモリにデータをアクセスする。外部メモリ
からのデータはDDバス42を経てデータ入力レジスタ
39に格納される。データ入力レジスタ39に格納され
たデータは登録レジスタ25のアドレスタグ部分25a
と一緒にキャッシュポインタ31が示すエントリ32に
登録される。その際、キャッシュポインタ31の制御は
インデックス選択回路26で選択されたインデックス2
5cを参照して行う。一方、登録レジスタ25に転送し
て空になった比較レジスタ24には次の比較データのア
ドレスが検索レジスタ23から転送されてくる。但し、
内蔵キャッシュ43に登録する際、選択されたエントリ
32のイネーブルビット29がセットされている時に
は、比較動作時に出力したイネーブルビット部33bで
キャッシュポインタ31を制御し、登録動作時のエント
リ32へのアドレスタグ及びデータの書き込みを禁止す
る。イネーブルビット29による書き込み禁止により、
内蔵キャッシュ43の通常動作時に登録された拡張マイ
クロ命令がリプレースされることを防いでいる。
【0018】次に、内蔵キャッシュ43への拡張マイク
ロ命令の登録方法について説明する。但し、内蔵キャッ
シュ43に登録できるエントリのデータ30のビット幅
がマイクロROM1から出力されるマイクロ命令2のビ
ット幅より小さい場合には、マイクロ命令の特定フィー
ルドを内蔵キャッシュ43に登録し、そのフィールドを
マイクロROM出力のマイクロ命令フィールドと置き換
えることになる。内蔵キャッシュ43への拡張マイクロ
命令フィールドの登録はブート時にLDC命令を用いて
行う。このLDC命令は制御レジスタにデータをロード
する命令であり、制御レジスタとしてマスクアドレスレ
ジスタ14、オフセットアドレスレジスタ15、マイク
ロ命令登録制御レジスタ16及び内蔵キャッシュ43の
各エントリを予め登録しておく。まず、ブート処理中に
LDC命令を用いてマスクアドレスレジスタ14、オフ
セットアドレスレジスタ15、マスク命令登録制御レジ
スタ16をそれぞれセットする。マスクアドレスレジス
タ14には拡張マイクロ命令アドレスの先頭アドレスを
格納することで、この先頭アドレス以降を全て拡張マイ
クロ命令アドレスとする。また、オフセットアドレスレ
ジスタ15にはマスクアドレス値を内蔵キャッシュ43
に登録されている拡張マイクロ命令の登録アドレスに変
換するためのオフセット値を格納する。マスク命令登録
制御レジスタ16のセット後、LDC命令を用いて内蔵
キャッシュ43の特定のエントリに拡張マイクロ命令フ
ィールドをセットする。その際、マイクロ命令登録制御
レジスタ16からの制御信号27を受けて拡張マイクロ
命令のフィールドが登録されたエントリのイネーブルビ
ット29をセットする。拡張マイクロ命令フィールドの
登録が終了した時点で、再びLDC命令を用いてマイク
ロ命令登録制御レジスタ16をリセットし、一連の拡張
マイクロ命令のフィールド登録動作を完了する。
【0019】上記のようにブート処理中に内蔵キャッシ
ュ43に拡張マイクロ命令のフィールドを登録した後、
通常の命令処理に入る。まず、命令コードが図示されて
いない外部メモリよりフェッチされ、図示されていない
命令デコーダで解読される。デコード結果によってその
命令の演算を実現するためのマイクロ命令に対するマイ
クロアドレスを生成する。このマイクロアドレスはマイ
クロアドレスバス12に出力される。このマイクロアド
レスとマスクアドレスレジスタ14は毎回比較回路17
によって比較される。比較の結果が不一致の場合、マイ
クロアドレスはマイクロポインタ7に入力され、マイク
ロポインタ7はマイクロアドレスに対するマイクロ命令
が登録されているエントリを選択してマイクロROM1
からマイクロ命令フィールド2a,2bを出力する。比
較回路17の出力制御信号21によってマイクロ命令出
力選択回路38は入力されたマイクロ命令フィールド2
bを選択し、マイクロ命令レジスタ3に出力する。マイ
クロ命令フィールド2aとマイクロ命令出力選択回路3
8からの出力を合わせて演算制御マイクロ命令13とし
てマイクロデコーダ4に入力する。
【0020】一方、比較回路17の結果が一致の場合、
マイクロアドレスがマイクロポインタ7に入力されると
同時に、比較回路17の出力制御信号21に従ってマイ
クロアドレスバス12にロードされている値とオフセッ
トアドレスレジスタ15を加算回路18によって内蔵キ
ャッシュ43に登録されている拡張マイクロ命令登録ア
ドレス19を計算し、アドレス入力選択回路22に転送
する。制御信号21に従ってアドレス入力選択回路22
は拡張マイクロ命令登録アドレス19の入力を選択す
る。選択された拡張マイクロ命令登録アドレス19は通
常の内蔵キャッシュ43の動作と同様に検索レジスタ2
3に転送され、インデックス23aはインデックス選択
回路26を経てキャッシュポインタ31に入力される。
その後検索レジスタ23の内容は比較レジスタ24に転
送され、アドレスタグ24aはタグコンパレータ34に
入力される。空になった検索レジスタ23には次に検索
すべきアドレスが入力される。キャッシュポインタ31
によって選択されたエントリ32から出力されたエント
リ出力33のデータ出力レジスタ36の出力はマイクロ
命令出力選択回路38に入力される。マイクロ命令出力
選択回路38は比較回路17からの制御信号21によっ
て内蔵キャッシュ43からのデータ出力レジスタ36の
出力を選択する。以上のようにマイクロ命令出力選択回
路38によってマイクロROM1から出力されたマイク
ロ命令フィールド2bが内蔵キャッシュ43からのデー
タ出力レジスタ36の値に置換されてマイクロ命令レジ
スタ3に入力される。
【0021】次のマイクロアドレスのマイクロ命令を実
行する場合、即ちマイクロ命令が分岐しない場合、一つ
の命令が一つのマイクロ命令で処理される場合,マイク
ロ命令2のうち演算制御マイクロ命令13はマイクロ命
令レジスタ3からマイクロデコーダ4に入力されマイク
ロデコーダ4でデコードされ演算器などを制御する制御
信号5を生成する。そして、次の命令を処理するための
マイクロアドレスが図示されていない命令デコーダから
マイクロアドレスバス12に出力される。このマイクロ
アドレスとマスクアドレスレジスタ14の内容が比較回
路17で比較される。
【0022】一つの命令が複数のマイクロ命令で処理さ
れる場合、置換されたマイクロ命令がマイクロ命令レジ
スタ3に入力され、マイクロデコーダ4の出力制御信号
5によってマイクロインクリメンタ8がマイクロポイン
タ7のマイクロアドレスを+1する。+1されたマイク
ロアドレスはマイクロアドレスバス12にロードされ、
新たにマイクロポインタ7に格納される。マイクロRO
M1はこの+1されたマイクロアドレス6によって次の
マイクロ命令2の読み出しを行う。同時に+1されたマ
イクロアドレスはマイクロアドレスバス12を経て比較
回路17と加算回路18にも入力される。比較回路17
の結果以後の動作は前述と同様である。
【0023】マイクロ命令2が分岐を示す場合、マイク
ロ命令レジスタ3に保持されたマイクロ命令2のうちマ
イクロ次アドレス9をマイクロ次アドレスレジスタ10
に入力する。と同時に演算制御マイクロ命令13はマイ
クロ命令レジスタ3からマイクロデコーダ4に入力され
る。マイクロデコーダ4では前記同様制御信号5を生成
する。次のステップで、マイクロ次アドレスレジスタ1
0に格納されたマイクロアドレスがマイクロアドレスバ
ス12に出力される。マイクロアドレスバス12のマイ
クロアドレスはマイクロポインタ7に入力されて、マイ
クロROM1はマイクロアドレス6の示す次のマイクロ
命令2の読み出しを行う。同時にマイクロアドレスバス
12にロードされたマイクロアドレスは比較回路17と
加算回路18にも入力され、マスクアドレスレジスタ1
4の内容と比較される。比較回路17の結果以後の動作
は前述と同様である。
【0024】マイクロ命令2がサブルーチン分岐を示す
場合、マイクロ命令レジスタ3に保持されたマイクロ命
令のうちマイクロ次アドレス9をマイクロ次アドレスレ
ジスタ10に入力する。と同時に演算制御マイクロ命令
13はマイクロ命令レジスタ3からマイクロデコーダ4
に入力される。さらに、マイクロポインタ7のマイクロ
アドレス6はマイクロインクリメンタ8で+1されマイ
クロサブルーチンの戻り先アドレスとしてマイクロスタ
ックレジスタ11に格納される。マイクロデコーダ4で
は前記同様制御信号5を生成する。次のステップで、マ
イクロ次アドレスレジスタ10に格納されたマイクロア
ドレスがマイクロアドレスバス12に出力される。マイ
クロアドレスバス12にロードされたマイクロアドレス
は比較回路17と加算回路18にも入力され、マスクア
ドレスレジスタ14の内容と比較される。比較回路17
の結果以後の動作は前述と同様である。
【0025】マイクロ命令2がマイクロサブルーチンか
らの戻りを示す場合、演算制御マイクロ命令13はマイ
クロ命令レジスタ3からマイクロデコーダ4に入力され
る。マイクロデコーダ4では前記同様制御信号5を生成
する。次のステップで、次のマイクロアドレスとしてサ
ブルーチンの戻り先アドレスをマイクロスタックレジス
タ11からマイクロアドレスバス12に出力する。マイ
クロアドレスバス12はマイクロポインタ7に入力され
てマイクロROM1はマイクロアドレス6の示す次のマ
イクロ命令2の読み出しを行う。マイクロアドレスバス
12にロードされたマイクロアドレスは比較回路17と
加算回路18にも入力され、マスクアドレスレジスタ1
4の内容と比較される。比較回路17の結果以後の動作
は前述と同様である。
【0026】
【発明の効果】以上のように本発明によれば、内蔵キャ
ッシュに予め拡張マイクロ命令を登録しておき、マイク
ロアドレスとマスクアドレスとの比較結果によって、内
蔵キャッシュに登録された拡張マイクロ命令を呼び出
し、マイクロ命令記憶手段のマイクロ命令を内蔵キャッ
シュの拡張マイクロ命令に切り換える構成としたので、
特定のマイクロ命令を拡張マイクロ命令に容易に置換で
き、また拡張マイクロ命令のテストも容易にでき、した
がって命令デコーダの回路変更を必要とせずに新規の命
令を追加したり、命令の機能を拡張や変更したりするこ
とができ、開発期間を短縮できるという効果が得られ
る。また、マイクロ命令登録表示手段を設けたことによ
り内蔵キャッシュに登録された拡張マイクロ命令はリプ
レースされることなく、したがって上記効果を容易に達
成するために役立つ。
【図面の簡単な説明】
【図1】この発明の一実施例に係るマイクロプロセッサ
のマイクロプログラム制御装置のブロック図である。
【図2】従来のマイクロプロセッサのマイクロプログラ
ム制御装置のブロック図である。
【符号の説明】
1 マイクロROM(マイクロ命令記憶手段) 7 マイクロポインタ 14 マスクアドレスレジスタ(マスクアドレス記憶手
段) 15 オフセットアドレスレジスタ(オフセットアドレ
ス記憶手段) 16 マイクロ命令登録制御レジスタ(マイクロ命令登
録制御手段) 17 比較回路(アドレス比較手段) 18 加算回路(加算手段) 22 アドレス入力選択回路(アドレス入力選択手段) 29 イネーブルビット(マイクロ命令登録表示手段) 38 マイクロ命令出力選択回路(マイクロ命令出力選
択手段) 43 内蔵キャッシュ
─────────────────────────────────────────────────────
【手続補正書】
【提出日】平成4年4月6日
【手続補正1】
【補正対象書類名】明細書
【補正対象項目名】特許請求の範囲
【補正方法】変更
【補正内容】
【特許請求の範囲】
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0012
【補正方法】変更
【補正内容】
【0012】
【課題を解決するための手段】この発明に係るマイクロ
プロセッサは、内蔵キャッシュ43にマイクロ命令を拡
張した拡張マイクロ命令を予め登録しておき、マイクロ
命令を記憶するマイクロ命令記憶手段(マイクロROM
1)と、このマイクロ命令記憶手段をアクセスするため
のマイクロアドレスを保持するマイクロポインタ7と、
上記マイクロ命令や拡張マイクロ命令をマスクするため
のマスクアドレスを記憶するマスクアドレス記憶手段
(マスクアドレスレジスタ14)と、上記マスクアドレ
スと上記マイクロアドレスを比較するアドレス比較手段
(比較回路17)と、上記マイクロアドレスを内蔵キャ
ッシュ43に登録されている拡張マイクロ命令のアドレ
スに変換するためのオフセット値を記憶するオフセット
アドレス記憶手段(オフセットアドレスレジスタ15)
と、上記マイクロアドレスと上記オフセット値を加算し
て上記登録されている拡張マイクロ命令のアドレスを出
力する加算手段(加算回路18)と、上記アドレス比較
手段の出力によって上記マイクロ命令記憶手段の出力と
上記内蔵キャッシュ43の出力との何れかを選択するマ
イクロ命令出力選択手段(マイクロ命令出力選択回路3
8)と、内蔵キャッシュ43に入力される上記加算手段
の出力であるアドレスを上記アドレス比較手段の出力に
よって選択するアドレス入力選択手段(アドレス入力選
択回路22)とを備えたものである。また、上記内蔵キ
ャッシュ43に拡張マイクロ命令が登録されている場合
に該拡張マイクロ命令が登録されていることを示すマイ
クロ命令登録表示手段(イネーブルビット29)と、こ
のマイクロ命令登録表示手段を設定制御するマイクロ命
令登録制御手段(マイクロ命令登録制御レジスタ16)
とを備えたものである。
【手続補正3】
【補正対象書類名】明細書
【補正対象項目名】0013
【補正方法】変更
【補正内容】
【0013】
【作用】マイクロアドレスとマスクアドレスとの比較結
果によって内蔵キャッシュ43に登録された拡張マイク
ロ命令呼び出され、マイクロ命令記憶手段(マイクロ
ROM1)の出力であるマイクロ命令から内蔵キャッシ
ュ43の拡張マイクロ命令に切り換えられる。また、内
蔵キャッシュ43に拡張マイクロ命令を登録し、マイク
ロ命令登録表示手段(イネーブルビット29)をセット
しておくと、登録された拡張マイクロ命令はリプレース
されない。

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 内蔵キャッシュを備えマイクロ命令によ
    り演算処理を制御する方式のマイクロプロセッサにおい
    て、上記内蔵キャッシュにマイクロ命令を拡張した拡張
    マイクロ命令を予め登録しておき、上記マイクロ命令を
    記憶するマイクロ命令記憶手段と、このマイクロ命令記
    憶手段をアクセスするためのマイクロアドレスを保持す
    るマイクロポインタと、上記マイクロ命令や、予め内蔵
    キャッシュに登録された機能拡張や機能変更の拡張マイ
    クロ命令をマスクするためのマスクアドレスを記憶する
    マスクアドレス記憶手段と、上記マスクアドレスと上記
    マイクロアドレスを比較するアドレス比較手段と、上記
    マイクロアドレスを上記内蔵キャッシュに登録されてい
    る拡張マイクロ命令のアドレスに変換するためのオフセ
    ット値を記憶するオフセットアドレス記憶手段と、上記
    マイクロアドレスと上記オフセット値を加算して上記登
    録されている拡張マイクロ命令のアドレスを出力する加
    算手段と、上記アドレス比較手段の出力によって上記マ
    イクロ命令記憶手段の出力と上記内蔵キャッシュの出力
    との何れかを選択するマイクロ命令出力選択手段と、上
    記内蔵キャッシュに入力される上記加算手段の出力であ
    るアドレスなどを上記アドレス比較手段の出力によって
    選択するアドレス入力選択手段を備えたことを特徴とす
    るマイクロプロセッサ。
  2. 【請求項2】 内蔵キャッシュに拡張マイクロ命令が登
    録されている場合に、該拡張マイクロ命令が登録されて
    いることを示すマイクロ命令登録表示手段と、このマイ
    クロ命令登録表示手段を設定制御するマイクロ命令登録
    制御手段とを備えたことを特徴とする請求項1のマイク
    ロプロセッサ。
JP19481391A 1991-07-09 1991-07-09 マイクロプロセツサ Pending JPH0520053A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP19481391A JPH0520053A (ja) 1991-07-09 1991-07-09 マイクロプロセツサ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP19481391A JPH0520053A (ja) 1991-07-09 1991-07-09 マイクロプロセツサ

Publications (1)

Publication Number Publication Date
JPH0520053A true JPH0520053A (ja) 1993-01-29

Family

ID=16330687

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19481391A Pending JPH0520053A (ja) 1991-07-09 1991-07-09 マイクロプロセツサ

Country Status (1)

Country Link
JP (1) JPH0520053A (ja)

Similar Documents

Publication Publication Date Title
KR940009094B1 (ko) 데이타처리 시스템
US4179731A (en) Microprogrammed control system
US6611909B1 (en) Method and apparatus for dynamically translating program instructions to microcode instructions
JPH0374434B2 (ja)
JPH04109336A (ja) データ処理装置
KR100254008B1 (ko) 2개의 명령을 동시에 실행할 수 있는 데이타 프로세서
JPH0235523A (ja) フレキシブルasicマイクロコンピュータ
JPH06332792A (ja) データ処理装置及びそのデータ読み出し制御回路,データ書き込み制御回路
US4388682A (en) Microprogrammable instruction translator
JPH0810428B2 (ja) データ処理装置
US4054945A (en) Electronic computer capable of searching a queue in response to a single instruction
JP3486690B2 (ja) パイプライン方式プロセッサ
JPH07239780A (ja) 1クロック可変長命令実行処理型命令読み込み電子計 算機
US5142630A (en) System for calculating branch destination address based upon address mode bit in operand before executing an instruction which changes the address mode and branching
JPH0520053A (ja) マイクロプロセツサ
US5463747A (en) Microprogram data processor processing operand address calculation and instruction execution with common hardware
JP2772100B2 (ja) 並列命令フェッチ機構
JPH0519820A (ja) プログラマブルコントローラ
JP2685727B2 (ja) データ処理装置
US5481682A (en) Microcommand function switching circuit
JP3147884B2 (ja) 記憶装置及び情報処理装置
JP2656765B2 (ja) データ処理装置
WO2024084809A1 (ja) 間接アドレス指定方式の条件ジャンプ命令を実行するプロセッサ、プログラム記録媒体及び方法
JP2007004475A (ja) プロセッサ及びプログラム実行方法
JPH0922307A (ja) シーケンサ