JPH11143777A - Cache memory device - Google Patents
Cache memory deviceInfo
- Publication number
- JPH11143777A JPH11143777A JP9320424A JP32042497A JPH11143777A JP H11143777 A JPH11143777 A JP H11143777A JP 9320424 A JP9320424 A JP 9320424A JP 32042497 A JP32042497 A JP 32042497A JP H11143777 A JPH11143777 A JP H11143777A
- Authority
- JP
- Japan
- Prior art keywords
- memory
- data
- processing
- cache
- tag
- 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
Links
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
Description
【0001】[0001]
【発明の属する技術分野】本発明は、キャッシュメモリ
装置に係り、特に、スループットの増加を図ったキャッ
シュメモリ装置に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a cache memory device, and more particularly, to a cache memory device with an increased throughput.
【0002】[0002]
【従来の技術】今日の情報処理装置の多くは、メモリア
クセスタイムの向上を図るためキャッシュメモリ装置を
採用している。キャッシュメモリには、キャッシュのブ
ロックアドレスで指定される各ブロック毎に、キャッシ
ュのヒット判定用のデータやキャッシュブロックの属性
を示すビット、キャッシュブロックが有効であることを
示すビットがあり、それらをタグメモリに格納する。一
方、キャッシュデータは、データメモリに格納する。2. Description of the Related Art Many of today's information processing apparatuses employ a cache memory device in order to improve a memory access time. The cache memory has, for each block specified by the block address of the cache, data for judging the cache hit, a bit indicating the attribute of the cache block, and a bit indicating that the cache block is valid. Store in memory. On the other hand, the cache data is stored in the data memory.
【0003】一般的に、キャッシュメモリのブロックサ
イズは、キャッシュメモリの書き込みデータ幅より大き
い。この理由として、一つは、ブロックサイズを大きく
した方が、キャッシュのヒット率が上がるということが
ある。また、キャッシュキャッシュメモリは一般にプロ
セッサチップ上に実装されたり、あるいはプロセッサの
外付けの場合には高速で高価なRAMが用いられ、下位メ
モリとキャッシュメモリをつなぐインタフェースである
プロセッサまたは外付けのRAMのピン数は限られてい
る。よって、下位メモリからキャッシュメモリのあるブ
ロックへの書き込みデータ幅は物理的に限られてくる。Generally, the block size of a cache memory is larger than the write data width of the cache memory. One reason for this is that increasing the block size increases the cache hit rate. In addition, cache memory is generally mounted on a processor chip, or in the case of an external processor, a high-speed and expensive RAM is used, and an interface between the lower-level memory and the cache memory is provided by a processor or an external RAM. The number of pins is limited. Therefore, the data width written from the lower memory to a certain block in the cache memory is physically limited.
【0004】このように、ブロックサイズの方が、キャ
ッシュへの書き込みデータ幅より大きいため、下位メモ
リからキャッシュのブロックデータをデータメモリにn
回にわけて書き込む必要がある。この場合、1〜(n−
1)回目のデータのキャッシュへの書き込み時には、タ
グメモリへは各回毎に無効ビットが書き込まれ、n回目
には有効ビットが書き込まれているが、2〜(n−1)回
目での無効ビットの書き込みの必要はなく、タグメモリ
へは最低2回のアクセス、すなわち、1回目での無効ビ
ットの書き込みとn回目での有効ビットの書き込みのた
めのアクセス、で良いにもかかわらず、n回データをキ
ャッシュへ書き込んでいる間は、他の処理がタグメモリ
へアクセスすることは行わなかった。As described above, since the block size is larger than the write data width to the cache, the block data of the cache is transferred from the lower memory to the data memory.
It is necessary to write in times. In this case, 1 to (n-
1) At the time of writing data to the cache for the first time, an invalid bit is written to the tag memory each time and a valid bit is written for the nth time, but invalid bits for the second to (n-1) th times are written. It is not necessary to write at least two times to the tag memory, that is, writing the invalid bit at the first time and writing the valid bit at the nth time. While data was being written to the cache, no other process accessed the tag memory.
【0005】[0005]
【発明が解決しようとする課題】上述したような従来方
式によるキャッシュメモリ装置では、キャッシュのブロ
ックデータを下位メモリから書き込むと同時に、タグメ
モリだけをアクセスする命令を処理することは出来ない
という問題点があった。本発明は、上述のような事情に
鑑みてなされたものであり、キャッシュのブロックデー
タを下位メモリから書き込む際に、タグメモリのみをア
クセスする処理が実行できるようにするキャッシュメモ
リ装置を提供することを目的とする。In the above-described conventional cache memory device, it is not possible to write cache block data from the lower memory and simultaneously process an instruction for accessing only the tag memory. was there. The present invention has been made in view of the above circumstances, and provides a cache memory device that can execute processing for accessing only a tag memory when writing cache block data from a lower memory. With the goal.
【0006】[0006]
【課題を解決するための手段】上記目的を達成するた
め、本発明は、データを格納するデータメモリと、デー
タメモリに格納されたデータのアドレスを格納するタグ
メモリと、複数の処理制御装置と、データメモリアービ
タと、タグメモリアービタを備え、データの取り出し時
および格納時には、データメモリアービタとタグメモリ
アービタが使用を許可することにより、複数の処理制御
装置のいずれか1つのみが、データメモリとタグメモリ
をアクセスするキャッシュメモリ装置において、データ
メモリにデータを書き込むサイクル数がタグメモリに書
き込むサイクル数よりも多い処理を行う処理制御装置に
データメモリアービタとタグメモリアービタが使用を許
可した場合、前記タグメモリアービタは、該処理制御装
置の処理におけるデータメモリのみに書き込むサイクル
に、タグメモリのみをアクセスすることで完了する処理
を行う処理装置に該データメモリのみに書き込むサイク
ルにおける該タグメモリアービタの使用を許可する手段
を備えるようにしている。To achieve the above object, the present invention provides a data memory for storing data, a tag memory for storing an address of data stored in the data memory, a plurality of processing controllers, A data memory arbiter and a tag memory arbiter. When data is fetched and stored, the data memory arbiter and the tag memory arbiter permit use of the data memory arbiter. When the data memory arbiter and the tag memory arbiter are permitted to use a processing control device that performs processing in which the number of cycles of writing data to the data memory is greater than the number of cycles of writing to the tag memory in the cache memory device accessing the tag memory, The tag memory arbiter stores data in the processing of the processing control device. The cycles to be written only in the data memory, so that comprising means for permitting the use of the tag memory arbiter processing apparatus for completing processing by accessing only the tag memory in the cycle to be written only to the data memory.
【0007】また、前記処理制御装置の処理におけるデ
ータメモリのみに書き込むサイクルに、タグメモリのみ
をアクセスすることで完了する処理を行う処理装置が、
他のプロセッサから送られてきた共有メモリアドレスが
キャッシュ上に存在するかのヒットチェック処理または
他のプロセッサから送られてきた共有メモリアドレスを
含むキャッシュブロックの無効化にタグメモリをアクセ
スする処理を行う処理装置であるようにしている。[0007] Further, in a cycle in which only the data memory is written in the processing of the processing control device, a processing device which performs a process completed by accessing only the tag memory is provided.
Performs a hit check process to determine whether a shared memory address sent from another processor exists in the cache or a process of accessing the tag memory to invalidate a cache block including a shared memory address sent from another processor. It is a processing device.
【0008】また、前記処理制御装置の処理におけるデ
ータメモリのみに書き込むサイクルに、タグメモリのみ
をアクセスすることで完了する処理を行う処理装置が、
ストアのヒットチェックにタグメモリをアクセスする処
理を行う処理装置であるようにしている。Further, in a cycle in which only the data memory is written in the processing of the processing control device, a processing device which performs a process completed by accessing only the tag memory is provided.
The processing device performs a process of accessing the tag memory for hit check of the store.
【0009】[0009]
【発明の実施の形態】以下、本発明によるキャッシュメ
モリ装置の実施例を図1のブロック図により詳細に説明
する。図1において、10はプロセッサ、20〜60は
処理制御装置であり、20は中央制御装置、30はプリ
フェッチ命令制御装置、40はロード命令制御装置、5
0はストア命令制御装置、60はスヌープ制御装置、7
0はキャッシュメモリ、101はデータメモリ、102
はタグメモリ、103は下位メモリ、104はデータメ
モリアービタ、105はタグメモリアービタ、114は
データメモリアドレスセレクタ、115はタグメモリア
ドレスセレクタである。106はプリフェッチ命令要求
とアドレスのパスであり、107はロード命令要求とア
ドレスのパスであり、108はストア命令要求とアドレ
スのパスであり、109はスヌープ命令要求とアドレス
のパスであり、110は外部データパス、111は外部
アドレスパスである。また、112はデータメモリセレ
クト信号、113はタグメモリセレクト信号、114は
データメモリセレクタ、115はタグメモリセレクタ、
116はデータメモリへのブロックアドレス、117は
タグメモリへのブロックアドレスである。FIG. 1 is a block diagram showing an embodiment of a cache memory device according to the present invention. In FIG. 1, 10 is a processor, 20 to 60 are processing controllers, 20 is a central controller, 30 is a prefetch instruction controller, 40 is a load instruction controller, 5
0 is a store command controller, 60 is a snoop controller, 7
0 is a cache memory, 101 is a data memory, 102
Is a tag memory, 103 is a lower memory, 104 is a data memory arbiter, 105 is a tag memory arbiter, 114 is a data memory address selector, and 115 is a tag memory address selector. Reference numeral 106 denotes a path between a prefetch instruction request and an address, 107 denotes a path between a load instruction request and an address, 108 denotes a path between a store instruction request and an address, 109 denotes a path between a snoop instruction request and an address, and 110 denotes a path between a snoop instruction request and an address. An external data path 111 is an external address path. 112 is a data memory select signal, 113 is a tag memory select signal, 114 is a data memory selector, 115 is a tag memory selector,
116 is a block address to the data memory, and 117 is a block address to the tag memory.
【0010】キャッシュメモリ70は、データメモリ1
01とタグメモリ102からなり、データメモリ101
のブロックサイズは128バイトで、容量が128Kバ
イトである。下位メモリ103からデータメモリ101
への書き込みデータ幅は32バイトであり、1ブロック
を書き込むのに、4回に分けて、データメモリ101へ
アクセスされる。The cache memory 70 has a data memory 1
01 and a tag memory 102, and a data memory 101
Has a block size of 128 bytes and a capacity of 128 Kbytes. From lower memory 103 to data memory 101
The write data width to is 32 bytes, and the data memory 101 is accessed four times to write one block.
【0011】ここで一実施例として取り上げるのは、キ
ャッシュのブロックデータ書き込み時に、プリフェッチ
命令を実行する場合である。プリフェッチ命令は、タグ
メモリ102のみをアクセスするだけで良い。キャッシ
ュヒットしていたら、実行は終了され、キャッシュミス
の時は、下位メモリ103へキャッシュのブロックデー
タ要求を出すという動作を行う。なお、本実施例では、
タグメモリ102にアクセスする処理がプリフェッチ命
令のヒットチェックであるケースを取り上げたが、タグ
メモリ102にのみアクセスする処理は、実施例以外
に、スヌープのヒットチェック、スヌープによるキャッ
シュブロックの無効化、ストアのヒットチェックがあ
り、以下で説明する実施例の場合と同様に処理される。Here, as an embodiment, a case where a prefetch instruction is executed at the time of writing block data in a cache is described. The prefetch instruction only needs to access the tag memory 102 only. If there is a cache hit, the execution is terminated, and in the case of a cache miss, an operation of issuing a cache block data request to the lower memory 103 is performed. In this embodiment,
The case where the process of accessing the tag memory 102 is a hit check of a prefetch instruction has been described. However, the processes of accessing only the tag memory 102 may be performed by using a snoop hit check, invalidating a cache block by snoop, And is processed in the same manner as in the embodiment described below.
【0012】まず初めに、図2のブロックデータ書き込
み処理と図3のプリフェッチ命令のヒットチェック処理
の単独ケースのタイムチャートで、それぞれの処理のキ
ャッシュメモリ装置へのアクセス状況を説明する。ま
ず、図2から説明する。ここでは、128バイトのブロ
ックサイズを32バイトごとに、4回に分けて下位メモ
リから転送されるうち、最初の32バイトの書き込み処
理を示してある。ブロックデータ書き込みは、まず、サ
イクル1で、下位メモリ103から次サイクルにブロッ
クデータの書き込みを行うという信号であるBTPRE
Dが出される。次のサイクル2で、書き込みデータが下
位メモリ103からデータメモリ101へパス110に
より転送され、また、ロード命令制御装置40またはス
トア命令制御装置50からパスによりデータメモリアド
レスセレクタ114にブロックアドレスが、タグメモリ
アドレスセレクタ115にブロックアドレスおよび書き
込みデータが無効であることを示すデータバリッドが出
される。そして、次のサイクル3で、ロード命令制御装
置40またはストア命令制御装置50からの命令要求信
号に基づきデータメモリアービタがデータメモリセレク
ト信号を出力し、この信号によりデータメモリアドレス
セレクタ114はアドレス情報を選択し、また、前記命
令要求信号に基づきタグメモリアービタがタグメモリセ
レクト信号を出力し、この信号によりタグメモリアドレ
スセレクタ115はアドレス情報およびデータバリッド
を選択し、選択した情報によりデータメモリ101とタ
グメモリ102へアクセスが行われ、データの書き込み
と、データバリッドの書き込みが行われる。First, the access status of each process to the cache memory device will be described with reference to a time chart of a single case of the block data write process of FIG. 2 and the hit check process of the prefetch instruction of FIG. First, FIG. 2 will be described. Here, the writing process of the first 32 bytes is shown among the 128-byte block size transferred from the lower-level memory four times in units of 32 bytes. The block data write is a signal BTPRE which is a signal to write the block data from the lower memory 103 in the next cycle in the first cycle.
D is issued. In the next cycle 2, the write data is transferred from the lower memory 103 to the data memory 101 by the path 110, and the block address is sent from the load instruction control device 40 or the store instruction control device 50 to the data memory address selector 114 by the path. A data valid indicating that the block address and the write data are invalid is output to the memory address selector 115. Then, in the next cycle 3, the data memory arbiter outputs a data memory select signal based on an instruction request signal from the load instruction control device 40 or the store instruction control device 50. With this signal, the data memory address selector 114 outputs the address information. The tag memory arbiter outputs a tag memory select signal based on the command request signal, and the tag memory address selector 115 selects address information and data valid based on the signal, and the tag memory arbiter 115 selects address information and data valid. Access to the memory 102 is performed, and data writing and data valid writing are performed.
【0013】次に、図3は、128バイトのブロックサ
イズを32バイトごとに、連続して、4回に分けて下位
メモリから転送され、書き込み処理されるケースであ
る。このケースでは図2で示した動作が順次繰り返し行
われるが、図3のケースではサイクル3とサイクル6で
はタグメモリ102とデータメモリ101を同時にアク
セスするが、サイクル4とサイクル5ではデータメモリ
101だけをアクセスする。すなわち、サイクル3では
タグメモリ102に無効ビットを書き込み、データメモ
リ101にはデータを書き込み、サイクル6ではタグメ
モリ102に有効ビットとリアルページナンバを書き込
み、データメモリ101にはデータを書き込む。そし
て、サイクル4とサイクル5ではデータメモリ101に
はデータを書き込むが、タグメモリ102にはデータバ
リッドを書き込まない。これは、タグメモリへは、サイ
クル3に無効ビットを書くから、サイクル4、5では無
効ビットを書く必要がなく、サイクル6にリアルページ
ナンバと有効ビットを書くことで済むからである。Next, FIG. 3 shows a case in which a 128-byte block size is successively transferred from the lower memory four times in units of 32 bytes and written. In this case, the operations shown in FIG. 2 are sequentially repeated. In the case of FIG. 3, the tag memory 102 and the data memory 101 are accessed simultaneously in cycles 3 and 6, but only the data memory 101 is accessed in cycles 4 and 5. To access. That is, in cycle 3, an invalid bit is written to the tag memory 102, data is written to the data memory 101, and in cycle 6, a valid bit and a real page number are written to the tag memory 102, and data is written to the data memory 101. Then, in cycles 4 and 5, data is written to the data memory 101, but no data valid is written to the tag memory 102. This is because an invalid bit is written in the tag memory in cycle 3, so that it is not necessary to write an invalid bit in cycles 4 and 5, and it is sufficient to write a real page number and a valid bit in cycle 6.
【0014】なお、リアルページナンバの書き込みをサ
イクル6で行っているが、サイクル3で行ってもよい。Although the writing of the real page number is performed in cycle 6, it may be performed in cycle 3.
【0015】一方、図4で示すように、プリフェッチ命
令は、タグメモリをサイクル1でアクセスし、ヒットチ
ェックを行う。すなわち、プリフェッチ命令制御装置3
0からタグメモリアドレスセレクタ115にブロックア
ドレスが送られ、タグメモリアービタ105がプリフェ
ッチ命令制御装置30からのプリフェッチ命令要求信号
に基づきタグメモリアドレスセレクタ115によりブロ
ックアドレスを選択し、タグメモリは102は選択され
たアドレスによりヒットチェックを行う。そして、サイ
クル2ではヒット結果を得る。チェック結果がヒットで
あれば、そのまま処理は終了し、チェック結果がミスで
あれば、サイクル3で下位メモリへキャッシュのブロッ
クデータ転送要求を出す。On the other hand, as shown in FIG. 4, the prefetch instruction accesses the tag memory in cycle 1 and performs a hit check. That is, the prefetch instruction control device 3
From 0, the block address is sent to the tag memory address selector 115, the tag memory arbiter 105 selects the block address by the tag memory address selector 115 based on the prefetch instruction request signal from the prefetch instruction control device 30, and the tag memory 102 is selected. A hit check is performed using the specified address. Then, in cycle 2, a hit result is obtained. If the check result is a hit, the process is terminated as it is. If the check result is a miss, a request for transferring block data of the cache to the lower memory is issued in cycle 3.
【0016】次に図5で、本発明の一実施例であるブロ
ックデータ書き込み時にプリフェッチ命令の実行を同時
に処理するキャッシュメモリ装置の動作を説明する。ま
ず、サイクル1では、下位メモリから、次のサイクル2
でデータメモリへの書き込みが行われるというBTPR
EDが出される。このBTPREDが128バイトブロ
ックのうち、最初の32バイト分であることから、サイ
クル2でタグメモリアービタ105は、ブロック書き込
みアドレスを選択するタグメモリセレクト信号をタグメ
モリアドレスセレクタ115へ送る。そして、サイクル
3でタグメモリへは、当ブロックデータが無効であるビ
ットを書き込む。次に、サイクル2で2回目のBTPR
EDが出されると、タグメモリアービタ105は、ブロ
ック書き込み処理によるタグメモリへのアクセスがな
く、プリフェッチ命令制御装置30によるタグメモリへ
のアクセスがあることから、サイクル3でプリフェッチ
命令のアドレスを選択するタグメモリセレクト信号をタ
グメモリアドレスセレクタへ送る。そして、次のサイク
ル4では、タグメモリでプリフェッチ命令のヒットチェ
ックが行われ、データメモリでは、ブロックデータの書
き込みが行われる。3回目のBTPREDの場合も2回
目のBTPREDの場合と同様である。そして、サイク
ル5でヒット結果が得られる。チェック結果がミスの場
合には、サイクル6でブロックデータ転送要求が出され
る。4回目のBTPREDが出ると、タグメモリアービ
タは、ブロック書き込みアドレスを選択するタグメモリ
セレクト信号をタグメモリアドレスセレクタへ送る。そ
の結果、次のサイクルでは、タグメモリへ当ブロックデ
ータが有効であることを示すビットと書き込みブロック
のリアルページナンバーを書き込むという動作が行われ
る。Next, the operation of the cache memory device according to one embodiment of the present invention, which simultaneously processes the execution of a prefetch instruction when writing block data, will be described. First, in cycle 1, the next cycle 2
BTPR that data is written to data memory
An ED is issued. Since this BTPRED is the first 32 bytes of the 128-byte block, the tag memory arbiter 105 sends a tag memory select signal for selecting a block write address to the tag memory address selector 115 in cycle 2. Then, in cycle 3, a bit in which the block data is invalid is written to the tag memory. Next, the second BTPR in cycle 2
When the ED is issued, the tag memory arbiter 105 selects the address of the prefetch instruction in cycle 3 because there is no access to the tag memory by the block write process and access to the tag memory by the prefetch instruction control device 30. Send the tag memory select signal to the tag memory address selector. Then, in the next cycle 4, the hit check of the prefetch instruction is performed in the tag memory, and the block data is written in the data memory. The case of the third BTPRED is the same as the case of the second BTPRED. Then, a hit result is obtained in cycle 5. If the check result is a mistake, a block data transfer request is issued in cycle 6. When the fourth BTPRED is issued, the tag memory arbiter sends a tag memory select signal for selecting a block write address to the tag memory address selector. As a result, in the next cycle, an operation of writing a bit indicating that the block data is valid and the real page number of the write block to the tag memory is performed.
【0017】以上、本発明によるキャッシュメモリ装置
により、ブロック書き込みと同サイクルに、タグメモリ
をアクセスすることができ、従来技術と比べ、スループ
ットが増えることが分かる。この実施例では、タグメモ
リのみを使用する処理にプリフェッチ命令のヒットチェ
ックを例にとったが、これだけに限定されるものではな
く、ストアのヒットチェック、スヌープによるヒットチ
ェック、スヌープによるキャッシュブロックの無効化に
対しても、スループットが増える。As described above, it can be understood that the tag memory can be accessed in the same cycle as the block write by the cache memory device according to the present invention, so that the throughput is increased as compared with the prior art. In the present embodiment, the hit check of the prefetch instruction is taken as an example in the processing using only the tag memory. However, the present invention is not limited to this, and the hit check of the store, the hit check by the snoop, and the invalidation of the cache block by the snoop are performed. Also, throughput increases.
【0018】[0018]
【発明の効果】以上説明したように、本発明によれば、
キャッシュのブロックデータ書き込みでデータメモリの
みに書き込むサイクルに、プリフェッチ命令のヒットチ
ェックが行えるので、スループットが増える。また、タ
グメモリのみの使用に、実施例のプリフェッチ命令のヒ
ットチェックと限定されるものではなく、ストアのヒッ
トチェック、スヌープのヒットチェック、スヌープによ
るキャッシュブロックの無効化に対しても、スループッ
トが増えるという効果がある。As described above, according to the present invention,
The hit check of the prefetch instruction can be performed in the cycle of writing only the data memory by writing the block data of the cache, thereby increasing the throughput. Further, the use of only the tag memory is not limited to the hit check of the prefetch instruction of the embodiment, and the throughput increases even for the hit check of the store, the hit check of the snoop, and the invalidation of the cache block by the snoop. This has the effect.
【図1】本発明によるキャッシュメモリ装置の構成を示
すブロック図である。FIG. 1 is a block diagram showing a configuration of a cache memory device according to the present invention.
【図2】ブロックデータ書き込み(最初の32バイトデ
ータ書き込み)処理のタイムチャートである。FIG. 2 is a time chart of a block data write (first 32-byte data write) process.
【図3】ブロックデータ書き込み(連続32バイトデー
タ書き込み)処理のタイムチャートである。FIG. 3 is a time chart of a block data write (continuous 32-byte data write) process.
【図4】プリフェッチ命令の実行タイムチャートであ
る。FIG. 4 is an execution time chart of a prefetch instruction.
【図5】ブロックデータ書き込み(連続32バイトデー
タ書き込み)処理とプリフェッチ命令の同時実行のタイ
ムチャートである。FIG. 5 is a time chart of block data write (continuous 32-byte data write) processing and simultaneous execution of a prefetch instruction.
10 プロセッサ 20 中央制御装置 30 プリフェッチ命令制御装置 40 ロード命令制御装置 50 ストア命令制御装置 60 スヌープ制御装置 101 データメモリ 102 タグメモリ 103 下位メモリ 104 データメモリアービタ 105 タグメモリアービタ 106 プリフェッチ命令要求、アドレスパス 107 ロード命令要求、アドレスパス 108 ストア命令要求、アドレスパス 109 スヌープ命令要求、アドレスパス 110 外部データパス 111 外部アドレスパス 112 データメモリセレクト信号 113 タグメモリセレクト信号 114 データメモリセレクタ 115 タグメモリセレクタ 116 データメモリへのブロックアドレス 117 タグメモリへのブロックアドレス DESCRIPTION OF SYMBOLS 10 Processor 20 Central controller 30 Prefetch instruction controller 40 Load instruction controller 50 Store instruction controller 60 Snoop controller 101 Data memory 102 Tag memory 103 Lower memory 104 Data memory arbiter 105 Tag memory arbiter 106 Prefetch instruction request, address path 107 Load instruction request, address path 108 Store instruction request, address path 109 Snoop instruction request, address path 110 external data path 111 external address path 112 data memory select signal 113 tag memory select signal 114 data memory selector 115 tag memory selector 116 to data memory Block address 117 Block address to tag memory
Claims (3)
タメモリに格納されたデータのアドレスを格納するタグ
メモリと、複数の処理制御装置と、データメモリアービ
タと、タグメモリアービタを備え、データの取り出し時
および格納時には、データメモリアービタとタグメモリ
アービタが使用を許可することにより、複数の処理制御
装置のいずれか1つのみが、データメモリとタグメモリ
をアクセスするキャッシュメモリ装置において、 データメモリにデータを書き込むサイクル数がタグメモ
リに書き込むサイクル数よりも多い処理を行う処理制御
装置にデータメモリアービタとタグメモリアービタが使
用を許可した場合、前記タグメモリアービタは、該処理
制御装置の処理におけるデータメモリのみに書き込むサ
イクルに、タグメモリのみをアクセスすることで完了す
る処理を行う処理装置に該データメモリのみに書き込む
サイクルにおける該タグメモリアービタの使用を許可す
る手段を備えることを特徴とするキャッシュメモリ装
置。1. A data memory for storing data, a tag memory for storing an address of data stored in the data memory, a plurality of processing controllers, a data memory arbiter, and a tag memory arbiter, wherein data is taken out At the time of storage and at the time of storage, the data memory arbiter and the tag memory arbiter permit use, so that only one of the plurality of processing controllers can store data in the data memory in the cache memory device accessing the data memory and the tag memory. When the data memory arbiter and the tag memory arbiter permit use of the data memory arbiter and the tag memory arbiter to perform a process in which the number of writing cycles is larger than the number of cycles of writing to the tag memory, the tag memory arbiter performs the data memory processing in the Write cycle only to tag memory Cache memory device characterized by comprising means for permitting the use of the tag memory arbiter in the cycle to be written only in the data memory to the processing unit for performing finish processing by accessing the.
おいて、 前記処理制御装置の処理におけるデータメモリのみに書
き込むサイクルに、タグメモリのみをアクセスすること
で完了する処理を行う処理装置が、他のプロセッサから
送られてきた共有メモリアドレスがキャッシュ上に存在
するかのヒットチェック処理または他のプロセッサから
送られてきた共有メモリアドレスを含むキャッシュブロ
ックの無効化にタグメモリをアクセスする処理を行う処
理装置であることを特徴としたキャッシュメモリ装置。2. The cache memory device according to claim 1, wherein, in a cycle of writing in only the data memory in the processing of the processing control device, a processing device performing a process completed by accessing only the tag memory is another processor. A processing device that performs a hit check process to check whether the shared memory address sent from the cache exists in the cache or a process of accessing the tag memory to invalidate a cache block including the shared memory address sent from another processor. A cache memory device, comprising:
おいて、 前記処理制御装置の処理におけるデータメモリのみに書
き込むサイクルに、タグメモリのみをアクセスすること
で完了する処理を行う処理装置が、ストアのヒットチェ
ックにタグメモリをアクセスする処理を行う処理装置で
あることを特徴としたキャッシュメモリ装置。3. The cache memory device according to claim 1, wherein, in a cycle of writing in only the data memory in the processing of the processing control device, the processing device performing a process completed by accessing only the tag memory includes a store hit. A cache memory device, which is a processing device that performs a process of accessing a tag memory for checking.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9320424A JPH11143777A (en) | 1997-11-06 | 1997-11-06 | Cache memory device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP9320424A JPH11143777A (en) | 1997-11-06 | 1997-11-06 | Cache memory device |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH11143777A true JPH11143777A (en) | 1999-05-28 |
Family
ID=18121309
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP9320424A Pending JPH11143777A (en) | 1997-11-06 | 1997-11-06 | Cache memory device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH11143777A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6981103B2 (en) | 2001-06-11 | 2005-12-27 | Nec Electronics Corporation | Cache memory control apparatus and processor |
-
1997
- 1997-11-06 JP JP9320424A patent/JPH11143777A/en active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6981103B2 (en) | 2001-06-11 | 2005-12-27 | Nec Electronics Corporation | Cache memory control apparatus and processor |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5586294A (en) | Method for increased performance from a memory stream buffer by eliminating read-modify-write streams from history buffer | |
US5388247A (en) | History buffer control to reduce unnecessary allocations in a memory stream buffer | |
US5283883A (en) | Method and direct memory access controller for asynchronously reading/writing data from/to a memory with improved throughput | |
US5091851A (en) | Fast multiple-word accesses from a multi-way set-associative cache memory | |
US3898624A (en) | Data processing system with variable prefetch and replacement algorithms | |
IE990754A1 (en) | An apparatus for software initiated prefetch and method therefor | |
US6237064B1 (en) | Cache memory with reduced latency | |
JPH06318174A (en) | Cache memory system and method for performing cache for subset of data stored in main memory | |
US6839806B2 (en) | Cache system with a cache tag memory and a cache tag buffer | |
JPH0282330A (en) | Move out system | |
US4737908A (en) | Buffer memory control system | |
JPH11143777A (en) | Cache memory device | |
JPH05282208A (en) | Cache memory control system | |
JP3145545B2 (en) | Memory access device | |
JPH02110646A (en) | Pre-readout device for memory | |
JP2851777B2 (en) | Bus control method and information processing device | |
JPH09319657A (en) | Processor provided with buffer for reading instruction | |
JPS59112479A (en) | High speed access system of cache memory | |
JPH0210450A (en) | Prefetch control system for cache memory | |
JP3465362B2 (en) | Data processing device having cache memory | |
US6141735A (en) | Performing a memory access cycle in a multi-processor computer system | |
JPH086853A (en) | Storage control method | |
JPH07152650A (en) | Cache control unit | |
JPH01217530A (en) | Cache memory | |
JPH02259945A (en) | Storing processing system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20040316 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20040720 |