JPH0695317B2 - Prefetch control method for cache memory - Google Patents

Prefetch control method for cache memory

Info

Publication number
JPH0695317B2
JPH0695317B2 JP61035834A JP3583486A JPH0695317B2 JP H0695317 B2 JPH0695317 B2 JP H0695317B2 JP 61035834 A JP61035834 A JP 61035834A JP 3583486 A JP3583486 A JP 3583486A JP H0695317 B2 JPH0695317 B2 JP H0695317B2
Authority
JP
Japan
Prior art keywords
memory
block
data
processor
terminal
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP61035834A
Other languages
Japanese (ja)
Other versions
JPS62192831A (en
Inventor
俊勝 森
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 JP61035834A priority Critical patent/JPH0695317B2/en
Publication of JPS62192831A publication Critical patent/JPS62192831A/en
Publication of JPH0695317B2 publication Critical patent/JPH0695317B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】 「産業上の利用分野」 この発明は、キャッシュメモリにおいて要求があったブ
ロックデータが見いだされない場合におけるそのブロッ
クデータと次のブロックデータをロードするプリフェッ
チ制御方式に関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a prefetch control method for loading a requested block data and a next block data when a requested block data is not found in a cache memory.

「従来の技術」 プロセッサと主メモリとの間に小容量の高速なバッファ
メモリを設置することにより、実効的な主メモリのアク
セス時間を高速化しうることはコンピューティングサー
ベイ(Computing Survey)14巻3号1982年473〜530ペ
ージに詳しく述べられているように一般によく知られて
いる。
"Prior Art" By installing a small-capacity, high-speed buffer memory between the processor and the main memory, it is possible to speed up the effective access time of the main memory by computing survey (Computing Survey) Vol. 14 3 It is generally well known as detailed in Issue No. 1982, pages 473-530.

この手法は通常キャッシュメモリと呼ばれ、広く計算機
システムに使用されている。これは、計算機システム上
で実行されるプログラムのメモリアクセスにおいては局
所性があるという性質を利用したものであり、プロセッ
サから主メモリへのアクセスに際し、アクセスの行われ
たワードを含む一定サイズの連続した記憶位置(通常こ
れをブロックと呼ぶ)の内容を主記憶からキァッシュメ
モリに取り込むことにより、メモリアクセスの大部分
は、高速なキャッシュメモリへのアクセスですみ、低速
な主記憶へのアクセスを少なくすることができる。
This method is generally called a cache memory and is widely used in computer systems. This is because the memory access of the program executed on the computer system has the property of locality. When accessing the main memory from the processor, a continuous memory of a certain size including the accessed word is used. By fetching the contents of the specified memory location (usually called a block) from the main memory into the cache memory, most of the memory access is done by accessing the cache memory at high speed and reducing the access to main memory at low speed. be able to.

「発明が解決しようとする問題点」 キャッシュメモリにおけるブロックの大きさ(以下ブロ
ックサイズと呼ぶ)は、従来の大型コンピュータやミニ
コンピュータでは装置により固定されていた。これはそ
れぞれの装置で、CPU(中央処理装置)からキャッシュ
メモリ、主記憶までの設計を行っており、その装置で最
適な値を選択すればよかったからである。
"Problems to be Solved by the Invention" The size of a block in a cache memory (hereinafter referred to as a block size) is fixed by a device in a conventional large computer or mini computer. This is because each device was designed from the CPU (Central Processing Unit) to the cache memory and main memory, and it suffices to select the optimum value for that device.

ところが、汎用のマイクロコンピュータに外付けで使用
する汎用のキャッシュメモリチップを考えた場合、この
キャッシュメモリチップは種々の装置で使用されるた
め、ブロックサイズの最適値を設定しにくいという問題
点がある。例えば、ブロックサイズを大きくした方がヒ
ット率は向上するが、反面主記憶からキャッシュメモリ
へのブロック転送時のバスサイクル数が増し、バスの使
用率が増すために、装置全体の性能が向上しないといっ
た面が出てくる。
However, when considering a general-purpose cache memory chip that is externally used in a general-purpose microcomputer, this cache memory chip is used in various devices, and thus it is difficult to set the optimum value of the block size. . For example, a larger block size improves the hit rate, but on the other hand, the number of bus cycles during the block transfer from the main memory to the cache memory increases and the bus usage rate increases, so the performance of the entire device does not improve. Such a surface comes out.

また、主記憶からキャッシュメモリへのデータ転送速度
が遅い場合には、ブロック転送によるCPUの待ち時間が
大きくなり、平均アクセス時間が向上しないといった面
も出てくる。
In addition, when the data transfer speed from the main memory to the cache memory is slow, the waiting time of the CPU due to the block transfer increases, and the average access time does not improve.

この様な場合、ブロックサイズは小さく設定しておき、
局所性の高いアクセス(例えば、命令のフェッチ等)に
対しては、プリフェッチにより次のブロックのフェッチ
を行い、ブロックサイズをみかけ上大きくする方式が効
果的であることが知られている。
In this case, set the block size small,
It is known that a method of performing prefetch to fetch the next block to increase the apparent block size is effective for highly local access (for example, instruction fetch).

汎用のキャッシュメモリチップでは種々の装置で使用さ
れるため、どの様なアクセスがプリフェッチの効果があ
るかは装置によって異なる。従ってプロセッサのアクセ
スに対し、プリフェッチを行うか否かはプロセッサのア
クセス毎に、動的に切換えて制御することが好ましい。
Since a general-purpose cache memory chip is used in various devices, what kind of access has a prefetch effect depends on the device. Therefore, it is preferable to dynamically switch the access to the processor for each access of the processor as to whether or not to perform the prefetch.

「問題点を解決するための手段」 この発明は、ワンチップキャッシュメモリとして、同一
チップ上に当該チップの保持しているブロックを管理す
るためのディレクトリ、ブロックデータの保持のための
データメモリ、プロセッサからアクセスされたブロック
の次のブロックアドレスを計算するためのプリフェッチ
回路(加算器)および関連する制御回路を内蔵し、プロ
セッサからキャッシュメモリへのメモリアクセス要求の
通信のための入出力端子としてメモリアクセスの要求、
完了信号等のためのプロセッサアクセス制御信号端子、
プロセッサからのメモリアドレスのためのプロセッサア
ドレス信号端子、プロセッサとのデータのやりとりのた
めのプロセッサデータ信号端子、キャッシュメモリから
主記憶との間のメモリアクセス要求の通信のための入出
力端子としてメモリアクセス制御信号端子、メモリアド
レス信号端子、メモリデータ信号端子、当該キャッシュ
メモリチップにメモリアクセス要求のあったブロックが
存在しなかった場合に、そのブロックと共に次のブロッ
クまでをロードするか否かを制御するプリフェッチ端子
を持ち、 プロセッサからのメモリアクセス要求に際して、自チッ
プにおいて要求のあったブロックデータが見いだされた
場合には、自チップ内でアクセスを行い、自チップにお
いて要求のあったブロックデータが見い出されず、かつ
前記プリフェッチ端子が印加されている場合には、要求
のあったブロックデータとその次のブロックデータのロ
ードを行い、前記プリフェッチ端子が印加されていない
場合には、要求のあったブロックデータのみのロードを
行う。
"Means for Solving Problems" The present invention relates to, as a one-chip cache memory, a directory for managing blocks held by the chip on the same chip, a data memory for holding block data, and a processor. Built-in prefetch circuit (adder) for calculating the next block address of the block accessed from, and related control circuit, and memory access as input / output terminal for communication of memory access request from processor to cache memory Request of
Processor access control signal terminal for completion signal etc.,
Memory access as a processor address signal terminal for a memory address from the processor, a processor data signal terminal for exchanging data with the processor, and an input / output terminal for communication of a memory access request from the cache memory to the main memory Control signal terminal, memory address signal terminal, memory data signal terminal, if there is no block for which a memory access is requested in the cache memory chip, control whether to load the block up to the next block It has a prefetch pin, and when the memory access request from the processor finds the requested block data in its own chip, it makes an access in the own chip and the requested block data is not found in the own chip. And the pre When the fetch terminal is applied, the requested block data and the next block data are loaded, and when the prefetch terminal is not applied, only the requested block data is loaded. To do.

「実施例」 この発明の実施例におけるキャッシュメモリチップの構
成を第1図により説明する。この実施例においてはキャ
ッシュメモリチップは端子として図に示してないが、電
源、グランド、クロック等のための端子を備え、更にプ
ロセッサとの通信のための端子として、プロセッサから
のメモリへのアクセス要求の通知およびキャッシュメモ
リでのアクセスの完了通知のためのプロセッサアクセス
端子PC、メモリアドレスの通知のためのプロセッサアド
レス端子PA、データのやりとりのためのプロセッサデー
タ端子PDを持ち、また主記憶との通信のための端子とし
て、同様にメモリアクセス端子MC、メモリアドレス端子
MA、メモリデータ端子MDを持つ。これに加えてキャッシ
ュメモリチップは、このキャッシュメモリチップ内でブ
ロックが存在しなかった場合に、存在しなかったブロッ
クの次のブロックを主記憶からロードするか否かを制御
するためのプリフェッチ端子PRFを持つ。
[Embodiment] The configuration of a cache memory chip in an embodiment of the present invention will be described with reference to FIG. In this embodiment, the cache memory chip is not shown in the figure as a terminal, but it is provided with terminals for power supply, ground, clock, etc., and further, as a terminal for communication with the processor, an access request to the memory from the processor. Has a processor access pin PC for notification of access to the cache memory and completion of access to the cache memory, a processor address pin PA for notifying memory addresses, a processor data pin PD for exchanging data, and communication with the main memory. Similarly, as a terminal for memory access terminal MC, memory address terminal
It has MA and memory data terminal MD. In addition to this, the cache memory chip, if a block does not exist in this cache memory chip, prefetch pin PRF for controlling whether to load the block next to the block that does not exist from the main memory. have.

プロセッサアドレス端子PAはアドレスレジスタ11の入力
に接続されており、アドレスレジスタ11のブロックアド
レス部の出力はプリフェッチ回路12に印加されると共
に、マルチプロクサ13を通してディレクトリ14、メモリ
アドレス端子MAにも印加されている。
The processor address terminal PA is connected to the input of the address register 11, and the output of the block address part of the address register 11 is applied to the prefetch circuit 12 as well as to the directory 14 and the memory address terminal MA through the multiplexer 13. Has been done.

ディレクトリ14の一致アドレス出力FBAはデータメモリ1
5にブロックアドレスとして印加されると共にリプレー
スメント回路16にも印加されている。リプレースメント
回路16で生成された置換られるべきデータメモリ15上の
ブロックアドレスはディレクトリ14に書込みアドレスと
して印加されている。ディレクトリ14からの一致検出信
号Fは制御回路7に印加されている。プリフェッチ端子
PRFからの入力は同じく制御回路17に印加されている。
プロセッサデータ端子PDには読み出しデータレジスタ18
の出力側および書込みデータレジスタ19の入力側が接続
されている。読み出しデータレジスタ18の入力にはデー
タメモリ15からの読み出しデータが印加され、書込みデ
ータレジスタ19の出力は書込みデータとしてデータメモ
リ15に印加されていると共にメモリデータ端子MDが書込
みデータレジスタ19の入力側に接続されている。
Matching address output of directory 14 FBA is data memory 1
It is applied to 5 as a block address and also applied to the replacement circuit 16. The block address on the data memory 15 to be replaced, which is generated by the replacement circuit 16, is applied to the directory 14 as a write address. The coincidence detection signal F from the directory 14 is applied to the control circuit 7. Prefetch terminal
The input from the PRF is also applied to the control circuit 17.
The read data register 18 is connected to the processor data terminal PD.
The output side of and the input side of the write data register 19 are connected. The read data from the data memory 15 is applied to the input of the read data register 18, the output of the write data register 19 is applied to the data memory 15 as write data, and the memory data terminal MD is at the input side of the write data register 19. It is connected to the.

制御回路17はプロセッサアクセス端子PCから印加される
キャッシュメモリの初期化要求、メモリへの書込み、読
み出し要求等の指令を受けて対応する処理を行うための
制御回路で、ここで生成される主記憶へのアクセス要求
はメモリアクセス端子MCに印加されている。
The control circuit 17 is a control circuit for performing corresponding processing in response to commands such as a cache memory initialization request, memory write, and read request applied from the processor access terminal PC, and the main memory generated here. The access request to the memory access terminal MC is applied to the memory access terminal MC.

次にこのキャッシュメモリチップの動作を説明する。プ
ロセッサからプロセッサアクセス端子PCを介して制御回
路17にメモリアクセスの指令が印加されると制御回路17
はプロセッサアドレス端子PAに印加されているメモリア
ドレスをアドレスレジスタ11にセットしたうえで、この
ブロックアドレス部の値によりディレクトリ14を検索す
る。同時にプリフェッチ回路12では、次のブロックアド
レスの計算を行う。ディレクトリ14の検索により、一致
が検出されディレクトリ14の一致検出出力Fが値“1"を
出力した場合、即ち、アクセスの要求のあったアドレス
を含むブロックが自キャッシュメモリ上に存在する場合
にはディレクトリ14の出力する一致検出アドレスFBAに
よりプレースメント回路16を更新し、同じくディレクト
リ14の出力するブロックアドレスFBAおよびアドレスレ
ジスタ11のブロック内ワードアドレスの値をアドレスと
してデータメモリ15に対してアクセスを行う。即ちアク
セス要求が読み出し要求である場合にはデータメモリ15
を読み、読み出された値を読み出しデータレジスタ18に
格納し、この出力をプロセッサデータ端子PDに印加した
うえでプロセッサアクセス端子PCにアクセスの完了した
ことを知らせる信号を印加する。アクセス要求が書込み
要求である場合にはプロセッサデータ端子PD上の書込み
データを書込みデータレジスタ19にセットしたうえで、
この値をデータメモリ15に書込みプロセッサアクセス端
子PCにアクセスの完了したことを知らせる信号を印加す
る。
Next, the operation of this cache memory chip will be described. When a memory access command is applied to the control circuit 17 from the processor via the processor access terminal PC, the control circuit 17
Sets the memory address applied to the processor address terminal PA in the address register 11, and then searches the directory 14 by the value of the block address portion. At the same time, the prefetch circuit 12 calculates the next block address. When a match is detected by searching the directory 14 and the match detection output F of the directory 14 outputs the value “1”, that is, when the block including the address requested to be accessed exists in its own cache memory. The placement circuit 16 is updated by the match detection address FBA output by the directory 14, and the block address FBA output by the directory 14 and the word address in block of the address register 11 are also used as addresses to access the data memory 15. . That is, if the access request is a read request, the data memory 15
Is read, the read value is stored in the read data register 18, this output is applied to the processor data terminal PD, and then a signal indicating that the access is completed is applied to the processor access terminal PC. If the access request is a write request, set the write data on the processor data terminal PD in the write data register 19,
This value is written in the data memory 15 and a signal for notifying access completion to the processor access terminal PC is applied.

ディレクトリイ14で一致が検出されない場合、即ちアク
セスの要求のあったアドレスを含むブロックが自キャッ
シュメモリ上に存在しない場合には、ブロックのロード
のために次の処理を行う。先ず、リプレースメント回路
16でリプレースすべきデータメモリ15上のブロックを決
定し、これに対応するディレクトリ14のエントリにアド
レスレジスタ11のブロックアドレス部の値を登録する。
次にアドレスレジスタ11のブロックアドレス部の出力と
制御回路17で生成するブロック内のワードアドレスをメ
モリアドレス端子MAに、メモリ読み出し要求をメモリア
クセス端子MCに印加することにより、主記憶を読み出
し、メモリデータ端子MDに読み出されたデータを書込み
データレジスタ19を介してデータメモリ15に書込む。ブ
ロック内に属する全ワードに対してこれを行ったのち、
ディレクトリ14にこのブロックが有効であることを登録
することによりブロックのロードの処理が完了する。
If no match is detected in the directory 14, that is, if the block including the address requested to be accessed does not exist in the own cache memory, the following process is performed to load the block. First, the replacement circuit
In 16 the block on the data memory 15 to be replaced is determined, and the value of the block address part of the address register 11 is registered in the corresponding entry of the directory 14.
Next, the main memory is read by applying the output of the block address part of the address register 11 and the word address in the block generated by the control circuit 17 to the memory address terminal MA and the memory read request to the memory access terminal MC. The data read to the data terminal MD is written in the data memory 15 via the write data register 19. After doing this for all words belonging to the block,
By registering that this block is valid in the directory 14, the process of loading the block is completed.

プロセッサから要求のあったブロックのロード終了後、
プリフェッチ端子PRFに信号が印加されている場合に
は、プリフェッチ回路12で計算された次のブロックアド
レスによりディレクトリ14の検索を行う。ディレクトリ
14で一致が検出されなかった場合には前述のブロックロ
ードの処理を行う。この後で、前述のデータメモリ15の
読み出し、あるいは書込みの処理を再実行することによ
りプロセッサからのアクセスが行われることになる。デ
ィレクトリ14で一致が検出された場合、即ち、次のブロ
ックが既にデータメモリ15内に存在している場合にはブ
ロックロード処理は行わない。またプリフェッチ端子PR
Fに信号が印加されていない場合には、これらの処理は
行われず、プロセッサから要求のあったブロックのロー
ド終了によりただちにプロセッサの再実行になる。
After loading the block requested by the processor,
When the signal is applied to the prefetch terminal PRF, the directory 14 is searched by the next block address calculated by the prefetch circuit 12. directory
If no match is detected in 14, the block loading process described above is performed. After this, the processor is accessed by re-executing the above-mentioned read or write processing of the data memory 15. If a match is detected in the directory 14, that is, if the next block already exists in the data memory 15, the block load process is not performed. Prefetch pin PR
When the signal is not applied to F, these processes are not performed, and the processor is immediately re-executed due to completion of loading of the block requested by the processor.

「発明の効果」 以上この発明の実施例について説明したが、この説明に
より明らかなようにこの発明の主旨は同一チップ上に当
該チップの保持しているブロックを管理するためのディ
レクトリ14およびブロックデータの保持のためのデータ
メモリ15、プロセッサからアクセスされたブロックの次
のブロックアドレスを計算するためのプリフェッチ回路
(加算器)12および関連する制御回路17を内蔵し、プロ
セッサからキャッシュメモリへのメモリアクセス要求の
通信のための入出力端子として、メモリアクセスの要
求、完了信号等のためのプロセッサアクセス制御信号端
子、プロセッサからのメモリアドレスのためのプロセッ
サアドレス信号端子、プロセッサとデータのやりとりの
ためのプロセッサデータ信号端子、キャッシュメモリか
ら主記憶との間のメモリアクセス要求の通信のための入
出力端子としてメモリアクセス制御信号端子、メモリア
ドレス信号端子、メモリデータ信号端子、当該キャッシ
ュメモリチップにメモリアクセス要求のあったブロック
が存在しなかった場合に、そのブロックと共に次のブロ
ックまでをロードするか否かを制御するプリフェッチ端
子を持ち、プロセッサからのメモリアクセス要求に際し
て、自チップにおいて要求のあったブロックが見いださ
れた場合には、自チップ内でアクセスを行い、自チップ
において要求のあったブロックが見いだされず、かつ前
記プリフェッチ端子が印加されている場合には、要求の
あったブロックとその次のブロックのロードを行い、前
記プリフェッチ端子が印加されていない場合には、要求
のあったブロックのみのロードを行うことにより必要な
ブロックに対してのみプリフェッチを行うことができ
る。
"Effects of the Invention" The embodiments of the present invention have been described above. As is clear from this description, the gist of the present invention is that the directory 14 for managing the blocks held by the chips and the block data are provided on the same chip. Memory access from the processor to the cache memory, with a built-in data memory 15 for holding data, a prefetch circuit (adder) 12 for calculating the next block address of the block accessed by the processor, and an associated control circuit 17. As an input / output terminal for request communication, a processor access control signal terminal for a memory access request, a completion signal, etc., a processor address signal terminal for a memory address from the processor, a processor for exchanging data with the processor Mainly from data signal terminals and cache memory When there is no memory access control signal terminal, memory address signal terminal, memory data signal terminal as the input / output terminal for communication of the memory access request between the cache memory chip and the block that requested the memory access. Has a prefetch pin that controls whether to load the next block together with that block, and when the requested block is found in the own chip when a memory access request from the processor is found, When the requested block is not found in the own chip and the prefetch terminal is applied, the requested block and the next block are loaded and the prefetch terminal is applied. If not, only the requested block It is possible to perform a prefetch only to necessary blocks by performing over de.

このようにしてプロセッサのアクセスに対し、プリフェ
ッチを行うか否かはプロセッサのアクセス毎に動的に切
換えて制御することができる。
In this way, whether or not to perform prefetch for processor access can be dynamically switched and controlled for each processor access.

この実施例の説明においては発明の主旨とは直接関係が
ないので制御回路17の具体的な実現方法およびタイミン
グ等も含めた動作等、例えばメモリアクセス要求、完了
信号を端子に印加するためのゲートの制御、読み出し、
書込みデータのデータ端子への印加、受け取り等につい
ても詳細な説明は省略したがこれらは従来知られている
技術で実現できることは有らかであろう。またこの実施
例においては主記憶に一個のプロセッサが接続されるシ
ングルプロセッサシステムを想定しているが、各々がこ
の発明によるキャッシュメモリを備えている複数個のプ
ロセッサからなるマルチプロセッサシステムにおいては
各プロセッサのキャッシュメモリと主記憶との間での内
容の一致を確保するための考慮が必要になるが、これに
ついても従来知られている種々の方式が適用できるであ
ろう。
In the description of this embodiment, since it is not directly related to the gist of the invention, the operation including the specific implementation method and timing of the control circuit 17, for example, a memory access request, a gate for applying a completion signal to the terminal. Control, read,
Although detailed description of applying and receiving write data to the data terminal is omitted, it is obvious that these can be realized by the conventionally known technology. Further, in this embodiment, a single processor system in which one processor is connected to the main memory is assumed, but in a multiprocessor system including a plurality of processors each having a cache memory according to the present invention, each processor is It is necessary to consider to ensure the matching of the contents between the cache memory and the main memory of the above, and various conventionally known methods may be applied to this as well.

【図面の簡単な説明】[Brief description of drawings]

図はこの発明の実施例を示すブロック図である。 11:アドレスレジスタ、12:プリフェッチ回路、13:マル
チプレクサ、14:ディレクトリ、15:データメモリ、16:
リプレースメント回路、17:制御回路、18:読み出しデー
タレジスタ、19:書込みデータレジスタ。
The drawing is a block diagram showing an embodiment of the present invention. 11: address register, 12: prefetch circuit, 13: multiplexer, 14: directory, 15: data memory, 16:
Replacement circuit, 17: control circuit, 18: read data register, 19: write data register.

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】同一チップ上に当該チップの保持している
ブロックを管理するためのディレクトリ、ブロックデー
タの保持のためのデータメモリ、プロセッサからアクセ
スされたブロックの次のブロックアドレスを計算するた
めのプリフェッチ回路および関連する制御回路を内蔵
し、 プロセッサからキャッシュメモリへのメモリアクセス要
求の通信のための入出力端子として、メモリアクセスの
要求、完了信号等のためのプロセッサアクセス制御信号
端子、プロセッサからのメモリアドレスのためのプロセ
ッサアドレス信号端子、プロセッサとのデータのやりと
りのためのプロセッサデータ信号端子、キャッシュメモ
リから主記憶との間のメモリアクセス要求の通信のため
の入出力端子としてメモリアクセス制御信号端子、メモ
リアドレス信号端子、メモリデータ信号端子、当該キャ
ッシュメモリチップにメモリアクセス要求のあったブロ
ックが存在しなかった場合に、そのブロックと共に次の
ブロックまでをロードするか否かを制御するプリフェッ
チ端子を持ち、 プロセッサからのメモリアクセス要求に際して、自チッ
プにおいて要求のあったブロックが見いだされた場合に
は、自チップ内でアクセスを行い、自チップにおいて要
求のあったブロックデータが見いだされず、かつ前記プ
リフェッチ端子が印加されている場合には、要求のあっ
たブロックデータとその次のブロックデータのロードを
行い、前記プリフェッチ端子が印加されていない場合に
は、要求のあったブロックデータのみのロードを行うキ
ャッシュメモリのプリフェッチ制御方式。
1. A directory for managing blocks held by the chip on the same chip, a data memory for holding block data, and a block address next to a block accessed by a processor. Built-in prefetch circuit and related control circuit. As input / output terminal for communication of memory access request from processor to cache memory, processor access control signal terminal for memory access request, completion signal, etc. A processor address signal terminal for a memory address, a processor data signal terminal for exchanging data with the processor, and a memory access control signal terminal as an input / output terminal for communication of a memory access request from the cache memory to the main memory. , Memory address signal It has a pin, a memory data signal pin, and a prefetch pin that controls whether or not to load the block up to the next block if the block for which the memory access is requested does not exist in the cache memory chip. When the requested block is found in the own chip when the memory access request is made, access is made in the own chip, the requested block data is not found in the own chip, and the prefetch pin is applied. If so, the requested block data and the next block data are loaded, and if the prefetch terminal is not applied, only the requested block data is loaded. control method.
JP61035834A 1986-02-19 1986-02-19 Prefetch control method for cache memory Expired - Fee Related JPH0695317B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP61035834A JPH0695317B2 (en) 1986-02-19 1986-02-19 Prefetch control method for cache memory

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP61035834A JPH0695317B2 (en) 1986-02-19 1986-02-19 Prefetch control method for cache memory

Publications (2)

Publication Number Publication Date
JPS62192831A JPS62192831A (en) 1987-08-24
JPH0695317B2 true JPH0695317B2 (en) 1994-11-24

Family

ID=12452995

Family Applications (1)

Application Number Title Priority Date Filing Date
JP61035834A Expired - Fee Related JPH0695317B2 (en) 1986-02-19 1986-02-19 Prefetch control method for cache memory

Country Status (1)

Country Link
JP (1) JPH0695317B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001060169A (en) 1999-08-24 2001-03-06 Hitachi Ltd Cache controller and computer system

Also Published As

Publication number Publication date
JPS62192831A (en) 1987-08-24

Similar Documents

Publication Publication Date Title
EP0637800B1 (en) Data processor having cache memory
US6226722B1 (en) Integrated level two cache and controller with multiple ports, L1 bypass and concurrent accessing
US8725987B2 (en) Cache memory system including selectively accessible pre-fetch memory for pre-fetch of variable size data
US4701844A (en) Dual cache for independent prefetch and execution units
US5265236A (en) Method and apparatus for increasing the speed of memory access in a virtual memory system having fast page mode
JP3016575B2 (en) Multiple cache memory access methods
WO2001004763A1 (en) Buffering system bus for external-memory accesses
EP0464994A2 (en) Cache memory exchange protocol
US6378023B1 (en) Interrupt descriptor cache for a microprocessor
JP2000003308A (en) Overlapped memory access method and device to l1 and l2
US6345320B1 (en) DMA address buffer and cache-memory control system
US5161219A (en) Computer system with input/output cache
US5367657A (en) Method and apparatus for efficient read prefetching of instruction code data in computer memory subsystems
KR100710922B1 (en) Set-associative cache-management method using parallel reads and serial reads initiated while processor is waited
US8661169B2 (en) Copying data to a cache using direct memory access
US5012410A (en) Data processor with instruction cache memory
EP0156307A2 (en) Pipelined processor having dual cache memories
JPH07121443A (en) Information process system and its operating method
EP0488566A2 (en) Method and apparatus for fast page mode selection
JPH0695317B2 (en) Prefetch control method for cache memory
US6397304B1 (en) Method and apparatus for improving system performance in multiprocessor systems
JP3445873B2 (en) Data prefetch method and information processing apparatus therefor
JP2001229074A (en) Memory controller and information processor and memory control chip
JP3052460B2 (en) Cooperative processing type information processing device
JP3378270B2 (en) Multiprocessor system

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees