JPH02108139A - キャッシュメモリ装置 - Google Patents

キャッシュメモリ装置

Info

Publication number
JPH02108139A
JPH02108139A JP63260006A JP26000688A JPH02108139A JP H02108139 A JPH02108139 A JP H02108139A JP 63260006 A JP63260006 A JP 63260006A JP 26000688 A JP26000688 A JP 26000688A JP H02108139 A JPH02108139 A JP H02108139A
Authority
JP
Japan
Prior art keywords
memory
cache memory
data
bus
processor
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
JP63260006A
Other languages
English (en)
Inventor
Yukio Kumazawa
幸夫 熊澤
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.)
Fujifilm Business Innovation Corp
Original Assignee
Fuji Xerox Co 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 Fuji Xerox Co Ltd filed Critical Fuji Xerox Co Ltd
Priority to JP63260006A priority Critical patent/JPH02108139A/ja
Publication of JPH02108139A publication Critical patent/JPH02108139A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

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

Description

【発明の詳細な説明】 [産業上の利用分野1 本発明は、複数のバスマスタが同時に動作する計算機シ
ステム等のキャッシュメモリ装置に関し、特にプロセッ
サバスとシステムバスから非同期にアクセスされるキャ
ッシュメモリにおいてアクセスの衝突を回避するだめの
アクセスアビトレージョンに関するものである。
[従来の技術1 従来、メモリアクセスの高速化のために、メインメモリ
の他にキャッシュメモリと呼ばれる小容量の高速動作可
能なメモリが使用されている。
例えば、プロセッサは、キャッシュメモリを介してシス
テムバスに接続されており、このシステムバスにメイン
メモリ及びデータ処理装置が接続されている。そして、
キャッシュメモリには、プロセッサからのアクセス頻度
が高いアドレス領域のデータがメインメモリから転送さ
れる。
いま、プロセッサが、あるアドレスをアクセスしようと
したときに、そのアドレスがキヤ・ノシュメモリ内にあ
れば、すなわちキヤ・ノシュヒットすれば、プロセッサ
はキャッシュメモリを直接アクセスするので高速動作が
可能となる。また、アクセスしようとしたアドレスカτ
キャッシュメモリ内にないとき、すなわち、キャッシュ
ミスしたときは、キャッシュメモリの内容をメインメモ
リに戻し、プロセッサによりアクセスされたアドレスを
含むブロックのデータがメインメモリからキャッシュメ
モリへ新たに転送される。すなわち、キャッシュメモリ
の内容がリプレースされる。
また、キャッシュメモリは、プロセッサからアクセスさ
れるだけではなく、システムバスに接続されたデータ処
理装置からもアクセスされる。これらのアクセスは、非
同期的なものである。したがって、キャッシュメモリ番
二文:jするアクセスが衝突しないように、アクセスア
ビトレージョンを行う必要がある。
このように、キャッシュメモリを複数のバスからアクセ
スする場合には、アクセスの状態に応じてキャッシュメ
モリの動作を制御する必要があるため、一般に、専用の
キャッシュメモリコントローラ、たとえば、集積回路p
PD71641゜pPD43608R(日本電気株式会
社製)等が使用されている。
第4図はこのようなキャッシュメモリコントローラを使
用したキャッシュメモリ装置の構成例を示すブロック図
である。
図に示すように、従来のキャッシュメモリ装置において
は、プロセッサアドレスバス1とシステムアドレスバス
4の両側から同時にアクセスできるデュアルポートディ
レクトリメモリ8が設けられるとともに、キャッシュミ
ス時のリプレースの単位である各サブブロックの有効・
無効を示すフラグが格納されたデュアルポート有効フラ
グメモリ9が設けられる。なお、デュアルポートとは、
プロセッサバスイ則とシステムアスイ則から独立にアド
レスとデータが入力可能であることを意味する。
デュアルポートディレクトリメモリ8に格納されている
プロセッサアドレスタグ17とプロセッサアドレスバス
1のアト、レスは、コンパレータ10で比較され、両者
が一致したときにプロセッサアドレス一致信号19が出
力される。なお、プロセッサアドレスタグ17の内容は
、プロセッサからのアクセス状態に応じて最も古く使用
されたメモリブロックを追い出ずLRU(least 
recentlyused)回路7により更新される。
同禄に、デュアルポートディレクトリメモリ8に格納さ
れているシステムアドレスタグ18とシステムアドレス
バス4のアドレスは、コンパレータ11で比較され、両
者が一致したときにシステムアドレス一致信号20が出
力される。
コンパレータto、 iiの比較結果は、プロセッサ制
御信号2.システム制御信号5とともにシケーンサ13
に供給され、シケーンサ13からのキャッシュデータ制
御信号22によりデータメモリ15の動作が制御される
。また、シケーンサ13は、デュアルポート有効フラグ
メモリ9に供給されるアドレスタグの有効性を変更する
有効フラグ変更信号25の制御も行う。
[発明が解決しようとする課題] 上述のキャッシュメモリ装置は、第4図に示すように、
デュアルポートディレクトリメモリ8内のタグと、プロ
セッサアドレスバスエ側及びシステムアドレスバス4側
とのアドレスをそれぞれ独立に比較する2つのコンパレ
ータio、 xiを備えているが、それぞれはお互いに
データメモリ15内のどのメモリブロックをアクセスし
ているかわからない。このため、片方のバスがデュアル
ポートディレクトリメモリ8及びデュアルポート有効フ
ラグメモリ9を書き換えている間は、他方は書き換え処
理が終了するまで自分の処理を待たなければならず処理
が遅くなるという欠点があった。
本発明は、前記した従来技術の欠点を改良するため、キ
ャッシュメモリに対するアクセス状態に応じてキャッシ
ュメモリの書換えの制御を行うことにより、処理の高速
化を図ることを目的とする。
[課題を解決するための手段J 本発明のキャッシュメモリ装置は、前記目的を達成する
ため、プロセッサが接続されるプロセッサバスとメイン
メモリ及び該メインメモリの内容を更新することが可能
なデータ処理装置が接続されるシステムバスとのU旧こ
接続されたキャッシュメモリ装置において、前記プロセ
ッサバスが出力するアドレスと前記システムバスが出力
するアドレスを比較するコンパレータを設けるとともに
、該コンパレータによりキャッシュ用メモリの異なるデ
ータブロックへのアクセスが検出されたときに前記プロ
セッサバス及び前記システムバスの双方から前記キャッ
シュ用メモリへ独立してアクセスできるように前記キャ
ッシュ用メモリを制御するシーケンサを設けたことを特
徴とする。
前記キャッシュ用メモリは、前記メインメモリ内のデー
タの一部が格納されるデータメモリ、該データメモリへ
の格納状態を示すアドレスタグを格納するディレクトリ
メモリ及び前記データブロックの有効・無効を示すフラ
グを格納する有効フラグメモリを備え、前記データメモ
リ、ディレクトリメモリ及び有効フラグメモリは、前記
プロセッサバス側と前記システムバス側から独立にアド
レスとデータが入力可能であるデュアルポートメモリと
することができる。
すなわち、本発明は、前記データ処理装置の機能をその
中に取り込んだことを特徴とするキャッシュメモリ装置
である。
[作用1 本発明においては、プロセッサアドレスとシステムバス
アドレスとがコンパレータにより比較され、各バスがキ
ャッシュ用メモリのどのデータブロックをアクセスして
いるのかが検出される。そして、キャッシュ用メモリの
異なるデータブロックがアクセスされていることが検出
されたときは、デュアルポートとされたキャッシュ用メ
モリの異なるデータブロックに対して、同時に内容の書
換えが行われる。
[実施例1 以下、図面を参照しながら、実施例により本発明の特徴
を具体的に説明する。
第1図は本発明実施例のキャッシュメモリ装置のブロッ
ク図、第2図は本実施例のキャッシュメモリ装置を使用
したシステムの全体構成を示すブロック図である。
例えば、マイクロプロセッサ等のプログラムを実行する
プロセッサ26は、キャッシュメモリ27を介してシス
テムバス30に接続されており、このシステムバス30
に前記プログラムを格納するメインメモリ28及びこの
メインメモリ28の内容を変更可能なデータ処理装置2
9が接続されている。なお、このデータ処理装置29は
、必要に応じて複数個設けられる。そして、キャッシュ
メモリ27には、プロセッサ26からのアクセス頻度が
高いアドレス領域のデータがメインメモリ28から転送
されている。なお、図中、1はプロセッサアドレスバス
、2はプロセッサ制御信号、3はプロセッサデータバス
、4はシステムアドレスバス、5はシステム制御信号、
6はシステムデータバスである。
本実施例においては、デュアルポートディレクトリメモ
リ8に格納されているプロセッサアドレスタグ17と、
プロセッサアドレスバス1のアドレスとを比較する第1
のコンパレータ10と、デュアルポートディレクトリメ
モリ8に格納されているシステムアドレスタグ18とシ
ステムアドレスバス4のアドレスとを比較する第2のコ
ンパレータ11の他に、プロセッサアドレスバス1のア
ドレスとシステムアドレスバス4のアドレスとを比較し
て、両者が一致したときブロックアドレス−致信号21
を出力する第3のコンパレータ12を設けている。
また、データメモリとして、プロセッサバス側とシステ
ムバス側から独立にアドレスとデータが入力可能である
デュアルポートデータメモリ16を使用している。
前記各コンパレータ10.11及び12の比較結果は、
プロセッサ制御信号2.システムf1717121)信
号5とともにシーケンサ14に供給され、シーケンサ1
4からのキャッシュデータ制御信号23.24によりデ
ュアルポートデータメモリ16の動作が制御される。ま
た、シーケンサ14は、デュアルポート有効フラグメモ
リ9に供給されるアドレスタグの有効性を変更する有効
フラグ変更信号25の制御も行う。
次に、本実施例のキャッシュメモリ装置の動作を第1図
及び第2図を参照して説明する。
最初に、プロセッサアドレスバス1のアドレスとシステ
ムアドレスバス4のアドレスとが異なっており、ブロッ
クアドレス一致信号21がインアクティブとなり、プロ
セッサ26とシステムバス30上にあるデータ処理装置
29とで同時にはキャッシュメモリ27の同じデータブ
ロックをアクセスしていないことを検出したときを考え
る。
このとき、プロセッサ26またはデータ処理装置29の
どちらかがアクセス中のデータに対し、他から読み書き
することはないので、プロセッサ26側とシステムバス
30側は、非同期にそして同時にデュアルポートディレ
クトリメモリ8、デュアルポート有効フラグメモリ9及
びデュアルポートデータメモリ16をアクセスすること
ができる。
プロセッサ26は、キャッシュメモリ27をアクセスし
、Mlのコンパレータ1oにより一致が検出されれば、
シーケンサ14がら出力されるキャッシュデータ制御信
号23及び有効フラグ変更信号25により、デュアルポ
ートデータメモリ16及びデュアルポート有効フラグメ
モリ9を書き換える。
また、プロセッサ26のアクセスで不一致を検出した場
合には、ずなわら、キャッシュミスした場合には、もし
、リプレースが必要ならシーケンサ14によりデュアル
ポートデータメモリ16とメインメモリ28の間でリプ
レース処理を行った後、デュアルポートディレクトリメ
モリ8、デュアルポート有効フラグメモリ9及びデュア
ルポートデータメモリ16を書き換えれば良い。
その後、変更したデータ内容をシステムバス30に出力
して、他のノード(本実施例の場合はデータ処理装置2
9)とのデータの一貫性を保持する。
また、第2のコンパレータ11によりシステムバス30
側の一致が検出されたときは、シーケンサ14により出
力されるギヤッシュテ゛−タ制御信号24、有効フラグ
変更信号25により、デュアルポート有効フラグメモリ
9及びデュアルポートデータメモリ16を書き換える。
次に、プロセッサ26とシステムバス30上にあるデー
タ処理装置29とにより、同時にキャッシュメモリ27
の同じデータブロックに書き込んでいるときを考える。
本実施例においては、データメモリ16がデュアルポー
トであるため両方からアクセスすることは可能であるが
、無秩序にアクセスするとデータの一貫性が保てなくな
る。
例えば、いまプロセッサ26が、デュアルポートデータ
メモリ16に成るデータraJを書き込んだとする。こ
のとき、システムバス30側も動作中であるため、シー
ケンサ14はその動作が終了するまでライト(writ
e) r a Jの出力(データメモIJ16にデータ
raJを書き込んだという情報をシステムバス30側に
出力すること)は待たされる。
このときシステム側のブロックでの転送により、プロセ
ッサ26が書き込んだ[a」を別のデータrbJに書き
換えてしまうかもしれない。この場合、ブロック転送終
了後、raJを出力してもそのデータはすでにないので
データの一貫性が保てなくなる。
そこで、本実施例においては、第3のコンパレータ12
により、同じメモリブロックへのアクセスを検出し、ブ
ロックアドレス一致信号21がアクティブとなった場合
、シーケンサ14は、プロセッサ26またはシステム側
のデータ処理装置29のどちらかに、デュアルポートデ
ータメモリ16とデュアルポート有効フラグメモリ9へ
の優先権を与え、一方の動作が終了した後に他方の処理
を行う。これによりデータの一貫性が保てる。なお、少
なくても一方が読み出しをしている場合、一貫性は保た
れているので同時に動作しても構わない。但し、実際に
はデュアルポートメモリ内で優先権が決められ、順番に
アクセスされている。
なお、第1図に示す実施例のデュアルポートディレクト
リメモリ8.デュアルポート有効フラグメモリ9及びデ
ュアルポートデータメモリ16の各デュアルポートメモ
リは、コントローラと通常のメモリとを組み合せて、デ
ュアルポートメモリと同等の動作をするデュアルポート
機能を持たせることにより実現することもできる。
また、第2図に示す実施例においては、メインメモリ2
8に対して一つのプロセッサ26とキャッシュメモリ2
7が設けられているが、第3図に示すように、複数のプ
ロセッサ26.26a、 26bとキャッシュメモリ2
7.27a、 27bを設け、マルチプロセッサシステ
ムとしてもよい。なお、la、 lbはプロセッサアド
レスバス、2a、 2bはプロセッサ制御信号、3a、
 3bはプロセッサデータバスである。
以上に述べたように、本実施例においては、キャッシュ
メモリ装置を、プロセッサ26とシステムバス30側の
バスマスタとが同時にアクセス可能なデュアルポートメ
モリ群と、プロセッサ26、システムバス30のバスマ
スタ及びデュアルポートディレクトリメモリ8の3つの
アドレスのうちの二つをそれぞれ比較する3つのコンパ
レータと、プロセッサ26とバスマスタが同じデータブ
ロックへのアクセスで書込み動作のときに順番にデュア
ルポートデータメモリ16をアクセスさせる機能を持っ
たシーケンサ14とからttl成することにより、プロ
セッサ26とシステムバス側のバスマスタが共に同じデ
ータブロックへの書き込み動作を行わない限り、プロセ
ッサ26とバスマスタは同時に動作することができる。
[発明の効果1 以上に述べたように、本発明においては、プロセッサア
ドレスとシステムバスアドレスを比lff1 するコン
パレータを設けて、各バスがキャッシュメモリのどのブ
ロックをアクセスしているか検出し、異なるブロックを
アクセスしているときはデュアルポートのキャッシュ用
メモリの内容を同時に書き換える。これにより、一方の
バスがキャッシュ用メモリの内容を書き換えている間で
も、他方のバスは自分の処理を進めることができ、シス
テム全体としての処理時間が短くなる。
【図面の簡単な説明】
第1図は本発明実施例のキャッシュメモリ装置のブロッ
ク図、第2図は本実施例のキャッシュメモリ装置を使用
したシステムの全体(114成を示ずブoツク図、第3
図は本発明をマルチプロセッサシステムに適用した例を
示すブロック図、第4図は従来のキャッシュメモリ装置
のブロック図である。 1、la、lb: プロセッサアドレスバス2.2a、
2b:プロセッサ制御信号 3.3a、3b:プロセッサデータバス4ニジステムア
ドレスバス 5ニジステムQjlJ御信号   6:システムデータ
バス7:LRU回路 8:デュアルポートディレクトリメモリ9:デュアルポ
ート有効フラグメモリ 10〜12:コンパレータ  13,14:シーケンサ
15:データメモリ 16:デ゛ユアルポートデータメモリ 17:プロセッサアドレスタグ 18ニジステムアドレスタグ 19:プロセッサアドレス一致信号 20ニジステムアドレス一致信号 21ニブロックアドレス一致信号 22〜24:キャッシュデータ制御油信号25:有効フ
ラグ変更信号 26.26a、26b:プロセッサ 27.27a、27b:キャッシュメモリ28:メイン
メモリ    29:データ処理装置30ニジステムバ

Claims (1)

  1. 【特許請求の範囲】 1、プロセッサが接続されるプロセッサバスとメインメ
    モリ及び該メインメモリの内容を更新することが可能な
    データ処理装置が接続されるシステムバスとの間に接続
    されたキャッシュメモリ装置において、前記プロセッサ
    バスが出力するアドレスと前記システムバスが出力する
    アドレスを比較するコンパレータを設けるとともに、該
    コンパレータにより キャッシュ用メモリの異なるデータブロックへのアクセ
    スが検出されたときに前記プロ セッサバス及び前記システムバスの双方から前記キャッ
    シュ用メモリへ独立してアクセスできるように前記キャ
    ッシュ用メモリを制御するシーケンサを設けたことを特
    徴とする キャッシュメモリ装置。 2、前記キャッシュ用メモリは、前記メインメモリ内の
    データの一部が格納されるデータメモリ、該データメモ
    リへの格納状態を示すアドレスタグを格納するディレク
    トリメモリ及び前記データプロタグの有効・無効を示す
    フラグを格納する有効フラグメモリを備え、前記 データメモリ、ディレクトリメモリ及び有効フラグメモ
    リは、前記プロセッサバス側と前記システムバス側から
    独立にアドレスとデータが入力可能であるデュアルポー
    トメモリであることを特徴とする請求項1記載のキャッ
    シュメモリ装置。
JP63260006A 1988-10-15 1988-10-15 キャッシュメモリ装置 Pending JPH02108139A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63260006A JPH02108139A (ja) 1988-10-15 1988-10-15 キャッシュメモリ装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63260006A JPH02108139A (ja) 1988-10-15 1988-10-15 キャッシュメモリ装置

Publications (1)

Publication Number Publication Date
JPH02108139A true JPH02108139A (ja) 1990-04-20

Family

ID=17341992

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63260006A Pending JPH02108139A (ja) 1988-10-15 1988-10-15 キャッシュメモリ装置

Country Status (1)

Country Link
JP (1) JPH02108139A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09152989A (ja) * 1995-11-29 1997-06-10 Nec Corp データキャッシュメモリシステム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09152989A (ja) * 1995-11-29 1997-06-10 Nec Corp データキャッシュメモリシステム

Similar Documents

Publication Publication Date Title
US5056002A (en) Cache memory for use with multiprocessor systems
EP0179811B1 (en) Interleaved set-associative memory
EP0192202B1 (en) Memory system including simplified high-speed data cache
US5249284A (en) Method and system for maintaining data coherency between main and cache memories
WO1997004392A1 (en) Shared cache memory device
JPH02108139A (ja) キャッシュメモリ装置
JP2580263B2 (ja) バッファ記憶装置
JPH02110646A (ja) メモリの先行読出し装置
JPH01251250A (ja) 共有キャッシュメモリ
JP3238390B2 (ja) バッファ記憶装置
JP2736352B2 (ja) マルチプロセッサシステムにおけるキャッシュメモリ制御方法
JP2703255B2 (ja) キャッシュメモリ書込み装置
GB2035632A (en) Multiprocessor system
JP3226557B2 (ja) マルチプロセッサシステム
JP3074897B2 (ja) メモリ回路
JPS63141150A (ja) メモリインタロツク制御方式
JP2588547B2 (ja) マルチcpuシステム
JPH0448263B2 (ja)
JP2000066946A (ja) メモリコントローラ
JPH087663B2 (ja) コンピユータ・システムおよびその記憶装置アクセス方法
JPH0612363A (ja) メモリ制御装置およびマルチプロセッサシステム
JPH06124235A (ja) キャッシュ制御方式
JPH02219144A (ja) ライト・バックアクセス時間を短縮したキャッシュメモリ
JPH01118944A (ja) キャッシュメモリ制御装置
JPH0548498B2 (ja)