JPS5942686A - Information processing device - Google Patents

Information processing device

Info

Publication number
JPS5942686A
JPS5942686A JP57152034A JP15203482A JPS5942686A JP S5942686 A JPS5942686 A JP S5942686A JP 57152034 A JP57152034 A JP 57152034A JP 15203482 A JP15203482 A JP 15203482A JP S5942686 A JPS5942686 A JP S5942686A
Authority
JP
Japan
Prior art keywords
buffer
write
store buffer
read
request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP57152034A
Other languages
Japanese (ja)
Other versions
JPS6343774B2 (en
Inventor
Hideki Nishimura
英樹 西村
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Nippon Electric Co 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 NEC Corp, Nippon Electric Co Ltd filed Critical NEC Corp
Priority to JP57152034A priority Critical patent/JPS5942686A/en
Publication of JPS5942686A publication Critical patent/JPS5942686A/en
Publication of JPS6343774B2 publication Critical patent/JPS6343774B2/ja
Granted legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

PURPOSE:To facilitate the control between a store buffer and a buffer memory and to extract the capacity of read/write operation at its maximum, by providing the store buffer where write requests to a main storage device and the buffer memory are stored, and providing a means, which compares all write addresses stored in the store buffer with a read address attendant on a read request, in the store buffer. CONSTITUTION:A store buffer 13 is arranged in the preceding stage of a stage where the write request from an operation processing part 11 is executed to a buffer memory 12 and a main storage device 2. In this constitution, the store buffer 13 is the object of indexing also in case of a read request. For this indexing, the first comparing means which compares write addresses with read addresses in a block unit to detect their coincidence and the second comparing means which compares them in a preliminarily set write data width unit to detect their coincidence are provided. Thus, the store buffer is swept up easily during the block transfer, and sweeping-up of the store buffer for the read request is restrained to the minimum to transmit read data to a request source quickly.

Description

【発明の詳細な説明】 この発明はバッファメモリ及び主記憶装置に対する書込
要求を貯蔵するストアバッファを有する情報処理装置に
関する。
DETAILED DESCRIPTION OF THE INVENTION The present invention relates to an information processing apparatus having a buffer memory and a store buffer for storing write requests to a main memory.

〈従来技術〉 バッファメモリを有する情報処理装置では、その処理装
置の演算処理部からの命令読出及びオペランドの読出、
書込などデータの読出、書込に対してバッファメモリを
アクセスする。ノくソファメモリが存在しない場合は、
バッファメモリに比して低速大容量の主記憶装置を常に
アクセスするため、アクセスタイムが大きく性能の向上
は見込めない。
<Prior Art> In an information processing device having a buffer memory, reading instructions and reading operands from the arithmetic processing unit of the processing device,
Access the buffer memory for reading and writing data such as writing. If there is no sofa memory,
Since the main storage device, which is slower and has a larger capacity than the buffer memory, is constantly accessed, the access time is long and no improvement in performance can be expected.

演算処理部から読出要求があった場合、ノくソファメモ
リをアクセスし、所望のデータが存在すればそこから直
接データを取出せばよく、低速な主記憶装置を起動する
のはバッファメモリに所望のデータがなく、その所望の
データを含む1ブロツクのデータを主記憶装置からバッ
ファメモリへ転送する時だけである。
When there is a read request from the arithmetic processing unit, the buffer memory is accessed, and if the desired data exists, the data can be retrieved directly from there; starting the slow main memory is done by loading the desired data into the buffer memory. This occurs only when there is no data and one block of data containing the desired data is transferred from the main memory to the buffer memory.

演算処理部からの書込要求に対しては、・<ソファメモ
リは主記憶装置の写しであって、・(ソファメモリと主
記憶装置間のデータ内容に不一致を生じさせ々いため、
バッファメモリに書込動作を行なうと同時に主記憶装置
にも同じデータを書込む方法が用いられ、これはストア
スルーと呼ばれる。
In response to a write request from the arithmetic processing unit, ・<The sofa memory is a copy of the main memory, and ・(This would likely cause a discrepancy in the data content between the sofa memory and the main memory, so
A method is used in which the same data is written to the main memory at the same time as a write operation is performed to the buffer memory, and this method is called store-through.

即ち、書込動作では必ず低速な主記憶装置を起動する必
要があった。
That is, in a write operation, it was always necessary to start up the slow main storage device.

これを避けるべく、演算処理部から書込要求があった場
合は、とりあえずバラフナメモリに書込動作を行なうに
とどめ、適当な時期例えばバッファメモリの1ブロツク
の置換が必要になったときに、置換の対象のブロックが
書替えられていればそのブロックを主記憶装置に書込む
方法もある。
In order to avoid this, when a write request is received from the processing unit, the write operation is limited to the buffer memory for the time being, and the replacement is performed at an appropriate time, for example, when one block of buffer memory needs to be replaced. If the target block has been rewritten, there is also a method of writing that block to the main memory.

この方法はストアスワップと呼ばれているが、複数の情
報処理装置が主記憶装置のメモリエリアを共有するシス
テムでは、主記憶装置とバッファメモリのデータの同期
が難しい。即ち、主記憶装置に対し、1ブロツクの読出
要求を行なった場合、他の情報処理装置のバッファメモ
リに対しflf(7)データの有無を常に確認する必要
がある。以上から現在実施されている書込方式のほとん
どはストアスル一方式である。
This method is called store swapping, but in systems where multiple information processing devices share the memory area of the main memory, it is difficult to synchronize data in the main memory and buffer memory. That is, when a read request for one block is made to the main memory, it is necessary to constantly check the buffer memories of other information processing devices to see if there is flf(7) data. From the above, most of the write methods currently in use are store-through methods.

バッファメモリへの書込動作は、その制御及び使用する
RAM(ランダムアクセスメモリ)素子の特性上、読出
動作に比較して多くの時間を要する。即ち、書込動作は
読出動作に比べてそのザイクルタイムが大きい。塘だ、
前記ストアスル一方式ではバッファメモリと主記憶装置
に同時に店込む必要があり、主記憶装置が書込要求を受
付けることができない場合は情報処理装置の処理を一時
停正せざるを得ない。
A write operation to a buffer memory takes more time than a read operation due to its control and the characteristics of the RAM (random access memory) element used. That is, the write operation has a longer cycle time than the read operation. It's Tong.
In the store-through method, it is necessary to store data into the buffer memory and the main storage device at the same time, and if the main storage device cannot accept a write request, the processing of the information processing device must be temporarily stopped and corrected.

以上の問題を解決するため、情報処理装置内に演算処理
部からの書込要求を保持しておくストアバッファを設け
、書込要求はストアバッファに格納された時点でとりあ
えず動作を終了させ、演算処理部から次の要求を受付け
る。ストアバッファはバッファメモリ、主記憶装置の空
き時間を見つけて書込動作を実施する。ストアバッファ
(はバッファメモリの一部として扱われ、演算処理部か
らの読出要求に対しては当然参照の対象となる。
In order to solve the above problem, a store buffer is provided in the information processing device to hold write requests from the arithmetic processing unit, and the operation of the write request is terminated once it is stored in the store buffer. Receives the next request from the processing unit. The store buffer finds free time in the buffer memory and main memory and executes the write operation. The store buffer (is treated as part of the buffer memory, and is naturally referenced in response to a read request from the arithmetic processing unit.

性能を高める/こめには、演算処理部に対して読出デー
タをできる限り速く供給する必要がある。
In order to improve performance, it is necessary to supply read data to the arithmetic processing unit as quickly as possible.

これは読出要求によるストアバッファの掃出しを最小限
に留める必要があることを示している。′!。
This indicates that it is necessary to minimize the draining of the store buffer due to read requests. ′! .

た読出要求による所望のデータがバッファメモリにもス
トアバッファにも存在しない場合、ブロック転送を行な
うが、ストアバッファに同一ブロック内側アドレスの書
込要求が存在する可能性があシ、フロック転送終了迄ス
トアバッファの掃出しを止めるか同一ブロックに遭遇し
た場合、バッファメモリの登録を消去するかのいずれか
の処置が必要であシ、これが実施されている。
If the desired data resulting from a read request does not exist in either the buffer memory or the store buffer, a block transfer is performed, but there is a possibility that a write request for the same block internal address exists in the store buffer. It is necessary to either stop purging of the store buffer or delete the registration in the buffer memory when the same block is encountered, and this has been implemented.

〈発明の概要〉 この発明はバックアメモリとストアバッファを備えだ情
報処理装置において、ストアバッファとバッファメモリ
の間の制御を容易にし、読出、書込動作の性能を最大限
にひき出すことを目的としている。
<Summary of the Invention> An object of the present invention is to facilitate control between the store buffer and the buffer memory in an information processing device equipped with a backup memory and a store buffer, and to maximize the performance of read and write operations. It is said that

この発明によれば、主記憶装置と接続され、主記憶装置
の記憶内容の写しをブロック単位で保持するバッファメ
モリを有する情報処理装置において、主記憶装置及びバ
ッファメモリへの書込要求を貯蔵しておくストアバッフ
ァを備え、そのストアバッファはストアバッファに貯蔵
されているすべての書込アドレスと読出要求にイー1随
するE1冒」3アドレスを比較する手段を持ち、その比
較手段t」ニブロック単位で比較して一致を検出する第
1比較手段と、あらかじめ設定された書込データ’1h
rr ip位で比較して一致を検出する第2比較手段を
含む(1・を成とされている。
According to the present invention, in an information processing apparatus having a buffer memory connected to a main memory and holding a copy of the memory contents of the main memory in units of blocks, write requests to the main memory and the buffer memory are stored. The store buffer has a means for comparing all the write addresses stored in the store buffer with the E1 address associated with the read request, and the comparing means has a A first comparison means that compares units to detect a match, and a preset write data '1h.
rr IP and a second comparison means for comparing and detecting a match (1.

〈実施例〉 以下、図面を参照してこの発明を説明する3゜第1図を
参照しよう、この発明が適用される情報処理装置1は主
記憶装置2に対してインタフェース3を介して接続され
ている。この情報処理装置1は演算処理部11を備え、
演算処理部11は読出、書込要求をアドレスを伴った形
でバッファメモリ12及びストアバッファ13に送出す
る1、書込データは演算処理部11からストアバッファ
13に与えられる。
<Embodiment> The present invention will be described below with reference to the drawings.3. Referring to FIG. 1, an information processing device 1 to which the present invention is applied is connected to a main storage device 2 via an interface 3. ing. This information processing device 1 includes an arithmetic processing section 11,
The arithmetic processing unit 11 sends read and write requests with addresses to the buffer memory 12 and the store buffer 13 (1), and write data is provided from the arithmetic processing unit 11 to the store buffer 13 .

この発明においては、ストアバッファ13は、演算処理
部11からの書込要求をバッファメモリ]2及び主記憶
装置2に対して実行する前のステ−ジに配置する構成を
とる。演算処理部11からの書込データは、通常、書込
要求及びそれに付随する書込アドレスよりも遅れて与え
られることが多く、前記のように配置することにより、
その遅れを吸収することができる。この構成をとった場
合、読出要求に際しストアバッファ13も索引の対象と
なる。
In the present invention, the store buffer 13 is arranged in a stage before a write request from the arithmetic processing section 11 is executed to the buffer memory 2 and the main storage device 2. The write data from the arithmetic processing unit 11 is usually given later than the write request and the accompanying write address, so by arranging it as described above,
This delay can be absorbed. If this configuration is adopted, the store buffer 13 will also be indexed when a read request is made.

第2図は第1図中のバッファメモリ12及びストアバッ
ファ13の詳細例を示す。第1図中のストアバッファ1
3は第2図中の破線で示されたアドレス部13−1、書
込データ部13−2に分けられる。この実施例ではバッ
ファメモリ12の1ブロツクを64バイトとし、書込デ
ータ幅と読出データ幅及び第1図におけるインタフェー
ス3のデータ幅はすべて同じとし、これを8バイトとす
る。
FIG. 2 shows a detailed example of the buffer memory 12 and store buffer 13 in FIG. 1. Store buffer 1 in Figure 1
3 is divided into an address section 13-1 and a write data section 13-2 indicated by broken lines in FIG. In this embodiment, one block of the buffer memory 12 is 64 bytes, and the write data width, the read data width, and the data width of the interface 3 in FIG. 1 are all the same, which is 8 bytes.

従って主記憶装置2からバッファメモリ12へのブロッ
ク転送は8回転送となる。この情報処理装置1はクロッ
ク周期で動作し、1クロツク必要とする場合ITと呼び
、2クロツク必要とする場合2Tと呼び以下同様である
Therefore, the block transfer from the main storage device 2 to the buffer memory 12 is performed eight times. This information processing device 1 operates at a clock cycle, and when it requires one clock, it is called IT, and when it requires two clocks, it is called 2T, and so on.

読出要求に際し、読出アドレスは演算処理部11から第
1切換回路41を経てレジスタ(FAI)31にセット
される。レジスタ3Jに十ノドされだ読出アドレスは、
バッファメモリ12のストレージ部をアクセスする。こ
のストレージ音15iはアドレスアレイ21(略してA
A)及びデータアレイ22(略してDA)から成る。ア
ドレスアレイ21は各ブロックのティレフトリ、データ
アレイ22は各ブロックのデータをそれぞれ格納し2て
いる。
At the time of a read request, a read address is set in the register (FAI) 31 from the arithmetic processing unit 11 via the first switching circuit 41. The read address written in register 3J is
The storage section of the buffer memory 12 is accessed. This storage sound 15i is the address array 21 (abbreviated as A).
A) and a data array 22 (abbreviated as DA). The address array 21 stores the tiles of each block, and the data array 22 stores the data of each block.

アドレスアレイ21に散り出アドレスを含むブロックが
存在するか否かを第3比較回路46で一致を検出するこ
とにより行ない、次のクロックでレジスタ(AHR)3
6にセットされる。
The third comparison circuit 46 detects a match to determine whether or not there is a block containing the scattered address in the address array 21, and registers (AHR) 3 at the next clock.
Set to 6.

ストアバッファアドレスレジスタ(STB−ADR)2
3は書込要求に付随する切込アドレスを貯蔵しており、
この5TB−ADR23に貯蔵されている全ての引込ア
ドレスと入力され/コ、;冗出アドレスとを第1比較回
路44及び第2比転回路45で比較され、これらの比較
結果が次のクロックでそれぞれレジスタ(SHRI)3
7及びレジスタ(SI(R2)38にセットされる。第
1比較回路44はブロック単位、即ち64バイト単位の
比較を行ない、第2比較回路45は読出、書込データ幅
である8バイト単位の比較を行なう。
Store buffer address register (STB-ADR) 2
3 stores the incision address accompanying the write request,
All the input addresses stored in this 5TB-ADR 23 are compared with the input and output addresses by the first comparison circuit 44 and the second ratio conversion circuit 45, and the results of these comparisons are used in the next clock. Each register (SHRI) 3
7 and register (SI(R2)) 38. The first comparison circuit 44 performs a comparison in units of blocks, that is, units of 64 bytes, and the second comparison circuit 45 performs comparison in units of 8 bytes, which is the read and write data width. Make a comparison.

レジスタ(FAI)31にセットされた読出アドレスは
次のクロックでレジスタ(PA2)32に移送され、第
1〜第3比較回路44〜46の結果はそれぞれレジスタ
5HRI、5HR2及びAHRにセットされる。また第
3比較回路46で一致が検出されれば、読出アドレスで
示される読出データ幅がレジスタ(RDR)34にセッ
トされる。
The read address set in the register (FAI) 31 is transferred to the register (PA2) 32 at the next clock, and the results of the first to third comparison circuits 44 to 46 are set in registers 5HRI, 5HR2 and AHR, respectively. Further, if a match is detected by the third comparison circuit 46, the read data width indicated by the read address is set in the register (RDR) 34.

こ\で読出要求に対する動作を決定する。この動作は次
の4コのうちのいずれがである。
This determines the operation for the read request. This operation is one of the following four.

動作lニスドアバッファ13に貯蔵されている書込要求
を掃出し、その後ブロック転 送を行なう。
Operation: The write request stored in the varnished buffer 13 is flushed out, and then block transfer is performed.

動作2:レジスタ(RDR)34にセットされた読出デ
ータを要求元の演算処理部11に送る。
Operation 2: Send the read data set in the register (RDR) 34 to the requesting arithmetic processing unit 11.

動作3ニスドアバツフア13の掃出しを行なゎず、ブロ
ック転送を行なう。。
Operation 3 Block transfer is performed without cleaning out the varnish buffer 13. .

動作4ニスドアバツフアJ3に貯蔵されている書込要求
を掃出し、その後バッファメ モリ12を読出す。
Operation 4: Flush out the write request stored in the painted buffer J3, and then read the buffer memory 12.

読出要求に対する動作の決定はレジスタS ](HR1
’、5HR2及びAHRの内容によって決定される。
The operation for the read request is determined by the register S](HR1
', 5HR2 and AHR contents.

第3図に前記3つのレジスタ36〜38に対する動作を
示す。レジスタS HR1はブロックrii位で比較し
て一致を検出する第1比較手段の結果が格納され、第3
図では一致が検出された場合” T−ビ、不一致の場合
” M ”で表わす。レジスタS JT R2はあらか
じめ設定された書込データ幅単位の−43(を検出する
第2比較手段の結果が格納され、4r> 3図における
表現は同じである。レジスタA I−I Ruバッファ
メモリ12に読出アドレスを含むブロックの存在の有無
を示し、存在する場合゛F1″″、存在しすl/”;3
 合” M ”で表わす。こ\で、レジスタ5HR27
)K”H”ノ場合、レジスタS HR1u ” I−1
”であり、レジスタS HR1カ”M’V)場合、v 
シスタ5J−TR2もu MIIである。
FIG. 3 shows the operation of the three registers 36-38. The register SHR1 stores the result of the first comparing means which compares and detects a match at the block rii, and the result of the third comparing means is stored.
In the figure, if a match is detected, it is represented by "T-bi", and if there is a mismatch, it is represented by "M". 4r>3 The expressions in the figure are the same.Register A I-I Ru Indicates the presence or absence of a block containing the read address in the buffer memory 12; ;3
The combination is expressed as "M". Here, register 5HR27
)K”H”, register SHR1u” I-1
” and register S HR1 is “M'V), then v
Sister 5J-TR2 is also u MII.

読出要求に対する処理が動作1に決定されるのは論理式
で表現すると、 5HRI−AHR であり、バッファメモリ12に所望のデータが存在しな
いのでブロック転送を行うべきであるが、同一ブロック
内側アドレスに書込要求が存在するため、ストアバッフ
ァ13の掃出しを行なった後ブロック転送を行う場合で
ある。これはブロック転送中のストアバッファ13の掃
出しに対する保証となる。すなわち、ブロック転送中に
ストアバッファ13の掃出しが行なわれると、バッファ
メモリ12に書込データが書込まれた後に、ブロック転
送による古いデータによって書替えられ、データ化4に
なる。
The reason why the processing for the read request is determined to be operation 1 is expressed in a logical formula as 5HRI-AHR. Since the desired data does not exist in the buffer memory 12, block transfer should be performed, but if the data is transferred to the same block internal address. Since there is a write request, the block transfer is performed after the store buffer 13 is flushed out. This guarantees against flushing out the store buffer 13 during block transfer. That is, when the store buffer 13 is flushed out during block transfer, after the write data is written in the buffer memory 12, it is rewritten with old data from the block transfer, resulting in data conversion 4.

動作2に決定されるのは論理式で表現すると、5HR2
・AHR であり、バッファメモリ12に所望のデータが存在して
、且つストアバッファ13に同じアドレスの書込要求が
存在しない場合である。動作2ではバッファメモリ12
から読出したデータか格納されているレジスタRDRの
内容を要求元の演算処理部11に送出する。
What is determined to be action 2 is 5HR2 when expressed by a logical formula.
- AHR, the desired data exists in the buffer memory 12, and there is no write request for the same address in the store buffer 13. In operation 2, buffer memory 12
The contents of the register RDR in which the data read from the register RDR is stored are sent to the arithmetic processing unit 11 that is the request source.

動作3に決定されるのは論理式で表現すると、5HRI
・AHR であり、ブロック転送要求を主記憶装置2に対し発行す
る。
What is determined as action 3 is 5HRI when expressed by a logical formula.
- AHR, which issues a block transfer request to the main storage device 2.

動作4に決定されるのは、論理式で表現すると、5HR
2・AHR でアシ、バッファメモリ12及びストアバッファ13の
両方に所望のデータが存在するが、ストアバッファ13
の書込データが最新のため、ストアバッファ13を掃出
し後、改めてバッファメモリ12を読出す。
What is determined for action 4 is 5HR when expressed by a logical formula.
2. In AHR, the desired data exists in both the buffer memory 12 and the store buffer 13, but the store buffer 13
Since the write data is the latest, after cleaning out the store buffer 13, the buffer memory 12 is read out again.

こ\で第2図に戻ってブロック転送のD・JJ作説明を
行なう。レジスタPA2から主起1.ζ(装置1q2に
対し、ブロック転送要求が発行されると、主記憶装置2
からの読出データを受取るために必要な情報をバッファ
(RZB)25に格納しておく。主記憶装置2から挽出
データが送られてくると、第3切換回路43を通してレ
ジスタ(WDR)35にセットされる。同じタイミング
でバッファ(RZB)25に格納されている読出アドレ
スはレジスタFAIにセットされ、レジスタWDRの内
容はデータアレイ22に書込まれるとともに第2切換回
路42を通してレジスタ(RDR)34にセットされ、
要求元にリプライとして送出される。この実施例では主
記憶装置2からの読出しは1ブロック単位で8回転送で
ある。
Now, returning to Figure 2, we will explain block transfer by DJ JJ. Starting from register PA2 1. ζ (When a block transfer request is issued to device 1q2, main storage device 2
The information necessary to receive read data from is stored in a buffer (RZB) 25. When retrieved data is sent from the main storage device 2, it is set in the register (WDR) 35 through the third switching circuit 43. At the same timing, the read address stored in the buffer (RZB) 25 is set to the register FAI, the contents of the register WDR are written to the data array 22, and set to the register (RDR) 34 through the second switching circuit 42.
Sent as a reply to the requester. In this embodiment, reading from the main storage device 2 is performed eight times in one block unit.

次に書込要求の動作説明を行なう。Next, the operation of a write request will be explained.

演算処理部11からの書込要求はその書込アドレスがレ
ジスタ(PAL)にセットされ、次のクロックで5TB
−ADR23に格納される。ストアバッファ13の掃出
しは書込アドレスをレジスタFAIにセットし、以前レ
ジスタl) A 1にセットされていたアドレスをレジ
スタ(BAR)33に退逃する。そしてバッファメモリ
12のアドレスアレイ21を索引し、第3比較回路46
により書込アドレスを含むブロックが存在するか否かを
調べる。クロックを進めて結果をレジスタA ]■Hに
セットし、加えて書込アドレスにレジスタI)A2にセ
ットし、書込データはストアバソファデータレジスタ(
SrI2−WD)24から2153切換回路43を経て
レジスタWDRにセット−aれる。
For a write request from the arithmetic processing unit 11, the write address is set in the register (PAL), and the 5TB is processed at the next clock.
- Stored in ADR23. To flush out the store buffer 13, the write address is set in the register FAI, and the address previously set in the register 1) A1 is evacuated to the register (BAR) 33. Then, the address array 21 of the buffer memory 12 is indexed, and the third comparison circuit 46
Check whether a block containing the write address exists. Advance the clock and set the result in register A]■H. In addition, set the write address in register I)A2, and the write data is stored in the store buffer data register (
SrI2-WD) 24 is set to the register WDR via the 2153 switching circuit 43.

こ\で主記憶装置2に対する1・t、込吸求を光行し、
またレジスタA HRを調べて、書込アドレスを含むブ
ロックが存在すればレジスタWDRの内′tφをデータ
アレイ22に書込む。
At this point, 1.t, the input request to the main memory device 2 is transmitted,
Also, the register A-- HR is checked, and if a block including the write address exists, 'tφ in the register WDR is written to the data array 22.

第4図にストアバッファ13の掃出しに門するタイムチ
ャートの一例を示す。ストアバッファ13には2つの書
込要求Sl 、S2が存在するものとし、タイミングt
pは掃出し以前の状態で、タイミ   □ングt1及び
t3で5TB−ADR23からレジスタPALに書込ア
ドレスがセットされてt11込茨求の実行を行なう。書
込要求SIUバッファメモリ12にヒツトし、書込要求
S2はミスヒツトした場合である。
FIG. 4 shows an example of a time chart when the store buffer 13 is flushed out. It is assumed that two write requests Sl and S2 exist in the store buffer 13, and the timing t
p is in the state before sweeping, and at timings t1 and t3, a write address is set from the 5TB-ADR 23 to the register PAL, and t11 is executed. This is a case where the write request hits the SIU buffer memory 12 and the write request S2 misses.

尚、ストアバッファ13の掃出しの契機は、前記読出要
求による動作1及び動作4の場合に加えてストアバッフ
ァ13が満杯になった場合及びレジスタPALが空きの
場合もその対象である。
Incidentally, the trigger for flushing out the store buffer 13 is not only in the case of operations 1 and 4 caused by the read request, but also when the store buffer 13 becomes full and when the register PAL is empty.

以上がこの発明の実施例に対する説明である。The above is a description of the embodiments of the present invention.

ところでブロック転送中のバッファメモリの状態はアド
レスアレイ21にディレクトリを登録しているが、デー
タアレイ22に未だデータが用意されていない不安定な
状態である。加えてブロック転送は主記憶装置2にアク
セスするためアクセスタイムが大きい。
Incidentally, the state of the buffer memory during block transfer is in an unstable state in which a directory is registered in the address array 21, but no data is yet prepared in the data array 22. In addition, block transfer requires a long access time because the main storage device 2 is accessed.

しかし、この発明によればその空きを利用してストアバ
ッファ13の掃出しを行なってもバッファメモリ12に
矛盾をきたすことがない。例えば主記憶装置2にブロッ
ク転送要求を出して最初の読出データが送られてくるま
で10 T及びアドレスアレイ21のディレクトリ登録
に2Tかかるとし、ストアバッファ12の容量を4エン
トリとすれば、1回のブロック転送の間にストアバッフ
ァ13の書込要求はすべて掃出し可能となる。
However, according to the present invention, even if the store buffer 13 is flushed out using the empty space, no inconsistency occurs in the buffer memory 12. For example, if it takes 10T to send a block transfer request to the main storage device 2 and the first read data is sent, and 2T to register the directory in the address array 21, and if the capacity of the store buffer 12 is 4 entries, then one All write requests in the store buffer 13 can be flushed out during block transfer.

また、読出要求に際し、ストアバッファからの掃出しを
最小限に留めることにょシ試用データの遅れを防ぐこと
ができる。
Further, when a read request is made, by minimizing the amount of data being purged from the store buffer, delays in trial data can be prevented.

この発明によれば、ブロック転送中のストアバッファの
掃出しが容易に行なえ、まだ読出吸水に対するストアバ
ッファの掃出しを最小限に押さえ読出データをはやく要
求元に送出できるなどの効果がある。
According to the present invention, the store buffer can be easily flushed out during block transfer, and the store buffer flushing due to read water absorption can be kept to a minimum and read data can be quickly sent to the request source.

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

第1図はこの発明の情報処理装置6゛の一例を示すブロ
ック図、第2図は第1図中のバッファメモリ及びストア
バッファの詳細例を示すブロック図、第3図は読出要求
に対する動作を表現した図、第4図はストアバッファの
掃出しの一例を示すタイムチャートである。 1:情報処理装置、2:主記憶装置、3:インク7ff
l−−ス、11:演算処理部、12:バッファメモリ、
13ニスドアバツフア、13−1:ストアバソファのア
ドレス部、、13−2ニスドアバツフアの1込デ一タ部
、21ニアドレスアレイ、22:データアレイ、23 
: ST]3−AI)R。 24 : 5TB−WD、2 s :バッフ7RZB。 31〜38:レジスタ、41〜43:切挨回絡44〜4
6:比較回路。 特許出願人  日本電気株式会社 代理人 草野 卓 71図
FIG. 1 is a block diagram showing an example of an information processing device 6 of the present invention, FIG. 2 is a block diagram showing a detailed example of the buffer memory and store buffer in FIG. 1, and FIG. The illustrated diagram, FIG. 4, is a time chart showing an example of purging the store buffer. 1: Information processing device, 2: Main storage device, 3: Ink 7ff
11: Arithmetic processing unit, 12: Buffer memory,
13 varnish buffer, 13-1: address section of store buffer, 13-2 1-inclusive data section of varnish buffer, 21 near address array, 22: data array, 23
: ST]3-AI)R. 24: 5TB-WD, 2s: Buff 7RZB. 31-38: Register, 41-43: Cutting circuit 44-4
6: Comparison circuit. Patent Applicant NEC Corporation Agent Taku Kusano Figure 71

Claims (1)

【特許請求の範囲】[Claims] (1)主記憶装置と接続され、その主記憶装置の記憶内
容の写しをブロック単位で保持するバッファメモリを有
する情報処理装置において、前記主記憶装置及び前記バ
ッファメモリへの引込要求を貯蔵しておくストアバッフ
ァを備え、そのストアバッファはそのストアバッファに
・貯蔵されているすべての書込アドレスと読出要求に付
随する読出アドレスとを比較する手段を持ち、この比較
手段はブロック単位で比較して一致を検出する第1比較
手段と、あらかじめ設定された書込データ幅単位で比較
して一致を検出する第2比較手段とを含むことを特徴と
する情報処理装置。
(1) In an information processing device having a buffer memory connected to a main memory and holding a copy of the memory contents of the main memory in units of blocks, a request for retrieval to the main memory and the buffer memory is stored. The store buffer has a means for comparing all write addresses stored in the store buffer with a read address associated with a read request, and this comparing means compares block by block. An information processing apparatus comprising: a first comparing means for detecting a match; and a second comparing means for comparing in preset write data width units to detect a match.
JP57152034A 1982-08-31 1982-08-31 Information processing device Granted JPS5942686A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP57152034A JPS5942686A (en) 1982-08-31 1982-08-31 Information processing device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP57152034A JPS5942686A (en) 1982-08-31 1982-08-31 Information processing device

Publications (2)

Publication Number Publication Date
JPS5942686A true JPS5942686A (en) 1984-03-09
JPS6343774B2 JPS6343774B2 (en) 1988-09-01

Family

ID=15531603

Family Applications (1)

Application Number Title Priority Date Filing Date
JP57152034A Granted JPS5942686A (en) 1982-08-31 1982-08-31 Information processing device

Country Status (1)

Country Link
JP (1) JPS5942686A (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6266348A (en) * 1985-09-18 1987-03-25 Nec Corp Store check system for cache memory controller
JPS63173146A (en) * 1987-01-13 1988-07-16 Yokogawa Electric Corp Cache memory control system
JPS63302033A (en) * 1987-05-14 1988-12-08 ピーピージー・インダストリーズ・インコーポレイテッド Chip resistive film
JPH03288245A (en) * 1990-04-03 1991-12-18 Mitsubishi Electric Corp Data processor
JPH04287125A (en) * 1991-03-15 1992-10-12 Koufu Nippon Denki Kk Information processor

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5324260A (en) * 1976-08-19 1978-03-06 Matsushita Electric Works Ltd Open circuit delayed non-contact relay

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5324260A (en) * 1976-08-19 1978-03-06 Matsushita Electric Works Ltd Open circuit delayed non-contact relay

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6266348A (en) * 1985-09-18 1987-03-25 Nec Corp Store check system for cache memory controller
JPS63173146A (en) * 1987-01-13 1988-07-16 Yokogawa Electric Corp Cache memory control system
JPS63302033A (en) * 1987-05-14 1988-12-08 ピーピージー・インダストリーズ・インコーポレイテッド Chip resistive film
JPH03288245A (en) * 1990-04-03 1991-12-18 Mitsubishi Electric Corp Data processor
JPH04287125A (en) * 1991-03-15 1992-10-12 Koufu Nippon Denki Kk Information processor

Also Published As

Publication number Publication date
JPS6343774B2 (en) 1988-09-01

Similar Documents

Publication Publication Date Title
JPS5830319Y2 (en) computer system
JP2553274B2 (en) High speed data access system
US4858111A (en) Write-back cache system using concurrent address transfers to setup requested address in main memory before dirty miss signal from cache
US5530833A (en) Apparatus and method for updating LRU pointer in a controller for two-way set associative cache
JPS62145340A (en) Cache memory control system
JPS5942686A (en) Information processing device
CA1229423A (en) Look-aside buffer lru marker controller
US5996062A (en) Method and apparatus for controlling an instruction pipeline in a data processing system
JPH07129468A (en) Main memory controller
WO2024066496A1 (en) Data access method and apparatus
JPH11161545A (en) Control method for closely coupled multiprocessor system, closely coupled multiprocessor system and storage medium therefor
EP0475730A2 (en) Write-read/write-pass memory subsystem cycle
JP2000339218A (en) Fault processor for cache memory, fault processing method for cache memory and multiprocessor system
JPS62226348A (en) Main memory and concurrently main memory control device
JPH0769862B2 (en) Cache memory device
JPH06309229A (en) Data processor
JPH0822416A (en) Control method for cache memory
JPS63247852A (en) Cache memory control method
JPS5829186A (en) Information processor
JPH0511331B2 (en)
JPH04239936A (en) Cache controller
JPH0387949A (en) Cache memory controller
JPH01177152A (en) Data processing system
JPH11149410A (en) System for transmitting cancel signal for transaction exclusively hit to copy tag memory
JPS6310461B2 (en)