JPH05158890A - 多重プロセッサ・データ処理システム及びその動作方法 - Google Patents

多重プロセッサ・データ処理システム及びその動作方法

Info

Publication number
JPH05158890A
JPH05158890A JP4147985A JP14798592A JPH05158890A JP H05158890 A JPH05158890 A JP H05158890A JP 4147985 A JP4147985 A JP 4147985A JP 14798592 A JP14798592 A JP 14798592A JP H05158890 A JPH05158890 A JP H05158890A
Authority
JP
Japan
Prior art keywords
data
bus
processor
memory
read
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP4147985A
Other languages
English (en)
Other versions
JP2602599B2 (ja
Inventor
David J Foster
ダヴィド・ジェイムス・ホスター
Armando Garcia
アーマンド・ガルシア
Robert B Pearson
ロバート・バーナード・ピアソン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of JPH05158890A publication Critical patent/JPH05158890A/ja
Application granted granted Critical
Publication of JP2602599B2 publication Critical patent/JP2602599B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • 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/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4009Coupling between buses with data restructuring
    • G06F13/4018Coupling between buses with data restructuring with data-width conversion

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)
  • Bus Control (AREA)
  • Computer And Data Communications (AREA)

Abstract

(57)【要約】 【目的】 複雑な高分解能像を実時間で操作し表示する
ことができ、高速データ結合を実行しうる多重プロセッ
サ・システムを実現して、共用システムの資源を効率よ
く利用することを図る。 【構成】 データ・プロセッサ22aにより書込まれる
データを第2のバス32に送信する前に第1のバス23
に緩衝記憶し、プロセッサから発生したバイト使用可能
(BE)信号をデータと共に緩衝記憶し、主メモリー26に
対する書込動作のため、該データを第2のバスに送信
し、BE信号に応答して読出−変更−書込(RMW) 動作の場
合それを示す制御信号を送信し、BE信号を第2のバスに
送信し、データとBE信号と RMW信号とを第2のバスから
第3のバス24に接続して主メモリーに送信し、主メモ
リーのインターフェース34が KMW信号に応答して主メ
モリーの指定場所からデータを読出し、読出されたデー
タをBE信号により受信データと選択的に組合わせて指定
場所に書戻すようにしたことを特徴とする。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はデータ処理装置及びその
動作方法に関し、特に多段バス階層構造を含む高性能多
重プロセッサ・システムに関する。
【0002】
【従来の技術】本特許出願は本願と同一人に譲渡された
下記の米国特許出願と関連がある。それらは、エイ・ガ
ーシァによる米国特許出願“共通高速結合方式に対し複
数プロセッサ、メモリー装置、及び I/Oインターフェー
スを接続する汎用インターフェース”(整理番号YO9
91−007),エイ・ガーシァほかによる米国特許出
願“多重プロセッサ・システム用集中バックプレン・バ
ス調停機能”(整理番号YO991−040),ディー
・ホスタほかによる米国特許出願“多重プロセッサ・シ
ステム用プロセッサ緩衝記憶インターフェース”(整理
番号YO991−019),アール・ピアソンによる米
国特許出願“高性能 I/Oプロセッサ”(整理番号YO9
91−097),ディー・ホスタほかによる米国特許出
願“多重プロセッサ・システム用直列診断インターフェ
ース・バス”(整理番号YO991−022),エス・
チョイほかによる米国特許出願“高定義複数媒体表示装
置”(整理番号YO991−091)等である。
【0003】科学計算光学システムなどにおいて、大量
な時間従属データ集合と対話し、可視表示することを必
要とするシステム要求は、処理される全データ集合を記
憶するべき大型高帯域幅ディスク・アレイと、問題集合
をダウンロードする高速ネットワークと、単一シミュレ
ーション時間ステップを処理するに必要な全データを緩
衝記憶する大容量高速メモリーと、データ集合を操作
し、拡張し、可視表示するに適切な演算機能と、実時間
高分解能可視表示装置とを含む。更に、これらの機能は
高度にプログラム可能且つ柔軟性のあるユーザ環境の下
に提供されるということが重要である。
【0004】下記2つの共に本願と同一人に譲渡された
米国特許は多重プロセッサ・システムを示す例である。
第1は、ダスガプタほかにより出願され本願と同一人に
譲渡された“大域バス及びセル・バスの両方に複数の割
込線を有する多重処理システム用割込機構”と称する1
988年4月5日発行の米国特許第4,736,319
号であって、大域バスに接続された監視処理要素を含む
多重処理システムを開示している。そこで、各々が複数
のプロセッサを含む複数のセルが複数のバス・インター
フェース・システムを通して大域バスに接続される。ワ
ークステーションは監視プロセッサに接続されて実行す
るための仕事を多重処理システムに入力する。
【0005】第2は、オールほかにより出願され本願と
同一人に譲渡された“分散型マイクロプロセシング・シ
ステム用アーキテクチャ”と称する1989年10月2
9日発行の米国特許第4,862,350号であって、
複数のマイクロプロセッサ制御装置を有する一次プロセ
ッサをインターフェースする共用メモリー・システムを
開示している。この共用メモリー・システムは RAMと、
RAMを管理する専用プロセッサとを含む。
【0006】
【発明が解決しようとする課題】しかしながら、多重プ
ロセッサにおいて遭遇する1つの基本的問題は共用連結
又は大域バス、及び共用大域メモリーのような共用資源
を有効に利用できるようにすることである。かかる共用
資源をその最大帯域幅の潜在能力で作動し、且つ信頼性
のあるデータ伝送及び記憶を行うことが望ましい。この
問題はプロセッサ、及び I/Oプロセッサ等のような多様
な異なる種類の動作機能を共用資源に接続使用する場合
に提起される。
【0007】従って、本発明の目的は共用システムの資
源を効率よく利用する多重プロセッサ・システムを提供
することである。本発明の他の目的は複雑な高分解能像
を実時間で操作し、処理し、表示することができる高速
データ結合を提供する最良の多重プロセッサ・システム
を提供することである。
【0008】
【課題を解決するための手段】本発明は、上記の問題を
解決し、その目的を達成するため、共用システム資源を
効率良くその帯域幅を利用しうる多重プロセッサ・デー
タ処理システム及びその動作方法を提供する。本システ
ムは各々がデータ・プロセッサを有する複数のプロセッ
サ・ノードを含む型のものである。本発明方法による
と、第1のステップにおいて、データ・プロセッサによ
り第1のバスに書込まれたデータは第2のバスに伝送さ
れる前に緩衝記憶される。第2のバスは他のプロセッサ
・ノードを有する局所プロセッサ・バスか、又はそこに
接続された I/O通信チャンネル・インターフェース装置
である。
【0009】第2のステップにおいて、データ・プロセ
ッサにより書込まれるデータと共に、データ・プロセッ
サから発生したバイト使用可能信号を緩衝記憶する。第
3のステップは、緩衝記憶されたデータを第2のバスに
送信し、緩衝記憶されたバイト使用可能信号に応答し
て、主メモリー書込動作が読出−変更−書込形式のメモ
リー動作として実行されるべきか否かを示す制御信号を
第2のバスに送信し、前記緩衝記憶されたバイト使用可
能信号を第2のバスに送信する各工程により主メモリー
書込動作を実行する。次のステップは、データと、制御
信号と、バイト使用可能信号とを局所バスから第3のバ
スに接続して、主メモリーに受入れる。第3のバスは高
速大域バスである。
【0010】主メモリー装置と共同するインターフェー
ス装置は読出−変更−書込メモリー動作を示す制御信号
に応答して(イ)主メモリー内の指定場所からデータを
読出し、(ロ)送信されたバイト使用可能信号に従い送
信された緩衝記憶データを選択的に組合わせ、(ハ)予
め読出され組合わされたデータを指定した記憶場所に書
戻す。
【0011】
【実施例】以下、添付図面に基づき本発明の実施例を詳
細に説明する。図1は本発明の一実施例に基づき構成さ
れ、動作する多重プロセッサ・システムの斜視図であ
り、特に科学計算光学システム(SVS) 10に実施した場
合の構成要素を例示する。 SVS10の目的は対話速度で
複雑なデータ集合を処理し、操作し、可視表示すること
であるが、システム10の使用はこのような重要な1つ
の適用技術にのみ限定されるものではない。
【0012】SVS10は数個の主要な構成要素を含む。
第1の構成要素はデータ処理システム内に実施され、す
べて高速大域バスによって連結された大規模演算機能
と、高速メモリーと、知能 I/Oプロセッサとを具備した
サーバ12である。大域バス,共用バス,及び共通連絡
の各用語は本説明において相互交換可能に使用される。
【0013】第2の構成要素は、例えばインターナショ
ナル・ビジネス・マシーンズ・コーポレイションによっ
て製造されたRISC System /6000(RS/6000)
データ処理システムで使用されるコンソール14である
(RISC System/6000はインターナショナル・ビジネ
ス・マシーンズ・コーポレイションの商標である)。コ
ンソール14は遠隔ワークステーション(図に示してい
ない)からネットワーク・アクセスを与えることができ
る。
【0014】第3の構成要素はコンソール機能を有する
RS/6000データ・プロセッサを含むフレーム・バッ
ファ16である。フレーム・バッファ16は、実時間表
示能力を与えるインターフェースであるANSI標準高性能
並列インターフェース(HIPPI) を介し、高分解能表示装
置18に取付けられたインターフェース及びイメージ緩
衝記憶ハードウェア(ワークステーション)16aを含
む。システム10はその他の構成要素としてディスク・
アレイ20を有する。ディスク・アレイ20はHIPPIイ
ンターフェースを介して55メガバイト/秒の伝送速度
を有する21ギガバイト容量の記憶システムの中に実施
することができる。
【0015】システム10の正確な構成は使用計画に従
って変化し、又図1の構成は発明の実施の際に限定を与
えることを意図するものではない。
【0016】図2は SVS10のサーバ12をブロック図
の形式で例示した図である。サーバ12は印刷回路カー
ド(22)1枚につき4個のプロセッサ P0− P3で組
織された複数の個々のプロセッサ22aから成る。サー
バ12は合計32プロセッサのために8枚のカードまで
を含むことができる。各プロセッサ・カード22は局所
プロセッサ・カード(LPC) バス32を SVS大域バス24
に結合する汎用バス(緩衝記憶)インターフェース(UBI
F)34を含む。又、 SVS大域バス24は複数の大域メモ
リー・カード26と、複数の I/Oプロセッサ・カード2
8と、コンソール14に対するインターフェース30と
に接続される。
【0017】更に詳細に説明すると、各プロセッサ・カ
ード22(図3)は各々がマイクロプロセッサ22aを
有する4個までのマイクロプロセッサ・ノードを含む。
本実施例において、各マイクロプロセッサ22aはイン
テル社(Intel Corp.) 製のi860型(80860)マ
イクロプロセッサである(i860はIntel Corp.の商
標である)。各マイクロプロセッサ22aは、本実施例
では、16メガバイト(MB)の記憶容量を有する局所ノー
ド・メモリー22bに対して、ノード・バス23を介し
接続される。又、各プロセッサ・ノードは LPCバス32
に対する緩衝記憶インターフェース22cを含む。
【0018】LPCバス32は複数のプロセッサ・ノード
をUBIF34に接続し、又他の共用資源に対するアクセス
を許容する。加えて、各プロセッサ・ノードは直列バス
(S)に対するインターフェースを含む。直列バス・イン
ターフェースの詳細はエイ・ガーシァほかにより出願さ
れ本願と同一人に譲渡された米国特許出願“多重プロセ
ッサ・システム用直列診断インターフェース・バス”
(整理番号YO991−042)に記述されている。
【0019】本実施例において、プロセッサ・カード2
2の1つは、ピーク性能が秒当り1.6億(160ミリ
オン)(MIPS) 個、又は秒当り3.2億個の単一精密基準
フローティング・ポイント・オペレーション(MFLOPS)を
可能とする能力がある。8プロセッサ・カード22の完
全構成システムは秒当り12.8億(1.28ビリオ
ン)個の命令、又は40MHz オペレーションと仮定する
と2.56GFLOPSに近いピーク性能を提供する。
【0020】I/Oプロセッサ・カード28(図18)の
各々はプロセッサ・カード22のプロセッサ・ノード
(マイクロプロセッサ)22aに類似のプロセッサ・ノ
ード28aと、2つの HIPPIレシーバ28bと、2つの
HIPPIトランスミッタ28cとを含む。かくして、各 I/
Oプロセッサ・カード(IOP) 28は、各100MB/秒の
伝送速度で動作する能力を有する4個の HIPPIインター
フェースを提供する。 HIPPIインターフェースは高速デ
ィスク・アレイを支援し、 HIPPI取付けフレーム・バッ
ファに対し実時間でイメージを供給し、スーパーコンピ
ュータのような外部装置との高速通信を実現するべく使
用される。
【0021】本実施例において、各大域メモリー・カー
ド26(図19)は128MBか又は256MBの ECC付ラ
ンダム・アクセス・メモリーにより構成される。サーバ
12は4個の大域メモリー・カード26までを含むこと
ができる。各大域メモリー・カード26はシステム10
の各ユーザが感じるメモリー・アクセス待ち時間を減少
する方法による640MB/秒の帯域幅を供給することが
できる。
【0022】これは各メモリー・カード26の大域メモ
リーを4つのメモリー・バンク( B0− B3)に区画す
ることによって達成される。その各メモリー・バンクは
個々独立にブロック読出サイクル,頁モード読出又は書
込サイクル,及びランダム読出又は書込サイクルを実行
する能力がある。大域メモリー・カード(GMC) バス26
aは各バンク( B0− B3)が独立して動作可能である
が、他方、共通の大域バス資源を利用する能力を有す
る。
【0023】コンソール・インターフェース30は2つ
のカードに分割され、その1つはサーバ12内にあり、
他方はコンソール14内に存在し、その2枚のカード間
を連結して、サーバの大域メモリー及び直列バスに対す
るアクセスを可能にし、次いで各プロセッサの局所メモ
リー及びPBIFに対するアクセスを可能にする。
【0024】大域バス24はこれら種々の構成要素を連
結するためエミッタ結合論理(ECL)技術によって実施さ
れ、40MHz オペレーションと仮定すると、1.28ギ
ガバイト/秒の伝送速度が与えられる。各 SVS10のサ
ーバ12は12マスタ装置(すなわち、プロセッサ・カ
ード22,I/O プロセッサ・カード28,又はコンソー
ル・インターフェース・カード30)まで、及び4メモ
リー・カード26までを支援する。
【0025】1つの可能な構成としては、コンソール・
インターフェース・カード30と、8プロセッサ・カー
ド22(又は32プロセッサ)と、4大域メモリー・カ
ード26(各々は合計1024MBの高速共用メモリーの
ための256バイト記憶装置を有する)と、高速ディス
ク・アレイ20を支援し、 HIPPI原始からデータを受信
し、フレーム・バッファ16に取付けられた HIPPIにイ
メージ・データを分配する1 I/Oプロセッサ28とを含
む。コンソール・ワークステーション14は LANアダプ
タ及びディスク制御装置のような標準 I/O装置を支援す
ると共に、ユーザに対し SVS10へのインターフェース
を提供する。
【0026】図2に見ることができるシステム10の各
構成要素カードはすべて同様な構成を有するUBIF34の
1つを含む。UBIF34は大域バス24に対する共用同期
減結合インターフェースを供給し、 LPCバス32又は G
MCバス26aに対し局所調停を与え、すべて必要な初期
接続手順を実行し、大域バス24との順序付けを再試行
する。本実施例において、UBIF34はプロセッサ22a
のような局所マスタ(又は主)装置を4個まで、メモリ
ー・バンク B0− B3のようなスレーブ(又は従)装置
を4個まで支援する両方向パイプライン緩衝技法を提供
する。UBIF34は32ビット多重の無制限データ・バス
幅を支援し、40MHz バス動作及び256ビット幅デー
タ通路と仮定すると、局所バス32と大域バス24との
間に640メガバイト/秒のピーク・データ伝送速度が
与えられる。
【0027】更に、 SVS10のUBIF34の構成要素の説
明を続ける。図7及び図9はそれぞれUBIF-A 34a及
びUBIF-D34bモジュールのアーキテクチャを描いた図
である。図7はプロセッサ・カード22,I/O プロセッ
サ・カード28,又はコンソール I/Fカード30で使用
するUBIF-Aを示す。図8は下記のように、大域メモリー
・カード26に使用するUBIF-Aを示す。 UBIF-A 34
aは局所バス調停機能(LPC ARB) 76と、4局所装置の
各々に対する両方向アドレス及び制御待ち行列と、出力
FIFO制御(OFIFO CTRL78)と、入力FIFO制御(IFIFO
CNTRL 50a)と、GB24インターフェース制御論理
(大域バス制御79)とを含む。
【0028】UBIF-A 34aは、又4局所装置の各々に
対する両方向データ待ち行列を含む8個の独立したUBIF
-D 34bモジュールの高層制御を実施する。本実施例
において、各UBIF-D 34bはバイト使用可能信号,パ
リティ・ビット,及び ECCビットと共同する32ビット
・データ・セクションを支援する。以下で、UBIF34機
能モジュールの詳細な構成的説明を行う。
【0029】以下、UBIF-A 34a及びUBIF-D 34b
の機能ブロックの各種構成要素を定義する。加えて、付
録Aは大域バス(GB24)の信号の定義を示し、付録B
は局所プロセッサ・カード(LPC)バス32の信号の定義
を示し、付録Cは SVS10で実施するような大域メモリ
ー・カード(GMC26a)の信号の定義を与える。更に、
図24は、プロセッサ・モードで使用したときのUBIF制
御に対する入力及び出力信号を示し、図25はメモリー
・モードで使用したときのUBIF制御に対する入力及び出
力信号を示す。
【0030】すべてOF ,IF ,LB DIR,及びLB QUI
ET とラベルが付された制御信号はUBIF A 制御セクシ
ョンから発生され、8個のUBIF D モジュール及びUBIF
Aにより内部で記録され、 MID待ち行列を制御すると
いうことに注意を要する。これはパイプライン・アドレ
ス/データ・サイクルに関して定義する限りにおいて、
LPCバス32, GMCバス26a,及びGB24アーキテク
チャに従う。
【0031】出力待ち行列42,44:これら各ブロッ
クは4つの独立した出力待ち行列を含む。4つの待ち行
列の各々は局所ノード当り8緩衝記憶入力を有する。 入力待ち行列46:このブロックは4つの独立した入力
待ち行列を含む。4つの待ち行列の各々は局所ノード当
り8緩衝記憶入力を有する。
【0032】MID出力待ち行列48:このブロックは4
つの独立した MID出力待ち行列を含む。4つの待ち行列
の各々は局所ノード当り8緩衝記憶入力を有する。付録
Aに示す如く、GB24信号線GB MID(7:0)は大域メ
モリー26応答サイクルにおいて返送されるプロセッサ
識別(ID)信号を搬送し、返送データの宛先を表示する。
MID出力待ち行列48はメモリー・モードでのみ使用さ
れる。
【0033】MID入力待ち行列50:このブロックは4
つの独立した MID入力待ち行列を含む。4つの待ち行列
の各々は局所ノード当り8緩衝記憶入力を供給する。 M
ID入力待ち行列はプロセッサ・モードにおいてのみ使用
される。
【0034】出力FIFO入力レジスタ(OFIR)52:このレ
ジスタ(52a)はUBIF-A 34aの有効な局所アドレ
ス・バス・サイクルを抽出し、UBIF-D 34b(レジス
タ52b)の有効な局所データ・バス・サイクルを抽出
する。レジスタ52a及び52bはそれぞれブロック4
2及び44に含まれている4つの出力待ち行列を駆動す
る。
【0035】出力FIFO迂回レジスタ(OFBR)54:このレ
ジスタはUBIF-A 34a(レジスタ54a)の有効な局
所アドレス・バス・サイクルと、UBIF-D 34b(レジ
スタ54b)の有効な局所データ・バス・サイクルとを
抽出する。レジスタは出力迂回路が使用可能とされたと
きに、出力待ち行列42,44を迂回するよう使用され
る。
【0036】出力FIFO出力レジスタ(OFOR)53:このレ
ジスタは大域バス・トランシーバ34cへ伝送するた
め、出力待ち行列から選ばれた出力をラッチする。
【0037】入力FIFO入力レジスタ(IFIR)56:このレ
ジスタはUBIF-A 34a(レジスタ56a)の有効な大
域アドレス・バス・サイクルと、UBIF-D 34b(レジ
スタ56b)の有効な大域データ・バス・サイクルとを
抽出する。レジスタ56a,56bはそれぞれブロック
50,46に含まれている4つの入力待ち行列を駆動す
る。
【0038】入力FIFO迂回レジスタ(IFBR)58:このレ
ジスタはUBIF-A 34a(レジスタ58a)の有効な大
域アドレス・バス・サイクルと、UBIF-D 34b(レジ
スタ58b)の有効な大域データ・バス・サイクルとを
抽出する。レジスタ58a,58bはそれぞれ入力迂回
路が使用可能となったときに、入力待ち行列50,46
を迂回する。
【0039】入力FIFO出力レジスタ(IFOR)55:このレ
ジスタは LPCバス32に対して伝送するため、入力待ち
行列から選ばれた出力をラッチする。
【0040】入力FIFO次−近(next-near)レジスタ(INF
R)60:(UBIF-A 34aのみ)このレジスタは、UBIF
34が大域メモリー・カード26に使用されたとき、発
行する後続の行(ROW)アドレスと比較するため、最後の
有効行アドレスを大域メモリー・バンクに保管する。こ
の比較の結果は最初の頁モードDRAMサイクルを使用可能
にするために使用される GMC NENE(3:0)を発生す
る。
【0041】最終アドレス・レジスタ(3:0)(LAR
(3:0))62:これらレジスタは各大域メモリー・
バンクのために現在の読出ロックアドレス及びプロセッ
サ識別子PID(7:0)を保管し、大域メモリー26の原
子読出−変更−書込サイクルを支援するために使用さ
れ、読出ロック/書込アンロック・サイクルとして実施
される。
【0042】読出/変更/書込レジスタ(RMWR)64:
(UBIF-D 34bのみ) このレジスタは、GB RMW によって示された部分書込サ
イクルにおいて供給される書込データと組合わせるため
の大域メモリー26から読出された読出データを記憶す
る。
【0043】ECCパリティ発生(ECC/P) 66:(UBIF-D
34bのみ) 大域メモリー・カード26と共に使用されるUBIF34に
対し、この論理セクションは大域メモリー26の読出オ
ペレーションによって返送された32ビット・データ・
スライスの各々に対する ECC及びバイト・パリティを演
算する。演算された ECCは後続するクロック・サイクル
中における誤り検出及び修正のため、大域メモリー読出
データ及び供給された ECCと共に記録される。
【0044】アドレス・マップ(AMAP)57:このブロッ
クはインターリーブ因数ISEL〔1:0〕,CARDID〔3:
0〕,及びMCARD 〔3:0〕と共に供給されたGB24の
アドレスGB A 〔31:0〕を入力として受取り、GB制
御79に対する各信号,再写像済みフラット(flat)ア
ドレス(RAS/CAS) ,バンク選択,及びアドレス認識(ADR
EC) 信号等を作成する。このブロックはメモリー・モー
ドでのみ使用される。
【0045】誤り検出及び修正(EDC) 68:(UBIF-D
34bのみ) この回路は演算された ECC及び供給された ECCを入力
し、ECCERR, ERRTYPE,及び各32ビット・データ・スラ
イス・セクションの如何なる単一ビット・データ誤りで
も修正するよう使用される32ビット修正ベクトルを発
生する。
【0046】パリティ/ECC 発生(P/ECC) 70:(UBIF
-D 34bのみ) この回路は入力大域バス・データの ECC及びバイト・パ
リティを演算する。演算されたパリティは供給されたパ
リティと比較してGB24のデータ・パリティ誤りをチェ
ックする。GB DPERR はデータ・パリティ誤りが検出さ
れたときは常に発生する。大域メモリー・カード26と
共にUBIF34が使用され、演算された ECCは供給された
データと共に、選ばれた大域メモリー26のバンクに記
憶される。
【0047】パリティ発生/チェック(PGEN/PCHK) 7
2:(UBEF-A 34aのみ) この回路は入力アドレスのパリティを演算し、演算した
パリティを供給したアドレス・パリティと比較する。GB
APERR はアドレス・パリティ誤りが検出されたときは
常に発生する。
【0048】以下、 SVS10の各種類のカードに対する
UBIF34の使用を記述する。プロセッサ・カード及び I/Oプロセッサ・カードの支援 以下、4プロセッサ・ノード SVS10のプロセッサ・カ
ード22,I/O プロセッサ・カード28,又はコンソー
ル I/Fカード30に使用したときのUBIF34の各機能に
ついて説明する。図3は SVS10のプロセッサ・カード
22のブロック図である。プロセッサ・カード22は各
々がマイクロプロセッサ22a,16MBの局所専用メモ
リー22b,バス・インターフェース22d,及びプロ
セッサ・バス・インターフェース(PBIF 22c)を含む
同等な4個のプロセッサ・ノード( P0− P3)を含
む。
【0049】PBIF22cは局所プロセッサ・ノード・デ
ータ・バス23aに接続され、又プロセッサ・アドレス
・バス23b及び制御バス23c(図4)にも接続され
る。PBIF22cは多数のレジスタを含み、その動作は後
述する。PBIF22cは、又ディー・ホスタほかによる米
国特許出願“多重プロセッサ・システム用プロセッサ・
バッファ付インターフェース”(整理番号YO911−
019)に詳細に記述されている。
【0050】4プロセッサ・ノード(P0− P3)は LPC
バス32を介してUBIF34を共有する。UBIF34はGB2
4に共通のインターフェースを与える。すべての大域読
出し,書込み,及びプロセッサ間割込みは共通のUBIF3
4を通過する。下記セクションは4ノード・プロセッサ
・カードに対しUBIF34によって供給される機能につい
て説明する。又、図7及び図9のブロック図に示した回
路の詳細を示す図26,図28,図30,図31,及び
図32を参照する。
【0051】UBIF34出力セクション UBIF34は4局所プロセッサ22aの各々に対する独立
の緩衝記憶又は緩衝技法を提供する。UBIF-A 34aの
出力待ち行列42は4プロセッサ・ノードの各々につ
き、8プロセッサ読出し,書込み,又はプロセッサ間割
込み(IPC) 要求に対する緩衝記憶を実行する。UBIF-A
34aはATYPE ,A(31:0),AP(3:0),LEN
(3:0),PID(7:0),PTAG(7:0),R/−W ,L
OCK及びRMW 等を含み、全アドレス・バス(ABUS)信号に
対して緩衝記憶を与える。
【0052】UBIF-A 34aは、又 LPC32及びGB24
に必要なすべてのバス制御及び初期接続手順信号を供給
する。8UBIF-D 34bモジュール(図31及び図3
2)はデータ・バス(DBUS)信号D(255:0),DP(3
1:0),DE(31:0),MTAG(7:0),ECCERR,
ERRTYPE ,及び GBDPERRのため、4プロセッサ・ノード
の各々に対して緩衝記憶を与える。各UBIF-D 34bは
共同するパリティ,DP(3:0),バイト使用可能BE
(3:0),MTAGビット,ECCERR,ERRTYPE ,及びGBDP
ERRと共に32ビット・データ・スライス,D(31:
0)を支援する。
【0053】個有のプロセッサ識別子PID(7:0)は要
求プロセッサ22aからUBIF34に供給される。PID
(7:0)はHWID(5:0)を局所プロセッサ番号LPN
(1:0)で連結することによって形成される。HWID
(5:0)はシステムのバックプレンから各カードに供
給された独特なUNITID(1:0)及びCARDID(3:0)
を連結することによって形成される。要求プロセッサ2
2aは、又応答データが不調を返送するかもしれない応
答データの再順序付けに対して後続使用されるPTAG
(7:0)を使用して複数の未済読出要求をタグ付けす
ることができる。UBIF34は供給された PID及びPTAGを
残りのアドレス・バス信号と共にGB24に伝送する。
【0054】本実施例において、各プロセッサ22aは
1つの未済読出要求のみを持つかもしれないが(UBIF3
4によってではなく、プロセッサによって課された限
定)、多重未済書込要求を持つことができる。各出力待
ち行列42,44は典型的に多くとも1つの大域メモリ
ー26読出要求が続くある少数の大域メモリー26書込
要求に対して0を含む。出力待ち行列42,44のいず
れかに少くとも1つの保留 R/W要求があると、UBIF34
出力制御装置78は緩衝記憶された要求をタスク指名す
るため、GB24を要求する。
【0055】局所バス調停機能 LPC32調停機能(LPCARB)76は LPC32又はGB24の
他の装置に対する要求又は応答サイクルのため、 LPC3
2にアクセスを要求する4個までの局所装置を支援す
る。プロセッサ・カード22の4プロセッサ22aは大
域メモリー26サブシステムに対して読出/書込(R/W)
要求を送信するよう LPC32の調停機能76に対し要求
を発行する。
【0056】通常、UBIF34は LPCバス32のマスタで
あり、プロセッサ22aに対して大域メモリー26読出
データを返送する LPC32データ・バス(LPC-D) に対す
るアクセスを回復するための最高優先権を有する。かく
して、UBIF34は典型的に直ちに読出データをプロセッ
サ22aに返送する一方、プロセッサ22aに対するLP
C-D を許容し、局所 I/O装置又はGB24に対して書込デ
ータを発行する。LPC32のアドレス・バス(LPC-A) はU
BIF34によってではなく、局所マスタ装置によっての
み駆動される。
【0057】LPCARB 76は円形署名上申書調停方式
(以下、ラウンドロビン調停方式という)を使用して、
LPCバス32に対するアクセスを許容するが、UBIF34
が LPC32の使用を要求したときには、UBIF34に対し
最高優先権を与える。GB24と同様に、LPC-D 及び LPC
-Aは減結合され、パイプライン化されて、すべての与え
られた LPC32サイクル中、マスタ装置がアドレス・バ
スを使用することができるほか、従装置はデータ・バス
を使用することができるということを意味する。かくし
て、 LPCARB 76はUBIF34が大域読出データを LPC-D
を介して局所プロセッサ22aに返送している間に、 L
PC-Aに対し、プロセッサ22aに対する読出要求の発行
を許可することができる。
【0058】又、 LPCARB 76はプロセッサの出力待ち
行列が全部使用の場合、UBIF34の出力待ち行列42,
44の状態を監視して、GB24 R/Wサイクルの発行を希
望するプロセッサ22aに対し LPC32を許可しないよ
うにする。 LPCARB 76は対応する大域バス出力待ち行
列が全部使用であっても、 LPC32に対し、プロセッサ
22aに対する局所 R/W要求サイクルの発行を許諾す
る。
【0059】出力待ち行列制御 各出力待ち行列42,44は独立の入力段制御装置及び
出力段制御装置によって制御される。 IFIFO CNTRL 5
0a内で実施される入力段制御装置はプロセッサ22a
の R/W要求を待ち、共同する出力待ち行列に対する要求
を待機状態にする。 LPCARB 76は対応する出力待ち行
列に要求を記憶するべく開き入口がある場合にのみ、要
求装置に対してLPCバス32を許可する。出力段制御装
置はその待ち行列に保留要求があるときは常にUBIF34
の出力バスを調停し、必要に応じ、GB24の肯定応答を
待って、他の保留要求の処理に進む。
【0060】読出又は書込要求に応答して肯定応答が要
求されると、いずれか特定のプロセッサ22aからの複
数の緩衝記憶された書込要求は連続サイクルとしてGB2
4に現われることが防止される。
【0061】出力待ち行列解除 各出力待ち行列42,44は、又要求がGB24の宛先装
置に対して伝送され、それが成功した後、出力待ち行列
42,44からのプロセッサ22a要求を待ち行列解除
する責任がある OFIFO CNTRL78内に設定した対応す
る待ち行列解除制御装置を持つ。GB24に対するタスク
指名のために、どのプロセッサ22a待ち行列を選択す
るかを決めるため、4方法(way) ラウンドロビン調停方
式が使用される。プロセッサ22aのR/W要求は宛先装
置から有効な ACK信号を受信した後に待ち行列解除され
る。要求は、又どの宛先装置からも ACK/NAK信号を受信
しなかった場合に待ち行列解除される。
【0062】プロセッサ22aの R/W要求は有効な NAK
信号を受信しない限り再試行される。しかし、局所 SVS
10のシステム装置(LEN(2:1)=0により確認され
る)に対して定められたプロセッサ22aの IPC割込み
サイクルは ACK/NAK初期接続手順を要求せず、出力レジ
スタ(OFOR)に一度伝送され待ち行列解除される。下記の
ように、遠隔 SVS10システム装置に対し予定されてい
るプロセッサ間通信(IPC) 割込サイクルは通常のGB24
プロセッサ22aの要求サイクル同様、同じ ACK/NAK
,再試行,放棄機構を使用する。
【0063】出力迂回路 迂回路はUBIF34の出力に設けられ、プロセッサ22a
の R/W要求が直接 LPC32からGB24に流れることを許
容し、OFBR54a,54b及び TTL/ECLレジスタ付トラ
ンシーバ34cを通してのみ通過する。この迂回路は与
えられたプロセッサ22aに対する対応する出力待ち行
列42又は44が空であるとき、及びGB24に対するア
クセスを待っているいずれか他のプロセッサ出力待ち行
列に保留要求がないときに使用可能となる。それは、AC
K/NAK 表示を保留する出力待ち行列42,44に対し、
他のプロセッサ22a要求があるかもしれないというこ
とに注意が必要である。
【0064】しかし、これら他の要求はGB24に対する
アクセスを待たないかもしれないので、与えられたプロ
セッサ22aに対する迂回路を使用可能にする。しかし
ながら、この迂回路は順序を保持するため、その出力待
ち行列内にいずれか保留要求を有するプロセッサ22a
によっては使用できない。又、すべてのプロセッサ22
aの要求は、 NAK表示が再試行を意味するので、ACK/NA
K表示を保留するそれらに対応する出力待ち行列に記憶
される。かくして、全プロセッサ22aの R/W要求は、
宛先装置による受信成功か、誤り状態のために放棄され
るまで(すなわち、バスはタイムアウトするか、GB24
アドレスが認識されない)、それぞれ対応する出力待ち
行列に記憶される。
【0065】大域バスのパリティ保護 GB24のアドレス・バスA(31:0)、及びデータ・バ
スD(255:0)においてパリティ保護が使用される。
UBIF34の出力段はGB24を駆動したときに、ECC/P
66と共にデータ・パリティを発生し、一方GB24から
受信したときにUBIF34の入力段がP/ECC70と共にデ
ータ・パリティをチェックする。受信したアドレス・パ
リティ・ビットAP(3:0)と比較してA(31:0)に
不良パリティを検出すると、UBIF A からGB APERR が
発行される。
【0066】受信したデータ・パリティ・ビットDP(3
1:0)と比較してD(255:0)に不良パリティを検
出すると、UBIF-D 34bからGB DPERR を発行する。
これらGB24のパリティ誤り信号はコンソール・プロセ
ッサ・インターフェースにより監視される。大域メモリ
ー26応答サイクル中、 LPC GBPERRは読出データと共
に要求プロセッサ22aに返送されて、GB24から受信
したデータのパリティ状況を反映させる。
【0067】大域バス24再試行タイミング 図14は要求UBIF34が観察しうるよう、GB24の典型
的な読出再試行タイミング順次を示す。図に示すよう
に、プロセッサ当り最高バス再試行周期は7サイクル
(又は40MHz と仮定して182MB/秒)である。又、
単一プロセッサ22aからの連続要求がGB24に出力さ
れるかもしれない最高データ速度の8サイクルを示す
(又は40MHz と仮定して160MB/秒)。再試行タイ
ミングとの比較による超過サイクルは、前の要求を待ち
行列解除し、出力待ち行列における次のプロセッサ22
a要求をアクセスした結果生じたものである。UBIF34
は ACK又はバス・タイムアウト表示を受信した後、待ち
行列解除ポインタを進める。
【0068】混合モード・プロセッサ要求 図15は単一UBIF34から連続混合モード・プロセッサ
22a要求サイクルを発行するGB24バスのタイミング
順次を示す。このタイミング順次において、UBIF34は
4局所プロセッサ22aの各々から1つの(又は1以上
の)プロセッサ22a要求を持ち、UBIF34はGB24に
対し瞬時のアクセスが与えられるものと仮定する。この
タイミング図に示すように、第1のプロセッサ22a
( P0)に対し読出要求が発行され、第2のプロセッサ
22a( P1)からの書込要求と、第3のプロセッサ2
2a(P2)からの読出要求と、第4のプロセッサ22
aからの書込要求がそれに続くことがわかる。発行され
たプロセッサ22a要求はいずれも否定応答され(NAKe
d) るべきであり、UBIF34は適切な要求を再発行す
る。
【0069】IPC 割込支援 プロセッサ間割込サイクルは IPC指定 LPCバス32及び
GB24サイクルの使用により支援される。UBIF34の出
力セクションの観点からはプロセッサ22aのR/Wサイ
クルと IPC割込サイクルとは区別できない。プロセッサ
22aのノードは局所プロセッサ・カード22のアドレ
ス・バスを要求することにより(すなわち、 LPC L/−
G(i)=0と共に LPC RREQ(i) を発行する)、及び IPC
割込サイクルとしてABUS形式をタグ付けすることにより
IPC割込サイクルを発生する。
【0070】IPC割込サイクルのため、 LPC LPC ATYPE
=0, LPC A(31:0)はプロセッサ22aの選択
マスクを指定し、 LPC LEN(3:0)はプロセッサ22
aのグループ選択を指定する。 LPC R/W, LPC LOCK,
及び LPC RMW は IPC割込サイクルに対して定義されな
い。UBIF34は通常のプロセッサ22aの R/W要求サイ
クルとして IPC割込サイクルを再待機する。しかし、UB
IF34の入力セクションは通常のプロセッサ22aの R
/W要求サイクルとは別に IPC割込サイクルを復号し、解
釈する。
【0071】局所 SVS10システム装置に対して予定さ
れたプロセッサ IPC割込サイクル(LEN(2:1)=00
により確認された)は ACK/NAK初期接続手段を要求せ
ず、UBIF34の出力レジスタ32cに対して一度伝送さ
れ待ち行列解除される。しかし、遠隔 SVS10のシステ
ム装置に対して予定された IPC割込サイクルは他のGB2
4プロセッサ22aの要求サイクルにおいて実行すると
同様、同一の ACK/NAK,再試行,及び放棄機構を使用す
る。
【0072】UBIF34入力セクション 4ノード・プロセッサ22aカードのUBIF34入力セク
ションは大域メモリー26のサブシステムによって返送
されたバッファ応答データに対して使用される。UBIF3
4の入力セクションは4個の共同する局所マスタ装置の
いずれかに対し、保留読出要求いずれかを有するときは
常にサイクル基準でGB24を監視する。かくして、保留
大域読出サイクルのいずれかが与えられると、入力待ち
行列入力レジスタ,IFIR56a,56bはそれぞれサイ
クル毎にGB24の Dバスを抽出し、合致があるときは常
に記憶されたデータを適当な入力待ち行列に条件付きで
記憶する。復号は最も重要なメモリー識別ビットMID
(7:2)を、UNITID(1:0)及びCARDID(3:0)
によって形成されたUBIFのハードウェアID(HWID(5:
0))に合致させることによって行われ、次いでMID
(1:0)を使用して局所ノードを選択する。
【0073】大域バス・データ・パリティ・チェック 前述したように、UBIF34の入力セクションは受信デー
タD(255:0)に対するパリティを演算し、演算した
パリティを誤りチェックのため受信したデータ・バス・
パリティDP(31:0)と比較する。各UBIF-D 34b
は対応する32ビット・データ・スライスの有効性をチ
ェックし、GB24サイクル毎にデータ・パリティ状況信
号GBDPERR を発生する。8本のGB24データ・パリティ
誤り線GBDPERR(7:0)は共にオア結合されて、誤り報
告のためシステム・バックプレンに駆動する複合GB DP
ERR 信号を形成する。8個のUBIF-D 34モジュール
は、LPC32のバス応答サイクル中、共にオア結合され
て複合 LPC GBDPERR 信号を作成する応答データ及び対
応する GBDPERR信号を返送する。この複合データ・パリ
ティ状況信号はプロセッサ22aが返送データを受信す
るための割込の発生に使用される。
【0074】UBIF34入力迂回路 UBIF34の入力迂回(IFBR58a及び58b)は大域メ
モリー26の応答サイクルを使用可能にし、プロセッサ
の対応する入力待ち行列が空であり、 LPCバス32がUB
IF34に対して利用可能であるときは常に特定のプロセ
ッサ22aに対する入力待ち行列46を迂回する。さも
なければ、応答データは LPC32のバスを介して行われ
る後の伝送のため、対応するプロセッサ22aの入力待
ち行列46において待機する。
【0075】応答サイクル ACK/NAK初期接続手順 GB24又は LPC32のバス応答サイクルに包含される A
CK/NAK初期接続手順がないこと、及び一度プロセッサ2
2aが LPCバス32の作動可能線 LPC RDY(i)を主張す
ると、要求プロセッサ22aは常に読出データを受諾す
ることができるものと仮定すること等に注意するべきで
ある。
【0076】入力待ち行列制御 各UBIF34の入力待ち行列46,50は入力段制御装置
及び出力段制御装置によって個々に制御される。入力段
制御装置はGB24の対応するハードウェアIDに合致する
有効なメモリー応答サイクルを監視する。最下位2つの
MID ビット(GB MID (1:0))が4プロセッサ22a
の入力待ち行列46の1つを選択するが、GB DCYCLEに
よって条件付けられた有効なGB MID(7:2)がHWID
(5:0)に等しいときに合致が起こる。入力迂回路が
使用可能にされ、プロセッサの入力待ち行列に他の応答
が存在しないものと仮定すると、有効なGB24の応答は
LPC32のバスを通して伝送される。
【0077】さもなければ、入力段制御装置は LPC32
のバスに対し後に伝送するため、受信した応答を対応す
る入力待ち行列46,50で待機させる。受信データが
パリティ誤り状況にあった場合も、その結果は応答デー
タと共に返送される。UBIF-D34bモジュールはD(25
5:0),MISC,ECCERR,及びERRTYPE を緩衝記憶し、
UBIF-A 34aはMID(7:0)を緩衝記憶する。すべて
のUBIF34のモジュールはGB24のデータ・バス信号,
GB DCYCLE,GB MID(7:0),及びそれらの対応する
応答ビットを個々に監視し、平行に同一の制御機能を実
行する。
【0078】出力段制御装置は局所装置に対し待機状態
応答サイクルを返送する責任がある。出力段制御装置
は、いずれか待機状態応答が与えられて、 LPCバス32
を調停し、必要に応じ、 LPC RDY(i)で示す作動可能な
プロセッサ22aに対してメモリー応答を返送する。ラ
ウンドロビン調停方式が使用され、複数入力待ち行列が
データを含む場合は常に各局所装置に対して応答を発行
する。UBIF34は LPC32のデータ・バスに対し最高優
先権を有する。
【0079】典型的プロセッサ22a R/Wタイミング順
図10乃至図13はそれぞれ LPC32,UBIF34,出力
バス,及びGB24の各種プロセッサ22a読出及び書込
タイミング順次を表わす。図12及び図13に示すタイ
ミング順次は、4つの局所プロセッサ22aはすべて L
PC32の大域メモリー26の要求を同時に(又は連続的
に)発行し、UBIF34のプロセッサ22aの出力待ち行
列は空であるものと仮定する。局所バスを許可する優先
権の順序は、タイミング順次の開始の際(すなわち、バ
ス・サイクル2において)プロセッサ(0)は最高優先
権を持つものと仮定する。
【0080】更に、GB24の調停タイミングは、他のUB
IF34がGB24の使用を試みず、局所UBIF34はGB24
に対する排他的アクセスが与えられるものと仮定する。
タイミング図に示すように、各プロセッサ22aは、そ
れらの対応する大域メモリー26要求を発行するため、
優先権順序で LPC32に対するアクセスが与えられる。
すべての内部待ち行列は、この例においては、タイミン
グ順次の開始時点においては空であると仮定し、他のUB
IF34はGB24を同時に要求しないものとすると、すべ
てのプロセッサ22aの R/W要求は単一サイクルでUBIF
34を通して伝送され(OFBR54a,54bを通る)、
更にGB24を介して伝送するため外部UBIF34の TTL/E
CL出力レジスタ34cにラッチされる。
【0081】又、各プロセッサの R/W要求は宛先装置か
らの肯定応答(ACK) の受信を保留するそれらに対応する
出力待ち行列42,44にも記憶される。肯定応答がな
い場合(no ACK)、UBIF34の出力段はそのサイクルを再
試行する。かくして、全プロセッサ22aの R/W要求
は、宛先装置による受諾に成功するまで、又は誤り状態
の故に放棄されるまで(すなわち、バスのタイムアウト
又はGB24のアドレス認識せず)それらに対応する出力
待ち行列42,44に記憶される。
【0082】プロセッサ間通信(IPC)の支援 前述のように、 SVS10は、プロセッサ22aにより単
一プロセッサ22aに対し、又は一組のプロセッサ22
aに対して割込みを送信することを許容する直接プロセ
ッサ間通信(IPC) 機構を含む。この IPC機構はプロセッ
サ22aノード及びUBIF34両ハードウェアに支持さ
れ、割込みメッセージ・サイクルとタグ付けされている
GB24及び局所バス32の特別バス・サイクルを使用し
て実施される。この点につき、付録Aに示すGB24の信
号の定義における ATYPE信号の定義を参照するとよい。
IPC割込検出機構はUBIF34の外部で実施される。
【0083】図16はプロセッサ22aのノードから発
生する割込メッセージ・パケットの構成を示す。PBIF2
2cは4ビット選択識別子(GSI)及び32ビット・プロ
セッサ選択マスク(PSM) から成る40ビット R/W IPCレ
ジスタ(IPCR)22eを含む。4ビット群選択フィールド
は割込メッセージの宛先群としてプロセッサの組(すな
わち、演算プロセッサ22a又は I/Oプロセッサ28
a)及び SVS10のシステム装置(4つのうちの1つ)
を指定する。32ビット PSMフィールドは選択されたプ
ロセッサ群のどのプロセッサが割込みを受けるべきかを
指定する。
【0084】PSMフィールドのビット位置(i) における
“1”の値が割込みを受けうるプロセッサ(i) を使用可
能にする。このようにして、システム・プロセッサはど
れでも単一 IPC割込メッセージ・サイクルを発行するこ
とにより選択された群内のプロセッサの組又はいずれか
他のプロセッサに対し割込みを送信するよう使用可能に
される。選択される群は32演算プロセッサ22a,I/
O プロセッサ28a,又は多重装置構造と仮定して局所
SVS10のシステム装置又は遠隔システム装置内にある
コンソール・プロセッサ等で構成することができる。
【0085】割込メッセージ・サイクルは、LEN(3:
0)及びA(31:0)がそれぞれ群選択識別子及びプロ
セッサ選択マスクを指定する場合、それぞれLB ATYPE
=0及びGB ATYPE =0で表示する LPC32バス及びGB
24の特別アドレス・サイクルとして現われる。割込メ
ッセージ・サイクルはPBIF22c(図4,図5)の IPC
割込レジスタ22eに対して要求された値を書込んだ
後、送信割込レジスタ(SIR) に対し如何なる値をも書込
むことにより開始される。PBIF22cはUBIF-A 34a
の出力要求待ち行列42,44に割込メッセージ・サイ
クルを待機させるIR22eの現在値を使用して、 LPC3
2のバスに対し LPC割込サイクルを発生する。UBIF-A
34aはGB24に対応する IPC割込サイクルを後続して
発行する。
【0086】PBIF22c及びPBIF34aはそれぞれ LPC
バス32及び LPC ARB76に対し通常の読出要求を発行
して、IPC割込サイクルを発行する。 LEN(2:1)で
確認される局所 SVS10のシステム装置に対して予定さ
れた IPC割込サイクルは ACK/NAK初期接続手順を必要と
せず、GB24 TTL/ECLレジスタ34cに伝送された後に
待ち行列解除される。遠隔 SVS10のシステム装置に対
して予定された IPC割込サイクルは同一の ACK/NAK及び
再試行を使用し、正規なGB24プロセッサ22aの要求
サイクルとして放棄機構を使用する。
【0087】図17に例示するように、各UBIF34の I
PC論理34dはGB ATYPE =0で表示する割込メッセー
ジ・サイクルの発生のためサイクル単位基準でGB24の
アドレス・バスを監視する。サイクル検出論理34eは
有効な IPCサイクルを検出すると、プロセッサ選択論理
34fに対し、特定の4ビット群選択識別子と対応する
ハードウェア識別子HWID(4:3)とを比較させ、割込
みを受けるよう選ばれたか否かを確認する。もし、それ
が選ばれた場合、UBIF34はHWID(2:0)を使用し
て、その局所プロセッサに対応するプロセッサ選択マス
クの適当な4ビット・フィールドを選択し、選択された
局所プロセッサの各々に対して1クロック・サイクルの
割込信号を発行する。
【0088】次に、割込選択機構の概要について説明す
る。GSI(3)の状態は演算プロセッサ22aか、又は I
/Oプロセッサ28aを選択する。このフィールドはHWID
(5)と比較される。GSI(2:1)は宛先 SVS10のシ
ステム装置を選択する。又、このフィールドはHWID
(7:6)と比較される。HWID(4:2)はプロセッサ
選択マスク・フィールド内の8個の4ビット・フィール
ドの1つの選択に使用される。 IPCINTR(3:0)は、
各々がプロセッサ22a又は28aの関係する方の割込
入力に接続される選択プロセッサ割込信号である。
【0089】PBIF22cは割込信号 LPC IPCINTR(i)を
使用して、プロセッサが割込みのために使用可能な場
合、プロセッサに割込みを起こさせるプロセッサ割込み
レジスタに内部 IPC割込ビットを設定する。割込みが実
行された後、割込まれたプロセッサにより遂行されたソ
フトウェアは割込解除レジスタ(図5の CIR92c)の
対応するビットに“1”を書込むことによって、 IPC割
込ビットをリセットする。
【0090】I/Oプロセッサ・カードの支援 図18は SVS10の I/Oプロセッサ・カード28のブロ
ック図である。 I/Oプロセッサ・カード28は、プロセ
ッサ・カード22のノードの1つと同一のプロセッサ・
ノード P0と、各々が100MB/秒両方向チャンネルを
実施する2つのHIPPIトランスミッタ28c及び2つの
HIPPIレシーバ28bとを含む。セクション28cは2
つのHIPPIトランスミッタを含むが HPRセクション28
bは2つの HIPPIレシーバ・チャンネルを含む。 HPT2
8c及び HPR28d内の2つのチャンネルは2つの10
0MB/秒通信チャンネルを提供する。 I/Oプロセッサ・
カードのオペレーションはアール・ピアソンにより出願
され本願と同一人に譲渡された米国特許出願“高性能 I
/Oプロセッサ”(整理番号YO991−097)に記載
されている。
【0091】プロセッサ・カード22と同様、 I/Oプロ
セッサ・カード28のUBIF34はGB24に対する共用イ
ンターフェースを構成する。UBIF34が提供する機能は
プロセッサ・ノード28aと HIPPIインターフェース2
8c及び28dとの間における局所 LPC32サイクルに
対する支援を加えたほかは上記と同一である。 LPC L/-G
(3:0)制御線を使用して、局所プロセッサ・ノード
28aは、GB24サイクル中にUBIF34が要求を緩衝記
憶し、GB24の必要な初期接続手順のためのGB24サイ
クルを実行するよう LPCバス32に要求することができ
る。
【0092】プロセッサ・ノード28aは、又UBIF34
が LPC32のバスに対して調停制御を与えるような LPC
32サイクルを実行するよう局所 LPCバスに要求する。
かくして、局所サイクルは局所プロセッサ・ノード(P
0)によって発行され、 HIPPIインターフェース28
b,28cによって受理され、又は拒絶される。 HIPPI
インターフェース28b,28cは、又局所プロセッサ
読出要求に応答して読出したデータを返送するよう LPC
バス32に要求することができる。大域バス要求と局所
バス要求間の差異は LPC RREQ又は LPC WREQサイクル
中における LPC L/-G(局所に対し1、大域に対して
0)の値である。
【0093】大域メモリー・カード26の支援 図8は大域メモリー・カード26に対して使用されたと
きのUBIF-A 34aの構成を示す。又、図25,図2
7,図29,図31,及び図32に示すブロック図を参
照する。図19は SVS10の大域メモリー・カード26
のブロック図を示す。大域メモリー・カード26は、各
々がそれぞれ32MB又は64MBの動的ランダム・アクセ
ス・メモリー(DRAM)+8MB又は16MBの ECCメモリーの
アレイ26bを有する4個の個々のメモリー・バンク
( B0− B3)を含む。
【0094】各メモリー・バンクはメモリー・アレイ2
6bと、メモリー制御装置26cと、共通大域メモリー
・カード(GMC) バス26aに対するインターフェース2
6dとを含む。4バンクはすべてGB24に取付けられる
共通のUBIF34を共用する。
【0095】SVS10の大域メモリー26を支援するよ
うUBIF34に与えられた追加の特徴はメモリー・バンク
・スケジューリング,アドレス・インターリービング,
メモリー・サイズ・オプション,誤り検出及び修正,及
び例外処理を含む。
【0096】UBIF34は大域メモリー・カード26に導
入された場合、下記機能を実行する。大域メモリー・バ
ンク・スケジューリング:UBIF34の入力セクションは
4メモリー・バンク( B0− B3) の高レベル・スケジ
ューリングに対して責任がある。すべての大域読出及び
書込要求はメモリー・バンクの1つと共同する4つの8
階層待ち行列の各々を処理するための各対応するメモリ
ー・バンク待ち行列42,44,46において待機す
る。入力迂回路は、UBIF34が大域メモリー26で動作
する場合には使用されない。
【0097】UBIF-A 34aは大域メモリー・バンクを
順に配列するため、信号 GMC RDY(3:0)及び GMC
LDMAR(3:0)(付録C)を使用する。 GMC RDY(i)
は、大域メモリー・バンク(i) が新たな要求の受諾のた
めに使用可能であれば、UBIF-A34aに通知する。 GMC
LDMAR(i)は大域メモリー・バンクのオペレーションの
予定表作成のため、UBIF-A 34aから発生する。メモ
リー・バンク( B0−B3)は GMC WREQ(3:0)及
び GMC PGNT(3:0)を使用して、読出されたデータ
を返送するよう大域メモリー・カード・バス26aのデ
ータ・バスを調停する。
【0098】ECCの発生/修正:UBIF-D 34bモジュ
ールは、大域メモリー26に書込まれる各32ビット・
データ・スライスに対し、 P/ECC70を使用して8ビッ
ト ECCコードを発生する。8ビット ECCは後続する読出
オペレーションにおいて誤り検出/チェックを行うた
め、データと共に記憶される。読出オペレーションを通
して供給された8ビット ECCは EDC68と共に単一ビッ
ト誤りを修正し、供給されたメモリー・データの二重ビ
ット誤りの検出に使用される。UBIF34はこの ECC状況
情報( ECCERR及びERRTYPE )を返送データと共にGB24
に供給する。
【0099】大域バス・アドレス再マッピング(AMAP 5
7):UBIF34のこの機能は、MCARD(3:0)及びメモ
リー・インターリーブ因数ISEL(3:0)によって指定
され、システムに導入された多数の大域メモリー・カー
ド26に基づき与えられた大域メモリー・アドレスの再
組織を含む。UBIF34は、A(9:0)列アドレス(CAS)
を指定し、A(19:10)が行アドレス(RAS)を指定す
る場合における大域メモリー・バンクに対する24ビッ
ト“フラット”(flat)アドレスを発生する。4M ビット
DRAM装置を使用したとき、A(21:20)はランク(RAN
K)及び側回路(side)を選択し、A(23:22)は使用さ
れない。16M ビットDRAM装置(10CAS 線,12RAS
線)を使用したとき、A(21:20)は12ビット行ア
ドレスの一部であり、A(23:22)はランク及び側回
路を選択する。
【0100】本発明の一面による大域メモリー26に対
する部分書込は減結合された読出−変更−書込サイクル
の実行により行われる。部分書込サイクルを示すGM24
RMW信号をUBIF34が受信したとき、UBIF34は大域メ
モリー26に対する読出−変更−書込サイクルを実行す
る。UBIF34は最初読出サイクルを発行し、与えられた
バイト使用可能信号を使用して、GB24のデータとDRAM
データとを組合わせ、ECCを再計算し、選ばれたメモリ
ー・バンクに対しそのデータを書戻す。メモリー・デー
タに修正不能 ECC誤りを検出すると、バイト使用可能信
号は使用禁止され、UBIF-D 34bモジュールは後に読
出されたときに修正不能ECC誤りとして検出されるよう
全“1”にした ECCを書戻す。
【0101】ACK/NAK 応答:MCARD(3:0)及びISEL
(2:0)の値と供給されたGB24のアドレスとにより
決定された有効なカード・アドレスが与えられたUBIF3
4の入力セクションは宛先大域メモリー26バンクの入
力待ち行列46の状態に基づき、ACK か又はNAK のどち
らかを発生する。
【0102】アドレス及びデータ・パリティ誤りの検
出:UBIF34は、有効な読出又は書込要求を入力したと
きは常に受信した大域アドレスA(31:0)及びデータ
D(255:0)の有効性をチェックする。ECL/TTLレジ
スタ付トランシーバ34cから入力があると、UBIF34
は与えられたアドレス/データのパリティをチェックし
て、それを供給されたパリティと比較する。UBIF-A 3
4aは入力待ち行列入力レジスタIFIR56aに、そのア
ドレスをクロックインした次のクロック・サイクルにお
いて、GBAPERR により不良アドレス・パリティを報告す
る。
【0103】この行は外部に記録され、共用GB APERR
信号を送信し、誤り報告のためコンソール14によって
監視される。大域メモリー26の書込みのため、各UBIF
-D34bは共同する32ビット・データ・スライスのパ
リティを計算し、供給されたパリティと比較する。各UB
IF-D 34bはIFIR56bにデータをクロックインした
次のクロック・サイクルでGBDPERR により不良データ・
パリティを報告し、不良データ・パリティ表示は1サイ
クル後にGB DPERR としてGB24に伝送される。
【0104】次−近演算:次−近(next-near) GMC NE
NE(3:0)は大域メモリー26のバンクに送られた最
後のアドレスを入力待ち行列の次−近レジスタ(IFNR)8
0に保管することによって発生する。入力待ち行列/待
ち行列解除ポインタは、NENE信号に対して大域メモリー
26のタイミングを合致させるため、LDMAR を発行した
後に自動的に増分される。
【0105】読出ロック/書込アンロック処理:メモリ
ー・モード0で動作しているときに読出ロック・サイク
ルが発生すると、宛先大域メモリー・バンクに正規の読
出サイクルを実行させる。そこで、UBIF34は、対応す
る書込アンロック・サイクルを受信するまで影響するメ
モリー場所(32バイト幅)をロックする。IFIR56に
おいて読出ロックを受取ると、入力段制御装置は読出ロ
ック・アドレス及びプロセッサ識別子(PID) をロック・
アドレス・レジスタLAR 82に保管する。
【0106】アドレスが合致したとき、単一ワード R/W
要求とブロック読出要求とは現在のLAR 及び NAK応答に
対しチェックされる。LAR 82に保管されたPID と与え
られたPID とが合致することが確認されたとき、活動状
態の読出ロック・サイクルを発行したプロセッサと同一
プロセッサからの R/W要求のみが受諾される。
【0107】メモリー・モード0において、読出ロック
/書込アンロック・サイクルは上記のように動作する。
しかし、読出ロック・サイクルは、メモリー・モード1
で動作するときには、要求されたデータを戻し、又指定
したメモリー・アドレスに全“1”(256ビット)を
書戻す。書込アンロック・サイクルはメモリー・モード
1においては、正規の書込サイクルとして機能する。
【0108】大域バス・アドレス・マップ 下記表1は SVS10の大域アドレス・マップを例示す
る。大域アドレス空間は4GW (ギガワード) ×32バイ
ト/ワードとして組織された128GB(ギガバイト)で
ある。すべての大域アドレスは32バイト境界で位置合
わせされる。GB24に256ビット幅のデータ・ワード
を構成する8個の32ビット・ワードのいずれかがGB
RMW で示す有効データを部分的に含む場合は、常にバイ
ト使用可能信号を使用して、大域メモリー26に対する
部分書込みを支援する。
【0109】
【0110】以上説明したUBIF34の実施は大域アドレ
ス範囲を32GBに限定するが、SVS10のGB34のアド
レス・バスは128GBを支援する。UBIF34の支援する
アドレス空間は4つの8GB領域に分割される。第1の領
域(すなわち、0乃至8GBはSVS10の大域メモリー・
カード26を含むが、残りの3領域は遠隔 SVS10のシ
ステム装置に対するアクセスを許容する。これら8GBマ
ッピング・ウインドウの各々は遠隔 SVS10のシステム
装置における対応する大域メモリー26のカードに対す
るアクセスを可能にする。
【0111】各 SVS10のバックプレンは、各々が25
6MB(4 MビットDRAMによる) 又は1GB(16 Mビット
DRAMによる)を含む4メモリー・カードまでを含む。ア
ドレス復号のため、UBIF34は各大域メモリー・カード
26が合計2つのギガバイト(GBYTES)DRAMを含むものと
仮定する。3つのメモリー・カード26を有するシステ
ムに対し、2つの異なるインターリーブ因数がある。最
初の2つのカードはGBアドレスの底部4範囲に亘り8方
法でインターリーブされるが、第3のカードは4−8GB
アドレス範囲に存在し、自己の4メモリー・バンクに亘
りインターリーブされる。
【0112】大域バス・アドレス・リマッピング 大域メモリー・カード26に対する入力アドレスはMCAR
D(3:0)により指定された大域メモリー・カード26
の数と、ISEL(2:0)により指定されたインターリー
ブ因数とに基づきリマップされる。MCARD(3:0)は各
大域メモリー・カード26の存在又は不存在を示すUBIF
-A 34aの4つのバス通過オープン・コレクタ両方向
信号である。
【0113】各 MCARD信号は各バックプレン・メモリー
・カード・スロットに個有である。各大域メモリー・カ
ード26は、カードがどのスロットに導入されているか
により決定される個々の MCARD線を駆動する。MCARD
(3:0)の値を監視することにより、カード対カード
・インターリーブ・モードを決定するため、大域メモリ
ー・カード26の合計数を決定する。UBIF-A 34a
は、又CARDID(3:0)を監視してアドレス範囲を決定
する。CARDID(3:0)からMCARD(3:0)へのマッピ
ングを下記表2に例示する。
【0114】
【0115】下記表3及び表4はUBIF-A 34aによっ
て支援され、1乃至4メモリー・カード及び種々インタ
ーリーブ因数が与えられたアドレス・マッピング因数を
例示する。N-CARDS は導入されたメモリー・カードの数
を示す。
【0116】
【表3】
【0117】
【0118】アドレス・インターリービング・オプショ
UBIF-A 34aのアドレス復号論理はUBIF-A 34aモ
ジュールISEL(1:0)の2ビット・モジュール選択に
よって指定された種々メモリー・バンク・インターリー
ブ因数を支援する。ISEL(1:0)=00,01,1
0,11は、1,2,又は3大域メモリー26カードが
導入された場合、それぞれ2,8,32及び128(2
56ビット)ワードのインターリーブ因数を選択する。
4大域メモリー26カードを導入すると、支援されるイ
ンターリーブ因数は2,8,及び32ワードである。
【0119】メモリー・バンク・サイズの選択 各 SVS10の大域メモリー26カードは4個の独立した
メモリー・バンクを含む。2ビット・サイズ選択MSIZE
(1:1)はメモリー・バンクのサイズを選択し、大域
メモリー26バンクに直接供給されて RAS/CASの復号を
制御する。MSIZE(1:0)はUBIF34によって無視され
る。
【0120】UBIF34入力セクション 前述の如く、UBIF34の入力セクションは4つの大域メ
モリー・バンクの各々に対して8つの入力要求待ち行列
46を供給する。すべての大域メモリー26の要求は処
理のためにUBIF34の入力待ち行列46を通過して、メ
モリー・モードでUBIF34が開かれたときには入力迂回
路は使用されない。大域メモリー26の各バンクに対す
る要求は、同一メモリー・バンク又は異なるメモリー・
バンクに対するバック対バックGB24サイクルで到着す
るかもしれないGB24からの受信順序で待機する。
【0121】UBIF34は、対応する入力待ち行列46が
全部使用ではなく、要求アドレスにおける読出ロック・
オペレーションが保留でない限り、特定のメモリー・バ
ンクに対して予定された要求の受諾を続行する。UBIF3
4は、大域メモリー26の要求を受諾するときに ACKを
発生し、要求の拒絶に対して NAKを発生することによ
り、オペレーションの再試行を要求機能に通知する。
【0122】UBIF-A 34aは4大域メモリー26バン
クに対する要求をタスク指名するため4方法ラウンドロ
ビン調停方式を使用する。UBIF-A 34aは、又前に供
給された要求のアドレスと共に共通の行(ROW)アドレス
を有する後続要求を発生したときは常に対応する GMC
NENE(i) 信号により各大域メモリー26バンクに通知す
る。これは、メモリー・バンクが RASサイクルを要求さ
れず、共同する RASのプリチャージ時間をかけずに、少
い周期数で大域メモリー26バンクが後続メモリー・サ
イクルを実行可能にする最適化機能である。
【0123】RMWフラグ表示された大域メモリー26書
込要求によって示された読出−変更−書込サイクルに対
し、UBIF34は最初、表示したメモリー・バンクに対し
て読出要求を発行する。返送されたメモリー・データは
単一ビット誤りを修正する後述の誤り検出/修正論理装
置を通る。修正されたデータは、信号線68a及び MUX
64aを介し、供給されたバイト使用可能信号によって
指定された供給書込データと組合わされ、新たに演算し
た ECCと共に大域メモリー26バンクに書戻される。戻
されたメモリー・データに2重ビット誤りがある場合、
特定のメモリー場所が読出されたときには常に無修正 E
CC誤りを示す演算後の ECCとして、全1のパターンが供
給される。
【0124】UBIF34出力セクション UBIF34の出力セクションは大域メモリー26の応答デ
ータ用出力待ち行列44,迂回路,及び誤り/修正論理
装置68を提供する。大域メモリー26バンクはGB24
にメモリー応答サイクルを要求するため、 GMC MREQ
(3:0)を使用する。UBIF-A 34aは4状態ラウン
ドロビン調停方式に従い、 GMC MGNT(i)を発行して GM
C MREQ(i) に応答する。すべての出力待ち行列44が
空であり、GMC MREQ(i) が発行されると、UBIF-A 3
4aは出力迂回路を使用して、データ・パリティ及び供
給されたMID(7:0),MTAG(7:0),及び ECC誤り
状況と共に、応答データを TTL/ECLトランシーバ34c
に渡す。UBIF-A 34aは、又GB24へのアクセスを得
るためのGB MGNTとして示すGB24調停機能に対してGB
MREQを発行する。
【0125】GB24の競合がないものと仮定すると、UB
IF34は出力迂回路を使用してGB24を介しメモリー応
答データの返送を継続する。しかし、GB24の通信量が
増加すると、UBIF34は大域メモリー26の応答要求に
遅れないための十分な速度でデータを返送することがで
きないかもしれない。UBIF34が迂回路を通してメモリ
ー応答要求を予定することができない場合、応答を緩衝
記憶するために出力待ち行列44を使用する。
【0126】この動作モードに入った後、UBIF34はも
う一度迂回路を使用する前に、出力待ち行列44に保留
されているすべての応答について反復する。4方法ラウ
ンドロビン調停方式は出力待ち行列44の保留応答の処
理に使用される。UBIF34は、対応する出力待ち行列4
4に応答データを緩衝記憶するに十分な場所がある限
り、大域メモリー26バンクに対して GMC MGNTを発行
し続ける。この機構は出力待ち行列44のオーバランを
防止する自動フロー制御を提供する。
【0127】読出応答サイクルが肯定応答表示を要求し
ないことを条件とし、要求するUBIF34は全読出要求を
受入れるために十分な場所をその入力待ち行列46に有
するものと仮定するので、大域メモリー26の応答はUB
IF34の最大帯域幅、又は読出データの返信のため40
MHz オペレーションと仮定して640MB/秒を使用する
ことができる。
【0128】典型的な大域メモリー読出/書込タイミン
グ順次 図20はGB24に関するGM26の読出オペレーションに
対する典型的なタイミング順次を例示する。GM26の読
出要求はサイクル1を通してGB24に現われ、GM26に
よって受諾される(ACKed)。要求はサイクル3を通し適
当な入力待ち行列において待機され、サイクル5及び6
を通して GMC ABUS及び GMC LDMAR の表示で GMCバス
26aに現われる。この例において、対応するGM26の
バンクに対する入力待ち行列は空であり、UBIF34は如
何なる他のメモリー・バンク・オペレーションをも要求
されないものと仮定する。
【0129】更に、又GM26バンクは、要求受諾のた
め、サイクル4を通して有効な GMC RDY(i)で示されるよ
うに作動可能であること、及びメモリー再生サイクルが
メモリー・バンクにおいて保留されていないものと仮定
する。故に、GM26バンクは与えられたメモリー読出オ
ペレーションを実行し、 GMC MREQ(i) を主張すること
により、読出データを返送するよう GMCデータ・バスに
要求する。返送されたデータは GMC MGNT(i)(サイクル
12,13)中、 GMCデータ・バスに現われ、サイクル
13の終端においてUBIF-D 34bのOFBR54にラッチ
される。OFBR54は、4出力待ち行列44が空であり、
外部 TTL/ECLレジスタ34cに応答データが保留されて
いないことの推定に使用される。
【0130】メモリー応答データはサイクル14中UBIF
-D 34bモジュールによって修正され(必要に応
じ)、サイクル14の終端において、誤り検出及び修正
(ECCERR及びECCTYPE で示される)の結果及び演算され
たデータ・パリティと共に、外部の TTL/ECLレジスタ3
4cにラッチされる。GM26の読出応答サイクルは、サ
イクル15中、GM MREQに応答してGB調停機能36が即
時GBデータ・バス・メモリー許可(GB MGNT)を発行し
たものと仮定して供給されたPID(7:0)に反映するMI
D(7:0)を伴いGB24に現われる。
【0131】図21は各異なるメモリー・バンクに予定
された単一のGM26カードに到達した4つの大域メモリ
ー読出要求を例示する。すなわち、サイクル1,3,
5,6の要求はそれぞれメモリー・バンク0,1,2,
3に予定される。最初の3要求は1つおきにGB24サイ
クルにおいて空間で示され、第4の要求は第3の要求の
直後に現われる。これは、要求がUBIF34により肯定応
答されない(NAKed) ときに、対応する入力待ち行列が全
部使用でない限り、単一のGM26カードはバック対バッ
ク大域メモリー要求を受諾するということを例示する。
【0132】そのタイミング図に見られるように、すべ
て4要求は受諾され(ACKed) 、供給された大域アドレ
ス,インターリーブ因数,及び導入された大域メモリー
・カードの数によって決定されたそれらに対応する入力
待ち行列で待機する。そこで、これら待ち行列は入力待
ち行列出力制御ラウンドロビン調停方式によって決定さ
れるような連続サイクルで GMCバス26aに現われる。
GM26の再生サイクルは保留していないものと仮定する
と、GM26のカードの各々は示されたメモリー読出オペ
レーションを実行し、読出データ返送のためにGMデータ
・バスを要求する。
【0133】かくして、メモリー・バンク0,1,2,
3はそれぞれサイクル11,13,15,及び17にお
いて GMCバス26aを要求し、UBIF34の GMCデータ・
バス調停機能によりサイクル12,14,16及び18
において、 GMCデータ・バスが許される。更に、4出力
待ち行列すべてが空であり、又GB24バス調停機能36
はGM26のカードに対し直ちにGBデータ・バスの許諾を
発行するものと仮定すると、4読出応答サイクルすべて
はOBFR54を通して流れ、誤り検出及び修正がデータ・
パリティの計算と共に実行された場合、640MB/秒の
最高応答データ速度においてGB24データ・バスに現わ
れる。かくして、もう一方のGM26も又、代りのGB24
データ・バス・サイクルを通して読出応答データを返送
することができ、それによってGB24の1.28GB/秒
合計帯域幅を達成することができる。
【0134】図22は単一のGM26バンクに予定された
4つのGM26書込サイクルを例示する。前例と同様、GB
24の要求は単一バンク又は異なるバンクに要求するこ
とを例示するよう空間で示され、対応するUBIF34入力
待ち行列に要求を緩衝記憶するべき場所がある限り、
1.28GB/秒の最高GB24データ・バス帯域幅で受諾
される。
【0135】本例において、対応する入力待ち行列はタ
イミング順次の開始において空であるものと仮定する。
かくして、4GM26書込要求すべては受諾される(ACKe
d) 。最初の書込要求はサイクル5において GMCバス2
6aに現われ(アドレスはサイクル5,6中に、データ
はサイクル6,7中に)、GM26バンクを GMC−RDY(i)
(サイクル6で無効にされる)で示される使用中状態に
する。そこで、GM26のバンクはサイクル11におい
て、次の要求を受諾するよう作動可能であることを示す
GMC−RDY(i)を発生し、サイクル13において、UBIF3
4に後続する書込要求を発行させる。
【0136】しかし、この場合、書込要求1,2,及び
3は、 GMC NENE(1)によって示された大域メモリー
・バンクの同じ行(ROW) アドレスに予定され、大域メモ
リー・バンクから、5サイクルではなく、書込サイクル
の開始から2サイクル以内にGMC RDY(i)を返送させる
ようにするということに注意する。又、UBIF34は、GM
C RDY(i)が GMC LDMAR(i)の後の単一クロック・サイ
クルにおいて無効にされるものと仮定して、第4クロッ
ク・サイクルごとに、与えられた大域メモリー・バンク
に対するサイクルを計画することができるということに
も注意するべきである。
【0137】図23は異なるGM26バンクにそれぞれ予
定されたGM RMW 活動状態によって示された4大域メモ
リー読出−変更−書込オペレーションを例示する。前例
の如く、例示目的のため、要求はGB24において空間と
され、又UBIF34の入力及び出力待ち行列はタイミング
順次の開始点では空であると仮定する。
【0138】前述の如く、読出−変更−書込オペレーシ
ョンは、GBデータ内のデータ・バイトの組合わせが、単
一GB24の書込サイクル・オペレーションを使用して更
新しうるとすれば、それはGM26に対する部分書込サイ
クルの実行に使用することができる。図32に示すよう
に、GM26において更新されるべきデータ・バイトは設
定されているそれらに対応するバイト使用可能ビットGB
BE(31:0)で示される。各々が32ビット・デー
タ路を有する与えられたUBIF34bに対し、4つの共同
するバイト使用可能信号( RMW BE[3:0])は RMW
MERGE MUX64に供給される。
【0139】UBIF34は最初GM26読出オペレーション
を実行することによって部分書込サイクルを実行し、選
択されたバイトを更新し、 ECCを再演算し、GM26バン
クに対して組合されたデータを書戻す。故に、この例に
おいては、UBIF34がバンク0( R0)に対し読出要求
を発行する場合、最初の読出−変更−書込サイクルはサ
イクル5において開始し、GM26バンクに表示の読出オ
ペレーションを実行させ、サイクル12及び13を通し
てUBIF34に対してデータを返送する。
【0140】UBIF34は、又サイクル7,9,11中、
それぞれGM26バンク1,2,3に対し読出要求を計画
する。UBIF34は、最初、供給されたGM26のデータを
取り出し、供給された読出データ及び ECCによって決定
されるすべて必要な誤り修正を実行することにより、UB
IF-D 34bモジュールの変更オペレーションを内部的
に実行する。これは対応する GMCデータ・バスの許諾の
直後のサイクル中に発生する。UBIF34は、又供給され
たバイト使用可能信号(BE)と共に、供給された書込待ち
行列をIF LDORで示される対応する入力待ち行列から読
出し、 RMW MERGE MUX64を通して組合せオペレーシ
ョンを実行する。
【0141】その結果、使用可能とされたバイトのみが
供給された書込データと交換される。新たな ECCが組合
されたデータに対して演算され、大域メモリー書込オペ
レーションがGM26のバンクに対する書戻しオペレーシ
ョンの実行のために了定される。UBIF-A 34aは RMW
SEL 信号を使用して行う8UBIF-D 34bと、組合せ
オペレーションを発生する要求と、GM26のメモリー・
バンクに対する組合されたデータの書戻しとを制御す
る。
【0142】次に、PBIF22cに関する読出−変更−書
込サイクル・オペレーションを説明する(図4及び図
5)。各PBIF22cは下記するように、制御及び状況レ
ジスタ(CSR) 80と、プログラマブル・タイマ/カウン
タと、共同するプロセッサ22a又は28aをリセット
すべき機能と、他の機能とを組込み構成される。
【0143】PBIF22cは制御/状況レジスタ(CSR) 状
態機械82と、局所メモリー状態機械84と、大域メモ
リー状態機械86とを含む複数の状態機械を含む。これ
ら3つの状態機械は取付けられたプロセッサ22a又は
28aの制御及びアドレス信号線に接続された入力を有
する。その上、大域メモリー状態機械86は DMA制御装
置88及びプロセッサ間通信(IPC) レジスタ22eから
受信する。
【0144】局所メモリー状態機械84はそこに対する
アクセスを制御する局所メモリー22bに接続されてい
る局所メモリー・アドレス及び制御信号線に信号を発生
する。大域メモリー状態機械86は局所プロセッサ・バ
ス32及びUBIF34を介して大域バス24に接続されて
いる大域メモリー・アドレス及び制御信号線に信号を発
生する。大域メモリー状態機械86は局所プロセッサ2
2a又は28aに応答し、又は DMA制御装置88又は I
PCレジスタ22eの動作に応答して大域メモリー・アド
レス及び制御信号を発生する。
【0145】DMA制御装置88は更に原始アドレス・レ
ジスタ88aと、宛先アドレス・レジスタ88bと、長
さ/ブロックサイズ・レジスタ88cとを含む。これら
レジスタは DMAオペレーションを制御するため、取付け
られたプロセッサ22a又は28aによってロードされ
る。原始アドレス・レジスタ88aは最初そこからデー
タを読出すメモリー・アドレスがロードされ、宛先アド
レス・レジスタ88bは最初そこにデータを記憶させる
アドレスがロードされ、長さ/ブロックサイズ・レジス
タ88cは最初 DMAオペレーション中に伝送されるべき
データ単位の数を表わす値がロードされる。
【0146】PBIF22cは、又タイマ/カウンタ・レジ
スタ90a及びタイム・スタンプ・レジスタ90bを含
む。更に、PBIF22cは1ブロックの割込関係レジスタ
を含む。これらのレジスタは入割込をラッチして、適当
にプロセッサ22aに割込む割込レジスタ92aを含
む。PBIF22cは更に割込マスク・レジスタ92bと、
消去割込レジスタ92cと、メモリー障害アドレス・レ
ジスタ92dとを含む。
【0147】再生レジスタ92は局所メモリー22bの
DRAMに対する再生タイミング・パラメータを制御する。
再生レジスタ94はシステム・クロックに供給される除
数が書込まれる。分割により生じたクロックは再生サイ
クルの周期的発生に使用される。再生要求は現在遂行の
メモリー・サイクルすべてが完了するまで待機する。そ
こで、保留されている再生要求はプロセッサ22aによ
って要求された如何なる新サイクルより高い優先権を有
する。局所メモリー22bの再生はプロセッサ22aが
他の範囲のメモリー(大域メモリー26のような)をア
クセスしている場合、妨害なしに行われる。
【0148】IPCレジスタ22eは前述の送信割込レジ
スタ96と共同する。直列診断制御装置98は前述のエ
イ・ガーシァほかによる本願と同一人に譲渡された米国
特許出願“多重プロセッサ・システム用直列診断インタ
ーフェース・バス”(整理番号YO991042)に記
載されている。
【0149】レジスタ88乃至96は、局所プロセッサ
がこれらレジスタに情報を記憶し、そこから情報を読出
すよう使用可能にしうるよう、データ・マルチプレクサ
100を通して局所プロセッサに対し、すべて両方向に
接続される。
【0150】図4から明らかなように、局所メモリー2
2bは8 Mバイトのバンクに区画され、メモリー・バン
クの各々と共同するパリティ・メモリー情報を記憶する
パリティ・メモリー・セクションを含む。1組の8レジ
スタ付トランシーバ22fは局所ノード64ビット・デ
ータ・バス23aに対して行われるメモリー・バンク及
びパリティ・メモリーの両方向インターフェースに使用
される。1組の8トランシーバ22gは局所ノード・デ
ータ・バス23aを大域メモリー・インターフェース2
2dの読出及び書込バッファに対して両方向の接続を行
う。
【0151】前述の如く、PBIF22cはトランシーバ及
びメモリーを除き、高性能マイクロプロセッサを高性能
多重プロセッサ・システムにインターフェースするため
に必要な論理のすべてを供給する。これらの機能は以下
で詳細に説明する。
【0152】大域メモリー・インターフェース 本実施例によるプロセッサ22aは、内部8KBデータ・
キャッシュと、256ビット幅のキャッシュ線を有する
4KB命令キャッシュと、64ビット幅である外部データ
・バスとを含む。内部キャッシュ線の幅は大域データ・
バス(DBUS24b)の幅と一致するが、プロセッサ22
aのデータ・バスの幅はDBUS24Dのそれより4の因数
だけ少い。2つの外部256ビット・レジスタ22dは
合致するデータ・バス幅を与え、又プロセッサ22aに
対する外部の単線レベル2のキャッシュ記憶を与える。
【0153】本発明の一面に従い、プロセッサ22aが
大域メモリー26の記憶場所に対し読出を発行した場
合、アドレスはPBIF22c内で復号され、UBIF34に対
する共同する要求信号(大域バス24を制御する)を発
生する。UBIF34によってバス・サイクルが許諾された
とき、PBIF22cはアドレスを必要な制御信号と共に L
PCバス32に駆動する。そして、PBIF22cは局所バス
32を監視し、戻されるべき大域メモリー26からのデ
ータを待つ。
【0154】局所バス32のデータ要求信号と共に読出
要求を作成したプロセッサと共同する固有のプロセッサ
IDフィールドはデータ返送状態を規定する。大域メモリ
ー26から識別されたプロセッサに対してデータを返送
する場合、PBIF22c は制御信号を発生して返送データ
を外部読出バッファ102にラッチして後、局所ノード
・データ・バス23aを介し、識別されたプロセッサ2
2aに対して適切なワード(64ビット)を返送可能に
する。
【0155】プロセッサ22aが256ビット読出バッ
ファ102にキャッシュ記憶される64ビット・ワード
に対する他の要求を伴う最初の要求を受けた場合、第2
の64ビット・ワードは読出バッファ102から、共用
バスのいずれのバス帯域幅(LPC32及びGB24)をも
利用することなく、最小の待ち時間でプロセッサ22a
に返送される。
【0156】連続ワードがプロセッサ22aにロードさ
れた場合、大域メモリー状態機械86はキャッシュ・リ
ロードの支援に対し最適となる。第1の大域メモリー2
6の読出しに対する初期待ち時間の経過後、すべての後
続ワードは2バス・サイクルで戻される。読出及び書込
レジスタ及び共同する比較器と共に、PBIF22c内で種
々のアドレス比較機能を実行する。読出及び書込アドレ
ス・レジスタは現在外部バッファ22dに記憶されてい
るワードのアドレスの記録を維持する。
【0157】読出バッファ102の内容は、プロセッサ
22aが現在キャッシュされていないワードを要求する
か、又は現在大域バス24に書込まれているキャッシュ
・ワードが検出された場合に無効となる。PBIF22cは
大域バス24の全バス・サイクルを監視して、現在共同
する読出バッファ102内にキャッシュ記憶されている
大域メモリー26の記憶場所に対して書込みが行われる
かどうかを決定する。その上、ある状態は読出バッファ
102を無効にする。
【0158】例えば、 N10 LOCK活動状態を伴うプロセ
ッサ22aからの読出しは読出バッファ102の現内容
を無効にし、データは代りにGM26から取出される。し
かし、この状態は CSR80ビットを介して使用禁止にさ
れるかもしれない。局所バス32の他の信号線(LPC−NO
CACHE)は、外部装置を使用可能にして、不キャッシュ可
能データを戻すよう信号する。又、プロセッサ22aが
現在読出しのためキャッシュ記憶されているものと同じ
アドレスに書込む場合、読出バッファ102は無効にさ
れる。
【0159】更に、読出バッファ102は、読出バッフ
ァ102に大域メモリー26からリロードすることな
く、同じキャッシュ記憶した256データの読出の後、
自動的にPBIF22cによって無効にされるかもしれな
い。この機能は CSR80のビットによって制御される。
読出バッファ102内に記憶されているデータはこれら
の機能の組合せにより、いずれも大域メモリー26内に
記憶されている複写と矛盾なく維持されることを保証す
る。
【0160】データが読出されたときに大域メモリー2
6が ECC誤りを検出したことを示すECC(誤りチェック及
び修正)誤り状態セットと共にデータが大域メモリー2
6から戻された場合、データはプロセッサ22aに返送
されるが、読出バッファ102にはキャッシュ記憶され
ず、PBIF22cによりプロセッサ22aに対して割込み
を発生する。
【0161】256ビット書込バッファ104も類似す
る方式で動作する。プロセッサ22a又は28aが大域
メモリー26の記憶場所にワードを書込む場合、それは
まず書込バッファ104にキャッシュ記憶される。次
に、プロセッサ22a又は28aが同一256ビット内
に書込む場合、いずれも書込バッファ104内に記憶す
る。書込バッファ104の回路はプロセッサ22aが発
生したバイト使用可能信号を記憶するレジスタ104a
を含み、緩衝記憶された書込使用可能信号を適切に更新
する。
【0162】現在書込バッファ104にキャッシュ記憶
されていない記憶場所にプロセッサ22aが書込む場
合、書込バッファ104及びバイト使用可能レジスタ1
04aの内容は、PBIF22cが発生する適当な制御信号
により大域メモリー26にフラッシュアウト(flush ou
t)( 又はフラッシュ)され、新たに書込まれるワードが
書込バッファ104の旧ワードと書換えられる。それに
加え、ソフトウェア制御可能モードは共同するプロセッ
サ22aにより32バイトすべてが書込まれた後、書込
バッファ104を使用可能にして、大域メモリー26に
書込ませる。
【0163】書込バッファ104は、又プロセッサ22
aが大域メモリー26に対してロック付書込みを発生し
た場合にもフラッシュされる。ロック付(又はロック)
書込みはプロセッサ22aが遂行できる特殊な形の書込
サイクルである。ロック付メモリー・サイクル中、ロッ
クを開始したプロセッサのみがロックしたデータの変更
を許される。これは、多くのプロセッサが同一データを
共用しようとするかもしれない場合、多重プロセッサ・
システムに整合性を保証する。
【0164】プロセッサ22aはそのサイクル中、特別
出力ピン(N10 LOCK) を使用可能にすることによりロック
付サイクルを示す。大域メモリー26にロック付書込み
が要求された場合、この状態を順序維持するため、最初
書込バッファ104の現内容をフラッシュして後、それ
を緩衝記憶せずにロック付ワードを書込む。このオペレ
ーションは前述のロック付読出しと類似である。
【0165】又、前述の如く、書込バッファ104に現
在緩衝記憶されている大域メモリー26のアドレスの読
出しがあると、それは読出要求が発行される前に、書込
バッファ104をフラッシュする。これは、書込バッフ
ァ104のデータの複写が大域メモリー26に含まれて
いるものより流量が多い場合、戻されるほとんどの流量
情報が要求プロセッサに戻されるということを保証す
る。
【0166】制御及び状態レジスタ(CSR) 80は読出バ
ッファ102及び書込バッファ104オペレーションに
対するモード設定を含み、PBIF22c内の多くの機能を
制御する。 CSR80は、読出/書込(R/W) のあるビット
と、読出のみ(R/O) であるビットと、書込のみ(W/O) で
ある他のビットとを含む32ビット・レジスタである。
本発明の理解に関係がある CSR80のこれらビットは後
に説明する。
【0167】(R/W)ビットは書込バッファ104の自動
フラッシュ・モードを使用可能にする。このビットが
“1”に設定されると、32バイトすべてが局所プロセ
ッサ22aによって書込まれたとき、PBIF22cの書込
バッファ104及びバイト使用可能バッファ104aは
大域メモリー26に対して自動的にフラッシュアウトす
ることが許される。0に消去された場合(省略時)、PB
IF22cの書込バッファ104は(イ)共同するプロセ
ッサの大域書込アドレスが活動状態の32バイト書込ブ
ロックの外にあるとき、(ロ)プロセッサ22aが活動
状態の32バイト書込ブロックに含まれているアドレス
に対して読出しを発行するとき、(ハ)プロセッサ22
aが大域メモリー26に対してロック(LOCK)付書込サイ
クルを発行するとき等においてのみフラッシュされる。
【0168】(R/W)ビットは読出バッファ102の自動
無効モードを使用可能にする。このビットを“1”に設
定した場合、256連続プロセッサ22aが同一の32
バイト大域メモリー26のアドレスに対して読出した
後、PBIF22cを使用可能にして無効にする。
【0169】(R/W)ビットは読出バッファ102を使用
可能にする。本ビットを“1”に設定した場合、本ビッ
トは32バイト大域アドレス境界に整列された32連続
バイトまでを保持するPBIF22c読出データ・バッファ
からの緩衝記憶付き読出しを使用可能にする。0に消去
された場合(省略時)PBIF22cは LPCバス及び大域バ
ス24の大域アドレス空間に対しすべてのプロセッサ2
2aの読出しを反映する。これは、すべてGM26からの
読出しであり、読出バッファ102に予め記憶されたデ
ータからの読出しではない。
【0170】(R/W)ビットは書込バッファ104を書込
可能にする。本ビットは“1”に設定した場合、プロセ
ッサ書込みを使用可能にして、32バイト大域アドレス
境界に整列された32連続バイトまでをそれを保持する
書込データ・バッファ104内に緩衝記憶する。0に消
去された場合、PBIF22cは書込バッファ104を介し
て LPCバス32及び大域バス24の大域アドレス空間に
対してすべてのプロセッサ22aの書込を反映する。
【0171】PBIF大域メモリー・インターフェース PBIF大域メモリー・インターフェースの動作は図6に示
すGM26状態機械86と、図22及び図23に例示する
GB24タイミング図とを参照して説明する。GM26に対
するデータ路の性能は上記のように、両方共 CSR80の
ビットを通して選択的に使用可能にされ、使用禁止され
うる256ビット読出バッファ102と、256ビット
書込バッファ104とを提供することによって改良され
た。
【0172】バッファ102,104はプロセッサ22
aと LPCバス32との間で突合せる帯域幅を有し、又書
込みに対する能力を通知し、パイプライン読出しの処理
能力を増加する。読出しの場合、読出バッファ102の
内容は下記状況の下に無効にされる。それら状況は、
(イ)現読出アドレスへのGB24の書込み(監視突合
せ)、(ロ)現読出アドレスへのGM26の書込要求、
(ハ)現読出アドレスとは異なるアドレスからの読出
し、(ニ)(LPCバス32に+NOCACHE で示す)揮発性読
出し、(ホ) PTBビットの設定を伴い(及び CSR80で
使用可能にされる)プロセッサ22aからの読出し、及
び(ヘ)同一32バイト・アドレスからの256読出し
の後の自動フラッシュ等である。
【0173】読出バッファ102は完了に失敗した読出
要求の結果(例えば、タイムアウト)か又は不良データ
を戻す読出要求の結果(例えば、GM26のパリティ又は
ECC誤り)としては設定されない。
【0174】書込バッファ104の内容は下記4状態の
1つに基づきGM26にフラッシュされる。すなわち、そ
れら4状態は、(イ) CSR80モード・ビットにより示
された性能に合致する、(ロ)現に書込バッファ104
にある如何なるデータでもフラッシュし、GM26に対す
るロック付書込みを実行するロック付書込要求の性能、
(ハ)現在書込バッファ104において活動状態にある
アドレスに対する読出し等である。この場合、書込バッ
ファ104は読出要求が発行される前にフラッシュされ
る。
【0175】ソフトウェア制御の下に設定することがで
きる2つの書込フラッシュ・モードがある。上記の CSR
80のビットが使用可能な場合、書込バッファ104が
有効データを含み、プロセッサ22aがGM26の異なる
アドレスに対して書込みを行うときは、常にオペレーシ
ョンに対する省略時モードは書込バッファ104の内容
をフラッシュする。第2のモードにおいて、書込バッフ
ァ104の内容は、256ビット・ワードの32ビット
すべてが書込まれたときはバイト使用可能で示されるよ
う常にフラッシュされる。GM26状態機械86のレジス
タは、GM26の書込みが発生するときは常にバイト使用
可能をラッチし、32ビットすべてが設定された場合、
状態機械86を変換させる信号-BYTES FULLを発生す
る。このレジスタは書込バッファ104の内容がフラッ
シュされたときは常にリセットされる。
【0176】GM26状態機械86は、又他の局所装置に
対する LPCバス32に対し要求を出すことを許す。この
場合、GM26のオペレーションは内部PBIF22cアドレ
ス・デコーダによるGM26アドレスの復号ではなく、IO
アドレスの復号によって開始する。
【0177】書込バッファ104がフラッシュされるた
びに、 LPCバス32に対する32バイト使用可能信号を
記憶するレジスタ104aの内容もまた消去される。レ
ジスタ104aは LPCバス32を駆動するためPBIF22
cの外に存在し、又PBIF22c内の“蔭”のレジスタと
しても存在する。
【0178】レジスタ104aの8ビット部はプロセッ
サ22aの書込サイクルの結果として個々にロードさ
れ、書込中プロセッサ発生のバイト使用可能信号の状態
を反映する。各書込バッファ104の1バイトに相当す
る記憶されたバイト使用可能信号は組合されて信号 LPC
RMW を発生する。この信号線は、バイト使用可能信号
のすべてが設定された場合、 LPCバス32のアドレスを
書込みに駆動して“ロー”(LOW) にする。
【0179】これは、ワード位置合わせされた32ビッ
ト・スライスのいずれに対しても、バイト使用可能すべ
てが設定されていないと、“ハイ”に駆動される。例え
ば、プロセッサ22aが64ビット・ワードを書込み、
8バイト使用可能のすべてが活動状態である場合、この
ワードがフラッシュされると、 LPC RMW は“ロー”で
ある。2つの64ビット・ワードが書込バッファ104
に書込まれ、16バイト使用可能のすべてが活動状態で
あると、これら2ワードも LPC RMW の“ロー”で書込
まれる。
【0180】第3のワードが書込バッファ104に書込
まれると、それはフラッシュされ、この第3の64ビッ
ト・ワード内の32ビット・ワードのいずれか1つが不
活動状態のバイト使用可能を有すると、書込バッファ1
04がフラッシュされたときに LPC RMW は“ハイ”に
留まる。 LPC RMW はバイト使用可能(GB BE[31:
0])と共に、GB RMW (図23)として大域バス24
に駆動される。これはGM26のデータの不注意な重ね書
きを防止する。
【0181】更に、図23に示すように、プロセッサ2
2aは読出−変更−書込オペレーションを実行するた
め、唯一の大域バス24アクセスを要求する。前述のよ
うに、メモリー・カード26のUBIF34はアドレスした
記憶場所を読出し、バイト使用可能信号に従ってデータ
を組合せ、組合せたデータをメモリー・バンクに書戻す
動作を実行する。
【0182】図6において、状態機械86は遊休状態
( S0)から開始する。GM26の書込みは、この書込み
をGB24に通知するよう信号する適当なアドレスの復号
と共に、局所メモリーの書込みと同一方法でプロセッサ
22aによって要求される。プロセッサ22aからのア
ドレスの状況に続くサイクルにおいて、状態 S1に入
り、“ロー”の作動可能(READY) がプロセッサ22aに
送信されてデータが書込まれたことを示す。
【0183】このサイクルの終端において、データは書
込バッファ104にラッチされ、バイト使用可能信号が
バッファ104にラッチされ、状態機械86は状態 S2
1に進む。読出バッファ102のアドレスも状態 S1に
おいてラッチされる。書込バッファ104のフラグは活
動状態に設定される。状態S21から状態 S22に入
る。 S1において作動可能(READY) が肯定された結果、
プロセッサ22aが S21においてアドレス・バス23
bにアドレス状況及び新アドレスを出力した場合、 S2
2の終端においてこの状態が検出され、読出アドレスの
合致があった場合( R MATCH)、状態機械86は S21
にループ・バックする。
【0184】この場合、作動可能信号(READY) がプロセ
ッサ22aに送信されると、他のデータ・ワードがラッ
チされる。これは S22の次に S21がくる条件付けで
ある。状態 S22の終端においてプロセッサ22aのLA
DSがない場合、及び書込フラッシュ状態が合致しなかっ
た場合、遊休状態( S0)に戻される。次に、書込フラ
ッシュ状態について説明する。
【0185】プロセッサ22aが他の書込要求を発行
し、この書込みは書込バッファ104に記憶されている
アドレスと同一の256ビット・ブロックにあるという
ことをW MATCH 信号が示した場合、状態機械86はS0
から S2へ入り、データ及びバイト使用可能信号がラッ
チされ、プロセッサ22aに対し作動可能信号(READY)
が戻されて、書込アドレスがラッチされる。GM26の如
何なる記憶場所に対する書込要求も、書込バッファ10
4の使用可能ビットが設定されなかったときでも、状態
S2において( S1ではなく)書込みを発生させる。 S
2の終端において、書込バッファ104が使用禁止され
るか、又は32バイト・データすべてが書込まれて S3
に分岐し、 LPCバス32の書込みを開始するかのいずれ
かでない場合、状態機械86は状態 S21に分岐する。
S21に分岐した場合、上述したものと同一の処理手順
に従う。
【0186】W MATCH を発生しないアドレスに対する
書込みが検出されたか、又は書込バッファ104の32
バイトすべてが記憶されたバイト使用可能信号で示すよ
うに書込まれたかのいずれかの場合、書込バッファ10
4の内容はGM26にフラッシュされる。この場合、状態
機械86は状態 S3に分岐し、 LPC書込要求が発行され
る。この状態の変換は現在書込バッファ104に記憶さ
れているアドレスに対する読出しの結果としても発生す
る。
【0187】S0から S3への変換か又は S7への変換
はこれらを介して S8へ行く優先権を有する。状態 S3
において、 LPCバス32のトランシーバに対する出力使
用可能信号は作動可能となり、LPCバス32の調停機能
からの許諾の発生により条件付けが行われる。 LPC調停
機能からの許諾(GRANT) 信号が肯定されると、アドレス
は LPCバス32に与えられ、このサイクルの終端におい
て、状態機械86は状態 S4に入る。
【0188】LPC ADDRが活動状態に駆動される度に、
及びその要求が N10 LOCKの活動状態によるプロセッサ
22aの要求の結果であると、 LPC LOCK線は活動状態
に駆動される。この目的は、 S0から S7変換により、
又は S6からS7変換により( PTB書込みではなく、ロ
ック付き書込みによって生じた場合においてのみ)、又
は書込バッファ104が使用禁止状態においてロック付
き書込みにより発生した S0から S2変換によるいずれ
かによって開始されたすべての書込みバッファ104の
フラッシュに対してロック・ビットを設定することであ
る。それに加えて、ロック・ビットはロック付き読出要
求によって設定される。これは S0からS8への変換を
発生させるため、データは S0から S19への変換で発
生したように、読出バッファ102からではなく、GM2
6から読出される。その上、データはロック付き読出し
のため、読出バッファ102によってキャッシュ記憶さ
れない。
【0189】4本の LPCバス32の長さ線( LPC LEN
(3:0))はアドレスと共に、すべて“正規”のGM2
6の要求に対し0に駆動される。 S4において、データ
・トランシーバに対する出力使用可能信号は活動状態で
あり、データは本サイクルでは LPCバス32に対して駆
動される。アドレスも又、1追加サイクル(2サイクル
活動状態期間)においてバスに駆動される。
【0190】このサイクルに続き、状態機械86は状態
S5に変換され、データが第2サイクルで LPCバス32
に使用可能とされた場合、書込バッファ104の有効フ
ラグは使用禁止される。状態機械86は S5に続く S6
において、ACK か NAKのどちらかを共同するUBIF34か
ら受信するまで待つ。
【0191】NAKを受信した場合、状態機械86は状態
S3へ分岐して戻り、次の書込要求を発行する。 ACKを
受信した場合、状態機械86は書込バッファ104のフ
ラッシュを発生した状態に従い、3状態の1つに分岐す
ることができる。本発明は以上説明した実施例に限定さ
れるものではなく、本発明の理念及び範囲に従い変化変
更可能なことは明らかである。
【0192】以下、付録A,B,Cにより本明細書で使
用する用語の定義を示す。付 録 A 大域アドレス・バス信号の定義 アドレス・バスはGB ACYCLE, GB ATYPE,GB A(31:
0),GB LEN(3:0),GB PID(7:0),GB PTAG
E(7:0),GB R/-W, GB LOCK, 及びGB RMW から成
る。このバスはマスタ(主)装置(例えば、プロセッサ
・カード)が使用して大域メモリー R/Wサイクルを開始
する。 SVS大域バスに対するアクセスは大域バス・マス
タ調停機能に対しGB RREQ又はGB WREQを発行し、GB
PGNTを受けることによって得られる。各アドレス・バス
・フィールドは下記で説明する。
【0193】GB ACYCLEは有効な大域バス・アドレス・
サイクルを認識する。本信号は大域アドレス・バスを有
効にするべく、現大域アドレス・バス・マスタによって
駆動される。スレーブ(従)装置はGB ACYCLEと共に R
/W要求を有効にする。
【0194】GB ATYPE は有効なアドレス・サイクル又
は IPC割込サイクルを指定する。GB ATYPE が1の場合、
アドレス・バスは有効な大域メモリー R/W要求を指定す
る。GB ATYPE が0の場合、アドレス・バスはIPC 割込
サイクルを指定し、大域バス従装置はGB LEN(3:0)
を群選択識別子GSI(3:0)と解釈し、GB A(31:
0)をプロセッサ選択マスクPSM(31:0) と解釈す
る。 IPC割込サイクルにおいて、GB R/-W,BG LOCK,
及びGB RMW は定義されず、GB AP(3:0)はGB A
(31:0)に対するパリティを指定する。GSM(2:
1)は宛先システムの装置を選択する。GSM(0)は計算
プロセッサか又は I/Oプロセッサを選択する。HWID
(4:2)はプロセッサ選択マスクによって指定された
8つの4ビット・フィールドの1つの選択に使用され
る。
【0195】GB A(31:0)は大域バス R/W要求サイ
クルにおいて、32バイト・ブロック・アドレスを指定
して、128GBの物理的アドレス範囲を与える。 IPC割
込サイクル中(GB ATYPE =0)、GB A(31:0)は
プロセッサ選択マスクを指定する。GB AP(3:0)は
アドレス・パリティ・バスである。GB AP(0)はGB
A(7:0)に対するパリティを与え、GB AP(1)はG
B A(15:8)に対するパリティを与える。奇数パリ
ティが使用される。
【0196】GB LEN(3:0)は大域バス読出要求サイ
クルにおいて、ブロックの長さを示す。典型的に、プロ
セッサは単一ワード読出要求サイクル(すなわち、GB
LEN(3:0)=0)を発行するが、ブロック読出サイ
クルは大域バス読出要求サイクル中零無し(ノンゼロ)
ブロック長を示すことによって支援される。対応するブ
ロック・アドレスは正しいオペレーションに対する有効
な開始ブロック・アドレスを示し、応答データは正規な
順序で返送される。ブロック長は2のべきで指定され、
GB LEN(3:0)=0,1,2,…,16はそれぞれ
1,2,4,…,216のブロック長を示す。 IPC割込サ
イクル中(GB ATYPE =0),GB LEN(3:0)は群選
択識別子を指定する。
【0197】GB PID(7:0)は大域バス R/W要求サイ
クルにおいて、要求プロセッサ識別子(PID) を示す。 P
IDは、読出要求サイクルにおいて、アドレス消費機能
(すなわち、大域メモリー・カード)に保管され、後に
宛先プロセッサを個有に識別するため、GB MID(7:
0)のような対応する応答データと共に返送される。PI
Dは、書込要求サイクルにおいて、大域メモリー・カー
ドにより使用されて、与えられたプロセッサにより減結
合読出ロック/書込アンロック・サイクルを完了し、他
のプロセッサによるロックされた大域メモリー記憶場所
に対する如何なるメモリー R/Wオペレーションの実行を
も防止することができる。
【0198】GB PTAG(7:0)はプロセッサにより複
数の未済読出要求の個有的なタグ付けに使用される。GB
PID(7:0)同様、GB PTAG(7:0)はアドレス消
費機能により保管され、後に対応する応答データと共に
GB MTAG(7:0)として返送される。異なるメモリー
・バンクに対する読出要求は任意な順序で戻すことがで
きるので、GB PTAG(7:0)は複数の未済読出要求を
発行する際、プロセッサによりデータを再組織するよう
使用される。GB R/-Wは有効な大域バス・アドレス・サ
イクルにおいて、読出サイクル(1)又は書込サイクル
(0)を指定する。
【0199】GB LOCKは現在の大域バス R/Wサイクルを
条件付けする。不活動状態のとき、それは正規の R/Wサ
イクルを示し、活動状態のとき、減結合原子 R/Wサイク
ルを示す。大域バス読出ロック・サイクルは、大域メモ
リー・モード0において、大域メモリーからデータを要
求し、後に続く書込アンロック・サイクルが読出ロック
・サイクルを発行したプロセッサと同一プロセッサによ
って実行されるまで影響した大域メモリー記憶場所をロ
ックする。
【0200】これは他の如何なるプロセッサもロックさ
れた大域メモリー記憶場所に対してメモリー R/Wオペレ
ーションを実行しないようそれを防止して、原子大域メ
モリー・オペレーション(例えば、テスト及びセット,
比較及びスワップ,フェッチ及び加算等)を支援する。
大域メモリー・モード1においては、読出ロック・サイ
クルは大域メモリーにおいて原子テスト及びセット・オ
ペレーションを発動する。大域メモリーは指定したアド
レスにおいてデータを戻し、全256ビット・ワードに
対し全1を書込む。
【0201】GB RMW は大域メモリー・バンクにおいて
読出−変更−書込オペレーションを実行する一部大域メ
モリー書込サイクルを識別する。 RMWは8個の32ビッ
ト・データ・スライスのいずれかが部分的に書込まれる
データを保有する場合は、常に活動状態である。
【0202】大域データ・バス信号の定義 本データ・バスはGB DCYCLE,GB D(255:0),GB
DP(31:0),GB BE(31:0),GB MID(7:
0),GB MTAG(7:0),GB ECCERR, 及びGB ERRT
YPE から成る。本バスは、マスタ装置により、又は従装
置(例えば、メモリー・カード)により、それぞれ書込
データの伝送、又は読出データの返送に使用される。デ
ータ・バスに対するアクセスは大域バス・マスタ仲介機
能に対してGB WREQを発行してGB PGNT(プロセッサ書
込オペレーション)を受信するか、大域バス従調停機能
に対してGB MREQを発行してGB MGNT(メモリー応答オ
ペレーション)を受信することによって得ることができ
る。マスタ装置は有効なGB PGNTを受信後1クロック・サ
イクルでデータを駆動するが、従装置はGB MGNTを受信
するとデータ・バスを駆動する。
【0203】GB DCYCLEは有効な大域バス・データ・サ
イクルを識別する。本信号は大域バス調停機能によって
駆動され、大域メモリー応答サイクルを有効にする。GB
D(255:0)はデータ・バスである。32データ・
バイトの各々はバイト使用可能信号GB BE(31:0)
で示される有効データを含むことができる。
【0204】GB DP(31:0)はデータ・パリティ・
バスである。GB DP(0)はGB D(7:0)に対する
パリティを供給し、GB DP(1)はGB D(15:8)に
対するパリティを供給する、等である。大域バス・デー
タ・バスを駆動するUBIFはパリティを計算し、受取った
UBIFは有効なパリティをチェックする。奇数パリティを
使用する。
【0205】GB BE(31:0)は個々のバイト使用可
能信号である。GB BE(0)活動状態はGB D(7:0)
の有効なデータを示し、GB BE(1)活動状態はGB D
(15:8)の有効なデータを示す、等々である。大域
メモリー書込オペレーションにおいて、GB BE(31:
0)はGB D(255:0)の32データ・バイトの各々を
有効にし、大域メモリー・カードにより、メモリー・ア
レイに対する書込みの条件付けに使用される。GB BE
(31:0)は、大域メモリー読出オペレーションは常
に256ビット幅のデータを返送するので、大域メモリ
ー応答サイクル中は常に有効である。
【0206】GB MID(7:0)は与えられたデータに対
する宛先プロセッサを示す大域メモリー応答オペレーシ
ョンを通し、返送されるプロセッサIDを搬送する。GB
MID(7:0)は対応する読出サイクルにおいて、GB PI
D (7:0)に供給された値を反映する。GB MID(7:
0)はプロセッサ書込サイクル中は不活動状態である。
【0207】GB MTAG(7:0)は大域メモリー応答オ
ペレーションにおいて返送されるプロセッサGB PTAG
(7:0)を搬送する。このフィールドは複数の未済読
出要求を発行しているとき、プロセッサによる大域メモ
リー応答データの再組織のため選択的に使用される。GB
MTAG(7:0)は対応する読出サイクルにおいて、GB
PTAG(7:0)に供給される値を反映する。GM MTAG
(7:0)はプロセッサ書込サイクル中不活動状態であ
る。
【0208】GB NOCACHE は返送データの緩衝記憶を禁
止する。これは、データが揮発性であり、緩衝記憶又は
キャッシュ記憶されるべきでないということを示して応
答データと共に従装置によって返送される。
【0209】GB ECCERR及びGB ERRTYPE は大域メモリ
ー読出オペレーションの結果を報告する。ERRTYPE が活
動状態の場合、それは修正される単一ビット誤りか、又
は修正不能二重ビット誤りを示す。大域メモリー・カー
ドUBIFは大域メモリー読出応答サイクル中に、GB ECCE
RR及びGB ERRTYPE を発生する。
【0210】大域制御バス信号の定義 (GB ACK ,GB NAK)は有効な大域バス R/W要求を受信
後、従UBIFによって戻される。(GB ACK ,GB NAK)は
従UBIFが大域バス R/W要求の受信に成功したことをマス
タUBIFに示し、(GB NAK ,GB ACK)は従装置が現在使
用中であり、与えられた R/W要求を受諾できないことを
示す。(GB ACK ,GB NAK)の活動状態はアドレス・バ
スA(31:0)に検出された不良パリティを同時に信号
する。マスタUBIFはNAK状態又はアドレス・パリティ誤
り表示を受信した後、要求に応答するべきである。
【0211】GB APERR は供給されたアドレス・パリテ
ィGB AP(3:0)と比較されたアドレス・バスGB A
(31:0)の不良パリティを報告する。データ・バス
を駆動するUBIFはパリティを発生し、受信UBIFは不良パ
リティをチェックし、報告する。GB APERR はコンソー
ル・プロセッサによって監視され、大域バス誤り状態の
報告に使用される。
【0212】GB DPERR は供給されたデータ・バス・パ
リティGB DP(31:0)に対して比較された使用可能
バイトに対するデータ・バスGB D(255:0)の不良
パリティを報告する。データ・バスを駆動するUBIFはパ
リティを発生し、受信UBIFは不良パリティをチェック
し、報告する。GB DPERR はコンソール・プロセッサに
よって監視され、大域バス誤り状態の報告に使用され
る。
【0213】GB BUSERRは認識されない大域バス・アド
レス・サイクル(すなわち、GB ACK 又はGB NAK が返
送されない)の通知に使用される。GB BUSERRはコンソ
ール・プロセッサによって監視され、大域バス誤り状態
の報告に使用される。GB RESET は大域バスのマスタ・
リセット信号である。それはバス・クロックの立上り端
に対して同期され、電源オン又はコンソール・プロセッ
サからのソフトウェア制御の下に発生する。
【0214】大域バス・スロット特定信号の定義 下記信号は各バックプレンのスロットに対して個有的で
ある。GB RREQはプロセッサ・カード大域バス読出要求
線である。それはアドレス・バス、与えられたGB PGNT
に対してアクセスを与える。単一の大域バス・サイクル
の間、GB RREQは、対応するGB PGNTが戻されるまで、
主張され、保持されるべきである。PG RREQは、複数の
サイクルに対しては、最後のGB PGNTを受取るまで保持
されるべきである。
【0215】バスに競合がないものと仮定すると、調停
機能のタイミング要求に合致するため、GB RREQはクロ
ック・サイクルの相当早期に主張しなければならず、擬
似のGB PGNT受信防止のため、GB PGNTの後相当早期に
張解除しなければならない。又、不使用許諾は許可され
ない。
【0216】GB WREQはプロセッサ・カード大域バス書
込要求線である。それはアドレスに対するアクセスを提
供し、1サイクル後、データ・バス,与えられたGB PG
NTに対しアクセスを与える。
【0217】GB PGNTはプロセッサ・カード大域バス許
諾線である。これはすべての与えられた大域バス・サイ
クル中において、中央大域バス調停機能により単一プロ
セッサ・カードに返送される。それは現バス・サイクル
中大域バス・アドレス・バス・ドライバを使用可能に
し、1サイクル後、GB WREQに応答してGB PGNTが発行
されると、大域バス・データ・バス・ドライバを条件付
きで使用可能にするよう使用される。
【0218】GB MREQはメモリー・カード大域バス要求
線である。それはプロセッサ・カードに対し読出データ
を返送するデータ・バスに対してアクセスを与える。
【0219】GB MGNTはメモリー・カード大域バス要求
線である。これは、いずれの与えられた大域バス・サイ
クル中においても、大域バス調停機能により単一メモリ
ー・カードに返送される。それは現在のバス・サイクル
中、大域バス・データ・バス・ドライバの使用可能化に
使用される。
【0220】GB CARDID(3:0)は各バックプレン・
スロットを個有的に識別するスロット特定の4ビット識
別子である。この4ビット・フィールドは大域バス R/W
要求サイクル中GB PID(5:2)の発生に使用される。
【0221】GB UNITID(1:0)は多重システム構造
の各 SVSシステム装置を個有的に識別するバックプレン
特定の2ビット識別子である。この2ビット・フィール
ドは大域バス R/W要求サイクルにおいてGB PID(7:
6)の発生に使用される。
【0222】その他大域バス信号 GB MCARD(3:0)は大域メモリー・カードにより、シ
ステムの大域メモリー・カードの数の確認に使用される
バックプレン信号である。各メモリー・カードは、4メ
モリー・スロットのどれがそのGB CARDID(3:0)か
らのものかを確認し、そのスロットに対応するGB MCAR
D 線を駆動する。各メモリー・カードは、又GB MCARD
(3:0)を読出し、バックプレンのメモリー・カード
の完全構造を決定し、使用するべきインターリーブ因数
を決定する。
【0223】
【0224】付 録 B LPCアドレス・バス信号の定義 LPCアドレス・バスは LPC ACYCLE , LPC ATYPE, LPC A
(31:0), LPC LEN(3:0), LPC PID(1:0), LPC
PTAG(7:0), LPC RW, LPC LOCK,及び LPC RMW
から成る。本バスは4局所プロセッサによって共用さ
れ、大域メモリー R/Wサイクルの開始に使用される。 L
PCアドレス・バスに対するアクセスは LPCバス調停機能
に対する書込要求(LPC WREQ) か又は読出要求(LPC RR
EQ)の発行により、及びプロセッサ許諾(LPC PGNT) を
受けることによって得られる。以下、アドレス・バス・
フィールドについて説明する。
【0225】・ LPC ACYCLEは有効な LPCバス局所アド
レス・サイクルを条件とする。この線はUBIF LPCバス調
停機能により局所 LPCバス・アドレスを有効にするよう
駆動される。それは LPCアドレスを有効にするため、 I
/Oプロセッサ・カードの HIPPI I/Oインターフェースの
ような局所 LPCバス装置によって使用される。 LPC AC
YCLEはLPC ABUSサイクルの最初の半サイクル中1サイク
ル間有効であり、次に続くクロックの立上り端で有効な
LPCバス・アドレス・サイクルを抽出することができる
ことを示す。
【0226】・ LPC ATYPE は有効な LPCアドレス・バ
ス・サイクル又は IPC割込サイクルを指定する。 LPC
ATYPE =1の場合、 LPCアドレス・バスは有効な R/W要
求を指定し、 LPC ATYPE =0の場合、 LPCバスは IPC
割込サイクルを認識する。この場合、UBIFは LPC LEN
(3:1)を群選択識別子GSI(3:0)と解釈し、LPC
A(31:0)をプロセッサ選択マスクPSM(31:0) と
解釈する。 IPC割込サイクル中、 LPC RW, LPC LOC
K, 及び LPC RMW は規定されない。
【0227】・ LPC A(31:0)は LPC R/W要求サイ
クルにおいて、32バイト・ブロック・アドレスを指定
して、128GBの物理的アドレス範囲を供給する。 IPC
割込サイクル中(LPC ATYPE =0), LPC A(31:0)
はプロセッサ選択マスクを指定する。
【0228】・ LPC LEN(3:0)は LPC読出要求サイ
クルにおいて、ブロック長を示す。典型的に、プロセッ
サは単一ワード読出要求サイクル(すなわち、 LPC LE
N(3:0)=0)を発行する。しかし、ブロック読出サ
イクルは LPC読出要求サイクル中、零無し(又はノンゼ
ロ)ブロック長を示すことによって支援される。対応す
るブロック・アドレスは正しいオペレーションに対する
有効な開始ブロック・アドレスを示さなければならず、
応答データは適正な順序で返送される。ブロック長は2
のべきで指定され、 LPC LEN(3:0)=0,1,2,
…,16の場合、それぞれ1,2,4,…,216 (2++
16)のブロック長を示す。UBIFによって課される現在
の制限は局所装置当り8つの256ビット・ワード(又
は LPC LEN(3:0)=3)のブロック長である。 LPC
LEN(3:0)は IPC割込サイクル中(LPC ATYPE =
0)、プロセッサ群選択を指定する。
【0229】・ LPC PID(1:0)は LPC R/W要求サイ
クルにおいて、要求プロセッサの識別子(PID) を示す。
PIDは読出要求サイクルにおいて、アドレス消費機能
(すなわち、大域メモリー・カード)によって保管さ
れ、後に宛先プロセッサを唯一的に識別するため、対応
する応答データと共に LPC MID(1:0)として返送さ
れる。 PIDは書込要求サイクルにおいて、大域メモリー
・カードによって使用され、与えられたプロセッサによ
り減結合ロック付読出/ロック付書込サイクルを完了し
て、他のプロセッサによるロックされた大域メモリー・
バンクに対する如何なるメモリー R/Wオペレーションの
実行をも防止する。大域バス・プロセッサ識別子 LPC
PID(7:0)はプロセッサ及び IOPカードにおいて、GB
UNITID(1:0),GB CARDID(3:0)を連結する
ことによって、与えられた LPCバスLPN(1:0)と共に
構成される。
【0230】・ LPC PTAG(7:0)はプロセッサによ
り使用され、複数の未済読出要求に対し個別にタグ付け
する。 PIDのように、PTAGはアドレス消費機能によって
保管され、後に対応する応答データと共に LPC MTAG
(7:0)として戻される。異なるメモリー・バンクに
対する読出要求は任意な順序で返送することができるか
ら、PTAGは複数の未済読出要求を発行するときにプロセ
ッサにより選択的に使用されて、データを再組織する。
【0231】・ LPC RWは有効な LPC要求サイクルにお
いて、読出(1)又は書込(0)サイクルを指定する。 ・ LPC LOCKは現 LPC R/Wサイクルを条件付けする。そ
れは、不活動状態の場合、正規な R/Wサイクルを示し、
活動状態の場合、減結合原子 R/Wサイクルを示す。大域
メモリー・モード0において、読出ロック・サイクルは
大域メモリーからデータを要求し、読出ロック・サイク
ルを発行した同一プロセッサが後に書込アンロック・サ
イクルを実行するまで、選択された大域メモリー・アド
レスをロックする。これは他のプロセッサがロックされ
た大域メモリー・アドレスに対する如何なる R/Wオペレ
ーションの実行をも防止して、原子大域メモリー・オペ
レーション(例えば、テスト及びセット,比較及びスワ
ップ,フェッチ及び加算等)を支援する。大域メモリー
・モード1において、読出ロック・サイクルは大域メモ
リーで原子テスト及びセット・オペレーションを発生す
る。大域メモリーは指定したアドレスにおいてデータを
戻し、全256ビット・ワードに全1を書込む。
【0232】・ LPC RMW は大域メモリー・バンクにお
いて、読出−変更−書込オペレーションを要求する部分
的大域メモリー書込サイクルを識別する。 LPC RMW は
8つの32ビット・データ・スライスが部分的に書込デ
ータを含む場合常に活動状態である。
【0233】LPCデータ・バス信号の定義 本データ・バスは LPC DCYCLE , LPC D(255:
0), LPC BE(31:0), LPC MID(7:0), LPC
MTAG(7:0), LPC GBPERR , LPC ECCERR,及びLPC
ERRTYPE から成る。本バスはプロセッサにより使用さ
れ、書込データをUBIFに転送し、又はUBIFにより使用さ
れて、大域メモリー・データをプロセッサに返送する。
プロセッサは LPCバス・マスタ調停機能に対し LPC WR
EQを発行し、LPC PGNTを受信することによって LPCデ
ータ・バスに対するアクセスを得る。以下、各データ・
バス・フィールドについて説明する。
【0234】・ LPC DCYCLEは有効な LPCバス・データ
・サイクルの条件付けを行う。この線はUBIF LPCバス・
データ調停機能によって駆動され、 LPCバス応答サイク
ルを有効にする。データ消費機能は LPC DCYCLEにより
読出応答サイクルを有効にするべきであり、 LPC DCYC
LEはLPC DBUSサイクルの最初の半サイクルの1サイクル
期間有効である。
【0235】・ LPC D(255:0)はデータ・バスで
ある。32データ・バイトの各々はバイト使用可能信号
LPC BE(31:0)によって示される有効なデータを
含むかもしれない。
【0236】・ LPC BE(31:0)は個々のバイト使
用可能信号である。 LPC BE(0)の活動状態は LPC
D(7:0)上の有効データを示し、 LPC BE(1)活動
状態は LPC D(15:8)の有効データを示す等であ
る。書込オペレーション中、LPC BE(31:0)は LP
C D(255:0)の32データ・バイトの各々を有効
にする。 LPC BE(31:0)は、大域メモリー読出オ
ペレーションは常に256ビット・データを戻すので、
読出応答サイクル中に定義されない。
【0237】・ LPC MID(7:0)は与えられたデータ
に対する宛先プロセッサを示す大域メモリー応答オペレ
ーションにおいて、戻されたプロセッサIDを搬送する。
LPC MID(1:0)は対応する読出サイクルにおいて、 L
PC PID(1:0)に供給された値を反映する。 LPC MI
D(1:0)はプロセッサ書込サイクル中不活動状態であ
る。
【0238】・ LPC MTAG(7:0)は大域メモリー応
答オペレーションにおいて、戻されたプロセッサTAG を
搬送する。このフィールドは複数の未済読出要求を発行
するときに、大域メモリー応答データを再組織するべく
プロセッサによって選択的に使用される。LPC MTAG
(7:0)は対応する読出サイクルにおいて、 LPC PT
AG(7:0)に供給された値を反映する。LPC MTAG
+(7:0)はプロセッサ書込サイクル中不活動状態で
ある。
【0239】・ LPC NOCACHE は戻されたデータの緩衝
記憶を禁止する。これは、データは揮発性であり、緩衝
記憶又はキャッシュ記憶されるべきでないということを
示して、応答データと共にメモリー装置から返送され
る。UBIFは宛先プロセッサに対し、応答データと共に L
PC NOCACHE を戻す。これらの信号はプロセッサ書込サ
イクル中不活動状態である。
【0240】・ LPC ECCERR , LPC ERRTYPE は大域メ
モリー読出オペレーションの結果を報告する。 LPC ER
RTYPE が活動状態の場合、 LPC ERRTYPE は修正される
単一ビット誤り(0の場合)又は修正不能2重ビット誤
り(1の場合)を示す。これら信号はプロセッサ書込サ
イクルにおいては不活動状態である。
【0241】・ LPC GBPERRはメモリー読出応答サイク
ルにおいて、大域バス・データ線 LPC D(255:0)に
不良パリティが検出されたか否かを報告する。それは、
PBIFデータ応答サイクルに対するUBIF中でのみ有効であ
り、すべて他の場合には無効とすべきである。
【0242】LPC制御バス信号の定義 LPC制御バスは LPC ACK と LPC NAK とから成る。こ
れら共用信号は有効なLPCアドレスの肯定応答と、 LPC
バス要求が受諾されたか、拒絶されたかの表示に使用さ
れる。 LPC ACK 及び LPC NAK は、有効な LPCアドレ
ス・バス・サイクルが識別された LPCアドレスに対して
発行された後、2サイクルで戻される。UBIFは、常に、
プロセッサが大域メモリー R/W要求を発行したときに、
LPC RREQ又は LPC WREQを活動状態(すなわち、0)
のLPC LG表示で条件付けすることによって示される LP
C ACK を返送する。有効でない LPCアドレスは、プロ
セッサはその要求を放棄すべきであるということを暗示
する LPC ACK 及び LPC NAK の不存在によって示され
る。以下、各制御バス信号を説明する。
【0243】・ LPC ACK は、有効な IPCアドレスが肯
定応答されて、与えられた R/W要求が受諾されたという
ことを示してアドレス消費機能から返送される。UBIF
は、常に、大域アドレスが与えられたとき、共同する出
力待ち行列に大域バス要求を緩衝記憶するべき場所があ
る場合にのみ、UBIF局所バス調停機能が LPCバスを許諾
するよう LPC ACK を返送する。しかし、 I/Oプロセッ
サ・カードの局所装置は、アドレス認識不能のため、又
は与えられた要求を受諾できないどちらかの故に、 LPC
ACK を返送しないかもしれない。
【0244】・ LPC NAK はアドレス消費機能により返
送されて、有効な LPCアドレスを肯定応答するが、 R/W
要求を受諾しないということを通知する。要求機能は肯
定応答されなかった (NAK)サイクルを再試行するべきで
ある。
【0245】LPCバス調停機能信号の定義 LPCバス調停機能制御信号は LPC RREQ(3:0), LPC
WREQ(3:0), LPC LG(3:0),及び LPC RDY
(3:0)から成る。4局所プロセッサの各々は個有的
なこれら制御信号セットを持ち、プロセッサ(i) は LPC
RREQ(i), LPC WREQ(i), LPC LG(i) , 及び LPC RDY
(i)が与えられる。 LPC RREQ(i), LPC WREQ(i) 及び LP
C LG(i) は局所又は大域 R/W要求を発行するべく LPC
のアクセスを得るために使用され、 LPC RDY(i)はUBIF
-Dチップによって使用され、各局所プロセッサに対する
大域メモリー・ブロック読出データの返送を同調する。
以下、これら信号の詳細な説明、及び各調停機能の説明
を行う。
【0246】・ LPC RREQ(3:0)は個有的なプロセ
ッサ読出要求信号である。これらは LPCアドレス・バス
にアクセスして、局所又は大域読出要求の発行に使用さ
れる。 LPC LG(3:0)は、要求が局所装置(1)に
対して予定されているか、又は大域装置(0)に対して
要求されているか否かを表示する。 LPC RREQ(i) は L
PC CLOCK の立上り端で許諾されるべきであり、 LPC
PGNT(i) を受信するまで主張した状態に維持される。
【0247】・ LPC WREQ(3:0)は個有的なプロセ
ッサ書込要求信号である。これらは LPCアドレス・バス
及び LPCデータ・バス両方に対するアクセスを得て、局
所又は大域書込要求の発行に使用される。 LPC LG
(3:0)は、要求が局所装置(1)に対して予定され
ているか、又は大域装置(0)に対するものかを示す。
LPC WREQ(i) は LPC CLOCK の立上り端において発生
すべきであり、 LPC PGNT(i) が受信されるまで主張状態
を維持する。
【0248】・ LPC LG(3:0)は個有的なプロセッ
サ+局所/−大域選択信号である。これらは、現 LPC
RREQ(i) 又は LPC WREQ(i) が局所装置(1)又は大域
装置(0)に対して予定されているか否かの条件付けに
使用される。 LPC LG(i)のタイミングは LPC RREQ(i)
及び LPC WREQ(i) 共に同一である。
【0249】・ LPC PGNT(3:0)は個有的なプロセ
ッサ・バス許諾信号である。いずれか与えられた LPCバ
ス・サイクル中、1つの LPC PGNT(i) のみが LPCバス
調停機能によって発行される。 LPC PGNT(i) は LPC
RREQ(i) か又は LPC WREQ(i)を検出した1サイクル以
上後に戻され、2クロック・サイクル間活動状態に維持
される。 LPC PGNT(i) は与えられたプロセッサの LPC
アドレス・バス・ドライバを使用可能にするよう直接使
用される。 LPC WREQ(i) が発行された場合、プロセッ
サは LPC PGNT(i) を検出してから1サイクル後に LPC
データ・バスを駆動し始める。 LPCバス調停機能は、常
に、2サイクル後 LPC PGNT(i) を主張解除するが、対
応するプロセッサが LPC RREQ(i) 又は LPC WREQ(i)
に対する主張を維持する場合、1 サイクル後に、同じ L
PC PGNT(i) を主張することができる。かくして、いず
れの与えられたプロセッサも、ほとんど1つおきの LPC
バス・サイクルにおいて、 LPCバスが許諾される。
【0250】・ LPC RDY(3:0)は個々的なプロセッ
サ作動可能信号である。 LPC RDY(i)はUBIFに対し、プ
ロセッサが読出データの受入れのため作動可能であるこ
とを示す。これらは主にブロック読出サイクル中に使用
され、局所プロセッサか又は I/O装置(例えば、 I/Oプ
ロセッサ・カードの HIPPIトランスミッタ)が大域メモ
リー読出データを受信するときの速度の歩調を合わせ
る。
【0251】UBIFはバスの競合がなく、40MHz と仮定
すると、320MB/秒のピーク・データ速度で装置に対
しデータを返送する。局所プロセッサ又は I/O装置イン
ターフェースはデータ・ワードを受信したときに LPC
RDY(i)を除去することによってこれを減速することがで
きる。
【0252】割込メッセージ支援信号の定義 ・ LPC IPCINTR(3:0)は個有的な IPC割込信号であ
る。これらは、それが4局所プロセッサのいずれかを選
択する大域バスのIMSGサイクルを検出する度毎にUBIFか
ら発生する。UBIFは、プロセッサ割込レジスタに IPC割
込ビットを設定するべくPBIFチップによって使用される
1クロック・サイクル長の LPC IPCINTR(i)信号を発生す
る。UBIFはプロセッサ(i) を選択するバック対バックIM
SGサイクルとなるバック対バック LPC IPCINTR(i)信号
を発行することができる。
【0253】
【0254】付 録 C GMCアドレス・バス信号の定義 GMCアドレス・バスは GMC A(23:0), GMC LEN
(3:0), GMC PID(7:0), GMC PTAG(7:0), GM
C RW,及び GMC RMW から成る。本バスは4メモリー
・バンクにより共用され、UBIFによりメモリー R/Wサイ
クルの開始に使用される。以下、各アドレス・バス・フ
ィールドについて説明する。
【0255】・ GMC A(23:0)は32バイト・ブロ
ック・アドレスを指定する。最下位10ビット GMC A
(9:0)は列アドレス(CAS) を指定する。4 MビットD
RAMと仮定すると、 GMC A(19:10)は行アドレス
(RAS)を指定し、 GMC A(20)は側回線(1M 又は2M
SIMM)を選択する。16 MビットDRAMと仮定すると、
GMC A(21:10)は行アドレス(RAS) を指定し、 GM
C A(22)は側回線(1M 又は2M SIMM)を選択す
る。 GMC A(23)は16 MビットDRAMにおける将来の
ランク拡張のために留保される。
【0256】・ GMC LEN(3:0)は GMC読出要求サイ
クルにおけるブロック長を示す。典型的に、プロセッサ
は単一ワード読出要求サイクル(すなわち、 LEN=0)
を発行する。しかし、ブロック読出サイクルは GMC読出
要求サイクル中零無しブロック長を表示することによっ
て支援される。対応するブロック・アドレスは有効な開
始ブロック・アドレスを示す。ブロック長は、 LEN=
0,1,2,…,16がそれぞれ1,2,4,…,216
(12++16)のブロック長を示すように、2のべきで
指定する。
【0257】・ GMC PID(7:0)は読出サイクルにお
ける要求プロセッサの識別子(ID)を示す。 GMC PID
(7:0)は読出サイクルの開始において、メモリー・
バンクに保管され、応答データで戻される。 ・ GMC PTAG(7:0)はプロセッサにより複数未済読
出要求に対してタグを付すことに使用される。 GMC PI
D(7:0)のように、 GMC PTAG(7:0)は読出サイ
クルの開始においてメモリー・バンクに保管され、応答
データで戻される。
【0258】・ GMC RWは読出サイクル(1)か書込サ
イクル(0)を指定する。 ・ GMC RMW は、大域メモリー・バンクにおいて読出−
変更−書込オペレーションを要求する部分大域メモリー
書込サイクルを指定する。UBIFは最初 RMWの作動可能で
読出サイクルを発行し、チップで変更を実行し、変更し
たデータをメモリーに書戻す。
【0259】GMCデータ・バス信号の定義 データ・バスは GMC D(255:0), GMC ECC(63;
0), GMC WENB(7:0), GMC MID(7:0),及び G
MC MTAG(1:0)から成る。本バスは4メモリー・バ
ンクによって共用され、UBIFにより書込データを伝送
し、読出データをメモリー・バンクから取得するよう使
用される。以下、各データ・バス・フィールドについて
説明する。
【0260】・ GMC D(255:0)はデータ・バスで
ある。32データ・バイトの各々は、バイト使用可能 G
MC BE(0:31)で示す有効なデータを含む。 ・ GMC ECC(63:0)は ECCバスである。 ECCはUBIF
-Dモジュールによって計算され、書込サイクルで供給さ
れ、読出サイクルでデータ誤りの検出/修正に使用され
る。
【0261】・ GMC WENB(7:0)は256ビット・
ワードの8個の32ビット・セクションの各々に対する
書込みを可能にする。 GMC WENB(0)はD(31:0)
に対する書込みを可能にし、 GMC WENB(1)はD(6
3:32)に対する書込みを可能にする等々である。 ・ GMC MID(7:0)は大域メモリー応答オペレーショ
ンにおいて、与えられたデータに対する宛先プロセッサ
を示し返送されるプロセッサIDを搬送する。 GMC MID
(7:0)は応答する読出サイクルにおいて、 GMC PID
(7:0)に与えられた値を反映する。 MIDはプロセッ
サ書込サイクル中は不活動状態である。
【0262】・ GMC MTAG(7:0)は大域メモリー応
答オペレーションにおいて返送されるプロセッサTAG を
搬送する。このフィールドはプロセッサにより、複数の
未済読出要求を発行するとき、大域メモリー応答データ
を再組織するよう選択的に使用される。 GMC MTAG
(7:0)は対応する読出サイクルにおいて、 GMC PTAG
(7:0)に与えられた値を反映する。 GMC MTAG
(7:0)はプロセッサ書込サイクル中は不活動状態で
ある。
【0263】GMC制御バス信号の定義 ・ GMC LEQ(3:0)は局所メモリー・カード・バス要
求線である。メモリー・バンク(i) はその読出データ・
レジスタにデータをラッチする2サイクル以上前に GMC
REQ(i)を発行する。 GMC REQ(i)は GMC GNT(i)を受
信するまで主張した状態に留まる。
【0264】・ GMC GNT(3:0)は局所メモリー・カ
ード・バス許諾線である。 GMC GNT(i)は GMC REQ(i)
が発行されてから2サイクル以上後に返送され、2クロ
ック・サイクル間持続する。UBIFは常に特定のメモリー
・バンクに対して局所メモリー・カード・バスを許可し
た後少くとも1サイクル間 GMC GNT(i)を主張解除す
る。
【0265】・ GMC RDY(3:0)は個々のメモリー・
バンク作動可能線である。各メモリー・バンクはUBIFか
ら新たなメモリー要求サイクルを受諾することができる
ときに自己の RDY信号を発生する。 GMC RDY(i)が作動
可能なときに、UBIFはそれぞれのバンクのメモリー・ア
ドレス・レジスタ(及び選択的にデータ・レジスタ)に
ロードする GMC LDMAR(i)を発行することが許される。
そこで、 GMC RDY(i)は主張解除され、バンクR/Wサイク
ルを実行して使用状態となる。
【0266】・ GMC LDMAR(3:0)は個々のメモリー
・バンク・アドレス・レジスタ・ロード使用可能信号で
ある。 GMC RDY(i)が活動状態にあるとき、UBIFはそれ
ぞれのバンクのメモリー・アドレス・レジスタ(及び選
択的にデータ・レジスタ)にロードする GMC LDMAR(i)
を発行することが許される。 GMC LDMAR(i)は1クロッ
ク・サイクル間活動状態である。 ・ GMC NENE(3:0)は個々のメモリー・バンク次−
近信号である。活動状態のとき、 GMC NENE(i) は、バ
ンクに発行されるべき次の行(ROW) アドレスは前に発行
された行(ROW) アドレスと同一であるということを示
す。
【0267】
【0268】
【発明の効果】以上説明したように、本発明は上記のよ
うに構成したことにより、複雑な高分解能像を実時間で
操作し、処理し、表示することができる高速データ結合
を実行しうる多重プロセッサ・システムを提供して共用
システムの資源を効率よく利用することを可能にした。
【図面の簡単な説明】
【図1】本発明の一実施例による科学計算光学システム
の構成要素を示す斜視図
【図2】図1のシステム・サーバ構成要素のブロック図
【図3】SVSプロセッサ・カード・アーキテクチャを描
いたブロック図
【図4】プロセッサ・ノードの構造と、ノード・プロセ
ッサ,局所メモリー,及び大域メモリー・インターフェ
ースに対するプロセッサ緩衝記憶インターフェース(PBI
F)の結合とを詳細に示すブロック図
【図5】PBIFの構成要素を詳細に示すブロック図
【図6】PBIFの大域メモリー状態機械の動作を示す状態
【図7】プロセッサ・ノード又は I/Oインターフェース
・ノードに結合された汎用緩衝記憶インターフェース(U
BIF-A)のアドレス部を示すブロック図
【図8】メモリー・バンク・ノードに結合された場合の
汎用緩衝記憶インターフェース(UBIF-A)のアドレス部を
示すブロック図
【図9】汎用緩衝記憶インターフェース(UBIF-D)のデー
タ部を示すブロック図
【図10】局所対大域バス読出要求タイミングを描いた
タイミング図
【図11】局所対大域バス書込要求タイミングを描いた
タイミング図
【図12】4プロセッサ局所対大域バス読出タイミング
を描いたタイミング図
【図13】4プロセッサ局所対大域バス書込タイミング
を描いたタイミング図
【図14】大域バスの読出−入力タイミング・シーケン
スを描いたタイミング図
【図15】大域バスにおける混合モード・アクセスを描
いたタイミング図
【図16】プロセッサ間連絡(IPC) 割込メッセージ・ホ
ーマット及び回路を示すブロック図
【図17】IPC論理を例示するブロック図
【図18】I/Oプロセッサ・カードを示すブロック図
【図19】4バンク大域メモリー・カードを描いた図
【図20】大域バスに関する大域メモリー読出動作のタ
イミング・シーケンスを描いたタイミング図
【図21】単一大域メモリー・カードにおいて受信した
各々が異なるメモリー・バンクに向けられた4つの大域
メモリー読出要求を描いたタイミング図
【図22】単一大域メモリー・バンクに向けられた4大
域メモリー書込周期を例示するタイミング図
【図23】各々が異なる大域メモリー・バンクに向けら
れた4大域メモリー読出−変更−書込動作を例示するタ
イミング図
【図24】プロセッサ・モードで使用されたときのUBIF
制御に対する入力及び出力信号を示す図
【図25】メモリー・モードで使用されたときのUBIF制
御に対する入力及び出力信号を示す図
【図26】プロセッサ動作モードで使用するためのUBIF
-Aアドレス選択回路を詳細に示すブロック図
【図27】メモリー動作モードで使用するためのUBIF-A
アドレス選択回路を詳細に示すブロック図
【図28】プロセッサ動作モードで使用するための追加
のUBIF-Aアドレス選択回路を詳細に示すブロック図
【図29】メモリー動作モードで使用するための追加の
UBIF-Aアドレス選択回路を詳細に示すブロック図
【図30】プロセッサ動作モードで使用するためのUBIF
-A MID回路を詳細に示すブロック図
【図31】UBIF-D出力回路を詳細に示すブロック図
【図32】UBIF-D入力回路を詳細に示すブロック図
【符号の説明】
12 サーバ 14 コンソール 16 フレーム・バッファ 20 ディスク・アレイ 22 プロセッサ・カード 22a,28a マイクロプロセッサ・ノード 23 ノード・バス 24 大域バス 26 大域メモリー・カード 28 I/Oプロセッサ・カード 30 インターフェース 32 局所プロセッサ・カード・バス 34 汎用バス・インターフェース B0− B3 メモリー・バンク
フロントページの続き (72)発明者 アーマンド・ガルシア アメリカ合衆国10598、ニューヨーク州、 ヨークタウン・ハイツ、ラークスパー・ス トリート、2821番地 (72)発明者 ロバート・バーナード・ピアソン アメリカ合衆国10516、ニューヨーク州、 コールド・スプリング、ビール・ロード、 ボックス・209エヌ、アール・ディー・1 番地

Claims (10)

    【特許請求の範囲】
  1. 【請求項1】 各データ・プロセッサを含む複数のプロ
    セッサ・ノードと、 前記プロセッサ・ノードの各々に結合され、共同するデ
    ータ・プロセッサにより書込まれるデータを第2のバス
    に送信する前に第1のバスに緩衝記憶する手段と、 前記プロセッサ・ノードの各々に結合され、前記データ
    ・プロセッサにより書込まれるデータと共に前記共同す
    るデータ・プロセッサによって発生したバイト使用可能
    信号を緩衝記憶する手段と、 前記緩衝記憶したバイト使用可能信号に応答して、メモ
    リー手段書込動作が読出−変更−書込形式のメモリー動
    作として遂行されるべきか否かを示す制御信号を前記第
    2のバスに送信し、及び前記緩衝記憶されたバイト使用
    可能信号を前記第2のバスに送信する手段を含む前記緩
    衝記憶されたデータを前記第2のバスに送信する手段
    と、 前記データ・プロセッサのすべてに共用されるメモリー
    手段に受信させるため、データと、制御信号と、バイト
    使用可能信号とを前記第2のバスから第3のバスに結合
    する手段と、 前記メモリー手段に結合され、及び読出−変更−書込メ
    モリー動作を示す制御信号に応答して、前記メモリー手
    段の指定した記憶場所からデータを読出し、前記送信さ
    れたバイト使用可能信号と共に前記送信された緩衝記憶
    データを選択的に組合わせ、前記予め読出され、組合わ
    されたデータを前記指定した記憶場所に記憶する手段と
    を含むことを特徴とする多重プロセッサ・データ処理シ
    ステム。
  2. 【請求項2】 前記第1のバスは Nバイト幅を有し、前
    記データ緩衝記憶手段は M×N バイト幅を有することを
    特徴とする請求項1記載の多重プロセッサ・データ処理
    システム。
  3. 【請求項3】 前記結合手段は、前記第2のバスのアド
    レス信号線及び制御信号線を結合し、複数の連続する第
    1のバス・トランザクションに対するアドレス信号線及
    び制御信号線を入力し緩衝記憶する手段を含む第1のイ
    ンターフェース手段と、 各々が Nバイトから成る複数の Mデータ単位に組織され
    た前記第2のバスのデータ信号線に結合され、各々が複
    数の連続する第1のバス・トランザクションに対する前
    記 Mデータ単位の1つの Nバイトを受信し緩衝記憶する
    手段を含む M機能単位に区画された第2のインターフェ
    ース手段とを含み、 前記第1のインターフェース手段は、前記アドレス信号
    線及び制御信号線に応答して、前記第2のインターフェ
    ース手段の前記 M機能単位に共通に結合され、前記 Mデ
    ータ単位の各々の受信した Nバイトのために前記第2の
    インターフェース手段の動作を制御する複数のデータ路
    制御信号を発生する制御手段を含むことを特徴とする請
    求項1記載の多重プロセッサ・データ処理システム。
  4. 【請求項4】 各々がデータ・プロセッサを含み、第1
    の局所バス手段によって共に結合された一群内にある
    (n)計算データ処理ノードから成る少くとも1つの群
    と、 データ・プロセッサを含み、第2の局所バス手段によっ
    てデータ通信手段に結合された少くとも1つの通信デー
    タ・プロセッサ・ノードと、 第3の局所バス手段により共に結合された (x)メモリー
    ・バンクから成る少くとも1つの共用大域メモリーと、 個々の1つが前記局所バス手段の1つと大域バス手段と
    の間に結合された複数の第1のバス・インターフェース
    手段と、 個々の1つが前記データ・プロセッサの各々に結合さ
    れ、前記複数のデータ・プロセッサから発生したバイト
    使用可能信号を含み、アドレス及び制御信号を前記デー
    タ・プロセッサから受信する複数の第2のバス・インタ
    ーフェース手段と、 前記プロセッサ・ノードの各々と共同して、データ・プ
    ロセッサ書込サイクルにおいて、共同するバイト使用可
    能信号を記憶する手段と、 前記プロセッサ・ノードの各々と共同して、前記データ
    ・プロセッサ書込サイクルによって書込まれるデータを
    記憶する手段と、 前記第2のインターフェース手段と共同し、及び前記記
    憶されたデータが前記局所バス手段に送信されるとき前
    記記憶されたバイト使用可能信号に応答して、複数のバ
    イトから成るデータ単位に対する少くとも1つの共同す
    る前記記憶されたバイト使用可能信号を発生していない
    という状態に応答して、局所バス手段に対し読出−変更
    −書込信号を発生する手段とから成ることを特徴とする
    多重プロセッサ・データ処理システム。
  5. 【請求項5】 各前記第1のバス・インターフェース手
    段は、各々がアドレス情報,制御情報,及びデータ情報
    を前記大域バス手段から受信し記憶するため前記大域バ
    ス手段に結合された入力と前記局所バス手段の共同する
    1つに結合された出力とを有する複数(y) の入力待ち行
    列手段と、各々がアドレス情報,制御情報,データ情報
    を前記局所バス手段から受信し記憶する局所バス手段の
    共同する1つに結合された入力と前記局所バス手段に結
    合された出力とを有する複数(z) の出力待ち行列手段と
    を含み、(n=x=y=z)であることを特徴とする請
    求項4記載の多重プロセッサ・データ処理システム。
  6. 【請求項6】 各前記データ・プロセッサ・ノードは更
    に、 データ・プロセッサ・マスクを設定して少くとも1つの
    通信されるべき他のデータ・プロセッサを識別する手段
    と、 データ・プロセッサ通信バス・トランザクションを示す
    バス・トランザクション識別子を設定する手段と、 前記局所バス手段のアドレス信号線に対しデータ・プロ
    セッサ・マスクを送信し、前記局所バス手段の制御信号
    線に対しバス・トランザクション識別子を送信する手段
    とを含むことを特徴とする請求項4記載の多重プロセッ
    サ・データ処理システム。
  7. 【請求項7】 イメージ・データを受信するため結合さ
    れ、該イメージ・データを表示する表示監視する手段を
    有するフレーム・バッファ手段を含むことを特徴とする
    請求項4記載の多重プロセッサ・データ処理システム。
  8. 【請求項8】 各々がデータ・プロセッサを含む複数の
    プロセッサ・ノードを有する多重プロセッサ・データ処
    理システムの動作方法であって、 各データ・プロセッサにより書込まれるデータを第2の
    バスに送信する前に第1のバスに緩衝記憶し、 各データ・プロセッサにより発生したバイト使用可能信
    号を前記データ・プロセッサにより書込まれるデータと
    共に緩衝記憶し、 前記緩衝記憶されたデータを前記第2のバスに送信する
    ことにより主メモリー書込動作を実行し、 前記記憶されたバイト使用可能信号に応答して、前記主
    メモリー書込動作が読出−変更−書込形式のメモリー動
    作として遂行されるべきか否かを示す制御信号を前記第
    2のバスに送信し、 前記記憶されたバイト使用可能信号を前記第2のバスに
    送信し、 データ,制御信号,及びバイト使用可能信号を前記主メ
    モリーによる受信のため前記第2のバスから前記第3の
    バスに結合し、 読出−変更−書込メモリー動作を示す制御信号に応答し
    て、前記主メモリーの指定した記憶場所からデータを読
    出し、送信されたバイト使用可能信号に従い送信され緩
    衝記憶したデータを選択的に組合わせ、予め読出され組
    合わされたデータを指定した記憶場所に書戻す各工程を
    含むことを特徴とする多重プロセッサ・データ処理シス
    テムの動作方法。
  9. 【請求項9】 前記メモリー書込動作を実行する工程は
    所定数のバイト使用可能信号が緩衝記憶されたことを確
    認する工程の結果として開始されることを特徴とする請
    求項8記載の多重プロセッサ・データ処理システムの動
    作方法。
  10. 【請求項10】 各ノードがデータ・プロセッサを含
    み、局所バスに接続された少くとも1つのプロセッサ・
    ノードを有する多重プロセッサ・データ処理システムに
    おいてメモリー書込オペレーションを実行する方法であ
    って、 前記プロセッサ・ノードにおいて、共同するデータ・プ
    ロセッサにより書込まれるデータ及び共同するバイト使
    用可能信号を緩衝記憶し、 前記緩衝記憶されたバイト使用可能信号の機能に従い、
    前記メモリー書込オペレーションが読出−変更−書込(R
    MW) オペレーションとして遂行されるべきか否かを確認
    することにより前記メモリー書込オペレーションを実行
    し、 前記読出−変更−書込オペレーションとしてメモリー書
    込オペレーションを遂行するべく確認された場合、緩衝
    記憶されたバイト使用可能信号及び読出−変更−書込制
    御信号と共に前記緩衝記憶したデータを前記局所バスに
    送信し、 メモリー手段による受信のため、データ,読出−変更−
    書込制御信号,及びバイト使用可能信号を前記局所バス
    から大域バスに結合し、 前記読出−変更−書込制御信号に応答して、前記メモリ
    ー手段内の指定した記憶場所からデータを読出し、前記
    受信したバイト使用可能信号に従い前記受信したデータ
    を選択的に組合わせ、予め読出し組合わせたデータを指
    定した記憶場所に記憶する各工程を含むことを特徴とす
    るメモリー書込オペレーションの実行方法。
JP4147985A 1991-07-22 1992-05-15 多重プロセッサ・データ処理システム及びその動作方法 Expired - Lifetime JP2602599B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US734432 1991-07-22
US07/734,432 US5327570A (en) 1991-07-22 1991-07-22 Multiprocessor system having local write cache within each data processor node

Publications (2)

Publication Number Publication Date
JPH05158890A true JPH05158890A (ja) 1993-06-25
JP2602599B2 JP2602599B2 (ja) 1997-04-23

Family

ID=24951673

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4147985A Expired - Lifetime JP2602599B2 (ja) 1991-07-22 1992-05-15 多重プロセッサ・データ処理システム及びその動作方法

Country Status (4)

Country Link
US (1) US5327570A (ja)
EP (1) EP0524683A1 (ja)
JP (1) JP2602599B2 (ja)
CA (1) CA2068580A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011029934A (ja) * 2009-07-24 2011-02-10 Toshiba Corp 情報処理装置

Families Citing this family (89)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2774862B2 (ja) * 1990-07-16 1998-07-09 株式会社日立製作所 Dma制御装置および情報処理装置
JPH05210640A (ja) * 1992-01-31 1993-08-20 Hitachi Ltd マルチプロセッサシステム
JPH0619785A (ja) * 1992-03-27 1994-01-28 Matsushita Electric Ind Co Ltd 分散共有仮想メモリーとその構成方法
JPH05324544A (ja) * 1992-05-15 1993-12-07 Hitachi Ltd バス制御方法
US5485594A (en) * 1992-07-17 1996-01-16 International Business Machines Corporation Apparatus and method using an atomic fetch and add for establishing temporary ownership of a common system resource in a multiprocessor data processing system
US5590310A (en) * 1993-01-14 1996-12-31 Integrated Device Technology, Inc. Method and structure for data integrity in a multiple level cache system
US5488711A (en) * 1993-04-01 1996-01-30 Microchip Technology Incorporated Serial EEPROM device and associated method for reducing data load time using a page mode write cache
DE69433147D1 (de) * 1993-04-30 2003-10-16 Packard Bell Nec Inc Symmetrisches Mehrprozessorsystem mit vereinheitlichter Umgebung und verteilten Systemfunktionen
US5737569A (en) * 1993-06-30 1998-04-07 Intel Corporation Multiport high speed memory having contention arbitration capability without standby delay
US5513346A (en) * 1993-10-21 1996-04-30 Intel Corporation Error condition detector for handling interrupt in integrated circuits having multiple processors
US5535365A (en) * 1993-10-22 1996-07-09 Cray Research, Inc. Method and apparatus for locking shared memory locations in multiprocessing systems
US5613075A (en) * 1993-11-12 1997-03-18 Intel Corporation Method and apparatus for providing deterministic read access to main memory in a computer system
DE19501674A1 (de) * 1994-02-03 1995-08-10 Tektronix Inc Verwaltung der Datenübertragung zwischen Prozessoren
JP3660679B2 (ja) * 1994-03-01 2005-06-15 インテル・コーポレーション 高度パイプライン式バス・アーキテクチャ
US5533201A (en) * 1994-03-07 1996-07-02 Unisys Corporation Method and apparatus for simultaneous interconnection of multiple requestors to multiple memories
US5530811A (en) * 1994-03-07 1996-06-25 Unisys Corporation Behind backplane expansion board apparatus and method
US5535340A (en) * 1994-05-20 1996-07-09 Intel Corporation Method and apparatus for maintaining transaction ordering and supporting deferred replies in a bus bridge
US5546546A (en) * 1994-05-20 1996-08-13 Intel Corporation Method and apparatus for maintaining transaction ordering and arbitrating in a bus bridge
US5594862A (en) * 1994-07-20 1997-01-14 Emc Corporation XOR controller for a storage subsystem
EP0706138A1 (en) * 1994-10-03 1996-04-10 International Business Machines Corporation Alternating data valid control signals for high performance data transfer
JPH08185359A (ja) * 1994-10-31 1996-07-16 Toshiba Corp メモリサブシステム
US5761731A (en) * 1995-01-13 1998-06-02 Digital Equipment Corporation Method and apparatus for performing atomic transactions in a shared memory multi processor system
CA2167633A1 (en) * 1995-01-23 1996-07-24 Leonard R. Fishler Apparatus and method for efficient modularity in a parallel, fault tolerant, message based operating system
DE69621263T2 (de) * 1995-01-23 2002-12-19 Compaq Computer Corp., Houston Verteilter Datencachespeicher für Multiprozessorsystem mit Cachespeicher
USRE38428E1 (en) 1995-05-02 2004-02-10 Apple Computer, Inc. Bus transaction reordering in a computer system having unordered slaves
US5608884A (en) * 1995-05-17 1997-03-04 Dell Usa, L.P. Commonly housed multiple processor type computing system and method of manufacturing the same
US5644696A (en) * 1995-06-06 1997-07-01 International Business Machines Corporation Recovering multi-volume data sets during volume recovery
US7301541B2 (en) * 1995-08-16 2007-11-27 Microunity Systems Engineering, Inc. Programmable processor and method with wide operations
US6643765B1 (en) * 1995-08-16 2003-11-04 Microunity Systems Engineering, Inc. Programmable processor with group floating point operations
US6295599B1 (en) * 1995-08-16 2001-09-25 Microunity Systems Engineering System and method for providing a wide operand architecture
US5742840A (en) * 1995-08-16 1998-04-21 Microunity Systems Engineering, Inc. General purpose, multiple precision parallel operation, programmable media processor
JP3123413B2 (ja) 1995-11-07 2001-01-09 株式会社日立製作所 コンピュータシステム
US5850557A (en) * 1996-05-10 1998-12-15 Intel Corporation Method and apparatus for reducing bus bridge thrashing by temporarily masking agent requests to allow conflicting requests to be completed
US6026460A (en) * 1996-05-10 2000-02-15 Intel Corporation Method and apparatus for sequencing system bus grants and disabling a posting buffer in a bus bridge to improve bus efficiency
US6205507B1 (en) * 1996-06-13 2001-03-20 Compaq Computer Corporation Memory coherency in a processor-to-bus cycle in a multi-processor system
US5878235A (en) * 1996-10-03 1999-03-02 Micron Electronics, Inc. Method and system for concurrent computer transaction processing
US5948060A (en) * 1997-01-24 1999-09-07 International Business Machines Corporation Speeding-up communication rates on links transferring data structures by a method of handing scatter/gather of storage blocks in commanded computer systems
US6094532A (en) * 1997-03-25 2000-07-25 Sun Microsystems, Inc. Multiprocessor distributed memory system and board and methods therefor
US5898849A (en) * 1997-04-04 1999-04-27 Advanced Micro Devices, Inc. Microprocessor employing local caches for functional units to store memory operands used by the functional units
US5925145A (en) * 1997-04-28 1999-07-20 Credence Systems Corporation Integrated circuit tester with cached vector memories
FR2764073B1 (fr) * 1997-05-30 1999-07-16 Sgs Thomson Microelectronics Protocole de communication pour carte a memoire asynchrone
US7013305B2 (en) 2001-10-01 2006-03-14 International Business Machines Corporation Managing the state of coupling facility structures, detecting by one or more systems coupled to the coupling facility, the suspended state of the duplexed command, detecting being independent of message exchange
DE10081643D2 (de) 1999-06-10 2002-05-29 Pact Inf Tech Gmbh Sequenz-Partitionierung auf Zellstrukturen
US6378037B1 (en) * 1999-06-29 2002-04-23 International Business Machines Corporation Write-twice method of fail-safe write caching
US6442597B1 (en) 1999-07-08 2002-08-27 International Business Machines Corporation Providing global coherence in SMP systems using response combination block coupled to address switch connecting node controllers to memory
US6779036B1 (en) 1999-07-08 2004-08-17 International Business Machines Corporation Method and apparatus for achieving correct order among bus memory transactions in a physically distributed SMP system
US6467012B1 (en) 1999-07-08 2002-10-15 International Business Machines Corporation Method and apparatus using a distributed system structure to support bus-based cache-coherence protocols for symmetric multiprocessors
US6591348B1 (en) 1999-09-09 2003-07-08 International Business Machines Corporation Method and system for resolution of transaction collisions to achieve global coherence in a distributed symmetric multiprocessor system
US6725307B1 (en) 1999-09-23 2004-04-20 International Business Machines Corporation Method and system for controlling data transfers with physical separation of data functionality from address and control functionality in a distributed multi-bus multiprocessor system
US6587930B1 (en) 1999-09-23 2003-07-01 International Business Machines Corporation Method and system for implementing remstat protocol under inclusion and non-inclusion of L1 data in L2 cache to prevent read-read deadlock
US6457085B1 (en) 1999-11-04 2002-09-24 International Business Machines Corporation Method and system for data bus latency reduction using transfer size prediction for split bus designs
US6529990B1 (en) 1999-11-08 2003-03-04 International Business Machines Corporation Method and apparatus to eliminate failed snoops of transactions caused by bus timing conflicts in a distributed symmetric multiprocessor system
US6684279B1 (en) 1999-11-08 2004-01-27 International Business Machines Corporation Method, apparatus, and computer program product for controlling data transfer
US6535941B1 (en) 1999-11-08 2003-03-18 International Business Machines Corporation Method and apparatus for avoiding data bus grant starvation in a non-fair, prioritized arbiter for a split bus system with independent address and data bus grants
US6606676B1 (en) 1999-11-08 2003-08-12 International Business Machines Corporation Method and apparatus to distribute interrupts to multiple interrupt handlers in a distributed symmetric multiprocessor system
US7529799B2 (en) 1999-11-08 2009-05-05 International Business Machines Corporation Method and apparatus for transaction tag assignment and maintenance in a distributed symmetric multiprocessor system
US6516379B1 (en) 1999-11-08 2003-02-04 International Business Machines Corporation Method and apparatus for transaction pacing to reduce destructive interference between successive transactions in a distributed symmetric multiprocessor system
US6523076B1 (en) 1999-11-08 2003-02-18 International Business Machines Corporation Method and apparatus for synchronizing multiple bus arbiters on separate chips to give simultaneous grants for the purpose of breaking livelocks
US6542949B1 (en) 1999-11-08 2003-04-01 International Business Machines Corporation Method and apparatus for increased performance of a parked data bus in the non-parked direction
US6327645B1 (en) 1999-11-08 2001-12-04 Silicon Integrated Systems Corp. Cache memory system with memory request address queue, cache write address queue, and cache read address queue
US6519649B1 (en) 1999-11-09 2003-02-11 International Business Machines Corporation Multi-node data processing system and communication protocol having a partial combined response
US6519665B1 (en) 1999-11-09 2003-02-11 International Business Machines Corporation Multi-node data processing system and communication protocol in which a stomp signal is propagated to cancel a prior request
US6591307B1 (en) 1999-11-09 2003-07-08 International Business Machines Corporation Multi-node data processing system and method of queue management in which a queued operation is speculatively cancelled in response to a partial combined response
US6848003B1 (en) 1999-11-09 2005-01-25 International Business Machines Corporation Multi-node data processing system and communication protocol that route write data utilizing a destination ID obtained from a combined response
US6671712B1 (en) * 1999-11-09 2003-12-30 International Business Machines Corporation Multi-node data processing system having a non-hierarchical interconnect architecture
US6728823B1 (en) * 2000-02-18 2004-04-27 Hewlett-Packard Development Company, L.P. Cache connection with bypassing feature
US9552047B2 (en) 2001-03-05 2017-01-24 Pact Xpp Technologies Ag Multiprocessor having runtime adjustable clock and clock dependent power supply
US9436631B2 (en) 2001-03-05 2016-09-06 Pact Xpp Technologies Ag Chip including memory element storing higher level memory data on a page by page basis
US9411532B2 (en) * 2001-09-07 2016-08-09 Pact Xpp Technologies Ag Methods and systems for transferring data between a processing device and external devices
US7035908B1 (en) * 2001-07-26 2006-04-25 Lsi Logic Corporation Method for multiprocessor communication within a shared memory architecture
US6865695B2 (en) * 2001-07-26 2005-03-08 International Business Machines Corpoation Robust system bus recovery
US7356845B2 (en) * 2002-01-30 2008-04-08 Lucent Technologies Inc. Method and apparatus for identification tagging documents in a computer system
US9170812B2 (en) 2002-03-21 2015-10-27 Pact Xpp Technologies Ag Data processing system having integrated pipelined array data processor
US7496109B1 (en) * 2003-02-12 2009-02-24 Cypress Semiconductor Corporation Method of maximizing bandwidth efficiency in a protocol processor
US7240277B2 (en) * 2003-09-26 2007-07-03 Texas Instruments Incorporated Memory error detection reporting
US7277982B2 (en) * 2004-07-27 2007-10-02 International Business Machines Corporation DRAM access command queuing structure
US20070094432A1 (en) * 2005-10-24 2007-04-26 Silicon Integrated Systems Corp. Request transmission mechanism and method thereof
US20080168331A1 (en) * 2007-01-05 2008-07-10 Thomas Vogelsang Memory including error correction code circuit
JP2008276407A (ja) * 2007-04-26 2008-11-13 Canon Inc 画像処理装置及びその方法
US8239638B2 (en) * 2007-06-05 2012-08-07 Apple Inc. Store handling in a processor
US7849290B2 (en) * 2007-07-09 2010-12-07 Oracle America, Inc. Store queue architecture for a processor that supports speculative execution
US20090132747A1 (en) * 2007-11-19 2009-05-21 International Business Machines Corporation Structure for universal peripheral processor system for soc environments on an integrated circuit
WO2009087690A2 (en) * 2008-01-11 2009-07-16 Jubilant Organosys Limited Multiparticulate extended release pharmaceutical composition of carbamazepine and process for manufacturing the same
US8473677B2 (en) * 2009-09-29 2013-06-25 Cleversafe, Inc. Distributed storage network memory access based on memory state
US9911018B1 (en) 2012-01-12 2018-03-06 Impinj, Inc. RFID tags with digital signature subportions
US11361174B1 (en) 2011-01-17 2022-06-14 Impinj, Inc. Enhanced RFID tag authentication
US9170928B1 (en) * 2013-12-31 2015-10-27 Symantec Corporation I/O scheduling and load balancing across the multiple nodes of a clustered environment
US20180107602A1 (en) * 2016-10-13 2018-04-19 Intel Corporation Latency and Bandwidth Efficiency Improvement for Read Modify Write When a Read Operation is Requested to a Partially Modified Write Only Cacheline
WO2021113619A1 (en) * 2019-12-04 2021-06-10 Ge Aviation Systems Llc Systems and methods for providing surveillance services for unmanned aerial vehicle

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4371754A (en) * 1980-11-19 1983-02-01 Rockwell International Corporation Automatic fault recovery system for a multiple processor telecommunications switching control
US4484273A (en) * 1982-09-03 1984-11-20 Sequoia Systems, Inc. Modular computer system
US4591977A (en) * 1983-03-23 1986-05-27 The United States Of America As Represented By The Secretary Of The Air Force Plurality of processors where access to the common memory requires only a single clock interval
US4591976A (en) * 1983-06-17 1986-05-27 The United States Of America As Represented By The Secretary Of The Air Force Multiple task oriented processor
US4862350A (en) * 1984-08-03 1989-08-29 International Business Machines Corp. Architecture for a distributive microprocessing system
US5067071A (en) * 1985-02-27 1991-11-19 Encore Computer Corporation Multiprocessor computer system employing a plurality of tightly coupled processors with interrupt vector bus
US4736319A (en) * 1985-05-15 1988-04-05 International Business Machines Corp. Interrupt mechanism for multiprocessing system having a plurality of interrupt lines in both a global bus and cell buses
US4783736A (en) * 1985-07-22 1988-11-08 Alliant Computer Systems Corporation Digital computer with multisection cache
EP0262344B1 (de) * 1986-08-07 1996-03-27 MEDICEChem.-Pharm. Fabrik Pütter GmbH & Co. KG N-alkylierte quartäre stickstoffhaltige Heterozyklen, Verfahren zu deren Herstellung und deren Verwendung in Arzneimitteln
US4768197A (en) * 1986-09-15 1988-08-30 Amdahl Corporation Cache error code update
US4843542A (en) * 1986-11-12 1989-06-27 Xerox Corporation Virtual memory cache for use in multi-processing systems
US4811216A (en) * 1986-12-22 1989-03-07 American Telephone And Telegraph Company Multiprocessor memory management method
US4858101A (en) * 1987-08-26 1989-08-15 Allen-Bradley Company, Inc. Programmable controller with parallel processors
US4872133A (en) * 1988-02-18 1989-10-03 Motorola, Inc. Floating-point systolic array including serial processors
IT1227360B (it) * 1988-11-18 1991-04-08 Honeywell Bull Spa Sistema multiprocessore di elaborazione dati con replicazione di dati globali.
US5202972A (en) * 1988-12-29 1993-04-13 International Business Machines Corporation Store buffer apparatus in a multiprocessor system
US5008886A (en) * 1989-01-27 1991-04-16 Digital Equipment Corporation Read-modify-write operation

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011029934A (ja) * 2009-07-24 2011-02-10 Toshiba Corp 情報処理装置

Also Published As

Publication number Publication date
EP0524683A1 (en) 1993-01-27
CA2068580A1 (en) 1993-01-23
JP2602599B2 (ja) 1997-04-23
US5327570A (en) 1994-07-05

Similar Documents

Publication Publication Date Title
JP2602599B2 (ja) 多重プロセッサ・データ処理システム及びその動作方法
US5870572A (en) Universal buffered interface for coupling multiple processors, memory units, and I/O interfaces to a common high-speed interconnect
US5410654A (en) Interface with address decoder for selectively generating first and second address and control signals respectively in response to received address and control signals
US5682512A (en) Use of deferred bus access for address translation in a shared memory clustered computer system
US5517648A (en) Symmetric multiprocessing system with unified environment and distributed system functions
US5615343A (en) Method and apparatus for performing deferred transactions
EP0735487B1 (en) A fast, dual ported cache controller for data processors in a packet switched cache coherent multiprocessor system
EP0886225B1 (en) Microprocessor architecture capable of supporting multiple heterogenous processors
EP0258559B1 (en) Cache memory coherency control provided with a read in progress indicating memory
US5809340A (en) Adaptively generating timing signals for access to various memory devices based on stored profiles
EP0694849B1 (en) Method for performing bus transactions in a computer system and computer system
CA2280125C (en) Non-uniform memory access (numa) data processing system that speculatively issues requests on a node interconnect
US5696910A (en) Method and apparatus for tracking transactions in a pipelined bus
US6012118A (en) Method and apparatus for performing bus operations in a computer system using deferred replies returned without using the address bus
JPH09114735A (ja) パケット交換型キャッシュコヒーレントマルチプロセッサシステム用並列型コヒーレント読取り及び書戻しトランザクション処理システム
JPH0473176B2 (ja)
CA2279138C (en) Non-uniform memory access (numa) data processing system that decreases latency by expediting rerun requests
US6260091B1 (en) Method and apparatus for performing out-of-order bus operations in which an agent only arbitrates for use of a data bus to send data with a deferred reply
US5923857A (en) Method and apparatus for ordering writeback data transfers on a bus
EP1067459B1 (en) Symmetric multiprocessing system with unified environment and distributed system functions
US20030131158A1 (en) Increased computer peripheral throughput by using data available withholding
US6253302B1 (en) Method and apparatus for supporting multiple overlapping address spaces on a shared bus
WO1998010350A1 (en) A data flow control mechanism for a bus supporting two-and three-agent transactions