JP3492544B2 - キャッシュメモリの更新キャンセルシステム及び方法 - Google Patents

キャッシュメモリの更新キャンセルシステム及び方法

Info

Publication number
JP3492544B2
JP3492544B2 JP10492499A JP10492499A JP3492544B2 JP 3492544 B2 JP3492544 B2 JP 3492544B2 JP 10492499 A JP10492499 A JP 10492499A JP 10492499 A JP10492499 A JP 10492499A JP 3492544 B2 JP3492544 B2 JP 3492544B2
Authority
JP
Japan
Prior art keywords
address
cache memory
data
write
update
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
Application number
JP10492499A
Other languages
English (en)
Other versions
JP2000298620A (ja
Inventor
秀樹 安田
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 Computertechno Ltd
Original Assignee
NEC Computertechno 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 Computertechno Ltd filed Critical NEC Computertechno Ltd
Priority to JP10492499A priority Critical patent/JP3492544B2/ja
Publication of JP2000298620A publication Critical patent/JP2000298620A/ja
Application granted granted Critical
Publication of JP3492544B2 publication Critical patent/JP3492544B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、キャッシュメモリ
の更新キャンセルシステム及び方法に関し、特に例外、
割り込み等の要因によりキャッシュメモリの更新をキャ
ンセルするための技術に関する。
【0002】
【従来の技術】従来より、CPU(Central Processing
Unit)とメインメモリとの間の動作速度の違いを緩衝
し、処理速度を向上させるため、キャッシュメモリを採
用する情報処理装置が知られている。このような情報処
理装置でデータの更新を行う場合には、キャッシュメモ
リに格納されているデータの更新は、更新すべきデータ
のアドレスがキャッシュメモリにあるかどうかの判定、
すなわちキャッシュヒットの判定の次のクロックタイミ
ングで行われていた。
【0003】ところで、このような情報処理装置におい
て、キャッシュメモリに格納されているデータを更新す
る際には、例えば、演算結果のエラーの発生、書き込む
べきデータの不正の検出等、キャッシュメモリにデータ
が書き込まれるのを抑止するための割り込み、例外の発
生により、キャッシュメモリに格納されているデータの
更新をキャンセルすることも考慮しなければならない。
【0004】
【発明が解決しようとする課題】しかしながら、キャッ
シュメモリの更新をキャンセルするためのキャンセル信
号を生成するための回路は、一般に、論理ゲートを何段
にも接続することで構成される。このため、各段での論
理ゲートのゲート遅延が蓄積されることで、最終的なキ
ャンセル信号が生成されるまでにかなりの時間を要して
しまうこととなっていた。
【0005】従って、キャッシュヒットを判定してから
実際にデータを書き込むまでの期間、すなわち1クロッ
クサイクルは、キャンセル信号の生成のために要する時
間に制約されることとなっていた。つまり、従来の情報
処理装置では、処理速度を向上させるためにキャッシュ
メモリを採用することによって、その動作周波数を大き
くすることができないという不合理を招いていた。
【0006】本発明は、キャッシュメモリを採用する情
報処理装置においてその動作周波数を大きくすることが
できるキャッシュメモリの更新キャンセルシステム及び
方法を提供することを目的とする。
【0007】
【課題を解決するための手段】上記目的を達成するた
め、本発明の第1の観点にかかるキャッシュメモリの更
新キャンセルシステムは、外部から供給された書き込み
データを第1のクロックサイクルにわたり保持するデー
タ保持手段と、外部から供給された書き込みアドレスを
前記第1のクロックサイクルにわたり保持する第1のア
ドレス保持手段と、アドレスと各アドレスのデータとを
対応付けて格納し、前記第1のクロックサイクル内にお
いて、前記第1のアドレス保持手段に保持されている書
き込みアドレスに対応付けて格納されているデータを
記データ保持手段に保持されている書き込みデータに更
新するキャッシュメモリと、前記第1のクロックサイク
ルにて前記第1のアドレス保持手段に保持されていた書
き込みアドレスを、前記第1のクロックサイクルに続く
第2のクロックサイクルにわたり保持する第2のアドレ
ス保持手段と、 前記第2のクロックサイクルの開始タイ
ミングまでに前記書き込みデータへの更新をキャンセル
する要因が発生したかどうかを判定するキャンセル判定
手段と、前記キャンセル判定手段がキャンセル要因の発
生を判定した場合、前記第2のクロックサイクル内にお
いて、前記第2のアドレス保持手段に保持されている書
き込みアドレスに対応付けて前記キャッシュメモリに格
納されているデータを無効化する更新キャンセル手段と
を備えることを特徴とする。
【0008】上記キャッシュメモリの更新キャンセルシ
ステムでは、キャッシュメモリに格納されているデータ
の更新要求があったときに、キャンセル判定手段による
判定結果が得られるのを待つことなくデータを更新し、
後にキャンセル要因の発生が判定されたときに、一旦更
新したデータを無効化すればよい。このため、キャッシ
ュメモリに格納されているデータを実際に更新するまで
の期間が、キャンセル判定手段が判定結果を得るまでの
時間に制約されず、システムの動作周波数を大きくする
ことが可能となる。
【0009】なお、更新キャンセル手段によってデータ
が無効化された場合には、例えば、無効化されたアドレ
スのデータを読み出す場合は、キャッシュメモリにでは
なくメインメモリにアクセスしなければならない。メイ
ンメモリにアクセスすると処理速度が低下することとな
るが、キャンセル要因が発生してキャッシュメモリに格
納されているデータが無効化される可能性はかなり低い
ので、通常、システムの動作周波数を大きくできること
による処理速度の向上の方がデータの無効化による処理
速度の低下を上回り、全体としての処理速度の向上とい
うメリットを得ることができる。
【0010】上記キャッシュメモリの更新キャンセルシ
ステムは、外部から供給された書き込みアドレスが前記
キャッシュメモリにアドレスとして格納されているかど
うかを判定するヒット判定手段と、前記ヒット判定手段
の判定結果を保持するヒット判定保持手段とをさらに備
えるものとしてもよい。この場合、前記更新キャンセル
手段は、前記ヒット判定保持手段に保持されている判定
結果が書き込みアドレスの格納を示すものであるとき
に、該書き込みアドレスに対応付けて格納されているデ
ータを無効化するものとすることができる。
【0011】この場合、実際にはキャッシュメモリに格
納されていないデータ、すなわちメインメモリにのみ格
納されているデータを更新する場合に、キャンセル要因
の発生によってキャッシュメモリに格納されているデー
タが無効化されてしまうことがなくなり、無意味なデー
タの無効化による処理速度の低下を防ぐことができる。
【0012】上記キャッシュメモリの更新キャンセルシ
ステムにおいて、前記キャッシュメモリは、アドレス毎
に対応するデータが有効であるか無効であるかを示す有
効性情報を含んだものとすることができる。この場合、
前記更新キャンセル手段は、前記アドレス保持手段に保
持された書き込みアドレスに対応する有効性情報を無効
に書き換えることで、前記キャッシュメモリに格納され
ているデータを無効化するものとすることができる。
【0013】上記キャッシュメモリの更新キャンセルシ
ステムにおいて、前記更新キャンセル手段は、前記アド
レス保持手段に保持された書き込みアドレスに対応する
アドレスをクリアすることで、前記キャッシュメモリに
格納されているデータを無効化するものとすることもで
きる。
【0014】なお、上記キャッシュメモリの更新キャン
セルシステムは、前記キャッシュメモリが、データの更
新があったときに、該データの更新をライトスルー方式
でメインメモリに反映するものに適用することを好適と
するものである。
【0015】また、上記キャッシュメモリの更新キャン
セルシステムにおいて、前記キャッシュメモリは、ダイ
レクト方式でマッピングされることを好適とする。
【0016】すなわち、ダイレクト方式でマッピングさ
れるキャッシュメモリでは、アドレスとキャッシュメモ
リ内での格納位置とが完全に対応することとなるので、
キャッシュヒットの判定に時間を要することがなく、キ
ャッシュヒットの判定時間によってシステムの動作周波
数が影響を受けることもない。
【0017】上記目的を達成するため、本発明の第2の
観点にかかるキャッシュメモリの更新キャンセル方法
は、アドレスと各アドレスのデータとを対応付けて格納
するキャッシュメモリにおいて、外部から供給された書
き込みアドレスに対応してなされたデータの更新をキャ
ンセルするものであって、前記外部から供給された書き
込みアドレスを第1のクロックサイクルにわたり保持す
第1の書き込みアドレス保持ステップと、前記第1の
書き込みアドレス保持ステップにて保持されていた書き
込みアドレスを、前記第1のクロックサイクルに続く第
2のクロックサイクルにわたり保持する第2の書き込み
アドレス保持ステップと、 前記第2のクロックサイクル
の開始タイミングまでに前記書き込みデータへの更新を
キャンセルする要因が発生したかどうかを判定するキャ
ンセル判定ステップと、前記キャンセル判定ステップで
キャンセル要因の発生を判定した場合、前記第2のクロ
ックサイクル内において、前記第2の書き込みアドレス
保持ステップで保持した書き込みアドレスに対応付けて
前記キャッシュメモリに格納されているデータを無効化
する更新キャンセルステップとを含むことを特徴とす
る。
【0018】
【発明の実施の形態】以下、添付図面を参照して、本発
明の実施の形態について説明する。
【0019】図1は、この実施の形態にかかるキャッシ
ュメモリの更新キャンセルシステムを示すブロック図で
ある。図示するように、このシステムは、アドレスアレ
イ1とデータアレイ2とからなるキャッシュメモリを含
む。このキャッシュメモリは、データの書き込み方式と
してライトスルー方式を、マッピング方式としてダイレ
クト方式を採用するものである。
【0020】図2は、このキャッシュメモリの構成を示
すものである。図示するように、アドレスアレイ1は、
アドレス1aとデータの有効性(「1」のときが有効)
を示すValidビット1bとを含んでいる。キャッシ
ュメモリでは、アドレス1aと、Validビット1b
と、データアレイ2の各データとが対応付けて格納され
る。
【0021】また、アドレスアレイ1は、ライトVal
id信号130がオン状態(状態「1」)で、クリア指
示信号500がオフ状態(状態「0」)であるときに、
アドレス1aのいずれかとライトアドレス520が一致
するかどうかを示す一致信号110を生成して出力す
る。また、アドレスアレイ1は、クリア指示信号500
がオン状態(状態「1」)であるときに、ライトアドレ
ス520に対応して格納されているValidビット1
bを無効(状態「0」)とする。
【0022】データアレイ2は、オン状態(状態
「1」)のライトイネーブル信号531が供給されてい
るときに、ライトアドレス220に対応して格納されて
いるデータを、ライトデータ200に更新する。
【0023】本発明の実施の形態にかかるキャッシュメ
モリの更新キャンセルシステムは、また、キャッシュメ
モリに格納されているデータを更新し、さらに更新され
たデータをキャンセルするための機構として、図1に示
すように、ヒット判定回路3と、キャンセル判定回路4
と、クリア判定回路5と、フリップフロップ(F/F)
10〜13、21〜24と、セレクタ30と、ANDゲ
ート31とを備えている。
【0024】ヒット判定回路3は、アドレスアレイ2か
らの一致信号110がアドレスの一致を示すときに、対
応するValidビット1bをさらに調べて、CPUか
ら供給されたライトアドレス120(実際上は、セレク
タ30を介しているので、ライトアドレス520)に対
応するデータがデータアレイ2に格納されているかどう
か、すなわちキャッシュヒットの有無を判定し、その判
定結果をヒット信号111としてF/F11に出力す
る。なお、ヒット信号111の状態は、キャッシュヒッ
ト時には「1」と、ミスヒット時には「0」となる。
【0025】キャンセル判定回路4は、演算結果のエラ
ー、書き込みデータの不正等の要因別の信号線を介して
CPU(図示せず)から供給されるキャンセル要因信号
140に、1つでもキャンセル要因の発生を示すものが
あるかどうかを判定し、キャンセル要因の発生を判定し
たときに、オン状態(状態「1」)のキャンセル指示信
号240をF/F24に出力する。
【0026】F/F10〜13、21〜24は、クロッ
ク信号の立ち上がりエッジをトリガとして動作するDフ
リップフロップによって構成されている。実際には、F
/F10は、データアレイ2に書き込まれるライトデー
タのビット数と同数のDフリップフロップから構成され
ている。F/F12、22は、アドレスアレイ1に書き
込まれるアドレス1aのビット数と同数のDフリップフ
ロップから構成される。
【0027】F/F10は、CPUから供給されたライ
トデータ100を1クロックタイミング遅延させて、ラ
イトデータ200としてデータアレイ2に出力する。
【0028】F/F11は、ヒット判定回路3から出力
されたヒット信号111を1クロックタイミング遅延さ
せて、ヒット信号210としてF/F21とANDゲー
ト31とに出力する。F/F21は、ヒット信号210
を1クロックタイミング遅延させて、ヒット信号310
としてクリア判定回路5に出力する。
【0029】F/F12は、CPUから供給されたライ
トアドレス120を1クロックタイミング遅延させて、
ライトアドレス220としてF/F22に出力する。F
/F22は、ライトアドレス220を1クロックタイミ
ング遅延させて、ライトアドレス320としてセレクタ
30に出力する。
【0030】F/F13は、CPUから供給されたライ
トValid信号130を1クロックタイミング遅延さ
せて、ライトValid信号230としてF/F23に
出力する。F/F23は、ライトValid信号230
を1クロックタイミング遅延させて、ライトValid
信号330としてクリア判定回路5に出力する。
【0031】F/F24は、キャンセル判定回路4から
出力されたキャンセル指示信号240を1クロックタイ
ミング遅延させて、キャンセル指示信号340としてク
リア判定回路5に出力する。
【0032】クリア判定回路5は、F/F21から出力
されたヒット信号310、F/F23から出力されたラ
イトValid信号330、及びF/F24から出力さ
れたキャンセル指示信号340に基づいて、データアレ
イ2へのライトデータ200の書き込み、すなわちキャ
ッシュメモリの更新をクリアすべきかどうかを指示する
ためのクリア指示信号500を生成する。クリア指示信
号500は、アドレスアレイ1とセレクタ30とに供給
される。
【0033】セレクタ30は、クリア指示信号500が
オフ状態(状態「0」)であるときはCPUから供給さ
れたライトアドレス120を、クリア指示信号500が
オン状態(状態「1」)であるときはF/F22から出
力されたライトアドレス320を、それぞれ選択し、ラ
イトアドレス520としてアドレスアレイ1に出力す
る。
【0034】ANDゲート31は、F/F11から出力
されたヒット信号210とF/F13から出力されたラ
イトValid信号230とを論理和演算し、その演算
結果をライトイネーブル信号531としてデータアレイ
531に出力する。
【0035】なお、図1では、アドレスアレイ1及びデ
ータアレイ2からなるキャッシュメモリと、このキャッ
シュメモリに格納されているデータの更新/更新キャン
セルのための機構のみを示しているが、このキャッシュ
メモリには、格納されているデータを読み出すための機
構(ヒット判定回路3は、書き込みの場合と共通)も接
続されている。また、キャッシュメモリにミスヒットし
た場合にCPUからメインメモリにアクセスするための
機構や、キャッシュリプレースを行うための機構等も接
続されている。
【0036】以下、上記の実施の形態にかかるキャッシ
ュメモリの更新キャンセルシステムの動作について、図
3のタイミングチャートを参照して説明する。ここで
は、キャッシュメモリ自体は有効であり、CPUから供
給されるライトValid信号130は、常に状態
「1」であり、F/F13、23からそれぞれ出力され
るライトValid信号230、330も常に状態
「1」であるものとして説明する。
【0037】タイミングT0でCPUからライトアドレ
ス120とライトデータ100とがこのシステムに供給
されたとする。このとき、クリア判定回路5からのクリ
ア指示信号500はオフ状態であり、セレクタ30は、
CPUから供給されたライトアドレス120をライトア
ドレス520としてアドレスアレイ1に出力する。アド
レスアレイ1では、このライトアドレス520を格納し
ているアドレスと比較し、さらにヒット判定回路3にお
いてキャッシュヒットの判定が行われる。ここで、キャ
ッシュヒットしたとすると、ヒット判定回路3から状態
「1」のヒット信号111が出力される。
【0038】次に、タイミングT1でクロック信号が立
ち上がると、F/F10〜12は、それぞれライトデー
タ100、状態「1」のヒット信号111、ライトアド
レス120を取り込む。ここで、F/F13から出力さ
れているライトValid信号230の状態が「1」で
あり、F/F11から出力されているヒット信号210
の状態が「1」であるため、オン状態のライトイネーブ
ル信号531がANDゲート31からデータアレイ2に
供給される。
【0039】次に、タイミングT1’でクロック信号が
立ち下がると、オン状態のライトイネーブル信号531
が入力されているデータアレイ2は、F/F12から出
力されているライトアドレス220(タイミングT0で
CPUから供給されたライトアドレス120と同じ)の
位置に、F/F10から出力されているライトデータ2
00(タイミングT0でCPUから供給されたライトデ
ータ100と同じ)を書き込み、格納しているデータを
更新する。
【0040】また、タイミングT0からタイミングT2
までの間に、データアレイ2への書ライトデータ200
(100)の書き込みをキャンセルすべきことを示すキ
ャンセル要因信号140がキャンセル判定回路4に供給
されたとする。キャンセル判定回路4は、キャンセル要
因信号140に基づいてキャンセル要因の発生を判定
し、タイミングT1’からタイミングT2までの間で状
態「1」のキャンセル指示信号240を出力したとす
る。
【0041】次に、タイミングT2でクロック信号が立
ち上がると、F/F21、22、24は、それぞれ状態
「1」のヒット信号210、ライトアドレス220(タ
イミングT0でCPUから供給されたライトアドレス1
20と同じ)、状態「1」のキャンセル指示信号240
を取り込む。このとき、クリア判定回路5は、ヒット信
号310、ライトValid信号330及びキャンセル
指示信号340の状態がいずれも「1」であるので、状
態「1」のクリア指示信号510を出力する。これによ
り、セレクタ30は、F/F22から出力されているラ
イトアドレス320(タイミングT0でCPUから供給
されたライトアドレス120と同じ)を選択してアドレ
スアレイ1に出力する。
【0042】次に、タイミングT2’でクロック信号が
立ち下がると、アドレスアレイ1は、クリア判定回路5
から供給されているクリア指示信号500の状態が
「1」であるため、ライトアドレス320(タイミング
T0でCPUから供給されたライトアドレス120と同
じ)と対応するValidビット1bを状態「0」とし
て、このアドレスに対応してタイミングT1’において
書き込まれたデータアレイ2のデータを無効にする。
【0043】上記の動作によってデータが無効化された
アドレスから次にデータを読み出す場合、CPUから供
給されたリードアドレスに対応するアドレスアレイ1中
のValidビット1bは、状態「0」となっている。
このため、ヒット判定回路3は、リードアドレスと一致
するアドレス1aがあっても、ミスヒットであると判定
することになり、CPUは、当該リードアドレスに対応
するデータをメインメモリから読み出すこととなる。な
お、このとき、キャッシュリプレースを行うものとして
もよい。
【0044】以上説明したように、この実施の形態にか
かるキャッシュメモリの更新キャンセルシステムでは、
キャッシュメモリのヒット判定を行ったクロックタイミ
ングの次のクロックタイミングで、キャッシュメモリに
格納されているデータを一旦更新し、キャンセル要因が
発生した場合にはさらに次のクロックタイミングで当該
アドレスのValidビット1bを「0」として、キャ
ッシュメモリに格納されているデータを無効化してい
る。このため、キャンセル判定回路4が出力するキャン
セル指示信号240は、キャッシュメモリのヒット判定
のクロックタイミングの次の次のクロックタイミングま
でに確定していればよい。
【0045】すなわち、キャンセル判定回路4からのキ
ャンセル指示信号240が確定するまでの期間は、2ク
ロックサイクルに制約を与えるものの1クロックサイク
ルに制約を与えることがない。これにより、キャンセル
判定回路4の動作時間がクロックサイクルに与える影響
が少なくなり、クロック周期を短く、すなわちクロック
周波数を大きくすることが可能となる。
【0046】なお、キャッシュメモリへのデータの更新
がキャンセルされ、Validビット1bが「0」とさ
れた場合には、そのアドレスのデータを読み書きするた
めに、CPUはメインメモリにアクセスしなければなら
なくなり、キャッシュメモリにアクセスしなければなら
ない場合よりも処理時間がかかることとなる。しかしな
がら、キャンセル要因が発生する確率は実際上は非常に
低く、更新キャンセルによってCPUがキャッシュメモ
リにではなく、メインメモリにアクセスしなければなら
ないという確率は非常に低い。このため、クロック周波
数の向上による処理速度の向上のメリットが、更新キャ
ンセルによる処理速度の低下のデメリットを上回ること
となり、全体として処理速度向上のメリットを得ること
が可能となる。
【0047】また、この実施の形態にかかるキャッシュ
メモリの更新キャンセルシステムでは、キャッシュメモ
リのマッピング方式としてダイレクト方式を採用してい
る。ダイレクト方式ではアドレスとキャッシュメモリ内
での格納位置とが完全に対応するので、ヒット判定回路
3によるキャッシュヒットの判定結果を得るまでの期間
が短くて済み、この期間がクロックサイクルに実質的に
影響を及ぼすことがない。
【0048】また、この実施の形態にかかるキャッシュ
メモリの更新キャンセルシステムでは、アドレスアレイ
1及びデータアレイ2がクロック信号の立ち下がりエッ
ジをトリガとして動作し、F/F10〜13、20〜2
4がクロック信号の立ち上がりエッジをトリガとして動
作している。このため、同相のクロック信号で、システ
ム全体を効率よく動作させることができる。
【0049】本発明は、上記の実施の形態に限られず、
種々の変形、応用が可能である。以下、本発明に適用可
能な上記の実施の形態の変形態様について、説明する。
【0050】上記の実施の形態では、フリップフロップ
10〜13、21〜24は、クロック信号の立ち上がり
エッジをトリガとして、各データの取り込みを行ってい
た。一方、アドレスアレイ1及びデータアレイ2は、ク
ロック信号の立ち下がりエッジをトリガとして、それぞ
れValidビット1bの更新、ライトデータの書き込
みを行っていた。これに対して、フリップフロップ10
〜13、21〜24がクロック信号の立ち下がりエッジ
をトリガとして、アドレスアレイ1及びデータアレイ2
がクロック信号の立ち上がりエッジをトリガとして、こ
れらの動作を行うものとしてもよい。
【0051】上記の実施の形態では、アドレスアレイ1
に含まれるValidビット1bを「0」にすること
で、キャッシュメモリの更新(データアレイ2へのデー
タの書き込み)をキャンセルしていた。しかしながら、
アドレスアレイ1がこのようなValidビットを含ま
ず、アドレス自体をクリアしてしまうことによって、キ
ャッシュメモリの更新をキャンセルしてもよい。
【0052】上記の実施の形態では、キャッシュメモリ
のマッピング方式としてダイレクト方式を採用し、キャ
ッシュヒットの判定、すなわちセレクタ30を介して入
力されたライトアドレス530がアドレスアレイ1に含
まれるかどうかの判定を高速に行えるようにしていた。
これに対して、キャッシュヒットの判定結果を得るまで
の時間が、クロック信号のサイクルと比較して動作上問
題を生じさせないくらいに短いのであれば、キャッシュ
メモリのマッピング方式としてセットアソシエイティブ
方式或いはフルアソシエイティブ方式を採用することも
できる。
【0053】
【発明の効果】以上説明したように、本発明によれば、
キャンセル要因の判定が得られるまで、キャッシュメモ
リに格納されているデータの更新を待つ必要がないの
で、システムの動作周波数を大きくすることが可能とな
る。
【図面の簡単な説明】
【図1】本発明の実施の形態にかかるキャッシュメモリ
の更新キャンセルシステムを示すブロック図である。
【図2】図1のアドレスアレイ及びデータアレイからな
るキャッシュメモリの構成を示す図である。
【図3】本発明の実施の形態の動作を示すタイミングチ
ャートである。
【符号の説明】
1 アドレスアレイ 2 データアレイ 3 ヒット判定回路 4 キャンセル判定回路 5 クリア判定回路 10〜13、21〜24 フリップフロップ(F/F) 30 セレクタ 31 ANDゲート
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G06F 12/08

Claims (7)

    (57)【特許請求の範囲】
  1. 【請求項1】外部から供給された書き込みデータを第1
    のクロックサイクルにわたり保持するデータ保持手段
    と、 外部から供給された書き込みアドレスを前記第1のクロ
    ックサイクルにわたり保持する第1のアドレス保持手段
    と、 アドレスと各アドレスのデータとを対応付けて格納し、
    前記第1のクロックサイクル内において、前記第1のア
    ドレス保持手段に保持されている書き込みアドレスに対
    応付けて格納されているデータを前記データ保持手段に
    保持されている書き込みデータに更新するキャッシュメ
    モリと、前記第1のクロックサイクルにて前記第1のアドレス保
    持手段に保持されていた書き込みアドレスを、前記第1
    のクロックサイクルに続く第2のクロックサイクルにわ
    たり保持する第2のアドレス保持手段と、 前記第2のクロックサイクルの開始タイミングまでに
    記書き込みデータへの更新をキャンセルする要因が発生
    したかどうかを判定するキャンセル判定手段と、 前記キャンセル判定手段がキャンセル要因の発生を判定
    した場合、前記第2のクロックサイクル内において、前
    記第2のアドレス保持手段に保持されている書き込みア
    ドレスに対応付けて前記キャッシュメモリに格納されて
    いるデータを無効化する更新キャンセル手段とを備える
    ことを特徴とするキャッシュメモリの更新キャンセルシ
    ステム。
  2. 【請求項2】外部から供給された書き込みアドレスが前
    記キャッシュメモリにアドレスとして格納されているか
    どうかを判定するヒット判定手段と、 前記ヒット判定手段の判定結果を保持するヒット判定保
    持手段とをさらに備え、 前記更新キャンセル手段は、前記ヒット判定保持手段に
    保持されている判定結果が書き込みアドレスの格納を示
    すものであるときに、該書き込みアドレスに対応付けて
    格納されているデータを無効化することを特徴とする請
    求項1に記載のキャッシュメモリの更新キャンセルシス
    テム。
  3. 【請求項3】前記キャッシュメモリは、アドレス毎に対
    応するデータが有効であるか無効であるかを示す有効性
    情報を含んでおり、 前記更新キャンセル手段は、前記アドレス保持手段に保
    持された書き込みアドレスに対応する有効性情報を無効
    に書き換えることで、前記キャッシュメモリに格納され
    ているデータを無効化することを特徴とする請求項1ま
    たは2に記載のキャッシュメモリの更新キャンセルシス
    テム。
  4. 【請求項4】前記更新キャンセル手段は、前記アドレス
    保持手段に保持された書き込みアドレスに対応するアド
    レスをクリアすることで、前記キャッシュメモリに格納
    されているデータを無効化することを特徴とする請求項
    1または2に記載のキャッシュメモリの更新キャンセル
    システム。
  5. 【請求項5】前記キャッシュメモリは、データの更新が
    あったときに、該データの更新をライトスルー方式でメ
    インメモリに判定するものであることを特徴とする請求
    項1乃至4のいずれか1項に記載のキャッシュメモリの
    更新キャンセルシステム。
  6. 【請求項6】前記キャッシュメモリは、ダイレクト方式
    でマッピングされることを特徴とする請求項1乃至5の
    いずれか1項に記載のキャッシュメモリの更新キャンセ
    ルシステム。
  7. 【請求項7】アドレスと各アドレスのデータとを対応付
    けて格納するキャッシュメモリにおいて、外部から供給
    された書き込みアドレスに対応してなされたデータの更
    新をキャンセルするキャッシュメモリの更新キャンセル
    方法であって、 前記外部から供給された書き込みアドレスを第1のクロ
    ックサイクルにわたり保持する第1の書き込みアドレス
    保持ステップと、前記第1の書き込みアドレス保持ステップにて保持され
    ていた書き込みアドレスを、前記第1のクロックサイク
    ルに続く第2のクロックサイクルにわたり保持する第2
    の書き込みアドレス保持ステップと、 前記第2のクロックサイクルの開始タイミングまでに
    記書き込みデータへの更新をキャンセルする要因が発生
    したかどうかを判定するキャンセル判定ステップと、 前記キャンセル判定ステップでキャンセル要因の発生を
    判定した場合、前記第2のクロックサイクル内におい
    て、前記第2の書き込みアドレス保持ステップで保持し
    た書き込みアドレスに対応付けて前記キャッシュメモリ
    に格納されているデータを無効化する更新キャンセルス
    テップとを含むことを特徴とするキャッシュメモリの更
    新キャンセル方法。
JP10492499A 1999-04-13 1999-04-13 キャッシュメモリの更新キャンセルシステム及び方法 Expired - Fee Related JP3492544B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP10492499A JP3492544B2 (ja) 1999-04-13 1999-04-13 キャッシュメモリの更新キャンセルシステム及び方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP10492499A JP3492544B2 (ja) 1999-04-13 1999-04-13 キャッシュメモリの更新キャンセルシステム及び方法

Publications (2)

Publication Number Publication Date
JP2000298620A JP2000298620A (ja) 2000-10-24
JP3492544B2 true JP3492544B2 (ja) 2004-02-03

Family

ID=14393662

Family Applications (1)

Application Number Title Priority Date Filing Date
JP10492499A Expired - Fee Related JP3492544B2 (ja) 1999-04-13 1999-04-13 キャッシュメモリの更新キャンセルシステム及び方法

Country Status (1)

Country Link
JP (1) JP3492544B2 (ja)

Also Published As

Publication number Publication date
JP2000298620A (ja) 2000-10-24

Similar Documents

Publication Publication Date Title
KR100885277B1 (ko) 캐시에서의 라인들을 추론적으로 무효화하는 방법 및 시스템
US4626988A (en) Instruction fetch look-aside buffer with loop mode control
US5493666A (en) Memory architecture using page mode writes and single level write buffering
US6418515B1 (en) Cache flush unit
US8117395B1 (en) Multi-stage pipeline for cache access
JPH1074166A (ja) 多重レベル・ダイナミック・セット予測方法および装置
US6651162B1 (en) Recursively accessing a branch target address cache using a target address previously accessed from the branch target address cache
JP2012128842A (ja) キャッシュ・メモリに対する直接アクセスのための装置および方法
JP3407808B2 (ja) コンピュータシステム
US6502218B1 (en) Deferred correction of a single bit storage error in a cache tag array
JP2004030527A (ja) 記憶制御装置、および記憶制御方法
US6000017A (en) Hybrid tag architecture for a cache memory
JPH09146836A (ja) キャッシュ索引の障害訂正装置
US6976130B2 (en) Cache controller unit architecture and applied method
JP2000259498A (ja) マルチスレッド・プロセッサの命令キャッシュ
JPH03189845A (ja) 階層メモリ・システムおよびキヤツシユ・メモリ・サブシステム
JP3492544B2 (ja) キャッシュメモリの更新キャンセルシステム及び方法
JP3729832B2 (ja) キャッシュメモリ装置
JPH07234819A (ja) キャッシュメモリ
JP3761890B2 (ja) キャッシュメモリ装置
JP3757768B2 (ja) ベクトルメモリアクセス時スカラメモリアクセス命令発行制御方式
KR20040047398A (ko) 캐쉬 메모리를 이용한 데이터 억세스 방법
JP3260466B2 (ja) メモリ更新方式
JP2845762B2 (ja) 階層バッファメモリ装置
JP3287239B2 (ja) 階層キャッシュメモリとそのステート遷移制御方法

Legal Events

Date Code Title Description
FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071114

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081114

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081114

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091114

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091114

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101114

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111114

Year of fee payment: 8

LAPS Cancellation because of no payment of annual fees