JP2972568B2 - Bus extender - Google Patents

Bus extender

Info

Publication number
JP2972568B2
JP2972568B2 JP8069886A JP6988696A JP2972568B2 JP 2972568 B2 JP2972568 B2 JP 2972568B2 JP 8069886 A JP8069886 A JP 8069886A JP 6988696 A JP6988696 A JP 6988696A JP 2972568 B2 JP2972568 B2 JP 2972568B2
Authority
JP
Japan
Prior art keywords
bus
request
address
register
output signal
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.)
Expired - Fee Related
Application number
JP8069886A
Other languages
Japanese (ja)
Other versions
JPH09259076A (en
Inventor
隆浩 谷岡
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.)
NEC Computertechno Ltd
Original Assignee
NEC Computertechno Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Computertechno Ltd filed Critical NEC Computertechno Ltd
Priority to JP8069886A priority Critical patent/JP2972568B2/en
Publication of JPH09259076A publication Critical patent/JPH09259076A/en
Application granted granted Critical
Publication of JP2972568B2 publication Critical patent/JP2972568B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、情報処理システム
に用いられるシステムバス拡張装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a system bus expansion device used for an information processing system.

【0002】[0002]

【従来の技術】一般的によく用いられる情報処理システ
ムの構成方法の一つとして、プロセッサおよび主記憶装
置および入出力装置をシステムバスに接続するいわゆる
バス方式がある。このようなバス方式の情報処理システ
ムにおいては、プロセッサや入出力装置は、データのリ
ードやライト等の命令(これをリクエストという)をシ
ステムバスを介して主記憶装置に送信したり、リードリ
クエストに対する応答データ(これをリプライという)
システムバスを介して受信したるすることができる。
2. Description of the Related Art As one of commonly used information processing system configuration methods, there is a so-called bus system for connecting a processor, a main storage device, and an input / output device to a system bus. In such a bus-type information processing system, a processor or an input / output device transmits an instruction for reading or writing data (this is referred to as a request) to a main storage device via a system bus or responds to a read request. Response data (this is called reply)
It can be received via the system bus.

【0003】このシステムバスに複数台のプロセッサを
接続することによっていわゆるマルチプロセッサシステ
ムを構成することができ、プロセッサの接続台数が数台
から10台程度であれば、システム全体の性能は、プロ
セッサの接続台数にほぼ比例して向上する。
[0003] By connecting a plurality of processors to this system bus, a so-called multiprocessor system can be constructed. If the number of connected processors is from several to about ten, the performance of the entire system will be reduced. It increases almost in proportion to the number of connected devices.

【0004】同様に、システムバスに複数台の主記憶装
置を接続することによって物理メモリの拡大を図ること
もできる。この場合は、物理メモリ空間全体を分割して
各主記憶装置に割当てることにより、システム全体が単
一の物理メモリ空間を保有するように構成する。
Similarly, the physical memory can be enlarged by connecting a plurality of main storage devices to a system bus. In this case, the entire physical memory space is divided and assigned to each main storage device, so that the entire system has a single physical memory space.

【0005】更に大規模な高マルチプロセッサシステム
を構成するためには、システムバスにプロセッサや主記
憶装置等のノードを多数接続しなければならなくなる
が、現実的には、LSIの出力バッフアのドライブ能力
や遅延等の問題から、一つのシステムバスに接続できる
ノードの数に制限がある。
To construct a large-scale high-multiprocessor system, it is necessary to connect a large number of nodes such as a processor and a main storage device to a system bus. However, in practice, a drive for an output buffer of an LSI is required. Due to problems such as performance and delay, the number of nodes that can be connected to one system bus is limited.

【0006】このような問題を解決してシステムバスを
拡張する手段として、特開昭61−48060号公報に
は、二つのバスの間にバッフアを置いてシステムバスを
拡張するバスブリッジ方式が開示されている。この方式
では、システムバスは、バス延長モジュールを介して拡
張システムバスと接続され、双方のバスにそれぞれ主記
憶装置(メモリ)と入出力装置が接続される。システム
バスに送出されたメモリリード(RD)やメモリライト
(WR)等のリクエスト(コマンド)は、バス延長モジ
ュールを経由して他方の拡張システムバスに伝達され
る。
As a means for solving such problems and expanding the system bus, Japanese Patent Application Laid-Open No. 61-48060 discloses a bus bridge system in which a buffer is placed between two buses to expand the system bus. Have been. In this system, a system bus is connected to an expansion system bus via a bus extension module, and a main storage device (memory) and an input / output device are connected to both buses. Requests (commands) such as memory read (RD) and memory write (WR) sent to the system bus are transmitted to the other extended system bus via the bus extension module.

【0007】このように、バスブリッジ方式によってシ
ステムバスを拡張すると、一つのシステムバスによって
構成するシステムにの2倍のプロセッサまたは主記憶装
置を接続した情報処理システムを構築することが可能と
なる。
As described above, when the system bus is expanded by the bus bridge method, it is possible to construct an information processing system in which a processor or a main storage device twice as large as a system configured by one system bus is connected.

【0008】[0008]

【発明が解決しようとする課題】バス方式の情報処理シ
ステムにおいて、単位時間にシステムバス上に送出でき
るリクエストの数は、おおよそそのシステムバスに接続
しているプロセッサの台数に比例する。また、単位時間
にシステムバスが処理できるリクエストの数は、そのシ
ステムバスのバンド幅によってその上限が決定される。
従ってシステムバスに接続できるプロセッサの台数の上
限は、システムバスのバンド幅によって決定される。こ
の上限を超えた台数のプロセッサをシステムバスに接続
しても、システムバスの処理能力がボトルネックとなっ
て期待しただけの性能向上を得ることができない。
In a bus-type information processing system, the number of requests that can be transmitted on a system bus per unit time is approximately proportional to the number of processors connected to the system bus. The upper limit of the number of requests that can be processed by the system bus per unit time is determined by the bandwidth of the system bus.
Therefore, the upper limit of the number of processors that can be connected to the system bus is determined by the bandwidth of the system bus. Even if the number of processors exceeding the upper limit is connected to the system bus, the processing performance of the system bus becomes a bottleneck and the expected performance improvement cannot be obtained.

【0009】従って、上述のような従来のシステムバス
拡張方式によってシステムバスに接続するプロセッサの
台数を2倍にした場合は、単位時間にシステムバス上に
送出されるリクエストの数が倍増し、システムバスの処
理能力がボトルネックとなってシステム全体の性能向上
が得られないという問題点がある。
Therefore, when the number of processors connected to the system bus is doubled by the conventional system bus expansion method as described above, the number of requests transmitted on the system bus per unit time is doubled, There is a problem that the performance of the entire system cannot be improved due to the bottleneck due to the processing capacity of the bus.

【0010】本発明の目的は、二つのシステムバスを接
続して高マルチプロセッサシステムを構築するとき、性
能向上を妨げる要因であるシステムバスの処理能力のボ
トルネックを回避してシステム全体の性能向上を図るこ
とができるバス拡張装置を提供することにある。
An object of the present invention is to improve the performance of the entire system by avoiding a bottleneck in the processing capacity of the system bus, which is a factor hindering performance improvement, when a high multiprocessor system is constructed by connecting two system buses. Another object of the present invention is to provide a bus expansion device that can achieve the above.

【0011】[0011]

【課題を解決するための手段】本発明のバス拡張装置
は、それぞれ任意の数のプロセッサおよび主記憶装置お
よび入出力装置を接続している二つのシステムバスのそ
れぞれに接続し、前記二つのシステムバスのうちの一方
のシステムバス上に送出されたリクエストを他方のシス
テムバス上に転送するためのバス拡張装置であって、前
記システムバスと接続するバスインターフェースと、前
記バスインターフェースを介して前記システムバスから
受信した前記リクエストのアドレスが前記二つのシステ
ムバスのうちの何れのシステムバスに接続されている前
記主記憶装置に割当てられているアドレス空間に対して
アクセスすべきリクエストであるかを判断して転送すべ
きシステムバスを決定するフローティングアドレステー
ブルユニットと、前記フローティングアドレステーブル
ユニットからの情報を相手側のバス拡張装置のクラスタ
間インターフェースに送出するクラスタ間インターフェ
ースとを備えるものであり、特に、前記システムバスか
ら受信した前記リクエストのアドレスが前記二つのシス
テムバスのうちの何れのシステムバスに接続されている
前記主記憶装置に割当てられているアドレス空間に対し
てアクセスすべきリクエストであるか示す情報を保持す
るフローティングアドレステーブルと、前記フローティ
ングアドレステーブルからの情報によって前記リクエス
トが他方のシステムバスに転送すべきか否かを判断して
他方のシステムバスに転送すべでないとき他方のシステ
ムバスへの転送を阻止する論理回路とを有する前記フロ
ーティングアドレステーブルユニットを有するか、また
はあらかじめ所定の値を格納しているモード選択レジス
タと、前記モード選択レジスタからの信号によって前記
システムバスから受信した前記リクエストのアドレスの
うちの特定のビットのみを選択するセレクタと、前記セ
レクタの出力信号を入力して前記リクエストが他方のシ
ステムバスに転送すべきか否かを判断して他方のシステ
ムバスに転送すべでないとき他方のシステムバスへの転
送を阻止する論理回路とを有する前記フローティングア
ドレステーブルユニットを有するものである。
A bus expansion device according to the present invention is connected to each of two system buses connecting an arbitrary number of processors, a main storage device, and an input / output device, respectively. A bus expansion device for transferring a request transmitted on one system bus of the buses to another system bus, the bus expansion device being connected to the system bus, and the system extending via the bus interface. A determination is made as to which of the two system buses the address of the request received from the bus is a request to access an address space allocated to the main storage device connected to the system bus. Address table unit that determines the system bus to be transferred And an inter-cluster interface for transmitting information from the floating address table unit to the inter-cluster interface of the other bus expansion device. In particular, the address of the request received from the system bus is the address of the two system buses. A floating address table holding information indicating which request is to access an address space allocated to the main storage device connected to which system bus, and information from the floating address table. A logic circuit for determining whether the request should be transferred to the other system bus and preventing transfer to the other system bus when the request should not be transferred to the other system bus. A mode selection register that has or stores a predetermined value in advance, a selector that selects only a specific bit of an address of the request received from the system bus by a signal from the mode selection register, A logic circuit for receiving an output signal of a selector, determining whether the request should be transferred to the other system bus, and preventing transfer to the other system bus when the request should not be transferred to the other system bus. It has a floating address table unit.

【0012】[0012]

【発明の実施の形態】次に、本発明の実施の形態につい
て図面を参照して説明する。
Next, embodiments of the present invention will be described with reference to the drawings.

【0013】図1は本発明の第一の実施形態を示すブロ
ック図、図2は図1の実施形態の動作を示すフローチャ
ート、図3は図1の実施形態のメモリアレイユニットの
詳細を示すブロック図である。
FIG. 1 is a block diagram showing a first embodiment of the present invention, FIG. 2 is a flowchart showing an operation of the embodiment of FIG. 1, and FIG. 3 is a block showing details of a memory array unit of the embodiment of FIG. FIG.

【0014】図1において、システムバス1aには、プ
ロセッサ(CPU)50aおよび主記憶装置30aおよ
びバス拡張装置10aが接続されている。これらをクラ
スタ2aと称する。同様に、システムバス1bには、プ
ロセッサ(CPU)50bおよび主記憶装置30bおよ
びバス拡張装置10bが接続されている。これらをクラ
スタ2bと称する。プロセッサ(CPU)50aと50
b、および主記憶装置30aと30b、およびバス拡張
装置10aと10bは、それぞれ同じ構成および動作の
装置である。
In FIG. 1, a processor (CPU) 50a, a main storage device 30a, and a bus expansion device 10a are connected to a system bus 1a. These are referred to as clusters 2a. Similarly, a processor (CPU) 50b, a main storage device 30b, and a bus expansion device 10b are connected to the system bus 1b. These are referred to as clusters 2b. Processors (CPU) 50a and 50
b, the main storage devices 30a and 30b, and the bus expansion devices 10a and 10b have the same configuration and operation, respectively.

【0015】主記憶装置30aおよび30bは、一つの
連続した物理メモリ空間を2分割した物理メモリ空間の
うちの一方を、それぞれの固有の物理メモリ空間として
割当てられている。主記憶装置30aに割当てられてい
る物理メモリ空間をクラスタ2a系メモリ空間、主記憶
装置30bに割当てられている物理メモリ空間をクラス
タ2b系メモリ空間と称する。
In the main storage devices 30a and 30b, one of physical memory spaces obtained by dividing one continuous physical memory space into two is allocated as a unique physical memory space. The physical memory space allocated to the main storage device 30a is called a cluster 2a system memory space, and the physical memory space allocated to the main storage device 30b is called a cluster 2b system memory space.

【0016】主記憶装置30aは、システムバス1aと
接続するバスインターフェース31aと、システムバス
1aを介して入力したアドレスをデコードするアドレス
デコーダ32aと、データを記憶する主記憶部33aと
を有している。主記憶装置30bも同様に、バスインタ
ーフェース31bとアドレスデコーダ32bと主記憶部
33bとを有している。
The main storage device 30a has a bus interface 31a connected to the system bus 1a, an address decoder 32a for decoding an address input via the system bus 1a, and a main storage section 33a for storing data. I have. Similarly, the main storage device 30b includes a bus interface 31b, an address decoder 32b, and a main storage unit 33b.

【0017】バス拡張装置10aは、システムバス1a
と接続するバスインターフェース11と、相手側のクラ
スタ2bと接続するクラスタ間インターフェース13
と、物理メモリ空間がシステムバス1aまたは1bの何
れに接続している主記憶装置30aまたは30bに割当
てらてているかを示す割当て情報を記録したフローティ
ングアドレステーブル(FAT)を内蔵したフローティ
ングアドレステーブルユニット(FAT UNIT)1
2aを有している。バス拡張装置10bも全く同じ構成
である。
The bus expansion device 10a includes a system bus 1a
Interface 11 connected to the other cluster 2 and inter-cluster interface 13 connected to the other cluster 2b
And a floating address table unit incorporating a floating address table (FAT) recording allocation information indicating whether the physical memory space is allocated to the main storage device 30a or 30b connected to the system bus 1a or 1b. (FAT UNIT) 1
2a. The bus expansion device 10b has exactly the same configuration.

【0018】フローティングアドレステーブルユニット
(FAT UNIT)12aは、図3に示すように、ア
ドレスレジスタ41および46と、ヴァリッドレジスタ
(Vレジスタ)42および47と、クラスタレジスタ4
3と、フローティングアドレステーブル(FAT)44
と、論理回路45とを有している。
As shown in FIG. 3, the floating address table unit (FAT UNIT) 12a includes address registers 41 and 46, valid registers (V registers) 42 and 47, and a cluster register 4
3 and floating address table (FAT) 44
And a logic circuit 45.

【0019】アドレスレジスタ41および46は、アド
レスの幅が32ビットのリクエストを保持する。Vレジ
スタ42および47は、それぞれアドレスレジスタ41
および46が保持しているリクエストのアドレスの値が
有効(ヴァリッド)であるか否かを示す情報を格納す
る。具体的には、リクエストを受信したとき(有効なア
ドレスを保持したとき)は“1”を格納し、リクエスト
を受信していないとき(有効なアドレスを保持しないと
き)は“0”を格納する。クラスタレジスタ43は、ク
ラスタ情報を格納している。このクラスタ情報は、本情
報処理システムの初期化のときに設定され、その後設定
値が変更されることはない。クラスタ情報の設定値は、
クラスタ2aのバス拡張装置10aについては“0”で
あり、クラスタ2bのバス拡張装置10bについては
“1”である。フローティングアドレステーブル(FA
T)44は、メモリアレイによって構成されており、物
理メモリ空間がシステムバス1aまたは1bの何れに接
続している主記憶装置30aまたは30bに割当てら
ているかを示す割当て情報(物理メモリ空間とクラスタ
との対応を示す情報)を記録する。具体的には、FAT
44は、リクエストアドレスによって索引され、索引さ
れたアドレスがクラスタ2a系メモリ空間に割当てられ
ていときは“0”を、クラスタ2b系メモリ空間に割
当てられていときは“1”を取出す。本実施形態で
は、リクエストアドレスのビット21〜25の5ビット
のビット信号62を用いてFAT44を索引する。FA
T44は、本情報処理システムの初期化のときに設定さ
れ、その後設定値が変更されることはない。論理回路4
5は、排他的オア回路(XCR)とアンド回路(AN
D)とを組合わせた回路である。
The address register 41 and 46, the width of the address holding the requests of 32 bits. The V registers 42 and 47 respectively include an address register 41
And information indicating whether or not the value of the address of the request held by and is valid (valid). Specifically, when a request is received (when a valid address is held), “1” is stored, and when a request is not received (when a valid address is not held), “0” is stored. . The cluster register 43 stores cluster information. This cluster information is set when the information processing system is initialized, and the set value is not changed thereafter. The setting value of the cluster information is
The value is "0" for the bus expansion device 10a of the cluster 2a and "1" for the bus expansion device 10b of the cluster 2b. Floating address table (FA
T) 44 is configured by a memory array, assigned indicating the physical memory space is Re allocated et <br/> in the main memory 30a or 30b are connected to either the system bus 1a or 1b Information ( (Information indicating the correspondence between the physical memory space and the cluster). Specifically, FAT
44 is indexed by the request address, when a "0" when the index address is that assigned to the cluster 2a system memory space, that are assigned to the cluster 2b system memory space taken out "1". In the present embodiment, the FAT 44 is indexed using a 5-bit bit signal 62 of bits 21 to 25 of the request address. FA
T44 is set when the information processing system is initialized, and the set value is not changed thereafter. Logic circuit 4
5 is an exclusive OR circuit (XCR) and an AND circuit (AN
D).

【0020】次に、上述のように構成したバス拡張装置
の動作について、図2を参照して説明する。
Next, the operation of the bus expansion apparatus configured as described above will be described with reference to FIG.

【0021】クラスタ2aのプロセッサ(CPU)50
aからクラスタ2aの主記憶装置30aに対してアクセ
スする場合は、まずCPU50aからシステムバス1a
にリクエストが送出される。このリクエストは、バス拡
張装置10aのバスインターフェース11で受信される
(ステップ21)。リクエストを受信したバスインター
フェース11は、そのリクエストのアドレスをフローテ
ィングアドレステーブルユニット(FAT UNIT)
12aに送り、FAT UNIT12aは、そのリクエ
ストのアドレスでフローティングアドレステーブル(F
AT)44を検索する(ステップ22)。この結果、こ
のリクエストはクラスタ2a系メモリ空間に対してアク
セスするリクエストであると判明するため(ステップ2
3)、バス拡張装置10a内で処理を終了する。CPU
50aからシステムバス1aにリクエストが送出された
とき、主記憶装置30aのバスインターフェース31a
も同時にそのリクエストを受信するが、アドレスデコー
ダ32aによってこのリクエストが主記憶装置30aに
対するアクセスであることが判明するため、このリクエ
ストは、主記憶部33aに送られ、このリクエストがリ
ードリクエストであるときは、それに対するリプライ
を、上述の経路と逆の経路でCPU50aに返送され
る。
The processor (CPU) 50 of the cluster 2a
To access the main storage device 30a of the cluster 2a from a, the CPU 50a first accesses the system bus 1a
A request is sent to. This request is received by the bus interface 11 of the bus expansion device 10a (Step 21). Upon receiving the request, the bus interface 11 stores the address of the request in a floating address table unit (FAT UNIT).
12a, and the FAT UNIT 12a sends a floating address table (F
AT) 44 (step 22). As a result, this request is determined to be a request for accessing the memory space of the cluster 2a system (step 2).
3) The processing is terminated in the bus expansion device 10a. CPU
When a request is sent from the system bus 1a to the system bus 1a, the bus interface 31a of the main storage device 30a
At the same time, the request is sent to the main storage unit 33a because the address decoder 32a determines that the request is an access to the main storage device 30a. Is returned to the CPU 50a via a route opposite to the above route.

【0022】クラスタ2aのプロセッサ(CPU)50
aからクラスタ2bの主記憶装置30bに対してアクセ
スする場合は、まずCPU50aからシステムバス1a
にリクエストが送出される。このリクエストは、バス拡
張装置10aのバスインターフェース11で受信される
(ステップ21)。これと同時に主記憶装置30aのバ
スインターフェース31aもそのリクエストを受信する
が、アドレスデコーダ32aによってこのリクエストが
主記憶装置30aに対するアクセスでないことが判明す
るため、主記憶装置30a内におけるこのリクエストの
処理は中止される。バスインターフェース11で受信さ
れたリクエストは、FAT UNIT12aに送られ、
そのリクエストのアドレスによってフローティングアド
レステーブル(FAT)44を索引される(ステップ2
2)。この結果、このリクエストはクラスタ2b系メモ
リ空間に対してアクセスするリクエストであると判明す
るため(ステップ23)、このリクエストはクラスタ2
aのバス拡張装置10aのクラスタ間インターフエース
13から相手側のクラスタ2bのバス拡張装置10bの
クラスタ間インターフエース13に送出される(ステッ
プ24)。クラスタ2bのバス拡張装置10bのクラス
タ間インターフエース13がリクエストを受信すると、
バス拡張装置10bのバスインターフェース11は、シ
ステムバス1bにそのリクエストを送出する(ステップ
25)。これによってクラスタ2bの主記憶装置30b
は、バスインターフェース31bによってそのリクエス
トを受信し、アドレスデコーダ32bを経由して主記憶
部33bに伝達する。このリクエストがリードリクエス
トであるときは、それに対するリプライは、上述の経路
と逆の経路によってCPU50aに返送される。
The processor (CPU) 50 of the cluster 2a
To access the main storage device 30b of the cluster 2b from a, the CPU 50a first accesses the system bus 1a
A request is sent to. This request is received by the bus interface 11 of the bus expansion device 10a (Step 21). At the same time, the bus interface 31a of the main storage device 30a also receives the request, but since the address decoder 32a determines that the request is not an access to the main storage device 30a, the processing of the request in the main storage device 30a is Aborted. The request received by the bus interface 11 is sent to the FAT UNIT 12a,
The floating address table (FAT) 44 is indexed by the address of the request (step 2).
2). Consequently, in order to prove this request is a request to access the cluster 2b system memory space (step 23), the requests cluster 2
A is transmitted from the inter-cluster interface 13 of the bus expansion device 10a to the inter-cluster interface 13 of the bus expansion device 10b of the other cluster 2b (step 24). When the intercluster INTERFACE 13 of the bus expansion unit 10b cluster 2b receives the requests,
The bus interface 11 of the bus expansion device 10b sends the request to the system bus 1b (Step 25). Thereby, the main storage device 30b of the cluster 2b
Receives the request via the bus interface 31b and transmits it to the main storage unit 33b via the address decoder 32b. When the request is a read request, a reply to the request is returned to the CPU 50a via a route reverse to the above-described route.

【0023】次に、バス拡張装置10aのFAT UN
IT12aの動作の詳細について、図3を参照して説明
する。
Next, the FAT UN of the bus expansion device 10a
The operation of the IT 12a will be described in detail with reference to FIG.

【0024】本FAT UNIT12aはパイプライン
構造になっており、バスインターフェース11から受信
したリクエストは、クロック信号に同期してアドレスレ
ジスタ41および46に伝達され、アドレスレジスタ4
6からクラスタ間インターフェース13に送出される。
The FAT UNIT 12a has a pipeline structure, and a request received from the bus interface 11 is transmitted to the address registers 41 and 46 in synchronization with a clock signal.
6 to the inter-cluster interface 13.

【0025】FAT UNIT12aは、バスインター
フェース11からリクエストを受信すると、まず始めの
クロックサイクルでアドレスレジスタ41にそのリクエ
トを格納し、ヴァリッドレジスタ(Vレジスタ)42
に“1”を格納する。次のクロックサイクルで、アドレ
スレジスタ41のビット21〜25を用いてフローティ
ングアドレステーブル(FAT)44を索引し、その結
果は論理回路45に送られる。論理回路45は、FAT
44の出力信号64とクラスタレジスタ43の出力信号
65とが異った信号であり、かつVレジスタ42の出力
信号6が“1”のときに“1”を出力する。従ってこ
の場合は、FAT44の出力信号64が“1”を出力し
た場合にのみ“1”を出力する。すなわち、受信したリ
クエストがクラスタ2a系メモリ空間に対するアクセス
である場合にのみ論理回路45の出力信号66は“1”
となる。論理回路45の出力信号66はVレジスタ47
に送られて格納される。このとき、アドレスレジスタ4
6には、出力信号61によってアドレスレジスタ41か
ら送られてきたリクエストが格納される。更に次のクロ
ックサイクルで、アドレスレジスタ46からクラスタ間
インターフエース13に出力信号67によってリクエス
トが送出されるが、このリクエストがクラスタ2a系メ
モリ空間に対するアクセスである場合は、Vレジスタ4
7の出力信号68が“0”であるため、クラスタ間イン
ターフエース13は、このリクエストは無効であるとみ
なして以後の処理は行わない。
[0025] FAT UNIT12a receives a request from the bus interface 11, and stores the requesters <br/> be sampled in the address register 41 in the First clock cycle, Valentino lid register (V register) 42
To "1". In the next clock cycle, the floating address table (FAT) 44 is indexed using bits 21 to 25 of the address register 41, and the result is sent to the logic circuit 45. The logic circuit 45
44 is a signal the output signal 65 of the output signal 64 and the cluster register 43 Tsu different of, and the output signal 6 3 V register 42 outputs "1" when "1". Therefore, in this case, "1" is output only when the output signal 64 of the FAT 44 outputs "1". That is, the output signal 66 of the logic circuit 45 is "1" only when the received request is an access to the memory space of the cluster 2a system.
Becomes The output signal 66 of the logic circuit 45 is
Sent to and stored. At this time, the address register 4
The 6, requests sent from the address register 41 by the output signal 61 is stored. In the next clock cycle, a request is made from the address register 46 to the inter-cluster interface 13 by the output signal 67.
Although bets is sent, if this requests is access to the cluster 2a system memory space, V register 4
7 is “0”, the inter-cluster interface 13 regards this request as invalid and does not perform the subsequent processing.

【0026】バス拡張装置10bのFAT UNIT1
2aの動作も全く同様である。
FAT UNIT1 of the bus expansion device 10b
The operation of 2a is exactly the same.

【0027】バス拡張装置10aおよび10b内のFA
T UNIT12aと、主記憶装置30a内のアドレス
デコーダ32aおよび主記憶装置30b内のアドレスデ
コーダ32bとは、機能的にほぼ同じものである。しか
し、主記憶装置30a内のアドレスデコーダ32aおよ
び主記憶装置30b内のアドレスデコーダ32bが保持
する情報は、物理メモリ空間の中で自主記憶に割あてら
れた領域と他の領域とを区別するための情報であるが、
バス拡張装置10aおよび10b内のFATUNIT1
2aが保持する情報は、物理メモリ空間の中で自己の属
するクラクタ系メモリ空間に割当てられた領域と他のク
ラクタ系メモリ空間に割当てられた領域とを区別するた
めの情報であることが異なっている。
The FA in the bus expansion devices 10a and 10b
The T UNIT 12a and the address decoder 32a in the main storage device 30a and the address decoder 32b in the main storage device 30b are functionally substantially the same. However, information held by the address decoder 32a in the main storage device 30a and the information held by the address decoder 32b in the main storage device 30b are used to distinguish an area allocated to the self-storage from another area in the physical memory space. Information
FATUNIT1 in bus expansion devices 10a and 10b
The information held by 2a is different from the physical memory space in that it is information for distinguishing between an area allocated to a clutter-based memory space to which it belongs and an area allocated to another clutter-based memory space. I have.

【0028】上述のバス拡張装置は、種々の構成のバス
方式の情報処理システムに対応することが可能である。
すなわち、双方のシステムバスにそれぞれ2台ずつの主
記憶装置を接続し、合計4台の主記憶装置を有する情報
処理システムの場合や、一方のシステムバスにのみ主記
憶装置を接続した情報処理システムの場合に、アドレス
デコーダ32aおよび32b並びにFAT UNIT1
2aに格納する情報の内容を変更するのみで、容易に対
応することが可能である。
The above-described bus expansion device can support various types of bus-type information processing systems.
That is, an information processing system in which two main storage devices are connected to both system buses and a total of four main storage devices are connected, or an information processing system in which the main storage device is connected to only one system bus , The address decoders 32a and 32b and the FAT UNIT1
Only by changing the content of the information stored in 2a, it is possible to easily cope with it.

【0029】図4は本発明の第二の実施形態のフローテ
ィングアドレステーブルユニット(FAT UNIT)
の詳細を示すブロック図である。
FIG. 4 shows a floating address table unit (FAT UNIT) according to a second embodiment of the present invention.
FIG. 4 is a block diagram showing the details of.

【0030】本実施形態は、図1の実施形態のバス拡張
装置10aおよび10bのフローティングアドレステー
ブルユニット(FAT UNIT)12aのフローティ
ングアドレステーブル(FAT)44の代りに、モード
選択レジスタ(MODE)およびセレクタを用いたもの
である。
In this embodiment, a mode selection register (MODE) and a selector are used instead of the floating address table (FAT) 44 of the floating address table unit (FAT UNIT) 12a of the bus expansion devices 10a and 10b of the embodiment of FIG. Is used.

【0031】すなわち図4に示すように、フローティン
グアドレステーブルユニット(FAT UNIT)12
bは、アドレスレジスタ41および46と、ヴァリッド
レジスタ(Vレジスタ)42および47と、クラスタレ
ジスタ43と、モード選択レジスタ(MODE)78
と、セレクタ74と、論理回路45とを有している。
That is, as shown in FIG. 4, the floating address table unit (FAT UNIT) 12
b denotes address registers 41 and 46, valid registers (V registers) 42 and 47, a cluster register 43, and a mode selection register (MODE) 78.
, A selector 74 and a logic circuit 45.

【0032】これらの構成要素のうち、アドレスレジス
タ41および46と、ヴァリッドレジスタ(Vレジス
タ)42および47と、クラスタレジスタ43と、論理
回路45の構成および動作は、図1の各対応する要素の
構成および動作と同じである。モード選択レジスタ(M
ODE)78は、“00”または“01”または“1
0”または“11”の何れか一つの値を格納する。この
MODE78に格納する値は、本情報処理システムの初
期化のときに設定され、その後設定値が変更されること
はない。MODE78に格納した値はセレクタ74に送
られて、アドレスレジスタ41から取出したリクエスト
アドレスの何れのビットを選択するかを指示する。図4
においては、アドレスレジスタ41のビット22〜25
の4ビットがビット信号82としてセレクタ74に取出
され、それらのうちの任意のビットがMODE78の指
示によって使用される。
Of these components, the configuration and operation of the address registers 41 and 46, the valid registers (V registers) 42 and 47, the cluster register 43, and the logic circuit 45 are shown in FIG. The configuration and operation are the same. Mode selection register (M
ODE) 78 is “00” or “01” or “1”.
The value stored in the MODE 78 is set at the time of initialization of the information processing system, and the set value is not changed thereafter. The stored value is sent to the selector 74 to indicate which bit of the request address extracted from the address register 41 is to be selected.
, Bits 22 to 25 of the address register 41
Are taken out to the selector 74 as the bit signal 82, and arbitrary bits among them are used by the instruction of the MODE 78.

【0033】次に、上述のように構成したFAT UN
IT12bの動作について、クラスタ2aのFAT U
NIT12bを例として説明する。クラスタ2bのFA
TUNIT12bの動作も同様である。
Next, the FAT UN configured as described above is used.
Regarding the operation of IT 12b, FAT U of cluster 2a
The NIT 12b will be described as an example. FA of cluster 2b
The operation of the TUNIT 12b is the same.

【0034】FAT UNIT12bは、バスインター
フェース11からリクエストを受信すると、まず始めの
クロックサイクルでアドレスレジスタ41にそのリクエ
トを格納し、ヴァリッドレジスタ(Vレジスタ)42
に“1”を格納する。次のクロックサイクルで、アドレ
スレジスタ41のビット22〜25がビット信号82と
してセレクタ74に取出され、それらのうちの何れかが
MODE78の出力信号88によって選択されて出力信
号84として論理回路45に送られる。論理回路45
は、セレクタ74の出力信号84とクラスタレジスタ4
3の出力信号65とが異った信号であり、かつVレジス
タ42の出力信号65が“1”のとき“1”を出力す
る。すなわち、受信したリクエストがクラスタ2b系メ
モリ空間に対するアクセスである場合にのみ論理回路4
5の出力信号66は“1”となる。論理回路45の出力
信号66はVレジスタ47に送られて格納される。更に
次のクロックサイクルで、アドレスレジスタ46からク
ラスタ間インターフエース13に出力信号67によって
リクエストが送出されるが、このリクエストがクラスタ
2a系メモリ空間に対するアクセスである場合は、Vレ
ジスタ47の出力信号68が“0”であるため、クラス
タ間インターフエース13は、このリクエストは無効で
あるとみなして以後の処理は行わない。
[0034] FAT UNIT12b receives a request from the bus interface 11, and stores the requesters <br/> be sampled in the address register 41 in the First clock cycle, Valentino lid register (V register) 42
To "1". In the next clock cycle, bits 22 to 25 of address register 41 are taken out by selector 74 as bit signal 82, and any of them is selected by output signal 88 of MODE 78 and sent to logic circuit 45 as output signal 84. Can be Logic circuit 45
Is the output signal 84 of the selector 74 and the cluster register 4
3 is different from the output signal 65, and the output signal 65 of the V register 42 is "1". That is, only when the received request is an access to the memory space of the cluster 2b system, the logic circuit 4
5 is "1". The output signal 66 of the logic circuit 45 is sent to and stored in the V register 47. Further in the next clock cycle, but by the output signal 67 to the inter-cluster INTERFACE 13 from the address register 46 is <br/> requests sent, if the requests are access to the cluster 2a system memory space, V Since the output signal 68 of the register 47 is “0”, the inter-cluster interface 13 regards this request as invalid and does not perform the subsequent processing.

【0035】[0035]

【発明の効果】以上説明したように、本発明のバス拡張
装置は、バスインターフェースを介してシステムバスか
ら受信したリクエストのアドレスが二つのシステムバス
のうちの何れのシステムバスに接続されている主記憶装
置に割当てられているアドレス空間に対してアクセスす
べきリクエストであるかを判断して転送すべきシステム
バスを決定するフローティングアドレステーブルユニッ
トを設けることにより、不必要なリクエストをシステム
バスに送出するのを抑止することができるため、システ
ムバスの負荷を軽減してその処理能力のボトルネックを
回避することができ、従ってシステム全体の性能向上を
図ることができるという効果がある。
As described above, according to the bus expansion apparatus of the present invention, the address of the request received from the system bus via the bus interface is connected to any one of the two system buses. An unnecessary request is sent to the system bus by providing a floating address table unit that determines whether the request is to access the address space allocated to the storage device and determines a system bus to transfer. Therefore, it is possible to reduce the load on the system bus and avoid a bottleneck in its processing capacity, and thus to improve the performance of the entire system.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の第一の実施形態を示すブロック図であ
る。
FIG. 1 is a block diagram showing a first embodiment of the present invention.

【図2】図1の実施形態の動作を示すフローチャートで
ある。
FIG. 2 is a flowchart showing the operation of the embodiment of FIG.

【図3】図1の実施形態のフローティングアドレステー
ブルユニットの詳細を示すブロック図である。
FIG. 3 is a block diagram showing details of a floating address table unit of the embodiment of FIG. 1;

【図4】本発明の第二の実施形態のフローティングアド
レステーブルユニットの詳細を示すブロック図である。
FIG. 4 is a block diagram showing details of a floating address table unit according to a second embodiment of the present invention.

【符号の説明】[Explanation of symbols]

1a・1b システムバス 2a・2b クラスタ 10a・10b バス拡張装置 11 バスインターフェース 12a・12b フローティングアドレステーブルユ
ニット(FAT UNIT) 13 クラスタ間インターフェース 21〜25 ステップ 30a・30b 主記憶装置 31a・31b バスインターフェース 32a・32b アドレスデコーダ 33a・33b 主記憶部 50a・50b プロセッサ(CPU) 41・46 アドレスレジスタ 42・47 ヴァリッドレジスタ(Vレジスタ) 43 クラスタレジスタ 44 フローティングアドレステーブル(FAT) 45 論理回路 61・63・64・65・66・67・68・84・8
8 出力信号 62・82 ビット信号 74 セレクタ 78 モード選択レジスタ(MODE)
1a, 1b System bus 2a, 2b Cluster 10a, 10b Bus expansion device 11 Bus interface 12a, 12b Floating address table unit (FAT UNIT) 13 Inter-cluster interface 21-25 Step 30a, 30b Main storage device 31a, 31b Bus interface 32a, 32b Address decoder 33a / 33b Main storage unit 50a / 50b Processor (CPU) 41/46 Address register 42/47 Valid register (V register) 43 Cluster register 44 Floating address table (FAT) 45 Logic circuit 61/63/64 / 65, 66, 67, 68, 84.8
8 output signal 62/82 bit signal 74 selector 78 mode selection register (MODE)

Claims (2)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 それぞれ任意の数のプロセッサおよび主
記憶装置および入出力装置を接続している二つのシステ
ムバスのそれぞれに接続し、前記二つのシステムバスの
うちの一方のシステムバス上に送出されたリクエストを
他方のシステムバス上に転送するためのバス拡張装置で
あって、 前記システムバス接続するバスインターフェースと、
前記バスインターフェースを介して前記システムバスか
ら受信した前記リクエストのアドレスが前記二つのシス
テムバスのうちの何れのシステムバスに接続されている
前記主記憶装置に割当てられているアドレス空間に対し
てアクセスすべきリクエストであるかを判断して転送す
べきシステムバスを決定するフローティングアドレステ
ーブルユニットと、前記リクエストを相手側のバス拡張
装置のクラスタ間インターフエースに送出するクラスタ
間インターフエースとを備え、 前記フローティングアドレステーブルユニットが、前記
システムバスから受信した前記リクエストのアドレスが
前記二つのシステムバスのうちの何れのシステムバス
接続されている前記主記憶装置に割当てられているアド
レス空間に対してアクセスすべきリクエストであるかを
示す情報を保持するフローティングアドレステーブル
と、前記フローティングアドレステーブルの出力信号と
あらかじめ設定されるているクラスタ情報を格納してい
るクラスタレジスタからの出力信号と前記バスインター
フェースから入力した信号を格納する第一のヴァリッド
レジスタの出力信号とを入力し、前記フローティングア
ドレステーブルの出力信号と前記クラスタレジスタから
の出力信号とが異った信号であり、かつ前記第一のヴァ
リッドレジスタの出力信号が“1”のときに“1”を出
力する論理回路と、前記論理回路の出力信号を入力して
前記クラスタ間インターフエースに対して出力信号を出
力する第二のヴァリッドレジスタと、前記バスインター
フェースから入力した信号を保持する第一のアドレスレ
ジスタの出力信号を入力して前記クラスタ間インターフ
エースに対して出力信号を出力する第二のアドレスレジ
スタとを有することを特徴とするバス拡張装置。
1. An arbitrary number of processors, a main storage device, and an input / output device, which are connected to two system buses respectively, and transmitted to one of the two system buses. A bus expansion device for transferring the request on the other system bus , the bus interface connecting to the system bus,
An address of the request received from the system bus via the bus interface accesses an address space allocated to the main storage device connected to any one of the two system buses. A floating address table unit for determining a system bus to be transferred by judging whether the request is a request to be transferred, and an inter-cluster interface for sending the request to an inter-cluster interface of a bus expansion device on the other end; The address table unit should access an address space allocated to the main storage device connected to any one of the two system buses, in which an address of the request received from the system bus is connected. Request A floating address table holding information indicating whether or not the data is a floating point table, an output signal from the floating address table, an output signal from a cluster register storing predetermined cluster information, and a signal input from the bus interface. inputs the output signal of the first Valentin lid register for storing said a signal output signal and has Tsu different from the output signal and the cluster register floating address table, and the first Cordova lid register a logic circuit for outputting "1" when the output signal is "1", inputs an output signal of said logic circuit
An output signal is output to the inter-cluster interface.
A second valid register and the bus interface
The first address register that holds the signal input from the interface
Input the output signal of the
A second address register that outputs an output signal to Ace
Bus extension device characterized by having a register.
【請求項2】 それぞれ任意の数のプロセッサおよび主
記憶装置および入出力装置を接続している二つのシステ
ムバスのそれぞれに接続し、前記二つのシステムバスの
うちの一方のシステムバス上に送出されたリクエストを
他方のシステムバス上に転送するためのバス拡張装置で
あって、 前記システムバス接続するバスインターフェースと、
前記バスインターフェースを介して前記システムバスか
ら受信した前記リクエストのアドレスが前記二つのシス
テムバスのうちの何れのシステムバスに接続されている
前記主記憶装置に割当てられているアドレス空間に対し
てアクセスすべきリクエストであるかを判断して転送す
べきシステムバスを決定するフローティングアドレステ
ーブルユニットと、前記リクエストを相手側のバス拡張
装置のクラスタ間インターフエースに送出するクラスタ
間インターフエースとを備え、 前記フローティングアドレステーブルユニットが、あら
かじめ所定の値を格納しているモード選択レジスタと、
前記モード選択レジスタからの信号によって前記システ
ムバスから受信した前記リクエストのアドレスのうちの
特定のビットのみを選択するセレクタと、前記セレクタ
の出力信号とあらかじめ設定されるているクラスタ情報
を格納しているクラスタレジスタからの出力信号と前記
バスインターフェースから入力した信号を格納する第一
のヴァリッドレジスタの出力信号とを入力して前記リク
エストが他方のシステムバスに転送すべきか否かを判断
して他方のシステムバスに転送すべきでないとき他方の
システムバスへの前記リクエストの転送を阻止する信号
を出力する論理回路と、前記論理回路の出力信号を入力
して前記クラスタ間インターフエースに対して出力信号
を出力する第二のヴァリッドレジスタと、前記バスイン
ターフェースから入力した信号を保持する第一のアドレ
スレジスタの出力信号を入力して前記クラスタ間インタ
ーフエースに対して出力信号を出力する第二のアドレス
レジスタとを有することを特徴とするバス拡張装置。
2. A system for connecting an arbitrary number of processors, a main storage device, and an input / output device to each of two system buses, and transmitting the data to one of the two system buses. A bus expansion device for transferring the request on the other system bus , the bus interface connecting to the system bus,
An address of the request received from the system bus via the bus interface accesses an address space allocated to the main storage device connected to any one of the two system buses. A floating address table unit for determining a system bus to be transferred by judging whether the request is a request to be transferred, and an inter-cluster interface for sending the request to an inter-cluster interface of a bus expansion device on the other end; A mode selection register in which an address table unit stores a predetermined value in advance;
A selector for selecting only a specific bit of an address of the request received from the system bus according to a signal from the mode selection register; an output signal of the selector and cluster information set in advance;
The output signal from the cluster register storing
First to store the signal input from the bus interface
And determining whether or not the request should be transferred to the other system bus, and transferring the request to the other system bus when the request should not be transferred to the other system bus. a logic circuit for outputting a signal to block, receiving the output signal of said logic circuit
Output signal to the inter-cluster interface
A second valid register for outputting
The first address that holds the signal input from the interface
Register output signal and input the inter-cluster interface.
Address to output the output signal to the interface
A bus expansion device comprising a register .
JP8069886A 1996-03-26 1996-03-26 Bus extender Expired - Fee Related JP2972568B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8069886A JP2972568B2 (en) 1996-03-26 1996-03-26 Bus extender

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8069886A JP2972568B2 (en) 1996-03-26 1996-03-26 Bus extender

Publications (2)

Publication Number Publication Date
JPH09259076A JPH09259076A (en) 1997-10-03
JP2972568B2 true JP2972568B2 (en) 1999-11-08

Family

ID=13415679

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8069886A Expired - Fee Related JP2972568B2 (en) 1996-03-26 1996-03-26 Bus extender

Country Status (1)

Country Link
JP (1) JP2972568B2 (en)

Also Published As

Publication number Publication date
JPH09259076A (en) 1997-10-03

Similar Documents

Publication Publication Date Title
US5870625A (en) Non-blocking memory write/read mechanism by combining two pending commands write and read in buffer and executing the combined command in advance of other pending command
US6393512B1 (en) Circuit and method for detecting bank conflicts in accessing adjacent banks
JP4560646B2 (en) Apparatus and method for direct memory access in a hub-based memory system
US5155731A (en) Error logging data storing system
US6170070B1 (en) Test method of cache memory of multiprocessor system
US20050210185A1 (en) System and method for organizing data transfers with memory hub memory modules
KR20000076226A (en) Dram with integral sram and systems and methods using the same
JP2001142842A (en) Dma handshake protocol
US6223253B1 (en) Word selection logic to implement an 80 or 96-bit cache SRAM
US7899940B2 (en) Servicing commands
JP2002132701A (en) Memory control unit
JP2561261B2 (en) Buffer storage access method
JP2731742B2 (en) Parallel computer with cluster configuration
JP2972568B2 (en) Bus extender
US6349370B1 (en) Multiple bus shared memory parallel processor and processing method
US7240144B2 (en) Arbitration of data transfer requests
JP2003316571A (en) Parallel processor
JPH11232213A (en) Data transfer system for input/output device
JP4431492B2 (en) Data transfer unit that supports multiple coherency granules
JPH0916468A (en) Memory access system
JP2853652B2 (en) Packet transmitting method and apparatus in inter-processor communication
WO2001050267A2 (en) Dual cache with multiple interconnection operation
JP3063501B2 (en) Memory access control method
KR19990071122A (en) Multiprocessor circuit
JPH0743668B2 (en) Access control device

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19990810

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees