JP2559494B2 - Micro program control method - Google Patents

Micro program control method

Info

Publication number
JP2559494B2
JP2559494B2 JP1202999A JP20299989A JP2559494B2 JP 2559494 B2 JP2559494 B2 JP 2559494B2 JP 1202999 A JP1202999 A JP 1202999A JP 20299989 A JP20299989 A JP 20299989A JP 2559494 B2 JP2559494 B2 JP 2559494B2
Authority
JP
Japan
Prior art keywords
address
branch
word
instruction
string
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.)
Expired - Lifetime
Application number
JP1202999A
Other languages
Japanese (ja)
Other versions
JPH0367332A (en
Inventor
一郎 福田
雄彦 山田
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 JP1202999A priority Critical patent/JP2559494B2/en
Publication of JPH0367332A publication Critical patent/JPH0367332A/en
Application granted granted Critical
Publication of JP2559494B2 publication Critical patent/JP2559494B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】 〔概要〕 マイクロプログラム制御方法に関し、 命令長をそれ程増大することなく、割込用の分岐条件
の追加を可能にすることを目的とし、 いくつかの分岐条件の成立/不成立に従って選択され
る複数の分岐先アドレスを1つのマイクロ命令に含むマ
イクロプログラム制御方法において、前記1つのマイク
ロ命令には、優先順位を示したフィールドを設け、前記
いくつかの分岐条件に加えて、該フィールド内の優先順
位の情報に従って、前記いくつかの分岐条件の優先度を
判定し、その判定結果に基づいて複数の分岐先アドレス
の一つを選択することを特徴とする。
DETAILED DESCRIPTION OF THE INVENTION [Outline] The present invention relates to a microprogram control method, which aims to enable addition of an interrupt branch condition without increasing the instruction length so that some branch conditions are satisfied. In a microprogram control method including a plurality of branch destination addresses selected according to failure in one microinstruction, a field indicating a priority order is provided in the one microinstruction, and in addition to the some branch conditions, It is characterized in that the priorities of the several branch conditions are judged according to the priority information in the field, and one of a plurality of branch destination addresses is selected based on the judgment result.

〔産業上の利用分野〕[Industrial applications]

本発明は、マイクロプログラム制御方法に関し、特
に、水平型マイクロ命令を用いるマイクロプログラム制
御方法に関する。
The present invention relates to a micro program control method, and more particularly to a micro program control method using horizontal micro instructions.

マイクロプログラム制御は、コンピュータに対する1
つの命令(機械語命令またはマクロ命令)に対し、記憶
装置や演算装置などの操作を基本的な操作(マイクロ操
作:micro operation)に分解し、1つ以上mステップの
これらの操作を組み合わせたマイクロ命令(micro inst
ruction,micro order)を記憶し、令名の実行に必要な
マイクロ命令の系列を順次読み出すことによって制御を
行うもので、アーキテクチャ(architecture)上の細部
仕様が決まらなくても、論理部の設計が可能であり、装
置開発期間を短縮できる、順序制御の情報をファームウ
エアとして制御記憶に格納しているため、処理の変更や
追加に対して制御記憶の内容を変更、追加するだけで容
易に対応できる、などの特長を有し、現在の汎用コンピ
ュータやマイクロコンピュータなどにおいて広く活用さ
れている。
Microprogram control for computer 1
One instruction (machine language instruction or macro instruction) is divided into basic operations (micro operations) for operations such as storage devices and arithmetic units, and one or more m-step operations are combined. Instruction (micro inst
(ruction, micro order) is stored, and control is performed by sequentially reading the series of microinstructions necessary to execute the designated name. Even if the detailed specifications on the architecture have not been decided, the design of the logic part can be done. It is possible to shorten the device development period, and because the order control information is stored in the control memory as firmware, it is easy to respond to changes or additions to the process simply by changing or adding the contents of the control memory. It has features such as being able to do so and is widely used in current general-purpose computers and microcomputers.

〔従来の技術〕[Conventional technology]

第5図は従来のマイクロ命令語構成を示す図で、水平
型マイクロ命令を例にしている。この図において、CTL
は制御フィールド部、aは第1の分岐条件部、bは第2
の分岐条件部、NA1,NA2,……NA4はそれぞれ分岐先アド
レス部である。NA1〜NA4は、そのなかの1つがa,bの状
態に従って選択され、a,bは、CTLの内容に従ってセット
される。例えば、a,bが共に“0"(分岐不成立)であれ
ばNA1が選択され、a=“0"(分岐不成立),b=“1"
(分岐成立)であればNA2が選択され、a=“1",b=
“0"であればNA3が選択され、a,bが共に“1"であればNA
4が選択される。
FIG. 5 is a diagram showing the structure of a conventional microinstruction word, taking a horizontal microinstruction as an example. In this figure, CTL
Is a control field part, a is a first branch condition part, and b is a second branch condition part.
The branch condition part, NA1, NA2, ... NA4 are branch destination address parts. One of NA1 to NA4 is selected according to the states of a and b, and a and b are set according to the contents of CTL. For example, if a and b are both "0" (branch not taken), NA1 is selected, and a = "0" (branch not taken), b = "1".
If it is (branch taken), NA2 is selected and a = “1”, b =
If "0", NA3 is selected. If a and b are both "1", NA3 is selected.
4 is selected.

ここで、第6図に示すアドレス0番地(2進数表現で
0000番地)から8番地(2進数表現で1000番地)までの
マイクロ命令セットを一例としてその実行順序を説明す
ると、まず、0番地のa,b(a=b=0)に従ってNA1を
選択し、このNA1内の0010をネクストアドレスとして2
番地のマイクロ命令を実行する。次に、2番地のa,b
(a=b=1)に従ってNA4を選択し、このNA1内の0110
をネクストアドレスとして6番地のマイクロ命令を実行
する。以降、各命令のa,bを調べ、(成立(“1"),不
成立(“0")に従って、その命令内のNA1〜NA4の1つを
選択し、次実行順命令のネクストアドレスを得るといっ
た動作を繰り返すことにより、いくつかの分岐条件に応
じて命令の順序を制御することができる。
Here, the address 0 shown in FIG. 6 (in binary notation
Explaining the execution order of the micro instruction set from address 0000 to address 8 (address 1000 in binary notation) as an example, first, NA1 is selected according to a, b (a = b = 0) of address 0, 2 as the next address using 0010 in this NA1
Execute the microinstruction at the address. Next, a and b at address 2
NA4 is selected according to (a = b = 1), and 0110 in this NA1 is selected.
Is used as the next address to execute the microinstruction at address 6. After that, a and b of each instruction are checked, and one of NA1 to NA4 in the instruction is selected according to (established (“1”) and not established (“0”) to obtain the next address of the next execution order instruction. By repeating such an operation, the order of instructions can be controlled according to some branch conditions.

〔発明が解決しようとする課題〕[Problems to be Solved by the Invention]

しかしながら、このような従来のマイクロプログラム
制御方法にあっては、複数の分岐先アドレス(NA1〜NA
4)の選択を、いくつかの分岐条件(a,b)の成立
(“1")、不成立(“0")によってのみ行う構成となっ
ていたため、例えば、割込発生用の分岐条件を新たに追
加しようとした場合に、以下の理由から命令長が長くな
るといった不具合があった。
However, in such a conventional microprogram control method, a plurality of branch destination addresses (NA1 to NA
Since 4) is selected only when some branch conditions (a, b) are satisfied (“1”) and not satisfied (“0”), for example, a new branch condition for interrupt generation is added. However, there was a problem that the instruction length would be long for the following reasons.

すなわち、分岐条件が2つの場合であれば、その分岐
条件の成立、不成立の組み合わせは22=4通りであり、
分岐先アドレスはNA1〜NA4の4つとなるが、更に割込用
の分岐条件(以下、INTCHKという)を追加した場合に
は、都合3つの分岐条件となり、その組み合わせは23
8通り、したがって、分岐先アドレスが4個増えて8個
となる。次表1は、INTCHKを含む3つの分岐条件と、こ
れらの分岐の成立/不成立の組み合わせによって選択さ
れる8個の分岐先のアドレス(NA1〜NA8)の関係を示す
図である。なお、分岐条件の“1"は成立、“0"は不成立
を表し、分岐先アドレスの“1"は選択を表す。
That is, if there are two branching conditions, there are 2 2 = 4 combinations of satisfaction and non-satisfaction of the branching conditions,
There are four branch destination addresses, NA1 to NA4, but if you add a branch condition for interrupts (hereafter referred to as INTCHK), there will be three branch conditions for convenience, and the combination will be 2 3 =
Therefore, the number of branch destination addresses is increased by 4 to become 8. The following Table 1 is a diagram showing a relationship between three branch conditions including INTCHK and eight branch destination addresses (NA1 to NA8) selected by a combination of establishment / non-establishment of these branches. The branch condition “1” is satisfied, “0” is not satisfied, and the branch destination address “1” is selected.

表1から理解されるように、割込発生時(INTCHK=
“1")に割込先の分岐アドレスを得ようとすると、増加
分のNA5〜NA8のすべてに同一の割込先の分岐アドレスを
格納しなければならず、したがって、割込用分岐条件を
追加した場合には、NA5〜NA8の分だけ、命令長が長くな
るといった不具合があった。
As can be seen from Table 1, when an interrupt occurs (INTCHK =
When trying to obtain the branch address of the interrupt destination in "1"), the same branch address of the interrupt destination must be stored in all the increased NA5 to NA8. Therefore, the branch condition for interrupt is set. When added, there was a problem that the instruction length became longer by the amount of NA5 to NA8.

〔発明の目的〕[Object of the Invention]

そこで本発明は、命令長をそれ程増大することなく、
割込用の分岐条件の追加を可能にすることを目的として
いる。
Therefore, the present invention, without increasing the instruction length so much,
The purpose is to make it possible to add branch conditions for interrupts.

〔課題を解決するための手段〕[Means for solving the problem]

いくつかの分岐条件の成立/不成立に従って選択され
る複数の分岐先アドレスを1つのマイクロ命令に含むマ
イクロプログラム制御方法において、前記1つのマイク
ロ命令には、優先順位を示したフィールドを設け、前記
いくつかの分岐条件に加えて、該フィールド内の優先順
位の情報に従って、前記いくつかの分岐条件の優先度を
判定し、その判定結果に基づいて複数の分岐先アドレス
の一つを選択することを特徴とする。
In a microprogram control method in which one microinstruction includes a plurality of branch destination addresses selected according to whether or not some branch conditions are satisfied, in one microinstruction, a field indicating a priority order is provided, and In addition to the branch conditions, the priorities of the several branch conditions are determined according to the priority information in the field, and one of the plurality of branch destination addresses is selected based on the determination result. Characterize.

〔作用〕[Action]

本発明では、予め優先順位が与えられた複数の分岐条
件の成立/不成立によって1つの分岐先アドレスが選択
される。したがって、例えば、割込用の1つの分岐条件
を最優先にしておけば、割込発生時には、特定の分岐先
アドレスを優先的に選択でき、各命令毎の割込分岐アド
レスを1つにすることができる。
In the present invention, one branch destination address is selected depending on whether or not a plurality of branch conditions having priorities are given in advance. Therefore, for example, if one branch condition for interrupt is given the highest priority, when an interrupt occurs, a specific branch destination address can be selected preferentially, and one interrupt branch address is set for each instruction. be able to.

〔実施例〕〔Example〕

以下、本発明を図面に基づいて説明する。 Hereinafter, the present invention will be described with reference to the drawings.

第1〜4図は本発明に係るマイクロプログラム制御方
法の一実施例を示す図である。
1 to 4 are diagrams showing an embodiment of a microprogram control method according to the present invention.

第1図は本実施例のマイクロ命令語構成を示す図で、
CTLは演算種類やフラグのセットなどを支持する制御フ
ィールド部、a,bはそれぞれCTLの内容に従ってセットさ
れる分岐条件部、INTCHKは外部割込発生時にセットされ
る割込分岐条件部、NA1〜NA5はこれらの分岐条件の成立
/不成立によって1つが選択される分岐先アドレス格納
部で、NA1〜NA4までがa,bによって選択され、NA5がINTC
HKによって選択されるものとする。また、Pは本発明の
ポイントである2ビットの優先順位設定部(優先チェッ
クフィールドとも言う)で、例えば各ビットの組み合わ
せに応じて次表2に示す優先度(C→B→A)をINTCH
K,a,bに与える。
FIG. 1 is a diagram showing the microinstruction word structure of this embodiment.
CTL is a control field part that supports the operation type and flag setting, a and b are branch condition parts that are set according to the contents of CTL, INTCHK is an interrupt branch condition part that is set when an external interrupt occurs, NA1 to NA5 is a branch destination address storage unit, one of which is selected depending on whether or not these branch conditions are met. NA1 to NA4 are selected by a and b, and NA5 is INTC.
It shall be selected by HK. P is a 2-bit priority setting unit (also referred to as a priority check field), which is a feature of the present invention.
Give to K, a, b.

なお、a,bの成立(“1")、不成立(“0")の組み合
わせとNA1〜NA4の関係を次表3に示す。この関係は従来
例と同様である。
Table 3 below shows the relationship between combinations of a and b (“1”) and non-fulfillment (“0”) and NA1 to NA4. This relationship is the same as in the conventional example.

次に、第2図に示すようなマイクロ命令セットを例に
して本実施例の作用を説明する。このマイクロ命令セッ
トは、0番地(2進数表現で0000番地)から15番地(2
進数表現で1111番地)までの16個のマイクロ命令からな
り、例えば一連のストリング命令を実行する。なお、各
命令のNA1〜NA5のなかで、下線を引いたものは、その命
令中のP,INTCHK,a,bに従って選択された1つの分岐先ア
ドレス(次マイクロアドレスとなる)を示している。マ
イクロ命令の実行順序は、0番地(0000)→1番地(00
01)→2番地(0010)番地→3番地(0011)→4番地
(0100)→5番地(0101)→12番地(1100)→8番地
(1000)→9番地(1001)→10番地(1011)→14番地
(1110)となる。なお、この例では、5番地の命令を実
行する際に外部割込が発生した場合を想定する。
Next, the operation of this embodiment will be described by taking the microinstruction set as shown in FIG. 2 as an example. This micro-instruction set consists of addresses 0 (0000 in binary notation) to 15 (2
It is expressed in hexadecimal number 1111) and consists of 16 micro-instructions, and executes a series of string instructions, for example. In addition, the underlined one of NA1 to NA5 of each instruction indicates one branch destination address (becomes the next micro address) selected according to P, INTCHK, a, and b in the instruction. . The execution order of micro instructions is 0 (0000) → 1 (00
01) → 2nd address (0010) → 3rd address (0011) → 4th address (0100) → 5th address (0101) → 12th address (1100) → 8th address (1000) → 9th address (1001) → 10th address (1011) ) → It becomes number 14 (1110). In this example, it is assumed that an external interrupt occurs when the instruction at address 5 is executed.

第3図は上記実行順序における処理の流れを示すフロ
ーチャートで、図中枠内の○付数字は、以下に示す各処
理内容の番号である。
FIG. 3 is a flow chart showing the flow of processing in the above-described execution order. The circled numbers in the frame in the figure are the numbers of the respective processing contents shown below.

すなわち、 :SRC側ストリングの先頭アドレス計算および送出のス
テップ、 :dest側ストリングの先頭アドレス計算、送出および
転送データ数更新(−1)のステップ、 :SRC側ストリング(1ワード目)の読み込み、dest側
ストリング(1ワード目)への書き込み、SRC側2ワー
ド目の先頭アドレス計算、送出および転送データ数チェ
ック(ゼロのとき分岐成立)のステップ、 :dest側ストリング(2ワード目)のアドレス計算の
ステップ、 :dest側ストリング(2ワード目)のアドレス送出お
よび転送データ数更新(−1)のステップ、 :SRC側ストリング(2ワード目)の読み込み、dest側
ストリング(2ワード目)への書き込み、SRC側3ワー
ド目の先頭アドレス計算、送出および転送データ数チェ
ック(>0):分岐条件a,b不成立、のステップ、な
お、このステップにおいて外部割込が発生した場合を想
定する。
That is,: SRC side string start address calculation and transmission step,: dest side string start address calculation, transmission and transfer data number update (-1) step,: SRC side string (first word) read, dest Write to the side string (1st word), calculate the start address of the 2nd word on the SRC side, check the number of transmitted and transferred data (branch taken when it is zero),: dest side string (2nd word) address calculation Step:: Dest side string (2nd word) address transmission and transfer data number update (-1) step:: SRC side string (2nd word) read, dest side string (2nd word) write, Calculation of the start address of the 3rd word on the SRC side, check of the number of transmitted and transferred data (> 0): Steps where branch conditions a and b are not satisfied, External interrupt is assumed that occurred in the step.

:外部割り込み発生時の補正処理を行うステップで、
dest側3ワード目の先頭アドレスの計算、格納を行いス
トリング命令を中断する、 :外部割り込みハンドラを起動するステップ、 :外部割り込みハンドラを終了するステップで、スト
リング命令が再び起動される。このときのストリング命
令は、パラメータ等が更新されているため、元の3ワー
ド目から再実行される。
: In the step of performing the correction process when an external interrupt occurs,
The string instruction is activated again at the step of terminating the string instruction by calculating and storing the start address of the third word on the dest side ,: activating the external interrupt handler, and terminating the external interrupt handler. Since the parameters and the like have been updated, the string instruction at this time is re-executed from the original third word.

:SRC側ストリングの先頭アドレス計算および送出(元
のSRCの3ワード目に相当)のステップ、 :dest側のストリングの先頭アドレス計算、送出(元
のdestの3ワード目に相当)および転送データ数更新
(−1)のステップ、 :SRC側ストリング(1ワード目、元の3ワード目)の
読み込み、dest側ストリング(1ワード目、元の3ワー
ド目)への書き出し、SRC側2ワード目のアドレス計
算、送出(レジスタ格納)、転送データ数チェック(=
0):終了条件(分岐条件b)成立、のステップ。な
お、このときに外部割込が発生したとすると、この1010
番地の命令のP(優先チェックフィールド)は“11"な
ので、外部割込よりも分岐条件bの方が優先順位が高
く、したがって、外部割込処理をキャンセルして、分岐
条件b成立時の処理(NA2選択)を行う。
: SRC side string start address calculation and transmission (corresponding to 3rd word of original SRC),: dest side string start address calculation, transmission (corresponding to 3rd word of original dest) and number of transfer data Update (-1) step: Read SRC side string (1st word, original 3rd word), write to dest side string (1st word, original 3rd word), SRC side 2nd word Address calculation, transmission (register storage), transfer data count check (=
0): Step of satisfying end condition (branch condition b). If an external interrupt occurs at this time, this 1010
Since the P (priority check field) of the instruction at the address is "11", the branch condition b has a higher priority than the external interrupt. Therefore, the external interrupt process is canceled and the process when the branch condition b is satisfied. (NA2 selection).

:dest側3ワード目のアドレス計算(レジスタ格
納)、終了条件成立でストリング命令の終了を示すフラ
グをCTLにセットし、一連のストリング命令を完了する
ステップ。
: Dest side Address calculation of the third word (register storage), a step of setting a flag indicating the end of the string instruction in CTL when the end condition is satisfied, and completing a series of string instructions.

なお、ステップを終了後の戻り先マイクロアドレス
を説明の都合上、便宜的に“1000"とした。実際には、
命令列をデコードとしてその命令がストリング命令と判
定されると、ストリング命令の先頭マイクロアドレス
(エントリアドレス:0000)が送出されるため、戻り先
マイクロアドレスはエントリアドレス:“0000"とな
る。“1000"番地にした理由は、INTCHK,a,bの3つのフ
ィールドが外部要因によってアクティブに変化するた
め、その様子を第2図上で表現するためである。ちなみ
に、第2図に示した各命令のうち“0000"〜“0010"と
“1000"〜“1010"は同一のものである。
For convenience of explanation, the return destination micro address after the step is set to "1000" for convenience. actually,
When the instruction sequence is decoded and the instruction is determined to be a string instruction, the leading micro address (entry address: 0000) of the string instruction is sent out, so the return destination micro address becomes the entry address: "0000". The reason why the address is set to "1000" is that the three fields INTCHK, a, and b are actively changed by an external factor, and that state is represented in FIG. Incidentally, among the respective instructions shown in FIG. 2, "0000" to "0010" and "1000" to "1010" are the same.

以上説明したストリング命令の実行動作を、第4図に
従って更に説明すると、上段側(SRC側)3つのストリ
ング列(左から順に1ワード目、2ワード目、3ワード
目のストリング列)を下段側(dest側)に転送する動作
は次のとおりとなる。
The operation of executing the above-described string instruction will be further described with reference to FIG. 4. The upper row side (SRC side) three string rows (first word row, second word row, and third word row row from the left side) are connected to the lower row side. The operation to transfer to (dest side) is as follows.

すなわち、 (1)SRC側1ワード目のアドレス(100番地)の計算、
送出、 (2)dest側1ワード目のアドレス(200番地)の計
算、送出(レジスタ格納)、転送データの更新(3−1
=2)、 (3)100番地のメモリリードを行い、そのデータを200
番地のメモリへライトする。SRC側2ワード目のアドレ
ス計算(100+4=104)送出(レジスタ格納)、転送デ
ータ数のチェック(2>0):分岐不成立、 (4)dest側2ワード目のアドレス計算(200+4=20
4)、 (5)dest側2ワード目のアドレス(204番地)送出、
転送データ数の更新(2−1=1)、 (6)外部割込発生 104番地のメモリリードを行い、204番地へメモリライ
トする。SRC側3ワード目のアドレス計算(104+4=10
8)、送出(レジスタ格納)、転送データ数のチェック
(1>0):分岐不成立、 (7)外部割込発生時の補正処理 dest側3ワード目のアドレス計算(204+4=208)、
送出(レジスタ格納)、ストリング命令の中断、 (8)割込処理:割込ハンドラ起動、 (9)割込処理終了で再びストリング命令を実行、この
とき、SRC側、dest側の先頭アドレスは、各々108番地、
208番地となり、更新値で再実行される。すなわち、パ
ラメータの更新により、新たなストリング命令と認識さ
れる。
That is, (1) calculation of the 1st word address (address 100) on the SRC side,
Transmission, (2) Calculation of the first word address (address 200) on the dest side, transmission (register storage), update of transfer data (3-1
= 2), (3) Read the memory at address 100 and write the data to 200
Write to the address memory. SRC side second word address calculation (100 + 4 = 104) transmission (register storage), transfer data count check (2> 0): branch not taken, (4) dest side second word address calculation (200 + 4 = 20)
4), (5) Send the address (address 204) of the second word on the dest side,
Update the number of transferred data (2-1 = 1), (6) External interrupt occurred Read memory at address 104 and write to memory at address 204. SRC side 3rd word address calculation (104 + 4 = 10
8), Send (register), check transfer data number (1> 0): Branch not taken, (7) Correction process when external interrupt occurs Address calculation of 3rd word on dest side (204 + 4 = 208),
Send (store register), suspend string instruction, (8) interrupt processing: start interrupt handler, (9) execute string instruction again at the end of interrupt processing. At this time, the start addresses of SRC side and dest side are 108 each,
It will be address 208 and will be re-executed with the updated value. That is, by updating the parameter, it is recognized as a new string instruction.

(10)SRC側の1ワード目(元の3ワード目:108番地)
のアドレス計算、送出、 (11)dest側の1ワード目(元の3ワード目:208番地)
のアドレス計算、送出、転送データ数の更新(1−1=
0)、 (12)外部割込発生 108番地のメモリリードを行い、そのデータを208番地
へメモリライトする。SRC側4ワード目のアドレス計算
(108+4=11C)、送出(レジスタ格納)、転送データ
数のチェック(=0):分岐条件(終了条件)成立、こ
の場合、〔外部割込〕と〔終了条件成立〕の2つのイベ
ントが同時発生するが、優先チェックビット(P)が
“11"であるために、外部割込はキャンセルされる。す
なわち、終了条件成立時は外部割込を受け付けない。し
たがって、終了条件成立に伴い、レジスタの補正処理、
終了フラグのセットなどを行って一連のストリング命令
を完了する。
(10) 1st word on SRC side (original 3rd word: address 108)
Address calculation and transmission, (11) 1st word on the dest side (original 3rd word: address 208)
Address calculation, transmission, update of the number of transferred data (1-1 =
0), (12) External interrupt occurred Read the memory at address 108 and write the data to address 208. Address calculation of the 4th word on the SRC side (108 + 4 = 11C), transmission (store in register), check of transfer data number (= 0): Branch condition (end condition) is satisfied, in this case, [external interrupt] and [end condition] However, since the priority check bit (P) is "11", the external interrupt is canceled. That is, when the termination condition is satisfied, the external interrupt is not accepted. Therefore, when the end condition is satisfied, the register correction process,
A series of string instructions is completed by setting the end flag and so on.

このように、本実施例では、1つの命令中に、2ビッ
トの優先チェックフィールド(P)を設け、このフィー
ルドの値(1〜3)によってINTCHK,a,bに優先順位(1:
順位C→2:順位B→3:順位A)を与えるようにしたの
で、4つの分岐先アドレス(NA1〜NA4)に1つの分岐先
アドレス(NA5)を加え、このNA5を割込発生時の分岐先
アドレスと使用することができる。したがって、割込用
の分岐条件フィールドを備えた場合でも、分岐先アドレ
スフィールドの増加数をNA5の1つに抑えることがで
き、命令長をコンパクトにすることができる。
As described above, in this embodiment, a 2-bit priority check field (P) is provided in one instruction, and INTCHK, a, b is given a priority order (1 :) by the value (1 to 3) of this field.
Since the order C → 2: order B → 3: order A) is given, one branch destination address (NA5) is added to four branch destination addresses (NA1 to NA4), and this NA5 is Can be used with the branch destination address. Therefore, even when the branch condition field for interruption is provided, the increase in the number of branch destination address fields can be suppressed to one NA5, and the instruction length can be made compact.

〔発明の効果〕〔The invention's effect〕

本発明によれば、命令長をそれ程増大することなく、
割込用の分岐条件を追加することができる。
According to the present invention, without significantly increasing the instruction length,
A branch condition for interrupt can be added.

【図面の簡単な説明】[Brief description of drawings]

第1〜4図は本発明に係るマイクロプログラム制御方法
の一実施例を示す図であり、 第1図はその命令語構成を示す図、 第2図はそのマイクロ動作を説明するための命令セット
の一例を示す図、 第3図はそのマイクロ動作のフローチャート、 第4図はそのマイクロ動作を具体的に示す図、 第5、6図は従来例を示す図であり、 第5図はその命令語の構成図、 第6図はその命令セットの一例を示す図である。 P……優先順位設定部、 INTCHK……割込分岐条件部(いくつかの分岐条件)、 a、b……分岐条件部(いくつかの分岐条件)、 NA1〜NA5……分岐先アドレス(複数の分岐先アドレ
ス)。
1 to 4 are diagrams showing an embodiment of a micro program control method according to the present invention, FIG. 1 is a diagram showing the instruction word structure thereof, and FIG. 2 is an instruction set for explaining the micro operation thereof. FIG. 3 is a flow chart of the micro operation, FIG. 4 is a view specifically showing the micro operation, FIGS. 5 and 6 are views showing a conventional example, and FIG. FIG. 6 is a diagram showing the structure of words, and FIG. 6 is a diagram showing an example of the instruction set. P ... Priority setting part, INTCHK ... Interrupt branch condition part (some branch conditions), a, b ... Branch condition part (some branch conditions), NA1 to NA5 ... Branch destination address (multiple) Branch destination address).

Claims (1)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】いくつかの分岐条件の成立/不成立に従っ
て選択される複数の分岐先アドレスを1つのマイクロ命
令に含むマイクロプログラム制御方法において、 前記1つのマイクロ命令には、優先順位を示したフィー
ルドを設け、前記いくつかの分岐条件に加えて、該フィ
ールド内の優先順位の情報に従って、前記いくつかの分
岐条件の優先度を判定し、その判定結果に基づいて複数
の分岐先アドレスの一つを選択することを特徴とするマ
イクロプログラム制御方法。
1. A microprogram control method in which one microinstruction includes a plurality of branch destination addresses selected according to whether or not some branch conditions are met / not met, wherein the one microinstruction is a field indicating a priority order. In addition to the branch conditions, the priority of the branch conditions is determined according to the priority information in the field, and one of a plurality of branch destination addresses is determined based on the determination result. A microprogram control method characterized by selecting a.
JP1202999A 1989-08-04 1989-08-04 Micro program control method Expired - Lifetime JP2559494B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1202999A JP2559494B2 (en) 1989-08-04 1989-08-04 Micro program control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1202999A JP2559494B2 (en) 1989-08-04 1989-08-04 Micro program control method

Publications (2)

Publication Number Publication Date
JPH0367332A JPH0367332A (en) 1991-03-22
JP2559494B2 true JP2559494B2 (en) 1996-12-04

Family

ID=16466655

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1202999A Expired - Lifetime JP2559494B2 (en) 1989-08-04 1989-08-04 Micro program control method

Country Status (1)

Country Link
JP (1) JP2559494B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1049368A (en) * 1996-07-30 1998-02-20 Mitsubishi Electric Corp Microporcessor having condition execution instruction
JP5548424B2 (en) * 2009-10-28 2014-07-16 株式会社指月電機製作所 Capacitor
CN104854671B (en) 2012-12-10 2018-02-09 松下知识产权经营株式会社 Case mold type capacitor and its manufacture method

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61122753A (en) * 1984-11-20 1986-06-10 Mitsubishi Electric Corp Microprogram control device

Also Published As

Publication number Publication date
JPH0367332A (en) 1991-03-22

Similar Documents

Publication Publication Date Title
US8230144B1 (en) High speed multi-threaded reduced instruction set computer (RISC) processor
JPS59202544A (en) Order buffer bypass apparatus
CN101110017A (en) Technique to combine instructions
JPH0545985B2 (en)
JPH0348537B2 (en)
JP2004529405A (en) Superscalar processor implementing content addressable memory for determining dependencies
JP2559494B2 (en) Micro program control method
JP2617974B2 (en) Data processing device
US8332596B2 (en) Multiple error management in a multiprocessor computer system
JPH01503340A (en) data processing unit
JPH0754467B2 (en) Data processing device
JPH07219766A (en) Arithmetic processor
JP2003122410A (en) Method for causing controller to perform computation
JP2552738B2 (en) Data processing device
JP2824484B2 (en) Pipeline processing computer
JP2814683B2 (en) Instruction processing unit
JPH07110769A (en) Vliw type computer
US10817288B2 (en) Combined instruction for addition and checking of terminals
JPS6398704A (en) Programmable controller
JPS6232502B2 (en)
JPH0338613B2 (en)
JPS61123937A (en) Data drive type control system
JPH01283640A (en) Data driving type control method
JP2005338929A (en) Semiconductor device
JPH01156824A (en) Microprocessor