JPH0668735B2 - キヤツシユメモリ− - Google Patents
キヤツシユメモリ−Info
- Publication number
- JPH0668735B2 JPH0668735B2 JP62029293A JP2929387A JPH0668735B2 JP H0668735 B2 JPH0668735 B2 JP H0668735B2 JP 62029293 A JP62029293 A JP 62029293A JP 2929387 A JP2929387 A JP 2929387A JP H0668735 B2 JPH0668735 B2 JP H0668735B2
- Authority
- JP
- Japan
- Prior art keywords
- address
- memory
- tag
- processor
- 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.)
- Expired - Fee Related
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0815—Cache consistency protocols
- G06F12/0831—Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0844—Multiple simultaneous or quasi-simultaneous cache accessing
- G06F12/0853—Cache with multiport tag or data arrays
Description
【発明の詳細な説明】 〔産業上の利用分野〕 本発明はキャッシュメモリー、特に、マルチプロセッサ
システムにおけるキャッシュメモリーに関する。
システムにおけるキャッシュメモリーに関する。
計算機システムにおいて、高速のプロセッサーと低速の
主記憶装置との間に、プロセッサーを効率良く動作させ
るため高速なキャッシュメモリー装置を配置することが
よく行われる。
主記憶装置との間に、プロセッサーを効率良く動作させ
るため高速なキャッシュメモリー装置を配置することが
よく行われる。
キャッシュメモリー装置には、周知のように、プロセッ
サーが必要とするデータをあらかじめ蓄えておき、プロ
セッサーから要求があったときキャッシュメモリー装置
から高速にデータをプロセッサーへ渡す。もし、キャッ
シュメモリー装置にプロセッサーが必要とするデータが
ない場合(この場合ミスヒットと称し、その逆の場合を
ヒットと称する)には、主記憶装置にアクセスしてプロ
セッサーにデータを渡す。ミスセットする確率は、プロ
グラムの局部性により非常に低いため、高速なキャッシ
ュメモリー装置がプロセッサーの処理の効率化に大きく
寄与している。
サーが必要とするデータをあらかじめ蓄えておき、プロ
セッサーから要求があったときキャッシュメモリー装置
から高速にデータをプロセッサーへ渡す。もし、キャッ
シュメモリー装置にプロセッサーが必要とするデータが
ない場合(この場合ミスヒットと称し、その逆の場合を
ヒットと称する)には、主記憶装置にアクセスしてプロ
セッサーにデータを渡す。ミスセットする確率は、プロ
グラムの局部性により非常に低いため、高速なキャッシ
ュメモリー装置がプロセッサーの処理の効率化に大きく
寄与している。
ヒット・ミスヒットの判定は、第4図に示すように、デ
ータメモリー領域9にあらかじめ蓄えられたデータのタ
グアドレスを記憶しているアドレスタグメモリー領域6
を、プロセッサからアクセスアドレス信号内のセットア
ドレスにより読み出し、アドレスタグ比較器5におい
て、アクセスアドレス信号内のタグアドレスと比較して
行っている。
ータメモリー領域9にあらかじめ蓄えられたデータのタ
グアドレスを記憶しているアドレスタグメモリー領域6
を、プロセッサからアクセスアドレス信号内のセットア
ドレスにより読み出し、アドレスタグ比較器5におい
て、アクセスアドレス信号内のタグアドレスと比較して
行っている。
上述した従来のキャッシュメモリーは、アドレスタグ比
較器が一つしかないため、マルチプロセッサシステムに
おいて、データメモリー領域9が書き換えられても、他
のプロセッサのキャッシュメモリーに、書き換えられた
アドレスのデータが蓄えられているかを、そのキャッシ
ュメモリーへのアクセスに先立って調べることができな
いため、書き換え前のデータがプロセッサに読み出され
て誤動作してしまうおそれがあり、また、アドレスタグ
メモリー領域6及びバリッドメモリー領域7は1ポート
メモリー構成であるため、上記書き換えの有無検出とそ
の結果によるバリッドメモリー領域7への無効化書き込
みとを行うには、プロセッサをいったん停止させねばな
らないという問題点がある。
較器が一つしかないため、マルチプロセッサシステムに
おいて、データメモリー領域9が書き換えられても、他
のプロセッサのキャッシュメモリーに、書き換えられた
アドレスのデータが蓄えられているかを、そのキャッシ
ュメモリーへのアクセスに先立って調べることができな
いため、書き換え前のデータがプロセッサに読み出され
て誤動作してしまうおそれがあり、また、アドレスタグ
メモリー領域6及びバリッドメモリー領域7は1ポート
メモリー構成であるため、上記書き換えの有無検出とそ
の結果によるバリッドメモリー領域7への無効化書き込
みとを行うには、プロセッサをいったん停止させねばな
らないという問題点がある。
本発明のキャッシュメモリーは、プロセッサ毎に備えら
れかつ主記憶装置を共用するキャッシュメモリーにおい
て、 アドレスタグメモリー領域及びバリッドメモリー領域を
プロセッサと主記憶装置から同時にアクセス可能なよう
に2ポートメモリーで構成し、 他のキャッシュメモリーで書き換えが生じた場合には主
記憶装置への書き込みアドレス信号内のセットアドレス
によりアドレスタグメモリーを読み出す制御回路と、 読み出されたタグアドレスと上記書き込みアドレス信号
内のタグアドレスとを比較する比較器と、 比較の結果により一致が検出されるとバリッドメモリー
領域内の上記書き込みアドレス信号内セットアドレスで
指定される内容を無効化するバリッドメモリクリア回路 とを設けたことを特徴とする。
れかつ主記憶装置を共用するキャッシュメモリーにおい
て、 アドレスタグメモリー領域及びバリッドメモリー領域を
プロセッサと主記憶装置から同時にアクセス可能なよう
に2ポートメモリーで構成し、 他のキャッシュメモリーで書き換えが生じた場合には主
記憶装置への書き込みアドレス信号内のセットアドレス
によりアドレスタグメモリーを読み出す制御回路と、 読み出されたタグアドレスと上記書き込みアドレス信号
内のタグアドレスとを比較する比較器と、 比較の結果により一致が検出されるとバリッドメモリー
領域内の上記書き込みアドレス信号内セットアドレスで
指定される内容を無効化するバリッドメモリクリア回路 とを設けたことを特徴とする。
次に本発明について図面を参照して詳細に説明する。
第1図は本発明の一実施例におけるアドレスタグメモリ
ー領域6,バリッドメモリー領域7,Aポートアドレス
比較器15,Bポートアドレス比較器16およびバリッ
ドメモリクリア回路17を示し、実施例のその他の部分
は第4図と同じである。
ー領域6,バリッドメモリー領域7,Aポートアドレス
比較器15,Bポートアドレス比較器16およびバリッ
ドメモリクリア回路17を示し、実施例のその他の部分
は第4図と同じである。
まず、第4図を用いてキャッシュメモリーの一般的な説
明をする。
明をする。
1はプロセッサーからの入力データもしくはプロセッサ
ーへのキャッシュメモリー装置からの出力データをバッ
ファリングするプロセッサ側入出力データバッファ、2
はプロセッサーからのアドレスをバッファリングするア
ドレスバッファであり、アドレスバッファ2はブロック
アドレス用,セットアドレス用及びタグアドレス用の各
バッファから成る。アドレスは下位から順にブロックア
ドレス,セットアドレス,タグアドレスに対応してい
る。3はプロセッサー側の制御回路で複雑な論理回路で
構成されている。
ーへのキャッシュメモリー装置からの出力データをバッ
ファリングするプロセッサ側入出力データバッファ、2
はプロセッサーからのアドレスをバッファリングするア
ドレスバッファであり、アドレスバッファ2はブロック
アドレス用,セットアドレス用及びタグアドレス用の各
バッファから成る。アドレスは下位から順にブロックア
ドレス,セットアドレス,タグアドレスに対応してい
る。3はプロセッサー側の制御回路で複雑な論理回路で
構成されている。
本キャッシュメモリーは4つのメモリ領域をもち、これ
ら4つのメモリー領域は、プロセッサーが必要とするデ
ータを記憶しておくデータメモリー領域9,データメモ
リ領域9に記憶しているデータに対応するタグアドレス
を記憶するアドレスタグメモリー領域6,アドレスタグ
メモリー領域6に記憶されているタグアドレスが有効か
否かの情報を記憶するバリッドメモリー領域7及びミス
ヒットした場合にデータメモリー領域9内のどのウェイ
(複数の分割された小領域)に対して主記憶装置のデー
タを置換すればよいかを指定するLRU(Least Recent
ly Used)メモリ領域4である。
ら4つのメモリー領域は、プロセッサーが必要とするデ
ータを記憶しておくデータメモリー領域9,データメモ
リ領域9に記憶しているデータに対応するタグアドレス
を記憶するアドレスタグメモリー領域6,アドレスタグ
メモリー領域6に記憶されているタグアドレスが有効か
否かの情報を記憶するバリッドメモリー領域7及びミス
ヒットした場合にデータメモリー領域9内のどのウェイ
(複数の分割された小領域)に対して主記憶装置のデー
タを置換すればよいかを指定するLRU(Least Recent
ly Used)メモリ領域4である。
5はアドレスタグメモリー領域6から出力される情報と
タグアドレスバッファ2から出力されるタグアドレスと
の比較器であり、8はヒットした場合にのみデータメモ
リー領域9に書込みを行う際のウェイ選択回路(以下書
込みウェイ選択回路と記す)であり、10も同様にヒッ
トした場合にのみデータメモリー領域9から読み出しを
行う際のウェイ選択回路(以下読み出しウェイ選択回路
と記す)である。
タグアドレスバッファ2から出力されるタグアドレスと
の比較器であり、8はヒットした場合にのみデータメモ
リー領域9に書込みを行う際のウェイ選択回路(以下書
込みウェイ選択回路と記す)であり、10も同様にヒッ
トした場合にのみデータメモリー領域9から読み出しを
行う際のウェイ選択回路(以下読み出しウェイ選択回路
と記す)である。
12はミスヒットした場合に、セットアドレスに対して
すべてのブロックアドレスに相当するデータを主記憶装
置から取り込むバッファ(以下、取り込む動作をブロッ
クロード、そのバッファをブロックロードバッファと記
す)及び11はブロックロードをどのウェイに対して行
うかを選択する回路である。
すべてのブロックアドレスに相当するデータを主記憶装
置から取り込むバッファ(以下、取り込む動作をブロッ
クロード、そのバッファをブロックロードバッファと記
す)及び11はブロックロードをどのウェイに対して行
うかを選択する回路である。
13は主記憶装置からの入力データもしくは主記憶装置
等へのキャッシュメモリー装置からの出力データをバッ
ファリングする入出力バッファ(以下主記憶装置側入出
力バッファと記す)であり、14は主記憶装置側の制御
回路で、プロセッサー側制御回路3と同様複雑な論理回
路から構成される。
等へのキャッシュメモリー装置からの出力データをバッ
ファリングする入出力バッファ(以下主記憶装置側入出
力バッファと記す)であり、14は主記憶装置側の制御
回路で、プロセッサー側制御回路3と同様複雑な論理回
路から構成される。
本キャッシュメモリーについて、(1)ヒット時のプロセ
ッサーからの読み出し動作、(2)ヒット時のプロセッサ
ーからの書込み動作、(3)ミスヒット時のブロックロー
ド動作の3つの動作モード毎に説明する。
ッサーからの読み出し動作、(2)ヒット時のプロセッサ
ーからの書込み動作、(3)ミスヒット時のブロックロー
ド動作の3つの動作モード毎に説明する。
(1)ヒット時のプロセッサーからの読み出し動作 プロセッサー側のアドレス端子からアドレスが入力され
るとセットアドレスによって指定される領域(以下セッ
トと記す)が選択され、アドレスタグメモリ領域の指定
されさセット内に記憶されたタグアドレスを読み出し、
その読み出されたタグアドレスと、プロセッサーから指
定されたタグアドレスとをアドレスタグ比較器5にて比
較する。同時にバリッドメモリ領域7から指定されたセ
ット内に記憶されたタグアドレスが有効か否かの情報を
出す。
るとセットアドレスによって指定される領域(以下セッ
トと記す)が選択され、アドレスタグメモリ領域の指定
されさセット内に記憶されたタグアドレスを読み出し、
その読み出されたタグアドレスと、プロセッサーから指
定されたタグアドレスとをアドレスタグ比較器5にて比
較する。同時にバリッドメモリ領域7から指定されたセ
ット内に記憶されたタグアドレスが有効か否かの情報を
出す。
その結果タグアドレスが一致しかつそのタグアドレスが
有効と見なされたウェイに対応してヒットウェイ選択信
号が活性化され、ヒットしたことを検出するヒット検出
信号がプロセッサー側制御回路3に送られ、ヒットした
ことをプロセッサーに知らせる。
有効と見なされたウェイに対応してヒットウェイ選択信
号が活性化され、ヒットしたことを検出するヒット検出
信号がプロセッサー側制御回路3に送られ、ヒットした
ことをプロセッサーに知らせる。
また、データメモリー領域9からは指定されたブロック
及びセットアドレスに対して読み出しが行われ、アドレ
スタグ比較器5から発生されたヒットウェイ選択信号に
よって選択されたウェイのデータがプロセッサー側入出
力データバッファ1を通してプロセッサー側へ出力され
る。
及びセットアドレスに対して読み出しが行われ、アドレ
スタグ比較器5から発生されたヒットウェイ選択信号に
よって選択されたウェイのデータがプロセッサー側入出
力データバッファ1を通してプロセッサー側へ出力され
る。
(2)ヒット時のプロセッサーからの書込み動作 ヒットウェイ選択信号が出力されるまでは読み出し動作
と同じであり、ヒットしたウェイに書込みがなされる。
同時に主記憶側装置入出力バッファ13から書込みデー
タ及びそのアドレスが出力され主記憶装置も書き換えら
れる。
と同じであり、ヒットしたウェイに書込みがなされる。
同時に主記憶側装置入出力バッファ13から書込みデー
タ及びそのアドレスが出力され主記憶装置も書き換えら
れる。
(3)ミスヒット時のブロックロード動作 プロセッサー側から指定されたタグアドレスがアドレス
タグメモリ領域6に存在しないとミスヒット状態にな
る。ミスヒットになると主記憶装置側入出力バッファ1
3からそのアドレスが出力され、主記憶装置からは所望
のデータが主記憶側入出力バッファ13に出力される。
そしてそのデータはプロセッサー側入出力データバッフ
ァ1を介してプロセッサーに渡される。
タグメモリ領域6に存在しないとミスヒット状態にな
る。ミスヒットになると主記憶装置側入出力バッファ1
3からそのアドレスが出力され、主記憶装置からは所望
のデータが主記憶側入出力バッファ13に出力される。
そしてそのデータはプロセッサー側入出力データバッフ
ァ1を介してプロセッサーに渡される。
主記憶装置側入出力データバッファ13に送り込まれる
データは、プロセッサーに渡したデータの他に残りのブ
ロックアドレスで指定されるデータであり、一度それら
はブロックロードバッファ12にたくわえられる。
データは、プロセッサーに渡したデータの他に残りのブ
ロックアドレスで指定されるデータであり、一度それら
はブロックロードバッファ12にたくわえられる。
その後、LRUメモリ領域4で指定された最も古くなっ
たウェイに対してそれらデータが更新(置換)される。
たウェイに対してそれらデータが更新(置換)される。
ブロックロードで他のブロックアドレスで指定されるデ
ータも更新することで、プロセッサーが効率良く動作す
る。これは、プログラムの局部性により、プロセッサー
で指定されたアドレスに近い番地が将来アクセスされる
可能性が非常に高いためである。
ータも更新することで、プロセッサーが効率良く動作す
る。これは、プログラムの局部性により、プロセッサー
で指定されたアドレスに近い番地が将来アクセスされる
可能性が非常に高いためである。
以上、第4図を用いて本キャッシュメモリーの主要な動
作を説明した。
作を説明した。
次に、第1図を参照して本実施例について説明する。
第1図において、アドレスタグメモリー領域6及びバリ
ッドメモリー領域7は、第4図に示すように、2ポート
メモリセルで構成している。また、Aポートアドレスタ
グ比較器15の他に、アドレスメモリー領域6に登録さ
れているタグアドレスを監視するために、Bポートアド
レスタグ比較器16が設けられている。ここでタグアド
レスを監視するのは、例えば、第2図の様に一つの主記
憶装置を複数のプロセッサー及びキャッシュメモリーで
使用した場合に、キャッシュメモリーI及びIIが同一ア
ドレスに対して異なるデータを持たない様にするためで
ある。
ッドメモリー領域7は、第4図に示すように、2ポート
メモリセルで構成している。また、Aポートアドレスタ
グ比較器15の他に、アドレスメモリー領域6に登録さ
れているタグアドレスを監視するために、Bポートアド
レスタグ比較器16が設けられている。ここでタグアド
レスを監視するのは、例えば、第2図の様に一つの主記
憶装置を複数のプロセッサー及びキャッシュメモリーで
使用した場合に、キャッシュメモリーI及びIIが同一ア
ドレスに対して異なるデータを持たない様にするためで
ある。
第3図において、2ポートメモリセルは2本のワード線
と2対のディジット線を有するため、2つのポートA,
Bから非同期にアクセスできる。
と2対のディジット線を有するため、2つのポートA,
Bから非同期にアクセスできる。
第2図及び第1図を用いてアドレスタグ内容の監視動作
を更に詳しく述べる。
を更に詳しく述べる。
第1図において、アドレスタグメモリー領域6及びバリ
ッドメモリー領域7からAポート側アドレスタグ比較器
15及びBポート側アドレスタグ比較器16へ各々独立
に読み出しが可能である。また、Aポート側アドレスタ
グ比較器15はプロセッサーから指定されるタグアドレ
スと、アドレスタグメモリー領域6から読み出されるタ
グアドレスとの比較器であり、Bポート側アドレスタグ
比較器16は他のキャッシュメモリーから参照されるタ
グアドレスと、アドレスタグメモリー領域6から読み出
されるタグアドレスとの比較器である。17はタグアド
レス内容を無効にするバリッドメモリクリア回路であ
る。
ッドメモリー領域7からAポート側アドレスタグ比較器
15及びBポート側アドレスタグ比較器16へ各々独立
に読み出しが可能である。また、Aポート側アドレスタ
グ比較器15はプロセッサーから指定されるタグアドレ
スと、アドレスタグメモリー領域6から読み出されるタ
グアドレスとの比較器であり、Bポート側アドレスタグ
比較器16は他のキャッシュメモリーから参照されるタ
グアドレスと、アドレスタグメモリー領域6から読み出
されるタグアドレスとの比較器である。17はタグアド
レス内容を無効にするバリッドメモリクリア回路であ
る。
いま、プロセッサーIがある番地に対して書き換えの命
令を出し、キャッシュメモリーI及び主記憶装置が更新
されたとする。当然のことながらキャッシュメモリーII
はその該当する番地の旧データをもっていてはいけな
い。なぜならプロセッサーIIは主記憶装置と異なるデー
タをキャッシュメモリーIIから読み出して誤動作してし
まうからである。
令を出し、キャッシュメモリーI及び主記憶装置が更新
されたとする。当然のことながらキャッシュメモリーII
はその該当する番地の旧データをもっていてはいけな
い。なぜならプロセッサーIIは主記憶装置と異なるデー
タをキャッシュメモリーIIから読み出して誤動作してし
まうからである。
従って、キャッシュメモリーIで書き換えが生じた場合
には、キャッシュメモリーIIにアクセスをかけて書き換
えが生じたアドレスが存在するかどうかチェックする。
つまり、主記憶装置側制御回路14はアドレスメモリー
領域6からタグアドレスを読み出し、Bポートアドレス
タグ比較器16は書き換えが生じたタグアドレスと比較
する。
には、キャッシュメモリーIIにアクセスをかけて書き換
えが生じたアドレスが存在するかどうかチェックする。
つまり、主記憶装置側制御回路14はアドレスメモリー
領域6からタグアドレスを読み出し、Bポートアドレス
タグ比較器16は書き換えが生じたタグアドレスと比較
する。
もし、一致した場合には、主記憶装置側制御回路14は
バリッドメモリクリア回路17を活性化させて、対応す
るバリッドメモリ領域を強制的にクリアしてしまい、そ
のタグアドレスを無効にしてしまう。一方、一致しない
場合には各々のキャッシュメモリーの内容に変化はな
い。当然のことながら2ポートメモリーセルを採用して
いるため他のキャッシュメモリーIからの監視のアクセ
スがかかっている最中でもキャッシュメモリーIIにプロ
セッサーIIからアクセスは可能である。
バリッドメモリクリア回路17を活性化させて、対応す
るバリッドメモリ領域を強制的にクリアしてしまい、そ
のタグアドレスを無効にしてしまう。一方、一致しない
場合には各々のキャッシュメモリーの内容に変化はな
い。当然のことながら2ポートメモリーセルを採用して
いるため他のキャッシュメモリーIからの監視のアクセ
スがかかっている最中でもキャッシュメモリーIIにプロ
セッサーIIからアクセスは可能である。
以上説明した様に本発明のキャッシュメモリーは、アド
レスタグメモリー領域及びバリッドメモリー領域を2ポ
ートメモリーセルで構成したため、マルチプロセッサシ
ステムにおいて主記憶装置を複数のプロセッサー及びキ
ャッシュメモリーで使用した場合に、各々のキャッシュ
メモリーが間違ったデータを持たない様にプロセッサー
を停止させることなく監視できる効果がある。
レスタグメモリー領域及びバリッドメモリー領域を2ポ
ートメモリーセルで構成したため、マルチプロセッサシ
ステムにおいて主記憶装置を複数のプロセッサー及びキ
ャッシュメモリーで使用した場合に、各々のキャッシュ
メモリーが間違ったデータを持たない様にプロセッサー
を停止させることなく監視できる効果がある。
第1図は本発明の一実施例、第2図は1つの主記憶装置
を複数のプロセッサー及びキャッシュメモリーで使用し
た場合の概略図、第3図は本発明の一部のメモリー領域
を構成する2ポートメモリーセルおよび第4図は一般の
キャッシュメモリーの構成図をそれぞれ示す。 1……プロセッサー側入出力データバッファ、2……ア
ドレスバッファ、3……プロセッサー側制御回路、4…
…LRUメモリー領域、5……アドレスタグ比較器、6
……アドレスタグメモリー領域、7……バリッドメモリ
ー領域、8……書込みウェイ選択回路、9……データメ
モリー領域、10……読み出しウェイ選択回路、11…
…ブロックロードウェイ選択回路、12……ブロックロ
ードバッファ、13……主記憶装置側入出力バッファ、
14……主記憶装置側制御回路、15……Aポート側ア
ドレスタグ比較器、16……Bポート側アドレスタグ比
較器、17……バリッドメモリクリア回路。
を複数のプロセッサー及びキャッシュメモリーで使用し
た場合の概略図、第3図は本発明の一部のメモリー領域
を構成する2ポートメモリーセルおよび第4図は一般の
キャッシュメモリーの構成図をそれぞれ示す。 1……プロセッサー側入出力データバッファ、2……ア
ドレスバッファ、3……プロセッサー側制御回路、4…
…LRUメモリー領域、5……アドレスタグ比較器、6
……アドレスタグメモリー領域、7……バリッドメモリ
ー領域、8……書込みウェイ選択回路、9……データメ
モリー領域、10……読み出しウェイ選択回路、11…
…ブロックロードウェイ選択回路、12……ブロックロ
ードバッファ、13……主記憶装置側入出力バッファ、
14……主記憶装置側制御回路、15……Aポート側ア
ドレスタグ比較器、16……Bポート側アドレスタグ比
較器、17……バリッドメモリクリア回路。
Claims (2)
- 【請求項1】プロセッサ毎に備えられかつ主記憶装置を
共用するキャッシュメモリーにおいて、 アドレスタグメモリー領域及びバリッドメモリー領域を
プロセッサと前記主記憶装置から同時にアクセス可能な
ように2ポートメモリーで構成し、 他のキャッシュメモリーで書き換えが生じた場合には前
記主記憶装置への書き込みアドレス信号内のセットアド
レスにより前記アドレスタグメモリーを読み出す制御回
路と、 該読み出されたタグアドレスと前記書き込みアドレス信
号内のタグアドレスとを比較する比較器と、 該比較の結果により一致が検出されると前記バリッドメ
モリー領域内の前記書き込みアドレス信号内セットアド
レスで指定される内容を無効化するバリッドメモリクリ
ア回路 とを設けたことを特徴とするキャッシュメモリー。 - 【請求項2】キャッシュメモリーを1チップLSIで構
成したことを特徴とする特許請求の範囲第1項記載のキ
ャッシュメモリー。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62029293A JPH0668735B2 (ja) | 1987-02-09 | 1987-02-09 | キヤツシユメモリ− |
DE3803759A DE3803759A1 (de) | 1987-02-09 | 1988-02-08 | Cache-speicher zur verwendung in multiprozessor-systemen |
US07/153,890 US5056002A (en) | 1987-02-09 | 1988-02-09 | Cache memory for use with multiprocessor systems |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP62029293A JPH0668735B2 (ja) | 1987-02-09 | 1987-02-09 | キヤツシユメモリ− |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS63195752A JPS63195752A (ja) | 1988-08-12 |
JPH0668735B2 true JPH0668735B2 (ja) | 1994-08-31 |
Family
ID=12272195
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP62029293A Expired - Fee Related JPH0668735B2 (ja) | 1987-02-09 | 1987-02-09 | キヤツシユメモリ− |
Country Status (3)
Country | Link |
---|---|
US (1) | US5056002A (ja) |
JP (1) | JPH0668735B2 (ja) |
DE (1) | DE3803759A1 (ja) |
Families Citing this family (41)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5247649A (en) * | 1988-05-06 | 1993-09-21 | Hitachi, Ltd. | Multi-processor system having a multi-port cache memory |
JPH01280860A (ja) * | 1988-05-06 | 1989-11-13 | Hitachi Ltd | マルチポートキヤツシユメモリを有するマルチプロセツサシステム |
US5276850A (en) * | 1988-12-27 | 1994-01-04 | Kabushiki Kaisha Toshiba | Information processing apparatus with cache memory and a processor which generates a data block address and a plurality of data subblock addresses simultaneously |
JPH0740247B2 (ja) * | 1989-06-20 | 1995-05-01 | 松下電器産業株式会社 | キャッシュメモリ装置 |
US5287484A (en) * | 1989-06-21 | 1994-02-15 | Hitachi, Ltd. | Multi-processor system for invalidating hierarchical cache |
JPH0666056B2 (ja) * | 1989-10-12 | 1994-08-24 | 甲府日本電気株式会社 | 情報処理システム |
JP2695017B2 (ja) * | 1989-11-08 | 1997-12-24 | 富士通株式会社 | データ転送方式 |
EP0435475B1 (en) * | 1989-12-22 | 1996-02-07 | Digital Equipment Corporation | High-performance frame buffer and cache memory system |
JPH061463B2 (ja) * | 1990-01-16 | 1994-01-05 | インターナショナル・ビジネス・マシーンズ・コーポレーション | マルチプロセッサ・システムおよびそのプライベート・キャッシュ制御方法 |
JPH03219345A (ja) * | 1990-01-25 | 1991-09-26 | Toshiba Corp | 多ポートキャッシュメモリ制御装置 |
EP0439952A3 (en) * | 1990-01-31 | 1992-09-09 | Sgs-Thomson Microelectronics, Inc. | Dual-port cache tag memory |
JPH05108484A (ja) * | 1990-06-07 | 1993-04-30 | Intel Corp | キヤツシユメモリ |
US5732241A (en) * | 1990-06-27 | 1998-03-24 | Mos Electronics, Corp. | Random access cache memory controller and system |
US5488709A (en) * | 1990-06-27 | 1996-01-30 | Mos Electronics, Corp. | Cache including decoupling register circuits |
US5465344A (en) * | 1990-08-20 | 1995-11-07 | Matsushita Electric Industrial Co., Ltd. | Microprocessor with dual-port cache memory for reducing penalty of consecutive memory address accesses |
US5434989A (en) * | 1991-02-19 | 1995-07-18 | Matsushita Electric Industrial Co., Ltd. | Cache memory for efficient access with address selectors |
US5339322A (en) * | 1991-03-29 | 1994-08-16 | Sgs-Thomson Microelectronics, Inc. | Cache tag parity detect circuit |
JP2703418B2 (ja) * | 1991-04-24 | 1998-01-26 | 株式会社東芝 | 中央演算処理装置 |
US5319768A (en) * | 1991-05-01 | 1994-06-07 | Sgs-Thomson Microelectronics, Inc. | Control circuit for resetting a snoop valid bit in a dual port cache tag memory |
US5335335A (en) * | 1991-08-30 | 1994-08-02 | Compaq Computer Corporation | Multiprocessor cache snoop access protocol wherein snoop means performs snooping operations after host bus cycle completion and delays subsequent host bus cycles until snooping operations are completed |
EP0553743A1 (en) * | 1992-01-31 | 1993-08-04 | Motorola, Inc. | A cache controller |
JPH05257899A (ja) * | 1992-02-19 | 1993-10-08 | Nec Corp | キャッシュメモリユニット |
US5696935A (en) * | 1992-07-16 | 1997-12-09 | Intel Corporation | Multiported cache and systems |
US5513335A (en) * | 1992-11-02 | 1996-04-30 | Sgs-Thomson Microelectronics, Inc. | Cache tag memory having first and second single-port arrays and a dual-port array |
US5778424A (en) * | 1993-04-30 | 1998-07-07 | Avsys Corporation | Distributed placement, variable-size cache architecture |
US5414824A (en) * | 1993-06-30 | 1995-05-09 | Intel Corporation | Apparatus and method for accessing a split line in a high speed cache |
JPH0756815A (ja) * | 1993-07-28 | 1995-03-03 | Internatl Business Mach Corp <Ibm> | キャッシュ動作方法及びキャッシュ |
US5420991A (en) * | 1994-01-04 | 1995-05-30 | Intel Corporation | Apparatus and method for maintaining processing consistency in a computer system having multiple processors |
US5671391A (en) * | 1994-01-10 | 1997-09-23 | Ncr Corporation | Coherent copyback protocol for multi-level cache memory systems |
KR100391727B1 (ko) * | 1994-11-09 | 2003-11-01 | 소니 일렉트로닉스 인코포레이티드 | 메모리시스템및메모리억세싱방법 |
US5745729A (en) * | 1995-02-16 | 1998-04-28 | Sun Microsystems, Inc. | Methods and apparatuses for servicing load instructions |
US5721874A (en) * | 1995-06-16 | 1998-02-24 | International Business Machines Corporation | Configurable cache with variable, dynamically addressable line sizes |
JP2000501539A (ja) * | 1996-09-25 | 2000-02-08 | フィリップス エレクトロニクス ネムローゼ フェンノートシャップ | アドレス競合検出を持つ多重ポート・キャッシュメモリ |
US6122711A (en) | 1997-01-07 | 2000-09-19 | Unisys Corporation | Method of and apparatus for store-in second level cache flush |
US6260114B1 (en) | 1997-12-30 | 2001-07-10 | Mcmz Technology Innovations, Llc | Computer cache memory windowing |
US6253285B1 (en) | 1998-04-16 | 2001-06-26 | Compaq Computer Corporation | Method and apparatus for minimizing dcache index match aliasing using hashing in synonym/subset processing |
US6757815B2 (en) * | 1999-12-23 | 2004-06-29 | Intel Corporation | Single array banked branch target buffer |
DE10040267A1 (de) * | 2000-08-17 | 2002-02-28 | Philips Corp Intellectual Pty | Prozessor-Speicher-System |
WO2008126169A1 (ja) * | 2007-03-12 | 2008-10-23 | Fujitsu Limited | ストレージ管理プログラム、ストレージ管理方法およびストレージ管理装置 |
US20090019306A1 (en) * | 2007-07-11 | 2009-01-15 | Herbert Hum | Protecting tag information in a multi-level cache hierarchy |
US10810116B2 (en) * | 2017-06-29 | 2020-10-20 | Sap Se | In-memory database with page size adaptation during loading |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4228503A (en) * | 1978-10-02 | 1980-10-14 | Sperry Corporation | Multiplexed directory for dedicated cache memory system |
AU543278B2 (en) * | 1979-12-14 | 1985-04-18 | Honeywell Information Systems Incorp. | Cache clearing in multiprocessor system |
US4349871A (en) * | 1980-01-28 | 1982-09-14 | Digital Equipment Corporation | Duplicate tag store for cached multiprocessor system |
US4442487A (en) * | 1981-12-31 | 1984-04-10 | International Business Machines Corporation | Three level memory hierarchy using write and share flags |
US4503497A (en) * | 1982-05-27 | 1985-03-05 | International Business Machines Corporation | System for independent cache-to-cache transfer |
US4794524A (en) * | 1984-07-03 | 1988-12-27 | Zilog, Inc. | Pipelined single chip microprocessor having on-chip cache and on-chip memory management unit |
US4847804A (en) * | 1985-02-05 | 1989-07-11 | Digital Equipment Corporation | Apparatus and method for data copy consistency in a multi-cache data processing unit |
US4768148A (en) * | 1986-06-27 | 1988-08-30 | Honeywell Bull Inc. | Read in process memory apparatus |
-
1987
- 1987-02-09 JP JP62029293A patent/JPH0668735B2/ja not_active Expired - Fee Related
-
1988
- 1988-02-08 DE DE3803759A patent/DE3803759A1/de active Granted
- 1988-02-09 US US07/153,890 patent/US5056002A/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
DE3803759A1 (de) | 1988-08-18 |
US5056002A (en) | 1991-10-08 |
DE3803759C2 (ja) | 1991-04-25 |
JPS63195752A (ja) | 1988-08-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH0668735B2 (ja) | キヤツシユメモリ− | |
JP2822588B2 (ja) | キャッシュメモリ装置 | |
US5249284A (en) | Method and system for maintaining data coherency between main and cache memories | |
JP3236287B2 (ja) | マルチプロセッサシステム | |
JP3798049B2 (ja) | データメモリおよびその動作方法 | |
JPH01290050A (ja) | バッファ記憶装置 | |
US7577791B2 (en) | Virtualized load buffers | |
JPH0532775B2 (ja) | ||
US5737568A (en) | Method and apparatus to control cache memory in multiprocessor system utilizing a shared memory | |
US5455925A (en) | Data processing device for maintaining coherency of data stored in main memory, external cache memory and internal cache memory | |
JPH05324468A (ja) | 階層化キャッシュメモリ | |
CN101930344B (zh) | 确定链接数据储存器中存储和重写的项目的数据存储协议 | |
WO1997004392A1 (en) | Shared cache memory device | |
US5619673A (en) | Virtual access cache protection bits handling method and apparatus | |
US20020042860A1 (en) | Cache system | |
US7865691B2 (en) | Virtual address cache and method for sharing data using a unique task identifier | |
CA1299767C (en) | Cache memory control system | |
JP3733604B2 (ja) | キャッシュメモリ | |
JPH0529943B2 (ja) | ||
JPS60237553A (ja) | キヤツシユコヒ−レンスシステム | |
US6078971A (en) | Input/output buffer and method for invalidating transferred data in direct memory access transfer | |
JPH03230238A (ja) | キャッシュメモリ制御方式 | |
JPS60701B2 (ja) | デ−タ処理装置 | |
JP2703255B2 (ja) | キャッシュメモリ書込み装置 | |
KR0140952B1 (ko) | 다중 프로세서 시스템의 단일 캐시 공유 장치 및 그 장치를 이용한 데이타 기록/판독 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
LAPS | Cancellation because of no payment of annual fees |