JP3169879B2 - マイクロプロセッサ暴走検出方式 - Google Patents

マイクロプロセッサ暴走検出方式

Info

Publication number
JP3169879B2
JP3169879B2 JP01448698A JP1448698A JP3169879B2 JP 3169879 B2 JP3169879 B2 JP 3169879B2 JP 01448698 A JP01448698 A JP 01448698A JP 1448698 A JP1448698 A JP 1448698A JP 3169879 B2 JP3169879 B2 JP 3169879B2
Authority
JP
Japan
Prior art keywords
data
microprocessor
identification data
register
identification
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 - Fee Related
Application number
JP01448698A
Other languages
English (en)
Other versions
JPH11212828A (ja
Inventor
秀明 平野
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.)
NEC Communication Systems Ltd
Original Assignee
NEC Communication Systems 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 NEC Communication Systems Ltd filed Critical NEC Communication Systems Ltd
Priority to JP01448698A priority Critical patent/JP3169879B2/ja
Publication of JPH11212828A publication Critical patent/JPH11212828A/ja
Application granted granted Critical
Publication of JP3169879B2 publication Critical patent/JP3169879B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はマイクロプロセッサ
暴走検出方式に関し、特に分岐命令によるアドレスを監
視するマイクロプロセッサ暴走検出方式に関する。
【0002】
【従来の技術】一般に、マイクロプロセッサを使用した
装置ではマイクロプロセッサが装置全体の管理制御を行
なっているため、マイクロプロセッサ自体のハードウェ
ア的故障のみならず、プログラムの読み込み誤り、プロ
グラムコードの誤りや規定のアドレス範囲を越えた場
合、マイクロプロセッサは暴走し、制御不能になる。こ
のためプログラムの読み込み誤りに対しては、パリティ
ビットの付加、ハミングコードによる誤り訂正・誤り検
出符号等の適用により対処しているのが一般的である。
【0003】また、アドレス飛び越しによるプログラム
暴走については、予め設定したアドレスと読み込みアド
レスとのコンパレータ比較による対処等が行なわれてい
る。
【0004】このようなアドレスによるプログラム暴走
を防止する技術の一例として、特開平2−141837
号公報記載の「マイクロプロセッサ制御方式」が知られ
ている。この公報では、プログラムコードが記憶されて
いない領域をマイクロプロセッサが読み込んだことを障
害として検出したり、命令コードを解析して読み込まれ
たプログラムコードが命令コードかデータコードかを解
析し検出するため、プログラムコードが記憶されている
領域内でのマイクロプロセッサ読み出し中におけるマイ
クロプロセッサ暴走を防止する技術が記載されている。
【0005】図8は従来のマイクロプロセッサ暴走検出
方式を示すブロック図である。
【0006】図8を参照すると、マイクロプロセッサ4
1と、主記憶装置42とから構成されており、主記憶装
置42の記憶領域に各番地に対して記憶領域51が用意
されており、この記憶領域51に正規にプログラムされ
た部分とプログラムされていない部分とを識別する識別
情報52が記憶されている。識別手段53はマイクロプ
ロセッサ41がアクセスした主記憶装置42の識別情報
52を参照し、正規のアクセスであるか異常アクセスで
あるかを識別する。異常処理手段54は識別手段53の
識別結果が異常アクセスであるとき異常時の対策処理を
行なう。
【0007】またアドレスによるプログラム暴走を防止
する技術の他の一例として、特開平2−300944号
公報記載の「暴走検出回路」が知られている。この公報
ではプログラムが暴走した場合、暴走を高い精度で検出
する技術が記載されている。
【0008】図9は従来のマイクロプロセッサ暴走検出
方式の他の例を示すブロック図である。
【0009】図9を参照すると、プログラムデータ61
がROM部62に格納されている。プログラムデータ6
1には、ID命令・データコード部と、このデータコー
ドが命令であるかデータであるかを識別する識別コード
ビットとが含まれている。データ識別レジスタ63は、
プログラムデータ61中の識別コードビットを一時ラッ
チして出力する。ステート解析部64は、プログラムデ
ータ61のID命令・データコード部のもつステート情
報が、命令コード処理ステートかデータコード処理ステ
ートかを解読して、ステート判別情報として出力する。
比較回路65は、データ識別レジスタ63の出力データ
の内容と、ステート解析部64から出力されるステート
判別情報の内容が一致していないときに不一致検出信号
66を出力し、プログラムの暴走を防止している。
【0010】
【発明が解決しようとする課題】上述した従来のマイク
ロプロセッサ暴走検出方式は、プログラムデータの誤り
により意図しない分岐処理が行なわれた場合や、分岐先
命令コードが命令途上に存在する場合の暴走が検出でき
ないので、暴走検出精度が低下するという欠点を有して
いる。
【0011】また、多くの複雑な命令コードを解析する
ため、障害検出回路が大規模になるという欠点を有して
いる。
【0012】本発明の目的は、マイクロプロセッサのプ
ログラムが異常な分岐命令を実行したときの暴走を簡易
な回路構成により高い精度で検出できるマイクロプロセ
ッサ暴走検出方式を提供することにある。
【0013】
【課題を解決するための手段】 本発明のマイクロプロ
セッサ暴走検出方式は、マイクロプロセッサ暴走検出方
式において、前記マイクロプロセッサと; このマイクロ
プロセッサが出力するアドレスデータにより、プログラ
ムデータを出力する第1のメモリと; 前記アドレスデー
タに対応して、記憶した識別データを出力する第2のメ
モリと; 前記識別データを読み込み、判定データを出力
するレジスタと; 前記判定データの値により障害検出信
号を出力する判定回路と; 前記判定データの値により、
禁止制御信号を前記レジスタに出力するカウンタと;
備え、 前記識別データの数値が、前記判定回路の期待す
る命令コードの最初を示す識別データであった場合前記
判定回路はこれを正常と見なし、前記判定回路の期待す
る命令コードの最初を示す識別データでない場合、前記
判定回路は前記マイクロプロセッサが正常なプログラム
を読めなかったと判断することを特徴としている。
【0014】マイクロプロセッサ暴走検出方式におい
て、前記マイクロプロセッサと;このマイクロプロセッ
サが出力するアドレスデータにより、プログラムデータ
を出力する第1のメモリと;前記アドレスデータに対応
して、記憶した識別データを出力する第2のメモリと;
前記識別データを読み込み、判定データを出力するレジ
スタと;前記判定データの値により障害検出信号を出力
する判定回路と;前記判定データの値により、禁止制御
信号を前記レジスタに出力するカウンタと;を備え
記マイクロプロセッサが分岐先アドレスを参照する分岐
命令を実行している場合、前記第2のメモリから前記分
岐先アドレスを読み込むために、前記第1のメモリから
出力されるデータ数に対応する識別データが前記第2の
メモリから出力され、この識別データが前記レジスタか
ら前記カウンタへ前記判定データとして通知され、この
判定データから前記カウンタは前記マイクロプロセッサ
が数値データを読み取るために出力するアドレスの数を
算出し、この数値分だけ前記レジスタが前記識別データ
を読み込むのを停止させるための前記禁止制御信号を前
記レジスタに対して出力し、前記識別データの値が前記
判定回路の期待する命令コードの最初を示す識別データ
であった場合前記判定回路は正常と見なし次の識別デー
タの判定を行ない、前記命令コードの最初を示す識別デ
ータでない場合、前記判定回路は前記マイクロプロセッ
サが正常なプログラムを読み込めなかったと判断し、前
記障害検出信号を出力することを特徴としている。
【0015】マイクロプロセッサ暴走検出方式におい
て、前記マイクロプロセッサと;このマイクロプロセッ
サが出力するアドレスデータにより、プログラムデータ
を出力する第1のメモリと;前記アドレスデータに対応
して、記憶した識別データを出力する第2のメモリと;
前記識別データを読み込み、判定データを出力するレジ
スタと;前記判定データの値により障害検出信号を出力
する判定回路と;前記判定データの値により、禁止制御
信号を前記レジスタに出力するカウンタと;前記障害検
出信号により障害処理を行なう障害処理回路と;を備
前記マイクロプロセッサが分岐先アドレスを参照す
る分岐命令を実行している場合、前記第2のメモリから
前記分岐先アドレスを読み込むために、前記第1のメモ
リから出力されるデータ数に対応する識別データが前記
第2のメモリから出力され、この識別データが前記レジ
スタから前記カウンタへ前記判定データとして通知さ
れ、この判定データから前記カウンタは前記マイクロプ
ロセッサが数値データを読み取るために出力するアドレ
スの数を算出し、この数値分だけ前記レジスタが前記識
別データを読み込むのを停止させるための前記禁止制御
信号を前記レジスタに対して出力し、前記識別データの
値が前記判定回路の期待する命令コードの最初を示す識
別データであった場合前記判定回路は正常と見なし次の
識別データの判定を行ない、前記命令コードの最初を示
す識別データでない場合、前記判定回路は前記マイクロ
プロセッサが正常なプログラムを読み込めなかったと判
断し、前記障害検出信号を出力し、この障害検出信号を
受けたとき所定の障害処理を実施することを特徴として
いる。
【0016】前記レジスタと、前記カウンタと、前記判
定回路とを、集積回路により一体化したことを特徴とし
ている。
【0017】前記レジスタと、前記カウンタと、前記判
定回路と、前記障害処理回路とを、集積回路により一体
化したことを特徴としている。
【0018】
【発明の実施の形態】次に、本発明の実施の形態につい
て図面を参照して説明する。
【0019】図1は本発明のマイクロプロセッサ暴走検
出方式の一つの実施の形態を示すブロック図である。
【0020】図1に示す本実施の形態は、マイクロプロ
セッサ1と、プログラムデータ9を格納した主記憶装置
2と、分岐命令実行時に数値データを読み込む数値を格
納した識別データメモリ3と、識別データメモリ3から
識別データ16を読み込み、判定データ17を出力する
レジスタ4と、判定データ17の順序を監視し識別デー
タ16が正常に識別データメモリ3から読み出している
かどうかを監視し、異常時に障害検出信号18を出力す
る判定回路6と、レジスタ4に対して分岐命令後の数値
データの読み込みを禁止し禁止制御信号15を出力する
カウンタ5とから構成されている。
【0021】図2は分岐命令正常実行時の動作を示す説
明図である。
【0022】図3は分岐命令異常実行時の動作を示す説
明図である。
【0023】図4は主記憶装置のメモリマップを示す図
である。
【0024】次に、図1、図2、図3および図4を参照
して本実施の形態の動作をより詳細に説明する。
【0025】識別データメモリ3に格納されている識別
データ16は、主記憶装置2のメモリマップ31のアド
レスに対応付けられて記憶されている。この識別データ
16は、数値データ、無効データ、分岐命令を除く命令
コードデータの最初以外を示す識別データ、分岐命令の
最初と最後を除く命令コードデータのどれであるかを示
す識別データ、命令コードの最初を示す識別データ、分
岐命令であることを示しかつ分岐命令により分岐先アド
レスデータの読み込む数を示す識別データに分類され
る。
【0026】マイクロプロセッサ1はプログラムを実行
するために主記憶装置2に対してアドレスデータ8を出
力する。主記憶装置2はこのアドレスデータ8に従って
マイクロプロセッサ1に対してプログラムデータ9を出
力する。識別データメモリ3はこのアドレスデータ8に
対応する識別データ16をレジスタ4に出力する。識別
データ16は識別データメモリ3に格納された識別デー
タメモリ内容33であり、主記憶装置2のメモリマップ
31の内容である記憶データ32と対応付けられてい
る。レジスタ4はこの識別データ16を読み込み、カウ
ンタ5および判定回路6に判定データ17を出力する。
【0027】判定回路6はレジスタ4から出力された判
定データ17の値を保持しておき、レジスタ4から次の
ステップで出力される判定データ17を待つ。カウンタ
5は判定データ17の値が分岐命令により数値データを
読み込む値かどうかを判断し、読み込む値で無い場合は
数値データを無視し、読み込む値の場合はレジスタ4に
対して識別データメモリ3から出力される識別データ1
6を読み込まない指示を示す禁止制御信号15を出力す
る。この禁止制御信号15により分岐命令後に数値デー
タを読み込む数の値の分だけ、レジスタ4は識別データ
メモリ3からの識別データ16を読み込むのを停止す
る。
【0028】なお、マイクロプロセッサ1は、主記憶装
置2、識別データメモリ3、レジスタ4、カウンタ5に
対して、制御バス10を通して出力する制御信号により
全体の管理制御を行なう。
【0029】マイクロプロセッサ1が図2のアドレス未
参照の無条件分岐命令11に示すように、分岐先アドレ
スを参照しない無条件分岐命令を実行している場合、マ
イクロプロセッサ1は先ず「分岐以外の命令」としての
命令コードに続いて、分岐先アドレスを読み込まない
「無条件分岐命令」を実行する。この無条件分岐命令の
最後のデータをマイクロプロセッサ1が読み込んだとき
に、識別データメモリ3からレジスタ4に対して分岐先
アドレスを読み込まない無条件分岐命令を示す識別デー
タ16が出力される。
【0030】この識別データ16はカウンタ5および判
定回路6に判定データ17として伝えられる。カウンタ
5は識別データ16の値が分岐命令後に数値データを読
み込まないことを判断し、この識別データ16を無視す
る。一方、判定回路6は識別データ16を示す判定デー
タ17を読み取り、命令コードの最初を示す識別データ
16がレジスタ4から出力されることを期待する。この
後、分岐先アドレスを読み込まない「無条件分岐命令」
の次の命令コードである「分岐以外の命令」を実行する
ために、マイクロプロセッサ1が出力するアドレスデー
タ8によって、識別データメモリ3は識別データ16を
レジスタ4に出力する。この識別データ16の数値が判
定回路6の期待する命令コードの最初を示す識別データ
であった場合、判定回路6はこれを正常と見なし、次の
識別データ16の判定を行なう。命令コードの最初を示
す識別データ16でないときには、判定回路6はマイク
ロプロセッサ1が正常なプログラムを読めなかったと判
断し、障害検出信号18を出力する。
【0031】またマイクロプロセッサ1が図2のアドレ
ス参照の無条件分岐命令12に示すように、分岐先アド
レスを参照する無条件分岐命令を実行している場合、マ
イクロプロセッサ1はまず「分岐以外の命令」としての
命令コードに続いて、分岐先アドレスを読み込む「無条
件分岐命令」を実行する。この「無条件分岐命令」の最
後のデータをマイクロプロセッサ1が読み込んだとき
に、識別データメモリ3からレジスタ4に対して分岐先
アドレスをマイクロプロセッサ1が読み込むために、主
記憶装置2から出力されるデータ数に対応する識別デー
タ16が出力される。この識別データ16はレジスタ4
からカウンタ5へ判定データ17として通知され、カウ
ンタ5は判定データ17からマイクロプロセッサ1が数
値データを読み取るために出力するアドレスの数を算出
する。カウンタ5はこの数値分だけ、レジスタ4が識別
データ16を読み込むのを停止させるための禁止制御信
号15をレジスタ4に対して出力する。レジスタ4は禁
止制御信号15に従い識別データ16の読み込みを停止
し、カウンタ5からの識別データの読み込み許可がおり
た後に識別データ16を判定データ17として読み込
む。
【0032】このときはマイクロプロセッサ1は分岐先
アドレスの読み込みを終了しており、分岐命令後の通常
の「分岐以外の命令」の命令コードの読み込みを開始し
ている。
【0033】レジスタ4はこのため命令コードの最初の
コードを示す識別データ16を識別データメモリ3から
読み込む。判定回路6は分岐命令の最後に対応した数値
データを読み込む値を示す判定データ17をレジスタ4
から受け取ることにより、命令コードの最初を示す識別
データ16としての判定データ17がレジスタ4から出
力されることを期待する。この後、分岐先アドレスを読
み込む「無条件分岐命令」の次の命令コードを実行する
ために、マイクロプロセッサ1から出力されたアドレス
データ8により、識別データメモリ3から識別データ1
6をレジスタ4に対して出力する。この識別データ16
の値が判定回路6の期待する命令コードの最初を示す識
別データ16であった場合、判定回路6は正常と見なし
次の識別データ16の判定を行なう。命令コードの最初
を示す識別データ16でないときは、判定回路6はマイ
クロプロセッサ1が正常なプログラムを読み込めなかっ
たと判断して、障害検出信号18を出力する。
【0034】なお、正常に分岐命令が実行されない場合
で、分岐した先が命令コードの途中の場合の、プログラ
ムの処理の流れと読み込まれる識別データの流れを図3
(a)に、分岐した先が数値データの場合の、プログラ
ムの処理の流れと読み込まれる識別データの流れを図3
(b)に示す。
【0035】図5は本発明のマイクロプロセッサ暴走検
出方式の第2の実施の形態を示すブロック図である。
【0036】図5を参照すると、マイクロプロセッサ1
と、主記憶装置2と、識別データ16が格納された識別
データメモリ3と、識別データ16を受け取りカウンタ
5および判定回路6に判定データ17を出力するレジス
タ4と、判定データ17の順序を監視し識別データ16
が正常に識別データメモリ3から読み出しているかどう
かを監視する判定回路6と、レジスタ4から分岐命令後
の数値データを読み取る数値を受け、この数値に対して
数値データの読み込みを禁止する禁止制御信号15を出
力するカウンタ5と、判定回路6が出力する障害検出信
号18を受け取り所定の障害処理を実行する障害処理回
路7とから構成されている。
【0037】なお、図5において図1に示す構成要素に
対応するものは同一の参照数字または符号を付し、その
説明を省略する。
【0038】図6は図5の主記憶装置のメモリマップを
示す説明図である。
【0039】図7はプログラムの実行例を示す説明図で
ある。
【0040】次に、図5、図6および図7を参照して本
発明の第2の実施の形態の動作をより詳細に説明する。
【0041】マイクロプロセッサ1がアドレスデータ8
を主記憶装置2に出力し、動作する上で必要なプログラ
ムデータ9を取り込む。このアドレスデータ8は識別デ
ータメモリ3にも出力される。
【0042】主記憶装置2からのプログラムデータ9は
メモリマップ31に示すように数値データおよび命令コ
ードのエリアに分割されている。これらの内容は主記憶
装置2の記憶データ32である。この主記憶装置2の記
憶データ32に対して識別データ16は識別データメモ
リ内容33となる。識別データ16は識別データメモリ
の値34に示すように、分岐先アドレスを読み込まない
分岐命令の最後を示す識別データ、分岐先アドレスを1
回分読み込む分岐命令の最後を示す識別データ、分岐先
アドレスを2回分を読み込む分岐命令の最後を示す識別
データ、命令コードの最初を示す識別データ、これらの
どれにも該当しないその他のデータの5種類のデータ種
別に分けられ、主記憶装置2の記憶データ32に従い、
これらの値が識別データメモリ3の識別データメモリ内
容33に格納される。
【0043】このように対応付けられた主記憶装置2の
記憶データ32をマイクロプロセッサ1が読み出す際
に、識別データメモリ内容33もレジスタ4に対して出
力される。つまり、マイクロプロセッサ1が主記憶装置
2から命令コードを読み出す場合、同時に識別データメ
モリ3はレジスタ4に識別データ16を出力する。命令
コードの先頭が読み出された場合は、識別データ16の
値で示す命令の先頭を示す識別データ16である「E」
がレジスタ4に出力される。この識別データメモリの値
34の「E」の値は、レジスタ4からカウンタ5および
判定回路6に判定データ17として出力される。カウン
タ5は分岐先アドレスを読み込む分岐命令に対する数値
データを読み取る回数のみ関知し、その他の識別データ
については無視するため、カウンタ5はこの命令コード
の最初を示す識別データ16を無視する。一方、判定回
路6はその前のステップの識別データ16を記憶してお
り、分岐命令の最後の識別データのときにのみ識別デー
タ16の順序の正常性を判定する。ちなみにこの命令コ
ードの前のステップの命令コードは分岐命令でないとす
る。この命令コードの先頭を示す「E」をレジスタ4は
受け取り、その後命令コードがマイクロプロセッサ1に
より実行されるとともに、識別データメモリ3からレジ
スタ4に対して識別データ16を出力する。
【0044】次にこの命令コードの後に分岐命令が実行
される場合を説明する。
【0045】先程の命令コードが実行された後、分岐命
令コードがマイクロプロセッサ1により読み込まれると
き、命令コードの最初を示す識別データ16をレジスタ
4は受け取る。このときカウンタ5と判定回路6の動作
としては、何らの動作も実行しない。この後分岐命令コ
ードがマイクロプロセッサ1により最後まで読み出され
ると、分岐命令の最後のデータが読み出されたときに、
識別データメモリ3からレジスタ4に対して、分岐先ア
ドレスを読み込まない分岐命令の最後を示す識別コード
「0」が出力される。レジスタ4はこの識別データ16
をカウンタ5および判定回路6に出力する。カウンタ5
は識別データ16の値を無視するが、判定回路6はこの
データにより、次のステップでレジスタ4が読み込む識
別データ16の値を監視する。この後マイクロプロセッ
サ1が正常に動作する場合、分岐命令の後には命令コー
ドの最初を示す識別データ「E」がレジスタ4により読
み込まれる。この動作により判定回路6はマイクロプロ
セッサ1が正常に動作していることを検出する。
【0046】次にこの命令が実行された後、分岐先アド
レスをマイクロプロセッサ1が2回読み込む分岐命令が
実行された場合、分岐命令の最後のデータをマイクロプ
ロセッサ1が読み込んだとき、レジスタ4が識別データ
メモリ3から読み出す識別データ16は、「2」という
値をとる。レジスタ4はこの「2」の値をカウンタ5と
判定回路6とに通知する。
【0047】この場合、分岐命令の最後の命令コードの
後、マイクロプロセッサ1は主記憶装置2に対して数値
データを2回読み込んだ後に命令コードを読み込み、こ
の間カウンタ5はマイクロプロセッサ1が数値データを
読み込むためのアドレスデータ8を出力している間、レ
ジスタ4が識別データ16を読み込まないように、レジ
スタ4に対して識別データ16の読み込みを2回分禁止
する。この後、マイクロプロセッサ1から出力されるア
ドレスデータ8に従って、識別データメモリ3から出力
される識別データ16を受け取る。
【0048】一方、判定回路6も分岐命令の最後を示す
判定データ17がレジスタ4から出力されたことを認識
し、レジスタ4が読み出した識別データ16の内容を受
け取る。レジスタ4はカウンタ5により数値データを受
け取らずに、その後の識別データ16を受け取る。この
間、マイクロプロセッサ1が正常に動作していた場合、
この識別データ16が命令コードの最初を示す「E」で
なければならない。判定回路6はこのように「2」とい
う分岐先アドレスを読み込む場合の分岐命令を示す判定
データ17をレジスタ4から受け取った後に、読み込み
命令コードの最初を示す「E」をレジスタ4から受け取
ることにより、マイクロプロセッサ1の動作が正常であ
ることを認識する。
【0049】次に、分岐先アドレスを1回読み込む分岐
命令が実施された場合では、識別コード「1」はカウン
タ5と判定回路6とで受け取られ、カウンタ5はレジス
タ4に対して1回分のマイクロプロセッサ1が出力する
アドレスデータ8により識別データ16を禁止して、そ
の後の識別データ16をレジスタ4に出力する。このと
き判定回路6は「1」の次に「E」がレジスタ4から通
知されることを期待する。もし、「1」の次に「E」以
外のデータを受け取った場合、判定回路6はマイクロプ
ロセッサ1の動作に異常をきたしたと見なし、障害検出
信号18を障害処理回路7に出力する。障害処理回路7
はこの障害検出信号18を受けたとき所定の障害処理を
実施する。
【0050】上述の通り、マイクロプロセッサ1が主記
憶装置2からプログラムデータ9を読み出す動作を、識
別データ16が示す値によって対応付け、この識別デー
タ16の読み出される順序を監視することにより、マイ
クロプロセッサ1の動作が正常であるかどうかを監視し
ている。
【0051】なお、レジスタ4、カウンター5、判定回
路6および障害処理回路7は、ゲートアレイまたはLS
I化されたものが使用されることも有る。
【0052】
【発明の効果】以上説明したように、本発明のマイクロ
プロセッサ暴走検出方式は、分岐命令による分岐後の識
別データの不整合をデータの属性によらず速いタイミン
グで検出することができるので、マイクロプロセッサの
暴走を高い確率で検出できるという効果を有している。
【0053】また、命令コードの状態解析を行なう必要
が無いので、回路構成の簡易化が行なえるという効果を
有している。
【図面の簡単な説明】
【図1】本発明のマイクロプロセッサ暴走検出方式の一
つの実施の形態を示すブロック図である。
【図2】分岐命令正常実行時の動作を示す説明図であ
る。
【図3】分岐命令異常実行時の動作を示す説明図であ
る。
【図4】主記憶装置のメモリマップを示す図である。
【図5】本発明のマイクロプロセッサ暴走検出方式の第
2の実施の形態を示すブロック図である。
【図6】図5の主記憶装置のメモリマップを示す説明図
である。
【図7】プログラムの実行例を示す説明図である。
【図8】従来のマイクロプロセッサ暴走検出方式を示す
ブロック図である。
【図9】従来のマイクロプロセッサ暴走検出方式の他の
例を示すブロック図である。
【符号の説明】
1 マイクロプロセッサ 2 主記憶装置 3 識別データメモリ 4 レジスタ 5 カウンタ 6 判定回路 7 障害処理回路 8 アドレスデータ 9 プログラムデータ 10 制御バス 11 アドレス未参照の無条件分岐命令 12 アドレス参照の無条件分岐命令 15 禁止制御信号 16 識別データ 17 判定データ 18 障害検出信号 31 メモリマップ 32 記憶データ 33 識別データメモリ内容 34 識別データメモリの値 41 マイクロプロセッサ 42 主記憶装置 51 記憶領域 52 識別情報 53 識別手段 54 異常処理手段 61 プログラムデータ 62 ROM部 63 データ識別レジスタ 64 ステート解析部 65 比較回路 66 不一致検出信号
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G06F 11/28 - 11/36

Claims (5)

    (57)【特許請求の範囲】
  1. 【請求項1】 マイクロプロセッサ暴走検出方式におい
    て、前記マイクロプロセッサと; このマイクロプロセッサが出力するアドレスデータによ
    り、プログラムデータを出力する第1のメモリと; 前記アドレスデータに対応して、記憶した識別データを
    出力する第2のメモリと; 前記識別データを読み込み、判定データを出力するレジ
    スタと; 前記判定データの値により障害検出信号を出力する判定
    回路と; 前記判定データの値により、禁止制御信号を前記レジス
    タに出力するカウンタと; を備え、 前記識別データの数値が、前記判定回路の期待する命令
    コードの最初を示す識別データであった場合前記判定回
    路はこれを正常と見なし、前記判定回路の期待する命令
    コードの最初を示す識別データでない場合、前記判定回
    路は前記マイクロプロセッサが正常なプログラムを読め
    なかったと判断 することを特徴とするマイクロプロセッ
    サ暴走検出方式。
  2. 【請求項2】 マイクロプロセッサ暴走検出方式におい
    て、 前記マイクロプロセッサと; このマイクロプロセッサが出力するアドレスデータによ
    り、プログラムデータを出力する第1のメモリと; 前記アドレスデータに対応して、記憶した識別データを
    出力する第2のメモリと; 前記識別データを読み込み、判定データを出力するレジ
    スタと; 前記判定データの値により障害検出信号を出力する判定
    回路と; 前記判定データの値により、禁止制御信号を前記レジス
    タに出力するカウンタと; を備え 前記マイクロプロセッサが分岐先アドレスを参照する分
    岐命令を実行している場合、前記第2のメモリから前記
    分岐先アドレスを読み込むために、前記第1のメモリか
    ら出力されるデータ数に対応する識別データが前記第2
    のメモリから出力され、この識別データが前記レジスタ
    から前記カウンタへ前記判定データとして通知され、こ
    の判定データから前記カウンタは前記マイクロプロセッ
    サが数値データを読み取るために出力するアドレスの数
    を算出し、この数値分だけ前記レジスタが前記識別デー
    タを読み込むのを停止させるための前記禁止制御信号を
    前記レジスタに対して出力し、前記識別データの値が前
    記判定回路の期待する命令コードの最初を示す識別デー
    タであった場合前記判定回路は正常と見なし次の識別デ
    ータの判定を行ない、前記命令コードの最初を示す識別
    データでない場合、前記判定回路は前記マイクロプロセ
    ッサが正常なプログラムを読み込めなかったと判断し、
    前記障害検出信号を出力する ことを特徴とするマイクロ
    プロセッサ暴走検出方式。
  3. 【請求項3】 マイクロプロセッサ暴走検出方式におい
    て、 前記マイクロプロセッサと; このマイクロプロセッサが出力するアドレスデータによ
    り、プログラムデータを出力する第1のメモリと; 前記アドレスデータに対応して、記憶した識別データを
    出力する第2のメモリと; 前記識別データを読み込み、判定データを出力するレジ
    スタと; 前記判定データの値により障害検出信号を出力する判定
    回路と; 前記判定データの値により、禁止制御信号を前記レジス
    タに出力するカウンタと; 前記障害検出信号により障害処理を行なう障害処理回路
    と; を備え 前記マイクロプロセッサが分岐先アドレスを参照する分
    岐命令を実行している場合、前記第2のメモリから前記
    分岐先アドレスを読み込むために、前記第1のメモリか
    ら出力されるデータ数に対応する識別データが前記第2
    のメモリから出力され、この識別データが前記レジスタ
    から前記カウンタへ前記判定データとして通知され、こ
    の判定データから前記カウンタは前記マイクロプロセッ
    サが数値データを読み取るために出力するアドレスの数
    を算出し、この数値分だけ前記レジスタが前記識別デー
    タを読み込むのを停止させるための前記禁止制御信号を
    前記レジスタに対して出力し、前記識別データの値が前
    記判定回路の期待する命令コードの最初を示す識別デー
    タであった場合前記判定回路は正常と見なし次の識別デ
    ータの判定を行ない、前記命令コードの最初を示す識別
    データでない場合、前記判定回路は前記マイクロプロセ
    ッサが正常なプログラムを読み込めなかったと判断し、
    前記障害検出信号を出力し、この障害検出信号を受けた
    とき所定の障害処理を実施する ことを特徴とするマイク
    ロプロセッサ暴走検出方式。
  4. 【請求項4】 前記レジスタと、前記カウンタと、前記
    判定回路とを、集積回路により一体化したことを特徴と
    する請求項2記載のマイクロプロセッサ暴走検出方式。
  5. 【請求項5】 前記レジスタと、前記カウンタと、前記
    判定回路と、前記障害処理回路とを、集積回路により一
    体化したことを特徴とする請求項3記載のマイクロプロ
    セッサ暴走検出方式。
JP01448698A 1998-01-27 1998-01-27 マイクロプロセッサ暴走検出方式 Expired - Fee Related JP3169879B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP01448698A JP3169879B2 (ja) 1998-01-27 1998-01-27 マイクロプロセッサ暴走検出方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP01448698A JP3169879B2 (ja) 1998-01-27 1998-01-27 マイクロプロセッサ暴走検出方式

Publications (2)

Publication Number Publication Date
JPH11212828A JPH11212828A (ja) 1999-08-06
JP3169879B2 true JP3169879B2 (ja) 2001-05-28

Family

ID=11862389

Family Applications (1)

Application Number Title Priority Date Filing Date
JP01448698A Expired - Fee Related JP3169879B2 (ja) 1998-01-27 1998-01-27 マイクロプロセッサ暴走検出方式

Country Status (1)

Country Link
JP (1) JP3169879B2 (ja)

Also Published As

Publication number Publication date
JPH11212828A (ja) 1999-08-06

Similar Documents

Publication Publication Date Title
US6880113B2 (en) Conditional hardware scan dump data capture
JP3169879B2 (ja) マイクロプロセッサ暴走検出方式
US6026504A (en) Multiprocessor system and method for error tracking
JPH0844629A (ja) メモリアクセス異常監視装置
CA1204876A (en) System for processing machine check interruption
JPS6362047A (ja) プログラムシ−ケンスの異常検知方式
JP2559531B2 (ja) 二重化システムのエラーチェック回路
JPH07160539A (ja) マイクロコンピュータ
JPH0782475B2 (ja) メモリインタロック制御回路
JPH0644145A (ja) メモリエラー回避システム
JP2978658B2 (ja) プログラム開発支援装置
JPH06259288A (ja) Cpuの暴走監視回路
JPH07281961A (ja) メモリ故障検出装置及び計算機
JPH0528053A (ja) システム運転中のプログラムのメモリチエツク方法
JPS63163943A (ja) メモリ書き込み制御方法
JPH05113936A (ja) メモリエラー検出方法
JPS61223952A (ja) デ−タ処理装置のリトライ機能確認方式
JPH07319734A (ja) 中央処理装置の暴走監視回路
JPH103407A (ja) プログラム誤動作検出開発支援装置およびプログラム誤動作検出方法
JPH04235638A (ja) プリフェッチ機能付マイクロプロセッサ
JPH0991168A (ja) エミュレータ
JPH1124962A (ja) マイクロコンピュータ装置
JPH0778731B2 (ja) 情報処理装置
JPH03230216A (ja) 記憶デバイスへの処理データの書込処理方式
JPS62127944A (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: 20010213

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080316

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090316

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100316

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees