JPS5862748A - Microprogram sequencer - Google Patents

Microprogram sequencer

Info

Publication number
JPS5862748A
JPS5862748A JP16143581A JP16143581A JPS5862748A JP S5862748 A JPS5862748 A JP S5862748A JP 16143581 A JP16143581 A JP 16143581A JP 16143581 A JP16143581 A JP 16143581A JP S5862748 A JPS5862748 A JP S5862748A
Authority
JP
Japan
Prior art keywords
register
address
subroutine
instruction
machine cycle
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
JP16143581A
Other languages
Japanese (ja)
Inventor
Toshikiyo Onuki
大貫 俊清
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
Tokyo Shibaura 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 Toshiba Corp, Tokyo Shibaura Electric Co Ltd filed Critical Toshiba Corp
Priority to JP16143581A priority Critical patent/JPS5862748A/en
Publication of JPS5862748A publication Critical patent/JPS5862748A/en
Pending 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/262Arrangements for next microinstruction selection

Landscapes

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

Abstract

PURPOSE:To decrease the execution time of subroutine jump and return instruction, by incorporating an instruction address register and a register file for return address storage of a subroutine. CONSTITUTION:A jump instruction CALL is interpreted in a machine cycle T6, the jump address C is selected at a multiplexer 1 and a register REG2 is selected as an instruction address register with a control circuit 5A. Further, in a machine cycle T7, the register REG2 is revised by +1 at an addition/subtraction circuit 2, and when a return instruction RTN is interpreted in a machine cycle 8, the selection of the internal register of a register file 4 is changed from the register REG2 to a register REG1 with the control circuit 5A, control is transferred from the subroutine C to the subroutine B and the processing from the address B+3 to the subroutine B is restarted.

Description

【発明の詳細な説明】 一発明はマイクロプログラムシーケンサに関する。 ゛ 従来、マイクロプログラムに上り制御される演算制御装
置ではマイクロプログラムが記憶された制御記憶装置か
ら所宇の妥イクロ命令を読出す場合、第1図Kmすよう
なマイクロプログラムシーケ/すが…いられていた。マ
イクロプログラムシーケンサは通常、マルチデレクサト
加減算回路2・インストラクションアドレスレジスタ3
・レジスタファイル4・制御回路5.!′で構成される
DETAILED DESCRIPTION OF THE INVENTION One invention relates to a microprogram sequencer.゛Conventionally, in an arithmetic control unit that is controlled by a microprogram, when reading out a valid micro-instruction from a control storage device in which a micro-program is stored, the micro-program sequence/return is performed as shown in Figure 1. It was getting worse. A microprogram sequencer usually has a multi-delete add/subtract circuit 2 and an instruction address register 3.
・Register file 4 ・Control circuit 5. ! ′.

すなわち、マルチプレクサlはインスト≠゛クシ゛ヨン
アドレスレVスタ30出”力信号PO,レジスタファイ
ル4の出力信+1 yihDR及びサブルーチンへのV
ヤンデアドレス信号sumムを制御回路5から出力され
る制−信号に基ふいて選択するようになってお)、その
□出力信号Minnは加減算回路2に入力されると共f
1図示し゛ない制御記憶装置にも入力されるようになっ
ている。また、2jII減算回路2の出力信号MADD
はインストラダショーンアドレスvyスタ3に入力され
ると共に1 レジスタファイル4にも入力されるように
なってお夛、制御回路5は信号ysmTJKよりレジス
タファイル4内の各しVスタの選択制御を行ない、さら
に読み書き動作の制御信号も生成するようKなっている
。かかるマイクロプログラムシーケンサによシサブルー
チンへのジャンプアドレスを作成する場合、第2図に示
すように先ず、インストラクションアドレスレジスタ3
にデータムが格納され、その出力信号PGはマルチプレ
クサ1を介して図示しない制御記憶装置にメモリアドレ
ス信号MADRとして出力され、さらにアドレス信号M
AI)lは制御回路5から出力される選択信号181乙
に基づいてしシスタフアイル4内のしVスタRIG工に
書込まれる(−fシンサイクA−TI)6次のマシンサ
イクルで2では加減算回路2によりインストラクション
アドレスレジスタ3の内容が+1されると共に、しVス
タIIQIO内容も更新される。しかして、!シンサイ
クルT3では1図示しない制御ffi惜装置から続出さ
れ丸マイクロ命令がジャンプ命令0ALLであ〉、vヤ
ンプ命令の飛先アドレス1が図示しない制御記憶装置に
出力されると共に、制御回路5によりしシスタフアイル
4の中からレジスタRIG 2が選択される。かくして
、マシンサイクルテ4では加減算回路2によシインスト
ラクショ/アドレスレジスタ3及びレジスタRIG2の
内容が+1ずつ更新されサブルーチンBが処理される。
That is, the multiplexer 1 inputs the input signal PO, the output signal of the register file 4 +1 yihDR, and the V output signal to the subroutine.
The output signal Minn is selected based on the control signal output from the control circuit 5), and the output signal Minn is input to the addition/subtraction circuit 2 and
1. The information is also input to a control storage device (not shown). In addition, the output signal MADD of the 2jII subtraction circuit 2
is input to the intra-strata address vy star 3 and also to the 1 register file 4, and the control circuit 5 controls the selection of each V star in the register file 4 from the signal ysmTJK. , and also generate control signals for read/write operations. When creating a jump address to a subroutine using such a microprogram sequencer, first, as shown in FIG.
A datum is stored in the memory address signal MADR, and its output signal PG is output as a memory address signal MADR to a control storage device (not shown) via a multiplexer 1.
AI) l is written to the V star RIG in the system file 4 based on the selection signal 181 B output from the control circuit 5 (-f syncycle A-TI) 6 In the next machine cycle, addition and subtraction are performed in 2. The contents of the instruction address register 3 are incremented by 1 by the circuit 2, and the contents of the V-star IIQIO are also updated. However,! In the thin cycle T3, the round microinstructions successively issued from the unillustrated control ffi storage device are jump instructions 0ALL, and the jump address 1 of the v jump instruction is output to the unillustrated control storage device, and the control circuit 5 outputs the jump instruction 0ALL. Register RIG 2 is selected from the system file 4. Thus, in machine cycle Te4, the contents of the instruction/address register 3 and the register RIG2 are updated by +1 by the addition/subtraction circuit 2, and subroutine B is processed.

以下同様の処理が繰返され、マシンサイクルT9の処理
に移ると、図示しない制御記憶装置のアドレス1+4か
ら読出されたフィクロ命令がリターン命令Ill″Nな
ので、制御回路5から出力される選択信号1引ルにより
しシスタRIG工が選択され、その出力信号ム+2がマ
シンサイクルTIOにおいてマルチプレクサ1によりM
択され、図示しない制御記憶装置に出力される。なお%
第2図において下線で示したアドレス情報は1次のマシ
ンサイクルにおいてアドレス格報として使用されるデー
タであることを表わしている。しかしながら、かがる従
来のマイクロデログッムシーケンサインス′トラタVM
ンアドレスレジスタ3がしシスタフアイル4と分離して
いるため、実際の回路設計が複雑化すると共に、マルチ
プレクサ10入力信号数が増加するといった欠点があっ
た。また、第3図に他の従来例を示す。図においてマル
チプレクサ1゜加減算回路2、インストラクションアド
レスレジスタ3、しシスタフアイル4及び制−回路5は
それぞれ上述(t41図)と同一の装置であり、加減算
回路2の出力信号はインストラクションアドレスレジス
タ3を介してレジスタファイル4に転送されるようにな
っている。このようなレジスタ制御装置によりサプルー
チ/への分鼓アドレスを作成する場合、第4図に示すよ
うに先ず、インストラクションレジス、り3及び加減算
回路2により、順次図示しない制御記憶装置のメモリア
ドレスがム、ム+1、ム+2と艇新され(マシンサイク
ルTI%T2)、マシンサイクルT3においてVヤンブ
命令0AIIIIが検出されると、その飛先アドレス1
がマルチプレクサ1によ多選択され、図示しない記惜装
難に出力されると共に、サブルーチンBから戻った場合
の実行開始アドレス表+2がしシスタフアイル4の中の
しyスタIIIIGIに書込まれる。
Similar processing is repeated thereafter, and when the process moves to machine cycle T9, the ficro instruction read from address 1+4 of the control storage device (not shown) is a return instruction Ill''N, so the selection signal 1 output from the control circuit 5 is The output signal M+2 is selected by multiplexer 1 in machine cycle TIO.
is selected and output to a control storage device (not shown). In addition%
The underlined address information in FIG. 2 represents data used as address information in the first machine cycle. However, the conventional microderogram sequencer 'Torata VM'
Since the address register 3 is separated from the system file 4, the actual circuit design becomes complicated and the number of input signals to the multiplexer 10 increases. Further, FIG. 3 shows another conventional example. In the figure, the multiplexer 1゜addition/subtraction circuit 2, instruction address register 3, system file 4, and control circuit 5 are the same devices as described above (Figure t41), and the output signal of the addition/subtraction circuit 2 is sent via the instruction address register 3. The data is then transferred to the register file 4. When creating a subroutine address using such a register control device, as shown in FIG. , Mu+1, Mu+2 (machine cycle TI%T2), and when the V jump command 0AIII is detected in machine cycle T3, the destination address 1
is selected by the multiplexer 1 and outputted to a storage device (not shown), and an execution start address table +2 when returning from subroutine B is written to the register IIIGI in the system file 4.

しかして、マシンサイクルT9の処理に移ると、すブル
ーチンCからのリターン命令によりインストラクション
アドレスレジスタ3にはアドレスB+4が格納され、こ
のアドレスから読出されたマイク關命令がサブルーチン
1のリターン命令RTNであるやで、制御回路5から出
力される選択信号ysmt+によりレジスタRmG1が
選択され、その出力信号ム+2がマシンサイクルTIO
においてマルチプレクサ1により選択され5図示しない
?!]Q御配憶装置に出力される。以下同様の処理が繰
返し実行される。しかしながら%第3図に示す如きマイ
クロプログラムシーケンサでは、加減算回路2の出力信
号を直接レジスタファイル4に書込むことができず、メ
モリアドレスの更新に必要以上、の時間をかけているこ
とになり、時間的な無駄を生じているという間層があっ
た。よって2本発明は上記欠点に基づいてなされ九もの
であシ、インストラクションアドレスレジスタとサブル
ーチンからのリターンアドレス保持のためのレジスタフ
ァイルとを一体化するととくより、サブルーチンジャン
プならびにリターン命令の実行を1マシンサイクルにて
行ない、且つ回路素子数の削減をはかると共に実装設計
を簡略化したマイクロプログツムシーケンサを提供する
ことを目的とする。
Then, when processing moves to machine cycle T9, address B+4 is stored in the instruction address register 3 by the return instruction from subroutine C, and the microphone instruction read from this address is the return instruction RTN of subroutine 1. Then, the register RmG1 is selected by the selection signal ysmt+ output from the control circuit 5, and its output signal M+2 is output from the machine cycle TIO.
selected by multiplexer 1 at 5 (not shown). ! ] Output to the Q control storage device. The same process is repeated thereafter. However, in the microprogram sequencer shown in FIG. 3, the output signal of the adder/subtracter circuit 2 cannot be written directly to the register file 4, and it takes more time than necessary to update the memory address. There was a feeling that it was a waste of time. Therefore, the present invention has been made based on the above-mentioned drawbacks, and by integrating an instruction address register and a register file for holding a return address from a subroutine, execution of a subroutine jump and a return instruction can be executed in one machine. It is an object of the present invention to provide a microprogram sequencer that performs operations in cycles, reduces the number of circuit elements, and simplifies packaging design.

以下にこの発明を説明する。This invention will be explained below.

この発明の一実施例を示す第5図において、マルチプレ
クサ1、加減算回路2、レジスタファイル4及び制御回
路5ムはそれぞれ上述と同様の装置でアシ、レジスタフ
ァイル4への書込み命令a書込信号の立上シ又は立下シ
波形で実行するようになっている。
In FIG. 5 showing an embodiment of the present invention, a multiplexer 1, an addition/subtraction circuit 2, a register file 4, and a control circuit 5 are the same devices as described above. It is designed to be executed using a rising waveform or a falling waveform.

このような構成において、その動作を第6図のタイムチ
ャートを参照して説明する。先ず、マシンサイクルTI
及びT2では、制御回路5から出力される選択信号1F
81Lによプレジスタフアイル4内のレジスタRIII
GOがインストラクションアドレスレジスタとして使用
され、加減算回路2を介してその値が+1ずつ更新され
る0次に、マシンサイクルT3では図示しない制御記憶
装置から読出された命令コードがジャンプ命令0ALL
と解読されたので、その飛先アドレス(ジャンプアドレ
ス)Bがマルチプレクサ1により選択され図示しない制
御i″:tii^置に出力されると共に1選択信号11
BmLによシレジスタRKG 1が選択され、次アドレ
ス1日がレジスタRIGIに書込まれる。かくL −C
、マシンサイクルT4及びT5ではt/レジスタIGI
 73Eインストラクシヨンアト1/スレジスタとして
使用され、加減算器2によシ各マシンサイクル毎に+1
ずつ更新される。なお、この間レジスタRIGOの1容
は変化しない、しかしで、マシンサイクルT6では再び
ジャンプ命令(!ALLが解読され、そのジャンプアド
レスCがマルチプレクサlにより選択されると共に制に
一回路5ムにょプレシス1RBCk2カインストラクシ
ヨンアドレスレジスタとして選択される。この後、マシ
ンブイクルT7 では加減呉回#&2によ・1′・シレ
ジスタRna 2が+1だけ史后され、さらにマシンサ
イクルT8ではリターン命令RTNが#献されると、制
御回路5ム&CよシレVスタフアイル4の内部レジスタ
の選択がレジスタIIKG 2からレジスタ1llG 
1に変更され、サブルーチンCからサブルーチン1の処
理に制御が移す、アドレスB+3からサブルーチン1の
処理が再開される。かくして、マシンサイクルTIOで
は再びリターン命令RTNが解読され、制御回路5ムに
よ)インストラクションアドレスレジスタがレジスタR
IG 1からレジスタR11iGOに変更され、以後加
減算回路2によりレジスタR11t()Oが+1ずつ更
新される(マシンサイクル’flt、テ12)。以下同
様にして、かかるアドレス更新処理が繰返し実行される
The operation of such a configuration will be explained with reference to the time chart of FIG. First, machine cycle TI
and T2, the selection signal 1F output from the control circuit 5
Register RIII in preregister file 4 by 81L
GO is used as an instruction address register, and its value is updated by +1 via the addition/subtraction circuit 2. Next, in machine cycle T3, the instruction code read from the control storage device (not shown) is the jump instruction 0ALL.
Therefore, the destination address (jump address) B is selected by the multiplexer 1 and output to the control i'':tii^ position (not shown), and the 1 selection signal 11
Register RKG 1 is selected by BmL, and the next address 1 day is written to register RIGI. Write L -C
, t/register IGI in machine cycles T4 and T5
73E instruction is used as an at 1/s register and inputs +1 to the adder/subtractor 2 every machine cycle.
It will be updated one by one. During this time, the contents of the register RIGO do not change. However, in machine cycle T6, the jump command (!ALL) is decoded again, and its jump address C is selected by the multiplexer l, and one circuit 5mnyo presis 1RBCk2 is selected. After this, in machine cycle T7, register Rna2 is incremented by +1 by addition/subtraction cycle #&2, and furthermore, in machine cycle T8, a return command RTN is given. Then, the selection of the internal registers of control circuit 5 and staff file 4 is from register IIKG2 to register 1llG.
1, control is transferred from subroutine C to subroutine 1, and processing of subroutine 1 is restarted from address B+3. Thus, in the machine cycle TIO, the return instruction RTN is decoded again, and the instruction address register is set to register R by the control circuit 5.
IG1 is changed to register R11iGO, and thereafter register R11t()O is updated by +1 by addition/subtraction circuit 2 (machine cycle 'flt, Te12). Thereafter, the address update process is repeatedly executed in the same manner.

以上説明した上うにこの発明のマイクロプログツムシー
ケンサによれば、インストラクションアドレスレジスタ
とサブルーチンからのリターンアドレス保持のためのレ
ジスタファイルとを一体化することにより、次に実行す
べきマイクロインストラクションが格納される制御記憶
装置のアドレスを選択生成するマルチプレクサへの入力
信号−の数を低減することができると共に、インストラ
クションアドレスレジスタが不要トなり、しシスタフア
イルの内部しVスタを効率良く使用することができ装置
のコストダウンを図ることができる。
As described above, according to the microprogram sequencer of the present invention, the next microinstruction to be executed is stored by integrating the instruction address register and the register file for holding the return address from the subroutine. It is possible to reduce the number of input signals to the multiplexer that selects and generates the address of the control storage device, eliminates the need for an instruction address register, and allows efficient use of the internal V-star in the system file. It is possible to reduce costs.

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

第1図及び第3図はそれぞれ従来のマイクロプログラム
シーケンサの一構成例を示すブロック図、II2図及び
第4図はそれぞれその動作を叢り明するためのタイムチ
ャート、第5図はこの発明の一実施例を示すブロック図
、冨6図はその動作例を示すタイムチャートである。 1・・・マルチプレクサ、2−・・加減算回路、3・・
・レジスタ、4・・・しシスタフアイル、5,5ム・・
・制御回路。 出鵬人代理人  猪 股  清
FIGS. 1 and 3 are block diagrams showing an example of the configuration of a conventional microprogram sequencer, FIGS. II2 and 4 are time charts for explaining its operation, and FIG. A block diagram showing one embodiment, and Fig. 6 is a time chart showing an example of its operation. 1...Multiplexer, 2-...Addition/subtraction circuit, 3...
・Register, 4... and system file, 5,5m...
・Control circuit. Kiyoshi Inomata, agent for Izuho

Claims (1)

【特許請求の範囲】 サブルーチンジャンプならびにリターン命令の実行を1
マシンサイクルにて行らマイクロプログラムシーケンサ
であって一下記(4)〜((’)K示す構晟を有するこ
とを特徴′とするマイクロプログラムシーケンサ。 囚 サブルーチンからのリターンアドレスi保持する複
数□のレジスタならびに次に実行すべき命令が格納−れ
るアドレスを保持するレジスタを含むレジスタファイル
、 (B)  少くとも上記レジスタファイル出力ならびに
サブルーチン哀のジャンプ先アドレス信萼を入力とする
マルチプレクサ、゛ (q 上記!ルチプレクサ出力を所爺め値だけ゛簀新し
、上記レジスタファイルへ供給するアドレス更新ならび
にレジスタファイル制御回路。
[Claims] Execution of subroutine jump and return instructions in one
A microprogram sequencer that is executed in a machine cycle and is characterized by having a structure shown in (4) to ((')K below. (B) A multiplexer that receives at least the output of the above register file and the jump destination address signal of the subroutine as input, ゛(q) !Address update and register file control circuit that updates the multiplexer output by a predetermined value and supplies it to the register file.
JP16143581A 1981-10-09 1981-10-09 Microprogram sequencer Pending JPS5862748A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP16143581A JPS5862748A (en) 1981-10-09 1981-10-09 Microprogram sequencer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP16143581A JPS5862748A (en) 1981-10-09 1981-10-09 Microprogram sequencer

Publications (1)

Publication Number Publication Date
JPS5862748A true JPS5862748A (en) 1983-04-14

Family

ID=15735053

Family Applications (1)

Application Number Title Priority Date Filing Date
JP16143581A Pending JPS5862748A (en) 1981-10-09 1981-10-09 Microprogram sequencer

Country Status (1)

Country Link
JP (1) JPS5862748A (en)

Similar Documents

Publication Publication Date Title
US4550369A (en) Apparatus and method for processing macroinstructions and microinstructions
JPS5862748A (en) Microprogram sequencer
US3427593A (en) Data processor with improved program loading operation
JPH0528431B2 (en)
KR880000817B1 (en) Data processing apparatus and method
JPS6148735B2 (en)
JPS6339928B2 (en)
JPS58200349A (en) Microprogram controller
JPH0562796B2 (en)
JPS5925251B2 (en) Creation method for arithmetic control signals in microprogram-controlled electronic computers
JPS60157635A (en) Microprogram controller
JPS6152748A (en) Trace selection system of microprogram development device
JP2989830B2 (en) Vector processing method
JPS607294B2 (en) Microprogram loading method
SU732872A1 (en) Address former
JPS6027417B2 (en) data processing equipment
JPS62296231A (en) Subroutine processing system in microprogram processor
JPS60225253A (en) Information processing device
JPS6250854B2 (en)
JPS59225450A (en) Microprogram controller
JPS6325372B2 (en)
JPS58221446A (en) Method for selecting stack address
JPH03201142A (en) Trace data output circuit
JPH0133852B2 (en)
JPS6028014B2 (en) microprocessor