JP2693885B2 - マイクロコンピュータ - Google Patents

マイクロコンピュータ

Info

Publication number
JP2693885B2
JP2693885B2 JP3257341A JP25734191A JP2693885B2 JP 2693885 B2 JP2693885 B2 JP 2693885B2 JP 3257341 A JP3257341 A JP 3257341A JP 25734191 A JP25734191 A JP 25734191A JP 2693885 B2 JP2693885 B2 JP 2693885B2
Authority
JP
Japan
Prior art keywords
capture
program
signal
clear instruction
interval timer
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
JP3257341A
Other languages
English (en)
Other versions
JPH05100876A (ja
Inventor
和俊 吉澤
Original Assignee
日本電気アイシーマイコンシステム株式会社
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 日本電気アイシーマイコンシステム株式会社 filed Critical 日本電気アイシーマイコンシステム株式会社
Priority to JP3257341A priority Critical patent/JP2693885B2/ja
Publication of JPH05100876A publication Critical patent/JPH05100876A/ja
Application granted granted Critical
Publication of JP2693885B2 publication Critical patent/JP2693885B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はマイクロコンピュータに
関し、特に任意の箇所で無限ループにはいった場合にお
いても暴走検出可能なプログラム暴走検出回路に関す
る。
【0002】
【従来の技術】マイクロプロセッサあるいは1チップマ
イクロコンピュータ(以下、総称してえマイクロコンピ
ュータと呼ぶ)は、年々集積度の向上に伴いアドレッシ
ング可能なプログラムメモリ空間あるいは内蔵プログラ
ムメモリ容量が増大し、またさまざまな周辺機能内蔵に
よる時分割制御など、ますます複雑な制御を行う事が可
能となってきている。
【0003】また、応用分野もこれに伴い家電など身近
な民生分野から、情報処理装置、通信機器、自動車のエ
ンジンコントロールなど、多岐に渡っており、これらの
制御の中枢となるマイクロコンピュータのプログラムが
暴走するなどの異常動作が発生した場合、これをいち早
く検出する事は非常に重要になってきている。
【0004】従来、何らかの外的要因あるいは当初予期
しなかったような特殊条件などにより、プログラムが無
限ループにはいるなど暴走した場合、これを検出する回
路としてウォッチドッグタイマが知られている。このウ
ォッチドッグタイマは、所定の基準クロックをカウント
して一定時間ごとにオーバーフローする事により、マイ
クロコンピュータへの割り込みまたはリセット信号を発
生するインターバルタイマで、プログラムでクリアする
事ができる。
【0005】即ち、プログラム実行における一連の処理
が所定時間内に終了しない場合にこの状態をプログラム
実行異常とみなして内部リセット信号を発生したり、割
り込み信号を発生する機能を持った回路である。従来に
おけるウォッチドッグタイマの構成を図3に示す。
【0006】図3において、基準クロックを入力として
カウントする所定ビット長のインターバルタイマ(ウォ
ッチドッグタイマ)1により、所定時間カウント後に発
生するオーバーフロー信号50がリセット信号または割
り込み信号となり、マイクロコンピュータにリセットま
たは割り込みがかかる。
【0007】また、前記インターバルタイマ1は、カウ
ント動作中に、クリア命令によりクリアする事もでき
る。従って、図4のプログラムの流れ70に示すよう
に、あらかじめプログラム処理ルーチン中にインターバ
ルタイマ(ウォッチドッグタイマ)1がオーバーフロー
するより短い周期でクリア命令を適宜配置しておく事に
より、プログラム60が正しい処理ルーチンを実行して
いる場合には、クリア命令によりインターバルタイマ1
がクリアされオーバーフロー信号50が発生しないが、
もし何らかの原因でプログラムが暴走し、図4の(1)
のように無限ループに入った場合にはクリア命令が実行
されないため、オーバーフローし、リセットまたは割り
込みが発生して異常状態から抜け出す事ができる。実際
のプログラム処理ルーチンは図4に示すよりもっと複雑
で途中でサブルーピンや周辺機能からの割り込み処理ル
ーチンなどに分岐するので、これらの分岐処理時間も考
慮してクリア命令を配置する必要があるが、本筋を離れ
るので簡単のため省略した。
【0008】
【発明が解決しようとする課題】前述した従来のウォッ
チドッグタイマ1では、図4で示した(1)のように、
クリア命令を含まない無限ループに入った場合には有効
であるが、(2)のようにクリア命令を含む部分のプロ
グラムで無限ループに入った場合にはウォッチドッグタ
イマ1がクリアされるため、暴走状態にも関わらず、無
限ループから抜け出す事が出来ないという欠点がある。
【0009】本発明の目的は、前記欠点を解決し、ウォ
ッチドッグタイマをクリアする命令自身を含む部分で、
無限ループにはいった場合にもこれを検出する事ができ
るようにしたマイクロコンピュータを提供することにあ
る。
【0010】
【課題を解決するための手段】本発明のマイクロコンピ
ュータに内蔵する暴走検出回路の構成は、所定の基準ク
ロックを入力として所定クロック数カウント後にリセッ
ト信号又は割り込み信号を発生しかつクリア命令により
カウンタ値がクリアされるインターバルタイマと、プロ
グラムカウンタの内容をキャプチャ信号に基づきキャプ
チャする2組のキャプチャレジスタと、前記クリア命令
の実行時に前記プラグラムカウンタのキャプチャ信号を
前記2組のキャプチャジスタに対し交互に出力する手段
と、前記2組のキャプチャジスタの内容を比較し一致検
出信号を発生する比較回路とを備えていることを特徴と
する。
【0011】
【実施例】図1は本発明の第1の実施例のマイクロコン
ピュータを示すブロック図である。
【0012】図1において、本実施例は、インターバル
タイマ1が所定の基準クロックにもとづきカウント動作
を行い、所定カウント数を越えるとオーバーフロー23
を発生する所定ビット長のインターバルタイマで、イン
ターバルタイマクリア命令実行時に発生するクリアパル
スによりカウント値が
〔0〕にクリアされる。
【0013】トグル・フリップフロップ2は、前記イン
ターバルタイマクリア命令実行時に発生するクリアパル
スを入力として、出力QとQ(反転値)とからキャプチ
ャ信号20,22を出力する。
【0014】第一キャプチャレジスタ4はトグル・フリ
ップフロップ2のQ出力が
〔0〕から〔1〕への変化時
にプログラムカウンタ3の内容をラッチするレジスタ
で、第二キャプチャレジスタ5はトグル・フリップフロ
ップ2のQ(反転値)出力が
〔0〕から〔1〕への変化
時にプログラムカウンタ3の内容をラッチするレジスタ
である。
【0015】本実施例では、プログラムカウンタ3、第
一キャプチャレジスタ4、第二キャプチャレジスタ5の
いずれも16ビット長とする。
【0016】比較回路6は第一キャプチャレジスタ4の
内容と第二キャプチャレジスタ5の内容とを全ビット比
較し、一致した場合に一致検出パルス21を発生する。
【0017】オアゲート7は、インターバルタイマ1の
オーバーフロー23が発生するか、または比較回路6の
一致検出パルス21が発生した場合にマイクロコンピュ
ータのリセット信号または割り込み信号24を出力す
る。
【0018】また、マイクロコンピュータへのリセット
信号により、インターバルタイマ1はカウント値が
〔0〕にクリアさ、トグル・フリップフロップ2のQ出
力は
〔0〕に、Q(反転値)出力は〔1〕にイニシャラ
イズされ、更にリセット時は第一キャプチャレジスタ4
と第二キャプチャレジスタ5との内容にかかわらず、比
較回路6は
〔0〕を出力し、一致検出パルス21は出力
されない。
【0019】次に、図4に基づいて、プログラムの実行
について説明する。
【0020】説明を簡単にするために、図4中の矢印で
示したようなプログラム実行の流れで一連の処理を繰り
返すとする。この時、図1のインターバルタイマ1のオ
ーバーフロー時間T以内の時間間隔でインターバルタイ
マ1のクリア命令を置く。たとえば、図4のように正常
時には、A番地→B番地→C番地→D番地をこの順に各
間隔が時間T以内にアクセスするような場合には、各番
地にインターバルタイマクリア命令を置く。
【0021】マイクロコンピュータへのリセット入力に
より、インターバルタイマ1はクリアされる。マイクロ
コンピュータが正常シーケンスでプログラムを実行する
場合は、A番地のインターバルタイマ1のクリア命令を
実行すると、インターバルタイマ1がクリアされると同
時にトグル・フリップフロップ2のQ出力が
〔0〕から
〔1〕に変化するため、第一キャプチャレジスタ4にプ
ログラムカウンタ3の内容であるA番地データがキャプ
チャされる。
【0022】一方トグル・フリップフロップ2のQ(反
転値)出力は〔1〕から
〔0〕への変化のため、第二キ
ャプチャレジスタ5にはプログラムカウンタ3の内容は
キャプチャされず、従って比較回路6は一致検出せず、
〔0〕出力のままである。
【0023】次に、時間間隔T以内にB番地を実行する
とインターバルタイマ1はクリアされ、ドグル・フリッ
プフロップ2のQ(反転値)出力が
〔0〕から〔1〕に
変化するため、プログラムカウンタ3の内容であるB番
地データが第二キャプチャレジスタ5にラッチされる
が、第一キャプチャレジスタ4には前回のA番地データ
がラッチされたままであるため、比較回路6で一致検出
されず、ゲート7を介しリセット信号は発生しない。
【0024】以降、正常にC番地→D番地ま実行する
と、第一及び第二キャプチャレジスタ5に交互にプログ
ラムカウンタの内容がラッチされるため、比較回路6の
一致検出パルス21は発生しない。その後、プログラム
の先頭に戻ったのち、A番地のカウンタクリア命令を実
行し、以上の動作が繰り返される。
【0025】次に、A番地及びB番地実行後に、図4に
示す(1)のような無限ループに入った場合について説
明する。この場合、時間T以内にクリア命令が実行され
ないため、インターバルタイマ1のオーバーフロー23
により、ORゲート7を介しリセット信号または割り込
み信号24が発生し、異常検出する。
【0026】また、従来例の欠点であった図4の(2)
のような無限ループに入った場合には、インターバルタ
イマ1のオーバーフロー23は発生しないが、一回目の
C番地実行時に第一キャプチャレジスタ4にC番地デー
タがキャプチャされ、2回目のC番地実行時に第二キャ
プチャレジスタ5にC番地データがキャプチャされるこ
とにより、比較回路6が一致検出パルス21を発生する
ことにより、ORゲート7を介してリセット信号または
割り込み信号24が発生し異常検出される。
【0027】図2は本発明の第2の実施例のマイクロコ
ンピュータを示すブロック図である。
【0028】図2において、本実施例は、比較回路8の
一致検出パルス21出力をカウントするカウンタ9を追
加した第2の実施例である。
【0029】カウンタ9は、比較回路8からの一致検出
パルス21をカウントし、オーバーフロー25が発生す
ると、ORゲート7を介してリセット信号または割り込
み信号24を発生する。また、比較回路8からの不一致
を示す信号により、カウンタ9の内容はクリアされる。
【0030】従って、例えばカウンタ9が、比較回路8
からの一致検出パルス21が入力する毎にカウントアッ
プする4ビットのバイナリカウンタとすると、図4の
(2)に示すループに入った場合には、16回目の一致
検出パルス21が入力したときにオーバーフロー信号が
発生し、ORゲート7を介してリセット信号または割り
込み信号24が発生することになる。
【0031】即ち、前記第1の実施例では、実際には同
一アドレスのクリア命令を続けて実行した時点でプログ
ラムの暴走と判断する場合に適しているのに対し、第2
の実施例では、複数回続けて実行した場合に異常と判断
する場合に適している。更に、カウンタ9をプログラマ
ブルなカウンタ構成にして、所望のカウント値をカウン
トした時点でオーバーフロー25が発生するようにすれ
ば、より多くのシステムに対応したプログラム設計が可
能となる。
【0032】尚、以上の各実施例はプログラムカウンタ
3は、16ビット長で示したが、これに限定されないこ
とはいうまでもない。またインターバルタイマ1の基準
クロックも複数種類から選択できるようにしてもよい。
【0033】
【発明の効果】以上説明したように、本発明はインター
バルタイマ(ウォッチドッグタイマ)をクリアする命令
を実行したときに、プログラムカウンタの内容をキャプ
チャするキャプチャレジスタを2組備え、クリア命令実
行時に各々のキャプチャレジスタに交互にプログラムカ
ウンタの内容をキャプチャし、2組のキャプチャジスタ
の内容を比較して一致検出することにより、インターバ
ルタイマのクリア命令自身を含むプログラム異常ループ
をも検出することができ、従来の単純なウォッチドッグ
タイマに比べ、プログラムの実行異常を確実に検出でき
る効果がある。
【図面の簡単な説明】
【図1】本発明の第1の実施例のマイクロコンピュータ
を示すブロック図である。
【図2】本発明の第2の実施例を示すブロック図であ
る。
【図3】従来のウォッチドッグタイマを説明するブロッ
ク図である。
【図4】従来のウォッチドッグタイマによる暴走検出及
び各実施例を説明するフロー図である。
【符号の説明】
1 インターバルタイマ 2 トグル・フリップフロップ 3 プログラムカウンタ 4 第一キャプチャレジスタ 5 第二キャプチャレジスタ 6,8 比較回路 7 ORゲート 9 カウンタ 20,22 キャプチャ信号 21 一致検出パルス 23,25 オーバーフロー 24 リセット信号又は割り込み信号 50 オーバーフロー信号 60 プログラム 70 プログラムの流れ

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】 所定の基準クロックを入力として所定ク
    ロック数カウント後にリセット信号又は割り込み信号を
    発生し、かつクリア命令によりカウンタ値がクリアされ
    るインターバルタイマと、プログラムカウンタの内容を
    キャプチャ信号に基づきキャプチャする2組のキャプチ
    ャレジスタと、前記クリア命令の実行時に前記プラグラ
    ムカウンタのキャプチャ信号を前記2組のキャプチャジ
    スタに対し交互に出力する手段と、前記2組のキャプチ
    ャジスタの内容を比較し一致検出信号を発生する比較回
    路とを備えた暴走検出回路を設けた事を特徴とするマイ
    クロコンピュータ。
  2. 【請求項2】 交互に出力する手段が、クリア命令の実
    行時に発生するパルスを入力とするトグルフリップフロ
    ップである請求項1記載のマイクロコンピュータ。
JP3257341A 1991-10-04 1991-10-04 マイクロコンピュータ Expired - Lifetime JP2693885B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3257341A JP2693885B2 (ja) 1991-10-04 1991-10-04 マイクロコンピュータ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3257341A JP2693885B2 (ja) 1991-10-04 1991-10-04 マイクロコンピュータ

Publications (2)

Publication Number Publication Date
JPH05100876A JPH05100876A (ja) 1993-04-23
JP2693885B2 true JP2693885B2 (ja) 1997-12-24

Family

ID=17305024

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3257341A Expired - Lifetime JP2693885B2 (ja) 1991-10-04 1991-10-04 マイクロコンピュータ

Country Status (1)

Country Link
JP (1) JP2693885B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6030689B2 (ja) * 2015-04-02 2016-11-24 京楽産業.株式会社 遊技機

Also Published As

Publication number Publication date
JPH05100876A (ja) 1993-04-23

Similar Documents

Publication Publication Date Title
US4956807A (en) Watchdog timer
JPH0795291B2 (ja) ウオツチドツグタイマ
JP2693885B2 (ja) マイクロコンピュータ
US5233573A (en) Digital data processor including apparatus for collecting time-related information
US5325341A (en) Digital timer apparatus and method
JPH0320776B2 (ja)
EP0660230B1 (en) Improvements in or relating to program counters
US6101571A (en) Circuit configuration for generating an interrupt signal for a microprocessor
JPH0743647B2 (ja) データ処理装置における命令ループ捕捉機構
JPH0573361A (ja) マイクロコンピユータ
JPH06187256A (ja) バストレース機構
SU1363221A1 (ru) Устройство дл отладки программ
JPH04332056A (ja) マイクロコンピュータ
SU1363210A1 (ru) Сигнатурный анализатор
JP2516711B2 (ja) ウォッチドッグタイマ装置
SU1061144A1 (ru) Устройство дл управлени прерыванием программ
JPH0736742A (ja) プログラム動作監視回路
KR100256230B1 (ko) 시스템감시기능을가진타이머장치
SU1617442A1 (ru) Устройство дл контрол хода программ
RU2006920C1 (ru) Устройство приоритетных прерываний
SU1387000A1 (ru) Устройство дл формировани признака команды
JPS62197838A (ja) ウオツチ・ドツグ・タイマ制御装置
SU1383373A1 (ru) Устройство дл прерывани при отладке программ
JPH04107748A (ja) マイクロコンピュータ
SU1163326A1 (ru) Устройство дл формировани диагностической информации работы программ

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: 19970812