JPH03201048A - データ処理装置 - Google Patents
データ処理装置Info
- Publication number
- JPH03201048A JPH03201048A JP1343755A JP34375589A JPH03201048A JP H03201048 A JPH03201048 A JP H03201048A JP 1343755 A JP1343755 A JP 1343755A JP 34375589 A JP34375589 A JP 34375589A JP H03201048 A JPH03201048 A JP H03201048A
- Authority
- JP
- Japan
- Prior art keywords
- tlb
- address
- register
- contents
- field
- 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
Links
- 238000006243 chemical reaction Methods 0.000 abstract description 3
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 2
- BDEDPKFUFGCVCJ-UHFFFAOYSA-N 3,6-dihydroxy-8,8-dimethyl-1-oxo-3,4,7,9-tetrahydrocyclopenta[h]isochromene-5-carbaldehyde Chemical compound O=C1OC(O)CC(C(C=O)=C2O)=C1C1=C2CC(C)(C)C1 BDEDPKFUFGCVCJ-UHFFFAOYSA-N 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000000034 method Methods 0.000 description 1
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は、アドレス変換バッファ(TLB)を有するデ
ータ処理装置システムに関する。
ータ処理装置システムに関する。
アドレス変換を高速に行うためTLBを用いることは、
周知である。例えば、特開昭63−177239号公報
には、論理アドレスの一部を仮想計算機システムにおけ
るゲスト仮想計算機の識別情報により修飾してアドレス
変換対を索引することが記載されている。この技術によ
れば、ある一つのゲスト仮想計算機(ゲストVM)がT
LBにアドレス変換対を登録した後、他のゲストVMに
制御が移され、上記変換対を登録した論理アドレスと同
一の論理アドレスによってTLBの索引を行う際、TL
B索引アドレスが修飾されるため。
周知である。例えば、特開昭63−177239号公報
には、論理アドレスの一部を仮想計算機システムにおけ
るゲスト仮想計算機の識別情報により修飾してアドレス
変換対を索引することが記載されている。この技術によ
れば、ある一つのゲスト仮想計算機(ゲストVM)がT
LBにアドレス変換対を登録した後、他のゲストVMに
制御が移され、上記変換対を登録した論理アドレスと同
一の論理アドレスによってTLBの索引を行う際、TL
B索引アドレスが修飾されるため。
前記の変換対は、リプレースされない。したがって前記
ゲストVMに制御が戻った場合に、該変換対はTLBに
存在し、処理性能上のオーバーヘッドが生じない。
ゲストVMに制御が戻った場合に、該変換対はTLBに
存在し、処理性能上のオーバーヘッドが生じない。
論理アドレスの一部を用いて、索引するセット・アソシ
アティブ方式のTLBを用いた場合、上記従来技術は、
仮想計算システムにおいては、ゲストVMの処理性能上
のオーバーヘッドを発生させることはない。しかし多重
仮想アドレス空間における仮想アドレッシングを支援す
るデータ処理システムにおいては、あるlっのアドレス
空間、もしくはデータ空間上のTLB索引により、変換
対を登録した後、異なるアドレス空間もしくは、データ
空間上で、前記空間上のアドレス変換対登録アドレスと
同一の論理アドレスでTLBを索引した場合、該変換対
をリプレースし、新たに登録することになる。
アティブ方式のTLBを用いた場合、上記従来技術は、
仮想計算システムにおいては、ゲストVMの処理性能上
のオーバーヘッドを発生させることはない。しかし多重
仮想アドレス空間における仮想アドレッシングを支援す
るデータ処理システムにおいては、あるlっのアドレス
空間、もしくはデータ空間上のTLB索引により、変換
対を登録した後、異なるアドレス空間もしくは、データ
空間上で、前記空間上のアドレス変換対登録アドレスと
同一の論理アドレスでTLBを索引した場合、該変換対
をリプレースし、新たに登録することになる。
多重仮想アドレス空間システム、さらに実行中のプログ
ラムが複数の仮想アドレス空間を同時にアクセスするこ
とが可能なシステムにおいては、その論理アドレス使用
範囲が、各アドレス、データ空間毎に、同一となる頻度
が高い場合には、索引アドレスに対してTLBのリプレ
ース頻度が増大し、命令処理性能上余計なオーバーヘッ
ドが生じるという問題があった。
ラムが複数の仮想アドレス空間を同時にアクセスするこ
とが可能なシステムにおいては、その論理アドレス使用
範囲が、各アドレス、データ空間毎に、同一となる頻度
が高い場合には、索引アドレスに対してTLBのリプレ
ース頻度が増大し、命令処理性能上余計なオーバーヘッ
ドが生じるという問題があった。
本発明は、前記問題点を解決するためになされたもので
ある。
ある。
本発明の目的は、TLBにおけるリプレース頻度を減少
させたデータ処理装置を提供することにある。
させたデータ処理装置を提供することにある。
前記目的を達成するために、本発明は、TLBを索引す
るための論理アドレス部分を、セグメントテーブル記述
子の内容により修飾し、この修飾されたアドレスでTL
Bを索引する。
るための論理アドレス部分を、セグメントテーブル記述
子の内容により修飾し、この修飾されたアドレスでTL
Bを索引する。
前述した手段によれば、TLBの索引アドレスを、処理
装置が実行しているアドレス空間、データ空間上の論理
アドレスと、該空間の識別情報であるセグメントテーブ
ル記述子の内容とで決定することにより、ある1つのア
ドレス空間もしくはデータ空間上の論理アドレスによっ
て、TLBにアドレス変換対を登録した後、異なるアド
レス空間もしくはデータ空間上の前記論理アドレスと同
−輪理アドレスによってTLBの索引を行う際、TLB
索引アドレスは修飾され、同−輪理アドレスであっても
異なるTLBエントリを索引することになるので、前記
登録された変換対は、リプレースされない。
装置が実行しているアドレス空間、データ空間上の論理
アドレスと、該空間の識別情報であるセグメントテーブ
ル記述子の内容とで決定することにより、ある1つのア
ドレス空間もしくはデータ空間上の論理アドレスによっ
て、TLBにアドレス変換対を登録した後、異なるアド
レス空間もしくはデータ空間上の前記論理アドレスと同
−輪理アドレスによってTLBの索引を行う際、TLB
索引アドレスは修飾され、同−輪理アドレスであっても
異なるTLBエントリを索引することになるので、前記
登録された変換対は、リプレースされない。
再び前記アドレス空間もしくはデータ空間上の論理アド
レスによるTLB索引が行われた場合は、該索引結果は
、’TLBに存在′となり、再びアドレス変換を行うこ
となく、命令処理性能上余計なオーバーヘッドが生じな
い。特に多重仮想アドレス空間システム、さらに実行中
のプログラムが複数の仮想アドレス空間を同時にアクセ
スすることが可能なシステムにおいて、その論理アドレ
スの使用範囲が各アドレス空間、データ空間毎に同一と
なる頻度が高い場合、すなわちTLB索引アドレスが同
一となる頻度が大きい場合に有効であり、命令処理性能
を向上させることができる。
レスによるTLB索引が行われた場合は、該索引結果は
、’TLBに存在′となり、再びアドレス変換を行うこ
となく、命令処理性能上余計なオーバーヘッドが生じな
い。特に多重仮想アドレス空間システム、さらに実行中
のプログラムが複数の仮想アドレス空間を同時にアクセ
スすることが可能なシステムにおいて、その論理アドレ
スの使用範囲が各アドレス空間、データ空間毎に同一と
なる頻度が高い場合、すなわちTLB索引アドレスが同
一となる頻度が大きい場合に有効であり、命令処理性能
を向上させることができる。
以下、本発明の一実施例を図面を用いて具体的に説明す
る。
る。
第1図は、多重仮想アドレス空間における仮想アドレッ
シングを支援するデータ処理装置のうち、本発明の関連
する部分を示している。
シングを支援するデータ処理装置のうち、本発明の関連
する部分を示している。
第1図において、1は命令実行部であり、TLBへのア
クセス要求が発行される。8は、TLB索引を仮想アド
レスまたは実アドレスのいづれで行うかを示すリアルモ
ードレジスタ(Rレジスタ)であり、リアルモード(実
アドレス)時にlがセットされる。9はVMモードレジ
スタ(Gレジスタ)であり、仮想計算機としてTLB索
引を行う場合に1がセットされる。10は、VMナンバ
レジスタであり、V M N oは、例えばS I E
(StartInterpretive Execu
tion)命令の第2オペランドである状態記述子アド
レスから作成することが可能である。アドレスレジスタ
11は、例えば31ビツトからなり、上位の第1〜19
ビツトがページアドレスであり、アドレス変換を受ける
ビットであり、第20〜31ビツトが、絶対アドレスと
共通なビットである。7は、セグメントテーブル記述子
(STD)の内のプライベート空間制御ビット(Pビッ
ト)と、セグメントテーブルオリジン(STO)レジス
タである。命令実行部1は、TLB索引要求を発行する
毎にアドレスレジスタ11に論理アドレスを、またST
Dの内PビットとSToをPビットSTOレジスタ7に
セットする。
クセス要求が発行される。8は、TLB索引を仮想アド
レスまたは実アドレスのいづれで行うかを示すリアルモ
ードレジスタ(Rレジスタ)であり、リアルモード(実
アドレス)時にlがセットされる。9はVMモードレジ
スタ(Gレジスタ)であり、仮想計算機としてTLB索
引を行う場合に1がセットされる。10は、VMナンバ
レジスタであり、V M N oは、例えばS I E
(StartInterpretive Execu
tion)命令の第2オペランドである状態記述子アド
レスから作成することが可能である。アドレスレジスタ
11は、例えば31ビツトからなり、上位の第1〜19
ビツトがページアドレスであり、アドレス変換を受ける
ビットであり、第20〜31ビツトが、絶対アドレスと
共通なビットである。7は、セグメントテーブル記述子
(STD)の内のプライベート空間制御ビット(Pビッ
ト)と、セグメントテーブルオリジン(STO)レジス
タである。命令実行部1は、TLB索引要求を発行する
毎にアドレスレジスタ11に論理アドレスを、またST
Dの内PビットとSToをPビットSTOレジスタ7に
セットする。
TLB4は、セットアソシアティブ方式、すなわちカラ
ムアドレスによって選択された1つまたは、複数のエン
トリはローと呼ばれ、このローが索引または登録の対象
となる。本発明の実施例ではカラム数5工2.ロー数1
の512エントリを持つTLB構成としているが、ロー
数を複数とすること等も可能である。
ムアドレスによって選択された1つまたは、複数のエン
トリはローと呼ばれ、このローが索引または登録の対象
となる。本発明の実施例ではカラム数5工2.ロー数1
の512エントリを持つTLB構成としているが、ロー
数を複数とすること等も可能である。
TLB4の各エントリは、有効フィールド(V)、実ア
ドレスフィールド(R)、共通セグメントフィールド(
C)、セグメントテーブルオリジンフィールド(STO
)、仮想アドレスフィールド(■A)、絶対アドレスフ
ィールド(PA)、ゲストフィールド(G)、VMナン
バフィールド(VMN)、プライベート空間制御フィー
ルド(P)から構成される。
ドレスフィールド(R)、共通セグメントフィールド(
C)、セグメントテーブルオリジンフィールド(STO
)、仮想アドレスフィールド(■A)、絶対アドレスフ
ィールド(PA)、ゲストフィールド(G)、VMナン
バフィールド(VMN)、プライベート空間制御フィー
ルド(P)から構成される。
■フィールドはこのエントリが有効か無効かを示す1ビ
ツトのフィールドであり、エントリが有効なとき1とな
る。Gフィアルドは、このエントリがゲスト仮想計算機
(VM)またはホストのいづれのアドレス変換対である
かを示すビットであり、ゲストVMのときlとなる。V
MNフィールドは、Cフィールドが1のとき有効である
。Rフィールドは、このエントリが実アドレスまたは仮
想アドレスかを表わす。Cフィールドは、このエントリ
が共通セグメントを用いたアドレス変換対であることを
示す1ビツトのフィールドである。
ツトのフィールドであり、エントリが有効なとき1とな
る。Gフィアルドは、このエントリがゲスト仮想計算機
(VM)またはホストのいづれのアドレス変換対である
かを示すビットであり、ゲストVMのときlとなる。V
MNフィールドは、Cフィールドが1のとき有効である
。Rフィールドは、このエントリが実アドレスまたは仮
想アドレスかを表わす。Cフィールドは、このエントリ
が共通セグメントを用いたアドレス変換対であることを
示す1ビツトのフィールドである。
参照したセグメントテーブルエントリの共通セグメント
が1のとき、このフィールドが1となる。
が1のとき、このフィールドが1となる。
STOフィールドはこのエントリのアドレス変換時のセ
グメントテーブルオリジンを表わす、VAフィールドは
、TLBアクセスのページフレームアドレスのうち、T
LB索引に使用するアドレス以外のビット(1〜10)
を格納するフィールド、PAフィールドは絶対アドレス
のページフレームアドレスの19ビツトを格納する。
グメントテーブルオリジンを表わす、VAフィールドは
、TLBアクセスのページフレームアドレスのうち、T
LB索引に使用するアドレス以外のビット(1〜10)
を格納するフィールド、PAフィールドは絶対アドレス
のページフレームアドレスの19ビツトを格納する。
TLBヒツト判定回路5では、
■二〇レジスタ9とTLB内のCフィールドが一致しか
つ、V M N oレジスタlOの内容とVMNフィー
ルドが一致。
つ、V M N oレジスタlOの内容とVMNフィー
ルドが一致。
■: TLBエントリのVフィールドが1゜■: TL
BエントリのVAフィールドと、アドレスレジスタ11
のビット1〜10が一致。
BエントリのVAフィールドと、アドレスレジスタ11
のビット1〜10が一致。
■: TLBエントリのRフィールドと、Rレジスタ8
が一致。
が一致。
■: TLBフィールドのCフィールドが工でかつP及
びST○レジスタ7のPビットがOもしくは、Cフィー
ルドがOで、STOフィールドとPフィールドの内容が
P及びSTOレジスタ7の内容と一致。
びST○レジスタ7のPビットがOもしくは、Cフィー
ルドがOで、STOフィールドとPフィールドの内容が
P及びSTOレジスタ7の内容と一致。
上記の1〜■5の全てが成立した場合、TLBヒツト1
7が′1′となり、成立しない場合TLBミス18が1
となる。
7が′1′となり、成立しない場合TLBミス18が1
となる。
3は、TLB書込み制御回路であって、アドレス変換に
よるTLB登録、およびTLBエントリの無効化を制御
する。
よるTLB登録、およびTLBエントリの無効化を制御
する。
2は、TLBカラムアドレス修飾回路であり、12はビ
ットセレクタを示す。ピットセレクタ12は、STDの
内のSTOをセットしているSTOレジスタ7の内容か
ら、任意のビットをセレクトする。
ットセレクタを示す。ピットセレクタ12は、STDの
内のSTOをセットしているSTOレジスタ7の内容か
ら、任意のビットをセレクトする。
本発明の実施例では3ビットをセレクトするが、そのビ
ット幅は3ビツト以外の場合も、さらにピットセレクタ
が存在しない場合も容易に類推される。13は、加算器
を示す。アドレスレジスタ11の内容の中で、TLB4
のエントリ選択に用いるビット11〜19はTLB選択
選択部上6り、TLBカラムアドレス修飾回路2に入力
される。
ット幅は3ビツト以外の場合も、さらにピットセレクタ
が存在しない場合も容易に類推される。13は、加算器
を示す。アドレスレジスタ11の内容の中で、TLB4
のエントリ選択に用いるビット11〜19はTLB選択
選択部上6り、TLBカラムアドレス修飾回路2に入力
される。
命令実行部1よりSTO,PがSTOレジスタ7にセッ
トされ、TLBに索引要求が発行されると、TLB選択
選択部上6に、STOレジスタの内容もTLBカラムア
ドレス修飾回路2に入力される。
トされ、TLBに索引要求が発行されると、TLB選択
選択部上6に、STOレジスタの内容もTLBカラムア
ドレス修飾回路2に入力される。
TLBカラムアドレス修飾回路2に入力されたSTOレ
ジスタの内容は、ピットセレクタ12により3ビット選
ばれ、加算器13に入力される。そして、加算器13で
は、TLB選択選択部上6分とピットセレクタ12の出
力14の内容との加算が行われ、該加算結果19はTL
B4のカラムアドレスデコーダ6に入力され、TLB4
の1つのエントリが選択される。加算器13による加算
結果によって最上位に桁上りが発生した場合は、無視し
て加算結果19を得る。
ジスタの内容は、ピットセレクタ12により3ビット選
ばれ、加算器13に入力される。そして、加算器13で
は、TLB選択選択部上6分とピットセレクタ12の出
力14の内容との加算が行われ、該加算結果19はTL
B4のカラムアドレスデコーダ6に入力され、TLB4
の1つのエントリが選択される。加算器13による加算
結果によって最上位に桁上りが発生した場合は、無視し
て加算結果19を得る。
第2図は、加算器13での入力(TLB選択選択部上6
ビットセレクタ出力14)と出力19との関係を表わし
ている。第2図においてはXは、TLB選択部16の出
力内容、yは出力19を表わす。
ビットセレクタ出力14)と出力19との関係を表わし
ている。第2図においてはXは、TLB選択部16の出
力内容、yは出力19を表わす。
第2図では、ピットセレクタの内容によりXに0.64
,128,192,256,320,384.448が
加算される。すなわち、STOの内容によりyが修飾さ
れるため、Xが同一内容であっても、yの値は異なりT
LB索引アドレスが変化することになる。
,128,192,256,320,384.448が
加算される。すなわち、STOの内容によりyが修飾さ
れるため、Xが同一内容であっても、yの値は異なりT
LB索引アドレスが変化することになる。
このように、異なるアドレス空間(すなわちST○レジ
スタ7の内容が異なる)へのTLB索引において、論理
アドレスレジスタ11のTLB選択部16の内容が同一
内容であっても、選択されるTLBエントリは異なるこ
とになる。
スタ7の内容が異なる)へのTLB索引において、論理
アドレスレジスタ11のTLB選択部16の内容が同一
内容であっても、選択されるTLBエントリは異なるこ
とになる。
本発明の実施例によれば、TLBカラムアドレスはTL
Bを索引する論理アドレスとSTDの内容により決定さ
れるため、異なるアドレス空間及びデータ空間へのアク
セスにおいて、論理アドレス中のTLB索引部が同一の
場合でもTLBカラムアドレスは変化し登録されている
アドレス変換対がリプレースされることがなくなり、リ
プレースによる処理性能オーバーヘッドが減少する。
Bを索引する論理アドレスとSTDの内容により決定さ
れるため、異なるアドレス空間及びデータ空間へのアク
セスにおいて、論理アドレス中のTLB索引部が同一の
場合でもTLBカラムアドレスは変化し登録されている
アドレス変換対がリプレースされることがなくなり、リ
プレースによる処理性能オーバーヘッドが減少する。
以上、説明したように、本発明によれば、TLBの索引
アドレスを、参照する論理アドレスとセグメントテーブ
ル記述子の内容により決定するため、異なるアドレス空
間及びデータ空間へのアクセスにおいて、TLB索引論
理アドレス部が同一内容であっても、TLBの内容がリ
プレースされることはない。
アドレスを、参照する論理アドレスとセグメントテーブ
ル記述子の内容により決定するため、異なるアドレス空
間及びデータ空間へのアクセスにおいて、TLB索引論
理アドレス部が同一内容であっても、TLBの内容がリ
プレースされることはない。
従って、論理アドレスの使用範囲が各アドレス空間、デ
ータ空間毎に同一となる頻度が高い場合、すなわちTL
B索引論理アドレスが同一となる頻度が高い場合に、T
LBのリプレース頻度が減少するので、リプレースによ
る処理性能上のオーバーヘッドを減少させることができ
る。
ータ空間毎に同一となる頻度が高い場合、すなわちTL
B索引論理アドレスが同一となる頻度が高い場合に、T
LBのリプレース頻度が減少するので、リプレースによ
る処理性能上のオーバーヘッドを減少させることができ
る。
第1図は、本発明の一実施例を示すブロック図、第2図
は、加算器の入出力関係を示す図である。 図中、工・・・命令実行部、2・・・TLBカラムアド
レス修飾回路、3・・・TLB書込み制御回路、4TL
B、5・・・TLBヒツト判定回路、6・・・TLBカ
ラムアドレスデコーダ、7・・・STO,Pレジスタ、
11・・・アドレスレジスタ、12・・・ピットセレク
タ、13・・・加算器。
は、加算器の入出力関係を示す図である。 図中、工・・・命令実行部、2・・・TLBカラムアド
レス修飾回路、3・・・TLB書込み制御回路、4TL
B、5・・・TLBヒツト判定回路、6・・・TLBカ
ラムアドレスデコーダ、7・・・STO,Pレジスタ、
11・・・アドレスレジスタ、12・・・ピットセレク
タ、13・・・加算器。
Claims (1)
- 1、アドレス変換対を保持し、論理アドレスの一部で索
引されるアドレス変換バッファを備えたデータ処理装置
において、論理アドレスの一部をセグメントテーブル記
述子の内容によって修飾する手段を設け、該手段によっ
て修飾されたアドレスを用いてアドレス変換バッファを
索引することを特徴とするデータ処理装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1343755A JPH03201048A (ja) | 1989-12-27 | 1989-12-27 | データ処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP1343755A JPH03201048A (ja) | 1989-12-27 | 1989-12-27 | データ処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH03201048A true JPH03201048A (ja) | 1991-09-02 |
Family
ID=18363990
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP1343755A Pending JPH03201048A (ja) | 1989-12-27 | 1989-12-27 | データ処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH03201048A (ja) |
-
1989
- 1989-12-27 JP JP1343755A patent/JPH03201048A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5295251A (en) | Method of accessing multiple virtual address spaces and computer system | |
EP0208428B1 (en) | Direct input/output in a virtual memory system | |
US5619671A (en) | Method and apparatus for providing token controlled access to protected pages of memory | |
JP2000122927A (ja) | 仮想領域番号によってアクセスするコンピュ―タ・システム | |
US5555395A (en) | System for memory table cache reloads in a reduced number of cycles using a memory controller to set status bits in the main memory table | |
EP3830719B1 (en) | Binary search procedure for control table stored in memory system | |
JPH04320553A (ja) | アドレス変換機構 | |
JPH0315211B2 (ja) | ||
US5226132A (en) | Multiple virtual addressing using/comparing translation pairs of addresses comprising a space address and an origin address (sto) while using space registers as storage devices for a data processing system | |
JPS61156445A (ja) | Tlbパ−ジ制御方式 | |
JPH02292648A (ja) | 多重仮想記憶システムおよびアドレス制御装置 | |
JPH03201048A (ja) | データ処理装置 | |
JPH03109656A (ja) | 多重仮想アドレス空間アクセス方法およびデータ処理装置 | |
JPS63177239A (ja) | 仮想計算機システム | |
JPH0552539B2 (ja) | ||
US7793069B2 (en) | Indexing for dynamic address translation | |
JPH07117918B2 (ja) | データ処理システム | |
JPH0458347A (ja) | 共有アドレス空間管理方式 | |
JPH02114346A (ja) | Tlbエントリ制御方式 | |
JP2003058421A (ja) | プロセッサ及びコンピュータシステム | |
JPH03141444A (ja) | データ処理装置 | |
JPH0690687B2 (ja) | アドレス変換バッファ制御方式 | |
JPS63172356A (ja) | アドレス変換方式 | |
JPH06309196A (ja) | トレース機能付情報処理装置 | |
JPH0325644A (ja) | 多重仮想アドレス空間制御装置 |