JPH04353947A - メモリページ特性タグ付けシステム - Google Patents

メモリページ特性タグ付けシステム

Info

Publication number
JPH04353947A
JPH04353947A JP4026785A JP2678592A JPH04353947A JP H04353947 A JPH04353947 A JP H04353947A JP 4026785 A JP4026785 A JP 4026785A JP 2678592 A JP2678592 A JP 2678592A JP H04353947 A JPH04353947 A JP H04353947A
Authority
JP
Japan
Prior art keywords
memory
cache
data
bus
address
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
JP4026785A
Other languages
English (en)
Inventor
Greg Woods
グレッグ・ウッズ
Basset Carroll
キャロル・バセット
Robert Campbell
ロバート・キャンベル
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.)
HP Inc
Original Assignee
Hewlett Packard Co
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 Hewlett Packard Co filed Critical Hewlett Packard Co
Publication of JPH04353947A publication Critical patent/JPH04353947A/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/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/0292User address space allocation, e.g. contiguous or non contiguous base addressing using tables or multilevel address translation means
    • 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
    • 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/0888Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches using selective caching, e.g. bypass
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/20Employing a main memory using a specific memory technology
    • G06F2212/206Memory mapped I/O

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】
【産業上の利用分野】この発明はコンピュータシステム
に関し、より詳細には多重プロセッサ(MP)システム
内のプロセッサによって共用されるメモリの効率的な管
理を提供するコンピュータアーキテクチャに関する。
【0002】
【従来の技術及び発明が解決しようとする課題】メモリ
スペースを共用するプロセッサを有するMPシステムに
おいて、そのMPシステムは、メモリ中の全データの間
の可干渉性を維持しなければならない。データは、主メ
モリやあるいはキャッシュ等の他の遠隔の記憶場所を含
むいくつかの異なる場所に存在することがある。
【0003】可干渉性とは、プロセッサ内の各中央処理
装置(CPU)が共用メモリ中の特定のアドレスに対応
する最新のデータへのアクセスを有するという概念であ
る。つまり、あるアドレスのデータラインが1つ以上の
メモリ及び/又は主メモリによって同時に共用される場
合、このデータラインが前述の記憶場所のうちの1つで
更新あるいは変更される際に、最新のデータラインが識
別されて全CPUに対して使用可能とされなければなら
ない。本明細書において、データラインとは、命令や実
際の処理済み又は未処理のデータを含む、メモリに記憶
されているあらゆる情報を指す。
【0004】バスコントローラがメモリ読み出しあるい
はメモリ書き込みのいずれかを検出すると、バスコント
ローラはMPシステム内のすべてのキャッシュを対象と
する検索サイクルを開始する。
【0005】この検索サイクルのために実施されるプロ
トコルの大部分はMPシステムに用いられるキャッシュ
の種類によって決まる。従来、キャッシュは「ライトバ
ック(write−back)」(WB)あるいは「ラ
イトスルー(write−through) 」(WT
)に分類されてきた。最近では、そのキャッシュへの入
力の論理状態に応じてWBキャッシュあるいはWTキャ
ッシュのいずれとしても動作可能に設計されたキャッシ
ュも出てきている。
【0006】WBキャッシュにおいては、データライン
はそのデータラインが他のなんらかのソースによって要
求されているときにのみWBキャッシュから書き込まれ
る。したがって、ローカルCPUは、MPシステム中の
他の記憶場所がローカルWBキャッシュ中のデータライ
ンの変更を知らなくてもその変更を何度も行うことがで
きる。
【0007】検索サイクル中に、あるWBキャッシュが
変更データを有すると判定された場合、そのWBキャッ
シュはそのデータを要求するCPUにそのデータを提供
する。検索サイクル中にWBキャッシュからのメモリ書
き込みが発生した場合、可干渉性を維持するための従来
のあるプロトコルは、それを受信する記憶場所以外のす
べての記憶場所においてデータラインを無効にすること
になっている。データラインは、そのWBキャッシュの
ディレクトリ中のローカルステータスビットのステータ
スを変更することによって無効とされる。このステータ
スビットは当業界では「有効」ビットと呼ばれることが
多い。
【0008】WTキャッシュにおいては、いずれかのプ
ロセッサによってデータラインが更新あるいは変更され
るたびにデータラインが主メモリに書き込まれる。した
がって、ほとんどの現在のデータラインは常に主メモリ
中にある。その結果、WTキャッシュ間の可干渉性を維
持するための従来のプロトコルは、バスコントローラに
、メモリ書き込みの際にのみ、検索サイクルを開始させ
なければならない。WTキャッシュからのメモリ読み出
しに対してはいかなる動作も行う必要がない。したがっ
て、MPシステムがWTキャッシュを採用する場合、可
干渉性の維持はWBキャッシュの場合に比べて少ない検
索サイクルで行うことができる。
【0009】しかし、前述のWTキャッシュあるいはW
Bキャッシュを用いるMPシステム中の可干渉性を維持
するための従来のプロトコルには問題がある。検索サイ
クルが開始されるたびに、キャッシュを用いるいかなる
CPUも、そのキャッシュ中のデータラインに対して照
会が行われる間、一時的にウェイトしなければならない
。したがって、検索照会のためにCPUの性能が犠牲と
なる。MPシステムのプロセッサ数が多くなると、検索
サイクルをより多く実行しなければならず、その結果、
キャッシュとの間により多くの対話が行われなければな
らない。更に、システムバスを含むMPシステムのバス
は、トラフィック量が多いという特徴がある。したがっ
て、広い意味では、検索サイクルが多いと、MPシステ
ム中で動作することのできるプロセッサの数が少なくな
る。
【0010】
【課題を解決するための手段】本発明は、多重プロセッ
サ(MP)システム内の共用メモリ中の異なるメモリス
ペースを特徴付けするシステム及びその方法である。こ
のシステム及び方法は、データ処理とスループットを最
適化すると共に、可干渉性を維持し、また必要な検索サ
イクルを最小限にするものである。
【0011】本発明では、MPシステムの1つ以上のマ
イクロプロセッサ(MPU)に関連する1つ以上のキャ
ッシュにメモリ特性タグ付け装置を接続する。各キャッ
シュに別個のメモリ特性タグ付け装置を割り当てるのが
最適である。また、メモリ特性タグ付け装置は、MPシ
ステムのバスネットワークと通信を行うものであり、こ
のバスネットワークのバス数はいかなる数であってもい
【0012】メモリ特性タグ付け装置は、バスネットワ
ークからアドレスを読み出す第1の手段を有する。また
、そのアドレスに対応するメモリスペースが共用である
かあるいはキャッシュに関連するマイクロプロセッサの
専用であるかを特定する第2の手段を有する。最後に、
メモリスペースが、キャッシュに関連するマイクロプロ
セッサの専用である場合に、バスネットワーク上での検
索サイクルの発生を完全に防止する第3の手段を有する
【0013】本発明は更に、このメモリ特性タグ付け装
置に第3及び第4の手段を含むものである。第4の手段
は、これらのアドレスが、共用メモリに対応するか、あ
るいはIOポートに対応するかを特定する。第5の手段
は、共用メモリに対応するあらかじめ選択されたアドレ
スをIOアドレスに変換する。更に、この第4及び第5
の手段は、第2及び第3の手段を包含することなくこの
装置に組み込むことができる。
【0014】更に本発明は、このメモリ特性タグ付け装
置に第6及び第7の手段を含むものである。第6の手段
は、これらのアドレスが、ライトバック型あるいはライ
トスルー型として取り扱うべきデータに対応するかどう
かを特定する。第7の手段は、第6の手段に応じてキャ
ッシュにライトバック(write−back)、ある
いはライトスルー(write−through) を
行わせる。更に、この第6及び第7の手段は、第2ない
し第5の手段を包含することなくこの装置に組み込むこ
とができる。
【0015】本発明は、1つ以上のキャッシュ、共用メ
モリ及びバスネットワークを有する多重プロセッサシス
テムにおける方法を提供する。この方法は以下のステッ
プを含む。まず、共用メモリに対するメモリアクセスが
バスネットワーク上で検出される。第2に、このメモリ
アクセスが共用メモリ中の専用の私用スペースへのアク
セスであるかどうかが判定される。第3に、このメモリ
アクセスが専用の私用スペースに対応する場合、検索サ
イクルがバスネットワークから完全にマスクされる。
【0016】本発明は、1つ以上のマイクロプロセッサ
、メモリ、1つ以上のIOポート、及びマイクロプロセ
ッサを接続するバスネットワークを有する多重プロセッ
サシステムにおける方法を提供する。この方法は以下の
ステップを含む。まず、バスネットワークからメモリア
ドレスが取り出される。第2に、このメモリアドレスが
メモリに対応するのか、IOポートに対応するのかが判
定される。第3に、このメモリアドレスがIOポートに
対応する場合、このメモリアドレスがバスネットワーク
上のIOアドレスに変換される。
【0017】本発明は上述のように、従来の問題点を克
服し、更に以下の特徴及び利点を提供するものである。
【0018】この発明は多重プロセッサシステムにおけ
る可干渉性を維持すると共に、キャッシュに対する必要
な検索サイクル数を最小限とする。つまり、キャッシュ
に対する割り込みが少なく、多重プロセッサ(MP)シ
ステムのバス上のトラフィックが少なくなる。
【0019】本発明は更に、時間のかかる入出力(IO
)命令をマイクロプロセッサが生成する必要をなくすこ
とにより、データ処理速度及びスループットを最適化す
る。この特徴は、効率的なIO命令を有さない「INT
EL」80860マイクロプロセッサ(米国Intel
 Corporation 製)等のマイクロプロセッ
サに対して特に有効である。
【0020】本発明の他の特徴や利点は、以下の図面及
び詳細な説明から当業者に明らかとなるであろう。他の
全ての特徴及び利点がここに含まれるよう意図している
【0021】特許請求の範囲において定義するところの
本発明もまた、本書及び図面を参照することによってよ
り明確に理解可能となる。
【0022】
【実施例】本発明の好適な実施例は、図1に示すように
、従来の多重プロセッサ(MP)システムに組み込むこ
とができる。同図に示すように、このMPシステムは、
n個のマイクロプロセッサ(MPU) 102〜108
 からなる。このn個のMPU 102〜108 は、
互いに同種とすることも異種とすることもできる。
【0023】例えば、このn個のMPU 102〜10
8 のうちのいくつかを「INTEL」ファミリーのM
PU(米国Intel Corporation 製)
とし、他は「MOTOROLA」ファミリー(米国Mo
torola Inc. 製)とすることができる。更
に、この発明は、いかなる種類のプロセッサを用いるM
Pシステムにも実施することができ、またマイクロプロ
セッサに限定されるものでもない。
【0024】図1の点線はMPシステム中の仮想メモリ
記憶場所を示す。このMPシステムは、全体としてある
いは部分的に共用メモリシステムであることが意図され
ている。主メモリ110 はこのMPシステムの主たる
メモリ記憶場所として働く。n個のMPU102〜10
8 のうちのいくつかは、オンチップキャッシュ112
,114を含むものとすることができる。更にn個のM
PU 102〜108 のうちのいくつかは、外部キャ
ッシュ 116〜120 を有するものとすることがで
きる。外部キャッシュは、特定のMPUに専用のものと
するか、あるいは1つ以上の他のMPUによって共用さ
れるものとすることができる。
【0025】この実施例は更にいくつかのバスからなる
バスネットワークを含む。図1に示すように、このMP
システムは高速システムバス122 と低速バス124
 からなる。これらのバスは、制御属性とインターフェ
イス属性との両方を処理するバスコントローラ/インタ
ーフェイス126 を介してインターフェイスされてい
る。この発明が、プロトコルもしくは各種バスの互換モ
デルを再定義することなく、任意の数の、及び様々な、
アーキテクチャ的に絶縁されたバスを有するMPシステ
ムに実施可能であることは、注目に値する。
【0026】図2は、図1のMPシステムにおけるデー
タ転送中に発生するアドレス、データ及び制御信号の流
れを示すものである。アドレス、データ及び制御信号の
流れは、適正なデータ転送を行いデータの可干渉性を保
証する従来のプロトコルに従ったものである。
【0027】説明の目的上、図1のMPシステムは、主
メモリ110 に加えてn個のキャッシュ 202〜2
06 を有するものと仮定する。上述のメモリ記憶場所
は、図2においてはバスネットワーク208 で表され
る、図1のバス122,124 を介して通信を行う。 メモリ記憶場所の対話をまず説明する。ここで、n個の
キャッシュ 202〜206はライトバック(WB)キ
ャッシュと仮定する。この想定では、データラインがW
Bキャッシュ 202〜206 の1つによって遠隔の
記憶場所に書き込まれる際に、可干渉性を維持するため
の従来のプロトコルが、検索サイクル中に受信記憶場所
以外のすべての記憶場所においてデータラインを無効に
するようになっている。より詳細には、バスコントロー
ラ/インターフェイス126 がメモリからの読み出し
及びメモリへの書き込みについてバスネットワーク20
8 を監視する。メモリ読み出し及び書き込みは、CP
U、バスマスター、あるいは直接メモリアクセス(DM
A)装置によって開始される。メモリ読み出しあるいは
書き込みは、バス218〜224 上のメモリアドレス
の結果として、データバス 210〜216 を介して
発生する。
【0028】可干渉性の維持のためにMPシステム中で
実施されるプロトコルの大部分は、そのMPシステムで
用いられるキャッシュの種類によって決まる。従来、キ
ャッシュは、「ライトバック」(WB)あるいは「ライ
トスルー」(WT)のいずれかに分類することができる
【0029】まずキャッシュ 202〜206 がWB
キャッシュであると仮定する。バスコントローラ/イン
ターフェイス126 は、メモリ読み出し又はメモリ書
き込みのいずかであるバスサイクルを検出すると、この
バスコントローラ/インターフェイス126は検索サイ
クルを開始する。メモリ読み出し及びメモリ書き込みは
、バスネットワーク208 上の書き込み/読み出し(
W/R)制御226 とメモリ入出力(MEM/IO)
制御228 とを監視することによって判定される。更
に、バスコントローラ/インターフェイス126 から
の検索ストローブが、矢印 230〜234 に示すよ
うに、MPシステム中のn個のキャッシュ 202〜2
06 のすべてに包括的に送出される。
【0030】検索ストローブを受信すると、n個のキャ
ッシュ 202〜206 のそれぞれがそのメモリ記憶
スペース内のデータラインをチェックする。WBキャッ
シュ中にデータラインが存在し、そのWBキャッシュへ
のメモリ書き込みがある場合、そのデータラインは、そ
のデータラインに対応する「有効」ビットとして知られ
るローカルステータスビットの状態を変更することによ
って無効とされる。しかし、データラインが存在し、そ
のWBキャッシュからのメモリ読み出しがある場合、そ
のデータラインはそのWBキャッシュから転送される。 したがって、MPシステムにおいてWBキャッシュが用
いられている場合、検索サイクルは、メモリ読み出し及
びメモリ書き込みの各々の度にバスコントローラ/イン
ターフェイス126によって従来と同様に発生する。
【0031】このn個のキャッシュ 202〜206 
がライトスルー(WT)型である場合、可干渉性の維持
のために従来は異なるプロトコルが用いられている。可
干渉性は、バスコントローラ/インターフェイス126
 によって開始される(WBキャッシュを用いた場合と
比較して)より少ない数の検索サイクルで維持すること
ができる。 WTキャッシュは、メモリ記憶場所内のデータラインの
更新あるいは変更の度に主メモリ110 に「ライトス
ルー」を行う。したがって、主メモリ110 には常に
最新のデータラインがある。その結果、可干渉性を維持
するための従来のプロトコルは、WTキャッシュへのメ
モリ書き込みの際にのみバスコントローラ/インターフ
ェイス126に検索サイクルを生成させなければならな
い。WTキャッシュからのメモリ読み出しについてはい
かなる動作も必要ではない。
【0032】しかし、上述のWTキャッシュあるいはW
Bキャッシュのいずれかを用いたMPシステム中の可干
渉性を維持するための従来のプロトコルはいずれもその
性能に問題がある。検索サイクルが発生する度に、キャ
ッシュを用いた中央処理装置(CPU)は、そのキャッ
シュ中のデータラインへについての照会が行われる間す
べて一時的にウェイトしなければならない。CPUの性
能は、キャッシュ内におけるライン照会の結果として、
事実上犠牲にされる。
【0033】MPシステムのプロセッサが多いほど検索
サイクルの数が多くなり、その結果n個のキャッシュ 
202〜206 により多くの対話が発生しなければな
らない。 したがって、このMPシステムのバスネットワーク20
8 は、トラフィック量が大きいという特徴を有する。 更に広義には、検索サイクルの数が多過ぎると、MPシ
ステム内で動作可能なプロセッサの数が制限されること
になる。
【0034】図3はこの発明の好適な実施例を示すもの
である。本実施例は、メモリ特性タグ付け装置302 
を好適には図1のMPシステムのキャッシュ 112〜
120 のそれぞれにインターフェイスすることを包含
するものである。その一例として、図1のキャッシュ1
16 にインターフェイスされたメモリ特性タグ付け装
置302 を示す。このメモリ特性タグ付け装置302
 は、図1のn個のキャッシュのいずれにインターフェ
イスしたものを図示してもよい。
【0035】基本的には、このメモリ特性タグ付け装置
302 は、共用メモリ中のデータのページに特性を割
り当てる。好適な実施例においては、各ページは以下の
4つの特性を有するものとする。(1) 可干渉性と非
可干渉性とのいずれか、(2) キャッシュ可能とキャ
ッシュ不能とのいずれか、(3) ライトスルー(WT
)とライトバック(WB)とのいずれか、(4) メモ
リ(MEM)と入出力(IO)とのいずれか。
【0036】図1のMPU 102〜108 のいずれ
かがデータラインの読み出しあるいは書き込みをしよう
とする場合、前述のように、メモリアクセスが発生すべ
きであることを示す制御信号が、CPU、バスマスター
、あるいはDMA装置によって、MPシステムのバスネ
ットワーク208 のバス上に出力される。コントロー
ラ/インターフェイス126 は、この制御信号、詳細
には、W/R制御226 とMEM/IO制御228 
とを含む制御信号を検出する。
【0037】次に、バスコントローラ/インターフェイ
ス126 は検索サイクルを生成する。しかし、この好
適な実施例では、検索制御306 により示すように、
検索ストローブがメモリタグ付け装置302 にのみ送
られる。その結果、メモリ特性タグ付け装置302 は
、メモリアクセスの発生が間近であることが知らされる
【0038】したがって、メモリ特性タグ付け装置30
2 は、バス308 に示すように、バスネットワーク
208 からそのメモリアクセスのアドレスを読み出す
。メモリ特性タグ付け装置302 は次に、そのアドレ
スに対応するデータからなるメモリページを判定し、こ
の特定のメモリページに割り当てられた特性を取り出す
。このメモリページを記述する特性は、以下に詳細に説
明するように、性能を最適化するために用いることがで
きる。
【0039】この特性は、メモリ特性タグ付け装置30
2 内に設けられた従来のルックアップテーブルに格納
し、またそこから取り出すことができる。この特性は、
メモリ特性タグ付け装置302 をプログラムすること
により、MPシステムのパワーオン又は初期化の間に設
定可能である。
【0040】取り出されるメモリページに対して割り当
てられた特性の1つは、このメモリページが可干渉性で
あるか可干渉性でないかのいずれかとなる。以下の論議
は、上述の概念に焦点を合わせたものである。
【0041】図1の従来のMPシステムにおいて、MP
U 102〜108 のそれぞれは、対応する専用メモ
リスペースを主メモリ110 内に有する。つまり、M
PU 102〜108 のそれぞれは、他のいかなるM
PU、バスマスター、DMA装置あるいはメモリのユー
ザーにも用いられないメモリスペースを有する。
【0042】この専用のメモリスペースは通常、UNI
Xオペレーティングシステムの性質に起因するソフトウ
エア省略時解釈の結果として生じる。更に、これらの専
用スペースの容量は、UNIXオペレーティングシステ
ムの実施態様によって決まる。これらの専用メモリスペ
ースに記憶された情報には、例えば、双対プロセッサの
状態が含まれる。特に、CPU 128〜134 のい
ずれかが双対プロセッサを有し、そのCPUが割り込み
を受ける場合には、そのCPUは、割り込みから元の状
態に戻った際に適正な動作を再開するために、双対プロ
セッサの状態を退避させなければならない。
【0043】MPU 102〜108 のいずれかがそ
の私用スペースにアクセスする場合に、検索サイクルが
実行される。他のMPUは一時的に妨害される。それら
は自己の命令セットの実行を続けるかわりに、検索サイ
クルを発生させるように強制される。これら他のMPU
は、それらに関連する(オンチップ、私用又は共用の)
キャッシュが関連するデータラインを持っていなくても
時間を浪費してしまう、ということは注目に値する。
【0044】本発明では、メモリ特性タグ付け装置30
2 は、とりわけ、バス308 上のアドレスに対応す
るデータが可干渉性であるかないかを指定する。つまり
、このメモリ特性タグ付け装置302 は、データがそ
の関連するキャッシュに専用のものであるのか、あるい
は他のMPUによって共用されるものであるのかを示す
【0045】アクセスが、キャッシュに関連するCPU
の専用メモリスペースに対するものである場合、メモリ
特性タグ付け装置302 は、他の無関係なMPUが検
索ストローブを受信することのないよう、検索サイクル
をマスクする。しかし、このメモリアクセスが、そのキ
ャッシュに関連するCPUの専用メモリスペースに対す
るものでない場合には、図3に検索制御310 で示す
ように、バスネットワーク208上で検索サイクルが発
生する。このように、CPUが不必要な検索サイクルに
より妨害されるということがないため、性能が向上する
【0046】この好適な実施例におけるメモリのページ
に割り当てられたもう1つの特性は、各メモリページが
キャッシュ可能であるか又はキャッシュ不能であるかの
いずれかである。この情報をキャッシュ116 に関し
て局所的に利用可能とすることにより、バスネットワー
ク208 上の検索サイクルの数が最小限とされる。メ
モリ特性タグ付け装置302 は、メモリ読み出しを検
出すると、この情報を取り出し、それをキャッシュ使用
可能/使用不能(「KEN」としても知られる)制御3
14 を介してその対応するキャッシュ116 に送る
。以下の説明は上述のキャッシュ能力の概念に焦点を合
わせたものである。
【0047】図1のn個のMPU 102〜108 は
通常、8、16、あるいは32データビットのデータラ
インを読み出す。しかし、キャッシュ 112〜120
 は一般により大きな、例えば2倍、3倍あるいは4倍
大きいデータラインを有する。キャッシュ使用可能/使
用不能制御314は、(オンチップ又は外部の)キャッ
シュ116 に対し、そのキャッシュ116 に新しい
データラインをロードすることが性能の点から有益であ
るかどうかを示す方法である。
【0048】あるデータラインがキャッシュ可能である
かないかの判断は、MPシステムの設計に左右されると
ころが大きい。例えば、多くのMPシステムにおいて、
CPUが主メモリからの読み出しを行っている場合、そ
のデータラインはおそらくキャッシュされる。しかし、
多くのMPシステムにおいて、データバッファやリモー
トキャッシュから読み出しが行われている場合、そのデ
ータラインはおそらくキャッシュされない。これはこの
データは絶えず変化しており、したがって多数の検索サ
イクルを要するためである。
【0049】上述のように、データのキャッシュ可能性
を含む特性は、メモリ特性タグ付け装置302 をプロ
グラムすることにより、MPシステムのパワーオン中に
設定することができる。メモリ内におけるどのアドレス
指定領域が絶えず変更を受け、どのアドレス指定領域が
そうでないかということは知られている。頻繁に変更を
受けることのないメモリのアドレス指定領域がキャッシ
ュ可能であるものとして指定されるのに対し、頻繁に変
更される領域にはその指定は行われない。
【0050】この好適な実施例におけるメモリに割り当
てられるもう1つの特性は、メモリページが、ライトス
ルー(WT)として取り扱われるべきかあるいはライト
バック(WB)として取り扱われるべきかということで
ある。この情報をキャッシュ116 に関して局所的に
利用可能とすることにより、バスネットワーク208 
上の対話や検索サイクルの数が最小限となる。メモリ特
性タグ付け装置302 は、MEM/IO制御318 
を介したメモリアクセスを検出するとこの情報を取り出
し、それをその対応するキャッシュ116 にWT/W
B制御316 を介して送る。以下の説明では上述の概
念に焦点を合わせる。
【0051】キャッシュ116 を含むライトバック(
WB)型の従来のキャッシュのほとんどは、ライトバッ
ク/ライトスルー(WB/WT)入力として知られる入
力を有する。この入力はキャッシュ116 をWT様式
にて用いることを可能とする。大部分のキャッシュのタ
イミングチャートを考慮すると、WB/WT入力が、キ
ャッシュ116 が使用可能とされたときにキャッシュ
116 によって考慮されるものであることは明らかで
ある。
【0052】この好適な実施例において、このWB/W
T入力は、広い意味では、キャッシュ116 をWB型
からWT型に変換するのには用いられない。このWB/
WT入力は、データラインをライトバック型としてタグ
付けすべきか、それともライトスルー型としてタグ付け
すべきかをキャッシュ116 に知らせるのに用いられ
る。したがって、この実施例のキャッシュ116 は、
メモリ特性タグ付け装置302 からの信号に応じて、
データラインのあるものをライトバック的に取り扱い、
他のものをライトスルー的に取り扱うことができる。
【0053】この好適な実施例におけるWT/WB特性
の結果として、数多くの利点が考えられる。図3を参照
すると、データラインが1つ以上のキャッシュによって
共用される場合、このデータラインは可干渉性を維持す
るためにライトスルーラインとしてタグ付けすることが
できる。しかし、これと対照的に、データラインが例え
ばキャッシュ116 の専用として所有される(専用ス
ペース)場合、この好適な実施例では、そのデータライ
ンをメモリ特性タグ付け装置302 によってライトバ
ック型としてタグ付けする。これにより、バスネットワ
ーク208 上の検索サイクルの数及び対話の数が最小
限となる。
【0054】更に、従来、メモリアドレスには、検索サ
イクルのための制御ラインのような、キャッシュの可干
渉性のためのサポートを有さない工業規格バス上の記憶
場所に対応するものがある。このようなバスの1つに拡
張工業規格アーキテクチャ(EISA)バスがある。例
えば、EISA上のビデオメモリは、特定のアドレスに
位置してビデオメモリを構成する。このようなバス上の
IOカード上のメモリを他のキャッシュのメモリと可干
渉に維持するため、この好適な実施例では、キャッシュ
の可干渉性のためのサポートを有さないかかるバスから
データラインが読み出される際、そのデータラインをラ
イトスルーラインとしてタグ付けする。この好適な実施
例のメモリ特性タグ付け装置302 によってメモリに
割り当てられる別の特性は、データのメモリページが、
IO装置とメモリとのいずれに対応するのかということ
である。以下の説明は、上述の概念に焦点を合わせたも
のである。
【0055】この特性が、MPシステム中にメモリのペ
ージを記述するだけでなく、性能を向上させるために単
一のプロセッサ(SP)システム中にもメモリのページ
を記述することができる、ということに注目すべきであ
る。基本的に、メモリ特性タグ付け装置302 による
この特性の割り当てによって、n個のMPU 102〜
108 中のソフトウエアオーバーヘッドが低減され、
これによりn個のMPU 102〜108の速度が増す
【0056】この概念を理解するため、このn個のMP
U 102〜108 によって多数の異なる種類の命令
を実行することができることを理解することが重要であ
る。特に、このn個のMPU 102〜108 のいず
れかが「INTEL」ファミリーである場合、それらは
多数の異なる種類のメモリ命令を実行してフレキシビリ
ティと汎用性とを提供することができる。
【0057】しかし、IO命令に関しては、MPUには
一般に制約がある。例えば、「INTEL」のMPUに
はごく少ない種類のIO命令しかない。更に、これらの
IO命令は、機能の範囲及び性能に関して非常に制限さ
れたものである。
【0058】すなわち、MPUの内部レジスタは、まず
IO命令を実行するために操作されねばならず、これに
よってこれらの命令の実行が非常に遅くなる。その理由
の1つには、多くのIOカードが、例えばIOカード上
の16ビットレジスタのために各アクセスについて16
ビットを必要とするということがある。したがって、「
INTEL」ファミリーのMPUでは、各MPUはまず
2つの8ビットレジスタのデータを退避させなければな
らない。次にMPUは、これらの2つのレジスタを組み
合わせなければならない。最後に、MPUは、IO命令
を実行しなければならず、これは他の命令に比べて比較
的長い時間を消費する。したがって、多量のソフトウエ
アオーバーヘッドが存在し、その結果、性能劣化が生じ
る。
【0059】更に、例えばハードディスクドライブコン
トローラ等を含む市販品として入手可能な多くのサブシ
ステム及びIOカードは、IOアドレス指定スペースに
のみマッピングされたメモリレジスタを有している。こ
れらのサブシステム及びIOカードは、低速のIO命令
を実行することによってのみアクセスすることができる
ものであり、このため、そのIO命令がほとんどのMP
システムにおいて不可欠なものとなっている。
【0060】この好適な実施例は、n個のMPU 10
2〜108 のいずれにもIO命令を実行させることな
くIOアクセスを実施するものである。このn個のMP
U 102〜108からのアドレスは、メモリ特性タグ
付け装置302 によって受信され、メモリアドレス及
びIOアドレスのいずれかに変換される。
【0061】「INTEL」80386及び80486
MPU上には、例えば、アドレスがメモリとIOポート
とのいずれに対するものであるかを示す制御定義出力(
MEM/IO)がある。
【0062】図3に示す好適な実施例において、アドレ
スが、矢印308 に示すように、メモリ特性タグ付け
装置302 によって取り出される。更に、キャッシュ
116 が、MEM/IO(オリジナル)制御318 
に示すように、このアドレスがメモリアドレスであると
の記号が付けられているか、それともIOアドレスであ
るとの記号が付けられているかをメモリ特性タグ付け装
置302 に示す。キャッシュ116 が、図1のキャ
ッシュ112 や114 のようなオンチップキャッシ
ュと、図1の116 、118 あるいは120 のよ
うな外部キャッシュとのいずれともすることができる、
ということは注目すべき点である。
【0063】次に、メモリ特性タグ付け装置302 は
、このアドレスがメモリアドレスのままにとどまるべき
か、あるいはIOアドレスに変換されるべきかの最終判
断を行う。(変更された)MEM/IOを介して、メモ
リ特性タグ付け装置302 は、このアドレスをメモリ
アドレスあるいはIOアドレスのいずれかとして取り扱
うようバスネットワーク208 に命令する。
【0064】図4はこの好適な実施例のメモリ特性タグ
付け装置302 の低レベルのブロック図を示す。メモ
リ特性タグ付け装置302 は、スタティックランダム
アクセスメモリ(SRAM;64Kb×4)と、論理回
路404 と、論理回路406 とからなる。論理回路
404,406 は、従来のプログラマブルアレーロジ
ック(PAL)等を介して実施することができる。
【0065】この好適な実施例では、共用メモリは、6
4キロバイト(Kb)のメモリ記憶容量を有するページ
に細分される。しかし、いくつかの理由から、この発明
を実施するのに最適なページサイズは4Kbであること
がわかっている。第1に、「INTEL」ファミリーの
マイクロプロセッサの本来のページサイズは4Kbであ
る。第2に、AT&T/386UNIXのベースソース
ページサイズは4Kbである。つまり、UNIXオペレ
ーティングシステムが新しい処理を発生するとき、メモ
リは4Kbの増分で割り当てられる。
【0066】しかし、本発明の好適な実施例において、
メモリ特性タグ付け装置302 は、メモリを64Kb
ごとに特徴付けする。これは、現在利用可能なSRAM
技術においてこのサイズが要求されるためである。SR
AM技術が高性能システムの要求条件に追いついた場合
、このメモリ特性タグ付け装置302 のページサイズ
を4Kbに調整しなければならない。
【0067】メモリを64Kbの増分に分割することか
ら3つの大きな影響が生じる。第1に、メモリ特性タグ
付け装置302 がより複雑となる。第2に、メモリ特
性タグ付け装置302 のオーバーヘッドが増える。第
3に、性能が多少犠牲になる。例えば、ある4Kbのペ
ージについては、その特性に関して最も性能の低いオプ
ションを選択しなければならない。これは、それらが、
64Kbのページ内の他の4Kbのページに関連してい
るためである。
【0068】図4において、各々の64Kbのページは
、この好適な実施例ではわずか4データビットによって
特徴付けされる。この4データビットは次の通りである
。 (1)可干渉性(可干渉/非可干渉)ビット、(2) 
キャッシュ可能性(キャッシュ使用可能/使用不能)ビ
ット、(3) ライトスルー/ライトバック(WT/W
B)ビット、及び(4) メモリ/入出力(MEM/I
O)ビットである。
【0069】図示するように、これらの4データビット
は、MPシステムのパワーオンあるいは初期化の間に、
データバス408 及びアドレスバス308 を介して
主メモリ110からSRAM402 にプログラムされ
る。このSRAM 402は64Kb×4ビットである
【0070】動作時に、この4データビットは、バスネ
ットワーク208 からのアドレスバス308 上のア
ドレスに応じて出力される。この4データビットは、S
RAM402 から、可干渉性制御410 、キャッシ
ュ可能性制御314 、WT/WB制御316 及びM
EM/IO制御310 にそれぞれ出力される。
【0071】バスコントローラ/インターフェイス12
6 からの検索制御306 上のいかなる検索ストロー
ブも、論理回路404 において可干渉性制御410 
上の可干渉性ビットに組み合わされる。この可干渉性ビ
ットは、上記にて詳述したように、データページがロー
カルプロセッサの私用記憶領域にある場合に、バスコン
トローラ/インターフェイス126 から検索サイクル
をマスクする働きをする。
【0072】更に、論理回路406 は、MEM/IO
制御318 上のMEM/IO定義制御信号(オリジナ
ル)を、MEM/IO制御412上のMEM/IOビッ
トに組み合わせる。このMEM/IOビットは、メモリ
アクセスをIOアクセスに選択的に変換する働きをする
。その結果として、変換が行われると、MPシステムの
他の部分には、実際のより高速なメモリ命令ではなく、
IO命令がMPUによって実行されたものと知覚される
【0073】この好適な実施例では、各キャッシュ11
6 につき1つのメモリ特性タグ付け装置302 が必
要であるが、本発明は、1対1以下の対応で実施するこ
とができる。つまり、本発明は、キャッシュが同一バス
上にある場合には、1つのメモリ特性タグ付け装置30
2 が1つ以上のキャッシュにサービスを行うように実
施することができる。また、1つのキャッシュが1つ以
上のMPUにサービスを行うことも可能であるというこ
とは注目に値する。
【0074】しかし、前述の派生的な実施例には欠点が
ある。これら派生的な実施例では、各キャッシュに対し
て1つのメモリ特性タグ付け装置302 がある場合よ
りも検索サイクルが多くなる。この主たる理由は、メモ
リ特性タグ付け装置302 のメモリマップが、より拡
張的であり、精度が低くなければならないということで
ある。つまり、1つ以上のキャッシュ、そして恐らくは
1つ以上のプロセッサの特性を組み合わせて共通にマッ
ピングを行わなければならない。本発明の主たる目的は
、情報を個別化し、それをキャッシュやMPUにとって
局所的に使用可能なものとすることである。
【0075】本発明は好適な実施例に限定されるもので
はなく、上記の例は単に説明を目的とするものに過ぎな
い、ということは理解されるべきである。したがって、
本発明の範囲は、図面及び発明の詳細な説明によって定
義される、特許請求の範囲における記載から解釈される
べきである。
【0076】
【発明の効果】本発明は上述のように構成したので、多
重プロセッサ(MP)システムにおける可干渉性を維持
すると共にキャッシュに対する必要な検索サイクル数を
最小限にすることが出来る。これにより、キャッシュに
対する割り込み、及びバス上のトラフィックを減少させ
ると共にMPシステムのデータ処理及びスループットを
最適化することができ、またMPシステム中で動作可能
なプロセッサ数を増加させることができる。
【図面の簡単な説明】
【図1】多重バス(バスネットワーク)と、オンチップ
キャッシュ及び/又は外部キャッシュを含む様々なキャ
ッシュとを備えた従来の多重プロセッサ(MP)システ
ムを示すブロック図である。
【図2】図1のMPシステムにおいて、適切なデータ転
送の実行、及びデータの可干渉性の保証のためにデータ
転送中に発生するアドレス、データ、及び制御信号の従
来の流れを示すブロック図である。
【図3】MPシステムのキャッシュへのメモリ特徴タグ
付け装置のインターフェイスを含む本発明の好適な実施
例を示すブロック図である。
【図4】図3に示す本発明の好適な実施例であるメモリ
特性タグ付け装置の低レベルのブロック図である。
【符号の説明】 110       主メモリ 116〜120  外部キャッシュ 208       バスネットワーク302    
   メモリ特性タグ付け装置402       S
RAM 404       論理回路

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】データ処理及びスループットを最適化する
    ために共用メモリ及びバスネットワークを備えた多重プ
    ロセッサシステムにおける1つ以上のキャッシュへの割
    り込みを最小限にするためのシステムであって、このシ
    ステムが、1つ以上のマイクロプロセッサ及び前記バス
    ネットワークのバスと連絡する1つ以上のキャッシュと
    、前記1つ以上のキャッシュ及び前記バスに連絡するメ
    モリ特性タグ付け装置とよりなり、このメモリ特性タグ
    付け装置が、前記バスからアドレスを読み出す第1の手
    段と、前記アドレスに対応するメモリスペースが前記1
    つ以上のマイクロプロセッサに対して共用であるのか又
    は専用であるのかを特定する第2の手段と、前記メモリ
    スペースが前記1つ以上のマイクロプロセッサに対して
    専用である場合に前記バス上でのいかなる検索サイクル
    の発生をも防止する第3の手段とを有することを特徴と
    する、メモリページ特性タグ付けシステム。
JP4026785A 1991-02-13 1992-02-13 メモリページ特性タグ付けシステム Pending JPH04353947A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US65466291A 1991-02-13 1991-02-13
US654662 1991-02-13

Publications (1)

Publication Number Publication Date
JPH04353947A true JPH04353947A (ja) 1992-12-08

Family

ID=24625764

Family Applications (1)

Application Number Title Priority Date Filing Date
JP4026785A Pending JPH04353947A (ja) 1991-02-13 1992-02-13 メモリページ特性タグ付けシステム

Country Status (2)

Country Link
US (1) US5404489A (ja)
JP (1) JPH04353947A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0836526A (ja) * 1994-07-22 1996-02-06 Nec Gumma Ltd 情報処理システム

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2774862B2 (ja) * 1990-07-16 1998-07-09 株式会社日立製作所 Dma制御装置および情報処理装置
US5584017A (en) * 1991-12-19 1996-12-10 Intel Corporation Cache control which inhibits snoop cycles if processor accessing memory is the only processor allowed to cache the memory location
US5813030A (en) * 1991-12-31 1998-09-22 Compaq Computer Corp. Cache memory system with simultaneous access of cache and main memories
US5502828A (en) * 1992-12-18 1996-03-26 Advanced Micro Devices, Inc. Reducing memory access in a multi-cache multiprocessing environment with each cache mapped into different areas of main memory to avoid contention
US5848276A (en) * 1993-12-06 1998-12-08 Cpu Technology, Inc. High speed, direct register access operation for parallel processing units
US5692154A (en) * 1993-12-20 1997-11-25 Compaq Computer Corporation Circuit for masking a dirty status indication provided by a cache dirty memory under certain conditions so that a cache memory controller properly controls a cache tag memory
JP2778913B2 (ja) * 1994-04-26 1998-07-23 株式会社東芝 マルチプロセッサシステム及びメモリアロケーション方法
US5666514A (en) * 1994-07-01 1997-09-09 Board Of Trustees Of The Leland Stanford Junior University Cache memory containing extra status bits to indicate memory regions where logging of data should occur
US5535363A (en) * 1994-07-12 1996-07-09 Intel Corporation Method and apparatus for skipping a snoop phase in sequential accesses by a processor in a shared multiprocessor memory system
US5608878A (en) * 1994-10-03 1997-03-04 International Business Machines Corporation Dual latency status and coherency reporting for a multiprocessing system
US5615334A (en) * 1994-10-07 1997-03-25 Industrial Technology Research Institute Memory reflection system and method for reducing bus utilization and device idle time in the event of faults
US5652915A (en) * 1995-02-21 1997-07-29 Northern Telecom Limited 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
AU5854796A (en) * 1995-05-10 1996-11-29 3Do Company, The Method and apparatus for managing snoop requests using snoop advisory cells
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
US5664148A (en) * 1995-08-17 1997-09-02 Institute For The Development Of Emerging Architectures L.L.C. Cache arrangement including coalescing buffer queue for non-cacheable data
US5765208A (en) * 1995-09-29 1998-06-09 Motorola, Inc. Method of speculatively executing store instructions prior to performing snoop operations
US5727220A (en) * 1995-11-29 1998-03-10 International Business Machines Corporation Method and system for caching and referencing cached document pages utilizing a presentation data stream
US5778438A (en) * 1995-12-06 1998-07-07 Intel Corporation Method and apparatus for maintaining cache coherency in a computer system with a highly pipelined bus and multiple conflicting snoop requests
US5740353A (en) * 1995-12-14 1998-04-14 International Business Machines Corporation Method and apparatus for creating a multiprocessor verification environment
US5911052A (en) * 1996-07-01 1999-06-08 Sun Microsystems, Inc. Split transaction snooping bus protocol
US5809534A (en) * 1996-06-13 1998-09-15 Compaq Computer Corporation Performing a write cycle to memory in a multi-processor system
US6205507B1 (en) * 1996-06-13 2001-03-20 Compaq Computer Corporation Memory coherency in a processor-to-bus cycle in a multi-processor system
US5752265A (en) * 1996-06-13 1998-05-12 Compaq Computer Corporation Memory accessing in a multi-processor system using snooping
JP3590203B2 (ja) 1996-07-16 2004-11-17 株式会社東芝 記憶手段の制御方法及びその装置
US5901326A (en) * 1996-11-26 1999-05-04 International Business Machines Corporation Memory bus address snooper logic for determining memory activity without performing memory accesses
US5991531A (en) * 1997-02-24 1999-11-23 Samsung Electronics Co., Ltd. Scalable width vector processor architecture for efficient emulation
US5946709A (en) * 1997-04-14 1999-08-31 International Business Machines Corporation Shared intervention protocol for SMP bus using caches, snooping, tags and prioritizing
US5940864A (en) * 1997-04-14 1999-08-17 International Business Machines Corporation Shared memory-access priorization method for multiprocessors using caches and snoop responses
US5943685A (en) * 1997-04-14 1999-08-24 International Business Machines Corporation Method of shared intervention via a single data provider among shared caches for SMP bus
US5940856A (en) * 1997-04-14 1999-08-17 International Business Machines Corporation Cache intervention from only one of many cache lines sharing an unmodified value
US5963974A (en) * 1997-04-14 1999-10-05 International Business Machines Corporation Cache intervention from a cache line exclusively holding an unmodified value
US6295584B1 (en) * 1997-08-29 2001-09-25 International Business Machines Corporation Multiprocessor computer system with memory map translation
US6012127A (en) * 1997-12-12 2000-01-04 Intel Corporation Multiprocessor computing apparatus with optional coherency directory
US6549984B1 (en) * 1997-12-17 2003-04-15 Intel Corporation Multi-bus access cache
US6345340B1 (en) * 1998-02-17 2002-02-05 International Business Machines Corporation Cache coherency protocol with ambiguous state for posted operations
US6898675B1 (en) * 1998-08-24 2005-05-24 International Business Machines Corporation Data received before coherency window for a snoopy bus
US6848039B1 (en) * 2000-06-30 2005-01-25 Intel Corporation Multiple pass arrangements for maximizing cacheable memory space
US20020133742A1 (en) * 2001-01-16 2002-09-19 Hsiu-Ying Hsu DRAM memory page operation method and its structure
US6985972B2 (en) * 2002-10-03 2006-01-10 International Business Machines Corporation Dynamic cache coherency snooper presence with variable snoop latency
US7089376B2 (en) * 2003-03-20 2006-08-08 International Business Machines Corporation Reducing snoop response time for snoopers without copies of requested data via snoop filtering
US7395380B2 (en) * 2003-03-20 2008-07-01 International Business Machines Corporation Selective snooping by snoop masters to locate updated data
US7472229B2 (en) * 2004-08-12 2008-12-30 International Business Machines Corporation Bus controller initiated write-through mechanism
JP4695367B2 (ja) * 2004-08-31 2011-06-08 富士通株式会社 情報処理装置,制御装置及び情報処理装置の制御方法
US8667226B2 (en) * 2008-03-24 2014-03-04 Freescale Semiconductor, Inc. Selective interconnect transaction control for cache coherency maintenance
US8935485B2 (en) 2011-08-08 2015-01-13 Arm Limited Snoop filter and non-inclusive shared cache memory

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4622631B1 (en) * 1983-12-30 1996-04-09 Recognition Int Inc Data processing system having a data coherence solution
US5146607A (en) * 1986-06-30 1992-09-08 Encore Computer Corporation Method and apparatus for sharing information between a plurality of processing units
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
US4959777A (en) * 1987-07-27 1990-09-25 Motorola Computer X Write-shared cache circuit for multiprocessor system
US4977498A (en) * 1988-04-01 1990-12-11 Digital Equipment Corporation Data processing system having a data memory interlock coherency scheme
US5025365A (en) * 1988-11-14 1991-06-18 Unisys Corporation Hardware implemented cache coherency protocol with duplicated distributed directories for high-performance multiprocessors
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

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0836526A (ja) * 1994-07-22 1996-02-06 Nec Gumma Ltd 情報処理システム

Also Published As

Publication number Publication date
US5404489A (en) 1995-04-04

Similar Documents

Publication Publication Date Title
JPH04353947A (ja) メモリページ特性タグ付けシステム
US8250254B2 (en) Offloading input/output (I/O) virtualization operations to a processor
US9792210B2 (en) Region probe filter for distributed memory system
JP4082612B2 (ja) 複数のコヒーレンシ領域およびキャッシュ・パージのないコヒーレンシ領域間ソフトウェア・プロセス移行を備えるマルチプロセッサ・コンピュータ・システム
US6651115B2 (en) DMA controller and coherency-tracking unit for efficient data transfers between coherent and non-coherent memory spaces
US8417915B2 (en) Alias management within a virtually indexed and physically tagged cache memory
US7721023B2 (en) I/O address translation method for specifying a relaxed ordering for I/O accesses
US20070083682A1 (en) Memory controller and method for handling DMA operations during a page copy
JPH0997214A (ja) 補助プロセッサのためのアドレス変換を含む情報処理システム
JPH09114665A (ja) 記憶装置と補助プロセッサ間のコマンド及びデータ転送方法及び情報処理システム
KR19980079433A (ko) 비포함 캐쉬 메모리 계층 구조에서 사용하기 위한 캐쉬 일관성 메카니즘 구현 방법 및 시스템
US7308557B2 (en) Method and apparatus for invalidating entries within a translation control entry (TCE) cache
JPH04246745A (ja) 情報処理装置及びその方法
JP4266629B2 (ja) ページ・テーブル属性によるバス・インタフェース選択
EP1611513B1 (en) Multi-node system in which global address generated by processing subsystem includes global to local translation information
US5954812A (en) Apparatus for caching system management memory in a computer having a system management mode employing address translation
JPH09179780A (ja) バースト可でキャッシュ不可のメモリアクセスを支援するマイクロプロセッサ装置
US6748512B2 (en) Method and apparatus for mapping address space of integrated programmable devices within host system memory
US5727179A (en) Memory access method using intermediate addresses
TW202219758A (zh) 在虛擬機器間無需複製而移動資料的技術
US6067581A (en) Method for identifying the orignal source device in a transaction request initiated from address translator to memory control module and directly performing the transaction therebetween
JP2823038B2 (ja) 論理ダイレクトメモリアクセス方式
JP2976980B2 (ja) キャッシュ制御方式
JPH0822418A (ja) 仮想アドレス空間管理装置
JPH06231033A (ja) 分散共有メモリシステムを有するデータ処理装置