JPS6115453B2 - - Google Patents

Info

Publication number
JPS6115453B2
JPS6115453B2 JP13672178A JP13672178A JPS6115453B2 JP S6115453 B2 JPS6115453 B2 JP S6115453B2 JP 13672178 A JP13672178 A JP 13672178A JP 13672178 A JP13672178 A JP 13672178A JP S6115453 B2 JPS6115453 B2 JP S6115453B2
Authority
JP
Japan
Prior art keywords
level
interrupt
microprogram
program
control circuit
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
JP13672178A
Other languages
Japanese (ja)
Other versions
JPS5563444A (en
Inventor
Masakazu Okada
Seiichi Yasumoto
Hitoshi Fushimi
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP13672178A priority Critical patent/JPS5563444A/en
Publication of JPS5563444A publication Critical patent/JPS5563444A/en
Publication of JPS6115453B2 publication Critical patent/JPS6115453B2/ja
Granted legal-status Critical Current

Links

Description

【発明の詳細な説明】 本発明は、複数のレベルを有するマイクロプロ
グラム制御装置に係り、特に、高速の処理を実現
するマイクロプログラム制御回路に関する。
DETAILED DESCRIPTION OF THE INVENTION The present invention relates to a microprogram control device having a plurality of levels, and particularly to a microprogram control circuit that realizes high-speed processing.

従来、ある機器をマイクロプログラム方式によ
つて制御する場合、プログラムの簡略化及びハー
ドウエア物量の大きさの制約から、マイクロプロ
グラムの処理は、一つのレベルで、シーケンシヤ
ルに処理する方法がとられている。しかるにマイ
クロプログラムによる処理は、同一の機能をワイ
ヤドロジツクで実現した場合に比べて、処理速度
が遅いため、特に高速の処理が要求される。計算
機あるいは周辺機器に使用すると、処理性の面で
問題がある。
Conventionally, when controlling a certain device using a microprogram method, due to the simplification of the program and restrictions on the amount of hardware, the microprogram processing was performed sequentially at one level. There is. However, processing using a microprogram is slower than when the same function is implemented using wire logic, so particularly high-speed processing is required. When used in computers or peripheral devices, there are problems in terms of processing performance.

また、最近、マイクロプログラムの多重レベル
処理に適した割込みレベル制御機能を有するLSI
等が開発されてきているが、これらの割込み処理
の方法は、まず、実行中のマイクロプログラムに
対し、割込みが発生し、割込みが受け付けられる
と、現在実行中のプログラムを一時中断し、割込
み要因を読出して判定し、しかる後に、該当する
ジヤンプ先を決定し、該当する割込み処理に移る
というものである。この方法では、1回の割込み
が発生する度に、要因の判定をジヤンプ先の決定
に、プログラム処理に換算して、2ステツプ相当
の時間を要するため、高速の処理が要求された場
合には処理速度の点で問題がある。
In addition, recently, LSIs with interrupt level control functions suitable for multilevel processing of microprograms have been developed.
etc. have been developed, but in these interrupt handling methods, first, an interrupt occurs in a microprogram that is being executed, and when the interrupt is accepted, the currently executing program is temporarily suspended, and the cause of the interrupt is After that, the corresponding jump destination is determined, and the process proceeds to the corresponding interrupt processing. With this method, each time an interrupt occurs, determining the cause and determining the jump destination takes the equivalent of two steps in program processing, so if high-speed processing is required, There is a problem with processing speed.

本発明の目的は、高速処理性を有する多重レベ
ル、マイクロプログラム割込制御回路を提供する
ことにある。
SUMMARY OF THE INVENTION An object of the present invention is to provide a multi-level, microprogram interrupt control circuit with high processing speed.

本発明の要点は、アドレス制御部にレベル制御
回路を付加し、マイクロプログラムの実行タイミ
ングをそのまま割込処理のタイミングにも使用
し、割込受付け判定と、レベルの変換を実行さ
せ、マイクロプログラムの処理を中断することな
く、レベルの遷移を行なうことを実現するもので
ある。以下、実施例により、詳細な説明を行な
う。
The main point of the present invention is to add a level control circuit to the address control section, use the microprogram execution timing as it is for the interrupt processing timing, and execute interrupt acceptance determination and level conversion. This realizes level transitions without interrupting processing. A detailed explanation will be given below using examples.

第1図は、本発明を適用するマイクロプログラ
ム制御装置の一例を示すブロツク図である。マイ
クロプログラムメモリ(ROM)2からは、アド
レス制御部(ROMAR)4から与えられるアドレ
スに従つて内容が読み出され、プログラムレジス
タ(PR)3にセツトされる。RP3の出力は、コ
ントロールバス(CTL BUS)上に現われ、演算
回路(μ―P)1のレジスタアドレス、データ、
或いは、命令デコーダ(DEC)5を介して、μ
―P1に与えられる。また、図には示されていな
いが、CTL BUSは、本制御装置を有する機器を
制御する。各種フリツプフロツプやレジスタのセ
ツト、クリアを指定するのに用いられる。
FIG. 1 is a block diagram showing an example of a microprogram control device to which the present invention is applied. The contents are read from the microprogram memory (ROM) 2 according to the address given from the address control unit (ROMAR) 4 and set in the program register (PR) 3. The output of RP3 appears on the control bus (CTL BUS), and the register address, data,
Alternatively, μ via the instruction decoder (DEC) 5
-Given to P1. Furthermore, although not shown in the figure, the CTL BUS controls equipment that includes this control device. Used to specify the setting and clearing of various flip-flops and registers.

IN BUSには、外部ソースレジスタの内容がの
り、μ―P1がそれを用いてデータの処理を行な
う。μ―P1の処理結果は、OUT BUSに出力さ
れ、外部デイステイネーシヨン、レジスタに与え
られる。また、ROMAR4は、通常は、内蔵する
プログラムカウンタを1更新しているが、ジヤン
プ命令などを実行する場合は、CTL BUS或いは
OUT BUSの内容を取り込んで使用する。
The contents of the external source register are placed on the IN BUS, and μ-P1 uses this to process the data. The processing result of μ-P1 is output to OUT BUS and given to an external destination and register. Also, ROMAR4 normally updates the built-in program counter by 1, but when executing a jump instruction etc., CTL BUS or
Capture and use the contents of OUT BUS.

マイクロプログラム制御方式は、ワイヤドロジ
ツクに比べて処理性が低いため、1ステツプの実
行と、次のステツプの実行を同時に行つている。
第1図ではクロツクの先頭から、1ステツプの実
行が始まることになる。つまり、クロツクの立上
りによつて、それまで読み出されていたROM2
の内容がPR3にセツトされ、CTL BUS上に出
力され、1ステツプの実行が開始する。一方、ク
ロツクの立上りによつて、ROMAR4はアドレス
を更新し、次にステツプの内容をROM2から読
み出し始める。本発明の割込制御回路はROMAR
4を制御するのである。このうち、レベル制御部
の回路図を第2図に示す。
The microprogram control system has lower processing efficiency than wire logic, so one step and the next step are executed simultaneously.
In FIG. 1, execution of one step starts from the beginning of the clock. In other words, at the rising edge of the clock, ROM2, which had been read up to that point,
The contents of PR3 are set to PR3, output on CTL BUS, and execution of one step starts. On the other hand, as the clock rises, ROMAR 4 updates the address and then starts reading the contents of the step from ROM2. The interrupt control circuit of the present invention is ROMAR
4. Of these, the circuit diagram of the level control section is shown in FIG.

外部からの各種の割込みは、割込レジスタ6に
入つており、本レジスタ6は、第3図に示すクロ
ツクのTP2でトリガされている。ここで、或る
割込みが発生すると、TP2の立上りで、レジス
タ6の出力がプライオリテイエンコーダ(PE)
7に与えられる。PE7の出力は、割込み専用の
ジヤンプアドレスレジスタに与えられ、ROMAR
4の出力の決定に用いられると同時に、レベル分
割回路15に与えられる。この分割回路は、ゲー
トのみから構成できるもので、種々の割込に対
し、出力2ビツトを共に1とするか、下ビツトの
み1とするかを選定するものである。一方、それ
まで実行されていたプログラムレベルは、レジス
タ(LEVEL)10の下2ビツトに示されてお
り、比較器(COMP)8により、割込みが受け付
けられるか否かの判定が行なわれる。例えば、現
在実行していたプログラムレベルを(0,0)と
し、割込んだレベルを(0,1)とすると、
COMP8の出力が“1”となり、次のTP1の立
上りで、フリツプフロツプ(F/F)11がセツ
トされ、ゲート13,14により、TP3の立上
りで、レジスタ10がトリガされる。一方、4ビ
ツトセレクタ(SEL)9は、S入力が“0”の場
合は、A側入力を出力し、“1”の場合は、B側
入力を出力するが、このとき、F/F11がセツ
トされているため、LEVEL10の下2ビツトを
上2ビツトに、割込んだレベルを下2ビツトとし
て、LEVEL10の入力に与えることになる。従
つて、前記TP3入力後LEVEL10の出力は、上
2ビツトが(0,0)、下2ビツトが(0,1)
となり、実行レベルは、(0,0)から(0,
1)へ移つたことになる。
Various external interrupts are entered into the interrupt register 6, which is triggered by the clock TP2 shown in FIG. Here, when a certain interrupt occurs, the output of register 6 goes to the priority encoder (PE) at the rising edge of TP2.
7 is given. The output of PE7 is given to the jump address register dedicated to interrupts, and ROMAR
It is used to determine the output of 4 and is also applied to the level division circuit 15. This dividing circuit can be constructed only from gates, and selects whether to set both two output bits to 1 or to set only the lower bit to 1 in response to various interrupts. On the other hand, the program level that has been executed up to that point is indicated by the lower two bits of the register (LEVEL) 10, and the comparator (COMP) 8 determines whether or not the interrupt is accepted. For example, if the currently executing program level is (0,0) and the interrupt level is (0,1), then
The output of COMP8 becomes "1", the flip-flop (F/F) 11 is set at the next rising edge of TP1, and the register 10 is triggered by the gates 13 and 14 at the rising edge of TP3. On the other hand, the 4-bit selector (SEL) 9 outputs the A side input when the S input is "0", and outputs the B side input when the S input is "1". Since this is set, the lower 2 bits of LEVEL10 are used as the upper 2 bits, and the interrupt level is used as the lower 2 bits, which are applied to the input of LEVEL10. Therefore, after inputting TP3, the output of LEVEL10 has the upper 2 bits (0, 0) and the lower 2 bits (0, 1).
Therefore, the execution level is from (0,0) to (0,
This means that we have moved on to 1).

一方、本図には示していないが、ROMAR4に
対しては、F/F11がセツトされている時、
ROMARの出力として、ジヤンプアドレスレジス
タの内容を選ぶように制御すれば、割込先へジヤ
ンプさせることができる。
On the other hand, although not shown in this figure, for ROMAR4, when F/F11 is set,
By controlling the contents of the jump address register to be selected as the ROMAR output, it is possible to jump to the interrupt destination.

次に、割込処理のマイクロプログラムで、リタ
ーン命令が発行されると、ゲート13,14を介
して、前と同様、LEVEL10にトリガ入力が入
る。一方、この場合はF/F11はクリアされて
いるため、SEL9はA側入力、すなわち上2ビツ
トは(0,0)、下2ビツトは前に退避していた
レベル(0,0)を選んで、LEVEL10の入力
へ与える。従つて、RETURN命令が発行される
と、LEVEL10の出力は全て0となり、ブログ
ラムレベルは(0,0)に戻ることになる。
Next, when a return instruction is issued in the interrupt processing microprogram, a trigger input is input to LEVEL 10 via gates 13 and 14 as before. On the other hand, in this case, F/F11 is cleared, so SEL9 selects the A side input, that is, the upper 2 bits are (0, 0) and the lower 2 bits are the previously saved level (0, 0). And give it to the input of LEVEL10. Therefore, when the RETURN command is issued, all outputs of LEVEL10 become 0, and the program level returns to (0, 0).

レベル(0,1)実行中にレベル(1,1)が
割込んだ場合も全く同様の動作を行なう。そのタ
イムチヤートを第4図に示す。
If level (1, 1) interrupts during level (0, 1) execution, exactly the same operation is performed. The time chart is shown in Figure 4.

以上に述べた様に、従来の回路に、レジスタ、
セレクタ、比較器及びフリツプフロツプを追加す
るだけで、自動的にマイクロプログラムのレベル
を変えることができる割込制御回路が実言でき
る。本発明により、割込を使用した高速のマイク
ロプログラム制御装置において、更に割込処理に
おけるオーバーヘツドを全く無くすことができ、
装置の処理性を大巾に向上させることができる。
As mentioned above, in conventional circuits, registers,
By simply adding a selector, a comparator, and a flip-flop, an interrupt control circuit that can automatically change the level of a microprogram can be realized. According to the present invention, in a high-speed microprogram control device using interrupts, it is possible to completely eliminate overhead in interrupt processing.
The processing efficiency of the device can be greatly improved.

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

第1図は本発明を適用するマイクロプログラム
制御装置の概念図、第2図は本発明による割込制
御回路の一実施例を示す要部回路図、第3図はク
ロツクパルスを示す図、第4図は第2図における
レベル遷移動作を示すタイムチヤートである。 6…割込レジスタ、7…プライオリテイエンコ
ーダ、8…比較器、9…4ビツトセレクタ、10
…4ビツトレジスタ、15…レベル分割回路。
FIG. 1 is a conceptual diagram of a microprogram control device to which the present invention is applied, FIG. 2 is a circuit diagram of a main part showing an embodiment of an interrupt control circuit according to the present invention, FIG. 3 is a diagram showing clock pulses, and FIG. The figure is a time chart showing the level transition operation in FIG. 2. 6... Interrupt register, 7... Priority encoder, 8... Comparator, 9... 4-bit selector, 10
...4-bit register, 15...level division circuit.

Claims (1)

【特許請求の範囲】 1 マイクロプログラムを記憶するプログラムメ
モリと、このメモリの読出し番地を制御するアド
レス制御部と、実行する1ステツプ命令をラツチ
するレジスタと、プログラムの内容に応じた演算
をする演算回路と、プログラム制御をするための
クロツク生成回路とを有するマイクロプログラム
制御回路において、割込みが発生した際に、現在
実行中のマイクロプログラム実行に並行してプロ
グラムのレベル判定をし、割込受付け可能であれ
ば実行中のレベルを記憶しかつ実行レベルを割込
みレベルに移す制御回路を設け、プログラム実行
を中断することなくプログラムレベルの遷移を行
なうことを特徴とするマイクロプログラム割込制
御回路。 2 特許請求の範囲第1項記載のマイクロプログ
ラム制御回路において、割込み処理プログラムの
中でリターン命令が発行された際に、割込み処理
時に記憶したレベルを読出し、このレベルを実行
レベルとして以後のマイクロプログラムの実行を
行なう制御回路を設けたマイクロプログラム割込
制御回路。
[Claims] 1. A program memory that stores a microprogram, an address control unit that controls the read address of this memory, a register that latches a 1-step instruction to be executed, and an operation that performs an operation according to the contents of the program. When an interrupt occurs in a microprogram control circuit that has a circuit and a clock generation circuit for program control, it is possible to determine the level of the program in parallel with the currently executing microprogram and accept the interrupt. A microprogram interrupt control circuit is provided with a control circuit that stores a level being executed and shifts the execution level to an interrupt level, thereby making a program level transition without interrupting program execution. 2. In the microprogram control circuit according to claim 1, when a return instruction is issued in the interrupt processing program, the level stored during the interrupt processing is read, and this level is used as the execution level for subsequent microprograms. A microprogram interrupt control circuit equipped with a control circuit that executes.
JP13672178A 1978-11-08 1978-11-08 Microprogram interruption control circuit Granted JPS5563444A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP13672178A JPS5563444A (en) 1978-11-08 1978-11-08 Microprogram interruption control circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP13672178A JPS5563444A (en) 1978-11-08 1978-11-08 Microprogram interruption control circuit

Publications (2)

Publication Number Publication Date
JPS5563444A JPS5563444A (en) 1980-05-13
JPS6115453B2 true JPS6115453B2 (en) 1986-04-24

Family

ID=15181933

Family Applications (1)

Application Number Title Priority Date Filing Date
JP13672178A Granted JPS5563444A (en) 1978-11-08 1978-11-08 Microprogram interruption control circuit

Country Status (1)

Country Link
JP (1) JPS5563444A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09310921A (en) * 1996-05-23 1997-12-02 Nippon Shizen Kagaku Sogo Kenkyusho:Kk Heat storage type hot-water device

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61214032A (en) * 1985-03-20 1986-09-22 Hitachi Ltd Interruption control system
JPS63296139A (en) * 1987-05-27 1988-12-02 Fujitsu Ltd Interruption control circuit

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09310921A (en) * 1996-05-23 1997-12-02 Nippon Shizen Kagaku Sogo Kenkyusho:Kk Heat storage type hot-water device

Also Published As

Publication number Publication date
JPS5563444A (en) 1980-05-13

Similar Documents

Publication Publication Date Title
US4430706A (en) Branch prediction apparatus and method for a data processing system
US4870562A (en) Microcomputer capable of accessing internal memory at a desired variable access time
US4879646A (en) Data processing system with a pipelined structure for editing trace memory contents and tracing operations during system debugging
US4377846A (en) Arithmetic unit for generating constants in an electronic computer of the microprogram-controlled type
US4484274A (en) Computer system with improved process switch routine
EP0094535B1 (en) Pipe-line data processing system
EP0093430A2 (en) Pipeline data processing system
US5148542A (en) Multitask processing apparatus utilizing a central processing unit equipped with a micro-program memory which contains no software instructions
US5247624A (en) Microprogram controller including leading microinstruction from a generator executed while succeeding microinstruction from memory is read out
EP0010196A1 (en) Control circuit and process for digital storage devices
JPS62115542A (en) Information processor
KR940006916B1 (en) Microprocessor with selective cache memory
EP0240606A2 (en) Pipe-line processing system and microprocessor using the system
JPS6115453B2 (en)
JPH0461390B2 (en)
KR940002478B1 (en) Information processing apparatus
JPS6218937B2 (en)
JPS6236575B2 (en)
JP2000181707A (en) Instruction controller and its method
KR0161830B1 (en) The scan time reducing method for plc
JPH03188530A (en) Program prefetching device
JPS62120542A (en) Information processor
JPS60108973A (en) Method for finding the minimum value of array elements and element number of the minimum element
JPS617976A (en) Vector operation processor
JP2504974B2 (en) Sequencer high-speed processing method