JPS60254346A - マルチプロセツサシステム - Google Patents
マルチプロセツサシステムInfo
- Publication number
- JPS60254346A JPS60254346A JP59111900A JP11190084A JPS60254346A JP S60254346 A JPS60254346 A JP S60254346A JP 59111900 A JP59111900 A JP 59111900A JP 11190084 A JP11190084 A JP 11190084A JP S60254346 A JPS60254346 A JP S60254346A
- Authority
- JP
- Japan
- Prior art keywords
- purge
- processor
- processors
- signal
- flip
- 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
- 238000010926 purge Methods 0.000 claims abstract description 109
- 239000000872 buffer Substances 0.000 claims abstract description 11
- 238000000034 method Methods 0.000 claims description 10
- 230000004044 response Effects 0.000 claims description 9
- 238000006243 chemical reaction Methods 0.000 abstract 2
- 230000007704 transition Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 3
- 239000003795 chemical substances by application Substances 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/10—Address translation
- G06F12/1027—Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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/0842—Multiuser, multiprocessor or multiprocessing cache systems for multiprocessing or multitasking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2212/00—Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
- G06F2212/68—Details of translation look-aside buffer [TLB]
- G06F2212/682—Multiprocessor TLB consistency
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)
- Memory System (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
[発明の技術分野]
この発明は、複数のプロセッサを備えた仮想記憶制御方
式めマルチプロセッサシステムに関する。
式めマルチプロセッサシステムに関する。
[発明の技術的前W4]
一般に、この種のマルチプロセッサシステムでは、論理
アドレスから実アドレス゛へのアドレス変換の高速化を
図るために、各プロセッサごとに、アドレス変換バッフ
ァ(以下、1”LBと称する)が設けられている。この
ようなシステムでは、各プロセッサのTLBの一致化を
図るために、全プロセッサのTL、Bのパージ(初期化
)を行なう必要が生じる場合がある。
アドレスから実アドレス゛へのアドレス変換の高速化を
図るために、各プロセッサごとに、アドレス変換バッフ
ァ(以下、1”LBと称する)が設けられている。この
ようなシステムでは、各プロセッサのTLBの一致化を
図るために、全プロセッサのTL、Bのパージ(初期化
)を行なう必要が生じる場合がある。
今、例えば第4図に示すように、プロセッサ1゜−〇〜
10−3から成るマルチプロセッサシステムにおいて、
プロセッサ10−0が全プロセッサのTLBバージ要求
を出すものとする。この場合、プロセッサ10−0は、
まずプロセッサ10−3にパージ要求1aを送出する。
10−3から成るマルチプロセッサシステムにおいて、
プロセッサ10−0が全プロセッサのTLBバージ要求
を出すものとする。この場合、プロセッサ10−0は、
まずプロセッサ10−3にパージ要求1aを送出する。
プロセッサ10−3は、プロセッサ10−0からのパー
ジ要求1aに応じてTLBパージを行なう6このとき、
プロセッサ1o−oは、プロセッサ10−3のTLBパ
ージと並行して自身のTLBパージを行なう。プロセッ
サ10−3は、TLBパージが終了すると、パージ終了
通知2aをプロセッサ10−0に返す。
ジ要求1aに応じてTLBパージを行なう6このとき、
プロセッサ1o−oは、プロセッサ10−3のTLBパ
ージと並行して自身のTLBパージを行なう。プロセッ
サ10−3は、TLBパージが終了すると、パージ終了
通知2aをプロセッサ10−0に返す。
プロセッサ10−0は、プロセッサ10−3からのパー
ジ終了通知2aを受取ると、次のプロセッサ10−2に
パージ要求1bを送出する。プロセッサ10−2は上記
パージ要求1bに応じてTLBパージし、パージ終了後
にパージ終了通知2bをプロセッサ10−0に返す。
ジ終了通知2aを受取ると、次のプロセッサ10−2に
パージ要求1bを送出する。プロセッサ10−2は上記
パージ要求1bに応じてTLBパージし、パージ終了後
にパージ終了通知2bをプロセッサ10−0に返す。
プロセッサ10−0は、プロセッサ10−2からのパー
ジ終了通知2bを受取ると、次のプロセッサ10−1に
パージ要求1Cを送出する。プロセッサ10−1は上記
パージ要求1Cに応じてTLBパージし、パージ終了後
にパージ終了通知2Cをプロセッサ10−0に返す。
ジ終了通知2bを受取ると、次のプロセッサ10−1に
パージ要求1Cを送出する。プロセッサ10−1は上記
パージ要求1Cに応じてTLBパージし、パージ終了後
にパージ終了通知2Cをプロセッサ10−0に返す。
プロセッサ10−0は、プロセッサ10−1からのパー
ジ終了通知2Cを受取ると、全プロセッサ10−0〜1
0−3のTLBパージが全て終了したことを判断する。
ジ終了通知2Cを受取ると、全プロセッサ10−0〜1
0−3のTLBパージが全て終了したことを判断する。
[背景技術の問題点]
このように、従来のマルチプロセッサシステムでは、各
プロセッサのTLBバージを順次処理的に行なっている
。このため、1台のプロセッサがパージ要求を受取って
から(同要求に応じてパージ処理を行ない)パージ終了
通知を出すまでに要する時間をTとすると、第4図のシ
ステムの例では、4台のプロセッサ10−0〜10−3
全ージを終了するのに、第5図に示すように3王も要し
てしまう問題があった。即ち、従来のマルチプロセッサ
システムでは、全プロセッサがTLBパージを行なうの
に要する時間が、プロセッサの数に比例して増加してし
まう欠点があった。
プロセッサのTLBバージを順次処理的に行なっている
。このため、1台のプロセッサがパージ要求を受取って
から(同要求に応じてパージ処理を行ない)パージ終了
通知を出すまでに要する時間をTとすると、第4図のシ
ステムの例では、4台のプロセッサ10−0〜10−3
全ージを終了するのに、第5図に示すように3王も要し
てしまう問題があった。即ち、従来のマルチプロセッサ
システムでは、全プロセッサがTLBパージを行なうの
に要する時間が、プロセッサの数に比例して増加してし
まう欠点があった。
[発明の目的]
この発明は上記事情に鑑みてなされたものでその目的は
、システム全体におけるアドレス変換バッファ(TLB
)のパージ処理に要する時間を短縮できるマルチプロセ
ッサシステムを提供することにある。
、システム全体におけるアドレス変換バッファ(TLB
)のパージ処理に要する時間を短縮できるマルチプロセ
ッサシステムを提供することにある。
[発明の概要]
この発明によれば、アドレス変換バッファ(TLB)を
有する複数のプロセッサを備えた仮想記憶制御方式のマ
ルチプロセッサシステムが提供されている。上記システ
ムにおいて、上記プロセッサには、他プロセツサに対し
、上記アドレス変換バッファのパージ処理を指示するパ
ージ要求を共通に送出する手段、およびフリップフロッ
プ群が設けられている。このパージ要求元プロセッサ内
のフリップフロップ群には、パージ要求に応じてパージ
処理を実行した他プロセツサから夫々返されるパージ終
了通知が、プロセッサ単位で記憶される。パージ要求元
プロセッサにおいては、上記フリップフロップ群の状態
に応じて全プロセッサのパージ終了が検出される。この
ようなシステムでは、パージ要求元プロセッサを含む全
プロセッサ−がパージ処理を並行して行なうことが可能
となり、しかも(パージ処理を順次処理的に行なわない
にも拘らず)フリップフロップ群の状態により仝ブ1]
セッ→ノのパージ処理終了が判定できる。
有する複数のプロセッサを備えた仮想記憶制御方式のマ
ルチプロセッサシステムが提供されている。上記システ
ムにおいて、上記プロセッサには、他プロセツサに対し
、上記アドレス変換バッファのパージ処理を指示するパ
ージ要求を共通に送出する手段、およびフリップフロッ
プ群が設けられている。このパージ要求元プロセッサ内
のフリップフロップ群には、パージ要求に応じてパージ
処理を実行した他プロセツサから夫々返されるパージ終
了通知が、プロセッサ単位で記憶される。パージ要求元
プロセッサにおいては、上記フリップフロップ群の状態
に応じて全プロセッサのパージ終了が検出される。この
ようなシステムでは、パージ要求元プロセッサを含む全
プロセッサ−がパージ処理を並行して行なうことが可能
となり、しかも(パージ処理を順次処理的に行なわない
にも拘らず)フリップフロップ群の状態により仝ブ1]
セッ→ノのパージ処理終了が判定できる。
[発明の実施例]
第1図はこの発明の一実施例に係る仮想記憶制御方式の
マルチプロセッサシステムのシステム構成を示す。同図
において、20−0〜20−3は図示せぬTLB (ア
ドレス変換バッファ)を有するプロセッサ、21はプロ
セッサ20−0〜20−3などを接続するシステムバス
である。22はパージ要求信号aが往来する信号線、2
3はパージ終了通知信号すが往来する信号線である。信
号線22. 23には、プロセッサ20−0〜20−3
が接続されている。なお、信号線22。
マルチプロセッサシステムのシステム構成を示す。同図
において、20−0〜20−3は図示せぬTLB (ア
ドレス変換バッファ)を有するプロセッサ、21はプロ
セッサ20−0〜20−3などを接続するシステムバス
である。22はパージ要求信号aが往来する信号線、2
3はパージ終了通知信号すが往来する信号線である。信
号線22. 23には、プロセッサ20−0〜20−3
が接続されている。なお、信号線22。
23はシステムバス21の一部であるが、第1図におい
ては、説明の都合上システムバス21とは別個に設けら
れている。
ては、説明の都合上システムバス21とは別個に設けら
れている。
第2図は第1図のプロセッサ20−i (プロセッサ2
0−0−20−3をプロセッサ20−1で代表させであ
る)のこの発明に直接関係する部分の構成を示す。同図
において、31はパージ要求信@aを信号線22に送出
するバスドライバ(D)、32は信号線22上のパージ
要求信号aを取込むバスレシーバ(R)である。33は
パージ終了通知信号すを信号@23に送出するバスドラ
イバ(D)、34は信号線23上のパージ終了通知信号
すを取込むバスレシーバ(R)である。35はアドレス
(含むプロセッサ番号)をシステムバス21(のアドレ
スバス)に送出するバスドライバ(D)、36はシステ
ムバス21(のアドレスバス)上のアドレス(含むプロ
セッサ番号)を取込むバスレシーバ(R)である。
0−0−20−3をプロセッサ20−1で代表させであ
る)のこの発明に直接関係する部分の構成を示す。同図
において、31はパージ要求信@aを信号線22に送出
するバスドライバ(D)、32は信号線22上のパージ
要求信号aを取込むバスレシーバ(R)である。33は
パージ終了通知信号すを信号@23に送出するバスドラ
イバ(D)、34は信号線23上のパージ終了通知信号
すを取込むバスレシーバ(R)である。35はアドレス
(含むプロセッサ番号)をシステムバス21(のアドレ
スバス)に送出するバスドライバ(D)、36はシステ
ムバス21(のアドレスバス)上のアドレス(含むプロ
セッサ番号)を取込むバスレシーバ(R)である。
31はパスレシーバ36により取込まれたアドレスの所
定フィールド(プロセッサ番号)をデコードするデコー
ダ(DC’DR) 、38−0〜38−3はそのデコー
ド信号線である。信号線38−〇〜38−3は、プロセ
ッサ20−0〜20−3のプロセッサ番号に対応する。
定フィールド(プロセッサ番号)をデコードするデコー
ダ(DC’DR) 、38−0〜38−3はそのデコー
ド信号線である。信号線38−〇〜38−3は、プロセ
ッサ20−0〜20−3のプロセッサ番号に対応する。
39−0〜39−3は2人力のナントゲート、40−0
〜40−3は例えばR−8型のフリップフロップ(F/
F)である。ナントゲート39−i(i= 0〜3)に
は、パスレシーバ34により取込まれたパージ終了通知
信号b1および信号線38−1上の信号が導かれる。
〜40−3は例えばR−8型のフリップフロップ(F/
F)である。ナントゲート39−i(i= 0〜3)に
は、パスレシーバ34により取込まれたパージ終了通知
信号b1および信号線38−1上の信号が導かれる。
また、フリップ70ツブ40−i (i= 0〜3)の
セット端子Sにはナントゲート39−iからの出力信号
が導かれ、リセット端子Rにはノリツブ70ツブ40−
1をリセットするための信号41が導かれる。42−0
〜42−3は3人力のオアゲー1〜.43はオアゲート
42−0〜42−3からの出力信号44−o〜44−3
の論理積をとり、信号45を出力するアンドゲートであ
る。46−θ〜46−3はフリップフロップ40−0〜
40−3からのQ出力信号、47−0〜47−3はパー
ジ要求信号aを出したプロセッサがプロセッサ20−0
〜20−3であることを示す信号、48−0〜48−3
はプロセッサ20−O〜20−3が存在しないことを示
す信号である。信号4G−i 。
セット端子Sにはナントゲート39−iからの出力信号
が導かれ、リセット端子Rにはノリツブ70ツブ40−
1をリセットするための信号41が導かれる。42−0
〜42−3は3人力のオアゲー1〜.43はオアゲート
42−0〜42−3からの出力信号44−o〜44−3
の論理積をとり、信号45を出力するアンドゲートであ
る。46−θ〜46−3はフリップフロップ40−0〜
40−3からのQ出力信号、47−0〜47−3はパー
ジ要求信号aを出したプロセッサがプロセッサ20−0
〜20−3であることを示す信号、48−0〜48−3
はプロセッサ20−O〜20−3が存在しないことを示
す信号である。信号4G−i 。
47−i、 48−i (i掌0〜3)は、オアゲート
42−1に導かれる。
42−1に導かれる。
次に、この発明の一実施例の動作を、プロセッサ20−
0が、残りのプロセッサ20−1〜20−3にTLBパ
ージ要求を出す場合を例にとり、第3図のタイミングチ
ャートを参照して説明する。まず、プロセッサ20−0
は、同プロセッサ20−0内のバスドライバ31を介し
、パージ要求信号aを信号線22に送出する。信号線2
2上のパージ要求信号aは、プロセッサ20−1〜20
−3にほぼ同時に導かれ、同プロセッサ20−1〜20
−3内の各パスレシーバ32により内部に取込まれる。
0が、残りのプロセッサ20−1〜20−3にTLBパ
ージ要求を出す場合を例にとり、第3図のタイミングチ
ャートを参照して説明する。まず、プロセッサ20−0
は、同プロセッサ20−0内のバスドライバ31を介し
、パージ要求信号aを信号線22に送出する。信号線2
2上のパージ要求信号aは、プロセッサ20−1〜20
−3にほぼ同時に導かれ、同プロセッサ20−1〜20
−3内の各パスレシーバ32により内部に取込まれる。
プロセッサ20−1〜20−3は、内部に取込まれたパ
ージ要求信号aに応じ、自身が有するTLB (図示せ
ず)に対するパージ処理を、第3図に示すように並行し
て実行する。また、TLBパージ要求元であるプロセッ
サ20−0のTLBパージも、上記パージ要求信号aの
送出後、プロセッサ20−1〜20−3のTLBパージ
と並行して行なわれる(第3図参照)。
ージ要求信号aに応じ、自身が有するTLB (図示せ
ず)に対するパージ処理を、第3図に示すように並行し
て実行する。また、TLBパージ要求元であるプロセッ
サ20−0のTLBパージも、上記パージ要求信号aの
送出後、プロセッサ20−1〜20−3のTLBパージ
と並行して行なわれる(第3図参照)。
プロセッサ20−1〜20−3はTLBパージ処理を終
了すると、もしシステムバス21が使用可能であれば、
自プロセッサ内のバスドライバ33を介し、パージ終了
通知信号すを信号線23に送出する。このとき、プロセ
ッサ20−1〜20−3は、自身のプロセッサ番号をバ
スドライバ35経由でシステムバス21(内のアドレス
バス〉に送出する。システムバス21上のプロセッサ番
号は、TLBパージ要求元であるプロセッサ20−0の
デコーダ37に、同プロセッサ20−0のパスレシーバ
36を介して導かれる。デコーダ37は、バスレシーバ
36経出で導かれたプロセッサ番号をデコードする。今
、デコーダ37に導かれたプロセッサ番号が、プロセッ
サ20−1からのものであるとすると、デコーダ37は
信号線38−1に論理” 1 ”の(アクティブな)信
号を出力する。この信号はナントゲート39−1の一方
の入力端子に導かれる。ナントゲート39−1の使方の
入力端子には、上記プロセッサ番号と共にブロセッ+j
20−1から送出されたパージ終了通知信号すが、信号
線23、パスレシーバ34を介して導かれる。これによ
り、プロセッサ20−0内のナントゲート39−1のナ
ンド条件が成立し、ナントゲート39−1からの出力信
号は論理111 jlから論理○パに遷移する。これは
、プロセッサ20−1からのパージ終了通知信号すが、
ナントゲート39−1により検出されたことを示す。
了すると、もしシステムバス21が使用可能であれば、
自プロセッサ内のバスドライバ33を介し、パージ終了
通知信号すを信号線23に送出する。このとき、プロセ
ッサ20−1〜20−3は、自身のプロセッサ番号をバ
スドライバ35経由でシステムバス21(内のアドレス
バス〉に送出する。システムバス21上のプロセッサ番
号は、TLBパージ要求元であるプロセッサ20−0の
デコーダ37に、同プロセッサ20−0のパスレシーバ
36を介して導かれる。デコーダ37は、バスレシーバ
36経出で導かれたプロセッサ番号をデコードする。今
、デコーダ37に導かれたプロセッサ番号が、プロセッ
サ20−1からのものであるとすると、デコーダ37は
信号線38−1に論理” 1 ”の(アクティブな)信
号を出力する。この信号はナントゲート39−1の一方
の入力端子に導かれる。ナントゲート39−1の使方の
入力端子には、上記プロセッサ番号と共にブロセッ+j
20−1から送出されたパージ終了通知信号すが、信号
線23、パスレシーバ34を介して導かれる。これによ
り、プロセッサ20−0内のナントゲート39−1のナ
ンド条件が成立し、ナントゲート39−1からの出力信
号は論理111 jlから論理○パに遷移する。これは
、プロセッサ20−1からのパージ終了通知信号すが、
ナントゲート39−1により検出されたことを示す。
ナントゲート39−1からの出力信号は、フリップフロ
ップ40−1のセット端子Sに導かれる。しかして、フ
リップフロップ40−1は、ナントゲート39−1から
の出力信号の論理” 1 ”から論理110 I+への
状態遷移に応じてセットする。これは、プロセッサ20
−1からのパージ終了通知が、フリップフロップ40−
1に記憶されたことを示すものである。以上の動作は、
プロセッサ20−2.20−3からパージ終了通知信号
b(および対応するプロセッサ番号)が送出された場合
でも同様である。即ち、プロセッサ20−2から、パー
ジ終了通知信号すおよび(プロセッサ20−2を示す)
プロセッサ番号が送出された場合に、(TLBパージ要
求プロセッサ20−0内の)フリップフロップ40−2
がセットする。同様に、プロセッサ20−3から、パー
ジ終了通知信号すおよび〈プロセッサ20−3を示す)
プロセッサ番号が送出された場合には、(TLBパージ
要求プロセッサ20−0内の)フリップフロップ40−
3がセットする。
ップ40−1のセット端子Sに導かれる。しかして、フ
リップフロップ40−1は、ナントゲート39−1から
の出力信号の論理” 1 ”から論理110 I+への
状態遷移に応じてセットする。これは、プロセッサ20
−1からのパージ終了通知が、フリップフロップ40−
1に記憶されたことを示すものである。以上の動作は、
プロセッサ20−2.20−3からパージ終了通知信号
b(および対応するプロセッサ番号)が送出された場合
でも同様である。即ち、プロセッサ20−2から、パー
ジ終了通知信号すおよび(プロセッサ20−2を示す)
プロセッサ番号が送出された場合に、(TLBパージ要
求プロセッサ20−0内の)フリップフロップ40−2
がセットする。同様に、プロセッサ20−3から、パー
ジ終了通知信号すおよび〈プロセッサ20−3を示す)
プロセッサ番号が送出された場合には、(TLBパージ
要求プロセッサ20−0内の)フリップフロップ40−
3がセットする。
フリップフロップ40−1〜40−3がセットすると、
そのQ出力信号46−1〜46−3は、いずれも論理I
I O11から論理111 ITに遷移する。フリップ
フロップ40−1〜40−3からの論理111 ITの
Q出力信号46−1〜4G−3は、対応するオアゲート
42−1〜42−3に導かれる。
そのQ出力信号46−1〜46−3は、いずれも論理I
I O11から論理111 ITに遷移する。フリップ
フロップ40−1〜40−3からの論理111 ITの
Q出力信号46−1〜4G−3は、対応するオアゲート
42−1〜42−3に導かれる。
この結果、オアゲート42−1〜42−3はONL、そ
の出力信号44−1〜44−3は論理゛0°゛がら論理
“1“に遷移する。
の出力信号44−1〜44−3は論理゛0°゛がら論理
“1“に遷移する。
これに対し、プロセッサ20−0に対応するフリップフ
ロップ40−0は、プロセッサ20−0がTLBバージ
要求プロセッサとなっているため(パージ終了通知信号
すおよびプロセッサ番号を送出しないので)、リセット
状態のままである、したがって、オアゲート42−0に
導かれるフリップフロップ40−0からのQ出力信号4
6−0は、論理゛0°“のままである。このオアゲー1
−42−0には、上記Q出力信号46−Oの他に、信号
47−0.48−0も導かれる。プロセッサ20−0に
おいては、同プロセッザ20−0がTLBパージ要求プ
ロセッサである場合、信号47−0が論理“1″レベル
に設定される。したがって、(プロセッサ20−0内の
)オアゲート42−0は、フリップフロップ40−0の
リセット状態にも拘らず、信号47−0によってON状
態となり、その出力信号44−0は論理“1゛′となる
。
ロップ40−0は、プロセッサ20−0がTLBバージ
要求プロセッサとなっているため(パージ終了通知信号
すおよびプロセッサ番号を送出しないので)、リセット
状態のままである、したがって、オアゲート42−0に
導かれるフリップフロップ40−0からのQ出力信号4
6−0は、論理゛0°“のままである。このオアゲー1
−42−0には、上記Q出力信号46−Oの他に、信号
47−0.48−0も導かれる。プロセッサ20−0に
おいては、同プロセッザ20−0がTLBパージ要求プ
ロセッサである場合、信号47−0が論理“1″レベル
に設定される。したがって、(プロセッサ20−0内の
)オアゲート42−0は、フリップフロップ40−0の
リセット状態にも拘らず、信号47−0によってON状
態となり、その出力信号44−0は論理“1゛′となる
。
オアゲー1−42−0〜42−3からの出力信号44−
θ〜44−3は、アンドゲート43に導かれる。アント
ゲ−1−43は、上記信号44−0〜44−3がいずれ
も論理111 ITとなると、ON状態となる。この結
果、アンドゲート43から出力される信号45は、論理
11011から論理II I 11に遷移する。TLB
パージ要求プロセッサ20−0は、上記信号45の論理
1101!から論理11111への状態遷移によって、
全てのプロセッサ20−0〜20−3のTLBパージ処
理が終了したことを認識し、次の動作に移る。
θ〜44−3は、アンドゲート43に導かれる。アント
ゲ−1−43は、上記信号44−0〜44−3がいずれ
も論理111 ITとなると、ON状態となる。この結
果、アンドゲート43から出力される信号45は、論理
11011から論理II I 11に遷移する。TLB
パージ要求プロセッサ20−0は、上記信号45の論理
1101!から論理11111への状態遷移によって、
全てのプロセッサ20−0〜20−3のTLBパージ処
理が終了したことを認識し、次の動作に移る。
ところで、上記した説明は、プロセッサ20−0〜22
−3がいずれも存在している場合である。これに対し、
例えばプロセッサ20−3が存在しない場合の動作は、
次のようになる。プロセッサ20−3がシステムに存在
しない場合、システムを構成するプロセッサ20−0〜
20−2では、信号48−3が論理“1″に設定される
。そして、この論理ti 1 t+の信号48−3が(
プロセッサ20〜3からのパージ終了通知のダミー信号
として)オアゲート42−3に導かれる。したがって、
プロセッサ20−0がTLBバージ要求プロセッサであ
り、プロセッサ20−3が存在しない場合には、オアゲ
ーh42−3からの出力信号44−3は(プロセッサ2
0−3が存在しないことを示す)信号48−3によって
アクティブとなる。なお、オアゲート42−〇からの出
力信号44−0は、前記したように(プロセッサ20−
0がTLBパージ要求プロセッサであることを示す)信
号47−0によってアクティブとなる。
−3がいずれも存在している場合である。これに対し、
例えばプロセッサ20−3が存在しない場合の動作は、
次のようになる。プロセッサ20−3がシステムに存在
しない場合、システムを構成するプロセッサ20−0〜
20−2では、信号48−3が論理“1″に設定される
。そして、この論理ti 1 t+の信号48−3が(
プロセッサ20〜3からのパージ終了通知のダミー信号
として)オアゲート42−3に導かれる。したがって、
プロセッサ20−0がTLBバージ要求プロセッサであ
り、プロセッサ20−3が存在しない場合には、オアゲ
ーh42−3からの出力信号44−3は(プロセッサ2
0−3が存在しないことを示す)信号48−3によって
アクティブとなる。なお、オアゲート42−〇からの出
力信号44−0は、前記したように(プロセッサ20−
0がTLBパージ要求プロセッサであることを示す)信
号47−0によってアクティブとなる。
同じく、オアゲート42−1.42−2からの出力信号
44−1.44−2は(プロセッサ20−1.20−2
からのパージ終了通知があったことを示す)ソリツブフ
ロップ40−1.40−2からのQ出力信号46−1.
46−2によってアクティブとなる。したがって、プロ
セッサ20−3が存在しない場合でも、全プロセッサの
TLBパージ処理の終了を検出することができる。
44−1.44−2は(プロセッサ20−1.20−2
からのパージ終了通知があったことを示す)ソリツブフ
ロップ40−1.40−2からのQ出力信号46−1.
46−2によってアクティブとなる。したがって、プロ
セッサ20−3が存在しない場合でも、全プロセッサの
TLBパージ処理の終了を検出することができる。
なお、前記実施例では、プロセッサ数が最大4台である
場合について説明したが、この発明は任意のプロセッサ
数のシステムに応用できる。また、前記実施例では、パ
ージ要求信号a転送用の信号線22、パージ終了通知信
号す転送用の信号線23が設けられているものとしたが
、これら信号線22゜23は必ずしも必要ではない。例
えば、パージ要求信号aに相当するパージ要求コード、
パージ終了通知信号すに相当するパージ終了コードを用
意し、これらのコードデータをシステムバス21内のア
ドレスバスの所定フィールド経由で転送するようにして
もよい。但し、この場合、各プロセッサは、上記パージ
要求コード、パージ終了通知コードをデコードするデコ
ード手段を必要とする。
場合について説明したが、この発明は任意のプロセッサ
数のシステムに応用できる。また、前記実施例では、パ
ージ要求信号a転送用の信号線22、パージ終了通知信
号す転送用の信号線23が設けられているものとしたが
、これら信号線22゜23は必ずしも必要ではない。例
えば、パージ要求信号aに相当するパージ要求コード、
パージ終了通知信号すに相当するパージ終了コードを用
意し、これらのコードデータをシステムバス21内のア
ドレスバスの所定フィールド経由で転送するようにして
もよい。但し、この場合、各プロセッサは、上記パージ
要求コード、パージ終了通知コードをデコードするデコ
ード手段を必要とする。
、[発明の効果]
以上詳述したようにこの発明によれば、パージ要求元プ
ロセッサを含む全プロセッサが、アドレス変換バッファ
(TLB)のパージ処理を(システムを構成するプロセ
ッサの数に無関係に)並行して行なうことができるので
、システム全体における同パージ処理に要する時間を著
しく短縮できる。しかも、この発明では、(パージ処理
を順次処理的に行なわないにも拘らず)フリップ70ツ
ブB¥の状態により、全プロセッサのパージ処理終了を
正しく判定することができる。
ロセッサを含む全プロセッサが、アドレス変換バッファ
(TLB)のパージ処理を(システムを構成するプロセ
ッサの数に無関係に)並行して行なうことができるので
、システム全体における同パージ処理に要する時間を著
しく短縮できる。しかも、この発明では、(パージ処理
を順次処理的に行なわないにも拘らず)フリップ70ツ
ブB¥の状態により、全プロセッサのパージ処理終了を
正しく判定することができる。
第1図はこの発明の一実施例に係るマルチプロセッサシ
ステムのシステム構成図、第2図は第1図に示すプロセ
ッサのこの発明に直接関係する部分の回路構成図、第3
図は第1図に示す各プロセッサのTLBパージ処理のタ
イミングチャート、第4図は従来のマルチプロセッサシ
ステムのシステム構成図、第5図は第4図に示す各プロ
セッサのTL8パージ処理タイミングチャートである。 20−0〜20−3.20−i・・・プロセッサ、37
・・・デコーダ、40−〇〜40−3・・・フリップ7
0ツブ、a・・・パージ要求信号、b・・・パージ終了
通知信号。 出願人代理人 弁理士 鈴江武彦
ステムのシステム構成図、第2図は第1図に示すプロセ
ッサのこの発明に直接関係する部分の回路構成図、第3
図は第1図に示す各プロセッサのTLBパージ処理のタ
イミングチャート、第4図は従来のマルチプロセッサシ
ステムのシステム構成図、第5図は第4図に示す各プロ
セッサのTL8パージ処理タイミングチャートである。 20−0〜20−3.20−i・・・プロセッサ、37
・・・デコーダ、40−〇〜40−3・・・フリップ7
0ツブ、a・・・パージ要求信号、b・・・パージ終了
通知信号。 出願人代理人 弁理士 鈴江武彦
Claims (1)
- 【特許請求の範囲】 アドレス変換バッファを有する複数のプロセッサを備え
た仮想記憶制御方式のマルチプロセッサシステムにおい
て、 上記プロセッサに、 他プロセツサに対し、上記アドレス変換バッファのパー
ジ処理を指示するパージ要求を共通に送出する手段と、
この手段により送出された上記パージ要求に応じて上記
パージ処理を実行した上記他プロセツサから夫々返され
るパージ終了通知をプロセッサ単位で記憶するフリップ
フロップ群と、このフリップフロップ群の状態に応じて
全プロセッサのパージ終了を検出する手段 とを設け、任意のプロセッサからのパージ要求に応じ、
全プロセッサが上記アドレス変換バッファのパージ処理
を並行して行なうように構成されていることを特徴とす
るマルチプロセッサシステム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP59111900A JPS60254346A (ja) | 1984-05-31 | 1984-05-31 | マルチプロセツサシステム |
US06/739,156 US4733348A (en) | 1984-05-31 | 1985-05-30 | Virtual-memory multiprocessor system for parallel purge operation |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP59111900A JPS60254346A (ja) | 1984-05-31 | 1984-05-31 | マルチプロセツサシステム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPS60254346A true JPS60254346A (ja) | 1985-12-16 |
JPH0135374B2 JPH0135374B2 (ja) | 1989-07-25 |
Family
ID=14572942
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP59111900A Granted JPS60254346A (ja) | 1984-05-31 | 1984-05-31 | マルチプロセツサシステム |
Country Status (2)
Country | Link |
---|---|
US (1) | US4733348A (ja) |
JP (1) | JPS60254346A (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5928353A (en) * | 1994-01-28 | 1999-07-27 | Nec Corporation | Clear processing of a translation lookaside buffer with less waiting time |
US6668314B1 (en) * | 1997-06-24 | 2003-12-23 | Hewlett-Packard Development Company, L.P. | Virtual memory translation control by TLB purge monitoring |
JP2004326798A (ja) * | 2003-04-28 | 2004-11-18 | Internatl Business Mach Corp <Ibm> | マルチプロセッサ・データ処理システム |
Families Citing this family (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5045996A (en) * | 1986-11-12 | 1991-09-03 | Xerox Corporation | Multiprocessor cache memory housekeeping |
AU601328B2 (en) * | 1988-05-26 | 1990-09-06 | Digital Equipment Corporation | Temporary state preservation for a distributed file service |
US5317705A (en) * | 1990-10-24 | 1994-05-31 | International Business Machines Corporation | Apparatus and method for TLB purge reduction in a multi-level machine system |
US5497480A (en) * | 1990-12-31 | 1996-03-05 | Sun Microsystems, Inc. | Broadcast demap for deallocating memory pages in a multiprocessor system |
US5428757A (en) * | 1992-04-29 | 1995-06-27 | International Business Machines Corporation | Method for reducing translation look aside buffer purges in a multitasking system |
US5437017A (en) * | 1992-10-09 | 1995-07-25 | International Business Machines Corporation | Method and system for maintaining translation lookaside buffer coherency in a multiprocessor data processing system |
JPH0784883A (ja) * | 1993-09-17 | 1995-03-31 | Hitachi Ltd | 仮想計算機システムのアドレス変換バッファパージ方法 |
US5956754A (en) * | 1997-03-03 | 1999-09-21 | Data General Corporation | Dynamic shared user-mode mapping of shared memory |
US6286092B1 (en) * | 1999-05-12 | 2001-09-04 | Ati International Srl | Paged based memory address translation table update method and apparatus |
US6728800B1 (en) * | 2000-06-28 | 2004-04-27 | Intel Corporation | Efficient performance based scheduling mechanism for handling multiple TLB operations |
US7617378B2 (en) * | 2003-04-28 | 2009-11-10 | International Business Machines Corporation | Multiprocessor system with retry-less TLBI protocol |
US7543291B2 (en) * | 2003-08-01 | 2009-06-02 | Hewlett-Packard Development Company, L.P. | Processor purging system and method |
US7735088B1 (en) | 2003-08-18 | 2010-06-08 | Cray Inc. | Scheduling synchronization of programs running as streams on multiple processors |
US7503048B1 (en) | 2003-08-18 | 2009-03-10 | Cray Incorporated | Scheduling synchronization of programs running as streams on multiple processors |
US7421565B1 (en) * | 2003-08-18 | 2008-09-02 | Cray Inc. | Method and apparatus for indirectly addressed vector load-add -store across multi-processors |
US20050108481A1 (en) * | 2003-11-17 | 2005-05-19 | Iyengar Arun K. | System and method for achieving strong data consistency |
US7281116B2 (en) * | 2004-07-30 | 2007-10-09 | Hewlett-Packard Development Company, L.P. | Multiprocessor system having plural memory locations for respectively storing TLB-shootdown data for plural processor nodes |
US7478769B1 (en) | 2005-03-09 | 2009-01-20 | Cray Inc. | Method and apparatus for cooling electronic components |
US7631147B2 (en) * | 2006-12-06 | 2009-12-08 | Microsoft Corporation | Efficient flushing of translation lookaside buffers in a multiprocessor environment |
US8112174B2 (en) * | 2008-02-25 | 2012-02-07 | International Business Machines Corporation | Processor, method and computer program product for fast selective invalidation of translation lookaside buffer |
US8364899B2 (en) * | 2010-06-24 | 2013-01-29 | International Business Machines Corporation | User-controlled targeted cache purge |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5324262A (en) * | 1976-08-19 | 1978-03-06 | Hitachi Ltd | Objective lens for electronic microscope |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3560934A (en) * | 1969-06-10 | 1971-02-02 | Ibm | Arrangement for effecting vector mode operation in multiprocessing systems |
US4394731A (en) * | 1980-11-10 | 1983-07-19 | International Business Machines Corporation | Cache storage line shareability control for a multiprocessor system |
US4442487A (en) * | 1981-12-31 | 1984-04-10 | International Business Machines Corporation | Three level memory hierarchy using write and share flags |
-
1984
- 1984-05-31 JP JP59111900A patent/JPS60254346A/ja active Granted
-
1985
- 1985-05-30 US US06/739,156 patent/US4733348A/en not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS5324262A (en) * | 1976-08-19 | 1978-03-06 | Hitachi Ltd | Objective lens for electronic microscope |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5928353A (en) * | 1994-01-28 | 1999-07-27 | Nec Corporation | Clear processing of a translation lookaside buffer with less waiting time |
US6668314B1 (en) * | 1997-06-24 | 2003-12-23 | Hewlett-Packard Development Company, L.P. | Virtual memory translation control by TLB purge monitoring |
US7117338B2 (en) * | 1997-06-24 | 2006-10-03 | Hewlett-Packard Development Company, L.P. | Virtual memory address translation control by TLB purge monitoring |
JP2004326798A (ja) * | 2003-04-28 | 2004-11-18 | Internatl Business Mach Corp <Ibm> | マルチプロセッサ・データ処理システム |
Also Published As
Publication number | Publication date |
---|---|
JPH0135374B2 (ja) | 1989-07-25 |
US4733348A (en) | 1988-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS60254346A (ja) | マルチプロセツサシステム | |
US4309755A (en) | Computer input/output arrangement for enabling a simultaneous read/write data transfer | |
US4412286A (en) | Tightly coupled multiple instruction multiple data computer system | |
JPH01147647A (ja) | データ処理装置 | |
US4261033A (en) | Communications processor employing line-dedicated memory tables for supervising data transfers | |
EP0098494B1 (en) | Asynchronous bus multiprocessor system | |
US3287705A (en) | Computer system | |
JPS6242306B2 (ja) | ||
US4225959A (en) | Tri-state bussing system | |
JPS6246025B2 (ja) | ||
JP2000181891A (ja) | 共有メモリアクセス順序保証方式 | |
JP2710587B2 (ja) | 情報処理システム | |
JPH0715670B2 (ja) | デ−タ処理装置 | |
JPH05324529A (ja) | データ転送装置及びデータ転送方法 | |
KR0154470B1 (ko) | 보조제어장치와 외부장치간 정합회로 | |
JPH01147651A (ja) | マルチプロセッサシステム | |
SU1635188A1 (ru) | Устройство дл сопр жени ЭВМ с периферийной системой | |
JPS59136862A (ja) | マルチコンピユ−タシステムにおける割込み制御装置 | |
JPH04273358A (ja) | Dmac内蔵型ワンチップマイクロコンピュータ | |
JP2734992B2 (ja) | 情報処理装置 | |
JPS5965354A (ja) | 処理要求受付の優先順位制御方式 | |
JPS5981750A (ja) | マルチプロモツサシステム | |
JPS60186939A (ja) | タイマ機構 | |
JPS61213958A (ja) | Cpu間デ−タ伝送方式 | |
JPH0352050A (ja) | バスアドレス設定方式 |