JPH09185547A - マルチプロセッサの制御方法及びその装置 - Google Patents

マルチプロセッサの制御方法及びその装置

Info

Publication number
JPH09185547A
JPH09185547A JP7344013A JP34401395A JPH09185547A JP H09185547 A JPH09185547 A JP H09185547A JP 7344013 A JP7344013 A JP 7344013A JP 34401395 A JP34401395 A JP 34401395A JP H09185547 A JPH09185547 A JP H09185547A
Authority
JP
Japan
Prior art keywords
data
request
shared
cache
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.)
Pending
Application number
JP7344013A
Other languages
English (en)
Inventor
Masashi Takahashi
真史 高橋
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.)
Toshiba Corp
Original Assignee
Toshiba 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 Toshiba Corp filed Critical Toshiba Corp
Priority to JP7344013A priority Critical patent/JPH09185547A/ja
Publication of JPH09185547A publication Critical patent/JPH09185547A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 【課題】 共有バスを用いた転送で必要となるハンドシ
ェークを用いずに、キャッシュメモリ間のデータ転送を
高速に行うことである。 【解決手段】 共有バス4に接続され、データを保持す
るデータ保持部、及び、このデータ保持部に保持された
データの情報を保持するタグ保持部を備えた複数のキャ
ッシュメモリ2と、複数のキャッシュメモリ2にそれぞ
れ接続され、必要なデータをキャッシュメモリ2に要求
することで所定の処理を行う複数のPE1と、複数のキ
ャッシュメモリ2に接続され、これらキャッシュメモリ
2のデータの入出力の制御を行うキャッシュコヒーレン
ス部3とを設けてある。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、マルチプロセッサ
の制御方法及びその装置に関し、特に、キャッシュメモ
リ間のデータ転送を高速に行うことができるマルチプロ
セッサの制御方法及びその装置に関する。
【0002】
【従来の技術】マルチプロセッサの構成として、バス結
合型のマルチプロセッサが多く用いられている。図11
に、従来のマルチプロセッサの構成図を示す。このマル
チプロセッサは、複数個のプロセシングエレメント(P
E)101、複数個のキャッシュメモリ102、共有バ
ス104、および共有メモリ(主メモリ)105とから
構成される。PE101は32ビットリスクプロセッサ
(32bit RISC Processor)で、それぞれが、1つのキャ
ッシュメモリに接続される。PE101は、ロード/ス
トア命令の実行時に、接続されたキャッシュメモリにア
クセスする。
【0003】キャッシュメモリ102は、それぞれが、
PE101のプライベートキャッシュとして接続され
る。また、キャッシュメモリ102は、共有バス104
を介して、相互に接続される。一般にマルチプロセッサ
の場合には、キャッシュメモリ102の所定のキャッシ
ュラインで保持される内容について他のキャッシュメモ
リにそのコピーが存在する場合が考えられる。この場合
の各キャッシュラインに保持される内容の整合性を担保
するために図22に示す状態遷移図を用いることにより
キャッシュメモリを制御する場合が多い。以下、図12
を用いて各状態を説明する。
【0004】(1) インバリッド(Invalid) キャッシュメモリ中のキャッシュラインが無効の状態で
ある。リードミス、あるいはライトミスによって、キャ
ッシュにデータがロードされると、他の状態に遷移す
る。
【0005】(2) クリーンエクスクルーシブ(Clea
n Exclusive ) キャッシュラインが有効で、他のキャッシュメモリに同
一アドレスのコピーが存在しない状態である。共有メモ
リと同一の最新の更新された値を保持している。
【0006】(3) ダーティエクスクルーシブ(Dirt
y Exclusive ) キャッシュラインが有効で、他のキャッシュメモリに同
一アドレスのコピーが存在しない状態である。共有メモ
リとは異なる値を保持しており、リプレイス(あるデー
タがキャッシュメモリから追い出されて、その内容が消
去されること)時には、共有メモリへの書き戻しが必要
である。
【0007】(4) クリーンシェアード(Clean Share
d) キャッシュラインが有効で、他のキャッシュメモリに同
一アドレスのコピーが存在するかも知れない状態であ
る。すべてのキャッシュメモリは、更新された最新の値
を保持しているが、共有メモリとは異なる可能性があ
る。また、リプレイス時に、共有メモリへのデータ書き
戻しは不要である。
【0008】(5) ダーティシェアード(Dirty Share
d) キャッシュラインが有効で、他のキャッシュメモリに同
一アドレスのコピーが存在するかも知れない状態であ
る。共有メモリとは異なる最新の値を保持しており、リ
プレイス時には、共有メモリへの書き戻しが必要であ
る。
【0009】以上のように、状態遷移図を用いることに
よりキャッシュメモリを制御を行っている。
【0010】次に、キャッシュメモリは、PE101か
らの要求に従って、次のように共有バスに要求を出し、
メモリおよび他のキャッシュメモリとのデータ転送を行
う。
【0011】(1) リードヒット(Read Hit) PE101からキャッシュメモリへのアクセスのみで操
作が完了する。共有バスへのアクセスは行われない。
【0012】(2) リードミス(Read Miss) 共有バスを介して、所望のデータを要求する。他のキャ
ッシュメモリがこのデータを保持しており、このキャッ
シュラインがDirty Exclusive あるいはDirtySharedな
らば、データ要求に応答し、共有バスにこのラインを送
出する。一般的には同一コピーのうち、Dirty 状態にあ
るのはシステム中に唯一であるような仕様にする場合が
多く、このようにすることによりバス競合を防ぐことが
できる。他のキャッシュメモリから応答がなければ、所
望のデータは、共有メモリからロードされる。
【0013】(3) ライトヒット(Write Hit) Clean Exclusive 、あるいはDirty Exclusive 状態なら
ば、自キャッシュへの書き込みだけで終了する。このと
きClean Exclusive 状態ならば、 Dirty Exclusive状態
に遷移する。Clean Shared、Dirty Shared状態のなら
ば、共有バスを介して他キャッシュの更新が行われる。
Clean Shared状態の場合には、Dirty Shared状態に遷移
し、Dirty Shared状態にある他キャッシュはClean Shar
ed状態に遷移する。すなわち、Dirty Shared状態は、シ
ステム中に1 つしか存在しない。
【0014】(4) ライトミス(Write Miss) リードミスと同様に新データロードした後、ライトヒッ
トと同様の手続きをとる。
【0015】図13は、あるキャッシュメモリがリード
ミスを起こして、他のキャッシュメモリから所望のライ
ンを転送される場合のタイミング図である。マスタクロ
ックに付された括弧内の番号に対応して説明するまず、
キャッシュメモリが共有バスに要求を出す。要求信号を
ハイ(High) 状態にする(1)。続いて、要求を出した
キャッシュメモリは、バスを取得信号を入力した後
(2)、アドレスバスにアドレスを出す(3),
(4)。続いて、他のキャッシュメモリが、共有バス上
のデータ要求を認識して、キャッシュメモリを検索し
(A),(5)、所望のデータが存在した場合、当該他
のキャッシュメモリは、このデータを共有バスに送出す
る(B),(6)。要求元のキャッシュメモリは、共有
バス上のデータを取り込み、アクノリッジを返す。送出
キャッシュメモリは、要求元のキャッシュメモリによる
アクノリッジ信号によって、データ送出を停止する。以
上でバス転送サイクルが終了する(7)。
【0016】このように、従来のマルチプロセッサで
は、キャッシュメモリ間およびキャッシュメモリと主記
憶間のデータ転送は、要求を出すキャッシュメモリがバ
スマスタとなることで行っていた。すなわち、バスマス
タとなるまで、調停回路(図示せず)からのアクノリッ
ジを待つ必要があった。また、バス競合を防ぐあるキャ
ッシュメモリからのデータ要求に対して、Dirty 状態に
あるキャッシュメモリしか応答ができなかった。つま
り、他のキャッシュメモリが所望のデータを保持してい
ても、Dirty 状態でなければ、共有メモリからデータを
転送せざるを得なかった。さらに、Dirty Shared状態に
あるラインをリプレイスする場合、他のキャッシュメモ
リが同一ラインのコピーを保持していても、共有メモリ
への書き戻しを行わなければならなかった。これらは、
必要以上に共有メモリへのアクセスを要求し、システム
性能を低下を引き起こしていた。
【0017】
【発明が解決しようとする課題】以上で述べたような従
来の構成では、共有バスを用いた転送で必要となるハン
ドシェークが、しばしばバス転送の高速化の妨げとなっ
ていた。さらに、あるデータ要求に対して、ダーティビ
ットがセットされているキャッシュメモリのみしか応答
できないため、余分な共有メモリへのアクセスが発生し
て、性能低下を引き起こしていた。
【0018】本発明は上記事情に鑑みてなされたもので
ありその目的とするところは、共有バスを用いた転送で
必要となるハンドシェークを用いずに、キャッシュメモ
リ間のデータ転送を高速に行うことができるマルチプロ
セッサの制御方法及びその装置を提供することにある。
【0019】
【課題を解決するための手段】上記目的を達成するた
め、第1の発明の特徴は、データの転送を行う共有バス
と、この共有バスに接続され、データを保持する共有メ
モリと、前記共有バスに接続され、データを保持するデ
ータ保持部、及び、このデータ保持部に保持されたデー
タの情報を保持するタグ保持部を備えた複数のキャッシ
ュメモリと、この複数のキャッシュメモリのうち一のキ
ャッシュメモリに接続され、必要なデータを前記キャッ
シュメモリに要求して所定の処理を行う複数のプロセッ
サ(PE)と、を備えたマルチプロセッサを制御する方
法において、前記複数のキャッシュメモリのうちの所定
のキャッシュメモリで、他のキャッシュメモリと共有状
態にあってかつ共有メモリに対して更新されているデー
タがリプレイスされるとき、前記データを共有している
前記他のキャッシュメモリのうちの1つのキャッシュメ
モリのタグ保持部に、共有メモリに対して更新されてい
る旨の情報を保持させ、前記共有メモリへの前記更新さ
れているデータの書き戻しを行わないことである。
【0020】上記発明の構成のように、他のキャッシュ
メモリに存在するデータが前記共有メモリに記憶されて
いる内容と異なる旨の情報を前記他のキャッシュメモリ
のタグ保持部に保持させるようにすることで、共有メモ
リに書き戻すことがないため、処理の高速化を図ること
ができるのである。
【0021】次に、第2の発明の特徴は、データの転送
を行う共有バスと、この供給バスに接続され、データを
保持する共有メモリと、前記共有バスに接続され、デー
タを保持するデータ保持部、及び、このデータ保持部に
保持されたデータの情報を保持するタグ保持部を備えた
複数のキャッシュメモリと、この複数のキャッシュメモ
リにそれぞれ接続され、必要なデータを前記キャッシュ
メモリに要求することで所定の処理を行う複数のPE
と、を備えたマルチプロセッサを制御する装置におい
て、前記複数のキャッシュメモリに接続され、これらキ
ャッシュメモリのデータの入出力の制御を行うキャッシ
ュコヒーレンス部を設けることである。
【0022】上記発明の構成によれば、キャッシュメモ
リの制御のうち、共有バスを用いる制御をハンドシェー
クなしに集中的に制御することができ、さらにキャッシ
ュラインの状態にかかわらず、キャッシュメモリ間のデ
ータ転送を実行することができるのである。
【0023】ここで、前記キャッシュコヒーレンス部
は、データを出力するキャッシュメモリに前記共有バス
への出力する旨の命令を行い、データを入力するキャッ
シュメモリに前記共有バスからの入力する旨の命令を行
うことでデータの入出力の制御を行うことが好ましい。
【0024】また、前記キャッシュコヒーレンス部は、
前記複数のキャッシュメモリのうち、所定のキャッシュ
メモリがデータを要求する場合に、他のキャッシュメモ
リに前記要求されたデータが存在すれば、前記要求され
たデータの存在する前記他のキャッシュメモリのうちの
1つのキャッシュメモリに、前記要求されたデータを前
記共有バスに出力させ、前記所定のキャッシュメモリ
に、前記共有バスから前記要求されたデータを入力させ
ることが好ましい。
【0025】また、前記キャッシュコヒーレンス部は、
前記複数のキャッシュメモリのうちの所定のキャッシュ
メモリで、キャッシュミスによって、前記共有メモリに
対して更新されているデータがリプレイスされるとき、
他のキャッシュメモリに前記リプレイスされるデータと
同一のデータが存在すれば、前記共有メモリに対して更
新されている旨の情報を、前記データを保持する前記他
のキャッシュメモリのうちの1つのキャッシュメモリの
前記タグ保持部に保持させ、前記共有メモリへの書き戻
しを行わないことが好ましい。
【0026】次に、第3の発明の特徴は、データの転送
を行う共有バスと、この供給バスに接続され、データを
保持する共有メモリと、前記共有バスに接続され、デー
タを保持するデータ保持部、このデータ保持部に保持さ
れたデータの情報を保持するタグ保持部、及びデータの
要求があった場合であって、前記データ保持部に保持さ
れないデータを要求された場合には前記共有メモリに所
定のデータの要求を行う制御部を備えた複数のキャッシ
ュメモリと、この複数のキャッシュメモリにそれぞれ接
続され、必要なデータを前記キャッシュメモリに要求す
ることで所定の処理を行う複数のPEと、前記制御部か
らの要求を入力して、どの要求を受け付けるかを決定
し、決定された要求及び要求を行った前記PEの情報を
出力する調停部と、前記複数のキャッシュメモリのタグ
記憶部に接続され、前記調停部にて決定された要求を入
力して所定の処理を実行するコヒーレンス制御部と、を
備えることである。
【0027】ここで、前記調停部は、前記制御部から複
数の要求を入力した場合には、最も優先順位の高いPE
の要求を選択し、選択された前記PEは最も優先順位を
低くするようにして次の要求の選択を行うようにするこ
とで、どの要求を受け付けるかを決定する要求選択手段
と、この要求手段に接続され、前記決定された要求を行
ったPE番号を入力し、該当するPEに前記要求が選択
された旨の信号を出力するアクノリッジ出力手段と、を
備えることが好ましい。
【0028】また、前記要求選択手段は、シフトレジス
タにてPE番号を保持することが好ましい。
【0029】また、前記タグ保持部は、前記データ保持
部に保持された所定のデータが他のキャッシュメモリに
も保持されているか否かを示すシェア(Share) ビットを
少なくとも有し、前記コヒーレンス制御部は、前記調停
部にて決定されたリフィル要求を入力してリフィル要求
に係るデータが他のキャッシュメモリに存在するか否か
の検索のための命令を行うリフィル制御ロジックと、こ
のリフィル制御ロジックの命令を入力し、前記複数のキ
ャッシュメモリのタグ記憶部に前記データが存在するか
否かの検索信号を出力するタグ保持部Read信号生成
手段と、このタグ保持部Read信号生成手段にて検索
されたデータが存在するか否かを前記タグ保持部の出力
信号から判別するタグ情報判別手段と、このタグ情報判
別部にて検索されたデータが存在すると判別されたPE
に該当するデータを前記共有バスに出力する命令を行う
データ保持部Read信号生成手段と、要求を行ったP
Eに共有バスよりデータを入力する命令を行うデータ保
持部Write信号生成手段と、を備え、前記要求を行
ったPE、及び、前記判別されたPEのキャッシュメモ
リのシェアードビットをセットすることが好ましい。
【0030】また、前記タグ保持部は、前記データ保持
部に保持された所定のデータが前記共有メモリと異なる
虞のあるデータか否かを示すダーティ(Dirty) ビット
と、前記データ保持部に保持された所定のデータが他の
キャッシュメモリにも保持されているか否かを示すシェ
アードビットを少なくとも有し、前記コヒーレンス制御
部は、前記調停部にて決定されたリプレイス要求を入力
し、シェアードビットがセットされたリプレイスされる
データが他のキャッシュメモリに存在するか否かの検索
のための命令を行うリプレイス制御ロジックと、このリ
プレイス制御ロジックの命令を入力し、前記複数のキャ
ッシュメモリのタグ記憶部に前記データが存在するか否
かの検索信号を出力するタグ保持部Read信号生成手
段と、このタグ保持部Read信号生成手段にて検索さ
れたデータが存在するか否かを前記タグ保持部の出力信
号から判別するタグ情報判別手段と、このタグ情報判別
手段にて検索されたデータが存在すると判別されたPE
に該当するデータを前記共有バスに出力する命令を行う
データ保持部Read信号生成手段と、要求を行ったP
Eに共有バスよりデータを入力する命令を行うデータ保
持部Write信号生成手段と、を備え、前記要求を行
ったPEのキャッシュメモリのダーティビット及びシェ
アードビットをセットし、並びに、前記判別されたPE
のキャッシュメモリのシェアードビットをセットするこ
とが好ましい。
【0031】また、前記コヒーレンス制御部は、前記デ
ータ保持部に保持された所定のデータが他のキャッシュ
メモリにも保持されているか否かを示すダーティ(Dirt
y) ビットを少なくとも有し、前記調停部にて決定され
た書き込み更新要求を入力して、書き込み更新要求に係
るデータが他のキャッシュメモリに存在するか否かの検
索のための命令を行う書き込み更新制御ロジックと、こ
の書き込み更新制御ロジックの命令を入力し、前記複数
のキャッシュメモリのタグ記憶部に前記データが存在す
るか否かの検索信号を出力するタグ保持部Read信号
生成手段と、このタグ保持部Read信号生成手段にて
検索されたデータが存在するか否かを前記タグ保持部の
出力信号から判別するタグ情報判別手段と、要求を行っ
たPEに共有バスに該当するデータを出力する命令を行
うデータ保持部Read信号生成手段と、前記タグ情報
判別部にて検索されたデータが存在すると判別されたP
Eにデータを前記共有バスより入力する命令を行うデー
タ保持部Write信号生成手段と、を備え、前記判別
されたPEのキャッシュメモリのダーティビットをセッ
トすることが好ましい。
【0032】また、前記コヒーレンス制御部は、前記調
停部にて決定されたアトミックメモリアクセス要求を入
力し、この要求を行ったプロセッサがアトミック命令を
実行している間は、要求を受け付けない命令を前記要求
選択手段に行うアトミックメモリアクセス制御ロジック
を備えることが好ましい。
【0033】
【発明の実施の形態】以下、本発明に係るマルチプロセ
ッサの実施形態について、図面を参照しながら説明す
る。図1は本発明の実施形態であるマルチプロセッサの
構成図である。本実施形態のマルチプロセッサは、複数
個のプロセシングエレメント(以下、PEと記す)1
と、複数個のキャッシュメモリ2と、キャッシュコヒー
レンスユニット(以下、CCUと記す)3と、共有バス
4と、共有メモリ5とを有する。
【0034】PE1はプロセッサエレメントであり、そ
れぞれが1つのキャッシュメモリ2に接続され、ロード
/ストア命令の実行時に、接続されたキャッシュメモリ
2にアクセスする。PE1は、演算制御命令、ロード命
令といったプロセッサでの演算処理命令のほかに、マル
チプロセッサ制御用のアトミックメモリアクセス命令を
持つ。アトミックメモリアクセス命令には、テストアン
ドセット命令、スワップ命令等がある。PE1は、ロー
ド/ストア命令の実行時に、キャッシュメモリ2に対し
て、図2に示す通りメモリ要求を行う場合にはメモリ要
求(図2のmemreq信号線22)をアサートし、ack 信号
がアサートされるまで待機する。アトミックメモリアク
セス命令時は、atomic信号をアサートした後、ロード、
ストア命令の処理を行う。これらの処理の終了後、atom
ic信号線21をネゲートする。なお、このPE1はCI
SCプロセッサ、RISCプロセッサ等、種類の別を問
わないが、本実施形態においてはRISCプロセッサを
前提に説明する。
【0035】キャッシュメモリ2は、それぞれがPE1
のプライベートキャッシュとして接続される。また、キ
ャッシュメモリ2は、共有バス4を介して相互に接続さ
れており、接続されたPE1からのメモリ要求により所
定のデータを出力する。
【0036】図2にキャッシュメモリ2の構成図を示
す。本実施形態で用いるキャッシュメモリ2は、タグ保
持部201と、データ保持部202と、キャッシュコン
トローラ203と、選択部204とを有する。本実施形
態で用いるキャッシュメモリ2は、ライトバック方式
で、サイズは16KByte 、32Byte/Line 構成で、直接マッ
ピング方式であるとするが、これに限られずに本発明は
実施可能である。
【0037】タグ保持部201は、2ポートメモリで構
成され、PE1とコヒーレンス制御ユニット320から
の同時アクセスが可能である。タグ保持部201は51
2ワード構成で、1ワードは、タグ部が18ビット、有
効ビットが1ビット、Dirtyビットが1ビット、Shared
ビットが1ビットの構成のものを用いる。
【0038】データ保持部202は必要に応じて共有メ
モリ(図示せず)から所定のデータを入力し、保持す
る。また、PEの要求等により保持したデータの更新や
削除等を、コヒーレンス制御部320の制御により行
う。選択部204は、データ保持部202が保持するデ
ータの更新や削除等の処理におけるデータ転送をPE1
若しくは共有バス4のいずれと行うかを選択して入出力
を行う。このための制御はコヒーレンス制御部320が
行う。
【0039】キャッシュコントローラ203は、PE1
から各種の要求をatomic信号線21、memreq信号線2
2、及びr/w 信号線23から入力し、その要求の返答を
ack信号線24にて行うように接続されている。また、
CCU3に備えられる調停部310に要求をupdate信号
線25、mlock 信号線26、refill信号線27、及びre
place 信号線28にて行うように接続され、また、その
要求についての返答を ack信号線29にて入力するよう
に接続されている。
【0040】PE1からのメモリアクセス要求に対し
て、キャッシュコントローラ203は以下の処理を行
う。PE1からメモリアクセス要求を入力すると(memr
eq信号線22)、アドレスとタグメモリの所定の番地の
値とを比較し、一致する場合には(キャッシュヒッ
ト)、PE1( ack信号線24)にアクノリッジ信号を
出力する。ここで、メモリアクセス要求が書き込みなら
ば、PE1からのデータをデータ保持部202の所定の
位置に書き込み、タグ保持部201の所定のワードのDi
rty ビットをセットする。一方、一致しない場合には
(ミスヒット)、キャッシュコントローラ203は、C
CU3に対して、Dirty ビットがセットされていればキ
ャッシュリプレイス要求を、セットされていなければキ
ャッシュリフィル要求を出し、CCU3( ack信号線2
9)からのアクノリッジを待つ。
【0041】また、キャッシュコントローラ203は、
Sharedビットのセットされているラインへの書き込みが
あると、CCU3に対して、update信号線25をアサー
トする。そして、CCU3からのack 信号線29がアサ
ートされるまで待機する。また、キャッシュコントロー
ラ203は、アトミックロードストア命令の要求をPE
1からatomic信号線21にて入力したときは、mlock 信
号線26をアサートし、コヒーレンスコントロールユニ
ット3からのack 信号線29がアサートされるまで待機
する。
【0042】CCU3は、共有メモリ5とキャッシュメ
モリ2間のデータ転送、およびキャッシュメモリ2間で
のコヒーレンシを保持するためにキャッシュメモリ間の
データ転送の制御をするためのものである。このCCU
3は、調停部310と、コヒーレンス制御部320とを
有する。
【0043】調停部310の構成は図3に示すように、
キャッシュメモリからの要求を入力し、どの要求を受け
付けるかを選択し、決定された要求を行ったPE番号及
びその要求を出力する要求選択手段311と、要求選択
手段311が出力するPE番号を入力し、そのPE番号
に該当するPEにアクノリッジ信号を出力するアクノリ
ッジ出力手段312とを有する。なお、CCU3は共有
バス4に接続する全てのキャッシュメモリに接続されて
いるが、本図では図面の簡略化のため、1つのキャッシ
ュメモリ2にのみ接続されるように示してある。
【0044】要求選択手段311は、各キャッシュメモ
リ2(図示せず)から、キャッシュリフィル(refill)、
コヒーレンス制御のためのバス書き込み(update,replac
e)、不可分アクセス命令のためのメモリロック(mlock)
の各要求を入力する。複数の要求を入力した場合には、
どのPEからの要求を受け付けるか決定する。この決定
には、LRU(Least Recently Used) 法に基づいて行
う、すなわち、複数の要求を入力した場合には最も共有
バス4を利用していないPEの要求を優先的に受け付け
るようにする。このLRU法を実現するにはシフトレジ
スタを用いて、複数の要求を入力した場合には最も優先
順位の高いPEの要求を選択し、選択されたPEは最も
優先順位を低くするようにして次の要求の選択を行うよ
うにしてもよい。これにより、公平なバス調停を実現す
ることができる。
【0045】要求を受け付けるPEを決定すると、その
要求を行ったPE番号及びその要求を出力する。なお、
PE番号は、複数のPEのうち一のPEを特定できるも
のであればどのようなものでもよい。
【0046】アクノリッジ出力手段312は、要求選択
手段311が出力したPE番号を入力し、該当するPE
にアクノリッジ信号をアサートする。
【0047】コヒーレンス制御部320の構成は図4に
示すように、調停部310からの入力信号線329から
の情報を入力する。この情報は各種の処理を行うリフィ
ル制御ロジック321、リプレイス制御ロジック32
2、書き込み更新制御ロジック323、及びアトミック
メモリアクセス制御ロジック324の各制御ロジックに
入力される。また、各種の信号を生成するデータ保持部
Read信号生成手段325、データ保持部Write
信号生成手段326、及びタグ保持部Read信号生成
手段327は各制御ロジックにて出力された信号を入力
して各キャッシュメモリに出力する。さらに、タグ情報
判別手段328は、このタグ保持部Read信号生成手
段327の出力信号及びキャッシュメモリ2からのタグ
情報を入力し、このタグ情報所定の制御ロジックに出力
するようにしてある。以下、各制御ロジックの処理を説
明する。
【0048】図5は、リフィル制御ロジック321が行
う処理を示したフローチャ−トである。この処理はリフ
ィル要求を受けた場合、すなわち、あるキャッシュメモ
リがリフィル要求を出して他のキャッシュに所望のデー
タが存在する場合に、共有バス4を用いて、オンチップ
のキャッシュ間でデータ転送を行う場合の処理である。
【0049】(1) まず、リフィル制御ロジック32
1は、要求選択手段311にて選択された要求のうちリ
フィル要求をPE番号等を入力することにより受け付け
る(ステップS501)。従って、要求を行ったPEの
refill信号線がアサートされている。
【0050】(2) リフィル制御ロジック321は、
他のすべてのキャッシュメモリのタグ保持部201をア
クセスし、所望のデータが存在するか否かの検索のため
の命令をする(ステップS502)。この検索は、タグ
保持部Read信号生成手段327に検索要求を行い、
この要求によりタグ保持部Read信号生成手段327
は検索のための信号を生成して各キャッシュメモリのタ
グ保持部(図示せず)に出力する。各タグ保持部からの
返答はタグ情報判別手段328が入力して、所望のデー
タを有するPE番号をリフィル制御ロジック321に出
力する。
【0051】(3) あるキャッシュメモリに、所望の
データが存在した場合、CCU3は、データの存在する
キャッシュメモリのデータ保持部(図示せず)からデー
タを読み出す(ステップS503)。この読み出しには
データ保持部Read信号生成手段325に要求を行
い、この要求によりデータ保持部Read信号生成手段
325は、読み出しのための信号を生成して所望のデー
タを保持する他のキャッシュメモリに該当するデータを
共有バス4に出力するよう命令を行う。この信号を入力
した他のキャッシュメモリはデータの存在したラインの
Sharedビットをセットし、共有バス4に所望のデータを
出力する。共有バス4のビット幅はデータ保持部202
の1ライン分(256bit)あるので、一度にデータ保持部
202の1ライン分を転送することができる。また、デ
ータ保持部Write信号生成手段326は、要求を行
ったPEに共有バス4よりデータを入力するよう命令を
行う。以上のように、キャッシュコヒーレンス部320
は、データを出力するキャッシュメモリに共有バス4へ
の出力命令を行い、データを入力するキャッシュメモリ
に共有バス4からの入力命令を行うことでデータの入出
力の制御を行うようにすることで、当該他のキャッシュ
メモリはバスアービトレーションを行うことなく所定の
データを転送することができる。
【0052】(4) 要求を出したキャッシュメモリ
は、共有バス4上のデータをデータ保持部に書き込む。
そして、書き込んだラインのSharedビットをセットす
る。同時に、アクノリッジをアサートして、データ転送
サイクルを終了する。
【0053】以上のような動作のタイミング図を図9に
示す。マスタクロックに付された括弧内の番号に対応し
て説明する。
【0054】まず、キャッシュメモリがrefill信号をア
サートして、リフィル要求する。CCU3はこれを受け
付ける(1)。CCU3は、アドレスバスにアドレスを
出力し、他のキャッシュメモリのタグ保持部をアクセス
し、所望のデータが存在するか否かを検索する(2)。
所望のデータが存在した場合、CCU3は当該他のキャ
ッシュメモリのデータ保持部から、このデータを共有バ
ス4に送出する(3)。CCU3は、共有バス4上のデ
ータを要求元キャッシュメモリのデータ保持部に入力す
るよう命令を行う(4)。以上でバス転送サイクルが終
了する。
【0055】図6は、リプレイス制御ロジック322が
行う処理を示したフローチャ−トである。この処理は、
あるキャッシュメモリがリプレイス要求を出した場合の
処理である。
【0056】(1) まず、リプレイス制御ロジック3
22は、要求選択手段311にて選択された要求のうち
リプレイス要求をPE番号等を入力することにより受け
付ける(ステップS601)。従って、要求を行ったP
Eのreplace 信号線がアサートされており、このキャッ
シュラインのDirty ビットがセットされている。
【0057】(2) CCU3は、追い出されるキャッ
シュラインにSharedビットがセットされていないか否か
の判断を行い(ステップS602)、セットされていな
ければ、このデータを共有メモリ5に書き戻す(ステッ
プS604)。Sharedビットがセットされており、か
つ、追い出されるデータのコピーがある場合には、他の
すべてのキャッシュメモリのタグ保持部201をアクセ
スし、同じデータラインを他のキャッシュメモリが保持
しているかどうかを検索するための命令をする。この検
索は、タグ保持部Read信号生成手段327に要求を
行い、この要求によりタグ保持部Read信号生成手段
327は検索のための信号を生成して各キャッシュメモ
リのタグ保持部(図示せず)に出力する。各タグ保持部
からの返答はタグ情報判別手段328が入力して、所望
のデータを有するPE番号をリフィル制御ロジック32
1に出力する。
【0058】他のキャッシュメモリが保持している場
合、このデータを保持しているキャッシュメモリのキャ
ッシュラインのDirty ビットをセットする(ステップS
603)。このように共有メモリ5に書き戻すことな
く、データを保持しているキャッシュメモリのキャッシ
ュラインのDirty ビットをセットのみを行うことで処理
の高速化を図ることができる。
【0059】(3) 次に、新しくロードすべきデータ
について、リフィル要求処理を行う(ステップS60
5)。この内容は上記の通りであるので、その説明は省
略する。
【0060】図7は、書き込み更新要求制御ロジック3
23が行う処理を示したフローチャ−トである。この処
理は、あるキャッシュメモリで、Sharedビットのセット
されているラインへの書き込みが起こった場合の処理で
ある。
【0061】(1) まず、書き込み更新要求制御ロジ
ック323は、要求選択手段311にて選択された要求
のうち書き込み更新要求をPE番号等を入力することに
より受け付ける(ステップS701)。従って、要求を
行ったPEのSharedビットのセットされているラインへ
の書き込みが発生し、update信号線がアサートされてい
る。
【0062】(2) CCU3は、書き込みの起こった
データとアドレスを、共有バス4に読み出すとともに、
他のすべてのタグ保持部を読み出し、同一ラインを他の
キャッシュメモリが共有していないかどうかを検索する
ための命令をする(ステップS702)。この検索は、
タグ保持部Read信号生成手段327に要求を行い、
この要求によりタグ保持部Read信号生成手段327
は検索のための信号を生成して各キャッシュメモリのタ
グ保持部(図示せず)に出力する。各タグ保持部からの
返答はタグ情報判別手段328が入力して、所望のデー
タを有するPE番号を書き込み更新要求制御ロジック3
23に出力する。
【0063】(3) 同一ラインを保持するキャッシュ
メモリが存在した場合、CCU3は、このキャッシュメ
モリの当該ラインを共有バス4上のデータで更新し(ス
テップS703)、更新されたキャッシュメモリの当該
ラインのDirty ビットをリセットする。
【0064】(4) CCU3は、要求を出したキャッ
シュメモリにアクノリッジをアサートして、共有バスサ
イクルを終了する。
【0065】図8はアトミックメモリアクセス制御ロジ
ック324が行う処理を示したフローチャートである。
この処理は、あるキャッシュメモリからアトミックメモ
リアクセス要求が発生した場合の処理である。
【0066】まず、アトミックメモリアクセス制御ロジ
ック324は、要求選択手段311にて選択された要求
のうちアトミックメモリアクセス要求をPE番号等を入
力することにより受け付ける(ステップS801)。従
って、要求を行ったPEのmlock 信号線がアサートされ
ている。CCU3は、mlock 信号線がネゲートされるま
で、他のキャッシュメモリからのバス要求をいっさい受
け付けない。
【0067】キャッシュメモリの各ラインは、有効ビッ
ト、Dirty ビット、Sharedビットの3ビットで、次の5
つの状態を表し、図10のような状態遷移図で制御され
る。
【0068】 インバリッド(Invalid) 有効ビットがリセットされており、キャッシュラインが
無効の状態である。リードミス、あるいはライトミスに
よって、キャッシュにデータがロードされると、他の状
態に遷移する。一度他の状態に遷移すると、FLASH 命令
によってキャッシュの内容がフラッシュされるまで、In
valid 状態には戻らない。
【0069】 クリーンエクスクルーシブ(Clean Ex
clusive ) 有効ビットがセットされており、他のキャッシュに同一
アドレスのコピーが存在しない状態である。共有メモリ
5と同一の最新の更新された値を保持している。すなわ
ち、Dirty ビットとSharedビットはリセットされてい
る。
【0070】 ダーティエクスクルーシブ(Dirty Ex
clusive ) 有効ビットはセットされており、他のキャッシュに同一
アドレスのコピーが存在しない状態である。共有メモリ
5とは異なる値を保持しており、リプレイス時には、共
有メモリ5への書き戻しが必要である。すなわち、Shar
edビットはリセットされており、Dirty ビットはセット
されている。
【0071】 クリーンシェアード(Clean Shared) 有効ビットはセットされており、他のキャッシュに同一
アドレスのコピーが存在するかも知れない。すべてのキ
ャッシュは、更新された最新の値を保持しているが、共
有メモリ5とは異なるかもしれない。リプレイス時に、
共有メモリ5へのデータ書き戻しは不要である。すなわ
ち、Sharedビットはセットされており、Dirty ビットは
リセットされている。
【0072】 ダーティシェアード(Dirty Shared) 有効ビットセットされており、他のキャッシュに同一ア
ドレスのコピーが存在するかも知れない。共有メモリ5
とは異なる最新の値を保持しており、リプレイス時に
は、共有メモリ5への書き戻しが必要である。すなわ
ち、Dirty ビット、Sharedビット共にセットされてい
る。
【0073】以上述べたように、本実施形態のマルチプ
ロセッサの制御装置によれば、CCU3が、共有バス4
を介するキャッシュメモリ2へのデータ転送をすべて制
御することによって、キャッシュメモリ間のハンドシェ
ークを不要にし、高速なバス操作が可能となる。また、
あるキャッシュメモリでキャッシュミスが発生し、所望
のデータが他のキャッシュメモリに存在する場合、他の
キャッシュメモリの状態に関わらず、そのキャッシュメ
モリからデータが転送されるため、共有メモリ5へのア
クセス頻度が減少する。
【0074】さらに、Dirty ビットがセットされたライ
ンがリプレイスされる時に、他のキャッシュメモリがそ
のコピーを保持している場合、そのコピーのDirty ビッ
トをセットするだけで、共有メモリ5への書き戻しを省
略できる。その結果、ボトルネックとなりやすい共有メ
モリ5へのアクセスを著しく減少することができる。
【0075】
【発明の効果】以上説明してきたように、本発明に係る
マルチプロセッサの制御方法及びその装置によれば、共
有バスを用いた転送で必要となるハンドシェークを用い
ずに、キャッシュメモリ間のデータ転送を高速に行うこ
とができる
【図面の簡単な説明】
【図1】本発明のマルチプロセッサの構成を示すブロッ
ク図である。
【図2】本発明のキャッシュメモリ2及びCCU3の構
成を示すブロック図である。
【図3】調停部310の構成を示すブロック図である。
【図4】コヒーレンス制御部320の構成を示すブロッ
ク図である。
【図5】リフィル要求処理を示すフローチャートであ
る。
【図6】リプレイス要求処理を示すフローチャートであ
る。
【図7】書き込み更新要求処理を示すフローチャートで
ある。
【図8】アトミックメモリアクセス命令処理を示すフロ
ーチャートである。
【図9】本発明の共有バス制御のタイミングを示す図で
ある。
【図10】本発明のキャッシュメモリの状態遷移を示す
図である。
【図11】従来のマルチプロセッサの構成を示すブロッ
ク図である。
【図12】従来のキャッシュメモリの状態遷移を示す図
である。
【図13】従来の共有バス制御のタイミングを示す図で
ある。
【符号の説明】
1,101 プロセシングエレメント 2,102 キャッシュメモリ 3 キャシュコヒーレンススユニット(CCU) 4,104 共有バス 5,105 共有メモリ(主メモリ) 21 atomic信号線 22 memreq信号線 23 r/w 信号線 24,29 ack 信号線 25 update信号線 26 mlock 信号線 27 refill信号線 28 replace 信号線 201 データ保持部 202 タグ保持部 203 キャッシュコントローラ 204 選択部 310 調停部 311 要求選択手段 312 アクノリッジ出力手段 320 コヒーレンス制御部 321 リフィル制御ロジック 322 リプレイス制御ロジック 323 書き込み更新制御ロジック 324 アトミックメモリアクセス制御ロジック 325 データ保持部Read信号生成手段 326 データ保持部Write信号生成手段 327 タグ保持部Read信号生成手段 328 タグ情報判別手段 329 調停回路310からの信号線

Claims (12)

    【特許請求の範囲】
  1. 【請求項1】 データの転送を行う共有バスと、 この共有バスに接続され、データを保持する共有メモリ
    と、 前記共有バスに接続され、データを保持するデータ保持
    部、及び、このデータ保持部に保持されたデータの情報
    を保持するタグ保持部を備えた複数のキャッシュメモリ
    と、 この複数のキャッシュメモリのうち一のキャッシュメモ
    リに接続され、必要なデータを前記キャッシュメモリに
    要求して所定の処理を行う複数のプロセッサ(PE)
    と、 を備えたマルチプロセッサを制御する方法において、 前記複数のキャッシュメモリのうちの所定のキャッシュ
    メモリで、他のキャッシュメモリと共有状態にあってか
    つ共有メモリに対して更新されているデータがリプレイ
    スされるとき、前記データを共有している前記他のキャ
    ッシュメモリのうちの1つのキャッシュメモリのタグ保
    持部に、共有メモリに対して更新されている旨の情報を
    保持させ、前記共有メモリへの前記更新されているデー
    タの書き戻しを行わないことを特徴とするマルチプロセ
    ッサの制御方法。
  2. 【請求項2】 データの転送を行う共有バスと、 この供給バスに接続され、データを保持する共有メモリ
    と、 前記共有バスに接続され、データを保持するデータ保持
    部、及び、このデータ保持部に保持されたデータの情報
    を保持するタグ保持部を備えた複数のキャッシュメモリ
    と、 この複数のキャッシュメモリにそれぞれ接続され、必要
    なデータを前記キャッシュメモリに要求することで所定
    の処理を行う複数のPEと、 を備えたマルチプロセッサを制御する装置において、 前記複数のキャッシュメモリに接続され、これらキャッ
    シュメモリのデータの入出力の制御を行うキャッシュコ
    ヒーレンス部を設けることを特徴とするマルチプロセッ
    サ制御装置。
  3. 【請求項3】 前記キャッシュコヒーレンス部は、 データを出力するキャッシュメモリに前記共有バスへの
    出力する旨の命令を行い、データを入力するキャッシュ
    メモリに前記共有バスからの入力する旨の命令を行うこ
    とでデータの入出力の制御を行うことを特徴とする請求
    項2記載のマルチプロセッサ制御装置。
  4. 【請求項4】 前記キャッシュコヒーレンス部は、 前記複数のキャッシュメモリのうち、所定のキャッシュ
    メモリがデータを要求する場合に、他のキャッシュメモ
    リに前記要求されたデータが存在すれば、前記要求され
    たデータの存在する前記他のキャッシュメモリのうちの
    1つのキャッシュメモリに、前記要求されたデータを前
    記共有バスに出力させ、前記所定のキャッシュメモリ
    に、前記共有バスから前記要求されたデータを入力させ
    ることを特徴とする請求項2記載のマルチプロセッサ装
    置。
  5. 【請求項5】 前記キャッシュコヒーレンス部は、 前記複数のキャッシュメモリのうちの所定のキャッシュ
    メモリで、キャッシュミスによって、前記共有メモリに
    対して更新されているデータがリプレイスされるとき、
    他のキャッシュメモリに前記リプレイスされるデータと
    同一のデータが存在すれば、前記共有メモリに対して更
    新されている旨の情報を、前記データを保持する前記他
    のキャッシュメモリのうちの1つのキャッシュメモリの
    前記タグ保持部に保持させ、前記共有メモリへの書き戻
    しを行わないことを特徴とする請求項2記載のマルチプ
    ロセッサ制御装置。
  6. 【請求項6】 データの転送を行う共有バスと、 この供給バスに接続され、データを保持する共有メモリ
    と、 前記共有バスに接続され、データを保持するデータ保持
    部、このデータ保持部に保持されたデータの情報を保持
    するタグ保持部、及びデータの要求があった場合であっ
    て、前記データ保持部に保持されないデータを要求され
    た場合には前記共有メモリに所定のデータの要求を行う
    制御部を備えた複数のキャッシュメモリと、 この複数のキャッシュメモリにそれぞれ接続され、必要
    なデータを前記キャッシュメモリに要求することで所定
    の処理を行う複数のPEと、 前記制御部からの要求を入力して、どの要求を受け付け
    るかを決定し、決定された要求及び要求を行った前記P
    Eの情報を出力する調停部と、 前記複数のキャッシュメモリのタグ記憶部に接続され、
    前記調停部にて決定された要求を入力して所定の処理を
    実行するコヒーレンス制御部と、 を備えることを特徴とするマルチプロセッサ制御装置。
  7. 【請求項7】 前記調停部は、 前記制御部から複数の要求を入力した場合には、最も優
    先順位の高いPEの要求を選択し、選択された前記PE
    は最も優先順位を低くするようにして次の要求の選択を
    行うようにすることで、どの要求を受け付けるかを決定
    する要求選択手段と、 この要求手段に接続され、前記決定された要求を行った
    PE番号を入力し、該当するPEに前記要求が選択され
    た旨の信号を出力するアクノリッジ出力手段と、 を備えることを特徴とする請求項6記載のマルチプロセ
    ッサ制御装置。
  8. 【請求項8】 前記要求選択手段は、シフトレジスタに
    てPE番号を保持することを特徴とする請求項7記載の
    マルチプロセッサ制御装置。
  9. 【請求項9】 前記タグ保持部は、 前記データ保持部に保持された所定のデータが他のキャ
    ッシュメモリにも保持されているか否かを示すシェアー
    ド(Shared)ビットを少なくとも有し、 前記コヒーレンス制御部は、 前記調停部にて決定されたリフィル要求を入力してリフ
    ィル要求に係るデータが他のキャッシュメモリに存在す
    るか否かの検索のための命令を行うリフィル制御ロジッ
    クと、 このリフィル制御ロジックの命令を入力し、前記複数の
    キャッシュメモリのタグ記憶部に前記データが存在する
    か否かの検索信号を出力するタグ保持部Read信号生
    成手段と、 このタグ保持部Read信号生成手段にて検索されたデ
    ータが存在するか否かを前記タグ保持部の出力信号から
    判別するタグ情報判別手段と、 このタグ情報判別部にて検索されたデータが存在すると
    判別されたPEに該当するデータを前記共有バスに出力
    する命令を行うデータ保持部Read信号生成手段と、 要求を行ったPEに共有バスよりデータを入力する命令
    を行うデータ保持部Write信号生成手段と、 を備え、 前記要求を行ったPE、及び、前記判別されたPEのキ
    ャッシュメモリのシェアードビットをセットすることを
    特徴とする請求項6記載のマルチプロセッサ制御装置。
  10. 【請求項10】 前記タグ保持部は、 前記データ保持部に保持された所定のデータが前記共有
    メモリと異なる虞のあるデータか否かを示すダーティ(D
    irty) ビットと、前記データ保持部に保持された所定の
    データが他のキャッシュメモリにも保持されているか否
    かを示すシェアードビットを少なくとも有し、 前記コヒーレンス制御部は、 前記調停部にて決定されたリプレイス要求を入力し、シ
    ェアードビットがセットされたリプレイスされるデータ
    が他のキャッシュメモリに存在するか否かの検索のため
    の命令を行うリプレイス制御ロジックと、 このリプレイス制御ロジックの命令を入力し、前記複数
    のキャッシュメモリのタグ記憶部に前記データが存在す
    るか否かの検索信号を出力するタグ保持部Read信号
    生成手段と、 このタグ保持部Read信号生成手段にて検索されたデ
    ータが存在するか否かを前記タグ保持部の出力信号から
    判別するタグ情報判別手段と、 このタグ情報判別手段にて検索されたデータが存在する
    と判別されたPEに該当するデータを前記共有バスに出
    力する命令を行うデータ保持部Read信号生成手段
    と、 要求を行ったPEに共有バスよりデータを入力する命令
    を行うデータ保持部Write信号生成手段と、 を備え、 前記要求を行ったPEのキャッシュメモリのダーティビ
    ット及びシェアードビットをセットし、並びに、前記判
    別されたPEのキャッシュメモリのシェアードビットを
    セットすることを特徴とする請求項6記載のマルチプロ
    セッサ制御装置。
  11. 【請求項11】 前記コヒーレンス制御部は、 前記データ保持部に保持された所定のデータが他のキャ
    ッシュメモリにも保持されているか否かを示すダーティ
    (Dirty) ビットを少なくとも有し、 前記調停部にて決定された書き込み更新要求を入力し
    て、書き込み更新要求に係るデータが他のキャッシュメ
    モリに存在するか否かの検索のための命令を行う書き込
    み更新制御ロジックと、 この書き込み更新制御ロジックの命令を入力し、前記複
    数のキャッシュメモリのタグ記憶部に前記データが存在
    するか否かの検索信号を出力するタグ保持部Read信
    号生成手段と、 このタグ保持部Read信号生成手段にて検索されたデ
    ータが存在するか否かを前記タグ保持部の出力信号から
    判別するタグ情報判別手段と、 要求を行ったPEに共有バスに該当するデータを出力す
    る命令を行うデータ保持部Read信号生成手段と、 前記タグ情報判別部にて検索されたデータが存在すると
    判別されたPEにデータを前記共有バスより入力する命
    令を行うデータ保持部Write信号生成手段と、 を備え、 前記判別されたPEのキャッシュメモリのダーティビッ
    トをセットすることを特徴とする請求項6記載のマルチ
    プロセッサ制御装置。
  12. 【請求項12】 前記コヒーレンス制御部は、 前記調停部にて決定されたアトミックメモリアクセス要
    求を入力し、この要求を行ったプロセッサがアトミック
    命令を実行している間は、要求を受け付けない命令を前
    記要求選択手段に行うアトミックメモリアクセス制御ロ
    ジックを備えることを特徴とする請求項6記載のマルチ
    プロセッサ制御装置。
JP7344013A 1995-12-28 1995-12-28 マルチプロセッサの制御方法及びその装置 Pending JPH09185547A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7344013A JPH09185547A (ja) 1995-12-28 1995-12-28 マルチプロセッサの制御方法及びその装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7344013A JPH09185547A (ja) 1995-12-28 1995-12-28 マルチプロセッサの制御方法及びその装置

Publications (1)

Publication Number Publication Date
JPH09185547A true JPH09185547A (ja) 1997-07-15

Family

ID=18365989

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7344013A Pending JPH09185547A (ja) 1995-12-28 1995-12-28 マルチプロセッサの制御方法及びその装置

Country Status (1)

Country Link
JP (1) JPH09185547A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100362607B1 (ko) * 2000-05-10 2002-11-29 정상화 I/o 버스상의 캐쉬 일관성 비단일 메모리 엑세스 모듈을 포함하는 멀티프로세서 시스템의 프로세싱 노드 장치 및 그 제어방법
JP2006221433A (ja) * 2005-02-10 2006-08-24 Sony Corp 共有メモリ装置
US8380933B2 (en) 2007-03-20 2013-02-19 Kabushiki Kaisha Toshiba Multiprocessor system including processor cores and a shared memory
KR102571197B1 (ko) * 2022-12-07 2023-08-30 성균관대학교산학협력단 클러스터 파일시스템의 캐시 일관성 유지방법

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100362607B1 (ko) * 2000-05-10 2002-11-29 정상화 I/o 버스상의 캐쉬 일관성 비단일 메모리 엑세스 모듈을 포함하는 멀티프로세서 시스템의 프로세싱 노드 장치 및 그 제어방법
JP2006221433A (ja) * 2005-02-10 2006-08-24 Sony Corp 共有メモリ装置
US8380933B2 (en) 2007-03-20 2013-02-19 Kabushiki Kaisha Toshiba Multiprocessor system including processor cores and a shared memory
KR102571197B1 (ko) * 2022-12-07 2023-08-30 성균관대학교산학협력단 클러스터 파일시스템의 캐시 일관성 유지방법

Similar Documents

Publication Publication Date Title
US6070231A (en) Method and apparatus for processing memory requests that require coherency transactions
US7120755B2 (en) Transfer of cache lines on-chip between processing cores in a multi-core system
US7032074B2 (en) Method and mechanism to use a cache to translate from a virtual bus to a physical bus
US5283886A (en) Multiprocessor cache system having three states for generating invalidating signals upon write accesses
US5185878A (en) Programmable cache memory as well as system incorporating same and method of operating programmable cache memory
KR100885277B1 (ko) 캐시에서의 라인들을 추론적으로 무효화하는 방법 및 시스템
US5623632A (en) System and method for improving multilevel cache performance in a multiprocessing system
US7146468B2 (en) Cache memory and method for handling effects of external snoops colliding with in-flight operations internally to the cache
US6571322B2 (en) Multiprocessor computer system with sectored cache line mechanism for cache intervention
US6272602B1 (en) Multiprocessing system employing pending tags to maintain cache coherence
CN101593161B (zh) 确保微处理器的快取存储器层级数据一致性的装置与方法
US20110173393A1 (en) Cache memory, memory system, and control method therefor
JPH08185359A (ja) メモリサブシステム
JPH0659976A (ja) 遅延プッシュをコピー・バック・データ・キャッシュに再ロードする方法
KR100515059B1 (ko) 멀티프로세서 시스템 및 멀티프로세서 시스템의 캐쉬일관성 유지 방법
US7024520B2 (en) System and method enabling efficient cache line reuse in a computer system
JPH11288386A (ja) コンピュータシステム
EP0325422A2 (en) Integrated cache unit
US6240487B1 (en) Integrated cache buffers
JP2009157612A (ja) キャッシュメモリシステム及びキャッシュメモリの制御方法
JPH09185547A (ja) マルチプロセッサの制御方法及びその装置
JPH03163640A (ja) マルチプロセッサシステムおよびそれに用いるキャッシュメモリ
JP2001109662A (ja) キャッシュ装置及び制御方法
US6553462B2 (en) Multiprocessor computer system with sectored cache line mechanism for load and store operations
US20020087791A1 (en) Multiprocessor computer system with sectored cache line system bus protocol mechanism