JPH0683660A - モジュール化プロセッサ・システム - Google Patents

モジュール化プロセッサ・システム

Info

Publication number
JPH0683660A
JPH0683660A JP4073725A JP7372592A JPH0683660A JP H0683660 A JPH0683660 A JP H0683660A JP 4073725 A JP4073725 A JP 4073725A JP 7372592 A JP7372592 A JP 7372592A JP H0683660 A JPH0683660 A JP H0683660A
Authority
JP
Japan
Prior art keywords
processor
memory
majority
elements
arbiter
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
JP4073725A
Other languages
English (en)
Other versions
JPH0812622B2 (ja
Inventor
Iii Gilbert C Vandling
ギルバート・クライド・バンドリング、サード
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.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH0683660A publication Critical patent/JPH0683660A/ja
Publication of JPH0812622B2 publication Critical patent/JPH0812622B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/1675Temporal synchronisation or re-synchronisation of redundant processing components
    • G06F11/1683Temporal synchronisation or re-synchronisation of redundant processing components at instruction level
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/18Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits
    • G06F11/183Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits by voting, the voting not being performed by the redundant components
    • G06F11/184Error detection or correction of the data by redundancy in hardware using passive fault-masking of the redundant circuits by voting, the voting not being performed by the redundant components where the redundant components implement processing 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)

Abstract

(57)【要約】 【目的】三重化されたメモリを使用し、メモリ出力で多
数決をとるシステムの提供。 【構成】非同期に接続された3つの処理素子を含むモジ
ュール三重化計算システム。3つの処理素子の各々はそ
れ自身のメモリ、プロセッサ素子を交差接続する複数の
アービタを備え、タスクの同期を強制し出力ではアービ
トレーションを多数決するが入力については多数決しな
いようにする。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はTMR処理システム、特
に素子が非同期になるとき又は相互にスキュー(skew)に
なる場合にTMR動作をなし遂げる処理システムに関す
る。
【0002】
【従来の技術及び発明が解決しようとする課題】多数決
によるモジュール三重化(TMR)は、互いに完全に同
期する素子で故障をマスクするために用いる周知のハー
ドウェア技術である。本発明は、システム・クロック速
度が増加し続け、素子の非同期又は相互のスキューがし
ばしば起きることが予想される場合に、TMR動作をな
し遂げる手段を提供する。
【0003】非同期TMRの組込みが要求される最新の
1つのシステムは最近発表されたタンデム(Tandem)S2
システムである。詳細な技術情報は入手できないが、タ
ンデム社のアプローチは本明細書に記載されたアプロー
チとはかなり異なることが知られている。それは二重メ
モリを使用し且つメモリを参照して多数決(voting)が行
なわれる。
【0004】この唯一の公知の非同期TMRシステムは
タンデム社が最近発表した統合S2システムである。当
該システムは、デュアル大域メモリを用い、全てのCP
Uの大域メモリ・アクセスを同期させかつ多数決すると
言われる。
【0005】複数のプロセッサ及び該プロセッサの各々
に接続されたネットワーク素子を含む関連技術が米国特
許第4907232号に開示されている。当該特許は耐
障害(fault tolerant)並列処理システムに言及してい
る。この特許は明らかに該ネットワークの通信動作を同
期させるが、多数決メッセージを与える異なるシステム
は含まない。米国特許第4667284号は多重化制御
装置に関連している。耐障害出力回路は、関連記憶装置
及び局所メモリを有する4つのデータ処理モジュールの
使用を開示している米国特許第4882731号に記述
されている。並列同期動作及び障害箇所決定の方式に関
して実質的に同じ3つのプロセッサが米国特許第491
6695号に開示されている。
【0006】TMR素子の非同期動作は多大の複雑さを
生じるので、同期TMRが適する場合には望ましくな
い。しかしながら、今日の状況では、これから説明する
前記システムの改良が役立つと考えられる。
【0007】
【課題を解決するための手段】非同期TMR処理システ
ムの領域はあまり研究されていない。本発明は3つの即
ち三重化されたメモリを使用し大域メモリに対するCP
Uアクセス毎に多数決をとらないがメモリ出力で多数決
をとるシステムを提供する。これは、CPU取出しは行
なうが記憶はしないので、メモリ・システム設計を大幅
に簡略化する。本発明のシステムでは、クロックが位相
ロックを必要としかつ既存の素子についてずっと広範な
再設計を必要とする耐障害クロッキングをTMRに提供
する必要はない。
【0008】
【実施例】図1に示すシステムはモジュール三重化(T
MR)のアプローチである。このアプローチは下記を実
現する: ・障害マスキングTMR動作、 ・3つの独立の素子として交互に動作する能力、 ・3つのTMR素子の1つの故障に続くオンライン修理
を可能にすること、 ・最初にTMRなしに計画されたマイクロプロセッサ素
子を殆ど変更のない目標として使用すること、 ・共通のクロックを必要としないこと、 ・単一箇所の故障を復帰減少のレベルに減らすこと、 ・及び、デュアルDASDのような他の非透明な手法が
耐障害に用いられる場合に、従来(非TMR)の入出力
(I/O)とインタフェースすること。
【0009】図1に示す良好な実施例は前述の目標を達
成する。これらの目標は処理可能であることか分かり、
本明細書に記述された概念はそれに応じて適合可能であ
ると予想される。
【0010】例えば、前述のアプローチは、システムが
3つの独立した素子として動作できる動作モードを可能
にするために三重化された主記憶装置を組込む。もしこ
の目標を取り止めることになれば、他の代替システム、
例えば対のメモリ・システム又は耐障害メモリ・システ
ムが考慮されるべきである。それでも、本発明の基本的
な素子は前記システムに適応させることができる。
【0011】ここでは、本明細書の読者は一般に障害マ
スキング・システムに関して、特にTMRシステムに関
してある程度知っていることを前提とする。そのため
に、本発明の多くの特性を予め指摘する(さもなけれ
ば、混乱を生じるかも知れない)ことが重要である。
【0012】最初に、個々のプロセッサ及びそれらのメ
モリの間の経路にあるデータ又はアドレスには多数決が
ない。これは実装及び性能の見地から考慮すべき重要な
ことである。これらの幅広いインタフェース上の情報の
多数決の複雑さはそれによって生じる遅延と共に望まし
くない。この決定の1つの利点はプロセッサ/メモリ相
互接続に関連した単一箇所の故障がないことである。
【0013】プロセッサ間の唯一の交差接続は前記プロ
セッサとメモリのインタフェースに関連し、図1に示す
ように、同期は強制するがデータの完全性は検査しない
ことを目的とするアービタ(arbiter)を介して行なわれ
る。
【0014】それぞれがメモリ・バス・アダプタ(MB
A)を有するプロセッサ・カード101、102、10
3として表示された3つの処理装置の入出力(I/O)
インタフェースにおける全ての出力について多数決が行
なわれる。その結果は次のようになる。すなわち、シス
テム障害又は故障の結果として、3つのプロセッサ・メ
モリの内容は、出力多数決素子(ボータ)に不一致が現
われずに、所定の時間内のある点で一致しないことがあ
る。これは、例えば、誤りのあるI/Oがプロセッサの
1つのメモリに入力された結果である。
【0015】これは利点とみなすことができる。例えば
I/Oの結果のような、対応するメモリ・ロケーション
の内容の相違は障害ではない。代わりに、出力の不一致
を生じるとき必ず間接的に検出されるのは潜在的な障害
である。これは明らかに決して起きないであろう。前記
例の2つは、決して読取られない間接データ・ワード、
又は関心のある動作期間の間に決して選択されない分岐
に続く間接命令である。これは明白であり、決して読取
られないロケーションの内容は組合せ禁止である。
【0016】単一箇所の故障を除去する試みは行なわれ
ていない。代わりに、限界費用が限界利益により正当化
されなくなるレベルまで前記故障を減少させることが目
標になる。
【0017】最後に、素子は、メモリが同期して動作す
るが、全く同じロック・ステップでは動作しない。これ
はメモリ・アクセスで直接に同期する結果である。
【0018】個々の素子は主記憶装置にアクセスすると
きだけ他のグループ内の2つの対応するプロセッサと同
期される。従って、同期はキャッシュ・ミスの直接の結
果である。同期を達成する手段は、3つのプロセッサが
主記憶装置に対して行なうアクセスに関連した待ち状態
の数の変化を見ることができることである。即ち、3つ
のグループにある3つの対応する素子の少なくとも2つ
がメモリ参照を要求を行なうまで記憶装置参照は行なわ
れない。プロセッサの同期がどれだけ外れているかによ
り、メモリ要求を最も早く行なうプロセッサは二番目に
メモリ要求を行なうプロセッサよりも長く待ち状態にあ
り、二番目にメモリ要求を行なうプロセッサは三番目に
メモリ要求を行なうプロセッサよりも長く待ち状態にあ
る。従って、あらゆるメモリ参照で待ち状態の挿入はプ
ロセッサをデスキュー(deskew)する。
【0019】[システム素子]図1は良好なTMRシス
テム構成を示す。三重化された素子の各々はプロセッサ
101、102、103、メモリ104、105、10
6及びアービタ107、108、109から成る。実際
のカード数は特に関連しないが、説明の都合でプロセッ
サ及びアービタはそれぞれ1枚のカードとして示され、
メモリ・システムは4枚のカードとして示される。ボー
タL及びボータRは三重化された素子の出力を比較し誤
り検査を組込むがTMRではない。
【0020】下記はTMRされた素子の各々の特性であ
る。 1.異なるメモリ・システムは各素子に独特に関連す
る。共有メモリは存在しない。 2.図示のように、異なるアービタは物理的にプロセッ
サ又はメモリのどちらにも関連しないが、所望されれ
ば、どちらとも一緒に実装することができる。 3.各々のアービタ及びその関連プロセッサの間に1つ
の両方向性制御バスがある。 4.プロセッサNに関連したアービタ及び他の2つのプ
ロセッサの間に1つの単方向性制御バスがある。 5.アービタはプロセッサ又はメモリからの記憶アドレ
ス又はデータをアクセスしない。 6.各々の素子は100万分の30程度の周波数精度を
有する異なるクロックを有する。共通のクロックは用い
ない。3つの異なるクロックは自由に動作し、クロック
を同期させる試みは行なわれない。 7.I/OシステムはTMRではない。各々のインタフ
ェースに関連したボータを介して、3つの素子全てに、
各々の異なる外部インタフェースが接続される(L^ 及
びR^ の2つが示されている)。
【0021】[単一箇所の故障のない素子]共通の単一
箇所の電源故障がないように素子は別個に電源を投入す
ることが規定される。
【0022】ある種のアービタ故障は単一箇所の故障で
あることは明白であるが、これは本実施例では当てはま
らない。1つのプロセッサ101に関連したアービタ1
と他のプロセッサ102及び103(それぞれプロセッ
サ2及びプロセッサ3)との間の唯一の接続は、プロセ
ッサ2及びプロセッサ3からアービタ1へ、又はその逆
に、制御情報を伝送するための読取り専用インタフェー
スである。アービタ1からプロセッサ2及びプロセッサ
3へのデータ又は制御情報を転送する経路はない。よっ
て、この単方向性のバスの回路は、もしアービタ1が故
障し、プラグが切られ又はプラグが接続され、あるいは
もし2つのバスのどちらかが接地電位に短絡しても、プ
ロセッサ2及びプロセッサ3の動作が影響を受けないよ
うに設計されるものとする。この接続は当業者によって
行なわれるので、その詳細は本明細書では省略する。
【0023】アービタ及びその関連プロセッサの間のイ
ンタフェースは両方向性であり、アービタN、プロセッ
サNからアービタNへのバス又はプロセッサN自身の故
障は素子Nの故障を生じることがあるが、残りの2つの
素子の故障は生じない。
【0024】[アービトレーション]このセクションは
前記説明と首尾一貫するアービトレーション(arbitrati
on)の手段について説明する。
【0025】最初に、非同期のTMR構成において3つ
の同期プロセッサを動作させることは何を意味するかを
考える。本明細書では、これは、1つの素子の中のCP
Uが残りの2つのチャネルにあるCPUとメモリ・アク
セスを同期して動作するが、あらゆるCPUサイクルの
間及び(又は)前記サイクルの後にロック・ステップで
動作しないことを意味する。
【0026】3つのCPUはTMRグループを含む。も
し、I/Oなしに、かつ(タイマ又は時刻(TOD)ク
ロックのような)非同期時間従属なしに、同じプログラ
ムの実行と共に開始されれば、それらのCPUはそれぞ
れの発振器の周波数精度により僅かに異なる速度で同じ
プログラム・シーケンスを実行する。それらを同期させ
る追加の手段が使用されなければ、任意の2つのプロセ
ッサの間の1分後の時間のずれは60マイクロ秒程度に
なることがある。任意の1つの発振器の精度は公称値±
100万分の30程度であり、これは1分当り30マイ
クロ秒に相当する。1つの発振器が正の最大のずれを有
しもう1つの発振器が負の最大のずれを有する場合、両
者の間の最大のずれは60マイクロ秒程度になる。これ
は、16.7ミップス(100万命令/秒)に対応する60
ナノ秒の平均命令実行時間を有するプロセッサの100
0個の命令に相当する。
【0027】このTMRアービトレーションの本質は、
1つの素子にあるCPU又はMBAがそのメモリに対す
るアクセスを許可されると同時に、他の2つのチャネル
にある対応する要求元がそれらの素子のメモリに対する
アクセスを同時に許可されることを保証することであ
る。
【0028】局所アービトレーションを有するTMRを
示す図1のように、所与の素子に関連したアービタは、
その関連した素子にあるどの要求元又はどの複数の要求
元がアクセスを要求しているかを完全に把握している。
同様に、所与の素子を有するアービタは他の素子にある
どの要求元がそれらの関連したメモリからのサービスに
関して競争しているかも完全に把握している。
【0029】3つの素子は異なるクロックで動作し、ロ
ック・ステップではないから、この任意のアービタでの
バス要求の到着パターンは指図されない。
【0030】3つの素子におけるCPUメモリ・アクセ
スを同期させるには、CPUメモリ要求が同時に3つの
素子に許可されねばならないことになる。従って、素子
2にあるCPUがアクセスを許可されるとき、同時に他
の2つの素子にあるCPUにもアクセスを許可する必要
がある。
【0031】また、任意の素子にあるCPUにバス要求
を許可するためには、少なくとも2つの素子が未解決の
CPU要求を持たねばならないことになる。すなわち、
当該素子にあるCPUにCPUアクセスを許可するため
に、アービタでCPUサービスの多数決を得る、即ち、
CPUアクセスの多数決を得ることが必要がある。
【0032】これらの素子はロック・ステップで動作し
ていないから、ユーザ、即ちCPUのサービスに関する
3つ(又は2つ)の要求の全てがどのアービタでも正確
に同時に識別できるとは限らないことは間違いない。
(1つの理由として、各CPUはその要求をそれ自身の
クロックに関して行なう。)
【0033】故障がないものと仮定すると、任意のアー
ビタでのサービスに関する最初の要求、例えばCPU3
の要求が届いた後、異なる素子から二番目のCPU要求
が同じアービタに届き、間もなく残りの素子から三番目
のCPU要求が届くことが予想できる。
【0034】最初のCPU要求が届いた直後は何もしな
いことは明らかである。アービタで二番目のCPU要求
が識別されると、CPUサービスが多数決で決められ
る。即ち、同じアービタに対するCPUサービスに関す
る2つの識別できるサービス要求は関連した素子のCP
Uアクセスを許可することが必要であるが、それだけで
は十分ではない。
【0035】アービタにおけるCPUの3つのサービス
要求(各素子から1つ)は障害のない動作の通常のケー
スであり、十分である。ここで、二番目に続く三番目の
要求をどれだれ長く待つかについて考える。この時間遅
延(T)は設計上の公差の問題であり、本明細書では定
量化しなくてもよい。従って、もし二番目の要求の到着
に続いてCPUの三番目の要求を時間T内に受取れば、
アービタは当該素子にあるCPUにCPUアクセスを自
主的に許可できる。(前記アービタはその対応するCP
Uにだけアクセスを許可できる。前記アービタと他のC
PUは単方向性バスを介して接続される。)
【0036】もし三番目のCPUが二番目の要求に続い
て時間T内に対応するサービス要求を行なわなければ、
大多数はアクセスの許可に同意しないと考えられる。他
の即時動作は行なう必要がない。
【0037】全ての要求元のメモリ・アクセスは同じよ
うに調停される。
【0038】[アービタ実装]図示のようにアービタは
異なるサブアセンブリとして識別されるが、多くの場
合、アービタはその関連プロセッサと共に実装する方が
よい。それはBMS、プロセッサ及びボータと比較する
と非常に簡単な作業であり数本のピンしか必要としな
い。
【0039】[性能]説明を続ける前に、本発明の実体
の一部について述べる。最初に、アービトレーションの
プロセスは、前述のように、各CPUの性能に大きな影
響を与える。サービスを要求する最初の最も早いCPU
に対する応答は:(1)二番目の最も速いCPUからの
要求を待つこと、(2)時間遅延T、及び(3)実際の
アービトレーションに関連した遅延の追加により減速さ
れる。前述のように、この減速はメモリ応答時間に続く
待ち状態により導入される。この遅延によって、3つの
CPUは再び同期化される。よって、CPUを非TMR
モードで実行するときに達成できる性能と比較すると、
各々の性能、結果的に全性能は低下する。
【0040】CPUは全て異なるクロックから走行して
いるから、それらのクロック周波数は同じではなく位相
も一致しない。よって、CPUは、メモリ参照のあい
だ、接近してはいるが厳密なロック・ステップでは動作
しない。最も速い(最初のアクセス要求を行なう)CP
Uのアクセスは減速され、それらが異なる発振器から走
行していることにより、最も遅いCPUのアクセス要求
と同期される。更に、全性能はアービトレーション遅延
の結果からも大きな影響を受ける。
【0041】本発明の利点は減速が直接の影響ではなく
二次的なものと予想されることである。減速は主記憶装
置のメモリ参照に関連した同期に直接関連するが、サイ
クル単位又は命令単位では生じない。主記憶装置のメモ
リ参照の周波数はキャッシュ・ミスの率に直接関係する
から、性能の低下も同様にキャッシュ・ミスの率に比例
する。同期関係は存在しないので、キャッシュ・ヒット
に関連した性能低下はない。
【0042】要するに、性能低下はクロック精度と同期
遅延の結果である。
【0043】[入出力の概観]このセクションは前述の
TMR処理複合体に関する入出力システムの構成の概観
である。ここでは、本発明は高いレベルで説明する。後
続のセクションは特定の必要な事項の詳細を説明する。
【0044】2つの異なる、独立し多重化された、両方
向性入出力インタフェースは "局所アービトレーション
を有するTMR" に示される。
【0045】ここで注意すべきことは、CPU、MBA
及びメモリを相互接続する2つのメモリ・バスにこれら
の2つのI/Oバスを直に関連づけないことである。こ
れらのバスは下記の特性を有する。 ・2つのI/Oバスは独立しているので、調停されねば
ならない。 ・2つのメモリ・バスは独立していないので同時に用い
られ、一度に全キャッシュ・ラインをアクセスする。 ・I/Oバスはメモリ・バスほど広くなくてもよい。
【0046】従って、MBAはメモリへのデータをアセ
ンブルしメモリからのデータを逆アセンブルするために
内蔵記憶装置を備えて速度を緩衝しなければならない。
【0047】そのために、2つのMBAバスの間に、な
らびにMBAバスとCPUの間にアービトレーションを
必要とすることは明白である。アービトレーションのた
めの2つのMBA入力(1つは左(L)バス、他の1つ
は右(R)バス)があるものとする。従って、各素子の
共有素子メモリのアービトレーションはCPU並びにM
BA-L及びMBA-Rを含む。
【0048】[多数決素子(ボータ)]2つの異なるボ
ータがある。1つはL I/Oバスであり、他の1つは
R I/Oバスである。図1のボータL及びボータRを
参照されたい。
【0049】入出力システムは三重化されない。従っ
て、プロセッサからの3つの二重化された出力データ・
ストリームは、単一障害がマスクされたI/O出力デー
タ・ストリームを与えるように多数決される。即ち、3
つのMBA L チャネル・インタフェースからの出力デ
ータ・ストリームはボータLで多数決される。その結果
はインタフェースL^ に供給される。このインタフェー
スは、後続するI/Oシステム(チャネル、デバイス
等)で分かるように、電気的にも論理的にもLインタフ
ェースと同じである。ボータRはもう1つの独立したI
/Oインタフェースに対応する。
【0050】全情報は3つの同じ出力ストリームから単
一出力ストリームに流れる。即ち、3対1、3つのスト
リーム対1つのL^ ストリームである。そして、これは
繰返され、3つの異なるRストリーム対1つのR^ スト
リームと、再び3対1になる。従って、3つの等しい出
力ストリーム対単一出力ストリームの2つのインスタン
ス(instance)、L出力ストリーム及びR出力ストリーム
がある。入力については、1ストリーム対3ストリーム
の2つのインスタンス、L^及びR^がある。
【0051】L^ チャネルの出力要求を受取り、ボータ
がこの要求をサービスする決定を行なうと、前記要求は
L^ インタフェースからボータを介して3つのインタフ
ェース全てに伝達される。ここで三重化された要求は次
にプロセッサ・カードの各々のアービトレーション・イ
ンタフェースを介して別個に伝達される。即ち、プロセ
ッサの各々はそのL要求を他のサービス要求と一緒にそ
れらのRインタフェース及び該CPUからそのアービト
レーション・インタフェースを介して関連したアービタ
に転送する。そこでアービタはサービス・アービトレー
ションの多数決に参加する。この経路には隘路はない。
よって、単一のL^ 要求から生じた3つのL要求は全て
本質的に同時にそれぞれのアービタに到着すべきであ
る。即ち、それらは互いに数ナノ秒内にそれぞれのアー
ビタに到着すべきである。しかしながら、それらはアー
ビトレーションにより遅延される。Lインタフェースに
対するサービスを許可することが決定されると、当該決
定は3つのMBAに返送され、各MBAはそれ自身のメ
モリに又はそれ自身のメモリからそれ自身のメモリ・ア
クセスを行なう。
【0052】メモリからのデータが要求されると、該デ
ータはメモリからアクセスされてボータに伝達され、緩
衝記憶され、そして他の2つの素子からのデータと比較
される。多数決がとられ、もし望ましければ、それは三
者の合意からの3であるか又は二者の合意からの2であ
り、該データの良好なコピーはLインタフェースを介し
てボータから出力される。1つの不同意により、該不同
意のプロセッサ内の故障が識別されている。もし三者が
全て不同意であれば、2つの故障がある。
【0053】ボータがチャネルL^ で特定の要求元にサ
ービスすることを決定し該サービスの要求を転送すると
同時に、データの伝達を開始することをボータがインタ
フェースに通知できることを除いて、入力に関する状況
は本質的に同じである。このデータはそれぞれのプロセ
ッサで3つのLチャネル・インタフェース全てに伝達さ
れ、そこで緩衝記憶される。従って、データ伝送はアー
ビトレーションとオーパラップすることがある。サービ
ス要求が許可されると、データは3つのMBAからメモ
リに同時に転送される。このデータは1つのL^ ストリ
ームから3つの同じLストリームに対して流れるから、
多数決は行なわれない。
【0054】ボータと呼ばれる機能素子は全て両方向性
データ伝送ポートとみなされる。前記ポートは出力伝送
については多数決による3対1の組合せ装置(combiner)
として作用し、入力については多数決によらない1対3
の分割装置(splitter)として作用する。
【0055】プロセッサ同期と比較して、I/Oデータ
同期は容易である。データI/O動作は全て、(三重化
ソースではない)単一のI/Oソースから要求が一度に
来る要求/応答タイプである。即ち、I/Oサービス要
求は同期されなくてもよい。1つのL^ サブチャネル又
はR^ サブチャネルから一度に1つの要求だけがある。
(1つのR^ サブチャネルに要求が存在すると同時に1
つのL^ サブチャネルに要求が存在することがある。)
要求は1対3に分割され、I/Oサービス要求はCPU
要求と同じように表示される。それはCPUと同じアー
ビトレーション・プロセスで競争する。
【0056】[同期/多数決の制御]前述の説明で分か
るように、データ入力では多数決なしの分割が実行され
た。そして、データ出力では同期及び多数決が実行され
る。このセクションでは、同期/多数決は、I/O命令
から生じる出力及びコマンドでも実行されねばならない
ことが分かる。
【0057】CPUとI/Oのサービス要求の間に衝突
があるとは予想されない。後で説明するように、割込み
は全て同期されるから、全ての素子は全く同じシーケン
スでI/Oコマンドを出力する。3つのプロセッサをデ
スキュー(最初の要求を再び保持)し且つ制御要求の内
容を多数決することも必要である。もし多数決があれ
ば、同意しない参加者は故障とみなされ排除されるべき
である。
【0058】[割込み]割込みには一般に2つのクラス
がある。1つはプログラム検査のようなCPU/精密割
込みであり、プログラム実行に完全に同期する。他の1
つはI/O割込みのような非同期割込みであり、通常は
プログラム実行と同期しない。
【0059】前者は問題を生じない。それらはプログラ
ム実行と同期しているから、同じプロセッサでも異なる
プロセッサでも反復することができる。そのために、そ
れらの全てのTMR素子の連続動作は全く同じである。
【0060】一般に非同期割込み、特にI/O割込みで
は問題は別である。I/Oシステムは三重化されていな
いから、単一のI/O割込み要求は3つのプロセッサに
より分割され、互いに全く同じシーケンスでサービスさ
れなければならない。即ち、3つのCPUはすべて、全
く同じCPU命令が終了したとき、I/O割込みを行な
わねばならない。
【0061】CPUは互いにスキューしているにもかか
わらず全く同じシーケンスで動作しているから、三重化
されていないI/O割込み要求は、分割されてからスキ
ューされて3つの異なる絶対時間に3つのCPUに表示
されるか、又は遅延されてからCPUが完全に同期する
時点に表示されねばならない。後者は本発明の手段であ
る。
【0062】CPUメモリ・アクセスが開始される毎に
CPUは1クロック・サイクル内で互いに同期すること
が保証される。(これはメモリ遅延(待ち状態)の増加
は全て正確なクロック周期の倍数であると仮定する。)
よって、割込み要求は当該CPUが主記憶装置参照を行
なうまで各CPU内で遅延され、その時点で前記要求は
有効になる。もし割込みがマスクされなければ、CPU
はメモリ参照に関連した最新の命令が終了すると直ちに
該割込みをサービスする。これは3つのCPU全てにお
いて同じ命令である。もし割込みがマスクされれば、そ
れがアンマスク(unmask)された後の最初の機会に捕捉さ
れ、これは3つのCPU全てについて同じ命令が終了し
たときでもある。(この動作に関連した競争もあるが、
メモリ動作に関連した遅延のために、それは決定的なも
のではない。)
【0063】[タイマ及びTODクロック]前述の手法
は実現の手段であり構成の変更ではない。即ち、TMR
は障害をマスクするために用いられるが、アプリケーシ
ョン・プログラマには見えない。もちろん、それは構成
制御に必要なオペレーティング・システム及び(又は)
他のソフトウェア/マイクロコードには分かる。障害の
後に続く再同期、診断及び他の機能はユーザには直接に
は分からない。それでも、これまでに説明した実施例は
構造的にはユーザに透明である。
【0064】一定の既存の構成と適合しない1つの広い
領域があるかも知れない。これは時刻(TOD)クロッ
クをを含むタイマ及びクロック構成である。本明細書で
は、それは、単一のプロセッサで行なわれるように個々
の素子の発振器から駆動されるクロック及びタイマを用
いうるようにはとても見えない。素子の発振器は非同期
であるから、タイマ及びクロックに対するCPU参照は
どれも同じように非同期であり、首尾一貫しない動作に
なることがある。
【0065】結果は次のようになる。(a)正確なクロ
ック同期を与える手段が提供されるか、(b)3つの素
子全てに単一の外部タイム・ソースが用いられ、非同期
割込みの同期と同じように同期される。後者は本発明と
一致するので、本明細書で前提となる。前者は新たな発
明が必要であり、本発明の説明の範囲外である。
【0066】適合性のある時間の整合性を維持する多く
の異なる方法があるが、ここでは1つの方法についてだ
け説明する。
【0067】この方法はメモリ・ロケーションとしてク
ロック及び(又は)タイマをアドレス指定するCPUに
関するものである。この方法では、一貫性のあるコピー
は3つの素子全てに設けることができる。これは、更新
を、それらがCPU参照と同期されるように、調整する
ことにより行なうことができる。即ち、メモリ内のクロ
ック更新はどれも、CPU/メモリ参照が要求されてか
ら次のメモリ・アクセスが許可されるまで、遅延されね
ばならない。CPUはそのメモリ参照に従って同期する
から、もしこの方法で実行されれば、後続の記憶更新は
全てのCPUについて一貫性がある。もしクロック/タ
イマのロケーションがキャッシュに記憶されていれば、
これらの対応するエントリは無効化されねばならないこ
とは明白である。
【0068】本発明は、3つの処理素子の各々に異なる
非同期クロックを組込み、それによって共通のクロック
に関連した単一箇所の故障を回避するTMR動作を提供
する手段を開示する。よって、任意の素子の動作は本質
的に他の素子の動作と非同期である。この相違は僅かで
あるが、正しい動作をなし遂げるためには補償されねば
ならない。これは前述の手段により達成することができ
る。
【0069】同じ手段は、1サイクルよりも小さいスキ
ューで分散できない素子が共通のクロックから動作する
システムにも用いることができる。ここで、個々の素子
の動作が同期していると仮定すれば、素子は通常は同じ
ように動作するが、動作する際の相互の位相のずれ(ス
キュー)は1サイクルよりも大きい。即ち、それらの動
作にはスキューがあり、(スキューが1サイクルよりも
小さい)ロック・ステップではない。このような場合、
素子の同期が必要である。本明細書に記述された、非同
期の素子を同期させる前記同じ手段はスキューされた素
子を同期させるのにも用いることができる。
【0070】
【発明の効果】本発明によって、三重化されたメモリを
使用し、メモリ出力で多数決をとるシステムを提供でき
る。
【図面の簡単な説明】
【図1】モジュール三重化(TMR)の構成を示す図で
ある。
【符号の説明】
101 プロセッサ/プロセッサ・カード 102 プロセッサ/プロセッサ・カード 103 プロセッサ/プロセッサ・カード 104 メモリ 105 メモリ 106 メモリ 107 アービタ 108 アービタ 109 アービタ

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】モジュール化プロセッサ・システムであっ
    て、 各プロセッサがそれ自身に接続されたメモリを有する、
    非同期で接続された複数のプロセッサと、 プロセッサ素子と交差接続し、各アービタが前記システ
    ムにより実行されるタスクの同期を強制させる手段を有
    する複数のアービタと、及び出力でアービトレーション
    を多数決するための複数の多数決手段とを備えるモジュ
    ール化プロセッサ・システム。
  2. 【請求項2】局所アービトレーションを有する非同期モ
    ジュール三重化処理システムであって、 N個のプロセッサ素子と、 前記プロセッサ素子の各々にそれぞれ関連したN個のア
    ービタ素子と、 各プロセッサ素子に関連したメモリと、 各アービタとその関連プロセッサの間の両方向性制御バ
    スと、 前記システムの各プロセッサ、アービタ及び他のプロセ
    ッサの間の単方向性制御バスと、 前記システムのうちのどのプロセッサが要求元であるか
    を各プロセッサに知らせる手段と、 前記システム内で他の素子のどの要求元がサービスにつ
    いて競争しているかを各プロセッサに知らせる手段と、
    及び出力伝送については多数決するが入力については多
    数決しないサービス・アービトレーションの多数決を与
    える複数のボータとを備える非同期モジュール三重化処
    理システム。
  3. 【請求項3】各プロセッサは各プロセッサ素子がそれ自
    身のクロック・タイムで動作できる手段を提供される請
    求項2の非同期モジュール三重化処理システム。
  4. 【請求項4】前記ボータは、出力伝送では多数決するN
    対1の結合装置として作用し、入力では多数決しない1
    対Nの分割装置として作用する、サービス・アービトレ
    ーションの多数決を提供する請求項2の非同期モジュー
    ル三重化処理システム。
JP4073725A 1991-05-28 1992-03-30 モジュール化プロセッサ・システム Expired - Lifetime JPH0812622B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US706497 1991-05-28
US07/706,497 US5339404A (en) 1991-05-28 1991-05-28 Asynchronous TMR processing system

Publications (2)

Publication Number Publication Date
JPH0683660A true JPH0683660A (ja) 1994-03-25
JPH0812622B2 JPH0812622B2 (ja) 1996-02-07

Family

ID=24837870

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4073725A Expired - Lifetime JPH0812622B2 (ja) 1991-05-28 1992-03-30 モジュール化プロセッサ・システム

Country Status (2)

Country Link
US (1) US5339404A (ja)
JP (1) JPH0812622B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009086939A (ja) * 2007-09-28 2009-04-23 Hitachi Ltd バス比較型多重系処理装置
WO2021029143A1 (ja) * 2019-08-15 2021-02-18 ソニーセミコンダクタソリューションズ株式会社 半導体記憶装置及び該装置における不良メモリセルに対するエラー処理方法

Families Citing this family (73)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0496506B1 (en) 1991-01-25 2000-09-20 Hitachi, Ltd. Fault tolerant computer system incorporating processing units which have at least three processors
US5537655A (en) * 1992-09-28 1996-07-16 The Boeing Company Synchronized fault tolerant reset
JP3229070B2 (ja) * 1993-06-01 2001-11-12 三菱電機株式会社 多数決回路及び制御ユニット及び多数決用半導体集積回路
US5572620A (en) * 1993-07-29 1996-11-05 Honeywell Inc. Fault-tolerant voter system for output data from a plurality of non-synchronized redundant processors
US5812757A (en) * 1993-10-08 1998-09-22 Mitsubishi Denki Kabushiki Kaisha Processing board, a computer, and a fault recovery method for the computer
EP0731945B1 (en) * 1993-12-01 2000-05-17 Marathon Technologies Corporation Fault resilient/fault tolerant computing
JPH0863365A (ja) * 1994-08-23 1996-03-08 Fujitsu Ltd データ処理装置
US5680408A (en) * 1994-12-28 1997-10-21 Intel Corporation Method and apparatus for determining a value of a majority of operands
KR960024899A (ko) * 1994-12-31 1996-07-20 김주용 대표값 선택기와 그 구현 방법
US5719559A (en) * 1995-06-23 1998-02-17 Limitorque Corporation System and method for the verification of a digital control system
US5666483A (en) * 1995-09-22 1997-09-09 Honeywell Inc. Redundant processing system architecture
US5790397A (en) * 1996-09-17 1998-08-04 Marathon Technologies Corporation Fault resilient/fault tolerant computing
US5903717A (en) * 1997-04-02 1999-05-11 General Dynamics Information Systems, Inc. Fault tolerant computer system
US5896523A (en) * 1997-06-04 1999-04-20 Marathon Technologies Corporation Loosely-coupled, synchronized execution
US6185646B1 (en) * 1997-12-03 2001-02-06 International Business Machines Corporation Method and apparatus for transferring data on a synchronous multi-drop
US6247143B1 (en) * 1998-06-30 2001-06-12 Sun Microsystems, Inc. I/O handling for a multiprocessor computer system
DE19831720A1 (de) * 1998-07-15 2000-01-20 Alcatel Sa Verfahren zur Ermittlung einer einheitlichen globalen Sicht vom Systemzustand eines verteilten Rechnernetzwerks
US6490693B1 (en) 1999-08-31 2002-12-03 International Business Machines Corporation Dynamic reconfiguration of a quorum group of processors in a distributed computing system
US6542929B1 (en) 1999-08-31 2003-04-01 International Business Machines Corporation Relaxed quorum determination for a quorum based operation
US6526432B1 (en) * 1999-08-31 2003-02-25 International Business Machines Corporation Relaxed quorum determination for a quorum based operation of a distributed computing system
US6487678B1 (en) 1999-08-31 2002-11-26 International Business Machines Corporation Recovery procedure for a dynamically reconfigured quorum group of processors in a distributed computing system
US6550018B1 (en) 2000-02-18 2003-04-15 The University Of Akron Hybrid multiple redundant computer system
US6732300B1 (en) 2000-02-18 2004-05-04 Lev Freydel Hybrid triple redundant computer system
US7908520B2 (en) * 2000-06-23 2011-03-15 A. Avizienis And Associates, Inc. Self-testing and -repairing fault-tolerance infrastructure for computer systems
EP1239369A1 (de) * 2001-03-07 2002-09-11 Siemens Aktiengesellschaft Fehlertolerante Rechneranordnung und Verfahren zum Betrieb einer derartigen Anordnung
EP1398700A1 (de) * 2002-09-12 2004-03-17 Siemens Aktiengesellschaft Verfahren und Schaltungsanordnung zur Synchronisation redundanter Verarbeitungseinheiten
US7467326B2 (en) * 2003-02-28 2008-12-16 Maxwell Technologies, Inc. Self-correcting computer
US20060020852A1 (en) * 2004-03-30 2006-01-26 Bernick David L Method and system of servicing asynchronous interrupts in multiple processors executing a user program
US20050240806A1 (en) * 2004-03-30 2005-10-27 Hewlett-Packard Development Company, L.P. Diagnostic memory dump method in a redundant processor
US7289889B2 (en) * 2004-04-13 2007-10-30 General Motors Corporation Vehicle control system and method
US7392426B2 (en) * 2004-06-15 2008-06-24 Honeywell International Inc. Redundant processing architecture for single fault tolerance
US7047440B1 (en) * 2004-07-27 2006-05-16 Freydel Lev R Dual/triple redundant computer system
US7236005B1 (en) 2005-02-09 2007-06-26 Intel Corporation Majority voter circuit design
FR2912526B1 (fr) * 2007-02-13 2009-04-17 Thales Sa Procede de maintien du synchronisme d'execution entre plusieurs processeurs asynchrones fonctionnant en parallele de maniere redondante.
US8959307B1 (en) 2007-11-16 2015-02-17 Bitmicro Networks, Inc. Reduced latency memory read transactions in storage devices
EP2085839B1 (en) * 2008-02-01 2014-04-16 Rockwell Automation Limited Apparatus for unidirectionally interconnecting modules
US8200947B1 (en) * 2008-03-24 2012-06-12 Nvidia Corporation Systems and methods for voting among parallel threads
US8564616B1 (en) 2009-07-17 2013-10-22 Nvidia Corporation Cull before vertex attribute fetch and vertex lighting
US8542247B1 (en) 2009-07-17 2013-09-24 Nvidia Corporation Cull before vertex attribute fetch and vertex lighting
US8665601B1 (en) 2009-09-04 2014-03-04 Bitmicro Networks, Inc. Solid state drive with improved enclosure assembly
US8447908B2 (en) 2009-09-07 2013-05-21 Bitmicro Networks, Inc. Multilevel memory bus system for solid-state mass storage
US8560804B2 (en) 2009-09-14 2013-10-15 Bitmicro Networks, Inc. Reducing erase cycles in an electronic storage device that uses at least one erase-limited memory device
US8976195B1 (en) 2009-10-14 2015-03-10 Nvidia Corporation Generating clip state for a batch of vertices
US8384736B1 (en) 2009-10-14 2013-02-26 Nvidia Corporation Generating clip state for a batch of vertices
US9372755B1 (en) 2011-10-05 2016-06-21 Bitmicro Networks, Inc. Adaptive power cycle sequences for data recovery
US8856590B2 (en) * 2012-01-07 2014-10-07 Compunetix, Inc. Reliable compute engine, method and apparatus
US9043669B1 (en) 2012-05-18 2015-05-26 Bitmicro Networks, Inc. Distributed ECC engine for storage media
CN102929157B (zh) * 2012-11-15 2015-10-21 哈尔滨工程大学 一种三冗余的船舶动力定位控制计算机系统
US9423457B2 (en) 2013-03-14 2016-08-23 Bitmicro Networks, Inc. Self-test solution for delay locked loops
US9798688B1 (en) 2013-03-15 2017-10-24 Bitmicro Networks, Inc. Bus arbitration with routing and failover mechanism
US9842024B1 (en) 2013-03-15 2017-12-12 Bitmicro Networks, Inc. Flash electronic disk with RAID controller
US10489318B1 (en) 2013-03-15 2019-11-26 Bitmicro Networks, Inc. Scatter-gather approach for parallel data transfer in a mass storage system
US9934045B1 (en) 2013-03-15 2018-04-03 Bitmicro Networks, Inc. Embedded system boot from a storage device
US9501436B1 (en) 2013-03-15 2016-11-22 Bitmicro Networks, Inc. Multi-level message passing descriptor
US9430386B2 (en) 2013-03-15 2016-08-30 Bitmicro Networks, Inc. Multi-leveled cache management in a hybrid storage system
US9672178B1 (en) 2013-03-15 2017-06-06 Bitmicro Networks, Inc. Bit-mapped DMA transfer with dependency table configured to monitor status so that a processor is not rendered as a bottleneck in a system
US9875205B1 (en) 2013-03-15 2018-01-23 Bitmicro Networks, Inc. Network of memory systems
US10120694B2 (en) 2013-03-15 2018-11-06 Bitmicro Networks, Inc. Embedded system boot from a storage device
US9400617B2 (en) 2013-03-15 2016-07-26 Bitmicro Networks, Inc. Hardware-assisted DMA transfer with dependency table configured to permit-in parallel-data drain from cache without processor intervention when filled or drained
US9916213B1 (en) 2013-03-15 2018-03-13 Bitmicro Networks, Inc. Bus arbitration with routing and failover mechanism
CN103466067B (zh) * 2013-09-11 2015-09-30 哈尔滨工程大学 一种船舶冗余动力定位系统专用操纵装置
US10025736B1 (en) 2014-04-17 2018-07-17 Bitmicro Networks, Inc. Exchange message protocol message transmission between two devices
US10055150B1 (en) 2014-04-17 2018-08-21 Bitmicro Networks, Inc. Writing volatile scattered memory metadata to flash device
US9952991B1 (en) 2014-04-17 2018-04-24 Bitmicro Networks, Inc. Systematic method on queuing of descriptors for multiple flash intelligent DMA engine operation
US10042792B1 (en) 2014-04-17 2018-08-07 Bitmicro Networks, Inc. Method for transferring and receiving frames across PCI express bus for SSD device
US10078604B1 (en) 2014-04-17 2018-09-18 Bitmicro Networks, Inc. Interrupt coalescing
US10481963B1 (en) * 2016-06-29 2019-11-19 Amazon Technologies, Inc. Load-balancing for achieving transaction fault tolerance
US10552050B1 (en) 2017-04-07 2020-02-04 Bitmicro Llc Multi-dimensional computer storage system
CN108345254B (zh) * 2018-04-08 2020-10-23 上海航天计算机技术研究所 三冗余控制方法和系统
FR3102268B1 (fr) 2019-10-18 2023-03-10 St Microelectronics Rousset Procédé d’authentification d’un circuit sur puce et système sur puce associé
US12598081B2 (en) 2024-07-26 2026-04-07 Dell Products L.P. Data processing system peripheral device management using component certificates
US12591524B2 (en) * 2024-07-26 2026-03-31 Dell Products L.P. Peripheral device sharing between data processing systems
US12541415B2 (en) 2024-07-26 2026-02-03 Dell Products L.P. Management and recovery of peripheral devices during host system crashes

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6045801A (ja) * 1983-08-24 1985-03-12 Hitachi Ltd 多重化構成制御装置

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CH556576A (de) * 1973-03-28 1974-11-29 Hasler Ag Einrichtung zur synchronisierung dreier rechner.
US4363096A (en) * 1980-06-26 1982-12-07 Gte Automatic Electric Labs Inc. Arbitration controller providing for access of a common resource by a duplex plurality of central processing units
US4644498A (en) * 1983-04-04 1987-02-17 General Electric Company Fault-tolerant real time clock
JPS59212902A (ja) * 1983-05-18 1984-12-01 Hitachi Ltd 多重化制御装置
GB2194850B (en) * 1986-09-05 1990-10-31 Philips Nv Data processing device
SE457391B (sv) * 1987-04-16 1988-12-19 Ericsson Telefon Ab L M Programminnesstyrt realtidssystem omfattande tre i huvudsak identiska processorer
US4868826A (en) * 1987-08-31 1989-09-19 Triplex Fault-tolerant output circuits
US4907232A (en) * 1988-04-28 1990-03-06 The Charles Stark Draper Laboratory, Inc. Fault-tolerant parallel processing system
US4965717A (en) * 1988-12-09 1990-10-23 Tandem Computers Incorporated Multiple processor system having shared memory with private-write capability
US5117442A (en) * 1988-12-14 1992-05-26 National Semiconductor Corporation Methods and circuits for synchronizing signals in a modular redundant fault tolerant computer system
IT1229667B (it) * 1989-04-24 1991-09-06 Bull Hn Information Syst Sistema di elaborazione dati con arbitratore duale di accesso a bus di sistema.
US5226152A (en) * 1990-12-07 1993-07-06 Motorola, Inc. Functional lockstep arrangement for redundant processors

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6045801A (ja) * 1983-08-24 1985-03-12 Hitachi Ltd 多重化構成制御装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009086939A (ja) * 2007-09-28 2009-04-23 Hitachi Ltd バス比較型多重系処理装置
WO2021029143A1 (ja) * 2019-08-15 2021-02-18 ソニーセミコンダクタソリューションズ株式会社 半導体記憶装置及び該装置における不良メモリセルに対するエラー処理方法

Also Published As

Publication number Publication date
US5339404A (en) 1994-08-16
JPH0812622B2 (ja) 1996-02-07

Similar Documents

Publication Publication Date Title
JPH0812622B2 (ja) モジュール化プロセッサ・システム
CA1306546C (en) Dual zone, fault tolerant computer system with error checking on i/o writes
US5845060A (en) High-performance fault tolerant computer system with clock length synchronization of loosely coupled processors
US5249187A (en) Dual rail processors with error checking on I/O reads
US4916704A (en) Interface of non-fault tolerant components to fault tolerant system
US5901281A (en) Processing unit for a computer and a computer system incorporating such a processing unit
US4358823A (en) Double redundant processor
US7865758B2 (en) Fault tolerant time synchronization mechanism in a scaleable multi-processor computer
US4907228A (en) Dual-rail processor with error checking at single rail interfaces
CA1311849C (en) Fault tolerant computer system with fault isolation and repair
US6374364B1 (en) Fault tolerant computing system using instruction counting
PT94055A (pt) Memoria principal fisica unica compartilhada por dois ou mais processadores que execytam sistemas operativos respectivos
EP1088273B1 (en) Processor bridge with posted write buffer
KR20070083772A (ko) 멀티 프로세서 시스템에서의 동기화 방법 및 장치
EP1667024B1 (en) Memory based cross compare for cross checked systems
EP1675006A2 (en) Fault tolerant computer system and interrupt control method for the same
US5473770A (en) Fault-tolerant computer system with hidden local memory refresh
US5382950A (en) Device for implementing an interrupt distribution in a multi-computer system
LALA Advanced information processing system
US5812822A (en) Apparatus for coordinating clock oscillators in a fully redundant computer system
JPH0916535A (ja) マルチプロセッサ計算機
KR100205031B1 (ko) 이중화 제어시스템의 동기제어 장치
US5745742A (en) Apparatus for coordinating clock distribution in a fully redundant computer system
JPS5843775B2 (ja) プロセツサバツクアツプシステム
JP2008225534A (ja) 動的縮退装置、方法