[go: up one dir, main page]

JPH0452488B2 - - Google Patents

Info

Publication number
JPH0452488B2
JPH0452488B2 JP57228842A JP22884282A JPH0452488B2 JP H0452488 B2 JPH0452488 B2 JP H0452488B2 JP 57228842 A JP57228842 A JP 57228842A JP 22884282 A JP22884282 A JP 22884282A JP H0452488 B2 JPH0452488 B2 JP H0452488B2
Authority
JP
Japan
Prior art keywords
instruction
register
store
cycle
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.)
Expired - Lifetime
Application number
JP57228842A
Other languages
Japanese (ja)
Other versions
JPS59117640A (en
Inventor
Takeshi Watanabe
Masahiro Hashimoto
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.)
Hitachi Ltd
Original Assignee
Hitachi 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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP22884282A priority Critical patent/JPS59117640A/en
Publication of JPS59117640A publication Critical patent/JPS59117640A/en
Publication of JPH0452488B2 publication Critical patent/JPH0452488B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3867Concurrent instruction execution, e.g. pipeline or look ahead using instruction pipelines

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Advance Control (AREA)

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は演算パイプライン方式のデータ処理装
置に好適なストア処理方法に関する。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a store processing method suitable for an arithmetic pipeline data processing device.

〔従来の技術〕[Conventional technology]

第1図はデータ処理装置の概略構成であり、1
は命令を解読する命令ユニツト、2は命令および
データを格納する記憶ユニツト、3は命令で指定
された演算を実行する演算ユニツトを示す。演算
パイプラインは、処理装置の処理能力を向上させ
るため、演算ユニツト3で、演算実行に必要とす
る時間を複数サイクル数に分割し、複数の異つた
命令処理を各サイクルに割当て、該演算ユニツト
に対しパイプライン制御を施す方式である。
FIG. 1 shows a schematic configuration of a data processing device.
2 is an instruction unit that decodes the instruction, 2 is a storage unit that stores instructions and data, and 3 is an arithmetic unit that executes the operation specified by the instruction. In order to improve the processing capacity of the processing unit, the arithmetic pipeline divides the time required to execute an arithmetic operation into a plurality of cycles in the arithmetic unit 3, allocates a plurality of different instruction processes to each cycle, and then This method performs pipeline control on the

かかる演算パイプライン制御を実施する場合、
従来はストア命令が現われると、先行する命令の
演算が終了してから該ストア命令の処理を開始し
ていた。これは、先行する命令の演算結果を格納
するデイステイネーシヨン・レジスタが、後続の
ストア命令でストアデータのソース・レジスタに
指定されている場合、先行命令の演算が終了する
前にストア処理を開始すると、先行命令の演算結
果がストアデータに反映されないことによる。
When implementing such calculation pipeline control,
Conventionally, when a store instruction appears, processing of the store instruction is started after the operation of the preceding instruction is completed. This means that if the destination register that stores the operation result of the preceding instruction is specified as the source register of the store data in the subsequent store instruction, the store processing is executed before the operation of the preceding instruction is completed. This is because once started, the operation results of the preceding instructions are not reflected in the store data.

従来の演算ユニツトの構成例を第2図に示す。
第2図は浮動小数点演算ユニツトの例で、11,
12はセレクタ、13,14,16,17,19
などはワークレジスタ、15はプレシフタ、18
は並列加算器、20はポストシフタ、21は演算
結果レジスタ、22はレジスタ群、23はストア
データレジスタ、30はオペランド・ラツプアラ
ウンド制御回路、31はメモリ・リクエスト制御
回路である。ここで、演算ユニツトの実行サイク
ルをE,F,Nとする。EはExecution cycle、
FはF(next of E)cycle、NはNormalize
cycleの略である。E,F,Nの後にレジスタ格
納サイクルが続くが、これをP(Put Away)サ
イクルと呼ぶ。レジスタ群22は一般に汎用レジ
スタ群と浮動小数点レジスタ群の2つを有してお
り、浮動小数点演算に際して浮動小数点レジスタ
群を用い、それ以外の演算では汎用レジスタ群を
用いるが、図では1つのレジスタ群として示して
いる。
An example of the configuration of a conventional arithmetic unit is shown in FIG.
Figure 2 shows an example of a floating point arithmetic unit, 11,
12 is a selector, 13, 14, 16, 17, 19
etc. are work registers, 15 is a preshifter, 18
20 is a parallel adder, 20 is a post-shifter, 21 is an operation result register, 22 is a register group, 23 is a store data register, 30 is an operand wraparound control circuit, and 31 is a memory request control circuit. Here, the execution cycles of the arithmetic units are assumed to be E, F, and N. E stands for Execution cycle.
F is F (next of E) cycle, N is Normalize
It is an abbreviation for cycle. A register storing cycle follows after E, F, and N, and this is called a P (Put Away) cycle. The register group 22 generally has two, a general-purpose register group and a floating-point register group.The floating-point register group is used for floating-point operations, and the general-purpose register group is used for other operations, but in the figure, only one register is used. Shown as a group.

今、先行する命令が加算命令で、この後にスト
ア命令が続き、先行加算命令の演算結果を格納す
るデイステイネーシヨン・レジスタが該ストア命
令のソース・レジスタと同一である場合を考え
る。この場合の従来の演算パイプラインのタイム
チヤートを第3図に示す。第3図で、ADは加算
命令、STDはストア命令を表わしている。
Now, consider a case where the preceding instruction is an addition instruction, followed by a store instruction, and the destination register that stores the operation result of the preceding addition instruction is the same as the source register of the store instruction. A time chart of a conventional calculation pipeline in this case is shown in FIG. In FIG. 3, AD represents an add instruction and STD represents a store instruction.

第3図を参照するに、オペランドデータがオペ
ランドバス101,102よりセレクタ11,1
2を通してレジスタ13,14にセツトされる
と、第1サイクルでは、加算動作に先立つて、シ
フタ15により指数部の小さいオペランドを大き
いオペランドに桁合せすべくプレシフト動作を行
う。第2サイクルでは、桁合せしてレジスタ1
6,17にセツトされたオペランドデータ(仮数
部)に対して、並列加算器18により並列加算を
実行する。第3サイクルはポストノーマライズの
ためのサイクルであり、レジスタ19にセツトさ
れた演算結果に対して、仮数部の先頭に無効な0
がこないようにシフタ20で仮数部のシフトを行
い、該シフトした分だけ指数部を補正する。この
後、第4サイクルでは、レジスタ21にセツトさ
れた演算結果を、オペランドバス103を介して
レジスタ群22内の予め定められたレジスタ(デ
イステイネーシヨン・レジスタ)に格納する。
Referring to FIG. 3, operand data is transferred to selectors 11 and 1 from operand buses 101 and 102.
2 in the registers 13 and 14, in the first cycle, prior to the addition operation, the shifter 15 performs a preshift operation to align the operand with the smaller exponent part with the larger operand. In the second cycle, the digits are aligned and register 1
The parallel adder 18 performs parallel addition on the operand data (mantissa part) set to 6 and 17. The third cycle is a cycle for post-normalization, and an invalid 0 is placed at the beginning of the mantissa for the operation result set in register 19.
The mantissa part is shifted by the shifter 20 so as not to occur, and the exponent part is corrected by the shifted amount. Thereafter, in the fourth cycle, the operation result set in the register 21 is stored in a predetermined register (destination register) in the register group 22 via the operand bus 103.

一方、次のストア命令の処理は第4サイクルで
開始する。オペランド・ラツプアラウンド制御回
路30は、相前後する命令のオペランド部を監視
し、先行する命令の演算結果を格納するデイステ
イネーシヨン・レジスタが、次の命令のソース・
レジスタに指定されている場合、演算結果がレジ
スタ22の該当レジスタに格納されるのを待たず
して信号線104を経由し、セレクタ11,12
を制御して目的のデータをレジスタ13あるいは
14にセツトする回路である。第3図より、先行
する加算命令の加算結果は第3サイクルの終りで
は確定している。そこで、第4サイクルで次のス
トア命令の処理を開始し、オペランド・ラツプア
ラウンド制御回路30の制御下で、ストアデータ
として先行加算命令の加算結果を信号線104、
セレクタ12経由でレジスタ14にセツトするの
である。次の第5サイクルで、レジスタ14のス
トアデータをレジスタ23に移し、メモリ・リク
エスト制御回路31がストアリクエストを出すこ
とにより、信号線105経由でストアデータを記
憶ユニツトに書き込む。なお、先行命令による演
算結果を格納するデイステイネーシヨン・レジス
タと次のストア命令のストアデータが格納されて
いるソース・レジスタが異なる場合は、同様に、
第4サイクルでストアデータをオペランドバス1
02、セレクタ12経由でレジスタ14にセツト
し、これを第5サイクルで、レジスタ23、信号
線105経由で記憶ユニツトに書き込む。
On the other hand, processing of the next store instruction starts in the fourth cycle. The operand wraparound control circuit 30 monitors the operand parts of successive instructions, and the destination register that stores the operation result of the preceding instruction is used as the source of the next instruction.
If specified as a register, the operation result is sent to the selectors 11 and 12 via the signal line 104 without waiting for it to be stored in the corresponding register of the register 22.
This is a circuit that controls the register 13 or 14 to set target data in the register 13 or 14. From FIG. 3, the addition result of the preceding addition instruction is determined at the end of the third cycle. Therefore, processing of the next store instruction is started in the fourth cycle, and under the control of the operand wraparound control circuit 30, the addition result of the advance addition instruction is sent to the signal line 104 as store data.
It is set in the register 14 via the selector 12. In the next fifth cycle, the store data in the register 14 is transferred to the register 23, and the memory request control circuit 31 issues a store request, thereby writing the store data to the storage unit via the signal line 105. Similarly, if the destination register that stores the operation result of the preceding instruction and the source register that stores the store data of the next store instruction are different,
In the 4th cycle, store data is transferred to operand bus 1.
02, it is set in the register 14 via the selector 12, and written to the storage unit via the register 23 and signal line 105 in the fifth cycle.

第3図はストア命令が3サイクル前の先行命令
のデイステイネーシヨンをソースレジスタとする
場合を示すが、該先行命令の先行命令(先々行命
令)のデイステイネーシヨンをソースレジスタと
する場合は、先々行命令の演算結果はレジスタ2
1に求まつているので、これを線104′を介し
て直接セレクタ12に転送するようにする。
Figure 3 shows a case where the store instruction uses the destination of the preceding instruction three cycles before as the source register. , the operation result of the previous instruction is stored in register 2.
1, so this is directly transferred to the selector 12 via line 104'.

以上のように、従来は先行する命令の演算が終
了してからでないと、後続のストア命令の処理は
開始できないという考えに立つており、演算パイ
プラインの高速化を阻害する一つの原因になつて
いた。
As described above, the conventional idea was that the processing of the subsequent store instruction could not be started until the operation of the preceding instruction was completed, which was one of the reasons that hindered speeding up of the operation pipeline. was.

〔発明の目的〕[Purpose of the invention]

本発明の目的は、高速にストア命令を処理する
ことにより、演算パイプライン方式のデータ処理
装置のこれまで以上の性能向上を図ることにあ
る。
An object of the present invention is to improve the performance of an arithmetic pipeline data processing device by processing store instructions at high speed.

〔発明の概略〕[Summary of the invention]

本発明の要点は、ストア命令が出されると、該
ストア命令の処理を直ちに開始してストアデータ
を入手すると共に、先々行命令および先行命令の
デイステイネーシヨン・レジスタと該ストア命令
のソース・レジスタの一致性を順次比較してい
き、一致する場合は、ストアデータを先々行命令
あるいは先行命令の演算結果と順次置きかえて記
憶ユニツトに送出するものである。
The key point of the present invention is that when a store instruction is issued, processing of the store instruction is immediately started to obtain the store data, and the destination register of the previous instruction and the preceding instruction and the source register of the store instruction are If they match, the store data is sequentially replaced with the operation result of the previous instruction or the preceding instruction and sent to the storage unit.

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

第4図は本発明による演算ユニツトの一実施例
である。第4図において、24と26はセレク
タ、25はバツフアレジスタ、32はセレクタ制
御回路であり、それ以外の構成は第2図と同様で
ある。
FIG. 4 shows an embodiment of an arithmetic unit according to the present invention. In FIG. 4, 24 and 26 are selectors, 25 is a buffer register, 32 is a selector control circuit, and the other configurations are the same as in FIG. 2.

第4図では、ストア命令が出されると、該スト
ア命令の処理を直ちに開始し、そのとき汎用レジ
スタ群22の該当レジスタ(ソースレジスタ)が
保持するデータをストアデータとして、オペラン
ドバス101、セレクタ12経由でレジスタ14
にセツトする。このストアデータは、1サイク
ル・ピツチでセレクタ24,26を介して順次レ
ジスタ25,23と転送していく。このストアデ
ータの転送の途中において、セレクタ24では、
先々行命令のデイステイネーシヨン・レジスタと
該ストア命令のソースレジスタが一致する場合、
信号線104上の先々行命令の演算結果を選択
し、旧ストアデータにかえてレジスタ25にセツ
トする。同様に、セレクタ26では、先行命令の
デイステイネーシヨン・レジスタと該ストア命令
のソースレジスタが一致する場合、信号線104
上の先行命令の演算結果を選択し、旧ストアデー
タにかえてレジスタ23にセツトする。これらの
セレクタ24,26を制御するのがセレクタ制御
回路32である。
In FIG. 4, when a store instruction is issued, processing of the store instruction is immediately started, and the data held in the corresponding register (source register) of the general-purpose register group 22 is used as store data, and the operand bus 101, selector 12 via register 14
Set to . This store data is sequentially transferred to registers 25 and 23 via selectors 24 and 26 at one cycle pitch. During the transfer of this store data, the selector 24 performs
If the destination register of the previous instruction and the source register of the store instruction match,
The operation result of the previous instruction on the signal line 104 is selected and set in the register 25 in place of the old store data. Similarly, in the selector 26, if the destination register of the preceding instruction and the source register of the store instruction match, the signal line 104
The operation result of the preceding instruction above is selected and set in the register 23 instead of the old store data. A selector control circuit 32 controls these selectors 24 and 26.

第5図にセレクタ制御回路32の詳細図を示
す。第5図において、40,41,42はレジス
タ、43,44は比較回路である。演算パイプラ
インのEサイクルの初めに、実行すべき命令の第
1オペランドのレジスタアドレスR1をレジスタ
40にセツトし、Fサイクル、Nサイクルでレジ
スタ41、レジスタ42とシフトせしめる。命令
の第1オペランドは、演算命令にあつては演算結
果を格納するデイステイネーシヨン・レジスタを
示し、ストア命令にあつてはストアデータが格納
されているソース・レジスタを示している。比較
回路43は、Fサイクルの初めにストア命令処理
中という条件で、レジスタ40とレジスタ42の
内容を比較し、一致すると信号線106に“1”
を出力する。比較回路44は、次のNサイクルの
初めに同じくストア命令処理中という条件で、レ
ジスタ41とレジスタ42の内容を比較し、一致
すると信号線107に“1”を出力する。
FIG. 5 shows a detailed diagram of the selector control circuit 32. In FIG. 5, 40, 41, and 42 are registers, and 43, 44 are comparison circuits. At the beginning of the E cycle of the arithmetic pipeline, the register address R1 of the first operand of the instruction to be executed is set in the register 40, and shifted to the register 41 and register 42 in the F cycle and the N cycle. The first operand of an instruction indicates a destination register in which the operation result is stored in the case of an operation instruction, and indicates a source register in which store data is stored in the case of a store instruction. The comparison circuit 43 compares the contents of the register 40 and the register 42 under the condition that a store instruction is being processed at the beginning of the F cycle, and if they match, it outputs "1" to the signal line 106.
Output. At the beginning of the next N cycle, the comparison circuit 44 compares the contents of the register 41 and the register 42 under the condition that the store instruction is being processed, and outputs "1" to the signal line 107 if they match.

ここで、信号線106が“1”ということは、
ストア命令のソース・レジスタと該ストア命令に
先々行する命令のデイステイネーシヨン・レジス
タとが一致することを意味する。また、信号線1
07が“1”ということは、ストア命令のソー
ス・レジスタと該ストア命令の直前命令(先行命
令)のデイステイネーシヨン・レジスタとが一致
することを意味している。第4図のセレクタ24
は、信号線106が“1”の時、レジスタ14の
旧ストアデータの代りに、そのとき信号線104
上に出力される先々行命令の演算結果を選択し、
セレクタ26は、信号線107が“1”の時、レ
ジスタ25の旧ストアデータの代りに信号線10
4の先行命令の演算結果を選択するものである。
Here, the fact that the signal line 106 is "1" means that
This means that the source register of the store instruction and the destination register of the instruction preceding the store instruction match. Also, signal line 1
07 being "1" means that the source register of the store instruction and the destination register of the instruction immediately before the store instruction (preceding instruction) match. Selector 24 in Figure 4
When the signal line 106 is "1", the signal line 104 is stored instead of the old store data in the register 14.
Select the operation result of the next instruction output above,
When the signal line 107 is “1”, the selector 26 selects the signal line 10 instead of the old store data in the register 25.
This selects the operation result of the preceding instruction No. 4.

第6図に本発明を適用した場合の演算パイプラ
インのタイムチヤートを示す。これは第3図に対
応するもので、第3図の場合と同様に、先行命令
が加算命令で、この後にストア命令が続き、先行
加算命令の演算結果を格納するデイステイネーシ
ヨン・レジスタが後続のストア命令のソース・レ
ジスタとなる場合の例である。第6図では、さら
に先々行命令(これは減算命令SUBとする)と
ストア命令STDの関係も点線で示している。
FIG. 6 shows a time chart of the calculation pipeline when the present invention is applied. This corresponds to Figure 3, and as in the case of Figure 3, the preceding instruction is an addition instruction, followed by a store instruction, and a destination register is used to store the operation result of the preceding addition instruction. This is an example of a case where the register becomes a source register for a subsequent store instruction. In FIG. 6, the relationship between the next-to-last instruction (this is assumed to be a subtraction instruction SUB) and the store instruction STD is also shown by dotted lines.

先行の加算命令ADの実行は従来と同様であ
り、第1サイクルでシフタ15によるプレシフト
動作を実行し、第2サイクルでは並列加算器18
による加算動作、第3サイクルではシフタ20に
よるポストノーマライズ動作をそれぞれ実行す
る。この第3サイクルで得られた演算結果が、次
の第4サイクルでレジスタ群22の所定レジスタ
(デイステイネーシヨン・レジスタ)に格納され
る。
Execution of the preceding addition instruction AD is the same as before, in which the preshift operation is executed by the shifter 15 in the first cycle, and the parallel adder 18 is executed in the second cycle.
In the third cycle, the shifter 20 performs the addition operation and the post-normalization operation by the shifter 20, respectively. The operation result obtained in this third cycle is stored in a predetermined register (destination register) of the register group 22 in the next fourth cycle.

一方、次のストア命令STDの処理は第2サイ
クルで直ちに開始する。この第2サイクルでは、
レジスタ群22の該当レジスタ(ソース・レジス
タ)に格納されている変更前のデータをストアデ
ータ(旧ストアデータ)として、オペランドバス
102、セレクタ12経由でレジスタ14にセツ
トする。この旧ストアデータは、次の第3サイク
ルでセレクタ24を経由してレジスタ25に移さ
れる。次の第4サイクルのあたまで、該ストア命
令のソース・レジスタと先行加算命令のデイステ
イネーシヨン・レジスタが同一ということでセレ
クタ制御回路32の出力信線107が“1”にな
るため、セレクタ26はレジスタ25にかえて信
号線104を選択する。この時、信号線104に
は先行する加算命令の演算結果が出力されてい
る。従つて、この第4サイクルでは、レジスタ2
5の旧ストアデータにかわつて信号線104の演
算結果がセレクタ26を経由してレジスタ23に
セツトされ、記憶ユニツトに書き込まれる。
On the other hand, processing of the next store instruction STD starts immediately in the second cycle. In this second cycle,
The data before the change stored in the corresponding register (source register) of the register group 22 is set as store data (old store data) in the register 14 via the operand bus 102 and the selector 12. This old store data is transferred to the register 25 via the selector 24 in the next third cycle. Until the next fourth cycle, the output signal line 107 of the selector control circuit 32 becomes "1" because the source register of the store instruction and the destination register of the pre-add instruction are the same. The selector 26 selects the signal line 104 instead of the register 25. At this time, the calculation result of the preceding addition instruction is output to the signal line 104. Therefore, in this fourth cycle, register 2
In place of the old store data of No. 5, the calculation result on the signal line 104 is set in the register 23 via the selector 26 and written into the storage unit.

第3図と第6図を比べた場合、第3図において
は、ストア命令に後続する命令の実行開始は第5
サイクルからであるが、第6図においては第3サ
イクルとなつており、2サイクル高速化が達成さ
れる。なお、第6図で点線で示したように、加算
命令ADの先行命令(ストア命令STDの先々行命
令)である減算命令SUBのデイステイネーシヨ
ン・レジスタがストア命令STDのソース・レジ
スタと一致する場合は、それが第3サイクルのあ
たまで判定され、セレクタ24はレジスタ14の
ストアデータにかえて、信号線104上の先々行
減算命令SUBの演算結果を選択してレジスタ2
5に移すことになる。
Comparing Figure 3 and Figure 6, in Figure 3 the execution of the instruction following the store instruction starts at the 5th point.
Although it is from the cycle, it is the third cycle in FIG. 6, and a speedup of two cycles is achieved. Note that, as shown by the dotted line in FIG. 6, the destination register of the subtraction instruction SUB, which is the preceding instruction of the addition instruction AD (the next instruction of the store instruction STD), matches the source register of the store instruction STD. If so, it is determined around the third cycle, and the selector 24 selects the operation result of the row-to-row subtraction instruction SUB on the signal line 104 instead of the store data in the register 14, and stores it in the register 2.
It will be moved to 5.

以上、本発明を浮動小数点演算ユニツトに適用
した場合を例に説明したが、本発明はこれに限定
されるものでないことはいうまでもない。
Although the present invention has been described above using an example in which the present invention is applied to a floating point arithmetic unit, it goes without saying that the present invention is not limited to this.

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

以上の説明から明らかな如く、本発明によれ
ば、複数の異つた命令の処理を各サイクルに割当
て並列に処理する演算パイプライン制御におい
て、ストア命令が発行されても、その処理を直ち
に開始し、もし先々行あるいは先行する命令のデ
イステイネーシヨン・レジスタとストア命令のソ
ース・レジスタのオペランドが一致して、ストア
データを変更する必要がある場合は、ストア命令
の処理途中において、該ストアデータを先々行あ
るいは先行する命令の演算結果と順次置きかえる
ため、パイプライン制御を何ら乱すことなく、ス
トア命令の高速処理が可能であり、かかる演算パ
イプライン制御方式のデータ処理装置のこれまで
以上の性能向上が達成される。
As is clear from the above description, according to the present invention, even if a store instruction is issued, the processing is started immediately in arithmetic pipeline control in which processing of a plurality of different instructions is assigned to each cycle and processed in parallel. , If the operands of the destination register of the next line or the preceding instruction and the source register of the store instruction match and it is necessary to change the store data, the store data is changed during the processing of the store instruction. Since the calculation result of the previous or preceding instruction is sequentially replaced, store instructions can be processed at high speed without any disturbance to pipeline control, and the performance of data processing devices using such calculation pipeline control method can be further improved. achieved.

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

第1図はデータ処理装置の全体構成図、第2図
は従来の演算ユニツトの構成例を示す図、第3図
は従来の演算パイプラインを説明するタイミング
図、第4図は本発明の演算ユニツトの一実施例を
示す図、第5図は第4図におけるセレクタ制御回
路の詳細図、第6図は本発明の演算パイプライン
を説明するタイミング図である。 11,12,24,26…セレクタ、13,1
4,16,17,19,21,25,26…レジ
スタ、15,20…シフタ、18…並列加算器、
22…レジスタ群、32…セレクタ制御回路。
FIG. 1 is an overall configuration diagram of a data processing device, FIG. 2 is a diagram showing an example of the configuration of a conventional calculation unit, FIG. 3 is a timing diagram explaining a conventional calculation pipeline, and FIG. 4 is a calculation diagram of the present invention. FIG. 5 is a detailed diagram of the selector control circuit in FIG. 4, and FIG. 6 is a timing diagram illustrating the arithmetic pipeline of the present invention. 11, 12, 24, 26...Selector, 13, 1
4, 16, 17, 19, 21, 25, 26... register, 15, 20... shifter, 18... parallel adder,
22...Register group, 32...Selector control circuit.

Claims (1)

【特許請求の範囲】 1 複数の異つた命令の処理を各サイクルに割当
てて並列に処理する演算パイプライン制御方式の
データ処理装置において、サイクルピツチで順
次、第1演算命令、第2演算命令、ストア命令が
出る場合のストア処理方法であつて、 前記ストア命令処理の第1サイクルで、該スト
ア命令のソースデータアドレスで示されるデータ
を第1レジスタにセツトし、 次の第2サイクルで、前記ストア命令のソース
データアドレスと前記第1演算命令のデイステイ
ネーシヨンアドレスを比較し、一致しない時は前
記第1レジスタのデータを、一致するときは前記
第1演算命令の演算結果データを選択して、第2
レジスタにセツトし、 次の第3サイクルで、前記ストア命令のソース
データアドレスと前記第2演算命令のデイステイ
ネーシヨンアドレスを比較し、一致しない時は前
記第2レジスタのデータを、一致するときは前記
第2演算命令の演算結果データを選択して、当該
ストア命令の最終的ストアデータとすることを特
徴とするデータ処理装置のストア処理方法。
[Claims] 1. In a data processing device using an arithmetic pipeline control method in which processing of a plurality of different instructions is assigned to each cycle and processed in parallel, a first arithmetic instruction, a second arithmetic instruction, In the store processing method when a store instruction is issued, in the first cycle of the store instruction processing, data indicated by the source data address of the store instruction is set in the first register, and in the next second cycle, the Compare the source data address of the store instruction and the destination address of the first operation instruction, and if they do not match, select the data in the first register, and if they match, select the operation result data of the first operation instruction. Well, second
In the next third cycle, the source data address of the store instruction and the destination address of the second operation instruction are compared, and if they do not match, the data in the second register is changed, and if they match, the data in the second register is A store processing method for a data processing apparatus, characterized in that the operation result data of the second operation instruction is selected and used as the final store data of the store instruction.
JP22884282A 1982-12-25 1982-12-25 Store processing method of data processing device Granted JPS59117640A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP22884282A JPS59117640A (en) 1982-12-25 1982-12-25 Store processing method of data processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP22884282A JPS59117640A (en) 1982-12-25 1982-12-25 Store processing method of data processing device

Publications (2)

Publication Number Publication Date
JPS59117640A JPS59117640A (en) 1984-07-07
JPH0452488B2 true JPH0452488B2 (en) 1992-08-24

Family

ID=16882713

Family Applications (1)

Application Number Title Priority Date Filing Date
JP22884282A Granted JPS59117640A (en) 1982-12-25 1982-12-25 Store processing method of data processing device

Country Status (1)

Country Link
JP (1) JPS59117640A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009041052A1 (en) 2007-09-27 2009-04-02 Oiles Corporation Thrust slide bearing made of synthetic resin
WO2010013415A1 (en) 2008-07-28 2010-02-04 オイレス工業株式会社 Synthetic resin thrust sliding bearing
EP3078868A1 (en) 2009-12-11 2016-10-12 Oiles Corporation Thrust slide bearing constituted of synthetic resins

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05204642A (en) * 1992-01-27 1993-08-13 Fujitsu Ltd Instruction execution control system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5569856A (en) * 1978-11-22 1980-05-26 Toshiba Corp Overlap system

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2009041052A1 (en) 2007-09-27 2009-04-02 Oiles Corporation Thrust slide bearing made of synthetic resin
WO2010013415A1 (en) 2008-07-28 2010-02-04 オイレス工業株式会社 Synthetic resin thrust sliding bearing
EP3078868A1 (en) 2009-12-11 2016-10-12 Oiles Corporation Thrust slide bearing constituted of synthetic resins

Also Published As

Publication number Publication date
JPS59117640A (en) 1984-07-07

Similar Documents

Publication Publication Date Title
US4882701A (en) Lookahead program loop controller with register and memory for storing number of loop times for branch on count instructions
JPS6028015B2 (en) information processing equipment
US5212662A (en) Floating point arithmetic two cycle data flow
US4916606A (en) Pipelined parallel data processing apparatus for directly transferring operand data between preceding and succeeding instructions
JPH02227769A (en) Data processing system
JPH03653B2 (en)
EP0305639B1 (en) Vector computer
US4954947A (en) Instruction processor for processing branch instruction at high speed
US5757685A (en) Data processing system capable of processing long word data
US4631672A (en) Arithmetic control apparatus for a pipeline processing system
JPS6142308B2 (en)
JPH0452488B2 (en)
US4924377A (en) Pipelined instruction processor capable of reading dependent operands in parallel
US5784606A (en) Method and system in a superscalar data processing system for the efficient handling of exceptions
JP3278441B2 (en) Vector processing equipment
JP2819733B2 (en) Information processing device
JP2722493B2 (en) Register allocation processing method
JPH06139071A (en) Parallel computers
JP3155056B2 (en) Information processing device
JPH01147723A (en) Pipe line processing system for information processor
JPH07248917A (en) Arithmetic processing method
JPS62288939A (en) Information processor
JPS59188735A (en) Floating point arithmetic unit
JPH04116770A (en) Vector data processor
JPS5896346A (en) Hierarchical calculation method