JPH06222994A - キャッシュメモリシステム - Google Patents
キャッシュメモリシステムInfo
- Publication number
- JPH06222994A JPH06222994A JP5317730A JP31773093A JPH06222994A JP H06222994 A JPH06222994 A JP H06222994A JP 5317730 A JP5317730 A JP 5317730A JP 31773093 A JP31773093 A JP 31773093A JP H06222994 A JPH06222994 A JP H06222994A
- Authority
- JP
- Japan
- Prior art keywords
- data
- signal
- cache
- request
- block
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0877—Cache access modes
- G06F12/0879—Burst mode
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/02—Addressing or allocation; Relocation
- G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
- G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
- G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
- G06F12/0815—Cache consistency protocols
- G06F12/0831—Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】
【目的】 マルチ処理システムにおいて複数のキャッシ
ュメモリが一緒に動作できるようにする回路およびその
方法を提供する。 【構成】 キャッシュ制御回路は、マルチ処理システム
で主メモリ(1)へのアクセス数を低減する。この回路
で、1つの中央処理装置(CPU)(2,5)に関連す
るキャッシュメモリ(3,6)は別のCPU(2,5)
からのメモリリクエストを認識してそれに応答でき、回
路はバーストモード動作のサポートのための特殊な回路
を含む。あるキャッシュメモリのデータは、主メモリに
アクセスする必要なく別のキャッシュに転送され得る。
マルチ処理システムではリクエストされたデータのキャ
ッシュ間での直接転送によりリクエストされたデータを
迅速に与えることができ、メモリバスのトラフィックを
低減する。スヌーピングキャッシュの高性能化によりこ
のトランザクションの持続時間はさらに低減できる。
ュメモリが一緒に動作できるようにする回路およびその
方法を提供する。 【構成】 キャッシュ制御回路は、マルチ処理システム
で主メモリ(1)へのアクセス数を低減する。この回路
で、1つの中央処理装置(CPU)(2,5)に関連す
るキャッシュメモリ(3,6)は別のCPU(2,5)
からのメモリリクエストを認識してそれに応答でき、回
路はバーストモード動作のサポートのための特殊な回路
を含む。あるキャッシュメモリのデータは、主メモリに
アクセスする必要なく別のキャッシュに転送され得る。
マルチ処理システムではリクエストされたデータのキャ
ッシュ間での直接転送によりリクエストされたデータを
迅速に与えることができ、メモリバスのトラフィックを
低減する。スヌーピングキャッシュの高性能化によりこ
のトランザクションの持続時間はさらに低減できる。
Description
【0001】
【発明の背景】この発明は、キャッシュメモリを使用す
るコンピュータシステムに関し、特に、各々のプロセッ
サがそれ自身のキャッシュを有するマルチ処理システム
に関する。
るコンピュータシステムに関し、特に、各々のプロセッ
サがそれ自身のキャッシュを有するマルチ処理システム
に関する。
【0002】
【関連技術の議論】コンピュータシステムは、理想的に
はその一時記憶の要求のすべてに対して超高速メモリを
使用する。そうすれば、中央処理装置(CPU)は低速
メモリ装置を待つ必要なくその設計された速度で動作で
きるであろう。しかしながら、よりコストが低くかつ消
費電力がより少なくかつ所与のスペースでの記憶容量が
超高速メモリよりも多いため、低速メモリがしばしば使
用される。
はその一時記憶の要求のすべてに対して超高速メモリを
使用する。そうすれば、中央処理装置(CPU)は低速
メモリ装置を待つ必要なくその設計された速度で動作で
きるであろう。しかしながら、よりコストが低くかつ消
費電力がより少なくかつ所与のスペースでの記憶容量が
超高速メモリよりも多いため、低速メモリがしばしば使
用される。
【0003】ほとんどのコンピュータアプリケーション
プログラムの特徴は、同じまたは隣接するデータを繰返
し処理する傾向があることである。キャッシュメモリシ
ステムは、キャッシュメモリと呼ばれるわずかな超高速
メモリに最近アクセスされたデータを記憶することによ
ってこの特徴を利用する。低速主メモリから読出される
データは高速キャッシュメモリに記憶され、そのためプ
ログラムが続けて同じデータを使用しなければならない
場合それはキャッシュメモリで利用できる。したがっ
て、キャッシュメモリシステムはコンピュータシステム
におけるメモリアクセスの見かけ速度を増加する。
プログラムの特徴は、同じまたは隣接するデータを繰返
し処理する傾向があることである。キャッシュメモリシ
ステムは、キャッシュメモリと呼ばれるわずかな超高速
メモリに最近アクセスされたデータを記憶することによ
ってこの特徴を利用する。低速主メモリから読出される
データは高速キャッシュメモリに記憶され、そのためプ
ログラムが続けて同じデータを使用しなければならない
場合それはキャッシュメモリで利用できる。したがっ
て、キャッシュメモリシステムはコンピュータシステム
におけるメモリアクセスの見かけ速度を増加する。
【0004】キャッシュメモリシステムは、そこに関連
するデータがキャッシュで利用できる、主メモリのアド
レスの情報を常に記録していなければならない。データ
がキャッシュで利用できるとき、データは主メモリへの
アクセスなしにCPUに直接与えられる。これはキャッ
シュ「ヒット」と呼ばれる。
するデータがキャッシュで利用できる、主メモリのアド
レスの情報を常に記録していなければならない。データ
がキャッシュで利用できるとき、データは主メモリへの
アクセスなしにCPUに直接与えられる。これはキャッ
シュ「ヒット」と呼ばれる。
【0005】マルチ処理システムでは、すべてのCPU
が共通の主メモリを共有してもよく、さらに、各々のC
PUはそれ自身のキャッシュメモリを有してもよい。後
者の構成では、あるCPUによってリクエストされるデ
ータが別のCPUのキャッシュにある可能性がある。こ
のことを利用する、すなわち別のCPUからのメモリリ
クエストを認識し、その後適切なデータをキャッシュ間
で直接転送するためには、特別な回路が必要である。
が共通の主メモリを共有してもよく、さらに、各々のC
PUはそれ自身のキャッシュメモリを有してもよい。後
者の構成では、あるCPUによってリクエストされるデ
ータが別のCPUのキャッシュにある可能性がある。こ
のことを利用する、すなわち別のCPUからのメモリリ
クエストを認識し、その後適切なデータをキャッシュ間
で直接転送するためには、特別な回路が必要である。
【0006】CPUが「バーストモード」動作を使用す
ると、特別な問題が生じ得る。バーストモード動作は、
連続的なメモリ位置にあるデータで行なわれる。バース
トモードでは、CPUに個々のメモリ位置の各々をアド
レス指定するという新しい命令を実行させるのではな
く、CPUが開始メモリアドレス、行なわれるべき動作
および動作を行なうべきメモリブロックの長さを特定す
る1つの命令を実行させる。これは、バーストモード動
作に関する開始メモリアドレスが、あるキャッシュで開
始し異なるキャッシュで完了するとき、またはリクエス
トされたデータが特定のキャッシュに全くないとき、マ
ルチキャッシュマルチ処理システムに特に問題を引起こ
し得る。さらに、バーストモード動作では、タイミング
の要求が厳密であるので、これによって特殊なキャッシ
ュ回路の使用が左右されてしまう。
ると、特別な問題が生じ得る。バーストモード動作は、
連続的なメモリ位置にあるデータで行なわれる。バース
トモードでは、CPUに個々のメモリ位置の各々をアド
レス指定するという新しい命令を実行させるのではな
く、CPUが開始メモリアドレス、行なわれるべき動作
および動作を行なうべきメモリブロックの長さを特定す
る1つの命令を実行させる。これは、バーストモード動
作に関する開始メモリアドレスが、あるキャッシュで開
始し異なるキャッシュで完了するとき、またはリクエス
トされたデータが特定のキャッシュに全くないとき、マ
ルチキャッシュマルチ処理システムに特に問題を引起こ
し得る。さらに、バーストモード動作では、タイミング
の要求が厳密であるので、これによって特殊なキャッシ
ュ回路の使用が左右されてしまう。
【0007】
【発明の概要】この発明は、マルチ処理システムにおけ
るマルチキャッシュメモリが一緒に動作できるようにす
る方法およびこの方法を実現する回路を含む。バースト
モード動作を行なうための付加的な回路がさらに開示さ
れる。
るマルチキャッシュメモリが一緒に動作できるようにす
る方法およびこの方法を実現する回路を含む。バースト
モード動作を行なうための付加的な回路がさらに開示さ
れる。
【0008】マルチ処理の環境において、あるCPUに
接続されるキャッシュが別のCPUによってリクエスト
されるデータを含むことがある。この発明は、あるCP
Uに接続されるキャッシュが別のCPUによるメモリリ
クエストを認識し、それがリクエストされたデータを含
むかどうかを判断し、その後、要求されたデータを適切
なキャッシュに転送することによってメモリリクエスト
に応答できるようにする方法を開示する。この方法を実
現するための回路も開示される。
接続されるキャッシュが別のCPUによってリクエスト
されるデータを含むことがある。この発明は、あるCP
Uに接続されるキャッシュが別のCPUによるメモリリ
クエストを認識し、それがリクエストされたデータを含
むかどうかを判断し、その後、要求されたデータを適切
なキャッシュに転送することによってメモリリクエスト
に応答できるようにする方法を開示する。この方法を実
現するための回路も開示される。
【0009】バーストモード動作の間のタイミングの問
題は、動作によって特定されたメモリアドレスを自動的
に進みかつこれらのアドレスがキャッシュによってマッ
プされた領域に対応するかどうかを判断する、キャッシ
ュの回路によって回避される。もしリクエストされたデ
ータがキャッシュにあれば、それはリクエストを出して
いるCPUで使用するために適切なキャッシュに転送さ
れる。バーストモードアドレスがキャッシュのアドレス
範囲外に移動しているとき、またはバーストモード動作
が完了しているとき、キャッシュの回路はその制御を放
棄する。
題は、動作によって特定されたメモリアドレスを自動的
に進みかつこれらのアドレスがキャッシュによってマッ
プされた領域に対応するかどうかを判断する、キャッシ
ュの回路によって回避される。もしリクエストされたデ
ータがキャッシュにあれば、それはリクエストを出して
いるCPUで使用するために適切なキャッシュに転送さ
れる。バーストモードアドレスがキャッシュのアドレス
範囲外に移動しているとき、またはバーストモード動作
が完了しているとき、キャッシュの回路はその制御を放
棄する。
【0010】主メモリからキャッシュに転送されその後
変更されるデータは、変更識別子によって識別される。
変更識別子によって、確実にキャッシュの中の更新され
た情報を容易に位置決めしかつ主メモリにライトバック
できる。データがキャッシュ間で転送されると、変更識
別子は検査され、最も新しい情報を示すように処理され
る。
変更されるデータは、変更識別子によって識別される。
変更識別子によって、確実にキャッシュの中の更新され
た情報を容易に位置決めしかつ主メモリにライトバック
できる。データがキャッシュ間で転送されると、変更識
別子は検査され、最も新しい情報を示すように処理され
る。
【0011】
【好ましい実施例の詳細な説明】図1は、共用主メモリ
1を備えかつ各々のCPU2,6等がそれ自身のキャッ
シュメモリ3,5等を有する典型的なマルチ処理システ
ムを示す。このシステムでは、キャッシュメモリはメモ
リアクセスの速度を増加するだけでなく、主メモリ1へ
のアクセスに対する主メモリバス4での競合レベルを低
減するのに役立つ。このシステムにおけるCPU2,6
等は典型的にはその固有のキャッシュ3,5等にのみ直
接アクセスでき、たとえ他のキャッシュが、リクエスト
を行なっているCPUによって要求されるデータを有し
ていても、別のCPUに接続されるキャッシュには直接
アクセスできない。しかしながら、この発明において
は、もし、たとえばCPU2がキャッシュ5でのみ有効
なデータをキャッシュ3からリクエストすれば、CPU
2によってリクエストされるデータを含むキャッシュ5
はそのリクエストを認識し、キャッシュ5がリクエスト
されたデータを有するかどうかを判断し、このデータを
使用するためにキャッシュ3に転送することができる。
1を備えかつ各々のCPU2,6等がそれ自身のキャッ
シュメモリ3,5等を有する典型的なマルチ処理システ
ムを示す。このシステムでは、キャッシュメモリはメモ
リアクセスの速度を増加するだけでなく、主メモリ1へ
のアクセスに対する主メモリバス4での競合レベルを低
減するのに役立つ。このシステムにおけるCPU2,6
等は典型的にはその固有のキャッシュ3,5等にのみ直
接アクセスでき、たとえ他のキャッシュが、リクエスト
を行なっているCPUによって要求されるデータを有し
ていても、別のCPUに接続されるキャッシュには直接
アクセスできない。しかしながら、この発明において
は、もし、たとえばCPU2がキャッシュ5でのみ有効
なデータをキャッシュ3からリクエストすれば、CPU
2によってリクエストされるデータを含むキャッシュ5
はそのリクエストを認識し、キャッシュ5がリクエスト
されたデータを有するかどうかを判断し、このデータを
使用するためにキャッシュ3に転送することができる。
【0012】図2は、この発明で使用できるタイプのキ
ャッシュメモリの一例である。12のワード11−22
からなるキャッシュのセクション10が説明のために示
されている。ワードは、4ワードずつのブロックに分け
られる。ブロック26はワード11−14からなり、ブ
ロック27はワード15−18からなり、ブロック28
はワード19−22からなる。1つのキャッシュタグは
4ワードの各ブロックを指す。キャッシュタグ−1 3
1はブロック26を指し、キャッシュタグ−232はブ
ロック27を指し、キャッシュタグ−3 33はブロッ
ク28を指す。各々のタグが常に同じワードのブロック
を指すため、これはダイレクトマッピングと呼ばれる。
各々のタグが1組のブロックのいずれかのブロックを指
し得るセットアソシアティブメモリまたは各々のタグが
いずれかのワードブロックを指し得るフルアソシアティ
ブメモリ等の他の構成もまた、この発明で使用できる。
ャッシュメモリの一例である。12のワード11−22
からなるキャッシュのセクション10が説明のために示
されている。ワードは、4ワードずつのブロックに分け
られる。ブロック26はワード11−14からなり、ブ
ロック27はワード15−18からなり、ブロック28
はワード19−22からなる。1つのキャッシュタグは
4ワードの各ブロックを指す。キャッシュタグ−1 3
1はブロック26を指し、キャッシュタグ−232はブ
ロック27を指し、キャッシュタグ−3 33はブロッ
ク28を指す。各々のタグが常に同じワードのブロック
を指すため、これはダイレクトマッピングと呼ばれる。
各々のタグが1組のブロックのいずれかのブロックを指
し得るセットアソシアティブメモリまたは各々のタグが
いずれかのワードブロックを指し得るフルアソシアティ
ブメモリ等の他の構成もまた、この発明で使用できる。
【0013】「変更ビット」41−43もまたブロック
26−28と関連している。以下に議論するように、ブ
ロックに関連する変更ビットは、そのブロックのデータ
が変更されたがまだ主メモリ1にコピーバックされてい
ないことを示すように「設定」される。
26−28と関連している。以下に議論するように、ブ
ロックに関連する変更ビットは、そのブロックのデータ
が変更されたがまだ主メモリ1にコピーバックされてい
ないことを示すように「設定」される。
【0014】タグが4ワードのブロックを指すだけであ
るため、データは主メモリと4ワードのブロックからな
るキャッシュとの間で移動される。タグが各々のワード
を指すキャッシュメモリを構成することは可能であろう
が、それにはより拡張したタグアレイを使用しなければ
ならないであろう。したがって、4ワードのブロックに
データを移動させてでも、より小さいタグアレイが使用
される。たとえば、もしデータワードが主メモリからキ
ャッシュワード13に移動されれば、タグ−131がブ
ロック26のすべてにおけるデータの存在を示すため、
ワード11−14はすべて移動されなければならない。
るため、データは主メモリと4ワードのブロックからな
るキャッシュとの間で移動される。タグが各々のワード
を指すキャッシュメモリを構成することは可能であろう
が、それにはより拡張したタグアレイを使用しなければ
ならないであろう。したがって、4ワードのブロックに
データを移動させてでも、より小さいタグアレイが使用
される。たとえば、もしデータワードが主メモリからキ
ャッシュワード13に移動されれば、タグ−131がブ
ロック26のすべてにおけるデータの存在を示すため、
ワード11−14はすべて移動されなければならない。
【0015】キャッシュにおいて変更されるデータは、
その後、リクエストされると他のCPUまたは装置によ
って使用できるようにされなければならない。正しいデ
ータが既に主メモリにあるため、主メモリからキャッシ
ュに移動されかつ変更されていないデータはキャッシュ
によって放棄され得る。このキャッシュは、ブロックの
データのうちのいずれかが主メモリから読取られてから
変化したかどうかを示すために「変更ビット」を使用す
る。したがって、設定変更ビットのあるブロックのみが
主メモリにコピーバックされる必要がある。たとえば、
ブロック26のワード11−14のいずれかが変更され
れば、変更ビット41が設定されなければならない。デ
ータがキャッシュ間で移動されると、変更ビットは、デ
ータの一致性を維持するために、ブロックの正しい状態
を反映するように処理されなければならない。
その後、リクエストされると他のCPUまたは装置によ
って使用できるようにされなければならない。正しいデ
ータが既に主メモリにあるため、主メモリからキャッシ
ュに移動されかつ変更されていないデータはキャッシュ
によって放棄され得る。このキャッシュは、ブロックの
データのうちのいずれかが主メモリから読取られてから
変化したかどうかを示すために「変更ビット」を使用す
る。したがって、設定変更ビットのあるブロックのみが
主メモリにコピーバックされる必要がある。たとえば、
ブロック26のワード11−14のいずれかが変更され
れば、変更ビット41が設定されなければならない。デ
ータがキャッシュ間で移動されると、変更ビットは、デ
ータの一致性を維持するために、ブロックの正しい状態
を反映するように処理されなければならない。
【0016】この発明の動作のために、1ブロックにつ
き4ワードを備えるキャッシュを構成する必要はない。
しかしながら、タグと変更ビットとワードのブロックと
の間の関係を認識してこの発明を十分に理解することが
重要である。
き4ワードを備えるキャッシュを構成する必要はない。
しかしながら、タグと変更ビットとワードのブロックと
の間の関係を認識してこの発明を十分に理解することが
重要である。
【0017】図3は、データインターベント(DI)信
号100の動作を制御するキャッシュ回路のブロック図
である。図3において、回路ブロック102は、いつD
I信号100をアサートするべきかを判断し、かつ回路
ブロック104は、いつDI信号100をデアサートす
るべきかを判断する。DI信号100の制御は、キャッ
シュにおける所望のデータの存在だけでなく、変更ビッ
トが現在設定されているかどうか、変更ビットが特定の
動作によって設定されるかどうか、データのブロック全
体が転送されるかどうか、およびバーストモード動作の
パラメータにも基づく。
号100の動作を制御するキャッシュ回路のブロック図
である。図3において、回路ブロック102は、いつD
I信号100をアサートするべきかを判断し、かつ回路
ブロック104は、いつDI信号100をデアサートす
るべきかを判断する。DI信号100の制御は、キャッ
シュにおける所望のデータの存在だけでなく、変更ビッ
トが現在設定されているかどうか、変更ビットが特定の
動作によって設定されるかどうか、データのブロック全
体が転送されるかどうか、およびバーストモード動作の
パラメータにも基づく。
【0018】回路ブロック102において、メモリリク
エスト検出ブロック110は、メモリリクエストに対し
て主メモリバス4をモニタリングすることによって「バ
スウォッチング」を行なう。110によってメモリリク
エストが検出されれば、メモリリクエストのアドレス
は、初期アドレス範囲認識ブロック112によってデコ
ードされる。ブロック112は、メモリリクエストのア
ドレスがキャッシュによって処理されるアドレス範囲内
であるかどうかを判断する。もし範囲外であれば、メモ
リリクエストは無視される。メモリリクエストのアドレ
スがキャッシュによる処理範囲内であれば、キャッシュ
ヒット検出ブロック114はリクエストされたデータが
キャッシュで利用できるかどうかを決定する。リクエス
トされたデータがキャッシュ内にあれば、データに対す
る変更ビットは、変更ビット検出ブロック116によっ
て検査される。変更ビットが設定され、かつキャッシュ
のデータが最も最近の値であることを示していれば、信
号118がアサートDIブロック120に送られ、これ
はDIラッチ122にDI信号100をアサートするよ
うに命令する。DI信号のアサートによって主メモリ1
はメモリリクエストを無視し、リクエストされたデータ
は、DIをアサートしたキャッシュによってリクエスト
を行なっているキャッシュに与えられる。
エスト検出ブロック110は、メモリリクエストに対し
て主メモリバス4をモニタリングすることによって「バ
スウォッチング」を行なう。110によってメモリリク
エストが検出されれば、メモリリクエストのアドレス
は、初期アドレス範囲認識ブロック112によってデコ
ードされる。ブロック112は、メモリリクエストのア
ドレスがキャッシュによって処理されるアドレス範囲内
であるかどうかを判断する。もし範囲外であれば、メモ
リリクエストは無視される。メモリリクエストのアドレ
スがキャッシュによる処理範囲内であれば、キャッシュ
ヒット検出ブロック114はリクエストされたデータが
キャッシュで利用できるかどうかを決定する。リクエス
トされたデータがキャッシュ内にあれば、データに対す
る変更ビットは、変更ビット検出ブロック116によっ
て検査される。変更ビットが設定され、かつキャッシュ
のデータが最も最近の値であることを示していれば、信
号118がアサートDIブロック120に送られ、これ
はDIラッチ122にDI信号100をアサートするよ
うに命令する。DI信号のアサートによって主メモリ1
はメモリリクエストを無視し、リクエストされたデータ
は、DIをアサートしたキャッシュによってリクエスト
を行なっているキャッシュに与えられる。
【0019】回路ブロック104でDI信号をデアサー
トするための論理はこの発明の焦点であり、データの一
貫性を維持したままできるだけ早くメモリバスを非活性
化し、それによってそれを他のトランザクションに対し
て解放するように設計される。メモリリクエストがブロ
ック110によって検出されると、信号130が発生さ
れメモリリクエストデコードブロック132およびリー
ドマッチ制御デコードブロック134に送られる。
トするための論理はこの発明の焦点であり、データの一
貫性を維持したままできるだけ早くメモリバスを非活性
化し、それによってそれを他のトランザクションに対し
て解放するように設計される。メモリリクエストがブロ
ック110によって検出されると、信号130が発生さ
れメモリリクエストデコードブロック132およびリー
ドマッチ制御デコードブロック134に送られる。
【0020】メモリリクエストデコードブロック132
は、行なわれるべきメモリリクエスト動作のタイプを識
別する。信号136は、読出動作を示すLOWおよび書
込動作を示すHIGHで、動作が読出であるか書込であ
るか(リード/ライト信号)を示す。信号138は、動
作が「ノットリードフォーモデファイ(Not-Read-For-M
odify )」であればHIGHであり、動作が「リードフ
ォーモデファイ(Read-For-Modify )」であればLOW
である。「リードフォーモデファイ」という言葉は、読
出されているデータが、リクエストを行なっているCP
U/キャッシュによって変更されることを意味し、変数
の現在の値が今、リクエストを行なっているキャッシュ
にあり、したがってフルブロックが伝送されなければな
らないことを示している。さらに、信号140はバース
トモード動作のためにアサートされる。
は、行なわれるべきメモリリクエスト動作のタイプを識
別する。信号136は、読出動作を示すLOWおよび書
込動作を示すHIGHで、動作が読出であるか書込であ
るか(リード/ライト信号)を示す。信号138は、動
作が「ノットリードフォーモデファイ(Not-Read-For-M
odify )」であればHIGHであり、動作が「リードフ
ォーモデファイ(Read-For-Modify )」であればLOW
である。「リードフォーモデファイ」という言葉は、読
出されているデータが、リクエストを行なっているCP
U/キャッシュによって変更されることを意味し、変数
の現在の値が今、リクエストを行なっているキャッシュ
にあり、したがってフルブロックが伝送されなければな
らないことを示している。さらに、信号140はバース
トモード動作のためにアサートされる。
【0021】バーストモード動作のために、バーストモ
ードブロック142は、初期メモリアドレスを増分する
ことによって連続アドレス146を発生するバーストカ
ウンタ144を可能化する。バーストモードブロック1
42はバーストリクエストの間バースト開始信号147
をアサートし、バーストリクエストが終わるとこの信号
をデアサートする。応答するキャッシュがバーストリク
エストに応答してデータを与え始めると、それはリクエ
スト処理信号148を発生する。バーストアドレス14
6はバーストアドレス範囲認識ブロック150によって
検査され、バーストアドレス146がキャッシュによっ
て処理されるアドレス範囲内であるかどうかを判断す
る。動作の初期アドレスは初期アドレス範囲認識ブロッ
ク112によって判断されるようにキャッシュのアドレ
ス範囲内であるかもしれないが、その後のバーストアド
レス146はキャッシュの範囲外であるかもしれないた
め、これは重要なステップである。もしバーストアドレ
ス146が範囲内であれば、インレンジ信号152が発
生され、そうでなければ、バーストアドレス146がキ
ャッシュのアドレス範囲外であることを示すためにアウ
トオブレンジ信号154が発生される。バーストアドレ
ス146が範囲内であれば、キャッシュヒット検出ブロ
ック156はキャッシュヒットがあるかどうかを判断
し、アクセスされたブロックに対して変更ビットが設定
されれば、変更ビット検出ブロック158は信号160
を発生する。
ードブロック142は、初期メモリアドレスを増分する
ことによって連続アドレス146を発生するバーストカ
ウンタ144を可能化する。バーストモードブロック1
42はバーストリクエストの間バースト開始信号147
をアサートし、バーストリクエストが終わるとこの信号
をデアサートする。応答するキャッシュがバーストリク
エストに応答してデータを与え始めると、それはリクエ
スト処理信号148を発生する。バーストアドレス14
6はバーストアドレス範囲認識ブロック150によって
検査され、バーストアドレス146がキャッシュによっ
て処理されるアドレス範囲内であるかどうかを判断す
る。動作の初期アドレスは初期アドレス範囲認識ブロッ
ク112によって判断されるようにキャッシュのアドレ
ス範囲内であるかもしれないが、その後のバーストアド
レス146はキャッシュの範囲外であるかもしれないた
め、これは重要なステップである。もしバーストアドレ
ス146が範囲内であれば、インレンジ信号152が発
生され、そうでなければ、バーストアドレス146がキ
ャッシュのアドレス範囲外であることを示すためにアウ
トオブレンジ信号154が発生される。バーストアドレ
ス146が範囲内であれば、キャッシュヒット検出ブロ
ック156はキャッシュヒットがあるかどうかを判断
し、アクセスされたブロックに対して変更ビットが設定
されれば、変更ビット検出ブロック158は信号160
を発生する。
【0022】範囲認識ブロック112,150および関
連する回路の1つの実現例は、「キャッシュメモリシス
テムおよびそれを実現するための方法」と題された本出
願人の同時係属中の米国特許出願連続番号第
号に記載されており、その開示は引用によりここに
援用される。
連する回路の1つの実現例は、「キャッシュメモリシス
テムおよびそれを実現するための方法」と題された本出
願人の同時係属中の米国特許出願連続番号第
号に記載されており、その開示は引用によりここに
援用される。
【0023】リードマッチ制御(RMC)デコードブロ
ック134は、RMCフィールドの下位2ビットをデコ
ードする。信号162はRMCビット−0(最下位ビッ
ト)の値であり、信号164はRMCビット−1(第2
最下位ビット)の値である。これらは行なわれるべき動
作を示すプロトコルビットである。ビット−0がHIG
Hでありかつビット−1がHIGHであれば、変更ビッ
トの状態はデータインターベント動作の間変化しないま
まであろう。他方、ビット−0がLOWでありかつビッ
ト−1がHIGHであれば、変更ビットはデータインタ
ーベント動作の間にリセットされるべきであり、読出動
作の間にフルブロックが読出されなければならないこと
を示している。
ック134は、RMCフィールドの下位2ビットをデコ
ードする。信号162はRMCビット−0(最下位ビッ
ト)の値であり、信号164はRMCビット−1(第2
最下位ビット)の値である。これらは行なわれるべき動
作を示すプロトコルビットである。ビット−0がHIG
Hでありかつビット−1がHIGHであれば、変更ビッ
トの状態はデータインターベント動作の間変化しないま
まであろう。他方、ビット−0がLOWでありかつビッ
ト−1がHIGHであれば、変更ビットはデータインタ
ーベント動作の間にリセットされるべきであり、読出動
作の間にフルブロックが読出されなければならないこと
を示している。
【0024】変更ビット検出ブロック116が信号11
8を発生するかまたは変更ビット検出ブロック158が
信号160を発生すると、データはキャッシュから読出
され得る。ワードカウントブロック170は、ブロック
の伝送の間はHIGHのままでありブロックの終わりで
LOWになるエンドオブブロック信号172を発生す
る。
8を発生するかまたは変更ビット検出ブロック158が
信号160を発生すると、データはキャッシュから読出
され得る。ワードカウントブロック170は、ブロック
の伝送の間はHIGHのままでありブロックの終わりで
LOWになるエンドオブブロック信号172を発生す
る。
【0025】DI制御ブロック200は、信号178を
デアサートDIブロック180に送ってDIラッチ12
2をクリアすることによっていつDI信号100をデア
サートするべきかを判断する。いくつかの異なる状況
で、DI制御ブロック200はDI信号100をデアサ
ートする。DI制御ブロック200は、入力信号10
0,136,138,147,148,154,16
2,164および172に基づいてこの判断を行なう。
デアサートDIブロック180に送ってDIラッチ12
2をクリアすることによっていつDI信号100をデア
サートするべきかを判断する。いくつかの異なる状況
で、DI制御ブロック200はDI信号100をデアサ
ートする。DI制御ブロック200は、入力信号10
0,136,138,147,148,154,16
2,164および172に基づいてこの判断を行なう。
【0026】図4は、DI制御ブロック200の機能ブ
ロック図である。バーストアドレスアウトオブレンジ信
号154がHIGHである一方キャッシュがDI信号1
00をアサートしておりかつエンドオブブロック信号が
アサートされれば、ブロック202は信号204を生成
する。キャッシュがDI信号100をアサートしてお
り、LOWであるリード/ライト信号136によって読
出動作が示され、エンドオブブロック信号172がLO
Wであり、動作がノットリードフォーモデファイ(信号
138がHIGH)であり、プロトコルにより、LOW
であるRMCビット−0 162およびHIGHである
RMCビット−1 164で示される変更ビットを変化
しないままにすることが可能であれば、ブロック206
は信号208を生成する。リード/ライト信号136が
LOWであり読出動作を示し、RMCビット−0 16
2がLOWでありかつRMCビット−1がHIGHであ
り変更ビットがリセットされるべきでないことを示し、
バーストリクエスト信号148がLOWでありバースト
リクエストがストップしたことを示し、リクエスト処理
ライン148がHIGHであれば、ブロック210は信
号212を生成する。信号204,208または212
のいずれかがHIGHであれば、ORブロック214は
信号178を生成してDI信号100をデアサートす
る。
ロック図である。バーストアドレスアウトオブレンジ信
号154がHIGHである一方キャッシュがDI信号1
00をアサートしておりかつエンドオブブロック信号が
アサートされれば、ブロック202は信号204を生成
する。キャッシュがDI信号100をアサートしてお
り、LOWであるリード/ライト信号136によって読
出動作が示され、エンドオブブロック信号172がLO
Wであり、動作がノットリードフォーモデファイ(信号
138がHIGH)であり、プロトコルにより、LOW
であるRMCビット−0 162およびHIGHである
RMCビット−1 164で示される変更ビットを変化
しないままにすることが可能であれば、ブロック206
は信号208を生成する。リード/ライト信号136が
LOWであり読出動作を示し、RMCビット−0 16
2がLOWでありかつRMCビット−1がHIGHであ
り変更ビットがリセットされるべきでないことを示し、
バーストリクエスト信号148がLOWでありバースト
リクエストがストップしたことを示し、リクエスト処理
ライン148がHIGHであれば、ブロック210は信
号212を生成する。信号204,208または212
のいずれかがHIGHであれば、ORブロック214は
信号178を生成してDI信号100をデアサートす
る。
【0027】図5は、ブロック202,206,210
および214を含むDI制御ブロック200の回路の一
実施例の概略図である。
および214を含むDI制御ブロック200の回路の一
実施例の概略図である。
【0028】ブロック202の回路は以下のように動作
する。アウトオフレンジ信号154はインバータ220
によって反転され、かつORゲート222でエンドオブ
ブロック信号172と組合わされて信号224を生成す
る。信号224はNANDゲート226でDI信号10
0と組合わせられ信号204を生成する。明らかに、エ
ンドオブブロック信号172がLOWであり全ブロック
が送られたことを示し、かつアウトオフレンジ信号15
4がHIGHであり現在のデータリクエストがキャッシ
ュの範囲外であることを示すと、ORゲートの出力22
4はLOWとなり、NANDゲート226の出力をHI
GHにさせDI信号をリセットする。
する。アウトオフレンジ信号154はインバータ220
によって反転され、かつORゲート222でエンドオブ
ブロック信号172と組合わされて信号224を生成す
る。信号224はNANDゲート226でDI信号10
0と組合わせられ信号204を生成する。明らかに、エ
ンドオブブロック信号172がLOWであり全ブロック
が送られたことを示し、かつアウトオフレンジ信号15
4がHIGHであり現在のデータリクエストがキャッシ
ュの範囲外であることを示すと、ORゲートの出力22
4はLOWとなり、NANDゲート226の出力をHI
GHにさせDI信号をリセットする。
【0029】ブロック206の回路は以下のように動作
する。RMCビット−0 162およびRMCビット−
1 164はNANDゲート230で組合わせられ信号
232を生成し、これはORゲート234でリード/ラ
イト信号136と組合わせられ信号236を生成する。
信号236はNANDゲート238でノットリードフォ
ーモデファイ信号138と組合わせられ信号240を生
成する。エンドオブブロック信号172はインバータ2
42によって反転され信号244を生成し、これはAN
Dゲート246で信号240およびDI信号100と組
合わせられ信号208を生成する。
する。RMCビット−0 162およびRMCビット−
1 164はNANDゲート230で組合わせられ信号
232を生成し、これはORゲート234でリード/ラ
イト信号136と組合わせられ信号236を生成する。
信号236はNANDゲート238でノットリードフォ
ーモデファイ信号138と組合わせられ信号240を生
成する。エンドオブブロック信号172はインバータ2
42によって反転され信号244を生成し、これはAN
Dゲート246で信号240およびDI信号100と組
合わせられ信号208を生成する。
【0030】図5に関して明らかであるように、もし信
号138がLOWでありリードフォーモデファイ動作を
示していれば、NANDゲート238の出力は、もしH
IGHに強制されれば、全ブロックが読出されるとゲー
ト246からHIGH出力を生成する。その代わりに、
リード/ライト信号136がLOWであると同時に、R
MCビット−0およびビット−1がともにHIGHであ
れば、ORゲート234の出力はLOWとなり、NAN
Dゲート238の出力をLOWにさせる。どちらの場合
も、DI信号はブロックの終わりでリセットされる。
号138がLOWでありリードフォーモデファイ動作を
示していれば、NANDゲート238の出力は、もしH
IGHに強制されれば、全ブロックが読出されるとゲー
ト246からHIGH出力を生成する。その代わりに、
リード/ライト信号136がLOWであると同時に、R
MCビット−0およびビット−1がともにHIGHであ
れば、ORゲート234の出力はLOWとなり、NAN
Dゲート238の出力をLOWにさせる。どちらの場合
も、DI信号はブロックの終わりでリセットされる。
【0031】ブロック210の回路は以下のように動作
する。通常、バーストリクエスト信号147は、リクエ
スト処理信号148と同様にLOWである。バーストリ
クエスト信号はラッチ270によって反転されかつラッ
チされ、FET274をOFFにする。LOWの信号1
48はFET282をOFFにして、ライン276をフ
ローティング状態にする。
する。通常、バーストリクエスト信号147は、リクエ
スト処理信号148と同様にLOWである。バーストリ
クエスト信号はラッチ270によって反転されかつラッ
チされ、FET274をOFFにする。LOWの信号1
48はFET282をOFFにして、ライン276をフ
ローティング状態にする。
【0032】バーストリクエストの間、信号147はH
IGHになり、ラッチ270によって反転されかつラッ
チされ、信号272をLOWに強制し、これは電界効果
トランジスタ(FET)274をゲート動作させて反転
ラッチ278の入力276でHIGH信号を生成し、そ
れによって信号280をLOWに強制する。これによ
り、ANDゲート286の出力はLOWに強制される。
IGHになり、ラッチ270によって反転されかつラッ
チされ、信号272をLOWに強制し、これは電界効果
トランジスタ(FET)274をゲート動作させて反転
ラッチ278の入力276でHIGH信号を生成し、そ
れによって信号280をLOWに強制する。これによ
り、ANDゲート286の出力はLOWに強制される。
【0033】キャッシュは、データリクエストに応答す
ると、信号148をアサートし、FET282をONに
する。バーストリクエスト信号147がLOWに戻った
後、ラッチ278は直列の組合わせのFET282およ
び284によってリセットされる。これによりラッチ2
78の出力280はHIGHに駆動される。
ると、信号148をアサートし、FET282をONに
する。バーストリクエスト信号147がLOWに戻った
後、ラッチ278は直列の組合わせのFET282およ
び284によってリセットされる。これによりラッチ2
78の出力280はHIGHに駆動される。
【0034】動作がリードフォーモデファイであれば、
信号138はLOWでありゲート286の出力をLOW
に強制する。同様に、動作が書込動作であれば、ゲート
286の出力はゲート264を介してLOWに強制され
る。または、RMCビットが変更ビットのリセットを要
求すれば、ゲート286はゲート264の出力によって
不能化される。他方、信号138,136,162およ
び164が、読出動作が行なわれていること、および変
更ビットがリセットされるべきでないことを示せば、A
NDゲート286への信号138および266はHIG
Hに設定される。信号280がHIGHになり、リクエ
ストが処理されたことおよびバーストリクエストが現在
行なわれていないことを示すと、ゲート286の出力2
12はHIGHになりDI信号をリセットする。理解さ
れるように、この動作はバーストリクエストが行なわれ
た後およびバーストリクエストがないときの両方で発生
し、バーストリクエスト後の場合は、全ブロックを伝送
する必要がないためバーストリクエストが終わるとすぐ
にDIがリセットされる。バーストリクエストがない場
合は、DIは、1つのデータワードが伝送された後にリ
セットされる。
信号138はLOWでありゲート286の出力をLOW
に強制する。同様に、動作が書込動作であれば、ゲート
286の出力はゲート264を介してLOWに強制され
る。または、RMCビットが変更ビットのリセットを要
求すれば、ゲート286はゲート264の出力によって
不能化される。他方、信号138,136,162およ
び164が、読出動作が行なわれていること、および変
更ビットがリセットされるべきでないことを示せば、A
NDゲート286への信号138および266はHIG
Hに設定される。信号280がHIGHになり、リクエ
ストが処理されたことおよびバーストリクエストが現在
行なわれていないことを示すと、ゲート286の出力2
12はHIGHになりDI信号をリセットする。理解さ
れるように、この動作はバーストリクエストが行なわれ
た後およびバーストリクエストがないときの両方で発生
し、バーストリクエスト後の場合は、全ブロックを伝送
する必要がないためバーストリクエストが終わるとすぐ
にDIがリセットされる。バーストリクエストがない場
合は、DIは、1つのデータワードが伝送された後にリ
セットされる。
【0035】ブロック214の回路は以下のように動作
する。信号204,208および212はNORゲート
290で組合わせられ信号178を生成する。したがっ
て、ブロック202,206または210によって、そ
れぞれ信号204,208または212を生成する状態
の発生が検出されれば、信号178はHIGHからLO
Wになり、DI信号100のデアサートを促す。
する。信号204,208および212はNORゲート
290で組合わせられ信号178を生成する。したがっ
て、ブロック202,206または210によって、そ
れぞれ信号204,208または212を生成する状態
の発生が検出されれば、信号178はHIGHからLO
Wになり、DI信号100のデアサートを促す。
【0036】データインターベント機能が当業者によっ
て実現され得る方法は多数あることが理解されるべきで
ある。前掲の特許請求の範囲に記載されるようなこの発
明の範囲から外れることなくこの実施例に種々の変更を
加えてもよい。
て実現され得る方法は多数あることが理解されるべきで
ある。前掲の特許請求の範囲に記載されるようなこの発
明の範囲から外れることなくこの実施例に種々の変更を
加えてもよい。
【図1】共通主メモリと各々のCPUのための別々のキ
ャッシュとを備えるマルチ処理システムを示す図であ
る。
ャッシュとを備えるマルチ処理システムを示す図であ
る。
【図2】この発明に使用されるタイプのキャッシュメモ
リの一例を示す図である。
リの一例を示す図である。
【図3】データインターベント(DI)制御ラインの動
作を制御する回路の機能ブロック図である。
作を制御する回路の機能ブロック図である。
【図4】データインターベント(DI)制御ラインをい
つデアサートするべきかを決定する回路の機能ブロック
図である。
つデアサートするべきかを決定する回路の機能ブロック
図である。
【図5】データインターベント(DI)制御ラインをい
つデアサートするべきかを決定する回路の一実施例の概
略図である。
つデアサートするべきかを決定する回路の一実施例の概
略図である。
1 主メモリ 2 CPU 3 キャッシュ 4 主メモリバス 5 キャッシュ 6 CPU
Claims (6)
- 【請求項1】 キャッシュメモリ−中央処理装置(CP
U)の複数の組合わせを含み、前記組合わせの各々は少
なくとも1つのキャッシュメモリと1つのCPUとを含
み、前記キャッシュメモリの各々は、各々のブロックと
関連し変更されたデータまたは変更されていないデータ
を示すインジケータを備えるマルチワードブロックにデ
ータを記憶し、さらに 前記組合わせによって共有されるように、メモリバスを
介して前記組合わせのすべてに接続される共通主メモリ
を含み、 前記組合わせの各々は、リクエストを行なう組合わせに
なるように前記メモリバスを介して前記共通メモリから
データをリクエストするための手段を有し、前記組合わ
せの各々は、 前記メモリバス上の他の組合せのリクエストをモニタリ
ングし、もしリクエストされたデータがそれ自身のキャ
ッシュにあれば、データインターベント信号をアサート
することによってデータインターベント動作を始めて主
メモリへのアクセスを中断して応答する組合わせになる
ための手段と、 リクエストされたデータに関連するインジケータが変更
されるべきでなければリクエストが終わったとき、およ
びリクエストされたデータに関連するインジケータが変
更されるべきであればデータの全ブロックが読出された
後、前記データインターベント信号をデアサートして前
記データインターベント動作を終わらせるための手段と
を有する、キャッシュメモリシステム。 - 【請求項2】 前記キャッシュの各々は、前記バースト
リクエストが終わるまで順次データを伝送することによ
ってバーストリクエストに応答するための手段を含み、
前記デアサート手段は、連続したバーストリクエストに
応答する必要のあるデータがキャッシュメモリの範囲外
であることを示す信号を受取るため、およびそれに応答
して前記データインターベント信号をデアサートするた
めの手段を含む、請求項1に記載のキャッシュメモリシ
ステム。 - 【請求項3】 前記デアサート手段は、リクエストを出
す組合わせがリクエストされたデータを変更することを
示すリードフォーモデファイ信号を受取り、かつそれに
応答してデータの全ブロックが読出された後にのみ前記
データインターベント信号をデアサートするための手段
を含む、請求項1に記載のキャッシュメモリシステム。 - 【請求項4】 前記デアサート手段は、前記インジケー
タがデータインターベント動作の後に変更されるべきで
あることを示すプロトコル信号を受取り、かつそれに応
答してデータの全ブロックが読出された後にのみ前記デ
ータインターベント信号をデアサートするための手段を
さらに含む、請求項3に記載のキャッシュメモリシステ
ム。 - 【請求項5】 前記デアサート手段は、バーストリクエ
スト信号を受取り、かつ前記バーストリクエスト信号が
存在する間前記データインターベント信号を維持し、か
つ前記リードフォーモデファイ信号および前記プロトコ
ル信号がないときにのみ前記バーストリクエスト信号が
デアサートされた後前記データインターベント信号をデ
アサートするためのバースト手段を含む、請求項4に記
載のキャッシュメモリシステム。 - 【請求項6】 前記バースト手段は、前記バーストリク
エスト信号を記憶するためのラッチと、リクエストの処
理を示す信号のアサートと組合わせて前記バーストリク
エスト信号のデアサートの際にのみ前記ラッチをリセッ
トするための手段とを含む、請求項5に記載のキャッシ
ュメモリシステム。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US99300392A | 1992-12-18 | 1992-12-18 | |
| US993003 | 1992-12-18 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH06222994A true JPH06222994A (ja) | 1994-08-12 |
Family
ID=25538993
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP5317730A Withdrawn JPH06222994A (ja) | 1992-12-18 | 1993-12-17 | キャッシュメモリシステム |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US5586298A (ja) |
| EP (1) | EP0602805B1 (ja) |
| JP (1) | JPH06222994A (ja) |
| DE (1) | DE69327643T2 (ja) |
Families Citing this family (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5790892A (en) * | 1995-09-29 | 1998-08-04 | International Business Machines Corporation | Information handling system for modifying coherency response set to allow intervention of a read command so that the intervention is not allowed by the system memory |
| US5787470A (en) * | 1996-10-18 | 1998-07-28 | At&T Corp | Inter-cache protocol for improved WEB performance |
| US5996049A (en) * | 1997-04-14 | 1999-11-30 | International Business Machines Corporation | Cache-coherency protocol with recently read state for data and instructions |
| US6195729B1 (en) * | 1998-02-17 | 2001-02-27 | International Business Machines Corporation | Deallocation with cache update protocol (L2 evictions) |
| US8332592B2 (en) * | 2004-10-08 | 2012-12-11 | International Business Machines Corporation | Graphics processor with snoop filter |
| US7475190B2 (en) * | 2004-10-08 | 2009-01-06 | International Business Machines Corporation | Direct access of cache lock set data without backing memory |
| US7467204B2 (en) * | 2005-02-10 | 2008-12-16 | International Business Machines Corporation | Method for providing low-level hardware access to in-band and out-of-band firmware |
| US7392350B2 (en) * | 2005-02-10 | 2008-06-24 | International Business Machines Corporation | Method to operate cache-inhibited memory mapped commands to access registers |
Family Cites Families (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4503497A (en) * | 1982-05-27 | 1985-03-05 | International Business Machines Corporation | System for independent cache-to-cache transfer |
| US5091846A (en) * | 1986-10-03 | 1992-02-25 | Intergraph Corporation | Cache providing caching/non-caching write-through and copyback modes for virtual addresses and including bus snooping to maintain coherency |
| DE3728862A1 (de) * | 1987-08-28 | 1989-03-09 | Siemens Ag | Anordnung zur verwaltung von daten und adressen in einem zwischen einem zentralprozessor und einem hauptspeicher geschalteten pufferspeicher |
| US5185878A (en) * | 1988-01-20 | 1993-02-09 | Advanced Micro Device, Inc. | Programmable cache memory as well as system incorporating same and method of operating programmable cache memory |
| US4939641A (en) * | 1988-06-30 | 1990-07-03 | Wang Laboratories, Inc. | Multi-processor system with cache memories |
| US5072369A (en) * | 1989-04-07 | 1991-12-10 | Tektronix, Inc. | Interface between buses attached with cached modules providing address space mapped cache coherent memory access with SNOOP hit memory updates |
| US5265235A (en) * | 1990-11-30 | 1993-11-23 | Xerox Corporation | Consistency protocols for shared memory multiprocessors |
| US5335335A (en) * | 1991-08-30 | 1994-08-02 | Compaq Computer Corporation | Multiprocessor cache snoop access protocol wherein snoop means performs snooping operations after host bus cycle completion and delays subsequent host bus cycles until snooping operations are completed |
-
1993
- 1993-11-23 EP EP93309309A patent/EP0602805B1/en not_active Expired - Lifetime
- 1993-11-23 DE DE69327643T patent/DE69327643T2/de not_active Expired - Lifetime
- 1993-12-17 JP JP5317730A patent/JPH06222994A/ja not_active Withdrawn
-
1995
- 1995-06-06 US US08/467,896 patent/US5586298A/en not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| DE69327643T2 (de) | 2000-08-31 |
| EP0602805A1 (en) | 1994-06-22 |
| EP0602805B1 (en) | 2000-01-19 |
| DE69327643D1 (de) | 2000-02-24 |
| US5586298A (en) | 1996-12-17 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US5813022A (en) | Circuit for placing a cache memory into low power mode in response to special bus cycles executed on the bus | |
| US5644788A (en) | Burst transfers using an ascending or descending only burst ordering | |
| US4847758A (en) | Main memory access in a microprocessor system with a cache memory | |
| US5426765A (en) | Multiprocessor cache abitration | |
| US6321296B1 (en) | SDRAM L3 cache using speculative loads with command aborts to lower latency | |
| US5802576A (en) | Speculative cache snoop during DMA line update | |
| US5778431A (en) | System and apparatus for partially flushing cache memory | |
| EP1029280B1 (en) | Cache memory operation | |
| US6219745B1 (en) | System and method for entering a stream read buffer mode to store non-cacheable or block data | |
| US6560680B2 (en) | System controller with Integrated low latency memory using non-cacheable memory physically distinct from main memory | |
| JP3732518B2 (ja) | スペキュラティブなシステムメモリ読取りを行う方法および装置 | |
| US5737564A (en) | Cache memory system having multiple caches with each cache mapped to a different area of main memory to avoid memory contention and to lessen the number of cache snoops | |
| JP2001147854A (ja) | 処理システム、書き込みバッファユニット内の格納の最適化方法、並びに、データの格納及び分配方法 | |
| US5835934A (en) | Method and apparatus of low power cache operation with a tag hit enablement | |
| US5900016A (en) | System for using a cache memory with a write-back architecture | |
| US5535363A (en) | Method and apparatus for skipping a snoop phase in sequential accesses by a processor in a shared multiprocessor memory system | |
| JPH06222994A (ja) | キャッシュメモリシステム | |
| US5893917A (en) | Memory controller and method of closing a page of system memory | |
| US6049852A (en) | Preserving cache consistency in a computer system having a plurality of memories with overlapping address ranges | |
| US6205507B1 (en) | Memory coherency in a processor-to-bus cycle in a multi-processor system | |
| US5793986A (en) | Method and system for enhanced efficiency of data transfers from memory to multiple processors in a data processing system | |
| JPH09128325A (ja) | 階層バス制御方式及びバスブリッジ | |
| US5809534A (en) | Performing a write cycle to memory in a multi-processor system | |
| US5611072A (en) | Cache with an extended single cycle read/write system and method | |
| US5813028A (en) | Cache read miss request invalidation prevention method |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A300 | Application deemed to be withdrawn because no request for examination was validly filed |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20010306 |