JPH01305452A - Store control system for buffer memory device - Google Patents

Store control system for buffer memory device

Info

Publication number
JPH01305452A
JPH01305452A JP63136203A JP13620388A JPH01305452A JP H01305452 A JPH01305452 A JP H01305452A JP 63136203 A JP63136203 A JP 63136203A JP 13620388 A JP13620388 A JP 13620388A JP H01305452 A JPH01305452 A JP H01305452A
Authority
JP
Japan
Prior art keywords
store
data
address
storage device
buffer
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
JP63136203A
Other languages
Japanese (ja)
Inventor
Hirosada Tone
利根 廣貞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP63136203A priority Critical patent/JPH01305452A/en
Publication of JPH01305452A publication Critical patent/JPH01305452A/en
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

PURPOSE:To prevent a successive instruction from being delayed due to the write operation of a pipeline by performing a write operation on a buffer memory device by utilizing the free time of a data part in the buffer memory device. CONSTITUTION:Data read out from a tag part 2 is compared with the low-order address of an effective address register 1 at a comparison part 13 in a store operation, and when they coincide, those are stored in an address buffer circuit 4, and store data is stored in a data buffer circuit 5. Read sequence precedes at the time of applying Popfch based on a fetch instruction, and a block address is inputted to the tag part 2 and the data part 3, and write sequence is supplied from the address buffer circuit 4 to the data part, and the store data to a data register 15 delaying by one cycle. In such a way, it is possible to prevent the following instruction from being delayed due to the write operation of the pipeline.

Description

【発明の詳細な説明】 [概要] タグ部とデータ部とを含むバッファ記憶装置を備えたデ
ータ処理装置におけるバッファ記憶装置のストア制御方
式に関し、 バッファ記憶装置に対する読み取り動作と書き込み動作
とが重なった場合にも読み取りの遅れが発生しないバッ
ファ記憶装置のストア制御方式を提供することを目的と
し、 バッファ記憶装置のアドレス情報を保持するタグ部とデ
ータを保持するデータ部のアクセス機構を独立にし、か
つバッファ記憶装置ならびに主記憶装置へのストアアク
セスのためのストアアドレス、ストアデータを一時的に
保持するストアバッファ機構を持つデータ処理装置にお
いて、該バッファ記憶装置からデータをフェッチする場
合にはタグ部とデータ部を同時に使用するリードシーケ
ンスにより処理を行い、該バッファ記憶装置にデータを
ストアする場合には、ストアすべきアドレスブロックが
あるか否かタグ部だけを使用して調べるチェックシーケ
ンスと、実際の書き込みをデータ部に対し行うライトシ
ーケンスにより処理を行い、チェックシーケンスにおい
ては、同時にストアアドレス、ストアデータをストアバ
ッファ機構へ格納され、ストアのライトシーケンスは、
該バッファ記憶装置へのアクセス優先権をリードシーケ
ンスより低く設定し、後続するリードシーケンスを先に
処理した後に、上記ストアバッファ機構からストアデー
タおよびストアアドレスを復元して上記ライトシーケン
スを処理するよう構成する。
[Detailed Description of the Invention] [Summary] Regarding a store control method for a buffer storage device in a data processing device equipped with a buffer storage device including a tag section and a data section, read operations and write operations to the buffer storage device overlap. The purpose of this method is to provide a store control method for a buffer storage device that does not cause a read delay even in the case of a buffer storage device. In a data processing device that has a buffer storage device, a store address for store access to the main storage device, and a store buffer mechanism that temporarily holds store data, when fetching data from the buffer storage device, a tag section and a store address for store access to the main storage device are used. When processing is performed using a read sequence that uses the data section at the same time and data is stored in the buffer storage device, there is a check sequence that uses only the tag section to check whether there is an address block to be stored, and an actual Processing is performed using a write sequence that writes to the data section, and in the check sequence, the store address and store data are simultaneously stored in the store buffer mechanism, and the store write sequence is as follows:
The access priority to the buffer storage device is set lower than that of the read sequence, and after the subsequent read sequence is processed first, the store data and store address are restored from the store buffer mechanism and the write sequence is processed. do.

[産業上の利用分野] 本発明はタグ部とデータ部とを含むバッフ1記jlJ装
置を備えたデータ処理装置におけるバッファ記憶装置の
ストア制御方式に関する。
[Industrial Field of Application] The present invention relates to a store control method for a buffer storage device in a data processing device equipped with a buffer device including a tag section and a data section.

近年、主記憶アクセス時間を高速化するためにバッファ
記憶装置と主記憶装置の2階層メモリ方式をとるものが
多い。そして、バッファ記憶装置は通常、タグ部(TA
G:ディレクトリ部ともいう)とデータ部(DATA)
とからなり、タグ部にはデータ部にデータが格納されて
いると、その対応するタグ位置にそのデータのアドレス
の一部(ブロックアドレス)を保持するものであり、そ
In recent years, in order to speed up main memory access time, many devices have adopted a two-layer memory system consisting of a buffer storage device and a main storage device. The buffer storage device is typically a tag section (TA
G: Directory section) and data section (DATA)
When data is stored in the data part of the tag part, a part of the address (block address) of that data is held in the corresponding tag position.

れぞれ複数個のウェイで構成されている。Each is composed of multiple ways.

また、各タグ部およびデータ部はストアまには転送の単
位である複数のブロックからなっており、タグ部にはそ
れぞれのブロックに対応して該ブロックの有効性(主記
憶装置よりデータが転送されていて、読み出しおよび書
き込み動作ができることを意味する)を示すバリッドビ
ットを持っている。
In addition, each tag section and data section consists of multiple blocks that are units of storage or transfer, and the tag section indicates the validity of the block (data transferred from the main memory) corresponding to each block. It has a valid bit indicating that it has been read and written (meaning it is read and written).

主記憶装置とバッファ記憶装置との2階層で構成される
メモリシステムを有するデータ処理ではメモリアクセス
を行う時、先ずバッファ記憶装置に8亥当するアドレス
のデータが有るかどう力1を、上記タグ部でウェイ単位
で検索しくアドレスの−ff、I(をみる)、どのウェ
イからも8亥当アドレスの一致が得られない時は、該バ
ッファ記憶装置には求めるデータが存在しないことにな
るので、主記憶装置から当該アドレスのデータを読み取
り、上記バッファ記ta装置に転送し、以後そのアドレ
スのデータはバッファ記憶装置に対してメモリアクセス
を行うよう制御されるのが一般的である。
In data processing that has a memory system consisting of two layers, a main memory device and a buffer memory device, when accessing the memory, first check if there is data at the address corresponding to 8 in the buffer memory device, and check if the above-mentioned tag When searching for each way in the section, look at the address -ff and I, and if no match is found for the address from any way, it means that the desired data does not exist in the buffer storage device. Generally, the data at the address is read from the main memory and transferred to the buffer storage device, and thereafter the data at that address is controlled so as to perform memory access to the buffer storage device.

さらに、ストアスル一方式のバッファストア制御方式で
は、主記憶WWへのストアアクセスを行う時、該ストア
アクセスのアドレスブロックが前記バッファ記tα装置
に有る場合、該バッファ記憶装置に対しても同時にスト
アアクセスを行い、無い場合には該バッファ記憶装置に
対するストアアクセスを行わないで、主記憶装置に対し
てのみストアアクセスを行うよう制御される。
Furthermore, in the store-through type buffer store control method, when performing a store access to the main memory WW, if the address block for the store access exists in the buffer storage tα device, the store access is also made to the buffer storage device at the same time. If the buffer storage device does not exist, store access is not performed to the buffer storage device, and store access is performed only to the main storage device.

このようなバッファ記憶装置に対して、パイプライン処
理を行うデータ処理装置がストアアクセスを行うと、後
続命令によるフェッチ動作やストアアクセスをする前の
チエツク動作と上記ストア動作とが重なり結果的には後
続命令のフェッチ動作やストアアクセスをする前のチエ
ツク動作が待たされ、ロスサイクルの発生となり、シス
テム全体の処理能力を低下させることになるので、効果
的な制御方式の提供が望まれていた。
When a data processing device that performs pipeline processing performs a store access to such a buffer storage device, the fetch operation by a subsequent instruction or the check operation before the store access overlaps with the above store operation, resulting in Since fetch operations for subsequent instructions and check operations before store accesses are forced to wait, resulting in loss cycles and reducing the processing capacity of the entire system, it has been desired to provide an effective control method.

[従来の技術] 従来例の構成図を第4図に示し、従来例のストア動作の
タイムチャート図を第5図に示す。
[Prior Art] A configuration diagram of a conventional example is shown in FIG. 4, and a time chart of a store operation in the conventional example is shown in FIG.

第4図はバッファ記憶装置に対するストアオペレーショ
ンに関連する部分をブロック図で示すものでフェッチ(
読み出し)に特有の構成は省略されている。
Figure 4 is a block diagram showing the parts related to the store operation for the buffer storage device.
Configurations specific to reading) are omitted.

第4図の40はB2レジスタ、41はオペランドアドレ
スポート(OP A Pで表示)、42は有効アドレス
レジスタ(EARで表示:エフエクティブアドレスレジ
スタ)、43はタグ部、44は複数の比較器(Cで表示
)、45はエンコーダ、46はウェイ番号レジスタ(W
NRで表示)、47はデータ部、48はストアデータレ
ジスタ、49はストアアドレスレジスタ群(STARで
表示)、50はストアバッファデータ群(STBDで表
示)、51.52は選択回路を表す。
In FIG. 4, 40 is a B2 register, 41 is an operand address port (indicated by OP A P), 42 is an effective address register (indicated by EAR: effective address register), 43 is a tag section, and 44 is a plurality of comparators ( 45 is an encoder, 46 is a way number register (W
47 is a data section, 48 is a store data register, 49 is a store address register group (indicated by STAR), 50 is a store buffer data group (indicated by STBD), and 51.52 is a selection circuit.

バッファ記憶装置は第4図の番号43(タグ部)乃至4
7 (データ部)の各部と関連する回路により構成され
る。このバッファ記憶装置を備えるデータ処理装置から
のバッファ記憶装置へのストアオペレーションは、先ず
、スト了すべきアドレスがバッファ記憶装置上に有るか
否かを調べ、有った場合に実際の書き込みを行う手順を
採る。
The buffer storage devices are numbered 43 (tag part) to 4 in Figure 4.
7 (data section) and related circuits. In a store operation from a data processing device equipped with this buffer storage device to the buffer storage device, first, it is checked whether the address to be terminated exists on the buffer storage device, and if there is, the actual write is performed. Take steps.

有効アドレスレジスタ(EAR)42はデータ処理装置
内の命令ユニット(図示せず)からの命令フェッチ、オ
ペランドフェッチ、オペランドストアのアドレスを受は
取る。ストアオペレーションでは、まずストアアドレス
でバッファ記憶装置の読み出しを行い、ストアアドレス
がバッファ記憶装置上に有るか否かを調べることが実行
される。
An effective address register (EAR) 42 receives instruction fetch, operand fetch, and operand store addresses from an instruction unit (not shown) within the data processing device. In a store operation, first, a store address is read from the buffer storage device, and a check is performed to see if the store address is present on the buffer storage device.

この時、ストアアドレスは第4図の有効アドレスレジス
タ42にセットされ、その中のバッファ記憶装置のブロ
ックアドレスに相当するビット20〜25でバッファ記
憶装置のタグ部43の内容を読み出す。タグ部43には
、その内容が存効か否かを示す有効ビット(■ビット:
バリッド)と該ブロックデータの上位アドレスビット1
〜19が登録されている。
At this time, the store address is set in the valid address register 42 of FIG. 4, and the contents of the tag section 43 of the buffer storage device are read out using bits 20 to 25 corresponding to the block address of the buffer storage device. The tag part 43 includes a valid bit (■ bit:
valid) and upper address bit 1 of the block data
~19 are registered.

その有効ビット(Vビット)がオンであれば、上位アド
レスビット1〜19と有効アドレスレジスタ42のビッ
トl〜19を比較器44で比較す。
If the valid bit (V bit) is on, the comparator 44 compares the upper address bits 1-19 with the bits 1-19 of the valid address register 42.

ることにより、ストアアドレスのデータがバッファ記憶
装置内に有るか否かが判る。比較器44で一致したもの
が有れば、そのウェイ番号をエンコーダ45でエンコー
ドし、ウェイ番号レジスタ46に蓄積しておき、実際の
書き込み動作時に書き込むウェイ番号を指定する際に用
いられる。
By doing so, it can be determined whether the data at the store address exists in the buffer storage device. If there is a match in the comparator 44, that way number is encoded by the encoder 45, stored in the way number register 46, and used when specifying the way number to be written during an actual write operation.

第4図の構成を参照しながら第5図で示したストアオペ
レーションのタイムチャートについて説明する。
The store operation time chart shown in FIG. 5 will be explained with reference to the configuration shown in FIG. 4.

先ず、有効アドレスレジスフ42にストアアドレスをセ
ントするためのプライオリティ (パイプラインを使用
する優先順位を示す) Pop fch  が立てられ
る。この後、B1 (バッファ1)、B2(バッファ2
)の2サイクルでバッファ記憶装置のタグ部43が読み
出され、B2サイクルの終わりでウェイ番号レジスタ4
6がセットされる。を効アドレスレジスタ42のアドレ
スはB2サイクルでB2レジスタ40にセントされ、R
サイクルでオペランドアドレスポート41に保存される
First, a priority (indicating the priority order for using the pipeline) Pop fch for sending a store address to the effective address register 42 is set. After this, B1 (buffer 1), B2 (buffer 2)
), the tag section 43 of the buffer storage device is read out, and at the end of the B2 cycle, the way number register 4 is read out.
6 is set. The address of the effective address register 42 is sent to the B2 register 40 in the B2 cycle, and the address of the R
It is stored in the operand address port 41 in cycles.

ストアスル一方式のバッファストア制御方式では、主記
憶装置へのストアアクセスも行う必要があり、この従来
例の構成ではそのためにを効アドレスレジスタ42のア
ドレスはB2サイクルにB2レジスタ40ヘセツトされ
た後、その出力が第5図に示すように(第4図の■の経
路)ストアアドレスレジスタ群49にセットされる。そ
してストアデータはデータ部47へ書き込むためのスト
アデータレジスタ48と主記憶装置へ送出するためのス
トアバッファデータ群50にセットされる。
In the store-through type buffer store control method, it is necessary to also perform store access to the main memory, and the configuration of this conventional example is effective for this purpose.After the address of the address register 42 is set to the B2 register 40 in the B2 cycle, The output is set in the store address register group 49 as shown in FIG. 5 (route 2 in FIG. 4). The store data is then set in a store data register 48 for writing to the data section 47 and a store buffer data group 50 for sending to the main storage device.

バッファ記憶装置への書き込みを行う場合には、上記の
Rサイクル(オペランドアドレスポート41にオペラン
ドが保存され)と並行してにPopst(書き込みの優
先権)が立てられ、サイクルStにおいて書き込みアド
レスがオペランドアドレスポート41から有効アドレス
レジスタ42にセットされ、サイクル31と82におい
てウェイ番号レジスタ46で指定されたバッファ記憶装
置のデータ部47の該当ウェイにある当該ブロックにデ
ータが書き込まれる。
When writing to the buffer storage device, Popst (write priority) is set in parallel with the above R cycle (the operand is stored in the operand address port 41), and in cycle St, the write address is stored as the operand. It is set in the effective address register 42 from the address port 41, and in cycles 31 and 82, data is written to the block in the corresponding way of the data section 47 of the buffer storage device specified by the way number register 46.

その際、演算部(図示せず)からのストアデータはスト
アデータレジスタ48にセントされバッファ記憶装置に
書き込まれると同時に、主記憶装置へのストアデータと
してストアバソファデータ群50にセットされる。
At this time, the store data from the arithmetic unit (not shown) is sent to the store data register 48 and written to the buffer storage device, and at the same time is set in the store buffer data group 50 as store data to the main storage device.

ストアアドレスレジスタ群49およびストアハフフチデ
ータ群50にパフファリングされたストアアドレス、ス
トアデータは主記憶装置のビジー状態を監視しながら選
択回路51.52を通って命令パイプラインとは非同期
に主記憶装置に送出される。
The store address and store data puffed into the store address register group 49 and the store half-edge data group 50 are sent to the main memory asynchronously with the instruction pipeline through selection circuits 51 and 52 while monitoring the busy state of the main memory. will be sent to.

第4図の構成において、命令フェッチやオペランドフェ
ッチ等のバッファ記tα装置からの読み出しのための回
路構成が図示されてないが、読み出しの際は、タグ部4
3とデータ部47にブロックアドレス(有効アドレスレ
ジスタのピント20〜25)により読み出しを行い、デ
ータ部47の各ウェイからの出力データが得られるが、
タグ部43の各ウェイからの出力を有効アドレスレジス
タ42からのピント1〜19と各ウェイ毎の比較器44
により比較して、一致が得られた比較器44からの出力
によりデータ部47の対応するウェイの出力を読み出し
データとして出力する。その場合のシーケンスは第5図
のPop fch、  B 1.  B 2゜Rの各サ
イクルにより行われる。
In the configuration of FIG. 4, although the circuit configuration for reading from the buffer storage tα device such as instruction fetch and operand fetch is not shown, when reading, the tag unit 4
3 and the data section 47 using the block address (pins 20 to 25 of the effective address register), output data from each way of the data section 47 can be obtained.
The output from each way of the tag unit 43 is connected to the pins 1 to 19 from the effective address register 42 and a comparator 44 for each way.
Based on the output from the comparator 44 where a match has been obtained, the output of the corresponding way of the data section 47 is output as read data. In that case, the sequence is Pop fch, B1. in Figure 5. This is done by each cycle of B 2°R.

[発明が解決しようとする課題] 上記したように、従来の構成によればストアオペレーシ
ョンが発生した場合、バッファ記憶装置に対する有効ア
ドレスレジスタ42は1つしかないため、ストア命令を
実行している時に問題がある。これを第6図に示す従来
例のパイプライン処理のタイムチャート図を用いて説明
する。
[Problems to be Solved by the Invention] As described above, according to the conventional configuration, when a store operation occurs, there is only one effective address register 42 for the buffer storage device. There's a problem. This will be explained using a time chart of conventional pipeline processing shown in FIG.

ストア命令は、第6図の■に示すようにPop千ch 
(オペランドフェッチの優先権)の後、Bl。
As shown in Figure 6, the store command
After (priority of operand fetch), Bl.

B2.R/Popst、Sl、S2の各サイクルが順に
実行される。この時データ処理装置がパイプライン制御
により■〜■のオペランドフェッチ命令を順に投入して
きた場合、■のプライオリティPop fch (オペ
ランドの読み出しの優先権)とPopst  (オペラ
ンドのストアの優先権)が重なる。
B2. Each cycle of R/Popst, Sl, and S2 is executed in sequence. At this time, if the data processing device sequentially inputs the operand fetch instructions ① to ② by pipeline control, the priorities Pop fch (priority for operand reading) and Popst (priority for storing operand) of ① overlap.

この場合は、■のストア動作が優先されるので、後続命
令である■のPop fchが待たされて、■サイクル
後に優先権を与えられる。 従来の方式によれば、この
ようなロスサイクルが発生するために、データ処理装置
の処理能力がダウンするという問題があった。
In this case, since the store operation of ■ is given priority, the subsequent instruction, Pop fch of ■, is made to wait and is given priority after the ■ cycle. According to the conventional method, there is a problem in that the processing capacity of the data processing device is reduced due to the occurrence of such a loss cycle.

本発明は、バッファ記憶装置に対する読み取り動作と書
き込み動作とが重なった場合にも読み取りの遅れが発生
しないバッファ記憶装置のストア制御方式を提供するこ
とを目的とする。
SUMMARY OF THE INVENTION An object of the present invention is to provide a store control method for a buffer storage device that does not cause a read delay even when a read operation and a write operation to the buffer storage device overlap.

[課題を解決するための手段コ 第1図fa+に本発明によるストアとフェッチのシーケ
ンスを示し、第1図(blに本発明によるバッファ記憶
装置の基本的構成図を示す。
[Means for Solving the Problems] Fig. 1 fa+ shows a store and fetch sequence according to the present invention, and Fig. 1 (bl) shows a basic configuration diagram of a buffer storage device according to the present invention.

本発明は、ストア動作は、第1図ta+のA、に示すよ
うにストアすべきアドレスブロックがバッファ記憶装置
に有るか否かをタグ部を使って調べるチエ7クシーケン
ス(Pop chk、  B 1 、  B 2゜R)
と、実際の書き込みをデータ部に行うライトシーケンス
(Pop st、 S 1 、  S 2) とにより
処理される。そして、フェッチ動作は、第1図(alの
B。
In the present invention, the store operation is performed using a check sequence (Pop chk, B1) to check whether the address block to be stored exists in the buffer storage device using the tag section, as shown in A of ta+ in FIG. , B 2゜R)
and a write sequence (Pop st, S 1 , S 2 ) for actually writing to the data section. The fetch operation is shown in B of FIG. 1 (al).

に示すように、タグ部とデータ部を同時に使用するリー
ドシーケンス(Pop fch、  B 1 、  B
 2゜R)により処理される。そして、ストア動作のラ
イトシーケンスのバッファ記’t! 装置へのアクセス
優先権は、リードシーケンスより低く設定する。
As shown in the following, the read sequence (Pop fch, B 1 , B
2°R). And the buffer description of the write sequence of the store operation! The access priority to the device is set lower than the read sequence.

第1図(blにおいて、lは有効アドレスレジスタ、2
はタグ部、3はデータ部、4はアドレスバッファ回路、
5はデータバッファ回路、6は第1の選択回路、7は第
2の選択回路、8は切替回路を表す。
Figure 1 (in bl, l is the effective address register, 2
is a tag section, 3 is a data section, 4 is an address buffer circuit,
5 represents a data buffer circuit, 6 represents a first selection circuit, 7 represents a second selection circuit, and 8 represents a switching circuit.

本発明は、ストア動作はチェックシーケンスとライトシ
ーケンスとに分けて行い、フェッチ動作はり−ビジーケ
ンスにより行い、ライトシーケンスとり−ビジーケンス
が重なった時はリードシーケンスを優先し、そのために
ストアデータとストアデータを保持するためのアドレス
バッファ回路とデータバッファ回路を設は選択回路によ
りデータ部への出力が制御される。
In the present invention, a store operation is performed separately into a check sequence and a write sequence, a fetch operation is performed by a busy sequence, and when a write sequence and a busy sequence overlap, a read sequence is given priority, and for this purpose, store data and store data are An address buffer circuit and a data buffer circuit are provided for holding, and output to the data section is controlled by a selection circuit.

[作用3 ストア命令によるストア動作を行う場合、第1図fat
のA、に示すチェックシーケンスを実行する。
[Effect 3 When performing a store operation using a store command, the fat
Execute the check sequence shown in A.

この時、を効アドレスレジスタ1のブロックアドレスに
よりタグ部2がアクセスされ、読み出されたデータは比
較部13で有効アドレスレジスタ1の下位のアドレスと
比較され、一致するものがあるとそのウェイ番号がエン
コーダ14から発生し、その番号情報と有効アドレスレ
ジスタ1のアドレスとがアドレスバッファ回路4内の1
つに格納される。一方、ストアデータはアドレスの入力
と同時にデータ処理装置から入力されており、データバ
ッファ回路5の一つのレジスタに格納されている。
At this time, the tag unit 2 is accessed by the block address of the effective address register 1, and the read data is compared with the lower address of the effective address register 1 in the comparing unit 13. If there is a match, the way number is generated from the encoder 14, and the number information and the address of the effective address register 1 are stored in the address buffer circuit 4.
stored in On the other hand, store data is input from the data processing device at the same time as the address is input, and is stored in one register of the data buffer circuit 5.

ストア動作のチェックシーケンスが終了して、続いてラ
イトシーケンスを実行する際に、データ処理装置からフ
ェッチ命令に基づ(Pop fchが投入されているか
どうかチエツクされ、もし投入されている場合は、ライ
トシーケンスは実行せず、そのフェッチ動作のり−ドン
ーケンスが優先して開始され、その後に続くサイクルで
待機していたライトシーケンスが実行される。そのリー
ドシーケンスでは、有効アドレスレジスタ1のブロック
アドレスがタグ部2に供給され、同時に切替回路8が切
替えられて第1の選択回路6の出力を禁止し、有効アド
レスレジスフ1からのブロックアドレスを出力してデー
タ部3に入力する。lサイクル遅れたライトシーケンス
はデータ部ヘアドレスバッツァ回路4から選択回路6で
選択されて出力し切替回路8を介し、ウェイ番号(WN
)と共にデータ部に供給され、それと同時にストアデー
タが書込データレジスタ15に供給されて書き込みが行
なわれる。
When the check sequence of the store operation is completed and the write sequence is subsequently executed, it is checked based on the fetch instruction from the data processing device (Pop fch), and if it is, the write sequence is executed. The sequence is not executed, the fetch operation is started with priority, and the waiting write sequence is executed in the subsequent cycle.In the read sequence, the block address of effective address register 1 is in the tag section. At the same time, the switching circuit 8 is switched to inhibit the output of the first selection circuit 6, and output the block address from the effective address register 1 and input it to the data section 3. The sequence is selected by the selection circuit 6 from the data section hair address circuit 4, outputted, and sent via the switching circuit 8 to the way number (WN
) is supplied to the data section, and at the same time, store data is supplied to the write data register 15 for writing.

ストア命令のライトシーケンスを実行する際に後続のス
トア命令がパイプラインに投入された場合、従来は後続
のストア命令は実行できなかったが、f& ftのスト
ア命令によるチェックシーケンスは先行するストア命令
のライトシーケンスと同時に開始することができる。
Conventionally, if a subsequent store instruction was input into the pipeline when executing a write sequence of a store instruction, the subsequent store instruction could not be executed, but the check sequence by the f&ft store instruction Light sequences can be started at the same time.

[実施例] 第2図に本発明の実施例構成図を示し、第3図に実施例
の動作例のタイムチャート図を示す。
[Embodiment] FIG. 2 shows a configuration diagram of an embodiment of the present invention, and FIG. 3 shows a time chart of an operation example of the embodiment.

第2図において、20〜25および28.29は第4図
の40〜45および47.48と同じものであり、20
はB2レジスタ、21はオペランドアドレスポート、2
2は有効アドレスレジスタ、23はタグ部、24は比較
器、25はエンコーダを表し、28はデータ部、29は
ストアデータレジスタを表し、26はセレクタ(SEL
で表示)、27はウェイ番号レジスタ、30はストアア
ドレスバッファ、31はストアデータバッファ、32゜
33は選択回路、34は比較回路(Cで表示)を表す。
In Figure 2, 20-25 and 28.29 are the same as 40-45 and 47.48 in Figure 4;
is the B2 register, 21 is the operand address port, 2
2 is a valid address register, 23 is a tag section, 24 is a comparator, 25 is an encoder, 28 is a data section, 29 is a store data register, and 26 is a selector (SEL).
27 is a way number register, 30 is a store address buffer, 31 is a store data buffer, 32 and 33 are selection circuits, and 34 is a comparison circuit (indicated by C).

この実施例構成において、セレクタ26は第1図(b)
の8に相当し、選択回路32.33は第1図fb)の6
.7に相当する。タグ部23は有効アドレスレジスタ2
2のビット20〜25でアクセスするが、データ部28
については、有効アドレスレジスタ22のビット20〜
25をアドレスとして使うか、選択回路32により選択
されたストアアドレスバッファ30のビット20〜25
をアドレスとして使うかを選択できる。また、ウェイ番
号レジスタ27はエンコーダ25の出力をストアアドレ
スバッファ30に保持した後、選択回路32により選択
されセットされる。さらにバッファ記憶装置は、演算部
(図示せず)からのストアデータを直接受けないで、−
旦スドアデータバッファ31に保持した後、選択回路3
3を通し、ライトシーケンスでストアデータレジスタ2
9にセットされる。
In this embodiment configuration, the selector 26 is as shown in FIG. 1(b).
The selection circuits 32 and 33 correspond to 6 in Fig. 1 fb).
.. Corresponds to 7. Tag section 23 is valid address register 2
2 bits 20 to 25 are accessed, but the data part 28
For bits 20 to 20 of effective address register 22,
25 as the address or bits 20 to 25 of the store address buffer 30 selected by the selection circuit 32.
You can choose whether to use it as an address. Further, after the way number register 27 holds the output of the encoder 25 in the store address buffer 30, it is selected and set by the selection circuit 32. Furthermore, the buffer storage device does not directly receive store data from an arithmetic unit (not shown);
Once stored in the storage data buffer 31, the selection circuit 3
3, store data register 2 in write sequence
Set to 9.

第3図のタイムチャートに示す命令列において、ストア
命令■はPop chkによりバッファ記憶装置のタグ
部23に8亥当アドレスのデータがあるかどうかを調べ
ると同時に主記憶装置へのストアアドレス、ストアデー
タをストアアドレスバッファ30、ストアデータバッフ
ァ31にセットする。したがって、バッファ記憶装置の
データ部28へのストアデータは直接ストアデータレジ
スタ29に供給されない。これは、命令■の後続命令が
再びストア命令だった場合、命令■のストアデータを退
避しないと後続のストア結果をストアデータバスに乗せ
ることができないからである。
In the instruction sequence shown in the time chart of FIG. 3, the store instruction (■) uses Pop chk to check whether or not there is data at the address 8 in the tag section 23 of the buffer storage device, and at the same time stores the store address and store data in the main storage device. Data is set in the store address buffer 30 and store data buffer 31. Therefore, the store data to the data section 28 of the buffer storage device is not directly supplied to the store data register 29. This is because if the instruction following instruction (2) is a store instruction again, the subsequent store result cannot be placed on the store data bus unless the store data of instruction (2) is saved.

このストアデータバッファ31へのバッファリングによ
り、命令制御部(図示しないデータ処理装置に備えられ
ている)はバッファ記憶装置のデータ部2日への実際の
書き込み完了を待つことなく後続命令を処理することが
できる。
By buffering the store data buffer 31, the instruction control unit (equipped in a data processing device (not shown)) processes subsequent instructions without waiting for the completion of actual writing to the data section 2 of the buffer storage device. be able to.

比較回路34は、ストアアドレスバッファ30、ストア
データバッファ31に保持された後バッファ記憶装置に
書き込まれていないデータを、後続のフェッチ命令が使
うことを禁止するために設けられたもので、B2レジス
タ20のアドレスとストアアドレスバッファ30内に複
数格納された各アドレスとを比較するものである。比較
回路34により一致出力が発生すると、その出力はフェ
ッチ禁止信号として上記図示しない命令制御部に供給さ
れる。
The comparison circuit 34 is provided to prohibit a subsequent fetch instruction from using data that has been held in the store address buffer 30 and store data buffer 31 but has not been written to the buffer storage device. The 20 addresses are compared with each of the multiple addresses stored in the store address buffer 30. When a match output is generated by the comparison circuit 34, the output is supplied as a fetch prohibition signal to the instruction control section (not shown).

第3図のフェッチ命令■〜■は、バッファ記憶装置のタ
グ部23へのアクセスと共にデータ部28からの読み出
しを必要とするためセレクタ26は有効アドレスレジス
タ22のビット20〜25をデータ部2日に送出する。
Since the fetch commands ■ to ■ in FIG. 3 require access to the tag section 23 of the buffer storage device and reading from the data section 28, the selector 26 sets bits 20 to 25 of the effective address register 22 to the data section 2. Send to.

■のストア命令はRサイクルの後に、ライトシーケンス
のためのPopstを立てる。この状態で従来は第6図
に示すようにストア命令のRサイクルに同時にPops
tを立てていたが、本実施例では、ストアデータレジス
タ29へのデータ供給をストアデータバッファ31を経
由するため1マシンサイクル遅らせてPopstを立て
るものである。
The store instruction (2) sets Popst for the write sequence after the R cycle. In this state, as shown in FIG.
However, in this embodiment, since data is supplied to the store data register 29 via the store data buffer 31, Popst is set with a delay of one machine cycle.

そして、従来はストアデータは直接バッファ記憶装置に
入力するためデータ部28への書き込みをH(l先で行
う必要があり、PopstはPop fchより高い優
先順位を持ったが、本実施例ではストアデータバッファ
31に一旦バッファリングするためPopstの優先順
位を下げ、i!t ′ft命令が影響を受けない方式と
した。そのため、Popstは■のフェッチ命令により
lサイクルデイレイされることになる。
Conventionally, store data is directly input to the buffer storage device, so writing to the data section 28 has to be done H (l first), and Popst has a higher priority than Pop fch, but in this embodiment, store data In order to temporarily buffer Popst in the data buffer 31, the priority of Popst is lowered, so that the i!t'ft instruction is not affected.Therefore, Popst is delayed for one cycle by the fetch instruction (2).

第3図において、次に再びストア命令が■のように実行
されるとPop chkにより始まるチェックシーケン
スは、バッファ記憶装置のタグ部23だけしかアクセス
しないので、セレクタ26は有効アドレスレジスタ22
ではなく、選択回路32を通ったストアアドレスバッフ
ァ30のビット20〜25をデータ部28のアクセスア
ドレスとすることができる。そこで、ストア命令■のラ
イトシーケンスは■のチェックシーケンスと同時に実行
することができ、ストアデータは選択回路33を経由し
てストアデータバッファ31の内容がストアデータレジ
スタ29にセットされる。ウェイ番号はストアアドレス
バッファ30に保持されたも。
In FIG. 3, when the store instruction is executed again as shown in (3), the check sequence starting with Pop chk accesses only the tag section 23 of the buffer storage device, so the selector 26 moves to the effective address register 22.
Instead, bits 20 to 25 of the store address buffer 30 that have passed through the selection circuit 32 can be used as the access address of the data section 28. Therefore, the write sequence of the store command (2) can be executed simultaneously with the check sequence (2), and the store data is passed through the selection circuit 33, and the contents of the store data buffer 31 are set in the store data register 29. The way number is held in the store address buffer 30.

のが選択回路32を通りウェイ番号レジスタ27にセッ
トされる。
is passed through the selection circuit 32 and set in the way number register 27.

[発明の効果コ 本発明によれば、パイプライン処理を行うデータ処理装
置において、バッファ記憶装置に対する書き込み動作を
バッファ記憶装置のデータ部の空き時間を利用して行う
ことができる。これによってパイプラインの書き込み動
作による後続命令の遅れを防止することができ、データ
処理装置におけるパイプライン処理を効率的に実行でき
、システム全体の処理能力の向上を達成することができ
る。
[Effects of the Invention] According to the present invention, in a data processing device that performs pipeline processing, a write operation to a buffer storage device can be performed using free time in the data section of the buffer storage device. This makes it possible to prevent delays in subsequent instructions due to pipeline write operations, to efficiently execute pipeline processing in the data processing device, and to improve the processing capacity of the entire system.

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

第1図fa)は本発明によるストアとフェッチのシーケ
ンスを示す図、第1図fh)は本発明によるバッファ記
憶装置の基本的構成図、第2図は本発明の実施例構成図
、第3図は実施例の動作例のタイムチャート図、第4図
は従来例の構成図、第5図は従来例のストア動作のタイ
ムチャート図、第6図は従来例のパイプライン処理のタ
イムチャート図である。 第1図中、 1:有効アドレスレジスタ 2:タグ部 3:データ部 4ニアドレスバッファ回路 5:データバソファ回路 6:第1の選択回路 7:第2の選択回路 8:切替回路
FIG. 1 fa) is a diagram showing a store and fetch sequence according to the present invention, FIG. 1 fh) is a basic configuration diagram of a buffer storage device according to the present invention, FIG. The figure is a time chart diagram of an operation example of the embodiment, Figure 4 is a configuration diagram of a conventional example, Figure 5 is a time chart diagram of a store operation of a conventional example, and Figure 6 is a time chart diagram of pipeline processing of a conventional example. It is. In Figure 1, 1: Valid address register 2: Tag section 3: Data section 4 Near address buffer circuit 5: Data buffer circuit 6: First selection circuit 7: Second selection circuit 8: Switching circuit

Claims (1)

【特許請求の範囲】 バッファ記憶装置のアドレス情報を保持するタグ部(2
)とデータを保持するデータ部(3)のアクセス機構(
1、4、6、8)を独立にし、かつバッファ記憶装置な
らびに主記憶装置へのストアアクセスのためのストアア
ドレス、ストアデータを一時的に保持するストアバッフ
ァ機構(4、5)を持つデータ処理装置において、 該バッファ記憶装置からデータをフェッチする場合には
タグ部(2)とデータ部(3)を同時に使用するリード
シーケンスにより処理を行い、 該バッファ記憶装置にデータをストアする場合には、ス
トアすべきアドレスブロックがあるか否かタグ部だけを
使用して調べるチェックシーケンスと実際の書き込みを
データ部に対し行うライトシーケンスにより処理を行い
、 チェックシーケンスにおいては、同時にストアアドレス
、ストアデータをストアバッファ機構(4、5)へ格納
し、 ストアのライトシーケンスは、該バッファ記憶装置への
アクセス優先権をリードシーケンスより低く設定され、
後続するリードシーケンスを先に処理した後に、上記ス
トアバッファ機構(4、5)からストアデータおよびス
トアアドレスを復元して上記ライトシーケンスを処理す
ることを特徴とするバッファ記憶装置のストア制御方式
[Claims] A tag unit (2) that holds address information of a buffer storage device.
) and the access mechanism (
1, 4, 6, 8) are independent, and has a store address for store access to the buffer storage device and main storage device, and a store buffer mechanism (4, 5) that temporarily holds store data. In the device, when data is fetched from the buffer storage device, processing is performed using a read sequence that uses the tag section (2) and the data section (3) at the same time, and when data is stored in the buffer storage device, Processing is performed using a check sequence that uses only the tag section to check whether there is an address block to be stored, and a write sequence that actually writes to the data section.In the check sequence, the store address and store data are stored at the same time. Store in the buffer mechanism (4, 5), the store write sequence has a lower access priority to the buffer storage device than the read sequence,
A store control method for a buffer storage device, characterized in that after first processing a subsequent read sequence, the store data and store address are restored from the store buffer mechanism (4, 5) and the write sequence is processed.
JP63136203A 1988-06-02 1988-06-02 Store control system for buffer memory device Pending JPH01305452A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63136203A JPH01305452A (en) 1988-06-02 1988-06-02 Store control system for buffer memory device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63136203A JPH01305452A (en) 1988-06-02 1988-06-02 Store control system for buffer memory device

Publications (1)

Publication Number Publication Date
JPH01305452A true JPH01305452A (en) 1989-12-08

Family

ID=15169742

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63136203A Pending JPH01305452A (en) 1988-06-02 1988-06-02 Store control system for buffer memory device

Country Status (1)

Country Link
JP (1) JPH01305452A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6374334B1 (en) 1994-07-04 2002-04-16 Fujitsu Limited Data processing apparatus with a cache controlling device

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6374334B1 (en) 1994-07-04 2002-04-16 Fujitsu Limited Data processing apparatus with a cache controlling device

Similar Documents

Publication Publication Date Title
JPH0526212B2 (en)
US8200900B2 (en) Method and apparatus for controlling cache memory
CA1279407C (en) Buffer storage control system
US4737908A (en) Buffer memory control system
JPH01305452A (en) Store control system for buffer memory device
JP2008102599A (en) Processor
JP2534321B2 (en) Data transfer control method and apparatus
JP2845746B2 (en) Micro program controller
JPH07114509A (en) Memory access device
JPS60142450A (en) Storage system
JPH086853A (en) Storage control method
JPS6126089B2 (en)
JPH07104996A (en) Microprogram controller
JPS6327795B2 (en)
JPH0364903B2 (en)
JPH0526216B2 (en)
JPS60189043A (en) Processor
JPS63168750A (en) Data processor
JPS6049347B2 (en) Memory access method
JPH0685154B2 (en) Intermediate buffer control method
JPS5862886A (en) Storage controlling system
JPH07319753A (en) Multiplex system for bus cycle
JPH01103751A (en) Device for controlling cash memory
JPH0477945B2 (en)
JPS5837747A (en) Instruction read only buffer storage device