JPH0934809A - 高信頼化コンピュータシステム - Google Patents

高信頼化コンピュータシステム

Info

Publication number
JPH0934809A
JPH0934809A JP7181222A JP18122295A JPH0934809A JP H0934809 A JPH0934809 A JP H0934809A JP 7181222 A JP7181222 A JP 7181222A JP 18122295 A JP18122295 A JP 18122295A JP H0934809 A JPH0934809 A JP H0934809A
Authority
JP
Japan
Prior art keywords
central processing
input
processing unit
access
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.)
Granted
Application number
JP7181222A
Other languages
English (en)
Other versions
JP3595033B2 (ja
Inventor
Hiroshi Oguro
浩 大黒
Shinichiro Yamaguchi
伸一朗 山口
Yoshihiro Miyazaki
義弘 宮崎
Soichi Takatani
壮一 高谷
Masataka Hiramatsu
昌高 平松
Nobuo Akeura
伸夫 明浦
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP18122295A priority Critical patent/JP3595033B2/ja
Priority to US08/682,956 priority patent/US6032265A/en
Publication of JPH0934809A publication Critical patent/JPH0934809A/ja
Application granted granted Critical
Publication of JP3595033B2 publication Critical patent/JP3595033B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2056Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2017Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where memory access, memory control or I/O control functionality is redundant
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/202Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant
    • G06F11/2046Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where processing functionality is redundant where the redundant components share persistent storage
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/004Error avoidance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1604Error detection or correction of the data by redundancy in hardware where the fault affects the clock signals of a processing unit and the redundancy is at or within the level of clock signal generation hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1629Error detection by comparing the output of redundant processing systems
    • G06F11/1641Error detection by comparing the output of redundant processing systems where the comparison is not performed by the redundant processing components
    • G06F11/1645Error detection by comparing the output of redundant processing systems where the comparison is not performed by the redundant processing components and the comparison itself uses redundant hardware
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1629Error detection by comparing the output of redundant processing systems
    • G06F11/165Error detection by comparing the output of redundant processing systems with continued operation after detection of the error
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1658Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2002Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant
    • G06F11/2005Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where interconnections or communication control functionality are redundant using redundant communication controllers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2053Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
    • G06F11/2089Redundant storage control functionality

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Hardware Redundancy (AREA)
  • Debugging And Monitoring (AREA)
  • Multi Processors (AREA)

Abstract

(57)【要約】 【目的】 IO側の障害がCPU内に波及するのを防止
し、且つ、代替えのIOを使用して処理の続行を可能に
する。 【構成】 CPU1Aと1Bは、通常、同一クロックに
同期して同一処理を実行する。入出力バスアダプタ(I
OBA)20Aと20Bには、それぞれ入出力バス30
A,30Bを介し種々の入出力デバイス等が接続され
る。CPU1Aと1B及びIOBA20Aと20Bは接
続装置2を介して接続される。接続装置2は、DSBA
p−AとDSBAs−B、DSBAp−BとDSBAs
−Aをそれぞれ組とする二重化システムバスアダプタ
(DSBA)で構成される。接続装置2はCPUとIO
BAのアクセスを監視して、CPU側で障害が発生する
と、該障害CPUを切り離し、また、IO側で障害が発
生すると、CPUの指示で障害した側の入出力バスを切
り離す。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は高信頼化コンピュータシ
ステムに係り、特に中央処理装置(CPU)と入出力装
置との接続に関するものである。さらに、本発明は入出
力装置側のみならず、プロセッサやメモリも含めたシス
テム全体を二重化した高信頼化コンピュータ(フォール
トトレラントコンピュータ)の、入出力装置側の接続制
御に関するものである。
【0002】
【従来の技術】近年、コンピュータの利用は目覚まし
く、交通管制システムや金融システムなど社会の根幹を
占める分野をコンピュータが担うようになってきてい
る。これらのコンピュータに障害が発生し動作が停止す
ると、社会に大きな混乱を与える。従って、コンピュー
タの信頼性が益々要求されてきている。
【0003】このようなコンピュータに対する高信頼化
の要求は、特に電子制御(コントローラ)の分野で従来
よりあり、これに対しては、例えば特開昭57−208
47号公報に示すような多重計算機システムが提案され
ている。ここでは、複数のコンピュータで同一の演算を
行わせて、データ出力の時点でこれらを比較し、正しい
ものを出力する方式が示されている。この方式は、ソフ
トウエアで出力のタイミングを合わせて、比較すること
が前提となっており、比較的小規模な制御システムなら
ば適用可能である。しかし、大規模かつ複雑な動きをす
る近年のアプリケーションソフトウエアでは、データ比
較のために多大な工数が必要となり適用できない。この
ような問題に対処するために、近年はハードウエア主体
でデータ比較を行う高信頼化技術が種々提案されてい
る。
【0004】コンピュータの高信頼化(フォールトトレ
ランス:Fault-tolerance)技術に関しては、例えば特
開平2−202638号公報がある。ここでは、典型的
には3個の同一のCPUで同じ命令ストリームを実行
し、それらの多数決をとることを前提にしているが、多
数決に加わっているプロセッサが独立したクロックで動
作していると、プロセッサ間で同期を採るためになんら
かの工夫が必要である。特開平2−202638号は、
プロセッサ間で緩く同期を採る手段を提供するものであ
る。
【0005】また、より高い処理性能のコンピュータへ
の要求に応えて、処理性能向上のために従来からマルチ
プロセッサ構成のコンピュータが広く用いられている。
マルチプロセッサ構成のコンピュータのフォールトトレ
ランス技術としては、例えば日経エレクトロニクス19
83年5月9日号第197頁から第202頁に記載の、
Pair and spare法と呼ばれる方式が知られている。こ
れは、自己診断機能のあるメモリ、プロセッサなどから
なる配線基板2枚を1組にして動作をする方式である。
即ち、片方の配線基板上の回路でフォールトが生じた場
合には、もう一方の配線基板上の回路で処理を動作を続
ける方式である。この方式によれば、フォールト発生時
でも動作が続けられるので、チェックポイントリスター
ト(chekpoint restart)と呼ばれるフォールト発生時
点以前のチェックポイントからの処理のやりなおし動作
が不要となる。
【0006】また、他の高信頼化技術としては、特開平
1−154240号公報及び特開平1−154241号
公報に記載の二重レールプロセッサがある。ここには、
2つのプロセッサから伸びるデータパス(二重レール)
にメモリなどの共有リソースを接続して、共有リソース
の入り口で2つのデータバスからの信号を比較してエラ
ーを検出可能な基本データ処理装置を1組(2台)準備
し、そして、この1組のデータ処理装置で共有される入
出力装置には、入り口に比較によるエラー検出手段を持
つ、高信頼な計算機構成法が示されている。
【0007】また、さらに他の高信頼化技術としては、
特開平4−241039号公報に記載のコンピュータシ
ステムがある。これは、障害時の取替え単位である各々
の配線基板上に構成されるプロセッサユニット(BP
U)自体にフォールトトレランス機能を持たせたもので
ある。BPU内で障害が発生しても、フォールトトレラ
ンス機能により次の「切りの良い時点」(以下便宜上チ
ェックポイントと呼ぶ)まで正常動作を継続し、チェッ
クポイントで他のBPUに処理を引き継ぐものである。
この場合、「切りの良い時点」(チェックポイント)は
例えばタスク切替えの時点などに設定するのが適当であ
るとする。このように、BPU内で障害が発生しても次
のチェックポイントまで正常動作を継続させるために、
BPUを構成する各要素を多重化(冗長化)し、正常な要
素を組み合わせて動作を継続させる。パリティチェック
などにより障害検出が可能なキャッシュメモリなどは2
重化し、正常なキャッシュメモリを選択して用いる。M
PUに汎用品を用いる場合はMPUにチェック機能を持
たせることはできないので、MPUの出力信号を比較照
合して正常異常を判断し、正常なものを選択して用いる
ために3重化又は4重化する。
【0008】このようにして、取替え単位である各々の
配線基板上に構成されるBPU自体が内部で障害が発生
しても次のチェックポイントまで処理を継続できるの
で、障害発生時のチェックポイントリスタートに備えて
チェックポイント時点の状態を保存する動作による処理
性能の低下が皆無となる。しかもペアとなるBPUが不
要であるので、別々のBPU間のクロック同期のための
信号線は不要となり、クロックの高速化が可能となる。
また、取替え単位を構成するMPUが同一クロックで動
作するので、MPU間の同期のための特別な動作が不要
となり、このための処理性能の低下がない。
【0009】以上の従来技術は、いづれもソフトウエア
実行に必要な最小限の環境であるプロセッサとメモリを
多重化し、これらの部分に障害が発生したときにはハー
ドウエアで障害部位を切り離して、プログラムの継続を
保証しようとするものである。つまりプログラムから
は、プロセッサとメモリ部分の障害が全く見えない(透
過)ことを実現するものであり、高信頼化システム構築
のための特殊なプログラミングを軽減するための重要技
術である。
【0010】そして、入出力装置の高信頼化に関して
は、先のPair and spare法と呼ばれる方式では、自己
診断機能のある入出力装置からなる配線基板2枚を1組
にして動作させており、片方の配線基板上の回路でフォ
ールトが生じた場合には、もう一方の配線基板上の回路
で処理を動作を続けることが可能である。この方式によ
れば、フォールト発生時でも動作が続けられるので入出
力処理においても、チェックポイントリスタート(chek
point restart)と呼ばれるフォールト発生時点以前の
チェックポイントからの処理のやりなおし動作が不要で
あるが、特別な入出力装置が必要である。
【0011】また、特開平1−154240号公報及び
特開平1−154241号公報に記載の方式は、1組の
データ処理装置で共有される入出力装置には、入り口に
比較によるエラー検出手段を持ち、故障が検出された場
合には故障の特性を確認し、動作を続行できないと判断
すれば該当入出力装置をシステムから切り離し、動作を
続行できると判断すれば該当入出力装置を故障処理ルー
チンを行うことにより該当入出力装置を故障から回復さ
せていた。この方式でも特別な入出力装置が必要であ
り、入出力装置が動作を続行できないと判断された場合
には該当入出力装置をシステムから切り離され、処理が
続行できないという欠点があった。
【0012】
【発明が解決しようとする課題】上述の従来技術のもの
は、一般に流通している汎用プロセッサを用いて、その
周辺回路に特別な工夫を行って多重化したCPUを実現
しており、同じ汎用プロセッサを用いた通常のデータ処
理装置やワークステーションやパーソナルコンピュータ
と比較すると、コストの増大やハードウエア・ソフトウ
エアのオーバヘッドの増大が避けられないものとなって
いる。
【0013】特に近年、汎用プロセッサは急激に性能を
向上させており、この高速プロセッサを用いた通常のデ
ータ処理装置やワークステーションやパーソナルコンピ
ュータの開発速度は早まる一方である。このことは、同
じプロセッサを用いても特別な周辺回路を必要とする高
信頼化計算機と通常のデータ処理装置やワークステーシ
ョンやパーソナルコンピュータとの性能価格差がさらに
開いていく問題が、内在することを意味する。
【0014】具体的には、従来のPair and spare法と
呼ばれる方式や、特開平1−154240号公報及び特
開平1−154241号公報に示される方式は、入出力
装置の高信頼化のために特別のハードウエアを開発する
必要があった。しかしながら、通常のデータ処理装置や
ワークステーションやパーソナルコンピュータで用いら
れている高速プロセッサと入出力装置をそのまま組み合
わせるだけでは、プロセッサや入出力装置の高信頼化は
図れない。特に、問題となるのは、次の点である。
【0015】(1)通常のデータ処理装置やワークステ
ーションやパーソナルコンピュータで用いられている超
高速プロセッサでは、IOアクセス命令によるIOアク
セスはプログラムの命令実行に対し非同期に実行される
ものがあり、IOアクセスで障害が発生し障害が報告さ
れた時にはプログラムは障害の発生したIOアクセス命
令よりもずっと先の命令を実行している。
【0016】(2)通常のデータ処理装置やワークステ
ーションやパーソナルコンピュータで用いられている入
出力装置は一般に二重化構成になっていない。そのた
め、入出力装置をデータ処理装置に2個接続し、入出力
デバイスを2個の入出力装置に接続し、片方の入出力装
置に障害が発生した場合にはデータ処理装置からの指示
により該当入出力装置を切り離し、他方の入出力装置を
使用する構成を採用できる。しかし、この場合には入出
力装置自体や入出力バスに障害が発生した場合にも、障
害の発生した入出力装置と入出力デバイスの接続を解除
する手段が必須である。
【0017】本発明の目的は、一般に流通している汎用
プロセッサを用いて、且つ、特殊な周辺回路を大量に用
いることなく、汎用計算機と共通性が高く、汎用計算機
と共同開発可能で性能価格性の高い高信頼化コンピュー
タシステムを実現することにある。
【0018】
【課題を解決するための手段】図1に、本発明にかかる
コンピュータシステムの基本構成の概念図を示す。これ
は、CPU系とIOバス系をいずれも一重構成とする最
も簡単なシステム構成を示すものである。図において、
1はプロセッサやメモリ及びこれらの周辺制御回路を有
する中央処理装置(CPU)である。20は入出力バス
(IOバス)であり、配下に入出力バスアダプタ(IO
BA)30を介して、ディスク装置(DKU)や回線プ
ロセッサ(LP)及びその他のデバイス、さらにLAN
等の他の回線網などが接続されている。このCPU1と
IOBA20との間に、接続装置2を設置する。これが
二重システムバスアダプタ(DSBA;Dual System
Bus Adapter)である。ただし、図1はCPU系とI
Oバス系がいずれも一重構成であるため、DSBAは一
重接続装置として動作する。
【0019】DSBAは、CPU1からIOBA20へ
のアクセスを監視して、該アクセスが正常終了しない場
合にCPU1へアクセス異常を報告する。また、該DS
BAは、正常終了しないアクセスがリードアクセスであ
る場合は固定パターンデータをCPU1へ返送する。C
PU1は、IOリードアクセスを発行し、そのリードデ
ータが固定パターンの場合、IO側で障害が発生したと
認識する。これにより、CPU1では、異ったデータが
入力され、そのデータを用いてCPU1がメモリ等のシ
ステムリソースを破壊するのを回避できる。
【0020】図2は、CPU系は一重構成で、IOバス
系のみ二重構成(A系、B系と称す)とした場合の本発
明コンピュータシステムの概念図である。図において、
CPU1は図1の場合と同様である。20AはA系のI
OBA(IOBA−A)で、IOバス30Aに接続さ
れ、20BはB系のIOBA(IOBA−B)で、IO
バスバス30Bに接続される。入出力デバイス(DK
U、LPなど)はA系とB系の両方のIOバス30A、
30Bに物理接続される。接続装置2はDSBA−Aと
DSBA−Bで構成し、DSBA−AはIOBA20A
に、DSBA−BはIOBA20Bにそれぞれ接続す
る。CPU1はDSBA−AとDSBA−Bの両方に接
続される。なお、DSBAを一台とし、そのIOバスの
入出力ボートのみを2組用意して、それぞれDSBA2
0A、DSBA20Bに接続することでもよい。
【0021】DSBA(DSBA−A DSBA−B)
は、CPU1からIOBA20AあるいはIOBA20
Bへのアクセスを監視して、当該アクセスが正常終了し
ない場合にCPU1へ当該アクセス異常を報告し、さら
に、正常終了しないアクセスがリードアクセスである場
合は固定パターンデータをCPU1へ返送する。CPU
1は、A系あるいはB系のIOリードアクセスを発行
し、そのリードデータが固定パターンの場合、該当、I
Oバス系で障害が発生したと認識する。A系あるいはB
系のIOBAやIOバスで障害が発生した場合、DSB
Aは、CPU1からの指示により、該障害の発生した側
のIOバスと入出力デバイスとの論理接続を切り離す。
これにより、CPU1は、障害の発生していない側のI
Oバスを使用して、入出力デバイスでの処理を継続でき
る。
【0022】図3は、CPU系とIOバス系の両方を二
重化構成(A系、B系と称す)とした場合の本発明コン
ピュータシステムの概念図である。図において、1Aは
A系のCPU(CPU−A)、1BはB系のCPU(C
PU−B)である。CPU1AとCPU1Bは、通常稼
働時には同一周波数/位相のクロックに同期して同一プ
ログラムを同一順序で実行する。IOバス系は図2と同
じであり、IOBA20AとIOバス30Aの側がA
系、IOBA20BとIOバス30Bの側がB系を構成
している。接続装置2は、DSBAp−AとDSBAs
−Bが第1の組のDSBA(第1の二重化接続装置)、
DSBAp−BとDSBAs−Aが第2の組のDSBA
(第2の二重化接続装置)を構成している。ここで、D
SBAp−AとDSBAp−BをプライマリDSBAと
称し、DSBAs−AとDSBAs−BをセカンダリD
SBAと称す。
【0023】プライマリDSBAp−AとセカンダリD
SBAs−Bは、それぞれCPU1Aと1Bから同時に
A系に対するI/Oアクセスを受け取るが、プライマリ
DSBAp−AだけがそれをIOBA20Aに伝える。
また、IOBA20Aからの応答はDSBAp−AとD
SBAs−Bの両方で受け取り、それぞれCPU1Aと
1Bに伝える。同様に、プライマリDSBApとセカン
ダリDSBAs−Aでは、それぞれCPU1Aと1Bか
ら同時にB系に対するIOアクセスを受け取るが、DS
BAp−BだけがそれをIOBA20Bに伝え、該IO
BA20Bからの応答はDSBAp−B、DSBAs−
Aの両方で受け取ってそれぞれCPU1Aと1Bに伝え
る。
【0024】これは、CPU1Aと1Bの両方が正常な
場合であるが、例えばCPU1Aが故障した場合は、セ
カンダリDSBAs−Bが、CPU1BからのA系に対
するIOアクセスをIOBA20Aに伝え、該IOBA
20Aからの応答をCPU1Bに伝える。プライマリD
SBAp−Bが、CPU1BからのB系に対するIOア
クセスをIOBA20Bに伝え、該IOBA20Bから
の応答をCPU1Bに伝えることは、CPU1Aの正常
/故障にかかわらず同じである。同様にして、CPU1
Bが故障した場合は、DSBAp−AとDSBAs−A
が正常なCPU1AとA系、B系のIOバス間の通信を
それぞれ受け持つ。これにより、正常なCPUによって
A系およびB系の両方のIOアクセスの処理を継続でき
る。
【0025】接続装置2を構成するプライマリやセカン
ダリの各DSBAは、図1や図2のDSBAと同様に、
CPU1Aあるいは1BからのIOBA20Aあるいは
20Bへのアクセスを監視して、当該アクセスが正常終
了しない場合にCPU1Aあるいは1Bへ当該アクセス
異常を報告し、さらには、正常終了しないアクセスがリ
ードアクセスである場合は固定パターンデータをCPU
1Aあるいは1Bへ返送する。CPU1Aあるいは1B
は、これによりA系あるいはB系で障害が発生したこと
を認識する。
【0026】例えば、A系のIOBA20AやIOバス
30Aで障害が発生した場合、CPU1AがDSBAp
−Aに指示し、該DSBAp−AがIOバス30Aとそ
の入出力デバイスとの論理接続を切り離す。以後は、障
害の発生していない側のIOBA20BとIOバス30
Bを使用して、入出力デバイスの処理を継続する。この
場合、セカンダリDSBAs−AとプライマリDSBA
p−Bが、それぞれCPU1Aと1Bから同時にB系の
IOアクセスを受け取るが、プライマリDSBAp−B
だけがそれをIOBA20Bに伝え、IOBA20Bか
らの応答はDSBAp−BとDSBAs−Aの両方で受
け取り、それぞれCPU1Aと1Bに伝える。これは、
CPU1Aと1Bの両方が正常な場合と同じである。
【0027】図3のシステム構成は、ハードウエアの1
点故障に対する高信頼性を実現するために全てのハード
ウエアを2重化するものである。ここで、エラー検出能
力を持ち、切り離しの単位となるものをブロックと呼ぶ
ことにする。図1乃至図3に示したように、一般に3種
類のブロックに分かれるが、図3の構成では、各ブロッ
クはA系・B系で2重化されているので、合計6ブロッ
クある。
【0028】図3の構成での故障に対する動作の上での
特徴的な点は、多重化されたブロックの切り離しをハー
ドウエアとソフトウエアで分担していることにある。つ
まり、CPUブロック(プロセッサ、メモリ、システム
バス、DSBAなど)は、ハードウエアで二重化接続を
行い、IOバスブロック(IOBA、IOバス、IO
A、LANCなど)とデバイスブロック(DKU、L
P、LANなど)は、ソフトウエアによって二重化接続
を行う点である。CPUブロック内で検出されるエラー
については、ハードウエアで当該ブロックの切り離しを
行い、IOバスブロックおよびデバイスブロックで検出
されるエラーについては、ソフトウエアで当該ブロック
の切り離しを行って、残った正常系による処理を継続す
る。従って、入出力バスを制御するソフトウエアから見
ると、独立したアドレスを持つA系、B系の2つの入出
力バスが存在しており、どちらの入出力バスが正常かを
示すフラグをメモりに持って、このフラグに従って2つ
の入出力バスとデバイスを組み合わせて使う事によっ
て、IO系の1点故障に対しても連続稼働が実現でき
る。
【0029】
【作用】DSBAがアクセスを監視する手段と、リード
アクセスが正常終了しない場合に固定パターンのデータ
をCPUに返送する手段を具備しているため、CPUは
プログラムによりそのチエックを行うことによって、入
出力装置側に障害が発生したときにも、入出力装置側の
障害がCPUに波及することを防止できる。さらに、D
SBAが入出力バス系と入出力デバイスとの論理接続を
強制的に切り離す手段を有しているため、障害の発生し
た入出力バス系を確実に切り離すことができる。また、
DSBAをCPUのような非常に高速で高度な実装技術
が要求される部分に設けるのではなく、入出力装置側と
の低速なインタフェイス部分に設けることで、システム
性能を劣化させることなく、CPUと入出力装置側を通
常のデータ処理装置やワークステーションやパーソナル
コンピュータと共通化出来る。
【0030】
【実施例】以下、本発明の実施例について詳述する。な
お、以下の実施例では、図1乃至図3のうちで最も複雑
である図3の完全二重化システムのケースについて示
す。図1あるいは図2のケースは、基本的に図3のケー
スの一部構成や一部機能を省略することで実現可能であ
る。
【0031】図4は、本発明の一実施例にかかる完全二
重化構成の高信頼化コンピュータシステムの外観を示
す。図において、(a)は前面、(b)は裏面である。
200Aと200BはCPU−BOXであり、それぞれ
プロセッサやメモりを含んでいる。このCPU−BOX
と並べて、それぞれA系とB系のDSBA−CARD2
01、201Bを配置する。202Aと202BはIO
BA、IOA、その他のIO−CARD、203Aと2
03Bはディスク装置である。このディスク装置は、信
頼性を向上させるために必要に応じてミラーディスク構
成を採る事が出来る。204Aと204Bは電源であ
り、それぞれA系とB系に電源を供給する。205Aと
205Bは冷却ファンであり、それぞれA系とB系の冷
却を行う。
【0032】この様に、システムの稼働に必要なハード
ウエアを全て2重化する事によって、ハードウエアの一
点故障が発生しても、障害モジュールを切り離すことに
よって連続稼働を実現できる。また、図4の様な装置実
装を採る事によって、A・B系を物理的に分離できるの
で、2重化形態が明確になり、保守作業時のヒューマン
エラーを減らし、また、バックボード清掃などの重点検
も可能となる。
【0033】図5に、図3で示したシステム構成の概念
図のより詳細なブロック図を示す。図において、左半分
はA系、右半分はB系であるが、これらは全く同じ構成
なので、ここでは、左半分のA系部分を中心に説明す
る。
【0034】中央処理装置(CPU)1Aはプロセッサ
3A及び4A、メモリ5A、プロセッサメモリ制御ユニ
ット6A、プロセッサ間インタフェイス制御装置7A、
クロック回路8A、システムバス9Aからなる。プロセ
ッサ(MPU)3A及び4Aは全く同一のキャッシュメ
モリを内蔵し、通常は全く同じ動作を行う。即ち、プロ
セッサ自体、ここでは二重化構成をとる。メモリ(M
S)5Aは命令やデータを格納する。該メモリその容量
や構成は当業者周知の様々なものが有るが、いずれの場
合も本発明の実施にあたっては問題とならないので、こ
こでは詳しく述べない。プロセッサメモリ制御ユニット
(PMCU)6Aは、プロセッサ3A及び4Aとメモリ
5Aとシステムバス9Aを接続し、主にプロセッサ3A
または4Aからのアクセスをメモリ5Aやシステムバス
9Aに伝えたり、システムバス9Aからのアクセスをメ
モリ5Aに伝えたりする。さらに、プロセッサ3Aと4
Aの出力信号500と501を比較して、2つのプロセ
ッサの出力不一致を調べてプロセッサ内の故障を検出す
る。プロセッサ間インタフェイス制御装置(PXI)7
Aは、CPU1AとCPU1B間で信号線(PXIバ
ス)57を介して、CPU状態などの情報を受け渡すた
めの制御を行う。クロック回路(CLK)8Aは発振器
を有し、信号線55を介してB系のクロック回路8Bと
協調して、同一周波数/位相のクロックをA全体にクロ
ックタイミング信号を供給する。また、クロック回路8
Aは発振器の停止検出回路を有している。
【0035】接続装置2は、A系とB系のCPUとIO
BAを接続するDS(Dual System)バスを制御する多
重システムバスアダプタ(DSBA)である。本実施例
では、接続装置2は4組のDSBAで構成されており、
それぞれDSBAp11AとDSBAs11B、DSB
As12AとDSBAp12B、DSBAp13AとD
SBAs13B、DSBAs14AとDSBAp14B
が組となっている。ここで、DSBAp11AとDSB
As11Bの組がA系のIOバスに接続され、DSBA
p12とDSBAs12Aの組がB系のIOバスに接続
される。他の組についても同様である。各組の動作は同
じなので、ここでは、DSBApA11AとDSBAs
11Bの組について説明する。DSBAp11Aはプラ
イマリDSBAと定義され、DSBAs11Bはセカン
ダリDSBAと定義される。図3で説明したように、プ
ライマリDSBAとセカンダリDSBAは、それぞれC
PU1AとCPU1Bから同時にIOバスアクセスを受
けるが、通常はプライマリDSBAだけが、IOバスに
対してそのCPUアクセスを伝える。そして、DSバス
からのアクセスは、プライマリDSBAとセカンダリD
SBAが同時に受けて、それぞれCPU1AとCPU1
Bに同じタイミングで伝える。16は、DSバスのA系
側15AとB系側15Bの接続/分離を行うバススイッ
チであり、遅延ディレイの少ないC−MOSプロセスで
製造されたMOSスイッチが好ましい。バススイッチ1
6は通常ではオンラインとしておくが、これを切ること
により、A系とB系間が論理的にも電気的にも分離でき
るので、オンライン動作状態での部品交換がやりやすく
なる。なお、このバススイッチ16のオン/オフはマニ
アル、コマンドのいずれも可能とする。17AAと17
ABは入出力バスと入出力デバイスを論理的に切り離す
ための信号線である。
【0036】20Aと21Aは、DSバスのA系側と入
出力バスを接続する入出力バスアダプタ(IOBA)で
ある。本実施例では、IOBA20Aには入出力バス
(IOバス)30Aが接続され、該IOバス30Aに、
それぞれ入出力アダプタ(IOA)31A、35Aを介
して、SCSI(Small Computer System Inerfac
e)バスに代表される標準的な入出力装置バス32A、
33A、36A、37Aが接続され、これら入出力装置
バスにディスク装置34A、34B、ラインプロセッサ
(LP)38A、38Bが接続されている。ディスク装
置34Aと34Bは、例えばソフトウエアでミラーディ
スク構成を採用することができるが、他の高信頼なディ
スク構成採用することでもよい。ラインプロセッサ(L
P)38A、38Bには所謂ラインコントローラ(L
C)を介して一般通信回線が接続される。さらに、IO
バス30Aには、イーサネット(Ethernet)やFDD
Iに代表されるローカルエリアネットワーク(LAN)
を接続するローカルエリアネットワーク制御装置(LA
NC)が接続される。なお、これらのディスク装置、ラ
インプロセッサ、LANは、同様にB系のIOバス30
Bにも接続されている。
【0037】本実施例で注意すべきことは、ソフトウエ
アからは、IOBA20Aと20Bは異なったアドレス
を持ったIOバスプロックと認識され、また、入出力装
置が、ソフトウエアからはそれぞれ異なった入出力装置
と認識されることである。従って、ソフトウエアの設定
だけで様々なグレードを持った高信頼計算機システムが
実現できる。例えば、図5では全ての入出力バスと入出
力装置を2重化した例を示しているが、システム上で重
要性の少ない入出力装置を1重化することによって、シ
ステムのコストを下げるなど、柔軟な対応が可能とな
る。あるいは、非常に重要なデータを格納したディスク
等を4重化するなどの対応も可能となる。
【0038】以下に、図5の実施例における主要部分の
具体的構成例を示す。 〈プロセッサメモリ制御ユニット(PMCU)〉図6に
PMCUの具体的ブロック図を示す。PMCU6Aと6
Bは全く同じ構成であるので、ここではCPU1A側の
PMCU6Aを取り上げて説明する。PMCU6Aは、
大きくプロセッサインタフェイスユニット(PIU)4
0、メモリインタフェイスユニット(MIU)41、シ
ステムバスインタフェイスユニット(SBIU)42及
びプロセッサ出力比較器44にわかれる。
【0039】PIU40は、プロセッサ3Aと4Aとの
インタフェイスユニット(PIU)であり、プロセッサ
の外部アクセスがメモリアクセスのときは、マスタプロ
セッサ(3Aとする)からのメモリアドレスやデータを
信号線500を介して受信バッファ47に取り込み、プ
ロセッサの外部アクセスが入出力バスへのアクセス(P
IOアクセス)のときは、メモリアドレスやデータを受
信バッファ46に格納する。一方、スレーブプロセッサ
(4Aとする)からのメモリアドレスやデータは、信号
線501介して該PMCU6Aに取り込まれるが、受信
バッファ46や47には格納されない。マスタ及びスレ
ーブプロセッサ3A、4Aからのアドレスやデータや制
御信号は、マスタプロセッサ3Aが書き込みアクセスを
出力したとき、プロセッサ出力比較器44で比較され
る。そして値が不一致の時、マスタ・フレーブエラー信
号400がアサートされる。また、このPIU40の動
作中に検出されるパリティエラーや制御回路のエラーな
どは、信号線401を介して論理和素子43に伝えられ
る。
【0040】MIU41は、PIU40からのメモリア
クセスと後述のSBIU42からのDMAアクセスをセ
レクタ506で受け、信号線503を介してメモリ5A
をアクセスし、応答をそれぞれPIU40あるいはSB
IUに返す。MIU41がPIU40から受けるアクセ
スは、メモリリードとメモリライトである。メモリリー
ドのときには、受信バッファ47に格納されたリードア
ドレスがセレクタ506を介して、メモリ5Aに伝えら
れる。そして、メモリ5Aから読み出されたデータは、
セレクタ505を介して、送信バッファ48に格納さ
れ、マスタ・スレーブプロセッサ3Aと4Aに返され
る。メモリライトのときには、受信バッファ47に格納
されたリードアドレスとライトデータがセレクタ506
を介して、メモリ5Aに書き込まれる。MIU41がS
BIU42から受けるアクセスは、DMAリードとDM
Aライトである。DMAリードのときには、受信バッフ
ァ50に格納されたリードアドレスがセレクタ506を
介して、メモリ5Aに伝えられる。そして、メモリ5A
から読み出されたデータは、送信バッファ49に格納さ
れ、システムバス9Aを介して入出力バス側に返され
る。DMAライトのときには、受信バッファ50に格納
されたリードアドレスとライトデータがセレクタ506
を介して、メモリ5Aに書き込まれる。セレクタ506
の制御方法は、ここでは示していないが、SBIU42
側を優先することが望ましい。このMIU41の動作中
に検出されるパリティエラーや制御回路のエラーなど
は、信号線402を介して論理和素子43に伝えられ
る。MSアクセスモニタ45は、メモリコピー(詳細は
後述)の時に正常系のMIUが行うメモリへのリード・
ライトアクセスを監視して、必要に応じてアドレスとデ
ータを取り込むものである。この取り込んだアドレスと
データは、信号線504を介してメモリコピーアクセス
としてシステムバス94Aに出力されて、組みとなって
いるDSBAを経由して、他系のメモリに書き込まれ
る。
【0041】SBIU42は、システムバス9Aからの
DMAアクセスとPIU47からのPIOアクセスを処
理する。PIU40からのPIOリードアクセスのとき
は、システムバス権を獲得後、受信バッファ46に格納
されたアドレスをセレクタ50を介してシステムバス9
Aに出力する。そして、入出力デバイスなどからのリー
ドデータは、セレクタ505を介して、送信バッファ4
8に格納され、マスタ・スレーブプロセッサ3Aと4A
に返される。PIU40からのPIOライトのときに
は、同様にシステムバス権を獲得後、受信バッファ46
に格納されたリードアドレスとライトデータをセレクタ
507を介してシステムバス9Aに出力する。システム
バス9AからのDMAリード・ライトアクセスのときの
動作は、MIU41で述べた通りである。このSBIU
42の動作中にパリティエラーや制御回路のエラーなど
が検出されたときは、信号線403を介して、論理和素
子43に伝えられる。
【0042】論理和素子43は、当該PMCU64の動
作中に何等かのエラーが検出されると、即ち、信号線4
00〜403のいずれか一つでも“1”となると、信号
線(PMCU−ERR)95Aをアサートして、プロセ
ッサ間インタフェイス制御装置(PXI)7Aに伝え
る。
【0043】〈クロック回路(CLK)〉図7に両CP
U1Aと1Bクロック回路8A、8Bの内部構成例と接
続関係を示す。クロック回路自体は8Aと8Bとも同じ
なので、ここでは8Aについて説明する。50Aは水晶
発信器を内蔵する当業者周知のオシレータ(OSC)で
あり、10MHzなどの比較的低い周波数のクロック5
01Aを出力する。OSC50Aの周波数を低く設定す
ることによって、図4に示したようなA系とB系のCP
Uの間が数10センチメートル離れる実装を行っても、
安定したクロックを両方の系に供給できる。51Aは、
自系のOSC50Aからのクロックと他系のOSC50
Bからのクロックを選択するセレクタ(SEL)であ
る。52Aは、フェーズロックループ回路(PLL)で
あり、SEL51Aで選択されたクロックと位相の合っ
たn倍周波数のクロック54Aを生成して、プロセッサ
や周辺回路に必要な高周波数クロックを供給する。53
Aは、両OSC50A、50Bの停止検出回路であり、
クロ粘ク501Aあるいは501Bの発信停止を検出す
ると、制御信号56Aによって、セレクタ51Aが正常
なOSCの出力を選択するように制御する。OSC50
Aと50Bは、最初に電源の入った方をクロックマスタ
とするマスタ・スレーブ動作を行う。例えば、A系が先
に立ち上がったとすれば、OSC50Aがクロックマス
タとなり、セレクタ51Aと51Bは、いづれもクロッ
ク501Aを選択する。そして、OSC50Aが停止し
たときには、これを停止検出回路51Aと51Bでそれ
ぞれ検出して、セレクタ51A、51Bがクロック50
1Bを選択するように動作する。この切替動作を、PL
L引き込み時間よりも小さい、例えば300ns程度の
短い時間で行うことにより、クロックが切り替わって
も、両方のPLL52A、52Bの出力は途切れること
なくプロセッサや周辺回路にクロックを供給できる。
【0044】〈多重システムバスアダプタ(DSB
A)〉図8乃至図14を用いて、2つのCPUと1つの
入出力バスを接続する接続装置すなわち多重システムバ
スアダプタ(DSBA)を説明する。
【0045】図8に、DSBAによる2重化システムバ
ス(DSバス)制御まわりに焦点を当てた構成を示す。
ここでは、図5の実施例においてCPU1A、1BとA
系の入出力バス30Aの接続に関す与するDSBAp1
1AとDSBAs11Bの組について説明するが、他の
DSBAの組の場合も同じである。DSBAp11Aは
プライマリDSBAと定義され、DSBAs11Bはセ
カンダリDSBAと定義される。2つのDSBAp11A
とDSBAs11Bは、それぞれCPU1Aと1Bから
同時にIODSバスアクセスを受けるが、DSBAp1
1Aだけが、DSBA20Aに対してそのCPUアクセ
スを伝える。そして、DSBA20Aからのアクセス
は、DSバスを介してDSBAp11AとDSBAs1
1Bが同時に受けて、それぞれのCPU1AとCPU1
Bに同じタイミングで伝える。つまり、DSBAは、C
PUからのアクセスに対してはセレクタを形成し、IO
バスからのアクセス(応答)に対してはディストリビュ
ータの役割をする。
【0046】ところで、CPU1AとCPU1Bは、正
常時には同じ動作をしているが、何等かの障害が発生す
ると同期がずれてくる。この同期ずれは、2つのCPU
が1つのDSバス15Aにアクセスするときに顕在化す
る。DSBAp11AとDSBAs11Bは、この同期
ずれをDSBA間インタフェイス60を介して検出し、
片系障害時に障害系CPUブロックを切り離すタイミン
グを生成する。図9に、DSBA間インタフェイス60
の信号の一例を示す。61Aと61Bは、それぞれCP
U1Aと1Bからのシステムバス使用許可信号であり、
62Aと63Bは、それぞれDSBAが生成するシステ
ムバス要求信号である。63Aと63Bは、それぞれの
DSBA内でエラーを検出したことを示すエラー信号で
ある。次の図10のDSBAの具体的構成例では、DS
BA間インタフェイス60にパリティビットなどのエラ
ー検出符号を付加していないが、図9に示すように、必
要に応じて付加できることは明かである。
【0047】図10に、DSBAp11Aの内部構成例
を示す。DSBAはプライマリかセカンダリによって動
作は異なるが、全て同じハードウエアで実現できるの
で、ここでは、A系CPU1Aに接続されるプライマリ
DSBAp11Aを例に説明する。
【0048】システムバス9Aの信号は、データ/アド
レス信号751とリード/ライトなどの制御信号752
を含んでいる。同様にDSバス15Aの信号は、データ
/アドレス信号753と制御信号754を含んでいる。
受信バッファ73はシステムバス9Aからのアドレスや
データを格納するバッファ、送信バッファ74はDSバ
ス15Aからのアドレスやデータを格納するバッファで
ある。DSBAが処理するアクセスは、CPUから入出
力装置へのアクセス(PIOリードアクセスとPIOラ
イトアクセス)、入出力装置側からメモリへのアクセス
(DMAリードアクセスとDMAライトアクセス)であ
る。PIOリードアクセスの時は、信号線751上のリ
ードアドレスを受信バッファ73に格納し、このアドレ
スをDSバス15Aに送出する。そして、入出力装置側
から読み出されたデータは、送信バッファ74に一旦格
納された後、信号線751を介してCPUに伝えられ
る。PIOライトアクセスの時には、信号線751上の
ライトアドレスとライトデータを受信バッファ73に格
納し、これをDSバス15Aに送出する。そして、この
データは、アドレスで示される入出力装置に書き込まれ
る。一方、DMAリードアクセスの時は、信号線753
上のリードアドレスを送信バッファ74に格納し、この
アドレスを用いてメモリ(MS)をアクセスする。そし
て、メモリから読み出されたデータは、受信バッファ7
3に一旦格納された後、DSバス9Aに送出する。PM
CUは、を介してDMAアクセス元に返される。DMA
ライトアクセスの時には、信号線753上のライトアド
レスとライトデータを送信バッファ74に格納し、シス
テムバス9Aに送出する。PMCUは、このアドレスを
用いてデータをメモリに書き込む。
【0049】送受信制御部71は、制御信号752、7
54を取り込み、バッファ73、74を管理して、シス
テムバス9AあるいはDSバス15Aへのアドレスやデ
ータの送出を制御する部分である。この送受制御部71
は、DSバス15A上のアクセスを監視し、アクセスが
正常終了しない場合には割り込みトランザクションのデ
ータパターン77をシステムバス9Aに送出することに
より、CPU1Aにアクセス異常を報告する。また、そ
の正常終了しないアクセスがリードアクセスである場合
には、割り込みトランザクションのデータパターン77
をシステムバス9Aに送出したうえで、固定パターンの
データ78をシステムバス9Aに送出することにより、
CPU1Aにリターンデータとして返送する。CPU1
A内のプロセッサ上で動作するプログラムは、IOアク
セス命令の正常終了を確認すべき場合にはIOリードア
クセスを発行し、リードデータが固定パターンと一致す
るか否かを比較することにより障害の発生を認識でき、
かつ、誤データが入力されて、そのデータを用いて命令
実行する事による両系メモリをプログラムにより破壊す
ることを回避できる。ちなみに、このDSバス15A上
のアクセスの監視は、DSバスのパリティエラー等のア
クセス時に即座に発生するもののみならず、PIOリー
ドのタイムアウト検出等も含む。特にPIOリードのタ
イムアウト検出を行うことは重要である。なぜなら、入
出力装置等の故障によるIOアクセスの異常終了に対
し、DSBAにて固定パターンのデータ78をCPU1
Aにリターンデータとして返送することにより、システ
ムダウンを防止しているからである。 IO空間畳込み
回路76は、受信バッファ73に格納されたPIOアク
セスのアドレスを当該DSBA配下の入出力アダプタあ
るいは入出力装置内のアドレスに変換する回路である。
フラグ771は、IO空間畳込み回路76の出力を有効
とするかの選択を指示するフラグであり、DSBA内の
制御レジスタの一つとして、該DSBAと対になるDS
BAが故障したときにソフトウエアによって設定され
る。
【0050】本実施例に於ては、2重化された入出力装
置の制御をすべてソフトウエアで行う場合を中心に説明
しているが、上記IO空間畳込み回路76を用いること
によって、入出力装置を切り替えてもソフトウエア(た
とえばデバイスドライバなど)に対してのアドレスをか
えずに済むため、2重化制御の負担を減らすことが可能
になる。
【0051】コマンド解析/実行回路79は、DSBA
のレジスタ空間へのPIOライトとして、CPUからD
SBAへ指示されるコマンドを解析し、実行する回路で
ある。当該DSBAp11Aの場合には、CPU1Aか
ら入出力アダプタ31A、35A、39Aと入出力デバ
イスとの論理接続を切り離す指示コマンドを受領する
と、コマンド解析/実行回路79は入出力アダプタ31
A、35A、39Aに対し、切離し信号線17AAをオ
ンにする。DSBAs11Bの場合にも、CPU1Bか
ら入出力アダプタ31A、35A、39Aと入出力デバ
イスとの論理接続を切り離す指示コマンドを受領する
と、切離し信号線17ABをオンにし、これを切離し信
号線17AAに伝える。また、図5において、DSBA
s12Aの場合には、CPU1Aから入出力アダプタ3
1B、35B、39Bと入出力デバイスとの論理接続を
切り離す指示コマンドを受領すると、切離し信号線17
BAをオンにし、これを切離し信号線17BBに伝え、
入出力装置31B、35B、39Bを切り離す。DSB
Ap12Bの場合には、CPUBから入出力アダプタ3
1B、35B、39Bと入出力デバイスとの論理接続を
切り離す指示コマンドを受領すると、入出力アダプタ3
1B、35B、39Bに対し、切離し信号線17BBを
オンにする。この切離し制御指示のコマンドとその切離
し信号線は、各入出力アダプタ毎に個別であることが望
ましいが、入出力装置31A、35A、39A、および
入出力アダプタ31B、35B、39Bに対し、グルー
ピングされていてもかまわない。
【0052】なお、図5に示すように、切離し信号線1
7AA、17BBは、入出力バス信号線(15A、15
B、30A、30B等)とは別線であり、入出力アダプ
タ側も該切離し信号線のオンにより強制的に入出力デバ
イスとの論理接続を切り離す回路を含むことにより、入
出力バスや入出力アダプタに障害が発生した場合、確実
に入出力デバイスとの論理接続を切り離すことが可能と
なり、この故障の発生した入出力装置とペアの入出力ア
ダプタと入出力デバイスを確実に接続することにより、
入出力デバイスでの処理を確実に継続できる。
【0053】この切離し制御は、特にFDDIのLAN
に接続しているLANCには重要である。LANCの故
障時には、故障したLANCを切り離し、ペアのLAN
Cを故障したLANCと同一のMACアドレスでFDD
Iに加入させる。これはMACアドレスを引き継ぐこと
により、通信相手からLANCの故障による切り替えを
意識させないためである。しかし、FDDIにはMAC
アドレスの重複チェック機構があるため、故障したLA
NCをFDDIから離脱させないと、切り替えたLAN
CのFDDIへの加入が成功しない。そのため、LAN
Cは切離し信号線による指示を契機にLANC全体をリ
セットし、光信号の送出を停止することにより、FDD
Iから離脱する。この動作例については後述する。
【0054】また、ディスク装置用の入出力アダプタ、
回線制御装置用の入出力アダプタに関する切離し制御で
は、切離し信号線による指示を契機に当該入出力アダプ
タ(IOA)をリセットすることにより、それ以降、障
害の発生したIOAから入出力デバイスへのアクセスを
停止させて、別系に切り替えたIOAからの入出力デバ
イスへのアクセスが妨害されことを防止する。なお、入
出力デバイスによっては、この切離し信号線による指示
を契機にIOAをリセットするとともに、それに接続さ
れる入出力デバイスをもリセットした方が好ましいもの
もある。これは、各系で切離し信号線を複数本用意し、
入出力デバイスに対してもリセットするか否かをプログ
ラムにより指示できるようにすることで可能である。
【0055】パリティチエック(PC)755と756
は、それぞれ信号線751と753上のアドレス/デー
タをパリティチェックし、エラーを検出すると、パリテ
ィエラーとして論理和素子76に伝える。送受信制御部
71も、エラーを検出すると、それを論理和素子76に
伝える。DSBA内で何等かのエラーが検出されると、
論理和素子76の出力として、DSBAERROR63
Aが自系と他系の切離し要求生成部72に伝えられる。
切離し要求生成部72は、これらDSBA内あるいはD
SBA間でエラーを検出したときに、故障CPUブロッ
クの切離し要求信号(DISCONREQ)64Aを生
成して、他系のPXI(PXI7B)に伝える。
【0056】出力ゲート制御回路75は、DSバス15
Aへの出力ゲートの制御を行う回路である。図11に出
力ゲート制御回路75の詳細を示す。通常の出力ゲート
制御は、送受信制御部71からDSバス15Aへの送信
信号(send)が出されたときに出力ゲートを開けれ
ば良い。しかし、本実施例では、DSBAを多重システ
ムバスアダプタとして動作させるために、図11に示す
構成を採る。図11において、81、82は論理積素子
であり、830、831、832は否定論理素子であ
る。信号線84は、送受信制御部71からDSバス15
Aへの送信信号(send)であり、信号線65は、自
系CPUブロックが切り離されていることを示すDIS
CON信号である。信号線66は、他系CPUブロック
が切り離されていることを示すDISCON信号であ
る。信号線67は、セカンダリDSBAであることを示
す信号である。2つのCPUが正常に動作しているとき
には、プライマリ・セカンダリ両方のDSBAは同じ様
にsend信号84をアサートとするが、プライマリ
(即ち信号線67がネゲートされている)DSBAだけ
が論理積素子81で信号線85をイネーブルし、出力ゲ
ートが開いて、アドレス/データ等DSバスにを送出で
きる。また、自系CPUブロックが障害を起こして、切
り離される(信号線65がアサート)時には、信号線6
5によって信号線85がネゲートされるので、自系の出
力ゲートは一切開かず、これによって自系CPUブロッ
クがDSバスからの切離しを実現する。また、他系が障
害を起こして、切り離される(信号線66がアサート)
時には、セカンダリDSBAであってもsend信号8
4に従って信号線85がアサートし、アドレス/データ
等をDSバス等に送出できる。
【0057】図12に切離し要求生成部72の構成例を
示す。900−1〜900−4は論理積素子、901は
論理和素子、902は排他的論理和素子、903は否定
論理素子である。90は10マイクロ秒のタイマであ
る。タイマ90は、自/他系PMCUからのシステムバ
ス使用許可信号91A(61A)と91B(61B)の
不一致が排他的論理和素子902で検出されて信号91
0がアサートされるか、あるいは自系PMCUでエラー
が検出されてPMCUERR信号95Aがアサートされ
ると、カウントを開始し、他系のCPUブロックを切り
離すXDISCON信号66がアサートされると、カウ
ントを停止してクリアするが、10マイクロ秒経過する
と、タイムアウト信号96をアサートする。論理積素子
900ー1は、他系エラーを検出する回路である。即
ち、信号63AのNOT信号と信号63Bを入力して、
自系がエラーでなく他系がエラーの時に、他系のエラー
信号99をアサートする。これによって、論理和素子9
01から他系CPUブロックの切離し要求信号94A
(64A)がアサートされる。論理積素子900ー2、
900−3は、それぞれ同期ずれを検出する回路であ
る。即ち、自系/他系のシステムバス要求信号92A
(62A)、92B(62B)やシステムバス使用許可
信号91A(61A)、91B(61B)について、他
系の信号をアサートしない場合に故障と見なして、他系
の同期ずれエラー信号911や98をアサートする。こ
のうち、システムバス使用許可信号に着目する同期ずれ
エラー信号98については、CPUが別の原因で既に同
期ずれを起こしている可能性があるので、すぐに切り離
し要求信号94A(64A)をだすのは危険である。そ
こで、要因が判明するまでしばらくの間、論理積素子9
00−4により、タイマ90の出力96で同期ずれエラ
ー信号98をマスクする。
【0058】図13と図14に、同期ずれエラーを検出
してから、他系CPUブロック切り離し要求がアサート
されるまでのタイムチャートを示す。
【0059】第13図は、PMCUからのバス使用許可
信号が、A系からは正常に出力されたが、B系から出力
されなかった場合を示している。B系バス使用許可信号
の欠落がA系のDSBA11Aの切離し要求生成部72
で検出される時の動作は次の通りである。B系のPMC
Uからのバス使用許可信号(PBGRTB−N)は、D
SBA11B内でラッチされ、DSBA間インタフェイ
ス信号61BとしてA系DSBA11Aに渡される。一
方、A系のDSBA11Aでは、B系からのバス使用許
可信号とタイミングをあわせるためにA系のバス使用許
可信号を2回ラッチして信号91Aを生成する。そし
て、信号91Aと91Bを比較して不一致信号(CMP
ERR−N)をアサートする。A系バス使用許可信号に
ついても前述と同様の動作が対称的にDSBA11Aと
DSBA11Bの間でおこなわれ、それぞれのDSBA
で同時に不一致信号(CMPERR−N)がアサートさ
れる。
【0060】第13図の場合は、PMCUの信号の同期
ずれであり、CPUの別の原因で同期ずれを起こしてお
り、PMCUから切り離し要求が出されている可能性が
ある。そこで、しばらく切り離しを待って、切り離しが
行われなければ、DSBAが改めて切り離し要求を出す
ことを示している(94A)。
【0061】第14図は、同様に、DSBAからのバス
使用要求信号が、A系からは正常に出力されたが、B系
から出力されなかった場合を示している。DSBAから
のバス使用要求信号(PBREQBーN)は、DSBA
間インタフェイス60を介して、1サイクルかけて2つ
のDSBA間で渡される(92B)。自系のDSBA内
では、他系からのバス使用要求信号と位相をあわせるた
めに内部でさらにラッチする(92A)。DSBAで
は、92Aと92Bを比較して不一致信号(CMPER
R−N)をアサートし、切り離し要求信号を出す(94
A)。この切り離し要求信号は、64AとしてPXI7
Aに伝えられて、最終的な切り離し信号を生成する。
【0062】〈プロセッサ間インタフェイス制御装置
(PXI)〉図15に、切り離し信号(XDISCO
N)の生成かかわるPXIの構成を示す。PXIは各系
にあるが、全く同じ構成なので、ここではA系のPXI
7Aについて説明する。64Aは、自系のDSBAから
出される他系CPUブロックの切り離し要求信号である
(図12)。57は他系のPXIとのインタフェイス信
号であり、LXDISCONREQAーNはA系からの
B系切り離し要求、LXDISCONREQBーNはB
系からのA系切り離し要求、LXDISCONAーNは
A系からのB系切り離し指示、LXDISCONBーN
はB系からのA系切り離し指示である。65は、LXD
ISCONBーNをラッチで受けて、タイミング調整し
た自系CPUブロックの切り離し指示信号であり、DS
BAの出力ゲート制御回路75が出力ゲートを閉じるこ
とによって自系をDSバスから切り離す(図10)。1
21は、信号64Aとその他のCPUブロック切り離し
要求信号との論理和をとる論理和素子である。122
は、自系のCPUの状態を保持する状態レジスタであ
る。CPUの状態としては、後述の図17に示す6つの
状態(NONE、INIT、READY、COPY、O
NLN、DISCON)がある。切離し判定回路120
は、論理和素子121の出力の他系への切り離し要求信
号123と他系PXIから自系への切り離し要求信号1
25及び自系CPU状態レジスタ122の状態信号によ
り、どちらの系を切り離すかを判定する。エラーは同時
に2箇所で発生したり、既に片系が切り離されていると
きに残存系でエラーが発生する事があるため、切り離し
要求を受けてそのまま切り離し指示を出すと、両系切り
離しという致命的な状態になる場合がある。そこで、切
離し判定回路120で切り離してよいか否かのネゴシエ
ーションを行ってからA系からのB系切り離し指示LX
DISCONA124をアサートする。図16に、切離
し判定回路120の判定論理を示す。即ち、A系からの
B系切り離し指示信号LXDISCONA124がアサ
ートされるのは、自系がオンライン状態(ONLN)で
あって、自系への切り離し要求がなくかつ他系への切り
離し要求が自系CPUから出されているときにのみであ
る。
【0063】〈CPU動作モード〉図17にCPUの状
態モード、図18にその定義を示す。CPU状態として
は、6つの状態(NONE、INIT、READY、C
OPY、ONLN、DISCON)がある。NONE
は、未実装状態またはクロック停止であり、全く動作し
ていない状態である。INITは、CPUの初期化中で
あり、他系とは非同期に自CPUの初期化処理を実行し
ている状態である。READYは、メモリコピ−開始待
ち状態である。COPYは、メモリコピ−中であり、他
系からのメモリコピ−を受けてメモリ一致化処理を行っ
ている状態である。メモリコピーについては後述する。
ONLNは、システムに組み込まれて正常に動作してい
る状態である。DISCONは、他系によって切り離し
指示が出されている状態である。
【0064】初期復電時の状態はNONEであり、CP
Uの初期化処理を行った後にONLN状態になる。一
方、2重化同期動作状態からエラー発生によって、切り
離された後再投入された場合には、CPUの初期化処理
を行った後に正常系のCPUからのメモリの複写開始待
ち状態になる。その後、実際に正常系のCPUからのメ
モリの複写を受けるCOPY状態になり、複写が終了す
るとONLN状態となって2重化同期運転状態に復旧す
る。
【0065】次に、本実施例に示す高信頼化コンピュー
タシステムの代表的な動作例について説明する。
【0066】〈正常時の動作〉 (1)IOバスアクセスを伴わない時 IOバスアクセスを伴わずプロセッサとメモリだけでプ
ログラム実行が行われる時には、2つのCPU1A、1
Bは、同じプログラムを同じ順序で同期しつつも独立し
て実行する。
【0067】(2)IOアクセスを伴う時 図19に、両系正常時のIOアクセス動作の概要を示
す。図19(a)に示すように、IOアクセス起動時に
は、2つのCPUから同じIOに対するアクセスが同時
に出力される。プライマリとセカンダリのDSBAは、
それぞれこれを受るが、プライマリDSBA側のアクセ
スだけが入出力バスあるいは入出力アダプタに伝えられ
る(140、141)。IO側からの応答は、図19
(b)に示すように、プライマリとセカンダリのDSB
Aが受けて、2つのCPU1A、1Bに同時に同じ応答
を返す(142、143)。図19では、CPUをアク
セス元としたが、入出力バスあるいは入出力デバイスが
アクセス元となるDMA(ダイレクトメモリアクセス)
の時は、図19の起動と応答が逆になるだけである。つ
まり、同期運転をしている2つのCPUと1つの入出力
バス、入出力アダプタをプライマリとセカンダリDSB
Aで接続し、CPUからのアクセスをDSBAで選択
し、入出力バスあるいは入出力アダプタ側からのアクセ
スを2つのCPUに分配する事によって、IOを伴って
もCPUの2重化同期運転を続けることができる。
【0068】〈CPU障害時の動作〉障害時の動作とし
ては、(1)エラーの検出、(2)障害ブロックの特
定、(3)障害ブロックの切り離し、(4)処理の継
続、などのステップが必要となる。実施例では、CPU
障害時は、これらのステップが次の通りハードウェアに
より自動的に行われる。
【0069】(1)エラー検出 CPUブロックには図6に示したように、パリティチェ
ックなど様々なハードウェアのエラー検出手段がある
が、CPUブロック内でエラー検出した場合には、以下
に述べる処理ステップはエラーの内容によらず同様であ
る。従ってここでは、片系のメモリでパリティエラーが
発生した場合を考える。
【0070】(2)障害ブロックの特定 エラーの発生がPXIに報告され、PXIは障害ブロッ
クを特定する。
【0071】(3)障害ブロックの切り離し エラーの発生がPXIに報告されるとPXIは、300
ns程度の非常に短い時間でエラーが発生したCPUブ
ロックに対して切離し指示信号65を出す(図15)。
DSBAは、切離し指示信号65に従って出力ゲートを
閉じてCPUブロックを入出力バスから切り離す(図1
0)。
【0072】(4)処理の継続 図20に、片系CPU障害時のIOアクセス動作の概要
を示す。図20(a)に示すように、IOアクセス起動
時には、プライマリとセカンダリに関係無く正常系のD
SBAのアクセスだけが入出力バスあるいは入出力アダ
プタに伝えられる(144)。IOからの応答も、図2
0(b)に示すように、正常系のDSBA(プライマリ
とセカンダリに関係無く)がこれを受けて、正常なCP
Uにのみ応答を返す(145)。図20では、CPUを
アクセス元としたが、入出力バスあるいは入出力デバイ
スがアクセス元となるDMA(ダイレクトメモリアクセ
ス)の時は、図20の起動と応答が逆になるだけだあ
る。このように、正常系のCPUの処理にとって他系C
PUの障害の発生は処理継続という点では透過である。
【0073】〈LANC障害時の動作〉障害時の動作と
して、(1)エラーの検出、(2)障害部位の特定、
(3)障害部位の切り離し(4)処理の継続、などの各
ステップが必要となる。LANC障害時は、これらのス
テップが次のようにしてハードウェアとソフトウェアの
連携により行われる。
【0074】(1)エラー検出 図10で説明したように、DSBAにてDSバス上のア
クセスを監視し、アクセスが正常終了しない場合には割
込みトランザクションのデータパターンをシステムバス
に送出することにより、CPUにアクセス異常を報告す
る。また、その正常終了しないアクセスがリードアクセ
スである場合には、割込みトランザクションのデータパ
ターンをシステムバスに送出したうえで、固定パターン
のデータをCPUにリターンデータとして返送する。こ
こでは、特に正常終了しないアクセスがリードアクセス
である場合について述べる。
【0075】(2)障害部位の特定 割り込みトランザクションによりアクセス異常を報告さ
れたCPU内のプロセッサ上で動作するプログラムは、
割込みトランザクションの内容に従いDSBAにて検出
された障害を認識し、DSBAにて採取されている障害
ログの内容により障害部位の特定を行う。たとえばDS
バスのパリティエラー等の場合は障害部位はDSバスで
あると特定され、PIOリードのタイムアウト検出でし
かもDSバスのアクセス時に他のエラーを検出していな
い場合には、DSBAにて採取されているタイムアウト
検出対象のアクセスアドレスにより、障害部位はアクセ
ス対象の入出力装置側であるとプログラムにより特定で
きる。
【0076】(3)障害部位の切り離し 障害部位の特定を特定したCPU内のプロセッサ上で動
作するプログラムは、DSBAへのレジスタ空間へのP
IOライトにより、入出力アダプタと入出力デバイスと
の論理接続を切り放す指示コマンドを発行することによ
り、障害部位を切り離す。これも図10で述べたとおり
である。なお、入出力バスが正常であり、入出力デバイ
スが自身のレジスタ空間に対する切り離しコマンドを受
領できるレベルの障害であれば、プログラムは、入出力
デバイス自身に指示コマンドを発行することにより障害
部位を切り離すことも可能である。
【0077】(4)処理の継続 CPU内のプロセッサ上で動作するプログラムは、障害
の発生した入出力アダプタとペア関係にある入出力アダ
プタと入出力デバイスの論理接続を行い、未完了状態で
あるIO処理を再起動することにより、入出力デバイス
を用いた処理を継続する。この切り替えによるFDDI
−LANでの処理の継続動作例を図21に示す。
【0078】ここで、図22に示すように、CPU内の
プロセッサ上で動作するプログラムは、処理結果の確認
を行うためにIOアクセス命令の正常終了を確認すべき
場合にはIOリードアクセスを発行し、リードデータが
固定パターンと一致するか否かを比較することにより障
害の発生を認識するためのアクセスをおこなう。このI
Oアクセス命令は、一連の入出力処理ステップの最後等
にのみおこなうことにより、プログラムの処理ステップ
の増大を防ぐようにする。
【0079】また、図23に示すように、入出力デバイ
ス内にあるメモリのポインタ値を示すレジスタをアクセ
スするような場合には、リードデータが固定パターンと
一致するか否かを比較し、固定パターンと一致するする
場合には入出力デバイスの障害の発生を認識し、該当処
理を異常終了する。なぜなら、謝ったリードデータ値を
信じてCPU内のプロセッサ上で動作するプログラムが
処理を続行すると、誤ったメモリアドレスをアクセスす
ることとなり、誤ったメモリの内容を用いて動作し続け
たり、メモリの内容を破壊したり、未実装のメモリにア
クセスしたりしてしまう。これは、両系のCPUで同時
に発生するため、システムダウンとなってしまう。その
ため、上記のように、リードデータが固定パターンと一
致するか否かを比較することにより、誤ったデータか否
かを確認したうえでプログラムが処理を続行するように
することにより、システムダウンを回避できる。
【0080】
【発明の効果】本発明によれば、中央処理装置(CP
U)のような非常に高速で高度な実装技術が要求される
部分に二重化接続装置(DSBA)を設けるのでなく、
CPUと入出力装置側との接続部分にDSBAを設ける
ことで、通常のデータ処理装置やワークステーションや
パーソナルコンピュータと共通のCPUと入出力装置を
使用した上で、高信頼性を実現できる。つまり、CPU
だけでなく入出力装置のハードウエアに1点障害が発生
しても当該障害部分を確実に切り離して、処理を続行す
ることによりノーダウン運転を実現できる。
【図面の簡単な説明】
【図1】CPUとIOバス系がともに一重構成の本発明
システムの基本構成を示す概念図である。
【図2】CPUが一重でIOバス系のみ二重化構成の本
発明システムの概念図である。
【図3】CPUとIOバス系がともに二重化構成の本発
明システムの概念図である。
【図4】本発明システムの一実施例の装置外観図であ
る。
【図5】図3に対応する本発明システムの一実施例の概
略構成図である。
【図6】図5中のプロセッサメモリユニット(PMC
U)の具体的構成図である。
【図7】図5中のクロック回路(CLK)の具体的構成
図である。
【図8】二重化バスシステムアダプタ(DSBA)まわ
りの概略構成図である。
【図9】DSBA間インタフェイス信号の一覧表であ
る。
【図10】DSBAの全体構成図である。
【図11】図10中の出力ゲート制御回路の具体的構成
図である。
【図12】図10中の切離し要求生成回路の具体的構成
図である。
【図13】システムバス使用許可信号の同期ずれ検出時
のタイムチャートである。
【図14】システムバス要求信号の同期ずれ検出時のタ
イムチャートである。
【図15】プロセッサ間インタフェイス制御装置(PX
I)の具体的構成図である。
【図16】図15中の切離し判定回路の判定論理を示す
図である。
【図17】CPUブロックの動作モードの遷移図であ
る。
【図18】図17の各状態の定義を説明する図である。
【図19】正常時のIOアクセス動作例を示す図であ
る。
【図20】CPU障害時のIOアクセス動作例を示す図
である。
【図21】LANC障害時のLANC切り替えによるF
DDIでの処理の継続動作例を示す図である。
【図22】入出力装置の制御に関するプログラム処理例
を示す図である。
【図23】IOリードアクセスに関するプログラム処理
例を示す図である。
【符号の説明】
1 CPU 2 接続装置 3、4 プロセッサ 5 メモリ 6 プロセッサメモリ制御ユニット 7 プロセッサ間インタフェイス制御装置 9 システムバス 11、12、13、14 多重システムバスアダプタ
(DSBA) 20、21 入出力バスアダプタ 30 入出力バス 31、35 入出力アダプタ 39 LAN制御装置
───────────────────────────────────────────────────── フロントページの続き (51)Int.Cl.6 識別記号 庁内整理番号 FI 技術表示箇所 G06F 11/30 7313−5B G06F 11/30 K 320 7313−5B 320F // G06F 15/16 470 15/16 470B (72)発明者 高谷 壮一 茨城県日立市大みか町5丁目2番1号 株 式会社日立製作所大みか工場内 (72)発明者 平松 昌高 神奈川県海老名市下今泉810番地 株式会 社日立製作所オフィスシステム事業部内 (72)発明者 明浦 伸夫 神奈川県海老名市下今泉810番地 株式会 社日立製作所オフィスシステム事業部内

Claims (5)

    【特許請求の範囲】
  1. 【請求項1】 プログラム及びデータを格納するメモリ
    と該メモリからプログラム及びデータを取り出してこれ
    を処理するプロセサとを有する中央処理装置と、上記中
    央処理装置の指定により処理結果を格納あるいは外部に
    送出する入出力装置と、上記中央処理装置と上記入出力
    装置に接続される接続装置とから構成され、 上記接続装置は、上記中央処理装置から上記入出力装置
    へのアクセスを監視する手段と、アクセスが正常終了し
    ない場合に上記中央処理装置にアクセス異常を報告する
    手段と、その正常終了しないアクセスがリードアクセス
    である場合には固定パターンのデータを上記中央処理装
    置に返送する手段とを具備することを特徴とする高信頼
    化コンピュータシステム。
  2. 【請求項2】 プログラム及びデータを格納するメモリ
    と該メモリからプログラム及びデータを取り出してこれ
    を処理するプロセッサとを有する中央処理装置と、上記
    中央処理装置の指定により処理結果を格納あるいは外部
    に送出する第1の入出力アダプタと、該第1の入出力ア
    ダプタと同一構成の第2の入出力アダプタと、上記中央
    処理装置と上記第1及び第2の入出力アダプタに接続さ
    れる接続装置と、上記第1の入出力アダプタと第2の入
    出力アダプタの両方に物理接続される入出力デバイスと
    から構成され、 上記接続装置は、上記中央処理装置から上記第1及び第
    2の入出力アダプタへのアクセスを監視する手段と、ア
    クセスが正常終了しない場合に上記中央処理装置にアク
    セス異常を報告する手段と、その正常終了しないアクセ
    スがリードアクセスである場合には固定パターンのデー
    タを上記中央処理装置に返送する手段と、上記中央処理
    装置からの指示により上記第1あるいは第2の入出力ア
    ダプタと入出力デバイスとの論理接続を切り離す手段を
    具備することを特徴とする高信頼化コンピュータシステ
    ム。
  3. 【請求項3】 プログラム及びデータを格納するメモリ
    と該メモリからプログラム及びデータを取り出してこれ
    を処理するプロセッサとを有する第1の中央処理装置
    と、該第1の中央処理装置と同一構成の第2の中央処理
    装置と、上記第1及び第2の中央処理装置にクロック及
    びリセット信号を供給するクロック手段と、上記第1及
    び第2の中央処理装置の指定により処理結果を格納ある
    いは外部に送出する第1の入出力装置と、上記第1及び
    第2の中央処理装置と上記第1の入出力装置に接続され
    る第1の二重化接続装置と、上記第1及び第2の中央処
    理装置の指定により処理結果を格納あるいは外部に送出
    する上記第1の入出力装置と同一構成の第2の入出力装
    置と、上記第1及び第2の中央処理装置と上記第2の入
    出力装置に接続される第2の二重化接続装置とから構成
    され、 上記第1及び第2の中央処理装置は、相互に通信を行う
    ための第1及び第2のプロセッサ間通信手段を具備し、 上記第1及び第2の二重化接続装置は、各々の中央処理
    装置から第1あるいは第2の入出力装置へのアクセスを
    監視する手段と、アクセスが正常終了しない場合に上記
    第1及び第2の中央処理装置にアクセス異常を報告する
    手段と、その正常終了しないアクセスがリードアクセス
    である場合には固定パターンのデータを上記第1及び第
    2の中央処理装置に返送する手段とを具備することを特
    徴とする高信頼化コンピュータシステム。
  4. 【請求項4】 プログラム及びデータを格納するメモリ
    と該メモリからプログラム及びデータを取り出してこれ
    を処理するプロセッサとを有する第1の中央処理装置
    と、該第1の中央処理装置と同一構成の第2の中央処理
    装置と、上記第1及び第2の中央処理装置にクロック及
    びリセット信号を供給するクロック手段と、上記第1及
    び第2の中央処理装置の指定により処理結果を格納ある
    いは外部に送出する第1の入出力アダプタと、上記第1
    及び第2の中央処理装置と上記第1の入出力アダプタに
    接続される第1の二重化接続装置と、上記第1及び第2
    の中央処理装置の指定により処理結果を格納あるいは外
    部に送出する上記第1の入出力アダプタと同一構成の第
    2の入出力アダプタと、上記第1及び第2の中央処理装
    置と上記第2の入出力アダプタに接続される第2の二重
    化接続装置と、上記第1の入出力アダプタと第2の入出
    力アダプタの両方に物理接続される入出力デバイスとか
    ら構成され、上記第1及び第2の二重化接続装置は、上
    記第1及び第2の中央処理装置からの指示により、上記
    第1あるいは第2の入出力アダプタと入出力デバイスと
    の論理接続を切り離す手段を具備することを特徴とする
    高信頼化コンピュータシステム。
  5. 【請求項5】 プログラム及びデータを格納するメモリ
    と該メモリからプログラム及びデータを取り出してこれ
    を処理するプロセッサとを有する第1の中央処理装置
    と、該第1の中央処理装置と同一構成の第2の中央処理
    装置と、上記第1及び第2の中央処理装置にクロック及
    びリセット信号を供給するクロック手段と、上記第1及
    び第2の中央処理装置の指定により処理結果を格納ある
    いは外部に送出する第1の入出力アダプタと、上記第1
    及び第2の中央処理装置と上記第1の入出力アダプタに
    接続される第1の二重化接続装置と、上記第1及び第2
    の中央処理装置の指定により処理結果を格納あるいは外
    部に送出する上記第1の入出力アダプタと同一構成の第
    2の入出力アダプタと、上記第1及び第2の中央処理装
    置と上記第2の入出力アダプタに接続される第2の二重
    化接続装置と、上記第1の入出力アダプタと第2の入出
    力装置の両方に物理接続される入出力デバイスとから構
    成され、 上記第1及び第2の中央処理装置は、相互に通信を行う
    ための第1及び第2のプロセッサ間通信手段を具備し、 上記第1及び第2の二重化接続装置は、各々の中央処理
    装置から上記第1あるいは第2の入出力アダプタへのア
    クセスを監視する手段と、アクセスが正常終了しない場
    合に上記第1及び第2の中央処理装置にアクセス異常を
    報告する手段と、その正常終了しないアクセスがリード
    アクセスである場合には固定パターンのデータを上記第
    1及び第2の中央処理装置に返送する手段と、上記第1
    及び第2の中央処理装置からの指示により、上記第1あ
    るいは第2の入出力アダプタと入出力デバイスとの論理
    接続を切り離す手段とを具備することを特徴とする高信
    頼化コンピュータシステム。
JP18122295A 1995-07-18 1995-07-18 高信頼化コンピュータシステム Expired - Fee Related JP3595033B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP18122295A JP3595033B2 (ja) 1995-07-18 1995-07-18 高信頼化コンピュータシステム
US08/682,956 US6032265A (en) 1995-07-18 1996-07-18 Fault-tolerant computer system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP18122295A JP3595033B2 (ja) 1995-07-18 1995-07-18 高信頼化コンピュータシステム

Publications (2)

Publication Number Publication Date
JPH0934809A true JPH0934809A (ja) 1997-02-07
JP3595033B2 JP3595033B2 (ja) 2004-12-02

Family

ID=16096957

Family Applications (1)

Application Number Title Priority Date Filing Date
JP18122295A Expired - Fee Related JP3595033B2 (ja) 1995-07-18 1995-07-18 高信頼化コンピュータシステム

Country Status (2)

Country Link
US (1) US6032265A (ja)
JP (1) JP3595033B2 (ja)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020033254A (ko) * 2000-10-30 2002-05-06 구자홍 이중화 프로세서의 흐름 제어장치 및 방법
JP2007323190A (ja) * 2006-05-30 2007-12-13 Hitachi Ltd データ通信を行う計算制御システム及びその通信方法
US7685473B2 (en) 2004-12-16 2010-03-23 Nec Corporation Computer system, method of detecting a stall in a computer system, and signal-bearing medium embodying a program causing a computer system to perform a method of detecting a stall in a computer system
US7725761B2 (en) 2004-12-13 2010-05-25 Nec Corporation Computer system, fault tolerant system using the same and operation control method and program thereof
JP2012198822A (ja) * 2011-03-22 2012-10-18 Fujitsu Ltd 情報処理装置、制御装置および異常ユニット判定方法
US8917793B2 (en) 2010-01-15 2014-12-23 Rib Laboratory, Inc. Communication circuit, communication network, and connecting apparatus
JP2015179386A (ja) * 2014-03-19 2015-10-08 三菱電機インフォメーションネットワーク株式会社 フォールトトレラントサーバ装置及び通信制御装置の切替プログラム
JP2018125044A (ja) * 2012-12-13 2018-08-09 コーヒレント・ロジックス・インコーポレーテッド 改善された二次相互接続ネットワークを備えたマルチプロセッサシステム
US11169882B2 (en) 2018-07-06 2021-11-09 Fujitsu Limited Identification of a suspect component causing an error in a path configuration from a processor to IO devices

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6208616B1 (en) * 1997-05-13 2001-03-27 3Com Corporation System for detecting errors in a network
US6289022B1 (en) * 1997-10-21 2001-09-11 The Foxboro Company Methods and systems for fault-tolerant data transmission
JPH11143729A (ja) * 1997-11-07 1999-05-28 Nec Corp フォールトトレラントコンピュータ
US6304983B1 (en) * 1998-09-30 2001-10-16 International Business Machines Corporation Checkpoint logging without checkpoint display device availability
US7026913B2 (en) * 1999-11-30 2006-04-11 Ncr Corporation Methods and apparatus for self-diagnosing electronic price labels
US6971043B2 (en) * 2001-04-11 2005-11-29 Stratus Technologies Bermuda Ltd Apparatus and method for accessing a mass storage device in a fault-tolerant server
US7904775B2 (en) 2004-04-21 2011-03-08 Stmicroelectronics Sa Microprocessor comprising signature means for detecting an attack by error injection
WO2007149688A2 (en) 2006-05-30 2007-12-27 Schneider Automation Inc. Remote virtual placeholder configuration for distributed input/output modules
US8949659B2 (en) * 2012-10-18 2015-02-03 International Business Machines Corporation Scheduling workloads based on detected hardware errors
JP5840173B2 (ja) * 2013-06-21 2016-01-06 京セラドキュメントソリューションズ株式会社 情報処理装置、入出力制御部の再起動方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5720847A (en) * 1980-07-11 1982-02-03 Hitachi Ltd Computer system
US4920540A (en) * 1987-02-25 1990-04-24 Stratus Computer, Inc. Fault-tolerant digital timing apparatus and method
US4939643A (en) * 1981-10-01 1990-07-03 Stratus Computer, Inc. Fault tolerant digital data processor with improved bus protocol
EP0306211A3 (en) * 1987-09-04 1990-09-26 Digital Equipment Corporation Synchronized twin computer system
US4907228A (en) * 1987-09-04 1990-03-06 Digital Equipment Corporation Dual-rail processor with error checking at single rail interfaces
AU616213B2 (en) * 1987-11-09 1991-10-24 Tandem Computers Incorporated Method and apparatus for synchronizing a plurality of processors
CA2003338A1 (en) * 1987-11-09 1990-06-09 Richard W. Cutts, Jr. Synchronization of fault-tolerant computer system having multiple processors
US4965717A (en) * 1988-12-09 1990-10-23 Tandem Computers Incorporated Multiple processor system having shared memory with private-write capability
US5295258A (en) * 1989-12-22 1994-03-15 Tandem Computers Incorporated Fault-tolerant computer system with online recovery and reintegration of redundant components
JP3255934B2 (ja) * 1991-01-25 2002-02-12 株式会社日立製作所 ベーシックプロセッシングユニット及び高信頼化コンピュータシステム
JPH04311238A (ja) * 1991-04-09 1992-11-04 Toshiba Corp 入出力インターフェース装置
JP2888025B2 (ja) * 1992-04-27 1999-05-10 日本電気株式会社 耐故障コンピュータシステム

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20020033254A (ko) * 2000-10-30 2002-05-06 구자홍 이중화 프로세서의 흐름 제어장치 및 방법
US7725761B2 (en) 2004-12-13 2010-05-25 Nec Corporation Computer system, fault tolerant system using the same and operation control method and program thereof
US7685473B2 (en) 2004-12-16 2010-03-23 Nec Corporation Computer system, method of detecting a stall in a computer system, and signal-bearing medium embodying a program causing a computer system to perform a method of detecting a stall in a computer system
JP2007323190A (ja) * 2006-05-30 2007-12-13 Hitachi Ltd データ通信を行う計算制御システム及びその通信方法
US8917793B2 (en) 2010-01-15 2014-12-23 Rib Laboratory, Inc. Communication circuit, communication network, and connecting apparatus
JP2012198822A (ja) * 2011-03-22 2012-10-18 Fujitsu Ltd 情報処理装置、制御装置および異常ユニット判定方法
JP2018125044A (ja) * 2012-12-13 2018-08-09 コーヒレント・ロジックス・インコーポレーテッド 改善された二次相互接続ネットワークを備えたマルチプロセッサシステム
JP2015179386A (ja) * 2014-03-19 2015-10-08 三菱電機インフォメーションネットワーク株式会社 フォールトトレラントサーバ装置及び通信制御装置の切替プログラム
US11169882B2 (en) 2018-07-06 2021-11-09 Fujitsu Limited Identification of a suspect component causing an error in a path configuration from a processor to IO devices

Also Published As

Publication number Publication date
JP3595033B2 (ja) 2004-12-02
US6032265A (en) 2000-02-29

Similar Documents

Publication Publication Date Title
US6141769A (en) Triple modular redundant computer system and associated method
JP3595033B2 (ja) 高信頼化コンピュータシステム
EP0731945B1 (en) Fault resilient/fault tolerant computing
US5398331A (en) Shared storage controller for dual copy shared data
JPH03182939A (ja) ソフトウェアのエラー処理の方法
JPH03184130A (ja) ソフトウェアの誤り処理方法
JPH01154241A (ja) 同期二重コンピュータシステム
JPH01154240A (ja) 単一レールインターフェイスにエラーチェック機能を有する二重レールプロセッサ
CA2530913A1 (en) Fault tolerant computer system and interrupt control method for the same
JPH03184129A (ja) 特定のデータをシステムデータに変換する方法
KR100566340B1 (ko) 정보 처리 장치
WO2010100757A1 (ja) 演算処理システム、再同期方法、およびファームプログラム
WO1997043712A2 (en) Triple modular redundant computer system
JPH06242979A (ja) 二重化コンピュータ装置
JPH07182189A (ja) 計算機システム及びプロセッサチップ及び障害復旧方法
JPH0916426A (ja) 2ポートコンソールを持つフォールトトレラントコンピュータ
JPH08190494A (ja) 二重化処理装置を有する高信頼化コンピュータ
JPS5917467B2 (ja) 制御用計算機のバツクアツプ方式
JPH04241039A (ja) ベーシックプロセッシングユニット及び高信頼化コンピュータシステム
JPH03184155A (ja) 非存在メモリエラー処理の方法
JPH10240555A (ja) フォールト・トレラント・データ処理システムとその方 法
JPH09179836A (ja) 多重化計算機およびその障害検出処理方法
JPH09146853A (ja) 二重化計算機及びその障害系復旧方法
JPS62296264A (ja) デ−タ処理システムの構成制御方式
Di Giovanni et al. H/W and S/W redundancy techniques for 90's rotorcraft computers

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20040809

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20040902

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070910

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080910

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080910

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090910

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090910

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100910

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100910

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110910

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120910

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120910

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130910

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees