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

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

Info

Publication number
JPH0535697A
JPH0535697A JP3208619A JP20861991A JPH0535697A JP H0535697 A JPH0535697 A JP H0535697A JP 3208619 A JP3208619 A JP 3208619A JP 20861991 A JP20861991 A JP 20861991A JP H0535697 A JPH0535697 A JP H0535697A
Authority
JP
Japan
Prior art keywords
memory
cache
bus
arithmetic processing
data
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
JP3208619A
Other languages
English (en)
Inventor
Seiji Mizuno
政治 水野
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP3208619A priority Critical patent/JPH0535697A/ja
Publication of JPH0535697A publication Critical patent/JPH0535697A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】 【目的】 分散キャッシュメモリ方式の共有メモリ型マ
ルチプロセッサシステムにおいて、キャッシュメモリの
内容の一貫性を保証するために生じる性能低下を解消す
る。 【構成】 システムバス1を監視することにより、演算
処理装置2によって変更されたメモリ管理装置6内のキ
ャッシュデータを無効化した後、演算処理装置3よりそ
のデータの使用要求が出された時、キャッシュ用バス9
を通じてメモリ管理装置5内のキャッシュメモリ5aも
しくは一時メモリ11とデータ転送を行ない、キャッシ
ュメモリ5a,6aの内容の一貫性を保証する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は共有メモリを共有する
複数の演算処理装置を備えたマルチプロセッサシステム
に関するもので、特にキャッシュメモリの内容の一貫性
を保証する処理に関するものである。
【0002】
【従来の技術】共有メモリ型マルチプロセッサシステム
では、各演算処理装置が、1つの主記憶装置(共有メモ
リ)をアクセスするため、何らかの対策がないと主記憶
装置へのアクセスが競合し、各演算処理装置が十分な性
能を発揮できない。このため、一般に各演算処理装置毎
に共有メモリの一部を保持するキャッシュメモリが設け
られる。こうした分散キャッシュメモリ方式は、共有メ
モリ型マルチプロセッサシステムでは常套手段である
が、この分散キャッシュメモリ方式における重要な問題
として、各キャッシュメモリの内容の一貫性の保証があ
る。
【0003】この問題を解決するためには、各演算処理
装置はデータを更新した事実を他の演算処理装置すべて
に報告しなければならない。各演算処理装置はデータ更
新報告を監視する手段を有し、分散キャッシュメモリの
内容の一貫性を管理する必要がある。分散キャッシュメ
モリの内容の一貫性を保証するための方式としては、例
えば、文献 浦城恒雄、「キャッシュ・メモリの一致性
について」、情報処理、Vol.32、No,1、p
p.64−73、Jan.1991に詳しく示されてい
る種々の方式がある。
【0004】キャッシュメモリの内容の一貫性を保証す
るための動作について以下に一般的に示す。 (1)各演算処理装置はキャッシュメモリ内部のデータ
を変更した時、そのことを共有バスを通じ他の演算処理
装置に報告する。 (2)他の演算処理装置は共有バス上を監視し、データ
変更報告を検出した時、自キャッシュメモリ内にそのデ
ータが存在すれば、、そのデータを無効化する。 (3)各演算処理装置はデータを読み込むとき、自キャ
ッシュメモリ内のデータが無効化されていた時、主記憶
装置もしくは他の演算処理装置に付加するキャッシュメ
モリより、システムバスを通じてデータを自キャッシュ
メモリ内に取り込む。
【0005】
【発明が解決しようとする課題】上記従来技術では、通
常の処理で行なうデータ転送に加え、各演算処理装置に
付加したキャッシュメモリの内容の一貫性を保証するた
めのデータ転送も1つのシステムバスを使用して行なわ
れる。そのためシステムバスの競合が生じ、各演算処理
装置がキャッシュメモリを持つことにより向上を図った
性能が低下してしまうという問題点があった。
【0006】この発明は、上記のような問題点を解決す
るためになされたもので、各演算処理装置に付加するキ
ャッシュメモリの内容の一貫性を保証するために生じる
システムバスの利用頻度の増加を無くし、性能低下を抑
えることができるマルチプロセッサシステムを提供する
ことを目的とする。
【0007】
【課題を解決するための手段】この発明に係るマルチプ
ロセッサシステムは、各演算処理装置2,3に付加さ
れ、共有メモリ1の情報の一部を内部に備えられたキャ
ッシュメモリ5a,6aに格納し,当該演算処理装置
2,3からのメモリアクセスを管理するメモリ管理装置
5,6と、各演算処理装置2,3に付加され,システム
バス4上のトランザクションを監視し,その監視結果に
より必要であればキャッシュメモリ5a,6aに保持さ
れる情報の変更あるいは無効化を行なうシステムバス監
視装置7,8と、変更あるいは無効化を行なう時に生じ
るデータ転送を専用に行なうキャッシュ用バス9と、そ
のデータ転送の際のデータを一時保存する一時メモリ1
1と、キャッシュメモリ5a,6aの内容の一貫性を保
証するために行なわれるデータ転送を制御する制御装置
10とを備えたものである。
【0008】
【作用】例えば演算処理装置2に付加されたメモリ管理
装置5内のキャッシュメモリ5aの無効化されたデータ
を変更するためのデータ転送を行なう場合、キャッシュ
用バス9を通じてデータ転送が行なわれる。その際に変
更されたデータが、まだ他の演算処理装置3内にある場
合は、そのキャッシュ用バス9を通じて直接キャッシュ
メモリ5a,6a間でデータ転送が行なわれる。また、
既に共有メモリ1にデータが退避されている場合は、こ
の退避の際に制御装置10が一時メモリ11内にもデー
タを書き込んでおき、この一時メモリ11とキャッシュ
メモリ5a,6aとの間でデータ転送を行なう。このよ
うに、キャッシュメモリ5a,6aのデータの変更は、
システムバス4を使用せずに行なわれる。また、この時
同時に他の演算処理装置3と共有メモリ1との間でシス
テムバス4を使用してデータ転送を行なえる。
【0009】
【実施例】図1はこの発明の一実施例に係るマルチプロ
セッサシステムの構成を示すブロック図である。図1に
おいて、2,3は演算処理装置、1は演算処理装置2,
3に共有される共有メモリ、4は共有メモリ1と演算処
理装置2,3との間でデータ転送を行なうためのシステ
ムバスである。5,6は演算処理装置2,3にそれぞれ
付加され、共有メモリ1の情報の一部を内部に備えられ
たキャッシュメモリ5a,6aにそれぞれ格納し、演算
処理装置2,3からのメモリアクセスをそれぞれ管理す
るメモリ管理装置である。また、メモリ管理装置5,6
には図示しないアドレス変換装置も備えられている。
7,8は演算処理装置2,3に付加され、システムバス
4上のトランザクションを監視し、その監視結果により
必要であればキャッシュメモリ5a,6aに保持される
情報の変更あるいは無効化を行なうシステムバス監視装
置である。即ちシステムバス監視装置7,8は、キャッ
シュメモリ5a,6aの内容の一貫性をそれぞれ保つた
めシステムバス4に流れるアドレス信号を監視し、その
監視結果により必要であるならば、メモリ管理装置5,
6内のキャッシュメモリ5a,6aのキャッシュデータ
を変更あるいは無効化するものである。9はキャッシュ
メモリ5a,6aに保持されるキャッシュデータの変更
あるいは無効化を行なう時に生じるデータ転送を専用に
行なうキャッシュ用バスである。即ちキャッシュ用バス
9はキャッシュメモリ5a,6aの一貫性を保証するた
めに行なうデータ転送専用に使用するものである。10
はキャッシュメモリ5a,6aを監視し、キャッシュメ
モリ5a,6aの内容の一貫性を保証するために行なわ
れるデータ転送を制御する制御装置、11はキャッシュ
メモリ5a,6aの一貫性を保証するために転送される
データを一時保持する一時メモリである。
【0010】次にこの実施例の動作について説明する。
ここでは、共有メモリ1よりデータの一部がメモリ管理
装置5,6内のキャッシュメモリ5a,6aに格納され
ており、演算処理装置2がメモリ管理装置6内のキャッ
シュメモリ6aにも格納されているデータを変更した
後、演算処理装置3がそのデータを使用する場合の動作
を説明する。この動作は次の手順により行なわれる。 (1)演算処理装置2はメモリ管理装置6内のキャッシ
ュメモリ6aのデータを変更する。 (2)メモリ管理装置5は他の演算処理装置3に上記デ
ータの変更があったことをシステムバス4を通じ報告す
る。 (3)システムバス監視装置8はシステムバス4よりメ
モリ管理装置6内のキャッシュメモリ6aのデータの変
更があったことを検出し、メモリ管理装置6はそのキャ
ッシュデータを無効化する。 (4)制御装置10は、システムバス1を監視し、複数
の演算処理装置2,3に付加されたメモリ管理装置5,
6内のキャッシュメモリ5a,6aで共有されているデ
ータが共有メモリ1に書き込まれた場合、キャッシュ用
バス9にも接続されている一時メモリ11にそのデータ
を格納する。 (5)演算処理装置3より上記(3)の手順で無効化さ
れたキャッシュデータの使用要求がメモリ管理装置6に
送られると、メモリ管理装置6は、まだメモリ管理装置
5内のキャッシュメモリ5aにそのデータが残っていれ
ば、そのキャッシュメモリ5aよりキャッシュ用バス9
を通じて要求のあったデータの転送を行なう。既にその
データがメモリ管理装置5内に存在しない場合は、メモ
リ管理装置6は一時メモリ11よりキャッシュ用バス9
を通じてデータを転送する。
【0011】ところで、システムバス4とキャッシュ用
バス9との何れか一方又は両者は、命令読み出しのため
の命令専用バスと、オペランドの読み出し及び書き込み
のためのオペランド専用バスとを含む構成にすることに
よって、命令に関するデータのバスの使用が平均化さ
れ、1つのバスの使用頻度が減少する。また、システム
バス4とキャッシュ用バス9との何れか一方又は両者
は、複数のアドレスバスと複数のデータバスとを含む構
成にすることによって、アドレスとデータとが複数のバ
スで平均化されて転送されるので1つのバスの使用頻度
が減少する。
【0012】なお、上記実施例では2つの演算処理装置
2,3の間で行なう動作を示したが、演算処理装置の数
が更に複数となっても同様の動作を行なう。また、上記
実施例では制御装置10及び一時メモリ11はシステム
全体で1つであったが、各演算処理装置毎に付加しても
良い。また、上記実施例ではシステムバス監視装置7,
8と制御装置10を分離してあるが、システムバス監視
装置7,8に制御装置10の機能を拡張し、1つにして
も良い。
【0013】
【発明の効果】以上のように本発明によれば、各演算処
理装置に付加され,上記共有メモリの情報の一部を内部
に備えられたキャッシュメモリに格納し,当該演算処理
装置からのメモリアクセスを管理するメモリ管理装置
と、上記各演算処理装置に付加され,上記システムバス
上のトランザクションを監視し,その監視結果により必
要であれば上記キャッシュメモリに保持される情報の変
更あるいは無効化を行なうシステムバス監視装置と、上
記変更あるいは無効化を行なう時に生じるデータ転送を
専用に行なうキャッシュ用バスと、そのデータ転送の際
のデータを一時保持する一時メモリと、上記キャッシュ
メモリの内容の一貫性を保証するために行なわれるデー
タ転送を制御する制御装置とを設けて構成したので、他
の演算処理装置で変更されたデータを自キャッシュメモ
リ内に保持していた場合、各演算処理装置に付加するキ
ャッシュメモリの内容の一貫性を保証するために行なう
データ転送は、システムバスを使用せずにキャッシュ用
バスを使用して行なわれ、これにより分散キャッシュメ
モリの内容の一貫性を保証するためのデータ転送と共有
メモリへのデータ転送が同時に行なうことができ、また
システムバスにおける使用頻度が減少し、したがってキ
ャッシュメモリの内容の一貫性を保証するために生じる
性能低下が解消されるという効果が得られる。また、シ
ステムバスとキャッシュ用バスの何れか一方又は両者
を、命令読み出しのための命令専用バスと、オペランド
の読み出し及び書き込みのためのオペランド専用バスと
を含み構成した場合は、命令に関するデータのバスの使
用が平均化され、1つのバスの使用頻度が減少し、上記
効果を達成できる。また、システムバスとキャッシュ用
バスの何れか一方又は両者を、複数のアドレスバスと複
数のデータバスとを含み構成した場合は、アドレスとデ
ータとが複数のバスで平均化されて転送されるので、1
つのバスの使用頻度が減少し、上記効果を達成できる。
【図面の簡単な説明】
【図1】この発明の一実施例に係るマルチプロセッサシ
ステムの構成を示すブロック図である。
【符号の説明】
1 共有メモリ 2,3 演算処理装置 4 システムバス 5,6 メモリ管理装置 5a,6a キャッシュメモリ 7,8 システムバス監視装置 9 キャッシュ用バス 10 制御装置 11 一時メモリ

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 複数の演算処理装置と、上記複数の演算
    処理装置に共有される共有メモリと、該共有メモリと上
    記複数の演算処理装置との間でデータ転送を行なうため
    のシステムバスとを備えたマルチプロセッサシステムに
    おいて、上記各演算処理装置に付加され,上記共有メモ
    リの情報の一部を内部に備えられたキャッシュメモリに
    格納し,当該演算処理装置からのメモリアクセスを管理
    するメモリ管理装置と、上記各演算処理装置に付加さ
    れ,上記システムバス上のトランザクションを監視し,
    その監視結果により必要であれば上記キャッシュメモリ
    に保持される情報の変更あるいは無効化を行なうシステ
    ムバス監視装置と、上記変更あるいは無効化を行なう時
    に生じるデータ転送を専用に行なうキャッシュ用バス
    と、そのデータ転送の際のデータを一時保持する一時メ
    モリと、上記キャッシュメモリの内容の一貫性を保証す
    るために行なわれるデータ転送を制御する制御装置とを
    設けたことを特徴とするマルチプロセッサシステム。
  2. 【請求項2】 システムバスと、キャッシュ用バスとの
    何れか一方又は両者は、命令読み出しのための命令専用
    バスと、オペランドの読み出し及び書き込みのためのオ
    ペランド専用バスとを含むことを特徴とする請求項1の
    マルチプロセッサシステム。
  3. 【請求項3】 システムバスとキャッシュ用バスとの何
    れか一方又は両者は、複数のアドレスバスと、複数のデ
    ータバスとを含むことを特徴とする請求項1のマルチプ
    ロセッサシステム。
JP3208619A 1991-07-25 1991-07-25 マルチプロセツサシステム Pending JPH0535697A (ja)

Priority Applications (1)

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

Applications Claiming Priority (1)

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

Publications (1)

Publication Number Publication Date
JPH0535697A true JPH0535697A (ja) 1993-02-12

Family

ID=16559227

Family Applications (1)

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

Country Status (1)

Country Link
JP (1) JPH0535697A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08180032A (ja) * 1994-12-27 1996-07-12 Kobe Nippon Denki Software Kk プロセッサ間通信装置
JPH0944401A (ja) * 1995-07-27 1997-02-14 Nec Ibaraki Ltd キャッシュ制御装置
US6408365B1 (en) 1998-02-02 2002-06-18 Nec Corporation Multiprocessor system having means for arbitrating between memory access request and coherency maintenance control

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH08180032A (ja) * 1994-12-27 1996-07-12 Kobe Nippon Denki Software Kk プロセッサ間通信装置
JPH0944401A (ja) * 1995-07-27 1997-02-14 Nec Ibaraki Ltd キャッシュ制御装置
US6408365B1 (en) 1998-02-02 2002-06-18 Nec Corporation Multiprocessor system having means for arbitrating between memory access request and coherency maintenance control

Similar Documents

Publication Publication Date Title
EP0735480B1 (en) Cache coherent computer system that minimizes invalidation and copyback operations
US6088769A (en) Multiprocessor cache coherence directed by combined local and global tables
EP0349122B1 (en) Method and apparatus for filtering invalidate requests
KR100267029B1 (ko) 메모리갱신이력보존장치를구비한컴퓨터시스템
JPH0680499B2 (ja) マルチプロセッサ・システムのキャッシュ制御システムおよび方法
JPH04353947A (ja) メモリページ特性タグ付けシステム
JPH0997214A (ja) 補助プロセッサのためのアドレス変換を含む情報処理システム
US5761724A (en) Write-invalidate cache system for a split transaction bus based shared memory multiprocessor
JPH10232832A (ja) 重複タグ・システム維持方法
JPH0535697A (ja) マルチプロセツサシステム
JPS63253448A (ja) マルチ計算機装置
US5907853A (en) Method and apparatus for maintaining duplicate cache tags with selectable width
JPH0744459A (ja) キャッシュ制御方法およびキャッシュ制御装置
JPH0962580A (ja) マルチプロセッサ装置
JPH03230238A (ja) キャッシュメモリ制御方式
JPH10222423A (ja) キャッシュメモリ制御方式
JPH04305746A (ja) キャッシュメモリ制御装置
JP2001043204A (ja) キャッシュ・メモリ制御装置
JP2636760B2 (ja) マルチプロセッサシステム
KR0145454B1 (ko) 분산된 공유 메모리를 갖는 다중 프로세서
JPH04123151A (ja) システムバス
JPH06309229A (ja) データ処理装置
KR0138585B1 (ko) 분리형 트랜잭션 버스를 이용한 공유 메모리 다중 프로세서
JPH04133145A (ja) キャッシュメモリの無効化処理装置および無効化制御方法
JPH04340636A (ja) ローカルキャッシュ一貫性維持装置