JPH07210528A - Switch circuit - Google Patents
Switch circuitInfo
- Publication number
- JPH07210528A JPH07210528A JP6001913A JP191394A JPH07210528A JP H07210528 A JPH07210528 A JP H07210528A JP 6001913 A JP6001913 A JP 6001913A JP 191394 A JP191394 A JP 191394A JP H07210528 A JPH07210528 A JP H07210528A
- Authority
- JP
- Japan
- Prior art keywords
- message
- buffer
- fifo buffer
- contention
- transfer
- 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
Links
Landscapes
- Multi Processors (AREA)
- Bus Control (AREA)
- Information Transfer Systems (AREA)
Abstract
Description
【0001】[0001]
【産業上の利用分野】本発明は、多数台のプロセサから
なる並列プロセサなどを接続するネットワークを構成す
るスイッチ回路に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a switch circuit that constitutes a network for connecting parallel processors and the like composed of a large number of processors.
【0002】[0002]
【従来の技術】科学技術計算処理分野において、多数台
の要素プロセサを結合し、台数分の性能向上をねらう並
列プロセサが商用化しつつある。並列プロセサでは、こ
の多数台のプロセサを接続するプロセサ間結合方式が重
要である。現在、このプロセサ間結合方式は、いくつか
のm入力n出力スイッチ(m,nは整数)を複数接続し
た多段ネットワークが一般的である。2. Description of the Related Art In the field of scientific and technological calculation processing, parallel processors aiming to improve the performance by the number of unit processors by combining a large number of element processors are being commercialized. In parallel processors, it is important to use the inter-processor coupling method that connects a large number of processors. At present, this inter-processor coupling method is generally a multi-stage network in which a plurality of several m-input n-output switches (m and n are integers) are connected.
【0003】図4に代表的な多段ネットワークであるベ
ネスネットワークを示す。もちろん、格子結合やハイパ
キューブ結合などのキューブ系結合や、トリー結合など
もm入力n出力スイッチを複数接続した多段ネットワー
クである。図4のベネスネットワークでは、4入力4出
力のスイッチを3段接続することにより、16台のプロ
セサを接続している。このうち、最初の一段分は冗長な
スイッチであり、このような冗長な段を持つことによ
り、転送先プロセサが重ならない時のすべての組み合わ
せのデータ転送をネットワーク内で衝突なしに行う経路
を確保することができる。FIG. 4 shows a Benes network which is a typical multistage network. Of course, cube-type coupling such as lattice coupling and hypercube coupling, and tree coupling are also multi-stage networks in which a plurality of m-input n-output switches are connected. In the Benes network of FIG. 4, 16 processors are connected by connecting switches with 4 inputs and 4 outputs in three stages. Of these, the first one is a redundant switch, and by having such a redundant stage, a route for performing data transfer of all combinations in the network when the transfer destination processor does not overlap is secured without collision. can do.
【0004】なお、以下では、プロセサ間のデータ転送
をメッセージ転送と呼ぶ。メッセージとは、メッセージ
情報として、転送すべきデータにあて先のプロセサ番
号,転送データ量(メッセージ長)などを転送データに
付加したもので、このメッセージ内のメッセージ情報を
用いて、メッセージは能動的に各スイッチ内で経路を判
断して、受信先のプロセサに送るべきデータを転送す
る。In the following, data transfer between processors is called message transfer. A message is a message in which the destination processor number, the transfer data amount (message length), etc. are added to the transfer data as message information, and the message is actively used by using the message information in this message. The route is judged in each switch and the data to be sent is transferred to the destination processor.
【0005】図5にメッセージの構成の例を示す。転送
先プロセサ番号およびメッセージ長などのメッセージ構
成情報は、一般にメッセージの最初の部分に保持されて
いる。メッセージは、物理的な信号線数の制約により、
複数回に分けて送られる。そのため、各部分を送るごと
にデータ線の有効性を示す制御信号が必要となる。ま
た、メッセージの転送先情報はメッセージの先頭にのみ
しかないため、通過し始めたメッセージがすべて通りき
るまで通過中の経路はかならず確保しておく必要があ
る。FIG. 5 shows an example of the structure of a message. Message configuration information, such as the destination processor number and message length, is typically held in the first part of the message. The message is due to the physical number of signal lines,
It is sent in multiple batches. Therefore, a control signal indicating the validity of the data line is required every time each part is sent. Further, since the transfer destination information of a message is only at the beginning of the message, it is necessary to secure a route through which all the messages that have started to pass have passed.
【0006】並列計算機の対象とする応用は、もともと
大規模科学技術計算処理が考えられていたが、非数値処
理として、推論処理などの知識処理の分野やデータベー
スやオンライントランザクション処理などと応用範囲が
拡大されつつある。また、このような分野では、大規模
科学技術計算処理と違って、一回に転送する転送データ
量はあまり長くないと考えられる。さらに、最近実用化
されだした、すべてのプロセサ内の記憶装置のアドレス
空間を一元化する分散型共有記憶方式の並列計算機で
は、いままで以上に他のプロセサへのアクセスが必要と
なり、このデータアクセス単位は、一つのデータ(数バ
イト単位)からキャッシュのライン相(数10〜数10
0バイト単位)と非常に小さい。Originally, large-scale scientific and technological calculation processing was considered as a target application of a parallel computer, but as non-numerical processing, the application range is in the field of knowledge processing such as inference processing and databases and online transaction processing. It is being expanded. Further, in such a field, unlike the large-scale scientific and technological calculation processing, it is considered that the amount of transfer data transferred at one time is not very long. In addition, recently, the distributed shared storage parallel computer that unifies the address space of the storage devices in all processors, which has been put to practical use, requires access to other processors more than ever, and this data access unit Is the line phase of the cache (several tens to several tens) from one data (several bytes unit).
Very small (0 byte unit).
【0007】一方、ハードウェアの状況を見ると、LS
I高集積化は非常に進み、1チップあたりのゲート数は
飛躍的に高まっている。しかし、信号ピン数は、ゲート
数程には集積化が進んでおらず、ゲート/ピン比率は高
まる方向にある。On the other hand, looking at the hardware situation, LS
I Highly integrated, the number of gates per chip has increased dramatically. However, the number of signal pins is not as integrated as the number of gates, and the gate / pin ratio is increasing.
【0008】[0008]
【発明が解決しようとする課題】ベネスネットワークで
は、冗長なスイッチを設けることにより、転送先プロセ
サが重ならない時のすべての組み合わせのデータ転送を
ネットワーク内で衝突なしに行う経路を確保することが
できる。しかし、定形的な科学技術計算処理での静的な
プロセサ間のメッセージ転送(つまり、事前にメッセー
ジ転送手段が分かっている場合)を除いては、転送先プ
ロセサが重ならないことを保証する事は困難である。ま
た、仮りに転送先プロセサが重ならないとしても各プロ
セサが独立に動作するような(いわゆるMIMD型:Mu
ltiple Instruction Mutiple Data)並列計算機システム
では、各プロセサの処理の進み方に差が生じる。このよ
うな場合、どうてもネットワーク内のスイッチ上でメッ
セージ間で競合が発生し、メッセージの転送時間がどん
どん延びてしまう。In the Benes network, by providing a redundant switch, it is possible to secure a route for performing data transfer of all combinations in the network when the transfer destination processors do not overlap each other without collision. it can. However, except for the message transfer between static processors (that is, when the message transfer method is known in advance) in the fixed scientific calculation processing, it is not guaranteed that the transfer destination processors do not overlap. Have difficulty. Even if the transfer destination processors do not overlap, each processor operates independently (so-called MIMD type: Mu
ltiple Instruction Mutiple Data) In a parallel computer system, there is a difference in the processing progress of each processor. In such a case, inevitably there will be contention between the messages on the switches in the network, and the message transfer time will continue to increase.
【0009】たとえば、同じ入力ポートから続けて異な
る転送先プロセサへの複数のメッセージ転送があったと
する。もし、最初のメッセージが他の入力ポートからの
メッセージとの競合調停の結果、待つことになった場
合、その次のメッセージが要求する転送先プロセサにつ
ながる出力ポートが空いていても、この次のメッセージ
を送ることができない。このことは特に小さな単位のデ
ータを転送する(つまり、メッセージ長が短い)場合、
その転送時間が性能に与える影響は大きい。For example, suppose there are a plurality of message transfers from the same input port to different destination processors in succession. If the first message gets waited as a result of contention arbitration with a message from another input port, the next message will request the next processor even if the output port connected to the destination processor is free. I can't send a message. This is especially true when transferring small units of data (ie short message lengths)
The transfer time greatly affects the performance.
【0010】本発明の目的は、このような場合にも、競
合待ちしているメッセージのある入力ポートを解放し、
その次のメッセージを転送することを可能とする多段ス
イッチネットワークを構成するスイッチを提供すること
にある。An object of the present invention is to release an input port having a message waiting for contention even in such a case,
It is an object of the present invention to provide a switch that constitutes a multistage switch network that enables the transfer of the next message.
【0011】[0011]
【課題を解決するための手段】上記課題を解決するため
には、ネットワーク上のスイッチ内にメッセージの転送
単位より、大きいFIFO(First In First Out)バッ
ファを設けて、競合により待たせられたメッセージを一
時的にこのFIFOバッファに退避することにより、入
力ポートを解放し、次のメッセージの競合調停への参加
および転送を可能とする。In order to solve the above problems, a FIFO (First In First Out) buffer, which is larger than a message transfer unit, is provided in a switch on a network, and a message kept waiting due to contention is provided. Is temporarily saved in this FIFO buffer, thereby freeing the input port and allowing the next message to participate in the contention arbitration and be transferred.
【0012】[0012]
【作用】上記、FIFOバッファを設けることにより、
入力ポートの解放を可能とし、次のメッセージの転送を
早めることができる。また、FIFOに一時的に退避し
たメッセージは、優先度を高くして、次の選択に用いる
ようにすれば、特にFIFOに退避したメッセージが必要以
上に待されることはない。By providing the above FIFO buffer,
The input port can be released, and the transfer of the next message can be expedited. If the message temporarily saved in the FIFO has a higher priority and is used for the next selection, the message saved in the FIFO is not particularly waited for more than necessary.
【0013】[0013]
【実施例】図1に本発明のスイッチ構成の一例を示す。
図中、10Aないし10Dは各入力ポートに対応する入
力バッファ、11はメッセージ選択処理部、12はセレ
クタ、13は本発明により採用したFIFOバッファ、
14Wないし14Zはセレクタ、15Wないし15Zは
各出力ポートに対応する出力バッファである。また、線
L20Aないし線L20Dは、前段のスイッチないしプ
ロセサからのメッセージの入力、線L21Aないし線L
21Dは、入力バッファ10Aないし10Dがメッセー
ジの待合せにより、これ以上メッセージの格納が不可能
になったことを前段のスイッチないしプロセサに対して
知らせるメッセージ送信抑止出力信号、線L23Wない
し線L23Zは、後段のスイッチないしプロセサへのメ
ッセージの出力、線L24Wないし線L24Zは、後段
のスイッチないしプロセサからのメッセージ送信抑止信
号である。DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT FIG. 1 shows an example of a switch configuration of the present invention.
In the figure, 10A to 10D are input buffers corresponding to the respective input ports, 11 is a message selection processing unit, 12 is a selector, 13 is a FIFO buffer adopted by the present invention,
14W to 14Z are selectors, and 15W to 15Z are output buffers corresponding to the respective output ports. Further, lines L20A to L20D are lines L21A to L21 for inputting a message from a switch or processor in the preceding stage.
21D is a message transmission inhibiting output signal that informs the switch or processor in the preceding stage that the input buffers 10A to 10D cannot store the message due to waiting of the message, and lines L23W to L23Z are the latter stage. The output of the message to the switch or processor, line L24W to line L24Z is a message transmission inhibiting signal from the switch or processor in the subsequent stage.
【0014】前段のスイッチないしプロセサからの入力
メッセージを線L20Aあるいは線L20Dを介して受
け取った入力バッファ10Aあるいは10Dは、入力メ
ッセージから転送先プロセサ番号およびメッセージ長な
どのメッセージ構成情報を取り出し、線L22Aあるい
は線L22Dを介してメッセージ選択処理部11に送
り、また、メッセージ本体をセレクタ14Wあるいは1
4Zに送る。The input buffer 10A or 10D which receives the input message from the switch or processor in the preceding stage via the line L20A or the line L20D extracts the message configuration information such as the transfer destination processor number and the message length from the input message, and the line L22A. Alternatively, it is sent to the message selection processing unit 11 via the line L22D, and the message body is sent to the selector 14W or 1
Send to 4Z.
【0015】図1では、入力ポート4,出力ポート4と
したが、もちろん、これ以外での数でも構わない。さら
に、入力ポート数と出力ポート数は異なっていても良
い。In FIG. 1, the input port 4 and the output port 4 are shown, but of course other numbers may be used. Furthermore, the number of input ports and the number of output ports may be different.
【0016】メッセージ競合調停部11では、複数の入
力ポートからのメッセージ転送要求から、出力ポートご
とに、線L29Wないし線L29Zを介してセレクタ1
4Wないし14Zを切り替えることにより、メッセージ
転送要求のある一つの入力ポートを選択する。この選択
の時には、各出力ポートに対応する出力バッファ15Wな
いし15Zの使用状況(出力バッファがメッセージ取り
込み可能か否か)の情報が線L30Wないし線L30Z
を介してメッセージ競合調停部11に対して送られてお
り、この情報もメッセージ選択の時に用いられる。In the message contention arbitration unit 11, from the message transfer requests from a plurality of input ports, the selector 1 is output for each output port via the line L29W to the line L29Z.
By switching between 4W and 14Z, one input port having a message transfer request is selected. At the time of this selection, information on the use status of the output buffers 15W to 15Z corresponding to each output port (whether or not the output buffer can receive a message) is displayed on the lines L30W to L30Z.
Is sent to the message contention arbitration unit 11 via this, and this information is also used when selecting a message.
【0017】メッセージ競合調停部11でセレクタ14
Wないし14Zの切り替えで選択されたメッセージは出
力バッファ15Wないし15Zに蓄えられ、線L23W
ないし線L23Zを介して、後段のプロセサあるいはス
イッチの入力ポートに転送される。線L24Wないし線
L24Zは後段からのメッセージ転送抑止信号であり、
この信号が出ているときは、後段へのメッセージ転送は
抑止される。In the message contention arbitration unit 11, the selector 14
The message selected by switching W to 14Z is stored in the output buffer 15W to 15Z, and the line L23W
Through the line L23Z to the input port of the subsequent processor or switch. Lines L24W to L24Z are message transfer suppression signals from the subsequent stage,
When this signal is output, message transfer to the subsequent stage is suppressed.
【0018】このスイッチには、本発明で用いるFIF
Oバッファ13が設けられており、複数の入力ポートか
ら同一の出力ポートへの転送要求による競合のため、一
時待機を余儀なくされたメッセージをセレクタ12を介
して取り込むことができる。この時の制御として、メッ
セージ競合調停部11から (1)線L25を介してセレクタ12の切り替え、(2)
線L26からFIFOバッファへの書き込み場所の指
示、(3)線L27からFIFOバッファからの読みだ
し場所、の指示が送られてくる。This switch has a FIF used in the present invention.
The O-buffer 13 is provided, and a message that has been forced to wait due to contention due to transfer requests from a plurality of input ports to the same output port can be fetched through the selector 12. As control at this time, switching of the selector 12 from the message contention arbitration unit 11 via the (1) line L25, (2)
The instruction of the writing location to the FIFO buffer is sent from the line L26, and the instruction of (3) the reading location from the FIFO buffer is sent from the line L27.
【0019】FIFOバッファ13からの出力としての
メッセージは、線L28を介して、各出力ポートに対応
するセレクタ14Wないし14Zに送られると同時に、
メッセージ競合調停部11にもメッセージ内の転送先プ
ロセサ番号情報を送り、メッセージ競合調停部11での
出力ポートごとの入力ポート選択候補の一つとして扱
う。この時、FIFOからの要求はできるだけ優先度を
高くする方がよい。The message as the output from the FIFO buffer 13 is sent to the selectors 14W to 14Z corresponding to the respective output ports via the line L28 and at the same time,
The transfer destination processor number information in the message is also sent to the message contention arbitration unit 11 and treated as one of the input port selection candidates for each output port in the message contention arbitration unit 11. At this time, the request from the FIFO should have the highest priority.
【0020】図2にメッセージ競合調停部11の内部構
成を示す。図において、40はOR回路、41Wないし
41Zは出力ポート対応競合調停部、42はFIFOバ
ッファ制御部である。FIG. 2 shows the internal structure of the message contention arbitration unit 11. In the figure, 40 is an OR circuit, 41W to 41Z are output port compatible contention arbitration units, and 42 is a FIFO buffer control unit.
【0021】出力ポート対応競合調停部41Wないし4
1Zは、それぞれ出力ポートごとに対応するメッセージ
競合調停部である。これらの競合調停部はすべて同じ構
成をしている。入力は、各入力バッファ10Aないし1
0D(図1)から線L22Aないし線L22Dを介した
メッセージ送信要求と、各出力バッファ15Wないし1
5Z(図2)から線L30Wないし線L30Zを介した
出力バッファの使用状況情報である。一方、出力は、線
L29Wないし線L29Zを介したセレクタ14Wない
し14Z(図1)の切り替え信号と、線L19Aないし
線19Dを介した各入力バッファ10Aないし10D
(図1)への競合調停結果の回答である。Output port competing arbitration units 41W to 4
1Z is a message contention arbitration unit corresponding to each output port. All of these competitive arbitration units have the same configuration. Inputs are input buffers 10A to 1
0D (FIG. 1) to request message transmission via line L22A to line L22D, and output buffers 15W to 1
It is the use status information of the output buffer from 5Z (FIG. 2) via line L30W to line L30Z. On the other hand, the outputs are the switching signals of the selectors 14W to 14Z (FIG. 1) via the lines L29W to L29Z and the input buffers 10A to 10D via the lines L19A to 19D.
(Fig. 1) is the response to the results of competitive mediation.
【0022】出力ポート対応競合調停部41Wないし1
4Zは、後述するようにFIFOバッファを第5の優先
度の高い入力とし、(1)FIFOバッファ制御部42
からFIFOバッファ上のメッセージ情報を受け取るこ
と、(2)競合調停に負けたメッセージ転送要求のある
入力ポートに関するメッセージ情報をFIFOバッファ
制御部42に転送すること以外は、通常のスイッチのメ
ッセージ競合調停をそのまま用いることができるので、
ここでは、詳細な記述は行わない。Contention arbitration units 41W to 1 corresponding to output ports
4Z uses the FIFO buffer as an input having a fifth high priority, as described later, and (1) the FIFO buffer control unit 42.
Receiving message information on the FIFO buffer from the FIFO buffer, and (2) transferring message information relating to an input port having a message transfer request that has lost the contention arbitration to the FIFO buffer control unit 42. Since it can be used as it is,
No detailed description is given here.
【0023】次に、FIFOバッファ制御部42につい
て説明する。FIFOバッファ制御部42は、FIFO
バッファ13(図1)の制御を行う。Next, the FIFO buffer controller 42 will be described. The FIFO buffer control unit 42 uses the FIFO
The buffer 13 (FIG. 1) is controlled.
【0024】入力は、各出力ポート対応競合調停部41
Wないし41Zからのメッセージ情報として、線L50
Wないし線50Zを介してFIFOバッファへのメッセ
ージ格納要求が、線L51Wないし線51Zを介してメ
ッセージ格納要求を行う送信元の入力ポート番号が、線
L52Wないし線52Zを介して送り込んでいるメッセ
ージの終了情報が、線L53Wないし線53Zを介して
メッセージの有効情報が、それぞれ送られてくる。The input is a contention arbitration unit 41 corresponding to each output port.
As message information from W to 41Z, line L50
A request to store a message in the FIFO buffer is sent via W or line 50Z, and an input port number of a transmission source that makes a message store request is sent via line L52W or line 52Z. The end information and the valid information of the message are sent via the lines L53W and 53Z, respectively.
【0025】これらの情報を元に、FIFOバッファ制
御部42は、取り込むべきメッセージを決定し、線L2
5を介して、セレクタ12(図1)を該当する入力バッ
ファ10Aあるいは10Dからの入力に切り替え、線L
26を介してFIFOバッファ13(図1)の書き込む
べき場所を設定する。Based on these pieces of information, the FIFO buffer control unit 42 determines the message to be fetched, and the line L2
5, the selector 12 (FIG. 1) is switched to the input from the corresponding input buffer 10A or 10D, and the line L
The location to be written in the FIFO buffer 13 (FIG. 1) is set via 26.
【0026】さらに、FIFOバッファ制御部42は、
FIFOバッファ13(図1)上に格納してあるメッセ
ージを送りだすために、メッセージ内のメッセージ情報
としての転送先プロセサ番号を線L28を介して取り込
み、線L55Wないし線L55Zを介して出力ポート対
応競合調停部41Wないし41Zに対して、調停の依頼
をし、その結果を線L54Wないし線L54Zにより受
信し、それに応じて、線L27を介してFIFOバッフ
ァ13(図1)の読みだすべき場所を指示する。Further, the FIFO buffer control unit 42 is
In order to send out the message stored in the FIFO buffer 13 (FIG. 1), the transfer destination processor number as the message information in the message is fetched through the line L28, and the output port corresponding contention is performed through the line L55W or the line L55Z. The arbitration unit 41W to 41Z is requested to arbitrate, the result is received by the line L54W to the line L54Z, and accordingly, the place to be read out of the FIFO buffer 13 (FIG. 1) is instructed via the line L27. To do.
【0027】FIFOバッファ制御部の詳細な構成と動
作を図3を用いて説明する。図3において、50は競合
調停部、51,52は状態を保持するレジスタ、53,
54はセレクタ、55はAND回路、56はFIFOバ
ッファの書き込みポインタWP、57はFIFOバッフ
ァの読みだしポインRP、58はOR回路、59はFI
FOバッファの空き領域の計算部、60は要求信号生成
部である。The detailed structure and operation of the FIFO buffer controller will be described with reference to FIG. In FIG. 3, 50 is a contention arbitration unit, 51 and 52 are registers for holding states, 53 and
54 is a selector, 55 is an AND circuit, 56 is a write pointer WP of the FIFO buffer, 57 is a read point RP of the FIFO buffer, 58 is an OR circuit, and 59 is FI.
A free area calculation unit of the FO buffer, and 60 is a request signal generation unit.
【0028】まず、出力ポート対応競合調停部41Wな
いし41Z(図2)からの要求により、FIFOバッフ
ァ13(図1)へのメッセージの取り込みについて説明
する。出力ポート対応競合調停部41Wないし41Z
(図2)からのメッセージ情報として、線L50Wない
し線50Zを介して、FIFOバッファへのメッセージ
格納要求が、線L51Wないし線L51Zを介して、メ
ッセージ格納要求を行う送信元の入力ポート番号が入力
され、競合調停部50に送られる。競合調停部50で
は、要求のあった入力ポートの中から、一つを選択す
る。このとき、FIFOバッファがメッセージ転送途中に、
バッファの容量があふれてはいけないので、この競合調
停時の入力ポート選択の基準のひとつとして、FIFO
バッファの空き領域情報を後述するFIFOバッファの
空き領域の計算部59から読み込む。それ以外の競合調
停部50の動作は、通常の競合調停と同様であり、ここ
では省略する。First, the fetching of a message into the FIFO buffer 13 (FIG. 1) in response to a request from the output port corresponding contention arbitration unit 41W to 41Z (FIG. 2) will be described. Output port compatible contention arbitration unit 41W to 41Z
As the message information from (FIG. 2), a message storage request to the FIFO buffer is input via line L50W to line 50Z, and an input port number of a transmission source which makes a message storage request is input via line L51W to line L51Z. And sent to the competition arbitration unit 50. The contention arbitration unit 50 selects one from the requested input ports. At this time, the FIFO buffer is
Since the buffer capacity must not overflow, the FIFO is one of the criteria for input port selection during contention arbitration.
Buffer free area information is read from the FIFO buffer free area calculation unit 59 described later. The other operations of the contention arbitration unit 50 are the same as those of the normal contention arbitration, and are omitted here.
【0029】競合調停の結果は、まず、新しくFIFO
バッファ13(図1)に書き込むメッセージがあること
を線L71を介して、レジスタ51ないし52に送り込
む。レジスタ51では、また線L70を介して、新しく
選択された入力ポート番号を、線L71の指示により格
納する。このレジスタ51の情報は、線L25を介し
て、セレクタ12に送られる。もう一つのレジスタ52
は、現在、FIFOバッファ13(図1)への読み込み
が行われている否かの状態を示す。The result of the competitive arbitration is as follows.
The fact that there is a message to be written in the buffer 13 (FIG. 1) is sent to the registers 51 to 52 via the line L71. The register 51 also stores the newly selected input port number via the line L70 according to the instruction on the line L71. The information in the register 51 is sent to the selector 12 via the line L25. Another register 52
Indicates the status of whether or not the data is currently being read into the FIFO buffer 13 (FIG. 1).
【0030】このレジスタ52のSET(FIFOバッ
ファへの読み込み開始)は、線L71を介して行われ、
RESET(FIFOバッファへの読み込み終了)は、
出力ポート対応競合調停部41Wないし41Z(図2)
から線L52WないしL52Zを介して送り込まれたメ
ッセージ情報の一つであるメッセージの終了指示からセ
レクタ53で選択された情報を用いて行う。The SET of the register 52 (start of reading into the FIFO buffer) is performed through the line L71,
RESET (end of reading into the FIFO buffer)
Output port compatible contention arbitration units 41W to 41Z (FIG. 2)
This is performed by using the information selected by the selector 53 from the message end instruction, which is one of the message information sent from the lines L52W to L52Z.
【0031】FIFOバッファ13(図1)の書き込む
場所の設定は次のように行う。出力ポート対応競合調停
部41Wないし41Z(図2)から線L53WないしL5
3Zを介して送り込まれたメッセージ情報の一つである
メッセージの有効情報からセレクタ54で選択された情
報を、レジスタ52の内容により現在FIFOへの読み
込みを行っていることを確認しつつ、FIFOバッファ
の書き込みポインタWP56に送る。WP56では、保
持しているWPの値を+1(メッセージの1サイクルで
の転送単位を1とする)し、その結果を線L26を介し
て、FIFOバッファ13(図1)に送り込む。The writing location of the FIFO buffer 13 (FIG. 1) is set as follows. Lines L53W to L5 from the output port compatible contention arbitration units 41W to 41Z (FIG. 2)
The FIFO buffer confirms that the information selected by the selector 54 from the valid information of the message, which is one of the message information sent via the 3Z, is currently being read into the FIFO buffer while confirming that the information is being read into the FIFO buffer. To the write pointer WP56. In the WP 56, the value of the held WP is incremented by 1 (the transfer unit in one cycle of the message is set to 1), and the result is sent to the FIFO buffer 13 (FIG. 1) via the line L26.
【0032】次に、FIFOバッファ13(図1)上に
格納してあるメッセージを出力バッファ15Wないし1
5Z(図1)に送りだすための処理について説明する。
まず、FIFOバッファ13(図1)上に格納してある
メッセージからメッセージ情報としての転送先プロセサ
番号を、線L28を介して取り込み、要求信号生成部6
0に送り込む。要求信号生成部60は、FIFOバッフ
ァの空き領域の計算部59によりFIFOバッファ13
(図1)上にメッセージが格納されていることを確認
し、線L55Wないし線L55Zを介して、出力ポート
対応競合調停部41Wないし41Z(図2)に対して、
調停の依頼をする。出力ポート対応競合調停部41Wな
いし41Z(図2)では、FIFOバッファ上のメッセ
ージを各入力バッファ上のメッセージと同様に扱うが、
競合時の優先度は、FIFOバッファの方を高くするべ
きである。Next, the messages stored in the FIFO buffer 13 (FIG. 1) are output to the output buffers 15W to 1W.
The process for sending to 5Z (FIG. 1) will be described.
First, the transfer destination processor number as message information is fetched from the message stored in the FIFO buffer 13 (FIG. 1) via the line L28, and the request signal generation unit 6
Send to 0. The request signal generator 60 uses the free area calculator 59 of the FIFO buffer to cause the FIFO buffer 13 to operate.
It is confirmed that the message is stored on (FIG. 1), and via line L55W to line L55Z, to the output port compatible contention arbitration unit 41W to 41Z (FIG. 2),
Request mediation. In the output port compatible contention arbitration units 41W to 41Z (FIG. 2), the message in the FIFO buffer is treated in the same manner as the message in each input buffer.
The priority at the time of contention should be higher in the FIFO buffer.
【0033】この調停結果は、線L54Wないし線L5
4Zにより受信し、OR回路58を介して、FIFOバ
ッファの読みだしポインタRP57に送り込む。RP5
7は保持しているRPの値を+1(メッセージの1サイ
クルでの転送単位を1とする)し、その結果を線L27
を介して、FIFOバッファ13(図1)に送り込む。This arbitration result is the result of lines L54W to L5.
It is received by 4Z and sent to the read pointer RP57 of the FIFO buffer via the OR circuit 58. RP5
7 increments the value of the held RP by 1 (the transfer unit in one cycle of the message is 1), and the result is the line L27.
Through the FIFO buffer 13 (FIG. 1).
【0034】FIFOバッファの空き領域の計算部58
は、書き込みポインタWP56と読みだしポインタRP
57を入力とし、FIFOバッファ13(図1)上に、
メッセージが格納されているか、あるいは、次に格納す
べきメッセージのためにどの程度の余裕があるかを計算
し、その結果を、それぞれ要求信号生成部60と競合調
停部50に送り込む。Calculating section 58 of the free area of the FIFO buffer
Is a write pointer WP56 and a read pointer RP
57 as an input, on the FIFO buffer 13 (FIG. 1),
It calculates whether the message is stored or how much room is left for the message to be stored next, and sends the results to the request signal generation unit 60 and the contention arbitration unit 50, respectively.
【0035】本発明のFIFOバッファは、一つのFI
FO構成としたが、複数のFIFOを準備することも考
えられる。また、さらに、このFIFOを出力ポート対
応に設置することにより、一つの出力ポートが複数の入
力ポートからの複数のメッセージを同時に受け付けるこ
とも可能になる。また、FIFOの容量は大きいほど効
果的である。これらは、すべてスイッチを構成するLS
IあるいはLSI群のゲート規模により決定される。The FIFO buffer of the present invention has one FI.
Although the FO configuration is adopted, it is also possible to prepare a plurality of FIFOs. Furthermore, by installing this FIFO for output ports, one output port can simultaneously receive a plurality of messages from a plurality of input ports. The larger the capacity of the FIFO, the more effective it is. These are the LSs that make up the switch
I or the gate size of the LSI group.
【0036】[0036]
【発明の効果】本発明によれば、競合調停により、待つ
ことを強いられたメッセージを一時的に格納するFIF
Oバッファに格納することにより、入力ポートを解放す
ることができ、次のメッセージを競合調停の対象とする
ことができる。そのため、空いている出力ポートを少な
くすることができ、スイッチの稼働率を高めることがで
きる。According to the present invention, a FIF for temporarily storing a message forced to wait due to contention arbitration.
By storing in the O buffer, the input port can be released, and the next message can be the target of contention arbitration. Therefore, it is possible to reduce the number of vacant output ports and increase the operating rate of the switch.
【図1】スイッチの一実施例を示すブロック図。FIG. 1 is a block diagram showing an embodiment of a switch.
【図2】メッセージ調停制御部の一実施例を示すブロッ
ク図。FIG. 2 is a block diagram showing an embodiment of a message arbitration control unit.
【図3】FIFOバッファ制御部の一実施例を示すブロ
ック図。FIG. 3 is a block diagram showing an embodiment of a FIFO buffer control unit.
【図4】並列計算機のプロセサ間ネットワーク一実施例
を示すブロック図。FIG. 4 is a block diagram showing an embodiment of a network between processors of a parallel computer.
【図5】メッセージの構成の一実施例を示す説明図。FIG. 5 is an explanatory diagram showing an example of a message structure.
50…競合調停部、51,52…レジスタ、53,54
…セレクタ、55…AND回路、56…書き込みポイン
タWP、57…読みだしポインタRP、58…OR回
路、59…FIFOバッファ空き領域計算部、60…要
求信号生成部。50 ... competitive arbitration unit, 51, 52 ... registers, 53, 54
... selector, 55 ... AND circuit, 56 ... write pointer WP, 57 ... read pointer RP, 58 ... OR circuit, 59 ... FIFO buffer free area calculation section, 60 ... request signal generation section.
Claims (4)
力ポートからの転送データ間の競合調停を出力ポート対
応に行い、前記出力ポートの競合で選択されなかった前
記転送データは、前記出力ポートが空くまで待たせられ
る制御を行うデータ転送用スイッチにおいて、前記出力
ポートの競合で選択されなかった前記転送データを一
時、保持するバッファを持ち、前記転送データを送りこ
んだ入力ポートを解放することを特徴とするスイッチ回
路。1. With m inputs and n outputs used for data transfer, contention arbitration between transfer data from each input port is performed corresponding to an output port, and the transfer data not selected due to contention of the output port is output as the output. In a data transfer switch that performs control to wait until a port becomes free, having a buffer that temporarily holds the transfer data that has not been selected due to competition of the output ports, and releasing the input port that has sent the transfer data Switch circuit characterized by.
転送データが一時保持されているときの前記出力ポート
の競合調停には、前記バッファ上のメッセージをm+1
番目の入力として扱うスイッチ回路。2. The message on the buffer according to claim 1, wherein the message on the buffer is m + 1 for contention arbitration of the output port when the transfer data is temporarily held on the buffer.
Switch circuit treated as the second input.
転送データが一時保持されているときの前記出力ポート
の競合調停には、前記バッファ上のメッセージの優先度
を高くするスイッチ回路。3. The switch circuit according to claim 2, wherein the contention arbitration of the output port when the transfer data is temporarily held in the buffer increases the priority of the message in the buffer.
送データの大きさより、大きくするスイッチ回路。4. The switch circuit according to claim 1, wherein the buffer is made larger than the size of the transfer data.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP00191394A JP3704367B2 (en) | 1994-01-13 | 1994-01-13 | Switch circuit |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP00191394A JP3704367B2 (en) | 1994-01-13 | 1994-01-13 | Switch circuit |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH07210528A true JPH07210528A (en) | 1995-08-11 |
JP3704367B2 JP3704367B2 (en) | 2005-10-12 |
Family
ID=11514828
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP00191394A Expired - Lifetime JP3704367B2 (en) | 1994-01-13 | 1994-01-13 | Switch circuit |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3704367B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010181915A (en) * | 2009-02-03 | 2010-08-19 | Nec Corp | Data input-output device |
-
1994
- 1994-01-13 JP JP00191394A patent/JP3704367B2/en not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010181915A (en) * | 2009-02-03 | 2010-08-19 | Nec Corp | Data input-output device |
Also Published As
Publication number | Publication date |
---|---|
JP3704367B2 (en) | 2005-10-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US4968977A (en) | Modular crossbar interconnection metwork for data transactions between system units in a multi-processor system | |
US5093920A (en) | Programmable processing elements interconnected by a communication network including field operation unit for performing field operations | |
US5887183A (en) | Method and system in a data processing system for loading and storing vectors in a plurality of modes | |
US5940612A (en) | System and method for queuing of tasks in a multiprocessing system | |
US8316191B2 (en) | Memory controllers for processor having multiple programmable units | |
EP0460599B1 (en) | Massively parallel processor including queue-based message delivery system | |
US7185224B1 (en) | Processor isolation technique for integrated multi-processor systems | |
US20040162933A1 (en) | Sram controller for parallel processor architecture including an address and command queue and method for controlling access to a RAM | |
Frazier et al. | The design and implementation of a multi-queue buffer for VLSI communication switches. | |
US5625846A (en) | Transfer request queue control system using flags to indicate transfer request queue validity and whether to use round-robin system for dequeuing the corresponding queues | |
EP0172038B1 (en) | Information processor | |
JPH11212786A (en) | Data path for register base data processing and method | |
US6101589A (en) | High performance shared cache | |
JPH05242019A (en) | Look-ahead priority mediation system and its method | |
US6571301B1 (en) | Multi processor system and FIFO circuit | |
EP1035479A2 (en) | System for processing vector data | |
JP4128447B2 (en) | Scalable interconnect structure for parallel computing and parallel memory access | |
JPH07210528A (en) | Switch circuit | |
JPH0496172A (en) | Data storing system, vector data buffer device, and vector data processor | |
JP3982077B2 (en) | Multiprocessor system | |
JP2976700B2 (en) | Synchronous control method between processors | |
JP2900581B2 (en) | Instruction control pipeline structure | |
CN107168898B (en) | Atomic access to object pools over RDMA transport networks | |
JP2744152B2 (en) | Data driven data processor | |
EP0293616A2 (en) | Dynamic switch with task allocation capability |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050104 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050307 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050712 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050725 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080729 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090729 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090729 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100729 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100729 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110729 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110729 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120729 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130729 Year of fee payment: 8 |
|
EXPY | Cancellation because of completion of term |