JPS61279940A - 計算機の異常検出装置 - Google Patents

計算機の異常検出装置

Info

Publication number
JPS61279940A
JPS61279940A JP60120523A JP12052385A JPS61279940A JP S61279940 A JPS61279940 A JP S61279940A JP 60120523 A JP60120523 A JP 60120523A JP 12052385 A JP12052385 A JP 12052385A JP S61279940 A JPS61279940 A JP S61279940A
Authority
JP
Japan
Prior art keywords
area
cpu
stack
stack pointer
limit value
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
JP60120523A
Other languages
English (en)
Inventor
Yuji Furukubo
雄二 古久保
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP60120523A priority Critical patent/JPS61279940A/ja
Publication of JPS61279940A publication Critical patent/JPS61279940A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Devices For Executing Special Programs (AREA)
  • Executing Machine-Instructions (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 この発明は、計算機の異常検出装置に関するものである
〔従来の技術〕
第3図は従来の計算機の異常検出装置を示すブロック図
であシ、図において1は計算機本体、10は計算機本体
1の中央演算処理装置(以下′、CPUと略記する)、
12はランダムアクセスメモリ(以下、RAMと略記す
る)、13はメモリパリティ発生回路、14はパリティ
ビットメモリ用RAM。
15はメモリパリティチェック回路でアシ、これらはC
PUバス16に接続されている。
次に動作について説明する。
CPU1GはRAM12に’jj行プログラムをイニシ
ャルプログラムローディング(以下、IPLと略記する
)シ九後、プログラムを実行していき、演算データをR
AM12に書込みまたは読出しする。メモリパリティ発
生回路13はCPUIQがRAM12にデータを書込む
ときにのみ、書込みデータのパリティを計算してパリテ
ィビットメモリ用RAM14に書込む。また、メモリパ
リティチェック回路15はCPU1GがRAM12のデ
ータを読出すときのみ、読出しデータのパリティ値を計
算するとともに、パリティビットメモリ用RAM14か
らCPU10がデータ書込みしたときにメモリパリティ
発生回路13が書込んだパリティ値を読出し、計算した
パリティ値と比較する。比較した結果、値が一致すれば
CPU10に処理の継続を指示し、逆に不一致になれば
異常信号tSaをアクティベートするとともにCPU1
0に処理実行の中断を指示する。
以上のようなメモリパリティチェック回路15では、R
AM12のハードウェア故障を検出するとともにCPU
IGが今まで一度も書込みにこなかったメモリ空間をア
クセスしたことを検出することもできる。
従って、メモリパリティチェック回路15によシ、RA
M12の異常検出とともに、CPU10の不正読出し検
出も行なえるため、CPUIG内のソフトウェアの暴走
検出にも応用できる。
〔発明が解決しようとする問題点〕
従来の計算機の異常検出装置は以上のように構成されて
いるので、ソフトウェア暴走検出としては不正読出し検
出しか行なえず、しかもパリティピットメモリ用RAM
14の電源投入直後のイニシャルパターンによっては、
不正読出し発生時に必らず検出することができない場合
もあシ、ソフトウェア暴走発生に対して検出効率があが
らない等の問題点があった。
この発明は上記のような問題点を解決するためになされ
次もので、スタック領域のオーバーフローの検出が行え
、ソフトウェア暴走の検出ができる計算機の異常検出装
置を得ることを目的とする。
〔問題点を解決するための手段〕
この発明に係る計算機の異常検出装置は、限界値設定回
路にRAMのスタックエリア又はデータエリアの限界メ
モリ番地に相当する限界値を設定し、比較回路でCPU
のスタックポインタ又はプログラムカウンタの内容が前
記限界値設定回路に設定された限界値と同一の値になっ
たことを検出するようにしたものである。
〔作用〕
この発明における比較回路は、CPUのスタックポイン
タ又はプログラムカウンタの内容が、RAMのスタック
エリア又はデータエリアの限界値と等しくなったことを
検出することにより、スタックエリア又はデータエリア
のオーバーフローを検出し、ソフトウェアの暴走の検出
を行う。
〔実施例〕
以下、この発明の一実施例を図について説明する。第1
図において、1.1G、12.16は前述した第3図と
同−又は相当部分である。21はRAM12のスタック
エリアの限界のメモリ番地(最深のメモリ番地)に相当
する限界値を設定するスタックポインタ限界値設定回路
、2oはCPU10のスタックポインタの内容がスタッ
クポインタ限界値設定回路21で設定された限界値と等
しくなったことを検出する比較回路である。
次に動作について説明する。
CPU10はRAM12に実行プログラムをIPI、 
l。
た後、プログラムを実行していき、演算データをRAM
12に書込みまたは読出しする。そのときのRAM12
のメモリマツプを第2図に示す。RAM12のメモリ空
間は、データエリア12A、コードエリア12B及びス
タック・エリア12Cの3つに分けることができる。デ
ータエリア12Aは一時的な演算データをストアしてお
くためのメモリ領域であシ、コードエリア12BはCP
U10の実行プログラムをストアしておくためのメモリ
領域であシ、またスタックエリア12Cは割込み発生時
あるいはサブルーチン呼出し時のプログラムステータス
ワード(以下PSWと略す)をストアしておくためのメ
モリ領域である。特に、スタックエリア12CはCPU
l0内のスタックポインターという名称のレジスターに
よ多制御される。スタックポインターはCPU10のリ
セット直後にスタックエリア12Cの最終メモリ番地(
第2図中のX番地)の値がイニシャルセットされ、以降
、割込処理あるいはサブルーチン呼出し処理に伴なうP
SWのセーブが行なわれる毎に必要数だけ減じられてい
くレジスターであシ、その内容は現在までに使用されて
いるスタックエリア12Cのメモリ番地’に示している
。通常スタックエリア12Cは処理に必要とするサイズ
に比較して十分大きいメモリサイズのエリアが与えられ
ているため、スタックポインターの内容がスタックエリ
ア12Cの最深のメモリ番地(第2図のY番地)と同じ
値となって、すなわちスタックエリア12Cの全領域を
使ってしまって、さらにPSWのセーブを行なったため
コードエリア12Bあるいはデータエリア12Aを破壊
してしまうようなことが起きないようにしている。しか
L、CPU1G内のソフトウェアが正常動作していない
ような場合、例えばPlvのセーブのみ行ないりセーブ
が全く実行されていない等の異常な動きをしている場合
には、スタックポインターの内容がスタックエリア12
Cの最深のメモリ番地であるY番地よりも小さい値とな
ってしまい、その結果コードエリア12Bを破壊するよ
うな不具合が発生してしまうことがある。
第1図において、スタックポインタ限界値設定回路21
で限界値を、スタックエリア12Cの最深のメモリ番地
であるY番地に相当する値に設定した場合、比較回路2
0はCPoloのスタックポインターがY番地相当値に
なったとき、すなわちCPU10がRAM12のスタッ
クエリア12Cの最深のメモリ番地にPSWのセーブを
行なったとき、異常信号20&をアクティベートすると
ともにCPU10に処理の中断を指示する。
従って、この発明の一実施例ではCPU1Gのスタック
ポインターがスタックエリア12Cの最深のメモリ番地
に相当する値となったことを検出できる九め、スタック
エリア12Cのオーバーフローの監視ができ、ソフトウ
ェアの暴走検出を行なうことができる。
なお、上記実施例ではCPU10のスタックポインター
の内容を検出する比較回路20を設けたものを示したが
、CPU10のプログラムカウンター内容を検出する比
較回路を設けてもよい。
通常、プログラムカウンターの内容はコードエリア12
Bのメモリ番地に相当する値としかならないため、プロ
グラムカウンターの内容がデータエリア12Aあるいは
スタックエリア12Cの限界のメモリ番地に相当する値
となったことを検出する比較回路を設けてもソフトウェ
アの暴走検出を行なうことができる。
〔発明の効果〕
以上のように、この発明によれば、CPUのスタックポ
インタ又はプログラムカウンタの内容が正常限界値を越
えたことを検出する比較回路を設けたので、スタックエ
リア又はデータエリアのオーバーフローの検出が確実に
行なえ、信頼性゛の高い計算機動作を達成できる効果が
ある。
【図面の簡単な説明】
第1図はこの発明の一実施例による計算機の異常検出装
置を示すブロック図、第2図は一般的な計算機のメモリ
マツプを示すメモリマツプ図、第3図は従来の計算機の
異常検出装置を示すブロック図である。 図において、1は計算機本体、10はCPU、12はR
AM、2Gは比較回路、21はスタックポインタ限界値
設定回路である。 なお、図中、同一符号は同一、又は相当部分を示す。

Claims (1)

    【特許請求の範囲】
  1.  スタツクアーキテクチヤを有する中央演算処理装置と
    、ランダムアクセスメモリとを有する計算機の異常検出
    装置において、前記ランダムアクセスメモリのスタツク
    エリア又はデータエリアの限界のメモリ番地に相当する
    限界値を設定する限界値設定回路と、前記中央演算処理
    装置のスタツクポインタ又はプログラムカウンタの内容
    が前記限界値設定回路に設定された前記限界値と同一の
    値になつたことを検出する比較回路とを備えた計算機の
    異常検出装置。
JP60120523A 1985-06-05 1985-06-05 計算機の異常検出装置 Pending JPS61279940A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60120523A JPS61279940A (ja) 1985-06-05 1985-06-05 計算機の異常検出装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60120523A JPS61279940A (ja) 1985-06-05 1985-06-05 計算機の異常検出装置

Publications (1)

Publication Number Publication Date
JPS61279940A true JPS61279940A (ja) 1986-12-10

Family

ID=14788362

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60120523A Pending JPS61279940A (ja) 1985-06-05 1985-06-05 計算機の異常検出装置

Country Status (1)

Country Link
JP (1) JPS61279940A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0370652U (ja) * 1989-11-13 1991-07-16
JPH03215180A (ja) * 1990-01-18 1991-09-20 Mita Ind Co Ltd モータの回転速度制御装置
JPH0546407A (ja) * 1991-08-12 1993-02-26 Toshiba Corp スタツク管理システム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0370652U (ja) * 1989-11-13 1991-07-16
JPH03215180A (ja) * 1990-01-18 1991-09-20 Mita Ind Co Ltd モータの回転速度制御装置
JPH0546407A (ja) * 1991-08-12 1993-02-26 Toshiba Corp スタツク管理システム

Similar Documents

Publication Publication Date Title
US5283792A (en) Power up/power down controller and power fail detector for processor
US4903194A (en) Storage addressing error detection circuitry
US7447943B2 (en) Handling memory errors in response to adding new memory to a system
JPH02156357A (ja) プログラム破壊防止方法
JPH03175537A (ja) デバッグ用マイクロプロセッサのエラー制御装置
JPS61279940A (ja) 計算機の異常検出装置
JPS59231800A (ja) 主記憶装置への不正書込防止装置
JPS61279941A (ja) 計算機の異常検出装置
US5036516A (en) Process and means for selftest of RAMs in an electronic device
JPS63250753A (ja) メモリアクセスチエツク方式
JPS59112494A (ja) メモリテスト方式
JPH0484224A (ja) スタックエリア保護回路
JPH01180656A (ja) メモリ保護装置
JP3110222B2 (ja) マイクロコンピュータ
JPH05274223A (ja) キャッシュメモリ
JPS6195464A (ja) デ−タ保護方式
JPH0644145A (ja) メモリエラー回避システム
JPS6232544A (ja) 情報処理装置の異常検出回路
JPS61216059A (ja) 記憶デ−タ保護方式
JPS60258623A (ja) マイクロコンピユ−タ
JPS63193249A (ja) マイクロプログラム制御装置
JPH0797335B2 (ja) コンピユータの暴走検知装置
JPS6086628A (ja) 計算機の異常検出方式
JPS58141500A (ja) メモリ管理保護方式
JPH02141832A (ja) マイクロプロセッサ制御方式