JPS635439A - 多重化システム - Google Patents

多重化システム

Info

Publication number
JPS635439A
JPS635439A JP61149282A JP14928286A JPS635439A JP S635439 A JPS635439 A JP S635439A JP 61149282 A JP61149282 A JP 61149282A JP 14928286 A JP14928286 A JP 14928286A JP S635439 A JPS635439 A JP S635439A
Authority
JP
Japan
Prior art keywords
cpu
signal
main cpu
cpus
output
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
JP61149282A
Other languages
English (en)
Inventor
Shingo Kojima
小嶋 伸吾
Junichi Iwasaki
岩先 純一
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
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 filed Critical NEC Corp
Priority to JP61149282A priority Critical patent/JPS635439A/ja
Publication of JPS635439A publication Critical patent/JPS635439A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Hardware Redundancy (AREA)

Abstract

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

Description

【発明の詳細な説明】 産業上の利用分野 本発明は情報処理装置に関し、特に複数のCPUで構成
される多重化システムに関する。
従来の技術 昨今のマイクロプロセッサの高性能化により、その応用
分野は様々な領域に拡大した為、そのシステムの信頼性
も高いものが要求されている。マイクロプロセッサを利
用したシステムで高信頼性を得る場合、1つには複数の
CPUに同一の処理を行わせ、出力を比較して誤動作を
検知するという方法がある。これを多重化システムと称
し、CPU自体の価格が低いマイクロプロセッサ・シス
テムでは比較的安価で、かつ効果の高い高信頼性システ
ムを得る事ができる。
上記のように、通常、多重化システムを構成する場合に
は、2台の同じCPUを並行運転させる。
これら2台のCPUからの出力結果に不一致が生じた場
合にはどちらかのCP[Jが異常動作をしたと見なし、
そのCPUの組を停止させた後、別に用意しである予備
のCPUの組を起動して誤動作に対処する為のルーチン
を走らせる、という制御方法が従来から用いられている
発明が解決しようとする問題点 上述した従来の多重化システムでは、誤動作が検出され
た後、システムダウンさせない為には最小構成でもCP
LI2台の組を2組、すなわち4台のCPtJが必要と
なり、高コストのシステムとなってしまう。また、誤動
作が検出された場合、主CPUを、それまで動作してい
なかった予備のCPUに切り換えてしまう為、異常が生
じた時点でのCP口内部の状態は全く不明であり、処理
を続行する事は不可能である。さらに、誤動作が生じた
場合、主CPUの組を切り換え、誤動作処理ルーチンを
起動させる為に、かなりのタイムロスを生じ、またハー
ドウェア・ソフトウェア両方に対する負担も大きくなる
という欠点を有している。
そこで、本発明は、3台以上のCPUからなる多重化シ
ステムにおいて、誤動作が検出された時、直ちにマイク
ロプロセッサからの誤動作信号を解析し、極力短いロス
タイムで故障CPUの切り放し、もしくはシステムの再
構成を行い、命令の実行を続行可能とするシステムを提
供する事を目的とする。
問題点を解決する為の手段 本発明の多重化システムは、主CPUと2台以上の監視
CPLIと、前記各監視CPUからの出力信号と前記主
CPUの出力信号を比較する比較器と、該比較器からの
一致信号により故障CPUを判別する故障CPU判別回
路を有し、前記故障CPU判別回路の出力に基づき特定
される故障CPUが前記監視CPUのいずれか一つであ
る場合には他のCPUを停止させることなく、前記主C
PUが次のバスサイクルに処理を進める以前に前記故障
CPUの切り放しを行った後処理を続行し、前記故障C
PU判別回路の出力により特定される故障CPUが前記
主CPUである場合には、システム再構成の後、誤動作
ルーチンを起動して処理の続行を可能とする機能を有し
ている。
実施例 第1図に、CPU3台を用いて本発明を施したシステム
を構成した例を示す。
3台のCP 0101.102.103はそれぞれ同一
テアリ、コントロールユニット105からのFRM信号
112.113.114によって主モードと監視モード
が切り換えられるようになっている。FRM信号がイン
アクティブの場合には主CPUとして通常の動作を行う
。これに対しFRM信号がアクティブの場合にはCPU
は監視モードとなり、コントロール出力バス、アドレス
バス、データバス上に主CPIJから出力があった時、
そのバス上の信号と、自分が出力するはずである信号を
常に比較し続け、不一致が認められた場合に不一致信号
MSMAT 115.116.117をアクティブにし
て外部のコントロールユニット105に知らせる。外部
制御回路であるこのコントロールユニット105におい
て故1cpuの特定、切り放し、システムの再構成など
を行う。コントロールユニット105カラは、誤動作が
発生した場合に処理の続行が可能かどうかを示すRT/
EP信号110、誤動作処理の場合にシステムを停止さ
せる必要がある場合に使用するHALT信号111が各
CPUに対して送り出される。
CPUの外部には主メモリ、I10装置など104カア
って、コントロールバス106.107 、アドレスバ
ス108、データバス109 によりCPUl0I、1
02.103と接続されている。なお、コントロールバ
スは、説明の都合上、CPUからメモリ等へ出力される
コントロール出力バス106 と、CPUに人力される
コントロール入力バス107に分割して示す。
次に、CPtJ内部の多重化システムの為の機構を説明
する。第2図は、CP口内部の主モード/監視モード切
り換えに要する部分のブロック図である。
CPU201は多重化システムに対する機能をもたない
、本来のCPU機能のみをもつCPUである。コントロ
ール入力バス218は主モード/監視モードに関係なく
常に内部CPLI201に接続されている必要がある為
、スイッチ、比較器を経由せずに内部CPU201に直
結される。また、コントロール出力バス219はスイッ
チ1 (202)  に、アドレスバス220はスイッ
チ2 (203)  に、データバス221はスイッチ
3 (204)に、それぞれ接続されている。さらに、
CPU201の出力がスイッチ4 (205)に、CP
U201のアドレス出力がスイッチ5 (206)に、
CPU201のデータ出力がスイッチ6 (207)に
接続されている。スイッチ202のA端子にはスイッチ
205のA端子の出力が接続し、スイッチ202とスイ
ッチ205のB端子の出力には比較器208が接続して
いる。スイッチ203のA端子にはスイッチ206のA
端子の出力が接続し、スイッチ203とスイッチ206
のB端子の出力には比較器209が接続している。スイ
ッチ204とスイッチ207はA端子同志が接続し、そ
れぞれのスイッチのB端子出力は比較器210に接続し
ている。スイッチ202.203゜205、 206の
B/A信号はFRM信号に接続している。
従って、FRM信号がアクティブの時、つまりCPUが
監視モードの時スイッチはB側が使用されることになる
為、外部バスの状態と内部CPUの出力とが比較器20
8.209に人力される。データバス221に関しては
、監視モードの場合であっても、データ入力の時は内部
CPU201に直結され、データ出力の時のみ、比較器
210に人力される必要がある。この為、データ読み込
み/書き出し信号R/W222をインバータ211で反
転してアンドゲート212に入力する一方、FRM信号
をこのアンドゲート212の他方の端子に人力して、そ
の出力をB/A信号としている。こうすることにより、
監視モードで、かつデータ出力の場合にのみスイッチを
B側に接続して、データバス221の状態と内部CPU
201のデータとを比較器210に入力することができ
る。比較器208.209.210の出力は、それぞれ
インバータ213.214.215により不一致信号に
してオアゲート216に人力する。
ひとつでも不一致を生じた場合にはオアゲート216の
出力はアクティブになる。この信号は、CPUが主モー
ドの場合及びバス上のデータが不確定の場合に無効とな
るように、FRM信号224とバス上のデータが有効で
あることを示すDS信号223とともにアンドゲート2
17に人力される。このアンドゲート217の出力がM
SMAT信号225として出力される。
以下に、第1図に示した3台のCPUによる多重化シス
テムを例にとり、本発明のシステムの動作を詳細に説明
する。
コントロールユニット105は、初期状態では主CPU
とするべきCPUに対するFRM信号のみをインアクテ
ィブとする。第1図の例では、FRM1信号112をイ
ンアクティブとしてcputを主CPUとし、FRM2
信号113及びFRM3信号114をアクティブとして
CPU2及びCPU3を監視CPUとする。また、HA
LT信号111はインアクティブとしておく。
3台のCPUが全て正常に動作している場合には、各C
PUは全く同様の動作を続けている為、コントロール出
力バス106、アドレスバス108、データバス109
の各バス上のデータは監視CPUの出力用データと常に
一致する。よって、MSMAT2信号116、MSMA
T3信号117は共にインアクティブである。コントロ
ールユニット105はこれら2つの信号から、システム
が正常動作していると判断しく第8図参照)、MSMA
T2信号116あるいはMSMAT3信号117のどち
らかがアクティブとなるまで各FRM信号及びHALT
信号を上述の初期状態のまま保持する。
続いて、監視CPUであるCPU2が故障した場合の、
故障発生から2台のCPUによるシステム再始動、さら
にもう1つのCPUの故障によるシステムダウンまでの
推移を以下に示す。
CPU2に故障が発生した場合のCPUのメモリ書き込
みサイクルのタイミングチャート及び状態遷移図を第5
図及び第7図に示す。このタイミングチャートでわかる
様に、タロツク信号CLKのT1ステートの立上がりで
アドレスA。−23がセフトされる。また、T1ステー
トの立下がりでデータD。−+5がセットされる。次い
でT2ステートの立上がりでデータストローブ信号DS
によってバス上のデータが確定する。監視CPLIはこ
のタイミングでデータの不一致を確認し、MSMAT2
信号116をアクティブにして不一致のあった事をコン
トロールユニット105に知らせる。コントロールユニ
1)105は全MSMAT信号を調べ、アクティブにな
っているのがMSMAT2信号116ひとつだけである
ことから、不一致を告げたCPU2自身が故障している
と判断しく第8図参照)、次のステートからM S’M
 A T 2をマスクし、以降のシステムの動作に影響
を与えないようにする。
また、CPU2は監視モードである為、MSMAT以外
の全信号端子は人力状態になっている。よって、CPU
2はシステムに対して何の動作もできない事になり、シ
ステム側から見た場合、CPU2は完全に切り放された
ちあとすることができる。以上の処理は、HALT信号
を使用しない為、主CPU1はそのままロスタイムなく
命令を続行する事ができる。すなわち、第7図に示した
バスサイクルの状態遷移図でステートTlからT、まで
進んだあと続いてすぐに次のステートT1 に戻る。
なお、この状態では、主CPU1と監視CPU3が1台
ずつで動いている事になる為、さらに監視CPU3が不
一致を検出した場合にはどのCPUが故障したのかを判
断することができない。その為、MSMATSがアクテ
ィブになった時は、直ちにHALT信号111をアクテ
ィブにして主CPLJIと監視CPU3の両方に緊急停
止をかけ、システムの破壊を最小限に留める。
CPU2故障発生からここまでのシステムの状態遷移図
を第3図に示し、以下にこの図における各ステートを簡
単に説明する。
(1)Tl :MSMAT2がアクティブとなる。
(2)T2:MSMAT2をマスクする。
(3)TW2 :MSMAT3がアクティブになるまで
待つ。
(4)T3:CPU1に対するホールド要求信号HLD
RQ1、及びCPU3に対するホールド要求信号HLD
RQ3をアクティブにする。
(5)T4:(システムダウン) 次に、主CPUIが故障した場合の、故障発生から2台
のCPUによるシステム再始動、さらにもう1つのCP
Uの故障によるシステムダウンまでの推移を以下に示す
この状態の、CPLI 1に故障が発生したバスサイク
ルのタイミングチャートは第6図に示す様になる。
先に示した、CPIJ2故障の場合と同様にして、クロ
ック信号CLKのT1ステートの立上がりでアドレスΔ
。−2,がセットされる。また、T1ステートの立下が
りでデータD O−I Sがセットされる。
次いでT2ステートにおいてCPU2及びCPU3はデ
ータの不一致を確認し、MSMAT2とMS M A 
T 3をアクティブにして不一致のあった事をコントロ
ールユニッ) 105 に知らせる。コントロールユニ
ット105は全てのMSMAT信号がアクティブになっ
ている事から、cpulが故障と判断しく゛第8図参照
)、次のステー)T3でHALT信号をアクティブにし
、全CPUに緊急停止をかける。HALT信号により、
実際にアドレスバス及びデータバスがハイインピーダン
スになるのは、そのバスサイクルが終了した後である為
、緊急停止をかけてからCPUが停止するまでに最大1
バスサイクル分の時間を要する。よって、HALT信号
をアクティブにしてから1バスサイクル分の時間の後、
FRM1信号112をアクティブにし、FRM2信号1
13をインアクティブにする事により主CPIJをCP
LllからCPLI2へ切り換える。この時、HALT
信号によって全てのコントロール出力はインアクティブ
になっている為、切り換え途中にバスの競合が起こる事
はない。
また、CPU2を主CPUとしたことで、CPU2のM
SMAT信号は不要になる。そこで、コントロールユニ
ッ)10!11!IのMSMAT2をハイインピーダン
スにし、CPU2との接続を断つ。
ここで、故障を発生したのが監視CPUではなく、主C
PUであるCPUIである為、異常が認められたバスサ
イクルで主メモリ、I10装置等104への書き込みが
行われていた場合、システムの一部が破壊されている可
能性がある。そうなると命令の続行は不可能である。そ
こで、コントロールユニット105側のRT/EP信号
をインアクティブにして、命令処理の続行が不可能な事
をCPU側に知らせる。
これと同時に、HALT信号をインアクティブとしてシ
ステムを再始動する。この時、CPU 1はFRM信号
がアクティブとなっている為、監視モードとなっており
、MSMAT以外の全出力信号は入力状態となっている
。また、コントロールユニット105側のMSMATI
はCPU1が主CPUであった時のまま、ハイインピー
ダンスとなっている。従って、CPU1はシステムに影
響を与える事が不可能となり、システム側からはCPU
1は完全に切り放されたと考えることができる。
HALT信号が解除され、システムはCPU2を主CP
Uとして2台のCPU状態で実行を再開する。上述した
ように、この時RT/EPがインアクティブとなる為、
CPU2は直ちに内部割込みを発生し、あらかじめ用意
されている誤動作処理ルーチンを起動する。
以上のように、主CPUが故障した場合でも、システム
は数クロックサイクル程度のロスタイムで実行を再開す
る事ができる。
第6図のバスサイクルの状態遷移図で説明する。
主CPUに故障が発生した際にはT1ステートからT、
まで進む。そこでステートTHに変わって主CPUの切
り換えを行なった後、再びステートT4に戻り、次のス
テートT+へと進んでいく。
なお、CPU2故障の場合と同様、この状態では主CP
Uと監視CPUが1台ずつしかない為、次に不一致が検
出された場合にはシステムの復旧は不可能である。よっ
てこの場合もMSMAT3がアクティブになった時は直
ちにHALT信号をアクティブにし、両方のCPUを緊
急停止させてシステムの破壊を最小限に留める。
CPUI故障発生からここまでのシステムの状態遷移図
を第4図に示し、以下にこの図の各ステートを説明する
(1)Tl:HALTをアクティブにする。
(2)TWI:現在のバスサイクルが終了するのを待つ
(3)T2:FRMIをアクティブにする。
F’RM2をインアクティブにする。
MSMAT2をハイインピーダンスにする。
(4)T3:RT/EPをインアクティブにする。
HALTをインアクティブにする。
(5)TW 3 : M S MA’T 3がアクティ
ブになるまで待つ。。
(6)T4:HALTをアクティブにする。
(7)T5:(システムダウン) 発明の詳細 な説明したように本発明は、使用するCPLI及び制御
回路の信号の種類及びタイミングを最適化することによ
り、多重化システムにおける故障CPUの切り放しもし
くはシステムの再構成に生ずるロスタイムを最小限にで
きる。また、可能な限りシステムに支障をきたす事なく
、命令の処理を続行できる効果がある。
【図面の簡単な説明】
第1図は本発明の実施例であるシステムのブロック図で
ある。 第2図はCP口内部の多重化システムに関与する部分の
ブロック図である。 第3図は監視CPUであるCPU2の故障からシステム
ダウンまでの状態遷移図である。 第4図は主CPUであるcpulの故障からシステムダ
ウンまでの状態遷移図である。 第5図は本発明の多重化システムにおいて、監視CPU
であるCPU2に故障が発生した場合のバスサイクルの
タイミングチャートである。 第6図は同様に主CPUであるcpuiに故障が発生し
た場合のタイミングチャートである。 第7図はCPUのバスサイクルの状態遷移図である。 第8図は外部制御回路が故障CPUを特定するための判
断基準である。 (主な参照番号) 101  ・・CP U 1  102  ・・CPU
2103  ・・CP U 3 104・・主メモリ、
I10装置等105  ・・コントロールユニット 106  ・・コントロール出力バス 107  ・・コントロール人力ハス 108  ・・アドレスバス 109  ・・テータパ
ス201  ・・CPU

Claims (1)

    【特許請求の範囲】
  1. 主CPUと2台以上の監視CPUからなる多重化システ
    ムにおいて、該多重化システムは前記各監視CPUから
    の出力信号と前記主CPUの出力信号を比較する比較器
    と、該比較器からの一致信号により故障CPUを判別す
    る故障CPU判別回路を有し、前記故障CPU判別回路
    の出力に基づき特定される故障CPUが前記監視CPU
    のいずれか一つである場合には他のCPUを停止させる
    ことなく、前記主CPUが次のバスサイクルに処理を進
    める以前に前記故障CPUの切り放しを行った後処理を
    続行し、前記故障CPU判別回路の出力により特定され
    る故障CPUが前記主CPUである場合には、システム
    再構成の後、誤動作ルーチンを起動して処理を続行する
    ことを特徴とする多重化システム。
JP61149282A 1986-06-25 1986-06-25 多重化システム Pending JPS635439A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61149282A JPS635439A (ja) 1986-06-25 1986-06-25 多重化システム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61149282A JPS635439A (ja) 1986-06-25 1986-06-25 多重化システム

Publications (1)

Publication Number Publication Date
JPS635439A true JPS635439A (ja) 1988-01-11

Family

ID=15471794

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61149282A Pending JPS635439A (ja) 1986-06-25 1986-06-25 多重化システム

Country Status (1)

Country Link
JP (1) JPS635439A (ja)

Similar Documents

Publication Publication Date Title
JP3206006B2 (ja) 二重化バス制御方法及び装置
JP2573508B2 (ja) ディジタルロジック同期モニター方法および装置
US20060150009A1 (en) Computer system and method for dealing with errors
US6032265A (en) Fault-tolerant computer system
JPH11143729A (ja) フォールトトレラントコンピュータ
US20170242760A1 (en) Monitoring device, fault-tolerant system, and control method
JP3063334B2 (ja) 高信頼度化情報処理装置
JPS635439A (ja) 多重化システム
JP3652232B2 (ja) マイクロコンピュータのエラー検出方法及びエラー検出回路及びマイクロコンピュータシステム
JPH08287030A (ja) 多重系計算機システムの自動再起動装置および方法
JPS63163541A (ja) エラー許容計算システム及び該計算システム内のエラーユニットを認識し、その箇所を検知し、エラーを除去する方法
JPS633344A (ja) 多重化システムの再実行方式
JP2998804B2 (ja) マルチマイクロプロセッサシステム
JP2001175545A (ja) サーバシステムおよび障害診断方法ならびに記録媒体
JPH0652130A (ja) マルチプロセッサシステム
JP3061998B2 (ja) コンピュータのフォールト・トレラント方式
JPS60140438A (ja) 情報処理系の系切替制御方式
JPS60214048A (ja) 信号技術的に保証のあるデータ処理装置
JP2815730B2 (ja) アダプタ及びコンピュータシステム
JPS6351295B2 (ja)
JPH07114521A (ja) マルチマイクロコンピュータシステム
JP3055249B2 (ja) プロセッサのデバッグ方式
JPH09179836A (ja) 多重化計算機およびその障害検出処理方法
JPH06168151A (ja) 2重化計算機システム
SU1365086A1 (ru) Устройство дл контрол блоков управлени