JPS62214467A - Multiprocessor instruction control system - Google Patents

Multiprocessor instruction control system

Info

Publication number
JPS62214467A
JPS62214467A JP5872786A JP5872786A JPS62214467A JP S62214467 A JPS62214467 A JP S62214467A JP 5872786 A JP5872786 A JP 5872786A JP 5872786 A JP5872786 A JP 5872786A JP S62214467 A JPS62214467 A JP S62214467A
Authority
JP
Japan
Prior art keywords
vector
unit
scalar
instruction
timer
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
JP5872786A
Other languages
Japanese (ja)
Inventor
Kazushi Sakamoto
一志 坂本
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 JP5872786A priority Critical patent/JPS62214467A/en
Publication of JPS62214467A publication Critical patent/JPS62214467A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To prevent the processing of a vector instruction from being kept waiting for a long time by giving the use right of a vector unit to a scalar unit where the processing is suspended when the waiting time of the processing reaches a prescribed value. CONSTITUTION:If a vector instruction is taken out in a scalar unit 21 and the unit 21 is set to the state waiting for start when the vector instruction from a scalar unit 20 is executed in a vector unit 1, a vector timer 122 corresponding to the scalar unit 21 is started. When a specific time elapses thereafter, an instruction switching control circuit 123 gives the use right of the vector unit 1 to the scalar unit 21 by the change of the value of a specific bit in the timer 122. As the result, the vector instruction in the waiting state in the scalar unit 21 is supplied to the vector unit 1 and is processed.

Description

【発明の詳細な説明】 (目 次〕 概要 産業上の利用分野 従来の技術と発明が解決しようとする問題点問題点を解
決するための手段 作用 実施例 発明の効果 〔概要〕 少なくとも、スカラ命令を処理する複数個のスカラユニ
ット(SUo、t) と、これらのスカラユニット(S
UO,l)から送られて(るベクトル命令を処理するベ
クトルユニット(VU)とから構成されるマルチプロセ
ッサシステムにおいて、該ベクトルユニッ) (VU)
内に、上記複数個のスカラユニット(SU。+1)の内
の1つに与えるベクトルユニット使用権を変更する命令
切り換え制御回路(ICC)と、各スカラユニット(S
ue、 +)毎にベクトル命令の処理が待たされている
時間をカウントするベクトルタイマ(VUTO,νUT
I)とを設けることにより、各ベクトルタイマ(VLI
To、VIIT+)の特定のビットが変化したことを検
出した時、該ベクトルタイマ(VUTo、VUToに対
応するスカラユニット(SUoy)に、該ベクトルユニ
ッl−(VU)に対する使用権を与えるようにしたもの
である。
[Detailed Description of the Invention] (Table of Contents) Overview Industrial Application Fields Prior Art and Problems to be Solved by the Invention Means for Solving Problems Action Embodiments Effects of the Invention [Overview] At least scalar instructions A plurality of scalar units (SUo, t) that process
In a multiprocessor system consisting of a vector unit (VU) that processes vector instructions sent from (UO, l), the vector unit (VU)
An instruction switching control circuit (ICC) for changing the right to use the vector unit given to one of the plurality of scalar units (SU.+1), and each scalar unit (SU.
A vector timer (VUTO, νUT) that counts the waiting time for vector instruction processing for each
I), each vector timer (VLI
When a change in a specific bit of the vector timer (VUTo, VIIT+) is detected, the scalar unit (SUoy) corresponding to the vector timer (VUTo, VUTo) is given the right to use the vector unit l-(VU). It is something.

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

本発明は、マルチプロセッサ命令制御方式に係り、特に
スカラ命令を処理する複数個のスカラユニット(SU)
と、これらのスカラユニット(SO)から送られてくる
ベクトル命令を処理するベクトルユニット(VU)とか
ら構成されるマルチプロセッサシステムにおいて、各ス
カラユニソト(SU)のベクトルユニッI−(VU)に
対する使用権を動的に変更する制御方式に関する。
The present invention relates to a multiprocessor instruction control system, and in particular, a plurality of scalar units (SU) that process scalar instructions.
In a multiprocessor system consisting of a vector unit (VU) that processes vector instructions sent from these scalar units (SO), each scalar unit (SU) has the right to use the vector unit I-(VU). Concerning a control method that dynamically changes the

一般に、スカラユニット(SU)と、ベクトルユニット
(VU)とから構成される科学技術用のマルチプロセッ
サシステムにおいては、ベクトルユニット(VU)の処
理能力の増大化に対応して、スカラユニット(SU)を
複数個設けることにより、スカラ命令と、ベクトル命令
の処理の適性化を図っている。
In general, in multiprocessor systems for science and technology that are composed of a scalar unit (SU) and a vector unit (VU), the scalar unit (SU) By providing a plurality of , it is possible to optimize the processing of scalar instructions and vector instructions.

この場合、該複数個のスカラユニット(SO)を切り換
える制御が必要となる。
In this case, control for switching the plurality of scalar units (SO) is required.

一方、最近の計算機技術の進歩に伴って、上記科学技術
用のマルチプロセッサシステムもオンライン化される動
向にあり、マンマシンインタフェースを向上させる為に
、端末の数の増加と共に、益々そのレスポンスタイムの
向上が要求されるようになっている。
On the other hand, with recent advances in computer technology, there is a trend toward online multiprocessor systems for science and technology, and in order to improve the man-machine interface, as the number of terminals increases, response times are becoming increasingly shorter. Improvement is now required.

又、最近のデータの処理量の多様化に伴って、プログラ
ム量も益々増加する傾向にあり、ファイルメモリ(FM
)等の入出力装置(Ilo)が増加しており、上記端末
からのデータ入力に対する入出力装置(Ilo)の応答
性の向上、更には該入出力装置(■10)でのオーバラ
ンエラーに対する対策が要求され、る。
In addition, with the recent diversification of the amount of data processed, the amount of programs is also increasing, and file memory (FM
) and other input/output devices (Ilo) are increasing, and it is necessary to improve the responsiveness of the input/output devices (Ilo) to data input from the above-mentioned terminals, as well as countermeasures against overrun errors in the input/output devices (■10). is required.

かかる端末7入出力装置(Ilo)に対する制御は、上
記スカラユニッI−(SIJ)において発行される入出
力命令(SIO)によって実行される為、上記1つのベ
クトルユニット(VIJ)に、複数個のスカラユニット
(SO)を接続し、該ベクトルユニット(Vtl)の使
用権を各スカラユニッ) (SO)に切り換えて与える
マルチプロセッサシステムにおいては、各スカラユニッ
ト(SU)に対して、該ベクトルユニット(VU)に対
する使用権が与えられていない為に、上記端末/入出力
装置(Ilo) E対する入出力命令の発行が待たされ
ることを防止する為の効果的な方策が要求されるように
なってきた。
Since control over the terminal 7 input/output device (Ilo) is executed by the input/output instruction (SIO) issued in the scalar unit I-(SIJ), a plurality of scalar In a multiprocessor system in which units (SO) are connected and the right to use the vector unit (Vtl) is switched to each scalar unit (SO), the vector unit (VU) is assigned to each scalar unit (SU). Therefore, effective measures have been required to prevent the issuance of input/output commands to the terminal/input/output device (Ilo) E from having to wait.

〔従来の技術と発明が解決しようとする問題点〕第5図
は、従来の科学技術用のマルチプロセッサシステムの構
成例を示した図である。
[Prior art and problems to be solved by the invention] FIG. 5 is a diagram showing an example of the configuration of a conventional multiprocessor system for science and technology.

本図において、1はベクトル命令を処理するベクトルユ
ニット(VU) 、 20.21はスカラ命令を処理す
るスカラユニット(SU’o、t)、3は主記憶ユニッ
ト(MSU) 、 4は記憶制御ユニット(MCU) 
、 11はベクトル命令を実行するユニット(VEU)
で、主記憶ユニット(MSU) 3との間でデータ転送
を行うロードパイプライン(LOAD) 110と、ス
トアパイブライン(STOI?)111.及びベクトル
データを保持するベクトルレジスタ(VR) 112と
、更に該ベクトルレジスタ(VR) 112からベクト
ルデータをリードし演算を行い、結果をベクトルレジス
タ(VR) 112に書き込むベクトル命令を実行する
為の加算パイプライン(ADD) 113、乗算パイプ
ライン(MULIT) 114.除算パイプライン(D
IVIDE) 115が備えられている。そして、12
はベクトル命令を制御するユニット(VCU)で、上記
ベクトル命令実行ユニッ)(VEU) 11を制御する
In this figure, 1 is a vector unit (VU) that processes vector instructions, 20.21 is a scalar unit (SU'o, t) that processes scalar instructions, 3 is a main storage unit (MSU), and 4 is a storage control unit. (MCU)
, 11 is a unit (VEU) that executes vector instructions.
A load pipeline (LOAD) 110 that transfers data to and from the main storage unit (MSU) 3, and a store pipeline (STOI?) 111. and a vector register (VR) 112 that holds vector data, and addition for executing a vector instruction that reads vector data from the vector register (VR) 112, performs an operation, and writes the result to the vector register (VR) 112. Pipeline (ADD) 113, Multiplication pipeline (MULIT) 114. Division pipeline (D
IVIDE) 115 is provided. And 12
is a unit (VCU) that controls vector instructions, and controls the vector instruction execution unit (VEU) 11 described above.

一般に、従来の技術では、科学技術用のプログラムの構
成によっては、ベクトルユニット(VU) 1の使用率
が非常に小さくなってしまうことがあり、本図に示すよ
うに、処理能力の大きいベクトルユニッ)(VU)1に
対して、複数(本例では、2個)のスカラユニット(S
Uo、1) 20,21を接続し、ベクトルユニット(
VU) 1に投入されるベクトル命令を増加させること
により、当該ベクトルユニット(VU) 1の使用率を
向上させるマルチプロセッサシステムが考塞された。
In general, with conventional technology, depending on the structure of the science and technology program, the usage rate of vector unit (VU) 1 may become extremely small. ) (VU), multiple (in this example, two) scalar units (S
Uo, 1) Connect 20 and 21 and create a vector unit (
A multiprocessor system has been developed that improves the utilization of the vector unit (VU) 1 by increasing the number of vector instructions input to the vector unit (VU) 1.

然しなから、このようなマルチプロセッサシステムにお
いては、1つのスカラユニット(Sue、 又は5UI
)が、1つのベクトルユニッl−(VU)を長時間使用
すると、他のスカラユニット(SUI、又は5UO)の
処理が長時間待たされ、該他のスカラユニソト(SUI
、又は5Uo)で実行される端末、或いは入出内装ff
(Ilo)のレスポンスタイムが遅くなったり、オーバ
ランエラーを起こす危険があると云う問題があった。
However, in such a multiprocessor system, one scalar unit (Sue, or 5UI
) uses one vector unit (VU) for a long time, the processing of the other scalar unit (SUI or 5UO) is made to wait for a long time, and the other scalar unit (SUI)
, or 5Uo), or an input/output internal ff
There were problems in that the response time of (Ilo) was slow and there was a risk of an overrun error occurring.

本発明は上記従来の欠点に鑑み、1つのベクトルユニッ
ト(VU)に対して、複数個のスカラユニット(5口。
In view of the above conventional drawbacks, the present invention provides a plurality of scalar units (5 units) for one vector unit (VU).

、〜)が接続されているマルチプロセッサシステムにお
いて、各スカラユニット(SUo、t〜)でのベクトル
命令の処理が長時間待たされることのないマルチプロセ
ッサ命令制御方式を提供することを目的とするものであ
る。
, ~) are connected, the purpose of this is to provide a multiprocessor instruction control method that does not require the processing of vector instructions in each scalar unit (SUo, t~) to wait for a long time. It is.

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

第1図は本発明のマルチプロセッサシステムの原理ブロ
ック図である。
FIG. 1 is a block diagram of the principle of a multiprocessor system according to the present invention.

本発明においては、少なくとも、スカラ命令を処理する
複数個のスカラユニット(SUO,I) 20.21と
、これらのスカラユニット(SUO,l) 20.21
から送られてくるベクトル命令を処理するベクトルユニ
ット(V[I) 1とから構成されるマルチプロセッサ
システムにおいて、上記ベクトルユニット(VU) 1
内に、上記複数個のスカラユニッ1−(suo、t) 
20.21の内の1つに与えるベクトルユニット(VU
) 1の使用権を変更する命令切り換え制御回路(IC
C) 123と、各スカラユニット(SO(1,1) 
20.21毎に、ベクトルユニット(VU) 1の使用
権が与えられていない為に、該ベクトル命令の処理が待
たされている時間を計数すルヘクl−ルタイマ(VUT
o、Vt1T+) 121゜122とを備え、上記ベク
トルタイ?(VUTO,VUTI)121.122のそ
れぞれにおいて、特定のビットが変化したことにより、
そのベクトルタイマ(VUT、、VUT1) 121,
122 ニ対応するスカラユニット(SUO,1)20
.21に、上記ベクトルユニット(VU) 1に対する
使用権を与えるように構成する。
In the present invention, at least a plurality of scalar units (SUO, I) 20.21 that process scalar instructions, and these scalar units (SUO, l) 20.21
In a multiprocessor system consisting of a vector unit (V[I) 1 that processes vector instructions sent from a vector unit (V[I) 1, the vector unit (VU) 1
within, the plurality of scalar units 1-(suo, t)
20. Vector unit (VU) given to one of 21
) Instruction switching control circuit (IC
C) 123 and each scalar unit (SO(1,1)
20. Every 21 cycles, a vector unit (VU) 1 is not given the right to use, so a VU timer (VUT
o, Vt1T+) 121°122, and the above vector tie? (VUTO, VUTI) In each of 121.122, due to a change in a specific bit,
Its vector timer (VUT, , VUT1) 121,
122 D Corresponding SCARA unit (SUO, 1) 20
.. 21 is configured to give usage rights to the vector unit (VU) 1.

〔作用〕[Effect]

即ち、本発明によれば、少なくとも、スカラ命令を処理
する複数個のスカラユニット(SIJo、+)と、これ
らのスカラユニット(SUO1+)から送られて(るベ
クトル命令を処理するベクトルユニット(VU)とから
構成されるマルチプロセッサシステムにおいて、該ベク
トルユニット(VU)内に、上記複数個のスカラユニッ
ト(SUo、t)の内の1つに与えるベクトルユニット
使用権を変更する命令切り換え制御回路(ICC)と、
各スカラユニット(SUo、+)毎にベクトル命令の処
理が待たされている時間をカウントするベクトルタイマ
(VUTo、VUT1)  とを設けることにより、各
ベクトルタイマ(VUTo、VUTOの特定のビットが
変化したことを検出した時、該ベクトルタイマ(VUT
o、VUTI)に対応するスカラユニット(SUO,l
)に、該ベクトルユニッ) (VU)に対する使用権を
与えるようにしたものであるので、ベクトル命令の処理
待ちの為に、それ以降のスカラ命令の処理が長時間待た
されることがなくなり、端末、入出力装置(Ilo)に
対する悪影響を少なくしたマルチプロセッサシステムが
構築できる効果がある。
That is, according to the present invention, at least a plurality of scalar units (SIJo, +) that process scalar instructions, and a vector unit (VU) that processes vector instructions sent from these scalar units (SUO1+). In the multiprocessor system, the vector unit (VU) includes an instruction switching control circuit (ICC) for changing the right to use the vector unit given to one of the plurality of scalar units (SUo, t). )and,
By providing a vector timer (VUTo, VUT1) for each scalar unit (SUo, +) to count the time that vector instruction processing is waited, it is possible to detect when a specific bit of each vector timer (VUTo, VUTO has changed). When this is detected, the vector timer (VUT
o, VUTI) corresponding to the scalar unit (SUO, l
) is given the right to use the vector unit (VU), so the processing of subsequent scalar instructions does not have to wait for a long time while waiting for vector instruction processing, and the terminal, This has the effect of making it possible to construct a multiprocessor system with less adverse effects on the input/output device (Ilo).

〔実施例〕〔Example〕

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

第2図は本発明の一実施例を示した図であって、ベクト
ル命令制御ユニット(VCU)の詳細を示しており、第
3図はベクトルタイマ変化検出回路の詳細を示した図で
あり、第4図は本発明による命令処理の一例を示した図
であって、第2図における命令切り換え制御回路(IC
C) 123a、b、及びベクトルタイマ(VUT(+
、 VUTυ121.122及びその関連機構が本発明
を実施するのに必要な手段である。尚、全図を通して同
じ符号は同じ対象物を示している。
FIG. 2 is a diagram showing an embodiment of the present invention, showing details of a vector instruction control unit (VCU), and FIG. 3 is a diagram showing details of a vector timer change detection circuit. FIG. 4 is a diagram showing an example of instruction processing according to the present invention, in which the instruction switching control circuit (IC) in FIG.
C) 123a, b, and vector timer (VUT(+
, VUTυ121.122 and its related mechanisms are the necessary means for carrying out the present invention. Note that the same reference numerals indicate the same objects throughout the figures.

先ず、スカラユニソト(SUo) 20からベクトルフ
ェッチストレージレジスタ (以下、VFSRoと云う
) 1241にベクトル命令が送出される。
First, a vector instruction is sent from the scalar unisoto (SUo) 20 to the vector fetch storage register (hereinafter referred to as VFSRo) 1241.

この時、ベクトルプリデコードストレージレジスタ(以
下、VPSR,と云う) 1245と、ベクトルフェッ
チバッファ (以下、VFBOと云う> 1242の両
方に命令がないと、VPSRO1241からVPSR,
1245に該ベクトル命令が移動する。
At this time, if there is no instruction in both the vector predecode storage register (hereinafter referred to as VPSR) 1245 and the vector fetch buffer (hereinafter referred to as VFBO) 1242, the VPSR,
The vector instruction is moved to 1245.

Vl”SR,+245か、或いはVFBO1242にベ
クトル命令が入っている時は、VIISRO1241か
らVFBo 1242にベクトル命令がバッファリング
される。
Vl''SR, +245 or when a vector instruction is contained in VFBO 1242, the vector instruction is buffered from VIISRO 1241 to VFBO 1242.

VPSR,1245から先行命令が抜けるときに、VF
BO1242にベクトル命令が入ってくると、該VFI
lo 1242からセレクタ(SEL) 1244を通
って、次のタイミングにおいて、VPSR,1245に
該ベクトル命令が入力される。
When the preceding instruction exits from VPSR, 1245, VF
When a vector instruction enters BO1242, the corresponding VFI
The vector instruction is input from lo 1242 to VPSR 1245 at the next timing via selector (SEL) 1244.

以上の制御はフェッチコントロールO(以下、FC。The above control is referred to as fetch control O (hereinafter referred to as FC).

と云う) 、1243によって実行される。), 1243.

上記(7)VPSRo 1425はデコーダ(DEC)
 124Bニよるベクトル命令のデコード、及び例外チ
ェック回路(ECo) 1249で例外チェックを行う
為の命令レジスタである。
Above (7) VPSRo 1425 is a decoder (DEC)
This is an instruction register for decoding vector instructions by 124B and performing exception checking by an exception check circuit (ECo) 1249.

又、上記FC,1243はVFBO1242,及びVP
SRO1245内の命令の数をカウントしており、VF
RO1242が一杯になると、オアゲー)(OR) 1
246を通して、VU FULLの信号をスカラユニッ
ト(SUo) 20に送出し、スカラユニット(SUo
) 20からの命令の送出を抑止するように機能する。
Also, the above FC, 1243 is VFBO1242, and VP
The number of instructions in SRO1245 is counted, and VF
When RO1242 is full, OR game) (OR) 1
246, the VU FULL signal is sent to the scalar unit (SUo) 20, and the scalar unit (SUo)
) Functions to inhibit the sending of instructions from 20.

以上の動作は、スカラユニット(SU+) 21から送
出されるベクトル命令に関しても全く同じように行われ
る。
The above operation is performed in exactly the same way for vector instructions sent from the scalar unit (SU+) 21.

命令切り換え制御部(ISC) 123bにおいては、
スカラユニット(su1) 20及びスカラユニット(
SUO21のベクトルユニット(VU) 1の使用権を
定めるセット/リセットラッチ(SR) 1234と1
235を、それぞれのスカラユニット(SUO,I) 
20.21に対応して備えている。
In the instruction switching control section (ISC) 123b,
Scalar unit (su1) 20 and Scalar unit (
Set/reset latch (SR) 1234 and 1 determines the right to use SUO21 vector unit (VU) 1
235, each scalar unit (SUO, I)
20.21.

ラッチ(SR) 1234の出力が0°であると、スカ
ラユニッl−(suo) 20は、VU使用権を与えら
れていないことを示している。この時、上記オアゲート
(OR) 1246を通して、VU FULL (7)
信号をスカラユニット(Sue) 20に送出し、スカ
ラユニソI−(sue)20からの命令の送出を抑止す
る。
When the output of latch (SR) 1234 is 0°, it indicates that SCARA unit l-(suo) 20 is not granted VU usage rights. At this time, through the above OR gate (OR) 1246, VU FULL (7)
A signal is sent to the scalar unit (Sue) 20, and the sending of instructions from the scalar unit (Sue) 20 is suppressed.

ラッチ(SR) 1234の出力が1′テあると、VP
SR01245からアンド回路1200を通して、ベク
トルキューステージレジスタ (以下、VQSRと云う
)126へ命令コードが送られる。
When the output of latch (SR) 1234 is 1'te, VP
An instruction code is sent from the SR01245 to the vector queue stage register (hereinafter referred to as VQSR) 126 through the AND circuit 1200.

同時に、デコーダ(DEC) 1248からデコード信
号がアンド回路1202を通して、ベクトル命令管理(
VIS) 127内のVEUコアトロールユニット(V
HU CU) 1274に送出される。
At the same time, a decode signal from a decoder (DEC) 1248 passes through an AND circuit 1202 to vector instruction management (
VIS) VEU Core Troll Unit (V
HU CU) 1274.

該ベクトル命令管理(VIS) 127はベクトル命令
の開始と、実行を管理しており、レジスタ1273は実
行中の命令コードを保持しておくもので、ここから第1
図のベクトル命令実行ユニット(VEU)11に命令コ
ードが送出される。
The vector instruction management (VIS) 127 manages the start and execution of vector instructions, and the register 1273 holds the instruction code being executed.
An instruction code is sent to the vector instruction execution unit (VEU) 11 shown in the figure.

上記VEIJ:17トロールユニツト(VEU CO)
 1274では、上記レジスタ1273の命令コードと
、ベクトル命令実行ユニッ1−(VEU) 11から送
られてくる図示していない制御信号によって、実行中の
命令を管理する。
Above VEIJ: 17 Troll Unit (VEU CO)
At 1274, the instruction being executed is managed by the instruction code in the register 1273 and a control signal (not shown) sent from the vector instruction execution unit 1-(VEU) 11.

以上の動作はラッチ(SR) 1235が1゛の時でも
、全く同じように機能する。
The above operation functions in exactly the same way even when the latch (SR) 1235 is 1.

ラッチ(SR) 1234と1235とは、それぞれ排
他の関係にあり、ラッチ(SR) 1234の出力が°
1゛の時に、ベクトルタイマ変化検出回路(以下、VT
CDと云う) 123aからのセット信号1231が送
出されてくると、アンド回路1239の出力が“1゛と
なり、ラッチ(SI?) 1234はリセットされると
共に、ラッチ(SR) 1235がセットされ、ラッチ
(SR) 1235の出力が1゛となる。
Latch (SR) 1234 and 1235 are in an exclusive relationship, and the output of latch (SR) 1234 is
1, the vector timer change detection circuit (hereinafter referred to as VT
When a set signal 1231 is sent from the CD (CD) 123a, the output of the AND circuit 1239 becomes "1", the latch (SI?) 1234 is reset, and the latch (SR) 1235 is set. (SR) The output of 1235 becomes 1.

次に、VTCD 123aからのセント信号1230が
送出されてくると、アンド回路1238の出力がl゛と
なり、ラッチ(SR) 1235はリセットされると共
に、ラッチ(SR) 1234がセットされる。以降同
じ動作が繰り返される。
Next, when the cent signal 1230 is sent from the VTCD 123a, the output of the AND circuit 1238 becomes l', the latch (SR) 1235 is reset, and the latch (SR) 1234 is set. The same operation is repeated thereafter.

次に、第3図によって、上記ベクトルタイマ変化検出回
路(VTCD) 123aの詳細例について説明する。
Next, a detailed example of the vector timer change detection circuit (VTCD) 123a will be described with reference to FIG.

ベクトルタイマO(以下、vuToと云う)120から
送られてくる1ビツトの値はラッチ123a0に入力さ
れる。若し、該ビ・ノドの値が“1”から0゛に変化し
たとすると、アンドゲート123a、の出力が°1′と
なり、オアゲート123azの出力1230が“1゛に
なる。
A 1-bit value sent from vector timer O (hereinafter referred to as vuTo) 120 is input to latch 123a0. If the value of the bit node changes from "1" to 0', the output of the AND gate 123a becomes 1', and the output 1230 of the OR gate 123az becomes 1'.

同様にして、上記ビットの値が°O′から°1゛に変化
したとすると、アンドゲート123asの出力が°1°
となり、オアゲート123azの出力1230が。
Similarly, if the value of the above bit changes from °O' to °1, the output of the AND gate 123as will be °1°.
Then, the output 1230 of the OR gate 123az is.

1′ になる。It becomes 1′.

オアゲート123a6の出力1231の動作態様につい
ても同じである。
The same applies to the operation mode of the output 1231 of the OR gate 123a6.

次に、本発明による命令処理の例を、第2図を参照しな
がら第4図によって説明する。
Next, an example of instruction processing according to the present invention will be explained with reference to FIG. 4 while referring to FIG.

先ス、スカラユニソト(SUo) 20と、スカラユニ
ット(SU1) 21において、図示の如く、スカラ命
令(S+、Sz及びS I’+SZ’+Sff’)が処
理される。
First, in the scalar unit (SUo) 20 and the scalar unit (SU1) 21, scalar instructions (S+, Sz and SI'+SZ'+Sff') are processed as shown.

ソシテ、前述ノラy チ(SR) 1234 (SUo
対応)が“1゛にセットされているものすると、Toの
タイミングでスカラユニット(suo) 20からベク
トルユニット(VU)1にベクトル命令(vl)が送出
される。
Soshite, the aforementioned Nora y Chi (SR) 1234 (SUo
Assuming that the correspondence) is set to "1", a vector instruction (vl) is sent from the scalar unit (suo) 20 to the vector unit (VU) 1 at the timing To.

若し、本発明が実施されていないと、ベクトルタイマ)
(VU)1では、V、−V0、迄のベクトル命令が処理
され、その間スカラユニット(SU+) 21側では、
スカラ命令(sio)の次のベクトル命令(V I ’
 )が待たされしまう。
If the present invention is not implemented, the vector timer)
In the (VU) 1, vector instructions up to V, -V0 are processed, while on the scalar unit (SU+) 21 side,
The next vector instruction (VI') after the scalar instruction (sio)
) will have to wait.

然しなから、本発明が実施されると、スカラユニット(
su+) 21において、上記ベクトル命令(V+′)
が取り出され、起動待ちの状態になると、該ベクトル命
令の起動待ちであることを示す信号VIW、が出力され
ることにより、アンド回路129によってスカラユニッ
ト(su1) 21に対応するベクトルタイマ(VUT
1) +22が起動され、特定の時間が経過してT1の
タイミングになると、上記特定のビットの値が変化する
ことにより、VTCD 123aの出力線1231が1
°となり、ラッチ(SR) 1234をリセットして、
ラッチ(SR) 1235をセットし、ベクトルユニッ
ト(VU) 1の使用権がスカラユニット(SU+) 
21に切り換えられる。
However, when the present invention is implemented, the scalar unit (
su+) In 21, the above vector instruction (V+')
When the vector instruction is fetched and is in a state of waiting for startup, a signal VIW indicating that the vector instruction is waiting for startup is output, and the vector timer (VUT) corresponding to the scalar unit (su1) 21 is output by the AND circuit 129.
1) When +22 is activated and the timing of T1 is reached after a specific time has elapsed, the value of the specific bit changes, causing the output line 1231 of the VTCD 123a to become 1.
°, reset the latch (SR) 1234,
Set latch (SR) 1235 and use right of vector unit (VU) 1 becomes scalar unit (SU+)
It can be switched to 21.

この結果、当該スカラユニット(SO,) 21で待ち
状態にあったベクトル命令(V+“)がレジスタ127
3を経由して、ベクトルユニット(VU)1に投入され
処理される。
As a result, the vector instruction (V+") that was in the waiting state in the scalar unit (SO,) 21 is transferred to the register 127.
3, and input to the vector unit (VU) 1 for processing.

FC,1253においては、該ベクトル命令(v+’)
がベクトルユニット(VU) 1に投入され、T2のタ
イミングで処理が終了したことを認識し、且つ後続のベ
クトル命令がないことを検知することにより、切り換え
制御信号C31によって、ラッチ(SR) 1234を
セットするように動作し、ベクトルユニット(VU) 
1の使用権は、再びスカラユニット(SUO) 20に
渡され、ベクトル命令Vl+””V!。の処理が実行さ
れるように機能する。
In FC, 1253, the vector instruction (v+')
is input to the vector unit (VU) 1, and by recognizing that the processing has ended at timing T2 and detecting that there is no subsequent vector command, the latch (SR) 1234 is activated by the switching control signal C31. Operates to set vector unit (VU)
1 is again passed to the scalar unit (SUO) 20, and the vector instruction Vl+""V! . functions so that the processing is executed.

次に、第3図(b)によって、ベクトルタイマ変化検出
回路(VTCD) 123aの他の例を説明する。
Next, another example of the vector timer change detection circuit (VTCD) 123a will be explained with reference to FIG. 3(b).

本ベクトルタイマ変化検出回路(VTCD) 123a
においては、ベクトルタイマ(VUTo) 121の特
定ビットが変化して、オアゲート1238zの出力が“
1゛となると、ラッチ(sR) 123boをセットす
る。
This vector timer change detection circuit (VTCD) 123a
In this case, a specific bit of the vector timer (VUTo) 121 changes, and the output of the OR gate 1238z becomes “
When it becomes 1, latch (sR) 123bo is set.

そして、次に上記ベクトルタイマ(VUTO) 121
の特定ビットが変化すると、上記VTCD 123aの
出力線1230を“1”とするように機能させる。
Then, the vector timer (VUTO) 121
When a specific bit changes, the output line 1230 of the VTCD 123a is set to "1".

該ラッチ(SR) 123boは、前述のベクトル命令
起動待ちを示す信号VIW。が0”になったときリセッ
トされる。
The latch (SR) 123bo is the signal VIW indicating waiting for activation of the vector instruction described above. It is reset when becomes 0''.

従って、本ベクトルタイマ変化検出回路(VTCD)1
23aを使用した場合には、上記ベクトルタイマ(VU
TO) 121が計数している時間周期の、少なくとも
、1〜2倍の時間内において、上記切り換え信号123
0を付勢するように機能する所に特徴がある。
Therefore, this vector timer change detection circuit (VTCD) 1
23a, the above vector timer (VU
TO) The switching signal 123 is activated within a time period that is at least 1 to 2 times the time period that the 121 is counting.
The feature is that it functions to bias 0.

ベクトルタイマ(VUTI) 122側についても、全
く同じである。
The same applies to the vector timer (VUTI) 122 side.

このように、本発明は、複数個のスカラユニット (例
えば、SUo、+)が1つのベクトルユニット(VU)
に接続されているマルチプロセッサシステムにおいて、
それぞれのスカラユニッl−(SUO,l)での、ベク
トル命令の実行が続いている時には、特定の時間経過を
カウントした後に、該特定の時間以内にベクトル命令の
実行が終了した時には、該終了信号を検知して、ベクト
ルユニット(VU)の使用権を交互に切り換えるように
した所に特徴がある。
In this way, the present invention allows multiple scalar units (e.g., SUo, +) to form one vector unit (VU).
In a multiprocessor system connected to
When the execution of the vector instruction continues in each scalar unit l-(SUO, l), when the execution of the vector instruction ends within the specific time after counting the passage of a specific time, the completion signal is sent. The feature is that the right to use the vector unit (VU) is alternately switched by detecting the vector unit (VU).

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

以上、詳細に説明したように、本発明のマルチプロセッ
サ命令制御方式は、少なくとも、スカラ命令を処理する
複数個のスカラユニット(SUo、+)と、これらのス
カラユニット(SUo、1)から送られてくるベクトル
命令を処理するベクトルユニット(VU)とから構成さ
れるマルチプロセッサシステムにおいて、該ベクトルタ
イッ) (VU)内に、上記複数個のスカラユニット(
Sue、I)の内の1つに与えるベクトルユニット使用
権を変更する命令切り換え制御回路(ICC)と、各ス
カラユニッ)(Sυ。、υ毎にベクトル命令の処理が待
たされている時間をカウントするベクトルタイマ(VU
TO,VUTI)とを設けることにより、各ベクトルタ
イマ(VUT、、VUT1)の特定のビットが変化した
ことを検出した時、該ベクトルタイマ(VUTo、 V
UTI)に対応するスカラユニット(SUO,+)に、
該ベクトルユニット(VU)に対する使用権を与えるよ
うにしたものであるので、ベクトル命令の処理待ちの為
に、それ以降のスカラ命令の処理が長時間待たされるこ
とがなくなり、端末、入出力装置(Ilo)に対する悪
影響を少なくしたマルチプロセッサシステムが構築でき
る効果がある。
As described above in detail, the multiprocessor instruction control method of the present invention includes at least a plurality of scalar units (SUo, +) that process scalar instructions and instructions sent from these scalar units (SUo, 1). In a multiprocessor system composed of a vector unit (VU) that processes incoming vector instructions, the plurality of scalar units (VU) described above are included in the vector unit (VU).
An instruction switching control circuit (ICC) changes the right to use the vector unit given to one of the scalar units) (Sυ., υ), and counts the time during which vector instruction processing is waited for for each scalar unit) (Sυ., υ). Vector timer (VU
TO, VUTI), when it is detected that a specific bit of each vector timer (VUT, VUT1) has changed, the vector timer (VUTo, VUTI)
In the scalar unit (SUO, +) corresponding to UTI),
Since the right to use the vector unit (VU) is granted, the processing of subsequent scalar instructions does not have to wait for a long time due to waiting for vector instruction processing, and terminals, input/output devices ( This has the effect of making it possible to construct a multiprocessor system that has less negative influence on Ilo).

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

第1図は本発明のマルチプロセッサシステムの原理ブロ
ック図。 第2図は本発明の一実施例を示した図。 第3図はベクトルタイマ変化検出回路の詳細を示した図
。 第4図は本発明による命令処理の一例を示した図。 第5図は従来の科学技術用のマルチプロセッサシステム
の構成例を示した図。 である。 図面において、 1はベクトルユニット(VU)。 11はベクトル命令実行ユニ7 ト(VEU) 。 110はロードパイプライン(LOAD) 。 111はストアパイプライン(STORE) 。 112はベクトルレジスタ(VR) 。 113は加算パイプライン(ADD) 。 114は乗算パイプライフ (MULTI) 。 115は除算パイプライフ (DIWIDE) 。 12はベクトル命令制御ユニッl−(VCU) 。 120はセレクタ(St!L) 。 121はベクトルタイ?(VUTO)1122はベクト
ルタイ? (VUT l ) +123は命令切り換え
制御回路(IOC) 。 123aはベクトルタイマ変化検出回路(VTCD) 
。 1230、1231はVTCD 123aの出力線、又
は切り換え信号。 123bは命令切り換え制御部(ISC) 。 1234はスカラユニット(su1) 20に対するラ
ッチ(SR)。 1235はスカラユニット(SO,) 21に対するラ
ンチ(SR)。 20はスカラユニット(SUo) 。 21はスカラユニット(SU+)。 3は主記憶装置(MSU) 。 4は記憶制御ユニット(MC1l) 。 (aつ べ゛2Fル9Aマ渉4し筐出口名O詳匍1吊し乙2早 
3  口 はのυ (b) べ゛クトルタイマ差化訣龜四2の詳細と+’CLに2〉
 3 Z (七の2)
FIG. 1 is a block diagram of the principle of a multiprocessor system according to the present invention. FIG. 2 is a diagram showing an embodiment of the present invention. FIG. 3 is a diagram showing details of the vector timer change detection circuit. FIG. 4 is a diagram showing an example of instruction processing according to the present invention. FIG. 5 is a diagram showing an example of the configuration of a conventional multiprocessor system for science and technology. It is. In the drawing, 1 is a vector unit (VU). 11 is a vector instruction execution unit (VEU). 110 is a load pipeline (LOAD). 111 is a store pipeline (STORE). 112 is a vector register (VR). 113 is an addition pipeline (ADD). 114 is multiplication pipe life (MULTI). 115 is the division pipe life (DIWIDE). 12 is a vector instruction control unit l-(VCU). 120 is a selector (St!L). Is 121 a vector tie? (VUTO) Is 1122 a vector tie? (VUTl) +123 is an instruction switching control circuit (IOC). 123a is a vector timer change detection circuit (VTCD)
. 1230 and 1231 are output lines or switching signals of the VTCD 123a. 123b is an instruction switching control unit (ISC). 1234 is a latch (SR) for the scalar unit (su1) 20; 1235 is a launch (SR) for the scalar unit (SO,) 21. 20 is a scalar unit (SUo). 21 is a SCARA unit (SU+). 3 is the main storage unit (MSU). 4 is a storage control unit (MC1l). (A Tsube 2F Le 9A Macross 4 Exit name O details 1 Hanging Otsu 2 early
3. (b) Details of vector timer differentiation key 42 and +'CL2>
3 Z (7 no 2)

Claims (3)

【特許請求の範囲】[Claims] (1)少なくとも、スカラ命令を処理する複数個のスカ
ラユニット(20、21)と、 これらのスカラユニット(20、21)から送られてく
るベクトル命令を処理するベクトルユニット(1)とか
ら構成されるマルチプロセッサシステムにおいて、 上記ベクトルユニット(1)内に、上記複数個のスカラ
ユニット(20、21)の内の1つに与えるベクトルユ
ニット(1)の使用権を変更する命令切り換え制御回路
(123)と、 各スカラユニット(20、21)毎に、ベクトルユニッ
ト(1)の使用権が与えられていない為に、該ベクトル
命令の処理が待たされている時間を計数するベクトルタ
イマ(121、122)とを備え、上記ベクトルタイマ
(121、122)のそれぞれにおける、上記時間カウ
ントオーバ(1230、1231)により、そのベクト
ルタイマ(121、122)に対応するスカラユニット
(20、21)に、上記ベクトルユニット(1)に対す
る使用権を与えることを特徴とするマルチプロセッサ命
令制御方式。
(1) Consists of at least a plurality of scalar units (20, 21) that process scalar instructions, and a vector unit (1) that processes vector instructions sent from these scalar units (20, 21). In the multiprocessor system, the vector unit (1) includes an instruction switching control circuit (123) that changes the right to use the vector unit (1) given to one of the plurality of scalar units (20, 21). ), and a vector timer (121, 122) for each scalar unit (20, 21) that counts the time that the processing of the vector instruction is kept waiting because the right to use the vector unit (1) is not granted. ), and due to the time countover (1230, 1231) in each of the vector timers (121, 122), the vector is stored in the scalar unit (20, 21) corresponding to the vector timer (121, 122). A multiprocessor instruction control method characterized by granting usage rights to a unit (1).
(2)上記ベクトルタイマ(121、122)として、
上記ベクトル命令が起動待ちの状態を示す信号(VIW
_0、又はVIW_1)が“0”になったときには、上
記待ち時間の計数を中断するように構成したことを特徴
とする特許請求の範囲第1項に記載のマルチプロセッサ
命令制御方式。
(2) As the vector timer (121, 122),
A signal (VIW) indicating that the above vector instruction is waiting for startup.
2. The multiprocessor instruction control system according to claim 1, wherein the counting of the waiting time is interrupted when VIW_1) becomes "0".
(3)上記ベクトルタイマ(121、122)の特定の
ビットに変化が検出されたとき、特定のラッチ(123
b_0、又は123b_1)をセットし、該ラッチ(1
23b_0、又は123b_1)がセットされた状態で
、上記特定のビットに再度変化が検出されたときのみ、
上記カウントオーバ(1230、又は1231)とする
ように構成したことを特徴とする特許請求の範囲第1項
に記載のマルチプロセッサ命令制御方式。
(3) When a change is detected in a specific bit of the vector timer (121, 122), a specific latch (123
b_0 or 123b_1), and the latch (1
23b_0 or 123b_1) is set, only when a change is detected in the above specific bit again.
The multiprocessor instruction control system according to claim 1, characterized in that the multiprocessor instruction control system is configured to perform the count over (1230 or 1231).
JP5872786A 1986-03-17 1986-03-17 Multiprocessor instruction control system Pending JPS62214467A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5872786A JPS62214467A (en) 1986-03-17 1986-03-17 Multiprocessor instruction control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5872786A JPS62214467A (en) 1986-03-17 1986-03-17 Multiprocessor instruction control system

Publications (1)

Publication Number Publication Date
JPS62214467A true JPS62214467A (en) 1987-09-21

Family

ID=13092535

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5872786A Pending JPS62214467A (en) 1986-03-17 1986-03-17 Multiprocessor instruction control system

Country Status (1)

Country Link
JP (1) JPS62214467A (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55121525A (en) * 1979-03-14 1980-09-18 Toshiba Corp Priority control system of electronic computer system
JPS56166534A (en) * 1980-05-27 1981-12-21 Mitsubishi Electric Corp Simultaneous selection preventing circuit
JPS57153323A (en) * 1981-03-17 1982-09-21 Nec Corp Information process controller
JPS5947668A (en) * 1982-09-03 1984-03-17 Hitachi Ltd Information processor

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55121525A (en) * 1979-03-14 1980-09-18 Toshiba Corp Priority control system of electronic computer system
JPS56166534A (en) * 1980-05-27 1981-12-21 Mitsubishi Electric Corp Simultaneous selection preventing circuit
JPS57153323A (en) * 1981-03-17 1982-09-21 Nec Corp Information process controller
JPS5947668A (en) * 1982-09-03 1984-03-17 Hitachi Ltd Information processor

Similar Documents

Publication Publication Date Title
EP0328721B1 (en) Dynamic multiple instruction stream multiple data multiple pipeline floatingpoint unit
JPH11219302A (en) Method and device affecting subsequent instruction processing in data processor
JPH04245540A (en) Computer system for efficiently executing program having conditional branch
US6223278B1 (en) Method and apparatus for floating point (FP) status word handling in an out-of-order (000) Processor Pipeline
JPH0622035B2 (en) Vector processor
JPS63127368A (en) Control system for vector processor
JPH10505444A (en) Processing system, processor, instruction stream storage memory and compiler
JPH03109644A (en) Microcomputer
CN1124546C (en) Distributed instruction completion logic
JPH0282343A (en) Interrupt handling method for multiprocessor system
US11847455B2 (en) Clearing register data using a write enable signal
JPS62214467A (en) Multiprocessor instruction control system
JPS6041138A (en) Interruption control device
JPS6161416B2 (en)
JP3534987B2 (en) Information processing equipment
JPH07262032A (en) Information processor
JPS6116112B2 (en)
JPH0277940A (en) Data processor
JPS59163671A (en) Vector processor
JPS6145359A (en) Information processor
JPH0328962A (en) Alignment control system using scoreboard
JPH052485A (en) Pipeline control system
JPH01106174A (en) Control system for arithmetic pipeline
JPH05143320A (en) Floating point arithmetic system and unit therefor
JPS6159533A (en) Storage device access control system