JPH01191265A - Vector operation instruction starting system - Google Patents
Vector operation instruction starting systemInfo
- Publication number
- JPH01191265A JPH01191265A JP1561588A JP1561588A JPH01191265A JP H01191265 A JPH01191265 A JP H01191265A JP 1561588 A JP1561588 A JP 1561588A JP 1561588 A JP1561588 A JP 1561588A JP H01191265 A JPH01191265 A JP H01191265A
- Authority
- JP
- Japan
- Prior art keywords
- vector
- unit
- instruction
- command
- scalar
- 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
Links
- 230000004913 activation Effects 0.000 claims description 26
- 238000000034 method Methods 0.000 claims description 20
- 230000004044 response Effects 0.000 claims description 2
- 102100028918 Catenin alpha-3 Human genes 0.000 abstract 2
- 101000916179 Homo sapiens Catenin alpha-3 Proteins 0.000 abstract 2
- 238000010586 diagram Methods 0.000 description 6
- 230000000694 effects Effects 0.000 description 2
- 101710200896 Acyl-CoA thioesterase 2 Proteins 0.000 description 1
- GVBNSPFBYXGREE-UHFFFAOYSA-N Visnadine Natural products C1=CC(=O)OC2=C1C=CC1=C2C(OC(C)=O)C(OC(=O)C(C)CC)C(C)(C)O1 GVBNSPFBYXGREE-UHFFFAOYSA-N 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 238000004148 unit process Methods 0.000 description 1
Landscapes
- Complex Calculations (AREA)
Abstract
Description
【発明の詳細な説明】
〔概要〕
スカラユニットからの起動情報に基づいて、ベクトルユ
ニットが動作を開始するベクトル処理装置におけるベク
トル演算命令起動方式に関し、ベクトルユニットでのベ
クトル演算命令の処理時間を短縮することを目的とし、
スカラユニットからのベクトルユニットへの上記起動情
報をパイプラインで、ベクトル演算命令の実行ステージ
以前に送出し、ベクトルユニットにおいては、該起動情
報に基づいて、上記ベクトル演算命令の実行ステージ以
前に、操作コードのデコード、及びベクトルレジスタ(
VR)からの最初の一要素のリードを完了させ、上記ス
カラユニットからのベクトル命令の実行ステージにおい
て送出されるスタートコマンドを受信した時点で、該ベ
クトル演算を開始するように構成する。[Detailed Description of the Invention] [Summary] Regarding a vector operation instruction activation method in a vector processing device in which a vector unit starts operation based on activation information from a scalar unit, processing time for vector operation instructions in a vector unit is reduced. The above startup information from the scalar unit to the vector unit is sent in the pipeline before the execution stage of the vector operation instruction, and the vector unit executes the vector operation instruction based on the activation information. Before the execution stage, the operation code is decoded and the vector register (
The vector operation is configured to start when the read of the first element from the scalar unit (VR) is completed and a start command sent from the scalar unit in the execution stage of the vector instruction is received.
本発明は、スカラユニットからの起動情報に基づいて、
ベクトルユニットが動作を開始するベクトル処理装置に
おけるベクトル演算命令起動方式第3図はベクトル演算
命令の処理時間のベクトル要素数との関係を示した図で
あって、スカラユニットとベクトルユニットで、単独に
ベクトル演算命令を処理した場合の処理時間を示してい
る。The present invention provides, based on the activation information from the scalar unit,
Vector operation instruction starting method in a vector processing device where the vector unit starts operating Figure 3 is a diagram showing the relationship between the processing time of a vector operation instruction and the number of vector elements. It shows the processing time when processing vector operation instructions.
ここで、ベクトルユニットでの処理時間の初期値αは、
例えば、ベクトルレングス(VL)の設定。Here, the initial value α of the processing time in the vector unit is
For example, vector length (VL) settings.
主記憶装置 (MS)からベクトルレジスタ(VR)へ
のベクトルデータの転送に必要な時間(ベクトル処理環
境設定時間)であって、ベクトルユニットでのベクトル
演算命令の処理には、この初期値αが必要である為、−
aに、逐次処理を行うスカラユニットに比較して、ベク
トル要素数が少ない(例えば、図示されている如くに、
要素数:10〜20以下)場合には、スカラユニットで
処理する方が寧ろ速いことが判る。This is the time required to transfer vector data from the main memory (MS) to the vector register (VR) (vector processing environment setting time), and this initial value α is required for processing vector operation instructions in the vector unit. Because it is necessary, −
a has a smaller number of vector elements than a scalar unit that performs sequential processing (for example, as shown in the figure,
(number of elements: 10 to 20 or less), it can be seen that processing using a scalar unit is rather faster.
然して、最近のプログラミング処理においては、ソース
プログラムをフォートラン(FORTRAN)と云った
高級言語で記述した後、コンパイルする手順を踏むが、
そのとき、該ソースプログラム中のDOループ等、複数
個のデータの処理を示す文がベクトル演算命令に変換さ
れる為、該ソースプログラムから目的プログラムに変換
されたプログラムを実行するデータ処理システムは、ス
カラユニットとベクトルユニットとから構成されていて
、スカラ命令はスカラユ・ニットで実行され、ベクトル
命令はスカラユニットからベクトルユニットに送出され
、ベクトルユニットで実行される。However, in recent programming processes, a source program is written in a high-level language called FORTRAN and then compiled.
At that time, statements that indicate the processing of multiple pieces of data, such as DO loops, in the source program are converted into vector operation instructions, so the data processing system that executes the program converted from the source program into the target program, It consists of a scalar unit and a vector unit. Scalar instructions are executed in the scalar unit, and vector instructions are sent from the scalar unit to the vector unit and executed in the vector unit.
一般に、上記ソースプログラム中のDoループ文でのル
ープ回数は千差万別である為、数回〜数千回の多岐に渡
っているのが普通である。In general, the number of loops in the Do loop statement in the source program varies widely, and typically ranges from several times to several thousand times.
従っ゛て、ベクトル要素(エレメント)の少ないベクト
ル命令をベクトルユニットで実行することになると、前
述のように、スカラユニットで処理より処理時間がかか
ると云う事象が生じる。Therefore, when a vector instruction with a small number of vector elements is executed in a vector unit, a phenomenon occurs in which the processing time is longer than that in the scalar unit, as described above.
一方、最近のデータ処理システムの処理能力の全体的な
向上に伴って、スカラユニットからの起動によりベクト
ルユニ・ノドが動作をするベクトル処理装置においては
、ベクトル要素数の少ない場合の処理速度の低下が目立
つようになり、ベクトル要素数の如何に関わらず高速に
処理できることが求められるようになってきた。On the other hand, with the overall improvement in the processing power of recent data processing systems, in vector processing devices in which vector uni-nodes operate by starting from a scalar unit, processing speed decreases when the number of vector elements is small. has become more prominent, and there has been a demand for high-speed processing regardless of the number of vector elements.
〔従来の技術と発明が解決しようとする課題〕第2図は
従来のベクトル演算命令起動方式を説明する図である。[Prior art and problems to be solved by the invention] FIG. 2 is a diagram illustrating a conventional vector operation instruction starting method.
先ず、スカラユニット1において、そのDステージで、
各命令がデコードされ、ベクトル演算命令であることが
認識されると、そのE1ステージでベクトルユニッI−
(VPU)2に命令バッファ11から起動情報(例えば
、コマンドコード、オペランドアドレス(VRアドレス
)等)が送出され、ベクトルユニッl−(VPU) 2
におけるE2ステージにおいて、操作コードのデコード
、及びベクトルレジスタ(VR) 2夕からのベクトル
データのリードが実行される。First, in SCARA unit 1, at its D stage,
When each instruction is decoded and recognized as a vector operation instruction, the vector unit I-
Startup information (for example, command code, operand address (VR address), etc.) is sent from the instruction buffer 11 to the vector unit l-(VPU) 2.
At the E2 stage, the operation code is decoded and the vector data is read from the vector register (VR) 2.
以下、図示の各ステージでベクトル演算が行われる。Hereinafter, vector calculations are performed at each stage shown.
一般に、ベクトル演算命令の処理時間Tは次式%式% ここで、Tsu :ベクトル命令立上がり時間。Generally, the processing time T of a vector operation instruction is calculated by the following formula% formula% Here, Tsu: vector instruction rise time.
TEII :ベクトル演算のスルーブツトvL:ベクト
ル長。TEII: Vector operation throughput vL: Vector length.
そして、TSLI=TO+TIi:S
ここで、To:ベクトル命令デコード、及びvpu起動
時間。And TSLI=TO+TIi:S Here, To: vector instruction decoding and vpu startup time.
Tts:1ベクトルオペレーシヨン の立上がり時間。Tts: 1 vector operation rise time.
である。It is.
第2図に示した従来のベクトル処理装置においては、T
EX+TESは短くなっているが、TDが長い(本例で
は、例えば、3τ)為、ベクトル長(VL)が小さくな
ったとき(即ち、短ベクトル処理)、ベクトルユニッ)
(VPU)2での処理性能が十分でないと云う問題があ
った。In the conventional vector processing device shown in FIG.
Although EX+TES is short, TD is long (in this example, for example, 3τ), so when the vector length (VL) becomes small (i.e., short vector processing), the vector unit)
There was a problem that the processing performance of (VPU) 2 was not sufficient.
このような短ベクトル処理での性能を上げる為には、上
記T、を短くすれば良いのであるが、該ベクトル命令の
デコード、及びベクトルユニット(VPU) 2の起動
は、本図に示されているように、スカラユニット1が行
う為、該ベクトル命令がE1ステージに入ってから必要
な起動情報(例えば、コマンドコード、オペランドVR
アドレス等)■を送出し、ベクトルユニッ)(VPU)
2で該起動情報■を受信してから、該コマンドコードの
デコード。In order to improve performance in such short vector processing, it is sufficient to shorten T, but the decoding of the vector instruction and activation of the vector unit (VPU) 2 are not shown in this figure. Since the scalar unit 1 executes the instructions as shown in the figure, necessary startup information (for example, command code, operand VR) is required after the vector instruction enters the E1 stage.
Send address, etc.) ■, vector unit) (VPU)
After receiving the activation information (2), decode the command code.
、 ベクトルレジスタ(VR)のリード動作等、ベクト
ル演算に必要な前処理を行っていた為、その侭の処理方
式では、該T0を短(できないと云う問題があった。, Since preprocessing necessary for vector operations such as read operation of the vector register (VR) was performed, the previous processing method had the problem that the T0 could not be shortened.
本発明は上記従来の欠点に鑑み、スカラユニットからの
起動情報に基づいて、ベクトルユニットが動作を開始す
るベクトル処理装置において、該ベクトルユニットを起
動する情報の最小限のデータ (コマンドコード、演算
入力オペランドVRアドレス)を、ベクトルユニットで
の演算ステージの実行に先立ってベクトルユニットに送
出し、ベクトルユニットでの8亥コマンドコードのデコ
ード等の処理を見えなくするようにして、T、の短縮化
を図り、短ベクトル性能を向上させる方法を提供するこ
とを目的とするものである。In view of the above conventional drawbacks, the present invention provides a vector processing device in which a vector unit starts operation based on activation information from a scalar unit. The operand VR address) is sent to the vector unit before the execution of the arithmetic stage in the vector unit, and processing such as decoding of the 8-command code in the vector unit is made invisible, thereby shortening T. The purpose of this invention is to provide a method for improving short vector performance.
上記の問題点は下記の如くに構成されたベクトル演算命
令起動方式によって解決される。The above problem is solved by a vector operation instruction activation method configured as follows.
(1) スカラユニットからの起動情報に基づいて、
ベクトルユニットが動作を開始するベクトル処理装置に
おいて、
該スカラユニットからのベクトルユニットへの上記起動
情報をパイプラインで、ベクトル演算命令の実行ステー
ジ以前に送出し、
ベクトルユニットにおいては、該起動情報に基づいて、
上記ベクトル演算命令の実行ステージ以前に、操作コー
ドのデコード、及びベクトルレジスタ(VR)からの最
初の一要素のリードを完了させ、上記スカラユニットか
らのベクトル命令の実行ステージにおいて送出されるス
タートコマンドを受信した時点で、該ベクトル演算を開
始するように構成する。(1) Based on the startup information from the SCARA unit,
In the vector processing device where the vector unit starts operating, the above activation information from the scalar unit to the vector unit is sent in the pipeline before the execution stage of the vector operation instruction, and the vector unit processes the activation information based on the activation information. hand,
Before the execution stage of the vector operation instruction, decoding of the operation code and reading of the first element from the vector register (VR) are completed, and the start command sent from the scalar unit at the execution stage of the vector instruction is completed. The vector calculation is configured to start at the time of reception.
(2) 上記スカラユニットから送出されてくる起動
情報、及びスタートコマンドの受信に対して、ベクトル
ユニット内に複数段のコマンドスタックを設けて、
ベクトルユニットにおけるベクトル演算コマンドを複数
個受付け、
スカラユニットは、該起動情報、及びスタートコマンド
の発行後はその実行の終了を待つことなく次の命令の処
理に入れるように構成する。(2) In response to the reception of startup information and start commands sent from the SCARA unit, a multi-stage command stack is provided in the vector unit to accept multiple vector operation commands in the vector unit, and the SCARA unit , the activation information, and the start command are issued, the system is configured to start processing the next command without waiting for the completion of the execution.
即ち、本発明によれば、スカラユニットからの起動情報
に基づいて、ベクトルユニットが動作を開始するベクト
ル処理装置において、スカラユニットにおける命令実行
ステージ(Eステージ)以前の、例えば、Dステージ、
Aステージにおいて、ベクトルユニットを起動するのに
必要な最小限の情報、例えば、コマンドコード、演算入
力オペランドVRアドレス等をベクトルユニット(VP
U)に発信しておき、実行ステージ(Eステージ)の先
頭でスタートコマンドのみを発行する。That is, according to the present invention, in a vector processing device in which a vector unit starts operation based on activation information from a scalar unit, for example, the D stage, before the instruction execution stage (E stage) in the scalar unit,
In the A stage, the minimum information necessary to start the vector unit, such as command code, operation input operand VR address, etc., is transferred to the vector unit (VP
U) and issues only the start command at the beginning of the execution stage (E stage).
ベクトルユニット(VPU)においては、ベクトル演算
の開始に先立って、上記起動情報に基づいて、コマンド
コードのデコード、及びベクトルレジスタ(VR)から
の最初の一要素のリード動作を完了しておき、上記スカ
ラユニットからのスタートコマンドを受信した時点から
直ちに該コマンドが指示するベクトル演算を開始するよ
うにする。In the vector unit (VPU), before starting the vector operation, the decoding of the command code and the read operation of the first element from the vector register (VR) are completed based on the above startup information, and the above operation is completed. The vector calculation specified by the command is started immediately upon receiving the start command from the scalar unit.
この結果、ベクトルユニット(VPU)においては、従
来、該ベクトルユニット(VPU)内において実行して
いたコマンドコードのデコード、ベクトルレジスタ(V
R)リード動作(即ち、前述のT[1)が見えなくなる
ことにより、類ベクトル処理時の性能の向上を図ること
ができる。As a result, in the vector unit (VPU), command code decoding, which was conventionally executed within the vector unit (VPU), and vector register (VPU)
R) Read operation (that is, the above-mentioned T[1) becomes invisible, so that the performance during similar vector processing can be improved.
尚、このような制御方式をとることにより、1つ前の命
令による例外事象(例えば、プログラム例外)とか、入
出力装置からの外部割込み等により割込みが発生した場
合には、現在進行中のベクトル演算命令の処理をキャン
セルする必要があるが、本発明の制御方式においては、
少なくとも、前命令のCステージ(本命令のE1ステー
ジに対応)で、該例外事象等を認識することができるの
で、2番目のEステージ(E2ステージ)でスカラユニ
ットからキャンセル信号を発行することにより、ベクト
ルユニット(VPU)側の上記スタートコマンドをサプ
レスし、実行すべきでない命令による演算例外の検出を
抑止することができる。By adopting this control method, if an interrupt occurs due to an exception event caused by the previous instruction (for example, a program exception) or an external interrupt from an input/output device, the current vector It is necessary to cancel the processing of the arithmetic instruction, but in the control method of the present invention,
At least, the exception event can be recognized at the C stage of the previous instruction (corresponding to the E1 stage of this instruction), so by issuing a cancel signal from the scalar unit at the second E stage (E2 stage), , the start command on the vector unit (VPU) side can be suppressed, and detection of an operation exception due to an instruction that should not be executed can be suppressed.
又、本発明においては、ベクトルユニット(vPU)側
にコマンドスタックを複数段設け、ベクトル演算コマン
ドを複数個受付るように構成することで、スカラユニッ
トはコマンドの発行後、その実行結果を待つことなく次
の命令の処理を行うことができるようになる。In addition, in the present invention, by providing multiple stages of command stacks on the vector unit (vPU) side and configuring it to accept multiple vector operation commands, the scalar unit can wait for the execution result after issuing a command. You can now process the next command without any problems.
このように、本発明によるベクトル演算命令起動方式を
導入した場合には、ベクトル命令の立ち上がり時間が改
善され、ベクトル演算処理、特に、短ベクトル処理の性
能を著しく改善することができる効果がある。As described above, when the vector operation instruction starting method according to the present invention is introduced, the rise time of the vector instruction is improved, and the performance of vector operation processing, particularly short vector processing, can be significantly improved.
以下本発明の実施例を図面によって詳述する。 Embodiments of the present invention will be described in detail below with reference to the drawings.
第1図は本発明の一実施例を模式的に示した図であり、
スカラユニット1におけるDステージ。FIG. 1 is a diagram schematically showing an embodiment of the present invention,
D stage in scalar unit 1.
Aステージでのベクトルユニッ)(VPU)2に対する
起動情報■の送出、及びE1ステージにおけるスタート
コマンドの送出手段が本発明を実施するのに必要な手段
である。尚、全図を通して同じ符号は同じ対象物を示し
ている。The means for transmitting the startup information (2) to the vector unit (VPU) 2 in the A stage and the means for transmitting the start command in the E1 stage are necessary means for carrying out the present invention. Note that the same reference numerals indicate the same objects throughout the figures.
以下、第1図によって本発明のベクトル演算命令起動方
式を説明する。Hereinafter, the vector operation instruction starting method of the present invention will be explained with reference to FIG.
本実施例においては、ベクトルレジスタ(VR) (1
?2)と、ベクトルレジスタ(VR) (R3)との演
算結果をベクトルレジスタ(VR) (R1)に格納す
るベクトル演算命令の場合を例にして説明する。In this embodiment, vector register (VR) (1
? 2) and a vector operation instruction that stores the operation result with the vector register (VR) (R3) in the vector register (VR) (R1).
本図において、D、八、E(El、[2)、C浦はスカ
ラユニ先ず、スカラユニット1においては、当該ベクト
ル命令のDステージにおいて、ベクトルユニット(VP
tl)2を起動する情報として、コマンドコード、及び
ベクトルレジスタ(VR) (R2)のアドレス■をベ
クトルユニット(VPU)2に発信する。In this figure, D, 8, E (El, [2), and C ura are scalar units. First, in scalar unit 1, in the D stage of the vector instruction, the vector unit (VP
tl) 2, a command code and the address ■ of the vector register (VR) (R2) are transmitted to the vector unit (VPU) 2.
ベクトルユニッ)(VPU)2は該起動情報■を受は取
ったら直ちに、該コマンドコードのデコードをデコーダ
21で行い、ベクトルレジスタ(VTI) 22からR
2レジスタ内のベクトル要素の第1要素(エレメント)
をリードする。Immediately after receiving the activation information (VPU) 2, the command code is decoded by the decoder 21, and R is sent from the vector register (VTI) 22.
1st element of vector elements in 2 registers
lead.
次に、スカラユニット1は該ベクトル命令のAステージ
でR3レジスタのアドレスをベクトルユニット(VPU
) 2に発信する。Next, scalar unit 1 transfers the address of the R3 register to the vector unit (VPU) in the A stage of the vector instruction.
) Send a call to 2.
ベクトルユニット(VPU)2は該情報を受は取ると直
ちに、ベクトルレジスタ(VR) 22からR3レジス
タ内のベクトル要素の第1要素(エレメント)をリード
する。As soon as the vector unit (VPU) 2 receives this information, it reads the first element of the vector elements in the R3 register from the vector register (VR) 22.
そして、該ベクトル命令のE1ステージの先頭で、スカ
ラユニット1はスタートコマンド13.及びR1アドレ
スを発信する。Then, at the beginning of the E1 stage of the vector instruction, the scalar unit 1 sends the start command 13. and transmits the R1 address.
本図から明らかなように、該E1ステージにおいては、
ベクトルユニット(VPU)2は、既に、ペクト/L/
L/ジスタ(Vl?) (R2) 、 (VR) (R
3) +7)リードが完了しているので、上記スタート
コマンド13をコントロール部24で受は取ったら直ち
に演算を開始することができる。As is clear from this figure, in the E1 stage,
Vector unit (VPU) 2 is already in Pect/L/
L/Jister (Vl?) (R2), (VR) (R
3) +7) Since the read has been completed, calculation can be started immediately after the start command 13 is received by the control unit 24.
以後、1τ毎に、順次、次のベクトル要素を読み出し、
該ベクトル演算をパイプラインで実行する。After that, every 1τ, the next vector element is sequentially read out,
The vector operation is executed in a pipeline.
本発明によるベクトル命令起動方式を採用した場合、コ
マンドコードのデコード、ベクトルレジスタのリード動
作が先行して実行されているが、前命令による例外事象
が発生した場合には、当該ベクトル命令の、少なくとも
、Cステージで該例外事象の発生を認識することができ
るので、E2ステージにおいて、該例外事象による割込
み発生に基づいたキャンセル信号■を発信し、演算結果
のベクトルレジスタ(VR) (R1)への格納処理を
抑止し、該例外事象を検出することなく当該ベクトル演
算命令を取り消すことができる。When the vector instruction activation method according to the present invention is adopted, the decoding of the command code and the read operation of the vector register are executed in advance, but if an exception event occurs due to the previous instruction, at least , Since the occurrence of the exception event can be recognized at the C stage, the cancellation signal ■ based on the occurrence of an interrupt due to the exception event is transmitted at the E2 stage, and the calculation result is sent to the vector register (VR) (R1). It is possible to suppress the storage process and cancel the vector operation instruction without detecting the exception event.
本図において、スカラユニット1からの起動情報、及び
スタートコマンドの発信ルートに、点線で示したスタ・
7クメモリ25を設けることにより、ベクトル演算コマ
ンド、オペランドVRアドレス。In this figure, the startup information from SCARA unit 1 and the start command transmission route are indicated by dotted lines.
By providing 7 memory 25, vector operation command, operand VR address.
スタートコマンドを複数個受付ることができるので、ス
カラユニットlはコマンドの発行後、その実行の終了を
待つことなく次の命令の処理に入ることができる。Since multiple start commands can be received, the scalar unit l can start processing the next command after issuing a command without waiting for the completion of its execution.
この結果、ベクトル演算命令の実行と、次のスカラ命令
の実行とを並列に行うことができるようになる。但し、
プログラムの順序性を守る必要が・ ある処理モード(
例えば、シーケンシャル処理モード)の場合には、該ス
タックメモリ25を使用しないようにする必要がある。As a result, the vector operation instruction and the next scalar instruction can be executed in parallel. however,
It is necessary to protect the order of the program. There is a certain processing mode (
For example, in the case of sequential processing mode), it is necessary to avoid using the stack memory 25.
このように、本発明は、スカラユニットからの起動情報
に基づいて、ベクトルユニットが動作を開始するベクト
ル処理装置において、ベクトル演算命令の処理に時間の
かかるベクトル命令デコード、及びベクトルユニット起
動時間(To)を、該ベクトル演算命令の実行ステージ
(Eステージ)の以前に該起動情報をスカラユニットか
らベクトルユニット(VPU)に発信することで、該ベ
クトル演算命令の実行ステージの以前に該ベクトル命令
のコマンドのデコード、ベクトルレジスタ(Vl?)か
らの第1ベクトル要素の読み出しを完了しておき、該ベ
クトル演算命令の実行ステージの先頭において、スカラ
ユニットからスタートコマンドを発信し、該スタートコ
マンドを受信したベクトル演算ッ) (VPU)におい
ては、即演算を実行するようにした所に特徴がある。As described above, the present invention provides a vector processing device in which a vector unit starts operation based on activation information from a scalar unit, and a vector instruction decoding process that takes time to process a vector operation instruction, and a vector unit activation time (To ), by transmitting the activation information from the scalar unit to the vector unit (VPU) before the execution stage (E stage) of the vector operation instruction, the command of the vector operation is executed before the execution stage of the vector operation instruction. The decoding of the first vector element from the vector register (Vl?) is completed, and at the beginning of the execution stage of the vector operation instruction, a start command is sent from the scalar unit, and the vector that received the start command is The feature of VPU (VPU) is that it performs calculations immediately.
以上、詳細に説明したように、本発明のベクトル演算命
令起動方式は、スカラユニットからの起動情報に基づい
て、ベクトルユニットが動作を開始するベクトル処理装
置において、スカラユニットからのベクトルユニットへ
の上記起動情報をパイプラインで、ベクトル演算命令の
実行ステージ以前に送出し、ベクトルユニットにおいて
は、該起動情報に基づいて、上記ベクトル演算命令の実
行ステージ以前に、操作コードのデコード、及びベクト
ルレジスタ(VR)からの最初の一要素のリードを完了
させ、上記スカラユニットからのベクトル命令の実行ス
テージにおいて送出されるスタートコマンドを受信した
時点で、該ベクトル演算を開始するようにしたものであ
るので、ベクトル命令の立ち上がり時間が改善され、ベ
クトル演算処理、特に、短ベクトル処理の性能を著しく
改善することができる効果がある。As described above in detail, the vector operation instruction activation method of the present invention is applicable to the vector processing device in which the vector unit starts operation based on activation information from the scalar unit. Activation information is sent in the pipeline before the execution stage of the vector operation instruction, and in the vector unit, based on the activation information, the operation code is decoded and the vector register (VR ), the vector operation is started when the start command sent in the execution stage of the vector instruction from the scalar unit is received. The rise time of an instruction is improved, and the performance of vector arithmetic processing, particularly short vector processing, can be significantly improved.
第1図は本発明の一実施例を模式的に示した図。
第2図は従来のベクトル演算命令起動方式を説明する図
。
第3図はベクトル演算命令の処理時間のベクトル要素数
との関係を示した図1
である。
図面において、
1はスカラユニット、 11は命令バッファ。
12はバイブライン、13はスタートコマンド。
2はベクトルユニット(VPU) 。
21はデコーダ。
22はベクトルレジスタ(VR) 。
23は演算部、24はコントロール部。
25はスタックメモリ。
■は起動情報、 ■はキャンセル信号。
をそれぞれ示す。FIG. 1 is a diagram schematically showing an embodiment of the present invention. FIG. 2 is a diagram illustrating a conventional vector operation instruction starting method. FIG. 3 is a diagram showing the relationship between the processing time of a vector operation instruction and the number of vector elements. In the drawing, 1 is a scalar unit, and 11 is an instruction buffer. 12 is the vibe line, 13 is the start command. 2 is a vector unit (VPU). 21 is a decoder. 22 is a vector register (VR). 23 is a calculation section, and 24 is a control section. 25 is stack memory. ■ is startup information, ■ is cancellation signal. are shown respectively.
Claims (2)
に基づいて、ベクトルユニット(2)が動作を開始する
ベクトル処理装置において、 該スカラユニット(1)からのベクトルユニット(2)
への上記起動情報([1])をパイプラインで、ベクト
ル演算命令の実行ステージ以前に送出し、ベクトルユニ
ット(2)においては、該起動情報([1])に基づい
て、上記ベクトル演算命令の実行ステージ以前に、操作
コードのデコード、及びベクトルレジスタ(VR)(2
2)からの最初の一要素のリードを完了させ、 上記スカラユニット(1)からのベクトル命令の実行ス
テージにおいて送出されるスタートコマンド(13)を
受信した時点で、該ベクトル演算を開始することを特徴
とするベクトル演算命令起動方式。(1) Startup information from SCARA unit (1) ([1])
In a vector processing device, a vector unit (2) starts operating based on the vector unit (2) from the scalar unit (1).
The above activation information ([1]) is sent in the pipeline before the execution stage of the vector operation instruction, and the vector unit (2) executes the above vector operation instruction based on the activation information ([1]). Before the execution stage, the operation code is decoded and the vector register (VR) (2
When the read of the first element from 2) is completed and the start command (13) sent from the scalar unit (1) at the vector instruction execution stage is received, the vector operation is started. Features a vector operation instruction activation method.
動情報、及びスタートコマンドの受信に対して、ベクト
ルユニット(2)内に複数段のコマンドスタック(25
)を設けて、 ベクトルユニット(2)におけるベクトル演算コマンド
を複数個受付け、 スカラユニット(1)は、該起動情報、及びスタートコ
マンドの発行後はその実行の終了を待つことなく次の命
令の処理に入ることを特徴とする請求項1記載のベクト
ル演算命令起動方式。(2) In response to receiving the startup information and start command sent from the scalar unit (1), the vector unit (2) has a multi-stage command stack (25
), the vector unit (2) accepts multiple vector operation commands, and the scalar unit (1) processes the next command without waiting for the start information and start command to finish executing. 2. The vector operation instruction activation method according to claim 1.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1561588A JPH01191265A (en) | 1988-01-26 | 1988-01-26 | Vector operation instruction starting system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1561588A JPH01191265A (en) | 1988-01-26 | 1988-01-26 | Vector operation instruction starting system |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH01191265A true JPH01191265A (en) | 1989-08-01 |
Family
ID=11893610
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1561588A Pending JPH01191265A (en) | 1988-01-26 | 1988-01-26 | Vector operation instruction starting system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH01191265A (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS58137081A (en) * | 1982-02-10 | 1983-08-15 | Hitachi Ltd | Vector processor |
JPS60168237A (en) * | 1984-02-10 | 1985-08-31 | Mitsubishi Electric Corp | Arithmetic unit |
-
1988
- 1988-01-26 JP JP1561588A patent/JPH01191265A/en active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS58137081A (en) * | 1982-02-10 | 1983-08-15 | Hitachi Ltd | Vector processor |
JPS60168237A (en) * | 1984-02-10 | 1985-08-31 | Mitsubishi Electric Corp | Arithmetic unit |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP0272705B1 (en) | Loosely coupled pipeline processor | |
JPS6239780B2 (en) | ||
US5469552A (en) | Pipelined data processor having combined operand fetch and execution stage to reduce number of pipeline stages and penalty associated with branch instructions | |
JPH01224871A (en) | Vector arithmetic instruction issuing control system | |
JPH01191265A (en) | Vector operation instruction starting system | |
EP0573071A2 (en) | A microprocessor | |
JP2783285B2 (en) | Information processing device | |
JPH07244588A (en) | Data processor | |
JP2826490B2 (en) | Vector data processing device | |
JP2689914B2 (en) | Information processing device | |
JP2555664B2 (en) | Branch history table writing control method | |
JPS59163671A (en) | Vector processor | |
JPS5844569A (en) | Synchronous control system for instruction processing | |
JPH1091440A (en) | Data transmission system | |
JP2702137B2 (en) | Vector operation instruction processing method | |
CN116841614A (en) | Sequential vector scheduling method under disordered access mechanism | |
JP2002351658A (en) | Arithmetic processor | |
JPH0228724A (en) | System for controlling branching instruction | |
JPS5896346A (en) | Hierarchical arithmetic system | |
JPH0283779A (en) | Instruction execution control system for vector processor | |
JPH02148329A (en) | System for controlling register access competition | |
JPH04353928A (en) | Arithmetic processing unit | |
JPH02263256A (en) | Microcomputer and controller | |
JPH0578864B2 (en) | ||
JPH0419575B2 (en) |