JPS59200343A - Microprogram controller - Google Patents

Microprogram controller

Info

Publication number
JPS59200343A
JPS59200343A JP7448883A JP7448883A JPS59200343A JP S59200343 A JPS59200343 A JP S59200343A JP 7448883 A JP7448883 A JP 7448883A JP 7448883 A JP7448883 A JP 7448883A JP S59200343 A JPS59200343 A JP S59200343A
Authority
JP
Japan
Prior art keywords
microinstruction
address
register
storage means
interruption
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
JP7448883A
Other languages
Japanese (ja)
Other versions
JPH0145650B2 (en
Inventor
Shinji Oga
大賀 伸二
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
Nippon Electric Co 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 NEC Corp, Nippon Electric Co Ltd filed Critical NEC Corp
Priority to JP7448883A priority Critical patent/JPS59200343A/en
Publication of JPS59200343A publication Critical patent/JPS59200343A/en
Publication of JPH0145650B2 publication Critical patent/JPH0145650B2/ja
Granted legal-status Critical Current

Links

Abstract

PURPOSE:To attain processing for the interruption of an asynchronous phenomenon without using an interruption trap address generating circuit, by controlling the interruption detection timing by the contents of an instruction control field provided into a microinstruction. CONSTITUTION:If an interruption request produced by an asynchronous phenomenon does not exist in an interruption factor register 6, a selection circuit 5 selects the contents of the next address field of the microinstruction which is presently read out of a microinstruction register 2. Then the address is decided for the microinstruction to be executued next. An interruption request corresponding to an asynchronous factor is registered into an interruption factor register 6, and an interruption control field of the microinstruction read out to the register 2 indicates the permission of interruption. In such a case, the circuit 5 selects the output of an address register 4. As a result, the microinstruction in the address next to the microinstruction which is presently executed is read out as the microinstruction to be executed next.

Description

【発明の詳細な説明】 本発明はマイクロプログラム制御装置に関する。[Detailed description of the invention] The present invention relates to a microprogram controller.

マイクロプログラムを用いた情報処理装車が、マイクロ
命令を実行中に、例えは主記憶からのエラーの報告、他
プロセツサからの通信髪求等の非同期事象(ファームウ
ェア割込み)が発生し、現在実行中のマイクロ分合シー
ケンスを変j1!(中断)する必要がある場合には、一
般にハードウェアによシ強制的に次に実行すべきマイク
ロ命令を格納している特定のアドレスを発生させそのア
ドレスにトラップさせる。
While an information processing device using a microprogram is executing a microinstruction, an asynchronous event (firmware interrupt) occurs, such as an error report from main memory or a request for communication from another processor, which is currently being executed. Change the micro-separation sequence of j1! If it is necessary to interrupt (interruption), generally the hardware is forced to generate a specific address storing the next microinstruction to be executed and trap to that address.

この特定のアドレスには、非同期事象を処理するための
マイクロ命令群すなわち割込処理ルーチンの先頭のマイ
クロ命令が格納されている。この割込処理ルーチンは、
割込原因レジスタの内容を読取ってその内容を解析し、
必要な処理を行なう。
This specific address stores a group of microinstructions for processing an asynchronous event, ie, the first microinstruction of an interrupt processing routine. This interrupt handling routine is
Read the contents of the interrupt cause register and analyze the contents,
Perform necessary processing.

割込処理が終ると別のルーチンに制御を渡すがまたは非
同期事象を検出したルーチンに戻る。
When the interrupt processing is completed, control is passed to another routine or returned to the routine that detected the asynchronous event.

このような非同期事象の割込処理を行なうために、従来
装置においては、前述のようにハードウェアによる割込
用トラップアドレス発生回路を用いて特定のトラップア
ドレスにトラップさせているO しかし、このトラップアドレスはハードウェアによりi
接発生されるので固定しておシ、そのためマイクロプロ
グラムを作成する上で柔軟性に欠けるという欠点を有し
ている。
In order to perform interrupt processing for such asynchronous events, conventional devices use a hardware interrupt trap address generation circuit to trap at a specific trap address as described above. The address depends on the hardware.
Since it is generated directly, it must be fixed, and therefore has the disadvantage of lacking flexibility in creating microprograms.

本発明の目的は、割込用トラップアドレス発生回路を用
いないで、非同期事象の割込みを処理する柔軟性に富ん
たマイクロプログラム制御装愼を提供することにある。
SUMMARY OF THE INVENTION An object of the present invention is to provide a highly flexible microprogram control system that handles interrupts of asynchronous events without using an interrupt trap address generation circuit.

本発明の装置は、マイクロプログラム全記憶する制御記
憶手段と、前記制御記憶手段から読出され友マイクロ命
令を格納するマイクロ命令格納手段と、マイクロ命令実
行ごとに前記マイクロ命令格納手段内の次に実行すべき
マイクロ命令アドレスを含む第1のフィールドの内容に
1を加算する加算手段と、前記加算手段の加算結果を格
納する加算結果格納手段と、非同期事象の原因情報を格
納保持する事象原因格納手段と、前記マイクロ命令格納
手段内の前記非同期事象の割込の受付を制御する情報を
含む第2のフィールドが所定の値でしかも前記事象原因
格納手段の内容が所定の値であるときには前記加算結果
格納手段の出力全選択し前記マイクロ命令格納手段内の
前記第2のフィールドが所定の値でないときまたは前記
事象原因格納手段の内容が所定の値でないとぎには前記
マイクロ命令格納手段内の前記第1のフィールドの出力
を選択する選択手段とを有し、前記選択手段の出力を用
いて前記制御記憶手段内に記憶されているマイクロ命令
のアドレスを指定して次に実行すべきマイクロ命令を前
記マイクロ命令格納手段に読出す。
The apparatus of the present invention includes a control storage means for storing all microprograms, a microinstruction storage means for storing companion microinstructions read from the control storage means, and a microinstruction storage means to be executed next in the microinstruction storage means each time a microinstruction is executed. an addition means for adding 1 to the content of a first field containing the address of the microinstruction to be performed; an addition result storage means for storing the addition result of the addition means; and an event cause storage means for storing and holding cause information of the asynchronous event. and when the second field containing information for controlling reception of interrupts for the asynchronous event in the microinstruction storage means is a predetermined value and the contents of the event cause storage means are a predetermined value, the addition is performed. When all the outputs of the result storage means are selected and the second field in the microinstruction storage means does not have a predetermined value or the contents of the event cause storage means do not have a predetermined value, the output of the microinstruction storage means selection means for selecting the output of the first field, and the output of the selection means is used to specify the address of the microinstruction stored in the control storage means to select the next microinstruction to be executed. is read into the microinstruction storage means.

次に、図面を参照して本発明の詳細な説明する。Next, the present invention will be described in detail with reference to the drawings.

情報処理システムの中には一般に、第1図に示すように
、複数のプロセッサPo、Pl、P2・・・・・・が含
まれておシ、今プロセッサpoを例にとると、このプロ
セッサpoに対しては他のプロセッサPI。
As shown in FIG. 1, an information processing system generally includes a plurality of processors Po, Pl, P2, etc. Taking processor po as an example, this processor po for other processor PIs.

P2・・・・・・がそれぞれラインt1 + t2・・
・・・・を介して通信要求を出す。これらは必要に応じ
て非同期割込みとして処理される。それはかシでなく、
プロセッサPoは、その内部に例えはデータレジスタの
パリティエラー等に対する非同期事象検出回路を含みそ
れが検出されると同様に非同期割込みとして処理される
P2... are respectively lines t1 + t2...
Issue a communication request via... These are handled as asynchronous interrupts as necessary. It's not Kasi, it's
Processor Po includes an asynchronous event detection circuit for detecting, for example, a parity error in a data register, and when detected, it is similarly processed as an asynchronous interrupt.

本発明はか\る非同期割込みを柔軟に処理する装置を提
供する。
The present invention provides an apparatus for flexibly handling such asynchronous interrupts.

第2図全参照すると、本発明の一実施例は、制御能tf
&(C”’)Lマイクロ命令レジスタ(MIR)2.1
加算回路3、アドレスレジスタ(Al1、選択回路5、
割込原因レジスタ回路(INTR)6およびアンドゲー
ト7を含んでいる。
With full reference to FIG. 2, one embodiment of the present invention provides control capability tf
&(C”')L Microinstruction Register (MIR) 2.1
Addition circuit 3, address register (Al1, selection circuit 5,
It includes an interrupt cause register circuit (INTR) 6 and an AND gate 7.

本実施例の動作は下記の通シである。The operation of this embodiment is as follows.

実行すべきマイクロ命令は制御記憶(C8)1から読出
され、マイクロ命令レジスタ(MIR,)2にロードさ
れる。
The microinstructions to be executed are read from the control store (C8) 1 and loaded into the microinstruction register (MIR, ) 2.

各マイクロ命令には、次に実行すべきマイクロ命令の制
御記憶(C8)1中におけるアドレスを指示するネタス
トアドレスフィールド(NA)と、非同期割込みの許可
/不許可を制御する割込制御フィールド(T)とを含む
Each microinstruction has a netast address field (NA) that indicates the address in the control memory (C8) 1 of the next microinstruction to be executed, and an interrupt control field (NA) that controls whether to enable or disable asynchronous interrupts. T).

マイクロ命令レジスタ(MIR)2のネタストアドレス
フィールド(NA)の部分の出力は、選択回路5の一方
の入力および1加算回路30入力に供給される。
The output of the netast address field (NA) portion of the microinstruction register (MIR) 2 is supplied to one input of the selection circuit 5 and the input of the 1 adder circuit 30.

i 7JII算回路3は供給されたネクストアドレスフ
ィールド(NA)の内容に1を加算し、これをアドレス
レジスタ(AR)4に格納し、これを選択回路5のもう
一方の入力に供給する。
The i7JII arithmetic circuit 3 adds 1 to the contents of the supplied next address field (NA), stores this in the address register (AR) 4, and supplies this to the other input of the selection circuit 5.

一方、割込制御フィールド(T)(本実施例においては
1ビツトとする)の部分の出力(Tビット出力)は、割
込原因レジスタ回路(INTR)6の出力とともに、ア
ンドゲート7に供給され、このアンドゲート7の出力は
選択制御信号として選択回路5に供給されている。
On the other hand, the output (T bit output) of the interrupt control field (T) (1 bit in this embodiment) is supplied to the AND gate 7 along with the output of the interrupt cause register circuit (INTR) 6. , the output of this AND gate 7 is supplied to the selection circuit 5 as a selection control signal.

選択回路5は、ア/ドグ−ドアの出力がalttの場合
にはアドレスレジスタ(AR)4の出力を選択し、0″
の場合にはマイクロ命令レジスタ(MIR)2のネクス
トアドレスフィールド(NA)の部分の出力を選択する
。そして選択した出力を制御記憶(C8)1へ、読出し
アドレス指定情報として供給し、これによシ、次に実行
す゛べきマイクロ命令をマイクロ命令レジスタ(Ml)
zに読出す。
When the output of the door/dog door is altt, the selection circuit 5 selects the output of the address register (AR) 4 and sets it to 0''.
In this case, the output of the next address field (NA) of the microinstruction register (MIR) 2 is selected. Then, the selected output is supplied to the control memory (C8) 1 as read address designation information, and the microinstruction to be executed next is specified by the microinstruction register (Ml).
Read to z.

さて、今割込原因レジスタ回路(INTR)6の中に非
同期事象原因による割込要求が全くない場合には、回路
(INTR)6の出力はuO″になる。
Now, if there is no interrupt request caused by an asynchronous event in the interrupt cause register circuit (INTR) 6, the output of the circuit (INTR) 6 becomes uO''.

従って、割込制御フィルド(T)の内容が割込不許可を
表わすuO″であるか、または、非同期事象による割込
要求が全くない場合には、選択回路5は現在マイクロ命
令レジスタ(MIR)2に読出されているマイクロ命令
のネクストアドレスフィールド(NA)の内容を選択し
、これによシ次に実行すべきマイクロ命令のアドレスを
決定する。
Therefore, if the content of the interrupt control field (T) is uO'' indicating that interrupts are not permitted, or if there is no interrupt request due to an asynchronous event, the selection circuit 5 currently selects the microinstruction register (MIR). The contents of the next address field (NA) of the microinstruction read out in step 2 are selected, and the address of the microinstruction to be executed next is determined based on this.

こうして、この場合には従来と同様に、各マイクロ命令
のネクストアドレスフィールド(NA)で指定される制
御記憶(C8) lのアドレスにあるマイクロ命令がつ
ぎつぎに読出されて実行され、かくしてマイクロプログ
2ムによって指定されたシーケンスに従って処理が進行
する。
Thus, in this case, as in the past, the microinstructions at the addresses in the control memory (C8) specified by the next address field (NA) of each microinstruction are read out and executed one after another, and thus the microprogram 2 Processing proceeds according to the sequence specified by the system.

さて、割込原因レジスタ回路(INTJ6の中に非同期
原因に対応する割込要求が登録され、かつ、マイクロ命
令レジスタ(MIR)2に読出されたマイクロ命令の割
込制御フィールド(T)がu1″で割込許可を指示して
いる場合には、アンドゲート7の出力はu1″となシ、
選択回路5はアドレスレジスタ(AR)4の出力を選択
し、この結果、次に実行すべきマイクロ命令として現在
実行中のマイクロ命令の次のアドレスにあるマイクロ命
令が読出される。従って、このマイクロ命令を非同期割
込みを処理するマイクロプログラムルーチンの最初のマ
イクロ命令(または処理ルーテ/の開始番地にジャンプ
するジャンプ命令)としておくことによシ、通常のマイ
クロプログラムシーケンスが中断され、この非同期割込
みを処理するルーチ/を開始させるようにすることがで
きる。
Now, an interrupt request corresponding to the asynchronous cause is registered in the interrupt cause register circuit (INTJ6), and the interrupt control field (T) of the microinstruction read into the microinstruction register (MIR) 2 is u1''. If interrupt permission is instructed by , the output of AND gate 7 will be u1'',
The selection circuit 5 selects the output of the address register (AR) 4, and as a result, the microinstruction at the address next to the microinstruction currently being executed is read out as the next microinstruction to be executed. Therefore, by making this microinstruction the first microinstruction in a microprogram routine that handles asynchronous interrupts (or a jump instruction that jumps to the start address of the processing route), the normal microprogram sequence is interrupted and this A routine may be started to handle asynchronous interrupts.

すなわち、本実施例によると、マイクロプログラム中に
おいて非同期割込みを受付けるのに都合のよいマイクロ
命令ごとに、その割込制御フィールド(T)を′1″と
しておき、制御記憶(O8)1にマイクロプログラムを
格納する際に、この割込制御フィールド(T)がu1″
になっているマイクロ命令の次のアドレスを割込処理マ
イクロプログラムルーテンの開始番地とすることにより
、割込要求がめる場合に、このマイクロ命令実行後直ち
に割込みを受付け、割込処理を開始させるようにするこ
とができる。この場合に、割込みの受付けを許可するマ
イクロ命令の選び方はマイクロプログラムを作成すると
きに自由に決定することができるので柔軟性に富んt−
パ非同期割込みの処理を可能にする。
That is, according to this embodiment, for each microinstruction convenient for accepting an asynchronous interrupt in a microprogram, the interrupt control field (T) is set to '1', and the microprogram is stored in the control memory (O8) 1. When storing u1'', this interrupt control field (T)
By setting the next address of the microinstruction marked as the start address of the interrupt processing microprogram routine, when an interrupt request is received, the interrupt is accepted immediately after execution of this microinstruction, and interrupt processing is started. can do. In this case, the method of selecting the microinstruction that allows interrupt acceptance can be freely determined when creating the microprogram, so it is highly flexible.
Allows processing of asynchronous interrupts.

第3図は前記実施例をさらに詳細に示す図である。FIG. 3 is a diagram showing the embodiment in further detail.

割込原因レジスタ回路6は割込原因レジスタ60および
オアグー)61を有し、前述の各非同期事象原因による
割込要求はレジスタ60の予め定めた対応するピットに
登録される。
The interrupt cause register circuit 6 has an interrupt cause register 60 and an interrupt cause register 61, and interrupt requests due to the causes of each asynchronous event described above are registered in corresponding predetermined pits of the register 60.

レジスタ60の各ビットの出力はオアゲート61でその
すべての論理和がとられ、アンドゲート7の一方の入力
に供給される。
The outputs of each bit of the register 60 are all ORed by an OR gate 61 and supplied to one input of an AND gate 7.

また、選択回路5はインバータ50、アンドグー451
−1.51−2.・・・・・・51−N、 51−1’
 。
In addition, the selection circuit 5 includes an inverter 50, an andgoo 451
-1.51-2. ...51-N, 51-1'
.

51−2’、・・・・・・、51−N’およびオアゲー
ト52−1.52−2.・・・・・・52−N(但しN
 、 N’はネクストアドレスフィールド(NA)のビ
ット幅〕を含ミ、第3図で明らかなように、ア/トゲ−
ドアの出力が10°2の場合には、マイクロ命令レジス
タ(MIR)2のネクストアドレスフィールド(NA)
の部分のビットを選択して出力し、また、ア/ドグ−ド
アの出力がu1″の場合にはアドレスレジスタ(AR)
4の各ビットを選択して出力し、これを制御記憶(C8
)Hのアドレス指定情報として制御記憶(C8)1に供
給している。
51-2',..., 51-N' and or gate 52-1.52-2.・・・・・・52-N (However, N
, N' is the bit width of the next address field (NA)].
If the door output is 10°2, the next address field (NA) of microinstruction register (MIR) 2
Select and output the bit in the part, and if the output of the address register (AR) is u1'',
4 is selected and output, and this is stored in the control memory (C8
)H is supplied to the control memory (C8) 1 as addressing information.

次に第4図(A)および第4図(B)に本実施例の動作
をタイムチャートとして示す。
Next, FIG. 4(A) and FIG. 4(B) show the operation of this embodiment as a time chart.

第4図(A)は割込振求がない場合(第3図オアゲート
61の出力がuO″の場合)の動作を示す。
FIG. 4(A) shows the operation when there is no interrupt request (when the output of the OR gate 61 in FIG. 3 is uO'').

第3図には図示されていないがマイクロ命令レジスタ(
MIR)2およびアドレスレジスタ(AR)4にはマシ
ンクロックが供給されておシこれらのレジスタに対する
データのラッチは第4図に示すマシンクロックの立ち上
シ前縁で行なわれる。
Although not shown in Figure 3, the microinstruction register (
A machine clock is supplied to MIR) 2 and address register (AR) 4, and data to these registers is latched at the leading edge of the rising edge of the machine clock as shown in FIG.

今、【oの時点でマイクロ命令レジスタ(MIR)2に
Aというマイクロ命令(マイクロ命令を指定するAは制
御記憶(C8) 1中のマイクロ命令が格納されている
メモリアドレスを用いるものとする)が読出され、この
命令Aのネタストアドレスフィールド(NA )の内容
がBであったとする。
Now, microinstruction A is stored in microinstruction register (MIR) 2 at point [o] (A, which specifies the microinstruction, uses the memory address where the microinstruction in control memory (C8) 1 is stored) Assume that the contents of the netast address field (NA) of this instruction A are B.

割込要求が存在しないためオアゲート61の出力10″
、従がってアンドゲート7の出力もuO″となシ、選択
回路5はマイクロ命令レジスタ(MIR)2のネクスト
アドレスフィールド(NA)の内容を選択しs ”Oよ
シも少し遅れた時点でこの値Bを出力する。この結果、
制御記憶(C8)1の出力としてメモリアドレスBのマ
イクロ命令が出力され、これは次のマシンクロックの立
上シ時点1工でマイクロ命令レジスタ(MIR)2にラ
ッチされる。マイクロ命令Bのネクストアドレスフィー
ルド(NA)の内容がCとすると、上述と全く同様にし
てマシンクロックの次の立上シ時点t2でマイクロ命令
Cが制御記憶(C8)1から読出されてマイクロ命令レ
ジスタ(Mi)2にラッチされる。例えばマイクロ命令
Cのネクストアドレスフィールド(NA)の内容をDと
し、またマイクロ命令A、B、C,Dの中でCのみがそ
の割込制御フィールド(T)にult)を有するとする
と、時点t2から1マシンクロック間Tピット出力は1
1″になるが、アンドゲート7の出力tlO”は変化せ
ず、上述と全く同様にして、次のマシンクロックの立ち
上9時点t3でマイクロ命令Cのネクストアドレスフィ
ールド(NA)で指定されたマイクロ命令りが制御記憶
(C5)1がら読出されてマイクロ命令レジスタ(MI
R)2にラッチされる。こうして割込要求が存在しない
場合には、たとえ割込制御フィールド(T)がu1″で
あっても各マイクロ命令で指定されるシーケンスに従っ
てマイクロプログラムが実行される。
Since there is no interrupt request, the output of OR gate 61 is 10''.
Therefore, the output of the AND gate 7 is uO'', and the selection circuit 5 selects the contents of the next address field (NA) of the microinstruction register (MIR) 2, and the output of the AND gate 7 is uO''. Output this value B. As a result,
The control memory (C8) 1 outputs the microinstruction at memory address B, which is latched into the microinstruction register (MIR) 2 at the next rising edge of the machine clock. Assuming that the content of the next address field (NA) of microinstruction B is C, microinstruction C is read from control memory (C8) 1 at the next rising edge of the machine clock in exactly the same way as described above. It is latched into register (Mi)2. For example, suppose the content of the next address field (NA) of microinstruction C is D, and among microinstructions A, B, C, and D, only C has ult) in its interrupt control field (T). T pit output for 1 machine clock from t2 is 1
1'', but the output tlO'' of AND gate 7 does not change, and in exactly the same way as above, the next address field (NA) of microinstruction C is specified at time t3 at the rising edge of the next machine clock. The microinstruction register is read from the control memory (C5) 1 and stored in the microinstruction register (MI
R) is latched to 2. In this way, if there is no interrupt request, the microprogram is executed according to the sequence specified by each microinstruction even if the interrupt control field (T) is u1''.

なお、アドレスレジスタ(AR)4の内容は、マイクロ
命令レジスタ(MIR)2に読出されたネタストアドレ
スフィールド(NA)の内容に1を加算されたものが次
のマシンクロックでラッチされるので、例えば第4図(
A)よシ明らかなように、マイクロ命令レジスタ(MI
R)2にマイクロ命令Cが読出されるマシンサイクルに
おいては、アドレスレジスタ(AR)4の内容はC+1
の値が保持されていることになる。
Note that the contents of the address register (AR) 4 are latched at the next machine clock by adding 1 to the contents of the netast address field (NA) read to the microinstruction register (MIR) 2. For example, Figure 4 (
A) As is clear, the microinstruction register (MI
In the machine cycle in which microinstruction C is read at R)2, the contents of address register (AR)4 are C+1.
The value of will be retained.

次に、第4図(B)のタイムチャートは割込要求が発生
した場合(第3図オアゲート61の出力がul″になっ
た場合)の動作を示す。
Next, the time chart of FIG. 4(B) shows the operation when an interrupt request occurs (when the output of the OR gate 61 of FIG. 3 becomes ul'').

マシンクロックt2の時点まではオアクー トロ 1の
出力を除いて、第4図(A)の場合と全く同様であるが
、【2から始るマシンサイクルにお−て、マイクロ命令
Cがマイクロ命令レジスタ(MIR)2に読出され、こ
の命令の割込制御フィールド(T)が5′l”であるた
め、アノドグ−ドアの出力がul″となシ、この結果、
選択回路5はアドレスレジスタ(AR)4の出力C+1
を選択するため、制御記憶(C8)1のメモリアドレス
C+1にあるマイクロ命令が読出式れ、これ//it3
の時点でマイクロ命令レジスタ(MIR)2にラッチさ
れる。このマイクロ命令C+1のネクストアドレスフィ
ールド(NA) 分子oとし、また割込制御フィールド
C′I’)をtlO″とすると、次のマシンサイクルt
4においてはマイクロ命令Toがマイクロ命令レジスタ
2に読出され、かくしてマイクロプログラムはC+1を
開始アドレスとする割込処理ルーチンに分岐する。
Up to the time of machine clock t2, the process is exactly the same as the case in FIG. (MIR) 2, and the interrupt control field (T) of this instruction is 5'l'', so the output of the anodog door is ul'', and as a result,
The selection circuit 5 receives the output C+1 of the address register (AR) 4.
In order to select
It is latched into the microinstruction register (MIR) 2 at the point in time. If the next address field (NA) numerator of this microinstruction C+1 is o, and the interrupt control field C'I') is tlO'', then the next machine cycle t
At step 4, the microinstruction To is read into the microinstruction register 2, and thus the microprogram branches to an interrupt processing routine whose starting address is C+1.

すなわち、マイクロ命令Cのネタストアドレスフィール
ド(NA)はDであシ、割込要求がない場合ic td
 、第4図(A)で説明したよりに、マイクロプログラ
ムはマイクロ命令A、B、C,D・・・・・・のように
進行するが、割込要求がある場合には第4図(B)で示
すようにマイクロプログラムはマイクロ命令A、B、C
,C+1.TQ・・・・・・のように進行し、C+1〆
Dであるように選んでおくことによシ、マイクロプログ
ラムはC+1を開始アドレスとする割込処理ルーチンに
分岐したことになる。
That is, the netast address field (NA) of microinstruction C is D, and if there is no interrupt request, ic td
, As explained in FIG. 4(A), the microprogram progresses as microinstructions A, B, C, D, etc., but if there is an interrupt request, the microprogram progresses as shown in FIG. 4(A). As shown in B), the microprogram consists of microinstructions A, B, and C.
,C+1. By proceeding as TQ... and selecting C+1〆D, the microprogram branches to the interrupt processing routine with C+1 as the starting address.

以上述べたように、本発明によるとハードウェアによる
割込用のトラップアドレス発生回路を用いることなく、
非同期事象の割込みを制御記憶中におけるマイクロ命令
の特定の構成を用いて自由に処理できる柔軟なマイクロ
プログラム制御装置を提供できる。
As described above, according to the present invention, without using a hardware-based trap address generation circuit for interrupts,
A flexible microprogram controller can be provided that is free to handle interrupts of asynchronous events using a specific configuration of microinstructions in control memory.

本発明によると、割込みを検出するタイミングをマイク
ロ命令の中に設けた割込制御フィールドの内容で制御で
きるため、特別なハードウェアを用いることなく必要に
応じて割込みを自由にマスクすることができ、またマイ
クロプログラム中におけるその検出位置によシ予めどの
種類の割込みが発生するかをめる程度予測するようにす
るとともで籾、この場合には割込処理ルーテンにおける
原因の解析’t8易にすることもできる。
According to the present invention, the timing at which interrupts are detected can be controlled by the contents of an interrupt control field provided in a microinstruction, so interrupts can be freely masked as necessary without using special hardware. In addition, it is possible to predict in advance what type of interrupt will occur depending on its detection position in the microprogram, and in this case, it is easy to analyze the cause in the interrupt processing routine. You can also.

さらにまた1本発明に用いる1加算回路はサプルーテ/
コールの戻シアドレスを発生するだめの1加算回路と共
用することによシバ−ドウエアの節減tはかることがで
きる。
Furthermore, the 1 addition circuit used in the present invention is
A reduction in hardware can be achieved by sharing the 1-adder circuit for generating the call return address.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図は非同期事象の発生を説明するためのブロック図
、第2図は本発明の一実施例を示すブロック図、第3図
は前記実施例をさらに詳細に示す図、第4図(3)およ
び第4図回は本実施例の動作を説明するためのタイムチ
ャートである。 図において。 1・・・・・・制御記憶(C8)、2・・・・・・マイ
クロ命令レジスタ(1viIRJ、3・・・・・・l 
771]算回路、4・・・・・・アドレスレジスタ(A
R)、5・・・・・・選択回路、6・・・・・・割込原
因レジスタ回路(INTR,)、7・・・・・・アンド
ゲート、50・・・・・・インバータ、51−1〜51
−N、511/〜51−N’・・・・・・アンドゲート
、52−1〜52−N・・・・・・オアゲート、60・
・・・・・割込原因レジスタ、61・・・・・・オアゲ
ート〇
FIG. 1 is a block diagram for explaining the occurrence of an asynchronous event, FIG. 2 is a block diagram showing an embodiment of the present invention, FIG. 3 is a diagram showing the embodiment in more detail, and FIG. ) and FIG. 4 are time charts for explaining the operation of this embodiment. In fig. 1... Control memory (C8), 2... Micro instruction register (1viIRJ, 3...l
771] Arithmetic circuit, 4...Address register (A
R), 5... Selection circuit, 6... Interrupt cause register circuit (INTR,), 7... AND gate, 50... Inverter, 51 -1 to 51
-N, 511/~51-N'...AND gate, 52-1~52-N...OR gate, 60.
...Interrupt cause register, 61...OR gate〇

Claims (1)

【特許請求の範囲】 マイクロプログラムを記憶する制御記憶手段と。 前記制御記憶手段から読出されたマイクロ命令を格納す
るマイクロ命令格納手段と、 マイクロ命令実行ごとに前記マイクロ命令格納手段内の
次に実行すべきマイクロ命令アドレスを含む第1のフィ
ールドの内容に1を加算する加算手段と、 前記加算手段の加算結果を格納する加算結果格納手段と
、 非同期事象の原因情報を格納保持する事象原因格納手段
と、 前記マイクロ命令格納手段内の前記非同期事象による割
込の受付を制御する情報?含む第2のフィールドが所定
の値でしかも前記事象原因格納手段の内容が所定の値で
あるときには前記加算結果格納手段の出力を選択し前記
マイクロ命令格納手段内の前記第2のフィールドが所定
の値でないときまたは前記事象原因格納手段の内容が所
定の値でないときには前記マイクロ命令格納手段内の前
記第1のフィールドの出力を選択する選択手段とを有し
、 前記選択手段の出力を用いて前記制御記憶手段内に記憶
されているマイクロ命令のアドレスを指定して次に実行
すべきマイクロ命令を前記マイクロ命令格納手段に読出
すようにしたことを特徴とするマイクロプログラム制御
装置。
[Claims] Control storage means for storing a microprogram. microinstruction storage means for storing a microinstruction read out from the control storage means; and a first field containing a microinstruction address to be executed next in the microinstruction storage means each time a microinstruction is executed. an addition means for adding; an addition result storage means for storing the addition result of the addition means; an event cause storage means for storing and holding cause information of the asynchronous event; Information that controls reception? When the second field containing a predetermined value and the contents of the event cause storage means have a predetermined value, the output of the addition result storage means is selected and the second field in the microinstruction storage means has a predetermined value. a selection means for selecting the output of the first field in the microinstruction storage means when the value is not a predetermined value or when the content of the event cause storage means is not a predetermined value, and the output of the selection means is used. 2. A microprogram control device according to claim 1, wherein a microinstruction to be executed next is read into the microinstruction storage means by specifying an address of a microinstruction stored in the control storage means.
JP7448883A 1983-04-27 1983-04-27 Microprogram controller Granted JPS59200343A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7448883A JPS59200343A (en) 1983-04-27 1983-04-27 Microprogram controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7448883A JPS59200343A (en) 1983-04-27 1983-04-27 Microprogram controller

Publications (2)

Publication Number Publication Date
JPS59200343A true JPS59200343A (en) 1984-11-13
JPH0145650B2 JPH0145650B2 (en) 1989-10-04

Family

ID=13548720

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7448883A Granted JPS59200343A (en) 1983-04-27 1983-04-27 Microprogram controller

Country Status (1)

Country Link
JP (1) JPS59200343A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03209530A (en) * 1990-01-12 1991-09-12 Matsushita Electric Ind Co Ltd Time division multi-task executing device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03209530A (en) * 1990-01-12 1991-09-12 Matsushita Electric Ind Co Ltd Time division multi-task executing device

Also Published As

Publication number Publication date
JPH0145650B2 (en) 1989-10-04

Similar Documents

Publication Publication Date Title
EP0437044B1 (en) Data processing system with instruction tag apparatus
US4430706A (en) Branch prediction apparatus and method for a data processing system
EP0025087B1 (en) Pipeline control apparatus for generating instructions in a digital computer
JPH0223431A (en) Interrupt processing system
JPH06105460B2 (en) Multiprocessor processor switching device
EP0378415A2 (en) Multiple instruction dispatch mechanism
US5390306A (en) Pipeline processing system and microprocessor using the system
EP0164418B1 (en) Microprogram control system
US4339796A (en) System for generating a plurality of different addresses for a working memory of a microcontroller during execution of certain instructions
JPS59200343A (en) Microprogram controller
US4987534A (en) Processor having synchronized operation between a CPU and a vector processor
JP2694948B2 (en) Micro program processor
JPS6049337B2 (en) Pipeline control method
JPS62156738A (en) Program controller
JPS60108973A (en) Method for finding the minimum value of array elements and element number of the minimum element
JPH0561660B2 (en)
JPH06103110A (en) Breakpoint setting system
JPH059815B2 (en)
JP2982129B2 (en) Micro program controller
JPH0243626A (en) Apparatus for controlling execution speed of computer processor
JPH059814B2 (en)
JPS59172041A (en) Multi-way branching system of microprogram
JPS6330938A (en) Microprogram control device
JPH0412850B2 (en)
JPH0298746A (en) System for evading failure of microprocessor