JPS60178580A - Instruction control system - Google Patents

Instruction control system

Info

Publication number
JPS60178580A
JPS60178580A JP3353184A JP3353184A JPS60178580A JP S60178580 A JPS60178580 A JP S60178580A JP 3353184 A JP3353184 A JP 3353184A JP 3353184 A JP3353184 A JP 3353184A JP S60178580 A JPS60178580 A JP S60178580A
Authority
JP
Japan
Prior art keywords
instruction
execution
register
storage device
processing
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.)
Granted
Application number
JP3353184A
Other languages
Japanese (ja)
Other versions
JPH0512751B2 (en
Inventor
Shigeaki Okuya
茂明 奥谷
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 JP3353184A priority Critical patent/JPS60178580A/en
Publication of JPS60178580A publication Critical patent/JPS60178580A/en
Publication of JPH0512751B2 publication Critical patent/JPH0512751B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/80Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
    • G06F15/8053Vector processors

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)
  • Complex Calculations (AREA)

Abstract

PURPOSE:To improve the parallelism of execution processing between the 1st and the 2nd instructions when the processing speed of the leading instruction is slower than that of the following instruction by starting executing the 2nd instruction before the start of the processing of at least the final operand data in the execution of the 1st instruction. CONSTITUTION:A vector instruction from a main storage device is set in a D register 11 for instruction fetch. This instruction is decoded by a decoder 12 and set in a Q register 13 for queuing. An instruction transmission control circuit 14 transfers instruction information in the Q register 13 to a free inexecution instruction control part 15-1 or 15-2. In this case, if the leading vector instruction requires a longer processing time than the following vector instruction, the start of the execution of the following instruction is hastened to before the execution completion of the leading instruction.

Description

【発明の詳細な説明】 +a+発明の技術分野 本発明はベクトル処理装置において、先行する命令の処
理結果を後続の命令の入力オペランドとして使用する場
合における、後続命令の実行開始時期の制御方式に関す
る。
DETAILED DESCRIPTION OF THE INVENTION Technical Field of the Invention The present invention relates to a method for controlling the execution start timing of a subsequent instruction in a vector processing device when the processing result of a preceding instruction is used as an input operand of the subsequent instruction.

(bl技術の背景 ベクトル処理装置は、ベクトルのエレメントである複数
の単位データを有する第2オペランドA−aO+ al
+ ”’ + al + ”・+ arI−1と、複数
の単位データを有する第3オペランドB−bO9b1.
・・・、bI、・・・、bn−1との対応する単位デー
タ間に演算を行い、処理結果の第1オペランドC=c(
Lcl+・・・+cL・・・ICI)Iを得るこ、とを
基本機能とするものである。例えばベクトル演算C=A
+Bは、単位データの演算ci=ai+biのn回の繰
り返しで構成される。
(Background of BL technology A vector processing device processes a second operand A−aO+ al
+ ``' + al + ''・+ arI-1 and the third operand B-bO9b1. having a plurality of unit data.
..., bI, ..., bn-1, and calculate the first operand C=c(
The basic function is to obtain Lcl+...+cL...ICI)I. For example, vector operation C=A
+B is composed of unit data calculation ci=ai+bi repeated n times.

このような演算は、ベクトル処理装置において、ベクト
ル命令の実行として遂行される。ベクトル命令は一般に
、命令コード、第1オペランド指定部、第2オペランド
指定部及び第3オペランド指定部を有し、例えばrVM
 1,2.3Jは、ベクトル・レジスタ2とベクトル・
レジスタ3の内容を乗算した結果をベクトル・レジスタ
1に格納することを指定するベクトル乗算命令である。
Such operations are performed in the vector processing device as execution of vector instructions. A vector instruction generally has an instruction code, a first operand specification section, a second operand specification section, and a third operand specification section, such as rVM
1, 2.3J is vector register 2 and vector register
This is a vector multiplication instruction that specifies that the result of multiplying the contents of register 3 is to be stored in vector register 1.

(C1従来技術と問題点 第1図はベクトル処理装置の一例を示す図で、ベクトル
処理装置200は主記憶制御装置2を介して主記憶装置
lと接続され、主記憶装置上のデータを処理するが、処
理の対象となるデータは主記憶装置1とベクトル・レジ
スタ記憶装置40間でブロック転送され、演算の直接の
対象は記憶装置4のデータである。このデータ転送はロ
ード処理部7及びストア処理部8において処理される。
(C1 Prior Art and Problems FIG. 1 is a diagram showing an example of a vector processing device. A vector processing device 200 is connected to a main memory device l via a main memory control device 2, and processes data on the main memory device. However, the data to be processed is transferred in blocks between the main storage device 1 and the vector register storage device 40, and the direct target of the operation is the data in the storage device 4.This data transfer is performed by the load processing unit 7 and the vector register storage device 40. It is processed in the store processing section 8.

演算は演算処理部6の加算器9及び乗除算器lOにより
処理される。命令制御部5は以上の各部を制御する。
The operation is processed by the adder 9 and the multiplier/divider lO of the arithmetic processing section 6. The command control section 5 controls each of the above sections.

ベクトル命令を高速に実行する為に、ロード処理部7、
ストア処理部8、加算器9、乗除算器IO等は並行して
動作可能とされ、且つ所謂パイプライン制御方式によっ
て、複数の命令の実行が並行処理される。このようなベ
クトル処理装置において、成る命令に続いてその実行結
果を入力オペランドとする後続命令がある場合(このよ
うな状態をレジスタ干渉という。)には、i&続命令の
開始は先行命令の実行状態に同期させる為に、特別の考
慮が必要になる。このような場合の後続命令の開始を制
御する為の改善された方式が、同じ出願人の特許出願公
開である特開昭57−206982「命令制御方式」に
開示されている。
In order to execute vector instructions at high speed, a load processing unit 7,
The store processing unit 8, adder 9, multiplier/divider IO, etc. can operate in parallel, and a plurality of instructions are executed in parallel by a so-called pipeline control method. In such a vector processing device, if there is a subsequent instruction that uses its execution result as an input operand (this situation is called register interference), the start of the i & consequent instruction will start at the same time as the execution of the preceding instruction. Special considerations are required to synchronize the state. An improved system for controlling the start of subsequent commands in such cases is disclosed in Japanese Patent Application Laid-Open No. 57-206982 "Instruction Control System", a patent application published by the same applicant.

第2図はこの発明を適用して、乗算命令VMと加算命令
VAを実行する場合のタイミングを示す。
FIG. 2 shows the timing when executing the multiplication instruction VM and addition instruction VA by applying the present invention.

図において、IFは命令フェッチ、Dは命令デコード、
Qは待ち合わせ、Eは命令の実行の各フェーズを示す。
In the figure, IF is instruction fetch, D is instruction decode,
Q indicates waiting, and E indicates each phase of instruction execution.

図に示されるように、先行命令の実行結果の単位データ
の書込みが開始された時に実行中命令管理部からライト
・フラグ信号を出し、その他の条件が満たされていれば
、ライト・フラグ信号によって後続台゛令を開始させる
。これによりベクトル処理装置の資源が有効に利用でき
るようになる。
As shown in the figure, a write flag signal is issued from the executing instruction management section when writing of unit data of the execution result of the preceding instruction is started, and if other conditions are met, the write flag signal Starts the subsequent command. This allows the resources of the vector processing device to be used effectively.

しかし、第2図に示した方式は、もし先行命令のパイプ
ラインの中に処理時間の長いステージがあり、従って結
果の書込み速度が、後続命令による同じデータの読み出
し速度より遅くなる場合には適用できない。従って、従
来このような組合せの場合には、先行命令の実行完了を
待って、後続命令を開始しなければならず、ベクトル処
理装置の資源の遊び時間を大きくしていた。
However, the method shown in Figure 2 is applicable if there is a stage in the pipeline of the preceding instruction that takes a long processing time, and therefore the writing speed of the result is slower than the reading speed of the same data by the subsequent instruction. Can not. Therefore, in the conventional case of such a combination, it is necessary to wait for the completion of execution of the preceding instruction before starting the subsequent instruction, which increases the idle time of the resources of the vector processing device.

(d1発明の目的 従って本発明の目的は、ベクトル処理装置における上記
の問題点にかんがみ、先行命令の処理速度が後続命令の
処理速度より遅い場合における、両命令の実行処理並行
度を高める為の改善された方式を提供するにある。
(d1 Purpose of the Invention Therefore, the purpose of the present invention is to improve the parallelism of execution processing of both instructions when the processing speed of the preceding instruction is slower than the processing speed of the succeeding instruction, in view of the above-mentioned problems in vector processing devices. The aim is to provide an improved method.

Te1発明の構成 本発明の目的は、順序づけられた複数の単位データに一
定の順序で順次アクセスできる記憶装置と、該記憶装置
のデータを処理する演算部であって、第1の処理時間を
要する第1演算部と、第1演算部と並行に動作可能であ
って、第1の処理時間より短い処理時間を要する第2演
算部とを有するベクトル処理装置の命令制御方式におい
て、第1演算部を使用する第1の命令の処理結果である
上記記憶装置のデータをオペランドとして第2演算部を
使用する第2の命令が実行される場合に、該第1の命令
の実行における、少なくとも最終オペランドデータの処
理開始より前に、上記第2の命令の実行を開始すること
を特徴とする命令制御方式により達成される。
Te1 Structure of the Invention The object of the present invention is to provide a storage device that can sequentially access a plurality of ordered unit data in a fixed order, and an arithmetic unit that processes the data in the storage device, which requires a first processing time. In an instruction control method for a vector processing device having a first arithmetic unit and a second arithmetic unit that can operate in parallel with the first arithmetic unit and requires a processing time shorter than the first processing time, the first arithmetic unit When a second instruction that uses the second arithmetic unit is executed using data in the storage device as an operand that is the processing result of the first instruction that uses the first instruction, at least the final operand in the execution of the first instruction. This is achieved by an instruction control method characterized in that execution of the second instruction is started before the start of data processing.

(f1発明の実施例 以下に本発明の詳細な説明するが、その前に本発明の適
用に好適なベクトル・レジスタ記憶装置4の構成につい
て簡単に述べる。
(f1 Embodiment of the Invention The present invention will be described in detail below, but before that, the configuration of the vector register storage device 4 suitable for application of the present invention will be briefly described.

そのような記憶装置は、第3図に概要を例示するように
、複数のバンクからなり(図はバンク100〜107の
8バンクの例)、アドレス回路114によってアドレス
0−M−1の1を選択することにより、該アドレスに属
する全バンクの単位データにアクセスできる。その場合
各バンクは一定のアクセスサイクルごとにバンクlOO
から107へ順にアクセスされる。アクセスするバンク
はセレクタ120及び121により選択される。
Such a storage device consists of a plurality of banks (the figure shows an example of 8 banks, banks 100 to 107), as shown in FIG. By selecting, unit data of all banks belonging to the address can be accessed. In that case, each bank accesses the bank lOO every certain access cycle.
107 are accessed in order. The bank to be accessed is selected by selectors 120 and 121.

110は記憶装置の制御回路である。110 is a control circuit for the storage device.

このような記憶装置において、アクセスa6のスループ
ット(時間当たりの入出力可能データ量)が記憶装置の
スループットより小さい場合のアクセス制御方式につい
ては、同し出廓人の特許出願(特願昭59− ’)r記
憶装置アクセス制御方式」に開示されている。それによ
れば、アクセス源のスループットが記憶装置のそれのl
/Xより大きくなるような整数Xを選び、上記のように
して行われるバンクへの順次アクセスをX回繰り返す。
In such a storage device, an access control method when the throughput of access a6 (amount of data that can be input/output per time) is smaller than the throughput of the storage device is disclosed in a patent application filed by the same manufacturer (Japanese Patent Application No. ``)r Storage Device Access Control System''. According to this, the throughput of the access source is l that of the storage device.
An integer X that is larger than /X is selected, and the sequential access to banks performed as described above is repeated X times.

この間にX回に1回のみを有効アクセスとしてアクセス
することにより、1/Xのスループットで全バンクにア
クセスできる。
By accessing only once every X times as a valid access during this time, all banks can be accessed with a throughput of 1/X.

本発明の最も好適な実施例として、上記の記ta装置を
ベクトル・レジスタ記憶装置4に使用するベクトル処理
装置の命令制御方式を述べる。
As the most preferred embodiment of the present invention, an instruction control system for a vector processing device using the above-mentioned recording device as the vector register storage device 4 will be described.

第4図は命令制御装置である。主記憶装置lからフェッ
チされたベクトル命令が命令フェッチ用Dレジスタ11
にセットされる。この命令はデコーダ12によってデコ
ードされる。デコードされた命令情報は待ち合わせ用Q
レジスタ13にセットされる。命令発信制御回路14は
、Qレジスタ13及び実行中命令管理部15−1又は1
5−2からの情報によって、命令発信の可否を判断し、
発信可能な場合には、空きの実行中命令管理部15−1
又は15−2へQレジスタ13内の命令情報を転送する
FIG. 4 shows a command control device. The vector instruction fetched from the main memory l is stored in the instruction fetch D register 11.
is set to This instruction is decoded by decoder 12. The decoded instruction information is Q for waiting.
Set in register 13. The instruction transmission control circuit 14 includes the Q register 13 and the executing instruction management section 15-1 or 1.
Based on the information from 5-2, determine whether or not to issue the command,
If it is possible to send, an empty executing command management section 15-1
Alternatively, the instruction information in the Q register 13 is transferred to the Q register 15-2.

実行中命令管理部15−1は、実行中命令用Eルジスタ
16−1.11数回路17−1及びライト・フラグ18
−1を有する。Elレジスタ16−1には、対応する演
算処理部で実行される命令情報がセフ)される。計数回
路17−1はElレジスタ16−1に命令情報がセット
された時に時間計数を開始し、その命令情報で定まる時
間を計数した時に、ライト・フラグ18−1をオンにセ
ントする。実行中命令管理部15−2も15−1と同様
の構成を有する。
The executing instruction management unit 15-1 includes an E register 16-1 for executing instructions, a number circuit 17-1, and a write flag 18.
-1. The El register 16-1 stores instruction information to be executed by the corresponding arithmetic processing section. The counting circuit 17-1 starts counting time when the instruction information is set in the El register 16-1, and turns on the write flag 18-1 when it has counted the time determined by the instruction information. The executing command management unit 15-2 also has the same configuration as the executing command management unit 15-1.

命令発信制御部14は、■命令発信先の演算処理部及び
実行中命令管理部が空いているか、■命令オペランドの
ベクトル・レジスタの干渉が無いか、■ライト・フラグ
がオンか等により命令発信可否を判定する。こ\でベク
トル・レジスタの干渉とは、ベクトル・レジスタ記憶装
置上のレジスタにおいて、前記のレジスタ干渉がある状
態を言う。この干渉が検出された場合には、他の条件が
満足されていても、先行命令についてライト・−フラグ
1 B−1または18−2がオンと1 、+、 。
The instruction transmission control unit 14 determines whether the instruction transmission destination arithmetic processing unit and executing instruction management unit are free, ■ whether there is interference with the vector register of the instruction operand, and ■ whether the write flag is on, etc. Determine whether or not it is possible. Here, vector register interference refers to a state in which there is the above-mentioned register interference in the registers on the vector register storage device. If this interference is detected, the write flag 1B-1 or 18-2 is turned on for the preceding instruction, even if other conditions are met.

命令発信を待つ。Wait for command to be sent.

第5図は命令発信制御回路14内にある、レジスタ干渉
チェック回路の実施例である。図示の回路は実行中命令
管理部15−1に対応する回路であり、命令発信制御回
路14には、同様の回路が実行中命令管理部15−2に
対応して別に1組設けられる。
FIG. 5 shows an embodiment of a register interference check circuit included in the instruction transmission control circuit 14. The illustrated circuit corresponds to the executing command management unit 15-1, and the command transmission control circuit 14 is provided with another set of similar circuits corresponding to the executing command management unit 15-2.

図においてライト・フラグ信号はライト・フラグ18−
1からの信号であり、その他の入力信号はそれぞれEl
レジスタ16−1及びQレジスタ13内の命令情報のう
らのオペランド・レジスタ番号情報である。
In the figure, the write flag signal is write flag 18-
1, and the other input signals are each from El
This is operand register number information behind the instruction information in register 16-1 and Q register 13.

Eルジスタの第1オペランド・レジスタ番号、即ち実行
中命令の結果格納先レジスタ番号、とQレジスタの第2
又は第3オペランド・レジスタ番号とが一致すると、そ
れぞれの比較回路19又は20の”l”出力が論理積ゲ
ー)21又は22に入力する。この時、否定回路23の
ライト・フラグ信号入力が”0゛であれば、ゲート21
41!’!・ 1、 、−° ・ フ、、L ” 転;
+、(i+ 命理和ゲート24を経て命令発信待ち信号
が”1゛となる。その他の条件においては、命令発信待
ち信号は”0”である。命令発信制御回路14において
、命令発信待ち信号が”ビである間、Qし夛スタ13に
ある待ち合わせ命令の発信は抑制される。
The first operand register number of the E register, that is, the register number where the result of the instruction being executed is stored, and the second operand register number of the Q register.
Or, when the third operand register number matches, the "l" output of the respective comparator circuit 19 or 20 is input to the AND game 21 or 22. At this time, if the write flag signal input to the NOT circuit 23 is "0", the gate 21
41! '!・1, ,−° ・F,,L” rotation;
+, (i+ The command transmission wait signal becomes "1" through the imperative sum gate 24. Under other conditions, the command transmission wait signal becomes "0". In the command transmission control circuit 14, the command transmission wait signal becomes "1". ``While the condition is ``BI'', the transmission of the rendezvous command in the Q-transfer register 13 is suppressed.

第6図は本発明によるベクトル命令実行の一例を示す。FIG. 6 shows an example of vector instruction execution according to the present invention.

図は下記のような2命令が■■の順に実行されるべき場
合である。
The figure shows a case where the following two instructions are to be executed in the order of ■■.

■ VD 1,2.3 ■ VA 4,5.1 こ\で、■のVD命令はベクトル・レジスタ番号2と番
号3とのベクトル間の除算を実行し、結果をベクトル・
レジスタ番号lに格納す葛命令であり、■のVA命令は
ベクトル・レジスタ番号5と番号1とのベクトル間の加
算を実行し、結果をベクトル・レジスタ番号4に格納す
る命令である。
■ VD 1, 2.3 ■ VA 4, 5.1 Here, the VD instruction in ■ executes division between the vectors of vector register number 2 and number 3, and stores the result in vector register number 2 and number 3.
This is an instruction to store in register number 1, and the VA instruction (3) is an instruction to execute addition between vectors of vector register number 5 and number 1, and store the result in vector register number 4.

従って、両命令間にはレジスタ番号lにおいてレジスタ
干渉がある。
Therefore, there is register interference at register number l between both instructions.

又、■の命令は各ベクトル要素の除算において、演算回
路を5サイクル間保留するものとし、この為にベクトル
・レジスタ記憶装置4と演算部6との単位データの入出
力は、前記特許出願(特願昭59− )の方式により、
5サイクルに1回を有効アクセスとして実行される。
In addition, the instruction (2) suspends the arithmetic circuit for five cycles in the division of each vector element, and for this reason, the input/output of unit data between the vector register storage device 4 and the arithmetic unit 6 is as per the above-mentioned patent application ( According to the method of patent application 1982-),
It is executed once every five cycles as a valid access.

第6図は左から右へ時間の流れを示し、菱形は各命令実
行パイプラインのステージの進行を、上から下の方向の
流れとして表している。IF、D、Q、E等の記号の意
味は第2図と同じである。VD命令の流れにおける最下
段は演算結果をベクトル・レジスタ記憶装置に格納する
ステージであり、数字は各サイクルでアクセスする記憶
装置バンクの番号を示し、このうち番号を口で囲んで示
すバンクが有効アクセスとしてアクセスされることを示
している。本例でベクトルは8個の単位データで構成さ
れ、記憶装置の同じアドレスにアクセスを5回繰り返し
、合計40サイクルのアクセスによって8データを入/
出力するものとしている。
FIG. 6 shows the flow of time from left to right, and the diamonds represent the progress of the stages of each instruction execution pipeline as a flow from top to bottom. The meanings of symbols such as IF, D, Q, and E are the same as in FIG. The lowest stage in the VD instruction flow is the stage where the operation result is stored in the vector register storage device, and the number indicates the number of the storage device bank accessed in each cycle. Among these, the bank indicated by enclosing the number is the valid one. Indicates that it will be accessed as an access. In this example, the vector is composed of 8 unit data, and the same address in the storage device is accessed 5 times, and 8 data are input/input by accessing the same address in the storage device 5 times for a total of 40 cycles.
It is assumed to be output.

他方、■のベクトル加算命令VAでは、パイプラインの
全ステージが1サイクルで進むので、ベクトル・レジス
タ記憶装置4とのデータ入出力は毎サイクル可能であり
、8サイクルで全データを入/出力できる。
On the other hand, in the vector addition instruction VA (■), all stages of the pipeline advance in one cycle, so data can be input/output to/from the vector register storage device 4 every cycle, and all data can be input/output in 8 cycles. .

VD命令■がEルジスタ16−1にセットされると、計
数回路17−1が時間計数を開始し、毎サイクル+1さ
れて、計数値が設定値になると、ライト・フラグ18−
1をオン(”1”)にする。
When the VD instruction (■) is set in the E register 16-1, the counting circuit 17-1 starts counting time and is incremented by 1 every cycle. When the counted value reaches the set value, the write flag 18-1 is set.
1 is turned on (“1”).

従って第5図のライト・フラグ信号が”1”になりで命
令発信待ち信号が”O”になるので、命令発信制御回路
14において、Qレジスタ13にあるVA命令が実行中
命令用E2レジスタ16−2にセットされ、VA命令■
の実行が開始される。
Therefore, the write flag signal in FIG. 5 becomes "1" and the command transmission wait signal becomes "O", so that in the command transmission control circuit 14, the VA instruction in the Q register 13 is transferred to the E2 register 16 for executing instructions. -2, VA command ■
execution begins.

上記において、計数回路17−1の設定値は、ベクトル
・レジスタ記憶装置4の各バンクへX回の繰り返しアク
セスをするアクセス制御方式において、第X回アクセス
の開始時点を決定するように設定される。従って、上記
のように毎サイクルカウントアンプする計数回路を使用
する場合の設定値は、バンク数をN、繰り返しアクセス
回数をXとした場合、N(X−1)と、命令実行開始か
ら綴初の結果を格納するまでの時間により定まる。
In the above, the setting value of the counting circuit 17-1 is set to determine the start point of the X-th access in the access control method of repeatedly accessing each bank of the vector register storage device 4 X times. . Therefore, when using a counting circuit that counts and amplifies every cycle as described above, the setting value is N(X-1), where the number of banks is N and the number of repeated accesses is It is determined by the time it takes to store the results.

後者の値を10サイクルとすると、本例の設定値は8X
 (5−1)+l0=42となる。
If the latter value is 10 cycles, the setting value in this example is 8X
(5-1)+l0=42.

1g)発明の効果 以上の説明から明らかなように、本発明によれば、レジ
スタ干渉があり、且つ先行ベクトル命令が後続ベクトル
命令より長い処理時間を要する場合において、後続命令
の実行開始時期を、先行命令の実行完了以前まで早める
ことができるので、ベクトル処理装置の実行並行度を高
め、従って装置の処理性能を改善することができる。
1g) Effects of the Invention As is clear from the above description, according to the present invention, when there is register interference and the preceding vector instruction requires longer processing time than the subsequent vector instruction, the execution start time of the subsequent instruction can be set by Since it is possible to advance the execution of the preceding instruction to the point where it is completed, it is possible to increase the parallelism of execution of the vector processing device and thus improve the processing performance of the device.

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

第1図はベクトル処理装置の概要を示す図、第2図は従
来の命令列処理タイミング例を示す図、第3図はベクト
ル・レジスタ記憶装置の例を示す図、第4図は本発明の
命令制御装置の実施例のブロック図、第5図は命令発信
制御回路内のレジスタ干渉チェック回路の実施例のブロ
ック図、第6図は本発明の命令列処理タイミング例を示
す図である。 図において、200はベクトル処理装置、lは主記憶装
置、2は主記憶制御装置、3はメモリ・アクセス処理部
、4はベクトル・レジスタ記憶装置、5は命令制御部、
6は演算処理部、11は命令フェッチ用Dレジスタ、1
3は待ち合わせ用Qレジスタ、14は命令発信制御部、
15−1及び15−2は実行中命令管理部、16−1及
び16−2はそれぞれ実行中命令用E1及びE2レジス
タ、17−1及び17−2は計数回路、18−1及び1
8−2はライト・フラグ、19及び20は比較回路、2
1及び22は論理積ゲート、23は否定ゲート、24は
論理和ゲート、100〜107は記憶装置バンク、11
0は記憶装置の制御回路である。 築 1 □ θ O
FIG. 1 is a diagram showing an overview of a vector processing device, FIG. 2 is a diagram showing an example of conventional instruction sequence processing timing, FIG. 3 is a diagram showing an example of a vector register storage device, and FIG. 4 is a diagram showing an example of a conventional instruction sequence processing timing. FIG. 5 is a block diagram of an embodiment of the instruction control device, FIG. 5 is a block diagram of an embodiment of the register interference check circuit in the instruction transmission control circuit, and FIG. 6 is a diagram showing an example of instruction sequence processing timing of the present invention. In the figure, 200 is a vector processing device, l is a main storage device, 2 is a main storage control device, 3 is a memory access processing unit, 4 is a vector register storage device, 5 is an instruction control unit,
6 is an arithmetic processing unit, 11 is a D register for instruction fetch, 1
3 is a Q register for waiting, 14 is a command transmission control unit,
15-1 and 15-2 are executing instruction management units, 16-1 and 16-2 are E1 and E2 registers for executing instructions, respectively, 17-1 and 17-2 are counting circuits, 18-1 and 1
8-2 is a write flag, 19 and 20 are comparison circuits, 2
1 and 22 are AND gates, 23 is a NOT gate, 24 is an OR gate, 100 to 107 are storage device banks, 11
0 is a control circuit of the storage device. Construction 1 □ θ O

Claims (1)

【特許請求の範囲】 fil順序づけられた複数の単位データに一定の順序で
順次アクセスできる記憶装置と、該記憶装置のデータを
処理する演算部であって、第1の処理時間を要する第1
演算部と、第1演算部と並行に動作可能であって、第1
の処理時間より短い処理時間を要する第2演算部とを有
するベクトル処理装置の命令制御方式において、第1演
算部を使用する第1の命令の処理結果である上記記憶装
置のデータをオペランドとして第2演算部を使用する第
2の命令が実行される場合に、該第1の命令の実行にお
ける、少なくとも最終オペランドデータの処理開始より
前に、上記第2の命令の実行を開始することを特徴とす
る命令制御方式。 (2)記憶装置は第2演算部の処理時間に等しいアクセ
スサイクルで順序づけられた単位データに一定の順序で
順次アクセスし、第1演算部は第2演算部のX倍の処理
時間を要し、第1の命令の実行においては、上記記憶装
置における同一の単位データに対して各々X回アクセス
を繰り返し、そのうちの1回のアクセスのみを有効アク
セスとするように構成され、第1の命令の実行における
処理結果データを該記憶装置に格納するためのアクセス
における、第X回のアクセスを行う最初の単位データの
アクセスを開始する時以後に、第2の命令の実行開始を
可能とする信号を発生することを特徴とする特許請求の
範囲第f11項記載の命令制御方式。
[Scope of Claims] A storage device capable of sequentially accessing a plurality of unit data arranged in fil order in a fixed order, and a first arithmetic unit that processes data in the storage device, which requires a first processing time.
an arithmetic unit, the first arithmetic unit is operable in parallel with the first arithmetic unit;
In an instruction control system for a vector processing device having a second arithmetic unit that requires a processing time shorter than the processing time of When a second instruction using two arithmetic units is executed, execution of the second instruction is started at least before the start of processing of the final operand data in the execution of the first instruction. command control method. (2) The storage device sequentially accesses ordered unit data in a fixed order in access cycles equal to the processing time of the second calculation unit, and the first calculation unit requires X times the processing time of the second calculation unit. , in the execution of the first instruction, the same unit data in the storage device is accessed X times each, and only one of the accesses is considered a valid access; A signal that enables the start of execution of the second instruction after the time of starting the access of the first unit data for the Xth access in the access for storing the processing result data in the storage device in the execution. The command control method according to claim f11, characterized in that the command control method is generated.
JP3353184A 1984-02-24 1984-02-24 Instruction control system Granted JPS60178580A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3353184A JPS60178580A (en) 1984-02-24 1984-02-24 Instruction control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3353184A JPS60178580A (en) 1984-02-24 1984-02-24 Instruction control system

Publications (2)

Publication Number Publication Date
JPS60178580A true JPS60178580A (en) 1985-09-12
JPH0512751B2 JPH0512751B2 (en) 1993-02-18

Family

ID=12389126

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3353184A Granted JPS60178580A (en) 1984-02-24 1984-02-24 Instruction control system

Country Status (1)

Country Link
JP (1) JPS60178580A (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01224840A (en) * 1988-03-04 1989-09-07 Nec Corp By-pass line control system for information processor
JPH01258068A (en) * 1988-04-07 1989-10-16 Fujitsu Ltd Linkage control system for vector processor
JPH03156674A (en) * 1989-11-15 1991-07-04 Koufu Nippon Denki Kk Vector processor
US5073970A (en) * 1985-11-13 1991-12-17 Hitachi, Ltd. Vector processing apparatus allowing succeeding vector instruction chain processing upon completion of decoding of a preceding vector instruction chain
JPH04116769A (en) * 1990-09-07 1992-04-17 Koufu Nippon Denki Kk Vector processor
JP2012103959A (en) * 2010-11-11 2012-05-31 Fujitsu Ltd Vector processing circuit, instruction issue control method and processor system
US9164767B2 (en) 2012-01-24 2015-10-20 Socionext Inc. Instruction control circuit, processor, and instruction control method

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS51854A (en) * 1974-06-21 1976-01-07 Hitachi Ltd Deijitarukeisankino senkoseigyohoshiki
JPS5199427A (en) * 1975-02-27 1976-09-02 Hitachi Ltd
JPS57206982A (en) * 1981-06-15 1982-12-18 Fujitsu Ltd Instruction controlling system
JPS5844569A (en) * 1981-09-10 1983-03-15 Fujitsu Ltd Synchronous control system for instruction processing

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS51854A (en) * 1974-06-21 1976-01-07 Hitachi Ltd Deijitarukeisankino senkoseigyohoshiki
JPS5199427A (en) * 1975-02-27 1976-09-02 Hitachi Ltd
JPS57206982A (en) * 1981-06-15 1982-12-18 Fujitsu Ltd Instruction controlling system
JPS5844569A (en) * 1981-09-10 1983-03-15 Fujitsu Ltd Synchronous control system for instruction processing

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5073970A (en) * 1985-11-13 1991-12-17 Hitachi, Ltd. Vector processing apparatus allowing succeeding vector instruction chain processing upon completion of decoding of a preceding vector instruction chain
JPH01224840A (en) * 1988-03-04 1989-09-07 Nec Corp By-pass line control system for information processor
JPH01258068A (en) * 1988-04-07 1989-10-16 Fujitsu Ltd Linkage control system for vector processor
JPH03156674A (en) * 1989-11-15 1991-07-04 Koufu Nippon Denki Kk Vector processor
JPH04116769A (en) * 1990-09-07 1992-04-17 Koufu Nippon Denki Kk Vector processor
JP2012103959A (en) * 2010-11-11 2012-05-31 Fujitsu Ltd Vector processing circuit, instruction issue control method and processor system
US9164767B2 (en) 2012-01-24 2015-10-20 Socionext Inc. Instruction control circuit, processor, and instruction control method

Also Published As

Publication number Publication date
JPH0512751B2 (en) 1993-02-18

Similar Documents

Publication Publication Date Title
US5404552A (en) Pipeline risc processing unit with improved efficiency when handling data dependency
US4740893A (en) Method for reducing the time for switching between programs
JPH0374434B2 (en)
JPS6217252B2 (en)
US5438669A (en) Data processor with improved loop handling utilizing improved register allocation
JP2653037B2 (en) Data processing system
JPH07104784B2 (en) Digital data processor
JPS60178580A (en) Instruction control system
JP2690406B2 (en) Processor and data processing system
JPS6161416B2 (en)
KR100278136B1 (en) Data processing device and data processing method
JP3520372B2 (en) Elimination of critical path in operation of memory control unit and input / output control unit
JPH0222413B2 (en)
JPS6125166B2 (en)
JP2668987B2 (en) Data processing device
JPH07110769A (en) Vliw type computer
JP2636821B2 (en) Parallel processing unit
JP2654451B2 (en) Data output method
JP2819733B2 (en) Information processing device
JP3325309B2 (en) Subroutine return instruction processing unit
JP3743155B2 (en) Pipeline controlled computer
JP2763450B2 (en) Pipeline processing data processing device
JPS595354A (en) Data processing device
JPS5896346A (en) Hierarchical arithmetic system
JPS6235694B2 (en)