JPH03168850A - キャッシュ内蔵マイクロ・プロセッサにおけるアクセス・モニタ方式 - Google Patents

キャッシュ内蔵マイクロ・プロセッサにおけるアクセス・モニタ方式

Info

Publication number
JPH03168850A
JPH03168850A JP1311024A JP31102489A JPH03168850A JP H03168850 A JPH03168850 A JP H03168850A JP 1311024 A JP1311024 A JP 1311024A JP 31102489 A JP31102489 A JP 31102489A JP H03168850 A JPH03168850 A JP H03168850A
Authority
JP
Japan
Prior art keywords
cache
memory
address
processor
built
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
JP1311024A
Other languages
English (en)
Inventor
Takashi Horikawa
隆 堀川
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.)
NEC Corp
Original Assignee
NEC 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 NEC Corp filed Critical NEC Corp
Priority to JP1311024A priority Critical patent/JPH03168850A/ja
Publication of JPH03168850A publication Critical patent/JPH03168850A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、キャッシュ・メモリを内蔵するマイクロ・プ
ロセッサと、マイクロ・プロセッサ外付キャッシュを搭
載する情報処理装置におけるキャッシュのモニタ方式に
関する. 〔従来の技術〕 キャッシュ・メモリ:エイ・イー・エム・コンピューテ
ィング・サーヴエイズ・ボリューム14.ナンバー3.
1982年473〜530頁(Cache  Memo
ries:ACMComputing  Survey
s,vol14,no.3,1982,Pp.473−
530)に示されるように、記憶階層を備えた情報処理
装置では、主記憶をある大きさのブロックを単位として
分割し、これらのブロックの一部を高速にアクセスでき
るキャッシュ・メモリにコピーしておくことにより、プ
ロセッサから要求されたデータがキャッシュ・メモリ内
に存在するときに、これをプロセッサに高速に渡すこと
で、プロセッサからみたアクセス速度を向上させている
.このブロックの大きさ(以下、ブロック・サイズ〉は
、一般に2のべき乗にとられる.キャッシュ・メモリに
は、主記憶にあるブロック(以下、主記憶ブロック)が
保持するデータのコピーと、主記憶においてこのブロッ
クが存在する位置を示すアドレス・タグが記録される.
キャッシュ・メモリ内のデータ・メモリは主記憶ブロッ
クに保持されているデータのコピーを記録する部分であ
り、タグ・メモリはアドレス・タグを記録する部分であ
る。1つのアドレス・タグに対応するブロックが主記憶
とキャッシュ・メモリとの間でのマッピングの単位とな
る。
キャッシュ・メモリはプロセッサからデータのアクセス
要求があると、プロセッサが出力するアドレスがタグ・
メモリ内に存在するかどうかを調べることにより、要求
されたデータがキャッシュメモリ内に存在するかどうか
を調べることにより、要求されたデータがキャッシュに
存在する場合(以下、ヒット)には、キャッシュのデー
タ・メモリからプロセッサにデータが渡される.要求さ
れたデーダがキャッシュに存在しない場合(以下、ミス
・ヒット)には、当該データを保持している主記憶ブロ
ックをアクセスして、このデータをブ,ロセッサに渡す
とともにキャッシュのデータ・メモリにコピーする。ま
た、このときに、プロセッサが出力しているアドレスの
値が、対応するタグ・メモリに記録され、ミス・ヒット
の処理が完了する。
主記憶ブロックとキャッシュ・メモリのブロック間での
マッピングの方式にはフル・アソシアティブ方式、セッ
ト・アソシアティブ方式、ダイレクト・マップ方式があ
る。フル・アソシアティブ方式は、任意の主記憶ブロッ
クをキャッシュ・メモリの任意のブロックにマッピング
できる方式である。ダイレクト・マップ方式では、主記
憶ブロックが存在するアドレスによりマッピングされる
キャッシュ・メモリのブロックが一意に決定される方式
である。セット・アソシアティブ方式では、キャッシュ
・メモリのブロックを幾つかのブループに分けておき、
主記憶ブロックが存在するアドレスにより決定されるグ
ループ番号(セット番号)をもつキャッシュ・メモリの
ブロックの内で任意のブロックにマッピングできる方式
であるや このように、フル・アソシアティブ方式、または、セッ
ト・アソシアティブ方式のキャッシュ・メモリでは、1
つの主記憶ブロックにマッピング可能なキャッシュ・メ
モリのブロックが複数存在する.そこで、キャッシュ・
メモリ内部では、これらのブロックを識別するためにエ
ントリ・アドレスを用いて、データ・メモリやタグ・メ
モリをアクセスしている。キャッシュ・メモリを内蔵す
るプロセッサにおいては、このエントリ・アドレスやセ
ット・アドレスを出力するための端子を持たせることも
考えられている. 一方、主記憶ブロックの内容は、プロセッサ以外の入出
力装置により書き換えられることがある.このときには
、キャッシュ・メモリ内ブロックが保持するデータ内容
と、主記憶ブロックが保持するデータ内容が一致しなく
なる.この状態でプログラム実行を続けると、正しい処
理結果が得られなくなるため、実際の情報処理装置にお
いては、キャッシュ内に存在するブロックがプロセッサ
以外の入出力装置により書き換えられるときには、キャ
ッシュ・ブロックと、主記憶のブロックの内容の一致を
保つような操作を行なっている。
具体的には、プロセッサ以外の入出力装置による主記憶
ブロックへの書き込み操作の総てについて、当該ブロッ
クがキャッシュ内に存在するかどうかを調べるのである
。この結果、当該ブロックかキャッシュ内に存在する場
合には、当該キャッシュ・ブロックを無効化、または、
プロセッサ以外の入出力装置により主記憶に書き込まれ
る値をキャッシュ・ブロックにも書き込む操作を行なう
のである. 一般には、無効化方式を採用することが多いが、どちら
の方式を搭載するにしても、プロセッサ以外の入出力装
置により書き換えられる主記憶ブロックがキャッシュ内
に存在するかどうかを調べる操作が必要になる。プロセ
ッサに内蔵されるキャッシュ・メモリにおいても、この
操作が必要であるため、バス・アクセスを監視し、書き
込み対象ブロックが内蔵キャッシュに存在することが検
出されたときには当該ブロックを無効化するための機能
を持たせている。
〔発明が解決しようとする課題〕
キャッシュ・メモリを内蔵するマイクロ・プロセッサの
外部にもキャッシュを持たせた情報処理装置では、プロ
セッサ以外の入出力装置による主記憶ブロックの書き込
み操作を検出することができないため、当該主記.憶ブ
ロックがプロセッサ内蔵キャッシュに存在するかどうか
を調べる操作をハードウェアにより行なうことができな
いという問題点があった。
〔課題を解決するための手段〕
本発明のキャッシュ内蔵マイクロ・プロセッサにおける
アクセス・モニタ方式の構成は、キャッシュ・メモリを
内蔵するマイクロ・プロセッサにおけるアクセス・モニ
タ方式であり、マイクロ・プロセッサ外部に外部タグ・
メモリを持たせ、前記プロセッサ以外の装置による主記
憶への書き込み操作により書き換えられる主記憶ブロッ
クが前記マイクロ・プロセッサ内蔵キャッシュに存在す
るかどうかを前記外部タグ・メモリを用いて判定するこ
とを特徴とする。
〔作用〕
本発明によるキャッシュ内蔵マイクロ・プロセッサにお
けるアクセス・モニタ方式では、プロセッサが出力する
セット・アドレスおよびエントリ・アドレスを利用し、
プロセッサ・アクセスがキャッシュ・ミスしたときに外
部タグ・メモリの内容をプロセッサの端子に現われる情
報によって更新することにより、プロセッサ内蔵キャッ
シュ・タグと同じ情報を外部タグ・メモリに持たせる.
さらに、プロセッサ以外の入出力装置による主記憶ブロ
ックへの書き込み操作が行なわれたときには、この外部
タグ・メモリを用いて当該主記憶ブロックがプロセッサ
内蔵キャッシスに存在するかどうかを調べる。この結果
、当該主記憶ブロックがプロセッサ内蔵キャッシュに存
在する場合には、プロセッサ内蔵キャッシュにおいて当
該ブロックが存在するアドレスをプロセッサに通知し、
主記憶ブロックとの一致を保つ操作を起動する.〔実施
例〕 次に、本発明の実施例について図面を参照して説明する
. 第1図は、本発明による一実施例のキャッシュ内蔵マイ
クロ・プロセッサにおけるアクセス・モ二夕装置の楕戒
図、第2図は本発明の実施例で使用するマイクロ・プロ
セッサ内蔵キャッシュ・メモリの構戒図、第3図はこの
マイクロ・プロセッサがアクセス時に出力するアドレス
の内容を示す図である. 第3図のアクセスアドレス3
0は、最下位ビットより順に、ブロック内アドレス31
、セット・アドレス20、アドレス・タグ26に分けら
れる.これらのアドレスのビット数は、ブロック・サイ
ズやセット数に依存する.まず、第2図に示すプロセッ
サ内蔵キャッシュ・メモリの動作を説明する. マイクロ・プロセッサ内部の命令実行部がアクセス・ア
ドレスをプロセッサ内部アドレス・バスに出力して内蔵
キャッシュ・メモリをアクセスしたときの動作は、以下
の通りである。
まず、アクセス・アドレス内のセット・アドレス20に
よりタグ・メモリ11がアクセスされ、エントリ数分の
アドレス・タグ26がタグ・メモリ11から出力される
。比較部16では、これら複数のアドレス・タグ26と
、アクセス・アドレス30内のアドレス・タグ26とを
比較する。その結果、一致するタグがあったときには、
内蔵キャッシュ・ヒットであり、命令実行部の要求して
いるデータは内蔵キャッシュ・メモリ3内に存在してい
る。そこで、アクセス・アドレス30内のセット・アド
レス20と比較部16の出力するエントリ・アドレス2
1によりデータ・メモリ12をアクセスしてプロセッサ
2の要求しているデータをプロセッサ内部データパスを
通して命令実行部13に渡す.また、このときには、エ
ントリ・アドレス21およびセット・アドレス20がマ
イクロ・プロセッサ2外部に出力される。
比較部16による比較操作の結果、タグ・メモリ11か
ら出力される複数のアドレス・タグ26に、アクセス・
アドレス30内のアドレス・タグ26と一致するものが
なかったときには、内蔵キャッシュ・ミスであり、命令
実行部の要求しているデータは内蔵キャッシュ・メモリ
3内に存在していない。このときには、置き換え対象と
なるエントリのアドレスを比較部16より出力するとと
もに、アクセス・アドレス30をメモリ・アドレス・バ
ス24に出力して外付キャッシュをアクセスする。
この結果、外付キャッシュは、プロセッサ2の要求して
いるデータをメモリ・データ・バス25に出力するので
、内蔵キャッシュ3は、このデータを受け取って命令実
行部に渡す。また、タグ・メモリ11およびデータ・メ
モリ12内において、比較部16より出力されるエント
リ・アドレス21とアクセス・アドレス30内のセット
・アドレス20により指定されるタグ・ブロックとデー
タ・ブロックに、アクセス・アドレス30内のアドレス
・タグ26と、外付キャッシュ15から読みだしたデー
タを書き込むことで、内蔵キャッシュ・ミス時における
内蔵キャッシュ・メモリ3内容の更新は完了する。内蔵
キャッシュ・ミス時には、置き換え対象となるエントリ
のアドレスがエントリ・アドレス21およびセット・ア
ドレス30がマイクロ・プロセッサ外部に出力される。
また、この内蔵キャッシュ3はライト・スルー方式であ
り,命令実行部がライト・アクセスを行ったときには、
そのアクセス内容がメモリ・アドレス・バス24および
メモリ・データ・バス25に出力される。このライト・
アクセスにより内蔵キャッシュ3が更新されたときには
、そのエントリ・アドレス30とセット・アドレス20
がマイクロ・プロセッサ外部に出力される。
第1図に示すアクセス・モニタ装置1は、外部タグ・メ
モリ4、ヒット検出部5から構或される。外部タグ・メ
モリ4は、書き込みと読み出しが独立して行えるように
なっており、キャッシュ内蔵マイクロ・プロセッサのタ
グと同一内容を保持するように動作する。
具体的な動作は以下の通りである。プロセッサ内蔵キャ
ッシュ・ミス時において、置き換え対象となる内蔵キャ
ッシュ内ブロックのアドレス、すなわち、エントリのア
ドレスとセット番号とがマイクロ・プロセッサから出力
されている。そこで、これらのアドレスにより示される
外部タグ・メモリ内のブロックに、プロセッサが外付キ
ャッシュをアクセスするアドレスを記録する.この操作
により、内蔵キャッシュ・メモリ内部のタグ・メモリ内
容のコピーが外部タグ・メモリに保持されることになる
一方、プロセッサ以外の装置による主記憶ブロックの書
き換え操作は、システム・バス14を通して行なわれる
ことから、アクセス・.モニタ装置1はシステム・バス
14を通した書き込み操作の監視を行なう。
具体的な動作は以下の通りである.書き込み対象となっ
ている主記憶ブロックの書き込みアドレスは、システム
・バス14上に出力されるので、書き込みアドレスの内
、セット・アドレスにより外部タグ・メモリをアクセス
する。セット・アソシアティブ方式のキャッシュの場合
、1つのセット・アドレスに対応する複数のタグ内容が
出力される。これらのタグ内容は、ヒット検出部5に送
られ、書き込みアドレスの内のアドレス・タグ42と比
較される。
この結果、外部タグ・メモリ4から出力された複数のタ
グ内容の中に、書き込みアドレス内のアドレス・タグと
一致するものがあれば、ヒット検出部5は、このアドレ
ス・タグを保持しているエントリ番号を書き込みエント
リ・アドレス44として出力するとともに、ヒット信号
45を有効にすることにより、マイクロ・プロセッサ内
蔵キャッシュに保持されているブロックが、プロセッサ
以外の装置によって書き換えられていることを通知する
。このとき、書き込みが行なわれている内蔵キャッシュ
・ブロックのアドレスは、書き込みセット・アドレス4
と書き込みエントリ・アドレス44としてアクセス・モ
ニタ装置から出力されることから、マイクロ・プロセッ
サ内蔵キャッシュでは、当該ブロックを無効化すること
により、主記憶ブロックの内容とマイクロ・プロセッサ
内蔵キャッシュに保持されている内容の間に不一致が生
じることを防止する。
以上、説明した通り、本発明の主旨は、プロセッサに内
蔵されているキャッシュ・メモリのタグ・メモリが保持
する内容と同一内容を外部タグ・メモリに持たせ、この
外部タグ・メモリによりシステム・バスを通した書き込
みがプロセッサ内蔵キャッシュにヒットしているかどう
かを検出することである。従って、本発明には、種々の
実施形もが存在することは明かである。例えば、本実施
例では、書き込み操作が内蔵キャッシュにヒットしたと
きには、プロセッサ内蔵キャッシュの当該ブロックをク
リアするものとしたが、書き込みデータをプロセッサ内
蔵キャッシュのデータ・メモリに書き込む方式も本発明
に含まれる.また、本発明では、プロセッサに、セット
・アドレスとエントリ・アドレスを入力する端子と、出
力する端子を別に持たせるものとしたが、これを共用す
る方式も本発明に含まれる。
〔発明の効果〕
本発明によると、キャッシュ・メモリを内蔵するマイク
ロ・プロセッサの外部にもキャッシュを持たせた情報処
理装置においても、プロセッサ以外の入出力装置により
、書き換えられる主記憶ブロックがプロセッサ内蔵キャ
ッシュに存在するかどうかをハードウェアにより調べる
ことが可能になる。
【図面の簡単な説明】
第1図は本発明によるキャッシュ内蔵マイクロ・プロセ
ッサにおけるアクセス・モニタ装置の構戒を示す図、第
2図は本発明の実施例で使用するマイクロ・プロセッサ
内蔵キャッシュ・メモリの構戊を示す図、第3図はプロ
セッサがアクセス時に出力するアドレスの内容を示す図
である。 1・・・アクセス・モニタ装置、2・・・マイクロ・プ
ロセッサ、3・・・内蔵キャッシュ・メモリ、4・・・
外部タグ・メモリ、5・・・ヒット検出部、11・・・
タグ・メモリ、12・・・データ・メモリ、13・・・
命令実行部、14・・・システム・バス、15・・・外
付キャッシュ、l6・・・比較部、l7・・・タグ・ブ
ロック、18・・・データ・ブロック、20・・・セッ
ト・アドレス、21・・・エントリ・アドレス、22・
・・プロセッサ内部アドレス・バス、23・・・プロセ
ッサ内部データ・バス、24・・・メモリ・アドレス・
バス、25・・・メモリ・データ・バス、26・・・ア
ドレス・タグ、30・・・アクセス・アドレス、31・
・・ブロック内アドレス、41・・・書き込みアドレス
、42・・・書き込みアドレス・タグ、43・・・書き
込みセット・アドレス、44・・・書き込みエントリ・
アドレス、45・・・書き込みヒット信号。

Claims (1)

    【特許請求の範囲】
  1. キャッシュ・メモリを内蔵するマイクロ・プロセッサに
    おけるアクセス・モニタ方式であり、マイクロ・プロセ
    ッサ外部に外部タグ・メモリを持たせ、前記プロセッサ
    以外の装置による主記憶への書き込み操作により書き換
    えられる主記憶ブロックが前記マイクロ・プロセッサ内
    蔵キャッシュに存在するかどうかを前記外部タグ・メモ
    リを用いて判定することを特徴とするキャッシュ内蔵マ
    イクロ・プロセッサにおけるアクセス・モニタ方式。
JP1311024A 1989-11-29 1989-11-29 キャッシュ内蔵マイクロ・プロセッサにおけるアクセス・モニタ方式 Pending JPH03168850A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1311024A JPH03168850A (ja) 1989-11-29 1989-11-29 キャッシュ内蔵マイクロ・プロセッサにおけるアクセス・モニタ方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1311024A JPH03168850A (ja) 1989-11-29 1989-11-29 キャッシュ内蔵マイクロ・プロセッサにおけるアクセス・モニタ方式

Publications (1)

Publication Number Publication Date
JPH03168850A true JPH03168850A (ja) 1991-07-22

Family

ID=18012198

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1311024A Pending JPH03168850A (ja) 1989-11-29 1989-11-29 キャッシュ内蔵マイクロ・プロセッサにおけるアクセス・モニタ方式

Country Status (1)

Country Link
JP (1) JPH03168850A (ja)

Similar Documents

Publication Publication Date Title
CN107066396B (zh) 用于操作虚拟索引的物理标记的缓存的装置及方法
US4626988A (en) Instruction fetch look-aside buffer with loop mode control
JP2833062B2 (ja) キャッシュメモリ制御方法とこのキャッシュメモリ制御方法を用いたプロセッサおよび情報処理装置
US6418515B1 (en) Cache flush unit
US6023747A (en) Method and system for handling conflicts between cache operation requests in a data processing system
US5146603A (en) Copy-back cache system having a plurality of context tags and setting all the context tags to a predetermined value for flushing operation thereof
JPH0668735B2 (ja) キヤツシユメモリ−
US9086987B2 (en) Detection of conflicts between transactions and page shootdowns
JPS63293639A (ja) 順序正しくないフエツチをモニタするための装置
JPS604494B2 (ja) キヤツシユ記憶システム
EP0794494B1 (en) Self-checking and correcting of cache memory management
US20190294554A1 (en) Apparatus and method for handling access requests
JP2818415B2 (ja) バッファ記憶装置
US5590310A (en) Method and structure for data integrity in a multiple level cache system
JPH05324468A (ja) 階層化キャッシュメモリ
JP3733604B2 (ja) キャッシュメモリ
JPS60237553A (ja) キヤツシユコヒ−レンスシステム
JPH03168850A (ja) キャッシュ内蔵マイクロ・プロセッサにおけるアクセス・モニタ方式
JP3061818B2 (ja) マイクロ・プロセッサ用アクセス・モニタ装置
US20070038813A1 (en) System and method for cache coherence
JPH06187239A (ja) 多階層キャッシュメモリにおけるデータ一致制御方式
JPH08263374A (ja) キャッシュ制御方法およびそれを用いたマルチプロセッサシステム
JP3081635B2 (ja) キャッシュメモリの無効化処理装置および無効化制御方法
JP3651857B2 (ja) キャッシュ・コヒーレントdma書込み方法
JP3651857B6 (ja) キャッシュ・コヒーレントdma書込み方法