JPH01260573A - Vector multiplex computing system - Google Patents

Vector multiplex computing system

Info

Publication number
JPH01260573A
JPH01260573A JP8949488A JP8949488A JPH01260573A JP H01260573 A JPH01260573 A JP H01260573A JP 8949488 A JP8949488 A JP 8949488A JP 8949488 A JP8949488 A JP 8949488A JP H01260573 A JPH01260573 A JP H01260573A
Authority
JP
Japan
Prior art keywords
vector
arithmetic
instruction
processing
pipeline
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP8949488A
Other languages
Japanese (ja)
Inventor
Hideaki Fujimaki
藤巻 秀明
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP8949488A priority Critical patent/JPH01260573A/en
Publication of JPH01260573A publication Critical patent/JPH01260573A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To improve the operation rate of an arithmetic pipeline and the throughput of a vector arithmetic processing unit by sharing and using plural arithmetic pipelines by all of the instructions under execution simultaneously without allocating on each vector instruction. CONSTITUTION:By providing means 2 and 3 to process plural vector arithmetic instructions independent with each other by dividing into every element unit and distributing to plural arithmetic pipelines, the plural vector arithmetic instructions independent with each other are processed in every element unit by respective arithmetic pipeline 4. Therefore, it is possible to use the null time of a certain arithmetic pipeline 4 due to data neck, etc., in executing a certain vector instruction in the processing of another vector instruction. In such a way, the operation rate of the arithmetic pipeline 4 can be heightened, and the throughput of the arithmetic processing unit can be improved.

Description

【発明の詳細な説明】 〔概要〕 パイプライン方式のベクトル演算処理装置におけるベク
トル多重演算方式に関し、 MIMD (多重命令、多重デークストリーム)方式で
動作するベクトル演算処理装置における、ヘクI・ル演
算パイプラインの稼働率を向上させ、ベクトル演算処理
装置のスループソ1へを向上させることを目的とし、 互いに独立な複数個のベクトル演算命令をニレメン1−
単位に分割し、複数個のベクトル処理パイプラインに分
配して処理する手段を設けて、それぞれのベクトル処理
パイプラインで、該互いに独立な複数個のベクトル演算
命令をエレメント単位に処理するように構成する。
[Detailed Description of the Invention] [Summary] Regarding the vector multiple operation method in a pipelined vector operation processing device, the present invention relates to a vector operation pipe in a vector operation processing device operating in a MIMD (multiple instruction, multiple data stream) method. With the aim of improving the operating rate of the line and improving the speed of the vector arithmetic processing unit, a number of mutually independent vector arithmetic instructions are
A configuration is provided in which means is provided for dividing into units and distributing them to a plurality of vector processing pipelines for processing, and each vector processing pipeline processes the plurality of mutually independent vector operation instructions in units of elements. do.

〔産業上の利用分野〕[Industrial application field]

本発明は、パイプライン方式のバク1−ル演算処理装置
におけるベクトル多重演算方式に関する。
The present invention relates to a vector multiplex calculation method in a pipeline type back-to-back calculation processing device.

近年、所謂スーパーコンピュータにおいて、処理能力を
向上させる為に、1つのベクトル命令に対して、複数個
の演算パイプラインを用いて並列に動作させる並列処理
方式が採られ始めている。
In recent years, so-called supercomputers have begun to adopt a parallel processing method in which a single vector instruction is operated in parallel using a plurality of arithmetic pipelines in order to improve processing performance.

然し、1つのベクトル命令に対して、複数個の演算パイ
プラインで実行する現状においては、該演算パイプライ
ンがデータ待ちにより処理の途中で該演算を中断して該
演算パイプラインが空いている場合でも、該演算パイプ
ラインは、該ベクトル命令に長時間専有されてしまい、
負荷の分散か必ずしも均等にならず、該複数個の演算バ
イプラ・インが十分に生かされない事象が生じるという
問題があり、該複数個の演算パイプラインを十分生かす
ことができるベクI・ル多重演算方式が必要とされる。
However, in the current situation where one vector instruction is executed by multiple arithmetic pipelines, if the arithmetic pipeline interrupts the operation in the middle of processing due to waiting for data and the arithmetic pipeline is empty. However, the arithmetic pipeline is occupied by the vector instructions for a long time,
There is a problem in that the load is not necessarily evenly distributed and the multiple calculation pipelines are not fully utilized. A method is needed.

〔従来の技術と発明か解決しようとする課題〕第3図は
従来のベクトル多重演算方弐を説明する図である。
[Prior Art and Problems to be Solved by the Invention] FIG. 3 is a diagram illustrating the second conventional vector multiple operation method.

従来からMIMD (多重命令、多重データストリーム
)方式によるベクトル演算処理方式が知られている。
2. Description of the Related Art Vector arithmetic processing methods based on MIMD (Multiple Instructions, Multiple Data Streams) have been known for some time.

本図に示したように、命令1と命令2とを同時に処理す
る場合、従来においては、例えば、演算パイプラインA
とB4を命令1に割り当て、演算パイプラインC4を命
令2に割り当てて、並列に処理していた。
As shown in this figure, when processing instruction 1 and instruction 2 at the same time, conventionally, for example, the operation pipeline A
and B4 were assigned to instruction 1, and arithmetic pipeline C4 was assigned to instruction 2, so that they were processed in parallel.

このように、演算パ・イブライン4をある・・・りトル
命令に割り当ててしまうと、その命令が終了する迄、該
割り当てられた演算パイプライン4はその命令に専有さ
れてしまい、例えば、データネ・ツクによって、該演算
パイプライン4が空いた状態となっても、他のベクトル
命令の処理を実行することができなかった。
In this way, if the arithmetic pipeline 4 is assigned to a certain little instruction, the assigned arithmetic pipeline 4 will be exclusively used by that instruction until the instruction is completed. - Even if the arithmetic pipeline 4 became vacant due to the tsuku, it was not possible to process other vector instructions.

本図の例では、命令1の入力データの供給ネ・ツクによ
り演算パイプラインA、B4がアイドル状態となってい
ても、命令2の処理を実行することができず、命令2ば
、他の演算パイプライン(A、B)4が空いているにも
かかわらず、演算パイプラインC4のみで処理をしなり
ればならなかった。
In the example shown in the figure, even if the calculation pipelines A and B4 are in an idle state due to the supply of input data of instruction 1, the processing of instruction 2 cannot be executed, and the processing of instruction 2 and other Even though the calculation pipelines (A, B) 4 were vacant, the processing had to be performed only by the calculation pipeline C4.

本発明は」1記従来の欠点に鑑み、MTMD方代による
ベクトル多重演算方式において、ある演算パイプライン
が空いている場合には、該空きの演算パイプラインを他
のベクトル命令に渡して処理を実行させる方式を提供す
ることを目的とするものである。
In view of the conventional drawbacks described in 1., the present invention provides that in a vector multiplex operation method based on the MTMD method, when a certain operation pipeline is empty, the empty operation pipeline is passed to another vector instruction for processing. The purpose of this is to provide a method for executing the program.

〔課題を解決するための手段〕[Means to solve the problem]

第1図は本発明の−、クトル多重演算方式の原理構成を
説明する図てるあ。
FIG. 1 is a diagram illustrating the principle configuration of the vector multiple calculation method of the present invention.

上記の問題点は下記の如くに構成されたベクトル多重演
算方式によって解決される。
The above problems can be solved by a vector multiple operation system configured as follows.

パイプライン方式のベクトル演算処理装置において、 互いに独立な複数個のベクトル演算命令をエレメント単
位に分割し、複数個のへり1−ル処理パイプライン4に
分配して処理する手段2,3を設けて、それぞれのベク
トル処理パイプライン4て、該互いに独立な複数個のベ
クトル演算命令をエレメント単位に処理するように構成
する。
In a pipelined vector arithmetic processing device, means 2 and 3 are provided for dividing a plurality of mutually independent vector arithmetic instructions into element units and distributing them to a plurality of edge processing pipelines 4 for processing. , each vector processing pipeline 4 is configured to process the plurality of mutually independent vector operation instructions element by element.

〔作用〕[Effect]

即ち、本発明によれば、ベクトル多重演算方式において
、複数個の演算パイプラインを各ベクトル命令に割り付
けないで、同時に実行中の全命令でシェアして使用する
ようにする。
That is, according to the present invention, in the vector multiplex operation method, a plurality of operation pipelines are not allocated to each vector instruction, but are shared and used by all instructions being executed simultaneously.

即ち、第1図(a)の構成図で示したように、該複数個
の演算パイプラインは、エレメント単位で、どの命令の
演算でも実行できるようにする。その為、該複数個の演
算パイプラインには、各エレメントデータと共に、該エ
レメントに対応する命令の種別(オーダ)が送出され、
各演算パイプラインでは、該エレメントに対応する命令
レー・ルのオペレーションには全く関知せず、ニレメン
l□ −Qi 位の処理を実行する。
That is, as shown in the configuration diagram of FIG. 1(a), the plurality of arithmetic pipelines are configured to be able to execute arithmetic operations for any instruction in element units. Therefore, along with each element data, the type (order) of the instruction corresponding to the element is sent to the plurality of calculation pipelines.
Each arithmetic pipeline executes as many processes as l□-Qi without being concerned at all with the operation of the instruction rail corresponding to the element.

第1図(b)に示した動作タイムチャー1−の例では、
始め、演算パイプラインA、B4で命令■を、演算パイ
プラインC4て命令■を処理していたが、第2番目の演
算サイクルにおいて命令■がデータネックとなったとき
、次の演算サイクルでは演算パイプラインA、B、C4
で命令■を実行し、命令■の上記データネックが第4番
目の演算サイクルで解消されたときには、再び演算パイ
プラインA、Bを命令■に割り付けるように動作する。
In the example of operation time chart 1- shown in FIG. 1(b),
Initially, the instruction ■ was processed in the calculation pipelines A and B4, and the instruction ■ was processed in the calculation pipeline C4, but when the instruction ■ became a data neck in the second calculation cycle, the calculation was processed in the next calculation cycle. Pipeline A, B, C4
When the instruction (2) is executed and the data neck of the instruction (2) is resolved in the fourth arithmetic cycle, operation is performed to allocate the arithmetic pipelines A and B to the instruction (2) again.

従って、データネック等による演算バイプライ−〇− ンの空き時間を、他の命令の処理に動的に切り替えるよ
うにしたものであるので、演算パイプラインの稼働率が
向上し、ベクトル演算処理装置のスループソl−が向上
する効果がある。
Therefore, the vacant time on the arithmetic pipeline due to data necks, etc. is dynamically switched to processing other instructions, which improves the utilization rate of the arithmetic pipeline and improves the efficiency of the vector arithmetic processing unit. This has the effect of improving throughput solenoid.

〔実施例〕〔Example〕

以下本発明の実施例を図面によって詳述する。 Embodiments of the present invention will be described in detail below with reference to the drawings.

前述の第1図が本発明のベクトル多重演算方式の原理を
説明する図であって、(a)は構成例を示し、(tl)
は動作タイムチャー1・を示しており、第2図は本発明
の一実施例を示した図であって、(a)は全体の構成例
を示し、(b)ば命令処理ユニットの具体構成の例を示
しており、それぞれ、1つの・\りトル命令を受り取っ
た複数個の命令処理ユニット2か、該ベクトル演算処理
をエレメント単位に分割し、その時に空いている演算パ
イプ制御(#0〜)3に分配し、該エレメントをオーダ
と共に受り取った演算パイプ制御(#0〜)3が、該ニ
レメン]・の単位で処理を行い、演算が終了すると、次
のニレメン1〜を待つことを繰り返して複数個のべりト
ル命令の処理を、複数個の演算パイプラインがエレメン
ト単位に並列に実行する手段が本発明を実施するのに必
要な手段である。尚、全図を通して同じ符号は同じ対象
物を示している。
The above-mentioned FIG. 1 is a diagram explaining the principle of the vector multiple operation method of the present invention, in which (a) shows an example of the configuration, and (tl)
2 shows an operation time chart 1, and FIG. 2 is a diagram showing an embodiment of the present invention, in which (a) shows an example of the overall configuration, and (b) shows a specific configuration of the instruction processing unit. An example is shown in which a plurality of instruction processing units 2 each receive one . The calculation pipe control (#0~) 3, which receives the element along with the order, performs processing in units of the Niremen]. When the calculation is completed, the next Element 1~ A means necessary to carry out the present invention is a means in which a plurality of arithmetic pipelines execute the processing of a plurality of command instructions in parallel on an element-by-element basis by repeating the process of waiting for . Note that the same reference numerals indicate the same objects throughout the figures.

以下、第1図の原理構成を参照しながら第2図によって
、本発明のムク1−ル多重演算方式を説明する。
Hereinafter, the multiplex operation system of the present invention will be explained with reference to FIG. 2 while referring to the principle configuration of FIG. 1.

先ず、第2図(a)によって、全体的な動作を説明する
First, the overall operation will be explained with reference to FIG. 2(a).

図示していない、例えば、スカラユニットから複数個の
リクエストアクセプタ(II帆11L −−、l1n)
 1で受は取ったベクトル命令は、各リクエストアクセ
プタ(no、Ill、 −−、#n) ]により、その
時空いている任意の命令処理ユニット(+10.Ill
、−、#k) 2に送出される。
Not shown, for example, multiple request acceptors (II sail 11L --, l1n) from the scalar unit
The vector instruction received at 1 is sent to any available instruction processing unit (+10.Ill) by each request acceptor (no, Ill, --, #n).
, -, #k) 2.

該命令処理ユニソ1−(110,Ill、−,1k) 
2においては、各々1個だけの・\りトル命令を制御す
る。従って、該命令処理ユニソl−2は同時に、並列実
行が可能な命令数の数だけ用意する。
The instruction processing unit 1-(110, Ill, -, 1k)
2, each controls only one . Therefore, the instruction processing unit 1-2 is prepared as many instructions as the number of instructions that can be executed in parallel.

各命令処理ユニット(#0.IIL−、1lk) 2は
、その時空いている任意の演算パイプ制御(#帆III
、−、#1)3に対して、処理対象ニレメン1−情報(
アドレス)、処理内容のオーダをエレメント毎に指示し
、該ベクトル命令の処理を行う。
Each instruction processing unit (#0.IIL-, 1lk) 2 controls any arithmetic pipe control (#0.
, -, #1)3, the processing target Niremen1-information (
address), the order of processing contents is specified for each element, and the vector instruction is processed.

そして、その命令の全てのエレメントの演算の実行が完
了すると、該命令処理ユニッi〜2は空き状態となり、
次のベクトル命令を待つように機能する。
Then, when the execution of operations of all elements of the instruction is completed, the instruction processing unit i~2 becomes vacant,
It functions to wait for the next vector instruction.

一方、演算パイプライン(A、B、C,−)4は、演算
パイプ制御(110,Ill、−、、■)3からの指示
に従って、上記複数個の命令処理ユニッl−(110,
11,−−−、Itk) 2のうちの1つから、処理対
象、処理内容のオーダを受け、データ格納装置(例えば
、ベクトルレジスタ(VR)+5からベクトルデータを
読み出し、演算を施して、演算結果を再び該データ格納
装置5に格納する。
On the other hand, the arithmetic pipeline (A, B, C, -) 4 operates the plurality of instruction processing units l-(110,
11, ---, Itk) Receives an order for processing target and processing content from one of 2, reads vector data from a data storage device (for example, vector register (VR) +5, performs arithmetic operations, and The results are stored in the data storage device 5 again.

1つのエレメントの処理が完了すると、再び、任意の命
令処理ユニット2から次のオーダを受は取るように機能
する。
When the processing of one element is completed, it functions to receive and take the next order from any instruction processing unit 2 again.

次に、(、b)図の具体例によって、ベクトル処理−9
= ユニット2での動作を更に詳細に説明する。
Next, based on the specific example shown in (, b), Vector Processing-9
= The operation in unit 2 will be explained in more detail.

通常、複数個(例えば、2個)の図示していないスカラ
ユニソトからのリタコニストを1つのベクトルユニット
(VU)が受付る。そして、該へクトルユニソ1−(V
U)は各スカラユニソト毎のベクトルレジスタ(VR)
を独立に持っている。該へクトルユニソト(VU)のリ
クエストアクセプタ(110,1) 1は、」二記スカ
ラユニソト1個に対して1個存在しており、該スカラユ
ニソトからリフニス1−を受は取ったリクエストアクセ
プタ(110,1) 1はそのリクエストの内容(命令
コーlハオペランドVllアドレス1ベクトルー1(V
L)、スカラユニットID)を、空いている命令処理ユ
ニット2に対して送出する。
Typically, one vector unit (VU) receives reconists from a plurality (for example, two) of scalar unisothos (not shown). And the hector uniso 1-(V
U) is a vector register (VR) for each scalar unit
independently. The request acceptor (110, 1) 1 of the hector unisoto (VU) exists for each scalar unisoto (VU). ) 1 is the content of the request (instruction call operand Vll address 1 vector-1 (V
L), scalar unit ID) is sent to the vacant instruction processing unit 2.

該命令処理ユニット2ば、当該ハク1−ルユニソト(V
U)で並列処理の可能な命令数の数だけ存在し、演算パ
イプライン4の数を越えることはない。そして、該命令
処理ユニット2は同時に1個だけ」1記ベクトル命令を
処理することが可能であり、1つのベクトル命令を受イ
」るとビジーとなり、そのベクトル命令の処理を完了す
る迄、次のへクトル命令を受何ない。
The instruction processing unit 2 executes the instruction processing unit 2.
There are as many instructions as the number of instructions that can be processed in parallel in U), and the number does not exceed the number of arithmetic pipelines 4. The instruction processing unit 2 is capable of processing only one "1 vector instruction" at the same time, and when it receives one vector instruction, it becomes busy and waits until the next vector instruction is completed. I do not accept Hector's orders.

第2図(b)において、OPコート21には上記命令ロ
ー 1・が設定され、レジスタ(R2) 22.レジス
タ(R3) 23 にば、演算元オペランドのベクトル
レシスタ(VR)のアドレスが、レジスタ(R1−) 
24には演算結果オペランドのヘクI−ルレシスタ(V
R)のアドレスが、レジスタ(R4) 25 Qこはマ
スクレジスタ団R)のアドレスが、それぞれ設定され、
レジスタ(VL) 26にはベクトル長(VL)が設定
される。
In FIG. 2(b), the above instruction row 1. is set in the OP code 21, and the register (R2) 22. If register (R3) 23, the address of the vector register (VR) of the operation source operand is stored in register (R1-).
24 is a hex I register (V) for the operation result operand.
The address of R) is set in the register (R4), and the address of the mask register group R) is set, respectively.
A vector length (VL) is set in the register (VL) 26.

そして、オペレーションアザインコン1〜ロール27に
おいて、空いている演算パイプ制御(no、#]、。
Then, in operations asaincon 1 to roll 27, empty calculation pipe control (no, #],

−−、tli) 3を、対応するBUSY 110.、
−信号が“オフ゛であることで検出し、対応する演算パ
イプ制御010.Ill−、−、Iti) 3からのア
クセプタンス信号(ACPT)(#O,ll]、−−、
tti)を受信したことて、該空き演算パイプ制御(1
10,ltl、−,1li) 3が獲得てきたことをJ
2熾し、上記レジスタ(R1,) 22〜(I14) 
24からn+n+1.+ ”−”、n+:3の4ニレメ
ンI・のアドレスとインデックスを出力する。
--, tli) 3 to the corresponding BUSY 110. ,
- Detects that the signal is "off" and accepts the acceptance signal (ACPT) from the corresponding arithmetic pipe control 010.Ill-,-,Iti)3 (#O,ll], --,
tti), the free calculation pipe control (1
10, ltl, -, 1li) J
2.The above registers (R1,) 22 to (I14)
24 to n+n+1. + "-", n+: Outputs the address and index of the 4-element I of 3.

そし”て、言亥演算バイブ市11f卸(110,11,
−、l1i) 3で受イ・1られたエレメント数だけ、
カウンタ(+m) 28をインクリメンI〜する。
Then, I went to Kotoba Operation Vibe City 11F Wholesale (110, 11,
−, l1i) As many elements as the number of elements that were accepted or 1 in 3,
Counter (+m) 28 is incremented by I~.

即ぢ、各命令処理ユニット(llO,Ill  −,1
lk) 2は、獲得した演算パイプ制御(lto、Il
l、 −=−,1li) 3に対して、ハク1−ル命令
をニレメン1−毎に分解し、各コニレメント毎に1つの
リクエストーダーダとして、−I―記演算コ−F、オペ
ランドVR7+’レス、及びインデックス、スカラユニ
ソ1−IDを送出する。演算バイツブ匍背卸(書to、
l11.−.l1i) 3は該リクエストオーダに基づ
いて、該指定された1エレメントに対する演算を実行し
、指定されたヘクI・ルレジスタ(VR)に演算結果を
格納し、次のリフニスI・オーダを待つ。
That is, each instruction processing unit (llO, Ill −, 1
lk) 2 is the acquired arithmetic pipe control (lto, Il
l, -=-,1li) For 3, break down the hack 1-le instruction into nilemens 1-, and as one request-da-da for each coni-element, -I- written operation code F, operand VR7+' The response, index, and scalar Uniso 1-ID are sent. Calculation bits back wholesale (book to,
l11. −. l1i) 3 executes an operation on the specified element based on the request order, stores the operation result in the specified register (VR), and waits for the next request order.

このよ・うにして、該演算パイプ制御(IO,Ill、
、 −,1li) 3は−\りトル命令し・\ルのオペ
レーションには全く関知せず、各命令処理ユニット(1
10,Ill、 −=−,1lk) 2からのエレメン
ト単位のオーダを受動的に受信して、倍演算ナイクル毎
に、各ニレノンI・単位の演算を実行する。
In this way, the calculation pipe control (IO, Ill,
, -, 1li) 3 executes the -\little command and is completely unrelated to the operation of \\, and each instruction processing unit (1li)
10, Ill, -=-, 1lk) Passively receives the element-wise order from 2 and performs each nylenon I unit operation for each double operation nicle.

このエレメント単位のベクトル演算処理で発生ずるオペ
ランドのコンフリクション等は、各命令処理ユニンh 
(110,Ill、、、−,1lk) 2内の上記オペ
レーションアザインコントロール27において、各命令
処理ユニット間の通信を行・うことで検11費ッ、その
インクロックは該命令処理ユニット(#O,#1.−.
1lk) 2からオーダを発行しないことにより行う。
Conflicts of operands that occur in this element-based vector arithmetic processing are handled by each instruction processing unit h.
(110, Ill, , -, 1lk) In the operation assign control 27 in 2, communication between each instruction processing unit is performed, and the ink clock is transferred to the instruction processing unit (# O, #1.-.
1lk) This is done by not issuing any orders from step 2 onwards.

」二記の如き動作によって、第2図(a)に示されてい
る各命令処理ユニソh (#0.月、−、l1k) 2
からのニレメンI・単位の処理要求が、該複数個の演算
パイプ制御(#0.#1.−、1fi) 3に動的に切
り替えられて受付られ実行されることになる。
” 2, each instruction processing unit h (#0.month, -, l1k) 2 shown in FIG. 2(a)
A processing request for Niremen I units from is dynamically switched to the plurality of calculation pipe controls (#0.#1.-, 1fi) 3, accepted, and executed.

ごのときの該演算パイプ制御(lto、Ill、−、#
i) 3での受付方法では、例えば、該命令処理ユニッ
ト(110,111,−,1lk) 2カ)らの」二記
オペレーションアザインコントロール27て生成したプ
ライオリティ信号に基づいて、演算パイプ制御(#0.
#L−、1li)3が、上記アクセプタンス信号(八C
PT) (#帆tlL −5#1)の返送を制御するこ
とにより、自動的に、特定の優先順序を付けることがで
きる。
The calculation pipe control (lto, Ill, -, #
i) In the reception method in step 3, for example, the operation pipe control ( #0.
#L-, 1li)3 is the above acceptance signal (8C
By controlling the return of (#Sail tlL-5#1), a certain priority order can be automatically assigned.

」二記プライオリティ信号は、各命令処理ユニソ1−2
ノに記オペレーションアザインコントローlし27にお
いて、例えば、待たされた時間を計数しておいて、該待
ち時間が多くなると、自己の優先順位を上げる等の方法
によって任意の優先順位信号を生成することができる。
”2 priority signal is for each instruction processing unit 1-2.
In operation 27, for example, the waiting time is counted, and when the waiting time increases, an arbitrary priority signal is generated by increasing the own priority. be able to.

このように、本発明は、パイプライン方式のベクトル演
算処理方式において、ベクトルユニソ1〜(VU)内に
設けられている複数個の命令処理ユニットにおいて、互
いに独立な複数個のベクトル演算命令を1つ宛受付け、
エレメント単位の処理に分割して、複数個の演算パイプ
制御ユニソI・の中の空きユニソt−に送出してエレメ
ント単位で処理させることにより、複数個の各演算パイ
プラインで、該複数個のベクトル命令をニレメン1−単
位に処理するようにした所に特徴がある。
As described above, in the pipeline vector operation processing method, the present invention allows a plurality of mutually independent vector operation instructions to be processed into one in the plurality of instruction processing units provided in the vector UNISO 1 to (VU). Address reception,
By dividing the process into element units and sending it to an empty uniso t- in the plurality of arithmetic pipe control uniso I and having it processed in element units, each of the plurality of arithmetic pipelines can process the plurality of The feature is that vector instructions are processed in units of one element.

〔発明の効果〕〔Effect of the invention〕

以上、詳細に説明したように、本発明のベクトル多重演
算方式は、パイプライン方式のハク1〜ル演算処理装置
にお&Jるベクトル多重演算方式において、互いに独立
な複数個のベクトル演算命令をニレノンl−単位に分割
し、複数個のベクトル処理パイプラインに分配して処理
する手段を設けて、それぞれのベクトル処理パイプライ
ンで、該互いに独立な複数個のムク1−ル演算命令をエ
レメント単位に処理するようにしたものであるので、あ
るベクトル命令を実行中にデータネック等によるある演
算パイプラインの空き時間を他のベクトル命令の処理に
用いることができ、該演算パイプラインの稼働率が向上
し、・\クトル演算処理装置のスループソI・が向上す
る効果がある。
As described above in detail, the vector multiple operation method of the present invention is a vector multiple operation method in which a plurality of mutually independent vector operation instructions are A means is provided for dividing the unit into l-units and distributing them to a plurality of vector processing pipelines for processing, and each vector processing pipeline processes the plurality of mutually independent Muku-l operation instructions in element units. Since the vector instruction is being executed, the idle time in a calculation pipeline due to data neck etc. can be used to process other vector instructions, improving the utilization rate of the calculation pipeline. However, there is an effect of improving the throughput of the vector processing unit.

【図面の簡単な説明】[Brief explanation of the drawing]

第1図が本発明のへりトル多重演算方式の原理構成を説
明する図。 第2図は本発明の一実施例を示した図。 第3図は従来のへりトル多重演算方式を説明する図。 である。 図面において、 1はリクエストアクセプタ(lto、Ill、−、#n
)。 2ば命令処理ユニット(#帆#1.−. #k) 。 21はOPコード。 22〜26はレジスタ(ill、 −R4,VL) 。 27はオペレーションアザインコン1へロール。 28はカウンタ(+m) 。 3は演算パイプ制御(#0.Ill、−、Iti)。 4は演算パイプライン(八、B、−)。 5はデータ格納装置(ベタ1ヘルレジスタ(VR) 1
■、■はベクトル命令、又は単に命令。 ACPT (110,−)はアクセプタンス信号。 BUSY(#O,−)はヒジー信号。 をそれぞれ示す。
FIG. 1 is a diagram illustrating the principle configuration of the Heritor multiple calculation method of the present invention. FIG. 2 is a diagram showing an embodiment of the present invention. FIG. 3 is a diagram illustrating the conventional Heritre multiple calculation method. It is. In the drawing, 1 is a request acceptor (lto, Ill, -, #n
). 2ba instruction processing unit (#sail #1.-. #k). 21 is the OP code. 22 to 26 are registers (ill, -R4, VL). 27 rolls to Operation Asaincon 1. 28 is a counter (+m). 3 is arithmetic pipe control (#0.Ill, -, Iti). 4 is an arithmetic pipeline (8, B, -). 5 is a data storage device (solid 1 hell register (VR) 1
■,■ are vector instructions or simply instructions. ACPT (110,-) is an acceptance signal. BUSY (#O, -) is a low signal. are shown respectively.

Claims (1)

【特許請求の範囲】 パイプライン方式のベクトル演算処理装置において、 互いに独立な複数個のベクトル演算命令をエレメント単
位に分割し、複数個のベクトル処理パイプライン(4)
に分配して処理する手段(2、3)を設けて、 それぞれのベクトル処理パイプライン(4)で、該互い
に独立な複数個のベクトル演算命令をエレメント単位に
処理することを特徴とするベクトル多重演算方式。
[Claims] In a pipelined vector processing device, a plurality of mutually independent vector processing instructions are divided into elements to form a plurality of vector processing pipelines (4).
A vector multiplexing method characterized in that means (2, 3) for distributing and processing the plurality of mutually independent vector operation instructions are provided in each vector processing pipeline (4) in units of elements. Calculation method.
JP8949488A 1988-04-12 1988-04-12 Vector multiplex computing system Pending JPH01260573A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8949488A JPH01260573A (en) 1988-04-12 1988-04-12 Vector multiplex computing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8949488A JPH01260573A (en) 1988-04-12 1988-04-12 Vector multiplex computing system

Publications (1)

Publication Number Publication Date
JPH01260573A true JPH01260573A (en) 1989-10-17

Family

ID=13972310

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8949488A Pending JPH01260573A (en) 1988-04-12 1988-04-12 Vector multiplex computing system

Country Status (1)

Country Link
JP (1) JPH01260573A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014002555A (en) * 2012-06-18 2014-01-09 Fujitsu Ltd Processor

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014002555A (en) * 2012-06-18 2014-01-09 Fujitsu Ltd Processor

Similar Documents

Publication Publication Date Title
US4661900A (en) Flexible chaining in vector processor with selective use of vector registers as operand and result registers
US4636942A (en) Computer vector multiprocessing control
EP0502680B1 (en) Synchronous multiprocessor efficiently utilizing processors having different performance characteristics
JP2577865B2 (en) Vector processing apparatus and control method thereof
US5239629A (en) Dedicated centralized signaling mechanism for selectively signaling devices in a multiprocessor system
EP1381939B1 (en) Registers for data transfers within a multithreaded processor
US20090241119A1 (en) Interrupt and Exception Handling for Multi-Streaming Digital Processors
WO2003063018A2 (en) Functional pipelines
JPH06236344A (en) Method and apparatus for arbitration between plurality of data transfer requests
US8447953B2 (en) Instruction controller to distribute serial and SIMD instructions to serial and SIMD processors
WO1991020043A1 (en) Global registers for a multiprocessor system
GB2398651A (en) Automatical task allocation in a processor array
JPH0648486B2 (en) Vector data processor
US5530889A (en) Hierarchical structure processor having at least one sub-sequencer for executing basic instructions of a macro instruction
JPS63184841A (en) Control of execution of tasks mutually related
JP3144842B2 (en) Microprocessor
JPH01260573A (en) Vector multiplex computing system
EP1035479A2 (en) System for processing vector data
JPH0460843A (en) Task scheduling system for multiprocessor system
CA1242284A (en) Computer vector multi-processing control
JPH11249917A (en) Parallel computers, their batch processing method, and storage medium
JPS6049464A (en) Inter-processor communication system of multi-processor computer
JP2002140201A (en) Method for updating database and database management system using the same
Tuomenoksa et al. Preloading Schemes for the PASM Parallel Memory System.
JPH03223955A (en) Information processing system