JPH0469763A - Parallel computers for hierarchical type bus connection - Google Patents
Parallel computers for hierarchical type bus connectionInfo
- Publication number
- JPH0469763A JPH0469763A JP2182072A JP18207290A JPH0469763A JP H0469763 A JPH0469763 A JP H0469763A JP 2182072 A JP2182072 A JP 2182072A JP 18207290 A JP18207290 A JP 18207290A JP H0469763 A JPH0469763 A JP H0469763A
- Authority
- JP
- Japan
- Prior art keywords
- data
- bus
- processors
- processor
- circuit
- 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
Links
- 239000000872 buffer Substances 0.000 claims abstract description 96
- 230000001360 synchronised effect Effects 0.000 claims description 10
- 230000005540 biological transmission Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000000034 method Methods 0.000 description 2
- 101150037263 PIP2 gene Proteins 0.000 description 1
- 101100262439 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) UBA2 gene Proteins 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000002401 inhibitory effect Effects 0.000 description 1
Landscapes
- Multi Processors (AREA)
Abstract
Description
(概要]
複数のプロセッサから構成され、1つのプロセッサから
他のすべてのブ1コセッザにデータを転送する放送機能
を持つ並列計算機に関し
接続可能なブロセッ勺の台数の制限を除いた共通バスに
おいて、放送機能を実現する方式を提供することを目的
とし
複数のグループに分割されたブロセソナが、各グループ
ごとに局所的な共通バスに接続され、それぞれの局所的
な共通バスか中継用バッファを介して上位の共通バスに
接続される階層構造となるように構成され、データを送
出するプロセラ−IJを定める回路であって、バスの階
層構成と対応の取れた階層構成の調停回路を備え、調停
時のプロセッサの選択情報をもとに、対応する中継用バ
ッファの転送方向を決定することによって2バス上に送
り出されたデータをすべてのプロセッサに転送するよう
に構成する。
〔産業上の利用分野]
本発明は、複数のプロセンサから構成され、1つのプロ
セッサから他のずべてのプし】センサにデータを転送す
る放送機能を持つ並列計算機に関する。
近年、高速な計算機の実現方法として、複数のプロセッ
サにより計算機を構成する並列計算機が注口されている
。並列計算機は、プロセソ1ノ間でデータの交換を行う
ために、プロセンサ間の通信路を持つ。
このよ・うな並列計算機において、全プロセッサに対し
てプログラムの転送や共通のデータを送るときなどに2
−度にすべてのプロセッサに同じデータを送ることので
きるブロードキャスト(放送)と呼ばれる機能が必要に
なる。並列計算機の性能向上には、多くのプロセンサを
接続する必要があり、このブロー1′ギヤスト機能は、
プロセッサの台数に制限のない実現方式をとることが要
求される。
〔従来の技術〕
並列計算機では、一般にブロードキャス!・などのデー
タの通信を行うために、全プロセッサに接続された共通
バスが設けられる。
共通バスば1バスと呼ばれる信号線に すべてのプロセ
ッサの入出カポ−I・を接続し、この信号線にデータを
送り出すことによって、データの転送を行うものである
。共通バスに送り出されたデータは、すべてのプロセッ
サが受信できるので。
ブロードギャス1−が実現できる。
[発明が解決しようとする課B]
しかし、従来の共通バスでは、バスの信号線を駆動する
出力回路の駆動能力によって、バスに接続できるプロセ
ッサ数に制限が加えられていた。
本発明は、バスを階層構成にすることによって接続可能
なプロセンサの台数の制限を除いた共通バスを実現し、
これによりプロセッサ数に依存しない放送機能を実現す
ることを目的としている。
(課題を解決するための手段〕
第1図は本発明の原理説明図である。
第1図において、PO−Pnは並列計算機を構成するプ
ロセンサ、L11〜L n nば局所的な下位の共通バ
ス、Ll〜L nおよびLOば」三位の共通バス、B1
1〜BnnおよびB1〜Bnば中継用ハンファ CIl
〜Cnn C1〜CnおよびCOは調停回路、SYは
同期回路を衷ず。
本発明では、並列計算機を構成するプロセッサP O−
P nを、複数のグループに分割し、それぞれのグルー
プを局所的な共通バスL 1.1〜I−n nで接続す
る。それらの各共通バスL11〜L n nについても
グループ化し、中継用ハンファB11〜Bnnを介して
、上位の共通バスL 1〜Lnで接続する。第1図に示
す例では、3階層構成になっており、共通バスL 1〜
Lnを、中継用バッファB1〜Bnを介して、最」三位
の共通バスLOに接続している。
このような共通バスの階層構成に対応して、調停回路C
1]〜Cnn、C1〜Cn、COが設けられる。調停回
路は、プロセッサP O−P nからのブo −J:キ
ャスト要求に対して、データを送出する1つのプロセッ
サを定め、プロセッサの選択情報をもとに、対応する中
継用バッファB 1.1〜Bnn、、Bl〜Bnの転送
方向を決定するごとによって1選1ノ(されたプロセッ
サからバス]二に送り出されたデータを、他のすべての
プロセッサに転送する。
転送の終了を判定するには、全プロセッサがデータを受
信したことを確認する必要がある。
そのために すべてのプロセッサP O〜P 11に接
続された同IU1回路SYを設け2各ブロセンザの受信
速度に大きなばらつきがあっても、転送の柊rを高速に
判定している。
データを送り出すプロセッサは、転送の終了後に転送終
了を示すデータを送る。そのデータを受信したブlコセ
ンザは、同期回路SYに対して同11Jlの要求を出し
、同期回路SYはすべてのプロセッサから同期要求か出
されていることを検出する。
これによって、データの転送終了を無駄な時間をかけず
に検出できるようにしている。
図示省略するが、同期回路syを除く第1図に示すよう
なプロセッサおよび共通バス等の構成を。
並列計算機のザブセットとし、最上位の共通バス■、0
を、さらに中継用バッファを介して、リング状のバスに
接続することにより、第1図に示すようなプロセッサ群
が複数個で構成される並列計算機を実現することもでき
る。
〔作用]
階層型バスにおいて、どのプロセッサからもブロードギ
ヤスト機能を可能にするには、異なる階層のバスの間を
中継する中継用バッファB11〜Bnの転送方向を制御
する必要がある。
本発明では、データのブロードギャスI・を行うプロセ
ッサを決定する調停回路C11〜COの構成を、共通バ
スI、11〜L Oの階層構成と対応のとれた階層構成
とし、各階層の調停回路が自分と対応のとれた中継用バ
ッファの転送方向を制御することによって、バス全体へ
のブロードキャスI〜を実現する。
また1階層型バスでは、送り出したデータが一旦中継用
ハンファに蓄積されてから中継されていく。したがって
、あるプロセッサが最後のデータを送り出してから、そ
のデータがすべてのプロセッサに到達するまでに、ある
程度の時間がかかる。
また、データを送り出したプロセッサは、データが行き
渡ったことを検出できない。そこで、転送の終了を効率
よく判定するために、ブロードキャスト
味する特殊な符号を送り,この符号が全プロセッサに到
達したことを,同期回路SYによって検出しーζ,デー
タ転送の終了を検出する。
例えば、第1図に示すような階層型バス接続のブ(Overview) For parallel computers that are composed of multiple processors and have a broadcasting function that transfers data from one processor to all other processors, broadcasting is possible on a common bus excluding restrictions on the number of processors that can be connected. Brosesona is divided into multiple groups for the purpose of providing a method for realizing functions, and each group is connected to a local common bus, and connected to the upper layer via each local common bus or relay buffer. This circuit is configured to have a hierarchical structure connected to a common bus of the bus, and determines the processor IJ that sends data. The configuration is such that the data sent out on the two buses is transferred to all processors by determining the transfer direction of the corresponding relay buffer based on the processor selection information. [Industrial Application Field] Book The present invention relates to a parallel computer that is composed of a plurality of processor sensors and has a broadcasting function that transmits data from one processor to all the other sensors. The parallel computers that make up the computer are connected.Parallel computers have communication channels between processors in order to exchange data between the processors.In such a parallel computer, the 2 when transferring programs or sending common data.
- A function called broadcasting, which can send the same data to all processors at once, is required. To improve the performance of parallel computers, it is necessary to connect many pro sensors, and this blow 1' gearst function is
An implementation method is required that does not limit the number of processors. [Conventional technology] Parallel computers generally use broadcast! A common bus connected to all processors is provided to communicate data such as . The input and output ports of all processors are connected to a signal line called a common bus, and data is transferred by sending data to this signal line. Because data sent out to a common bus can be received by all processors. Broad gas 1- can be realized. [Problem B to be Solved by the Invention] However, in conventional common buses, the number of processors that can be connected to the bus is limited by the driving ability of the output circuit that drives the signal lines of the bus. The present invention realizes a common bus that eliminates restrictions on the number of connectable pro sensors by configuring the bus in a hierarchical configuration.
The purpose of this is to realize broadcasting functions that are independent of the number of processors. (Means for Solving the Problems) Fig. 1 is an explanatory diagram of the principle of the present invention. In Fig. 1, PO-Pn is a processor that constitutes a parallel computer, and L11 to L n n are local lower common Bus, Ll~Ln and LOba' third common bus, B1
1~Bnn and B1~Bn relay Hanwha CIl
~Cnn C1 to Cn and CO are arbitration circuits, and SY is a synchronization circuit. In the present invention, a processor P O-
P n is divided into a plurality of groups, and each group is connected by a local common bus L 1.1 to I-n n. These respective common buses L11 to Lnn are also grouped and connected via relay Hanwha B11 to Bnn by upper common buses L1 to Ln. In the example shown in FIG. 1, there is a three-layer configuration, with common buses L1 to
Ln is connected to the third-most common bus LO via relay buffers B1 to Bn. In response to such a hierarchical structure of the common bus, the arbitration circuit C
1]~Cnn, C1~Cn, and CO are provided. The arbitration circuit determines one processor to send data in response to the BooJ:cast request from the processor P O-P n, and selects the corresponding relay buffer B based on the selection information of the processor. 1 to Bnn, and Bl to Bn, the data sent from the selected processor to the bus 2 is transferred to all other processors. Determine the end of the transfer. It is necessary to confirm that all processors have received the data.For this purpose, the same IU1 circuit SY is connected to all processors P0 to P11, and there is a large variation in the reception speed of each processor. The processor that sends out the data also sends data indicating the end of the transfer after the end of the transfer.The block sensor that receives the data sends the same 11Jl to the synchronous circuit SY. The synchronization circuit SY detects that a synchronization request has been issued from all the processors.This makes it possible to detect the end of data transfer without wasting time. Not shown. However, the configuration of the processor and common bus as shown in Fig. 1, excluding the synchronous circuit sy, is assumed to be the subset of the parallel computer, and the top-level common bus ■, 0
By further connecting the processors to a ring-shaped bus via a relay buffer, a parallel computer including a plurality of processor groups as shown in FIG. 1 can be realized. [Operation] In order to enable the broadband function from any processor in a hierarchical bus, it is necessary to control the transfer direction of the relay buffers B11 to Bn that relay between buses of different hierarchies. In the present invention, the configuration of the arbitration circuits C11-CO that determines the processor that performs the data broadcasting I and C0 has a hierarchical configuration that corresponds to the hierarchical configuration of the common buses I and 11-LO, and the arbitration circuits in each hierarchy By controlling the transfer direction of the relay buffer that corresponds to itself, broadcast I~ to the entire bus is realized. In addition, in a one-layer bus, sent data is once stored in a relay Hanwha and then relayed. Therefore, it takes some time after one processor sends out the last data until the data reaches all processors. Furthermore, the processor that sent the data cannot detect that the data has been distributed. Therefore, in order to efficiently determine the end of data transfer, a special code with a broadcast feel is sent, and when this code reaches all processors, the synchronization circuit SY detects the end of data transfer. For example, a block with a hierarchical bus connection as shown in Figure 1.
【:1
セノザ群を,1枚のプリント基板上で実現し。
これらをさらにリング状のバスに接続することにより,
フ箇コードギャスi・を実現することも可能であり.柔
軟性,拡張性に富む構成とすることができる。
[実施例]
第2図は本発明の一実施例に係る調停回路と中継用バッ
ファの関係説明図,第3図は本発明の一実施例による動
作例.第4図は本発明の一実施例による動作タイムチャ
ー1・を示ず。
第2図(イ)に示すように2各中継用バツフアI3jは
2つのF I F O (First In Fi
rst Out)バッファFAO.FBOで構成される
双方向のデータバッファである。
中継用バッファBiば,次の3状態のいずれかをとる。
■ 下位のバスから上位のバスへデータを送るバッファ
F A. 0が作動している状態■ 上位のバスから下
位のバスへデータを送るバッファFBOが作動している
状態
■ どちらのバッファFAO,FBOも作動していない
状態。
調停回路C」は、5位のプロセッサまたは下位の調停回
路からのデータ送信要求を示すリクエスト信号rl,r
2(信号数はF位装置の数による)を入力し、ビジー信
号b1および許可信号g13g2を出力する。また、上
位に対して、リクエスト信号rOを出力し、」三位から
のビジー信号bO1許可信号goを受ける。
調停回路C+は、第2図(イ)、(ロ)に示すよ・うに
、中継用バッファBiの転送方向を決定する。
■ ビジー信号bOと許可信号goがともに“°I゛の
場合、下位の装置がバスを使えるので、イネーブル信号
e01を” 1 ”にして、FIFOバッファFAOを
作動させる。
■ ビジー信号bOが“1”で、許可信号goが“O°
″の場合、他の装置がバスを使っているので、イネーブ
ル信号e02を“1゛′にして、FIFOバンファFB
Oを作動させる。
■ ビジー信号bOと許可信号gOがともに“0゛の場
合、イネーブル信号eo1.e02をともに゛0パにし
て、FIF○バッファFAO,FBOを作動させない。
例えば、第3図に示すように、プロセッサP2が転送要
求の信号を出したとする。このリクエスト信号rば、調
停回路CI2へ伝えられ、同期回路SYにより同期が確
定するまで保持される。
各調停回路は、それぞれ自分の下位のプロセッサまたは
調停回路が転送要求を出したときに、」三位の調停回路
に転送要求を送る。また、上位の調停回路から転送許可
が送られてきたときに、下位のプロセッサまたは調停回
路に転送許可を中継する。
このとき、複数の転送要求が出ているときには。
その中から1つを選んで転送許可を送る。また転送の許
可が送られていないプロセッサへは、バスが使用中であ
ることを示す信号(ビジー信号)を送る。調停回路CO
については、これより上位の調停回路がないので、転送
要求を受けると、いずれかの調停回路に転送許可を出す
。
プロセッサ内部の要求回路は、転送許可を受けると転送
の起動をかげる。また、要求を出していながら転送許可
を得られなかった要求回路は、内部で転送要求を保持し
、外部への出力を止める。
中継用バッファB11〜Bnのデータ転送の方向は、対
応する中継回路C1,1〜Cnの情報をもとに決定され
る。バスが使用中であることを示すビジー信号がアクテ
ィブになると、中継用バッファBl]〜Bnは、内蔵す
る2つのバッファのうちどちらかを作動させる。このと
き、対になっている調停回路C11〜Cnが転送許可を
受けているときは、データを上位のバスへ送り出すよう
に。
また、転送許可を受けていないときは、下位のバスへデ
ータを送り出すように、バッファを作動させる。
バスの送信権を獲得したプロセッサは、データの転送が
終了したのち、データ転送の終了を表す特殊なデータを
送り出す。各プロセッサのデータ受信部で、送られてき
たデータが転送の終了を意味するデータであることを検
出すると、それを同期回路SYに知らせる。同期回路S
Yば、すべてのプロセッサの受信が終了したことを検出
した後に、各プロセッサにバスの解放要求を出す。その
中で、転送許可が与えられているプロセッサの要求回路
は、自分の転送要求の保持を止め、バスを解放する。バ
スが解放されると、他のプロセンサ内部で要求を保持し
ているものがあるときは、その転送要求を再び調停回路
に送る。
プロセッサP2から出た転送要求の信号rが調停回路C
12,CIを経て、調停回路COに伝えられ、転送許可
を得たときの階層型バスの制御状態は、第3図に示すよ
うになる。転送許可は。
調停回路COから、調停回路CI、CI2に対して送ら
れる。
第3図に示すように、転送許可を得ている調停回路CL
C12と対になっている中継用バッファB1..8
1.2の転送方向が下位から上位へとなる。これによっ
て、プロセッサP2がバスL 1.2へ送ったデータは
、中継用バッファB12とプロセッサP3へ送られる。
また、中継用バッファB12が受けたデータは、中継用
バッファB1とB11へ送られる。同様に中継用バッフ
ァ内に図示した矢印のように、データが送られて、すべ
てのプロセッサに対しデータが送られることになる。
プロセンサP2が データを6個送り出し、最後に終了
を示すデータendを送ったときのデクの流れは、第4
図に示すようになる。
プロセッサP3に対しては、最も早くデータが到着し、
プロセッサPnには、最も遅くデータが到着する。すべ
てのプロセッサが、終了を示すデータendを受は取る
と、同期回路SYによってそれを検出し、同期が確立す
る。
以下、具体例にしたがって、さらに詳細に説明する。
あるプロセッサから他のプロセッサへ送られるデータは
5例えば第5図に示すようなフォーマットになっている
。
データの本体は1第5図(イ)に示すよ・うに32ビッ
ト幅であり、これに各1ビツトのRLSピントとHDビ
ットが付加される。
転送されるデータに先立って、ヘッダHDと呼ばれる特
殊なデータが送られる。ヘッダHDは。
第5図(ロ)に示すように構成され、どのプロセッサ(
PE)がこのデータを受信するかを決定する情報を持つ
。
ヘッダのH,が“1”″のとき、すべてのプロセッサが
受信するデータであることを示す。H,が′“0゛のと
き1次のR2,R3が意味を持つ。
すべてのプロセッサには、あらかじめ何種類かの固有の
識別子(ID)が割り当てられる。例えば TDOは各
プロセッサに対してユニークに割り当てられるIDであ
り、IDIは特定のグループごとに同じ内容で割り当て
られるIDである。
ヘッダHD内のR2は1受信するプロセッサを指定する
IDを示し、各プロセッサでは1 自分のIDと、この
I’l 2で指定されたIDとが等しいとき自分宛のデ
ータと判断する。比較の対象となるIDの種類は、■]
3によって選択する。
例えばH,を“0゛とし、R3でIDIを選択すること
により、H□で指定された特定のIDを持つ特定のグル
ープに対してのみデータを送ることができるようになっ
ている。
HDビットを“1°“にすることにより、データ本体が
ヘッダであることを示す。
また、RLSビットが立っているデータは、データ転送
の終了を示す特殊なデータ(終了データ)である。この
データは、自分の転送要求を下げるときに送り出す。全
プロセッサは、RLSピントの立ったデータを送り出す
か、または受信したときに、同期回路に同期要求を出す
。
すべてのプロセッサからの同期要求が出そろった時は、
このデータを含めてすべてのデータの転送が終わった時
であるので、転送要求をクリアする。なお、RLSピン
トの1”の終了データは中継用バッファのFIFOバッ
ファに取り込まれないようにするために、HDビットも
“1″゛とされ、ヘッダと同様に取り扱われる。
各プロセッサの構成は2例えば第6図に示すようなって
いる。
第6図において、PIはプロセッサ、R1は転送要求回
路、S]は受信制御回路、MEMはメモIJ、CPUは
中央処理装置、FFIはR3型フリップフロップ、DI
はD型フリップフロップ、FAlは送信用のFIFOバ
ッファ、FBIは受信用のFIFOバッファ、TBIは
スリーステートバッファ、ID1〜4はIDを記憶する
レジスタ。
MlはIDを選択するセレクタ、Tlは比較器。
HOはヘッダを記憶するレジスタ、AOI〜A06はア
ンド回路、0ROL、0RO2はオア回路N1〜N3は
ノット回路を表す。
第6図に示すプロセッサP1に関係する信号の意味は9
以下のとおりである。
DATA :データ本体(D3.〜D。)とHDビット
とRL Sビットの34ビツト。
rdy :自分がFIFOバッファFA1.FBlに
送信または受信可能なときに“1′”にする信号。
ack :各部分パスに接続されているプロセッサと
中継用バッファがすべて受信可能であるときに゛1”に
なる信号。
rls :DATAのRLSビット(終了データ)を
送信または受信したときに1”になる信号。
5ync:同期確立信号であって、すべてのプロセッサ
がrlsピントを立てることにより。
同期回路から1″が返ってくるもの。
r] :このプ1コセッザP1からの転送開始要求を
示すリクエスト信号。
bl ;自分も含めていずれかのプロセツサがバスを
使用しているときに“1゛になるビジー信号。
gl :自分か転送許可を受けているときに”I“に
なる許可信号。
el】 :送信側のイネーブル信号。
el2 :受信側のイネーブル信号。
rdyl:FIFOハンフy F A 1にデータがあ
るときにパ1゛になる信号。
r d : F I F OバッファFAIからの
読み出しを示すり−ト信号。
rdy2;FrFOバッファFB1に空きがあって書き
込み可能なときに“1′になる信号。
wr :FIFOバッファFBIへの書き込みを示
ずライI・信号。
送信用FIFOバッファFAIば、34ピント幅のデー
タを記憶するバッファであり、このうち上位2ピツ1〜
は、ヘッダを示ずHDビットと解放データを示ずRL
Sビットである。l(DビットとRLSビットば、直接
書き込めないので、あらがしめD型フリップフロンプI
) 1に書き込む。
受信用FIF○バッファFBIは、HDビットとRLS
ビットを他のユニットで処理するため32ビット幅であ
る。空きがあって、rdy2が“1゛であり、wrが“
1゛′のとき バス上のデータを取り込む。
転送要求回路R1内のR3型フリップフロップFFIは
、このプロセツサPIの転送要求を記憶する。このR8
型フリップフロップFFIば CPUにより” l ”
にセットされ、同期回路からの信号s y n、 cに
よりリセットされる。
このプロセツサP1が信号r1を” 1 ”にして転送
要求を出すと、転送許可がglに返ってくる。
このとき、転送要求回路R1は、イネーブル信号e 1
. ]をアクティブにし、FIFOバッファFA】から
スリーステートバッファTBIを介してデータの送出を
始める。また、外部に対する転送制御信号rdy(!:
ackに対して、FIFOハ7ファFAIが反応するよ
うにする。
一方、他のプ1コセッ・す・が転送を行うときには。
ビジー信号b1がアクティブになる。このときには、転
送要求回路R1は、イネーブル信号c12をアクティブ
にして FIFOバッファFI31がデータを受信する
よ・うに、受信制御回路S1をアクティブにする。
受信制御回路S1は、DA、TAのHDピノI・とac
k信号が1″のとき、転送ヘッダをレジスタI−10に
記録する。このレジスタ丁]0は、イネーブル信号e
]、 2が0゛のときクリアされる。
FIFOバッファFBIへの書き込みは、レジスタHO
の内容とack信号とによって制御される。I/ジスタ
HOの内容が、以下の2条件のうちどちらかを満たし、
かつack信号が°“1゛のとき、FIFOハンファF
BIへデータが書き込まれる。
条件1)Hlが゛Iパである。
条件2)H,によって選択されたIDレジスタの内容と
、I]2の内容が等しい。
第7図は、中継用バッファの構成例を示している。
第7図において、Blは中継用バッファ、 FAOは
送信用のFI F Oバッファ、FBOは受信用のFI
FOバッファ、TBO1,、TBO2はスリーステ−ト
ハソファ、Al〜A8はアンド回路。
OR1,01’i’2はオア回路を表す。
第7図に示す中継用バッファBlに関係する信号の意味
は、以下のとおりである。
DATA、:データ本体(D3.〜1)。)とHDヒ・
ν]・とR,L SピッI・の34ビット。
eol :FIFOバッファ F A Oをアクティブ
にする信号。
eO2:FIFOバッファFBOをアクティブにする信
号。
ackO:FIFOバッフy FAOがアクティブのと
き、FAOに次のデータを出力させ、また F T F
○バッファF B Oがアクティブのとき、FBOにデ
ータを書き込む制御信号。
ackl :FIFOハyフ71” A Oがアクティ
ブのとき、FAOにデータを書き込み、またFiFOバ
ッファFBOがアクティブのとき。
FBOに次データを出力させる制御信号。
rd yO: F IFoハ、、フyFAoがアクティ
ブのとき、FAOがデータを持っていることを示し、ま
た、FIFOバッファFBOがアクティブのとき、FB
Oに空きがあることを示す信号。
rdyl+FTFOバッファFAOがアクティブのとき
、FAOに空きがあることを示し、また、FIFOハン
ファFBOがアクティブ゛のとき、FBOにデータがあ
ることを示す信号。
また、各FIFOバッファFAO,FBOに対する信号
の内容は以下のとおりである。
rd :FIFOバッファに次のデータを出力させ
る信号。
rdy :FTFOハソファに次のデータがあること
を示す信号。
wr :FIFOバッファにデータを書き込む制御
信号。
nf :FIFOバッファにデータを受信する空き
があることを示す信号。
FrF○バッファFAOは、調停回路からのイネーブル
信号e01がアクティブで、ackl信号が°“1′の
とき、下位からのデータを取り込み。
そのデータを、スリーステートバッファTBOIを介し
て上位へ送り出す。
FIF○バンフ7FBOば、調停回路からのイネーブル
信号e02がアクティブで、ackO信号が“1゛のと
き、 1:位からのデータを取り込み。
ackl信号がパ1゛のとき、スリーステートバッファ
TBO2を介して、データを下位へ送り出す。
第8図および第9図は、2つのプロセッサPIP2と、
中継用バッファB1および調停回路C1との接続例を示
している。符号は、第6図および第7図に示すものに対
応している。
各プロセッサP1..P2は、転送要求回路R1゜R2
を持ち+ IIIJ停回路C1との間でバスを要求する
リクエスト信号r1..r2とビジー信号b1と許可信
号g1..g2とをやりとりする。調停回路CIは、さ
らに上位の調停回路との間で、リフニス1−信号rO,
ヒジー信号bO2許可信号goの授受を行う。
送信用FIFOハンファFΔ1、FA2は、転送許可を
示す許可信号gl、g2が来たときに作動し、受信要求
Flド0バッファFBI、FB2ば、ビジー信号b1.
.b2だけがきたときに作動する。
また、中継用バンファB1と各プロセッサP1゜P 2
との間の転送制御信号であるrdy信号とack信号と
の接続は1例えば第9図に示すようになっている。
各プロセッサPL、P2および中継用ハンファB1のレ
ディ信号rdy、rdy’、rdylがそろったときに
、アンド回路ANDIOによってアクノリッジ信号ac
klを返し、受信側のFIFOバッファにデータを取り
込ませると同時に。
送信側のFIFOバッファに次のデータを出力させる。
プロセッサ2台が接続される例を示したが、3台以」−
の場合も同様である。
同期回路SYは1例えば第10図(イ)に示すように構
成される。
各プロセッサからの転送終了を示ず信号rlsO〜rl
snを保持するR3型フリップフロップF O−F n
と これらのフリップフロップFO〜Fnをリセットす
るためのD型フリップフロンブD−FFと、アント回路
ANDを持つ。
第10図(ロ)は、その動作例を示している。
各プロセッサからのrls信号は、各フリップフロップ
FO〜Fnに保持され、これらの出力QO〜Qnがずべ
て“1゛になると、アンド回路ANDにより、同期確立
信号5yncが1”になる。
これより、D型フリップフロップD−FFがセントされ
、Qcが1”″になって、フリップフロップFO−Fn
がリセッ1へされる。
第11図は、第1図に示す各調停回路の構成例を示して
いる。
第11図において、PRは転送要求が競合したときに優
先的に転送許可を与えるものを決める優先回路である。
FFO]、、FFO2は通常のD型フリップフロップで
、Dに入った入力信号をクロックにより保持する。FF
O3〜FFO5はイネーブル入力付きのD型フリップフ
ロップでありE入力が“1゛のときのクロックで Dに
入った入力信号を保持する。EXORは排他的論理和回
路、A21〜A26はアンド回路、0R20はオア回路
、N10〜N 1.2はノット回路を表す。
この調停回路は、下位装置が3個の場合の例を示してい
る。
下位のプロセッサまたは調停回路から、転送要求のリフ
ニスi・信号r1〜r3がくると、オア回路OR20を
介してD型フリップフロップFF01をセットし、上位
ヘリクエスト信号rOを送る。
これにより上位から転送許可を示す許可信号goとビジ
ー信号bOが返ってくるので、これを要求を出したプロ
セッサまたは調停回路へ、D型フリップフロップFFO
3〜FFO5を介して、許可信号g1〜g3として送り
返す。
なお、D型フリップフロップFFO3〜FFO5の更新
は、排他的論理和回路EχORとフリンプフロップFF
O2とによって、ビジー信号bOが変化したときのみ行
う。
もし、rl〜r3に、複数の転送要求が送られている場
合には、優先回路PRにより1つだけ選択して、許可信
号g1〜g3を返す。
ビジー信号boがI”°から0゛になると。
このときには許可信号goも“0゛″になるので。
これがD型フリップフロップFFO3〜FFO5に取り
込まれ2転送要求がクリアされる。
第12図は1本発明の他の構成例を示している。
この例では2階層型バス構成をとるいくつかのプロセッ
サ群C1,G2. ・・・を、リング状のバスL100
で接続することにより、並列計算機を構成している。
各プロセンサ群C1,G2.・・・は、それぞれ第1図
に示すような構成になっている。同期回路は。
各プロセッサ群に個別に設けて、それを結合してもよ(
、また全体に1個だけ設けてもよい。
これらの階層構成をとるバスの最」三位の共通バスLO
,LO’、 ・・・を、中継用バッファBO,BO′
、・・・を介して2 リング状に構成されるバスL10
0に接続する。
なお Bal、Bbl、・・・はリング入力用のバッフ
ァであり、Ba2.Bb2.・・・はリング出力用のバ
ッファである。Ca、Cb、・・・は調停回路であり、
第11図に示す調停回路と同様に構成されるものである
。
このリング部の接続は1例えば第13図に示すようにな
っている。第13図において、CO,BO,Ca、Ba
l、Ba2.Llooは第12図に示すものに対応する
。八30〜A32はアンド回路、N30はノット回路、
0R30はオア回路。
TE01.TE31はスリーステートバッファを表す。
中継用バッファBOについては、第7図に示すものと同
様である。リング入力用バッファBa 1゜リング出力
用バッファBa2には、それぞれ1つのF T F O
バッファFBal、FBa2がありバスL 100は片
方向への転送が行われるようになっている。、FIFO
バッファFBal、FBa2に関する制御信号wr、n
f、rd、rdyは第7図で説明したものと同様である
。
このリング部の下位に転送権を持ったプロセッサがある
とき、調停回路COのイネーブル信号e1]がアクティ
ブになる。これより、中継用バッファBOからリング出
力用バッファBa2へデータが送られる。リング用ハン
ファBa2へ取り込まれたデータは、第12図に示す隣
のリング入力用バッファBblへ送られ、順次、他のプ
ロセッサ群G2.・・・に対して、リング状のバスL
1. OOを介して送られるようになっている。
リングを回ってきたデータは、リング入力用バッファB
alの入力部でFIFOバッファFBa1への書き込み
を禁止しながら、左側のリング出力用バッファへリード
信号rdを送ることによって、バスL 100上から取
り除く。
調停回路COの下位に、転送権を持ったプロセソザかな
いとき、調停回路Caからのビジー信号blOによって
調停回路COのイネーブル信号e i、 2がアクテ
ィブになる。
これより2 リング人力用バ、ンファFBalのスリー
ステートバッファTB30が開き1図示左側から送られ
てきたデータが、中継用バッファBOとリング出力用バ
ッファBa2へ送られる。
第1図に示す階層型のバスは、同様に何段にも構成する
ことができる。また、それらをバスの駆動能力に応じて
、第12図に示すリング状のバスで結合することが可能
である。したがって2階層型のバスとリング状のバスと
によって構成される共通バスには、プロセッサを何台で
も接続することが可能になる。
〔発明の効果〕
以上説明したように2本発明によれば、共通バスに接続
可能なプロセッサ数の制限がなくなり。
多数のプロセッサを接続した共通バス上で、簡単な制御
によりブロードキャスト機能を実現することができるよ
うになる。[:1
The Cenoza group is realized on a single printed circuit board. By further connecting these to a ring bus,
It is also possible to realize the code gas i. The configuration can be highly flexible and expandable. [Embodiment] FIG. 2 is an explanatory diagram of the relationship between an arbitration circuit and a relay buffer according to an embodiment of the present invention, and FIG. 3 is an example of operation according to an embodiment of the present invention. FIG. 4 does not show an operation time chart 1 according to an embodiment of the present invention. As shown in FIG. 2(a), each of the two relay buffers I3j has two FIFO (First In Fi
rst Out) buffer FAO. It is a bidirectional data buffer consisting of FBO. The relay buffer Bi takes one of the following three states. ■ Buffer F that sends data from the lower bus to the higher bus A. 0 is operating. ■ Buffer FBO, which sends data from the upper bus to the lower bus, is operating. ■ Neither buffer FAO nor FBO is operating. Arbitration circuit C" receives request signals rl and r indicating a data transmission request from the fifth-rank processor or the lower-order arbitration circuit.
2 (the number of signals depends on the number of F-rank devices), and outputs a busy signal b1 and a permission signal g13g2. It also outputs a request signal rO to the higher rank, and receives a busy signal bO1 and a permission signal go from the third rank. The arbitration circuit C+ determines the transfer direction of the relay buffer Bi, as shown in FIGS. 2(a) and 2(b). ■ If both the busy signal bO and the permission signal go are "°I", the lower device can use the bus, so the enable signal e01 is set to "1" and the FIFO buffer FAO is activated. ■ The busy signal bO is "1" ”, the permission signal go is “O°
'', other devices are using the bus, so the enable signal e02 is set to ``1'' and the FIFO buffer FB is
Activate O. ■ When the busy signal bO and the permission signal gO are both "0", the enable signals eo1.e02 are both set to "0", and the FIF○ buffers FAO and FBO are not activated. For example, as shown in FIG. Suppose that P2 issues a transfer request signal.This request signal r is transmitted to the arbitration circuit CI2 and held until synchronization is established by the synchronization circuit SY.Each arbitration circuit is connected to its own lower processor or When the arbitration circuit issues a transfer request, it sends a transfer request to the third-rank arbitration circuit. Furthermore, when a transfer permission is sent from a higher-level arbitration circuit, the transfer permission is relayed to a lower-level processor or arbitration circuit. At this time, when multiple transfer requests are issued. Select one from them and send transfer permission. Furthermore, a signal (busy signal) indicating that the bus is in use is sent to a processor to which transfer permission has not been sent. Arbitration circuit CO
Since there is no arbitration circuit higher than this, when a transfer request is received, transfer permission is issued to one of the arbitration circuits. When the request circuit inside the processor receives transfer permission, it prevents the start of the transfer. Further, a request circuit that has issued a request but has not been granted transfer permission retains the transfer request internally and stops outputting it to the outside. The direction of data transfer of the relay buffers B11 to Bn is determined based on the information of the corresponding relay circuits C1, 1 to Cn. When the busy signal indicating that the bus is in use becomes active, the relay buffers Bl] to Bn activate one of the two built-in buffers. At this time, when the paired arbitration circuits C11 to Cn have received transfer permission, the data is sent to the upper bus. Furthermore, when transfer permission is not received, the buffer is activated to send data to the lower-order bus. After the processor that has acquired the right to transmit the bus completes the data transfer, it sends out special data indicating the end of the data transfer. When the data receiving section of each processor detects that the sent data is data indicating the end of transfer, it notifies the synchronization circuit SY of this. Synchronous circuit S
If yes, after detecting that all processors have finished receiving, a bus release request is issued to each processor. Among them, the request circuit of the processor to which transfer permission has been granted stops holding its own transfer request and releases the bus. When the bus is released, if there is another processor holding a request, the transfer request is sent to the arbitration circuit again. The transfer request signal r issued from the processor P2 is sent to the arbitration circuit C.
12, the control state of the hierarchical bus is shown in FIG. 3 when the data is transmitted to the arbitration circuit CO via CI and transfer permission is obtained. Transfer permission. It is sent from arbitration circuit CO to arbitration circuits CI and CI2. As shown in Figure 3, the arbitration circuit CL that has received transfer permission
Relay buffer B1.C12 is paired with relay buffer B1.C12. .. 8
1.2 transfer direction is from lower to upper. As a result, the data sent by processor P2 to bus L1.2 is sent to relay buffer B12 and processor P3. Further, data received by the relay buffer B12 is sent to the relay buffers B1 and B11. Similarly, data is sent to all processors as indicated by the arrows in the relay buffer. The flow of data when Prosensor P2 sends six pieces of data and finally sends data end indicating the end is as follows:
The result will be as shown in the figure. For processor P3, data arrives earliest,
Data arrives at processor Pn the latest. When all processors receive the data end indicating termination, the synchronization circuit SY detects it and synchronization is established. Hereinafter, a more detailed explanation will be given according to a specific example. Data sent from one processor to another is in a format as shown in FIG. 5, for example. The main body of the data has a width of 32 bits as shown in FIG. Prior to the data being transferred, special data called a header HD is sent. Header HD. It is configured as shown in Figure 5 (b), and which processor (
PE) has information that determines whether to receive this data. When H in the header is "1", it indicates that the data is received by all processors. When H is "0", primary R2 and R3 have meaning. All processors are assigned some type of unique identifier (ID) in advance. For example, TDO is an ID uniquely assigned to each processor, and IDI is an ID assigned with the same content to each specific group. R2 in the header HD indicates an ID that designates the processor that receives the data, and each processor determines that the data is addressed to itself when its own ID and the ID designated by I'l2 are equal. The types of IDs to be compared are ■]
Select by 3. For example, by setting H to "0" and selecting IDI with R3, data can be sent only to a specific group with a specific ID specified by H□. HD bit By setting "1°" to indicate that the data body is a header. Also, data with the RLS bit set is special data (end data) that indicates the end of data transfer. , when lowering its own transfer request. All processors send a synchronization request to the synchronization circuit when they send or receive data with RLS focus. When synchronization requests from all processors have been issued. teeth,
Since this is the time when all data including this data has been transferred, the transfer request is cleared. In order to prevent the RLS pinto end data of 1 from being taken into the FIFO buffer of the relay buffer, the HD bit is also set to 1 and is treated in the same way as the header.The configuration of each processor is 2. For example, it is as shown in Fig. 6. In Fig. 6, PI is a processor, R1 is a transfer request circuit, S] is a reception control circuit, MEM is a memory IJ, CPU is a central processing unit, and FFI is an R3 type flip-flop. , D.I.
is a D-type flip-flop, FAl is a FIFO buffer for transmission, FBI is a FIFO buffer for reception, TBI is a three-state buffer, and ID1 to ID4 are registers for storing IDs. Ml is a selector that selects an ID, and Tl is a comparator. HO is a register that stores a header, AOI to A06 are AND circuits, 0ROL and 0RO2 are OR circuits, and N1 to N3 are NOT circuits. The meanings of the signals related to processor P1 shown in FIG. 6 are 9.
It is as follows. DATA: 34 bits of data body (D3.~D.), HD bit, and RLS bit. rdy: I am the FIFO buffer FA1. A signal that is set to "1'" when transmission or reception is possible to FBl. ack: A signal that becomes ``1'' when all the processors and relay buffers connected to each partial path can receive data. rls: A signal that becomes 1'' when the RLS bit (end data) of DATA is sent or received. A signal. 5sync: Synchronization establishment signal, by which all processors set rls focus. 1" is returned from the synchronization circuit. r]: A request signal indicating a request to start transfer from this processor P1. bl; Returns "1" when any processor including itself is using the bus. Busy signal. gl: A permission signal that becomes “I” when you have received transfer permission. el]: Enable signal on the transmitting side. el2: Receiving side enable signal. rdyl: A signal that becomes 1 when there is data in FIFO FA1. r d: Lite signal indicating reading from FIFO buffer FAI. rdy2: Signal that becomes “1” when there is space in FrFO buffer FB1 and writing is possible. wr: Write I signal indicating that writing to FIFO buffer FBI is not performed. If FIFO buffer FAI for transmission, 34 pint width data It is a buffer that stores the top two pits 1~
shows no header, no HD bits and no free data, RL
This is the S bit. l (The D bit and RLS bit cannot be written directly, so please note that the D-type flip-flop I
) Write to 1. Reception FIF○ buffer FBI has HD bit and RLS
It is 32 bits wide because the bits are processed by other units. There is space, rdy2 is "1", and wr is "
When set to 1', data on the bus is taken in. The R3 type flip-flop FFI in the transfer request circuit R1 stores this transfer request of the processor PI. This R8
Type flip-flop FFI is "l" by CPU.
and is reset by the signals sy n, c from the synchronous circuit. When processor P1 sets signal r1 to "1" and issues a transfer request, transfer permission is returned to gl. At this time, the transfer request circuit R1 uses the enable signal e 1
.. ] becomes active and starts sending data from FIFO buffer FA] through three-state buffer TBI. In addition, the transfer control signal rdy (!:
The FIFO FAI is made to respond to the ACK. On the other hand, when another PC makes a transfer. Busy signal b1 becomes active. At this time, the transfer request circuit R1 activates the enable signal c12 and activates the reception control circuit S1 so that the FIFO buffer FI31 receives data. The reception control circuit S1 is connected to HD Pino I and ac of DA and TA.
When the k signal is 1'', the transfer header is recorded in register I-10.
], cleared when 2 is 0゛. Writing to the FIFO buffer FBI is done using register HO.
and the ack signal. The contents of I/Jister HO satisfy either of the following two conditions,
And when the ack signal is “1”, the FIFO Hanwha F
Data is written to BI. Condition 1) Hl is ゛Ipa. Condition 2) The contents of the ID register selected by H, and the contents of I]2 are equal. FIG. 7 shows an example of the structure of the relay buffer. In Figure 7, Bl is a relay buffer, FAO is a transmitting FIFO buffer, and FBO is a receiving FIFO.
The FO buffer, TBO1, and TBO2 are three-state sofas, and Al to A8 are AND circuits. OR1, 01'i'2 represents an OR circuit. The meanings of the signals related to the relay buffer Bl shown in FIG. 7 are as follows. DATA: Data body (D3.~1). ) and HD
ν]・34 bits of R, L S pi I・. eol: A signal that activates the FIFO buffer FAO. eO2: Signal that activates FIFO buffer FBO. ackO: FIFO buffer y When FAO is active, causes FAO to output the next data, and F T F
○Buffer FBO Control signal to write data to FBO when O is active. ackl: FIFO high 71" When AO is active, data is written to FAO, and when FiFO buffer FBO is active. Control signal that causes FBO to output the next data. rd yO: FIFO,, yFAo When is active, it indicates that FAO has data, and when FIFO buffer FBO is active, FB
A signal indicating that O is vacant. When the rdyl+FTFO buffer FAO is active, this signal indicates that there is space in the FAO, and when the FIFO buffer FBO is active, this signal indicates that there is data in the FBO. Further, the contents of the signals for each FIFO buffer FAO and FBO are as follows. rd: A signal that causes the FIFO buffer to output the next data. rdy: A signal indicating that the FTFO has the next data. wr: Control signal to write data to the FIFO buffer. nf: A signal indicating that there is space in the FIFO buffer to receive data. The FrF○ buffer FAO takes in data from the lower level when the enable signal e01 from the arbitration circuit is active and the ackl signal is ``1''. The data is sent to the upper level via the three-state buffer TBOI. FIF ○For Banff 7FBO, when the enable signal e02 from the arbitration circuit is active and the ackO signal is "1", data from the 1: position is taken in. When the ackl signal is 1, data is sent to the lower level via the three-state buffer TBO2. FIGS. 8 and 9 show two processors PIP2,
An example of connection between relay buffer B1 and arbitration circuit C1 is shown. The symbols correspond to those shown in FIGS. 6 and 7. Each processor P1. .. P2 is a transfer request circuit R1°R2
and a request signal r1. which requests a bus between +IIIJ stop circuit C1. .. r2, busy signal b1, and permission signal g1. .. Exchange with g2. The arbitration circuit CI transmits the riffnis 1-signal rO,
It sends and receives the hygienic signal bO2 permission signal go. The transmission FIFOs FΔ1, FA2 are activated when permission signals gl, g2 indicating transfer permission arrive, and reception requests Fl and 0 buffers FBI, FB2 and busy signals b1.
.. It operates when only b2 comes. In addition, the relay buffer B1 and each processor P1゜P2
The connection between the rdy signal, which is a transfer control signal, and the ack signal is as shown in FIG. 9, for example. When the ready signals rdy, rdy', and rdyl of each processor PL, P2 and the relay Hanwha B1 are complete, an acknowledge signal ac is generated by an AND circuit ANDIO.
At the same time, it returns kl and fetches the data into the FIFO buffer on the receiving side. Output the next data to the FIFO buffer on the transmitting side. An example is shown in which two processors are connected, but three or more processors are connected.
The same applies to the case of . The synchronous circuit SY is constructed, for example, as shown in FIG. 10(A). Signals rlsO to rl indicate the end of transfer from each processor.
R3 type flip-flop holding sn
It has a D-type flip-flop D-FF for resetting these flip-flops FO to Fn, and an ant circuit AND. FIG. 10(b) shows an example of its operation. The rls signal from each processor is held in each flip-flop FO to Fn, and when all of these outputs QO to Qn become "1", the synchronization establishment signal 5ync becomes "1" by the AND circuit AND. From this, the D-type flip-flop D-FF is sent, Qc becomes 1'', and the flip-flop FO-Fn
is set to reset 1. FIG. 11 shows a configuration example of each arbitration circuit shown in FIG. 1. In FIG. 11, PR is a priority circuit that determines which transfer permission is given preferentially when transfer requests conflict. FFO], , FFO2 is a normal D-type flip-flop, and holds the input signal input to D by a clock. FF
O3 to FFO5 are D-type flip-flops with an enable input, and hold the input signal input to D with the clock when the E input is "1". EXOR is an exclusive OR circuit, A21 to A26 are AND circuits, 0R20 represents an OR circuit, and N10 to N1.2 represent a NOT circuit. This arbitration circuit shows an example where there are three lower-order devices. When the signals r1 to r3 arrive, the D-type flip-flop FF01 is set via the OR circuit OR20, and the request signal rO is sent to the upper layer.As a result, the permission signal go indicating transfer permission and the busy signal bO are returned from the upper layer. Therefore, this is sent to the processor or arbitration circuit that issued the request through the D-type flip-flop FFO.
3 to FFO5, the permission signals g1 to g3 are sent back. Note that the D-type flip-flops FFO3 to FFO5 are updated using the exclusive OR circuit EχOR and the flip-flop FF.
This is performed only when the busy signal bO changes due to O2. If a plurality of transfer requests are sent to rl-r3, the priority circuit PR selects only one and returns permission signals g1-g3. When the busy signal bo goes from I'' to 0'', the permission signal go also goes to 0''. This is taken into the D-type flip-flops FFO3 to FFO5, and the 2 transfer request is cleared. 1 shows another configuration example of the present invention. In this example, several processor groups C1, G2, etc. having a two-layered bus configuration are connected to a ring-shaped bus L100.
By connecting them, a parallel computer is constructed. Each pro sensor group C1, G2. ... have a configuration as shown in FIG. 1, respectively. The synchronous circuit. You can also provide it separately for each processor group and combine them (
, or only one may be provided throughout. The third common bus LO of these hierarchically structured buses
, LO', . . . as relay buffers BO, BO'
,..., the bus L10 is configured in a ring shape.
Connect to 0. Note that Bal, Bbl, . . . are buffers for ring input, and Ba2. Bb2. ... is a buffer for ring output. Ca, Cb,... are arbitration circuits,
It is constructed similarly to the arbitration circuit shown in FIG. The connection of this ring portion is as shown in FIG. 13, for example. In Figure 13, CO, BO, Ca, Ba
l, Ba2. Lloo corresponds to that shown in FIG. 830 to A32 are AND circuits, N30 is a NOT circuit,
0R30 is an OR circuit. TE01. TE31 represents a three-state buffer. The relay buffer BO is similar to that shown in FIG. Ring input buffer Ba1 and ring output buffer Ba2 each have one F T F O
There are buffers FBa1 and FBa2, and the bus L100 is designed for unidirectional transfer. , FIFO
Control signals wr, n regarding buffers FBa1 and FBa2
f, rd, and rdy are the same as those explained in FIG. When there is a processor with transfer rights below this ring section, the enable signal e1 of the arbitration circuit CO becomes active. From this, data is sent from the relay buffer BO to the ring output buffer Ba2. The data taken into the ring Hanwha Ba2 is sent to the adjacent ring input buffer Bbl shown in FIG. 12, and is sequentially sent to the other processor groups G2 . For ..., ring-shaped bus L
1. It is configured to be sent via OO. The data that has passed around the ring is sent to ring input buffer B.
is removed from the bus L100 by sending a read signal rd to the left ring output buffer while inhibiting writing to the FIFO buffer FBa1 at the input of al. When there is no processor under the arbitration circuit CO that has the right to transfer, the enable signal e i,2 of the arbitration circuit CO becomes active in response to the busy signal blO from the arbitration circuit Ca. From this, the three-state buffer TB30 of the two-ring manual input buffer FBa1 opens and the data sent from the left side in the figure is sent to the relay buffer BO and the ring output buffer Ba2. The hierarchical bus shown in FIG. 1 can similarly be configured in multiple stages. Further, it is possible to connect them by a ring-shaped bus shown in FIG. 12 depending on the driving capacity of the bus. Therefore, any number of processors can be connected to a common bus composed of a two-layer bus and a ring bus. [Effects of the Invention] As explained above, according to the present invention, there is no restriction on the number of processors that can be connected to a common bus. Broadcast functions can now be implemented with simple control on a common bus that connects multiple processors.
第1図は本発明の原理説明図。
第2図は本発明の一実施例に係る調停回路と中継用バッ
ファの関係説明図。
第3図は本発明の一実施例による動作例。
第4図は本発明の一実施例による動作タイムチャー]・
第5図は本発明の−・実施例で用いるデータのフォーマ
ット例
第6図は本発明の一実施例に係るプロセッサの構成例
第7図は本発明の一実施例に係る中継用バッファの構成
例。
第8図および第9図は本発明の一実施例要部説明図。
第10図は本発明の一実施例に係る同期回路の構成例
第11図は本発明の一実施例に係る調停回路の構成例
第12図は本発明の他の構成例
第13図は第12図に示すリング部の接続例を示す。
図中、PO〜Pnはプロセッサ、L]、、1〜LnnL
1〜LnおよびLOは共通バス、B11〜Bnnおよび
B1〜Bnは中継用バッファ、C11〜Cnn C1
〜CnおよびCOは調停回路syは同期回路を表す。FIG. 1 is a diagram explaining the principle of the present invention. FIG. 2 is an explanatory diagram of the relationship between an arbitration circuit and a relay buffer according to an embodiment of the present invention. FIG. 3 shows an example of operation according to an embodiment of the present invention. FIG. 4 is an operation time chart according to an embodiment of the present invention. FIG. 5 is an example of a data format used in the embodiment of the present invention. FIG. 6 is an example of the configuration of a processor according to an embodiment of the present invention. FIG. 7 shows a configuration example of a relay buffer according to an embodiment of the present invention. FIG. 8 and FIG. 9 are explanatory diagrams of main parts of an embodiment of the present invention. FIG. 10 is a configuration example of a synchronous circuit according to an embodiment of the present invention. FIG. 11 is a configuration example of an arbitration circuit according to an embodiment of the present invention. FIG. 12 is an example of another configuration of the present invention. An example of the connection of the ring portion shown in FIG. 12 is shown. In the figure, PO to Pn are processors, L], 1 to LnnL
1 to Ln and LO are common buses, B11 to Bnn and B1 to Bn are relay buffers, C11 to Cnn C1
~Cn and CO represent an arbitration circuit; sy represents a synchronous circuit;
Claims (1)
、1つのプロセッサから他のすべてのプロセッサにデー
タを転送する放送機能を持つ並列計算機において、 複数のグループに分割されたプロセッサが、各グループ
ごとに局所的な共通バス(L11、L12、…)に接続
され、 それぞれの局所的な共通バスが中継用バッファ(B11
、B12、…)を介して上位の共通バス(Li、…)に
接続される階層構造となるように構成され、データを送
出するプロセッサを定める回路であって、バスの階層構
成と対応の取れた階層構成の調停回路(C11、C12
、…)を備え、 調停時のプロセッサの選択情報をもとに、対応する中継
用バッファの転送方向を決定することによって、バス上
に送り出されたデータをすべてのプロセッサに転送する
ようにしたことを特徴とする階層型バス接続の並列計算
機。 2)すべてのプロセッサ(P0、P1、…)に接続され
る同期回路(SY)を備え、 データを送り出すプロセッサが転送の終了後に転送終了
を示すデータを送り、そのデータを受信したプロセッサ
は同期回路に対して同期の要求を出し、同期回路はすべ
てのプロセッサから同期要求が出されていることを検出
することによってデータの転送終了を検出することを特
徴とする請求項1記載の階層型バス接続の並列計算機。 3)請求項1または請求項2記載の階層型バスの最上位
の共通バスを、中継用バッファを介してリング状のバス
に接続したことを特徴とする階層型バス接続の並列計算
機。[Claims] 1) In a parallel computer that is composed of a plurality of processors (P0, P1,...) and has a broadcasting function that transfers data from one processor to all other processors, the computer is divided into a plurality of groups. The processors in each group are connected to a local common bus (L11, L12,...), and each local common bus is connected to a relay buffer (B11).
, B12,...) to the upper common bus (Li,...), and is a circuit that determines the processor that sends data, and is designed to correspond to the hierarchical structure of the bus. Arbitration circuit with hierarchical structure (C11, C12
,...), and the data sent out on the bus is transferred to all processors by determining the transfer direction of the corresponding relay buffer based on the processor selection information during arbitration. A hierarchical bus-connected parallel computer featuring: 2) Equipped with a synchronous circuit (SY) connected to all processors (P0, P1,...), where the processor that sends data sends data indicating the end of the transfer after the end of the transfer, and the processor that receives the data is connected to the synchronous circuit. 2. The hierarchical bus connection according to claim 1, wherein the synchronization circuit detects the end of data transfer by detecting that all the processors issue a synchronization request. parallel computer. 3) A parallel computer with a hierarchical bus connection, characterized in that the common bus at the highest level of the hierarchical bus according to claim 1 or 2 is connected to a ring-shaped bus via a relay buffer.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2182072A JPH0469763A (en) | 1990-07-10 | 1990-07-10 | Parallel computers for hierarchical type bus connection |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2182072A JPH0469763A (en) | 1990-07-10 | 1990-07-10 | Parallel computers for hierarchical type bus connection |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH0469763A true JPH0469763A (en) | 1992-03-04 |
Family
ID=16111863
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2182072A Pending JPH0469763A (en) | 1990-07-10 | 1990-07-10 | Parallel computers for hierarchical type bus connection |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0469763A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100354467B1 (en) * | 1999-10-19 | 2002-09-30 | 가부시끼가이샤 도시바 | Share bus-type parallel computer having the layered structure |
JP2006286002A (en) * | 2005-04-04 | 2006-10-19 | Sony Computer Entertainment Inc | System and device for performing consistency management in distributed type multiprocessor system |
JP2010244512A (en) * | 2009-03-17 | 2010-10-28 | Canon Inc | Data processing device, and data processing method or program |
-
1990
- 1990-07-10 JP JP2182072A patent/JPH0469763A/en active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100354467B1 (en) * | 1999-10-19 | 2002-09-30 | 가부시끼가이샤 도시바 | Share bus-type parallel computer having the layered structure |
JP2006286002A (en) * | 2005-04-04 | 2006-10-19 | Sony Computer Entertainment Inc | System and device for performing consistency management in distributed type multiprocessor system |
JP2010244512A (en) * | 2009-03-17 | 2010-10-28 | Canon Inc | Data processing device, and data processing method or program |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0451938B1 (en) | Multiple cluster signal processor | |
US6233635B1 (en) | Diagnostic/control system using a multi-level I2C bus | |
US7523236B1 (en) | Switching serial advanced technology attachment (SATA) to a parallel interface | |
US5416909A (en) | Input/output controller circuit using a single transceiver to serve multiple input/output ports and method therefor | |
EP0241129A2 (en) | Addressing arrangement for a RAM buffer controller | |
JPS60160463A (en) | Processor system | |
US4417303A (en) | Multi-processor data communication bus structure | |
US5664142A (en) | Chained DMA devices for crossing common buses | |
JPH0469763A (en) | Parallel computers for hierarchical type bus connection | |
US20060041705A1 (en) | System and method for arbitration between shared peripheral core devices in system on chip architectures | |
JP2589821B2 (en) | Central processing unit of information processing system | |
US4583167A (en) | Procedure and apparatus for conveying external and output data to a processor system | |
KR100938612B1 (en) | Transfer device, information processing apparatus having transfer device, and controlling method | |
Dheere | Universal computer interfaces | |
Ibbett et al. | Centrenet–A High Performance Local Area Network | |
JP2504548B2 (en) | Data transfer control method | |
JPS60186151A (en) | Data communicating method between processors | |
JPS6146550A (en) | Connecting device between busses | |
CA1309503C (en) | Selective receiver for each processor in a multiple processor system | |
JPS6115461B2 (en) | ||
JP2705955B2 (en) | Parallel information processing device | |
JPS59177629A (en) | Data transfer system | |
JPS6226563A (en) | Bus request control circuit | |
JP2513275B2 (en) | Computer interface system | |
JPH0325540A (en) | Extended storage system |