JP2806778B2 - 変換索引バッファクリア命令処理方式 - Google Patents

変換索引バッファクリア命令処理方式

Info

Publication number
JP2806778B2
JP2806778B2 JP6008061A JP806194A JP2806778B2 JP 2806778 B2 JP2806778 B2 JP 2806778B2 JP 6008061 A JP6008061 A JP 6008061A JP 806194 A JP806194 A JP 806194A JP 2806778 B2 JP2806778 B2 JP 2806778B2
Authority
JP
Japan
Prior art keywords
tlb
clear
request
processor
processors
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.)
Expired - Fee Related
Application number
JP6008061A
Other languages
English (en)
Other versions
JPH07219915A (ja
Inventor
善久 山田
Original Assignee
甲府日本電気株式会社
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 甲府日本電気株式会社 filed Critical 甲府日本電気株式会社
Priority to JP6008061A priority Critical patent/JP2806778B2/ja
Priority to FR9500892A priority patent/FR2715746B1/fr
Publication of JPH07219915A publication Critical patent/JPH07219915A/ja
Priority to US08/999,621 priority patent/US5928353A/en
Application granted granted Critical
Publication of JP2806778B2 publication Critical patent/JP2806778B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/3004Arrangements for executing specific machine instructions to perform operations on memory
    • G06F9/30047Prefetch instructions; cache control instructions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、変換索引バッファクリ
ア命令処理方式に関し、特に各プロセッサ内のアドレス
変換情報を保持するバッファメモリであるTLBのクリ
アを行う変換索引バッファクリア命令処理方式に関す
る。
【0002】
【従来の技術】従来の変換索引バッファクリア命令処理
方式は、マルチプロセッサシステムにおける各プロセッ
サ内のアドレス変換情報を保持するTLBのクリア命令
の処理に際しては、すべてのプロセッサ内のTLB内容
の一貫性を保つために、TLBクリア要求を出したプロ
セッサが、他のすべてのプロセッサからのTLBクリア
処理終了の通知を受信するまで待機していた。
【0003】また、従来の変換索引バッファクリア命令
処理方式は、複数のプロセッサが、クリア要求を行った
場合には、順番にそれらのクリアを行うために、順番が
来るまでそれぞれ待機をする必要があった。
【0004】図3は、従来の変換索引バッファクリア命
令処理方式の一例を示すブロック図である。図3に示す
ように、n(n≧2)台のプロセッサP3−1,P3−
2,……P3−nから成るマルチプロセッサシステム
は、システム内にTLBクリア要求が不可能であるか否
かを示す一つのフラグF3を有している。
【0005】そして、フラグF3は、TLBクリア要求
を行う場合には、要求元プロセッサP3−i(iは、
1,2,…n)でテストされることにより、TLBクリ
ア要求が不可能でなければ不可能にセットされて、すべ
てのプロセッサのTLBクリア処理を終了した後に要求
元プロセッサP3−iによってリセットされている。
【0006】例えば、プロセッサP3−1が、TLBク
リア命令を実行した場合に、実行部31−1が、TLB
クリア要求の不可能を示すフラグF3をテストして、T
LBクリア要求が不可能でなければ、フラグF3をTL
Bクリア要求の不可能な状態にセットして、すべての他
のプロセッサP3−2,……P3−nにクリア要求を送
信している。また、TLBクリア要求が不可能になって
いるときには、TLBクリア要求が可能になるまで待機
している。
【0007】そして、この送信が終了したときには、す
べての他のプロセッサP3−2,……P3−nからのT
LBクリア処理終了の通知が受信されるまで待機してい
る。また、実行部31−1が、すべての他のプロセッサ
P3−2,……P3−nからのTLBクリア処理終了の
通知の受信をしたならば、フラグF3をリセットして命
令を終了している。
【0008】一方、プロセッサP3−1は、TLBクリ
アの命令が終了した場合と、TLBクリアの命令の実行
を待機した場合とに、すべての他のプロセッサP3−
2,……P3−nからのTLBクリア要求の有無を順次
に調べている。
【0009】そして、プロセッサP3−2からのTLB
クリア要求がプロセッサP3−1,P3−3,……P3
−nに送信された場合には、そのプロセッサP3−2か
らの要求に合ったクリア処理を行って、そのクリア処理
が終了したならば、要求元のプロセッサP3−2に処理
の終了の通知を送信し、次の命令の実行へと移行してい
る。
【0010】
【発明が解決しようとする課題】上述した従来の変換索
引バッファクリア命令処理方式では、マルチプロセッサ
システムにおける各プロセッサ内のアドレス変換情報を
保持するTLBのクリア命令の処理に際して、すべての
プロセッサ内のTLBの内容の一貫性を保つためには、
TLBクリア要求を出したプロセッサが、他のすべての
プロセッサからのTLBクリア処理の終了通知を受信す
るまで、次の命令の処理へ移行せずに待機しなければな
らないという問題点がある。
【0011】また、従来の変換索引バッファクリア命令
処理方式では、複数のプロセッサがクリア要求を行った
場合には、順番にそれらのクリアを行うために、順番が
来るまでそれぞれ待機をする必要があるという問題点が
ある。
【0012】このために、従来の変換索引バッファクリ
ア命令処理方式は、プロセッサの数が増加するのに伴
い、TLBクリア命令の処理時間が増加してしまい、処
理性能を低下させる要因になるという欠点を有してい
る。
【0013】本発明の目的は、TLBクリア命令処理に
おける待機時間を減少させ、TLBクリア命令の処理を
高速化する変換索引バッファクリア命令処理方式を提供
することにある。
【0014】
【課題を解決するための手段】第1の発明の変換索引バ
ッファクリア命令処理方式は、内部にメモリアドレス変
換情報を保持するTLBを有して、前記TLBの部分的
および全体的な削除を行うクリア命令を実行することが
可能であるn台(n≧2)のプロセッサを持つマルチプ
ロセッサシステムの変換索引バッファクリア命令処理方
式において、(A)各々の前記プロセッサ内に、n−1
個の他の前記プロセッサからのTLBクリア要求を保持
するレジスタと、n−1個の他の前記プロセッサからの
TLBクリア処理の終了通知を保持する第1のフラグ
と、その時に他の前記プロセッサからのTLBクリア要
求が不可能であるか否かを示す第2のフラグとを有し、
(B)n−1個の他の前記プロセッサからのTLBクリ
ア処理の終了通知で前記第1のフラグがすべてセットさ
れたら、前記第2のフラグをリセットして、前記第1の
フラグもすべてリセットし、(C)他の前記プロセッサ
からのTLBクリア要求を受信すると、前記レジスタ内
にその内容を保持して、当該の前記プロセッサは、実行
中の命令の実行を終了するなどの適切なタイミングで、
前記レジスタに保持するすべてのTLBクリア要求を順
次に処理し、(D)一つのTLBクリア処理を終了する
と、そのTLBクリア要求の要求元の前記プロセッサに
処理の終了通知を送信して、その処理を終了したTLB
クリア要求を前記レジスタから削除し、(E)当該の前
記プロセッサで、TLBクリア命令が実行されると、前
記第2のフラグを調べ、TLBクリア要求が不可能であ
れば、可能になるまで待機して、TLBクリア要求が可
能であれば、すべての他の前記プロセッサにTLBクリ
ア要求を送信して、前記第2のフラグをTLBクリア要
求が不可能な状態にセットし、他の前記プロセッサから
のTLBクリア処理の終了通知を待合わせずに命令を終
了する、ことを含んでいる。
【0015】また、第2の発明の変換索引バッファクリ
ア命令処理方式は、バスにより結合されたn(n≧2)
台のプロセッサを持つマルチプロセッサシステムの変換
索引バッファクリア命令処理方式において、(A)メモ
リアドレス変換情報を保持するTLBと、前記TLBの
内容に対する部分的および全体的な削除を行うクリア命
令を実行することが可能な実行部と、前記バスを通じて
n−1個の他の前記プロセッサに対する通信を行うバス
制御部と、n−1個の他の前記プロセッサからのTLB
クリア要求を保持するレジスタと、n−1個の他の前記
プロセッサからのTLBクリア処理の終了通知の各々を
保持する第1のフラグと、その時に他の前記プロセッサ
からのTLBクリア要求が不可能であるか否かを示す第
2のフラグとを各々の前記プロセッサ内に備えるととも
に、(B)n−1個の他の前記プロセッサからのTLB
クリア処理の終了通知で前記第1のフラグがすべてセッ
トされたら、前記第2のフラグをリセットして、前記第
1のフラグもすべてリセットし、(C)他の前記プロセ
ッサからのTLBクリア要求を受信すると、前記レジス
タ内にその内容を保持して、当該の前記プロセッサは、
実行中の命令の実行を終了するなどの適切なタイミング
で、前記レジスタに保持するすべてのTLBクリア要求
を順次に処理し、(D)一つのTLBクリア処理を終了
すると、そのTLBクリア要求の要求元の前記プロセッ
サに処理の終了通知を送信して、その処理を終了したT
LBクリア要求を前記レジスタから削除し、(E)当該
の前記プロセッサで、TLBクリア命令が実行される
と、前記第2のフラグを調べ、TLBクリア要求が不可
能であれば、可能になるまで待機して、TLBクリア要
求が可能であれば、すべての他の前記プロセッサにTL
Bクリア要求を送信して、前記第2のフラグをTLBク
リア要求が不可能な状態にセットし、他の前記プロセッ
サからのTLBクリア処理の終了通知を待合わせずに命
令を終了する、ことを含んでいる。
【0016】さらに、第3の発明の変換索引バッファク
リア命令処理方式は、n(n≧2)台のプロセッサと、
前記プロセッサの相互間で通信することが可能であるか
否かを示す通信フラグとを持つマルチプロセッサシステ
ムの変換索引バッファクリア命令処理方式において、
(A)メモリアドレス変換情報を保持するTLBと、前
記通信フラグが通信可能状態である場合にn−1個の他
の前記プロセッサに対して通信するとともに前記TLB
の内容に対する部分的および全体的な削除を行えるクリ
ア命令を実行することが可能である実行部と、n−1個
の他の前記プロセッサからのTLBクリア要求を保持す
るレジスタと、n−1個の他の前記プロセッサからのT
LBクリア処理の終了通知の各々を保持する第1のフラ
グと、その時に他の前記プロセッサからのTLBクリア
要求が不可能であるか否かを示す第2のフラグとをそれ
ぞれの前記プロセッサ内に備えるとともに、(B)n−
1個の他の前記プロセッサからのTLBクリア処理の終
了通知で前記第1のフラグがすべてセットされたら、前
記第2のフラグをリセットして、前記第1のフラグもす
べてリセットし、(C)他の前記プロセッサからのTL
Bクリア要求を受信すると、前記レジスタ内にその内容
を保持して、当該の前記プロセッサは、実行中の命令の
実行を終了するなどの適切なタイミングで、前記レジス
タに保持するすべてのTLBクリア要求を順次に処理
し、(D)一つのTLBクリア処理を終了すると、その
TLBクリア要求の要求元の前記プロセッサに処理の終
了通知を送信して、その処理を終了したTLBクリア要
求を前記レジスタから削除し、(E)当該の前記プロセ
ッサで、TLBクリア命令が実行されると、前記第2の
フラグを調べ、TLBクリア要求が不可能であれば、可
能になるまで待機して、TLBクリア要求が可能であれ
ば、すべての他の前記プロセッサにTLBクリア要求を
送信して、前記第2のフラグをTLBクリア要求が不可
能な状態にセットし、他の前記プロセッサからのTLB
クリア処理の終了通知を待合わせずに命令を終了する、
ことを含んでいる。
【0017】
【実施例】次に、本発明の実施例について図面を参照し
て説明する。図1は本発明の変換索引バッファクリア命
令処理方式の第1の実施例を示すブロック図である。図
1に示すように、第1の実施例のマルチプロセッサシス
テムは、バスB1によって結合されたn(n≧2)台の
プロセッサP1−1,P1−2,……P1−nから構成
されている。
【0018】また、各プロセッサP1−i(iは、1,
2,…n)は、バスB1を制御するバス制御部11−i
と、命令の実行を行う実行部12−iと、メモリのアド
レス変換情報を保持するTLB13−iと、TLBクリ
ア要求が不可能か否かを示すフラグ14−iと、他のプ
ロセッサがクリア要求の処理を終了したことを示したク
リア処理の終了信号を保持するn−1個のフラグ15−
iと、すべての他の各プロセッサに対応するn−1個の
TLBクリア要求を保持するレジスタ16−iとを有し
ている。
【0019】そして、バスB1は、例えば、制御信号を
伝達するコントロールバスやデータを伝送するデータバ
スから構成され、各プロセッサ間でTLB13−iのク
リア要求およびTLB13−iのクリア要求に対する処
理の終了通知をしている。
【0020】そこで、バス制御部11−iは、実行部1
2−iがすべての他のプロセッサに対するTLBクリア
要求を行った場合と、実行部12−iが他のプロセッサ
から要求されたTLBクリア処理を終了した場合とに
は、バスB1のマスタ権を獲得し、すべての他のプロセ
ッサにバスB1を介して送信を行って、他のプロセッサ
からのTLBクリア処理の終了通知を受信した場合に
は、他のプロセッサに対応するn−1個のフラグ15−
iをセットしている。
【0021】また、TLBクリア要求の不可能を示すフ
ラグ14−iは、TLBクリア命令が実行部11−iに
よって実行されるとセットされている。そして、n−1
個の他のプロセッサに対応するプロセッサP1−i内の
フラグ15−iは、それぞれ他のプロセッサからのクリ
ア処理の終了通知がバスB1を通して受信された場合に
は、バス制御部11−iによりセットされている。そし
て、n−1個のフラグ15−iのすべてが点灯したとき
には、TLBクリア要求の不可能を示すフラグ14−i
は、リセットされるとともに、n−1個のフラグ15−
iも、リセットされている。
【0022】一方、他のプロセッサからのTLBクリア
要求がバスB1を通してバス制御部11−iで受信され
た場合に、n−1個のTLBクリア要求を保持するレジ
スタ16−iは、バス制御部11−iによってその要求
内容がセットされている。
【0023】そして、プロセッサP1−iがTLBクリ
ア命令を検出した場合には、実行部11−iは、TLB
クリア要求の不可能を示すフラグ14−iをテストする
ことにより、TLBクリア要求が不可能ならば可能にな
るまで待機している。また、TLBクリア要求が可能で
あれば、すべての他のプロセッサに対するクリア要求を
バス制御部11−iを介して送信し、送信が終了したと
きには、自プロセッサP1−iのTLBクリア処理を行
って、TLBクリア要求の不可能を示すフラグ14−i
をセットして命令を終了している。
【0024】続いて、プロセッサP1−iが他のプロセ
ッサからのTLBクリア要求を受信した場合の処理につ
いて説明する。プロセッサP1−iは、命令が終了した
場合と命令の実行を待機する場合とにTLBクリア要求
を保持するレジスタ16−iの内容によって、他のプロ
セッサからのTLBクリア要求の有無を順次に調べてい
る。
【0025】そして、他のプロセッサからのTLBクリ
ア要求が存在する場合に、その要求に合ったTLBクリ
ア処理を行っている。さらに、そのクリアの種類が全ク
リアであるならば、レジスタ16−iに保持するクリア
要求もすべてリセットして、すべての要求元のプロセッ
サに対して処理の終了をバス制御部11−iを介して送
信している。また、そのクリアの種類が部分クリアであ
るならば、そのクリア要求だけをリセットし、その要求
元のプロセッサに対して処理の終了通知をバス制御部1
1−iを介して送信している。
【0026】そこで、これらの処理を継続して、他のプ
ロセッサからのTLBクリア要求がもう存在しない場合
には、次の命令の実行に移行している。
【0027】なお、任意のプロセッサP1−iは、TL
Bクリア命令を実行するときの前後で、キャッシュの一
致処理などを伴う命令を実行する場合に、TLBクリア
処理とキャッシュの一致処理などとは、正しい順序を保
って行っている。
【0028】また、プロセッサP1−iによって発行し
たTLBクリア命令の処理がすべての他のプロセッサで
終了した後に実行する必要がある命令を処理するときに
は、プロセッサP1−iは、TLBクリア要求の不可能
を示すフラグ14−iを調べて、フラグ14−iがセッ
トされていたならば、リセットされるまで待機して、フ
ラグ14−iがセットされていなかったならば、待機せ
ずにその命令の処理を行っている。
【0029】次に、図2は本発明の変換索引バッファク
リア命令処理方式の第2の実施例を示すブロック図であ
る。図2に示したように、第2の実施例のマルチプロセ
ッサシステムは、n(n≧2)台のプロセッサP2−
1,P2−2,……P2−nとシステム内に一つの通信
可能を示す通信フラグF2とから構成されている。
【0030】そして、各プロセッサP2−i(iは、
1,2,…n)は、命令の実行を行う実行部21−i
と、メモリに対するアドレス変換情報を保持するTLB
22−iと、TLBクリア要求が不可能か否かを示すフ
ラグ23−iと、他のプロセッサの各々がクリア要求の
処理を終了した旨を示すクリア処理の終了信号を保持す
るn−1個のフラグ24−iと、すべての他の各プロセ
ッサに対応するn−1個のTLBクリア要求を保持する
レジスタ25−iとを有している。
【0031】そこで、実行部21−iは、TLB22−
iに対するクリア命令が実行されると、TLB22−i
に対するクリア要求の不可能を示すフラグ23−iをセ
ットしている。また、n−1個の他のプロセッサに対応
するフラグ24−iは、各々の他のプロセッサでTLB
クリア処理が終了した場合にセットされている。
【0032】また、実行部21−iは、n−1個のフラ
グ24−iがすべて点灯したときには、TLBクリア要
求の不可能を示すフラグ23−iをリセットし、n−1
個のフラグ24−iもリセットしている。一方、実行部
21−iは、他のプロセッサからTLBクリア要求が受
信されると、n−1個のTLBクリア要求を保持するレ
ジスタ25−iにその要求内容をセットしている。
【0033】さらに、システム内に一つの通信可能を示
す通信フラグF2は、TLBクリア要求またはTLBク
リア処理の終了通知をプロセッサ間で通信する場合に送
信元のプロセッサによってテストされるとともに、通信
の実施中には、その送信元のプロセッサによって点灯さ
れている。
【0034】そこで、プロセッサP2−iがTLBクリ
ア命令を実行した場合には、実行部21−iは、TLB
クリア要求の不可能を示すフラグ23−iを調べて、T
LBクリア要求が不可能ならば、可能になるまで待機し
ている。一方、TLBクリア要求が可能であれば、次
に、他のプロセッサへの通信可能を示す通信フラグF2
を調べて、通信可能ならば、通信フラグF2をセットし
て他のプロセッサの各々にTLBクリア要求を送信して
いる。他方、通信が不可能ならば、通信が可能になるま
で待機している。また、送信が終了したなら、通信フラ
グF2をリセットして自プロセッサP2−iのTLBク
リア処理を行い、TLBクリア要求不可能を示すフラグ
23−iをセットして命令を終了している。
【0035】続いて、プロセッサP2−iが他のプロセ
ッサからのTLBクリア要求を受信した場合の処理につ
いて説明する。プロセッサP2−iは、命令が終了した
場合と命令の実行を待機する場合とにTLBクリア要求
を保持するレジスタ25−iの内容によって、他のプロ
セッサからのTLBクリア要求の有無を順次に調べてい
る。
【0036】そこで、他のプロセッサからのTLBクリ
ア要求が存在する場合に、その要求に合ったTLBクリ
ア処理を行っている。そして、そのクリアの種類が全ク
リアであるならば、レジスタ25−iに保持するクリア
要求もすべてリセットして、通信フラグF2を調べ、送
信可能ならば、通信フラグF2をセットして、要求元の
プロセッサに対して処理の終了を送信し、その通信フラ
グF2をリセットしている。なお、送信が不可能なら
ば、送信可能になるまで待機している。
【0037】また、そのクリアの種類が部分クリアであ
るときには、そのクリア要求だけをリセットし、通信フ
ラグF2を調べ、送信可能ならば、通信フラグF2をセ
ットし、その要求元のプロセッサに対して処理の終了通
知をを送信して、通信フラグF2をリセットしている。
なお、送信が不可能ならば、送信可能になるまで待機し
ている。
【0038】そこで、これらの処理を継続して、他のプ
ロセッサからのTLBクリア要求がもう存在しない場合
には、次の命令の実行に移行している。
【0039】なお、任意のプロセッサP2−iは、TL
Bクリア命令を実行するときの前後で、キャッシュの一
致処理などを伴う命令を実行する場合に、TLBクリア
処理とキャッシュの一致処理などとは、正しい順序を保
って行っている。
【0040】また、プロセッサP2−iによって発行し
たTLBクリア命令の処理がすべての他のプロセッサで
終了した後に実行する必要がある命令を処理するときに
は、プロセッサP2−iは、TLBクリア要求の不可能
を示すフラグ23−iを調べて、フラグ23−iがセッ
トされていたならば、リセットされるまで待機して、フ
ラグ23−iがセットされていなかったならば、待機せ
ずにその命令の処理を行っている。
【0041】
【発明の効果】以上に説明をしたように、本発明の変換
索引バッファクリア命令処理方式は、マルチプロセッサ
システムにおいて、任意のプロセッサが、TLBクリア
要求を他のプロセッサに送信した場合にも、他のプロセ
ッサからのTLBクリア処理の終了通知を待合わせずに
次の命令へ移行し、次に、TLBクリア要求を送信する
場合には、前回のTLBクリア要求に対する他のプロセ
ッサからのTLBクリア処理の終了通知の受信を確認す
ることにより、処理が高速に行えるという効果を有して
いる。
【0042】そして、本発明の変換索引バッファクリア
命令処理方式は、各プロセッサが、すべての他のプロセ
ッサからのTLBクリア要求を同時に保持することがで
きるために、すべての他のプロセッサにおける待機時間
が不要となって、処理時間を短縮できるので、各々のプ
ロセッサの処理性能を向上させることができるという効
果を有している。
【図面の簡単な説明】
【図1】本発明の変換索引バッファクリア命令処理方式
の第1の実施例を示すブロック図である。
【図2】本発明の変換索引バッファクリア命令処理方式
の第2の実施例を示すブロック図である。
【図3】従来の変換索引バッファクリア命令処理方式の
一例を示すブロック図である。
【符号の説明】
11−1,〜11−i,〜 バス制御部 12−1,〜12−i,〜 実行部 13−1,〜13−i,〜 TLB 14−1,〜14−i,〜 フラグ 15−1,〜15−i,〜 フラグ 16−1,〜16−i,〜 レジスタ 21−1,〜21−i,〜 実行部 22−1,〜22−i,〜 TLB 23−1,〜23−i,〜 フラグ 24−1,〜24−i,〜 フラグ 25−1,〜25−i,〜 レジスタ 31−1,〜31−i,〜 実行部 32−1,〜32−i,〜 TLB B1 バス F2 通信フラグ F3 フラグ P1−1,P1−2〜P1−i,〜P1−n プロセ
ッサ P2−1,P2−2〜P2−i,〜P2−n プロセ
ッサ P3−1,P3−2〜P3−i,〜P3−n プロセ
ッサ

Claims (3)

    (57)【特許請求の範囲】
  1. 【請求項1】 内部にメモリアドレス変換情報を保持す
    る変換索引バッファ(Translation Loo
    kaside Bufferであり、以下に頭文字を用
    いて、TLBという。)を有し、前記TLBの部分的お
    よび全体的な削除を行うクリア命令を実行することが可
    能であるn台(n≧2)のプロセッサを持つマルチプロ
    セッサシステムに対する変換索引バッファクリア命令処
    理方式において、(A)各々の前記プロセッサ内に、n
    −1個の他の前記プロセッサからのTLBクリア要求を
    保持するレジスタと、n−1個の他の前記プロセッサか
    らのTLBクリア処理の終了通知を保持する第1のフラ
    グと、その時に他の前記プロセッサからのTLBクリア
    要求が不可能であるか否かを示す第2のフラグとを有
    し、(B)n−1個の他の前記プロセッサからのTLB
    クリア処理の終了通知で前記第1のフラグがすべてセッ
    トされたら、前記第2のフラグをリセットして、前記第
    1のフラグもすべてリセットし、(C)他の前記プロセ
    ッサからのTLBクリア要求を受信すると、前記レジス
    タ内にその内容を保持して、当該の前記プロセッサは、
    実行中の命令の実行を終了するなどの適切なタイミング
    で、前記レジスタに保持するすべてのTLBクリア要求
    を順次に処理し、(D)一つのTLBクリア処理を終了
    すると、そのTLBクリア要求の要求元の前記プロセッ
    サに処理の終了通知を送信して、その処理を終了したT
    LBクリア要求を前記レジスタから削除し、(E)当該
    の前記プロセッサで、TLBクリア命令が実行される
    と、前記第2のフラグを調べ、TLBクリア要求が不可
    能であれば、可能になるまで待機して、TLBクリア要
    求が可能であれば、すべての他の前記プロセッサにTL
    Bクリア要求を送信して、前記第2のフラグをTLBク
    リア要求が不可能な状態にセットし、他の前記プロセッ
    サからのTLBクリア処理の終了通知を待合わせずに命
    令を終了する、ことを特徴とする変換索引バッファクリ
    ア命令処理方式。
  2. 【請求項2】 バスにより結合されたn(n≧2)台の
    プロセッサを有するマルチプロセッサシステムの変換索
    引バッファクリア命令処理方式において、(A)メモリ
    アドレス変換情報を保持するTLBと、前記TLBの内
    容に対する部分的および全体的な削除を行うクリア命令
    を実行することが可能な実行部と、前記バスを通じてn
    −1個の他の前記プロセッサに対する通信を行うバス制
    御部と、n−1個の他の前記プロセッサからのTLBク
    リア要求を保持するレジスタと、n−1個の他の前記プ
    ロセッサからのTLBクリア処理の終了通知の各々を保
    持する第1のフラグと、その時に他の前記プロセッサか
    らのTLBクリア要求が不可能であるか否かを示す第2
    のフラグとを各々の前記プロセッサ内に備えるととも
    に、(B)n−1個の他の前記プロセッサからのTLB
    クリア処理の終了通知で前記第1のフラグがすべてセッ
    トされたら、前記第2のフラグをリセットして、前記第
    1のフラグもすべてリセットし、(C)他の前記プロセ
    ッサからのTLBクリア要求を受信すると、前記レジス
    タ内にその内容を保持して、当該の前記プロセッサは、
    実行中の命令の実行を終了するなどの適切なタイミング
    で、前記レジスタに保持するすべてのTLBクリア要求
    を順次に処理し、(D)一つのTLBクリア処理を終了
    すると、そのTLBクリア要求の要求元の前記プロセッ
    サに処理の終了通知を送信して、その処理を終了したT
    LBクリア要求を前記レジスタから削除し、(E)当該
    の前記プロセッサで、TLBクリア命令が実行される
    と、前記第2のフラグを調べ、TLBクリア要求が不可
    能であれば、可能になるまで待機して、TLBクリア要
    求が可能であれば、すべての他の前記プロセッサにTL
    Bクリア要求を送信して、前記第2のフラグをTLBク
    リア要求が不可能な状態にセットし、他の前記プロセッ
    サからのTLBクリア処理の終了通知を待合わせずに命
    令を終了する、ことを特徴とする変換索引バッファクリ
    ア命令処理方式。
  3. 【請求項3】 n(n≧2)台のプロセッサと、前記プ
    ロセッサの相互間で通信することが可能であるか否かを
    示す通信フラグとを有するマルチプロセッサシステムの
    変換索引バッファクリア命令処理方式において、(A)
    メモリアドレス変換情報を保持するTLBと、前記通信
    フラグが通信可能状態である場合にn−1個の他の前記
    プロセッサに対して通信するとともに前記TLBの内容
    に対する部分的および全体的な削除を行えるクリア命令
    を実行することが可能である実行部と、n−1個の他の
    前記プロセッサからのTLBクリア要求を保持するレジ
    スタと、n−1個の他の前記プロセッサからのTLBク
    リア処理の終了通知の各々を保持する第1のフラグと、
    その時に他の前記プロセッサからのTLBクリア要求が
    不可能であるか否かを示す第2のフラグとをそれぞれの
    前記プロセッサ内に備えるとともに、(B)n−1個の
    他の前記プロセッサからのTLBクリア処理の終了通知
    で前記第1のフラグがすべてセットされたら、前記第2
    のフラグをリセットして、前記第1のフラグもすべてリ
    セットし、(C)他の前記プロセッサからのTLBクリ
    ア要求を受信すると、前記レジスタ内にその内容を保持
    して、当該の前記プロセッサは、実行中の命令の実行を
    終了するなどの適切なタイミングで、前記レジスタに保
    持するすべてのTLBクリア要求を順次に処理し、
    (D)一つのTLBクリア処理を終了すると、そのTL
    Bクリア要求の要求元の前記プロセッサに処理の終了通
    知を送信して、その処理を終了したTLBクリア要求を
    前記レジスタから削除し、(E)当該の前記プロセッサ
    で、TLBクリア命令が実行されると、前記第2のフラ
    グを調べ、TLBクリア要求が不可能であれば、可能に
    なるまで待機して、TLBクリア要求が可能であれば、
    すべての他の前記プロセッサにTLBクリア要求を送信
    して、前記第2のフラグをTLBクリア要求が不可能な
    状態にセットし、他の前記プロセッサからのTLBクリ
    ア処理の終了通知を待合わせずに命令を終了する、こと
    を特徴とする変換索引バッファクリア命令処理方式。
JP6008061A 1994-01-28 1994-01-28 変換索引バッファクリア命令処理方式 Expired - Fee Related JP2806778B2 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP6008061A JP2806778B2 (ja) 1994-01-28 1994-01-28 変換索引バッファクリア命令処理方式
FR9500892A FR2715746B1 (fr) 1994-01-28 1995-01-26 Procédé et système de remise à zéro d'un registre tampon de surveillance latérale de translation.
US08/999,621 US5928353A (en) 1994-01-28 1997-08-01 Clear processing of a translation lookaside buffer with less waiting time

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6008061A JP2806778B2 (ja) 1994-01-28 1994-01-28 変換索引バッファクリア命令処理方式

Publications (2)

Publication Number Publication Date
JPH07219915A JPH07219915A (ja) 1995-08-18
JP2806778B2 true JP2806778B2 (ja) 1998-09-30

Family

ID=11682836

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6008061A Expired - Fee Related JP2806778B2 (ja) 1994-01-28 1994-01-28 変換索引バッファクリア命令処理方式

Country Status (3)

Country Link
US (1) US5928353A (ja)
JP (1) JP2806778B2 (ja)
FR (1) FR2715746B1 (ja)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7234027B2 (en) * 2001-10-24 2007-06-19 Cray Inc. Instructions for test & set with selectively enabled cache invalidate
US7162608B2 (en) * 2001-10-24 2007-01-09 Cray, Inc. Translation lookaside buffer-based memory system and method for use in a computer having a plurality of processor element
US7617378B2 (en) * 2003-04-28 2009-11-10 International Business Machines Corporation Multiprocessor system with retry-less TLBI protocol
US9454490B2 (en) 2003-05-12 2016-09-27 International Business Machines Corporation Invalidating a range of two or more translation table entries and instruction therefore
US7530067B2 (en) * 2003-05-12 2009-05-05 International Business Machines Corporation Filtering processor requests based on identifiers
US7284100B2 (en) * 2003-05-12 2007-10-16 International Business Machines Corporation Invalidating storage, clearing buffer entries, and an instruction therefor
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
US7631147B2 (en) * 2006-12-06 2009-12-08 Microsoft Corporation Efficient flushing of translation lookaside buffers in a multiprocessor environment
US8051338B2 (en) * 2007-07-19 2011-11-01 Cray Inc. Inter-asic data transport using link control block manager
US9182984B2 (en) 2012-06-15 2015-11-10 International Business Machines Corporation Local clearing control
US10540292B2 (en) 2016-06-08 2020-01-21 Google Llc TLB shootdowns for low overhead
GB2551226A (en) * 2016-06-08 2017-12-13 Google Inc TLB shootdowns for low overhead

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4456954A (en) * 1981-06-15 1984-06-26 International Business Machines Corporation Virtual machine system with guest architecture emulation using hardware TLB's for plural level address translations
JPS6091462A (ja) * 1983-10-26 1985-05-22 Toshiba Corp 演算制御装置
US4779188A (en) * 1983-12-14 1988-10-18 International Business Machines Corporation Selective guest system purge control
JPS60130995A (ja) * 1983-12-19 1985-07-12 Nippon Telegr & Teleph Corp <Ntt> プロセツサ間通信制御方式
JPS60254346A (ja) * 1984-05-31 1985-12-16 Toshiba Corp マルチプロセツサシステム
JPH01109452A (ja) * 1987-10-22 1989-04-26 Fujitsu Ltd 変換索引バッファ情報の消去制御方式
JPH01234964A (ja) * 1988-03-16 1989-09-20 Fujitsu Ltd マルチプロセッサ制御方式
US5317754A (en) * 1990-10-23 1994-05-31 International Business Machines Corporation Method and apparatus for enabling an interpretive execution subset
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
US5500948A (en) * 1991-10-29 1996-03-19 Intel Corporation Translating instruction pointer virtual addresses to physical addresses for accessing an instruction cache
JPH05250332A (ja) * 1992-03-05 1993-09-28 Juki Corp 電子機器
US5428757A (en) * 1992-04-29 1995-06-27 International Business Machines Corporation Method for reducing translation look aside buffer purges in a multitasking system

Also Published As

Publication number Publication date
FR2715746B1 (fr) 1998-02-06
JPH07219915A (ja) 1995-08-18
FR2715746A1 (fr) 1995-08-04
US5928353A (en) 1999-07-27

Similar Documents

Publication Publication Date Title
JP2806778B2 (ja) 変換索引バッファクリア命令処理方式
JP5537919B2 (ja) データ転送のためのシステムおよび方法
TWI239187B (en) System and method for managing and validating remote keys which correspond to outstanding data transactions
CN109690510B (zh) 用于将数据分发到高性能计算网络和基于云的网络中的多个接收器的多播装置和方法
JP3544390B2 (ja) 並列計算機で用いられるメッセージ通信方法
KR100250464B1 (ko) 고속병렬컴퓨터의 노드 부트 방법
JP2007011673A (ja) ホスト間データ転送方法、プログラム及びシステム
CN106980582A (zh) 数据处理方法和装置
AU2016201513A1 (en) Low latency fifo messaging system
CN111404931A (zh) 一种基于持久性内存的远程数据传输方法
CN112445735A (zh) 一种联邦学习数据传输方法、计算机设备、系统及存储介质
CN112835843A (zh) 数据渲染方法及系统
JP3639319B2 (ja) 並列計算機システム,データ転送制御方法および送受信制御装置
CN113076281B (zh) 一种Ceph内核客户端进行通信的方法、系统、设备及介质
JPH117434A (ja) 複数ノードの非同期データ通信システム内で早期到達メッセージを処理するシステム
KR20050080704A (ko) 프로세서간 데이터 전송 장치 및 방법
JP3328872B2 (ja) 計算機ネットワーク通信方法およびネットワーク計算機システム
CN110519242A (zh) 数据传输方法及装置
Jang et al. Implementation of a hybrid TCP/IP offload engine prototype
CN116601616A (zh) 一种数据处理装置、方法及相关设备
JPH09224066A (ja) 通信プロトコル並列処理装置
JP7207133B2 (ja) 情報処理装置、同期装置及び情報処理装置の制御方法
JP3282205B2 (ja) 受信データ処理方式及び通信制御装置
JPH06324998A (ja) メッセージ受信方式
JP5587530B2 (ja) エンジン・プロセッサ連携システム及び連携方法

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19980707

LAPS Cancellation because of no payment of annual fees