JPS62205446A - 異常動作検出装置 - Google Patents
異常動作検出装置Info
- Publication number
- JPS62205446A JPS62205446A JP61049007A JP4900786A JPS62205446A JP S62205446 A JPS62205446 A JP S62205446A JP 61049007 A JP61049007 A JP 61049007A JP 4900786 A JP4900786 A JP 4900786A JP S62205446 A JPS62205446 A JP S62205446A
- Authority
- JP
- Japan
- Prior art keywords
- byte
- instruction
- abnormal operation
- rom
- processing device
- 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
- 230000002159 abnormal effect Effects 0.000 title claims abstract description 32
- 238000001514 detection method Methods 0.000 claims description 10
- 238000012795 verification Methods 0.000 claims description 5
- 101100087530 Caenorhabditis elegans rom-1 gene Proteins 0.000 abstract 2
- 101100305983 Mus musculus Rom1 gene Proteins 0.000 abstract 2
- 238000000034 method Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 2
- 238000000605 extraction Methods 0.000 description 2
- 208000024891 symptom Diseases 0.000 description 2
- 206010000117 Abnormal behaviour Diseases 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
Landscapes
- Debugging And Monitoring (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔概要〕
マイクロプロセッサなど所定バイトの命令コードと所定
バイトのオペランドとからなる命令語を使用する処理装
置において、命令コードおよびオペランドを構成するバ
イト毎の属性の出現順序によって、その異常動作の有無
を検出できるように構成したものである。
バイトのオペランドとからなる命令語を使用する処理装
置において、命令コードおよびオペランドを構成するバ
イト毎の属性の出現順序によって、その異常動作の有無
を検出できるように構成したものである。
本発明は2マイクロプロセツサなどの処理装置に用いら
れる異常動作検出装置に関するものである。
れる異常動作検出装置に関するものである。
処理装置の異常動作は、基本的にはハードウェアに起因
するものとソフトウェアに起因するものとに大別するこ
とができる。
するものとソフトウェアに起因するものとに大別するこ
とができる。
前者は、ノイズ・撮動など一時的な一外乱によって処理
装置を構成する各種のカウンタやレジスタの内容が変化
し、プログラムの実行順序あるいは次に取り出すべき命
令語の主記憶装置上のアドレスが変化することなどによ
るものであり、ノイズや振動の多い環境においては、こ
れを避けられない場合が多い。
装置を構成する各種のカウンタやレジスタの内容が変化
し、プログラムの実行順序あるいは次に取り出すべき命
令語の主記憶装置上のアドレスが変化することなどによ
るものであり、ノイズや振動の多い環境においては、こ
れを避けられない場合が多い。
後者は、プログラムの障害(バグ)のために。
処理の対象となるデータ(オペランド)を誤って命令と
見なして実行し、論理矛盾を起こすことによるものなど
である。
見なして実行し、論理矛盾を起こすことによるものなど
である。
このように異常動作の原因は多種多様であり。
その結果生ずる症状も複雑かつ多様なため、異常動作の
検出については完全な手段はない。
検出については完全な手段はない。
したがって、予め各種の異常動作の症状を想定して、そ
れぞれに通した検出手段を組合せ、異常動作の検出確率
を高めることが重要である。
れぞれに通した検出手段を組合せ、異常動作の検出確率
を高めることが重要である。
前記のように、処理装置における異、常動作の検出には
、一つの方法で十分ということはなく、複数の方法を組
み合わせて検出確度を高める必要から、従来から種々の
方法が提案されており、大別すると、ウォッチドッグタ
イマ(監視タイマ)方式およびアドレスチェック方式に
分けられる。
、一つの方法で十分ということはなく、複数の方法を組
み合わせて検出確度を高める必要から、従来から種々の
方法が提案されており、大別すると、ウォッチドッグタ
イマ(監視タイマ)方式およびアドレスチェック方式に
分けられる。
ウォッチドッグタイマ方式は、プログラムの正常な進行
に合わせてソフトウェアによるクロックを発生させ、こ
れによってタイマをリセットさせるように構成し、タイ
マのオーバフローによって異常動作を検出するようにし
たものである。
に合わせてソフトウェアによるクロックを発生させ、こ
れによってタイマをリセットさせるように構成し、タイ
マのオーバフローによって異常動作を検出するようにし
たものである。
またアドレスチェック方式は、処理装置は、主記憶装置
上および入出力装置などのアドレスのうち2割付けがな
されていないアドレスをアクセスすることがないことに
着目したものであり、処理装置から出されたアドレスを
デコードし、これが割り付けられていないアドレスであ
る場合には異常動作と見なすようにしたものである。
上および入出力装置などのアドレスのうち2割付けがな
されていないアドレスをアクセスすることがないことに
着目したものであり、処理装置から出されたアドレスを
デコードし、これが割り付けられていないアドレスであ
る場合には異常動作と見なすようにしたものである。
上記従来例のうち、ウオッチドックタイマ方式では、タ
イマがオーバフローするまで異常動作を検出できないの
で、異常動作の検出までに長時間を要し、その間にデー
タあるいはレジスタの破壊が進行しやすいという問題点
、およびソフトウェアクロックを作るためにプログラム
の作成が複雑になるという問題点がある。
イマがオーバフローするまで異常動作を検出できないの
で、異常動作の検出までに長時間を要し、その間にデー
タあるいはレジスタの破壊が進行しやすいという問題点
、およびソフトウェアクロックを作るためにプログラム
の作成が複雑になるという問題点がある。
またアドレスチェック方式では、デコード回路の簡略化
のため2通常、アドレスを完全デコードしない場合が多
いが、このような場合には異常動作を検出できない場合
が生ずるという問題点、また、ノイズ等の外乱によって
プログラムカウンタが正常動作しなくなった場合の異常
動作は、はとんど検出できないという問題点がある。
のため2通常、アドレスを完全デコードしない場合が多
いが、このような場合には異常動作を検出できない場合
が生ずるという問題点、また、ノイズ等の外乱によって
プログラムカウンタが正常動作しなくなった場合の異常
動作は、はとんど検出できないという問題点がある。
これら問題点を除くため1本発明は従来例とは異なった
観点から異常動作を検出し、従来例と併用することによ
り、異常動作の検出確度を高めることを目的とするもの
である。
観点から異常動作を検出し、従来例と併用することによ
り、異常動作の検出確度を高めることを目的とするもの
である。
本発明による異常動作検出装置は、第り図の原理図に示
すように、処理装置4が実行する目的プログラムをバイ
ト単位に記憶するプログラム記憶部1と、前記目的プロ
グラムのバイト毎の属性をプログラム記憶部1のアドレ
スに対応させて記憶する属性記憶部2と、属性記憶部2
から読み出されたバイト毎の属性の出現順序を所定の規
則によって検証する検証部3とによって構成したもので
ある。
すように、処理装置4が実行する目的プログラムをバイ
ト単位に記憶するプログラム記憶部1と、前記目的プロ
グラムのバイト毎の属性をプログラム記憶部1のアドレ
スに対応させて記憶する属性記憶部2と、属性記憶部2
から読み出されたバイト毎の属性の出現順序を所定の規
則によって検証する検証部3とによって構成したもので
ある。
プログラム記憶部1に記憶する目的プログラムは命令語
の集まりであり、これを処理装置がアドレスを指定する
ことによって順次に取り出して解釈し実行する。
の集まりであり、これを処理装置がアドレスを指定する
ことによって順次に取り出して解釈し実行する。
目的プログラムを構成する命令語(機械語)は。
第2図に示すように、nバイトの命令コードとmバイト
のオペランドとの組合せによって表され。
のオペランドとの組合せによって表され。
n−mは整数で、具体的な値は処理装置4のアーキテク
チャによって定まる。
チャによって定まる。
また各命令語の組合せには次に例示するような規則があ
る。
る。
規則−に最後の命令コード(n)をフェッチしたあとに
他の命令コードをフェッチしない。
他の命令コードをフェッチしない。
規則−2:最後のオペランド(mlをフェッチしたあと
に他のオペランドをフェッチしない。
に他のオペランドをフェッチしない。
すなわち2本発明は、処理装置4からのアクセスによっ
てプログラム記憶部1から読み出された命令コードおよ
びオペランドについて、命令語毎に決まっているバイト
毎の取り出し順序等の属性によって、処理装置4から出
されるアドレスの誤りの有無を検証し、その異常動作の
有無を検出できるように構成したものである。
てプログラム記憶部1から読み出された命令コードおよ
びオペランドについて、命令語毎に決まっているバイト
毎の取り出し順序等の属性によって、処理装置4から出
されるアドレスの誤りの有無を検証し、その異常動作の
有無を検出できるように構成したものである。
第3図(a)〜(C)に実施例の構成図を示す。
第3図(alは全体の概略図で、1′はプログラム記憶
部として用いられる第一のリードオンリメモリ (RO
M)、 2’ は属性記憶部として用いられる第二の
リードオンリメモリである。
部として用いられる第一のリードオンリメモリ (RO
M)、 2’ は属性記憶部として用いられる第二の
リードオンリメモリである。
処理装置4はアドレスバスを介して第一のリードオンリ
メモリ1′をアクセスし、これに記憶する目的プログラ
ムをバイト毎に読み取り、読み取られた命令コード・オ
ペランド等はデータバスを介して処理装置4に取り込ま
れる。
メモリ1′をアクセスし、これに記憶する目的プログラ
ムをバイト毎に読み取り、読み取られた命令コード・オ
ペランド等はデータバスを介して処理装置4に取り込ま
れる。
同時にこのとき、アドレスバスを介し同じアドレスによ
って第二のリードオンリメモリ2′がアクセスされ、目
的プログラムを構成する命令語のバイト毎の属性、すな
わち、命令コードがオペランドかの区分および各々にお
ける正しい取出し順位が読み出される。
って第二のリードオンリメモリ2′がアクセスされ、目
的プログラムを構成する命令語のバイト毎の属性、すな
わち、命令コードがオペランドかの区分および各々にお
ける正しい取出し順位が読み出される。
第3図伽)は検証部3の第一の構成例で、前記規則−1
によって処理装置4の異常動作を検出するように構成し
たものである。
によって処理装置4の異常動作を検出するように構成し
たものである。
すなわち、処理装置4が第一のリードオンリメモリ1′
に記憶している何等かの命令語の最終命令コード(n)
を取り込むと、同時にその属性が第二のリードオンリメ
モリ2′から取り込まれ、 AND回路31を介して
D型フリップフロップ32にクロック信号CLKが与え
られるので、D端子に接続されている“1”がQ端子に
現れる。
に記憶している何等かの命令語の最終命令コード(n)
を取り込むと、同時にその属性が第二のリードオンリメ
モリ2′から取り込まれ、 AND回路31を介して
D型フリップフロップ32にクロック信号CLKが与え
られるので、D端子に接続されている“1”がQ端子に
現れる。
そのあと、もし処理装置4が第一のリードオンリメモリ
1′から何等かの命令語を取り込んだとすると、これは
前記規則に反した異常動作であり。
1′から何等かの命令語を取り込んだとすると、これは
前記規則に反した異常動作であり。
このときOR回路33およびAND回路回路34によっ
てD型フリフブフロップ35にクロック信号CLKが与
えられ、フリップフロップ35のQ端子に異常動作検出
信号が現れる。
てD型フリフブフロップ35にクロック信号CLKが与
えられ、フリップフロップ35のQ端子に異常動作検出
信号が現れる。
なお、 AND回路36は、フリップフロップ32お
よびフリップフロップ35に対するリセット信号を作る
ために設けたものである。
よびフリップフロップ35に対するリセット信号を作る
ために設けたものである。
第3図(0)は検証部3の第二の構成例で、前記規則−
2によって処理装置4の異常動作を検出するように構成
したものであり、最終オペランド(−を取り込んだあと
に、何等かのオペランドを取り込むと異常動作検出信号
が現れる。
2によって処理装置4の異常動作を検出するように構成
したものであり、最終オペランド(−を取り込んだあと
に、何等かのオペランドを取り込むと異常動作検出信号
が現れる。
以上説明したように9本発明の異常動作検出装置は命令
の取り込み順序の誤りによって処理装置の異常動作を検
出するものであり、比較的簡単な回路によって、従来例
とは異なった見地から、処理装置の各種の異常動作を短
時間に検出することができる。
の取り込み順序の誤りによって処理装置の異常動作を検
出するものであり、比較的簡単な回路によって、従来例
とは異なった見地から、処理装置の各種の異常動作を短
時間に検出することができる。
第1図は本発明の原理図。
第2図は作用の説明図。
第3図(a)〜(C1は実施例の構成図である。
図中。
1はプログラム記憶部、2は属性記憶部。
3は検証部、 4は処理装置を表す。
Claims (2)
- (1)、所定バイトの命令コードと所定バイトのオペラ
ンドとによって構成された命令語を使用する処理装置の
異常動作を検出する異常動作検出装置であって、 一連の命令語によって構成される目的プログラムをバイ
ト単位に記憶するプログラム記憶部(1)と、 前記目的プログラムのバイト毎の属性をプログラム記憶
部(1)のアドレスに対応させて記憶する属性記憶部(
2)と、 属性記憶部(2)から読み出されたバイト毎の属性の出
現順序を所定の規則によって検証する検証部(3)とを
備えることを特徴とする異常動作検出装置。 - (2)、前記属性として命令語を構成する命令コードま
たはオペランドのバイト毎の取出し順序を用いることを
特徴とする特許請求の範囲第(1)項記載の異常動作検
出装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61049007A JPS62205446A (ja) | 1986-03-06 | 1986-03-06 | 異常動作検出装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP61049007A JPS62205446A (ja) | 1986-03-06 | 1986-03-06 | 異常動作検出装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPS62205446A true JPS62205446A (ja) | 1987-09-10 |
Family
ID=12819107
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP61049007A Pending JPS62205446A (ja) | 1986-03-06 | 1986-03-06 | 異常動作検出装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPS62205446A (ja) |
-
1986
- 1986-03-06 JP JP61049007A patent/JPS62205446A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Namjoo et al. | Watchdog processors and capability checking | |
US3618042A (en) | Error detection and instruction reexecution device in a data-processing apparatus | |
JPS62205446A (ja) | 異常動作検出装置 | |
JPS60142747A (ja) | 命令再実行制御方式 | |
JP3616588B2 (ja) | マイクロプログラムチェックシステム | |
JP2782471B2 (ja) | データ転送のリトライ制御方式 | |
JP2503210B2 (ja) | マイクロプログラム制御装置 | |
JPS6083149A (ja) | コンピユ−タ | |
JPH0371236A (ja) | エラー検出システム | |
JPH0199144A (ja) | Romデータ保証方式 | |
JPS6385831A (ja) | マイクロプロセツサの制御回路 | |
JPH04235638A (ja) | プリフェッチ機能付マイクロプロセッサ | |
JPH0333939A (ja) | マイクロプロセッサ | |
JPS61145643A (ja) | 可変語長命令処理方式 | |
JPS62127944A (ja) | 情報処理装置 | |
JPS6175441A (ja) | アドレス履歴記憶装置 | |
JPH07105000A (ja) | フェッチエラー制御装置 | |
JPS61195432A (ja) | 汎用マイクロプロセツサにおけるパリテイチエツク再試行方式 | |
JPS6083146A (ja) | Go/to文計数用コンパイラオプシヨン | |
JPS61269744A (ja) | デバグ方式 | |
JPS621049A (ja) | メモリのアクセス制御方式 | |
JPS6132698B2 (ja) | ||
JPS59183442A (ja) | 命令の有効性判定方式 | |
JPH01197849A (ja) | データ処理装置およびその障害処理における命令再実行方法 | |
JPS63101947A (ja) | エラ−処理方式 |