JPH11306047A - 暴走検出装置 - Google Patents

暴走検出装置

Info

Publication number
JPH11306047A
JPH11306047A JP10115243A JP11524398A JPH11306047A JP H11306047 A JPH11306047 A JP H11306047A JP 10115243 A JP10115243 A JP 10115243A JP 11524398 A JP11524398 A JP 11524398A JP H11306047 A JPH11306047 A JP H11306047A
Authority
JP
Japan
Prior art keywords
key data
collation
cpu
register
key
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
Application number
JP10115243A
Other languages
English (en)
Inventor
Kazuji Kurata
和司 蔵田
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP10115243A priority Critical patent/JPH11306047A/ja
Publication of JPH11306047A publication Critical patent/JPH11306047A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【課題】 CPUが暴走したことを確実に検出するとと
もにCPUがプログラム処理の実行を誤った場合にその
誤動作を直ちに検出する。 【解決手段】 鍵データ生成回路3は、ウォッチドッグ
タイマのカウント値を鍵データとし、CPU1が鍵デー
タを順次読み出すと、鍵データ記憶回路5に鍵レジスタ
6a、6b、6cの順に記憶される。CPU1がデータ
を鍵データ照合回路4のN番目の照合レジスタに書き込
むと、N番目の鍵レジスタから鍵データが鍵データ照合
回路4にロードされて、書き込まれた照合レジスタのデ
ータと照合され、照合結果が不一致のとき直ちに異常検
出信号MATCHERRがCPU1に入力される。また、照合回
数レジスタ9に設定された照合回数の回数連続して照合
結果が一致したときにクリアパルス12を出力するよう
にしたことにより、誤ってウォッチドッグタイマがリセ
ットされるのを防止できる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、CPUの暴走を検
出し、CPUに対して暴走が生じたことを通知する暴走
検出装置に関する。
【0002】
【従来の技術】従来より、一定時間以内にCPUがクリ
ア動作を行わなければ、異常検出信号をCPUに出力す
るウォッチドッグタイマが用いられている。図31は第
1の従来例の暴走検出装置を示すブロック図である。こ
の第1の従来例の暴走検出装置は、アドレスデコーダ2
およびウォッチドッグタイマ10により構成される。C
PU1は、ウォッチドッグタイマ10をクリアするため
に、クリアのために割り付けられているアドレスに任意
のデータの書き込みを行う。CPU1より出力されたア
ドレス及びライト信号は、アドレスデコーダ2に入力さ
れ、アドレスのデコード結果がクリアアドレスを示し、
かつライト信号がイネーブルである場合に、アドレスデ
コーダ2がウォッチドッグタイマ10へクリアパルスを
出力する。このクリア動作を、CPU1がウォッチドッ
グタイマ10において設定されている一定時間以内に行
わなかった場合、ウォッチドッグタイマ10はCPU1
へ暴走検出信号を出力する。
【0003】図32は第2の従来例の暴走検出装置を示
すブロック図である。この第2の従来例の暴走検出装置
は、アドレスデコーダ2,クリアパルス発生回路11お
よびウォッチドッグタイマ10により構成される。これ
は、ウォッチドッグタイマ10をクリアするためにあら
かじめ決めたデータパターンをクリアパルス発生回路1
1に設定しておくものである。CPU1からクリアパル
ス発生回路11に対応するアドレスが出力されたとき、
アドレスデコーダ2はデコード信号をクリアパルス発生
回路11に出力する。クリアパルス発生回路11は、デ
コード信号がイネーブルのときに、CPU1から書き込
まれるデータパターンとあらかじめ決めたデータパター
ンとを比較し、一致した場合にクリアパルスを発生す
る。この構成では、あらかじめ決めたデータパターンの
書き込みが、ウォッチドッグタイマ10において設定さ
れている一定時間以内に行われなかった場合に、ウォッ
チドッグタイマ10はCPU1へ暴走検出信号を出力す
る。
【0004】
【発明が解決しようとする課題】上記第1の従来例で
は、CPU1が暴走したとしても、誤ってウォッチドッ
グタイマ10のクリアアドレスをアクセスしてウォッチ
ドッグタイマ10をクリアしてしまい、暴走が検出され
ないという問題があった。また、第2の従来例でも、C
PU1が暴走したとしても、誤ってクリアパルス発生回
路11に対応するアドレス(言い換えればウォッチドッ
グタイマ10のクリアアドレス)をアクセスしてしま
い、また、クリアのためのデータが時刻により変化する
値ではないために、CPU1があらかじめ決められたデ
ータを誤って書き込む可能性があり、暴走が検出されな
い場合が生じるという問題があった。
【0005】さらに、第1,第2のいずれの従来例も、
CPU1がプログラム処理の実行を誤った場合に、ウォ
ッチドッグタイマ10に設定された時刻までその異常が
検出されないという問題もあった。本発明は上記問題を
解決するもので、その第1の目的は、CPUが暴走した
ことを確実に検出できる暴走検出装置を提供することで
あり、第2の目的は、さらにCPUがプログラム処理の
実行を誤った場合にその誤動作を直ちに検出できる暴走
検出装置を提供することである。
【0006】
【課題を解決するための手段】請求項1記載の暴走検出
装置は、時刻により変化する鍵データを生成する鍵デー
タ生成回路と、この鍵データ生成回路から鍵データを読
み出すとともに記憶し、この記憶した鍵データを出力す
るCPUと、このCPUにより鍵データ生成回路から読
み出される鍵データを記憶し、この記憶した鍵データを
CPUが鍵データを出力するときに出力する鍵データ記
憶回路と、CPUから出力される鍵データと鍵データ記
憶回路から出力される鍵データとを照合し、この照合結
果が不一致のときにCPUへ異常検出信号を出力する鍵
データ照合回路とを備えている。
【0007】この構成によれば、鍵データ生成回路が時
刻により変化する鍵データを生成し、鍵データ照合回路
にCPUから書き込まれる鍵データが、鍵データ記憶回
路に記憶されていた鍵データと不一致のときに、異常検
出信号をCPUへ出力するようにしてあり、鍵データが
時刻により変化するデータであるため、CPUの暴走時
に、CPUから鍵データ照合回路に正しい鍵データが誤
って書き込まれることを防止し、処理が正常に実行され
ているか否かを、照合のたびに検出し、CPUから正し
い鍵データが書き込まれないと直ちに異常を検出できる
ので、CPUの暴走を確実にかつ直ちに検出できる。
【0008】請求項2記載の暴走検出装置は、請求項1
記載の暴走検出装置において、鍵データ記憶回路は、鍵
データ生成回路から読み出される鍵データを定められた
順番に記憶する複数の鍵レジスタを有し、鍵データ照合
回路は、CPUから出力される鍵データが書き込まれ複
数の鍵レジスタのそれぞれと対応する複数の照合レジス
タを有し、CPUから所定の照合レジスタに鍵データが
書き込まれるときに、所定の照合レジスタに書き込まれ
る鍵データと、所定の照合レジスタに対応する鍵レジス
タに記憶された鍵データとを照合するようにしたことを
特徴とする。
【0009】この構成により、鍵データ記憶回路は、複
数の鍵レジスタに順番に鍵データを記憶し、鍵データ照
合回路は、所定の照合レジスタに書き込まれる鍵データ
と、所定の照合レジスタに対応する鍵レジスタに記憶さ
れた鍵データとを照合するようにしているため、CPU
がプログラム処理の実行を誤り、例えばN回目の鍵デー
タの読出しおよび照合がなされなかった場合には、N+
1回目の鍵データの照合時に照合結果が不一致となり、
鍵データ照合回路から異常検出信号がCPUへ出力さ
れ、プログラムの流れが異常であることを直ちに検出で
きる。
【0010】請求項3記載の暴走検出装置は、請求項1
記載の暴走検出装置において、クロックパルスをカウン
トし一定時間以内にクリアパルスが入力されないときに
CPUへ異常検出信号を出力するウォッチドッグタイマ
を設け、鍵データ照合回路は、照合結果が一致したとき
にウォッチドッグタイマをリセットするクリアパルスを
出力するようにしたことを特徴とする。
【0011】このように、ウォッチドッグタイマを設け
たことにより、CPUが暴走し、鍵データの読出しおよ
び照合の処理が継続して一定時間行われなかったとき
に、ウォッチドッグタイマから異常検出信号が出力さ
れ、CPUの暴走を検出できる。請求項4記載の暴走検
出装置は、請求項2記載の暴走検出装置において、クロ
ックパルスをカウントし一定時間以内にクリアパルスが
入力されないときにCPUへ異常検出信号を出力するウ
ォッチドッグタイマを設け、鍵データ照合回路は、照合
回数が設定される照合回数レジスタを有し、この照合回
数レジスタに設定された照合回数の回数連続して照合結
果が一致したときにウォッチドッグタイマをリセットす
るクリアパルスを出力するようにしたことを特徴とす
る。
【0012】このように、ウォッチドッグタイマを設け
たことにより、CPUが暴走し、鍵データの読出しおよ
び照合の処理が継続して一定時間行われなかったとき
に、ウォッチドッグタイマから異常検出信号が出力さ
れ、CPUの暴走を検出できる。また、照合回数レジス
タに設定された照合回数の回数連続して照合結果が一致
したときにクリアパルスを出力するようにしたことによ
り、誤ってウォッチドッグタイマがリセットされるのを
防止できる。
【0013】請求項5記載の暴走検出装置は、時刻によ
り変化する鍵データを生成し、CPUにアクセスされた
ときに鍵データを出力する鍵データ生成回路と、複数の
鍵レジスタを有し、鍵データ生成回路から出力される鍵
データを定められた順番の鍵レジスタに記憶する鍵デー
タ記憶回路と、複数の鍵レジスタのそれぞれと対応する
複数の照合レジスタを有し、鍵データ生成回路から出力
される鍵データを所定の照合レジスタに記憶し、この所
定の照合レジスタに記憶した鍵データと所定の照合レジ
スタに対応する鍵レジスタに記憶された鍵データとを照
合し、この照合結果が不一致のときにCPUへ異常検出
信号を出力する鍵データ照合回路とを備えている。
【0014】この構成によれば、鍵データ生成回路が時
刻により変化する鍵データを生成し、CPUが鍵データ
生成回路にアクセスしたときに、鍵データ記憶回路は、
複数の鍵レジスタに順番に鍵データを記憶し、鍵データ
照合回路は、所定の照合レジスタに鍵データを記憶し、
その後、所定の照合レジスタとそれに対応する鍵レジス
タに記憶された鍵データを照合するようにしているた
め、CPUがプログラム処理の実行を誤り、例えばN回
目の鍵データの読出しおよび照合がなされなかった場合
には、N+1回目の鍵データの照合時に照合結果が不一
致となり、鍵データ照合回路から異常検出信号がCPU
へ出力され、プログラムの流れが異常であることを直ち
に検出できる。このように、鍵データを一度CPUに読
み込むことなく、鍵データの照合を行うため、処理の高
速化を図ることができる。
【0015】請求項6記載の暴走検出装置は、請求項5
記載の暴走検出装置において、クロックパルスをカウン
トし一定時間以内にクリアパルスが入力されないときに
CPUへ異常検出信号を出力するウォッチドッグタイマ
を設け、鍵データ照合回路は、照合回数が設定される照
合回数レジスタを有し、この照合回数レジスタに設定さ
れた照合回数の回数連続して照合結果が一致したときに
ウォッチドッグタイマをリセットするクリアパルスを出
力するようにしたことを特徴とする。
【0016】このように、クリアパルスによりリセット
されるウォッチドッグタイマを設けたことにより、CP
Uが暴走し、鍵データの読出しおよび照合の処理が継続
して一定時間行われなかったときに、ウォッチドッグタ
イマから異常検出信号が出力され、CPUの暴走を検出
できる。また、照合回数レジスタに設定された照合回数
の回数連続して照合結果が一致したときにクリアパルス
を出力するようにしたことにより、誤ってウォッチドッ
グタイマをリセットするのを防止できる。
【0017】請求項7記載の暴走検出装置は、請求項
3,4または6記載の暴走検出装置において、ウォッチ
ドッグタイマを鍵データ生成回路に共用し、ウォッチド
ッグタイマのカウント値を鍵データとするようにしたこ
とを特徴とする。これにより、回路規模を小さくでき
る。請求項8記載の暴走検出装置は、請求項4または6
記載の暴走検出装置において、ウォッチドッグタイマを
鍵データ生成回路に共用し、前記ウォッチドッグタイマ
のカウント値を鍵データとし、鍵データ照合回路の複数
の照合レジスタのデータを読み出し可能にしたことを特
徴とする。
【0018】これにより、CPUは鍵データ照合回路か
ら異常検出信号を入力したとき、照合レジスタからデー
タを読み出すことにより、暴走検出時および鍵データ生
成を受け付けた時の情報(ウォッチドッグタイマのカウ
ント値)と、何回目の鍵データの照合が正常に行われな
かったかを認知できるため、暴走のメカニズムを解析す
ることができ、また、異常検出後にCPUの行う復旧処
理やエラー内容の表示に用いることができる。
【0019】請求項9記載の暴走検出装置は、請求項4
または6記載の暴走検出装置において、鍵データ生成回
路は時刻を鍵データとして生成し、鍵データ照合回路の
複数の照合レジスタのデータを読み出し可能にしたこと
を特徴とする。これにより、CPUは鍵データ照合回路
から異常検出信号を入力したとき、照合レジスタからデ
ータを読み出すことにより、暴走検出時および鍵データ
生成を受け付けた時の時刻と、何回目の鍵データの照合
が正常に行われなかったかを認知できるため、暴走のメ
カニズムを解析することができ、また、異常検出後にC
PUの行う復旧処理やエラー内容の表示に用いることが
できる。
【0020】請求項10記載の暴走検出装置は、請求項
4,6,8または9記載の暴走検出装置において、鍵デ
ータ照合回路は、照合回数レジスタに一旦照合回数が設
定されると、次にクリアパルスを出力するまで照合回数
レジスタへの書き込みを禁止としたことを特徴とする。
これにより、誤って照合回数が変更され、設定よりも早
く誤ってクリアパルスが出力されるのを防止できる。
【0021】
【発明の実施の形態】〔第1の実施の形態〕以下、本発
明の第1の実施の形態について、図1,図2,図3,図
4を参照して説明する。図1は第1の実施の形態におけ
る暴走検出装置のブロック図である。
【0022】第1の実施の形態の暴走検出装置は、CP
U1および暴走検出部13からなり、暴走検出部13に
は、アドレスデコーダ2と、時刻により変化する鍵デー
タを生成する鍵データ生成回路3と、CPU1が鍵デー
タ生成回路3から鍵データを読み出すときに読み出され
た鍵データを内蔵の鍵レジスタ6に記憶する鍵データ記
憶回路5と、CPU1から書き込まれる鍵データと鍵デ
ータ記憶回路5の鍵レジスタ6から出力される鍵データ
とを照合し、この照合結果が不一致のときにCPU1へ
異常検出信号MATCHERRを出力する鍵データ照合回路4と
を備えている。なお、CPU1は鍵データ生成回路3か
ら鍵データを読み出すとともに記憶し、この記憶した鍵
データを出力して鍵データ照合回路4に書き込むように
している。
【0023】そして、CPU1のアドレスバスはアドレ
スデコーダ2に接続されている。CPU1のリード信号
REは、鍵データ生成回路3と鍵データ記憶回路5に入力
される。CPU1のライト信号WEは、鍵データ照合回路
4と鍵データ記憶回路5に入力される。アドレスデコー
ダ2のデコード信号DMATCHは、鍵データ照合回路4と鍵
データ記憶回路5に入力される。アドレスデコーダ2の
デコード信号DKDATAは、鍵データ生成回路3と鍵データ
記憶回路5に入力される。鍵データ照合回路4が出力す
る異常検出信号MATCHERRは、CPU1に入力される。鍵
データ記憶回路5は、バスKREGBUS により鍵データ照合
回路4に接続されている。CPU1の出力するリセット
信号RESET は、鍵データ照合回路4と鍵データ記憶回路
5に入力される。鍵データ生成回路3は、バスKDATABUS
によりCPU1と鍵データ記憶回路5に接続されてい
る。CPU1のデータは、バスKMACBUS で鍵データ照合
回路4に入力される。
【0024】次に本実施の形態における動作を説明す
る。図4に、CPU1が実行するプログラムの例を示
す。図4中における(1) は、CPU1がアドレスX'10
00が示すI/O(鍵データ生成回路3)のデータをメ
モリ(CPU1の内蔵レジスタ)に転送する命令とし、
(2) は、CPU1がメモリ(CPU1の内蔵レジスタ)
のデータをアドレスX'0001が示すI/O(鍵データ
照合回路4)に転送する命令とする。なお、図4中に記
載の「処理」はCPU1により実行可能な命令の組み合
わせで生じる動作を示し、作成されるプログラムにより
異なるものである。
【0025】図2,図3は図4のプログラムを実行する
際の本実施の形態のタイミングチャートを示し、図2は
CPU1が正常動作時の場合であり、図3はCPU1が
暴走時の場合である。はじめに、CPU1がリセット信
号RESET を鍵データ記憶回路5と鍵データ照合回路4に
出力することにより、鍵データ記憶回路5の鍵レジスタ
6をX'00でリセットし、鍵データ照合回路4の異常検
出信号MATCHERRをディスエーブルにする。なお、X'00
は、リセット信号RESET が鍵データ記憶回路5に入力さ
れた時の鍵データである。
【0026】まず、プログラムにおいて鍵データの取得
が指示されると、CPU1は鍵データ生成回路3のアド
レスX'1000をリードアクセスする。アドレスデコー
ダ2は、デコード信号DKDATAをイネーブルにする。リー
ド信号REとデコード信号DKDATAがイネーブルになると、
鍵データ生成回路3は現時刻の鍵データをバスKDATABUS
に出力し、CPU1はその鍵データを内蔵レジスタに格
納する。また、鍵データ記憶回路5は、リード信号REと
デコード信号DKDATAがイネーブルになると、バスKDATAB
USの値を鍵レジスタ6に格納する。
【0027】次に、プログラムにおいて鍵データの照合
が指示されると、CPU1は鍵データ照合回路4のアド
レスX'0001をライトアクセスする。アドレスデコー
ダ2は、デコード信号DMATCHをイネーブルにする。鍵デ
ータ記憶回路5は、ライト信号WEとデコード信号DMATCH
がイネーブルになると、鍵レジスタ6の値をバスKREGBU
S に出力する。鍵データ照合回路4は、ライト信号WEと
デコード信号DMATCHがイネーブルになると、CPU1の
内蔵レジスタからバスKMACBUS に出力した値と、鍵レジ
スタ6からバスKREGBUS に出力された値とを照合し、そ
の照合結果が一致した場合は、図2に示すように、異常
検出信号MATCHERRはイネーブルにならない(正常動作
時)。照合結果が不一致の場合は、図3に示すように、
異常検出信号MATCHERRをイネーブルにしてCPU1に異
常を通知する。
【0028】このように第1の実施の形態によれば、鍵
データ生成回路3が時刻により変化する鍵データを生成
し、鍵データ照合回路4にCPU1から書き込まれる鍵
データが、鍵データ記憶回路5に記憶されている鍵デー
タと不一致のときに、異常検出信号MATCHERRをCPU1
へ出力するようにしてあり、鍵データが時刻により変化
するデータであるため、CPU1の暴走時に、CPU1
から鍵データ照合回路4に正しい鍵データが誤って書き
込まれることを防止し、処理が正常に実行されているか
否かを、照合のたびに検出し、CPU1から正しい鍵デ
ータが書き込まれないと直ちに異常を検出できるので、
CPU1の暴走を確実にかつ直ちに検出できる。
【0029】なお、鍵データ生成回路3が生成する時刻
により変化する鍵データには、例えば、乱数発生回路に
よって生成される乱数がある。すなわち、鍵データ生成
回路3として例えば乱数発生回路を用い、その具体例と
しては、CPU1からのリセット信号RESET 入力により
カウントを開始するNビットカウンタと、鍵データ生成
要求を受け付けると、まずレジスタの値を上位方向にN
ビットシフトし、次に下位Nビットにカウンタのカウン
ト値を格納し、その時のレジスタの値を鍵データとする
シフトレジスタを備えることにより構成される。なお、
このような乱数発生回路などにより実現される鍵データ
生成回路3は、CPU1の資源(演算器,レジスタ,メ
モリなど)を用いて構成してもよい。
【0030】〔第2の実施の形態〕次に第2の実施の形
態について、図5〜図9を参照して説明する。図5は第
2の実施の形態における暴走検出装置のブロック図であ
り、図1と対応する部分には同一符号を付して説明を省
略し、以下異なる部分のみ説明する。第2の実施の形態
では、鍵データ記憶回路5は、複数の鍵レジスタ6a,
6b,6cと、記憶すべき鍵レジスタの番号を示す番号
フラグ8とを備えている。鍵データ照合回路4は、複数
の照合レジスタ7a,7b,7cを備えている。CPU
1のアドレスバスは、アドレスデコーダ2以外に、鍵デ
ータ照合回路4および鍵データ記憶回路5にも接続さ
れ、CPU1が出力するアドレスの下位ビットにより、
鍵データ照合回路4および鍵データ記憶回路5内のアク
セスするレジスタ番号が決定される。
【0031】次に第2の実施の形態における動作を説明
する。図8,図9に、CPU1が実行するプログラムの
例と、CPU1の動作の説明を示す。図8,図9中にお
ける(1) は、CPU1がアドレスX'1000が示すI/
O(鍵データ生成回路3)のデータをメモリ(CPU1
の内蔵レジスタ)に転送する命令とし、(2) ,(3) ,
(4) は、それぞれCPU1がメモリ(CPU1の内蔵レ
ジスタ)のデータをアドレスX'0001,X'0002,
X'0003が示すI/O(鍵データ照合回路4)に転送
する命令とする。なお、図8,図9中に記載の「処理」
は、図4同様、CPU1により実行可能な命令の組み合
わせで生じる動作を示す。
【0032】図6,図7は図8,図9のプログラムを実
行する際の本実施の形態のタイミングチャートを示し、
図6と図8はCPU1が正常動作時の場合であり、図7
と図9はCPU1が暴走時の場合である。まず、図6と
図8を参照しながらCPU1が正常動作時の場合を説明
する。はじめに、CPU1はリセット信号RESET を鍵デ
ータ記憶回路5と鍵データ照合回路4に出力し、全ての
鍵レジスタ6a,6b,6cおよび番号フラグ8と全て
の照合レジスタ7a,7b,7cとをX'00にし、鍵デ
ータ照合回路4の異常検出信号MATCHERRをディスエーブ
ルにする。以上のように初期化が行われる。
【0033】まず、プログラムにおいて鍵データの取
得が指示されると、CPU1は鍵データ生成回路3のア
ドレスX'1000をリードアクセスする。アドレスデコ
ーダ2は、デコード信号DKDATAをイネーブルにする。リ
ード信号REとデコード信号DKDATAがイネーブルになる
と、鍵データ生成回路3は現時刻の鍵データをバスKDAT
ABUSに出力し、CPU1はその鍵データを内蔵レジスタ
に格納する。また、鍵データ記憶回路5は、リード信号
REとデコード信号DKDATAがイネーブルになると、番号フ
ラグ8を1インクリメントした後、バスKDATABUSの値を
番号フラグ8が示す1番の鍵レジスタ6aに格納する。
【0034】次に、プログラムにおいて鍵データの照
合が指示されると、CPU1は鍵データを照合するた
めに、アドレスX'0001をライトアクセスする。アド
レスデコーダ2は、デコード信号DMATCHをイネーブルに
する。鍵データ記憶回路5は、ライト信号WEとデコード
信号DMATCHがイネーブルになると、アドレスの下位ビッ
トが示す1番の鍵レジスタ6aの値をバスKREGBUS に出
力する。鍵データ照合回路4は、ライト信号WEとデコー
ド信号DMATCHがイネーブルになると、CPU1が内蔵レ
ジスタからバスKMACBUS に出力した値と、1番の鍵レジ
スタ6aからバスKREGBUS に出力された値とを照合す
る。ここでは、照合結果が一致するため、異常検出信号
MATCHERRはイネーブルにならない。また、CPU1の内
蔵レジスタからバスKMACBUS に出力された値は、アドレ
スの下位ビットが示す1番の照合レジスタ7aに格納さ
れる。
【0035】同様に、プログラムにおいて鍵データの
取得が指示されると、CPU1は鍵データ生成回路3の
アドレスX'1000をリードアクセスし、鍵データ記憶
回路5は、番号フラグ8を1インクリメントした後、現
時刻の鍵データを番号フラグ8が示す2番の鍵レジスタ
6bに格納する。次に、プログラムにおいて鍵データ
の照合が指示されると、CPU1はアドレスX'0002
をライトアクセスし、CPU1の内蔵レジスタからバス
KMACBUS に出力された値と、2番の鍵レジスタ6bから
バスKREGBUS に出力された値とが照合される。また、C
PU1の内蔵レジスタからバスKMACBUS に出力された値
はアドレスの下位ビットが示す2番の照合レジスタ7b
に格納される。
【0036】さらに同様に、プログラムにおいて鍵デー
タの取得が指示されると、CPU1は鍵データ生成回
路3のアドレスX'1000をリードアクセスし、鍵デー
タ記憶回路5は、番号フラグ8を1インクリメントした
後、現時刻の鍵データを番号フラグ8が示す3番の鍵レ
ジスタ6cに格納する。次に、プログラムにおいて鍵デ
ータの照合が指示されると、CPU1はアドレスX'0
003をライトアクセスし、CPU1の内蔵レジスタか
らバスKMACBUS に出力された値と、3番の鍵レジスタ6
cからバスKREGBUS に出力された値とが照合される。ま
た、CPU1の内蔵レジスタからバスKMACBUS に出力さ
れた値はアドレスの下位ビットが示す3番の照合レジス
タ7cに格納される。
【0037】以上は、プログラムが正常に実行されてい
る場合の例であり、照合結果がすべて一致するので、異
常検出信号MATCHERRはディスエーブルのままでイネーブ
ルにならない。次に、図7と図9を参照しながらCPU
1が暴走時の場合、ここではプログラムの流れに異常が
発生し、プログラムにおいて鍵データの取得と鍵デー
タの照合とが指示されなかった場合を例にとり説明す
る。
【0038】初期化が行われた後、まず、プログラムに
おいて鍵データの取得が指示されると、CPU1は鍵
データ生成回路3のアドレスX'1000をリードアクセ
スする。鍵データ生成回路3は現時刻の鍵データをバス
KDATABUSに出力し、CPU1はその鍵データを内蔵レジ
スタに格納する。また、鍵データ記憶回路5は、番号フ
ラグ8を1インクリメントした後、バスKDATABUSの値を
番号フラグ8が示す1番の鍵レジスタ6aに格納する。
次に、プログラムにおいて鍵データの照合が指示され
ると、CPU1は鍵データを照合するために、アドレ
スX'0001をライトアクセスする。鍵データ記憶回路
5は、アドレスの下位ビットが示す1番の鍵レジスタ6
aの値をバスKREGBUS に出力する。鍵データ照合回路4
は、CPU1の内蔵レジスタからバスKMACBUS に出力さ
れた値と、1番の鍵レジスタ6aからバスKREGBUS に出
力された値とを照合する。ここでは、照合結果が一致
し、異常検出信号MATCHERRはディスエーブルのままであ
る。
【0039】この後、異常が発生して鍵データの取得
と鍵データの照合を含むいくつかの処理が暴走もしく
は未処理されたものとする。次に、プログラムにおいて
鍵データの取得が指示されると、CPU1は鍵データ
生成回路3のアドレスX'1000をリードアクセスし、
鍵データ記憶回路5は、番号フラグ8を1インクリメン
トした後、バスKDATABUSの値すなわち現時刻の鍵データ
を番号フラグ8が示す2番の鍵レジスタ6bに格納す
る。プログラムにおいて鍵データの照合が指示される
と、CPU1はアドレスX'0003をライトアクセス
し、鍵データ照合回路4は、CPU1の内蔵レジスタか
らバスKMACBUS に出力された値と、3番の鍵レジスタ6
cからバスKREGBUS に出力された値とを照合する。バス
KREGBUS に出力された3番の鍵レジスタ6cの値は、初
期化された値のままであり、照合結果は不一致となり、
直ちに異常検出信号MATCHERRがイネーブルとなり、CP
U1に異常が通知される。
【0040】このように第2の実施の形態によれば、第
1の実施の形態における効果に加え、鍵データ記憶回路
5は、複数の鍵レジスタ6a,6b,6cに順番に鍵デ
ータを記憶し、鍵データ照合回路4は、複数の照合レジ
スタ7a,7b,7cのうち所定の照合レジスタに書き
込まれる鍵データと、その所定の照合レジスタに対応す
る鍵レジスタに記憶された鍵データとを照合するように
しているため、CPU1がプログラム処理の実行を誤
り、例えばN回目の鍵データの読出しおよび照合がなさ
れなかった場合には、N+1回目の鍵データの照合時に
照合結果が不一致となり、鍵データ照合回路4から異常
検出信号MATCHERRがCPU1へ出力され、プログラムの
流れが異常であることを直ちに検出できる。
【0041】〔第3の実施の形態〕次に、第3の実施の
形態について、図10〜図13を参照して説明する。図
10は第3の実施の形態における暴走検出装置のブロッ
ク図である。図1と同一部分には同一符号を付して説明
を省略し、以下異なる部分のみ説明する。第3の実施の
形態では、鍵データ生成回路3は、クロックパルスをカ
ウントし、そのカウント値を鍵データとして生成すると
ともに一定時間以内にクリアパルス12が入力されない
ときにCPU1へ異常検出信号14を出力するウォッチ
ドッグタイマで構成される。以下、本実施の形態では、
鍵データ生成回路3をウォッチドッグタイマ3という。
また、鍵データ照合回路4は、照合結果が一致したとき
にクリアパルス12をウォッチドッグタイマ3へ出力
し、そのカウント値をリセットする。また、CPU1か
らウォッチドッグタイマ3にカウントを開始させるスタ
ート信号WDTSTARTが入力される。また、CPU1の出力
するリセット信号RESET はウォッチドッグタイマ3へも
入力される。
【0042】次に本実施の形態における動作を説明す
る。図13に、CPU1が実行するプログラムの例を示
す。図13中における(1),(2) は、図4中における(1)
,(2) と同じ命令である。また、図13中に記載の
「処理」は、図4同様、CPU1により実行可能な命令
の組み合わせで生じる動作を示す。図11,図12は図
13のプログラムを実行する際の本実施の形態のタイミ
ングチャートを示し、図11はCPU1が正常動作時の
場合であり、図12はCPU1が暴走時の場合である。
【0043】はじめに、CPU1がリセット信号RESET
を出力することにより、鍵データ記憶回路5の鍵レジス
タ6をリセットし、ウォッチドッグタイマ3のカウント
値をリセットするとともに異常検出信号14をディスエ
ーブルにし、鍵データ照合回路4の異常検出信号MATCHE
RRとクリアパルス12とをディスエーブルにする。以上
のように初期化を行った後、CPU1がスタート信号WD
TSTARTをイネーブルにし、ウォッチドッグタイマ3がカ
ウントを開始する。
【0044】まず、プログラムにおいて鍵データの取得
が指示されると、CPU1はウォッチドッグタイマ3の
アドレスX'1000をリードアクセスする。アドレスデ
コーダ2は、デコード信号DKDATAをイネーブルにする。
リード信号REとデコード信号DKDATAがイネーブルになる
と、ウォッチドッグタイマ3は現時刻の鍵データをバス
KDATABUSに出力し、CPU1はその鍵データを内蔵レジ
スタに格納する。鍵データ記憶回路5は、リード信号RE
とデコード信号DKDATAがイネーブルになると、バスKDAT
ABUSの値を鍵レジスタ6に格納する。
【0045】次に、プログラムにおいて鍵データの照合
が指示されると、CPU1は鍵データ照合回路4のアド
レスX'0001をライトアクセスする。アドレスデコー
ダ2は、デコード信号DMATCHをイネーブルにする。鍵デ
ータ記憶回路5は、ライト信号WEとデコード信号DMATCH
がイネーブルになると、鍵レジスタ6の値をバスKREGBU
S に出力する。鍵データ照合回路4は、ライト信号WEと
デコード信号DMATCHがイネーブルになると、CPU1が
内蔵レジスタからバスKMACBUS に出力した値と、鍵レジ
スタ6からバスKREGBUS に出力された値とを照合する。
鍵データの取得と照合が正確に処理されれば、図11に
示すように、照合結果が一致し、異常検出信号MATCHERR
はディスエーブルのままであり、クリアパルス12がイ
ネーブルになる。このクリアパルス12がウォッチドッ
グタイマ3に入力されるとそのカウント値がクリアされ
る。また、鍵データの取得が未処理であったり、以前の
鍵データが用いられたり、あるいは鍵データの破壊によ
って、図12に示すように、照合結果が不一致になる
と、異常検出信号MATCHERRをイネーブルにし、異常をC
PU1に通知する。このとき、クリアパルス12はディ
スエーブルのままである。
【0046】また、本実施の形態では、CPU1が暴走
し、鍵データの取得および照合の未処理状態が連続して
続いているときには、異常検出信号MATCHERRもクリアパ
ルス12もディスエーブルのままであるが、その状態が
ウォッチドッグタイマ3に設定された一定時間を超える
と、ウォッチドッグタイマ3から異常検出信号14が出
力され、CPU1に異常が通知される。なお、ウォッチ
ドッグタイマ3に設定する一定時間は、図13中に記載
されたCPU1が実行するいくつかの命令で生じる動作
を示す処理と鍵データの取得および照合を、CPU1が
正常に実行した場合の時間よりも少なくとも長い時間で
あり、かつ短い程、CPU1の正常動作を妨げることな
く、暴走を早期に検出できる。
【0047】このように第3の実施の形態によれば、第
1の実施の形態における効果に加え、鍵データ生成回路
3にウォッチドッグタイマを用いたことにより、CPU
1が暴走し、鍵データの読出しおよび照合の処理が継続
して一定時間行われなかったときに、ウォッチドッグタ
イマから異常検出信号14が出力され、CPU1の暴走
を検出できる。
【0048】なお、鍵データ生成回路3をウォッチドッ
グタイマで構成せずに、第1,第2の実施の形態と同様
の鍵データ生成回路3を用い、ウォッチドッグタイマを
鍵データ生成回路3とは別に設けた構成としてもよい
が、上記実施の形態のように鍵データ生成回路3をウォ
ッチドッグタイマで構成した方が回路規模が小さくな
る。
【0049】〔第4の実施の形態〕次に第4の実施の形
態について、図14〜図18を参照して説明する。図1
4は第4の実施の形態における暴走検出装置のブロック
図である。図5と同一部分には同一符号を付して説明を
省略し、以下異なる部分のみ説明する。第4の実施の形
態では、鍵データ生成回路3は、クロックパルスをカウ
ントし、そのカウント値を鍵データとして生成するとと
もに一定時間以内にクリアパルス12が入力されないと
きにCPU1へ異常検出信号14を出力するウォッチド
ッグタイマで構成される。以下、本実施の形態では、鍵
データ生成回路3をウォッチドッグタイマ3という。ま
た、鍵データ照合回路4は、複数の照合レジスタ7a,
7b,7cの他に、所定の照合回数を記憶する照合回数
レジスタ9を備え、所定の照合回数連続して照合結果が
一致したときにクリアパルス12をウォッチドッグタイ
マ3へ出力し、そのカウント値をリセットする。また、
CPU1からウォッチドッグタイマ3にカウントを開始
させるスタート信号WDTSTARTが入力される。また、リセ
ット信号RESET はウォッチドッグタイマ3へも入力され
ている。
【0050】次に第4の実施の形態における動作を説明
する。図17,図18に、CPU1が実行するプログラ
ムの例と、CPU1の動作の説明を示す。図17,図1
8中における(1) ,(2) ,(3) ,(4) は、図8,図9中
における(1) ,(2) ,(3) ,(4) と同じ命令であり、図
17,図18中における(5) は、CPU1がデータX'0
3をアドレスX'0000が示すI/O(鍵データ照合回
路4)にライトする命令である。また、図17,図18
中に記載の「処理」は、図4同様、CPU1により実行
可能な命令の組み合わせで生じる動作を示す。
【0051】図15,図16は図17,図18のプログ
ラムを実行する際の本実施の形態のタイミングチャート
を示し、図15と図17はCPU1が正常動作時の場合
であり、図16と図18はCPU1が暴走時の場合であ
る。まず、図15と図17を参照しながらCPU1が正
常動作時の場合を説明する。
【0052】はじめに、CPU1がリセット信号RESET
を出力することにより、鍵データ記憶回路5の全ての鍵
レジスタ6a,6b,6cおよび番号フラグ8をリセッ
トし、ウォッチドッグタイマ3のカウント値をリセット
するとともに異常検出信号14をディスエーブルにし、
鍵データ照合回路4の全ての照合レジスタ7a,7b,
7cおよび照合回数レジスタ9をリセットするとともに
異常検出信号MATCHERRとクリアパルス12とをディスエ
ーブルにする。以上のように初期化を行った後、CPU
1がスタート信号WDTSTARTをイネーブルにし、ウォッチ
ドッグタイマ3がカウントを開始する。次に、CPU1
が所定の照合回数を設定するために、アドレスX'000
0をライトアクセスすると、バスKMACBUS を介してデー
タX'03が鍵データ照合回路4の照合回数レジスタ9に
格納される。なお、データX'03は「3回」の照合回数
を示すデータであり、鍵データ照合回路4で、照合が正
常に3回連続して行われ、照合結果が一致するとクリア
パルス12を発生することになる。
【0053】まず、プログラムにおいて鍵データの取
得が指示されると、CPU1はウォッチドッグタイマ3
のアドレスX'1000をリードアクセスする。アドレス
デコーダ2は、デコード信号DKDATAをイネーブルにす
る。リード信号REとデコード信号DKDATAがイネーブルに
なると、ウォッチドッグタイマ3は現時刻の鍵データを
バスKDATABUSに出力し、CPU1はその鍵データを内蔵
レジスタに格納する。鍵データ記憶回路5は、リード信
号REとデコード信号DKDATAがイネーブルになると番号フ
ラグ8を1インクリメントした後、番号フラグ8が示す
1番の鍵レジスタ6aにバスKDATABUSの値を格納する。
【0054】次に、プログラムにおいて鍵データの照
合が指示されると、CPU1は鍵データを照合するた
めに、アドレスX'0001をライトアクセスする。鍵デ
ータ記憶回路5は、ライト信号WEとデコード信号DMATCH
がイネーブルになると、アドレスの下位ビットが示す1
番の鍵レジスタ6aの値をバスKREGBUS に出力する。鍵
データ照合回路4は、ライト信号WEとデコード信号DMAT
CHがイネーブルになると、CPU1が内蔵レジスタから
バスKMACBUS に出力した値と、1番の鍵レジスタ6aか
らバスKREGBUS に出力された値とを照合するとともに、
CPU1からバスKMACBUS に出力された値をアドレスの
下位ビットが示す1番の照合レジスタ7aに格納する。
ここでは、照合結果が一致するため、異常検出信号MATC
HERRはイネーブルにならない。また、照合結果が一致し
た場合には、さらに照合回数レジスタ9の値とアドレス
の下位ビットが示す値とを照合し、一致すればクリアパ
ルス12をイネーブルにするが、ここでは一致しないた
めクリアパルス12はイネーブルにならない。
【0055】同様に、プログラムにおいて鍵データの
取得が指示されると、CPU1はウォッチドッグタイマ
3のアドレスX'1000をリードアクセスし、鍵データ
記憶回路5は、番号フラグ8を1インクリメントした
後、現時刻の鍵データを番号フラグ8が示す2番の鍵レ
ジスタ6bに格納する。次に、プログラムにおいて鍵デ
ータの照合が指示されると、CPU1はアドレスX'0
002をライトアクセスし、CPU1がバスKMACBUS に
出力した値と、2番の鍵レジスタ6bからバスKREGBUS
に出力された値とが照合される。ここでは、照合結果が
一致し、また照合回数レジスタ9の値とアドレスの下位
ビットが示す値とが一致せず、異常検出信号MATCHERRも
クリアパルス12もイネーブルにならない。
【0056】同様に、プログラムにおいて鍵データの
取得が指示されると、CPU1はウォッチドッグタイマ
3のアドレスX'1000をリードアクセスし、鍵データ
記憶回路5は、番号フラグ8を1インクリメントした
後、現時刻の鍵データを番号フラグ8が示す3番の鍵レ
ジスタ6cに格納する。次に、プログラムにおいて鍵デ
ータの照合が指示されると、CPU1はアドレスX'0
003をライトアクセスし、CPU1がバスKMACBUS に
出力した値と、3番の鍵レジスタ6cからバスKREGBUS
に出力された値とが照合される。ここでは、照合結果が
一致し、さらに照合回数レジスタ9の値とアドレスの下
位ビットが示す値とが一致するため、クリアパルス12
をイネーブルにし、ウォッチドッグタイマ3のカウント
値がクリアされる。
【0057】以上は、プログラムが正常に実行されてい
る場合の例である。次に、図16と図18を参照しなが
らCPU1が暴走時の場合、ここではプログラムの流れ
に異常が発生し、プログラムにおいて鍵データの取得
と鍵データの照合とが指示されなかった場合を例にと
り説明する。はじめに、CPU1がリセット信号RESET
を出力して初期化を行った後、スタート信号WDTSTARTを
イネーブルにしてウォッチドッグタイマ3にカウントを
開始させ、CPU1が「3回」の照合回数を鍵データ照
合回路4の照合回数レジスタ9に設定する。
【0058】まず、プログラムにおいて鍵データの取
得が指示されると、CPU1はウォッチドッグタイマ3
のアドレスX'1000をリードアクセスし、鍵データ記
憶回路5は、番号フラグ8を1インクリメントした後、
バスKDATABUSの値すなわち現時刻の鍵データを番号フラ
グ8が示す1番の鍵レジスタ6aに格納する。次に、プ
ログラムにおいて鍵データの照合が指示されると、C
PU1は鍵データを照合するために、アドレスX'00
01をライトアクセスし、CPU1がバスKMACBUS に出
力した値と、1番の鍵レジスタ6aからバスKREGBUS に
出力された値とが照合される。ここでは、照合結果が一
致し、また照合回数レジスタ9の値とアドレスの下位ビ
ットが示す値とが一致せず、異常検出信号MATCHERRもク
リアパルス12もイネーブルにならない。
【0059】この後、異常が発生して鍵データの取得
と鍵データの照合を含むいくつかの処理が暴走もしく
は未処理されたものとする。後に、プログラムにおいて
鍵データの取得が指示されると、CPU1はウォッチ
ドッグタイマ3のアドレスX'1000をリードアクセス
し、鍵データ記憶回路5は、番号フラグ8を1インクリ
メントした後、現時刻の鍵データを番号フラグ8が示す
2番の鍵レジスタ6bに格納する。次に、プログラムに
おいて鍵データの照合が指示されると、CPU1はア
ドレスX'0003をライトアクセスし、CPU1がバス
KMACBUS に出力した値と、3番の鍵レジスタ6cからバ
スKREGBUS に出力された値とが照合される。3番の鍵レ
ジスタ6cの値は、初期化された値のままであり、照合
結果は不一致となり、直ちに異常検出信号MATCHERRがC
PU1に出力され、異常を直ちに検出できる。
【0060】また、本実施の形態では、CPU1が暴走
し、鍵データの取得および照合の未処理状態が連続して
続いているときには、異常検出信号MATCHERRもクリアパ
ルス12もディスエーブルのままであるが、その状態が
ウォッチドッグタイマ3に設定された一定時間を超える
と、ウォッチドッグタイマ3から異常検出信号14が出
力され、CPU1に異常が通知される。
【0061】このように第4の実施の形態によれば、第
2の実施の形態における効果に加え、鍵データ生成回路
3としてウォッチドッグタイマ3を用いたことにより、
CPU1が暴走し、鍵データの読出しおよび照合の処理
が継続して一定時間行われなかったときに、ウォッチド
ッグタイマ3から異常検出信号14が出力され、CPU
1の暴走を検出できる。また、照合回数レジスタ9に設
定された照合回数の回数連続して照合結果が一致したと
きにクリアパルス12を出力するようにしたことによ
り、誤ってウォッチドッグタイマ3がリセットされるの
を防止できる。
【0062】なお、鍵データ生成回路3をウォッチドッ
グタイマで構成せずに、第1,第2の実施の形態と同様
の鍵データ生成回路3を用い、ウォッチドッグタイマを
鍵データ生成回路3とは別に設けた構成としてもよい
が、上記実施の形態のように鍵データ生成回路3をウォ
ッチドッグタイマで構成した方が回路規模が小さくな
る。
【0063】〔第5の実施の形態〕次に第5の実施の形
態について、図19〜図23を参照して説明する。図1
9は第5の実施の形態における暴走検出装置のブロック
図である。図5と同一部分には同一符号を付して説明を
省略し、以下異なる部分のみ説明する。第5の実施の形
態の暴走検出装置は、第2の実施の形態と構成要素は同
様であるが、CPU1からの1命令により、鍵データの
読み出し,照合を行い、暴走を検出することを可能にす
るため、鍵データ生成回路3がバスMACBUSにより鍵デー
タ照合回路4に接続されている。
【0064】次に第5の実施の形態における動作を説明
する。図22,図23に、CPU1が実行するプログラ
ムの例と、CPU1の動作の説明を示す。図22,図2
3中における(6) ,(7) ,(8) は、それぞれ鍵データ
,,の照合を行う命令とする。また、図22,図
23中に記載の「処理」は、図4同様、CPU1により
実行可能な命令の組み合わせで生じる動作を示す。
【0065】図20,図21は図22,図23のプログ
ラムを実行する際の本実施の形態のタイミングチャート
を示し、図20と図22はCPU1が正常動作時の場合
であり、図21と図23はCPU1が暴走時の場合であ
る。まず、図20と図22を参照しながらCPU1が正
常動作時の場合を説明する。
【0066】はじめに、CPU1はリセット信号RESET
を鍵データ記憶回路5と鍵データ照合回路4に出力し、
全ての鍵レジスタ6a,6b,6cおよび番号フラグ8
と全ての照合レジスタ7a,7b,7cとをリセット
し、鍵データ照合回路4の異常検出信号MATCHERRをディ
スエーブルにする。以上のように初期化が行われる。プ
ログラムにおいて鍵データの照合が指示されると、C
PU1はアドレスX'0001をアクセスする。このと
き、リード信号REがイネーブルになるとともに、ライト
信号WEがリード信号REより少し遅れてイネーブルにな
る。アドレスデコーダ2は、デコード信号DMATCHをイネ
ーブルにする。リード信号REとデコード信号DMATCHがイ
ネーブルになると、鍵データ生成回路3は現時刻の鍵デ
ータをバスKDATABUSとバスMACBUSに出力する。
【0067】鍵データ記憶回路5は、リード信号REとデ
コード信号DMATCHがイネーブルになると、番号フラグ8
を1インクリメントした後、バスKDATABUSの値を番号フ
ラグ8が示す1番の鍵レジスタ6aに格納する。その
後、ライト信号WEとデコード信号DMATCHがイネーブルに
なると、アドレスの下位ビットが示す1番の鍵レジスタ
6aの値をバスKREGBUS に出力する。
【0068】また、鍵データ照合回路4は、リード信号
REとデコード信号DMATCHがイネーブルになると、バスMA
CBUSに出力された値をアドレスの下位ビットが示す1番
の照合レジスタ7aに格納する。その後、ライト信号WE
とデコード信号DMATCHがイネーブルになると、1番の照
合レジスタ7aの値と1番の鍵レジスタ6aからバスKR
EGBUS に出力された値とを照合する。ここでは、照合結
果が一致するため、異常検出信号MATCHERRはイネーブル
にならない。
【0069】また、プログラムにおいて鍵データの照
合が指示されると、CPU1がアドレスX'0002をア
クセスし、同様にして、鍵データ照合回路4では、バス
MACBUSに出力された値を2番の照合レジスタ7bに格納
し、その値と2番の鍵レジスタ6bからバスKREGBUS に
出力された値とを照合する。また、プログラムにおいて
鍵データの照合が指示されると、CPU1がアドレス
X'0003をアクセスし、同様にして、鍵データ照合回
路4では、バスMACBUSに出力された値を3番の照合レジ
スタ7cに格納し、その値と3番の鍵レジスタ6cから
バスKREGBUS に出力された値とを照合する。
【0070】以上は、プログラムが正常に実行されてい
る場合の例であり、照合結果が全て一致するため、異常
検出信号MATCHERRはイネーブルにならない。次に、図2
1と図23を参照しながらCPU1が暴走時の場合、こ
こではプログラムの流れに異常が発生し、プログラムに
おいて鍵データの照合が指示されなかった場合を例に
とり説明する。
【0071】鍵データの照合が正常に行われた後、何
らかの異常が発生して鍵データの取得と鍵データの
照合を含むいくつかの処理が暴走もしくは未処理された
ものとする。後に、プログラムにおいて鍵データの照
合が指示され、リード信号REとデコード信号DMATCHがイ
ネーブルになると、鍵データ記憶回路5では、番号フラ
グ8を1インクリメントした後、バスKDATABUSの値を番
号フラグ8が示す2番の鍵レジスタ6bに格納し、ライ
ト信号WEとデコード信号DMATCHがイネーブルになると、
アドレスの下位ビットが示す3番の鍵レジスタ6cの値
をバスKREGBUS に出力する。また、リード信号REとデコ
ード信号DMATCHがイネーブルになると、鍵データ照合回
路4では、バスMACBUSに出力された値をアドレスの下位
ビットが示す3番の照合レジスタ7cに格納し、ライト
信号WEとデコード信号DMATCHがイネーブルになると、3
番の照合レジスタ7cの値と3番の鍵レジスタ6cから
バスKREGBUS に出力された値とを照合する。バスKREGBU
S に出力された3番の鍵レジスタ6cの値は、初期化さ
れた値のままであり、照合結果は不一致となり、直ちに
異常検出信号MATCHERRがイネーブルとなり、CPU1に
異常が通知される。
【0072】このように第5の実施の形態では、第2の
実施の形態における効果に加え、CPU1からの1命令
で暴走が検出可能な構成となるように、鍵データをリー
ド信号REがイネーブルになるタイミングで番号フラグ8
によって決まる鍵レジスタに格納するとともに、バスMA
CBUSを介してアドレスの下位ビットが示す照合レジスタ
に格納し、ライト信号WEがイネーブルになるタイミング
でアドレスの下位ビットが示す鍵レジスタからバスKREG
BUS に出力された値と、アドレスの下位ビットが示す照
合レジスタの値とを照合するように構成したので、鍵デ
ータを一度CPU1に読み込むことなく鍵データの照合
が行えるため、処理の高速化を図ることができる。
【0073】〔第6の実施の形態〕次に第6の実施の形
態について、図24〜図28を参照して説明する。図2
4は第6の実施の形態における暴走検出装置のブロック
図である。図19と同一部分には同一符号を付して説明
を省略し、以下異なる部分のみ説明する。第6の実施の
形態では、鍵データ生成回路3は、クロックパルスをカ
ウントし、そのカウント値を鍵データとして生成すると
ともに一定時間以内にクリアパルス12が入力されない
ときにCPU1へ異常検出信号14を出力するウォッチ
ドッグタイマで構成される。以下、本実施の形態では、
鍵データ生成回路3をウォッチドッグタイマ3という。
また、鍵データ照合回路4は、複数の照合レジスタ7
a,7b,7cの他に、所定の照合回数を記憶する照合
回数レジスタ9を備え、所定の照合回数連続して照合結
果が一致したときにクリアパルス12をウォッチドッグ
タイマ3へ出力し、そのカウント値をリセットする。ま
た、CPU1が所定の照合回数を設定するため、CPU
1と鍵データ照合回路4はバスKMACBUSで接続されてい
る。また、CPU1からウォッチドッグタイマ3にカウ
ントを開始させるスタート信号WDTSTARTが入力される。
また、リセット信号RESET はウォッチドッグタイマ3へ
も入力されている。
【0074】次に第6の実施の形態における動作を説明
する。図27,図28に、CPU1が実行するプログラ
ムの例と、CPU1の動作の説明を示す。図27,図2
8中における(5) は、CPU1がデータX'03をアドレ
スX'0000が示すI/O(鍵データ照合回路4)にラ
イトする命令であり、図27,図28中における(6) ,
(7) ,(8) は、それぞれ鍵データ,,の照合を行
う命令とする。また、図27,図28中に記載の「処
理」は、図4同様、CPU1により実行可能な命令の組
み合わせで生じる動作を示す。
【0075】図25,図26は図27,図28のプログ
ラムを実行する際の本実施の形態のタイミングチャート
を示し、図25と図27はCPU1が正常動作時の場合
であり、図26と図28はCPU1が暴走時の場合であ
る。まず、図25と図27を参照しながらCPU1が正
常動作時の場合を説明する。
【0076】はじめに、CPU1がリセット信号RESET
を出力することにより、鍵データ記憶回路5の全ての鍵
レジスタ6a,6b,6cおよび番号フラグ8をリセッ
トし、ウォッチドッグタイマ3のカウント値をリセット
するとともに異常検出信号14をディスエーブルにし、
鍵データ照合回路4の全ての照合レジスタ7a,7b,
7cおよび照合回数レジスタ9をリセットするとともに
異常検出信号MATCHERRとクリアパルス12とをディスエ
ーブルにする。以上のように初期化を行った後、CPU
1がスタート信号WDTSTARTをイネーブルにし、ウォッチ
ドッグタイマ3がカウントを開始する。次に、CPU1
が所定の照合回数を設定するために、アドレスX'000
0をライトアクセスすると、バスKMACBUS を介してデー
タX'03が鍵データ照合回路4の照合回数レジスタ9に
格納される。なお、データX'03は「3回」の照合回数
を示すデータであり、鍵データ照合回路4で、照合が正
常に3回連続して行われ、照合結果が一致するとクリア
パルス12を発生することになる。
【0077】まず、プログラムにおいて鍵データの照
合が指示されると、CPU1はアドレスX'0001をア
クセスする。このとき、リード信号REがイネーブルにな
るとともに、ライト信号WEがリード信号REより少し遅れ
てイネーブルになる。アドレスデコーダ2は、デコード
信号DMATCHをイネーブルにする。リード信号REとデコー
ド信号DMATCHがイネーブルになると、鍵データ生成回路
3は、現時刻の鍵データをバスKDATABUSとバスMACBUSに
出力する。
【0078】鍵データ記憶回路5は、リード信号REとデ
コード信号DMATCHがイネーブルになると、番号フラグ8
を1インクリメントした後、バスKDATABUSの値を番号フ
ラグ8が示す1番の鍵レジスタ6aに格納する。その
後、ライト信号WEとデコード信号DMATCHがイネーブルに
なると、アドレスの下位ビットが示す1番の鍵レジスタ
6aの値をバスKREGBUS に出力する。
【0079】鍵データ照合回路4は、リード信号REとデ
コード信号DMATCHがイネーブルになるとバスMACBUSに出
力された値をアドレスの下位ビットが示す1番の照合レ
ジスタ7aに格納する。その後、ライト信号WEとデコー
ド信号DMATCHがイネーブルになると、1番の照合レジス
タ7aに格納した値と1番の鍵レジスタ6aからバスKR
EGBUS に出力された値とを照合する。ここでは、照合結
果が一致するため、異常検出信号MATCHERRはイネーブル
にならない。また、照合結果が一致した場合には、さら
に照合回数レジスタ9の値とアドレスの下位ビットが示
す値とを照合し、一致すればクリアパルス12をイネー
ブルにするが、ここでは一致しないためクリアパルス1
2はイネーブルにならない。
【0080】また、プログラムにおいて鍵データの照
合が指示されると、CPU1がアドレスX'0002をア
クセスし、同様にして、鍵データ照合回路4では、バス
MACBUSに出力された値を2番の照合レジスタ7bに格納
し、その値と2番の鍵レジスタ6bからバスKREGBUS に
出力された値とを照合する。また、プログラムにおいて
鍵データの照合が指示されると、CPU1がアドレス
X'0003をアクセスし、同様にして、鍵データ照合回
路4では、バスMACBUSに出力された値を3番の照合レジ
スタ7cに格納し、その値と3番の鍵レジスタ6cから
バスKREGBUS に出力された値とを照合する。ここでは、
照合結果が一致し、さらに照合回数レジスタ9の値とア
ドレスの下位ビットが示す値とが一致するため、クリア
パルス12をイネーブルにし、ウォッチドッグタイマ3
のカウント値がクリアされる。CPU1は、プログラム
が正常に実行されているものと判断し、処理を継続でき
る。
【0081】以上は、プログラムが正常に実行されてい
る場合の例である。次に、図26と図28を参照しなが
らCPU1が暴走時の場合、ここではプログラムの流れ
に異常が発生し、プログラムにおいて鍵データの照合
が指示されなかった場合を例にとり説明する。鍵データ
の照合が正常に行われた後、何らかの異常が発生して
鍵データの取得と鍵データの照合を含むいくつかの
処理が暴走もしくは未処理されたものとする。
【0082】後に、プログラムにおいて鍵データの照
合が指示され、リード信号REとデコード信号DMATCHがイ
ネーブルになると、鍵データ記憶回路5では、番号フラ
グ8を1インクリメントした後、バスKDATABUSの値を番
号フラグ8が示す2番の鍵レジスタ6bに格納し、ライ
ト信号WEとデコード信号DMATCHがイネーブルになると、
アドレスの下位ビットが示す3番の鍵レジスタ6cの値
をバスKREGBUS に出力する。また、リード信号REとデコ
ード信号DMATCHがイネーブルになると、鍵データ照合回
路4では、バスMACBUSに出力された値をアドレスの下位
ビットが示す3番の照合レジスタ7cに格納し、ライト
信号WEとデコード信号DMATCHがイネーブルになると、3
番の照合レジスタ7cの値と3番の鍵レジスタ6cから
バスKREGBUS に出力された値とを照合する。バスKREGBU
S に出力された3番の鍵レジスタ6cの値は、初期化さ
れた値のままであり、照合結果は不一致となり、直ちに
異常検出信号MATCHERRがイネーブルとなり、CPU1に
異常が通知される。
【0083】また、本実施の形態では、CPU1が暴走
し、鍵データの取得および照合の未処理状態が連続して
続いているときには、異常検出信号MATCHERRもクリアパ
ルス12もディスエーブルのままであるが、その状態が
ウォッチドッグタイマ3に設定された一定時間を超える
と、ウォッチドッグタイマ3から異常検出信号14が出
力され、CPU1に異常が通知される。
【0084】このように第6の実施の形態によれば、第
5の実施の形態における効果に加え、鍵データ生成回路
3としてウォッチドッグタイマ3を用いたことにより、
CPU1が暴走し、鍵データの読出しおよび照合の処理
が継続して一定時間行われなかったときに、ウォッチド
ッグタイマ3から異常検出信号14が出力され、CPU
1の暴走を検出できる。また、照合回数レジスタ9に設
定された照合回数の回数連続して照合結果が一致したと
きにクリアパルス12を出力するようにしたことによ
り、誤ってウォッチドッグタイマ3がリセットされるの
を防止できる。
【0085】なお、鍵データ生成回路3をウォッチドッ
グタイマで構成せずに、第1,第2の実施の形態と同様
の鍵データ生成回路3を用い、ウォッチドッグタイマを
鍵データ生成回路3とは別に設けた構成としてもよい
が、上記実施の形態のように鍵データ生成回路3をウォ
ッチドッグタイマで構成した方が回路規模が小さくな
る。
【0086】〔第7の実施の形態〕次に、第7の実施の
形態について、図29および図30を参照して説明す
る。図29は第7の実施の形態における暴走検出装置の
ブロック図である。図14と同一部分には同一符号を付
して説明を省略し、以下異なる部分のみ説明する。第7
の実施の形態では、図14に示す第4の実施の形態の構
成に加えて、CPU1と鍵データ照合回路4とをバスRM
ACBUS で接続するとともに、リード信号REを鍵データ照
合回路4へも入力することにより、鍵データ照合回路4
の照合レジスタ7a,7b,7cをリードできるように
している。
【0087】次に第7の実施の形態における動作を説明
する。なお、鍵データの取得および照合については第4
の実施の形態における動作と同じであり、説明を省略す
る。図30は第7の実施の形態における暴走検出後のタ
イミングチャートであり、ここでは、図16に示した第
4の実施の形態における暴走検出の後のタイミングチャ
ートを示す。
【0088】まず、異常検出信号MATCHERRがイネーブル
になると、鍵データ照合回路4は、照合レジスタ7a,
7b,7cへの書き込みを禁止する。そして、CPU1
が鍵データ照合回路4のアドレスX'0001をリードア
クセスする。デコード信号DMATCHとリード信号REが同時
にイネーブルになったときに、鍵データ照合回路4はア
ドレスの下位ビットが示す1番の照合レジスタ7aのデ
ータX'2FをバスRMACBUS に出力する。CPU1はバス
RMACBUS のデータを取り込む。同様に、CPU1は、鍵
データ照合回路4のアドレスX'0002とX'0003を
順次リードアクセスし、2番の照合レジスタ7bのデー
タX'00と3番の照合レジスタ7cのデータX'8Fのデ
ータを順次取り込む。ここで、データX'2Fは1回目の
鍵データ生成と照合が正常に行われた時のウォッチドッ
グタイマ3のカウント値を示し、データX'00は2回目
の照合による書き込みが行われなかったことを示し、デ
ータX'8Fは異常が検出された時のウォッチドッグタイ
マ3のカウント値を示している。
【0089】このように、第7の実施の形態では、異常
検出信号MATCHERRがイネーブルの時、照合レジスタ7
a,7b,7cの書き込みを禁止し、CPU1が鍵デー
タ照合回路4の照合レジスタ7a,7b,7cをリード
できるように構成したので、CPU1は鍵データ照合回
路4から異常検出信号MATCHERRを受け取ったとき、照合
レジスタ7a,7b,7cからデータを読み出すことに
より、暴走検出時および鍵データ生成を受け付けた時の
情報(ウォッチドッグタイマ3のカウント値)と何回目
の鍵データの照合が正常に行われなかったかを認知でき
るため、暴走のメカニズムを解析することができ、ま
た、異常検出後にCPUの行う復旧処理やエラー内容の
表示に用いることができる。
【0090】なお、上記説明では、鍵データ生成回路3
がウォッチドッグタイマ3からなり、生成される鍵デー
タをウォッチドッグタイマ3のカウント値としたが、鍵
データ生成回路3とウォッチドッグタイマとを別々に構
成し、鍵データ生成回路3が時刻を鍵データとして生成
することにより、CPU1が異常検出信号MATCHERRを受
け取り、照合レジスタ7a,7b,7cからデータを読
み出すことにより、暴走検出時および鍵データ生成を受
け付けた時の時刻と、何回目の鍵データの照合が正常に
行われなかったかを認知できる。
【0091】なお、第7の実施の形態では、第4の実施
の形態の構成に加えて照合レジスタ7a,7b,7cを
リードできる構成としたが、第6の実施の形態の構成に
加えて同様に照合レジスタ7a,7b,7cをリードで
きる構成としても、同様の効果を得ることができる。な
お、鍵データ照合回路4に照合回数レジスタ9を有する
第4,第6,第7の実施の形態の暴走検出装置におい
て、照合回数を一度設定した後、次にクリアパルス12
が生成されるまで照合回数レジスタ9への書き込みを禁
止するように構成すれば、クリアパルス12が生成され
るまで照合回数が変更されないので、誤ってクリアパル
ス12が生成されるのを防ぐことができる。
【0092】
【発明の効果】請求項1記載の暴走検出装置は、鍵デー
タ生成回路が時刻により変化する鍵データを生成し、鍵
データ照合回路にCPUから書き込まれる鍵データと、
鍵データ記憶回路に記憶されている鍵データとを照合し
て不一致のときに、異常検出信号をCPUへ出力するよ
うにしてあり、鍵データが時刻により変化するデータで
あるため、CPUの暴走時に、CPUから鍵データ照合
回路に正しい鍵データが誤って書き込まれることを防止
し、処理が正常に実行されているか否かを、照合のたび
に検出し、CPUから正しい鍵データが書き込まれない
と直ちに異常を検出できるので、CPUの暴走を確実に
かつ直ちに検出できる。
【0093】請求項2記載の暴走検出装置は、請求項1
記載の暴走検出装置において、鍵データ記憶回路は、鍵
データ生成回路から読み出される鍵データを定められた
順番に記憶する複数の鍵レジスタを有し、鍵データ照合
回路は、CPUから出力される鍵データが書き込まれ複
数の鍵レジスタのそれぞれと対応する複数の照合レジス
タを有し、CPUから所定の照合レジスタに鍵データが
書き込まれるときに、所定の照合レジスタに書き込まれ
る鍵データと、所定の照合レジスタに対応する鍵レジス
タに記憶された鍵データとを照合するようにしたことに
より、CPUがプログラム処理の実行を誤り、例えばN
回目の鍵データの読出しおよび照合がなされなかった場
合には、N+1回目の鍵データの照合時に照合結果が不
一致となり、鍵データ照合回路から異常検出信号がCP
Uへ出力され、プログラムの流れが異常であることを直
ちに検出できる。
【0094】請求項3記載の暴走検出装置は、請求項1
記載の暴走検出装置において、クロックパルスをカウン
トし一定時間以内にクリアパルスが入力されないときに
CPUへ異常検出信号を出力するウォッチドッグタイマ
を設け、鍵データ照合回路は、照合結果が一致したとき
にウォッチドッグタイマをリセットするクリアパルスを
出力するようにしたことにより、CPUが暴走し、鍵デ
ータの読出しおよび照合の処理が継続して一定時間行わ
れなかったときに、ウォッチドッグタイマから異常検出
信号が出力され、CPUの暴走を検出できる。
【0095】請求項4記載の暴走検出装置は、請求項2
記載の暴走検出装置において、クロックパルスをカウン
トし一定時間以内にクリアパルスが入力されないときに
CPUへ異常検出信号を出力するウォッチドッグタイマ
を設け、鍵データ照合回路は、照合回数が設定される照
合回数レジスタを有し、この照合回数レジスタに設定さ
れた照合回数の回数連続して照合結果が一致したときに
ウォッチドッグタイマをリセットするクリアパルスを出
力するようにしたことにより、CPUが暴走し、鍵デー
タの読出しおよび照合の処理が継続して一定時間行われ
なかったときに、ウォッチドッグタイマから異常検出信
号が出力され、CPUの暴走を検出できる。また、照合
回数レジスタに設定された照合回数の回数連続して照合
結果が一致したときにクリアパルスを出力するようにし
たことにより、誤ってウォッチドッグタイマがリセット
されるのを防止できる。
【0096】請求項5記載の暴走検出装置は、鍵データ
生成回路が時刻により変化する鍵データを生成し、CP
Uが鍵データ生成回路にアクセスしたときに、鍵データ
記憶回路は、複数の鍵レジスタに順番に鍵データを記憶
し、鍵データ照合回路は、所定の照合レジスタに鍵デー
タを記憶し、その後、所定の照合レジスタとそれに対応
する鍵レジスタに記憶された鍵データを照合するように
しているため、CPUがプログラム処理の実行を誤り、
例えばN回目の鍵データの読出しおよび照合がなされな
かった場合には、N+1回目の鍵データの照合時に照合
結果が不一致となり、鍵データ照合回路から異常検出信
号がCPUへ出力され、プログラムの流れが異常である
ことを直ちに検出できる。このように、鍵データを一度
CPUに読み込むことなく、鍵データの照合を行うた
め、処理の高速化を図ることができる。
【0097】請求項6記載の暴走検出装置は、請求項5
記載の暴走検出装置において、クロックパルスをカウン
トし一定時間以内にクリアパルスが入力されないときに
CPUへ異常検出信号を出力するウォッチドッグタイマ
を設け、鍵データ照合回路は、照合回数が設定される照
合回数レジスタを有し、この照合回数レジスタに設定さ
れた照合回数の回数連続して照合結果が一致したときに
ウォッチドッグタイマをリセットするクリアパルスを出
力するようにしたことにより、CPUが暴走し、鍵デー
タの読出しおよび照合の処理が継続して一定時間行われ
なかったときに、ウォッチドッグタイマから異常検出信
号が出力され、CPUの暴走を検出できる。また、照合
回数レジスタに設定された照合回数の回数連続して照合
結果が一致したときにクリアパルスを出力するようにし
たことにより、誤ってウォッチドッグタイマをリセット
するのを防止できる。
【0098】請求項7記載の暴走検出装置は、請求項
3,4または6記載の暴走検出装置において、ウォッチ
ドッグタイマを鍵データ生成回路に共用し、ウォッチド
ッグタイマのカウント値を鍵データとするようにしたこ
とにより、回路規模を小さくできる。請求項8記載の暴
走検出装置は、請求項4または6記載の暴走検出装置に
おいて、ウォッチドッグタイマを鍵データ生成回路に共
用し、前記ウォッチドッグタイマのカウント値を鍵デー
タとし、鍵データ照合回路の複数の照合レジスタのデー
タを読み出し可能にしたことにより、CPUは鍵データ
照合回路から異常検出信号を入力したとき、照合レジス
タからデータを読み出すことにより、暴走検出時および
鍵データ生成を受け付けた時の情報(ウォッチドッグタ
イマのカウント値)と、何回目の鍵データの照合が正常
に行われなかったかを認知できるため、暴走のメカニズ
ムを解析することができ、また、異常検出後にCPUの
行う復旧処理やエラー内容の表示に用いることができ
る。
【0099】請求項9記載の暴走検出装置は、請求項4
または6記載の暴走検出装置において、鍵データ生成回
路は時刻を鍵データとして生成し、鍵データ照合回路の
複数の照合レジスタのデータを読み出し可能にしたこと
により、CPUは鍵データ照合回路から異常検出信号を
入力したとき、照合レジスタからデータを読み出すこと
により、暴走検出時および鍵データ生成を受け付けた時
の時刻と、何回目の鍵データの照合が正常に行われなか
ったかを認知できるため、暴走のメカニズムを解析する
ことができ、また、異常検出後にCPUの行う復旧処理
やエラー内容の表示に用いることができる。
【0100】請求項10記載の暴走検出装置は、請求項
4,6,8または9記載の暴走検出装置において、鍵デ
ータ照合回路は、照合回数レジスタに一旦照合回数が設
定されると、次にクリアパルスを出力するまで照合回数
レジスタへの書き込みを禁止としたことにより、誤って
照合回数が変更され、設定よりも早く誤ってクリアパル
スが出力されるのを防止できる。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態の暴走検出装置を示
すブロック図。
【図2】本発明の第1の実施の形態の暴走検出装置にお
けるCPU正常動作時のタイミングチャート。
【図3】本発明の第1の実施の形態の暴走検出装置にお
ける暴走検出時のタイミングチャート。
【図4】本発明の第1の実施の形態の暴走検出装置のプ
ログラム例と動作説明図。
【図5】本発明の第2の実施の形態の暴走検出装置を示
すブロック図。
【図6】本発明の第2の実施の形態の暴走検出装置にお
けるCPU正常動作時のタイミングチャート。
【図7】本発明の第2の実施の形態の暴走検出装置にお
けるCPU暴走検出時のタイミングチャート。
【図8】本発明の第2の実施の形態の暴走検出装置のプ
ログラム例とCPU正常時の動作説明図。
【図9】本発明の第2の実施の形態の暴走検出装置のプ
ログラム例とCPU暴走時の動作説明図。
【図10】本発明の第3の実施の形態の暴走検出装置を
示すブロック図。
【図11】本発明の第3の実施の形態の暴走検出装置に
おけるCPU正常動作時のタイミングチャート。
【図12】本発明の第3の実施の形態の暴走検出装置に
おける暴走検出時のタイミングチャート。
【図13】本発明の第3の実施の形態の暴走検出装置の
プログラム例と動作説明図。
【図14】本発明の第4の実施の形態の暴走検出装置を
示すブロック図。
【図15】本発明の第4の実施の形態の暴走検出装置に
おけるCPU正常動作時のタイミングチャート。
【図16】本発明の第4の実施の形態の暴走検出装置に
おけるCPU暴走検出時のタイミングチャート。
【図17】本発明の第4の実施の形態の暴走検出装置の
プログラム例とCPU正常時の動作説明図。
【図18】本発明の第4の実施の形態の暴走検出装置の
プログラム例とCPU暴走時の動作説明図。
【図19】本発明の第5の実施の形態の暴走検出装置を
示すブロック図。
【図20】本発明の第5の実施の形態の暴走検出装置に
おけるCPU正常動作時のタイミングチャート。
【図21】本発明の第5の実施の形態の暴走検出装置に
おけるCPU暴走検出時のタイミングチャート。
【図22】本発明の第5の実施の形態の暴走検出装置の
プログラム例とCPU正常時の動作説明図。
【図23】本発明の第5の実施の形態の暴走検出装置の
プログラム例とCPU暴走時の動作説明図。
【図24】本発明の第6の実施の形態の暴走検出装置を
示すブロック図。
【図25】本発明の第6の実施の形態の暴走検出装置に
おけるCPU正常動作時のタイミングチャート。
【図26】本発明の第6の実施の形態の暴走検出装置に
おけるCPU暴走検出時のタイミングチャート。
【図27】本発明の第6の実施の形態の暴走検出装置の
プログラム例とCPU正常時の動作説明図。
【図28】本発明の第6の実施の形態の暴走検出装置の
プログラム例とCPU暴走時の動作説明図。
【図29】本発明の第7の実施の形態の暴走検出装置を
示すブロック図。
【図30】本発明の第7の実施の形態の暴走検出装置に
おける暴走検出後のタイミングチャート。
【図31】第1の従来例の暴走検出装置を示すブロック
図。
【図32】第2の従来例の暴走検出装置を示すブロック
図。
【符号の説明】
1 CPU 2 アドレスデコーダ 3 鍵データ生成回路 4 鍵データ照合回路 5 鍵データ記憶回路 6,6a,6b,6c 鍵レジスタ 7,7a,7b,7c 照合レジスタ 8 番号フラグ 9 照合回数レジスタ

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】 時刻により変化する鍵データを生成する
    鍵データ生成回路と、 この鍵データ生成回路から前記鍵データを読み出すとと
    もに記憶し、この記憶した鍵データを出力するCPU
    と、 このCPUにより前記鍵データ生成回路から読み出され
    る前記鍵データを記憶し、この記憶した鍵データを前記
    CPUが前記鍵データを出力するときに出力する鍵デー
    タ記憶回路と、 前記CPUから出力される鍵データと前記鍵データ記憶
    回路から出力される鍵データとを照合し、この照合結果
    が不一致のときに前記CPUへ異常検出信号を出力する
    鍵データ照合回路とを備えた暴走検出装置。
  2. 【請求項2】 鍵データ記憶回路は、鍵データ生成回路
    から読み出される鍵データを定められた順番に記憶する
    複数の鍵レジスタを有し、 鍵データ照合回路は、CPUから出力される鍵データが
    書き込まれ前記複数の鍵レジスタのそれぞれと対応する
    複数の照合レジスタを有し、前記CPUから所定の照合
    レジスタに鍵データが書き込まれるときに、前記所定の
    照合レジスタに書き込まれる鍵データと、前記所定の照
    合レジスタに対応する前記鍵レジスタに記憶された鍵デ
    ータとを照合するようにしたことを特徴とする請求項1
    記載の暴走検出装置。
  3. 【請求項3】 クロックパルスをカウントし一定時間以
    内にクリアパルスが入力されないときにCPUへ異常検
    出信号を出力するウォッチドッグタイマを設け、鍵デー
    タ照合回路は、照合結果が一致したときに前記ウォッチ
    ドッグタイマをリセットする前記クリアパルスを出力す
    るようにしたことを特徴とする請求項1記載の暴走検出
    装置。
  4. 【請求項4】 クロックパルスをカウントし一定時間以
    内にクリアパルスが入力されないときにCPUへ異常検
    出信号を出力するウォッチドッグタイマを設け、鍵デー
    タ照合回路は、照合回数が設定される照合回数レジスタ
    を有し、この照合回数レジスタに設定された照合回数の
    回数連続して照合結果が一致したときに前記ウォッチド
    ッグタイマをリセットする前記クリアパルスを出力する
    ようにしたことを特徴とする請求項2記載の暴走検出装
    置。
  5. 【請求項5】 時刻により変化する鍵データを生成し、
    CPUにアクセスされたときに前記鍵データを出力する
    鍵データ生成回路と、 複数の鍵レジスタを有し、前記鍵データ生成回路から出
    力される前記鍵データを定められた順番の前記鍵レジス
    タに記憶する鍵データ記憶回路と、 前記複数の鍵レジスタのそれぞれと対応する複数の照合
    レジスタを有し、前記鍵データ生成回路から出力される
    前記鍵データを所定の前記照合レジスタに記憶し、この
    所定の照合レジスタに記憶した鍵データと前記所定の照
    合レジスタに対応する前記鍵レジスタに記憶された鍵デ
    ータとを照合し、この照合結果が不一致のときに前記C
    PUへ異常検出信号を出力する鍵データ照合回路とを備
    えた暴走検出装置。
  6. 【請求項6】 クロックパルスをカウントし一定時間以
    内にクリアパルスが入力されないときにCPUへ異常検
    出信号を出力するウォッチドッグタイマを設け、鍵デー
    タ照合回路は、照合回数が設定される照合回数レジスタ
    を有し、この照合回数レジスタに設定された照合回数の
    回数連続して照合結果が一致したときに前記ウォッチド
    ッグタイマをリセットする前記クリアパルスを出力する
    ようにしたことを特徴とする請求項5記載の暴走検出装
    置。
  7. 【請求項7】 ウォッチドッグタイマを鍵データ生成回
    路に共用し、前記ウォッチドッグタイマのカウント値を
    鍵データとするようにしたことを特徴とする請求項3,
    4または6記載の暴走検出装置。
  8. 【請求項8】 ウォッチドッグタイマを鍵データ生成回
    路に共用し、前記ウォッチドッグタイマのカウント値を
    鍵データとし、鍵データ照合回路の複数の照合レジスタ
    のデータを読み出し可能にしたことを特徴とする請求項
    4または6記載の暴走検出装置。
  9. 【請求項9】 鍵データ生成回路は時刻を鍵データとし
    て生成し、鍵データ照合回路の複数の照合レジスタのデ
    ータを読み出し可能にしたことを特徴とする請求項4ま
    たは6記載の暴走検出装置。
  10. 【請求項10】 鍵データ照合回路は、照合回数レジス
    タに一旦照合回数が設定されると、次にクリアパルスを
    出力するまで前記照合回数レジスタへの書き込みを禁止
    としたことを特徴とする請求項4,6,8または9記載
    の暴走検出装置。
JP10115243A 1998-04-24 1998-04-24 暴走検出装置 Pending JPH11306047A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10115243A JPH11306047A (ja) 1998-04-24 1998-04-24 暴走検出装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10115243A JPH11306047A (ja) 1998-04-24 1998-04-24 暴走検出装置

Publications (1)

Publication Number Publication Date
JPH11306047A true JPH11306047A (ja) 1999-11-05

Family

ID=14657896

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10115243A Pending JPH11306047A (ja) 1998-04-24 1998-04-24 暴走検出装置

Country Status (1)

Country Link
JP (1) JPH11306047A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106293983A (zh) * 2016-08-09 2017-01-04 厦门天锐科技股份有限公司 一种检测服务器是否正常运行的方法
WO2021171472A1 (ja) * 2020-02-27 2021-09-02 サンケン電気株式会社 異常検出回路及び異常検出方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106293983A (zh) * 2016-08-09 2017-01-04 厦门天锐科技股份有限公司 一种检测服务器是否正常运行的方法
WO2021171472A1 (ja) * 2020-02-27 2021-09-02 サンケン電気株式会社 異常検出回路及び異常検出方法
JPWO2021171472A1 (ja) * 2020-02-27 2021-09-02

Similar Documents

Publication Publication Date Title
US5875195A (en) Method and apparatus for error injection techniques
US7506217B2 (en) Apparatus and method for software-based control flow checking for soft error detection to improve microprocessor reliability
EP2294526B1 (en) A method for secure data reading and a data handling system
US8001432B2 (en) Uninitialized memory detection using error correction codes and built-in self test
US5559992A (en) Apparatus and method for protecting data in a memory address range
US5276844A (en) Protection system for critical memory information
US7568130B2 (en) Automated hardware parity and parity error generation technique for high availability integrated circuits
US5668973A (en) Protection system for critical memory information
US20200226050A1 (en) Checksum generation
US7539906B2 (en) System for integrated data integrity verification and method thereof
JPH11306047A (ja) 暴走検出装置
EP2677429A1 (en) Error correction
US5898867A (en) Hierarchical memory system for microcode and means for correcting errors in the microcode
US20030005241A1 (en) Write protect method
Yiu Design of soc for high reliability systems with embedded processors
US7321996B1 (en) Digital data error insertion methods and apparatus
JPH1063541A (ja) コンピュータシステムのプログラム暴走監視装置
CN116700786B (zh) 一种微控制器及防止微控制器Flash误擦写的方法
US11868475B1 (en) System and methods for latency reduction for fuse reload post reset
JP4543505B2 (ja) マイクロコンピュータの制御方法及び異常監視装置
JPH0644098A (ja) メモリ・アクセス・バス・コンパレータ
JPS6346460B2 (ja)
JP3172981B2 (ja) 未使用メモリ空間アクセスエラー検出回路
CN112468296A (zh) 一种密钥编程方法、系统、电子设备及存储介质
JPH08166891A (ja) フォールトトレラントコンピュータシステム