JPH04340131A - マイクロプログラム制御装置 - Google Patents

マイクロプログラム制御装置

Info

Publication number
JPH04340131A
JPH04340131A JP11208491A JP11208491A JPH04340131A JP H04340131 A JPH04340131 A JP H04340131A JP 11208491 A JP11208491 A JP 11208491A JP 11208491 A JP11208491 A JP 11208491A JP H04340131 A JPH04340131 A JP H04340131A
Authority
JP
Japan
Prior art keywords
control
branch
address
output
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
JP11208491A
Other languages
English (en)
Inventor
Hisao Harigai
針谷 尚夫
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP11208491A priority Critical patent/JPH04340131A/ja
Publication of JPH04340131A publication Critical patent/JPH04340131A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はマイクロプログラム制御
装置に関し、特にマイクロプログラムの分岐制御に関す
る。
【0002】
【従来の技術】図5,図6は従来のマイクロプログラム
制御部およびそのマイクロコードラッチ部分のハードウ
ェア構成を示すブロック図である。この場合、マイクロ
プロセッサ1は、このマイクロプロセッサ1の外部にあ
る外部メモリ2と、外部バス3を介して接続されている
【0003】このマイクロプロセッサ1は、制御記憶部
(MROM)11aと、マイクロアドレス・レジスタ(
MARという)12と、マイクロコードラッチ部(MC
L)13bと、このラッチ部MCL13bに保持されて
いるマイクロコードを入力とするデコーダ(MCD)1
4と、このデコーダ14の複数の出力信号を保持するマ
イクロオーダラッチ(MOL)15と、このMAR15
の入力セレクタ16と、マイクロプロセッサ1のマクロ
命令(機械語命令)デコーダ(IDEC)18と、マク
ロプロセッサ1の内部バス19と、マイクロプロセッサ
1のALUとその周辺回路25と、セレクタ27と、こ
のセレクタ27の選択信号を生成する制御回路26とか
ら主に構成されている。
【0004】またマイクロコードラッチ部13bは、図
6のように、クロックCLK2で駆動されるラッチMC
L(2)131およびラッチMCL133と、クロック
CLK1で駆動されるラッチMCL(1)132から構
成される。
【0005】マイクロプロセッサ1は、記憶制御部11
aに対しアドレスを供給し、記憶制御部11aから読出
されたマイクロコードは第2クロックCLK2によりラ
ッチMCL131に保持され、このMCL131の出力
がCLK1同期でMCL(1)132で保持され、この
MCL(1)132の出力がCLK2同期でMCL13
3に保持される。
【0006】デコーダ(MCD)14はラッチMCL1
33に保持されているマイクロコードを入力とするデコ
ーダで、マイクロオーダラッチ(MOL)15はデコー
ダ14の複数の出力信号を保持し、入力セレクタ16は
MAR12の入力をセレクトする。MAR12で指定さ
れたマイクロアドレスに対応する制御記憶部11の内容
が読出されてMCL133に保持され、デコーダ14が
MCL133に保持された制御コードをデコードしてマ
イクロオーダ15を出力することによりマイクロプロセ
ッサのマイクロプログラム制御を行っている。
【0007】マイクロプロセッサ1の内部バス19から
マクロ命令(機械語命令)デコーダ(IDEC)18が
接続され、外部メモリ2からフェッチしたマクロ命令コ
ードは外部バス3,内部バス19を介してマクロ命令デ
コーダ18に取り込まれる。IDEC18ではマクロ命
令コードをデコードして対応するマイクロプロシージャ
の開始番地を示すアドレス情報をセレクタ16に与える
【0008】また、インクリメンタ(+1)21はMA
R12の出力を入力とし、マイクロアドレスをインクリ
メントし、ラッチ(NAL)22はインクリメンタ21
の出力(次アドレス)を保持する。
【0009】次の表1,表2は、マイクロプロセッサ1
のマイクロプログラム制御に使用されている分岐マイク
ロ命令を説明する表であり、表1は1語の分岐マイクロ
命令の制御コードの内容を示す。
【0010】
【表1】
【0011】
【表2】
【0012】分岐命令コードは、分岐マイクロ命令であ
ることを示すフィールド、2ビットのCNDと1ビット
のTBは分岐条件を指定するフィールド、16ビットの
分岐先アドレスから構成される。2ビットのCNDは、
分岐条件として参照する信号を指定する情報、1ビット
のBはCNDによって指定された分岐条件信号が‘1’
のときに分岐を発生させるか‘0’のときに分岐を発生
させるかを指定する情報であり、CNDとTBによる指
定は、表2に示される。MCDにおいて表1の分岐マイ
クロ命令の制御コードがデコードされると、MJMP信
号が‘1’になる。
【0013】また、マイクロプロセッサ1のALUとそ
の周辺回路25は、後述の図7に示される。制御回路2
6はセレクタ27の選択信号26′を生成する。セレク
タ27はALU/周辺回路25から出力されるALUの
3本のステータス信号S(サイン),Z(ゼロ),C(
キャリ)と固定値1の4ビットを入力し、制御回路26
から生成される選択信号26′に応じて4ビットの中か
ら1ビットを選択して出力信号27′とする。制御回路
26はMCLのビットのなかの条件分岐マイクロ命令の
条件選択ビットCND(2ビット)を入力して、セレク
タ27が表2に示すようなALUの3本のステータス信
号S,Z,Cと固定値1を選択するように4本の選択信
号26′を生成する。
【0014】制御信号24はMCD14で生成されるA
LUとその周辺回路25の制御信号であり、ALUの制
御信号、R1,R2,R3のストローブ選択信号となる
。セレクタ27の出力信号27′とMCD14からの条
件分岐マイクロ命令の条件選択ビットTBとは排他的否
定論理和(exNOR)ゲート28に入力され、信号2
7′とTBの値が等しいときだけゲート28の出力信号
(MATCH)が‘1’となり、MATCHとMJMP
とは論理積ゲート29に入力され、MATCHとMJM
Pがともに‘1’のとき、すなわちマイクロ分岐命令が
デコードされて(MJMP=‘1’)かつ分岐条件が成
立したとき(MATCH=‘1’)にだけゲート29の
出力信号JMPが‘1’になる。つまり、デコードされ
たマイクロ分岐命令のマイクロコードの中の2ビットの
CND信号により選択したALUのステータス信号の論
理値がTBで指定された値に一致したときにJMP信号
が‘1’となり、この時マイクロ命令レベルの分岐が発
生する。
【0015】セレクタ16はMCL13bに保持された
制御コードの複数のビットの中から分岐マイクロ命令の
分岐先アドレス情報に相当する複数のビットを抽出した
信号17と、NAL22の出力23と、マクロ命令コー
ドをIDEC18でデコードして得られたマイクロプロ
シージャの開始番地を示すアドレス情報とを入力してセ
レクトする。マイクロプロシージャ時の開始時には、M
CD14の出力信号の1つであるマイクロプロシージャ
時開始信号MSTARTが‘1’になって、IDEC1
8により指定されるマイクロプロシージャ時の開始番地
を示すアドレス情報を選択する。
【0016】マイクロプロシージャの実行が開始されて
マイクロ命令レベルの分岐が発生するときには、JMP
信号が‘1’となってセレクタ16は分岐マイクロ命令
の分岐先アドレス情報に相当する複数のビットを抽出し
た信号17を選択してMAR12へ出力する。MCD4
においてマイクロ分岐命令がデコードされてMJMP信
号が‘1’となっても条件が不成立の場合には、MAT
CH信号が‘0’のままであるのでJMP信号が‘0’
となりセレクタ16は分岐マイクロ命令の分岐先アドレ
ス情報17を選択しない。
【0017】図7はALUとその周辺回路25のブロッ
ク図を示す。この回路は、ALU50、ALU50の入
力レジスタ(R1,R2)51,52、レジスタ(R3
)53、CLK1でALU50の出力を保持する出力レ
ジスタ55、ALUの出力が全ビット0である事を検出
した時その出力が‘1’になるオールゼロ検出器56、
オールゼロ検出器56の出力をCLK1で保持するゼロ
・フラグレジスタ(Z)57、ALUのMSBからのキ
ャリをCLK1で保持するキャリ・フラグレジスタ(C
)58、ALUのMSBの1ビットをCLK1で保持す
るサイン・フラグレジスタ(S)59から構成される。
【0018】ALUの制御信号(ALUCNT)60は
、MROM11aから取り出された制御コードにALU
制御マイクロ命令が含まれているときにMCD14が出
力するALUCNTによりALUの動作が制御される。 レジスタ(R1,R2,R3)51〜53の書込み選択
信号やレジスタR1,R2,R3の読み出し選択信号で
、MROM11aから取出されてMCD14でデコード
された制御コードのなかに、該当するレジスタの転送マ
イクロ命令が含まれているときはそれぞれ対応する選択
信号が‘1’になる。これらALUCNT,レジスタ選
択信号は、信号24として示されている。
【0019】次の表3はマイクロプログラムの例である
。このマイクロプログラムでは、アドレスA0とA1で
データ1,データ2をそれぞれALUの入力レジスタR
1,R2に転送し、アドレスA2でALUにおいてレジ
スタR1とR2の内容を加算し、アドレスA3ではアド
レスA2での加算の結果をレジスタR3に転送する。 アドレスA4において加算結果のキャリを参照してキャ
リが0のときにアドレスB0に分岐する。アドレスA5
にはノー・オペレション命令(NOP命令)が記述され
ている。
【0020】
【表3】
【0021】図8は従来のマイクロプログラム制御を実
施しているマイクロプロセッサにおいて、表3のマイク
ロプログラムを実行した場合のタイミング・チャートで
ある。この図では、時刻0のCLK1同期でMAR12
からアドレスA0が制御記憶部11aに対して出力され
、時刻0のCLK2の下降エッジまでにMROM11a
から読出された制御コードがMCL(2)に保持され、
時刻2のCLK1同期でアドレスA0の制御が実行され
る。即ち、時刻2のCLK1同期でレジスタ(R1)5
1にデータDATA1が格納される。時刻0のCLK1
同期でMAR12から出力されたアドレスA0は、時刻
0のCLK2においてインクリメンタ21でインクリメ
ントされA1となり、時刻0のCLK2同期でNAL2
2に保持されセレクタ16に伝達される。
【0022】時刻1のCLK1同期でアドレスA1が制
御記憶11aに対して出力され、時刻3のCLK1同期
でレジスタ(R2)52にデータDATA2が格納され
、時刻1のCLK2においてアドレスA1はインクリメ
ントされてA2となりNAL22に保持される。
【0023】時刻2のCLK1同期でアドレスA2が制
御記憶11aに対して出力され、時刻4のCLK1期間
にALU50においてレジスタR1の内容とレジスタR
2の内容との加算結果が出力レジスタ55に格納され、
時刻2のCLK2においてアドレスA2はインクリメン
トされてA3になりNAL22に保持される。この例で
は時刻4のCLK1での加算の結果、キャリが‘0’と
なり時刻4のCLK1においてキャリ・フラグレジスタ
(C)58に‘0’が保持され、ALUとその周辺回路
25から出力されるALUのキャリステータス信号(C
)は‘0’である。
【0024】時刻3のCLK1同期でアドレスA3が制
御記憶部11aに対して出力され、時刻3のCLK1同
期でレジスタ(R3)に出力レジスタ55の内容が転送
され、時刻3のCLK2においてアドレスA3はインク
リメントされてA4となりNAL22に保持される。
【0025】時刻4のCLK1同期でアドレスA4が制
御記憶部11aに対して出力され、時刻5のCLK2に
おいてアドレスA4の内容の条件分岐マイクロ命令(J
NCB0)のマイクロコードが保持される。従って、時
刻5のCLK2ではMCD14においてアドレスA4の
条件分岐マイクロ命令がデコードされ、1)分岐マイク
ロ命令であるのでMJMPが‘1’が論理積ゲート29
に通知される。
【0026】2)分岐条件としてキャリを参照するので
CNDは‘01’がデコーダ26へ通知される。
【0027】3)キャリが‘0’のとき分岐することを
指定しているのでTBは‘0’がER−NORゲート2
8に通知される。
【0028】4)分岐マイクロ命令の分岐先アドレス情
報17は分岐先アドレスの‘B0’をセレクタ16へ通
知する。
【0029】CNDが‘01’なのでデコーダ26は、
セレクタ27がALUのキャリステータス信号(C)を
選択するための制御信号26′を生成するので、出力信
号27′にはALUのキャリステータス信号(C)が選
ばれて出力される。時刻4のCLK2においてALUの
キャリステータス信号(C)は‘0’で、TBが‘0’
なのでEX−NORゲート28の出力MATCHは‘1
’となる。時刻5のCLK2において論理積ゲート29
の2つの入力MATCHとMJMPが共に‘1’となる
のでJMPは‘1’となる。従って、セレクタ16は分
岐マイクロ命令の分岐先アドレス情報17(この例の時
刻5のCLK2では‘B0’)を選択してMAR12に
出力し、時刻6のCLK1においてMAR12が‘B0
’を保持して制御記憶部11aに対して出力することに
よりマイクロプログラムの条件分岐制御を行う。
【0030】時刻5のCLK1同期でアドレスA5が制
御記憶部11に対して出力され、時刻6のCLK2から
の1クロック間はノー・オペレーション動作を行う。時
刻5のCLK5においてアドレスA5はインクリメント
されてA6となりNAL22に保持される。しかし上述
のようにセレクタ16は時刻6のCLK1においてNA
L22の出力を選択しない。
【0031】
【発明が解決しようとする課題】上述したマイクロプロ
グラム制御装置では、制御記憶部11aの読出しに要す
る時間を隠すために、制御記憶部11aの読出しの制御
を2ステージの先行制御方式を用い、制御記憶部11a
に対してアドレスを入力するステージと制御記憶部11
aから取出された制御コードを保持してデコードするス
テージからなる。従って、このマイクロプログラム制御
装置のマイクロ命令レベルの分岐制御方法において、分
岐後のいわゆる無駄スロットは不可避である。
【0032】アドレスA4の分岐マイクロ命令の次のア
ドレスA5の命令は、必ず実行されるので、アドレスA
5には、アドレスA4の条件分岐マイクロ命令により分
岐が発生してもしなくても実行されて良いような命令を
記述する。しかし、マイクロプログラムの流れの中で、
マイクロ命令レベルの分岐が発生に拘らず実行されて良
いような論理的に適切な命令が必ず存在するとは限らな
い。分岐マイクロ命令の次のアドレスに記載する命令で
あって、マイクロ命令レベルの分岐の発生に拘らず実行
されて良いような論理的に適切な命令が存在しない場合
には、分岐マイクロ命令の次のアドレスにノー・オペレ
ション命令(NOP命令)を記述しなければならない。
【0033】ここでアドレスA3の加算結果のレジスタ
R3への転送命令とアドレスA4の条件分岐命令とを入
替えた場合を考える。すなわち、アドレスA2の加算命
令による演算結果を、アドレスA3の分岐命令による分
岐に発生に拘らずアドレスA4の転送命令によりレジス
タR3へ転送すれば、効率良くマイクロプログラム制御
を行うことが可能となる。この分岐方式において加算命
令の演算結果をレジスタR3に転送するための転送命令
を記述するアドレスは、分岐命令の次のアドレスであっ
ても、加算命令と分岐命令の間であっても、演算結果を
得ることにのみ注目した場合には等価である。しかし、
制御に要するクロック数に注目すると後者の方法では前
者の方法に比べて1クロック多い。ここでアドレスA3
の転送命令が、上述した“分岐マイクロ命令の次のアド
レスに記載する命令であって、マイクロ命令レベルの分
岐が発生に拘らず実行されて良いような論理的に適切な
命令”の例である。
【0034】分岐マイクロ命令の次にNOP命令を記述
しなければならない場合、つまり“分岐マイクロ命令の
次のアドレスに記載する命令であって、マイクロ命令レ
ベルの分岐の発生に拘らず実行されて良いような論理的
に適切な命令”がない場合には、分岐マイクロ命令の実
行には2クロックを要することになるので、マイクロプ
ログラム制御の効率が低いという欠点を有している。
【0035】また、この従来例とは異なるマイクロ分岐
方式として、マイクロ分岐命令の次のアドレスにある命
令が必ず実行されない方式や、マイクロ分岐命令コード
に設けられた特別の情報により分岐する際にそのマイク
ロ分岐命令の次のアドレス(ディレイ・スロット)にあ
る命令の実行の有無を制御する方式(ディレイド分岐方
式)などが挙げられるが、何れの方式においても、制御
記憶部11aの読出しの制御を2ステージの先行制御方
式を用いている限り、マイクロ命令レベルの分岐には2
クロックを要する。
【0036】本発明の目的は、従来のマイクロ分岐命令
が実行に2クロックを要するのに対して、マイクロ分岐
命令が1クロックで実行できるようにしたマイクロプロ
グラム制御装置を提供することにある。
【0037】
【課題を解決するための手段】本発明の構成は、制御記
憶部からの制御コードの読出しに複数のステージの先行
制御を行うようにしたマイクロプログラム制御装置にお
いて、前記制御記憶部にアドレスを供給するアドレスレ
ジスタと、前記制御記憶部からの制御コードを保持する
複数のラッチ手段と、これら複数のラッチ手段の出力を
入力とする制御コード用セレクタ手段と、このセレクタ
手段によって選択されて出力される制御コードを入力し
て解読するデコード手段と、このデコード手段により分
岐マイクロ命令コードがデコードされたときそのデコー
ド手段により制御されて分岐条件を選択する条件ビット
用セレクタ手段と、この条件ビット用セレクタ手段の出
力を入力し前記デコード手段により制御され分岐条件が
一致したことを判定する分岐発生回路とを有し、前記制
御記憶部は前記アドレスレジスタから供給されたアドレ
スに対応して同時に複数御の制御コードを出力して前記
ラッチ手段に保持させ、前記分岐発生回路の出力信号に
より前記制御コード用セレクタ手段の選択を制御する事
を特徴とする。
【0038】
【実施例】図1は本発明の実施例のマイクロコードラッ
チ部分を示すブロック図、図2は図1の動作を説明する
タイミング図である。このハードウェアは、従来例で示
したマイクロプログラム制御に必要なハードウェアの構
成12,14〜29が共通となっている。
【0039】本実施例において、制御記憶部11は1つ
のマイクロアドレス入力に対応して2語のマイクロコー
ドを出力するようになっており、同時に読出される2語
のマイクロコードをCLK2同期で同時にMCL13の
MCL(2)131に保持される。MCL(2)に保持
された2語のマイクロコードはCLK1同期でMCL(
1)132に保持され、MCL(1)に保持された2語
のマイクロコードはCLK2同期でMCL133に保持
される。従って、MCL(2)はMCL(2)HとMC
L(2)Lの2つの部分から成り、それぞれ1語のマイ
クロコードを保持する。同様に、MCL(1)はMCL
(1)LとMCL(1)Hとから成り、MCLはMCL
LとMCLHから構成される。
【0040】2語のマイクロコードを出力するための制
御記憶部11は、MROMHとMROMLの2つの部分
から構成される。MAR12からマイクロアドレスが制
御記憶部11に与えられると、制御記憶部11のMRO
MHの部分から1語とMROMLの部分から1語の合計
2語のマイクロコードが同時に読出され、それぞれMR
OMの内容はMCL(2)Hに、MROMLの内容はM
CL(2)LにCLK2同期で格納される。同様にMC
L(2)Hの内容はMCL(1)Hに、MCL(2)L
の内容はMCL(1)LにCLK1同期で格納され、M
CL(1)Hの内容はMCLHに、MCL(1)Lの内
容はMCLLにCLK2同期で格納される。
【0041】本実施例で新たに設けられた回路として、
JMP信号の1クロック遅延手段30は、出力信号HL
を出力し、この出力信号HLは論理否定ゲート31に入
力され、セレクタ32はMCLH,MCLLからの2系
統のマイクロコードを入力しHLと出力信号31とによ
って制御され、HLが‘1’のときMCLHを選択し、
HLが‘0’つまり出力信号31が‘1’のときMCL
Lを選択する。このセレクタ32の出力はマイクロコー
ドデコーダ14に入力される。
【0042】次の表4は本実施例の動作を説明するマイ
クロプログラムの例である。このマイクロプログラムの
フォーマットは、表1,表2に示す従来例のマイクロプ
ログラムのフォーマットと同一であり、そのマイクロプ
ログラムの内容は、従来例を説明するマイクロプログラ
ムの内容(表3)と同様のものである。
【0043】
【表4】
【0044】アドレスA0とA1でデータ1,データ2
をそれぞれALUの入力レジスタR1,R2に転送し、
アドレスA2でALUにおいてレジスタR1とR2の内
容を加算し、アドレスA3ではアドレスA2での加算の
結果をレジスタR3に転送する。アドレスA4には加算
結果のキャリを参照して分岐する条件分岐命令がある。
【0045】本実施例において、アドレスA5には2つ
のマイクロ命令が記述されており、これらをA5HとA
5Lと呼ぶことにする。アドレスA5が制御記憶部11
に入力されると、この制御記憶部11からMROMLと
して表4のA5Lに記述されているマイクロ命令コード
(データ3をR1に転送するマイクロ命令のマイクロコ
ード)が、MROMHとして表4のA5Hに記述されて
いるマイクロ命令コード(減算マイクロ命令のマイクロ
コード)が出力される。一方、表4の例えばアドレスA
0〜A4には命令が1つだけ記述されているので、アド
レスA0が制御記憶部11に入力されると、制御記憶部
11からMROMLとして表4のA0に記述されている
マイクロ命令コード(データ1をR1に転送するマイク
ロ命令のマイクロコード)が出力されるが、MROMH
としては有効な情報は出力されない。この無効な情報を
図2ではNULLと記載している。
【0046】アドレスA4の条件分岐命令では、キャリ
が‘0’のとき、すなわち分岐が発生した時にアドレス
A5Hの命令を実行し、キャリが‘1’のときにすなわ
ち分岐が発生しないときアドレスA5Lを実行する。
【0047】図2の本実施例の動作を示すタイミング図
において、時刻6のCLK1期間までは、従来例の動作
と全く同一である。アドレスA4の条件分岐命令の実行
を説明する。従来例で説明したようにアドレスA4の条
件分岐命令が実行されて、分岐条件(C)を選択してそ
の値を評価し、分岐が発生すると、時刻5のCLK2同
期でJMP信号が‘1’となる。JMP信号が‘1’と
なったことにより、次のシーケンスで分岐を実行する。
【0048】1)時刻5のCLK2でセレクタ16は信
号線17の分岐先アドレス情報(B1)を選択してMA
R12へ入力する。従って、時刻6のCLK1において
MAR12には分岐先アドレスB1が保持されて分岐が
行われる。
【0049】2)1クロック遅延手段30により1クロ
ック遅延された信号HLは、時刻6のCLK2同期で‘
1’になるので、セレクタ32は時刻6のCLK2でM
CLHの出力(本例では時刻6のCLK2のMCLHの
内容は、減算マイクロ命令コード)を選択してMCD1
4に供給する。
【0050】制御記憶部11のMROMH部分には不要
の部分(図2のNULLと記載した部分)をインプリメ
ントしないので、このNULLと記載した部分は無駄に
ならない。例えば、表4のマイクロプログラムを制御記
憶部11にインプリメントするときに、アドレスA0〜
A4のMROMHの部分はメモリセルをインプリメント
しない事が可能である。
【0051】図3は本発明の第2の実施例のマイクロコ
ードラッチ部分を示すブロック図、図4は図3の動作を
説明するタイミング図である。このハードウェアも従来
例で示したマイクロプログラム制御に必要なハードウェ
アの中の構成12,14〜19が共通である。本実施例
も、1クロック遅延手段40と、論理否定ゲート31と
、セレクタ32とセレクタ32の出力信号である。
【0052】本実施例では、MCL(1)LとMCL(
1)Hとをセレクタ32に入力してCLK1同期で動作
させ、このセレクタ32の切換出力がMCL133に入
力されているが、機能的には、図1,図2と同様に動作
する。
【0053】
【発明の効果】以上説明したように本発明によれば、2
ステージの先行制御方式を実施しているマイクロプログ
ラム制御方式の分岐制御において、分岐マイクロ命令の
実行により生ずる1クロックのディレイ・スロットを効
果的に排除することができ、処理時間を短縮できるとい
う効果を有する。
【図面の簡単な説明】
【図1】本発明の一実施例のマイクロコードラッチ部分
のブロック図。
【図2】図1の動作を説明するタイミング図。
【図3】本発明の第2の実施例のマイクロコードラッチ
部分のブロック図。
【図4】図3の動作を説明するタイミング図。
【図5】従来のマイクロプログラム制御方式のブロック
図。
【図6】図5のマイクロコードラッチ部分のブロック図
【図7】図5のALU/周辺回路25の部分のブロック
図。
【図8】図5の動作を説明するタイミング図。
【符号の説明】
1    マイクロコンピュータ 2    外部メモリ 3    外部バス 11,11a    制御記憶部(MROM)12  
  マイクロアドレス・レジスタ(MAR)13,13
a,13b    マイクロコードラッチ(MCL) 14    マイクロコード・デコーダ(MCD)15
    マイクロ・オーダラッチ(MOL)16   
 入力セレクタ 18    マイクロ命令デコーダ(IDEC)19 
   内部バス 20    NOR 21    インクリメンタ(+1) 22    ネクストアドレスラッチ(NAL)25 
   ALU/周辺回路 26    制御回路 27,32,42    セレクタ 28    EX−NORゲート 29    ANDゲート 30,40    クロック遅延回路 31,41    インバータ 50    ALU 51,52    入力レジスタ 53    レジスタ 55    出力レジスタ 56    オールゼロ検出器 57    ゼロ・フラグレジスタ 58    キャリ・フラグレジスタ 59    サイン・フラグレジスタ 60    ALU制御信号

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】  制御記憶部からの制御コードの読出し
    に複数のステージの先行制御を行うようにしたマイクロ
    プログラム制御装置において、前記制御記憶部にアドレ
    スを供給するアドレスレジスタと、前記制御記憶部から
    の制御コードを保持する複数のラッチ手段と、これら複
    数のラッチ手段の出力を入力とする制御コード用セレク
    タ手段と、このセレクタ手段によって選択されて出力さ
    れる制御コードを入力して解読するデコード手段と、こ
    のデコード手段により分岐マイクロ命令コードがデコー
    ドされたときそのデコード手段により制御されて分岐条
    件を選択する条件ビット用セレクタ手段と、この条件ビ
    ット用セレクタ手段の出力を入力し前記デコード手段に
    より制御され分岐条件が一致したことを判定する分岐発
    生回路とを有し、前記制御記憶部は前記アドレスレジス
    タから供給されたアドレスに対応して同時に複数語の制
    御コードを出力して前記ラッチ手段に保持させ、前記分
    岐発生回路の出力信号により前記制御コード用セレクタ
    手段の選択を制御する事を特徴とするマイクロプログラ
    ム制御装置。
JP11208491A 1991-05-17 1991-05-17 マイクロプログラム制御装置 Pending JPH04340131A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11208491A JPH04340131A (ja) 1991-05-17 1991-05-17 マイクロプログラム制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11208491A JPH04340131A (ja) 1991-05-17 1991-05-17 マイクロプログラム制御装置

Publications (1)

Publication Number Publication Date
JPH04340131A true JPH04340131A (ja) 1992-11-26

Family

ID=14577690

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11208491A Pending JPH04340131A (ja) 1991-05-17 1991-05-17 マイクロプログラム制御装置

Country Status (1)

Country Link
JP (1) JPH04340131A (ja)

Similar Documents

Publication Publication Date Title
US5465376A (en) Microprocessor, coprocessor and data processing system using them
JPS6029126B2 (ja) デ−タ処理装置
KR100423910B1 (ko) 코프로세서 명령 실행 장치 및 방법
JPH0827716B2 (ja) データ処理装置及びデータ処理方法
JP2003005958A (ja) データ処理装置およびその制御方法
JPH07120278B2 (ja) データ処理装置
US6012138A (en) Dynamically variable length CPU pipeline for efficiently executing two instruction sets
CN101201736A (zh) 数学运算处理装置
EP0497485A2 (en) Computer for implementing two-operand instructions
US6601160B2 (en) Dynamically reconfigurable data space
JP3172214B2 (ja) 状態モード設定方式
JPH06295243A (ja) データ処理装置
JPH04340131A (ja) マイクロプログラム制御装置
JP2511151B2 (ja) デ―タ処理装置
JP3699796B2 (ja) プロセッサ
EP0573071A2 (en) A microprocessor
JPS59739A (ja) マイクロプログラム処理装置における時間保障方式
JP2583506B2 (ja) データ処理装置
KR970011209B1 (ko) 실행된 명령 스트림을 추적하기 위해 사용되는 신호를 발생하기 위한 회로를 포함하는 마이크로프로세서
JP2513884B2 (ja) マイクロプロセッサ
US5463747A (en) Microprogram data processor processing operand address calculation and instruction execution with common hardware
JP3033597B2 (ja) プライオリティーエンコーダ及びこれを用いた半導体集積回路
JP2781779B2 (ja) 分岐制御回路
JPH04199331A (ja) マイクロコンピュータ
JP2002229776A (ja) 複数組の命令組を実行するためのデータ処理装置

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20000516