JPH0588980A - マルチプロセツサシステム - Google Patents

マルチプロセツサシステム

Info

Publication number
JPH0588980A
JPH0588980A JP3246209A JP24620991A JPH0588980A JP H0588980 A JPH0588980 A JP H0588980A JP 3246209 A JP3246209 A JP 3246209A JP 24620991 A JP24620991 A JP 24620991A JP H0588980 A JPH0588980 A JP H0588980A
Authority
JP
Japan
Prior art keywords
address translation
translation cache
address
microprocessor
coherency
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
JP3246209A
Other languages
English (en)
Inventor
Hidehiko Wada
英彦 和田
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.)
Yokogawa Electric Corp
Original Assignee
Yokogawa Electric 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 Yokogawa Electric Corp filed Critical Yokogawa Electric Corp
Priority to JP3246209A priority Critical patent/JPH0588980A/ja
Publication of JPH0588980A publication Critical patent/JPH0588980A/ja
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/68Details of translation look-aside buffer [TLB]
    • G06F2212/682Multiprocessor TLB consistency

Landscapes

  • Multi Processors (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 【目的】各マイクロプロセッサにアドレス変換キャッシ
ュのコヒーレンシを保つ機構を導入し、マルチプロセッ
サにおける複数のプロセッサ間でアドレス変換キャッシ
ュのコヒーレンシを保つ。 【構成】各マイクロプロセッサに、論理アドレスから物
理アドレスへの変換結果を保持するアドレス変換キャッ
シュと、このアドレス変換キャッシュのコヒーレンシを
保つための機能であるイネーブル/ディスエーブルや、
同じ論理空間を使用していることを示す識別番号を有す
るコントロールレジスタと、前記バス上にコヒーレンシ
を保つための情報を出力したり、他のプロセッサからの
情報を受けてアドレス変換キャッシュのインバリデート
を行うバスコントローラを備える。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、マルチプロセッサシス
テムで使用されるメモリマネジメントユニット(Memmor
y Management Unit :以下MMUという)およびアドレ
ス変換キャッシュを持つマイクロプロセッサで、アドレ
ス変換キャッシュのプロセッサ間のコヒーレンシー(一
貫性)を保つ装置に関するものである。に関するもので
ある。
【0002】
【従来の技術】マルチプロセッサシステムにおいては、
各プロセッサは共有メモリ内にあるMMUのテーブルを
参照して、論理アドレスから物理アドレスの変換を行っ
てアクセスし、その変換結果をアドレス変換キャッシュ
に持つ。従来のシングルプロセッサシステムでは、一つ
の論理空間内で動作しているプログラムの流れ(コント
ロールフロー)は図5に示すように一つであるが、マル
チプロセッサシステムでは図6に示すように同じ理論空
間に対して複数のコントロールフローになる場合があ
る。
【0003】
【発明が解決しようとする課題】従来のプロセッサでは
メモリ内のMMUのテーブルを変更すると、それに関連
するアドレス変換キャッシュの内容をインバリデート
(invalidate)する(無効にする)必要がある。図5の
構成の場合はプロセッサが1個であるが、図6の構成で
はプロセッサが複数あるためプロセッサ1がMMUのテ
ーブルを変更して自分のアドレス変換キャッシュをイン
バリデートしても、他のプロセッサは正しくない内容を
依然としてアドレス変換キャッシュ内に持ち続けること
になる。これを解決するためには、ソフトウェアで他の
プロセッサの変換キャッシュの内容をインバリデートす
る必要がある。
【0004】本発明の目的は、このような点に鑑みてな
されたもので、各マイクロプロセッサにアドレス変換キ
ャッシュのコヒーレンシを保つ機構を導入することによ
り、マルチプロセッサにおいて複数のプロセッサ間でア
ドレス変換キャッシュのコヒーレンシを保つことのでき
るマルチプロセッサシステムを提供することにある。
【0005】
【課題を解決するための手段】このような目的を達成す
るために本発明では、各マイクロプロセッサに、論理ア
ドレスから物理アドレスへの変換結果を保持するアドレ
ス変換キャッシュと、このアドレス変換キャッシュのコ
ヒーレンシを保つための機能であるイネーブル/ディス
エーブルや、同じ論理空間を使用していることを示す識
別番号を有するコントロールレジスタと、前記バス上に
コヒーレンシを保つための情報を出力したり、他のプロ
セッサからの情報を受けてアドレス変換キャッシュのイ
ンバリデートを行うバスコントローラを備え、自マイク
ロプロセッサがインバリデートするアドレス変換キャッ
シュのエントリを他のマイクロプロセッサに知らせる機
能、および他のマイクロプロセッサからのインバリデー
トの信号を受けて該当する自マイクロプロセッサのアド
レス変換キャッシュのエントリをインバリデートする機
能を有するように構成したことを特徴とする。
【0006】
【作用】あるマイクロプロセッサにアドレス変換キャッ
シュのエントリのインバリデート要求があると、自プロ
セッサの変換キャッシュのエントリをインバリデート
し、その後バスコントローラから変換キャッシュのイン
バリデート信号をバス上に出力する。続いて、コントロ
ールレジスタにセットされたid、インバリデートする
アドレス変換キャッシュのアドレスを順にバスへ出力す
る。他のマイクロプロセッサは前記インバリデート信号
を受け、続いてidを受け取り、自身のコントロールレ
ジスタとidが同じであれば、その後に出力されるバス
上の前記アドレスを受け取り、そのアドレスに応じて自
身のアドレス変換キャッシュのエントリをインバリデー
トする。
【0007】
【実施例】以下図面を用いて本発明を詳細に説明する。
図1は本発明に係るマルチプロセッサシステムの一実施
例を示す要部構成図である。なお、本実施例では2つの
マイクロプロセッサで構成されるマルチプロセッサシス
テムの場合を例にとって説明する。図において、10は
第1のマイクロプロセッサ、20は第2のマイクロプロ
セッサ、30は第1および第2のマイクロプロセッサに
接続されたバスである。
【0008】第1のマイクロプロセッサ10は、アドレ
ス変換キャッシュ11、コントロールレジスタ12、バ
スコントローラ13より構成されている。第2のマルチ
プロセッサ20の構成は第1のマルチプロセッサ10の
ものと同一であるので、説明を省略する。なお、図1に
示す実施例構成図では本発明に関係ある構成要素のみを
抜出して示しており、通常のマイクロプロセッサシステ
ムにおいて必要とされる構成要素は本発明とは直接に関
係がないので省略してある。
【0009】アドレス変換キャッシュ11は論理アドレ
スから物理アドレスへ変換した結果を保持するキャッシ
ュである。コントロールレジスタ12は、アドレス変換
キャッシュ11のコヒーレンシを保つ機能のイネーブル
/ディスエーブルや、同じ論理空間を使用していること
を示すidを有する。図2はコントロールレジスタのフ
ォーマットを示す図である。Eは前記イネーブル/ディ
スエーブルを指定する部分であり、ディスエーブルを指
定すると他のプロセッサとアドレス変換キャッシュのコ
ヒーレンシを保つ動作を行わない。idは同じ論理空間
を使用しているプロセッサを示すもの(識別番号)であ
るが、id=0の場合は同じバス上につながるすべての
プロセッサに対して作用する(ブロードキャスト機
能)。
【0010】バスコントローラ13は、バス30上にコ
ヒーレンシを保つための情報を出力したり、他のプロセ
ッサからの情報を受けてアドレス変換キャッシュのイン
バリデートを行う。
【0011】このような構成における動作を次に説明す
る。図3はアドレス変換キャッシュのコヒーレンシを保
つ場合の動作の流れを示すフローチャートである。 第1のマイクロプロセッサ10よりアドレス変換キャ
ッシュのエントリのインバリデート要求が出ると、自プ
ロセッサのアドレス変換キャッシュ11の該当エントリ
をインバリデートする。 次にバスコントローラ13がアドレス変換キャッシュ
11のインバリデートの信号を出力する。第2のマイク
ロプロセッサ20のバスコントローラ23はバス上に出
力された前記インバリデート信号を受け取る。 次に、第1のマイクロプロセッサ10は、コントロー
ルレジスタ12にセットされたidをバス上に出力す
る。第2のマイクロプロセッサ20のバスコントローラ
23はこのidを受け取る。 続いて、第1のマイクロプロセッサ10はインバリッ
ドするエントリのアドレスをバス上に送出する。図4は
アドレスのフォーマットを示す図であり、addres
sはディスエーブルするアドレス変換キャッシュのエン
トリを示す論理アドレスである。なお、このアドレスは
ページ単位で指定すればよいので下位ビットはアドレス
指定にはしようしない。また、A/Pは、アドレス変換
キャッシュの全部のエントリを対象にする場合はA(A
LLの意)、特定のページを対象にする場合はP(PA
GEの意)を示す。第2のマイクロプロセッサ20のバ
スコントローラ23では自プロセッサのコントロールレ
ジスタ22とidが同じならばバス上の前記アドレスを
受け取る。 そして第2のマイクロプロセッサ20は、受けたアド
レスに応じてアドレス変換キャッシュ21のエントリを
インバリッドする。以上のようにして、アドレス変換キ
ャッシュのコヒーレンシを容易に保つことができる。な
お、実施例では、第1のマイクロプロセッサがインバリ
デートするアドレス変換キャッシュのエントリをバス上
に出力し、第2のマイクロプロセッサに知らせる場合を
例にとったが、これに限るわけではなく、どちらも送り
手あるいは受け手に成り得る。
【0012】
【発明の効果】以上説明したように、本発明によれば、
アドレス変換キャッシュのコヒーレンシを保つことをマ
イクロプロセッサの機能で実現することができ、次のよ
うな効果がある。 ソフトウェアでコヒーレンシを保つよりオーバーヘッ
ドが少ない ソフトウェアでプロセッサ間のキャッシュのコヒーレ
ンシを保つことを意識しないでよい。
【図面の簡単な説明】
【図1】本発明に係るマルチプロセッサシステムの一実
施例を示す要部構成図である。
【図2】コントロールレジスタのフォーマットの一例を
示す図である。
【図3】アドレス変換キャッシュのコヒーレンシに係る
動作のフローを示す図である。
【図4】アドレスのフォーマットを示す図である。
【図5】単一プロセッサでのコントロールフローを示す
概念図である。
【図6】マルチプロセッサでのコントロールフローを示
す概念図である。
【符号の説明】
10 第1のマイクロプロセッサ 11 アドレス変換キャッシュ 12 コントロールレジスタ 13 バスコントローラ 20 第2のマイクロプロセッサ 21 アドレス変換キャッシュ 22 コントロールレジスタ 23 バスコントローラ 30 バス

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】複数のマイクロプロセッサをバスで共通接
    続してなるマルチプロセッサシステムであって、 各マイクロプロセッサは、 論理アドレスから物理アドレスへ変換しその結果を保持
    するアドレス変換キャッシュと、 このアドレス変換キャッシュのコヒーレンシを保つため
    の機能であるイネーブル/ディスエーブルや、同じ論理
    空間を使用していることを示す識別番号を有するコント
    ロールレジスタと、 前記バス上にコヒーレンシを保つための情報を出力した
    り、他のプロセッサからの情報を受けてアドレス変換キ
    ャッシュのインバリデートを行うバスコントローラを備
    え、 自マイクロプロセッサがインバリデートするアドレス変
    換キャッシュのエントリを他のマイクロプロセッサに知
    らせる機能、および他のマイクロプロセッサからのイン
    バリデートの信号を受けて該当する自マイクロプロセッ
    サのアドレス変換キャッシュのエントリをインバリデー
    トする機能を有するように構成したことを特徴とするマ
    ルチプロセッサシステム。
JP3246209A 1991-09-25 1991-09-25 マルチプロセツサシステム Pending JPH0588980A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3246209A JPH0588980A (ja) 1991-09-25 1991-09-25 マルチプロセツサシステム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3246209A JPH0588980A (ja) 1991-09-25 1991-09-25 マルチプロセツサシステム

Publications (1)

Publication Number Publication Date
JPH0588980A true JPH0588980A (ja) 1993-04-09

Family

ID=17145144

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3246209A Pending JPH0588980A (ja) 1991-09-25 1991-09-25 マルチプロセツサシステム

Country Status (1)

Country Link
JP (1) JPH0588980A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08161272A (ja) * 1994-11-30 1996-06-21 Nec Corp クラスタ結合型マルチプロセッサシステムにおけるローカル入出力制御方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08161272A (ja) * 1994-11-30 1996-06-21 Nec Corp クラスタ結合型マルチプロセッサシステムにおけるローカル入出力制御方法

Similar Documents

Publication Publication Date Title
US6105113A (en) System and method for maintaining translation look-aside buffer (TLB) consistency
US6324634B1 (en) Methods for operating logical cache memory storing logical and physical address information
US4484267A (en) Cache sharing control in a multiprocessor
US5754820A (en) Microprocessor system with cache memory for eliminating unnecessary invalidation of cache data
CA1306312C (en) Write-shared cache circuit for multiprocessor system
US7032074B2 (en) Method and mechanism to use a cache to translate from a virtual bus to a physical bus
KR920004400B1 (ko) 가상계산기시스템
EP0408058B1 (en) Microprocessor
EP0062165A2 (en) Multiprocessors including private and shared caches
JPH04227552A (ja) ストアスルーキャッシュ管理システム
JPH0137773B2 (ja)
US5263144A (en) Method and apparatus for sharing data between processors in a computer system
EP0365117B1 (en) Data-processing apparatus including a cache memory
US4658356A (en) Control system for updating a change bit
US6389488B1 (en) Read ahead buffer for read accesses to system memory by input/output devices with buffer valid indication
US6477622B1 (en) Simplified writeback handling
US5619673A (en) Virtual access cache protection bits handling method and apparatus
JPH0519176B2 (ja)
JPH0588980A (ja) マルチプロセツサシステム
GB2307319A (en) Dual-directory virtual cache
JPH0511337B2 (ja)
JP2846888B2 (ja) 分散共有メモリを持つマルチプロセッサシステム
EP0533373A2 (en) Computer system having cache memory
JPH09160863A (ja) 入出力バッファ装置及びその管理方法
KR0145454B1 (ko) 분산된 공유 메모리를 갖는 다중 프로세서