JPH02742B2 - - Google Patents

Info

Publication number
JPH02742B2
JPH02742B2 JP22633283A JP22633283A JPH02742B2 JP H02742 B2 JPH02742 B2 JP H02742B2 JP 22633283 A JP22633283 A JP 22633283A JP 22633283 A JP22633283 A JP 22633283A JP H02742 B2 JPH02742 B2 JP H02742B2
Authority
JP
Japan
Prior art keywords
pipeline
register
vector
vector register
amount
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired
Application number
JP22633283A
Other languages
Japanese (ja)
Other versions
JPS60118977A (en
Inventor
Shoji Nakatani
Nobuo Uchida
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 JP22633283A priority Critical patent/JPS60118977A/en
Publication of JPS60118977A publication Critical patent/JPS60118977A/en
Publication of JPH02742B2 publication Critical patent/JPH02742B2/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)
  • Complex Calculations (AREA)

Description

【発明の詳細な説明】 〔発明の技術分野〕 本発明は、パイプライン方式を用いたベクトル
処理装置において、ベクトルレジスタの連鎖が生
じた際に、ベクトルデータの正当性を保証して効
率的に相続く2つのベクトル命令の並行処理を実
行させるパイプライン制御方式に関する。
[Detailed Description of the Invention] [Technical Field of the Invention] The present invention provides efficient processing by guaranteeing the validity of vector data when a chain of vector registers occurs in a vector processing device using a pipeline system. The present invention relates to a pipeline control method for executing parallel processing of two successive vector instructions.

〔技術の背景〕[Technology background]

第1図は、一般的なベクトル処理装置の概略構
成を示したもので、図中、1は記憶装置、2はア
クセスパイプライン、3はベクトルレジスタ
(VR)、4は演算パイプライン、5は命令処理部
である。
Figure 1 shows the schematic configuration of a general vector processing device. In the figure, 1 is a storage device, 2 is an access pipeline, 3 is a vector register (VR), 4 is an arithmetic pipeline, and 5 is a This is an instruction processing section.

図示のように、ベクトル処理装置では、処理能
力を上げるために記憶装置1と演算パイプライン
4との間のデータ転送を少なくする目的で、記憶
装置1と演算パイプライン4の間にベクトルレジ
スタ(VR)3が設けられている。演算は、演算
パイプライン4がベクトルレジスタ3との間で実
行し、演算に必要なソースデータあるいは演算終
了後の結果データのみをベクトルレジスタ3と記
憶装置1との間で転送している。このベクトルレ
ジスタ3と記憶装置1との間でのデータ転送の役
目をするのがアクセスパイプライン2である。
As shown in the figure, in the vector processing device, a vector register ( VR) 3 is provided. The calculation is executed between the calculation pipeline 4 and the vector register 3, and only the source data necessary for the calculation or the result data after the calculation is completed is transferred between the vector register 3 and the storage device 1. The access pipeline 2 plays the role of data transfer between the vector register 3 and the storage device 1.

例えば、〓+〓→〓のベクトル加算を行なうよ
うな場合において、〓,〓,〓の各オペランドは
記憶装置1のある領域を示すとすれば、まず〓,
〓のオペランドがアクセスパイプライン2により
ベクトルレジスタ3(例えばベクトルレジスタ
A,Bとする)にロードされる。次にベクトルレ
ジスタA,Bの加算を実行した後、結果をベクト
ルレジスタ3(例えばベクトルレジスタCとす
る)に格納し、その後記憶装置の〓の領域にアク
セスパイプライン2によつてストアされる。この
様子をタイムチヤートで示したのが第2図であ
る。
For example, in the case of vector addition of 〓+〓→〓, if each operand of 〓, 〓, 〓 indicates a certain area of the storage device 1, first 〓,
The operand 〓 is loaded into the vector register 3 (for example, vector registers A and B) by the access pipeline 2. Next, after performing the addition of vector registers A and B, the result is stored in a vector register 3 (for example, vector register C), and then stored in an area of the storage device by the access pipeline 2. Figure 2 shows this situation using a time chart.

第2図において、VRA,VRB,VRCはそれぞ
れベクトルレジスタA,B,Cを示し、また
Writeはベクトルレジスタへの書込み、そして
Readはベクトルレジスタからの読出しを表わし
ている。
In Figure 2, VRA, VRB, and VRC represent vector registers A, B, and C, respectively, and
Write writes to a vector register, and
Read represents reading from the vector register.

ところで、ベクトルロード命令によりベクトル
レジスタVRAおよびVRBへのベクトルデータの
全ての書き込みを完了した後で加算命令を実行し
ていたのでは、演算パイプラインがその間待つこ
とになり、処理性能を上げることができない。し
たがつて、第2図に示すように、アクセスパイプ
ラインと演算パイプラインとを並行に動作させる
ことが通常行なわれている。つまりベクトルロー
ド〓ベクトルロード〓でベクトルレジスタへの書
込みが開始されたことを認識すると、直ちに演算
パイプラインに対して起動を行なうものである。
この場合、ベクトルロード〓、ベクトルロード〓
の、VRにおける書き込みレジスタVRA,VRB
から、演算の読出しレジスタVRA,VRBへ、レ
ジスタ連鎖があることを示している。なお、2つ
の相続くベクトル命令間で同一レジスタが使用さ
れる場合に、レジスタ連鎖があるという。
By the way, if the addition instruction is executed after all vector data has been written to the vector registers VRA and VRB using the vector load instruction, the arithmetic pipeline will have to wait during that time, making it difficult to improve processing performance. Can not. Therefore, as shown in FIG. 2, it is common practice to operate the access pipeline and the calculation pipeline in parallel. In other words, when it is recognized that writing to the vector register has started in vector load, the operation pipeline is immediately activated.
In this case, vector load〓, vector load〓
Write registers VRA, VRB in VR
This shows that there is a register chain from 1 to the operation read registers VRA and VRB. Note that there is register chaining when the same register is used between two consecutive vector instructions.

他方、アクセスパイプラインのベクトルレジス
タへの書込みから演算パイプラインへの読出しに
おいて、レジスタ連鎖が行なわれない場合におい
ては、アクセスパイプラインを意識することなく
演算パイプラインが動作可能であることは言うま
でもない。
On the other hand, it goes without saying that if register chaining is not performed from writing to a vector register in the access pipeline to reading to the arithmetic pipeline, the arithmetic pipeline can operate without being aware of the access pipeline. .

レジスタ連鎖がある場合において、アクセスパ
イプラインによるベクトルレジスタへの連続的な
データ転送は、記憶装置への他のアクセスとの間
で生じるバンクコンフリクト、バスコンフリクト
あるいはバンクビジー等により、一時的に途切れ
る場合がある。
When there is a register chain, continuous data transfer to the vector register by the access pipeline may be temporarily interrupted due to bank conflict with other accesses to the storage device, bus conflict, bank busy, etc. There is.

したがつて、このような記憶装置よりデータが
転送されなくなつた時点で、ベクトルレジスタの
書込みを演算の読出しが追いこさない様にするた
め、演算パイプライン全体を停止させて、誤処理
を防止することが行なわれている。
Therefore, when data is no longer being transferred from such a storage device, the entire calculation pipeline is stopped to prevent processing errors from occurring in order to prevent the writing of the vector register from being delayed by the reading of the calculation. things are being done.

この場合、第2図のように、ベクトルロードか
ら連続して、レジスタ連鎖のある演算パイプライ
ンに起動が行なわれるときは、上記の方法を用い
ても問題はないが、第3図に示す様に、別の演算
Xが先に演算パイプラインに入つていて、そのた
めレジスタ連鎖のある加算の起動がおそくなる場
合には、上記の方法で演算パイプラインを停止さ
せることは関係のない演算に対してまで停止させ
るので演算パイプラインの処理性能を落とすこと
になる。
In this case, as shown in Figure 2, when an arithmetic pipeline with a register chain is activated successively from a vector load, there is no problem using the above method, but as shown in Figure 3, there is no problem in using the above method. In this case, if another operation The processing performance of the arithmetic pipeline will be degraded since the processing will be stopped until the end of the process.

〔発明の目的および構成〕[Object and structure of the invention]

本発明の目的は、記憶装置よりベクトルレジス
タへのデータ転送に中断が生じるような場合に、
レジスタ連鎖のある演算パイプラインの動作を、
任意の時点で必要量だけ確実に制御できる手段を
提供することにあり、そのための構成は、1個ま
たは、複数個のエレメントを同時にアクセス可能
なベクトルレジスタと、前記ベクトルレジスタ間
で演算を行なう演算パイプラインと、記憶装置と
ベクトルレジスタ間でデータ転送を行なうアクセ
スパイプラインを1本または複数本備えたベクト
ル処理装置において、前記アクセスパイプライン
で使用するベクトルレジスタとベクトルレジスタ
読出し動作を行なう演算またはアクセスパイプラ
インで使用するベクトルレジスタ間でレジスタ連
鎖の有無を検出するレジスタ連鎖検出手段と、記
憶装置からベクトルレジスタへデータを転送する
際に、データ転送開始時点からのベクトルレジス
タ書込みの転送量と前記レジスタ連鎖検出手段が
レジスタ連鎖を検出した後のベクトルレジスタ読
出し動作を行なう演算またはアクセスパイプライ
ンの動作量とをそれぞれ検出し、それらの差量を
求める比較手段とを設け、前記記憶装置からベク
トルレジスタへのデータ転送が中断された場合に
は前記比較手段から出力される差量が0になるま
でベクトルレジスタからパイプラインへの読出し
動作を行ない、前記差量が0になつたときパイプ
ラインの動作を停止させ、その後前記記憶装置か
らベクトルレジスタへのデータ転送が再開されて
前記差量が1以上となつたときパイプラインの動
作を再開し、また前記記憶装置からパイプライン
へのデータ転送が終了した場合には、前記差量が
0になるまでベクトルレジスタからパイプライン
への読出し動作を行ない、パイプラインの動作は
停止させないことを特徴とするものである。
An object of the present invention is to solve the problem when data transfer from a storage device to a vector register is interrupted.
The operation of an arithmetic pipeline with register chains is
The purpose is to provide a means that can reliably control the required amount at any time, and the configuration for this purpose includes a vector register that can access one or more elements at the same time, and an operation that performs an operation between the vector registers. In a vector processing device equipped with a pipeline and one or more access pipelines that transfer data between a storage device and a vector register, an operation or access that performs a vector register used in the access pipeline and a vector register read operation. Register chain detection means detects the presence or absence of register chain between vector registers used in a pipeline, and when transferring data from a storage device to a vector register, the transfer amount of vector register writing from the start of data transfer and the register Comparing means for detecting the amount of operation or access pipeline operation for performing a vector register read operation after the chain detecting means detects the register chain, and determining the difference between them, and detecting the amount of operation of the vector register read operation or the operation amount of the access pipeline after the chain detecting means detects the register chain; If the data transfer is interrupted, the read operation from the vector register to the pipeline is performed until the difference amount outputted from the comparison means becomes 0, and when the difference amount becomes 0, the pipeline operation is started. Then, when the data transfer from the storage device to the vector register is restarted and the difference amount becomes 1 or more, the operation of the pipeline is restarted, and the data transfer from the storage device to the pipeline is completed. In this case, the read operation from the vector register to the pipeline is performed until the difference amount becomes 0, and the operation of the pipeline is not stopped.

〔発明の実施例〕[Embodiments of the invention]

以下に、本発明の詳細を実施例にしたがつて説
明する。
The details of the present invention will be explained below with reference to Examples.

第4図は本発明の1実施例による演算パイプラ
イン制御回路の構成図であり、第5図は第3図に
あわせた第4図の実施例回路の動作例のタイミン
グ図である。
FIG. 4 is a configuration diagram of an arithmetic pipeline control circuit according to an embodiment of the present invention, and FIG. 5 is a timing diagram of an example of the operation of the embodiment circuit of FIG.

第4図において、6は書込みカウント回路、7
は演算パイプライン動作制御回路、8は減算器、
9は選択ゲート、10は加算器、11は書込みカ
ウントレジスタを示す。
In FIG. 4, 6 is a write count circuit, 7
is an arithmetic pipeline operation control circuit, 8 is a subtracter,
9 is a selection gate, 10 is an adder, and 11 is a write count register.

また、第5図に示されているように、VR書込
み開始信号は時点aで生じ、レジスタ連鎖検出
信号は時点bで生じ、VR書込み終了信号は
時点cで生じる。そしてVR書込み信号は時点
a,c間でアクセスパイプラインがベクトルレジ
スタへデータ転送を行なうたびにオンになる信号
であり、その個数をカウントすることによりベク
トルレジスタへの転送量を知ることができる。演
算パイプライン動作信号は、演算パイプライン
を動作させる際、毎サイクル供給される信号であ
り、オンのとき演算パイプラインを動作、オフの
とき停止を指示する。レジスタ連鎖時演算パイプ
ライン動作信号′は演算パイプライン動作信号
と同等の信号であり、演算パイプライン動作信号
が演算パイプラインの動作/停止を指示する信
号に対し、レジスタ連鎖時演算パイプライン動作
信号′はレジスタ連鎖検出信号がオンになつ
てから演算パイプライン動作信号と同一の信号
として扱われる。つまり、第3図の時点aから時
点bまでの区間Tにおいては、レジスタ連鎖検出
信号がオンになつていないので演算パイプライ
ン動作信号はオンにされており、レジスタ連鎖
時演算パイプライン動作信号′はオフにされて
いる状態である。時点bから時点cまでの区間に
おいては、レジスタ連鎖検出信号がb時点にお
いて生じるため、演算パイプライン動作信号に
同期してレジスタ連鎖時演算パイプライン動作信
号′が指示される。したがつて、このレジスタ
連鎖時演算パイプライン動作信号′のオンの個
数をカウントすることにより、レジスタ連鎖があ
る場合の演算パイプラインの動作量、すなわちベ
クトルレジスタからのデータ読出し量を知ること
ができる。なお、信号は図示しない命令処理部
から供給され、信号,,は図示しないアク
セスパイプライン内で作成され、供給される。
Also, as shown in FIG. 5, the VR write start signal occurs at time a, the register chain detection signal occurs at time b, and the VR write end signal occurs at time c. The VR write signal is a signal that is turned on every time the access pipeline transfers data to the vector register between time points a and c, and by counting the number of signals, the amount of data transferred to the vector register can be determined. The arithmetic pipeline operating signal is a signal that is supplied every cycle when operating the arithmetic pipeline, and instructs to operate the arithmetic pipeline when it is on and to stop it when it is off. The arithmetic pipeline operating signal when register chaining 'is a signal equivalent to the arithmetic pipeline operating signal, and while the arithmetic pipeline operating signal is a signal that instructs the operation/stop of the arithmetic pipeline, the arithmetic pipeline operating signal when register chaining is the same as the arithmetic pipeline operating signal. ' is treated as the same signal as the arithmetic pipeline operation signal after the register chain detection signal is turned on. That is, in the interval T from time a to time b in FIG. 3, the register chain detection signal is not turned on, so the arithmetic pipeline operation signal is turned on, and the register chain operation pipeline operation signal ' is turned off. In the interval from time point b to time point c, the register chain detection signal is generated at time point b, so that the register chain operation pipeline operation signal' is specified in synchronization with the operation pipeline operation signal. Therefore, by counting the number of on-states of the arithmetic pipeline operation signal ′ during register chaining, it is possible to know the amount of operation of the arithmetic pipeline when there is register chaining, that is, the amount of data read from the vector register. . Note that the signals are supplied from an instruction processing unit (not shown), and the signals , . . . are created and supplied within an access pipeline (not shown).

書込みカウント回路6は、これら2つの量の差
を求めることにより、ベクトルレジスタ中に先行
して書込まれている処理可能データ量を知り、ベ
クトルレジスタへのデータ転送が中断してもそれ
とは独立して演算パイプラインの動作を処理可能
データ量分だけ進めることを可能にする。
By calculating the difference between these two amounts, the write count circuit 6 knows the amount of data that can be processed and that has been previously written into the vector register, and is independent of the interruption of data transfer to the vector register. This allows the operation of the calculation pipeline to proceed by the amount of data that can be processed.

まず時点aでVR書込み開始信号が入力され
ると、書込みカウントレジスタ11は選択ゲート
9により初期設定され、以降カウント動作を開始
する。時点aから時点bまでの区間Tでは、演算
パイプライン動作制御回路7がレジスタ連鎖検出
信号により無効化されており、レジスタ連鎖時
演算パイプライン動作信号′は毎サイクルオフ
のままであるため、書込みカウントレジスタ11
は、VR書込み信号のみをn個カウントする。こ
れにより演算パイプラインが起動される時点b
で、書込みカウントレジスタ11の値は、“n”
になつている。
First, when a VR write start signal is input at time a, the write count register 11 is initialized by the selection gate 9, and thereafter starts counting. In the interval T from time a to time b, the arithmetic pipeline operation control circuit 7 is disabled by the register chain detection signal, and the register chain arithmetic pipeline operation signal' remains off every cycle, so that writing is not possible. Count register 11
counts only n VR write signals. This causes the calculation pipeline to start at point b
Then, the value of the write count register 11 is “n”
It's getting old.

時点bでレジスタ連鎖検出信号が入力される
と、演算パイプライン動作制御回路7は、有効化
される。その結果、演算パイプライン動作信号
およびレジスタ連鎖時演算パイプライン動作信号
′は毎サイクルにオンになり、演算パイプライ
ンは演算動作を行なう。他方、記憶装置からベク
トルレジスタ(VR)へデータ転送が正常に続け
られていれば、VR書込み信号も毎サイクルに
オンになる。したがつて、減算器8においてVR
書込み信号とレジスタ連鎖時演算パイプライン
動作信号′の両信号は相殺されるため、減算器
8の出力は“0”を出力し、書込みカウントレジ
スタ11はカウントを行なわず、最初の区間Tで
カウントした値nをそのまま保持する。
When the register chain detection signal is input at time point b, the arithmetic pipeline operation control circuit 7 is enabled. As a result, the arithmetic pipeline operating signal and register chain arithmetic pipeline operating signal' are turned on every cycle, and the arithmetic pipeline performs an arithmetic operation. On the other hand, if data transfer from the storage device to the vector register (VR) continues normally, the VR write signal also turns on every cycle. Therefore, in the subtracter 8, VR
Since both the write signal and register chain operation pipeline operation signal' are canceled, the output of the subtracter 8 is "0", and the write count register 11 does not count, but starts counting in the first section T. The value n is held as is.

しかし、第3図の時点b′,b″間に示すように、
ベクトルレジスタへのデータ転送が中断された場
合には、その間、VR書込み信号が生じないた
め、レジスタ連鎖時演算パイプライン動作信号
′のみが減算器8の(−)入力へ印加され、書
込みカウントレジスタ11のカウント値“n”を
“1”ずつ減算するように働く。これにより、ベ
クトルレジスタへの書込みデータ量に演算パイプ
ラインへの読出しデータ量が追いつく方向で動作
が進められ、そして時点b″でn=“0”になつた
ものとすれば、ここではじめて演算パイプライン
動作信号及びレジスタ連鎖時演算パイプライン
動作信号′は、次のサイクルでオフになり、演
算パイプラインの動作の停止が指示される。
However, as shown between time points b′ and b″ in Figure 3,
If the data transfer to the vector register is interrupted, the VR write signal is not generated during that time, so only the register chain operation pipeline operation signal ' is applied to the (-) input of the subtracter 8, and the write count register is It works to subtract the count value "n" of 11 by "1". As a result, the operation progresses in such a way that the amount of data read to the calculation pipeline catches up with the amount of data written to the vector register, and if we assume that n = "0" at time point b'', then the first calculation is performed. The pipeline operation signal and register chain operation pipeline operation signal' are turned off in the next cycle, instructing to stop the operation of the operation pipeline.

その後、時点bでベクトルレジスタへのデー
タ転送が再開されると、VR書込み信号もオンと
なり、書込みカウントレジスタ11は“1”をカ
ウントし、演算パイプライン動作信号及びレジ
スタ連鎖時演算パイプライン動作信号′も復旧
される。上記の場合、n=“0”になる以前にベ
クトルレジスタへのデータ転送が再開されたとき
は、当然に演算パイプライン動作信号及びレジス
タ連鎖時演算パイプライン動作信号がオフになら
ず、演算パイプラインは動作を停止しない。
After that, when the data transfer to the vector register is resumed at time point b, the VR write signal also turns on, the write count register 11 counts "1", and the operation pipeline operation signal and register chain operation pipeline operation signal ' is also restored. In the above case, if data transfer to the vector register is resumed before n = "0", the arithmetic pipeline operation signal and the arithmetic pipeline operation signal during register chaining will not turn off, and the arithmetic pipeline operation signal will not turn off. The line never stops working.

次に時点Cで、VR書込み終了信号がオンにな
ると、ベクトルレジスタへのデータ転送は終了
し、演算パイプライン動作制御回路7は区間Tと
同一の動作となるため、演算パイプライン動作信
号はオン状態、レジスタ連鎖時演算パイプライ
ン動作信号′はオフ状態となり、演算パイプラ
インを停止する必要がなくなる。
Next, at time C, when the VR write end signal turns on, the data transfer to the vector register ends, and the arithmetic pipeline operation control circuit 7 operates in the same way as in section T, so the arithmetic pipeline operation signal turns on. When register chaining occurs, the arithmetic pipeline operating signal 'is turned off, and there is no need to stop the arithmetic pipeline.

このように、演算パイプラインによる演算は、
演算パイプラインに起動がかかつた時点から、途
中あるいは最後にデータ転送が行なわれなくなつ
ても、その時点で書込みカウント回路6が保持し
ている処理可能データ量だけ演算パイプラインを
動作することを許すようにしている。また、演算
パイプラインが動作するごとに前記書込みカウン
ト回路から減じる(例えば−1)ようにし、処理
可能データ量が0になつた時点ではじめて演算パ
イプラインを停止するようにしているため、余分
に演算パイプラインを停止しなくてもよく、性能
がアツプされる。
In this way, the calculations by the calculation pipeline are
From the time when the arithmetic pipeline is activated, even if data transfer is not performed during or at the end, the arithmetic pipeline is operated by the amount of processable data held by the write count circuit 6 at that time. I try to forgive. In addition, each time the calculation pipeline operates, the write count circuit is decremented (for example, by -1), and the calculation pipeline is stopped only when the amount of data that can be processed becomes 0. There is no need to stop the calculation pipeline, improving performance.

なお、ベクトルレジスタへの書込みが終了(時
点C)すれば、演算パイプラインを停止する必要
がなくなるということはいうまでもない。
It goes without saying that once the writing to the vector register is completed (time point C), there is no need to stop the arithmetic pipeline.

第6図は、演算パイプライン制御回路の他の実
施例を示す。図中、6は書込みカウント回路、7
は演算パイプライン動作制御回路、12は書込み
カウントレジスタ、13は読出しカウントレジス
タ、14および15は選択ゲート、16および1
7は加算器、18は書込み・読出し差量検出器を
示す。
FIG. 6 shows another embodiment of the arithmetic pipeline control circuit. In the figure, 6 is a write count circuit, 7
is an arithmetic pipeline operation control circuit, 12 is a write count register, 13 is a read count register, 14 and 15 are selection gates, 16 and 1
7 is an adder, and 18 is a write/read difference amount detector.

本実施例は、書込みデータ量と読出しデータ量
とを別々にカウントし、それぞれ書込みカウント
レジスタ12と読出しカウントレジスタ13とに
保持させて、これから書込み・読出し差量検出器
18により差量、すなわちベクトルレジスタ中の
処理可能データ量を求めて、演算パイプライン動
作制御回路7を制御するものであり、第4図の実
施例とくらべて書込みカウント回路6の構成が相
違するのみで、基本的な機能は同じものである。
In this embodiment, the amount of write data and the amount of read data are counted separately and held in a write count register 12 and a read count register 13, respectively. It determines the amount of data that can be processed in the register and controls the arithmetic pipeline operation control circuit 7. Compared to the embodiment shown in FIG. 4, the only difference is the configuration of the write count circuit 6, and the basic function is are the same.

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

以上のように、本発明によればレジスタ連鎖の
ある2つのベクトル命令を、並行処理開始時点の
如何に拘らず、ベクトルレジスタへのデータ転送
の中断に対して、常にベクトルデータの正当性を
保証しつつ、最大の効率をもつて実行させること
ができる。
As described above, according to the present invention, the validity of the vector data is always guaranteed even if the data transfer to the vector register is interrupted, regardless of the start point of parallel processing of two vector instructions with a register chain. However, it can be executed with maximum efficiency.

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

第1図は一般的なベクトル処理装置の概略構成
図、第2図はベクトル演算処理の1例を示すタイ
ムチヤート、第3図はベクトル演算処理の他の1
例を示すタイムチヤート、第4図は本発明の1実
施例による演算パイプライン制御回路の構成図、
第5図は第3図をもとに第4図に示す実施例回路
のタイムチヤート、第6図は本発明の他の実施例
による演算パイプライン制御回路の構成図であ
る。 図中、6は書込みカウント回路、7は演算パイ
プライン動作制御回路、8は減算器、9は選択ゲ
ート、10は加算器、11は書込みカウントレジ
スタ、はVR書込み開始信号、はレジスタ連
鎖検出信号、はVR書込み終了信号、はVR
書込み信号、は演算パイプライン動作信号、
′はレジスタ連鎖時演算パイプライン動作信号
を示す。
Figure 1 is a schematic configuration diagram of a general vector processing device, Figure 2 is a time chart showing one example of vector operation processing, and Figure 3 is another example of vector operation processing.
A time chart showing an example; FIG. 4 is a configuration diagram of an arithmetic pipeline control circuit according to an embodiment of the present invention;
5 is a time chart of the embodiment circuit shown in FIG. 4 based on FIG. 3, and FIG. 6 is a block diagram of an arithmetic pipeline control circuit according to another embodiment of the present invention. In the figure, 6 is a write count circuit, 7 is an arithmetic pipeline operation control circuit, 8 is a subtracter, 9 is a selection gate, 10 is an adder, 11 is a write count register, is a VR write start signal, is a register chain detection signal , is VR write end signal, is VR
The write signal is the calculation pipeline operation signal,
' indicates an arithmetic pipeline operation signal during register chaining.

Claims (1)

【特許請求の範囲】[Claims] 1 1個または、複数個のエレメントを同時にア
クセス可能なベクトルレジスタと、前記ベクトル
レジスタ間で演算を行なう演算パイプラインと、
記憶装置とベクトルレジスタ間でデータ転送を行
なうアクセスパイプラインを1本または複数本備
えたベクトル処理装置において、前記アクセスパ
イプラインで使用するベクトルレジスタとベクト
ルレジスタ読出し動作を行なう演算またはアクセ
スパイプラインで使用するベクトルレジスタ間で
レジスタ連鎖の有無を検出するレジスタ連鎖検出
手段と、記憶装置からベクトルレジスタへデータ
を転送する際に、データ転送開始時点からのベク
トルレジスタ書込みの転送量と前記レジスタ連鎖
検出手段がレジスタ連鎖を検出した後のベクトル
レジスタ読出し動作を行なう演算またはアクセス
パイプラインの動作量とをそれぞれ検出し、それ
らの差量を求める比較手段とを設け、前記記憶装
置からベクトルレジスタへのデータ転送が中断さ
れた場合には前記比較手段から出力される差量が
0になるまでベクトルレジスタからパイプライン
への読出し動作を行ない、前記差量が0になつた
ときパイプラインの動作を停止させ、その後前記
記憶装置からベクトルレジスタへのデータ転送が
再開されて前記差量が1以上となつたときパイプ
ラインの動作を再開し、また前記記憶装置からパ
イプラインへのデータ転送が終了した場合には、
前記差量が0になるまでベクトルレジスタからパ
イプラインへの読出し動作を行ない、パイプライ
ンの動作は停止させないことを特徴とするパイプ
ライン制御方式。
1. A vector register that can access one or more elements simultaneously; an arithmetic pipeline that performs operations between the vector registers;
In a vector processing device equipped with one or more access pipelines that transfer data between a storage device and a vector register, a vector register used in the access pipeline and an operation that performs a vector register read operation or used in the access pipeline. a register chain detection means for detecting the presence or absence of a register chain between vector registers to be transferred; Comparison means is provided for detecting the operation amount of the vector register read operation or the operation amount of the access pipeline after detecting the register chain, and calculating the difference between them, and the data transfer from the storage device to the vector register is performed. In the case of interruption, the read operation from the vector register to the pipeline is performed until the amount of difference outputted from the comparison means becomes 0, and when the amount of difference becomes 0, the operation of the pipeline is stopped, and then When the data transfer from the storage device to the vector register is resumed and the difference amount becomes 1 or more, the operation of the pipeline is restarted, and when the data transfer from the storage device to the pipeline is completed,
A pipeline control method characterized in that a read operation from a vector register to a pipeline is performed until the difference amount becomes 0, and the operation of the pipeline is not stopped.
JP22633283A 1983-11-30 1983-11-30 Pipeline control system Granted JPS60118977A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP22633283A JPS60118977A (en) 1983-11-30 1983-11-30 Pipeline control system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP22633283A JPS60118977A (en) 1983-11-30 1983-11-30 Pipeline control system

Publications (2)

Publication Number Publication Date
JPS60118977A JPS60118977A (en) 1985-06-26
JPH02742B2 true JPH02742B2 (en) 1990-01-09

Family

ID=16843505

Family Applications (1)

Application Number Title Priority Date Filing Date
JP22633283A Granted JPS60118977A (en) 1983-11-30 1983-11-30 Pipeline control system

Country Status (1)

Country Link
JP (1) JPS60118977A (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2716055B2 (en) * 1988-06-07 1998-02-18 株式会社日立製作所 Vector processor control method
JPH06168263A (en) * 1992-11-30 1994-06-14 Fujitsu Ltd Vector processor
JP3327602B2 (en) * 1992-12-28 2002-09-24 東北電力株式会社 Radiation detection optical transmission device
JP3462871B2 (en) * 2002-04-05 2003-11-05 東北電力株式会社 Radiation detection optical transmission device
JP4825184B2 (en) * 2007-09-27 2011-11-30 日立アロカメディカル株式会社 Sample measuring device

Also Published As

Publication number Publication date
JPS60118977A (en) 1985-06-26

Similar Documents

Publication Publication Date Title
JP2858140B2 (en) Pipeline processor device and method
US5043868A (en) System for by-pass control in pipeline operation of computer
EP0269980B1 (en) Data processor for parallelly executing conflicting instructions
USRE34052E (en) Data processing system with CPU register to register data transfers overlapped with data transfer to and from main storage
JPH04367936A (en) Superscalar processor
US4630195A (en) Data processing system with CPU register to register data transfers overlapped with data transfer to and from main storage
US4385365A (en) Data shunting and recovering device
JPH02742B2 (en)
JPS58121457A (en) Information processing device
JPH01224871A (en) Vector arithmetic instruction issuing control system
GB2115964A (en) A digital data processor
JP2798121B2 (en) Data processing device
JPS623347A (en) Saving system for error recovery information
KR950000088B1 (en) Data processing system
JPS6120893B2 (en)
JPS61131047A (en) Pipeline controlling system
JPH02206836A (en) Data processor
JP2636566B2 (en) Pipeline control method
JPH0252301B2 (en)
JPS63174173A (en) Information processor
JPH0342721A (en) Information processor
JP2001084149A (en) Interruption processing system for information processor
JPS60118976A (en) Pipeline control system
JPS62212745A (en) Data processor having buffer memory
JPH0228724A (en) System for controlling branching instruction