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

キャッシュメモリ

Info

Publication number
JPH02156352A
JPH02156352A JP63309944A JP30994488A JPH02156352A JP H02156352 A JPH02156352 A JP H02156352A JP 63309944 A JP63309944 A JP 63309944A JP 30994488 A JP30994488 A JP 30994488A JP H02156352 A JPH02156352 A JP H02156352A
Authority
JP
Japan
Prior art keywords
data
lru
hit
address
read
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
JP63309944A
Other languages
English (en)
Inventor
Masami Yamagishi
山岸 正巳
Hiromichi Ito
浩道 伊藤
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP63309944A priority Critical patent/JPH02156352A/ja
Publication of JPH02156352A publication Critical patent/JPH02156352A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、セットアソシアティブ方式のキャッシュメモ
リを含む記憶装置に関する。特にキャシュメモリの構成
方法とその制御方法に関する。
〔従来の技術〕
中央処理袋fi (CPU)から主メモリへのデータア
クセスを、見かけ上高速化する手段として。
高速のキャッシュメモリを用いる方法がある。この方法
では、CPUはまず主メモリのデータの一部がコピーさ
れているキャッシュメモリに対してアクセスを行ない、
キャッシュメモリ内に求めるデータが存在しない場合に
のみ主メモリに対してアクセスを行なう。通常のプログ
ラムにおいては、データアクセスに局所性があるので、
主メモリ上の適当なデータをキャッシュメモリにコピー
しておけば、CPUからのデータアクセスのほとんどを
高速なキャッシュメモリへのアクセスだけで済ませるこ
とができる。
キャッシュメモリの一方式として、2ウェイセツトアソ
シアテイブ方式がある。その構成の一例を第4図に示す
キャッシュメモリは、主メモリのデータのコピーが記憶
されているBS (Buffer  St。
rage)6.18と、1336,18の各々のデータ
が主メモリのどのアドレスのデータのコピーかを示すア
ドレスタグが記憶されているAA (Address 
 Array)4,5から構成される装置 BS6.18およびAA4,5は、CPUアドレス1の
うちの下位ビット部3によって、同時にアドレシングさ
れる。一方上位ビット部2はアドレスタグとしてAA4
または5に記憶しである。
CPUのメモリアクセス時に、アドレス上位ビット部2
とAA4.5から読み出したアドレスタグ15,16を
比較器7,8によってそれぞれ同時に比較する。(前記
比較を以後ヒツト判定と呼ぶ)ヒツト判定の結果は、ヒ
ツト情報10.11として比較器7,8からそれぞれ出
力する。ヒツト情[10,11のうち、どちらか一方が
一致していることを示している場合をヒツト、どちらも
一致していないことを示している場合をミスヒツトと呼
ぶ。なお、BS6,18は、主メモリの同じアドレスの
データを記憶することはないので。
両方の比較器7,8とも一致することはない。
メモリリード時にヒツトした場合(以後リードヒツトと
呼ぶ)、例えばヒツト判定の結果、AA4から読み出し
たアドレスタグ15がCPUアドレス1の上位ビット部
2と一致したとすると、ヒツトしたことを示すヒツト情
報10はデータバッファ9に伝えられ、データバッファ
9はBS6から読み出したデータ17をデータバス14
を通してCPUに送る。メモリリード時にミスヒツトし
た場合(以後リードミスヒツトと呼ぶ)、CPUは主メ
モリからデータを読み出すが、その際、主メモリのデー
タをデータバッファ9または20を通してBS6または
18にコピーする。どちらのBSにコピーするかを決定
する一般的な方法としては、もっとも最近使用されてい
ないBSを示す最新不使用[LRU(Least  R
ecently  Used)]29を設け、最近使用
されていない方のBSにコピーする。この方法はもっと
も最近使用されたBSは、統計的に次のアクセスでも使
用される確率が高いことを利用し、キャッシュメモリの
ヒツト率を高めるために用いられている。また、コピー
と同時にCPUアドレス1の上位ビット部2を、コピー
したBSに対応するAA4または5に書き込む。
上述のように2ウェイセツトアソシアテイブ方式のキャ
ッシュメモリは、CP、Uアドレス1の下位ビット部3
の値が同じアドレスにある主メモリデータを2個まで同
時にキャッシュメモリ上にコピーしておくことができる
。第4図に示したBS6とBS7は、別々のSRAM素
子で構成されるのが一般的であるが、SRAM素子数を
減少させるため、同一のSRAM素子をBS6とBS7
用に分割して使用する方法がある。
以下、同一のSRAM素子に2ウェイ分のBSデータを
記憶するために分割して用いた場合に、どちらか一方の
ウェイのBSデータを選択(以後ウェイデータの選択と
呼ぶ)する方法の従来例を。
第5図〜第7図を用いて説明する。第5図は、1つのB
S6に2ウェイ分のBSデータを記憶する方法を用いた
2ウェイセツトアソシアテイブ方式のキャッシュメモリ
の構成例、第6図はBS6の構成図、第7図はBS6の
メモリマツプである。
第6図において、BS6は、32ビツトのアドレスおよ
びデータバス幅をもつCPUから出力されたアドレスの
うち、BS6のアドレシングに用いられる下位ビット部
3A2〜AL4(AはAddressを示し、数字は何
ビット目かを示す)の12ビツトより1ビット多いアド
レス入力端子をもつ8に×8ビット構成のSRAM素子
21.4個で構成する。S RA M素子21のAO−
A11入力端子には、下位ビット部3のA2−A14を
、A12入力端子にはウェイデータの選択を行なう信号
としてヒツト情報11を入力する。8に×8ビット構成
のSRAM素子21のアドレス空間は、アドレス入力端
子が13ビツトであるのでo o o o n−1F 
F!” )I (IIはHE Xの略で16進数を表わ
す)である。前記アドレス空間は、ヒツトf4報11の
値によって第7図に示すように2分割され、2ウェイ分
のBSデータを一つのBSに記憶する。以下に、このよ
うにしたBSのウェイデータの選択方法を述べる。
第5図において、CPUアドレス1のバス幅は30ビツ
トであり、そのうち上位ビット部2のA14〜A31を
アドレスタグとし、下位ビット部3のA2−A13をA
A4,5、LRU29、およびBS6のアドレシングに
用いる。CPUのリードアクセス時、比較器7,8によ
ってヒツト判定を行ない、ヒツト情報10および11を
得る。
このうちヒツト情報11はウェイデータの選択を行なう
信号としてBS6のA12入力端子に接続する。リード
ヒツトした場合ヒツト情報10,11は、前記ヒツト判
定の比較結果が一致した方が11′″となり、−mしな
かった方が10”となる。
AA5がヒツトとだ場合、ヒツト情報11によってBS
6のA12入力端子には!1”が入力され、A12が1
11”のアドレス空間1000H〜IF1” F Hが
選択される。また、AA4がヒツトした場合、ヒツト情
報10が11″となり、ヒツト情報11は1o”となる
。従ってBS6のA12入力端子には10”が入力され
、アドレス空間0O00H−OFFFHが選択される。
オアゲート12は、リードヒツトしたことをヒツト情報
10または11によって検出し、データバッファ9の出
力許可信号13をイネーブルにし、BS6の選択された
ウェイデータ17をデータバス14に出力する。
なお、キャッシュメモリの方式については、情報処理学
会誌Vo 1.21.No、4 (Ap r。
1980)pp332−Pp340において論じられて
いる。
(発明が解決しようとする課題〕 上記従来技術では、ヒツト情報11をBS6のアドレス
入力端子に入力するため、BS6のアドレス入力はヒツ
ト判定が終了するまで確定せず、BSデータのアクセス
を開始するのが遅れ、高速化の点で考慮がなされていな
かった。
本発明の目的は、同一のSRAM素子に複数のウェイの
BSデータを記憶する方法を用いたセットアソシアティ
ブ方式のキャッシュメモリにおいて、ウェイデータの選
択を高速化することにある。
〔課題を解決するための手段〕
上記目的は、LRUのデータをBSに用いるSRAM素
子のアドレス入力端子の一部に人力し、ウェイデータの
選択を行なうことで達成される。
〔作用〕
LRUは、AAと同時にアドレシングされるため、LR
UのデータはAAとほぼ同時に出力される。読み出され
たLRUデータは、BSに用いるSRAM素子のアドレ
ス入力端子の一部に入力されるので、上記LRUデータ
が読み出された時点でSRAM素子のアドレス入力が確
定し、BSデータのアクセスが開始される。
上記従来技術では、ウェイデータの選択に比較器から出
力されるヒツト情報を用いていたが、本発明ではLRU
データを用いる。したがって、BSデータのアクセスを
開始するのに必要な時間は。
上記従来技術で必要とされたAAデータが読み出されて
からヒツト情報が比較器から出力されるまでの時間だけ
短縮され、ウェイデータの選択を高速化することができ
る。
(実施例〕 以下、本発明の一実施例を図面を引用しながら説明する
。第1図において、LRU29は、CPUアドレス1の
下位ビット部3によって、AA4゜5と同時にアドレシ
ングされる。LRU29から読み出したLRUデータ3
3は、%1″のときAA4を、′0”のときAA5がも
っとも最近使用されなかったことを示す。ロジック32
およびアンドゲート31は、比較器7,8にCPUアド
レス1の上位ビット部2が入力されてからヒツト情報1
0.11が確定するまでの期間、データセレクタ30の
セレクト信号34を強制的に′″0″にする為のもので
ある。
リードヒツト時において、LRU29から読み出すLR
Uデータ33は、AA4.5から読み出すアドレスタグ
15,16と同時に出力される。
従って、CPUアドレス1の上位ビット部2と、このア
ドレスタグ15,16とを比較する比較器7.8が出力
するヒント情報10.11は、AA4.5及びLRU2
9のデータを読み出した時はまだ確定していないので、
ロジック32およびアンドゲート31によってセレクト
信号34は10″に保たれたままである。従って、LR
U29のデータ33は、データセレクタ30を通してB
S6のA12入力端子に入力され、BSデータのアクセ
スが開始する。ただし、LRU29の出力データ33が
必ずしもヒツトした方のAAを示しているとは限らない
ので(以後、LRUデータ33がヒツトした方のAAを
示していない場合をLRUミスヒツトと呼ぶことにする
。)、比較器7,8のヒツト判定終了後、ヒツトしたこ
とをオアゲート12によって検出し、ヒツトしたことを
示すデータバッファ9の出力許可信号13によって、デ
ータセレクタ30の出力をヒツト情報11側に切換える
第2図にリードヒツト時のLRUデータ33が示してい
るAAと、ヒツトしたAAが同じ場合(以後LRUヒツ
トと呼ぶ)のタイミングチャートを示す。第2図の例で
は、LRUデータ33は10″でAA5がもっとも最近
使用されなかったこと、すなわちAA4が使用される確
率が高いことを示し、ヒツト情報11はAA4がヒツト
したことを示す10”であるので、セレクト信号34が
%O”から11″に変わっても、BS6のA12人力は
IIOItのまま変化せず、LRUデータ33が0”に
なった時点からBSのアドレスアクセス時間tBS経過
後、BSデータ17が出力される。
第3図に、リードヒツト時にLRUミスヒツトした場合
のタイミングチャートを示す。LRtJデータ33は″
0′″でAA5がもっとも最近使用されなかったことを
示しているが、ヒツト情報11は11′″でAA5がヒ
ツトしたことを示す。従って、セレクト信号34がII
O”から%1”に変化したのに伴い、BS6のA12人
力も10”から11”に変化し、BSデータ17は、B
S6のA12人力が11″になった時点からtBS時間
経過後出力される。
上述のように、ウェイデータの選択にL RU 29を
用いることによって、LRUヒツトすればBSデータの
アクセスは高速化することができる。
LRUミスヒツトしても、従来技術と同程度の時間でB
Sデータのアクセスを開始することができる。
本発明は、以上述べた実施例にとどまるものではない。
例えば、LRUデータ33はもっとも最近使用されたB
Sを示していても良い。この場合は、データセレクタ3
0のLRUデータ33人力の論理を反転すれば良い。
また、キャッシュメモリの方式としては、2ウェイセツ
トアソシアテイブ方式に限らず、4ウェイセツトアソシ
アテイブ方式等、ウェイが幾つあってもよい。この場合
、LRUのビット数も増えるので、ウェイデータの選択
に用いるBSのアドレス入力端子のビット数を増やし、
データセレクタを増やせば良い。また、全ウェイのBS
データを同一のSRAM素子に記憶する必要はなく、例
えば、4ウェイセツトアソシアテイブ方式において、2
ウエイずつ同一のSRAM1子にBSデータを記憶して
も良い。
なお、本発明では、LRUミスヒツトした場合、ウェイ
データの選択に従来技術と同程度の時間がかかってしま
うが、LRUヒツトの確率は、そのデータ設定のアルゴ
リズムから十分高いので、実用上何の問題もない。
〔発明の効果〕
本発明によれば、同一のSRAM素子に複数ウェイのB
Sデータを記憶したセットアソシアティブ方式のキャッ
シュメモリにおいて、ウェイデータの選択に必要となる
時間を、比較器にAAデータが入力されてからヒツト情
報を出力するまでにかかる時間だけ短縮することができ
る。また、LRUのデータをウェイデータの選択に用い
るので。
制御回路の増加は非常に少なく、回路規模の増大を最少
減にすることができる。
【図面の簡単な説明】
第1図は本発明の一実施例を示すブロック図。 第2図はリードヒツト時のLRUヒツトのタイミングチ
ャート、第3図はリードヒツト時のLRUミスヒツトの
タイミングチャート、第4図は2ウェイセツトアソシア
テイブ方式のキャッシュメモリの構成図、第5図は第4
図にウェイデータ選択方法の従来技術を用いた図、第6
図は第5図のBS6を構成するSRAM素子のアドレス
入力部の詳細図、第7図は第5図のBS6のメモリマッ
プ1・・・CPUアドレス、4・・・AA、5・・・A
A、6・・・BS、10・・・ヒツト情報、11・・・
ヒツト情報。 12・・・オアゲート、13・・・出力許可信号、18
・・・BS、26・・・ウェイデータ、27・・・ウェ
イデータ、29・・・LRU、30・・・データセレク
タ、31・・・アンドゲート、32・・・ロジック、3
3・・LRUデータ、34・・・セレクト信号。 r           − 一−−−コ 集 図 00H FFH

Claims (1)

    【特許請求の範囲】
  1. 1、同一のメモリ素子に複数のウェイのデータを記憶す
    るバッファを備えた少なくとも2ウェイ以上のセットア
    ソシアティブ方式のキャッシュメモリにおいて、上記バ
    ッファに記憶されているデータを、最新不使用ビットの
    データを用いて選択することを特徴とする上記キャッシ
    ュメモリのウェイデータ選択方法。
JP63309944A 1988-12-09 1988-12-09 キャッシュメモリ Pending JPH02156352A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63309944A JPH02156352A (ja) 1988-12-09 1988-12-09 キャッシュメモリ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63309944A JPH02156352A (ja) 1988-12-09 1988-12-09 キャッシュメモリ

Publications (1)

Publication Number Publication Date
JPH02156352A true JPH02156352A (ja) 1990-06-15

Family

ID=17999230

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63309944A Pending JPH02156352A (ja) 1988-12-09 1988-12-09 キャッシュメモリ

Country Status (1)

Country Link
JP (1) JPH02156352A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0981457A (ja) * 1995-09-18 1997-03-28 Nec Corp キャッシュ記憶制御装置
JP2003519835A (ja) * 2000-01-03 2003-06-24 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド ウェイ予測がミスした時にサーチを方向付けるための、予測されないウェイからの部分的なタグを提供するキャッシュ

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0981457A (ja) * 1995-09-18 1997-03-28 Nec Corp キャッシュ記憶制御装置
JP2003519835A (ja) * 2000-01-03 2003-06-24 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド ウェイ予測がミスした時にサーチを方向付けるための、予測されないウェイからの部分的なタグを提供するキャッシュ

Similar Documents

Publication Publication Date Title
JP3666689B2 (ja) 仮想アドレス変換方法
JPS58212694A (ja) メモリシステム
JP2007048296A (ja) 複数のアドレス・キャッシュ・エントリーを無効にする方法、装置およびシステム
JPS6111865A (ja) メモリアクセス制御方式
US4424564A (en) Data processing system providing dual storage of reference bits
JPH02156352A (ja) キャッシュメモリ
JPH0695967A (ja) データプロセッサ
JP2659007B2 (ja) 情報処理方法及び装置
JP2613258B2 (ja) 情報処理方法及び装置
JPH0520195A (ja) キヤツシユメモリ制御装置
JPH0784886A (ja) キャッシュメモリ制御方法およびキャッシュメモリ制御装置
JPH06103477B2 (ja) 並列キャッシュメモリ
JPH1185613A (ja) キャッシュメモリ
JPH06250926A (ja) 複数階層のキャッシュメモリを備えたデータ処理システム
JP2864548B2 (ja) 命令キャッシュ装置
JPH04288647A (ja) キャッシュメモリにおける置き換え制御装置
JPH0635801A (ja) 階層メモリ制御方式
JPH05127991A (ja) 情報処理装置
JPH02171944A (ja) バッファ記憶装置
JPS61211752A (ja) ペ−ジ履歴メモリ装置
JPH0883213A (ja) キャッシュメモリを含む記憶装置
JPH05189313A (ja) キャッシュメモリ制御方式
JPH0689228A (ja) キャッシュメモリ制御装置
JPS61208153A (ja) ペ−ジ履歴メモリ装置
JPH05241953A (ja) キャッシュメモリ