JPS64733B2 - - Google Patents
Info
- Publication number
- JPS64733B2 JPS64733B2 JP56152343A JP15234381A JPS64733B2 JP S64733 B2 JPS64733 B2 JP S64733B2 JP 56152343 A JP56152343 A JP 56152343A JP 15234381 A JP15234381 A JP 15234381A JP S64733 B2 JPS64733 B2 JP S64733B2
- Authority
- JP
- Japan
- Prior art keywords
- time
- circuit
- reset
- output
- runaway
- 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
Links
- 238000012545 processing Methods 0.000 claims description 20
- 238000012805 post-processing Methods 0.000 claims description 3
- 238000000034 method Methods 0.000 description 7
- 238000001514 detection method Methods 0.000 description 6
- 239000003990 capacitor Substances 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/0703—Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
- G06F11/0751—Error or fault detection not based on redundancy
- G06F11/0754—Error or fault detection not based on redundancy by exceeding limits
- G06F11/0757—Error or fault detection not based on redundancy by exceeding limits by exceeding a time limit, i.e. time-out, e.g. watchdogs
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Apparatus For Radiation Diagnosis (AREA)
- Retry When Errors Occur (AREA)
- Debugging And Monitoring (AREA)
Description
【発明の詳細な説明】
本発明は、コンピユータシステムにおける暴走
検出時の後処理回路に関する。
検出時の後処理回路に関する。
X線装置などに適用されるコンピユータシステ
ムにおいて、コンピユータプログラム上の暴走
は、種々の入出力デバイスが付設されているが故
に、重大な事故となる恐れがある。従来より、コ
ンピユータの暴走を検出するには、一般的にはパ
リテイ・チエツクとか種々提案されているが、X
線装置などでは、いわゆるウオツチドツグタイマ
ーにより行なわれている。
ムにおいて、コンピユータプログラム上の暴走
は、種々の入出力デバイスが付設されているが故
に、重大な事故となる恐れがある。従来より、コ
ンピユータの暴走を検出するには、一般的にはパ
リテイ・チエツクとか種々提案されているが、X
線装置などでは、いわゆるウオツチドツグタイマ
ーにより行なわれている。
このような暴走検出後では、コンピユータをリ
セツトさせて、プログラムを再スタートさせてい
るが、改めて初期化の処理を行なう必要があつて
時間がかかつたり、全て初期化したがために実行
上不都合が生じている。
セツトさせて、プログラムを再スタートさせてい
るが、改めて初期化の処理を行なう必要があつて
時間がかかつたり、全て初期化したがために実行
上不都合が生じている。
本発明の目的は、コンピユータシステムにおけ
る暴走時の後処理回路を提供することである。
る暴走時の後処理回路を提供することである。
本発明によれば、暴走の検出により、直ちにプ
ロセツサCPUをリセツト制御する場合と、当初
の電源オンにより初期リセツトする場合とを区別
して、再スタートへ自動復帰する場合には、装置
のイニシヤライズ処理を省いて、つまりその処理
時間を節約して、早くメインループ処理へ移行で
き、実行処理時間が短くなる。
ロセツサCPUをリセツト制御する場合と、当初
の電源オンにより初期リセツトする場合とを区別
して、再スタートへ自動復帰する場合には、装置
のイニシヤライズ処理を省いて、つまりその処理
時間を節約して、早くメインループ処理へ移行で
き、実行処理時間が短くなる。
なお、再スタート時に装置のイニシヤライズ処
理を再び行なうことは、暴走に関与しなかつた処
理まで初期化することになり不都合であるが、本
発明によれば、このような不都合が避けられる。
理を再び行なうことは、暴走に関与しなかつた処
理まで初期化することになり不都合であるが、本
発明によれば、このような不都合が避けられる。
一般にマイクロコンピユータシステムにおける
プログラムの流れは、概略第1図のフローチヤー
トに示される。電源を入れ、マイクロプロセツサ
CPUがリセツトされた後、プログラムがスター
トして、まず装置を初期状態に設定する。次に、
メインループに入り、装置に外部入力デバイスが
あると割込みが発生して、メインループで割込み
がかかり、割込処理ルーチンへ移り、割込原因毎
に何らかの処理を行ない、このような処理が終れ
ば再びメインループへ帰つて来る。割込みは、こ
のメインループでのみかかることができる。も
し、何らかの原因でプログラムが暴走しだした
ら、プログラムはメインループを走らなくなる。
つまり、プログラムの暴走とは、割込処理が終つ
てもメインループへ戻らなくなつた時に生じてい
ると考えられる。
プログラムの流れは、概略第1図のフローチヤー
トに示される。電源を入れ、マイクロプロセツサ
CPUがリセツトされた後、プログラムがスター
トして、まず装置を初期状態に設定する。次に、
メインループに入り、装置に外部入力デバイスが
あると割込みが発生して、メインループで割込み
がかかり、割込処理ルーチンへ移り、割込原因毎
に何らかの処理を行ない、このような処理が終れ
ば再びメインループへ帰つて来る。割込みは、こ
のメインループでのみかかることができる。も
し、何らかの原因でプログラムが暴走しだした
ら、プログラムはメインループを走らなくなる。
つまり、プログラムの暴走とは、割込処理が終つ
てもメインループへ戻らなくなつた時に生じてい
ると考えられる。
ここで割込みがかかつた後、割込処理を終つて
メインループへプログラムが戻つてくるまでの時
間(割込処理時間)を考えてみる。処理の内容の
違いで、時間の長短はあるが、最大の所要時間を
T2とする。この場合、複数の割込みがかかるな
らば、各割込処理時間が総和されて、最大所要時
間T2を設定する。コンピユータが正常な動作を
している限り、プログラムはメインループ上の時
点txを繰り返し通つている。メインループ上でプ
ログラムが1回りするのに要する時間T1が求め
られる。従つて、プログラムが時点txを通過して
何らかの割込みがかかつて、割込処理をして、そ
の間暴走せずに再び時点txを通過する一巡時間を
T3とすると、T3≦T1+T2が成立する。もし、暴
走したらメインループ以外のところへプログラム
は進み、最後に点txを通過した後、時間(T1+
T2)たつても、再び時点txを通過することはな
い。つまり、プログラムが時点txを通過してか
ら、時間(T1+T2)たつても、時点txを再び通
過しなければ、プログラムは暴走したと判断す
る。
メインループへプログラムが戻つてくるまでの時
間(割込処理時間)を考えてみる。処理の内容の
違いで、時間の長短はあるが、最大の所要時間を
T2とする。この場合、複数の割込みがかかるな
らば、各割込処理時間が総和されて、最大所要時
間T2を設定する。コンピユータが正常な動作を
している限り、プログラムはメインループ上の時
点txを繰り返し通つている。メインループ上でプ
ログラムが1回りするのに要する時間T1が求め
られる。従つて、プログラムが時点txを通過して
何らかの割込みがかかつて、割込処理をして、そ
の間暴走せずに再び時点txを通過する一巡時間を
T3とすると、T3≦T1+T2が成立する。もし、暴
走したらメインループ以外のところへプログラム
は進み、最後に点txを通過した後、時間(T1+
T2)たつても、再び時点txを通過することはな
い。つまり、プログラムが時点txを通過してか
ら、時間(T1+T2)たつても、時点txを再び通
過しなければ、プログラムは暴走したと判断す
る。
本発明によれば、プログラムが時点txを通過し
てから、(T1+T2)の時間を計測し、この時間を
越えたら暴走を検出したとみる信号を出力させる
ハードウエアとしての検出回路が設けられ、これ
に対応して、もし暴走ならば、CPUをリセツト
制御して、再び最初からスタートさせ、必要な処
理をして再びメインループへ戻るような自動復帰
のプログラム・ルーチンが設けられている。
てから、(T1+T2)の時間を計測し、この時間を
越えたら暴走を検出したとみる信号を出力させる
ハードウエアとしての検出回路が設けられ、これ
に対応して、もし暴走ならば、CPUをリセツト
制御して、再び最初からスタートさせ、必要な処
理をして再びメインループへ戻るような自動復帰
のプログラム・ルーチンが設けられている。
そこで、第2図以下について、本発明の好適な
実施例を説明する。
実施例を説明する。
第2図は、本発明によるソフトウエア、つまり
プログラムのフローチヤートであり、第3図は、
ハードウエアとしての要部回路図であり、第4図
はこの回路の動作を表わすタイミング・チヤート
である。
プログラムのフローチヤートであり、第3図は、
ハードウエアとしての要部回路図であり、第4図
はこの回路の動作を表わすタイミング・チヤート
である。
まず、第3図において、回路Aは、電源オン時
に、回路B,D,Eの各リセツトR端子に信号を
送るリセツト信号発生回路である。回路Bは、電
源オン時の初期リセツトと暴走時のリセツトとを
出力Q4で区別して表わすフラグ回路であり、出
力Q4が1のとき暴走時リセツト、0のとき初期
リセツトを表わす。回路Cは、後述の回路Dのワ
ンシヨツトにトリガをかけるパルス発生ゲートで
あり、これは、プログラム上でアドレス指定され
る入力デバイス選択回路からなる。回路Dは、暴
走検出の時間T4(≧T1+T2〓T3)をコンデンサ
Cと抵抗Rとにより作り出しているワンシヨツト
回路である。回路Eは、暴走時に、プロセツサ
CPUにリセツト制御信号をかけるためのリセツ
トパルスを作成する同様のワンシヨツト回路であ
る。回路C,F,Gに接続されたOUT又はINの
各アドレスは、プロセツサCPUのアドレス・バ
スにつながつている。従つて、回路Fは出力デバ
イスの選択回路であり、回路Gは、入力デバイス
の選択回路であり、アドレス指定により、トライ
ステートを介して、回路Bの出力Q4の状態が
データバスDI〓Nにより読み出される。
に、回路B,D,Eの各リセツトR端子に信号を
送るリセツト信号発生回路である。回路Bは、電
源オン時の初期リセツトと暴走時のリセツトとを
出力Q4で区別して表わすフラグ回路であり、出
力Q4が1のとき暴走時リセツト、0のとき初期
リセツトを表わす。回路Cは、後述の回路Dのワ
ンシヨツトにトリガをかけるパルス発生ゲートで
あり、これは、プログラム上でアドレス指定され
る入力デバイス選択回路からなる。回路Dは、暴
走検出の時間T4(≧T1+T2〓T3)をコンデンサ
Cと抵抗Rとにより作り出しているワンシヨツト
回路である。回路Eは、暴走時に、プロセツサ
CPUにリセツト制御信号をかけるためのリセツ
トパルスを作成する同様のワンシヨツト回路であ
る。回路C,F,Gに接続されたOUT又はINの
各アドレスは、プロセツサCPUのアドレス・バ
スにつながつている。従つて、回路Fは出力デバ
イスの選択回路であり、回路Gは、入力デバイス
の選択回路であり、アドレス指定により、トライ
ステートを介して、回路Bの出力Q4の状態が
データバスDI〓Nにより読み出される。
図示のように、回路Dは、その入力にトリガパ
ルスを与えられると、時間T3後T4にその出力2
からリセツト信号を出し、回路Eを介してプロセ
ツサCPUをリセツト制御できる。しかしながら、
プログラムが目的通り正常に処理されているとき
は、必らずメインループの時点txを通過するの
で、つまり時間T3より短い周期にて繰り返し回
路Cを介してリトリガーするので、プロセツサ
CPUのリセツト動作は阻止される。他方、プロ
グラムの暴走時には、このようなリトリガーが行
なわれず、プロセツサCPUは前述の通りリセツ
ト制御され、その後、プログラムにより再スター
トが行なわれる。
ルスを与えられると、時間T3後T4にその出力2
からリセツト信号を出し、回路Eを介してプロセ
ツサCPUをリセツト制御できる。しかしながら、
プログラムが目的通り正常に処理されているとき
は、必らずメインループの時点txを通過するの
で、つまり時間T3より短い周期にて繰り返し回
路Cを介してリトリガーするので、プロセツサ
CPUのリセツト動作は阻止される。他方、プロ
グラムの暴走時には、このようなリトリガーが行
なわれず、プロセツサCPUは前述の通りリセツ
ト制御され、その後、プログラムにより再スター
トが行なわれる。
次に、第2図のフローチヤートに従つて、動作
を説明する。
を説明する。
電源を入れると、プロセツサCPUにリセツト
制御信号が入り、CPUはリセツトされる。また、
回路Aによりリセツト信号が作られ、回路B,
D,Eの各フリツプ・フロツプを共にリセツトす
る。この場合の各出力は、第4図の電源オン時に
示す状態となる。
制御信号が入り、CPUはリセツトされる。また、
回路Aによりリセツト信号が作られ、回路B,
D,Eの各フリツプ・フロツプを共にリセツトす
る。この場合の各出力は、第4図の電源オン時に
示す状態となる。
リセツト後、プログラムがスタートすると、最
初に第3図の回路Bの出力Q4の信号レベル状態
を回路Gにより読む。信号は0であるので、電
源を入れた直後の初期リセツト状態と判断し、そ
のまま進む。プログラムは、次に、回路Fを介し
て回路Bの出力Q4を1に立てた後、装置イニシ
ヤライズの処理を経てメインループへ入る。そし
て、メインループの時点txを通るたびに、回路C
をアドレス指定・アクセスすることにより、の
ライン上にパルスを発生させ、処理が正常に行な
われる限り、またメインループを繰り返し戻る。
初に第3図の回路Bの出力Q4の信号レベル状態
を回路Gにより読む。信号は0であるので、電
源を入れた直後の初期リセツト状態と判断し、そ
のまま進む。プログラムは、次に、回路Fを介し
て回路Bの出力Q4を1に立てた後、装置イニシ
ヤライズの処理を経てメインループへ入る。そし
て、メインループの時点txを通るたびに、回路C
をアドレス指定・アクセスすることにより、の
ライン上にパルスを発生させ、処理が正常に行な
われる限り、またメインループを繰り返し戻る。
の信号の働きと流れを詳しく説明すると、
のパルス信号の立上りで、回路Dを動作させ、そ
の出力はコンデンサC、抵抗Rで定められた時間
T4だけ、0に下がる。ところが、時間T4以内に
プログラムが再びメインループの時点txを通過す
ると、回路Cをアクセスしたの信号ライン上に
パルスを発生させる。そうすると、再び回路Dの
ワンシヨツトが再トリガされて、新たにその時点
から時間T4だけ0に下がる。これが何回も繰り
返されて、回路Dの出力は常に0のままであ
る。従つて、回路Eのワンシヨツトをトリガーす
ることはない。プログラム上正常動作をしている
限り、、の出力は第4図の正常時に示す通り
となる。他方、暴走時には、時間T4に初めて回
路Dの出力2()が1に立上ることになる。従
つて、回路Eのワンシヨツトが働き、その出力
3()よりCPUのリセツト制御ラインに信号が
入り、CPUがリセツトされる。そして、再び、
プログラムは、スタート位置から走り出すことに
なる。フローチヤート上の最初の判断の所では、
再スタートであるので回路Aは動作せず、回路B
の出力Q4()は1のままであるから、暴走時で
あると判断して、右側へ行き、再スタートに必要
な処理を経てメインループへ復帰する。この場合
には、装置のイニシヤライズ処理は必要ないの
で、これを省いて直接メインループへ移行するの
である。
のパルス信号の立上りで、回路Dを動作させ、そ
の出力はコンデンサC、抵抗Rで定められた時間
T4だけ、0に下がる。ところが、時間T4以内に
プログラムが再びメインループの時点txを通過す
ると、回路Cをアクセスしたの信号ライン上に
パルスを発生させる。そうすると、再び回路Dの
ワンシヨツトが再トリガされて、新たにその時点
から時間T4だけ0に下がる。これが何回も繰り
返されて、回路Dの出力は常に0のままであ
る。従つて、回路Eのワンシヨツトをトリガーす
ることはない。プログラム上正常動作をしている
限り、、の出力は第4図の正常時に示す通り
となる。他方、暴走時には、時間T4に初めて回
路Dの出力2()が1に立上ることになる。従
つて、回路Eのワンシヨツトが働き、その出力
3()よりCPUのリセツト制御ラインに信号が
入り、CPUがリセツトされる。そして、再び、
プログラムは、スタート位置から走り出すことに
なる。フローチヤート上の最初の判断の所では、
再スタートであるので回路Aは動作せず、回路B
の出力Q4()は1のままであるから、暴走時で
あると判断して、右側へ行き、再スタートに必要
な処理を経てメインループへ復帰する。この場合
には、装置のイニシヤライズ処理は必要ないの
で、これを省いて直接メインループへ移行するの
である。
なお、当然のことであるが、回路D,Eの検出
信号をCPUの割込制御ラインに入れたら、CPU
が割込不許可の時、再スタートがかけられないこ
とになる。
信号をCPUの割込制御ラインに入れたら、CPU
が割込不許可の時、再スタートがかけられないこ
とになる。
本発明は、第3図に示す通り、検出回路D,E
によるハードウエアを主たる構成としているが、
回路C,F,Gの各々は、第2図に示すようにプ
ログラム上で動作され、ハードウエアとソフトウ
エアからなり、暴走の検出を一層確実にしてい
る。
によるハードウエアを主たる構成としているが、
回路C,F,Gの各々は、第2図に示すようにプ
ログラム上で動作され、ハードウエアとソフトウ
エアからなり、暴走の検出を一層確実にしてい
る。
第1図は、一般例のプログラム・フローチヤー
ト、第2図は本発明によるプログラム・フローチ
ヤート、第3図は本発明によるハードウエアの要
部回路図、第4図はこれら回路の動作を表わすタ
イミングチヤートである。 Aはリセツト発生回路、Bはフラグ回路、Cは
パルス発生回路、Dは検出回路、Eはパルス発生
回路、F及びGはデバイス選択回路である。
ト、第2図は本発明によるプログラム・フローチ
ヤート、第3図は本発明によるハードウエアの要
部回路図、第4図はこれら回路の動作を表わすタ
イミングチヤートである。 Aはリセツト発生回路、Bはフラグ回路、Cは
パルス発生回路、Dは検出回路、Eはパルス発生
回路、F及びGはデバイス選択回路である。
Claims (1)
- 1 出力Q4が0の場合を電源オン時の初期リセ
ツト、出力Q4が1の場合を暴走時のリセツトと
区別した各フラグを立てる回路Bと、該回路Bの
入力に接続され、アドレス指定可能な出力デバイ
ス選択回路Fと、該フラグを読み出しアドレス指
定可能な入力デバイス選択回路Gと、初期リセツ
トの読出しの後は該出力デバイスFのアドレス指
定により前記回路Bの出力を暴走時リセツトフラ
グに変更・固定化し、装置のイニシヤライズを経
てメインループに移行し、他方暴走時リセツトの
読出しの時は、そのまま、必要な処理を介してメ
インループに移行するプログラム処理手段とから
なり、メインループの処理時間T1、割込処理の
最大時間T2及びメインループ上の任意処理時点
txをそれぞれ設定し、時点txを介して割込処理が
かかつた場合も含めた一巡時間T3が時間(T1
+T2)を越えたとき、プログラム上の暴走が生
じたと判断するために、時点txにおいて出力デバ
イスCをアドレス指定してトリガパルスを発生
し、これを入力して一巡時間T3後にリセツト出
力(2=1)するようにした限時回路Dを付設
して、その出力2を介してCPUをリセツト制
御させて再生スタートさせることを特徴とする、
コンピユータシステムにおける暴走検出時の後処
理回路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP56152343A JPS5852762A (ja) | 1981-09-25 | 1981-09-25 | コンピュータシステムにおける暴走検出時の後処理回路 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP56152343A JPS5852762A (ja) | 1981-09-25 | 1981-09-25 | コンピュータシステムにおける暴走検出時の後処理回路 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS5852762A JPS5852762A (ja) | 1983-03-29 |
JPS64733B2 true JPS64733B2 (ja) | 1989-01-09 |
Family
ID=15538460
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP56152343A Granted JPS5852762A (ja) | 1981-09-25 | 1981-09-25 | コンピュータシステムにおける暴走検出時の後処理回路 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS5852762A (ja) |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5557956A (en) * | 1978-10-25 | 1980-04-30 | Nissan Motor Co Ltd | Malfunction prevention unit of microcomputer |
-
1981
- 1981-09-25 JP JP56152343A patent/JPS5852762A/ja active Granted
Also Published As
Publication number | Publication date |
---|---|
JPS5852762A (ja) | 1983-03-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4405982A (en) | Arrangement for monitoring the function of a programmable electronic switching circuit | |
US4566111A (en) | Watchdog timer | |
US4630041A (en) | Enhanced reliability interrupt control apparatus | |
GB2129587A (en) | A method of and apparatus for fail-safe operation of a vehicle computer | |
JPS64733B2 (ja) | ||
US4103327A (en) | Interrupt control circuit | |
JP2871970B2 (ja) | プログラム暴走検出方式 | |
JP3088395B2 (ja) | スイッチ割り込み処理回路及びスイッチ割り込み処理方法 | |
JP3214079B2 (ja) | Cpuの異常検出装置 | |
JP3281113B2 (ja) | マイコンシステムの異常検出回路 | |
JP2729121B2 (ja) | 演算処理装置 | |
JP2668382B2 (ja) | マイクロプログラムの試験のための擬似障害発生方法 | |
JP2695775B2 (ja) | コンピュータシステムの誤動作からの復帰方法 | |
JP2752814B2 (ja) | ウォッチドッグ断アラーム処理装置 | |
JPH05257750A (ja) | ウォッチドッグタイマ制御回路 | |
JP3117514B2 (ja) | リセット種類判別回路 | |
JPS5846451A (ja) | プログラム暴走検出処理方式 | |
JPH0814779B2 (ja) | 演算制御装置の初期化方法 | |
JPH0346853B2 (ja) | ||
JP2605440B2 (ja) | データ処理装置 | |
JPS61221850A (ja) | 再初期プログラムロ−デイング方式 | |
JPS6359167B2 (ja) | ||
JPH10124347A (ja) | 電子計算機 | |
JPS5983201A (ja) | 瞬断処理方式 | |
JPH04355829A (ja) | プログラム切替方式 |