JPH0612331A - キャッシュメモリ制御装置 - Google Patents

キャッシュメモリ制御装置

Info

Publication number
JPH0612331A
JPH0612331A JP4167150A JP16715092A JPH0612331A JP H0612331 A JPH0612331 A JP H0612331A JP 4167150 A JP4167150 A JP 4167150A JP 16715092 A JP16715092 A JP 16715092A JP H0612331 A JPH0612331 A JP H0612331A
Authority
JP
Japan
Prior art keywords
block
cache memory
cache
replaced
access
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
JP4167150A
Other languages
English (en)
Inventor
Takeshi Sanbe
健 三部
Ryuji Tanabe
隆二 田辺
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP4167150A priority Critical patent/JPH0612331A/ja
Publication of JPH0612331A publication Critical patent/JPH0612331A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 【目的】 逐次的に読み込まれたブロックを認識し、そ
のブロックを置換対象となし、周期的にアクセスされる
ブロックを優先的にキャッシュメモリ内に残すことによ
って、キャッシュメモリのヒット率を向上させるキャッ
シュメモリ制御装置を得る。 【構成】 キャッシュメモリに対するアクセス要求を認
識する認識手段と、この認識手段の結果に従って各ブロ
ックに格納されているデータに対するアクセス要求の回
数を記憶する第1の記憶手段と、置換対象の候補となる
ブロックの個数を記憶する第2の記憶手段と、この第2
の記憶手段の情報により選ばれた置換対象となるブロッ
クのうちで、どのブロックを置換対象のブロックとする
かを判定する判定手段を備えたものである。 【効果】 キャッシュミスの発生が軽減され、キャッシ
ュメモリのヒット率を向上させることができる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、データ処理装置にお
けるキャッシュメモリ制御装置、特にセット・アソシア
ティブ方式のキャッシュメモリにおける置換制御に関す
るものである。
【0002】
【従来の技術】従来、キャッシュメモリにおける置換制
御の例としては、LRU(LeastRecently
Used)方式、すなわち置き換えの候補となるブロ
ックのうちで最も長い時間使用されることがなかったも
のを置き換えの対象とする方式が一般的に知られてい
る。LRU方式によるキャッシュメモリの置換制御方式
の一例は、米国特許第4,008,460号明細書に示
されている。
【0003】図4は、例えば昭和61年12月10日日
経マグロウヒル株式会社発行の「32ビット・マイクロ
プロセッサの全容−企業・戦略・技術・市場動向」(第
242頁〜第265頁)に開示された従来のキャッシュ
メモリ制御装置の構成を示すブロック図である。図にお
いて、1はリプレースアレイ、2はアドレスバス、3は
置換制御回路、4はキャッシュメモリヒットバス、5は
リプレースブロック出力バス、6はリプレースアレイ書
込みデータバス、7はバスである。
【0004】次に、上記図4に示される従来のキャッシ
ュメモリ制御装置の動作について説明する。リプレース
アレイ1はキャッシュメモリ(図示しない)をアクセス
するごとに変化させる。キャッシュメモリにアクセスが
ある時には、アクセスされるデータのアドレスがアドレ
スバス2を経てリプレースアレイ1に入力され、このリ
プレースアレイ1によって読み出される。その時、同時
にキャッシュメモリのディレクトリ(索引)も読み出さ
れ、キャッシュがヒットしたか否かが判定され、その結
果がキャッシュメモリヒットバス4を介して置換制御回
路3に入力される。
【0005】その時、置換制御回路3では、キャッシュ
ヒットした場合には、ヒットしたキャッシュブロック
を、キャッシュヒットしなかった場合には、最も最近に
参照されなかったブロックを最も最近参照されたキャッ
シュブロックにするようにリプレースアレイ書込みデー
タバス6を介してリプレースアレイ1を更新する。同時
に、キャッシュミスした場合には、リプレースブロック
出力バス5を用いて最も最近参照されなかったブロック
をリプレース対象のブロックとして出力する。
【0006】
【発明が解決しようとする課題】上記した従来のキャッ
シュメモリ制御装置は以上のように構成されているの
で、キャッシュメモリに対して置換制御を行う時には、
最も過去にアクセスされたブロックが置換の対象となっ
ていた。
【0007】通常、データ処理装置におけるデータのア
クセスには、あるデータに一度しかアクセスしない逐次
的なアクセスと、同じデータに複数回アクセスする周期
的なアクセスがある。従来のキャッシュメモリ制御装置
では、周期的にアクセスされるデータであるか、逐次的
にアクセスされるデータであるかが区別されないため
に、周期的にアクセスされるデータが置換されてしま
い、周期的なデータがアクセスされるごとにキャッシュ
ミスが発生するという問題点があった。
【0008】この発明は上記のような問題点を解消する
ためになされたもので、逐次的に読み込まれたブロック
を認識し、そのブロックを置換対象となし、周期的にア
クセスされるブロックを優先的にキャッシュメモリ内に
残すことによって、キャッシュメモリのヒット率を向上
させるキャッシュメモリ制御装置を得ることを目的とす
る。
【0009】
【課題を解決するための手段】この発明に係わるキャッ
シュメモリ制御装置は、キャッシュメモリに対するアク
セス要求を認識する認識手段と、各ブロックに格納され
ているデータに対するアクセス要求の回数を記憶する第
1の記憶手段と、置換対象の候補となるブロックの個数
を記憶する第2の記憶手段と、置換する対象のブロック
を判定する判定手段を備えたものである。
【0010】
【作用】この発明におけるキャッシュメモリ制御装置で
は、認識手段はキャッシュメモリに対するアクセス要求
を認識し、第1の記憶手段は各ブロックに格納されてい
るデータに対するアクセス要求の回数を認識手段の結果
に従って記憶し、第2の記憶手段は置換対象となるブロ
ックの個数を記憶し、判定手段は第2の記憶手段の情報
により選ばれた置換対象となるブロックのうちで、どの
ブロックを置換対象のブロックとするかを判定するの
で、アクセス要求の頻度が大きいキャッシュデータを優
先的にキャッシュメモリ内に残すことができる。
【0011】
【実施例】
実施例1.以下、この発明の実施例を図について説明す
る。図1はこの発明の実施例1であるキャッシュメモリ
制御装置の構成を示すブロック図、図2は図1のキャッ
シュメモリ制御装置における置換制御回路の構成を示す
ブロック図である。各図において、1はリプレースアレ
イ、2はアドレスバス、3は置換制御回路、4はキャッ
シュメモリヒットバス、5はリプレースブロック出力バ
ス、6はリプレースアレイ書込みデータバス、7,9は
バス、8はアクセスアレイ、10はアクセスアレイ書込
みデータバス、11はアクセス要求バス、12はライト
信号バス、13は置換ブロック判定回路、14はレジス
タ、15はアクセス認識回路である。
【0012】次に、上記この発明の実施例1であるキャ
ッシュメモリ制御装置の動作について説明する。キャッ
シュメモリの動作には、アクセス要求があったデータが
キャッシュメモリ内にあるキャッシュヒットの場合と、
アクセス要求があったデータがキャッシュメモリ内にな
いキャッシュミスの場合がある。
【0013】まず、キャッシュヒットの場合について説
明する。データがキャッシュメモリ(図示しない)をア
クセスする時には、キャッシュメモリのディレクトリ
(索引)の読み出しと同時に、アドレスバス2を用いて
アクセスアレイ8とリプレースアレイ1を読み出す。読
み出されたデータは置換制御回路3にそれぞれバス7及
びバス9を介して入力される。キャッシュヒットの場合
は、キャッシュヒットの情報と共にフェッチ要求のアド
レスがどこのキャッシュブロックと一致したかをキャッ
シュメモリヒットバス4を介して置換制御回路3へ伝え
られる。また、キャッシュアクセスが起こったことをア
クセス要求バス11を介して置換制御回路3に入力さ
れ、さらに、そのアクセスがフェッチ要求であるかスト
ア要求であるかはライト信号バス12を介した置換制御
回路3に入力される。置換制御回路3にはアクセス認識
回路15が内蔵されており、このアクセス認識回路15
はフェッチ動作をアクセス要求バス11とライト信号バ
ス12からフェッチ要求であることを認識すると、例え
ばフェッチ要求であることを示す論理値「1」のデータ
を置換ブロック判定回路13へ出力する。
【0014】置換ブロック判定回路13には、リプレー
スアレイ1の情報、アクセスアレイ8の情報、キャッシ
ュヒットの情報、キャッシュヒットした場合にはそのブ
ロックの情報がそれぞれ入力される。置換ブロック判定
回路3は、リプレースアレイ1へは上記した従来の技術
と同様にLRU制御を行うための更新データを、リプレ
ースアレイ書込みデータバス6を介してリプレースアレ
イ1に書き込む。アクセスアレイ8の更新は、次のよう
にして行う。キャッシュメモリヒットバス4にはキャッ
シュヒットした情報と、キャッシュヒットしたブロック
の情報が含まれている。アクセス認識回路15の出力が
「1」であった時のみ、キャッシュメモリヒットバス4
に示されるキャッシュヒットしたブロックの情報に対応
するところのデータを+1し、アクセスアレイ書込みデ
ータバス10を介してアクセスアレイ8を更新する。以
上のようにして、アクセスアレイ8には各キャッシュブ
ロックに対するフェッチ要求の回数を記憶する。
【0015】次に、キャッシュミスした場合について説
明する。キャッシュヒットの場合と同様にアクセスしよ
うとするデータのアドレスがアドレスバス2に送られ、
このアドレスバス2によりリプレースアレイ1とアクセ
スアレイ8が読み出される。置換ブロック判定回路13
はキャッシュメモリヒットバス4からキャッシュミスが
発生したことを認識すると、リプレースアレイ1とアク
セスアレイ8を読み出して、次に置換対象のブロックを
次のようにして決定する。
【0016】まず、置換ブロック判定回路13は、リプ
レースアレイ1の情報から過去に参照された履歴を判定
する。この制御は、上記した従来の技術と同様にLRU
制御を行う。次に、レジスタ14に格納されているキャ
ッシュブロックの置換の候補となる個数分だけ、最も過
去からアクセスされたキャッシュブロックを認識する。
例えば、レジスタ14に「2」と云う情報が保持されて
いる場合は、最も過去に参照されたブロックと、その次
に過去に参照されたブロックが置換対象の候補のブロッ
クとなる。同時にアクセスアレイ8の情報により最も過
去からアクセスされたキャッシュブロックのアクセス回
数を比較する。アクセス回数を比較するキャッシュブロ
ックのうちで、最もアクセス頻度の少ないキャッシュブ
ロックを置換対象のブロックとする。もしも、アクセス
頻度が最も少ないブロックが複数個存在する場合には、
その中で最も過去にアクセスされたブロックを置換対象
のブロックとする。リプレースブロックが決定されたな
らば、リプレースブロック出力バス5を用いてキャッシ
ュメモリをリプレースする。
【0017】この場合に、リプレースアレイ1とアクセ
スアレイ8の更新は以下のようにして行う。アクセスア
レイ8はキャッシュメモリをアクセスする時に読み出さ
れたブロックに対応する情報をすべてクリアする。上記
した実施例1においては、フェッチ要求の頻度の多いブ
ロックをキャッシュメモリ内に優先的に格納することが
できる。
【0018】実施例2.この発明の実施例2であるキャ
ッシュメモリ制御装置は、図2に示されるこの発明の実
施例1であるキャッシュメモリ制御装置の置換制御回路
3の構成内に存在するアクセス認識回路15において、
このアクセス認識回路15の出力をストア要求があった
時だけ論理値「1」の信号とする場合の実施例を示した
ものである。この発明の実施例2によるキャッシュメモ
リ制御装置によれば、ストア要求の頻度の多いブロック
をキャッシュメモリ内に優先的に格納することができ
る。
【0019】実施例3.この発明の実施例3であるキャ
ッシュメモリ制御装置は、図2に示されるこの発明の実
施例1であるキャッシュメモリ制御装置の置換制御回路
3の構成内に存在するアクセス認識回路15において、
このアクセス認識回路15の出力をキャッシュアクセス
があった時だけ論理値「1」の信号とする場合の実施例
を示している。この発明の実施例3によるキャッシュメ
モリ制御装置によれば、ストア要求の頻度の多いブロッ
クをキャッシュメモリ内に優先的に格納することができ
る。
【0020】実施例4.図3はこの発明の実施例4であ
るキャッシュメモリ制御装置における置換制御回路の構
成を示すブロック図である。図において、3は置換制御
回路、4はキャッシュメモリヒットバス、5はリプレー
スブロック出力バス、6はリプレースアレイ書込みデー
タバス、7,9はバス、10はアクセスアレイ書込みデ
ータバス、11はアクセス要求バス、12はライト信号
バス、13は置換ブロック判定回路、14,16はレジ
スタ、15はアクセス認識回路である。
【0021】図3は示される置換制御回路3において、
レジスタ16はアクセス認識回路15にどのような種類
のアクセス要求を認識させるかの情報を保持しており、
例えばフェッチ要求を認識させる情報、ストア要求を認
識させる情報を別々に保持している。アクセス認識回路
15はレジスタ16が保持している情報に従って、レジ
スタ16がフェッチ要求を認識させる情報を保持してい
るならば、フェッチ要求の時に論理値「1」を出力し、
また、ストア要求を認識させる情報を保持しているなら
ば、ストア要求の時に論理値「1」を出力するように構
成する。以上のように構成することにより、レジスタ1
6に指定したアクセス要求に関して、アクセス要求の頻
度の多いブロックをキャッシュメモリ内に優先的に格納
することができる。
【0022】また、レジスタ16の情報を変更すること
により、キャッシュメモリに格納するブロックを、フェ
ッチ要求が多い場合、ストア要求が多い場合、アクセス
要求が多い場合とに動的に切り替えて変更することが可
能である。
【0023】なお、上記した各実施例では、置換対象と
なるブロックを選択する時に、LRU方式を用いた場合
について説明したが、置換対象となるブロックを選択す
る時に、FIFO(First In First O
ut)方式、すなわち最も以前にキャッシュメモリに読
み出されたブロック置き換えの対象とする方式を用いた
場合にも利用することができる。
【0024】
【発明の効果】以上のように、この発明のキャッシュメ
モリ制御装置によれば、キャッシュメモリに対するアク
セス要求を認識する認識手段と、各ブロックに格納され
ているデータに対するアクセス要求の回数を記憶する第
1の記憶手段と、置換対象の候補となるブロックの個数
を記憶する第2の記憶手段と、置換する対象のブロック
を判定する判定手段を備えたものであるので、アクセス
要求の頻度が大きいキャッシュデータを優先的にキャッ
シュメモリ内に残すことができ、そのために、キャッシ
ュミスの発生が軽減され、キャッシュメモリのヒット率
を向上させることができるという優れた効果を奏する。
【図面の簡単な説明】
【図1】この発明の実施例1であるキャッシュメモリ制
御装置の構成を示すブロック図である。
【図2】図1のキャッシュメモリ制御装置における置換
制御回路の構成を示すブロック図である。
【図3】この発明の実施例4であるキャッシュメモリ制
御装置における置換制御回路の構成を示すブロック図で
ある。
【図4】従来のキャッシュメモリ制御装置の構成を示す
ブロック図である。
【符号の説明】
1 リプレースアレイ 2 アドレスバス 3 置換制御回路 4 キャッシュメモリヒットバス 5 リプレースブロック出力バス 6 リプレースアレイ書込みデータバス 7 バス 8 アクセスアレイ 9 バス 10 アクセスアレイ書込みデータバス 11 アクセス要求バス 12 ライト信号バス 13 置換ブロック判定回路 14 レジスタ 15 アクセス認識回路 16 レジスタ

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 複数のブロックからなるバッファと、各
    ブロックのデータの置換を制御する置換制御回路とを備
    え、セット・アソシアティブ方式で構成され、書込み制
    御がストア・イン方式で行われるキャッシュメモリ制御
    装置において、 キャッシュメモリに対するアクセス要求を認識する認識
    手段と、 各ブロックに格納されているデータに対するアクセス要
    求の回数を記憶する第1の記憶手段と、 置換対象の候補となるブロックの個数を記憶する第2の
    記憶手段と、 上記第1の記憶手段と上記第2の記憶手段を用いて置換
    すべきブロックを判定する判定手段とを備え、 アクセス要求の頻度が大きいキャッシュデータを優先的
    にキャッシュメモリ内に残すことを特徴とするキャッシ
    ュメモリ制御装置。
JP4167150A 1992-06-25 1992-06-25 キャッシュメモリ制御装置 Pending JPH0612331A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP4167150A JPH0612331A (ja) 1992-06-25 1992-06-25 キャッシュメモリ制御装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP4167150A JPH0612331A (ja) 1992-06-25 1992-06-25 キャッシュメモリ制御装置

Publications (1)

Publication Number Publication Date
JPH0612331A true JPH0612331A (ja) 1994-01-21

Family

ID=15844352

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4167150A Pending JPH0612331A (ja) 1992-06-25 1992-06-25 キャッシュメモリ制御装置

Country Status (1)

Country Link
JP (1) JPH0612331A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100541366B1 (ko) * 2002-07-19 2006-01-16 주식회사 하이닉스반도체 고속 데이터 억세스를 위한 디램
JP2009122787A (ja) * 2007-11-13 2009-06-04 Nec Computertechno Ltd マルチプロセッサシステム
US8116565B2 (en) 2004-11-11 2012-02-14 Nec Infrontia Corporation Collation device and collation method for authenticating users

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100541366B1 (ko) * 2002-07-19 2006-01-16 주식회사 하이닉스반도체 고속 데이터 억세스를 위한 디램
US8116565B2 (en) 2004-11-11 2012-02-14 Nec Infrontia Corporation Collation device and collation method for authenticating users
JP2009122787A (ja) * 2007-11-13 2009-06-04 Nec Computertechno Ltd マルチプロセッサシステム

Similar Documents

Publication Publication Date Title
US5353426A (en) Cache miss buffer adapted to satisfy read requests to portions of a cache fill in progress without waiting for the cache fill to complete
JP2554449B2 (ja) キャッシュ・メモリを有するデータ処理システム
US5584013A (en) Hierarchical cache arrangement wherein the replacement of an LRU entry in a second level cache is prevented when the cache entry is the only inclusive entry in the first level cache
US5689679A (en) Memory system and method for selective multi-level caching using a cache level code
EP0431463B1 (en) Two-level translation look-aside buffer using partial addresses for enhanced speed
US8621152B1 (en) Transparent level 2 cache that uses independent tag and valid random access memory arrays for cache access
GB2468007A (en) Data processing apparatus and method dependent on streaming preload instruction.
US5822760A (en) Cache-memory system having multidimensional cache
EP0675443A1 (en) Apparatus and method for accessing direct mapped cache
US11036639B2 (en) Cache apparatus and method that facilitates a reduction in energy consumption through use of first and second data arrays
JP2013041414A (ja) 記憶制御システムおよび方法、置換方式および方法
US7543113B2 (en) Cache memory system and method capable of adaptively accommodating various memory line sizes
JPH0612331A (ja) キャッシュメモリ制御装置
JPH09218823A (ja) キャッシュメモリ制御装置
JP3078303B2 (ja) キャッシュメモリ制御回路
JPH0477344B2 (ja)
US6904500B2 (en) Cache controller
JP3284508B2 (ja) データ先読み制御装置
JPH04288647A (ja) キャッシュメモリにおける置き換え制御装置
JPH06282487A (ja) キャッシュ装置
JPH04315235A (ja) キャッシュメモリにおけるキャッシュデータリプレース方法及びキャッシュデータリプレース装置
JPH05342101A (ja) 階層キャッシュ・メモリ
JP2972451B2 (ja) ハードウェア制御ソフトウェアによるキャッシュメモリ制御方式
JPH0520192A (ja) キヤツシユメモリのストア方式
JPH07152650A (ja) キャッシュ制御装置