JPS63201854A - アドレス変換バツフア無効化方式 - Google Patents

アドレス変換バツフア無効化方式

Info

Publication number
JPS63201854A
JPS63201854A JP62033241A JP3324187A JPS63201854A JP S63201854 A JPS63201854 A JP S63201854A JP 62033241 A JP62033241 A JP 62033241A JP 3324187 A JP3324187 A JP 3324187A JP S63201854 A JPS63201854 A JP S63201854A
Authority
JP
Japan
Prior art keywords
processor
tlb
instruction
processors
address translation
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
JP62033241A
Other languages
English (en)
Inventor
Masaichirou Yoshioka
吉岡 正壱郎
Hidenori Umeno
梅野 英典
Hiromichi Kaino
戒能 博通
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
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 Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP62033241A priority Critical patent/JPS63201854A/ja
Publication of JPS63201854A publication Critical patent/JPS63201854A/ja
Pending legal-status Critical Current

Links

Classifications

    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、実記憶装置を共有する複数の処理装置を持つ
マルチプロセッサシステムにおけるアドレス変換バッフ
ァ無効化処理方式に係わり、特に、ひとつの処理装置に
おいて発生したアドレス変換バッファ無効化の要求を他
処理装置へ連絡する機能を具備することにより、複数の
処理装置で同時にアドレス変換バッファの無効化を実行
し、アドレス変換バッファ無効化処理の効率を向上させ
ることを可能とするアドレス変換バッファ無効化方式に
関する。
〔従来技術〕
仮想記憶方式を用いる計算機システムでは、仮想記憶装
置内のアドレスを示す論理アドレスと実記憶装置内のア
ドレスを示す物理アドレスとの対応付けを、セグメント
テーブル及びページテーブルと呼ばれるマツピングテー
ブルを用いて行っている。まず、このアドレス変換の方
法を第2図を用いて簡単に説明する。制御レジスタ21
のピット1から19のセグメントテーブル先頭アドレス
の下位に12ビツトの101を付加した31ビツトのア
ドレスと、論理アドレス22のセグメントフィールドの
下位に2ビツト、上位に18ビツトのI O+ を付加
した31ビツトのアドレスとを加算した値がセグメント
テーブル23のエントリアドレスとなる。このセグメン
トテーブルエントリのビット1から25の下位に6ビツ
トの10′を付加すると31ビツトのページテーブル先
頭アドレスが求まる。この値に論理アドレスのページフ
ィールドの下位に2ビツト、上位に21ビツトの′0′
を付加した31ビツトのアドレスを加算することによっ
てページテーブルエントリ24のアドレスが求まる。ペ
ージテーブルエントリのビット1から19が物理アドレ
ス25のビット1から19に対応し、これに論理アドレ
スの変位フィールドを連結することにより物理アドレス
が求まる。
しかし、常にこのセグメントテーブル、ページテーブル
を用いて論理アドレスを物理アドレスに変換していたの
ではその変換操作のオーバヘッドが大きく、効率が落ち
るので、アドレス変換処理の高速化のため過去に参照さ
れた論理アドレスとそれに対応する物理アドレスの対応
テーブルを有している。この対応テーブルのことをTL
B (トランスレーション ルック・アサイ下 バッフ
ァ:TranslationLook−aside B
uffer) 2 ’6あるいはアドレス変換テーブル
と呼ぶ。これにより、ひとつのエントリに対する最初の
アクセスに蛤してのみ実記憶上の変換テーブルを参照す
るだけで良く、その後の同一エントリに関するアドレス
変換はTLBから直接物理アドレスを得ることによって
高速化している。この変換過程のより詳しい説明はrM
シリーズ処処理装置2立立HITACマニユアル808
02−083Jに示されている。
さて、計算機を制御するオペレーティングシステムは、
実記憶装置のページをページアウトした場合などに、ペ
ージテーブルの内容やTLB内の論理アドレスと物理ア
ドレスの対応関係を無効にするために、IPTE(イン
バリデート ページテーブル エントリ: Inval
idate Page TableEntry)命令や
P(パージ: Purge) T L B命令と呼ばれ
るページテーブルの内容やTLB内の内容を無効にする
命令を発行している。計算機が実記憶装置を共有するマ
ルチプロセッサシステムの場合、このTLBの無効化は
システムを構成するすべてのプロセッサに対して行わな
ければならない。
従来の機構では、IPTE命令の場合は自プロセッサの
ひとつのページテーブルエントリの無効化とともに、自
分自身を含む他の全てのプロセッサにおけるTLB内の
該当するエントリを無効化していたが、TLBの全ての
エントリを無効化するためにPTLB命令を利用した場
合、マルチプロセッサシステムを構成する一つのプロセ
ッサが該命命を実行しても、無効化されるのは該命令を
実行したプロセッサのTLBのみであり、他のプロセッ
サのTLBは無効化されることはなかった。
従って従来は、全てのTLBエントリの無効化を要求す
るオペレーティングシステムが複数のプロセッサ間の同
期をとり、計算機システムを構成するすべてのプロセッ
サでアドレス変換バッファ無効化命令が同時に実行され
るように制御する必要があった。この処理の手順を第3
図及び第4図を用いて説明する。
アドレス変換バッファの無効化が必要となった場合の処
理の牟順を以下に示し、そのフローを第3図に示す。ご
二では、システムのプロセッサ構成状態などを示すため
、プロセッサ構成テーブル(PCT)と呼ばれるテーブ
ルを用いる。このテーブルの概要を第5図に示す。PC
T51には、システムを構成するプロセッサに対応して
エントリ52があり、その中に各プロセッサのCPUア
ドレス領域53、動作状態やプロセッサ間連絡用のフラ
グ領域54及び55等がある。
1、オペレーティングシステムはまずシステムがマルチ
プロセッサ構成かどうかを調べ、マルチプロセッサ構成
の場合、以下に述べる処理を行なう、システムがマルチ
プロセッサ構成ではなかった場合には単純にPTLB命
令を実行する。
2、次に、システムのプロセッサ構成テーブルより連絡
を送出すべきプロセッサを知り、そのCPUアドレスを
求める。
3.該CPUがオンライン状態か否かを調べ、オンライ
ン状態でないならば、該プロセッサに関する処理を省略
する。
4、プロセッサ間連絡用フラグ領域55にあるアドレス
変換バッファ無効化要求フラグ56をセットする。
56プロセツサ間の連絡を行なうシグナルプロセッサ命
令(SIGP命令)を発行して該CPUに割り込みをか
け、アドレス変換バツブア無効化処理を実行させる。
6、以上の2から5の処理を自分自身を含め、システム
に接続されているすべてのプロセッサに対して繰り返す
次に5IGP命令によって割り込みを受けたプロセッサ
における処理の手順を述べ、そのフローを第4図に示す
1、まず、5IGPによる割り込みがTLB無効化要求
か否かを調べる。TLB無効化要求の場合に以下の処理
を行なう。
2、PTLB命令を発行し、自アドレス変換バッファを
無効化する。
3、自プロセッサに対するTLB無効化要求フラグをリ
セットし、アドレス変換バッファの無効化が終了した事
を表示する。
4、オンライン状態にあるすべてのプロセッサに関して
TLB無効化処理が終了したことを確認する。すなわち
、すべてのCPHに関するTLB無効化要求フラグがリ
セットされるまで待つ。
以上のように従来からの機構を用いた方法ではソフトウ
ェアによってPTLBの同期制御を行なってきた。なお
、IPTE命令、PTLB命令、及び5IGP命令に関
するより詳細な説明は「Mシリーズ処理装置2日立HI
TACマニュアル8080−2−0834に示されてい
る。
〔発明が解決しようとする問題点〕
従来技術では、PTLB命令のプロセッサ間での同期が
ハードウェアでは行われなかったので、ソフトウェアに
よって同期制御を行ってきた。しかし、この方法では、
先に述べたように処理に多くの時間を要し、オーバヘッ
ドが大きいという問題点があった。本発明は、アドレス
変換バッファの無効化要求がなされた際、ハードウェア
によってプロセッサ間での同期をとることにより、この
ソフトウェアオーバヘッドをなくすことを目的とする。
〔問題点を解決するための手段〕 上記問題点を解決するため、各プロセッサ内にアドレス
変換バッファ無効化要求を判別し、その事実を他のプロ
セッサに通知する機構と、該機構から通知を受けた場合
、命令のフェッチ動作を中止し、アドレス変換バッファ
を無効化する機構を設け、該機構によって、プロセッサ
間の連絡をとり、ソフトウェアによる同期制御を不要に
する。
〔作用〕
マルチプロセッサシステムを構成する一つのプロセッサ
より、アドレス変換バッファ無効化要求が出されると、
本発明の機構により、他のプロセッサにもその事実が通
知される。通知を受けた他のプロセッサでは処理中の命
令をいったん中断し、アドレス変換バッファの無効化を
行なう。通知を行ったプロセッサはすべてのプロセッサ
でのアドレス変換バッファ無効化が終了したことを確認
すると、命令処理再開の連絡を行なう。通知を受けた他
のプロセッサでは再び命令の処理を開始する。
〔実施例〕
以下図面を参照して本発明の一実施例について説明する
第1図にシステムを構成するプロセッサ数が2台の場合
の本発明の構成図を示す。第1図において、11.12
はシステムを構成する命令プロセッサであり、各プロセ
ッサ内には命令ユニット(、IU)13、実行ユニット
(EU)14、バッファユニット(BU)15がある。
IU13には、命令フェッチ回路16、アドレス変換バ
ッファ無効化要求命令判別部17が、EU14内には実
行制御部18、プロセッサ間連絡制御部]9が、BUI
S内にはアドレス変換バッファ(TLB)110および
その制御部111がある。プロセッサは通常、IU13
内の命令フェッチ回路16によって、記憶制御ユニット
(SCU)112を経由し、図には示されない回路を利
用して実記憶装置113から命令やそのオペランドを取
り込み、EU14内の実行制御部18においてその実行
を行なう。I TJ 13内のアドレス変換バッファ無
効化要求命令判別部17はフェッチした命令を監視し、
それがアドレス変換バッファ無効化要求命令の場合、プ
ロセッサ間連絡制御部19に信号を送出する。連絡を受
けたプロセッサ間連絡制御部19では、プロセッサ間の
連絡と自プロセッサにおけるTLB無効化処理の制御を
行なう。以下に本実施例におけるプロセッサ間連絡制御
部19の処理を順に説明し、その処理フローを第6図に
示す。
1、アドレス変換バッファ無効化要求命令判別部17か
ら連絡を受けたプロセッサ間連絡制御部19は、命令フ
ェッチ回路16に信号を送出し、命令フェッチ動作を一
時中断させ、実記憶装置113に対するすべてのアクセ
スが終了するのを待つ。
2、システムを給酸する自らを除く全プロセッサにTL
B無効化を要求する信号を送出する。
3、TLB制御部111に信号を送り、自らのTLBを
無効化する。
4、自身以外の全プロセッサのTLB無効化動作の完了
を待つ。
5、全プロセッサのTLB無効化動作の完了後、システ
ムを構成する自らを除く全プロセッサに命令フェッチ動
作再開信号を送出する。
6、命令フェッチ回路16に信号を送出し、命令フェッ
チ動作を再開させる。
さて、システムを構成するひとつのプロセッサから送出
されたTLB無効化要求信号は、システムを構成する他
のプロセッサのプロセッサ間連絡制御部で受は取られる
。自分以外のプロセッサからTLB無効化要求の信号を
受は取ったプロセッサ間横路制御部19は、次の手順に
従い、自プロセッサにおけるTLB無効化処理の制御と
プロセッサ間の連絡とを行なう。
1、命令フェッチ回路16に信号を送出し、命令フェッ
チ動作を一時中断させ、実記憶装置に対するすべてのア
クセスが終了するのを待つ。
2、TLB!It御部111に信号を送出し、TLB無
効化処理を行わせる。
3、TLB無効化処理の完了信号を、TLB無効化要求
を行ってきたプロセッサに対して送出する。
4、TLB無効化要求を行なったプロセッサより□、再
び命令フェッチ再開信号が送出されてくるのを待つ。
5、命令フェッチ動作再開信号を受領後、命令フェッチ
回路16に信号を送出し、命令フェッチ動作を再開させ
る。
以上の一連の動作によって、マルチプロセッサシステム
におけるTLB無効化処理が完了する。
次にプロセッサ間で送受する信号の実施例について述べ
る。
プロセッサ間の信号は各プロセッサ対に対して入出力そ
れぞれ一本ずつ設ける。従って、一つの□プbセッサか
らはシステムを構成する他の全プロセッサに対して入力
、出力各一本ずつの信号線が出ることになる。  ・ 信号を送出、受領するプロセッサそれぞれに関して入力
、出力信号の意味を第7図に示す。まず、TLB無効化
要求を行なうプロセッサに関しては、同図(a)の如く
、TLB無効化の要求は出力信号を1にセットすること
によって行なう。要求を行なった他プロセツサからのT
LB無効化完了の連絡は入力信号が1になることによっ
て行われる。
さらに、システムを構成するすべてのプロセッサからT
LB無効化完了の連絡を受領した後の、命令フェッチ再
開始要求信号は、1に保持していた出力信号をOにリセ
ットすることによって行なう。
命令フェッチ再開始信号を受領した他プロセツサが通常
の動作を開始したことの通知は、入力信号が0にリセッ
トされることにより行われる。
TLB無効化要求を受は取るプロセッサに関しては、同
図(b)の如く、上記と全く逆の立場となる。即ち、T
’LB無効化要求は入力信号が1にセットされることに
よって行われ、TLB無効化の完了通知は出力信号を1
にセットすることによって行なう。また、命令フェッチ
再開始要求は入力信号がOにリセットされることによっ
て行われ、プロセッサが通常動作に入ったことの連絡は
出力信号を0にリセットすることによって行なう。
以上、本発明の一実施例について説明したが。
アドレス変換バッファ無効化要求命令は、従来のPTL
B命令であってもよく、また他の命令であってもよい。
〔発明の効果〕
本発明により、実記憶装置を共有するマルチプロセッサ
システム上のオペレーティングシステムがアドレス変換
バッファの無効化を必要とする際、ソフトウェア処理と
割込みを用いて各プロセッサにアドレス変換バッファの
無効化処理を依頼する必要がなくなり、アドレス変換バ
ッファ無効化処理に要する時間を大幅に減少させ、処理
効率を向上させることができる。また処理の構造も明解
になる。
【図面の簡単な説明】
第1図は本発明の一実施例の構成図、第2図はアドレス
変換機構の説明図、第3図及び第4図は従来例における
オペレーティングシステム動作のフロー図、第5図はプ
ロセッサ構成テーブルの構成図、第6図は本発明の一実
施例における処理のフロー図、第7図は本発明の一実施
例における信号の意味の説明図である。 11.12・・・命令プロセッサ、13・・・命令ユニ
ット、14・・・実行ユニット、15・・・バッファユ
ニット、16・・・命令フェッチ回路、17・・・アド
レス変換バッファ無効化要求命令判別部、18・・・実
行側’lR1部、19・・・プロセッサ連絡制御部、1
10・・・アドレス変換バッファ、111.27・・・
アドレス変換バッファ制御部、112・・・記憶制御ユ
ニット、113・・・実記憶装置、51・・・プロセッ
サ構成テーブル、52・・・プロセッサ構成テーブルエ
ントリ、53・・・CPUアドレス領域、54・・・動
作状態表示フラグ領域、55・・・プロセッサ間連絡用
フラグ領域、56・・・アドレス変換バッファ無効化要
求フラグ。 第1目 第2図 26 丁L)3 茅3図 第4図 答5図 第6図

Claims (1)

    【特許請求の範囲】
  1. 1、仮想記憶方式を採用し、実記憶装置を共有する複数
    の処理装置を持ち、各処理装置がアドレス変換によって
    論理アドレスを実アドレスに変換する際、アドレス変換
    バッファを用いるマルチプロセッサシステムにおいて、
    該マルチプロセッサシステムを構成する一つのプロセッ
    サにおいてアドレス変換バッファ無効化命令が実行され
    た時に、該マルチプロセッサシステムを構成するプロセ
    ッサにその事実を通知する機構を具備し、事実を通知さ
    れたプロセッサにおいては、該通知に基づき自らのアド
    レス変換バッファを無効化する機構を具備し、実記憶装
    置を共有するマルチプロセッサシステムにおけるアドレ
    ス変換バッファの無効化の処理効率を向上させることを
    特徴とするアドレス変換バッファ無効化方式。
JP62033241A 1987-02-18 1987-02-18 アドレス変換バツフア無効化方式 Pending JPS63201854A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62033241A JPS63201854A (ja) 1987-02-18 1987-02-18 アドレス変換バツフア無効化方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62033241A JPS63201854A (ja) 1987-02-18 1987-02-18 アドレス変換バツフア無効化方式

Publications (1)

Publication Number Publication Date
JPS63201854A true JPS63201854A (ja) 1988-08-19

Family

ID=12380973

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62033241A Pending JPS63201854A (ja) 1987-02-18 1987-02-18 アドレス変換バツフア無効化方式

Country Status (1)

Country Link
JP (1) JPS63201854A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06187241A (ja) * 1992-10-09 1994-07-08 Internatl Business Mach Corp <Ibm> 変換索引バッファのコヒーレンス維持方法及びシステム
JPH06231043A (ja) * 1992-12-22 1994-08-19 Internatl Business Mach Corp <Ibm> 仮想記憶システムにおけるデータ転送装置及びその方法
JP2015523650A (ja) * 2012-06-15 2015-08-13 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation ローカル・クリア制御

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06187241A (ja) * 1992-10-09 1994-07-08 Internatl Business Mach Corp <Ibm> 変換索引バッファのコヒーレンス維持方法及びシステム
JPH06231043A (ja) * 1992-12-22 1994-08-19 Internatl Business Mach Corp <Ibm> 仮想記憶システムにおけるデータ転送装置及びその方法
JP2015523650A (ja) * 2012-06-15 2015-08-13 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation ローカル・クリア制御

Similar Documents

Publication Publication Date Title
JP2863693B2 (ja) 仮想記憶システムにおけるデータ転送装置及びその方法
US11822786B2 (en) Delayed snoop for improved multi-process false sharing parallel thread performance
US8171230B2 (en) PCI express address translation services invalidation synchronization with TCE invalidation
US20020065989A1 (en) Master/slave processing system with shared translation lookaside buffer
US5497480A (en) Broadcast demap for deallocating memory pages in a multiprocessor system
JPH03135641A (ja) マイクロプロセッサ
JPH07141299A (ja) コンピュータシステムを二重プロセッサシステムとして利用する装置及びその方法
US6742103B2 (en) Processing system with shared translation lookaside buffer
US5339397A (en) Hardware primary directory lock
US5615327A (en) Apparatus and method for controlling the initiating of a synchronization protocol for synchronizing a plurality of processors in a multi-processor system
JP2695017B2 (ja) データ転送方式
US20020087765A1 (en) Method and system for completing purge requests or the like in a multi-node multiprocessor system
CN115269457A (zh) 使得缓存能够在支持地址转换服务的设备内存储进程特定信息的方法和装置
JP6663108B2 (ja) 物理演算処理装置、情報処理装置及び情報処理装置の制御方法
US5727179A (en) Memory access method using intermediate addresses
JPS63201854A (ja) アドレス変換バツフア無効化方式
JPS63223846A (ja) キヤツシユ・メモリ−
EP1262875A1 (en) Master/slave processing system with shared translation lookaside buffer
JP2845754B2 (ja) マルチプロセッサシステム
JPS63286944A (ja) アドレス変換バツフア無効化方式
JPH05282207A (ja) キャッシュメモリ無効化制御方式
EP1262876A1 (en) Multiprocessing system with shared translation lookaside buffer
JPH0449723Y2 (ja)
JPS63191254A (ja) バツフア無効化方式
JPS63180171A (ja) 情報処理装置