JPH0954698A - Data processing device and interrupt processing method thereof - Google Patents
Data processing device and interrupt processing method thereofInfo
- Publication number
- JPH0954698A JPH0954698A JP20978795A JP20978795A JPH0954698A JP H0954698 A JPH0954698 A JP H0954698A JP 20978795 A JP20978795 A JP 20978795A JP 20978795 A JP20978795 A JP 20978795A JP H0954698 A JPH0954698 A JP H0954698A
- Authority
- JP
- Japan
- Prior art keywords
- interrupt
- processing program
- register
- execution
- exception
- 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
Links
Abstract
(57)【要約】
【課題】 例外事象が発生してすぐに要求された割り込
みに対する応答期間を短縮する。
【解決手段】 例外事象に対する処理プログラムの実行
に必要な情報を得るためのマイクロプログラムの実行中
に発生した割り込みが割り込みを許可されているか否か
をマイクロプログラムの実行中に評価するマイクロシー
ケンサ14aと、マイクロシーケンサ14aの評価の結
果、割り込みが許可されている場合、例外事象のマイク
ロプログラムから、割り込みの処理プログラムに分岐
し、またマイクロシーケンサ14aとともに作用して分
岐先での処理プログラムの実行を終了した後、分岐元に
復帰する命令実行部16とを備える。
(57) [Abstract] [PROBLEMS] To shorten the response period to an interrupt requested immediately after an exception event occurs. A micro sequencer (14a) that evaluates during execution of a micro program whether or not an interrupt generated during execution of the micro program for obtaining information necessary for execution of a processing program for an exceptional event is permitted. If, as a result of the evaluation of the microsequencer 14a, the interrupt is permitted, the microprogram of the exception event branches to the interrupt processing program, and also works together with the microsequencer 14a to end the execution of the processing program at the branch destination. After that, the instruction execution unit 16 for returning to the branch source is provided.
Description
【発明の詳細な説明】Detailed Description of the Invention
【0001】[0001]
【発明の属する技術分野】本発明は、マイクロプロセッ
サ、マイクロコントローラなどのデータ処理装置及びそ
の割り込み処理方法に関し、特に割り込み要求に対する
応答性を改良したデータ処理装置及びその割り込み処理
方法に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a data processing device such as a microprocessor and a microcontroller and an interrupt processing method thereof, and more particularly to a data processing device having improved responsiveness to an interrupt request and an interrupt processing method thereof.
【0002】[0002]
【従来の技術】機器制御に使用されるデータ処理装置
は、制御対象の高度化、複雑化および制御動作の高速化
に伴って高性能化が求められている。高性能化では、デ
ータ処理装置の演算速度の高速化のみならず、割り込み
応答の高速化も重要な要素であり、特にリアルタイム制
御においては、割り込み要求から一定時間以内に割り込
み処理を開始する必要があり、特に、その応答に緊急を
要する、CPU、メモリ等の障害が原因で発生するマシ
ンチェック割り込みにおいての割り込み応答の高速化が
課題となっている。2. Description of the Related Art A data processing device used for controlling equipment is required to have higher performance in accordance with the sophistication and complexity of control objects and the speeding up of control operations. In high performance, not only the calculation speed of the data processing device but also the speed of interrupt response are important factors.In particular, in real-time control, it is necessary to start the interrupt processing within a certain time from the interrupt request. In particular, there is a problem to speed up the interrupt response in the machine check interrupt which is urgent in its response and which is caused by the failure of the CPU, the memory and the like.
【0003】割り込み応答時間とは、割り込み要求が発
生してから割り込み処理のプログラム(割り込みハンド
ラ)が起動されるまでのデータ処理装置の処理時間であ
る。通常、割り込みを含む例外事象を受け付けるか否か
の評価は、データ処理装置が処理する命令の切れ目にお
いて実施される。従って、割り込み応答時間は、割り込
み要求からデータ処理装置が命令の切れ目で、例外事象
を評価し受け付けるまでの時間と、例外を受け付けてか
ら、割り込まれたプログラムのコンテキストをスタック
に退避し、割り込みハンドラ処理用の制御情報をロード
して割り込みハンドラへジャンプするまでの時間とに分
類される。The interrupt response time is the processing time of the data processing device from the generation of the interrupt request to the activation of the interrupt processing program (interrupt handler). Usually, the evaluation of whether to accept an exceptional event including an interrupt is performed at the break of the instruction processed by the data processing device. Therefore, the interrupt response time is the time from the interrupt request until the data processor evaluates and accepts the exception event at the break of the instruction, and after the exception is accepted, the interrupted program context is saved in the stack and the interrupt handler It is classified into the time until the control information for processing is loaded and it jumps to the interrupt handler.
【0004】図8は従来のデータ処理装置の一例のブロ
ック図である。このデータ処理装置はマイクロプログラ
ム制御により命令を実行するマイクロプロセッサであ
る。図中、11はバスインターフェイスであって、バス
インターフェイス11は外部回路との間で信号の授受を
行う。バスインターフェイス11は、外部から入力され
る割り込み信号IRL0〜2を受け付け、これら3入力
から後述の割り込みのレベル情報を生成してマイクロシ
ーケンサ14bに出力する割り込み受け付け部18を備
える。命令フェッチ部12はバスインターフェイス11
から内部へ、又は内部からバスインターフェイス11へ
命令をフェッチする。FIG. 8 is a block diagram of an example of a conventional data processing device. This data processor is a microprocessor that executes instructions under microprogram control. In the figure, reference numeral 11 denotes a bus interface, and the bus interface 11 exchanges signals with an external circuit. The bus interface 11 is provided with an interrupt acceptance unit 18 that accepts interrupt signals IRL0 to IRL2 input from the outside and generates interrupt level information described below from these three inputs and outputs it to the microsequencer 14b. The instruction fetch unit 12 uses the bus interface 11
From the inside to the inside or from the inside to the bus interface 11.
【0005】命令デコード部13は命令フェッチ部12
がバスインターフェイス11からフェッチした命令をデ
コードし、デコード結果のうち、マイクロROM15の
アドレス等をマイクロシーケンサ14bに、オペランド
データ等を命令実行部16に出力する。マイクロシーケ
ンサ14bは命令デコード部13のデコード結果を受け
てマイクロROM15のアクセスアドレスを生成してマ
イクロROM15をアクセスする。マイクロROM15
はマイクロシーケンサ14bが生成したアドレスからマ
イクロシーケンサ14b、割り込み受け付け部18又は
命令実行部16へ命令の実行制御信号を出力する。命令
実行部16はマイクロROM15から与えられた実行制
御信号を基に、命令デコード部13から出力されたオペ
ランド情報等を処理する。命令実行部16は、ALU等
の演算器、ワーキングレジスタ等のレジスタファイルを
持つデータパス17を含んでいる。18は本データ処理
装置の外部から入力される割り込み信号を受ける割り込
み受け付け部でバスインターフェイス11内に存在す
る。The instruction decoding unit 13 is an instruction fetch unit 12
Decodes the instruction fetched from the bus interface 11, and outputs the address and the like of the micro ROM 15 to the micro sequencer 14b and the operand data and the like to the instruction execution unit 16 among the decoded results. The micro sequencer 14b receives the decoding result of the instruction decoding unit 13 and generates an access address of the micro ROM 15 to access the micro ROM 15. Micro ROM 15
Outputs an instruction execution control signal from the address generated by the microsequencer 14b to the microsequencer 14b, the interrupt acceptance unit 18, or the instruction execution unit 16. The instruction execution unit 16 processes the operand information and the like output from the instruction decoding unit 13 based on the execution control signal given from the micro ROM 15. The instruction execution unit 16 includes a data path 17 having an arithmetic unit such as an ALU and a register file such as a working register. Reference numeral 18 denotes an interrupt acceptance unit that receives an interrupt signal input from the outside of the present data processing device, and is present in the bus interface 11.
【0006】バスインターフェイス11はアドレスバス
Aへのアドレスの出力制御、データバスDへのデータの
入出力制御、及びシステム制御、バス制御のための制御
信号群の入出力制御を行う。ここではシステム制御信号
として、データのリードライトが正しく行われなかった
時、タイムアウト処理のため外部回路から入力されるバ
スエラー信号BERRと、割り込みコントローラ等の外
部回路から入力される3つの割り込み信号IRL0、I
RL1、IRL2とを例示している。3つの割り込み信
号はバスインターフェイス11内の割り込み受け付け部
18に直接入力される。割り込みは0から7までのレベ
ルがあり、数字の小さい方が優先度が高い。レベル7は
割り込み要求なしを示し、レベル0は割り込み禁止が不
可能なノンマスカブル割り込み要求(NMI)を示す。
IRL0、IRL1、IRL2が[0、0、0]であれ
ばレベル0、[0、0、1]であればレベル1、[1、
1、1]であればレベル7を表す。The bus interface 11 controls the output of addresses to the address bus A, the input / output control of data to the data bus D, and the input / output control of a control signal group for system control and bus control. Here, as the system control signal, when the data is not correctly read / written, the bus error signal BERR input from the external circuit due to the time-out process and the three interrupt signals IRL0 input from the external circuit such as the interrupt controller. , I
RL1 and IRL2 are illustrated. The three interrupt signals are directly input to the interrupt accepting unit 18 in the bus interface 11. Interrupts have levels from 0 to 7, and the smaller the number, the higher the priority. Level 7 indicates no interrupt request, and level 0 indicates a non-maskable interrupt request (NMI) in which interrupts cannot be disabled.
If IRL0, IRL1, and IRL2 are [0, 0, 0], level 0; if [0, 0, 1], level 1, [1,
1, 1] indicates level 7.
【0007】図9は図8に示すマイクロシーケンサ14
bの詳細な構成を示すブロック図である。次マイクロア
ドレスレジスタUNAR21は、命令デコード部13か
ら信号線102を介して与えられる、次に実行すべきマ
イクロプログラムの先頭アドレスを格納する。ジャンプ
先マイクロアドレスレジスタUJAR23は、マイクロ
プログラムで分岐を行う場合にマイクロROM15から
信号線108を介して与えられる分岐先のマイクロアド
レスを格納する。マイクロスタックレジスタUSTR2
4はマイクロプログラムでサブルーチンジャンプする場
合、その戻り先マイクロアドレスを格納する。マイクロ
アドレスレジスタUAR25はマイクロアドレスを格納
するレジスタで、UNAR21、後述の例外処理アドレ
ス生成回路22、UJAR23およびUSTR24から
マイクロアドレスバスUABSを介して伝達されるマイ
クロアドレスをラッチすると共に、アドレスのインクリ
メント機能も持つ。マイクロシーケンサ14bはUAB
Sからロードしたマイクロアドレスを順次信号線103
を介してマイクロROM15に出力する。FIG. 9 shows the microsequencer 14 shown in FIG.
It is a block diagram which shows the detailed structure of b. The next micro address register UNAR21 stores the start address of the micro program to be executed next, which is given from the instruction decoding unit 13 via the signal line 102. The jump destination micro address register UJAR23 stores a branch destination micro address given from the micro ROM 15 through the signal line 108 when branching is performed by a micro program. Micro stack register USTR2
Reference numeral 4 is a micro program, and stores a return micro address when the subroutine jumps. The micro address register UAR25 is a register for storing a micro address, which latches a micro address transmitted from the UNAR 21, an exception handling address generation circuit 22, which will be described later, UJAR 23 and USTR 24 via the micro address bus UABS, and also has an address increment function. To have. Micro sequencer 14b is UAB
The micro address loaded from S is sequentially fed to the signal line 103
To the micro ROM 15 via.
【0008】例外判定回路26dは命令デコード部1
3、バスインターフェイス11、割り込み受け付け部1
8、命令実行部16からそれぞれ信号線102、10
9、110、111を介して伝達される例外発生情報か
ら、例外の発生の有無、優先度の判定を行い、処理を行
うべき例外が検出された場合、検出した例外を例外処理
アドレス生成回路22に伝える。例外処理アドレス生成
回路22は、該当する例外の例外処理マイクロプログラ
ムの先頭マイクロアドレスを生成し、UABSに出力す
る。The exception determination circuit 26d is included in the instruction decoding unit 1
3, bus interface 11, interrupt acceptance unit 1
8. Signal lines 102 and 10 from the instruction execution unit 16 respectively
Whether or not an exception has occurred and its priority are determined from the exception occurrence information transmitted via 9, 110, and 111, and when an exception to be processed is detected, the detected exception is handled as an exception processing address generation circuit 22. Tell. The exception processing address generation circuit 22 generates the start micro address of the exception processing micro program of the corresponding exception and outputs it to the UABS.
【0009】次に従来のデータ処理装置の動作について
説明する。先ず、通常の命令処理について説明する。命
令実行部16内のプログラムカウンタ(PC)の値を基
に、命令フェッチ部12が命令フェッチアドレスの管理
とバスインターフェイス11への命令フェッチ要求制御
を行う。命令フェッチ部12から命令フェッチ要求と命
令フェッチアドレスが信号線100を介してバスインタ
ーフェイス11に伝えられる。命令フェッチアドレスは
バスインターフェイス11のアドレスバスAに出力さ
れ、このアドレスに従って、メインメモリや外部キャッ
シュ等の外部回路から命令コードがデータバスDに出力
される。データバスDよりバスインターフェイス11に
取り込まれた命令コードは信号線100を介し命令フェ
ッチ部12に送られ、信号線101を介して命令デコー
ド部13に送られ解読される。解読結果の内、命令実行
用マイクロROMアドレスなどの命令実行に使用される
制御情報は信号線102を介してマイクロシーケンサ1
4bに送られ、オペランドデータや間接参照のオペラン
ドアドレスや使用レジスタ番号等のオペランド情報は信
号線105を介して命令実行部16に送られる。Next, the operation of the conventional data processing apparatus will be described. First, the normal command processing will be described. The instruction fetch unit 12 manages the instruction fetch address and controls the instruction fetch request to the bus interface 11 based on the value of the program counter (PC) in the instruction execution unit 16. The instruction fetch request and the instruction fetch address are transmitted from the instruction fetch unit 12 to the bus interface 11 via the signal line 100. The instruction fetch address is output to the address bus A of the bus interface 11, and an instruction code is output to the data bus D from an external circuit such as a main memory or an external cache according to this address. The instruction code fetched by the bus interface 11 from the data bus D is sent to the instruction fetch unit 12 via the signal line 100, and sent to the instruction decode unit 13 via the signal line 101 to be decoded. Among the decoding results, the control information used for instruction execution such as the instruction execution micro ROM address is transmitted via the signal line 102 to the micro sequencer 1
4b, and operand information such as operand data, operand address for indirect reference, and register number used is sent to the instruction execution unit 16 via the signal line 105.
【0010】マイクロシーケンサ14bは命令デコード
部13等から送られる制御情報を基にマイクロROM1
5からの読み出し制御を行う。マイクロシーケンサ14
bから出力されるマイクロアドレスは信号線103を介
してマイクロROM15に送られる。マイクロROM1
5からはマイクロアドレスに従って命令実行部16、マ
イクロシーケンサ14b、又は割り込み受け付け部18
に制御情報が出力される。命令実行用の制御信号は信号
線104を介して命令実行部16へ送られる。命令実行
部16では、信号線105より受け取ったオペランド情
報を信号線104より受け取った制御情報を基に処理す
る。オペランドの間接参照が必要な場合は、オペランド
アドレスを信号線107を介してバスインターフェイス
11に伝え、バスインターフェイス11はアドレスバス
Aにオペランドアドレスを出力し、リードバスサイクル
を起動する。外部メモリからフェッチされたデータはデ
ータバスDからバスインターフェイス11に取り込ま
れ、信号線107を介して命令実行部16に転送され、
演算に使用される。The micro sequencer 14b uses the micro ROM 1 based on the control information sent from the instruction decoding unit 13 and the like.
Read control from 5 is performed. Micro sequencer 14
The micro address output from b is sent to the micro ROM 15 via the signal line 103. Micro ROM 1
5 from the instruction execution unit 16, the micro sequencer 14b, or the interrupt acceptance unit 18 according to the micro address.
Control information is output to. The control signal for command execution is sent to the command execution unit 16 via the signal line 104. The instruction execution unit 16 processes the operand information received from the signal line 105 based on the control information received from the signal line 104. When the indirect reference of the operand is required, the operand address is transmitted to the bus interface 11 via the signal line 107, the bus interface 11 outputs the operand address to the address bus A, and the read bus cycle is activated. The data fetched from the external memory is taken into the bus interface 11 from the data bus D and transferred to the instruction execution unit 16 via the signal line 107.
Used for calculation.
【0011】外部メモリへのオペランドのライトが必要
な場合は、オペランドアドレスとオペランドデータが信
号線107を介してバスインターフェイス11に伝えら
れ、バスインターフェイス11がアドレスバスAとデー
タバスDにそれぞれオペランドアドレスとオペランドデ
ータを出力し、ライトバスサイクルを起動することによ
り、外部メモリにオペランドが書き込まれる。When it is necessary to write the operand to the external memory, the operand address and the operand data are transmitted to the bus interface 11 via the signal line 107, and the bus interface 11 outputs the operand address to the address bus A and the data bus D, respectively. And the operand data are output, and the write bus cycle is activated to write the operand in the external memory.
【0012】マイクロシーケンサ14bにおいては、命
令デコード部13から信号線102を介してUNAR2
1に命令処理用マイクロアドレスがロードされ、UAB
Sを介しUAR25に伝えられ、信号線103から出力
される。マイクロROM15のこのアドレスからの読み
出し中に、UAR25はマイクロアドレスをインクリメ
ントし、マイクロシーケンサ14bはマイクロROM1
5からの読み出しが完了する都度、インクリメントされ
たマイクロアドレスを信号線103に出力する。以下、
同様に順次マイクロアドレスをインクリメントし、順次
マイクロプログラムを実行する。In the microsequencer 14b, the UNAR2 signal is transmitted from the instruction decoding unit 13 via the signal line 102.
1 is loaded with the micro address for instruction processing, and UAB
The signal is transmitted to the UAR 25 via S and output from the signal line 103. While reading the micro ROM 15 from this address, the UAR 25 increments the micro address and the micro sequencer 14b
Every time reading from 5 is completed, the incremented micro address is output to the signal line 103. Less than,
Similarly, the micro addresses are sequentially incremented and the micro programs are sequentially executed.
【0013】次に、例外の処理について説明する。例外
には、トラップ命令により起動されるソフトウェア割り
込みであるトラップ、未定義命令や不当なアドレッシン
グモード等の命令をデコードした時に検出される予約命
令例外、デバック用に起動されるデバッグトラップ、外
部メモリ等への命令、オペランドアクセスにおいてタイ
ムアウト時に発生するバスアクセス例外、演算命令の処
理でゼロ除算が検出された場合に発生するゼロ除算トラ
ップ、割り込み信号IRL0〜IRL2で要求される外
部割り込み等がある。Next, the exception processing will be described. Exceptions include traps that are software interrupts that are activated by trap instructions, reserved instruction exceptions that are detected when an instruction such as an undefined instruction or an illegal addressing mode is decoded, debug traps that are activated for debugging, external memory, etc. Instruction, a bus access exception that occurs when a timeout occurs in operand access, a zero division trap that occurs when division by zero is detected in the processing of an arithmetic instruction, an external interrupt requested by interrupt signals IRL0 to IRL2, and the like.
【0014】トラップ命令には無条件トラップ命令と条
件トラップ命令が存在し、無条件トラップは命令デコー
ド部13で検出され、条件トラップは命令実行部16で
検出され、それぞれ信号線102、111を介してマイ
クロシーケンサ14bに知らされる。予約命令例外は命
令デコード部13で検出され信号線102を介してマイ
クロシーケンサ14bに知らされる。バスアクセス例外
はバスエラー信号BERRによりバスインターフェイス
11に通知されるが、命令フェッチに伴うバスアクセス
例外は命令フェッチ部12及び命令デコード部13を介
して信号線102によりマイクロシーケンサ14bに伝
達され、オペランドフェッチ及びオペランドライトに伴
うバスアクセス例外は命令実行部16から信号線111
を介してマイクロシーケンサ14bに伝達される。ゼロ
除算トラップは命令実行部16で検出され信号線111
を介してマイクロシーケンサ14bに知らされる。外部
割り込みは割り込み受け付け部18で検出され、割り込
みレベルが信号線110を介してマイクロシーケンサ1
4bに伝達される。The trap instruction includes an unconditional trap instruction and a conditional trap instruction. The unconditional trap is detected by the instruction decoding unit 13 and the conditional trap is detected by the instruction execution unit 16, and the signal lines 102 and 111 are used respectively. The microsequencer 14b is informed. The reserved instruction exception is detected by the instruction decoding unit 13 and notified to the micro sequencer 14b via the signal line 102. The bus access exception is notified to the bus interface 11 by the bus error signal BERR, but the bus access exception accompanying the instruction fetch is transmitted to the micro sequencer 14b via the instruction fetch unit 12 and the instruction decoding unit 13 by the signal line 102, and the operand A bus access exception associated with fetch and operand write is sent from the instruction execution unit 16 to the signal line 111.
Is transmitted to the micro sequencer 14b via. The zero division trap is detected by the instruction execution unit 16 and detected by the signal line 111.
The microsequencer 14b is notified via the. The external interrupt is detected by the interrupt acceptance unit 18, and the interrupt level is transmitted via the signal line 110 to the microsequencer 1
4b is transmitted.
【0015】これらの例外はマイクロROM15から命
令実行の最終ステップで出力される信号線108上の信
号をマイクロシーケンサ14bが受け取った時に、マイ
クロシーケンサ14bで受け付け評価が行われる。These exceptions are accepted and evaluated by the microsequencer 14b when the microsequencer 14b receives the signal on the signal line 108 output from the microROM 15 in the final step of instruction execution.
【0016】ここで受け付けられた例外に対して例外処
理が実施される。例外処理はマイクロシーケンサ14b
から特定の例外処理用マイクロアドレスを、信号線10
3を介してマイクロROM15に出力することで起動さ
れる。図10に例外処理用マイクロプログラムの処理フ
ローを示す。Exception processing is performed on the exception received here. Exception processing is performed by the micro sequencer 14b
From the signal line 10
It is activated by outputting the data to the micro ROM 15 via 3. FIG. 10 shows a processing flow of the exception processing microprogram.
【0017】先ず、例外を発生させた命令実行時のプロ
セッサ状態語(PSW)を命令実行部16のデータパス
17に存在するワーキングレジスタに退避する(S10
1)。次に、発生した例外のベクタ番号を計算し(S1
02)、外部メモリ内に存在する例外処理用ハンドラに
制御を移すために必要な情報であるハンドラの先頭アド
レスを示すPC値及びハンドラ実行時のPSWをあらか
じめ格納してある例外ベクタテーブルのアドレスを得る
(S103)。このアドレスに従って、例外ベクタテー
ブルの該当する例外のエントリを外部メモリから読み出
し(S104)、この情報とワーキングレジスタに退避
したPSWとを比較してPSWの内容を更新する(S1
06)。次に、例外発生前のPC値、PSW等を外部メ
モリに配置されたスタックに退避し(S107・S10
8)、例外ハンドラの先頭アドレスを示すPC値をPC
にセットして該当する例外ハンドラに分岐する(S10
9)。First, the processor state word (PSW) at the time of executing the instruction that caused the exception is saved in the working register existing in the data path 17 of the instruction executing section 16 (S10).
1). Next, the vector number of the exception that occurred is calculated (S1
02), the PC value indicating the start address of the handler, which is the information necessary for transferring control to the exception handling handler existing in the external memory, and the address of the exception vector table in which the PSW at the time of handler execution is stored in advance. Obtain (S103). According to this address, the entry of the corresponding exception in the exception vector table is read from the external memory (S104), this information is compared with the PSW saved in the working register, and the contents of the PSW are updated (S1).
06). Next, the PC value, PSW, etc. before the exception occurs are saved in the stack arranged in the external memory (S107 / S10).
8), PC value indicating the start address of the exception handler is PC
And branch to the corresponding exception handler (S10).
9).
【0018】例外処理動作を、命令フェッチ時のバスア
クセス例外を例に説明する。命令フェッチ部12から命
令フェッチ要求と命令フェッチアドレスが信号線100
を介してバスインターフェイス11に伝えられる。命令
フェッチアドレスはバスインターフェイス11のアドレ
スバスAに出力され、外部メモリをアクセスする。この
アクセスにおいてタイムアウトエラーが発生した場合、
BERR信号がバスインターフェイス11に返送され
る。このバスエラー情報は信号線100を介し命令フェ
ッチ部12に送られ、信号線101を介して命令デコー
ド部13に送られ、さらに信号線102を介してマイク
ロシーケンサ14bに送られる。先行する命令処理の終
了により、マイクロシーケンサ14bの例外判定回路2
6dで例外が評価され、バスアクセス例外が受け付けら
れる。この情報は例外処理アドレス生成回路22に伝達
され、例外処理アドレス生成回路22はバスアクセス例
外処理用のマイクロプログラムの先頭アドレスをUAB
Sから出力する。このマイクロアドレスはUAR25で
ラッチされ、信号線103を介してマイクロROM15
に出力される。マイクロROM15ではこのバスアクセ
ス例外処理用のエントリから順次制御信号をマイクロ命
令実行部16に対して出力する。The exception processing operation will be described by taking a bus access exception at the time of instruction fetch as an example. The instruction fetch request from the instruction fetch unit 12 and the instruction fetch address are sent to the signal line 100.
Is transmitted to the bus interface 11 via. The instruction fetch address is output to the address bus A of the bus interface 11 to access the external memory. If a timeout error occurs during this access,
The BERR signal is sent back to the bus interface 11. This bus error information is sent to the instruction fetch unit 12 via the signal line 100, sent to the instruction decode unit 13 via the signal line 101, and further sent to the micro sequencer 14b via the signal line 102. Due to the completion of the preceding instruction processing, the exception judgment circuit 2 of the microsequencer 14b
The exception is evaluated in 6d and the bus access exception is accepted. This information is transmitted to the exception processing address generation circuit 22, and the exception processing address generation circuit 22 sets the start address of the microprogram for bus access exception processing to UAB.
Output from S. This micro address is latched by the UAR 25 and is sent to the micro ROM 15 via the signal line 103.
Is output to The micro ROM 15 sequentially outputs control signals to the micro instruction executing section 16 from the entry for bus access exception processing.
【0019】マイクロROM15より順次出力されるバ
スアクセス例外処理用マイクロプログラムによる制御信
号により、命令実行部16は、バスエラーを発生させた
命令シーケンス実行時のPSWをワーキングレジスタに
退避し、バスアクセス例外のベクタを生成して外部メモ
リの例外ベクタテーブル内のバスアクセス例外のエント
リアドレスを計算し、そのアドレスにあらかじめ格納さ
れているバスアクセス例外処理用のハンドラの先頭のP
C値と、ハンドラ実行時のPSWの値をバスインターフ
ェイス11を介して読み込み、ワーキングレジスタ内の
バスエラーを発生させた命令シーケンス実行時のPSW
の割り込みマスク値と、読み込んだハンドラ実行時のP
SWの割り込みマスク値とを比較し、優先度の高い割り
込みマスク値を採用してPSWの値を更新する。The instruction execution unit 16 saves the PSW at the time of execution of the instruction sequence causing the bus error in the working register in response to the control signal from the microprogram for bus access exception processing sequentially output from the micro ROM 15, and the bus access exception is generated. Is generated to calculate the entry address of the bus access exception in the exception vector table of the external memory, and the first P of the handler for the bus access exception stored in that address is stored in advance.
The C value and the PSW value at the time of executing the handler are read through the bus interface 11, and the PSW at the time of executing the instruction sequence causing the bus error in the working register is executed.
Interrupt mask value and P when the loaded handler is executed
The value of PSW is updated by comparing with the interrupt mask value of SW and adopting the interrupt mask value of high priority.
【0020】命令実行部16は、バスエラーを発生した
命令のPC値とこの命令に引き続く命令のPC値、及び
ワーキングレジスタ内のPSWの値等のバスエラー発生
時の状態を示すデータをバスインターフェイス11を介
して外部メモリ内のスタックにプッシュし、PCにバス
アクセス例外処理用のハンドラの先頭のPC値をセット
し、命令フェッチ部12に対しフェッチの開始を指示す
る。これにより例外処理用のハンドラを起動するための
バスアクセス例外処理マイクロプログラムは終了する。
この例外処理用マイクロプログラム実行中には割り込み
評価は行われない。以後、命令フェッチ部12の命令フ
ェッチ要求により順次バスアクセス例外用ハンドラのプ
ログラムが読み出されて実行される。ハンドラに処理が
移ってから最初の命令の切れ目で割り込みの評価が行わ
れる。The instruction execution unit 16 uses the PC value of the instruction in which the bus error has occurred, the PC value of the instruction following this instruction, and the data indicating the state at the time of the bus error, such as the value of PSW in the working register, to the bus interface. It is pushed to the stack in the external memory via 11, the PC value at the head of the handler for bus access exception processing is set in PC, and the instruction fetch unit 12 is instructed to start fetching. As a result, the bus access exception handling microprogram for activating the exception handling handler ends.
Interrupt evaluation is not performed during execution of this exception handling microprogram. Thereafter, the instruction fetch request from the instruction fetch unit 12 sequentially reads out and executes the bus access exception handler program. The interrupt is evaluated at the first instruction break after the processing is transferred to the handler.
【0021】[0021]
【発明が解決しようとする課題】図11は上述のような
従来のデータ処理装置の例外処理時における割り込み要
求の受け付けタイミングを示すタイミングチャートであ
る。図から明らかなように、例外の受け付け判定を命令
の切れ目でのみ行っている従来のマイクロプログラム制
御のデータ処理装置では、命令の切れ目で例外が受け付
けられ、例外処理用のマイクロプログラムが起動される
とアドレスの自動インクリメントによってマイクロプロ
グラムが切れ目なく実行されるので、この間に発生した
割り込みが評価されて割り込み要求が受け付けられるの
は、例外処理用マイクロプログラムの実行が終了した後
でジャンプする例外処理ハンドラの先頭命令処理の最終
ステップ時点になる。FIG. 11 is a timing chart showing the acceptance timing of an interrupt request at the time of exception processing of the conventional data processing apparatus as described above. As is apparent from the figure, in a conventional microprogram-controlled data processing device that makes an exception acceptance decision only at an instruction break, an exception is accepted at an instruction break, and a microprogram for exception processing is activated. Since the microprogram is executed without interruption due to the automatic increment of the address and the address, the interrupt that occurs during this time is evaluated and the interrupt request is accepted because the exception handler that jumps after the execution of the exception processing microprogram is completed. The time point is the last step of the first instruction processing of.
【0022】従って、図11に示すように、例外が受け
付けられた直後に割り込み要求が発生した場合、要求の
発生から割り込み要求を受け付けるか否かの評価までの
時間、即ち割り込み応答時間が長期化し、1ステップの
マイクロプログラム実行時間の数十倍に及ぶ場合もあ
る。特に、優先度が高い割り込み要求に対する応答期間
の長期化はリアルタイムシステムの構築に大きな制約を
与える。Therefore, as shown in FIG. 11, when an interrupt request is generated immediately after the exception is accepted, the time from the generation of the request to the evaluation of whether or not to accept the interrupt request, that is, the interrupt response time is lengthened. It may take several tens of times the microprogram execution time for one step. In particular, prolonging the response period for an interrupt request having a high priority places a great constraint on the construction of a real-time system.
【0023】本発明はこのような問題点を解決するため
になされたものであって、割り込みを含む例外事象の発
生に対してPSW、PCの退避等を行うマイクロプログ
ラムの実行中に発生した他の割り込みが許可されている
割り込みであるか否かをマイクロプログラムの実行中に
評価し、許可されている割り込みの場合はその処理プラ
グラムを、先に発生した例外事象の処理プログラムに先
立って実行することにより、例外事象が発生してすぐに
要求された割り込みに対する応答期間が短いデータ処理
装置及びその割り込み処理方法の提供を目的とする。The present invention has been made in order to solve such a problem, and it may be generated during the execution of a microprogram for saving the PSW and PC in response to the occurrence of an exceptional event including an interrupt. Evaluate whether or not the interrupt is a permitted interrupt during execution of the microprogram, and if it is a permitted interrupt, execute its processing program prior to the processing program of the exception event that occurred earlier. Accordingly, it is an object of the present invention to provide a data processing device having a short response period for an interrupt requested immediately after an exception event occurs, and an interrupt processing method thereof.
【0024】[0024]
【課題を解決するための手段】第1発明のデータ処理装
置及び第5発明の割り込み処理方法は、データ処理の実
行中に発生した例外事象の処理プログラムを実行する前
に、例外事象の処理プログラムから復帰して再開するデ
ータ処理の実行に使用する情報を退避する手続き、及び
処理プログラムの格納アドレスとともに処理プログラム
の実行に使用する情報を読み出す手続きが含まれたマイ
クロプログラムの実行中、即ち例外事象の処理が受け付
けられてすぐに発生した割り込みが割り込みを許可され
ているか否かをマイクロプログラムの実行中に評価する
ことを特徴とする。A data processing device according to a first aspect of the present invention and an interrupt processing method according to a fifth aspect of the present invention provide an exception event processing program before executing an exception event processing program that occurs during execution of data processing. During execution of a microprogram that includes a procedure for saving information used for execution of data processing that is returned from and restarting, and a procedure for reading information used for execution of the processing program together with the storage address of the processing program, that is, an exceptional event Is evaluated during the execution of the microprogram to determine whether or not the interrupt generated immediately after the processing of is accepted is permitted.
【0025】第1発明のデータ処理装置及び第5発明の
割り込み処理方法は、データ処理の実行中に発生した例
外事象の処理プログラムを実行する前に実行され、処理
プログラムから復帰して再開するデータ処理の実行に使
用する情報を退避する手続き、及び処理プログラムの格
納アドレスとともに処理プログラムの実行に使用する情
報を読み出す手続きが含まれたマイクロプログラムの実
行中に発生した割り込みが許可されているか否かをマイ
クロプログラムの実行中に評価し、割り込みが許可され
ている場合、例外事象のマイクロプログラムから、割り
込みの処理プログラムに分岐し、分岐先での処理プログ
ラムの実行を終了した後、分岐元に復帰する。これによ
り、例外事象に対する処理が受け付けられてすぐに要求
された割り込みに対する応答期間が短縮される。The data processing apparatus according to the first aspect of the invention and the interrupt processing method according to the fifth aspect of the invention are data that are executed before executing the processing program for an exceptional event that occurred during the execution of data processing, and that are restored from the processing program and restarted. Whether the interrupt occurred during the execution of the microprogram that includes the procedure for saving the information used for executing the process and the procedure for reading the information used for executing the processing program together with the storage address of the processing program is enabled or not. Is evaluated during execution of the micro program, and if interrupts are enabled, the exception event micro program branches to the interrupt processing program, and after the execution of the processing program at the branch destination ends, the branch source returns. To do. As a result, the response period for the interrupt requested immediately after the processing for the exception event is accepted is shortened.
【0026】第2発明及び第3発明のデータ処理装置、
並びに第6発明及び第7発明の割り込み処理方法は、第
1発明に加えて、例外事象のマイクロプログラムから割
り込みの処理プログラムに分岐する際に、例外事象又は
先の割り込みの処理プログラムの実行が終了しているか
否かを示す第1の情報を、例外事象の種類別、又は割り
込みの優先レベル別に設けられている第1のレジスタに
格納し、分岐先の割り込みの処理プログラムから復帰し
て例外事象又は先の割り込みの処理プログラムの実行を
再開する際に使用する第2の情報を、第2のレジスタ、
又は例外事象が割り込みの場合は割り込みの優先レベル
別に設けられている第2のレジスタの対応するレジスタ
に格納することを特徴とする。A data processing device according to the second and third inventions,
In addition to the first invention, the interrupt processing method of the sixth invention and the seventh invention ends the execution of the exception event or the previous interrupt processing program when branching from the exception event microprogram to the interrupt processing program. The first information indicating whether or not the exception event is stored in the first register provided for each type of exception event or each interrupt priority level, and the exception event is generated by returning from the processing program of the interrupt at the branch destination. Alternatively, the second information used when resuming the execution of the previous interrupt processing program is stored in the second register,
Alternatively, when the exception event is an interrupt, the exception event is stored in the corresponding register of the second register provided for each interrupt priority level.
【0027】これにより、他の割り込みによって処理が
完了しておらず、通常のデータ処理に復帰する前に処理
すべき割り込み処理又は例外処理を、他の割り込みの処
理終了後、速やかに再開し、割り込みに対する応答期間
が短縮される。As a result, the interrupt processing or the exception processing that should be processed before returning to the normal data processing because the processing is not completed by another interrupt is promptly restarted after the processing of the other interrupt is completed, The response period for interrupts is shortened.
【0028】第4発明のデータ処理装置及び第8発明の
割り込み処理方法は、割り込みの優先レベルのうち、他
の割り込みを優先的に処理しなければならない可能性が
高い、相対的に優先度が低い割り込みのように、限定さ
れた所定の優先レベルの割り込みにおいてのみ、マイク
ロプログラムの実行中に発生した割り込みが割り込みを
許可されているか否かをマイクロプログラムの実行中に
評価し、先の割り込みの処理プログラムの実行が終了し
ているか否かを示す第1の情報を、限定された所定の優
先レベル別に設けられている第1のレジスタの対応する
レジスタに格納し、分岐先の割り込みの処理プログラム
から復帰して先の割り込みの処理プログラムの実行を再
開する際に使用する第2の情報を、所定の優先レベル別
に設けられている第2のレジスタの対応するレジスタに
格納することを特徴とする。In the data processing device of the fourth invention and the interrupt processing method of the eighth invention, it is highly likely that other interrupts must be processed preferentially among the priority levels of the interrupts. Only in the case of interrupts with a limited predetermined priority level, such as low interrupts, whether or not an interrupt generated during the execution of the microprogram is enabled during the execution of the microprogram is evaluated, and the interrupt of the previous interrupt is evaluated. First information indicating whether or not the execution of the processing program is completed is stored in a corresponding register of the first registers provided for each limited predetermined priority level, and an interrupt processing program for the branch destination is stored. Second information, which is used when returning from the above and restarting the execution of the previous interrupt processing program, is provided for each predetermined priority level. And storing, in the second register corresponding register.
【0029】これにより、他の割り込みが発生した場合
に処理を優先すべきケースが多いと考えられる相対的に
低い優先レベルのような、限られた優先レベルの割り込
みにおいてのみ、他の割り込みを早急に評価し、また他
の割り込みによって処理が完了しておらず、通常のデー
タ処理に復帰する前に処理すべき割り込み処理を速やか
に再開し、少ない部品点数で割り込みに対する応答期間
が短縮される。As a result, when there is another interrupt, it is considered that there are many cases where the processing should be prioritized. Therefore, other interrupts can be promptly issued only when the interrupt has a limited priority level such as a relatively low priority level. In addition, the interrupt processing to be processed before returning to the normal data processing is promptly restarted, and the response period to the interrupt is shortened with a small number of parts.
【0030】[0030]
〔実施の形態1〕図1は本発明のデータ処理装置の一例
のブロック図である。図中、11はバスインターフェイ
スであって、バスインターフェイス11は外部回路との
間で信号の授受を行う。バスインターフェイス11は、
外部から入力される割り込み信号IRL0〜2を受け付
け、これら3入力から後述の割り込みのレベル情報を生
成して前記判定手段、及び後述する命令実行部16とと
もに前記分岐手段を構成するマイクロシーケンサ14a
に出力する割り込み受け付け部18を備える。命令フェ
ッチ部12はバスインターフェイス11から内部へ、又
は内部からバスインターフェイス11へ命令をフェッチ
する。[First Embodiment] FIG. 1 is a block diagram of an example of a data processing apparatus of the present invention. In the figure, reference numeral 11 denotes a bus interface, and the bus interface 11 exchanges signals with an external circuit. The bus interface 11 is
A micro sequencer 14a that receives interrupt signals IRL0 to 2 inputted from the outside, generates interrupt level information described later from these three inputs, and constitutes the branching means together with the judging means and the instruction executing section 16 described later.
And an interrupt acceptance unit 18 for outputting to. The instruction fetch unit 12 fetches an instruction from the bus interface 11 to the inside or from the inside to the bus interface 11.
【0031】命令デコード部13は命令フェッチ部12
がバスインターフェイス11からフェッチした命令をデ
コードし、デコード結果のうち、マイクロROM15の
アドレス等をマイクロシーケンサ14aに、オペランド
データ等を命令実行部16に出力する。マイクロシーケ
ンサ14aは命令デコード部13のデコード結果を受け
てマイクロROM15のアクセスアドレスを生成してマ
イクロROM15をアクセスする。マイクロROM15
はマイクロシーケンサ14aが生成したアドレスからマ
イクロシーケンサ14a、割り込み受け付け部18又は
命令実行部16へ命令の実行制御信号を出力する。命令
実行部16はマイクロROM15から与えられた実行制
御信号を基に、命令デコード部13から出力されたオペ
ランド情報等を処理する。命令実行部16は、ALU等
の演算器、ワーキングレジスタ等のレジスタファイルを
持つデータパス17を含んでいる。18は本データ処理
装置の外部から入力される割り込み信号を受ける割り込
み受け付け部でバスインターフェイス11内に存在す
る。The instruction decoding unit 13 is an instruction fetch unit 12
Decodes the instruction fetched from the bus interface 11, and outputs the address and the like of the micro ROM 15 to the micro sequencer 14a and the operand data and the like to the instruction execution unit 16 among the decoded results. The micro sequencer 14a receives the decoding result of the instruction decoding unit 13 and generates an access address of the micro ROM 15 to access the micro ROM 15. Micro ROM 15
Outputs an instruction execution control signal from the address generated by the microsequencer 14a to the microsequencer 14a, the interrupt acceptance section 18, or the instruction execution section 16. The instruction execution unit 16 processes the operand information and the like output from the instruction decoding unit 13 based on the execution control signal given from the micro ROM 15. The instruction execution unit 16 includes a data path 17 having an arithmetic unit such as an ALU and a register file such as a working register. Reference numeral 18 denotes an interrupt acceptance unit that receives an interrupt signal input from the outside of the present data processing device, and is present in the bus interface 11.
【0032】バスインターフェイス11はアドレスバス
Aへのアドレスの出力制御、データバスDへのデータの
入出力制御、及びシステム制御、バス制御のための制御
信号群の入出力制御を行う。ここではシステム制御信号
として、データのリードライトが正しく行われなかった
時、タイムアウト処理のため外部回路から入力されるバ
スエラー信号BERRと、割り込みコントローラ等の外
部回路から入力される3つの割り込み信号IRL0、I
RL1、IRL2とを例示している。3つの割り込み信
号はバスインターフェイス11内の割り込み受け付け部
18に直接入力される。割り込みは0から7までのレベ
ルがあり、数字の小さい方が優先度が高い。レベル7は
割り込み要求なしを示し、レベル0は割り込み禁止が不
可能なノンマスカブル割り込み要求(NMI)を示す。
IRL0、IRL1、IRL2が[0、0、0]であれ
ばレベル0、[0、0、1]であればレベル1、[1、
1、1]であればレベル7を表す。The bus interface 11 controls the output of an address to the address bus A, the input / output control of data to the data bus D, and the input / output control of a control signal group for system control and bus control. Here, as the system control signal, when the data is not correctly read / written, the bus error signal BERR input from the external circuit due to the time-out process and the three interrupt signals IRL0 input from the external circuit such as the interrupt controller. , I
RL1 and IRL2 are illustrated. The three interrupt signals are directly input to the interrupt accepting unit 18 in the bus interface 11. Interrupts have levels from 0 to 7, and the smaller the number, the higher the priority. Level 7 indicates no interrupt request, and level 0 indicates a non-maskable interrupt request (NMI) in which interrupts cannot be disabled.
If IRL0, IRL1, and IRL2 are [0, 0, 0], level 0; if [0, 0, 1], level 1, [1,
1, 1] indicates level 7.
【0033】図2(a) は図1に示すマイクロシーケンサ
14aの、また図2(b) は命令実行部16の構成を示す
ブロック図である。次マイクロアドレスレジスタUNA
R21は、命令デコード部13から信号線102を介し
て与えられる、次に実行すべきマイクロプログラムの先
頭アドレスを格納する。ジャンプ先マイクロアドレスレ
ジスタUJAR23は、マイクロプログラムで分岐を行
う場合にマイクロROM15から信号線108を介して
与えられる分岐先のマイクロアドレスを格納する。マイ
クロスタックレジスタUSTR24はマイクロプログラ
ムでサブルーチンジャンプする場合、その戻り先マイク
ロアドレスを格納する。マイクロアドレスレジスタUA
R25はマイクロアドレスを格納するレジスタで、UN
AR21、後述の例外処理アドレス生成回路22、UJ
AR23およびUSTR24からマイクロアドレスバス
UABSを介して伝達されるマイクロアドレスをラッチ
すると共に、アドレスのインクリメント機能も持つ。マ
イクロシーケンサ14aはUABSからロードしたマイ
クロアドレスを順次信号線103を介してマイクロRO
M15に出力する。FIG. 2A is a block diagram showing the configuration of the microsequencer 14a shown in FIG. 1, and FIG. 2B is a block diagram showing the configuration of the instruction execution unit 16. Next micro address register UNA
R21 stores the start address of the microprogram to be executed next, which is given from the instruction decoding unit 13 via the signal line 102. The jump destination micro address register UJAR23 stores a branch destination micro address given from the micro ROM 15 through the signal line 108 when branching is performed by a micro program. The micro stack register USTR24 stores the return destination micro address when the subroutine jumps in the micro program. Micro address register UA
R25 is a register for storing a micro address, which is UN
AR21, exception processing address generation circuit 22 described later, UJ
The micro address transmitted from the AR 23 and the USTR 24 via the micro address bus UABS is latched and also has an address increment function. The micro sequencer 14a sequentially receives the micro address loaded from the UABS via the signal line 103 to the micro RO.
Output to M15.
【0034】例外判定回路26aは命令デコード部1
3、バスインターフェイス11、割り込み受け付け部1
8、命令実行部16からそれぞれ信号線102、10
9、110、111を介して伝達される例外発生情報か
ら、例外の発生の有無、優先度の判定を行い、処理を行
うべき例外が検出された場合、検出した例外を例外処理
アドレス生成回路22に伝える。例外処理アドレス生成
回路22は、該当する例外の、例外処理マイクロプログ
ラムの先頭マイクロアドレスを生成し、UABSに出力
する。The exception judging circuit 26a is the instruction decoding unit 1
3, bus interface 11, interrupt acceptance unit 1
8. Signal lines 102 and 10 from the instruction execution unit 16 respectively
Whether or not an exception has occurred and its priority are determined from the exception occurrence information transmitted via 9, 110, and 111, and when an exception to be processed is detected, the detected exception is handled as an exception processing address generation circuit 22. Tell. The exception processing address generation circuit 22 generates the start micro address of the exception processing micro program of the corresponding exception and outputs it to the UABS.
【0035】また、例外判定回路26aは、信号線10
2、109、111に接続され、割り込みの処理プログ
ラムの終了後、通常の命令フェッチに復帰する前に処理
すべき例外処理の存在の有無をフラグで示す複数のフラ
グレジスタ27を持つ。信号線102には予約命令例外
R、バスエラーB、無条件トラップTのフラグレジスタ
が接続され、信号線109にはバスエラーBのフラグレ
ジスタが接続され、信号線111にはゼロ除算Z、条件
トラップTのフラグレジスタがそれぞれ接続されてい
る。なお、フラグレジスタ27の種類はこれに限らず、
データ処理装置が扱う他の例外に対応するフラグレジス
タを接続してもよい。図2(b) に示すように、命令実行
部16には、PC値、PSW値等の例外処理途中のデー
タ、即ち、割り込み処理を終了して例外処理に復帰した
時に必要となるデータを保持するためのレジスタ28
が、信号線107に接続されている。Further, the exception judgment circuit 26a is connected to the signal line 10
It has a plurality of flag registers 27, which are connected to Nos. 2, 109, and 111 and which indicate with flags whether or not there is an exception process to be processed after returning from the interrupt processing program and before returning to a normal instruction fetch. Reserved register exception R, bus error B, and unconditional trap T flag register are connected to the signal line 102, bus error B flag register is connected to the signal line 109, and division by zero Z and condition are connected to the signal line 111. The flag registers of the trap T are connected to each other. The type of the flag register 27 is not limited to this,
A flag register corresponding to another exception handled by the data processing device may be connected. As shown in FIG. 2 (b), the instruction execution unit 16 holds data such as PC value and PSW value which are in the middle of exception processing, that is, data required when returning to the exception processing after the interruption processing. Register 28 for
Are connected to the signal line 107.
【0036】次に、本発明のデータ処理装置の実施の形
態1の動作について説明する。先ず、通常の命令処理に
ついて説明する。命令実行部16内のPC値を基に、命
令フェッチ部12が命令フェッチアドレスの管理とバス
インターフェイス11への命令フェッチ要求制御を行
う。命令フェッチ部12から命令フェッチ要求と命令フ
ェッチアドレスが信号線100を介してバスインターフ
ェイス11に伝えられる。命令フェッチアドレスはバス
インターフェイス11のアドレスバスAに出力され、こ
のアドレスに従って、メインメモリや外部キャッシュ等
の外部回路から命令コードがデータバスDに出力され
る。データバスDよりバスインターフェイス11に取り
込まれた命令コードは信号線100を介し命令フェッチ
部12に送られ、信号線101を介して命令デコード部
13に送られ解読される。解読結果の内、命令実行用マ
イクロROMアドレスなどの命令実行に使用される制御
情報は信号線102を介してマイクロシーケンサ14a
に送られ、オペランドデータや間接参照のオペランドア
ドレスや使用レジスタ番号等のオペランド情報は信号線
105を介して命令実行部16に送られる。Next, the operation of the first embodiment of the data processing apparatus of the present invention will be described. First, the normal command processing will be described. Based on the PC value in the instruction execution unit 16, the instruction fetch unit 12 manages the instruction fetch address and controls the instruction fetch request to the bus interface 11. The instruction fetch request and the instruction fetch address are transmitted from the instruction fetch unit 12 to the bus interface 11 via the signal line 100. The instruction fetch address is output to the address bus A of the bus interface 11, and an instruction code is output to the data bus D from an external circuit such as a main memory or an external cache according to this address. The instruction code fetched by the bus interface 11 from the data bus D is sent to the instruction fetch unit 12 via the signal line 100, and sent to the instruction decode unit 13 via the signal line 101 to be decoded. Among the decoding results, the control information used for executing the instruction such as the instruction executing micro ROM address is transmitted via the signal line 102 to the micro sequencer 14a.
And the operand information such as operand data, operand address of indirect reference, and register number used is sent to the instruction execution unit 16 via the signal line 105.
【0037】マイクロシーケンサ14aは命令デコード
部13等から送られる制御情報を基にマイクロROM1
5からの読み出し制御を行う。マイクロシーケンサ14
aから出力されるマイクロアドレスは信号線103を介
してマイクロROM15に送られる。マイクロROM1
5からはマイクロアドレスに従って命令実行部16、マ
イクロシーケンサ14a、又は割り込み受け付け部18
に制御情報が出力される。命令実行用の制御信号は信号
線104を介して命令実行部16へ送られる。命令実行
部16では、信号線105より受け取ったオペランド情
報を信号線104より受け取った制御情報を基に処理す
る。オペランドの間接参照が必要な場合は、オペランド
アドレスを信号線107を介してバスインターフェイス
11に伝え、バスインターフェイス11はアドレスバス
Aにオペランドアドレスを出力し、リードバスサイクル
を起動する。外部メモリからフェッチされたデータはデ
ータバスDからバスインターフェイス11に取り込ま
れ、信号線107を介して命令実行部16に転送され、
演算に使用される。The micro sequencer 14a uses the micro ROM 1 based on the control information sent from the instruction decoding unit 13 or the like.
Read control from 5 is performed. Micro sequencer 14
The micro address output from a is sent to the micro ROM 15 via the signal line 103. Micro ROM 1
5 from the instruction execution unit 16, the micro sequencer 14a, or the interrupt acceptance unit 18 according to the micro address.
Control information is output to. The control signal for command execution is sent to the command execution unit 16 via the signal line 104. The instruction execution unit 16 processes the operand information received from the signal line 105 based on the control information received from the signal line 104. When the indirect reference of the operand is required, the operand address is transmitted to the bus interface 11 via the signal line 107, the bus interface 11 outputs the operand address to the address bus A, and the read bus cycle is activated. The data fetched from the external memory is taken into the bus interface 11 from the data bus D and transferred to the instruction execution unit 16 via the signal line 107.
Used for calculation.
【0038】外部メモリへのオペランドのライトが必要
な場合は、オペランドアドレスとオペランドデータが信
号線107を介してバスインターフェイス11に伝えら
れ、バスインターフェイス11がアドレスバスAとデー
タバスDにそれぞれオペランドアドレスとオペランドデ
ータを出力し、ライトバスサイクルを起動することによ
り、外部メモリにオペランドが書き込まれる。When it is necessary to write the operand to the external memory, the operand address and the operand data are transmitted to the bus interface 11 via the signal line 107, and the bus interface 11 outputs the operand address to the address bus A and the data bus D, respectively. And the operand data are output, and the write bus cycle is activated to write the operand in the external memory.
【0039】マイクロシーケンサ14aにおいては、命
令デコード部13から信号線102を介してUNAR2
1に命令処理用マイクロアドレスがロードされ、UAB
Sを介しUAR25に伝えられ、信号線103から出力
される。マイクロROM15のこのアドレスからの読み
出し中に、UAR25はマイクロアドレスをインクリメ
ントし、マイクロシーケンサ14aはマイクロROM1
5からの読み出しが完了する都度、インクリメントされ
たマイクロアドレスを信号線103に出力する。以下、
同様に順次マイクロアドレスをインクリメントし、順次
マイクロプログラムを実行する。In the microsequencer 14a, the UNAR2 signal is transmitted from the instruction decoding unit 13 via the signal line 102.
1 is loaded with the micro address for instruction processing, and UAB
The signal is transmitted to the UAR 25 via S and output from the signal line 103. While reading from this address of the micro ROM 15, the UAR 25 increments the micro address and the micro sequencer 14a
Every time reading from 5 is completed, the incremented micro address is output to the signal line 103. Less than,
Similarly, the micro addresses are sequentially incremented and the micro programs are sequentially executed.
【0040】次に、例外の処理について説明する。例外
には、トラップ命令により起動されるソフトウェア割り
込みであるトラップ、未定義命令や不当なアドレッシン
グモード等の命令をデコードした時に検出される予約命
令例外、デバック用に起動されるデバッグトラップ、外
部メモリ等への命令、オペランドアクセスにおいてタイ
ムアウト時に発生するバスアクセス例外、演算命令の処
理でゼロ除算が検出された場合に発生するゼロ除算トラ
ップ、割り込み信号IRL0〜IRL2で要求される外
部割り込み等がある。Next, the exception processing will be described. Exceptions include traps that are software interrupts that are activated by trap instructions, reserved instruction exceptions that are detected when an instruction such as an undefined instruction or an illegal addressing mode is decoded, debug traps that are activated for debugging, external memory, etc. Instruction, a bus access exception that occurs when a timeout occurs in operand access, a zero division trap that occurs when division by zero is detected in the processing of an arithmetic instruction, an external interrupt requested by interrupt signals IRL0 to IRL2, and the like.
【0041】トラップ命令には無条件トラップ命令と条
件トラップ命令が存在し、無条件トラップは命令デコー
ド部13で検出され、条件トラップは命令実行部16で
検出され、それぞれ信号線102、111を介してマイ
クロシーケンサ14aに知らされる。予約命令例外は命
令デコード部13で検出され信号線102を介してマイ
クロシーケンサ14aに知らされる。バスアクセス例外
はバスエラー信号BERRによりバスインターフェイス
11に通知されるが、命令フェッチに伴うバスアクセス
例外は命令フェッチ部12及び命令デコード部13を介
して信号線102によりマイクロシーケンサ14aに伝
達され、オペランドフェッチ及びオペランドライトに伴
うバスアクセス例外は命令実行部16から信号線111
を介してマイクロシーケンサ14aに伝達される。ゼロ
除算トラップは命令実行部16で検出され信号線111
を介してマイクロシーケンサ14aに知らされる。外部
割り込みは割り込み受け付け部18で検出され、割り込
みレベルが信号線110を介してマイクロシーケンサ1
4aに伝達される。The trap instruction includes an unconditional trap instruction and a conditional trap instruction. The unconditional trap is detected by the instruction decoding unit 13 and the conditional trap is detected by the instruction execution unit 16, and the signal lines 102 and 111 are used respectively. The microsequencer 14a is informed. The reserved instruction exception is detected by the instruction decoding unit 13 and notified to the microsequencer 14a via the signal line 102. The bus access exception is notified to the bus interface 11 by the bus error signal BERR, but the bus access exception accompanying the instruction fetch is transmitted to the micro sequencer 14a through the instruction fetch unit 12 and the instruction decode unit 13 by the signal line 102, and the operand A bus access exception associated with fetch and operand write is sent from the instruction execution unit 16 to the signal line 111.
Is transmitted to the micro sequencer 14a via the. The zero division trap is detected by the instruction execution unit 16 and detected by the signal line 111.
The microsequencer 14a is notified via the. The external interrupt is detected by the interrupt acceptance unit 18, and the interrupt level is transmitted via the signal line 110 to the microsequencer 1
4a is transmitted.
【0042】これらの例外は、マイクロROM15から
命令実行の最終ステップで出力される信号線108上の
信号をマイクロシーケンサ14aが受け取った時に、マ
イクロシーケンサ14aで受け付け評価が行われる。こ
こで受け付けられた例外に対して例外処理が実施され
る。例外処理はマイクロシーケンサ14aから特定の例
外処理用マイクロアドレスを、信号線103を介してマ
イクロROM15に出力することで起動される。図5に
例外処理用マイクロプログラムの処理フローを示す。These exceptions are accepted and evaluated by the microsequencer 14a when the microsequencer 14a receives the signal on the signal line 108 output from the microROM 15 in the final step of instruction execution. Exception processing is performed on the exception accepted here. The exception processing is activated by outputting a specific exception processing micro address from the micro sequencer 14 a to the micro ROM 15 via the signal line 103. FIG. 5 shows a processing flow of the exception processing microprogram.
【0043】本実施の形態の例外処理動作を、命令フェ
ッチ時のバスアクセス例外受け付け直後にレベル0の割
り込みが発生した場合を例に説明する。命令フェッチ部
12から命令フェッチ要求と命令フェッチアドレスが信
号線100を介してバスインターフェイス11に伝えら
れる。命令フェッチアドレスはバスインターフェイス1
1のアドレスバスAに出力され、外部メモリをアクセス
する。このアクセスにおいてタイムアウトエラーが発生
した場合、BERR信号がバスインターフェイス11に
返送される。このバスエラー情報は信号線100を介し
命令フェッチ部12に送られ、信号線101を介して命
令デコード部13に送られ、さらに信号線102を介し
てマイクロシーケンサ14aに送られる。バスエラー発
生に先行する命令処理の終了により、マイクロシーケン
サ14aの例外判定回路26aで例外が評価され、バス
アクセス例外が受け付けられる。この情報は例外処理ア
ドレス生成回路22に伝達され、例外処理アドレス生成
回路22はバスアクセス例外処理用のマイクロプログラ
ムの先頭アドレスをUABSから出力する。このマイク
ロアドレスはUAR25でラッチされ、信号線103を
介してマイクロROM15に出力される。マイクロRO
M15ではこのバスアクセス例外処理用のエントリから
順次制御信号をマイクロ命令実行部16に対して出力す
る。The exception processing operation of the present embodiment will be described by taking as an example the case where a level 0 interrupt occurs immediately after the bus access exception is accepted at the time of instruction fetch. The instruction fetch request and the instruction fetch address are transmitted from the instruction fetch unit 12 to the bus interface 11 via the signal line 100. The instruction fetch address is the bus interface 1
1 is output to the address bus A to access the external memory. When a time-out error occurs in this access, the BERR signal is returned to the bus interface 11. This bus error information is sent to the instruction fetch unit 12 via the signal line 100, sent to the instruction decode unit 13 via the signal line 101, and further sent to the micro sequencer 14a via the signal line 102. Upon completion of the instruction processing preceding the occurrence of the bus error, the exception determination circuit 26a of the microsequencer 14a evaluates the exception and accepts the bus access exception. This information is transmitted to the exception processing address generation circuit 22, and the exception processing address generation circuit 22 outputs the start address of the microprogram for bus access exception processing from the UABS. This micro address is latched by the UAR 25 and output to the micro ROM 15 via the signal line 103. Micro RO
At M15, a control signal is sequentially output from the entry for bus access exception processing to the microinstruction executing unit 16.
【0044】マイクロROM15より順次出力されるバ
スアクセス例外処理用マイクロプログラムによる制御信
号により、命令実行部16は、バスエラーを発生させた
命令シーケンス実行時のPSWをワーキングレジスタに
退避する(S1)。このときIRL0、IRL1、IR
L2が〔0、0、0〕の割り込み信号が入力されたとす
ると、この信号は割り込み受け付け部18から信号線1
10を介してマイクロシーケンサ14aに送られる。命
令実行部16はバスアクセス例外のベクタを生成し(S
2)、外部メモリの例外ベクタテーブル内の、バスアク
セス例外処理用ハンドラのエントリアドレスを計算し
(S3)、そのアドレスにあらかじめ格納されているバ
スアクセス例外処理用のハンドラの先頭のPC値と、ハ
ンドラ実行時のPSWの値をバスインターフェイス11
を介して読み込み(S4)、ワーキングレジスタ内のP
SWの割り込みマスク値と、読み込んだハンドラ実行時
のPSWの割り込みマスク値とを比較し(S5)、レベ
ルが高い方の割り込みマスク値をマイクロシーケンサ1
4aに出力する。マイクロシーケンサ14aは割り込み
を再評価し(S6)、信号線110から与えられる割り
込みレベル、即ちレベル0が、割り込みが許可される有
効な割り込みであることを検出し、割り込みに処理を移
すが、例外判定回路26aのフラグレジスタ27のう
ち、現在実行中のバスアクセス例外に該当するフラグレ
ジスタ(B)にフラグを立てて、割り込みの処理終了
後、通常の命令フェッチに戻る前に処理すべき例外処理
が存在することを示し、バスアクセス例外マイクロプロ
グラムの処理中に得た情報、即ち、割り込み再評価前に
比較した結果で優先度の高い割り込みマスク値と割り込
み発生時のアドレス、それに続く命令のアドレス、即ち
割り込み処理からの戻り先アドレス、及び割り込み発生
データを命令実行部16のレジスタ28に保持する。The instruction execution unit 16 saves the PSW at the time of executing the instruction sequence causing the bus error in the working register according to the control signal from the bus access exception processing microprogram sequentially output from the micro ROM 15 (S1). At this time, IRL0, IRL1, IR
Assuming that an interrupt signal of [0, 0, 0] is input to L2, this signal is transmitted from the interrupt acceptance unit 18 to the signal line 1
It is sent to the micro sequencer 14a via 10. The instruction execution unit 16 generates a bus access exception vector (S
2) The entry address of the bus access exception handling handler in the exception vector table of the external memory is calculated (S3), and the top PC value of the bus access exception handling handler stored in advance at that address is stored. The value of PSW when the handler is executed is set to the bus interface 11
Read through (S4), P in the working register
The interrupt mask value of SW is compared with the interrupt mask value of PSW when the loaded handler is executed (S5), and the interrupt mask value of the higher level is used by the microsequencer 1
4a. The micro-sequencer 14a re-evaluates the interrupt (S6), detects that the interrupt level given from the signal line 110, that is, level 0, is a valid interrupt in which the interrupt is permitted, and shifts the processing to the interrupt. Of the flag registers 27 of the determination circuit 26a, a flag is set in the flag register (B) corresponding to the bus access exception currently being executed, and an exception process to be processed after the interrupt process is completed and before returning to the normal instruction fetch. Information that was obtained during processing of the bus access exception microprogram, that is, the interrupt mask value with a higher priority as a result of comparison before interrupt re-evaluation, the address when the interrupt occurred, and the address of the instruction that follows. That is, the return address from the interrupt processing and the interrupt generation data are stored in the register 28 of the instruction execution unit 16. To hold.
【0045】ここで割り込みが受け付けられ、この情報
は例外処理アドレス生成回路22に伝達され、例外処理
アドレス生成回路22はバスアクセス例外処理用のマイ
クロプログラムの先頭アドレスをUABSから出力す
る。このマイクロアドレスはUAR25でラッチされ、
信号線103を介してマイクロROM15に出力され
る。マイクロROM15ではこのバスアクセス例外処理
用のエントリから順次制御信号をマイクロ命令実行部1
6に対して出力する。つまり例外処理用マイクロプログ
ラムをもう一度実行し直して割り込み処理用のハンドラ
のエントリアドレス、ハンドラ実行時のPSWの値等を
得る。命令実行部16は割り込みを発生させた命令シー
ケンス実行時のPSWをデータパス17内に存在するワ
ーキングレジスタに退避する(S1)。命令実行部16
は、割り込みのベクタを生成またはデータバスDよりバ
スインターフェイス11を介して読み込み(S2)、外
部メモリの割り込みベクタテーブル内の割り込みのエン
トリアドレスを計算し(S3)、そのアドレスにあらか
じめ格納されている割り込み処理用のハンドラの先頭の
PC値と、ハンドラ実行時のPSWの値をバスインター
フェイス11を介して読み込み(S4)、ワーキングレ
ジスタ内のPSWの割り込みマスク値と、読み込んだ、
割り込み処理用のハンドラ実行時のPSWの割り込みマ
スク値とを比較する(S5)。ここでもう一度割り込み
が無いかどうかの再評価を行う(S6)。この場合、初
めの割り込みのレベルが0であるので、他の割り込みは
許可されず、有効な割り込みは存在しないので、割り込
み再評価前に比較した結果で優先度の高い割り込みマス
ク値を採用して、割り込み処理用のハンドラ実行時のP
SWの値を更新し(S7)、バスエラー例外ハンドラの
先頭アドレスを示すPC値、さらにワーキングレジスタ
内のPSWの値をバスインターフェイス11を介して外
部メモリ内のスタックに退避し(S8、S9)、PCに
割り込み処理用のハンドラの先頭のPC値をセットし、
命令フェッチ部12に対しフェッチの開始を指示する。
以後、命令フェッチ部12の命令フェッチ要求により順
次割り込みハンドラのプログラムが読み出されて実行さ
れる(S10)。Here, the interrupt is accepted, this information is transmitted to the exception processing address generation circuit 22, and the exception processing address generation circuit 22 outputs the start address of the microprogram for bus access exception processing from the UABS. This micro address is latched by UAR25,
It is output to the micro ROM 15 via the signal line 103. In the micro-ROM 15, the micro-instruction execution unit 1 sequentially outputs control signals from the entry for bus access exception processing.
6 is output. That is, the exception processing microprogram is re-executed to obtain the entry address of the handler for interrupt processing, the PSW value at the time of handler execution, and the like. The instruction execution unit 16 saves the PSW at the time of executing the instruction sequence that generated the interrupt in the working register existing in the data path 17 (S1). Instruction execution unit 16
Generates an interrupt vector or reads it from the data bus D via the bus interface 11 (S2), calculates the entry address of the interrupt in the interrupt vector table of the external memory (S3), and stores it in advance at that address. The PC value at the beginning of the handler for interrupt processing and the value of PSW at the time of handler execution are read via the bus interface 11 (S4), and the interrupt mask value of PSW in the working register is read.
The interrupt mask value of PSW at the time of executing the handler for interrupt processing is compared (S5). Here, it is reevaluated again whether or not there is an interrupt (S6). In this case, since the level of the first interrupt is 0, no other interrupts are enabled and no valid interrupts exist. Therefore, the interrupt mask value with a high priority is used as a result of comparison before interrupt reevaluation. , P when the handler for interrupt processing is executed
The SW value is updated (S7), and the PC value indicating the start address of the bus error exception handler and the PSW value in the working register are saved in the stack in the external memory via the bus interface 11 (S8, S9). , Set the PC value at the beginning of the handler for interrupt processing to PC,
The instruction fetch unit 12 is instructed to start fetching.
After that, the program of the interrupt handler is sequentially read and executed by the instruction fetch request of the instruction fetch unit 12 (S10).
【0046】割り込み処理が終了すると、スタックから
PSW、PC等のデータをポップし、フラグレジスタ2
7を参照して通常の命令フェッチに戻る前に処理すべき
例外処理が存在するか否かを判断し、本実施の形態では
バスエラー例外のハンドラが未処理であるので、レジス
タ28に保持していたPSW値によってスタックからポ
ップしたPSWの内容を更新して、そのほかにレジスタ
28に保持していたデータをスタックに退避する。スタ
ックから戻したPC値すなわちバスアクセス例外のハン
ドラの先頭アドレスをPCにセットすることによって例
外ハンドラに分岐する。When the interrupt processing is completed, data such as PSW and PC are popped from the stack, and the flag register 2
7, it is determined whether or not there is an exception process to be processed before returning to the normal instruction fetch. In the present embodiment, the handler of the bus error exception is unprocessed, and therefore, it is held in the register 28. The contents of the PSW popped from the stack are updated with the existing PSW value, and other data held in the register 28 is saved in the stack. The PC value returned from the stack, that is, the start address of the handler for the bus access exception, is set in the PC to branch to the exception handler.
【0047】〔実施の形態2〕本実施の形態のデータ処
理装置の構成は図1及び図2に示す実施の形態1の構成
と同様である。また通常の命令処理は実施の形態1と同
様であるので説明を省略する。次に、本実施の形態のデ
ータ処理装置の例外処理の動作を、命令フェッチ時のバ
スアクセス例外受け付け直後にレベル0の割り込みが発
生した場合を例に説明する。図6に例外処理用マイクロ
プログラムの処理フロー、図7に例外処理時における割
り込み要求の受け付けタイミングのタイミングチャート
を示す。[Second Embodiment] The configuration of the data processing apparatus according to the present embodiment is the same as that of the first embodiment shown in FIGS. 1 and 2. Further, since the normal instruction processing is the same as that of the first embodiment, the description will be omitted. Next, the operation of the exception processing of the data processing apparatus according to the present embodiment will be described by taking as an example the case where a level 0 interrupt occurs immediately after the bus access exception is accepted at the time of instruction fetch. FIG. 6 shows a processing flow of the exception processing microprogram, and FIG. 7 shows a timing chart of interrupt request acceptance timing during exception processing.
【0048】命令フェッチ部12から命令フェッチ要求
と命令フェッチアドレスが信号線100を介してバスイ
ンターフェイス11に伝えられる。命令フェッチアドレ
スはバスインターフェイス11のアドレスバスAに出力
され、外部メモリをアクセスする。このアクセスにおい
てタイムアウトエラーが発生した場合、BERR信号が
バスインターフェイス11に返送される。このバスエラ
ー情報は信号線100を介し命令フェッチ部12に送ら
れ、信号線101を介して命令デコード部13に送ら
れ、さらに信号線102を介してマイクロシーケンサ1
4aに送られる。先行する命令処理の終了により、マイ
クロシーケンサ14aの例外判定回路26aで例外が評
価され、バスアクセス例外が受け付けられる。この情報
は例外処理アドレス生成回路22に伝達され、例外処理
アドレス生成回路22はバスアクセス例外処理用のマイ
クロプログラムの先頭アドレスをUABSから出力す
る。このマイクロアドレスはUAR25でラッチされ、
信号線103を介してマイクロROM15に出力され
る。マイクロROM15ではこのバスアクセス例外処理
用のエントリから順次制御信号をマイクロ命令実行部1
6に対して出力する。The instruction fetch request and the instruction fetch address are transmitted from the instruction fetch unit 12 to the bus interface 11 via the signal line 100. The instruction fetch address is output to the address bus A of the bus interface 11 to access the external memory. When a time-out error occurs in this access, the BERR signal is returned to the bus interface 11. This bus error information is sent to the instruction fetch unit 12 via the signal line 100, to the instruction decode unit 13 via the signal line 101, and further via the signal line 102.
4a. Upon completion of the preceding instruction processing, the exception determination circuit 26a of the microsequencer 14a evaluates the exception and accepts the bus access exception. This information is transmitted to the exception processing address generation circuit 22, and the exception processing address generation circuit 22 outputs the start address of the microprogram for bus access exception processing from the UABS. This micro address is latched by UAR25,
It is output to the micro ROM 15 via the signal line 103. In the micro-ROM 15, the micro-instruction execution unit 1 sequentially outputs control signals from the entry for bus access exception processing.
6 is output.
【0049】マイクロROM15より順次出力されるバ
スアクセス例外処理用マイクロプログラムによる制御信
号により、命令実行部16は、バスエラーを発生させた
命令シーケンス実行時のPSWをワーキングレジスタに
退避する(S21)。このときIRL0、IRL1、I
RL2が〔0、0、0〕の割り込み信号が入力されたと
すると、この信号は割り込み受け付け部18から信号線
110を介してマイクロシーケンサ14aに送られる。
命令実行部16はバスアクセス例外のベクタを生成し
(S22)、外部メモリの例外ベクタテーブル内のバス
アクセス例外処理用ハンドラのエントリアドレスを計算
し(S23)、そのアドレスにあらかじめ格納されてい
るバスアクセス例外処理用のハンドラの先頭のPC値
と、ハンドラ実行時のPSWの値をバスインターフェイ
ス11を介して読み込み(S24)、ワーキングレジス
タ内のPSWの割り込みマスク値と、読み込んだハンド
ラ実行時のPSWの割り込みマスク値とを比較し(S2
5)、レベルが高い方の割り込みマスク値をマイクロシ
ーケンサ14aに出力する。マイクロシーケンサ14a
は割り込みを再評価し(S26)、信号線110から与
えられる割り込みレベル、即ちレベル0が、割り込みが
許可される有効な割り込みであることを検出し、割り込
みに処理を移すが、例外判定回路26aのフラグレジス
タ27のうち、現在実行中のバスアクセス例外に該当す
るフラグレジスタ(B)にフラグを立てて、割り込みの
処理終了後、通常の命令フェッチに戻る前に処理すべき
例外処理が存在することを示し、バスアクセス例外マイ
クロプログラムの処理中に得た情報、即ち、割り込み再
評価前に比較した結果で優先度の高い割り込みマスク値
と割り込み発生時のアドレス、それに続く命令のアドレ
ス、即ち割り込み処理からの戻り先アドレス、及び割り
込み発生データを命令実行部16のレジスタ28に保持
する。The instruction execution unit 16 saves the PSW at the time of executing the instruction sequence causing the bus error in the working register according to the control signal from the bus access exception processing microprogram sequentially output from the micro ROM 15 (S21). At this time, IRL0, IRL1, I
If an interrupt signal of [0,0,0] is input to RL2, this signal is sent from the interrupt accepting unit 18 to the microsequencer 14a via the signal line 110.
The instruction execution unit 16 generates a bus access exception vector (S22), calculates the entry address of the bus access exception processing handler in the exception vector table of the external memory (S23), and stores the bus stored in advance at that address. The top PC value of the handler for access exception handling and the PSW value at the time of handler execution are read via the bus interface 11 (S24), the interrupt mask value of the PSW in the working register, and the read PSW at handler execution time. The interrupt mask value of (S2
5) The interrupt mask value with the higher level is output to the microsequencer 14a. Micro sequencer 14a
Re-evaluates the interrupt (S26), detects that the interrupt level given from the signal line 110, that is, level 0, is a valid interrupt in which the interrupt is permitted, and shifts the processing to the interrupt, but the exception determination circuit 26a Among the flag registers 27, the flag register (B) corresponding to the bus access exception currently being executed is flagged, and there is an exception process to be processed after the interrupt process is completed and before returning to the normal instruction fetch. The information obtained during the processing of the bus access exception microprogram, that is, the interrupt mask value with a high priority based on the result of comparison before interrupt re-evaluation and the address at the time of the interrupt, the address of the instruction following that, that is, the interrupt The return address from the process and the interrupt generation data are held in the register 28 of the instruction execution unit 16.
【0050】ここで割り込みが受け付けられるが、本実
施の形態では例外処理用マイクロプログラムを実行し直
すのではなくベクタ生成のステップにジャンプし(S2
2)、割り込み処理用のハンドラのエントリアドレス、
ハンドラ実行時のPSWの値等を得る。命令実行部16
は、割り込みのベクタを生成またはデータバスDよりバ
スインターフェイス11を介して読み込み(S22)、
外部メモリの例外ベクタテーブル内の割り込みのエント
リアドレスを計算し(S23)、そのアドレスにあらか
じめ格納されている割り込み処理用のハンドラの先頭の
PC値と、ハンドラ実行時のPSWの値をバスインター
フェイス11を介して読み込み(S24)、ワーキング
レジスタ内のPSWの割り込みマスク値と、読み込ん
だ、割り込み処理用のハンドラ実行時のPSWの割り込
みマスク値とを比較する(S25)。ここでもう一度割
り込みが無いかどうかの再評価を行う(S26)。この
場合、初めの割り込みのレベルが0であるので、他の割
り込みは許可されず、有効な割り込みは存在しないの
で、割り込み再評価前に比較した結果で優先度の高い割
り込みマスク値を採用して、割り込み処理用のハンドラ
実行時のPSWの値を更新し(S27)、バスエラー例
外ハンドラの先頭アドレスを示すPC値、さらにワーキ
ングレジスタ内のPSWの値をバスインターフェイス1
1を介して外部メモリ内のスタックに退避し(S28、
S29)、PCに割り込み処理用のハンドラの先頭のP
C値をセットし、命令フェッチ部12に対しフェッチの
開始を指示する。以後、命令フェッチ部12の命令フェ
ッチ要求により順次割り込みハンドラのプログラムが読
み出されて実行される(S30)。Although an interrupt is accepted here, in the present embodiment, the exception-handling microprogram is not re-executed, but a jump is made to the vector generation step (S2).
2), the entry address of the handler for interrupt processing,
Get the value of PSW when the handler is executed. Instruction execution unit 16
Generates an interrupt vector or reads it from the data bus D via the bus interface 11 (S22),
The entry address of the interrupt in the exception vector table of the external memory is calculated (S23), and the start PC value of the handler for interrupt processing and the PSW value at the time of handler execution stored in advance at that address are calculated by the bus interface 11 (S24), and the PSW interrupt mask value in the working register is compared with the read PSW interrupt mask value at the time of executing the handler for interrupt processing (S25). Here, it is reevaluated again whether or not there is an interrupt (S26). In this case, since the level of the first interrupt is 0, no other interrupts are enabled and no valid interrupts exist. Therefore, the interrupt mask value with a high priority is used as a result of comparison before interrupt reevaluation. , The PSW value at the time of executing the handler for interrupt processing is updated (S27), and the PC value indicating the start address of the bus error exception handler and the PSW value in the working register are set to the bus interface 1
1 to save to the stack in the external memory (S28,
S29), P at the head of the handler for interrupt processing is sent to the PC
The C value is set, and the instruction fetch unit 12 is instructed to start fetching. Thereafter, the program of the interrupt handler is sequentially read and executed by the instruction fetch request of the instruction fetch unit 12 (S30).
【0051】割り込み処理が終了すると、スタックから
PSW、PC等のデータをポップし、フラグレジスタ2
7を参照して通常の命令フェッチに戻る前に処理すべき
例外処理が存在するか否かを判断し、本実施の形態では
バスエラー例外のハンドラが未処理であるので、レジス
タ28に保持していたPSW値によってスタックからポ
ップしたPSWの内容を更新して、そのほかにレジスタ
28に保持していたデータをスタックに退避する。スタ
ックから戻したPC値すなわちバスアクセス例外のハン
ドラの先頭アドレスをPCにセットすることによって例
外ハンドラに分岐する。When the interrupt processing is completed, data such as PSW and PC are popped from the stack, and the flag register 2
7, it is determined whether or not there is an exception process to be processed before returning to the normal instruction fetch. In the present embodiment, the handler of the bus error exception is unprocessed, and therefore, it is held in the register 28. The contents of the PSW popped from the stack are updated with the existing PSW value, and other data held in the register 28 is saved in the stack. The PC value returned from the stack, that is, the start address of the handler for the bus access exception, is set in the PC to branch to the exception handler.
【0052】以上のように、本実施の形態ではフラグレ
ジスタ27とレジスタ28とを設けたことによって例外
受け付け時に処理したデータを保持することができ、後
から受け付けられた割り込み処理終了後にすみやかに先
の例外処理を継続できる。As described above, in the present embodiment, the flag register 27 and the register 28 are provided so that the data processed at the time of exception acceptance can be held, and immediately after the completion of the interrupt handling accepted later, the data is processed first. Exception handling of can be continued.
【0053】〔実施の形態3〕図3は本発明のデータ処
理装置の実施の形態3のマイクロシーケンサ14a(図
3(a) )、及び命令実行部16(図3(b) )の構成を示
すブロック図である。なお、他の構成は図1の実施の形
態1と同様であるので説明を省略する。[Third Embodiment] FIG. 3 shows the configuration of a micro sequencer 14a (FIG. 3 (a)) and an instruction execution unit 16 (FIG. 3 (b)) according to a third embodiment of the data processing apparatus of the present invention. It is a block diagram shown. The rest of the configuration is similar to that of the first embodiment shown in FIG.
【0054】本実施の形態の例外判定回路26bは、図
3(a) に示すように、割り込みの処理プログラムの終了
後、通常の命令フェッチに復帰する前に処理すべき割り
込み処理の存在の有無をフラグで示すレベル別の複数の
フラグレジスタ29が信号線110に接続されている。
また、本実施の形態の命令実行部16には、図3(b)に
示すように、PC値、PSW値等の第1の割り込み処理
中のデータ、即ち、後の割り込み処理を終了して先の割
り込み処理に復帰した時に必要となるデータを保持する
ためのレベル別の複数のレジスタ30が信号線107に
接続されている。本実施の形態でレベル別にレジスタ3
0を設けているのは多重割り込みに対応できるようにす
るためである。またレベル0用のフラグレジスタ29と
レジスタ30とは、レベル0の割り込みに対してはどの
ようなレベルの割り込みも許可されないので設ける必要
はない。As shown in FIG. 3A, the exception judgment circuit 26b of this embodiment determines whether or not there is an interrupt process to be processed after returning from the interrupt processing program and before returning to the normal instruction fetch. A plurality of flag registers 29 for each level, which are indicated by flags, are connected to the signal line 110.
Further, as shown in FIG. 3B, the instruction executing unit 16 of the present embodiment terminates the data during the first interrupt processing such as the PC value and the PSW value, that is, the subsequent interrupt processing. A plurality of registers 30 for each level for holding data required when returning to the previous interrupt processing are connected to the signal line 107. In this embodiment, the register 3 is classified by level.
The reason why 0 is provided is to make it possible to handle multiple interrupts. Further, it is not necessary to provide the level 0 flag register 29 and the register 30 because no level interrupt is permitted with respect to the level 0 interrupt.
【0055】なお、通常の命令処理は実施の形態1と同
様であるので説明を省略し、割り込みの処理についての
み、レベル6とレベル4との割り込みを例にして以下に
説明する。Since the ordinary instruction processing is the same as that of the first embodiment, the description thereof is omitted, and only the interrupt processing will be described below by taking the interrupts of level 6 and level 4 as an example.
【0056】IRL0、IRL1、IRL2が[1、
1、0]のレベル6の割り込み信号がバスインターフェ
イス11内の割り込み受け付け部18に伝えられる。こ
の割り込み情報は信号線110を介しマイクロシーケン
サ14aに送られる。先行する命令処理の終了を示す信
号線108上の信号をマイクロシーケンサ14aが受け
取ると、マイクロシーケンサ14aの例外判定回路26
bで例外が評価され、レベル6の割り込みが受け付けら
れる。この情報は例外処理アドレス生成回路22に伝達
され、例外処理アドレス生成回路22はレベル6の割り
込み処理用のマイクロプログラムの先頭アドレスをUA
BSから出力する。このマイクロアドレスはUAR25
でラッチされ、信号線103を介してマイクロROM1
5に出力される。マイクロROM15ではレベル6の割
り込み処理用のエントリから順次制御信号をマイクロ命
令実行部16に対して出力する。IRL0, IRL1 and IRL2 are [1,
The level 6 interrupt signal of [1, 0] is transmitted to the interrupt acceptance unit 18 in the bus interface 11. This interrupt information is sent to the micro sequencer 14a via the signal line 110. When the microsequencer 14a receives the signal on the signal line 108 indicating the end of the preceding instruction processing, the exception judgment circuit 26 of the microsequencer 14a.
The exception is evaluated in b and the level 6 interrupt is accepted. This information is transmitted to the exception processing address generation circuit 22, and the exception processing address generation circuit 22 sets the start address of the microprogram for level 6 interrupt processing to UA.
Output from BS. This micro address is UAR25
Latched by the micro ROM 1 via the signal line 103.
5 is output. The micro ROM 15 sequentially outputs control signals to the micro instruction executing section 16 from the level 6 interrupt processing entry.
【0057】マイクロROM15より順次出力される割
り込み処理用マイクロプログラムによる制御信号によ
り、命令実行部16は、割り込みを発生させた命令シー
ケンス実行時のPSWをワーキングレジスタに退避す
る。このときIRL0、IRL1、IRL2が〔1、
0、0〕の割り込み信号が入力されたとすると、この信
号は割り込み受け付け部18から信号線110を介して
マイクロシーケンサ14aに送られる。命令実行部16
は第1の割り込みのベクタを生成して外部メモリの割り
込みベクタテーブル内のエントリアドレスを計算し、そ
のアドレスにあらかじめ格納されているレベル6の割り
込み処理用のハンドラの先頭のPC値と、ハンドラ実行
時のPSWの値をバスインターフェイス11を介して読
み込み、ワーキングレジスタ内のPSWの割り込みマス
ク値と、読み込んだハンドラ実行時のPSWの割り込み
マスク値とを比較し、レベルが高い方の割り込みマスク
値をマイクロシーケンサ14aに出力する。マイクロシ
ーケンサ14aは割り込みを再評価し、信号線110か
ら与えられる割り込みレベル、即ちレベル4が、現在実
行中の割り込みよりレベルが高い有効な割り込みである
ことを検出し、第2の割り込みに処理を移すが、例外判
定回路26bのフラグレジスタ29のうち、現在実行中
のレベル6に該当するフラグレジスタ29にフラグを立
てて、割り込みの処理終了後、通常の命令フェッチに戻
る前に処理すべきレベル6の割り込み処理が存在するこ
とを示し、第1の割り込み処理中に得た情報、即ち、割
り込み再評価前に比較した結果で優先度の高い割り込み
マスク値と戻り先アドレスとを、命令実行部16のレベ
ル6のレジスタ30に保持する。The instruction execution unit 16 saves the PSW at the time of executing the instruction sequence that caused the interrupt in the working register in response to a control signal from the interrupt processing microprogram sequentially output from the micro ROM 15. At this time, IRL0, IRL1, and IRL2 are [1,
If an interrupt signal of [0, 0] is input, this signal is sent from the interrupt accepting unit 18 to the microsequencer 14a via the signal line 110. Instruction execution unit 16
Generates a vector for the first interrupt, calculates the entry address in the interrupt vector table of the external memory, and stores the PC value at the beginning of the handler for level 6 interrupt processing stored in advance at that address and the handler execution The PSW value at the time of reading is read through the bus interface 11, the PSW interrupt mask value in the working register is compared with the read PSW interrupt mask value at the time of executing the handler, and the interrupt mask value of the higher level is determined. Output to the micro sequencer 14a. The micro-sequencer 14a re-evaluates the interrupt, detects that the interrupt level given from the signal line 110, that is, level 4, is a valid interrupt having a higher level than the interrupt currently being executed, and processes the second interrupt. However, in the flag register 29 of the exception determination circuit 26b, a flag is set in the flag register 29 corresponding to the level 6 currently being executed, and after the interrupt processing is completed, the level to be processed before returning to the normal instruction fetch. 6 indicates that there is an interrupt process, and information obtained during the first interrupt process, that is, an interrupt mask value and a return address having a high priority as a result of comparison before interrupt re-evaluation, is executed by the instruction execution unit. It is held in 16 level 6 registers 30.
【0058】ここで第2の割り込みが受け付けられ、命
令実行部16はレベル4の割り込みのベクタを生成また
はデータバスDよりバスインターフェイス部11を介し
て読み込み、外部メモリの割り込みベクタテーブル内の
エントリアドレスを計算し、そのアドレスにあらかじめ
格納されているレベル4の割り込み処理用のハンドラの
先頭のPC値と、ハンドラ実行時のPSWの値をバスイ
ンターフェイス11を介して読み込み、ワーキングレジ
スタ内のPSWの割り込みマスク値と、読み込んだ、割
り込み処理用のハンドラ実行時のPSWの割り込みマス
ク値とを比較する。ここでもう一度割り込みが無いかど
うかの再評価を行う。割り込みが許可される有効な割り
込みが無ければ、割り込み再評価前に比較した結果で優
先度の高い割り込みマスク値を採用して、割り込み処理
用のハンドラ実行時のPSWの値を更新し、第1の割り
込み処理中に割り込みベクタテーブルから読み出した第
1の割り込みの割り込みハンドラの先頭アドレスと、ワ
ーキングレジスタ内のPSWの値とをバスインターフェ
イス11を介して外部メモリ内のスタックに退避し、P
Cに第2の割り込み処理用のハンドラの先頭のPC値を
セットし、命令フェッチ部12に対しフェッチの開始を
指示する。以後、命令フェッチ部12の命令フェッチ要
求により順次割り込みハンドラのプログラムが読み出さ
れて実行される。At this time, the second interrupt is accepted, and the instruction execution unit 16 generates a level 4 interrupt vector or reads it from the data bus D via the bus interface unit 11, and the entry address in the interrupt vector table of the external memory. Is calculated, and the PC value at the beginning of the handler for level 4 interrupt processing and the PSW value at the time of handler execution stored in that address are read through the bus interface 11, and the PSW interrupt in the working register is read. The mask value is compared with the read interrupt mask value of the PSW when the handler for interrupt processing is executed. Re-evaluate whether there is no interruption here. If there is no valid interrupt for which interrupts are permitted, the value of PSW at the time of execution of the handler for interrupt processing is updated by adopting the interrupt mask value of higher priority as a result of comparison before interrupt reevaluation. The start address of the interrupt handler of the first interrupt read from the interrupt vector table during the interrupt processing of P and the value of PSW in the working register are saved in the stack in the external memory via the bus interface 11, and P
The first PC value of the handler for the second interrupt processing is set in C, and the instruction fetch unit 12 is instructed to start fetching. After that, in response to an instruction fetch request from the instruction fetch unit 12, the interrupt handler program is sequentially read and executed.
【0059】第2の割り込み処理が終了すると、スタッ
クに退避していたデータをポップし、フラグレジスタ2
9を参照して通常の命令フェッチに戻る前に処理すべき
割り込み処理が存在するか否かを判断する。本実施の形
態ではレベル6の第1の割り込みのハンドラが未処理で
あるので、レジスタ30に保持していたデータを用いて
PSWの値を更新する。ワーキングレジスタ内のPSW
とレジスタ30に保持していたPCをスタックに退避し
て、PCにスタックから戻した第1の割り込み処理を行
うハンドラの先頭アドレスをセットして、第1の割り込
み処理の続きを行う。When the second interrupt processing is completed, the data saved in the stack is popped and the flag register 2
9, it is determined whether there is an interrupt process to be processed before returning to the normal instruction fetch. In the present embodiment, since the handler of the first interrupt of level 6 is unprocessed, the value of PSW is updated using the data held in the register 30. PSW in working register
Then, the PC held in the register 30 is saved in the stack, the start address of the handler for the first interrupt processing returned from the stack is set in the PC, and the first interrupt processing is continued.
【0060】以上のように、本実施の形態ではフラグレ
ジスタ29とレジスタ30とを設けたことによって第1
の割り込み受け付け時に処理したデータを保持すること
ができ、後から受け付けられた第2の割り込み処理終了
後にすみやかに第1の割り込み処理を継続できる。As described above, in the present embodiment, by providing the flag register 29 and the register 30, the first register is provided.
The processed data can be held at the time of accepting the interrupt, and the first interrupt process can be continued immediately after the end of the second interrupt process accepted later.
【0061】〔実施の形態4〕図4は本発明のデータ処
理装置の実施の形態4のマイクロシーケンサ14a(図
4(a) )、及び命令実行部16(図4(b) )の構成を示
すブロック図である。なお、他の構成は図1の実施の形
態1と同様であるので説明を省略する。[Fourth Embodiment] FIG. 4 shows the configuration of a microsequencer 14a (FIG. 4 (a)) and an instruction execution unit 16 (FIG. 4 (b)) according to a fourth embodiment of the data processing apparatus of the present invention. It is a block diagram shown. The rest of the configuration is similar to that of the first embodiment shown in FIG.
【0062】本実施の形態では、限定された特定のレベ
ルの割り込み処理用のマイクロプログラム実行時のみ割
り込みの再評価を行い、特定レベル以外のレベルの割り
込み処理用マイクロプログラム実行時には割り込みの再
評価を行わない。本実施の形態の例外判定回路26cで
は、図4(a) に示すように、割り込みの処理プログラム
の終了後、通常の命令フェッチに復帰する前に処理すべ
き割り込み処理の存在の有無をフラグで示す、特定のレ
ベル別の複数のフラグレジスタ31が信号線110に接
続されている。また、本実施の形態の命令実行部16で
は、図4(b) に示すように、PC値、PSW値等の第1
の割り込み処理中のデータ、即ち、後の割り込み処理を
終了して第1の割り込み処理に復帰した時に必要となる
データを保持するための特定のレベル別の複数のレジス
タ32が信号線107に接続されている。なお、本実施
では特定レベルを4以下とし、レベル4、レベル5、レ
ベル6用のフラグレジスタ31、レジスタ32をそれぞ
れ設ける。In the present embodiment, the interrupt is re-evaluated only when the microprogram for interrupt processing of the limited specific level is executed, and the interrupt is re-evaluated when the microprogram for interrupt processing of a level other than the specific level is executed. Not performed. In the exception judgment circuit 26c of the present embodiment, as shown in FIG. 4 (a), after the interrupt processing program is completed, the presence or absence of interrupt processing to be processed before returning to the normal instruction fetch is flagged. A plurality of flag registers 31 for specific levels shown are connected to the signal line 110. In addition, in the instruction execution unit 16 of the present embodiment, as shown in FIG.
A plurality of registers 32 for each specific level for holding the data being processed by the interrupt, that is, the data required when returning to the first interrupt processing after the subsequent interrupt processing is connected to the signal line 107. Has been done. In this embodiment, the specific level is set to 4 or less, and flag registers 31 and 32 for level 4, level 5 and level 6 are provided respectively.
【0063】通常の命令処理は実施の形態1と同様であ
るので説明を省略し、割り込みの処理についてのみ、レ
ベル6とレベル4とレベル2との割り込みを例にして以
下に説明する。特定のレベルは上述したようにレベル4
以下とする。Since ordinary instruction processing is the same as that of the first embodiment, the description thereof will be omitted, and only the interrupt processing will be described below by taking interrupts of level 6, level 4 and level 2 as an example. Specific level is Level 4 as described above
The following is assumed.
【0064】IRL0、IRL1、IRL2が[1、
1、0]のレベル6の割り込み信号がバスインターフェ
イス11内の割り込み受け付け部18に伝えられる。こ
の割り込み情報は信号線110を介しマイクロシーケン
サ14aに送られる。通常の命令フェッチにおける、割
り込みに先行する命令処理の終了を示す信号線108上
の信号をマイクロシーケンサ14aが受け取ると、マイ
クロシーケンサ14aの例外判定回路26cで割り込み
が評価され、レベル6の割り込みが受け付けられる。こ
の情報は例外処理アドレス生成回路22に伝達され、例
外処理アドレス生成回路22はレベル6の割り込み処理
用のマイクロプログラムの先頭アドレスをUABSから
出力する。このマイクロアドレスはUAR25でラッチ
され、信号線103を介してマイクロROM15に出力
される。マイクロROM15からはレベル6の割り込み
処理用のエントリから順次制御信号がマイクロ命令実行
部16に対して出力される。IRL0, IRL1 and IRL2 are [1,
The level 6 interrupt signal of [1, 0] is transmitted to the interrupt acceptance unit 18 in the bus interface 11. This interrupt information is sent to the micro sequencer 14a via the signal line 110. When the microsequencer 14a receives the signal on the signal line 108 indicating the end of the instruction processing preceding the interrupt in the normal instruction fetch, the exception determination circuit 26c of the microsequencer 14a evaluates the interrupt and accepts the level 6 interrupt. To be This information is transmitted to the exception processing address generation circuit 22, and the exception processing address generation circuit 22 outputs the start address of the microprogram for level 6 interrupt processing from the UABS. This micro address is latched by the UAR 25 and output to the micro ROM 15 via the signal line 103. Control signals are sequentially output from the micro ROM 15 to the micro instruction executing section 16 from the entry for level 6 interrupt processing.
【0065】マイクロROM15より順次出力される割
り込み処理用マイクロプログラムによる制御信号によ
り、命令実行部16は、割り込みを発生させた命令シー
ケンス実行時のPSWをワーキングレジスタに退避す
る。このときIRL0、IRL1、IRL2が〔0、
1、0〕の割り込み信号が入力されたとすると、この信
号は割り込み受け付け部18から信号線110を介して
マイクロシーケンサ14aに送られる。命令実行部16
は第1の割り込みのベクタを生成またはデータバスDよ
りバスインターフェイス部11を介して読み込み、外部
メモリの割り込みベクタテーブル内のエントリアドレス
を計算し、そのアドレスにあらかじめ格納されているレ
ベル6の割り込み処理用のハンドラの先頭のPC値と、
ハンドラ実行時のPSWの値をバスインターフェイス1
1を介して読み込み、ワーキングレジスタ内のPSWの
割り込みマスク値と、読み込んだハンドラ実行時のPS
Wの割り込みマスク値とを比較し、レベルが高い方の割
り込みマスク値をマイクロシーケンサ14aに出力す
る。第1の割り込みのレベルは6で特定レベルよりも優
先度が低いので、割り込み処理用のマイクロプログラム
で割り込みの再評価を行う。マイクロシーケンサ14a
は、信号線110から与えられる割り込みレベル、即ち
レベル2が、現在実行中の割り込みよりレベルが高い有
効な割り込みであることを検出し、第2の割り込みに処
理を移すが、例外判定回路26cのフラグレジスタ31
のうち、現在実行中のレベル6に該当するフラグレジス
タ31にフラグを立てて、割り込みの処理終了後、通常
の命令フェッチに戻る前に処理すべきレベル6の割り込
み処理が存在することを示し、第1の割り込み処理中に
得た情報、即ち、割り込み再評価前に比較した結果で優
先度の高い割り込みマスク値と戻り先アドレスとを、命
令実行部16のレベル6のレジスタ32に保持する。The instruction execution unit 16 saves the PSW at the time of executing the instruction sequence that caused the interrupt in the working register in response to a control signal from the interrupt processing microprogram sequentially output from the micro ROM 15. At this time, IRL0, IRL1, and IRL2 are [0,
If an interrupt signal of [1, 0] is input, this signal is sent from the interrupt receiving unit 18 to the microsequencer 14 a via the signal line 110. Instruction execution unit 16
Generates the first interrupt vector or reads it from the data bus D via the bus interface unit 11, calculates the entry address in the interrupt vector table of the external memory, and handles the level 6 interrupt processing stored in advance at that address. PC value at the beginning of the handler for
The value of PSW when the handler is executed is the bus interface 1
Read through 1 and the interrupt mask value of PSW in the working register and the PS when the read handler is executed
The interrupt mask value of W is compared, and the interrupt mask value of the higher level is output to the microsequencer 14a. Since the level of the first interrupt is 6, which is lower in priority than the specific level, the interrupt re-evaluation is performed by the microprogram for interrupt processing. Micro sequencer 14a
Detects that the interrupt level given from the signal line 110, that is, level 2 is a valid interrupt having a higher level than the interrupt currently being executed, and shifts the processing to the second interrupt. Flag register 31
Among them, a flag is set in the flag register 31 corresponding to the level 6 currently being executed to indicate that there is a level 6 interrupt process to be processed after the interrupt process is completed and before returning to the normal instruction fetch, The information obtained during the first interrupt processing, that is, the interrupt mask value and the return address having a high priority as a result of comparison before the interrupt reevaluation are held in the level 6 register 32 of the instruction execution unit 16.
【0066】ここで第2の割り込みが受け付けられ、命
令実行部16はレベル2の割り込みのベクタを生成また
はデータバスDよりバスインターフェイス部11を介し
て読み込み、外部メモリの割り込みベクタテーブル内の
エントリアドレスを計算し、そのアドレスにあらかじめ
格納されているレベル2の割り込み処理用のハンドラの
先頭のPC値と、ハンドラ実行時のPSWの値をバスイ
ンターフェイス11を介して読み込み、ワーキングレジ
スタ内のPSWの割り込みマスク値と、読み込んだ、割
り込み処理用のハンドラ実行時のPSWの割り込みマス
ク値とを比較する。At this time, the second interrupt is accepted, and the instruction execution unit 16 generates a vector of the level 2 interrupt or reads it from the data bus D via the bus interface unit 11, and enters the entry address in the interrupt vector table of the external memory. Is calculated, and the PC value at the beginning of the handler for interrupt processing of level 2 and the PSW value at the time of handler execution stored in that address are read through the bus interface 11, and the PSW interrupt in the working register is read. The mask value is compared with the read interrupt mask value of the PSW when the handler for interrupt processing is executed.
【0067】ここでさらに、IRL0、IRL1、IR
L2が〔0、0、1〕のレベル1の第3の割り込みが入
力されたとする。第2の割り込みレベルがレベル2で特
定のレベルより高いために、割り込み処理用のマイクロ
プログラムで割り込みの再評価は行わない。PSWを比
較した結果で優先度の高い割り込みマスクを採用して、
PSWの値を更新し、第1の割り込み処理中に割り込み
ベクタテーブルから読み出したレベル2の割り込み処理
用のハンドラの先頭アドレスを示すPC値と、ワーキン
グレジスタ内のPSWの値をバスインターフェイス11
を介して外部メモリ内のスタックに退避し、PCに第2
の割り込み処理用のハンドラの先頭のPC値をセット
し、命令フェッチ部12に対しフェッチの開始を指示す
る。以後、命令フェッチ部12の命令フェッチ要求によ
り第2の割り込みハンドラのプログラムが読み出されて
実行される。Here, further, IRL0, IRL1, IR
It is assumed that the third interrupt of level 1 with L2 of [0, 0, 1] is input. Since the second interrupt level is level 2 and is higher than a specific level, the interrupt re-evaluation is not performed in the interrupt processing microprogram. As a result of comparing PSW, the interrupt mask with high priority is adopted,
The PSW value is updated, and the PC value indicating the start address of the handler for the level 2 interrupt processing read from the interrupt vector table during the first interrupt processing and the PSW value in the working register are set to the bus interface 11
To the stack in the external memory via the
The leading PC value of the interrupt processing handler is set, and the instruction fetch unit 12 is instructed to start fetching. Thereafter, the program of the second interrupt handler is read and executed by the instruction fetch request of the instruction fetch unit 12.
【0068】第2の割り込みハンドラの最初の命令の切
れ目で第3の割り込みを評価し、優先度の高いレベル1
の割り込みがあるために第3の割り込みを受け付け、P
SWの値をワーキングレジスタに退避する。第3の割り
込みのベクタを生成またはデータバスDよりバスインタ
ーフェイス11を介して読み込み、外部メモリの割り込
みベクタテーブル内のレベル1の割り込み処理用ハンド
ラのエントリアドレスを計算し、そのアドレスにあらか
じめ格納されている第3の割り込み処理用のハンドラの
先頭のPC値と、ハンドラ実行時のPSWの値とをバス
インターフェイス11を介して読み込み、ワーキングレ
ジスタ内のPSWの割り込みマスク値と読み込んだPS
Wの割り込みマスク値とを比較する。この結果、優先度
の高いPSWの値でPSWを更新して、戻り先PCとワ
ーキングレジスタ内のPSWとをバスインターフェイス
11を介して外部メモリ内のスタックに退避し、PCに
第3の割り込み処理用のハンドラの先頭を示すPC値を
セットし、命令フェッチ部12に対しフェッチの開始を
指示する。以後、命令フェッチ部12の命令フェッチ要
求により順次、第3の割り込み処理用ハンドラのプログ
ラムが読み出されて実行される。At the break of the first instruction of the second interrupt handler, the third interrupt is evaluated, and the level 1 with high priority is evaluated.
The third interrupt is accepted because there is an interrupt of
The value of SW is saved in the working register. The third interrupt vector is generated or read from the data bus D via the bus interface 11, the entry address of the level 1 interrupt processing handler in the interrupt vector table of the external memory is calculated, and stored in advance at that address. The PC value at the beginning of the handler for the third interrupt processing and the PSW value at the time of handler execution are read via the bus interface 11, and the interrupt mask value of the PSW in the working register and the read PS
Compare with the interrupt mask value of W. As a result, the PSW is updated with the value of the PSW having the higher priority, the return destination PC and the PSW in the working register are saved in the stack in the external memory via the bus interface 11, and the third interrupt processing is performed by the PC. A PC value indicating the head of the handler for is set, and the instruction fetch unit 12 is instructed to start fetching. After that, in response to an instruction fetch request from the instruction fetch unit 12, the program of the third interrupt processing handler is sequentially read and executed.
【0069】第3の割り込み処理が終了するとスタック
からPSWと戻り先PC値を戻してそのアドレスをPC
にセットして、第2の割り込み処理の続きを行う。When the third interrupt processing is completed, the PSW and the return destination PC value are returned from the stack, and the address is returned to the PC.
, And the second interrupt process is continued.
【0070】第2の割り込み処理が終了すると、スタッ
クからPSWとPC値を復帰し、フラグレジスタ31を
参照して通常の命令フェッチに戻る前に処理すべき割り
込み処理が存在するか否かを判断し、本実施の形態では
レベル6の第1の割り込みのハンドラが未処理であるの
で、レジスタ32に保持していたデータを用いてPSW
の値を更新し、スタックから戻したPSWとレジスタ3
2に保持していたPCをスタックにプッシュして、PC
にスタックから戻した第1の割り込み処理用ハンドラの
先頭アドレスをセットして、第1の割り込み処理を行
う。When the second interrupt process is completed, the PSW and PC values are returned from the stack, and the flag register 31 is referred to determine whether or not there is an interrupt process to be processed before returning to the normal instruction fetch. However, in this embodiment, since the handler of the first interrupt of level 6 is unprocessed, the PSW is used by using the data held in the register 32.
Update the value of and return from the stack to PSW and register 3
Push the PC held in 2 to the stack,
The start address of the first interrupt processing handler returned from the stack is set to and the first interrupt processing is performed.
【0071】以上のように、本実施の形態では、割り込
み処理用マイクロプログラム実行中に割り込みを再評価
する割り込みレベルを限定し、例外判定回路26cに、
限定した特定の割り込みレベル別のフラグレジスタ31
と、命令実行部16に特定の割り込みレベル別のレジス
タ32とだけを設ければよいので、実施の形態3よりも
ハードウェアの点数が少なくなる。As described above, in the present embodiment, the interrupt level at which the interrupt is re-evaluated during execution of the interrupt processing microprogram is limited, and the exception judgment circuit 26c
Flag register 31 for each limited specific interrupt level
Since only the register 32 for each specific interrupt level needs to be provided in the instruction execution unit 16, the number of hardware points is smaller than that in the third embodiment.
【0072】[0072]
【発明の効果】本発明のデータ処理装置及び割り込み処
理方法は、割り込みを含む例外事象の発生に対してPS
W、PCの退避等を行うマイクロプログラムの実行中に
発生した他の割り込みが許可されている割り込みである
か否かをマイクロプログラムの実行中に評価し、許可さ
れている割り込みの場合はその処理プラグラムを、先に
発生した例外事象の処理プログラムに先立って実行する
ので、例外事象に対する処理を受け付けてすぐに要求さ
れた割り込みに対する応答期間が短くなり、リアルタイ
ム制御における応答性が向上するという優れた効果を奏
する。The data processing device and the interrupt processing method of the present invention provide a PS for the occurrence of an exception event including an interrupt.
Evaluate during the execution of the microprogram whether other interrupts that occurred during the execution of the microprogram for saving W, PC, etc. are permitted interrupts, and if they are, the processing is performed. Since the program is executed prior to the exception event processing program that occurred earlier, the response period for the requested interrupt is shortened immediately after the processing for the exception event is accepted, which improves the responsiveness in real-time control. Produce an effect.
【0073】また、本発明のデータ処理装置及び割り込
み処理方法は、他の割り込みによって処理が完了してお
らず、通常のデータ処理に復帰する前に処理すべき割り
込み処理又は例外処理を、他の割り込みの処理終了後、
速やかに再開するので、割り込みに対する応答期間が短
くなり、リアルタイム制御における応答性が向上すると
いう優れた効果を奏する。Further, the data processing device and the interrupt processing method of the present invention, which have not completed the processing due to other interrupts, and which have interrupt processing or exception processing to be processed before returning to the normal data processing, After the interrupt processing is completed,
Since the restart is promptly performed, the response period to the interrupt is shortened, and the excellent effect of improving the responsiveness in the real-time control is exerted.
【0074】さらに、本発明のデータ処理装置及び割り
込み処理方法は、他の割り込みが発生した場合に処理を
優先すべきケースが多いと考えられる相対的に低い優先
レベルのような、限られた優先レベルの割り込みにおい
てのみ、他の割り込みを早急に評価し、また他の割り込
みによって処理が完了しておらず、通常のデータ処理に
復帰する前に処理すべき割り込み処理を速やかに再開す
るので、少ない部品点数で割り込みに対する応答期間が
短くなり、リアルタイム制御における応答性が向上する
という優れた効果を奏する。Further, the data processing apparatus and the interrupt processing method of the present invention have a limited priority level such as a relatively low priority level in which it is considered that the processing should be prioritized when another interrupt occurs. Only for level interrupts, other interrupts are evaluated immediately, and the processing is not completed by other interrupts, so interrupt processing that should be processed before returning to normal data processing is restarted promptly, so it is less This has an excellent effect that the response period to the interrupt is shortened depending on the number of parts and the response in the real-time control is improved.
【図1】 本発明のデータ処理装置の実施の一形態のブ
ロック図である。FIG. 1 is a block diagram of an embodiment of a data processing device of the present invention.
【図2】 本発明のデータ処理装置の実施の形態1及び
2の要部のブロック図である。FIG. 2 is a block diagram of a main part of the first and second embodiments of the data processing device of the present invention.
【図3】 本発明のデータ処理装置の実施の形態3の要
部のブロック図である。FIG. 3 is a block diagram of a main part of a third embodiment of a data processing device of the invention.
【図4】 本発明のデータ処理装置の実施の形態4の要
部のブロック図である。FIG. 4 is a block diagram of a main part of a fourth embodiment of a data processing device of the invention.
【図5】 本発明のデータ処理装置の実施の形態1の割
り込み処理のフローチャートである。FIG. 5 is a flowchart of interrupt processing according to the first embodiment of the data processing apparatus of the present invention.
【図6】 本発明のデータ処理装置の実施の形態2の割
り込み処理のフローチャートである。FIG. 6 is a flowchart of interrupt processing according to the second embodiment of the data processing apparatus of the present invention.
【図7】 本発明のデータ処理装置の実施の形態2の割
り込み処理のタイミングチャートである。FIG. 7 is a timing chart of interrupt processing according to the second embodiment of the data processing apparatus of the present invention.
【図8】 従来のデータ処理装置のブロック図である。FIG. 8 is a block diagram of a conventional data processing device.
【図9】 従来のデータ処理装置の要部のブロック図で
ある。FIG. 9 is a block diagram of a main part of a conventional data processing device.
【図10】 従来のデータ処理装置の割り込み処理のフ
ローチャートである。FIG. 10 is a flowchart of an interrupt process of a conventional data processing device.
【図11】 従来のデータ処理装置の割り込み処理のタ
イミングチャートである。FIG. 11 is a timing chart of interrupt processing of a conventional data processing device.
11 バスインターフェイス、12 命令フェッチ部、
13 命令デコード部、14a マイクロシーケンサ、
15 マイクロROM、16 命令実行部、17 デー
タパス、21 次マイクロアドレスレジスタ(UNA
R)、22 例外処理アドレス生成回路、23 ジャン
プ先マイクロアドレスレジスタ(UJAR)、24 マ
イクロスタックレジスタ(USTR)、25 マイクロ
アドレスレジスタ(UAR)、26a,26b,26c
例外判定回路、27,29,31 フラグレジスタ、
28,30,32 レジスタ。11 bus interface, 12 instruction fetch section,
13 instruction decoding unit, 14a micro sequencer,
15 micro ROM, 16 instruction execution part, 17 data path, 21st micro address register (UNA
R), 22 exception processing address generation circuit, 23 jump destination micro address register (UJAR), 24 micro stack register (USTR), 25 micro address register (UAR), 26a, 26b, 26c
Exception judgment circuit, 27, 29, 31 flag register,
28, 30, 32 registers.
Claims (8)
の処理プログラムを実行する前に、該処理プログラムか
ら復帰して再開する前記データ処理の実行に使用する情
報を退避する手続き、及び前記処理プログラムの格納ア
ドレスとともに該処理プログラムの実行に使用する情報
を読み出す手続きが含まれたマイクロプログラムを実行
するデータ処理装置において、前記マイクロプログラム
の実行中に発生した割り込みが許可されているか否かを
前記マイクロプログラムの実行中に評価する評価手段
と、評価手段の評価の結果、前記割り込みが許可されて
いる場合、前記例外事象のマイクロプログラムから、前
記割り込みの処理プログラムに分岐する分岐手段と、分
岐先での処理プログラムの実行を終了した後、分岐元に
復帰する復帰手段とを備えたことを特徴とするデータ処
理装置。1. A procedure for saving information used for executing the data processing, which is restored from the processing program and restarted, before the processing program for the exceptional event that occurs during the data processing is executed, and the processing. In a data processing device that executes a microprogram that includes a procedure for reading information used for executing the processing program together with the storage address of the program, it is determined whether or not an interrupt generated during execution of the microprogram is enabled. Evaluation means for evaluating during execution of the microprogram, branching means for branching from the exception event microprogram to the interrupt processing program if the interrupt is enabled as a result of the evaluation by the evaluation means, and branch destination After the execution of the processing program in A data processing device comprising:
の処理プログラムの実行が終了しているか否かを示す第
1の情報を保持する第1のレジスタと、分岐先の割り込
みの処理プログラムから復帰して例外事象の処理プログ
ラムの実行を再開する際に使用する第2の情報を保持す
る第2のレジスタと、例外事象のマイクロプログラムか
ら割り込みの処理プログラムに分岐する際に、第1及び
第2のレジスタに第1及び第2の情報をそれぞれ格納す
る手段とを備えた請求項1記載のデータ処理装置。2. A first register, which is provided for each type of exception event and holds first information indicating whether or not the execution of the exception event processing program is completed, and an interrupt processing program at the branch destination. A second register that holds second information used when returning and restarting the execution of the exception event processing program, and a first register and a first register when branching from the exception event microprogram to the interrupt processing program. The data processing device according to claim 1, further comprising means for storing the first information and the second information in the second register.
優先レベルが設けられている割り込みであって、割り込
みの優先レベル別に設けられ、割り込みの処理プログラ
ムの実行が終了しているか否かを示す第1の情報を保持
する第1のレジスタと、割り込みの優先レベル別に設け
られ、分岐先の割り込みの処理プログラムから復帰して
分岐元の割り込みの処理プログラムの実行を再開する際
に使用する第2の情報を保持する第2のレジスタと、第
1の割り込みの処理プログラムから第2の割り込みの処
理プログラムに分岐する際に、第1及び第2のレジスタ
に第1及び第2の情報をそれぞれ格納する手段とを備え
た請求項1記載のデータ処理装置。3. The exception event is an interrupt having a priority level for permitting the interrupt and is provided for each interrupt priority level, and indicates whether or not the execution of the interrupt processing program is completed. A first register that holds the first information and a second register that is provided for each interrupt priority level and that is used when returning from the branch target interrupt processing program and restarting the execution of the branch source interrupt processing program And a second register for holding information of the first interrupt, and first and second information are respectively stored in the first and second registers when branching from the first interrupt processing program to the second interrupt processing program. The data processing apparatus according to claim 1, further comprising:
のうちの所定の優先レベルを有する割り込みの処理プロ
グラムの実行中に発生した割り込みが割り込みを許可さ
れているか否かを前記マイクロプログラムの実行中に評
価する手段であって、前記所定の優先レベル別に設けら
れ、割り込みの処理プログラムの実行が終了しているか
否かを示す第1の情報を保持する第1のレジスタと、前
記所定の優先レベル別に設けられ、分岐先の割り込みの
処理プログラムから復帰して分岐元の割り込みの処理プ
ログラムの実行を再開する際に使用する第2の情報を保
持する第2のレジスタと、前記所定の優先レベルを有す
る第1の割り込みの処理プログラムから第2の割り込み
の処理プログラムに分岐する際に、第1及び第2のレジ
スタに第1及び第2の情報をそれぞれ格納する手段とを
備えた請求項1記載のデータ処理装置。4. The evaluation means determines whether or not an interrupt generated during execution of an interrupt processing program having a predetermined priority level among the interrupt priority levels is enabled. A first register, which is provided for each of the predetermined priority levels and holds first information indicating whether or not the execution of the interrupt processing program is completed, and the predetermined priority level. A second register, which is provided separately, holds second information used when returning from the interrupt target interrupt target program and restarting the execution of the branch source interrupt target program, and the predetermined priority level. When branching from the processing program for the first interrupt to the processing program for the second interrupt, the first and second registers are stored in the first and second registers. 2. The data processing device according to claim 1, further comprising means for storing each of the information in FIG.
の処理プログラムを実行する前に、該処理プログラムか
ら復帰して再開する前記データ処理の実行に使用する情
報を退避する手続き、及び前記処理プログラムの格納ア
ドレスとともに該処理プログラムの実行に使用する情報
を読み出す手続きが含まれたマイクロプログラムを実行
するデータ処理装置の割り込み処理方法において、前記
マイクロプログラムの実行中に発生した割り込みが許可
されているか否かを前記マイクロプログラムの実行中に
評価し、前記割り込みが許可されている場合、前記例外
事象のマイクロプログラムから、前記割り込みの処理プ
ログラムに分岐し、分岐先での処理プログラムの実行を
終了した後、分岐元に復帰することを特徴とする割り込
み処理方法。5. A procedure for saving information used for executing the data processing, which is restored from the processing program and restarted, before executing the processing program for the exceptional event that occurred during the execution of the data processing, and the processing. In an interrupt processing method of a data processing device that executes a microprogram including a procedure for reading information used for executing the processing program together with a program storage address, is an interrupt generated during execution of the microprogram enabled? Whether or not the interrupt is permitted is evaluated during the execution of the microprogram, and the microprogram of the exception event branches to the interrupt processing program, and the execution of the processing program at the branch destination is completed. An interrupt processing method characterized by returning to the branch source later.
込みの処理プログラムに分岐する際に、例外事象の処理
プログラムの実行が終了しているか否かを示す第1の情
報を例外事象の種類別に設けられている第1のレジスタ
の対応するレジスタに格納し、分岐先の割り込みの処理
プログラムから復帰して例外事象の処理プログラムの実
行を再開する際に使用する第2の情報を第2のレジスタ
に格納する請求項5記載の割り込み処理方法。6. When branching from an exception event microprogram to an interrupt processing program, first information indicating whether or not execution of the exception event processing program is completed is provided for each type of exception event. The second information is stored in the corresponding register of the first register, and the second information used when the execution process of the exception event processing program is resumed after returning from the branch destination interrupt processing program is stored in the second register. The interrupt processing method according to claim 5.
優先レベルが設けられている割り込みであって、第1の
割り込みの処理プログラムから第2の割り込みの処理プ
ログラムに分岐する際に、第1の割り込みの処理プログ
ラムの実行が終了しているか否かを示す第1の情報を、
割り込みの優先レベル別に設けられている第1のレジス
タの対応するレジスタに格納し、分岐先の割り込みの処
理プログラムから復帰して分岐元の割り込みの処理プロ
グラムの実行を再開する際に使用する第2の情報を、割
り込みの優先レベル別に設けられている第2のレジスタ
の対応するレジスタに格納する請求項5記載の割り込み
処理方法。7. The exception event is an interrupt in which a priority level is set for permission of the interrupt, and when the first interrupt processing program branches to the second interrupt processing program, The first information indicating whether or not the execution of the interrupt processing program of
A second register which is stored in a corresponding register of the first register provided for each interrupt priority level and is used when returning from the branch target interrupt processing program and restarting the execution of the branch source interrupt processing program 6. The interrupt processing method according to claim 5, wherein the information of 1 is stored in a corresponding register of the second register provided for each interrupt priority level.
先レベルを有する割り込みの処理プログラムの実行中に
発生した割り込みが割り込みを許可されているか否かを
評価し、前記所定の優先レベルを有する第1の割り込み
の処理プログラムから第2の割り込みの処理プログラム
に分岐する際に、第1の割り込みの処理プログラムの実
行が終了しているか否かを示す第1の情報を、前記所定
の優先レベル別に設けられている第1のレジスタに格納
し、分岐先の割り込みの処理プログラムから復帰して分
岐元の割り込みの処理プログラムの実行を再開する際に
使用する第2の情報を、前記所定の優先レベル別に設け
られている第2のレジスタの対応するレジスタに格納す
る請求項5記載の割り込み処理方法。8. A method for evaluating whether an interrupt generated during execution of an interrupt processing program having a predetermined priority level among the interrupt priority levels is interrupt-enabled, and having the predetermined priority level When branching from the first interrupt processing program to the second interrupt processing program, first information indicating whether or not the execution of the first interrupt processing program is completed is provided for each of the predetermined priority levels. The second information, which is stored in the provided first register and is used when returning from the interrupt processing program of the branch destination and restarting the execution of the processing program of the branch source interrupt, is set to the predetermined priority level. The interrupt processing method according to claim 5, wherein the interrupt is stored in a corresponding register of a second register provided separately.
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP20978795A JPH0954698A (en) | 1995-08-17 | 1995-08-17 | Data processing device and interrupt processing method thereof |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP20978795A JPH0954698A (en) | 1995-08-17 | 1995-08-17 | Data processing device and interrupt processing method thereof |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0954698A true JPH0954698A (en) | 1997-02-25 |
Family
ID=16578596
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP20978795A Pending JPH0954698A (en) | 1995-08-17 | 1995-08-17 | Data processing device and interrupt processing method thereof |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0954698A (en) |
-
1995
- 1995-08-17 JP JP20978795A patent/JPH0954698A/en active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5349667A (en) | Interrupt control system for microprocessor for handling a plurality of maskable interrupt requests | |
| US20040255103A1 (en) | Method and system for terminating unnecessary processing of a conditional instruction in a processor | |
| JPH1021074A (en) | Interrupt control system, processor and computer system | |
| US5095426A (en) | Data processing system for effectively handling exceptions during execution of two different types of instructions | |
| US20080082861A1 (en) | Error processing method and information processing apparatus | |
| JPS6250934A (en) | Interrupting control system of processor | |
| JP3839755B2 (en) | Instruction control method and processor | |
| US6044455A (en) | Central processing unit adapted for pipeline process | |
| JPH06295243A (en) | Data processing device | |
| JPH0954698A (en) | Data processing device and interrupt processing method thereof | |
| JPH0895798A (en) | Data processing device | |
| US6453412B1 (en) | Method and apparatus for reissuing paired MMX instructions singly during exception handling | |
| JP2531791B2 (en) | Abnormality handling method when accessing Fetch | |
| JPH0384632A (en) | Data processor | |
| JPS6329292B2 (en) | ||
| JP5012562B2 (en) | Microcomputer | |
| JPH04288625A (en) | Microcomputer | |
| US20040230781A1 (en) | Method and system for predicting the execution of conditional instructions in a processor | |
| JP2616542B2 (en) | Pseudo failure generation system | |
| US6662296B1 (en) | Method and system for testing millicode branch points | |
| JP3029355B2 (en) | Single-step instruction execution method | |
| JP2001216156A (en) | Method and device for instruction cache access | |
| JP3102846B2 (en) | Load address cache device and method | |
| JP2503223B2 (en) | Prior control method | |
| JPH0147818B2 (en) |