JPS603045A - プログラムアドレス誤動作検出装置 - Google Patents

プログラムアドレス誤動作検出装置

Info

Publication number
JPS603045A
JPS603045A JP58110335A JP11033583A JPS603045A JP S603045 A JPS603045 A JP S603045A JP 58110335 A JP58110335 A JP 58110335A JP 11033583 A JP11033583 A JP 11033583A JP S603045 A JPS603045 A JP S603045A
Authority
JP
Japan
Prior art keywords
index
module
program
unique
executed
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.)
Granted
Application number
JP58110335A
Other languages
English (en)
Other versions
JPH0320776B2 (ja
Inventor
Shigetatsu Katori
香取 重達
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 Corp
Original Assignee
NEC Corp
Nippon Electric 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 NEC Corp, Nippon Electric Co Ltd filed Critical NEC Corp
Priority to JP58110335A priority Critical patent/JPS603045A/ja
Publication of JPS603045A publication Critical patent/JPS603045A/ja
Publication of JPH0320776B2 publication Critical patent/JPH0320776B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔発明の属する技術分野〕 本発明は、マイクロコンピータのプロクラムアドレス誤
動作検出装置に関する。
〔従来技術〕
マイクロコンピュータを使用した機器811j御装置の
種類、用途が広まりこれらをi[tlJ御するプログラ
ムが暴走した時の対処の仕方が問題になっている。
プログラムが暴走する原因としては主として、ハードウ
ェアに起因するものと、ソフトウェアに起因するものが
ある。ハードウェアに起因するものとして、マイクロコ
ンピュータの使用環境が厳しく、制御線やデータバス上
のデータが)7.」囲の雑音の影#を受けて変化するも
の、マた、ソフトウェアに起因するものとして、ソフト
ウェアの質が低(1ljlJ御・畏随に入力するあらゆ
る制御信゛号のすべての状態ヲ網罹していないため、制
御用の入力信号のある特殊な組み合わせで%無限ループ
におちいるもの等1.像々な原因が考えられる。
しかし、マイクロコンピュータ自身は、プログラムを順
次読み出して実行するものであって、プログラムが暴走
したかどうかの判断はそれ自身はできない。このため、
従来は暴走検出用のタイマと、暴走を検出し易いプログ
ラム構造會採シ入れて対処している。
第1図に従来のシログラムアドレス誤動作検出装置の一
例を用いたシステムのブロック図、第2図にその動作を
説明するためのタイミングチャートを示す。
第1図において、メモリ11は、 ff1J御システム
全体を制御するプログラムが格納される。CPUする。
タイマ14は、制御システムの基準クロック15′fI
:計数する。タイマ14からの桁あふれ信号線16がC
PUI 2に入力する。また、タイマ初期化命令の実行
によりeP[Jt2から初期化信号17がタイマ14へ
出力され、タイマ140カウント値を0に仄して書び基
準クロ、ツク15の開数を開始させる。
次に、第1図と第2図を参照して動作全説明する。
本従来例のプログラム構成は、タイマ]4が0からカウ
ントを始めて桁めふれヲノーこすl’OVの期間よりも
短かい周期で、タイマ140カウント値をOK戻してゼ
3び基準クロ、ツク15を計数させる初期化命令全繰返
えす。
第2図において、t24までの期間、プログラムは王宮
に実行されているためs ’21 * t22 e t
2aの各タイミングでタイマ初期化命令が実行され、初
期化信号17がタイマ14に入力し、タイマ14のカウ
ント値は、その都度0に戻りそこからカウントア、ブを
始める・ バス13にt、4 のタイミングで雑音が誘起され、プ
ログラムが暴走を始め無限ループに陥いると、本来次の
tssのタイミングで、タイマ初期化命令が実行される
はずが実行されず、タイマ14は、そのまま基準クロッ
ク15のカウントアップヲ続ける。t2Gのタイミング
で、タイマ14から桁あふれ15号16が、CPU12
に入力し、この時点でCPU12は、プログラムの暴走
を認知し、割込み等の特殊処理へ移り、プログラム自体
を初期状態に戻す。
しかし、この従来のt+Vtでは、プログラムが無限ル
ープlc陥った事しか検出できず、もし、無限ループ内
にタイマ初期化命令が含オれていると。
タイマの桁、らふれが発生しないため、CPU1iプロ
グラムの暴走t−ttg知できないという大きな欠点が
ある。
また、ち;くの基本処理’tjf>る順序に従って実行
する拳により全体の制御11を行なう場合、k番目貰で
の基本処理が完了し、つぎのに+1番目の基本処理中に
プログラムが暴走を起しCPUがそれ全検出しても、プ
ログラムをどの基本処理まで戻して再び実行させたらよ
いかの判断がつかないためプログラム全体を初期状態に
戻す以外に方法がないという大き彦欠点がある。特に、
ブロクラムの暴走が検出され、プログラム全体が初期化
される事により、暴走する前に完了していた基本処理が
肖び実行される事があり、プロセス制f1111の様な
処理の順序がH’l要な制御対象である制御装置には応
用できない。
〔発明の目的〕
本発明の目的は、以上述べた従来技術の欠点全除去し、
プログラムの暴走を検出したら、暴走が発生する以前の
咳隔まで戻ってプログラムを再び実行する事が−(きる
ところのプログラムアドレス誤動作検出装置を提供する
事にある。
〔発明の構成〕
不発明のプログラムアドレス誤差検出Li1社は、プロ
グラム全分割可能なモジュールに分割し、該モジュール
毎に実行順に対応した固有の指標と、指標情報としての
前記固有指標全6d令内部に持つ指標確認命令の実行で
該指標確認命令内に持つ第1の固有拍標を保持する第1
の指標保持手段と、前記指標確認命令の実行に同期して
第2の固有指標全発生する指標発生回路と、前記第2の
固有指標全保持する第2の指標保持手段と、前記指標確
認命令の実−ffで前記第1の指標保持手段内の実際に
果行きれたモジュールの前記第1の固有指標と1fii
J記第2の固有指標保持手段1・′1のプログラム構成
上不来実’Nさるべき前記モジュールの前記第2の固有
指標を比較し前記第1と小2の固有指標が一致しない場
合は不一致信号を送出する比較器と。
基jv!クロックを計数し前記指標確認命令の実行に同
期して桁あふれ4M号葡送出し初期化信号により計数1
直が初期化される計?(り回路k ili、’Tえるこ
とから構成される。
〔実施例の説明〕
以下、本発明の実施例を図面全参照して詳細に説明する
3゜ 第3図に本発明に用いるプログラム構成を、第4図に本
発明の一実施例のブロック図を、第5図及び第6図に不
実Jjtlt (D動作全説明するためのタイ)7・。
rγヤードをそれぞれ示す。
本発明に用いるプログラム構成は、第:31::<lに
示す様に1プログラムを1つの大公な処理単位であるモ
ジュールに分割し、各モジーールの実行順に1.2.3
・ lと1tj号を伺け、この番号を各モジュールの固
有指標とする。そして、谷モジュールの最後で、゛後述
する指標4(i fffJ命令を実行し、1つのモジュ
ールにおける処理が完了した事を411、認する。また
、モジュール間で条件分岐がある場合には、分岐先の最
初のモジュールの先頭で後述する指標設定命令を夾イテ
し、指標確認命令実イゴの前準備を行なう。
第4図のブロック図において、本発明の一夷力11例は
、プログラムを分割可能なモジュールに分割し、該モジ
ュール間に実行順(忙対応した1F!1有の指標と、指
標情報としての前記固有指標全命令1勺部に持つ指標イ
I(+i認命令の実行で該指標確認命令内に持つ第1の
固有指標を保持する第1の指標レジスタ42と、前記指
標確認命令の実行に回期して2■2の固有指標+g生ず
るインクリメンタ44と、前記第2の固有指標を保持す
る第2の指標レジスタ43と、前記指標確認命令の実行
で第1の指標株J4レジスタ42同の実際に実行された
モジュールの前記第1の固有指標と第2の1廟指標レジ
スタ43内のプログラム前成上木来尖行さるべき・前記
モジュールの前記第2の固有指標を比較し前記第1と第
2の固有指flr+が一致しない場合は不一致信号4 
(i f CPU/11へ送出する比較器45と、基準
クロック48を計数し前記指標確認命令の実行に1iI
J期し”0桁あふれ信号49iCPU41へ送出しCP
U41からの初期化信号50により計数値が初期化され
るタイマ47を備えることから構成されている。
確認命令は、その命令が置かれるモジュールの固有指’
ljWを命令目体に持ち、指標確認命令の実行により、
命令内の固有指標データが第1の指標レジき スタ42へi気まれる。第2の指標レジスタ43内の指
標データは、指標確認命令の実行に同期して、インクリ
メンタ44で1だけ加算され、改めて、第2の指標レジ
スフ43内に格納される。甘だ、第2の指標し、ジスタ
43への指標の書込みは指標設定命令で行なわれる。指
標設定命令も、指標確認命令と同じように命令内IA\
に1ijiJ有指標全持ち、指標設定命令の実行により
命令内の固有指標データが、第2の指標レジスタ43に
書き込まれ不実施例においても、タイマ47がOからカ
ウントを始めて桁あぶれを起こすT。Vの期間よりも短
かい周期で指標確認命令を実行する。第11−石目のモ
ジュールの最後で指標@ii認命令が実行される直前で
は、第1の指標レジスタ421”Eには、1つ前のモジ
ュールの固有指標n−]が、また%第2の指標レジスタ
43内には、実行が完了するべきモジュールの指標nが
格納されている。
指標確認命令の実行で、第1の指標レジスタ42内に処
理が完了した第n番目の固有指標nが格納され、第2の
指標レジスタ430内谷と比較器45で比較される。正
常にプログラムが実行されているので、両者は一致し、
比較器45からは、不−故1a号46は出力ひれない。
同時に、第2の指標レジスタ43のビ]容はインクリメ
ンタ44で1だけ加算され、fl+1が第2の指標レジ
スタ43にイ質納され、つき′に実イ了されるべき[’
 n + 1番目のモジュールの固有指標11 + l
’を保持する。また、タイマ47も、OVC戻され、再
O−基準クロック48のカウントを始める。
第5図において、+54 までの111間はプログラム
が正常に流れているため、谷モジュールの最後のt5t
 、 +52 I +53 の各タイミングで指標確認
命令が実行され、以上に述べ/ζji11作が行なわれ
る。
154 のタイミングでプロクラムが暴走を始めるト、
ソのモジュール1)]で無1′Iμループに陥いる場合
か、−または、全り1用件のない別のモジュールへ分岐
する場合が発生する。モジュール内で無限ループに陥い
った場合には、本来tss のタイミングで、指標確認
命令が実行されるはずが実行されず、タイマ47ば% 
+56 のタイミングで桁あふれ信号49を発生して、
プログラムの実行状態の異状をCPU41に通知する。
また、プログラムがまったく別のモジュールへ分岐した
場合には、7二(’61ン(におけるt55′ のタイ
ミングで、暴走先モジーールの〕使イ茨で指標確認命令
が実行され、ψ;2の指標レジスタ43内に13↑と持
された木来夷行が完了すべ@−+=ジー−ルの指標と。
glの指標レジスタ42内の暴走光モジュールの指標が
比較器45で比軟される。この両者は一致せず、不一致
信号46がCPU41に出力され、プログラムの暴走が
通知される。
以上どちらの場合1/l−いても、 CL’U41 f
は、プログラムアドレスの誤!−υ作を検出後、暴走l
71(、理に移る。そして、第2の指標レジスタ43内
に保持された、本来完了されていなければならないモジ
ュールの指標を読み出し、その指IIに基づいてCFI
J41は、プログラムをこのモジュールの先頭に戻して
、実行を始める。\ なお、モジュール間に分岐があり、モジュールの実行に
伴なって、その固有指標に飛がある場合には、モジュー
ルの最初で指標設定命令を実行し。
第2の]旨帆ルジスタ43にあらかじめ実行するべき固
有指標ケ格納しておき、以降、各モジュールの最後で実
行される指標確認命令に備える。
〔発明の効果〕
以上、詳イ111に説明したとお+2、不発明のプログ
ラムアドレス誤動作検出装置μは、前述の構成をとるこ
とによ−リ、第なる無限ループはかりてなくプログラム
の異状な分岐もシリ2出で凱1だ、無限ルーズ内に指標
確認命令が含まれでいても、モジュール毎に設定されて
いる指標の状ノ漂からプログラムの誤動作の検出が可能
であり、!(tに、ハードウェア的に、本来完了しCい
るべさモジュールの指標全席に保持しているみめ、プロ
クラムの暴走全検出した際、どこから再処理を開始した
らよいがを得易に判断できる。
しηって、従来の暴走監視/jJタイマを用いた装置に
比較して、格段に暴走検出能力が市く、がっ。
実用的なプログラムアドレス誤動作検出装置の1是供が
可能で、プロセス制#1機器flrlJ tl等、使用
環境が厳しく、処理のjji序が厳密に定められる制御
装置への応用における実用効果は)厘11(′に大きい
【図面の簡単な説明】
第1図は従来のプログラムアドレス誤動作検出装置の一
例金用1.qたシステムのプロ、り図、第2図は第1図
の従来例の動作を説明するためりタイミングチャート、
第3171は;f:発明のプログラムアドレス誤動作検
出装f直に用いづれるプログラムイ11成図、第4 +
=+は不発明の一実Jf14例全+1Jいたシステムの
ブロック図、第5図及び第6図はそれぞれ第4図の一実
施例の動作を説明するためのタイミングチャートである
。 11・ ・メモリ12.41 にPU、+ 3−パス、
]4.,4.7・・・・・タイマ、]5,43・・・・
基準クロック、16,4.9・・ イ1テあふれ信号、
エフ。 50・・・・・初ノυノ化信号、42・・・第1の指標
レジスタ、43・・・・第2の指標レジスタ、44−・
・インクリメンタ、45・・・・比軸器、46・・・・
・不−敬信号。 / /、:3 Z V 図 試 2 ワ を 窮 j 図( 窮 4 図 L タ 図 る:芦5r 5I′−761図

Claims (1)

  1. 【特許請求の範囲】 プログラム全分割可能なモジュールに分割し。 該モジュール毎に実行ハ(αに対応した固有の指標と。 指標情報としての前記固有指標を命令内部に行つ指標確
    認命令の実行で該指標確認命令口に持つ第1の固有指標
    を保持する第1の指標保持手段と。 前記指標確認命令の実行に同期して第2の固有指標を発
    生する指標発生回路と、前記第2の固有指標全保持する
    第2の指標保持手段と、前記指標確認命令の実行で前記
    第1の指標保持手段内の実際に実行されたモジュールの
    前記第1の固有指標と前記第2の1ψ」有指標保持手段
    内のプログラム上14成上本来実行さるべき前記モジュ
    ールの前記第2の固有指標とを比較し前記第1と第2の
    固有指標が一致しない場合は不一致信号を送出する比較
    器と。 基準クロックを計数し前記指標確認命令の実行に同期し
    て桁あふれ信号を送出し初期化信号により計数値が初期
    化される計数1川路とを備えることを特徴とするプログ
    ラムアドレス課動作検出i+ff。
JP58110335A 1983-06-20 1983-06-20 プログラムアドレス誤動作検出装置 Granted JPS603045A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP58110335A JPS603045A (ja) 1983-06-20 1983-06-20 プログラムアドレス誤動作検出装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58110335A JPS603045A (ja) 1983-06-20 1983-06-20 プログラムアドレス誤動作検出装置

Publications (2)

Publication Number Publication Date
JPS603045A true JPS603045A (ja) 1985-01-09
JPH0320776B2 JPH0320776B2 (ja) 1991-03-20

Family

ID=14533137

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58110335A Granted JPS603045A (ja) 1983-06-20 1983-06-20 プログラムアドレス誤動作検出装置

Country Status (1)

Country Link
JP (1) JPS603045A (ja)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS621045A (ja) * 1985-06-26 1987-01-07 Fujitsu Ten Ltd 暴走検出方法
JPS63123139A (ja) * 1986-11-03 1988-05-26 シモコ インターナショナル リミテッド デジタルデータ処理システム
JPS63133238A (ja) * 1986-11-03 1988-06-06 シモコ インターナショナル リミテッド デジタルデータ処理システム
JPS63268044A (ja) * 1987-04-24 1988-11-04 Nec Corp ウオツチ・ドツグ・タイマ
JPS63291137A (ja) * 1987-05-22 1988-11-29 Nec Corp プログラム暴走監視タイマ
JPH04107748A (ja) * 1990-08-29 1992-04-09 Nec Ic Microcomput Syst Ltd マイクロコンピュータ
JP2008000968A (ja) * 2006-06-22 2008-01-10 Tdk Corp サーマルヘッド及び印画装置
JP2009289119A (ja) * 2008-05-30 2009-12-10 Nec Electronics Corp ウォッチドッグ・タイマ及びマイクロコンピュータ
US7664939B2 (en) 2006-04-28 2010-02-16 Hitachi, Ltd. Method and apparatus for detecting false operation of computer

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5688544A (en) * 1979-12-20 1981-07-18 Toshiba Corp Programmable logic controller
JPS57199056A (en) * 1981-06-03 1982-12-06 Nec Corp Execution and monitoring device for control program

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5688544A (en) * 1979-12-20 1981-07-18 Toshiba Corp Programmable logic controller
JPS57199056A (en) * 1981-06-03 1982-12-06 Nec Corp Execution and monitoring device for control program

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS621045A (ja) * 1985-06-26 1987-01-07 Fujitsu Ten Ltd 暴走検出方法
JPS63123139A (ja) * 1986-11-03 1988-05-26 シモコ インターナショナル リミテッド デジタルデータ処理システム
JPS63133238A (ja) * 1986-11-03 1988-06-06 シモコ インターナショナル リミテッド デジタルデータ処理システム
JPS63268044A (ja) * 1987-04-24 1988-11-04 Nec Corp ウオツチ・ドツグ・タイマ
JPS63291137A (ja) * 1987-05-22 1988-11-29 Nec Corp プログラム暴走監視タイマ
JPH04107748A (ja) * 1990-08-29 1992-04-09 Nec Ic Microcomput Syst Ltd マイクロコンピュータ
US7664939B2 (en) 2006-04-28 2010-02-16 Hitachi, Ltd. Method and apparatus for detecting false operation of computer
JP2008000968A (ja) * 2006-06-22 2008-01-10 Tdk Corp サーマルヘッド及び印画装置
JP2009289119A (ja) * 2008-05-30 2009-12-10 Nec Electronics Corp ウォッチドッグ・タイマ及びマイクロコンピュータ

Also Published As

Publication number Publication date
JPH0320776B2 (ja) 1991-03-20

Similar Documents

Publication Publication Date Title
US4027291A (en) Access control unit
US5740360A (en) Apparatus and method for resetting a microprocessor in the event of improper program execution
JPS603045A (ja) プログラムアドレス誤動作検出装置
US4672646A (en) Direct-injection FIFO shift register
US4318172A (en) Store data buffer control system
US4937783A (en) Peripheral controller for executing multiple event-count instructions and nonevent-count instructions in a prescribed parallel sequence
US5761482A (en) Emulation apparatus
EP0462622B1 (en) Microprocessor capable of ensuring flexible recovery time for I/O device
US4566062A (en) Timing control system in data processor
JPS6326907B2 (ja)
US5007056A (en) Processing circuit having an error detecting and correcting circuit therein
JP2569693B2 (ja) マイクロコンピュータ
JP2720580B2 (ja) フォールト・トレラント・コンピュータ
SU1007109A1 (ru) Микропрограммный процессор с самоконтролем
SU985791A1 (ru) Микропрограммный процессор с контролем
SU1034042A1 (ru) Устройство дл контрол микропрограмм
SU1056201A1 (ru) Устройство дл контрол последовательности микрокоманд
SU1024920A1 (ru) Микропрограммное устройство управлени
SU1541618A1 (ru) Устройство дл контрол выполнени программ
SU1501067A2 (ru) Устройство дл контрол хода микропрограмм
SU720719A1 (ru) Преобразователь кода во временной интервал
JPS59173848A (ja) トレ−ス方式
JPS6029128B2 (ja) マイクロプログラム制御装置
JPH0784827A (ja) トレース装置
JPS5917468B2 (ja) プログラムカウンタ軌跡記憶装置