JPH0713863A - キャッシュメモリ制御回路 - Google Patents

キャッシュメモリ制御回路

Info

Publication number
JPH0713863A
JPH0713863A JP5156571A JP15657193A JPH0713863A JP H0713863 A JPH0713863 A JP H0713863A JP 5156571 A JP5156571 A JP 5156571A JP 15657193 A JP15657193 A JP 15657193A JP H0713863 A JPH0713863 A JP H0713863A
Authority
JP
Japan
Prior art keywords
common bus
memory
cache
data
address
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.)
Withdrawn
Application number
JP5156571A
Other languages
English (en)
Inventor
Takashi Nagumo
隆司 南雲
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 Engineering Ltd
Original Assignee
NEC Engineering 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 NEC Engineering Ltd filed Critical NEC Engineering Ltd
Priority to JP5156571A priority Critical patent/JPH0713863A/ja
Publication of JPH0713863A publication Critical patent/JPH0713863A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 【目的】 他のプロセッサから主記憶に対して書込みが
行われても、他のプロセッサの動作に影響されることな
く自プロセッサの処理を高速に実行可能とする。 【構成】 キャッシュメモリ制御部1の共通バスモニタ
部15は共通バス4上を監視し、主記憶に対して行われ
た書込み動作を検出する。共通バス側アドレス比較部1
7は共通バス4上のアドレス41とディレクトリメモリ
部12から読出されたキャッシュメモリ情報とを比較す
る。共通バス側キャッシュメモリアクセス制御部18は
共通バス側アドレス比較部17から一致情報を受取る
と、共通バス4上のデータ44でキャッシュデータメモ
リ2に対して書込み動作を行う。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はキャッシュメモリ制御回
路に関し、特にマルチプロセッサシステムにおけるキャ
ッシュメモリの共通バスモニタリング方式に関する。
【0002】
【従来の技術】従来、バスモニタリング方式によるキャ
ッシュメモリ構成においては、図4に示すように、キャ
ッシュメモリ制御部7がプロセッサ側ディレクトリ制御
部71と、ディレクトリメモリ部72と、プロセッサ側
アドレス比較部73と、プロセッサ側キャッシュメモリ
アクセス制御部74と、共通バスモニタ部75と、共通
バス側ディレクトリ制御部76と、共通バス側アドレス
比較部77とから構成されている。
【0003】プロセッサ側ディレクトリ制御部71はプ
ロセッサ側からのアクセスによりディレクトリメモリ部
72のキャッシュメモリ情報を登録または更新する。こ
こで、キャッシュメモリ情報はタグデータ及びバリット
(Valid)データで構成されており、ディレクトリ
メモリ部72はデュアルポートのメモリである。
【0004】プロセッサ側アドレス比較部73はプロセ
ッサ側からアクセスのあったアドレス31と、ディレク
トリメモリ部72に格納されたキャッシュメモリ情報と
を比較し、キャッシュヒットか否かを判定する。ここ
で、キャッシュヒットとはそのアドレスのデータがキャ
ッシュデータメモリ8に存在することを示している。
【0005】プロセッサ側キャッシュメモリアクセス制
御部74はキャッシュヒット時のキャッシュデータメモ
リ8へのアクセスを行い、キャッシュミスヒット時に主
記憶(図示せず)のデータをキャッシュデータメモリ8
に書込む。ここで、キャッシュミスヒットとはそのアド
レスのデータがキャッシュデータメモリ8に存在しない
ことを示している。
【0006】共通バスモニタ部75は共通バス4上を監
視し、主記憶に対して行われた書込み動作を検出する。
共通バス側ディレクトリ制御部76は共通バスモニタ部
75で主記憶に対する書込み動作を検出したときにディ
レクトリメモリ部72のキャッシュメモリ情報を読出
し、共通バス側アドレス比較部77で一致が検出された
ときにディレクトリメモリ部72のキャッシュメモリ情
報を無効化する。
【0007】共通バス側アドレス比較部77は共通バス
4上のアドレス41とディレクトリメモリ部72から読
出されたキャッシュメモリ情報とを比較し、主記憶に対
して書込みが行われたときに共通バス4上にある書込み
アドレスのデータがキャッシュデータメモリ8上にある
か否かを判定する。
【0008】このキャッシュメモリ制御部7のプロセッ
サ側はプロセッサバス3に接続され、共通バス側は共通
バス4に接続されている。また、キャッシュメモリ制御
部7はキャッシュデータメモリ8に接続することによっ
てキャッシュメモリを構成している。
【0009】ここで、プロセッサバス3はアドレス31
とデータ34と制御線35とからなり、共通バス4はア
ドレス41とデータ44と制御線45とからなってい
る。尚、プロセッサバス3のアドレス31は、図3
(a)に示すように、上位アドレス32と下位アドレス
33とに分割されており、共通バス4のアドレス41
は、図3(b)に示すように、上位アドレス42と下位
アドレス43とに分割されている。
【0010】このキャッシュメモリ制御部7は共通バス
モニタ部75で共通バス4の制御線45を監視すること
で、主記憶に対する書込み動作が発生したか否かを監視
している。共通バスモニタ部75は主記憶に対する書込
み動作が発生したことを検出すると、その旨を共通バス
側ディレクトリ制御部76に通知する。
【0011】共通バス側ディレクトリ制御部76は共通
バス4の下位アドレス43によりディレクトリメモリ部
72からキャッシュメモリ情報を読出し、そのキャッシ
ュメモリ情報を共通バス側アドレス比較部77に送る。
【0012】共通バス側アドレス比較部77はディレク
トリメモリ部72からのキャッシュメモリ情報と共通バ
ス4上の上位アドレス42とを比較する。その比較結果
が一致であれば共通バス4上のアドレス41のデータが
キャッシュデータメモリ8に存在することになる。
【0013】また、その比較結果が不一致であれば共通
バス4上のアドレス41のデータがキャッシュデータメ
モリ8に存在しないことになる。共通バス側アドレス比
較部77はこの一致/不一致情報を共通バス側ディレク
トリ制御部76に通知する。
【0014】共通バス側ディレクトリ制御部76は一致
情報を受取ると、共通バス4上のアドレス41に該当す
るキャッシュメモリ情報のバリッドデータをクリアして
無効化し、バスモニタ動作を終了する。また、共通バス
側ディレクトリ制御部76は不一致情報を受取ると、キ
ャッシュメモリ情報を無効化せずにバスモニタ動作を終
了する。
【0015】上記のキャッシュメモリ制御部7を備えた
プロセッサからなるマルチプロセッサシステムの構成を
図5に示す。このマルチプロセッサシステムではプロセ
ッサ9−1,9−2がともにマイクロプロセッサ91−
1,91−2と、キャッシュメモリ制御部7−1,7−
2と、キャッシュデータメモリ8−1,8−2と、共通
バスインタフェース92−1,92−2とから構成され
ている。また、プロセッサ9−1,9−2はともに共通
バス4を介して主記憶6に接続されている。
【0016】以下、共通バス4の使用権を獲得している
バスマスタであるプロセッサ9−1が主記憶6のあるア
ドレスに対して書込みを行う場合について説明する。ま
ず、プロセッサ9−1は共通バス4を使用して主記憶6
のあるアドレスに対して書込みを行う。
【0017】このとき、プロセッサ9−2では共通バス
モニタ部75で共通バス4の制御線45を監視すること
で、主記憶6に対する書込み動作が発生したことを検出
すると、共通バス側アドレス比較部77によって共通バ
ス4のアドレス41がキャッシュメモリ情報としてディ
レクトリメモリ部72に登録されているか否かを判定す
る。
【0018】該アドレスがディレクトリメモリ部72に
登録されていれば、共通バス側ディレクトリ制御部76
によって共通バス4上のアドレス41に該当するキャッ
シュメモリ情報を無効化する。また、該アドレスがディ
レクトリメモリ部72に登録されていなければ、該当す
るキャッシュメモリ情報の無効化を行わない。これによ
って、プロセッサ9−2のキャッシュデータメモリ8−
2と主記憶6との間のメモリデータの一致性を保持す
る。
【0019】また、プロセッサ9−2はプロセッサ9−
1によって主記憶6に書込まれたアドレスからデータを
読出す場合、当該アドレスがディレクトリメモリ部72
に登録されていればそのキャッシュデータは無効化され
ているのでキャッシュミスヒットとなり、当該アドレス
のデータが主記憶6からキャッシュデータメモリ8−2
へ再ロードされる。
【0020】
【発明が解決しようとする課題】上述した従来のバスモ
ニタリング方式では、他のプロセッサから主記憶に対し
て書込みが行われた場合、そのアドレスが自プロセッサ
のキャッシュメモリに登録されていれば、その登録を無
効化することによって自プロセッサのキャッシュメモリ
と主記憶との間のデータの一致性を保持している。
【0021】このため、登録が無効化されたデータを読
出そうとした場合、主記憶から自プロセッサのキャッシ
ュメモリにそのデータを再ロードする必要がある。この
再ロード動作はキャッシュヒットした場合に比べて動作
速度が非常に遅いため、キャッシュメモリのデータが無
効化される確率が高くなると、キャッシュメモリを効率
よく使用することができなくなり、プロセッサの処理能
力が低下するという問題がある。ここで、再ロード動作
はキャッシュヒットした場合に比べて時間が約十倍程度
かかる。
【0022】そこで、本発明の目的は上記問題点を解消
し、他のプロセッサから主記憶に対して書込みが行われ
ても、他のプロセッサの動作に影響されることなく自プ
ロセッサの処理を高速に実行することができるキャッシ
ュメモリ制御回路を提供することにある。
【0023】
【課題を解決するための手段】本発明によるキャッシュ
メモリ制御回路は、共通バスを監視して主記憶装置への
データ書込みを検出する検出手段と、前記検出手段によ
って検出された前記データ書込みのアドレスとキャッシ
ュメモリに格納されたデータのアドレスとを比較する比
較手段と、前記比較手段で一致が検出されたときに、プ
ロセッサから前記主記憶装置へのアクセス要求による前
記キャッシュメモリへのアクセスとは独立に前記共通バ
ス上のデータで前記キャッシュメモリの内容を更新する
更新手段とを備えている。
【0024】
【実施例】次に、本発明の一実施例について図面を参照
して説明する。
【0025】図1は本発明の一実施例の構成を示すブロ
ック図である。図において、キャッシュメモリ制御部1
はプロセッサ側がプロセッサバス3に、共通バス側が共
通バス4に接続され、デュアルポートのキャッシュデー
タメモリ2に接続することによってキャッシュメモリを
構成している。
【0026】プロセッサ側ディレクトリ制御部11はプ
ロセッサ側からのアクセスによりデュアルポートのディ
レクトリメモリ部12のキャッシュメモリ情報を登録ま
たは更新する。プロセッサ側アドレス比較部13はプロ
セッサ側からアクセスのあったアドレス31と、ディレ
クトリメモリ部12に格納されたキャッシュメモリ情報
とを比較し、キャッシュヒットか否かを判定する。
【0027】プロセッサ側キャッシュメモリアクセス制
御部14はキャッシュヒット時のキャッシュデータメモ
リ2へのアクセスを行い、キャッシュミスヒット時に主
記憶(図示せず)のデータをキャッシュデータメモリ2
に書込む。
【0028】共通バスモニタ部15は共通バス4の制御
線45を監視し、主記憶に対して行われた書込み動作を
検出する。共通バス側ディレクトリ制御部16は共通バ
スモニタ部15で主記憶に対する書込み動作が検出され
たときに、共通バス4の下位アドレス43によってディ
レクトリメモリ部12のキャッシュメモリ情報を読出
し、そのキャッシュメモリ情報を共通バス側アドレス比
較部17に送る。
【0029】共通バス側アドレス比較部17は共通バス
4上のアドレス41とディレクトリメモリ部12から読
出されたキャッシュメモリ情報とを比較する。それらが
一致していれば共通バス4上のアドレス41のデータが
キャッシュデータメモリ2に存在するので、共通バス側
アドレス比較部17はその旨を共通バス側キャッシュメ
モリアクセス制御部18に通知する。
【0030】また、それらが不一致ならば共通バス4上
のアドレス41のデータがキャッシュデータメモリ2に
存在しないので、共通バス側アドレス比較部17はその
旨を共通バス側ディレクトリ制御部16に通知し、バス
モニタ動作を終了する。
【0031】共通バス側キャッシュメモリアクセス制御
部18は共通バス側アドレス比較部17から一致情報を
受取ると、共通バス4上のデータ44でキャッシュデー
タメモリ2に対して書込み動作を行う。これによって、
キャッシュデータメモリ2では共通バス4上のアドレス
41のデータが共通バス4上のデータ44で更新された
ことになる。
【0032】共通バス側キャッシュメモリアクセス制御
部18はその書込み動作が完了すると、その旨を共通バ
ス側ディレクトリ制御部16に通知してバスモニタ動作
を終了する。
【0033】ここで、プロセッサバス3はアドレス31
とデータ34と制御線35とからなり、共通バス4はア
ドレス41とデータ44と制御線45とからなってい
る。また、プロセッサバス3のアドレス31は上位アド
レス32と下位アドレス33とからなり、共通バス4の
アドレス41は上位アドレス42と下位アドレス43と
からなっている。
【0034】図2は図1のキャッシュメモリを用いたマ
ルチプロセッサシステムの構成を示すブロック図であ
る。図において、本発明の一実施例のマルチプロセッサ
システムはプロセッサ5−1,5−2がともに共通バス
4を介して主記憶6に接続されている。
【0035】また、プロセッサ5−1,5−2のマイク
ロプロセッサ51−1,51−2はともに共通バスイン
タフェース52−1,52−2を介して共通バス4に接
続されている。
【0036】以下、共通バス4の使用権を獲得している
バスマスタであるプロセッサ5−1が主記憶6のあるア
ドレスに対して書込みを行う場合について説明する。ま
ず、プロセッサ5−1は共通バス4を使用して主記憶6
のあるアドレスに対して書込みを行う。
【0037】このとき、プロセッサ5−2では共通バス
モニタ部15で共通バス4の制御線45を監視すること
で、主記憶6に対する書込み動作が発生したことを検出
すると、共通バス側アドレス比較部17によって共通バ
ス4のアドレス41がキャッシュメモリ情報としてディ
レクトリメモリ部12に登録されているか否かを判定す
る。
【0038】該アドレスがディレクトリメモリ部12に
登録されていなければ、共通バス側アドレス比較部17
はその旨を共通バス側ディレクトリ制御部16に通知し
てバスモニタ動作を終了するので、キャッシュデータメ
モリ2−2の更新が行われることはない。
【0039】また、該アドレスがディレクトリメモリ部
12に登録されていれば、共通バス側アドレス比較部1
7はその旨を共通バス側キャッシュメモリアクセス制御
部18に通知するので、共通バス側キャッシュメモリア
クセス制御部18は共通バス4上のデータ44でキャッ
シュデータメモリ2−2に対して書込み動作を行う。
【0040】これによって、キャッシュデータメモリ2
−2のデータが共通バス4上のデータ44で更新され、
プロセッサ5−2のキャッシュデータメモリ2−2と主
記憶6との間のメモリデータの一致性が保持される。
【0041】また、プロセッサ5−2はプロセッサ5−
1によって主記憶6に書込まれたアドレスからデータを
読出す場合、当該アドレスがディレクトリメモリ部12
に登録されていればキャッシュデータメモリ2−2のデ
ータが共通バス4上のデータ44で更新されているので
キャッシュヒットとなる。
【0042】したがって、キャッシュミスヒットによっ
て当該アドレスのデータが主記憶6からキャッシュデー
タメモリ8へ再ロードされることはない。よって、プロ
セッサ5−2はプロセッサ5−1の主記憶6に対する書
込み動作に影響されることなく、高速に処理を実行する
ことができる。
【0043】このように、共通バスモニタ部15で主記
憶6に対する書込み動作の発生が検出され、共通バス側
アドレス比較部17で共通バス4のアドレス41がディ
レクトリメモリ部12に登録されていることが検出され
たとき、共通バス側キャッシュメモリアクセス制御部1
8によって共通バス4上のデータ44でキャッシュデー
タメモリ2の更新を行うことによって、キャッシュデー
タメモリ2と主記憶6との間のメモリデータの一致性を
保持することができる。
【0044】よって、他のプロセッサの主記憶6への書
込み動作によって、自プロセッサのキャッシュデータメ
モリ2のデータが無効化されることがなくなるので、他
のプロセッサの主記憶6への書込み動作によるキャッシ
ュデータメモリ2への影響を回避することができる。
【0045】その結果、キャッシュデータメモリ2を効
率よく使用することができるため、プロセッサの能力を
高めることができる。尚、他のプロセッサの主記憶6へ
の書込み動作によるキャッシュデータメモリ2の更新動
作は、プロセッサからキャッシュデータメモリ2へのア
クセス動作とは独立に行われるので、この更新動作によ
ってプロセッサの処理が影響を受けることもない。
【0046】これによって、他のプロセッサから主記憶
6に対して書込みが行われても、他のプロセッサの動作
に影響されることなく自プロセッサの処理を高速に実行
することができる。
【0047】
【発明の効果】以上説明したように本発明によれば、主
記憶装置へのデータ書込みが検出されたときに、そのデ
ータ書込みのアドレスとキャッシュメモリに格納された
データのアドレスとを比較し、その結果一致が検出され
れば、プロセッサからの主記憶装置へのアクセス要求に
よるキャッシュメモリへのアクセスとは独立に共通バス
上のデータでキャッシュメモリの内容を更新することに
よって、他のプロセッサから主記憶に対して書込みが行
われても、他のプロセッサの動作に影響されることなく
自プロセッサの処理を高速に実行することができるとい
う効果がある。
【図面の簡単な説明】
【図1】本発明の一実施例の構成を示すブロック図であ
る。
【図2】図1のキャッシュメモリを用いたマルチプロセ
ッサシステムの構成を示すブロック図である。
【図3】(a)はプロセッサバスのアドレスの分割例を
示す図、(b)は共通バスのアドレスの分割例を示す図
である。
【図4】従来例の構成を示すブロック図である。
【図5】図4のキャッシュメモリを用いたマルチプロセ
ッサシステムの構成を示すブロック図である。
【符号の説明】
1,1−1,1−2 キャッシュメモリ制御部 2,2−1,2−2 キャッシュデータメモリ 3 プロセッサバス 4 共通バス 5−1,5−2 プロセッサ 6 主記憶 12 ディレクトリメモリ部 15 共通バスモニタ部 16 共通バス側ディレクトリ制御部 17 共通バス側アドレス比較部 18 共通バス側キャッシュメモリアクセス制御部

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 共通バスを監視して主記憶装置へのデー
    タ書込みを検出する検出手段と、前記検出手段によって
    検出された前記データ書込みのアドレスとキャッシュメ
    モリに格納されたデータのアドレスとを比較する比較手
    段と、前記比較手段で一致が検出されたときに、プロセ
    ッサから前記主記憶装置へのアクセス要求による前記キ
    ャッシュメモリへのアクセスとは独立に前記共通バス上
    のデータで前記キャッシュメモリの内容を更新する更新
    手段とを有することを特徴とするキャッシュメモリ制御
    回路。
  2. 【請求項2】 前記キャッシュメモリ及び前記キャッシ
    ュメモリに格納されたデータのアドレスを保持するディ
    レクトリメモリは、デュアルポートのメモリで構成され
    ることを特徴とする請求項1記載のキャッシュメモリ制
    御回路。
JP5156571A 1993-06-28 1993-06-28 キャッシュメモリ制御回路 Withdrawn JPH0713863A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5156571A JPH0713863A (ja) 1993-06-28 1993-06-28 キャッシュメモリ制御回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5156571A JPH0713863A (ja) 1993-06-28 1993-06-28 キャッシュメモリ制御回路

Publications (1)

Publication Number Publication Date
JPH0713863A true JPH0713863A (ja) 1995-01-17

Family

ID=15630684

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5156571A Withdrawn JPH0713863A (ja) 1993-06-28 1993-06-28 キャッシュメモリ制御回路

Country Status (1)

Country Link
JP (1) JPH0713863A (ja)

Similar Documents

Publication Publication Date Title
US4484267A (en) Cache sharing control in a multiprocessor
US5652859A (en) Method and apparatus for handling snoops in multiprocessor caches having internal buffer queues
JPH03135641A (ja) マイクロプロセッサ
JPH10501914A (ja) 共用キャッシュ・メモリ装置
US6477622B1 (en) Simplified writeback handling
JPH0511337B2 (ja)
JPH0713863A (ja) キャッシュメモリ制御回路
JP3083786B2 (ja) メモリ更新履歴保存装置およびメモリ更新履歴保存方法
JP3187446B2 (ja) キャッシュメモリ制御装置
JPH03230238A (ja) キャッシュメモリ制御方式
JPS63223846A (ja) キヤツシユ・メモリ−
JP3081635B2 (ja) キャッシュメモリの無効化処理装置および無効化制御方法
JP3378270B2 (ja) マルチプロセッサシステム
JP2000259495A (ja) キャッシュメモリ制御方法及びマルチプロセッサシステム
JPH06274415A (ja) 共有メモリシステム
JP3088293B2 (ja) キャッシュメモリの記憶一致制御装置及び記憶一致制御方法
JPH0535697A (ja) マルチプロセツサシステム
JP3219422B2 (ja) キャッシュメモリ制御方式
JPH0553912A (ja) キヤツシユメモリの制御方法
JP3145479B2 (ja) マルチプロセッサシステムとそのキャッシュメモリ制御方法および装置
JP2507544B2 (ja) 記憶制御装置
JPH057740B2 (ja)
JPH01266643A (ja) キャッシュ制御方式
JPH0528043A (ja) 命令キヤツシユメモリの無効化制御方法
JPH0195344A (ja) キャッシュ・メモリー

Legal Events

Date Code Title Description
A300 Withdrawal of application because of no request for examination

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20000905