JPH02238534A - マルチプロセツサ・システム - Google Patents
マルチプロセツサ・システムInfo
- Publication number
- JPH02238534A JPH02238534A JP1057761A JP5776189A JPH02238534A JP H02238534 A JPH02238534 A JP H02238534A JP 1057761 A JP1057761 A JP 1057761A JP 5776189 A JP5776189 A JP 5776189A JP H02238534 A JPH02238534 A JP H02238534A
- Authority
- JP
- Japan
- Prior art keywords
- protocol type
- bus
- data
- protocol
- processor
- 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.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4234—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being a memory bus
-
- 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
- G06F12/0833—Cache 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)
- Multi Processors (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
A.産業上の利用分野
この発明は複数のプロセッサがプライベート・キャッシ
ュを介して共有バスおよび共有メモリに接続されている
マルチプロセッサ・システムに関し、とくに各プライベ
ート・キャッシュがわに制御装置を設け共有バス上の信
号を監視することによりキャッシュにおけるデータの操
作、たとえばプライベート・キャッシュ間のデータの一
貫性を維持する操作を行う、いわゆるスヌープ・キャッ
シュを有するマルチプロセッサ・システムに関する。
ュを介して共有バスおよび共有メモリに接続されている
マルチプロセッサ・システムに関し、とくに各プライベ
ート・キャッシュがわに制御装置を設け共有バス上の信
号を監視することによりキャッシュにおけるデータの操
作、たとえばプライベート・キャッシュ間のデータの一
貫性を維持する操作を行う、いわゆるスヌープ・キャッ
シュを有するマルチプロセッサ・システムに関する。
B.従来技術
共有メモリ、共有バス型のマルチプロセッサ・システム
においては、バスおよびメモリへのアクセスの競合を減
ずるために各プロセッサにプライベート・キャッシュを
付加する方法が広く用いられている。このような方法に
おいては複数キャッシュ間のデータの一貫性を保証する
機構が必要になる。またこのような機構により、バス・
トラ一4一 フィックを一層効率よく行えれば好都合である。
においては、バスおよびメモリへのアクセスの競合を減
ずるために各プロセッサにプライベート・キャッシュを
付加する方法が広く用いられている。このような方法に
おいては複数キャッシュ間のデータの一貫性を保証する
機構が必要になる。またこのような機構により、バス・
トラ一4一 フィックを一層効率よく行えれば好都合である。
そしてその機構のひとつとしてスヌープ・キャッシュと
よばれるものが・ある。
よばれるものが・ある。
第1図はスヌープ・キャッシュ方式のマルチプロセッサ
・システムを示す。第1図において複数のプロセッサP
IP2・・・Poはそれぞれプライベート・キャッシュ
CIG・・・Cnを介して共有バス1および共有メモリ
Mに接続されている。そして各プライベート・キャッシ
ュがわに制御装置を設けて共有バス1上の信号を監視さ
せ、分散制御方式によりデータの一貫性を実現する。す
なわちこの方式では各制御装置が共有バス1上のプロト
コールにしたがって動作することによりデータの一貫性
を実現する。
・システムを示す。第1図において複数のプロセッサP
IP2・・・Poはそれぞれプライベート・キャッシュ
CIG・・・Cnを介して共有バス1および共有メモリ
Mに接続されている。そして各プライベート・キャッシ
ュがわに制御装置を設けて共有バス1上の信号を監視さ
せ、分散制御方式によりデータの一貫性を実現する。す
なわちこの方式では各制御装置が共有バス1上のプロト
コールにしたがって動作することによりデータの一貫性
を実現する。
従来のプロトコールは、共有データに関する書込み時の
手順の観点から、インパリデート・タイプ(inval
idate type)とアップデート壷タイプ(up
date type)とに分類できる。インバリデート
・タイプにおいては所定のプライベート・キャッシュの
共有データに書込みが行なわれると、当該共有データを
有する他のプライベート・キャッシュでその共有データ
を無効化する。他方アツプデート・タイプにおいては書
き込んだデータの複製を他のプライベート・キャッシュ
に送出し、共有データの更新を実行する。
手順の観点から、インパリデート・タイプ(inval
idate type)とアップデート壷タイプ(up
date type)とに分類できる。インバリデート
・タイプにおいては所定のプライベート・キャッシュの
共有データに書込みが行なわれると、当該共有データを
有する他のプライベート・キャッシュでその共有データ
を無効化する。他方アツプデート・タイプにおいては書
き込んだデータの複製を他のプライベート・キャッシュ
に送出し、共有データの更新を実行する。
ところで以上のプロトコールには一長一短があり、すべ
てのタイプの共有データに対して適しているわけではな
い。メモリがあるタイプの共有データに割り付けられた
とき、どういうブロトコールが一番適しているか、イン
バリデート・ タイプと アップデート・タイプタイプ
のプロトコールについて例を挙げて説明する。
てのタイプの共有データに対して適しているわけではな
い。メモリがあるタイプの共有データに割り付けられた
とき、どういうブロトコールが一番適しているか、イン
バリデート・ タイプと アップデート・タイプタイプ
のプロトコールについて例を挙げて説明する。
1) ある変数がセマフォやプロセッサ間のデータの受
渡しに使用されている場合はその変数は頻繁に複数のプ
ロセッサから参照されるので、参照の際のキャッシュ・
ヒットの可能性を高めるためにアップデート・タイプタ
イプのプロトコールで処理されることが望ましい。
渡しに使用されている場合はその変数は頻繁に複数のプ
ロセッサから参照されるので、参照の際のキャッシュ・
ヒットの可能性を高めるためにアップデート・タイプタ
イプのプロトコールで処理されることが望ましい。
2)ある変数がローカル変数で1つのプロセッサのみが
使用する場合(ローカル変数でもページ管理の都合で他
のキャッシュにもその変数の物理アドレスが張り付いた
ままで、共有データになる可能性がある場合)や、ある
変数またはワークエリアがクリティカル・セクション内
にあり1つのプロセッサが長期にわたって独占使用する
とき場合は、共有データのまま複数のキャッシュ内に存
在し続けると、データの書き込みの度にアクセスがキャ
ッシュの外側の共有バスまで出てしまい効率が悪い。よ
って、これらの時はインバリデート・ タイプとして他
のキャッシュ内のデータ・エントリを無効化すると効率
が上がる。
使用する場合(ローカル変数でもページ管理の都合で他
のキャッシュにもその変数の物理アドレスが張り付いた
ままで、共有データになる可能性がある場合)や、ある
変数またはワークエリアがクリティカル・セクション内
にあり1つのプロセッサが長期にわたって独占使用する
とき場合は、共有データのまま複数のキャッシュ内に存
在し続けると、データの書き込みの度にアクセスがキャ
ッシュの外側の共有バスまで出てしまい効率が悪い。よ
って、これらの時はインバリデート・ タイプとして他
のキャッシュ内のデータ・エントリを無効化すると効率
が上がる。
なおキャッシュのプロトコールという言葉は、データ書
込みの扱い方やデータの置き換えの方式等、かなり広い
意味で使われることがある。しかし、本文章では共有デ
ータの取扱い方に的を絞っているので、特に断らない限
りブロトコールと言えば、共有データの取扱い方を指す
ものとする。
込みの扱い方やデータの置き換えの方式等、かなり広い
意味で使われることがある。しかし、本文章では共有デ
ータの取扱い方に的を絞っているので、特に断らない限
りブロトコールと言えば、共有データの取扱い方を指す
ものとする。
以上のようにデータのタイプ毎のプロトコールの最適化
を考慮したときには従来のマルチプロセッサ・システム
では十分ではないことがわかる。以下検討する。
を考慮したときには従来のマルチプロセッサ・システム
では十分ではないことがわかる。以下検討する。
a〕多くのシステムではプロトコールが一種類に固定さ
れている。または、システムの立上げ時にプロトコール
を選択し、その後は一種類に固定されている。これでは
ある種の共有データについては効率が悪く、通常、様々
なタイプの共有データが混在するので、そのタイプによ
ってプロトコールが動的に選択可能な方が効率が良い。
れている。または、システムの立上げ時にプロトコール
を選択し、その後は一種類に固定されている。これでは
ある種の共有データについては効率が悪く、通常、様々
なタイプの共有データが混在するので、そのタイプによ
ってプロトコールが動的に選択可能な方が効率が良い。
b)日本アイ・ビー・エム株式会社東京基礎研究所で試
作したTOP−1 (プロトタイプ名)では、プロセッ
サ毎(キャッシュ毎)にアップデート・タイプかインバ
リデート・ タイプかを決定できる。しかし、前述のよ
うに変数またはワークエリア毎に適合するプロトコール
が異なっている。そこで、プロセッサ毎にプロトコール
を決めるよりも、変数またはワークエリア毎にどのプロ
トコールでアクセスするかを決める方が効率の向上が望
める。TOP−1ではキャッシュ内のレジスターの変更
でプロトコールのタイプを選択するようになっているが
、これではきめ細かく制御するためにはレジスタを書換
える命令をデータのアクセスの度に挿入しなければなら
ない。これについては特願平1−4799号を参照され
たい。
作したTOP−1 (プロトタイプ名)では、プロセッ
サ毎(キャッシュ毎)にアップデート・タイプかインバ
リデート・ タイプかを決定できる。しかし、前述のよ
うに変数またはワークエリア毎に適合するプロトコール
が異なっている。そこで、プロセッサ毎にプロトコール
を決めるよりも、変数またはワークエリア毎にどのプロ
トコールでアクセスするかを決める方が効率の向上が望
める。TOP−1ではキャッシュ内のレジスターの変更
でプロトコールのタイプを選択するようになっているが
、これではきめ細かく制御するためにはレジスタを書換
える命令をデータのアクセスの度に挿入しなければなら
ない。これについては特願平1−4799号を参照され
たい。
C.発明が解決しようとする問題点
この発明は以上の事情を考慮してなされたものであり、
効率のよいマルチプロセッサ・システムを実現するため
に、簡易な構成で変数またはワークエリア毎につまり共
有データのタイプによってプロトコールをオーバーヘッ
ドなしに切替可能なキャッシュの制御機構を提供するこ
とを目的としている。
効率のよいマルチプロセッサ・システムを実現するため
に、簡易な構成で変数またはワークエリア毎につまり共
有データのタイプによってプロトコールをオーバーヘッ
ドなしに切替可能なキャッシュの制御機構を提供するこ
とを目的としている。
また、ある特定のプロセッサ群の中でのみ効力を働かせ
たいプロトコールをサポートするためのキャッシュの制
御機構を提供することを目的としている。
たいプロトコールをサポートするためのキャッシュの制
御機構を提供することを目的としている。
D.問題点を解決するための手段
共有バス,共有メモリ型でスヌープ・キャッシュを持っ
たマルチプロセッサ・システムにおいて、ある特定の記
憶領域毎にこの領域に属するデータをアクセスする時に
キャッシュが用いるブロトコールを指定する情報を付加
しておく。プロセッサ(またはメモリ管理ユニット)は
メモリアクセス時に操作対象のメモリの属する領域に対
応するその付加情報を信号として出力する。メモリアク
セスが共有バスを用いて実行される際は、その付加情報
の信号は共有バス上にも出力される。共有バスに接続さ
れているすべてのキャッシュは共有バス上のその信号で
プロトコールを選択して、バス・スヌープ(バス監視)
を実行する。
たマルチプロセッサ・システムにおいて、ある特定の記
憶領域毎にこの領域に属するデータをアクセスする時に
キャッシュが用いるブロトコールを指定する情報を付加
しておく。プロセッサ(またはメモリ管理ユニット)は
メモリアクセス時に操作対象のメモリの属する領域に対
応するその付加情報を信号として出力する。メモリアク
セスが共有バスを用いて実行される際は、その付加情報
の信号は共有バス上にも出力される。共有バスに接続さ
れているすべてのキャッシュは共有バス上のその信号で
プロトコールを選択して、バス・スヌープ(バス監視)
を実行する。
また、共有バスを拡張して、プロセッサ群を指定するた
めのバスを新たに設けて、バスアクセス時にプロセッサ
群の識別信号がバスを使用しているプロセッサから出力
されるようにしておくこともできる。ある種のプロトコ
ールの際にはその信号を基に、同じプロセッサ群に属し
ているかどうかによってキャッシュのスヌーブ動作を制
御する。
めのバスを新たに設けて、バスアクセス時にプロセッサ
群の識別信号がバスを使用しているプロセッサから出力
されるようにしておくこともできる。ある種のプロトコ
ールの際にはその信号を基に、同じプロセッサ群に属し
ているかどうかによってキャッシュのスヌーブ動作を制
御する。
E.実施例
以下この発明の実施例について第2図以降の図面を参照
して説明する。
して説明する。
第2図は記憶領域毎にアップデート・タイプタイプ、イ
ンバリデート・ タイプおよびオール・リード・タイプ
(all−read type)のプロトコールの設定
を行える1実施例を全体として示している。なお第2図
において第1図と対応する箇所には対応する番号を付し
て詳細な説明を省略する。
ンバリデート・ タイプおよびオール・リード・タイプ
(all−read type)のプロトコールの設定
を行える1実施例を全体として示している。なお第2図
において第1図と対応する箇所には対応する番号を付し
て詳細な説明を省略する。
またオール・リード・タイプのプロトコールについては
後に詳述する。
後に詳述する。
第2図においてプロセッサPIF2・・・Pnはプロト
コール・タイプを表示する信号T1、T2およびT3を
対応するプライベート・キャッシュCIC・・・Cnを
介してプロトコール・タイプ・バス2に送出シている。
コール・タイプを表示する信号T1、T2およびT3を
対応するプライベート・キャッシュCIC・・・Cnを
介してプロトコール・タイプ・バス2に送出シている。
信号T1、T2およびT3は共有バス1上のデータに対
するプロトコール・タイプがそれぞれアップデート・タ
イプ、インバリデート・タイプおよびオール・リード・
タイプであることを示す。プライベート・キャッシュC
IC・・・Cnは図示しないがキャッシュ制御機構をそ
れぞれ有しており、このキャッシュ制御機構がプロトコ
ール・タイプ・バス2を監視して共有バス1上のデータ
に対するプロトコールを判別し、必要に応じて一1 1
一 (該当する共有データを保持するとき)そのプロトコー
ルの手順を実行する。
するプロトコール・タイプがそれぞれアップデート・タ
イプ、インバリデート・タイプおよびオール・リード・
タイプであることを示す。プライベート・キャッシュC
IC・・・Cnは図示しないがキャッシュ制御機構をそ
れぞれ有しており、このキャッシュ制御機構がプロトコ
ール・タイプ・バス2を監視して共有バス1上のデータ
に対するプロトコールを判別し、必要に応じて一1 1
一 (該当する共有データを保持するとき)そのプロトコー
ルの手順を実行する。
この実施例ではデータのアドレス毎にプロトコール・タ
イプ表示情報を付加するのでなく、一定の記憶領域毎に
この情報を割り当てている。すなわち、従来技術に関連
して説明したように、メモリ毎(変数やワークエリア毎
)に適したキャッシュのプロトコールが異なっている。
イプ表示情報を付加するのでなく、一定の記憶領域毎に
この情報を割り当てている。すなわち、従来技術に関連
して説明したように、メモリ毎(変数やワークエリア毎
)に適したキャッシュのプロトコールが異なっている。
よって、メモリ毎にプロトコールを制御することがパフ
ォーマンスを向上する上で重要である。しかし、各アド
レス毎にプロトコールのタイプを表す情報を付加したの
では、その情報のための記憶領域や管理のハードウエア
がかなりの量となり、効率的ではない。
ォーマンスを向上する上で重要である。しかし、各アド
レス毎にプロトコールのタイプを表す情報を付加したの
では、その情報のための記憶領域や管理のハードウエア
がかなりの量となり、効率的ではない。
そこで一定の記憶領域ごとにプロトコールのタイプを表
す情報を付加し管理する。ここでは実現の容易さから、
従来型のプロセッサ(またはその専用MMU)にすでに
インプリメントされているページ管理機構に注目し、ペ
ージ毎にその情報を付加することにする。
す情報を付加し管理する。ここでは実現の容易さから、
従来型のプロセッサ(またはその専用MMU)にすでに
インプリメントされているページ管理機構に注目し、ペ
ージ毎にその情報を付加することにする。
第3図は第2図のプロセッサPに関連する人出力信号を
示し、第4図は第2図実施例のページ管理機構とページ
・エントリの構成例を示す。
示し、第4図は第2図実施例のページ管理機構とページ
・エントリの構成例を示す。
第3図および第4図において(とくに第4図において)
、ページ管理機構はメモリをページという単位(図では
4Kバイト単位)で管理しており、ページ毎にそのペー
ジを実メモリのどこに配置するか、どのような保護を行
うかといったことを記述したページ・エントリを持って
いる。プロセッサのメモリ・アクセスの際は論理アドレ
スの上位ビットで選択されたページ・エントリ(または
ページ・エントリをプロセッサ内にコピーしたトランス
レーション・ルックアサイド・バッファ:TLB)が必
ず参照されてアクセス権がチェックされ、ページ・エン
トリの頁・フレーム・アドレスを基に実メモリのアドレ
スが算出される。そして、アクセス権を満たしていると
実メモリへのアクセスが行なわれる。
、ページ管理機構はメモリをページという単位(図では
4Kバイト単位)で管理しており、ページ毎にそのペー
ジを実メモリのどこに配置するか、どのような保護を行
うかといったことを記述したページ・エントリを持って
いる。プロセッサのメモリ・アクセスの際は論理アドレ
スの上位ビットで選択されたページ・エントリ(または
ページ・エントリをプロセッサ内にコピーしたトランス
レーション・ルックアサイド・バッファ:TLB)が必
ず参照されてアクセス権がチェックされ、ページ・エン
トリの頁・フレーム・アドレスを基に実メモリのアドレ
スが算出される。そして、アクセス権を満たしていると
実メモリへのアクセスが行なわれる。
第4図のページ・エントリのPI,POはアクセス権を
示すビットで、次表のようにプロテクション・レベルに
対応している。
示すビットで、次表のようにプロテクション・レベルに
対応している。
ページ・エントリのA.D.Eは仮想記憶の管理に用い
られるビットで、それぞれページ内がアクセスされたか
、書き替えられたか、ページが実メモリに存在するかを
示す。
られるビットで、それぞれページ内がアクセスされたか
、書き替えられたか、ページが実メモリに存在するかを
示す。
さて、T217llTOが本発明の特徴であるページの
プロトコールのタイプを表すビットである。つまり、こ
のページに属するデータはどのタイプのブロトコールを
使ってアクセスするかを示す情報である。ここでは3ビ
ットでプロトコールのタイプを表わすことにしているが
、この数はシステムがサポートするプロトコールの数に
対応している(3ビットでは23=8種類までのプロト
コールに対応)。プロセッサ(またはMMU)がメモリ
・アクセスする際に、このアクセスはどのブロトコール
で処理しなければならないかを示すため、このプロトコ
ールのタイプを示すビットを外部に出力する信号線をプ
ロセッサに設ける(第3図)。そして、第2図のように
マルチプロセッサを構成し、キャッシュC1C・・・c
oから共有バス1上にアクセスが出るとき、つまり共有
バス1のトラフィックが必要なときには、共有バス1に
もプロトコールのタイプを示す信号が出力され、他のキ
ャッシュCIG・・・coはこの信号でブロトコールを
選択しながらバス・スヌープ(バス監視)を行う。
プロトコールのタイプを表すビットである。つまり、こ
のページに属するデータはどのタイプのブロトコールを
使ってアクセスするかを示す情報である。ここでは3ビ
ットでプロトコールのタイプを表わすことにしているが
、この数はシステムがサポートするプロトコールの数に
対応している(3ビットでは23=8種類までのプロト
コールに対応)。プロセッサ(またはMMU)がメモリ
・アクセスする際に、このアクセスはどのブロトコール
で処理しなければならないかを示すため、このプロトコ
ールのタイプを示すビットを外部に出力する信号線をプ
ロセッサに設ける(第3図)。そして、第2図のように
マルチプロセッサを構成し、キャッシュC1C・・・c
oから共有バス1上にアクセスが出るとき、つまり共有
バス1のトラフィックが必要なときには、共有バス1に
もプロトコールのタイプを示す信号が出力され、他のキ
ャッシュCIG・・・coはこの信号でブロトコールを
選択しながらバス・スヌープ(バス監視)を行う。
第5図は第4図のプロトコール制御を従来型のCPUや
MMUでインプリメントした変形例を示す。第5図の変
形例では、ページ・エントリ内にT2,TI,Toのよ
うなビットはないので、アドレスの一15ー 上位2〜3ビットをプロトコールのタイプを示すビット
として使用する(第5図)。32ビットの実アドレス線
があれば、2〜3ピットこの用途に使用しても512M
バイト〜IGバイトの実メモリ空間が使用可能で実用上
問題ないと思われる。
MMUでインプリメントした変形例を示す。第5図の変
形例では、ページ・エントリ内にT2,TI,Toのよ
うなビットはないので、アドレスの一15ー 上位2〜3ビットをプロトコールのタイプを示すビット
として使用する(第5図)。32ビットの実アドレス線
があれば、2〜3ピットこの用途に使用しても512M
バイト〜IGバイトの実メモリ空間が使用可能で実用上
問題ないと思われる。
次にオール・リード(all read) ・タイプ
のプロトコールについて説明しておく。
のプロトコールについて説明しておく。
以上のように効率的にプロトコールを切替る機構を実現
することが可能となると、ある種のデータにのみ有効だ
が、他のデータに用いると効率が悪くなるため今まで使
われなかったようなブロトコールも有効に使えるように
なる。そのようなプロトコールに対してはその適合する
データにのみ選択的に用いられるように制御する。この
ようなプロトコールの例がall read というプ
ロトコールである。このプロトコールはバス・スヌープ
を行っているキャッシュが他のキャッシュによる共有パ
スを使っての読み出しの際に積極的にバス上のデータを
取り込むプロトコールである。
することが可能となると、ある種のデータにのみ有効だ
が、他のデータに用いると効率が悪くなるため今まで使
われなかったようなブロトコールも有効に使えるように
なる。そのようなプロトコールに対してはその適合する
データにのみ選択的に用いられるように制御する。この
ようなプロトコールの例がall read というプ
ロトコールである。このプロトコールはバス・スヌープ
を行っているキャッシュが他のキャッシュによる共有パ
スを使っての読み出しの際に積極的にバス上のデータを
取り込むプロトコールである。
このプロトコールは以下のような場合に適している。全
プロセッサが同じデータを参照する必要があるときに各
プロセッサが個別にリードを行ない、メモリからキャッ
シュにデータを張り付けるとすると、キャッシュ内にデ
ータが持ってこられるまでに、データ数×プロセッサ数
のバス・トラフィックが共有バスで発生する。そこで
、allreadをこのデータに対するプロトコールと
して用いれば、データ数だけのバス・トラフィックで済
み効率が良い。
プロセッサが同じデータを参照する必要があるときに各
プロセッサが個別にリードを行ない、メモリからキャッ
シュにデータを張り付けるとすると、キャッシュ内にデ
ータが持ってこられるまでに、データ数×プロセッサ数
のバス・トラフィックが共有バスで発生する。そこで
、allreadをこのデータに対するプロトコールと
して用いれば、データ数だけのバス・トラフィックで済
み効率が良い。
つぎにアップデート・タイプ、インバリデート・タイプ
およびオール・リード・タイプのプロトコールを例に用
いて、キャッシュのスヌーブ時の動作を説明する。バス
・スヌーブの結果のキャッシュの動作を箇条書きにする
と以下のようになる。
およびオール・リード・タイプのプロトコールを例に用
いて、キャッシュのスヌーブ時の動作を説明する。バス
・スヌーブの結果のキャッシュの動作を箇条書きにする
と以下のようになる。
アップデート・タイプ
・書込みアクセスでキャッシュ・ヒットなら、バス上の
データでキャッシュ内 のデータを更新する。
データでキャッシュ内 のデータを更新する。
・他の場合なら、何もしない(注参照)。
(注)ここでは、キャッシュの動作のうち、ブロトコー
ルをデータ毎に変更することで効率が上がるようなもの
のみに注目している。そこで、この箇条書きでは書込み
動作がどんな方式で行なわれるかということを簡単のた
めに考慮していない。
ルをデータ毎に変更することで効率が上がるようなもの
のみに注目している。そこで、この箇条書きでは書込み
動作がどんな方式で行なわれるかということを簡単のた
めに考慮していない。
書込み動作の方式がwrite back等の場合は、
データのオウナーシップ(誰が一番最新の正しいデータ
を持っており、バスに供給する責任があるか)によりキ
ャッシュのスヌーブ時の動作はもう少し複雑になる。
データのオウナーシップ(誰が一番最新の正しいデータ
を持っており、バスに供給する責任があるか)によりキ
ャッシュのスヌーブ時の動作はもう少し複雑になる。
インバリデート・ タイプ
・書込みアクセスでキャッシュ・ヒットなら、キャッシ
ュ内のデータを無効化(invalidate)する。
ュ内のデータを無効化(invalidate)する。
・他の場合なら何もしない(上記注参照)。
オール・リード・タイプ
・読み出しアクセスでキャッシュ・ヒットではなく、か
つデータのりプレイスによるライト・バック( wri
te back ,つまりシステム・パスへのアクセス
)を引き起こすことなしにデータを取り込めるなら、バ
ス上のデータをキャッシュ内に取り込む。
つデータのりプレイスによるライト・バック( wri
te back ,つまりシステム・パスへのアクセス
)を引き起こすことなしにデータを取り込めるなら、バ
ス上のデータをキャッシュ内に取り込む。
・書込みアクセスでキャッシュ・ヒットなら、アップデ
ート・タイプの書込みアクセス時と同じ処理を行う。
ート・タイプの書込みアクセス時と同じ処理を行う。
・他の場合なら何もしない(上記注参照)。
また、キャッシュのプロトコールの種類としては、他の
プロセッサの共有バスを使った読み出しアクセスでキャ
ッシュ・ヒットしたら、スヌープしているキャッシュは
キャッシュ内のデータを無効化するインバリート・リー
ド (invaliclate read) 等他に
も色々考えられるが、ここでは上記の3種を列挙するに
留めておく。
プロセッサの共有バスを使った読み出しアクセスでキャ
ッシュ・ヒットしたら、スヌープしているキャッシュは
キャッシュ内のデータを無効化するインバリート・リー
ド (invaliclate read) 等他に
も色々考えられるが、ここでは上記の3種を列挙するに
留めておく。
ページ毎の変数やワークエリアの振り分けの例を第6図
に示す。コンパイラによるアクセス・パターンの解析や
プログラマによるプロトコール・タイプの指示等によっ
て、変数やワークエリアをそれに適したプロトコールの
タイプを持つページ内に割り振る。また、プロセッサの
命令コードについても、全プロセッサが同じコードを共
有するときはall−readタイプのページに割り付
けるの一19ー が効率上得策である。
に示す。コンパイラによるアクセス・パターンの解析や
プログラマによるプロトコール・タイプの指示等によっ
て、変数やワークエリアをそれに適したプロトコールの
タイプを持つページ内に割り振る。また、プロセッサの
命令コードについても、全プロセッサが同じコードを共
有するときはall−readタイプのページに割り付
けるの一19ー が効率上得策である。
つぎにオール・リード・タイプの有効に利用する実施例
について第7図を参照して説明する。なお第7図におい
て第1図および第2図に対応する箇所には対応する符号
を付して詳細な説明を省略する。
について第7図を参照して説明する。なお第7図におい
て第1図および第2図に対応する箇所には対応する符号
を付して詳細な説明を省略する。
第7図実施例はつぎの点を考慮したものである。
すなわちall−readタイプのプロトコールを指定
したバス・アクセスにおいて、関係のないキャッシュに
までデータを取り込ませることがないように、データを
取り込んで欲しいキャッシュ群(プロセッサ群)を指定
できることが望ましい。特に,OS上でアプリケーショ
ン・プログラムとしてプログラムが走るようなときには
、複数のお互いに無関係なタスクがマルチプロプセツサ
・システム上で同時に走ることが想定され、このような
機能が望まれる。この機能の実現のためには、システム
・バス上でキャッシュ群を指定する情報を伝えるための
バスとその情報を蓄えておいて all−readタイ
プのアクセス時に外部に出力するような−20一 ハードウエアがあればよい。そして、各キャッシュはス
ヌーブ動作で、バスのアクセスがall−readタイ
プの際に、゛プロセッサ群を指定するバスも監視して自
分のプロセッサが選択されているときのみ前記の動作を
行うようにする。このプロセッサ群の指定にもきめ細か
い制御が要求されるのであれば、この指定の情報はペー
ジ・エントリ内に記憶され、ページ毎に指定が変えられ
るインプリメントが望ましい。しかし、それではプロセ
ッサ(またはMMU)のビン数がかなり増大してしまう
。また、all−readはあるタスクを一緒に処理し
ているプロセッサ群のすべてのキャッシュにデータを張
り付けるというのが基本的な考えなので、この同一のタ
スクを処理するプロセッサ群を指定する情報は各キャッ
シュに1つ記憶できれば良い。
したバス・アクセスにおいて、関係のないキャッシュに
までデータを取り込ませることがないように、データを
取り込んで欲しいキャッシュ群(プロセッサ群)を指定
できることが望ましい。特に,OS上でアプリケーショ
ン・プログラムとしてプログラムが走るようなときには
、複数のお互いに無関係なタスクがマルチプロプセツサ
・システム上で同時に走ることが想定され、このような
機能が望まれる。この機能の実現のためには、システム
・バス上でキャッシュ群を指定する情報を伝えるための
バスとその情報を蓄えておいて all−readタイ
プのアクセス時に外部に出力するような−20一 ハードウエアがあればよい。そして、各キャッシュはス
ヌーブ動作で、バスのアクセスがall−readタイ
プの際に、゛プロセッサ群を指定するバスも監視して自
分のプロセッサが選択されているときのみ前記の動作を
行うようにする。このプロセッサ群の指定にもきめ細か
い制御が要求されるのであれば、この指定の情報はペー
ジ・エントリ内に記憶され、ページ毎に指定が変えられ
るインプリメントが望ましい。しかし、それではプロセ
ッサ(またはMMU)のビン数がかなり増大してしまう
。また、all−readはあるタスクを一緒に処理し
ているプロセッサ群のすべてのキャッシュにデータを張
り付けるというのが基本的な考えなので、この同一のタ
スクを処理するプロセッサ群を指定する情報は各キャッ
シュに1つ記憶できれば良い。
そこで、キャッシュ毎に1つのレジスターを用意する(
第7図)。
第7図)。
第7図のプロセッサ群指定回路3,32・・・3nとプ
ロセッサ群指定バス4がこの処理を実現するためのキャ
ッシュ制郭機構である。プロセッサ指定バス4のバス幅
はlog2(n+2)−1本(nはプロセッサ台数)で
ある。その動作は以下の通りである。
ロセッサ群指定バス4がこの処理を実現するためのキャ
ッシュ制郭機構である。プロセッサ指定バス4のバス幅
はlog2(n+2)−1本(nはプロセッサ台数)で
ある。その動作は以下の通りである。
・プロセッサ群指定回路3132・・・3nは自分の担
当するプロセッサPIP2・・・P.が共有バス1を使
ってall−readタイプのアクセスをするときに、
内部のレジスタに保持したプロセッサ群を指定する識別
番号をプロセッサ群指定バス4上に出力する。
当するプロセッサPIP2・・・P.が共有バス1を使
ってall−readタイプのアクセスをするときに、
内部のレジスタに保持したプロセッサ群を指定する識別
番号をプロセッサ群指定バス4上に出力する。
・プロセッサ群指定回路3132・・・3nは自分の担
当するプロセッサP + P 2・・・P.が共有バス
1を使用していないときは、プロセッサ群指定バス4を
監視(スヌープ)シ、レジスターの値と比較して、自分
の担当するプロセッサPIP2・・・P,が選択されて
いるかどうかの信号をキャッシュC IC・・coに出
力する。キャッシュC + C・・・Cnは共有バス1
のアクセスがall readタイプの場合、その信号
によってスヌープ動作を切替る。
当するプロセッサP + P 2・・・P.が共有バス
1を使用していないときは、プロセッサ群指定バス4を
監視(スヌープ)シ、レジスターの値と比較して、自分
の担当するプロセッサPIP2・・・P,が選択されて
いるかどうかの信号をキャッシュC IC・・coに出
力する。キャッシュC + C・・・Cnは共有バス1
のアクセスがall readタイプの場合、その信号
によってスヌープ動作を切替る。
プロセッサ群指定回路3132・・・3n内部のレジス
タにプロセッサ群を指定する識別番号を設定するのはプ
ロセッサがソフトウェアで行う。OSが存在する時はO
Sがタスクにプロセッサを割り付ける毎にこのレジスタ
の設定を行えばよい。第7図中のキャッシュCIC・・
・coとプロセッサ群指定回路3132・・・3n間の
信号線A,Eはそれぞれ、プロセッサP r P 2・
・・Pnがall−readタイプのアクセスを行って
いることを示す信号線とプロセッサPIP2・・・Pn
が選択されていることを示す信号線である。
タにプロセッサ群を指定する識別番号を設定するのはプ
ロセッサがソフトウェアで行う。OSが存在する時はO
Sがタスクにプロセッサを割り付ける毎にこのレジスタ
の設定を行えばよい。第7図中のキャッシュCIC・・
・coとプロセッサ群指定回路3132・・・3n間の
信号線A,Eはそれぞれ、プロセッサP r P 2・
・・Pnがall−readタイプのアクセスを行って
いることを示す信号線とプロセッサPIP2・・・Pn
が選択されていることを示す信号線である。
もちろん、このプロセッサ群指定バス4は操作対象とす
るプロセッサ群(キャッシュ群)を指定するために用い
ているだけなので、all,,−readのプロトコー
ル以外でも使用できる。
るプロセッサ群(キャッシュ群)を指定するために用い
ているだけなので、all,,−readのプロトコー
ル以外でも使用できる。
データ(変数)の中にプログラムのある部分では全プロ
セッサPIP2・・・Pnに参照され、ある部分では1
つのプロセッサが独占使用するというようなものが存在
する、つまり望ましいプロトコール・タイプが1つのプ
ログラム中で大きく変化するデータが存在するときは、
同じように変化するデータを1つのページに集めて途中
でそのページ・エントリのプロトコール・タイプを書換
えること一23ー で対応できる。
セッサPIP2・・・Pnに参照され、ある部分では1
つのプロセッサが独占使用するというようなものが存在
する、つまり望ましいプロトコール・タイプが1つのプ
ログラム中で大きく変化するデータが存在するときは、
同じように変化するデータを1つのページに集めて途中
でそのページ・エントリのプロトコール・タイプを書換
えること一23ー で対応できる。
F.発明の効果
本発明によれば、共有データのタイプによってキャッシ
ュのプロトコールをオーバーヘッドなしに切替可能とな
る。これにより、共有データ毎に最適なプロトコールを
選択でき、共有バスの使用頻度を減らすことができる。
ュのプロトコールをオーバーヘッドなしに切替可能とな
る。これにより、共有データ毎に最適なプロトコールを
選択でき、共有バスの使用頻度を減らすことができる。
そして、マルチプロセッサ・システムの性能の向上を図
ることができる。
ることができる。
第1図は共有バス,共有メモリ型でスヌープ・キャッシ
ュを持った従来のマルチプロセッサ・システムを示すブ
ロック図、第2図は本発明の1実施例の全体構成を示す
ブロック図、第3図は第2図実施例のプロセッサに関連
する信号を説明する図、第4図は第2図実施例で用いる
ページ管理機構およびページ・エントリの構成例を説明
する図、第5図は第4図構成例を従来型のプロセッサで
実現するように変形した他の構成例を説明する図、第6
図はプロトコールのタイプによるページの割一24一 り付けを説明する図、第7図はプロセッサ群の指定を可
能にする、この発明の他の実施例の全体構成図を示すブ
ロック図である。 p.p2・・・Prl・・・プロセッサ、C 1C・・
・Cn・・・キャッシュ、M・・・共有メモリ、1・・
・共有バス、2・・・プロトコール・タイプ・バス、3
132・・−3n・・・プロセッサ群指定回路、4・・
・プロセッサ群指定バス。 出願人 日本アイ・ビー・エム株式会社復代理人
ュを持った従来のマルチプロセッサ・システムを示すブ
ロック図、第2図は本発明の1実施例の全体構成を示す
ブロック図、第3図は第2図実施例のプロセッサに関連
する信号を説明する図、第4図は第2図実施例で用いる
ページ管理機構およびページ・エントリの構成例を説明
する図、第5図は第4図構成例を従来型のプロセッサで
実現するように変形した他の構成例を説明する図、第6
図はプロトコールのタイプによるページの割一24一 り付けを説明する図、第7図はプロセッサ群の指定を可
能にする、この発明の他の実施例の全体構成図を示すブ
ロック図である。 p.p2・・・Prl・・・プロセッサ、C 1C・・
・Cn・・・キャッシュ、M・・・共有メモリ、1・・
・共有バス、2・・・プロトコール・タイプ・バス、3
132・・−3n・・・プロセッサ群指定回路、4・・
・プロセッサ群指定バス。 出願人 日本アイ・ビー・エム株式会社復代理人
Claims (4)
- (1)複数のプロセッサをそれぞれプライベート・キャ
ッシュを介して共有バスおよび共有メモリに接続し、こ
の共有バスへのアクセスを監視して所定のプロトコール
にしたがって上記プライベート・キャッシュにおけるデ
ータの操作を実行するマルチプロセッサ・システムにお
いて、 プロトコール・タイプを表示するプロトコール・タイプ
信号を受け取るプロトコール・タイプ・バスと、 上記プライベート・キャッシュ毎に設けられるとともに
上記プロトコール・タイプ・バスに共通して接続された
キャッシュ制御機構とを有し、各制御機構は、 データの記憶領域毎に割り当てられたプロトコール・タ
イプを記憶するプロトコール・タイプ記憶手段と、 データがアクセスされたときにそのデータの属する記憶
領域のプロトコール・タイプを上記プロトコール・タイ
プ記憶手段から取り出し、対応するプロトコール・タイ
プ信号を上記プロトコール・タイプ・バスに送出するプ
ロトコール・タイプ信号生成手段と、 上記プロトコール・タイプ・バス上のプロトコール・タ
イプ信号を監視して当該信号に応じたプロトコールで対
応するプライベート・キャッシュにおいてデータの操作
を実行する手段とを有することを特徴とするマルチプロ
セッサ・システム。 - (2)上記データの記憶領域の単位をページとした特許
請求の範囲第1項記載のマルチプロセッサ・システム。 - (3)上記プロトコール・タイプ記憶手段およびプロト
コール・タイプ信号生成手段をページ管理機構により構
成した特許請求の範囲第2項記載のマルチプロセッサ・
システム。 - (4)複数のプロセッサをそれぞれプライベート・キャ
ッシュを介して共有バスおよび共有メモリに接続し、こ
の共有バスへのアクセスを監視して所定のプロトコール
にしたがって上記プライベート・キャッシュにおけるデ
ータの操作を実行するマルチプロセッサ・システムにお
いて、 プロトコール・タイプを表示するプロトコール・タイプ
信号を受け取るプロトコール・タイプ・バスと、 1または複数種類のプロトコールについてそのプロトコ
ールに応じてデータの操作を実行するプロセッサを限定
的に指定するプロセッサ限定信号を受け取るプロセッサ
限定バスと、 上記プライベート・キャッシュ毎に設けられるとともに
上記プロトコール・タイプ・バスおよびプロセッサ限定
バスに共通して接続されたキャッシュ制御機構とを有し
、 各制御機構は、 データの記憶領域毎に割り当てられたプロトコール・タ
イプを記憶するプロトコール・タイプ記憶手段と、 データがアクセスされたときにそのデータの属する記憶
領域のプロトコール・タイプを上記プロトコール・タイ
プ記憶手段から取り出し、対応するプロトコール・タイ
プ信号を上記プロトコール・タイプ・バスに送出するプ
ロトコール・タイプ信号生成手段と、 上記プロトコール・タイプ信号が、上記プロセッサを限
定するプロトコール・タイプを表示するときに、上記プ
ロセッサ限定信号を上記プロセッサ限定バスに送出する
プロセッサ限定信号生成手段と、 上記プロトコール・タイプ・バス上のプロトコール・タ
イプ信号および上記プロセッサ限定バス上のプロセッサ
限定信号を監視して、対応するプライベート・キャッシ
ュにおいてデータの操作が必要かどうかを判別するとと
もに、必要なときには上記プロトコール・タイプ信号に
応じたプロトコールで対応するプライベート・キャッシ
ュにおいてデータの操作を実行する手段とを有すること
を特徴とするマルチプロセッサ・システム。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1057761A JPH0721781B2 (ja) | 1989-03-13 | 1989-03-13 | マルチプロセツサ・システム |
| EP19900301886 EP0388032A3 (en) | 1989-03-13 | 1990-02-21 | Storage control in cached multi-processor systems |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP1057761A JPH0721781B2 (ja) | 1989-03-13 | 1989-03-13 | マルチプロセツサ・システム |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPH02238534A true JPH02238534A (ja) | 1990-09-20 |
| JPH0721781B2 JPH0721781B2 (ja) | 1995-03-08 |
Family
ID=13064863
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP1057761A Expired - Lifetime JPH0721781B2 (ja) | 1989-03-13 | 1989-03-13 | マルチプロセツサ・システム |
Country Status (2)
| Country | Link |
|---|---|
| EP (1) | EP0388032A3 (ja) |
| JP (1) | JPH0721781B2 (ja) |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH04328653A (ja) * | 1991-04-22 | 1992-11-17 | Internatl Business Mach Corp <Ibm> | マルチプロセッサ・システムおよびそのデータ伝送装置 |
| JPH04337854A (ja) * | 1991-05-15 | 1992-11-25 | Mitsubishi Electric Corp | データ処理装置 |
| JP2008282417A (ja) * | 2001-03-30 | 2008-11-20 | Mips Technologies Inc | コンピュータメモリ保護方式の拡張機構 |
Families Citing this family (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| FR2707776B1 (fr) | 1993-07-15 | 1995-08-18 | Bull Sa | Procédé de gestion de mémoires d'un système informatique, système informatique mémoire et support d'enregistrement mettant en Óoeuvre le procédé. |
| FR2707774B1 (fr) * | 1993-07-15 | 1995-08-18 | Bull Sa | Procédé de gestion cohérente des échanges entre des niveaux d'une hiérarchie de mémoires à au moins trois niveaux. |
| FR2707778B1 (fr) * | 1993-07-15 | 1995-08-18 | Bull Sa | NÓoeud de processeurs. |
| FR2707777B1 (fr) * | 1993-07-15 | 1995-08-18 | Bull Sa | Ensemble informatique à mémoire partagée. |
| US7644237B1 (en) | 2003-06-23 | 2010-01-05 | Mips Technologies, Inc. | Method and apparatus for global ordering to insure latency independent coherence |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS57111871A (en) * | 1980-12-29 | 1982-07-12 | Fujitsu Ltd | Buffer storage control system |
| JPS61141054A (ja) * | 1984-12-14 | 1986-06-28 | Nec Corp | 情報処理装置 |
| JPH0247756A (ja) * | 1987-07-27 | 1990-02-16 | Computer X Inc | 多重プロセツサ・システム用書込み共用キヤツシユ回路 |
| JPH02234247A (ja) * | 1989-03-08 | 1990-09-17 | Nec Corp | キャッシュメモリシステム |
-
1989
- 1989-03-13 JP JP1057761A patent/JPH0721781B2/ja not_active Expired - Lifetime
-
1990
- 1990-02-21 EP EP19900301886 patent/EP0388032A3/en not_active Ceased
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS57111871A (en) * | 1980-12-29 | 1982-07-12 | Fujitsu Ltd | Buffer storage control system |
| JPS61141054A (ja) * | 1984-12-14 | 1986-06-28 | Nec Corp | 情報処理装置 |
| JPH0247756A (ja) * | 1987-07-27 | 1990-02-16 | Computer X Inc | 多重プロセツサ・システム用書込み共用キヤツシユ回路 |
| JPH02234247A (ja) * | 1989-03-08 | 1990-09-17 | Nec Corp | キャッシュメモリシステム |
Cited By (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH04328653A (ja) * | 1991-04-22 | 1992-11-17 | Internatl Business Mach Corp <Ibm> | マルチプロセッサ・システムおよびそのデータ伝送装置 |
| JPH04337854A (ja) * | 1991-05-15 | 1992-11-25 | Mitsubishi Electric Corp | データ処理装置 |
| JP2008282417A (ja) * | 2001-03-30 | 2008-11-20 | Mips Technologies Inc | コンピュータメモリ保護方式の拡張機構 |
Also Published As
| Publication number | Publication date |
|---|---|
| JPH0721781B2 (ja) | 1995-03-08 |
| EP0388032A2 (en) | 1990-09-19 |
| EP0388032A3 (en) | 1991-10-23 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US8909871B2 (en) | Data processing system and method for reducing cache pollution by write stream memory access patterns | |
| JP2833062B2 (ja) | キャッシュメモリ制御方法とこのキャッシュメモリ制御方法を用いたプロセッサおよび情報処理装置 | |
| US5123094A (en) | Interprocessor communications includes second CPU designating memory locations assigned to first CPU and writing their addresses into registers | |
| US6434669B1 (en) | Method of cache management to dynamically update information-type dependent cache policies | |
| JP3239218B2 (ja) | キャッシュ管理システム | |
| JP6831788B2 (ja) | キャッシュ保守命令 | |
| JP3493409B2 (ja) | コンピユータ装置 | |
| CN101446923B (zh) | 一种响应于指令而清洗高速缓冲存储器线的装置和方法 | |
| US6425058B1 (en) | Cache management mechanism to enable information-type dependent cache policies | |
| US6920521B2 (en) | Method and system of managing virtualized physical memory in a data processing system | |
| US5802574A (en) | Method and apparatus for quickly modifying cache state | |
| EP0780769A1 (en) | Hybrid numa coma caching system and methods for selecting between the caching modes | |
| EP0301354A2 (en) | Cache consistency protocol for multiprocessor system | |
| EP0780770A1 (en) | Hybrid numa coma caching system and methods for selecting between the caching modes | |
| JPH09259036A (ja) | ライトバックキャッシュおよびライトバックキャッシュ内で整合性を維持する方法 | |
| JP2010507160A (ja) | データ処理装置の共有メモリへの書込みアクセス要求の処理 | |
| JPH03217963A (ja) | マルチプロセッサ・システムおよびそのプライベート・キャッシュ制御方法 | |
| US20020062434A1 (en) | Processing system with shared translation lookaside buffer | |
| US6535958B1 (en) | Multilevel cache system coherence with memory selectively configured as cache or direct access memory and direct memory access | |
| EP3800556A1 (en) | Selective override of cache coherence in multi-processor computer systems | |
| US5511226A (en) | System for generating snoop addresses and conditionally generating source addresses whenever there is no snoop hit, the source addresses lagging behind the corresponding snoop addresses | |
| JPH10293720A (ja) | コンピュータシステムにおけるキャッシュ・コヒーレンシー機構および主メモリに保持されている項目に関してキャッシュの内容のコヒーレンシー状態を変更する方法 | |
| JPH02238534A (ja) | マルチプロセツサ・システム | |
| JPH06318174A (ja) | キャッシュ・メモリ・システム及び主メモリに記憶されているデータのサブセットをキャッシュする方法 | |
| KR100373576B1 (ko) | 변환 장치의 엔트리를 무효로 하는 시스템 및 방법 |