JPS6259818B2 - - Google Patents

Info

Publication number
JPS6259818B2
JPS6259818B2 JP56094673A JP9467381A JPS6259818B2 JP S6259818 B2 JPS6259818 B2 JP S6259818B2 JP 56094673 A JP56094673 A JP 56094673A JP 9467381 A JP9467381 A JP 9467381A JP S6259818 B2 JPS6259818 B2 JP S6259818B2
Authority
JP
Japan
Prior art keywords
instruction
interrupt
illegal
circuit
flop
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired
Application number
JP56094673A
Other languages
Japanese (ja)
Other versions
JPS57209548A (en
Inventor
Yasuo Ogasawara
Tooru Tejima
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP56094673A priority Critical patent/JPS57209548A/en
Publication of JPS57209548A publication Critical patent/JPS57209548A/en
Publication of JPS6259818B2 publication Critical patent/JPS6259818B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Description

【発明の詳細な説明】 本発明は障害処理方式、さらに詳しく言えば、
プログラム制御式処理装置においてイリーガル命
令を検出した際の障害処理方式に関する。
DETAILED DESCRIPTION OF THE INVENTION The present invention provides a failure handling scheme, more specifically,
This invention relates to a failure handling method when an illegal instruction is detected in a program-controlled processing device.

プログラム制御の処理装置においては、一般に
割込回路が設けられており、優先度の高い処理に
対しては、上記割込回路を起動して現在実行中の
処理に割込み、これを中断して上記の処理を実行
し、終了後再び現在実行中の処理に復帰する。割
込により中断されると不都合を生ずる処理に対し
ては、該処理の実行中割込マスクを有効として割
込回路の起動を防止しておく。
Program-controlled processing devices are generally equipped with an interrupt circuit, and for high-priority processing, the above-mentioned interrupt circuit is activated to interrupt the currently executing process, interrupting it, and interrupting the above-mentioned process. The process is executed, and after the process is finished, the process returns to the process currently being executed. For processes that would cause inconvenience if interrupted by an interrupt, an interrupt mask is enabled during execution of the process to prevent activation of the interrupt circuit.

処理装置に障害が発生したことを検出すると、
この障害情報に基き、割込回路を起動して割込を
行い、現在実行中のプログラム処理を中断して障
害処理プログラムを起動し、割込原因となつた障
害装置を判別しこれを切り離す等の処理を行な
う。
When it detects that a processing unit has failed,
Based on this fault information, an interrupt circuit is activated to issue an interrupt, the currently running program processing is interrupted, a fault handling program is started, and the faulty device that caused the interrupt is determined and disconnected. Process.

一方、処理装置には障害検出タイマが設けら
れ、プログラム処理が正常に行なわれているとき
はこのタイマは一定周期で命令によりリセツトさ
れ、その度毎に新しくクロツクの計数を開始する
よう動作する。しかし何らかの障害で、プログラ
ムが無限ループに陥り、そのループでは上記タイ
マをリセツトするプログラムが動作しなければ、
上記タイマは上記の一定周期を経過してもリセツ
トされず、オーバーフローを生ずる。このオーバ
ーフローが検出されたとき、緊急制御回路を起動
し、処理系の再構成を行なうことも一般に知られ
ている。
On the other hand, the processing device is provided with a failure detection timer, and when the program processing is being performed normally, this timer is reset by a command at a constant cycle, and operates to start counting a new clock each time. However, due to some kind of failure, the program falls into an infinite loop, and if the program that resets the timer described above does not run in that loop,
The above-mentioned timer is not reset even after the above-mentioned fixed period has elapsed, causing an overflow. It is also generally known that when this overflow is detected, an emergency control circuit is activated to reconfigure the processing system.

このような処理装置で、命令コードに無い命令
すなわちイリーガル命令を検出したときの障害処
理方式としては、従来は割込マスクが無効であつ
て割込回路を起動し得る状態にあるときは、イリ
ーガル命令の検出により割込原因フリツプフロツ
プを設定して割込回路を起動して割込を行ない障
害処理を実行し得るが、割込マスクが有効であつ
て、割込回路を起動し得ない状態にあるときは、
上記のように割込回路を経て障害処理を行なうこ
とができないので、次命令を起動することとな
り、従つてプログラム暴走となつたり、プログラ
ムが無限ループに陥り、このときこのループ内に
上記障害検出タイマのリセツト用プログラムが含
まれており、該タイマが規定の周期毎にリセツト
されるようになると、オーバーフローを起さない
ため緊急制御回路は起動されず、従つて処理停止
となる。なおイリーガル命令は、オーバレイプロ
グラムにより主記憶装置に書込みを行なつている
とき、障害のある入出力装置、チヤネル等から異
常データがロードされるような場合に屡々発生す
る。
Conventionally, when such a processing device detects an instruction that is not in the instruction code, that is, an illegal instruction, the failure handling method has been to use an illegal instruction when the interrupt mask is invalid and the interrupt circuit can be activated. When an instruction is detected, the interrupt cause flip-flop can be set and the interrupt circuit can be activated to perform an interrupt and handle the failure, but the interrupt mask is enabled and the interrupt circuit cannot be activated. Sometimes,
As mentioned above, it is not possible to handle the fault through the interrupt circuit, so the next instruction is started, resulting in a program runaway or an infinite loop, and at this time, the above fault is detected within this loop. A program for resetting the timer is included, and when the timer is reset at regular intervals, the emergency control circuit is not activated to prevent overflow, and therefore processing is stopped. Illegal instructions often occur when abnormal data is loaded from a faulty input/output device, channel, etc. when writing to the main memory by an overlay program.

本発明はイリーガル命令を検出したときの障害
処理において、従来の方式の上記の欠点を除き、
割込マスクが有効で、イリーガル命令を検出した
とき、割込回路の起動が不可能の際でもプログラ
ムの暴走や処理の停止を防止し、短期間に処理シ
ステムの正常動作への復帰を可能とすることを目
的とする。
The present invention eliminates the above-mentioned drawbacks of the conventional method in handling failures when an illegal instruction is detected.
When interrupt masking is enabled and an illegal instruction is detected, it prevents the program from running out of control or stopping processing even if the interrupt circuit cannot be activated, allowing the processing system to return to normal operation in a short period of time. The purpose is to

次に本発明を図面について説明する。図は本発
明を実施した処理装置の一例の接続図であるが、
本発明に関係の少ない部分は省略してある。
Next, the present invention will be explained with reference to the drawings. The figure is a connection diagram of an example of a processing device implementing the present invention.
Portions less relevant to the present invention are omitted.

図において、CPUは処理装置を示すもので、
処理装置CPUにおいて、MBRはメモリ・バツフ
ア・レジスタ、IRは命令レジスタ、DECはデコ
ーダ、Sは命令およびタイプ別信号作成回路、
INTは割込回路、LRは命令のアドレス更新をす
るロケーシヨン・レジスタ、Aは1を加算する+
1加算回路、MARはメモリ・アドレス・レジス
タ、FF1,〜FF3はフリツプフロツプ、AG1
AG5はアンド・ゲート、OGはオア・ゲート、ID
はイリーガル命令識別回路、SELはセレタクであ
る。この処理装置CPUはプログラム、データ等
を格納している主記憶装置(図示してない)とと
もに動作する。
In the figure, CPU indicates a processing device.
In the processing unit CPU, MBR is a memory buffer register, IR is an instruction register, DEC is a decoder, S is an instruction and type-specific signal generation circuit,
INT is an interrupt circuit, LR is a location register that updates the address of the instruction, and A adds 1+
1 adder circuit, MAR is a memory address register, FF 1 , ~FF 3 are flip-flops, AG 1 ~
AG 5 is and gate, OG is or gate, ID
is an illegal instruction identification circuit, and SEL is a selector. This processing unit CPU operates together with a main memory (not shown) that stores programs, data, and the like.

なお図において、IMは割込マスク有効無効指
示信号であつて、この信号IMが割込マスク有効
を指示する信号“1”であれば、割込マスクの有
効、無効を示す割込マスク・フリツプフロツプ
FF1をセツト状態とし、該フリツプフロツプFF1
の出力を“1”とし、アンド・ゲートAG2を非導
通とし、割込原因フリツプフロツプFF2からの割
込要求信号(“1”)を阻止し、割込回路INTは起
動されない。上記信号IMが割込マスク無効を指
示する信号“0”であれば、上記割込マスク・フ
リツプフロツプFF1をリセツト状態とし、該フリ
ツプフロツプFF1の出力を“0”とし、アンド・
ゲートAG2を導通状態とし、割込原因フリツプフ
ロツプFF2からの割込要求信号(“1”)を通過さ
せ、割込回路INTは起動される。
In the figure, IM is an interrupt mask enable/disable instruction signal, and if this signal IM is "1" indicating that the interrupt mask is valid, the interrupt mask/flip-flop signal indicating whether the interrupt mask is valid or invalid is activated.
FF 1 is in the set state, and the flip-flop FF 1
The output of the interrupt circuit INT is set to "1", the AND gate AG2 is made non-conductive, the interrupt request signal ("1") from the flip-flop FF2 causing the interrupt is blocked, and the interrupt circuit INT is not activated. If the signal IM is "0", which instructs invalidation of the interrupt mask, the interrupt mask flip-flop FF 1 is reset, the output of the flip-flop FF 1 is set to "0", and the AND
The gate AG2 is made conductive and the interrupt request signal ("1") from the flip-flop FF2 causing the interrupt is passed through, and the interrupt circuit INT is activated.

なお、処理装置CPUは命令識別手段IAを有す
る。該命令識別手段IAは、図示のように布線論
理で構成された処理装置においては、デコーダ
DEC、命令およびタイプ別信号作成回路Sおよ
びイリーガル命令識別回路IDで構成される。正
常な命令の場合は命令およびタイプ別信号作成回
路Sから出る多数の信号線SLに正常な信号が送
られ、命令が実行されイリーガル命令識別回路
IDからは出力せず、イリーガル命令の場合は、
信号線SLに正規な信号が送出されず、かつ、イ
リーガル命令識別回路IDから出力を生ずる。
Note that the processing device CPU has an instruction identifying means IA. The instruction identification means IA is a decoder in a processing device configured with wired logic as shown in the figure.
It consists of a DEC, a signal generation circuit S for each instruction and type, and an illegal instruction identification circuit ID. In the case of a normal command, normal signals are sent to a number of signal lines SL from the command and type-specific signal generation circuit S, the command is executed, and the illegal command identification circuit
If it is an illegal instruction without outputting from the ID,
A legitimate signal is not sent to the signal line SL, and an output is generated from the illegal instruction identification circuit ID.

処理装置は、命令の実行を、布線論理によらず
マイクロプログラム制御により実行することも可
能である。処理装置がこのようなマイクロプログ
ラム制御を行なうよう構成されている場合は、命
令識別手段は、マツプおよびイリーガル命令処理
部とから構成される。すなわち、命令レジスタ
IRの内容は上記マツプに読出され、上記マツプ
中に格納されているアドレスを指定し、このアド
レスによりマイクロプロセツサの制御メモリをア
クセスして命令を実行する。イリーガル命令の場
合は、上記のアドレスはイリーガル命令処理部を
指定し、該処理部を起動してイリーガル命令の処
理を行なう。例えば割込原因フリツプフロツプ
FF2を設定する。
The processing device can also execute instructions under microprogram control rather than through hardwired logic. When the processing device is configured to perform such microprogram control, the instruction identification means is comprised of a map and an illegal instruction processing section. i.e. instruction register
The contents of the IR are read into the map, specifying an address stored in the map, and using this address the control memory of the microprocessor is accessed to execute an instruction. In the case of an illegal instruction, the above address specifies an illegal instruction processing section, and the processing section is activated to process the illegal instruction. For example, an interrupt-causing flip-flop
Set FF 2 .

図示処理装置CPUの動作は次の通りである。 The operation of the illustrated processing device CPU is as follows.

(1) 割込マスクが無効で、正常な命令を処理する
場合。
(1) When interrupt masking is disabled and normal instructions are processed.

処理装置CPUは主記憶装置(図示せず)に
アクセスし、メモリ・アドレス・レジスタ
MARに格納されたアドレスを送り、該アドレ
スの命令をメモリ・バツフア・レジスタMBR
に読取る。読取つた命令の操作部を命令レジス
タIRに転送格納し、命令レジスタIRの内容は
デコーダDECでデコードされ、さらに命令お
よびタイプ別信号作成回路Sにおいて解読さ
れ、多数の信号線SLに、前記命令により定ま
る信号を送出し、処理装置CPU内の装置に分
配し、上記の命令を実行する。
The processing unit CPU accesses main memory (not shown) and stores memory address registers.
Sends the address stored in MAR and writes the instruction at that address to memory buffer register MBR.
to read. The operation part of the read instruction is transferred and stored in the instruction register IR, and the contents of the instruction register IR are decoded by the decoder DEC, further decoded by the instruction and type-specific signal generation circuit S, and sent to a large number of signal lines SL according to the instruction. It sends out a determined signal, distributes it to devices within the processing unit CPU, and executes the above instructions.

上記信号線SLはイリーガル命令識別回路ID
にも引込まれ、ここで上記命令がイリーガルか
否かの識別を行なう。この際は、イリーガルで
はなく正常であるので、正常と識別し、その出
力端Outに継続的に“0”を出力する。従つて
割込原因フリツプフロツプFF2は設定(セツ
ト)されず、割込回路INTは起動されない。な
お該識別回路IDの出力は“0”であるため、
フリツプフロツプFF3はセツトされず、その出
力は“0”であり、従つてアンド・ゲードAG2
およびセレクタSELにおけるアンド・ゲート
AG3は非導通、アンド・ゲートAG4は導通状態
にある。処理装置CPUが主記憶装置へのアク
セスの終了後タイミングパルスTCが与えら
れ、アンドゲートAG5が導通し、メモリ・アド
レス・レジスタMBR内のアドレスがそのまま
ロケーシヨン・レジスタLRに移され、さらに
+1加算回路Aにおいて+1され、セレクタ
SELにおいて、上記アドレスに+1されたアド
レスが選択され導通しているアンド・ゲート
AGおよびオア・ゲートOGを経てメモリ・アド
レス・レジスタMARに転送され、その内容を
書替える。すなわち、メモリ・アドレス・レジ
スタMBRに格納されていたアドレスは次のア
ドレスに書替えられる。従つて、次回には、次
のアドレスの命令が読取られ処理される。これ
を繰返えし、一連の命令がアドレス順に順次に
読取られ、処理が実行される。
The above signal line SL is the illegal instruction identification circuit ID
It is also pulled in, and it is determined here whether or not the above instruction is illegal. In this case, since it is not illegal but normal, it is identified as normal and "0" is continuously output to the output terminal Out. Therefore, the interrupt cause flip-flop FF2 is not set, and the interrupt circuit INT is not activated. Note that since the output of the identification circuit ID is “0”,
Flip-flop FF 3 is not set and its output is “0”, so the AND gate AG 2
and AND gate in selector SEL
AG 3 is non-conducting and AND gate AG 4 is conducting. After the processing unit CPU finishes accessing the main memory, a timing pulse TC is applied, and the AND gate AG 5 becomes conductive, and the address in the memory address register MBR is transferred as it is to the location register LR, and further +1 is added. +1 in circuit A, selector
In SEL, the address added by 1 to the above address is selected and the AND gate is conductive.
It is transferred to the memory address register MAR via AG and OR gate OG, and its contents are rewritten. That is, the address stored in the memory address register MBR is rewritten to the next address. Therefore, next time, the instruction at the next address will be read and processed. This is repeated, a series of instructions are sequentially read in address order, and processing is executed.

(2) 割込マスクが無効で、イリーガル命令を処理
する場合。
(2) When interrupt masking is disabled and an illegal instruction is processed.

処理装置CPUが主記憶装置にアクセスし、
命令をメモリ・バツフア・レジスタMBRに読
取り、さらに、その命令の操作部を命令レジス
タIRに送り、これをデコーダDECおよび命令
およびタイプ別信号作成回路Sにおいて解読
し、信号線SLよりイリーガル命令識別回路ID
に送り込まれると、上記命令がイリーガルか正
常かの識別を行なう。この一連の動作は前記の
場合と全く同様である。この際、イリーガルで
あると識別すると、イリーガル命令識別回路
IDはその出力端Outにイリーガル識別出力
“1”を出力する。この識別出力“1”により
割込原因フリツプフロツプFF2を設定(セツ
ト)し、その出力を“1”とする。この出力
“1”はアンド・ゲートAG1を経て割込回路
INTに入り、これを起動する。これにより割込
が行なわれ、障害処理が行なわれる。
The processing unit CPU accesses the main memory,
The instruction is read into the memory buffer register MBR, and the operation part of the instruction is sent to the instruction register IR, which is decoded by the decoder DEC and the instruction and type-specific signal creation circuit S, and sent to the illegal instruction identification circuit from the signal line SL. ID
When the command is sent to , it is determined whether the above command is illegal or normal. This series of operations is exactly the same as in the previous case. At this time, if it is identified as illegal, the illegal instruction identification circuit
The ID outputs an illegal identification output "1" to its output terminal Out. This identification output "1" sets the interrupt cause flip-flop FF 2 and sets its output to "1". This output “1” is sent to the interrupt circuit via AND gate AG 1 .
Enter INT and start this. This causes an interrupt and fault handling to be performed.

(3) 割込マスクが有効で、イリーガル命令を処理
する場合。
(3) When interrupt masking is enabled and illegal instructions are processed.

この場合も、主記憶装置から命令を読取り、
イリーガル命令識別回路IDでイリーガル命令
を識別し、その出力端Outの識別出力“1”に
より割込原因フリツプフロツプFF2を設定(セ
ツト)し、その出力“1”をアンド・ゲート
AG1に送るまでの動作は前記(2)の場合と全く同
様である。
Again, reading instructions from main memory,
Illegal instruction identification circuit identifies an illegal instruction using the ID, sets the interrupt cause flip-flop FF 2 with the identification output “1” of its output terminal Out, and uses the output “1” as an AND gate.
The operation up to sending to AG 1 is exactly the same as in case (2) above.

この場合は割込マスクが有効であり、前述し
たようにアンド・ゲートAG1は非導通であるの
で、設定された割込原因フリツプフロツプFF2
の出力“1”は阻止されて割込回路INTに入力
せず、従つて割込回路INTは起動されず、割込
は行なわず、(2)の場合に述べたような割込によ
る障害処理は行なわれない。
In this case, the interrupt mask is valid, and as mentioned above, AND gate AG 1 is non-conducting, so the configured interrupt cause flip-flop FF 2
The output "1" of is blocked and is not input to the interrupt circuit INT, so the interrupt circuit INT is not activated and no interrupt is performed, and the fault handling by interrupt as described in case (2) is performed. is not carried out.

この場合、イリーガル命令識別回路IDの出
力端Outの識別出力“1”によつて、フリツプ
フロツプFF3がセツトされ、その出力は“1”
となり、従つて上記(1)の場合とは逆にアンド・
ゲートAG3が導通、アンド・ゲートAG4が非導
通状態となり、セレクタSELはアンド・ゲート
AG2の出力を選択する。さらにアンド・ゲート
AG2もイリーガル命令識別回路IDの識別出力
“1”により導通状態となるため、ロケーシヨ
ン・レジスタIRの内容が、アンド・ゲートAG2
よりセレクタSELのアンド・ゲートAG3および
オア・ゲートOGを経て、+1加算されることな
く、そのままメモリ・アドレス・レジスタ
MARに書込まれる。このときは、前記(1)で述
べたようにロケーシヨン・レジスタLRの内容
は、今回読取つた命令のアドレスであるので、
メモリ・アドレス・レジスタMARには次の命
令のアドレスではなく、今回読取つた命令のア
ドレスが再度書込まれ保持される。
In this case, flip-flop FF3 is set by the identification output "1" at the output terminal Out of the illegal instruction identification circuit ID, and its output is "1".
Therefore, contrary to the case (1) above, and
Gate AG 3 becomes conductive, AND gate AG 4 becomes non-conductive, and selector SEL becomes AND gate
Select AG 2 output. Further and gate
Since AG 2 also becomes conductive due to the identification output "1" of the illegal instruction identification circuit ID, the contents of the location register IR are changed to AND gate AG 2.
Then, it passes through AND gate AG 3 of selector SEL and OR gate OG, and goes directly to the memory address register without being added +1.
Written to MAR. In this case, as mentioned in (1) above, the contents of the location register LR are the address of the instruction read this time, so
The address of the instruction read this time, not the address of the next instruction, is rewritten and held in the memory address register MAR.

割込が行なわれないので、処理装置CPUは
処理を継続し、主記憶装置にアクセスして次の
命令を読取る。ただし、メモリ・アドレス・レ
ジスタMARには、上記のように今回読取つた
命令のアドレスが更新されることなくそのまま
格納されているので、再び今回読取つた命令
(イリーガル命令)を読取り、上記の動作を行
なう。
Since no interrupt is taken, the processing unit CPU continues processing and accesses main memory to read the next instruction. However, as mentioned above, the address of the instruction read this time is stored in the memory address register MAR as is without being updated, so the instruction read this time (illegal instruction) is read again and the above operation is performed. Let's do it.

このように、メモリ・アドレス・レジスタ
MARの内容が更新されないので、同一アドレ
スの同一命令が繰返し読取られて、同一の処理
が行なわれ、プログラムは無限ループに陥る。
この無限ループには、前述した障害検出タイマ
のリセツト用プログラムは含まれていないの
で、該タイマは、リセツトされなくなり、オー
バーフローを起す。
In this way, the memory address register
Since the contents of MAR are not updated, the same instruction at the same address is read repeatedly and the same processing is performed, causing the program to fall into an infinite loop.
Since this infinite loop does not include the program for resetting the fault detection timer mentioned above, the timer is no longer reset and overflow occurs.

あるいは、この(3)の場合、イリーガル命令と
識別したとき、イリーガル命令識別回路IDの
出力により、命令レジスタIRに次の命令を送
る一連の処理を停止するよう制御して、処理装
置の処理を停止する。この場合も上記障害検出
タイマはリセツトされないのでオーバーフロー
を起す。
Alternatively, in the case of (3), when an illegal instruction is identified, the output of the illegal instruction identification circuit ID is used to control the processing of the processing device to stop the series of processing that sends the next instruction to the instruction register IR. Stop. In this case as well, the failure detection timer is not reset, causing an overflow.

このオーバーフローにより、公知のように緊
急制御回路が起動され、この緊急制御回路によ
り、上記処理装置CPUを含む処理系の再構成
が行なわれる。
This overflow activates an emergency control circuit as is well known, and the emergency control circuit reconfigures the processing system including the processing unit CPU.

以上、本発明を布線論理により構成された処理
装置について説明したが、命令の実行をマイクロ
プログラムで制御するよう構成された処理装置に
対しても、本発明を実施することが可能である。
この際は命令識別手段の制御、イリーガル命令の
検出、ロケーシヨン・レジスタLRの更新および
更新停止等をマイクロプログラム制御で行なうこ
とが可能である。この場合も、本発明の効果は変
らない。
Although the present invention has been described above with respect to a processing device configured using wired logic, the present invention can also be implemented in a processing device configured to control execution of instructions using a microprogram.
At this time, it is possible to control the instruction identification means, detect illegal instructions, update the location register LR, stop updating, etc., by microprogram control. Even in this case, the effects of the present invention remain unchanged.

本発明は上記実施例に限定されるものではな
く、その技術的範囲で種々の変形が可能である。
The present invention is not limited to the above embodiments, and various modifications can be made within the technical scope.

障害検出タイマがオーバーフローすれば緊急制
御回路を起動するが、試験操作盤等により緊急制
御動作のサプレス(起動されても緊急制御動作に
入ることを禁止する)を行なつておけば、処理装
置CPUをイリーガル命令が検出されたときのア
ドレスに停止したままの状態とすることができ
る。
If the fault detection timer overflows, the emergency control circuit will be activated, but if the emergency control operation is suppressed (prohibited from entering the emergency control operation even if activated) using the test operation panel, the processing unit CPU can remain stopped at the address at which the illegal instruction was detected.

本発明は、上記のように構成されているので、
イリーガル命令を検出し、しかもその際割込マス
クが有効で割込を行なうことができないときで
も、イリーガル命令実行によるプログラム暴走を
防止し、かつ緊急制御回路を起動してシステムダ
ウンを防止し得る効果がある。またプログラムの
デバツグを行なうとき、緊急制御回路の緊急制御
動作のサプレスを行なつておけば、イリーガル命
令を検出したときそのアドレスで処理装置が停止
するので、そのときのロケーシヨン・レジスタの
内容からイリーガル命令を格納しているアドレス
を直ちに知ることができる利点がある。
Since the present invention is configured as described above,
The effect of detecting an illegal instruction and preventing the program from running out of control due to illegal instruction execution even when the interrupt mask is enabled and interrupts cannot be executed, and also activating the emergency control circuit to prevent system down. There is. Also, when debugging a program, if you suppress the emergency control operation of the emergency control circuit, the processing unit will stop at that address when an illegal instruction is detected. There is an advantage that the address where the instruction is stored can be immediately known.

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

図は本発明を実施した処理装置の一例の接続図
である。 CPU……処理装置、MBR……メモリ・バツフ
ア・レジスタ、IR……命令レジスタ、DEC……
デコーダ、S……命令およびタイプ別信号作成回
路、INT……割込回路、LR……ロケーシヨン・
レジスタ、A……+1加算回路、MAR……メモ
リ・アドレス・レジスタ、FF1〜FF3……フリツ
プフロツプ、AG1〜AG5……アンド・ゲート、
OG……オア・ゲート、ID……イリーガル命令識
別回路、SEL……セレクタ、IA……命令識別手
段。
The figure is a connection diagram of an example of a processing device implementing the present invention. CPU...processing unit, MBR...memory buffer register, IR...instruction register, DEC...
Decoder, S...Instruction and type-specific signal generation circuit, INT...Interrupt circuit, LR...Location/
Register, A...+1 adder circuit, MAR...memory address register, FF 1 to FF 3 ...flip-flop, AG 1 to AG 5 ...and gate,
OG...OR gate, ID...illegal instruction identification circuit, SEL...selector, IA...instruction identification means.

Claims (1)

【特許請求の範囲】[Claims] 1 命令識別手段と、該命令識別手段でイリーガ
ル命令検出により設定される割込原因フリツプフ
ロツプと、割込マスク有効無効を示す割込マス
ク・フリツプフロツプと、命令の動作とは別に独
立して計数され命令でリセツト可能な障害検出タ
イマと、該障害検出タイマのオーバーフローで起
動することのできる緊急制御回路とを備え、かつ
主記憶装置に格納された命令を読取り、該命令で
動作するプログラム制御式処理装置において、主
記憶装置より命令を読取り、上記命令識別手段に
より識別したとき、該命令が命令コードにないイ
リーガルな命令コードであつたとき上記割込原因
フリツプフロツプを設定し、これにより割込可能
であれば割込動作を起し、割込不可の場合は、前
記プログラム制御式処理装置の処理の中断または
停止、あるいは該イリーガル命令を繰返し実行す
ることで他の命令を実行せず前記障害検出タイマ
をオーバーフローさせることを特徴とする障害処
理方式。
1. An instruction identification means, an interrupt cause flip-flop set by the instruction identification means when an illegal instruction is detected, an interrupt mask flip-flop indicating whether the interrupt mask is valid or invalid, and an instruction identification means that is counted independently from the operation of the instruction. A program-controlled processing device that reads instructions stored in a main memory and operates according to the instructions, comprising a fault detection timer that can be reset by a fault detection timer and an emergency control circuit that can be activated by an overflow of the fault detection timer. When an instruction is read from the main memory and identified by the instruction identification means, if the instruction is an illegal instruction code that is not included in the instruction code, the interrupt cause flip-flop is set, and if an interrupt is possible. If the interrupt operation is not possible, interrupt or stop the processing of the program-controlled processing device, or repeatedly execute the illegal instruction to set the failure detection timer without executing other instructions. A fault handling method characterized by overflow.
JP56094673A 1981-06-19 1981-06-19 Failure processing system Granted JPS57209548A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP56094673A JPS57209548A (en) 1981-06-19 1981-06-19 Failure processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP56094673A JPS57209548A (en) 1981-06-19 1981-06-19 Failure processing system

Publications (2)

Publication Number Publication Date
JPS57209548A JPS57209548A (en) 1982-12-22
JPS6259818B2 true JPS6259818B2 (en) 1987-12-12

Family

ID=14116745

Family Applications (1)

Application Number Title Priority Date Filing Date
JP56094673A Granted JPS57209548A (en) 1981-06-19 1981-06-19 Failure processing system

Country Status (1)

Country Link
JP (1) JPS57209548A (en)

Also Published As

Publication number Publication date
JPS57209548A (en) 1982-12-22

Similar Documents

Publication Publication Date Title
KR870000115B1 (en) Data processing system
US7178062B1 (en) Methods and apparatus for executing code while avoiding interference
US5488728A (en) Microprocessor having a run/stop pin for accessing an idle mode
JPH0810437B2 (en) Guest execution control method for virtual machine system
JP2583525B2 (en) Data processing device
JPS6259818B2 (en)
JPH08171504A (en) Emulation device
JPS60124746A (en) Data processing unit
JP2871429B2 (en) Processor with runaway monitoring function
JP2504191B2 (en) Microprocessor
JP2859048B2 (en) Microcomputer
JP2562838B2 (en) Processor and store buffer control method
JPH03292545A (en) Detection/recovery device for program loop
JPH01125633A (en) System for debugging multi-processing system
JP2023151592A (en) Information processor and operation control method for information processor
JPH0330022A (en) Information processor
JPH06187306A (en) Data processing system
JPH0250494B2 (en)
JPS60193046A (en) Detecting system for instruction exception
JPH05216701A (en) Recovery time adjusting circuit for input/output instruction
JPH07295834A (en) Debug monitor processing method/device
JPH0772874B2 (en) Interrupt receiving device
JPS6349941A (en) Arithmetic processing unit
JPH03189844A (en) Information processor
JPH04290130A (en) Error control system of processor