JP3098473B2 - Information processing apparatus and information processing system - Google Patents

Information processing apparatus and information processing system

Info

Publication number
JP3098473B2
JP3098473B2 JP09298931A JP29893197A JP3098473B2 JP 3098473 B2 JP3098473 B2 JP 3098473B2 JP 09298931 A JP09298931 A JP 09298931A JP 29893197 A JP29893197 A JP 29893197A JP 3098473 B2 JP3098473 B2 JP 3098473B2
Authority
JP
Japan
Prior art keywords
transfer
instruction
distance
elements
sub
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.)
Expired - Fee Related
Application number
JP09298931A
Other languages
Japanese (ja)
Other versions
JPH11134310A (en
Inventor
孝士 長田
Original Assignee
甲府日本電気株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 甲府日本電気株式会社 filed Critical 甲府日本電気株式会社
Priority to JP09298931A priority Critical patent/JP3098473B2/en
Publication of JPH11134310A publication Critical patent/JPH11134310A/en
Application granted granted Critical
Publication of JP3098473B2 publication Critical patent/JP3098473B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

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

【0001】[0001]

【発明の属する技術分野】本発明は大規模データ処理を
行う情報処理システムに関し、特に記憶装置内の配列デ
ータを複数の装置間で転送する情報処理装置に関する。
[0001] 1. Field of the Invention [0002] The present invention relates to an information processing system for performing large-scale data processing, and more particularly to an information processing device for transferring array data in a storage device between a plurality of devices.

【0002】[0002]

【従来の技術】従来、複数の情報処理装置間のデータ転
送は、特開平05−108581号公報に示されるよう
に、二次元配列データ内のサブアレイデータ全体をアク
セスする場合、サブアレイデータの各アドレス単位に命
令を分解し、総転送要素数をサブアレイデータの要素数
で割った数の命令を発行していた。
2. Description of the Related Art Conventionally, data transfer between a plurality of information processing apparatuses is performed by accessing each address of the sub-array data when accessing the entire sub-array data in the two-dimensional array data as shown in Japanese Patent Application Laid-Open No. 05-108581. Instructions were broken down into units, and instructions were issued by dividing the total number of transfer elements by the number of subarray data elements.

【0003】[0003]

【発明が解決しようとする課題】第一の問題点は、二次
元配列データ内のサブアレイデータ全体をアクセスする
場合、サブアレイデータの要素数に拘わらず総転送要素
数をサブアレイデータの要素数で割った分だけデータ転
送命令を発行しなければならず、データ転送時の転送効
率が低いことである。
The first problem is that when accessing the entire sub-array data in two-dimensional array data, the total number of transfer elements is divided by the number of sub-array data elements regardless of the number of sub-array data elements. Therefore, the data transfer instruction must be issued correspondingly, and the transfer efficiency at the time of data transfer is low.

【0004】[0004]

【課題を解決するための手段】本発明第一の情報処理装
置は、記憶部と、少なくともひとつのプロセッサと、デ
ータ転送回路と、転送制御回路とを有し、転送命令は、
命令種別、サブアレイデータ要素数、総転送要素数、転
送元要素間距離、転送元サブアレイ間距離、転送元基点
アドレス、転送先要素間距離、転送先サブアレイ間距離
および転送先基点アドレスから構成され、前記転送制御
回路は、前記プロセッサからの前記転送命令を格納する
格納部と、前記主記憶部中に格納された二次元配列を構
成する前記サブアレイデータ要素数が所定の値であるこ
とを判定する転送長比較回路と、前記転送長比較回路で
の判定結果が所定の要素数である場合に前記サブアレ
データ要素数を前記総転送要素数に替える転送長差し
替え回路と、前記転送元要素間距離を前記転送元サブア
レイ間距離に替える距離差し替え回路を有し、前記転送
回路において前記転送制御回路の指示により転送を実行
する。
A first information processing apparatus according to the present invention has a storage unit, at least one processor, a data transfer circuit, and a transfer control circuit.
Instruction type, number of subarray data elements, total number of transfer elements, distance between source elements, distance between source subarrays, source base address, distance between destination elements, distance between destination subarrays and destination base address, the transfer control circuit determines that the storage unit for storing the transfer command from the processor, the number of subarrays data elements constituting the two-dimensional array stored in the main storage unit is a predetermined value a transfer length comparator circuit, wherein when the transfer length comparator circuit determination in is the number of predetermined elements, the transfer length replacement circuit replacing the sub-array number data elements to the total number of transfer elements, the distance between the transfer source element And a distance changing circuit for changing the distance to the distance between the transfer source sub-arrays, and the transfer circuit executes the transfer in accordance with an instruction from the transfer control circuit.

【0005】本発明第二の情報処理装置は、本発明第一
の情報処理装置であって、前記差し替え回路において、
前記サブアレイデータ要素数と前記総転送要素数の差が
所定の値より大きい場合に前記サブアレイデータ要素
数を前記総転送要素数に替え、前記転送元要素間距離
前記転送元サブアレイ間距離に替える。
[0005] A second information processing apparatus according to the present invention is the first information processing apparatus according to the present invention, wherein:
If the difference between the total transfer element and the sub-array number data element is larger than a predetermined value, changing the number of subarrays data element to the total number of transfer elements, the distance between the transfer source element to a distance between the transfer source sub-arrays Replace.

【0006】本発明の情報処理システムは、本発明第一
の情報処理装置または本発明第二の情報処理装置をノー
ドとし、前記ノード間を接続する接続装置を有する。
An information processing system according to the present invention has a first information processing apparatus according to the present invention or a second information processing apparatus according to the present invention as a node, and has a connection device for connecting the nodes.

【0007】[0007]

【発明の実施の形態】次に、本発明の実施の形態につい
て図面を参照して説明する。
Next, embodiments of the present invention will be described with reference to the drawings.

【0008】図1は、本発明の情報処理システムの構成
図である。本情報処理システムは、データ転送をおこな
う情報処理装置である第一、第二、第三、第四のノード
1,2,3および4とノード間接続装置5から構成され
る。
FIG. 1 is a configuration diagram of an information processing system according to the present invention. The information processing system includes first, second, third, and fourth nodes 1, 2, 3, and 4, which are information processing devices that perform data transfer, and an inter-node connection device 5.

【0009】次にノード間のデータ転送の動作について
説明する。
Next, the operation of data transfer between nodes will be described.

【0010】転送元ノードより転送先ノードへ発行され
る二次元配列データ内の転送命令は、ノード内にて二次
元配列データの一部であるサブアレイデータの転送単位
RQ,DATA、ADより構成される命令に分解され、
総転送要素数をサブアレイデータの要素数で割った数の
命令が発行される。サブアレイデータとは、二次元配列
データを構成する配列で一次元方向に存在するデータの
集合を表す。第一のノード1から第三のノード3への二
次元配列データを転送する場合、第一のノード1は、分
解されたサブアレイ毎に、命令とデータを第三のノード
3へ送出する。命令とデータを受け付けた第三のノード
3は、命令内のアドレスと要素数および要素間距離の情
報からサブアレイデータ内のアドレスを生成し、データ
を第三のノード3の所定の記憶アドレスに格納する。
The transfer instruction in the two-dimensional array data issued from the source node to the destination node is composed of transfer units RQ, DATA, and AD of the sub-array data which is a part of the two-dimensional array data in the node. Broken down into instructions
Instructions are issued by dividing the total number of transfer elements by the number of subarray data elements. The sub-array data represents a set of data that exists in the one-dimensional direction in an array constituting the two-dimensional array data. When transferring the two-dimensional array data from the first node 1 to the third node 3, the first node 1 sends an instruction and data to the third node 3 for each decomposed sub-array. The third node 3 receiving the instruction and the data generates an address in the sub-array data from the address in the instruction, information on the number of elements, and information on the distance between elements, and stores the data in a predetermined storage address of the third node 3 I do.

【0011】図2は、本発明の情報処理装置を第一のノ
ード1とするノードの構成を示すブロック図である。
FIG. 2 is a block diagram showing the configuration of a node in which the information processing apparatus of the present invention is the first node 1.

【0012】図2において、第一のノード1は、第一の
演算プロセッサ15、第二の演算プロセッサ16、記憶
部12、ノード間命令発行手段11、サブアレイデータ
分解処理装置14および接続装置13から構成される。
第一の演算プロセッサ15と第二の演算プロセッサ16
と記憶部12とノード間命令発行手段11とサブアレイ
データ分解処理装置14は、接続装置13で接続され
る。ノード間命令発行手段11は、転送長比較回路12
0、転送長差し替え回路119、転送元要素間距離差し
替え回路118、転送先要素間距離差し替え回路11
7、命令受け付けレジスタ122、命令保持レジスタ1
16、命令出力レジスタ112、メモリ命令出力レジス
タ111、セレクタ115、アドレス生成回路113、
転送先アドレス生成回路114および命令分解制御回路
121から構成される。命令受け付けレジスタ122
は、接続装置13よりノード間転送命令を受け付けて命
令を格納する。
In FIG. 2, a first node 1 includes a first operation processor 15, a second operation processor 16, a storage unit 12, an inter-node instruction issuing unit 11, a sub-array data decomposition processing unit 14, and a connection unit 13. Be composed.
First operation processor 15 and second operation processor 16
The storage unit 12, the inter-node instruction issuing unit 11, and the sub-array data decomposition processing device 14 are connected by a connection device 13. The inter-node instruction issuing means 11 includes a transfer length comparing circuit 12
0, transfer length replacement circuit 119, transfer source element distance replacement circuit 118, transfer destination element distance replacement circuit 11
7, instruction reception register 122, instruction holding register 1
16, an instruction output register 112, a memory instruction output register 111, a selector 115, an address generation circuit 113,
It comprises a transfer destination address generation circuit 114 and an instruction disassembly control circuit 121. Instruction reception register 122
Receives an inter-node transfer command from the connection device 13 and stores the command.

【0013】次に第一のノード1の動作を説明する。第
一の演算プロセッサ15からノード間転送命令が発行さ
れると、接続装置13はノード間転送命令を識別して、
ノード間命令発行手段11に命令を送出する。ノード間
命令発行手段11は、アドレスを含む命令と命令に対応
したデータをノード間接続装置5を経由して転送先ノー
ドへ送出する。転送先ノードでは、ノード間接続装置5
から送出されたアドレスおよび命令と対応するデータを
サブアレイデータ分解処理装置14に入力し、命令に付
随するアドレスとデータから記憶部12にデータを格納
する。ノード間転送命令は、命令種別、サブアレイデー
タ要素数、総転送要素数、転送元要素間距離、転送元サ
ブアレイ間距離、転送元基点アドレス、転送先要素間距
離、転送先サブアレイ間距離および転送先基点アドレス
から構成される。これらの命令の各要素は、それぞれ命
令種別は命令受け付けレジスタ122のCMDに、サブ
アレイデータ要素数は命令受け付けレジスタ122のL
1に、総転送要素数は命令受け付けレジスタ122のL
に、転送元要素間距離は命令受け付けレジスタ122の
DL1に、転送元サブアレイ間距離は命令受け付けレジ
スタ122のDL2に、転送元基点アドレスは命令受け
付けレジスタ122のBLに、転送先要素間距離は命令
受け付けレジスタ122のDR1に、転送先サブアレイ
間距離は命令受け付けレジスタ122のDR2に、転送
先基点アドレスは命令受け付けレジスタ122のBR
に、格納される。
Next, the operation of the first node 1 will be described. When the inter-node transfer instruction is issued from the first arithmetic processor 15, the connection device 13 identifies the inter-node transfer instruction,
An instruction is sent to the inter-node instruction issuing means 11. The inter-node instruction issuing means 11 sends an instruction including an address and data corresponding to the instruction to the transfer destination node via the inter-node connecting device 5. In the transfer destination node, the inter-node connection device 5
Is input to the sub-array data decomposition processor 14 and the data is stored in the storage unit 12 from the address and data accompanying the instruction. The transfer instruction between nodes includes the instruction type, the number of subarray data elements, the total number of transfer elements, the distance between source elements, the distance between source subarrays, the source base address, the distance between destination elements, the distance between destination subarrays, and the destination. It consists of a base address. For each element of these instructions, the instruction type is CMD of the instruction reception register 122, and the number of subarray data elements is L in the instruction reception register 122.
1, the total number of transfer elements is L in the instruction reception register 122.
The distance between transfer source elements is DL1 of the instruction reception register 122, the distance between transfer source subarrays is DL2 of the instruction reception register 122, the source base address is BL in the instruction reception register 122, and the distance between transfer destination elements is the instruction. DR1 of the reception register 122, the distance between the transfer destination sub-arrays is DR2 of the instruction reception register 122, and the transfer destination base address is the BR of the instruction reception register 122.
Is stored.

【0014】第一の演算プロセッサ15から発行され接
続装置13を経由してノード間命令発行手段11が受け
付けた命令はセレクタ115、転送長比較回路120、
転送長差し替え回路119、要素間距離差し替え回路1
18および転送先要素間距離差し替え回路117へ送ら
れる。転送長比較回120は、命令受け付けレジスタ1
22より受け付ける命令内のサブアレイデータ要素数L
1が1かどうかを判定し、結果を転送長差し替え回路1
19および要素間距離差し替え回路118へ送る。転送
長差し替え回路119は、サブアレイデータ要素数L1
が1の場合は、サブアレイデータをサブアレイデータ内
のひとつのデータとして処理できるので、サブアレイデ
ータ要素数L1の代わりに総転送要素数Lを、それ以外
の場合にはサブアレイデータ要素数L1を選択してセレ
クタ115へ送出する。要素間距離差し替え回路118
は、サブアレイデータ要素数L1が1の場合に、転送元
要素間距離DL1の代わりに転送元サブアレイ間距離D
L2を、それ以外の場合には転送元要素間距離DL1を
選択してセレクタ115へ送出する。要素間距離差し替
え回路8−2は、サブアレイデータ要素数L1が1の場
合に転送先要素間距離DR1の代わりに転送先サブアレ
イ間距離DR2を、それ以外の場合には転送先要素間距
離DR1を選択してセレクタ115へ送出する。セレク
タ115は、命令受け付けレジスタ122および命令保
持レジスタ116より受け付ける命令に対して、命令分
解動作中である場合には命令保持レジスタ116より受
け付ける命令を、それ以外の場合には命令受け付けレジ
スタ122より受け付ける命令を命令分解制御回路12
1の指示により選択して命令保持レジスタ116へ送出
する。命令分解制御回路121は、命令受け付けレジス
タ122で命令を受信後起動し、命令が分解されるまで
制御信号を生成する。命令保持レジスタ116は、セレ
クタ115によって選択された命令をセットし、命令出
力レジスタ112およびアドレス生成回路113、転送
先アドレス生成回路114へ送出する。アドレス生成回
路113、転送先アドレス生成回路114は、命令保持
レジスタ116より受け付けたデータ転送命令を複数の
命令に分解した際の各命令におけるアドレスを算出し、
メモリ命令出力レジスタ111と命令出力レジスタ11
2およびセレクタ115へ送出する。アドレス生成回路
113にて転送元アドレスBLの算出を、転送先アドレ
ス生成回路114にて転送先アドレスBRの算出を行
う。メモリ命令出力レジスタ111は、サブアレイデー
タ要素数L1、転送元要素間距離DL1およびアドレス
生成回路113より受け付けた転送元アドレスBLを記
憶部12へ、命令保持レジスタ116より受け付けた命
令および転送先アドレス生成回路114より受け付けた
転送先アドレスBRを命令出力レジスタ112へ書き込
み、命令出力レジスタ112内の命令はノード間接続装
置5を通じて転送先ノードへ発行される。なお、転送先
ノードが自ノードということもありうる。
The instruction issued from the first arithmetic processor 15 and received by the inter-node instruction issuing means 11 via the connection device 13 is a selector 115, a transfer length comparing circuit 120,
Transfer length replacement circuit 119, element distance replacement circuit 1
18 and the transfer destination element distance replacing circuit 117. The transfer length comparison time 120 is the instruction reception register 1
22, the number of subarray data elements L in the instruction accepted
1 is determined to be 1 and the result is transferred to the transfer length replacing circuit 1
19 and an inter-element distance replacement circuit 118. The transfer length replacement circuit 119 includes a sub-array data element number L1
Is 1, the sub-array data can be processed as one data in the sub-array data. Therefore, the total number of transfer elements L is selected instead of the number of sub-array data elements L1, otherwise, the number of sub-array data elements L1 is selected. To the selector 115. Element distance replacement circuit 118
Is the distance D1 between the source sub-arrays instead of the distance DL1 between the source elements when the number L1 of sub-array data elements is 1.
In the other cases, the transfer source element distance DL1 is selected and sent to the selector 115. The inter-element distance replacement circuit 8-2 uses the inter-destination sub-array distance DR2 instead of the inter-destination element distance DR1 when the number of sub-array data elements L1 is 1, and the inter-destination element distance DR1 otherwise. Select and send to selector 115. The selector 115 receives an instruction received from the instruction holding register 116 when an instruction disassembling operation is being performed on an instruction received from the instruction receiving register 122 and the instruction holding register 116, and receives an instruction from the instruction receiving register 122 otherwise. Instruction disassembly control circuit 12
1 and sent to the instruction holding register 116. The instruction disassembly control circuit 121 is activated after receiving the instruction in the instruction reception register 122, and generates a control signal until the instruction is disassembled. The instruction holding register 116 sets the instruction selected by the selector 115 and sends it to the instruction output register 112, the address generation circuit 113, and the transfer destination address generation circuit 114. The address generation circuit 113 and the transfer destination address generation circuit 114 calculate an address in each instruction when the data transfer instruction received from the instruction holding register 116 is decomposed into a plurality of instructions,
Memory instruction output register 111 and instruction output register 11
2 and selector 115. The address generation circuit 113 calculates the source address BL, and the destination address generation circuit 114 calculates the destination address BR. The memory instruction output register 111 generates the number of sub-array data elements L1, the distance between transfer source elements DL1, and the transfer source address BL received from the address generation circuit 113 to the storage unit 12, the instruction received from the instruction holding register 116, and the transfer destination address generation. The transfer destination address BR received from the circuit 114 is written into the instruction output register 112, and the instruction in the instruction output register 112 is issued to the transfer destination node through the inter-node connection device 5. Note that the transfer destination node may be its own node.

【0015】次に、本発明において、サブアレイデータ
を縮退しないで転送する場合と、縮退して転送する場合
について説明する。
Next, a description will be given of a case where the sub-array data is transferred without degeneration and a case where the sub-array data is degenerated and transferred in the present invention.

【0016】まず縮退しない場合について説明する。図
3に、サブアレイの要素数が1ではなく、サブアレイデ
ータを縮退しない場合のノード間転送命令の動作説明を
示す。
First, a case in which no degeneration is performed will be described. FIG. 3 shows the operation of the inter-node transfer instruction when the number of elements in the sub-array is not 1 and the sub-array data is not degenerated.

【0017】転送元主記憶アドレスBL、転送先主記憶
アドレスBR、総転送要素数L、サブアレイデータ要素
数L1、転送元サブアレイ内要素間距離DL1、転送先
サブアレイ内要素間距離DR1、転送元サブアレイ間距
離DL2、転送先サブアレイ間距離DR2とする。ノー
ド間での二次元配列データ内のサブアレイデータの一括
転送は、転送元ノード内の記憶部12上のアドレスBL
を先頭番地として転送元サブアレイ内要素間距離DL1
離れているアドレスに格納されているサブアレイデータ
でその要素数L1を、転送元サブアレイ間距離DL2で
総転送要素数Lのデータを、転送先ノード内の記憶部1
2上のアドレスBRから始まる転送先サブアレイ内要素
間距離DR1をもつサブアレイデータ要素数L1のデー
タの集まりとして転送先サブアレイ間距離DR2で示す
アドレスに対し転送を行っている。図4に、L1が1、
Lが256の場合の動作説明図を示す。この場合、転送
元ノード内の記憶部12上のアドレスBLより要素間距
離DL1をもつサブアレイデータ要素数1の集まりをサ
ブアレイ間距離DL2で総転送要素数256のデータ
を、転送先ノード内の記憶部12上のアドレスBRより
要素間距離DR1をもつサブアレイデータ要素数1のデ
ータの集まりとして間隔DR2で転送を行う。この時に
発行を要する転送命令の数は、256必要である。転送
先ノードでは、命令とそれに付随するアドレスおよびア
ドレスに対応するデータをサブアレイデータ分解処理装
置14にて受け付け、接続装置13を通じて転送先ノー
ド内記憶部12へアドレスに対応するデータを格納す
る。
The source main storage address BL, the destination main storage address BR, the total number of transfer elements L, the number of subarray data elements L1, the distance between elements in the source subarray DL1, the distance between elements in the destination subarray DR1, the source subarray An inter-distance DL2 and a transfer-destination sub-array distance DR2 are used. The batch transfer of the sub-array data in the two-dimensional array data between nodes is performed by using the address BL on the storage unit 12 in the transfer source node.
Is the start address, the distance DL1 between the elements in the transfer source sub-array.
The sub-array data stored at the distant address stores the number of elements L1 and the data of the total number of transfer elements L at the source sub-array distance DL2.
The transfer is performed to the address indicated by the transfer destination sub-array distance DR2 as a collection of data of the number of sub-array data elements L1 having the transfer destination sub-array internal element distance DR1 starting from the address BR on No. 2. In FIG. 4, L1 is 1,
An operation explanatory diagram when L is 256 is shown. In this case, a set of 1 subarray data elements having an inter-element distance DL1 from the address BL on the storage unit 12 in the source node is stored in the destination node as data of a total 256 elements at an inter-subarray distance DL2. The data is transferred at an interval DR2 as a group of data of the number of subarray data elements 1 having an inter-element distance DR1 from the address BR on the unit 12. At this time, 256 transfer instructions need to be issued. In the transfer destination node, the sub-array data decomposing processor 14 receives the instruction and the address associated with the instruction and the data corresponding to the address, and stores the data corresponding to the address in the storage unit 12 in the transfer destination node through the connection device 13.

【0018】次に縮退して転送する場合について説明す
る。図5において、L1が1、Lが256である。この
時の本情報処理装置の動作を図2を参照して説明する。
第一の演算プロセッサ15より送出されたデータ転送命
令RQ0は、接続装置13へ送出される。接続装置13
はノード間命令発行手段111内の命令受け付けレジス
タ122にデータ転送命令RQ0を送出する。命令受け
付けレジスタ122は、命令コードCMDをセレクタ1
15および命令分解制御回路121へ、サブアレイデー
タ要素数L1を転送長比較回路120、転送長差し替え
回路119および命令分解制御回路121へ、総転送要
素数Lを転送長差し替え回路119、セレクタ115お
よび命令分解制御回路121へ、転送元サブアレイ内要
素間距離DL1を要素間距離差し替え回路118へ、転
送元サブアレイ間距離DL2を要素間距離差し替え回路
118およびセレクタ115へ、転送元基点アドレスB
Lをセレクタ115へ、転送先サブアレイ内要素間距離
DR1を転送先要素間距離差し替え回路117およびセ
レクタ115へ、転送先サブアレイ間距離DR2を転送
先要素間距離差し替え回路117およびセレクタ115
へ、転送先基点アドレスBRをセレクタ115へ、それ
ぞれ送出する。転送長比較回路120は、L1が1であ
るかの判定を行い、L1が1であるので差し替え指示を
転送長差し替え回路119および要素間距離差し替え回
路118、転送先要素間距離差し替え回路117へ送出
する。転送長差し替え回路119は、転送長比較回路1
20における差し替え指示を受けて、L1(この場合は
1)をL(この場合は256)に差し替えてセレクタ1
15へ送出する。要素間距離差し替え回路118は、転
送長比較回路120における差し替え指示を受けて、転
送元サブアレイ内要素間距離DL1を転送元サブアレイ
間距離DL2に差し替えてセレクタ115へ送出する。
転送先要素間距離差し替え回路117は、転送長比較回
路120における差し替え指示を受けて、転送先サブア
レイ内要素間距離DR1を転送先サブアレイ間距離DR
2に差し替えてセレクタ115へ送出する。セレクタ1
15は、命令受け付けレジスタ122および命令保持レ
ジスタ116より受け付ける命令に対して、命令分解動
作中でないので命令受け付けレジスタ122より受け付
ける命令を選択し、命令保持レジスタ116へ送出す
る。命令保持レジスタ116は、セレクタ115より受
け付ける命令をセットして、アドレス生成回路113と
転送先アドレス生成回路114およびメモリ命令出力レ
ジスタ111へ送出する。転送先アドレス生成回路11
4は、命令保持レジスタ116より受け付けた分解動作
中のデータ転送命令におけるアドレスBL、BRの算出
を行い、要素数がひとつのためそれぞれBL、BRとし
てメモリ命令出力レジスタ111と命令出力レジスタ1
12へ送出する。図5のノード間転送命令では、L1=
1、L=256の場合なので、転送元ノード内の記憶部
12上のアドレスBLより転送元サブアレイ内要素間距
離DL1をもつサブアレイデータ要素数256の集まり
を転送元サブアレイ間距離DL2で総転送要素数256
に再構成し、転送先ノードへ転送する。この時発行を要
する転送命令の数はひとつである。命令出力レジスタ1
12は、命令保持レジスタ116より受け付けたCM
D、L1=256、DR1、BRより構成される命令R
Q1をノード間接続装置5を通じて転送先ノードへ発行
する。転送元ノードでは、サブアレイデータ要素数L
1、転送元サブアレイ内要素間距離DL1および転送元
アドレスBLを自ノード内記憶部12へ送り出し記憶部
12へアクセスを行い、アドレスに対応するデータを接
続装置13およびノード間接続装置5を通じて転送先ノ
ードへ送出する。転送先ノードでは、命令とそれに付随
するアドレスおよびアドレスに対応するデータをサブア
レイデータ分解処理装置14にて受け付け、接続装置1
3を通じて転送先ノード内記憶部12へアドレスに対応
するデータを格納する。図6は 、サブアレイデータの
要素数L1が1ではないが比較的小さくそれに比して総
転送要素数Lが大きい時に縮退して転送する情報処理装
置をノードとする第一のノード1のブロック図である。
図2との構成上の違いは、命令受け付けレジスタ122
と命令保持レジスタ116の間に、アドレスの差し替え
を行う転送元アドレス差し替え回路123、転送先アド
レス差し替え回路124、が設けられていることであ
る。転送長比較回路120は、サブアレイデータ要素数
L1および総転送要素数Lを比較して、サブアレイデー
タ要素数L1がL分のL1より小さい場合には、転送長
差し替え回路119、要素間距離差し替え回路118、
転送先要素間距離差し替え回路117および転送元アド
レス差し替え回路123、転送先アドレス差し替え回路
124に対してそれぞれ、転送長、要素間距離およびア
ドレスの差し替え指示を送る。転送長差し替え回路11
9は、サブアレイデータ要素数L1をL分のL1と差し
替える。要素間距離差し替え回路118は、転送元サブ
アレイ内要素間距離DL1をn掛けるDL2の値(n=
1、2、…n、ここでnは何回目の転送であるかを示
す)と差し替える。転送先要素間距離差し替え回路11
7は、転送先サブアレイ内要素間距離DR1をn掛ける
DR2の値(n=1、2、…n、ここでnは何回目の転
送であるかを示す)と差し替える。転送元アドレス差し
替え回路123は、転送元アドレスBLをBLにm掛け
るDL1を加えた値へ(m=0、1、2、…,n−1、
ここでnは何回目の転送であるかを示す)と差し替え
る。転送先アドレス差し替え回路124は、転送先アド
レスBRをBRにm掛けるDR1を加えた値(m=0、
1、2、…,n−1、ここでnは何回目の転送であるか
を示す)と差し替える。これにより、図7に示すよう
に、各サブアレイデータから要素を1つずつ集めて1つ
の命令で転送し、これをL1回行うことにより、サブア
レイデータ要素数L1が小さければ小さいほど少ない命
令数にてデータ転送を実現することが出来る。
Next, the case of degenerate transfer will be described. In FIG. 5, L1 is 1 and L is 256. The operation of the information processing apparatus at this time will be described with reference to FIG.
The data transfer command RQ0 sent from the first arithmetic processor 15 is sent to the connection device 13. Connection device 13
Sends a data transfer instruction RQ0 to the instruction reception register 122 in the inter-node instruction issuing means 111. The instruction reception register 122 stores the instruction code CMD in the selector 1
15 to the instruction disassembly control circuit 121, the transfer length comparison circuit 120, the transfer length replacement circuit 119, and the instruction disassembly control circuit 121 to transfer the total number of transfer elements L to the transfer length replacement circuit 119, the selector 115, and the instruction. The disassembly control circuit 121 sends the inter-element distance DL1 in the transfer source sub-array to the inter-element distance replacement circuit 118, and the transfer source inter-array distance DL2 to the inter-element distance replacement circuit 118 and the selector 115.
L to the selector 115, the inter-element distance DR1 in the destination sub-array to the destination element distance replacing circuit 117 and the selector 115, and the destination inter-array distance DR2 to the destination element distance replacing circuit 117 and the selector 115.
And the transfer destination base address BR to the selector 115. The transfer length comparison circuit 120 determines whether or not L1 is 1, and since L1 is 1, sends a replacement instruction to the transfer length replacement circuit 119, the inter-element distance replacement circuit 118, and the transfer destination inter-element distance replacement circuit 117. I do. The transfer length replacing circuit 119 includes a transfer length comparing circuit 1
In response to the replacement instruction at 20, the selector 1 replaces L1 (1 in this case) with L (256 in this case).
15 Upon receiving the replacement instruction from the transfer length comparison circuit 120, the inter-element distance replacement circuit 118 replaces the inter-element distance DL1 in the transfer source sub-array with the transfer source sub-array distance DL2 and sends it to the selector 115.
Upon receiving the replacement instruction in the transfer length comparing circuit 120, the transfer destination element distance replacing circuit 117 changes the distance DR1 between elements in the transfer destination sub-array to the distance DR between transfer destination sub-arrays.
2 and sends it to the selector 115. Selector 1
The instruction 15 selects an instruction received from the instruction reception register 122 because the instruction received from the instruction reception register 122 and the instruction holding register 116 is not in an instruction disassembling operation, and sends the selected instruction to the instruction holding register 116. The instruction holding register 116 sets an instruction received from the selector 115 and sends it to the address generation circuit 113, the destination address generation circuit 114, and the memory instruction output register 111. Transfer destination address generation circuit 11
4 calculates the addresses BL and BR in the data transfer instruction during the disassembly operation received from the instruction holding register 116, and since the number of elements is one, the memory instruction output register 111 and the instruction output register 1 are designated as BL and BR, respectively.
12 is sent. In the transfer instruction between nodes in FIG. 5, L1 =
1, since L = 256, a group of 256 sub-array data elements having a distance DL1 between elements in the source sub-array from the address BL on the storage unit 12 in the source node is calculated by the total transfer elements in the distance DL2 between the source sub-arrays. Number 256
And transfer to the transfer destination node. At this time, the number of transfer instructions that need to be issued is one. Instruction output register 1
12 is a CM received from the instruction holding register 116
Instruction R composed of D, L1 = 256, DR1, BR
Q1 is issued to the transfer destination node through the inter-node connecting device 5. At the source node, the number of subarray data elements L
1. The element distance DL1 in the transfer source sub-array and the transfer source address BL are sent to the storage unit 12 in the own node to access the storage unit 12, and the data corresponding to the address is transferred to the transfer destination through the connection device 13 and the connection device 5 between the nodes. Send to node. In the transfer destination node, the sub-array data decomposition processing unit 14 receives the instruction and the address associated with the instruction and the data corresponding to the address.
3, the data corresponding to the address is stored in the storage unit 12 within the transfer destination node. FIG. 6 is a block diagram of a first node 1 having, as a node, an information processing device that performs degenerate transfer when the number L1 of subarray data elements is not 1, but is relatively small and the total number L of transfer elements is large. It is.
The configuration difference from FIG.
A transfer source address replacement circuit 123 and a transfer destination address replacement circuit 124 for replacing addresses are provided between the instruction holding register 116 and the instruction holding register 116. The transfer length comparison circuit 120 compares the number of sub-array data elements L1 and the total number of transfer elements L. If the number of sub-array data elements L1 is smaller than L for L, the transfer length replacement circuit 119 and the inter-element distance replacement circuit 118,
A transfer length, an inter-element distance, and an address replacement instruction are sent to the transfer destination element distance replacement circuit 117, the transfer source address replacement circuit 123, and the transfer destination address replacement circuit 124, respectively. Transfer length replacement circuit 11
No. 9 replaces the number L1 of subarray data elements with L1 for L. The inter-element distance replacement circuit 118 calculates the value of DL2 (n = n) by multiplying the inter-element distance DL1 in the transfer source sub-array by n.
1, 2,... N, where n indicates the number of transfers). Transfer destination element distance replacement circuit 11
7 is replaced with the value of DR2 (n = 1, 2,... N, where n indicates the number of transfers), which is n times the distance DR1 between elements in the transfer destination sub-array. The transfer source address replacement circuit 123 adds a value DL1 multiplied by m to the transfer source address BL (m = 0, 1, 2,..., N−1,
Here, n indicates the number of the transfer). The transfer destination address replacement circuit 124 obtains a value obtained by adding DR1 which is obtained by multiplying the transfer destination address BR by m (m = 0,
1, 2,..., N−1, where n indicates the number of transfers). As a result, as shown in FIG. 7, elements are collected one by one from each sub-array data and transferred by one instruction, and this is performed L1 times, so that the smaller the number L1 of sub-array data elements, the smaller the number of instructions. Data transfer can be realized.

【0019】[0019]

【発明の効果】第1の効果は、サブアレイデータの要素
数が1である場合には、サブアレイ内の要素間距離をサ
ブアレイ間の距離に差し替え、サブアレイデータの要素
数を総転送要素数と差し替えることにより、総転送要素
数の分だけ発行しなければならないデータ転送命令を1
つに減少させることが可能となり、データ転送をまとめ
て行いデータ転送の効率を上げることが可能になる。
The first effect is that when the number of elements in the sub-array data is 1, the distance between elements in the sub-array is replaced with the distance between the sub-arrays, and the number of elements in the sub-array data is replaced with the total number of transfer elements. Thus, the number of data transfer instructions that must be issued for the total number of transfer elements is one.
The data transfer can be performed at once, and the efficiency of the data transfer can be increased by performing the data transfer collectively.

【0020】第二の効果は、サブアレイデータの要素数
が、1ではないが比較的小さくそれに比して総転送要素
数が大きい場合においても、データ転送をまとめて行う
ことができ転送の効率を上げることができる。
The second effect is that even when the number of elements of the sub-array data is not 1, but is relatively small and the total number of transfer elements is large, the data transfer can be performed collectively and the transfer efficiency can be improved. Can be raised.

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

【図1】本発明の第一の実施の形態を示すブロック図で
ある。
FIG. 1 is a block diagram showing a first embodiment of the present invention.

【図2】本発明の第二の実施の形態を示すブロック図で
ある
FIG. 2 is a block diagram showing a second embodiment of the present invention.

【図3】従来のサブアレイデータの一括転送の動作の説
明図である。
FIG. 3 is an explanatory diagram of a conventional batch transfer operation of sub-array data.

【図4】総転送要素数256における従来のサブアレイ
データ転送動作の説明図である。
FIG. 4 is an explanatory diagram of a conventional sub-array data transfer operation when the total number of transfer elements is 256.

【図5】総転送要素数256における本発明第二の実施
の形態の動作の説明図である。
FIG. 5 is an explanatory diagram of the operation of the second embodiment of the present invention when the total number of transfer elements is 256.

【図6】本発明第三の実施の形態を示すブロック図であ
る。
FIG. 6 is a block diagram showing a third embodiment of the present invention.

【図7】本発明の第三の実施の形態の動作の説明図であ
る。
FIG. 7 is an explanatory diagram of an operation according to the third embodiment of the present invention.

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

1 第一のノード 2 第二のノード 3 第三のノード 4 第四のノード 5 ノード間接続装置 11 ノード間命令発行手段 12 記憶部 13 接続装置 14 サブアレイデータ分解処理装置 15 第一の演算プロセッサ 16 第二の演算プロセッサ 111 メモリ命令出力レジスタ 112 命令出力レジスタ 113 アドレス生成回路 114 転送先アドレス生成回路 115 セレクタ 116 命令保持レジスタ 117 転送先要素間距離差し替え回路 118 要素間距離差し替え回路 119 転送長差し替え回路 120 転送長比較回路 121 命令分解制御回路 122 命令受け付けレジスタ 123 転送元アドレス差し替え回路 124 転送先アドレス差し替え回路 DESCRIPTION OF SYMBOLS 1 1st node 2 2nd node 3 3rd node 4 4th node 5 Inter-node connection device 11 Inter-node command issuing means 12 Storage unit 13 Connection device 14 Sub-array data decomposition processing device 15 First arithmetic processor 16 Second arithmetic processor 111 Memory instruction output register 112 Instruction output register 113 Address generation circuit 114 Destination address generation circuit 115 Selector 116 Instruction holding register 117 Transfer destination element distance replacement circuit 118 Element distance replacement circuit 119 Transfer length replacement circuit 120 Transfer length comparison circuit 121 Instruction disassembly control circuit 122 Instruction reception register 123 Transfer source address replacement circuit 124 Transfer destination address replacement circuit

Claims (3)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】 記憶部と、少なくともひとつのプロセッ
サと、データ転送回路と、転送制御回路とを有し、 転送命令は、命令種別、サブアレイデータ要素数、総転
送要素数、転送元要素間距離、転送元サブアレイ間距
離、転送元基点アドレス、転送先要素間距離、転送先サ
ブアレイ間距離および転送先基点アドレスから構成さ
れ、前記転送制御回路は、前記プロセッサからの前記転
送命令を格納する格納部と、前記主記憶部中に格納され
た二次元配列を構成する前記サブアレイデータ要素数が
所定の値であることを判定する転送長比較回路と、前記
転送長比較回路での判定結果が所定の要素数である場合
前記サブアレイデータ要素数を前記総転送要素数に
替える転送長差し替え回路と、前記転送元要素間距離
前記転送元サブアレイ間距離に替える距離差し替え回路
を有し、前記転送回路において前記転送制御回路の指示
により転送を実行することを特徴とする情報処理装置。
An information processing apparatus includes a storage unit, at least one processor, a data transfer circuit, and a transfer control circuit, wherein a transfer instruction includes an instruction type, a number of sub-array data elements, a total number of transfer elements, and a distance between transfer source elements. A transfer unit for storing the transfer instruction from the processor, the transfer control circuit comprising: a transfer source sub-array distance, a transfer source base address, a transfer destination element distance, a transfer destination sub-array distance, and a transfer destination base address. When the transfer length comparator circuit determines that the number of subarrays data elements constituting the two-dimensional array stored in the main storage unit is a predetermined value, the determination result in the transfer length comparator circuit is given when a number of elements, the transfer length replacement circuit replacing the sub-array number data elements to the total number of transfer elements, wherein the source element distance the transfer source sub-arrays between distance It has a distance replacement circuit substituting the information processing apparatus and executes the transfer by an instruction of the transfer control circuit in the transfer circuit.
【請求項2】 前記差し替え回路において、前記サブア
レイデータ要素数と前記総転送要素数の差が所定の値よ
り大きい場合に前記サブアレイデータ要素数を前記総
転送要素数に替え、前記転送元要素間距離を前記転送元
サブアレイ間距離に替えることを特徴とする請求項1記
載の情報処理装置。
2. A said replacement circuit, wherein, when the subarrays number of data elements difference total transfer element number is greater than a predetermined value, changing the number of subarrays data element to the total number of transfer elements, wherein the source element 2. The information processing apparatus according to claim 1, wherein an inter-distance is replaced with the inter- source sub-array distance.
【請求項3】 請求項1または2記載の情報処理装置を
ノードとし、前記ノードを接続装置で接続したとを特徴
とする情報処理システム。
3. An information processing system, wherein the information processing device according to claim 1 or 2 is a node, and the node is connected by a connection device.
JP09298931A 1997-10-30 1997-10-30 Information processing apparatus and information processing system Expired - Fee Related JP3098473B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP09298931A JP3098473B2 (en) 1997-10-30 1997-10-30 Information processing apparatus and information processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP09298931A JP3098473B2 (en) 1997-10-30 1997-10-30 Information processing apparatus and information processing system

Publications (2)

Publication Number Publication Date
JPH11134310A JPH11134310A (en) 1999-05-21
JP3098473B2 true JP3098473B2 (en) 2000-10-16

Family

ID=17866045

Family Applications (1)

Application Number Title Priority Date Filing Date
JP09298931A Expired - Fee Related JP3098473B2 (en) 1997-10-30 1997-10-30 Information processing apparatus and information processing system

Country Status (1)

Country Link
JP (1) JP3098473B2 (en)

Also Published As

Publication number Publication date
JPH11134310A (en) 1999-05-21

Similar Documents

Publication Publication Date Title
JP2930341B2 (en) Data parallel processing unit
US4507726A (en) Array processor architecture utilizing modular elemental processors
US5367692A (en) Parallel computer system including efficient arrangement for performing communications among processing node to effect an array transposition operation
EP0638868A2 (en) A variable accuracy indirect addressing scheme for SIMD multi-processors and apparatus implementing same
EP0591286B1 (en) Neural network architecture
JP3136088B2 (en) Data processing device and data processing method
JPH07253954A (en) Parallel computer
US20070165547A1 (en) Integrated data processing circuit with a plurality of programmable processors
US4543642A (en) Data Exchange Subsystem for use in a modular array processor
JP3098473B2 (en) Information processing apparatus and information processing system
JP3071899B2 (en) Charge beam drawing data creation device
JP3576148B2 (en) Parallel processor
JP3593439B2 (en) Image processing device
KR20200142200A (en) Neural network accelerator for neural network computing efficiency and operation method thereof
EP0240354A1 (en) Memory Architecture for multiprocessor computers
JPH0214364A (en) Mapping and referring system for multi-dimensional arrangement to one-dimensional storing space
JPS62280956A (en) Arrayed data transfer method
JPH10207853A (en) Parallel execution method for program
US20040215838A1 (en) Method of obtaining interleave interval for two data values
JP3449156B2 (en) Module device
SU1195353A1 (en) Parallel processor for sorting out information
EP0341406A2 (en) Methods and circuit for implementing an arbitrary graph on a polymorphic mesh
JPS59186057A (en) Access processing system in image memory system
Armstrong et al. A network of workstations (NOW) approach to spatial data analysis: The case of distributed parallel interpolation
JPH0218654A (en) Data transfer system

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20000725

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

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

Free format text: PAYMENT UNTIL: 20070811

Year of fee payment: 7

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

Free format text: PAYMENT UNTIL: 20080811

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20080811

Year of fee payment: 8

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

Free format text: PAYMENT UNTIL: 20090811

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20090811

Year of fee payment: 9

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

Free format text: PAYMENT UNTIL: 20100811

Year of fee payment: 10

LAPS Cancellation because of no payment of annual fees