JP2668382B2 - Pseudo fault generation method for testing microprograms - Google Patents

Pseudo fault generation method for testing microprograms

Info

Publication number
JP2668382B2
JP2668382B2 JP63088982A JP8898288A JP2668382B2 JP 2668382 B2 JP2668382 B2 JP 2668382B2 JP 63088982 A JP63088982 A JP 63088982A JP 8898288 A JP8898288 A JP 8898288A JP 2668382 B2 JP2668382 B2 JP 2668382B2
Authority
JP
Japan
Prior art keywords
address
pseudo
failure
fault
signal
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 - Lifetime
Application number
JP63088982A
Other languages
Japanese (ja)
Other versions
JPH01261732A (en
Inventor
典昭 内田
秀樹 海野
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP63088982A priority Critical patent/JP2668382B2/en
Publication of JPH01261732A publication Critical patent/JPH01261732A/en
Application granted granted Critical
Publication of JP2668382B2 publication Critical patent/JP2668382B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Landscapes

  • Test And Diagnosis Of Digital Computers (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、マイクロプログラムの試験に関し、特に、
障害処理機能の試験のための擬似障害の発生に関する。
The present invention relates to the testing of microprograms, and in particular to
The present invention relates to generation of a pseudo fault for testing a fault handling function.

〔従来の技術〕[Conventional technology]

信頼性の向上のため、マイクロプログラムは障害処理
ルーチンを含むのが普通であり、この障害処理ルーチン
は、典型的には、障害の発生を記録するとともに、障害
のために正しく行なわれなかつた処理をリトライする。
障害処理ルーチンが正常に機能するか否かを試験するた
めには、試験中に擬似障害を発生することが必要であ
る。
To improve reliability, microprograms usually include a fault handling routine, which typically records the occurrence of a fault and takes actions that have not been performed correctly due to the fault. To retry.
In order to test whether the fault handling routine functions normally, it is necessary to generate a pseudo fault during the test.

最も初歩的な擬似障害発生方法は、被制御ハードウエ
アからマイクロプログラム制御装置へのインタフエース
信号を、手動によりある状態に固定することである。や
や進んだ方法として、障害の発生を示す信号を擬似的に
発生する回路を設けることも行なわれている。また、被
試験マイクロプログラム中の適当なマイクロ命令を、エ
ラー状態を作り出すようなマイクロ命令に書替える方法
も知られている。更に、特開昭62−17839号公報に記載
された擬似障害発生装置は、その実行時に擬似障害が発
生すべきマイクロ命令のアドレスがセツトされるアドレ
スコンペアレジスタと、エラー状態を作り出すマイクロ
命令がセツトされる代行命令レジスタを有し、読出され
たマイクロ命令のアドレスがアドレスコンペアレジスタ
にセツトされたアドレスと一致した時に、この読出され
たマイクロ命令の代りに代行命令レジスタにセツトされ
たマイクロ命令を実行し、それと同時に、以後のアドレ
ス一致信号を抑止して、それにより、所望のアドレスに
あるマイクロ命令の実行時に1回だけ擬似障害を発生す
る。
The most rudimentary pseudo fault generation method is to manually fix the interface signal from the controlled hardware to the microprogram controller in a certain state. As a slightly advanced method, a circuit for artificially generating a signal indicating the occurrence of a failure is also provided. There is also known a method of rewriting an appropriate microinstruction in a microprogram under test into a microinstruction that creates an error state. Further, the pseudo-failure generating device described in Japanese Patent Application Laid-Open No. 62-17839 includes an address compare register in which the address of a micro-instruction in which a pseudo-failure should occur during execution is set, and a micro-instruction for generating an error state. When the address of the read microinstruction matches the address set in the address compare register, the microinstruction set in the proxy instruction register is executed instead of the read microinstruction. At the same time, the subsequent address match signal is suppressed, so that a pseudo failure occurs only once when the microinstruction at the desired address is executed.

〔発明が解決しようとする課題〕[Problems to be solved by the invention]

前述のような従来の擬似障害発生方法又は装置によれ
ば、擬似障害状態が固定されるか、特定のマイクロ命令
が実行されるたびに必ず擬似障害が発生するか、あるい
は、擬似障害が特定のマイクロ命令の実行時に1回だけ
発生して終るかである。すなわち、従来技術によつたの
では、擬似障害の発生の時期(マイクロプログラムによ
る処理の流れの中の位置)と回数を、自由に設定するこ
とができない。したがつて、例えば、所定ルーチンの所
定数の反復の後に擬似障害が発生されるとか、更には、
所定ルーチンの所定回数の反復後に擬似障害が発生さ
れ、かつ、所定回数のリトライ後に正常状態に戻るとい
うような、複雑な試験条件は、従来技術によつては設定
することができない。そして、そのような条件下での試
験を経なければ、障害処理機能の試験は十分とはいえな
い。
According to the conventional pseudo-failure generating method or apparatus as described above, the pseudo-failure state is fixed, the pseudo-failure always occurs every time a specific microinstruction is executed, or the pseudo-failure is determined by the specific pseudo-instruction. Whether it occurs once and ends when the microinstruction is executed. That is, according to the related art, the timing (the position in the flow of processing by the microprogram) and the number of occurrences of the pseudo failure cannot be set freely. Therefore, for example, a pseudo fault occurs after a predetermined number of iterations of a predetermined routine, or
According to the prior art, complicated test conditions such as occurrence of a pseudo fault after a predetermined number of times of a predetermined routine and return to a normal state after a predetermined number of retries cannot be set. Then, unless the test under such conditions is performed, the test of the failure processing function cannot be said to be sufficient.

本発明の課題は、マイクロプログラムの障害処理機能
の試験のあめの擬似障害の発生を、その時期と回数に関
して自由に制御できるようにし、それにより、前記のよ
うな複雑な試験条件の設定を可能にすることにある。
An object of the present invention is to make it possible to freely control the occurrence of a simulated fault in a test of a fault handling function of a microprogram with respect to the timing and the number of times, thereby enabling setting of such complicated test conditions as described above. Is to

〔課題を解決するための手段〕[Means for solving the problem]

本発明は、処理の流れにおける擬似障害の発生位置を
制御するために、経由点として指定されたアドレスのマ
イクロ命令が実行された回数に計数し、この回数が指定
された数に達した後に、実行されるべきマイクロ命令の
アドレスと擬似障害発生点として別に指定されたアドレ
スの一致により擬似障害を発生する。
The present invention counts the number of times the microinstruction at the address specified as a waypoint is executed to control the position where the pseudo failure occurs in the processing flow, and after the number reaches the specified number, A pseudo failure occurs when the address of the microinstruction to be executed matches the address separately designated as the pseudo failure occurrence point.

更に、前記の方法により擬似障害が発生されるように
なってから、実行されるべきマイクロ命令のアドレスと
擬似障害発生点として指定されたアドレスの一致の回数
を計算し、その回数が別に指定された数に達した後は、
擬似障害の発生を阻止する。
Further, after the pseudo-failure is generated by the above-described method, the number of matches between the address of the microinstruction to be executed and the address specified as the pseudo-failure occurrence point is calculated, and the number is separately specified. After that number is reached,
Prevent the occurrence of pseudo failure.

〔作用〕 第1の方法によれば、指定された処理が所定回数だけ
実行された後に擬似障害が発生され、それ以前には、た
とえ擬似障害発生点として指定されたアドレスのマイク
ロ命令が実行されても、擬似障害は発生されない。
[Operation] According to the first method, a pseudo fault occurs after a specified process is executed a predetermined number of times, and before that, a microinstruction of an address specified as a pseudo fault occurrence point is executed. However, no pseudo failure occurs.

更に、第2の方法によれば、指定された処理が所定回
数だけ実行された後に、指定された処理の相次ぐ所定回
数の反復において擬似障害が発生され、その後に正常状
態に戻る。
Furthermore, according to the second method, after the designated process is executed a predetermined number of times, a pseudo fault occurs in a predetermined number of times of repeating the designated process, and then the normal state is restored.

〔実施例〕〔Example〕

第1図は、本発明を実現するマイクロプログラム制御
装置の一例をブロツクダイヤプログラムで示す。マイク
ロプログラム実行部1は、通常のものであつて、簡明化
のため図示は省略されているが、マイクロプログラムを
保持する制御メモリと、この制御メモリからマイクロ命
令を順次読出す順序制御回路と、読出された各マイクロ
命令を解読して制御信号を発生する回路と、それらに関
連する回路とから成る。ただし、読出されようとしてい
るマイクロ命令のアドレスを保持する命令実行アドレス
レジスタ(IEAR)2は、説明の便宜上、マイクロプログ
ラム実行部1の外部にあるかのように図示されている。
FIG. 1 shows a block diagram program by way of example of a microprogram controller for implementing the present invention. The microprogram execution unit 1 is a normal one, not shown for the sake of simplicity, but includes a control memory for holding a microprogram, an order control circuit for sequentially reading microinstructions from the control memory, It consists of a circuit which decodes each read microinstruction and generates a control signal, and a circuit related to them. However, the instruction execution address register (IEAR) 2 that holds the address of the microinstruction to be read is illustrated as if it were outside the microprogram execution unit 1 for convenience of explanation.

経由点アドレスレジスタ(RPAR)3と、障害発生アド
レスレジスタ(EOAR)4が、本発明に従つて設けられ
る。経由点アドレスレジスタ3は、擬似障害が発生され
る前に所定回数だけ経由すべきマイクロ命令のアドレス
を保持するためのものであり、障害発生アドレスレジス
タ4は、その実行時に擬似障害が発生されるべきマイク
ロ命令のアドレスを保持するためのものである。比較回
路5は、命令実行アドレスレジスタ2の内容と経由点ア
ドレスレジスタ3の内を比較し、それらが一致すると、
カウントダウン回路7を作動させて、カウンタ8の内容
を“1"だけ減じる。カウンタ8には、その初期値とし
て、擬似障害を発生する以前に経由点アドレスがアクセ
スされるべき回数(RPTCNT)がセツトされる。カウンタ
8の計数値が“0"に達すると、第1障害発生許可信号14
が発生され、この信号14は、カウントダウン回路7を抑
止するとともに、AND回路9の第1の入力を付勢する。
A waypoint address register (RPAR) 3 and a fault occurrence address register (EOAR) 4 are provided according to the present invention. The transit point address register 3 is for holding the address of a microinstruction to be passed a predetermined number of times before a pseudo fault occurs, and the fault address register 4 generates a pseudo fault at the time of execution. This is for holding the address of the microinstruction to be performed. The comparison circuit 5 compares the contents of the instruction execution address register 2 with the contents of the waypoint address register 3 and if they match,
The countdown circuit 7 is activated to decrement the content of the counter 8 by "1". The initial value of the counter 8 is set to the number of times (RPTCNT) the access point address must be accessed before the occurrence of the pseudo failure. When the count value of the counter 8 reaches "0", the first failure occurrence permission signal 14
Is generated and this signal 14 inhibits the countdown circuit 7 and energizes the first input of the AND circuit 9.

比較回路6は、命令実行アドレスレジスタ2の内容と
障害発生アドレスレジスタ4の内容を比較し、それらが
一致すると、障害発生アドレス一致信号16を発生し、こ
の信号16は、AND回路9の第2の入力を付勢する。第1
障害発生許可信号14の存在時に障害発生アドレス一致信
号16が発生すると、AND回路9の出力は、カウントダウ
ン回路10を作動させて、カウンタ11の内容を“1"だけ減
じる。カウンタ11には、その初期値として、擬似障害が
続けて発生されるべき回数(ERRCNT)がセツトされる。
カウンタ11は、その計数値が“0"でない限り、第2障害
発生許可信号15を発生する。カウンタ11の計数値が“0"
に達すると、第2障害発生許可信号15の発生は停止さ
れ、同時に、カウントダウン回路10は抑止される。
The comparison circuit 6 compares the contents of the instruction execution address register 2 with the contents of the failure occurrence address register 4, and if they match, a failure occurrence address match signal 16 is generated, and this signal 16 is the second signal of the AND circuit 9. Force the input of. First
When the failure occurrence address coincidence signal 16 is generated while the failure occurrence permission signal 14 is present, the output of the AND circuit 9 activates the countdown circuit 10 to reduce the content of the counter 11 by "1". As the initial value, the counter 11 is set to the number of times that the pseudo fault should occur successively (ERRCNT).
The counter 11 generates the second fault occurrence permission signal 15 unless the count value is "0". The count value of counter 11 is “0”
When, the generation of the second fault occurrence permission signal 15 is stopped, and at the same time, the countdown circuit 10 is suppressed.

AND回路12は、第1障害発生許可信号14と、第2障害
発生信号15と、障害発生アドレス一致信号16を受けて、
これらのすべてが存在すると、障害発生指示信号17を発
生し、障害発生回路13は、この障害発生指示信号17に応
答して、擬似障害信号18を発生する。擬似障害信号18
は、例えば、エラー表示ラツチをセツトすることにより
発生される。経由点アドレスレジスタ3と障害発生アド
レスレジスタ4へのそれぞれのアドレス値のセツトと、
カウンタ8及び11へのそれぞれの初期値のセツトは、手
動で行なわれてもよいし、あるいはサービスプロセツサ
を介して行なわれてもよい。
The AND circuit 12 receives the first failure occurrence permission signal 14, the second failure occurrence signal 15, and the failure occurrence address match signal 16,
When all of them are present, a failure occurrence instruction signal 17 is generated, and the failure generation circuit 13 generates a pseudo failure signal 18 in response to the failure occurrence instruction signal 17. Pseudo fault signal 18
Is generated, for example, by setting the error indication latch. A set of respective address values to the waypoint address register 3 and the failure occurrence address register 4,
The setting of the respective initial values for the counters 8 and 11 may be performed manually or via a service processor.

第2図は、第1図に示されたマイクロプログラム実行
部1で実行されるマイクロプログラムの一例の概要を示
す。このマイクロプログラム20は、割込処理ルーチン21
と、被試験マイクロプログラム22を含み、被試験マイク
ロプログラム22は、障害処理ルーチン23を含む。ただ
し、割込処理ルーチン21は、第1図に示された実施例の
動作には関与しない。
FIG. 2 shows an outline of an example of the microprogram executed by the microprogram execution unit 1 shown in FIG. This microprogram 20 is an interrupt processing routine 21
And a microprogram under test 22, and the microprogram under test 22 includes a failure handling routine 23. However, the interrupt processing routine 21 does not participate in the operation of the embodiment shown in FIG.

第3図は、被試験マイクロプログラム22の概要をフロ
ーチヤートで示す。このマイクロプログラムは、処理A
が3回連続して正常終了すると正常終了し、その前にど
れかの処理Aがエラー終了するとエラー終了する。図で
は、3回の処理Aが別々に示されているが、実際には、
単一の処理Aサブルーチンが3回反復される。
FIG. 3 is a flow chart showing an outline of the microprogram 22 under test. This micro program is a process A
Is normally ended three times in succession, and if any of the processes A ends in error before that, the processing ends in error. In the figure, the processing A three times is shown separately, but in reality,
A single process A subroutine is repeated three times.

第4図は、第3図における処理Aの詳細を示すフロー
チヤートである。図において、RTYCNTはリトライの回数
を表わし、CNTは反復の回数を表わす。ステツプ40及び4
1において、RTYCNT及びCNTがそれぞれ“0"にリセツトさ
れた後、処理B42が遂行される。判定43の結果、障害が
検出されなければ、ステツプ44でCNTが“1"だけ増さ
れ、ステツプ45でRTYCNTが“0"にリセツトされた後、判
定46においてCNTが“5"に達していなければ、ステツプ4
2〜46が反復され、CNTが“5"に達すれば、正常終了とな
る。しかし、判定43の結果、障害が検出されれば、リト
ライループに入り、障害処理(障害の発生の報告,障害
情報の収集・記録など)47の後に、ステツプ48でRTYCNT
に“1"が加えられた後、判定49においてRTYCNTが“3"に
達していなければ、リトライが反復され、RTYCNTが“3"
に達すれば、エラー終了となる。要するに、処理Aは、
処理Bを5回反復するサブルーチンであり、処理Bは2
回までの連続リトライが許される。
FIG. 4 is a flow chart showing the details of the process A in FIG. In the figure, RTYCNT represents the number of retries and CNT represents the number of iterations. Steps 40 and 4
In step 1, after RTYCNT and CNT are each reset to "0", the process B42 is performed. If the result of decision 43 is that no fault is detected, CNT must be incremented by "1" at step 44, RTYCNT must be reset to "0" at step 45, and then CNT must reach "5" at decision 46. If step 4
When 2 to 46 are repeated and CNT reaches “5”, the process ends normally. However, if a failure is detected as a result of judgment 43, a retry loop is entered, and after failure processing (reporting of failure occurrence, collection / recording of failure information, etc.) 47, RTYCNT is entered at step 48.
If RTYCNT does not reach "3" in decision 49 after "1" is added to, retry is repeated and RTYCNT becomes "3".
Is reached, an error ends. In short, process A is
This is a subroutine that repeats process B five times.
Up to consecutive retries are allowed.

前述のマイクロプログラムの試験のために、2回目の
処理Aの実行中に、擬似障害を連続して3回発生させる
ことが望まれると仮定する。この試験条件の下において
は、2回目の処理Aにおいてエラー終了が起こるはずで
ある。この試験条件を実現するために、第1図におい
て、経由点アドレスレジスタ3に、第4図におけるステ
ツプ40に対応するマイクロ命令のアドレス(RPTADR)が
セツトされ、障害発生アドレスレジスタ4に、処理B42
に対応するマイクロ命令のアドレス(ERRADR)がセツト
され、カウンタ8及び11には、それぞれ数値“2"及び
“3"がセツトされる。第4図において、処理フローのそ
れぞれの点を指す矢印を持つ記号RPTADR及びERRADRは、
それぞれ、経由点アドレス(RPTADR)及び障害発生アド
レス(ERRADR)がアクセスされる点を示す。
It is assumed that it is desired to generate a pseudo fault three times consecutively during the execution of the second process A for the test of the microprogram described above. Under this test condition, error termination should occur in the second processing A. In order to realize this test condition, the address (RPTADR) of the microinstruction corresponding to step 40 in FIG. 4 is set in the waypoint address register 3 in FIG.
Is set, and numerical values "2" and "3" are set in the counters 8 and 11, respectively. In Figure 4, the symbols RPTADR and ERRADR with arrows pointing to each point in the process flow are
Each indicates the point where the transit point address (RPTADR) and the fault occurrence address (ERRADR) are accessed.

第1回の処理Aが開始されると、第4図における点RP
TADRにおいて、第1図に示された比較回路5は一致を検
出し、カウンタ8の計数値は“1"にカウントダウンされ
る。第1障害発生許可信号14はまだ発生されない。その
後、第4図における点ERRADRにおいて、比較回路6は障
害発生アドレス一致信号16を発生する。しかし、第1障
害発生許可信号14が発生されていないので、カウンタ11
の計数値は初期値“3"に保たれ、また、障害発生指示信
号17も発生されず、そのため、擬似障害信号18は発生さ
れない。その結果、第4図の処理は、ステツプ44〜46を
通つて進行し、処理Bに戻る。この時、比較回路6は再
び障害発生アドレス一致信号16を発生するが、第1障害
発生許可信号14が存在しないので、何事も起こらない。
こうして、処理Bの5回の反復の後、第1回の処理Aは
正常終了する。
When the first process A is started, the point RP in FIG.
In TADR, the comparison circuit 5 shown in FIG. 1 detects a match, and the count value of the counter 8 is counted down to "1". The first fault occurrence permission signal 14 has not yet been generated. After that, at the point ERRADR in FIG. 4, the comparison circuit 6 generates the fault occurrence address coincidence signal 16. However, since the first fault occurrence permission signal 14 has not been generated, the counter 11
Is kept at the initial value "3", the fault occurrence instruction signal 17 is not generated, and therefore, the pseudo fault signal 18 is not generated. As a result, the process of FIG. 4 proceeds through steps 44-46 and returns to process B. At this time, the comparison circuit 6 generates the failure occurrence address coincidence signal 16 again, but nothing happens because the first failure occurrence permission signal 14 does not exist.
Thus, after the fifth iteration of the process B, the first process A ends normally.

第2回目の処理Aが開始されると、点RPTADRにおい
て、比較回路5は一致信号を発生し、それにより、カウ
ンタ8の計数値は“0"にカウントダウンされて、以後そ
の値に保たれ、その結果、第1障害発生許可信号14が発
生される。その後、点ERRADRにおいて、比較回路6は障
害発生アドレス一致信号16を発生する。この時点におい
て、カウンタ11の計数値は初期値“3"であり、したがつ
て、第2障害発生許可信号15は既に発生されている。そ
の結果、AND回路17は障害発生指示信号17を発生し、こ
れに応答して、擬似障害信号18が発生される。その間、
AND回路9の出力に応答して、カウンタ11の計数値は
“2"にカウントダウンされる。今度は、第4図の判定43
で障害が検出され、その結果、ステツプ47〜49を通つて
処理Bに戻るリトライループが実行される。
When the second process A is started, at the point RPTADR, the comparison circuit 5 generates a coincidence signal, whereby the count value of the counter 8 is counted down to "0", and is kept at that value thereafter. As a result, the first fault occurrence permission signal 14 is generated. Thereafter, at the point ERADR, the comparison circuit 6 generates the failure occurrence address coincidence signal 16. At this point, the count value of the counter 11 is the initial value “3”, and therefore, the second fault occurrence permission signal 15 has already been generated. As a result, the AND circuit 17 generates the fault occurrence instruction signal 17, and in response thereto, the pseudo fault signal 18 is generated. in the meantime,
In response to the output of the AND circuit 9, the count value of the counter 11 is counted down to "2". This time, judgment 43 in FIG.
A failure is detected in step S21, and as a result, a retry loop is executed which returns to the process B through steps 47 to 49.

この最初のリトライ中に、点ERRADRにおいて、比較回
路6は再び一致を検出して、障害発生アドレス一致信号
16を発生し、それにより、擬似障害信号18が再び発生さ
れるとともに、カウンタ11の計数値は“1"にカウントダ
ウンされる。この2度目の擬似障害の発生は、再びリト
ライループへの分岐を生じる。この2回目のリトライ中
に、カウンタ11の計数値はまだ“0"に達していないの
で、もう1度擬似障害が発生されて、リトライループへ
の分岐が行なわれる。しかし、RTYCNTの値は既に“3"に
達しており、その結果、エラー終了が決定される。な
お、この3度目の擬似障害の発生と同時に、カウンタ11
の計数値は“0"に達し、それにより、以後のカウントダ
ウンは阻止され、かつ、第2障害発生許可信号15は終了
して、擬似障害の発生は停止する。
During this first retry, at the point ERRADR, the comparison circuit 6 again detects a match, and outputs the failure address match signal.
Then, the pseudo failure signal 18 is generated again, and the count value of the counter 11 is counted down to "1". The occurrence of the second pseudo failure again causes a branch to a retry loop. During the second retry, the count value of the counter 11 has not reached "0" yet, so a pseudo fault is generated again, and a branch is made to the retry loop. However, the value of RTYCNT has already reached "3", which results in error termination. At the same time as the occurrence of the third pseudo failure, the counter 11
Has reached "0", whereby the subsequent countdown is blocked, the second fault occurrence permission signal 15 is terminated, and the generation of the pseudo fault is stopped.

他の試験条件の例として、カウンタ11の初期値を“2"
に変更し、他の条件を前記の例と同じにすれば、前記の
例におけるのと同様に、第2回目の処理Aにおいて擬似
障害が発生し、リトライが2回行なわれる。しかし、こ
の場合には、2度目の擬似障害が最初のリトライ中に発
生されると同時に、カウンタ11の計数値は“0"になり、
したがつて、擬似障害は、2回目のリトライ中及びその
後はもはや発生されない。その結果、2回目のリトライ
は成功し、したがつて、2回目の処理Aは正常終了し、
結局、第3図の処理の全体が正常終了するはずである。
As an example of other test conditions, set the initial value of counter 11 to "2"
If the other conditions are the same as in the above example, a pseudo failure occurs in the second process A and the retry is performed twice as in the above example. However, in this case, the second pseudo failure occurs during the first retry, and the count value of the counter 11 becomes “0” at the same time.
Therefore, the pseudo fault no longer occurs during the second retry and thereafter. As a result, the second retry succeeded, so the second processing A ended normally,
Eventually, the entire process of FIG. 3 should end normally.

第5図は、本発明を実現するマイクロプログラム制御
装置の他の一例をブロツクダイヤグラムで示す。この実
施例では、第1図に示された実施例においてハードウエ
アにより実現された機能の一部が、マイクロプログラム
により実現される。第1図における経由点アドレスレジ
スタ3と障害発生アドレスレジスタ4の代りに、これら
のレジスタの役目を交互に果たす比較アドレスレジスタ
(CPAR)51が設けられる。比較回路52は、命令実行アド
レスレジスタ(IEAR)2の内容と、比較アドレスレジス
タ51の内容を比較し、一致が検出されると、アドレス一
致信号55を発生する。AND回路53は、マイクロプログラ
ム実行部1が割込許可信号56を発生している時にアドレ
ス一致信号55を受けると、割込発生信号57を発生して、
マイクロプログラム実行部1に割込みを起こす。マイク
ロプログラム実行部1は、所定の条件が満たされると、
障害発生許可信号58を発生する。この状態においてアド
レス一致信号55が発生されると、AND回路54は障害発生
指示信号17を発生して、障害発生回路13に擬似障害信号
18を発生させる。
FIG. 5 is a block diagram showing another example of the micro program controller for realizing the present invention. In this embodiment, a part of the functions realized by hardware in the embodiment shown in FIG. 1 is realized by a micro program. Instead of the waypoint address register 3 and the fault occurrence address register 4 in FIG. 1, a comparison address register (CPAR) 51 which alternately serves as these registers is provided. The comparison circuit 52 compares the content of the instruction execution address register (IEAR) 2 with the content of the comparison address register 51, and when a match is detected, generates an address match signal 55. When receiving the address match signal 55 while the microprogram execution unit 1 is generating the interrupt permission signal 56, the AND circuit 53 generates an interrupt generation signal 57,
An interrupt is issued to the microprogram execution unit 1. When a predetermined condition is satisfied, the microprogram execution unit 1
A failure permission signal 58 is generated. When the address match signal 55 is generated in this state, the AND circuit 54 generates the fault occurrence instruction signal 17 and causes the fault generation circuit 13 to generate the pseudo fault signal.
Generate 18.

マイクロプログラム実行部1中の制御メモリ内に経由
点アドレス(RPTADR)と、障害発生アドレス(ERRADR)
と、擬似障害が発生される以前に経由点アドレスがアク
セスされるべき回数(RPTCNT)と、擬似障害が続けて発
生されるべき回数(ERRCNT)とを保持するためのそれぞ
れの領域101,102,103,104が用意される。代りに、それ
ぞれのレジスタが設けられてもよい。これらの領域又は
レジスタへの値のセツトは、第1図におけるレジスタ3,
4及びカウンタ8,11への値のセツトと同様にして、予め
行なわれる。
The route point address (RPTADR) and the fault occurrence address (ERRADR) are stored in the control memory of the microprogram execution unit 1.
And areas 101, 102, 103, 104 for holding the number of times the waypoint address should be accessed before the pseudo fault occurs (RPTCNT) and the number of times the pseudo fault should occur consecutively (ERRCNT). You. Alternatively, each register may be provided. The set of values to these areas or registers is defined by register 3,
4 and the setting of the values to the counters 8 and 11 is carried out in advance.

最初に、マイクロプログラム実行部1は、比較アドレ
スレジスタ51に経由点アドレス(RPTADR)をセツトし、
かつ、割込許可信号56をON状態にし、障害発生許可信号
58をOFF状態にする。したがつて、命令実行アドレスは
経由点アドレスと比較され、一致が生じると、AND回路5
3は割込発生信号57を発生し、これに応答して、割込処
理ルーチン(第2図21)が起動される。
First, the microprogram execution unit 1 sets the waypoint address (RPTADR) in the comparison address register 51,
Also, the interrupt permission signal 56 is turned on, and the fault occurrence permission signal
Turn OFF 58. Therefore, the instruction execution address is compared with the waypoint address, and if a match occurs, the AND circuit 5
3 generates an interrupt generation signal 57, and in response to this, an interrupt processing routine (FIG. 21, FIG. 21) is started.

割込処理のフローチヤートは、第6図に示されてい
る。割込処理が開始されると、まず、割込許可信号56と
障害発生許可信号58がOFF状態にされ(ステツプ61,6
2)、次いで、RPTCNTの値が調べられる(ステツプ6
3)。RPTCNTの値が“1"よりも大きければ、それから
“1"が引かれ(ステツプ64)、割込許可信号56はON状態
に戻される(ステツプ65)。こうして、命令実行アドレ
スと経由点アドレスが一致するたびに、割込みが生じ
て、RPTCNTがカウントダウンされる。
The flow chart of the interrupt processing is shown in FIG. When the interrupt processing is started, first, the interrupt permission signal 56 and the fault occurrence permission signal 58 are turned off (steps 61 and 6).
2) Then, the value of RPTCNT is checked (Step 6)
3). If the value of RPTCNT is greater than "1", then "1" is subtracted (step 64) and the interrupt enable signal 56 is returned to the ON state (step 65). Thus, each time the instruction execution address and the waypoint address match, an interrupt occurs and RPTCNT is counted down.

RPTCNTが“1"に達した後に同様に割込みが発生する
と、RPTCNTの値の調査の結果、ステツプ66への分岐が行
なわれて、ERRCNTの値が調べられ、この値が“0"より大
きければ、それから“1"が引かれた(ステツプ67)後、
障害発生アドレス(ERRADR)が比較アドレスレジスタ51
にセツトされ(ステツプ68)、続いて、障害発生許可信
号58がON状態に切替えられる(ステツプ69)。割込許可
信号56は、OFF状態に維持される。しかし、ERRADRの値
が“0"ならば、ステツプ67〜69の処理を行うことなく、
割込処理は終了する。
If a similar interrupt occurs after RPTCNT reaches "1", the result of checking the value of RPTCNT is to branch to step 66 and check the value of ERRCNT. If this value is greater than "0", , Then after "1" is subtracted (step 67)
The failure occurrence address (ERRADR) is stored in the comparison address register 51.
Is set (step 68), and subsequently, the fault occurrence permission signal 58 is turned on (step 69). The interrupt permission signal 56 is maintained in the OFF state. However, if the value of ERRADR is "0", the processing of steps 67 to 69 is not performed,
The interrupt processing ends.

障害発生許可信号58が前記のようにして発生されてい
る時に、命令実行アドレスが、今や比較アドレスレジス
タ51の内容となつている障害発生アドレス(ERRADR)と
一致して、アドレス一致信号55が発生されると、AND回
路54は、障害発生指示信号17を障害発生回路13に送り、
擬似障害信号18は発生させる。ただし、この時、割込許
可信号56はON状態にないので、割込要求信号57は発生さ
れない。この擬似障害が検出される(例えば、第4図の
ステツプ43において)と、障害処理ルーチン(第2図2
3,第4図47)が起動される。
When the fault occurrence permission signal 58 is generated as described above, the instruction execution address matches the fault occurrence address (ERRADR) which is now the content of the comparison address register 51, and the address match signal 55 is generated. Then, the AND circuit 54 sends the failure occurrence instruction signal 17 to the failure occurrence circuit 13,
The pseudo failure signal 18 is generated. However, at this time, since the interrupt permission signal 56 is not in the ON state, the interrupt request signal 57 is not generated. When this pseudo-fault is detected (for example, at step 43 in FIG. 4), a fault handling routine (see FIG. 2).
3, FIG. 47) is activated.

第7図は、本実施例のための障害処理ルーチンをフロ
ーチヤートで示す。このルーチンは、通常の障害処理
(障害の発生の記録等)75の前に、第5図の回路を制御
するために、ステツプ71〜74の処理を行なう。まず、割
込許可信号56と障害発生許可信号58がOFF状態にされ
(ステツプ71,72)、次いで、ERRCNTの値が調べられる
(ステツプ73)。そして、それが“0"より大きければ、
割込許可信号56がON状態に切替えられて(ステツプ7
4)、それにより、次に命令実行アドレスと障害発生ア
ドレスの一致が生じた時に、第6図の割込処理により擬
似障害が発生されるようにする。しかし、もしもERRCNT
の値が“0"であれば、指定された回数の擬似障害が既に
発生され終つたので、割込許可信号のON状態への切替え
は行なわれず、それにより、擬似障害の発生を終了す
る。
FIG. 7 is a flow chart showing a fault handling routine for this embodiment. This routine performs the processing of steps 71 to 74 in order to control the circuit of FIG. 5 before the normal failure processing (recording of the occurrence of a failure) 75. First, the interrupt permission signal 56 and the failure permission signal 58 are turned off (steps 71 and 72), and then the value of ERRCNT is checked (step 73). And if it is greater than “0”,
The interrupt permission signal 56 is switched to the ON state (Step 7).
4) Then, when the instruction execution address and the fault occurrence address match next, a pseudo fault is generated by the interrupt processing of FIG. But if ERRCNT
Is "0", the specified number of pseudo-failures has already been generated, and the interrupt permission signal is not switched to the ON state, thereby terminating the generation of the pseudo-failure.

第5図ないし第7図に示された実施例において、第1
図に示された実施例におけるのと同じ試験条件、すなわ
ち、RPTCNTとERRCNTの初期値としてそれぞれ“2"と“3"
を与えて、第3図及び第4図に示された被試験マイクロ
プログラムを試験してみる。初期状態において、比較ア
ドレスレジスタ51の内容は経由点アドレス(RPTADR)で
ある。第1回の処理Aにおいて、点RPTADR(第4図)で
最初の割込みが生じ、第6図のステツプ63において、RP
TCNTの値は“2"である。したがつて、ステツプ64〜65が
実行され、比較アドレスレジスタ51は、経由点アドレス
(RPTADR)を保持し続け、その結果、第4図のステツプ
42〜46のループは、割込みを生じることなく、無事に5
回の反復を完了し、最初の処理Aは正常終する。ただ
し、RPTCNTの値は、第6図のステツプ64により、“1"に
カウントダウンされている。
In the embodiment shown in FIG. 5 to FIG.
The same test conditions as in the embodiment shown in the figure, ie, "2" and "3" as the initial values of RPTCNT and ERRCNT, respectively.
And test the microprogram under test shown in FIGS. 3 and 4. In the initial state, the content of the comparison address register 51 is the waypoint address (RPTADR). In the first processing A, the first interrupt occurs at the point RPTADR (FIG. 4), and in step 63 of FIG.
The value of TCNT is “2”. Therefore, steps 64 to 65 are executed, the comparison address register 51 continues to hold the waypoint address (RPTADR), and as a result, the steps in FIG.
The loop of 42 to 46 is 5 without any interruption.
Is completed, and the first process A ends normally. However, the value of RPTCNT is counted down to "1" in step 64 of FIG.

2回目の処理Aにおいて、点RPTADRで2度目の割込み
が生じ、この時、RPTCNTの値は“1"である。したがつ
て、ステツプ66への分岐が生じ、この時ERRCNTの初期値
の“3"である。そこで、ERRCNTの値は“2"にカウントダ
ウンされ、かつ、比較アドレスレジスタ51には障害発生
アドレス(ERRADR)がセツトされ、そして、擬似障害が
発生され、その結果、リトライが行なわれる。2回目の
リトライに際しても擬似障害が発生され、したがつて、
2回目の処理Aはエラー終了となる。
In the second process A, a second interrupt occurs at the point RPTADR, and at this time, the value of RPTCNT is "1". Therefore, a branch is taken to step 66, at which time the initial value of ERRCNT is "3". Therefore, the value of ERRCNT is counted down to "2", a fault occurrence address (ERRADR) is set in the comparison address register 51, and a pseudo fault is generated. As a result, a retry is performed. A pseudo failure occurred during the second retry, so
The second process A ends with an error.

他の条件を変えずに、ERRCNTの初期値のみを“2"に変
更すると、2回目の処理Aにおいて、最初のリトライ中
に点ERRADRで割込みが生じた時に、第6図の割込処理
は、擬似障害を発生して2回目のリトライの原因を作る
とともに、ステツプ67において、ERRCNTの値を“0"にカ
ウントダウンする。したがつて、2回目のリトライ初期
に行なわれる障害処理47中のステツプ73(第7図)にお
いて、ERRCNT=0が検出され、その結果、割込許可信号
56をON状態に切替える機会が失われる。そうすると、2
回目のリトライ中に、点ERRADRにおいてアドレス一致信
号55が発生されても、割込発生信号57は発生されないの
で、第6図の割込処理ルーチンは起動されず、よつて擬
似障害は発生されない、以後における処理Bの反復(ス
テツプ42〜46のループ)中も、割込許可信号56はOFF状
態に保たれ、それにより、割込処理(第6図)の起動、
ひいては擬似障害の発生を阻止する。したがつて、2回
目の処理Aは正常終了し、更に、3回目の処理Aも正常
終了することになる。
If only the initial value of ERRCNT is changed to “2” without changing other conditions, in the second processing A, when an interrupt occurs at the point ERRADR during the first retry, the interrupt processing in FIG. In step 67, the value of ERRCNT is counted down to "0". Therefore, in step 73 (FIG. 7) in the failure processing 47 performed at the beginning of the second retry, ERRCNT = 0 is detected, and as a result, the interrupt permission signal is output.
Opportunity to switch 56 to ON state is lost. Then 2
Even if the address match signal 55 is generated at the point ERRADR during the retry for the second time, the interrupt generation signal 57 is not generated, so that the interrupt processing routine of FIG. During the subsequent repetition of the process B (loop of steps 42 to 46), the interrupt permission signal 56 is kept in the OFF state, so that the interrupt process (FIG. 6) is started,
As a result, the occurrence of a pseudo failure is prevented. Therefore, the second process A ends normally, and the third process A ends normally.

前記の両実施例には、当業者の通常の知識による範囲
で、多くの変形がありうる。例えば、第1図において、
2個の比較回路5,6の代りに単一の比較回路を設けると
ともに、その入力源と出力先を切替えるためのそれぞれ
の切替回路を付加し、これらの切替回路がカウンタ8の
計数値により制御されて、カウンタ8の計数値が“0"に
達するまでは前記単一の比較回路を比較回路5として接
続し、この計数値が“0"に達した後はそれを比較回路6
として接続するように、構成してもよい。また、2個の
カウントダウン回路の代りに単一のカウントダウン回路
を設けるとともに、それを前記と同様にカウンタ8又は
カウンタ11に選択的に接続するための切替回路を、付加
することもできる。
There are many possible variations of both of the above embodiments, within the knowledge of one of ordinary skill in the art. For example, in FIG.
A single comparison circuit is provided in place of the two comparison circuits 5 and 6, and respective switching circuits for switching the input source and output destination are added. These switching circuits are controlled by the count value of the counter 8. Then, the single comparison circuit is connected as the comparison circuit 5 until the count value of the counter 8 reaches "0", and after the count value reaches "0", it is connected to the comparison circuit 6.
The connection may be configured as follows. In addition, a single countdown circuit may be provided instead of the two countdown circuits, and a switching circuit for selectively connecting the single countdown circuit to the counter 8 or the counter 11 may be added.

更に、第5図ないし第7図に示された実施例には、比
較回路52からの一致信号に応答してカウントダウンする
カウンタを設けてもよい。この変形において、マイクロ
プログラムは、このカウンタに最初はRPTCNTをセツト
し、その計数値が“0"に達したことが割込みによつて通
知されると、今度はERRCNTをこのカウンタにセツトする
とともに、障害発生許可信号を発生し、そして、その計
数値が再び“0"に達したことが割込みによつて通知され
ると、障害発生許可信号をリセツトする。
Further, the embodiment shown in FIGS. 5 to 7 may be provided with a counter which counts down in response to a coincidence signal from the comparison circuit 52. In this variation, the microprogram first sets RPTCNT in this counter, and when notified by an interrupt that the count value has reached “0”, sets the ERRCNT in this counter, and A fault occurrence permission signal is generated, and when the count value reaches "0" again by an interrupt notification, the fault occurrence permission signal is reset.

〔発明の効果〕〔The invention's effect〕

本発明によれば、ルーチンの反復が含まれる場合で
も、マイクロプログラムによる処理の流れの中の任意に
指定された点において擬似障害を発生することができ、
また、任意に指定された回数だけ擬似障害を発生するこ
ともできる。したがつて、障害処理機能のために一層多
様かつ複雑な試験条件を設定することができ、ひいて
は、マイクロプログラムで制御される装置の信頼性の一
層の向上がもたらされる。
According to the present invention, even when repetition of a routine is included, a pseudo failure can be generated at an arbitrarily designated point in the flow of processing by a microprogram,
In addition, it is also possible to generate a pseudo fault only a specified number of times. Thus, more diverse and complex test conditions can be set for the fault handling function, which in turn leads to a further improvement of the reliability of the microprogram controlled device.

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

第1図は本発明の一実施例のブロツクダイヤグラム、第
2図は被試験マイクロプログラムを含むマイクロプログ
ラムの一例の概要を示すブロツクダイヤグラム、第3図
は第2図中の被試験マイクロプログラムの一例を示すフ
ローチヤート、第4図は第3図中の一つの処理の詳細を
示すフローチヤート、第5図は本発明の第2の実施例の
ブロツクダイヤグラム、第6図は第5図に示され実施例
のための割込処理ルーチンのフローチヤート、第7図は
第5図に示された実施例のための障害処理ルーチンのフ
ローチヤートである。 1……マイクロプログラム実行部、2……実行されるべ
きマイクロ命令のアドレスを受けるレジスタ、3……経
由点アドレスを保持するレジスタ、4……擬似障害発生
点アドレスを保持するレジスタ、5,6……比較回路、7,8
……経由点アドレスを所定回数通つたことを検出するた
めのカウンタ、10,11……擬似障害発生点アドレスに所
定回到達したことを検出するためのカウンタ、13……障
害発生回路、51……経由点アドレスの保持と擬似障害発
生点アドレスの保持に兼用されるレジスタ、52……比較
回路、56……割込許可信号、57……割込発生信号、58…
…障害発生許可信号、63,64……経由点通過回数を検査
する処理、65,66……擬似障害発生回数を検査する処
理、69……障害発生許可信号を発生するステツプ。
FIG. 1 is a block diagram of an embodiment of the present invention, FIG. 2 is a block diagram schematically showing an example of a microprogram including a microprogram to be tested, and FIG. 3 is an example of a microprogram to be tested in FIG. FIG. 4 is a flowchart showing details of one of the processes in FIG. 3, FIG. 5 is a block diagram of a second embodiment of the present invention, and FIG. 6 is a diagram shown in FIG. FIG. 7 is a flowchart of an interruption processing routine for the embodiment, and FIG. 7 is a flowchart of a failure processing routine for the embodiment shown in FIG. 1, a microprogram execution unit; 2, a register for receiving the address of a microinstruction to be executed; 3, a register for holding a via point address; 4, a register for holding a pseudo failure point address; ...... Comparison circuit, 7,8
... Counters for detecting that the via point address has been passed a predetermined number of times, 10, 11... Counters for detecting that the pseudo fault occurrence point address has been reached a predetermined number of times, 13. .., A register used for holding the transit point address and the pseudo failure point address 52, a comparison circuit 56, an interrupt enable signal 57, an interrupt generation signal 58,
.., A process for checking the number of times of passing through points, 65, 66... A process for checking the number of times a pseudo fault has occurred, and 69.

Claims (2)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】それぞれのアドレスにより識別されるそれ
ぞれの記憶位置に保持された複数のマイクロ命令から成
るマイクロプログラムの試験のために擬似障害を発生す
るために、実行されるべきマイクロ命令のアドレスと第
1の指定されたアドレスの一致の回数を計数するステツ
プと、前記一致の回数が第1の指定された数に達したこ
とを検出するステツプと、前記検出の後に第2の指定さ
れたアドレスと実行されるべきマイクロ命令のアドレス
の一致が生じた時に擬似障害を発生するステツプとを有
する擬似障害発生方法。
An address of a microinstruction to be executed to generate a pseudo fault for testing a microprogram comprising a plurality of microinstructions held in respective memory locations identified by respective addresses. A step of counting the number of matches of the first specified address; a step of detecting that the number of matches has reached the first specified number; and a second specified address after the detection. And a step of generating a pseudo fault when a match occurs between addresses of microinstructions to be executed.
【請求項2】請求項1において、更に、第2の指定され
たアドレスと実行されるべきマイクロ命令のアドレスの
前記一致を計数するステツプと、この一致の回数が第2
の指定された数に達した後は前記擬似障害の発生を阻止
するステツプとを有する擬似障害発生方法。
2. The method according to claim 1, further comprising the step of counting the number of matches between the second specified address and the address of the microinstruction to be executed, and wherein the number of matches is equal to the second number.
And a step of preventing the occurrence of the pseudo fault after the specified number of times is reached.
JP63088982A 1988-04-13 1988-04-13 Pseudo fault generation method for testing microprograms Expired - Lifetime JP2668382B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63088982A JP2668382B2 (en) 1988-04-13 1988-04-13 Pseudo fault generation method for testing microprograms

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63088982A JP2668382B2 (en) 1988-04-13 1988-04-13 Pseudo fault generation method for testing microprograms

Publications (2)

Publication Number Publication Date
JPH01261732A JPH01261732A (en) 1989-10-18
JP2668382B2 true JP2668382B2 (en) 1997-10-27

Family

ID=13958004

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63088982A Expired - Lifetime JP2668382B2 (en) 1988-04-13 1988-04-13 Pseudo fault generation method for testing microprograms

Country Status (1)

Country Link
JP (1) JP2668382B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5008885A (en) * 1988-12-29 1991-04-16 International Business Machines Corporation Event-controlled error injection system
JP5544878B2 (en) 2009-12-25 2014-07-09 富士通株式会社 Failure control device, processor core, arithmetic processing device, information processing device, and simulated failure control method

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6027423B2 (en) * 1977-03-23 1985-06-28 日本電気株式会社 Pseudo-intermittent error check code generator
JPS61290543A (en) * 1985-06-19 1986-12-20 Fujitsu Ltd Error generating device

Also Published As

Publication number Publication date
JPH01261732A (en) 1989-10-18

Similar Documents

Publication Publication Date Title
US3771131A (en) Operating condition monitoring in digital computers
JPH052654A (en) Method and circuit for detecting fault of microcomputer
JPH0690677B2 (en) Channel error injection device
US3988579A (en) System for testing a data processing unit
JPS58501346A (en) Microprocessor type with internal access function
JP2668382B2 (en) Pseudo fault generation method for testing microprograms
US5533195A (en) Testing tool for diagnosing defective computer system devices
CN112527571B (en) CPU instruction set coverage rate calculation method and device
JP2737645B2 (en) Program debug device
JP2734234B2 (en) Information processing device
JPS629937B2 (en)
JPS63200250A (en) Pseudo fault generating system for cache memory device
JPS638956A (en) Memory diagnosing circuit
JPH04109340A (en) False fault generating circuit
JPH03184133A (en) Pseudo fault generating mechanism for data processor
JPH01231134A (en) Artificial fault generating system for information processor
JPS5936853A (en) Operation processor
JPH04344938A (en) Interruption generation circuit
JPH02139637A (en) Diagnosing method for computer system
JPH0512013A (en) Data processor
JPS5844261B2 (en) Subroutine operation failure detection device
JPS61131128A (en) Self-diagnosis system
JPS59158453A (en) Program test device
JPS6236578B2 (en)
JPS60254247A (en) False fault generating system