JPH0728763A - Broadcast communication method and broadcast routing device - Google Patents

Broadcast communication method and broadcast routing device

Info

Publication number
JPH0728763A
JPH0728763A JP5175070A JP17507093A JPH0728763A JP H0728763 A JPH0728763 A JP H0728763A JP 5175070 A JP5175070 A JP 5175070A JP 17507093 A JP17507093 A JP 17507093A JP H0728763 A JPH0728763 A JP H0728763A
Authority
JP
Japan
Prior art keywords
broadcast
message
processor
communication
routing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP5175070A
Other languages
Japanese (ja)
Other versions
JP3251723B2 (en
Inventor
Kenji Horie
健志 堀江
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP17507093A priority Critical patent/JP3251723B2/en
Publication of JPH0728763A publication Critical patent/JPH0728763A/en
Application granted granted Critical
Publication of JP3251723B2 publication Critical patent/JP3251723B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

PURPOSE:To easily avoid the dead lock even at the time of random occurrence of broadcast requests in parallel computers by determining a specific routing chip as the broadcast routing chip for actual broadcast and transferring a message to this broadcast routing chip at the time of broadcast. CONSTITUTION:One specific broad, cast routing chip 10b for broadcast of 1:N (N>=2) communication is determined among routing chips 10a,... constituting a network. For example, a processor 20c requires broadcast communication, the processor 20c sends a broadcast message to the broadcast routing chip 10b through a routing chip 10c by 1:1 communication to request the broadcast communication. The broadcast routing chip 10b receives the broadcast message to transfer it to the other processors 10a to 10d, thus broadcasting it.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は,並列計算機において複
数の放送通信要求が同時に発生しても,デッドロックを
回避できるようにした放送通信方法および放送ルーティ
ング装置に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a broadcast communication method and a broadcast routing device capable of avoiding a deadlock even when a plurality of broadcast communication requests are simultaneously generated in a parallel computer.

【0002】並列計算機における放送通信は,一つのプ
ロセッサから他の複数のプロセッサへ同じ内容のメッセ
ージを送る通信であり,並列計算機において重要な通信
パターンの一つである。
Broadcast communication in a parallel computer is a communication for sending a message of the same content from one processor to a plurality of other processors, and is one of important communication patterns in a parallel computer.

【0003】[0003]

【従来の技術】ある範囲のノードについて効率よく放送
通信を行う並列計算機の通信制御方式として,例えば特
開平3−102455号公報に開示されている方式があ
る。この方式では,他ノードから送られてきたデータを
方向ごとに受信処理部によって受け取る。次に,宛先検
出部でそのデータ内の宛先ノードの範囲を指定した宛先
情報を検出し,その検出した宛先情報に基づき,ノード
間距離処理部によりそのノードと宛先ノードのノード間
距離を求める。続いて宛先判定部により,データを自ノ
ードへ取り込むかどうかの判断を行うとともに,前記距
離情報に基づきデータの送信の必要性の有無および送信
方向を判定し,データの送信が必要な場合にはそのデー
タを方向ごとの送信処理部に渡し,データを転送する。
2. Description of the Related Art As a communication control system of a parallel computer for efficiently performing broadcast communication with respect to a certain range of nodes, there is a system disclosed in Japanese Patent Laid-Open No. 3-102455. In this method, the data sent from another node is received by the reception processing unit for each direction. Next, the destination detection unit detects the destination information that specifies the range of the destination node in the data, and based on the detected destination information, the inter-node distance processing unit obtains the inter-node distance between that node and the destination node. Subsequently, the destination determination unit determines whether or not the data should be taken into the own node, determines whether or not the data needs to be transmitted and the transmission direction based on the distance information, and when the data needs to be transmitted. The data is transferred to the transmission processing unit for each direction, and the data is transferred.

【0004】また,多くの並列計算機の相互結合網(ネ
ットワーク)のルーティング方式として,ワームホール
ルーティングが採用されているが,ワームホールルーテ
ィングによる放送通信を迅速かつ効率的に行う方式とし
て,例えば特開平3−140035号公報に開示されて
いる放送通信方式がある。この方式では,メッセージを
転送単位に分割したフリットの先頭に放送通信の範囲情
報を持つヘッダフリットおよび末尾に最終フリットを設
け,あるノードからネットワーク上の他のノードに順次
送信し,受信したノードで上記ヘッダフリットを参照し
て範囲情報が他のノードに送信する旨を示すときに範囲
情報を更新して,そのヘッダフリットを送信方向のノー
ドに送信すると共に,これに続いて送信されてくるフリ
ットについて最終フリットまで順次送信するようにして
いる。
Wormhole routing is adopted as a routing method for interconnection networks (networks) of many parallel computers. As a method for performing broadcast communication by wormhole routing quickly and efficiently, for example, Japanese Unexamined Patent Application Publication No. There is a broadcast communication system disclosed in Japanese Patent Publication No. 3-140035. In this method, a flit obtained by dividing a message into transfer units is provided with a header flit having broadcast communication range information at the beginning and a final flit at the end, and one node sequentially transmits to another node on the network, and the receiving node receives it. The range information is updated when referring to the header flit to indicate that the range information is to be transmitted to another node, the header flit is transmitted to the node in the transmission direction, and the flit that is subsequently transmitted. About the last flit, it is transmitted sequentially.

【0005】[0005]

【発明が解決しようとする課題】ワームホールルーティ
ングは,低いレイテンシを実現する一方で,チャネルを
占有するので,放送通信をメッシュあるいはトーラスで
実現するとデッドロックを起こす可能性がある。デッド
ロックを発生させる原因は,チャネルの占有とポートの
占有の二つである。ここで,ポートとはプロセッサとネ
ットワーク間の通信路のインタフェースを意味する。
Wormhole routing, while achieving low latency, occupies a channel, so deadlock may occur if broadcast communication is implemented by a mesh or torus. There are two causes of deadlock: channel occupancy and port occupancy. Here, the port means an interface of a communication path between the processor and the network.

【0006】図10に,従来技術におけるポート占有に
よるデッドロックの例を示す。今,プロセッサ20aと
プロセッサ20dがほぼ同時にワームホールルーティン
グによる放送通信を開始したとする。ワームホールルー
ティングでは,送信プロセッサに接続されているルーテ
ィングチップから,順次,隣接するルーティングチップ
へパスを確保しながらメッセージを送っていく。
FIG. 10 shows an example of deadlock due to port occupation in the prior art. Now, it is assumed that the processors 20a and 20d start broadcasting communication by wormhole routing almost at the same time. In wormhole routing, messages are sent from a routing chip connected to a transmission processor to the adjacent routing chips sequentially while securing paths.

【0007】プロセッサ20aが送った放送メッセージ
が,ルーティングチップ100aからルーティングチッ
プ100bへ届き,プロセッサ20bのポートが確保さ
れ,さらにルーティングチップ100cへ放送メッセー
ジが送られたとする。このとき,プロセッサ20cのポ
ートが,プロセッサ20dの放送通信のために獲得でき
なかったとすると,ポートの空き待ちになる。一方,プ
ロセッサ20dの放送メッセージに対して,プロセッサ
20cのポートが割り当てられ,次にプロセッサ20b
のポートを獲得しようとしたとき,同じくプロセッサ2
0aの放送のためにそのポートが獲得できず,これもポ
ートの空き待ちに入ると,相互にポートの空き待ちにな
って,デッドロックが生じる。
It is assumed that the broadcast message sent by the processor 20a reaches the routing chip 100b from the routing chip 100a, the port of the processor 20b is secured, and the broadcast message is sent to the routing chip 100c. At this time, if the port of the processor 20c cannot be acquired due to the broadcast communication of the processor 20d, the port waits for an available port. On the other hand, the port of the processor 20c is assigned to the broadcast message of the processor 20d, and then the processor 20b is assigned.
When trying to acquire a port of
If the port cannot be acquired due to the broadcast of 0a and the port also waits for a free port, the ports will wait for a free port and deadlock will occur.

【0008】デッドロックが生じた場合,例えば時間監
視によりデッドロックの発生を検出し,一方または双方
が一旦全ポートを解放して,再度リトライすることによ
り,デッドロックを解消する方法がある。しかし,この
方法では,デッドロックを検出するまでに時間がかか
り,またリトライしなければならないので非効率的であ
るという問題がある。
When a deadlock occurs, there is a method of eliminating the deadlock by detecting the occurrence of the deadlock by time monitoring, for example, and then releasing the port once by one or both and retrying again. However, this method has a problem that it takes time to detect a deadlock and it is inefficient because a retry must be performed.

【0009】チャネルの占有に対しては,チャネルを仮
想化して,あたかも複数のチャネルがあるかのように見
せる仮想チャネル方式により,デッドロックの原因を除
去することができる。例えば,構造化チャネルルーティ
ングとして知られているような方式を採用すればよい。
To occupy the channel, the cause of the deadlock can be eliminated by virtualizing the channel and using a virtual channel system that makes it appear as if there are multiple channels. For example, a method known as structured channel routing may be adopted.

【0010】同様に,ポートの占有に対しては,ポート
をマルチポート化することにより解決することが考えら
れる。ポートのマルチポート化とは,ネットワークとメ
モリとのインタフェースにおいて,複数のメッセージが
同時にネットワークからメモリへ転送できるようにする
ことをいう。このためには,ルーティングチップ内のプ
ロセッサへのインタフェースを,放送通信が競合する可
能性がある数だけ多重化する必要があり,そのハードウ
ェアコストはかなり大きなものとなる。
Similarly, it is conceivable that the port occupation can be solved by making the ports multi-ported. Multi-porting means that multiple messages can be simultaneously transferred from the network to the memory at the interface between the network and the memory. To this end, it is necessary to multiplex the number of interfaces to the processors in the routing chip to the extent that there is a possibility of competing broadcast communications, and the hardware cost thereof is considerably large.

【0011】本発明は上記問題点の解決を図り,並列計
算機においてランダムに放送通信要求が起きても,簡単
にデッドロックを回避できるようにすることを目的とし
ている。
It is an object of the present invention to solve the above problems and to easily avoid deadlock even if a broadcast communication request randomly occurs in a parallel computer.

【0012】[0012]

【課題を解決するための手段】図1は本発明の原理説明
図である。図中,10a,10b,…はネットワークに
おけるメッセージの送受信および中継を行うルーティン
グチップ,20a,20b,…は,並列計算機のプロセ
ッサを表す。
FIG. 1 is a diagram for explaining the principle of the present invention. In the figure, 10a, 10b, ... Represent a routing chip for transmitting / receiving and relaying messages in a network, and 20a, 20b ,.

【0013】請求項1記載の放送通信方法では,図1
(A)に示すように,ネットワークを構成するルーティ
ングチップ10a,…の中で,1対N(ただし,N≧
2)通信の放送を行う一つの特定の放送ルーティングチ
ップ10bを定める。
According to the broadcast communication method of claim 1,
As shown in (A), in the routing chips 10a, ... Which constitute the network, 1 to N (where N ≧
2) Define one specific broadcast routing chip 10b for broadcasting communication.

【0014】例えば,プロセッサ20cが放送通信を必
要とするとき,プロセッサ20cは,ルーティングチッ
プ10cを介して,放送ルーティングチップ10bへ1
対1通信により放送メッセージを送り,放送通信を要求
する(図1の)。
For example, when the processor 20c requires broadcast communication, the processor 20c sends a 1 to the broadcast routing chip 10b via the routing chip 10c.
A broadcast message is sent by a one-to-one communication and a broadcast communication is requested (Fig. 1).

【0015】放送メッセージを受け取った放送ルーティ
ングチップ10bは,他のプロセッサ10a〜10dへ
放送メッセージを転送して放送する(図1の)。図1
(B)に示すように,各ルーティングチップ10e,…
から,対応する各プロセッサ20e,…へメッセージを
送るポートが複数(M個)ある場合,請求項2記載の放
送通信方法では,ネットワークを構成するルーティング
チップ10e,…の中で,1対N(ただし,N≧2)通
信の放送を行うM個の特定の放送ルーティングチップ1
0e,10gを定める。
Upon receiving the broadcast message, the broadcast routing chip 10b transfers the broadcast message to the other processors 10a to 10d and broadcasts it (in FIG. 1). Figure 1
As shown in (B), each routing chip 10e, ...
When there are a plurality of ports (M) for sending a message from the respective processors 20e, ... Corresponding to each other, in the broadcast communication method according to claim 2, in the routing chips 10e ,. However, N ≧ 2) M specific broadcast routing chips 1 for broadcasting communication
Set 0e and 10g.

【0016】例えば,プロセッサ20fが放送通信を必
要とするとき,プロセッサ20fは,ルーティングチッ
プ10fを介して,放送ルーティングチップ10eまた
は放送ルーティングチップ10gのいずれかへ1対1通
信により放送メッセージを送り,放送通信を要求する。
For example, when the processor 20f requires broadcast communication, the processor 20f sends a broadcast message via the routing chip 10f to the broadcast routing chip 10e or the broadcast routing chip 10g by one-to-one communication, Request broadcast communication.

【0017】放送メッセージを受け取った放送ルーティ
ングチップ10eまたは放送ルーティングチップ10g
は,他のプロセッサ20e〜20hへ放送メッセージを
転送して放送する。
The broadcast routing chip 10e or the broadcast routing chip 10g that has received the broadcast message
Transmits the broadcast message to the other processors 20e to 20h and broadcasts it.

【0018】請求項3記載の発明では,各放送ルーティ
ングチップは,受け取った放送メッセージを,一旦,プ
ロセッサのメモリにコピーすることなく,FIFO(Fi
rstIn First Out)バッファなどを用いてワームホール
ルーティング的に他のプロセッサへ転送する。
According to the third aspect of the present invention, each broadcast routing chip has a FIFO (Fi
rstIn First Out) Transfers to another processor in a wormhole route using a buffer.

【0019】請求項4記載の発明では,放送通信を要求
するプロセッサは,放送ルーティングチップへ送る放送
メッセージにおける1対1通信用のメッセージヘッダの
後ろに放送通信用のメッセージヘッダを付加し,各放送
ルーティングチップは,受け取ったメッセージの1対1
通信用のメッセージヘッダをストリップし,次が放送通
信用のメッセージヘッダであるか否かを判定し,放送通
信用のメッセージヘッダである場合に,その放送メッセ
ージを他のプロセッサへ転送する。
According to another aspect of the present invention, the processor requesting broadcast communication adds a message header for broadcast communication after the message header for one-to-one communication in the broadcast message to be sent to the broadcast routing chip, so that each broadcast The routing chip has a one-to-one correspondence with the received message.
The message header for communication is stripped, it is determined whether the next is a message header for broadcast communication, and if it is a message header for broadcast communication, the broadcast message is transferred to another processor.

【0020】請求項5記載の発明では,放送メッセージ
に送信プロセッサの識別子を付加し,各ルーティングチ
ップ内で,放送メッセージにおける送信プロセッサの識
別子と自プロセッサの識別子とを比較することにより,
識別子が一致する場合には,その放送メッセージをその
送信プロセッサが受信しないようにフィルタリングす
る。
According to the fifth aspect of the present invention, the identifier of the transmitting processor is added to the broadcast message, and the identifier of the transmitting processor in the broadcast message is compared with the identifier of its own processor in each routing chip.
If the identifiers match, then the broadcast message is filtered so that it is not received by the sending processor.

【0021】請求項6記載の発明では,図1(C)に示
すように,ルーティングチップ10 11,1012,…を二
次元トーラスまたは二次元格子状に接続してネットワー
クを構成する複数のプロセッサからなる並列計算機にお
いて,1対N(ただし,N≧2)通信の放送を行う複数
個の特定の放送ルーティングチップ1011,1022,1
33,1044を定め,これらを対角状に配置する。そし
て,放送通信を要求するプロセッサは,放送ルーティン
グチップの各々へ1対1通信により放送メッセージを送
るようにし,放送メッセージを受け取った各放送ルーテ
ィングチップ1011,1022,1033,1044は,それ
ぞれ列方向または行方向の他のプロセッサへ放送メッセ
ージを転送して放送するようにする。
In the invention described in claim 6, as shown in FIG.
Routing chip 10 11, 1012, ... two
Network by connecting in a two-dimensional torus or two-dimensional grid
A parallel computer consisting of multiple processors
And broadcast one-to-N (however, N ≧ 2) communication
A specific broadcast routing chip 1011, 10twenty two, 1
033, 1044And arrange them diagonally. That
The processor requesting broadcast communication is a broadcast routine.
Send broadcast message to each of Guchip by one-to-one communication
And each broadcast route that received the broadcast message.
Swinging tip 1011, 10twenty two, 1033, 1044Is that
Broadcast messages to other processors in the column or row direction
Messages to be broadcast.

【0022】請求項7記載の放送ルーティングチップ
は,他のプロセッサへ送信するメッセージを格納する送
信用のバッファと,他のプロセッサから受信した自プロ
セッサ宛のメッセージを格納する受信用のバッファと,
ネットワークを介して他のプロセッサからメッセージを
受信する受信部と,ネットワークを介して他のプロセッ
サへメッセージを送信する送信部と,受信したメッセー
ジが自プロセッサ宛でないときに,そのメッセージ全体
を前記送信部へ転送する宛先判定部と,受信したメッセ
ージが自プロセッサ宛であるとき,前記宛先判定部から
そのメッセージを受け取り,メッセージヘッダをストリ
ップし,その後さらにメッセージヘッダがあればそのメ
ッセージを前記送信用のバッファへ転送し,メッセージ
ヘッダがなければそのメッセージを前記受信用のバッフ
ァへ転送するヘッダストリップ部と,前記送信用のバッ
ファに格納されたメッセージを読み出し,そのメッセー
ジヘッダを解析して送信すべき方向を選択し,前記送信
部へメッセージを転送するヘッダ解析部とを備える。
According to another aspect of the broadcast routing chip of the present invention, a transmission buffer for storing a message to be transmitted to another processor, a reception buffer for storing a message addressed to the own processor and received from another processor,
A receiving unit for receiving a message from another processor via the network, a transmitting unit for transmitting a message to the other processor via the network, and when the received message is not addressed to its own processor, the entire message is transmitted by the transmitting unit. To the destination determination unit to be transferred to, and when the received message is addressed to its own processor, receives the message from the destination determination unit, strips the message header, and if there is a further message header, sends the message to the buffer for transmission. To the buffer for receiving and if there is no message header, read the message stored in the buffer for transmitting, and analyze the message header to determine the direction to transmit. Select and send a message to the transmitter And a header analysis unit for feeding.

【0023】[0023]

【作用】ランダムな放送をデッドロックなく実現する簡
単な方法は,放送するプロセッサをアービトレーション
などによりシリアライズし,同時に複数の放送通信が行
われないようにすることである。複数のプロセッサがバ
スに接続されているアーキテクチャでは,アービトレー
ションによりバスを獲得するプロセッサを決定してい
る。そこで,トーラスなどのネットワークで放送を実現
するために,どのプロセッサからの放送メッセージも一
つのプロセッサに付随するルーティングチップに集め
て,そこから放送するようにすれば,そのルーティング
チップでメッセージがシリアライズされ(これがアービ
トレーションになる),デッドロックの問題が解決され
る。このとき,1回のストアアンドフォワード(1回の
受信と1回の送信)を必要とする。
A simple method for realizing random broadcasting without deadlock is to serialize a broadcasting processor by arbitration or the like so that a plurality of broadcasting communications are not performed at the same time. In architectures in which multiple processors are connected to the bus, the processor that acquires the bus is determined by arbitration. Therefore, in order to realize broadcasting on a network such as a torus, if a broadcast message from any processor is collected in a routing chip attached to one processor and broadcast from there, the message is serialized by the routing chip. (This becomes arbitration), the deadlock problem is solved. At this time, one store-and-forward (one reception and one transmission) is required.

【0024】本発明はこの点に着目して,ストアアンド
フォワードのオーバヘッドをなくした低遅延通信を実現
し,デッドロックの発生しない放送通信を実現するもの
である。基本的な原理は,実際に放送するルーティング
チップを特定のものに決め,放送するときには,その放
送ルーティングチップにメッセージを転送し,放送ルー
ティングチップは,放送メッセージをメモリに受信する
ことなく,ワームホールルーティング的にメッセージを
放送する。
Focusing on this point, the present invention realizes low-delay communication in which store-and-forward overhead is eliminated, and realizes broadcast communication in which deadlock does not occur. The basic principle is that the routing chip to be actually broadcast is determined to be a specific one, and when broadcasting, the message is transferred to the broadcast routing chip, and the broadcast routing chip does not receive the broadcast message in the memory and the wormhole Broadcast messages by routing.

【0025】請求項1記載の発明の場合,例えば図1
(A)において,実際に放送するのは,ルーティングチ
ップ10bだけであるので,これにより放送メッセージ
がシリアライズされ,競合によるデッドロックが回避さ
れる。
In the case of the invention according to claim 1, for example, FIG.
In (A), since only the routing chip 10b actually broadcasts, the broadcast message is serialized by this, and deadlock due to contention is avoided.

【0026】請求項2記載の発明の場合,例えば図1
(B)において,各ルーティングチップ10e,…と各
プロセッサ20e,…との間のポートが二つあるとする
と,放送するルーティングチップをあらかじめ二つ決め
る。この例では,放送ルーティングチップ10e,10
gである。実際に放送するのは,この二つのルーティン
グチップ10e,10gだけであり,放送通信によりポ
ートが占有されても,ポートの不足によりデッドロック
が生じることはない。チャネルの占有に対しては,仮想
チャネルを用いることなどにより対処可能である。
In the case of the invention according to claim 2, for example, FIG.
In (B), if there are two ports between each routing chip 10e, ... And each processor 20e, ..., Two routing chips to be broadcast are determined in advance. In this example, the broadcast routing chips 10e, 10
It is g. Only these two routing chips 10e and 10g are actually broadcast, and even if the port is occupied by the broadcast communication, deadlock does not occur due to the lack of the port. Occupation of channels can be dealt with by using virtual channels.

【0027】請求項3記載の発明のように,ワームホー
ルルーティング方式により放送メッセージを転送するこ
とにより,プロセッサのメモリにメッセージをコピーす
ることなく,低遅延通信を実現することができる。
By transmitting the broadcast message by the wormhole routing method as in the third aspect of the invention, low delay communication can be realized without copying the message to the memory of the processor.

【0028】請求項4記載の発明のように,1対1通信
用のメッセージヘッダの後ろに,放送通信用のメッセー
ジヘッダを付加することにより,放送ルーティングチッ
プは,単にメッセージヘッダをストリップするだけで,
放送メッセージを簡単な制御で転送することが可能にな
る。
According to the invention described in claim 4, by adding the message header for broadcast communication after the message header for one-to-one communication, the broadcast routing chip simply strips the message header. ,
Broadcast messages can be transferred with simple control.

【0029】請求項5記載の発明のように,ルーティン
グチップ内に自プロセッサが発信した放送メッセージを
廃棄するフィルタを設けることにより,自プロセッサが
出した放送メッセージを,受け取らないようにすること
ができる。
As in the fifth aspect of the present invention, by providing the filter for discarding the broadcast message transmitted by the self processor in the routing chip, it is possible to prevent the broadcast message issued by the self processor from being received. .

【0030】請求項6記載の発明のように,放送ルーテ
ィングチップを対角状に配置し,列方向または行方向に
放送することにより,放送通信の分散処理が可能にな
り,また放送通信のデッドロックも回避することができ
る。
According to the sixth aspect of the invention, the broadcast routing chips are arranged diagonally and broadcast in the column direction or the row direction, whereby distributed processing of broadcast communication is possible and dead of broadcast communication is possible. Locks can also be avoided.

【0031】請求項7記載の発明のように放送ルーティ
ングチップを構成することにより,上記の放送通信方法
を実現するシステムを簡単に構築することができる。こ
の放送ルーティングチップは,ハードウェアを変更する
ことなく,通常のルーティングチップとしても用いるこ
とが可能である。
By configuring the broadcast routing chip as in the invention described in claim 7, it is possible to easily construct a system for realizing the above broadcast communication method. This broadcast routing chip can be used as a normal routing chip without changing the hardware.

【0032】[0032]

【実施例】図2は本発明の実施例によるルーティングチ
ップの構成例を示す図,図3は本発明の実施例で用いる
メッセージヘッダ説明図,図4は図2に示す宛先判定部
の動作説明図,図5は図2に示すヘッダストリップ部の
動作説明図,図6は図2に示すヘッダ解析部の動作説明
図である。
FIG. 2 is a diagram showing a configuration example of a routing chip according to an embodiment of the present invention, FIG. 3 is an explanatory view of a message header used in the embodiment of the present invention, and FIG. 4 is an operation explanation of a destination determination unit shown in FIG. 5 and 5 are operation explanatory diagrams of the header strip section shown in FIG. 2, and FIG. 6 is an operation explanatory diagram of the header analysis section shown in FIG.

【0033】一次元トーラスネットワークを構成するル
ーティングチップ10は,例えば図2に示すように構成
される。図2において,11はネットワークへのメッセ
ージの送受信を制御するルーティングブロック,12は
送信FIFOバッファ,13は受信FIFOバッファ,
14はセレクタ,15はヘッダ解析部,16L,16R
は受信部,17L,17Rは宛先判定部,18L,18
Rは送信部,19はヘッダストリップ部を表す。
The routing chip 10 constituting the one-dimensional torus network is constructed as shown in FIG. 2, for example. In FIG. 2, 11 is a routing block for controlling transmission / reception of messages to / from the network, 12 is a transmission FIFO buffer, 13 is a reception FIFO buffer,
14 is a selector, 15 is a header analysis unit, 16L, 16R
Is a receiving unit, 17L and 17R are destination determining units, 18L and 18
R represents a transmitter, and 19 represents a header strip section.

【0034】放送を行うときは,あらかじめ決められた
ルーティングチップ10(これを放送ルーティングチッ
プという)へ放送メッセージを送信する。なお,放送ル
ーティングチップも,そうでない通常のルーティングチ
ップも,本実施例では同じハードウェア構成になってい
る。各ルーティングチップが,放送ルーティングチップ
として動作するか,通常のルーティングチップとして動
作するかは,各プロセッサが作成するメッセージのヘッ
ダ情報によって決められる。放送ルーティングチップ
も,1対1通信においては従来と同じようにメッセージ
転送を行う。
When broadcasting, a broadcast message is transmitted to a predetermined routing chip 10 (this is called a broadcast routing chip). It should be noted that the broadcast routing chip and the normal routing chip that is not the same have the same hardware configuration in this embodiment. Whether each routing chip operates as a broadcast routing chip or a normal routing chip is determined by the header information of the message created by each processor. The broadcast routing chip also transfers messages in the one-to-one communication as in the conventional case.

【0035】メッセージには,図3(A)に示すよう
に,先頭に1対1通信用ヘッダ30aが設けられ,放送
メッセージの場合には,さらに放送通信用ヘッダ30b
が設けられる。その後ろにメッセージの内容であるデー
タ31が続く。
As shown in FIG. 3A, the message is provided with a one-to-one communication header 30a at the beginning, and in the case of a broadcast message, a broadcast communication header 30b is further provided.
Is provided. Data 31 which is the content of the message follows.

【0036】1対1通信用ヘッダ30a,放送通信用ヘ
ッダ30bの構成は,図3(B)に示すようになってい
る。ヘッダフラグ32は,“0”のときデータ31であ
ることを示し,“1”のとき,本ヘッダが1対1通信用
ヘッダ30aまたは放送通信用ヘッダ30bであること
を示す。方向フラグ33は,“0”のとき左方向へ送信
すべきメッセージ,“1”のとき右方向へ送信すべきメ
ッセージであることを示す。宛先フィールド34は,転
送先までのノード間距離を表す。例えば,3つ先のルー
ティングチップまでメッセージを送る場合には,宛先フ
ィールド34の値は“3”となる。放送フラグ35は,
“0”のとき1対1通信,“1”のとき放送通信のヘッ
ダであることを示す。
The structures of the one-to-one communication header 30a and the broadcast communication header 30b are as shown in FIG. 3 (B). The header flag 32 indicates that it is the data 31 when it is "0", and indicates that this header is the one-to-one communication header 30a or the broadcast communication header 30b when it is "1". When the direction flag 33 is "0", it indicates that the message should be transmitted to the left, and when it is "1", the message is to be transmitted to the right. The destination field 34 represents the inter-node distance to the transfer destination. For example, when a message is sent up to three routing chips, the value of the destination field 34 is "3". The broadcast flag 35 is
"0" indicates a one-to-one communication, and "1" indicates a broadcast communication header.

【0037】放送ルーティングチップに転送された放送
メッセージは,ヘッダストリップ部19により先頭のヘ
ッダがストリップされる。次のヘッダが放送通信用ヘッ
ダのときは,再び送信FIFOバッファ12へ転送さ
れ,そうでないとは,受信FIFOバッファ13へ転送
され,プロセッサ20へ渡される。放送メッセージは,
ヘッダ解析部15の解析により,すべてのプロセッサま
たは送信元が指定した範囲のプロセッサへ放送される。
この1対N通信の放送は,例えば特開平3−10245
5号公報に開示されている方式を用いて実施することが
できる。
The header of the broadcast message transferred to the broadcast routing chip is stripped by the header strip section 19. If the next header is a header for broadcast communication, it is transferred again to the transmission FIFO buffer 12, and if not, it is transferred to the reception FIFO buffer 13 and passed to the processor 20. The broadcast message is
By the analysis of the header analysis unit 15, it is broadcast to all the processors or the processors in the range designated by the transmission source.
This 1-to-N communication broadcast is disclosed in, for example, Japanese Patent Laid-Open No. 10245/1993.
It can be implemented using the method disclosed in Japanese Patent Laid-Open No.

【0038】図2に示すルーティングブロック11の各
部の動作を,さらに詳しく説明する。宛先判定部17
L,17Rは,受信部16L,16Rからメッセージを
受信すると,図4に示すように制御する。まず,メッセ
ージヘッダに対して,ステップ41により,宛先フィー
ルド34の値を1減算する。そして,ステップ42によ
り,宛先フィールド34の値が0になったかどうかを判
定し,0になったならば,ステップ44へ進む。0でな
ければ,ステップ43により,放送フラグ35が0かど
うか,すなわち通常のメッセージ(放送フラグ==0)
であるか,放送メッセージ(放送フラグ==1)である
かを判定する。放送メッセージであればステップ44へ
進み,通常のメッセージであればステップ45へ進む。
The operation of each part of the routing block 11 shown in FIG. 2 will be described in more detail. Address determination unit 17
Upon receiving the message from the receiving units 16L and 16R, the L and 17R control as shown in FIG. First, in step 41, the value of the destination field 34 is subtracted by 1 from the message header. Then, in step 42, it is judged whether or not the value of the destination field 34 becomes 0, and if it becomes 0, the process proceeds to step 44. If it is not 0, in step 43, whether the broadcast flag 35 is 0, that is, a normal message (broadcast flag = 0)
Or a broadcast message (broadcast flag == 1). If it is a broadcast message, the process proceeds to step 44, and if it is a normal message, the process proceeds to step 45.

【0039】自プロセッサ宛のメッセージまたは放送メ
ッセージの場合,ステップ44により,そのメッセージ
全体をヘッダストリップ部19へ転送する。放送メッセ
ージではなく,また自プロセッサ宛のメッセージでもな
いとき,ステップ45により,メッセージ全体を反対側
の送信部18R,18Lへ転送する。
In the case of a message addressed to its own processor or a broadcast message, the entire message is transferred to the header strip section 19 in step 44. If it is neither a broadcast message nor a message addressed to its own processor, in step 45, the entire message is transferred to the transmission units 18R and 18L on the opposite side.

【0040】ヘッダストリップ部19は,宛先判定部1
7L,17Rまたはヘッダ解析部15からメッセージを
受けると,図5に示すように制御する。まず,ステップ
51により先頭のメッセージヘッダをストリップする。
そして,ステップ52により,次のヘッダフラグが0で
あるかどうかを判定する。ヘッダフラグが0であれば,
メッセージの内容を示すデータであるので,ステップ5
4へ進む。ヘッダフラグが1であれば,ヘッダが続いて
いることになるので,ステップ53へ進む。
The header strip section 19 is the destination determination section 1
When the message is received from the 7L, 17R or the header analysis unit 15, the control is performed as shown in FIG. First, in step 51, the top message header is stripped.
Then, in step 52, it is determined whether or not the next header flag is 0. If the header flag is 0,
Since this is data indicating the content of the message, step 5
Go to 4. If the header flag is 1, it means that the header continues, so the routine proceeds to step 53.

【0041】ステップ53では,ヘッダ解析のためメッ
セージ全体を送信FIFOバッファ12へ転送する。ス
テップ54では,ヘッダストリップ後のメッセージ全体
のデータを,受信FIFOバッファ13へ転送する。
In step 53, the entire message is transferred to the transmission FIFO buffer 12 for header analysis. In step 54, the data of the entire message after the header strip is transferred to the reception FIFO buffer 13.

【0042】ヘッダ解析部15は,送信FIFOバッフ
ァ12からメッセージを一つずつ読み出し,図6に示す
ように制御する。まず,メッセージヘッダに対して,ス
テップ61により,宛先フィールド34の値が0かどう
かを判定し,0であればステップ62へ進み,0でなけ
ればステップ63へ進む。宛先フィールド34の値が0
である場合,ステップ62により,ヘッダを含めてメッ
セージ全体をヘッダストリップ部19へ転送する。宛先
フィールド34の値が0でなければ,ステップ63によ
り放送フラグ35が0かどうか,すなわち通常のメッセ
ージ(放送フラグ==0)であるか,放送メッセージ
(放送フラグ==1)であるかを判定する。放送メッセ
ージであればステップ64へ進み,通常のメッセージで
あればステップ65へ進む。
The header analysis section 15 reads out the messages from the transmission FIFO buffer 12 one by one and controls them as shown in FIG. First, with respect to the message header, it is determined in step 61 whether or not the value of the destination field 34 is 0. If it is 0, the process proceeds to step 62, and if it is not 0, the process proceeds to step 63. The value of the destination field 34 is 0
If so, the entire message including the header is transferred to the header strip section 19 in step 62. If the value of the destination field 34 is not 0, it is determined in step 63 whether the broadcast flag 35 is 0, that is, whether it is a normal message (broadcast flag = 0) or a broadcast message (broadcast flag = 1). judge. If it is a broadcast message, the process proceeds to step 64, and if it is a normal message, the process proceeds to step 65.

【0043】放送メッセージの場合,ステップ64によ
り,ヘッダを含めてそのメッセージ全体を左右の送信部
18L,18Rへ転送し,放送する。放送メッセージで
ない場合,ステップ65により方向フラグ33を判定
し,方向フラグ33が1のときは,ステップ66により
ヘッダを含めてメッセージ全体を右の送信部18Rへ転
送し,方向フラグ33が0のときは,ステップ67によ
りヘッダを含めてメッセージ全体を左の送信部18Lへ
転送する。
In the case of a broadcast message, in step 64, the entire message including the header is transferred to the left and right transmitters 18L and 18R and broadcast. If it is not a broadcast message, the direction flag 33 is determined in step 65. If the direction flag 33 is 1, the entire message including the header is transferred to the right transmitter 18R in step 66, and the direction flag 33 is 0. Transfers the entire message including the header to the left transmitter 18L in step 67.

【0044】なお,本実施例の方式では,あるタイミン
グにおいて放送するプロセッサがあらかじめ決まってい
る場合には,すなわち,デッドロックの発生する可能性
があらかじめないことがわかっている場合には,放送す
るプロセッサが,放送ルーティングチップに送信するこ
となく,放送メッセージを直接自分のルーティングチッ
プに送信すればよい。ルーティングチップは,放送ルー
ティングチップもそうでないものも,同じ構造になって
いるからである。これは,図3(A)に示すメッセージ
において,1対1通信用ヘッダ30aがない場合に相当
する。
In the system of this embodiment, when the processor to be broadcast at a certain timing is predetermined, that is, when it is known that there is no possibility that deadlock will occur, broadcasting is performed. The processor may send the broadcast message directly to its routing chip without sending it to the broadcast routing chip. This is because the routing chip has the same structure as the broadcast routing chip and the one that does not. This corresponds to the case where there is no one-to-one communication header 30a in the message shown in FIG.

【0045】二次元トーラスとしたときの構成例を,図
7に示す。図7(A)に示すように,ルーティングチッ
プ10を二次元トーラスのネットワーク構成とした場合
にも,同様に本発明を実施することができる。トーラス
ではなくメッシュの場合も同様である。このときのルー
ティングチップ10は,図7(B)に示すように構成さ
れる。
FIG. 7 shows an example of the structure when a two-dimensional torus is used. As shown in FIG. 7A, even when the routing chip 10 has a two-dimensional torus network configuration, the present invention can be similarly implemented. The same applies to the case of mesh instead of torus. The routing chip 10 at this time is configured as shown in FIG.

【0046】二次元トーラスの場合,左右方向(X方
向)の通信と上下方向(Y方向)の通信が必要になるの
で,ルーティングブロックとして,Xルーティングブロ
ック11Xと,Yルーティングブロック11Yが設けら
れる。Xルーティングブロック11XおよびYルーティ
ングブロック11Yは,それぞれ図2に示すルーティン
グブロック11と同様な構造になっている。Xルーティ
ングブロック11XまたはYルーティングブロック11
Yから,メッセージを送信FIFOバッファ12に書き
込むときに,入力元を切り換えるための選択スイッチS
Wがある。
In the case of a two-dimensional torus, communication in the left-right direction (X direction) and communication in the up-down direction (Y direction) are required, so the X routing block 11X and the Y routing block 11Y are provided as routing blocks. Each of the X routing block 11X and the Y routing block 11Y has the same structure as the routing block 11 shown in FIG. X routing block 11 X or Y routing block 11
A selection switch S for switching the input source when writing a message from Y to the transmission FIFO buffer 12
There is W.

【0047】二次元トーラスまたはメッシュにおける放
送メッセージのヘッダは,例えば図7(C)に示すよう
に,X方向1対1通信用ヘッダ,Y方向1対1通信用ヘ
ッダ,X方向放送通信用ヘッダ,Y方向放送通信用ヘッ
ダを備える。
The header of the broadcast message in the two-dimensional torus or mesh is, for example, as shown in FIG. 7C, a header for X-direction one-to-one communication, a header for Y-direction one-to-one communication, and a header for X-direction broadcast communication. , Y direction broadcast communication header.

【0048】システム全体としては,例えば図8(A)
〜(C)に示す構成を採ることができる。図8におい
て,ハッチングを施したルーティングチップが,放送用
に設定された放送ルーティングチップである。図8
(A)の例は,放送を行うルーティングチップが一つの
場合の例である。放送ルーティングチップへのアクセス
が集中する問題があるときは,放送ルーティングチップ
を複数にすることができる。このとき,放送ルーティン
グチップ数分のマルチポート化が必要となる。
The entire system is shown in FIG. 8 (A), for example.
The configurations shown in (C) to (C) can be adopted. In FIG. 8, hatched routing chips are broadcast routing chips set for broadcasting. Figure 8
The example of (A) is an example when there is one routing chip that performs broadcasting. If there is a problem that access to the broadcast routing chips is concentrated, multiple broadcast routing chips can be used. At this time, it is necessary to make multiports for the number of broadcast routing chips.

【0049】図8(B)では,プロセッサ全体へ放送す
る放送ルーティングチップを,二つにしている。このと
きは,ポート占有によるデッドロックが生じないように
するために,ポートの二重化が必要である。
In FIG. 8B, there are two broadcast routing chips for broadcasting to the entire processor. In this case, port duplication is necessary to prevent deadlock due to port occupation.

【0050】図8(C)は,マルチポート化しないで放
送ルーティングチップを4個設けたシステムの例を示し
ている。放送ルーティングチップを図示のように対角状
に配置し,各放送ルーティングチップは,点線で図示し
た範囲への放送,すなわち行方向(X方向)への放送通
信だけを行う。なお,列方向(Y方向)への放送通信だ
けを行うようにしてもよい。
FIG. 8C shows an example of a system in which four broadcast routing chips are provided without being multiported. The broadcast routing chips are arranged diagonally as shown in the drawing, and each broadcast routing chip only performs broadcasting within the range shown by the dotted line, that is, broadcast communication in the row direction (X direction). Alternatively, only broadcast communication in the column direction (Y direction) may be performed.

【0051】図9は,ルーティングチップ内にフィルタ
ーを設けた例を示している。本方式では,放送するメッ
セージが放送通信要求を出した送信プロセッサ以外から
放送されるので,送信プロセッサも自分が出した放送メ
ッセージを受信してしまう。この放送メッセージを自プ
ロセッサが受け取って動作しないように,プロセッサ内
のソフトウェアによって対処することも可能であるが,
図9に示すように,ルーティングチップ10内にフィル
ター90を設けることにより,ソフトウェアの負担を軽
減することが可能である。
FIG. 9 shows an example in which a filter is provided in the routing chip. In this method, since the message to be broadcast is broadcast from other than the transmitting processor that issued the broadcast communication request, the transmitting processor also receives the broadcast message issued by itself. It is possible to handle this broadcast message by the software in the processor so that the processor does not receive it and operate.
As shown in FIG. 9, the load of software can be reduced by providing the filter 90 in the routing chip 10.

【0052】本実施例では,放送メッセージのヘッダま
たはヘッダに続くデータの先頭に,送信プロセッサの識
別子(プロセッサID)を入れる。メッセージを受信す
るとき,フィルター90によってメッセージ中のプロセ
ッサIDを見て,その送信プロセッサIDが,自分のプ
ロセッサIDと同じかどうかを判定する。同じであると
きは,そのメッセージを廃棄し,受信しないようにす
る。すなわち,フィルター90は,メッセージにおける
プロセッサIDと自分のプロセッサIDとを比較し,同
じであるときは受信FIFOバッファ13へメッセージ
を転送しない。
In this embodiment, the identifier of the transmitting processor (processor ID) is inserted at the beginning of the header of the broadcast message or the data following the header. When the message is received, the filter 90 looks at the processor ID in the message and determines whether the transmission processor ID is the same as its own processor ID. If they are the same, discard the message and not receive it. That is, the filter 90 compares the processor ID in the message with its own processor ID, and when they are the same, does not transfer the message to the reception FIFO buffer 13.

【0053】[0053]

【発明の効果】以上説明したように,本発明によれば,
ネットワークとプロセッサ間のポートを必要以上にマル
チポートにすることなく,放送通信によるデッドロック
を回避することができる。また,転送オーバヘッドの少
ない放送通信を実現することができる。デッドロック回
避のためのハードウェアも,ルーティングチップ内にル
ーティングブロックから直接,送信用バッファへのルー
トを設けるだけであり,容易に実現することができる。
As described above, according to the present invention,
Deadlock due to broadcast communication can be avoided without increasing the number of ports between the network and the processor more than necessary. Also, it is possible to realize broadcast communication with little transfer overhead. The hardware for avoiding the deadlock can be easily realized only by providing a route from the routing block directly to the transmission buffer in the routing chip.

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

【図1】本発明の原理説明図である。FIG. 1 is a diagram illustrating the principle of the present invention.

【図2】本発明の実施例によるルーティングチップの構
成例を示す図である。
FIG. 2 is a diagram showing a configuration example of a routing chip according to an embodiment of the present invention.

【図3】本発明の実施例で用いるメッセージヘッダ説明
図である。
FIG. 3 is an explanatory diagram of a message header used in the embodiment of the present invention.

【図4】図2に示す宛先判定部の動作説明図である。FIG. 4 is an operation explanatory diagram of a destination determination unit shown in FIG.

【図5】図2に示すヘッダストリップ部の動作説明図で
ある。
5 is an operation explanatory view of the header strip section shown in FIG. 2. FIG.

【図6】図2に示すヘッダ解析部の動作説明図である。FIG. 6 is an operation explanatory diagram of the header analysis unit shown in FIG. 2.

【図7】二次元トーラスでの構成例を示す図である。FIG. 7 is a diagram showing a configuration example of a two-dimensional torus.

【図8】本発明の実施例に係るシステム構成の例を示す
図である。
FIG. 8 is a diagram showing an example of a system configuration according to an embodiment of the present invention.

【図9】フィルターを設けた構成例を示す図である。FIG. 9 is a diagram showing a configuration example in which a filter is provided.

【図10】従来技術の問題点説明図である。FIG. 10 is a diagram illustrating a problem of the conventional technique.

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

10a,10b,… ルーティングチップ 20a,20b,… プロセッサ 10a, 10b, ... Routing chips 20a, 20b, ... Processor

Claims (7)

【特許請求の範囲】[Claims] 【請求項1】 ルーティング装置(10)によりネットワー
クを構成する複数のプロセッサ(20)からなる並列計算機
における放送通信方法において,前記ネットワークを構
成するルーティング装置の中で,1対N(ただし,N≧
2)通信の放送を行う放送ルーティング装置(10b) を一
箇所にし,放送通信を要求するプロセッサは,前記放送
ルーティング装置へ1対1通信により放送メッセージを
送り,該放送メッセージを受け取った放送ルーティング
装置は,他のプロセッサへ放送メッセージを転送して放
送することを特徴とする放送通信方法。
1. A broadcast communication method in a parallel computer comprising a plurality of processors (20) constituting a network by a routing device (10), wherein one to N (where N ≧ N) among the routing devices constituting the network.
2) A broadcast routing device (10b) for broadcasting communication is provided in one place, and a processor requesting broadcast communication sends a broadcast message to the broadcast routing device by one-to-one communication and receives the broadcast message. Is a broadcasting communication method characterized in that a broadcasting message is transferred to another processor for broadcasting.
【請求項2】 ルーティング装置(10)によりネットワー
クを構成する複数のプロセッサからなる並列計算機にお
ける放送通信方法において,前記プロセッサが前記ルー
ティング装置からメッセージを受け取るポートがM(た
だし,M≧2)個あるとき,前記ネットワークを構成す
るルーティング装置の中で,1対N(ただし,N≧2)
通信の放送を行う放送ルーティング装置(10e,10g) をあ
らかじめM個定め,放送通信を要求するプロセッサは,
前記放送ルーティング装置の一つへ1対1通信により放
送メッセージを送り,該放送メッセージを受け取った放
送ルーティング装置は,他のプロセッサへ放送メッセー
ジを転送して放送することを特徴とする放送通信方法。
2. A broadcast communication method in a parallel computer comprising a plurality of processors forming a network by a routing device (10), wherein the processor has M ports (where M ≧ 2) for receiving a message from the routing device. At this time, among the routing devices constituting the network, 1 to N (where N ≧ 2)
A processor that predetermines M broadcast routing devices (10e, 10g) for broadcasting communication and requests broadcast communication is
A broadcast communication method, wherein a broadcast message is sent to one of the broadcast routing devices by one-to-one communication, and the broadcast routing device receiving the broadcast message transfers the broadcast message to another processor for broadcasting.
【請求項3】 請求項1または請求項2記載の放送通信
方法において,前記放送ルーティング装置は,受け取っ
た放送メッセージをワームホールルーティング的に他の
プロセッサへ転送することを特徴とする放送通信方法。
3. The broadcast communication method according to claim 1 or 2, wherein the broadcast routing device transfers the received broadcast message to another processor by wormhole routing.
【請求項4】 請求項1または請求項2記載の放送通信
方法において,放送通信を要求するプロセッサは,前記
放送ルーティング装置へ送る放送メッセージにおける1
対1通信用のメッセージヘッダの後ろに放送通信用のメ
ッセージヘッダを付加し,前記放送ルーティング装置
は,受け取ったメッセージの1対1通信用のメッセージ
ヘッダをストリップし,次が放送通信用のメッセージヘ
ッダであるか否かを判定し,放送通信用のメッセージヘ
ッダである場合に,その放送メッセージを他のプロセッ
サへ転送することを特徴とする放送通信方法。
4. The broadcast communication method according to claim 1 or 2, wherein the processor requesting broadcast communication sets 1 in a broadcast message to be sent to the broadcast routing device.
A message header for broadcast communication is added after the message header for one-to-one communication, the broadcast routing device strips the message header for one-to-one communication of the received message, and next is a message header for broadcast communication. And a message header for broadcast communication, the broadcast message is transferred to another processor.
【請求項5】 請求項1または請求項2記載の放送通信
方法において,前記放送メッセージに送信プロセッサの
識別子を付加し,前記各ルーティング装置内で,放送メ
ッセージにおける送信プロセッサの識別子と自プロセッ
サの識別子とを比較することにより,識別子が一致する
場合には,その放送メッセージをその送信プロセッサが
受信しないようにフィルタリングすることを特徴とする
放送通信方法。
5. The broadcast communication method according to claim 1 or 2, wherein an identifier of a transmission processor is added to the broadcast message, and an identifier of the transmission processor in the broadcast message and an identifier of its own processor are added in each of the routing devices. A broadcast communication method characterized by filtering the broadcast message so that it is not received by the transmitting processor when the identifiers match by comparing with.
【請求項6】 ルーティング装置(10)を二次元トーラス
または二次元格子状に接続してネットワークを構成する
複数のプロセッサからなる並列計算機における放送通信
方法において,前記ネットワークを構成するルーティン
グ装置の中で,1対N(ただし,N≧2)通信の放送を
行う複数個の放送ルーティング装置を対角状に配置し,
放送通信を要求するプロセッサは,前記放送ルーティン
グ装置の各々へ1対1通信により放送メッセージを送
り,該放送メッセージを受け取った各放送ルーティング
装置は,それぞれ列方向または行方向の他のプロセッサ
へ放送メッセージを転送して放送することを特徴とする
放送通信方法。
6. A broadcast communication method in a parallel computer comprising a plurality of processors forming a network by connecting a routing device (10) in a two-dimensional torus or a two-dimensional lattice form, in the routing device forming the network. , A plurality of broadcast routing devices for broadcasting 1 to N (where N ≧ 2) communication are diagonally arranged,
A processor requesting broadcast communication sends a broadcast message to each of the broadcast routing devices by one-to-one communication, and each broadcast routing device receiving the broadcast message sends the broadcast message to another processor in the column direction or the row direction. A broadcast communication method characterized by transmitting and broadcasting.
【請求項7】 請求項1ないし請求項6のいずれかに記
載の放送通信方法に用いられる放送ルーティング装置(1
0)であって,他のプロセッサへ送信するメッセージを格
納する送信用のバッファと,他のプロセッサから受信し
た自プロセッサ宛のメッセージを格納する受信用のバッ
ファと,ネットワークを介して他のプロセッサからメッ
セージを受信する受信部と,ネットワークを介して他の
プロセッサへメッセージを送信する送信部と,受信した
メッセージが自プロセッサ宛でないときに,そのメッセ
ージ全体を前記送信部へ転送する宛先判定部と,受信し
たメッセージが自プロセッサ宛であるとき,前記宛先判
定部からそのメッセージを受け取り,メッセージヘッダ
をストリップし,その後さらにメッセージヘッダがあれ
ばそのメッセージを前記送信用のバッファへ転送し,メ
ッセージヘッダがなければそのメッセージを前記受信用
のバッファへ転送するヘッダストリップ部と,前記送信
用のバッファに格納されたメッセージを読み出し,その
メッセージヘッダを解析して送信すべき方向を選択し,
前記送信部へメッセージを転送するヘッダ解析部とを備
えたことを特徴とする放送ルーティング装置。
7. A broadcast routing device used in the broadcast communication method according to any one of claims 1 to 6.
0), which is a transmission buffer for storing messages to be transmitted to other processors, a reception buffer for storing messages addressed to the own processor received from other processors, and from other processors via the network. A receiving unit for receiving the message, a transmitting unit for transmitting the message to another processor via the network, and a destination determining unit for transferring the entire message to the transmitting unit when the received message is not addressed to the own processor, When the received message is addressed to its own processor, the message is received from the destination determination unit, the message header is stripped, and if there is another message header, the message is transferred to the buffer for transmission, and the message header is removed. If the message is transferred to the receiving buffer That a header strip section reads the stored in the buffer for outgoing messages, select the direction to be transmitted by analyzing the message header,
A broadcast routing device comprising: a header analysis unit that transfers a message to the transmission unit.
JP17507093A 1993-07-15 1993-07-15 Broadcast communication method Expired - Fee Related JP3251723B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP17507093A JP3251723B2 (en) 1993-07-15 1993-07-15 Broadcast communication method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP17507093A JP3251723B2 (en) 1993-07-15 1993-07-15 Broadcast communication method

Publications (2)

Publication Number Publication Date
JPH0728763A true JPH0728763A (en) 1995-01-31
JP3251723B2 JP3251723B2 (en) 2002-01-28

Family

ID=15989709

Family Applications (1)

Application Number Title Priority Date Filing Date
JP17507093A Expired - Fee Related JP3251723B2 (en) 1993-07-15 1993-07-15 Broadcast communication method

Country Status (1)

Country Link
JP (1) JP3251723B2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009110497A1 (en) * 2008-03-04 2009-09-11 日本電気株式会社 Simd processor array system and data transfer method thereof
JP2021501947A (en) * 2017-11-03 2021-01-21 コーヒレント・ロジックス・インコーポレーテッド Memory network processor

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01309442A (en) * 1988-06-07 1989-12-13 Matsushita Electric Ind Co Ltd Communication system
JPH02245962A (en) * 1989-03-20 1990-10-01 Fujitsu Ltd Communication control system between parallel computers
JPH03102455A (en) * 1989-09-18 1991-04-26 Fujitsu Ltd Communication control system between parallel computers
JPH03132131A (en) * 1989-06-30 1991-06-05 Inmos Ltd Message routing
JPH03140035A (en) * 1989-10-26 1991-06-14 Fujitsu Ltd Broadcast communication system
JPH06266684A (en) * 1993-03-15 1994-09-22 Toshiba Corp Interprocessor routing system

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01309442A (en) * 1988-06-07 1989-12-13 Matsushita Electric Ind Co Ltd Communication system
JPH02245962A (en) * 1989-03-20 1990-10-01 Fujitsu Ltd Communication control system between parallel computers
JPH03132131A (en) * 1989-06-30 1991-06-05 Inmos Ltd Message routing
JPH03102455A (en) * 1989-09-18 1991-04-26 Fujitsu Ltd Communication control system between parallel computers
JPH03140035A (en) * 1989-10-26 1991-06-14 Fujitsu Ltd Broadcast communication system
JPH06266684A (en) * 1993-03-15 1994-09-22 Toshiba Corp Interprocessor routing system

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009110497A1 (en) * 2008-03-04 2009-09-11 日本電気株式会社 Simd processor array system and data transfer method thereof
JP5370352B2 (en) * 2008-03-04 2013-12-18 日本電気株式会社 SIMD type processor array system and data transfer method thereof
US8635432B2 (en) 2008-03-04 2014-01-21 Nec Corporation SIMD processor array system and data transfer method thereof
JP2021501947A (en) * 2017-11-03 2021-01-21 コーヒレント・ロジックス・インコーポレーテッド Memory network processor

Also Published As

Publication number Publication date
JP3251723B2 (en) 2002-01-28

Similar Documents

Publication Publication Date Title
US5175733A (en) Adaptive message routing for multi-dimensional networks
US5430442A (en) Cross point switch with distributed control
JP3767904B2 (en) Data communication with highly efficient polling procedures
US7706361B2 (en) Reconfigurable, fault tolerant, multistage interconnect network and protocol
US4752777A (en) Delta network of a cross-point switch
EP0709988A2 (en) Path allocation system and method with fairness insurance mechanism for a fiber optic switch
JPH08185380A (en) Parallel computer
KR100259276B1 (en) Interconnection network having extendable bandwidth
JPH0619785A (en) Distributed shared virtual memory and its constitution method
EP0405208B1 (en) Multistage network with distributed pipelined control
JPH0453358B2 (en)
JPH0338137A (en) High-speed digital packet exchanging system
JPH0732392B2 (en) Exchange method
JP3206126B2 (en) Switching arrays in a distributed crossbar switch architecture
US20020150056A1 (en) Method for avoiding broadcast deadlocks in a mesh-connected network
US6667960B1 (en) Protocol for identifying components in a point-to-point computer system
CA1263760A (en) Apparatus for multiprocessor communication
EP0661644A2 (en) Message control in a multi-node data processing system
US20020009098A1 (en) Communication control method and device
JPH0728763A (en) Broadcast communication method and broadcast routing device
EP0100585B1 (en) Telecommunications digital switchblock
EP1619835A1 (en) A Crossbar comprising input queue groups and a distribution processor
KR0173051B1 (en) Modulated dispersion control apparatus of crossbar switching system and crossbar connection
JP3449081B2 (en) Packet communication method between one-to-many terminals
JPS63155249A (en) Inter-equipment communication system

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: 20011106

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081116

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081116

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091116

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101116

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101116

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111116

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees