JPH08190508A - キャッシュ・メモリ制御回路 - Google Patents
キャッシュ・メモリ制御回路Info
- Publication number
- JPH08190508A JPH08190508A JP7001823A JP182395A JPH08190508A JP H08190508 A JPH08190508 A JP H08190508A JP 7001823 A JP7001823 A JP 7001823A JP 182395 A JP182395 A JP 182395A JP H08190508 A JPH08190508 A JP H08190508A
- Authority
- JP
- Japan
- Prior art keywords
- signal
- memory
- word
- valid bit
- snoop
- 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
Links
Landscapes
- Static Random-Access Memory (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】
【目的】キャッシュ・メモリの制御回路に関し、スヌー
プ制御においてインバリデート処理を1サイクルで行う
ようにし、システム性能を高く維持する。 【構成】タグメモリと、他のプロセサのメモリ・アクセ
ス動作を検知しスヌープ処理を要求するスヌープ手段
と、スヌープ処理を行う間スヌープ・モード信号を出力
する手段と、主記憶アクセスの対象がキャッシュに存在
することを示すヒット信号を出力するタグ比較手段と、
タグメモリのワード線の信号を所定の時間遅延させるワ
ード信号遅延回路とバリッド・ビットのメモリ・セルの
端子を直接制御し`0' を書き込む直接書込み回路とより
なるバリッド・ビット無効化回路を、タグメモリの各ワ
ードのバリッド・ビットのメモリ・セルに対応して有
し、ワード信号遅延回路の出力と、スヌープ・モード信
号と、ヒット信号とのANDがとれたとき、メモリ・セ
ルに`0' を書き込むバリッド・ビット無効化手段とを有
する。
プ制御においてインバリデート処理を1サイクルで行う
ようにし、システム性能を高く維持する。 【構成】タグメモリと、他のプロセサのメモリ・アクセ
ス動作を検知しスヌープ処理を要求するスヌープ手段
と、スヌープ処理を行う間スヌープ・モード信号を出力
する手段と、主記憶アクセスの対象がキャッシュに存在
することを示すヒット信号を出力するタグ比較手段と、
タグメモリのワード線の信号を所定の時間遅延させるワ
ード信号遅延回路とバリッド・ビットのメモリ・セルの
端子を直接制御し`0' を書き込む直接書込み回路とより
なるバリッド・ビット無効化回路を、タグメモリの各ワ
ードのバリッド・ビットのメモリ・セルに対応して有
し、ワード信号遅延回路の出力と、スヌープ・モード信
号と、ヒット信号とのANDがとれたとき、メモリ・セ
ルに`0' を書き込むバリッド・ビット無効化手段とを有
する。
Description
【0001】
【産業上の利用分野】本発明はキャッシュ・メモリの制
御回路に関する。情報処理システムにおいて、特にマル
チプロセサシステムにおいては、プロセサに付随するキ
ャッシュ・メモリと主記憶装置との間のデータの一貫性
(コヒーレンシ)を保証する必要がある。そのための方
式の1つにスヌープ方式がある。これは、例えば他のプ
ロセサ(入出力プロセサ、DMAコントローラ等も含
む)が主記憶へ書込みを行ったとき、それを検知して
(スヌープ:覗き見る)、その対象アドレスのデータが
自分のキャッシュにあるかどうかを調べ、あれば無効に
する(インバリデート)方式である。
御回路に関する。情報処理システムにおいて、特にマル
チプロセサシステムにおいては、プロセサに付随するキ
ャッシュ・メモリと主記憶装置との間のデータの一貫性
(コヒーレンシ)を保証する必要がある。そのための方
式の1つにスヌープ方式がある。これは、例えば他のプ
ロセサ(入出力プロセサ、DMAコントローラ等も含
む)が主記憶へ書込みを行ったとき、それを検知して
(スヌープ:覗き見る)、その対象アドレスのデータが
自分のキャッシュにあるかどうかを調べ、あれば無効に
する(インバリデート)方式である。
【0002】
【従来の技術】キャッシュ・メモリは、データメモリ
と、タグメモリを中心とする制御回路とからなる。図7
は従来のキャッシュ・メモリのスヌープ動作時の制御を
説明する図である。図8はそのときのタイムチャートで
ある。
と、タグメモリを中心とする制御回路とからなる。図7
は従来のキャッシュ・メモリのスヌープ動作時の制御を
説明する図である。図8はそのときのタイムチャートで
ある。
【0003】図7によってスヌープ動作時の制御を説明
する。通常の構成では、データメモリ(図示していな
い)のブロックに対応して、タグメモリ4に1ワードが
割当てられる。キャッシュに主記憶のデータ・ブロック
の写しをとると、アドレスの中位部(図7のINDEX
部に相当)でタグメモリ4のワード(データ・メモリの
ブロックに対応)を指定し、アドレスの上位部(図5の
TAG部に相当)をタグ41としてタグメモリ4に保持す
る。同時にバリッド・ビット42(図7のVビット)を`
1' にセットし、写しが有効なものであることを示す。
アドレスの下位部(図7のOFFSET部に相当)はブロック
内アドレスを指定するものであり、また、タグメモリ4
のワードにはバリッド・ビット42以外にも制御ビットが
存在するが、本発明に直接関係しないので説明を省略す
る。なお、以上のようなキャッシュの通常の動作を行う
ためのアドレス・レジスタは後述するスヌープ処理用の
アドレス・レジスタ2とは別に存在する。
する。通常の構成では、データメモリ(図示していな
い)のブロックに対応して、タグメモリ4に1ワードが
割当てられる。キャッシュに主記憶のデータ・ブロック
の写しをとると、アドレスの中位部(図7のINDEX
部に相当)でタグメモリ4のワード(データ・メモリの
ブロックに対応)を指定し、アドレスの上位部(図5の
TAG部に相当)をタグ41としてタグメモリ4に保持す
る。同時にバリッド・ビット42(図7のVビット)を`
1' にセットし、写しが有効なものであることを示す。
アドレスの下位部(図7のOFFSET部に相当)はブロック
内アドレスを指定するものであり、また、タグメモリ4
のワードにはバリッド・ビット42以外にも制御ビットが
存在するが、本発明に直接関係しないので説明を省略す
る。なお、以上のようなキャッシュの通常の動作を行う
ためのアドレス・レジスタは後述するスヌープ処理用の
アドレス・レジスタ2とは別に存在する。
【0004】他プロセサの主記憶へのアクセスを検知す
ると、制御部1はアドレス・レジスタ2にそのときのア
クセス・アドレス(以下スヌープ・アドレスと記す)を
保持し、対応する写しがあれば無効化する処理を要求す
る(以下スヌープ処理要求と記す)。レジスタ2のIN
DEX部22をデコーダ3でデコードしてタグメモリ4の
ワードを指定して内容(タグ41とバリッド・ビット42)
を読み出し、レジスタ2のTAG部21とタグ41とを比較
器6で比較して、一致しかつバリッド・ビット42が`1'
であれば、他プロセサが書込みアクセスした主記憶のブ
ロックの写しがキャッシュ内(データメモリ内)に存在
する。この場合、その写しは主記憶と一致しないものに
なったので、再度タグメモリ4をアクセスしてバリッド
・ビット42に`0' を書き込み、無効であることを示す
(インバリデートする)。
ると、制御部1はアドレス・レジスタ2にそのときのア
クセス・アドレス(以下スヌープ・アドレスと記す)を
保持し、対応する写しがあれば無効化する処理を要求す
る(以下スヌープ処理要求と記す)。レジスタ2のIN
DEX部22をデコーダ3でデコードしてタグメモリ4の
ワードを指定して内容(タグ41とバリッド・ビット42)
を読み出し、レジスタ2のTAG部21とタグ41とを比較
器6で比較して、一致しかつバリッド・ビット42が`1'
であれば、他プロセサが書込みアクセスした主記憶のブ
ロックの写しがキャッシュ内(データメモリ内)に存在
する。この場合、その写しは主記憶と一致しないものに
なったので、再度タグメモリ4をアクセスしてバリッド
・ビット42に`0' を書き込み、無効であることを示す
(インバリデートする)。
【0005】以下に図8に従ってスヌープ動作のシーケ
ンスを説明する。スヌープ処理要求があると、他の要求
との優先度判定を行って、より高い要求がなければスヌ
ープ・リード・サイクルの開始を起動する(T0)。な
お、通常のキャッシュ・リードはスヌープ処理より優先
度が低い。スヌープ・アドレスはアドレス・レジスタに
セットする。タグメモリのタグ・アドレス(INDEX
部:図8では16進表現 X'123` )で指定したワード
(図8では16進表現 X'ABCDE` )を読み出し、アドレ
ス・レジスタのTAG部(図8では16進表現 X'ABCDE
` )と比較する。一致(かつバリッド・ビットは`1' )
すると、他プロセサが書込みアクセスした主記憶のブロ
ックの写しがキャッシュ内に存在する(ヒット)。この
場合、スヌープ・ライト・サイクルを要求する(T
1)。ここで再度優先度判定を行い、より高い要求が他
になければスヌープ・ライト・サイクルを開始する(T
2)。バリッド・ビットを`0' にし、同じワードにライ
ト・エネーブル信号により書き込むことにより終了する
(T3)。
ンスを説明する。スヌープ処理要求があると、他の要求
との優先度判定を行って、より高い要求がなければスヌ
ープ・リード・サイクルの開始を起動する(T0)。な
お、通常のキャッシュ・リードはスヌープ処理より優先
度が低い。スヌープ・アドレスはアドレス・レジスタに
セットする。タグメモリのタグ・アドレス(INDEX
部:図8では16進表現 X'123` )で指定したワード
(図8では16進表現 X'ABCDE` )を読み出し、アドレ
ス・レジスタのTAG部(図8では16進表現 X'ABCDE
` )と比較する。一致(かつバリッド・ビットは`1' )
すると、他プロセサが書込みアクセスした主記憶のブロ
ックの写しがキャッシュ内に存在する(ヒット)。この
場合、スヌープ・ライト・サイクルを要求する(T
1)。ここで再度優先度判定を行い、より高い要求が他
になければスヌープ・ライト・サイクルを開始する(T
2)。バリッド・ビットを`0' にし、同じワードにライ
ト・エネーブル信号により書き込むことにより終了する
(T3)。
【0006】この間、他のスヌープ処理要求があると、
T3まで待たせる。従ってスヌープ処理要求が連続して
いるとシステム性能に影響する。
T3まで待たせる。従ってスヌープ処理要求が連続して
いるとシステム性能に影響する。
【0007】
【発明が解決しようとする課題】本発明は、タグメモリ
回路を工夫することにより、スヌープ処理に関するイン
バリデート処理を1クロック・サイクルで行うように
し、システム性能を高く維持することを目的としてい
る。
回路を工夫することにより、スヌープ処理に関するイン
バリデート処理を1クロック・サイクルで行うように
し、システム性能を高く維持することを目的としてい
る。
【0008】
【課題を解決するための手段】主記憶の写しがキャッシ
ュ・メモリ内に存在するかどうかを、主記憶アドレスの
第2の部分(通常、中位部分)で指定したワードに、主
記憶アドレスの第1の部分(通常、高位部分)とその有
効性を示すバリッド・ビットとを保持して示すタグメモ
リと、主記憶をアクセスする他の装置のメモリ・アクセ
ス動作を検知し、その主記憶アドレスをレジスタに保持
し、スヌープ処理を要求するスヌープ手段と、スヌープ
処理を行う間スヌープ・モード信号を出力する手段と、
前記のレジスタに保持された主記憶アドレスの第1の部
分と、前記のレジスタの主記憶アドレスの第2の部分で
指定して読み出したタグメモリのワードのバリッド・ビ
ットが有効を示すものとを比較し、一致するときヒット
信号を出力するタグ比較手段と、アドレス・デコーダの
出力であるワード線の信号を所定の時間遅延させるワー
ド信号遅延回路と、バリッド・ビットのメモリ・セルの
端子を直接制御して「無効」を表すデータを書き込む直
接書込み回路とよりなるバリッド・ビット無効化回路と
を、タグメモリの各ワードのバリッド・ビットのメモリ
・セルに対応して有し、ワード信号遅延回路の出力と、
スヌープ・モード信号と、ヒット信号とのANDがとれ
たとき、直接書込み回路によってバリッド・ビットのメ
モリ・セルに「無効」を書き込むバリッド・ビット無効
化手段とを有するように、キャッシュ・メモリ制御回路
を構成する。
ュ・メモリ内に存在するかどうかを、主記憶アドレスの
第2の部分(通常、中位部分)で指定したワードに、主
記憶アドレスの第1の部分(通常、高位部分)とその有
効性を示すバリッド・ビットとを保持して示すタグメモ
リと、主記憶をアクセスする他の装置のメモリ・アクセ
ス動作を検知し、その主記憶アドレスをレジスタに保持
し、スヌープ処理を要求するスヌープ手段と、スヌープ
処理を行う間スヌープ・モード信号を出力する手段と、
前記のレジスタに保持された主記憶アドレスの第1の部
分と、前記のレジスタの主記憶アドレスの第2の部分で
指定して読み出したタグメモリのワードのバリッド・ビ
ットが有効を示すものとを比較し、一致するときヒット
信号を出力するタグ比較手段と、アドレス・デコーダの
出力であるワード線の信号を所定の時間遅延させるワー
ド信号遅延回路と、バリッド・ビットのメモリ・セルの
端子を直接制御して「無効」を表すデータを書き込む直
接書込み回路とよりなるバリッド・ビット無効化回路と
を、タグメモリの各ワードのバリッド・ビットのメモリ
・セルに対応して有し、ワード信号遅延回路の出力と、
スヌープ・モード信号と、ヒット信号とのANDがとれ
たとき、直接書込み回路によってバリッド・ビットのメ
モリ・セルに「無効」を書き込むバリッド・ビット無効
化手段とを有するように、キャッシュ・メモリ制御回路
を構成する。
【0009】ワード信号遅延回路は、ラッチ回路により
ワード信号遅延を行ってもよい。また、タグメモリはパ
リティチェックビットを有し、読み出したタグメモリの
ワードのパリティチェックを行ってエラー信号を出力す
るパリティチェック回路を有する場合は、前記のヒット
信号の代わりに、ヒット信号とエラー信号とのOR信号
を使用するように構成してもよい。
ワード信号遅延を行ってもよい。また、タグメモリはパ
リティチェックビットを有し、読み出したタグメモリの
ワードのパリティチェックを行ってエラー信号を出力す
るパリティチェック回路を有する場合は、前記のヒット
信号の代わりに、ヒット信号とエラー信号とのOR信号
を使用するように構成してもよい。
【0010】
【作用】キャッシュ・メモリ制御回路は、主記憶をアク
セスする他の装置(他のプロセサ等)のメモリ・アクセ
ス動作を検知すると、その主記憶アドレスをレジスタに
保持する。タグ比較手段は、このアドレスを含むブロッ
クがキャッシュに写されていることを示している可能性
のある、タグメモリのワードを読み出して確認する。す
なわち、写しが存在するときタグ比較手段はヒット信号
を出力する。
セスする他の装置(他のプロセサ等)のメモリ・アクセ
ス動作を検知すると、その主記憶アドレスをレジスタに
保持する。タグ比較手段は、このアドレスを含むブロッ
クがキャッシュに写されていることを示している可能性
のある、タグメモリのワードを読み出して確認する。す
なわち、写しが存在するときタグ比較手段はヒット信号
を出力する。
【0011】スヌープ処理を行う間、他のキャッシュ動
作例えば通常のキャッシュ読み出し動作と区別してスヌ
ープ・モード信号を示す。バリッド・ビット無効化手段
は、ワード信号遅延回路の出力と、スヌープ・モード信
号と、ヒット信号とのANDがとれたとき、直接書込み
回路によってバリッド・ビットのメモリ・セルに「無
効」を書き込む。ANDがとれないとき、すなわちヒッ
ト信号がないときは書込みを行わない。ワード信号遅延
回路は、ワード信号を使ってタグメモリのワードを指定
すると同時に、メモリ・セルに書き込む都合のよいタイ
ミングを生成するためのものである。なお、ラッチ回路
によりワード信号遅延を行うとクロックの後半のタイミ
ングが使えるので構成が容易である。
作例えば通常のキャッシュ読み出し動作と区別してスヌ
ープ・モード信号を示す。バリッド・ビット無効化手段
は、ワード信号遅延回路の出力と、スヌープ・モード信
号と、ヒット信号とのANDがとれたとき、直接書込み
回路によってバリッド・ビットのメモリ・セルに「無
効」を書き込む。ANDがとれないとき、すなわちヒッ
ト信号がないときは書込みを行わない。ワード信号遅延
回路は、ワード信号を使ってタグメモリのワードを指定
すると同時に、メモリ・セルに書き込む都合のよいタイ
ミングを生成するためのものである。なお、ラッチ回路
によりワード信号遅延を行うとクロックの後半のタイミ
ングが使えるので構成が容易である。
【0012】このように構成することにより、短い時間
(1クロック・サイクル)でタグメモリ内のバリッド・
ビットを読み出し、リセットすることができる。すなわ
ち、無効な写しを削除しコヒーレンシを保つことを1ク
ロック・サイクルで処理することができる。
(1クロック・サイクル)でタグメモリ内のバリッド・
ビットを読み出し、リセットすることができる。すなわ
ち、無効な写しを削除しコヒーレンシを保つことを1ク
ロック・サイクルで処理することができる。
【0013】また、タグメモリのパリティチェックを行
い、その結果エラーが存在する場合には、バリッド・ビ
ットを無効化しておくことにより、キャッシュメモリ動
作の信頼性が向上する。
い、その結果エラーが存在する場合には、バリッド・ビ
ットを無効化しておくことにより、キャッシュメモリ動
作の信頼性が向上する。
【0014】
【実施例】図1は本発明の実施例の構成図であり、タグ
メモリを中心にした回路を示す。以下、図1および必要
に応じて図7を参照して本発明の実施例を説明する。
メモリを中心にした回路を示す。以下、図1および必要
に応じて図7を参照して本発明の実施例を説明する。
【0015】キャッシュ制御部の中心をなすタグメモリ
は、各メモリ・セル50にワード線とビット線とがスイッ
チ・トランジスタ51,52 を介して接続されている。ワー
ド線WLはアドレス・デコーダ3によってその内の1本
がドライブされる。ビット線はBLとXBLとで示す平
衡ラインよりなり、ライトアンプ53とセンスアンプ54と
に接続されている。書込み時には、ライトアンプ出力
は、`1' を書き込むときはBLが‘H’レベル、XBL
が‘L’レベルになり、`0' を書き込むときその逆にな
り、デコーダ出力によりドライブされたワード線WLに
よりスイッチ・トランジスタ51,52 がオンになったメモ
リ・セル50に書き込まれる。読み出し時には、アドレス
・デコーダ出力によりドライブされたワード線WLによ
りスイッチ・トランジスタ51,52 がオンになったメモリ
・セル50の内容がビット線のBLとXBLに現れ、セン
スアンプ54により出力される。以上は通常のMOSメモ
リの動作である。従来技術ではバリッド・ビットも全く
同じ構成であったが、本実施例では、各バリッド・ビッ
トに対応してバリッド・ビット無効化回路7a〜7nを設
け、直接メモリ・セル50の端子NZ,NXを制御できる
ようにしてある。このバリッド・ビット無効化回路7a〜
7nがバリッド・ビット無効化手段である。
は、各メモリ・セル50にワード線とビット線とがスイッ
チ・トランジスタ51,52 を介して接続されている。ワー
ド線WLはアドレス・デコーダ3によってその内の1本
がドライブされる。ビット線はBLとXBLとで示す平
衡ラインよりなり、ライトアンプ53とセンスアンプ54と
に接続されている。書込み時には、ライトアンプ出力
は、`1' を書き込むときはBLが‘H’レベル、XBL
が‘L’レベルになり、`0' を書き込むときその逆にな
り、デコーダ出力によりドライブされたワード線WLに
よりスイッチ・トランジスタ51,52 がオンになったメモ
リ・セル50に書き込まれる。読み出し時には、アドレス
・デコーダ出力によりドライブされたワード線WLによ
りスイッチ・トランジスタ51,52 がオンになったメモリ
・セル50の内容がビット線のBLとXBLに現れ、セン
スアンプ54により出力される。以上は通常のMOSメモ
リの動作である。従来技術ではバリッド・ビットも全く
同じ構成であったが、本実施例では、各バリッド・ビッ
トに対応してバリッド・ビット無効化回路7a〜7nを設
け、直接メモリ・セル50の端子NZ,NXを制御できる
ようにしてある。このバリッド・ビット無効化回路7a〜
7nがバリッド・ビット無効化手段である。
【0016】図2は図1の要部の詳細回路であり、
(1)はメモリ・セル50の例、(2)はセンスアンプ54
の例、(3)はバリッド・ビット無効化回路7a〜7nの構
成例を示す。
(1)はメモリ・セル50の例、(2)はセンスアンプ54
の例、(3)はバリッド・ビット無効化回路7a〜7nの構
成例を示す。
【0017】バリッド・ビット無効化回路7a〜7nは、ワ
ード線の信号WLを遅延させた信号DWLを得るワード
信号遅延回路73と、メモリ・セル50の端子NZ,NXを
直接制御し、ライトアンプ53を介さないで`0' を書き込
む直接書込み回路71,72 とよりなる。図3はバリッド・
ビット無効化回路7a〜7nの構成の別の例を示す。これは
ワード線の信号WLを遅延させるのにラッチ回路を用
い、`0' を書き込む直接書込み回路のMOSトランジス
タの一部をAND回路に置き換えたものであり、本質的
な違いはない。また、直接書込み回路71,72 は両方設け
る必要は必ずしもなく、時間的(タイミング的)に余裕
があれば片方だけでもよい。
ード線の信号WLを遅延させた信号DWLを得るワード
信号遅延回路73と、メモリ・セル50の端子NZ,NXを
直接制御し、ライトアンプ53を介さないで`0' を書き込
む直接書込み回路71,72 とよりなる。図3はバリッド・
ビット無効化回路7a〜7nの構成の別の例を示す。これは
ワード線の信号WLを遅延させるのにラッチ回路を用
い、`0' を書き込む直接書込み回路のMOSトランジス
タの一部をAND回路に置き換えたものであり、本質的
な違いはない。また、直接書込み回路71,72 は両方設け
る必要は必ずしもなく、時間的(タイミング的)に余裕
があれば片方だけでもよい。
【0018】図4は、実施例のスヌープ制御のタイムチ
ャートであり、以下、この図に基づいて動作を説明す
る。T0において、優先順位決定が行われ、スヌープ処
理を行うように決定し、スヌープ・モード・レジスタ
(1ビット)をセットする。これによりスヌープ・モー
ド信号SMが‘H’レベルになる。スヌープ・アドレス
(16進表現X'ABCDE123')をレジスタ2に保持し、その
内のINDEX部(16進表現X'123') でタグメモリ4
をアドレスする。読み出した内容はレジスタ2のTAG
部と比較し、一致するとヒット信号SHを出力する。内
容はワード信号WLが‘H’レベルである間出力され
る。通常ワード線は読み出し終了後‘L’レベルにな
り、ヒット信号SHは読み出した信号を用いて生成する
ため遅延する。このためワード信号DLを遅延させた遅
延ワード信号DWLを生成してタイミングを合わせる。
すなわち、バリッド・ビット無効化回路7a〜7nのワード
信号遅延回路73の出力DWLと、スヌープ・モード信号
SMと、ヒット信号SHとのANDがとれたとき直接書
込み回路71,72 によってバリッド・ビットを無効化する
(`0' を書き込む)。
ャートであり、以下、この図に基づいて動作を説明す
る。T0において、優先順位決定が行われ、スヌープ処
理を行うように決定し、スヌープ・モード・レジスタ
(1ビット)をセットする。これによりスヌープ・モー
ド信号SMが‘H’レベルになる。スヌープ・アドレス
(16進表現X'ABCDE123')をレジスタ2に保持し、その
内のINDEX部(16進表現X'123') でタグメモリ4
をアドレスする。読み出した内容はレジスタ2のTAG
部と比較し、一致するとヒット信号SHを出力する。内
容はワード信号WLが‘H’レベルである間出力され
る。通常ワード線は読み出し終了後‘L’レベルにな
り、ヒット信号SHは読み出した信号を用いて生成する
ため遅延する。このためワード信号DLを遅延させた遅
延ワード信号DWLを生成してタイミングを合わせる。
すなわち、バリッド・ビット無効化回路7a〜7nのワード
信号遅延回路73の出力DWLと、スヌープ・モード信号
SMと、ヒット信号SHとのANDがとれたとき直接書
込み回路71,72 によってバリッド・ビットを無効化する
(`0' を書き込む)。
【0019】図4に示すように、以上の動作は1クロッ
クサイクル内で処理されるため、連続したスヌープ処理
は次のT1サイクルで受け付けることができる。すなわ
ちクロック・サイクルごとにスヌープ処理を行うことが
できる。
クサイクル内で処理されるため、連続したスヌープ処理
は次のT1サイクルで受け付けることができる。すなわ
ちクロック・サイクルごとにスヌープ処理を行うことが
できる。
【0020】図5は本発明の第2の実施例を示す。この
実施例はタグメモリにチェックビットを設け、パリティ
チェック回路8によってチェックを行う構成である。セ
ンスアンプを介して読み出されたメモリセルの内容は、
タグ比較器(比較回路)6に入力されると同時にパリテ
ィチェック回路8にも入力され、チェックが行われる。
パリティチェック回路8はエラーを検出するとエラー信
号PEを出力する。エラー信号PEは、バリッド・ビッ
ト無効化回路7a〜7nに入力される。バリッド・ビット無
効化回路7a〜7n内でヒット信号SHとORにされる。図
6にその詳細回路例を示す。すなわち、パリティエラー
が検出された場合には、ヒットしなくてもそのワードを
無効化する。これにより、信頼性を高くすることができ
る。
実施例はタグメモリにチェックビットを設け、パリティ
チェック回路8によってチェックを行う構成である。セ
ンスアンプを介して読み出されたメモリセルの内容は、
タグ比較器(比較回路)6に入力されると同時にパリテ
ィチェック回路8にも入力され、チェックが行われる。
パリティチェック回路8はエラーを検出するとエラー信
号PEを出力する。エラー信号PEは、バリッド・ビッ
ト無効化回路7a〜7nに入力される。バリッド・ビット無
効化回路7a〜7n内でヒット信号SHとORにされる。図
6にその詳細回路例を示す。すなわち、パリティエラー
が検出された場合には、ヒットしなくてもそのワードを
無効化する。これにより、信頼性を高くすることができ
る。
【0021】
【発明の効果】以上説明したように、本発明によれば、
必要があればスヌープ処理を1クロック・サイクルごと
に連続して行うことができるので、マルチプロセサシス
テムの性能を高く維持することができる。
必要があればスヌープ処理を1クロック・サイクルごと
に連続して行うことができるので、マルチプロセサシス
テムの性能を高く維持することができる。
【図1】 実施例の構成図
【図2】 図1の要部の詳細回路図
【図3】 バリッド・ビットの無効化回路の構成例(そ
の2)
の2)
【図4】 実施例のスヌープ制御のタイムチャート
【図5】 第2の実施例の構成図
【図6】 図5の要部の詳細回路図
【図7】 従来のスヌープ動作時の制御を説明する図
【図8】 従来のスヌープ制御のタイムチャート
1 制御部 2 アドレス・レジスタ 21 TAG部 22 INDEX部 23 OFF
SET部 3 デコーダ 4 タグメモリ 41 タグ 42 バリッド・ビット 50 メモリ・セル 51,52 スイッチ・トランジスタ 53 ライトアンプ 54 センスアンプ 6 タグ比較器(比較回路) 7 バリッド・ビット無効化手段 7a〜7n バリッドビット無効化回路 71,72 無効化回路 73 ワード信号遅延回路 8 パリティチェック回路
SET部 3 デコーダ 4 タグメモリ 41 タグ 42 バリッド・ビット 50 メモリ・セル 51,52 スイッチ・トランジスタ 53 ライトアンプ 54 センスアンプ 6 タグ比較器(比較回路) 7 バリッド・ビット無効化手段 7a〜7n バリッドビット無効化回路 71,72 無効化回路 73 ワード信号遅延回路 8 パリティチェック回路
Claims (3)
- 【請求項1】 キャッシュ・メモリ制御回路であって、 主記憶の写しがキャッシュ・メモリ内に存在するかどう
かを、主記憶アドレスの第2の部分で指定したワード
に、主記憶アドレスの第1の部分とその有効性を示すバ
リッド・ビットとを保持して示すタグメモリと、 主記憶をアクセスする他の装置のメモリ・アクセス動作
を検知し、その主記憶アドレスをレジスタに保持し、ス
ヌープ処理を要求するスヌープ手段と、 スヌープ処理を行う間スヌープ・モード信号を出力する
手段と、 前記のレジスタに保持された主記憶アドレスの第1の部
分と、前記のレジスタの主記憶アドレスの第2の部分で
指定して読み出したタグメモリのワードのバリッド・ビ
ットが有効を示すものとを比較し、一致するときヒット
信号を出力するタグ比較手段と、 アドレス・デコーダの出力であるワード線の信号を所定
の時間遅延させるワード信号遅延回路と、バリッド・ビ
ットのメモリ・セルの端子を直接制御して「無効」を表
すデータを書き込む直接書込み回路とよりなるバリッド
・ビット無効化回路とを、タグメモリの各ワードのバリ
ッド・ビットのメモリ・セルに対応して有し、ワード信
号遅延回路の出力と、スヌープ・モード信号と、ヒット
信号とのANDがとれたとき、直接書込み回路によって
バリッド・ビットのメモリ・セルに「無効」を書き込む
バリッド・ビット無効化手段とを有するキャッシュ・メ
モリ制御回路。 - 【請求項2】 ワード信号遅延回路は、ラッチ回路によ
りワード信号遅延を行うことを特徴とする請求項1に記
載のキャッシュ・メモリ制御回路。 - 【請求項3】 タグメモリはパリティチェックビットを
有し、読み出したタグメモリのワードのパリティチェッ
クを行ってエラー信号を出力するパリティチェック回路
を有し、前記のヒット信号の代わりに、ヒット信号とエ
ラー信号とのOR信号を使用することを特徴とする請求
項1または請求項2に記載のキャッシュ・メモリ制御回
路。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP7001823A JPH08190508A (ja) | 1995-01-10 | 1995-01-10 | キャッシュ・メモリ制御回路 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP7001823A JPH08190508A (ja) | 1995-01-10 | 1995-01-10 | キャッシュ・メモリ制御回路 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH08190508A true JPH08190508A (ja) | 1996-07-23 |
Family
ID=11512291
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP7001823A Withdrawn JPH08190508A (ja) | 1995-01-10 | 1995-01-10 | キャッシュ・メモリ制御回路 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH08190508A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2013250963A (ja) * | 2012-05-02 | 2013-12-12 | Semiconductor Energy Lab Co Ltd | 記憶装置 |
-
1995
- 1995-01-10 JP JP7001823A patent/JPH08190508A/ja not_active Withdrawn
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2013250963A (ja) * | 2012-05-02 | 2013-12-12 | Semiconductor Energy Lab Co Ltd | 記憶装置 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5493666A (en) | Memory architecture using page mode writes and single level write buffering | |
| US5802576A (en) | Speculative cache snoop during DMA line update | |
| CA1323446C (en) | Write-read/write-pass memory subsystem cycle | |
| JP3732518B2 (ja) | スペキュラティブなシステムメモリ読取りを行う方法および装置 | |
| US5890216A (en) | Apparatus and method for decreasing the access time to non-cacheable address space in a computer system | |
| JPH08278922A (ja) | 変更スヌープ・サイクル・コマンドを使用したキャッシュ及びキャッシュ・テスト方法 | |
| JP3202943B2 (ja) | 処理装置及びルックアサイド・キャッシュをスヌープする改善された装置及び方法 | |
| JPH08190508A (ja) | キャッシュ・メモリ制御回路 | |
| US5960456A (en) | Method and apparatus for providing a readable and writable cache tag memory | |
| JP4037806B2 (ja) | キャッシュメモリ装置 | |
| JPH02110646A (ja) | メモリの先行読出し装置 | |
| US7519778B2 (en) | System and method for cache coherence | |
| US6385703B1 (en) | Speculative request pointer advance for fast back-to-back reads | |
| JP3081635B2 (ja) | キャッシュメモリの無効化処理装置および無効化制御方法 | |
| JP3219422B2 (ja) | キャッシュメモリ制御方式 | |
| JP3136681B2 (ja) | データ処理装置 | |
| JP2000259495A (ja) | キャッシュメモリ制御方法及びマルチプロセッサシステム | |
| JP3729832B2 (ja) | キャッシュメモリ装置 | |
| JP2952884B2 (ja) | キャッシュコントローラ | |
| JPH0644261B2 (ja) | マルチプロセッサシステムにおけるキャッシュ制御方式 | |
| JPH03147153A (ja) | キャッシュメモリ装置 | |
| KR0140952B1 (ko) | 다중 프로세서 시스템의 단일 캐시 공유 장치 및 그 장치를 이용한 데이타 기록/판독 방법 | |
| JP3437224B2 (ja) | 遅延無効化方式 | |
| JPH0528042A (ja) | キヤツシユメモリ制御方式 | |
| JPH0821000B2 (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: 20020402 |