JP2870202B2 - プロセッサ間相互監視方法及びその装置 - Google Patents
プロセッサ間相互監視方法及びその装置Info
- Publication number
- JP2870202B2 JP2870202B2 JP3036275A JP3627591A JP2870202B2 JP 2870202 B2 JP2870202 B2 JP 2870202B2 JP 3036275 A JP3036275 A JP 3036275A JP 3627591 A JP3627591 A JP 3627591A JP 2870202 B2 JP2870202 B2 JP 2870202B2
- Authority
- JP
- Japan
- Prior art keywords
- processor
- common memory
- data
- processors
- memory
- 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
Links
Landscapes
- Debugging And Monitoring (AREA)
- Multi Processors (AREA)
Description
なるコンピュータシステムにおけるプロセッサ相互間の
監視方法及びその装置に関する。
システムでは、通常個々のプロセッサが自己診断機能を
有しており、自己の異常を検出したときには、異常の発
生を他のプロセッサに通知するようになっている。
を制御するコンピュータシステムにおいて、制御を行っ
ているプロセッサが自己の異常を検出すると、他のプロ
セッサに異常の発生が通知され、正常に動作している他
のプロセッサが機械を安全に停止させることができる。
作を停止してしまうような故障では、当然のことながら
自己診断機能も働かなくなってしまうので、他のプロセ
ッサは異常の発生を知ることができないという問題点が
あった。
に動作の監視を行い、1つのプロセッサが故障して自己
診断機能が動作しない場合でも、他のプロセッサがその
プロセッサの異常を検出できるようにしている。
と、それらのプロセッサによりアクセスされる共通メモ
リC、Dとで構成されるマルチプロセッサシステムを例
にとり、従来の相互監視方法を説明する。
おけるプロセッサA及びプロセッサBの処理内容を示す
フローチャートである。このプロセッサシステムでは、
プロセッサAにおいて周期t0 、t1 毎に相互監視の為
のプログラムA−1、A−2が実行され、プロセッサB
において周期t 2 、t3 毎に相互監視の為のプログラム
B−1、B−2が実行される。
ッサA側での処理を説明する。プロセッサAでは、周期
t0 毎に図11に示すプログラムA−1が起動される。
このプログラムA−1では、図11のステップS1に示
すように共通メモリCを「0」にクリアする。
図12に示すプログラムA−2が起動される。このプロ
グラムA−2では、ステップS2で共通メモリCのデー
タを読み出し、次のステップS3で今回読み出したデー
タと前回読み出したデータとが一致するか否かを判別す
る。
が、後述するプロセッサB側のプログラムB−1により
「1」づつインクリメントされている場合であり、この
場合には、ステップS4でプロセッサBが正常に動作し
ているものと判断して、処理を終了させる。
たデータと前回読み出したデータとが一致した場合には
ステップ5で、プロセッサBに何らかの異常が発生して
共通メモリCのデータがインクリメントされなかったも
のと判断して、処理を終了させる。
び図14を参照して説明する。プロセッサBでは、周期
t2 毎に図13に示すプログラムB−1が実行される。
このプログラムB−1では、図13のステップS6で共
通メモリCのデータを読み出し、次のステップS7でそ
の値をインクリメントする。さらに、ステップS8でそ
のインクリメントしたデータを共通メモリCに書き込
む。
14に示すプログラムB−2が実行される。このプログ
ラムB−2では、図14のステップS9で共通メモリC
のデータを読み出し、次のステップS10でそのデータ
が規定値未満か否かを判別する。
は、上述したプロセッサB側のプログラムB−1により
「1」づつインクリメントされる共通メモリCの内容
が、プロセッサA側のプログラムA−1により周期t0
毎にクリアされている場合である。
サAが正常動作をしているものと判断して、処理を終了
させる。他方、ステップS10の判別で共通メモリCの
データが規定値以上のときは、プログラムA−1が実行
されず共通メモリCがクリアされない状態で、プログラ
ムB−1により共通メモリCのデータがインクリメント
され規定値以上となった場合である。
サAに異常が発生したものと判断し、さらに次のステッ
プS13で共通メモリCに上記規定値を書き込み、処理
を終了させる。
ログラムB−2の起動周期t3 とが等しいときには、そ
れらのプログラムを1つにまとめて、図15に示すプロ
グラムB−0を作成することができる。
4で共通メモリCのデータを読み出し、ステップS15
で読み出したデータが規定値未満か否かを判別する。読
み出したデータが規定値未満であれば、ステップS16
でプロセッサAは正常に動作しているものと判定し、次
のステップS17で共通メモリCのデータを「1」イン
クリメントし、さらにステップS18でそのデータを共
通メモリCに書き込んだ後、処理を終了する。
の場合には、ステップS19でプロセッサAに異常が発
生したものと判定し、次のステップS20で規定値をセ
ットし、さらにステップS18でその規定値を共通メモ
リCに書き込んだ後、処理を終了する。
るいはプロセッサA又はBに異常が発生したときのプロ
セッサの動作を、図16〜図18の動作タイムチャート
を参照して説明する。
きには、図16の動作タイムチャートに示すように、プ
ログラムB−1により周期t2 毎に共通メモリCのデー
タが「1」づつ増加し、さらに、プログラムA−1によ
り周期t0 毎に共通メモリCの内容がクリアされる。
に実行されるプログラムA−2により、共通メモリCの
値が変化していることが検出できるので、プロセッサB
が正常に動作しているものと判定できる。
ッサBにおいて周期t3 毎に実行されるプログラムB−
2により、共通メモリCのデータが規定値未満であるこ
とが検出できるので、プロセッサAが正常に動作してい
るものと判定できる。
の動作を、図17の動作タイムチャートを参照して説明
する。プロセッサAに異常が発生すると、プロセッサB
側のプログラムB−1により共通メモリCの内容はイン
クリメントされるが、プログラムA−1により共通メモ
リCの内容が「0」にクリアされなくなるので、図17
に示すように共通メモリCの値が次第に増大していく。
毎に実行されるプログラムB−2により、共通メモリC
の値が規定値以上であることが検出され、プロセッサA
は異常と判定される。
の動作を、図18の動作タイムチャート参照して説明す
る。プロセッサBに異常が発生すると、上述したプログ
ラムB−1により共通メモリCの値がインクリメントさ
れなくなり、図18に示すように共通メモリCの値が一
定値となる。
行されるプログラムA−1により、共通メモリCから今
回読み出したデータと前回読み出したデータとの一致が
検出され、プロセッサBは異常と判定される。
でも、プロセッサAにより共通メモリCがクリアされる
前後に共通メモリCのデータを読み出して比較したとき
には、今回のデータと前回のデータが一致しないことに
なるので、プロセッサBが正常と判断される場合が起こ
る。
メモリCのデータの比較を複数回繰り返すようにすれ
ば、プロセッサBに異常が発生している場合には、クリ
アした後の共通メモリCの内容が一定値「0」となるの
で、プロセッサBの異常を確実に検出することができ
る。
t1 、t2 は、次のような関係を満たす必要がある。 t0 >t2 t1 >t2 t1 ≠n×t0 (n=1、2、・・・) の条件は、正常時に共通メモリCのデータが増えてい
くための条件であり、の条件との条件は、正常時に
共通メモリCの前回の読み出しデータと今回の読み出し
データが一致しない為の条件である。
た従来の相互監視方法では、プロセッサAとプロセッサ
Bとが非同期で動作している場合に、例えば図19に示
すタイミングでプログラムが起動すると問題が生じる。
メモリCのデータを読み出した直後に、プロセッサAが
共通メモリCを「0」にクリアした場合には、次にプロ
グラムB−1により、読み出したデータがインクリメン
トされ、そのインクリメントされたデータが共通メモリ
Cに書き込まれる。
されずデータが増え続け、規定値以上となった時点でプ
ログラムB−2によりプロセッサAに異常が発生したも
のと誤って判定されてしまう。
るシステムにおいて、プロセッサの動作状態を正確に検
出できるプロセッサ間の相互監視方法及びその装置を提
供することである。
明図である。複数のプロセッサとその複数のプロセッサ
からアクセス可能な共通メモリC、Dとからなるシステ
ムに用いられるプロセッサ間相互監視方法であって、複
数のプロセッサの中で互いに動作を監視しているプロセ
ッサA、Bの一方のプロセッサAが、周期t0 毎に共通
メモリDにメッセージを書き込む。さらに、周期t1毎
に共通メモリCのデータを読み出し、今回読み出したデ
ータと前回読み出したデータとを比較し、データが不一
致であればプロセッサBは正常と判定し、データが一致
すればプロセッサBは異常と判定する。
い周期t2 毎に共通メモリDのメッセージを読み出し、
プロセッサAからのメッセージの有無を判断し、メッセ
ージが存在する場合には共通メモリCをクリア又は所定
値を設定し、メッセージが存在しない場合には共通メモ
リCのデータをインクリメント又はディクリメントす
る。さらに、共通メモリCのデータと基準値とを比較
し、データが基準値以内であればプロセッサAは正常と
判定し、基準値を越えたならプロセッサAは異常と判定
する
Aが共通メモリDに所定のメッセージを書き込んだか否
かにより、他方のプロセッサBが共通メモリCのデータ
をクリア、あるいはインクリメント(又はディクリメン
ト)するようにした。
イミングによって、例えば共通メモリCのデータをイン
クリメント(又はディクリメント)している途中で、そ
の共通メモリCの内容がクリアされるということが発生
せず、プロセッサが正常に動作しているのに、誤って異
常と判定することを防止できる。
説明する。図2は、本発明の第1実施例のプロセッサシ
ステムの構成図である。プロセッサカードA(例えば、
プロセッサAが搭載されたボード)と、N枚のプロセッ
サカードB〔以下、このカード上の任意のプロセッサを
プロセッサBM (M=1、2・・・N)と呼ぶ〕と、そ
れらのプロセッサから共通にアクセスされる共通メモリ
カードXとは、それぞれシステムバスEを介して接続さ
れている。
とは、共通メモリカードXを経由して互いのデータを受
け渡しする。共通メモリカードX内には多数のデータ格
納領域があり、このデータ格納領域には、プロセッサA
によりメッセージが書き込まれ、プロセッサBM により
そのメッセージが読み出される共通メモリDと、プロセ
ッサBM によりクリア又はインクリメント(又はディク
リメント)され、プロセッサAによりその内容が読み出
されるN個の共通メモリCM (M=1、2、3・・・
N)等が設けられている。
Bの異常の有無を検出する為にN個の共通メモリCM を
設けている。次に、第1実施例のプロセッサA及びBM
で実行される相互監視プログラムについて、図3〜図6
のフローチャートを参照しながら説明する。
されるプログラムA−1のフローチャートである。この
プログラムA−1は、共通メモリDにメッセージとして
「0」又は「1」を書き込むプログラムである。
メモリDにメッセージとして「0」を書き込んだか否を
判別する。前回共通メモリDに「0」を書き込んでいる
場合には、ステップS22に進み、今回は共通メモリD
にメッセージとして「1」を書き込む。
んでいる場合には、ステップS23に進み今回は、共通
メモリDにメッセージとして「0」を書き込む。ここ
で、プログラムA−1において、共通メモリDにメッセ
ージとして「0」と「1」を交互に書き込んでいるの
は、プロセッサBM 側でプロセッサAが正常に動作して
いるか否かを判定できるようにする為である。
に実行されるプログラムA−2のフローチャートであ
る。このプログラムA−2は、共通メモリCM から今回
読み出したデータと、前回読み出したデータとを比較す
ることで、プロセッサBM の異常を検出する処理であ
る。
CM のデータを読み出す。次にステップS25で今回読
み出した共通メモリCM のデータと前回読み出したデー
タとを比較し、両者が一致するか否かを判別する。
6でプロセッサBMは正常に動作しているものと判断
し、処理を終了する。他方、データが一致する場合は、
プロセッサBM において後述するプログラムBM −1が
実行されず、共通メモリCM の値がインクリメントされ
ない場合であり、この場合にはステップS27でプロセ
ッサBM に異常が発生したものと判断し、処理を終了す
る。
に実行されるプログラムBM −1のフローチャートであ
る。このプログラムBM −1は、共通メモリDの値が前
回の値と同じか否かにより、共通メモリCM をクリア又
はインクリメントする処理である。
Dの内容を読み出す。そして、ステップS29で今回読
み出した共通メモリDの内容と、前回読み出した共通メ
モリDの内容とを比較し、両者が一致するか否かを判別
する。
プロセッサAにより前述したプログラムA−1が実行さ
れ、共通メモリDの値が「0」から「1」に、あるいは
「1」から「0」に周期t0 毎に交互に書き換えられて
いる場合であり、この場合には、ステップS30に進み
共通メモリCM を「0」にクリアして、処理を終了す
る。
は、時間t0 の間プログラムA−1が実行されず、共通
メモリDの値が書き換えられていない場合であり、この
場合には、ステップS31に進み共通メモリCM を
「1」インクリメントして、処理を終了する。
に実行されるプログラムBM ー2のフローチャートであ
る。このプログラムBM −2は、共通メモリCM のデー
タを規定値(基準値)と比較することで、プロセッサA
の異常を検出する処理である。
CM のデータを読み出す。次に、ステップS33で、読
み出した共通メモリCM のデータが規定値未満か否かを
判別する。
ったときには、プロセッサAにより周期t0 毎に共通メ
モリDの内容が書き換えられ、その結果に基づいてプロ
グラムBM −1により一定周期t2毎に共通メモリCM
が「0」にクリアされている場合である。
サAが正常に動作しているものと判断して、処理を終了
する。他方、共通メモリCM のデータが規定値以上であ
ったときには、プログラムA−1により共通メモリDの
値が書き換えられていない為に、プログラムBM −1に
より共通メモリCM がインクリメントされ規定値以上と
なった場合である。
サAに異常が発生したものと判断し、さらに次のステッ
プS36で共通メモリCM に規定値を設定してプロセッ
サAに異常が発生したことを記憶する。
ログラムが実行されたときの共通レジスタD及びCM の
値の時間的変化を示した図7〜図9の動作タイムチャー
トを参照しながら、各プロセッサの動作を説明する。
のプロセッサの動作を、図7の動作タイムチャートを参
照して説明する。ある時刻にプロセッサAがプログラム
A−1を実行して共通メモリDのデータ値を「1」から
「0」に書き換えた後に、プロセッサBM がプログラム
BM −1を実行したとする。この場合、共通メモリDか
ら今回読み出した値と前回読み出した値とは一致しない
ので、プログラムBM −1により共通メモリCM が
「0」にクリアされる。
t0 期間、共通メモリDの値は「0」のまま変化しない
ので、その間プロセッサBM によりプログラムBM −1
が実行される毎に共通メモリCM の値が順次増加してい
く。
1が実行されて共通メモリDのデータ値が「0」から
「1」に書き換えられると、プログラムBM −1により
共通メモリDの今回の読み出し値と前回の読み出し値と
の不一致が検出され、再び共通メモリCM が「0」にク
リアされる。
いるときには、共通メモリDの値が「1」から「0」
へ、あるいは「0」から「1」へ交互に書き換えられ、
プロセッサB側のプログラムBM −1で共通レジスタD
の前回の値と今回の値の不一致が検出され、共通メモリ
Cがクリアされる。この結果、共通メモリCM の値が一
定値以下に抑えられるので、プログラムBM −2により
プロセッサAが正常に動作していると判定される。
ときには、プログラムBM −1により周期t2 毎に共通
メモリCM の値が「1」づつインクリメントされるの
で、この共通メモリCM の値の変化がプロセッサA側の
プログラムA−1で検出され、プロセッサBが正常に動
作していると判定される。
合の動作を、図8の動作タイムチャートを参照して説明
する。図8に示すようにプロセッサBM に異常が発生す
ると、プロセッサBM 側のプログラムBM −1が実行さ
れなくなり、共通メモリCM の値がクリア又はインクリ
メントされなくなる。その為、共通メモリCM のデータ
値は増加せず一定値となる。
されるプログラムA−2で読み出される共通メモリCM
の今回の読み出し値と前回の読み出し値とが一致する。
これによりプロセッサAは、プロセッサBM に異常が発
生したことを検出できる。
の動作を、図9の動作タイムチャートを参照しながら説
明する。図9に示すようにプロセッサAに異常が発生す
ると、プロセッサA側のプログラムA−1が実行されな
くなり、共通メモリDの値が書き換えられなくなる。共
通メモリDの値が変化しなくなると、プロセッサB側の
プログラムBM −1で共通メモリCM の値が「0」にク
リアされず、その値が次第に増大する。
実行されるプログラムBM −2により共通メモリCM の
値が規定値以上となったことが検出される。これにより
プロセッサBM は、プロセッサAに異常が発生したこと
を検出できる。
異常と誤って判定してしまった原因について検討して見
る。従来の相互監視方法では、プロセッサBのプログラ
ムB−1が共通メモリCのデータを読み出した直後に、
プロセッサAのプログラムA−1が共通メモリCの値を
「0」にクリアした場合に問題が発生していた。
セッサA側のプログラムA−1で共通メモリCをクリア
し、プロセッサB側のプログラムB−1で共通メモリC
のデータをインクリメントしていたので、両者の起動タ
イミングによっては共通メモリCの値が増大してしまう
場合があった。
は、プロセッサAが共通メモリDのメッセージ(この場
合、「0」又は「1」)を書き換えているか否かに基づ
いて、プロセッサB側のプログラムBM −1が共通メモ
リC M の内容をクリア又はインクリメント(又はディク
リメント)するようにしている。
って共通メモリC M の値が増大することが原理的に起こ
り得ず、判定誤りを完全になくすことができる。なお、
この実施例では、プロセッサA自身が共通メモリDの値
を、例えば「0」から「1」(あるいは「1」から
「0」)に交互に書き換えるようにしているので、共通
メモリのメッセージの書き換えをプロセッサB側のプロ
グラムから独立して行うことができる。
の実施例は、基本的には図2に示した第1実施例のシス
テム構成と同じ構成を有し、各プロセッサA、BM で実
行される各プログラムも基本的な部分は第1実施例と同
じである。
て説明する。この実施例では、プロセッサA側のプログ
ラムA−1が、周期t0 毎に共通メモリDに数値データ
Yを書き込んでいる。
ータYであれば、プロセッサBM 側のプログラムBM −
1が、周期t3 毎に共通メモリDと共通メモリCM とを
「0」にクリアし、共通メモリDの内容が数値データY
でなければ、共通メモリCM の値を「1」づつインクリ
メント(又はディクリメント)している。
ー2は第2実施例と同じである。上述したプログラムに
より、例えばプロセッサAに異常が発生して共通メモリ
Dに数値データYが書き込まれなくなると、プロセッサ
B側のプログラムBM −1により共通メモリCM の値が
増大し、規定値に達した時点でプロセッサAの異常と判
定される。
10は、第3実施例のプロセッサシステムのシステム構
成図である。この実施例は、前述したプロセッサAがN
個、プロセッサBが1個存在する場合の例である。
たプロセッサカードBと、N個のプロセッサAM (M=
1、2、・・・N)がそれぞれ搭載されたN枚のプロセ
ッサカードAと、共通メモリカードXとは共通バスEに
接続されている。
モリCとプロセッサAM からのメッセージ(例えば、数
値「1」又は「0」)が書き込まれるN個の共通メモリ
DM とが設けられている。
ッサBがアクセス可能なN−1個のメモリCM (この実
施例では、プロセッサカードB内のプロセッサBがアク
セスするN−1個のメモリをメモリCM と呼ぶ)が設け
られている。
AM −1は、周期t0 毎に起動され、共通メモリDM に
メッセージとして「0」と「1」とを交互に書き込む処
理である。
に起動され、共通メモリCのデータを読み出し、今回読
み出したデータと前回読み出したデータと比較し、一致
すればプロセッサBは異常、不一致であればプロセッサ
Bは正常と判定する処理である。
−1は、周期t2 毎に起動され、共通メモリDM の内容
を読み出し、今回読み出した値と前回読み出した値とを
比較し、一致すれば(プロセッサAM からのメッセージ
が存在しない場合)、メモリCM (共通メモリCを含
む、以下同じ)のデータをインクリメント(又はディク
リメント)し、不一致であれば(プロセッサAM からの
メッセージが存在する場合)、メモリCを「0」にクリ
アする処理である。
起動され、メモリCM のデータ値と規定値とを比較し、
データ値が規定値より小さければ、プロセッサAM は正
常と判定し、データ値が規定値以上であれば、プロセッ
サAM は異常と判定する処理である。
及び第2実施例と同様にして、プロセッサAM 及びプロ
セッサBが、お互いのプロセッサの異常を検出すること
ができる。
るので、プロセッサBの異常を検出する為にN個のプロ
セッサAM から読み出す必要のある共通メモリCは1個
で充分である。そこで、共通メモリCを1個とし、N−
1個のプロセッサAM の異常を検出する為に必要なN−
1個のメモリC(残りの1個のプロセッサAM に付いて
は共通メモリCを使用する)を、プロセッサBからだけ
アクセスできるプロセッサカードB内に設けている。
検出する為のメモリ(第1実施例の共通メモリCM に相
当する)を、必ずしも共通メモリとする必要がなくな
り、プロセッサカードB内のメモリ領域を使用すること
ができるので、メモリ構成がより自由になる。
の実施例のシステム構成は、図10に示した第3実施例
のシステム構成と同じであり、また各プロセッサAM 、
Bで実行される各プログラムも基本となる部分は、第3
実施例のプログラムと同じである。以下、第4実施例の
特徴となる部分について説明する。
毎に共通メモリDM にメッセージとして数値データYを
書き込んでいる。そして、共通メモリDM に数値データ
Yが書き込まれているときには、プロセッサBが一定周
期毎にその共通メモリDM とメモリCM (共通メモリC
を含む、以下同じ)とを「0」にクリアし、数値データ
Yが書き込まれていないときには、メモリCM をインク
リメントするようにしている。
プログラムについて説明する。プロセッサAM で実行さ
れるプログラムAM −1は、周期t0 毎に起動され、共
通メモリDM に数値データYを書き込む。
1は、周期t2 毎に起動され、共通メモリDM の内容を
読み出し、読み出したデータが数値データYならば、メ
モリCM と共通メモリDM を「0」にクリアし、読み出
したデータが数値データYでなければ、メモリCM を
「1」インクリメントする処理である。
−2は、第3実施例のプログラムと同一である。これら
のプログラムにより、プロセッサAM が正常に動作して
いて共通メモリDM に数値データYが書き込まれている
場合には、一定周期毎にメモリCM のデータが「0」に
クリアされ、メモリCM のデータが常に規定値未満とな
る。一方、プロセッサAM に異常が発生すると、メモリ
CM のデータが規定値以上となるので、N個のプロセッ
サAM が正常か否かを誤りなく判定することができる。
かにより、プロセッサBが正常に動作しているか否かを
判定することができる。以上述べたように上記実施例で
は、複数のプロセッサが非同期で動作するプロセッサシ
ステムにおいて、共通メモリ領域を少なくとも2種類用
意し(例えば、共通メモリCと共通メモリD)、一方の
プロセッサAが、一定周期毎に共通メモリDにメッセー
ジとして、例えば「0」又は「1」を交互に書き込んで
いる。そして、プロセッサAにより共通メモリDのメッ
セージが書き換えられているときには、他のプロセッサ
Bが別の共通メモリCの値を「0」にクリアし、メッセ
ージが書き換えられていないときには、共通メモリCの
データをインクリメント(又はディクリメント)するよ
うにしている。
ている場合には、共通メモリCの値が増大せず、プロセ
ッサAに異常が発生した場合にだけ共通メモリCの値が
規定値以上となる。よって、この共通メモリCの値と規
定値とを比較することで、プロセッサAの異常を正確に
検出することができる。
否かによりプロセッサBが正常に動作しているか否かを
検出している。しかも上述した相互監視方法では、一方
のプロセッサBが、他方のプロセッサAによって共通メ
モリDに書き込まれるメッセージに基づいて、共通メモ
リCを「0」にクリア、あるいはインクリメント(又は
ディクリメント)するようにしている。
グラムの起動タイミングによって、共通メモリCがクリ
アされないでその値が増大してしまうという問題が発生
ぜず、プロセッサの異常の検出の誤りをなくすことがで
きる。
(又はB)と複数のプロセッサBM (又はAM )からな
るプロセッサシステムについて説明したが、プロセッサ
A、Bがそれぞれ1個でもよいし、あるいはプロセッサ
A、Bがそれぞれ複数あっても良い。
は、実施例に述べた「0」、「1」、あるいは数値デー
タに限らずどのようなメッセージであっても良く、一方
のプロセッサが何らかの情報を書き込めば良い。
なるシステムにおいて、個々のプロセッサのプログラム
の起動タイミングにより発生するプロセッサの動作状態
の検出誤りをなくすことができる。
A−1のフローチャートである。
A−2のフローチャートである。
ムBM −1のフローチャートである。
ムB−2のフローチャートである。
正常なときの動作タイムチャートである。
が発生した場合の動作タイムチャートである。
発生した場合の動作タイムチャートである。
処理フローチャートである。
処理フローチャートである。
処理フローチャートである。
処理フローチャートである。
ーチャートである。
常なときの動作タイムチャートである。
発生した場合の動作タイムチャートである。
発生した場合の動作タイムチャートである。
る。
Claims (4)
- 【請求項1】複数のプロセッサと該複数のプロセッサか
らアクセス可能な共通メモリC、Dとからなるシステム
に用いられるプロセッサ間相互監視方法であって、 前記複数のプロセッサの中で互いに動作を監視している
プロセッサA、Bの一方のプロセッサAが、 周期t0 毎に前記共通メモリDにメッセージを書き込
み、 周期t1 毎に前記共通メモリCのデータを読み出し、今
回読み出したデータと前回読み出したデータとを比較
し、データが不一致であればプロセッサBは正常と判定
し、データが一致したならプロセッサBは異常と判定
し、 他方のプロセッサBが、前期周期t 1 よりも短い 周期t2 毎に前記共通メモリD
の内容を読み出し、プロセッサAからのメッセージの有
無を判断し、 メッセージが存在する場合には前記共通メモリCをクリ
ア又は所定値を設定し、メッセージが存在しない場合に
は前記共通メモリCのデータをインクリメント又はディ
クリメントし、前記 共通メモリCのデータと基準値とを比較し、基準値
以内であればプロセッサAは正常と判定し、基準値を越
えたならプロセッサAは異常と判定する、 ことを特徴とするプロセッサ間相互監視方法。 - 【請求項2】少なくとも1個のプロセッサAとN個のプ
ロセッサBM (M=1、2・・・N)と、該プロセッサ
A、BM からアクセス可能な共通メモリDとN個の共通
メモリCM とからなるシステムに用いられるプロセッサ
間相互監視方法であって、 プロセッサAが、 周期t0 毎に前記共通メモリDにメッセージを書き込
み、 周期t1 毎に前記共通メモリCM のデータを読み出し、
今回読み出したデータと前回読み出したデータとを比較
し、データが不一致であれば、該共通メモリCM に対応
するプロセッサBM は正常と判定し、データが一致した
ならプロセッサBM は異常と判定し、 プロセッサBM が、前期周期t 1 よりも短い 周期t2 毎に前記共通メモリD
の内容を読み出し、プロセッサAからのメッセージの有
無を判断し、 メッセージが存在する場合には前記共通メモリCM の内
容をクリア又は所定値を設定し、メッセージが存在しな
い場合には該共通メモリCM の内容をインクリメント又
はディクリメントし、前記 共通メモリCM のデータと基準値とを比較し、基準
値以内であればプロセッサAは正常と判定し、基準値を
越えたならプロセッサAは異常と判定する、 ことを特徴とするプロセッサ間相互監視方法。 - 【請求項3】N個のプロセッサAM (M=1、2・・・
N)と少なくとも1個のプロセッサBと、該プロセッサ
AM 、Bからアクセス可能なN個の共通メモリDM と少
なくと1個の共通メモリCと、該プロセッサBからアク
セス可能な複数のメモリCi とからなるシステムに用い
られるプロセッサ間相互監視方法であって、 プロセッサAM が、 周期t0 毎に前記共通メモリDM にメッセージを書き込
み、 周期t1 毎に前記共通メモリCのデータを読み出し、今
回読み出したデータと前回読み出したデータとを比較
し、データが不一致であればプロセッサBは正常と判定
し、データが一致したならプロセッサBは異常と判定
し、 プロセッサBが、前期周期t 1 よりも短い 周期t2 毎に前記共通メモリD
M の内容を読み出し、プロセッサAM からのメッセージ
の有無を判断し、 メッセージが存在する場合にはプロセッサAM に対応す
る前記共通メモリC又はメモリCi の内容をクリア又は
所定値を設定し、メッセージが存在しない場合には該共
通メモリC又はメモリCi の内容をインクリメント又は
ディクリメントし、前記 共通メモリC及びメモリCi のデータと基準値とを
比較し、基準値以内であれば該メモリに対応するプロセ
ッサAM は正常と判定し、基準値を越えたならプロセッ
サAM は異常と判定する、 ことを特徴とするプロセッサ間相互監視方法。 - 【請求項4】複数のプロセッサと該複数のプロセッサか
らアクセス可能な共通メモリC、Dとからなるシステム
であって、 前記複数のプロセッサの中で互いに動作を監視している
プロセッサA、Bの一方のプロセッサAが、 周期t0 毎に前記共通メモリDにメッセージを書き込
み、 周期t1 毎に前記共通メモリCのデータを読み出し、今
回読み出したデータと前回読み出したデータとを比較
し、データが不一致であればプロセッサBは正常と判定
し、データが一致したならプロセッサBは異常と判定
し、 他方のプロセッサBが、前期周期t 1 よりも短い 周期t2 毎に前記共通メモリD
の内容を読み出し、プロセッサAからのメッセージの有
無を判断し、 メッセージが存在する場合には前記共通メモリCをクリ
ア又は所定値を設定し、メッセージが存在しない場合に
は前記共通メモリCのデータをインクリメント又はディ
クリメントし、前記 共通メモリCのデータと基準値とを比較し、基準値
以内であればプロセッサAは正常と判定し、基準値を越
えたならプロセッサAは異常と判定する、 ことを特徴とするプロセッサ間相互監視装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3036275A JP2870202B2 (ja) | 1991-03-01 | 1991-03-01 | プロセッサ間相互監視方法及びその装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP3036275A JP2870202B2 (ja) | 1991-03-01 | 1991-03-01 | プロセッサ間相互監視方法及びその装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH04275664A JPH04275664A (ja) | 1992-10-01 |
JP2870202B2 true JP2870202B2 (ja) | 1999-03-17 |
Family
ID=12465225
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP3036275A Expired - Fee Related JP2870202B2 (ja) | 1991-03-01 | 1991-03-01 | プロセッサ間相互監視方法及びその装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2870202B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4475598B2 (ja) * | 2007-06-26 | 2010-06-09 | 株式会社日立製作所 | ストレージシステム及びストレージシステムの制御方法 |
JP5383590B2 (ja) * | 2010-05-21 | 2014-01-08 | 株式会社東芝 | 異常検出方法および車両制御装置 |
-
1991
- 1991-03-01 JP JP3036275A patent/JP2870202B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH04275664A (ja) | 1992-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4852092A (en) | Error recovery system of a multiprocessor system for recovering an error in a processor by making the processor into a checking condition after completion of microprogram restart from a checkpoint | |
EP0664511A2 (en) | Microprocessor fault log | |
JP3481737B2 (ja) | ダンプ採取装置およびダンプ採取方法 | |
JP2870202B2 (ja) | プロセッサ間相互監視方法及びその装置 | |
JP3192354B2 (ja) | コンピュータシステムのリトライ処理装置 | |
JPH04241642A (ja) | マイクロコンピュータの暴走検出方式 | |
JP3094924B2 (ja) | 通信装置制御回路 | |
JPS62106552A (ja) | ル−プ検出装置 | |
JP3154853B2 (ja) | イリーガルメモリアクセス検出方式 | |
JPS62175834A (ja) | 中央処理装置の暴走検出回路 | |
JPH06214831A (ja) | 中央処理装置の異常検出装置 | |
JPH0822419A (ja) | 誤書込防止方式 | |
JPS60233743A (ja) | 計算機システムの異常検出回路 | |
JP2635777B2 (ja) | プログラマブル・コントローラ | |
JPH0619744A (ja) | マルチプロセッサシステムの動作監視方式 | |
JPH086864A (ja) | メモリ制御用アドレスバス診断方式 | |
JPS6074052A (ja) | ヒストリ・メモリ制御方式 | |
JPH05289946A (ja) | メモリ制御方式 | |
JPS5827538B2 (ja) | 相互監視方式 | |
JPS62166449A (ja) | 論理装置の履歴記憶装置 | |
JPS6132701B2 (ja) | ||
JPH02103647A (ja) | インテリジェント計測カードの制御方法 | |
JPS63150732A (ja) | プログラム走行監視装置 | |
JPH04338842A (ja) | エラー検出機能付き情報処理装置 | |
JPH0480860A (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: 19981201 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
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: 20080108 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090108 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100108 Year of fee payment: 11 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110108 Year of fee payment: 12 |
|
LAPS | Cancellation because of no payment of annual fees |