JPH0756844A - システムメモリを有するバスをベースにしたコンピュータシステムに使用するためのマスタバスマスタおよびバスをベースにしたコンピュータシステム - Google Patents

システムメモリを有するバスをベースにしたコンピュータシステムに使用するためのマスタバスマスタおよびバスをベースにしたコンピュータシステム

Info

Publication number
JPH0756844A
JPH0756844A JP6137451A JP13745194A JPH0756844A JP H0756844 A JPH0756844 A JP H0756844A JP 6137451 A JP6137451 A JP 6137451A JP 13745194 A JP13745194 A JP 13745194A JP H0756844 A JPH0756844 A JP H0756844A
Authority
JP
Japan
Prior art keywords
data
bus
cache
master
bus master
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
JP6137451A
Other languages
English (en)
Inventor
Uwe Kranich
ウベ・クラニヒ
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.)
Advanced Micro Devices Inc
Original Assignee
Advanced Micro Devices Inc
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 Advanced Micro Devices Inc filed Critical Advanced Micro Devices Inc
Publication of JPH0756844A publication Critical patent/JPH0756844A/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/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
    • G06F12/0833Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means in combination with broadcast means (e.g. for invalidation or updating)

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)【要約】 【目的】 付加のキャッシュを備えたバスマスタの存在
を検出して、不必要なデータ伝送を回避する方法および
装置を提供する。 【構成】 いずれのキャッシュを備えたスレーブバスマ
スタもシステムメモリのデータをキャッシュしている出
力で制御ラインに結合され、出力で信号を発するように
構成され、制御ラインを予め定められた状態に駆動して
それらがデータをキャッシュしていることを示す。マス
タバスマスタは制御ラインの状態を検出し、局部キャッ
シュ装置にバッファされているデータが制御ラインの状
態に基づいて共用されるかどうかを判断する。制御ライ
ンの状態が他のキャッシュを備えたバスマスタの存在を
示すならば、マスタバスマスタは自動的にそれが修正す
るデータを広く伝え、そうでなければ修正されたデータ
によって占有されたキャッシュのスペースが新しいデー
タのために必要とされているときシステムメモリに戻っ
て修正されたデータを書込む。

Description

【発明の詳細な説明】
【0001】
【発明の分野】本発明は、キャッシュ動作を制御する装
置および方法に関し、より特定的には、キャッシュを備
えるバスマスタを有するコンピュータシステムのバスア
クティビティを低減するための装置および方法に関す
る。
【0002】
【発明の背景】バスマスタは、バスをベースにしたコン
ピュータシステムのシステムメモリとの読み書き処理を
起動させ得る装置である。そのような装置の一例として
プロセッサがある。プロセッサは、システムメモリから
命令を検索し、検索された命令によって指令されたよう
にデータを読み、処理し、システムメモリに書込む。
【0003】コンピュータシステムの性能を増すための
1つの方法は、システム中のシステムメモリとバスマス
タとの間に転送されるデータの速度を増やすことであ
る。これはシステムメモリのための高速スピードメモリ
チップを使用することで達成される。しかし、メモリの
コストはメモリの速度に伴って莫大に増大する。このよ
うに、入手可能な最高速のメモリを使用することは、特
に多量のシステムメモリを必要とするシステムでは、実
用的ではない。結果として、比較的高速のメモリ(キャ
ッシュメモリ)の比較的小さなバンクを、バスマスタと
システムメモリのより大きく遅いバンクとの間のバッフ
ァとして使用することでシステム性能が大いに改良され
得ることがわかってきた。
【0004】システムメモリとバスマスタのキャッシュ
メモリとの間のデータ転送は、キャッシュ制御装置によ
って制御される。キャッシュ制御装置は、それがそのた
めに働くバスマスタの必要に基づきキャッシュメモリを
管理する。たとえば、プロセッサが現在プロセッサのキ
ャッシュメモリに記憶されていないデータを必要とする
なら、そのデータはより遅いシステムメモリからプロセ
ッサのキャッシュメモリに転送されなければならない。
一旦そのデータがプロセッサのキャッシュメモリに入る
と、そのプロセッサは後続の動作のためにそのデータを
より速いキャッシュメモリの速度でアクセスできるだろ
う。さらに、プロセッサがキャッシュメモリにない情報
を必要とし、すべてのキャッシュメモリブロックがすで
に割当てられているならば、キャッシュ制御装置は、キ
ャッシュメモリの修正されていないデータの上に書込む
か修正されたデータをシステムメモリに戻して記憶する
かのいずれかによって、新しく要求されたデータのため
に記憶スペースを開放する。
【0005】キャッシュを備えたプロセッサおよびキャ
ッシュを備えたI/Oデバイス等の、1つより多いキャ
ッシュを備えたバスマスタを有するシステムでは、同じ
データのいくつかのバージョンが存在するかもしれな
い。たとえば、プロセッサのキャッシュメモリおよびI
/Oデバイスのキャッシュメモリはシステムメモリの同
じブロックから生じるデータのコピーを保持するかもし
れない。1つより多いキャッシュを備えるバスマスタで
得られるデータは「共用データ」と呼ばれる。もし、I
/Oデバイスまたはプロセッサのいずれかがその局部キ
ャッシュメモリで共用データのブロックを修正するなら
ば、データの他のすべてのコピーは、他のバスマスタの
キャッシュにあるデータのどのコピーも含めて、「古
く」なる(もはや新しくない)。
【0006】古いデータの使用を避けるため、共用デー
タのブロックを修正するバスマスタはデータの修正され
たバージョンをシステムのすべての他のキャッシュを備
えたバスマスタに広く伝えなければならない。しかしな
がら、この伝える過程は本質的に多量の装置間のコミュ
ニケーションを必要とする。そのようなコミュニケーシ
ョンは、典型的にはバスマスタをシステムメモリに接続
する同じバスを介して行なわれる。結果としてこれらの
バスは混雑し、より遅いデータ伝送速度になり、システ
ムの性能を落とすことになる。
【0007】前述のことを鑑みて、キャッシュを備えた
バスマスタに他のキャッシュを備えたバスマスタがその
システムに存在するかどうかを知らせる装置および方法
が明らかに所望される。さらに、バスマスタをシステム
メモリに接続するバスを介するデータトラフィックを増
やさずに、キャッシュを備えたバスマスタがシステム上
にあるかどうかを、キャッシュを備えたバスマスタに決
定させる装置および方法が明らかに所望される。最後
に、バスマスタをシステムメモリに接続するバスを介す
るデータトラフィックを増やさずにデータブロックの共
用状況を決定する装置が明らかに所望される。
【0008】
【発明の概要】本発明の第1の局面に従えば、システム
メモリを有するバスをベースにしたコンピュータシステ
ムに使用される、バスマスタが提供される。バスマスタ
は、処理ユニットと、バスによってシステムに結合され
処理ユニットに結合される局部キャッシュ装置とを含
む。バスマスタは処理ユニットとシステムメモリとの間
でデータをキャッシュする。バスマスタは制御ラインに
結合されて制御ラインの論理状態を検出する入力をさら
に含む。制御ラインの論理状態はキャッシュを備えた別
のバスマスタがコンピュータシステムにあるかどうかを
示す。局部キャッシュ装置は入力に結合され、論理ライ
ンの論理状態に応答してバスとキャッシュメモリとの間
のデータ伝達を制御する。
【0009】本発明の別の局面に従えば、バスをベース
にしたコンピュータシステムが提供される。コンピュー
タシステムはシステムメモリと、システムメモリに結合
されたバスと、論理状態を有する制御ラインとを含む。
論理状態は最初第1の状態である。そのシステムは、処
理ユニットと、制御ラインに結合され、制御ラインの状
態を検出するための検出手段と、バス、検出手段および
処理ユニットに結合された局部キャッシュとを含むマス
タバスマスタをさらに含む。局部キャッシュ装置は、処
理ユニットとシステムメモリとの間でデータをキャッシ
ュする。局部キャッシュ装置は、制御ラインの状態に応
答して処理ユニットとシステムメモリとの間のデータの
伝達を制御する。
【0010】本発明のさらに別の局面に従えば、バスを
ベースにしたコンピュータシステムにおいてキャッシュ
するバスマスタによる不必要なデータの伝達を避けるた
めの方法が提供される。その方法は、制御ラインに第1
の最初の論理状態を与えるステップと、キャッシュする
バスマスタを制御ラインに結合するステップと、第2の
バスマスタを制御ラインに結合するステップとを含む。
その方法は、第2のバスマスタがデータをキャッシュし
ているとき第2のバスマスタに制御ラインを第2の状態
に駆動させるステップと、キャッシュするバスマスタに
制御ラインが第1の状態または第2の状態であるか検出
させるステップと、制御ラインが第2の状態であるとき
のみキャッシュするバスマスタが修正されたデータを広
く伝えることを引起すステップとをさらに含む。
【0011】
【詳しい説明】新規であると考えられる本発明の特徴は
前掲の請求項で詳細に述べられている。この発明はさら
なる目的および利点とともに添付図面に関する次の説明
を参照することによって理解されるであろう。いくつか
の図面において同様の参照数字は同様の要素を表わして
いる。
【0012】図1を参照して、本発明を具体化するコン
ピュータシステム10がブロック図で示されている。コ
ンピュータシステム10は一般にシステムメモリ12
と、マスタバスマスタ16と、複数のスレーブバスマス
タ18および20とを含む。バスマスタ16、18およ
び20は多ビットバス14によってメモリ12および互
いにさらに結合されている。バスマスタ16および18
は制御ライン22によって互いにさらに結合されてい
る。スレーブバスマスタ18は制御ライン22に出力2
8によって結合され、マスタバスマスタ16は制御ライ
ンに入力26によって結合される。
【0013】スレーブバスマスタ18は局部キャッシュ
装置38を備えており、制御ライン22を特定の状態
に、たとえば論理HIGHに、出力28の制御信号によ
って駆動し、バスマスタ18がそれ自身とシステムメモ
リ12との間でデータ転送をキャッシュしているかどう
かを示すように構成されている。たとえば、制御ライン
22は最初はLOWで、バスマスタ18は、もしバスマ
スタ18がその局部キャッシュ装置38でデータをキャ
ッシュしている時には制御信号を発生して制御ライン2
2をHIGHに駆動するように構成されていてもよい。
スレーブバスマスタ20は局部キャッシュ装置を備えて
おらず、制御ライン22に結合されていない。したがっ
てスレーブバスマスタ20は制御ライン22の状態に影
響を与えない。
【0014】マスタバスマスタ16は局部キャッシュ装
置34を備えており、さらに入力26で制御ライン22
の状態を検出するように構成されている。制御ライン2
2の状態が、スレーブバスマスタがデータをキャッシュ
していることを示すならば、マスタバスマスタ16が局
部キャッシュ装置34内でいずれかのデータを修正する
と、マスタバスマスタ16は修正されたデータをバス1
4を介してシステムの他のバスマスタに伝える。そうで
はなくて、制御ライン22の状態がどのスレーブバスマ
スタもデータをキャッシュしていないことを示すなら、
バスマスタ16はその局部キャッシュ装置34でデータ
を修正しても、自動的にデータを送ることはしない。
【0015】システム10がたった2つのスレーブバス
マスタ18および20を備えて示されているが、これに
代えてシステム10はいくつのスレーブマスタを含んで
もよい。このようにして、制御ライン22の状態はマス
タバスマスタ16に、システム10のいくつかのスレー
ブバスマスタのうちいずれかがデータをキャッシュして
いるかどうかを示す。
【0016】マスタバスマスタ16が制御ライン22の
状態を検出するので、データをキャッシュしているのが
システム10のバスマスタだけであるとき、バス14の
データトラフィックは大いに減らされる。具体的には、
マスタバスマスタが他のキャッシュするバスマスタがシ
ステムにあることを検出したときだけ自動的に修正され
たデータを送るので、バス14を介する不必要なデータ
の伝送が回避される。
【0017】本発明の好ましい実施例ではマスタバスマ
スタ16はキャッシュを備えた中央処理装置(CPU)
である。しかしマスタバスマスタ16は代替的にキャッ
シュを備えたバスマスタのいかなるタイプのものでもよ
い。
【0018】図2を参照して、マスタバスマスタ16を
ブロック図で詳細に示している。マスタバスマスタ16
は一般に処理ユニット118および局部キャッシュ装置
34を含む。処理ユニット118は一般にマスタバスマ
スタ16の構成要素のうちデータを処理するものを表わ
している。たとえば、マスタバスマスタ16がCPUで
あるなら、処理ユニット118はCPUの実行ユニット
となるだろう。
【0019】局部キャッシュ装置34はキャッシュメモ
リ114、キャッシュコントローラ116およびバスイ
ンタフェースユニット130を含む。キャッシュメモリ
114は、複数の多ビットバス122および124によ
って処理ユニット118に結合され、複数の多ビットバ
ス126および128によってバスインタフェースユニ
ット130に結合される。さらに、キャッシュメモリ1
14は、複数の多ビットバス132、134および14
2によってキャッシュ制御装置116に結合される。
【0020】キャッシュ制御装置116は多ビットバス
136によって処理ユニット118に結合され、多ビッ
トバス138によってバスインタフェースユニット13
0に結合される。キャッシュ制御装置はまた入力26で
制御ライン22に結合される。そのバスインタフェース
ユニット130はシステムメモリ12に結合され、スレ
ーブバスマスタ18および20にバス14によって結合
される。
【0021】キャッシュメモリ114はシステムメモリ
12と処理ユニット118との間に配設され、最初はシ
ステムメモリ12にあるデータへのより速いアクセスを
処理ユニット118に与える。キャッシュメモリは、デ
ータを記憶するための複数のデータブロック115と、
キャッシュメモリ114に現在バッファされているデー
タの状況を表わすデータを記憶するための状況記憶14
4とを含む。
【0022】バスインタフェースユニット130は、シ
ステムメモリ12とスレーブバスマスタ18および20
との間のように、キャッシュメモリ114と外部構成要
素との間でデータ転送を行なう。バスインタフェースユ
ニット130はバス138を介してキャッシュ制御装置
116から受取られる転送信号に応答して、データ転送
を行なう。
【0023】キャッシュ制御装置116は、データ転送
を発生させてバスインタフェースユニット130を制御
する。キャッシュ制御装置は、バス136を介して処理
ユニット118から受け取られるデータリクエスト信号
と、入力26で検出される制御ライン22の状態と、バ
ス132を介して検出されるキャッシュメモリ114の
状況とに応答して、データ転送信号を発生させる。
【0024】キャッシュメモリ114のブロック115
内で、データの状況が変化するとき、キャッシュ制御装
置116は状況記憶装置144内の状況情報を更新す
る。たとえば、キャッシュメモリ114のブロック11
5の各々にあるデータの状況を表わす状況情報を、キャ
ッシュ制御装置116はキャッシュメモリ114の状況
記憶144で維持するかもしれない。各々のキャッシュ
データブロックのための状況情報は典型的には、ブロッ
クが新しいデータを受取れるかどうか(「利用状
況」)、ブロック内のデータが修正されたかどうか
(「修正状況」)、ブロック内のデータが共用されるか
または排他的であるかどうか(「共用状況」)、どのく
らい最近にブロック内のデータが処理ユニット118に
よってアクセスされたか(「アクセス状況」)、および
キャッシュブロックに含まれるデータはシステムメモリ
12のどのブロックから発したのか(「ソース情報」)
を含む。
【0025】マスタバスマスタ16の動作は、図3およ
び図4を参照して述べられる。処理ユニット118がデ
ータを必要とするとき、処理ユニット118はステップ
200でデータリクエスト信号をキャッシュ制御装置1
16に送る。ステップ202では、キャッシュ制御装置
116がバス132を介してキャッシュメモリ114の
状況を読出し、要求されたデータが現在キャッシュメモ
リ114にあるかどうかを決定する。もしあれば、キャ
ッシュ制御装置116は制御信号をバス142を介して
キャッシュメモリ114に伝送し、キャッシュメモリ1
14がバス122を介して要求されたデータをステップ
204でプロセスユニット118に送ることを引起す。
そしてキャッシュ制御装置116は、ステップ206で
状況更新信号をバス134を介してキャッシュメモリ1
14の状況記憶144に送り、要求されたデータがアク
セスされたことを示す。
【0026】もし要求されたデータが現在キャッシュメ
モリ114にないならば、ステップ208でキャッシュ
制御装置116は、バス132を介してキャッシュメモ
リ114の状況を読出し、キャッシュメモリ114に要
求されたデータが入る利用可能なスペースがあるかどう
かを決定する。もし利用可能なスペースがあるなら、キ
ャッシュ制御装置116はデータ転送信号をバスインタ
フェースユニット130に送り、バスインタフェースが
システムメモリ12から要求されたデータを読出して、
要求されたデータをバス126を介してステップ210
で利用可能なスペースに書込むことを引起す。
【0027】もし、ステップ208でキャッシュメモリ
114に要求されたデータの入る利用可能なスペースが
がないと判断されると、キャッシュ制御装置116は、
バスインタフェースユニット130が要求されたデータ
を現在キャッシュメモリにあるデータの上に書込むこと
を引起さなければならないだろう。しかし、データが上
書きされる前に、ステップ212において、キャッシュ
制御装置はバス132から、上書きされるべきデータを
含むブロックの修正された状況を読取る。もし上書きさ
れるべきデータがキャッシュメモリ114に記憶されて
から修正されたとキャッシュ制御装置が判断すれば、キ
ャッシュ制御装置116はバス138を介してデータ転
送信号を送り、ステップ214でバスインタフェースユ
ニット130がバス128からキャッシュメモリ114
から修正されたデータを回復することを引起こしかつ、
ステップ210においてキャッシュメモリ114に上書
きされる前に、バス14を介してシステムメモリ12に
修正されたデータを戻って書込むことを引起す。もしス
テップ212で上書きされるべきデータが修正されなか
ったと判断されると、その処理は直接ステップ210に
進む。
【0028】要求されたデータがキャッシュメモリ11
4にロードされていれば、キャッシュ制御装置116は
ステップ216において、バス134を介してデータを
受取るキャッシュブロックの状況を更新する。具体的に
は、利用状況は、ブロックが新しいデータを受入れるの
に利用できないことを示すために更新され、修正状況
は、データが修正されていないことを示すために更新さ
れ、アクセス状況は、データがアクセスされなかったこ
とを示すために更新され、ソース情報は、データが発し
ているシステムメモリ12の位置を反映するために更新
される。
【0029】共用状況は、ステップ218、220およ
び222に従って更新される。ステップ218では、制
御ライン22の状態が入力26でキャッシュ制御装置1
16によって検出され、他にキャッシュしているバスマ
スタがあるかどうかが判断される。制御ライン22の状
態が、他のキャッシュするバスマスタがシステムにない
ことを示すなら、要求されたデータがステップ220で
排他的であることを示すために、共用状況は更新され
る。そうでなければステップ222で要求されたデータ
が共用されることを示すために、共用データは更新され
る。
【0030】一旦状況が更新されると、処理はステップ
204に進み、キャッシュ制御装置116は制御信号を
バス142を介してキャッシュメモリ114に送り、要
求されたデータがバス122を介してキャッシュメモリ
114から処理ユニット118に送られることを引起こ
す。キャッシュ制御装置116はまた、要求されたデー
タが処理ユニット118に送られた時を示すためにステ
ップ206で要求されたデータを保持しているキャッシ
ュブロックのアクセス状況を更新する。
【0031】処理ユニット118が、ステップ302
で、データを修正するとステップ204で、処理ユニッ
ト118は修正されたデータをバス124を介してキャ
ッシュメモリ114のブロックに送り、そこから修正さ
れたデータが発する。キャッシュ制御装置116はそれ
から、ステップ306でバス134から修正されたデー
タを受取るキャッシュブロックの共用状況を読取る。も
しキャッシュ制御装置がステップ306で修正されたデ
ータが共用されていると判断すると、キャッシュ制御装
置116はデータ転送信号をバスインタフェースユニッ
ト130に送り、バスインタフェースユニット130が
バス128からキャッシュメモリ114からの修正され
たデータを読取ることを引起こしかつ、ステップ308
で修正されたデータをバス14を介してシステムメモリ
12と、スレーブバスマスタ18および20と、システ
ムの他のバスマスタとに伝えることを引起こす。修正さ
れたデータがバス14を介して伝えられることを引起こ
した後、キャッシュ制御装置116はステップ310で
バス134を介して、データが修正されなかったことを
示すために、修正されたデータを含むキャッシュブロッ
クの修正された状況を更新する。広く伝えた後に、デー
タのすべての存在するバージョンは修正されたものを反
映するのでそのデータは「修正されていない」と考えら
れる。
【0032】一方、ステップ306で、修正されたデー
タが排他的である(共用されない)と判断されると、修
正されたデータはバス14には広がらない。むしろ、上
記のプロセスに従って、それはシステムメモリ12に戻
って書込まれ、後に要求されるデータのためにキャッシ
ュメモリ114のスペースを開放する。
【0033】再度図2を参照して、スレーブバスマスタ
18は、処理ユニット148と局部キャッシュ装置38
とを含む。局部キャッシュ装置38の構成はマスタバス
マスタ16の局部キャッシュ装置34に対応するが、ス
レーブバスマスタ18の局部キャッシュ装置38は出力
28で制御ライン22に結合され、出力28で信号を発
生して制御ライン22を予め定められた状況に駆動して
スレーブバスマスタ18がデータをキャッシュしている
かどうかを示すことを例外としている。また、マスタバ
スマスタ16と異なり、スレーブバスマスタ18は、シ
ステムにある別のバスマスタがデータをキャッシュして
いると仮定している(たとえばマスタバスマスタ)。ゆ
えにスレーブバスマスタ18の局部キャッシュ装置38
は、そのキャッシュのすべてのデータを共用データとし
て示す。結果として、スレーブバスマスタ18はその局
部キャッシュ装置38で修正するどのデータも自動的に
バス14を介して広く伝える。
【0034】本発明の特定の具体例はすでに示され、述
べられたが修正はなされてよい。ゆえに前掲の請求項で
発明の真の精神および範囲にあるそのすべての変更およ
び修正を含むことが意図されている。
【図面の簡単な説明】
【図1】本発明の具体例に従って構成されている複数の
バスマスタを有するコンピュータシステムを表わすブロ
ック図である。
【図2】請求項1のコンピュータシステムを非常に詳細
に表わすブロック図である。
【図3】本発明の1つの具体例に従ってデータ要求がマ
スタバスマスタの処理ユニットによって出されるときの
マスタバスマスタの動作を表わす制御フロー図である。
【図4】本発明の具体例に従ってデータがマスタバスマ
スタの処理ユニットによって修正されたときのマスタバ
スマスタの動作を示す制御フロー図である。
【符号の説明】
14 バス 16 マスタバスマスタ 18 スレーブマスタバスマスタ 34 局部キャッシュ装置 38 局部キャッシュ装置 22 制御ライン

Claims (17)

    【特許請求の範囲】
  1. 【請求項1】 システムメモリを有するバスをベースに
    したコンピュータシステムに使用するためのマスタバス
    マスタであって、マスタバスマスタはデータをキャッシ
    ュするために、および単独のまたはデータをキャッシュ
    する少なくとも他の1つのバスマスタに関連した動作の
    ために構成されており、 処理ユニットと、 バスによって前記システムメモリに結合され、前記処理
    ユニットに結合される局部キャッシュ装置とを含み、前
    記キャッシュ装置は前記処理ユニットとシステムメモリ
    との間のデータをキャッシュするためのキャッシュメモ
    リを含んでおり、さらに制御ラインに結合され、制御ラ
    インの論理状態を検出するための入力手段を含み、その
    論理状態はデータをキャッシュする他の1つのバスマス
    タが前記コンピュータシステムにあるかどうかを示し、
    前記局部キャッシュ装置は、前記入力手段に結合され前
    記論理状況に応答して前記バスと前記キャッシュメモリ
    との間のデータの伝達を制御する制御手段を含む、マス
    タバスマスタ。
  2. 【請求項2】 前記局部キャッシュ装置制御手段はキャ
    ッシュ制御装置を含む、請求項1に記載のバスマスタ。
  3. 【請求項3】 前記キャッシュメモリが複数のデータブ
    ロックおよび前記複数のデータブロックの各々のデータ
    ブロックの状況を表わす状況情報を記憶する状況記憶を
    含む、請求項2に記載のバスマスタ。
  4. 【請求項4】 前記状況情報は、前記複数のデータブロ
    ックの各々にあるデータが共用されるか排他的であるか
    を表わす共用状況情報を含む、請求項3に記載のバスマ
    スタ。
  5. 【請求項5】 前記キャッシュ制御装置が、前記論理状
    況に応答して前記状況記憶に前記共用状況情報を維持す
    る、請求項4に記載のバスマスタ。
  6. 【請求項6】 前記処理ユニットが前記キャッシュメモ
    リにあるデータを修正するために配設され、データをキ
    ャッシュする他の1つのバスマスタが前記コンピュータ
    システムにあると前記論理状況が示すとき、前記バスを
    介して前記バスマスタによって修正される前記データを
    伝えるために前記キャッシュ制御装置が配列される、請
    求項5に記載のバスマスタ。
  7. 【請求項7】 前記マスタバスマスタがマイクロプロセ
    ッサである、請求項6に記載のマスタバスマスタ。
  8. 【請求項8】 1)システムメモリと、 2)前記システムメモリに結合されたバスと、 3)論理状況を有する制御ラインとを含み、前記論理状
    況は最初第1の状態であって、さらに 4)マスタバスマスタを備え、前記マスタバスマスタは
    処理ユニットと、 前記制御ラインに結合され、前記制御ラインの状況を検
    出するための検出手段と、 前記バス、前記検出手段、および前記処理ユニットに結
    合され、前記処理ユニットと前記システムメモリとの間
    のデータをキャッシュするための、局部キャッシュ装置
    とを含み、前記局部キャッシュ装置が、前記制御ライン
    の前記状態に応答して、前記処理ユニットと前記システ
    ムメモリとの間のデータの伝達を制御する、バスをベー
    スにしたコンピュータシステム。
  9. 【請求項9】 前記局部キャッシュシステムが、 状況記憶を有するキャッシュメモリを含み、前記状況記
    憶は前記キャッシュメモリに現在あるデータの状況を表
    わす状況データを保持し、さらに前記キャッシュメモリ
    に結合され、前記キャッシュメモリと前記システムメモ
    リとの間のデータ転送を制御し、前記状況データを維持
    するためのキャッシュ制御装置を含む、請求項8に記載
    の回路。
  10. 【請求項10】 前記状況データが共用状況データを含
    み、前記キャッシュ制御装置が前記制御ラインの前記状
    態に応答して、前記共用状況データを維持する、請求項
    9に記載のコンピュータシステム。
  11. 【請求項11】 前記キャッシュ制御装置は前記共用状
    況データを示し、前記状態が前記第1の状態であるとき
    キャッシュメモリの選択されたデータブロックのデータ
    は排他的であることを示し、前記状態が前記第1の状態
    でないとき前記キャッシュメモリの前記選択されたデー
    タブロックのデータが共用されることを示す、請求項1
    0に記載のコンピュータシステム。
  12. 【請求項12】 前記バスによって前記システムメモリ
    に結合されるスレーブバスマスタをさらに含み、前記ス
    レーブバスマスタが、前記スレーブバスマスタが前記シ
    ステムメモリからデータをキャッシュするとき前記制御
    ラインに結合され、前記制御ラインを第2の状態に駆動
    するための駆動手段を含む、請求項8に記載のコンピュ
    ータシステム。
  13. 【請求項13】 バスをベースにしたコンピュータシス
    テムのキャッシュするバスマスタによる、不必要なデー
    タ伝送を防止する方法であって、 制御ラインに第1の初期論理状態を与えるステップと、 前記キャッシュするバスマスタを前記制御ラインに結合
    するステップと、 第2のバスマスタを前記制御ラインに結合するステップ
    と、 前記第2のバスマスタがデータをキャッシュするとき前
    記第2のバスマスタが前記制御ラインを第2の状態に駆
    動するのを引起こすステップと、 前記キャッシュするバスマスタが前記制御ラインは前記
    第1の状態または前記第2の状態にあるかどうか検出す
    るのを引起すステップと、 前記制御ラインが前記第2の状態にあるときのみ、前記
    キャッシュするバスマスタが修正されたデータを伝える
    のを引起すステップとを含む、方法。
  14. 【請求項14】 前記キャッシュするバスマスタおよび
    前記第2のバスマスタが、バスによってシステムメモリ
    に結合され、前記制御ラインが前記第2の状態にあると
    き前記キャッシュするバスマスタが修正されたデータを
    前記第2のマスタに前記バスを介して伝えることを引起
    すステップをさらに含む、請求項13に記載の方法。
  15. 【請求項15】 前記キャッシュするバスマスタは、処
    理ユニットおよびデータを記憶するためのキャッシュメ
    モリを含み、前記キャッシュメモリは前記キャッシュメ
    モリに記憶されたデータの状況を示す状況データを記憶
    するための状況記憶を有し、前記処理ユニットがデータ
    を要求するとき前記状況データを読取るステップと、前
    記要求されたデータが前記キャッシュメモリにあるかど
    うかを前記状況データに基づいて決定するステップとを
    さらに含む、請求項14に記載の方法。
  16. 【請求項16】 前記要求されたデータが前記キャッシ
    ュメモリにないとき、前記要求されたデータを前記シス
    テムメモリから前記バスを介して検索するステップと、
    前記要求され検索されたデータを前記キャッシュメモリ
    に記憶するステップとをさらに含む、請求項15に記載
    の方法。
  17. 【請求項17】 前記制御ラインが前記第1の論理状態
    にあるとき、前記要求され検索されたデータは排他的で
    あるのを示すために前記状況データを更新するステップ
    と、前記制御ラインが前記第2の論理状態にあるとき前
    記要求され検索されたデータが共有されることを示すた
    めに前記状況データを更新するステップとをさらに含
    む、請求項16に記載の方法。
JP6137451A 1993-06-22 1994-06-20 システムメモリを有するバスをベースにしたコンピュータシステムに使用するためのマスタバスマスタおよびバスをベースにしたコンピュータシステム Pending JPH0756844A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US081080 1993-06-22
US08/081,080 US5546560A (en) 1993-06-22 1993-06-22 Device and method for reducing bus activity in a computer system having multiple bus-masters

Publications (1)

Publication Number Publication Date
JPH0756844A true JPH0756844A (ja) 1995-03-03

Family

ID=22161980

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6137451A Pending JPH0756844A (ja) 1993-06-22 1994-06-20 システムメモリを有するバスをベースにしたコンピュータシステムに使用するためのマスタバスマスタおよびバスをベースにしたコンピュータシステム

Country Status (4)

Country Link
US (1) US5546560A (ja)
EP (1) EP0631236B1 (ja)
JP (1) JPH0756844A (ja)
DE (1) DE69423266T2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7130961B2 (en) 2000-10-17 2006-10-31 Hitachi, Ltd. Disk controller and method of controlling the cache

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102004006485A1 (de) * 2004-02-10 2005-08-25 Adidas International Marketing B.V. Bekleidungsstück
US7818507B2 (en) * 2005-04-04 2010-10-19 Sony Computer Entertainment Inc. Methods and apparatus for facilitating coherency management in distributed multi-processor system

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4959777A (en) * 1987-07-27 1990-09-25 Motorola Computer X Write-shared cache circuit for multiprocessor system
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
US5265235A (en) * 1990-11-30 1993-11-23 Xerox Corporation Consistency protocols for shared memory multiprocessors
US5293384A (en) * 1991-10-04 1994-03-08 Bull Hn Information Systems Inc. Microprocessor bus interface protocol analyzer
US5261106A (en) * 1991-12-13 1993-11-09 S-Mos Systems, Inc. Semaphore bypass
US5388224A (en) * 1992-04-24 1995-02-07 Digital Equipment Corporation Processor identification mechanism for a multiprocessor system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7130961B2 (en) 2000-10-17 2006-10-31 Hitachi, Ltd. Disk controller and method of controlling the cache

Also Published As

Publication number Publication date
US5546560A (en) 1996-08-13
EP0631236B1 (en) 2000-03-08
DE69423266D1 (de) 2000-04-13
EP0631236A1 (en) 1994-12-28
DE69423266T2 (de) 2000-10-12

Similar Documents

Publication Publication Date Title
US5941964A (en) Bridge buffer management by bridge interception of synchronization events
US5537575A (en) System for handling cache memory victim data which transfers data from cache to the interface while CPU performs a cache lookup using cache status information
KR100252570B1 (ko) 축소된요구블로킹을갖는캐시메모리
JP3289661B2 (ja) キャッシュメモリシステム
US6105076A (en) Method, system, and program for performing data transfer operations on user data
US5524225A (en) Cache system and method for providing software controlled writeback
JPH1031625A (ja) マルチ・プロセッサ・システムにおける改良されたコピーバック性能のためのライトバック・バッファ
JPH09167116A (ja) コンピュータキャッシュシステム
JPH08249231A (ja) マルチプロセッサ・システムにおける古いデータの処理システム及び方法
JP3266470B2 (ja) 強制順序で行う要求毎ライト・スルー・キャッシュを有するデータ処理システム
US5678025A (en) Cache coherency maintenance of non-cache supporting buses
JP2675981B2 (ja) スヌープ・プッシュ・オペレーションを回避する方法
EP0835490B1 (en) Write cache for write performance improvement
JPH09179779A (ja) コンピュータシステムおよびデータ転送方法
JP3202943B2 (ja) 処理装置及びルックアサイド・キャッシュをスヌープする改善された装置及び方法
JPH0756844A (ja) システムメモリを有するバスをベースにしたコンピュータシステムに使用するためのマスタバスマスタおよびバスをベースにしたコンピュータシステム
US5862358A (en) Method and apparatus for reducing the apparent read latency when connecting busses with fixed read reply timeouts to CPUs with write-back caches
US5809534A (en) Performing a write cycle to memory in a multi-processor system
JPH0816885B2 (ja) キャッシュメモリ制御方法
JP3162459B2 (ja) データ処理装置
JPH0744459A (ja) キャッシュ制御方法およびキャッシュ制御装置
JPH04305746A (ja) キャッシュメモリ制御装置
JP3887036B2 (ja) コンピュータシステムおよびそのプロセッサの外部キャッシュに記憶したデータブロックを無効化する方法
US5752265A (en) Memory accessing in a multi-processor system using snooping
JP2001043204A (ja) キャッシュ・メモリ制御装置

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20040713

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20040803

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20041102

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20041108

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20041110

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20050419

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050705

A911 Transfer of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20050708

A912 Removal of reconsideration by examiner before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20060210