[go: up one dir, main page]

JP3424968B2 - 計算機システム及びプロセッサチップ及び障害復旧方法 - Google Patents

計算機システム及びプロセッサチップ及び障害復旧方法

Info

Publication number
JP3424968B2
JP3424968B2 JP32897593A JP32897593A JP3424968B2 JP 3424968 B2 JP3424968 B2 JP 3424968B2 JP 32897593 A JP32897593 A JP 32897593A JP 32897593 A JP32897593 A JP 32897593A JP 3424968 B2 JP3424968 B2 JP 3424968B2
Authority
JP
Japan
Prior art keywords
bus
processor
processors
buses
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
Application number
JP32897593A
Other languages
English (en)
Other versions
JPH07182189A (ja
Inventor
敏久 亀丸
健児 黒田
雅士 下山
裕明 安永
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 JP32897593A priority Critical patent/JP3424968B2/ja
Publication of JPH07182189A publication Critical patent/JPH07182189A/ja
Application granted granted Critical
Publication of JP3424968B2 publication Critical patent/JP3424968B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Hardware Redundancy (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、多重構成による高信
頼化計算機において、特に高周波クロックで動作し、複
数のプロセッシングユニットを備え高性能な処理能力を
有する計算機システムと、障害発生後の障害回復方式に
関するものである。
【0002】
【従来の技術】フォールトトレラント計算機の分野にお
いて、計算機の信頼性を高める方法として、故障率の高
いモジュールを多重化し、あるモジュールが故障しても
残りのモジュールで正しい動作を行う方式が一般的にと
られている。この、多重化の範囲はCPU、メモリ、バ
スなどであり、これらに種々のエラーチェック機能を付
加して、高信頼化を行っている。
【0003】従来例として、例えば、特開昭58−13
7054号では、プロセッシングボード、主記憶、入出
力制御装置が、通称ペア&スペアとよばれる二重化され
た2枚のボードで構成され(プロセッシングユニットと
しては、全体で4個のプロセッサを必要とする)、完全
に同期動作を行う。各ボード内では、出力段の比較照合
を行い、一致しなければ、そのボードは故障したものと
みなし、外部バスへのアクセスをしない。故障したボー
ドの情報はスペア側に伝えられ、スペア側のみでシステ
ムは動作を実行し続けることができる。
【0004】また、特開平2−202636号では、3
つの独立したプロセッシングボード(同一周波数だが位
相が異なるクロックで各々動作する)で構成され、各プ
ロセッシングボードは、プロセッサ、キャッシュメモ
リ、ローカルメモリから成る。各プロセッシングボード
は、グローバルメモリへのアクセス時、およびサイクル
カウンタと称するカウンタのオーバフロー時に同期をと
りながら動作する。
【0005】さらに、特開平4−241038号及び特
開平4−241039号では、同一プロセッシングボー
ドに3つのプロセッサを実装し、同一クロックで完全同
期して動作する。該プロセッサのうち、選択回路により
選択された2つの出力をそれぞれ外部に出力する。プロ
セッサからキャッシュメモリや外部へのアクセス経路
は、選択回路の判定結果に従って内部バスのゲートの開
閉することで決定される。
【0006】さらに、特開昭59−160899号で
は、同一プロセッシングボードに2つのプロセッサと1
つのキャッシュを実装し、プロセッシングボードが処理
を行なう場合は、命令およびデータを2重化された主記
憶からキャッシュ(ストアインキャッシュ)にロードし
てきて、該2つのプロセッサは同期動作を行ない、実行
結果を比較する。一連の処理が正常に完了する(即ち、
2重化プロセッサの処理が常に一致していた)場合また
はキャッシュがオーバーフローする場合にキャッシュの
内容を主記憶に書き戻す。この方式は、2重化された主
記憶(の少なくとも一方)に常に正しいデータを確保す
ることを保証とすることによって、信頼性を向上してい
る。プロセッシングユニットの障害は、正しく検知さえ
できればよい(該ユニットによる継続はできなくてよ
い)。プロセシングユニットの障害時には、そのユニッ
トが行なった処理を、(古いが)正しい主記憶上のデー
タをもとに別のプロセッシングユニットで再実行する。
【0007】また、図31に示すように、従来の計算機
システムの高信頼化の一方式として、プロセッサを3重
化し、各プロセッサは同一命令を実行し、出力を多数決
回路で、比較・選択し、システムバスに出力する方式が
ある。こうすることによって単一のプロセッサの故障に
対して、システムは正常な運用が続行できる。
【0008】
【発明が解決しようとする課題】従来の技術によると、
1つの箇所が故障しても、正常に動作を続けるフォール
トトレラント計算機を実現するために、さまざまな方法
がなされているが、これらの方法で、高周波クロックで
動作し、複数のプロセッシングユニットを要する高性能
な計算機を構築しようとすると以下の問題点があった。
【0009】上記従来例の特開昭58−137054号
では、プロセッシングユニットがペア&スペアの2枚で
構成されているため、1プロセッシングユニットあたり
4個のプロセッサが必要である。一般に高速動作可能な
プロセッサチップは、他の部品に比較して非常に高価な
ため、このような構成はコストが高くなる。
【0010】また、上記従来例の特開平2−20263
6号では、3つの独立したプロセッサボードで構成され
ている。各プロセッサボードは、同一周波数(厳密には
同一ではない)だが位相の異なるクロックで動作するた
め、各プロセッサボード間の同期あわせのための特別な
機構を必要とし、マルチプロセッサ化などの高速性能化
手法を適用するのは困難が伴うと思われる。
【0011】また、上記従来例の特開平4−24103
8、特開平4−241039号では、プロセッシングユ
ニットを同一のボードで構成し、3つのプロセッサを実
装し、同一クロックで完全同期して動作するもので、マ
ルチプロセッサ化による高性能化も適用できる。しか
し、プロセッサとキャッシュメモリ間にプロセッサの出
力の正当性を確認する回路が入り、プロセッサのノーウ
ェイト動作と高周波数の動作の障害となり、やはり高性
能化を阻害している。
【0012】また、上記従来例の特開昭59−1608
99号では、プロセッシングボードは独立クロックで動
作し、内部は2つのプロセッサで構成され、プロセッサ
故障時は、前回のキャッシュメモリのフラッシュタイミ
ングで主記憶に格納された内容から別のプロセッシング
ユニットが処理を再実行するチェックポイント方式で、
通常処理においてもキャッシュメモリのフラッシュなど
のオーバヘッドがあり、障害時にはチェックポイントま
で後戻りする欠点があり、性能が低下する。
【0013】また、図31に示す方式だと、1論理CP
U毎に多数決回路が必要であり、論理CPUの台数が多
いマルチプロセッサの構成を考えた場合、相対的に多く
のH/Wを必要とする。また、CPUの周波数も付加回
路で制約を受けやすいし、キャッシュを有するプロセッ
サの場合、キャッシュのスヌープおよびコヒーレンシを
とるためのバストランザクションが発生するが、このよ
うな処理でオーバヘッドが発生して、性能が低下する。
【0014】この発明は、上記のような問題点を解消す
るためになされたもので、高性能なフォールトトレラン
ト計算機、特に最新の技術を用いた標準の高性能なプロ
セッサチップおよび周辺のチップセットの有する高速性
を十分発揮させ、またマルチプロセッサ技術を包含する
最新のオペレーティングシステムを搭載することで、非
常に高い性能を発揮できるフォールトトレラント計算機
を提供することにある。
【0015】また、上記のような計算機において障害発
生時やその回復処理において、信頼性を低下させない障
害回復方法や、性能を低下させない障害回復方法を有す
る計算機システムを提供する。
【0016】また、同じハードウェア構成で、信頼性を
要求するシステムと、性能を要求するシステムの両方に
対応できる計算機ハードウェア構成を提供する。
【0017】
【課題を解決するための手段】この発明の計算機システ
ムは、以下の要素を有することを特徴とする。 (a)データを転送する3以上複数のバス、 (b)上記複数のバスに個々に接続され同一動作する3
以上複数のプロセッサを備えたプロセッシングユニッ
ト、 (c)上記プロセッサからバスを介してアクセスされる
デバイスと、上記3以上のバスと上記デバイスの間にあ
ってバスの選択を行う選択手段と、選択手段により選択
されたバスとデバイス間のデータ転送を制御する制御部
を備えたサブシステム。
【0018】上記プロセッシングユニットは、複数存在
し、ひとつのバスに複数のプロセッサを備えたことを特
徴とする。
【0019】上記選択手段は、バスからデバイスへデー
タを転送する場合、複数のバスからひとつのバスを選択
してデバイスと接続し、デバイスからバスへデータを転
送する場合、複数のバスを選択してデバイスと接続する
ことを特徴とする。
【0020】上記制御部は、上記3以上のバスのデータ
を比較して、障害の発生を検出し、その検出結果に基づ
いて上記選択手段のバスの選択を制御する障害検出手段
を備えたことを特徴とする。
【0021】上記計算機システムは、上記障害検出手段
の検出結果に基づいて、障害があったバスを切り離す切
り離し手段を備えたことを特徴とする。
【0022】上記サブシステムは、主記憶装置であり、
上記デバイスはメモリであり、上記制御部はメモリとバ
ス間のデータ転送を行うメモリ制御部であることを特徴
とする。
【0023】上記主記憶装置を複数備え、上記複数のバ
スにそれぞれ接続したことを特徴とする。
【0024】上記サブシステムは、周辺機器システムで
あり、上記デバイスは入出力装置であり、上記制御部は
入出力装置とバス間のデータ転送を行う入出力制御装置
であることを特徴とする。
【0025】上記周辺機器システムは、上記複数のバス
に対応する3以上の第2バスと、上記バスと第2のバス
をそれぞれ接続する3以上のバスブリッジを備えたこと
を特徴とする。
【0026】上記周辺機器システムは、上記選択手段と
上記入出力装置の間にひとつバスから成る第3のバスを
備えたことを特徴とする。
【0027】上記周辺機器システムは、上記選択手段を
ふたつ備え、ふたつの選択手段と上記入出力装置の間に
ふたつのバスから成る第4のバスを備えたことを特徴と
する。
【0028】上記複数の主記憶装置は、バスに対してデ
ータを送出するプライマリ主記憶装置とバスに対してデ
ータを送出しないセカンダリ主記憶装置を備えたことを
特徴とする。
【0029】上記プライマリ主記憶装置は、バスに転送
するデータの正当性をチェックするチェック手段と、チ
ェック手段のチェック結果に基づいてセカンダリ主記憶
装置とプライマリ主記憶装置を交替する交替手段を備え
たことを特徴とする。
【0030】上記チェック手段は、各バスから転送され
てきたデータの正当性をチェックする冗長コードを生成
する複数の冗長コード生成手段と、生成された複数の冗
長コードから正しい冗長コードを選択して記憶する冗長
コード選択手段を備えたことを特徴とする。
【0031】上記チェック手段は、各バスに対応して冗
長コードをチェックする複数の冗長コードチェック手段
を備えたことを特徴とする。
【0032】上記計算機システムは、動作モードとして
3以上のバスを同期動作させる同期動作モードと、3以
上のバスをそれぞれ非同期に動作させる個別動作モード
を備えたことを特徴とする。
【0033】上記選択手段は、個別動作モードにおい
て、複数のバスからデバイスへのデータ競合を制御する
とともに、デバイスからデータを対応するいずれかのバ
スに出力することを特徴とする。
【0034】上記計算機システムは、さらに、同期動作
モードにおいて、複数のバスへ出力されたバス獲得要求
をひとつのバス獲得要求として処理し、個別動作モード
において、複数のバスへ出力されたバス獲得要求ををそ
れぞれ個別のバス獲得要求として処理するアビトレーシ
ョン手段を備えたことを特徴とする。
【0035】上記計算機システムは、動作モードとして
3以上のバスを同期動作させる同期動作モードと、3以
上のバスをそれぞれ非同期に動作させる個別動作モード
を備え、上記複数の主記憶装置は、個別動作モードにお
いて異なるアドレスを用いてアクセスされるメモリを備
えたことを特徴とする。
【0036】上記計算システムは、上記動作モードを指
定するモード指定手段と、モード指定手段により指定さ
れたモードに設定するモード設定手段を備えたことを特
徴とする。
【0037】この発明のプロセッサチップは、以下の要
素を有することを特徴とする。 (a)第1のプロセッサ、 (b)第2のプロセッサ、 (c)上記第1と第2のプロセッサを個別にリセットす
るリセット手段、 (d)上記第1と第2のプロセッサの動作を個別に停止
させる停止手段、 (e)上記第1と第2のプロセッサのバス使用要求を個
別に出力するバス使要求出力手段、 (f)上記第1と第2のプロセッサへバス使用許可を個
別に入力するバス使用許可入力手段、 (g)上記第1と第2のプロセッサのその他の入出力を
共通化して行なう共用手段。
【0038】また、3以上のバスと、各バスに対応して
上記プロセッサチップを3以上備え、第1と第2のプロ
セッサをそれぞれ同一のバスに接続したことを特徴とす
る。
【0039】また、上記バスを4つ備えたことを特徴と
する。
【0040】また、この発明は第1、第2、第3のバス
にそれぞれ個々に接続され同一動作を行なう第1、第
2、第3のプロセッサを備えた第1のプロセッシングユ
ニットと、第1、第2、第3のバスにそれぞれ個々に接
続され同一動作を行なう第4、第5、第6のプロセッサ
を備えた第2のプロセッシングユニットとを備えた計算
機システムの第1のプロセッサに障害が発生した場合の
障害復旧方法において、以下の工程を有することを特徴
とする。 (a)第1のプロセッシングユニットで実行中の処理を
第2及び第3のプロセッサにより継続して実行する継続
実行工程、 (b)上記継続実行工程後、第1のプロセッシングユニ
ットの動作を停止させ、第2のプロセッシングユニット
により次の処理を開始するシングルユニット処理工程。
【0041】上記継続実行工程は、 (a)第1のプロセッサと第4のプロセッサの出力を抑
止する出力抑止工程と、 (b)第1のバスの動作を第2、第3のバスの動作に追
随させ第4のプロセッサの出力を除く動作を継続実行さ
せる追随工程を備え、上記シングルユニット処理工程
は、 (a)第1のプロセッシングユニットの動作停止後、第
4のプロセッサの出力を許可する許可工程と、 (b)第1のバスを第2、第3のバスに同期させる同期
工程を備えたことを特徴とする。
【0042】上記追随工程は、第1のバスの動作を1サ
イクル以上所定サイクル停止させてから第1のバスの動
作を第2、第3のバスの動作に追随させるバス追随工程
と、第4のプロセッサの動作を所定サイクル停止させて
第5、第6のプロセッサから所定サイクル遅れた同期動
作を行なわせるプロセッサ追随工程を備え、上記同期工
程は、第5、第6のプロセッサの動作を所定サイクル停
止させて第4のプロセッサの動作と同期させるプロセッ
サ同期工程と、第1のバスの動作を第2、第3のバスの
動作と同期させるバス同期工程を備えたことを特徴とす
る。
【0043】また、この発明は、第1、第2、第3のバ
スにそれぞれ個々に接続され同一動作を行なう第1、第
2、第3のプロセッサを備えた第1のプロセッシングユ
ニットと、第1、第2、第3のバスにそれぞれ個々に接
続され同一動作を行なう第4、第5、第6のプロセッサ
を備えた第2のプロセッシングユニットとを備えた計算
機システムの第1のプロセッサに障害が発生した場合の
障害復用方法において、 (a)第1のプロセッシングユニットで実行中の処理
を、第2、第3のプロセッサにより継続して実行、第2
のプロセッシングユニットで実行中の処理を、第5、第
6のプロセッサにより継続して実行する継続実行工程、 (b)上記継続実行工程中に、第1と第4のプロセッサ
を新規なプロセッサを交換する交換工程、 (c)上記交換工程後、第1と第4のプロセッサを他の
プロセッサと同期させて動作させる同期工程を備えたこ
とを特徴とする。
【0044】上記同期手段は、 (a)第1のバスを第2、第3のバスの動作から1サイ
クル以上所定サイクル遅らせて動作させるバス追随工程
と、 (b)第1と第4のプロセッサ他のプロセッサの動作か
ら所定サイクル遅らせて動作させるプロセッサ追随工程
と、 (c)上記第2、第3、第5、第6のプロセッサの動作
を所定サイクル停止させて第1と第4のプロセッサの動
作と同期させるプロセッサ同期工程と、 (d)第1のバスの動作を第2、第3のバスの動作と同
期させるバス同期工程を備えたことを特徴とする。
【0045】
【作用】この発明に係わる計算機システムは、システム
の高性能化のためにプロセッサとシステムバスを一体化
して3重化したものである。この一体化したプロセッサ
とシステムバスを同一クロックで同期動作させることに
より、システムの高性能化が計れる。一方、主記憶装置
等のサブシステムは、プロセッサやシステムバスほど高
速化は要求されないため、かつ多重化する場合に費用が
かかるため3重化されない。プロセッサ及びシステムバ
スが3重化されているのに対してサブシステムが3重化
されていないためサブシステムに対して選択手段を設け
3重化されたバスとの間でのデータ転送を制御する。こ
の発明は従来の様にプロセッサの多重化を行なうだけで
なくシステムプロセッサとシステムバスを一体化して多
重化している点に特徴がある。バスまで多重化すること
によりシステム全体の信頼性を向上させることができ
る。一方サブシステムは、プロセッサやシステムバスに
比べて高性能に動作する必要はなくさほど高速処理が要
求されない。また、主記憶装置等のサブシステムを3重
化することはシステムのコストを増加させてしまうとい
う欠点がある。従って、この発明においては、プロセッ
サとシステムバスを一体化して3重化し、サブシステム
はこれら3重化された出力を選択手段により選択するよ
うにしたものである。また、プロセッサとシステムを3
重化することにより単に2重化した場合に比べて3つの
出力を比較するという簡単な方法によりエラーを検出す
ることが可能になる。プロセッサやバスを単に2重化し
た場合には単に2つの出力を比較しただけではどちらが
障害を起こしているか判断することができずパリティチ
ェックやECC等の冗長コードを用いた特殊なエラー検
出機能を持たせなければならない。これに対し3重化し
た場合には多数決を取るという簡単な回路により障害を
起こしたものを特定することができる。
【0046】本発明は、一つのバスに複数のプロセッサ
を備え、バスの使用効率を向上する。
【0047】本発明は、選択手段は複数のバスから一つ
のバスを選択してデバイスにデータを転送し、逆にデバ
イスからのデータを複数のバスに転送するようにしてい
るのでバスが3重化されていてもデータ転送が矛盾なく
行なえる。
【0048】本発明は、障害検出手段が単にバスのデー
タを比較することにより障害を検出することができ簡単
な構成により障害を検出できる。このようにバスが3本
以上ある場合にはパリティやECC等の冗長機能を不要
にできる。
【0049】本発明は、障害が発見された場合にはその
バスを切り離すため障害のあったバスが他のバスに影響
を及ぼすことはなくなる。
【0050】本発明は、サブシステムが主記憶装置であ
ることを特徴としている。主記憶装置は価格的にも高価
格であるため、プロセッサやバスと同じ数だけ多重化す
ることはできない為、複数のプロセッサ及び複数のバス
により共有化される。
【0051】本発明は、主記憶装置を複数備えそれぞれ
の主記憶装置を複数のバスに接続したことを特徴として
いる。このように主記憶装置を複数にすることにより主
記憶装置の信頼性を向上させる。
【0052】本発明は、複数のバスに周辺機器システム
を接続したことを特徴とするものである。周辺機器シス
テムには、デバイスとして入出力装置が存在し、制御部
として入出力制御装置が存在する。この様に周辺機器シ
ステムをサブシステムとして接続する場合でも前述した
複数のバスとの間でデータの転送を行なうことができ
る。この周辺機器システムにおいても周辺機器システム
内に選択手段があることにより3重化されたプロセッサ
及びバスを選択的に入出力装置に接続する。
【0053】本発明は、上記周辺機器システム内には第
2のバス(ローカルバス)が存在しており、この第2の
バスは前述した複数のバスにそれぞれ対応して設けられ
ている。第2のバスをそれぞれ接続する場合にはバスブ
リッジを介して接続する。この様に周辺機器システム内
にあるローカルバスを多重化することにより信頼性を高
めることができる。
【0054】本発明は、周辺機器システム内のバスを単
一のバスとした場合である。周辺機器システムの経済性
を考えた場合の構成である。
【0055】本発明は、周辺機器システム内のバスを2
重化する場合の構成であり、周辺機器システム内部のバ
スを2重化する場合には選択手段を二つ設け2重化され
たバスに対して接続する。このようにして3重化された
バスを2重化されたバスのそれぞれに接続できるように
なる。
【0056】本発明は、主記憶装置が多重化された場合
に、その一つをプライマリ主記憶装置として通常バスに
対してデータを送出するようにしたものである。プライ
マリ主記憶装置以外はセカンダリ主記憶装置としてバス
に対してデータを送出しない。この様にして主記憶装置
からバスに対してのデータの転送を矛盾なく行なう。
【0057】本発明は、プライマリ主記憶装置にデータ
の正当性をチェックするチェック手段を設けているため
チェック手段により障害発生が検出された場合にはいず
れかのセカンダリ主記憶装置をプライマリ主記憶装置に
変更する。
【0058】本発明は、各バスに対応してデータの正当
性をチェックする冗長コードを生成する複数の冗長コー
ド生成手段を設けており、生成されたコードの中から誤
りのないコードを選択して記憶する。従って生成された
冗長コードの信頼性が高まる。
【0059】本発明は、各バスに対応して冗長コードを
チェックする冗長コードチェック手段を備えているので
各バスに出力されるデータの正当性を個別チェックする
ことができる。また、主記憶装置内のメモリからバスの
間で起きる障害をチェックすることができる。
【0060】本発明は、前述した複数のバスをそれぞれ
非同期に動作させる個別動作モードを備えている。従っ
て、バスを同期させて動作させる場合にはシステムの信
頼性が向上すると共に、非同期に個別動作させる場合に
は、各プロセッサ及び各バスはそれぞれ別個の処理をす
ることができ性能を向上させることができる。
【0061】本発明は、個別動作モードにおいて、選択
手段が同期動作モードとは異なる動作をすることを特徴
としている。個別モード動作においては各バスが個別に
動作するためサブシステムに対するアクセスが競合す
る。従って、選択手段はこの競合を制御して矛盾なく扱
う。一方、デバイスからのデータをバスに出力する場合
には同期動作をしている場合と異なり個別のバスに出力
する。
【0062】本発明は、同期動作モードと個別動作モー
ドにおいて異なる処理を行なうアービトレーション手段
を備えている。同期動作モードにおいては複数のバスは
同一動作を行なう為、複数のバスからのバス獲得要求は
一つのバス獲得要求として処理し、個別動作モードの場
合は、複数のバスが個別に動作している為それぞれのバ
ス獲得要求を独立のバス獲得要求として処理する。
【0063】本発明は、主記憶装置が複数存在する場合
であって、かつ、個別動作を行う場合には、主記憶装置
の各メモリが異なるアドレス空間に割り当てられること
を特徴としている。個別モード動作の場合は、プロセッ
サ及びバスが個別に動作するため主記憶装置も複数存在
する場合はそれぞれ個別にアクセスできるようにして広
範囲なメモリ空間を提供する。
【0064】本発明は、前述した同期動作モードと個別
動作モードを指定するモード指定手段が存在し、このモ
ード指定手段により指定されたモードにシステムを設定
するモード設定手段を備えている。従って、電源投入時
やシステムリセット時に所望のモードにシステムを切り
替えることができる。
【0065】本発明は、二つのプロセッサを封入したプ
ロセッサチップに対して、リセット手段と停止手段とバ
ス使用要求出力手段とバス使用許可入力手段がそれぞれ
第1と第2のプロセッサに対して個別に働くように設計
されている。その他の信号線(データ線やアドレス線)
は第1と第2のプロセッサで共用して用いられる。この
様なプロセッサチップにおいては、第1と第2のプロセ
ッサを同期させて同一動作をさせることも可能である
し、また第1と第2のプロセッサを個別に動作させるこ
とも可能になる。
【0066】本発明は、前述したプロセッサチップを3
以上備えたことを特徴としており、各チップの第1と第
2のプロセッサは同一バスに接続されている。従って、
第1の発明で説明した計算機システムにおいて同期動作
モードと個別動作モードの両方を可能にするシステムを
提供することができる。
【0067】本発明は、バスを4重化した場合でありシ
ステムの信頼性を更に向上させることができる。
【0068】本発明は、3重化されたシステムにおいて
障害が発生した場合の信頼性の低下を回避する障害復旧
方法を提供するものである。第1のプロセッサに障害が
発生した場合には第2、第3のプロセッサにより継続し
て処理を続行すると共に、第1のプロセッングユニット
の処理を適当な時点で終了させ、その後は、第2のプロ
セッシングユニットにより処理を行なうようにしたこと
により、システムが3重化されて動作する機会をなるべ
く多くし、システムの信頼性を維持することができる。
【0069】本発明は、障害が発生したバスを他の正常
なバスに追随させる様にして処理を続行し、第2のプロ
セッシングユニットにより次の処理を回避する場合には
追随動作を終了させ三つのバスを同期させる様にしたも
のである。
【0070】本発明は、前述した追随動作の方法をさら
に具体化したものであり、第1のバスを所定サイクル停
止させた後に、他のバスに追随させると共に、第4のプ
ロセッサを所定サイクル停止させて、他のプロセッサに
追随させる様にしたものである。また、同期を戻す場合
には、正常なプロセッサを所定サイクル停止させて同期
させると共に、追随動作しているバスを他の正常なバス
と同期させる様にしたものである。
【0071】本発明は、障害の回復処理時の性能の低下
を回避する。性能を維持する場合は、動作可能なプロセ
ッサの数を維持して処理をさせることが望ましい。従っ
て、第1のプロセッサが故障した場合でも、第2と第3
のプロセッサを動作させ続けることにより性能を維持す
る。そして同一バスに接続されている第4のプロセッサ
と故障した第1のプロセッサを交換する。この第1と第
4のプロセッサの交換は、新しく挿入された第1と第4
のプロセッサを他のプロセッサと同期させて動作させる
ことにより、故障の前後においてプロセッサの動作する
数が等しくなる。
【0072】本発明は、プロセッサを交換した後の同期
動作の手順を示している。具体的には第一のバスを他の
バスに追随させるとともに、第1と第4のプロセッサを
他のプロセッサに追随させる。その後正常なプロセッサ
を所定サイクル停止させて第1と第4のプロセッサと同
期させ最後に3つのバスの同期をとることによりプロセ
ッサ交換後の同期をとることができる。
【0073】
【実施例】実施例1. 図1は、この発明の計算機システムの概略図である。こ
の図においては、システムバスを3重化し、各システム
バス上のおのおのにプロセッサを接続する。従って1つ
の論理CPUが3つのプロセッサで構成され、通常は同
一の命令を実行する。3重化されたシステムバスも同一
のトランザクションを同期して実行し、メモリアクセス
をする場合、そのアクセスのうち動作が正しいと判断さ
れるものを選択回路で選択し、結果をインタフェースユ
ニットで出力し、他のシステムバスもそれと同じレスポ
ンスをメモリ装置から受ける。従って、正常状態では3
重化システムバスの動きは同期しつづける。プロセッサ
の1つに何等かの障害が発生した場合、そのシステムバ
スの動きが他2者とは異なるので障害が選択回路で検知
され、選択の対象からはずされる。よって、プロセッサ
の故障がメモリの内容に影響を及ぼさず、システムは正
常な動作を続行できる。このような構成によれば、複数
の論理CPU間に付加回路がない(プロセッサとシステ
ムバスが直結している)ので、キャッシュのコヒーレン
シが高速にとれる。また、選択回路の数は論理CPUの
数に比例して多くならないので、大規模なマルチプロセ
ッサ・システムになってもハードウェア量は比較的少な
くでき、高性能な高信頼計算機が容易に構築できる。
【0074】図2は、更にこの発明の他の例を示す図で
ある。図2において、図1と異なる点は論理CPUが2
重化されている点である。論理CPU1と論理CPU2
は個別に動作し、それぞれの論理CPU内のプロセッサ
はすべて同期した同一動作を行なう。この様に論理CP
Uを2重化することにより、バスの使用効率とシステム
の性能が向上する。
【0075】図3は、更にこの発明の他の構成を示す図
である。図3において図2と異なる点は主記憶装置を2
重化した点である。メモリAとメモリBは、同一のアド
レス空間に配置されており、同一のデータを記憶する。
図3に示すように、この構成はメモリモジュール、選択
回路、インタフェースユニットを2重化する。メモリへ
のデータライト時には、両メモリ(メモリA、B)へラ
イトし、リード時にはどちらかの内容を3重化システム
バスに出力する。また、このシステムは、メモリおよび
選択回路、インタフェースユニットに対する障害検知能
力を持ち、これらの部位で障害が検知されたら、システ
ムから切り離し、もう片系のメモリ、選択回路、インタ
フェースユニットでシステムの動作を継続する。このよ
うな構成にすると、プロセッサのみならず、メモリ、選
択回路、インタフェース回路の1点故障に対してはシス
テムの正常続行ができ、信頼性のより高い計算機システ
ムが構築できる。
【0076】図4は、この発明の他の構成を示す図であ
る。図1から図3においては、信頼性を向上させるため
3つのシステムバスを同一動作をさせる場合について説
明したが、図4の場合は高性能なシステムを得るために
それぞれのプロセッサを個別に動作させるものである。
この構成においては、S/Wからのコマンドで3重化プ
ロセッサを個別に動作するように切り換えることができ
る。即ち、選択回路が、システムバス間のメモリアクセ
スの競合制御を行ない、逐次アクセスするモードを持
つ。従って、図2のような構成のシステムが2論理CP
Uから6論理CPUに拡張され、システムの演算性能が
向上する。このような構成によれば、1つのハードウェ
ア構成で、信頼性を要求されるシステムとCPUの演算
性能を要求されるシステムの両者に対応でき、効率的な
ハードウェアの使用ができる。また図4は、メモリAと
メモリBが個別のアドレス空間を持つ場合を示してい
る。前述したようにこのシステムS/Wからのコマンド
で、3重化プロセッサを個別に動作するように切り換え
ることができるとともに、2重化されたメモリを別の空
間としてアクセスできるように切り換えることができる
モードを持つ。こうすることによって、CPUの演算能
力が増大し、S/Wから使用できるメモリ空間も増大
し、システム性能が向上する。このようにこの構成によ
れば、1つのハードウェア構成で、信頼性を要求される
システムとシステム性能を要求されるシステムの両者に
対応でき、効果的にハードウェアリソースの利用でき
る。
【0077】図5は、この発明の他の構成を示す図であ
る。図5においては、前述した構成に第2階層システム
バス及びその第2階層システムバスに接続される入出力
装置を接続した点が特徴である。このシステムにおいて
は、第2階層システムバスも3重化されておりこの3重
化された第2階層システムバスに対して選択回路および
インタフェースユニットが接続されている。選択回路と
インタフェースユニットは前述したメモリに用いられる
選択回路およびインタフェースユニットと同様のもので
ある。このように図5においては、第2階層システムバ
スを有している場合でも、これらの第2階層システムバ
スを含んでサブシステムと考えることができる。即ち、
第1階層のシステムバスと第2階層のシステムバスはバ
スアダプターにより接続されており連続したシステムバ
スと同様のものと考えることができる。このように図5
に示す構成においては、3重化されたシステムバスのお
のおのに対してバスアダプタを介して、第2階層システ
ムバスを接続する。従って、第2階層システムバスも3
重化される。3重化されたシステムバスと制御装置は、
選択回路とインタフェースユニットを介してアクセスさ
れる。3重化された第1階層システムバスとバスアダプ
タおよび第2階層システムバスの組は、障害がないとき
は同期動作をおこない、プロセッサやバスアダプタに障
害が発生した場合、動作の同期がくずれ、障害が選択回
路で検知される。そして、障害発生の系を切り離し、正
しいデータのみを制御装置やメモリに提供し、システム
は停止しない。一般に第2階層システムバスは、第1階
層システムバスと比べ、低速ではあるが、安価に制御装
置が作成可能という経済性、前機種のものがそのまま使
えるという互換性、市販されている制御装置がそのまま
つかえるという汎用性を満たすものを選択できる。この
ような構成にすると、経済性、互換性、汎用性を維持し
つつ、最新のテクノロジを利用した高性能で高信頼な計
算機システムが構築できる。
【0078】図6は、この発明の他の構成を示す図であ
る。図6が図5と異なる点は、サブシステム内に含まれ
る第2階層システムバスがシングルバスである点であ
る。このように第2階層システムバスがシングルバスで
ある場合には、第1階層システムバスと第2階層システ
ムバスの間に選択回路を設けることによりデータの転送
を行なうことができる。図6に示す構成においては、3
重化したシステムバスのおのおのに対してバスアダプタ
および選択回路を介して第2階層システムバスを接続す
る。障害がないときは、3重化システムバスは同期動作
を行ない、プロセッサやバスアダプタに障害が発生した
場合、動作の同期がくずれ、障害が選択回路で検知され
る。そして、障害発生系の第1のシステムバスを切り離
す。第2階層システムバス上の制御装置やメモリには選
択回路により正しいデータが供給され、システムは停止
しない。図5および図6に示すように第2階層システム
バスは3重化したりあるいは1重化したりすることがで
きる。特に図6に示す第2階層システムバスは、互換
性、汎用性を満足し、しかも経済的に構成できる。ま
た、図5に示す構成に比べて制御装置毎の選択回路が不
要なので、より経済的である。このような構成にする
と、経済性、互換性、汎用性を維持しつつ、最新のテク
ノロジを利用した高性能で高信頼な計算機システムが構
築できる。
【0079】図7はこの発明の他の構成を示す図であ
る。図7が前述した構成と異なる点は第2階層システム
バスが2重化されている点である。第2階層システムバ
スが2重化されている場合には選択回路を2重化するこ
とにより3重化された第1階層システムバスとのインタ
フェースをとることができる。図7に示す構成において
は3重化されたバスアダプタのうち、いずれか一つの出
力を選択する選択回路とインタフェースユニットを2つ
持ち、第2階層システムバスを2重化することができ
る。第2階層システムバスは、エラーの検知機能があ
り、第2階層システムバス上で障害が発生すると、2つ
の選択回路のうち、障害のない方がバスアダプタにアク
セスする。このようにすると、プロセッサ、バスアダプ
タ、メモリ、選択回路/インタフェースユニット、第1
および第2階層システムバスで1つの障害が発生して
も、システムは停止せず、処理が続行できる。このよう
な構成にすると、経済性、互換性、汎用性を維持しつ
つ、最新のテクノロジを利用した高性能で高信頼な計算
機システムが構築できる。
【0080】図8は前述したような構成において故障し
たCPUを切り離しする場合の動作を説明する図であ
る。この構成においては、第1、第2、第3のシステム
バスから構成され、論理CPUは、第1、第2、第3の
プロセッサを備え、同一の演算を実行しており、論理C
PU2は、第4、第5、第6のプロセッサを備え、別の
同一の演算を実行しており、第1のプロセッサは第1の
システムバスに、第2のプロセッサは第2のシステムバ
スに、第3のプロセッサは第3のシステムバスに、それ
ぞれ接続され、同様に第4のプロセッサは第1のシステ
ムバスに第5のプロセッサは第2のシステムバスに、第
6のプロセッサは第3のシステムバスにそれぞれ接続さ
れる。上記の論理CPU内のプロセッサのうち、いずれ
か一つ(例えば第1のプロセッサ)が故障した時に、故
障したプロセッサの接続されていない残り2つのバス上
のプロセッサ(第2、第3のプロセッサ)により、現在
実行中のプログラムを切りの良いところ(他の論理CP
Uにプログラムの移行が可能となるところ)まで実行さ
せ正常に停止させた後、故障プロセッサを有するバス
(第1のバス)上の故障していないプロセッサ(第4の
プロセッサ)を他の二つのプロセッサ(第5、第6のプ
ロセッサ)と同じ内部状態に復元し、故障のない論理C
PU(論理CPU2)は、同一の命令を実行し、従っ
て、3本のシステムバスは同一の動作を行なう。故障し
た論理CPUで実行していた処理は、別の論理CPU
(論理CPU2=第4、第5、第6のプロセッサ)に移
行する。以上のようにこの復旧方法によれば実行中のプ
ログラムを破棄することなく、故障した論理CPUを切
り離し、正常な論理CPUおよびシステムバスは3重化
の同期動作を継続でき、信頼性の高い計算機システムが
構築できる。
【0081】図9は故障したプロセッサを交換する場合
の一例を示す図である。図9に示すように3つのプロセ
ッサが一つのCPUボードに搭載されている場合にはC
PUボード単位の交換が行なわれる。図9に示す構成に
おいては論理CPU(論理CPU1または2)の、各プ
ロセッサ(第1、第2、第3のプロセッサまたは第4、
第5、第6のプロセッサ)が同一の交換モジュール(C
PUボード)内に配置されており、故障したプロセッサ
(例では第1のプロセッサ)を含むCPUボード(CP
Uボード1)を、全てのプロセッサに障害がない正常な
CPUボードと交換する。交換されるCPUボードは、
3重化システムバスにアクセスを抑止され、システムバ
スの動作は妨害されない。交換後はCPUボードは、3
重化システムバスにアクセス可能となる。このように図
9に示す構成においては、システムの運転状態が故障発
生以前の状態に戻り、演算性能が回復し、次の障害にも
耐久性ができるため、高信頼性、高性能性を長期に渡っ
て維持できる計算機システムが構築できる。特に交換モ
ジュールの引き抜き時にもバスの3重化動作が続行で
き、信頼性が低下しない。
【0082】図10は故障したプロセッサを交換する他
の例を示す図である。図10においては、2つのプロセ
ッサが一つのCPUボードに搭載されている。そして一
つのCPUボードに搭載された二つのプロセッサは同一
のシステムバスに接続されている。このような構成で、
プロセッサが故障した場合には二つのプロセッサを搭載
したCPUボード単位の交換になる。図10に示す構成
においては、同一システムバス(第1または第2または
第3のシステムバス)に接続されている各プロセッサ
(第1と第4、または、第2と第5、または、第3と第
6)が同一交換モジュール(CPUボード)内に配置さ
れており、故障したプロセッサ(例では第1のプロセッ
サ)を含むCPUボード(CPUボード1)を、全ての
プロセッサに障害がない正常なCPUボードと交換す
る。交換されるCPUが接続されるシステムバスは、シ
ステムの他の部位(例えばメモリ)と切り放され、交換
によりシステムは影響を受けない。
【0083】図11は、図10に示した二つのプロセッ
サを搭載したCPUボードを集積化して一つのチップに
封入する場合の構成を示す図である。システムの運転状
態が故障発生以前の状態以前の状態に戻り、演算性能が
回復し、次の障害にも耐久性ができるため、高信頼性、
高性能を長期に渡って維持できる計算機システムが構築
できる。特に交換モジュールのコネクタ部分のピン数が
少なくハードウェア量が減り、小型化、低価格化に有利
である。また、論理CPU数も減少しないので性能低下
がない。図11に示すようにこのシステムにおいては、
同一バスに接続する複数のプロセッサを同一のチップに
パックする。このチップを各システムバス上に接続し3
重化し、高信頼計算機システムを構築する。このような
構成によれば、複数のマイクロプロセッサがパッケージ
ングされたチップを使用し、小型で安価で高性能な高信
頼計算機システムが構築できる。
【0084】実施例2. 前述した実施例においては概略を説明したが、ここでは
前述した構成の具体的実施例について説明する。図12
において、1、2、3は3重化されたシステムバスであ
る。10はプロセッシングユニット、11、12、13
はプロセッシングユニット10を構成する3重化された
プロセッサで、バスインタフェースユニット14、1
5、16を経由してそれぞれシステムバス1、2、3に
接続されている。20も同様にプロセッシングユニット
で、21、22、22はプロセッサ、24、25、26
はバスインタフェースユニットである。50は主記憶装
置、51はメモリアレイブロック、52はメモリインタ
フェースユニット、53は3つのシステムバスの出力を
一つ選択したりメモリの出力を複数のシステムバスに送
出する選択回路である。60も同様に主記憶装置で、6
1はメモリアレイ、62はメモリインタフェースユニッ
ト、63は選択回路である。90はシステムバスの使用
者を決定するアービトレーション回路、101、10
2、103はシステムバスと第2層のシステムバスを接
続するバスブリッジ、110は3重化されたバスブリッ
ジの出力の内何れか一つを選択する第2階層システムバ
スインタフェースユニット、104は第2階層システム
バスである。111、112、113は第2階層システ
ムバス104に接続される入出力制御装置、121、1
22、123はそれぞれ、入出力制御装置111、11
2、113に接続される入出力装置(フロッピーディス
ク、磁気テープ、プリンタ)である。また、201、2
02、203はシステムバスと別の第2層システムバス
を接続するバスブリッジ、204、205、206はそ
れぞれ、バスブリッジ201、202、203に接続さ
れた3重化された第2層のシステムバスである。21
1、212、213は、第2階層システムバス204、
205、206の出力を選択する入出力インタフェース
ユニット、221、222、223は入出力インタフェ
ースユニット211、212、213に接続される入出
力制御装置、231、232、233は入出力制御装置
221、222、223に接続される入出力装置(ディ
スク、LAN)である。
【0085】(1.正常実行動作) 次に正常実行動作について説明する。プロセッシングユ
ニット10は、プロセッサ11、12、13から構成さ
れるが、プロセッサ11、12、13は同一クロックで
動作し、常に同一の命令を実行している。同様に、プロ
セッシングユニット20も、プロセッサ21、22、2
3から構成されるが、プロセッサ21、22、23は同
一クロックで動作し、常に同一の命令を実行している。
また、各プロセッシングユニットがシステムバスを使用
するときは、各プロセッサ毎に同時にシステムバス要求
をアービトレーション回路90に送出し、同時にシステ
ムバス使用許可信号が返され、同一プロセッシングユニ
ットの各プロセッサは、同時に同一のバストランザクシ
ョンを発行する。また、後述するとおり、バスブリッジ
101、102、103またはバスブリッジ201、2
02、203のシステムバス上へのバストランザクショ
ンも同期している。従って、プロセッシングユニットか
らシステムバス1、2、3へのバストランザクションは
正常動作時は同期している。選択回路53、63および
メモリインタフェースユニット52、62はシステムバ
スからのトランザクションに対して、お互い同期して動
作し、メモリライトに対しては、50、60両方の主記
憶装置にライトし、メモリリードに対しては、一方がプ
ライマリ(ここでは50とする)となり、もう一方がセ
カンダリ(ここでは60とする)となり、プライマリ
(50)のみが1、2、3に対して同時にリードされた
データを送出する。
【0086】(1.1 CPU動作) ここで、図13で、上記動作のうちプロセッサ11の動
作を詳細に説明する。図13において、1はシステムバ
ス、11はプロセッサ、14はバスインタフェースユニ
ットである。14a、14b、14c、14d、14e
はドライバである14fは出力イネーブル信号、14h
はリセット信号である。11rはシステムバス要求信
号、11gはシステムバス使用許可信号である。
【0087】通常実行時は、リセット信号14hは有意
でないのでプロセッサは動作できる。出力イネーブル信
号14fは有意で、ドライバ14bはプロセッサ11の
出力をシステムバス1に送出する。ドライバ14cはプ
ロセッサ11のシステムバス要求をシステムバス要求信
号11rとしてアービトレーション回路に送出する。ア
ービトレーション回路はシステムバス使用許可信号11
gを用いて該プロセッサがシステムバス1を使用可能な
ことを伝える。
【0088】(1.2 主記憶装置の動作) さらに、図14で、主記憶装置50の動作を詳細に説明
する。図14において、メモリアレイブロック51は、
メモリデータバス51a、ECCデータバス51b、メ
モリアレイ51c、ECCアレイ51dから構成され
る。メモリインタフェースユニット52は、メモリ制御
回路52a、ECC生成回路52b、ECCチェック回
路52c、プライマリビット52d、AND素子52
e、他プライマリ要求出力線52f、自プライマリ要求
入力線52g、ドライバ52h、52i、52j、AN
D素子52k、52l、52m、メモリ2重化指定ビッ
ト52o、AND素子52pから構成される。メモリ制
御回路52aは、メモリアドレス範囲のどの部分に対し
てアクセスするかを指定するメモリアドレス範囲指定レ
ジスタ52aaを有している。インタフェースユニット
53は、セレクタ53a、比較回路53b、セレクタ5
3c、システムバスの状態を保持するレジスタ53j、
53k、53l、ドライバ素子53m、53m、53o
から構成される。プライマリビット52dは、その主記
憶装置がプライマリでリードデータをドライブすること
を示すビットであり、2重化された主記憶装置50、6
0の一方のプライマリビット52dがプラマリとしてセ
ットされており、もう一方はセカンダリとなりプライマ
リビット52dはセットされない。この例では、主記憶
装置50がプライマリなので、プライマリビット52d
はセットされる。主記憶装置60の同等のビット(図に
はないが62dとする)はセットされていないものとす
る。尚、主記憶装置60は主記憶装置50と同じ構成を
とり、主記憶装置60内の構成要素は主記憶装置50内
のそれの50番台の番号を60番台にふり直したものと
する(例えば、52dを62dとするなど)。ここで、
各種レジスタの初期値は、メモリアドレス範囲指定レジ
スタ52aaおよび62aaは同じアドレス範囲が設定
してあり、メモリ2重化指定ビット52o、62oは共
に1がセットしてあるものとする。これらの設定の手順
については後述する。また、91はプロセッサを個別に
実行するか3重化同期動作させるかを指定する個別実行
指定信号、92はシステムバス選択信号である。ここで
の説明では個別実行指定信号91は3重化同期動作を指
定するように固定されているものとする。さらに、主記
憶装置50と60が相互に連絡するために自プライマリ
要求入力線52gと他プライマリ要求入力線62fは接
続されており、自プライマリ要求入力線62gと他プラ
イマリ要求入力線52fは接続されている。
【0089】システムバス1、2、3よりシステムバス
の動作が比較回路53bで比較され、セレクタ53cを
経由してセレクタ53aに選択信号が伝えられる。そこ
で正常動作しているバスの出力がセレクタ53aで選択
され、メモリデータバス51aに出力される(ここで、
正常動作しているバスとは、他の2者のバスと動作の異
なるバス以外のバスである。つまり、1本のバスが他の
2本のバスと動作が異なる場合、その一本のバスを正常
動作でないバスとみなし、他の2本のバスを正常動作し
ているバスとする)。メモリ制御回路52aはバストラ
ンザクションを解析し、そのアドレスが52aaで指定
する範囲内であれば、自メモリへのアクセス(リードま
たはライト)とし、以下の動作を行う。
【0090】メモリライト時は、メモリ制御回路52a
がメモリデータバス51a上のデータをメモリアレイ5
1cにライトするべく制御を行い、データはメモリアレ
イ51cに格納される。同時に、51a上のデータ毎に
ECC生成回路52bがECCコードを生成し、ECC
データバス51bを経由してECCアレイ51dにメモ
リ制御回路52aの制御によりECCコードを格納す
る。
【0091】メモリリード時は、メモリ制御回路52a
がメモリアレイ51c、ECCアレイ51d内の所望の
アドレスのデータをリードすべく制御を行い、メモリデ
ータはメモリデータバス51aに、ECCデータはEC
Cデータバス51bに出力される。これらのデータより
ECCチェック回路52cがリードされたデータの正当
性をチェックする。データが正当であれば、プライマリ
ビット52dの内容は変化せずセットされたままであ
る。従って、ドライバ52h、52i、52jは、AN
D素子52eおよびAND素子52k、52l、52m
を経由したメモリ制御回路52aの制御により、メモリ
データバス51a上のメモリデータを、システムバス
1、2、3に出力する。
【0092】メモリアレイ51cやECCアレイ51d
に障害がある場合は、メモリリード時に、ECCチェッ
ク回路52cによりECCエラーとして検知され、1ビ
ット誤りなど自己訂正可能なものであれば、訂正したも
のをメモリデータバス51aに送出すればよい。一方、
自己訂正不能な障害が発生した場合は、ECCチェック
回路52cからの制御によりプライマリビット52dを
リセットし、自主記憶装置はセカンダリになる。同時
に、メモリ2重化ビット52oがセットされているの
で、AND素子52pを経由して、他プライマリ要求出
力線52fが出力される。これによってペアとなってい
る主記憶装置60に、プライマリになる要求を自プライ
マリ要求入力線62gを介して伝え、主記憶装置60の
プライマリビット62dがセットされ、主記憶装置60
がプライマリになり、リードデータを出力する。ここ
で、主記憶装置50、60のプライマリビットのセッ
ト、リセット条件を図15に示す。
【0093】以上のような構成であるので、プロセッシ
ングユニット10、20のような高速動作が要求される
部分には、ボータや選択回路が含まれておらず、高速化
の阻害要因とならない。さらに、システムバスが3重化
されているため、バスのデータの正当性を保証するため
の冗長データ、例えば、パリティビットやECCコード
を付加しなくともバスの信頼性および耐障害性は十分と
いえ、これらの冗長コードを省けば、バスの高速化が計
れる。本実施例におけるプロセッサ〜メモリ間の障害検
知、正常系選択のための構成を図にすると図16に示す
ようになる。一方、従来例のものは、一般に図17とし
て表される。これらの図を比較してもわかるように本実
施例により、障害検知、正常系選択のための手段が簡略
かされ、プロセッサ〜メモリ間のデータ転送が高速に行
えることが分かる。また、選択回路を別の構成にするこ
とで、更に高速化(および高信頼化)が図れるが、別の
実施例として後述する。
【0094】(1.3 入出力装置の動作) 入出力装置は、その入出力装置に求められている要求
(信頼性、経済性、汎用性など)で最適な構成が異なっ
てくる。第2階層のシステムバスは多重化されていない
第2階層システムバス104と、3重化された第2階層
システムバス204、205、206の2つの異なる構
成をとり、上記の要求に応えている。ディスクやLAN
などシステムの根幹である入出力装置は、高い信頼性を
要求される。従って、3重化した第2階層システムバス
204、205、206に入出力インタフェースユニッ
ト211、212、213を介して接続する。こうする
ことで、第2階層システムバスの障害が発生しても、入
出力インタフェースユニット211などで検知され、検
知された障害バスを切り離し、システムとしては正常な
運転が継続できる。一方、ある種のデバイス、例えば、
フロッピーディスク、磁気テープ、プリンタなどは、そ
れ自体が故障して使用不能になってもシステムとして
は、直ちにダウンにつながることはなく、ユーザや専任
のオペレータの運用で障害が切り抜けられるものもあ
る。しかし、市販されている様々なデバイスのレパート
リィをサポートでき、しかも安価に接続する必要があ
る。この様な場合には、第2階層システムバス104の
構成にすれば良い。第2階層システムバス104をIS
A、EISA、VMEなどの汎用バスにすれば、市販さ
れている多数のデバイスが接続可能となる。また、3重
化バスに比べて入出力インタフェースユニットが不要な
ので安価になる。
【0095】図12に戻って、ディスク231から主記
憶装置50、60へのデータ転送について説明する。デ
ィスク231からメモリへのデータ転送要求およびその
データは入出力制御装置221でメモリライトトランザ
クション(データを含む)として発行され入出力インタ
フェースユニット211に送られる。入出力インタフェ
ースユニット211は第2階層システムバス204、2
05、206に該トランザクションを同期して送出し、
それぞれバスブリッジ201、202、203がシステ
ムバス1、2、3を使用して主記憶装置50、60にラ
イトする。このとき、バスブリッジ201、202、2
03は同時にシステムバス要求をアービトレーション回
路90に送出し、同時にアービトレーション回路90か
らシステムバス使用許可信号が返され、従って、同時に
同一のトランザクションが発行される。また、主記憶装
置50、60のライト動作は前述と同様である。
【0096】逆に主記憶装置50、60からディスク2
31へのデータ転送について説明する。主記憶装置5
0、60へディスク231からのデータリード要求は、
ライトトランザクションと同じ3つの経路で主記憶装置
50、60に伝わる。プライマリである主記憶装置50
がリードデータをシステムバス1、2、3に送出し、主
記憶装置60は送出しない。リードデータは、それぞれ
バスブリッジ201→第2階層システムバス204、バ
スブリッジ202→第2階層システムバス205、バス
ブリッジ203→第2階層システムバス206を経由し
て入出力インタフェースユニット211に到達し、入出
力インタフェースユニット211はデータを選択し入出
力制御装置221に送る。入出力装置231は入出力制
御装置221にデータをライトする。以上の動作は3重
化された部分はすべて同期動作する。
【0097】ここで、入出力インタフェースユニット2
11の動作を図18において、説明する。図において、
204、205、206は3重化された第2階層のシス
テムバス、211は入出力インタフェースユニット、2
11aはセレクタ、211bは比較回路、211c、2
11d、211eはドライバ素子、211f、211g
はバスモニタ、211hはドライバ素子である。
【0098】図において、第2階層のシステムバス20
4、205、206は、同期動作をしている。第2階層
のシステムバス204、205、206から入出力制御
装置221へ向う信号は、比較回路211bで比較され
正常動作しているシステムバスを判定し、セレクタ21
1aで選択し出力する。バスモニタ211gによりバス
トランザクションを監視し、入出力制御装置221へ送
出すべき信号を判定し、該信号をドライバ素子211h
が入出力制御装置221に送出する。入出力制御装置2
21から第2階層システムバス204、205、206
へ向う信号は、バスモニタ211fが監視し、送出すべ
き信号を判定し、該信号をドライバ211c、211
d、211eを経由して第2階層システムバス204、
205、206に送出する。
【0099】次に図12に戻って、磁気テープ122か
ら主記憶装置50、60へのデータ転送を説明する。入
出力制御装置112は磁気テープ122のデータをリー
ドし、メモリライトトランザクションを発行し、第2階
層システムバス104を経由し、第2階層システムバス
インタフェースユニット110に到達する。第2階層シ
ステムバスインタフェースユニット110は3つのバス
ブリッジ101、102、103にメモリライトトラン
ザクションを送出し、それぞれバスブリッジ101→シ
ステムバス1、バスブリッジ102→システムバス2、
バスブリッジ103→システムバス3を経由して主記憶
装置50、60に到達する。主記憶装置50、60は受
信したデータをそれぞれメモリアレイ51、61にライ
トする。逆に、主記憶装置50、60から磁気テープ1
22へのデータ転送について説明する。入出力制御装置
112はメモリリードトランザクションを第2階層シス
テムバス104に発行し、メモリライトトランザクショ
ンと同じ3つの経路で主記憶装置50、60に到達す
る。プライマリである主記憶装置50がリードデータを
システムバス1、2、3に送出し、主記憶装置60は送
出しない。リードデータは、それぞれバスブリッジ10
1、102、103を経由して第2階層システムバスイ
ンタフェースユニット110で選択され第2階層システ
ムバス104に送出される。入出力装置112が第2階
層システムバス104のリードデータを受信し、磁気テ
ープ122にライトする。以上3重化された部位は、す
べて同期動作をしている。
【0100】ここで、インタフェースユニット110の
動作を図19に基づいて、説明する。図において、10
1、102、103は3重化されたバスブリッジ、10
4は第2階層システムバス、110はインタフェースユ
ニット、110aはセレクタ、110bは比較回路、1
10c、110d、110eはドライバ素子、101
f、101gはバスモニタ、101hはドライバ素子で
ある。
【0101】図において、バスブリッジ101、10
2、103は、同期動作をしている。バスブリッジ10
1、102、103から第2階層システムバス104へ
向う信号は、比較回路110bで比較され、正常動作し
ているシステムバスを判定し、セレクタ110aで選択
する。バスモニタ101gでバストランザクションを監
視し、第2階層システムバス104へ送出すべき信号を
判定し、ドライバ素子101hが該信号を第2階層シス
テムバス104へ出力する。第2階層システムバス10
4からバスブリッジ101、102、103へ向う信号
は、バスモニタ101fが監視し、バスブリッジ10
1、102、103に送出する必要のある信号を判定
し、ドライバ110c、110d、110eを経由して
バスブリッジ101、102、103に送出する。
【0102】(2.プロセッサの障害時の動作及び復旧
処理) 次に一つのプロセッサが障害を発生した場合について説
明する。障害発生から回復までの動作は、正常動作時と
は異なり、信頼性か性能かのどちらかが犠牲になり低下
する。別の言い方をすれば、信頼性を維持するか、性能
を維持するかで障害発生から回復までの処理が異なる。
また、それにともない、プロセッサのオンライン交換の
単位が異なる。信頼性を維持する場合は、故障プロセッ
サを含むプロセッシングユニット以外のプロセッシング
ユニットは常に3重化同期動作を行うべきであり、従っ
て、オンライン交換の単位はプロセッシングユニット単
位が望ましい。一方、性能を維持する場合は、故障プロ
セッサを含むシステムバス以外のプロセッサは常に動作
を行い正常時と同等のプロセッシングユニット数を維持
すべきであり、従って、オンライン交換の単位はシステ
ムバス単位が望ましい。以下にその両方の場合について
説明する。
【0103】(2.1 信頼性維持の場合) 図12に基づいて説明する。二つのプロセッシングユニ
ットは、それぞれ別の演算を行なっている状態で、プロ
セッシングユニット10のプロセッサ11に障害が発生
したケースについて説明する。プロセッサ11の故障に
より、システムバス1の動作は、他のシステムバスと動
作が異なり、選択回路53および63で故障が検知され
る。選択回路は、すぐさま、システムバス1上のプロセ
ッサ11、21の出力をディセーブル(図13のドライ
バ14fを有意にしない)し、替りに主記憶装置50が
システムバス2の出力をシステムバス1に送出する追随
モードになる。したがって、システムバス1上のトラン
ザクションは、プロセッサ11が故障したといえども正
常なものを送出でき、システムバス1に接続された他の
プロッサ21はプロセッサ22、23との同期動作を
継続することができる。従って、故障したプロセッシン
グユニット10をS/Wの都合のよいタイミング(たと
えばタスクの切り換え時)に停止させ、以降バストラン
ザクションが発生しないようにする。一旦プロセッシン
グユニット10が停止したら、システムバス1を追随モ
ードから3者比較モードに戻すことが可能である。なぜ
なら、プロセッサ11の障害にもかかわらずプロセッサ
21は追随モードによりプロセッサ22、23と同一の
演算を実行し続けたので内部状態は、他のプロセッサと
同一である。プロセッサ21の出力をイネーブルにし、
メモリ制御回路を追随モードから3者比較モードに戻す
とプロセッサ21、22、23の同期動作による3者比
較が可能になる。続いて、プロセッサ11を含むプロセ
ッシングユニット10をオンラインで交換し、システム
が再度使用を開始すればもとの状態に回復する。
【0104】システムバス1が追随モードの場合、図1
4に示した比較回路53bでは、システムバス2、3の
比較のみ行い、システムバス1は比較および選択の対象
にしない。また、メモリリード時にはAND素子52e
からのドライバ制御信号を、比較回路53bからの制御
信号を入力するAND回路52kでマスクすることで抑
止し、ドライバ52hはデータをドライブしない。一
方、比較回路53bの制御により、クロック毎にシステ
ムバス3の内容が保持されたレジスタ53lの内容をド
ライバ53oを経由して出力する。こうすることで、シ
ステムバス3(システムバス2と同じ)の内容がシステ
ムバス1に出力される。但し、1サイクル遅い状態が伝
播される。
【0105】(2.2 性能維持の場合) 再度図12に基づいて説明する。二つのプロセッシング
ユニットはそれぞれ別の演算を行なっている状態で、プ
ロセッシングユニット10のプロセッサ11に障害が発
生したケースについて説明する。プロセッサ11の故障
により、システムバス1の動作は、他のシステムバスと
動作が異なり、選択回路53および63で故障が検知さ
れる。システムバス1の動作は選択回路53でマスクさ
れ、システムバス1の動作がメモリに伝わることはな
い。性能維持の場合はシステムバス1に接続されるプロ
セッサ11、21が一つのオンライン交換の単位とし、
これらをオンラインで交換する。このときプロセッサ1
2と13、22と23は同期動作を継続し、性能は故障
発生以前ものが維持できる。オンライン交換後、システ
ムバス1を追随モードにし、システムバス2、3と同期
動作をさせる。続いて、プロセッシングユニット10を
S/Wの都合のよいタイミング(たとえばタスクの切り
換え時)に初期化する。こうすることで、新規挿入され
たプロセッサ11がプロセッサ12、13と同期動作開
始する。さらに、同様にプロセッシングユニット20を
S/Wの都合のよいタイミング(たとえばタスクの切り
換え時)に初期化する。同様に新規挿入されたプロセッ
サ21がプロセッサ22、23と同期動作開始する。プ
ロセッサ11、21の出力をイネーブルにし、メモリ制
御回路を追随モードから3者比較モードに戻すともとの
同期動作に復旧する。
【0106】(3.高信頼モード/高性能モードの切り
換え) ここで、同一ハードウェア構成で、高信頼な計算機シス
テムと高性能な計算機システムをとる例について説明す
る。図20の表に示すとおり、本実施例の計算機ハード
ウェアは、高信頼を実現する高信頼モードと高性能を実
現する高性能モードをもち、高信頼モードでは、プロセ
ッサの3重化、主記憶装置の2重化により信頼性と連続
運転性を高め、一方、高性能モードでは、プロセッサを
個別動作させプロセッシングユニットの数を増大させ、
主記憶装置も別々のアドレス範囲のデータを格納するこ
とで広いアドレス空間をサポートすることで高性能を実
現する。
【0107】図21でアービトレーション回路90の内
部について説明する。図において、90aは、CPU高
性能/高信頼を指定するCPU個別実行指定ビット、9
0b、90cは3者の入力の多数決をとる多数決回路、
90d、90e、90f、90g、90h、90iはセ
レクタ、90jは4者からの1者を選択するアービトレ
ーション回路、90kは12者から1者を選択するアー
ビトレーション回路、90l、90m、90nはOR素
子、90o、90pは多数決回路、90q、90r、9
0s、90t、90u、90vはセレクタ、90w、9
0x、90yはOR素子、91はCPU個別実行モード
指定信号、92は90l、90m、90nの出力を束ね
たもので個別実行モードでどのシステムバスが選択され
ているかを示すシステムバス選択信号である。信号線1
1r〜23rはそれぞれプロセッサ11〜23からのシ
ステムバスリクエスト信号で該プロセッサがシステムバ
スを要求していることを表し、信号線11g〜23gは
プロセッサ11〜23へのシステムバス使用許可信号で
該プロセッサにシステムバスの使用を許可したことを表
す。信号線101r〜103r、201r〜203rは
それぞれバスブリッジ101〜103、201〜203
からのシステムバスリクエスト信号で該バスブリッジが
システムバスを要求していることを表し、信号線101
g〜103g、201g〜203gはバスブリッジ10
1〜103、201〜203へのシステムバス使用許可
信号で該プロセッサにシステムバスの使用を許可したこ
とを表す。
【0108】高性能モードの動作について説明する。図
21において、アービトレーション回路90のCPU個
別実行モードビット90aをセットし、CPUを個別実
行させ処理性能を向上させる。また、図20において、
選択回路50、60のメモリ2重化指定ビット52o、
62oによりメモリ個別アクセスを設定し、プライマリ
ビット52d、62dをともにセットし、メモリアドレ
ス範囲指定レジスタ52aa、62aaにメモリアドレ
スのを範囲ををれぞれセットする。メモリアドレス範囲
指定レジスタ52aaと62aaにセットするアドレス
範囲は異なる(重ならないで連続するものが望ましい)
ようにセットする。以上のレジスタおよびビットのセッ
トをシステムのパワーオン直後か、システムリセットの
直後に行うことで、以後そのシステムを高性能モードで
使用することができる。
【0109】6個のプロセッサおよび6個のバスブリッ
ジは、それぞれ信号線11r〜23rでシステムバス使
用要求をアービトレーション回路に伝え、12者から1
者を選択するアービトレーション回路90kで1個のプ
ロセッサが選択される。以降、例えばプロセッサ11が
選択されたとする。アービトレーション回路90kから
の出力がセレクタ90dを経由して、プロセッサ11に
対するバス使用権信号11gが出力されプロセッサ11
に伝えられる。CPU個別実行モードビット90aがセ
ットされているので、セレクタ90dは、アービトレー
ション回路90jの出力ではなくアービトレーション回
路90kの出力を選択する。また、同時にアービトレー
ション回路90kの出力はOR素子90lを経由して、
システムバス選択信号92として出力される。CPU個
別実行モードビット90aの内容も、CPU個別実行指
定モード信号91として出力される。続いて、図14
で、CPU個別実行指定モード信号91により、セレク
タ53cはシステムバス選択信号92を選択し、この信
号でセレクタ53aは、システムバス1を選択し、プロ
セッサ11がメモリにアクセスすることができる。この
ようにして、6個のプロセッサは独立に動作を実行する
ことができる。各プロセッサがキャッシュを持っていれ
ば、少ないバスアクセスで多くの処理を実行できるの
で、2個のプロセッシングユニットで実行していたとき
より、格段の性能向上が期待できる。
【0110】また、メモリアクセスに際しては、2つの
主記憶装置50、60において、メモリアクセス範囲指
定レジスタ52aaに個別の値がセットされていて、プ
ライマリビット52d、62d共にセットされているの
で、主記憶装置はそれぞれ個別のメモリ空間に対してプ
ライマリ(即ち、リード/ライト可能)として動作す
る。メモリ2重化指定ビット52oをセットし、AND
回路52pでマスクすることで、ECCチェック回路5
2cの出力がもう一方の主記憶装置に影響を及ぼすのを
防いでいる。このようにして、メモリを2重化して使用
したときより大容量なメモリ空間をサポートすることが
可能になり、メモリを多く使用するアプリケーションや
非常に多くのプログラムを並行して処理するケースに対
しては、メモリのディスクへの退避の頻度を減少させる
ことができ性能の向上が期待できる。
【0111】ここで、パワーオン直後または、システム
のリセット直後からの高性能モードまたは高信頼モード
の設定手順について説明する。図22にそのフローを示
す。本実施例の計算機がパワーオンされたり、リセット
が入りそれが解除されるとプロセッサは主記憶装置、バ
ス、プロセッサ自身などハードウェアリソースの診断を
実行する。このときは、モードは高性能でも高信頼でも
都合のよい方でよい。診断でOKであれば、あるプロセ
ッシングユニットは、これから設定すべき実行モードを
判定する。実行モードは、計算機外部のスイッチ情報、
不揮発性のメモリの内容、通常の主記憶装置の特定アド
レスの内容、あるいはシステムコンソールからの入力な
どの手段およびそれらの組み合わせなどで決定される。
実行モードが決ると該プロセッシングユニットは、モー
ドを指定するための各種レジスタ(90a、52aa、
52d、52o、62aa、62d、62o)に値をセ
ットする。セットする値の一例を図23に示す。これら
のレジスタをセットし終ると所望のモードになる。続い
て、オペレーティングシステムを立ちあげ、システムを
稼働状態にする。オペレーティングシステムはこのとき
現在認識できるプロセッシングユニットまたは、メモリ
空間に応じて、プロセッサ管理テーブルやメモリ管理テ
ーブルを生成すればよく、標準のオペレーティングシス
テムの移植性は損なわれない。
【0112】以上のように、この実施例は、システムバ
スとこのシステムバスに接続される主記憶装置、システ
ムバスに接続される1つまたは複数のプロセッシングユ
ニットからなる高信頼計算機システムにおいて、各プロ
セッシングユニットと主記憶装置は、同一の動作を実行
する3本以上の複数のシステムバスで接続され、各プロ
セッシングユニットは同一の演算を実行する3台以上の
プロセッサで構成され、上記プロセッサはバスインタフ
ェースユニットによりシステムバスに個別に接続され、
主記憶装置は、データを格納するメモリアレイと、上記
3つのシステムバスのうちいずれか一つの出力を選択す
る選択回路と、選択された出力をメモリアレイにライト
し、またメモリアレイからリードしたデータをシステム
バスに出力するためのメモリインタフェースユニットか
ら構成され、上記回路の故障部位を取り除いた残りの構
成によって運転継続させる故障検出と故障部切り離し機
構とから構成されることを特徴とする。
【0113】また、主記憶装置は2台以上複数が3本以
上複数のシステムバスに接続され、同一のデータを保持
し、各主記憶装置は、保持したデータの誤りを検出する
手段を有することを特徴とする。
【0114】また、これらシステムバスに接続される同
一の動作を実行する3台以上のバスブリッジを有し、そ
れぞれに第2階層のシステムバスが接続され、上記3本
の第2階層のシステムバスのうちいずれか一つの出力を
選択する選択回路と、選択された出力を入出力制御装置
に出力し、また入出力制御装置からのデータを取り込む
ための入出力インタフェースユニットを有することを特
徴とする。
【0115】また、これらシステムバスに接続される同
一の動作を実行する3台以上のバスブリッジを有し、上
記3つバスブリッジのうちいずれか一つの出力を選択す
る選択回路、選択された出力を第2階層システムバスに
出力し、また、第2階層システムバスからの信号を3台
のバスブリッジに送出する機能を有する第2階層システ
ムバスインタフェースユニットを有することを特徴とす
る。
【0116】この実施例は、さらに、前記システムバス
は第1、第2、第3のシステムバスから構成され、同一
の動作を行い、前記各プロセッシングユニットは第1、
第2、第3のプロセッサを備えて、同一の演算を実行し
ており、第1のプロセッサは第1のシステムバスに、第
2のプロセッサは第2のシステムバスに、第3のプロセ
ッサは第3のシステムバスにそれぞれ接続されており、
同様に第4のプロセッサは第1のシステムバスに、第5
のプロセッサは第2のシステムバスに、第6のプロセッ
サは第3のシステムバスにそれぞれ接続されており、プ
ロセッシングユニットが1つのオンライン交換単位であ
る高信頼計算機システムにおいて、上記3つのプロセッ
サの内いずれか一つが故障した時に、残りの2つのプロ
セッサにより現在実行中のプログラムの実行を正常に停
止させた後、そのプログラムの再開は第4、第5、第6
のプロセッサによる同一演算に処理を移行することを特
徴とする。
【0117】また、プロセッサの故障をそれが接続され
るシステムバスの動作を監視することで検知する機能
と、各プロセッサの出力を個別に抑止する機能と、シス
テムバスの動作を他のシステムバスの動作に強制的に同
期動作(追随動作)させるシステムバス追随機能を有
し、第1のプロセッサが故障した場合、第1のプロセッ
サの出力を抑止し、同時に第1のシステムバスに接続さ
れた第4のプロセッサの出力を抑止し、第1のシステム
バスは第2または第3のシステムバスと同じ動作を実行
し、故障していない第4のプロセッサを第5、第6のプ
ロセッサと同じ演算を実行させ、第2、第3のプロセッ
サが停止した後、第4のプロセッサの出力を再び許可
し、第1のシステムバスが第2、第3のシステムバスと
の同期動作を再開することを特徴とする。また、各プロ
セッサは、そのバスに障害が検知された場合、1サイク
ルまたは複数サイクル停止する機能と、他のシステムバ
スに対して追随動作を実行しているシステムバスは、1
サイクルまたは複数サイクル遅れた追随動作を行う機能
と、および、指令により、任意のプロセッサを1サイク
ルまたは複数サイクル停止する機能を有し、第1のプロ
セッサが故障した場合、第1のプロセッサの出力を抑止
し、第1のシステムバスに接続された第4のプロセッサ
の出力を抑止するとともに、1または複数サイクル停止
させることで、第1のシステムバスは第2または第3の
システムバスに1または複数サイクル遅れてと同じ動作
を実行し、故障していない第4のプロセッサを第5、第
6のプロセッサに一定サイクル遅れた同期動作を行い、
第2、第3のプロセッサが停止した後は、指令により第
5、第6のプロセッサを1または複数サイクル停止さ
せ、第4のプロセッサの出力を許可し、その後、第1の
システムバスが第2、第3のシステムバスと同期動作を
再開することを特徴とする。
【0118】また、同一システムバスに接続されるプロ
セッサ(第1と第4、第2と第5、第3と第6)が一つ
のオンライン交換単位である高信頼計算機システムにお
いて、第1のプロセッサが故障した場合、第2と第3、
第5と第6のそれぞれのプロセッサが同期動作を継続す
る機能を有し、第1と第4のプロセッサを含む交換単位
を、第2と第3、第5と第6のプロセッサを動作させな
がら交換したあと、第1のシステムバスを第2または第
3のシステムバスに追随動作ができる機能を有し、第1
のプロセッサの動作を、第2または第3のプロセッサの
動作にあわせ、続いて、第4のプロセッサの動作を、第
5または第6のプロセッサの動作にあわせることを特徴
とする。
【0119】また、各プロセッサボードは、システムバ
スへの出力を抑止する手段を有し、メモリインタフェー
スユニットは、システムバスの出力を他のシステムバス
の動作の一定サイクル遅れた信号変化を出力する手段を
有し、プロセッシングユニットを構成するプロセッサ
(例えば、第1、第2、第3のプロセッサ)の内、任意
の一つのプロセッサを他の2つのプロセッサに比べて、
一定サイクル遅れてリセットを解除する手段を有し、各
プロセッサおよび各システムバスは、一定サイクル動作
を停止する手段を有し、第1、第4のプロセッサをオン
ライン交換した場合、第1のシステムバスを第2、第3
のシステムバスに一定サイクル遅れた追随動作をさせ、
第1のプロセッサの動作を、第2または第3のプロセッ
サの動作にあわせるとき、第1のプロセッサのリセット
を第2、第3のプロセッサのリセットを解除するより一
定サイクル遅らせて解除し、第1のプロセッサの動作
を、第2または第3のプロセッサの一定サイクル遅れた
動作にあわせ、同様に、第4のプロセッサの動作を、第
5または第6のプロセッサの一定サイクル遅れた動作に
あわせ、以上が完了した後、第2、第3、第5、第6の
プロセッサおよび、第2、第3のシステムバスを一定サ
イクル動作を停止し、同時に第1、第4のプロセッサの
出力を許可し、バスインタフェースユニットは、第1の
システムバスを追随モードから他の2本のシテムバスと
の比較するモードに変更し、第1のプロセッサは第2、
第3のプロセッサと、第4のプロセッサは第5、第6の
プロセッサと、第1のシステムバスは第2、第3のシス
テムバスと同期動作を回復することを特徴とする。
【0120】また、この実施例は上記の高信頼計算機シ
ステムにおいて、第1および第2の主記憶装置を有し、
第1の主記憶装置は第1のメモリインタフェースユニッ
ト、第1の選択回路、第1のメモリアレイを有し、第2
の主記憶装置は第2のメモリインタフェースユニット、
第2の選択回路、第2のメモリアレイを有し、各選択回
路は、それぞれ3本のシステムバスに接続され、システ
ムバスを比較し、故障したシステムバスの故障を検知
し、故障していないシステムバスの信号を選択して主記
憶装置に取り込む手段を有し、また、第1および第2の
メモリインタフェースユニットは、通常時は同期動作
し、選択されたシステムバスの信号を第1、第2のメモ
リアレイに同時に送出する手段と、第1、第2のメモリ
アレイからのリードデータを正当性をチェックするため
のチェックコードを生成する手段、上記チェックコード
よりリードデータの正当性をチェックする手段、プライ
マリおよびセカンダリというモードを保持する手段を有
し、上記プライマリ状態のメモリインタフェースユニッ
トは、システムバスに信号を送出し、セカンダリ状態の
メモリインタフェースユニットは、システムバスへは信
号を送出せず、第1と第2のメモリインタフェースユニ
ットは排他的にプライマリとセカンダリのモードにな
り、メモリインタフェースユニットをプライマリとする
主記憶装置の保持するデータが自己訂正不可能な誤りを
有する場合、2つのメモリインタフェースユニットのプ
ライマリとセカンダリを交換する機能を有することを特
徴とする。
【0121】また、同一の演算を実行する3台以上のプ
ロセッサが指令によって異なる演算を実行するモードを
有し、選択回路は3本のシステムバスの出力を競合制御
を実施して逐次的にメモリに出力するモードをもち、ま
たメモリからのデータをいずれかのシステムバスに出力
する手段を持つメモリインタフェースユニットを有する
ことを特徴とする。
【0122】また、システムバスの使用権は各プロセッ
サからの使用要求をアービトレーション回路で裁定する
高信頼計算機システムにおいて、システムバスのアービ
トレーション回路は、3重化同期動作のモードと個別動
作のモードを有し、3重化同期動作のモードにおいて
は、同一動作が期待されている3つのプロセッシングユ
ニットおよび3つのバスブリッジからのバス要求信号は
多数決回路で一つにまとめたあと、バスアービトレショ
ンを行う手段と、個別動作のモードでは、すべてのプロ
セッシングユニットとすべてのバスブリッジからのバス
要求信号に対してバスアービトレションを行う手段を有
し、上記2つの手段がソフトウェアからの指令によって
選択できる手段を有することを特徴とする。
【0123】また、同一の演算を実行する3台以上のプ
ロセッサが指令によって異なる演算を実行するモードを
有し、選択回路は各システムバスの出力を競合制御を実
施して逐次的にメモリに出力するモードをもち、またメ
モリからのデータをいずれかのシステムバスに出力する
手段を持つメモリインタフェースユニットを有し、2つ
のメモリは異なるアドレスでアクセスされるメモリであ
るようなモードを有することを特徴とする。
【0124】また、外部スイッチや特定アドレスのメモ
リや不揮発性のメモリ素子などにより、システムバスの
動作モードおよび主記憶装置の動作モードを指定する手
段と、ソフトウェアで動作モードおよび主記憶装置の動
作モードを設定する手段を有し、システムの電源投入直
後または、リセット直後に、外部スイッチ情報あるいは
特定アドレスのメモリあるいは不揮発性のメモリの内容
から、システムバスの動作モードまたは、主記憶装置の
動作モードを読み、モード設定に必要な手段により該モ
ードをセットし、それらが完了した後オペレーティング
システムを立ちあげる手順を有することを特徴とする。
【0125】このシステムによれば、CPUの高性能化
のために、プロセッサ、キャッシュメモリ、システムバ
スを一体化して3重化し、それらを同一クロックで同期
動作させる。プロセッサ程高速化が要求されない主記憶
装置は、3重化されたシステムバスとインタフェース装
置で接続される。主記憶装置の信頼性を要求する場合
は、これを2重化する。I/O装置は、I/Oの要求さ
れる性質(信頼性、経済性、汎用性、互換性)などによ
り構成上のバリエーション(I/Oバスの3重化、2重
化、非冗長)がある。
【0126】また、このシステムによれば3重化された
システムバスのうち、障害発生・回復処理を必要とする
プロセッサが接続されているシステムバスを他のシステ
ムバスに追随させることで、障害発生時の信頼性の低下
を回避する構成や回復処理時の性能の低下を回避する構
成をとれる。
【0127】さらに、このシステムによれば3重化され
たシステムバスおよびそれに接続されたプロセッサを個
別に動作させるモード、2重化された主記憶装置を個別
のアドレス空間として認識できるようにさせるモード、
多重化されたI/Oバスを個別にアクセスできるモード
を持つことで、同一のハードウェアで高性能な計算機シ
ステムが構築できる。
【0128】実施例3. 実施例1とは異なる第2階層のシステムバスの構成例を
示す。図24に基づいて、以下、この実施例を説明す
る。図において、図1と同一符号は図1と同一又は担当
部分を示し、その説明を省略する。301、302はバ
ススイッチ、303、304は第2階層システムバス、
311、312は第2階層システムバス303、304
の出力を選択する入出力インタフェースユニット、32
1、322は入出力制御装置、331、332は入出力
装置(ディスク、LAN)である。
【0129】CPUからのメモリアクセスに関しては、
実施例1と同等なので説明省略する。ここでは、入出力
装置331、332からのメモリアクセスについて説明
する。この実施例における、第2階層システムバス30
3、304はバス上にパリティなどの障害検知機能を付
加する必要がある。パリティ生成は、バスブリッジまた
はバススイッチおよび入出力インタフェースユニットに
よってなされ、これにより、第2階層システムバスの障
害を入出力インタフェースユニットやバススイッチが検
知し、正しいバスのデータを選択できる。この場合を実
施例1の3重化された第2階層システムバス201、2
02、203と信頼性および経済性を比較すると、実施
例1の3重化バスに比べれば、入出力インタフェースユ
ニットが小型で安価にでき、経済的である(信頼性に関
しては一部の制御線にパリティを付加できなければ、信
頼性上問題が残ることがある)。また、パリティ等のな
い非冗長バスに比べれば、経済的には不利であるが、障
害発生時に障害検知・切り離しによる連続運転ができる
ので信頼性はかなり高いといえる。
【0130】ここで、ディスク331から主記憶装置5
0、60へのデータ転送を説明する。ディスク331か
らメモリへのデータ転送要求およびデータは入出力制御
装置321でライトトランザクションになり入出力イン
タフェースユニット311に送られる。入出力インタフ
ェースユニット311は第2階層システムバス303、
304にトランザクション(データを含む)を送出し、
それぞれバススイッチ301、302に到達する。バス
スイッチ301と302のうちの一方がプライマリとな
り、バスブリッジ101、102、103にトランザク
ションを送出し、それぞれ、システムバス1、2、3を
経由して主記憶装置50、60にライトする。もし、第
2階層システムバスに障害があれば、パリティなどのバ
スの障害検知機構によりバススイッチ301、302で
検知され、障害がなかった方がプライマリとなり、バス
ブリッジ101、102、103にトランザクションを
送出する。したがって、第2階層システムバスに障害が
発生してもシステムは停止せず処理を続行できる。
【0131】逆に主記憶装置50、60からディスク3
31へのデータ転送をする場合について説明する。主記
憶装置50、60のメモリデータのディスク331から
の転送要求は、ライトトランザクションと同じ3つの経
路で主記憶装置50、60に伝わる。プライマリである
主記憶装置50がリードデータをシステムバス1、2、
3に送出し、主記憶装置60は送出しない。リードデー
タは、バススイッチ101、102、103を経由して
バススイッチ301、302に到達し、バススイッチ3
01、302がバススイッチ101〜103からのデー
タを比較し、正しいデータをそれぞれ第2階層システム
バス303、304に送出し、入出力インタフェースユ
ニット311がその両者のデータを受け、正しい方を選
択し、入出力制御装置321に転送する。入出力制御装
置321はメモリからのリードデータをディスク331
に格納する。もし、第2階層システムバス303または
304に障害があれば、パリティなどのバスの障害検知
機構により入出力インタフェースユニット311で検知
され、入出力インタフェースユニット311は障害がな
い方のデータを選択し、入出力制御装置321に転送す
る。したがって、第2階層システムバスに障害が発生し
てもシステムは停止せず処理を続行できる。
【0132】ここでバススイッチ301の動作を、図2
5に基づいて説明する。図において、101、102、
103はバスブリッジ、303は第2階層システムバス
で、通常バス303aとパリティバス303bから構成
される。301はバススイッチで、セレクタ301a、
比較回路301b、ドライバ素子301c、301d、
301e、パリティチェック回路301f、パリティ生
成回路301g、ドライバ素子301h、プライマリビ
ット301i、他プライマリ要求出力信号301j、自
プライマリ要求入力信号301k、バスモニタ301
l、ドライバ素子301m、バスモニタ301o、AN
D素子301pから構成される。通常は、プライマリビ
ット301iと302i(バススイッチ302のプライ
マリビット)のうち一方が排他的にセットされる。ここ
では、プライマリビット301iがセットされていると
する。
【0133】バスブリッジ101、102、103から
第2階層システムバス303、304に送出する信号の
場合、バスブリッジ101、102、103は同期動作
をし、その出力信号が比較回路301bで比較され、正
常動作している出力がセレクタ301aで選択・出力さ
れる。その出力をバスモニタ301lが監視し、通常バ
ス303aに出力すべき信号を判定し、該信号をドライ
バ301hが第2階層システムバスの通常バス303a
に出力する。同時にパリティ信号がパリティ生成回路3
01gで生成され、ドライバ素子301mでパリティバ
ス303bに出力される。この場合バススイッチ301
のペアとなるバススイッチ302も全く同じ動作をする
ので、バススイッチ302により第2階層システムバス
303と304は同期動作をする。
【0134】一方、第2階層システムバス303、30
4からバスブリッジ101、102、103に送出する
信号の場合、第2階層システムバス303、304は同
期動作をしているので、バススイッチ301と302は
同期動作をしている。バスモニタ301oはバストラン
ザクションを監視し、バススイッチ101、102、1
03に送出すべき信号がある場合、パリティ信号303
bと通常バス303aの信号をパリティチェック回路3
01fがチェックし、第2階層システムバス303の正
当性をチェックする。もし、誤りがなければ、プライマ
リビット301iはセットされたままなので301oか
らの出力制御信号がAND素子301pを経由してドラ
イバ301c、301d、301eに伝えられる。そこ
で、通常バス303aの信号をドライバ301c、30
1d、301eが出力し、バススイッチ101、10
2、103が受信する。誤りがあれば、プライマリビッ
ト301iはリセットされ、バススイッチ301は第2
階層システムバス303の信号を出力しない。同時に他
プライマリ要求信号301jが出力され、ペアのバスス
イッチ302は自プライマリ要求入力信号302kとし
て入力され、プライマリビット302iがセットされ、
第2階層システムバス304に誤りがなければ、その信
号を出力し、バススイッチ101、102、103が受
信する。
【0135】ここで、入出力インタフェースユニット3
11の動作について、図26に基づいて説明する。図に
おいて、303aは第1の第2階層システムバスの通常
バス、303bは同パリティバス、304aは第2の第
2階層システムバスの通常バス、304bは同パリティ
バス、311aはセレクタ、311bはパリティチェッ
ク回路、311c、311dはパリティ生成回路、31
1fはドライバ素子、311gはバスモニタ、321は
入出力制御装置である。
【0136】図において、第2階層のシステムバス30
3、304は、同期動作をしていて第2階層のシステム
バス、303、304から入出力制御装置321へ向う
信号は、比較回路311bで両第2階層システムバスの
パリティをチェックし正常動作している第2階層システ
ムバスを判定し、セレクタ311aで選択し出力する。
バスモニタ311eによりバストランザクションを監視
し、入出力制御装置321へ送出すべき信号を判定し、
該信号をドライバ素子311fが入出力制御装置321
に送出する。入出力制御装置321から第2階層システ
ムバス303、304へ向う信号は、バスモニタ311
gが監視し、送出すべき信号を判定し、該信号をドライ
バ211h、211iを経由して通常バス303a、3
04aに送出する。同時にパリティ生成回路311c、
311dでパリティデータが生成されパリティバス30
3b、304bに送出される。
【0137】以上のように、この実施例は、各プロセッ
シングユニットは同一の演算を実行する3台以上のプロ
セッサで構成され、上記プロセッサはバスインタフェー
スユニットによりシステムバスに個別に接続され、これ
らシステムバスに接続される同一の動作を実行する3台
以上のバスブリッジを有し、上記3つバスブリッジのう
ちいずれか一つの出力を選択する2つの選択回路、選択
された出力を第2階層システムバスに出力し、また、第
2階層システムバスからの信号を3台のバスブリッジに
送出する2つの第2階層システムバスインタフェースユ
ニットを有することを特徴とする。
【0138】実施例4. 実施例1で示した主記憶装置は、信頼性の点で、次の問
題点がある。メモリライト時にメモリデータバス51a
のデータを使用して、ECC生成回路52bがECCを
生成するが、セレクタ53aからECC生成回路52b
までのパスでメモリデータバス51aに障害があった場
合、変更された不正なデータに対してECC生成回路5
2bはECCを生成してしまい、そのデータをリードす
る時にはECCチェック回路52cでデータのエラーを
検知できない。従って、その主記憶装置がプライマリで
あれば誤ったデータをそのまま3重化システムバスに出
力してしまう。また、メモリリード時には、本主記憶装
置がプライマリの場合、メモリデータバス51a上のE
CCチェック回路52cがデータを取り込む地点からシ
ステムバス1、2、3に分岐する地点の間で障害があっ
た場合、ECCチェック回路52cがエラーを検知して
いない正しいデータが変更され、不正なデータとしてシ
ステムバス1、2、3に送出されてしまう。このような
ことが起れば、システムが誤動作してしまう。
【0139】そこで別の実施例として、選択回路を実施
例1で示したものより高性能化、高信頼化した例を図2
7に示す。図において、メモリアレイブロック51は、
メモリデータバス51a、ECCデータバス51b、メ
モリアレイ51c、ECCアレイ51dから構成され
る。メモリインタフェースユニット52は、メモリ制御
回路52a、プライマリビット52d、AND素子52
e、他プライマリ要求出力線52f、自プライマリ要求
入力線52g、ECCチェック回路52h、52i、5
2j、OR素子52n、メモリデータバスドライバ52
k、52l、52mから構成される。インタフェースユ
ニット53は、セレクタ53a、比較回路53b、シス
テムバスドライバ53c、53d、53e、ECC生成
回路53f、53g、53h、セレクタ53iから構成
される。プライマリビット52dは、その主記憶装置が
プライマリでリードデータをドライブすることを示すビ
ットであり、主記憶装置50、60で2重化された主記
憶装置の一方のプライマリビットがプラマリとしてセッ
トされており、もう一方のプライマリビットはセカンダ
リとしてセットされていない。この例では、主記憶装置
50がプライマリなので、プライマリビット52dはセ
ットされていて、主記憶装置60の同等のビット(図に
はないが62dとする)はセットされていないものとす
る。
【0140】システムバス1、2、3よりシステムバス
の動作が53b比較回路で比較され、正常動作している
バスの出力がセレクタ53aで選択され、メモリデータ
バス51aに出力される。同時にECC生成回路53
f、53g、53hがシステムバス1、2、3のデータ
よりECCデータを生成し、正常動作しているバスのデ
ータから生成されたECCデータがセレクタ53iによ
り選択され、ECCデータバス51bに出力される。メ
モリ制御回路52aはバストランザクションを解析し、
自メモリへのアクセス(リードまたはライト)であれ
ば、以下の動作を行う。
【0141】メモリライト時は、メモリ制御回路52a
がメモリデータバス51a上のデータをメモリアレイ5
1cにライトするべく制御を行い、データはメモリアレ
イ51cに格納される。同時に、ECCデータバス51
b上のECCデータをECCアレイ51dにメモリ制御
回路52aの制御により格納する。実施例1に比べ、E
CCデータデバイス53bによる障害検知とECC生成
回路53f、53g、53hによるECC生成が同時
に、また、メモリアレイ51cとECCアレイ51dへ
の書込みが同時にできるため、メモリライト動作が短い
時間で完了する。この様子を図28に示す。また、EC
Cを生成するためのデータを51aとは別のシステムバ
ス1、2、3から直接取っているので、メモリデータバ
ス51aが障害を発生して、不正データをメモリアレイ
51cにライトしたら、リード時にECCエラーとして
検出できる。また、ECC生成回路53f、53g、5
3hの近辺のバスが障害を発生した場合は、セレクタ5
3iで不正なECCコードが選択されECCアレイ51
dにライトされるが、やはりリード時にそれを検知でき
る。
【0142】メモリリード時は、メモリ制御回路52a
がメモリアレイ51c、ECCアレイ51d内の所望の
アドレスのデータをリードすべく制御を行い、メモリデ
ータはメモリデータバス51aに、ECCデータはEC
Cデータバス51bに出力される。これらのデータはメ
モリデータバスドライバ52k、52l、52mを経由
した後、ECCチェック回路52h、52i、52jに
より正当性をチェックされる。ECCチェック回路52
h、52i、52jのいずれかがECC2ビットエラー
を検知すると、それらの出力がOR素子を経由してプラ
イマリビット52dをリセットする。データが正当であ
れば、プライマリビット52dの内容は変化せずセット
されたままである。従って、システムバスドライバ53
c、53d、53eは、AND素子52eを経由したメ
モリ制御回路52aの制御により、メモリデータバス5
1a上のメモリデータを、システムバス1、2、3に出
力する。このようにしているので、メモリアレイブロッ
ク51、メモリインタフェースユニット52、インタフ
ェースユニット53内のデータパスの1点の障害は、E
CCチェック回路52h、52i、52jで検知される
か、検知されなくとも誤って不正データを送出するのは
システムバス1、2、3のうち一本に限られ、システム
の誤動作は回避できる。
【0143】以上のように、この実施例は、メモリデー
タの正当性のチェックコードの生成手段を3重化し、3
つのシステムバスのそれぞれに接続し、システムバスの
比較回路の出力により、それらのうち1つを選択し、格
納する機能を有することを特徴とする。また、チェック
コードによるメモリデータの正当性のチェック手段を3
重化し、3重化システムバスへのデータパスのそれぞれ
に接続したことを特徴とする。
【0144】実施例5. 更に、別の実施例として、複数のプロセッサを1チップ
に封入した例を図29に示す。図において、1はシステ
ムバス、41は2つのプロセッサが封入されているLS
Iで、内部にプロセッサ11と12を有し、41aはプ
ロセッサ11のリセット信号、41bはプロセッサ12
のリセット信号、41cはプロセッサ11のシステムバ
ス要求信号、41dはプロセッサ12のシステムバス要
求信号、41eは11のシステムバス使用許可信号、4
1fはプロセッサ12のシステムバス使用許可信号、4
1gはプロセッサ11および12に対するその他の入出
力信号でアドレス、データ、制御線を含む。42はバス
インタフェースユニット、42a〜42hはドライバ素
子、42iは出力イネーブル信号、42jはプロセッサ
11のリセット信号、42kはプロセッサ12リセット
信号である。
【0145】動作について説明する。プロセッサ11、
12は個別に演算を行い、システムバス1を使用する要
求が発生したら、それぞれシステムバス要求信号41
c、41dをアービトレーション回路に送出し、それが
アービトレーション回路からそれぞれシステムバス使用
許可信号41e、41fを受信すると入出力信号41g
を用いてドライバ42a、42bを経由してシステムバ
ス1を使用する。ここで、システムバス11を使用する
のはアービトレーション回路によってプロセッサ11、
12のうちの一方に限られるから、リセット、システム
バス要求、システムバス使用許可信号以外の信号は一度
に一方しか使わないので、共通にできる。一方、システ
ムバス要求、システムバス使用許可信号はバスの使用者
を外部回路に明確にするため共通にしない。また、リセ
ットも、プロセッサごとにリセットをかけられるよう共
通にしない。
【0146】プロセッサ毎にリセット、バスの使用権を
明確に区別することによって、システムが実行中に一方
のプロセッサが停止していても、もう一方のプロセッサ
は追随モードで処理を同期実行することができる。従っ
て、プロセッシングユニットの再同期処理によるリセッ
ト、初期化処理による通常処理の中断は、一度には一つ
のプロセッサの実行中断に限られ、性能低下は少なく押
えられる。
【0147】以上のように、この実施例は、第1と第
4、第2と第5、第3と第6ののプロセッサをそれぞれ
同一チップに封入し、同一チップ内と言えども、プロセ
ッサ毎にチップ外部からリセットが入力でき、プロセッ
サ毎にチップ外部からプロセッサの停止を制御する手段
を有し、外部へのシステムバスの使用要求出力およびそ
の返答であるバス使用許可入力は、プロセッサごとに制
御可能であることを特徴とする。
【0148】このように、複数のプロセッサを一部の入
力信号(リセット、バス許可信号)をプロセッサ毎に分
離し、それ以外の信号線を共通化して一つのLSIに封
入することで、少ないI/Oピンで高性能なチップを実
現できる。
【0149】また、複数プロセッサを1チップに封入
し、大部分の入出力信号を共通のピンにすることで、同
一性能を得るのに少ない部品数、少ないピン数で実現さ
れ、信頼性が向上する。
【0150】実施例6. 更に、この発明の別の実施例を図に基づいて説明する。
図30において、1、2、3、4は4重化されたシステ
ムバスである。10はプロセッシングユニット、11、
12、13、14はプロセッシングユニット10を構成
する4重化されたプロセッサで、バスインタフェースユ
ニット15、16、17、18を経由してそれぞれシス
テムバス1、2、3、4に接続されている。20も同様
にプロセッシングユニットであり、21、22、22、
24はプロセッサ、25、26、26、27はバスイン
タフェースユニットである。50は主記憶装置であり、
51はメモリアレイブロック、52はメモリインタフェ
ースユニット、53は4つのシステムバスの出力を一つ
選択する選択回路である。60も同様に主記憶装置であ
り、61はメモリアレイ、62はメモリ制御回路、63
は選択回路である。90はシステムバスの使用者を決定
するアービトレーション回路、101、102、10
3、104はシステムバスと第2層システムバスを接続
するバスブリッジ、110は4重化されたバスブリッジ
の出力の内何れか一つを選択する第2階層システムバス
インタフェースユニット、105は第2階層システムバ
スである。111、112、113は、第2階層システ
ムバス105に接続される入出力制御装置、121、1
22、123はそれぞれ、入出力制御装置111、11
2、113に接続される入出力装置である。
【0151】続いて、動作について説明する。正常動作
時には、プロセッサ11、12、13、14は同じ演算
を実行し、プロセッサ21、22、23、24も同じ演
算を実行し、バスブリッジ101、102、103、1
04は同じ処理を行い、従って、システムバス1、2、
3、4は同じ動作を行う。
【0152】一つのプロセッサ(例えばプロセッサ1
1)に障害が発生した場合、システムバス11の動作が
他の3者と異なり、選択回路53、63および第2階層
システムバスインタフェースユニット110は、障害を
発生したシステムバス1を選択せず、システムは正常実
行を続けられる。つまり、プロセッサ12、13、14
は同じ演算が継続でき、プロセッサ22、23、24も
同じ演算が継続でき、バスブリッジ102、103、1
04も同じ演算が継続でき、従って、システムバス2、
3、4は同じ動作を継続する。
【0153】この状態で、オペレータや保守員によって
プロセッサ11が交換されるのを待つ。この間、通常は
数時間から1日程度が望ましいが、場合によっては、数
日程度待たねばならないこともありうる。この間に別の
プロセッサが更に故障する可能性もある。しかし、この
場合もシステムバスは3重化同期動作をしているので、
その故障を選択回路53、63、第2階層システムバス
インタフェースユニット110は正しく検知し、切り離
す(即ち選択しないということ)ことができ、システム
は正常に動作を続けることができる。
【0154】プロセッサ11が交換されたあと、システ
ムバス1を追随モードにし、他のシステムバス2、3、
4と同じ動作をさせ、続いて、プロセッサ11、12、
13、14を同時にリセット・初期化し、内部状態を合
わせ、同様に、プロセッサ21、22、23、24を同
時にリセット・初期化し、内部状態を合わせ、システム
バス1の追随モードを解除し、システムは正常実行状態
にもどる。
【0155】上記に示すようにシステムバスを4重化す
ることによって、1つのプロセッサに障害が発生して
も、プロセッサの交換作業が完了するまで、システムバ
スを3重化同期動作させることで、各選択回路はいわゆ
る多数決による正常バスの判定ができ、もう一つの別の
プロセッサの障害に対しても正しく障害を検知、切り離
しができる。従って、障害発生時に性能も信頼性も低下
させない構成が可能である。
【0156】実施例7. この構成で、別の動作例について説明する。図30にお
いて、正常動作時には、プロセッサ11、12、13は
同じ演算を実行し、プロセッサ21、22、23も同じ
演算を実行し、バスブリッジ101、102、103は
同じ処理を行い、従って、システムバス1、2、3は同
じ動作を行う。プロセッサ14、24およびバスブリッ
ジ104は予備用として、停止している。従って、プロ
セッサ14、24、バスブリッジ104の動作時に比べ
て消費電力は少なくなる。
【0157】一つのプロセッサ(例えばプロセッサ1
1)に障害が発生した場合、システムバス11の動作が
他の2者と異なり、選択回路53、63および第2階層
システムバスインタフェースユニット110は、障害を
発生したシステムバス1を選択せず、システムは正常実
行を続けられる。つまり、プロセッサ12、13は同じ
演算が継続でき、プロセッサ22、23も同じ演算が継
続でき、バスブリッジ102、103も同じ演算が継続
でき、従って、システムバス2、3は同じ動作を継続す
る。
【0158】プロセッサ11、21、バスブリッジ10
1を停止したあと、プロセッサ14、24、バスブリッ
ジ104を動作開始させ(ここでは、他のプロセッサと
の同期動作はしていない)、続いて、システムバス4を
追随モードにし、他のシステムバス2、3と同じ動作を
させる。プロセッサ12、13、14を同時にリセット
・初期化し、内部状態を合わせ、同様に、プロセッサ2
2、23、24を同時にリセット・初期化し、内部状態
を合わせ、システムバス4の追随モードを解除し、シス
テムはシステムバス2、3、4の3重化同期実行状態に
なる。
【0159】この状態で、オペレータや保守員によって
プロセッサ11が交換されるのを待つ。この間、通常は
数時間から1日程度が望ましいが、場合によっては、数
日程度待たねばならないこともありうる。この間に別の
プロセッサが更に故障する可能性もある。しかし、この
場合もシステムバスは3重化同期動作をしているので、
その故障を選択回路53、63、第2階層システムバス
インタフェース110は正しく検知し、切り離す(即ち
選択しないということ)ことができ、システムは正常に
動作を続けることができる。
【0160】プロセッサ11が交換されたあと、プロセ
ッサ14、24、バスブリッジ104を停止させ、続い
て、プロセッサ11、21、バスブリッジ101を動作
開始させる。続いて、システムバス1を追随モードに
し、他のシステムバス2、3と同じ動作をさせ、続い
て、プロセッサ11、12、13を同時にリセット・初
期化し、内部状態を合わせ、同様に、プロセッサ21、
22、23を同時にリセット・初期化し、内部状態を合
わせ、システムバス1の追随モードを解除し、システム
は元の正常実行状態にもどる。
【0161】上記に示すようにシステムバスを4重化
し、そのうち3本を同期動作させ、一本を予備とするこ
とによって、1つのプロセッサに障害が発生しても、プ
ロセッサの交換作業が完了するまで、システムバスを3
重化同期動作させることで、各選択回路はいわゆる多数
決による正常バスの判定ができ、もう一つの別のプロセ
ッサの障害に対しても正しく障害を検知、切り離しがで
きる。従って、障害発生時に性能も信頼性も低下させな
い構成が可能である。しかも、通常システムバス3本分
しか動作していないので、実施例5に比べて消費電力が
少なくて済み、また容量の小さい電源で済むので経済的
に有利である。
【0162】以上のように、この実施例は、前記システ
ムバスは第1、第2、第3、第4のシステムバスから構
成され、同一の動作を行い、前記各プロセッシングユニ
ットは第1、第2、第3、第4のプロセッサを備えて、
同一の演算を実行しており、第1のプロセッサは第1の
システムバスに、第2のプロセッサは第2のシステムバ
スに、第3のプロセッサは第3のシステムバスに、第4
のプロセッサは第4のシステムバスそれぞれ接続されて
おり、同様に第5のプロセッサは第1のシステムバス
に、第6のプロセッサは第2のシステムバスに、第7の
プロセッサは第3のシステムバスに、第8のプロセッサ
は第4のシステムバスにれぞれ接続されており、同一シ
ステムバスに接続されるプロセッサ(第1と第5、第2
と第6、第3と第7、第4と第8)が一つのオンライン
交換単位である高信頼計算機システムにおいて、第1の
プロセッサが故障した場合、第2と第6、第3と第7、
第4と第8のそれぞれのプロセッサが同期動作を継続す
る機能を有し、第1と第5のプロセッサを含む交換単位
を、第2と第6、第3と第7、第4と第8のプロセッサ
を動作させながら交換したあと、第1のシステムバスを
第2または第3または第4のシステムバスに追随動作が
できる機能を有し、第1のプロセッサの動作を、第2ま
たは第3または第4のプロセッサの動作にあわせ、続い
て、第5のプロセッサの動作を、第6または第7または
第8のプロセッサの動作にあわせることを特徴とする。
【0163】また、前記システムバスは第1、第2、第
3、第4のシステムバスから構成され、上記プロセッシ
ングユニットは第1、第2、第3、第4のプロセッサを
備えて、第1のプロセッサは第1のシステムバスに、第
2のプロセッサは第2のシステムバスに、第3のプロセ
ッサは第3のシステムバスに、第4のプロセッサは第4
のシステムバスそれぞれ接続されており、同様に別のプ
ロセッシングユニットは、第5、第6、第7、第8のプ
ロセッサを備えて、第5のプロセッサは第1のシステム
バスに、第6のプロセッサは第2のシステムバスに、第
7のプロセッサは第3のシステムバスに、第8のプロセ
ッサは第4のシステムバスにれぞれ接続されており、第
1、第2、第3のシステムバスは同一の動作を行い、第
4のシステムバスは待機系として停止しており、第1、
第2、第3のプロセッサは同一の演算を実行し、第4の
プロセッサは停止しており、また、第5、第6、第7の
プロセッサは同一の演算を実行し、第8のプロセッサは
停止しており、同一システムバスに接続されるプロセッ
サ(第1と第5、第2と第6、第3と第7、第4と第
8)が一つのオンライン交換単位である高信頼計算機シ
ステムにおいて、第1のプロセッサが故障した場合、第
2と第6、第3と第7のそれぞれのプロセッサが同期動
作を継続する手段と、直ちに第4のプロセッサを第2ま
たは第3のプロセッサの状態に、第8のプロセッサを第
6または第7の状態に同期させる手段を有し、第1と第
5のプロセッサを含む交換単位を、第2と第6、第3と
第7、第4と第8のプロセッサを動作させながら交換し
たあと、第1のシステムバスを第2または第3または第
4のシステムバスに追随動作ができる機能を有し、第1
のプロセッサの動作を、第2または第3または第4のプ
ロセッサの動作にあわせ、続いて、第5のプロセッサの
動作を、第6または第7または第8のプロセッサの動作
にあわせることを特徴とする。
【0164】
【発明の効果】以上のように、この発明によれば、プロ
セッサの高周波数動作の阻害要因が入らないかたちで、
プロセッサの3重化による高信頼化を行える。また、高
性能な高信頼計算機が構築でき、また、I/Oも信頼性
の要求される構成がとれるし、経済性が要求される構成
もとれる効果がある。
【0165】さらに、障害発生・回復処理時に信頼性の
低下しない計算機システムや性能の低下しない計算機シ
ステムが構築できる効果がある。
【0166】さらに、同一のハードウェアで、高信頼性
を要求されるシステムと高性能を要求されるシステムの
両者が構築できる効果がある。
【0167】さらに、1つのパッケージに複数のプロセ
ッサを封入することにより、高性能なシステムが、より
小型に実現できる効果がある。
【0168】発明によれば、プロセッサとシステムバ
スを3重化しているので、多重化計算機の高性能化が計
れる。
【0169】発明によれば、1つのバスに複数のプロ
セッサが存在するためさらに、計算機システムの性能が
向上する。
【0170】発明によれば、選択回路によりデータの
転送を制御するので多重化されたバスと多重化されてい
ないデバイスとの間でのデータ転送が、矛盾なく行なえ
る。
【0171】発明によれば、バスが3重化されている
ため障害検出手段が容易に障害を検出することができ
る。
【0172】発明によれば、障害のあったバスを切り
離すため障害が発生しても信頼性が低下しないシステム
を提供することができる。
【0173】発明によれば、主記憶装置を3重化した
バスに接続するため主記憶装置までのデータ転送の高信
頼化が計れる。
【0174】発明によれば、主記憶装置を2重化して
いるのでメモリ部分の高信頼化が計れる。
【0175】発明によれば、周辺機器システムを3重
化されたシステムに接続することが可能になる。
【0176】発明によれば、周辺機器システム内のシ
ステムを3重化しているので周辺機器システム自身が高
信頼化できる。
【0177】発明によれば、周辺機器システム内のバ
スをシングルバスとしているため周辺機器システムを安
価に作成することができる。
【0178】発明によれば、周辺機器システム内部の
バスを2重化しており前述したような3重化されたバス
よりも安価にできると共にシングルバスに比べて高信頼
化が計れる。
【0179】発明によれば、主記憶装置が複数存在す
る場合にでも、データの送出をプライマリ記憶装置に行
なわせることにより矛盾なくデータの転送が行なえる。
【0180】発明によれば、チェック手段によりデー
タの正当性がないと判断された場合にはプライマリ主記
憶装置を交換することができるので故障が生じた場合で
も正当なデータを転送することができる。
【0181】発明によれば、チェックコードの生成を
3重化したため主記憶装置の高信頼化が計れる。
【0182】発明によれば、チェック手段を3重化し
たため主記憶装置の高信頼化が計れる。
【0183】発明によれば、同期動作モードと個別動
作モードを備えているため高信頼な計算機と高性能な計
算機を同一のハードウェアで実現することができる。
【0184】発明によれば、個別動作モードにおいて
は選択回路が個別動作用の制御を行なうため個別動作モ
ードにおいてもその他の部分に対して特別な変更を要し
ない。
【0185】発明においては、アービトレーション手
段が同期動作モードと個別動作モードに対応できるため
いずれの動作モードにおいてもバスの獲得を正常に行な
うことができる。
【0186】発明によれば、複数の主記憶装置が存在
する場合個別モードにおいてはそれぞれのアドレス空間
を異ならせるようにしているため、より広いアドレス空
間に対してアクセスすることが可能になる。
【0187】発明によれば、モード指定手段とモード
設定手段によりシステムの立ち上げ時あるいはシステム
のリセット時にいずれかのモードを任意にセットするこ
とができる。
【0188】発明によれば、1つのチップに2つのプ
ロセッサを封入しながらも個別にプロセッサを制御する
ことができる。
【0189】発明によれば、前述したプロセッサチッ
プをシステムに用いているため高性能なシステムがより
小型に実現できる。
【0190】発明によれば、バスを4重化したため、
さらに信頼性のあるシステムを得ることができる。
【0191】発明によれば、障害が発生した場合にも
信頼性を維持するような方法でプロセッサを動作させる
ため障害時においても信頼性を維持することができる。
【0192】発明によれば、障害の発生時及び障害の
復旧後においても高信頼な計算機システムを提供するこ
とができる。
【0193】発明によれば、障害の復旧を複数サイク
ル停止するだけで行なうことができる。
【0194】発明によれば、障害発生時にも高性能な
システムを提供することができる。
【0195】発明によれば、前述した障害発生時であ
っても性能を維持しながら処理を続行する障害復旧方法
を一定サイクルの遅延のみで実現することができる。
【図面の簡単な説明】
【図1】この発明の概略構成図である。
【図2】この発明の論理CPUが2台の場合の概略構成
図である。
【図3】この発明のメモリが2重化された場合の概略構
成図である。
【図4】この発明の高性能モードの概略構成図である。
【図5】この発明の周辺機器システムを有した概略構成
図である。
【図6】この発明の周辺機器システムを有した概略構成
図である。
【図7】この発明の周辺機器システムを有した概略構成
図である。
【図8】この発明の故障したCPUを切り離す場合の動
作を説明する図である。
【図9】この発明のCPUボードの交換を示す図であ
る。
【図10】この発明のCPUボードの交換を示す図であ
る。
【図11】この発明のプロセッサチップの概略図であ
る。
【図12】この発明の一実施例による高信頼計算機のブ
ロック図である。
【図13】この発明の一実施例によるプロセッサまわり
のブロック図である。
【図14】この発明の一実施例による主記憶装置のブロ
ック図である。
【図15】この発明の一実施例によるプライマリビット
のセット/リセットを示す図である。
【図16】この発明の一実施例による障害検知の手段を
表す図である。
【図17】従来例による障害検知の手段を表す図であ
る。
【図18】この発明の一実施例による入出力インタフェ
ースユニットのブロック図である。
【図19】この発明の一実施例によるインタフェースユ
ニットのブロック図である。
【図20】この発明の一実施例による高信頼モード/高
性能モードを表す図である。
【図21】この発明の一実施例によるアービトレーショ
ン回路のブロック図である。
【図22】この発明の一実施例によるパワーオン/リセ
ット直後のフロー図である。
【図23】この発明の一実施例によるモード設定関連レ
ジスタの設定例を示す図である。
【図24】この発明の別の実施例による高信頼計算機の
ブロック図である。
【図25】この発明の別の実施例による第2階層システ
ムバスインタフェースユニットのブロック図である。
【図26】この発明の別の実施例による入出力インタフ
ェースユニットのブロック図である。
【図27】この発明の別の実施例による主記憶装置のブ
ロック図である。
【図28】この発明の別の実施例による障害検知の手段
を表す図である。
【図29】この発明の別の実施例によるプロセッサまわ
りのブロック図である。
【図30】この発明の別の実施例による高信頼計算機の
ブロック図である。
【図31】従来の高信頼計算機のブロック図である。
【符号の説明】
1 システムバス 2 システムバス 3 システムバス 10 プロセシングユニット 11 プロセッサ 12 プロセッサ 13 プロセッサ 14 バスインタフェースユニット 15 バスインタフェースユニット 16 バスインタフェースユニット 20 プロセシングユニット 20 プロセシングユニット 21 プロセッサ 22 プロセッサ 23 プロセッサ 24 バスインタフェースユニット 25 バスインタフェースユニット 26 バスインタフェースユニット 50 主記憶装置 51 メモリアレイ 52 メモリインタフェースユニット 53 選択回路 60 主記憶装置 61 メモリアレイ 62 メモリインタフェースユニット 63 選択回路 90 アービトレーション回路 101 バスブリッジ 102 バスブリッジ 103 バスブリッジ 104 第2階層システムバス 110 第2階層システムバスインタフェースユニット 111 入出力制御装置 112 入出力制御装置 113 入出力制御装置 121 入出力装置 122 入出力装置 123 入出力装置 201 バスブリッジ 202 バスブリッジ 203 バスブリッジ 204 第2階層システムバス 205 第2階層システムバス 206 第2階層システムバス 211 入出力インタフェースユニット 212 入出力インタフェースユニット 213 入出力インタフェースユニット 221 入出力制御装置 222 入出力制御装置 223 入出力制御装置 231 入出力装置 232 入出力装置 233 入出力装置
フロントページの続き (72)発明者 安永 裕明 鎌倉市上町屋325番地 三菱電機株式会 社 コンピュータ製作所内 (56)参考文献 特開 昭61−212138(JP,A) 特開 平1−267701(JP,A) 実開 平5−23257(JP,U) ALBERT L.HOPKINS, JR.,FTMP − A Highl y Reliable Fault−T olerant Multiproce ssor for Aircraft, Proceedings of the IEEE,米国,IEEE,VOL. 60 NO.10,P1221−1239 南谷崇,フォールトトレラントコンピ ュータ,日本,オーム社,1991年 2月 5日,P187−190 当麻喜弘,フォールトトレラントシス テムの構成と設計,日本,槙書店,1991 年 3月30日,P17−18 (58)調査した分野(Int.Cl.7,DB名) G06F 11/16 - 11/20 G06F 13/00 G06F 15/16 - 15/177 G05B 9/03

Claims (18)

    (57)【特許請求の範囲】
  1. 【請求項1】 データを転送する3以上複数のバスと、 上記複数のバスに個々に接続され同一動作する3以上複
    数のプロセッサを有するプロセッシングユニットと、 上記複数のプロセッサからバスを介してアクセスされる
    デバイスと、上記3以上のバスと上記デバイスの間にあ
    って上記複数のプロセッサによるアクセスのうち動作が
    正しいと判断されるバスの選択を行う選択手段と、選択
    手段により選択されたバスとデバイス間のデータ転送を
    制御する制御部を有するサブシステムとを備えた計算機
    システムであって、 上記プロセッシングユニットは、複数存在し、ひとつの
    バスに複数のプロセッサを接続し 上記複数存在するプロセッシングユニットのいずれかの
    プロセッシングユニットは、予め、障害発生時に実行す
    る実行モードを高性能モードまたは高信頼モードのいず
    れかに設定し、 上記制御部は、上記3以上複数のバスのデータを比較し
    て、障害の発生を検出し、その検出結果に基づいて上記
    選択手段のバスの選択を制御する障害検出部を備え、 上記計算機システムは、 上記障害検出部が障害の発生を検出した場合であって、
    上記実行モードを高信頼モードに設定した場合には、上
    記障害検出部の検出結果に基づいて、障害の発生を検出
    したプロセッサとひとつのバスによって接続されるすべ
    てのプロセッサの出力を抑止し、障害が発生していない
    バスの出力を障害の発生を検出したバスに送出して追随
    させ、障害の発生を検出したプロセッサを含むプロセッ
    シングユニットの動作を停止させ、障害の発生を検出し
    たプロセッサとひとつのバスによって接続される他のプ
    ロセッサの出力を許可し、障害の発生を検出したプロセ
    ッサを含むプロセッシングユニットをオンライン交換
    し、障害が発生したバスを障害が発生していない他のバ
    スに同期させて動作させ、 上記障害検出部が障害の発生を検出した場合であって、
    上記実行モードを高性能モードに設定した場合には、上
    記障害検出部の検出結果に基づいて、上記複数のプロセ
    ッシングユニットの各プロセッシングユニットで実行中
    の処理を障害が発生していないバスに接続されたプロセ
    ッサにより継続して実行させ、障害の発生を検出したプ
    ロセッサとひとつのバスによって接続されるすべてのプ
    ロセッサをオンライン交換し、交換したプロセッサを同
    一のプロセッシングユニットの他のプロセッサと同期さ
    せて動作させることを特徴とする計算機システム。
  2. 【請求項2】 上記選択手段は、バスからデバイスへデ
    ータを転送する場合、複数のバスからひとつのバスを選
    択してデバイスと接続し、デバイスからバスへデータを
    転送する場合、複数のバスを選択してデバイスと接続す
    ることを特徴とする請求項1記載の計算機システム。
  3. 【請求項3】 上記サブシステムは、主記憶装置であ
    り、上記デバイスはメモリであり、上記制御部はメモリ
    とバス間のデータ転送を行うメモリ制御部であることを
    特徴とする請求項1記載の計算機システム。
  4. 【請求項4】 上記サブシステムは、上記主記憶装置を
    複数備え、上記複数のバスにそれぞれ接続したことを特
    徴とする請求項3記載の計算機システム。
  5. 【請求項5】 上記サブシステムは、周辺機器システム
    であり、上記デバイスは入出力装置であり、上記制御部
    は入出力装置とバス間のデータ転送を行う入出力制御装
    置であることを特徴とする請求項1記載の計算機システ
    ム。
  6. 【請求項6】 上記周辺機器システムは、上記複数のバ
    スに対応する3以上の第2バスと、上記バスと第2のバ
    スをそれぞれ接続する3以上のバスブリッジを備えたこ
    とを特徴とする請求項5記載の計算機システム。
  7. 【請求項7】 上記周辺機器システムは、上記選択手段
    と上記入出力装置の間にひとつのバスから成る第3のバ
    スを備えたことを特徴とする請求項5記載の計算機シス
    テム。
  8. 【請求項8】 上記複数の主記憶装置は、バスに対して
    データを送出するプライマリ主記憶装置とバスに対して
    データを送出しないセカンダリ主記憶装置を備えたこと
    を特徴とする請求項4記載の計算機システム。
  9. 【請求項9】 上記プライマリ主記憶装置は、バスに転
    送するデータの正当性をチェックするチェック手段と、
    チェック手段のチェック結果に基づいてセカンダリ主記
    憶装置とプライマリ主記憶装置を交替する交替手段とを
    備えることを特徴とする請求項記載の計算機システ
    ム。
  10. 【請求項10】 上記チェック手段は、各バスから転送
    されてきたデータの正当性をチェックする冗長コードを
    生成する複数の冗長コード生成手段と、生成された複数
    の冗長コードから正しい冗長コードを選択して記憶する
    冗長コード選択手段を備えたことを特徴とする請求項
    記載の計算機システム。
  11. 【請求項11】 上記チェック手段は、各バスに対応し
    て冗長コードをチェックする複数の冗長コードチェック
    手段を備えたことを特徴とする請求項記載の計算機シ
    ステム。
  12. 【請求項12】 上記計算機システムは、動作モードと
    して3以上のバスを同期動作させる同期動作モードと、
    3以上のバスをそれぞれ非同期に動作させる個別動作モ
    ードを備え、 上記複数の主記憶装置は、個別動作モードにおいて異な
    るアドレスを用いてアクセスされるメモリを備えたこと
    を特徴とする請求項4記載の計算機システム。
  13. 【請求項13】 上記計算機システムは、上記動作モー
    ドを指定するモード指定手段と、モード指定手段により
    指定されたモードに設定するモード設定手段を備えたこ
    とを特徴とする請求項12記載の計算機システム。
  14. 【請求項14】 上記バスを4つ備えたことを特徴とす
    る請求項1記載の計算機システム。
  15. 【請求項15】 第1、第2、第3のバスにそれぞれ個
    々に接続され同一動作を行なう第1、第2、第3のプロ
    セッサを備えた第1のプロセッシングユニットと、第
    1、第2、第3のバスにそれぞれ個々に接続され同一動
    作を行なう第4、第5、第6のプロセッサを備えた第2
    のプロセッシングユニットとを備えた計算機システムの
    第1のプロセッサに障害が発生した場合の障害復旧方法
    において、 第1のプロセッシングユニットで実行中の処理を第2及
    び第3のプロセッサにより継続して実行する継続実行工
    程と、 上記継続実行工程後、第1のプロセッシングユニットの
    動作を停止させ、第2のプロセッシングユニットにより
    次の処理を開始するシングルユニット処理工程とを有
    し、 上記継続実行工程は、 (a)第1のプロセッサと第4のプロセッサの出力を抑
    止する出力抑止工程と、 (b)第1のバスの動作を第2、第3のバスの動作に追
    随させ第4のプロセッサと第5、第6のプロセッサとの
    同期動作を継続実行させる追随工程を備え、 上記シングルユニット処理工程は、 (a)第1のプロセッシングユニットの動作停止後、第
    4のプロセッサの出力を許可する許可工程と、 (b)第1のバスを第2、第3のバスに同期させる同期
    工程を備えたことを特徴とする障害復旧方法。
  16. 【請求項16】 上記追随工程は、 第1のバスの動作を1サイクル以上所定サイクル停止さ
    せてから第1のバスの動作を第2、第3のバスの動作に
    追随させるバス追随工程と、第4のプロセッサの動作を
    所定サイクル停止させて第5、第6のプロセッサから所
    定サイクル遅れた同期動作を行なわせるプロセッサ追随
    工程を備え、 上記同期工程は、第5、第6のプロセッサの動作を所定
    サイクル停止させて第4のプロセッサの動作と同期させ
    るプロセッサ同期工程と、第1のバスの動作を第2、第
    3のバスの動作と同期させるバス同期工程を備えたこと
    を特徴とする請求項15記載の障害復旧方法。
  17. 【請求項17】 第1、第2、第3のバスにそれぞれ個
    々に接続され同一動作を行なう第1、第2、第3のプロ
    セッサを備えた第1のプロセッシングユニットと、第
    1、第2、第3のバスにそれぞれ個々に接続され同一動
    作を行なう第4、第5、第6のプロセッサを備えた第2
    のプロセッシングユニットとを備えた計算機システムの
    第1のプロセッサに障害が発生した場合の障害復旧方法
    において、 (a)第1のプロセッシングユニットで実行中の処理
    を、第2、第3のプロセッサにより継続して実行、第2
    のプロセッシングユニットで実行中の処理を、第5、第
    6のプロセッサにより継続して実行する継続実行工程、 (b)上記継続実行工程中に、第1と第4のプロセッサ
    を新規なプロセッサを交換する交換工程、 (c)上記交換工程後、第1と第4のプロセッサを他の
    プロセッサと同期させて動作させる同期工程を備えたこ
    とを特徴とする障害復旧方法。
  18. 【請求項18】 上記同期手段は、 (a)第1のバスを第2、第3のバスの動作から1サイ
    クル以上所定サイクル遅らせて動作させるバス追随工程
    と、 (b)第1と第4のプロセッサを他のプロセッサの動作
    から所定サイクル遅らせて動作させるプロセッサ追随工
    程と、 (c)上記第2、第3、第5、第6のプロセッサの動作
    を所定サイクル停止させて第1と第4のプロセッサの動
    作と同期させるプロセッサ同期工程と、 (d)第1のバスの動作を第2、第3のバスの動作と同
    期させるバス同期工程を備えたことを特徴とする請求項
    17記載の障害復旧方法。
JP32897593A 1993-12-24 1993-12-24 計算機システム及びプロセッサチップ及び障害復旧方法 Expired - Fee Related JP3424968B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP32897593A JP3424968B2 (ja) 1993-12-24 1993-12-24 計算機システム及びプロセッサチップ及び障害復旧方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP32897593A JP3424968B2 (ja) 1993-12-24 1993-12-24 計算機システム及びプロセッサチップ及び障害復旧方法

Publications (2)

Publication Number Publication Date
JPH07182189A JPH07182189A (ja) 1995-07-21
JP3424968B2 true JP3424968B2 (ja) 2003-07-07

Family

ID=18216212

Family Applications (1)

Application Number Title Priority Date Filing Date
JP32897593A Expired - Fee Related JP3424968B2 (ja) 1993-12-24 1993-12-24 計算機システム及びプロセッサチップ及び障害復旧方法

Country Status (1)

Country Link
JP (1) JP3424968B2 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008097611A (ja) * 2006-10-10 2008-04-24 Robert Bosch Gmbh 有効な信号を生成する方法及びシステム
JP2009276983A (ja) * 2008-05-14 2009-11-26 Toshiba Corp 多重化計算機システム、及びその処理方法
CN101174135B (zh) * 2005-06-10 2010-06-09 株式会社日立制作所 输入输出控制装置及方法、信息控制装置及方法

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6161197A (en) * 1998-05-14 2000-12-12 Motorola, Inc. Method and system for controlling a bus with multiple system hosts
US6112271A (en) * 1998-05-14 2000-08-29 Motorola, Inc. Multiconfiguration backplane
JP4630023B2 (ja) * 2004-08-31 2011-02-09 富士通株式会社 システム制御装置、システム制御方法およびシステム制御プログラム
JP6394727B1 (ja) 2017-03-22 2018-09-26 日本電気株式会社 制御装置、制御方法、及び、フォールトトレラント装置
KR20200075519A (ko) * 2018-12-18 2020-06-26 현대자동차주식회사 3차원 적층 메모리의 이중화 방법 및 시스템
JP7169942B2 (ja) * 2019-06-17 2022-11-11 ルネサスエレクトロニクス株式会社 半導体装置及びその動作方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL8500571A (nl) * 1985-03-01 1986-10-01 Hollandse Signaalapparaten Bv Locaal data-communicatienetwerk volgens het multiple-bus-systeem.
JP2573297B2 (ja) * 1988-04-20 1997-01-22 株式会社東芝 電力制御用ディジタルコントローラ
JPH0523257U (ja) * 1991-09-04 1993-03-26 三菱電機株式会社 記憶回路

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
ALBERT L.HOPKINS,JR.,FTMP − A Highly Reliable Fault−Tolerant Multiprocessor for Aircraft,Proceedings of the IEEE,米国,IEEE,VOL.60 NO.10,P1221−1239
南谷崇,フォールトトレラントコンピュータ,日本,オーム社,1991年 2月 5日,P187−190
当麻喜弘,フォールトトレラントシステムの構成と設計,日本,槙書店,1991年 3月30日,P17−18

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101174135B (zh) * 2005-06-10 2010-06-09 株式会社日立制作所 输入输出控制装置及方法、信息控制装置及方法
JP2008097611A (ja) * 2006-10-10 2008-04-24 Robert Bosch Gmbh 有効な信号を生成する方法及びシステム
JP2009276983A (ja) * 2008-05-14 2009-11-26 Toshiba Corp 多重化計算機システム、及びその処理方法

Also Published As

Publication number Publication date
JPH07182189A (ja) 1995-07-21

Similar Documents

Publication Publication Date Title
US5384906A (en) Method and apparatus for synchronizing a plurality of processors
US5588111A (en) Fault-tolerant computer system having switchable I/O bus interface modules
US5890003A (en) Interrupts between asynchronously operating CPUs in fault tolerant computer system
JP2505928B2 (ja) フォ―ルト・トレラント・システムのためのチェックポイント機構
US5295258A (en) Fault-tolerant computer system with online recovery and reintegration of redundant components
US7496786B2 (en) Systems and methods for maintaining lock step operation
US5423024A (en) Fault tolerant processing section with dynamically reconfigurable voting
EP1573544B1 (en) On-die mechanism for high-reliability processor
EP0372580A2 (en) Synchronization of fault-tolerant computer system having multiple processors
US20090044044A1 (en) Device and method for correcting errors in a system having at least two execution units having registers
JP6098778B2 (ja) 冗長化システム、冗長化方法、冗長化システムの可用性向上方法、及びプログラム
JP3595033B2 (ja) 高信頼化コンピュータシステム
CN100361096C (zh) 交叉比较系统和方法
JP3424968B2 (ja) 計算機システム及びプロセッサチップ及び障害復旧方法
JP2009053946A (ja) 二重化コントーラ構成ブロックデバイス制御装置
JP4182948B2 (ja) フォールト・トレラント・コンピュータシステムと、そのための割り込み制御方法
US5473770A (en) Fault-tolerant computer system with hidden local memory refresh
JP2000112584A (ja) 電源故障対策を備えたコンピュ―タシステム及びその動作方法
JPS59106056A (ja) フエイルセイフ式デ−タ処理システム
JP5287974B2 (ja) 演算処理システム、再同期方法、およびファームプログラム
US7933966B2 (en) Method and system of copying a memory area between processor elements for lock-step execution
JPH05313930A (ja) 高信頼度化情報処理装置
JPH07281915A (ja) 集積回路モジュール同期2重系情報処理装置
Yao et al. A fault-tolerant single-chip multiprocessor
JPH04241039A (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: 20030415

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20040520

LAPS Cancellation because of no payment of annual fees