JPH1027132A - キャッシュメモリ無効化装置 - Google Patents

キャッシュメモリ無効化装置

Info

Publication number
JPH1027132A
JPH1027132A JP8182971A JP18297196A JPH1027132A JP H1027132 A JPH1027132 A JP H1027132A JP 8182971 A JP8182971 A JP 8182971A JP 18297196 A JP18297196 A JP 18297196A JP H1027132 A JPH1027132 A JP H1027132A
Authority
JP
Japan
Prior art keywords
address
cache memory
circuit
invalidation
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.)
Pending
Application number
JP8182971A
Other languages
English (en)
Inventor
Isao Kato
勲 加藤
Tatsunari Hashizume
達成 橋爪
Koji Suzuki
浩司 鈴木
Akira Kawabe
亮 河邊
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.)
Oki Electric Industry Co Ltd
Original Assignee
Oki Electric Industry 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 Oki Electric Industry Co Ltd filed Critical Oki Electric Industry Co Ltd
Priority to JP8182971A priority Critical patent/JPH1027132A/ja
Publication of JPH1027132A publication Critical patent/JPH1027132A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 【課題】 既に無効化を行なったキャッシュメモリのラ
インに対する重複した無効化の実施をなくす。 【解決手段】 I/O装置2がメモリ装置3にライトア
クセス実行時に、第1の制御手段(31,32,33,
36)によって、ライトアクセスアドレスと、保持手段
30の前回無効化を行なった保持アドレスとを比較し、
一致時にキャッシュメモリ12に対する無効化の実施を
不可能状態として、既に無効化実施済のアドレスに該当
するラインには、その後無効化実施が行なわれないよう
にする。またプロセッサ11がメモリリードアクセス実
行時に、第2の制御手段(34,35,36)により、
リードアクセスアドレスと、先の保持アドレスとを比較
し、一致時に保持アドレスを無効状態として、この様な
リード時にはライトアクセスアドレスが保持アドレスと
同一であっても該当ラインの無効化を実施するように構
成する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、コンピュータシス
テムにおけるキャッシュメモリ無効化装置に関する。
【0002】
【従来の技術】コンピュータシステム(ワードプロセッ
サや電子交換機等のプロセッサを利用したシステムを含
む概念とする)において、大容量のファイルを扱うプロ
グラムでは、実行時間に対してメモリ装置へのアクセス
速度が全体の処理速度に大きな影響を及ぼす。キャッシ
ュメモリは、プロセッサによるメモリ装置に対するアク
セス速度を擬似的に高速化するためのものであり、頻繁
にアクセスされるメモリ装置内のファイルデータ又はプ
ログラムを保持しておき、実際のメモリ装置へのアクセ
スを省略させるものである。
【0003】ところで、メモリ装置は、中央処理装置
(以下、CPU装置と呼ぶ)によってアクセスされるだ
けでなく、入出力制御装置(以下、I/O装置と呼ぶ)
によってもアクセスされる。I/O装置が、メモリ装置
にライトアクセスした場合には、本来一致していること
が前提となっている、メモリ装置内のデータとキャッシ
ュメモリ内のデータとが不一致となることも生じ、そこ
で、I/O装置がメモリ装置にライトアクセスした場合
に、キャッシュメモリの該当データを無効化し、メモリ
装置内のデータと不一致のキャッシュメモリ内のデータ
をプロセッサがアクセスすることを禁止させることが必
要とされている。
【0004】図2に、従来のキャッシュメモリ無効化装
置を適用したコンピュータシステムの構成を示し、その
説明を行なう。
【0005】図2において、コンピュータシステムは、
大きくは、演算処理を実行するCPU装置1、コンピュ
ータシステムと図示せぬ外部装置間の各種インタフェー
ス処理を実行するI/O装置2、及び、実行プログラム
やデータ等を記憶するメモリ装置(主記憶装置)3とが
共通バス4を介して接続されて構成されている。
【0006】また、CPU装置1は、プロセッサ11、
キャッシュメモリ12、バスアクセス制御回路13、双
方向バッファでなるドライバ/レシーバ回路14、バス
サイクルモニタ回路15、インバータ回路16、及び、
スリーステートバッファでなるレシーバ回路17から構
成されている。
【0007】プロセッサ11は、CPU装置1の中核と
なる処理装置であり、実際の演算処理等を行なうもので
ある。
【0008】キャッシュメモリ12は、メモリ装置3に
記憶されたデータの内、例えば、プロセッサ11で使用
頻度が多いデータが保持されており、プロセッサ11か
らメモリ装置3へアクセスが実行された際に、そのアク
セスデータがキャッシュメモリ12に存在すれば、メモ
リ装置3に直接アクセスすることなくキャッシュメモリ
12からプロセッサ11に必要データを送出することに
よって、プロセッサ11の平均メモリアクセス時間を短
縮し、プロセッサ11の処理性能の向上を図ることを目
的とした高速メモリである。
【0009】また、キャッシュメモリ12は、通常、デ
ータの保持領域と、保持データのアドレスを格納するた
めのタグ部と、データの登録や無効化が行なわれる処理
単位であるラインが有効か否かを示すステータス部とを
有して構成されている。
【0010】キャッシュメモリ12の1ラインのデータ
保持容量は、I/O装置2がメモリ装置3にアクセスす
る際の1アクセス時以上のデータ量であり、その保持内
容はメモリ装置3の連続するアドレスの記憶領域に記憶
されたデータとなる場合がある。
【0011】例えば、I/O装置2によるメモリ装置3
へのアクセス単位が最大4バイトなのに対して、キャッ
シュメモリ12の1ラインのデータ量は、16バイト、
32バイトといった単位であり、この単位でメモリ装置
3の連続アドレスの記憶データが、キャッシュメモリ1
2に保持されるようになっている。
【0012】バスアクセス制御回路13は、キャッシュ
メモリ12からのメモリアクセス要求を検出した際に、
バス4を介してメモリ装置3へアクセスするための各種
バス制御を行なうものである。
【0013】ドライバ/レシーバ回路14は、バスアク
セス制御回路13とバス4間におけるデータの送受信を
行なうためのものである。
【0014】ここで、キャッシュメモリ12の無効化制
御について説明する。キャッシュメモリ12は、メモリ
装置3に記憶された一部のデータのコピーを保持してい
る小容量のメモリなので、プロセッサ11が正しく処理
を行なうためには、保持データをメモリ装置3の記憶デ
ータと一致させておく必要がある。
【0015】そこで、例えば、I/O装置2がメモリ装
置3にデータの書き込みを行なうためのライトアクセス
を行なってメモリ装置3のデータ内容を変更した場合
に、その変更されたデータがキャッシュメモリ12に保
持されている場合は、その保持された該当データをキャ
ッシュメモリ12において無効化する必要がある。
【0016】その無効化制御を行なうための要素が、バ
スサイクルモニタ回路15、インバータ回路16及びレ
シーバ回路17であり、これらの要素全体をキャッシュ
無効化制御回路18と称する。
【0017】インバータ回路16は、バスアクセス制御
回路13から出力されるバスアクセス実行表示信号19
の論理レベルを反転し、この反転信号20をレシーバ回
路17の出力制御端子へ出力するものである。バスアク
セス実行表示信号19は、CPU装置1がバス4にアク
セスを実行しているか否かを示すものであり、バスアク
セス実行中であれば“1”、そうでなければ“0”とな
る。
【0018】レシーバ回路17は、出力制御端子に反転
信号20の“0”が供給されている場合、すなわち、C
PU装置1がバスアクセス実行中の場合に信号遮断状態
となり、バス4の信号状態を遮断する。また、出力制御
端子に反転信号20の“1”が供給されている場合、す
なわち、CPU装置1がバスアクセス実行中でない場合
に信号通過状態となり、バス4の信号状態をバスサイク
ルモニタ回路15へ出力する。
【0019】バスサイクルモニタ回路15は、レシーバ
回路17を介して送られてくるバス4の信号状態からバ
スサイクルを監視することによって、メモリ装置3のデ
ータ内容の更新が行なわれていないか否かを認識し、バ
ス4にCPU装置1以外の装置からメモリ装置3へのラ
イトアクセスが発生した場合に、そのライトアクセス時
のアドレスを、無効化を行なうためのアドレスとして無
効化アドレス通知信号21としてキャッシュメモリ12
へ出力し、これと同時に、無効化の実施を行なうための
無効化実施通知信号22をキャッシュメモリ12へ出力
する。
【0020】これによってキャッシュメモリ12は、バ
スサイクルモニタ回路15から通知される無効化アドレ
ス通知信号21によるアドレスの保持データを無効化す
るようになっている。
【0021】つまり、キャッシュ無効化制御回路18
は、CPU装置1がメモリ装置3へライトアクセスを行
なっている場合には、そのバスサイクルを監視の対象と
しないように制御している。
【0022】このようなCPU装置1によるバスサイク
ルを無効化の監視対象外とするのは、CPU装置1がバ
ス4を介してメモリ装置3にアクセスし、そのデータ内
容を変更する場合は、その変更内容は、既にプロセッサ
11からキャッシュメモリ12に通知されており、メモ
リ装置3のデータ内容とキャッシュメモリ12のデータ
内容の不一致は発生しないので、そのバスアクセスによ
って、対応するキャッシュメモリ12のデータ内容を無
効化することは無意味であるばかりか、メモリ装置3と
キャッシュメモリ12とのヒット率を落とすことにつな
がり、プロセッサ11の性能を低下させることになるか
らである。
【0023】このような回路構成によって、CPU装置
1以外の装置がバス4を介してメモリ装置3にライトア
クセスを行なってメモリ装置3のデータ内容を変更する
場合は、キャッシュ無効化制御回路18が、そのライト
アクセス時のアドレスをキャッシュメモリ12に通知
し、ここで、該当データがキャッシュメモリ12に保持
されている場合、その保持データを無効化することによ
って、キャッシュメモリ12の保持データ内容とメモリ
装置3の記憶データ内容との不一致が発生しないように
制御が行なわれる。
【0024】
【発明が解決しようとする課題】ところで、上述した従
来のキャッシュメモリ無効化方法を適用した装置におい
ては、I/O装置2のメモリ装置3へのライトアクセス
単位がキャッシュメモリ12のラインのデータ保持容量
よりも小さく、メモリ装置3の連続アドレスに対してラ
イトアクセスが発生した場合には、キャッシュメモリ1
2の同一ラインに対応するアクセスが連続して複数回発
生することになり、バスサイクルモニタ回路15による
キャッシュメモリ12の無効化が既に無効化を行なった
同一ラインに対して重複して実施される。
【0025】このような重複する無効化が行なわれた場
合、キャッシュメモリ12にアクセスするプロセッサ1
1とバスサイクルモニタ回路15間においては、一方が
キャッシュメモリ12にアクセス中には他方がアクセス
できないため、バスサイクルモニタ回路15がキャッシ
ュメモリ12に対して重複する無駄な無効化アクセスを
実行している間は、プロセッサ11によるキャッシュメ
モリ12へのアクセスができなくなり、その分、プロセ
ッサ11の性能が低下することになる。
【0026】そのため、既に無効化を行なったキャッシ
ュメモリのラインに対する重複した無効化の実施をなく
すことができるキャッシュメモリ無効化装置が求められ
ている。
【0027】
【課題を解決するための手段】上記課題を解決するため
に、請求項1記載のキャッシュメモリ無効化装置は、入
出力制御装置によるメモリ装置へのライトアクセス時に
キャッシュメモリの無効化を行なった際のアドレスを保
持する保持手段と、この保持手段に保持されたアドレス
と、入出力制御装置がメモリ装置にライトアクセスを実
行した際にアクセスされるアドレスとを比較し、一致す
る場合にキャッシュメモリに対する無効化の実施を不可
能状態とする制御を行なう第1の制御手段と、保持手段
に保持されたアドレスと、プロセッサがメモリ装置にリ
ードアクセスを実行した際にアクセスされるアドレスと
を比較し、一致する場合に保持手段に保持されたアドレ
スを無効状態とする制御を行なう第2の制御手段とを具
備し、既に無効化を実施したキャッシュメモリのデータ
の登録や無効化が行なわれるラインに対して無効化の実
施が行なわれないようにしたことを特徴としている。
【0028】このような構成によれば、入出力制御装置
がメモリ装置にライトアクセスを実行した際に、第1の
制御手段によって、ライトアクセスされるアドレスと、
保持手段の保持アドレスとが比較され、一致した場合に
キャッシュメモリに対する無効化の実施が不可能状態と
される。つまり、既に無効化が実施されたアドレスに該
当するキャッシュメモリのラインに対しては、その後、
無効化の実施が行なわれないようになっている。
【0029】また、プロセッサがメモリ装置にリードア
クセスを実行した際に、第2の制御手段によって、リー
ドアクセスされるアドレスと、保持手段の保持アドレス
とが比較され、一致した場合に保持手段の保持アドレス
を無効状態とする制御が実施される。
【0030】これによって、入出力制御装置がライトし
たメモリ装置のアドレスにプロセッサがリードアクセス
を行なってキャッシュメモリのラインにデータを登録し
た後、その登録ラインに該当するメモリ装置のアドレス
に入出力制御装置からライトアクセスが発生した場合、
既に保持手段に前回のライトアクセスによる同一アドレ
スが保持されているが、リードアクセス時に第2の制御
手段によって保持アドレスが無効状態とされているの
で、これによって、キャッシュメモリの無効化の実施が
可能となり、今回のライトアクセス時のアドレスに該当
するラインの無効化が実施される。
【0031】
【発明の実施の形態】以下、図面を参照して、本発明に
よるキャッシュメモリ無効化装置の実施形態について説
明する。
【0032】図1は、この実施形態によるキャッシュメ
モリ無効化装置を適用したコンピュータシステムを示す
ブロック図である。図1において、図2に示した従来の
各部に対応する部分には同一符号を付し、その説明を省
略する。
【0033】図1に示すこの実施形態の装置が、図2に
示した従来例と異なる点は、キャッシュ無効化制御回路
18の内部回路構成及びその無効化制御動作にある。
【0034】すなわち、図1に示すキャッシュ無効化制
御回路18は、図2に示したバスサイクルモニタ回路1
5、インバータ回路16及びレシーバ回路17に加え
て、無効化実施アドレス保持バッファ回路(以下、保持
バッファ回路と呼ぶ)30と、無効化実施アドレス一致
検出回路(以下、第1の一致検出回路と呼ぶ)31と、
2入力タイプのアンド回路32と、1入力端子が負論理
入力端子とされている2入力タイプのアンド回路33
と、アドレス一致検出回路(第2の一致検出回路)34
と、2入力タイプのアンド回路35と、キャッシュ無効
化アドレス保持バッファ有効フラグ回路(以下、フラグ
回路と呼ぶ)36とを具備して構成されている。
【0035】また、バスアクセス制御回路13からキャ
ッシュ無効化制御回路18へ、従来例で説明したバスア
クセス実行表示信号19の他に、後述するプロセッサリ
ードアドレス通知信号43及びプロセッサリードアクセ
ス実施通知信号45が通知されるようになっている。
【0036】保持バッファ回路30は、後述するアンド
回路33の出力データであるキャッシュ無効化実施通知
信号38の“1”が供給されている場合に、バスサイク
ルモニタ回路15から出力される無効化アドレス通知信
号21が示すアドレスを保持し、この保持アドレスを無
効化実施アドレス通知信号39として、第1の一致検出
回路31及び第2の一致検出回路34へ出力するもので
ある。
【0037】第1の一致検出回路31は、無効化アドレ
ス通知信号21と無効化実施アドレス通知信号39とを
比較し、双方の信号21及び39が示すアドレスが一致
する場合に、第1の一致検出回路31の出力データであ
る無効化アドレス一致通知信号40を“1”としてアン
ド回路32へ出力する。
【0038】アンド回路32は、無効化アドレス一致通
知信号40と、後述するフラグ回路36から出力される
保持バッファ有効通知信号41との論理積をとり、この
結果をキャッシュ無効化抑止指示信号42としてアンド
回路33の負論理入力端子へ出力するものである。
【0039】アンド回路33は、キャッシュ無効化抑止
指示信号42の負論理と、バスサイクルモニタ回路15
から出力される無効化実施通知信号22との論理積をと
り、この結果をキャッシュ無効化実施通知信号38とし
てキャッシュメモリ12、保持バッファ回路30及びフ
ラグ回路36へ出力するものである。
【0040】キャッシュ無効化実施通知信号38は、キ
ャッシュメモリ12に無効化の実施を通知する信号であ
り、“1”の場合に、無効化アドレス通知信号21が示
すアドレスに該当するキャッシュメモリ12のラインに
対して無効化が実施されるようになっている。一方、
“0”の場合は、無効化アドレス通知信号21でアドレ
スが通知されても、該当ラインの無効化は実施されな
い。
【0041】また、キャッシュ無効化実施通知信号38
が“1”の場合は、フラグ回路36にフラグがセットさ
れるようになっている。そのフラグは、保持バッファ回
路30の保持アドレスの有効/無効を示すものである。
【0042】フラグがフラグ回路36にセットされてい
る場合は、保持バッファ回路30の保持アドレスが有効
であることを示し、この際、保持バッファ有効通知信号
41が“1”となってアンド回路32へ供給されるの
で、このとき、無効化アドレス一致通知信号40が
“1”となれば、アンド回路32から出力されるキャッ
シュ無効化抑止指示信号42が“1”となってアンド回
路33の負論理入力端子へ出力され、これによって、キ
ャッシュ無効化実施通知信号38が“0”となり、キャ
ッシュメモリ12のラインの無効化が実施されないよう
になっている。
【0043】一方、後述するアンド回路35から出力さ
れる保持バッファ無効通知信号46の“1”がフラグ回
路36に供給され、これによってフラグ回路36のフラ
グがリセットされている場合は、保持バッファ回路30
の保持アドレスが無効であることを示し、この際、保持
バッファ有効通知信号41が“0”となってアンド回路
32へ供給され、アンド回路32の出力キャッシュ無効
化抑止指示信号42が“0”となってアンド回路33の
負論理入力端子へ供給されるので、このとき、無効化実
施通知信号22が“1”となれば、キャッシュ無効化実
施通知信号38が“1”となり、キャッシュメモリ12
のラインの無効化が実施されるようになっている。ま
た、初期状態ではフラグはリセット状態にある。
【0044】第2の一致検出回路34は、無効化実施ア
ドレス通知信号39と、バスアクセス制御回路13から
出力されるプロセッサリードアドレス通知信号43とが
一致する場合に、第2の一致検出回路34の出力データ
であるアドレス一致信号44を“1”としてアンド回路
35へ出力するものである。
【0045】プロセッサリードアドレス通知信号43
は、プロセッサ11がリードするメモリ装置3のアドレ
スを示すものである。
【0046】アンド回路35は、アドレス一致信号44
と、バスアクセス制御回路13から出力されるプロセッ
サリードアクセス実施通知信号45との論理積をとり、
この結果を保持バッファ無効通知信号46としてフラグ
回路36へ出力するものである。
【0047】プロセッサリードアクセス実施通知信号4
5は、プロセッサ11がメモリ装置3にリードアクセス
を実行中であることを示すものである。すなわち、CP
U装置1がメモリ装置3に対してリードサイクルを行な
っている場合は、プロセッサリードアクセス実施通知信
号45が“1”となるようになっている。
【0048】次に、このような構成のキャッシュ無効化
制御回路18によるキャッシュ無効化制御時の動作を説
明する。
【0049】I/O装置2によるメモリ装置3へのライ
トアクセスが実行されると、バスサイクルモニタ回路1
5によってバス4上でライトアクセスが行なわれたこと
が検出され、この検出されたライトアクセスのアドレス
を示す無効化アドレス通知信号21と、キャッシュメモ
リ12の無効化の実施を指示する無効化実施通知信号2
2の“1”とが出力される。
【0050】ここで、既に保持バッファ回路30に保持
されているアドレスを示す無効化実施アドレス通知信号
39と、無効化アドレス通知信号21とが第1の一致検
出回路31で比較され、双方が一致する場合は第1の一
致検出回路31から出力される無効化アドレス一致通知
信号40が“1”となる。
【0051】このとき、フラグ回路36にフラグがセッ
トされているとすると、保持バッファ有効通知信号41
は“1”なので、アンド回路32から出力されるキャッ
シュ無効化抑止指示信号42が“1”となってアンド回
路33の負論理入力端子へ供給される。
【0052】これによって、アンド回路33に無効化実
施通知信号22の“1”が供給されても、アンド回路3
3から出力されるキャッシュ無効化実施通知信号38は
“0”となり、キャッシュメモリ12のラインの無効化
が実施されない状態となる。
【0053】つまり、先に説明した保持バッファ回路3
0に保持されていたアドレスに該当するキャッシュメモ
リ12のラインは既に無効化が行なわれたものなので、
その保持アドレスと一致するライトアクセスによるアド
レスが送られてきても、このアドレスに該当するキャッ
シュメモリ12のラインの無効化制御は行なわれないこ
とになる。
【0054】従って、従来のように、キャッシュメモリ
12の同一ラインに対応するI/O装置2によるメモリ
装置3のアクセスが連続して複数回発生しても、既に無
効化を行なった同一ラインに対しては無効化制御が行な
われることがなくなる。これによって、キャッシュメモ
リ12に対して重複する無駄な無効化アクセスが実行し
ている間、プロセッサ11によるキャッシュメモリ12
へのアクセスができなくなり、その分、プロセッサ11
の性能が低下するといったことがなくなる。言い換えれ
ば、プロセッサ11の性能が向上する。
【0055】ところで、後述するアクセスパターンが発
生した場合は、プロセッサ11がキャッシュメモリ12
から誤ったデータをリードしてしまうことがある。
【0056】例えば、I/O装置2によってメモリ装置
3のアドレスAにデータD1がライトされると、アドレ
スAに対応するデータ内容を保持しているキャッシュメ
モリ12のラインが無効化され、保持バッファ回路30
にアドレスAが保持される。次に、プロセッサ11がア
ドレスAに対してリードすると、キャッシュメモリ12
のリードミスによってメモリ装置3のアドレスAのデー
タD1を含む、キャッシュメモリ12のラインのデータ
部サイズに等しいブロックデータが新たにキャッシュメ
モリ12に登録される。
【0057】次に、I/O装置2によってメモリ装置3
のアドレスAにデータD2がライトされると、メモリ装
置3のアドレスAのデータはD2に書き換わるが、保持
バッファ回路30にアドレスAが保持されているため、
キャッシュメモリ12に登録されたアドレスAに該当す
るデータD1を含むキャッシュメモリ12のラインの無
効化は行なわれない。
【0058】このため、次にプロセッサ11がアドレス
Aに対するリードを行なった場合、メモリ装置3のアド
レスAのデータがD2に書き換わったにも係わらず、キ
ャッシュメモリ12のアドレスAのデータD1をリード
してしまう。つまり、誤ったデータD1をリードしてし
まうことになる。
【0059】しかし、この実施形態では、プロセッサ1
1によるメモリリード時には、バスアクセス制御回路1
3からキャッシュ無効化制御回路18へプロセッサリー
ドアドレス通知信号43及びプロセッサリードアクセス
実施通知信号45が通知されることによって、前述した
プロセッサ11がキャッシュメモリ12から誤ったデー
タをリードしてしまうケースを回避できるようになって
いる。
【0060】すなわち、プロセッサ11のリード時に、
プロセッサリードアドレス通知信号43によるリードア
ドレスが第2の一致検出回路34へ出力され、ここで無
効化実施アドレス通知信号39によるアドレスと比較さ
れることによって、リードアドレスが、キャッシュメモ
リ12の無効化されたアドレスとして保持バッファ回路
30に保持されているかが判断されることになる。
【0061】双方のアドレスが一致していればリードア
ドレスが保持されていることを示すアドレス一致信号4
4が“1”となり、このとき、バスアクセス制御回路1
3から出力される他のプロセッサリードアドレス通知信
号43も“1”なので、アンド回路35から出力される
保持バッファ無効通知信号46が“1”となる。
【0062】この信号46の“1”によってフラグ回路
36のフラグがリセットされ、フラグ回路36から出力
される保持バッファ有効通知信号41が“0”となりア
ンド回路32に供給されるので、無効化アドレス通知信
号21と無効化実施アドレス通知信号39とが一致して
も保持バッファ回路30の保持アドレスが無効状態とな
り、またアンド回路32から出力されるキャッシュ無効
化抑止指示信号42が“0”となり、アンド回路33の
負論理入力端子に供給される。これによって、キャッシ
ュメモリ12の無効化が実施可能な状態となる。
【0063】ここで、I/O装置2のライトアクセスが
発生すると、そのライトアクセスのアドレスに該当する
キャッシュメモリ12のラインが無効化されることにな
る。つまり、前述したようにキャッシュメモリ12のラ
インの無効化が実施されずプロセッサ11がキャッシュ
メモリ12から誤ったデータをリードしてしまうケース
を回避することができる。
【0064】上記実施形態によれば、既に無効化を行な
ったキャッシュメモリのラインの重複した無効化の実施
をなくすことができ、従来のような重複する無駄な同一
ラインへの無効化アクセスが実行されている間の、プロ
セッサによるキャッシュメモリへのアクセスを待機する
時間をなくすことができるので、その分、プロセッサの
性能を向上させることができる。
【0065】なお、上記実施形態においては、無効化ア
クセスを実行したアドレスを1個だけ保持して、重複す
る無駄な同一ラインへの無効化アクセスを防止するもの
を示したが、無効化アクセスを実行したアドレスを複数
保持して重複する無駄な同一ラインへの無効化アクセス
を複数ラインについて防止するようにしても良い。
【0066】例えば、保持バッファ回路30を複数例え
ばシフトレジスタ的に設けて無効化アドレス通知信号2
1が示す異なるアドレスを複数保持できるようにし、ま
た、複数の保持バッファ回路30数と同数の第1の一致
検出回路31及び第2の一致検出回路34を設け、図1
に示すように各々の保持バッファ回路30と第1及び第
2の一致検出回路31,34とを1組とする構成が、他
のアンド回路32,33,35及びフラグ回路36と組
み合わされて成り立つようにする。
【0067】そして、各第1の一致検出回路31におい
て、各々対応する保持バッファ回路30から出力される
無効化実施アドレス通知信号39と無効化アドレス通知
信号21との一致検出を行なうことによって、より多く
の既に無効化が実施されたアドレスに該当するキャッシ
ュメモリ12のラインに対して無駄な無効化制御が行な
われないようにする。つまり、その無駄な無効化制御が
行なわれないようにする効率を向上させることができ
る。
【0068】また、その際、各第2の一致検出回路34
において、各々対応する保持バッファ回路30から出力
される無効化実施アドレス通知信号39と、プロセッサ
リードアドレス通知信号43との一致検出を行なうこと
によって、前述したと同様にプロセッサ11のメモリリ
ード時の誤データリードを回避することができる。
【0069】上記実施形態においては、メモリ装置3を
I/O装置2がライトアクセスするときにキャッシュメ
モリ12の無効化を行なうものを示したが、他のCPU
装置がメモリ装置3をライトアクセスするときにキャッ
シュメモリ12の無効化を行なうようにしても良い。特
許請求の範囲における入出力制御装置の語は、この場合
の他のCPU装置を含むものである。
【0070】
【発明の効果】以上のように、本発明によれば、入出力
制御装置によるメモリ装置へのライトアクセス時に上記
キャッシュメモリの無効化を行なった際のアドレスを保
持する保持手段と、この保持手段に保持されたアドレス
と、入出力制御装置がメモリ装置にライトアクセスを実
行した際にアクセスされるアドレスとを比較し、一致す
る場合にキャッシュメモリに対する無効化の実施を不可
能状態とする制御を行なう第1の制御手段と、保持手段
に保持されたアドレスと、プロセッサがメモリ装置にリ
ードアクセスを実行した際にアクセスされるアドレスと
を比較し、一致する場合に保持手段に保持されたアドレ
スを無効状態とする制御を行なう第2の制御手段とを有
するので、既に無効化を行なったキャッシュメモリのラ
インの重複した無効化の実施をなくすことができ、従来
のような重複する無駄な同一ラインへの無効化アクセス
が実行されている間の、プロセッサによるキャッシュメ
モリへのアクセスを待機する時間をなくすことができ、
その分、プロセッサの性能を向上させることができる。
【図面の簡単な説明】
【図1】実施形態のキャッシュメモリ無効化装置を適用
したシステムを示すブロック図である。
【図2】従来のキャッシュメモリ無効化装置を適用した
システムを示すブロック図である。
【符号の説明】
30 保持バッファ回路(保持手段) 31 第1の一致検出回路(第1の制御手段) 32 アンド回路(第1の制御手段) 33 アンド回路(第1の制御手段) 34 第2の一致検出回路(第2の制御手段) 35 アンド回路(第2の制御手段) 36 フラグ回路(第1の及び第2の制御手段共通)
───────────────────────────────────────────────────── フロントページの続き (72)発明者 河邊 亮 東京都港区虎ノ門1丁目7番12号 沖電気 工業株式会社内

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 キャッシュメモリのデータの登録や無効
    化が行なわれる単位であるラインを無効化するキャッシ
    ュメモリ無効化装置において、 入出力制御装置によるメモリ装置へのライトアクセス時
    に上記キャッシュメモリの無効化を行なった際のアドレ
    スを保持する保持手段と、 上記保持手段に保持されたアドレスと、上記入出力制御
    装置が上記メモリ装置にライトアクセスを実行した際に
    アクセスされるアドレスとを比較し、一致する場合に上
    記キャッシュメモリに対する無効化の実施を不可能状態
    とする制御を行なう第1の制御手段と、 上記保持手段に保持されたアドレスと、プロセッサが上
    記メモリ装置にリードアクセスを実行した際にアクセス
    されるアドレスとを比較し、一致する場合に上記保持手
    段に保持されたアドレスを無効状態とする制御を行なう
    第2の制御手段とを具備したことを特徴とするキャッシ
    ュメモリ無効化装置。
  2. 【請求項2】 上記保持手段、上記第1の制御手段及び
    第2の制御手段を複数設け、上記入出力制御装置による
    上記メモリ装置へのライトアクセス時に上記キャッシュ
    メモリの無効化を行なった際の複数のアドレスについ
    て、重複した無効化を禁止するようにしたことを特徴と
    する請求項1に記載のキャッシュメモリ無効化装置。
JP8182971A 1996-07-12 1996-07-12 キャッシュメモリ無効化装置 Pending JPH1027132A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8182971A JPH1027132A (ja) 1996-07-12 1996-07-12 キャッシュメモリ無効化装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8182971A JPH1027132A (ja) 1996-07-12 1996-07-12 キャッシュメモリ無効化装置

Publications (1)

Publication Number Publication Date
JPH1027132A true JPH1027132A (ja) 1998-01-27

Family

ID=16127525

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8182971A Pending JPH1027132A (ja) 1996-07-12 1996-07-12 キャッシュメモリ無効化装置

Country Status (1)

Country Link
JP (1) JPH1027132A (ja)

Similar Documents

Publication Publication Date Title
KR100204741B1 (ko) 제1및 제2캐시 메모리 사용방법
JP3987577B2 (ja) システム管理モード情報を他の情報と共にキャッシュに入れる方法および装置
JPH0345407B2 (ja)
CA2127081A1 (en) Processor interface chip for dual-microprocessor processor system
JP3575572B2 (ja) データ転送方法及びシステム
JPH0337744A (ja) データ処理装置
JPH0997214A (ja) 補助プロセッサのためのアドレス変換を含む情報処理システム
JP2003108439A (ja) プロセッサ・システム
JP3192664B2 (ja) キャッシュメモリシステムおよびキャッシュメモリコントローラ
US4658356A (en) Control system for updating a change bit
US6049852A (en) Preserving cache consistency in a computer system having a plurality of memories with overlapping address ranges
JPH1027132A (ja) キャッシュメモリ無効化装置
JP3187446B2 (ja) キャッシュメモリ制御装置
JP3239935B2 (ja) 密結合マルチプロセッサシステムの制御方法、密結合マルチプロセッサシステム及びその記録媒体
JPH0784879A (ja) キャッシュメモリ装置
JPH03230238A (ja) キャッシュメモリ制御方式
JP2707958B2 (ja) キャッシュ一致処理制御装置
JPH0628258A (ja) マイクロプロセッサ
JPH02307123A (ja) 計算機
JPH0713865A (ja) キャッシュメモリ制御システム
JPS59172044A (ja) 命令制御方式
JPS617959A (ja) タグ記憶装置制御方式
JP2002024088A (ja) データ処理装置
JPH0628303A (ja) 通信処理装置
JPH056706B2 (ja)