JPH0581080A - マイクロプロセツサの暴走監視装置 - Google Patents

マイクロプロセツサの暴走監視装置

Info

Publication number
JPH0581080A
JPH0581080A JP3241359A JP24135991A JPH0581080A JP H0581080 A JPH0581080 A JP H0581080A JP 3241359 A JP3241359 A JP 3241359A JP 24135991 A JP24135991 A JP 24135991A JP H0581080 A JPH0581080 A JP H0581080A
Authority
JP
Japan
Prior art keywords
program
wdt
runaway
monitored
software
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.)
Granted
Application number
JP3241359A
Other languages
English (en)
Other versions
JP2870250B2 (ja
Inventor
Tomihiro Kimura
富宏 木村
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.)
Fuji Electric Co Ltd
Original Assignee
Fuji Electric Co 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 Fuji Electric Co Ltd filed Critical Fuji Electric Co Ltd
Priority to JP3241359A priority Critical patent/JP2870250B2/ja
Publication of JPH0581080A publication Critical patent/JPH0581080A/ja
Application granted granted Critical
Publication of JP2870250B2 publication Critical patent/JP2870250B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【目的】本発明は、ハードウェアの構成を複雑化せずに
プログラムの暴走を検出することを目的とする。 【構成】ソフトウェアWDT1及びWDT2は、被監視
プログラムのループ毎に設けられ、一定周期毎にそれぞ
れ別のメモリの値を「1」づつインクリメントし、メモ
リの値が所定値を超えたか否かを判別する。被監視プロ
グラムのループ2、ループ3内には、ソフトウェアWD
T1及びWDT2より短い周期で上記メモリに「0」を
書き込む処理が設けられている。被監視プログラムが暴
走するとメモリに「0」が書き込まれなくなるので、メ
モリの値が所定値を超えた時点でソフトウェアWDT1
又はWDT2によりプログラムの暴走が発生したことが
マイクロプロセッサに通知される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、マイクロプロセッサが
実行するプログラムの暴走を監視する暴走監視装置に関
する。
【0002】
【従来の技術】マイクロプロセッサを内蔵した装置で
は、ハードウェアの故障、ノイズ等によりプログラムが
暴走することがあり、このようなプログラムの暴走を検
出する為にウオッチドッグタイマと呼ばれるハードウェ
アのタイマ回路が設けられている。このウオッチドッグ
タイマ(以下、WDTと呼ぶ)には、被監視プログラム
から一定周期毎にリセット信号が入力するようになって
おり、被監視プログラムが暴走してリセット信号が入力
しなくなると、WDTは、マイクロプロセッサに対して
ノンマスク割り込み信号を与えプログラムの実行を停止
させるようになっている。
【0003】
【発明が解決しようとする課題】一般に、WDTをハー
ドウェアで構成したものでは、WDTが1個しかないも
のが多いので、図6に示すように複数のプログラムルー
プが存在する場合には、プログラムの暴走を監視できな
い無監視部分が生じてしまい、ループ2又はループ3で
暴走が発生しても、ループ1が正常であればプログラム
の暴走を検出できないという問題点があった。
【0004】この問題は、図7に示すように各ループ毎
にWDTを設けることで解決できるが、その場合にはハ
ードウェアの構成が複雑になるという問題が生じる。本
発明の課題は、ハードウェアの構成を複雑にせずにプロ
グラムの暴走を検出できるようにすることである。
【0005】
【課題を解決するための手段】図1は、本発明の原理説
明図である。同図において被監視プログラムの暴走を監
視する監視プログラム3は、例えばソフトウェアのウオ
ッチドッグタイマ(WDT)である。
【0006】タイマ手段1は、時間を計時すると共に、
被監視プログラムにより一定周期毎にリセットされる。
通知手段2は、タイマ手段1で計時される時間が所定時
間を超えたなら、被監視プログラムが暴走したものと判
断して、異常が発生したことをマイクロプロセッサに通
知する。
【0007】本発明の暴走監視装置は、これらタイマ手
段1と通知手段2とからなる監視プログラムを複数備
え、複数の被監視プログラムの暴走を監視できるように
なっている。
【0008】また、ハードウェアのWDT4は、時間を
計時すると共に、1又は複数のソフトウェアのWDTに
より一定周期毎にリセットされる第2のタイマ手段と、
第2のタイマ手段で計時される時間が所定時間を超えた
とき、ソフトウェアのWDTが暴走したものと判断し
て、異常が発生したことをマイクロプロセッサに通知す
る第2の通知手段を有している。
【0009】
【作用】ソフトウェアのWDT等の複数の監視プログラ
ムからなる暴走監視装置では、被監視プログラムが正常
に動作しているときには、それぞれの被監視プログラム
により一定周期毎にタイマ手段1がリセットされるの
で、タイマ手段1で計時される時間が所定値を超えるこ
とはない。
【0010】一方、何れかの被監視プログラムが暴走す
ると、その被監視プログラムによりタイマ手段1がリセ
ットされなくなるのでタイマ手段1で計時される時間が
所定値を超える。そして、これが通知手段2で検出され
て、マイクロプロセッサに被監視プログラムに異常が発
生したことが通知される。
【0011】ソフトウェアの監視プログラムでプログラ
ムの暴走を監視することで、被監視プログラムループが
多数有る場合にも、ハードウェアを複雑にせずに、監視
プログラムを複数設けることで対応できる。また、被監
視プログラムが変更されたとしても、監視プログラムを
書き換えるだけでよいので、プログラムの変更に対して
容易に対応することができる。
【0012】また、ソフトウェアのWDTとハードウェ
アのWDTとを組み合せた暴走監視装置では、1又は複
数のソフトウェアWDTからなる監視プログラムの暴走
をハードウェアのWDTで監視するので、監視プログラ
ムの信頼性レベルをハードウェアのWDTの信頼性レベ
ルまで高めることができる。
【0013】
【実施例】以下、本発明の実施例を図面を参照しながら
説明する。先ず、ソフトウェアのウオッチドッグタイマ
(以下、WDTと呼ぶ)を、図2の概念図を参照して説
明する。
【0014】ソフトWDT1は、RAM(図示せず)の
特定のメモリ11をカウンタとして使用しており、一定
時間毎にメモリ11の値を「1」づつインクリメントす
ると共に、メモリ11の値が所定値以下か否かを判定す
る。
【0015】被監視ループ2は、ソフトWDT1より短
い周期でメモリ11に「0」を書き込む。従って、被監
視ループ2が正常に動作しているときには、メモリ11
の値は増大せず所定値以下となり、ソフトウェアWDT
1ではプログラムの異常は検出されない。
【0016】一方、被監視ループ2のプログラムが暴走
すると、メモリ11に「0」が書き込まれなくなるの
で、メモリ11の値が次第に増大して所定値を超える。
そして、メモリ11の値が所定値を超えた時点で被監視
プログラムに異常が発生したことがマイクロプロセッサ
に通知される。
【0017】次に、本発明の第1実施例を図3を参照し
て説明する。同図において、被監視プログラムのループ
2及びループ3は、例えば10ms毎に起動するプログラム
であり、監視プログラムのループ1は100ms 毎に起動す
るプログラムである。
【0018】監視ループ1は、被監視ループ2のプログ
ラムの暴走を監視するソフトウェアWDT1と、被監視
ループ3のプログラムの暴走を監視するソフトウェアW
DT2との2つのプログラムで構成されている。WDT
1は、メモリ11の値を「1」づつインクリメントし、
メモリ11の値が「10」を超えたなら被監視ループ2
のプログラムが暴走したものと判断してエラーの発生を
マイクロプロセッサに通知する。
【0019】また、WDT2は、上記メモリ11と別の
メモリ12の値を「1」づつインクリメントし、メモリ
12の値が「10」を超えたなら被監視ループ3のプロ
グラムが暴走したものと判断してエラーの発生をマイク
ロプロセッサに通知する。
【0020】被監視ループ2及び被監視ループ3内に
は、WDT1及びWDT2でインクリメントされるメモ
リ11、12に「0」を書き込む処理が設けてある。被
監視ループ2と被監視ループ3とが共に正常に動作して
いる場合には、10ms毎にメモリ11及び12に「0」が
書き込まれるので、監視ループ1が100ms 毎にメモリ1
1、12の値を「1」づつインクリメントしても、メモ
リ11、12の値は「10」を超えることはない。
【0021】一方、被監視ループ2又は被監視ループ3
でプログラムの暴走が発生すると、メモリ11、12に
「0」が書き込まれなくなるので、監視ループ1が起動
される毎にメモリ11又は12の値は次第に増大してい
く。そして、メモリ11、12の値が「10」を超えた
なら、すなわち被監視ループ2又は被監視ループ3が1
秒間メモリ11、12の値を「0」に書き換えないとき
には、WDT1、WDT2は、被監視ループ2又は被監
視ループ3にプログラムの暴走が発生したものと判断し
て、マイクロプロセッサにノンマスク割り込み信号等を
出力してWDTエラーを通知する。
【0022】この第1実施例では、プログラムの暴走を
ソフトウェアのWDT1、WDT2で検出するようにし
たので、複数のプログラムループが存在する場合にも、
ハードウェアを複雑化せずに、被監視プログラムループ
の暴走を検出することができる。
【0023】また、各ループ毎にソフトウェアWDTを
設けているので、どのWDTが異常を検出したかによ
り、プログラムのどのループで暴走が発生したが分かる
ので、プログラム暴走時のトラブルシューティング、ト
ラブル分析が容易になる。
【0024】上述した第1実施例のように被監視プログ
ラムの暴走をソフトウェアのWDTで検出する場合に
は、WDTプログラム自体が暴走すると被監視プログラ
ムの暴走を検出できなくなる。
【0025】そこで、第2実施例では、ソフトウェアの
ウオッチドグタイマWDT3、WDT4からなる監視ル
ープ1をハードウェアのウオッチドグタイマWDT5で
監視するようにしている。
【0026】図3は、第2実施例のソフトウェアのWD
T3、WDT4とハードウェアのWDT5とを多重化し
たWDTシステムの説明図である。ハードウェアWDT
5は、例えばタイマ回路などで構成され、ソフトウェア
WDT3、WDT4からのリセット信号によりタイマ値
が「0」にリセットされる。
【0027】被監視ループ2及び3の暴走を検出するソ
フトウェアのWDT3とWDT4とからなる監視ループ
1内には、ハードウェアWDT5を一定時間毎にリセッ
トする処理を設けてある。
【0028】上記の多重化されたWDTシステムにおい
て、例えば監視ループ1でプログラムの暴走が発生する
と、ハードウェアWDT5のリセットが行われなくなる
のでWDT5がタイムオーバとなり、マイクロプロセッ
サに監視ループ1の暴走が通知される。
【0029】一般に、ハードウェアで構成したWDTの
方がソフトウェアで構成したWDTよりプログラムの暴
走等が発生しない分だけ信頼性が高くなる。この第2の
実施例では、被監視プログラムのループ2、ループ3を
監視するソフトウェアWDT3及びWDT4からなる監
視ループ1を、ハードウェアのWDT5で監視するよう
にしているので、監視ループ1の信頼性レベルをハード
ウェアのWDT5の信頼性レベルまで高めることができ
る。従って、被監視ループ2及びループ3をソフトウェ
アのWDTのみで監視する場合に比べて、システム全体
の信頼性を高めることができる。
【0030】次に、ソフトウェアのWDTからなる複数
の監視プログラムループに対し、複数のハードウェアの
WDTを設けた本発明の第3実施例を、図5を参照して
説明する。
【0031】マイクロプロセッサが実行するプログラム
が複雑化すると、それらのプログラムを監視するソフト
ウェアのWDTの数も増えるので、1つのハードウェア
のWDTで監視プログラムの暴走を監視することが困難
になる。
【0032】そこで、図5に示す第3実施例では、監視
プログラムのループを2つに分け、それぞれのループ毎
にハードウェアのWDT5、WDT8を設けている。こ
の第3実施例では、ハードウェアのWDTを2個設けて
いるのでハードウェアの構成はその分複雑になるが、被
監視プログラムのループが増え、多数のソフトウェアW
DTが必要となったときにも、ソフトウェアWDTを1
つのループ内に設ける必要が無くなるのでソフトウェア
WDTの設計が容易になる。
【0033】
【発明の効果】本発明によれば、被監視プログラムルー
プが多数ある場合にも、ソフトウェアのWDTなどから
なる被監視プログラムを複数設けることで、ハードウェ
アの構成を複雑にせずにプログラムの暴走を検出でき
る。これにより、マイクロプロセッサを組み込んだ装置
の小型化、低価格化を実現できる。また、被監視プログ
ラムが変更された場合にも、WDTのプログラムを変更
するだけでよいので、ハードウェアのWDTに比べて柔
軟に対応することができる。
【0034】さらに、ソフトウェアのWDTとハードウ
ェアのWDTとを組み合わせることにより、ハードウェ
アのWDTと同じ信頼性を持ち、かつ被監視プログラム
の変更に容易に対応できる柔軟性のあるシステムを構築
できる。
【図面の簡単な説明】
【図1】本発明の原理説明図である。
【図2】ソフトウェアWDTの概念図である。
【図3】第1実施例のソフトウェアWDTの説明図であ
る。
【図4】第2実施例の多重化WDTシステムの説明図で
ある。
【図5】第3実施例のWDTシステムの説明図である。
【図6】従来のWDTの説明図である。
【図7】従来のWDTの説明図である。
【符号の説明】
1 タイマ手段 2 通知手段 3 監視プログラム

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】時間を計時すると共に、被監視プログラム
    により一定周期毎にリセットされるタイマ手段(1) と、 このタイマ手段(1) で計時される時間が所定時間を超え
    たとき、前記被監視プログラムが暴走したものと判断し
    て異常の発生をマイクロプロセッサに通知する通知手段
    (2) とからなる監視プログラム(3) を複数備え、複数の
    被監視プログラムの暴走を監視することを特徴とするマ
    イクロプロセッサの暴走監視装置。
  2. 【請求項2】時間を計時すると共に、1又は複数の被監
    視プログラムにより一定周期毎にリセットされる第1の
    タイマ手段と、 この第1のタイマ手段で計時される時間が所定時間を超
    えたとき、前記被監視プログラムが暴走したものと判断
    して異常の発生をマイクロプロセッサに通知する第1の
    通知手段とを備えたソフトウェアのウオッチドッグタイ
    マと、 時間を計時すると共に、1又は複数のソフトウェアのウ
    オッチドッグタイマにより一定周期毎にリセットされる
    第2のタイマ手段と、 この第2のタイマ手段で計時される時間が所定時間を超
    えたとき、前記ソフトウェアのウオッチドッグタイマが
    暴走したものと判断して、異常の発生を前記マイクロプ
    ロセッサに通知する第2の通知手段とを備えたハードウ
    ェアのウオッチドッグタイマとを有することを特徴とす
    るマイクロプロセッサの暴走監視装置。
JP3241359A 1991-09-20 1991-09-20 マイクロプロセッサの暴走監視装置 Expired - Fee Related JP2870250B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3241359A JP2870250B2 (ja) 1991-09-20 1991-09-20 マイクロプロセッサの暴走監視装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3241359A JP2870250B2 (ja) 1991-09-20 1991-09-20 マイクロプロセッサの暴走監視装置

Publications (2)

Publication Number Publication Date
JPH0581080A true JPH0581080A (ja) 1993-04-02
JP2870250B2 JP2870250B2 (ja) 1999-03-17

Family

ID=17073121

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3241359A Expired - Fee Related JP2870250B2 (ja) 1991-09-20 1991-09-20 マイクロプロセッサの暴走監視装置

Country Status (1)

Country Link
JP (1) JP2870250B2 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6526527B1 (en) 1998-10-17 2003-02-25 Daimlerchrysler Ag Single-processor system
US7945345B2 (en) 2008-08-06 2011-05-17 Asm Japan K.K. Semiconductor manufacturing apparatus
JP2013073456A (ja) * 2011-09-28 2013-04-22 Mitsubishi Electric Corp アプリケーション監視最適化装置
KR102269241B1 (ko) * 2021-02-09 2021-06-28 이옥재 태양광 led 가로등 시스템

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6526527B1 (en) 1998-10-17 2003-02-25 Daimlerchrysler Ag Single-processor system
US7945345B2 (en) 2008-08-06 2011-05-17 Asm Japan K.K. Semiconductor manufacturing apparatus
JP2013073456A (ja) * 2011-09-28 2013-04-22 Mitsubishi Electric Corp アプリケーション監視最適化装置
KR102269241B1 (ko) * 2021-02-09 2021-06-28 이옥재 태양광 led 가로등 시스템

Also Published As

Publication number Publication date
JP2870250B2 (ja) 1999-03-17

Similar Documents

Publication Publication Date Title
JPS5868163A (ja) システム障害検出方式
JP2870250B2 (ja) マイクロプロセッサの暴走監視装置
JP2006227962A (ja) アプリケーションタスク監視システムおよび方法
JPH01312638A (ja) マイクロプロセッサの異常監視リトライ制御装置
JPS6115239A (ja) プロセツサ診断方式
JP2659067B2 (ja) マイクロコンピュータのリセット回路
JP2746184B2 (ja) 障害ロギングシステム
JPS5983438A (ja) プログラム異常検出方式
JPH0991170A (ja) 障害検出装置
JP2731386B2 (ja) 制御装置
JPS5868166A (ja) プロセツサ異常監視装置
JPH04148246A (ja) ウオツチドツグタイマ
CN118226942A (zh) 一种微控制器处理异常复位方法
JPS63280345A (ja) プログラム異常検出方法
JPH0477935A (ja) 故障検出回路
JPS60171544A (ja) 計算機システム異常自己診断装置
JPH01154258A (ja) ウォッチドッグタイマによる誤動作検出装置
JPH04155543A (ja) マイコン誤動作自己検知方式
JPH09231105A (ja) プログラム障害検出方法
JPH08292901A (ja) ウォッチドッグタイマ及びこれを用いたコンピュータシステム
JPH01169642A (ja) 暴走検出回路
JPH01281540A (ja) 障害検知装置
JPH01116739A (ja) Cpuの監視装置
JPH041831A (ja) プログラム暴走監視方式
JPH03246638A (ja) プログラム暴走検出方式

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19981201

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees