JPH03232045A - Dmaデータ転送のためのプロトコル - Google Patents

Dmaデータ転送のためのプロトコル

Info

Publication number
JPH03232045A
JPH03232045A JP2203799A JP20379990A JPH03232045A JP H03232045 A JPH03232045 A JP H03232045A JP 2203799 A JP2203799 A JP 2203799A JP 20379990 A JP20379990 A JP 20379990A JP H03232045 A JPH03232045 A JP H03232045A
Authority
JP
Japan
Prior art keywords
system resource
dma
data
memory controller
bus
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
JP2203799A
Other languages
English (en)
Inventor
Thomas D Bissett
トーマス ディー ビセット
Ajai Thirumalai
アジャイ ティルマライ
William Bruckert
ウィリアム ブルッカート
Jay Amirmokri
ジェイ アミルモクリ
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 JPH03232045A publication Critical patent/JPH03232045A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • G06F11/076Error or fault detection not based on redundancy by exceeding limits by exceeding a count or rate limit, e.g. word- or bit count limit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1629Error detection by comparing the output of redundant processing systems
    • G06F11/165Error detection by comparing the output of redundant processing systems with continued operation after detection of the error
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1658Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1666Error detection or correction of the data by redundancy in hardware where the redundant component is memory or memory area
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/20Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
    • G06F11/2017Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where memory access, memory control or I/O control functionality is redundant
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • G06F13/28Handling requests for interconnection or transfer for access to input/output bus using burst mode transfer, e.g. direct memory access DMA, cycle steal
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/004Error avoidance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/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; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/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
    • G06F11/1008Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
    • G06F11/1044Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices with specific ECC/EDC distribution
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • G06F11/2236Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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)
  • Bus Control (AREA)
  • Information Transfer Systems (AREA)
  • Hardware Redundancy (AREA)

Abstract

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

Description

【発明の詳細な説明】 本発明は切り換えロジックを経てシステム・リソースと
コントローラ間で行うDMA経由のデータ転送に関する
コンピュータ・システムでは、コントローラを用い、D
MAを経てシステム・リソース、システム・メモリ間で
データのブロックを迅速にやりとりすることができる。
DMA転送を始めることができるようになる前に、シス
テム・リソースとコントローラによって使用できるよう
に成る種の情報を提供しなければならない。
一般に、システム・リソースならびにメモリによってア
クセスされる起動アドレスはポインタ・レジスタに格納
されている。ポインタ・レジスタ内に格納されたアドレ
スはシステム・リソースおよびコントローラによって増
分あるいは減分されて適切な記憶場所にアクセスする。
その結果、コンピュータ・システム内のメインプロセッ
サの介入なしにデータのブロック全体が転送され得る。
DMA転送が始まる前に1バイト分、すなわち■ワード
分のカウント数かカウンタに与えられ、そこに記憶され
る。このカウント数は、DMAデータの各バイト分ある
いはワード分が転送されるにつれて、変化する。DMA
データ・ブロック内のバイトまたはワードのすべてが転
送されてしまったことをカウンタが決定したとき、DM
A動作が完了する。
多くのコンピュータ・システムでは、システム・メモリ
でDMA転送を実施することのできる多重システム・リ
ソースが存在する。これらのシステムでは、成る特定の
システム・メモリを選定されたシステム・リソースに結
合するために切り換えロジックが必要である。
しかしなから、切り換えロジックを含むシステムでは、
緊急のDMAデータ転送を行うために必要なデータ経路
を迅速にセットアツプするのか難しいことがある。もし
選定されたシステム・リソースとシステム・メモリの間
で双方向のうちのいずれかの方向にDMAデータを転送
できるように切り換えロジックを構成しなければならな
い場合には、この困難は倍増する。
したがって、DMA転送が開始する前に切り換えロジッ
クを効果的にセットアツプして、成る特定のシステム・
メモリと選定されたシステム・リソースの間でDMAデ
ータを転送できるようにしたコンピュータ・システムが
必要である。また、DMA転送の準備にあたってポイン
タ・レジスタ、カウンタおよび切り換えロジックを迅速
に初期化する簡単なプロトコルを使用するコンピュータ
・システムも必要である。
本発明の目的は、従来技術に伴う問題のうちの少なくと
もいくつかを解決することにある。
したがって、ネットワーク内の2つのノード間でDMA
を経てデータを転送するように切り換えロジックを効果
的に構成する方法が得られれば望ましい。また、ポイン
タ・レジスタおよびカウンタを迅速に初期化する方法を
提供するのも有利である。
本発明の付加的な目的および利点は、一部は以下の説明
で述べるし、一部はこの説明から容易に推考できようし
、または、発明の実施によって学ぶことができよう。本
発明の目的および利点は、添付の特許請求の範囲におい
て特別に指摘した手段および組み合わせによって実現し
、得ることができる。
本発明の目的を達成すべく、本発明の目的に従って、こ
こで具体化し、広い意味で説明するように、メモリ・コ
ントローラ、システム・リソースに結合した第1システ
ム・リソース・バスおよびデータ・ルータを包含するコ
ンピュータ・システムの構成要素間でDMAを経てデー
タの転送を行う方法が得られる。このデータ・ルータは
、メモリ・コントローラを第1システム・リソース・バ
スに結合する切り換えロジックを含む。この方法は、メ
モリ・コントローラからシステム・リソースへデータ・
ルータを経てかつシステム・リソースに結合した第1シ
ステム・リソース・バスを経て、セットアツプ書き込み
トランザクションを示すDMAセットアツプ情報を伝送
する段階を含む。
このDMAセットアツプ情報はDf〜4A転送に対応し
、DMA転送の方向、たとえば、システム・リソースか
らメモリ・コントローラへのアップ方向あるいはメモリ
・コントローラからシステム・リソースへのダウン方向
のいずれかを示し、このDMA転送が第1システム・リ
ソース・バスと関係することになるかどうかを示し、そ
して、このDMA転送が第1システム・リソース・バス
に結合したシステム・リソースと関係することになるか
どうかを示す。この方法は、また、セットアツプ書き込
みトランザクション中にDMAセットアツプ情報を復号
して、DMA転送の方向を決定し、このDMA転送が第
1システム・リソース・バスと関係することになるかど
うかを決定し、そして、このDMA転送が第1システム
命リソース・バスに結合したシステム・リソースと関係
することになるかどうかを決定する段階と、メモリゆコ
ントローラからシステム・リソースへデータ・ルータを
経てかつシステム・リソースに結合した第1システム・
リソース・バスを経て起動DMAコードを伝送する段階
と、起動DMAコードの伝送に応答し、かつ、データ・
ルータによって復号されたDMAセットアツプ情報に従
ってデータ・ルータに切り換えロジックを構築する段階
とを包含する。この切り換えロジックは、D M A、
転送がアップ方向であり、DMA転送が第1システム・
リソースと関係することになり、そして、DMA転送が
第1システム・リソース・バスに結合したシステム・リ
ソースと関係することになるときに第1システム・リソ
ース・バスからメモリ・コントローラへDMAデータを
送るように構築される。また、この切り換えロジックは
、DMA転送がダウン方向であり、DMA転送か第1シ
ステム・リソースと関係することになり、そして、DM
A転送が第1システム・リソース・バスに結合したシス
テム・リソースと関係することになるときにメモリ・コ
ントローラから第1システム・リソース・バスへDMA
データを送るように構築される。本方法は、さらに、D
MA起動コードの伝送に応答してシステム・リソースに
結合した第1システム・リソース0バスを経てかつデー
タ・ルータ内の切り換えロジックを経てシステム・リソ
ースからメモリ・コントローラへ肯定応答コードを伝送
する段階と、肯定応答コードの伝送後でDMA転送がア
ップ方向であるときに、システム・リソースに結合した
第1システム・リソース・バスを経てかつデータ・ルー
タ内の切り換えロジックを経てシステム・リソースから
メモリ・コントローラへDMAデータを伝送する段階と
、肯定応答コードの伝送後でDMA転送がダウン方向で
あるときに、データ・ルータ内の切り換えロジックを経
てかつシステム・リソースに結合した第1システム・リ
ソース・バスを経てメモリ・コントローラからシステム
・リソースへDMAデータを伝送する段階と、DMAデ
ータの伝送後に、システム・リソースに結合した第1シ
ステム・リソース・バスを経てかつデータ・ルータ内の
切り換えロジックを経てシステム・リソースからメモリ
ーコントローラへ完了コードを伝送してDMAデータ伝
送の成功を示す段階とを包含する。
本明細書に組み込み、その一部を構成する添付図面が本
発明の好ましい実施例を示し、発明を説明すると共に発
明の詳細な説明している。
(実施例) 本発明の好適な実施例を詳細に参照するが、この実施例
の具体例は添付図に示されている。
A、システムの説明 第1図は本発明による故障許容コンピュータ・システム
10のブロック図である。この故障許容コンピュータ・
システム10はゾーンと呼ぶ重複システムを有している
。通常のモードの場合、2つのゾーン11と11′が同
時に動作している。
この重複によって、1つのポイントで故障が発生するこ
とかなく、ゾーン11または11′の1つにエラーまた
は故障が発生しても、これによってコンピュータ・シス
テム10が動作不能にならないことが保証される。さら
に、こうした故障は、これを発生させた装置または構成
要素を動作不能にするまたは無視することによって取り
除くことができる。第1図に示すゾーン11と11’は
、それぞれ重複処理システム20と20′を有している
。しかし、これらが重複して設けられていることによっ
て、処理システム以上のことを行うことができる。
第2図は、故障許容コンピュータ・システムlOの物理
的ハードウェアを示し、システムが重複して設けられて
いることを図によって示す。各ゾーン11と11’は、
別のキャビネット11と12’にそれぞれ内蔵されてい
る。キャビネット12は、バッテリ13、電源調整装置
14、冷却ファン16およびAC人力17を有する。キ
ャビネット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′との間にデータ転送経路が設けられ、処理システム
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およびモジュール相互接続部1
30を有するデータ経路か一方のレールと考えられ、C
PU、50、メモリ制御装置75、クロスリンク95、
およびモジュール相互接続部132を有するデータ経路
が他方のレールと考えられる。動作が正しく行われてい
る間は、両方のレールのデータは同じである。
B、故障許容システムの原理 故障許容コンピュータ・システムlOでは、1つのポイ
ントで故障の発生することがないが、その理由は、各構
成要素が重複して設けられているためである。処理シス
テム20と20′は、それぞれ故障停止処理システムで
あり、このことは、これらのシステムがサブシステム内
の故障またはエラーを検出し、これらの故障またはエラ
ーが他のサブシステムに制御されない状態で広がること
を防止することができる。しかし、これらの処理システ
ムではVは、各処理システム内の構成要素が重複して設
けられていないため、1つの点で故障が発生する。
2つの故障停止処理システム20と20′は、所定の方
法で動作するある種の構成要素によって相互に接続され
、フェール・セーフ・システムを形成する。故障許容コ
ンピュータ・システム10として具体化されているフェ
ール・セーフ・システムの場合、たとえ故障停止処理シ
ステム20および20′の一方が故障しても、コンピュ
ータ・システムは全体として処理を継続することができ
る。
2つの故障停止処理システム20と20′はロックステ
ップ同期で動作すると考えられるが、その理由は、CP
U40.50.40′および50′がこのような同期で
動作するからである。この場合、3つの重要な例外が存
在する。第1の例外は、ブートストラップ法によって両
方の処理装置を同期させる初期化の時に発生する。第2
の例外は、処理システム20と20′が2つの異なった
作業負荷で独立して(非同期の状態で)動作する場合に
発生する。第3の例外は、ある種のエラーが処理システ
ム20と20′に発生する場合に起こる。
この最後の例外の場合、これらの処理システムの内の一
方のCPUとメモリ素子を動作不能し、これによって同
期動作を終了する。
システムがロックステップI10で動作している場合、
いずれの1つの時間にも、1つのI10装置のみしかア
クセスすることができない。しかし、4つのCPU40
.50.40′および50′は全て実質的に同じ時間に
同じデータをこのI10装置から受け取る。以下の議論
では、これらの処理システムのロックステップ同期とは
、1つのI10モジュールのみがアクセスされているこ
とを意味すると理解できる。
重複して設けられた処理システム20および20′の同
期は、各システムを決定性を有する機械として取り扱う
ことによって実行され、この場合、これらのシステムは
、同じ入力を受けて同じ既知の状態でスタートし、常に
同じ機械状態に入り、エラーのない場合には、同じ結果
を発生する。
処理システム20と20′は同じ構成を有し、同じ入力
を受取、従って、同じ状態を通過する。従って、両方の
処理装置が同期して動作する限り、これらは同じ結果を
発生すると共に同じ状態に入る。もしこれらの処理シス
テムが同じ状態でなく、または異なった結果を発生すれ
ば、これらの処理システム20と20′の一方が故障し
ていると考えられる。そこで修正動作を行うためには、
故障しているモジュールを動作不能にする等して故障の
原因を取り除かなければならない。
エラーの検出は、−船釣に別の処理時間または論理の形
でのオーバヘッドを含む。このようなオーバヘッドを最
小にするため、システムは故障許容動作と調和しなから
、エラー・チエツクをできるだけ少ない回数行わなけれ
ばならない。少なくとも、エラーのチエツクはデータが
CPU30と30′から出力される前に行われなければ
ならない。そうでなければ、内部処理のエラーによって
、原子炉のような外部システムに正しくない動作が発生
するが、これは故障許容システムの設計によって防止し
ようとしている状態である。
これ以外にエラーのチエツクを行う理由が存在する。例
えば、故障またはエラーを除去するためには、記憶また
は使用する前に、CPUモジュール30および30′の
受け取ったデータをチエツクすることが望ましい。そう
でなければ、記憶されているエラーのあるデータが後が
アクセスされその結果、別のエラーが発生すると、特に
このエラーのあるデータが一定期間記憶された場合には
これらのエラーの最初の原因を見出だすことが困難また
は不可能になる。時間が経過することとこれらのエラー
のあるデータがその後処理されることによって、エラー
の原因を追跡することができなくなる可能性がある。
検出される前にエラーが記憶されていた時間を指す「エ
ラーの潜伏時間」によって、同様に後で問題が発生する
可能性がある。例えば、コンピュータシステムが以前に
発生したエラーによって小さ(なったキャパシティで既
に動作している場合に、滅多に使わないルーチンによっ
て潜在するエラーの見付かる場合がある。コンピュータ
のキャパシティが減少している場合、潜在するエラーに
よってシステムが破壊される場合がある。
更に、処理システム20および20′がデユアルーレー
ル・システムになっている場合、データをメモリのよう
な共有の資源である1つのレール・システムに転送する
のに先立って、エラーをチエツクすることが望ましい。
この理由は、このような転送を行った後には最早2つの
独立するデータのソースが存在しないためであり、もし
シングル・レール・システムで後になって何らかのエラ
ーが検出された場合、このエラーを追跡することは、不
可能でないにしても困難になる。
エラー処理の好適な方法が、これと同じ日に出願された
弁理士ドケットNnPD89−289/DEC−344
の発明の名称[ソフトウェアによるエラーの処理」とい
う出願で説明され、これは参考としてここに引用されて
いる。
C6モジュールの説明 1、CPUモジュール 第1図に示すCPUモジュール30の構成要素を第3図
および第4図により詳細に示す。第3図はCPUモジュ
ールのブロック図であり、第4図はCPUモジュール3
0および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を
有する必要はない。
2、 メモリ・モジュール CPU40と50は、最高4つのメモリ・モジュール6
0を共有できることが望ましい。第5図はCPUモジュ
ール30に接続して示した1つのメモリ・モジュール6
0のブロック図である。
メモリ転送サイクル、ステータス・レジスタ転送サイク
ルおよびEEPROM転送サイクルの期間中、各メモリ
・モジュール60は双方向データ・バス85を介してプ
ライマリ−メモリ制御装置70にデータを転送すると共
にこれからデータの転送を受ける。各メモリモジュール
60は、またそれぞれバス80および82を介してメモ
リ制御装置70と75からアドレス信号、制御信号、タ
イミング信号およびECC信号を受け取る。バス80お
よび82のアドレス信号は、ボード信号、バンク信号、
および行アドレス信号と列アドレス信号を含み、これら
によってデータ転送に含まれるメモリーボード・アドレ
ス、バンク・アドレス、および行および列アドレスか識
別される。
第5図に示すように、各メモリ′−モジュール6θはメ
モリ・アレイ600を有する。各メモリ・アレイ600
はDRAMが8バンクのメモリに組織されている標準R
AMである。好適な実施例の場合、高速ページ・モード
型のDRAMが使用される。
メモリ・モジュール60には、また制御ロジック610
、データ・トランシーバ/レジスタ620、メモリ・ド
ライバ630、およびEEPROM640が含まれる。
データ・トランシーバ/レジスタ620によってメモリ
・アレイ600とデータ・ハス85の双方向データ線と
の間でデータを転送するためのデータ・バスとデータ・
インターフェースが設けられる。メモリ・ドライバ63
0は、制御ロジック610からメモリ・アレイ600の
各バンクに対して行および列アドレス信号と制御信号を
分配し、ロングワードのデータとその対応するFCC信
号をメモリ・ホード信号とバンク・アドレス信号によっ
て選択されたメモリ・バンクに対して転送すると共にこ
れらがそこから転送されることを可能にする。
いずれのタイプのNVRAM (非揮発性RAM)であ
ってもよいEEPROM640によって、オフ・ライン
修理用のメモリ・エラー・データとモジュールのサイズ
のような構成データが記憶される。故障の発生後メモリ
・モジュールが取り外された場合、故障の原因を判定す
るため、記憶されているデータがEEPROM640か
ら取り出される。EEPROM640は、ドライバ63
0からの行アドレス線を介して、制御ロジック610か
らのEEPROM制御信号によってアドレスされる。E
EPROM640は、32ビツトの内部メモリ・データ
・バス645に対して8ビツトのデータを転送し、ここ
からこのデータを受け取る。
制御ロジック610は、メモリ・モジュール60の素子
に対してアドレス信号を転送すると共に内部タイミング
と制御信号を発生する。第6図に詳細に示すように、制
御ロジック612はプライマリ/ミラー指示回路612
を有する。
プライマリ/ミラー指示回路612は、バス80と82
でメモリ制御装置70と75から2組のメモリ・ボード
・アドレス・バンク・アドレス、行および列アドレス、
サイクル・タイプ・サイクル・タイミング信号を受け取
り、またバス80と82でメモリ制御装置に対して2組
のFCC信号を転送すると共にここからこれを受け取る
。指示装置612のトランシーバ/レジスタによって、
これらの信号をバス80と82との間で授受するバッフ
ァとインターフェースが設けられる。ステータス・レジ
スタ618に記憶されているプライマリ/ミラー・マル
チプレクサのビットによって、メモリ制御装置70と7
5のいずれがプライマリ・メモリ制御装置として指定さ
れ、いずれがミラー・メモリ制御装置として指定されか
が指示され、プライマリ/ミラー・マルチプレクサ信号
がステータス・レジスタ618から指示装置612に加
えられる。
プライマリ/ミラー指示装置612よって、制御ロジッ
ク610に分配する2組の信号が与えられる。1組の信
号は指定されたプライマリ−・メモリ・ホード・アドレ
ス、バンク・アドレス、行および列アドレス、サイクル
・タイプ、サイクル・タイミングおよびEEC信号を含
む。他方の組の信号は、指定されたミラー・メモリ・ボ
ード・アドレス信号、バンク・アドレス信号、列および
行アドレス信号、サイクル・タイプ信号、サイクル・タ
イミング信号、およびEEC信号を含む。
プライマリ/ミラー・マルチプレクサ信号は、バス80
と82の信号がそれぞれ指定されたプライマリ信号を搬
送する線および指定されたミラー信号を搬送する線に向
けられるが、またはその逆であるかを選択するために指
示装置612によって使用される。
バス80と82には多数の時間分周多重化双方向線が含
まれている。メモリ転送サイクル、ステータス・レジス
タ転送サイクル、およびBEFROM転送サイクルの開
始後一定の時間に、データ・バス75のデータに対応す
るFCC信号がこれらの時間分周多重化双方向線に載置
される。もしこの転送サイクルが書き込みサイクルであ
れば、メモリモジュール60はメモリ制御装置からデー
タとFCC信号を受け取る。もしこの転送サイクルが読
み出しサイクルであれば、メモリ・モジュール60はデ
ータとFCC信号をメモリ・モジュールに転送する。転
送サイクルの他の時間に、アドレス信号、制御信号およ
びタイミング信号は時間分周多重化双方向線でメモリ・
モジュール60によって受け取られる。メモリ転送サイ
クル、ステータス・レジスタ転送サイクル、およびEE
FROM転送サイクルの始めに、メモリ制御装置70と
75がメモリ・ボード・アドレス、バンク・アドレス、
およびサイクル・タイプ信号をこれらの時間共有線で各
メモリ・モジュール60に転送することが望ましい。
行アドレス信号と列アドレス信号は同じ転送サイクル中
に同じ行および列アドレス線で多重化されることが望ま
しい。先ず、行アドレスがメモリ制御装置によってメモ
リ・モジュール60に加えられ、約60ナノ秒後に列ア
ドレスが加えられる。
シーケンサ−616は、システム・クロック信号とリセ
ット信号をCPUモジュール30から入力として受け取
り、指定されたプライマリ−・サイクル・タイミング信
号、指定されたプライマリ−・サイクル・タイプ信号、
指定されたミラー・サイクル・タイミング信号、および
指定されたミラー・サイクル・タイプ信号を指定装置6
12のトランシーバ/レジスタから受け取る。
シーケンサ616は、種々のタイプのサイクルを実行す
るために必要な多数の制御およびシーケンス・タイミン
グ信号を発生し、これらをメモリ・モジュールに対して
分配する関連したステアリング(steering)論
理を有するリング・カウンタである。制御およびシーケ
ンス・タイミング信号は、システム・クロック信号、指
定されたプライマリ−・サイクル・タイミング信号、お
よび指定されたプライマリ−・サイクル拳タイプ信号か
ら発生される。
シーケンサ616は、またシステム・クロック信号、指
定されたミラー・サイクル・タイミング信号、および指
定されたミラー・サイクル・タイプ信号から重複した組
のシーケンス・タイミング信号を発生する。これらの重
複したシーケンス・タイミング信号は、エラーのチック
のために使用される。高速ページモードで多重のロング
ワードのデータをメモリ・モジュール60との間で授受
するためには、各組の列アドレスは第1の組でスタート
し、12727ナノ次の列アドレス120がこれに続き
、各々のロングワードのデータは前のロングワードのデ
ータの後で120ナノ秒遅れてバス85を横切って移動
される。
シーケンサ616は、またtx/rxレジスタ制御信号
を発生する。tx/rxレジスタ制御信号は、トランシ
ーバ/レジスタ620の動作と指定装置612のトラン
シーバ/レジスタを制御するために発生される。データ
の流れの方向は、シーケンサ616のステアリングロジ
ックによって決定され、このシーケンサ616はtx/
rx制御信号とシーケンス・タイミング信号を発生する
ことによって、指定されたプライマリ−・サイクル・タ
イプ信号に応答し、データとFCC信号がメモリ・モジ
ュール60のトランシーバ/レジスタに対して書き込ま
れるべきであるかまたはここから読み出されるべきであ
るが、およびそれらが何時行われるべきであるかを示す
。メモリ書き込みサイクル中、ステータス・レジスタ書
き込みサイクル中、および書き込みサイクル中、データ
およびFCC信号はバス80.82、および85からト
ランシーバ/レジスタにラッチされ、一方メモリ読み出
しサイクル中、ステータス・レジスタ読み出しサイクル
中、およびEEPROM読み出しサイクル中、データお
よびFCC信号は、メモリeアレイ6001ステータス
・レジスタ618、またはEEPROM640からトラ
ンシーバ/レジスタにラッチされて、CPUモジュール
30に出力される。
シーケンサ616は、またEEPROM制御信号を発生
して、EEPROM640の動作を制御する。
メモリ・モジュール60に存在するタイミング関係はシ
ステム・タロツク信号の立ち上がり時間を参考にして決
められるが、このシステム・タロツク信号は30ナノ秒
の間隔を有している。全てのステータス・レジスタ読み
出しおよび書き込みサイクルと1つのロングワードの全
てのメモリ読み出しおよび書き込みサイクルは、lOシ
ステム・クロックの時間内、すなわち300ナノ秒内に
実行される。メモリ読み出しおよび書き込み転送サイク
ルは、多重化されたロングワードの転送によって構成さ
れることができる。別のロングワードが転送される毎に
、メモリ転送サイクルは4システム・クロックの期間だ
けさらに延長される。
メモリ・リフレッシュ拳サイクルとEEPROM書き込
みサイクルを実行するには少なくとも12システム・ク
ロックの間隔が必要であり、EEFROM読み出しサイ
クルは、少な(とも20システム・クロックの間隔を必
要とする。
指定されたプライマリ・サイクル、タイミング信号によ
って、シーケンサ616はシーケンス・タイミング信号
と制御信号との発生を開始し、これらの信号によって、
メモリ・ボート・アドレス信号によって選択されたメモ
リ・モジュールが要求されたサイクルを実行することが
可能になる。
指定されたプライマリ・サイクル・タイミング信号が活
性状態に遷移すると、サイクルが開始される。指定され
たプライマリ・サイクル・タイミング信号が不活性状態
に戻ると、サイクルは終了する。
CPUモジュール30によって要求されたサイクルが実
行されるに従って、シーケンサ616によって発生され
たシーケンス・タイミング信号はシーケンサの入力した
異なった状態と関連する。
これらの異なった状態の間のタイミング関係(およびこ
れらの状態の各々に対応するシーケンス・タイミング信
号の間のタイミング関係)を決めるため、シーケンサ6
16によって入力することのできるディスクリートな状
態がSEQ  IDLEおよび5EQIないし5EQ1
9と識別される。
各状態は、lシステム・クロックの間隔(30ナノ秒)
の間持続する。シーケンサ616の行う各々の異なった
状態に対する入力は、システム・クロック信号の立ち上
がり区間によってトリガされる。シーケンサ616に状
態SEQ  IDLEおよび5EQIないし5EQ19
を入力させるシステム・クロック信号の立ち上がり区間
は、これらをシーケンサ616の状態と関連させるため
に遷移TIDLEおよびTIないしT19として表され
る。すなわち、TNはシーケンサ616に状態SEQ 
 Nを入力させるシステム−クロック信号の立ち上がり
区間である。
CPUモジュール30がメモリ・モジュール60に1つ
のサイクルを実行させていない場合、指定されたプライ
マリ−・サイクル・タイミング信号は表明されず(no
t asserted) 、シーケンサはSEQ  I
DLEの状態のままである。もし制御ロジック610と
シーケンサ616がこれもまたバス80でメモリ制御装
置70から転送されたメモリ・ボード・アドレスによっ
て選択されたメモリ・モジュールに位置しているならば
、シーケンサはメモリ制御装置70によるバス80のサ
イクル・タイミング信号の表明に応答してスタートされ
る(状態5EQIを入力する)。指定されたプライマリ
−・サイクルの活性信号の表明に続(第1システム・ク
ロック信号の立ち上がり区間は、遷移Tlに対応する。
前に述べたように、メモリ・アレイ600に対して1つ
のロングワードを授受する場合、そのサイクルは10シ
ステム′・クロックの間隔で実行される。シーケンサは
SEQ  IDLEから状態5EQIないし5EQ9に
進み、S E Q  IDLEに戻る。
しかし、別のロングワードを転送するためにメモリ読み
出しおよび書き込みサイクルを延長することができる。
メモリ・アレイ600は、「高速ページ・モードJ D
RAMを使用することが望ましい。多重化されたロング
ワードの読み出しおよび書き込みを行う期間中、最初の
ロングワードの転送の後に行われるメモリ・アレイとの
データの授受け、列アドレスを繰り返して更新し、CA
S(列アドレス・ストローブ)信号を再び発生すること
によって行われる。
多重化されたロングワードの転送サイクルの期間中、こ
れらの列アドレスのこれらの更新を実行することが可能
であるが、その理由は、全てのロングワードが転送され
るまでシステム616は、5EQ4から5EQ7を繰り
返して循環するからである。例えば、もし3つのロング
ワードがメモリ・アレイ600から読み出され、または
これに書き込まれているならば、シーケンサは状態5E
QIDLE、5EQI、5EQ2.5EQ3.5EQ4
.5EQ5.5EQ6.5EQ7.5EQ4.5EQ5
.5EQ6.5EQ7.5EQ4.5EQ5.5EQ6
.5EQ7.5EQ8.5EQ9、および5EQIDL
Eを入力する。
メモリ転送サイクルの期間中、指定されたプライマリ・
サイクル・タイミング信号は、遷移T6の間のシーケン
サ616によって監視され、少なくとも1つの別のロン
グワードを転送するため、メモリ読み出しまたは書き込
みサイクルを延長するへきかどうかを決定する。指定さ
れたプライマリ・サイクル・タイミング信号が遷移T6
中に表明された場合、状態5EQ7にあるシケンサは状
態5EQ8を入力する代わりに状態5EQ4を入力する
ことによって、次のシステム・クロック信号に応答する
多重ロングワードの転送の場合、指定されたプライマリ
−・サイクル・タイミング信号は、少なくとも第1T6
の遷移の15ナノ秒前に表明され、最後のロングワード
が転送される迄、表明されたままである。最後のロング
ワードが転送されてしまった後でメモリ転送サイクルを
終了するため、指定されたプライマリ・サイクル・タイ
ミング信号が最後のT6の遷移の少なくとも15ナノ秒
前に表明を解かれ、最後のT6の伝送の後、少なくとも
lOナノ秒間表明を解かれたままになる。
メモリ転送サイクルの期間中、指定されたプライマリ行
アドレス信号と指定されたプライマリ列アドレス信号は
、制御ロジック610内の指定装置612によって別の
時間に1組の時間分周多重化線上でメモリ・ドライバ6
30に与えられる。
トライバ630の出力はメモリ・アレイ600のDRA
Mのアドレス入力に加えられ、また指定されたミラー行
および列アドレス信号と比較するため制御ロジック61
0に戻されてエラーをチックする。状態レジスタ転送サ
イクルとEEPROM転送サイクルの期間中、列アドレ
ス信号は指定の記憶場所を選択するために必要ではない
メモリ転送サイクルの期間中、行アドレス信号はバス8
0と82の時間を共有する行および列アドレスに与えら
れた最初の信号である。状態5EQIDLEの期間中、
行アドレス信号は、メモリ制御装置によって行および列
アドレス線で転送され、列アドレスはTIの遷移の少な
くとも15ナノ秒前からTIの遷移後の10ナノ秒まで
安定した状態にある。次に、列アドレス信号はメモリ制
御装置によって行およびコラムアドレス線で転送され、
列アドレスは、T3の遷移の10ナノ秒前からT4の遷
移の後15ナノ秒まで安定した状態にある。メモリ転送
サイクルの期間中に多重ロングワードの転送を行う場合
、続いて発生する列アドレス信号は、次に行およびコラ
ムアドレス線で転送され、これらの続いて発生する列ア
ドレスはT6の遷移の10ナノ秒前からTIの遷移の後
15ナノ秒まで安定した状態にある。
ジェネレータ/チエッカ617はシーケンサ616によ
って発生された2組のシーケンス・タイミング信号を受
け取る。更に、指定されたプライマリ・サイクル・タイ
プ信号とバンク・アドレス信号および指定されたミラー
・サイクル・タイプ信号とバンク・アドレス信号が指定
装置612によってジェネレータ/チエッカ617に転
送される。ジェネレータ/チエッカでは、多数のプライ
マリ制御信号、すなわちRAS (行アドレス信号)、
CAS (列アドレス・ストローブ)およびWE (書
き込みイネーブル)が発生され、プライマリ・シーケン
ス・タイミング信号と指定されたプライマリ・サイクル
・タイプ信号およびバンク・アドレス信号を使用してド
ライバ630に分配される。これらの制御信号の重複し
た組がジェネレータ/チエッカ617によって重複(ミ
ラー)シーケンス・タイミング信号と指定されたミラー
・サイクル・タイプ信号およびバンク・アドレス信号か
ら発生される。これらのミラーRAS、CAS、および
書き込みイネーブル信号はエラーのチエツクのために使
用される。
プライマリ・サイクル・タンプ信号がメモリ転送サイク
ルが実行中であることを示す場合、プライマリ・バンク
−アドレス信号はメモリ・アレイ600内のDRAMの
1つの選択されたバンクを識別する。メモリ・ドライバ
630はメモリ・アレイ600内のDRAMの各バンク
に対して別々のRASドライバを有している。ジェネレ
ータ/チエッカ617においてプライマリRAS信号は
、メモリ転送サイクル中に発生され、ジェネレータ/チ
エッカをRASドライバに接続する線の1つに非多重化
される。その結果、選択されたDRAMバンクに対応す
るRASドライバのみがメモリ転送サイクル中に表明さ
れたRAS信号を受け取る。1リフレツシユ・サイクル
の期間中、プライマリRAS信号は非多重化されず、表
明されたRAS信号が各RASドライバによって受け取
られる。
ステータス・レジスタ転送サイクルとEEFROM転送
サイクルの期間中、バンク・アドレス信号は不必要であ
る。
メモリ・ドライバ630はまたCASドライバを有する
。ジェネレータ/チエッカ617において、プライマリ
CAS信号はメモリ転送サイクルとリフレッシュ・サイ
クルの期間中に発生される。
プライマリCAS信号は、非多重化されず、表明された
CAS信号は各CASドライバによって受け取られる。
メモリ書き込みサイクルの期間中、プライマリWE信号
はジェネレータ/チエッカ617によって発生される。
表明されたWE倍信号、ドライバ630によってメモリ
・アレイ600内の各DRAMバンクに加えられる。し
かし、書き込みは選択ささたDRAMパンクによっての
み実行することが可能でり、このDRAMバンクはまた
表面されたR A、 SおよびCA、 S信号を受け取
る。
本発明の好適な実施例の場合、メモリ転送サイクルの期
間中、プライマリRAS信号はT2の遷移の期間中表明
され、T3の遷移の少な(とも10ナノ秒前から安定し
、最後のT7の遷移の期間中表面を解かれる。プライマ
リCAS信号は、各T4の遷移の前15ナノ秒間表明さ
れ、各T7の遷移の期間中表明を解かれる。メモリ書き
込みサイクルの期間中、プライマリWE信号は、T3の
遷移の期間中表明され、最初のT4の遷移の少な(とも
10ナノ秒前から安定し、最後の17の遷移に期間中表
面を解かれる。
プライマリ・サイクル会タイプ信号がメモリーリフレッ
シュ・サイクルが実行中であることを示す場合、メモリ
・アレイ600はシーケンサ616によって与えられる
プライマリ・シーケンス・タイミング信号に応答して、
ジェネレータ/チエッカ617によってメモリ・リフレ
ッシュ動作を実行さされる。これらのリフレッシュ動作
の期間中、RAS信号およびCAS信号が逆の順序でジ
ェネレータ/チエッカによって発生されて分配される。
このリフレッシュ・モードはバンク、行または列に対す
る外部アドレスを必要としない。
転送サイクルの期間中、データがバス85い転送されて
いる時間に、FCC信号はバス80と82の時間分周多
重化双方向線で転送される。しかし、これらの同じ線は
転送サイクル中の他の時間に制御信号(例えば、サイク
ル・タイプ)およびアドレス信号(例えば、メモリ・ボ
ード・アドレスおよびバンク・ナドルス)信号を転送す
るために使用される。
プライマリ/ミラー指定装置612内のトランシーバ/
レジスタはシーケンサ616によって加えられるシーケ
ンス・タイミング信号ともtx/rxレジスタ制御信号
に応答する受信機と発信機を有する。シーケンス・タイ
ミング信号とtx/rxレジスタ制御信号は、バス80
と82の時間分周多重化双方向線でFCC信号とアドレ
ス信号および制御信号を多重化することを可能にする。
サイクル・タイプ信号、メモリ・ボード・アドレス信号
およびバンク・アドレス信号のような制御信号とアドレ
ス信号はメモリ制御装置70と75によって転送され、
単一の転送サイクルまたは多重ロングワード転送サイク
ルのいずれかの開始時にバス80と82の時間を共有し
た線に与えられることが望ましい。これらの信号はサイ
クル・タイミング信号の活性化と同時に遷移を開始しく
シーケンサはSEQ  IDLE状態にあるカリ、T2
の間安定状態にある。従って、指定装置612のトラン
シーバ/レジスタにおいて、受信機は起動され、送信機
は少なくとも状態5EQ2の終わり迄そのトリステート
・モードにセットされる。
サイクル・タイプ信号は、下記にリストアツブした機能
、すなわちメモリの読み出し、メモリの書き込み、ステ
ータス・レジスタの読み出し、ステータス・レジスタの
書き込み、EEPROMの読み出し、EEPROMの書
き込み、およびリフレッシュのいずれがサイクル期間中
にメモリ・アサイ60によって実行されるかを識別する
。指定装置612によって受け取られた指定されたプラ
イマリ・サイクル・タイプ信号は、シーケンサ616に
加えられ、tx/rx制御信号とシーケンス・タイミン
グ信号を発生する場合に使用される。例えば、データ・
トランシーバ/レジスタ620および指定装置612の
トランシーバ/レジスタにおいて、受信機は起動され、
送信機は書き込みサイクル全体を通してシーケンサ61
6によってトリステート・モードにセットされる。しか
し、読み出し期間中のデータ・トランシーツ(/レジス
タ620および指定装置612のトランシーバ/レジス
タの場合、受信機はトリステート・モードにセットされ
、送信機はサイクル・タイプ信号、メモリ・ボード・ア
ドレス信号およびバンク・アドレス信号がこのサイクル
の開始時点で受け取られた後シーケンサ616によって
起動される。
適切な実施例の場合、メモリ・アレイ600に対して授
受されたデータはエラー検出コード(EDC)を使用し
て各メモリ・モジュール60内でチエツクされることが
望ましく、このエラー検出コードはメモリ制御装置70
と75によって必要とされるコードと同じであることが
望ましい。
好適なコードは1ピツト修正、2ビツト検出のエラー修
正コード(F CC)であることが望ましい。
メモリ書き込みサイクルの期間中、メモリ制御装置70
は少なくとも1つのロングワードのデータをデータ・バ
ス85で転送し、同時に対応する組のECC信号をバス
80で転送する。一方、メモリ制御装置75は第2組の
ECC信号を転送し、これらの信号はバス82のデータ
・バス85のロングワードとまた対応する。
ここで実施されているように、メモリ書き込みサイクル
の期間中、各ロングワードに対するデータとECC信号
がデータ・トランシーバ/レジスタ620の受信機に与
えられると共に指定装置612のトランシーバ/レジス
タの受信機に与えられる。データおよびECC信号はT
4の遷移の少なくともlOナナ1秒前安定しており、T
6の遷移後15ナノ秒後迄安定した状態にあり、これら
のトランシーバ/レジスタにラッチされる。この時間の
間、メモリ制御装置70と75はバス80と82の時間
を共有した線にアドレス信号と制御信号を加えない。
メモリ書き込みサイクルの期間中に指定装置612によ
って受け取られた指定されたプライマリECC信号とト
ランシーバ/レジスタ620によって受け取られたロン
グワードのデータは、メモリ・アレイ600の8つのバ
ンクの各々に於けるDRAMのデータ入力とECC発生
装置623に加えられる。発生されたFCCは比較器6
25によって指定されたプライマリ・FCCと比較され
る。指定されたプライマリ・ECC信号は、また指定さ
れたミラー・ECC信号と共にECC比較器625に加
えられる。
ここで実施例されているように、メモリ読み出しサイク
ルの期間中、少なくとも1つのロングワードのデータと
対応する組のECC信号がメモリ・アレイ600から読
み出され、データ・トランシーバ/レジスタ620と指
定装置612のトランシーバ/レジスタにそれぞれ向け
られる。メモリ読み出しサイクルの遷移T7の期間中、
各ロングワードに対するデータとECC信号はメモリ・
アレイ600から入手可能であり、これらのトランシー
バ/レジスタにラッチされる。このデータはECC発生
装置623に与えられ、その出力はメモリから読み出さ
れたFCCと比較される。
ラッチの後、データおよびECC信号は、データ・トラ
ンシーバ/レジスタ620の送信機と指定装置612の
トランシーバ/レジスタの送信機によってデータ・バス
85とバス80および82に与えられる。同じFCC信
号は、指定装置612のトランシーバ/レジスタからメ
モリ制御装置70とメモリ制御装置75に転送される。
データバス85とバス80および82で転送されたデー
タとFCC信号は、T7の遷移の15秒後からこれに続
<T6の遷移の5ナノ秒前迄(多重ロングワード転送の
場合)またはこれに続<T  IDLE遷移の5ナノ秒
前迄(単一のロングワードの転送または多重ロングワー
ド転送の最後のロングワードの場合)安定した状態にあ
る。この時間間隔の間、メモリ制御装置70と75は、
バス80と82の時間を共有したアドレス信号と制御信
号を加えない。データ・トランシーバ/レジスタ620
の送信機と指定装置612のトランシーバ/レジスタの
送信機は、これに続<T  IDLE遷移の期間中、ト
リステート−モードにセットされる。
比較器614は、制御装置70から発生するアドレス信
号制御装置およびタイミング信号を制御装置75から発
生するこれらに対応するアドレス信号、制御信号および
タイミング信号と比較するために設けられる。指定され
たプライマリ・サイクル・タイミング信号、サイクル・
タイプ信号、メモリ・ボード・アドレス信号、およびバ
ンク・アドレス信号は、指定されたミラー・サイクル・
タイミング信号、サイクル・タイプ信号、メモリ・ボー
ドアドレス信号、バンク・アドレス信号、行アドレス信
号、および列アドレス信号と共に指定装置612から比
較器614に加えられる。指定されたプライマリ行アド
レス信号および列アドレス信号はドライバ630の出力
から比較器614に加えられる。そこで両方の組の信号
が比較される。
もし、メモリ制御装置から発生するアドレス信号、制御
信号、およびタイミング信号の間で比較のミスがあれば
、比較器614は適当なエラー信号を発生する。第6図
に示すように、ボード・アドレス・エラー信号、バンク
・アドレス・エラー信号、行アドレス・エラー信号、列
アドレス・エラー信号、サイクル・タイプ・アドレス・
エラー信号、およびサイクル・タイミング・エラー信号
は比較器から発生することができる。
ジェネレータ/チエッカ617は、指定されたプライマ
リ・バンク・アドレス信号、サイクル・タイプ信号およ
びサイクル・タイミング信号を使用してシーケンサ61
6およびジェネレータ/チエッカ617によって発生さ
れたプライマリ制御信号およびタイミング信号を、指定
されたミラー・バンク晦アドレス信号、サイクル・タイ
プ信号およびサイクル・タイミング信号を使用して、発
生されたミラー制御信号およびタイミング信号と比較す
る。2組のシーケンス・タイミング信号は、シーケンサ
616によってジェネレータ/チエッカ617に加えら
れる。プライマリRAS信号、CAS信号、およびWE
倍信号、ドライバ630の出力からジェネレータ/チエ
ッカ617に加えられる。前に説明したように、ミラー
RAS信号、CAS信号およびWE倍信号ジェネレータ
/チエッカによって内部的に発生される。ジェネレータ
/チエッカ617は、プライマリRAS信号、CAS信
号、WE倍信号よびシーケンス・タイミング信号をミラ
ーRAS信号、CAS信号、WE倍信号およびシーケン
ス・タイミング信号と比較する。
もし、シーケンサ616またジェネレータ/チエッカ6
17から発生する制御信号およびタイミング信号のいず
れかの間に比較のミあれば、ジェネレータ/チエッカは
適当なエラー信号を発生する。第6図に示すように、シ
ーケンサ・エラー信号、RASエラー信号、CASエラ
ー信号、およびWEエラー信号はジェネレータ/チエッ
カ617によって発生することかできる。
エラー信号は、比較器614およびジェネレータ/チエ
ッカ617からアドレス/制御エラー・ロジック621
に加えられる。比較器614またはジェネレータ/チエ
ッカ617から受け取ったエラー信号に応答して、アド
レス/制御エラー・ロジック621はアドレス/制御エ
ラー信号をCPUモジュール30に転送し、アドレス信
号・制御信号、またはタイミング信号のいずれかの間て
比較のミスが発生したことによる故障を検出したことを
示す。アドレス/制御エラー信号は、エラーを処理する
ためにメモリ制御装置70と75のエラー・ロジックに
送られる。アドレス/制御エラー信号をCPUモジュー
ル30にすることによって、CPU/MEM故障が発生
するが、これは他のセクションで詳細に論じる。
比較器614およびジェネレータ/チエッカ617から
のエラー信号は、またステータス・レジス、り618に
加えられる。エラー信号および故障に関連するアドレス
信号、制御信号、タイミング信号、データ信号およびE
CC信号の全ては、−時的にステータス・レジスタに記
憶され、エラーの診断と修復を可能にする。
本発明の1つの特徴によれば、32ビツトのデータ・バ
ス85力月本だけCPUモジュール30とメモリ・モジ
ュール60との間に設けられる。
従って、メモリ・モジュール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信号
が正しいかどうかを検証する。更に、メモリー書き込み
サイクルの期間中にDRAMのデータ入力に与えられた
データは、ECC発生装置623に加えられる。ECC
発生装置623は、このデータ応する1組の発生された
ECC信号を発生し、この発生されたECC信号をEC
C比較器625に加える。指定されたプライマリECC
信号は発生されたECC信号と比較され、メモリ制御装
置70によってデータ・バス85に転送されたデータが
メモリ・アレイ600のDRAMに記憶されているデー
タと同じであるかどうかを検証する。
メモリ読み出しサイクルの期間中、DRAMの選択され
たバンクから読み出されたデータはFCC発生器に与え
られる。発生されたECC信号はそこでFCC比較器に
加えられ、このFCC比較器は、またDRAMの選択さ
れたバンクから読み出されて記憶されているECC信号
を受け取る。発生され記憶されているECC信号は、E
CC比較器625によって比較される。
もしECC比較器625によって監視されているECC
信号のいずれかの対の間に比較のミスがあれば、FCC
比較器は適当なエラー信号を発生する。第6図に示すよ
うに、プライマリ/ミラーFCCエラー信号、プライマ
リ/発生されたBCC信号エラーおよびメモリ/発生さ
れたFCCエラー信号はFCC比較器によって発生する
ことができる。
ECC比較器625からのこれらのFCCエラー信号は
ステータス・レジスタ618に加えられる。FCCエラ
ー信号の各々およびFCC故障に関連するアドレス信号
、制御信号、タイミング信号、データ信号、およびEC
C信号の全ては一時的にステータス・レジスタに記憶さ
れ、エラーの診断と修復を可能にする。
FCCエラー信号はFCCエラー線上でECC比較器6
25によって表明され、CPUモジュール30に転送さ
れ、比較のミスによって発生したECCの故障を検出し
たことを示す。この比較のミスはメモリ書き込みサイク
ルの期間中に行われる2つのFCCのチエツクの期間中
またはメモリ読み出しサイクル行われる1つのFCCの
チエツクの期間中のいずれかで発生する可能性がある。
第6図に示すように、ボード選択ロジック627はメモ
リの背面板からスロット信号を受け取る。
これらのスロット信号によって、各メモリモジュール6
0に対してユニークなスロット・ロケーションが指定さ
れる。ボード選択ロジッチ627は、そこでこれらのス
ロット信号を指定回路612を介してメモリ制御装置の
1から転送された指定されたプライマリ・ボード・アド
レス信号と比較する。もしこのスロット信号が指定され
たプライマリ・ボード・アドレス信号と同じであれば、
ボード選択信号がボード選択ロジック627によって発
生され、これによって制御ロジック610内の他の回路
を動作させる。
3、 メモリ制御装置 メモリ制御装置70と75は、CPU40と50のメモ
リ・モジュール60および補助メモリ素子に対するアク
セスをそれぞれ制御好適な実施例の場合、ある種のエラ
ー処理動作を実行する。
メモリ制御装置72に接続された補助メモリ素子はシス
テムROM43、EEPROM44、およびスクラッチ
・パッドRAM45を有する。ROM43は、診断コー
ド、コンソール・ドライバ・コード、およびブートスト
ラップ・コードの一部のようなある種の標準コードを保
持している。
EEPROM44は、CPU40の動作中に検出された
エラー情報のような情報を保持するのに使用されるが、
この情報は変更を行う必要があるが、電源を切った場合
に失われるべきではない。スクラッチ書パッドRAM4
5は、CPU40によって実行されるある種の動作のた
めに使用されると共に、レール・ユニーク情報(例えば
、ただ1つのCPU40または50に使用することので
きる1つのレールの条件に特有の情報)をゾーン情報(
CPU40と50の両方がアクセスすることのできる情
報)に変換するために使用される。
等価な構成要素53.54および55がメモリ制御装置
75に接続される。システムROM53、EEPROM
54およびスクラッチ・パッドRAM55は、システム
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つからアドレスを選択する
これらのアドレスは、受信機705を介してCPU30
から得ることもできるし、第8図を参照して以下で説明
するDMAエンジン800から得ることもできるし、ま
た再同期化動作の期間中に1つのゾーンから他のゾーン
にある種のバンク・メモリを転送する間に人工的リフレ
ッシュを発生するのに使用されるリフレッシュ再同期化
アドレスから得ることもできる。
CPU30からのデータは、受信機705を介して受け
取られDMAからのデータはエンジン800を介して受
け取られるので、マルチプレクサ702の出力はマルチ
プレクサOの入力である。
マルチプレクサ710の出力は、メモリ相互接続部85
とドライバ715を介してメモリ・モジュール60にデ
ータを与える。ドライバ715はミラー・メモリ制御モ
ジュール75と75′に対して不能にされるが、その理
由は、メモリ・データの1つの組のみが、それぞれメモ
リ・モジュール60と60′に送られるからである。
メモリ相互接続部85に送られるデータは、CPU30
からメモリ・モジュール60に記憶されるべきデータま
たはDMAエンジン800からメモリ・モジュール60
に記憶されるべきデータのいずれかを含んでいる。CP
U30からのデータとマルチプレクサ702からのデー
タはまたこの経路また受信機745とECC修正装置7
50を介してDMAエンジン800に送られる。
マルチプレクサ702からのアドレスは、デマルチプレ
クサ720の入力にまた加えられ、このデマルチプレク
サ720はこれらのアドレスを行/列アドレス部、ボー
ド/バンク・アドレス部分およびシングル・ボード・ビ
ットに分割する。行/列アドレスの22ビツトが11本
の線に多重化される。好適な実施例の場合、22ビツト
の行/列アドレスがドライバ21を介してメモリ・モジ
ュール60に送られる。シングル・ホード9ビツトはド
ライバ722を介してメモリ・モジュール60に送られ
ることが望ましく、他のボード/バンク・アドレスビッ
トはFCC信号と多重化される。
マルチプレクサ725は、メモリ制御装置70に対する
通常のリフレッシュ命令とCPU30からのサイクル・
タイプ情報(すなわち読み出し、書き込み等)およびD
MAサイクル・タイプ情報とを結合する。通常のリフレ
ッシュ命令とリフレッシュ再同期アドレスの両方によっ
て、メモリ・モジュール60がメモリ拳リフレッシュ動
作を開始する。
マルチプレクサ725の出力は、デマルチプレクサ72
0からのボード/バンク・アドレスと共にマルチプレク
サ730に対する入力である。マルチプレクサ730に
対する他の入力は、ECCジェネレータ/チエッカ73
5の出力である。マルチプレクサ730は、入力の1つ
を選択し、これをメモリ・モジュール60に対する時間
分割多重化FCC/アドレス線に載置する。マルチプレ
クサ730は、これらの時間分割多重化線がボード/バ
ンク・アドレスと別の制御情報ならびにFCC情報を、
異なった時間に、搬送するこを可能にする。
FCC情報は、受信機734を介してメモリ・モジュー
ル60から受け取られ、入力としてECCジェネレータ
/チエッカ735に加えられ、メモリーモジュール60
によって発生されたFCCをメモリ制御装置70によっ
て発生されたFCCと比較する。
ECCジェネレータ/チエッカ735に対する他の入力
は、マルチプレクサ740からの出力である。メモリ・
トランザクションが書き込みトランザクションであるか
読み出しトランザクションであるかによって、マルチプ
レクサ740はマルチプレクサ710からメモリーモジ
ュール60に送られたメモリ・データを入力として受け
取るが、または受信機745を介してメモリ・モジュー
ル60から受け取られたメモリ・データを入力として受
け取る。マルチプレクサ740は、ECCジェネレータ
/チエッカ735に対する入力であるこれらのメモリ・
データの組の1つを選択する。
ジェネレータ/チエッカ735は、次に適当なFCCコ
ードを発生し、このコードは、マルチプレクサ730に
送られる以外に、またECC修正装置750にも送られ
る。好適な実施例の場合、ECC修正装置750はメモ
リ書モジュール60から受け取られたメモリ・データ内
の全てのシングル・ビットエラーを修正する。
FCCチエッカ750からの修正されたメモリ・データ
は、次に第8図に示すDMAエンジンに送られると共に
マルチプレクサ752に送られる。
マルチプレクサ752に対する他の入力は、第9図と関
連して以下で説明するエラー処理ロジックからのエラー
情報である。マルチプレクサ752の出力は、ドライバ
753を介してCPU30に送られる。
比較器755は、マルチプレクサ710からメモリ・モ
ジュール60に送られたデータをこのデータがドライバ
715と受信機745を通過した後、このデータのコピ
ーと比較する。チエツクによって、ドライバ715と受
信機745が正しく動作しているかどうかを判定する。
比較器755からの出力はCMPエラー信号であり、こ
の信号はこのような比較エラーがあるか無いかを示す。
第9図においてCMPエラー ロジックに供給される。
第7図の他の2つの構成要素によって、異なった種類の
エラー検出が行われる。構成要素760はパリティ−発
生装置である。メモリ制御装置70によってメモリ・モ
ジュール6oに記憶されるべきデータに発生されたがま
たはメモリ・モジュール60によってメモリ・モジュー
ル6oから読み出されたデータに発生されたFCCデー
タは、パリティ−発生装置7oに送られる。発生装置7
60からのパリティ−信号は、ドライバ762を介して
、比較器765に送られる。比較器765は、発生装置
760からFCCパリティ−信号を制御装置75′によ
って発生された等価のFCCパリティ−信号と比較する
パリティ−発生装置770は、デマルチプレクサ720
から受け取られた行/列アドレス信号とシングル・ビッ
ト・ボード・アドレス信号とについて同じ種類のチエツ
クを実行する。パリティ−発生装置770からのアドレ
ス・パリティ−信号はドライバ772によって比較器7
75に送られ、この比較器775は制御装置75からま
たアドレス・パリティ−信号を受け取る。比較器765
と775の出力はパリティ−・エラー信号であり、これ
らの信号は第9図のエラー・ロジックに供給される。
第8図はDMAエンジン800の基礎を示す。
好適な実施例の場合、DMAエンジン800はメモリ制
御装置70内に位置するが、この場所にある必要はない
。第8図に示すように、DMAエンジン800はデータ
・ルータ(router) 810、D〜IA制御装置
820、およびDMAレジスタ830を有する。ドライ
バ815と受信機816によって、メモリ制御装置70
とクロスリンク90との間にインターフェースが設けら
れる。
DMA制御装置820は、制御ロジック700から内部
制御信号を受け取り、これに応答して、制御信号を送っ
てデータ・ルータ810を適当に構成する。制御装置8
20によって、データ・ルータ810が第7図に示すク
ロスリンク90からのデータと制御信号をメモリ制御7
0回路に送るように、その構成がまた設定される。デー
タ・ルータは、その状態信号をDMA制御装置820に
送り、このD M A #釦装置はこの信号を他のl)
MA情報と共に第9図のエラー・ロジックに伝える。
レジスタ830はDMAバイト・カウンターレジスタ8
32とDMAアドレス・レジスタ836を有する。これ
らのレジスタは、ルータ810を介してCPU40によ
って初期値にセットされる。
次に、DMAサイクルの期間中、制御装置820はルー
タ810を介してカウンタ・レジスタ832をインクリ
メントさせアドレス・レジスタ836をデクリメントさ
せる。制御装置820によって、アドレス・サイクル8
36の内容がDMA動作の期間中ルータ810と第7図
の回路を介してまたメモリ・モジュール6oに送られる
上に説明したように、本発明の好適な実施例の場合、メ
モリ制御装置7o、75.70′、および75′は、ま
たある種の基本的なエラー動作を実行する。第9図は、
このようなエラー動作を実行するハードウェアの好適な
実施例の1例を示す。
第9図に示すように、タイムアウト信号、ECCエラー
信号およびバスのミス比較信号のようなある種のメモリ
制御装置内部信号は、レール(raiI)・エラー信号
、ファイヤーウオール(f irewall )のミス
比較信号およびアドレス/制御エラー信号のようなある
種の外部信号と同様に、診断エラー・ロジック870に
対する入力である。好適な実施例の場合、診断エラー・
ロジック870はクロスリンク90と95を介してシス
テム10の他の構成要素からエラー信号を受け取る。
診断エラーロジック870は、エラー信号とメモリ制御
装置70のベーシック・タイミングから発生された制御
パルス信号からエラー・パルスを形成する。診断エラー
・ロジック870によって発生されたエラー・パルスは
、ある種のタイミング信号に従って診断エラー・レジス
タ880の適当なロケーションに記憶されているある種
のエラー情報を含む。システム故障エラー・アドレス・
レジスタ65は、エラーが発生した場合、CPU40と
50が通信を行っていたメモリ・モジュール60内にア
ドレスを記憶する。
診断エラm−ロジック870からのエラー・パルスはま
たエラー・カテゴリー化ロジック850に送られ、この
エラー・カテゴリー化ロジック850はまたサイクル・
タイプ(例えば読み出し、書き込み等)を示す情報をC
PU30から受け取る。。この情報およびエラー・パル
スから、エラー・カテゴリー化ロジック850はCPU
/IOエラー、DMAエラー、またはCPU/MEM故
障の存在を判定する。
CPU/IOエラーは、バス46のCPU/■0サイク
ルに直接帰するべき動作上のエラーであり、リセットに
関して以下で説明するように、ハードウェアーによって
修復することが可能である。DMAエラーは、DMAサ
イクルの期間中に発生するエラーであり、好適な実施例
の場合、主としてソフトウェアによって処理される。C
PU/MEM故障は、CPUの正しい動作またはメモリ
の内容を保障することのできないエラーである。
エラー・カテゴリー化ロジック850からの出力は、エ
ンコーダ855に送られ、このエンコーダ855は特定
のエラー・コードを形成する。このエラー・コードは、
エラー・ディスエーブル信号が存在する場合、次にAN
Dゲート856を介してクロスリンク90と95に送ら
れる。
エラー・コードを受け取った後、クロスリンク90.9
5.90’  95’はメモリ制御装置にリトライ要求
信号を送る。第9図に示すように、メモリ制御装置70
のエンコーダ895はサイクル・タイプ情報とエラー信
号〔サイクル・クオリファイヤ(qual if 1e
rs)として纏めてに示される〕と共にリトライ要求信
号を受け取る。エンコーダ895は、次にシステム故障
エラー・レジスタ898に記憶するための適当なエラー
・コードを発生する。
システム故障エラー・レジスタ898は、診断エラー・
レジスタ880と同じ情報を記憶しない。
システム故障エラー・レジスタ898とは違って、診断
エラー・レジスタ880はクロスリンク争レールからの
1つの入力のエラーのようなレール・ユニーク情報およ
びメモリ会モジュール6o内の修正不可能なFCCエラ
ーのようなゾーン・ユニーク・データのみを含んでいる
診断エラー・レジスタ898は、またエラーの処理に使
用される幾つかのビットを含んでいる。
これらのビットは、所望のメモリ・ロケーションが見当
たらないことを示すNXNビット、所望にI10ロケー
ションか見当たらないことを示すNXl0ビツト、ソリ
ッド故障ビットおよび過渡的ビットを含んでいる。過渡
的ビットソリッド・ビットはいずれも故障のレベルを示
す。過渡的ビットによって、またシステム故障エラー・
アドレス・レジスタ865が凍結される。
第9図は、メモリ・コントローラ・ステータス・レジス
タ875を示すが、これは技術的にはエラー・ロジック
の一部ではない。レジスタ875は、DMA比率比率部
子77MA比率コード・エラー・ディスエーブル部87
8のエラー・デスエーブル・コード、およびミラー・バ
ス・ドライバ・イネーブル部876のミラー−バス・ド
ライバ・イネーブルコードのようなある種の状態情報を
記憶する。DMA比率コードは、DMAに割り当てるこ
とのできるメモリ帯域幅の部分を特定する。
エラー・デスエーテル・コードによって、ANDゲート
856および従ってエラー・コードを不能にする信号が
与えられる。ミラー・バス・ドライバ・イネーブル・コ
ードによって、ある種のトランザクションに対してミラ
ー・バス−ドライバを動作させる信号を与えられる。
4、 クロスリンク メモリ再同期、DMAおよびI10動作用のデータは、
クロスリンク90と95を通過する。−船釣に、クロス
リンク90および95によって、CPUモジュール30
、CPUモジュール30′I10モジユール100.1
10.120、およびI10モジュール110’  1
10’、120’との間の通信が行われる。(第1図参
照)クロスリンク90と95は、第1θ図に示すように
、並列レジスタ910と直列レジスタ920の両方を含
む。両方のタイプのレジスタは、本発明の好適な実施例
でプロセッサ間の通信を行うために使用される。通常の
動作の期間中、処理システム20と20′は同期され、
データはそれぞれクロスリンク90/95と90’ /
95’の並列レジスタ910を使用して、処理システム
2oと20′との間で交換され、処理システム2oと2
0′が同期されていない場合、ブートストラッピングの
期間中に最も顕著に現れるように、データは直列レジス
タ902によってクロスリンクの間で交換される。
並列レジスタのアドレスは、メモリ・スペースと違って
I10スペースである。メモリ・スペースとはメモリモ
ジュール60内のロケーションのことである。I10ス
ペースとは、Iloおよび内部システム・レジスタのよ
うなロケーションのことであり、こらはメモリ・モジュ
ール60内には存在しない。
I10スペース内では、アドレスはシステム・アドレス
・スペース内に存在するが、ゾーン拳アドレス・スペー
ス内に存在するかのいずれかである。「システム・アド
レス・スペース」という用語は、システム10全体を通
してアクセスすることのできるアドレス、すなわち処理
システム20と20′の両方によってアクセスすること
のできるアドレスのことである。「ゾーン・アドレス・
スペース」という用語は、特定のクロスリンクを含むゾ
ーンによってのみアクセス可能であるアドレスのことで
ある。
第10図に示す並列レジスタは、通信レジスタ906と
I10リセット・レジスタ908を有する。通信レジス
タ906は、ゾーン間で交換される独特のデータを含む
。このようなデータは、メモリ・ソフト・エラーのよう
な通常ゾーンに特有のデータである(メモリモジュール
60と60′が同じエラーを同時に独立して経験すると
いうことは確率の領域外の出来事である) レジスタ906に記憶されるべきデータはユニークなも
のであるため、書き込みの目的のための通信レジスタ9
06のアドレスは、ゾーン・アドレス・スペースになけ
ればならない。もしそうでなければ、処理システム20
と20’は、ロックステップ同期状態にあり同じ一連の
命令を唇間時に実行しているため、ゾーン・ユニーク・
データをゾーンll内の通信レジスタ906のみに記憶
することはできず、これらはこの同じデータをゾーン1
1’内の通信レジスタ906’  (図示せず)にも記
憶しなければならない。
しかし、読み出しのための通信レジスタ906のアドレ
スは、システム・アドレス・スペース内に存在する。し
たがって、同期動作の期間中、両方のゾーンは同時に1
つのゾーンから通信レジスタを読み出すことかでき、次
に他のゾーンから通信レジスタを同時に読み出すことが
できる。
I10リセット・レジスタ908は、システム・アドレ
ス・スペース内に存在する。このI10リセット・レジ
スタは、対応するモジュールかリセット状態にあるかど
うかを示すため、1つのI10モジュールに対して1ビ
ツトを有する。I10モジュールがリセット状態にある
場合、これは効果的にディスエーブルされる。
並列レジスタ91もまた他のレジスタを有するが、これ
らの他のレジスタの理解は本発明を理解するために必要
ではない。
並列クロスリンク・レジスタ920は全てゾーンの固有
のスペース内に存在するが、その理由は、これらが非同
期通信に使用されるが、ゾーンに固有の情報のみを有し
ているかのいずれかであるからである。並列クロスリン
ク・レジスタと並列クロスリンクの目的は9.プロセッ
サ20と20′が例えロック・ステップ同期状態(例え
ば、位相ロック状態およびこれと同じ状態)で動作して
いなくても、これらのプロセッサ20と20′に通信を
行なわせることである。好適な実施例の場合、幾つかの
並列レジスタがあるが、本発明を理解するためにこれら
を説明する必要はない。
制御および状態レジスタ912は、状態および制御フラ
グを含む直列レジスタである。これらのフラグの1つは
O3Rビット913であり、これはブートストラビング
のために使用され、対応するゾーンの処理システムがブ
ートストラブ・プロセスが既に終了しているかまたはこ
のシステムが再同期を行ったかのいずれかの理由のため
に、この処理システムが既にそのブートストラブ・プロ
セスを開始したかどうが、またはそのゾーンに対する動
作システムが現在勤作中であるかとうかを示す。
制御および状態レジスタ912は、またクロスリンク9
0の現在のモードおよび従って処理システム20の現在
のモードを識別するためのモード・ビット914を有す
る。モード・ビットは、再同期モード・ビット915と
クロスリンク・モード・ビット916を含むことが望ま
しい。再同期モード・ビット915は、クロスリンク9
0を再同期スレーブ・モードまたは再同期マスター・モ
ードのいずれかにあるものとして識別する。クロスリン
ク・モード・ビット916は、クロスリンク90をクロ
スリンク・オフもモード、デュプレックス−モード、ク
ロスリンク・マスター・モード、またはクロスリンク・
スレーブ・モードのいずれかにあるものとして識別する
直列レジスタの用途の1つは、状態読み出し動作であり
、この動作によって、1つのゾーンのクロスリンクが他
のゾーンのクロスリンクの状態を読み出すことができる
。状態読み出し要求フラグ918を直列制御状態レジス
タ912に立てることによって、状態情報に対する要求
がクロスリンク90′に送られる。このメツセージを受
け取ると、クロスリンク90′は、その直列制御および
状態レジスタ912′の内容をクロスリンク90に送り
返す。
第11図は、プライマリ・クロスリンク90およびミラ
ー・クロスリンク95内のルート制御および状態信号(
「制御コード」と呼ぶ)用の構成要素の幾つかを示す。
対応するクロスリンクの構成要素は、好適な実施例では
、クロスリンク9Q’および95′内に存在する。これ
らのコードは、メモリ制御装置70と75およびモジュ
ール相互接続部130.132.130′および132
′との間に送られる。
第12図は、ルート・データおよびアドレス信号を送る
のに使用される好適な実施例のプライマリ・クロスリン
ク90の構成要素を示す。対応するクロスリンクの構成
要素は、クロスリンク95.90′および95′内に存
在する。
第11図は、プライマリ・クロスリンク90とミラー・
クロスリンク95の両方に対する構成要素を示すが、こ
れらの構成要素の間には重要な相互接続部があるため、
ハードウェアは同じである。
プライマリ・クロスリンク90の構成要素と同じミラー
・クロスリンク95の回路の構成要素は同じ番号で示す
が、ミラー制御装置の場合には番号の次にrmjの文字
を付ける。
第11図および第12図を参照して、これらの構成要素
はラッチ、マルチプレクサ、ドライバおよび受信機を含
む。ラッチ933および933mのような一部のラッチ
は遅延要素として動作し、クロスリンクの正しいタイミ
ングを保証し、これによって同期を維持する。第11図
に示すように、メモリ制御装置70からの制御コードは
、バス88を介してラッチ931に送られ、次にラッチ
932に送られる。このよらなラッチを行う理由は、適
当な遅れを与えてメモリ制御装置70からのデータがメ
モリ制御装置70′からのデータと同時にクロスリンク
90を通過することを保証することである。
もしメモリ制御装置70からのコードがクロスリンク9
0’を介して処理システム20′に送られるべきであれ
ば、ドライバ937が起動される。
メモリ制御装置70からの制御コードは、またラッチ9
33を通過してマルチプレクサC3MUXA935に入
る。もし制御コードがクロスリンク90′からプライマ
リ・クロスリンク90に受け取られれば、これらの経路
は受信装置936を通ってラッチ938およびまたマル
チプレクサ935に至る。
マルチプレクサ935に対する制御コードによって、デ
ータのソースが決定される、すなわちこれがメモリ制御
装置70からきたものであるかまたはメモリ制御装置7
0′からきたものであるかが決定され、これらのコード
はマルチプレクサ935の出力に加えられる。この出力
は、再び正しい遅延目的のため、ラッチ939の記憶さ
れ、もしこれらのコードがモジュール相互接続部130
に送られるべきであれば、ドライバ940が起動される
デ°−夕およびアドレス信号の経路は、第12図に示す
ように、第11図に示す制御信号の経路と若干類似して
いる。これらの相違点は、いずれの1つのトランザクシ
ョンの期間中においてもデータおよびアドレスはクロス
リンク90と95を介して1つの方向のみに流れるが、
制御信号はそのトランザクションの期間中に双方向に流
れるという事実を反映している。これと同じ理由のため
、パス88と89のデータ線は双方向であるが、制御方
向は双方向ではない。
バス88を介してメモリ制御装置70から供給されるデ
ータとアドレスはラッチ961に入り、次いでラッチ9
62に入り、次いでラッチ964に入る。第11図の場
合と同様に、第12図のラヨチによって同期を維持する
ための正しいタイミングが与えられる。メモリ制御装置
70′から出力されるデータは受信装置986によって
バッファされ、ラッチ988に記憶され、次にマルチプ
レクサMUXA966の入力に向かう。マルチプレクサ
966の出力は、ラッチ986に記憶され、もしドライ
バ969か起動されれば、モジュール相互接続部130
に送られる。
第11図はメモリ制御装置72送られるべき制御コード
の経路を示す。モジュール相互接続部130からのコー
ドは、先ずラッチ941に記憶され、次にマルチプレク
サC8MUXC942に与えられる。マルチプレクサ9
42は、また並列クロスリンク・レジスタ910から制
御コードを受け取り、ラッチ943に転送するため並列
レジスタ・コードまたはラッチ941からのコードのい
ずれかを選択する。もしこれらの制御コードがクロスリ
ンク90′に転送されるへきであれば、ドライバ946
が起動される。クロスリンク90’からのコード(およ
び従ってメモリ制御装置70’からの制御コード)は受
信機947いよってバッファされ、ラッチ948に記憶
され、入力とじてマルチプレクサC8MUXD945に
加えられる。
マルチプレクサC8MUXD945は、またラッチ94
3の内容を記憶しているラッチ944の出力を入力とし
て受け取る。
マルチプレクサ945は、モジュール相互接続部130
からのコードまたはクロスリンク90’からのコードの
いずれかを選択し、これらの信号を入力としてマルチプ
レクサC8MUXE949に加える。マルチプレクサ9
49は、またデコード・ロジック970からのコード(
再同期の期間中に発生するバルク・メモリの転送のため
に)、直列クロスリンク・レジスタ920からのコード
、または所定のエラーコードERRを入力として受け取
る。マルチプレクサ949は、次に適当に制限されてこ
れらの入力の幾つかを選択してラッチ950に記憶する
。もしこれらのコードがメモリ制御装置70に送られる
べきであれば、次にドライバ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に対するシングル・レール・インターフェースはデ
ータとアドレスに対して同じ結果を達成する。
第12図に示すデータとアドレスの流れは第l1図の制
御信号の流れと同じである。モジュール相互接続部13
0からのデータとアドレスは、ラッチ972に記憶され
、次に入力としてマルチプレクサMUXB974に入力
として加えられイ並列レジスタ910からのデータによ
って別のメカかマルチプレクサ974に加えられる。マ
ルチプレクサ974の出力は、マルチプレクサMUXC
976に対する入力であり、このマルチプレフカMUX
C976は、またもともとメモリ制御装置70から送ら
れてラッチ961に記憶されていイデータとアドレスを
受け取る。マルチプレクサ976は、次にこれらの入力
の1つを選択してラッチ798に記憶する。もしモジュ
ール相互接細部130から入力されたものであれ、メモ
リ開切装置70から入力されたものであれ、もしデータ
とアドレスがクロスリンク90’に送られるべきであれ
ば、ドライバ984が起動される。
クロスリンク90′から入力されたデータは保信装置9
86によってバッファされラッチ988に記憶されるが
、このラッチ988によってまたマルチプレクサMUX
D982に対する入力が与えられる。マルチプレクサM
UXD982の他方の入力はラッチ980の出力であり
、このラッチ988はラッチ978から入力されたデー
タとアドレスを有している。マルチプレクサ982は次
にその入力の1つを選択し、こらは次にラッチ900に
記憶される。もしデータまたはアドレスがメモリ制御装
置70に送られるべきであれば、ドライバ922が起動
される。シリアル・レジスタ920からのデータはドラ
イバ944を介してメモリ制御装置70に送られる。
クロスリンク90を通るデータ、特に第11図および第
12図の両方のエクソンレオール(xonrec素子を
通るデータは、デコード・ロジック970、デコード・
ロジック971、デコードロジック996、およびデコ
ード10シツク998によって発生される幾つかの信号
によって制御される。
適当な入力ソースを選択するため、このロジックによっ
て、適当な入力ソースを選択するために、マルチプレク
サ935.942.945.949.966.974.
976、および982を制御する信号が与えられる。更
に、このデコード・ロジックは、またドライバ940.
946.951.969.984.992、および99
4を制御する。
制御信号の大部分は、デコード・ロジック998によっ
て発生されるが、これらの一部はデコード−ロジック9
70.971.970m、971mおよび996によっ
て発生される。デコード・ロジック998.970およ
び970mは、データとコードがそれ自身のゾーンから
受け取られるか他のゾーンから受け取られるかを制御す
るのに必要なデータとコードをこのロジックが受け取る
ことを保証する位置に持続される。
デコード・ロジック971.971mおよび966の目
的は、ドライバ937.937mおよび984が適切な
状態にセットされることを保証することである。この「
初期デコード」によって、データ・アドレスとコードが
全てのケースで適切なりロスリンクに送られることを確
認する。このような初期デコード・ロジックがなければ
、クロスリンクは全てそれらのドライバが不能にされた
状態におかれる可能性がある。メモリ制御装置のドライ
バがまた不能にされれば、そのクロスリンクは決してア
ドレス、データおよび制御コードを受け取らず、そのク
ロスリンクに接続されているI10モジュールの全てを
効率的に不能にする。
デコード−ロジック970.971,970m、971
m、および998によって発生されたドライバ制御信号
を説明する前に、これらのゾーン、従ってクロスリンク
90と95がとることのできる異なったモードを理解す
る必要がある。第13図は、異なった状態AないしFお
よび各モードに対応するこれらの状態を説明する表であ
る。
開始時およびその他の場合、両方のゾーンは状態Aにあ
り、この状態Aはこれら両方のゾーンに対するOFFモ
ードとして知られる。このモードの場合、両方のゾーン
のコンピュータ・システムは独立して動作している。こ
れらのゾーンの1つの動作システムが他方のゾーンのI
loと通信を行う能力を要求し、その要求が受け入れら
れた後、これらのゾーンは状態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にアクセスする、更に、このクロスリンク・デ
コード・ロジックは、またデータ・トランザクションの
期間中にメモリ制御装置7oと75から送られたアドレ
スの一部を受け取って分析し、クロスリンク・マルチプ
レクサとドライバの状態をどのようにして設定するかを
クロスリンク・デコード・ロジックに対して更に指示す
アドレス情報を取り出す。
マルチプレクサの状態を設定するのに必要な情報は、−
変異なったモードとトランザクションを理解すると、か
なりはっきりする。行うべき唯一の判断はデータのソー
スである。従って、クロスリンク90と95がスレーブ
・モードにある場合、マルチプレクサ935.935m
、および966はゾーン11からデータ・アドレスとコ
ードを選択する。もしクロスリンク90と95が完全に
デュプレックス・モードにあり、Iloの命令のアドレ
スがゾーン11のIloに接続された装置に対するもの
であり、影響を受けたマルチプレクサとのクロスリンク
がクロスオーバー・モードにあれば、これらのマルチプ
レクサはまた他方のゾーンからデータ、アドレスおよび
コードを選択する。
クロスオーバー・モードの場合、モジュール相互接続部
に送られるべきデータはチエツクのため他方のゾーンか
ら受け取られるべきである。好適な実施例の場合、モジ
ュール相互接続部130はゾーン11のプライマリ・レ
ールからデータ、アドレスおよびコードを受け取り、モ
ジュール接続部は、ゾーン11’のミラー・レールから
データ、アドレスおよびコードを受け取る。または、モ
ジュール相互接続部132はゾーン11’のプライマリ
・レールからデータ、アドレスおよびコードを受け取る
ことができ、これによって、一方のゾーンのプライマリ
・レールを他方のゾーンのミラー・レールと比較するこ
とが可能になる。
マルチプレクサ945.945m、982は、データの
ソースであるいずれかのゾーンからデータ、アドレスお
よびコードを受け入れるようにセットされる。このこと
は、全てのクロスリンクが完全にデュプレックス・モー
ドにあり、データ、アドレスおよびコードがI10モジ
ュールから受け取られる場合と、クロスリンクが再同期
スレーブ・モードであり、データ、アドレスおよびコ−
ドが他方のゾーンのメモリ制御装置から受け取られる場
合の両方について、真実である。
もしメモリ制御装置7oおよび75からのアドレス情報
が、応答データとコードのソースがクロスリンク自身の
並列レジスタ910であることを示せば、マルチプレク
サ942.942m、および974はこれらのレジスタ
からデータとコードを選択するようにセットされる。同
様に、もしメモリ制御装置70および75からのアドレ
ス情報が応答データのソースはクロスリンク自身のシリ
アル・レジスタ920であることを示せば、マルチプレ
クサ949と949mはデータとコードをこれらのレジ
スタから選択するようにセットされる。
もしこの情報がメモリ再同期動作期間中の制御コードで
あれば、マルチプレクサ949と949mはデコード・
ロジック970と970mからデータを選択するように
またセットされ、もしEXCLUSIVE  ORゲー
ト96oと960mがクロスリンク90と95を介して
転送されたデータの間で比較のミスを識別すれば、ER
Rコードを選択するようにセットされる。この後者の場
合、マルチプレクサ949と949mの制御は、クロス
リンクロジックからではなくてEXCLUS IVBO
Rゲート960と960mから行われる。マルチプレク
サ949と949mは、クロスリンク・レジスタ910
が要求された場合には、これらのレジスタからコードを
また選択し、これらのコードが要求された場合には、マ
ルチプレクサ945と945mの出力をまた選択する。
マルチプレクサ945と945mは、それぞれマルチプ
レクサ942と942mからの出力かまたはそれぞれク
ロスリンク90′と95′からのI10コードがのいず
れかを選択する。
マルチプレクサ976は、I10モジュールとのトラン
ザクションの場合には、モジュール相互接続部139か
らデータとアドレスを選択するが、またはデータとアド
レスがIloに対してかまたはメモリの再同期の期間中
かのいずれかにクロスリンク90′に送られるべきであ
る場合、メモリ制御装置90からのデータとアドレスを
選択するかのいずれかである。
ドライバ937と937mは、クロスリンク90と95
がデュプレックス・モード、マスター・モードまたは再
同期マスター・モードにある場合、動作される。ドライ
バ940と940mは、ゾーン11のI10トランザク
ションの場合に動作される。ドライバ946と946m
は、クロスリンク90と95がデュプレックス・モード
またはスレーブ・モードの場合に動作される。ドライ/
<951と951mは常に動作されている。
ドライバ969はゾーン11に対するI10書き込み期
間中に動作される。ドライバ984は、クロスリンク9
0がデータとアドレスをゾーン11’のIloに送って
いる場合、またはクロスリンク90が再同期マスター・
モードにある場合に動作される。受信機986はクロス
リンク90’からデータを受け取る。ドライバ992と
994は、データがメモリ制御装置7oに送られている
場合に動作される。ドライバ994は、シリアル・クロ
スリンク・レジスタ910の内容が読み出されている場
合に動作され、ドライバ992は全ての他の読み出し期
間中に動作される。
5、発振器 両方の処理システム20と20′が各々同じ機能を完全
デユープレックス・モードで実行している場合、CPU
モジュール30と30′が同じ速度で動作を実行するこ
とが避けられない、もしそうでなければ、処理時間の大
部分は、I’Oおよびインタープロセッサのエラーのチ
エツクのために処理システムの20と20′を再同期さ
せることに消費されてしまう。処理システム20と20
′の好適な実施例の場合、これらのシステムの基本的な
りロック信号は相互に同期されて位相ロックされている
。故障許容コンピュータ・システムIOは、処理システ
ム20と20′に対するクロック信号の周波数を制御し
、各処理システムに対するクロック信号の間の位相差を
最小にするために、タイミング番システムを有している
第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の基本発振器信号を発生する。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に送られる。
クロック・ロジック・バッファ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の他方の出力は、位相エラー信号23
6であり、これは可能性のある同期の故障を示す。
第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の電圧水準は、゛また電圧比較器23
4に対する入力であり、これらの位相差は位相の進みと
遅れの許容範囲を表す電圧V、。、1およびV T e
 I tである。もしこの位相差が許容範囲であれば、
PHASE  ERROR信号は活性化きれない。もし
この位相差が許容範囲以外であれ1:PHASE  E
RROR信号236は活性化さtクロック・デコーダ2
20を介してクロスリンク95に送られる。
6、  I10モジュール 第17図はI10モジュール100の好適な実施例を示
す。このI10モジュール100の動作の原理は、他の
I10モジュールにも同様に適茹することができる。
第18図はファイヤウオール(firewall) 1
00(の好適な実施例の構成要素を示す。フッイヤウオ
ール1000は、第17図に示すモジュール相互接続部
130に対する16ビツトのバス・インターフェース1
810とバス1020に接続するための32ビツトのバ
ス・インターフェース1820を有する。インターフェ
ース1.810と1820は内部ファイヤウオール・バ
ス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モジュールに
対して書き込まれたデータを実質的に同時にファイヤウ
オール1000と1010で入手可能にしているこれら
のCPUモジュール30と30’かロックステップ同期
の状態にあるからである。
ファイヤウオール比較回路1840は、CPUモジュー
ル30と30′から受取ったデータのみをチエツクする
だけである。I10装置からCPUモジュール30と3
0′送られたデータは、共通の供給元を有し、従ってチ
エツクを必要としない。
その代わり、I10装置から受取られCPUモジュール
30と30′に送られるデータは、EDC/CRC発生
装置1850によって実行される周期的冗長性チエツク
(CRC)コードのようなエラー検出コード(EDC)
によってチエツクされる。E D C/CRC発生装置
1850は、また内部ファイヤウオール・バス1815
に接続される。
EDC/CRC発生装置1850は、I10装置によっ
て使用されるのと同じEDC/CRCコードを発生して
チエツクを行う。I10モジュール100は2つのED
Cを発生することが望ましい。一方のEDCはまたE 
D C/CRCでもよく、これはモジュール100が接
続されているアサ−ネット(Ethernet)パケッ
ト・ネットワークのようなネットワークに対するインタ
ーフェースに使用される(第17図の構成要素108に
参照)。
他方のEDCは第17図のディスク−インターフェース
1072のようなディスク拳インターフェースに使用さ
れる。
CPUモジュール30とI10モジュール100との間
でEDC/CRCを適応することは必要でないが、その
理由は、モジュールゆ相互接続部が2重になっているか
らである。例えばCPUモジュール30の場合、クロス
リンク90はモジュール相互接続部30を介してファイ
ヤウオールtoo。
と通信を行い、クロスリンク95はモジュール相互接続
部132を介してファイヤウオール1000と通信を行
う。
アサ−ネット・ネットワーク1082から受け取られた
メツセージは、第17図に示すネットワーク制御装置1
080によってEDC/CRCの有効性をチエツクされ
る。EDC/CRCが完全であるデータは、これもまた
第17図に示すローカルRAMI 060に書き込まれ
る。ローカルRAM1060内の全てのデータは、DM
Aを使用してメモリ・モジュール60に転送される。
DMA制御装置1890は転送の調整を行い、EDC/
CRC発生装置に転送中のE D C/CRCによって
符号化されたデータの有効性をチエツクさせる。
I10装置との大部分のデータの転送はDMAによって
行われる。データはメイン・メモリとI10バッファ・
メモリとの間を移動する。データがメイン・メモリから
I10バッファメモリに移動する場合、EDC/CRC
を付加してもよい。
データかI10バッファメモリからメイン・メモリに移
動する場合、EDC/CRCはチエツクを受けてメイン
・メモリに移動してもよく、または取り除かれてもよい
。データがI10バッファメモリからディスクまたはア
サ−ネット・アダプタのような外部装置を介して移動さ
れる場合、EDC/CRCは局部的または離れた位置に
ある受信ノードでチエツクされてもよく、またはその両
方でチエツクされてもよい。メモリ・データ・バケット
は遠(の位置にあるノードまたはI10モジュールのロ
ーカル・インターフェースによって発生されたそれらの
EDC/CRCを有してもよい。
この動作によって、I10モジュールlOoのようなシ
ングル・レール・システムに存在する、またはこれを介
して転送中のデータがエラー検出コードによってカバー
されることが保証され、このエラー検出コードはこのデ
ータが最終的に通過する通信メディアと少なくとも同じ
(らい信頼性のあることが望ましい。例えば、同期プロ
トコールを処理するような異なったI10モジュールは
、適当なプロトコールのEDC/CRCコードを発生し
てチエツクするEDC/CRC発生装置を有することが
望ましい。
一般的に、DMA制御装置1890はアドレスされてい
る共有のメモリ制御装置105とローカルRAM106
0に特有のDMAの動作の部分を取扱う。32ビツト・
バス1020は2つの異なったモードで駆動される。D
MAのセットアツプの期間中、DMA制御装置1890
は標準非同期マイクロプロセッサ・バスとしてバス10
20を使用する。DMAの動作が発生するローカルRA
M1060のアドレスは共有のメモリ制御装置1050
とDMA制御装置1890に供給される。実際のDMA
の転送の期間中、DMA制御装置1890はDMA制御
線1895に非同期の状態でバス1020を駆動させる
。共有のメモリ制御装置1050はバス・サイクル毎に
32ビツトのデータ・ワードをバス1020に転送し、
DMA制御装置1090はどれくらいの数のワードの転
送が残っているかについての情報を得る。共有のメモリ
制御装置1050は、またローカルRAM1060を制
御して次のDMAアドレスを発生する。
I10モジュール(100,110,120)はそれら
自身のローカルRAM1060に対する読み出し/書込
み動作を制御する責任を負う。
CPUモジュール30はメモリ・アレイ60との転送動
作を制御する責任を負う。メモリ制御装置70と75の
DMAエンジン800(第8図に示す)は、CPUモジ
ュール30に対するDMAの動作を管理する。このよう
な作業の分割によって、いずれかのモジュールのDMA
ロジックの故障がゾーン11または11’のいずれかの
他のモジュールのデータの健在性を低下させることを防
止する。
トレースRAM1872はトレースRAM制御装置18
70の機能を以下で詳細に説明する。簡単に言えば、故
障が検出され、CPU40.40′50および50′と
CPUモジュール30および30′がそのことを通知さ
れると、コンピュータ・システムlO全体の種々のトレ
ースRAMが以下で説明するある種の機能を実行する。
トレースRAMとの通信はトレース・バス1095で行
われる。トレースRAM制御装置1870は、トレース
・バス1095からの信号に応答して、トレースRAM
1872に記憶を停止させるかその内容をソレース・バ
ス1095放出させる。
32ビツトの並列バスであることが望ましいI10モジ
ュール・バス1020は、ファイヤウオール1oooお
よび1010に接続されると共にI10モジュール10
0の他の構成要素にも接続される。共有のメモリ制御装
置1050は、■10モジュール100のI10モジュ
ール・バス1020にもまた接続される。共有のメモリ
制御装置1050は共有のメモリ・バス1065によっ
てローカル・メモリ1060に接続され、この共有のメ
モリ・バス1065は32ビツトのデータを搬送するこ
とが望ましい。ローカル・メモリ1060は256キロ
バイトのメモリを有するRAMであることが望ましいが
、このRAM1060は任意のサイズでよい。共有のメ
モリ制御装置1050とローカルRAM1060によっ
て、I10モジュール100に対する記憶能力が与えら
れる。
ディスク制御装置1070によって、第1図のディスク
1075および1075’のようなディスクに対して標
準のインターフェースが設けられる。ディスク制御装置
1070は、ローカルRAM1060に使用するためま
たはI10モジュール・バス1020との通信を行うた
めに共有のメモリ制御装置1050にまた接続される。
ネットワーク制御装置1080はネットワーク−インタ
ーフェース1082によってETHERNETネットワ
ークのような標準ネットワークに対してインターフェー
スを与える。ネットワーク制御装置1080は、ローカ
ルRAM1060とI10モジュール・バス1020の
両方に対してインターフェースとして機能する共有のメ
モリ制御装置1050にまた接続される。しかし、I1
0モジュール・バス1020の特定の組織または構造に
ついては何等の要求も存在しない。
PCIM(電源および冷却用インターフェース・モジュ
ール)サポート・エレメント1030は、I10モジュ
ール・バス1020に接続されると共にASCIIイン
ターフェース103に接続される。PCIMサポート・
エレメント1030によって、処理システム20は電源
システムの状態(すなわちバッテリ・レギュレータ等)
と冷却システム(すなわちファン)を監視してこれらの
適切な動作を保証することが可能になる。PCIMサポ
ート・エレメント1030は、バッテリの電圧が許容で
きない程度に低い等のある種の故障または潜在的な故障
の徴候が存在する場合のみ、メツセージを受け取ること
が望ましい。全ての電源および冷却サブシステムを周期
的に監視するために、CPIMサポート・エレメント1
030を使用することもまた可能である。または、PC
IMサポート・エレメント1030は、直接ファイヤウ
オール1000と1010に接続されてもよい。
診断マイクロプロセッサ1100が、またI10モジュ
ール・バス1020に接続される。−船釣に、診断マイ
クロプロセッサ1100は、故障が検出された場合、ト
レースRAM1872のようなトレースRAMからエラ
ー・チエツク情報を集めるために使用される。このデー
タは、それぞれファイヤウオール1000と1010を
介してトレース・バス1095と1096に集められる
と共にモジュール・バス1020を介してマイクロプロ
セッサ1100に集められる。
D、インタープロセッサとインターモジュールの通信 1、 データ経路 コンピュータ・システム10の構成要素は、それら自身
によって故障許容システムを構成するものではない。正
常な動作の期間中および故障の検出と修正の動作の期間
中に通信を可能にする通信経路とプロトコールか必要で
ある。このような通信号に対するキーは、クロスリンク
経路25である。クロスリンク経路25は、並列リンク
、直列リンク、および既に説明したクロック信号によっ
て構成される。これらは19図に示される。並列リンク
は、2組の同じデータおよびアドレス線、制御線、割り
込み線、符号化エラー線、および1本のソフト・リセッ
ト・リクエスト線を有する。
データおよびアドレス線と制御線は、モジュール相互接
続部130と132(または130′と132’)また
はメモリ・モジュール60(60’からCPUモジュー
ルの間で交換される情報を有している。
割り込み線は、I10サブシステム(モジュ−ル100
.110.120.100’  110’および120
’)で使用可能な割り込み水準の各々に対し1本の線を
有することが望ましい。これらの線はクロスリンク90
.95.90′、および95′によって共有される。
符号化エラー線は、両方のゾーンに対するコンソールr
HALT」要求を同期させる複数のコードを有すること
が望ましく、これらの複数のコードの1つは両方のゾー
ンに対してCPUエラーを同期させるコード、1つは他
方のゾーンに対してCPU/メモリの故障の発生を示す
コード、1つは両方のゾーンに対してDMAエラーを同
期させるコート、および1つはクロック位相エラーを示
すコードである。各ゾーン11または11′からのエラ
ー線は、ゾーン11に対するORゲートl990または
ゾーン11’に対するORケート1990’のようなO
Rゲートに対する入力である。各ORゲート2の出力に
よって、他方のゾーンのクロスリンクに対する入力が与
えられる。
欠陥許容処理システムlOは、過渡的な故障に関係な(
デュアル・レール・システムとして動作を継続するよう
に設計されている。I10サブシステム(モジュール1
00.110.120.100’   110’、12
0’)は、また過渡的なエラーまたは故障を経験しても
動作を継続することができる。好適な実施例の場合、フ
ァイヤウオール比較回路1840の検出したエラーによ
って、同期化されたエラー・レポートがCPUの管理す
る動作に関して経路25を介して行われる。
CPU30と30′のハードウェアは経路25を介して
同期化されたソフト・リセットを行い、故障のある動作
をもう一度行う。DMAの管理する動作の場合、同じエ
ラーの検出によって、同期割り込みか経路235を介し
て行われ、CPU40.50.40′、および50′の
ソフトウェアはDMAの動作を再び開始する。
ある種の過渡的なエラーは、動作を完全デュプレックス
の同期形態で継続するように直ちに修復されるものでは
ない、例えば、メモリ・モジュール60に制御エラーが
発生すると、その結果メモリ・モジュール60に未知の
データか生じる。この場合、CPUとメモリ・エレメン
トは最早フェール・セーフeシステムの一部として信頼
性のある機能は果たすことはできず、従ってこれらを取
り外さなければならない。メモリ・アレー60はそこで
、CPUとメモリ・エレメントが再びメモリに取り付け
られる前に、メモリの再同期を行わなければならない。
経路25の符号化エラー線のCPUメモリ故障コードは
、CPU30のCPUとメモリ中エレメントが故障して
いることをCPU30′に知らせる。
サイクル・タイプ、エラー・タイプおよび準備完了状態
の組み合わせを示す制御線によって、CPUモジュール
(30および30′)とI10モジュールとの間にハン
ドシェーキングが行われる。上で説明したように、実行
されているバス動作のタイプがサイクル・タイプによっ
て決められる。すなわち、これらは、CPU  Ilo
の読み出し、DMAの転送、DMAのセットアツプまた
は割り込みベクトルの要求である。エラー・タイプによ
ってファイヤウオールの比較ミスまたはCRCのエラー
が決められる。「準備完了」のメツセージはCPUとI
10モジュールとの間に送られて要求された動作の完了
を示す。
シリアル・クロスリンクは状態読み出しのためのシリア
ル・データの転送、ループバック、およびデータの転送
を行うために2本の線を2組有している。
交換されるクロック信号は、位相ロック・クロック信号
CLKCHとCLCK’  H(遅延した)。である。
第20A図乃至第20D図は、異なった動作期間中にデ
ータが通過するCPUモジュール30および30′とI
10モジュール100および100′の構成要素のブロ
ックを示す。これらの構成要素の各々は前に説明したも
のである。
第20A図は、共有のメモリ制御装置1050(105
0’)からのレジスタ拳データのCPUのI10レジス
タによる読み出し動作のようなI10モジュール100
からのデータの一般的なCPU  Iloによるデータ
読み出し動作のためのデータ経路を示す。このような動
作はローカル・データの読み出しと呼び、これをローカ
ル・メモリ1060からのDMAによるデータの読み出
しと区別し、このローカル・メモリ1060は通常内部
装置の制御装置からのデータを有しているローカル・デ
ータは共有のメモリ制御装置1050(1050’)を
介して転送されるようにローカルRAM1060  (
1060’)に記憶されているものと仮定する。経路が
1つの場合、データはファイアウオール1000、モジ
ュール相互接続部130を介してクロスリンク9oに流
れる。第12図から分かるように、クロスリンク9oは
ファイアウオール 1000からメモリ制御装置90に
流れるデータを遅延させ、その結果、クロスリンク90
′に対するデータは、データがメモリ制御装置70に加
えられるのと同時に、このメモリ制御装置70に加えら
れ、従って、処理システム20と20′が同期状態のま
まであることが可能になる。このデータは、次に内部バ
ス46と40′によってメモリ制御装置70および70
′からCPU40および40′に進む。
同じ経路を使用してCPU50と50′にデータを読み
込む。共有のメモリ制御装置1050からのデータはフ
ァイヤウオール1oioを介してクロスリンク95に進
む。この時、データはクロスリンク95′と遅延装置を
介してクロスリンク95の内部の両方に流れる。
CPUl0読み出し動作は、また共有のメモリ制御装置
1050’とI10装置100′のローカルRAMを介
して処理システム20′のI10処置から受け取られた
データに対してもまた実行されることができる。
I10モジュール100.110、および120は同じ
ものであり、それぞれI10モジュール100’、11
0’   120’に対応するが、対応するI10モジ
ュールはロックステップ同期状態にはない。CPU  
I10読み出しのためメモリ制御装置1050’とロー
カルRAMI 060’行う使用して、データは先ずク
ロスリンク90’と95′に進む。残りのデータ経路は
メモリ制御装置1050からの経路と同じである。デー
タはクロスリンク90’と95′からメモリ制御装置7
0′と75′を経由して最終的にそれぞれCPU40′
と50’に進む。同時に、データはそれぞれクロスリン
ク90と95を横切って進み、次に遅延エレメントを経
由しないでそれぞれCPU40と50に進み続ける。
第20B図は、ローカル・データのCPU  Ilo書
き込み動作を示す。このようなローカル・データはCP
U40.50.40′および50′からI10モジュー
ル100のようなI10モジュールに転送される。この
ような動作の1つの例は、共有のメモリ制御装置105
0におけるレジスタAに対する書き込みである。CPU
40によって転送されるデータは同じ経路に沿って進む
が、その方向はCPU  Iloの読み出し期間中のデ
ータの方向と逆の方向である。特に、このようなデータ
はバス46、メモリ制御装置70、種々のラッチ(同期
を行うため)、ファイヤウオール1000、およびメモ
リ制御装置1050を通過する。CPU50’からのデ
ータは、またCPUl10の読み出しの経路を逆の方向
に流れる。特に、このようなデータは、バス56′、メ
モリ制御装置75′クロスリンク95′クロスリンク9
5を経由しくファイヤウオール1o1oに行く。
上で述べたように、ファイヤウオール1oooと101
0はIloの書き込み動作の期間中にデータをチエツク
して記憶する前にエラーを調べる。
書き込みが他方のゾーンのI10モジュールに対して行
われる場合、同じ動作か行われる。しかし、CPU50
と40′からのデータがCPU50′と40からのデー
タの代わりに使用される。
CPU50と40′からのデータは対称の経路を介して
共有のメモリ制御装置1050’に転送される。CPU
50と40′からのデータはファイヤウオール1000
’と1010’によって比較される。Ilo書き込みデ
ータに対してサービスを行うために異なったCPUの対
が使用される理由は、完全デュプレックス・システムで
正常に使用している期間中に全てのデータ経路をチエツ
クするためである。各ゾーンに対するインターレール・
チエツクはメモリ制御装置70.75.70′および7
5′で前に実行された。
第20C図は、DMA読取り動作に対するデータ経路を
示す。メモリ・アレイ600からのデータは、同時にメ
モリ制御装置70と75に入り、次いでクロスリンク9
0と95に入る。クロスリンク90はファイヤウオール
1000に転送されたデータを遅延させ、その結果、ク
ロスリンク90と95′からのデータは実質的に同じ時
間にファイヤウオール1000と1010に到着する。
CPU  I10書き込み動作と同様に、種々のクロス
リンクに対するデータの4つのデータ/コピーが存在す
る。ファイヤウオールでは2つのコピーのみが受け取ら
れる。ゾーン11に対する読み出しを実行する場合には
、異なった対のデータが使用される。DMAの書き込み
動作に対するデータ経路は第20D図に示され、これら
はCPUl10の読み出しに対するデータと同じである
特に、共有のメモリ制御装置1050’からのデータは
、ファイアウオール1000’、クロスリンク90′ 
(遅延を伴う)、メモリ制御装置70′を経由してメモ
リ・アレイ600′に進む。同時に、このデータは、フ
ァイヤウオール1010’クロスリンク95′ (遅延
を伴う)およびメモリ制御装置75′を通過し、この時
これはインターレール・エラー・チエツクの期間中にメ
モリ制御装置70′からのデータと比較される。CPU
110の読み出しの場合のように、DMA書き込み動作
中のデータは、共有のメモリ制御装置1050を介して
交互に同じ動作に入ってもよい。
クロスリンク90′からのデータは、またクロスリンク
90とメモリ制御装置70を通過してメモリ・アレイ6
00に行く。クロスリンク95′からのデータは、クロ
スリンク95とメモリ制御装置75を通過し、この時こ
れは同時に行われるインターレール・チエツクの期間中
にメモリ制御装置70′からのデータと比較される。
第20E図は、メモリ再同期(resync)動作のた
めのデータ経路を示す。この動作の場合、メモリ・アレ
イ60と60′の両方の内容は、相互に同じように設定
されなければならない。メモリの再同期の場合、メモリ
・アレイ600′からのデータは、DMAに制御されて
メモリ制御装置70′と75′を通過し、次にそれぞれ
クロスリンク90′と95′を通過する。このデータは
、次にメモリ600アレイに記憶される前に、それぞれ
メモリ制御装置70と75に入る。
2゜ リセット システム10に関する上記の議論は、リセットに関する
多くの異なった必要性を考慮して行われた。議論しなか
ったある種の場合には、リセットは、電源が最初にシス
テム10に印加される場合等の標準的な機能のために行
われる。多くのシステムは1つのリセットを有し、この
リセットは常にプロセッサをある所定の状態または最初
の状態にセットし、従ってプロセッサの命令の流れを中
断する。しかし、大部分の他のシステムと異なって、シ
ステム10のリセットは、もし絶対的に必要でなければ
、CPU40.40’、50および50′による命令の
実行の流れに影響を及ぼさない。更に、システムIOの
リセットは、正常な動作を回復するためにリセットされ
る必要のある部分のみに影響を及ぼす。
システムlOのリセットの他の特徴は、これらのリセッ
トの抑制である。故障許容システムの最も重要な考慮す
べき事項の1つは、もしある機能が故障しても、その機
能はシステムの動作を停止してはならないことである。
この理由のため、システムのいかなる1つのリセットも
、ゾーン11と11’が直接に協力しないなら、ゾーン
11と11’の両方の構成要素を制御することはできな
い。従って、完全デュプレックス・モードで動作してい
るの場合、ゾーン11内の全てのリセットはゾーン11
’内のリセットとは独立している。
しかし、システムIOがマスター/スレーブ・モードに
ある場合、スレーブゾーンはマスターゾーンのリセット
を使用する。更に、システムlo内のいかなるリセット
もメモリ・チップの内容に影響を及ぼさない。従って、
キャッシュ・メモリ42及び52、スクラッチ・パッド
・メモリ45および55またはメモリ・モジュール6o
のいずれもリセットによっていかなるデータも失うこと
はない。
システム12は3つのクラスのリセット、すなわち、 
「クロック争リセット」 「ハード・リセットJ、およ
び「ソフト・リセット」があることが望ましい。クロッ
ク−リセットはゾーン内の全てのクロック位相発生器を
再編成する。ゾーンll内のクロック・リッセトはまた
CPU40と50、およびメモリ・モジュール60をイ
ニシアライズする。クロック・リセットは、これらのモ
ジュールのクロック位相発生器を再編成する以外にモジ
ュール相互接続部130と132に影響を及ぼさない。
システムlOがマスター/スレーブモードにある場合で
さえ、スレーブ・ゾーンでクロック・リセットを行って
も、これはマスターゾーンのモジュール相互接続部から
スレーブ・ゾーンのモジュール相互接続部に対するデー
タの転送を妨げない。しかし、ゾーン11’でクロック
・リセットを行うと、ゾーン11′内の対応する構成要
素がイニシアライズされる。
一般的に、ハード・リセットを行うと、全ての状態デバ
イスとレジスタはある所定の状態または最初の状態に戻
る。ソフト・リセットを行うと、状態エンジンと一時的
に記憶を行うレジスタのみがそれらの所定の状態または
最初の状態に戻るだけである。1つのモジュール内の状
態エンジンはそのモジュールの状態を決める回路である
。エラー情報と構成データを有するレジスタはソフト・
リセットによって影響を与えられない。更に、システム
10は、処理を継続するために、再びイニシアライズさ
れる必要のある構成要素のみをリセットするために同時
にハード・リセットとソフト・リセットの両方を選択的
に行う、。
ハード・リセットはシステム10をクリアし、従来のシ
ステムと同様に、システム10を既知の構成に戻す。ハ
ード・リセットは、ゾーンが同期されるべき場合または
f10モジュールをイニシァライズまたは不能にするべ
き場合に、電源を印加した後、使用される。システム1
0の場合、4つのハード匈リセット、すなわち、「パワ
ーアップ・リセット」、 rCPUハード・リセット」
、「モジュール・リセット」、及び「デバイス・リセッ
ト」があることが望ましい。ハード・リセットは更にロ
ーカル・ハード・リセットとシステム・ハード・リセッ
トに分けることができる。ローカル・ハード・リセット
は、CPUがスレーブ・モードにある場合に応答するロ
ジックのみにに影響を及ぼす。システム・ハード・リセ
ットは、クロスリンク・ケーブル25とモジュール相互
接続部130及び132に接続されているロジックのみ
に限定される。
パワーアップ・リセットは、電源が印加された直後に、
ゾーン11と11’をイニシアライズするために使用さ
れる。パワーアップ・リセットによって、ゾーンの全て
の部分に対して強制的にリセットが行われる。パワーア
ップ・リセットはシステム11のゾーンの間では決して
接続されないが、その理由は、各ゾーンがそれ自身の電
源を有し、従って異なった長さの「電源投入」イベント
を経験するからである。パワーアップ・リセットは全て
のハード・リセットとクロック・リセットをゾーン11
または■■′に行うことによって実行されるっ CPUハード・リセットは、CPUモジュールを既知の
状態に戻すため診断目的に使用される。
CPUハード・リセットは影響の与えられたゾーン内に
あるCPU、メモリ制御装置、およびメモリ・モジュー
ル、状態レジスタの全ての情報をクリアするっキャッシ
ュ・メモリとメモリ・モジュールは不能にされるが、ス
クラッチ・パッドRAM45および55の内容とメモリ
・モジュール60の内容は変化されない。更に、パワー
アップ・リセットと違って、CPUハード・リセットは
クロスリンクのゾーン識別またはクロック・マスターシ
ップを変更しない。CP Uハード・リセットは、CP
Uモジュールとクロック・リセットに加えることのでき
る全てのローカル・ハード・リセットの合計である。
・モジュール・ハード・リセットは、ルートストラッピ
ングの期間中のような既知の状態にI10モジュールを
セットするために使用され、また故障したI10モジュ
ールをシステムから取り外すためにも使用される。I1
0モジュール・バイト・リセットはモジュール上の全て
のものをクリアし、診断モードでファイヤウオールを離
れ、ドライバを不能にする。
デバイス・リセットは、I10モジュールに接続された
I10デバイスをリセットするために使用される。これ
らのリセットは装置に依存し、装置が接続されているI
/′0モジュールによって与えられる。
他のクラスのリセットはソフト・リセットである。上で
説明したように、ソフト・リセットは、システムIO内
の状態エンジンと一時的(/ジスタをクリアするが、こ
れらはクロスリンク内のモード・ビットのような構成情
報を変化させない。更に、ソフト・リセットは、またモ
ジュール内のエラー処理機構をクリアするが、これらは
システム・エラー・レジスタ898およびシステム故障
アドレス拳レジスタ865のようなエラー・レジスタを
変化させない。
ソフト・リセットには目標が定まっているので、その結
果、システムの必要な部分のみがリセットされる。例え
ば、モジュール相互接続部130がリセットされる必要
があれば、CPU40はリセットされず、またI10モ
ジュール110に接続されている装置もリセットされな
い。
ソフト・リセットには3つのユニークな特徴がある。1
つは各ゾーンがそれ自身のリセットの発生に対して責任
を負っていることである。1つのゾーン内の故障エラー
またはリセット・ロジックは、従って故障の発生してい
ないゾーンでリセットを行うことを防止される。
第2の特徴は、ソフト・リセットが命令実行のシーケン
スを乱さないことである。CPU40.40′ 50、
および50′はクロックとハード・リセットの組み合わ
せのみによってリセットされる。更に、メモリ制卸装置
70.75.70′および75′はハード拳リセットに
取り付けたCPU命令にサービスを行うのに必要なそれ
らの状態エンジンとレジスタを有している。従って、ソ
フト・リセットはソフトウェアの実行にとって透明であ
る。
第3の特徴は、ソフト・リセットの範囲、すなわちソフ
ト・リセットによって影響を与えられるシステムlO内
の構成要素の数がシステムIOのモードと最初のリセッ
トに対する要求によって決まるということである。完全
デュプレックス・モードの場合、CPUモジュール30
て開始されるソフト・リセットに対する要求によって、
ソフト・リセットがCPUモジュールの全ての構成要素
およびモジュール相互接続部130と132に取り付け
られた全てのファイヤウオール1(目)(1と1010
に対して行われる。従って、セシューノン相互接続部1
30と132によってサーヒスを受ける全てのモジュー
ルはそれらの状態エンジンと一時的レジスタのリセット
を有しているユこれによって、過渡的なエラーによって
発生される全ての問題のシステム・パイプラインがクリ
アされる。
システム10は、デュプレックス。モードにあるので、
ゾーン11′はゾーン11の行っている全ての事柄を行
う。従って、CPUモジュール30′は、CPUモジュ
ール30と同時に、ソフト・リセットに対する要求を出
す。ゾーン11’内のソフト・リセットは、ゾーンll
内のソフト・リセットと同じ効果を有している。
しかし、システム10がマスタ/スレーブ・モードにあ
りCPUモジュール30′がスレーブ拳モードにある場
合、CPUモジュール30で始まるソフト・リセットに
対する要求は、予期できるように、CPUモジュール3
0の全ての構成要素とモジュール相互接続部130と1
32に取り付けられた全てのファイヤウオール1000
と1010(こ対してソフト・リセットを出す。更に、
ソフト・リセットに対する要求は、クロスリンク90と
、’l O′、クロスリンク・ケーブル25およびクロ
スリン・り90′と95′を介してCPUモジュール3
0′に出される。一部のモジュール相互接続部130と
132はソフト・リセットを受け取る。
この同じ構成の場合、CPUモジュール30′から開始
されるソフト・リセットに対する要求は、メモリ制御装
置70′と75′およびクロスリンク90′と95′に
一部のみリセットする。
ソフト・リセットは、 rCPUソフト・リセット」と
「システム・ソフト・リセット」を有する。
C’PUソフト・リセットは、要求を最初に出したCP
Uモジュールの状態エンジンに影響を及ぼすソフト−リ
セットである。システム・ソフト・リセットは、モジュ
ール相互接続部とこれに直接取付けられた構成要素に対
するソフト・リセットである。CPUモジュールは、常
にCPUソフト・リセットを要求することができる。シ
ステム・ソフト・リセットは、CPUを要求するクロス
リンクがデュプレックス・モード・マスター/スレーブ
・モード、またはオフ・モードにある場合にのみ、要求
することができる。スレーブ・モードにあるクロスリン
クは、他方のゾーンからシステム・ソフト・リセットを
与えられ、それ自身のモジュール相互接続部に対してシ
ステム・ソフト・リセットを発生する。
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および60′に対するリ
セット線を示す。CPUモジュール30は、何時電源が
印加されたかを示すDCOK信号を受け取る。リセット
をイニシアライズするのはこの信号である。CPUモジ
ュール30’は、その電源から同じ信号を受取る。
1つのシステム・ハード・リセット線は、110モジユ
ールに送られ、1つのシステム・ソフト・リセットは3
つのI10モジュールの全てに送られる。1つのハード
・リセットが各モジュールに対して必要である理由は、
システム・ハード・リセット線がシステム10から個々
のI10モジュールを取除くのに使用されるからである
。各システム・ソフト・リセットに対してI10モジュ
ールを3つに制限しているのは、単にローデングを考慮
しているからにに過ぎない。更に、1つのクロック・リ
セット線が全てのI10モジュールとメモリ・モジュー
ルに送られる。1つのモジュールについて1つの線を使
用する理由は、負荷を制御することによってスキューを
制限するためである。
第22図は、リセットに関連するCPUモジュール30
の構成要素を示す。CPU40と50は、それぞれクロ
ック発生装置2210と2211を有している。メモリ
制御装置70と75は、それぞれクロック発生装置22
20と2221を有し、クロスリンク90と95は、そ
れぞれクロック発生装置2260と2261を有する。
クロック発生装置は、システム・クロック信号を個々の
モジュールによって使用するために分割する。
メモリ制御装置70は、リセット制御回路2230とソ
フト・リセット要求レジスタ2235を有する。メモリ
制御装置75は、リセット制御回路2231とソフト・
リセット要求レジスタ2236を有する。
クロスリンク90は、ローカル・リセット発生装置22
40とシステム−リセット発生装置2250の両方を有
している。クロスリンク95は、ローカル・リセット発
生装置2241とシステム・リセット発生装置2251
を有している。クロスリンクの「ローカル」部分は、こ
のクロスリンクがスレーブ・モードにある場合に、CP
Uモジュールと共に残っているこのクロスリンクの部分
であり、従って、シ、リアル・レジスタ、および幾つか
のパラレル・レジスタを有している。クロスリンクの「
システム」部分は、モジュール相互接続部130と13
2(または130′と132’)とクロスリンク・ケー
ブル25にアクセスするために必要であるクロスリンク
のその部分である。
ローカル−リセット発生装置3340と2241は、そ
れぞれクロスリンク90と95のローカル・リセット制
御回路2245と2246にハードおよびソフト・リセ
ット信号を送ると共に、それぞれメモリ制御装置’70
と75のリセッ)・・制御回路2230と2231にハ
ードおよびソフト0リセット信号を送ることによって、
CPUモジュール30に対してリセットを発生ずる。ロ
ーカル・クロスリンク・リセット制御回路2245と2
246は、それらの状態エンジン、転送するべきデータ
を記憶しているラッチおよびそれらのエラー・レジスタ
をリセットすることによって、ソフト・リセット信号に
応答する。これらの回路は、ソフト・リセットに対しで
行うのと同じ動作を行い、またエラー・レジスタと構成
レジスタをリセットすることによって、ハード・リセッ
ト信号に応答する。
リセット制御回路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モジュール1、 O01110、および120は、C
PUデータまたは命令に依存する全てのレジスタをリセ
ットすることによってソフト・リセット信号に応答する
。これらのモジュールは、ソフト・リセットが行なうの
と同じレジスタをリセットし、また全ての構成レジスタ
をリセットすることによって、ハード・リセット信号に
応答する。
更に、システム・リセット発生装置2250と2251
は、またシステム・ソフトおよびシステム・ハード・リ
セット信号を各クロスリンクのシステム・リセット制御
回路2255と2256に送る。システム・リセット制
御回路2255と2256は、ローカル・ソフトおよび
ローカル・ハード・リセット信号に対するローカル・リ
セット制御回路の応答と同じ方法でシステム拳ソフト・
リセット信号とシステム・ハード・リセット信号に応答
する。
メモリ制御装置70と75は、CPU40と50がそれ
ぞれ適当なコードをソフト・リセット要求レジスタ22
35と2236にそれぞれ書込み場合に、クロスリンク
90と95にそれぞれソフト・リセットを発生させる。
ソフト・リセット要求レジスタ2235と2236は、
ソフト・リセット要求信号をローカル・リセット発生装
置2240と2241に送る。符号化エラー信号は、メ
モリ制御装置70からローカル・リセット発生装置22
40と2241に送られる。
システム・ソフト・リセットは、データと制御信号が送
られるのと同じデータ経路に沿ってゾーンの間に送られ
る。従って、データとアドレスに対するのと同じ遅延を
等しくする原理が使用され、リセットはほぼ同時に2つ
のゾーンの全ての構成要素に到達する。
ハード・リセットは、適当なコードをローカル・ハード
・リセット・レジスタ2243に書込むCPU40と5
0またはDCOK倍信号よって発生されるパワーアップ
・リセットに対する要求によって発生される。
クロスリンク90の同期回路2270は、DCOK信号
が同時にローカルおよびリセット発生装置2240.2
250,2241および225の全てに行き渡ることを
保証するため、適当なガ延要素を有している。
事実、リセットの同期は、システム10では■常に重要
である。これは、リセット信号がクロスリンクで始まる
からである。このようにして、リセットはほぼ同期して
異なったモジュールとこゎらのモジュール内の異なった
要素に到達するように送゛られることかできる。
第21図と第22図の構造を理解することによって、異
なったハード・リセットの実行をよりよく理解すること
ができる。パワーアップ・リセットはシステム・ハード
・リセットとローカル・ハード・リセットおよびクロッ
ク・リセットの両方を発生する。−船釣に、クロスリン
ク9o、95.9゜および95′は最初はクロスリンク
・オフモードと再同期オフ・モードの両方の状態にあり
、両方のゾーンはクロック・マスターシップを表明する
CPU/MEM故障リセットは、メモリ制御装置70.
75.70’および75′がCPM/MEMの故障を検
出する時は何時でも自動的に動作される。符号化エラー
・ロジックはエラー・ロジック2237と2238から
両方のクロスリンク90と95に送られる。故障が発生
したCPUモジュールは、そのクロスリンクをスレーブ
状態にセットし、他方のCPUモジュールのクロスリン
クをマスター状態にセットすることによって、システム
10から取り除かれる。しかし、故障が発生していない
CPUモジュールは、リセットを経験しない。その代わ
り、これはシリアル・クロスリンク・エラー・レジスタ
(図示せず)内のコードを介して、他方のモジュールの
故障を知らされる。CPU/MEM故障リセットは、故
障したCPUモジュールを有するゾーンに対するクロッ
ク信号とそのモジュールに対するローカル・ソフト・リ
セットによって構成される。
再同期リセットは、基本的にはローカル・ハード・リセ
ットとクロック・リセットを有するシステム・ソフト・
リセットである。この再同期リセットは、2つのゾーン
をロックステップ同期の状態にするために使用される。
ゾーン11と11′が同期されていなかった一定の期間
の後、もしCPUレジスタの記憶された状態を含むメモ
リ・モジュール60と60’の内容が相互に等しくセッ
トされれば、これらのゾーンがデュプレックス・モード
を再び開始することができるように、再同期リセットが
使用されてこれらのツゾーンを互換性のある構成にする
再同期リセットは、基本的にはCPUハード・リセット
とクロック・リセットである。再同期リセットは、再同
期・リセット・アドレスを並列クロスリンク・レジスタ
の1つに書込むソフトウェアによって動作される。この
時、一方のゾーンは、クロスリンク・マスター/再同期
マスター・モードでなければならず、他方のゾーンは、
クロスリンク・スレーブ/再同期スレーブ。モードでな
ければならい。そこでリセットが両方のゾーンで同時に
行われ、これは、とりわけ4つのクロスリンク全てをデ
ュプレックス・モードにセットする。
再同期リセットは、システム・ソフト・リセットではな
いため、I10モジュールはリセットを受取らない。
システム10の好適な実施例は、またクロック、リセッ
ト信号かコンフォーミング(conforming)ク
ロックをリセットせず、非コンフォーミング・タロツク
のみをリセットすることを保証する。この理由は、クロ
ックがリセットされる場合はいつでも、これはクロック
のタイミングを変更し、このタイミングはこんどはこの
ようなりロックでモジュールの動作に影響を及ぼすから
である。もしモジュールが正しく実行され、このクロッ
クが正しい位相であれば、その動作を変更することは不
必要であるばかりでな(無駄なことである。
第23図は、ノンコンフォーミング・クロックのみがリ
セットされることを保証する回路の好適な実施例である
。第23図に示す回路は、第22図に示す対応するモジ
ュールのクロック発生装置2210.2211.222
0.2221.2260、および2261内に位置する
こ七が望ましい。
好適な実施例の場合、異なったクロック発生装置221
O12211,2220,2221,2260、および
2261は立上がり区間検出器2300、と位相発生装
置2310を有している。
立上がり区間検出器2300は、クロスリンク90と9
5からクロック・リセット信号を受取り、クロック・リ
セット信号の立上がり区間と同時に既知の持続期間を有
するパルスを発生する。このパルスは、特定のモジュー
ルに対する内部クロック信号と同様に位相発生装置23
1Oに対する入力である。そのモジュールに対する内部
クロック信号は、発振器システム200と200′から
分配されたシステム・クロック信号から取出されたクロ
ック信号である。位相発生装置231Oは、クロック信
号に対する異なった位相を形成する下方分割回路である
ことが望ましい。再循環シフト・レジスタのような位相
発生装置231Oに対する別の設計をまた使用すること
もできる。
立上がり区間検出器2300からの立上がり区間パルス
によって、位相発生装置2310は予め選択された位相
を出力することが望ましい。従って、例えばもし位相発
生装置2310が幾っがのステージを有する下方分割回
路であれば、クロック・リセットの立上がり区間パルス
は、そのステージに対して設定された入力であり、この
ステージは全ての他のステージに対して予め選択された
位相とりセット入力を発生する。もし位相発生装置23
10が既にこの位相を発生していれば、同期化クロック
・リセット信号の存在は基本的に透明である。
このようにして組織されたリセットは、システムIOの
通常の実行に対して混乱を最小限に止めるように設計さ
れ、トラスチックなアクションが必要とされる場合には
、このトラスチックなアクションは命令実行の通常のシ
ーケンスに割込みをかけることに止まる。このことは、
従来のリセットが引起こす再同期化の問題のためにデュ
アルまたは多重ゾーンの環境では特に重要である。従っ
て、システムlOで行っているようにハード−リセット
の数を最小にすることが望ましい。
3、 データ転送のためのプロトコル CPUモジュール30.30’とl1O−E−ジュール
100.100’  110.110′120.120
′の間でデータ転送を行うためのプロトコルを次に説明
する。データは、l1O読み出し、書き込みサイクルを
用いるがあるいはDMAを用いて、ディスク1075ま
たは1075’のようなシステム・リソースへ、あるい
は、そこから転送され得る。代表的には、I10装置で
のたいていのデータ転送はDMAで実施される。しかし
なから、いずれにしても、データ転送は、メモリ・コン
トローラ7o、70’75.75′とI10モジュール
100.100’110.110’   120.12
0’(7)間で生じる。その結果、情報は、デュアル・
レール・モジュール相互接続部130,130’   
132.132′上で伝送される。このデュアル・レー
ル・モジュール相互接続部というのは、本説明の目的と
してはシステム・リソース・バスを言っているが、クロ
スリンク経路25にっ′いても言うことがある。
これらのデータ転送では、ゾーン11をゾーンll′に
つなぐクロスリンク90.90’   95.95′の
存在により、各CPUモジュール30.30’がコンピ
ュータ・システムIO内のI10モジュールのいずれか
(たとえばこれが別のゾーンにあるとしても)と連絡す
るのが可能となる。
その結果、データ転送中に利用できる相互接続部の使用
を行うために特殊な回路とプロトコルが用いられる。
たとえば、ゾーン11がマスク・モードにあり、ゾーン
11’がスレーブ・モードにある場合、ゾーン11(マ
スクである)にあるCPUモジュール30は、ゾーン1
1および他のゾーン11′にあるI10モジュールへ、
そして、そこからデータの転送を行うことができる。マ
スタ/スレーブ・モードにおいては、いずれかのゾーン
にあるI10モジュールのうちの任意のものから情報が
伝送されてきたときには、マスク・ゾーン11にあるメ
モリ・コントローラ70.75の両方が同じ情報を受け
取る。情報がマスク・ゾーンにあるメモリ・コントロー
ラ70.75からいずれかのゾーンにあるI10モジュ
ールの1つに送られた時には、同じ情報がそのI10モ
ジュールにあるファイヤウオール1000.1010の
両方のところで受け取られる。
全二重モードでは、両方のゾーンがロックステップ同期
状態で一緒に作動し、故障許容コンピュータ・システム
を達成する。全二重モードでは、いずれかのゾーンにあ
る任意のI10モジュールから情報が伝送されてきたと
きには、両方のCPUモジュール30.30’が同じ情
報を受け取る。さらに、全二重モードにおいて、情報が
いずれかのゾーンの1つのI10モジュールに送られる
とき、CPUモジュール3o、30’からのファイヤウ
オール1000.1010のところで同じ情報がこのI
10モジュールによって受け取られる。
データ転送中、クロスリンク90.90′95.95′
はデータ・ルータとして用いられる第11図、第12図
に示すクロスリンクにおける切り換えロジックは、一対
のモジュール相互接続部130.132または130’
   132’を特定のメモリ・コントローラに結合す
る機能を果たす。この切り換えロジックを用いて創り出
される経路は、データ転送の方向、その情報についての
転送元あるいは転送先がI10モジュールであるかどう
が、このデータ転送にはどのモジュール相互接続バスが
関係することになるが、そして、クロスリンクの作動モ
ードに応じて異なる。
第3図に示すように、一対の並列バス88.89がメモ
リ・コントローラ70.75をそれぞれクロスリンク9
0.95に接続している。クロスリンク/メモリ・コン
トローラ・バス88.89は16本の双方向データ・ラ
インを通して読み出し、書き込み、あるいは、DMAデ
ータおよび読み出しまたは書き込みアドレスを搬送し、
また、制御コード搬送のためのアップ(メモリ・コント
ローラへのC3UP)、ダウン(メモリ・コントローラ
からのC3DN)の両方の付加的な単方向制御ラインを
含んでいる。同様に、システム・リソース・バス(すな
わち、モジュール相互接続部130.132)も、読み
出しあるいは書き込みアドレスならびに読み出し、書き
込みまたはDMAデータを搬送するための16本の双方
向データ・ラインと、制御コードを搬送するための付加
的な単方向制御ラインを含む。
DMA経由のデータの転送をまず説明する。
システム・リソース(たとえば、ディスクエ076に接
続したI10モジュール100)とCPUモジュール(
たとえば、CPUモジュール30)の間でDMAデータ
の伝送を行うに先立って、クロスリンク90.90’ 
 95.95′における切り換えロジックを正しく構築
し、制御コードとDMAデータがコンピュータ・システ
ムの適切な構成要素に送られるようにしなければならな
い。したがって、DMAセットアツプ情報はメモリ・コ
ントローラ7o、75からCPUモジュール30によっ
て伝送される。
DMAセットアツプ情報は、対になったクロスリンク/
メモリ・コントローラ・バス88.89を経てメモリ・
コントローラ70.75からクロスリンク90.95に
伝送される。このDMAセットアツプ情報は制御コード
、書き込みアドレス、書き込みデータのいずれかあるい
はこれらすべてのビットを含み、これらのビットはクロ
スリンクを含むコンピュータ・システム内の構成要素に
よって使用されてセットアツプ書き込みトランザクショ
ン(サイクル)を独特のやり方で示す。本発明の好まし
い実施例では、このセットアツプ書き込みトランザクシ
ョンはCPUモジュール30からのクロスリンク90.
95にダウン方向でクロスリンク/メモリ・コントロー
ラ・バス88.89の単方向制御ライン上を伝送される
制御コードによって識別される。これらCラインはC3
DN (制御・状況ダウン)ラインと呼ぶ。
セットアツプ書き込みトランザクションは、次のDMA
転送のためにセットアツプされなければならない経路(
メモリ・コントローラとシステム・リソースの間)を事
前定義するのに用いられる。
書き込みトランザクション中、CPUモジュール30に
よってクロスリンク/メモリ・コントローラ・バス88
.89の16本の双方向データーラインを通して与えら
れるデータは書き込みアドレスとそれに続く書き込みデ
ータとからなる。実施例では、セットアツプ書き込みト
ランザクションは他のタイプの書き込みトランザクショ
ンと同じフォーマットを持つが、ただし、セットアツプ
書き込みトランザクション中にC3DNライン上にある
制御コードは他の書き込みトランザクションについて使
用される制御コードとは異なる。
メモリ・コントローラからのDMAセットアツプ情報は
制御コード、書き込みアドレス、書き込みデータのいず
れかあるいはすべてに含まれ得る。
本発明の好ましい実施例では、書き込みアドレス内の1
ビツトは、そのゾーンがDMA転送と関係することにな
るかを示す。書き込みアドレス内のこのビットをするこ
とによって、クロスリンク90.95は、その対のシス
テム優リソース・バスがこのDMA転送に関係すること
になるかを決定する。書き込みアドレスはクロスリンク
によってもモニタされており、コンピュータ・システム
lOのI10スペースにある記憶場所と比較されてこの
DMA転送がI10モジュールと関係することになるか
どうかを決定する。さらに、セットアツプ書き込みトラ
ンザクション中に伝送される書き込みデータはDMA転
送の方向を示す1つまたはそれ以上のビットを含む。
したがって、本発明の好ましい実施例では、クロスリン
ク90.95は制御コード、書き込みアドレスおよび書
き込みデータをモニタして、DMAセットアツプ情報が
伝送されつつあるかどうかを決定し、DMA転送方向を
決定し、関係させられることになる対のシステム・リソ
ース・バス(モジュール相互接続部)を識別し、このD
MA転送がシステム・リソース・バスのいずれかに結合
したシステム・リソース(I10モジュール)に関係す
ることになるかどうかを確認する。
さらに、第1θ図に示すように、クロスリンク90は制
御・状況レジスタ912内のクロスリンク・モード・ビ
ット916を含み、この制御・状況レジスタはクロスリ
ンクの状況、すなわち、それがオフであるが、マスクで
あるが、スレーブであるが、二重モードで作動している
かのいずれかを識別する。この情報はDMA転送中に制
御コードおよびDMAデータを送る際に使用される。
本発明によれば、クロスリンクの各々がセ・ソトアップ
書き込みトランザクション中にDMAセ・ソトアップ情
報を復号する手段を包含する。クロスリンク内の切り換
えロジックは多数のデコーダの制御の下にデータ経路指
定の機能を果たす。成るセットアツプ書き込みトランザ
クションが成るメモリ・コントローラによって開始され
たとき、これらのデコーダはやって来るDMA転送の方
向を決定し、どの対のシステム・リソースがDMA転送
と関係することになるかを決定し、DMA転送が一対の
システム・リソース・ノくスに結合したシステム・リソ
ースと関係することになるかどう力Aを決定する。
デコーダ971.996.998 (第11.12図に
示す)は、セットアツプ書き込みトランザクション中に
伝送されるDMAセットアツプ情報を復号してメモリ・
コントローラと一対のシステム・リソース・バスの間に
経路をセットアツプするのに必要な内部制御信号を発生
する。第11図はクロスリンク/メモリ・コントローラ
・バス88.89とモジュール相互接続部130.13
2の単方向制御ライン(C8UP、C3DN)間の制御
コードの転送に関係させられる切り換えロジックを示し
ている。第12図はクロスリンク/メモリ・コントロー
ラ・バス88.89とモジュール相互接続部130.1
32の双方向制御ライン間の制御コードの転送に関係さ
せられる切り換えロジックを示している。
好ましくは、CPUモジュールおよびシステム・リソー
スは、CPUモジュールによってアクセスされるべきD
MAデータ・アドレスとシステム・リソースによってア
クセスされるべきDMAデータ・アドレスとを示すポイ
ンタ・レジスタ手段を含む。第8図に示すように、メモ
リ・コントロ−ラフ0には、DMAエンジン836にお
けるDMAレジスタ830がある。DMAレジスタ83
0はDMAエンジン800によって初期値に設定される
DMAアドレス・レジスタ836を含む。I10モジュ
ールでは、DMA動作中にアクセスされることになるロ
ーカルRAM1060内のアドレスが第17図に示す共
用メモリ・コントローラ1050内のDMAアドレス・
レジスタによって与えられる。
好ましい実施例では、書き込みトランザクションはCP
Uモジュール30によって開始され、この書き込みトラ
ンザクション中にメモリ・コントローラ70がDMA始
動アドレス情報を伝送する。
DMA始動アドレス情報はやって来るDMA転送中にシ
ステム・リソースによってアクセスされるべきDMAデ
ータ・アドレスを特定し、この情報は、メモリ・コント
ローラ70からシステム・リソースへ、クロスリンク/
メモリ・コントローラ・バス88を経て、クロスリンク
90を経て、(もしシステム・リソースがゾーン11に
あるならば)モジュール相互接続部130を経て、ある
いは、(もしシステム・リソースがゾーン11’にある
ならば)クロスリンク経路25、クロスリンク90′お
よびモジュール相互接続部130′を経て伝送される。
次いで、DMAデータ・アドレスはシステム・リソース
、たとえば、I10モジュール100内の共用メモリ・
コントローラtosoにあるポインタ・レジスタ内に格
納される。
同様にして、DMAエンジン800はやって来るDMA
転送中にメモリ・コントローラ70によってアクセスさ
れるべきメモリ60内のDMAデーターアドレスを特定
する。このDMA始動アドレス情報はメモリ・コントロ
ーラ内のポインタ・レジスタ、すなわち、DMAアドレ
ス・レジスタ836に書き込まれる。
ここで具体化したように、CPUモジュールとシステム
・リソースは、やって来るDMA転送中にCPUモジュ
ールおよびシステム・リソースによってアクセスされる
べきDMAデータのバイト数を示すカウント・レジスタ
手段を包含する。第8図に示すように、DMAエンジン
800内のDMAレジスタ830はDMAバイト・カウ
ンターレジスタ832を包含し、これはセットアツプ中
にDMAエンジン800によって初期値に設定される。
I10モジュールでは、第18図に示すファイヤウオー
ル1000にあるDMA制御器1890はどのくらいの
ワードあるいはバイトが残されているかについての証拠
をDMAを経由して伝送させ続ける。
好ましくは、書き込みトランザクションはCPUモジュ
ール30によって開始され、この書き込みトランザクシ
ョン中にメモリ・コントローラ70がDMAカウント情
報を伝送する。このDMAカウント情報はやって来るD
MA転送中にアクセスされるべきDMAデータのバイト
(ワード)数のDMAカウント値を特定し、この情報は
、メモリ・コントローラ70からシステム・リソースへ
、クロスリンク/メモリ・コントローラーバス88を経
て、クロスリンク90を経て、(もしシステム・リソー
スがゾーン11にある場合には)モジュール相互接続部
130を経て、あるいは、(もしシステム・リソースが
ゾーン11’にある場合には)クロスリンク経路25、
クロスリンク90′およびモジュール相互接続部130
′を経て伝送される。DMAカウントは、次いで、シス
テム・リソースのカウント・レジスタ、たとえば、I1
0モジュール100のファイヤウオール1000のDM
A制御器1890に格納される。
同時に、このDMAカウントはメモリ・コントローラの
ポインタ・レジスタ、すなわち、DMAバイト・カウン
タ・レジスタ832内にも書き込まれる。
本発明の好ましい実施例では、DMAカウント値はセッ
トアツプ書き込みトランザクション中にメモリ・コント
ローラ70から伝送される。セットアツプ書き込みトラ
ンザクション中にシステム・リソースに伝送された書き
込みデータはDMAカウント情報を含む。ここに具体化
したように、セットアツプ書き込みトランザクション中
に伝送される書き込みアドレス内の1ビツトはDMA転
送に関係させられることになるゾーン(したがって、対
のモジュール相互接続部)を識別する。もし書き込みア
ドレスがシステムIOのI10スペース内のアドレスに
対応する場合には、モジュール相互接続部のうちの一対
に結合したシステム・リソースがDMA転送に関係させ
られることになる。最後に、セットアツプ書き込みトラ
ンザクション中に伝送される書き込みデータは、好まし
くは、DMA転送の方向を特定するビットを含む。
次に、第24A〜24E図に触れなければならない。こ
れらの図はDMA転送中にモジュール相互接続部]、3
0132(第24A、24B、24C124E図)ある
いはクロスリンク/メモリ・コントローラ・バス88.
89 (第24D図)を通しての制御コード、DMAデ
ータの転送を説明するタイミング図である。
本発明によれば、始動DMAコードはメモリ・コントロ
ーラ70.75からクロスリンク90.95ヘバス88
.89の単方向制御ラインC3DNを通して伝送される
。第24A〜第24E図に示すように、DMA転送が試
みられる毎に、伝送される最初の制御コードはC3DN
ライン上の5TARTコードである。始動DMAコード
はクロスリンクを経て、また、システム・リソースに結
合した対のシステム・リソース・バスを経てシステム・
リソースの1つに伝送される。
クロスリンク90.90’、95.95′の切り換えロ
ジックは、DMA始動コードの伝送に応答して復号され
たDMAセットアツプ情報に従って構築される。この切
り換えロジックはDMA始動コードが受け取られるまで
はトリガされない。
以下の例におけるクロスリンク90では、ドライバ94
0.946.951.992がデコーダ998からの内
部制御信号によって付勢、消勢される。デコーダ998
も内部制御信号を発生するが、これらの信号は2つの入
力のうちの1つがどのマルチプレクサC8MUXD94
5、MUXC976、MUXD982を通して送られる
かを選ぶ。ドライバ971.984はデコーダ9711
996によって付勢、消勢され、したがって、メモリー
コントローラ70からの制御コードおよびDMAデータ
がゾーン11’のクロスリンク90′に伝送され得る。
1つの例では、切り換えロジックは、対になってSR・
バス130.132から対になったクロスリンク90.
95の切り換えロジックを経て対になったメモリ・コン
トローラ70.75へ、そして、対になったクロスリン
ク90.95の切り換えロジックと対になったクロスリ
ンク90′95′の切り換えロジックを経て対になった
メモリ・コントローラ70’  75’にDMAデータ
を送るように構築される。この経路は、デコーダ971
.996.998によって復号されたDMAセットアツ
プ情報が、そのDMA転送がアップ方向であり、ゾーン
11 (したがって、対になったモジュール相互接続部
130.132)に関係することになり、一対のモジュ
ール相互接続部に結合したシステム・リソース(たとえ
ば、I10モジュール100)に関係することになると
きにセットアツプされる。
この例では、クロスリンク・モード・ビット916がク
ロスリンク90がマスクであることを示す場合あるいは
二重モードで作動している場合には、ドライバ969は
消勢され、ドライバ992が付勢される。これはDMA
転送がアップ方向であることをDMAセットアツプ情報
が示すためである。転送がアップ方向であることをDM
Aセットアツプ情報が示しているために、MUXC97
6はモジュール相互接続部130から入力を選ぶ。転送
がゾーン11に関係していることをDMAセットアツプ
情報が示すため、MUXD982はモジュール相互接続
部130から入力を選ぶ。その結果、DMAデータはモ
ジュール相互接続部130からメモリ・コントローラ7
0へ伝送される。
この例では、クロスリンク90がマスクであるが、ある
いは、二重モードで作動していることをクロスリンク・
モード・ビット916が示す場合には、ドライバ951
が付勢される。転送がゾ−ン■1に関係することになる
ことをDMAセットアツプ情報が示すため、C8MUX
D945はモジュール相互接続部130から入力を選ぶ
。その結果、制御コードはモジュール相互接続部130
からメモリ・コントローラ70へ伝送される。
この例では、クロスリンク90がマスクであるが、ある
いは、二重モードで作動している場合には、ドライバ9
46.984が付勢される。転送がゾーン11のI10
モジュールに関係していることをDMAセットアツプ情
報が示しているからである。その結果、モジュール相互
接続部130からの制御コードおよびDMAデータはク
ロスリンク90からクロスリンク90′を経由してメモ
リ・コントローラ70′に伝送されることになる。
この最初の例では、転送がゾーンのI10モジュールに
関係していることをDMAセットアツプ情報が示してい
るため、ドライバ940は付勢され、ドライバ937は
消勢される。制御コードはメモリ・コントローラ70あ
るいは70′のうちのいずれかからクロスリンク90′
およびクロスリンク経路25を経てモジュール相互接続
部130へ伝送される。クロスリンク90がマスクであ
ることをクロスリンク・モード・ビット916が示すと
き、C8MUXA935はメモリ・コントローラ70か
ら入力を選ぶ。クロスリンク・モード・ビット916が
クロスリンク90がスレーブであることを示す場合には
、C8MUXA935はクロスリンク経路25から入力
を選ぶ。
クロスリンクが二重モードで作動している時には、C8
MUXA935がメモリ・コントローラ70から入力を
選ぶと同時にC8MUXA935mがクロスリンク経路
25から入力を選ぶが、あるいは、C8MUXA935
がクロスリンク経路25から入力を選ぶと同時にCSM
UXA 935 mがメモリ・コントローラ75から入
力を選ぶ。その結果、二重モードでは、モジュール相互
接続部130.132へ伝送され、I10モジュール1
00のファイヤウオール1000.1010で受け取ら
れる制御コードは2つの異なったゾーンからのものとな
る。
第2の例において、切り換えロジックは、対になったシ
ステム・リソース・バス130′132′から対になっ
たクロスリンク90′95′の切り換えロジックを経て
対になったメモリ・コントローラ70’   75’へ
、そして、対になったクロスリンク90’   95’
の切り換えロジックを経て対になったクロスリンク90
.92の切り換えロジックおよび対になったメモリ・コ
ントローラ70.75へDMAデータを送るように構築
されている。この経路は、デコーダ971.996.9
98によって復号されたDMAセットアツプ情報が、D
MA転送がアップ方向であり、ゾーンll’lたがって
、対になったモジュール相互接続部130’   13
2’)に関係することになり、また、一対のモジュール
相互接続部に結合したシステム・リソース(たとえば、
I10モジュール100’)に関係することになってい
るときに、セットアツプされる。
この第2の例では、クロスリンク90がマスクであるが
、あるいは、二重モードで作動していることをクロスリ
ンク・モード・ビット916が示す場合には、ドライバ
969が消勢され、ドライバ992が付勢される。これ
はDMA転送がアップ方向であることをDMAセットア
ツプ情報が示しているためである。転送がゾーン11’
に関係していることをDMAセットアツプ情報が示して
いるため、MUXD982はクロスリンク経路25から
入力を選ぶ。その結果、DMAデータは、クロスリンク
90′およびクロスリンク経路25を経てモジュール相
互接続部130′からメモリ・コントローラ70へ伝送
される。
この例では、クロスリンク90がマスクであるが、ある
いは、二重モードで作動していることをクロスリンク・
モード・ビット916が示す場合には、ドライバ951
が付勢される。転送がゾーンll′に関係していること
をDMAセットアツプ情報が示しているため、C8MU
XD945はクロスリンク経路25から入力を選ぶ。そ
の結果、制御コードは、クロスリンク90′およびクロ
スリンク経路25を経てモジュール相互接続部130’
からメモリ・コントローラ70へ伝送される。
この例では、転送がゾーン11′に関係していることを
DMAセットアツプ情報が示しているため、ドライバ9
46は消勢される。転送がアップ方向であり、ゾーン1
1’に関係していることをDMAセットアツプ情報が指
名しでいるため、ドライバ984は消勢される。しかし
なから、モジュール相互接続部130′からの制御コー
ドおよびDMAデータはクロスリンク90のレシーバ9
47.986を経てメモリ・コントローラ70ヘクロス
リンク90′から伝送されることになる。。
この第2の例では、転送がゾーン11″に関係している
ことをDMAセットアツプ情報が示しているため、ドラ
イバ940は消勢され、ドライバ937は付勢される。
クロスリンク90′の切り換えロジックは、メモリ・コ
ントローラ70′あるいはメモリ・コントローラ70の
いずれかからクロスリンク90およびクロスリ、・り経
路25を経てモジュール相互接続部130′へ制御コー
ドを伝送するように構築される。クロスリンク90がマ
スクであることをクロスリンク・モード・ビット916
が示すときには、制御コードがメモリ・コントローラ7
0からモジュール相互接続部130′へ伝送される。ク
ロスリンク90がスレーブであることをクロスリンク・
モード・ビット916が示すときには、制御コードがメ
モリ・コントローラ70′からモジュール相互接続部1
30′へ伝送される。クロスリンクが二重モードで作動
しているときには、クロスリンク90′の切り換えロジ
ックがメモリ・コントローラ70から入力を選ぶと共に
、クロスリンク95′の切り換えロジックがメモリ・コ
ントローラ75′から入力を選ぶが、あるいは、クロス
リンク90′の切り換えロジックがメモリ・コントロー
ラ70′から入力を選ぶと共に、クロスリンク95′の
切り換えロジックがメモリ・コントローラ75から入力
を選ぶ。その結果、二重モードでは、モジュール相互接
続部130’   132’へ伝送され、I10モジュ
ール100′のファイヤウオール1000.1010で
受け取られる制御コードは2つの異なったゾーンからの
ものとなる。
第3の例では、切り換えロジックは、メモリ・コントロ
ーラ70または75のいずれかからクロスリンク90ま
たは95の切り換えロジックを経て、そして、メモリ・
コントローラ70′または75′のいずれかからクロス
リンク90’、90あるいはクロスリンク95’   
95の切り換えロジックを経て対になったシステム・リ
ソース・バス130.132へDMAデータを送るよう
に構築される。この経路は、DMA転送がダウン方向で
あり、ゾーン11 (したがって、対になったモジュー
ル相互接続部130.132)と関係することになり、
一対のモジュール相互接続部に結合したシステム・リソ
ース(たとえば、I10モジュール100)と関係する
ことになることをデコーダ971.996.998によ
って復号されたDMAセットアツプ情報が示すときに、
セットアツプされる。
この第3の例では、DMA転送がダウン方向であり、ゾ
ーン11のI10モジュールと関係することになってい
るため、ドライバ969は付勢され、ドライバ984.
992は消勢される。
DMAデータは、メモリ・コントローラ70あるいは7
0′からクロスリンク90′およびクロスリンク経路2
5を経てモジュール相互接続部130に伝送される。ク
ロスリンク・モード・ビット916が、クロスリンク9
0がマスクであることを示すとき、MUXA966はメ
モリ・コントローラ70から入力を選ぶ。クロスリンク
90がスレーブであることをクロスリンク・モード・ビ
ット916が示している場合には、MUXA996はク
ロスリンク経路25から入力を選ぶ。
クロスリンクが二重モードで作動しているとき、MUX
A966がメモリ・コントローラ70から入力を選ぶと
共にクロスリンク95のMUXA(図示せず)がクロス
リンク経路25から入力を選ぶが、あるいは、MUXA
966がクロスリンク経路25から入力を選ぶと共にク
ロスリンク95のMUXAがメモリ・コントローラ75
から人力を選ぶ。その結果、二重モードでは、モジュー
ル相互接続部130.132へ伝送され、I10モジュ
ール】00のファイヤウオール1000.1010で受
け取られるDMAデータは2つの異なったゾーンからの
ものである。
この例では、クロスリンク90がマスクであるかあるい
は二重モードで作動していることをクロスリンク・モー
ド・ビット916が示す場合には、トライバ951が付
勢される。転送がゾーン11に関係することになること
をDMAセットアツプ情報が示すため、C8MUXD9
45はモジュール相互接続部130から入力を選ぶ。そ
の結果、制御コードはモジュール相互接続部+30から
メモリ・コントローラ70へ伝送される。
この例では、転送がゾーン11の■10モジュールに関
係していることをDMAセットアツプ情報が示している
ため、クロスリンク90がスレースであるかあるいは二
重モードで作動している場合には、ドライバ946が付
勢される。その結果、モジュール相互接続部130から
の制纒コードはクロスリンク90からクロスリンク90
′を経由してメモリ・コントローラ70′へ送られるこ
とになる。
この第3の例では、転送がゾーン11のI10モジュー
ルに関係していることをDMAセットアツプ情報が示し
ているので、ドライバ940が付勢され、ドライバ93
7が消勢される。制御コードは、メモリ・コントローラ
70または70′からクロスリンク90′およびクロス
リンク経路25を経てモジュール相互接続部130へ伝
送される。クロスリンク・モード・ビット916がクロ
スリンク90がマスクであることを示すとき、C8MU
XA935はメモリ・コントローラ70から入力を選ぶ
。クロスリンク・モード・ビット916がクロスリンク
90がスレーブであることを示すとき、C8MUXA9
35はクロスリンク経路25から入力を選ぶ。クロスリ
ンクが二重モードで作動しているとき、C8MUXA9
35がメモリ・コントローラ70から入力を選ぶと共に
CSMUXA 935 mがクロスリンク経路25から
入力を選ぶが、あるいは、CSMUXA 935かクロ
スリンク経路25から入力を選ぶと共にC8MUXA9
35mがメモリーコ>トo−−y75から入力を選ぶ。
その結果、二重モードでは、モジュール相互接続部13
0.132へ送られ、I10モジュール100のファイ
ヤウオール■000.1010で受け取られる制御コー
ドは2つの異なったゾーンからのものとなる。
第4の例では、切り換えロジックは、メモリ・コントロ
ーラ70または75のいずれがからクロスリンク90.
90′または95.95′の切り換えロジックを経て、
そして、メモリ・コントローラ70′または75′のい
ずれがからクロスリンク90′または9−5′の切り換
えロジックを経て対になったシステム・リソース・バス
13o、132へDMAデータを送るように構築される
この経路は、DMA転送がダウン方向であり、ゾーン1
ビ (したがって、対になったモジュール相互接続部1
30’   132’)と関係することになり、一対の
モジュール相互接続部に結合したシステム・リソース(
たとえば、I10モジュール100’)と関係すること
になることをデコーダ971.996.998によって
復号されたDMAセットアツプ情報が示すときに、セッ
トアツプされる。
この第4の例では、DMA転送がダウン方向であり、ゾ
ーン11’と関係することになることをDMAセットア
ツプ情報が示すため、ドライバ984は付勢され、ドラ
イバ969.992は消勢され、M、UXC976はメ
モリ・コントローラ70から入力を選ぶ。DMAデータ
は、メモリ・コントローラ70′または70のいずれか
からクロスリンク90およびクロスリンク経路25を経
由し、クロスリンク90を経てモジュール相互接続部1
30’に伝送される。クロスリンク90がマスクである
ことをクロスリンク・モード・ビット916が示すとき
には、クロスリンク90’の切り換えロジックはメモリ
ーコントローラ70’から入力を選ぶ。クロスリンク9
oがスレーブであることをクロスリンク・モード・ビッ
ト916か示すときには、クロスリンク90′の切り換
えロジックはクロスリンク経路25から入力を選ぶ。
クロスリンクが二重モードで作動しているときには、ク
ロスリンク90′の切り換えロジックがメモリ・コント
ローラ70′から入力を選ぶと共にクロスリン/)′9
5′の切り換えロジックがクロスリンク経路25から入
力を選ぶが、あるいは、クロスリンク90′の切り換え
ロジックがクロスリンク経路25から入力を選ぶと共に
クロスリンク95′の切り換えロジックがメモリ・コン
トローラ75′から入力を選ぶ。その結果、二重モード
では、モジュール相互接続部130′  132’へ送
られ、I10モジュール100′のファイヤウオール1
000.101Oのところで受け取られたDMAデータ
は2つの異なったゾーンからのものとなる。
この例では、クロスリンク90かマスクであるが、ある
いは、二重モードで作動していることをクロスリンク・
モード・ビット916が示す場合には、ドライバ951
は付勢される。転送がゾーン11’に関係することにな
ることをDMAセットアツプ情報が示すため、C8MU
XD945はクロスリンク経路25から入力を選ぶつそ
の結果、制御コードはモジュール相互接続部130′か
らメモリ・コントローラ70へ伝送される。
この例では、転送がゾーン11′に関係していることを
DMAセットアツプ情報が示しているため、ドライバ9
46は消勢される。しかしなから、モジュール相互接続
部130′からの制御コードはクロスリンク90′から
クロスリンク90のれしいば947を経てメモリ・コン
トローラ70に送られることになる。
この第4の例では、転送がゾーン11′に関係している
ことをDMAセットアツプ情報が示しているので、ドラ
イバ937が付勢され、ドライバ940が消勢される。
制御コードは、メモリ・コントローラ70′あるいはメ
モリ・コントローラ70のいずれかからクロスリンク9
0およびクロスリンク経路25を経由してクロスリンク
90′を経てモジュール相互接続部130′へ送られる
クロスリンク90がスレーブであることをクロスリンク
・モード・ビット916が示すときには、クロスリンク
90′の切り換えロジックはメモリ・コントローラ70
′から入力を選ぶ。クロスリンク90がマスクであるこ
とをクロスリンク・モード・ビット916が示すときに
は、クロスリンク90′の切り換えロジックはクロスリ
ンク経路25から入力を選ぶ。クロスリンクが二重モー
ドで作動しているときには、クロスリンク90′の切り
換えロジックがメモリ・コントローラ70′から入力を
選ぶと共にクロスリンク95′の切り換えロジックがク
ロスリンク経路25から入力を選ぶが、あるいは、クロ
スリンク90′の切り換えロジックがクロスリンク経路
25から入力を選ぶと共にクロスリンク95′の切り換
えロジックかメモリ・コントローラ75′から入力を選
ぶ。
その結果、二重モードでは、モジュール相互接続部13
0’、132’へ送られ、I10モジュール100′の
ファイヤウオール1000.1010で受け取られた制
御コードは2つの異なったゾーンからのものとなる。
本発明によれば、システム・リソース(たとえば、I1
0モジュール100)の1つへの始動DMAコードの伝
送に応答して、肯定応答コードがメモリ・コントローラ
に送られる。第24A〜24E図に示すように、DMA
転送が試みられる毎に、C3UPライン上を送られてく
る最初の制卸コードはACKコードである。好ましくは
、システム・リソースは、始動DMAコードに応答して
メモリ・コントローラへ肯定応答コードを送って、この
システム・リソースがそれに結合した対のシステム・リ
ソース・バスの制御を行うことを示す。
この例では、ACKコードは、I10モジュール100
の7アイヤウオール1ooo、1010によって対のモ
ジュール相互接続部130.132を経由してクロスリ
ンク90.95へ送られ、ファイヤウオール1000.
1010がll32Tバス130を制御していることを
示す。メモリ・コントローラ70.75はパス88.8
9の単方向制御ラインC3UPを通してクロスリンク9
c95からACKコードを受け取る。ACKコートは、
クロスリンク90′、95′およびバス88′89′を
経由してクロスリンク9o、95からメモリ・コントロ
ーラ70’   75’へも送られる本発明では、DM
A転送かアップ方向であるとき、システム・リソースか
らの肯定応答コードの伝送後、システム・リソースはD
MAデータを、システム・リソースに結合した対になっ
たシステム・リソース・バスならびにクロスリンクの切
り換えロジックを経てメモリ・コントローラへ送る好ま
しくは、第24C〜・24E図に示すように、システム
・リソース(たとえば、I10モジュール100)から
メモリ・コントローラへのD M A転送中、DMAコ
ードがモジュール相互接続部130.132のC3UP
ラインを通してクロスリンク90.95に送られる。次
いて、DMAコードはクロスリンク90.95からクロ
スリンク/メモリ・コントローラ・バス88.89のC
3UPラインへ、そして(クロスリンク90’95′を
経て)クロスリンク/メモリ・コントローラーバス88
′  89′へ送られる。C3UPを通してのDMAコ
ードの伝送は、データがモジュール相互接続部130,
1322の双方向データ・ラインおよびクロスリンク/
メモリ・コントローラ・バス88.89.88’   
89’を通してメモリ・コントローラへ送られつつある
ことを示している。
システム・リソースのポインタ・レジスタ、たとえば、
I10モジュール100の共用メモリ・コントローラ1
050によって示されるDMAデータ・アドレスからシ
ステム・リソースによってアクセスされる。I10モジ
ュール100はこのDMAデータでモジュール相互接続
部130゜132の双方向データ・ラインを駆動し、ク
ロスリンク90.95.90’、95’はバス88.8
9.88’  89’を駆動し、J、のDMAデータを
メモリ・コントローラへ送る。これは第24C〜24E
図に示しである。
本発明によれば、DMA転送がダウン方向であるとき、
システム・リソースからの肯定応答コードの伝送後、メ
モリ・コントローラは、クロスリンクの切り換えロジッ
クおよびシステム・リソースに結合した対のシステム・
リソース・バスを経てDMAデータをシステム・リソー
スの1つに送る。第24A〜24B図に示す好ましい実
施例では、システム・リソース(たとえば、I10モジ
ュール1.00)へのDMA転送中、DMA、コードが
クロスリンク/メモリ曇コントローラーバス88.89
.88’   89’のC3DNラインを通してクロス
リンク90.95.90’   95’へ送られる。次
いで、DMAコードは、クロスリンク90.95からモ
ジュール相互接続部130.132のC3DNラインに
送られる。C3DNラインを通してのDMAコードの伝
送は、クロスリンク/メモリーコントローラーバス88
.89.88’  89’の双方向データ・ラインおよ
びモジュール相互接続部130.132を通してデータ
がシステム・リソースに送られつつあることを示してい
る。
DMAデータは、メモリ今コントローラのポインタ・レ
ジスタ、たとえば、メモリ喀コントローラ70のDMA
アドレス会レジスタ836によって示されるメモリ60
または60’のDMAアドレスから各メモリ・コントロ
ーラによってアクセスされる。メモリーコントローラ7
0.75.70’   75’はこのDMAデータでバ
ス88.89.8g’  89’の双方向データ・ライ
ンを駆動し、クロスリンク90.95はモジュール相互
接続部130.132の双方向データ・ラインを駆動し
、このDMAデータを第24A〜24B図に示すように
I10モジュール100のファイヤウオール1000.
1010へ送る。
本発明の好ましい実施例では、システム・リソース(た
とえば、I10モジュール100)からの肯定応答コー
ドの伝送後、メモリ・コントローラへストール・コード
が送られることがある。第24A〜24E図に示すよう
に、DMA転送中、ストール・コードはC3UPライン
を通して伝送され得る。好ましくは、システム・リソー
スは、DMA転送がダウン方向であるときにメモリ・コ
ントローラへストール・コードを送って、このシステム
・リソースがメモリ・コントローラからのDMAデータ
を受け取る準備ができていないことを示す。同様に、シ
ステム・リソースは、DMA転送がアップ方向であると
きにメモリ・コントローラへストール・コードを送り、
そのシステム・リソースがDMAデータをメモリーコン
トローラへ送る準備ができていないことを示す。
この例では、ストール・コードはI10モジュール10
0のファイヤウオール■000.1010によって対の
モジュール相互接続部130.132を経てクロスリン
ク90.95へ送られる。メモリ・コントローラ70.
75はバス88.89の単方向制御ラインC3UPを通
してクロスリンク90.95からストール・コードを受
け取る。このストール・コードは、クロスリンク90’
   95’およびバス88′  89′を経てクロス
リンク90.95からメモリ・コントローラ70’  
 75’へも伝送される。
第24A、24B図において、ここには、モジュール相
互接続部を通しての制御コードおよびDMAデータの伝
送が示しである。同じ制御コード、DMAデータがクロ
スリンク/メモリ・コントローラ・バスを通しても伝送
されるが、C3UPラインを通してのシステム・リソー
スによる制御コードの伝送からC3DNラインおよびデ
ータ・ラインを通してのメモリ・コントローラによる応
答の伝送までの時間はクロスリンク/メモリ・コントロ
ーラ・バスでは短い。
第24A、24B図に示すように、ACKコードの伝送
に応答してモジュール相互接続部130.132を通し
てDMAデータが送られる前に遅延があり、また、シス
テム・リソースによるストール・コードの伝送に応答し
てメモリ・コントローラがモジュール相互接続部130
.132を通してのDMAデータの伝送を停止する前に
遅延がある。応答時間はシステム・リソース・バスを通
しての制御コードおよびDMAデータの転送については
長くなっている。これは、クロスリンク経路25および
クロスリンク9o、95.90’95′の切り換えロジ
ックを経由して制御コードおよびDMAデータを送るた
めに付加的な遅延時間が導入されるからである。その結
果、もし成るシステム・リソースがストール・コードを
送り、メモリ・コントローラからDMAデータを受け取
る準備ができていないことを示す場合には、このシステ
ム・リソースは、なお、メモリ・コントローラカスドー
ル・コードを受け取る前にシステム・リソースに送られ
ることになる付加的なりMAデータを受け入れるように
充分に利用できる記憶容量を持たなければならない。
本発明によれば、メモリ・コントローラとシステム・リ
ソース(たとえば、I10モジュール100)の1つの
間でのDMAデータの伝送後、完了コードがメモリ・コ
ントローラへ送られる。
好ましくは、システム・リソースが完了コードをメモリ
・コントローラへ送り、DMAデータの伝送が成功した
ことを示す。第24A〜24C図に示すように、DMA
データの伝送が成功した後、完了コードがC3UPライ
ンを通して送られる。
ここに具体化したように、セットアツプ書き込みトラン
ザクション中にI10モジュール100のファイヤウオ
ールに送られるDMAカウントはDMA転送を通じてア
クセスされるべきDMAデータのバイト数を示す。好ま
しくは、多数のDMAデータの下位転送が行われてDM
Aカウントによって特定されるバイト数を伝送する。始
動コードが送られて各下位転送を開始させ、完了コード
が送られて下位転送の完了を示す。
この例では、完了コードはI10モジュール100のフ
ァイヤウオール1000.101Oによって対になった
モジュール相互接続部130.132を経てクロスリン
ク90.95へ送られ、ファイヤウオール1000.1
010が先のDMA下位転送中に無比較エラーを検出し
なかったことを示す。DMA転送がアップ方向であると
き、最後の下位転送後、すなわち、DMAカウントによ
って特定されるバイト数が伝送された後の完了コードの
伝送は、DMAデータの転送を通じてEDC/CRCエ
ラーを検出しなかったことも示す。メモリ・コントロー
ラ70.75はバス88.89のC3UPラインを通し
てクロスリンク90.95から完了コードを受け取る。
完了コードはクロスリンク90’   95’およびバ
ス88′  89′を経てクロスリンク90.95から
メモリ・コントローラ70’   75’へも送られる
本発明の好ましい実施例では、システム・リソース(た
とえば、I10モジュール100)の1つからの肯定応
答コートの伝送後、エラー・コードがメモリ・コントロ
ーラに送られることがある。
好ましくは、システム・リソースはメモリ・コントロー
ラへエラー・コートを送ってDMAデータ転送の不成功
を表示する。第24B、24■)、24E図に示すよう
に、試みられたD MAデータ伝送が不成功のとき、E
RRORコー[・またはCRCERRORコードがC3
UPラインを通して送られる。
第24B図に示す例では、DMA転送がダウン方向であ
るとき、ファイヤウオール比較回路1840 (第18
図)がI10モジュール100のファイヤウオール10
00.101Oによって用いられて、モジュール相互接
続部130.132を通してI10モジュール100に
送られる2組のDMAデータ、制御コードの間の無比較
エラーがあるかどうかを検出する。ファイヤウオール1
000.1010が制御コード、DMAデータの下位転
送中に無比較エラーを検出したならば、ERRORコー
ドはI10モジュール100のファイヤウオールl00
0、l010によって対のモジュール相互接続部130
.132を経てクロスリンク90.95へ送られる。メ
モリ・コントローラ70.75はハ゛ス88.89のC
3UPラインを通してクロスリンク90.95からER
RORコードを受け取る。ERRORコードは、クロス
リンク90’、95’およびバス88′89′を経てク
ロスリンク90.95からメモリ・コン)・ローラ70
′  75’へも送られる。
第241〕図に示す例において、DMA転送がアップ方
向であるとき、ロジック・ゲート960゜960mがク
ロスリンク90.95によって使用され、モジュール相
互接続部130,132を通して■/′0モジュール1
00から送られてくる2組の制御コード間に無比較エラ
ーがあるかどうかを検出する。もしロジック・ゲート9
60.960mが先の制御コードの下位転送中に無比較
ユ、ラーを検出したならば、E RR,ORコードがク
ロスリンク90.95によってバス88.89のC3U
Pラインを通してメモリ・コントローラ70.75に送
られる。クロスリンク90’−95’ もロジック・ゲ
ートを包含し、これらのロジック・ゲートは、I10モ
ジュール100からクロスリンク経路を経てクロスリン
ク90’   95’に送られてきた2組の制御コード
間に無比較エラーがあるかどうかを検出し、メモリ・コ
ントローラ70′75′にERRORコードを送る。
最後に、第24E図に示す例では、DMA転送がアップ
方向であるとき、I10モジュール100のファイヤウ
オール1000.1otoのDMA制御器1890はE
 D C/ CRC発生器で発生したEDC/CRCを
読み出し、I10モジュール100によってメモリ・コ
ントローラへ送られたDMAデータになんらかのEDC
/CRCエラーがあるかどうかを検出する。これは、最
後の下位転送後、すなわち、DMAカウントで特定され
たバイト数が伝送されてしまった後にのみ生じる。
ファイヤウオール1000.1010が先のDMAデー
タ転送についてCRCエラーを検出した場合、CRCE
RRORコードがI10モジュール100のファイヤウ
オール1000.1010によって対のモジュール相互
接続部130.132を経てクロスリンク90.95へ
送られる。メモリ・コントローラ70.75はノくス8
8.89のC3UPラインを通してクロスリンク90.
95からCRCERRORコードを受け取る。CRCE
RRORコードはクロスリンク90’   95′およ
びバス88’   89’を経てクロスリンク90.9
5からメモリ・コントローラ70’   75’にも送
られる。
読み出し、書き込みさいくる(トランザクション)軽油
のデータの転送を次に説明する。第25A〜25D図を
参照して、ここには、書き込み情報(第25A、25B
図)および読み出し情報(第25C125D図)をクロ
スリンク/メモリ・コントローラ・バス88.89を通
して転送する状態を示すタイミング図が示しである。
本発明によれば、プロセッサが書き込みあるいは読み出
し情報をデータ・ルータに送る。たとえば、CPUモジ
ュール30はクロスリンク/メモリ・コントローラ・バ
ス88.89のクロスリンク90.95へ書き込み情報
を送る。
書き込み情報、読み出し情報は、それぞれ、書き込みト
ランザクション、読み出しトランザクションを示す。好
ましい実施例では、書き込み、読み出しトランザクショ
ンはクロスリンク/メモリ・コントローラ1バス88.
89のC3DNラインを通してのメモリ・コントローラ
70.75からの制御コードの伝送によって識別される
。第25A〜25D図に示すように、WR,ITEコー
ドがCPUモジュール30によってC3DNラインを通
して送られて書き込みトランザクションを特に示し、R
EADコードはC3DNラインを通して送られて読み出
しトランザクションを特に示す。先に説明したセットア
ツプ書き込みトランザクションは、第25A、25B図
に示す書き込みトランザクションと同じように見えるが
、5ETUP  WRITEコードがC3DNラインを
通して送られてそれを書き込みトランザクションから区
別する。
本発明では、プロセッサからの書き込み情報は書き込み
アドレスを含み、プロセッサから送られてくる読み出し
情報は読み出しアドレスを含む。
書き込みアドレスは書き込みデータに対する転送先を示
し、読み出しアドレスは読み出しデータのための転送元
を示す。ここで具体化し、第25A〜25D図に示すよ
うに、書き込みあるいは読み出しアドレスの最上位ビッ
トは書き込みトランザクションあるいは読み出しトラン
ザクションのスタートでクロスリンク/メモリ・コント
ローラ1バス88.89のデータ・ラインを通して送ら
れるデータに含まれる。
システム・リソース(たとえば、I10モジュール10
0)内に書き込みデータを格納したり、あるいは、シス
テム・リソースからの読み出しデータにアクセスするた
めに、書き込みあるいは読み出しトランザクションを開
始するプロセッサはシステム・リソースへ情報を送らな
ければならない。しかしなから、システム10のI10
モジュールはCPUモジュール30.30′に直結して
いない。代わりに、I10モジュールはシステム・リソ
ース・バス、すなわち、モジュール相互接続部130.
132.130’   132’を経てアクセスされな
ければならない。
クロスリンク90.95.90′  95’は、成る特
定のシステム・リソースに特定のプロセッサを接続する
経路をセットアツプするデータ・ルータとして作用する
。しかしなから、このステージの読み出しデータの転送
元あるいは書き込みデータの転送先であるシステム・リ
ソースがモジュール相互接続部130.132あるいは
モジュール相互接続部130’   132’につなが
れることがるので、クロスリンクでは切り換えロジック
が必要である。
転送先を特定する書き込みアドレスを含む書き込み情報
が、たとえば、メモリ・コントローラ70からクロスリ
ンク90へ伝送された後、この情報は転送先に対応する
システム・リソースに送られなければならない。たとえ
ば、転送先が■10モジュール100に対応している場
合、クロスリンク90の切り換えロジックはメモリ・コ
ントローラ70からモジュール相互接続部130へ書き
込み情報を送るように構築しなければならない。
一方、転送先がI10モジュー刀刈00′に相当する場
合には、クロスリンク90の切り換えロジックは、クロ
スリンク経路25およびクロスリンク90′を経てメモ
リ・コントローラ70からモジュール相互接続部130
′へ書き込み情報を送るように構築しなければならない
同様に、転送元を特定する読み出しアドレスを含む読み
出し情報が、たとえば、メモリ・コントローラ70から
クロスリンク90へ送られたならば、この読み出し情報
は転送元に対応するシステム・リソースへ送られてメモ
リ・コントローラ70によって読み出しデータのアクセ
スを可能としなければならない。
したがって、本発明によれば、データ・ルータはトラン
ザクション中に読み出しあるいは書き込みアドレスを復
号する手段を包含する。データ・ルータは、どの対のシ
ステム會すソースQバス、モジュール相互接続部130
.132あるいはモジュール相互接続部130’   
132’かトランザクションに関係するかを決定する。
データ・ルータは、転送先(書き込みトランザクション
の場合)あるいは転送元(読み出しトランザクションの
場合)がシステム・リソース・バスに結合したシステム
・リソースに対応するかどうかも決定する。
第11.12図に示す本発明の好ましい実施例では、デ
コーダ971.996.998が設けてあり、書き込み
あるいは読み出しトランザクション中に伝送される書き
込みあるいは読み出しアドレスを復号してメモリ・コン
トローラと一対のシステム・リソース・バスの間の経路
をセットアツプするのに必要な内部制御信号を発生する
ようになっている。第11図は、クロスリンク/メモリ
・コントローラ会バス88.89およびモジュール相互
接続部130.132のC3UP、C3DNライン間で
の制御コードの際に関係するクロスリンク90.95の
切り換えロジックを示す。第12図は、クロスリンク/
メモリ・コントローラ・バス88.89およびモジュー
ル相互接続部130.132の双方向データ・ライン間
でのデータ(たとえば、書き込み、読み出しアドレス、
書き込み、読み出しデータ)の転送に関係するクロスリ
ンク90の切り換えロジックを示す。
ここに具体化したように、読み出しまたは書き込みトラ
ンザクション中に送られる読み出しまたは書き込みアド
レスにおける1ビツトは、転送元あるいは転送先が置か
れているゾーンを識別する。
その結果、クロスリンクのデコーダは、このトランザク
ションでどの対のモジュール相互接続部が関係すること
になるかを決定できる。さらに、読み出しまたは書き込
みアドレスがシステム】0の110スペース内のアドレ
スに対応する場合、クロスリンクのデコーダは、このト
ランザクションが一対のモジュール相互接続部に結合し
たシステム・リソース、すなわち、I10モジュールに
関係するかどうかを決定することができる。
読み出しあるいは書き込みトランザクションの開始に応
答して、クロスリンク90.90′95.95′の切り
換えロジックは復号された読み出しまたは書き込みアド
レスに従って構築される。
システム10が二重モードで作動しているとき、クロス
リンクのデータ切り換えロジックは、トランザクション
がゾーン11の対のシステム・リソース・バス130.
132に関係する場合でかつ転送元または転送先がシス
テム・リソース・バスに結合したシステム・リソースに
対応している場合に、データ、すなわち、読み出しアド
レス、書き込みアドレスあるいは書き込みデータをシス
テム・リソース・バス130.132へ送るように構築
される。この例では、CPU40からクロスリンク90
を経て、あるいは、CPU40’からクロスリンク90
’   90を経てモジュール相互接続部130ヘデー
タを送り、また、CPU50からクロスリンク90を経
て、あるいは、CPU50′からクロスリンク95’ 
  95を経てモジュール相互接続部132へデータを
送るようにも経路が構築される。
モジュール相互接続部130.132に通じるこの経路
をセットアツプするための、第11.12図に示す切り
換えロジックの正確な構造を、DMAデータをシステム
噛リソース・バス130.132に送るDMA転送の第
3例に関連して先に説明した。
トランザクションがゾーンエビの対になったシステム・
リソース・バス、130.132′に関係し、転送元あ
るいは転送先がシステム・リソース・バスに結合したシ
ステム働リソースに対応する場合には、クロスリンクの
データ切り換えロジックはシステム・リソース・バス1
30’132′にデータを送るように構築される。この
第2の例では、経路は、CPU40′からクロスリンク
90′を経て、あるいは、CPU40からクロスリンク
90.90′を経てモジュール相互接続部130′へデ
ータを送り、かつ、CP U50′からクロスリンク9
5′を経て、あるいは、CPU50からクロスリンク9
5.95′を経てモジュール相互接続部132′へデー
タを送るように構築される。
モジュール相互接続部130.132′に通じるこの経
路をセットアツプするための、第11.12図に示す切
り換えロジックの正確な構成は、DMAデータをシステ
ム参すソースψバス130′132′に送るDMA転送
の第4例に関連して先に説明した。
本発明の好ましい実施例では、トランザクションの始め
でクロスリンクに送られる読み出しまたは書き込みアド
レスは、切り換えロジックを構築するために要求される
。その結果、アドレスを復号し、切り換えロジックを構
築し、次いで、同じア[・レスを切り換えロジックを経
て転送元あるいは転送先へ送る時間が充分にない。
しかしなから、成るトランザクションの始めでプロセッ
サによって与えられる読み出しまたは書き込みアドレス
は転送元あるいは転送先に対応するシステム・リソース
に送られなければならない。
読み出しアドレスは、システム番リソースがこの読み出
しアドレスによって特定される転送元からの読み出しデ
ータにアクセスことを可能とするために必要であり、書
き込みアドレスは、それによって指定される転送先に書
き込みデータをシステム・リソースが格納できるように
するために必要である。
切り換えロジックを構築した後に読み出しまたは書き込
みアドレスを伝送のために利用できるようにシステムを
構成する1つの方法は、切り換えロジックを構築するに
充分な長い時間にわたってクロスリンクに入るすべての
データをラッチすることであろう。しかしなから、これ
には、プロセッサからシステム・リソースに送られるす
べてのデータを保持する回路をシステムに追加しなけれ
ばならない。さらに、他のロジックも追加して読み出し
または書き込みトランザクションの始めに送られるアド
レスのみを識別し、遅延させない限り、システム内の構
成要素間のパイプライン遅延が増大することになる。
コンピュータ・システム10では、読み出し、書き込み
アドレスは、いかなる特別な回路もクロスリンクに追加
せず、また、プロセッサから送られてくるデータをI/
′0モジュールで受け取る前に必要な遅延を増大させる
ことなしに、プロセッサからシステム・リソースへ送ら
れる。
本発明によれば、読み出しまたは書き込みアドレスは、
読み出しまたは書き込みトランザクション中にプロセッ
サからデータ・ルータへ再伝送される。第25A〜25
D図に示すように、読み出しまたは書き込みアドレスの
最上位ビット(トランザクションの始めでバス88.8
9のC3DNラインを通して送られる)は、次いで、C
3DNラインを通して再伝送される。
本発明においては、プロセッサによって再伝送された読
み出しまたは書き込みアドレスは、次に、転送元あるい
は転送先が対になったシステム・リソース・バスに結合
したシステム・リソース(たとえば、I10モジュール
)に相当する場合には、このトランザクションに関係す
る適切な対のシステム・リソース・バスに送られる。ア
ドレスは、クロスリンク90.95.90’   95
’を経てモジュール相互接続部130.132またはモ
ジュール相互接続部130’   132’に送られる
アドレスの再伝送は、クロスリンクに、特定のプロセッ
サから転送元あるいは転送先に相当するシステム・リソ
ースへの経路をセットアツプするに充分な時間を与える
。その結果、アドレスが再伝送されるとき、システム・
リソースに結合した対のモジュール相互接続部ヘアドレ
スを送るように切り換えロジックか構築される。
本発明によれば、書き込みアドレスの伝送後、プロセッ
サは各プロセッサに結合したデータ・ルータに書き込み
データを送る。クロスリンクの切り換えロジックが正し
く構築され、したがって、この書き込みデータは切り換
えロジックを経てこのトランザクションに関係する適切
な対のシステム・リソース・バスへ送られる。書き込み
データを切り換えロジックによって送るこの方法は再伝
送された書き込みアドレスを送る方法と同しである。
第25A、25B図に示すように、書き込みデータは、
バス88.89の双方向データ・ラインを通してのメモ
リ・コントローラ70.75による書き込みトランザク
ション中に与えられる。書き込みアドレスおよび書き込
みデータを受け取るシステム・リソースは書き込みアド
レスによりて指定される転送先に書き込みデータを格納
しようと試みることによって応答する。
本発明によれば、読み出しトランザクション中に切り換
えロジックによって読み出しアドレスを送った後、デー
タ・ルータのデータ切り換えロジックは、データ・ルー
タによって復号された読み出しアドレスに従って再構築
される。第12図に示すように、読み出しアドレスがダ
ウン方向へ送られた後にデータ切り換えロジックが再構
築され、読み出しデータをアップ方向でCPUモジュー
ル30.30′へ送るのを可能とする。
システム10が二重モードで作動しているとき、クロス
リンクのデータ切り換えロジックは、そのトランザクシ
ョンがゾーン11の対のシステム・リソース・バス■3
0.132に関係し、転送元がシステム・リソース・バ
スに結合したシステム・リソースに相当する場合に、シ
ステム・リソース・バス130.132から読み出しデ
ータを送るように構築される。この例では、経路は、モ
ジュール相互接続部130からクロスリンク90を経て
CPU40へ、クロスリンク90を経てCPU40’へ
読み出しデータを送り、かつまた、モジュール相互接続
部132からクロスリンク95を経て、CPU50’へ
クロスリンク95.95′を経て読み出しデータを送る
ように構築される。
モジュール相互接続部130.132からのこの経路を
セットアツプするための、第12図に示すデータ切り換
えロジックの正確な構成は、DMAデータをシステム・
リソース・バス130.132から送るDMA転送の第
1例に関連して先に説明した。
もしトランザクションがゾーン11’の対になったシス
テム・リソース・バス130’   132’に関係し
ており、転送元がシステム・リソース・バスに結合した
システム・リソースに相当する場合には、クロスリンク
のデータ切り換えロジックは、システム・リソース・バ
ス130’   132’から読み出しデータを送るよ
うに構築される。この第2の例では、経路は、モジュー
ル相互接続部130′からクロスリンク90’を経てC
PU40′へ、そして、クロスリンク90’  90を
経てCPU40へ読み出しデータを送り、また、モジュ
ール相互接続部132′からクロスリンク95′を経て
CPU50’へ、そして、クロスリンク95’   9
5を経てCPU50へ読み出しデータを送るように構築
される。
モジュール相互接続部130’   132’からのこ
の経路をセットアツプするための、第12図に示すデー
タ切り換えロジックの正確な構成は、DMA7”−夕を
システム・リソース・バス130′132′から送るD
MA転送の第2例に関連して先に説明した。
読み出しアドレスの受領に応答して、システム・リソー
スは読み出しアドレスで指定された転送元から読み出し
データにアクセスし、この読み出しデータをシステム・
リソースに結合した対のシステム・リソース・バスへ送
る。読み出しアドレスの伝送後にクロスリンクのデータ
切り換えロジックが再構築される。したがって、二重モ
ードでは、読み出しデータはクロスリンクの各々で受け
取られ、切り換えロジックを経て各プロセッサへ送られ
る。
第25C図に示すように、読み出しトランザクジョンの
開始に応答して、読み出しデータは、バス88.89.
88’  89’の双方向データ・ラインを通してクロ
スリンク90.95.90′95′によってメモリ・コ
ントローラ70.75.70’   75’へ送られる
。その結果、CPUモジュール30.30′のCPU4
0.50.40’50′が読み出しアドレスで指定され
る転送元に位置する読み出しデータにアクセスすること
ができる。
好ましくは、第25A、25C図に示すように、システ
ム・リソースのうちの1つ(たとえば、I10モジュー
ル100)への書き込みアドレス、書き込みデータある
いは読み出しアドレスの伝送に応答して、肯定応答コー
ドが、モジュール相互接続部130.132.130’
   132’のC3UPラインおよびバス88.89
.88′、89′のC3UPラインを通してプロセッサ
の各々に送られる。プロセッサから読み出しまたは書き
込み情報を受け取ったシステム・リソースはACK制御
コードを各プロセッサに送って書き込みアドレス、書き
込みデータあるいは読み出しアドレスの伝送が成功した
ことを示す。
たとえば、I10モジュール100が書き込みアドレス
、書き込みデータまたは読み出しアドレスを受けた場合
、I10モジュール100のファイヤウオール1000
.10]0は対のモジュール相互接続部130.132
を経てクロスリンク90.95へACK制御コードを送
り、ファイヤウオール1000.1010がダウン方向
でのプロセッサからのデータ伝送にエラーを検出しなか
ったことを示す。I10モジュール30ではメモリ・コ
ントローラ70.75かバス88.89の単方向制御ラ
インC3UPを通してクロスリンク90.95からAC
Kコードを受け取る。このACKコートは、クロスリン
ク90’   95’およびハス88′  89’を経
由してクロスリンク90.95からCPUモジュール3
0′のメモリ・コントローラ70’   75’にも送
られる。
好ましくは、第25B、25D図に示すように、システ
ム・リソースのうちの1つ(たとえば、■10モジュー
ル100)への書き込みアドレス、書き込みデータまた
は読み出しアドレスの伝送に応答して、エラー・コード
がモジュール相互接続部130.132.130’、1
32’のC3UPラインおよびバス88.89.88’
   89’のC3UPラインを通してプロセッサの各
々へ送られる。プロセッサから読み出しまたは書き込み
情報を受け取ったシステム・リソースはプロセッサの各
々へERROR制御コードを送って書き込みアドレス、
書き込みデータまたは読み出しアドレスの伝送が不成功
であることを示す。
別の例として、I10モジュール100が書き込みアド
レス、書き込みデータまたは読み出しアドレスを受け取
った場合、I10モジュール100のファイヤウオール
1000.1010は対のモジュール相互接続部130
.132を経てクロスリンク90.95へERROR制
御コードを送り、ファイヤウオール1000.1oio
がダウン方向でプロセッサからのデータ伝送においてエ
ラーを検出したことを示す。システム10の好ましい実
施例では、ERROR制御コードは、モジュール相互接
続部130を通してCPUモジュールの1つから送られ
てきたデータをモジュール相互接続部132を通して他
のCPUモジュールから送られてきたデータと比較した
結果として無比較エラーを検出したことを示す。CPU
モジュール30では、メモリ・コントローラ70.75
はバス88.89の単方向制御ラインC3UPを通して
クロスリンク90.95からERROR制御コードを受
け取る。このERROR制御コードは、クロスリンク9
0.95からクロスリンク90’   95’およびバ
ス88’   89’を経由してCPUモジュール30
′のメモリ・コントローラ70’   75’にも送ら
れる。
好ましくは、DMA始動アドレス情報を送るのに用いら
れる書き込みトランザクションを含む読み出し、書き込
みトランザクション中、そして、DMAカウントを送る
のに用いられるセットアツプ書き込みトランザクション
中、読み出しまたは書き込みアドレス情報は、クロスリ
ンク/メモリ・コントローラ・バス88.89の双方向
データ・ラインを通してバイト・マスク情報でインター
リーブされる。第25A、25C図に示すようにバイト
・マスク−データのうち4つのビットがデータの各ロン
グワード(すなわち、4つのバイトのために設けである
。その結果、成るアドレス指定されたロングワード内の
特定のバイトがバイト・マスク・データを用いて選ばれ
得る。
本発明の好ましい実施例では、DMAを経内した成る種
の情報転送は成る特定のクロック位相と同期して生じる
。第24A〜24E図に示すように、DMAデータかい
ずれかの方向に転送されるときにはいっても、各ロング
ワードの伝送の始めがクロック位相P6と同期させられ
る。このクロック位相は位相発生器2310(第23図
)で発生する。さらに、完了コード、エラー・コードは
クロック位相P6と同位相てC3UPラインを通してメ
モリ・コントローラへ常に送られている。
第24A〜24E図に示す本発明の実施例ではクロック
位相P6と同期してC3UPラインを通してファイヤウ
オールによってメモリーコントローラへACKコードが
送られる。このとき、ACKコードの伝送に続いて、ス
トール・コードが伝送される。これは、クロスリンク/
メモリ・コントローラ・バス88.89の双方向データ
・ラインが16個のデータ・ビットしか搬送しないから
である。一方、メモリ・コントローラは32ビツトの単
位でデータを処理することができる。あるいは、ACK
コードがクロック位相P6と同相で伝送されない場合に
は、引き続くストール・コードは不要であるが、先行の
クロック位相P6の間はC3UPラインはアイドルとな
っていなければならない。
当業者にとって明らかなように、発明の精神、範囲から
逸脱することな(種々の修正、変更を本発明のデータ転
送プロトコルで行うことができる。
したがって、本発明は、特許請求の範囲内に入るものな
らびにその均等物である限り、上記の修正、変更をカバ
ーすることを意図している。
【図面の簡単な説明】
第1図は、本発明の実施する故障許容コンピュータ・シ
ステムの好適な実施例のブロック図である。 第2図は、第1図の故障許容コンピュータ・システムを
有する物理的ハードウェアを示す。 第3図は、第1図の故障許容コンピュータ・システムに
示すCPUモジュールのブロック図である。 第4図は、第1図に示すコンピュータ・システムの相互
に接続されたCPUモジュールとI10モジュールのブ
ロック図を示す。 第5図は、第1図に示す故障許容コンピュータ・システ
ムのメモリーモジュールのブロック図を示す。 第6図は、第5図に示すメモリ・モジュールの制御ロジ
ックの構成要素の詳細図である。 第7図は、第3図に示すCPUモジュールのプライマリ
・メモリ制御装置の部分ブロック図を示す。 第8図は、第3図のCPUモジュールのプライマリ−メ
モリ制御装置のDMAエンジンのらブロック図である。 第9図は、第3図のCPUモジュールのプライマリ・メ
モリ制御装置のエラー処理回路図である。 第1θ図は、第3図に示すCPUモジュールのクロスリ
ンクの幾つかのレジスタの図である。 第11図は、第3図に示すCPUモジュールのクロスリ
ンクに制御信号を流す構成要素のブロック図である。 第12図は、第3図に示すCPUモジュールのプライマ
リ・クロスリンクにデータとアドレス信号を流す構成要
素のブロック図である。 第13図は、第3図に示すCPUモジュールのクロスリ
ンクの状態を示す状態図である。 第14図は、第1図の故障許容コンピュータ・システム
のタイミング・システムのブロック図である。 第15図は、第14図のタイミング・システムによって
発生されるタロツク信号のタイミング図である。 第16図は、第14図に示すタイミング、システムの位
相検出器の詳細図である。 第17図は、第1図のコンピュータ・システムのI10
モジュールのブロック図である。 第18図は、第17図に示すI10モジュールのファイ
ヤウオールの構成要素のブロック図である。 第19図は、第1図のコンピュータ・システムのクロス
リンク経路の構成要素の詳細図である。 第20A図ないし第20E図は第1図のコンピュータ・
システムのデータ・フロー図である。 第21図は、リセット信号の流れを示すゾーン20のブ
ロック図である。 第22図は、第3図に示すCPUモジュールのリセット
に含まれる構成要素のブロック図である。 第23図は、クロック・リセット回路の図である。 第24A図ないし第24E図は、DMAを経由するデー
タ転送のタイミング図である。 第25A図ないし第25D図は、読み取りサイクルおよ
び書き込みサイクルを介したデータ転送のタイミング図
である。

Claims (31)

    【特許請求の範囲】
  1. (1)コンピュータ・システムの構成要素間でDMAを
    経てデータを転送する方法であって、コンピュータ・シ
    ステムがメモリ・コントローラと、システム・リソース
    に結合した第1システム・リソース・バスと、システム
    ・リソースに結合した第2のシステム・リソース・バス
    と、データ・ルータとを包含し、このデータ・ルータが
    メモリ・コントローラを第1または第2のシステム・リ
    ソース・バスに結合する切り換えロジックを包含する方
    法において、 セットアップ書き込みトランザクションを指定するDM
    Aセットアップ情報をメモリ・コントローラからシステ
    ム・リソースの1つにデータ・ルータおよび前記システ
    ム、リソースに結合したシステム・リソース・バスを経
    由して伝送し、このDMAセットアップ情報がDMA転
    送に対応しており、このDMA転送の方向を前記システ
    ム・リソースから前記メモリ・コントローラへのアップ
    方向あるいは前記メモリ・コントローラから前記システ
    ム・リソースへのダウン方向のいずれかとして指示し、
    DMA転送がどのシステム・リソースと関係することに
    なるかを指示し、前記DMA転送がシステム・リソース
    ・バスの1つに結合した1つのシステム・リソースと関
    係することになるかどうかを指示する段階と、 前記セットアップ書き込みトランザクション中にデータ
    ・ルータにおいて前記DMAセットアップ情報を復号し
    、どのシステム・リソース・バスと前記DMA転送が関
    係することになるかを決定し、前記DMA転送がシステ
    ム・リソース・バスのうちの1つに結合した1つのシス
    テム・リソースと関係することになるかどうかを決定す
    る段階と、 前記メモリ・コントローラから前記システム・リソース
    へデータ・ルータならびに前記システム・リソースに結
    合したシステム・リソース・バスを経由して始動DMA
    コードを伝送する段階と、 前記始動DMAコードの伝送に応答して、かつ、前記デ
    ータ・ルータによって復号された前記DMAセットアッ
    プ情報に従って前記データ・ルータにおいて切り換えロ
    ジックを構築する段階であり、 前記切り換えロジックが、前記DMA転送がアップ方向
    であり、第1システム・リソース・バスと関係すること
    になり、また、システム・リソース・バスのうちの1つ
    に結合したシステム・リソースと関係することになると
    きに、前記第1システム・リソースから前記メモリ・コ
    ントローラへDMAデータを送るように構築され、 前記切り換えロジックが、前記DMA転送がアップ方向
    であり、第2のシステム・リソース・バスと関係するこ
    とになり、また、システム・リソース・バスのうちの1
    つに結合した1つのシステム・リソースと関係すること
    になるときに、第2システム・リソース・バスから前記
    メモリ・コントローラへDMAデータを伝送するように
    構築され、 前記切り換えロジックが、前記DMA転送がダウン方向
    であり、第1システム・リソース・バスと関係すること
    になり、また、システム・リソース・バスのうちの1つ
    に結合したシステム・リソースと関係することになると
    きに、前記メモリ・コントローラから前記第1システム
    ・リソース・バスへDMAデータを送るように構築され
    、 前記切り換えロジックが、前記DMA転送がダウン方向
    であり、第2のシステム・リソース・バスと関係するこ
    とになり、また、システム・リソース・バスのうちの1
    つに結合した1つのシステム・リソースと関係すること
    になるときに、前記メモリ・コントローラから第2シス
    テム・リソース・バスへDMAデータを伝送するように
    構築されるようにした段階と、 前記DMA始動コードの伝送に応答して、前記システム
    ・リソースからそれに結合したシステム・リソース・バ
    スおよび前記データ・ルータの切り換えロジックを経由
    して前記メモリ・コントローラへ肯定応答コードを伝送
    する段階と、 前記DMA転送がアップ方向であるときに前記肯定応答
    コードの伝送後に、前記システム・リソースからそれに
    結合したシステム・リソース・バスおよび前記データ・
    ルータの切り換えロジックを経由して前記メモリ・コン
    トローラへDMAデータを伝送する段階と、前記DMA
    転送がアップ方向であるときに前記肯定応答コードの伝
    送後に、前記メモリ・コントローラから前記システム・
    リソースへ前記データ・ルータの切り換えロジックおよ
    び前記システム・リソースへ結合したシステム・リソー
    ス・バスを経由してDMAデータを伝送する段階と、 DMAデータの伝送後に、前記システム・リソースから
    前記メモリ・コントローラへ前記システム・リソースに
    結合したシステム・リソース・バスおよび前記データ・
    ルータの切り換えロジックを経由して完了コードを伝送
    し、 DMAデータ伝送が成功したことを示す段階とを包含す
    ることを特徴とする方法。
  2. (2)請求項1記載の方法において、さらに、前記肯定
    応答コードの伝送後に、前記データ・ルータの切り換え
    ロジックから前記メモリ・コントローラへエラー・コー
    ドを伝送してDMAデータ伝送の不成功を示す段階と包
    含することを特徴とする方法。
  3. (3)請求項2記載の方法において、さらに、前記肯定
    応答コードの伝送後に、前記システム・リソースから前
    記メモリ・コントローラへこのシステム・リソースに結
    合したシステム・リソース・バスおよび前記データ・ル
    ータの切り換えロジックを経由してストール・コードを
    伝送して、前記システム・リソースが前記メモリ・コン
    トローラからダウン方向に送られてくる DMAデータを受け入れる準備ができていないことを示
    すと共に、前記システム・リソースがアップ方向でDM
    Aデータを送る準備にできていないことを示す段階を包
    含することを特徴とする方法。
  4. (4)請求項1記載の方法において、さらに、アップ方
    向におけるDMAデータの伝送後に、前記システム・リ
    ソースから前記メモリ・コントローラへ前記システム・
    リソースに結合したシステム・リソース・バスおよび前
    記データ・ルータの切り換えロジックを経由してエラー
    ・コードを伝送して、DMAデータ伝送でのエラーを示
    す段階を包含することを特徴とする方法。
  5. (5)請求項4記載の方法において、エラー・コードが
    DMAデータ伝送におけるCRCエラーを示すCRCエ
    ラー・コードであることを特徴とする方法。
  6. (6)請求項5記載の方法において、さらに、前記肯定
    応答コードの伝送後に、前記システム・リソースから前
    記メモリ・コントローラへこのシステム・リソースに結
    合したシステム・リソース・バスおよび前記データ・ル
    ータの切り換えロジックを経由してストール・コードを
    伝送して、前記システム・リソースがアップ方向でDM
    Aデータを送る準備ができていないことを示す段階を包
    含することを特徴とする方法。
  7. (7)請求項4記載の方法において、さらに、前記肯定
    応答コードの伝送後に、前記システム・リソースから前
    記メモリ・コントローラへこのシステム・リソースに結
    合したシステム・リソース・バスおよび前記データ・ル
    ータの切り換えロジックを経由してストール・コードを
    伝送して、前記システム・リソースがアップ方向でDM
    Aデータを送る準備ができていないことを示す段階を包
    含することを特徴とする方法。
  8. (8)請求項1記載の方法において、さらに、前記肯定
    応答コードの伝送後に、前記システム・リソースから前
    記メモリ、コントローラへこのシステム・リソースに結
    合したシステム・リソース・バスおよび前記データ・ル
    ータの切り換えロジックを経由してストール・コードを
    伝送して、前記システム・リソースが前記メモリ・コン
    トローラからダウン方向に送られてくる DMAデータを受け入れる準備ができていないことを示
    すと共に、前記システム・リソースがアップ方向でDM
    Aデータを送る準備ができていないことを示す段階を包
    含することを特徴とする方法。
  9. (9)請求項1、2、3、4、7、8のうちいずれか1
    つに記載の方法において、前記システム・リソースがそ
    れによってアクセスされるべきDMAデータ・アドレス
    を示すポインタ・レジスタを有し、さらに、 書き込みトランザクション中にメモリ・コントローラか
    ら前記システム・リソースへデータ・ルータならびに前
    記システム・リソースに結合したシステム、リソース・
    バスを経由してDMA始動アドレス情報を伝送し、次い
    で、前記始動DMAデータを前記メモリ・コントローラ
    から前記システム・リソースへ伝送し、前記DMA始動
    アドレス情報が前記DMA転送中に前記システム・リソ
    ースによってアクセスされるべきDMAデータ・アドレ
    スを特定する段階と、 前記メモリ・コントローラから前記システム・リソース
    への前記DMA始動アドレス情報の伝送後に、前記シス
    テム・リソースのポインタ・レジスタにDMAデータ・
    アドレスを格納する段階と を包含することを特徴とする方法。
  10. (10)請求項9記載の方法において、前記システム・
    リソースが前記DMA転送中に前記システム・リソース
    によってアクセスされるべきDMAデータのバイト数を
    示すカウント・レジスタを有し、さらに、 書き込みトランザクション中にメモリ・コントローラか
    ら前記システム・リソースへデータ・ルータならびに前
    記システム・リソースに結合されたシステム・リソース
    ・バスを経由してDMAカウント情報を伝送し、次いで
    、前記メモリ・コントローラから前記システム・リソー
    スへ前記始動DMAコードを伝送し、前記 DMAカウント情報が前記DMA転送中に前記システム
    ・リソースによってアクセスされるべきDMAデータの
    バイト数のDMAカウントを特定するようにした段階と
    、 前記メモリ・コントローラから前記システム・リソース
    への前記DMAカウント情報の伝送後に、前記システム
    ・リソースのカウント・レジスタにDMAカウントを格
    納する段階と を包含することを特徴とする方法。
  11. (11)請求項1、2、3、4、7、8のうちいずれか
    1つに記載の方法において、前記システム・リソースが
    前記DMA転送中に前記システム・リソースによってア
    クセスされるべきDMAデータのバイト数を示すカウン
    ト・レジスタを有し、さらに、 書き込みトランザクション中にメモリ・コントローラか
    ら前記システム・リソースへデータ・ルータならびに前
    記システム・リソースに結合されたシステム・リソース
    ・バスを経由してDMAカウント情報を伝送し、次いで
    、前記メモリ・コントローラから前記システム、リソー
    スへ前記始動DMAコードを伝送し、前記 DMAカウント情報が前記DMA転送中に前記システム
    ・リソースによってアクセスされるべきDMAデータの
    バイト数のDMAカウントを特定するようにした段階と
    、 前記メモリ・コントローラから前記システム・リソース
    への前記DMAカウント情報の伝送後に、前記システム
    ・リソースのカウント・レジスタにDMAカウントを格
    納する段階と を包含することを特徴とする方法。
  12. (12)請求項11記載の方法において、前記切り換え
    ロジックが下手側と上手側の切り換えロジックを包含し
    、 前記DMA始動コードの伝送に応答し、かつ、前記デー
    タ・ルータによって復号される前記DMAセットアップ
    情報に従って、前記データ・ルータ内に下手側、上手側
    の切り換えロジックを構築する段階を包含し、 前記上手側切り換えロジックが、前記DMA転送が第1
    システム・リソース・バスに関係することになりかつシ
    ステム・リソース・バスのうちの1つに結合したシステ
    ム・リソースと関係することになる場合に、第1システ
    ム・リソース・バスから前記メモリ・コントローラへコ
    ードを送るように構築され、 前記上手側切り換えロジックが、前記DMA転送が第2
    システム・リソース・バスに関係することになりかつシ
    ステム・リソース・バスのうちの1つに結合したシステ
    ム・リソースと関係することになる場合に、第2システ
    ム・リソース・バスから前記メモリ・コントローラへコ
    ードを送るように構築され、 前記上手側切り換えロジックが、前記DMA転送がアッ
    プ方向であり、第1システム・リソース・バスと関係す
    ることになり、また、システム・リソース・バスのうち
    の1つに結合したシステム・リソースと関係することに
    なるときに、前記第1システム・リソース・バスから前
    記メモリ、コントローラへDMAデータを送るように構
    築され、 前記上手側切り換えロジックが、前記DMA転送がアッ
    プ方向であり、第2のシステム・リソース・バスと関係
    することになり、また、システム・リソース・バスのう
    ちの1つに結合した1つのシステム・リソースと関係す
    ることになるときに、第2システム・リソース・バスか
    ら前記メモリ・コントローラへDMAデータを伝送する
    ように構築され、 前記下手側切り換えロジックが、前記DMA転送がダウ
    ン方向であり、第1システム・リソース・バスと関係す
    ることになり、また、システム・リソース・バスのうち
    の1つに結合したシステム・リソースと関係することに
    なるときに、前記メモリ・コントローラから前記第1シ
    ステム・リソース・バスへDMAデータを送るように構
    築され、 前記下手側切り換えロジックが、前記DMA転送がダウ
    ン方向であり、第2のシステム・リソース・バスと関係
    することになり、また、システム・リソース・バスのう
    ちの1つに結合した1つのシステム・リソースと関係す
    ることになるときに、前記メモリ・コントローラから第
    2システム・リソース・バスへDMAデータを伝送する
    ように構築される ことを特徴とする方法。
  13. (13)請求項9記載の方法において、前記切り換えロ
    ジックが下手側と上手側の切り換えロジックを包含し、 前記DMA始動コードの伝送に応答し、かつ、前記デー
    タ・ルータによって復号される前記DMAセットアップ
    情報に従って、前記データ・ルータ内に下手側、上手側
    の切り換えロジックを構築する段階を包含し、 前記上手側切り換えロジックが、前記DMA転送が第1
    システム・リソース・バスに関係することになりかつシ
    ステム・リソース・バスのうちの1つに結合したシステ
    ム・リソースと関係することになる場合に、第1システ
    ム・リソース・バスから前記メモリ・コントローラへコ
    ードを送るように構築され、 前記上手側切り換えロジックが、前記DMA転送が第2
    システム・リソース・バスに関係することになりかつシ
    ステム・リソース・バスのうちの1つに結合したシステ
    ム・リソースと関係することになる場合に、第2システ
    ム・リソース・バスから前記メモリ・コントローラへコ
    ードを送るように構築され、 前記上手側切り換えロジックが、前記DMA転送がアッ
    プ方向であり、第1システム・リソース・バスと関係す
    ることになり、また、システム・リソース・バスのうち
    の1つに結合したシステム・リソースと関係することに
    なるときに、前記第1システム・リソースから前記メモ
    リ・コントローラへDMAデータを送るように構築され
    、 前記上手側切り換えロジックが、前記DMA転送がアッ
    プ方向であり、第2のシステム・リソース・バスと関係
    することになり、また、システム・リソース・バスのう
    ちの1つに結合した1つのシステム・リソースと関係す
    ることになるときに、第2システム・リソース・バスか
    ら前記メモリ・コントローラへDMAデータを伝送する
    ように構築され、 前記下手側切り換えロジックが、前記DMA転送がダウ
    ン方向であり、第1システム・リソース・バスと関係す
    ることになり、また、システム・リソース・バスのうち
    の1つに結合したシステム・リソースと関係することに
    なるときに、前記メモリ・コントローラから前記第1シ
    ステム・リソース・バスへDMAデータを送るように構
    築され、 前記下手側切り換えロジックが、前記DMA転送がダウ
    ン方向であり、第2のシステム・リソース・バスと関係
    することになり、また、システム・リソース・バスのう
    ちの1つに結合した1つのシステム・リソースと関係す
    ることになるときに、前記メモリ・コントローラから第
    2システム・リソース・バスへDMAデータを伝送する
    ように構築される ことを特徴とする方法。
  14. (14)請求項1、2、3、4、7、8のうちいずれら
    か1つに記載の方法において、前記切り換えロジックが
    下手側と上手側の切り換えロジックを包含し、 前記DMA始動コードの伝送に応答し、かつ、前記デー
    タ・ルータによって復号される前記DMAセットアップ
    情報に従って、前記データ・ルータ内に下手側、上手側
    の切り換えロジックを構築する段階を包含し、 前記上手側切り換えロジックが、前記DMA転送が第1
    システム・リソース・バスに関係することになりかつシ
    ステム・リソース・バスのうちの1つに結合したシステ
    ム・リソースと関係することになる場合に、第1システ
    ム・リソース・バスから前記メモリ・コントローラへコ
    ードを送るように構築され、 前記上手側切り換えロジックが、前記DMA転送が第2
    システム・リソース・バスに関係することになりかつシ
    ステム・リソース・バスのうちの1つに結合したシステ
    ム・リソースと関係することになる場合に、第2システ
    ム・リソース・バスから前記メモリ・コントローラへコ
    ードを送るように構築され、 前記上手側切り換えロジックが、前記DMA転送がアッ
    プ方向であり、第1システム・リソース・バスと関係す
    ることになり、また、システム・リソース・バスのうち
    の1つに結合したシステム・リソースと関係することに
    なるときに、前記第1システム・リソースから前記メモ
    リ・コントローラへDMAデータを送るように構築され
    、 前記上手側切り換えロジックが、前記DMA転送がアッ
    プ方向であり、第2のシステム・リソース・バスと関係
    することになり、また、システム・リソース・バスのう
    ちの1つに結合した1つのシステム・リソースと関係す
    ることになるときに、第2システム・リソース・バスか
    ら前記メモリ・コントローラへDMAデータを伝送する
    ように構築され、 前記下手側切り換えロジックが、前記DMA転送がダウ
    ン方向であり、第1システム・リソース・バスと関係す
    ることになり、また、システム・リソース・バスのうち
    の1つに結合したシステム・リソースと関係することに
    なるときに、前記メモリ・コントローラから前記第1シ
    ステム・リソース・バスへDMAデータを送るように構
    築され、 前記下手側切り換えロジックが、前記DMA転送がダウ
    ン方向であり、第2のシステム・リソース・バスと関係
    することになり、また、システム・リソース・バスのう
    ちの1つに結合した1つのシステム・リソースと関係す
    ることになるときに、前記メモリ・コントローラから第
    2システム・リソース・バスへDMAデータを伝送する
    ように構築される ことを特徴とする方法。
  15. (15)コンピュータ・システムの構成要素間でDMA
    を経てデータを転送する方法であって、コンピュータ・
    システムが第1のメモリ・コントローラと、第2のメモ
    リ・コントローラと、1つのシステム・リソースに結合
    した第1システム・リソース・バスと、別のシステム・
    リソースに結合した第2のシステム・リソース・バスと
    、第1メモリ・コントローラ、第1システム・リソース
    ・バスおよび第2システム・リソース・バスに結合した
    第1データ・ルータと、第1メモリ・コントローラ、第
    1システム・リソース・バスおよび第2システム・リソ
    ース・バスに結合した第2データ・ルータとを包含し、
    各データ・ルータが切り換えロジックを包含する方法に
    おいて、 セットアップ書き込みトランザクションを指定するDM
    Aセットアップ情報をメモリ・コントローラからシステ
    ム・リソースの1つにこのメモリ・コントローラに結合
    したデータ・ルータおよび前記システム・リソースに結
    合したシステム・リソース・バスを経由して伝送し、こ
    のDMAセットアップ情報が1つのDMA転送に対応し
    ており、このDMA転送の方向を前記システム・リソー
    スから前記メモリ・コントローラへのアップ方向あるい
    は前記メモリ・コントローラから前記システム・リソー
    スへのダウン方向のいずれかとして指示し、DMA転送
    がどのシステム・リソースと関係することになるかを指
    示し、前記DMA転送がシステム・リソース・バスの1
    つに結合した1つのシステム・リソースと関係すること
    になるかどうかを指示する段階と、 前記セットアップ書き込みトランザクション中に前記メ
    モリ・コントローラに結合したデータ・ルータにおいて
    前記DMAセットアップ情報を復号し、どのシステム・
    リソース・バスと前記DMA転送が関係することになる
    かを決定し、前記DMA転送がシステム、リソース・バ
    スのうちの1つに結合した1つのシステム・リソースと
    関係することになるかどうかを決定する段階と、 前記メモリ・コントローラから前記システム・リソース
    へ前記メモリーコントローラに結合したデータ・ルータ
    ならびに前記システム、リソースに結合したシステム・
    リソース・バスを経由して始動DMAコードを伝送する
    段階と、前記始動DMAコードの伝送に応答して、かつ
    、前記データ・ルータによって復号された前記DMAセ
    ットアップ情報に従って前記データ・ルータにおいて切
    り換えロジックを構築する段階であり、 前記切り換えロジックが、前記DMA転送がアップ方向
    であり、第1システム・リソース・バスと関係すること
    になり、また、システム・リソース・バスのうちの1つ
    に結合したシステム・リソースと関係することになると
    きに、前記第1システム・リソースから前記メモリ・コ
    ントローラへDMAデータを送るように構築され、 前記切り換えロジックが、前記DMA転送がアップ方向
    であり、第2のシステム・リソース・バスと関係するこ
    とになり、また、システム・リソース・バスのうちの1
    つに結合した1つのシステム・リソースと関係すること
    になるときに、第2システム・リソース・バスから前記
    メモリ・コントローラへDMAデータを伝送するように
    構築され、 前記切り換えロジックが、前記DMA転送がダウン方向
    であり、第1システム・リソース・バスと関係すること
    になり、また、システム・リソース・バスのうちの1つ
    に結合したシステム・リソースと関係することになると
    きに、前記メモリ・コントローラから前記第1システム
    ・リソース・バスへDMAデータを送るように構築され
    、 前記切り換えロジックが、前記DMA転送がダウン方向
    であり、第2のシステム・リソース・バスと関係するこ
    とになり、また、システム・リソース・バスのうちの1
    つに結合した1つのシステム・リソースと関係すること
    になるときに、前記メモリ・コントローラから第2シス
    テム・リソース・バスへDMAデータを伝送するように
    構築されるようにした段階と、 前記DMA始動コードの伝送に応答して、前記システム
    ・リソースからそれに結合したシステム・リソース・バ
    スおよび前記データ・ルータの切り換えロジックを経由
    して前記メモリ・コントローラへ肯定応答コードを伝送
    する段階と、 前記DMA転送がアップ方向であるときに前記肯定応答
    コードの伝送後に、前記システム・リソースからそれに
    結合したシステム・リソース・バスおよび前記データ・
    ルータの切り換えロジックを経由して前記メモリ・コン
    トローラへDMAデータを伝送する段階と、前記DMA
    転送がアップ方向であるときに前記肯定応答コードの伝
    送後に、前記メモリ・コントローラから前記システム・
    リソースへ前記データ・ルータの切り換えロジックおよ
    び前記システム・リソースへ結合したシステム・リソー
    ス・バスを経由してDMAデータを伝送する段階と、 DMAデータの伝送後に、前記システム・リソースから
    前記メモリ・コントローラへ前記システム・リソースに
    結合したシステム・リソース・バスおよび前記データ・
    ルータの切り換えロジックを経由して完了コードを伝送
    し、 DMAデータ伝送が成功したことを示す段階とを包含す
    ることを特徴とする方法。
  16. (16)請求項15記載の方法において、第1データ・
    ルータが第2データ・ルータの切り換えロジックを経て
    第2システム・リソース・バスに結合しており、第2デ
    ータ・ルータが第1データ・ルータの切り換えロジック
    を経て第1システム・リソース・バスに結合しており、 メモリ・コントローラの各々からシステム・リソースの
    1つに第1、第2のデータ・ルータならびにこのシステ
    ム・リソースに結合したシステム・リソース・バスを経
    由して同じDMAセットアップ情報を伝送する段階と、 第1、第2のデータ・ルータにおいて前記 DMAセットアップ情報を復号する段階と、前記メモリ
    ・コントローラの各々から前記システム・リソースへ第
    1、第2のデータ・ルータおよび前記システム・リソー
    スに結合したシステム・リソース・バスを経由して始動
    DMAコードを伝送する段階と、 第1、第2のデータ・ルータ内にそれらによって復号さ
    れた前記DMAセットアップ情報に従って切り換えロジ
    ックを構築する段階であり、前記切り換えロジックが、
    前記DMA転送がアップ方向であり、第1システム・リ
    ソース・バスに関係することになり、システム・リソー
    ス・バスのうちの1つに結合したシステム・リソースと
    関係することになるとき、第1システム・リソース・バ
    スから第1データ・ルータの切り換えロジックを経由し
    て第1メモリ・コントローラへ、そして、第1、第2の
    データ・ルータの切り換えロジックを経由して第2メモ
    リ・コントローラへDMAデータを送るように構築され
    、 前記切り換えロジックが、前記DMA転送がアップ方向
    であり、第2システム・リソース・バスに関係すること
    になり、システム・リソース・バスのうちの1つに結合
    したシステム・リソースと関係することになるとき、第
    2システム・リソース・バスから第2データ・ルータの
    切り換えロジックを経由して第2メモリ・コントローラ
    へ、そして、第2、第1のデータ・ルータの切り換えロ
    ジックを経由して第1メモリ・コントローラへDMAデ
    ータを送るように構築され、 前記切り換えロジックが、前記DMA転送がダウン方向
    であり、第1システム・リソース・バスに関係すること
    になり、システム・リソース・バスのうちの1つに結合
    したシステム・リソースと関係することになるとき、第
    1メモリ・コントローラから第1データ・ルータの切り
    換えロジックを経由して、そして、第2メモリ・コント
    ローラから第2、第1のデータ・ルータの切り換えロジ
    ックを経由して第1メモリ・コントローラBへDMAデ
    ータを送るように構築され、 前記切り換えロジックが、前記DMA転送がダウン方向
    であり、第2システム・リソース・バスに関係すること
    になり、システム・リソース・バスのうちの1つに結合
    したシステム・リソースと関係することになるとき、第
    1メモリ・コントローラから第1データ・ルータの切り
    換えロジックを経由して、そして、第2メモリ・コント
    ローラから第2データ・ルータの切り換えロジックを経
    由して第2メモリ・コントローラBへDMAデータを送
    るように構築され、前記システム・リソースから前記メ
    モリ・コントローラの各々へ前記システム・リソースに
    結合したシステム・リソース・バスおよび第1、第2の
    データ・ルータの切り換えロジックを経由して肯定応答
    コードを伝送する段階と、 前記DMA転送がアップ方向であるときに、前記システ
    ム・リソースから前記メモリ・コントローラの各々へ前
    記システム・リソースに結合したシステム・リソース・
    バスおよび第1、第2のデータ・ルータの切り換えロジ
    ックを経由してDMAデータを伝送する段階と、 前記DMA転送がダウン方向であるときに、前記メモリ
    ・コントローラの各々から前記システム・リソースへ第
    1、第2のデータ・ルータの切り換えロジックおよび前
    記システム・リソースに結合したシステム・リソース・
    バスを経由して同じDMAデータを伝送する段階と、前
    記システム・リソースから前記メモリ・コントローラの
    各々へ前記システム・リソースに結合したシステム・リ
    ソース・バスおよび第1、第2のデータ・ルータの切り
    換えロジックを経由して完了コードを伝送する段階と を包含することを特徴とする方法。
  17. (17)請求項16記載の方法において、さらに、前記
    肯定応答コードの伝送後に、前記第1、第2のデータ・
    ルータの切り換えロジックから前記メモリ・コントロー
    ラの各々へエラー・コードを伝送してDMAデータ伝送
    の不成功を示す段階と包含することを特徴とする方法。
  18. (18)請求項17記載の方法において、さらに、前記
    肯定応答コードの伝送後に、前記システム・リソースか
    ら前記メモリ・コントローラの各々へこのシステム・リ
    ソースに結合したシステム・リソース・バスおよび前記
    第1、第2のデータ・ルータの切り換えロジックを経由
    してストール・コードを伝送して、前記システム・リソ
    ースが前記メモリ・コントローラの各々からダウン方向
    に送られてくるDMAデータを受け入れる準備ができて
    いないことを示すと共に、前記システム・リソースがア
    ップ方向でDMAデータを送る準備ができていないこと
    を示す段階を包含することを特徴とする方法。
  19. (19)請求項16項記載の方法において、さらに、ア
    ップ方向におけるDMAデータの伝送後に、前記システ
    ム・リソースから前記メモリ・コントローラの各々へ前
    記システム・リソースに結合したシステム・リソース・
    バスおよび前記第1、第2のデータ・ルータの切り換え
    ロジックを経由してエラー・コードを伝送して、DMA
    データ伝送でのエラーを示す段階を包含することを特徴
    とする方法。
  20. (20)請求項19記載の方法において、エラー・コー
    ドがDMAデータ伝送におけるCRCエラーを示すCR
    Cエラー・コードであることを特徴とする方法。
  21. (21)請求項20記載の方法において、さらに、前記
    肯定応答コードの伝送後に、前記システム・リソースか
    ら前記メモリ・コントローラの各々へこのシステム・リ
    ソースに結合したシステム・リソース・バスおよび前記
    第1、第2のデータ・ルータの切り換えロジックを経由
    してストール・コードを伝送して、前記システム・リソ
    ースがアップ方向でDMAデータを送る準備ができてい
    ないことを示す段階を包含することを特徴とする方法。
  22. (22)請求項19記載の方法において、さらに、前記
    肯定応答コードの伝送後に、前記システム・リソースか
    ら前記メモリ・コントローラの各々へこのシステム・リ
    ソースに結合したシステム・リソース・バスおよび前記
    第1、第2のデータ・ルータの切り換えロジックを経由
    してストール・コードを伝送して、前記システム・リソ
    ースがアップ方向でDMAデータを送る準備ができてい
    ないことを示す段階を包含することを特徴とする方法。
  23. (23)請求項16記載の方法において、さらに、前記
    肯定応答コードの伝送後に、前記システム・リソースか
    ら前記メモリ・コントローラの各々へこのシステム・リ
    ソースに結合したシステム・リソース・バスおよび前記
    第1、第2のデータ・ルータの切り換えロジックを経由
    してストール・コードを伝送して、前記システム・リソ
    ースが前記メモリ・コントローラの各々からダウン方向
    に送られてくるDMAデータを受け入れる準備ができて
    いないことを示すと共に、前記システム・リソースがア
    ップ方向でDMAデータを送る準備ができていないこと
    を示す段階を包含することを特徴とする方法。
  24. (24)請求項16、17、18、19、22、23の
    うちいずれか1つに記載の方法において、前記システム
    ・リソースがそれによってアクセスされるべきDMAデ
    ータ・アドレスを示すポインタ・レジスタを有し、さら
    に、 書き込みトランザクション中にメモリ・コントローラの
    各々から前記システム・リソースへ第1、第2のデータ
    ・ルータならびに前記システム・リソースに結合したシ
    ステム・リソース・バスを経由してDMA始動アドレス
    情報を伝送し、次いで、前記始動DMAデータを前記メ
    モリーコントローラの各々から前記システム・リソース
    へ伝送し、前記DMA始動アドレス情報が前記DMA転
    送中に前記システム・リソースによってアクセスされる
    べきDMAデータ・アドレスを特定する段階と、 前記メモリ・コントローラの各々から前記システム・リ
    ソースへの前記DMA始動アドレス情報の伝送後に、前
    記システム・リソースのポインタ・レジスタにDMAデ
    ータ・アドレスを格納する段階とを包含することを特徴
    とする方法。
  25. (25)請求項24記載の方法において、前記システム
    ・リソースが前記DMA転送中に前記システム・リソー
    スによってアクセスされるべきDMAデータのバイト数
    を示すカウント・レジスタを有し、さらに、 書き込みトランザクション中にメモリ・コントローラの
    各々から前記システム・リソースへ第1、第2のデータ
    ・ルータならびに前記システム・リソースに結合された
    システム・リソース・バスを経由してDMAカウント情
    報を伝送し、次いで、前記メモリ・コントローラの各々
    から前記システム・リソースへ前記始動DMAコードを
    伝送し、前記DMAカウント情報が前記DMA転送中に
    前記システム・リソースによってアクセスされるべきD
    MAデータのバイト数のDMAカウントを特定するよう
    にした段階と、 前記メモリ・コントローラの各々から前記システム・リ
    ソースへの前記DMAカウント情報の伝送後に、前記シ
    ステム・リソースのカウント・レジスタにDMAカウン
    トを格納する段階と を包含することを特徴とする方法。
  26. (26)請求項16、17、18、19、22、23の
    うちいずれか1つに記載の方法において、前記システム
    ・リソースが前記DMA転送中に前記システム・リソー
    スによってアクセスされるべきDMAデータのバイト数
    を示すカウント・レジスタを有し、さらに、書き込みト
    ランザクション中にメモリ・コントローラの各々から前
    記システム・リソースへ第1、第2のデータ・ルータな
    らびに前記システム・リソースに結合されたシステム・
    リソース・バスを経由してDMAカウント情報を伝送し
    、次いで、前記メモリ・コントローラの各々から前記シ
    ステム・リソースへ前記始動DMAコードを伝送し、前
    記DMAカウント情報が前記DMA転送中に前記システ
    ム・リソースによってアクセスされるべきDMAデータ
    のバイト数のDMAカウントを特定するようにした段階
    と、 前記メモリ・コントローラの各々から前記システム・リ
    ソースへの前記DMAカウント情報の伝送後に、前記シ
    ステム・リソースのカウント・レジスタにDMAカウン
    トを格納する段階と を包含することを特徴とする方法。
  27. (27)請求項26記載の方法において、前記切り換え
    ロジックが下手側と上手側の切り換えロジックを包含し
    、 前記DMA始動コードの伝送に応答し、かつ、前記第1
    、第2のデータ・ルータによって復号される前記DMA
    セットアップ情報に従って、前記第1、第2のデータ・
    ルータ内に下手側、上手側の切り換えロジックを構築す
    る段階を包含し、 前記上手側切り換えロジックが、前記DMA転送が第1
    システム・リソース・バスに関係することになりかつシ
    ステム・リソース・バスのうちの1つに結合したシステ
    ム・リソースと関係することになる場合に、第1システ
    ム・リソース・バスから前記第1データ・ルータを経由
    して前記第2のメモリ・コントローラへコードを送るよ
    うに構築され、 前記上手側切り換えロジックが、前記DMA転送が第2
    システム・リソース・バスに関係することになりかつシ
    ステム・リソース・バスのうちの1つに結合したシステ
    ム・リソースと関係することになる場合に、第2システ
    ム・リソース・バスから第2データ・ルータを経由して
    前記第2メモリ・コントローラへコードを送るように構
    築され、 前記上手側切り換えロジックが、前記DMA転送がアッ
    プ方向であり、第1システム・リソースと関係すること
    になり、また、システム・リソース・バスのうちの1つ
    に結合したシステム・リソースと関係することになると
    きに、第1システム・リソース・バスから第1データ・
    ルータを経由して前記第1メモリ・コントローラへ、そ
    して、第1、第2のデータ・ルータを経由して前記2メ
    モリ・コントローラへDMAデータを送るように構築さ
    れ、 前記上手側切り換えロジックが、前記DMA転送がアッ
    プ方向であり、第2のシステム・リソース・バスと関係
    することになり、また、システム・リソース・バスのう
    ちの1つに結合した1つのシステム・リソースと関係す
    ることになるときに、第2システム・リソース・バスか
    ら第2のデータ・ルータを経由して前記第2メモリ・コ
    ントローラへ、そして、第2、第1のデータ・ルータを
    経由して前記第1メモリ・コントローラへDMAデータ
    を伝送するように構築され、 前記下手側切り換えロジックが、前記DMA転送がダウ
    ン方向であり、第1システム・リソース・バスと関係す
    ることになり、また、システム・リソース・バスのうち
    の1つに結合したシステム・リソースと関係することに
    なるときに、前記第1メモリ・コントローラから第1デ
    ータ・ルータを経由して、そして、前記第2メモリ・コ
    ントローラから第2、第1のデータ・ルータを経由して
    前記第1システム・リソース・バスへDMAデータを送
    るように構築され、前記下手側切り換えロジックが、前
    記DMA転送がダウン方向であり、第2のシステム・リ
    ソース・バスと関係することになり、また、システム・
    リソース・バスのうちの1つに結合した1つのシステム
    ・リソースと関係することになるときに、前記第2メモ
    リ・コントローラから第2データ・ルータを経由して、
    そして、前記第1メモリ・コントローラから第1、第2
    のデータ・ルータを経由して第2システム・リソース・
    バスへDMAデータを伝送するように構築されることを
    特徴とする方法。
  28. (28)請求項24記載の方法において、前記切り換え
    ロジックが下手側と上手側の切り換えロジックを包含し
    、 前記DMA始動コードの伝送に応答し、かつ、前記第1
    、第2のデータ・ルータによって復号される前記DMA
    セットアップ情報に従って、前記第1、第2のデータ・
    ルータ内に下手側、上手側の切り換えロジックを構築す
    る段階を包含し、 前記上手側切り換えロジックが、前記DMA転送が第1
    システム・リソース・バスに関係することになりかつシ
    ステム・リソース・バスのうちの1つに結合したシステ
    ム・リソースと関係することになる場合に、第1システ
    ム・リソース・バスから第1データ・ルータを経由して
    前記第1メモリ・コントローラへ、そして、第1、第2
    のデータ・ルータを経由して前記第2メモリ・コントロ
    ーラへコードを送るように構築され、 前記上手側切り換えロジックが、前記DMA転送が第2
    システム・リソース・バスに関係することになりかつシ
    ステム・リソース、バスのうちの1つに結合したシステ
    ム・リソースと関係することになる場合に、第2システ
    ム・リソース・バスから第2データ・ルータを経由して
    前記第2メモリ・コントローラへ、そして、第2、第1
    のデータ・ルータを経由して前記第1メモリ・コントロ
    ーラへコードを送るように構築され、 前記上手側切り換えロジックが、前記DMA転送がアッ
    プ方向であり、第1システム・リソース・バスと関係す
    ることになり、また、システム・リソース・バスのうち
    の1つに結合したシステム・リソースと関係することに
    なるときに、前記第1システム・リソースから前記第1
    データ・ルータを経由して第1メモリ・コントローラへ
    、そして、第1、第2のデータ・ルータを経由して前記
    第2メモリ・コントローラへDMAデータを送るように
    構築され、 前記上手側切り換えロジックが、前記DMA転送がアッ
    プ方向であり、第2のシステム・リソース・バスと関係
    することになり、また、システム・リソース・バスのう
    ちの1つに結合した1つのシステム・リソースと関係す
    ることになるときに、第2システム・リソース・バスか
    ら第2データ・ルータを経由して前記第2メモリ・コン
    トローラへ、そして、第2、第1データ・ルータを経由
    して前記第1メモリ・コントローラへDMAデータを伝
    送するように構築され、 前記下手側切り換えロジックが、前記DMA転送がダウ
    ン方向であり、第1のシステム・リソース・バスと関係
    することになり、また、システム・リソース・バスのう
    ちの1つに結合したシステム・リソースと関係すること
    になるときに、前記第1メモリ・コントローラから第1
    データ・ルータを経由して、そして、第2、第1のデー
    タ・ルータを経由して前記第1システム・リソース・バ
    スへDMAデータを送るように構築され、 前記下手側切り換えロジックが、前記DMA転送がダウ
    ン方向であり、第2のシステム・リソース・バスと関係
    することになり、また、システム・リソース・バスのう
    ちの1つに結合した1つのシステム・リソースと関係す
    ることになるときに、前記第2メモリ・コントローラか
    ら第2データ・ルータを経由して、そして、第1メモリ
    ・コントローラから第1、第2データ・ルータを経由し
    て前記第2のシステム・リソース・バスへDMAデータ
    を伝送するように構築される ことを特徴とする方法。
  29. (29)請求項16、17、18、19、22、23の
    うちいずれか1つに記載の方法において、前記切り換え
    ロジックが下手側と上手側の切り換えロジックを包含し
    、 前記DMA始動コードの伝送に応答し、かつ、前記第1
    、第2のデータ・ルータによって復号される前記DMA
    セットアップ情報に従って、前記第1、第2のデータ・
    ルータ内に下手側、上手側の切り換えロジックを構築す
    る段階を包含し、 前記上手側切り換えロジックが、前記DMA転送が第1
    システム・リソース・バスに関係することになりかつシ
    ステム・リソース・バスのうちの1つに結合したシステ
    ム・リソースと関係することになる場合に、第1システ
    ム・リソース・バスから第1データ・ルータを経由して
    前記第1メモリ・コントローラへ、そして、第1、第2
    のデータ・ルータを経由して前記第2メモリ・コントロ
    ーラへコードを送るように構築され、 前記上手側切り換えロジックが、前記DMA転送が第2
    システム・リソース・バスに関係することになりかつシ
    ステム・リソース・バスのうちの1つに結合したシステ
    ム・リソースと関係することになる場合に、第2システ
    ム・リソース・バスから第2データ・ルータを経由して
    前記第2メモリ・コントローラへ、そして、第2、第1
    のデータ・ルータを経由して前記第1メモリ・コントロ
    ーラへコードを送るように構築され、 前記上手側切り換えロジックが、前記DMA転送がアッ
    プ方向であり、第1システム・リソース・バスと関係す
    ることになり、また、システム・リソース・バスのうち
    の1つに結合したシステム・リソースと関係することに
    なるときに、前記第1システム・リソースから第1デー
    タ・ルータを経由して前記第1メモリ・コントローラへ
    、そして、第1、第2のデータ・ルータを経由して前記
    第2メモリ・コントローラへDMAデータを送るように
    構築され、 前記上手側切り換えロジックが、前記DMA転送がアッ
    プ方向であり、第2のシステム・リソース・バスと関係
    することになり、また、システム・リソース・バスのう
    ちの1つに結合した1つのシステム・リソースと関係す
    ることになるときに、第2システム・リソース・バスか
    ら第2データ・ルータを経由して前記第2メモリ・コン
    トローラへ、そして、第2、第1データ・ルータを経由
    して前記第1メモリ・コントローラへDMAデータを伝
    送するように構築され、 前記下手側切り換えロジックが、前記DMA転送がダウ
    ン方向であり、第1のシステム・リソース・バスと関係
    することになり、また、システム・リソース・バスのう
    ちの1つに結合したシステム・リソースと関係すること
    になるときに、前記第1メモリ・コントローラから第1
    データ・ルータを経由して、そして、前記第2メモリ・
    コントローラから第2、第1データ・ルータを経由して
    前記第1システム・リソース・バスへDMAデータを送
    るように構築され、前記下手側切り換えロジックが、前
    記DMA転送がダウン方向であり、第2のシステム・リ
    ソース・バスと関係することになり、また、システム・
    リソース・バスのうちの1つに結合した1つのシステム
    ・リソースと関係することになるときに、前記第2メモ
    リ・コントローラから第2データ・ルータを経由して、
    そして、前記第1メモリ・コントローラから第1、第2
    のデータ・ルータを経由して第2システム・リソース・
    バスへDMAデータを伝送するように構築される ことを特徴とする方法。
  30. (30)コンピュータ・システムの構成要素間でDMA
    を経てデータを転送する方法であって、コンピュータ・
    システムがメモリ・コントローラと、システム・リソー
    スに結合した第1システム・リソース・バスと、データ
    ・ルータとを包含し、このデータ・ルータがメモリ・コ
    ントローラを第1システム・リソース・バスに結合する
    切り換えロジックを包含する方法において、セットアッ
    プ書き込みトランザクションを指定するDMAセットア
    ップ情報をメモリ・コントローラからシステム・リソー
    スの1つにデータ・ルータおよび前記システム・リソー
    スに結合した第1システム・リソース・バスを経由して
    伝送し、このDMAセットアップ情報が DMA転送に対応しており、このDMA転送の方向を前
    記システム・リソースから前記メモリ・コントローラへ
    のアップ方向あるいは前記メモリ・コントローラから前
    記システム・リソースへのダウン方向のいずれかとして
    指示し、前記DMA転送が前記第1システム・リソース
    と関係することになるかどうかを指示し、前記DMA転
    送が前記第1システム・リソース・バスの1つに結合し
    た1つのシステム・リソースと関係することになるかど
    うかを指示する段階と、 前記セットアップ書き込みトランザクション中にデータ
    ・ルータにおいて前記DMAセットアップ情報を復号し
    、前記DMA転送が前記第1システム・リソース・バス
    と関係することになるかどうかを決定し、前記DMA転
    送が前記第1システム・リソース・バスに結合した1つ
    のシステム・リソースと関係することになるかどうかを
    決定する段階と、 前記メモリ・コントローラから前記システム・リソース
    へデータ・ルータならびに前記システム・リソースに結
    合した前記第1システム・リソース・バスを経由して始
    動DMAコードを伝送する段階と、 前記始動DMAコードの伝送に応答して、かつ、前記デ
    ータ・ルータによって復号された前記DMAセットアッ
    プ情報に従って前記データ・ルータにおいて切り換えロ
    ジックを構築する段階であり、 前記切り換えロジックが、前記DMA転送がアップ方向
    であり、前記第1システム・リソース・バスと関係する
    ことになり、また、前記第1システム・リソース・バス
    に結合したシステム・リソースと関係することになると
    きに、前記第1システム・リソースから前記メモリ・コ
    ントローラへDMAデータを送るように構築され、 前記切り換えロジックが、前記DMA転送がダウン方向
    であり、第1システム・リソース・バスと関係すること
    になり、また、前記第1システム・リソース・バスに結
    合したシステム・リソースと関係することになるときに
    、前記メモリ・コントローラから前記第1システム・リ
    ソース・バスへDMAデータを送るように構築されるよ
    うにした段階と、 前記DMA始動コードの伝送に応答して、前記システム
    ・リソースからそれに結合した前記第1システム・リソ
    ース・バスおよび前記データ・ルータの切り換えロジッ
    クを経由して前記メモリ・コントローラへ肯定応答コー
    ドを伝送する段階と、 前記DMA転送がアップ方向であるときに前記肯定応答
    コードの伝送後に、前記システム・リソースからそれに
    結合した前記第1システム・リソース・バスおよび前記
    データ・ルータの切り換えロジックを経由して前記メモ
    リ・コントローラへDMAデータを伝送する段階と、前
    記DMA転送がアップ方向であるときに前記肯定応答コ
    ードの伝送後に、前記メモリ・コントローラから前記シ
    ステム・リソースへ前記データ・ルータの切り換えロジ
    ックおよび前記システム・リソースへ結合した前記第1
    システム・リソース・バスを経由してDMAデータを伝
    送する段階と、 DMAデータの伝送後に、前記システム・リソースから
    前記メモリ・コントローラへ前記システム・リソースに
    結合した前記第1システム・リソース・バスおよび前記
    データ・ルータの切り換えロジックを経由して完了コー
    ドを伝送し、DMAデータ伝送が成功したことを示す段
    階と を包含することを特徴とする方法。
  31. (31)コンピュータ・システムの構成要素間でDMA
    を経由してデータを転送する方法であって、コンピュー
    タ・システムが、第1の主メモリ・コントローラと、第
    1のミラー・メモリ・コントローラと、第2の主メモリ
    ・コントローラと、第2のミラー・メモリ・コントロー
    ラと、第1システム・リソースに結合した第1主システ
    ム・リソース・バスおよび第1ミラー・システム・リソ
    ース・バスと、第2システム・リソースに結合した第2
    主システム・リソース・バスおよび第2ミラー・システ
    ム・リソース・バスと、第1主メモリ・コントローラお
    よび第1主システム・リソース・バスに結合した第1主
    データ・ルータと、第1ミラー・メモリ・コントローラ
    および第1ミラー・システム・リソース・バスに結合し
    た第1ミラー・データ・ルータと、第2主メモリ・コン
    トローラおよび第2主システム・リソース・バスに結合
    した第2主データ・ルータと、第2ミラー・メモリ・コ
    ントローラおよび第2ミラー・システム・リソース・バ
    スに結合した第2ミラー・データ・ルータとを包含し、
    各データ・ルータがシステム・リソース・バスにメモリ
    ・コントローラを結合するために切り換えロジックを包
    含し、第1データ・ルータが第2データ・ルータの切り
    換えロジックを経て第2システム・リソース・バスに結
    合してあり、第2データ・ルータが第1データ・ルータ
    の切り換えロジックを経て第1システム・リソース・バ
    スに結合している方法において、 セットアップ書き込みトランザクションを示す同じDM
    Aセットアップ情報を、各メモリ・コントローラからシ
    ステム・リソースの1つへ、第1、第2のデータ・ルー
    タならびに前記システム・リソースに結合した対のシス
    テム・リソース・バスを経由して伝送し、前記DMAセ
    ットアップ情報が1つのDMA転送に対応し、DMA転
    送の方向を前記システム・リソースから前記メモリ・コ
    ントローラへアップ方向か、あるいは、前記メモリ・コ
    ントローラから前記システム・リソースへダウン方向の
    いずれかとして指示し、DMA転送がどの対のシステム
    ・リソース・バスに関係することになるかを指示すると
    共に、前記DMA転送がシステム・リソース・バスのう
    ちの一対のシステム・リソース・バスに結合したシステ
    ム・リソースと関係することになるかどうかを指示する
    段階と、 前記セットアップ書き込みトランザクション中に第1、
    第2のデータ・ルータにおいて前記DMAセットアップ
    情報を復号し、前記DMA転送の方向を決定し、どの対
    のシステム・リソース・バスが前記DMA転送と関係す
    ることになるかを決定し、また、前記DMA転送がシス
    テム・リソース・バスのうちの一対のシステム・リソー
    ス・バスに結合したシステム・リソースと関係すること
    になるかどうかを決定する段階と、 前記メモリ・コントローラの各々から前記システム・リ
    ソースへ、第1、第2のデータ・ルータおよび前記シス
    テム・リソースに結合した対のシステム・リソース・バ
    スを経由して始動DMAコードを伝送する段階と、 この始動DMAコードの伝送に応答して、かつ、第1、
    第2のデータ・ルータによって復号された前記DMAセ
    ットアップ情報に従って、第1、第2のデータ・ルータ
    において切り換えロジックを構築する段階であり、 前記切り換えロジックが、前記DMA転送がアップ方向
    であり、対になった第1システム・リソース・バスに関
    係することになり、また、システム・リソース・バスの
    うちの一対のシステム・リソース・バスに結合したシス
    テム・リソースと関係することになるときに、対の第1
    システム・リソース・バスから対の第1データ・ルータ
    の切り換えロジックを経由して対の第1メモリ・コント
    ローラへ、そして、対の第1、第2のデータ・ルータの
    切り換えロジックを経由して対の第2メモリ・コントロ
    ーラへDMAデータを送るように構築され、 前記切り換えロジックが、前記DMA転送がアップ方向
    であり、対の第2システム・リソース・バスに関係する
    ことになると共に、システム・リソース・バスのうちの
    一対のシステム・リソース・バスに結合したシステム・
    リソースと関係することになるときに、対の第2システ
    ム・リソース・バスから対の第2データ・ルータの切り
    換えロジックを経由して対の第2メモリ・コントローラ
    へ、そして、対の第1、第2のデータ・ルータの切り換
    えロジックを経由して対の第1メモリ・コントローラへ
    DMAデータを送るように構築され、 前記切り換えロジックが、前記DMA転送がダウン方向
    であり、対の第1システム・リソース・バスと関係する
    ことになると共に、システム・リソース・バスのうちの
    一対のシステム・リソース・バスに結合したシステム・
    リソースと関係することになるとき、第1メモリ・コン
    トローラのうちの1つから第1データ・ルータのうちの
    1つにおける切り換えロジックを経由して、そして、第
    2メモリ・コントローラのうちの1つから第2データ・
    ルータのうちの1つおよび他の第1データ・ルータにお
    ける切り換えロジックを経由して対の第1システム・リ
    ソース・バスへDMAデータを送るように構築され、 前記切り換えロジックが、前記DMA転送がダウン方向
    であり、対の第2システム・リソース・バスと関係する
    と共に、システム・リソース・バスのうちの一対のシス
    テム・リソース・バスに結合したシステム・リソースと
    関係することになるとき、第1メモリ・コントローラの
    1つから第1データ・ルータの1つおよび第2データ・
    ルータの1つにおける切り換えロジックを経由し、そし
    て、第2メモリ・コントローラの1つから他方の第2デ
    ータ・ルータにおける切り換えロジックを経由して対の
    第2システム・リソース・バスへDMAデータを送るよ
    うに構築される段階と、 前記DMA始動コードの伝送に応答して、前記システム
    ・リソースから前記メモリ・コントローラの各々へ、前
    記システム・リソースに結合した対のシステム・リソー
    ス・バスならびに第1、第2のデータ・ルータにおける
    切り換えロジックを経由して肯定応答コードを伝送する
    段階と、 この肯定応答コードの伝送後、前記DMA転送がアップ
    方向であるとき、前記システム・リソースから前記メモ
    リ・コントローラの各々へ、前記システム・リソースに
    結合した対のシステム・リソース・バスならびに第1、
    第2のデータ・ルータにおける切り換えロジックを経由
    してDMAデータを伝送する段階と、 前記肯定応答コードの伝送後、前記DMA転送がダウン
    方向であるとき、第1メモリ・コントローラの1つから
    そして第2メモリ・コントローラの1つから前記システ
    ム・リソースへ、第1、第2のデータ・ルータにおける
    切り換えロジックならびに前記システム・リソースに結
    合した対のシステム・リソース・バスを経由してDMA
    データを伝送する段階と、 DMAデータの伝送後、前記システム・リソースから前
    記メモリ・コントローラの各々へ、前記システム・リソ
    ースに結合した対のシステム・リソース・バスならびに
    第1、第2のデータ・ルータにおける切り換えロジック
    を経由して完了コードを伝送し、DMAデータ伝送が成
    功したことを示す段階と を包含することを特徴とする方法。
JP2203799A 1989-08-01 1990-07-31 Dmaデータ転送のためのプロトコル Pending JPH03232045A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US388327 1989-08-01
US07/388,327 US5185877A (en) 1987-09-04 1989-08-01 Protocol for transfer of DMA data

Publications (1)

Publication Number Publication Date
JPH03232045A true JPH03232045A (ja) 1991-10-16

Family

ID=23533670

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2203799A Pending JPH03232045A (ja) 1989-08-01 1990-07-31 Dmaデータ転送のためのプロトコル

Country Status (4)

Country Link
US (1) US5185877A (ja)
EP (1) EP0415551A3 (ja)
JP (1) JPH03232045A (ja)
CA (1) CA2022250A1 (ja)

Families Citing this family (51)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0460192A1 (en) * 1989-12-26 1991-12-11 Eastman Kodak Company Image processing apparatus having disk storage resembling ram memory
JP2561398B2 (ja) * 1991-06-14 1996-12-04 日本電気株式会社 二重化ディスク制御装置
US5572692A (en) * 1991-12-24 1996-11-05 Intel Corporation Memory configuration decoding system having automatic row base address generation mechanism for variable memory devices with row access interleaving
US5412788A (en) * 1992-04-16 1995-05-02 Digital Equipment Corporation Memory bank management and arbitration in multiprocessor computer system
CA2097564C (en) * 1992-06-16 2004-05-25 David L. Phillips Method of coupling open systems to a proprietary network
US5517624A (en) * 1992-10-02 1996-05-14 Compaq Computer Corporation Multiplexed communication protocol between central and distributed peripherals in multiprocessor computer systems
US5826063A (en) * 1993-11-08 1998-10-20 Cirrus Logic, Inc. Apparatus and method for programming the setup, command and recovery time periods within a transaction cycle
US5619729A (en) * 1993-12-02 1997-04-08 Intel Corporation Power management of DMA slaves with DMA traps
US5655151A (en) * 1994-01-28 1997-08-05 Apple Computer, Inc. DMA controller having a plurality of DMA channels each having multiple register sets storing different information controlling respective data transfer
US5805927A (en) * 1994-01-28 1998-09-08 Apple Computer, Inc. Direct memory access channel architecture and method for reception of network information
US5828856A (en) * 1994-01-28 1998-10-27 Apple Computer, Inc. Dual bus concurrent multi-channel direct memory access controller and method
US5568614A (en) * 1994-07-29 1996-10-22 International Business Machines Corporation Data streaming between peer subsystems of a computer system
US5619642A (en) * 1994-12-23 1997-04-08 Emc Corporation Fault tolerant memory system which utilizes data from a shadow memory device upon the detection of erroneous data in a main memory device
US5812775A (en) * 1995-07-12 1998-09-22 3Com Corporation Method and apparatus for internetworking buffer management
US5825774A (en) * 1995-07-12 1998-10-20 3Com Corporation Packet characterization using code vectors
US5651002A (en) * 1995-07-12 1997-07-22 3Com Corporation Internetworking device with enhanced packet header translation and memory
US5796944A (en) * 1995-07-12 1998-08-18 3Com Corporation Apparatus and method for processing data frames in an internetworking device
US5748633A (en) * 1995-07-12 1998-05-05 3Com Corporation Method and apparatus for the concurrent reception and transmission of packets in a communications internetworking device
US5815571A (en) * 1996-10-28 1998-09-29 Finley; Phillip Scott Computer system with secured data paths and method of protection
US6055583A (en) * 1997-03-27 2000-04-25 Mitsubishi Semiconductor America, Inc. DMA controller with semaphore communication protocol
US6266731B1 (en) 1998-09-03 2001-07-24 Compaq Computer Corporation High speed peripheral interconnect apparatus, method and system
US6816934B2 (en) * 2000-12-22 2004-11-09 Hewlett-Packard Development Company, L.P. Computer system with registered peripheral component interconnect device for processing extended commands and attributes according to a registered peripheral component interconnect protocol
DE19917576A1 (de) * 1999-04-19 2000-10-26 Moeller Gmbh Datenübertragungseinrichtung
US6543047B1 (en) 1999-06-15 2003-04-01 Dell Usa, L.P. Method and apparatus for testing custom-configured software/hardware integration in a computer build-to-order manufacturing process
US6816924B2 (en) * 2000-08-10 2004-11-09 Infineon Technologies North America Corp. System and method for tracing ATM cells and deriving trigger signals
US6925512B2 (en) * 2001-10-15 2005-08-02 Intel Corporation Communication between two embedded processors
US20050038946A1 (en) * 2003-08-12 2005-02-17 Tadpole Computer, Inc. System and method using a high speed interface in a system having co-processors
JP2006178550A (ja) * 2004-12-21 2006-07-06 Nec Corp 二重化同期システム、及び二重化同期システムの動作方法
US9762536B2 (en) * 2006-06-27 2017-09-12 Waterfall Security Solutions Ltd. One way secure link
IL180020A (en) * 2006-12-12 2013-03-24 Waterfall Security Solutions Ltd Encryption -and decryption-enabled interfaces
IL180748A (en) * 2007-01-16 2013-03-24 Waterfall Security Solutions Ltd Secure archive
JP4378395B2 (ja) * 2007-06-06 2009-12-02 シャープ株式会社 画像処理装置、印刷装置、制御プログラム、記録媒体
US8026740B2 (en) 2008-03-21 2011-09-27 Micron Technology, Inc. Multi-level signaling for low power, short channel applications
US8296553B2 (en) * 2008-11-19 2012-10-23 Intel Corporation Method and system to enable fast platform restart
US9635037B2 (en) 2012-09-06 2017-04-25 Waterfall Security Solutions Ltd. Remote control of secure installations
US9419975B2 (en) 2013-04-22 2016-08-16 Waterfall Security Solutions Ltd. Bi-directional communication over a one-way link
IL235175A (en) 2014-10-19 2017-08-31 Frenkel Lior Secure desktop remote control
IL250010B (en) 2016-02-14 2020-04-30 Waterfall Security Solutions Ltd Secure connection with protected facilities
CN109347474B (zh) * 2018-09-28 2022-09-23 深圳忆联信息***有限公司 信号时序配置方法、装置、计算机设备及存储介质
US11263116B2 (en) 2019-01-24 2022-03-01 International Business Machines Corporation Champion test case generation
US11099975B2 (en) 2019-01-24 2021-08-24 International Business Machines Corporation Test space analysis across multiple combinatoric models
US11010285B2 (en) 2019-01-24 2021-05-18 International Business Machines Corporation Fault detection and localization to generate failing test cases using combinatorial test design techniques
US11010282B2 (en) 2019-01-24 2021-05-18 International Business Machines Corporation Fault detection and localization using combinatorial test design techniques while adhering to architectural restrictions
US11106567B2 (en) 2019-01-24 2021-08-31 International Business Machines Corporation Combinatoric set completion through unique test case generation
US11422924B2 (en) 2019-06-13 2022-08-23 International Business Machines Corporation Customizable test set selection using code flow trees
US11232020B2 (en) 2019-06-13 2022-01-25 International Business Machines Corporation Fault detection using breakpoint value-based fingerprints of failing regression test cases
US11036624B2 (en) 2019-06-13 2021-06-15 International Business Machines Corporation Self healing software utilizing regression test fingerprints
US10970197B2 (en) 2019-06-13 2021-04-06 International Business Machines Corporation Breakpoint value-based version control
US10970195B2 (en) 2019-06-13 2021-04-06 International Business Machines Corporation Reduction of test infrastructure
US10963366B2 (en) 2019-06-13 2021-03-30 International Business Machines Corporation Regression test fingerprints based on breakpoint values
US10990510B2 (en) 2019-06-13 2021-04-27 International Business Machines Corporation Associating attribute seeds of regression test cases with breakpoint value-based fingerprints

Family Cites Families (70)

* 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
US4271466A (en) * 1975-02-20 1981-06-02 Panafacom Limited Direct memory access control system with byte/word control of data bus
US4075691A (en) * 1975-11-06 1978-02-21 Bunker Ramo Corporation Communication control unit
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
DE3003291C2 (de) * 1980-01-30 1983-02-24 Siemens AG, 1000 Berlin und 8000 München Zweikanalige Datenverarbeitungsanordnung für Eisenbahnsicherungszwecke
US4342083A (en) * 1980-02-05 1982-07-27 The Bendix Corporation Communication system for a multiple-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
US4527236A (en) * 1980-04-04 1985-07-02 Digital Equipment Corporation Communications device for data processing system
JPS5779551A (en) * 1980-11-06 1982-05-18 Nec Corp Information transfer device
US4371754A (en) * 1980-11-19 1983-02-01 Rockwell International Corporation Automatic fault recovery system for a multiple processor telecommunications switching control
JPS5793422A (en) * 1980-11-29 1982-06-10 Omron Tateisi Electronics Co Dma controller
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
US4597084A (en) * 1981-10-01 1986-06-24 Stratus Computer, Inc. Computer memory apparatus
US4453215A (en) * 1981-10-01 1984-06-05 Stratus Computer, Inc. Central processing apparatus for fault-tolerant computing
US4481572A (en) * 1981-10-13 1984-11-06 Teledyne Industries, Inc. Multiconfigural computers utilizing a time-shared bus
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
JPS6052468B2 (ja) * 1982-03-04 1985-11-19 株式会社東芝 Dmaバス負荷可変装置
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
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
EP0148297B1 (en) * 1984-01-09 1993-12-15 Hitachi, Ltd. Synchronous decentralized processing system
US4589066A (en) * 1984-05-31 1986-05-13 General Electric Company Fault tolerant, frame synchronization for multiple processor systems
US4688166A (en) * 1984-08-03 1987-08-18 Motorola Computer Systems, Inc. Direct memory access controller supporting multiple input/output controllers and memory units
US4837677A (en) * 1985-06-14 1989-06-06 International Business Machines Corporation Multiple port service expansion adapter for a communications controller
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
US4847750A (en) * 1986-02-13 1989-07-11 Intelligent Instrumentation, Inc. Peripheral DMA controller for data acquisition system
US4780809A (en) * 1986-08-08 1988-10-25 Amdahl Corporation Apparatus for storing data with deferred uncorrectable error reporting
US5001624A (en) * 1987-02-13 1991-03-19 Harrell Hoffman Processor controlled DMA controller for transferring instruction and data from memory to coprocessor
JPH0690682B2 (ja) * 1987-02-28 1994-11-14 日本電気株式会社 マルチプロセツサシステムの障害処理方式
US4821170A (en) * 1987-04-17 1989-04-11 Tandem Computers Incorporated Input/output system for multiprocessors
US4907228A (en) * 1987-09-04 1990-03-06 Digital Equipment Corporation Dual-rail processor with error checking at single rail interfaces
EP0306211A3 (en) * 1987-09-04 1990-09-26 Digital Equipment Corporation Synchronized twin computer system
US4916704A (en) * 1987-09-04 1990-04-10 Digital Equipment Corporation Interface of non-fault tolerant components to fault tolerant system
CA1320276C (en) * 1987-09-04 1993-07-13 William F. Bruckert Dual rail processors with error checking on i/o reads
DE3854026D1 (de) * 1987-09-04 1995-07-27 Digital Equipment Corp Fehlertolerantes Rechnersystem mit Fehler-Eingrenzung.

Also Published As

Publication number Publication date
EP0415551A2 (en) 1991-03-06
CA2022250A1 (en) 1991-02-02
EP0415551A3 (en) 1993-07-14
US5185877A (en) 1993-02-09

Similar Documents

Publication Publication Date Title
JPH03232045A (ja) Dmaデータ転送のためのプロトコル
US5068780A (en) Method and apparatus for controlling initiation of bootstrap loading of an operating system in a computer system having first and second discrete computing zones
US5005174A (en) Dual zone, fault tolerant computer system with error checking in I/O writes
US5153881A (en) Method of handling errors in software
US5068851A (en) Apparatus and method for documenting faults in computing modules
JPH03184130A (ja) ソフトウェアの誤り処理方法
US4907228A (en) Dual-rail processor with error checking at single rail interfaces
US4916704A (en) Interface of non-fault tolerant components to fault tolerant system
US5249187A (en) Dual rail processors with error checking on I/O reads
US5099485A (en) Fault tolerant computer systems with fault isolation and repair
US4939643A (en) Fault tolerant digital data processor with improved bus protocol
US5163138A (en) Protocol for read write transfers via switching logic by transmitting and retransmitting an address
US5251227A (en) Targeted resets in a data processor including a trace memory to store transactions
JPH03182947A (ja) メモリデバイス
JPH03184129A (ja) 特定のデータをシステムデータに変換する方法
EP0411805B1 (en) Bulk memory transfer during resync
JP3069585B2 (ja) データ処理装置における目標指定リセット法
JPH03184155A (ja) 非存在メモリエラー処理の方法