JPH0512220A - Multiprocessor system - Google Patents

Multiprocessor system

Info

Publication number
JPH0512220A
JPH0512220A JP16595891A JP16595891A JPH0512220A JP H0512220 A JPH0512220 A JP H0512220A JP 16595891 A JP16595891 A JP 16595891A JP 16595891 A JP16595891 A JP 16595891A JP H0512220 A JPH0512220 A JP H0512220A
Authority
JP
Japan
Prior art keywords
bus
packet
address
memory
system
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP16595891A
Other languages
Japanese (ja)
Inventor
Yukio Kumazawa
熊澤幸夫
Original Assignee
Fuji Xerox Co 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 Fuji Xerox Co Ltd, 富士ゼロツクス株式会社 filed Critical Fuji Xerox Co Ltd
Priority to JP16595891A priority Critical patent/JPH0512220A/en
Publication of JPH0512220A publication Critical patent/JPH0512220A/en
Application status is Pending legal-status Critical

Links

Abstract

PURPOSE:To reduce the traffic of a system bus in multiprocessor systems and to improve the throughput of the system. CONSTITUTION:The blocks A and B of the plural multiprocessor systems where different system buses 29 and 30 are set to be centers are connected to back plane buses 29 and 31 through routers 43 and 44. Data is transferred between the memories or between the processors and the memories by using a packet to which a request destination address is added. The content of the packet on the respective system buses 29 and 30 or the back plane bus 31 is analyzed in the routers 43 and 44, and the propriety of the transfer of the packet between the buses is controlled according to whether the request destination address of the packet is a memory address in the system bus or not.

Description

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

【0001】 [0001]

【産業上の利用分野】本発明は、いくつかのプロセッサとキャッシュメモリとメモリからなるプロセッサシステムのブロックを更に複数ブロック接続したマルチプロセッサシステムに関し、特に各ブロック間のデータがルータを介してパケット形式で送られるマルチプロセッサシステムに関する。 The present invention relates to relates to a number of processors and cache memories and multi-processor system further plurality of blocks connected to blocks of the processor system comprising a memory, the packet format in particular via the data router between the blocks It relates to a multi-processor system to be sent in.

【0002】 [0002]

【従来の技術】効率よくデータ処理を行うためのシステムとして、共通のメモリに対して複数のプロセッサがそれぞれキャッシュメモリを介して接続されたマルチプロセッサシステムが知られている。 As a system for performing BACKGROUND ART efficient data processing multiprocessor system is known in which a plurality of processors connected through a cache memory respectively common memory. 更に、大量のデータを高速で処理するために、複数のマルチプロセッサシステムをバックプレーンバス結合して使用することも知られている(例えば、“Unix 4.2BSDとX−Wi Furthermore, in order to process large amounts of data at high speed, it is also known to use in a backplane bus coupling the plurality of multi-processor system (e.g., "Unix 4.2BSD and X-Wi
ndow搭載のソフトウエア開発向き32ビットワークステーション”,日経エレクトロニクス1986.1 ndow equipped with software development oriented 32-bit workstation ", Nikkei Electronics 1986.1
2.29(no.411),p104〜105参照)。 2.29 (no.411), see p104~105).

【0003】図10は従来の複数ブロックからなるマルチプロセッサシステムを示している。 [0003] Figure 10 shows a multiprocessor system comprising a conventional multiple blocks.

【0004】この従来のマルチプロセッサシステムは、 [0004] This conventional multi-processor system,
データ処理を行うプロセッサ1〜4、プログラムやデータを蓄える一次記憶装置であるメモリ14,15の一部分のコピーを持つことでプロセッサを高速に動作させるキャッシュメモリ5〜8、パケットデータが出力されるシステムバス9,10、二つのシステムバス9,10をバスバファ19,20を介して接続するバックプレーンバス11、それぞれのキャッシュメモリ5〜8がシステムバスの使用権を獲得するための調停に使用されるバス調停信号線16,17とからなっている。 Processor 1-4, the cache memory 5-8 for operating a processor at a high speed by having a copy of a portion of the memory 14, 15 is a primary storage device for storing programs and data for performing data processing, system packet data is output bus 9, 10 are used two system bus 9, 10 backplane bus 11 that connects via a Basubafa 19 and 20, each of the cache memory 5-8 in arbitration for acquiring the right to use the system bus It is made from the bus arbitration signal line 16, 17.

【0005】上述のマルチプロセッサシステムは、システムバス9を中心とした第1のブロックAとシステムバス10を中心とした第2のブロックBとに分かれており、両ブロックは、バスバッファ19,20を介してバックプレーンバス11により接続されている。 [0005] The above described multiprocessor system is divided into a second block B around the first block A and a system bus 10 around the system bus 9, the blocks, the bus buffer 19 and 20 It is connected by a backplane bus 11 via the. なお、1 In addition, 1
8はバックプレーンバス11の使用権を獲得するために使用されるバス調停信号線である。 8 is a bus arbitration signal line which is used to acquire the right to use the backplane bus 11.

【0006】従来の複数ブロックからなるマルチプロセッサシステムにおいては、いくつかあるプロセッサとメモリから構成される各ブロックA,Bをバックプレーンバス11で複数接続するとき、バスの入出力を単にバッファリングする装置すなわちバスバッファ19,20で行っている。 [0006] In the conventional multi-processor system comprising a plurality of blocks, when a plurality of connecting several there each block A composed of a processor and a memory, the B in the backplane bus 11, simply buffer the input and output bus equipment that is carried out in the bus buffer 19 and 20.

【0007】図10に示される従来のマルチプロセッサシステムにおいては、システムバス9,10上に現れるデータのすべてがバックプレーンバス11及びシステム全体のシステムバス9,10に送られる。 [0007] In the conventional multiprocessor system shown in FIG. 10, all of the data appearing on the system bus 9, 10 is sent to the backplane bus 11 and the system overall system bus 9,10. 例えば、プロセッサ1がメモリ15の内容を必要とするときには、そのデータを要求するパケット信号は、システムバス9に送り出され、バスバッファ19を介してバックプレーンバス11に送り出され、更にバスバッファ20を介してシステムバス10に送り出される。 For example, when the processor 1 needs the contents of the memory 15, the packet signal requesting the data is fed to the system bus 9, sent to the backplane bus 11 through a bus buffer 19, further the bus buffer 20 It is sent out to the system bus 10 via. メモリ15は、要求されたデータを逆の経路を辿ってプロセッサ1に転送する(図11参照)。 Memory 15, the requested data follows the reverse path forwarding to the processor 1 (see FIG. 11).

【0008】 [0008]

【発明が解決しようとする課題】このバスバッファ1 [Problems that the Invention is to Solve this bus buffer 1
9,20を使用した従来のマルチプロセッサシステムは、プロセッサ1が他のブロックのメモリ15の内容を必要とするとき有効であるが、プロセッサ1が同じブロックのメモリ14の内容を必要とするときには、そのデータを要求するパケット信号は、システムバス10にとって無用であるばかりかバックプレーンバス11及びシステムバス10のトラフィックを増加させることになり、システム全体のスループットが低下するという問題がある。 Conventional multiprocessor system using a 9, 20, when the processor 1 is effective when you need the contents of the memory 15 of the other blocks, the processor 1 needs the contents of the memory 14 of the same block, packet signal requesting the data, would increase the traffic of only one backplane bus 11 and the system bus 10 is useless for the system bus 10, the throughput of the entire system is lowered.

【0009】本発明は前記問題を鑑み、幾つかのプロセッサとメモリからなるブロックを複数接続するマルチプロセッサ構成において、あるシステムバス上にパケットデータが出されたとき、ゲートにて他のバスに送出するか、また他のバスのパケットを入力するか判断することで、システムバスのトラフィックを削減し、システムのスループットを向上することを目的とする。 [0009] The present invention has been made in view of the above problems, delivery in a multi-processor configuration connecting a plurality blocks of several processors and memory, when the packet data is issued on a system bus, to the other bus in the gate or also by determining whether to enter a packet of another bus, to reduce traffic on the system bus, and an object thereof is to improve the system throughput.

【0010】 [0010]

【課題を解決するための手段】本発明は、前記目的を達成するため、キャッシュメモリを持つプロセッサとメモリとをシステムバスにて接続したプロセッサシステムのブロックがバックプレーンバスにて複数接続されており、前記キャッシュメモリ同士及び前記キャッシュメモリと前記メモリの間は要求先アドレスが付加されたパケットを使用してデータを送受信するマルチプロセッサシステムにおいて、前記各システムバス上或いは前記バックプレーンバス上のパケットの内容を解析し、その解析結果に応じてシステムバス或いはバックプレーンバスに対するパケットの送出の可否を制御するルータであって、前記システムバス上のパケットの要求先アドレスが前記システムバス内のメモリアドレスである場合にはパケットを前記バックプ SUMMARY OF THE INVENTION The present invention, in order to achieve the object, and a block of processor systems connected to a processor and a memory in the system bus with cache memory is more connected by the backplane bus , said cache memory and between the between the cache memory the memory in a multiprocessor system for transmitting and receiving data using a packet is requested destination address is added, the packets on the system bus or on the backplane bus analyzes the contents, a router for controlling the propriety of output of packets to the system bus or backplane bus in accordance with the analysis result, the request destination address of the packet on the system bus by the memory address in said system bus there the packets if the backplane ーンバスに送出せずシステムバス外のメモリアドレスである場合にはパケットを前記バックプレーンバスに送出する手段と、前記システムバス上のパケットの要求先アドレスがシステムバス内のメモリアドレスであるが他のシステムバスに接続されたキャッシュメモリがそのアドレスのデータを持っている場合には前記バックプレーンバスにパケットを送出する手段と、前記バックプレーンバス上のパケットの要求先アドレスがシステムバス内のアドレスである場合にはパケットをシステムバスに送出しシステムバス外のメモリアドレスである場合にはパケットを前記システムバスに送出しない手段とからなるルータを、前記各システムバスと前記バックプレーンバスとの間に接続したことを特徴とする。 It means for sending a packet to the backplane bus if a memory address outside the system bus without sending the Nbasu, request destination address of the packet on the system bus is a memory address in system bus other means for sending a packet to the backplane bus if the cache memory connected to the system bus has data in the address, request destination address of the packet on the backplane bus is an address in the system bus the router is a packet in the case when there is a memory address outside the system bus sends the packet to the system bus and means for not delivering to the system bus, between said each system bus and the backplane bus characterized in that the connection.

【0011】 [0011]

【作用】本発明のマルチプロセッサシステムにおいては、キャッシュメモリ同士及びキャッシュメモリとメモリの間のデータ転送は、要求先アドレスが付加されたパケットを使用して行われる。 In a multiprocessor system the present invention, data transfer between the cache memory and between the cache memory and the memory is performed using a request destination address is the additional packet. 各システムバス上或いはバックプレーンバス上のパケットの内容はルータにおいて解析され、パケットの要求先アドレスがシステムバス内のメモリアドレスであるか否かに応じてバス間のパケットの転送の可否が制御される。 The contents of the packet on the system bus or on the backplane bus is analyzed in the router, request destination address of the packet is whether the transfer of packets between buses depending on whether a memory address in system bus is controlled that. 例えば、システムバス上のパケットの要求先アドレスが同じシステムバス内にある場合には、パケットはバックプレーンバスには送出されない。 For example, if the request destination address of the packet on the system bus are on the same system bus, packets are not sent to the backplane bus. したがってバックプレーンバスが不要のパケットで占有されることがなくなり、バックプレーンバスを効率的に利用することができる。 Therefore it is not possible to backplane bus is occupied by unnecessary packets can utilize backplane bus efficiently.

【0012】 [0012]

【実施例】以下、図面を参照しながら、実施例により本発明の特徴を具体的に説明する。 EXAMPLES Hereinafter, with reference to the accompanying drawings, will be described in detail the features of the present invention through examples. 図1は本発明における複数ブロックからなるマルチプロセッサシステムの構成例を示している。 Figure 1 shows a configuration example of a multiprocessor system comprising a plurality of blocks in the present invention. 図1に示すマルチプロセッサシステムは、二つのマルチプロセッサシステムをバックプレーンバスを介して接続して更に大規模なマルチプロセッサシステムを構成したものである。 Multiprocessor system shown in Figure 1, is a further together in a large multi-processor system connected via the backplane bus two multi-processor system.

【0013】第1のブロックAにおいては、それぞれデータ処理を行う複数のプロセッサ21,22がそれぞれキャッシュメモリ25,26を介してシステムバス29 [0013] In the first block A, the system bus 29 plural processors 21, 22 for processing data, respectively via cache memories 25 and 26
に接続され、このシステムバス29に共有のメモリ34 It is connected to a memory 34 in shared system bus 29
が接続される。 There is connected. メモリ34はプログラムやデータを蓄える一次記憶装置であり、キャッシュメモリ25,26はメモリ34またはメモリ35の一部分のコピーを持つことでプロセッサ21,22を高速に動作させるためのものである。 Memory 34 is a primary storage device for storing programs and data, and is for the cache memory 25 and 26 to operate the processor 21, 22 at high speed by having a copy of a portion of memory 34 or memory 35. また、キャッシュメモリ25,26及びメモリ34にはバス調停信号線36からバス調停信号が供給される。 Further, the bus arbitration signal from the bus arbitration signal line 36 is supplied to the cache memory 25, 26 and a memory 34. バス調停信号は、それぞれのキャッシュメモリ25,26がシステムバス29の使用権を獲得するための調停に使用されるものである。 Bus arbitration signal is a respective cache memory 25, 26 is used to arbitrate to gain the right to use the system bus 29.

【0014】第2のブロックBにおいても第1のブロックAと同様に、複数のプロセッサ23,24がそれぞれキャッシュメモリ27,28を介してシステムバス30 [0014] Similarly, the first block A in the second block B, the system bus 30 a plurality of processors 23 and 24 through the cache memory 27 and 28 respectively
に接続され、このシステムバス30に共有のメモリ35 It is connected to a memory 35 in shared system bus 30
が接続される。 There is connected. キャッシュメモリ27,28及びメモリ35にはバス調停信号線37からバス調停信号が供給される。 Bus arbitration signal from the bus arbitration signal line 37 is supplied to the cache memory 27, 28 and a memory 35.

【0015】更に、第1のブロックAのシステムバス2 Furthermore, the first block A system bus 2
9及びバス調停信号線36と、第2のブロックBのシステムバス30及びバス調停信号線37がそれぞれゲート39,40を介してバックプレーンバス31及びバス調停信号線38に接続されている。 9 and bus arbitration signal line 36, a system bus 30 and bus arbitration signal line 37 of the second block B are connected to the backplane bus 31 and bus arbitration signal line 38 through the respective gates 39 and 40. ゲート39,40にはメモリ41,42が接続されており、メモリ41,42 The gate 39 and 40 and the memory 41, 42 is connected, the memory 41, 42
にはシステムバス29,30に接続されている装置の情報が格納されている。 Information devices connected to the system bus 29 and 30 are stored in the. ゲート39とメモリ41でルータ43が構成され、ゲート40とメモリ42でルータ44 Router 43 at the gate 39 and the memory 41 are configured, the router 44 in the gate 40 and the memory 42
が構成されている。 There has been configured. ルータ43,44の機能については後述する。 It will be described later function of the router 43 and 44.

【0016】図1に示すマルチプロセッサシステムでは、システムバス29,30及びバックプレーンバス3 [0016] In the multiprocessor system shown in FIG. 1, system bus 29, 30 and the backplane bus 3
1には、パケット形式のデータが出力される。 The 1, packet format data is output. パケット形式のデータでは、まず最初にヘッダと呼ばれるコマンド(例えば要求や応答)とアクセスするアドレスが出力され、その後、リードやライトされるデータが出力される。 The packet format data, first address to be accessed and a command (e.g., request or response) called header is output, then the data to be read or write is output.

【0017】ルータ43のゲート39は、メモリ41の内容を参照しながら、システムバス29に現れるヘッダパケットのコマンドとアドレスを解析し、メモリ34又はキャッシュメモリ25,26へのアクセスである場合は、そのパケットをバックプレーンバス31に出力しない。 The gate 39 of the router 43, with reference to the contents of the memory 41, analyzes the command and address header packet appearing on the system bus 29, if the access to the memory 34 or the cache memory 25 and 26, It does not output the packet to the backplane bus 31.

【0018】コマンドとアドレスがメモリ34又はキャッシュメモリ25,26以外へのアクセスである場合は、バス調停信号線38からのバス調停信号によりバックプレーンバス31の使用権を得た後、システムバス2 [0018] If the command and the address is an access to non-memory 34 or the cache memory 25 and 26, after obtaining the right to use the backplane bus 31 by a bus arbitration signal from the bus arbitration signal line 38, the system bus 2
9に出力されたパケットをバックプレーンバス31に出力する。 It outputs the output packet to 9 to the backplane bus 31.

【0019】更に、バックプレーンバス31に出力されたパケットが、システムバス29内のアドレスの場合、 Furthermore, packet output to the backplane bus 31, if the address in the system bus 29,
ゲート39はバス調停信号線36からのバス調停信号により、システムバス29の使用権を獲得した後、バックプレーンバス31に出力されたパケットをシステムバス29に出力する。 Gate 39 by a bus arbitration signal from the bus arbitration signal line 36, after acquiring the right to use the system bus 29, and outputs the packet output to the backplane bus 31 to the system bus 29. ゲート40の動作も同様である。 Operation of the gate 40 is the same.

【0020】図2にルータの構成例を示す。 [0020] showing a configuration example of the router in FIG. ルータ43 Router 43
とルータ44とは同一構成を有しているので、ルータ4 Since it has the same configuration as the router 44 and the router 4
3を例に挙げて説明する。 3 will be described as an example.

【0021】ルータ43は、システムバス29或いはバックプレーンバス31からパケットを入力するパケットキューメモリ43a、パケットのコマンド・アドレスとメモリ41の内容を比較する比較器を持つプロセッサ4 The router 43 includes a processor 4 with a packet queue memory 43a for inputting a packet from the system bus 29 or the backplane bus 31, a comparator for comparing the contents of the command address and the memory 41 of the packet
3b、バスの使用権の制御を行うアービタ43cとからなる。 3b, consisting of an arbiter 43c that controls the right to use the bus. パケットキューメモリ43aとプロセッサ43b Packet queue memory 43a and processor 43b
はパケットリードライトバス43dにより接続され、プロセッサ43bとアービタ43cはアビトレーション制御信号線43eにより接続されている。 It is connected by the packet read write bus 43d, the processor 43b and the arbiter 43c are connected by the arbitration control signal line 43e.

【0022】図1において、メモリ34が0000〜0 [0022] In FIG 1, the memory 34 0000-0
fff番地、メモリ35が1000〜1fff番地のアドレスを持ち、プロセッサ21がキャッシュメモリ25 fff address, the memory 35 has an address of 1000~1fff address, the processor 21 cache memory 25
によりパケットを発生した場合、あるアドレスのデータをアクセスしたそれぞれの場合について動作を説明する。 If this occurs the packet by, for explaining the operation in each case the access to a certain address data.

【0023】パケットについてその一例を図3に示す。 [0023] An example is shown in Figure 3 for the packet.
パケットによるデータアクセスでは、まずLビットの要求の種類(コマンド)とMビットの要求元アドレスそしてNビット要求先のアドレスを含むヘッダが送られ、次にコマンドに応じたデータを送る。 Data access by packets, first types of L bit request (command) and header including the address of the request source address and an N-bit request destination M bit is sent then sends the data according to the command. ルータ43内のゲート39には、接続されているシステムバス29のアドレスが0000〜0fff番地であると初期化されている。 The gate 39 in the router 43, the address of the system bus 29 that is connected is initialized when is 0000~0fff address.

【0024】1)キャッシュメモリ25から100番地へリード要求を行った場合。 [0024] 1) If you have made a read request from the cache memory 25 to the address 100.

【0025】キャッシュメモリ25から送出するパケットは、図4に示すように、Lビットのリード要求コマンドとMビットのキャッシュメモリ25のアドレスとNビットのアクセスアドレス(100番地)とからなる。 The packet to be sent from the cache memory 25, as shown in FIG. 4, consists of an L-bit read request command and M bits of the address of the cache memory 25 and N bits of the access address (address 100). ルータ43はパケットのコマンドとアドレスを解析し、要求されたアドレス100番地でリードあることを知る。 Router 43 knows that analyzes the command and address packet is read at the requested address 100 address.
100番地は同じシステムバス29内にあるので、ルータ43は受けとったパケットをバックプレーンバス31 Because address 100 in the same system bus 29, a router 43 backplane bus 31 packets received in
に送出しない(図5参照)。 Not sent (see Fig. 5). キャッシュメモリ26は自分のアドレスではないので何も行わない。 Cache memory 26 does nothing because it is not in my address. メモリ34は受け取ったパケットが自分へのアクセスであることを知り、応答のパケットを送出する。 Memory 34 knows that packets received is an access to their sends a response packet. このときにもルータ4 Router 4 is also at this time
3は応答のアドレスが100番地でリードであることを知り、バックプレーンバス31にパケットを送出しない。 3 knows that the address of the response is read at address 100, it does not transmit the packet to the backplane bus 31.

【0026】2)キャッシュメモリ25から100番地へライト要求を行った場合。 [0026] 2) If you have made a write request from the cache memory 25 to the address 100.

【0027】2−1)他のシステムバス30のキャッシュメモリ(この例ではキャッシュメモリ27又は28) [0027] 2-1) cache memories of other system bus 30 (cache memory 27 or 28 in this example)
が100番地のデータを持っていない場合。 If you but do not have the data of the address 100.

【0028】パケットを受け取ったメモリ34は100 [0028] The memory 34, which has received the packet is 100
番地の内容を更新する。 To update the contents of the address. ルータ43は、受け取ったアドレス100番地が他のシステムバス30内のキャッシュメモリで同じアドレスのデータを持っているか調べるため、ルータ43内のメモリ41をアクセスしてチェックする。 Router 43, to see if the received address address 100 has the data of the same address in the cache memory of the other system bus 30, to check access memory 41 of the router 43. この場合、アドレス100番地が登録されていないので、ルータ43はバックプレーンバス31にパケットを送出しない(図5参照)。 In this case, since the address 100 address is not registered, the router 43 does not send the packet to the backplane bus 31 (see FIG. 5).

【0029】2−2)他のシステムバス30のキャッシュメモリ(この例ではキャッシュメモリ27又は28) [0029] 2-2) cache memories of other system bus 30 (cache memory 27 or 28 in this example)
が100番地のデータを持っている場合。 If There you have the data of the address 100.

【0030】パケットを受け取ったメモリ34は100 The memory 34, which has received the packet is 100
番地の内容を更新する。 To update the contents of the address. ルータ43は、受け取ったアドレス100番地が他のシステムバス30内のキャッシュメモリで同じアドレスのデータを持っているか調べるため、ルータ43内のメモリ41をアクセスしてチェックする。 Router 43, to see if the received address address 100 has the data of the same address in the cache memory of the other system bus 30, to check access memory 41 of the router 43. この場合、アドレス100番地は登録されているので、ルータ43はバス調停信号線38からのバス調停信号によりバックプレーンバス31の使用権を獲得した後、パケットをバックプレーンバス31に送出する。 In this case, since the address 100 address is registered, the router 43 sends after acquiring the right to use the backplane bus 31 by a bus arbitration signal from the bus arbitration signal line 38, a packet backplane bus 31. このパケットは、ルータ44でシステムバス30へのパケットだと判断され、システムバス30に出力される(図6参照)。 This packet is judged to be the packet to the system bus 30 by the router 44, are output to the system bus 30 (see FIG. 6).

【0031】3)キャッシュメモリ25から1500番地へリード要求を行った場合。 [0031] 3) If you make a read request from the cache memory 25 to the 1500 address.

【0032】キャッシュメモリ25,26及びメモリ3 The cache memory 25, 26, and the memory 3
4は自分へのアドレスのパケットではないので何も行わない。 4 does nothing because it is not a packet of address to their own. ルータ43はパケットのコマンドとアドレスを解析し、要求されたアドレス1500番地でリードであることを知る。 Router 43 knows that analyzes the command and address packet, which is read by the requested address 1500 address. 1500番地はシステムバス29内のアドレスではないので、ルータ43はバス調停信号線38からのバス調停信号によりバックプレーンバス31の使用権を獲得した後、受けとったパケットをバックプレーンバス31に送出する。 Since 1500 address is not the address in the system bus 29, the router 43 sends the backplane bus 31 after acquiring the right to use, the received packet on the backplane bus 31 by a bus arbitration signal from the bus arbitration signal line 38 . このパケットはルータ44で要求先のアドレスがシステムバス30内のアドレスだと判断され、バス調停信号線37からのバス調停信号にてシステムバス30の使用権を獲得した後、パケットをシステムバス30に出力する(図6参照)。 The packet address of the request destination router 44 is judged to be the address of the system bus 30, after acquiring the right to use the system bus 30 by bus arbitration signals from bus arbitration signal line 37, a packet system bus 30 and outputs (see Figure 6).

【0033】パケットを受け取ったメモリ35は150 The memory 35, which has received the packet 150
0番地の内容を読んだ後、応答のパケットを送出する。 After reading the contents of the address 0, and sends the packet of response.
応答パケットは、Lビットの応答コマンドとMビットのキャッシュメモリ25のアドレスとNビットの1500 Response packet, the address and N bits in the cache memory 25 of the response command and M bits of L bits 1500
番地のアドレスからなるヘッダパケットとデータのパケットからなる(図7参照)。 Consisting packet header packet and the data consisting of the address of the address (see FIG. 7).

【0034】ルータ44は、システムバス30内のアドレスへの応答ではないと判断し応答パケットをバス調停信号線38からのバス調停信号によりバックプレーンバス31の使用権を獲得した後、バックプレーンバス31 The router 44, after acquiring the right to use the backplane bus 31 by a bus arbitration signal the response packet is determined not to be a response to the address of the system bus 30 from the bus arbitration signal line 38, the backplane bus 31
上に出力する。 And outputs it to the top. ルータ43は、この応答パケットがシステムバス29内にあるキャッシュメモリ25へのパケットだと判断し、バス調停信号線36からのバス調停信号によりシステムバス29の使用権を獲得した後、応答パケットをシステムバス29に出力する(図8参照)。 Router 43, after acquiring the right to use the system bus 29 by the response packet is judged to be the packet to the cache memory 25 in the system bus 29, a bus arbitration signal from the bus arbitration signal line 36, a response packet and outputs to the system bus 29 (see FIG. 8).

【0035】1500番地へのアクセスを要求したキャッシュメモリ25は、応答パケットのコマンド(Lビット)と要求元のビット(Mビット)からキャッシュメモリ25へのパケットだと判断し、そのパケットを入力して1500番地のデータを得る。 The cache memory 25 that has requested access to the 1500 address, it is determined from the command (L bit) and requesting bit of the response packet (M bit) that it is packet to the cache memory 25, enter the packet get a 1500 address of the data Te.

【0036】4)キャッシュメモリ25から1500番地へライト要求を行った場合。 [0036] 4) If you have made a write request from the cache memory 25 to the 1500 address.

【0037】キャッシュメモリ25,26及びメモリ3 The cache memory 25, 26, and the memory 3
4は自分へのアドレスのパケットではないので何も行わない。 4 does nothing because it is not a packet of address to their own. 但し、キャッシュメモリ26が1500番地のデータを持っている場合には、キャッシュメモリ25とキャッシュメモリ26でデータ一致しなくなるのを防止するために、そのデータの無効化を行う。 However, if the cache memory 26 has data of 1500 address, in order to prevent the longer data match the cache memory 25 and cache memory 26, performs the invalidation of the data.

【0038】ルータ43は、パケットのコマンドとアドレスを解析し、要求されたアドレス1500番地がライトであることを知る。 The router 43 analyzes the command and the address of the packet, the requested address 1500 address to know that it is a light. 1500番地はシステムバス29 1500 address the system bus 29
内のアドレスではないので、ルータ43はバス調停信号線38からのバス調停信号により、バックプレーンバス31の使用権を獲得した後、受けとったパケットをバックプレーンバス31に送出する。 Because it is not the address of the inner, the router 43 by a bus arbitration signal from the bus arbitration signal line 38, after acquiring the right to use the backplane bus 31, and sends the received packet to the backplane bus 31. 更にルータ43は、キャッシュメモリ25のデータのコヒーレンスを維持するため、システムバス29に接続された装置で1500番地の内容を持っていることをメモリ41に記憶させる。 Further router 43 in order to maintain the coherence of the data in the cache memory 25, and stores to have the contents of the 1500 address in the devices connected to the system bus 29 to the memory 41.

【0039】ルータ44は、パケットの要求先のアドレスがシステムバス30内のアドレスだと判断して入力し、バス調停信号線37からのバス調停信号にてシステムバス30の使用権を獲得した後、パケットをシステムバス30に出力する(図6参照)。 The router 44 receives the request destination address of the packet is judged that it is the address of the system bus 30, after acquiring the right to use the system bus 30 by bus arbitration signals from bus arbitration signal line 37 , and outputs the packet to the system bus 30 (see FIG. 6). パケットを受け取ったメモリ35は1500番地の内容を更新する。 Memory 35, which has received the packet is to update the contents of the 1500 address.

【0040】5)バックプレーンバス31に100番地へのリード要求があった場合。 [0040] 5) If there is a read request to the address 100 in the backplane bus 31.

【0041】ルータ43は、バックプレーンバス31上のヘッダパケットのコマンドと要求アドレスのビットによりシステムバス29内のアクセスだと判断し、受け取ったデータリード要求パケットをバス調停信号線36からのバス調停信号によりシステムバス29の使用権を獲得した後、システムバス29へ出力する(図8参照)。 The router 43, the bus arbitration is determined by bits of the command and the request address of the header packet on the backplane bus 31 that it accesses the system bus 29, the received data read request packet from the bus arbitration signal line 36 after acquiring the right to use the system bus 29 by a signal, and outputs to the system bus 29 (see FIG. 8).

【0042】メモリ34は、そのパケットから自分へのアクセスだと判断しパケットを入力する。 The memory 34, to enter the packet to determine from the packet that it is access to their own. パケットを受け取ったメモリ34は、100番地の内容を読んだ後、 After the memory 34, which has received the packet, reading the contents of the address 100,
応答のパケットを出力する。 And it outputs a packet of response. 応答パケットは、応答コマンドと要求元アドレスと100番地のアドレスからなるヘッダパケットとデータのパケットからなる(図9参照)。 Reply packet consists response command and a request source address and header packets and data composed of address 100 of the address packet (see FIG. 9).

【0043】ルータ43は、メモリ34により出力された応答パケット(ヘッダパケットと100番地のデータパケット)を他のシステムバスへの応答パケットだと判断し、バス調停信号線38からのバス調停信号によりバックプレーンバス31の使用権を獲得した後、バックプレーンバス31上にパケットを出力する(図6参照)。 The router 43 determines output response packet by the memory 34 (data packet header packet and address 100) that it is the response packet to the other system bus, the bus arbitration signal from the bus arbitration signal line 38 after acquiring the right to use the backplane bus 31, and outputs the packet on the backplane bus 31 (see FIG. 6).

【0044】6)バックプレーンバス31に100番地へのライト要求があった場合。 [0044] 6) If there is a write request to the address 100 in the backplane bus 31.

【0045】ルータ43は、バックプレーンバス31上のヘッダパケットのコマンドと要求アドレスのビットによりシステムバス29内のアクセスだと判断し、受け取ったデータリード要求パケットをバス調停信号線36からのバス調停信号によりシステムバス29の使用権を獲得した後、システムバス29へ出力する(図8参照)。 The router 43, the bus arbitration deems access the system bus 29 by a bit of the command and the request address of the header packet on the backplane bus 31, the received data read request packet from the bus arbitration signal line 36 after acquiring the right to use the system bus 29 by a signal, and outputs to the system bus 29 (see FIG. 8).
メモリ34は、そのパケットから自分へのアクセスだと判断し、パケットを入力して100番地に新しいデータをライトする。 Memory 34, judging from the packet that it is access to their own, to write the new data to address 100 to enter the packet.

【0046】7)バックプレーンバス31に1500番地へのリード要求があった場合。 [0046] 7) If there is a read request to the 1500 address to the backplane bus 31.

【0047】ルータ43は、パケットのコマンドと要求先アドレスのビットからシステムバス29に接続された装置へのアクセスではないと判断し、その後の処理は行わない。 The router 43 determines that it is not the access from the commands and request destination address bit of the packet to a device connected to the system bus 29, it is not performed subsequent processing.

【0048】8)バックプレーンバス31に1500番地へのライト要求のパケットがあった場合。 [0048] 8) If there is a packet of the write request to the 1500 address to the backplane bus 31.

【0049】8−1)ルータ43内にあるメモリ41に1500番地のアドレスが記憶されている場合。 [0049] 8-1) If the 1500 address address of the memory 41 within the router 43 is stored.

【0050】ルータ43は、パケットのコマンドにより1500番地のデータがシステムバス29に接続された装置で使用されているかメモリ41をリードしてチェックする。 The router 43, 1500 addresses the data is checked to lead whether the memory 41 is used in the device connected to the system bus 29 by the packet command. この場合、記憶していると判断されるので、そのパケットをバス調停信号線36からのバス調停信号によりシステムバス29の使用権を獲得した後、出力する。 In this case, since it is determined that the stored after acquiring the right to use the system bus 29 by a bus arbitration signals the packet from the bus arbitration signal line 36, and outputs. このとき、メモリ41に記憶されていた1500番地は、データの無効化によりコヒーレンスをこれ以降管理する必要がなくなるのでゲート39により削除される。 At this time, 1500 address that was stored in the memory 41 is deleted by the gate 39 it is not necessary to manage subsequent coherence by disabling data is eliminated. そして、システムバス29に接続した装置(この場合キャッシュメモリ25又は26)は、パケットを入力してキャッシュメモリ内にデータがあるか判断しデータを持っている場合にはそのデータを無効化する。 The devices connected to the system bus 29 (in this case the cache memory 25 or 26), if you enter the packet has determined to data if there is data in the cache memory to invalidate the data. メモリ34は何も行わない。 Memory 34 is not done nothing.

【0051】8−2)ルータ43内にあるメモリ41に1500番地のアドレスが記憶されていない場合。 [0051] 8-2) When the 1500 address address of the memory 41 that is in the router 43 is not stored.

【0052】ルータ43は、パケットのコマンドにより1500番地のデータがシステムバス29に接続された装置で使用されているかメモリ41をリードしてチェックする。 [0052] router 43, 1500 addresses the data is checked to lead whether the memory 41 is used in the device connected to the system bus 29 by the packet command. この場合、記憶していないと判断されるので、 In this case, it is determined not to be stored,
それ以降の処理は何も行われない。 And the subsequent processing is not performed nothing.

【0053】上述のルータの動作を整理すると、以下のようになる。 [0053] To summarize the operation of the above-described router, it is as follows.

【0054】(a)システムバス上のパケットの要求するアドレスがシステムバス内のメモリアドレスである場合、パケットをバックプレーンバスに送出せず、システムバス外であったときにはバックプレーンバスに送出する。 [0054] (a) requesting the address of the packet on the system bus if a memory address in system bus, without sending the packet to the backplane bus, and sends the backplane bus when was out of the system bus.

【0055】(b)システムバス上のパケットの要求するアドレスがシステムバス内のメモリアドレスであるが他のシステムバスに接続されたキャッシュメモリがそのアドレスのデータを持っている場合、バックプレーンバスにパケットを送出する。 [0055] (b) If the request address of a packet on the system bus is a memory address in system bus cache memory connected to the other system bus have data for that address, the backplane bus packet and sends the.

【0056】(c)バックプレーンバス上のパケットの要求アドレスがシステムバス内のアドレスである場合、 [0056] (c) if the request address of the packet of the backplane on the bus is an address in the system bus,
パケットをシステムバスに出力し、そうでない場合はシステムバスに送出しない。 And it outputs the packet to the system bus, otherwise does not send to the system bus.

【0057】なお、図1に示す例ではプロセッサが4台の場合を示しているが、メモリのアドレス空間が異なるメモリとそれぞれにプロセッサが接続された構成であればプロセッサは何台でもよい。 [0057] Incidentally, in the example shown in FIG. 1 shows the case the processor is four, the processor with the configuration in which the address space of the memory is connected to different memory and processor in each may be any number.

【0058】また、メモリ41,42に記憶するアドレスは、1ワード単位(番地単位)ではなく、ブロック単位(例えば16ワードワード単位:8ビット/ワードの時16番地単位)で記憶・管理を行うこともできる。 [0058] Further, the address to be stored in the memory 41, one word unit (address units) rather than block units (e.g., 16 words Word Unit: 16 address units when the 8-bit / word) performs memory-managed it is also possible. また。 Also. メモリ41,42をキャッシュメモリやディスク装置で構成することもできる。 It is also possible to configure the memory 41 in the cache memory and the disk device.

【0059】 [0059]

【発明の効果】以上に述べたように、本発明においては、不必要なパケットをシステムバスからバックプレーンバスへ出力しないようにしたので、システム全体のバストラフィックが削減され、システム全体のスループットが向上する。 As described above, according to the present invention, in the present invention, since unnecessary packet from the system bus is not output to the backplane bus, reduces bus traffic for the entire system, the throughput of the entire system improves.

【図面の簡単な説明】 BRIEF DESCRIPTION OF THE DRAWINGS

【図1】 本発明のマルチプロセッサシステムの実施例を示すブロック図である。 1 is a block diagram illustrating an embodiment of a multiprocessor system of the present invention.

【図2】 図1に示すマルチプロセッサシステムにおいて使用されるルータの構成例を示すブロック図である。 2 is a block diagram showing a configuration example of a router used in a multiprocessor system shown in FIG.

【図3】 パケットの構成例を示す説明図である。 3 is an explanatory diagram showing an example of the structure of a packet.

【図4】 要求パケットの構成を説明する図である。 4 is a diagram illustrating the configuration of a request packet.

【図5】 システムバス側からアドレス内のデータが要求されたときの各システムバス及びバックプレーンバス上のパケットの状態を示す説明図である。 FIG. 5 is an explanatory view showing a state of a packet of each system bus and backplane bus when data in the address from the system bus side is requested.

【図6】 システムバス側からアドレス外のデータが要求されたときの各システムバス及びバックプレーンバス上のパケットの状態を示す説明図である。 6 is an explanatory view showing a state of a packet of each system bus and backplane bus when the system bus side of the outer address data is requested.

【図7】 応答パケットの構成を説明する図である。 7 is a diagram illustrating the structure of a response packet.

【図8】 バックプレーンバス側からアドレス外のデータが要求されたときの各システムバス及びバックプレーンバス上のパケットの状態を示す説明図である。 8 is an explanatory view showing a state of a packet of each system bus and backplane bus when the backplane bus side data outside address is requested.

【図9】 応答パケットの構成を説明する図である。 9 is a diagram illustrating the structure of a response packet.

【図10】 従来のマルチプロセッサシステムの構成例を示すブロック図である。 10 is a block diagram showing a configuration example of a conventional multiprocessor system.

【図11】 従来のマルチプロセッサシステムにおける各システムバス及びバックプレーンバス上のパケットの状態を示す説明図である。 11 is an explanatory view showing a state of a packet of each system bus and backplane bus in a conventional multiprocessor system.

【符号の説明】 DESCRIPTION OF SYMBOLS

1〜4,21〜24 プロセッサ、5〜8,25〜28 1~4,21~24 processor, 5~8,25~28
キャッシュメモリ、9、10,29,30 システムバス、11,31 バックプレーンバス、12,13, Cache memory, 9,10,29,30 system bus, 11 and 31 backplane bus, 12, 13,
19,20,32,33 バスバッファ、14,15, 19,20,32,33 bus buffer, 14, 15,
34,35 メモリ、16〜18,36〜38 バス調停信号線、39,40 ゲート、41,42 メモリ、 34, 35 memory, 16~18,36~38 bus arbitration signal line, 39 and 40 gates, 41 and 42 memory,
43c アービタ、43b プロセッサ、43a パケットキューメモリ、43d パケットリードライトバス、43e アビトレーション制御信号線 43c arbiter, 43b processor, 43a packet queue memory, 43d packet read write bus, 43e arbitration control signal line

Claims (1)

  1. 【特許請求の範囲】 【請求項1】 キャッシュメモリを持つプロセッサとメモリとをシステムバスにて接続したプロセッサシステムのブロックがバックプレーンバスにて複数接続されており、前記キャッシュメモリ同士及び前記キャッシュメモリと前記メモリの間は要求先アドレスが付加されたパケットを使用してデータを送受信するマルチプロセッサシステムにおいて、前記各システムバス上或いは前記バックプレーンバス上のパケットの内容を解析し、その解析結果に応じてシステムバス或いはバックプレーンバスに対するパケットの送出の可否を制御するルータであって、前記システムバス上のパケットの要求先アドレスが前記システムバス内のメモリアドレスである場合にはパケットを前記バックプレーンバスに送出せずシステムバ Claims 1. A block of a processor system connecting a processor and a memory in the system bus with cache memories are more connected by the backplane bus, said cache memory and between said cache memory wherein during the memory in a multiprocessor system for transmitting and receiving data using a packet is requested destination address is added, the analyzes the contents of the packet on the system bus or on the backplane bus, the result of the analysis and depending a router for controlling the propriety of output of packets to the system bus or backplane bus, wherein the packet when the request destination address of the packet on the system bus is a memory address in said system bus backplane system bus without sending to the bus 外のメモリアドレスである場合にはパケットを前記バックプレーンバスに送出する手段と、前記システムバス上のパケットの要求先アドレスがシステムバス内のメモリアドレスであるが他のシステムバスに接続されたキャッシュメモリがそのアドレスのデータを持っている場合には前記バックプレーンバスにパケットを送出する手段と、前記バックプレーンバス上のパケットの要求先アドレスがシステムバス内のアドレスである場合にはパケットをシステムバスに送出しシステムバス外のメモリアドレスである場合にはパケットを前記システムバスに送出しない手段とからなるルータを、前記各システムバスと前記バックプレーンバスとの間に接続したことを特徴とするマルチプロセッサシステム。 And means for transmitting the packet if it is outside of the memory address to the backplane bus, the cache request destination address of the packet on the system bus is a memory address in system bus connected to the other system bus system means if the memory has the data of the address for sending the packet to the backplane bus, the packet when the request destination address of the packet on the backplane bus is an address in the system bus the router and means that do not send packets to said system bus when a memory address outside the system bus sends to the bus, characterized in that connected between said each system bus and the backplane bus multi-processor system.
JP16595891A 1991-07-05 1991-07-05 Multiprocessor system Pending JPH0512220A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP16595891A JPH0512220A (en) 1991-07-05 1991-07-05 Multiprocessor system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP16595891A JPH0512220A (en) 1991-07-05 1991-07-05 Multiprocessor system

Publications (1)

Publication Number Publication Date
JPH0512220A true JPH0512220A (en) 1993-01-22

Family

ID=15822252

Family Applications (1)

Application Number Title Priority Date Filing Date
JP16595891A Pending JPH0512220A (en) 1991-07-05 1991-07-05 Multiprocessor system

Country Status (1)

Country Link
JP (1) JPH0512220A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008053789A1 (en) * 2006-10-31 2008-05-08 Semiconductor Energy Laboratory Co., Ltd. Semiconductor device
JP2008135018A (en) * 2006-10-31 2008-06-12 Semiconductor Energy Lab Co Ltd Semiconductor device

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008053789A1 (en) * 2006-10-31 2008-05-08 Semiconductor Energy Laboratory Co., Ltd. Semiconductor device
JP2008135018A (en) * 2006-10-31 2008-06-12 Semiconductor Energy Lab Co Ltd Semiconductor device
US7840188B2 (en) 2006-10-31 2010-11-23 Semiconductor Energy Laboratory Co., Ltd. Semiconductor device
US8041309B2 (en) 2006-10-31 2011-10-18 Semiconductor Energy Laboratory Co., Ltd. Semiconductor device
US8396425B2 (en) 2006-10-31 2013-03-12 Semiconductor Energy Laboratory Co., Ltd. Semiconductor device
US9362984B2 (en) 2006-10-31 2016-06-07 Semiconductor Energy Laboratory Co., Ltd. Semiconductor device

Similar Documents

Publication Publication Date Title
JP3144794B2 (en) Multi-processor system
US6457100B1 (en) Scaleable shared-memory multi-processor computer system having repetitive chip structure with efficient busing and coherence controls
US5659710A (en) Cache coherency method and system employing serially encoded snoop responses
US5490253A (en) Multiprocessor system using odd/even data buses with a timeshared address bus
CN100580639C (en) Method and system for controlling memory accesses to memory modules having memory hub architecture
US4975833A (en) Multiprocessor system which only allows alternately accessing to shared memory upon receiving read and write request signals
US7617376B2 (en) Method and apparatus for accessing a memory
US6247091B1 (en) Method and system for communicating interrupts between nodes of a multinode computer system
US4041472A (en) Data processing internal communications system having plural time-shared intercommunication buses and inter-bus communication means
EP0166341B1 (en) Multiprocessor system with fast path means for storage accesses
JP3850829B2 (en) Memory port arbitration method
CN1244055C (en) Computer system and communication method thereof
US6920519B1 (en) System and method for supporting access to multiple I/O hub nodes in a host bridge
US6141692A (en) Directory-based, shared-memory, scaleable multiprocessor computer system having deadlock-free transaction flow sans flow control protocol
EP0369265B1 (en) Multiprocessor system having global data replication
CN1277216C (en) Method and apparatus for extensible disambiguated coherence in shared storage system
EP1233342B1 (en) Coherency controller for a multiprocessor assembly, module and multimodule architecture multiprocessor assembly incorporating said controller
US6247100B1 (en) Method and system for transmitting address commands in a multiprocessor system
JP3273366B2 (en) Transfer method and apparatus of data
US5142683A (en) Intercomputer communication control apparatus and method
US6789173B1 (en) Node controller for performing cache coherence control and memory-shared multiprocessor system
US6529968B1 (en) DMA controller and coherency-tracking unit for efficient data transfers between coherent and non-coherent memory spaces
US5694556A (en) Data processing system including buffering mechanism for inbound and outbound reads and posted writes
US5682512A (en) Use of deferred bus access for address translation in a shared memory clustered computer system
JP4712974B2 (en) Flexible probe / probe response path control for coherency maintenance