JPH065514B2 - キャッシュサポート構造 - Google Patents

キャッシュサポート構造

Info

Publication number
JPH065514B2
JPH065514B2 JP2178499A JP17849990A JPH065514B2 JP H065514 B2 JPH065514 B2 JP H065514B2 JP 2178499 A JP2178499 A JP 2178499A JP 17849990 A JP17849990 A JP 17849990A JP H065514 B2 JPH065514 B2 JP H065514B2
Authority
JP
Japan
Prior art keywords
data
block
data block
cache
shared memory
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 - Lifetime
Application number
JP2178499A
Other languages
English (en)
Other versions
JPH03118650A (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.)
Digital Equipment Corp
Original Assignee
Digital Equipment 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 Digital Equipment Corp filed Critical Digital Equipment Corp
Publication of JPH03118650A publication Critical patent/JPH03118650A/ja
Publication of JPH065514B2 publication Critical patent/JPH065514B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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

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)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Multi Processors (AREA)

Description

【発明の詳細な説明】 産業上の利用分野 本発明は、シェアドメモリリソースを備えるマルチ中央
処理装置(CPU)データ装置、更に言えば、「ライト
スルー」キャッシュを備えるCPU、「ライトバック」
キャッシュを備えるCPU、それに共通データバスを経
由するキャッシュを持たないCPU、それらCPU間に
おけるシェアドメモリの調和を、シェアドメモリリソー
スで保つ方法に関するものである。
発明の概要 1またはそれ以上のメモリリソースからのデータを共有
するためにマルチCPUやコマンドデータバスを有する
データ処理システムは、シェアドメモリや新たな入力か
らのデータ、それはCPUに直接接続されている関連す
る入力/出力デバイスからのものであるが、そのデータ
を処理し記憶するため、独自のメモリ「キャッシュ」を
有するCPUを備えている。シェアドメモリは一般に共
通バスを通じてCPUに接続されている。そのようなキ
ャッシュを備えるCPUは、それがアクセスし取得する
データのブロックを、そのCPUでも用いることが出来
るように、シェアドメモリに接続されていなければない
らない。この目的のため、CPUは「ライトスルー」あ
るいは「ライトバック」キャッシュの両方を備えている
であろう。
ライトスルーキャッシュを備えるCPUが、或るデータ
のブロックにアクセスする必要があるときは、それはそ
のブロック領域に対してリードコマンドを実行する。こ
れはシェアドメモリ内のブロックの「ブロック状態」を
変化させるものではない。データブロックの「ブロック
状態」は、この後にさらに説明する。「フリー」や「占
有」などのようなデータブロックの状態を示すものであ
る。CPUは、リードコマンドに反応し、メモリからC
PUのキャッシュ内にデータを記憶する。
データがCPUのキャッシュ内に存在する間、データブ
ロックの読み込みは、キャッシュのコピーに対して行わ
れるが、データブロックへの書き込はキャッシュのコピ
ー、そしてシェアドメモリ内の元のデータブロックそれ
ら両方を変更する。ライトコマンドは、メモリ内のシェ
アドデータブロックを更新するが、データのブロック状
態は変化させない。ネームを示すと、CPUはキャッシ
ュを通じてそしてシェアドメモリ内に書き込む。
1つ以上のCPUが同時に同一のデータブロックをキャ
ッシュすることもあるかもしれないが、キャッシュする
CPUは全て、ブロックへと向けられているライトコマ
ンドのためのバスを監視しなくてはならず、そのブロッ
クはそれぞれそのキャッシュ中にコピーを有している。
もしキャッシュされたデータスイッチへのライトコマン
ドが検出されると、そのキャッシュ中にコピーを備える
CPUはその後、コピーに対して、もはやそれは有用で
はない。即ち汚れているという印を付けるのである。も
しそれらのキャッシュコピーが汚れたものになった後に
データブロックを読む必要があるときは、それらは「ク
リーン」コピーを受け取るためシェアドメモリ内のデー
タブロックに対してリードコマンドを送る。ライトスル
ーキャッシュ機構において、キャッシュとシェアドメモ
リの間を転送されるデータは、シェアドメモリブロック
のブロック状態を変化させることはない。
ライトバックキャッシュを備えるCPUが、あるデータ
のブロックにアクセスする必要があると判断したとき
は、シェアドメモリ内のブロック領域に対してオーナー
シップリード(ownership read)を実行する。これはシェ
アドメモリ内ブロックのブロック状態を「占有」にセッ
トし、そしてデータはCPUのキャッシュ内に保持され
る。
データがCPUのキャッシュ内に保持されている間、デ
ータブロックへの読み出し、書き込みには共にキャッシ
ュのコピーが使用される。書き込みはデータのキャッシ
ュのコピーを更新するが、シェアドメモリコピーは更新
しない。CPUがブロック「放棄」しなくてはならない
とき、あるいは占有しているCPUがそのブロックをア
クセスするのを辞めたとき、シェアドメモリコピーは更
新されなくてはならない。なぜなら、他のCPUが、シ
ェアドメモリのブロックを占有したいと望んでいるから
である。
ライトバック機構において、キャッシュとシェアドメモ
リの間を転送するデータは、シェアドメモリブロックの
ブロック状態に影響を与えることはない。ブロック状態
は、CPUがデータブロックを「ボロー」していると
き、「占有」にセットされ、ブロック状態はCPUがデ
ータブロックを「返却」したときはフリーにセットされ
る。
ライトバックキャッシュを有するCPUが、データブロ
ックを「ボロー」し、そのブロック状態が「占有」にセ
ットされているとき、それはたった1つのデータブロッ
クのオフィシャルコピーをもっているかのように振る舞
う。もしライトバックキャッシュを備えるCPUが、そ
のキャッシュ中に同一のデータブロックを引っぱり出そ
うとしたときは、データブロックの蓄積は失われるとい
うことは、前に述べた2つのキャッシュング機構から明
らかである。
キャッシュを備えていないCPUは、シェアドメモリ内
に蓄積されたデータに単に直接作用するだけである。そ
のようなCPUは、ライトバックキャッシュを有するC
PUを備える装置を用いるときも、シェアドデータの
「オーナーシップ」を見分けないため、要求されたデー
タが他のCPUのうちの1つにより更新されているとき
も、それを区別することができない。
ライトスルーキャッシュを備えるCPUや全くキャッシ
ュを持たないCPUは、シェアドメモリの領域に排他的
なアクセスを獲得するためにインターロックプロトコル
を使用する。しかしながら、このインターロックをプロ
トコルはロックコマンドを使用するものであり、それは
ライトバックキャッシュを備えるCPUにより用いられ
る「占有」や「放棄」コマンドとなんら異なるものでは
ない。この理由はライトバックキャッシュを備えるCP
Uを備えるデータ処理システムが、ライトスルーキャッ
シュを備えるCPUやキャッシュを持たないCPUとの
両立性を欠くためである。
発明の概要 本発明は、分離された部分からなるメモリデータブロッ
ク中で処理することにより、同一のデータバス上で、ラ
イトバックキャッシュを備えるCPU、ライトスルーキ
ャッシュを備えるCPUそれにキャッシュを全く持たな
いCPU、このような異なるタイプのCPUのためのシ
ェアドメモリ装置の使用を可能とするものであり、それ
らのデータブロックは個々のデータブロックに割り当て
られた特別のデータブロック状態領域を備えている。以
下に述べるように、個々のブロック状態領域を構成する
ために、11のデータビットが用いられる。11ビットのう
ちの2ビットはブロック状態のために用意される。要素
のうちの4ビットは、ブロック状態で最後に変わったC
PUを示す「ノードID」であり、そして11ビットのう
ちの残りの5ビットがエラー訂正コード情報(ECC)
のために用意される。
個々のデータブロックのためのブロック状態ビットは、
オーナーシップに対応して変化し、そしてバッドロック
で示すのと同じようにブロックの状態をインターロック
する。バッドブロック状態識別は、キャッシュに占有さ
れたデータブロックをCPUによって汚すことにより行
われ、そして汚されキャッシュされたデータブロックを
メモリに読み込む。このデータのブロックが他のCPU
により読み込まれたときは、バッドブロック状態識別が
それらに、データは汚されているということを伝えるの
である。エラー訂正コード情報は状態とノードIDデー
タを完全に保ってくれる。
実施例 第1図には、データ処理システムのための一般的な形態
が示されており、そのデータ処置システムは、共通バス
6を通じてシェアドメモリリソースと連結されている複
数の中央処理装置(CPUの)を備えている。データ処
理システム2は、少なくとも1つのシェアドメモリリソ
ースを備えており、そのシェアドメモリリソースは、伝
達ライン8を通じて共通データバスに接続されている。
少なくとも1つの読出しキャッシュを備えるCPU10
は、伝達ライン12を通じてデータバス6に接続されてい
る。
第1図には、ライトバックキャッシュを備えるCPU10
のうちのたった1つしか示されていないが、一般的には
データ処理システム2は、複数の読出しキャッシュを備
えるCPU10を有している。
少なくとも1つのライトスルーキャッシュを備えるCP
U14が、伝達ライン16を通じてデータバスと結合されて
いる。第1図では、ライトスルーキャッシュを備えるC
PU14のうちたった1つが示されているだけであるが、
装置2は一般には複数のライトスルーキャッシュを備え
るCPU14を持っている。少なくとも1つのキャッシュ
レスCPU18が、伝達ライン20を通じてデータバス6に
接続されている。第1図では、キャッシュレスCPU18
のうちのたった1つが示されているだけであるが、装置
2は一般に複数のキャッシュレスCPU18を備えている
ものである。
本発明は、データ処理システム2のシェアドメモリリソ
ース4に記憶された個別のデータのブロックのため、特
別の「ブロック状態」データ領域を提供することによ
り、共通データバス6上の単一のデータ処理システム2
内で異なるキャッシュ装置を備えるCPU10、14、18の間
を調和させようというものである。第2図を参照する
と、個々のデータのブロックは32バイトのデータブロッ
ク22を備えている。個々のデータブロック22は、関連す
るブロック状態領域24を備えている。ブロック状態領域
24は、ブロック状態情報データの11ビットのデータ領域
を備えている。状態領域26を構成するこれらのビットの
うちの最初の2ビットは、4つの選択可能な状態の内の
どの状態にいるのかを示している。これらの目的のため
に用いられるビットは表1に示されている。
表1の「フリー」状態は、データブロック22が、データ
処理システム2のどのCPU10、14、18も使用可能である
ことを示すものである。このような状態は、CPUがキ
ャッシニグ装置を備えているにも係わらず、データブロ
ック22がどのCPU10、14、18によってもアクセスされな
い場合に起きる。表1の「占有」状態はデータブロック
22が、「チェックアウト」機構を通じて、ライトバック
キャッシュを備えるCPU10のうちの1つによりアクセ
スされていること示している。この状態を用いることに
より、データブロック22をチェックアウトしたライトバ
ックキャッシュを備えるCPUが、「放棄」コマンドを
送信してデータブロックの状態をフリーに変化させるま
では、データブロック22のデータが他のCPU10、14、18
の1つによってアクセスされてしまうことがないように
している。
「インターロック状態」は、ライトスルーキャッシュを
備えるCPU14のうちの他の1つ、あるいはキャッシュ
レスCPU18のうちの1つが、データブロック22をイン
ターロックされていることを示すものである。データブ
ロック22は、データ処理システムのメモリ管理のプロト
コルや、ライトスルーキャッシュを備えるマルチCPU
処理のためのよく知られた管理情報に従って、インター
ロックされている。この状態は、データブロック22を
「占有」状態にするために用いられる「チェックアウ
ト」作用ではなく、むしろインターロック作用を通じ
て、CPUにデータブロック22をアクセスすることを可
能にするものである。このように、ライトバックキャッ
シュメモリを備えるCPU10、ライトスルーキャッシュ
を備えるCPU14、それら両方をそれら独自のそれぞれ
の機能を備える同一のデータブロック22で作用すること
が出来るのである。「タッグドバット」状態は、データ
がライトバックキャッシュを備えるCPU10のうちの1
つのキャッシュ内で、訂正可能なデータエラーで汚され
てしまっていることを示すものである。勿論、これらの
個々の状態を示すためのものビットの特別の配列は、所
望の選択にしたがって、表1に示すものでないものにす
ることも可能である。ブロック状態領域24のうち3ビッ
ト目から6ビット目は、データブロック22のブロック状
態を最後に変えたCPUの識別、そのCPUはCPU1
0、14、18のなかの1つであるが、その識別を記憶するた
め、「ノードID」領域28を形成する。CPU10、14、18
のうちの1つが、データブロック22の状態を変えるとき
はいつでも、CPU10、14、18のなかの1つの「ノードI
D」、即ち認証が、3ビット目から6ビット目に書き込
まれる。個々のCPU10、14、18は、ノードIDを持って
おり、それぞれノードIDに4ビットのうちの異なるビ
ットが割り当てられている。この配列によれば、16の異
なるCPU10、14、18のうちの1つを識別することが可能
である。もしデータ処理システムのさらにCPU10、14、
18が加わったとしても、適切な認証を与えてくれるよ
う、ノードID領域24のビット数を拡張することが可能
である。これは診断の目的で用いるのに有用なものであ
る。なぜなら、もしデータブロックが、データにより
「タッグドバッド」されても、ここでデータというの
は、データブロック22を最後に「占有」したCPU10の
キャッシュのなかの1つにより、訂正不可能なエラーで
汚されているものであるが、CPU10のうちの1つのノ
ードIDにより、認証可能だからである。
ブロック状態領域11ビットの中のうち7ビット目から11
ビット目は、エラー訂正コード情報を記憶するために用
いられるエラー訂正コード(ECC)領域30を構成す
る。これらの5つのビットは、ブロック状態領域11ビッ
ト全体にわたるエラーの1ビット訂正や2ビット訂正を
提供してくれる。もしIDノード領域28のためのビット
数が拡張されると、ECC領域30のためのそれに対応す
るビット数もまた思い通りに拡張することが出来る。
普通の状態では、個々のデータブロック22のブロック状
態領域24は、データ処理システム2のシェアドメモリリ
ソース4内におけるデータブロック22の、フリー、オー
ナーシップ、インターロックあるいはバッドデータ状態
に対応するよう変化する。それもまた、ノードID領域
28内の状態領域26やECC領域28内のECCデータを変
化させるため、CPU10、14、18のうちの最後の1つの識
別を示すように変化する。データブロックの活動状態
は、要求するCPU10、14、18によっては認識されない。
診断の目的のため、ブロック状態領域24は、CPU10、1
4、18に、ブロック状態を直接書いたり読んだりするため
のデータを供給する。達成診断作用の間、CPU10、14、
18のうちの1つがシェアドメモリリソース4に対してリ
ードコマンドを実行しているとき、CPU10、14、18の診
断レジスタやコントロール状態レジスタは、ブロック状
態領域にリードデータ領域を表すことを許すように形成
される。これは、ブロック状態領域24からの11のブロッ
ク状態ビットを、要求を出しているCPU10、14、18の1
つに送り返されてきたリードデータからの同数のビット
で置き換えることにより行われる。例えば、データブロ
ック22のうちの1つからCPU10、14、18のうちの1つに
より請求されたリードデータの最初の11ビットが、それ
に関連するブロック状態領域24のビットで置き換えられ
る。あるいはまた、データブロック22中の他のビットの
グループに置き換えられる。診断形態もまた、ブロック
状態領域24に、ライトコマンドを使用してCPU10、14、
18のうちの1つにより、直接書き込まれることを可能と
し、それは、11のライトデータを有するブロック状態領
域24を、それに関連するデータブロック22のうちの1つ
に書き込むことによるものである。
もし必要であれば、普通の状態であっても、CPU10、1
4、18は、読み出しや再度書き込みのため、ブロック状態
にアクセスすることが可能である。例えば、ブロック状
態は「タッグドバッド」から「フリー」に変えることを
必要とされるかもしれない。バッドブロック状態表示
は、キャッシュ中のデータブロックを誤ったものにして
しまい、さらにこの誤ったデータをメモリ中に戻してし
まうCPUにより、なされるものである。このデータの
ブロックが他のCPUに読まれたときは、バッドブロッ
ク状態表示、「タッグドバッド」はそれらに対して、デ
ータが誤ったものにされてしまっているということを知
らせるのである。
このように、ここで、ライトバックキャッシュを備える
CPU、ライトスルーキャッシュを備えるCPU、それ
に同一のデータバス上にキャッシュを有さないCPU、
そういったCPUを有する処理装置に適合するように、
データ処理システムのシェアドメモリリソース内のデー
タを、識別するための方法を述べた。特許請求の範囲に
述べられた本発明の原理及び範囲の記述と関連する当業
者によれば、本発明の特徴を説明するために上に述べた
構成要素及び装置の詳細、構成及び形態に、様々な変更
がなされ得ることが、理解されるのであろう。
【図面の簡単な説明】
第1図は、共通データバスを通じてシャアドメモリと接
続されている複数のCPUを備えるデータ処理システム
のための一般的な形態を示す図。 第2図は、より好ましい実施例のためのデータブロック
フォーマットを示す図。 図において、 10……CPU 8、12、16……伝達ライン 6……共通データバス 4……シェアドメモリリソース 22……データバス
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ジョン ケーラー グルームス アメリカ合衆国 マサチューセッツ州 01570 ウェブスター サットン ロード (番地なし) (72)発明者 ジョセフ フランクリン ランタラ アメリカ合衆国 マサチューセッツ州 01615 ウスター バーナード ロード 134 (56)参考文献 特開 昭62−203252(JP,A) 特開 昭53−116041(JP,A)

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】シェアドメモリにアクセスするため異なる
    キャッシュ形態をそれぞれ有する複数の処理装置の間に
    互換性を与えているデータ処理システムにおいて、関連
    するデータフィールドをそれぞれ有した複数のデータブ
    ロックを保持するためのシェアドメモリリソースと、該
    シェアドメモリリソースのデータブロックにアクセスす
    る異なるキャッシュ形態をそれぞれ有する複数の処理装
    置とを備えており、前記複数の処理装置の中の第1の処
    理装置は、前記シェアドメモリリソースに保持されたデ
    ータブロックにアクセスを行なうためにライトバックキ
    ャッシュを備え且つアクセスされたデータブロックの関
    連するデータフィールドを変更するものであり、前記複
    数の処理装置の中の第2の処理装置は、前記シェアドメ
    モリリソースに保持されたデータブロックにアクセスを
    行なうためにライトバックキャッシュを備えておらず且
    つアクセスされたデータブロックの関連するデータフィ
    ールドを変更するものであり、各前記複数のデータブロ
    ックは、前記データブロックにアクセスを行なう前記処
    理装置の前記キャッシュ形態に基づいて前記データブロ
    ックが利用可能であるか利用不可能であるか若しくは選
    択的に利用可能であるかを識別させるブロック状態デー
    タフィールドを有しており、更に、前記ブロック状態デ
    ータフィールド及びアクセスを求めている前記処理装置
    の前記キャッシュ形態によって決定されるように前記複
    数の処理装置が前記シェアドメモリにアクセスできるよ
    うにする共通データリンクを備えており、ライトバック
    キャッシュを備える前記第1の処理装置は、前記シェア
    ドメモリのデータブロックにアクセスを行ったときにそ
    の関連するブロック状態データフィールドがそのデータ
    ブロックを利用可能と識別している場合に、そのブロッ
    ク状態データフィールドを利用不可能に変更して他の処
    理装置が前記データブロックにアクセスを行なうことを
    防止するものであり、ライトバックキャッシュを備えて
    いない前記第2の処理装置は、前記シェアドメモリのデ
    ータブロックにアクセスを行ったときにその関連するブ
    ロック状態フィールドがそのデータブロックを利用可能
    と識別している場合に、そのブロック状態データフィー
    ルドを選択的に利用可能に変更してライトバックキャッ
    シュを備える他の処理装置が前記データブロックにアク
    セスを行なうことを防止することを特徴とするデータ処
    理装置。
  2. 【請求項2】シェアドメモリにアクセスするため異なる
    キャッシュ形態をそれぞれ有する複数の処理装置の間に
    互換性を与えているデータ処理システムにおいて、関連
    するデータフィールドをそれぞれ有した複数のデータブ
    ロックを保持するためのシェアドメモリリソースと、該
    シェアドメモリリソースのデータブロックにアクセスす
    る異なるキャッシュ形態をそれぞれ有する複数の処理装
    置とを備えており、前記複数の処理装置の中の第1の処
    理装置は、前記シェアドメモリリソースに保持されたデ
    ータブロックにアクセスを行なうためにライトバックキ
    ャッシュを備え且つアクセスされたデータブロックの関
    連するデータフィールドを変更するものであり、前記複
    数の処理装置の中の第2の処理装置は、前記シェアドメ
    モリリソースに保持されたデータブロックにアクセスを
    行なうために前記複数の処理装置の中の前記第1の処理
    装置とは異なるキャッシュ形態を備え且つアクセスされ
    たデータブロックの関連するデータフィールドを変更す
    るものであり、各前記複数のデータブロックは、前記デ
    ータブロックにアクセスを行なう前記処理装置の前記キ
    ャッシュ形態に基づいて前記データブロックが利用可能
    であるか若しくは利用不可能であるかを識別させるブロ
    ック状態データフィールドを有しており、更に、前記ブ
    ロック状態データフィールド及びアクセスを求めている
    前記処理装置の前記キャッシュ形態によって決定される
    ように前記複数の処理装置が前記シェアドメモリにアク
    セスできるようにする共通データリンクを備えており、
    ライトバックキャッシュを備える前記第1の処理装置
    は、前記シェアドメモリのデータブロックにアクセスを
    行ったときにその関連するブロック状態データフィール
    ドがそのデータブロックを利用可能と識別している場合
    に、そのブロック状態データフィールドを利用不可能に
    変更して他の処理装置が前記データブロックにアクセス
    を行なうことを防止するものであり、前記複数の処理装
    置の中の前記第1の処理装置とは異なるキャッシュ形態
    を備える前記第2の処理装置は、前記シェアドメモリの
    データブロックにアクセスを行ったときにその関連する
    ブロック状態フィールドがそのデータブロックを利用可
    能と識別している場合に、そのブロック状態データフィ
    ールドを変更することなく前記データブロックを読み出
    すことを特徴とするデータ処理装置。
  3. 【請求項3】シェアドメモリにアクセスするため異なる
    キャッシュ形態をそれぞれ有する複数の処理装置の間に
    互換性を与えているデータ処理システムにおいて、関連
    するデータフィールドをそれぞれ有した複数のデータブ
    ロックを保持するためのシェアドメモリリソースと、該
    シェアドメモリリソースのデータブロックにアクセスす
    る異なるキャッシュ形態をそれぞれ有する複数の処理装
    置とを備えており、前記複数の処理装置の中の第1の処
    理装置は、前記シェアドメモリリソースに保持されたデ
    ータブロックにアクセスを行なうためにライトバックキ
    ャッシュを備え且つアクセスされたデータブロックの関
    連するデータフィールドを変更するものであり、前記複
    数の処理装置の中の第2の処理装置は、前記シェアドメ
    モリリソースに保持されたデータブロックにアクセスを
    行なうためにライトスルーキャッシュを備えており且つ
    アクセスされたデータブロックの関連するデータフィー
    ルドを変更するものであり、前記複数の処理装置の中の
    第3の処理装置は、前記シェアドメモリリソースに保持
    されたデータブロックにアクセスを行うためにキャッシ
    ュを備えておらず且つアクセスされたデータブロックの
    関連するデータフィールドを変更するものであり、各前
    記複数のデータブロックは、前記データブロックにアク
    セスを行なう前記処置装置の前記キャッシュ形態に基づ
    いて前記データブロックが利用可能であるか利用不可能
    であるか若しくは選択的に利用可能であるかを識別させ
    るブロック状態データフィールドを有しており、更に、
    前記ブロック状態データフィールド及びアクセスを求め
    ている前記処理装置の前記キャッシュ形態によって決定
    されるように前記複数の処理装置が前記シェアドメモリ
    にアクセスできるようにする共通データリンクを備えて
    おり、ライトバックキャッシュを備える前記第1の処理
    装置は、前記シェアドメモリのデータブロックにアクセ
    スを行ったときにその関連するブロック状態データフィ
    ールドがそのデータブロックを利用可能と識別している
    場合に、そのブロック状態データフィールドを利用不可
    能に変更して他の処理装置が前記データブロックにアク
    セスを行なうことを防止するものであり、ライトスルー
    キャッシュを備えている前記第2の処理装置は、前記シ
    ェアドメモリのデータブロックにアクセスを行ったとき
    にその関連するブロック状態データフィールドがそのデ
    ータブロックを利用可能と識別している場合に、そのブ
    ロック状態データフィールドを選択的に利用可能に変更
    してライトバックキャッシュを備える他の処理装置が前
    記データブロックにアクセスを行なうことを防止するも
    のであり、キャッシュを備えていない前記第3の処理装
    置は、前記シェアドメモリのデータブロックにアクセス
    を行ったときにその関連するブロック状態データフィー
    ルドがそのデータブロックを利用可能と識別した場合
    に、そのブロック状態データフィールドを変更すること
    なく前記データブロックを読み出すことを特徴とするデ
    ータ処理装置。
  4. 【請求項4】複数のデータブロックを保持するシェアド
    メモリリソースを有したデータ処理装置に共通バス上に
    てアクセスするため、異なるキャッシュ形態を有する複
    数の処理装置の間に互換性を提供する方法において、各
    前記データブロックは、前記処理装置の前記キャッシュ
    形態に基づいて前記データブロックが利用可能であるか
    利用不可能であるか若しくは選択的に利用可能であるか
    を識別した後に前記データブロックにアクセスを行なう
    関連するデータフィールドを備え、 前記方法が、 前記複数の処理装置の中、ライトバックキャッシュを備
    える第1の処理装置によって、シェアドメモリリソース
    に保持されたデータブロックにアクセスを行なう段階
    と、 アクセスされたデータブロックのデータフィールドが利
    用可能状態である場合に、前記データブロックの排他的
    制御を獲得してアクセスされたデータブロックのデータ
    フィールドを利用不可能に変更し、他の処理装置が前記
    データブロックにアクセスを行なうことを防止する段階
    と、 前記データブロックをシェアドメモリリソースに戻して
    前記データフィールドを利用不可能から利用可能に変更
    する段階と、 前記複数の処理装置の中、ライトバックキャッシュを有
    しない第2の処理装置によって、シェアドメモリリソー
    スに保持されたデータブロックにアクセスを行なう段階
    と、 アクセスされたデータブロックのデータフィールドが利
    用可能な状態である場合には、前記データブロックの排
    他的制御を獲得して前記データフィールドを利用可能か
    ら選択的に利用可能に変更し、ライトバックキャッシュ
    を備える他の処理装置が前記データブロックにアクセス
    を行なうことを防止する段階と、 前記データブロックをシェアドメモリリソースに戻して
    前記データフィールドを選択的に利用可能から利用可能
    に変更する段階と、 を備えることを特徴とする方法。
JP2178499A 1989-07-06 1990-07-05 キャッシュサポート構造 Expired - Lifetime JPH065514B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US37641489A 1989-07-06 1989-07-06
US376414 1989-07-06

Publications (2)

Publication Number Publication Date
JPH03118650A JPH03118650A (ja) 1991-05-21
JPH065514B2 true JPH065514B2 (ja) 1994-01-19

Family

ID=23484933

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2178499A Expired - Lifetime JPH065514B2 (ja) 1989-07-06 1990-07-05 キャッシュサポート構造

Country Status (3)

Country Link
EP (1) EP0407067A3 (ja)
JP (1) JPH065514B2 (ja)
CA (1) CA2019727A1 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0533373A3 (en) * 1991-09-18 1993-04-21 Ncr International Inc. Computer system having cache memory
FR2683924B1 (fr) * 1991-11-18 1997-01-03 Bull Sa Memoire integree, son procede de gestion et systeme informatique en resultant.
EP0600626A1 (en) * 1992-11-13 1994-06-08 Cyrix Corporation Coherency for write-back cache in a system designed for write-through cache

Also Published As

Publication number Publication date
EP0407067A3 (en) 1992-07-29
CA2019727A1 (en) 1991-01-06
JPH03118650A (ja) 1991-05-21
EP0407067A2 (en) 1991-01-09

Similar Documents

Publication Publication Date Title
US5895495A (en) Demand-based larx-reserve protocol for SMP system buses
US5940856A (en) Cache intervention from only one of many cache lines sharing an unmodified value
US6405289B1 (en) Multiprocessor system in which a cache serving as a highest point of coherency is indicated by a snoop response
TW475117B (en) Method of shared intervention for cache lines in the recently read state for SMP bus
US5963974A (en) Cache intervention from a cache line exclusively holding an unmodified value
US6763434B2 (en) Data processing system and method for resolving a conflict between requests to modify a shared cache line
US6487643B1 (en) Method and apparatus for preventing starvation in a multi-node architecture
US5113514A (en) System bus for multiprocessor computer system
US5761731A (en) Method and apparatus for performing atomic transactions in a shared memory multi processor system
US5940864A (en) Shared memory-access priorization method for multiprocessors using caches and snoop responses
US20090006766A1 (en) Data processing system and method for predictively selecting a scope of broadcast of an operation utilizing a history-based prediction
US5943685A (en) Method of shared intervention via a single data provider among shared caches for SMP bus
US6098156A (en) Method and system for rapid line ownership transfer for multiprocessor updates
JP2010527488A (ja) データ処理システムにおけるキャッシュトランザクションのための方法及び装置
JPH02228745A (ja) 入出力キヤツシユ
CN1131481C (zh) 包含一具有精确模式和非精确模式的悬停状态的高速缓存相关协议
US7290094B2 (en) Processor, data processing system, and method for initializing a memory block to an initialization value without a cache first obtaining a data valid copy
US5996049A (en) Cache-coherency protocol with recently read state for data and instructions
US6336169B1 (en) Background kill system bus transaction to optimize coherency transactions on a multiprocessor system bus
US7502893B2 (en) System and method for reporting cache coherency state retained within a cache hierarchy of a processing node
US7467262B2 (en) Data processing system, cache system and method for scrubbing a domain indication in response to execution of program code
US20060271743A1 (en) Data processing system, cache system and method for passively scrubbing a domain indication
WO1998047071A1 (en) Read operations in multiprocessor computer system
CN101116063A (zh) 具有高速缓存内存之系统及访问方法
JPH065514B2 (ja) キャッシュサポート構造

Legal Events

Date Code Title Description
RD01 Notification of change of attorney

Effective date: 20040623

Free format text: JAPANESE INTERMEDIATE CODE: A7421

A621 Written request for application examination

Effective date: 20050317

Free format text: JAPANESE INTERMEDIATE CODE: A621

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20070322

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070410

A521 Written amendment

Effective date: 20070604

Free format text: JAPANESE INTERMEDIATE CODE: A523

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Effective date: 20071009

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20071022

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

Year of fee payment: 3

Free format text: PAYMENT UNTIL: 20101109

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

Year of fee payment: 4

Free format text: PAYMENT UNTIL: 20111109

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

Year of fee payment: 5

Free format text: PAYMENT UNTIL: 20121109

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

Year of fee payment: 5

Free format text: PAYMENT UNTIL: 20121109

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

Free format text: PAYMENT UNTIL: 20131109

Year of fee payment: 6