JPH03219345A - 多ポートキャッシュメモリ制御装置 - Google Patents

多ポートキャッシュメモリ制御装置

Info

Publication number
JPH03219345A
JPH03219345A JP2013536A JP1353690A JPH03219345A JP H03219345 A JPH03219345 A JP H03219345A JP 2013536 A JP2013536 A JP 2013536A JP 1353690 A JP1353690 A JP 1353690A JP H03219345 A JPH03219345 A JP H03219345A
Authority
JP
Japan
Prior art keywords
cache memory
port
memory
cpu
data
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
JP2013536A
Other languages
English (en)
Inventor
Noriyuki Ikumi
幾見 宣之
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP2013536A priority Critical patent/JPH03219345A/ja
Priority to US07/645,642 priority patent/US5228135A/en
Publication of JPH03219345A publication Critical patent/JPH03219345A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0844Multiple simultaneous or quasi-simultaneous cache accessing
    • G06F12/0853Cache with multiport tag or data arrays
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols
    • G06F12/0831Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means

Abstract

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

Description

【発明の詳細な説明】 [発明の目的] (産業上の利用分野) この発明は、多ポートキャッシュメモリ制御装置に関す
る。
(従来の技術) 一般に密結合型のマルチプロセッサシステムは、第3図
に示すように並列に動作する複数のCPUIがシステム
バス2を介して共通の主記憶装置3をアクセスすること
ができ、この主記憶装置3を通して他の要素と通信でき
るようになっている。そして通常、主記憶装置3は大容
量であるためにDRAMのような遅いデバイスで構成さ
れており、処理の高速化のために、主記憶装置3の記憶
データのコピー持つ高速のキャッシュメモリ4が備える
ようにしている。
従来、このようなキャッシュメモリに対する制御装置は
第4図に示すような構成となっている。
つまり、キャッシュメモリ41とCPUIとの間は、プ
ロセッサ側バス42とプロセッサ側バスインターフェー
ス(I/F)43とを介してデータ、アドレス、コント
ロールそれぞれの信号のやり取りを行ない、他方、他の
CPUIやデバイス、主記憶装置2との間は、システム
バス2とシステムバスインターフェース(1/F)44
とを介してデータのやり取りを行なうようになっている
そこでCPUIからのリード/ライト要求が入ると、そ
のアドレス信号がTAGメモリ45の内容と比較され、
一致しているならば(つまり、キャッシュメモリ41内
に格納されているデータのアドレスと一致する(アドレ
スヒツトという)ならば)、そこに相当するキャッシュ
メモリ41の内容がリード/ライトされる。もしアドレ
スヒツトしなければ(これをキャッシュミスという)、
システムバス2から主記憶装置3ヘアクセスしくこれを
トラフィックという)、新たに主記憶装置3から必要な
データをキャッシュメモリ41の空きエリアに取込んで
きて格納し、同時にセレクタ(SEL)46をシステム
バス側に切り換えてそのデータのアドレスを取り込み、
新たに格納されるデータのアドレスを記憶していく。
なお、これらのキャッシュメモリ41に対する種々の動
作処理はコントロール回路47によリコントロールする
のである。
ところで、このようなマルチプロセッサシステムでは、
各キャッシュメモリ41のコントロール回路46は他の
キャッシュメモリ41の行なうシステムバス2上でのデ
ータのやり取りを監視しくスヌーズという)、いずれか
のキャッシュメモリ41から主記憶装置3に対するトラ
フィックが発生すると、自分のキャッシュメモリ41に
格納されているデータは旧いままなのに、主記憶装置3
側では該当するアドレスのデータが他のマルチプロセッ
サ1の演算結果から新しく書き替えられてしまっている
のにそのデータにアクセスしたり、あるいは逆に、自分
のキャッシュメモリ41に格納しであるデータは自分の
マルチプロセッサ1の演算結果から新しくなったものの
、まだ主記憶装置3側の該当するアドレスのデータは書
き替えられおらず、旧いままであるのにその旧いデータ
に他のキャッシュメモリのコントロール回路47からア
クセスされたりするならば、データの一貫性(コンシス
チンシー)が保てなくなってしまう。
そこでこれを避けるべく、いずれのキャッシュメモリ4
1のコントロール回路47からシスムバス2上にトラフ
ィックが発生すると、他のキャッシュメモリ41のコン
トロール回路47はシステムバス2上のデータのやり取
りを監視し、データの一貫性が失われそうになったなら
トラフィックを起こしたキャッシュメモリ41のコント
ロール回路47へ他のキャッシュメモリ41のコントロ
ール回路47から割り込みを掛け、主記憶装置3の内容
を更新した後にシステムバス2を先のトラフィックをか
けたコントロール回路47に返すように制御するように
している。
(発明が解決しようとする課題) しかしながら、このような従来のマルチプロセッサにお
けるキャッシュメモリのコントロールでは、いずれかの
キャッシュメモリのコントロール回路からシステムバス
上にトラフィックが発生すると、このシステムバスをス
ヌーズしている他のすべてのキャッシュメモリのコント
ロール回路が上位のCPUに一時停止指令を掛け、CP
Uの処理を停止させてしまうことになる。
ところが、マルチプロセッサシステムの場合には、ある
キャッシュメモリのコントロール回路がらシステムバス
にトラフィックが掛かったとしても、そのコントロール
回路から主記憶装置にアクセスする特定のアドレスのデ
ータは必ずしもすべてのキャッシュメモリが共通して保
持しているデータでない場合も多くあり、このような場
合には実際には主記憶装置の特定のアドレスのデータが
書き替えられたとしても、それを共通に保持していない
キャッシュメモリにとっては関係のないことであり、引
き続き上位のCPUが自分のキャッシュメモリのデータ
を基にして演算処理を続行してもデータの一貫性が損な
われることはなく、かえって無駄に停止していることに
なり、その時間分、全体としては演算処理時間をロスし
ていることになり、自分に関係のないトラフィックに対
してはCPUの演算処理を停止しない場合よりもスルー
プットを落としてしまっているという問題点があった。
さらに、上位のCPUがRI SCタイプのもので、1
クロツクで1命令を実行するとき、プロセッサ側バスの
データバスは1系統でも間に合うが、複数の演算器を有
し、1クロツクで同時に幾つかの命令を実行できるよう
なタイプのもの、例えばVL IWやスーパースカラー
型のプロセッサであると、複数の演算器から同時にキャ
ッシュメモリにアクセスが来るとアービトレイション(
調停)が起こり、−度に1つの演算器しかアクセスでき
ないので、他の演算器は待され、やはり処理は停止する
ことになり、これもスルーブツトを低下させる原因とな
っていた。
この発明は、このような従来の問題点に鑑みてなされた
もので、マルチプロセッサシステムにおけるパススヌー
プの時にもCPUを停止させることがなく、かつ多数の
演算器を有するCPUがら同時にキャッシュメモリにア
クセスすることができるようにした多ポートキャッシュ
メモリ制御装置を提供することを目的とする。
[発明の構成コ (課題を解決するための手段) この発明の多ポートキャッシュメモリ制御装置は、整数
n個のポートを備えた多ポートキャッシュメモリと、n
+1個のポートを備えたTAGメモリと、前記TAGメ
モリの1ポートに外部バスからのアドレス信号を入力し
てアドレスヒツトを調べ、アドレスヒツトがあった時に
中央処理装置(CPU)の動作を停止するように制御し
、前記キャッシュメモリの特定のポートを前記外部バス
に接続するコントロール回路とを備えたものである。
(作用) この発明の多ポートキャッンユメモリ制御装置では、n
ポートの多ポートキャッシュメモリとn+1ポートのT
AGメモリとを設け、コントロール回路は、通常はnポ
ートを用いてCPUの演算器とデータのやり取りを行な
い、TAGメモリの余分の1ポートはシステムバスにト
ラフィックが発生した時にアドレスの比較を行ない、モ
ジアドレスヒツトがあった時にはこのポートを介してC
PUを停止させ、キャッシュメモリの1ポートを空けさ
せる。そしてこのキャッシュメモリの空けさせられた1
ポートを用いてシステムバスとのデータのやり取りを行
なうようにしている。
このようにして、CPU内の複数の演算器での同時並行
演算を可能とすると共に、システムバス上のトラフィッ
クとのアドレスヒツトがない限り、システムバス上にト
ラフィックが発生していてもCPUを停止させることな
くその演算処理動作を続行させるのである。
(実施例) 以下、この発明の実施例を図に基づいて詳説する。
第1図はこの発明の一実施例の回路ブロック図を示して
いる。中央演算処理装置1 (CPU) 11にはn個
の演算器ALU 1〜ALUnが備えられている。多ポ
ートキャッシュメモリ12はCPU11に対応してn個
のポートP1〜Pnを備えている。TAGメそり13は
アドレス信号用のn個のアドレスポートADI〜ADn
に加えてさらに、システムバススヌープ用の1個のアド
レスポートSADを備え、全部でn+1個のポートを備
えている。
コントロール回路14はこれらの多ポートキャッシュメ
モリ12とTAGメモリ13の動作制御を行なう回路で
ある。
多ポートキャッシュメモリ12とTAGメモリ13はC
PUIIに対してプロセッサ側バス15とプロセッサ側
バスインターフェース(1/F)16を介して接続され
、CPUIIの各演算器ALUI〜ALUnがそれぞれ
独立に発生するデータアドレスを多ポートキャッシュメ
モリ12のn個のポートP1〜PnおよびTAGメモリ
13のn個のポートADI〜ADnとやり取りできるよ
うにしである。
また多ポートキャッシュメモリ12とTAGメモリ13
はシステムバス17およびシステムバスインターフェー
ス(1/F)18を介して主記憶袋[19およびその他
の多ポートキャッシュメモリなどのデバイスと接続され
ている。
次に、上記の構成の多ポートキャッシュメモリ制御装置
の動作について説明する。
通常は多ポートキャッシュメモリ12のn個のポートP
1〜Pnにそれぞれ独立にn個の演算器ALLTI〜A
LUnがアクセスし、キャッシュメモリ12に格納した
データに対してリード/ライトしている。
ここでいま、他の多ポートキャッシュメモリのコントロ
ール回路14がキャッシュミスのためにシステムバス1
7上にトラフィックを発生させたとすると、第1図に示
すTAGメモリ13はそのシステムバススヌーブ用のア
ドレスポートSADを通じてそのデータのアドレスを取
り込み、自分のキャッシュメモリ12に格納されている
データのアドレスと比較する。そしてもし、そのトラフ
ィックが自分のキャッシュメモリ12内にアドレスの一
致するものがあると判明すれば、CPU11にウェイト
(wait)をかけ、すべてのポートP1〜Pnの処理
を停止し、nポートの内の1ポート、ここではポートP
1の入力をプロセッサ側バスからシステムバス17側に
切り換え、そのポートP1からアクセスを行ない、該当
するアドレスに新たなデータをライトし、あるいはこの
アドレスのデータをリードしてシステムバス17から主
記憶装置19の該当するアドレスに書き込む。
なおこのような一連の制御は、コントロール回路14に
より制御される。
第2図は多ポートキャッシュメモリ12とTAGメモリ
13とのさらに詳しい回路構成を示しており、20は多
ポートキャッシュメモリ12内のセルアレーであり、そ
のRow方向はワード、Co l umn方向はビット
を表わしている。21はセレクタ(S E L)であり
、ポートP1と対応するアドレスボー)ADIのTAG
ヒツトによるワード線とスヌープアドレスポートSAD
のTAGヒツトによるワード線との切り換え選択を行な
う。
22もセレクタ(S E L)であり、あらかじめ設定
されているポートP1において、プロセッサ側のデータ
とシステムバス側のデータとの入力を切り換え選択する
ものであり、スヌープヒットした時にはシステムバス側
の入力データを選択し、それ以外ではプロセッサ側の入
力データを選択する動作を行なう。
さらに24もセレクタ(S E L)であり、このセレ
クタ24は、TAGメモリ13からシステムバス17へ
は一度に1つのデータしか出力することができないので
、複数のポートで同時にキャッシュミスが起きた場合に
コントロール回路14でスケジューリングしていずれか
1つのポートをシステムバス17に接続する働きをする
このような構成の多ポートキャッシュメモリ制御装置で
は、セレクタ21がADI側を選択していて、TAGメ
モ913のアドレスポートADI〜ADnが、キャッシ
ュメモリ12の各ポートP1〜PnとCPUIIの各演
算器ALU1〜ALUnとの間でのデータのリード/ラ
イトのアドレス管理を行ない、同時にTAGメそり13
はシステムバス17をスヌープしている。
そしてTAGメモリ13にスヌープヒットがあると、セ
レクタ21はスヌープアドレスポートSAD側に切り換
わり、スヌープヒットしたアドレスデータをシステムバ
ス17から取り込み、キャッシュメモリ12に入力する
。一方、セレクタ22はポートP1をプロセッサ側バス
15からシステムバス17側に接続を切り換え、システ
ムバス17を介して該当するアドレスのデータを主記憶
装置19から呼び出して自分のキャッシュメモリ12の
該当するアドレスに入力し格納する。そしてこの時には
、コントロール回路14は自分のCPUIIの動作を一
時停止させる。
また他のキャッシュメモリにおいてキャッシュミスが発
生した時にそのデータのアドレスに対して、自分のとこ
ろのTAGメモリ13にスヌープヒットした場合には、
セレクタ23はキャッシュメモリ12のポートP1〜P
nの内の1つを選択してそのポートからスヌーブヒット
のあったアドレスのデータをシステムバス17側に出力
し、主記憶装置19の該当するアドレスのデータを最新
のものに更新する。
このようにしてこの実施例では、自分のキャッシュメモ
リに格納されているデータについてスヌーブヒットがあ
った場合にのみCPUの動作を停止させ、他のキャッシ
ュメモリ間で処理できて、自分のキャッシュメモリの格
納データには同等影響が及ばない場合にはCPUの動作
を停止しないで続行させるようにしているので、次に説
明するように、従来のキャッシュメモリ制御装置に対し
てスルーブツトを向上させることができるのである。
いまCPUがr個あり、その各々のデータキャッシュア
クセスの割合をα(0<αく1)、アクセスしたときの
キャッシュのヒツト率をβ(0<βく1)、さらに命令
の実行を1としたときのシステムバスのアクセスタイム
をmと仮定すると、従来例のシステムでは、他のCPU
が主記憶装置にアクセスし、CPUを停止しなければな
らない時間Wは、1サイクルに対して、 w w” a・ (1−β)・q・ (r−1)となる
そこで、r−4,α−屹 2.β−0,98゜mm 5
とすると、 w−0,06(6%) となる。そしてヒツト率βが0.9に下がると、W−0
,3(30%) となる。
この値は、スルーブツトなどが起こるとさらに低下する
ところがこの発明によれば、他のCPUが自分のキャッ
シュメモリのデータとは無関係なアドレスのデータをア
クセスしている場合にはスヌーブヒットせずに処理を継
続するようにしているためにCPUを停止させなければ
ならない時間を短くすることができ、その分、スルーブ
ツトの向上が図れるのである。
さらに、■LIW型やスーパースカラー型のマルチプロ
セッサのように複数の演算器を持ち、複数の命令を同時
に実行できるようなシステムに対してこの発明の技術を
利用すれば、データキャッシュが多ポートであるために
1ポートの場合に生じていた同時アクセスに対するアー
ビトレイションのための損失をなくすことができ、さら
に性能の向上が図れることになる。
[発明の効果] 以上のようにこの発明によれば、n個のポートを持つ多
ポートキャッシュメモリに対してn+1個のポートを持
つTAGメモリを用い、スヌーブヒットがあった時にの
み余分の1個のアドレスポートを用いてスヌーブヒット
のあったアドレスを入力し、該当するアドレスに対して
キャッシュメモリの任意の1つのポートによりシステム
バスとの間でデータのやり取りを行なうようにしている
ので、従来のようにシステムバスにトラフィックが発生
すると必ずすべてのCPUを停止させるものと比べて各
CPUの停止時間を少なくすることができ、スループッ
トの向上が図れる。また、多ポートキャッシュメモリで
あるために、特にマルチプロセッサシステムで複数の演
算器を備えたCPUに接続して使用する場合、複数の演
算器から同時にキャッシュメモリにアクセスがあっても
従来のようにアービトレイションを行なわなくても済み
、さらに演算時間の向上が図れる。
【図面の簡単な説明】
第1図はこの発明の一実施例回路ブロック図、第2図は
上記の実施例のキャッシュメモリ、TAGメモリ部分の
さらに詳しい回路構成を示す回路ブロック図、第3図は
一般的なマルチプロセッサシステムを示すブロック図、
第4図は従来例の回路ブロック図である。 11・・・CPU 12・・・多ポートキャッシュメモリ 13・・・TAGメモリ 14・・・コントロール回路 15・・・プロセッサ側バス 16・・・プロセッサ側バスインターフェース17・・
・システムバス 18・・・システムバスインターフェース19・・・主
記憶装置

Claims (1)

  1. 【特許請求の範囲】 整数n個のポートを備えた多ポートキャッシュメモリと
    、 n+1個のポートを備えたTAGメモリと、前記TAG
    メモリの1ポートに外部バスからのアドレス信号を入力
    してアドレスヒットを調べ、アドレスヒットがあった時
    に中央処理装置(CPU)の動作を停止するように制御
    し、前記キャッシュメモリの特定のポートを前記外部バ
    スに接続するコントロール回路とを備えて成る多ポート
    キャッシュメモリ制御装置。
JP2013536A 1990-01-25 1990-01-25 多ポートキャッシュメモリ制御装置 Pending JPH03219345A (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2013536A JPH03219345A (ja) 1990-01-25 1990-01-25 多ポートキャッシュメモリ制御装置
US07/645,642 US5228135A (en) 1990-01-25 1991-01-25 Multiport cache memory control unit including a tag memory having plural address ports and a snoop address part

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013536A JPH03219345A (ja) 1990-01-25 1990-01-25 多ポートキャッシュメモリ制御装置

Publications (1)

Publication Number Publication Date
JPH03219345A true JPH03219345A (ja) 1991-09-26

Family

ID=11835878

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013536A Pending JPH03219345A (ja) 1990-01-25 1990-01-25 多ポートキャッシュメモリ制御装置

Country Status (2)

Country Link
US (1) US5228135A (ja)
JP (1) JPH03219345A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8046514B2 (en) * 2000-11-21 2011-10-25 Aspex Technology Limited Broadcasting data across a bus in which data transmission can be delayed if a snooping device is not ready to receive

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5465344A (en) * 1990-08-20 1995-11-07 Matsushita Electric Industrial Co., Ltd. Microprocessor with dual-port cache memory for reducing penalty of consecutive memory address accesses
US5434989A (en) * 1991-02-19 1995-07-18 Matsushita Electric Industrial Co., Ltd. Cache memory for efficient access with address selectors
JP3451099B2 (ja) 1991-12-06 2003-09-29 株式会社日立製作所 外部記憶サブシステム
EP0553743A1 (en) * 1992-01-31 1993-08-04 Motorola, Inc. A cache controller
US5398325A (en) * 1992-05-07 1995-03-14 Sun Microsystems, Inc. Methods and apparatus for improving cache consistency using a single copy of a cache tag memory in multiple processor computer systems
US5696935A (en) * 1992-07-16 1997-12-09 Intel Corporation Multiported cache and systems
US5353415A (en) * 1992-10-02 1994-10-04 Compaq Computer Corporation Method and apparatus for concurrency of bus operations
US5463753A (en) * 1992-10-02 1995-10-31 Compaq Computer Corp. Method and apparatus for reducing non-snoop window of a cache controller by delaying host bus grant signal to the cache controller
US5513335A (en) * 1992-11-02 1996-04-30 Sgs-Thomson Microelectronics, Inc. Cache tag memory having first and second single-port arrays and a dual-port array
US5414824A (en) * 1993-06-30 1995-05-09 Intel Corporation Apparatus and method for accessing a split line in a high speed cache
US5526512A (en) * 1993-09-20 1996-06-11 International Business Machines Corporation Dynamic management of snoop granularity for a coherent asynchronous DMA cache
US5680572A (en) * 1994-02-28 1997-10-21 Intel Corporation Cache memory system having data and tag arrays and multi-purpose buffer assembly with multiple line buffers
US5893921A (en) * 1995-02-10 1999-04-13 International Business Machines Corporation Method for maintaining memory coherency in a computer system having a cache utilizing snoop address injection during a read transaction by a dual memory bus controller
JPH08263376A (ja) * 1995-03-22 1996-10-11 Nec Ibaraki Ltd キャッシュ制御装置
US5652859A (en) * 1995-08-17 1997-07-29 Institute For The Development Of Emerging Architectures, L.L.C. Method and apparatus for handling snoops in multiprocessor caches having internal buffer queues
US5659710A (en) * 1995-11-29 1997-08-19 International Business Machines Corporation Cache coherency method and system employing serially encoded snoop responses
US5809537A (en) * 1995-12-08 1998-09-15 International Business Machines Corp. Method and system for simultaneous processing of snoop and cache operations
US5825788A (en) 1996-05-20 1998-10-20 Micron Technology Inc. Data ordering for cache data transfer
WO1998014951A1 (en) * 1996-09-30 1998-04-09 Sun Microsystems, Inc. Computer caching methods and apparatus
US5781924A (en) * 1996-09-30 1998-07-14 Sun Microsystems, Inc. Computer caching methods and apparatus
US6009481A (en) * 1996-09-30 1999-12-28 Emc Corporation Mass storage system using internal system-level mirroring
US5991819A (en) * 1996-12-03 1999-11-23 Intel Corporation Dual-ported memory controller which maintains cache coherency using a memory line status table
US5862154A (en) 1997-01-03 1999-01-19 Micron Technology, Inc. Variable bit width cache memory architecture
US6076147A (en) * 1997-06-24 2000-06-13 Sun Microsystems, Inc. Non-inclusive cache system using pipelined snoop bus
US6061766A (en) * 1997-06-24 2000-05-09 Sun Microsystems, Inc. Non-inclusive cache method using pipelined snoop bus
US6216218B1 (en) 1997-11-03 2001-04-10 Donald L. Sollars Processor having a datapath and control logic constituted with basis execution blocks
US6067601A (en) * 1997-11-03 2000-05-23 Brecis Communications Cache memory based instruction execution
US6549984B1 (en) * 1997-12-17 2003-04-15 Intel Corporation Multi-bus access cache
US6202128B1 (en) * 1998-03-11 2001-03-13 International Business Machines Corporation Method and system for pre-fetch cache interrogation using snoop port
US6094605A (en) * 1998-07-06 2000-07-25 Storage Technology Corporation Virtual automated cartridge system
US6778444B1 (en) * 2000-08-18 2004-08-17 Intel Corporation Buffer for a split cache line access
US6928517B1 (en) * 2000-08-30 2005-08-09 Unisys Corporation Method for avoiding delays during snoop requests
US6671781B1 (en) * 2000-12-08 2003-12-30 Lsi Logic Corporation Data cache store buffer
US7017054B2 (en) * 2002-07-02 2006-03-21 Dell Products L.P. Mirrored tag snoop optimization
US7958314B2 (en) * 2007-12-18 2011-06-07 International Business Machines Corporation Target computer processor unit (CPU) determination during cache injection using input/output I/O) hub/chipset resources
US8510509B2 (en) * 2007-12-18 2013-08-13 International Business Machines Corporation Data transfer to memory over an input/output (I/O) interconnect
US9454482B2 (en) * 2013-06-27 2016-09-27 Apple Inc. Duplicate tag structure employing single-port tag RAM and dual-port state RAM
US9824024B1 (en) * 2014-10-31 2017-11-21 Altera Corporation Configurable storage blocks with embedded first-in first-out and delay line circuitry

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01145746A (ja) * 1987-12-01 1989-06-07 Matsushita Electric Ind Co Ltd キャッシュ・メモリー
JPH01280860A (ja) * 1988-05-06 1989-11-13 Hitachi Ltd マルチポートキヤツシユメモリを有するマルチプロセツサシステム

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4493033A (en) * 1980-04-25 1985-01-08 Data General Corporation Dual port cache with interleaved read accesses during alternate half-cycles and simultaneous writing
US4811280A (en) * 1983-06-16 1989-03-07 American Telephone And Telegraph Company Dual mode disk controller
US4604683A (en) * 1984-12-10 1986-08-05 Advanced Computer Communications Communication controller using multiported random access memory
JPS6353678A (ja) * 1986-08-22 1988-03-07 Hitachi Ltd ベクトル処理装置
JPH0668735B2 (ja) * 1987-02-09 1994-08-31 日本電気アイシーマイコンシステム株式会社 キヤツシユメモリ−
US4905141A (en) * 1988-10-25 1990-02-27 International Business Machines Corporation Partitioned cache memory with partition look-aside table (PLAT) for early partition assignment identification
US5014247A (en) * 1988-12-19 1991-05-07 Advanced Micro Devices, Inc. System for accessing the same memory location by two different devices
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
US5119485A (en) * 1989-05-15 1992-06-02 Motorola, Inc. Method for data bus snooping in a data processing system by selective concurrent read and invalidate cache operation

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01145746A (ja) * 1987-12-01 1989-06-07 Matsushita Electric Ind Co Ltd キャッシュ・メモリー
JPH01280860A (ja) * 1988-05-06 1989-11-13 Hitachi Ltd マルチポートキヤツシユメモリを有するマルチプロセツサシステム

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8046514B2 (en) * 2000-11-21 2011-10-25 Aspex Technology Limited Broadcasting data across a bus in which data transmission can be delayed if a snooping device is not ready to receive

Also Published As

Publication number Publication date
US5228135A (en) 1993-07-13

Similar Documents

Publication Publication Date Title
JPH03219345A (ja) 多ポートキャッシュメモリ制御装置
US7469321B2 (en) Software process migration between coherency regions without cache purges
KR100286962B1 (ko) 캐쉬 제어기
US5056002A (en) Cache memory for use with multiprocessor systems
US5895487A (en) Integrated processing and L2 DRAM cache
US5696937A (en) Cache controller utilizing a state machine for controlling invalidations in a network with dual system busses
US20040268044A1 (en) Multiprocessor system with dynamic cache coherency regions
CN101925881A (zh) 多处理器系统以及多处理器系统的同步方法
US4835684A (en) Microcomputer capable of transferring data from one location to another within a memory without an intermediary data bus
US6101589A (en) High performance shared cache
JP2825906B2 (ja) 計算機システム
JPH01280860A (ja) マルチポートキヤツシユメモリを有するマルチプロセツサシステム
EP1030243B1 (en) Optimized hardware cleaning function for virtual index virtual tag data cache
JPH04102948A (ja) データ処理システム及び方法
JP2523814B2 (ja) ム―ブアウト・システム
US5652915A (en) System for controlling mode of operation of a data cache based on storing the DMA state of blocks by setting the DMA state to stall
US20070168646A1 (en) Data exchange between cooperating processors
JPH0528038A (ja) キヤツシユメモリ制御方式
JPH1139214A (ja) マルチプロセッサシステムの共有メモリ制御方式
JPH0793215A (ja) 半導体記憶装置
JP3299663B2 (ja) 演算装置
JPS63155254A (ja) 情報処理装置
JPH01145746A (ja) キャッシュ・メモリー
JPS6267648A (ja) 排他制御命令処理方式
JP2001175533A (ja) プロセッサ