JPS6320536A - Information processor - Google Patents

Information processor

Info

Publication number
JPS6320536A
JPS6320536A JP61164748A JP16474886A JPS6320536A JP S6320536 A JPS6320536 A JP S6320536A JP 61164748 A JP61164748 A JP 61164748A JP 16474886 A JP16474886 A JP 16474886A JP S6320536 A JPS6320536 A JP S6320536A
Authority
JP
Japan
Prior art keywords
result
register
output
pipeline
circuit
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
JP61164748A
Other languages
Japanese (ja)
Other versions
JP2503984B2 (en
Inventor
Hiroshi Matsumoto
寛 松本
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 Corp
Original Assignee
NEC Corp
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 Corp filed Critical NEC Corp
Priority to JP61164748A priority Critical patent/JP2503984B2/en
Publication of JPS6320536A publication Critical patent/JPS6320536A/en
Application granted granted Critical
Publication of JP2503984B2 publication Critical patent/JP2503984B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Abstract

PURPOSE:To execute the processing at a high speed by executing preferentially that which requires a result as soon as possible, in case of a competition between a computing element output in the same computing element and an added pipeline use register output, or otherwise, executing preferentially an output from the latter stage of the pipeline use register. CONSTITUTION:At the time of a selective control of a switching circuit 12, when there is a competition of outputs of the maximum 4 cases of a result of an adder and subtracter circuit system, which is to be executed preferentially is determined, and unless that which desires to output a result as soon as possible especially exists, the degree of priority becomes higher as to that of the latter stage of the pipeline. Also, when that which desires to output the result as soon as possible especially exists, for instance, when an instruction for using its result as an operand is waiting for the execution, the result is stored in an arithmetic operation register 16 immediately. Unless it is read out and executed, a fall of the performance is caused, therefore, even when other result is not transferred yet to the arithmetic operation register 16 but left in the pipeline use register of the latter stage side than said one, this result overruns it and stored in the arithmetic operation register 16 if it is allowed. A switching circuit 13 is also constituted in the same way as the switching circuit 12.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はパイプライン化した情報処理装置に関し、特に
複数の命令を並列に実行するパイプライン化した情報処
理装置に関する。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a pipelined information processing device, and particularly to a pipelined information processing device that executes a plurality of instructions in parallel.

〔従来の技術〕[Conventional technology]

一般に、高性能を追求した情報処理装置に於ては、独立
した各糧演算器をノにイブライン化し、同種の演算につ
いては、同じ演算器だ対して連続的にオペランドを送シ
込んでノやイグライン処理し。
In general, in information processing equipment that pursues high performance, each independent computing unit is made into an online system, and operands are continuously sent to the same computing unit for similar operations. Igraine processing.

異なった演算については別の演算器に対して連続的にオ
ペランドを送り込んで並列に処理することが行なわれて
いる。また、各種演算器は、性能向上の為、それぞれ最
も少ないパイプライン段数で実現している。
For different operations, operands are continuously sent to different arithmetic units and processed in parallel. In addition, each type of arithmetic unit is realized with the least number of pipeline stages to improve performance.

〔発明が解決しようとする問題点〕[Problem that the invention seeks to solve]

ところが、同一演算器については、・クイシライン処理
の為、演算結果が入力順に順次出力されるが・異なった
演算器からの結果の出力は、各演算器へのオペランドの
投入タイミング、各演算器のパイプライン段数の違いに
ニジ、同一タイミングに競合する可能性がある。演算結
果は一般にソフトウェア可視レジスタ群(以下、演算し
・ゾスタと呼ぶ)の中の−って格納されるが、これは普
通メモリ化されている為、同一タイミングに複数の結果
を格納することはできない。
However, for the same arithmetic unit, - due to quisi-line processing, the arithmetic results are output sequentially in the order of input, - results from different arithmetic units are output depending on the input timing of operands to each arithmetic unit, and the timing of inputting operands to each arithmetic unit. Due to the difference in the number of pipeline stages, there may be conflicts at the same timing. The calculation results are generally stored in the software visible register group (hereinafter referred to as the calculation register), but since this is usually stored in memory, it is not possible to store multiple results at the same timing. Can not.

これを避ける為、各演算器のパイプラインの段数から逆
算して、結果の出力タイミングが競合する場合には、各
演算器へのオペランドの投入タイミング、即ち命令の実
行起@を適当に遅らせている。命令の実行起動が、与え
られた命令列の順にしか出来ない制御方式を採用して込
る装置では。
To avoid this, calculate backwards from the number of pipeline stages of each arithmetic unit, and if there is a conflict in the output timing of the result, appropriately delay the input timing of operands to each arithmetic unit, that is, the start of instruction execution. There is. In devices that employ a control method that allows instructions to be executed only in the order of a given instruction sequence.

l命令の実行起動を遅らせることによシ後続の命令も順
次遅れることになシ、性能の低下を招いている。
By delaying the start of execution of the 1 instruction, subsequent instructions are also sequentially delayed, resulting in a decrease in performance.

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

本発明の情報処理装置はパイプライン化した機能の異な
る演算器を複数個持り清報処理装置において、各演算に
最低必要な・gイブライン段数が異なる場合、各演算器
て対してその後段に装置結果の転送のみを行なう・ぐイ
ゾライン用のレジスタを各演算系ノ?イブラインの段数
が等しくなるように必要な段数だけ付加し、前記付加し
たノ4イデライン用のレジスタの任意のレジスタからも
演算結果を出力出来る切替手段と、全結果出力のうちか
ら1つを選択しようとして同−演算器知於ける演算器出
力及び付加したパイプライン用レジスタ出力の間で競合
する場合には、結果を早く必要とするものがあればこれ
を優先し、さもなければパイプライン用レジスタのよゆ
後段からの出力を優先させる制御手段とを含んで構成さ
れる。
The information processing device of the present invention has a plurality of pipelined arithmetic units with different functions, and when the minimum number of stages required for each operation is different, the following stage is used for each arithmetic unit. Is there a register for each calculation system that only transfers device results? Add the necessary number of stages so that the number of stages of the ideal line is equal, and select one of the switching means that can output the operation result from any register of the added registers for the ideal line, and the output of all results. If there is a conflict between the arithmetic unit output of the same arithmetic unit and the added pipeline register output, if there is one that requires the result quickly, this will take priority, otherwise the pipeline register and a control means for prioritizing the output from the subsequent stage.

〔実施例〕〔Example〕

次に本発明について図面を参照して説明する。 Next, the present invention will be explained with reference to the drawings.

第1図及び第2図は本発明の一実施例のブロック図及び
その一部詳細図である。第1図に於て。
1 and 2 are block diagrams and partially detailed views of one embodiment of the present invention. In Figure 1.

乗算回路1.加減算回路2.論理演算回路3はそれぞれ
7.各段が1マシンサイクルで動作・するパイプライン
化された演算器であシ、1マシンサイクル毎に異なった
第4ランドの演算をノクイゾライン式に処理することが
出来る。また各演算に必要なオペランドが入力オベラン
ドノクス1001,1002で与えられると、それぞれ
7マシンサイクル、4マシンサイクル、2マシンサイク
ル後忙演算結果を出力することが出来る。
Multiplication circuit 1. Addition/subtraction circuit 2. Each logic operation circuit 3 has 7. Each stage is a pipelined arithmetic unit that operates in one machine cycle, and it is possible to process a different fourth land calculation every machine cycle in a noquizoline manner. Furthermore, when the operands necessary for each operation are given through the input obelandnoxes 1001 and 1002, the busy operation results can be output after 7 machine cycles, 4 machine cycles, and 2 machine cycles, respectively.

加減算回路2及び論理演算回路3のノやイブライン段数
はそれぞれ4段、2段であシ2乗算回路l!多 のパイプライン段数17段であるから、その差分。
The number of stages of the addition/subtraction circuit 2 and logic operation circuit 3 is 4 stages and 2 stages, respectively. The number of pipeline stages is 17, so there is a difference.

つま)3段及び5段分の/ぐイブライン用レジスタ4〜
6,7〜11が加減算回路2及び論理演算回路3に接続
されている。
(Tsum) 3-stage and 5-stage /give line registers 4~
6, 7 to 11 are connected to the addition/subtraction circuit 2 and the logic operation circuit 3.

切替回路12は加減算回路2の出力、パイプライン用レ
ジスタ4〜6の出力のうち、いずれかを選択して出力す
る回路であシ、切替回路13は論理演算回路3の出力、
ツクイブライン用レジスタ7〜11の出力のうち、いず
れかを選択して出力する回路である。また切替回路14
は乗算回路1゜切替回路12.13の出力のうちいずれ
かを選択して、演算レジスタ16への書込み・ぐス10
03に出力する回路である。
The switching circuit 12 is a circuit that selects and outputs either the output of the addition/subtraction circuit 2 or the output of the pipeline registers 4 to 6, and the switching circuit 13 selects and outputs the output of the logic operation circuit 3.
This circuit selects and outputs one of the outputs of the twin line registers 7 to 11. Also, the switching circuit 14
selects one of the outputs of the multiplier circuit 1° switching circuit 12 and 13 and writes it to the calculation register 16.
This is a circuit that outputs to 03.

本実施例には乗算回路lにはパイプライン用レジスタを
設けていないが、これは説明を簡単にする為であシ、加
減算回路2.論理演算回路3と同様に後段にパイプライ
ン用レジスタを適当な段数だけ設けても良い。この場合
乗算回路に設けたパイプライン用レジスタの段数だけ、
加減算回路。
In this embodiment, the multiplier circuit 1 is not provided with a pipeline register, but this is for the purpose of simplifying the explanation. Similar to the logic operation circuit 3, an appropriate number of pipeline registers may be provided at the subsequent stage. In this case, the number of stages of pipeline registers provided in the multiplication circuit is
Addition/subtraction circuit.

論理演算回路のパイプライン用レジスタの段数を共に増
やすことになる。
This also increases the number of stages of pipeline registers in the logical operation circuit.

制御回路15は切替回路12,13.14の選択を制御
する回路である。まず切替回路14の選択制御は、各演
算回路系の間で結果の出力の競合が発生したときにどの
演算回路系からの出力を優先するかを決めるものであシ
、優先順は乗算回路系、加減算回路系、論理演算回路系
の順である。
The control circuit 15 is a circuit that controls selection of the switching circuits 12, 13, and 14. First, the selection control of the switching circuit 14 is to determine which arithmetic circuit system will give priority to the output when a conflict occurs in the output of the result between the arithmetic circuit systems, and the priority order is the multiplier circuit system. , addition/subtraction circuit system, and logic operation circuit system.

これは例えば乗算回路にはツクイブライン用レジスタが
無いので結果が求まった時点ですぐに演算レジスタ16
に転送しなければ結果が失なわれてしまうので最優先に
するものであシ、以下同様の考え方で演算に最低必要な
パイプライン段数が多込ものをより優先的に巳ている。
For example, the multiplier circuit does not have a register for the multiplier line, so as soon as the result is obtained, the arithmetic register 16
Since the result will be lost if it is not transferred, it is given the highest priority.The same idea is used to give priority to the one with the minimum number of pipeline stages required for the calculation.

次だ切替回路12の選択制御は、加減算回路系の結果の
最大4ケースの出力の競合がある場合に。
The selection control of the next switching circuit 12 is performed when there is a maximum of four cases of conflicting outputs of the results of the addition/subtraction circuit system.

どれを優先するかを決めるものであり、特に結果を早く
出力したいものが無い場合は、優先度はパイプラインの
より後段のものを高くしている。これは例えば最後段の
・卆イゾライン用レジスタ6に結果がある場合は、これ
を優先して演算レジスタ16に転送しなければ、結果が
失なわれてしまうので最優先にするものであシ、以下同
様の考え方で後段側をよシ優先度を高くしている。また
1%に結果を早く出力したいものがある場合2例えばそ
の結果をオペランドとして使う命令が実行待ちになって
いる場合にはすぐに結果を演算レジスタ16に格納し、
読み出して実行に入らなければ性能の低下を招くので、
これより後段側のパイプライン用レジスタに別の結果が
まだ演算レジスタ16に転送されなくて残っている場合
でも、差しつかえない限シこれを追い越して演算レジス
タ16に格納するという制御を行なっている。切替回路
13についても切替回路12と同様である。
It is used to decide which one to give priority to, and if there is no particular result that you want to output quickly, the priority is given to the one in the later stages of the pipeline. For example, if there is a result in the last-stage isoline register 6, it must be given priority and transferred to the arithmetic register 16, otherwise the result will be lost, so it should be given top priority. Below, using the same idea, higher priority is given to the later stages. In addition, if there is something that you want to output the result quickly in 1%2, for example, if an instruction that uses the result as an operand is waiting for execution, immediately store the result in the calculation register 16,
If it is not read and executed, performance will deteriorate, so
Even if another result remains in the pipeline register on the downstream side without being transferred to the arithmetic register 16, control is performed to overtake this result and store it in the arithmetic register 16 as far as possible. . The switching circuit 13 is also similar to the switching circuit 12.

フリツノフロップ101〜107.201〜207.3
01〜307はそれぞれ乗算回路系。
Fritsuno flop 101~107.201~207.3
01 to 307 are multiplication circuit systems, respectively.

加減算回路系、論理演算回路系の各パイプラインステー
ジだ有効データが存在することを表わす有効ビットすな
わち有効フラッグを表わすものであシ、これと制御回路
15の詳細を示すと第2図のようになっている。
Each pipeline stage of the addition/subtraction circuit system and the logic operation circuit system represents a valid bit, that is, a valid flag, which indicates the presence of valid data.The details of this and the control circuit 15 are shown in FIG. It has become.

第2図は主に加減算回路2に注目して詳細が記されてい
る。加減算回路2にオRランドが与えられると、・ヤイ
プライン式に演算が進むにつれ、フリップフロップ20
1,202,203が順に11となシ、演算結果が求ま
ると同時にフリップフロラf204が1”になる。この
時に求まった結果を演算レジスタ16に転送できる場合
は、転送が行なわれてしまうため、フリップフロップ2
04は%l”→@0”になう、フリップフロップ205
は1にならずに終了する。他との競合があり優先度が低
くて転送できない場合は、結果をパイプライン用レジス
タ4に入れると同時にフリップ70ノブ204は11”
→“0″、フリップフロップ205は′0m−4″l”
になシ、結果が演算レジスタ16に転送されずにノ?イ
ブライン用レジスタ4に移ったことを示す。以下ツクイ
ブライン用レジスタ5,6゜フリップフロラf206,
207も同様である。
FIG. 2 mainly focuses on the addition/subtraction circuit 2 and describes the details thereof. When OR land is given to the adder/subtracter circuit 2, as the operation progresses in the Yaipline style, the flip-flop 20
1, 202, and 203 become 11 in order, and at the same time as the calculation result is obtained, the flip roller f204 becomes 1''.If the result obtained at this time can be transferred to the calculation register 16, the transfer will be performed. flip flop 2
04 becomes %l"→@0", flip-flop 205
ends without becoming 1. If there is a conflict with another and the priority is low and cannot be transferred, the result is put into the pipeline register 4 and at the same time the flip 70 knob 204 is set to 11".
→"0", flip-flop 205 is '0m-4"l"
No, the result is not transferred to the calculation register 16? Indicates that the data has moved to register 4 for Eveline. Below are the Tsukuibline registers 5, 6° flip flora f206,
The same applies to 207.

格納アドレスレジスタ221〜226は加戒算結果を演
算レジスタ16に格納する場合の格納アドレスを持ち回
るレジスタであり、オー?ランドアドレスレジスタ23
1.232はそれぞれ今から演算を開始しようとしてい
る命令の2オぜランドの演算レジスタアドレスを保持す
るレジスタで。
The storage address registers 221 to 226 are registers that rotate the storage address when storing the result of addition and subtraction in the calculation register 16. Land address register 23
1.232 is a register that holds the 2 Oz operation register address of the instruction that is about to start operation.

現在実行中の命令の結果を待っている場合は実行忙入れ
ずこのレジスタに保持され続けるものである。
When waiting for the result of an instruction currently being executed, it continues to be held in this register regardless of execution.

オ被ランドアドレスレジスタ231.232の内容は格
納アドレスレジスタ226,225゜224と比較され
、一致するものがあれば各・ンイブラインステージ対応
に一致信号1601,1602゜1603が”1#とな
る。これらの信号から優先度変更信号1701.170
2が作られる。有効ビット201〜207に対応するノ
J?イブラインステージをA−Gと呼ぶと、この論理テ
ーブルは次の様になっている。
The contents of the land address registers 231 and 232 are compared with the storage address registers 226, 225, and 224, and if there is a match, the match signals 1601, 1602, and 1603 become "1#" for each blank stage. .Priority change signal 1701.170 from these signals
2 is made. NoJ? corresponding to valid bits 201-207? If the Eveline stages are called A-G, this logical table is as follows.

つまシFステージにある演算結果よりり、Eステージに
ある結果が早く欲しい場合は、Fステージの有効ビット
を抑える信号1701を0”にし、Eステージにある演
算結果よシロステージにある結果が早く欲しい場合はE
ステージの有効ビラトラ抑える信号1702を′0#に
する論理となっている。
If you want the result in the E stage to be faster than the result in the front F stage, set the signal 1701 that suppresses the valid bit of the F stage to 0'', so that the result in the white stage is faster than the result in the E stage. E if you want
The logic is such that the signal 1702 for suppressing the effective playback of the stage is set to '0#.

切替回路12の制御は、有効ビットをあられすフリッグ
フロッf204〜207と優先度変更信号1701,1
702 、加減算回路系の結果を優先して出力できるこ
とを指示する信号14021’l:よって行なわれる。
The switching circuit 12 is controlled by flip-flops f204 to 207 that change the valid bits and priority change signals 1701 and 1.
702, signal 14021'l instructing that the result of the addition/subtraction circuit system can be output with priority: Therefore, this is done.

先ず優先度変更信号1701,1702か共に“1″の
場合、つまシ便先度変更が無い場合についてみると、信
号1402か“1#であればフリップフロップ207.
206.205.204の順に見て例えば最初に1″の
あるフリップフロップが206であるとするとこれに対
応するパイプライン用レジスタ5の結果を演算レジスタ
16に転送するため、 AND’l’−) 217〜2
140うち対応する椰ゲート216の出力信号1206
が11”となり、切替回路12ではパイプライン用し・
ゾスタ5が選択されて結果の転送が行なわれることにな
る。
First, if the priority change signals 1701 and 1702 are both "1" and there is no priority change, if the signal 1402 is "1#", the flip-flop 207.
206, 205, and 204. For example, if the first flip-flop with 1" is 206, then in order to transfer the result of the corresponding pipeline register 5 to the operation register 16, AND'l'-) 217-2
140, the output signal 1206 of the corresponding palm gate 216
becomes 11", and the switching circuit 12
Zostar 5 will be selected and the results will be transferred.

信号1402が”0′であれば加減算回路系の結果は演
算レジスタ16に転送できないのでAND)r′″−ト
217〜214のいずれの出力(1207〜1204)
もO”となシ、従って信号1306〜1304は全て″
1”となるので7リツプフロツプ204〜206の内容
がそのままフリップフロップ205〜207に移される
If the signal 1402 is "0", the result of the addition/subtraction circuit system cannot be transferred to the arithmetic register 16, so AND) r'" - whichever output from 217 to 214 (1207 to 1204)
Also, the signals 1306 to 1304 are all "O".
1'', the contents of the 7 flip-flops 204-206 are transferred as they are to the flip-flops 205-207.

次に優先度変更がある場合についてみると5例えばフリ
ップフロップ207,206,205゜204のうち2
06と205が”1″であり、格納アドレスレジスタ2
26の内容とオペランドアドレスレジスタ231.23
2とは一致せず(信号1601=”O″)、格納アドレ
スレジスタ225の内容とオペランドアドレスレジスタ
231iu232が一致している(信号1602=“1
”)とすると8次に実行に入ろうとしている命令はEス
テージにある演算結果を待っている状態であシ、Fステ
ージの結果よりも先にEステージの結果を優先して演算
レジスタ16に格納した方が待合せ時間が少なくて済む
。この場合、優先度変更信号1701=−”O=となる
ことばよって7リツプフロツゾ206の出力信号を抑え
、ANDゲート216の出力信号は”O”、 ANDダ
ート215の出力信号−′1#となって2.切替回路1
2ではノクイゾライン用レジスタ4が選択され、Fステ
ージにある結果よシEステージにある結果が転送される
ことになる。
Next, if we consider the case where there is a priority change, 5, for example, 2 of the flip-flops 207, 206, 205°204
06 and 205 are "1", and storage address register 2
26 contents and operand address registers 231.23
2 does not match (signal 1601="O"), and the contents of storage address register 225 and operand address register 231iu232 match (signal 1602="1").
”), the instruction that is about to be executed next is waiting for the operation result in the E stage, and the result of the E stage is given priority over the result of the F stage and stored in the operation register 16. In this case, the priority change signal 1701=-"O= suppresses the output signal of the 7-lip float 206, the output signal of the AND gate 216 becomes "O", and the AND dart 215 The output signal of -'1# becomes 2. Switching circuit 1
In step 2, the register 4 for the noise line is selected, and the results in the F stage and the results in the E stage are transferred.

この場合追い越されて転送されなかったFステージ上の
結果はGステージに移される。
In this case, the results on the F stage that have been overtaken and not transferred are transferred to the G stage.

次に切替回路14の選択制御たついて説明する。Next, selection control of the switching circuit 14 will be explained.

各演算回路系から演算レジスタ16に転送すべき結果が
1つでも存在することを表わす信号1501゜1502
.1503はそれぞれフリップフロップ107の出力、
フリップフロップ204〜207の出力の論理和、フリ
ップフロップ302〜307の出力の論理和である。
Signals 1501 and 1502 indicating that there is at least one result to be transferred from each arithmetic circuit system to the arithmetic register 16.
.. 1503 are the outputs of the flip-flop 107,
These are the logical sum of the outputs of flip-flops 204 to 207 and the logical sum of the outputs of flip-flops 302 to 307.

この3本の信号を入力し、優先順位つまシ乗算回路系、
加減算回路系、論理演算系の順に従って。
Input these three signals, prioritize the multiplier circuit system,
Follow the order of addition/subtraction circuit system and logical operation system.

乗算回路系の出力を選ぶ信号1401 、加減算回路系
の出力を選ぶ信号1402.論理演算系の出力全還ぶ信
号1403を作成し、これによって切替回路14の選択
制御を行なっている。
A signal 1401 for selecting the output of the multiplication circuit system, a signal 1402 for selecting the output of the addition/subtraction circuit system. A signal 1403 that returns all the outputs of the logic operation system is generated, and selection control of the switching circuit 14 is performed using this signal.

第3図は結果待ちを行なわない場合の高速化の一例を説
明する為の命令列である。■の命令は演意味する。O−
Oについても同様である。
FIG. 3 is an instruction sequence for explaining an example of speeding up when results are not waited. ■The command means performance. O-
The same applies to O.

第4−A図は、第3図の命令列に於ける従来の装置、即
ち第1図に於ける・ぐイゾライン用レジスタ4〜11.
切替回路12.13が無い場合の命令実行のタイムチャ
ートである。命令の実行起動がマシンサイクル毎に一1
命令で、与えられた命令列順にのみ行なえる場合、■〜
■の命令について?ilマシンサイクルずれて乗算回路
l、加減算回路2.加減算回路2に演算を指示し、それ
ぞれ7サイクル目、4サイクル目、4サイクル目に演算
結果が求まるので演算レジスタ16への書込ミハス10
3には■■■の命令類に結果が得られる。
FIG. 4-A shows the conventional device in the instruction sequence of FIG.
It is a time chart of instruction execution when there is no switching circuit 12 or 13. Instruction execution starts once per machine cycle
If an instruction can only be executed in the order of the given instruction sequence, ■~
■About the command? il machine cycle offset multiplication circuit 1, addition/subtraction circuit 2. The addition/subtraction circuit 2 is instructed to perform calculations, and the calculation results are obtained in the 7th cycle, the 4th cycle, and the 4th cycle, respectively, so the writing to the calculation register 16 is completed.
In 3, results are obtained for the instructions of ■■■.

結果の命令類が変わってもこの場合何ら問題はない。と
ころが■の命令については、タイミング4から実行開始
させたとすると(第4−A図の点線)。
In this case, there is no problem even if the resulting instructions change. However, assuming that the instruction (3) is started to be executed at timing 4 (dotted line in FIG. 4-A).

加減算である為4マシンサイクル後のタイミング7で結
果か求まシ、■の命令の結果が求まるタイミングと一致
し、不具合が生じる。従って■の命令の実行開始を1マ
シンサイクル遅らせ、タイミング5から実行させること
によってこれを避けるようにする(第4−A図の実線)
。■の命令についても同様である。こうして7命令を実
行させると、全体で16マシンサイクルを必要とする。
Since this is an addition/subtraction, the result is found at timing 7 after four machine cycles, which coincides with the timing at which the result of the instruction (2) is found, causing a problem. Therefore, this can be avoided by delaying the start of execution of the instruction (■) by one machine cycle and having it executed from timing 5 (solid line in Figure 4-A).
. The same applies to the instruction (2). Executing seven instructions in this way requires a total of 16 machine cycles.

第4−B図は第3図の命令列て於ける本発明の装置、即
ち第1図でのタイムチャートである。この場合■〜■の
命令すべてについて、前記の従来の場合とは異なり、演
算結果の競合を気にせず。
FIG. 4-B is a time chart of the apparatus of the present invention in the instruction sequence of FIG. 3, ie, in FIG. 1. In this case, for all the instructions from ■ to ■, unlike the conventional case described above, there is no need to worry about conflicts in operation results.

1マシンサイクルずれて実行開始させる。タイミング6
で■と■の命令の結果か競合するが、優先順に従って、
■の命令の結果が切替回路12゜14で選択され、演算
レジスタ16に転送される。
Start execution with a one-machine cycle delay. timing 6
The results of the instructions ■ and ■ conflict, but according to the priority order,
The result of the instruction (2) is selected by the switching circuit 12-14 and transferred to the arithmetic register 16.

■の命令の結果は演算レジスタ16には転送されず、パ
イプライン用レジスタ7に移される。次にタイミング7
では■と■と■と■の命令の結果が競合するが、優先順
に従って■の命令の結果が切替回路14で選択され、演
算レジスタ16に転送される。■の命令の結果は・やイ
ブライン用レジスタ4に移され、■、■の命令の結果は
それぞれパイプライン用レジスタ8,7に移される。次
にタイミング8では■と■と■の命令の結果が競合する
が、優先順に従って■の命令の結果がパイプライン用レ
ジスタ4から切替回路12.14を通して演算レジスタ
16に転送される。■と■の命令の結果はそれぞれパイ
プライン用レジスタ9,8に移される。次にタイミング
9では■と■の命令の結果が競合するが、優先j頂に従
って■の命令の結果が・やイブライン用レジスタ9から
切替回路13.14を通して演算レジスタ16に転送さ
れる。■の命令の結果はパイプライン用しノスタ9に啓
される。タイミング1oでは競合なく■の命令の結果が
パイプライン用レジスタ9から切替回路13.14を通
して演算レジスタ16に転送される。■の命令の結果は
タイミング13で競合なく結果の格納か行なわれ、結果
的には7命令の実行に13マシンサイクルで済むので、
高速化されることが理解されよう。
The result of the instruction (2) is not transferred to the operation register 16 but is transferred to the pipeline register 7. Next, timing 7
In this case, the results of the instructions ■, ■, ■, and ■ conflict with each other, but the result of the instruction ■ is selected by the switching circuit 14 and transferred to the arithmetic register 16 according to the priority order. The result of the instruction (2) is moved to the line register 4, and the results of the instructions (2) and (2) are moved to the pipeline registers 8 and 7, respectively. Next, at timing 8, the results of the instructions ■, ■, and ■ conflict, but the result of the instruction ■ is transferred from the pipeline register 4 to the arithmetic register 16 through the switching circuit 12.14 in accordance with the priority order. The results of the instructions (2) and (2) are transferred to pipeline registers 9 and 8, respectively. Next, at timing 9, the results of the instructions ■ and ■ compete with each other, but the result of the instruction ■ is transferred from the line register 9 to the arithmetic register 16 through the switching circuits 13 and 14 in accordance with the priority j. The result of the instruction (2) is used for the pipeline and is disclosed to Nosta 9. At timing 1o, the result of the instruction (3) is transferred from the pipeline register 9 to the operation register 16 through the switching circuits 13 and 14 without any conflict. The result of the instruction (①) is stored without conflict at timing 13, and as a result, it only takes 13 machine cycles to execute 7 instructions.
It will be understood that the speed will be increased.

尚、・ヤイプラインの長さを同じ長さえ合わせているの
は、ノやイブラインの長さがすべて同じであれば1マシ
ンサイクル毎の入力に対し必ず出力の競合なしに1マシ
ンサイクル毎に出力を得ることが出来るためであシ、単
に転送の為のパイプライン用レジスタの任意の出力から
結果を取シ出す構成にしているのは、競合さえなければ
出来るだけ早く、演算レジスタを更新し、この結果をオ
イランドとして使用する命令が後続の命令の中にあれば
早く実行に移らせるためである。
Furthermore, the reason why the lengths of the lines are the same is that if the lengths of the lines and lines are all the same, then the input for each machine cycle will always have an output for each machine cycle without contention. This is because the result can be obtained from any output of the pipeline register for transfer.The reason why the result is simply taken from the arbitrary output of the pipeline register for transfer is that the calculation register is updated as soon as possible unless there is a conflict, and this This is because if there is an instruction that uses the result as an oiland in a subsequent instruction, it can be executed quickly.

第5図は結果待ちを行なう場合の一例を説明する為の命
令列である。記述方法は第3図と同様の為、説明は省略
する。
FIG. 5 is a sequence of instructions for explaining an example of waiting for results. Since the description method is the same as that in FIG. 3, the explanation will be omitted.

第6−A図は、第5図の命令列に於けるタイムチャート
を優先変更回路が無いと仮定した場合のタイムチャート
であシ、■、■、■の命令は順次タイミング9,10.
11で結果の転送が行なわれる。■の命令は■の命令の
結果が演算し・ゾスタ16へ転送され読み出されて(タ
イミング12)はじめてタイミング13から実行開始さ
れる。これに対して9本発明の装置に於ける優先変更回
路【より、第6−B図のタイムチャートに示すように、
■、■、■の命令の結果の転送はタイミング9でDステ
ージのアドレス一致信号1603が11m忙なるため■
、■、■の順に行なわれ、■の命令はタイミング11か
ら実行開始され、高速化が計られているのが理解されよ
う。
FIG. 6-A is a time chart for the instruction sequence in FIG. 5 assuming that there is no priority change circuit. The instructions ①, ②, ① are sequentially executed at timings 9, 10, .
At step 11, the results are transferred. The instruction (2) starts execution at timing 13 only after the result of the instruction (2) is calculated, transferred to the ZOSTER 16, and read out (timing 12). In contrast, the priority change circuit in the device of the present invention [9] As shown in the time chart of Fig. 6-B,
The results of the instructions ■, ■, and ■ are transferred because the address match signal 1603 of the D stage is busy for 11 m at timing 9.■
, ■, ■ are executed in this order, and the execution of the instruction (■) starts at timing 11, so that it can be understood that speeding up is achieved.

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

以上説明したように2本発明はパイプライン化した機能
の異なる演算器を複数個持つ情報処理装置に於て、各演
算に最低必要なツクイブライン段数が異なる場合、各演
算器に対してその後段に単に結果の転送のみを行なうパ
イプライン用のレジスタを必要な段数だけ付加すること
によって各演算系パイプラインの段数を等しくシ、付加
したパイプライン用レジスタの任意のレジスタからも演
算結果を出力出来るように構成し、全納果出カのうちか
ら1つを選択しようとして同一演算器に於はル演算器出
力及び付加したパイプライン用レジスタ出力の間で競合
する場合には、結果を早く必要とするものがあればこれ
を優先し、さもなければ/’Pイブライン用レジスタの
より後段からの出方を優先させて出力させることによっ
て必要なマシンサイクルを減少し、動作を高速化させる
効果がある。
As explained above, in an information processing device having a plurality of pipelined arithmetic units with different functions, when the minimum number of twig line stages required for each operation is different, the following stage for each arithmetic unit is provided. By adding the necessary number of pipeline registers that simply transfer results to the system, the number of stages in each calculation system pipeline can be made equal, and the calculation result can be output from any of the added pipeline registers. If you try to select one of the full outputs and there is a conflict between the outputs of the two arithmetic units and the outputs of the added pipeline registers in the same arithmetic unit, you may need the result quickly. If there is something to do, give priority to this, otherwise give priority to the output from the later stage of the /'P e-line register, which has the effect of reducing the required machine cycles and speeding up the operation. .

る。Ru.

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

第1図は本発明の一実施例を示すブロック図。 第2図は第1図の一部全詳細に示した図、第3図。 第5図は本発明の詳細な説明する為の命令列例。 第4−A図、第4−B図、第6−A図、第6−B図は本
発明の詳細な説明する為のタイムチャートである。 記号の説明:1・・・乗算回路、2・・・加減算回路。 3・・・論理演算回路、4〜11・・・ノクイゾライン
用しゾスタ、12〜14・・・切替回路、15・・・制
御回路。 効7:7/’)、 214〜21 ’I−AND回路、
 721〜223・・・結果アドレスレジスタ、224
〜226・・・格納アドレスレジスタ、231,232
−・・オイランドアドレスレジスタ、241・・−比較
器、1001゜1002・・・オペランド供給ノ4ス、
1003・・・結果格納パス、1204〜1207・・
・選択回路12に於ける選択信号、1401〜1403
・・・選択回路14に於ける選択信号、1501・・・
1503・・・各演算系に格納すべき結果があることを
示す制御信号、 1601−1603・・・結果アドレ
ス/片にランドアドレス一致信号。 1701.1702・・・優先度変更信号。 范3図 OR3−1’?1XR2 ■ R6−R4すR5 ■ R9−R’7 + R8 ■ R12−R70fRJI ■ 尺フ5−R73・R14 ■R7ε−R76・R77 OR;27−  R79・R20 范4−A図 第4−8図 第5図 ■ R+03− RIOI X R+02■ R106
−R+04XR+Q5 ■ R109−R+07 十RI08 ■  RI+2 − RIIC1+RIIl■ 尺1+
5 ←RI+3十尺114 第6−B図
FIG. 1 is a block diagram showing one embodiment of the present invention. FIG. 2 is a diagram showing a part of FIG. 1 in full detail, and FIG. FIG. 5 is an example of an instruction sequence for explaining the present invention in detail. 4-A, 4-B, 6-A, and 6-B are time charts for explaining the present invention in detail. Explanation of symbols: 1...multiplication circuit, 2...addition/subtraction circuit. 3...Logic operation circuit, 4-11...Shizostar for Noquizo line, 12-14...Switching circuit, 15...Control circuit. 7:7/'), 214-21' I-AND circuit,
721-223...Result address register, 224
~226...Storage address register, 231, 232
-...Eiland address register, 241...-Comparator, 1001゜1002...Operand supply node,
1003...Result storage path, 1204-1207...
- Selection signal in selection circuit 12, 1401 to 1403
... Selection signal in selection circuit 14, 1501...
1503...Control signal indicating that there is a result to be stored in each calculation system. 1601-1603...Land address match signal for result address/piece. 1701.1702...Priority change signal. Fan 3 figure OR3-1'? 1 Figure 5■ R+03- RIOI X R+02■ R106
-R+04XR+Q5 ■ R109-R+07 10RI08 ■ RI+2 - RIIC1+RIIl■ Shaku 1+
5 ←RI+30 shaku114 Figure 6-B

Claims (1)

【特許請求の範囲】[Claims] 1、パイプライン化した機能の異なる演算器を複数個持
つ情報処理装置に於て、各演算に最低必要なパイプライ
ン段数が異なる場合、各演算器に対してその後段に、単
に結果の転送のみを行なうパイプライン用のレジスタを
各演算系パイプラインの段数が等しくなるように必要な
段数だけ付加し、前記付加したパイプライン用のレジス
タの任意のレジスタからも演算結果を出力出来る切替手
段と、全結果出力のうちから1つを選択しようとして同
一演算器に於ける演算器出力及び付加したパイプライン
用レジスタ出力の間で競合する場合には、結果を早く必
要とするものがあればこれを優先し、さもなければパイ
プライン用レジスタのより後段からの出力を優先させる
制御手段とを含むことを特徴とする情報処理装置。
1. In an information processing device that has multiple pipelined arithmetic units with different functions, if the minimum number of pipeline stages required for each operation is different, it is possible to simply transfer the results for each arithmetic unit to the subsequent stage. a switching means that adds a necessary number of pipeline registers to perform the above processing so that the number of stages of each calculation system pipeline is equal, and outputs a calculation result from any of the added pipeline registers; If you try to select one of all result outputs and there is a conflict between the arithmetic unit output of the same arithmetic unit and the added pipeline register output, if there is one that requires the result quickly, select it. 1. An information processing device comprising: control means for giving priority to output from a later stage of a pipeline register.
JP61164748A 1986-07-15 1986-07-15 Information processing device Expired - Lifetime JP2503984B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61164748A JP2503984B2 (en) 1986-07-15 1986-07-15 Information processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61164748A JP2503984B2 (en) 1986-07-15 1986-07-15 Information processing device

Publications (2)

Publication Number Publication Date
JPS6320536A true JPS6320536A (en) 1988-01-28
JP2503984B2 JP2503984B2 (en) 1996-06-05

Family

ID=15799166

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61164748A Expired - Lifetime JP2503984B2 (en) 1986-07-15 1986-07-15 Information processing device

Country Status (1)

Country Link
JP (1) JP2503984B2 (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02239323A (en) * 1989-01-27 1990-09-21 Hughes Aircraft Co Register logic computation unit
JPH04116726A (en) * 1990-09-07 1992-04-17 Koufu Nippon Denki Kk Information processor
JP2011528817A (en) * 2008-03-19 2011-11-24 イマジネイション テクノロジーズ リミテッド Pipeline processor

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE10121792C2 (en) * 2000-05-26 2003-09-25 Ibm Universal loading address / value prediction scheme

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02239323A (en) * 1989-01-27 1990-09-21 Hughes Aircraft Co Register logic computation unit
JPH04116726A (en) * 1990-09-07 1992-04-17 Koufu Nippon Denki Kk Information processor
JP2011528817A (en) * 2008-03-19 2011-11-24 イマジネイション テクノロジーズ リミテッド Pipeline processor

Also Published As

Publication number Publication date
JP2503984B2 (en) 1996-06-05

Similar Documents

Publication Publication Date Title
JPS58114274A (en) Data processor
JP2518293B2 (en) Data Flow Processor
JPS6320536A (en) Information processor
JPS60136870A (en) Vector processor
JPH09212360A (en) Data processor
JP2503983B2 (en) Information processing device
JP2875864B2 (en) Pipeline processing method
JP2008102599A (en) Processor
JPS6320537A (en) Information processor
JPS6320538A (en) Information processor
JPH11119998A (en) Information processor
JP3211791B2 (en) Loop processing method
JP3526773B2 (en) Multiprocessor device and control method thereof
JP2812610B2 (en) Pipeline control method
JP2503966B2 (en) Information processing device
JP3855069B2 (en) Logic circuit
JP2636192B2 (en) Information processing device
JP2001092658A (en) Data processing circuit and data processor
JPH04116726A (en) Information processor
JP2002318689A (en) Vliw processor for executing instruction with delay specification of resource use cycle and method for generating delay specification instruction
JPS5896346A (en) Hierarchical arithmetic system
JP3708560B2 (en) Data flow type information processor
JP2504535B2 (en) Bus unit configuration method
JP3743155B2 (en) Pipeline controlled computer
JP2001034603A (en) Product-sum operation processor