JPH04332056A - マイクロコンピュータ - Google Patents
マイクロコンピュータInfo
- Publication number
- JPH04332056A JPH04332056A JP3102334A JP10233491A JPH04332056A JP H04332056 A JPH04332056 A JP H04332056A JP 3102334 A JP3102334 A JP 3102334A JP 10233491 A JP10233491 A JP 10233491A JP H04332056 A JPH04332056 A JP H04332056A
- Authority
- JP
- Japan
- Prior art keywords
- clear
- signal
- program
- microcomputer
- cleared
- 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.)
- Pending
Links
- 230000002401 inhibitory effect Effects 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 6
- 230000005856 abnormality Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 4
- 230000002159 abnormal effect Effects 0.000 description 3
- 230000007274 generation of a signal involved in cell-cell signaling Effects 0.000 description 3
- 238000000034 method Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 230000000630 rising effect Effects 0.000 description 2
- 230000010365 information processing Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000007257 malfunction Effects 0.000 description 1
Landscapes
- Debugging And Monitoring (AREA)
- Microcomputers (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【0001】
【産業上の利用分野】本発明はマイクロコンピュータに
関する。
関する。
【0002】
【従来の技術】マイクロプロセッサあるいは1チップマ
イクロコンピュータ等を含むマイクロコンピュータにお
いては、年々集積度の向上に伴い、アドレッシング可能
なプログラムメモリ空間あるいは内蔵プログラムメモリ
容量が増大し、また、さまざまな周辺機能内蔵による時
分割制御など、ますます複雑な制御を行うことが可能と
なってきている。また、応用分野も、これに伴ない家電
など身近な民生分野から、情報処理装置,通信機器,自
動車のエンジンコントロールなど、多岐に亘っており、
これらの制御の中枢となるマイクロコンピュータのプロ
グラムが暴走するなどの異常動作が発生した場合には、
これをいち早く検出する事は非常に重要になってきてい
る。
イクロコンピュータ等を含むマイクロコンピュータにお
いては、年々集積度の向上に伴い、アドレッシング可能
なプログラムメモリ空間あるいは内蔵プログラムメモリ
容量が増大し、また、さまざまな周辺機能内蔵による時
分割制御など、ますます複雑な制御を行うことが可能と
なってきている。また、応用分野も、これに伴ない家電
など身近な民生分野から、情報処理装置,通信機器,自
動車のエンジンコントロールなど、多岐に亘っており、
これらの制御の中枢となるマイクロコンピュータのプロ
グラムが暴走するなどの異常動作が発生した場合には、
これをいち早く検出する事は非常に重要になってきてい
る。
【0003】従来、何らかの外的要因あるいは当初予期
しなかったような特殊条件などにより、プログラムが無
限ループに入るなど暴走した場合、これを検出する回路
としてはウォッチドッグタイマが知られている。ウォッ
チドッグタイマは、所定のクロックソースをカウントし
て、一定時間ごとにオーバーフローすることにより、マ
イクロコンピュータに対する割込み、またはリセット信
号を発生するインターバルタイマで、プログラムにより
クリアすることができる。すなわちプログラム実行にお
ける一連の処理が所定時間内に終了しない場合に、この
状態をプログラム実行異常とみなして割り込み信号を発
生したり、内部リセット信号を発生する機能を持った回
路である。従来におけるウォッチドッグタイマの構成を
図4に示す。
しなかったような特殊条件などにより、プログラムが無
限ループに入るなど暴走した場合、これを検出する回路
としてはウォッチドッグタイマが知られている。ウォッ
チドッグタイマは、所定のクロックソースをカウントし
て、一定時間ごとにオーバーフローすることにより、マ
イクロコンピュータに対する割込み、またはリセット信
号を発生するインターバルタイマで、プログラムにより
クリアすることができる。すなわちプログラム実行にお
ける一連の処理が所定時間内に終了しない場合に、この
状態をプログラム実行異常とみなして割り込み信号を発
生したり、内部リセット信号を発生する機能を持った回
路である。従来におけるウォッチドッグタイマの構成を
図4に示す。
【0004】図4において、インターバルタイマ5は、
クロック107を入力してカウントする所定ビット長の
ウォッチドッグタイマで、オーバーフロー信号109は
、割り込み信号またはリセット信号として出力され、マ
イクロコンピュータに対して割り込みまたはリセットが
かかる。また、前記インターバルタイマ5は、カウント
動作中に、クリア命令108が入力されるとクリアされ
る。従って、図5(a)および(b)のプログラムの流
れ図に示されるように、プログラム処理ルーチン中に、
インターバルタイマ(ウォッチドッグタイマ)がオーバ
ーフローするより短い周期で、クリア命令301,30
2,303および304を適宜配置しておくことにより
、プログラムが正しい処理ルーチンで実行されている場
合には、これらのクリア命令によりインターバルタイマ
がクリアされ、オーバーフローが発生しないが、もし何
らかの原因でプログラムが暴走し、図5(b)の■のよ
うに無限ループに入った場合には、クリア命令が実行さ
れないためにオーバーフローし、割り込みまたはリセッ
トが発生して異常状態から抜け出すことができる。 実際のプログラム処理ルーチンは、図5(b)に示され
る処理ルーチン例よりも複雑であり、途中でサブルーチ
ンや周辺機能からの割り込み処理ルーチンなどに分岐さ
れているので、これらの分岐処理時間も考慮して、クリ
ア命令を配置する必要があるが、本筋を離れるので簡単
のために省略した。
クロック107を入力してカウントする所定ビット長の
ウォッチドッグタイマで、オーバーフロー信号109は
、割り込み信号またはリセット信号として出力され、マ
イクロコンピュータに対して割り込みまたはリセットが
かかる。また、前記インターバルタイマ5は、カウント
動作中に、クリア命令108が入力されるとクリアされ
る。従って、図5(a)および(b)のプログラムの流
れ図に示されるように、プログラム処理ルーチン中に、
インターバルタイマ(ウォッチドッグタイマ)がオーバ
ーフローするより短い周期で、クリア命令301,30
2,303および304を適宜配置しておくことにより
、プログラムが正しい処理ルーチンで実行されている場
合には、これらのクリア命令によりインターバルタイマ
がクリアされ、オーバーフローが発生しないが、もし何
らかの原因でプログラムが暴走し、図5(b)の■のよ
うに無限ループに入った場合には、クリア命令が実行さ
れないためにオーバーフローし、割り込みまたはリセッ
トが発生して異常状態から抜け出すことができる。 実際のプログラム処理ルーチンは、図5(b)に示され
る処理ルーチン例よりも複雑であり、途中でサブルーチ
ンや周辺機能からの割り込み処理ルーチンなどに分岐さ
れているので、これらの分岐処理時間も考慮して、クリ
ア命令を配置する必要があるが、本筋を離れるので簡単
のために省略した。
【0005】
【発明が解決しようとする課題】上述した従来のマイク
ロコンピュータにおけるウォッチドッグタイマの対暴走
機能は、図5(b)に示される■のように、クリア命令
を含まない無限ループに入った場合には有効であるが、
図5(b)の■のようにクリア命令を含む部分のプログ
ラムで無限ループに入った場合には、ウォッチドッグタ
イマがクリアされるため、暴走状態にもかかわらず無限
ループから抜け出すことが出来ないという欠点がある。
ロコンピュータにおけるウォッチドッグタイマの対暴走
機能は、図5(b)に示される■のように、クリア命令
を含まない無限ループに入った場合には有効であるが、
図5(b)の■のようにクリア命令を含む部分のプログ
ラムで無限ループに入った場合には、ウォッチドッグタ
イマがクリアされるため、暴走状態にもかかわらず無限
ループから抜け出すことが出来ないという欠点がある。
【0006】
【課題を解決するための手段】本発明のマイクロコンピ
ュータは、所定のクロックソースを入力として、所定ク
ロック数カウント後にリセット信号または割り込み信号
を発生し、所定のクリア信号によりカウンタ値がクリア
されるインターバルタイマと、所定の第1のクリア命令
実行ならびに第2のクリア命令実行が交互に実行された
ときに前記クリア信号を発生し、同一のクリア命令が続
けて実行されても前記クリア信号を発生しないクリア信
号発生回路とを有している。
ュータは、所定のクロックソースを入力として、所定ク
ロック数カウント後にリセット信号または割り込み信号
を発生し、所定のクリア信号によりカウンタ値がクリア
されるインターバルタイマと、所定の第1のクリア命令
実行ならびに第2のクリア命令実行が交互に実行された
ときに前記クリア信号を発生し、同一のクリア命令が続
けて実行されても前記クリア信号を発生しないクリア信
号発生回路とを有している。
【0007】
【実施例】次に本発明について図面を参照して説明する
。図1は本発明の一実施例を示すブロック図である。 図1において、インターバルタイマ4は、所定のクロッ
ク106に基づきカウント動作を行い、所定カウント数
を越えるとオーバーフロー信号107を発生する所定ビ
ット長のインターバルタイマである。ラッチ2は、S端
子に入力されるクリア命令(1)101によってセット
され、R端子に入力されるクリア命令(2)102によ
ってクリアされて、ラッチ2の状態がセットであるかク
リアであるかを示す出力信号104をQ端子より出力す
る。パルス発生回路3は、ラッチ2のQ端子より出力さ
れる出力信号104の立ち上がりと立ち下がりのエッジ
を検出して、インターバルタイマ4に対するクリア信号
105を生成して出力する。そして、これらのラッチ2
およびパルス発生回路3により、クリア信号発生回路1
が形成されている。
。図1は本発明の一実施例を示すブロック図である。 図1において、インターバルタイマ4は、所定のクロッ
ク106に基づきカウント動作を行い、所定カウント数
を越えるとオーバーフロー信号107を発生する所定ビ
ット長のインターバルタイマである。ラッチ2は、S端
子に入力されるクリア命令(1)101によってセット
され、R端子に入力されるクリア命令(2)102によ
ってクリアされて、ラッチ2の状態がセットであるかク
リアであるかを示す出力信号104をQ端子より出力す
る。パルス発生回路3は、ラッチ2のQ端子より出力さ
れる出力信号104の立ち上がりと立ち下がりのエッジ
を検出して、インターバルタイマ4に対するクリア信号
105を生成して出力する。そして、これらのラッチ2
およびパルス発生回路3により、クリア信号発生回路1
が形成されている。
【0008】また、マイクロコンピュータの処理開始の
ためのリセットの場合、またはインターバルタイマ4が
オーバーフローして、割り込みが発生した場合には、リ
セット信号/割り込み信号103の入力に対応して、ラ
ッチ2はクリアされ初期化される。
ためのリセットの場合、またはインターバルタイマ4が
オーバーフローして、割り込みが発生した場合には、リ
セット信号/割り込み信号103の入力に対応して、ラ
ッチ2はクリアされ初期化される。
【0009】次に、図2(a)および(b)と、図3(
a),(b),(c)および(d)に基づいてプログラ
ムの実行について説明する。説明を簡単にするために、
図2(a)の矢印で示したようなプログラム実行の流れ
で、一連の処理を繰り返えすものとする。この時、図1
におけるインターバルタイマ4のオーバーフロー時間T
以内の時間間隔で、クリア命令(1)201とクリア命
令(2)202とを置く。例えば、図2(a)のように
、正常時には、A番地→B番地→C番地→D番地→A番
地を、この順に各間隔が前記時間T以内にアクセスする
ような場合には、図2(b)に示されるように、A番地
とC番地にクリア命令(1)201および203を置き
、B番地とD番地にクリア命令(2)202および20
4を置く。マイクロコンピュータに対するリセット入力
により、リセット信号103がラッチ2に入力されイニ
シャライズされる。また、リセット信号103によりイ
ンターバル4のカウント値はすべてクリアされる。 マイクロコンピュータが正常動作して、プログラムを正
常のシーケンスで実行する場合には、まずA番地に置い
たクリア命令(1)201を実行すると、ラッチ2のQ
端子の出力信号104が“1”にセットされ、出力信号
104の立ち上がりがパルス発生回路3により検出され
てクリア信号105を発生し、インターバル4がクリア
される。次に、インターバルタイマ4がオーバーフロー
するまでの時間T以内にB番地に置かれたクリア命令(
2)202を実行することにより、ラッチ2の出力信号
104が“0”にクリアされ、ラッチ2の出力信号10
4の立ち下がりが、パルス発生回路3により検出されて
、インターバル4に対するクリア信号105が発生され
る。同様に、C番地,D番地,A番地…と、順次上述の
動作が繰り返される。
a),(b),(c)および(d)に基づいてプログラ
ムの実行について説明する。説明を簡単にするために、
図2(a)の矢印で示したようなプログラム実行の流れ
で、一連の処理を繰り返えすものとする。この時、図1
におけるインターバルタイマ4のオーバーフロー時間T
以内の時間間隔で、クリア命令(1)201とクリア命
令(2)202とを置く。例えば、図2(a)のように
、正常時には、A番地→B番地→C番地→D番地→A番
地を、この順に各間隔が前記時間T以内にアクセスする
ような場合には、図2(b)に示されるように、A番地
とC番地にクリア命令(1)201および203を置き
、B番地とD番地にクリア命令(2)202および20
4を置く。マイクロコンピュータに対するリセット入力
により、リセット信号103がラッチ2に入力されイニ
シャライズされる。また、リセット信号103によりイ
ンターバル4のカウント値はすべてクリアされる。 マイクロコンピュータが正常動作して、プログラムを正
常のシーケンスで実行する場合には、まずA番地に置い
たクリア命令(1)201を実行すると、ラッチ2のQ
端子の出力信号104が“1”にセットされ、出力信号
104の立ち上がりがパルス発生回路3により検出され
てクリア信号105を発生し、インターバル4がクリア
される。次に、インターバルタイマ4がオーバーフロー
するまでの時間T以内にB番地に置かれたクリア命令(
2)202を実行することにより、ラッチ2の出力信号
104が“0”にクリアされ、ラッチ2の出力信号10
4の立ち下がりが、パルス発生回路3により検出されて
、インターバル4に対するクリア信号105が発生され
る。同様に、C番地,D番地,A番地…と、順次上述の
動作が繰り返される。
【0010】次に、A番地及びB番地実行後に、図2(
b)に示される■のような無限ループに入った場合につ
いて説明する。A番地及びB番地実行後には、ラッチ2
の出力信号104は“0”になっている。この状態にお
いて、図2(b)の■のような無限ループに入った場合
に、時間Tを経過してもいずれのクリア命令も実行され
ないため、インターバル4のオーバーフローにより、割
り込みまたはリセットが発生し、異常動作が検出される
。
b)に示される■のような無限ループに入った場合につ
いて説明する。A番地及びB番地実行後には、ラッチ2
の出力信号104は“0”になっている。この状態にお
いて、図2(b)の■のような無限ループに入った場合
に、時間Tを経過してもいずれのクリア命令も実行され
ないため、インターバル4のオーバーフローにより、割
り込みまたはリセットが発生し、異常動作が検出される
。
【0011】次に、図3(a),(b),(c)および
(d)に示されるタイミング図を用いて、図2(b)の
■のような無限ループに入った場合について説明する。 A番地,B番地,C番地と正常なシーケンスを実行した
後に、プログラムの実行に異常が起こり、C番地を含ん
だ■の無限ループに入った場合、従来のウォッチドッグ
タイマでは、C番地に置いたクリア命令が実行されて、
動作異常が検出されなかった。
(d)に示されるタイミング図を用いて、図2(b)の
■のような無限ループに入った場合について説明する。 A番地,B番地,C番地と正常なシーケンスを実行した
後に、プログラムの実行に異常が起こり、C番地を含ん
だ■の無限ループに入った場合、従来のウォッチドッグ
タイマでは、C番地に置いたクリア命令が実行されて、
動作異常が検出されなかった。
【0012】本実施例においては、同じ様にプログラム
の実行に異常が起きた場合、図3(a),(b),(c
)および(d)に示されるように、直前に行ったC番地
のクリア命令(1)203によるクリア信号(1)によ
ってラッチ2の出力信号104は“1”にセットされて
いる。プログラムの異常なシーケンスにおいては、この
状態においてC番地の命令を何度も繰り返すことになる
。即ち、ラッチ2の出力信号104を“1”にセットす
る命令を実行する。しかしながら、ラッチ2はすでに“
1”にセットされているため、ラッチ2の出力信号10
4の状態は変化せず、図3(d)に示されるように、パ
ルス発生回路3からはインターバルタイマ4に対するク
リア信号105は発生されない。従って、インターバル
タイムは、図3(a)および(d)に示されるように、
時間T以内においてクリアされないため、オーバーフロ
ーが発生し、オーバーフロー信号107が出力されて、
動作異常が検出される。
の実行に異常が起きた場合、図3(a),(b),(c
)および(d)に示されるように、直前に行ったC番地
のクリア命令(1)203によるクリア信号(1)によ
ってラッチ2の出力信号104は“1”にセットされて
いる。プログラムの異常なシーケンスにおいては、この
状態においてC番地の命令を何度も繰り返すことになる
。即ち、ラッチ2の出力信号104を“1”にセットす
る命令を実行する。しかしながら、ラッチ2はすでに“
1”にセットされているため、ラッチ2の出力信号10
4の状態は変化せず、図3(d)に示されるように、パ
ルス発生回路3からはインターバルタイマ4に対するク
リア信号105は発生されない。従って、インターバル
タイムは、図3(a)および(d)に示されるように、
時間T以内においてクリアされないため、オーバーフロ
ーが発生し、オーバーフロー信号107が出力されて、
動作異常が検出される。
【0013】
【発明の効果】以上説明したように、本発明はインター
バルタイマ(ウォッチドッグタイマ)をクリアする際に
、第1のクリア命令と第2のクリア命令が交互に実行さ
れないと、インターバルタイマがクリアされないように
するために、従来のウォッチドッグタイマに対して、前
回のクリア命令がどれであったかを記憶するためのラッ
チと、ラッチの内容の変化によりクリア信号を発生する
パルス発生回路とを付加することにより、プログラムの
無限ループを、より確実に検出することができるという
効果がある。
バルタイマ(ウォッチドッグタイマ)をクリアする際に
、第1のクリア命令と第2のクリア命令が交互に実行さ
れないと、インターバルタイマがクリアされないように
するために、従来のウォッチドッグタイマに対して、前
回のクリア命令がどれであったかを記憶するためのラッ
チと、ラッチの内容の変化によりクリア信号を発生する
パルス発生回路とを付加することにより、プログラムの
無限ループを、より確実に検出することができるという
効果がある。
【図1】本発明の一実施例を示すブロック図である。
【図2】本実施例におけるプログラムの流れを示す図で
ある。
ある。
【図3】本実施例における信号のタイミング図である。
【図4】従来例を示すブロック図である。
【図5】従来例におけるプログラムの流れを示す図であ
る。
る。
1 クリア信号発生回路
2 ラッチ
3 パルス発生回路
4,5 インターバルタイマ
Claims (1)
- 【請求項1】 所定のクロックソースを入力として、
所定クロック数カウント後にリセット信号または割り込
み信号を発生し、所定のクリア信号によりカウンタ値が
クリアされるインターバルタイマと、所定の第1のクリ
ア命令ならびに第2のクリア命令が交互に実行されたと
きに前記クリア信号を発生し、同一のクリア命令が続け
て実行されても前記クリア信号を発生しないクリア信号
発生回路と、を備えることを特徴とするマイクロコンピ
ュータ。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP3102334A JPH04332056A (ja) | 1991-05-08 | 1991-05-08 | マイクロコンピュータ |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP3102334A JPH04332056A (ja) | 1991-05-08 | 1991-05-08 | マイクロコンピュータ |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH04332056A true JPH04332056A (ja) | 1992-11-19 |
Family
ID=14324620
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP3102334A Pending JPH04332056A (ja) | 1991-05-08 | 1991-05-08 | マイクロコンピュータ |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH04332056A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2015126807A (ja) * | 2013-12-27 | 2015-07-09 | 株式会社三共 | 遊技機 |
-
1991
- 1991-05-08 JP JP3102334A patent/JPH04332056A/ja active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2015126807A (ja) * | 2013-12-27 | 2015-07-09 | 株式会社三共 | 遊技機 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US4763296A (en) | Watchdog timer | |
| US5367550A (en) | Break address detecting circuit | |
| JPH03288942A (ja) | マイクロコンピュータにおけるプログラム暴走検出方法 | |
| US5541943A (en) | Watchdog timer lock-up prevention circuit | |
| JPH0320776B2 (ja) | ||
| JP3714141B2 (ja) | 電子制御システムの暴走監視装置 | |
| JPH01140350A (ja) | マイクロコンピュータのプログラム暴走検出回路 | |
| JPH04107748A (ja) | マイクロコンピュータ | |
| JP2693885B2 (ja) | マイクロコンピュータ | |
| JPH0573361A (ja) | マイクロコンピユータ | |
| JP2557785Y2 (ja) | シングルチップマイクロコンピュータ | |
| JPS5916054A (ja) | マイクロ・プロセツサ | |
| JP2516711B2 (ja) | ウォッチドッグタイマ装置 | |
| KR960018893A (ko) | 워치독 타이머 기능을 갖는 콘트롤러 | |
| JP2712730B2 (ja) | エバリュエーションチップ | |
| JPH0465407B2 (ja) | ||
| JPH03255546A (ja) | マイクロコンピュータのプログラム暴走検出回路 | |
| SU1552186A2 (ru) | Устройство дл контрол хода программ | |
| JPH04205152A (ja) | 制御装置の監視装置 | |
| JPH0436841A (ja) | マイクロコンピュータ | |
| JP2631541B2 (ja) | プログラマブルコントローラ | |
| JPH0226245B2 (ja) | ||
| JPS63118948A (ja) | シングルチツプマイクロコンピユ−タ | |
| JPS5844261B2 (ja) | サブル−チン動作障害検出装置 | |
| JPS61175736A (ja) | プログラム評価用マイクロコンピユ−タ |