JPH0289145A - キャッシュメモリ - Google Patents

キャッシュメモリ

Info

Publication number
JPH0289145A
JPH0289145A JP63242003A JP24200388A JPH0289145A JP H0289145 A JPH0289145 A JP H0289145A JP 63242003 A JP63242003 A JP 63242003A JP 24200388 A JP24200388 A JP 24200388A JP H0289145 A JPH0289145 A JP H0289145A
Authority
JP
Japan
Prior art keywords
data
way
address
storage
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.)
Pending
Application number
JP63242003A
Other languages
English (en)
Inventor
Itsuko Ishida
石田 伊都子
Masayuki Hata
雅之 畑
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 JP63242003A priority Critical patent/JPH0289145A/ja
Publication of JPH0289145A publication Critical patent/JPH0289145A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 [産業上の利用分野] この発明はキャッシュメモリに関し、特にマルチタスク
システムに適するキャッシュメモリに関する。
[従来の技術] 電子計算機あるいはマイクロコンピュータシステムのメ
インメモリには、演算処理に必要な種々のデータが格納
されており、アドレス信号によりその所望のものをアク
セスして使用する。ところで、使用したデータはその直
後に再び使用することがよくあるが、使用の都度そのデ
ータを大容量低速のメインメモリから読出すのは時間が
かかり、非効率的である。そこで、アクセス速度の高速
化を図るために、キャッシュメモリと呼ばれる高速のバ
ッファメモリを使用する方式が提案されている。
このキャッシュメモリ方式は、たとえば第3図に示され
るように、データ処理袋@(たとえばC20)100か
らの要求に応じてメインメモリ200のうちの使用頻度
の高い領域のデータを、高速のバッファメモリであるキ
ャッシュメモリ300に記憶し、データ処理装置100
からのアクセスに対し、メインメモリ200に代わって
そのデータの読出し/書込みを高速に行なう方式である
キャッシュメモリ300は、固定のデータを記憶してい
るのではなくデータ処理装置100からの要求に応じて
記憶するメインメモリ200の領域は変化している。し
かし、成るデータ処理におけるデータ処理装置100か
らのメモリアクセス領域には局所性がある。したがって
、データ処理装置100からの要求に応じてメインメモ
リ200から取出してキャッシュメモリ300に記憶し
たデータは、その後もしばらくはアクセスされる可能性
が高い。したがって、−旦キャッシュメモリ300ヘメ
インメモリ200のデータが記憶されると高速メモリの
効果が発揮されて、データ処理装置100のメモリアク
セスの待ち時間なしくノーウェイト)が実現する。つま
りデータ処理装置100はその処理速度がメモリアクセ
ス時間によって遅延されることがない。
データ処理装置100の処理の進行ともとにメモリアク
セスする領域は移動していく。それに従って、キャッシ
ュメモリ300では記憶するメインメモリ200の領域
の切換えも行なわれる。しかし、追出された領域が再び
アクセスされる場合は、キャッシュメモリ300におい
て再び入替えが必要となり、それが頻繁に起こるとシス
テムの性能が低下する。
一般に、キャッシュメモリ300の効果を示すのにヒツ
ト率を使う。ヒ・ブト率とは、データ処理装置100か
らのメモリアクセスに対し、キャッシュメモリ300内
にそのアクセス領域のデータが存在する確率である。存
在すれはヒツトと言い、存在しない場合はキャッシュミ
スと言う。キャッシュミスの場合はデータ処理装置10
0からの要求アドレスに対応するワードを含むデータの
塊りをメインメモリ200からキャッシュメモリ300
へ取込み、次回からのデータアクセスに備える。
このデータの塊りをデータブロックと言う。
キャッシュメモリ300は、単に容量が大きいほどヒツ
ト率が高くなるわけではなく、キャッシュメモリの構成
によるところが大きい。ヒツト率を上げるための一例と
して、Nウェイセットアソシアティブ方式がある。
第4図は、インターフェイス1987年8月号No、1
23の第250頁に示された4ウ工イセツトアソシアテ
イブ方式のキャッシュメモリを示すブロック図である。
図において、データ処理装置(図示せず)の要求アドレ
ス1は、アドレスタグla、セットセレクト1bおよび
ワードセレクト1cに分けられてキャッシュメモリ30
0に入力される。第4図のキャッシュメモリ300は、
4ウ工イセツトアソシアテイブ方式であるので、アドレ
スタグメモリ4、データメモリ7、アドレスタグ比較器
11、ワードセレクタ12およびウェイセレクタ16が
、それぞれ4個ずつ設けられている。アドレスタグ1a
はアドレスタグ比較器11に与えられる。セットセレク
ト1bは、アドレスタグメモリ4、データメモリ7およ
びLRυビットメモリ8に与えられる。ワードセレクト
1cはワードセレクタ12に与えられる。アドレスタグ
メモリ4およびデータメモリ7は同数の記憶領域(以下
、各記憶領域をエントリと称する)を有している。それ
ぞれのエントリには、既にデータ処理装置から要求のあ
ったアドレスのアドレスタグとそのアドレスによってメ
インメモリから読出されたデータブロックとが格納され
ている。この例では、各データブロックは4ワードで構
成されている。
アドレスタグメモリ4およびデータメモリ7のアクセス
は、セットセレクト1bでエントリアドレスを指定する
ことにより行なわれる。すなわち、各アドレスタグメモ
リ4においてセットセレクト1bにより選択されたエン
トリからアドレスタグが読出されてアドレスタグ比較器
11に与えられる。また、各データメモリ7においてセ
ットセレクト1bにより選択されたエントリからデータ
ブロックが読出されてワードセレクタ12に与えられる
。各ワードセレクタ12は、ワードセレクト1cに基づ
いて、対応するデータメモリ7から与えられた1つのデ
ータブロック中に含まれる4ワ一ド分のデータのうち、
いずれか1つのワードを選択してウェイセレクタ16に
与える。
一方、各アドレスタグ比較器11は、データ処理装置か
ら現在要求されているアドレス1のアドレスタグ1aと
、対応するアドレスタグメモリ4から読出されたアドレ
スタグとを比較し、一致しているか否かを検出する。一
致した場合、アドレスタグ比較器11はヒツト信号を発
生するとともに、対応するウェイセレクタ16にウェイ
選択信号を与える。
ところで、第4図のキャッシュメモリは、アドレスタグ
メモリ4およびデータメモリ7を4つずつ備えており、
すなわち4つのウェイから構成されているので、同一の
エントリに対して最大4個までのアドレスタグおよびデ
ータブロックを記憶することができる。また、各ウェイ
は並行して同じ動作を行なうので、ヒツトの判定時には
、あるエントリアドレスに対して同時に4つのアドレス
タグを参照することになる。すなわち、4つのアドレス
タグ比較器11が、対応するアドレスタグメモリ4から
読出された各ウェイのアドレスタグと、データ処理装置
から現在要求されているアドレス1のアドレスタグ1a
との比較を4ウ工イ同時に行ない、ヒツト/キャッシュ
ミスの判定を行なう。
一方、ウェイセレクタ16は、アドレスタグ比較器11
からどのウェイがヒツトしたかを示すウェイ選択信号を
受け、ワードセレクタ12により選択された4つのワー
ドのうち1つのワードを決定し人出力データバス21に
導出する。
上記のように、ヒツトした場合はキャッシュメモリ30
0から直ちにデータが読出されてデータ処理装置で使用
されるが、キヤ・ンシュミスの場合はアドレス1によっ
てメインメモリのアクセスが実行され、メインメモリの
所定の領域からデータが読出されて使用される。このと
き、キャッシュメモリ300内でデータの入替えが行な
われ、アクセスに使用されたアドレス1のアドレスタグ
1aとメインメモリから読出されたデータブロックとが
それぞれアドレスタグメモリ4およびデータメモリ7の
選択されたエントリに書込まれる。このデータの入替え
時において、LRUビットメモリ8は、Least  
Recently  Usedアルゴリズムに従ってと
のウェイのデータを入替えるかを制御している。
なお、各ウェイの各エントリごとに設けられたバリッド
ビット5は対応のエントリのデータの有効性を示すもの
であり、このバリッドビット5がリセットされているエ
ントリについては、たとえアドレスタグの一致が検出さ
れてもヒツトしたと判定されない。
[発明が解決しようとする課題] 上記のような従来のキャッシュメモリでは、同一エント
リに対してキャッシュミスが複数回連続して生じると、
そのエントリに保管されている仝ウェイのデータがキャ
ッシュメモリから追い出されてしまう。したがって、使
用頻度の極めて高いデータ、たとえばマルチタスクシス
テム等におけるO3(オペレーティングシステム)の命
令が、ユーザのタスク実行中にキャッシュメモリ300
内から除かれてしまうことがある。そのため、O8の実
行状態に戻ったときに、再度そのO8命令をキャッシン
グ(メインメモリ200から読出してキャッシュメモリ
300内に格納すること)しなければならない。このよ
うなことがしばしば生じると、キャッシュメモリの高速
アクセス機能を有効に活用することができず、システム
全体の性能の低下を引き起こす。
この発明は、上記のような問題点を解消するためになさ
れたもので、使用頻度の高いデータを所望の記憶領域に
常時保管し得るようなキャッシュメモリを提供すること
を目的とする。
[課題を解決するための手段] この発明に係るキャッシュメモリは、メインメモリから
読出されたデータを一時的に保管するキャッシュメモリ
であって、アドレス記憶手段、データ記憶手段、判別手
段、読出手段、書換え手段、選択手段、書込手段、設定
手段、および制御手段を備えたものである。
アドレス記憶手段は、複数の記憶領域を有し、各記憶領
域にメインメモリのアクセスに使用されるアドレス情報
の少なくとも一部を記憶する。データ記憶手段は、アド
レス記憶手段の複数の記憶領域に対応する複数の記憶領
域を有し、各記憶領域にアドレス情報に対応するデータ
を記憶する。
判別手段は、アドレス情報が与えられたときに、そのア
ドレス情報に基づいてアドレス記憶手段の記憶内容を参
照することにより、そのアドレス情報に対応するデータ
がデータ記憶手段に記憶されているか否かを判別する。
読出手段は、判別手段がデータ記憶手段に対応のデータ
が記憶されていることを判別したことに応答して、その
対応のデータをデータ記憶手段から読出して外部へ導出
する。書換え手段は、判別手段がデータ記憶手段に対応
のデータが存在していないことを判別したことに応答し
て、アドレス記憶手段およびデータ記憶手段の書換えを
行なう。
選択1段は、アドレス記憶手段の複数の記憶領域のいず
れかおよびデータ記憶手段の対応する記憶領域を選択す
る。書込手段は、選択手段により選択されたアドレス記
憶手段の記憶領域およびデータ記憶手段の記憶領域にそ
れぞれアドレス情報およびデータを書込む。設定手段は
、選択手段により選択されたアドレス記憶手段の記憶領
域およびデータ記憶手段の記憶領域に対して、書換え手
段による書換えから解除されることを示す解除情報を設
定する。制御手段は、設定手段により設定された解除情
報に従って書換え手段に作用し、アドレス:ata手段
およびデータ記憶手段において解除情報が設定されてい
る記憶領域を書換え手段による書換えの対象から除外す
るように制御する。
[作用] この発明に係るキャッシュメモリにおいては、選択手段
により選択されたアドレス記憶手段およびデータ記憶手
段の記憶領域にアドレス情報およびデータを書込むこと
ができ、また、その記憶領域に解除情報を設定すること
ができる。解除情報が設定された記憶領域は書換えの対
象から除外される。しかって、所望のデータを所望の記
憶領域に常時保管することが可能となる。
〔実施例] 以下、図面を用いてこの発明の一実施例を詳細に説明す
る。
システム全体の構成は、第2図に示すように第4図に示
す従来のシステムと変わりはない。但し、データ処理装
置100からキャッシュメモリ301へは第1制御信号
19および第2制御信号20が与えられる。
第1図は、この発明の一実施例によるキャッシュメモリ
の構成を示すブロック図である。この実施例では一例と
して4ウ工イセツトアソシアテイブ方式のキャッシュメ
モリを示している。なお、ウェイの数は4に限らず2以
上であればよい。
第1図の実施例のキャッシュメモリは、第3図の従来の
キャッシュメモリと同様に、アドレスタグメモリ4、バ
リッドビット5、データメモリ7、アドレスタグ比較器
11、ワードセレクタ12、ウェイセレクタ16、およ
びLRUビットメモリ8を備えている。また、第3図の
従来例では簡略化のために示されていなかったが、第1
図の実施例では、デコーダ3、セレクタ2、LRU制御
回路10、ANDゲート14、およびヒツト判定部15
を備えている。デコーダ3は、セットセレクト1b+、
:f!l!iづいて、各アドレスタグメモリ4および各
データメモリ7の対応するいずれか1つのエントリを選
択するためのものである。セレクタ2は、LRU制御回
路10の出力に基づいて、アドレスタグ1aをいずれの
ウェイのアドレスタグメモリ4に入力するかを選択する
ためのものである。
LRU制御回路10には、ヒツト判定部15からウェイ
選択信号が与えられる。ANDゲート14はウェイごと
に設けられており、対応するアドレスタグ比較器、11
の出力とそのとき選択されているエントリのバリッドビ
ット5との論理積をとるものである。ANDゲート14
の出力はヒツト判定部15に与えられる。ヒツト判定部
15は、各ANDゲート14からの出力に基づいてどの
ウェイがヒツトしたかを判定するためのものである。
ヒツト判定部15は、いずれかのウェイがヒツトすると
、ヒツト信号を活性化するとともに、対応するウェイの
ウェイ選択信号を活性化する。
この実施例の特徴は、フリーズビット6を設け、このフ
リーズビット6のセット/リセットに応じ′て各ウェイ
のリプレース候補の順位の固定化を制御するようにした
こと、および、ウェイセレクタ16に書込レジスタ17
を付加し、データを記憶するウェイを指定することがで
きるようにしたことである。ここで、リプレース候補と
は、キャッシュミスが生じたときにメインメモリから読
出したデータを記憶するウェイの候補を言い、その順位
に関するデータはLRUビットメモリ8に記憶されてい
る。つまり、リプレース候補の順位が[D、  C,B
、 A]ならばウェイDにデータを記憶し、次のリプレ
ース候補の順位を[C,B、A。
D]としておく。
フリーズビット6がセットされたウェイは、リプレース
候補の対象から外される。したがって、フリーズビット
6がセットされたウェイにおいては、アドレスタグおよ
びデータブロックの書換えが行なわれず、記憶データが
常時キャッシュメモリ301内に保管されることになる
LRU制御回路10内に設けられたマスクレジスタ9は
、フリーズビット60セツト/リセツト状態に基づいて
、LRU制御回路10の出力をマスク制御するものであ
る。このマスクレジスタ9によって、フリーズビット6
のセットされたウェイのリプレース候補の順位が固定化
される。
フリーズビット6のセット/リセットの制御は、フリー
ズビット制御回路13によって行なわれる。
フリーズビット11制御回路13は、データ処理装置1
00などから与えられる第1制御信号19に基づいて対
応するウェイのフリーズビット6をセット/リセットす
る。このフリーズビット制御回路13には、ヒツト判定
部15からウェイ選択信号が与えられるとともに、LR
U制御回路10の出力が与えられる。
書込レジスタ17は、データ処理袋glloOなどから
与えられる第2制御信号20に基づいて、入出力データ
パス18に与えられるデータをどのウェイに書込むかを
制御するものである。
次に、第1図のキャッシュメモリの動作を説明する。
(1) 通常のキャッシュ動作 通常のキャッシュ動作は、第4図に示す従来のキャッシ
ュメモリ300とほぼ同様である。すなわち、データ処
理装置100からアドレス1が人力されると、各ウェイ
のアドレスタグメモリ4がらはデコーダ3によって選択
されたエントリにおけるアドレスタグが読出され、デー
タ処理装置100から入力されたアドレスタグ1aと比
較される。このとき、同じエントリにおけるバリッドビ
ット6の内容も読出される。各ウェイのANDゲート1
4は、対応するウェイのアドレスタグ比較器11が一致
を検出しかつ対応するウェイのバリラドビット6がセッ
トされている場合にノ\イレベルの信号を出力する。い
ずれか1つのウェイのANDゲート14の出力がハイレ
ベルになると、ヒツト判定部15はヒツトしたと判定し
、ヒツト信号を活性化するとともに、対応するウェイの
ウェイ選択信号を活性化する。
一方、各ウェイのデータメモリ7においては、デコーダ
3により選択されたエントリからデータブロックが読出
され、各ウェイのワードセレクタ12に与えられる。各
ウェイのワードセレクタ12は、与えられるワードセレ
クトICに基づいて各ウェイのデータブロックの中から
それぞれ1ワードのデータを選択し、ウェイセレクタ1
6に与える。ウェイセレクタ16は、ヒツト判定部15
からのウェイ選択信号に基づいて、各ウェイのワードセ
レクタ12から与えられる4つのワードデータの中から
ヒツトしたウェイのワードデータを選択し、入出力デー
タパス18に導出する。また、このときLRU制御回路
10は、ヒツト判定部15から与えられるウェイ選択信
号に基づいて、LRUビットメモリ8に記憶された各ウ
ェイのリプレース候補の順位の入替え制御を行なう。た
とえば、アクセス前のリプレース候補の順位が[A。
B、C,DlでウェイBがヒツトしたとすると、LRU
制御回路10はリプレース候補の順位を[A、C,D、
Blにする。
上記とは逆にキャッシュミスが生じた場合、すなわち各
ウェイのANDゲート14のいずれの出力もハイレベル
とならなかった場合は、アドレスタグメモリ4およびデ
ータメモリ7においてデータの入替えが行なわれる。す
なわち、この場合ヒツト判定部15はいずれのウェイの
ウェイ選択信号も活性化しないので、LRU制御回路1
0はLRUビットメモリ8により、そのとき選択されて
いるエントリのリプレース候補の順位を参照し、最も古
くアクセスされたウェイをデータ入替えの対象に選び、
データを書込む。たとえば、アクセス前のリプレース候
補の順位が[C,D、A、Blであったとすると、LR
U制御回路10は当該リプレース候補の順位を[D、A
、B、Clに入替えるとともに、ウェイセレクタ16お
よびセレクタ2に対してウェイCを選択する信号を出力
する。
それに応じて、セレクタ2はアドレスタグ1aをウェイ
Cのアドレスタグメモリ4に与える。それにより、アド
レスタグ1aがウェイCのアドレスタグメモリ4におい
てそのとき選択されているエントりに書込まれる。一方
、ウェイセレクタ16は、入出力データパス18からワ
ード順次に入力されるデータブロック(メインメモリ2
00から読出されたデータブロック)をL RU il
Q御回路10の出力に従ってウェイCのワードセレクタ
12に与える。ウェイCのワードセレクタ12は、与え
られたデータブロックをウェイCのデータメモリ7にお
いてそのとき選択されているエントリに書込む。
(2) フリーズビットがセットされている場合の動作 今、セットセレクトICに基づいてアドレスタグメモリ
4におけるあるエントリが選択されたとすると、そのエ
ントリのフリーズビット6の内容が読出されてマスクレ
ジスタ9に与えられる。このとき、マスクレジスタ9は
フリーズビット6のセットされているウェイがあれば、
そのウェイがデータ入替えの対象から外されるようにL
RU制御回路10の出力をマスク制御する。
ここで、LRUビットメモリ8は、各エントリごとに各
ウェイのアクセスされた古さの状態を記憶するものであ
る。この実施例では、LRUビットメモリ8は、たとえ
ば、1つのエントリに対して6ビツトの状態値を保持し
ている。今、4つのウェイA、B、C,Dがあり、ウェ
イAとBの関係を記jA:するビットを[A、Blとす
ると、ウェイAがウェイBより最近アクセスされていた
なら[A、Bl −0,ウェイBの方が最近アクセスさ
れていれば[A、B1−1を記憶する。同様に、ウェイ
AとCの関係を[A、C1のビットで、ウェイAとDの
関係を[A、Dlのビットで、ウェイBとCの関係を[
B、C1のビットで、ウェイBとDの関係を[B、 D
lのビットで、ウェイCとDの関係を[C,Dlのビッ
トでそれぞれ記憶する。そして、各ビットに記憶されて
いる内容が0なら上記表現の左側のウェイ(つまり、[
C。
DIならばウェイC)がその2つの関係に対して最近ア
クセスされているとし、各ビットに記憶されている内容
が1なら上記表現の右側のウェイ(つまり、[C,DI
ならばウェイD)がその2つの関係に対して最近アクセ
スされたとする。つまり、リプレース処理が生じた場合
、LRUビットメモリ8を読みに行き、たとえば[A、
Bl −1、[A、 C] −1,[A、 DI −1
という結果になればウェイAが最も古くアクセスされた
ことになる。そして、マスクレジスタ9はウェイAのフ
リーズビット6がセットされていると[A、Blを0に
固定でき、ウェイBのフリーズビット6がセットされて
いると[B、  C]を0に固定でき、ウェイCのフリ
ーズビット6がセットされていると[C,DIを0に固
定でき、ウェイDのフリーズビット6がセットされてい
ると[A、DIを1に固定できる。
ここで、ウェイAのフリーズビット6がセットされてい
ると、マスクレジスタ9は[A、BlをOに固定してし
まうので、LRUビットメモリ8は[A、 Bl −1
,[A、 C1−1,[A、 DI−1となり得ない。
そのため、ウェイAはデータ入替えの対象から除外され
る。
なお、第1図の実施例では、マスクレジスタ9でLRU
制御回路10の出力をマスク制御することによりLRU
ビットメモリ8内におけるリプレース候補の順位を間接
的に固定するようにしたが、対応するフリーズビット6
の出力によって応答するプルアップ素子をLRUビット
メモリ8内に設けることによりリプレース候補の順位を
直接的に固定化するようにしてもよい。すなわち、フリ
ーズビット6がセットされるとプルアップ素子がオンし
、LRUビットメモリ8を0に固定してしまう。また、
このようなプルアップ素子に換えてプルダウン素子を設
けてリプレース候補の順位を固定化するようにしてもよ
い。
このようにして、フリーズビット6がセットされている
ウェイは、常にデータ入替えの対象から外される。
(3)  フリーズビットのセット/リセット動作 まず、フリーズビットのセット動作について説明する。
データ処理装置100が、フリーズをかけたいデータに
対応するアドレス1を発生しキャッシュメモリ301に
与える。ここで、フリーズとは、データ入替えの対象か
ら除外することを言う。フリーズをかけたいデータは、
メインメモリ200から読出されてキャッシュメモリ3
01の入出力データバス18に与えられる。また、デー
タ処理装置100は、書込レジスタ17に第2制御信号
20を与え、フリーズしたいデータをとのウェイに書込
むかを指定する。たとえば、ウェイAにフリーズしたい
データを書込むとすると、第2制御信号20を受取った
書込レジスタ17が、人出力データバス18に与えられ
たデータがウェイAのデータメモリ7に書込まれるよう
にウェイセレクタ16を制御し、かつ、アドレスタグ1
aがウェイAのアドレスタグメモリ5に書込まれるよう
にセレクタ2を制御する。このようにして、フリーズし
たいデータおよびアドレスタグをすべてウェイAに書込
んだ後に、データ処理装置100は、第1制御信号1つ
によって、ウェイAのフリーズビットをセットすること
をフリーズビット制御回路13に指定する。これにより
、フリーズビット制御回路13がウェイAのフリーズビ
ット6をセットする。
フリーズビット6をリセットする場合には、データ処理
装置100は、第1制御信号19によって、ウェイAの
フリーズビットをリセットすることをフリーズビット制
御回路13に指定する。これにより、フリーズビット制
御回路13は、フリーズビット6をリセットする。
このように、上記実施例によると、データ処理装置10
0が、データを記憶するウェイを指定し、そのウェイの
みにフリーズしたいデータを書込み、そのウェイのみに
フリーズをかけることができる。
したがって、フリーズしたいデータをあるウェイに集中
することができ、フリーズ命令を有効に使うことができ
る。
なお、この発明は、Nウェイセットアソシアティブ方式
のキャッシュメモリに限らず、フルアソシアティブ方式
やダイレクトマツピング方式のキャッシュメモリにも適
用することができる。フルアソシアティブ方式とは、エ
ントリが1つしかなく、この1つのエントリに対して多
数のウェイを有する方式を言う。また、ダイレクトマツ
ピング方式とは、ウェイが1つしかなく、この1つのウ
ェイに対して多数のエントリを有する方式を言う。
[発明の効果] 以上のように、この発明によれば、所望のデータをキャ
ッシュメモリ内の所望の記憶領域に常時保持させておく
ことができるので、キャッシュメモリの高速アクセス機
能をH効に活用することができ、システム性能の向上を
図ることができるとともに、データ書換えの解除命令を
有効に使用することができる。
【図面の簡単な説明】
第1図はこの発明の一実施例による4ウ工イセツトアソ
シアテイブ方式のキャッシュメモリを示すブロック図で
ある。第2図はこの発明の一実施例によるキャッシュメ
モリを用いたデータ処理システムの構成を示すシステム
ブロック図である。 第3図はキャッシュメモリを用いた従来のデータ処理シ
ステムの構成を示すシステムブロック図である。第4図
は従来の4ウ工イセツトアソシアテイブ方式のキャッシ
ュメモリの構成を示すブロック図である。 図において、1はアドレス、2はセレクタ、3はデコー
ダ、4はアドレスタグメそり、5はバリッドビット、6
はフリーズビット、7はデータメモリ、8はLRUビッ
トメモリ、9はマスクレジスタ、10はLRU制御回路
、11はアドレスタグ比較器、12はワードセレクタ、
13はフリーズビット制御回路、14はANDゲート、
15はヒツト判定部、16はウェイセレクタ、17は書
込レジスタ、18は入出力データパス、19は第1制御
信号、20は第2制御信号、21は人出力データパスで
ある。 なお、各図中同一符号は同一または相当部分を示す。 第2図

Claims (1)

  1. 【特許請求の範囲】 メインメモリから読出されたデータを一時的に保管する
    キャッシュメモリであって、 複数の記憶領域を有し、各記憶領域に前記メインメモリ
    のアクセスに使用されるアドレス情報の少なくとも一部
    を記憶するアドレス記憶手段、前記アドレス記憶手段の
    複数の記憶領域に対応する複数の記憶領域を有し、各記
    憶領域に前記アドレス情報に対応するデータを記憶する
    データ記憶手段、 アドレス情報が与えられたとき、そのアドレス情報に基
    づいて前記アドレス記憶手段の記憶内容を参照すること
    により、そのアドレス情報に対応するデータが前記デー
    タ記憶手段に記憶されているか否かを判別する判別手段
    、 前記データ記憶手段に対応のデータが記憶されているこ
    とを前記判別手段が判別したことに応答して、その対応
    のデータを前記データ記憶手段から読出して外部へ導出
    する読出手段、 前記データ記憶手段に対応のデータが存在していないこ
    とを前記判別手段が判別したことに応答して、前記アド
    レス記憶手段および前記データ記憶手段の書換えを行な
    う書換え手段、 前記アドレス記憶手段の複数の記憶領域のいずれかおよ
    び前記データ記憶手段の対応する記憶領域を選択する選
    択手段、 前記選択手段により選択された前記アドレス記憶手段の
    記憶領域および前記データ記憶手段の記憶領域に、それ
    ぞれアドレス情報およびデータを書込む書込手段、 前記選択手段により選択された前記アドレス記憶手段の
    記憶領域および前記データ記憶手段の記憶領域に対して
    、前記書換え手段による書換えから解除されることを示
    す解除情報を設定する設定手段、および 前記設定手段により設定された前記解除情報に従って前
    記書換え手段に作用し、前記アドレス記憶手段および前
    記データ記憶手段において前記解除情報が設定されてい
    る記憶領域を前記書換え手段による書換えの対象から除
    外するように制御する制御手段を備える、キャッシュメ
    モリ。
JP63242003A 1988-09-26 1988-09-26 キャッシュメモリ Pending JPH0289145A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63242003A JPH0289145A (ja) 1988-09-26 1988-09-26 キャッシュメモリ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63242003A JPH0289145A (ja) 1988-09-26 1988-09-26 キャッシュメモリ

Publications (1)

Publication Number Publication Date
JPH0289145A true JPH0289145A (ja) 1990-03-29

Family

ID=17082810

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63242003A Pending JPH0289145A (ja) 1988-09-26 1988-09-26 キャッシュメモリ

Country Status (1)

Country Link
JP (1) JPH0289145A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5535361A (en) * 1992-05-22 1996-07-09 Matsushita Electric Industrial Co., Ltd. Cache block replacement scheme based on directory control bit set/reset and hit/miss basis in a multiheading multiprocessor environment

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5535361A (en) * 1992-05-22 1996-07-09 Matsushita Electric Industrial Co., Ltd. Cache block replacement scheme based on directory control bit set/reset and hit/miss basis in a multiheading multiprocessor environment

Similar Documents

Publication Publication Date Title
US5689679A (en) Memory system and method for selective multi-level caching using a cache level code
USRE45078E1 (en) Highly efficient design of storage array utilizing multiple pointers to indicate valid and invalid lines for use in first and second cache spaces and memory subsystems
US5465342A (en) Dynamically adaptive set associativity for cache memories
JP2822588B2 (ja) キャッシュメモリ装置
US4370710A (en) Cache memory organization utilizing miss information holding registers to prevent lockup from cache misses
US9311246B2 (en) Cache memory system
JP3718302B2 (ja) 命令取り出し方法および装置
JPH0364893B2 (ja)
US8621152B1 (en) Transparent level 2 cache that uses independent tag and valid random access memory arrays for cache access
JP2008502069A (ja) メモリ・キャッシュ制御装置及びそのためのコヒーレンシ動作を実行する方法
EP1869557B1 (en) Global modified indicator to reduce power consumption on cache miss
US20080301372A1 (en) Memory access control apparatus and memory access control method
US5953747A (en) Apparatus and method for serialized set prediction
US5845317A (en) Multi-way cache expansion circuit architecture
JP2007156821A (ja) キャッシュシステム及び共用2次キャッシュ
US6606687B1 (en) Optimized hardware cleaning function for VIVT data cache
US7219197B2 (en) Cache memory, processor and cache control method
CN109074313B (zh) 缓存和方法
EP0741356A1 (en) Cache architecture and method of operation
US6839806B2 (en) Cache system with a cache tag memory and a cache tag buffer
JPH0743671B2 (ja) キャッシュ・メモリ制御方式
US7328313B2 (en) Methods to perform cache coherency in multiprocessor system using reserve signals and control bits
JPH0289145A (ja) キャッシュメモリ
US6401173B1 (en) Method and apparatus for optimizing bcache tag performance by inferring bcache tag state from internal processor state
JP3078303B2 (ja) キャッシュメモリ制御回路