JPH03182938A - ブートストラップローディングの開始を制御する方法及び装置 - Google Patents

ブートストラップローディングの開始を制御する方法及び装置

Info

Publication number
JPH03182938A
JPH03182938A JP2203798A JP20379890A JPH03182938A JP H03182938 A JPH03182938 A JP H03182938A JP 2203798 A JP2203798 A JP 2203798A JP 20379890 A JP20379890 A JP 20379890A JP H03182938 A JPH03182938 A JP H03182938A
Authority
JP
Japan
Prior art keywords
zone
memory
data
zones
module
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2203798A
Other languages
English (en)
Inventor
William Bruckert
ウィリアム ブルッカート
David Kovalcin
ディヴィッド コヴァルシン
Thomas D Bissett
トーマス ディー ビセット
John Munzer
マンザー ジョン
Dennis Mazur
デニス メイザー
Jr Peter R Mott
ピーター アール モット ジュニア
Glenn A Dearth
グレン エイ ダース
Carlos Alonso
カーロス アロンソ
Ann Katan
アン カタン
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.)
Digital Equipment Corp
Original Assignee
Digital Equipment 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 Digital Equipment Corp filed Critical Digital Equipment Corp
Publication of JPH03182938A publication Critical patent/JPH03182938A/ja
Pending 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/1629Error detection by comparing the output of redundant processing systems
    • G06F11/1633Error detection by comparing the output of redundant processing systems using mutual exchange of the output between the redundant processing components
    • 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/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • 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/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 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/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 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/1658Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit
    • 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/1666Error detection or correction of the data by redundancy in hardware where the redundant component is memory or memory area
    • G06F11/167Error detection by comparing the memory output
    • 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/1679Temporal synchronisation or re-synchronisation of redundant processing components at clock signal level
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/177Initialisation or configuration control
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • 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/14Error detection or correction of the data by redundancy in operations
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1405Saving, restoring, recovering or retrying at machine 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/1608Error detection by comparing the output signals of redundant hardware
    • 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/1608Error detection by comparing the output signals of redundant hardware
    • G06F11/1616Error detection by comparing the output signals of redundant hardware where the redundant component is an I/O device or an adapter therefor
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2201/00Indexing scheme relating to error detection, to error correction, and to monitoring
    • G06F2201/845Systems in which the redundancy can be transformed in increased performance

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Hardware Redundancy (AREA)
  • Stored Programmes (AREA)

Abstract

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

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は、故障許容(フォルト・トレラント)システム
におけるオペレーティングシステムのブートストラップ
ローディングを制御する方法に関する。
(従来の技術) 一つの種類の故障許容コンピュータシステムは、平常の
動作中、単一のシステムとしてロックステップ同期の状
態で動作する2つ別々の演算ゾーンから構成されている
。このようなロックステップの動作中、理想的には両方
のゾーンが同一の動作を実行し、同等のデータを読み取
り、同等の出力を与える。各ゾーンは、独立した動作も
実行可能である。一つのゾーンだけの独立した動作は通
常、補修のため一方のゾーンが作動状態から外されたり
、あるいはその他の理由で動作不能となった場合に生し
る。
一方のゾーンがダウンしている間、他方のゾーンはオペ
レーティングシステムの制御下でユーザ■ ■ のアプリケーションを実行し続ける。作動への復帰時、
補修されたゾーンは、オペレーティングシステムの別の
コピーをブートストラップロードできないようにするこ
とが重要である。補修されたゾーンがオペレーティング
システムの別のコピーをロード可能であると、データ変
造の問題が生じる。つまりオペレーティングシステムの
2つの独立したコピーを実行すると、それぞれのゾーン
が故障許容システムの現動作にとって適切でないデータ
を読み書きしてしまう。これは、2つの演算ゾーンがロ
ックステップ同期の状態で動作するという基本条件に反
した実行をもたらす。
(発明が解決しようとする課題) 従って、故障許容システムの2つの演算ゾーンがオペレ
ーティングシステムの単一コピーに基づいて動作するの
を保証する方法を提供することが重要である。
(課題を解決するための手段) 本発明の別の利点は、一部が以下の説明中に記され、ま
た他の一部は以下の説明から自明であるか、もしくは発
明の実施によって会得されるであろう。本発明の利点は
、特許請求の範囲に個々に記載された手段及び組合せに
よって実現達成し得る。
本発明は従来技術の問題及び欠点を、第1及び第2の別
々な演算ゾーンを有するコンピュータシステムにおいて
、オペレーティングシステムのブトストラップローディ
ングを開始する方法を提供することによって解消する。
本方法は、第1及び第2ゾーンの選択された一方がブー
トストラップロードするのを許されていること、あるい
は第1及び第2ゾーンの選択されていない一方がオペレ
ーティングシステムを実行可能でないことを判定するス
テップ;選択されていないゾーンがオペレーティングシ
ステムのブートストラップローディングを開始していな
いことを判定するステップ;及び選択されたゾーンがブ
ートストラップロードするのを許されているか、あるい
は選択されていないゾーンがオペレーティングシステム
を実行可能でなく、しかも選択されていないゾーンがオ
ペ3 レーティンクシステムのブートストラップローディング
を開始していない場合に、選択されたゾーンへのブート
ストラップローディングを開始するステップ;を含む。
また本発明は、第1のCPUと、第1のゾーンがブート
ストラップローディングを開始しているかどうかを示す
第1のビットを記憶する第1の状態レジスタとを含む第
1の個別演算ゾーン;第2のCPUと、第2のゾーンが
ブートストラップローディングを開始しているかどうか
を示す第1のビットを記憶する第2の状態レジスタとを
含む第2の個別演算ゾーン・前記第2及び第1ゾーン内
の状態レジスタをそれぞれ読み取るため、第1及び第2
のゾーン間に連結されたケーブル;及び第1のCPUに
おいて、第2ゾーンがブートストラップローディングを
開始していることを、第2の状態レジスタに記憶された
第1のビットが示しているかどうかを判定する手段;を
備えたコンピュータシステムも意図している。
本明細書に含まれ、明細書の一部を構成する添4 付の図面は、発明の一実施例を示し、発明の詳細な説明
と共に発明の詳細な説明するためのものである。
(実施例) 本発明の好適な実施例を詳細に参照するが、この実施例
の具体例は添付図に示されている。
A、システムの説明 第1図は本発明による故障許容コンピュータ・システム
10のブロック図である。この故障許容コンピュータ・
システムlOはゾーンと呼ぶ重複システムを有している
。通常のモードの場合、2つのゾーン11と11’が同
時に動作している。
この重複によって、1つのポイントで故障が発生するこ
とがなく、ゾーン11または11′の1つにエラーまた
は故障が発生しても、これによってコンピュータ・シス
テムIOが動作不能にならないことが保証される。さら
に、こうした故障は、これを発生させた装置または構成
要素を動作不能にするまたは無視することによって取り
除くことができる。第1図に示すゾーン11と11’は
、それぞれ重複処理システム20と20′を有している
。しかし、これらが重複して設けられていることによっ
て、処理システム以上のことを行うことができる。
第2図は、故障許容コンピュータ・システムIOの物理
的ハードウェアを示し、システムが重複して設けられて
いることを図によって示す。各ゾーンl 1.!=11
’は、別のキャビネット11と12′にそれぞれ内蔵さ
れている。キャビネット12は、バッテリ13、電源調
整装置14、冷却ファンI6およびAC人力J7を有す
る。キャビネット12’はキャビネット12の構成要素
13.14.16および17に対応する別の構成要素を
有する。
以下で詳細に説明するように、処理システム20および
20′は背面板によって相互に接続された幾つかのモジ
ュールを有する。もし1つのモジュールに故障またはエ
ラーがあれば、このモジュールは、コンピュータ・シス
テムIOを動作不能にすることなく、取り外して取り替
えることが■ できる。これは、処理システム20と20′が物理的に
分離され、モジュールがプラグによって挿入されている
別の背面板を有し、相互に独立して動作することができ
るためである。従って、これらのモジュールは、一方の
処理システムが動作を継続している間に、他方の処理シ
ステムの背面板から取り外しまたはその背面板にプラグ
によって挿入することができる。
好適な実施例の場合、重複処理システム20および20
′は同一のものであり、同一のモジュールを内蔵してい
る。したがって、処理システム20′は同じ動作をする
と理解して、処理システム20のみを完全に説明する。
処理システム20は第3図および第4図に詳細に示すC
PUモジュール30を有している。CPUモジュール3
0は、以下で詳細に説明するクロスリンク経路25によ
って処理システム20′のCPUモジュール30′と相
互に接続されている。
クロスリンク経路25によって、処理システム20と2
0′との間にデータ転送経路が設けられ、7 処理システム20と20′が同期して動作することを保
証するためにタイミング信号が搬送される。
処理システム20はまたI10モジュール100.11
0、および120を有する。I10モジュール100.
110.120.100’  110’および120′
は独立した装置である。第1図、第4図および第17図
はI10モジュール100を詳細に示す。複数のI10
モジュールを図示するが、これらの重複したモジュール
はこのシステムによって要求されるものではない。しか
し、このような重複がなければ、ある程度の補償許容度
が失われる。
I10モジュール100.110.120の各々は、デ
ュアル・レール・モジュール相互接続部130および1
32によってCPUモジュール30に接続される。モジ
ュール相互接続部130と132はI10相互接続部と
して機能し、背面板を介して処理システム20に接続さ
れている。
この用途に使用するため、CPU40、メモリ制御装置
70、クロスリック90およびモジュール8 相互接続部130を有するデータ経路が一方のレールと
考えられ、CPU50、メモリ制御装置75、クロスリ
ンク95、およびモジュール相互接続部132を有する
データ経路が他方のレールと考えられる。動作が正しく
行われている間は、両方のレールのデータは同じである
B、故障許容システムの原理 故障許容コンピュータ・システムlOでは、1つのポイ
ントで故障の発生することがないが、その理由は、各構
成要素が重複して設けられているためである。処理シス
テム20と20′は、それぞれ故障停止処理システムで
あり、このことは、これらのシステムがサブシステム内
の故障またはエラーを検出し、これらの故障またはエラ
ーが他のサブシステムに制御されない状態で広がること
を防止することができる。しかし、これらの処理システ
ムではVは、各処理システム内の構成要素が重複して設
けられていないため、1つの点で故障が発生する。
2つの故障停止処理システム20と20′は、所定の方
法で動作するある種の構成要素によって相互に接続され
、フェール・セーフ・システムを形成する。故障許容コ
ンピュータ・システムIOとして具体化されているフェ
ール・セーフ・システムの場合、たとえ故障停止処理シ
ステム20および20′の一方が故障しても、コンピュ
ータ・システムは全体として処理を継続することができ
る。
2つの故障停止処理システム20と20′はロックステ
ップ同期で動作すると考えられるが、その理由は、CP
U40.50.40′および50′がこのような同期で
動作するからである。この場合、3つの重要な例外が存
在する。第1の例外は、ブートストラップ法によって両
方の処理装置を同期させる初期化の時に発生する。第2
の例外は、処理システム20と20′が2つの異なった
作業負荷で独立して(非同期の状態で)動作する場合に
発生する。第3の例外は、ある種のエラーが処理システ
ム20と20′に発生する場合に起こる。
この最後の例外の場合、これらの処理システムの0 内の一方のCPUとメモリ素子を動作不能し、これによ
って同期動作を終了する。
システムがロックステップI10で動作している場合、
いずれの1つの時間にも、1つのI10装置のみしかア
クセスすることができない。しかし、4つのCPU40
.50.40′および50′は全て実質的に同じ時間に
同じデータをこのI10装置から受け取る。以下の議論
では、これらの処理システムのロックステップ同期とは
、1つのI10モジュールのみがアクセスされているこ
とを意味すると理解できる。
重複して設けられた処理システム20および20′の同
期は、各システムを決定性を有する機械として取り扱う
ことによって実行され、この場合、これらのシステムは
、同じ人力を受けて同じ既知の状態でスタートし、常に
同じ機械状態に入り、エラーのない場合には、同じ結果
を発生する。
処理システム20と20′は同じ構成を有し、同じ入力
を受取、従って、同じ状態を通過する。従って、両方の
処理装置が同期して動作する限り、I これらは同じ結果を発生すると共に同じ状態に入る。も
しこれらの処理システムが同じ状態でなく、または異な
った結果を発生すれば、これらの処理システム20と2
0′の一方が故障していると考えられる。そこで修正動
作を行うためには、故障しているモジュールを動作不能
にする等して故障の原因を取り除かなければならない。
エラーの検出は、一般的に別の処理時間または論理の形
でのオーバヘッドを含む。このようなオーバヘッドを最
小にするため、システムは故障許容動作と調和しながら
、エラー・チエツクをできるだけ少ない回数行わなけれ
ばならない。少なくとも、エラーのチエツクはデータが
CPU30と30′から出力される前に行われなければ
ならない。そうでなければ、内部処理のエラーによって
、原子炉のような外部システムに正しくない動作が発生
するが、これは故障許容システムの設計によって防止し
ようとしている状態である。
これ以外にエラーのチエツクを行う理由が存在する。例
えば、故障またはエラーを除去するため2 には、記憶または使用する前に、CPUモジュール30
および30′の受け取ったデータをチエツクすることが
望ましい。そうでなければ、記憶されているエラーのあ
るデータが後がアクセスされ、その結果、別のエラーが
発生すると、特1ここのエラーのあるデータが一定期間
記憶された場合には、これらのエラーの最初の原因を見
出だすことが困難または不可能になる。時間が経過する
こととこれらのエラーのあるデータがその後処理される
ことによって、エラーの原因を追跡することができなく
なる可能性がある。
検出される前にエラーが記憶されていた時間を指す「エ
ラーの潜伏時間Jによって、同様に後で問題が発生する
可能性がある。例えば、コンピュータシステムが以前に
発生したエラーによって小さくなったキャパシティで既
に動作している場合に、滅多に使わないルーチンによっ
て潜在するエラーの見付かる場合がある。コンピュータ
のキャパシティが減少している場合、潜在するエラーに
よってシステムが破壊される場合がある。
3 更に、処理システム20および20′がデュアル・レー
ル・システムになっている場合、データをメモリのよう
な共有の資源である1つのレール・システムに転送する
のに先立って、エラーをチエツクすることが望ましい。
この理由は、このような転送を行った後には最早2つの
独立するデータのソースが存在しないためであり、もし
シングル・レール・システムで後になって何らかのエラ
ーが検出された場合、このエラーを追跡することは、不
可能でないにしても困難になる。
エラー処理の好適な方法が、これと同じ日に出願された
弁理士ドケットNIIPD89−289/DEC−34
4の発明の名称「ソフトウェアによるエラーの処理」と
いう出願で説明され、これは参考としてここに引用され
ている。
C,モジュールの説明 1、CPUモジュール 第1図に示すCPUモジュール30の構成要素を第3図
および第4図により詳細に示す。第3図はCPUモジュ
ールのブロック図であり、第4図4 はCPUモジュール30およびI10モジュール100
並びにこれらの相互接続部のブロック図である。CPU
モジュール30および30′の動作およびこれらに含ま
れる構成要素は一般的に同じであるため、CPU30の
みを説明する。
CPUモジュールは、デュアルCPU40と50を内蔵
する。CPU40と50は当業者に周知の標準的な中央
処理装置である。好適な実施例の場合、CPU40と5
0は本出願の譲受人であるディジタル・エクイップメン
ト会社によって製造されたVAXマイコロプロセッサで
ある。
CPU40と50に関連するのはそれぞれキャッシュ・
メモリ42と52であり、これらはCPUに対して十分
なメモリのサイズを有する標準のキャッシュRAMであ
る。好適な実施例の場合、キャッシュRAMは4Kx6
4ビットである。しかし、本発明がキャッシュRAMを
有する必要はない。
5 ュール60を共有できることが望ましい。第5図はCP
Uモジュール30に接続して示した1つのメモリ・モジ
ュール60のブロック図である。
メモリ転送サイクル、ステータス・レジスタ転送サイク
ルおよびEEFROM転送サイクルの期間中、各メモリ
・モジュール60は双方向データ・バス85を介してプ
ライマリ・メモリ制御装置70にデータを転送すると共
にこれからデータの転送を受ける。各メモリモジュール
60は、またそれぞれバス80および82を介してメモ
リ制御装置70と75からアドレス信号、制御信号、タ
イミング信号およびECC信号を受け取る。バス80お
よび82のアドレス信号は、ボード信号、バンク信号、
および行アドレス信号と列アドレス信号を含み、これら
によってデータ転送に含まれるメモリ・ボード・アドレ
ス、バンク・アドレス、および行および列アドレスが識
別される。
第5図に示すように、各メモリ・モジュール60はメモ
リ・アレイ600を有する。各メモリ・アレイ600は
DRAMが8バンクのメモリに6 組織されている標準RAMである。好適な実施例の場合
、高速ページ・モード型のDRAMが使用される。
メモリ・モジュール60には、また制御ロジック610
、データ・トランシーバ/レジスタ620、メモリ・ド
ライバ630、およびEEPROM640が含まれる。
データ・トランシーバ/レジスタ620によってメモリ
・アレイ600とデータ・バス85の双方向データ線と
の間でデータを転送するためのデータ・バスとデータ・
インターフェースが設けられる。メモリ・ドライバ63
0は、制御ロジック610からメモリ・アレイ600の
各バンクに対して行および列アドレス信号と制御信号を
分配し、ロングワードのデータとその対応するFCC信
号をメモリ・ボード信号とバンク・アドレス信号によっ
て選択されたメモリ・バンクに対して転送すると共にこ
れらがそこから転送されることを可能にする。
いずれのタイプのNVRAM (非揮発性RAM)であ
ってもよいEEPROM640によって、第7 フ・ライン修理用のメモリ・エラー・データとモジュー
ルのサイズのような構成データが記憶される。故障の発
生後メモリ・モジュールが取り外された場合、故障の原
因を判定するため、記憶されているデータがEEPRO
M640から取り出される。EEPROM640は、ド
ライバ630からの行アドレス線を介して、制御ロジッ
ク610からのEEPROM制御信号によってアドレス
される。EEPROM640は、32ビットの内部メモ
リ・データ・バス645に対して8ビットのデータを転
送し、ここからこのデータを受け取る。
制御ロジック610は、メモリ・モジュール60の素子
に対してアドレス信号を転送すると共に内部タイミング
と制御信号を発生する。第6図に詳細に示すように、制
御ロジック612はプライマリ/ミラー指示回路612
を有する。
プライマリ/ミラー指示回路612は、バス80と82
でメモリ制御装置70と75から2組のメモリ・ボード
・アドレス・バンク・アドレス、行および列アドレス、
サイクル・タイプ・サイク8 ル・タイミング信号を受け取り、またバス80と82で
メモリ制御装置に対して2組のFCC信号を転送すると
共にここからこれを受け取る。指示装置612のトラン
シーバ/レジスタによって、これらの信号をバス80と
82との間で授受するバッファとインターフェースが設
けられる。ステータス・レジスタ618に記憶されてい
るプライマリ/ミラー・マルチプレクサのビットによっ
て、メモリ制御装置70と75のいずれがプライマリ・
メモリ制御装置として指定され、いずれがミラー・メモ
リ制御装置として指定されかが指示され、プライマリ/
ミラー・マルチプレクサ信号がステータス・レジスタ6
18から指示装置612に加えられる。
プライマリ/ミラー指示装置612よって、制御ロジッ
ク610に分配する2組の信号が与えられる。1組の信
号は指定されたプライマリ−・メモリ・ボード・アドレ
ス、バンク・アドレス、行および列アドレス、サイクル
・タイプ、サイクル・タイミングおよびEEC信号を含
む。他方の組9 の信号は、指定されたミラー・メモリ・ボード・アドレ
ス信号、バンク・アドレス信号、列および行アドレス信
号、サイクル・タイプ信号、サイクル・タイミング信号
、およびEEC信号を含む。
プライマリ/ミラー・マルチプレクサ信号は、バス80
と82の信号がそれぞれ指定されたプライマリ信号を搬
送する線および指定されたミラー信号を搬送する線に向
けられるか、またはその逆であるかを選択するために指
示装置612によって使用される。
バス80と82には多数の時間分周多重化双方向線が含
まれている。メモリ転送サイクル、ステータス・レジス
タ転送サイクル、およびIEBFROM転送サイクルの
開始後一定の時間に、データ・バス75のデータに対応
するFCC信号がこれらの時間分周多重化双方向線に載
置される。もしこの転送サイクルが書き込みサイクルで
あれば、メモリモジュール60はメモリ制御装置からデ
ータとFCC信号を受け取る。もしこの転送サイクルが
読み出しサイクルであれば、メモリ・モジュール0 60はデータとECC信号をメモリ・モジュールに転送
する。転送サイクルの他の時間に、アドレス信号、制御
信号およびタイミング信号は時間分周多重化双方向線で
メモリ・モジュール60によって受け取られる。メモリ
転送サイクル、ステータス・レジスタ転送サイクル、お
よびEEFROM転送サイクルの始めに、メモリ制御装
置70と75がメモリ・ホード・アドレス、バンク・ア
ドレス、およびサイクル・タイプ信号をこれらの時間共
有線で各メモリ・モジュール60に転送することが望ま
しい。
行アドレス信号と列アドレス信号は同じ転送サイクル中
に同じ行および列アドレス線で多重化されることが望ま
しい。先ず、行アドレスがメモリ制御装置によってメモ
リ・モジュール60に加えられ、約60ナノ秒後に列ア
ドレスが加えられる。
シーケンサ−616は、システム・クロック信号とリセ
ット信号をCPUモジュール30から入力として受け取
り、指定されたプライマリ−・サイクル・タイミング信
号、指定されたプライマリ−・サイクル・タイプ信号、
指定されたミラー・サイクル・タイミング信号、および
指定されたミラー・サイクル・タイプ信号を指定装置6
12のトランシーバ/レジスタから受け取る。
シーケンサ616は、種々のタイプのサイクルを実行す
るために必要な多数の制御およびシーケンス・タイミン
グ信号を発生し、これらをメモリ・モジュールに対して
分配する関連したステアリング(s teer ing
 )論理を有するリング・カウンタである。制御および
シーケンス・タイミング信号は、システム・クロック信
号、指定されたプライマリ−・サイクル・タイミング信
号、および指定されたプライマリ−・サイクル・タイプ
信号から発生される。
シーケンサ616は、またシステム・クロック信号、指
定されたミラー・サイクル・タイミング信号、および指
定されたミラー・サイクル・タイプ信号から重複した組
のシーケンス・タイミング信号を発生する。これらの重
複したシーケンス・タイミング信号は、エラーのチック
のために使用2 される。高速ページモードで多重のロングワードのデー
タをメモリ・モジュール60との間で授受するためには
、各組の列アドレスは第1の組でスタートし、1272
7ナノ次の列アドレス120がこれに続き、各々のロン
グワードのデータは前のロングワードのデータの後で1
20ナノ秒遅れてバス85を横切って移動される。
シーケンサ616は、またtx/rxレジスタ制御信号
を発生する。tx/rxレジスタ制御信号は、トランシ
ーバ/レジスタ620の動作と指定装置612のトラン
シーバ/レジスタを制御するために発生される。データ
の流れの方向は、シーケンサ616のステアリングロジ
ックによって決定され、このシーケンサ616はtx/
rx制御信号とシーケンス・タイミング信号を発生する
ことによって、指定されたプライマリ−・サイクル・タ
イプ信号に応答し、データとECC信号がメモリ・モジ
ュール60のトランシーバ/レジスタに対して書き込ま
れるべきであるかまたはここから読み出されるべきであ
るか、およびそれらが3 何時量われるべきであるかを示す。メモリ書き込みサイ
クル中、ステータス・レジスタ書き込みサイクル中、お
よび書き込みサイクル中、データおよびECC信号はバ
ス80.82、および85からトランシーバ/レジスタ
にラッチされ、一方メモリ読み出しサイクル中、ステー
タス・レジスタ読み出しサイクル中、およびEEPRO
M読み出しサイクル中、データおよびECC信号は、メ
モリ・アレイ600、ステータス・レジスタ618、ま
たはEEPROM640からトランシーバ/レジスタに
ラッチされて、CPUモジュール30に出力される。
シーケンサ616は、またEEPROM制御信号を発生
して、EEPROM640の動作を制御する。
メモリ・モジュール60に存在するタイミング関係はシ
ステム・クロック信号の立ち上がり時間を参考にして決
められるが、このシステム・クロック信号は30ナノ秒
の間隔を有している。全てのステータス・レジスタ読み
出しおよび書き込み4 サイクルと1つのロングワードの全てのメモリ読み出し
および書き込みサイクルは、IOシステム・クロックの
時間内、すなわち300ナノ秒内に実行される。メモリ
読み出しおよび書き込み転送サイクルは、多重化された
ロングワードの転送によって構成されることができる。
別のロングワードが転送される毎に、メモリ転送サイク
ルは4システム・クロックの期間だけさらに延長される
メモリ・リフレッシュ・サイクルとEEPROM書き込
みサイクルを実行するには少なくとも12システム・ク
ロックの間隔が必要であり、EBFROM読み出しサイ
クルは、少なくとも20システム・クロックの間隔を必
要とする。
指定されたプライマリ・サイクル、タイミング信号によ
って、シーケンサ616はシーケンス・タイミング信号
と制御信号との発生を開始し、これらの信号によって、
メモリ・ボート・アドルス信号によって選択されたメモ
リ・モジュールが要求されたサイクルを実行することが
可能になる。
指定されたプライマリ・サイクル・タイミング信5 号が活性状態に遷移すると、サイクルが開始される。指
定されたプライマリ・サイクル・タイミング信号が不活
性状態に戻ると、サイクルは終了する。
CPUモジュール30によって要求されたサイクルが実
行されるに従って、シーケンサ616によって発生され
たシーケンス・タイミング信号はシーケンサの人力した
異なった状態と関連する。
これらの異なった状態の間のタイミング関係(およびこ
れらの状態の各々に対応するシーケンス・タイミング信
号の間のタイミング関係)を決めるため、シーケンサ6
16によって人力することのできるディスクリートな状
態がSEQ  IDLEおよび5EQIないし5EQI
9と識別される。
各状態は、1システム・クロックの間隔(30ナノ秒)
の間持続する。シーケンサ616の行う各々の異なった
状態に対する入力は、システム・クロック信号の立ち上
がり区間によってトリガされる。シーケンサ616に状
態SEQ  IDLEおよび5EQIないし5EQ19
を入力させるシス6 テム・クロック信号の立ち上がり区間は、これらをシー
ケンサ616の状態と関連させるために遷移TIDLE
およびTIないしT19として表される。すなわち、T
Nはシーケンサ616に状態SEQ  Nを人力させる
システム・クロック信号の立ち上がり区間である。
CPUモジュール3Dがメモリ・モジュール60に1つ
のサイクルを実行させていない場合、指定されたプライ
マリ−・サイクル・タイミング信号は表明されず(no
t asserted) 、シーケンサはSEQ  I
DLEの状態のままである。もし制御ロジック610と
シーケンサ616がこれもまたバス80でメモリ制御装
置70から転送されたメモリ・ボード・アドレスによっ
て選択されたメモリ・モジュールに位置しているならば
、シーケンサはメモリ制御装置70によるバス80のサ
イクル・タイミング信号の表明に応答してスタートされ
る(状態5EQIを入力する)。指定されたプライマリ
−・サイクルの活性信号の表明に続く第1システム・ク
ロック信号の立ち上がり区間は、7 遷移TIに対応する。
前に述べたように、メモリ・アレイ600に対して1つ
のロングワードを授受する場合、そのサイクルはIOシ
ステム・クロックの間隔で実行される。シーケンサはS
EQ  IDLEから状態5EQIないし5EQ9に進
み、S E Q  IDLEに戻る。
しかし、別のロングワードを転送するためにメモリ読み
出しおよび書き込みサイクルを延長することができる。
メモリ・アレイ600は、「高速ページ・モードJ D
RAMを使用することが望ましい。多重化されたロング
ワードの読み出しおよび書き込みを行う期間中、最初の
ロングワードの転送の後に行われるメモリ・アレイとの
データの授受け、列アドレスを繰り返して更新し、CA
S(列アドレス・ストローブ)信号を再び発生すること
によって行われる。
多重化されたロングワードの転送サイクルの期間中、こ
れらの列アドレスのこれらの更新を実行することが可能
であるが、その理由は、全ての口8 ングワードが転送されるまでシステム616は、5EQ
4から5EQ7を繰り返して循環するからである。例え
ば、もし3つのロングワードがメモリ・アレイ600か
ら読み出され、またはこれに書き込まれているならば、
シーケンサは状態5BQIDLE、5EQI、5EQ2
.5EQ3.5BQ4.5EQ5.5EQ6.5EQ7
.5EQ4.5EQ5.5EQ6.5EQ7.5EQ4
.5EQ5.5EQ6.5EQ7.5EQ8.5EQ9
、および5EQIDLEを人力する。
メモリ転送サイクルの期間中、指定されたプライマリ・
サイクル・タイミング信号は、遷移T6の間のシーケン
サ616によって監視され、少なくとも1つの別のロン
グワードを転送するため、メモリ読み出しまたは書き込
みサイクルを延長するべきかどうかを決定する。指定さ
れたプライマリ・サイクル・タイミング信号が遷移T6
中に表明された場合、状態5EQ7にあるシケンサは状
態5EQ8を人力する代わりに状態5EQ4を人力する
ことによって、次のシステム・クロック信9 号に応答する。
多重ロングワードの転送の場合、指定されたプライマリ
−・サイクル・タイミング信号は、少な(とも第1T6
の遷移の15ナノ秒前に表明され、最後のロングワード
が転送される迄、表明されたままである。最後のロング
ワードが転送されてしまった後でメモリ転送サイクルを
終了するため、指定されたプライマリ・サイクル・タイ
ミング信号が最後のT6の遷移の少なくとも15ナノ秒
前に表明を解かれ、最後のT6の伝送の後、少な(とも
10ナノ秒間表明を解かれたままになる。
メモリ転送サイクルの期間中、指定されたプライマリ行
アドレス信号と指定されたプライマリ列アドレス信号は
、制御ロジック610内の指定装置612によって別の
時間に1組の時間分周多重化線上でメモリ・ドライバ6
30に与えられる。
ドライバ630の出力はメモリ・アレイ600のDRA
Mのアドレス入力に加えられ、また指定されたミラー行
および列アドレス信号と比較するため制御ロジック61
0に戻されてエラーをチックする。状態レジスタ転送サ
イクルとEEPROM転送サイクルの期間中、列アドレ
ス信号は指定の記憶場所を選択するために必要ではない
メモリ転送サイクルの期間中、行アドレス信号はバス8
0と82の時間を共有する行および列アドレスに与えら
れた最初の信号である。状態5BQIDLEの期間中、
行アドレス信号は、メモリ制御装置によって行および列
アドレス線で転送され、列アドレスはTlの遷移の少な
くとも15ナノ秒前からTlの遷移後のlOナノ秒まで
安定した状態にある。次に、列アドレス信号はメモリ制
御装置によって行およびコラムアドレス線で転送され、
列アドレスは、T3の遷移のlOナノ秒前からT4の遷
移の後15ナノ秒まで安定した状態にある。メモリ転送
サイクルの期間中に多重ロングワードの転送を行う場合
、続いて発生する列アドレス信号は、次に行およびコラ
ムアドレス線で転送され、これらの続いて発生する列ア
ドレスはT6の遷移の10ナノ秒前からTlの遷移の後
15ナノ秒まで安定した状態にある。
1 ジェネレータ/チエッカ617はシーケンサ616によ
って発生された2組のシーケンス・タイミング信号を受
け取る。更に、指定されたプライマリ・サイクル・タイ
プ信号とバンク・アドレス信号および指定されたミラー
・サイクル・タイプ信号とバンク・アドレス信号が指定
装置612によってジェネレータ/チエッカ617に転
送される。ジェネレータ/チエッカでは、多数のプライ
マリ制御信号、すなわちRAS (行アドレス信号)、
CAS(列アドレス・ストローブ)およびWE (書き
込みイネーブル)が発生され、プライマリ・シーケンス
・タイミング信号と指定されたプライマリ・サイクル・
タイプ信号およびバンク・アドレス信号を使用してドラ
イバ630に分配される。これらの制御信号の重複した
組がジェネレータ/チエッカ617によって重複(ミラ
ー)シーケンス・タイミング信号と指定されたミラー・
サイクル・タイプ信号およびバンク・アドレス信号から
発生される。これらのミラーRAS、CAS、および書
き込みイネーブル信号はエラー2 のチエツクのために使用される。
プライマリ・サイクル・タンプ信号がメモリ転送サイク
ルが実行中であることを示す場合、プライマリ・バンク
・アドレス信号はメモリ・アレイ600内のDRAMの
1つの選択されたバンクを識別する。メモリ・ドライバ
630はメモリ・アレイ600内のDRAMの各バンク
に対して別々のRASI’ライバを有している。ジェネ
レータ/チエッカ617においてプライマリRAS信号
は、メモリ転送サイクル中に発生され、ジェネレータ/
チエッカをRASドライバに接続する線の1つに非多重
化される。その結果、選択されたDRAMバンクに対応
するRASドライバのみがメモリ転送サイクル中に表明
されたRAS信号を受け取る。
リフレッシュ・サイクルの期間中、プライマリRAS信
号は非多重化されず、表明されたRAS信号が各RAS
ドライバによって受け取られる。
ステータス・レジスタ転送サイクルとEBFROM転送
サイクルの期間中、バンク・アドレス信号は不必要であ
る。
メモリ・ドライハロ30はまたCASドライバを有する
。ジェネレータ/チエッカ617において、プライマリ
CAS信号はメモリ転送サイクルとリフレッシュ・サイ
クルの期間中に発生される。
プライマリCAS信号は、非多重化されず、表明された
CAS信号は各CASドライバによって受け取られる。
メモリ書き込みサイクルの期間中、プライマリWE信号
はジェネレータ/チエッカ617によって発生される。
表明されたWE信号は、ドライバ630によってメモリ
・アレイ600内の各DRAMバンクに加えられる。し
かし、書き込みは選択ささたDRAMバンクによっての
み実行することが可能でり、このDRAMバンクはまた
表面されたRASおよびCAS信号を受け取る。
本発明の好適な実施例の場合、メモリ転送サイクルの期
間中、プライマリRAS信号はT2の遷移の期間中表明
され、T3の遷移の少なくともlOナノ秒前から安定し
、最後のT7の遷移の期間中表面を解かれる。プライマ
リCAS信号は、4 各T4の遷移の前15ナノ秒間表明され、各T7の遷移
の期間中表明を解かれる。メモリ書き込みサイクルの期
間中、プライマリWE信号は、T3の遷移の期間中表明
され、最初のT4の遷移の少なくとも10ナノ秒前から
安定し、最後のT7の遷移に期間中表面を解かれる。
プライマリ・サイクル・タイプ信号がメモリ・リフレッ
シュ・サイクルが実行中であることを示す場合、メモリ
・アレイ600はシーケンサ616によって与えられる
プライマリ・シーケンス・タイミング信号に応答して、
ジェネレータ/チエッカ617によってメモリ・リフレ
ッシュ動作を実行さされる。これらのリフレッシュ動作
の期間中、RAS信号およびCAS信号が逆の順序でジ
ェネレータ/チエッカによって発生されて分配される。
このリフレッシュ・モードはバンク、行または列に対す
る外部アドレスを必要としない。
転送サイクルの期間中、データがバス85い転送されて
いる時間に、FCC信号はバス80と82の時間分周多
重化双方向線で転送される。し5 かし、これらの同じ線は転送サイクル中の他の時間に制
御信号(例えば、サイクル・タイプ)およびアドレス信
号(例えば、メモリ・ボード・アドレスおよびバンク・
アドレス)信号を転送するために使用される。
プライマリ/ミラー指定装置612内のトランシーバ/
レジスタはシーケンサ616によって加えられるシーケ
ンス・タイミング信号ともtx/rxレジスタ制御信号
に応答する受信機と発信機を有する。シーケンス・タイ
ミング信号とtx/rxレジスタ制御信号は、バス80
と82の時間分周多重化双方向線でFCC信号とアドレ
ス信号および制御信号を多重化することを可能にする。
サイクル・タイプ信号、メモリ・ボード・アドレス信号
およびバンク・アドレス信号のような制御信号とアドレ
ス信号はメモリ制御装置70と75によって転送され、
単一の転送サイクルまたは多重ロングワード転送サイク
ルのいずれかの開始時にバス80と82の時間を共有し
た線に与えられることが望ましい。これらの信号はサイ
クル6 ・タイミング信号の活性化と同時に遷移を開始しくシー
ケンサはSEQ  IDLE状態にあるが)、T2の間
安定状態にある。従って、指定装置612のトランシー
バ/レジスタにおいて、受信機は起動され、送信機は少
なくとも状態5EQ2の終わり迄そのトリステート・モ
ードにセットされる。
サイクル・タイプ信号は、下記にリストアツブした機能
、すなわちメモリの読み出し、メモリの書き込み、ステ
ータス・レジスタの読み出し、ステータス・レジスタの
書き込み、EEPROMの読み出し、EEPROMの書
き込み、およびリフレッシュのいずれがサイクル期間中
にメモリ・アサイ60によって実行されるかを識別する
。指定装置612によって受け取られた指定されたプラ
イマリ・サイクル・タイプ信号は、シーケンサ616に
加えられ、tx/rx制御信号とシーケンス・タイミン
グ信号を発生する場合に使用される。例えば、データ・
トランシーバ/レジスタ620および指定装置612の
トランシーバ/レジスタにおいて、受信機は起動され、
送信機は書7 き込みサイクル全体を通してシーケンサ616によって
トリステート・モードにセットされる。しかし、読み出
し期間中のデータ・トランシーバ/レジスタ620およ
び指定装置612のトランシーバ/レジスタの場合、受
信機はトリスチー1・・モードにセットされ、送信機は
サイクル・タイプ信号、メモリ・ボード・アドレス信号
およびバンク・アドレス信号がこのサイクルの開始時点
で受け取られた後シーケンサ616によって起動される
適切な実施例の場合、メモリ・アレイ600に対して授
受されたデータはエラー検出コード(EDC)を使用し
て各メモリ・モジュール60内でチエツクされることが
望ましく、このエラー検出コードはメモリ制御装置70
と75によって必要とされるコードと同じであることが
望ましい。
好適なコードはlビット修正、2ビット検出のエラー修
正コード(F CC)であることが望ましい。
メモリ書き込みサイクルの期間中、メモリ制御装置70
は少なくとも1つのロングワードのデー夕をデータ・バ
ス85で転送し、同時に対応する組のECC信号をバス
80で転送する。一方、メモリ制御装置75は第2組の
ECC信号を転送し、これらの信号はバス82のデータ
・バス85のロングワードとまた対応する。
ここで実施されているように、メモリ書き込みサイクル
の期間中、各ロングワードに対するデータとECC信号
がデータ・トランシーバ/レジスタ620の受信機に与
えられると共に指定装置612のトランシーバ/レジス
タの受信機に与えられる。データおよびECC信号はT
4の遷移の少なくとも10ナノ秒前に安定しており、T
6の遷移後15ナノ秒後迄安定した状態にあり、これら
のトランシーバ/レジスタにラッチされる。この時間の
間、メモリ制御装置7θと75はバス80と82の時間
を共有した線にアドレス信号と制御信号を加えない。
メモリ書き込みサイクルの期間中に指定装置612によ
って受け取られた指定されたプライマリECC信号とト
ランシーバ/レジスタ620に9 よって受け取られたロングワードのデータは、メモリ・
アレイ600の8つのバンクの各々に於けるDRAMの
データ入力とECC発生装置623に加えられる。発生
されたFCCは比較器625によって指定されたプライ
マリ・FCCと比較される。指定されたプライマリ・E
CC信号は、また指定されたミラー・ECC信号と共に
ECC比較器625に加えられる。
ここで実施例されているように、メモリ読み出しサイク
ルの期間中、少なくとも1つのロングワードのデータと
対応する組のECC信号がメモリ・アレイ600から読
み出され、データ・トランシーバ/レジスタ620と指
定装置612のトランシーバ/レジスタにそれぞれ向け
られる。メモリ読み出しサイクルの遷移T7の期間中、
各ロングワードに対するデータとECC信号はメモリ・
アレイ600から入手可能であり、これらのトランシー
バ/レジスタにラッチされる。このデータはECC発生
装置623に与えられ、その出力はメモリから読み出さ
れたECCと比較される。
0 ラッチの後、データおよびECC信号は、データ・トラ
ンシーバ/レジスタ620の送信機と指定装置612の
トランシーバ/レジスタの送信機によってデータ・バス
85とバス80および82に与えられる。同じECC信
号は、指定装置612のトランシーバ/レジスタからメ
モリ制御装置70とメモリ制御装置75に転送される。
データバス85とバス80および82で転送されたデー
タとECC信号は、T7の遷移の15秒後からこれに続
<T6の遷移の5ナノ秒前迄(多重ロングワード転送の
場合)またはこれに続<T  IDLE遷移の5ナノ秒
前迄(単一のロングワードの転送または多重ロングワー
ド転送の最後のロングワードの場合)安定した状態にあ
る。この時間間隔の間、メモリ制御装置70と75は、
バス80と82の時間を共有したアドレス信号と制御信
号を加えない。データ・トランシーバ/レジスタ620
の送信機と指定装置612のトランシーバ/レジスタの
送信機は、これに続くT IDLE遷移の期間中、トリ
ステート・モードにセットサレル。
比較器614は、制御装置70から発生するアドレス信
号制御装置およびタイミング信号を制御装置75から発
生するこれらに対応するアドレス信号、制御信号および
タイミンク信号と比較するために設けられる。指定され
たプライマリ・サイクル・タイミンク信号、サイクル・
タイプ信号、メモリ・ボード・アドレス信号、およびバ
ンク・アドレス信号は、指定されたミラー・サイクル・
タイミンク信号、サイクル・タイプ信号、メモリ・ボー
ドアドレス信号、ハング・アドレス信号、行アドレス信
号、および列アドレス信号と共に指定装置612から比
較器614に加えられる。指定されたプライマリ行アド
レス信号および列アドレス信号はドライハロ30の出力
から比較器614に加えられる。そこで両方の組の信号
が比較される。
もし、メモリ制御装置から発生するアドレス信号、制御
信号、およびタイミング信号の間で比較のミスがあれば
、比較器614は適当なエラー信号を発生する。第6図
に示すように、ボード・ア2 ドレス・エラー信号、バンク・アドレス・エラー信号、
行アドレス・エラー信号、列アドレス・エラー信号、サ
イクル・タイプ・アドレス・エラー信号、およびサイク
ル・タイミング・エラー信号は比較器から発生すること
ができる。
ジェネレータ/チエッカ617は、指定されたプライマ
リ・バンク・アドレス信号、サイクル・タイプ信号およ
びサイクル・タイミング信号を使用してシーケンサ61
6およびジェネレータ/チエッカ617によって発生さ
れたプライマリ制御信号およびタイミング信号を、指定
されたミラー・バンク・アドレス信号、サイクル・タイ
プ信号およびサイクル・タイミング信号を使用して、発
生されたミラー制御信号およびタイミング信号と比較す
る。2組のシーケンス・タイミング信号は、シーケンサ
616によってジェネレータ/チエッカ617に加えら
れる。プライマリRAS信号、CAS信号、およびWE
倍信号、ドライバ630の出力からジェネレータ/チエ
ッカ617に加えられる。前に説明したように、ミラー
RAS信号、3 CAS信号およびWE倍信号ジェネレータ/チエッカに
よって内部的に発生される。ジェネレータ/チエッカ6
17は、プライマリRAS信号、CAS信号、WE倍信
号よびシーケンス・タイミング信号をミラーRAS信号
、CAS信号、WE倍信号およびシーケンス・タイミン
グ信号と比較する。
もし、シーケンサ616またジェネレータ/チエッカ6
17から発生する制御信号およびタイミング信号のいず
れかの間に比較のミあれば、ジェネレータ/チエッカは
適当なエラー信号を発生する。第6図に示すように、シ
ーケンサ・エラー信号、RASエラー信号、CASエラ
ー信号、およびWEエラー信号はジェネレータ/チエッ
カ617によって発生することかできる。
エラー信号は、比較器614およびジェネレータ/チエ
ッカ617からアドレス/制御エラー・ロジック621
に加えられる。比較器614またはジェネレータ/チエ
ッカ617から受け取ったエラー信号に応答して、アド
レス/制御エラー・4 ロンツク621はアドレス/制御エラー信号をCPUモ
ジュール30に転送し、アドレス信号・制御信号、また
はタイミング信号のいずれかの間で比較のミスが発生し
たことによる故障を検出したことを示す。アドレス/制
御エラー信号は、エラーを処理するためにメモリ制御装
置70と75のエラー・ロジックに送られる。アドレス
/制御エラー信号をCPUモジュール30にすることに
よって、CPU/MEM故障が発生するが、これは他の
セクションで詳細に論じる。
比較器614およびジェネレータ/チエッカ617から
のエラー信号は、またステータス・レジスタ618に加
えられる。エラー信号および故障に関連するアドレス信
号、制御信号、タイミング信号、データ信号およびE、
CC信号の全ては、−時的にステータス・レジスタに記
憶され、エラーの診断と修復を可能にする。
本発明の1つの特徴によれば、32ビットのデータ・バ
ス85が1本だけCPUモジュール30とメモリ・モジ
ュール60との間に設けられる。
5 従って、メモリ・モジュール60はメモリ制御装置70
と75からの2組のデータを比較することができない。
しかし、メモリ制御装置70と75によってメモリ・モ
ジュール60に転送された2つの独立した組のECC信
号をチックすることによって、ビットのデータ線の重複
した組を使用することなく、データの他全性がメモリ・
モジュール60によって検証される。
第6図に示すように、制御ロジック610はECC発生
装置623とECC比較器625を有する。指定された
プライマリおよびミラーECC信号は、指定装置712
によってFCC比較器に加えられる。メモリー書き込み
サイクルの期間中、指定されたプライマリECC信号は
、指定されたミラーECC信号と比較される。その結果
、メモリ・モジュール60は、メモリ制御装置70と7
5が一致しているかどうかを検証すると共にメモリー書
き込みサイクルの期間中にメモリ・アレイ600のDR
AMに記憶されている指定されたプライマリECC信号
が正しいかどうかを検証す6 る。更に、メモリー書き込みサイクルの期間中にDRA
Mのデータ入力に与えられたデータは、ECC発生装置
623に加えられる。ECC発生装置623は、このデ
ータ応する1組の発生されたECC信号を発生し、この
発生されたECC信号をECC比較器625に加える。
指定されたプライマリECC信号は発生されたECC信
号と比較され、メモリ制御装置70によってデータ・バ
ス85に転送されたデータがメモリ・アレイ600のD
RAMに記憶されているデータと同じであるかどうかを
検証する。
メモリ読み出しサイクルの期間中、DRAMの選択され
たバンクから読み出されたデータはBCC発生器に与え
られる。発生されたECC信号はそこでFCC比較器に
加えられ、このFCC比較器は、またDRAMの選択さ
れたバンクから読み出されて記憶されているECC信号
を受け取る。発生され記憶されているECC信号は、E
CC比較器625によって比較される。
もしECC比較器625によって監視されてい7 るECC信号のいずれかの対の間に比較のミスがあれば
、FCC比較器は適当なエラー信号を発生する。第6図
に示すように、プライマリ/ミラーFCCエラー信号、
プライマリ/発生されたBCC信号エラーおよびメモリ
/発生されたFCCエラー信号はFCC比較器によって
発生することができる。
ECC比較器625からのこれらのFCCエラー信号は
ステータス・レジスタ618に加えられる。FCCエラ
ー信号の各々およびFCC故障に関連するアドレス信号
、制御信号、タイミング信号、データ信号、およびEC
C信号の全ては一時的にステータス・レジスタに記憶さ
れ、エラーの診断と修復を可能にする。
FCCエラー信号はFCCエラー線上でECC比較器6
25によって表明され、CPUモジュール30に転送さ
れ、比較のミスによって発生したFCCの故障を検出し
たことを示す。この比較のミスはメモリ書き込みサイク
ルの期間中に行われる2つのFCCのチエツクの期間中
またはメモリ8 読み出しサイクル行われる1つのECCのチエツクの期
間中のいずれかで発生する可能性がある。
第6図に示すように、ボード選択ロジック627はメモ
リの背面板からスロット信号を受け取る。
これらのスロット信号によって、各メモリモジュール6
0に対してユニークなスロット・ロケーションが指定さ
れる。ボード選択ロジッチ627は、そこてこれらのス
ロット信号を指定回路612を介してメモリ制御装置の
1から転送された指定されたプライマリ・ボード・アド
レス信号と比較する。もしこのスロット信号が指定され
たプライマリ・ボード・アドレス信号と同じであれば、
ホード選択信号がボード選択ロジック627によって発
生され、これによって制御ロジック610内の他の回路
を動作させる。
3、 メモリ制御装置 メモリ制御装置70と75は、CPU40と50のメモ
リ・モジュール60および補助メモリ素子に対するアク
セスをそれぞれ制御好適な実施例の場合、ある種のエラ
ー処理動作を実行する。
9 メモリ制御装置72に接続された補助メモリ素子はシス
テムROM43、EEPROM44、およびスクラッチ
・パッドRAM45を有する。ROM43は、診断コー
ド、コンソール・ドライバ・コード、およびブートスト
ラップ・コードの一部のようなある種の標準コードを保
持している。
EEFROM44は、CPU40の動作中に検出された
エラー情報のような情報を保持するのに使用されるが、
この情報は変更を行う必要があるが、電源を切った場合
に失われるべきではない。スクラッチ・パッドRAM4
5は、CPU40によって実行されるある種の動作のた
めに使用されると共に、レール・ユニーク情報(例えば
、ただ1つのCPU40または50に使用することので
きる1つのレールの条件に特有の情報)をゾーン情報(
CPU40と50の両方がアクセスすることのできる情
報)に変換するために使用される。
等価な構成要素53.54および55がメモリ制御装置
75に接続される。システムROM53、EEPROM
54およびスクラッチ・パッドRAM0 55は、システムROM43、EEPROM44、およ
びスクラッチ−パッドRAM45とそれぞれ同じであり
、同じ機能を実行する。
第7図ないし第9図は、プライマリ・メモリ制御装置7
0の好適な実施例の詳細を示す。ミラー・メモリ制御装
置75は、第7図ないし第9図に示す構成要素と同じ構
成要素を有しているが、動作は若干具なっている。従っ
て、メモリ制御装置75の動作と異なっている部分を除
いて、プライマリ・メモリ制御装置70の動作のみを説
明する。
処理システム20′内のメモリ制御装置70′と75′
は同じ構成要素を有し、それぞれメモリ制御装置70と
75と同じように動作する。
第7図に示す構成要素は、プライマリ・メモリ制御装置
70を介してデータの流れ、アスおよび信号を制御する
。制御ロジック700は、メモリ制御装置70の受け取
った信号および制御ロジック700に記憶されているそ
のメモリ制御装置のステート・エンジンに従って第7図
の種々の構成要素の状態を制御する。マルチプレクサ7
02は、1 これらのソースの1つからアドレスを選択する。
これらのアドレスは、受信機705を介してCPU30
から得ることもできるし、第8図を参照して以下で説明
するDMAエンジン800から得ることもできるし、ま
た再同期化動作の期間中に1つのゾーンから他のゾーン
にある種のバンク・メモリを転送する間に人工的リフレ
ッシュを発生するのに使用されるリフレッシュ再同期化
アドレスから得ることもできる。
CPU30からのデータは、受信機705を介して受け
取られDMAからのデータはエンジン800を介して受
け取られるので、マルチプレクサ702の出力はマルチ
プレクサ0の入力である。
マルチプレクサ710の出力は、メモリ相互接続部85
とドライバ715を介してメモリ・モジュール60にデ
ータを与える。ドライバ715はミラー・メモリ制御モ
ジュール75と75′に対して不能にされるが、その理
由は、メモリ・データの1つの組のみが、それぞれメモ
リ・モジュール60と60′に送られるからである。
2 メモリ相互接続部85に送られるデータは、CPU30
からメモリ・モジュール60に記憶されるべきデータま
たはDMAエンジン800からメモリ・モジュール60
に記憶されるべきデータのいずれかを含んでいる。CP
U30からのデータとマルチプレクサ702からのデー
タはまたこの経路また受信機745とECC修正装置7
50を介してDMAエンジン800に送られる。
マルチプレクサ702からのアドレスは、デマルチプレ
クサ720の人力にまた加えられ、このデマルチプレク
サ720はこれらのアドレスを67列アドレス部、ボー
ド/バンク・アドレス部分およびシングル・ボード・ビ
ットに分割する。行/列アドレスの22ビットが11本
の線に多重化される。好適な実施例の場合、22ビット
の67列アドレスがドライバ21を介してメモリ・モジ
ュール60に送られる。シングル・ボード・ビットはト
ライバ722を介してメモリ・モジュール60に送られ
ることが望ましく、他のボード/バンク・アドレスビッ
トはECC信号と多重化され3 る。
マルチプレクサ725は、メモリ制御装置70に対する
通常のリフレッシュ命令とCPU30からのサイクル・
タイプ情報(すなわち読み出し、書き込み等)およびD
MAサイクル・タイプ情報とを結合する。通常のリフレ
ッシュ命令とリフレッシュ再同期アドレスの両方によっ
て、メモリ・モジュール60がメモリ・リフレッシュ動
作を開始する。
マルチプレクサ725の出力は、デマルチプレクサ72
0からのボード/バンク・アドレスと共にマルチプレク
サ730に対する入力である。マルチプレクサ730に
対する他の入力は、ECCジェネレータ/チエッカ73
5の出力である。マルチプレクサ730は、入力の1つ
を選択し、これをメモリ・モジュール60に対する時間
分割多重化EC’C/アドレス線に載置する。マルチプ
レクサ730は、これらの時間分割多重化線がボード/
バンク・アドレスと別の制御情報ならびにECC情報を
、異なった時間に、搬送するこを可4 能にする。
ECC情報は、受信機734を介してメモリ・モジュー
ル60から受け取られ、入力としてECCジェネレータ
/チエッカ735に加えられ、メモリ・モジュール60
によって発生されたFCCをメモリ制御装置70によっ
て発生されたFCCと比較する。
ECCジェネレータ/チエッカ735に対する他の人力
は、マルチプレクサ740からの出力である。メモリ・
トランザクションが書き込みトランザクションであるか
読み出しトランザクションであるかによって、マルチプ
レクサ740はマルチプレクサ710からメモリ・モジ
ュール6oに送られたメモリ・データを入力として受け
取るか、または受信機745を介してメモリ・モジュー
ル60から受け取られたメモリ・データを入力として受
け取る。マルチプレクサ740は、ECCジェネレータ
/チエッカ735に対する人力であるこれらのメモリ・
データの組の1つを選択する。
ジェネレータ/チエッカ735は、次に適当な5 FCCコードを発生し、このコードは、マルチプレクサ
730に送られる以外に、またECC修正装置750に
も送られる。好適な実施例の場合、ECC修正装置75
0はメモリ・モジュール60から受け取られたメモリ・
データ内の全てのシングル・ビットエラーを修正する。
FCCチエッカ750からの修正されたメモリ・データ
は、次に第8図に示すDMAエンジンに送られると共に
マルチプレクサ752に送られる。
マルチプレクサ752に対する他の人力は、第9図と関
連して以下で説明するエラー処理ロジックからのエラー
情報である。マルチプレクサ752の出力は、ドライハ
フ53を介してCPU30に送られる。
比較器755は、マルチプレクサ710からメモリ・モ
ジュール60に送られたデータをこのデータかドライバ
715と受信機745を通過した後、このデータのコピ
ーと比較する。チエツクによって、ドライバ715と受
信機745が正しく動作しているかどうかを判定する。
比較器7556 からの出力はCMPエラー信号であり、この信号はこの
ような比較エラーがあるか無いかを示す。
第9図においてCMPエラー・ロジックに供給される。
第7図の他の2つの構成要素によって、異なった種類の
エラー検出が行われる。構成要素760はパリティ−発
生装置である。メモリ制御装置70によってメモリ・モ
ジュール60に記憶されるべきデータに発生されたかま
たはメモリ・モジュール60によってメモリ・モジュー
ル60から読み出されたデータに発生されたFCCデー
タは、パリティ−発生装置70に送られる。発生装置7
60からのパリティ−信号は、ドライバ762を介して
、比較器765に送られる。比較器765は、発生装置
760からFCCパリティ−信号を制御装置75′によ
って発生された等価のFCCパリティ−信号と比較する
パリティ−発生装置770は、デマルチプレクサ720
から受け取られた行/列アドレス信号とシングル・ビッ
ト・ボード・アドレス信号とにつ7 いて同し種類のチエツクを実行する。パリティ−発生装
置770からのアドレス・パリティ−信号はドライバ7
72によって比較器775に送られ、この比較器775
は制御装置75からまたアドレス・パリティ−信号を受
け取る。比較器765と775の出力はパリティ−・エ
ラー信号であり、これらの信号は第9図のエラー・ロジ
ックに供給される。
第8図はDMAエンジン800の基礎を示す。
好適な実施例の場合、DMAエンジン800はメモリ制
御装置70内に位置するが、この場所にある必要はない
。第8図に示すように、DMAエンジン800はデータ
・ルータ(router) 810、DMA制御装置8
20、およびDMAレジスタ830を有する。トライバ
815と受信機816によって、メモリ制御装置70と
クロスリンク90との間にインターフェースが設けられ
る。
DMA制御装置820は、制御ロジック700から内部
制御信号を受け取り、これに応答して、制御信号を送っ
てデータ・ルータ810を適当に8 構成する。制御装置820によって、データ・ルータ8
10が第7図に示すクロスリンク90からのデータと制
御信号をメモリ制御70回路に送るように、その構成が
また設定される。データ・ルータは、その状態信号をD
MA制御装置820に送り、このDMA制御装置はこの
信号を他のDMA情報と共に第9図のエラー・ロジック
に伝える。
レジスタ830はDMAバイト・カウンタ・レジスタ8
32とDMAアドレス・レジスタ836を有する。これ
らのレジスタは、ルータ810を介してCPU40によ
って初期値にセットされる。
次に、DMAサイクルの期間中、制御装置820はルー
タ810を介してカウンタ・レジスタ832をインクリ
メントさせアドレス・レジスタ836をデクリメントさ
せる。制御装置820によって、アドレス・サイクル8
36の内容がDMA動作の期間中ルータ810と第7図
の回路を介してまたメモリ・モジュール60に送られる
上に説明したように、本発明の好適な実施例の場合、メ
モリ制御装置70.75.70′、およ9 び75′は、またある種の基本的なエラー動作を実行す
る。第9図は、このようなエラー動作を実行するハード
ウェアの好適な実施例の1例を示す。
第9図に示すように、タイムアウト信号、ECCエラー
信号およびバスのミス比較信号のようなある種のメモリ
制御装置内部信号は、レール(rail)・エラー信号
、ファイヤーウオール(firewall)のミス比較
信号およびアドレス/制御エラー信号のようなある種の
外部信号と同様に、診断エラー・ロジック870に対す
る入力である。好適な実施例の場合、診断エラー・ロジ
ック870はクロスリンク90と95を介してシステム
IOの他の構成要素からエラー信号を受け取る。
診断エラーロジック870は、エラー信号とメモリ制御
装置70のベーシック・タイミングから発生された制御
パルス信号からエラー・パルスを形成する。診断エラー
・ロジック870によって発生されたエラー・パルスは
、ある種のタイミング信号に従って診断エラー・レジス
タ880の適当なロケーションに記憶されているある種
のエラ0 −情報を含む。システム故障エラー・アドレス・レジス
タ65は、エラーが発生した場合、CPU40と50が
通信を行っていたメモリ・モジュール60内にアドレス
を記憶する。
診断エラー・ロジック870からのエラー・パルスはま
たエラー・カテゴリー化ロジック850に送られ、この
エラー・カテゴリー化ロジック850はまたサイクル・
タイプ(例えば読み出し、書き込み等)を示す情報をC
PU30から受け取る。。この情報およびエラー・パル
スから、エラー・カテゴリー化ロジック850はCPU
/IOエラー、DMAエラー、またはCPU/MEM故
障の存在を判定する。
CPU/IOエラーは、バス46のCPU/IOサイク
ルに直接帰するべき動作上のエラーであり、リセットに
関して以下で説明するように、ハードウェアーによって
修復することが可能である。DMAエラーは、DMAサ
イクルの期間中に発生するエラーであり、好適な実施例
の場合、主としてソフトウェアによって処理される。C
PU■ /MEM故障は、CPUの正しい動作またはメモリの内
容を保障することのできないエラーである。
エラー・カテゴリー化ロジック850からの出力は、エ
ンコーダ855に送られ、このエンコーダ855は特定
のエラー・コードを形成する。このエラー・コードは、
エラー・ディスエーブル信号が存在する場合、次にAN
Dゲート856を介してクロスリンク90と95に送ら
れる。
エラー・コードを受け取った後、クロスリンク90.9
5.90′、95′はメモリ制御装置にリトライ要求信
号を送る。第9図に示すように、メモリ制御装置70の
エンコーダ895はサイクル・タイプ情報とエラー信号
〔サイクル・クオリファイヤ(qualifiers)
として纏めてに示される〕と共にリトライ要求信号を受
け取る。エンコーダ895は、次にシステム故障エラー
・レジスタ898に記憶するための適当なエラー・コー
ドを発生する。
システム故障エラー・レジスタ898は、診断エラー・
レジスタ880と同じ情報を記憶しない。
2 システム故障エラー・レジスタ898とは違って、診断
エラー−レジスタ880はクロスリンク・レールからの
1つの入力のエラーのようなレール・ユニーク情報およ
びメモリ・モジュール60内の修正不可能なFCCエラ
ーのようなゾーン・ユニーク・データのみを含んでいる
診断エラー・レジスタ898は、またエラーの処理に使
用される幾つかのビットを含んでいる。
これらのビットは、所望のメモリーロケーションが見当
たらないことを示すNXNビット、所望にI10ロケー
ションが見当たらないことを示すNXl0ビット、ソリ
ッド故障ビットおよび過渡的ビットを含んでいる。過渡
的ビットソリッド・ビットはいずれも故障のレベルを示
す。過渡的ビットによって、またシステム故障エラー・
アドレス・レジスタ865が凍結される。
第9図は、メモリ・コントローラ・ステータス・レジス
タ875を示すが、これは技術的にはエラー・ロジック
の一部ではない。レジスタ875は、DMA比率比率部
子77MA比率コート・工3 ラー・ディスエーブル部878のエラー・デスエーブル
・コード、およびミラー・バス・ドライバ・イネーブル
部876のミラー・バス・ドライバ・イネーブルコード
のようなある種の状態情報を記憶する。DMA比率コー
ドは、DMAに割り当てることのできるメモリ帯域幅の
部分を特定する。
エラー・デスエーテル・コードによって、ANDゲート
856および従ってエラー・コードを不能にする信号が
与えられる。ミラー・バス・ドライバ・イネーブル・コ
ードによって、ある種のトランザクションに対してミラ
ー・バス・ドライバを動作させる信号を与えられる。
4、 クロスリンク メモリ再同期、DMAおよびI10動作用のデータは、
クロスリンク90と95を通過する。
般的に、クロスリンク90および95によって、CPU
モジュール30.CPUモジュール30′I10モジユ
ール100.110.120、およびI10モジュール
110′、110’、120′との間の通信が行われる
。(第1図参照)4 クロスリンク90と95は、第1O図に示すように、並
列レジスタ910と直列レジスタ920の両方を含む。
両方のタイプのレジスタは、本発明の好適な実施例でプ
ロセッサ間の通信を行うために使用される。通常の動作
の期間中、処理システム20と20′は同期され、デー
タはそれぞれクロスリンク90/95と90’/95’
の並列レジスタ910を使用して、処理システム20と
20’との間で交換され、処理システム20と20′が
同期されていない場合、ブートストラッピングの期間中
に最も顕著に現れるように、データは直列レジスタ90
2によってクロスリンクの間で交換される。
並列レジスタのアドレスは、メモリ・スペースと違って
I10スペースである。メモリ・スペースとはメモリモ
ジュール60内のロケーションのことである。I10ス
ペースとは、Iloおよび内部システム・レジスタのよ
うなロケーションのことてあり、こらはメモリ・モジュ
ール60内には存在しない。
5 I10スペース内では、アドレスはシステム・アドレス
・スペース内に存在するか、ゾーン・アドレス・スペー
ス内に存在するかのいずれかである。「システム・アド
レス・スペース」という用語は、システム10全体を通
してアクセスすることのできるアドレス、すなわち処理
システム20と20′の両方によってアクセスすること
のできるアドレスのことである。「ゾーン・アドレス・
スペースjという用語は、特定のクロスリンクを含むゾ
ーンによってのみアクセス可能であるアドレスのことで
ある。
第10図に示す並列レジスタは、通信レジスタ906と
I10リセット・レジスタ908を有する。通信レジス
タ906は、ゾーン間で交換される独特のデータを含む
。このようなデータは、メモリ・ソフト・エラーのよう
な通常ゾーンに特有のデータである(メモリモジュール
60と60′が同じエラーを同時に独立して経験すると
いうことは確率の領域外の出来事である) レジスタ906に記憶されるべきデータはユニ6 −クなものであるため、書き込みの目的のための通信レ
ジスタ906のアドレスは、ゾーン・アドレス・スペー
スになければならない。もしそうでなければ、処理シス
テム20と20’は、ロックステップ同期状態にあり同
じ一連の命令を異同時に実行しているため、ゾーン・ユ
ニーク・データをゾーン11内の通信レジスタ906の
みに記憶することはできず、これらはこの同じデータを
ゾーン11′内の通信レジスタ906’  (図示せず
)にも記憶しなければならない。
しかし、読み出しのための通信レジスタ906のアドル
スは、システム・アドレス・スペース内に存在する。し
たがって、同期動作の期間中、両方のゾーンは同時に1
つのゾーンから通信レジスタを読み出すことができ、次
に他のゾーンから通信レジスタを同時に読み出すことが
できる。
I10リセット・レジスタ908は、システム・アドル
ス・スペース内に存在する。このI10リセット・レジ
スタは、対応するモジュールがリセット状態にあるかど
うかを示すため、1つのI7 10モジユールに対して1ビットを有する。I10モジ
ュールがリセット状態にある場合、これは効果的にディ
スエーブルされる。
並列レジスタ91もまた他のレジスタを有するが、これ
らの他のレジスタの理解は本発明を理解するために必要
ではない。
並列クロスリンク−レジスタ920は全てゾーンの固有
のスペース内に存在するが、その理由は、これらが非同
期通信に使用されるが、ゾーンに固有の情報のみを有し
ているかのいずれかであるからである。並列クロスリン
ク・レジスタと並列クロスリンクの目的は、プロセッサ
20と20′が例えロック・ステップ同期状態(例えば
、位相ロック状態およびこれと同じ状態)で動作してい
なくても、これらのプロセッサ20と20′に通信を行
なわせることである。好適な実施例の場合、幾つかの並
列レジスタがあるが、本発明を理解するためにこれらを
説明する必要はない。
制御および状態レジスタ912は、状態および制御フラ
グを含む直列レジスタである。これらの8 フラグの1つはO8Rビット913であり、これはブー
トストラビングのために使用され、対応するゾーンの処
理システムがブートストラブ・プロセスが既に終了して
いるかまたはこのシステムが再同期を行ったかのいずれ
かの理由のために、この処理システムが既にそのブート
ストラブ・プロセスを開始したかどうか、またはそのゾ
ーンに対する動作システムが現在勤作中であるかとうか
を示す。
制御および状態レジスタ912は、またクロスリンク9
0の現在のモードおよび従って処理システム20の現在
のモードを識別するためのモード・ビット914を有す
る。モード・ビットは、再同期モード・ビット915と
クロスリンク・モード・ビット916を含むことが望ま
しい。再同期モード・ビット915は、クロスリンク9
0を再同期スレーブ・モードまたは再同期マスター−モ
ードのいずれかにあるものとして識別する。クロスリン
ク・モード・ビット91Bは、クロスリンク90をクロ
スリンク・オフ・モード、デュプレ9 ックス・モード、クロスリンク・マスター・モード、ま
たはクロスリンク・スレーブ・モードのいずれかにある
ものとして識別する。
直列レジスタの用途の1つは、状態読み出し動作であり
、この動作によって、1つのゾーンのクロスリンクが他
のゾーンのクロスリンクの状態を読み出すことができる
。状態読み出し要求フラグ918を直列制御状態レジス
タ912に立てることによって、状態情報に対する要求
がクロスリンク90′に送られる。このメツセージを受
け取ると、クロスリンク90′は、その直列制御および
状態レジスタ912′の内容をクロスリンク90に送り
返す。
第11図は、プライマリ・クロスリンク90およびミラ
ー・クロスリンク95内のルート制御および状態信号(
「制御コード」と呼ぶ)用の構成要素の幾つかを示す。
対応するクロスリンクの構成要素は、好適な実施例では
、クロスリンク90′および95′内に存在する。これ
らのコードは、メモリ制御装置70と75およびモジュ
ール相互0 接続部130.132.130′および132′との間
に送られる。
第12図は、ルート・データおよびアドレス信号を送る
のに使用される好適な実施例のプライマリ・クロスリン
ク90の構成要素を示す。対応するクロスリンクの構成
要素は、クロスリンク95.90′および95′内に存
在する。
第11図は、プライマリ・クロスリンク90とミラー・
クロスリンク95の両方に対する構成要素を示すが、こ
れらの構成要素の間には重要な相互接続部があるため、
ハードウェアは同じである。
プライマリ・クロスリンク90の構成要素と同じミラー
・クロスリンク95の回路の構成要素は同じ番号で示す
が、ミラー制御装置の場合には番号の次にrmJの文字
を付ける。
第11図および第12図を参照して、これらの構成要素
はラッチ、マルチプレクサ、ドライバおよび受信機を含
む。ラッチ933および933mのような一部のラッチ
は遅延要素として動作し、クロスリンクの正しいタイミ
ングを保証し、これ1 によって同期を維持する。第11図に示すように、メモ
リ制御装置70からの制御コードは、バス88を介して
ラッチ931に送られ、次にラッチ932に送られる。
このよらなラッチを行う理由は、適当な遅れを与えてメ
モリ制御装置70からのデータがメモリ制御装置70′
からのデータと同時にクロスリンク90を通過すること
を保証することである。
もしメモリ制御装置70からのコードがクロスリンク9
0′を介して処理システム20′に送られるべきであれ
ば、ドライバ937が起動される。
メモリ制御装置70からの制御コードは、またラッチ9
33を通過してマルチプレクサC3MUXA935に入
る。もし制御コードがクロスリンク90′からプライマ
リ・クロスリンク90に受け取られれば、これらの経路
は受信装置936を通ってラッチ938およびまたマル
チプレクサ935に至る。
マルチプレクサ935に対する制御コードによって、デ
ータのソースが決定される、すなわちこれがメモリ制御
装置70からきたものであるかま2 たはメモリ制御装置70′からきたものであるかが決定
され、これらのコードはマルチプレクサ935の出力に
加えられる。この出力は、再び正しい遅延目的のため、
ラッチ939の記憶され、もしこれらのコードがモジュ
ール相互接続部+30に送られるべきてあれば、ドライ
バ940が起動される。
データおよびアドレス信号の経路は、第12図に示すよ
うに、第11図に示す制御信号の経路と若干類似してい
る。これらの相違点は、いずれの1つのトランザクショ
ンの期間中においてもデータおよびアドレスはクロスリ
ンク90と95を介して1つの方向のみに流れるが、制
御信号はそのトランザクションの期間中に双方向に流れ
るという事実を反映している。これと同じ理由のため、
バス88と89のデータ線は双方向であるが、制御方向
は双方向ではない。
バス88を介してメモリ制御装置70から供給されるデ
ータとアドレスはラッチ961に入り、次いでラッチ9
62に入り、次いでラッチ9643 に入る。第11図の場合と同様に、第12図のラヨチに
よって同期を維持するための正しいタイミングが与えら
れる。メモリ制御装置70′から出力されるデータは受
信装置986によってバッファされ、ラッチ988に記
憶され、次にマルチプレクサMUXA966の入力に向
かう。マルチプレクサ966の出力は、ラッチ986に
記憶され、もしドライバ969が起動されれば、モジュ
ール相互接続部130に送られる。
第11図はメモリ制御装置72送られるべき制御コード
の経路を示す。モジュール相互接続部130からのコー
ドは、先ずラッチ941に記憶され、次にマルチプレク
サC8MUXC942に与えられる。マルチプレクサ9
42は、また並列クロスリンク・レジスタ91O′から
制御コードを受け取り、ラッチ943に転送するため並
列レジスタ・コードまたはラッチ941からのコードの
いずれかを選択する。もしこれらの制御コードがクロス
リンク90′に転送されるべきであれば、ドライバ94
6が起動される。クロスリンク90′4 からのコード(および従ってメモリ制御装置70′から
の制御コード)は受信機947いよってバッファされ、
ラッチ948に記憶され、入力としてマルチプレクサC
8MUXD945に加えられる。
マルチプレクサC8MUXD945は、またラッチ94
3の内容を記憶しているラッチ944の出力を入力とし
て受け取る。
マルチプレクサ945は、モジュール相互接続部130
からのコードまたはクロスリンク90′からのコードの
いずれかを選択し、これらの信号を人力としてマルチプ
レクサC8MUXE949に加える。マルチプレクサ9
49は、またデコード・ロジック970からのコード(
再同期の期間中に発生するバルク・メモリの転送のため
に)、直列クロスリンク・レジスタ920からのコード
、または所定のエラーコードERRを人力として受け取
る。マルチプレクサ949は、次に適当に制限されてこ
れらの入力の幾つかを選択してラッチ950に記憶する
。もしこれらのコードがメモリ制御装置70に送られる
べきであれば、次にドラ5 イバ951が起動される。
マルチプレクサ949に対する入力であるエラー・コー
ドERRの目的は、レールの1つのエラーによって、レ
ールとしての同じゾーン内のCPUが異なった情報を処
理しないことを保証することである。もしこのようなこ
とが発生すれば、CPUモジュール30は故障を検出し
、これによってトラスチックだが恐らく必要のないアク
ションが発生する。このことを回避するため、クロスリ
ンク90はEXCLUSIVE  ORゲート960を
有し、このゲートによってマルチプレクサ945と94
5mの出力が比較される。もしこれらの出力が異なって
いれば、ゲート960によってマルチプレクサ949は
ERRコードを選択する。
EXCLUSIVE  ORアゲ−960mは、同様に
マルチプレクサ949mにまたERRコードを選択させ
る。このコードは、エラーが発生しているがCPUモジ
ュールにエラーの発生することは回避されていることを
メモリ制御装置70と75に示す。メモリ・モジュール
60に対するシ6 ングル・レール・インターフェースはデータとアドレス
に対して同じ結果を達成する。
第12図に示すデータとアドレスの流れは第11図の制
御信号の流れと同じである。モジュール相互接続部13
0からのデータとアドレスは、ラッチ972に記憶され
、次に入力としてマルチプレクサMUXB974に入力
として加えられる。
並列レジスタ910からのデータによって別の入力がマ
ルチプレクサ974に加えられる。マルチプレクサ97
4の出力は、マルチプレクサMUXC976に対する入
力であり、このマルチプレクサMUX’C976は、ま
たもともとメモリ制御装置70から送られてラッチ96
1に記憶されているデータとアドレスを受け取る。マル
チプレクサ976は、次にこれらの入力の1つを選択し
てラッチ798に記憶する。もしモジュール相互接続部
130から人力されたものであれ、メモリ制御装置70
から入ノJされたものであれ、もしデータとアドレスが
クロスリンク90′に送られるべきであれば、ドライバ
984が起動される。
7 クロスリンク90′から入力されたデータは受信装置9
86によってバッファされラッチ988に記憶されるが
、このラッチ988によってまたマルチプレクサMUX
D982に対する人力が与えられる。マルチプレクサM
UXD982の他方の人力はラッチ980の出力であり
、このラッチ988はラッチ978から人力されたデー
タとアドレスを有している。マルチプレクサ982は次
にその人力の1つを選択し、こらば次にラッチ900に
記憶される。もしデータまたはアドレスがメモリ制御装
置70に送られるべきであれば、ドライバ922が起動
される。シリアル・レジスタ920からのデータはドラ
イバ944を介してメモリ制御装置70に送られる。
クロスリンク90を通るデータ、特に第11図および第
12図の両方のエクソンレオール(xonreol)素
子を通るデータは、デコード・ロジック970、デコー
ド・ロジック971、デコードロジック996、および
デコード・ロジック998によって発生される幾つかの
信号によって制御される。
8 適当な入力ソースを選択するため、このロジックによっ
て、適当な入力ソースを選択するために、マルチプレク
サ935.942.945.94966.974.97
6、および982を制御する信号が与えられる。更に、
このデコード・ロジックは、またドライバ940.94
6.951.96984.992、および994を制御
する。
る。
制御信号の大部分は、デコード・ロジック998によっ
て発生されるが、これらの一部はデコード−ロジック9
70.971,970m、971m1および996によ
って発生される。デコード・ロジック998.970お
よび970mは、データとコードがそれ自身のゾーンか
ら受け取られるか他のゾーンから受け取られるかを制御
するのに必要なデータとコードをこのロジックか受け取
ることを保証する位置に持続される。
デコード・ロジック971.971mおよび966の目
的は、ドライバ937.937mおよび984が適切な
状態にセットされることを保証9 することである。この「初期デコード」によって、デー
タ・アドレスとコードが全てのケースで適切なりロスリ
ンクに送られることを確認する。このような初期デコー
ド・ロジックがなければ、クロスリンクは全てそれらの
ドライバが不能にされた状態におかれる可能性がある。
メモリ制御装置のトライバがまた不能にされれば、その
クロスリンクは決してアドレス、データおよび制御コー
ドを受け取らず、そのクロスリンクに接続されているI
10モジュールの全てを効率的に不能にする。
デコード−oシック970.971.970m、971
m、および998によって発生されたドライバ制御信号
を説明する前に、これらのゾーン、従ってクロスリンク
90と95がとることのできる異なったモードを理解す
る必要がある。第13図は、異なった状態AないしFお
よび各モードに対応するこれらの状態を説明する表であ
る。
開始時およびその他の場合、両方のゾーンは状態Aにあ
り、この状態Aはこれら両方のゾーンに対するOFFモ
ードとして知られる。このモード0 の場合、両方のゾーンのコンピュータ・システムは独立
して動作している。これらのゾーンの1つの動作システ
ムが他方のゾーンのIloと通信を行う能力を要求し、
その要求が受け入れられた後、これらのゾーンは状態B
とCとして示されるマスター/スレーブ・モードに入る
。このようなモードの場合、マスターであるゾーンは動
作しているCPUを有し、そのゾーンおよび他方のゾー
ンのI10モジュールを制御する。
再同期を開始すると、コンピュータ・システムは状態B
またはCのいずれかのマスター/スレーブモードを離脱
し、状態EおよびFとして示される再同期スレーブ/再
同期マスター・モードに入る。これらのモードの場合、
マスター・ゾーンであったゾーンが他方のゾーンのCP
Uをオン・ラインにする役割を果たす。もし再同期に失
敗すれば、これらのゾーンは前に再同期しようとしたの
と同じマスター/スレーブモードに戻る。
しかし、もし再同期が成功すれば、これらのゾーンは状
態りに入り、この状態りは完全デュプレックス・モード
である。このモードの場合、両方のモードはロックステ
ップ同期状態で共に動作する。動作は、CPM/MEM
の故障が発生する迄、このモードで継続され、この場合
、システムは2つのマスター・スレーブ・モードの1つ
に入る。
スレーブはそのプロセッサーがCPM/MEM故障を経
験したゾーンである。
状態D、すなわち完全デュプレックス・モードで作動し
ている場合、最も顕著なのはクロック位相エラーである
が、ある種のエラーが発生すると、システムを2つの独
立した処理システムに分割する必要が生ずる。これによ
ってシステムは状態Aに戻る。
第11図および第12図に示すデコード・ロジック97
0.970m、971,971m、998(まとめてク
ロスリンク・制御ロジックと称する)は、クロスリンク
・ドライバとマルチプレクサをどのようにして適切な状
態にセットするかを決定するため、第10図に示す再同
期モード・ビット915とクロスリンク・モード・ビッ
ト916に2 アクセスする、更に、このクロスリンク・デコード・ロ
ジックは、またデータ・トランザクションの期間中にメ
モリ制御装置70と75から送られたアドレスの一部を
受け取って分析し、クロスリンク・マルチプレクサとド
ライバの状態をどのようにして設定するかをクロスリン
ク・デコード・ロジックに対して更に指示すアドレス情
報を取り出す。
マルチプレクサの状態を設定するのに必要な情報は、−
魔界なったモードとトランザクションを理解すると、か
なりはっきりする。行うべき唯一の判断はデータのソー
スである。従って、クロスリンク90と95がスレーブ
・モードにある場合、マルチプレクサ935.935m
、および966はゾーン11からデータ・アドレスとコ
ードを選択する。もしクロスリンク90と95が完全に
デュプレックス・モードにあり、Iloの命令のアドレ
スがゾーン11のIloに接続された装置に対するもの
であり、影響を受けたマルチプレクサとのクロスリンク
がクロスオーバー・モードにあり3 れば、これらのマルチプレクサはまた他方のゾーンから
データ、アドレスおよびコードを選択する。
クロスオーバー・モードの場合、モジュール相互接続部
に送られるべきデータはチエツクのため他方のゾーンか
ら受け取られるべきである。好適な実施例の場合、モジ
ュール相互接続部+30はゾーン11のプライマリ・レ
ールからデータ、アドレスおよびコードを受け取り、モ
ジュール接続部は、ゾーン11’のミラー・レールから
データ、アドレスおよびコードを受け取る。または、モ
ジュール相互接続部132はゾーンII’のプライマリ
・レールからデータ、アドレスおよびコードを受け取る
ことができ、これによって、一方のゾーンのプライマリ
・レールを他方のゾーンのミラー・レールと比較するこ
とが可能になる。
マルチプレクサ945.945m、982は、データの
ソースであるいずれかのゾーンからデータ、アドレスお
よびコードを受け入れるようにセットされる。このこと
は、全てのクロスリンクが完全にデュプレックス・モー
ドにあり、データ、4 アドレスおよびコードがI10モジュールから受け取ら
れる場合と、クロスリンクが再同期スレーブ・モードで
あり、データ、アドレスおよびコードが他方のゾーンの
メモリ制御装置から受け取られる場合の両方について、
真実である。
もしメモリ制御装置70および75からのアドレス情報
が、応答データとコードのソースがクロスリンク自身の
並列レジスタ910であることを示せば、マルチプレク
サ942.942m、および974はこれらのレジスタ
からデータとコードを選択するようにセットされる。同
様に、もしメモリ制御装置70および75からのアドレ
ス情報が応答データのソースはクロスリンク自身のシリ
アル・レジスタ920であることを示せば、マルチプレ
クサ949と949mはデータとコードをこれらのレジ
スタから選択するようにセットされる。
もしこの情報がメモリ再同期動作期間中の制御コードで
あれば、マルチプレクサ949と949mはデコード・
ロジック970と970mからデ5 一夕を選択するようにまたセットされ、もしEXCLU
SIVE  ORゲート960と960mがクロスリン
ク90と95を介して転送されたデータの間で比較のミ
スを識別すれば、ERRコードを選択するようにセット
される。この後者の場合、マルチプレクサ949と94
9mの制御は、クロスリンクロジックからではなくてE
XCLUSIVBORゲート960と960mから行わ
れる。マルチプレクサ949と949mは、クロスリン
ク・レジスタ910が要求された場合には、これらのレ
ジスタからコードをまた選択し、これらのコードが要求
された場合には、マルチプレクサ945と945mの出
力をまた選択する。マルチプレクサ945と945mは
、それぞれマルチプレクサ942と942mからの出力
かまたはそれぞれクロスリンク90′と95′からのI
10コードかのいずれかを選択する。
マルチプレクサ976は、I10モジュールとのトラン
ザクションの場合には、モジュール相互接続部139か
らデータとアドレスを選択するか、6 またはデータとアドレスがIloに対してかまたはメモ
リの再同期の期間中かのいずれかにクロスリンク90′
に送られるべきである場合、メモリ制御装置90からの
データとアドレスを選択するかのいずれかである。
ドライバ937と937mは、クロスリンク90と95
がデュプレックス・モード、マスター・モードまたは再
同期マスター・モードにある場合、動作される。ドライ
バ940と940mは、ゾーン11のl10)ランザク
ジョンの場合に動作される。ドライバ946と946m
は、クロスリンク90と95がデュプレックス・モード
またはスレーブ・モードの場合に動作される。ドライバ
951と951mは常に動作されている。
ドライバ969はゾーン11に対するl10書き込み期
間中に動作される。ドライバ984は、クロスリンク9
0がデータとアドレスをゾーン11’のIloに送って
いる場合、またはクロスリンク90が再同期マスター・
モードにある場合に動作される。受信機986はクロス
リンク90′7 からデータを受け取る。ドライバ992と994は、デ
ータがメモリ制御装置70に送られている場合に動作さ
れる。ドライバ994は、シリアル・クロスリンク・レ
ジスタ910の内容が読み出されている場合に動作され
、ドライバ992は全ての他の読み出し期間中に動作さ
れる。
5、発振器 両方の処理システム20と20′が各々同じ機能を完全
デユープレックス・モードで実行している場合、CPU
モジュール30と30′が同じ速度で動作を実行するこ
とが避けられない、もしそうでなければ、処理時間の大
部分は、I’Oおよびインタープロセッサのエラーのチ
エツクのために処理システムの20と20′を再同期さ
せることに消費されてしまう。処理システム20と20
′の好適な実施例の場合、これらのシステムの基本的な
りロック信号は相互に同期されて位相ロックされている
。故障許容コンピュータ・システムIOは、処理システ
ム20と20′に対するクロック信号の周波数を制御し
、各処理システムに対8 するクロック信号の間の位相差を最小にするために、タ
イミング・システムを有している。
第14図は、処理システム20と20′で実施される本
発明のタイミング・システムのブロック図を示す。この
タイミング・システムは、処理システム20のCPUモ
ジュール30の発信器システム200と処理システム2
0′のCPUモジュール30′の発振器システム200
′によって構成される。発振器200′の構成要素は発
振器200の構成要素と同じであり、両方の発振器シス
テムの動作は同じである。従って、発振器システム20
0と200′の動作が異なっている場合を除いて、発振
器システム200の構成要素と動作のみを説明する。
第14図に示すように、発振器システム200の大部分
、特にディジタル・ロジックはクロスリンク95内部に
位置しているが、この位置は本発明にとって必要なもの
ではない。発振器システム200は電圧制御水晶発振器
(VCX)205を有し、これは好ましくは、66.6
6Mhzの基発明9 振器信号を発生する。VCXO205の周波数は入力の
電圧レベルによって調整することができる。
クロック分配チップ210は基本発振器信号を分周し、
全て同じ周波数を有する4つの一次クロックを発生する
ことが望ましい。プライマリCPU40の場合、これら
のクロックはPCLK  LおよびPCLK  Hであ
り、これらは相互に論理が反転しているものである。ミ
ラーCPU50の場合、クロック分配チップ210はク
ロック信号MCLK  LとMCLK  Hを発生し、
これらはまた相互に論理が反転しているものである。第
15図は、これらのクロック信号のタイミングと位相の
関係を示す。クロック信号PCLK  L、PCLK 
 H,MCLK  M、およびMCLKHは約33.3
3Mhzであることが望ましい。クロック・チップ21
0は、また第15図に示す16.66Mhzの位相ロッ
ク・ループ信号CLKCHをまた発生する。この位相ロ
ック・ループ信号は、この信号をバッファするクロック
・ロジック220に送られる。
 00 クロック・ロジック・バッファ220は、同期に使用す
るため、CLKCH信号を発振器200′に送る。発振
器200′のクロック・ロジック・バッファ220′は
、それ自身のバッファされた位相ロック・ループ信号C
LKC’  Hを発振器200の位相検出器230に送
る。位相検出器230は、遅延素子225を介してクロ
ック・ロジック220から位相ロック・ループ信号CL
KCHをまた受け取る。遅延素子225は、クロック・
ロジック・バッファ220′からのケーブル・ラン(c
able run)による遅延を概算する。
位相検出器230は、その入力位相ロック・ループ信号
を比較して2つの出力を発生する。これらの信号の1つ
は位相差異信号235であり、これはループ増幅器24
0を介してVCXO205の電圧入力に送られる。位相
差異信号235によって、増幅器240は信号を発生し
、この位相差異を補償するためにVCXO205の周波
数を変換する。
位相検出器230の他方の出力は、位相エラー01 信号236であり、これは可能性のある同期の故障を示
す。
第16図は、位相検出器230の詳細図である。
位相検出器230は位相比較器232と電圧比較器23
4を有する。位相比較器232は、遅延素子225から
クロック信号(CLKCH)を受け取ると共に検出器2
00′から位相ロック・ループ・クロック信号(CLK
C’  H)を受け取り、これらの信号の位相差を表す
電圧差として位相差信号235を発生する。
もしクロックを同期させる目的のために処理システム2
0が「スレーブ」であれば、スイッチ245は「5LA
VE」の位置(すなわち閉)にあり、電圧水準235は
、ループ増幅器240によって増幅された後、VCXO
205の周波数を制御する。もし両方のスイッチ245
と245′か「マスター」の位置にあれば、処理システ
ム20と20′は位相ロックされず、非同期の状態で(
独立して)動作する。
位相差信号235の電圧水準は、また電圧比較 02 器234に対する人力であり、これらの位相差は位相の
進みと遅れの許容範囲を表す電圧V r h l lお
よびV t h I 2である。もしこの位相差が許容
範囲であれば、PHASE  ERROR信号は活性化
されない。もしこの位相差が許容範囲以外であれば、P
HASE  ERROR信号236は活性化され、クロ
ック・デコーダ220を介してクロスリンク95に送ら
れる。
6、  I10モジュール 第17図はI10モジュール100の好適な実施例を示
す。このI10モジュール100の動作の原理は、他の
I10モジュールにも同様に適応することができる。
第18図はファイヤウオール(firewall) +
000の好適な実施例の構成要素を示す。ファイヤウオ
ールl000は、第17図に示すモジュール相互接続部
130に対する16ビットのバス・インターフェース1
810とバス1020に接続するための32ビットのバ
ス・インターフェース】820を有する。インターフェ
ース1810と1820は 03 内部ファイヤウオール・バス1815によって接続され
、このファイヤウオール・バス1815はまたファイヤ
ウオール1000の他の構成要素とも相互に接続される
。バス1815は16または35ビット幅の並列バスで
あることが望ましい。
I10モジュール100はデュアル・レール・モジュー
ル相互接続部130と132によってCPUモジュール
30に接続される。モジュール相互接続部の各々は、そ
れぞれファイヤウオール1000と1010に接続され
る。通常はファイヤウオール1000であるが必ずしも
これではない一方のファイヤウオールは、モジュール相
互接続部130からハス1020にデータを書き込む。
この場合にはファイヤウオール1010である他方のフ
ァイヤウオールは、第18図に示すファイヤウオール比
較回路1840を使用して、そのデータをモジュール相
互接続部132から受け取った自分自身のコピーとチエ
ツクする。このチエ・ツクは有効であるが、その理由は
、CPUモジュール30と30′からI10モジュール
に対して書4 き込まれたデータを実質的に同時にファイヤウオール1
000と1010で入手可能にしているこれらのCPU
モジュール30と30′がロックステップ同期の状態に
あるからである。
ファイヤウオール比較回路1840は、CPUモジュー
ル30と30′から受取ったデータのみをチエツクする
だけである。I10装置からCPUモジュール30と3
0′送られたデータは、共通の供給元を有し、従ってチ
エツクを必要としない。
その代わり、I10装置から受取られCPUモジュール
30と30′に送られるデータは、EDC/CRC発生
装置1850によって実行される周期的冗長性チエツク
(CRC)コードのようなエラー検出コード(EDC)
によってチエツクされる。EDC/CRC発生装置18
50は、また内部ファイヤウオール・バス1815に接
続される。
EDC/CRC発生装置1850は、I10装置によっ
て使用されるのと同じEDC/CRCコードを発生して
チエツクを行う。I10モジュール100は2つのED
Cを発生することが望まし 05 い。一方のEDCはまたE D C/CRCでもよく、
これはモジュール100が接続されているアサ−ネット
(Bthernet)パケット・ネットワークのような
ネットワークに対するインターフェースに使用される(
第17図の構成要素108に参照)。
他方のEDCは第17図のディスク・インターフェース
1072のようなディスク・インターフェースに使用さ
れる。
CPUモジュール30とI10モジュール100との間
でEDC/CRCを適応することは必要でないが、その
理由は、モジュールゆ相互接続部が2重になっているか
らである。例えばCPUモジュール30の場合、クロス
リンク90はモジュール相互接続部30を介してファイ
ヤウオール1000と通信を行い、クロスリンク95は
モジュール相互接続部132を介してファイヤウオール
1000と通信を行う。
アサ−ホット・ネットワーク1082から受け取られた
メツセージは、第17図に示すネットワーク制御装置1
080によってEDC/CRCの 06 有効性をチエツクされる、EDC/CR,Cか完全であ
るデータは、これもまた第17図に示すローカルRAM
1060に書き込まれる。ローカルRAM1060内の
全てのデータは、DMAを使用してメモリ・モジュール
60に転送される。
DMA制御装置1890は転送の調整を行い、EDC/
CRC発生装置に転送中のE D C/CRCによって
符号化されたデータの有効性をチエツクさせる。
I10装置との大部分のデータの転送はDMAによって
行われる。データはメイン・メモリとI10バッファ・
メモリとの間を移動する。データがメイン・メモリから
I10バッファメモリに移動する場合、E D C/C
RCを付加してもよい。
データかI10バッファメモリからメイン・メモリに移
動する場合、E D C/CRCはチエツクを受けてメ
イン・メモリに移動してもよく、または取り除かれても
よい。データかI10バッファメモリからディスクまた
はアサ−ネット・アダプタのような外部装置を介して移
動される場合、EDC7 /CRCは局部的また(ま離れた位置にある受信ノード
でチエツクされてもよく、またはその両方でチエツクさ
れてもよい。メモリ・データ・パケットは遠くの位置に
あるノートまたはI10モジュールのローカル・インタ
ーフェースによって発生されたそれらのEDC/CRC
を有してもよい。
この動作によって、I10モンユール100のようなシ
ングル・レール・システムに存在する、またはこれを介
して転送中のデータがエラー検出コードによってカバー
されることが保証され、このエラー検出コードはこのデ
ータが最終的に通過する通信メディアと少なくとも同じ
くらい信頼性のあることが望ましい。例えば、同期プロ
トコールを処理するような異なったI10モジュールは
、適当なプロトコールのEDC/CRCコードを発生し
てチエツクするE D C/CRC発生装置を有するこ
とが望ましい。
一般的に、DMA制御装置1890はアドレスされてい
る共有のメモリ制御装置+05とローカルRAM106
0に特有のDMAの動作の部分を+08 取扱う。32ビット・バス1020は2つの異なったモ
ードで駆動される。DMAのセットアツプの期間中、D
MA制御装置1890は標準非同期マイクロプロセッサ
・バスとしてバス1020を使用する。DMAの動作が
発生するローカルRAM1060のアドレスは共有のメ
モリ制御装置1050とDMA制御装置1890に供給
される。実際のDMAの転送の期間中、DMA制御装置
1890はDMA制御線1895に非同期の状態でバス
1020を駆動させる。共有のメモリ制御装置1050
はバス・サイクル毎に32ビットのデータ・ワードをバ
ス1020に転送し、I)MA制御装置1090はどれ
くらいの数のワードの転送が残っているかについての情
報を得る。共有のメモリ制御装置1050は、またロー
カルRA M 1060を制御して次のDMAアドレス
を発生する。
I10モジ、1−ル(100、ll01120)はそれ
ら自身のローカルR,AMI060に対する読み出し/
′書込み動作を制御する責任を負う。
CPUモジュール30はメモリ・アレイ60との 09 転送動作を制御する責任を負う。メモリ制御装置70と
75のDMAエンジン800(第8図に示す)は、CP
Uモジュール30に対するDMAの動作を管理する。こ
のような作業の分割によって、いずれかのモジュールの
DMAロジックの故障がゾーン11または1ビのいずれ
かの他のモジュールのデータの健在性を低下させること
を防止する。
トレースRAM+872はトレースRAM制御装置18
70の機能を以下で詳細に説明する。簡単に言えば、故
障が検出され、CPU40.40′50および50′と
CPUモジュール30および30′がそのことを通知さ
れると、4コンピユータ・システムlO全体の種ケのト
レースRAMが以下で説明するある種の機能を実行する
。トレースRAMとの通信はトレース・ハス]095で
行われる。トレースRAM制御装置l870は、トレー
ス・ハス1095からの信号に応答して、トレースR,
AMI872に記憶を停止させるかその内容をソレース
・バス1095放出させる。
 l 0 32ビットの並列バスであることが望ましいI10モジ
ュール・バス1020は、ファイヤウオール1000お
よび1010に接続されると共にI10モジュール10
0の他の構成要素にも接続される。共有のメモリ制御装
置1050は、I10モジュール100のI10モジュ
ール・バス1020にもまた接続される。共有のメモリ
制御装置1050は共有のメモリ・バス1065によっ
てローカル・メモリ1060に接続され、この共有のメ
モリ・バス1065は32ビットのデータを搬送するこ
とが望ましい。ローカル・メモリ1060は256キロ
バイトのメモリを有するRAMであることが望ましいが
、このRA M 1060は任意のサイズでよい。共有
のメモリ制御装置1050とローカルRAM1060に
よって、I10モジュールI00に対する記憶能力が与
えられる。
ディスク制御装置1070によって、第1図のディスク
1075および1075’のようなディスクに対して標
準のインターフェースが設けられす る。ディスク制御装置1070は、ローカルRAM10
60に使用するためまたはI10モジュール・バス10
20との通信を行うために共有のメモリ制御装置105
0にまた接続される。
ネットワーク制御装置1080はネ・ソトワーク・イン
ターフェース1082によってBTHBRNBTネット
ワークのような標準ネットワークに対してインターフェ
ースを与える。ネットワーク制御装置10811は、ロ
ーカルRAM1060とI10モジュール・バス102
0の両方に対してインターフェースとして機能する共有
のメモリ制御装置1050にまた接続される、しかし、
I10モジュール・バス1020の特定の組織または構
造については何等の要求も存在しない5、 PCIM(電源および冷却用インターフェース・モジュ
ール)ザポート・エレメント1030は、I10モジュ
ール・バス1020に接続されると共にASCIIイン
ターフェース103に接続される。PCIMサポート・
エレメント1030によって、処理システム20は電源
システムの状態(すなわちバッテリ・レギュレータ等)
と冷却システム(すなわちファン)を監視してこれらの
適切な動作を保証することが可能になる。PCIMサポ
ート・エレメント1030は、バッテリの電圧が許容で
きない程度に低い等のある種の故障または潜在的な故障
の徴候が存在する場合のみ、メツセージを受け取ること
が望ましい。全ての電源および冷却サブシステムを周期
的に監視するために、CP 1Mサポート・エレメント
1030を使用することもまた可能である。または、P
C1Mサポート・エレメント1030は、直接ファイヤ
ウオール1000と1010に接続されてもよい。
診断マイクロプロセッサ1100が、またI10モジュ
ール・バス1020に接続される。−殻内に、診断マイ
クロプロセッサ1100は、故障が検出された場合、ト
レースRAM1872のようなトレースRAMからエラ
ー・チエツク情報を集めるために使用される。このデー
タは、それぞれファイヤウオール1000と1010を
介してトレース・バス1095と1096に集められる
+13 と共にモジュール・バス1020を介してマイクロプロ
セッサ1100に集められる。
D、インタープロセッサとインターモジュールの通信 1、 データ経路 コンピュータ・システム10の構成要素は、それら自身
によって故障許容システムを構成するものではない。正
常な動作の期間中および故障の検出と修正の動作の期間
中に通信を可能にする通信経路とプロトコールが必要で
ある。このような通信号に対するキーは、クロスリンク
経路25である。クロスリンク経路25は、並列リンク
、直列リンク、および既に説明したクロック信号によっ
て構成される0、これらは19図に示される。並列リン
クは、2絹の同じデータおよびアドレス線、制御線、割
り込み線、符号化エラー線、および1本のソフト・リセ
ット・リクエスト線を有する。
データおよびアドレス線と制御線は、モジュール相互接
続部130と132(または130′と132’ )ま
たはメモリ・モジュール60(60’14 からCPUモジュールの間で交換される情報を有してい
る。
割り込み線は、I10サブシステム(モジュール100
.110.120.100′、11O′および+20’
)で使用可能な割り込み水準の各々に対し1本の線を有
することが望ましい。これらの線はクロスリンク90.
95.90′、および95′によって共有される。
符号化エラー線は、両方のゾーンに対するコンソールr
HALTJ要求を同期させる複数のコートを有すること
が望ましく、これらの複数のコードの1つは両方のゾー
ンに対してCPUエラーを同期させるコード、1つは他
方のゾーンに対してCPU/メモリの故障の発生を示す
コード、1つは両方のゾーンに対してDMAエラーを同
期させるコード、および1つはクロック位相エラーを示
すコードである。各ゾーン11または11’からのエラ
ー線は、ゾーン11に対するORゲート1990または
ゾーン11′に対するORゲート1990’のようなO
Rゲートに対する人力であ■ ■ る。各ORゲート2の出力によって、他方のゾーンのク
ロスリンクに対する入力が与えられる。
欠陥許容処理システム10は、過渡的な故障に関係なく
デュアル・レール・システムとして動作を継続するよう
に設計されている。I10サブシステム(モジュール+
00.110、+20.100′、+10’、I 20
’ )は、また過渡的なエラーまたは故障を経験しても
動作を継続することができる。好適な実施例の場合、フ
ァイヤウオール比較回路1840の検出したエラーによ
って、同期化されたエラー・レボ−1・がCPUの管理
する動作に関して経路25を介して行われる。
CPU30と30′のハードウェアは経路25を介して
同期化されたソフト・リセットを行い、故障のある動作
をもう一度行う。DMAの管理する動作の場合、同じエ
ラーの検出によって、同期割り込みが経路235を介し
て行われ、CPU40.50.40′、および50′の
ソフトウェアはDMAの動作を再び開始する。
ある種の過渡的なエラーは、動作を完全デュブレックス
の同期形態で継続するように直ちに修復されるものでは
ない、例えば、メモリ・モジュール60に制御エラーが
発生すると、その結果メモリ・モジュール60に未知の
データが生じる。この場合、CPUとメモリ・エレメン
トは最早フェール・セーフ・システムの一部として信頼
性のある機能は果たすことはできず、従ってこれらを取
り外さなければならない。メモリ・アレー60はそこで
、CPUとメモリ・エレメントが再びメモリに取り付け
られる前に、メモリの再同期を行わなければならない。
経路25の符号化エラー線のCPUメモリ故障コードは
、CPU30のCPUとメモリ・エレメントが故障して
いることをCPO30′に知らせる。
サイクル・タイプ、エラー・タイプおよび準備完了状態
の組み合わせを示す制御線によって、CPUモジュール
(30および30′)とI10モジュールとの間にハン
ドシェーキングが行われる。上で説明したように、実行
されているバス動作のタイプがサイクル・タイプによっ
て決められ17 る。すなわち、これらは、CPU  Iloの読み出し
、DMAの転送、DMAのセットアツプまたは割り込み
ベクトルの要求である。エラー・タイプによってファイ
ヤウオールの比較ミスまたはCRCのエラーが決められ
る。「準備完了」のメツセージはCPUとI10モジュ
ールとの間に送られて要求された動作の完了を示す。
シリアル・クロスリンクは状態読み出しのためのシリア
ル・データの転送、ループバック、およびデータの転送
を行うために2本の線を2組有している。
交換されるクロック信号は、位相ロック・クロック信号
CLKCHとCLCK’  H(遅延した)。である。
第20A図乃至第20D図は、異なった動作期間中にデ
ータが通過するCPUモジュール30および30′とI
10モジュール100および100′の構成要素のブロ
ックを示す。これらの構成要素の各々は前に説明したも
のである□。
第20A図は、共有のメモリ制御装置105018 (1050’ )からのレジスタ・データのCPUのI
10レジスタによる読み出し動作のようなI10モジュ
ール100からのデータの一般的なCPU  Iloに
よるデータ読み出し動作のためのデータ経路を示す。こ
のような動作はローカル・データの読み出しと呼び、こ
れをローカル・メモリ1060からのDMAによるデー
タの読み出しと区別し、このローカル・メモリ1060
は通常内部装置の制御装置からのデータを有している。
ローカル・データは共有のメモリ制御装置1050(1
050’)を介して転送されるようにローカルRAM1
060 (1060’)に記憶されているものと仮定す
る。経路が1つの場合、データはファイアウオール10
00、モジュール相互接続部130を介してクロスリン
ク90に流れる。第12図から分かるように、クロスリ
ンク90はファイアウオール 1000からメモリ制御
装置90に流れるデータを遅延させ、その結果、クロス
リンク90′に対するデータは、データがメモリ制御装
置70に加えられるのと同時に、このメモリ制御装置7
0に加えられ、従って、処理システム20と20′が同
期状態のままであることが可能になる。このデータは、
次に内部バス46と40′によってメモリ制御装置70
および70′からCPU40および40′に進む。
同じ経路を使用してCPU50と50′にデータを読み
込む。共有のメモリ制御装置1050からのデータはフ
ァイヤウオール+010を介してクロスリンク95に進
む。この時、データはクロスリンク95′と遅延装置を
介してクロスリンク95の内部の両方に流れる。
CPtJIO読み出し動作は、また共有のメモリ制御装
置1050’とI10装置100′のローカルRAMを
介して処理システム20′のI10処置から受け取られ
たデータに対してもまた実行されることができる。
I10モジュール100、+10、および120は同じ
ものであり、それぞれI10モジュール100′、11
0’   120’に対応するが、対応するI10モジ
ュールはロックステップ同期状 20 態にはない。CPU  +10読み出しのためメモリ制
御装置1,050’とローカルRAM1060’行う使
用して、データは先ずクロスリンク90′と95′に進
む。残りのデータ経路はメモリ制御装置1050からの
経路と同しである。データはクロスリンク90′と95
′からメモリ制御装置70′と75′を経由して最終的
にそれぞれCPU40′と50′に進む。同時に、デー
タはそれぞれクロスリンク90と95を横切って進み、
次に遅延エレメントを経由しないでそれぞれCPU40
と50に進み続ける。
第20B図は、ローカル・データのCPU  110書
き込み動作を示す。このようなローカル・データはCP
U40.50.40′および50′からI10モジュー
ル100のようなI10モジュールに転送される。この
ような動作の1つの例は、共有のメモリ制御装置105
0におけるレジスタAに対する書き込みである。CPU
40によって転送されるデータは同じ経路に沿って進む
が、その方向はCPU  Iloの読み出し期間中のデ
+21 −タの方向と逆の方向である。特に、このようなデータ
はパス46、メモリ制御装置70、種々のラッチ(同期
を行うため)、ファイヤウオール】000、およびメモ
リ制御装置1050を通過する。CPU50’からのデ
ータは、またCPU110の読み出しの経路を逆の方向
に流れる。特に、このようなデータは、バス56′、メ
モリ制御装置75′クロスリンク95′クロスリンク9
5を経由しくファイヤウオール1010に行く。
上で述べたように、ファイヤウオール1000と101
0はIloの書き込み動作の期間中にデータをチエツク
して記憶する前にエラーを調べる。
書き込みが他方のゾーンのI10モジュールに対して行
われる場合、同し動作が行われる。しかし、CPU50
と40′からのデータがCPU50′と40からのデー
タの代わりに使用される。
CPU50と40′からのデータは対称の経路を介して
共有のメモリ制御装置1050’に転送される。CPU
50と40′からのデータはファイヤウオール1000
’と1010’によって比 22 較される。+10書き込みデータに対してサービスを行
うために異なったCPUの対が使用される理由は、完全
デュプレックス・システムで正常に使用している期間中
に全てのデータ経路をチエツクするためである。各ゾー
ンに対するインターレール・チエツクはメモリ制御装置
70.75.70′および75′で前に実行された。
第20C図は、DMA読取り動作に対するデータ経路を
示す。メモリ・アレイ600からのデータは、同時にメ
モリ制御装置70と75に入り、次いでクロスリンク9
0と95に入る。クロスリンク90はファイヤウオール
1000に転送されたデータを遅延させ、その結果、ク
ロスリンク90と95′からのデータは実質的に同じ時
間にファイヤウオール1000と1010に到着する。
CPU  +10書き込み動作と同様に、種々のクロス
リンクに対するデータの4つのデータ/コピーが存在す
る。ファイヤウオールでは2つのコピーのみが受け取ら
れる。ゾーン11に対する読み出しを実行する場合には
、異なった対のデータ 23 が使用される。DMAの書き込み動作に対するデータ経
路は第20D図に示され、これらはCPU110の読み
出しに対するデータと同じである。
特に、共有のメモリ制御装置1050′からのデータは
、ファイアウオール1000’、クロスリンク90′ 
(遅延を伴う)、メモリ制御装置70′を経由してメモ
リ・アレイ600′に進む。同時に、このデータは、フ
ァイヤウオールl OI O’ツクスリンク95′ (
遅延を伴う)およびメモリ制御装置75′を通過し、こ
の時これはインターレール・エラー・チエツクの期間中
にメモリ制御装置70′からのデータと比較される。C
PUl10の読み出しの場合のように、DMA書き込み
動作中のデータは、共有のメモリ制御装置1050を介
して交互に同じ動作に入ってもよい。
クロスリンク90′からのデータは、またクロスリンク
90とメモリ制御装置70を通過してメモリ・アレイ6
00に行く。クロスリンク95′からのデータは、クロ
スリンク95とメモリ制御装置75を通過し、この時こ
れは同時に行われる+24 インターレール・チエツクの期間中にメモリ制御装置7
0′からのデータと比較される。
第20E図は、メモリ再同期(resync)動作のた
めのデータ経路を示す。この動作の場合、メモリ・アレ
イ60と60′の両方の内容は、相互に同じように設定
されなければならない。メモリの再同期の場合、メモリ
・アレイ600′からのブタは、DMAに制御されてメ
モリ制御装置70′と75′を通過し、次にそれぞれク
ロスリンク90′と95′を通過する。このデータは、
次にメモリ600アレイに記憶される前に、それぞれメ
モリ制御装置70と75に入る。
2、 リセット システムIOに関する上記の議論は、リセットに関する
多くの異なった必要性を考慮して行われた。議論しなか
ったある種の場合には、リセットは、電源が最初にシス
テムlOに印加される場合等の標準的な機能のために行
われる。多(のシステムは1つのリセットを有し、この
リセットは常にプロセッサをある所定の状態または最初
の状態 25 にセットし、従ってプロセッサの命令の流れを中断する
。しかし、大部分の他のシステムと異なって、システム
10のリセットは、もし絶対的に必要でなければ、CP
U40.40′、50および50′による命令の実行の
流れに影響を及ぼさない。更に、システムlOのリセッ
トは、正常な動作を回復するためにリセットされる必要
のある部分のみに影響を及ぼす。
システム10のリセットの他の特徴は、これらのリセッ
トの抑制である。故障許容システムの最も重要な考慮す
べき事項の1つは、もしある機能が故障しても、その機
能はシステムの動作を停止してはならないことである。
この理由のため、システムのいかなる1つのリセットも
、ゾーン11と11′が直接に協力しないなら、ゾーン
11と11’の両方の構成要素を制御することはできな
い。従って、完全デュプレックス・モードで動作してい
るの場合、ゾーン11内の全てのリセットはゾーン11
’内のリセットとは独立している。
しかし、システム10がマスター/スレーブ・モ+26 −ドにある場合、スレーブゾーンはマスターゾーンのリ
セットを使用する。更に、システムlO内のいかなるリ
セットもメモリ・チップの内容に影響を及ぼさない。従
って、キャッシュ・メモリ42及び52、スクラッチ・
パッド・メモリ45および55またはメモリ・モジュー
ル60のいずれもリセットによっていかなるデータも失
うことはない。
システム12は3つのクラスのリセット、すなわち、 
「クロック・リセット」 「ノ\−ド・リセット」、お
よび「ソフト・リセット」があることが望ましい。クロ
ック・リセットはゾーン内の全てのクロック位相発生器
を再編成する。ゾーン11内のクロック・リッセトはま
たCPU40と50、およびメモリ・モジュール60を
イニシアライズする。クロック・リセットは、これらの
モジュールのクロック位相発生器を再編成する以外にモ
ジュール相互接続部130と132に影響を及ぼさない
。システムIOがマスター/スレーブモードにある場合
でさえ、スレーブ・ゾーンでクロック 27 ・リセットを行っても、これはマスターゾーンのモジュ
ール相互接続部からスレーブ・ゾーンのモジュール相互
接続部に対するデータの転送を妨げない。しかし、ゾー
ン11′でクロック・リセットを行うと、ゾーン11′
内の対応する構成要素がイニシアライズされる。
一般的に、ハード・リセットを行うと、全ての状態デバ
イスとレジスタはある所定の状態または最初の状態に戻
る。ソフト・リセットを行うと、状態エンジンと一時的
に記憶を行うレジスタのみがそれらの所定の状態または
最初の状態に戻るだけである。1つのモジュール内の状
態エンジンはそのモジュールの状態を決める回路である
。エラー情報と構成データを有するレジスタはソフト・
リセットによって影響を与えられない。更に、システム
IOは、処理を継続するために、再びイニシアライズさ
れる必要のある構成要素のみをリセットするために同時
にハード・リセットとソフト・リセットの両方を選択的
に行う。
ハード・リセットはシステムIOをクリアし、28 従来のシステムと同様に、システム10を既知の構成に
戻す。ハード・リセットは、ゾーンが同期されるべき場
合またはI10モジュールをイニシアライズまたは不能
にするべき場合に、電源を印加した後、使用される。シ
ステム10の場合、4つのハード・リセット、すなわち
、「パワーアップ・リセット」、 rCPUハード・リ
セット」、「モジュール・リセット」、及び「デバイス
・リセット」があることが望ましい。ハード・リセット
は更にローカル・ハード・リセットとシステム・ハード
・リセットに分けることができる。ローカル・ハード・
リセットは、CPUがスレーブ・モードにある場合に応
答するロジックのみにに影響を及ぼす。システム・ハー
ド・リセットは、クロスリンク・ケーブル25とモジュ
ール相互接続部130及び132に接続されているロジ
ックのみに限定される。
パワーアップ・リセットは、電源が印加された直後に、
ゾーン11と11′をイニシアライズするために使用さ
れる。パワーアップ・リセットに29 よって、ゾーンの全ての部分に対して強制的にリセット
が行われる。パワーアップ・リセットはシステム11の
ゾーンの間では決して接続されないが、その理由は、各
ゾーンがそれ白身の電源を有し、従って異なった長さの
「電源投入」イベントを経験するからである。パワーア
ップ・リセットは全てのハード・リセットとクロック・
リセットをゾーン11または11’に行うことによって
実行される。
CPUハード・リセットは、CPUモジュールを既知の
状態に戻すため診断目的に使用される。
CPUハート・リセットは影響の与えられたゾーン内に
あるCPU、メモリ制御装置、およびメモリ・モジュー
ル、状態レジスタの全ての情報をクリアする。キャッシ
ュ・メモリとメモリ・モジュールは不能にされるが、ス
クラッチ・パッドRAM45および55の内容とメモリ
・モジュール60の内容は変化されない。更に、パワー
アップ・リセットと違って、CPUハート・リセットは
クロスリンクのゾーン識別またはクロック・マスター+
30 シップを変更しない。CPU/\−ド・リセ・ソトは、
CPUモジュールとクロック・リセットに加えることの
できる全てのローカル・ハード・リセットの合計である
・モジュール・ハード・リセットは、ルートストラッピ
ングの期間中のような既知の状態にI10モジュールを
セットするために使用され、また故障したI10モジュ
ールをシステムから取り外すためにも使用される。I1
0モジュール・ノ\イド・リセットはモジュール上の全
てのものをクリアし、診断モードでファイヤウオールを
離れ、ドライバを不能にする。
デバイス・リセットは、I10モジュールに接続された
I10デバイスをリセットするために使用される。これ
らのリセットは装置に依存し、装置が接続されているI
10モジュールによって与えられる。
他のクラスのリセットはソフト・リセットである。上で
説明したように、ソフト・リセ・ソトは、システム10
内の状態エンジンと一時的レジスタをクリアするが、こ
れらはクロスリンク内のモード・ビットのような構成情
報を変化させない。更に、ソフト・リセットは、またモ
ジュール内のエラー処理機構をクリアするが、これらは
システム・エラー−レジスタ898およびシステム故障
アドルス・レジスタ865のようなエラー・レジスタを
変化させない。
ソフト・リセットには目標が定まっているので、その結
果、システムの必要な部分のみがリセットされる。例え
ば、モジュール相互接続部130がリセットされる必要
があれば、CPU40はリセットされず、またI10モ
ジュール110に接続されている装置もリセットされな
い。
ソフト・リセットには3つのユニークな特徴がある。1
つは各ゾーンがそれ自身のリセットの発生に対して責任
を負っていることである。1つのゾーン内の故障エラー
またはリセット・ロジ・ツクは、従って故障の発生して
いないゾーンでリセ・ソトを行うことを防止される。
第2の特徴は、ソフト・リセットが命令実行の■ 2 シーケンスを乱さないことである。CPU40.40’
  50、および50′はクロックとハード・リセット
の組み合わせのみによってリセットされる。更に、メモ
リ制御装置70.75.70′および75′はハード・
リセットに取り付けたCPU命令にサービスを行うのに
必要なそれらの状態エンジンとレジスタを有している。
従って、ソフト・リセットはソフトウェアの実行にとっ
て透明である。
第3の特徴は、ソフト・リセットの範囲、すなわちソフ
ト・リセットによって影響を与えられるシステム10内
の構成要素の数がシステム10のモードと最初のリセッ
トに対する要求によって決まるということである。完全
デュプレックス・モードの場合、CPUモジュール30
で開始されるソフト・リセットに対する要求によって、
ソフト・リセットがCPUモジュールの全ての構成要素
およびモジュール相互接続部130と132に取り付け
られた全てのファイヤウオール1000と1010に対
して行われる。従って、モジュール+33 相互接続部130と132によってサービスを受ける全
てのモジュールはそれらの状態エンジンと一時的レジス
タのリセットを有している。これによって、過渡的なエ
ラーによって発生される全ての問題のシステム・パイプ
ラインがクリアされる。
システムIOは、デュプレックス・モードにあるので、
ゾーンエビはゾーン11の行っている全ての事柄を行う
。従って、CPUモジュール30′は、CPUモジュー
ル30と同時に、ソフト・リセットに対する要求を出す
。ゾーン+1内のソフト・リセットは、ゾーン+1内の
ソフト・リセットと同じ効果を有している。
しかし、システム10がマスタ/スレーブ・モードにあ
りCPUモジュール30′がスレーブ・モードにある場
合、CPUモジュール30で始まるソフト・リセットに
対する要求は、予期できるように、CPUモジュール3
0の全ての構成要素とモジュール相互接続部130と1
32に取り付けられた全てのファイヤウオール1000
と1010に対してソフト・リセットを出す。更に、ソ
フト34 ・リセットに対する要求は、クロスリンク90と90′
、クロスリンク・ケーブル25およびクロスリンク90
′と95′を介してCPUモジュール30′に出される
。一部のモジュール相互接続部130と132はソフト
・リセットを受け取る。
この同じ構成の場合、CPUモジュール30′から開始
されるソフト・リセットに対する要求は、メモリ制御装
置70′と75′およびクロスリンク90′と95′に
一部のみリセットする。
ソフト・リセットは、rCPUソフト・リセット」と「
システム・ソフト・リセット」を有する。
CPUソフト・リセットは、要求を最初に出したCPU
モジュールの状態エンジンに影響を及ぼすソフト・リセ
ットである。システム・ソフト・リセットは、モジュー
ル相互接続部とこれに直接取付けられた構成要素に対す
るソフト・リセットである。CPUモジュールは、常に
CPUソフト・リセットを要求することができる。シス
テム・ソフト・リセットは、CPUを要求するクロスリ
ンクがデュプレックス・モード・マスター/スレー5 ブ・モード、またはオフ・モードにある場合にのみ、要
求することがてきる。スレーブ・モードにあるクロスリ
ンクは、他方のゾーンからシステム・ソフト・リセット
を与えられ、それ自身のモジュール相互接続部に対して
システム・ソフト・シセットを発生する。
CPUソフト・リセットは、エラーの状態に続いていて
CPUのパイプラインをクリアする。
CPUパイプラインは、メモリ相互接続部80と82、
メモリ制御装置75および75内のラッチ(図示せず)
、DMAエンジン800およびクロスリンク90と95
を有する。CPUソフト・リセットは、またDMAまた
はIloのタイムアウトに続いて発生することもできる
。DMAまたはIloのタイムアウトは、I10デノ\
イスが特定の時間間隔内にDMAまたはIloの要求に
対して応答しない場合に発生する。
第21図は、CPUモジュール30および300′から
I10モジュール100.110.100′および11
0′とメモリ・モジュール60および6 60′に対するリセット線を示す。CPUモジュール3
0は、何時電源が印加されたかを示すDCOK信号を受
け取る。リセットをイニシアライズするのはこの信号で
ある。CPUモジュール30′は、その電源から同じ信
号を受取る。
1つのシステム・ハード・リセット線は、各I10モジ
ュールに送られ、1つのシステム・ソフト・リセットは
3つのI10モジュールの全てに送られる。1つのハー
ド・リセットが各モジュールに対して必要である理由は
、システム・ハード・リセット線がシステムIOから個
々のI10モジュールを取除くのに使用されるからであ
る。各システム・ソフト・リセットに対してI10モジ
ュールを3つに制限しているのは、単にローデングを考
慮しているからにに過ぎない。更に、1つのクロック・
リセット線が全てのI10モジュールとメモリ・モジュ
ールに送られる。1つのモジュールについて1つの線を
使用する理由は、負荷を制御することによってスキュー
を制限するためである。
37 第22図は、リセットに関連するCPUモジュール30
の構成要素を示す。CPU40と50は、それぞれクロ
ック発生装置221Oと2211を有している。メモリ
制御装置70と75は、それぞれクロック発生装置22
20と2221を有し、クロスリンク90と95は、そ
れぞれクロック発生装置2260と2261を有する。
クロック発生装置は、システム・クロック信号を個々の
モジュールによって使用するために分割する。
メモリ制御装置70は、リセット制御回路2230とソ
フト・リセット要求レジスタ2235を有する。メモリ
制御装置75は、リセット制御回路2231とソフト・
リセット要求レジスタ2236を有する。
クロスリンク90は、ローカル・リセット発生装置22
40とシステム・リセット発生装置2250の両方を有
している。クロスリンク95は、ローカル・リセット発
生装置2241とシステム・リセット発生装置2251
を有している。クロスリンクの「ローカル」部分は、こ
のクロスリンクが+38 スレーブ・モードにある場合に、CPUモジュールと共
に残っているこのクロスリンクの部分であり、従って、
シリアル・レジスタ、および幾つかのパラレル・レジス
タを有している。クロスリンクの「システム」部分は、
モジュール相互接続部130と132(または130′
と132”)とクロスリンク・ケーブル25にアクセス
するために必要であるクロスリンクのその部分である。
ローカル・リセット発生装置3340と2241は、そ
れぞれクロスリンク90と95のローカル・リセット制
御回路2245と2246にハードおよびソフト・リセ
ット信号を送ると共に、それぞれメモリ制御装置70と
75のリセット制御回路2230と2231にハードお
よびソフト・リセット信号を送ることによって、CPU
モジュール30に対してリセットを発生する。ローカル
・クロスリンク・リセット制御回路2245と2246
は、それらの状態エンジン、転送するべきデータを記憶
しているラッチおよびそれらのエラー・レジスタをリセ
ットすることによって、ソフト・リセッ 39 ト信号に応答する。これらの回路は、ソフト・リセット
に対して行うのと同じ動作を行い、またエラー・レジス
タと構成レジスタをリセットすることによって、ハード
・リセット信号に応答する。
リセット制御回路2230と2231は、同じ方法でハ
ードおよびソフト・リセット信号に応答する。
更に、ローカル・リセット発生装置2240は、モジュ
ール相互接続部130と132を介して、I10モジュ
ール100.110および120にクロック・リセット
信号を送る。I10モジュール100,110および1
20は、以下で述べる方法でそれらのクロックをリセッ
トするため、クロック・リセット信号を使用する。ソフ
ト・リセット要求レジスタ2235と2236は、それ
ぞれローカル・リセット発生装置2240と2241に
ソフト要求信号を送る。
クロスリンク90と95のシステム、リセット発生装置
2450と2251は、それぞれモジュール相互接続部
130と132を介してI10モジュール100.11
0、および120にそれぞれシステム・ハード・リセッ
ト信号とシステム・ソフト・リセット信号に送る。I1
0モジュール100.110、および120は、CPU
データまたは命令に依存する全てのレジスタをリセット
することによってソフト・リセット信号に応答する。こ
れらのモジュールは、ソフト・リセットが行なうのと同
じレジスタをリセットし、また全ての構成レジスタをリ
セットすることによって、ハード・リセット信号に応答
する。
更に、システム・リセット発生装置2250と2251
は、またシステム・ソフトおよびシステム・ハード・リ
セット信号を各クロスリンクのシステム・リセット制御
回路2255と2256に送る。システム・リセット制
御回路2255と2256は、ローカル・ソフトおよび
ローカル・ハード・リセット信号に対するローカル・リ
セット制御回路の応答と同じ方法でシステム・ソフト・
リセット信号とシステム・ハード・リセット信号に応答
する。
41 メモリ制御装置70と75は、CPU40と50がそれ
ぞれ適当なコードをソフト・リセット要求レジスタ22
35と2236にそれぞれ書込み場合に、クロスリンク
90と95にそれぞれソフト・リセットを発生させる。
ソフト・リセット要求レジスタ2235と2236は、
ソフト・リセット要求信号をローカル・リセット発生装
置2240と2241に送る。符号化エラー信号は、メ
モリ制御装置70からローカル・リセット発生装置22
40と2241に送られる。
システム・ソフト・リセットは、データと制御信号が送
られるのと同じデータ経路に沿ってゾーンの間に送られ
る。従って、データとアドレスに対するのと同じ遅延を
等しくする原理が使用され、リセットはほぼ同時に2つ
のゾーンの全ての構成要素に到達する。
ハード・リセットは、適当なコードをローカル・ハード
・リセット・レジスタ2243に書込むCPU40と5
0またはDCOK倍信号よって発生されるパワーアップ
・リセットに対する要求 42 によって発生される。
クロスリンク90の同期回路2270は、DCOK信号
が同時にローカルおよびリセット発生装置2240.2
250.2241および2251の全てに行き渡ること
を保証するため、適当な遅延要素を有している。
事実、リセットの同期は、システム10では非常に重要
である。これは、リセット信号がクロスリンクで始まる
からである。このようにして、リセットはほぼ同期して
異なったモジュールとこれらのモジュール内の異なった
要素に到達するように送られることができる。
第21図と第22図の構造を理解することによって、異
なったハード・リセットの実行をよりよく理解すること
かできる。パワーアップ・+/セットはシステム・ハー
ド・リセットとローカル・ハード・リセットおよびクロ
ック・リセットの両方を発生する。−殻内に、クロスリ
ンク90.95.90′および95′は最初はクロスリ
ンク・オフモードと再同期オフ・モードの両方の状態に
あり、3 両方のゾーンはクロック・マスターシップを表明する。
CPU/MEM故障リセットは、メモリ制御装置70.
75.70′および75′がCPM/MEMの故障を検
出する時は何時でも自動的に動作される。符号化エラー
・ロジックはエラー・ロジック2237と2238から
両方のクロスリンク90と95に送られる。故障が発生
したCPUモジュールは、そのクロスリンクをスレーブ
状態にセットし、他方のCPUモジュールのクロスリン
クをマスター状態にセットすることによって、システム
10から取り除かれる。しかし、故障が発生していない
CPUモジュールは、リセットを経験しない。その代わ
り、これはシリアル・クロスリンク・エラー・レジスタ
(図示せず)内のコートを介して、他方のモジュールの
故障を知らされる。CPU/MEM故障リセットは、故
障したCPUモジュールを有するゾーンに対するクロッ
ク信号とそのモジュールに対するローカル・ソフト・リ
セットによって構成される。
4 再同期リセットは、基本的にはローカル・ハード・リセ
ットとクロック・リセットを有するシステム・ソフト・
リセットである。この再同期リセットは、2つのゾーン
をロックステップ同期の状態にするために使用される。
ゾーン11と11’が同期されていなかった一定の期間
の後、もしCPUレジスタの記憶された状態を含むメモ
リ・モジュール60と60′の内容が相互に等しくセッ
トされれば、これらのゾーンがデュプレックス・モード
を再び開始することができるように、再同期リセットが
使用されてこれらのツゾーンを互換性のある構成にする
再同期リセットは、基本的にはCPUハード・リセット
とクロック・リセットである。再同期リセットは、再同
期・リセット・アドレスを並列クロスリンク・レジスタ
の1つに書込むソフトウェアによって動作される。この
時、一方のゾーンは、クロスリンク・マスター/再同期
マスター−モードでなければならず、他方のゾーンは、
クロスリンク・スレーブ/再同期スレーブ・モードでな
け 45 ればならい。そこでリセットが両方のゾーンで同時に行
われ、これは、とりわけ4つのクロスリンク全てをデュ
プレックス・モードにセットする。
再同期リセットは、システム・ソフト・リセットではな
いため、I10モジュールはリセットを受取らない。
システムIOの好適な実施例は、またクロック・リセッ
ト信号がコンフォーミング(conforming)ク
ロックをリセットせず、非コンフォーミング・クロック
のみをリセットすることを保証する。この理由は、クロ
ックがリセットされる場合はいつでも、これはクロック
のタイミングを変更し、このタイミングはこんどはこの
ようなりロックでモジュールの動作に影響を及ぼすから
である。もしモジュールが正しく実行され、このクロッ
クが正しい位相であれば、その動作を変更することは不
必要であるばかりでなく無駄なことである。
第23図は、ノンコンフォーミング・クロックのみがリ
セットされることを保証する回路の好適な実施例である
。第23図に示す回路は、第22+46 図に示す対応するモジュールのクロ・ツク発生装置22
10.2211.2220.2221゜2260、およ
び2261内に位置することが望ましい。
好適な実施例の場合、異なったクロック発生装置221
O12211,2220,2221,2260、および
2261は立上がり区間検出器2300、と位相発生装
置231Oを有している。
立上がり区間検出器2300は、クロスリンク90と9
5からクロック・リセット信号を受取り、クロック・リ
セット信号の立上がり区間と同時に既知の持続期間を有
するパルスを発生する。このパルスは、特定のモジュー
ルに対する内部クロ・ツク信号と同様に位相発生装置2
31Oに対する人力である。そのモジュールに対する内
部クロック信号は、発振器システム200と200′か
ら分配されたシステム・クロック信号から取出されたク
ロック信号である。位相発生装置231Oは、クロック
信号に対する異なった位相を形成する下方分割回路であ
ることが望ましい。再循環シフト・レジスタのような位
相発生装置231Oに対する別の設計をまた使用するこ
ともできる。
立上がり区間検出器2300からの立上がり区間パルス
によって、位相発生装置231Oは予め選択された位相
を出力することが望ましい。従って、例えばもし位相発
生装置231Oが幾つかのステージを有する下方分割回
路であれば、クロック・リセットの立」二かり区間パル
スは、そのステージに対して設定された人力であり、こ
のステージは全ての他のステージに対して予め選択され
た位相とリセット人力を発生する。もし位相発生装置2
31Oが既にこの位相を発生していれば、同期化クロッ
ク・リセット信号の存在は基本的に透明である。
このようにして組織されたリセットは、システム10の
通常の実行に対して混乱を最小限に止めるように設計さ
れ、トラスチックなアクションが必要とされる場合には
、このトラスチックなアクションは命令実行の通常のシ
ーケンスに割込みをかけることに止まる。このことは、
従来のりセラトが引起こす再同期化の問題のためにデュ
アルまたは多重ゾーンの環境では特に重要である。従っ
て、システムIOで行っているようにハード・リセット
の数を最小にすることが望ましい。
E、単一のオペレーティングシステムを保証するブート
ストラッピング 前述したように、処理システム20と20′は一般に、
ロックステップ同期の状態で動作する。
一方または両方の処理システムが動作を停止するという
状況がある。例えば、一方の処理システムが修理技術者
によって、意図的に動作不能とされることがある。別の
例として、両システムのうち所定の一方が、クロスリン
ク路を断絶して自らを動作不能にすることもある。動作
を中止した処理システムが作動状態に戻されるとき、他
方の処理システムがすでに動作している場合、戻される
処理システムはオペレーティングシステムの自身用コピ
ーをブートストラップロードしないことが重要である。
そうすると、2つの処理システムが異なるデータを読み
書きしてしまう。その結果、249 つのシステムはロックアツプステップ同期の状態で動作
不能となる。しかし一方、どちらのオペレーティングシ
ステムも動作していない場合は、2つのゾーンの一方が
ブートストラップロード可能であることが望ましい。
一方のゾーンの処理システムの修理については、一方の
ゾーンの処理システムを外すための適切な指令を技術者
がシステムコンソールを介して入力することによって、
その処理システムが作動状態から取り出されるのが好ま
しい。一方のゾーンの処理システム、例えばシステム2
0′を外すための修理命令が人力されると、他方の処理
システム、この例ではシステム20が、CPUモジュー
ル30ないの対応したCPU40と50にそれぞれ係わ
る2つのEPROM44と54(第3図)に障害停+]
−eットを書き込む。つまり、障害停止ビットは、修理
のためにダウンされない処理システムに書き込まれる。
障害停止ビットの目的は、一方の処理システム20′が
動作不能な間、必要なら残りの処理シス+50 テム20が再ブート可能なことを即座に判定できるよう
にすることにある。これによって、故障停止ビットは、
システムlOの全体的な利用度を高める。また障害停止
ビットは、後述するプリブートストラップローディング
アルゴリズムで、2つの演算ゾーンの各処理システムが
オペレーティングシステムのコピーを別々にブートスト
ラップロードしないことを保証するのにも使われる。
先に動作不能とされた処理システムが動作状態に戻され
るとき、障害停止ビットはメモリの再同期化時にクリア
される。
シリアル制御及び状態レジスタ912(第1O図)のO
8Rビット913も、プリブートストラップローディン
グアルゴリズムで使われる。同ビットが該レジスタ91
2に記憶されているため、各処理システムにおけるその
状態は、両方の処理システムによって読取可能である。
O8Rビット913はブートストラップローディング動
作の一部としてセットされ、画処理システムが問題なく
ロードし動作を続けている限り、セットされたままであ
る。またO8Rビットはいずれかの処理システムの再同
期化時にもセットされ、そのシステムが問題なく再同期
化し動作を続けている限り、セットされたままである。
つまり、平常のロックステップ動作中、O8Rビットは
両方の処理システム20と20′内にセットされている
O8Rビットは、オペレータの命令によって、あるいは
処理システムがある故障のため動作不能となったとき、
処理システム20または20’が動作を停止した結果と
して、その処理システムでリセットされる。プリブート
ストラップアルゴリズムは、第24図に示したフローチ
ャート2400に記されている。フローチャート240
0に含まれたアルゴリズムを実行するプログラムは、処
理システム20と20′内のROM43,53.43’
及び53′ (第3図)に記憶されるのが好ましい。
つまりアルゴリズムは、各処理システムによって別々に
実行されるように記憶される。各ゾーン内の両プロセッ
サは、他方のゾーン内の両プロセッ■ 2 すと独立に、アルゴリズムを実行するのが好ましい。し
かしアルゴリズムは、一方のゾーンだけがブートするの
を保証する。説明を簡単にするため、以下の議論では、
処理システム20がアルゴリズムを実行するものとする
アルゴリズムの実行は、処理システム20へのオペレー
ティングシステムのブートストラップローディングを開
始する指令(コマンド)を受け取ることから始まる(ス
テップ2402)。次に処理システムは、クロスリンク
路25すなわちクロスリンクケーブルが、両ゾーン11
と11’間で接続されているかどうかを判定する。本シ
ステムの好ましい実施においては、各処理システムが状
態チエツクを行い、クロスリンクケーブル25が接続さ
れているかどうか、及び他方のゾーン内の処理システム
に電力を受け取っているかどうかを判定する。
第25図は、クロスリンクケーブルが接続されているか
どうか及び他方のゾーンが電力を受け取っているかどう
かの状態判定を、各処理システム53 20と20′が行うのを可能とする好ましい回路構成を
示す。この状態判定を行うように、クロスリンクケーブ
ルの2つの導体2502及び2504が配分されている
。これらの導体は両端部で、処理システム20のクロス
リンク90及び90′にそれぞれ成端している。
クロスリンク90内では、3状態ライントライバ250
6とレシーバ2508が導体2502の端部に接続され
、それぞれ信号を送受信する。導体2502の論理状態
は、レシーバ2508を介しノードAで読み取られる。
導体2504の論理状態は、ラインレシーバ25】Oを
介しノードBで読み取られる。導体2502はクロスリ
ンク90内でさらに、ダイオード2512を介して電圧
源Vccと、また抵抗2516を介してアース点251
4とに接続されている。クロスリンク90内では、導体
2504も抵抗2518を介して電圧源Vccに接続さ
れている。
導体2502の他端は、クロスリンク90内における導
体2504の成端と同様に、クロスリン54 り90′内で成端されている。つまり、導体2502は
クロスリンク90′内で、ラインレシーバ2510’を
介しノードB′に成端している。また導体2502は、
抵抗2518’を介して電圧源Vcc’に接続されてい
る。導体2502の論理状態はノードB′で読み取られ
る。導体2504はクロスリンク90′内で、クロスリ
ンク90内における導体2502の成端と同様に、クロ
スリンク90′内で成端されている。導体2504の論
理状態は、レシーバ2508’に接続されたノードA′
で読み取られる。クロスリンク90′内でも、導体25
04はダイオード2512’を介して電圧源Vcc’と
、また抵抗2516’を介してアース点2514’とに
接続されている。
ドライバ2506と2506’は、状態判定が行われて
いる以外の時点で、導体2502と2504をそれぞれ
駆動するために設けられている。そのためこれらのドラ
イバは状態判定中、高インピーダンスとなる。供給電圧
VccまたはVcc’は、それに対応したゾーンが電力
を受け取るときだけ存在する。ゾーンが電力を受け取ら
ないとき、対応した電圧源への各接続はアースへの接続
として作用する。例えば、ゾーンlI′が電力を受け取
らなければ、供給電圧Vcc′は論理レベル“0”とな
り、ダイオード2512’と抵抗2518’をアースに
接続する。
以下の真理値表は、クロスリンク90内のノードAとB
で読み取られる導体2502と2504両状態の解釈を
記したものである。同等の解釈が、クロスリンク90′
内のノードA′とB′で読み取られる両状態にも当ては
まる。
0  0     あり     なし0  1   
  なし     不明11       あり   
  ありクロスリンクケーブルが接続されていないと、
導体2502及び2504も接続されていない。
その結果ダイオード25I2は非導通となり、アース点
2514への接続により、ノードAは論理“0”の電圧
レベルを読み取る。一方ノードBでは、抵抗2518を
介した供給電圧Vccのプルアップ効果のため、論理“
l”の電圧レベルが読み取られる。真理値表に示されて
いるように、0.1のA、B状態はクロスリンクケーブ
ル25の断絶(不在)と対応し、もちろん他方のゾーン
に電力が供給されているかどうかについては不明な状態
となる。
クロスリンクケーブルが接続されていれば、導体250
2及び2504も接続されている。そのため、AとBで
読み取られる電圧レベルは、ゾーン11’に電力が供給
されているかどうか、従って供給電圧VCC’が与えら
れているかどうかに依存する。ゾーン11’に電力が供
給されていないと、導体2502がダイオード2512
及び抵抗2516と2518’を相互に接続する。供給
電圧Vccが存在すれば、ダイオード2512は非導通
となる。ゾーン11’が電力を受け取っていないので、
供給電圧Vcc′は論理レベル“0”にあ 57 る。その結果、両抵抗2516及び2516’は論理レ
ベル“0”、すなわちアースに接続されている。従って
、論理レベル“0”がノードAで読み取られる。また導
体2504の接続(存在)は、抵抗2516’と251
8及びダイオード2512’を相互に接続せしめる。V
cc’は論理レベル“0”にあるので、ダイオード25
12’はアースに接続され導通状態にある。その結果、
論理レベル“0”がノードBで読み取られる。
ゾーン11’に電力か供給されていれば、供給電圧Vc
c′が抵抗2518’を介して導体2502に与えられ
ている。従って、ダイオード2512は導通しない。抵
抗2516と2518’は、Vcc′からアースへの電
圧降下が導体2502に論理レベル“l”を生じるよう
に選ばれている。この結果、論理“l”の電圧レベルが
ノードAで読み取られる。さらに、ゾーンエビに電力が
供給されている場合、ダイオード2512’は導通しな
い。
抵抗2516’と2518は、Vccからアースへの電
圧降下が導体2504に論理レベル“l”を 58 生じるように選ばれている。この結果、論理“1”の電
圧レベルがノードBで読み取られる。
前記真理値表に示すように、論理“l”の電圧レベルが
ノードAで読み取られるときは、クロスリンクケーブル
25が接続され、他方のゾーンに電力が供給されている
。この判定は、ノードBでの論理レベルに関係なくなさ
れる。ノードAにおける論理レベルが“0”のときだけ
、ノードBの論理レベルを参照する必要がある。
第24図のフローチャー)24.00を再び参照すれば
、クロスリンクケーブル25が接続されていないと、処
理システム20の各CPU40と50が、それぞれのE
EPROM44または54内の障害停止ビットをチエツ
クする(ステップ2406)。
両方のCPU40と50がセット状態を読み取ったとき
、処理システム20は障害停止ビットがセットされてい
ると判定する。
障害停止ビットがセットされていると判定すると、処理
システム20は制御及び状態レジスタ912にO8Rビ
ット913をセットする(ステ 59 ツブ2408)。次いで、処理システム20はオペレー
ティングシステムのブートストラップローディングを開
始する(ステップ2410)。このようにしたのは、障
害停止ビットがセットされているとき、それは処理シス
テム20′が動作していないこと、従って処理システム
20によるブートストラップローディングの開始が許さ
れるべきことを意味するからである。
障害停止ビットがセットされていないと処理システム2
0が判定すると、処理システム20はブートストラップ
ロード不能と結論し、コンソールモードに入って(ステ
ップ2412)、次の命令を待つ。
ケーブル25が接続されていると処理システム20が判
定すると(ステップ2404)、処理システム20はク
ロスリンクケーブル25を介し、処理システム20′に
電力が供給されているかどうかを判定する(ステップ2
414)。供給されていなければ、処理システム20は
O8Rビットをセットしくステップ2408)、そして
ブート■ 0 ストラップローディングを開始する(ステップ2410
)。この状態では、他方の処理システムが動作していな
いばかりでなく、電力も供給されていないので、ブート
ストラップローディングが許される。従って、オペレー
ティングシステムの2つのコピーを実施するリスクはな
い。
処理システム20′が電力を受け取っていると(ステッ
プ2414)、処理システム20は状態の読取動作によ
って、処理システム20′の制御及び状態レジスタ91
2の内容を読み取ろうとする。読取が不成功の場合、処
理システム20は処理システム20′の動作状態が不明
であると結論し、障害停止ビット状態のチエツクへと進
み(ステップ2406)、該ステップに関連して上述し
た手順を繰り返す。
処理システム20′の制御長q状態レジスタがアクセス
可能であると(ステップ2416L処理システム20は
、処理システム20′にO8Rビットがセットされてい
るかどうかをチエツクする(ステップ2418)。O8
Rビットは通常ブ+61 一トストラップローディング動作の一部としてセットさ
れるため、ステップ2418の実行時まだ処理システム
20にセットできていないことがある。O8Rビットが
処理システム20′にセットされていると処理システム
20が判定すると、処理システム20はオペレーティン
グシステムをブートストラップロードできないと結論し
、処理システム20はコンソールモードに進み、そこで
次の命令を待つ(ステップ2412)。つまり、他方の
ゾーンの処理システムとの同期動作に入るため、一方の
処理システムはメモリの再同期動作を行う機会を待たね
ばならない。
処理システム20′内にO8Rビットがセットされてい
ないと処理システム20が判定すると、処理システム2
0は当業者にとって周知なセマフt (semapho
re)構成を用いて自らのO8Rビットをセットする(
ステップ2420)。この段階では、両方の処理システ
ム20と20′が電力を受けており、クロスリンクケー
ブル25が両ゾーン11と11′間に接続されており、
且つ処理シス62 テム20と20′がクロスリンクケーブルを介して相互
に通信可能であることが判定されているので、O8Rビ
ットがセット可能である。そのため、両方の処理システ
ムがブートストラップロードするのを許されているかど
うか判定しようと試みる可能性がかなりある。従って、
処理システム20は、セマフォ構成を用いてユニークに
O8Rビットをセットする。次いで、PSRビットがセ
ットされている処理システムが、オペレーティングシス
テムのブートストラップロードを開始する(ステップ2
422)。
上記のアルゴリズムは、生じる見込みのある各種異なる
状況に適応する。例えば一つの状況は、両方の処理シス
テム20と20′がロックステップ同期の状態で動作し
ていたときに、いずれか−方の処理システムが動作不能
になると生じる。別の例では、技術者が一方の処理シス
テム、例えば処理システム20を単にオフにすることも
ある。
その結果、障害停止ビットは残りの動作している処理シ
ステム、すなわち処理システム20′にセロ3 ツトされない。さらに、処理システム20′内にO8R
ビットがセットされたままでいる間、処理システム20
内のSORビットはリセットされている。
処理システム20の修理完了後、技術者はオペレーティ
ングシステムのブートストラップローディングの開始を
、処理システム20に指示する。
フローチャート2400に示されたアルゴリズムの実行
に移ると、ゾーン11の処理システム20はまずクロス
リンクケーブル25が接続されていることを見いだしく
ステップ2404)、ステップ2414に進んで、ゾー
ン11′の処理システム20′に電力が供給されている
かどうかを判定する。その結果処理システム20はステ
ップ2416に進み、そこで処理システム20′の制御
及びレジスタ912がアクセス可能であるかどうかを見
る。システム20′のレジスタ912がアクセス可能で
あれば、処理システム20はステップ2418に進み、
そこで処理システム20′にO8Rビットがセットされ
ているのを見いだす。そのため、 64 処理システムは指示通りオペレーティングシステムをブ
ートストラップできないと結論して、コンソールモード
に進む(ステップ2412)。処理システム20′のレ
ジスタ912がアクセス可能でないと、処理システム2
0はステップ2406に進み、そこでその障害停止ビッ
トはセットされていないと判定する。従って、処理シス
テム20はコンソールモードに進む(ステップ2412
)。
別の状況においては、両方の処理システム20と20′
がロックステップ同期の状態で動作している間に、クロ
スリンクケーブル25が断絶される。その結果、画処理
システムのうち所定の一方、例えば処理システム20′
が作動から外れる。その後クロスリンクケーブルが再び
接続され、ブートストラップロードの指令が処理システ
ム20′に与えられる。ここで第24図のフローチャー
ト2400を参照すると、ゾーンII’の処理システム
20′はクロスリンクケーブル25が接続されているこ
とを判定しくステップ2404)、さらにゾーン11に
電力が供給されていることを判65 定する(ステップ2414)。次いで処理システム20
′は、処理システム20の制御及び状態レジスタ912
へアクセスしようとする(ステップ2416)。処理シ
ステム20がレジスタ912に情報を戻していれば、処
理システム20′はO8Rビットが処理システム20に
セットされているかどうかを判定する(ステップ241
8)。今の場合、処理システム20か動作しているので
、O8Rビットはセットされている。そのため処理シス
テム20′は、オペレーティングシステムのコピーをブ
ートストラップロードできないと結論して、コンソール
モードに進む(ステップ2412)。
処理システム20がレジスタ912に含まれる情報を戻
していないと、処理システム20′は処理システム20
の障害停止ビットがセットされていないと判定する(ス
テップ2406)。従って、処理システム20′はコン
ソールモードに進む(ステップ2412)。このように
前記アルゴリズムは、処理システム20′によるブート
ストラップローディングが行われると、オペレーティン
 66 グシステムの2つ別々のコピーが2つの処理システム2
0と20′によってそれぞれ実行されるため、それを避
けて正しい結果を保証する。つまりそれこそ、フローチ
ャート2400のアルゴリズムの動作が明らかに回避し
ようとしている状況である。
■、結論 以」二好ましい実施例によって示したように本発明は、
故障許容システムの2つの演算ゾーンがオペレーティン
グシステムの単一コピーに基づいて動作することを保証
するなど、顕著な利点を達成するものである。本発明の
方法及び装置において変更及び変形が可能なことは、当
業者にとって明かであろう。そのため、本発明は広義の
観点において、図示及び説明した個々の詳細、代表的な
方法及び装置、並びに例示の実施例に制限されない。
従って、全体的な発明概念の精神または範囲から逸脱す
ることなく、個々の詳細に変更を施すことができる。
■ 7
【図面の簡単な説明】
第1図は、本発明を実施する故障許容コンピュータ・シ
ステムの好適な実施例のブロック図である。 第2図は、第1図の故障許容コンピュータ・システムを
有する物理的ハードウェアを示す。 第3図は、第1図の故障許容コンピュータ・システムに
示すCPUモジュールのブロック図である。 第4図は、第1図に示すコンピュータ・システムの相互
に接続されたCPUモジュールとI10モジュールのブ
ロック図を示す。 第5図は、第1図に示す故障許容コンピュータ・システ
ムのメモリ・モジュールのブロック図を示す。 第6図は、第5図に示すメモリ・モジュールの制御ロジ
ックの構成要素の詳細図である。 第7図は、第3図に示すCPUモジュールのプライマリ
・メモリ制御装置の部分ブロック図を示す。  68 第8図は、第3図のCPUモジュールのプライマリ・メ
モリ制御装置のDMAエンジンのらブロック図である。 第9図は、第3図のCPUモジュールのプライマリ・メ
モリ制御装置のエラー処理回路図である。 第1O図は、第3図に示すCPUモジュールのクロスリ
ンクの幾つかのレジスタの図である。 第11図は、第3図に示すCPUモジュールのクロスリ
ンクに制御信号を流す構成要素のブロック図である。 第12図は、第3図に示すCPUモジュールのプライマ
リ・クロスリンクにデータとアドレス信号を流す構成要
素のブロック図である。 第13図は、第3図に示すCPUモジュールのクロスリ
ンクの状態を示す状態図である。 第14図は、第1図の故障許容コンピュータ・システム
のタイミング・システムのブロック図である。 第15図は、第14図のタイミング・システムによって
発生されるクロック信号のタイミング図69 である。 第16図は、第14図に示すタイミング・システムの位
相検出器の詳細図である。 第17図は、第1図のコンピュータ・システムのI10
モジュールのブロック図である。 第18図は、第17図に示すI10モジュールのファイ
ヤウオールの構成要素のブロック図である。 第19図は、第1図のコンピュータ・システムのクロス
リンク経路の構成要素の詳細図である。 第20A図ないし第20E図は第1図のコンピュータ・
システムのデータ・フロー図である。 第21図は、リセット信号の流れを示すゾーン20のブ
ロック図である。 第22図は、第3図に示すCPUモジュールのリセット
に含まれる構成要素のブロック図である。 第23図は、クロック・リセット回路の図である。 第24図は、プリブートストラップアルゴリズムのフロ
ーチャートであり、そして +70 第25図は、回路配列を示しており、それによりフォー
ルト許容コンピュータシステムの2つの各々の処理シス
テムは、クロスリニクケーブルの状態を決定することが
できる。 11′1 執 特開平3 182938 (61) 符開平 5 1貨Zソ、:5d(bZ) 特開平3 182938 (67)

Claims (1)

  1. 【特許請求の範囲】 1、第1及び第2の別々の演算ゾーンを有するコンピュ
    ータシステムで、オペレーティングシステムのブートス
    トラップローディングを開始する方法において: 第1及び第2ゾーンの選択された一方がブートストラッ
    プロードするのを許されていること、あるいは第1及び
    第2ゾーンの選択されていない一方がオペレーティング
    システムを実行可能でないことを判定するステップ; 選択されていないゾーンがオペレーティングシステムの
    ブートストラップローディングを開始していないことを
    判定するステップ;及び前記選択されたゾーンがブート
    ストラップロードするのを許されているか、あるいは前
    記選択されていないゾーンがオペレーティングシステム
    を実行可能でなく、しかも前記選択されていないゾーン
    がオペレーティングシステムのブートストラップローデ
    ィングを開始していない場合に、選択されたゾーンへの
    ブートストラップローディングを開始するステップ;を
    含む方法。 2、選択されたゾーンがブートストラップロードするの
    を許されているかどうかを判定する前記ステップが、前
    記選択されたゾーン内の利用可能信号を読み取るステッ
    プを含む請求項1記載の方法。 3、前記第1及び第2ゾーンの他方が作動状態から外さ
    れたとき、前記利用可能信号が意図的に前記第1及び第
    2ゾーンの一方にセットされ;さらに 利用可能信号を読み取る前記ステップが前記利用信号を
    読み取るサブステップを含む請求項2記載の方法。 4、前記両ゾーンがケーブルによって接続されており、
    さらに前記第1及び第2ゾーンの選択された一方がブー
    トストラップロードするのを許されていること、あるい
    は前記第1及び第2ゾーンの選択されていない一方がオ
    ペレーティングシステムを実行可能でないことを判定す
    る前記ステップが: 前記ケーブルが接続されているかどうか、及び前記選択
    されていないゾーンが電力を受け取っていないかどうか
    を示すゾーン信号を読み取るサブステップ; を含む請求項1記載の方法。 5、前記ゾーンの各々が他方のゾーンによってアクセス
    可能な状態レジスタを有し;さらに 選択されたゾーンへのブートストラップローディングが
    開始可能でないと判定する前記ステップが: 選択されたゾーンから選択されていないゾーン内の状態
    レジスタへアクセスし、選択されていないゾーンがオペ
    レーティングシステムのブートストラップローディング
    を開始していることを判定するサブステップ; を含む請求項1記載の方法。 6、ブートストラップローディングを開始すると、ブー
    トストラップローディングが開始されたことを示す第2
    のビットを一方のゾーンの状態レジスタにセットする追
    加のステップを含む請求項4記載の方法。 7、第1及び第2の別々の演算ゾーンを有するコンピュ
    ータシステムにおいて、第1のゾーンにブートストラッ
    プローディングを行う方法で、第1及び第2ゾーンがそ
    れぞれ第2及び第1ゾーンの状態レジスタ内のビットを
    読み取るのを可能とするケーブルによって、第1及び第
    2ゾーンが相互に接続されているものにおいて:前記第
    1ゾーンにブートストラップロードする指令を受け取る
    ステップ; 前記ケーブルが第2ゾーンに接続されているかどうかを
    判定するステップ; 前記ケーブルが第2ゾーンに接続されていなければ、第
    1ゾーンに記憶された第1の状態ビットを読み取るステ
    ップ; 前記第1の状態ビットが第1ゾーンにセットされていな
    ければ、第2の状態ビットを第1ゾーンにセットし、第
    1ゾーンにブートストラップロードさせるステップ; 前記ケーブルが第2ゾーンに接続されていれば、第2ゾ
    ーンに電力が供給されているかどうかを判定するステッ
    プ; 前記第2ゾーンに電力が供給されていなければ、第2の
    状態ビットを第1ゾーンにセットし、第1ゾーンにブー
    トストラップロードさせるステップ; 前記第2ゾーンに電力が供給されていれば、第2ゾーン
    の状態レジスタ内の第2状態ビットの状態を読み取るス
    テップ;及び 前記第2の状態ビットが第2ゾーンにセットされていな
    ければ、セマフォ構成を用いて第2の状態ビットを前記
    第1及び第2ゾーンの一方にセットし、第2の状態ビッ
    トがセットされたゾーンにブートストラップロードさせ
    るステップ;を含む方法。 8、前記第2状態ビットの状態が第2ゾーンの状態レジ
    スタで読み取り不可能であれば、第1ゾーン内の第1状
    態ビットを読み取るステップ;及び 第1状態ビットが第1ゾーンにセットされていれば、第
    2の状態ビットを第1ゾーンにセットし、第1ゾーンに
    ブートストラップロードさせるステップ; を追加として含む請求項7記載の方法。 9、前記第2状態ビットが第2ゾーンにセットされてい
    れば、第1ゾーンがブートストラップロード不可能であ
    ると判定するステップ; を追加として含む請求項7記載の方法。 10、前記第1及び第2ゾーンを再同期化するステップ
    ;及び 前記第1及び第2ゾーンが相互に再同期化するのに成功
    したとき、前記第1及び第2ゾーン内の第1の状態ビッ
    トをクリアするステップ;を追加として含む請求項7記
    載の方法。 11、前記第1の状態ビットを読み取ったとき、第1の
    状態ビットがセットされていなければ、第1ゾーンを非
    動作状態に進めるステップ; を含む請求項7記載の方法。 12、第1のCPUと、第1のゾーンがブートストラッ
    プローディングを開始しているかどうかを示す第1のビ
    ットを記憶する第1の状態レジスタとを含む第1の個別
    演算ゾーン: 第2のCPUと、第2のゾーンがブートストラップロー
    ディングを開始しているかどうかを示す第1のビットを
    記憶する第2の状態レジスタとを含む第2の個別演算ゾ
    ーン; 前記第1及び第2ゾーンがそれぞれ前記第2及び第1ゾ
    ーン内の状態レジスタを読み取り可能とするため、第1
    及び第2のゾーン間に連結されたケーブル;及び 前記第1のCPUにおいて、前記第2ゾーンがブートス
    トラップローディングを開始していることを、前記第2
    の状態レジスタに記憶された第1のビットが示している
    かどうかを判定する手段; を備えたコンピュータシステム。 13、前記第1ゾーンが: 前記第1ゾーンがブートストラップローディングを開始
    可能なことを示す第2のビットを記憶する第1のメモリ
    ;及び 前記ケーブルが前記第2ゾーンに接続されてるかどうか
    を判定する手段;を含み、 前記ケーブルが接続されていず、且つ前記第1ゾーンが
    ブートストラップローディングを開始可能なことを前記
    第2ビットが示していれば、前記第1ゾーンがブートス
    トラップロード可能なことを判定する手段を前記第1の
    CPUが含む請求項12記載のコンピュータシステム。 14、前記ケーブルが第1の導体を備え; 前記ケーブルが前記第1及び第2ゾーン間に接続され、
    且つ前記第2ゾーンが電力を受け取っているときを、前
    記第1ゾーンで判定する手段を前記コンピュータシステ
    ムが含み、該ケーブル接続判定手段が: 前記第1導体の第1ゾーン端とアースとの間に接続され
    た第1の抵抗; 前記第1導体の第2ゾーン端と、前記第2ゾーンが電力
    を受け取っているとき所定の論理レベルにある第1の地
    点との間に接続された第2の抵抗;及び 前記第1の導体の第1ゾーン端において論理電圧を読み
    取る手段; 含む請求項12記載のコンピュータシステム。 15、前記ケーブルが第2の導体を備え; 前記ケーブル接続判定手段が; 前記第1導体の第2ゾーン端と、前記第1ゾーンに電力
    が供給されているとき論理“1”の電圧レベルにある第
    2の地点との間に接続された第1のダイオードで、前記
    第1ゾーンが電力を受けていないとき前記第2の地点は
    アースに接続されること; 前記第2の導体の第2ゾーン端と前記第1の地点との間
    に接続された第2のダイオード;前記第2の導体の第1
    ゾーン端と前記第2の地点との間に接続された第3のダ
    イオード;及前記第2の導体の第2ゾーン端とアースと
    の間に接続された第4のダイオード;を含み、前記ケー
    ブルが第1及び第2ゾーン間に接続されていないとき、
    論理“0”及び“1”の電圧レベルが前記第1及び第2
    導体の第1ゾーン端でそれぞれ読み取られ、さらに前記
    ケーブルが第1及び第2ゾーン間に接続されており且つ
    前記第2ゾーンが電力を受け取っていないとき、論理“
    0”の電圧レベルが前記第1及び第2導体の第1ゾーン
    端でそれぞれ読み取られる;請求項14記載のコンピュ
    ータシステム。
JP2203798A 1989-08-01 1990-07-31 ブートストラップローディングの開始を制御する方法及び装置 Pending JPH03182938A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US388090 1989-08-01
US07/388,090 US5068780A (en) 1989-08-01 1989-08-01 Method and apparatus for controlling initiation of bootstrap loading of an operating system in a computer system having first and second discrete computing zones

Publications (1)

Publication Number Publication Date
JPH03182938A true JPH03182938A (ja) 1991-08-08

Family

ID=23532639

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2203798A Pending JPH03182938A (ja) 1989-08-01 1990-07-31 ブートストラップローディングの開始を制御する方法及び装置

Country Status (4)

Country Link
US (1) US5068780A (ja)
EP (1) EP0415548A3 (ja)
JP (1) JPH03182938A (ja)
CA (1) CA2022259C (ja)

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3275261B2 (ja) * 1990-03-09 2002-04-15 セイコーエプソン株式会社 情報処理装置
EP0489227B1 (en) * 1990-12-06 1998-12-23 Tandberg Data Asa Data storage system having removable media and equipped to download a control program from the removable media
JP2986299B2 (ja) * 1992-04-15 1999-12-06 インターナショナル・ビジネス・マシーンズ・コーポレイション 周辺装置接続検出システム
FR2692696A1 (fr) * 1992-06-19 1993-12-24 Sgs Thomson Microelectronics Procédé pour charger un programme dans une mémoire de programmes associée à un processeur.
US5361358A (en) * 1992-08-07 1994-11-01 International Business Machines Corporation System and method for installing program code for operation from multiple bootable operating systems
US5448716A (en) * 1992-10-30 1995-09-05 International Business Machines Corporation Apparatus and method for booting a multiple processor system having a global/local memory architecture
US5539345A (en) * 1992-12-30 1996-07-23 Digital Equipment Corporation Phase detector apparatus
US5588112A (en) * 1992-12-30 1996-12-24 Digital Equipment Corporation DMA controller for memory scrubbing
JP2812189B2 (ja) * 1994-02-10 1998-10-22 日本電気株式会社 プログラムダウンロード方法
US6381694B1 (en) * 1994-02-18 2002-04-30 Apple Computer, Inc. System for automatic recovery from software problems that cause computer failure
US5652886A (en) * 1994-10-03 1997-07-29 United Technologies Corporation System for loading a boot program into an initially blank programmable memory of a microprocessor using state machine and serial bus
US5568641A (en) * 1995-01-18 1996-10-22 Hewlett-Packard Company Powerfail durable flash EEPROM upgrade
US5754863A (en) * 1995-01-20 1998-05-19 Redcom Laboratories, Inc. System for downloading program code to a microprocessor operative as a slave to a master microprocessor
JP2830857B2 (ja) * 1996-09-09 1998-12-02 三菱電機株式会社 データストレージシステム及びデータストレージ管理方法
US5815571A (en) * 1996-10-28 1998-09-29 Finley; Phillip Scott Computer system with secured data paths and method of protection
US8225003B2 (en) 1996-11-29 2012-07-17 Ellis Iii Frampton E Computers and microchips with a portion protected by an internal hardware firewall
US7634529B2 (en) 1996-11-29 2009-12-15 Ellis Iii Frampton E Personal and server computers having microchips with multiple processing units and internal firewalls
US7926097B2 (en) 1996-11-29 2011-04-12 Ellis Iii Frampton E Computer or microchip protected from the internet by internal hardware
US6725250B1 (en) * 1996-11-29 2004-04-20 Ellis, Iii Frampton E. Global network computers
US8312529B2 (en) 1996-11-29 2012-11-13 Ellis Frampton E Global network computers
US7805756B2 (en) 1996-11-29 2010-09-28 Frampton E Ellis Microchips with inner firewalls, faraday cages, and/or photovoltaic cells
US7506020B2 (en) * 1996-11-29 2009-03-17 Frampton E Ellis Global network computers
US20050180095A1 (en) 1996-11-29 2005-08-18 Ellis Frampton E. Global network computers
US6167428A (en) 1996-11-29 2000-12-26 Ellis; Frampton E. Personal computer microprocessor firewalls for internet distributed processing
US5983371A (en) * 1997-07-11 1999-11-09 Marathon Technologies Corporation Active failure detection
US7096358B2 (en) * 1998-05-07 2006-08-22 Maz Technologies, Inc. Encrypting file system
US6973517B1 (en) 2000-08-31 2005-12-06 Hewlett-Packard Development Company, L.P. Partition formation using microprocessors in a multiprocessor computer system
US6810478B1 (en) 2000-12-12 2004-10-26 International Business Machines Corporation System for remote booting of muntliple operating systems using chained bootstrap mechanism in a network
KR100421953B1 (ko) * 2001-07-25 2004-03-12 엘지전자 주식회사 분산형 전송시스템의 제어 유니트간 부트업 프로그램공유장치 및 그 방법
US7089413B2 (en) * 2003-03-05 2006-08-08 Hewlett-Packard Development Company, L.P. Dynamic computer system reset architecture
US7356680B2 (en) * 2005-01-22 2008-04-08 Telefonaktiebolaget L M Ericsson (Publ) Method of loading information into a slave processor in a multi-processor system using an operating-system-friendly boot loader
KR100729205B1 (ko) * 2005-12-12 2007-06-19 삼성전자주식회사 복합단말기에서 자동 부팅오류 복구장치 및 방법
US8125796B2 (en) 2007-11-21 2012-02-28 Frampton E. Ellis Devices with faraday cages and internal flexibility sipes
US12401619B2 (en) 2010-01-26 2025-08-26 Frampton E. Ellis Computer or microchip with a secure system bios having a separate private network connection to a separate private network
US8429735B2 (en) 2010-01-26 2013-04-23 Frampton E. Ellis Method of using one or more secure private networks to actively configure the hardware of a computer or microchip
KR20140099016A (ko) * 2013-02-01 2014-08-11 삼성전자주식회사 전자장치 및 그 부팅방법
EP4002122A1 (en) * 2020-11-16 2022-05-25 Valeo Comfort and Driving Assistance Vehicle network for managing a boot integrity failure

Family Cites Families (64)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AT285689B (de) * 1968-03-29 1970-11-10 Siemens Ag Zentralgesteuerte Vermittlungsanlage der Fernmelde-, insbesondere Fernsprechtechnik
US3665173A (en) * 1968-09-03 1972-05-23 Ibm Triple modular redundancy/sparing
US3864670A (en) * 1970-09-30 1975-02-04 Yokogawa Electric Works Ltd Dual computer system with signal exchange system
SE347826B (ja) * 1970-11-20 1972-08-14 Ericsson Telefon Ab L M
FR2182259A5 (ja) * 1972-04-24 1973-12-07 Cii
US3898621A (en) * 1973-04-06 1975-08-05 Gte Automatic Electric Lab Inc Data processor system diagnostic arrangement
US4099241A (en) * 1973-10-30 1978-07-04 Telefonaktiebolaget L M Ericsson Apparatus for facilitating a cooperation between an executive computer and a reserve computer
US4031372A (en) * 1973-11-06 1977-06-21 Westinghouse Electric Corporation System for manually or automatically transferring control between computers without power generation disturbance in an electric power plant or steam turbine operated by a multiple computer control system
CH623669A5 (ja) * 1973-11-14 1981-06-15 Agie Ag Ind Elektronik
US3873819A (en) * 1973-12-10 1975-03-25 Honeywell Inf Systems Apparatus and method for fault-condition signal processing
IT1014277B (it) * 1974-06-03 1977-04-20 Cselt Centro Studi Lab Telecom Sistema di controllo di elaboratori di processo operanti in parallelo
US4313160A (en) * 1976-08-17 1982-01-26 Computer Automation, Inc. Distributed input/output controller system
US4228496A (en) * 1976-09-07 1980-10-14 Tandem Computers Incorporated Multiprocessor system
US4099234A (en) * 1976-11-15 1978-07-04 Honeywell Information Systems Inc. Input/output processing system utilizing locked processors
SE397013B (sv) * 1976-12-17 1977-10-10 Ellemtel Utvecklings Ab Sett och anordning for att overfora datainformationer till tva parallellt arbetande datamaskindelar
US4358823A (en) * 1977-03-25 1982-11-09 Trw, Inc. Double redundant processor
US4141066A (en) * 1977-09-13 1979-02-20 Honeywell Inc. Process control system with backup process controller
US4153318A (en) * 1977-10-17 1979-05-08 Square D Company Bus stab for panelboard assembly
JPS6016664B2 (ja) * 1977-10-28 1985-04-26 豊田工機株式会社 デ−タ転送装置
US4403282A (en) * 1978-01-23 1983-09-06 Data General Corporation Data processing system using a high speed data channel for providing direct memory access for block data transfers
DE2813383A1 (de) * 1978-03-28 1979-10-11 Siemens Ag Datensende/-empfangs-einrichtung mit parallel/seriell- und seriell/parallel- zeichen-umsetzung, insbesondere zum datenaustausch zwischen kommunizierenden datenverarbeitungsanlagen
GB2019622B (en) * 1978-04-14 1982-04-07 Lucas Industries Ltd Digital computing apparatus
US4200226A (en) * 1978-07-12 1980-04-29 Euteco S.P.A. Parallel multiprocessing system for an industrial plant
US4270168A (en) * 1978-08-31 1981-05-26 United Technologies Corporation Selective disablement in fail-operational, fail-safe multi-computer control system
US4268902A (en) * 1978-10-23 1981-05-19 International Business Machines Corporation Maintenance interface for a service processor-central processing unit computer system
US4495571A (en) * 1979-01-31 1985-01-22 Honeywell Information Systems Inc. Data processing system having synchronous bus wait/retry cycle
US4245344A (en) * 1979-04-02 1981-01-13 Rockwell International Corporation Processing system with dual buses
US4253147A (en) * 1979-04-09 1981-02-24 Rockwell International Corporation Memory unit with pipelined cycle of operations
US4377843A (en) * 1979-04-19 1983-03-22 Wescom Switching, Inc. Data distribution interface
DE2920994A1 (de) * 1979-05-23 1980-11-27 Siemens Ag Datensende/-empfangseinrichtung mit parallel/seriell- und seriell/parallel- zeichenumsetzung, insbesondere zum datenaustausch zwischen kommunizierenden datenverarbeitungsanlagen
DE2926292A1 (de) * 1979-06-29 1981-01-08 Harnischfeger Gmbh Insbesondere mobiler teleskopauslegerkran
US4428044A (en) * 1979-09-20 1984-01-24 Bell Telephone Laboratories, Incorporated Peripheral unit controller
US4363125A (en) * 1979-12-26 1982-12-07 International Business Machines Corporation Memory readback check method and apparatus
US4430704A (en) * 1980-01-21 1984-02-07 The United States Of America As Represented By The Secretary Of The Navy Programmable bootstrap loading system
DE3003291C2 (de) * 1980-01-30 1983-02-24 Siemens AG, 1000 Berlin und 8000 München Zweikanalige Datenverarbeitungsanordnung für Eisenbahnsicherungszwecke
US4356546A (en) * 1980-02-05 1982-10-26 The Bendix Corporation Fault-tolerant multi-computer system
FR2477809B1 (fr) * 1980-03-10 1987-08-21 Jeumont Schneider Systeme de transmission rapide de messages entre calculateurs
US4365293A (en) * 1980-03-28 1982-12-21 Pitney Bowes Inc. Serial communications bus for remote terminals
US4371754A (en) * 1980-11-19 1983-02-01 Rockwell International Corporation Automatic fault recovery system for a multiple processor telecommunications switching control
US4418343A (en) * 1981-02-19 1983-11-29 Honeywell Information Systems Inc. CRT Refresh memory system
US4424565A (en) * 1981-06-22 1984-01-03 Bell Telephone Laboratories, Incorporated Channel interface circuit with high speed data message header field translation and direct memory access
US4398270A (en) * 1981-09-09 1983-08-09 Mostek Corporation Self-loading bootstrap circuit
US4453215A (en) * 1981-10-01 1984-06-05 Stratus Computer, Inc. Central processing apparatus for fault-tolerant computing
US4597084A (en) * 1981-10-01 1986-06-24 Stratus Computer, Inc. Computer memory apparatus
JPS5892025A (ja) * 1981-11-26 1983-06-01 Hitachi Ltd デ−タ処理方式
IT1151351B (it) * 1982-01-19 1986-12-17 Italtel Spa Disposizione circuitale atta a realizzare lo scambio di dati tra una coppia di elaboratori operanti secondo il principio master-slave
US4541094A (en) * 1983-03-21 1985-09-10 Sequoia Systems, Inc. Self-checking computer circuitry
US4602327A (en) * 1983-07-28 1986-07-22 Motorola, Inc. Bus master capable of relinquishing bus on request and retrying bus cycle
DE3328405A1 (de) * 1983-08-05 1985-02-21 Siemens AG, 1000 Berlin und 8000 München Steuerorgane eines fehlertoleranten mehrrechnersystems
US4590557A (en) * 1983-09-12 1986-05-20 Pitney Bowes Inc. Method and apparatus for controlling software configurations in data processing systems
US4610013A (en) * 1983-11-08 1986-09-02 Avco Corporation Remote multiplexer terminal with redundant central processor units
US4569017A (en) * 1983-12-22 1986-02-04 Gte Automatic Electric Incorporated Duplex central processing unit synchronization circuit
DE3486257T2 (de) * 1984-01-09 1994-04-21 Hitachi Ltd Synchrones dezentralisiertes Verarbeitungssystem.
US4589066A (en) * 1984-05-31 1986-05-13 General Electric Company Fault tolerant, frame synchronization for multiple processor systems
US4823256A (en) * 1984-06-22 1989-04-18 American Telephone And Telegraph Company, At&T Bell Laboratories Reconfigurable dual processor system
US4672613A (en) * 1985-11-01 1987-06-09 Cipher Data Products, Inc. System for transferring digital data between a host device and a recording medium
US4751702A (en) * 1986-02-10 1988-06-14 International Business Machines Corporation Improving availability of a restartable staged storage data base system that uses logging facilities
JP2605271B2 (ja) * 1987-02-10 1997-04-30 ソニー株式会社 エラー訂正及びチエツク装置
JPH0690682B2 (ja) * 1987-02-28 1994-11-14 日本電気株式会社 マルチプロセツサシステムの障害処理方式
US4916704A (en) * 1987-09-04 1990-04-10 Digital Equipment Corporation Interface of non-fault tolerant components to fault tolerant system
DE3854026D1 (de) * 1987-09-04 1995-07-27 Digital Equipment Corp Fehlertolerantes Rechnersystem mit Fehler-Eingrenzung.
CA1320276C (en) * 1987-09-04 1993-07-13 William F. Bruckert Dual rail processors with error checking on i/o reads
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

Also Published As

Publication number Publication date
CA2022259C (en) 1994-03-22
EP0415548A3 (en) 1992-03-18
CA2022259A1 (en) 1991-02-02
US5068780A (en) 1991-11-26
EP0415548A2 (en) 1991-03-06

Similar Documents

Publication Publication Date Title
JPH03182938A (ja) ブートストラップローディングの開始を制御する方法及び装置
US5185877A (en) Protocol for transfer of DMA data
JPH03184130A (ja) ソフトウェアの誤り処理方法
JPH03184131A (ja) コンピューティングモジュールにおける故障を記録する装置および方法
US5153881A (en) Method of handling errors in software
US5005174A (en) Dual zone, fault tolerant computer system with error checking in I/O writes
US4916704A (en) Interface of non-fault tolerant components to fault tolerant system
US4907228A (en) Dual-rail processor with error checking at single rail interfaces
US6161165A (en) High performance data path with XOR on the fly
US5251227A (en) Targeted resets in a data processor including a trace memory to store transactions
CA1311849C (en) Fault tolerant computer system with fault isolation and repair
US5048022A (en) Memory device with transfer of ECC signals on time division multiplexed bidirectional lines
JPH03184129A (ja) 特定のデータをシステムデータに変換する方法
US5163138A (en) Protocol for read write transfers via switching logic by transmitting and retransmitting an address
EP0514075A2 (en) Fault tolerant processing section with dynamically reconfigurable voting
JPH03182958A (ja) 再同期時のバルクメモリ転送
JP3069585B2 (ja) データ処理装置における目標指定リセット法
JPH03184155A (ja) 非存在メモリエラー処理の方法