JPH05158968A - Instruction issue control device - Google Patents

Instruction issue control device

Info

Publication number
JPH05158968A
JPH05158968A JP34811591A JP34811591A JPH05158968A JP H05158968 A JPH05158968 A JP H05158968A JP 34811591 A JP34811591 A JP 34811591A JP 34811591 A JP34811591 A JP 34811591A JP H05158968 A JPH05158968 A JP H05158968A
Authority
JP
Japan
Prior art keywords
instruction
slot
entry
write
vector data
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
JP34811591A
Other languages
Japanese (ja)
Other versions
JP3080740B2 (en
Inventor
Makoto Komata
誠 小俣
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.)
NEC Computertechno Ltd
Original Assignee
NEC Computertechno 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 NEC Computertechno Ltd filed Critical NEC Computertechno Ltd
Priority to JP03348115A priority Critical patent/JP3080740B2/en
Publication of JPH05158968A publication Critical patent/JPH05158968A/en
Application granted granted Critical
Publication of JP3080740B2 publication Critical patent/JP3080740B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Abstract

PURPOSE:To speed up vector processing by minimizing a queue time without allowing reading data to exceed writing data when a writing instruction and a reading instruction are successively continued in this order in the same entry of a memory for storing vector data. CONSTITUTION:The using entry number of the preceding writing instruction is stored in an entry storing circuit 21 and compared with the using entery number (stored in a register 17) of the succeeding reading instruction by a comparator 23. When both the numbers are equal to each other, a reading control circuit 14 detects the arrival of an idle slot other than the using slot of the writing instruction after the lapse of a prescribed time determined by the execution time of the writing instruction and then issues the reading instruction. When both the numbers are not equal, the reading instruction is issued immediately after the arrival of an idle slot.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【技術分野】本発明はベクトル処理装置の命令発行制御
装置に関し、特にRAMで構成されるベクトルデータユ
ニットを有するベクトル処理装置の書込み読出し命令の
発行制御装置に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an instruction issue control device for a vector processing device, and more particularly to a write / read instruction issue control device for a vector processing device having a vector data unit composed of a RAM.

【0002】[0002]

【従来技術】ベクトル処理装置の存在意義は、大量のデ
ータを高速にベクトル演算処理するところにある。高速
処理を実現するには、ベクトル演算そのものにも種々の
工夫がなされるが、演算データの参照、演算結果の格納
のためのメモリへのアクセス回路を削減することもその
手段の一つである。そのために後続のベクトル命令で参
照されるような演算の中間結果等を格納するベクトルデ
ータユニットをベクトル処理装置内に持つことは一般的
におこなわれる。
2. Description of the Related Art The significance of the existence of a vector processing device lies in the fact that a large amount of data is processed at high speed by vector operation. In order to realize high-speed processing, various measures are taken in the vector operation itself, but one of the means is to reduce the access circuit to the memory for referring to the operation data and storing the operation result. .. Therefore, it is common practice to have a vector data unit in the vector processing device for storing an intermediate result of an operation which is referred to by a subsequent vector instruction.

【0003】ベクトルデータユニットの容量が大きけれ
ば格納できるベクトルデータのエントリ数も増えメモリ
へのアクセスもより多く削減することが可能になるた
め、ベクトルデータユニットに容量の大きいRAMがよ
く使用される。ところがRAMの一般的制約として同一
の読書き最小単位に対し、書込み、読出しの動作が同時
には行えないということがある。
If the capacity of the vector data unit is large, the number of entries of the vector data that can be stored is increased and the access to the memory can be reduced more. Therefore, a large capacity RAM is often used for the vector data unit. However, as a general limitation of RAM, there are cases in which the same read / write minimum unit cannot perform write and read operations at the same time.

【0004】ベクトル処理装置のベクトルデータユニッ
トのように連続する複数のデータを読出し、または書込
みを行い、かつ複数の命令が並行動作する必要がある装
置にRAMを使用する場合、前述の制約があるため一般
的には、図2に示すようにRAMの物理的な構成単位VD
M0〜VDM3とデータユニットの論理的な単位VD0 〜VD1
(カッコ内は要素番号)とを構成し、また物理構成単位
VDM0〜VDM3では時分割で処理を行い、各々の物理構成単
位時間では1処理時間ずつずらし処理を行う。この時物
理構成単位の数(図2では“4”)が時分割する数であ
り、論理的に同時動作可能な処理数となる。尚、この時
分割された1処理時間単位をスロットと呼ぶ。
When the RAM is used in a device such as a vector data unit of a vector processing device for reading or writing a plurality of continuous data and requiring a plurality of instructions to operate in parallel, there are the above-mentioned restrictions. Therefore, in general, as shown in FIG. 2, the physical configuration unit VD of RAM is
Logical unit of M0 to VDM3 and data unit VD0 to VD1
(Element numbers in parentheses) and the physical unit
In VDM0 to VDM3, processing is performed in a time-sharing manner, and processing is shifted by one processing time for each physical configuration unit time. At this time, the number of physical constitutional units (“4” in FIG. 2) is the number of time divisions, which is the number of processes that can logically operate simultaneously. The time-divided one processing time unit is called a slot.

【0005】図3は図2のように構成されたベクトルデ
ータユニットにおける動作のタイムチャート示したもの
である。スロット0でVD0 に書込み動作、スロット2で
VD1から読出し動作を実行させたものである。尚、Wは
書込み、Rは読出しを夫々示す。
FIG. 3 is a time chart of the operation in the vector data unit constructed as shown in FIG. Write operation to VD0 in slot 0, in slot 2
The read operation is executed from VD1. Note that W indicates writing and R indicates reading.

【0006】各物理単位では、示されたスロットタイミ
ングで書込み、読出しの動作を行い、物理単位間では処
理タイミングがずらされており、論理的なデータ構成は
物理構成単位を越えて配置されているため、書込み読出
しの動作は連続して行われ、かつ同時に動作することが
できる。
In each physical unit, write and read operations are performed at the indicated slot timing, the processing timing is shifted between physical units, and the logical data structure is arranged beyond the physical unit. Therefore, the write and read operations can be performed continuously and can be performed simultaneously.

【0007】また、ベクトル演算処理装置ではベクトル
データユニットからの読出し動作開始までの時間(PRE
PROCESS TIME,PPTと以後記述)は一定であるが、演
算実行時間(FUNCTION UNIT TIME,FUTと以後記述)
は処理する演算により異なる場合が多い。
Further, in the vector arithmetic processing device, the time (PRE
PROCESS TIME, PPT (hereinafter described) is constant, but operation execution time (FUNCTION UNIT TIME, FUT, described below)
Often differs depending on the calculation to be processed.

【0008】実行する演算命令がベクトルデータユニッ
トへ結果を格納する命令である時、このFUTによりベ
クトルデータユニットへデータが到達するタイミングが
異なるため、書込みスロットタイミングとのタイミング
調整用に、演算器とベクトルデータユニットとの間にス
ロット数と同じ段数のタイミング調整用バッファを持
ち、ベクトルデータユニット書込み命令の発行時には、
書込むタイミングを意識せず使用するスロットのみを指
定し、後続命令の発行を早める手法がよく用いられる。
When the arithmetic instruction to be executed is an instruction to store the result in the vector data unit, the timing at which the data arrives at the vector data unit due to this FUT is different, so that the arithmetic unit and the arithmetic unit are used for adjusting the timing with the write slot timing. It has a timing adjustment buffer with the same number of slots as the vector data unit, and when issuing a vector data unit write command,
It is often used to specify only the slot to be used without regard to the timing of writing and to issue the subsequent instruction earlier.

【0009】図4は上述したバッファが接続されたベク
トルデータユニットとベクトル演算器を含むベクトル処
理装置の簡略構成図である。図において、ベクトルデー
タユニット50は図2に示した構成であり、物理単位VD
M0〜VDM3の4つのRAMを有し、更に前述した如くタイ
ミング調整用のバッファ53を有する。この例では、ベ
クトルデータユニット50におけるRAMへのアクセス
パスは2つあるので、各パス毎に当該タイミング調整用
バッファ53を夫々設けている。
FIG. 4 is a simplified block diagram of a vector processing device including a vector data unit to which the above-mentioned buffer is connected and a vector calculator. In the figure, the vector data unit 50 has the configuration shown in FIG.
It has four RAMs M0 to VDM3, and further has a buffer 53 for timing adjustment as described above. In this example, since there are two access paths to the RAM in the vector data unit 50, the timing adjustment buffer 53 is provided for each path.

【0010】尚、52はベクトルオペランドレジスタ、
54はベクトル演算器、55はクロスバを夫々示してい
る。
52 is a vector operand register,
Reference numeral 54 is a vector calculator, and 55 is a crossbar.

【0011】以上説明してきたような、ベクトル処理装
置に命令を発行する命令発行制御装置において、従来の
技術では、先行するベクトルデータユニット書込み命令
に連続しベクトルデータユニット読出し命令がある時、
互いに使用するベクトルデータユニットのエントリが同
一で無いときには、スロットの空きをチェックして発行
し、エントリが一致しているときは、スロットが空いて
いても発行するタイミングによっては読出しが先行して
しまう可能性がある。そこで先行する書込み命令が終了
するまで後続の読出し命令の発行を行わないように制御
されている。
In the instruction issue control device for issuing an instruction to the vector processing device as described above, in the prior art, when the preceding vector data unit write command is followed by the vector data unit read command,
If the entries of the vector data units used by each other are not the same, the slot is checked for issuance, and if the entries match, the read will precede depending on the timing of issue even if the slot is free. there is a possibility. Therefore, it is controlled so that the subsequent read command is not issued until the preceding write command is completed.

【0012】前述したようにRAMで構成されるベクト
ルデータユニットを有するベクトル処理装置に命令を発
行する際、従来の命令発行制御装置では、先行するベク
トルデータユニットへの書込み命令と後続の読出し命令
でベクトルデータユニットのエントリが一致していると
きは、ベクトルデータユニットに対する処理の順番を保
証するために、先行する書込み命令の処理が終了するま
で後続の読出し命令の発行を抑止するようになっている
ので、この様な命令の並びが多く含まれるプログラムで
は、全体の処理実行時間が長くなってしまうという欠点
がある。
When issuing a command to the vector processing device having the vector data unit composed of the RAM as described above, the conventional command issuing control device uses the write command to the preceding vector data unit and the subsequent read command. When the entries of the vector data unit match, in order to guarantee the processing order for the vector data unit, the issuance of the subsequent read instruction is suppressed until the processing of the preceding write instruction is completed. Therefore, a program including a large number of such instruction sequences has a drawback that the overall processing execution time becomes long.

【0013】[0013]

【発明の目的】本発明の目的は、同一のベクトルデータ
ユニットのエントリに対する書込み命令と読出し命令と
が連続するとき、読出しデータが書込みデータを追い越
すことなくかつ無駄な待ち時間を無くすことが可能なベ
クトル処理装置の命令発行制御装置を提供することであ
る。
It is an object of the present invention that when a write command and a read command for the same vector data unit entry are consecutive, the read data does not overtake the write data and the useless waiting time can be eliminated. An object is to provide an instruction issue control device for a vector processing device.

【0014】[0014]

【発明の構成】本発明によれば、複数のデータエレメン
トからなるベクトルデータを各々が格納し複数のエント
リを夫々有するn個(nは2以上の整数)のベクトルデ
ータメモリと、前記メモリに対するアクセスタイミング
であるスロットタイミングを第1から第nまでのスロッ
ト番号として順次繰返し生成する手段とを含むベクトル
処理装置における書込み読出し命令発行制御装置であっ
て、先行する書込み命令の使用エントリ番号及び使用ス
ロット番号を書込み動作終了まで保持する保持手段と、
後続の読出し命令の使用エントリ番号と前記エントリ保
持手段により保持されている使用エントリ番号との一致
を検出するエントリ一致検出手段と、この一致検出手段
により一致が検出されたとき、前記書込み命令が発行さ
れてからこの命令の実行時間により定まる所定時間後
に、前記保持手段に保持されている使用スロット以外の
空きスロットが到来したときに前記読出し命令の発行を
制御する手段と、前記一致検出手段により不一致が検出
されたとき、前記保持手段に保持されている使用スロッ
ト以外の空きスロットが到来したときに直ちに前記読出
し命令の発行を制御する手段とを含むことを特徴とする
命令発行制御装置が得られる。
According to the present invention, n (n is an integer of 2 or more) vector data memories each of which stores vector data composed of a plurality of data elements and each has a plurality of entries, and access to the memories. A write / read instruction issue control device in a vector processing device, which includes means for sequentially and repeatedly generating slot timings, which are timings, as first to nth slot numbers, wherein a use entry number and a use slot number of a preceding write instruction are used. Holding means for holding until the end of the writing operation,
Entry match detection means for detecting a match between a used entry number of a subsequent read instruction and a used entry number held by the entry holding means, and the write instruction is issued when a match is detected by the match detection means After a predetermined time determined by the execution time of this instruction, the means for controlling the issuance of the read instruction when a vacant slot other than the used slot held by the holding means arrives, and the match detection means do not match Is detected, a command issuing control device is provided which includes means for immediately controlling the issuance of the read command when an empty slot other than the used slot held in the holding means arrives. ..

【0015】[0015]

【実施例】次に、本発明の実施例について図を参照して
説明する。
Embodiments of the present invention will now be described with reference to the drawings.

【0016】図1は本発明の実施例の概略ブロック図で
ある。命令制御部10は次発行命令を保持する命令レジ
スタ11、この命令レジスタ11に保持されている命令
がベクトルデータユニット使用命令である時、この命令
が使用するベクトルデータユニットのエントリ番号を保
持する使用エントリレジスタ17、命令レジスタ11の
内容を解読する命令デコーダ12を有する。
FIG. 1 is a schematic block diagram of an embodiment of the present invention. The instruction control unit 10 holds an instruction register 11 for holding a next issued instruction, and a use for holding an entry number of a vector data unit used by this instruction when the instruction held by this instruction register 11 is a vector data unit use instruction. It has an instruction register 12 which decodes the contents of the entry register 17 and the instruction register 11.

【0017】この命令デコーダ12は次発行命令がベク
トルデータユニット書込み命令である時は書込み制御回
路13へ、また次発行命令がベクトルデータユニット読
出し命令の時は読出し制御回路14へ夫々制御信号を出
力するものである。
The instruction decoder 12 outputs a control signal to the write control circuit 13 when the next issue instruction is a vector data unit write instruction, and to the read control circuit 14 when the next issue instruction is a vector data unit read instruction. To do.

【0018】更に命令制御部10はベクトルデータユニ
ットへの書込み制御回路13を有し、この制御回路13
は命令デコーダ12からの書込み制御信号を受けると、
各アクセスパス毎にある書込みパス使用中フラグ25と
スロット使用中フラグ32とをチェックし、未使用のパ
ス及びスロットがあって書込み命令発行可能であると判
断すると、発行通知レジスタ15へベクトルデータユニ
ット書込み命令を示す制御信号をセットすると共に、ス
ロット番号通知レジスタ16に未使用スロットの最若番
のスロット番号を選択してセットする。また、エントリ
通知レジスタ18には使用エントリレジスタ17で保持
されている使用エントリ番号をセットする。
Further, the instruction control unit 10 has a write control circuit 13 for writing to the vector data unit, and this control circuit 13
Receives a write control signal from the instruction decoder 12,
If the write path in-use flag 25 and the slot in-use flag 32 in each access path are checked and it is determined that there is an unused path and slot and the write command can be issued, the issue notification register 15 stores the vector data unit. A control signal indicating a write command is set, and the slot number notification register 16 is set by selecting the lowest slot number of the unused slots. In addition, the entry notification register 18 sets the usage entry number held in the usage entry register 17.

【0019】アクセスベクトルデータユニット管理部2
0−1、20−2はベクトルデータユニットへのアクセ
スパスに夫々対応して用意されるもので、本例ではアク
セスパスが2つとしている。このアクセスパスは未使用
のものが若番から選択されるものとする。以後ベクトル
データユニット管理部の説明はすべて書込み命令発行時
選択されたパスに対応したものである。
Access vector data unit management unit 2
0-1 and 20-2 are prepared respectively corresponding to the access paths to the vector data unit, and in this example, there are two access paths. It is assumed that unused access paths are selected from the youngest. Hereinafter, all the description of the vector data unit management section corresponds to the path selected when the write command is issued.

【0020】フラグ25は書込み命令発行時セットされ
書込み終了まで点灯し対応書込みパスが使用中であるこ
と、及びエントリ保持回路21、スロット番号保持回路
22の内容が有効であることを夫々示す書込みパス使用
中フラグである。エントリ保持回路21は書込み命令発
行時に使用エントリレジスタ17で保持されている書込
み命令が使用するエントリ番号がセットされ、書込み終
了までこれを保持する。
The flag 25 is set when a write command is issued, lights up until the end of writing, and indicates that the corresponding write path is in use and that the contents of the entry holding circuit 21 and the slot number holding circuit 22 are valid, respectively. It is a busy flag. The entry holding circuit 21 is set with the entry number used by the write instruction held in the use entry register 17 when the write instruction is issued, and holds it until the end of writing.

【0021】スロット番号保持回路22は同様に書込み
命令発行時選択されたスロット番号がセットされ、書込
み終了までこれを保持する。エントリ比較回路23はエ
ントリ保持回路21と使用エントリレジスタ17との内
容を比較し等しい時一致信号を出す。
Similarly, the slot number holding circuit 22 is set with the slot number selected when the write command is issued, and holds it until the end of writing. The entry comparison circuit 23 compares the contents of the entry holding circuit 21 and the used entry register 17 and outputs a coincidence signal when they are equal.

【0022】信号24は書込みパス使用中フラグ25と
エントリ比較回路の出力とが論理積された、先行する書
込み命令で使用しているベクトルデータユニットのエン
トリと次発行命令で使用するエントリとが一致している
ことを示すエントリ一致信号である。
The signal 24 is obtained by logically ANDing the write path in-use flag 25 and the output of the entry comparison circuit with the entry of the vector data unit used in the preceding write instruction and the entry used in the next issue instruction. This is an entry match signal indicating that the operation is being performed.

【0023】タイミング管理部30はベクトルデータユ
ニットの読出し、書込みのタイミングを管理するタイミ
ング管理部である。カウンタ31はスロットのタイミン
グを生成するためのスロットカウンタであり、スロット
数をnとすると、0〜n−1をカウントし続ける。
The timing management unit 30 is a timing management unit that manages the timing of reading and writing the vector data unit. The counter 31 is a slot counter for generating the timing of slots, and keeps counting 0 to n−1, where n is the number of slots.

【0024】フラグ32はベクトルユニット使用命令発
行時使用するスロット番号に対応してセットされ使用終
了まで点灯するスロット使用中フラグである。
The flag 32 is a slot-in-use flag which is set corresponding to the slot number used when the vector unit use instruction is issued and lights up until the end of use.

【0025】読出しスロット制御回路34はスロットカ
ウンタ31の値とスロット使用中フラグ32の中で点灯
していない(使用していない)フラグに対応するスロッ
ト番号を比較し、一致しているときベクトルデータユニ
ット読出し可能タイミングを示す読出しスロット制御信
号33を読出し制御回路14へ送出する。
The read slot control circuit 34 compares the value of the slot counter 31 with the slot number corresponding to the flag that is not lit (not used) in the slot busy flag 32, and if they match, vector data A read slot control signal 33 indicating the unit readable timing is sent to the read control circuit 14.

【0026】チェインニング管理部40−1、40−2
はベクトルデータユニットでの書込み読出しのチェイン
ニングタイミングを管理するものであり、ベクトルデー
タユニット管理部20と同様に書込みパスに対応して用
意される。以後チェインニング管理部の説明はすべて書
込み命令発行時選択されたパスに対応したものである。
Chaining management units 40-1, 40-2
Is for managing the chaining timing of writing / reading in the vector data unit, and is prepared corresponding to the write path like the vector data unit management unit 20. Hereinafter, all explanations of the chaining management unit correspond to the path selected when the write command is issued.

【0027】第1のリセット手段43は書込み命令発行
後、FUT、PPT及びスロット数nで決定される一定
時間後(本実施例では、FUT+PPT−n)にリセッ
ト信号を出力する第1のリセット手段である。第1のチ
ェック抑止フラグ41は書込み命令発行時セットされ第
1のリセット手段43からのリセット信号によりリセッ
トされ、第2のチェック抑止フラグ42をリセットする
ための第2のリセット手段44の動作を抑止するもので
ある。
The first reset means 43 outputs a reset signal after a fixed time (FUT + PPT-n in this embodiment) determined by the FUT, PPT and the number of slots n after the write command is issued. Is. The first check inhibition flag 41 is set when the write command is issued and reset by the reset signal from the first reset means 43, and inhibits the operation of the second reset means 44 for resetting the second check inhibition flag 42. To do.

【0028】第2のリセット手段44は第1のチェック
抑止フラグがリセットされた後スロット番号保持回路2
2で保持されている先行するベクトルデータユニット書
込み命令が使用するスロット番号とスロットカウンタ3
1の値とを比較して、ある関係(本実施例では等しくな
ったとき)になるとき第2のチェック抑止フラグ42を
リセットするものである。
The second reset means 44 stores the slot number holding circuit 2 after the first check inhibition flag is reset.
Slot number and slot counter 3 used by the preceding vector data unit write instruction held in 2
The value of 1 is compared with the value of 1, and the second check inhibition flag 42 is reset when a certain relationship (when they are equal in this embodiment) is established.

【0029】第2のチェック抑止フラグ42は第1のチ
ェック抑止フラグ41と同時に書込み命令発行時にセッ
トされ、第2のリセット手段44によりリセットされる
ベクトルデータユニット読出し命令の発行制御を抑止す
るものである。
The second check inhibition flag 42 is set at the same time as the first check inhibition flag 41 when the write instruction is issued, and inhibits the issue control of the vector data unit read instruction reset by the second reset means 44. is there.

【0030】読出し制御回路14はベクトルデータユニ
ットの読出し制御回路であり、命令デコーダ12からの
読出し制御信号を受けるとベクトルデータユニット管理
部20−1、20−2からエントリ一致信号24を、タ
イミング管理部30からスロットカウンタ31の値と読
出しスロット制御信号33とを、チェインニング管理部
40−1、40−2から第2のチェック抑止フラグ42
の出力を夫々受け、書込みパス対応に存在するエントリ
一致信号24がどれも点灯していないときは、タイミン
グ管理部30からの読出しスロット制御信号33が点灯
しているタイミングで、発行通知レジスタ15にベクト
ルデータ読出し命令であることを示す制御信号をセット
すると共に、そのときのスロットカウンタ31の値をス
ロット番号通知レジスタ16にセットし、また、エント
リ通知レジスタ18には使用エントリレジスタの値をセ
ットする(読出し命令の発行)。
The read control circuit 14 is a read control circuit for the vector data unit. When receiving the read control signal from the instruction decoder 12, the read control circuit 14 outputs the entry match signal 24 from the vector data unit management units 20-1 and 20-2 and the timing control. The value of the slot counter 31 and the read slot control signal 33 from the unit 30 are transferred from the chaining management units 40-1 and 40-2 to the second check inhibition flag 42.
When the entry match signals 24 corresponding to the write paths are not lit, the read notification is sent to the issue notification register 15 at the timing when the read slot control signal 33 from the timing management unit 30 is lit. A control signal indicating a vector data read instruction is set, the value of the slot counter 31 at that time is set in the slot number notification register 16, and the value of the used entry register is set in the entry notification register 18. (Issue of read command).

【0031】エントリ一致信号24が一つでも点灯して
いるときは、点灯しているエントリ一致信号24に対応
しているチェインニング管理部40−1、40−2の第
2のチェック抑止フラグ42がリセットされるまで読出
し命令発行の制御は行わず、第2のチェック抑止フラグ
42がリセットされた後読出しスロット制御信号33が
最初に点灯するタイミングで読出し命令を発行するよう
に制御される。
When even one entry match signal 24 is lit, the second check inhibition flag 42 of the chaining management units 40-1 and 40-2 corresponding to the lit entry match signal 24. The read command is not controlled until is reset, but the read command is controlled to be issued at the timing when the read slot control signal 33 first lights up after the second check inhibition flag 42 is reset.

【0032】次に、実際の命令列を用いて本発明の動作
を説明する。いま、説明のためにベクトル演算命令のF
UTを“7”、PPTを“3”、スロット数nを
“4”、ベクトルデータユニットへのアクセスパス数を
“2”とする。
Next, the operation of the present invention will be described using an actual instruction sequence. Now, for the sake of explanation, the vector operation instruction F
The UT is "7", the PPT is "3", the number of slots n is "4", and the number of access paths to the vector data unit is "2".

【0033】図5は本発明の命令発行制御装置に以下の
様な命令列を実行したときの概略タイムチャートであ
る。
FIG. 5 is a schematic time chart when the following instruction sequence is executed in the instruction issue control device of the present invention.

【0034】 VADD VD0 ← VR0+VR1 VMDA VR2 ← VD0 上記命令でVADDはベクトルレジスタVR0 とVR1 とを加算
し、演算結果をベクトルデータユニットのエントリ0
(VD0 )へ書込む命令である。VMDAはベクトルデータユ
ニットのエントリ0(VD0)からデータを読出し、ベク
トルレジスタVR2へ転送する命令である。本命令列が動
作する前はベクトルデータユニットを使用する命令は何
も動作していないとする。
VADD VD0 ← VR0 + VR1 VMDA VR2 ← VD0 In the above instruction, VADD adds the vector registers VR0 and VR1 and outputs the operation result to the vector data unit entry 0.
This is an instruction to write to (VD0). VMDA is an instruction to read data from entry 0 (VD0) of the vector data unit and transfer it to the vector register VR2. It is assumed that no instruction using the vector data unit is operating before this instruction sequence operates.

【0035】まずVADDが命令レジスタ11に入ると、命
令デコーダ12はベクトルデータユニット書込み命令で
あることを検出し、書込み制御回路13に書込み制御信
号を出す。書込み制御回路13では、スロット使用中フ
ラグ32と書込みパス使用中フラグ25とをチェック
し、スロット及び書込みパスが空いていれば命令を発行
する。
First, when VADD enters the instruction register 11, the instruction decoder 12 detects that it is a vector data unit write instruction and outputs a write control signal to the write control circuit 13. The write control circuit 13 checks the slot busy flag 32 and the write path busy flag 25, and issues an instruction if the slot and write path are free.

【0036】今、ベクトルデータユニット使用命令は何
もお動作していないため発行可能状態であり、スロット
は最若番“0”が、書込みパスは若番“0”が選択され
命令は発行される。同時に、書込みパス0に対応するベ
クトルデータユニット20−1の書込みパス使用中フラ
グ25を“1”セット、エントリ保持回路21にベクト
ルデータユニットのエントリ番号“0”をセット、スロ
ット番号保持回路22に使用するスロットの番号“0”
をセットし、書込み終了まで保持する。
At this moment, the vector data unit use instruction is in an issuable state because nothing is operating, the lowest number "0" is selected for the slot and the lowest number "0" is selected for the write path, and the instruction is issued. It At the same time, the write path busy flag 25 of the vector data unit 20-1 corresponding to the write path 0 is set to “1”, the entry holding circuit 21 is set to the entry number “0” of the vector data unit, and the slot number holding circuit 22 is set. Slot number to use "0"
Is set and held until the end of writing.

【0037】また、タイミング管理部30のスロット使
用中フラグ32のスロット0に対応するフラグを“1”
セットし、書込み終了まで保持する。未使用のスロット
に対しては、スロット使用中フラグ32は“0”のまま
であり、スロット使用中フラグ32が“0”であるスロ
ット番号とスロットカウンタ31の値とが一致している
と、読出し制御回路14に対し読出しスロット制御回路
34から読出しスロット制御信号33が“1”で送出さ
れる。
Also, the flag corresponding to slot 0 of the slot busy flag 32 of the timing management unit 30 is set to "1".
Set and hold until the end of writing. For an unused slot, the slot in-use flag 32 remains “0”, and if the slot number for which the slot in-use flag 32 is “0” and the value of the slot counter 31 match, A read slot control signal 33 is sent from the read slot control circuit 34 to the read control circuit 14 at "1".

【0038】また、書込みパス0に対応するチェインニ
ング管理部40−1の第1のチェック抑止フラグ41及
び第2のチェック抑止フラグ42はVADD命令発行時に
“1”セットされ、第1のチェック抑止フラグ41は第
1のリセット手段43によりFUT、PPT、スロット
数nから決定される時間後(本説明の中では、FUT+
PPT−n、よって“6”T後)リセットされる。
The first check inhibition flag 41 and the second check inhibition flag 42 of the chaining management unit 40-1 corresponding to the write path 0 are set to "1" when the VADD instruction is issued, and the first check inhibition is performed. The flag 41 is set by the first reset means 43 after the time determined from the FUT, the PPT, and the number of slots n (in the present description, FUT +
PPT-n, and thus "6" T later).

【0039】また、第2のチェック抑止フラグ42は第
2のリセット手段により、第1のチェック抑止フラグ4
1がリセットされた後、スロットカウンタ31の値とス
ロット番号保持回路22の値とがある関係になったとき
(本説明では等しくなった時)リセットされる。
Further, the second check inhibition flag 42 is set by the second reset means to the first check inhibition flag 4
After the value 1 is reset, it is reset when the value of the slot counter 31 and the value of the slot number holding circuit 22 have a certain relationship (when they are equal in this description).

【0040】ベクトルデータユニットではVADD命令が発
行通知されると演算結果をVD0 に書込むため、通知され
た使用スロット番号のタイミングになるまでタイミング
調整用バッファ待合わせを行い(本説明の図5のタイム
チャートでは2T)、タイミングがあったところで連続
にVD0 に書込む。
When the VADD instruction is issued and notified in the vector data unit, the operation result is written in VD0. Therefore, the timing adjustment buffer is waited until the timing of the notified used slot number is reached (see FIG. 2T in the time chart), write continuously to VD0 when there is a timing.

【0041】VADD発行後命令レジスタ11にVMDAが入る
と、命令デコーダ12は読出し制御回路14にベクトル
データユニット読出し制御信号を出す。スロット使用中
フラグ32は1、2、3が未使用であることを示し、タ
イミング管理部30からはベクトルデータユニット読出
しが可能であることを示す読出しスロット制御信号33
が、スロットカウンタ1、2、3のタイミングで出され
ているが、VADDで使用しているベクトルデータユニット
のエントリVD0 (エントリ保持回路21に“0”として
保持されている)とVMDAで使用するベクトルデータユニ
ットのエントリVD0 (使用エントリレジスタに“0”と
して存在する)とが一致しているため、ベクトルデータ
ユニット管理部20−1からはエントリ一致信号24が
出されている。
When VMDA enters the instruction register 11 after issuing VADD, the instruction decoder 12 outputs a vector data unit read control signal to the read control circuit 14. The slot busy flag 32 indicates that 1, 2, and 3 are unused, and the read slot control signal 33 indicating that the vector data unit can be read from the timing management unit 30.
Is output at the timing of slot counters 1, 2, and 3, but is used by VMDA and entry VD0 of the vector data unit used in VADD (held as "0" in entry holding circuit 21). Since the entry VD0 of the vector data unit (which exists as "0" in the used entry register) matches, the entry match signal 24 is output from the vector data unit management unit 20-1.

【0042】この時読出し制御回路14は第2のチェッ
ク抑止フラグ42がリセットされるまで命令発行のため
の制御を行わず、このフラグ42がリセットされた後読
出しスロット制御信号33が最初に点灯するタイミング
で(本説明ではスロット“1”)VMDA命令を発行する。
この時選択される使用スロット番号は読出しスロット制
御信号33が点灯していたスロットカウンタ31の値、
すなわちスロット“1”である。
At this time, the read control circuit 14 does not perform control for issuing an instruction until the second check inhibition flag 42 is reset, and after the flag 42 is reset, the read slot control signal 33 first lights up. A VMDA instruction is issued at the timing (in this description, slot "1").
The used slot number selected at this time is the value of the slot counter 31 for which the read slot control signal 33 is lit,
That is, the slot is "1".

【0043】この様にVMDA命令が発行されると、ベクト
ルデータユニットでは読出し動作を開始するタイミング
が通知された使用スロット番号と同じスロット“1”に
なっているため、そのまま読出し動作が開始される。
When the VMDA instruction is issued as described above, the read operation is started as it is because the vector data unit has the same slot "1" as the notified slot number at which the read operation start timing is notified. ..

【0044】以上のように命令発行が制御された時、ベ
クトルデータユニットで見るとVD0への書込みとVD0 か
らの読出しは1Tずれ、すなわち書込みを行った次のタ
イミング(同一の要素に関する処理タイミングとしては
最速である)で読出しを行う。
When the instruction issuance is controlled as described above, when viewed from the vector data unit, the writing to VD0 and the reading from VD0 are deviated by 1T, that is, the next timing of writing (as the processing timing for the same element, Is the fastest).

【0045】次に、ベクトルデータユニットでエントリ
一致しないケースについて説明するため以下の命令列を
実行するものとする。
Next, in order to explain the case where the entries do not match in the vector data unit, the following instruction sequence is executed.

【0046】 VADD VD0 ← VR0+VR1 VMDA VR2 ← VD1 この場合の動作タイムチャートは図5の(A)に示して
いる。
VADD VD0 ← VR0 + VR1 VMDA VR2 ← VD1 The operation time chart in this case is shown in FIG.

【0047】VADD命令の発行と各フラグのセットは前述
のケースと同じである。VMDA命令が命令レジスタ11に
セットされると、命令デコーダ12は読出し制御信号を
読出し制御回路14に送出する。この時使用エントリレ
ジスタ17にはVD1 を示す“1”が保持されており、先
行するVADDの使用しているエントリ番号が保持されてい
るエントリ保持回路21の値“0”とは一致していない
ため、エントリ一致信号24は出されてはいない。よっ
て、読出し制御回路14では、第2のチェック抑止フラ
グ42がリセットされるのを待たずに、読出しスロット
制御信号33が最初に点灯するタイミングで命令を発行
する。ベクトルデータユニットのエントリは同一ではな
いので、先行するVADDによるベクトルデータユニットへ
の書込み動作が開始されるのを待つ必要はない。
Issuing the VADD instruction and setting each flag are the same as in the above case. When the VMDA instruction is set in the instruction register 11, the instruction decoder 12 sends a read control signal to the read control circuit 14. At this time, the used entry register 17 holds "1" indicating VD1 and does not match the value "0" of the entry holding circuit 21 holding the entry number used by the preceding VADD. Therefore, the entry match signal 24 is not issued. Therefore, the read control circuit 14 issues an instruction at the timing when the read slot control signal 33 first lights up, without waiting for the second check inhibition flag 42 to be reset. The entries in the vector data unit are not identical, so there is no need to wait for the preceding VADD to initiate a write operation to the vector data unit.

【0048】尚、図6の(B)に示すタイムチャート
は、従来の命令実行を示すタイムチャートであり、VADD
に続くVMDAはエントリの一致不一致に無関係に常に先行
するVADDの命令実行の終了を待って、VMDAを発行するよ
うにして、同一エントリの場合における読出し動作が書
込みデータを追い越すことがないように担保している。
従って、従来装置では、著しい処理速度低下となってい
たのである。
The time chart shown in FIG. 6B is a time chart showing the conventional instruction execution.
VMDA that follows is always waiting for the end of instruction execution of the preceding VADD regardless of whether the entries match or not, and issues VMDA to ensure that the read operation in the case of the same entry does not overtake the write data. is doing.
Therefore, in the conventional device, the processing speed was significantly reduced.

【0049】[0049]

【発明の効果】以上述べた如く、本発明によれば、ベク
トルデータユニットへの書込み命令に続く読出し命令の
発行を、エントリ一致したときには、書込みデータを追
い越すことなくかつ無駄な待ち時間なく読出すに必要な
最短時間だけ待って行い、エントリ不一致時には、直ち
に行うようにしたので、ベクトル処理速度の著しい向上
が可能となるという効果がある。
As described above, according to the present invention, when the read command issuance following the write command to the vector data unit is issued, when the entries match, the write data is not overtaken and read without wasteful waiting time. Since it is performed after waiting for the shortest time necessary for the above, and when the entries do not match, it is performed immediately, there is an effect that the vector processing speed can be remarkably improved.

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

【図1】本発明の実施例のブロック図である。FIG. 1 is a block diagram of an embodiment of the present invention.

【図2】ベクトルデータユニットの代表的な構成例を示
す図である。
FIG. 2 is a diagram showing a typical configuration example of a vector data unit.

【図3】図2のベクトルデータユニットの動作例を示す
タイムチャートである。
FIG. 3 is a time chart showing an operation example of the vector data unit of FIG.

【図4】ベクトルデータユニットを含むベクトル処理装
置の概略ブロック図である。
FIG. 4 is a schematic block diagram of a vector processing device including a vector data unit.

【図5】本発明の実施例の一動作を示すタイムチャート
である。
FIG. 5 is a time chart showing an operation of the embodiment of the present invention.

【図6】(A)は本発明の実施例の他の動作を示すタイ
ムチャートであり、(B)は従来装置の動作を示すタイ
ムチャートである。
FIG. 6A is a time chart showing another operation of the embodiment of the present invention, and FIG. 6B is a time chart showing an operation of the conventional device.

【符号の説明】[Explanation of symbols]

10 命令制御部 11 命令レジスタ 12 命令デコーダ 13 書込み制御回路 14 読出し制御回路 17 使用エントリレジスタ 20−1,20−2 ベクトルデータ管理部 21 エントリ保持回路 22 スロット番号保持回路 23 エントリ比較回路 30 タイミング管理部 31 スロットカウンタ 32 スロット使用中フラグ 34 読出しスロット制御回路 40−1,40−2 チェインニング管理部 41 第1のチェック抑止フラグ 42 第2のチェック抑止フラグ 43 第1のリセット手段 44 第2のリセット手段 10 instruction control unit 11 instruction register 12 instruction decoder 13 write control circuit 14 read control circuit 17 use entry register 20-1, 20-2 vector data management unit 21 entry holding circuit 22 slot number holding circuit 23 entry comparison circuit 30 timing management unit 31 slot counter 32 slot in-use flag 34 read slot control circuit 40-1, 40-2 chaining management section 41 first check inhibition flag 42 second check inhibition flag 43 first reset means 44 second reset means

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 複数のデータエレメントからなるベクト
ルデータを各々が格納し複数のエントリを夫々有するn
個(nは2以上の整数)のベクトルデータメモリと、前
記メモリに対するアクセスタイミングであるスロットタ
イミングを第1から第nまでのスロット番号として順次
繰返し生成する手段とを含むベクトル処理装置における
書込み読出し命令発行制御装置であって、先行する書込
み命令の使用エントリ番号及び使用スロット番号を書込
み動作終了まで保持する保持手段と、後続の読出し命令
の使用エントリ番号と前記エントリ保持手段により保持
されている使用エントリ番号との一致を検出するエント
リ一致検出手段と、この一致検出手段により一致が検出
されたとき、前記書込み命令が発行されてからこの命令
の実行時間により定まる所定時間後に、前記保持手段に
保持されている使用スロット以外の空きスロットが到来
したときに前記読出し命令の発行を制御する手段と、前
記一致検出手段により不一致が検出されたとき、前記保
持手段に保持されている使用スロット以外の空きスロッ
トが到来したときに直ちに前記読出し命令の発行を制御
する手段とを含むことを特徴とする命令発行制御装置。
1. An n, each of which stores vector data composed of a plurality of data elements and has a plurality of entries, respectively.
A write / read instruction in a vector processing device including a plurality (n is an integer of 2 or more) of vector data memory and means for sequentially and repeatedly generating slot timings, which are access timings to the memory, as the first to nth slot numbers. In the issue control device, holding means for holding the used entry number and used slot number of the preceding write instruction until the end of the write operation, the used entry number of the subsequent read instruction and the used entry held by the entry holding means Entry match detection means for detecting a match with a number, and when a match is detected by this match detection means, held by the holding means after a predetermined time determined by the execution time of the write command after the write command is issued. Read the above when an empty slot other than the used slot has arrived. Means for controlling the issue of the read instruction and the match detecting means for detecting a mismatch, and immediately controlling the issue of the read instruction when an empty slot other than the used slot held by the holding means arrives. And a command issuing control device.
JP03348115A 1991-12-04 1991-12-04 Instruction issue control unit Expired - Fee Related JP3080740B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP03348115A JP3080740B2 (en) 1991-12-04 1991-12-04 Instruction issue control unit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP03348115A JP3080740B2 (en) 1991-12-04 1991-12-04 Instruction issue control unit

Publications (2)

Publication Number Publication Date
JPH05158968A true JPH05158968A (en) 1993-06-25
JP3080740B2 JP3080740B2 (en) 2000-08-28

Family

ID=18394847

Family Applications (1)

Application Number Title Priority Date Filing Date
JP03348115A Expired - Fee Related JP3080740B2 (en) 1991-12-04 1991-12-04 Instruction issue control unit

Country Status (1)

Country Link
JP (1) JP3080740B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009205206A (en) * 2008-02-26 2009-09-10 Nec Computertechno Ltd Vector operation unit

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5688559A (en) * 1979-12-21 1981-07-18 Fujitsu Ltd Pipeline arithmetic unit
JPS5731079A (en) * 1980-07-31 1982-02-19 Fujitsu Ltd Vector processor
JPS5797169A (en) * 1980-12-06 1982-06-16 Fujitsu Ltd Vector data processing device
JPS57206982A (en) * 1981-06-15 1982-12-18 Fujitsu Ltd Instruction controlling system

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5688559A (en) * 1979-12-21 1981-07-18 Fujitsu Ltd Pipeline arithmetic unit
JPS5731079A (en) * 1980-07-31 1982-02-19 Fujitsu Ltd Vector processor
JPS5797169A (en) * 1980-12-06 1982-06-16 Fujitsu Ltd Vector data processing device
JPS57206982A (en) * 1981-06-15 1982-12-18 Fujitsu Ltd Instruction controlling system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009205206A (en) * 2008-02-26 2009-09-10 Nec Computertechno Ltd Vector operation unit

Also Published As

Publication number Publication date
JP3080740B2 (en) 2000-08-28

Similar Documents

Publication Publication Date Title
EP0243892B1 (en) System for guaranteeing the logical integrity of data
US5630096A (en) Controller for a synchronous DRAM that maximizes throughput by allowing memory requests and commands to be issued out of order
US6240458B1 (en) System and method for programmably controlling data transfer request rates between data sources and destinations in a data processing system
US5251306A (en) Apparatus for controlling execution of a program in a computing device
US5247628A (en) Parallel processor instruction dispatch apparatus with interrupt handler
US4090238A (en) Priority vectored interrupt using direct memory access
JP2008181551A (en) Vector tailgating for computer provided with vector register
US5237702A (en) System for prefetching vector data based on the status of the vector registers
KR900007135B1 (en) Buffer storage control system having a priority circuit
JP3505728B2 (en) Storage controller
JPH0916409A (en) Microcomputer
JPH05158968A (en) Instruction issue control device
JP2001195353A (en) Dma transfer system
JP2000259609A (en) Data processor and its system
JP2908273B2 (en) Vector processing equipment
US6335903B2 (en) Memory system
JPH05108476A (en) Main storage controller
US7124288B2 (en) Programmable unit with a stack buffer storage device configurable into discrete shadow storage elements accessible by a plurality of command execution units
US5542057A (en) Method for controlling vector data execution
SU1282124A1 (en) Device for processing interruptions
JPS6391756A (en) Partial write instruction processing system for storage device
JP2635863B2 (en) Central processing unit
JPH0283779A (en) Instruction execution control system for vector processor
JPS63263537A (en) Information processor
JPH0229826A (en) Information processor

Legal Events

Date Code Title Description
R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees