JPH0685166B2 - Instruction control method for multiprocessor system - Google Patents

Instruction control method for multiprocessor system

Info

Publication number
JPH0685166B2
JPH0685166B2 JP60159497A JP15949785A JPH0685166B2 JP H0685166 B2 JPH0685166 B2 JP H0685166B2 JP 60159497 A JP60159497 A JP 60159497A JP 15949785 A JP15949785 A JP 15949785A JP H0685166 B2 JPH0685166 B2 JP H0685166B2
Authority
JP
Japan
Prior art keywords
instruction
processor
vector
instructions
unit
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
JP60159497A
Other languages
Japanese (ja)
Other versions
JPS6220064A (en
Inventor
一志 坂本
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 JP60159497A priority Critical patent/JPH0685166B2/en
Priority to AU50454/85A priority patent/AU557807B2/en
Priority to KR1019850008891A priority patent/KR900001999B1/en
Priority to BR8506010A priority patent/BR8506010A/en
Priority to EP85308697A priority patent/EP0183560B1/en
Priority to DE8585308697T priority patent/DE3579121D1/en
Priority to ES549455A priority patent/ES8800769A1/en
Publication of JPS6220064A publication Critical patent/JPS6220064A/en
Publication of JPH0685166B2 publication Critical patent/JPH0685166B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】 〔概要〕 複数のブロセッサ(第1プロセッサ)がある特定の処理
を1つのプロセッサ(第2プロセッサ)に依頼して実行
させるマルチプロセッサシステムにおいて,第2プロセ
ッサが第1プロセッサからの命令列中の命令群を識別す
ることにより,第1プロセッサに与える使用権を自動的
に変更する。各第1プロセッサは,相互間の競合状態を
意識する必要がなく効率的な処理が行われる。
DETAILED DESCRIPTION OF THE INVENTION [Outline] In a multiprocessor system in which a plurality of processors (first processors) request one processor (second processor) to execute a specific process, the second processor is the first processor. The usage right given to the first processor is automatically changed by identifying the instruction group in the instruction sequence from. Each of the first processors does not need to be aware of the race condition between them, and the efficient processing is performed.

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

本発明は、マルチプロセッサシステムにおけるプロセッ
サ間の命令処理のための命令制御方式に関するものであ
り,特に複数のスカラユニットが1つのベクトルユニッ
トを共用する構成の計算機システムにおいて有用な命令
制御方式に関する。
The present invention relates to an instruction control method for instruction processing between processors in a multiprocessor system, and more particularly to an instruction control method useful in a computer system having a configuration in which a plurality of scalar units share one vector unit.

〔従来の技術〕[Conventional technology]

科学技術用計算機は,一般にスカラ命令を処理するスカ
ラユニット(以後SUで表す)とベクトル命令を処理する
ベクトルユニット(以後VUで表す)とで構成されてい
る。
Scientific and technological computers are generally composed of a scalar unit that processes scalar instructions (hereinafter referred to as SU) and a vector unit that processes vector instructions (hereinafter referred to as VU).

VUは同一複数の演算を高速に処理することができる。し
たがって,計算機では,VUの使用率が高い程,高い性能
が得られることになる。しかし、プログラムの中には,
ベクトル処理化しにくいもの,すなわちベクトル命令に
変換しにくいものがある。このようなプログラムでは,V
Uの使用率が低くなってしまう。
The VU can process the same multiple operations at high speed. Therefore, in a computer, the higher the VU usage rate, the higher the performance. But in the program,
Some are difficult to vectorize, that is, some are difficult to convert into vector instructions. In such a program, V
Usage rate of U becomes low.

そこで1つのVUに対し,複数のSUを接続させたマルチプ
ロセッサシステムが提案されている。
Therefore, a multiprocessor system in which multiple SUs are connected to one VU has been proposed.

第3図は,このようなマルチプロセッサシステムの1例
であり,2つのSUと1つのVUとを含むシステムの構成を示
している。
FIG. 3 is an example of such a multiprocessor system, and shows a system configuration including two SUs and one VU.

図において,30は主記憶装置(MSUで表す),31は記憶制
御装置(MCUで表す),32はベクトル処理装置(VPUで表
す),33および34はそれぞれスカラユニット(SU0,SU1
表す),35はベクトルユニット(VUで表す)である。
In the figure, 30 is a main memory unit (represented by MSU), 31 is a storage control unit (represented by MCU), 32 is a vector processing unit (represented by VPU), and 33 and 34 are scalar units (SU 0 , SU 1 respectively). , 35 is a vector unit (represented by VU).

SU0およびSU1は,それぞれMCUを介してMSUに結合され,
独立並行してプログラム処理を実行する。SU0およびSU1
は実行すべき命令がベクトル命令である場合,VUに処理
を依頼する。VUは依頼されたベクトル命令を実行し,結
果をMSUを介して依頼元SUへ返す。
SU 0 and SU 1 are each coupled to MSU via MCU,
Independently execute program processing in parallel. SU 0 and SU 1
Requests the VU to process when the instruction to be executed is a vector instruction. The VU executes the requested vector instruction and returns the result to the requesting SU via the MSU.

第4図は,第3図におけるVUの内部構成を示したもの
で,40はMSU,41はMCU,42はVPU,43はSU0,44はSU1,45はVU
であり,それぞれ第3図の30ないし35に対応している。
Fig. 4 shows the internal structure of the VU in Fig. 3, where 40 is MSU, 41 is MCU, 42 is VPU, 43 is SU 0 , 44 is SU 1 and 45 is VU.
And correspond to 30 to 35 in FIG. 3, respectively.

そしてVU内の450はベクトル制御ユニット(VCUで表
す),451はベクトル実行ユニット(VEUで表す),452は
制御信号,453はロードパイプライン,454はストアパイプ
ライン,455はベクトルレジスタ(VRで表す),456はADD
パイプライン(ADDで表す),457は乗算パイプライン(M
ULTIで表す),458はDEVIDEパイプラインを表す。
In the VU, 450 is a vector control unit (represented by VCU), 451 is a vector execution unit (represented by VEU), 452 is a control signal, 453 is a load pipeline, 454 is a store pipeline, and 455 is a vector register (VR. , 456 is ADD
Pipeline (denoted by ADD), 457 is the multiplication pipeline (M
ULTI), 458 represents the DEVIDE pipeline.

VCU450はベクトル命令を制御するユニットであり,制御
信号452により,VEU451での命令実行を制御する。
The VCU 450 is a unit that controls vector instructions, and the control signal 452 controls instruction execution in the VEU 451.

VEU451は,ベクトル命令を実行するユニットであり,MSU
40との間でベクトルデータの転送を行うロードパイプラ
イン453,ストアパイプライン454,およびベクトルデータ
を保持するVR455を持ち,さらにVR455からベクトルデー
タを読み出して演算を行い,結果をVR455に書き込む命
令を実行するために,それぞれ加算,乗算,除算用のAD
Dパイプライン456,MULTIパイプライン457,除算パイプラ
イン458をそなえている。
The VEU451 is a unit that executes vector instructions.
It has a load pipeline 453 that transfers vector data to and from 40, a store pipeline 454, and a VR455 that holds vector data. Furthermore, instructions that read the vector data from the VR455, perform an operation, and write the result to the VR455 AD for addition, multiplication, and division, respectively, to execute
It has a D pipeline 456, a MULTI pipeline 457, and a division pipeline 458.

SU0,SU1は,それぞれMCUを通してMSUから命令をフェッ
チする。そしてその命令がスカラ命令の場合には,自ユ
ニット内で処理し,ベクトル命令の場合には,VCUに送り
出す。
SU 0 and SU 1 fetch the instruction from MSU through MCU respectively. If the instruction is a scalar instruction, it is processed in its own unit, and if it is a vector instruction, it is sent to the VCU.

ここでVCUから見ると,ベクトル命令を実行できるユニ
ットはVEUがただ1つであるが,ベクトル命令を送って
くる依頼元はSU0とSU1の2つとなる。したがって,SU0
よびSU1からのベクトル命令が競合する場合には,一方
を選択して処理する必要がある。
From the perspective of the VCU, the VEU is the only unit that can execute vector instructions, but the request sources that send vector instructions are SU 0 and SU 1 . Therefore, when the vector instructions from SU 0 and SU 1 conflict, it is necessary to select one to process.

〔発明が解決しようとする問題点〕[Problems to be solved by the invention]

従来のマルチプロセッサシステムでは,複数のプロセッ
サが1つの特定プロセッサに処理を依頼する場合,依頼
元となる複数のプロセッサ間の競合制御を行う必要があ
り,そのためのオーバーヘッドにより処理速度が低下す
るという問題があった。
In a conventional multiprocessor system, when a plurality of processors request processing to one specific processor, it is necessary to perform contention control between the plurality of requesting processors, and the processing overhead is reduced due to the overhead. was there.

〔問題点を解決するための手段〕[Means for solving problems]

本発明は,上記した複数のプロセッサ(第1プロセッサ
と呼ぶ)間の競合制御を不要にし,特定プロセッサ(第
2プロセッサと呼ぶ)において,簡単迅速に使用権を切
り換え可能にするものである。
The present invention eliminates the need for contention control among a plurality of processors (referred to as a first processor) described above, and enables a specific processor (referred to as a second processor) to switch the usage right easily and quickly.

そのため本発明の構成は,複数の第1プロセッサからの
命令を1つの第2プロセッサで処理するマルチプロセッ
サシステムの命令制御方式において, 第2ブロセッサ内に現在使用権を与えている第1プロセ
ッサから送出された任意個数の命令を格納する命令バッ
ファを設けるとともに,当該命令を命令バッファに格納
する際には第1のプロセッサのうちの何れが要求元かを
示す情報を付加し,このバッアファから,現在使用権を
与えている第1プロセッサのうちの一つのプロセッサの
命令が全て実行されてなくなった状態を前記情報を用い
て検出することにより,第2プロセッサは,複数の第1
プロセッサの各々からの任意個数の命令ごとに第2プロ
セッサの使用権を複数の第1のプロセッサ間で変更して
新たに命令を受け付けることを特徴とするものである。
Therefore, according to the configuration of the present invention, in the instruction control system of the multiprocessor system in which the instructions from the plurality of first processors are processed by the single second processor, the first processor which is currently given the usage right in the second processor sends the instruction. An instruction buffer for storing an arbitrary number of instructions is provided, and when storing the instruction in the instruction buffer, information indicating which of the first processors is the request source is added. By using the information to detect a state in which all the instructions of one of the first processors to which the usage right has been given have not been executed, the second processor causes the plurality of first processors to operate.
It is characterized in that the right of use of the second processor is changed among a plurality of first processors for every arbitrary number of instructions from each of the processors and a new instruction is accepted.

第1図(a)は,本発明の原理的構成を示す図である。
図において,10はスカラユニットSU0,11はスカラユニッ
トSU1,12はベクトルユニットVU,101および111はバス,12
0および121は命令フェッチレジスタ,122はセレクタ,123
は命令発信バッファ,124はSU表示フラグ,125は命令群識
別回路,126は使用権設定回路を表す。
FIG. 1 (a) is a diagram showing the principle configuration of the present invention.
In the figure, 10 is a scalar unit SU 0 , 11 is a scalar unit SU 1 , 12 is a vector unit VU, 101 and 111 are buses, and 12
0 and 121 are instruction fetch registers, 122 is selector, 123
Is a command transmission buffer, 124 is an SU display flag, 125 is a command group identification circuit, and 126 is a usage right setting circuit.

ここでは,スカラユニットSU0,SU1が上述した第1プロ
セッサに対応し,ベクトルユニットVUが上述した第2プ
ロセッサに対応する。
Here, the scalar units SU 0 and SU 1 correspond to the above-mentioned first processor, and the vector unit VU corresponds to the above-mentioned second processor.

スカラユニットSU0あるいはSU1は,ベクトル命令の実行
が必要となったとき,それぞれバス101,111を経てベク
トルユニットVUに対して命令を送出する。
The scalar unit SU 0 or SU 1 sends an instruction to the vector unit VU via the buses 101 and 111, respectively, when it is necessary to execute the vector instruction.

ベクトルユニットVUでは,スカラユニットSU0,SU1から
送出された命令をそれぞれ命令フェッチレジスタ120,12
1にいったん格納し,さらにセレクタ122により一方を選
択して,すなわちVUの使用権を与えてあるスカラユニッ
トの側の命令フェッチレジスタを選択し,命令発信バッ
ファ123に転送する。
In the vector unit VU, the instructions sent from the scalar units SU 0 , SU 1 are fetched by the instruction fetch registers 120, 12 respectively.
The data is temporarily stored in 1, and one is selected by the selector 122, that is, the instruction fetch register on the side of the scalar unit to which the right to use the VU is given is selected and transferred to the instruction transmission buffer 123.

命令発信バッファ123は複数段のスタックで構成され、S
U0あるいはSU1から入力された命令列が順次格納され
る。またこのバッファに格納された命令は,入力順に読
み出され,ベクトル実行ユニットVECにより実行され
る。
The command transmission buffer 123 is composed of a stack of multiple stages, and S
Instruction sequences input from U 0 or SU 1 are stored sequentially. The instructions stored in this buffer are read in the order of input and executed by the vector execution unit VEC.

命令発信バッファ123の各段には,SU表示フラグ124が設
けられており,命令が格納されるごとにその命令の依頼
元(発行元)スカラユニットがSU0とSU1のいずれである
かを示す値が設定される。SU表示フラグ124の値は,使
用権設定回路126により設定される。
An SU display flag 124 is provided at each stage of the command transmission buffer 123, and each time the command is stored, it is determined whether the requester (issuer) scalar unit of the command is SU 0 or SU 1. The indicated value is set. The value of the SU display flag 124 is set by the usage right setting circuit 126.

命令群識別回路125は,命令発信バッファ123のSU表示フ
ラグ124を調べ,現在使用権を与えているスカラユニッ
トの命令がバッファから無くなったこと,すなわちその
スカラユニットについて,バッファに格納されていた命
令が全て実行され,新しい命令が供給されない状態とな
ったことを検出したとき,命令列の切れ目と判定して命
令群区切り信号を使用権設定回路126に送る。
The instruction group identification circuit 125 checks the SU display flag 124 of the instruction transmission buffer 123 to find that the instruction of the scalar unit to which the right of use is currently given has disappeared from the buffer, that is, the instruction stored in the buffer for that scalar unit. Is detected and it is detected that no new instruction is supplied, it is determined that the instruction sequence is a break and an instruction group delimiter signal is sent to the usage right setting circuit 126.

使用権設定回路126は,命令群識別回路125から命令群区
切り信号を送られたとき,使用権を,現在与えているス
カラユニットを他方のスカラユニットに変更し,それに
したがってセレクタ122を切り換える。そして新しく使
用権を与えたスカラユニットの側の命令フェッチレジス
タを介して入力される命令列について,命令発信バッフ
ァ123に格納する際,SU表示フラグ124にその新しく使用
権を与えたスカラユニットに対応する値を設定する。
When the instruction group break signal is sent from the instruction group identification circuit 125, the usage right setting circuit 126 changes the currently granted scalar unit to the other scalar unit and switches the selector 122 accordingly. Then, when the instruction sequence input via the instruction fetch register on the side of the scalar unit to which the new usage right is given is stored in the instruction transmission buffer 123, the SU display flag 124 corresponds to the scalar unit to which the new usage right is given. Set the value to

以上の動作は任意に繰り返すことができる。The above operation can be repeated arbitrarily.

〔作用〕[Action]

第1図(a)で説明した本発明の構成に基づく作用を,
第1図(b)に示す命令実行シーケンス例を用いて具体
的に説明する。
The operation based on the configuration of the present invention described with reference to FIG.
A specific description will be given with reference to the instruction execution sequence example shown in FIG.

図は,SU0とSU1においてそれぞれ実行される命令列とVU
による使用権移転制御を示したものである。なお記号V,
V′はそれぞれSU0,SU1のベクトル命令,S,S′はそれぞれ
SU0,SU1のスカラ命令を表している。
The figure shows the instruction sequence and VU executed in SU 0 and SU 1 , respectively.
It shows the transfer control of the right to use. The symbol V,
V ′ is the vector instruction of SU 0 and SU 1 , respectively, and S and S ′ are respectively
It represents a scalar instruction for SU 0 and SU 1 .

最初,VUの使用権はSU0に与えられているものとすると,S
TARTとともに,SU0はベクトル命令V1ないしV3をVUに送っ
て実行させる。続くスカラ命令S1,S2をSU0が実行してい
る間にVUでは命令列が途切れるため,VUは1つの命令群
が終了したものと判定し,使用権をSU1に移転する。こ
れによりSU1はベクトル命令V1′ないしV4′をVUに送っ
て実行させ,続くスカラ命令S1′,S2′をSU1で実行す
る。このためVUでは命令列が途切れてVUは次の命令群が
終了したものと判定し,VUは使用権をSU0に移転する。
First, assuming that the right to use VU is given to SU 0 , S
Together with TART, SU 0 sends vector instructions V 1 to V 3 to VU for execution. Since the instruction sequence is interrupted in VU while SU 0 is executing the subsequent scalar instructions S 1 and S 2 , VU determines that one instruction group is completed and transfers the usage right to SU 1 . As a result, SU 1 sends vector instructions V 1 ′ to V 4 ′ to VU for execution, and subsequent scalar instructions S 1 ′ and S 2 ′ are executed by SU 1 . Therefore, the VU determines that the instruction sequence has been interrupted and the VU has finished the next instruction group, and the VU transfers the usage right to SU 0 .

以下同様にして,SU0のV4ないしV6が,さらに使用権が変
更されてSU1のV5′ないしV7′がそれぞれVUにより実行
される。
In the same manner, V 4 to V 6 of SU 0 are further changed in usage right, and V 5 ′ to V 7 ′ of SU 1 are executed by VU, respectively.

本発明の原理を任意複数のスカラユニットに適用すれ
ば,それぞれの命令列について上述した方法でベクトル
ユニットに命令群を識別させて,命令群単位に各スカラ
ユニットに対する使用権の切り換えを行わせることがで
きる。
If the principle of the present invention is applied to an arbitrary plurality of scalar units, the vector unit is made to identify the instruction group by the method described above for each instruction sequence, and the instruction group unit is allowed to switch the usage right for each scalar unit. You can

〔実施例〕 第2図は,本発明の1実施例システムの構成図である。[Embodiment] FIG. 2 is a configuration diagram of a system according to an embodiment of the present invention.

図において,20はSU0,21はSU1,22はVUであり,第1図
(a)の10ないし12の要素に対応するものである。ま
た, 201,211は命令を転送するバス, 202,212は命令フェッチ禁止信号用の信号線, 220,230は命令フェッチレジスタVFSR0,VFSR1, 221,231は命令フェッチバッファVFB0,VFB1, 222,232は命令フェッチレジスタと命令バッファレジス
タを切り換えるセレクタSEL, 223,233は使用権を与えたスカラユニットの命令を選択
するAND回路, 224,234は使用権を設定するラッチ, 225,235は使用権の設定状態を切り換えるAND回路, 226,236は命令群の区切りを識別するNOR回路, 227,237は命令フェッチ禁止信号を生成する反転回路, 228は命令発信バッファ, 228a,228bはそれぞれベクトル命令の依頼元のSU0とSU1
とを表示するSU表示フラグ, 229はバス, をそれぞれ示している。
In the figure, 20 is SU 0 , 21 is SU 1 and 22 is VU, which corresponds to the elements 10 to 12 in FIG. 1 (a). In addition, 201 and 211 are busses for transferring instructions, 202 and 212 are signal lines for instruction fetch prohibition signals, 220 and 230 are instruction fetch registers VFSR 0 , VFSR 1 , 221, and 231 are instruction fetch buffers VFB 0 , VFB 1 , 222, and 232 are instruction fetch registers and instructions. Selector SEL, 223, 233 for switching the buffer register is an AND circuit for selecting the instruction of the scalar unit to which the usage right is given, 224, 234 is a latch for setting the usage right, 225, 235 is an AND circuit for switching the setting status of the usage right, 226, 236 is a group of instructions. A NOR circuit for identifying a break, 227 and 237 are inversion circuits that generate an instruction fetch prohibition signal, 228 is an instruction output buffer, and 228a and 228b are SU 0 and SU 1 which are request sources of vector instructions, respectively.
SU display flag for displaying and, 229 for bus, respectively.

次に動作を説明する。たとえばSU0からバス201を通して
命令フェッチレジスタVFSR0220にベクトル命令が送られ
たものとする。このとき,命令フェッチバッファVFB022
1は空きであり,またSU0のVU使用権を示すラッチ224が
セット状態であれば,セレクタSEL222,AND回路223を通
して,命令発信バッファ228に命令が伝達され格納され
るとともに,SU表示フラグ228aに“1"がセットされる。
Next, the operation will be described. For example, assume that a vector instruction is sent from SU 0 to the instruction fetch register VFSR 0 220 via the bus 201. At this time, the instruction fetch buffer VFB 0 22
If 1 is empty and the latch 224 indicating the VU usage right of SU 0 is in the set state, the command is transmitted and stored in the command transmission buffer 228 through the selector SEL222 and AND circuit 223, and the SU display flag 228a is also stored. Is set to "1".

命令発信バッファ228に格納された命令は,その後読み
出され,命令発信バッファ228からバス229を通して,図
示省略されているベクトル実行ユニットVEUに発信され
て実行される。ラッチ224と234は背反の関係にあり,ラ
ッチ224が“1"であるとき,ラッチ234は“0"である。つ
まりSU0にVUの使用権が与えられているときには,SU1はV
Uの使用権をもっていない。さらにこのとき反転回路237
を通して,信号線212により,SU1に命令フェッチ禁止信
号が送られる。
The instruction stored in the instruction transmission buffer 228 is then read out, transmitted from the instruction transmission buffer 228 through the bus 229 to the vector execution unit VEU (not shown) and executed. The latches 224 and 234 are in an antithetical relationship, and when the latch 224 is “1”, the latch 234 is “0”. That is, when SU 0 is given the right to use VU, SU 1
I do not have the right to use U. Further, at this time, the inverting circuit 237
Through, a signal line 212 sends an instruction fetch prohibition signal to SU 1 .

この命令フェッチ禁止信号を受けたSU1は,VUへの命令の
送出を停止する。なお,この命令フェッチ禁止制御が行
われる前に送られた命令は,命令フェッチレジスタVFSR
1230から命令フェッチバッファVFB1231に送られ,そこ
に蓄えられる。
Upon receiving this instruction fetch prohibition signal, SU 1 stops sending instructions to VU. Note that the instruction sent before this instruction fetch prohibition control is executed is the instruction fetch register VFSR.
It is sent from the 1 230 to the instruction fetch buffer VFB 1 231, and stored there.

ここでSU0からの命令送出が途切れ,他方命令発信バッ
ファ228からの命令発信が進んでバッファが空きになる
と,NOR回路226の入力である各段のSU表示フラグ228aは
全て“0"となってNOR回路226から,1つの命令群の終りを
示す命令群区切信号(=“1")が出力される。これによ
りAND回路235の出力が“1"になり,ラッチ225はリセッ
トされ,ラッチ235がセットされる。つまりVUの使用権
は,SU0からSU1に移される。
Here, when the command transmission from SU 0 is interrupted and the command transmission from the command transmission buffer 228 progresses and the buffer becomes empty, the SU display flags 228a at each stage, which are inputs to the NOR circuit 226, are all set to "0". Then, the NOR circuit 226 outputs an instruction group division signal (= "1") indicating the end of one instruction group. As a result, the output of the AND circuit 235 becomes "1", the latch 225 is reset, and the latch 235 is set. That is, the right to use VU is transferred from SU 0 to SU 1 .

これにより,命令フェッチバッファVFB1231に先に蓄え
られていたベクトル命令は,セレクタSEL232,AND回路23
3を通して命令発信バッファ228に伝達される。この命令
は命令発信バッファ228に格納され,同時にそのSU表示
フラグ228bは“1"にセットされる。
As a result, the vector instruction that was previously stored in the instruction fetch buffer VFB 1 231 will be stored in the selector SEL232 and AND circuit 23.
3 is transmitted to the command transmission buffer 228. This command is stored in the command transmission buffer 228, and at the same time, its SU display flag 228b is set to "1".

命令発信バッファ228に格納されたSU1からの命令は,そ
の後バス229を通してVEUに発信される。そしてNOR回路2
36は上述したNOR回路226と同様に機能し,命令群の区切
りを識別したとき,ラッチ224,234の状態を反転され,
使用権の設定を変更する。この動作は必要なだけ繰り返
される。
The command from SU 1 stored in command transmission buffer 228 is then transmitted to VEU via bus 229. And NOR circuit 2
36 functions similarly to the NOR circuit 226 described above, and when the delimiter of the instruction group is identified, the states of the latches 224 and 234 are inverted,
Change the usage rights setting. This operation is repeated as many times as necessary.

〔発明の効果〕〔The invention's effect〕

本発明によれば,第2プロセッサが命令群の区切りを自
動的に識別して各第1プロセッサに与える使用権を切り
換えるので第1プロセッサ間の競合制御を効率的に行う
ことができる。
According to the present invention, the second processor automatically identifies the delimiter of the instruction group and switches the usage right given to each first processor, so that the contention control between the first processors can be efficiently performed.

すなわちたとえば連続したベクトル命令の後,しばらく
ベクトル命令が存在しないときには,ベクトルユニット
のみの判断で簡単に他のSUに使用権をわたすことができ
る。
That is, for example, when there is no vector instruction for a while after a succession of vector instructions, it is possible to easily give the usage right to another SU by the judgment of only the vector unit.

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

第1図(a)は本発明の原理的構成図,第1図(b)は
本発明の作用を説明する命令実行シーケンス図,第2図
は本発明の1実施例システムの構成図,第3図はマルチ
プロセッサシステムの1例の構成図,第4図はVUの内部
構成図である。 第1図(a)において, 10:スカラユニットSU0 11:スカラユニットSU1 12:ベクトルユニットVU 120,121:命令フェッチレジスタ 122:セレクタ 123:命令発信バッファ 124:SU表示フラグ 125:命令群識別回路 126:使用権設定回路
1 (a) is a block diagram showing the principle of the present invention, FIG. 1 (b) is an instruction execution sequence diagram for explaining the operation of the present invention, and FIG. 2 is a block diagram of a system of one embodiment of the present invention. FIG. 3 is a block diagram of an example of the multiprocessor system, and FIG. 4 is an internal block diagram of the VU. In FIG. 1 (a), 10: scalar unit SU 0 11: scalar unit SU 1 12: vector unit VU 120, 121: instruction fetch register 122: selector 123: instruction output buffer 124: SU display flag 125: instruction group identification circuit 126 : Usage right setting circuit

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】複数の第1のプロセッサ(10,11)からの
命令を1つの第2プロセッサ(12)で処理するマルチプ
ロセッサシステムの命令制御方式において, 第2ブロセッサ(12)内に現在使用権を与えている第1
プロセッサから送出された任意個数の命令を格納する命
令バッファを設けるとともに,当該命令を命令バッファ
に格納する際には第1のプロセッサのうちの何れが要求
元かを示す情報を付加し,このバッファから,現在使用
権を与えている第1プロセッサのうちの一つのプロセッ
サの命令が全て実行されてなくなった状態を前記情報を
用いて検出することにより, 第2プロセッサ(12)は,複数の第1プロセッサ(10,1
1)の各々からの任意個数の命令ごとに第2プロセッサ
(12)の使用権を複数の第1のプロセッサ間で変更して
新たに命令を受け付けることを特徴とするマルチプロセ
ッサシステムの命令制御方式。
1. An instruction control method for a multiprocessor system in which instructions from a plurality of first processors (10, 11) are processed by a single second processor (12), and is currently used in a second processor (12). The first empowering
An instruction buffer for storing an arbitrary number of instructions sent from the processor is provided, and when storing the instruction in the instruction buffer, information indicating which of the first processors is the request source is added, and this buffer is added. From the above, the second processor (12) detects a state in which all the instructions of one of the first processors to which the right of use is currently given have not been executed, and the second processor (12) has a plurality of instructions. 1 processor (10,1
An instruction control method for a multiprocessor system, characterized in that the right to use the second processor (12) is changed among a plurality of first processors for each arbitrary number of instructions from (1) and a new instruction is accepted. .
JP60159497A 1984-11-30 1985-07-19 Instruction control method for multiprocessor system Expired - Fee Related JPH0685166B2 (en)

Priority Applications (7)

Application Number Priority Date Filing Date Title
JP60159497A JPH0685166B2 (en) 1985-07-19 1985-07-19 Instruction control method for multiprocessor system
AU50454/85A AU557807B2 (en) 1984-11-30 1985-11-28 Multiprocessor system
KR1019850008891A KR900001999B1 (en) 1984-11-30 1985-11-28 Multi processor system
BR8506010A BR8506010A (en) 1984-11-30 1985-11-29 MULTIPROCESSOR SYSTEM
EP85308697A EP0183560B1 (en) 1984-11-30 1985-11-29 A multiprocessor system
DE8585308697T DE3579121D1 (en) 1984-11-30 1985-11-29 MULTIPROCESSOR SYSTEM.
ES549455A ES8800769A1 (en) 1984-11-30 1985-11-29 A multiprocessor system.

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60159497A JPH0685166B2 (en) 1985-07-19 1985-07-19 Instruction control method for multiprocessor system

Publications (2)

Publication Number Publication Date
JPS6220064A JPS6220064A (en) 1987-01-28
JPH0685166B2 true JPH0685166B2 (en) 1994-10-26

Family

ID=15695057

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60159497A Expired - Fee Related JPH0685166B2 (en) 1984-11-30 1985-07-19 Instruction control method for multiprocessor system

Country Status (1)

Country Link
JP (1) JPH0685166B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63198151A (en) * 1987-02-13 1988-08-16 Fujitsu Ltd Instruction control system for multiprocessor

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5461851A (en) * 1977-10-27 1979-05-18 Fujitsu Ltd Data processing system
JPS56152066A (en) * 1980-04-24 1981-11-25 Toshiba Corp Information processing system

Also Published As

Publication number Publication date
JPS6220064A (en) 1987-01-28

Similar Documents

Publication Publication Date Title
EP0087978B1 (en) Information processing unit
US5293500A (en) Parallel processing method and apparatus
JPS6131502B2 (en)
JPH0766329B2 (en) Information processing equipment
JPH0562387B2 (en)
JP3137117B2 (en) High-speed processing computer
JPH06105460B2 (en) Multiprocessor processor switching device
EP0363889B1 (en) Vector processor using buffer for preparing vector data
US6457121B1 (en) Method and apparatus for reordering data in X86 ordering
JPH06119297A (en) Method and apparatus for determining executing order of instruction in data processing system
JP2518293B2 (en) Data Flow Processor
US6571301B1 (en) Multi processor system and FIFO circuit
JPS59106075A (en) Data processing system
JPH0685166B2 (en) Instruction control method for multiprocessor system
JPS6161416B2 (en)
US6195747B1 (en) System and method for reducing data traffic between a processor and a system controller in a data processing system
JPH05282242A (en) Bus control system
JPS629460A (en) Instruction control system for multi-processor system
JP3982077B2 (en) Multiprocessor system
JPH0452488B2 (en)
JPH022178B2 (en)
JP2643116B2 (en) Main memory controller
JPH0812661B2 (en) Instruction processing order control system
JPS6267648A (en) Processing system for exclusive control instruction
JPS6343784B2 (en)

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees