JPH02217924A - Storing processing system for data processor - Google Patents

Storing processing system for data processor

Info

Publication number
JPH02217924A
JPH02217924A JP3900589A JP3900589A JPH02217924A JP H02217924 A JPH02217924 A JP H02217924A JP 3900589 A JP3900589 A JP 3900589A JP 3900589 A JP3900589 A JP 3900589A JP H02217924 A JPH02217924 A JP H02217924A
Authority
JP
Japan
Prior art keywords
instruction
store
arithmetic
processing device
data processing
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP3900589A
Other languages
Japanese (ja)
Inventor
Hirotsugu Saitou
斉藤 拡二
Mamoru Ogiwara
荻原 衛
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 JP3900589A priority Critical patent/JPH02217924A/en
Publication of JPH02217924A publication Critical patent/JPH02217924A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To improve the performance of a pipeline processing by delaying only a writing command until the determination of an operated result to be storing data in the case of using the result of a preceding operation instruction by the succeeding STORE instruction. CONSTITUTION:An operation pipeline type data processor is constituted of an instruction unit 1 for decoding an instruction, a storage unit 2 for storing instructions and data and an operation unit 3 for executing operation specified by an instruction. When the preceding instruction exists at the time of executing a STORE instruction, the STORE instruction starts to be executed prior to the completion of the processing of the preceding instruction, whether the source register of the STORE instruction coincides with the destination register of the preceding instruction or not is checked, and when both the registers coincide with each other, the memory writing command of the STORE instruction is delayed until the operated result of the preceding instruction is determined. Consequently, the performance of the pipeline processing can be improved.

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.

[従来の技術] 第3図はデータ処理装置の概略構成であり、1は命令を
解読する命令ユニット、2は命令およびデータを格納す
る記憶ユニット、3は命令で指定された演算を実行する
演算ユニットを示す、演算パイプラインは、データ処理
装置の処理能力を向」−させるため、演算ユニット3で
、演算実行に必要とする時間を複数サイクルに分割し、
複数の異った命令処理を各サイクルに割当て、演算ユニ
ットに対しパイプライン制御を施す方式である2ここで
、演算ユニットの実行サイクルをE(Executio
n cycle) 、 N (Normalize c
ycle)とし、この後に続くレジスタ格納サイクルを
P(Put Away)と呼ぶ。
[Prior Art] Fig. 3 shows a schematic configuration of a data processing device, in which 1 is an instruction unit that decodes instructions, 2 is a storage unit that stores instructions and data, and 3 is an operation unit that executes the operation specified by the instruction. In order to improve the processing capacity of the data processing device, the calculation pipeline representing the unit divides the time required for calculation execution into multiple cycles in the calculation unit 3.
This method allocates multiple different instruction processes to each cycle and performs pipeline control on the arithmetic unit.2Here, the execution cycle of the arithmetic unit is expressed as E (Execution
n cycle), N (Normalize c
ycle), and the subsequent register storage cycle is called P (Put Away).

従来の演算ユニットの構成を第2図に示す。この構成は
浮動小数点?A算ユニットの例であり、11.12はセ
レクタ、13,14,16,17゜】9はワークレジス
タ、15はプレシフタ、18は並列加算器、20はポス
トシフタ、21は演算結果レジスタ、22はレジスタ群
、23はストアデータレジスタ、24.26はセレクタ
、25はバッファレジスタ、30はオペランド入力制御
回路、31はメモリリクエスト制御回路、32はセレク
タ制御回路である。
FIG. 2 shows the configuration of a conventional arithmetic unit. Is this configuration floating point? This is an example of an A calculation unit, 11.12 is a selector, 13, 14, 16, 17゜] 9 is a work register, 15 is a preshifter, 18 is a parallel adder, 20 is a postshifter, 21 is an operation result register, and 22 is an In the register group, 23 is a store data register, 24, 26 is a selector, 25 is a buffer register, 30 is an operand input control circuit, 31 is a memory request control circuit, and 32 is a selector control circuit.

以下、第2図の従来の演算ユニットについて、本発明に
直接関与する部分の動作を説明する。
The operation of the conventional arithmetic unit shown in FIG. 2 that is directly related to the present invention will be described below.

ストア命令が出されると、先行する命令の処理が終了す
るのを待たずに、このストア命令の処理を開始し、その
とき汎用レジスタ群22の該当レジスタ(ソースレジス
タ)が保持するデータをストアデータとして、まず、オ
ペランドバス]02、セレクタ12経由でレジスタ14
にセットする。
When a store instruction is issued, processing of this store instruction is started without waiting for the processing of the preceding instruction to finish, and at that time, the data held in the corresponding register (source register) of the general-purpose register group 22 is transferred to the store data. First, register 14 via operand bus] 02 and selector 12.
Set to .

次に、このストアデータは、]サイクル・ピッチでセレ
クタ24.26を介してl1ll’を次レジスタ25゜
23と転送されていく、このストアデータの転送の途中
において、セレクタ24では、先行命令のデスティネー
ション・レジスタと当該ストア命令のソース・レジスタ
が一致する場合、イ目号線104上の先々行命令の演算
結果を選択し、旧ストアデータに代えてレジスタ25に
セットする。
Next, this store data is transferred from l1ll' to the next register 25 and 23 via selectors 24 and 26 at a cycle pitch.During the transfer of this store data, selector 24 selects If the destination register and the source register of the store instruction match, the operation result of the previous instruction on the line 104 is selected and set in the register 25 in place of the old store data.

同様に、セレクタ26では、先行命令のデスティネーシ
ョン・レジスタと当該ストア命令のソース・レジスタと
が一致する場合、信号線104上の先行命令の演算結果
を選択し、旧ストアデータに代えてレジスタ23にセッ
トする。これらセレクタ24.26をff11111す
るのがセレクタ制御回路32である。
Similarly, if the destination register of the preceding instruction and the source register of the store instruction match, the selector 26 selects the operation result of the preceding instruction on the signal line 104 and stores it in the register 23 instead of the old store data. Set to . The selector control circuit 32 controls these selectors 24 and 26 to ff11111.

以上のように、従来は先行する演算結果と、ストアする
命令のソース・レジスタを読み出したデータとを一旦レ
ジスタにセットしておき、ストア命令でいずれか一方の
値を選択してストアデータ・レジスタ23にセットして
いた。
As described above, conventionally, the preceding operation result and the data read from the source register of the instruction to be stored are set in a register, and the store instruction selects one of the values and stores it in the store data register. It was set to 23.

[発明が解決しようとする課題] ところで、従来、処理速度の向上のための方式として、
演算パイプラインの一時点の同一サイクル内に同時に複
数の命令(例えば演算命令とストア命令)を実行するい
わゆる並列処理方式が特開昭63−131230号等に
公知である。
[Problem to be solved by the invention] By the way, conventionally, as a method for improving processing speed,
A so-called parallel processing method in which a plurality of instructions (for example, an arithmetic instruction and a store instruction) are simultaneously executed within the same cycle at one point in an arithmetic pipeline is known from Japanese Patent Application Laid-Open No. 131230/1983.

しかしながら、上記第2図に示した従来の技術では1例
えば、演算命令とストア命令とを並列で処理する場合に
、同一サイクルで演算結果を転送することになり、並列
処理は不可能であった。
However, with the conventional technology shown in Figure 2 above, for example, when processing an arithmetic instruction and a store instruction in parallel, the arithmetic results are transferred in the same cycle, making parallel processing impossible. .

本発明の目的は、先行演算の完了を待たずに後続のスト
ア命令を実行することが可能であるのみならず、複数の
命令を並列で処理するデータ処理装置においても先行演
算命令とこれに続くストア命令とを同時に処理可能とす
るデータ処理装置のストア処理方式を提供することにあ
る。
An object of the present invention is to not only make it possible to execute a subsequent store instruction without waiting for the completion of a preceding operation, but also to enable execution of a preceding operation instruction and subsequent store instruction in a data processing device that processes multiple instructions in parallel. An object of the present invention is to provide a store processing method for a data processing device that can simultaneously process store commands.

[課題を解決するための手段] 上記目的を達成するために、本発明によるデータ処理装
置のストア処理方式は、演算パイプライン制御方式を採
用したデータ処理装置において、ストア命令の実行時に
、先行する命令が存在するとき、この命令の処理が完了
する前に当該ストア命令を実行開始するとともに、当該
ストア命令のソースレジスタと先行する命令のデスティ
ネーションレジスタとが一致するか否かを調べ1両レジ
スタが一致するときは、先行する命令の演算結果が確定
するまで、ストア命令のメモリ書き込み指示を遅延させ
るようにしたものである。
[Means for Solving the Problems] In order to achieve the above object, a store processing method of a data processing device according to the present invention provides a data processing device that adopts an arithmetic pipeline control method, in which a store instruction is executed in advance. When an instruction exists, the execution of the store instruction is started before the processing of this instruction is completed, and the source register of the store instruction and the destination register of the preceding instruction are checked to see if they match or not. When they match, the memory write instruction of the store instruction is delayed until the operation result of the preceding instruction is determined.

本発明は、複数の命令を並列に処理可能なデータ処理装
置にも適用でき、この場合には、演算命令とストア命令
とを同時に並列に実行開始するとともに、ストア命令の
ソースレジスタと演算命令のデスティネーションレジス
タとが一致するか否かを調べ、両レジスタが一致すると
きは、先行する命令の演算結果が確定するまで、ストア
命令のメモリ書き込み指示を遅延させる。
The present invention can also be applied to a data processing device that can process multiple instructions in parallel. In this case, the execution of an arithmetic instruction and a store instruction is started in parallel, and the It is checked whether the destination register and the destination register match, and if both registers match, the memory write instruction of the store instruction is delayed until the operation result of the preceding instruction is determined.

本発明によるデータ処理装置のストア処理方式は、他の
見地によれば、演算パイプライン制御方式を採用したデ
ータ処理装置において、演算命令に続いてストア命令を
実行するとき、ストア命令がストアデータとして演算命
令の演算結果を利用する場合、演算命令の演算結果が確
定する前に当該ストア命令を実行開始するとともに、本
来のメモリ書き込み指示の発生時に演算結果が確定しな
い場合には、その演算結果をストアデータとして利用で
きる時点までストア命令のメモリ書き込みタイミングを
遅延させるようにしたものである。
According to another aspect of the store processing method of a data processing device according to the present invention, when a store instruction is executed following an arithmetic instruction in a data processing device that employs an arithmetic pipeline control method, the store instruction is stored as store data. When using the operation result of an operation instruction, start execution of the store instruction before the operation result of the operation instruction is determined, and if the operation result is not determined when the original memory write instruction occurs, the operation result is The memory write timing of the store command is delayed until the time when the data can be used as store data.

本発明によるデータ処理装置は、演算パイプライン制御
方式を採用したデータ処理装置において、ストア命令に
伴らてメモリ書き込み指示信号を発生するメモリ制御手
段と、このメモリ制御手段からのメモリ書き込み指示信
号を遅延させる遅延手段と、この遅延手段の遅延前後の
メモリ書き込み指示信号のいずれかを選択する選択手段
と、演算命令の演算結果をストアデータとして用いるス
トア命令の実行時に1本来の上記メモリ書き込み指示信
号の発生時点で演算結果が確定しない場合を検出し、こ
の検出結果に応じて上記選択手段を制御する選択制御手
段とを備えたものである。
A data processing device according to the present invention employs an arithmetic pipeline control method, and includes a memory control unit that generates a memory write instruction signal in response to a store instruction, and a memory control unit that generates a memory write instruction signal from the memory control unit. a delay means for delaying, a selection means for selecting one of the memory write instruction signals before and after the delay of the delay means, and a memory write instruction signal that is original when executing a store instruction that uses the operation result of the operation instruction as store data. and a selection control means for detecting a case where the calculation result is not determined at the time of occurrence and controlling the selection means in accordance with the detection result.

本発明によるデータ処理装置は、他の見地によれば、演
算パイプライン制御方式を採用したデータ処理装置にお
いて、ストア命令に伴ってメモリ書き込み指示信号を発
生するメモリ制御手段と、演算命令の演算結果をストア
データとして用いるストア命令の実行時に1本来の上記
メモリ書き込み指示信号の発生時点で上記演算結果が確
定しない場合を検出する検出手段と、この検出手段の検
出結果に応じて、メモリ書き込み指示信号を、演算命令
ごとに予め定められた時間だけ遅延させる遅延手段とを
備えたものである。
According to another aspect, the data processing device according to the present invention employs an arithmetic pipeline control method, and includes a memory control means that generates a memory write instruction signal in response to a store instruction, and a calculation result of the arithmetic instruction. a detection means for detecting a case where the arithmetic result is not determined at the time of generation of the original memory write instruction signal when executing a store instruction using the memory write instruction signal as store data; and a delay means for delaying by a predetermined time for each calculation instruction.

本発明によるデータ処理装置は、さらに他の見地によれ
ば、演算パイプライン制御方式を採用したデータ処理装
置において、ストア命令の特定のサイクルでメモリ書き
込み指示信号を発生するメモリ制御手段と、ストア命令
より前にまたは同時に実行開始された演算命令が存在す
るとき、演算命令のデスティネーションレジスタとスト
ア命令のソースレジスタが一致するか否かを検出する検
出手段と、この検出手段により一致が検出されたとき、
書き込み指示信号を、演算命令の演算結果確定後のサイ
クルまで遅延させる遅延手段とを備えたものである。
According to still another aspect, a data processing device according to the present invention employs an arithmetic pipeline control method, and includes a memory control unit that generates a memory write instruction signal in a specific cycle of a store instruction; detecting means for detecting whether or not a destination register of the arithmetic instruction and a source register of the store instruction match when there is an arithmetic instruction that started execution earlier or at the same time; When,
The write instruction signal is provided with a delay means for delaying the write instruction signal until a cycle after the calculation result of the calculation instruction is determined.

[作 用] 本発明の前記各手段によれば、先行する演算命令の結果
を後続のストア命令で用いる場合において、ストアデー
タとなる演算結果が確定するまでメモリ書き込み指示の
みを遅らせることにより、ストア命令の実行開始を遅ら
せる必要がないので、パイプライン処理の性能を向上さ
せることができる。このような書き込み指示を遅延させ
るストア動作を以下「デイファートスドア処理」と呼ぶ
[Operation] According to each of the above means of the present invention, when the result of a preceding operation instruction is used in a subsequent store instruction, only the memory write instruction is delayed until the operation result that becomes the store data is determined, so that the store can be executed. Since there is no need to delay the start of instruction execution, the performance of pipeline processing can be improved. A store operation that delays such a write instruction is hereinafter referred to as "default door processing."

このデイファートスドア処理は、特に、複数の命令を並
列に処理するデータ処理装置において、有効であり、演
算命令とストア命令とを並列に処理する場合に、メモリ
書き込み指示のみを、演算結果が確定するまで遅らせる
ことにより、演算命令とストア命令とを並列に処理する
ことが可能になる。
This day-first door processing is particularly effective in data processing devices that process multiple instructions in parallel.When processing arithmetic instructions and store instructions in parallel, only memory write instructions are By delaying the instruction until it is finalized, it becomes possible to process the arithmetic instruction and the store instruction in parallel.

[実施例] 以下、メモリ書き込み指示としてのメモリリクエスト信
号を1サイクル遅延させることができる本発明の一実施
例を第1図により説明する。
[Embodiment] An embodiment of the present invention in which a memory request signal as a memory write instruction can be delayed by one cycle will be described below with reference to FIG.

第1図は本発明による演算ユニットの一実施例のブロッ
ク図である。同図において、第2図と同一の構成要素に
は同一の参照番号を付しである。
FIG. 1 is a block diagram of one embodiment of an arithmetic unit according to the present invention. In this figure, the same components as in FIG. 2 are given the same reference numerals.

本実施例では、第2図のセレクタ24およびレジスタ2
5を削除し、また、セレクタ#御回路32を簡略化した
セレクタ制御回路35に置き換えている。セレクタ制御
回路35は、先行演算命令のデスティネーションレジス
タと後続のストア命令のソースレジスタとが一致し、か
つ、先行演算命令の演算結果が後続のストア命令に間に
あわない場合を認識して、対応するセレクタ制御信号を
発生する。一方、メモリ書き込み指示を1サイクル遅延
させることを目的とした1ビツトのメモリリクエストレ
ジスタ33およびこのレジスタ33の入力または出力の
いずれかを選択するセレクタ34を追加している。
In this embodiment, the selector 24 and register 2 in FIG.
5 is deleted, and the selector # control circuit 32 is replaced with a simplified selector control circuit 35. The selector control circuit 35 recognizes the case where the destination register of the preceding operation instruction and the source register of the subsequent store instruction match, and the operation result of the preceding operation instruction is not in time for the subsequent store instruction, and takes appropriate action. Generates selector control signals. On the other hand, a 1-bit memory request register 33 for the purpose of delaying a memory write instruction by one cycle and a selector 34 for selecting either the input or output of this register 33 are added.

以下、第1図の演算ユニットの動作を説明する。The operation of the arithmetic unit shown in FIG. 1 will be explained below.

まず、先行する演算命令の演算結果が遅れることなく確
定し、後続のストア命令が待たされることなく実行され
る場合であって、先行命令のデスティネーション・レジ
スタとストア命令のソース・レジスタが一致する場合を
考える。この場合、先行命令の演算結果はレジスタ21
に求まっているので、これを線104′を介してセレク
タ12に転送し、このストアデータをレジスタ23に移
し。
First, the operation result of the preceding operation instruction is determined without delay, the subsequent store instruction is executed without waiting, and the destination register of the preceding instruction and the source register of the store instruction match. Consider the case. In this case, the operation result of the preceding instruction is stored in the register 21.
Since it has been determined, this is transferred to the selector 12 via the line 104', and this store data is transferred to the register 23.

メモリ・リクエスト制御回路31がメモリリクエストを
出すことにより、信号線105経由でストアデータを記
憶ユニットに書き込む、その際、メモリ・リクエスト制
御回路31から出されるメモリリクエストはセレクタ3
4を介して、信号線110経由で記憶ユニットへ送出さ
れる。
When the memory request control circuit 31 issues a memory request, store data is written to the storage unit via the signal line 105. At this time, the memory request issued from the memory request control circuit 31 is sent to the selector 3.
4 and sent to the storage unit via signal line 110.

次に、先行する演算命令の演算結果が後続のストア命令
に間に合わなかった場合を考える。この場合には、後続
ストア命令を実行開始するが、セレクタ34でレジスタ
33の出力信号線109をセレクトしているので、メモ
リリクエストは直ちに記憶ユニットに送出されず、信号
線108′経由でメモリリクエストレジスタ33により
1サイクル遅延され、演算結果がセレクタ26を介して
ストアデータレジスタ23に求まったタイミングで、メ
モリリクエストが記憶ユニットに送出される。
Next, consider a case where the operation result of the preceding operation instruction does not arrive in time for the subsequent store instruction. In this case, execution of the subsequent store instruction is started, but since the output signal line 109 of the register 33 is selected by the selector 34, the memory request is not immediately sent to the storage unit, but the memory request is sent via the signal line 108'. The memory request is delayed by one cycle by the register 33 and sent to the storage unit at the timing when the operation result is obtained in the store data register 23 via the selector 26.

このように、本実施例によれば、第2図の従来装置に比
べ、より少ないハードウェアおよび簡単な制御により、
従来と同じく、演算パイプライン制御方式において、先
行演算命令の演算結果確定を待たずに後続ストア命令を
開始することができる。
In this way, according to the present embodiment, compared to the conventional device shown in FIG. 2, with less hardware and simpler control,
As in the prior art, in the arithmetic pipeline control method, a subsequent store instruction can be started without waiting for the arithmetic result of the preceding arithmetic instruction to be determined.

次に、複数の命令を並列に処理する場合の動作例を説明
する。
Next, an example of operation when a plurality of instructions are processed in parallel will be described.

第4図(a)に、先行する加算命令AEと後続のストア
命令STEを並列処理す多場合であって。
FIG. 4(a) shows a case in which a preceding add instruction AE and a subsequent store instruction STE are processed in parallel.

AE全命令デスティネーションレジスタ番号とSTET
E10−スレジスタ番号が一致していてデイファートス
ドア処理を実行した場合のタイムチャートを示す0図に
おいて、各サイクルの上段は先行命令、下段は後続命令
であることを示す。
AE all instruction destination register number and STET
In Figure 0, which shows a time chart when the default door processing is executed when the E10-S register numbers match, the upper row of each cycle indicates the preceding instruction, and the lower row indicates the subsequent instruction.

またAE全命令演算結果はNステージで求まり、メモリ
リクエスト制御回路31からのSTETE10モリリク
エストはストアデータがストアデータレジスタ23(第
1図)にセットされたNステージで送出されるものとす
る。
It is also assumed that the AE all-instruction operation results are obtained in the N stage, and the STETE10 memory request from the memory request control circuit 31 is sent out in the N stage when the store data is set in the store data register 23 (FIG. 1).

ΔE命令とSTETE10列に処理すると、AE全命令
演算結果は、2サイクル目で求まり。
When the ΔE instruction and STETE are processed in 10 columns, the operation results of all AE instructions are obtained in the second cycle.

3サイクル目でストアデータレジスタ23(第1図)に
セットされ、STETE10モリリクエストは2サイク
ル目に送出しようとするが、前述のデイファートスドア
処理によって3サイクル目に遅らせて同時にストアデー
タレジスタのデータとともにメモリに送出する。
It is set in the store data register 23 (Fig. 1) in the third cycle, and the STETE10 memory request is sent in the second cycle, but it is delayed to the third cycle by the deferential door processing mentioned above, and the store data register is set at the same time. Send it to memory along with the data.

ここで、並列処理するAE/STE命令実行はEステー
ジで完了しているので、AE/STE命令に続く命令を
2サイクル目で実行することができ、処理性能を向上さ
せることができる。
Here, since the execution of the AE/STE instruction to be processed in parallel is completed in the E stage, the instruction following the AE/STE instruction can be executed in the second cycle, and processing performance can be improved.

これに対し、第4図(b)に示すように、従来のように
デイファートスドア処理を行わない場合には、並列処理
実行可能なデータ処理装置であっても、STETE10
メモリリクエストをAE全命令演算結果確定まで待機し
なければならない、したがって、AE/STE命令に続
く命令は第4図(8)に比べ1サイクル遅い3サイクル
目からでなければ開始することができず、並列処理機能
を有効に利用することができない。
On the other hand, as shown in FIG. 4(b), if the default door processing is not performed as in the past, even if the data processing device is capable of parallel processing, the STETE10
The memory request must wait until the operation results of all AE instructions are finalized. Therefore, the instruction following the AE/STE instruction cannot be started until the third cycle, which is one cycle later than in Figure 4 (8). , the parallel processing function cannot be used effectively.

上記実施例では、メモリリクエストを1サイクル遅延さ
せる場合の構成を示したが、演算命令の種類によって、
演算結果の確定がさらに遅れる場合に対処できる他の実
施例を第5図に示す、同図において、第1図と同様の構
成要素には同様の参照番号を付しである。
In the above embodiment, the configuration is shown in which the memory request is delayed by one cycle, but depending on the type of operation instruction,
Another embodiment that can deal with the case where the determination of the calculation result is further delayed is shown in FIG. 5, in which the same components as in FIG. 1 are given the same reference numerals.

第5図の実施例において、第1図と異なる点は、レジス
タ33が1ビットレジスタ33−1〜33−3の3段に
より構成され、x次1サイクルずつ出力が遅延していく
ようになっている点と、セレクタ34がセレクタ制御回
路31の出力に従って各段の出力108−1−108−
3およびメモリリクエスト制御回路31の出力108の
うちの1出力を選択する点にある。セレクタ制御回路3
1は、先行演算命令のデスティネーションレジスタと後
続ストア命令のソースレジスタの一致検出を行うのみな
らず、先行演算命令のタイプごとに、演算結果の確定サ
イクルを認識して、セレクタ34の選択制御信号を発生
する。セレクタ26の制御は、演算結果の確定に伴い、
演算結果をレジスタ23に格納して、これをストアデー
タとするよう実行する。本実施例によれば、演算命令の
タイプによってメモリ書き込み指示を最大3サイクルま
で遅延させることができる。これ以上の遅延を必要とす
る場合には。
The difference in the embodiment shown in FIG. 5 from that shown in FIG. 1 is that the register 33 is composed of three stages of 1-bit registers 33-1 to 33-3, and the output is delayed by one cycle of the xth order. and the selector 34 outputs the outputs 108-1-108- of each stage according to the output of the selector control circuit 31.
3 and the output 108 of the memory request control circuit 31. Selector control circuit 3
1 not only detects a match between the destination register of the preceding operation instruction and the source register of the subsequent store instruction, but also recognizes the definite cycle of the operation result for each type of preceding operation instruction and outputs the selection control signal of the selector 34. occurs. The control of the selector 26 is performed according to the determination of the calculation result.
The calculation result is stored in the register 23 and executed so as to be used as store data. According to this embodiment, the memory write instruction can be delayed up to three cycles depending on the type of arithmetic instruction. If further delay is required.

レジスタ33の段数を増加させればよい。The number of stages of the register 33 may be increased.

以上の各実施例では5本発明を浮動小数点演算命令に適
用した場合について説明したが1本発明はこれに限定さ
れるものではない。
In each of the above embodiments, a case has been described in which the present invention is applied to floating point arithmetic instructions, but the present invention is not limited to this.

[発明の効果] 本発明によれば、先行演算の結果を後続ストアで用いる
場合に、′デイファートスドア″を用いることにより、
従来に比べより少ないハードウェアと、より簡単な制御
で、演算パイプライン制御において先行する命令の終了
を待たずにストア命令の処理を開始することが可能であ
り、特に、複数の命令を並列で処理するデータ処理装置
において有効である。
[Effects of the Invention] According to the present invention, when the result of a preceding operation is used in a subsequent store, by using a 'default door',
With less hardware and simpler control than before, it is possible to start processing a store instruction without waiting for the completion of the preceding instruction in arithmetic pipeline control, especially when multiple instructions are executed in parallel. This is effective in the data processing device that processes the data.

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

第1図は本発明の演算ユニットの一実施例を示すブロッ
ク図、第2図は従来の演算ユニットの構成例を示すブロ
ック図、第3図はデータ処理装置の全体構成図、第4図
は本発明の演算パイプラインを説明するタイミング図、
第5図は本発明の他の実施例のブロック図である。 11.12,24,26.34・・・セレクタ、13゜
14.16,17,19,21.23・・・レジスタ。 15,20・・・シフタ、18・・・並列加算器、22
・・・レジスタ群、33・・・1ビツトレジスタ、34
・・・セレクタ、35・・・セレクタ制御回路。
FIG. 1 is a block diagram showing an embodiment of the arithmetic unit of the present invention, FIG. 2 is a block diagram showing an example of the configuration of a conventional arithmetic unit, FIG. 3 is an overall configuration diagram of a data processing device, and FIG. 4 is a block diagram showing an example of the configuration of a conventional arithmetic unit. A timing diagram illustrating the arithmetic pipeline of the present invention,
FIG. 5 is a block diagram of another embodiment of the invention. 11.12,24,26.34...Selector, 13°14.16,17,19,21.23...Register. 15, 20... Shifter, 18... Parallel adder, 22
...Register group, 33...1 bit register, 34
... Selector, 35... Selector control circuit.

Claims (1)

【特許請求の範囲】 1、演算パイプライン制御方式を採用したデータ処理装
置において、ストア命令の実行時に、先行する命令が存
在するとき、該命令の処理が完了する前に当該ストア命
令を実行開始するとともに、当該ストア命令のソースレ
ジスタと先行する演算命令のデスティネーシヨンレジス
タとが一致するか否かを調べ、両レジスタが一致すると
きは、先行する命令の演算結果が確定するまで、上記ス
トア命令のメモリ書き込み指示を遅延させることを特徴
とするデータ処理装置のストア処理方式。 2、複数の命令を並列に処理可能なデータ処理装置にお
いて、演算命令とストア命令とを同時に並列に実行開始
するとともに、上記ストア命令のソースレジスタと上記
演算命令のデスティネーシヨンレジスタとが一致するか
否かを調べ、両レジスタが一致するときは、先行する命
令の演算結果が確定するまで、上記ストア命令のメモリ
書き込み指示を遅延させることを特徴とするデータ処理
装置のストア方式。 3、演算パイプライン制御方式を採用したデータ処理装
置において、演算命令に続いてストア命令を実行すると
き、該ストア命令がストアデータとして上記演算命令の
演算結果を利用する場合、上記演算命令の演算結果が確
定する前に当該ストア命令を実行開始するとともに、本
来のメモリ書き込み指示の発生時に演算結果が確定しな
い場合には、当該演算結果をストアデータとして利用で
きる時点まで上記ストア命令のメモリ書き込みタイミン
グを遅延させることを特徴とするデータ処理装置のスト
ア処理方式。 4、演算パイプライン制御方式を採用したデータ処理装
置において、 ストア命令に伴ってメモリ書き込み指示信号を発生する
メモリ制御手段と、 該メモリ制御手段からのメモリ書き込み指示信号を遅延
させる遅延手段と、 該遅延手段の遅延前後のメモリ書き込み指示信号のいず
れかを選択する選択手段と、 演算命令の演算結果をストアデータとして用いるストア
命令の実行時に、本来の上記メモリ書き込み指示信号の
発生時点で上記演算結果が確定しない場合を検出し、該
検出結果に応じて上記選択手段を制御する選択制御手段
と を備えたことを特徴とするデータ処理装置。 5、演算パイプライン制御方式を採用したデータ処理装
置において、 ストア命令に伴ってメモリ書き込み指示信号を発生する
メモリ制御手段と、 演算命令の演算結果をストアデータとして用いるストア
命令の実行時に、本来の上記メモリ書き込み指示信号の
発生時点で上記演算結果が確定しない場合を検出する検
出手段と、 該検出手段の検出結果に応じて、上記メモリ書き込み指
示信号を、上記演算命令ごとに予め定められた時間だけ
遅延させる遅延手段と を備えたことを特徴とするデータ処理装置。 6、演算パイプライン制御方式を採用したデータ処理装
置において、 ストア命令の特定のサイクルでメモリ書き込み指示信号
を発生するメモリ制御手段と、 上記ストア命令より前にまたは同時に実行開始された演
算命令が存在するとき、演算命令のデスティネーシヨン
レジスタとストア命令のソースレジスタが一致するか否
かを検出する検出手段と、 該検出手段により一致が検出されたとき、上記書き込み
指示信号を、上記演算命令の演算結果確定後のサイクル
まで遅延させる遅延手段とを備えたことを特徴とするデ
ータ処理装置。
[Claims] 1. In a data processing device that employs an arithmetic pipeline control method, when a store instruction is executed and a preceding instruction exists, the execution of the store instruction is started before the processing of the instruction is completed. At the same time, it is checked whether the source register of the store instruction and the destination register of the preceding operation instruction match, and if both registers match, the above store is executed until the operation result of the preceding instruction is determined. A store processing method for a data processing device characterized by delaying a memory write instruction of an instruction. 2. In a data processing device capable of processing multiple instructions in parallel, execution of an arithmetic instruction and a store instruction is started in parallel at the same time, and the source register of the store instruction and the destination register of the arithmetic instruction match. A store method for a data processing device, characterized in that it is checked whether the registers match, and when the registers match, the memory write instruction of the store instruction is delayed until the operation result of the preceding instruction is determined. 3. In a data processing device that employs an arithmetic pipeline control method, when a store instruction is executed following an arithmetic instruction, if the store instruction uses the arithmetic result of the arithmetic instruction as store data, the arithmetic operation of the arithmetic instruction In addition to starting execution of the store instruction before the result is determined, if the operation result is not determined when the original memory write instruction occurs, the memory write timing of the store instruction is changed until the point where the operation result can be used as store data. A store processing method for a data processing device characterized by delaying the . 4. A data processing device employing an arithmetic pipeline control method, comprising: memory control means for generating a memory write instruction signal in response to a store instruction; delay means for delaying the memory write instruction signal from the memory control means; a selection means for selecting either the memory write instruction signal before or after the delay of the delay means; and a selection means for selecting either the memory write instruction signal before or after the delay of the delay means; 1. A data processing device comprising: selection control means for detecting a case in which the selection means is not determined, and controlling the selection means according to the detection result. 5. In a data processing device that employs an arithmetic pipeline control method, a memory control means that generates a memory write instruction signal in response to a store instruction, and a memory control means that generates a memory write instruction signal in response to a store instruction, and a a detection means for detecting a case where the operation result is not determined at the time when the memory write instruction signal is generated; 1. A data processing device comprising: delay means for delaying the data by the amount of time. 6. In a data processing device that employs an arithmetic pipeline control method, there is a memory control means that generates a memory write instruction signal in a specific cycle of a store instruction, and an arithmetic instruction that starts execution before or at the same time as the store instruction. a detection means for detecting whether or not a destination register of the arithmetic instruction and a source register of the store instruction match; 1. A data processing device comprising: delay means for delaying until a cycle after a calculation result is determined.
JP3900589A 1989-02-17 1989-02-17 Storing processing system for data processor Pending JPH02217924A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3900589A JPH02217924A (en) 1989-02-17 1989-02-17 Storing processing system for data processor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3900589A JPH02217924A (en) 1989-02-17 1989-02-17 Storing processing system for data processor

Publications (1)

Publication Number Publication Date
JPH02217924A true JPH02217924A (en) 1990-08-30

Family

ID=12541003

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3900589A Pending JPH02217924A (en) 1989-02-17 1989-02-17 Storing processing system for data processor

Country Status (1)

Country Link
JP (1) JPH02217924A (en)

Cited By (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

Cited By (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

Similar Documents

Publication Publication Date Title
EP0208870A1 (en) Vector data processor
US4677547A (en) Vector processor
JPH0348536B2 (en)
JPS62115542A (en) Information processor
JPH0512751B2 (en)
JPH02217924A (en) Storing processing system for data processor
JPS6259829B2 (en)
JPS5896345A (en) Hierarchical arithmetic system
JPS6315628B2 (en)
JP2812610B2 (en) Pipeline control method
JPS59183434A (en) Prefetch control system of instruction
JP2558831B2 (en) Pipeline control method
JPH0248733A (en) Information processor
JPH09146769A (en) Pipeline processor
JPS5896346A (en) Hierarchical arithmetic system
JPH08272608A (en) Pipeline processor
JPS60105050A (en) Pipeline control system
JPH09101891A (en) Information processor and exception processing sequencer
JPH07319753A (en) Multiplex system for bus cycle
JPH04276827A (en) Pipe line processor
JPS63231627A (en) Advanced control system
JPH0342721A (en) Information processor
JPH09106344A (en) Pipeline processor
JPS6246353A (en) Memory read system
JPS61279937A (en) Information processor