JPS6240554A - Buffer memory block prefetching system - Google Patents

Buffer memory block prefetching system

Info

Publication number
JPS6240554A
JPS6240554A JP60179798A JP17979885A JPS6240554A JP S6240554 A JPS6240554 A JP S6240554A JP 60179798 A JP60179798 A JP 60179798A JP 17979885 A JP17979885 A JP 17979885A JP S6240554 A JPS6240554 A JP S6240554A
Authority
JP
Japan
Prior art keywords
buffer memory
block
request
memory
address
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
JP60179798A
Other languages
Japanese (ja)
Inventor
Yuzo Omori
大森 祐三
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by NEC Corp filed Critical NEC Corp
Priority to JP60179798A priority Critical patent/JPS6240554A/en
Publication of JPS6240554A publication Critical patent/JPS6240554A/en
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

PURPOSE:To decrease a useless prefetch of a block by executing a prefetch processing of a block data, only when the next block of the block concerned is in the same page. CONSTITUTION:At the time of a buffer memory mishit processing, a registration to a buffer memory directory 17 is executed by the first request register 11, and thereafter, request information is sent to the second request register 12 and the third request register 13 again. In this case, when shifting a block from the register 12 to the register 13, a block address in a page is added by an addition counter 20 of the block address in the page. In this regard, when an overflow is generated at the time of this addition, a prefetch of a block data is terminated. That is to say, it is because as for the prefetch of the block data exceeding a page, its prefetch effect cannot be expected.

Description

【発明の詳細な説明】 (産業上の利用分野) 本発明は主メモリ装置の一部のデータを保持してバッフ
ァメモリを制御するメモリ制御装置に関し、特にそのブ
ロックデータ先取多方式に関する。
DETAILED DESCRIPTION OF THE INVENTION (Field of Industrial Application) The present invention relates to a memory control device that holds part of data in a main memory device and controls a buffer memory, and particularly relates to a block data preemption method thereof.

(従来の技術) 主メモリ装置のデータの一部を保持し、主メモリ装置に
比較して高速動作を行うバッファメモリは、みかけ上の
メモリ性能を大きく向上させることが可能なために多く
の装置で採用されている。
(Prior Art) Buffer memory, which holds part of the data in the main memory device and operates at a higher speed than the main memory device, is used in many devices because it can greatly improve the apparent memory performance. It is adopted in

このみかけ上のメモリ性能をよシ向上させるためKは、
バッファメモリ上に必要とするデータが存在する確率(
バッファメモリヒツト率と呼ぶ)を高くする必要がある
。このためにはバッファメモリ容量を増加させればよい
が、これにはハードウェア量の増大、ならびにバッファ
メモリの速度低下という問題がある。
In order to improve this apparent memory performance, K is
Probability that the required data exists in the buffer memory (
It is necessary to increase the buffer memory hit rate. For this purpose, the buffer memory capacity can be increased, but this has the problem of increasing the amount of hardware and reducing the speed of the buffer memory.

バッファ容量を増加させずにバッファメモリヒツト率を
上げる方法として、従来からブロックデータの先取りが
公知である。ここで、ブロックとはバッファメモリ上に
登録するデータの単位である。ブロックの先取シとは、
るるブロックにアクセスがめったとき、次のアドレスの
ブロックをあらかじめ主メモリ装置から先取りしておく
処理方式である。これはプログラムの性質としであるア
クセスが発生したとき、近い時間にそのアドレス近傍の
データがアクセスされる確率が高いことを利用し、アク
セスされる前にバッファメモリ上に先取シしておくこと
によりバッファメモリヒツト率を向上させようとするも
のである。
As a method of increasing the buffer memory hit rate without increasing the buffer capacity, pre-fetching of block data is conventionally known. Here, a block is a unit of data registered on the buffer memory. What is block pre-emption?
This is a processing method in which when a block is rarely accessed, the block at the next address is prefetched from the main memory device. This takes advantage of the fact that when a certain access occurs, there is a high probability that data near that address will be accessed in the near future, which is a characteristic of programs, and by preemptively storing data in the buffer memory before it is accessed. This is intended to improve the buffer memory hit rate.

(発明が解決しようとする問題点) しかしながら、上述した従来のブロックデータの先取シ
には次のような問題がある。主メモリ装置からバッファ
メモリ上に新たにブロックデータを登録する際には、バ
ッファメモリのディレクトリへの登録、バッファメモリ
上の置換場所の決定、ならびにブロックデータのバッフ
ァメモリへの書込み処理が必要になるが、このために他
のバッファメモリアクセス処理が妨げられて遅らされる
という欠点がある。また、主メモリ装置にもブロックデ
ータの読出しの負荷がかかり、他のアクセ、スの妨げと
なる。先取りされたブロックデータが後続アクセスによ
って大部分使用されるならば、あまシ損失がなく、バッ
ファメモリのヒツト率向上による効果は大きいが、後続
アクセスで使用される率が低いとかえって性能上の損失
を招きかねないことになるという欠点がある。
(Problems to be Solved by the Invention) However, the above-described conventional block data preemption system has the following problems. When registering new block data from the main memory device to the buffer memory, it is necessary to register it in the buffer memory directory, determine the replacement location on the buffer memory, and write the block data to the buffer memory. However, this has the disadvantage that other buffer memory access processing is hindered and delayed. Further, the main memory device is also burdened with reading the block data, which hinders other accesses. If most of the prefetched block data is used by subsequent accesses, there will be no ambiguity loss, and the effect of improving the buffer memory hit rate will be large, but if the rate of block data used by subsequent accesses is low, there will be a loss in performance. The disadvantage is that it can lead to

本発明の目的は、ブロックデータ先取シの効果を上げる
ため、先取シされたデータの後続アクセスでの使用率を
向上させ、ブロックデータ先取9処理が後続のバッファ
メモリアクセス処理を妨げることか少ない環境で上記先
取りを行うことによって上記欠点を除去し、高いバッフ
ァメモリへの読出し/書込みアクセス頻度のもとでもブ
ロックデータの先取シ処理による後続バッファメモリア
クセス処理への影響を避けることができるように構成し
たバッファメモリブロック先取υ方式を提供することに
ある。
An object of the present invention is to improve the usage rate of preempted data in subsequent accesses in order to increase the effectiveness of block data prefetching, and to create an environment in which block data prefetching 9 processing is less likely to interfere with subsequent buffer memory access processing. By performing the above-mentioned pre-fetching, the above-mentioned disadvantages are eliminated, and even under high frequency of read/write access to the buffer memory, the block data pre-fetching process is configured to avoid the influence on subsequent buffer memory access processing. The purpose of the present invention is to provide a buffer memory block preemption method.

(問題点を解決するための手段) 本発明によるバッファメモリブロック先取シ方式は1台
以上の演算制御装置と、1台以上の入出力制御装置と、
1台以上の主メモリ装置と、演算制御装置および入出力
制御装置からのメモリリクエストを受けて主メモリ装置
へのメモリアクセスを仲介するためのメモリ制御装置と
を含む情報処理システムにおけるものであって、メモリ
制御装置はバッファメモリと、アドレス加算手段と、索
引先取υ手段とを具備して構成したものである。
(Means for Solving the Problems) The buffer memory block preemption method according to the present invention includes one or more arithmetic control devices, one or more input/output control devices,
An information processing system including one or more main memory devices and a memory control device for receiving memory requests from an arithmetic control device and an input/output control device and mediating memory access to the main memory device, , the memory control device comprises a buffer memory, address addition means, and index prefetch means.

パックアメモリは、主メモリ装置のデータの一部分の写
しを保持するためのものである。
Pack-a-memory is for holding a copy of a portion of the data in the main memory device.

アドレス加算手段はメモリリクエスト処理に際シ、対象
データがバッファメモリ上に存在しないか、または存在
してもメモリリクエストが先取りされたバッファメモリ
ブロックに対する初めてのアクセスであるとき、データ
の属するバッファメモリブロックの次のブロックアドレ
スを求めるリクエストアドレスを加算するためのもので
ある。
The address addition means is used when processing a memory request, when the target data does not exist in the buffer memory, or even if it exists, the memory request is the first access to the prefetched buffer memory block, the buffer memory block to which the data belongs This is to add the request address for the next block address.

索引先取シ手段は、加算によってもリクエストアドレス
の実ページ番号部が変らず、ページ内アドレスのみの変
化であるときには加算結果のアドレスで対応するバッフ
ァメモリブロックのバッファメモリへの登録の有無を索
引し、索引の結果が無であるときにはバッファメモリブ
ロックのバッファメモリ上への先取りを行うためのもの
である。
If the actual page number part of the request address does not change due to the addition and only the intra-page address changes, the index preemption means uses the address of the addition result to index whether or not the corresponding buffer memory block is registered in the buffer memory. , to prefetch the buffer memory block onto the buffer memory when the index result is null.

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

第1図は本発明によるバッファメモリブロック先取シ方
式を実現する一実施例を示すブロック図であシ、第2図
は第1図のバッファメモリディレクトリの内部の情報形
式例を示す説明図である。
FIG. 1 is a block diagram showing an embodiment of the buffer memory block preemption method according to the present invention, and FIG. 2 is an explanatory diagram showing an example of the information format inside the buffer memory directory of FIG. 1. .

第1図において、101.102はそれぞれすクエスト
受付は回路、11は第1のリクエストレジスタ、12は
第2のリクエストレジスタ、13は第8のリクエストレ
ジスタ、14は主メモリアクセスレジスタ、15は書込
みデータレジスタ、16は読出しデータレジスタ、11
はバッファメモリディレクトリ、18はバッファメモリ
、191〜195は先取シ指示ビット、20は加算カウ
ンタ、22はディレクトリレジスタである。
In FIG. 1, 101 and 102 are respectively quest reception circuits, 11 is a first request register, 12 is a second request register, 13 is an eighth request register, 14 is a main memory access register, and 15 is a write Data register, 16 is read data register, 11
18 is a buffer memory directory, 191 to 195 are pre-emption instruction bits, 20 is an addition counter, and 22 is a directory register.

第1図において、メモリ制御装置5は演算制御装置1、
あるいは入出力制御装置2からのメモリリクエストおよ
びそのリクエスト種類、リクエストアドレス、ならびに
書込みデータのようなリクエスト情報を信号1601.
502から受取り、主メモリ装置4へのメモリアクセス
処理を行う。
In FIG. 1, the memory control device 5 includes the arithmetic control device 1,
Alternatively, request information such as a memory request from the input/output control device 2, its request type, request address, and write data is sent to the signal 1601.
502 and performs memory access processing to the main memory device 4.

本発明の迩用爆れるメモリ制御装置3にはバッファメモ
リ18が備えられている。大形の情報処理システムの高
速比は半導体素子技術の進歩とともに進展しているが、
演算制御装置1や入出力制御装置2の処理速度の向上に
対して主メモリ装置4のメモリ素子の処理速度は相対的
に改善されていない。このため、演算制御装置1の内部
のみでなく、メモリ制御装置3の内部にも演算制御装置
1よシ処理速度は遅いが容量の大きいバッファメモリ1
8を設け、みかけ上のメモリアクセス性能が向上されて
いる。
The portable memory control device 3 of the present invention is equipped with a buffer memory 18. The high speed ratio of large information processing systems has progressed with advances in semiconductor device technology, but
Although the processing speed of the arithmetic control unit 1 and the input/output control unit 2 has improved, the processing speed of the memory elements of the main memory device 4 has not been improved relatively. Therefore, not only the inside of the arithmetic and control device 1 but also the memory control device 3 has a buffer memory 1 which has a slower processing speed but a larger capacity than the arithmetic and control device 1.
8, the apparent memory access performance is improved.

次に、メモリ制御装置3の内部の動作を説明する。Next, the internal operation of the memory control device 3 will be explained.

演算制御装置1や入出力制御装置2から信号線501.
502を介して送出されたリクエスト情報は、リクエス
ト受付は回路101.102に受付けられる。リクエス
ト受付は回路101,102は第1図の例に限らず、演
算制御装f!L1や入出力制御装置2が複数台置かれて
いるときには、それに伴ってリクエスト受付は回路10
2の台数はさらに増加する。リクエスト受付は回路10
1゜102によって受付けられたリクエスト群のなかか
ら一つのリクエストが選択され、そのリクエスト情報が
第1のリクエストレジスタ11に入れられる。
A signal line 501.
Request information sent via 502 is accepted by circuits 101 and 102. For request reception, the circuits 101 and 102 are not limited to the example shown in FIG. When multiple L1s and input/output control devices 2 are installed, requests are accepted by the circuit 10.
2 will further increase in number. Request reception is at circuit 10
One request is selected from the request group accepted by 1° 102, and the request information is entered into the first request register 11.

第1のリクエストレジスタ11ではバッファメモリブイ
レフ) IJ I Tの索引が行われる。
In the first request register 11, indexing of the buffer memory (IJIT) is performed.

バッファメモリディレクトリ17にはバッファメモリ1
8で保持される主メモリ装置データのアドレス情報が登
録されておシ、これを索引することによシ所要データの
バッファメモリ18上でのデータの有無(バッファメモ
リヒツトおよびバッファメモリミスヒツトと呼ぶ)、な
らびにデータがバッファメモリ18上に存在するときの
存在場所の情報がディレクトリレジスタ22に得られる
Buffer memory directory 17 contains buffer memory 1.
The address information of the main memory device data held in 8 is registered, and by indexing this, it is possible to determine the presence or absence of the required data on the buffer memory 18 (referred to as buffer memory hits and buffer memory misses). ), as well as information on the location when the data exists on the buffer memory 18 are obtained in the directory register 22.

バッファメモリミスヒツト時には、主メモリ装置4に対
して第2のリクエストレジスタ12を介して主メモリア
クセスレジスタ14からブロックデータ続出し要求が送
出される。主メモリ装置4から信号線52を介して読出
されたブロックデータは書込みデータレジスタ15を介
してバッファメモIJ 18 K書込まれ、さらに所要
のデータが読出しデータレジスタ16を介してメモリリ
クエストを送出した装置へ返される。
When a buffer memory miss occurs, a block data successive retrieval request is sent to the main memory device 4 from the main memory access register 14 via the second request register 12. The block data read from the main memory device 4 via the signal line 52 is written to the buffer memory IJ 18K via the write data register 15, and further required data is sent via the read data register 16 as a memory request. returned to the device.

一方、リクエストによシ処理を並行して行い、バッファ
メモリミスヒツトを発生した場合には、リクエスト情報
は第2のリクエストレジスタ12、ならびに第8のリク
エストレジスタ1Sを介して再び第1のリクエストレジ
スタ11に送出され、以後の同一ブロックへのメモリリ
クエストではバッファメモリヒツトとなるように、バッ
ファメモリディレクトリ17へのブロックアドレス登録
が行われる。
On the other hand, if requests are processed in parallel and a buffer memory miss occurs, the request information is transferred to the first request register via the second request register 12 and the eighth request register 1S. 11, and the block address is registered in the buffer memory directory 17 so that subsequent memory requests to the same block will result in a buffer memory hit.

W2B図はバッファメモリディレクトリ17の内容の一
形式を示すが、バッファメモリディレクトリ17の各エ
ントリはv、p、ならびにアドレスの情報を含み、バッ
ファメモリディレクトリ11は多数のエントリよシ構成
される。各エントリがバッファメモリ1Bの各ブロック
に対応し、■ビットはバッファメモリブロックデータの
有効性を示し、アドレスはそのブロックデータの主メモ
リ装置アドレス情報を示す。Pビットはブロックデータ
先取りのために付加されたビットで、Pビットがオンの
ときに上記のブロックは先取シされたブロックで、未だ
メモリリクエストによってアクセスされたことがない状
態であることが示されている0ストアイン(5tore
 −in)方式のノ(ラフアメモリディレクトリ17で
は、さらに修飾ピッ)Mもある。演算制御装置1からの
メモリリクエストでバッファメモリミスヒツトが発生し
、前述のようなバッファメモリディレクトリ1きの登録
を行うときにはPビットはオフ状態として登録される。
The W2B diagram shows one form of the contents of the buffer memory directory 17, where each entry in the buffer memory directory 17 includes v, p, and address information, and the buffer memory directory 11 is composed of a large number of entries. Each entry corresponds to each block of the buffer memory 1B, the ■ bit indicates the validity of the buffer memory block data, and the address indicates the main memory device address information of the block data. The P bit is a bit added for block data prefetching, and when the P bit is on, it indicates that the above block is a preempted block that has not yet been accessed by a memory request. There are 0 stores in (5 stores)
-in) method (in the rough memory directory 17, there is also a modified pick) M. When a buffer memory miss occurs due to a memory request from the arithmetic and control unit 1 and the buffer memory directory 1 is registered as described above, the P bit is registered as an OFF state.

ブロックデータの先取りを行う本実施例では、バッファ
メモリミスヒツト処理時、さらに以下の動作が行われる
In this embodiment in which block data is fetched in advance, the following operations are further performed during buffer memory miss processing.

第1のリクエストレジスタ11でバッファメモリディレ
クトリ17への登録を行った後、リクエスト情報は再び
第2のリクエストレジスタ12、ナラヒに第8のリクエ
ストレジスタ13に送られる。
After the first request register 11 registers the request information in the buffer memory directory 17, the request information is sent again to the second request register 12 and then to the eighth request register 13.

このとき、第2のリクエストレジスタ12から第3のリ
クエストレジスタ15へのブロックの移行の際、ページ
内ブロックアドレスの加算カウンタ20によりリクエス
トアドレスにはページ内のブロックアドレスが加算され
る。
At this time, when the block is transferred from the second request register 12 to the third request register 15, the in-page block address addition counter 20 adds the in-page block address to the request address.

大形の情報処理システムでは一般に論理アドレス方式が
採用されているが、斯かるシステムでは演算制御装置1
での命令実行、あるいはシステムによっては入出力デー
タ転送も論理アドレス上で実行される。論理アドレス空
間は多数のページに分割されており、論理アドレスでの
論理ページ番号と、主メモリ装置4のメモリアドレスで
ある実アドレスでの実ページ番号との関係は演算制御装
置1の内部に設けられた高速アドレス変換バッファによ
り対応づけられる。ここで、論理ページ内アドレスト実
ページ内のアドレスとは同じものである。
A logical address method is generally adopted in large-scale information processing systems, but in such systems, the arithmetic and control unit 1
Execution of instructions at a logical address or, depending on the system, input/output data transfer is also performed on a logical address. The logical address space is divided into a large number of pages, and the relationship between the logical page number at the logical address and the real page number at the real address, which is the memory address of the main memory device 4, is established inside the arithmetic control unit 1. A fast address translation buffer is provided. Here, the address within the logical page is the same as the address within the real page.

なお、一般にページの大きさは2にバイト、あるいは4
にバイトであり、バッファメモリ18のブロックの大き
さは82バイト〜128バイト程度がよく採用されてい
る。
Generally, the page size is 2 bytes or 4 bytes.
The block size of the buffer memory 18 is often about 82 bytes to 128 bytes.

プログラム上の近傍アドレスとは論理アドレス上での近
傍アドレスであり、実アドレス上での近傍アドレスを意
味するものではない。つまり、実アドレス上での隣のブ
ロックは同一ページ内である限り論理アドレス上でも隣
のブロックであるが、ページ番号が異なる場合には論理
アドレス上でも隣のブロックとは限らない。
A nearby address on a program is a nearby address on a logical address, and does not mean a nearby address on a real address. In other words, an adjacent block on a real address is also an adjacent block on a logical address as long as it is within the same page, but if the page numbers are different, it is not necessarily an adjacent block on a logical address.

以上の意味において、ページを越えるようなブロックデ
ータの先取りは、その先取りの効果をもたないものとな
る。したがって、上記ページ内ブロックアドレスを加算
するための加算カウンタ20によるページ内のブロック
アドレス加JL時にオーバフローが発生すると、本実施
例においてはブロックデータの先取りを中止する。
In the above sense, prefetching block data that exceeds a page has no effect. Therefore, if an overflow occurs when the addition counter 20 adds up the block address within the page to JL, the prefetching of the block data is stopped in this embodiment.

オーバフローが発生しないときには、次のブロックアド
レスを示すように加算されたリクエストアドレスが第8
のリクエストレジスタ13から第1のリクエストレジス
タ11に送出され、第1のリクエストレジスタ11では
再びバッファメモリディレクト’J L 7の索引が行
われる。バッファメモリヒツトであるとそこで処理は終
了するが、ミスヒツトであると前述のようなメモリ装置
4へのブロックデータ読出し要求、およびバッファメモ
リ18への登録が行われる。ここで、バッファメモリデ
ィレクトリ17へのPビットはオンにされて登録される
。つまシ、このブロックは先取シされたブロックで、未
だ実際のメモリリクエストではアクセスされていないブ
ロックであることが示される。
When no overflow occurs, the request address added to indicate the next block address is the 8th block address.
is sent from the request register 13 to the first request register 11, and the first request register 11 indexes the buffer memory directory 'J L 7 again. If there is a buffer memory hit, the process ends, but if there is a miss, a block data read request to the memory device 4 and registration to the buffer memory 18 are performed as described above. Here, the P bit to the buffer memory directory 17 is turned on and registered. This indicates that this block has been pre-empted and has not yet been accessed by an actual memory request.

以上は、演算制御装置1または入出力制御装置2からの
メモリリクエストがバッファメモリミスヒツトとなった
ときの処理であるが、次にバッファメモリヒツトとなっ
たときの処理を説明する。
The above is the process when a memory request from the arithmetic control unit 1 or the input/output control unit 2 results in a buffer memory miss. Next, the process when a buffer memory hit occurs will be explained.

第1のリクエストレジスタ11でバッファメモリディレ
クトリ17の索引がまず行われるが、リクエストが読出
し要求のときには第2のリクエストレジスタ12を介し
て送出されたアドレスおよびディレクトリレジスタ22
の情報でバッフアメ。
The buffer memory directory 17 is first indexed in the first request register 11, but when the request is a read request, the address and directory register 22 are sent via the second request register 12.
Buff candy with information.

モリ18から所要データが読出され、読出しデータレジ
スタ16を介してメモリリクエストを送出した装置へ返
される。リクエストが書込み要求であるときには、第2
のリクエストレジスタ12を介したアドレスおよびディ
レクトリレジスタ22の情報で指定されたバッファメモ
リ18に、書込みデータレジスタ15のデータが書込ま
れる。
The required data is read from the memory 18 and returned via the read data register 16 to the device that sent the memory request. When the request is a write request, the second
The data in the write data register 15 is written into the buffer memory 18 specified by the address via the request register 12 and the information in the directory register 22.

第1のリクエストレジスタ11からのバッファメモリデ
ィレクトリ11の累引時にヒツトしたエントリのPビッ
トが調べられ、Pビットがオフであるとブロックデータ
の先取シは抑えられるが、Pビットがオンであると第2
のリクエストレジスタ12、ならびに第8のリクエスト
レジスタ13を介して再びリクエスト情報を第1のリク
エストレジスタ11に戻し、バッファメモリディレクト
リ17の対応するエントリのPビットオフ時の処理が行
われる。さらに、Pビットがオンで1、バッファメモリ
ミスヒツトのときと同様なブロックデータの先取り処理
を行う。つまり、リクエストアドレスのページ内ブロッ
クアドレス加算カクンメ20による加算が行われ、オー
バフローが検出されないときには加算されたアドレスの
バッファメモリディレクトリ17の索引が行われる。索
引の結果、バッファメモリ18がミスヒツトであればブ
ロックデータの先取シが行われ、新しく先取りブロック
がPビットをオンにしてバッファメモリディレクトリ1
7およびバッファメモリ18に登録される。
The P bit of the hit entry is checked when the buffer memory directory 11 is accumulated from the first request register 11. If the P bit is off, preemption of block data can be suppressed, but if the P bit is on, the P bit is checked. Second
The request information is returned to the first request register 11 via the request register 12 and the eighth request register 13, and processing when the P bit of the corresponding entry in the buffer memory directory 17 is turned off is performed. Further, when the P bit is on, it is 1, and block data prefetch processing is performed in the same way as when there is a buffer memory miss. That is, the request address is added by the in-page block address addition kakunme 20, and when no overflow is detected, the added address is indexed in the buffer memory directory 17. As a result of the indexing, if there is a miss in the buffer memory 18, block data is prefetched, and the newly prefetched block turns on the P bit and is stored in the buffer memory directory 1.
7 and buffer memory 18.

(発明の効果) 以上説明したように本発明では、メモリ制御装置間に設
置されたバッファメモリの処理において、メモリ制御装
置へのメモリリクエストの属するブロックと、このブロ
ックの次のブロックが同一ページ内であるときのみブロ
ックデータの先取ML理を行うようにしたことにより、
無駄なブロックの先取りを減少させ、またメモリ制御装
置内でのブロックデータの先取りは演算制御装置内での
バッファメモリヒツト処理の妨げとはならないため、ブ
ロックデータの先取り効果を上げ、メモリ装置内のバッ
ファメモリヒツト率を改善することにより性能を向上さ
せることができる。
(Effects of the Invention) As explained above, in the present invention, in processing the buffer memory installed between memory control devices, the block to which a memory request to the memory control device belongs and the block next to this block are within the same page. By performing preemptive ML processing on block data only when
This reduces unnecessary block prefetching, and since block data prefetching within the memory control unit does not interfere with buffer memory hit processing within the arithmetic control unit, it increases the effect of block data prefetching and improves the block data prefetching within the memory device. Performance can be improved by improving the buffer memory hit rate.

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

第1図は、本発明によるバッファメモリブロック先取り
方式を実現する一実施例を示すブロック図である。 第2図は、第1図のバッファメモリディレクトリの内部
の情報形式例を示す説明図である。 1・・・演算制御装置 2・・・入出力制御装置 3・・・メモリ制御装置 4φ・・主メモリ装置 101.102・・・リクエスト受付は回路11〜15
−−−リクエストレジスタ 14・壷昏主メモリアクセスレジスタ 15・・e書込みデータレジスタ 16・・・続出しデータレジスタ 17・φ・バッファメモリディレクトリ18・・・バッ
ファメモリ 191〜193・・・先取υ指示ビット20・・・加算
カウンタ
FIG. 1 is a block diagram showing an embodiment of the buffer memory block prefetching method according to the present invention. FIG. 2 is an explanatory diagram showing an example of the information format inside the buffer memory directory of FIG. 1. 1... Arithmetic control device 2... Input/output control device 3... Memory control device 4φ... Main memory device 101.102... Request reception is performed by circuits 11 to 15
---Request register 14, main memory access register 15, e-write data register 16, continuation data register 17, φ, buffer memory directory 18, buffer memory 191 to 193, preemption υ instruction Bit 20...addition counter

Claims (1)

【特許請求の範囲】[Claims] 1台以上の演算制御装置と、1台以上の入出力制御装置
と、1台以上の主メモリ装置と、前記演算制御装置およ
び前記入出力制御装置からのメモリリクエストを受けて
前記主メモリ装置へのメモリアクセスを仲介するための
メモリ制御装置とを含む情報処理システムにおけるバッ
ファメモリブロック先取り方式であつて、前記メモリ制
御装置は前記主メモリ装置のデータの一部分の写しを保
持するためのバッファメモリと、メモリリクエスト処理
に際し、対象データが前記バッファメモリ上に存在しな
いか、または存在しても前記メモリリクエストが先取り
されたバッファメモリブロックに対する初めてのアクセ
スであるとき、前記データの属するバッファメモリブロ
ックの次のブロックアドレスを求めるリクエストアドレ
スを加算するためのアドレス加算手段と、前記加算によ
つても前記リクエストアドレスの実ページ番号部が変ら
ず、ページ内アドレスのみの変化であるときには、前記
加算結果のアドレスで対応するバッファメモリブロック
のバッファメモリへの登録の有無を索引し、前記索引の
結果が無であるときには前記バッファメモリブロックの
前記バッファメモリ上への先取りを行うための索引先取
り手段とを具備して構成したことを特徴とするバッファ
メモリブロック先取り方式。
one or more arithmetic control devices, one or more input/output control devices, one or more main memory devices, and receiving a memory request from the arithmetic control device and the input/output control device to the main memory device; a buffer memory block prefetching method in an information processing system, the buffer memory block prefetching method comprising: a memory control device for mediating memory access of the main memory device; , when processing a memory request, if the target data does not exist in the buffer memory, or even if it does exist, the memory request is the first access to the prefetched buffer memory block, the next buffer memory block to which the data belongs address adding means for adding a request address to obtain a block address; and when the actual page number part of the request address does not change due to the addition and only the intra-page address changes, the address of the addition result; index prefetching means for indexing whether or not a corresponding buffer memory block is registered in the buffer memory, and prefetching the buffer memory block onto the buffer memory when the result of the index is null. A buffer memory block prefetching method is characterized in that it is configured as follows.
JP60179798A 1985-08-15 1985-08-15 Buffer memory block prefetching system Pending JPS6240554A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP60179798A JPS6240554A (en) 1985-08-15 1985-08-15 Buffer memory block prefetching system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP60179798A JPS6240554A (en) 1985-08-15 1985-08-15 Buffer memory block prefetching system

Publications (1)

Publication Number Publication Date
JPS6240554A true JPS6240554A (en) 1987-02-21

Family

ID=16072077

Family Applications (1)

Application Number Title Priority Date Filing Date
JP60179798A Pending JPS6240554A (en) 1985-08-15 1985-08-15 Buffer memory block prefetching system

Country Status (1)

Country Link
JP (1) JPS6240554A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001318825A (en) * 2000-05-12 2001-11-16 Fujitsu Ltd Memory access control device and ATM control device
US6341334B1 (en) 1998-03-24 2002-01-22 Mitsubishi Denki Kabushiki Kaisha Bridge method, bus bridge, and multiprocessor system

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6341334B1 (en) 1998-03-24 2002-01-22 Mitsubishi Denki Kabushiki Kaisha Bridge method, bus bridge, and multiprocessor system
JP2001318825A (en) * 2000-05-12 2001-11-16 Fujitsu Ltd Memory access control device and ATM control device

Similar Documents

Publication Publication Date Title
US12321282B2 (en) Slot/sub-slot prefetch architecture for multiple memory requestors
US4583165A (en) Apparatus and method for controlling storage access in a multilevel storage system
US11500779B1 (en) Vector prefetching for computing systems
CN112527395B (en) Data prefetching method and data processing apparatus
CN112416817A (en) Prefetching method, information processing apparatus, device, and storage medium
US5784711A (en) Data cache prefetching under control of instruction cache
US11086632B2 (en) Method and apparatus for providing accelerated access to a memory system
US4648033A (en) Look-aside buffer LRU marker controller
US7111127B2 (en) System for supporting unlimited consecutive data stores into a cache memory
US5860096A (en) Multi-level instruction cache for a computer
JPS6240554A (en) Buffer memory block prefetching system
US6374344B1 (en) Methods and apparatus for processing load instructions in the presence of RAM array and data bus conflicts
US5426749A (en) Buffer control system using synonymic line address to retrieve second tag portion for fetch and store accesses while first tag portion is invalidated
JPH02301843A (en) Pre-fetch controlling system
US20050044326A1 (en) Processor and processor method of operation
JPS6240553A (en) Buffer memory block prefetching system
JPH0210450A (en) Prefetch control system for cache memory
JP3095831B2 (en) Computer operation method and computer
CN116700794A (en) Method and system for acquiring instruction to be executed
JP3013996B2 (en) Information processing device
JP2001229074A (en) Memory controller and information processor and memory control chip
EP1952235A2 (en) System and method for handling information transfer errors between devices
JPS63240651A (en) Cache memory
JPH086853A (en) Memory control method
JPH02259945A (en) Storing processing system