JPH01120649A - Cache memory control system - Google Patents
Cache memory control systemInfo
- Publication number
- JPH01120649A JPH01120649A JP62279750A JP27975087A JPH01120649A JP H01120649 A JPH01120649 A JP H01120649A JP 62279750 A JP62279750 A JP 62279750A JP 27975087 A JP27975087 A JP 27975087A JP H01120649 A JPH01120649 A JP H01120649A
- Authority
- JP
- Japan
- Prior art keywords
- level
- register
- access
- cache
- cache memory
- 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
Links
- 238000000034 method Methods 0.000 claims description 6
- 239000000872 buffer Substances 0.000 claims description 2
- 238000010586 diagram Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000003139 buffering effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 101150027973 hira gene Proteins 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は情報処理装置に関し、特にキャッシュ記憶の制
御方式に関する。DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to an information processing device, and particularly to a cache storage control method.
プロセッサ(例えばcpu)の処理サイクルとマススト
レージ(例えば主記憶)のアクセススピードの差を埋め
るために、キャッシュと言う概念が用いられている。こ
の概念は、比較的小容量であるが、そのアクセススピー
ドはプロセッサの処理サイクルと見合うメモリを用意し
、そのメモリにマスストレージの記憶内容のコピーを持
たせるものである。通常、キャッシュ記憶はブロック化
され、このブロックごとにマスストレージのコピーを保
持している。A concept called cache is used to bridge the difference between the processing cycle of a processor (for example, CPU) and the access speed of mass storage (for example, main memory). This concept involves preparing a memory that has a relatively small capacity but whose access speed matches the processing cycles of the processor, and stores a copy of the contents of the mass storage in that memory. Typically, cache storage is organized into blocks, with each block holding a copy of the mass storage.
このキャッシュ記憶のブロックにどの主記憶の内容を保
持するかという方針は、要求されたマスストレージの内
容が、キャッシュ記憶内のどのブロックにも含まれてい
ないとき、最も以前にアクセスされたブロックの代りに
、要求されたマスストレージの内容を含むブロックをキ
ャッシュ記憶内にバッファする方法が多く用いられる。The policy of which main memory contents to hold in this block of cache storage is that when the requested mass storage contents are not contained in any block in cache storage, the most recently accessed block is Instead, a method is often used to buffer blocks containing the requested mass storage contents in cache storage.
これをL RU ”(Least Recently
Used)管理方式という。This is LRU” (Least Recently
This is called the (Used) management method.
ところが、従来のキャッシュ記憶では、全てのアクセス
要求と全てのブロックに対して、上記の管理方式を等し
く適用するので、アクセス頻度は高くないが、アクセス
スピードがシステムの性能を決めるような記憶内容(例
えば、リアリタイム制御などにおける割り込みハンドラ
など)は、上記のLRUの原理で必要なときには、キャ
ッシュメモリに存在する確率は少なく、システムの性能
が低下する可能性がある。However, in conventional cache storage, the above management method is applied equally to all access requests and all blocks, so even if the access frequency is not high, the storage content (where access speed determines system performance) For example, interrupt handlers for real-time control, etc.) have a low probability of being present in the cache memory when they are needed according to the LRU principle described above, and the performance of the system may deteriorate.
また、アクセスの局所性が高いデータ(例えば命令)と
局所性が低いデータ(例えばポインタ構造)が混在する
場合、後者へのアクセスが、所謂、キャッシュミスを頻
発させ、ひいては前者のキャツシュヒツト率を低下させ
る可能性がある。Furthermore, when data with high locality of access (for example, instructions) and data with low locality of access (for example, pointer structures) coexist, access to the latter causes frequent cache misses, which in turn reduces the cache hit rate of the former. There is a possibility that
この場合、キャッシュ記憶の効果は後者に対しては少な
く、キャッシュの容量は後者のアクセスに対しては、重
要な因子とはならないことが多い。In this case, cache storage has little effect on the latter access, and cache capacity is often not an important factor for the latter access.
本発明のキャッシュ記憶制御方式は、キャッシュ記憶装
置へのアクセス要求に付随して、該アクセス要求がアク
セスしようとする記憶内容の該キャッシュ記憶装置にお
ける存在範囲を限定する情報を送り、該キャッシュ記憶
装置は該存在範囲を限定する情報により、該マスストレ
ージの内容をバッファリングする範囲を限定し、かつ、
該存在範囲内の該アクセスしようとしている記憶内容の
存在を示す信号を有効にするものである。The cache storage control method of the present invention sends, along with an access request to a cache storage device, information that limits the existence range in the cache storage device of the storage content that the access request attempts to access. limits the buffering range of the contents of the mass storage using information that limits the existence range, and
This is to enable a signal indicating the existence of the storage content to be accessed within the existence range.
したがって、アクセス頻度は高くないが、アクセススピ
ードがシステムの性能を決めるようなデータのキャツシ
ュヒツト率を高め、システムの性能を上げることができ
、また、アクセスの局所性が高いデータと局所性が低い
データが混在するような場合でも、アクセスの局所性が
高いデータと低いデータを分けることにより、後者アク
セスのアクセスがキャッシュミスを頻発することがなく
なり、後者のアクセスによる前者のアクセスへの擾乱を
防止することができる。Therefore, it is possible to increase the cache hit rate of data that is not accessed frequently, but whose access speed determines system performance, and improve system performance. Even in cases where there is a mixture of accesses, by separating data with high locality from data with low locality, the latter accesses will not cause frequent cache misses, and the latter accesses will not disturb the former accesses. be able to.
次に、゛本発明の実施例について図面を参照して説明す
る。Next, embodiments of the present invention will be described with reference to the drawings.
第1図は本発明のキャッシュ記憶制御方式が適用された
キャッシュ記憶装置の一実施例の構成図である。ここで
は、4レベルのセットアソシアティブ方式のキャッシュ
記憶を例として説明する。FIG. 1 is a block diagram of an embodiment of a cache storage device to which the cache storage control method of the present invention is applied. Here, a four-level set associative cache storage will be explained as an example.
キャッシュ記憶には、上位装置(例えば演算装置)から
の要求アドレスがアドレスレジスタ2に格納されるとと
もに、その要求がキャッシュ記憶のどのレベルにあるも
のを対象としているかを示すレベルをレベル指定レジス
タ1に格納する。次に、アドレスレジスタ2の内容をも
って、アドレスアレイ5の内容との一致チェックがセッ
トアソシアティブに比較器群6によって行なわれる。比
較器群6の各出力はレベル指定レジスタ1の出力とゲー
ト群7で有効条件が取られる。ここで、もし、レベル指
定レジスタ1に指定されたレベル中のレベルで一致が見
られた場合(キャッシュ・ヒツト)には、そのレベルが
ヒツトレベルレジスタ8に格納され、次の段階でデータ
アレイIOのアクセスレベルとして用いられる。データ
アレイlOから読出されたデータはキャッシュリードレ
ジスタ13に格納され要求元にデータを返却する。In the cache memory, a request address from a higher-level device (for example, an arithmetic unit) is stored in an address register 2, and a level indicating which level of the cache memory the request is directed to is stored in a level specification register 1. Store. Next, the contents of the address register 2 are checked for coincidence with the contents of the address array 5 by the comparator group 6 in a set-associative manner. Validity conditions are taken for each output of the comparator group 6 by the output of the level designation register 1 and the gate group 7. Here, if a match is found among the levels specified in level specification register 1 (cache hit), that level is stored in hit level register 8, and in the next step data array IO Used as an access level. The data read from the data array IO is stored in the cache read register 13, and the data is returned to the request source.
もし、ゲート群7で有効条件を取る時、レベル指定レジ
スタ1で指定されたレベル中で、比較器群6の各レベル
の出力が一致を示さないなら、「キャッシュ・ミス」状
態として、キャッシュ記憶内のブロックの入れ換えを行
なう。この時、どのブロックを入れ換えるかは、要求ア
ドレスで一意に決定されるセット内の各レベルのLRU
ブロックとしているとする。このため、キャッシュ・ヒ
ツト時には、データアレイ10をアクセスするサイクル
でアドレスレジスタ4とヒツトレベルレジスタ8の内容
をもって、LRURAM9をヒツトレベルレジスタ8に
格納されたレベルが最新のアクセスレベルであるように
書き換えている。If the output of each level of the comparator group 6 does not indicate a match among the levels specified by the level specification register 1 when the valid condition is taken in the gate group 7, the cache memory is determined as a "cache miss" condition. Swaps the blocks within. At this time, which block to replace is determined by the LRU of each level within the set, which is uniquely determined by the request address.
Assume that it is a block. Therefore, at the time of a cache hit, the LRURAM 9 is rewritten using the contents of the address register 4 and the hit level register 8 in the cycle in which the data array 10 is accessed so that the level stored in the hit level register 8 is the latest access level. There is.
キャッシュ・ミス時にはLRURAM9を読出しデコー
ド回路11で最も以前にアクセスしたレベル(LRUレ
ベル)を出力し、置換えレベルレジスタ12に納めてい
る。ただし、従来のキャッシュメモリ装置では、全ての
レベル中のLRUレベルを置き換えるが、本発明ではア
ドレスレジスタ4と同じステージのレベル指定レジスタ
3の示すレベル内でLRUレベルを決定する。即ち、従
来はLRURAM9に格納されている全てのレベルのア
クセスの前後関係から、LRUレベルを決定したが、本
発明では、デコード回路IIはレベル指定レジスタ3で
指定されたレベル間のアクセスの前後関係からLRUレ
ベルを決定する。こうすることにより、ある種の要求に
対して常に同じレベル指定を付随させれば、キャッシュ
記憶内の特定のレベルにのみデータを格納することがで
きる。指定していないレベルは、その要求から見れば、
あたかも切り離されているように見える。At the time of a cache miss, the LRURAM 9 is read and the level most recently accessed by the decoding circuit 11 (LRU level) is outputted and stored in the replacement level register 12. However, in the conventional cache memory device, the LRU level among all levels is replaced, but in the present invention, the LRU level is determined within the level indicated by the level designation register 3 at the same stage as the address register 4. That is, in the past, the LRU level was determined from the context of accesses of all levels stored in the LRURAM 9, but in the present invention, the decoding circuit II determines the context of accesses between levels specified by the level designation register 3. The LRU level is determined from This allows data to be stored only at a particular level within cache storage by always accompanying a certain type of request with the same level specification. A level that is not specified is, from the point of view of the request,
It looks as if they are separated.
以上説明したように本発明は、キャッシュ記憶装置への
アクセス要求に付随して、そのアクセス要求がアクセス
しようとする記憶内容のキャッシュ記憶装置における存
在範囲を限定する情報を送り、キャッシュ記憶は、この
情報内でヒツト・ミスの判定および置き換えレベルを決
定することにより、アクセス頻度は数ないが、アクセス
時には高いアクセススピードが要求されるようなデータ
のキャッシュピット率を高め、アクセスの局所性が高い
データと低いデータを分けることにより、後者アクセス
による前者アクセスへの擾乱を防止することができる。As explained above, the present invention sends, along with an access request to a cache storage device, information that limits the existence range in the cache storage device of the storage content that the access request attempts to access. By determining hits and misses within the information and determining the replacement level, we can increase the cache pit rate for data that is accessed infrequently but requires high access speed when accessing, and improve data that has high locality of access. By separating low and low data, it is possible to prevent the latter access from disturbing the former access.
第1図の本発明のキャッシュ記憶制御方式が適用された
キャッシュ記憶装置の一実施例の構成図である。
1.3−・・レベル指定レジスタ、
2.4−・・アドレスレジスタ、
5・・・アドレスアレイ、
6・・・比較器群、 7・−ゲート群、8・・
・ヒラ・トレベルレジスタ、
9−LRURAM、
lO−・データアレイ、
11−・デコード回路、
12−一置換えレベルレジスタ、
13・・・キャッシュリードレジスタ。FIG. 2 is a configuration diagram of an embodiment of a cache storage device to which the cache storage control method of the present invention shown in FIG. 1 is applied. 1.3--Level specification register, 2.4--Address register, 5--Address array, 6--Comparator group, 7--Gate group, 8...
・Hira level register, 9-LRURAM, lO-・data array, 11-・decode circuit, 12--replacement level register, 13--cache read register.
Claims (1)
ティブにバッファリングする比較的高速で小容量のキャ
ッシュ記憶装置において、 該キャッシュ記憶装置へのアクセス要求に付随して、該
アクセス要求がアクセスしようとする記憶内容の該キャ
シュ記憶装置における存在範囲を限定する情報を送り、
該キャッシュ記憶装置は該存在範囲を限定する情報によ
り、該マスストレージの内容をバッファリングする範囲
を限定し、かつ、該存在範囲内の該アクセスしようとし
ている記憶内容の存在を示す信号を有効にするキャッシ
ュ制御方式。[Scope of Claims] In a relatively high-speed, small-capacity cache storage device that associatively buffers the contents of relatively low-speed, large-capacity mass storage, the access Sending information that limits the existence range of the storage content that the request attempts to access in the cache storage device;
The cache storage device limits the range in which the content of the mass storage is buffered based on the information that limits the existence range, and enables a signal indicating the existence of the storage content to be accessed within the existence range. cache control method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62279750A JPH0644247B2 (en) | 1987-11-04 | 1987-11-04 | Cache storage control method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62279750A JPH0644247B2 (en) | 1987-11-04 | 1987-11-04 | Cache storage control method |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH01120649A true JPH01120649A (en) | 1989-05-12 |
JPH0644247B2 JPH0644247B2 (en) | 1994-06-08 |
Family
ID=17615384
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP62279750A Expired - Lifetime JPH0644247B2 (en) | 1987-11-04 | 1987-11-04 | Cache storage control method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH0644247B2 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016525252A (en) * | 2014-01-27 | 2016-08-22 | ヴィア アライアンス セミコンダクター カンパニー リミテッド | Fractional use of predictive history storage for operating system routines |
-
1987
- 1987-11-04 JP JP62279750A patent/JPH0644247B2/en not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2016525252A (en) * | 2014-01-27 | 2016-08-22 | ヴィア アライアンス セミコンダクター カンパニー リミテッド | Fractional use of predictive history storage for operating system routines |
Also Published As
Publication number | Publication date |
---|---|
JPH0644247B2 (en) | 1994-06-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5664148A (en) | Cache arrangement including coalescing buffer queue for non-cacheable data | |
US4583165A (en) | Apparatus and method for controlling storage access in a multilevel storage system | |
JP3987577B2 (en) | Method and apparatus for caching system management mode information along with other information | |
US6782453B2 (en) | Storing data in memory | |
KR20010101694A (en) | Techniques for improving memory access in a virtual memory system | |
EP0139407B1 (en) | Data select match | |
JPH07129471A (en) | Computer system containing main memory and pre-fetch cache and operation method thereof | |
US7577791B2 (en) | Virtualized load buffers | |
US4648033A (en) | Look-aside buffer LRU marker controller | |
US6976130B2 (en) | Cache controller unit architecture and applied method | |
GB2307319A (en) | Dual-directory virtual cache | |
JPH01120649A (en) | Cache memory control system | |
JP3733604B2 (en) | Cache memory | |
JPS644214B2 (en) | ||
JP2000047942A (en) | Device and method for controlling cache memory | |
JPH03175545A (en) | Cache memory control circuit | |
JP2703255B2 (en) | Cache memory writing device | |
JPH06139147A (en) | Cache memory system | |
JPH0612331A (en) | Cache memory controller | |
JPH06282487A (en) | Cache device | |
JPH05324473A (en) | Cache memory system and microprocessor unit | |
JPH0363741A (en) | Disk cache device | |
JPH02287849A (en) | Disk cache control method and disk cache device | |
JP2000040030A (en) | Method and device for controlling cache memory | |
JPH077355B2 (en) | Information processing equipment |