JPH05173991A - Parallel processing system and data transferring method - Google Patents

Parallel processing system and data transferring method

Info

Publication number
JPH05173991A
JPH05173991A JP4044399A JP4439992A JPH05173991A JP H05173991 A JPH05173991 A JP H05173991A JP 4044399 A JP4044399 A JP 4044399A JP 4439992 A JP4439992 A JP 4439992A JP H05173991 A JPH05173991 A JP H05173991A
Authority
JP
Japan
Prior art keywords
data
buffer
input
output
output port
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
JP4044399A
Other languages
Japanese (ja)
Other versions
JP3389610B2 (en
Inventor
Ichiro Okabayashi
一郎 岡林
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=26384298&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JPH05173991(A) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP04439992A priority Critical patent/JP3389610B2/en
Publication of JPH05173991A publication Critical patent/JPH05173991A/en
Application granted granted Critical
Publication of JP3389610B2 publication Critical patent/JP3389610B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

PURPOSE:To enable a PE-to-PE communication and improve processor performance. CONSTITUTION:The parallel processing system consists of plural PEs 1a, 1c, and 1d and a network 2 which connects the PEs mutually. The PE 1a is constituted by connecting a processor 3a, a memory 4a, and a data transfer device 5a to a common bus. The data transfer device 5 has three buffers and a data repeating device 6 has two buffers. Data from the PE1a to the PE1d are transferred in the order of the memory 4a, buffer 7a, buffer 10a, buffer 8c, buffer 11e, buffer 9d, and memory 4d as shown by a dotted line. Namely, the PE1c repeats the data by utilizing the buffer 8c. Consequently, neither memory writing nor reading is performed at the repeating PE at the time of an optional PE-to- PE communication, so the overhead at the repeating PE is reduced to improve the transfer performance. Further, the data transfer device performs no bus access, so the bus width is widened and the performance of the processor is improved.

Description

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

【0001】[0001]

【産業上の利用分野】本発明は、計算機分野でその将来
性が期待されている並列処理システムに係わり、特にプ
ロセッサエレメント間通信に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a parallel processing system which is expected to be promising in the computer field, and more particularly to communication between processor elements.

【0002】[0002]

【従来の技術】一般に並列処理システムは、計算処理を
行なうプロセサエレメント(以下PE)と、PE間のデ
ータ転送を行なうネットワークで構成される。
2. Description of the Related Art Generally, a parallel processing system comprises a processor element (hereinafter referred to as PE) that performs calculation processing and a network that transfers data between PEs.

【0003】以下図面を参照しながら、従来の並列処理
システムにおけるPE間通信の一例について説明する。
図10は従来の第1の並列処理システムの構成図、図1
1は従来のデータ転送装置の構成図、図12は従来のデ
ータ中継装置の構成図を示すものである。これらは、電
子情報通信学会・集積回路研究会ICD89-152に詳しく述
べられている。ここでは、PE、ネットワークの一部を
示す。また、データの流れを単方向に限って説明する。
An example of communication between PEs in a conventional parallel processing system will be described below with reference to the drawings.
FIG. 10 is a block diagram of a conventional first parallel processing system, FIG.
1 is a block diagram of a conventional data transfer device, and FIG. 12 is a block diagram of a conventional data relay device. These are described in detail in ICD89-152, Institute of Electronics, Information and Communication Engineers, Integrated Circuit Research Group. Here, PE and a part of the network are shown. The data flow will be described only in one direction.

【0004】まず、従来の並列処理システム(図10)
について説明する。基本的には、PE1a,1c,1dとPE間
を相互に接続するネットワーク2で構成される。PE1
は全て同一の構成であり、PE1aを例にとれば、プロセ
サ3a,メモリ4a,データ転送装置5aを共通のバスに接続し
た構成である。また、データ転送装置5aは2つのバッフ
ァ7a,9aを有する。また、ネットワーク2内部にデータ中
継装置6a,6eを設ける。データ中継装置6a・6eはそれぞれ
バッファ10a,10eを有する。ネットワーク2は、任意PE
間通信が第3のPEを1回経由することで可能なもの
(PE間距離が2)である。以上の従来の並列処理シス
テムにおいて、PE1aからPE1dへのデータの流れは、
メモリ4a、バッファ7a、バッファ10a、バッファ9c、メ
モリ4c 、バッファ7c、バッファ10e、バッファ9d、メモ
リ4d となる。これを図10中に点線で示す。
First, a conventional parallel processing system (FIG. 10)
Will be described. Basically, it is composed of a network 2 for connecting PEs 1a, 1c, 1d and PEs to each other. PE1
All have the same configuration, and in the case of PE1a as an example, the processor 3a, the memory 4a, and the data transfer device 5a are connected to a common bus. Further, the data transfer device 5a has two buffers 7a and 9a. Further, data relay devices 6a and 6e are provided inside the network 2. The data relay devices 6a and 6e have buffers 10a and 10e, respectively. Network 2 is an optional PE
Inter-communication is possible by passing once through the third PE (distance between PEs is 2). In the above conventional parallel processing system, the data flow from PE1a to PE1d is
The memory 4a, the buffer 7a, the buffer 10a, the buffer 9c, the memory 4c, the buffer 7c, the buffer 10e, the buffer 9d, and the memory 4d. This is shown by the dotted line in FIG.

【0005】続いて、従来のデータ転送装置(図11)
について説明する。入出力ポート17aはメモリ4に、入出
力ポート17b,17cはネットワーク2に接続される。入出力
ポート17aから17bへのデータの流れは次の様になる。メ
モリアドレス生成部12aよりセレクタ18a経由で、アドレ
ス50aを出力してメモリリードを行ないデータ51aを入出
力ポート17aからバッファ7 へ取り込む。次に、中継ア
ドレス生成部15aからアドレス50bを出力して、入出力ポ
ート17bからデータ51bを出力する。
Subsequently, a conventional data transfer device (FIG. 11)
Will be described. The input / output port 17a is connected to the memory 4, and the input / output ports 17b and 17c are connected to the network 2. The data flow from the input / output ports 17a to 17b is as follows. The address 50a is output from the memory address generation unit 12a via the selector 18a, the memory is read, and the data 51a is fetched from the input / output port 17a into the buffer 7. Next, the relay address generator 15a outputs the address 50b and the input / output port 17b outputs the data 51b.

【0006】また、入出力ポート17cから17aへのデータ
の流れは次の様になる。中継アドレス生成部15bからア
ドレス50cを出力して、入出力ポート17cからデータ51c
を入力し、バッファ9に取り込む。次に、入出力ポート1
7aから、メモリアドレス生成部12bよりセレクタ18a経由
でアドレス50aを、バッファ9よりデータ51a を出力して
メモリライトを行なう。なお、制御部16a・16bはバッフ
ァ状態52a・52bを監視する。
The data flow from the input / output ports 17c to 17a is as follows. The address 50c is output from the relay address generator 15b, and the data 51c is output from the input / output port 17c.
Enter and capture in buffer 9. Next, I / O port 1
7a outputs the address 50a from the memory address generation unit 12b via the selector 18a and the data 51a from the buffer 9 to perform the memory write. The control units 16a and 16b monitor the buffer states 52a and 52b.

【0007】さらに続いて、従来のデータ中継装置(図
12)について説明する。データ51bはバッファ10に格
納される。制御部31aはバッファ10のリード/ライトを
制御する。デコーダ30a・30bはアドレス50b・50cを監視
し、自分がアクセスされた際に、トライステートバッフ
ァ32a・32cをイネーブルとして、バッファ状態52a・52bを
外部へ通過させる。ここでのバッファ状態とは、書き込
み側はバッファフル、読みだし側はバッファエンプティ
に関するものである。
Next, the conventional data relay device (FIG. 12) will be described. The data 51b is stored in the buffer 10. The control unit 31a controls reading / writing of the buffer 10. The decoders 30a and 30b monitor the addresses 50b and 50c, and when they are accessed, enable the tristate buffers 32a and 32c and pass the buffer states 52a and 52b to the outside. The buffer state here means that the writing side is buffer full and the reading side is buffer empty.

【0008】次に、図13は従来のデータ転送方法を示
す図である。これは、ネットワーク2が完全クロスバ網
の例である。PEからのデータ送出順序をデータ中継装
置6a-6p内に示す。即ち、最初のステップでPE1aはデ
ータ中継装置6aに、1bは6e、1cは6i、1dは6mに一斉にデ
ータを送出する。次のステップでは、PE1aはデータ中
継装置6bに、1bは6f、1cは6j、1dは6nに一斉にデータを
送出する。以下同様で、端まで送出し終わると最初に戻
る。最初のステップ終了後、PE1aがデータ中継装置6a
よりデータを受信する。
Next, FIG. 13 is a diagram showing a conventional data transfer method. This is an example in which the network 2 is a perfect crossbar network. The data transmission order from the PE is shown in the data relay devices 6a-6p. That is, in the first step, the PE 1a sends data to the data relay device 6a, 6b for 1b, 6i for 1c, and 6m for 1d all at once. In the next step, the PE 1a sends data to the data relay device 6b, 1b to 6f, 1c to 6j, and 1d to 6n all at once. The same applies to the above, and when the transmission to the end is completed, the process returns to the beginning. After the first step is completed, the PE 1a is the data relay device 6a.
Receive more data.

【0009】最後に、図14は従来の第2の並列処理シ
ステムの構成図である。これは、電子情報通信学会・コ
ンピュータシステム研究会CPSY89-1に詳しく述べられて
いる。ここで、PU(プロセッシングユニット)は図1
4(a)に示す様にメッシュ状に接続されている。各P
Uは図14(b)に示す様にCPU71、ローカルメモリ
72、周辺LSI73を共通のバスに接続した構成である。
また、4つのポート75a-dを有し、2ポートRAMであ
るコネクションメモリ74a-bを介して他PUと通信を行
なう。
Finally, FIG. 14 is a block diagram of a second conventional parallel processing system. This is described in detail in the Institute of Electronics, Information and Communication Engineers / Computer Systems Research Group CPSY89-1. Here, the PU (processing unit) is shown in FIG.
As shown in FIG. 4 (a), they are connected in a mesh. Each P
U is a CPU 71 and a local memory as shown in FIG.
The configuration is such that 72 and peripheral LSI 73 are connected to a common bus.
Further, it has four ports 75a-d and communicates with other PUs via a connection memory 74a-b which is a 2-port RAM.

【0010】[0010]

【発明が解決しようとする課題】しかしながら上記の様
な第1の並列処理システムでは、中継するPEがデータ
を一旦メモリにライトしてから再度リードするので、こ
こでのオーバーヘッドが大きいという問題点を有してい
た。またメモリアクセスを行なうので、バスネックが発
生しプロセサ性能も低下する。
However, in the first parallel processing system as described above, the PE to be relayed once writes the data in the memory and then reads the data again, so that the overhead here is large. I had. In addition, since memory access is performed, a bus neck occurs and processor performance is degraded.

【0011】また、上記の様なデータ転送方式では、最
初のステップ終了後PE1aのみがデータ中継装置6a,6e,
6i,6mに接続されているため受信可能で、このパスだけ
に負荷が集中し、システム全体の転送性能は低下する。
Further, in the data transfer system as described above, only the PE 1a is connected to the data relay devices 6a, 6e, 6e, 6e, after the first step is completed.
Receiving is possible because it is connected to 6i and 6m, and the load concentrates only on this path, and the transfer performance of the entire system deteriorates.

【0012】また、上記の様な第2の並列処理システム
では、全PUが同期して隣接するPUと通信する場合は
非常に高速であるが、距離の遠いPUとの通信は遅い。
任意のPE間距離はNxNのシステムで最大N、平均N
/2である。また個々のPUで通信要求がランダムに発
生する場合の対応、あるいは他ネットワークへの拡張の
2点でも不利である。
In the second parallel processing system as described above, when all the PUs synchronously communicate with the adjacent PUs, the communication speed is very high, but the communication with the distant PUs is slow.
Arbitrary PE distance is maximum N and average N in NxN system
/ 2. In addition, there are two disadvantages in dealing with the case where communication requests are randomly generated in individual PUs, or extending to other networks.

【0013】本発明は上記問題点に鑑み、高いプロセサ
性能、高速なPE間通信を実現し、かつ柔軟な並列処理
システムを提供することを目的とする。
In view of the above problems, it is an object of the present invention to provide a flexible parallel processing system which realizes high processor performance and high-speed PE communication.

【0014】[0014]

【課題を解決するための手段】上記問題点を解決するた
めに、本発明の並列処理システムは、プロセサと、メモ
リと、第1,第2,第3の3つのバッファを有するデータ
転送装置を具備する複数のプロセサエレメントと、前記
複数のプロセサエレメント間で直接または1つ以上のプ
ロセサエレメントを中継することで間接的にデータ転送
が可能なように接続するネットワークを備えたものであ
り、データ転送の際に、送り手となるプロセサエレメン
トでは、データ転送装置がメモリまたはプロセサからデ
ータを第1のバッファに取り込んでから前記ネットワー
クへ送出し、受け手となるプロセサエレメントでは、デ
ータ転送装置が前記ネットワークから前記データを第2
のバッファに取り込んだ後、メモリまたはプロセサへ格
納し、中継するプロセエレメントでは、データ転送装置
が前記ネットワークから前記データを第3のバッファに
取り込んだ後、再び前記ネットワークへ送出するもので
ある。
In order to solve the above problems, the parallel processing system of the present invention comprises a data transfer device having a processor, a memory, and three buffers of first, second and third buffers. The data transfer includes: a plurality of processor elements provided; and a network that connects the plurality of processor elements directly or indirectly by relaying one or more processor elements to enable data transfer. In this case, in the processor element serving as the sender, the data transfer device captures the data from the memory or the processor into the first buffer and then sends the data to the network. In the processor element serving as the receiver, the data transfer device transmits the data from the network. Second data
In the processor element which stores the data in the memory or processor and then relays the data, the data transfer device fetches the data from the network into the third buffer and then sends the data to the network again.

【0015】また、本発明のデータ転送方式は、少なく
とも2つのポートを有するN個(Nは2以上の整数)の
プロセサエレメントと、NxN個の格子点を有し、各格
子点を(K,L)(K,Lは1以上N以下の整数)とし、
ここに少なくとも2つのポートを有するバッファ(K,
L)を配したネットワークを備え、前記第Kのプロセサ
エレメントの一端をバッファ(K,L)の一端に共通に
接続し、またバッファ(K,L)の他端をLが共通にな
るように接続し、この共通接続線を前記プロセサエレメ
ントに接続するか、または外部ポートとする構成を基本
単位として含む並列処理システムにおいて、前記第Kの
プロセサエレメントからデータを送出する際に、バッフ
ァ(K,K)から順次データを送出するものである。
Further, the data transfer system of the present invention has N (N is an integer of 2 or more) processor elements having at least two ports and N × N grid points, each grid point being (K, L) (K and L are integers of 1 or more and N or less),
A buffer with at least two ports (K,
L) is arranged in the network, one end of the Kth processor element is commonly connected to one end of the buffer (K, L), and the other end of the buffer (K, L) is commonly L. In a parallel processing system including as a basic unit a structure in which a common connection line is connected to the processor element or an external port is connected as a basic unit, a buffer (K, The data is sequentially transmitted from K).

【0016】[0016]

【作用】本発明の並列処理システムでは、上記した構成
によって、PE間で通信を行なう場合に、送り手となる
プロセサエレメントでは、データ転送装置がメモリまた
はプロセサからデータを第1のバッファに取り込んでか
らネットワークへ送出する。また、受け手となるプロセ
サエレメントでは、データ転送装置がネットワークから
データを第2のバッファに取り込んだ後、メモリまたは
プロセサへ格納する。さらに、中継するプロセエレメン
トでは、データ転送装置がネットワークからデータを第
3のバッファに取り込んだ後、再びネットワークへ送出
する。従って、中継PEでのメモリライト/リードがな
いので、ここでのオーバーヘッドが軽減され、転送性能
が向上する。また、データ転送装置がバスアクセスをし
ないので、バス幅も広がりプロセサの性能も向上する。
In the parallel processing system of the present invention, when the PEs communicate with each other, the data transfer device fetches the data from the memory or the processor into the first buffer in the processor element serving as the sender. To the network. In the processor element serving as the receiver, the data transfer device fetches the data from the network into the second buffer and then stores the data in the memory or the processor. Further, in the relaying process element, the data transfer device fetches the data from the network into the third buffer, and then sends the data to the network again. Therefore, since there is no memory write / read in the relay PE, the overhead here is reduced and the transfer performance is improved. Further, since the data transfer device does not access the bus, the bus width is widened and the performance of the processor is improved.

【0017】また、本発明のデータ転送方式では、Nx
N個(Nは2以上の整数)の格子点を有するクロスバ網
に対して、第Kのプロセサエレメントは、格子点(K,
K)から順次データを送出するので、受信の際特定のパ
スにトラフィックが集中することはなく、転送性能が向
上する。
Further, in the data transfer system of the present invention, Nx
For a crossbar network having N grid points (N is an integer of 2 or more), the Kth processor element is a grid point (K,
Since the data is sequentially transmitted from K), the traffic is not concentrated on a specific path upon reception, and the transfer performance is improved.

【0018】[0018]

【実施例】以下本発明の実施例について、図面を参照し
ながら説明する。
Embodiments of the present invention will be described below with reference to the drawings.

【0019】これらの実施例では説明及び図面の簡単化
のため、データの流れを一方向に限定する。また、ネッ
トワークは、任意PE間通信が第3のPEを1回経由す
ることで可能なもの(PE間距離が2)である。
In these embodiments, the data flow is limited to one direction for simplification of description and drawings. Further, the network is one in which communication between arbitrary PEs is possible by passing through the third PE once (distance between PEs is 2).

【0020】本発明の第1の実施例における並列処理シ
ステムの全体構成図(図6)を説明する。これはPE数
4の並列処理システムである。図6の構成によりPE間
距離2を実現する。図1はこの抜粋と考えてよく、PE
1a、データ中継装置6a、PE1c、データ中継装置6e、P
E1dと接続されることがわかる。
An overall configuration diagram (FIG. 6) of the parallel processing system in the first embodiment of the present invention will be described. This is a parallel processing system with four PEs. The PE distance 2 is realized by the configuration of FIG. Figure 1 can be thought of as this excerpt, PE
1a, data relay device 6a, PE1c, data relay device 6e, P
It can be seen that it is connected to E1d.

【0021】図1は本発明の第1の実施例における並列
処理システムの構成図である。基本的には、PE1a・1c・
1dとPE間を相互に接続するネットワーク2で構成され
る。制御線を含めた全体的な接続は、図7を用いて後ほ
ど説明する。
FIG. 1 is a block diagram of a parallel processing system according to the first embodiment of the present invention. Basically, PE1a ・ 1c ・
1d and PE are connected to each other by a network 2. The overall connection including the control lines will be described later with reference to FIG.

【0022】PEは全て同一の構成であり、PE1aを例
にとれば、プロセサ3a、メモリ4a、データ転送装置5aを
共通のバスに接続した構成である。また、データ転送装
置5aは3つのバッファ7a・8a・9aを有する。また、ネット
ワーク2内部にデータ中継装置6a・6eを設ける。データ中
継装置6aはバッファ10a・11aを、6eはバッファ10e・11eを
有する。以上の並列処理システムにおいて、PE1aから
PE1dへのデータの流れは、メモリ4a、バッファ7a、バ
ッファ10a、バッファ8c、バッファ11e、バッファ9d、メ
モリ4dとなる。これを図1中に点線で示す。
All PEs have the same configuration. Taking PE1a as an example, the processor 3a, memory 4a, and data transfer device 5a are connected to a common bus. Further, the data transfer device 5a has three buffers 7a, 8a and 9a. Further, data relay devices 6a and 6e are provided inside the network 2. The data relay device 6a has buffers 10a and 11a, and 6e has buffers 10e and 11e. In the above parallel processing system, the flow of data from PE1a to PE1d is memory 4a, buffer 7a, buffer 10a, buffer 8c, buffer 11e, buffer 9d, and memory 4d. This is indicated by the dotted line in FIG.

【0023】ここで、データを中継するPE1cにおい
て、データ転送装置5cはデータ中継装置6aから受信した
データを内部のバッファ8c経由でデータ中継装置6eに送
出する。ここで、メモリ4cのアクセスを伴わないので、
転送速度の向上及びバス幅の拡大の両者が同時に可能と
なる。
Here, in the PE 1c that relays data, the data transfer device 5c sends the data received from the data relay device 6a to the data relay device 6e via the internal buffer 8c. Here, since the memory 4c is not accessed,
Both the improvement of the transfer speed and the expansion of the bus width are possible at the same time.

【0024】以下、本実施例を実現するための要素技術
であるデータ転送装置、データ中継装置等について順次
説明する。
Hereinafter, the data transfer device, the data relay device, and the like, which are the elemental techniques for realizing the present embodiment, will be sequentially described.

【0025】まず、第1のデータ転送装置について説明
する。図2は、本発明の第1の実施例におけるデータ転
送装置の構成図である。入出力ポート17aはメモリ4に、
17b,17cはネットワーク2のバッファ中継装置6に接続さ
れる。
First, the first data transfer device will be described. FIG. 2 is a block diagram of the data transfer device in the first embodiment of the present invention. I / O port 17a is in memory 4,
17b and 17c are connected to the buffer relay device 6 of the network 2.

【0026】入出力ポート17aから17bへのデータの流れ
は次の様になる。メモリアドレス生成部12aよりセレク
タ18a経由で、アドレス50を出力してメモリリードを行
なう。データ51を入出力ポート17aから取り込み、タグ
生成部13の出力をタグとしてデータに付加した後、バッ
ファ7へ取り込む。次に、中継アドレス生成部15aからセ
レクタ18c経由でアドレス50b、バッファ部7からセレク
タ18b経由でデータ51bを入出力ポート17bより出力す
る。ここで、メモリアドレス生成部12aはリード回数の
カウントも行なう。タグについては、図4を用いて後ほ
ど説明する。
The data flow from the input / output ports 17a to 17b is as follows. The memory address generator 12a outputs the address 50 via the selector 18a to read the memory. The data 51 is fetched from the input / output port 17a, the output of the tag generator 13 is added to the data as a tag, and then fetched into the buffer 7. Next, the relay address generation unit 15a outputs the address 50b via the selector 18c, and the buffer unit 7 outputs the data 51b via the selector 18b from the input / output port 17b. Here, the memory address generation unit 12a also counts the number of reads. The tags will be described later with reference to FIG.

【0027】また、入出力ポート17cから17aへのデータ
の流れは次の様になる。中継アドレス生成部15bからア
ドレス50cを出力して、入出力ポート17cからデータ51c
を入力し、バッファ9に取り込む。次に、入出力ポート1
7aから、バッファ9 の出力の一部をセレクタ18a経由で
アドレス50に、バッファ9の他の一部をデータ51に出力
してメモリライトを行なう。ここで、カウンタ14はライ
ト回数のカウントを行なう。
The data flow from the input / output ports 17c to 17a is as follows. The address 50c is output from the relay address generator 15b, and the data 51c is output from the input / output port 17c.
Enter and capture in buffer 9. Next, I / O port 1
7a outputs a part of the output of the buffer 9 to the address 50 via the selector 18a and another part of the buffer 9 to the data 51 to perform the memory write. Here, the counter 14 counts the number of writes.

【0028】最後に、入出力ポート17cから17bへのデー
タの流れは次の様になる。中継アドレス生成部15bから
アドレス50cを出力して、入出力ポート17cからデータ51
cを入力し、タグ変換部131でタグ部分を変換したのちバ
ッファ8に取り込む。次に、アドレス50bとしてバッファ
8の出力の一部をセレクタ18c経由で、データ51bとして
バッファ部8の出力の他の一部をセレクタ18b経由でそれ
ぞれ入出力ポート17bより出力する。即ち中継アドレス
として、メモリからネットワークへの転送時は中継アド
レス生成部15a出力を、ネットワークからネットワーク
への転送時はデータの一部を用いる。またメモリアドレ
スとして、リード時はメモリアドレス生成部18a出力
を、ライト時はデータの一部を用いる。
Finally, the data flow from the input / output ports 17c to 17b is as follows. The address 50c is output from the relay address generator 15b, and the data 51 is output from the input / output port 17c.
After inputting c, the tag converting unit 131 converts the tag portion and then fetches it in the buffer 8. Then buffer as address 50b
A part of the output of 8 is output via the selector 18c, and another part of the output of the buffer unit 8 is output as data 51b from the input / output port 17b via the selector 18b. That is, as the relay address, the output of the relay address generation unit 15a is used when transferring from the memory to the network, and a part of the data is used when transferring from the network to the network. As the memory address, the output of the memory address generation unit 18a is used at the time of reading and a part of the data is used at the time of writing.

【0029】なお、制御部16a、16bはデータ中継装置の
バッファ状態52a、52bを監視する。ここでは、入出力ポ
ート17b,17cを単方向としたが、これは双方向でもよ
い。図15はこれを示したもので、第1の実施例における
データ転送装置を双方向にした場合の構成図である。こ
の場合はバッファ7、8、9、内部線を双方向化した上で、
セレクタ18e,18dを入出力ポート17c側に設ける。タグ変
換部131は1つであるので、データの流れが入出力ポー
ト17c->入出力ポート17bの場合はバッファ8入力時、入
出力ポート17b->入出力ポート17cの場合はバッファ8出
力時にタグの変換をすることになる。
The control units 16a and 16b monitor the buffer states 52a and 52b of the data relay device. Although the input / output ports 17b and 17c are unidirectional here, they may be bidirectional. FIG. 15 shows this, and is a block diagram when the data transfer device in the first embodiment is bidirectional. In this case, after making buffers 7, 8, 9 and the internal line bidirectional,
Selectors 18e and 18d are provided on the input / output port 17c side. Since there is only one tag converter 131, when the data flow is I / O port 17c-> I / O port 17b, buffer 8 is input, and when I / O port 17b-> I / O port 17c, buffer 8 is output. You will be converting tags.

【0030】次に、第2のデータ転送装置について説明
する。図3は本発明の第2の実施例におけるデータ転送
装置の構成図である。基本的には図2と同様であるが、
入出力ポート17aから17bへのデータの流れに若干の相違
点があるのでこれについて説明する。メモリアドレス生
成部12aよりセレクタ18a経由で、アドレス50を出力して
メモリリードを行なう。データ51を入出力ポート17aか
ら取り込み、タグ及び中継アドレス生成部130の出力を
タグとしてデータに付加した後、バッファ7へ取り込
む。次に、アドレス50bとしてバッファ部7の出力の一部
をセレクタ18c経由で、データ51bとしてバッファ部7の
他の一部をセレクタ18b経由でそれぞれ入出力ポート17b
より出力する。即ち中継アドレスとして、メモリからネ
ットワークへの転送時、ネットワークからネットワーク
への転送時共にデータの一部を用いる。図2ではデータ
中継装置15aで生成したアドレスを、図3ではタグ及び
中継アドレス生成部130で生成することになる。
Next, the second data transfer device will be described. FIG. 3 is a block diagram of a data transfer device according to the second embodiment of the present invention. Basically the same as in FIG. 2, but
Since there are some differences in the data flow from the input / output ports 17a to 17b, this will be described. The memory address generator 12a outputs the address 50 via the selector 18a to read the memory. The data 51 is fetched from the input / output port 17a, the output of the tag and relay address generation unit 130 is added to the data as a tag, and then fetched into the buffer 7. Next, a part of the output of the buffer unit 7 as the address 50b is sent via the selector 18c, and another part of the buffer unit 7 is sent as the data 51b via the selector 18b.
Output more. That is, a part of the data is used as the relay address both during the transfer from the memory to the network and during the transfer from the network to the network. The address generated by the data relay device 15a in FIG. 2 is generated by the tag and relay address generation unit 130 in FIG.

【0031】ここでは、入出力ポート17b,17cを単方向
としたが、これは双方向でもよい。図16はこれを示した
もので、第2の実施例におけるデータ転送装置を双方向
にした場合の構成図である。この場合はバッファ7、8、
9、内部線を双方向化した上で、セレクタ18e,18dを入出
力ポート17c側に設ける。タグ変換部131は1つであるの
で、データの流れが入出力ポート17c->入出力ポート17b
の場合はバッファ8入力時、入出力ポート17b->入出力ポ
ート17cの場合はバッファ8出力時にタグの変換をするこ
とになる。
Although the input / output ports 17b and 17c are unidirectional here, they may be bidirectional. FIG. 16 shows this, and is a block diagram when the data transfer device in the second embodiment is bidirectional. In this case buffers 7, 8,
9. After making the internal lines bidirectional, the selectors 18e and 18d are provided on the input / output port 17c side. Since there is only one tag converter 131, the data flow is I / O port 17c-> I / O port 17b.
In the case of, the conversion of the tag is performed at the time of inputting the buffer 8, and in the case of the input / output port 17b-> I / O port 17c, the output of the buffer 8 is performed.

【0032】次に、タグ生成部13で生成するタグについ
て、本実施例におけるデータ形式の構成図である図4を
用いて説明する。データはデータ部24とタグ部で構成さ
れる。タグは、データの種別(属性・形式等)を示す制
御情報部20、現在の転送が第何ステップであるかを示す
回数部21、2回目以降に中継する中継部のアドレスを中
継順に示す複数の中継アドレス部22a,22b、最終的なデ
ータの格納アドレスを示すメモリアドレス部23を備え
る。図4(a)が送出、中継PE間、図4(b)が中
継、受信PE間のデータの形式である。図1の例では図
4(a)がPE1a-1c間、図4(b)がPE1c-1d間のデ
ータの形式である。
Next, the tags generated by the tag generator 13 will be described with reference to FIG. 4, which is a block diagram of the data format in this embodiment. The data is composed of a data section 24 and a tag section. The tag is a control information section 20 that indicates the type (attribute, format, etc.) of data, a count section 21 that indicates what step is the current transfer, and a plurality that indicates the addresses of relay sections that relay after the first time in the relay order. Relay address sections 22a and 22b, and a memory address section 23 indicating a final storage address of data. FIG. 4A shows a data format between the sending and relaying PEs, and FIG. 4B shows a data format between the relaying and receiving PEs. In the example of FIG. 1, FIG. 4A shows a data format between PE1a-1c and FIG. 4B shows a data format between PE1c-1d.

【0033】図1を用いてタグとPE間通信の関係につ
いて説明する。データ転送装置は図3の構成とする。デ
ータ転送装置5aのタグ及び中継アドレス生成部130で、
制御情報部20に制御情報を、回数部21には回数を、中継
アドレス部22aにはデータ中継装置6aのアドレスを、中
継アドレス部22bにはデータ中継装置6eのアドレスを、
メモリアドレス部23にはメモリ4dのアドレスをそれぞれ
示したタグを生成・付加する。これが図4(a)であ
る。例として、制御情報部20はデータ長を示す3、回数
部21は一回目を示す1、中継アドレス部22aはデータ中
継装置6aが手前にあるので0、中継アドレス部22bも0
を付加する。データ転送装置5aは、中継アドレス部22a
`0`を送出してデータ中継装置6aへデータを送出す
る。ここで制御情報部20の3はデータ長が2の3乗つま
り8ワードである旨等を含む。次にデータ転送装置5cの
タグ変換部131ではデータ中継装置6aからデータを取り
込み、回数部21を2回目を示す2にし、中継アドレス部
22aを削除して図4(b)に示す形式に変換後、中継ア
ドレス部22b`0`を送出してデータ中継装置6eへデー
タを送出する。最後に、データ転送装置5dではデータ中
継装置6eからデータを取り込んだ後、メモリアドレス部
23を出力してメモリ4dへデータをライトする。データ部
が8ワードであるので、メモリアドレス部23に示すアド
レスより順次8ワードライトすることになる。
The relationship between the tag and PE communication will be described with reference to FIG. The data transfer device has the configuration shown in FIG. In the tag and relay address generation unit 130 of the data transfer device 5a,
Control information in the control information unit 20, the number of times in the number unit 21, the address of the data relay device 6a in the relay address unit 22a, the address of the data relay device 6e in the relay address unit 22b,
The memory address unit 23 generates and adds tags indicating the addresses of the memory 4d. This is FIG. 4 (a). As an example, the control information unit 20 indicates a data length of 3, the count unit 21 indicates a first time, the relay address unit 22a is 0 because the data relay device 6a is in front, and the relay address unit 22b is also 0.
Is added. The data transfer device 5a includes a relay address section 22a.
"0" is sent to send the data to the data relay device 6a. Here, 3 in the control information section 20 includes the fact that the data length is 2 to the power of 3, that is, 8 words. Next, the tag conversion unit 131 of the data transfer device 5c takes in the data from the data relay device 6a, sets the count unit 21 to 2 indicating the second time, and sets the relay address unit.
After deleting 22a and converting it to the format shown in FIG. 4B, the relay address section 22b-0 'is sent to send the data to the data relay device 6e. Finally, in the data transfer device 5d, after fetching the data from the data relay device 6e,
23 is output and the data is written to the memory 4d. Since the data portion is 8 words, 8 words are sequentially written from the address shown in the memory address portion 23.

【0034】ここで、データ取り込みに関して、候補と
なるデータ中継装置が複数ある場合は、順次スキャンし
てデータの準備されたものから取り込めばよい。これら
一連の動作で、データ転送装置はネットワークから受け
たデータを再度ネットワークに送出するか、メモリにラ
イトするか決める必要がある。これは例えば、回数部21
を見て判断すればよい。また、別の方法としてデータ中
継装置にPE間距離に相当する複数のバッファを準備
し、ある特定のバッファからのデータはメモリ、その他
はネットワークと決めれば回数部21は不要となる。これ
は、図5にて後ほど説明する。
Here, regarding data acquisition, when there are a plurality of candidate data relay devices, it is sufficient to sequentially scan and acquire data from the prepared one. In these series of operations, the data transfer device needs to decide whether to send the data received from the network again to the network or to write it in the memory. This is, for example, the counting part 21
You can judge by looking at. As another method, if a plurality of buffers corresponding to the distance between PEs are prepared in the data relay device and data from a certain specific buffer is determined to be a memory, and the rest is a network, the counting unit 21 becomes unnecessary. This will be described later with reference to FIG.

【0035】また、データ転送装置が図2の構成の場合
には、図4の中継アドレス部22aは存在せず、代わりに
中継アドレス生成部15aが一回目の中継アドレスを生成
することになる。なお、タグの構成としては回数部21の
代わりに、複数の中継アドレス部の最後に終了符号を付
ける形式も可能である。
When the data transfer device has the configuration of FIG. 2, the relay address part 22a of FIG. 4 does not exist, and the relay address generation part 15a instead generates the first relay address. Note that the tag may have a format in which an end code is added to the end of a plurality of relay address parts instead of the count part 21.

【0036】さらに別の方法として、タグ変換をせず図
4(a)の形式のままで、1回目は22aを、2回目は22b
を中継アドレスとして送出する方法もある。この場合は
図2等におけるタグ変換部131は不要であるが、セレク
タ18cで1、2回目で選択するビット位置を変える必要
が生じる。また少しではあるが、タグのビット数が大き
くなる。
As another method, without converting the tag, the format is as shown in FIG. 4A, the first time is 22a, and the second time is 22b.
Is also available as a relay address. In this case, the tag conversion unit 131 in FIG. 2 and the like is unnecessary, but it is necessary to change the bit position selected by the selector 18c at the first and second times. Moreover, the bit number of the tag becomes large, although it is a little.

【0037】データ毎にアドレス情報が付加された以上
の構成により、送り手及び受け手のPEが複数で、かつ
データ数が複数で、また流れる順序がランダムな場合で
も、複雑な制御なしで、確実に転送が実現できる。
With the above configuration in which the address information is added to each data, even if there are plural senders and receivers PE, the number of data is plural, and the flow order is random, complicated control can be performed without fail. Transfer can be realized.

【0038】さて次に、データ中継装置について説明す
る。図5は本発明の実施例におけるデータ中継装置の構
成図である。データ中継装置には2つのモードを有す
る。
Next, the data relay device will be described. FIG. 5 is a block diagram of the data relay device in the embodiment of the present invention. The data relay device has two modes.

【0039】第1のモードは、1本のバッファとして動
作するもので、入力セレクタ35はバッファ10出力を、出
力セレクタ34はバッファ11出力を選択する。バッファ10
及び11を連続した1本のバッファとして使用する。動作
は従来例(図12)と同様である。即ち、制御部31aはバ
ッファ10、11のリード/ライトを制御する。デコーダ30a
・30bはアドレス50b・50cを監視し、自分がアクセスされ
た際に、トライステートバッファ32a・32bをイネーブル
として、バッファ状態52a・52bを外部へ通過させる。こ
の時、制御部31b,トライステートバッファ32c・32d はデ
ィスエーブルである。
The first mode operates as one buffer, and the input selector 35 selects the buffer 10 output and the output selector 34 selects the buffer 11 output. Buffer 10
And 11 are used as one continuous buffer. The operation is similar to the conventional example (Fig. 12). That is, the control unit 31a controls reading / writing of the buffers 10 and 11. Decoder 30a
The 30b monitors the addresses 50b and 50c and, when accessed, enables the tristate buffers 32a and 32b and passes the buffer states 52a and 52b to the outside. At this time, the control unit 31b and the tri-state buffers 32c and 32d are disabled.

【0040】第2のモードは、2本のバッファを並列に
動作させるもので、入力セレクタ35は入出力ポート36a
を、出力セレクタ34は必要に応じてバッファ10または11
出力を選択する。バッファ10及び11を独立な2本のバッ
ファとして使用する。
In the second mode, two buffers are operated in parallel, and the input selector 35 is the input / output port 36a.
The output selector 34 uses the buffer 10 or 11 as required.
Select an output. Buffers 10 and 11 are used as two independent buffers.

【0041】制御部31aはバッファ10のリード/ライト
を、制御部31bはバッファ11のリード/ライトを制御す
る。デコーダ30a・30bはアドレス50b・50cを監視し、自分
がアクセスされた際に、トライステートバッファ32a-32
dをイネーブルとして、バッファ状態52a-52d を外部へ
通過させる。ここでのバッファ状態とは、書き込み側は
バッファフル、読みだし側はバッファエンプティに関す
るものであり、バッファ状態52a・52bがバッファ10に、
バッファ状態52c・52dがバッファ11にそれぞれ対応す
る。
The control unit 31a controls reading / writing of the buffer 10, and the control unit 31b controls reading / writing of the buffer 11. Decoders 30a and 30b monitor addresses 50b and 50c, and when they are accessed, tri-state buffers 32a-32
Enable d and pass buffer states 52a-52d to the outside. The buffer state here is about buffer full on the writing side and buffer empty on the reading side, and the buffer states 52a and 52b are stored in the buffer 10.
The buffer states 52c and 52d correspond to the buffer 11, respectively.

【0042】第2のモードでは、データ中継装置6にP
E間距離2に相当する2本のバッファが存在することに
なる。データ中継装置6a・6eでは、バッファ10a・10eが1
回目、バッファ11a・11eが2回目のデータを格納する。
従って、データは前記した様に図1の点線の流れとな
る。
In the second mode, the data relay device 6 receives a P
There will be two buffers corresponding to the E-to-E distance 2. In the data relay devices 6a and 6e, the buffers 10a and 10e are 1
The buffers 11a and 11e store the data for the second time.
Therefore, the data has the flow of the dotted line in FIG. 1 as described above.

【0043】データ転送装置5 は、データ中継装置の2
つのバッファ状態を監視して、送受可能な方とデータの
やりとりを行なう。ここで、データ転送装置5cがバッフ
ァ10a から取り込んだ時はバッファ8c に、バッファ11a
から取り込んだ時はバッファ9cにそれぞれ格納する制御
を行なうことで、図4のタグの回数部21は不要となる。
The data transfer device 5 is a data relay device 2
It monitors the status of the two buffers and exchanges data with those who can send and receive data. Here, when the data transfer device 5c fetches from the buffer 10a, the data is transferred to the buffer 8c and the buffer 11a.
When the data is fetched from, the tag count portion 21 of FIG. 4 becomes unnecessary by controlling the storage in the buffer 9c.

【0044】第3のPEを介するPE間通信時、本デー
タ中継装置の第1のモードを用いるデータ中継装置を用
いた場合はデッドロックが発生するが、本データ中継装
置の第2のモードを用いることで、1回目と2回目のデ
ータが独立に扱えるので、デッドロックが回避できる
が、ここの事情について説明する。
During PE-to-PE communication via the third PE, a deadlock occurs when a data relay device using the first mode of the data relay device is used, but the second mode of the data relay device is switched to the deadlock mode. By using the data, the first and second data can be handled independently, so deadlock can be avoided. The situation here will be described.

【0045】図17は本発明のデータ中継装置(第1のモ
ード)を用いた場合の転送の様子を示す図、図18は本発
明のデータ中継装置(第2のモード)を用いた場合の転
送の様子を示す図である。ここでは、PE1b,1a,1c間で
データが流れる場合について考える。また簡単化のため
バッファ7,8,9は1段、図17でバッファ10d,10a,10fは2
段、図18でバッファ10d,10a,10f,11d,11a,11fは1段と
する。
FIG. 17 is a diagram showing a state of transfer when the data relay apparatus (first mode) of the present invention is used, and FIG. 18 is a case where the data relay apparatus (second mode) of the present invention is used. It is a figure which shows the mode of transfer. Here, consider a case where data flows between the PEs 1b, 1a, 1c. Further, for simplification, the buffers 7, 8, 9 have one stage, and the buffers 10d, 10a, 10f have two stages in FIG.
In FIG. 18, the buffers 10d, 10a, 10f, 11d, 11a and 11f are assumed to be one stage.

【0046】送信、中継、受信PEとデータの関係は次
の様になる。 送信PE1b->中継PE1a->受信PE1c : データc1,c
2,c3,c4 送信PE1a->中継PE1c->受信PE1b : データb1,b
2,b3,b4 送信PE1c->中継PE1b->受信PE1a : データa1,a
2,a3,a4 データ中継装置(第1のモード)を用いた場合では、図
17に示す様な状態に陥った場合にデッドロックとなる。
ここで例えばPE1bはデータc4またはa2を送出したい
が、データ中継装置6dのバッファ10dがフルであるので
送れない。データ中継装置6dはデータc3を吐き出したい
がc3が入るべきバッファ8aがフルであるので転送できな
い。バッファ8aに空きが生じるためにはバッファ10aに
空きが生じる必要があるが、データb3が入るべきバッフ
ァ8cがフルであるのでバッファ10aは空かない。バッフ
ァ8cが空くためにはバッファ10fが空く必要があるが、
このためにはバッファ8bが空く必要がある。そのために
はバッファ10dが空く必要があり、結局どのバッファも
空くことはない、つまりデッドロックとなる。この様に
複数のPEで閉じたループを構成する場合にデッドロッ
クが発生する可能性が高い。
The relationship between transmission, relay, reception PE and data is as follows. Send PE1b-> Relay PE1a-> Receive PE1c: Data c1, c
2, c3, c4 Send PE1a-> Relay PE1c-> Receive PE1b: Data b1, b
2, b3, b4 Send PE1c-> Relay PE1b-> Receive PE1a: Data a1, a
When using 2, a3, a4 data relay device (first mode),
Deadlock occurs when the situation shown in 17 is reached.
Here, for example, PE1b wants to send the data c4 or a2, but cannot send because the buffer 10d of the data relay device 6d is full. The data relay device 6d wants to discharge the data c3, but cannot transfer it because the buffer 8a into which c3 should be stored is full. In order for the buffer 8a to have a free space, the buffer 10a needs to have a free space, but since the buffer 8c to which the data b3 should be inserted is full, the buffer 10a is not free. Buffer 10f needs to be free in order for buffer 8c to be free,
This requires buffer 8b to be free. For that purpose, the buffer 10d needs to be free, and eventually, no buffer is free, that is, a deadlock. When a closed loop is composed of a plurality of PEs in this way, a deadlock is likely to occur.

【0047】データ中継装置(第2のモード)を用いた
場合では、図17に相当する状態が図18(a)である。例え
ばデータ中継装置6dについてみればバッファ10dに1回
目の転送途中のデータc3、バッファ11dに2回目の転送
途中のデータa1が格納される。
When the data relay device (second mode) is used, the state corresponding to FIG. 17 is FIG. 18 (a). For example, regarding the data relay device 6d, the data c3 during the first transfer is stored in the buffer 10d, and the data a1 during the second transfer is stored in the buffer 11d.

【0048】次のサイクルではデータa1がバッファ9a、
データc1がバッファ9c、データb1がバッファ9bに転送さ
れる。この状態を示したのが図18(b)である。バッファ9
a,9c,9bのデータはメモリにライトされるのでこれらの
バッファにはすぐ空きが生じる。こうなると例えばPE
1bはデータa2をバッファ11d経由でバッファ9aに送れ
る。バッファ8bに空きが生じるのでバッファ10fのデー
タa3がバッファ8bに転送可能となる。以下同様に順次デ
ータが流れデッドロックは生じない。
In the next cycle, the data a1 is stored in the buffer 9a,
The data c1 is transferred to the buffer 9c and the data b1 is transferred to the buffer 9b. This state is shown in FIG. 18 (b). Buffer 9
Since the data of a, 9c, and 9b are written in the memory, empty space is immediately created in these buffers. When this happens, for example PE
1b can send data a2 to buffer 9a via buffer 11d. Since there is a space in the buffer 8b, the data a3 in the buffer 10f can be transferred to the buffer 8b. Similarly, the data sequentially flows thereafter, and deadlock does not occur.

【0049】以上により、ランダムな通信要求が発生し
た場合でも確実に動作できる。また1回目と2回目のデ
ータの優先度付けを適切に行なうことで転送性能も向上
する。また直接PE間で転送する場合は、第1のモード
で大きなバッファリングが可能となる。
As described above, even if a random communication request occurs, the operation can be surely performed. Also, the transfer performance is improved by appropriately prioritizing the first and second data. Further, when transferring directly between PEs, large buffering becomes possible in the first mode.

【0050】データ転送装置とデータ中継装置間の制御
線を含めた信号線の接続の様子を図7に示す。データ中
継装置6aと6b、6aと6cの信号線が共通に接続される。中
継アドレスによりアクティブなデータ中継装置が選択さ
れてデータ・アドレスが受け渡される。またバッファ状
態は選択されたデータ中継装置のみが出力し、他のデー
タ中継装置はハイインピーダンスである。
FIG. 7 shows how the signal lines including the control lines between the data transfer device and the data relay device are connected. The signal lines of the data relay devices 6a and 6b and 6a and 6c are commonly connected. The active data relay device is selected by the relay address and the data address is passed. The buffer state is output only by the selected data relay device, and the other data relay devices have high impedance.

【0051】次にネットワークでのアドレス・データの
形式を、本発明の実施例におけるアドレス・データ構成
図である図8を用いて説明する。ここでは、図8
(a),(b)2つの例を示す。一般に並列処理システ
ムではメモリとネットワークでのバス幅が異なり、ネッ
トワーク側が狭くなる。そのため、ネットワークとのイ
ンターフェースでデータ幅の変換が必要となる。
Next, the format of address data in the network will be described with reference to FIG. 8 which is an address data configuration diagram in the embodiment of the present invention. Here, FIG.
(A), (b) Two examples are shown. Generally, in a parallel processing system, the memory and the bus width of the network are different, and the network side becomes narrower. Therefore, it is necessary to convert the data width at the interface with the network.

【0052】図8(a)では、データ転送装置1aからデ
ータ中継装置6a間のデコーダ30aへアドレス50bが入力さ
れる。データ51b(アドレス以外)は、データ転送装置1
aの出力ラッチ40に格納された後、セレクタ41で分解さ
れて、データ中継装置6aへ入力される。図8(b)で
は、アドレス50b及びデータ51bはデータ転送装置1aの出
力ラッチ40に格納された後、セレクタ41で分解されて、
データ中継装置6aへ入力され、アドレス50bはデコーダ3
0aへ、データ51bは内部へ入力される。図8(b)は、
データにアドレス情報が含まれ、データ中継装置は入力
データを常に監視し、自分のアドレスに対応するものが
出現した場合にデータを取り込むデーターフロー的な制
御となる。図8(a)に比べて、制御ロジックは複雑に
なり、転送量も多いが、データ転送装置とデータ中継装
置間の配線数は少なくなる。
In FIG. 8A, the address 50b is input from the data transfer device 1a to the decoder 30a between the data relay devices 6a. Data 51b (other than address) is transferred to the data transfer device 1
After being stored in the output latch 40 of a, it is disassembled by the selector 41 and input to the data relay device 6a. In FIG. 8B, the address 50b and the data 51b are stored in the output latch 40 of the data transfer device 1a and then decomposed by the selector 41,
It is input to the data relay device 6a and the address 50b is input to the decoder 3
The data 51b is input to 0a. FIG. 8B shows
Since the data includes address information, the data relay device constantly monitors the input data, and when data corresponding to its own address appears, the data relay device controls the data flow to take in the data. Compared to FIG. 8A, the control logic is complicated and the transfer amount is large, but the number of wires between the data transfer device and the data relay device is small.

【0053】最後に、本発明の実施例におけるデータ転
送方法について図9、図19で説明する。図9は本発明
の実施例におけるデータ転送方法を示す図、図19は同
実施例における時間と転送レートの関連図である。図9
は、ネットワーク2が完全クロスバ網の例である。PE
からのデータ送出順序をデータ中継装置6a-6p内に示
す。即ち、最初のステップでPE1aはデータ中継装置6a
に、1bは6f、1cは6k、1dは6pに一斉にデータを送出す
る。次のステップでは、PE1aはデータ中継装置6bに、
1bは6g、1cは6l、1dは6mに一斉にデータを送出する。以
下同様で、端まで送出し終わると最初に戻る。これによ
り最初のステップ終了後、全てのPEで受信が可能とな
る。即ち、PE1aはデータ中継装置6a、1bは6f、1cは6
k、1dは6pよりそれぞれデータを受信できる。従って特
定のネットワークの負荷が偏らないので、システム全体
の転送効率が向上する。これを図19に示す。従来は、
時間1で1つのチャネルでのみ送受が行なわれるので転
送レートは1である。時間2で転送レート2、3で3、
4で4と増えて行きその後減少し、時間7で終了する。
これを点線で示す。本実施例では実線で示した様に時間
1−4で全チャネルが動作つまり転送レートが4であ
り、時間4で転送は終了する。
Finally, a data transfer method according to the embodiment of the present invention will be described with reference to FIGS. FIG. 9 is a diagram showing a data transfer method in the embodiment of the present invention, and FIG. 19 is a relational diagram of time and transfer rate in the embodiment. Figure 9
Is an example in which network 2 is a complete crossbar network. PE
The data transmission order from the data relay device is shown in the data relay devices 6a-6p. That is, in the first step, the PE 1a is the data relay device 6a.
In addition, 1b sends data to 6f, 1c sends 6k, and 1d sends data to 6p all at once. In the next step, the PE 1a transfers to the data relay device 6b,
1b sends data to 6g, 1c sends to 6l, and 1d sends to 6m all at once. The same applies to the above, and when the transmission to the end is completed, the process returns to the beginning. This allows all PEs to receive data after the first step is completed. That is, PE 1a is a data relay device 6a, 1b is 6f, and 1c is 6
Each of k and 1d can receive data from 6p. Therefore, the load on a specific network is not biased, and the transfer efficiency of the entire system is improved. This is shown in FIG. conventionally,
The transfer rate is 1 because transmission / reception is performed only on one channel at time 1. Transfer rate 2 and 3, 3 at time 2,
It increases to 4 at 4, then decreases, and ends at time 7.
This is shown by the dotted line. In this embodiment, as shown by the solid line, all channels are operating at time 1-4, that is, the transfer rate is 4, and at time 4, the transfer ends.

【0054】なお、本例は既に説明した図6の様に部分
的にクロスバを有するシステムに適用可能である。ま
た、最初に述べた様に、ここではデータの流れを一方向
に限定したが、バッファの双方向化、セレクタなど一部
の回路を2つ持つことで、二方向の流れにも容易に対応
できる。
This example can be applied to a system having a crossbar partially as shown in FIG. Also, as mentioned earlier, the data flow is limited to one direction here, but by making the buffer bidirectional and having some circuits such as a selector, it is possible to easily handle the two-way flow. it can.

【0055】また、PE間距離が2の並列処理システム
について述べたが、タグの中継アドレス、データ中継装
置のバッファ本数をNとすることで、PE間距離がNの
並列処理システムに拡張可能である。またこれらを組み
合わせて、各種の形態のネットワークを実現することが
可能となる。
The parallel processing system having a PE distance of 2 has been described. However, by setting the relay address of the tag and the number of buffers of the data relay device to N, the parallel processing system having a PE distance of N can be expanded. is there. Also, by combining these, it becomes possible to realize various forms of networks.

【0056】[0056]

【発明の効果】以上述べてきた様に、本発明の並列処理
システムでは、任意PE間通信時、中継PEでのメモリ
ライト/リードがないので、ここでのオーバーヘッドが
軽減され、転送性能が向上する。また、データ転送装置
がバスアクセスをしないので、バス幅も広がりプロセサ
の性能も向上する。
As described above, in the parallel processing system of the present invention, since there is no memory write / read in the relay PE during communication between arbitrary PEs, the overhead here is reduced and the transfer performance is improved. To do. Further, since the data transfer device does not access the bus, the bus width is widened and the performance of the processor is improved.

【0057】また本発明のデータ転送方式では、ネット
ワークの負荷が分散する、つまり受信側のPEが均等に
動作できるので、システム全体の転送性能が向上する。
Further, in the data transfer system of the present invention, the load of the network is dispersed, that is, the PEs on the receiving side can operate uniformly, so that the transfer performance of the entire system is improved.

【0058】さらに、本発明のデータ転送装置、データ
中継装置を用いることで、各種のネットワークを有する
並列処理システムが構成できる。
Further, by using the data transfer device and the data relay device of the present invention, a parallel processing system having various networks can be constructed.

【0059】単体プロセサの計算機性能及び半導体技術
の限界が見えてきた現在、並列処理システムへの期待は
非常に大きく、本発明は極めて有用なものである。
Now that the limitations of computer performance and semiconductor technology of a single processor have become apparent, expectations for parallel processing systems are extremely high, and the present invention is extremely useful.

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

【図1】本発明の第1の実施例における並列処理システ
ムの構成図
FIG. 1 is a configuration diagram of a parallel processing system according to a first embodiment of the present invention.

【図2】本発明の第1の実施例におけるデータ転送装置
の構成図
FIG. 2 is a configuration diagram of a data transfer device according to the first embodiment of the present invention.

【図3】本発明の第2の実施例におけるデータ転送装置
の構成図
FIG. 3 is a configuration diagram of a data transfer device according to a second embodiment of the present invention.

【図4】本発明の実施例におけるデータ形式の構成図FIG. 4 is a configuration diagram of a data format in the embodiment of the present invention.

【図5】本発明の実施例におけるデータ中継装置の構成
FIG. 5 is a configuration diagram of a data relay device according to an embodiment of the present invention.

【図6】本発明の第1の実施例における並列処理システ
ムの全体構成図
FIG. 6 is an overall configuration diagram of a parallel processing system according to the first embodiment of the present invention.

【図7】同実施例における接続詳細図FIG. 7 is a detailed connection diagram in the embodiment.

【図8】本発明の実施例におけるアドレス・データ構成
FIG. 8 is an address / data configuration diagram according to an embodiment of the present invention.

【図9】本発明の実施例におけるデータ転送方法を示す
FIG. 9 is a diagram showing a data transfer method according to an embodiment of the present invention.

【図10】従来の第1の並列処理システムの構成図FIG. 10 is a configuration diagram of a conventional first parallel processing system.

【図11】従来のデータ転送装置の構成図FIG. 11 is a block diagram of a conventional data transfer device.

【図12】従来のデ−タ中継装置の構成図を示す図FIG. 12 is a diagram showing a configuration diagram of a conventional data relay device.

【図13】従来のデータ転送方法を示す図FIG. 13 is a diagram showing a conventional data transfer method.

【図14】従来の第2の並列処理システムの構成図FIG. 14 is a configuration diagram of a conventional second parallel processing system.

【図15】第1の実施例におけるデータ転送装置を双方
向にした場合の構成図
FIG. 15 is a configuration diagram when the data transfer device in the first embodiment is bidirectional.

【図16】第1の実施例におけるデータ転送装置を双方
向にした場合の構成図
FIG. 16 is a configuration diagram when the data transfer device in the first embodiment is bidirectional.

【図17】データ中継装置(第1のモード)を用いた場
合の転送の様子を示す図
FIG. 17 is a diagram showing a state of transfer when a data relay device (first mode) is used.

【図18】データ中継装置(第2のモード)を用いた場
合の転送の様子を示す図
FIG. 18 is a diagram showing a state of transfer when a data relay device (second mode) is used.

【図19】本発明の実施例におけるデータ転送方法にお
ける時間と転送レートの関連図
FIG. 19 is a diagram showing the relationship between time and transfer rate in the data transfer method according to the embodiment of the present invention.

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

1 PE(プロセサエレメント) 2 ネットワーク 3 プロセサ 4 メモリ 5 データ転送装置 6 データ中継装置 7−11 バッファ 12 メモリアドレス生成部 13 タグ生成部 14 カウンタ 15 中継アドレス生成部 16 制御部 17 入出力ポート 18 セレクタ 20 制御情報部 21 回数部 22 中継アドレス部 23 メモリアドレス部 24 データ部 30 デコーダ 31 バッファ制御部 32 トライステートバッファ 34 出力セレクタ 35 入力セレクタ 36 入出力ポート 40 出力ラッチ 41 セレクタ 50 アドレス 51 データ 52 バッファ状態 70 PU(プロセッシングユニット) 71 CPU 72 ローカルメモリ 73 周辺LSI 74 コネクションメモリ 75 ポート 130 タグ及び中継アドレス生成部 131 タグ変換部 1 PE (Processor Element) 2 Network 3 Processor 4 Memory 5 Data Transfer Device 6 Data Relay Device 7-11 Buffer 12 Memory Address Generator 13 Tag Generator 14 Counter 15 Relay Address Generator 16 Controller 17 Input / Output Port 18 Selector 20 Control information part 21 Counting part 22 Relay address part 23 Memory address part 24 Data part 30 Decoder 31 Buffer control part 32 Tri-state buffer 34 Output selector 35 Input selector 36 Input / output port 40 Output latch 41 selector 50 Address 51 Data 52 Buffer status 70 PU (Processing Unit) 71 CPU 72 Local Memory 73 Peripheral LSI 74 Connection Memory 75 Port 130 Tag and Relay Address Generator 131 Tag Converter

Claims (10)

【特許請求の範囲】[Claims] 【請求項1】プロセサと、メモリと、第1,第2,第3の
3つのバッファを有するデータ転送装置を具備する複数
のプロセサエレメントと、前記複数のプロセサエレメン
ト間で直接または1つ以上のプロセサエレメントを中継
することで間接的にデータ転送が可能なように接続する
ネットワークを備え、データ転送の際に、送り手となる
プロセサエレメントでは、データ転送装置がメモリまた
はプロセサからデータを前記第1のバッファに取り込ん
でから前記ネットワークへ送出し、受け手となるプロセ
サエレメントでは、データ転送装置が前記ネットワーク
から前記データを前記第2のバッファに取り込んだ後、
メモリまたはプロセサへ格納し、中継するプロセエレメ
ントでは、データ転送装置が前記ネットワークから前記
データを前記第3のバッファに取り込んだ後、再び前記
ネットワークへ送出することを特徴とする並列処理シス
テム。
1. A plurality of processor elements comprising a processor, a memory, and a data transfer device having three buffers, first, second and third buffers, and between the plurality of processor elements directly or at least one of them. The processor element serving as a sender is provided with a network for indirectly connecting the data by relaying the processor element, and in the processor element serving as a sender at the time of the data transfer, the data transfer device transfers the data from the memory or the processor. In the processor element which is the receiver after receiving the data from the network in the second buffer,
In a processor element for storing in a memory or a processor and relaying the data, a data transfer device captures the data from the network in the third buffer and then sends the data back to the network.
【請求項2】第1,第2,第3の3つの入出力ポートと、
前記第1の入出力ポートと第2の入出力ポートの間に接
続された第1のバッファと、前記第1の入出力ポートと
第3の入出力ポートの間に接続された第2のバッファ
と、前記第2の入出力ポートと前記第3の入出力ポート
の間に接続された第3のバッファと、前記第1の入出力
ポートから取り込んだデータにタグを付加するタグ生成
部と、外部から前記第1の入出力ポートへデータを入力
する際のアドレスを生成し、かつ入力回数をカウントす
るメモリアドレス生成部と、前記第1の入出力ポートか
ら外部へデータを出力する際にデータ出力回数をカウン
トするカウンタと、前記第1の入出力ポートから出力す
るデータの一部をアドレスとして取り出し、データ出力
の際にはこれを、データ入力の際には前記アドレス生成
部のアドレスを選択して外部に出力する第1のセレクタ
と、前記第2の入出力ポートから外部へデータを出力す
る際に、外部アドレスを生成する第1の中継アドレス生
成部と、前記第3の入出力ポートへ外部からデータを入
力する際に、外部アドレスを生成する第2の中継アドレ
ス生成部と、第2の入出力ポートから外部へデータを出
力する際、前記第1のバッファと前記第3のバッファ出
力の一部を選択する第2のセレクタと、前記第1のバッ
ファからデータを出力する場合には前記第1の中継アド
レス生成部の出力を、前記第3のバッファからデータを
出力する場合には前記第3のバッファ出力の他の一部を
選択する第3のセレクタとを具備することを特徴とする
データ転送装置。
2. A first, a second, and a third input / output port,
A first buffer connected between the first input / output port and the second input / output port, and a second buffer connected between the first input / output port and the third input / output port A third buffer connected between the second input / output port and the third input / output port; and a tag generator for adding a tag to the data fetched from the first input / output port, A memory address generation unit that generates an address when inputting data from the outside to the first input / output port and counts the number of inputs, and a data when outputting data from the first input / output port to the outside. A counter that counts the number of outputs and a part of the data output from the first input / output port is taken out as an address, and this is selected when outputting data, and the address of the address generation unit is selected when inputting data. To the third input / output port, and a first selector that outputs an external address when the data is output from the second input / output port to the outside. A second relay address generation unit that generates an external address when inputting data from the outside, and outputs the first buffer and the third buffer when outputting data from the second input / output port to the outside. A second selector for selecting a part of the first buffer and an output of the first relay address generation unit when outputting data from the first buffer, and a data output from the third buffer when outputting data from the third buffer. And a third selector that selects another part of the output of the third buffer.
【請求項3】第1,第2,第3の3つの入出力ポートと、
前記第1の入出力ポートと第2の入出力ポートの間に接
続された第1のバッファと、前記第1の入出力ポートと
第3の入出力ポートの間に接続された第2のバッファ
と、前記第2の入出力ポートと前記第3の入出力ポート
の間に接続された第3のバッファと、前記第1の入出力
ポートから取り込んだデータにタグを付加するタグ生成
部と、外部から前記第1の入出力ポートへデータを入力
する際のアドレスを生成し、かつ入力回数をカウントす
るメモリアドレス生成部と、前記第1の入出力ポートか
ら外部へデータを出力する際にデータ出力回数をカウン
トするカウンタと、前記第1の入出力ポートから出力す
るデータの一部をアドレスとして取り出し、データ出力
の際にはこれを、データ入力の際には前記アドレス生成
部のアドレスを選択して外部に出力する第1のセレクタ
と、第2の入出力ポートから外部へデータを出力する場
合、前記第1のバッファ出力の一部と前記第3のバッフ
ァ出力の一部を選択する第2のセレクタと、前記第1の
バッファ出力の他の一部と前記第3のバッファ出力の他
の一部を選択する第3のセレクタとを具備することを特
徴とするデータ転送装置。
3. A first, a second, and a third input / output port,
A first buffer connected between the first input / output port and the second input / output port, and a second buffer connected between the first input / output port and the third input / output port A third buffer connected between the second input / output port and the third input / output port; and a tag generator for adding a tag to the data fetched from the first input / output port, A memory address generation unit that generates an address when inputting data from the outside to the first input / output port and counts the number of inputs, and a data when outputting data from the first input / output port to the outside. A counter that counts the number of outputs and a part of the data output from the first input / output port is taken out as an address, and this is selected when outputting data, and the address of the address generation unit is selected when inputting data. And a second selector that selects a part of the first buffer output and a part of the third buffer output when outputting data from the second input / output port to the outside. And a third selector for selecting the other part of the output of the first buffer and the other part of the output of the third buffer.
【請求項4】第1,第2,第3の3つの入出力ポートと、
第1の入出力ポートと第2の入出力ポートの間に接続さ
れた第1のバッファと、前記第1の入出力ポートと第3
の入出力ポートの間に接続された第2のバッファと、前
記第2の入出力ポートと前記第3の入出力ポートの間に
接続された第3のバッファと、前記第1の入出力ポート
から取り込んだデータにタグを付加するタグ生成部と、
外部から前記第1の入出力ポートへデータを入力する際
のアドレスを生成し、かつ入力回数をカウントするメモ
リアドレス生成部と、前記第1の入出力ポートから外部
へデータを出力する際にデータ出力回数をカウントする
カウンタと、前記第1の入出力ポートから出力するデー
タの一部をアドレスとして取り出し、データ出力の際に
はこれを、データ入力の際には前記アドレス生成部のア
ドレスを選択して外部に出力する第1のセレクタと、前
記第2の入出力ポートから外部へデータを出力する際
に、外部アドレスを生成する第1の中継アドレス生成部
と、前記第3の入出力ポートから外部へデータを出力す
る際に、外部アドレスを生成する第2の中継アドレス生
成部と、第2の入出力ポートから外部へデータを出力す
る際、前記第1のバッファと前記第3のバッファ出力の
一部を選択する第2のセレクタと、前記第1のバッファ
からデータを出力する場合には前記第1の中継アドレス
生成部の出力を、前記第3のバッファからデータを出力
する場合には前記第3のバッファ出力の他の一部を選択
する第3のセレクタと、第3の入出力ポートから外部へ
データを出力する際、前記第2のバッファと前記第3の
バッファ出力の一部を選択する第4のセレクタと、前記
第2のバッファからデータを出力する場合には前記第2
の中継アドレス生成部の出力を、前記第3のバッファか
らデータを出力する場合には前記第3のバッファ出力の
他の一部を選択する第5のセレクタを具備することを特
徴とするデータ転送装置。
4. A first, a second, and a third input / output port,
A first buffer connected between the first input / output port and the second input / output port, the first input / output port and the third buffer
A second buffer connected between the input / output ports of the third buffer, a third buffer connected between the second input / output port and the third input / output port, and the first input / output port A tag generator that adds tags to the data imported from
A memory address generation unit that generates an address when inputting data from the outside to the first input / output port and counts the number of inputs, and a data when outputting data from the first input / output port to the outside. A counter that counts the number of outputs and a part of the data output from the first input / output port is taken out as an address, and this is selected when outputting data, and the address of the address generation unit is selected when inputting data. And a first selector which outputs an external address when outputting data from the second input / output port to the outside, and the third input / output port A second relay address generating unit for generating an external address when outputting data from the outside to the outside, and a first relay address generating unit when outputting data from the second input / output port to the outside. And a second selector for selecting a part of the output of the third buffer, and the output of the first relay address generation unit when outputting data from the first buffer, the third selector A third selector that selects another part of the output of the third buffer when outputting data from the third buffer, and the second buffer and the third buffer when outputting data from the third input / output port to the outside. A fourth selector for selecting a part of the output of the third buffer, and a second selector for outputting data from the second buffer.
And a fifth selector for selecting the other part of the output of the third buffer when outputting the data from the relay address generator of the third buffer. apparatus.
【請求項5】少なくとも3つの入出力ポートと、第1の
入出力ポートと第2の入出力ポートの間に接続された第
1のバッファと、前記第1の入出力ポートと第3の入出
力ポートの間に接続された第2のバッファと、前記第2
の入出力ポートと前記第3の入出力ポートの間に接続さ
れた第3のバッファと、前記第1の入出力ポートから取
り込んだデータにタグを付加するタグ生成部と、外部か
ら前記第1の入出力ポートへデータを入力する際のアド
レスを生成し、かつ入力回数をカウントするメモリアド
レス生成部と、前記第1の入出力ポートから外部へデー
タを出力する際にデータ出力回数をカウントするカウン
タと、前記第1の入出力ポートから出力するデータの一
部をアドレスとして取り出し、データ出力の際にはこれ
を、データ入力の際には前記アドレス生成部のアドレス
を選択して外部に出力する第1のセレクタと、第2の入
出力ポートから外部へデータを出力する場合、前記第1
のバッファ出力の一部と前記第3のバッファ出力の一部
を選択する第2のセレクタと、前記第1のバッファ出力
の他の一部と前記第3のバッファ出力の他の一部を選択
する第3のセレクタと、第3の入出力ポートから外部へ
データを出力する場合、前記第2のバッファ出力の一部
と前記第3のバッファ出力の一部を選択する第4のセレ
クタと、前記第2のバッファ出力の他の一部と前記第3
のバッファ出力の他の一部を選択する第5のセレクタと
を具備することを特徴とするデータ転送装置。
5. At least three I / O ports, a first buffer connected between the first I / O port and the second I / O port, the first I / O port and the third I / O port. A second buffer connected between the output ports;
A third buffer connected between the I / O port of the first I / O port and the third I / O port, a tag generation unit for adding a tag to the data fetched from the first I / O port, and the first external buffer. A memory address generation unit that generates an address when inputting data to the I / O port and counts the number of inputs, and a number of times that the data is output when the data is output from the first I / O port to the outside. The counter and a part of the data output from the first input / output port are taken out as an address, which is output at the time of data output, and the address of the address generator is selected at the time of data input and output to the outside. When outputting data to the outside from the first selector and the second input / output port, the first selector
Selector for selecting a part of the buffer output and a part of the third buffer output, and another part of the first buffer output and another part of the third buffer output And a fourth selector for selecting a part of the second buffer output and a part of the third buffer output when outputting data from the third input / output port to the outside. The other part of the second buffer output and the third part
And a fifth selector for selecting another part of the buffer output of the data transfer device.
【請求項6】請求項2叉は4記載のタグ生成部は、デー
タの種別を判定する制御情報部と、2回目以降に中継す
る中継部のアドレスを中継順に示す複数の中継アドレス
部と、最終的なデータの格納アドレスを示すメモリアド
レス部を有する情報をタグとして付加することを特徴と
するデータ転送装置。
6. The tag generation unit according to claim 2 or 4, wherein: a control information unit that determines the type of data; and a plurality of relay address units that indicate the addresses of the relay units to be relayed after the second time in the relay order. A data transfer device, wherein information having a memory address portion indicating a final data storage address is added as a tag.
【請求項7】請求項3叉は5記載のタグ生成部は、デー
タの種別を判定する制御情報部と、中継する中継部のア
ドレスを中継順に示す複数の中継アドレス部と、最終的
なデータの格納アドレスを示すメモリアドレス部を有す
る情報をタグとして付加することを特徴とするデータ転
送装置。
7. A tag generation unit according to claim 3 or 5, wherein a control information unit for determining the type of data, a plurality of relay address units indicating addresses of relay units to be relayed in relay order, and final data A data transfer device, characterized in that information having a memory address portion indicating the storage address of is added as a tag.
【請求項8】第1,第2の2つの入出力ポートと、Nを
2以上の整数としてN個のバッファと、N入力1出力の
出力セレクタと、N−1個の2入力1出力の入力セレク
タを有し、前記出力セレクタの入力に前記N個のバッフ
ァ出力を接続し、出力を前記第1の入出力ポートに接続
し、前記第2の入出力ポートを第1のバッファの入力及
び前記N−1個の入力セレクタの入力の一端に接続し、
第2から第Nまでのバッファ入力に前記入力セレクタの
出力を接続し、Lを1以上N−1以下の整数として第L
のバッファ出力を第Lの入力セレクタの他端に接続する
ことを特徴とするデータ中継装置。
8. A first and a second input / output port, N buffers where N is an integer of 2 or more, an output selector with N inputs and 1 output, and N−1 two inputs and 1 output. An input selector, the output of the N buffers is connected to the input of the output selector, the output is connected to the first input / output port, and the second input / output port is connected to the input of the first buffer; Connected to one end of the inputs of the N-1 input selectors,
The outputs of the input selectors are connected to the second to Nth buffer inputs and L is an integer from 1 to N-1.
The data relay device is characterized in that the buffer output of is connected to the other end of the L-th input selector.
【請求項9】プロセサと、メモリと、請求項2,3のい
ずれかに記載のデータ転送装置を共通のバスに接続した
構成の複数のプロセサエレメントと、各格子点に請求項
8記載のデータ中継装置を配してここを経由することで
ある2つのプロセサエレメント間通信を行い、またNを
2以上の整数として、N−1回プロセサエレメントを中
継することで任意のプロセサエレメント間通信が可能と
なるネットワークを備え、データ転送の際に、送り手と
なるプロセサエレメントでは、データ転送装置がメモリ
またはプロセサからデータを第1のバッファに取り込ん
でから前記ネットワークへ送出し、中継するプロセサエ
レメントでは、データ転送装置が前記ネットワークから
前記データを第3のバッファに取り込んだ後、再び前記
ネットワークへ送出し、受け手となるプロセサエレメン
トでは、データ転送装置が前記ネットワークから前記デ
ータを第2のバッファに取り込んだ後、メモリまたはプ
ロセサへ格納し、また、Lを1以上N−1の整数とし
て、第L回目のプロセサエレメントから第L+1回目の
プロセサエレメントへのデータ転送時に、前記データ中
継装置の第Lのバッファを経由することを特徴とする並
列処理システム。
9. A processor, a memory, a plurality of processor elements configured to connect the data transfer device according to claim 2 to a common bus, and data according to claim 8 at each grid point. Arbitrary communication between processor elements is possible by arranging a relay device and performing communication between two processor elements by passing through this, and by relaying the processor element N-1 times, where N is an integer of 2 or more. In the processor element that is provided with a network that becomes a sender at the time of data transfer, in the processor element that the data transfer device captures the data from the memory or the processor into the first buffer and then sends the data to the network, and relays the data, The data transfer device fetches the data from the network into the third buffer and then sends the data to the network again. In the processor element serving as the receiver, the data transfer device fetches the data from the network into the second buffer and then stores the data in the memory or the processor. Further, L is an integer of 1 or more and N−1, A parallel processing system, characterized in that, when data is transferred from a processor element for a first time to a processor element for an (L + 1) th time, the data is passed through an Lth buffer of the data relay device.
【請求項10】Nを2以上の整数として、少なくとも2
つのポートを有するN個のプロセサエレメントと、K,
Lを1以上N以下の整数として、NxN個の格子点を有
し、各格子点を(K,L)とし、この格子点に少なくと
も2つのポートを有するバッファ(K,L)を配したネ
ットワークを備え、前記第Kのプロセサエレメントの一
端をバッファ(K,L)の一端に共通に接続し、また前
記バッファ(K,L)の他端をLが共通になるように接
続し、この共通接続線を前記プロセサエレメントに接続
するか、または外部ポートとする構成を基本単位として
含む並列処理システムにおいて、前記第Kのプロセサエ
レメントからデータを送出する際に、バッファ(K,
K)から順次データを送出するデータ転送方法。
10. N is an integer of 2 or more and at least 2.
N processor elements with one port, K,
A network having NxN grid points, where L is an integer of 1 or more and N or less, each grid point is (K, L), and a buffer (K, L) having at least two ports is arranged at this grid point. One end of the K-th processor element is commonly connected to one end of the buffer (K, L), and the other end of the buffer (K, L) is connected so that L becomes common. In a parallel processing system including, as a basic unit, a configuration in which a connection line is connected to the processor element or is used as an external port, a buffer (K,
A data transfer method of sequentially sending data from K).
JP04439992A 1991-03-19 1992-03-02 Parallel processing system and data transfer method Expired - Fee Related JP3389610B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP04439992A JP3389610B2 (en) 1991-03-19 1992-03-02 Parallel processing system and data transfer method

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP5452991 1991-03-19
JP3-54529 1991-03-19
JP04439992A JP3389610B2 (en) 1991-03-19 1992-03-02 Parallel processing system and data transfer method

Publications (2)

Publication Number Publication Date
JPH05173991A true JPH05173991A (en) 1993-07-13
JP3389610B2 JP3389610B2 (en) 2003-03-24

Family

ID=26384298

Family Applications (1)

Application Number Title Priority Date Filing Date
JP04439992A Expired - Fee Related JP3389610B2 (en) 1991-03-19 1992-03-02 Parallel processing system and data transfer method

Country Status (1)

Country Link
JP (1) JP3389610B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100450672B1 (en) * 2001-03-06 2004-10-01 삼성전자주식회사 Memory system having point-to-point bus configuration
KR100532432B1 (en) * 2003-05-02 2005-11-30 삼성전자주식회사 Memory system capable of transporting command and address signals fast
US8363274B2 (en) 2008-12-24 2013-01-29 Seiko Epson Corporation Image forming apparatus, image forming system, and head device

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100450672B1 (en) * 2001-03-06 2004-10-01 삼성전자주식회사 Memory system having point-to-point bus configuration
US6877079B2 (en) 2001-03-06 2005-04-05 Samsung Electronics Co., Ltd. Memory system having point-to-point bus configuration
KR100532432B1 (en) * 2003-05-02 2005-11-30 삼성전자주식회사 Memory system capable of transporting command and address signals fast
US8363274B2 (en) 2008-12-24 2013-01-29 Seiko Epson Corporation Image forming apparatus, image forming system, and head device

Also Published As

Publication number Publication date
JP3389610B2 (en) 2003-03-24

Similar Documents

Publication Publication Date Title
US5157692A (en) System for controlling communication between parallel computers
US5175733A (en) Adaptive message routing for multi-dimensional networks
EP0430569B1 (en) Fault tolerant interconnection networks
EP0405208B1 (en) Multistage network with distributed pipelined control
JPH09247176A (en) Asynchronous transfer mode exchange system
JPH0581216A (en) Parallel processor
JPS63294036A (en) Header driving type packet switchboard
JPH063935B2 (en) Buffer memory
US5519880A (en) Parallel processing system and data transfer method which reduces bus contention by use of data relays having plurality of buffers
CA2325091C (en) Bus switch and bus switch system
US7151752B2 (en) Method for the broadcasting of a data packet within a switched network based on an optimized calculation of the spanning tree
JP3389610B2 (en) Parallel processing system and data transfer method
US6148392A (en) Low power implementation of an asynchronous stock having a constant response time
JP2778520B2 (en) Multicast method and switching switch
JP2003178038A (en) Node-to-node data transferring method and device therefor
JP3995131B2 (en) Data output circuit
Feng et al. A microprocessor-controlled asynchronous circuit switching network
US20020018460A1 (en) Network apparatus
JP3277924B2 (en) Exchange system
JPH03204254A (en) Data receiver
JP3266839B2 (en) Exchange system
JP2586388B2 (en) Exchange system
JP2581406B2 (en) Exchange system
JP2001285360A (en) Matching device for optical signal of asynchronous transfer mode
JPH1091601A (en) Cluster connected parallel computer

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080117

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20090117

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20090117

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20100117

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20110117

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20110117

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20120117

Year of fee payment: 9

LAPS Cancellation because of no payment of annual fees