JPH0581079A - ソフトウエア暴走防止方式 - Google Patents

ソフトウエア暴走防止方式

Info

Publication number
JPH0581079A
JPH0581079A JP3114347A JP11434791A JPH0581079A JP H0581079 A JPH0581079 A JP H0581079A JP 3114347 A JP3114347 A JP 3114347A JP 11434791 A JP11434791 A JP 11434791A JP H0581079 A JPH0581079 A JP H0581079A
Authority
JP
Japan
Prior art keywords
nmi
maskable interrupt
circuit
buffer circuit
mask
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
JP3114347A
Other languages
English (en)
Inventor
Kenji Kushima
憲司 久島
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 Engineering Ltd
Original Assignee
NEC Engineering 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 Engineering Ltd filed Critical NEC Engineering Ltd
Priority to JP3114347A priority Critical patent/JPH0581079A/ja
Publication of JPH0581079A publication Critical patent/JPH0581079A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【目的】 NMI端子を持つCPUにおいて、NMI無
効化中にプログラムの暴走が発生しても、強制的にNM
Iを受け付け許可とする。 【構成】 NMI無効化中にプログラムの暴走が発生
し、NMIが受け付け不許可となっても、ウォッチドッ
クタイマ10がタイムアウトを起こし、バッファ回路1
3の出力がハイレベルとなり、論理積回路3の出力もハ
イレベルとなり、CPU4のNMI端子が有効化され
る。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、ソフトウェア暴走防止
方式に関し、特に、システムのOSルーチン等でNMI
(Non Maskable Interrupt;マ
スク不可能割り込み)を強制的に外付けH/W等でマス
クした場合に発生する暴走等を防止するソフトウェア暴
走防止方式に関する。
【0002】
【従来の技術】一般にCPUは、マスク可能な割り込み
端子およびマスク不可能な割り込み端子を持ち、マスク
可能な前者は、CPUの具備する命令セットで意図的に
プログラム中でマスクすることが可能である。
【0003】これに対して、マスク不可能な後者は、命
令セットではマスクすることが通常許されておらず、C
PUの外側(外付け)の回路等でNMIの入力端子をI
/O命令等でマスク(無効化)する方法をとってから、
命令セットでマスクすることが行われている。
【0004】したがって、OS等のスタックを操作する
時や、その他の割り込みを一切禁止する必要のあるルー
チンの前後に、NMI無効化→マスカブル割り込みのマ
スク命令→割り込まれると困るルーチン→マスカブル割
り込みのマスク解除命令→NMIを再び有効化するI/
O命令といった具合にプログラムを設計するのが一般的
となっている。
【0005】
【発明が解決しようとする課題】上述した従来の技術
は、図2に示すように、もし、Cでパリティエラーが発
生した場合(ただし、パリティエラーはNMIとする)
は、もちろん、OSへは通知されないが、CでH/Wの
不具合で暴走が発生した場合は、Cからどこか別の番地
へ飛ぶ場合があり、NMIおよびマスカブル割り込みを
すべてマスクしたまま、メモリを破壊する恐れがある。
【0006】すなわち、CPUに対する外部端子からの
割り込みを一切禁止した状態では、仮に、H/Wの故障
等でCPUがフェッチした命令が未実装エリアへのジャ
ンプ命令の場合、パリティエラーも発生せず、暴走の歯
止めがきかず、パリティエラー発生直後のメモリの状態
(内容)は保存されず、また、暴走による二次的、三次
的なエラー現象におちいるという問題点がある。
【0007】本発明の目的は、このような欠点を除去し
たソフトウェア暴走防止方式を提供することにある。
【0008】
【課題を解決するための手段】本発明は、マスク不可能
割り込みの有効・無効状態を出力するバッファ回路と、
バッファ回路の出力と、マスク不可能割り込み要因との
論理積をとり、マスク不可能割り込み端子を有するCP
Uのマスク不可能割り込みを有効化・無効化する論理積
回路と、マスク不可能割り込みが無効化された後にマス
ク不可能割り込みが有効化されなかった場合に、強制的
に有効化するための信号をバッファ回路のイネーブル信
号入力端子に対して出力するウォッチドックタイマとを
備えることを特徴としている。
【0009】また、本発明によれば、ウォッチドックタ
イマにウォッチドックタイマのカウントスタート用のト
リガ信号を出力するフリップフロップを備えるのが好適
である。
【0010】さらに、本発明によれば、n個のマスク不
可能割り込み要因の1つを論理積回路に出力する論理和
回路を備えるのが望ましい。
【0011】
【実施例】次に、本発明の実施例について、図面を参照
して説明する。
【0012】図1は、本発明の一実施例を示すブロック
図である。
【0013】1はn個(n=1,2,3・・・の自然
数)のNMI要因であり、有効極牲はハイレベル(TT
Lレベルの“H”)とする。2は論理和回路であり、n
個のNMI要因が入力される。入力されたNMI要因の
うち1つでもハイレベルが入力された場合に、論理和回
路2の出力もハイレベルとなる。3は論理積回路であ
り、後述のバッファ回路13の出力に依存し、バッファ
回路13の出力がローレベル(TTLレベルの“L”)
の場合、論理積回路3の出力もローレベルとなり、CP
U4のNMI入力端子(アクティブ極牲はハイとする)
が無効化される。
【0014】5はフリップフロップであり、6はフリッ
プフロップ5のデータ入力端子であり、7はクロックパ
ルス入力端子であり、8はフリップフロップ5を初期化
およびNMIを無効化するためのマスタリセット端子で
あり、9はプルアップ抵抗である。
【0015】10はウォッチドックタイマであり、フリ
ップフロップ5の出力がウォッチドックタイマ10のカ
ウントスタート用のトリガ信号として使用される。アク
ティブ極牲(タイマをスタートさせる極牲)はローレベ
ルとする。ウォッチドックタイマ10は、フリップフロ
ップ5の出力を後述のバッファ回路13で出力コントロ
ールするためのイネーブル制御信号を出力する。
【0016】11はライトコマンド入力端子であり、ウ
ォッチドックタイマ起動後、タイムアウト前に(タイマ
値は、図2のCの区間のプログラム実行時間+α時間と
する)OS自身でマスクを解除する時のI/O命令(I
/Oライト)を入力する端子(タイマの無効化)であ
る。12はウォッチドックタイマカウント用のクロック
入力端子である。
【0017】13はバッファ回路であり、14はイネー
ブル制御信号入力端子である。15はプルアップ抵抗で
あり、ウォッチドックタイマ10の出力がハイレベルの
とき、バッファ回路13の出力側がハイインピーダンス
状態となることを防ぐ。
【0018】次に、本実施例の動作について説明する。
【0019】図1の論理和回路2には、n個のNMI要
因1が入力されている。ここで、OS等のプログラムに
おいてスタックエリア等を操作するルーチンを実行する
と仮定し、これを図2を用いて説明する。
【0020】Aにおいて「NMI信号をCPUの直前で
H/Wでマスク」とあるが、これは、フリップフロップ
5のデータ入力端子(データバスのうち1本が通常接続
される)6をローレベル状態にし、このローレベルに対
してセットアップを満足するコマンドパルスを入力する
ことを意味する。これにより、フリップフロップ5の出
力はハイレベルとなると同時に、ウォッチドックタイマ
10の起動を開始させる。この時、ウォッチドックタイ
マ10の出力はローレベルとなっており、タイマのカウ
ントが終了後にハイレベルとなるものとする(ハイレベ
ルの状態でバッファ回路13の出力側はハイインピーダ
ンス状態になる)。
【0021】以上のように、図2のAのI/O命令で上
記動作が発生し、かつ、論理積回路3の出力はローレベ
ル状態となり、n個のNMI要因1の1つがハイレベル
になったとしても、CPU4へはNMI通知がされない
ことになる。
【0022】次に、図2に戻り、Bでマスカブル割り込
み命令を実行する。こうなると、CPU4への外部端子
による割り込みはすべて禁止されることになる。この状
態でCにおいて命令を実行中、H/Wの不具合等でプロ
グラムが暴走した場合、本来、DおよびEによってAお
よびBの命令を解除すべきものが、解除不可能となって
しまう。
【0023】このように、本実施例は、上記のようにC
で暴走が発生した時に、あらかじめA〜Eの時間+α時
間の時間値をウォッチドックタイマ10にセットしてお
き、Aの実行と同時にウォッチドックタイマ10をスタ
ートさせ、暴走してDおよびEが実行されなくとも、ウ
ォッチドックタイマ10がタイムアウトを起こし、すな
わち、ウォッチドックタイマ10の出力がハイレベルと
なり、バッファ回路13の出力はプルアップ抵抗15に
よりハイレベルに戻るため、マスクされていたNMIが
受け付け許可となり、暴走によるエラー等をより早くC
PU4に通知することができる。
【0024】
【発明の効果】以上説明したように本発明は、CPUの
NMI端子をH/Wでマスクすることができるシステム
において、NMIマスク中にプログラムの暴走が発生し
ても、ウォッチドックタイマを使用することでマスクの
かけ放し状態をなくし、暴走によるメモリ破壊を最少限
に抑えることができるという効果がある。
【図面の簡単な説明】
【図1】本発明の一実施例を示すブロック図である。
【図2】従来のCPUのNMI入力端子をH/Wでマス
クし、かつCPUの命令セットでマスクし、プログラム
を実行させる概略フローチャートである。
【符号の説明】
1 n個のNMI要因 2 論理和回路 3 論理積回路 4 CPU 5 フリップフロップ 6 データ入力端子 7 クロックパルス入力端子 8 マスタリセット端子 9,15 プルアップ抵抗 10 ウォッチドックタイマ 11 ライトコマンド入力端子 12 クロック入力端子 13 バッファ回路 14 イネーブル制御信号入力端子

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】マスク不可能割り込みの有効・無効状態を
    出力するバッファ回路と、 バッファ回路の出力と、マスク不可能割り込み要因との
    論理積をとり、マスク不可能割り込み端子を有するCP
    Uのマスク不可能割り込みを有効化・無効化する論理積
    回路と、 マスク不可能割り込みが無効化された後にマスク不可能
    割り込みが有効化されなかった場合に、強制的に有効化
    するための信号をバッファ回路のイネーブル信号入力端
    子に対して出力するウォッチドックタイマとを備えるこ
    とを特徴とするソフトウェア暴走防止方式。
  2. 【請求項2】ウォッチドックタイマにウォッチドックタ
    イマのカウントスタート用のトリガ信号を出力するフリ
    ップフロップを備えた請求項1記載のソフトウェア暴走
    防止方式。
  3. 【請求項3】n個のマスク不可能割り込み要因の1つを
    論理積回路に出力する論理和回路を備えた請求項1また
    は2記載のソフトウェア暴走防止方式。
JP3114347A 1991-05-20 1991-05-20 ソフトウエア暴走防止方式 Pending JPH0581079A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3114347A JPH0581079A (ja) 1991-05-20 1991-05-20 ソフトウエア暴走防止方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3114347A JPH0581079A (ja) 1991-05-20 1991-05-20 ソフトウエア暴走防止方式

Publications (1)

Publication Number Publication Date
JPH0581079A true JPH0581079A (ja) 1993-04-02

Family

ID=14635487

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3114347A Pending JPH0581079A (ja) 1991-05-20 1991-05-20 ソフトウエア暴走防止方式

Country Status (1)

Country Link
JP (1) JPH0581079A (ja)

Similar Documents

Publication Publication Date Title
TWI230860B (en) Integrated system management memory for system management interrupt handler independent of BIOS and operating system
JPH0519738B2 (ja)
JP2004086451A (ja) 半導体集積回路
JP5215655B2 (ja) データ処理装置及びデータ処理装置におけるバスアクセス制御方法
JPH0581079A (ja) ソフトウエア暴走防止方式
CN100412790C (zh) 微处理器
JP2737724B2 (ja) プロセッサ間nmi通信装置およびシステムバスコントローラ
JP2695775B2 (ja) コンピュータシステムの誤動作からの復帰方法
JP2814800B2 (ja) マイクロコンピュータ
JP3209144B2 (ja) マイクロプロセッサ
JP2870083B2 (ja) ウオッチドッグタイマ内蔵マイクロコンピュータ
JPH05224966A (ja) 命令誤動作防止方式
JPH0149968B2 (ja)
JP2578267B2 (ja) マイクロコンピュータ・システム
JPS5920052A (ja) マイクロコンピユ−タシステムの割込み制御回路
JPH06131218A (ja) Cpu制御方式
JP2008047025A (ja) マイクロコントローラ
JPH02224170A (ja) マルチプロセッサ制御装置
JPH06250864A (ja) プログラマブルコントローラの誤出力防止方法
JPH05189258A (ja) マイクロコンピュータ
JPS60124734A (ja) Cpuに対する割込み処理装置
JPH0748198B2 (ja) マルチプロセッサシステム
JP2755205B2 (ja) データ処理装置の低消費電力化方式
JP3183982B2 (ja) ディジタル制御装置
JPH0213334B2 (ja)