JPH0133852B2 - - Google Patents

Info

Publication number
JPH0133852B2
JPH0133852B2 JP10896683A JP10896683A JPH0133852B2 JP H0133852 B2 JPH0133852 B2 JP H0133852B2 JP 10896683 A JP10896683 A JP 10896683A JP 10896683 A JP10896683 A JP 10896683A JP H0133852 B2 JPH0133852 B2 JP H0133852B2
Authority
JP
Japan
Prior art keywords
control memory
address
register
control
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.)
Expired
Application number
JP10896683A
Other languages
Japanese (ja)
Other versions
JPS603025A (en
Inventor
Kenichi Tsukioka
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
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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP10896683A priority Critical patent/JPS603025A/en
Publication of JPS603025A publication Critical patent/JPS603025A/en
Publication of JPH0133852B2 publication Critical patent/JPH0133852B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/26Address formation of the next micro-instruction ; Microprogram storage or retrieval arrangements
    • G06F9/261Microinstruction address formation

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)

Description

【発明の詳細な説明】 〔発明の分野〕 本発明は、データ処理装置において、制御メモ
リに対するアドレス制御の改善されたマイクロプ
ログラム制御方式に関する。
DETAILED DESCRIPTION OF THE INVENTION Field of the Invention The present invention relates to an improved microprogram control scheme for address control over control memory in a data processing device.

〔従来技術〕[Prior art]

従来、マイクロプログラム制御方式において、
制御メモリに対するアドレスを制御するために、
命令レジスタの動作コードをデコードして制御メ
モリをアクセスする方法や、命令レジスタと制御
メモリとの間に第2の制御メモリをおき、これに
命令語ごとに制御メモリの先頭番地を割当て、命
令語の動作コードにより第2の制御メモリをアク
セスする方法が採用されていた。この方法によれ
ば、対応するアドレスロケーシヨンから命令語の
制御メモリにおける先頭アドレスが読出されて制
御メモリがアクセスされ、読出されたマイクロ命
令を実行することによりデータ処理装置が制御さ
れていた。しかし乍ら、これらの方式において
は、各マクロ命令ごとに先頭番地が異なることに
なるため、非常に多くの制御メモリの容量が必要
となるという欠点があつた。これを改良する方式
として、制御メモリをデータ準備ルーチンと実行
ルーチンとに分け、マクロ命令がその制御メモリ
の各ルーチンを共通に使用できるようにして、さ
らに第2の制御メモリに各ルーチンの先頭番地を
各マクロ命令ごとに持つようにしておく方法が考
えられている。しかし、この方法では、第2の制
御メモリに記憶されるアドレスが各マクロ命令ご
との1ワードが複数個もつことになり、第2の制
御メモリのビツト方向に容量が増加してしまう。
したがつて、上記いずれの方式によるも、ハード
ウエアの増加を招くことになり、経済的でない。
Conventionally, in the microprogram control method,
To control the address to control memory,
There is a method of accessing the control memory by decoding the operation code of the instruction register, or a method of placing a second control memory between the instruction register and the control memory, and assigning the first address of the control memory to this for each instruction word. A method has been adopted in which the second control memory is accessed by the operation code. According to this method, the start address of the instruction word in the control memory is read from the corresponding address location, the control memory is accessed, and the data processing device is controlled by executing the read microinstruction. However, these methods have the disadvantage that a very large control memory capacity is required because the starting address is different for each macro instruction. As a method to improve this, the control memory is divided into data preparation routines and execution routines, so that macro instructions can commonly use each routine in the control memory, and the start address of each routine is stored in the second control memory. A method has been considered in which each macro instruction has one. However, in this method, the second control memory has a plurality of addresses stored in one word for each macro instruction, and the capacity of the second control memory increases in the bit direction.
Therefore, any of the above methods results in an increase in hardware, which is not economical.

〔発明の目的〕[Purpose of the invention]

本発明の目的は、第2の制御メモリをアクセス
する際、必要な制御を行なうための複数のレジス
タと、これ等のレジスタを交互に使い分ける制御
手段とを設け、マクロ命令が実行されるとき、最
初に第2の制御メモリを読出し、さらに、上記制
御手段の制御フリツプフロツプの状態に従つて再
び第2の制御メモリを読出すことによつて、第2
の制御メモリのビツト方向の容量を減らすことが
出来るとともに、第1の制御メモリの容量を増加
させることなくマイクロプログラムを格納するこ
とのできるデータ処理装置におけるマイクロプロ
グラム制御方式を提供することにある。
An object of the present invention is to provide a plurality of registers for performing necessary control when accessing a second control memory, and a control means that alternately uses these registers, so that when a macro instruction is executed, the second control memory by first reading the second control memory and then reading the second control memory again according to the state of the control flip-flop of said control means;
An object of the present invention is to provide a microprogram control method in a data processing device that can reduce the capacity of a first control memory in the bit direction and store a microprogram without increasing the capacity of a first control memory.

〔発明の構成〕[Structure of the invention]

本発明によるマイクロプログラム制御方式は、
命令語を保持する命令レジスタと、マイクロプロ
グラムを記憶する第1の制御メモリとを有し、該
命令レジスタからのマクロ命令にしたがつて該第
1の制御メモリより読出されたマイクロプログラ
ムにより処理を行なうデータ処理装置において、
前記第1の制御メモリから読出されたマイクロ命
令を保持するマイクロ命令レジスタと、次に実行
すべきマイクロ命令のアドレスを保持し、前記第
1の制御メモリへ供給するための制御メモリアド
レスレジスタと、前記第1の制御メモリに格納さ
れているマイクロ命令ルーチンの先頭アドレスを
示す特定フイールドを記憶している第2の制御メ
モリと、該第2の制御メモリから前記命令レジス
タの更新指示信号に応答して読出された特定フイ
ールドを交互に保持する複数のレジスタと、前記
第2の制御メモリを読出すため前記命令レジスタ
の動作コードと命令レジスタの更新指示信号によ
り決められるアドレスを供給する第2のアドレス
手段と、少くとも前記第2の制御メモリの特定フ
イールドと該特定フイールドを保持する前記複数
のレジスタの出力を選択し、前記制御メモリアド
レスレジスタへアドレスを供給する第1のアドレ
ス手段と、前記第1の制御メモリのある1つのマ
イクロ命令に応答し、前記第1と第2のアドレス
手段を制御する手段とから構成されることを特徴
とする。
The microprogram control method according to the present invention is
It has an instruction register that holds instruction words and a first control memory that stores a microprogram, and processes are performed by the microprogram that is read from the first control memory in accordance with a macro instruction from the instruction register. In the data processing device that performs
a microinstruction register that holds the microinstruction read out from the first control memory; a control memory address register that holds the address of the microinstruction to be executed next and supplies it to the first control memory; a second control memory storing a specific field indicating a start address of a microinstruction routine stored in the first control memory; and a second control memory responsive to an update instruction signal of the instruction register from the second control memory. a plurality of registers that alternately hold specific fields read out from the second control memory; and a second address that supplies an address determined by an operation code of the instruction register and an instruction register update instruction signal for reading the second control memory. first addressing means for selecting at least a particular field of the second control memory and the output of the plurality of registers holding the particular field and supplying an address to the control memory address register; and means for controlling the first and second addressing means in response to one microinstruction in one control memory.

〔発明の実施例〕 次に、本発明によるマイクロプログラム制御方
式について実施例を挙げ、図面を参照して詳細に
説明する。
[Embodiments of the Invention] Next, embodiments of the microprogram control system according to the present invention will be described in detail with reference to the drawings.

第1図は本発明を適用した実施例としてデータ
処理装置の構成をブロツク図により示したもので
ある。この図において、1は命令レジスタ、2は
第1の制御メモリ、3はマイクロ命令レジスタ、
4は第1の制御メモリ用アドレスレジスタ、5は
+1加算器、11は第2の制御メモリ、12およ
び16は第2の制御メモリの特定フイールドを保
持する読出しレジスタ、13は第1のレジスタ回
路(アドレス手段)、14は制御回路(制御手
段)、15は第2のアドレス回路(アドレス手段)
である。第1の制御メモリ2は、通常、データ処
理装置において実行されるマクロ命令を解読し、
該マクロ命令に応じたマイクロ命令を実行する。
すなわち、マクロ命令が実行されるとき、第1の
制御メモリアドレスレジスタ4に開始アドレスが
信号線131を通して与えられる。そして、この
開始アドレスは信号線401から403を通して
加算器5へアドレスを“+1”するために送られ
る。加算されたアドレスは信号線501を通して
第1のレジスタ回路13に送出される。このと
き、第1のレジスタ回路13では、受けたアドレ
スが信号線501による+1加算器5からのアド
レスか、信号線121を通して送られてくる開始
アドレスか、信号線161を通して送られてくる
開始アドレスか、あるいは信号線111から11
3を通して送られてくる開始アドレスかを制御線
141,142,143および144からの信号
制御によつて選択する。いま、+1加算器5から
のアドレスが選択されていれば、前述のように第
1のアドレス回路13から“+1”加算されたア
ドレスが第1の制御メモリアドレスレジスタ4に
送られ、この結果、信号線401および402を
通して第1の制御メモリ2をアクセスする。これ
によつて、第1の制御メモリ2から信号線201
を通してアドレスロケーシヨンに記憶されている
マイクロ命令がマイクロ命令レジスタ3に読出さ
れる。通常は、加算器5によつて得られたアドレ
スにより次々に第1の制御メモリ2からマイクロ
命令がマイクロ命令レジスタ3に読出され、マイ
クロ命令が実行される。
FIG. 1 is a block diagram showing the configuration of a data processing apparatus as an embodiment to which the present invention is applied. In this figure, 1 is an instruction register, 2 is a first control memory, 3 is a microinstruction register,
4 is a first control memory address register, 5 is a +1 adder, 11 is a second control memory, 12 and 16 are read registers that hold specific fields of the second control memory, and 13 is a first register circuit. (address means), 14 is a control circuit (control means), 15 is a second address circuit (address means)
It is. The first control memory 2 typically decodes macro instructions executed in a data processing device;
A microinstruction corresponding to the macroinstruction is executed.
That is, when a macro instruction is executed, a start address is given to the first control memory address register 4 through the signal line 131. This start address is then sent to the adder 5 through signal lines 401 to 403 in order to increment the address by "+1". The added address is sent to the first register circuit 13 through the signal line 501. At this time, the first register circuit 13 determines whether the received address is the address from the +1 adder 5 via the signal line 501, the start address sent via the signal line 121, or the start address sent via the signal line 161. or signal lines 111 to 11
3 is selected by signal control from control lines 141, 142, 143 and 144. If the address from the +1 adder 5 is selected now, the address added by "+1" from the first address circuit 13 is sent to the first control memory address register 4 as described above, and as a result, The first control memory 2 is accessed through signal lines 401 and 402. As a result, from the first control memory 2 to the signal line 201
The microinstruction stored in the address location is read into the microinstruction register 3 through the microinstruction register 3. Normally, microinstructions are read out from the first control memory 2 to the microinstruction register 3 one after another according to the address obtained by the adder 5, and the microinstructions are executed.

ところで、このようにマクロ命令が実行される
ときは、まず命令レジスタ1にマクロ命令がメイ
ンメモリ(図示せず)より読出されて保持されて
いる。命令レジスタ1はレジスタ更新信号100
に応答して内容が更新される。命令レジスタ1が
更新されるとき、制御回路14の具体的な構成例
を示す第2図において、制御フリツプフロツプ1
4−1が同じ更新信号100をうけて“1”にセ
ツトされる。これにより、信号線1401,14
7を通して第2のアドレス回路15の最下位ビツ
トに“1”が現われる。そして、命令レジスタ1
が更新された結果、信号線101を通して更新さ
れた命令レジスタ1の動作コードが第2のアドレ
ス回路15へ送られる。第2のアドレス回路15
の出力は信号線151を通して第2の制御メモリ
11をアクセスする。第2の制御メモリ11かな
読出された特定フイールドの内容(開始アドレ
ス)は信号線111を通して読出レジスタ16、
または読出レジスタ12にセツトされる。ここ
で、どちらにセツトされるかは、制御回路14の
制御フリツプフロツプ14−1および14−2の
内容による。いま、第2図において、制御フリツ
プフロツプ14−1が“1”のとき、制御フリツ
プフロツプ14−2が“0”であるならば、信号
線1401,1402および1403を通して
AND回路14−8の一方の入力へ制御フリツプ
フロツプ14−1の内容が送られ、さらに信号線
1407,1411を通してAND回路14−8
の他方の入力に制御フリツプフロツプ14−2の
内容が送られる。このとき、AND回路14−8
は出力信号線1406に論理“1”を出力し、制
御フリツプフロツプ14−2に“1”がセツトさ
れる。この結果、AND回路14−4の出力信号
線146とAND回路14−5の出力信号線14
5には、それぞれの論理信号値が現われる。すな
わち、AND回路14−4は、信号線1401,
1402,1404を通して論理“1”が一方に
入力し、信号線1407,1408を通して論理
“1”が他方に入力され、その結果出力信号線1
46には“1”が出力される。また、AND回路
14−5には、信号線1401,1402,14
05を通して一方の入力に“1”が送られ、他方
の入力には信号線1407,1409を通して
“0”が与えられる。この結果、出力信号線14
5は論理“0”となる。
By the way, when a macro instruction is executed in this way, the macro instruction is first read out from the main memory (not shown) and held in the instruction register 1. Instruction register 1 is register update signal 100
The contents are updated in response to the When the instruction register 1 is updated, the control flip-flop 1 is updated in FIG.
4-1 receives the same update signal 100 and is set to "1". As a result, the signal lines 1401, 14
7, "1" appears at the least significant bit of the second address circuit 15. and instruction register 1
As a result of the update, the updated operation code of the instruction register 1 is sent to the second address circuit 15 through the signal line 101. Second address circuit 15
The output of the second control memory 11 is accessed through the signal line 151. The contents (start address) of the specific field read out from the second control memory 11 are sent to the read register 16 through the signal line 111.
Or it is set in the read register 12. Here, which one is set depends on the contents of control flip-flops 14-1 and 14-2 of control circuit 14. Now, in FIG. 2, when the control flip-flop 14-1 is "1" and the control flip-flop 14-2 is "0", the signal is transmitted through the signal lines 1401, 1402 and 1403.
The contents of the control flip-flop 14-1 are sent to one input of the AND circuit 14-8, and further passed through signal lines 1407 and 1411 to the AND circuit 14-8.
The contents of the control flip-flop 14-2 are sent to the other input of the control flip-flop 14-2. At this time, AND circuit 14-8
outputs a logic "1" to the output signal line 1406, and the control flip-flop 14-2 is set to "1". As a result, the output signal line 146 of the AND circuit 14-4 and the output signal line 14 of the AND circuit 14-5
5, respective logic signal values appear. That is, the AND circuit 14-4 connects the signal lines 1401,
Logic "1" is inputted to one side through signal lines 1402 and 1404, and logic "1" is inputted to the other side through signal lines 1407 and 1408. As a result, output signal line 1
"1" is output to 46. Also, the AND circuit 14-5 includes signal lines 1401, 1402, 14
"1" is sent to one input through signal lines 1407 and 1409, and "0" is applied to the other input through signal lines 1407 and 1409. As a result, the output signal line 14
5 becomes logic "0".

上記のごとく、信号線145と146とに付勢
された出力によつて、読出レジスタ12には、前
記第2の制御メモリ11より読出された開始アド
レスが信号線111,112を通してセツトさ
れ、読出レジスタ16にはセツトされない。この
状態において、いま、制御メモリアドレスレジス
タ4によりアクセスされている第1の制御メモリ
2の出力信号線202に、実行中のマクロ命令の
最後のマイクロ命令ステツプを示すマイクロ命令
があるとすれば、この出力信号によつて制御回路
14が再度応答する。このマクロ命令の最後のマ
イクロ命令ステツプを示すマイクロ命令に応答し
て、命令レジスタ1に保持されている命令語の動
作コードにより、第2のアドレス回路15を通し
て第2の制御メモリ11がアクセスされる。すな
わち、信号線202に得られた出力は、第2図に
示す通り、デコード回路14−10に与えられて
デコードされ、信号線1412,1413を通し
て制御フリツプフロツプ14−1をリセツトす
る。この結果、第2のアドレス回路15には信号
線147により最下位ビツト“0”が送られ、同
時に信号線101により送られた動作コードとに
より第2の制御メモリ11をアクセスする。そし
て、第2の制御メモリ11から読出された開始ア
ドレスは、信号線111,11,を通して第1の
アドレス回路13に送られる。ここでは、信号線
141により信号線113からの内容が選択され
て、信号線131を通して第1の制御メモリ用の
アドレスレジスタ4に送られ後、第1の制御メモ
リ2をアクセスする。その後、信号線202に開
始アドレスの切替指示のマイクロ命令が現われる
と、デコード回路14−10により信号線141
8,1419,1420に選択信号が与えられ
る。また、制御フリツプフロツプ14−2の内容
は、信号線1412が“1”になつたとき、
AND回路14−9の入力信号線1414も“1”
になり、信号線1407,1410を通して
AND回路14−9の出力信号線1415に“1”
を出力する。かくして、制御フリツプフロツプ1
4−3がセツトされる。開始アドレスの切替指示
があると、制御フリツプフロツプ14−3の出力
側からAND回路14−6の入力に“1”、AND
回路14−7の入力に“0”がそれぞれ信号線1
416,1417を通じて与えられているので、
AND回路14−6の出力信号線144には
“1”、AND回路14−7の出力信号線143に
は“0”が与えられる。これにより、第1のアド
レス回路13において、信号線144により読出
レジスタ12の内容が信号線121を通して選択
され、信号線131を通して第1の制御メモリ用
アドレスレジスタ4に送られる。
As described above, the start address read from the second control memory 11 is set in the read register 12 through the signal lines 111 and 112 by the outputs energized to the signal lines 145 and 146, and the start address is set in the read register 12 through the signal lines 111 and 112. It is not set in register 16. In this state, if there is a microinstruction indicating the last microinstruction step of the macroinstruction being executed on the output signal line 202 of the first control memory 2 that is currently being accessed by the control memory address register 4, then This output signal causes the control circuit 14 to respond again. In response to the microinstruction indicating the last microinstruction step of this macroinstruction, the second control memory 11 is accessed through the second address circuit 15 according to the operation code of the instruction word held in the instruction register 1. . That is, the output obtained on signal line 202 is applied to decode circuit 14-10 and decoded as shown in FIG. 2, and reset control flip-flop 14-1 through signal lines 1412 and 1413. As a result, the least significant bit "0" is sent to the second address circuit 15 via the signal line 147, and at the same time, the second control memory 11 is accessed by the operation code sent via the signal line 101. The start address read from the second control memory 11 is sent to the first address circuit 13 through signal lines 111, 11. Here, the contents from the signal line 113 are selected by the signal line 141 and sent to the address register 4 for the first control memory through the signal line 131, and then the first control memory 2 is accessed. After that, when a micro-instruction instructing to switch the start address appears on the signal line 202, the decoding circuit 14-10 causes the signal line 202 to
A selection signal is given to 8, 1419, and 1420. Furthermore, the contents of the control flip-flop 14-2 are as follows when the signal line 1412 becomes "1".
The input signal line 1414 of the AND circuit 14-9 is also “1”
and through signal lines 1407 and 1410
“1” on the output signal line 1415 of the AND circuit 14-9
Output. Thus, the control flip-flop 1
4-3 is set. When there is an instruction to switch the start address, "1" is output from the output side of the control flip-flop 14-3 to the input of the AND circuit 14-6, and
“0” is input to the circuit 14-7, respectively, to the signal line 1.
Since it is given through 416, 1417,
"1" is given to the output signal line 144 of the AND circuit 14-6, and "0" is given to the output signal line 143 of the AND circuit 14-7. As a result, in the first address circuit 13, the contents of the read register 12 are selected through the signal line 121 by the signal line 144, and sent to the first control memory address register 4 through the signal line 131.

次に、第2図において、命令レジスタ1の更新
信号が信号線100に現われると、制御フリツプ
フロツプ14−2は“1”に保持されたままであ
るから、次のタイミングでAND回路14−8に
より制御フリツプフロツプ14−2の出力を
“0”にする。この結果、前述と同様に、信号線
1407,1408,1409を通してAND回
路14−4および14−5に信号が送られるが、
今度はこれ等の信号が“0”のためにAND回路
14−5の出力信号線145に“1”が送られ
る。この結果、第2のアドレス回路15には前述
と同様、最下位ビツトに“1”が入り、第2の制
御メモリ11をアクセスする。そして、次のマク
ロ命令の実行開始アドレスが読み出され、信号線
115を通して読出レジスタ16にセツトされ
る。制御フリツプフロツプ14−1は信号線10
0に“1”が現われたのち、マクロ命令の最後の
マイクロ命令ステツプを示すマイクロ命令が第1
の制御メモリ2の出力信号202に現われると、
デコード回路14−10により信号がデコードさ
れ、信号線1412と信号線141とが“1”に
なる。これにより、制御フリツプフロツプ14−
1はリセツトされる。フリツプフロツプ14−1
がリセツトされると、再び命令レジスタ1の動作
コードと信号線147の出力が“0”になり、第
2のアドレス回路15は次のマクロ命令の開始ア
ドレスを読出するために信号線151を通じて第
2の制御メモリ11をアクセスする。これによ
り、信号線111,113を通して第1のアドレ
ス回路13へ読出された内容が送られる。第1の
アドレス回路13では、信号線141により信号
線113の出力を選択し、信号線113を通して
第1の制御メモリ用アドレスレジスタ4へセツト
する。制御回路14における信号線142は、セ
ツトされたアドレスの+1されたアドレスを第1
のアドレス回路13で選択するときに使用され
る。その後、再び開始アドレスの切替指示が第1
の制御メモリ2の出力信号線202に現われる
と、読出レジスタ12、または読出レジスタ16
のどちらかを選択することになる。ところで、制
御フリツプフロツプ14−2は“0”にセツトさ
れているため、信号線1412,1414が
“1”になつたとき、フリツプフロツプ14−2
の出力信号線1407の内容とからAND回路1
4−9の出力には“0”が現われて制御フリツプ
フロツプ14−3が“0”にセツトされる。する
と、AND回路14−7の出力信号線143は
“1”となり、AND回路14−6の出力信号線1
44は“0”となる。かくして、第1のアドレス
回路13では、信号線143により読出レジスタ
16の内容が信号線161を通して選択され、信
号線131を通して第1の制御メモリ用アドレス
レジスタ4にセツトされる。このようにして、開
始アドレスが読出レジスタ12と読出レジスタ1
6とを交互に使用することによつて、次々にマク
ロ命令を実行する。
Next, in FIG. 2, when the update signal of the instruction register 1 appears on the signal line 100, the control flip-flop 14-2 remains at "1", so the AND circuit 14-8 controls it at the next timing. The output of flip-flop 14-2 is set to "0". As a result, signals are sent to AND circuits 14-4 and 14-5 through signal lines 1407, 1408, and 1409, as described above.
This time, since these signals are "0", "1" is sent to the output signal line 145 of the AND circuit 14-5. As a result, "1" is entered in the least significant bit of the second address circuit 15 as described above, and the second control memory 11 is accessed. Then, the execution start address of the next macro instruction is read out and set in the read register 16 through the signal line 115. The control flip-flop 14-1 is connected to the signal line 10.
After “1” appears in 0, the microinstruction indicating the last microinstruction step of the macroinstruction is the first one.
appears in the output signal 202 of the control memory 2 of
The signal is decoded by the decoding circuit 14-10, and the signal line 1412 and the signal line 141 become "1". This causes the control flip-flop 14-
1 is reset. flipflop 14-1
When the instruction register 1 is reset, the operation code of the instruction register 1 and the output of the signal line 147 become "0" again, and the second address circuit 15 reads the start address of the next macro instruction through the signal line 151. The control memory 11 of No. 2 is accessed. As a result, the read contents are sent to the first address circuit 13 through the signal lines 111 and 113. In the first address circuit 13, the output of the signal line 113 is selected by the signal line 141, and is set to the first control memory address register 4 through the signal line 113. The signal line 142 in the control circuit 14 sends the set address +1 to the first address.
It is used when selecting in the address circuit 13 of. After that, the start address switching instruction is issued again as the first address.
appears on the output signal line 202 of the control memory 2, the read register 12 or the read register 16
You will have to choose between the two. By the way, since the control flip-flop 14-2 is set to "0", when the signal lines 1412 and 1414 become "1", the flip-flop 14-2
AND circuit 1 from the contents of the output signal line 1407 of
A "0" appears at the output of the flip-flop 4-9, and the control flip-flop 14-3 is set to "0". Then, the output signal line 143 of the AND circuit 14-7 becomes "1", and the output signal line 1 of the AND circuit 14-6 becomes "1".
44 becomes "0". Thus, in the first address circuit 13, the contents of the read register 16 are selected through the signal line 161 by the signal line 143, and set in the first control memory address register 4 through the signal line 131. In this way, the starting address is read register 12 and read register 1.
6 is used alternately to execute macro instructions one after another.

〔発明の効果〕〔Effect of the invention〕

以上の説明により明らかなように、本発明によ
れば、第2の制御メモリの読出用レジスタを複数
設け、かつこれ等のレジスタを制御手段により使
い分け、第2の制御メモリの開始アドレスを選択
的に使用することによつて、第2の制御メモリの
ビツト方向の容量を減らすことができるととも
に、第1の制御メモリのマイクロプログラムを増
加させることなく実行できる点において、ハード
ウエアの経済性を向上すべく得られる効果は大き
い。
As is clear from the above description, according to the present invention, a plurality of registers for reading the second control memory are provided, and these registers are used selectively by the control means, so that the start address of the second control memory can be selectively set. By using this method, the bitwise capacity of the second control memory can be reduced, and the economy of hardware can be improved in that the microprograms in the first control memory can be executed without increasing the number of microprograms. The effects that can be achieved are significant.

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

第1図は本発明による実施例の構成を示すブロ
ツク図、第2図は、第1図における制御回路の具
体的な構成例を示すブロツク図である。図におい
て、1は命令レジスタ、2は第1の制御メモリ、
3はマイクロ命令レジスタ、4はアドレスレジス
タ、5は+1加算器、11は第2の制御メモリ、
12,16は読出レジスタ、13は第1のアドレ
ス回路、14は制御回路、15は第2のアドレス
回路、14−1〜3は制御フリツプフロツプ、1
4−4〜9はAND回路、14−10はデコード
回路である。
FIG. 1 is a block diagram showing the configuration of an embodiment according to the present invention, and FIG. 2 is a block diagram showing a specific example of the configuration of the control circuit in FIG. 1. In the figure, 1 is an instruction register, 2 is a first control memory,
3 is a microinstruction register, 4 is an address register, 5 is a +1 adder, 11 is a second control memory,
12 and 16 are read registers, 13 is a first address circuit, 14 is a control circuit, 15 is a second address circuit, 14-1 to 3 are control flip-flops, 1
4-4 to 9 are AND circuits, and 14-10 is a decoding circuit.

Claims (1)

【特許請求の範囲】[Claims] 1 命令語を保持する命令レジスタと、マイクロ
プログラムを記憶する第1の制御メモリとを有
し、該命令レジスタからのマクロ命令にしたがつ
て該第1の制御メモリより読出されたマイクロプ
ログラムにより処理を行なうデータ処理装置にお
いて、前記第1の制御メモリから読出されたマイ
クロ命令を保持するマイクロ命令レジスタと、次
に実行すべきマイクロ命令のアドレスを保持し、
前記第1の制御メモリへ供給するための制御メモ
リアドレスレジスタと、前記第1の制御メモリに
格納されているマイクロ命令ルーチンの先頭アド
レスを示す特定フイールドを記憶している第2の
制御メモリと、該第2の制御メモリから前記命令
レジスタの更新指示信号に応答して読出された特
定フイールドを交互に保持する複数のレジスタ
と、前記第2の制御メモリを読出すため前記命令
レジスタの動作コードと命令レジスタの更新指示
信号により決められるアドレスを供給する第2の
アドレス手段と、少くとも前記第2の制御メモリ
の特定フイールドと該特定フイールドを保持する
前記複数のレジスタの出力を選択し、前記制御メ
モリアドレスレジスタへアドレスを供給する第1
のアドレス手段と、前記第1の制御メモリのある
1つのマイクロ命令に応答し、前記第1と第2の
アドレス手段を制御する手段とから構成されるこ
とを特徴とするマイクロプログラム制御方式。
1. It has an instruction register that holds instruction words and a first control memory that stores a microprogram, and is processed by the microprogram read from the first control memory in accordance with a macro instruction from the instruction register. a microinstruction register that holds the microinstruction read from the first control memory and an address of the microinstruction to be executed next;
a control memory address register for supplying to the first control memory; and a second control memory storing a specific field indicating a start address of a microinstruction routine stored in the first control memory; a plurality of registers that alternately hold specific fields read from the second control memory in response to an update instruction signal for the instruction register; and an operation code for the instruction register for reading the second control memory. a second address means for supplying an address determined by an update instruction signal of an instruction register; selecting at least a specific field of the second control memory; and outputs of the plurality of registers holding the specific field; The first one that supplies the address to the memory address register.
and means for controlling the first and second addressing means in response to one microinstruction in the first control memory.
JP10896683A 1983-06-17 1983-06-17 Microprogram control system Granted JPS603025A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10896683A JPS603025A (en) 1983-06-17 1983-06-17 Microprogram control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10896683A JPS603025A (en) 1983-06-17 1983-06-17 Microprogram control system

Publications (2)

Publication Number Publication Date
JPS603025A JPS603025A (en) 1985-01-09
JPH0133852B2 true JPH0133852B2 (en) 1989-07-17

Family

ID=14498173

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10896683A Granted JPS603025A (en) 1983-06-17 1983-06-17 Microprogram control system

Country Status (1)

Country Link
JP (1) JPS603025A (en)

Also Published As

Publication number Publication date
JPS603025A (en) 1985-01-09

Similar Documents

Publication Publication Date Title
US4821187A (en) Processor capable of executing one or more programs by a plurality of operation units
US4179731A (en) Microprogrammed control system
JPS60167034A (en) Auxiliary control memory for upgrading performance of cpu pipeline
JPH0346850B2 (en)
US4251862A (en) Control store organization in a microprogrammed data processing system
EP0378415A2 (en) Multiple instruction dispatch mechanism
JP3237858B2 (en) Arithmetic unit
US4674063A (en) Information processing apparatus having a sequence control function
US4967339A (en) Operation control apparatus for a processor having a plurality of arithmetic devices
KR920004279B1 (en) Microprocessor with pointer register
EP0164418B1 (en) Microprogram control system
EP0240606A2 (en) Pipe-line processing system and microprocessor using the system
JPH0133852B2 (en)
JPS6217773B2 (en)
JP2583506B2 (en) Data processing device
JPH0128965B2 (en)
JPH0561660B2 (en)
JPH0375904B2 (en)
JPS6362769B2 (en)
JPS6031646A (en) Data processor
JPH0290324A (en) Microprogram controller
JPS59128644A (en) Sequence control circuit
JPH0810429B2 (en) Micro program controller
JPS6158042A (en) Microprogram control system
JPS59191654A (en) Processor