JPH03105536A - アドレス変換方式 - Google Patents

アドレス変換方式

Info

Publication number
JPH03105536A
JPH03105536A JP1244321A JP24432189A JPH03105536A JP H03105536 A JPH03105536 A JP H03105536A JP 1244321 A JP1244321 A JP 1244321A JP 24432189 A JP24432189 A JP 24432189A JP H03105536 A JPH03105536 A JP H03105536A
Authority
JP
Japan
Prior art keywords
address
page
table entry
segment
virtual
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
JP1244321A
Other languages
English (en)
Inventor
Atsushi Ike
敦 池
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP1244321A priority Critical patent/JPH03105536A/ja
Publication of JPH03105536A publication Critical patent/JPH03105536A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔概要〕 動的アドレス変換方式の改良に関し、 先行DATを効率よく行い得るようになったアドレス変
換方式を提供することを目的とし、現在のページのペー
ジ・テーブル・エントリをアクセスして実アドレスに変
換した後、続くページのページ・エントリ・アドレスを
も連続的にアクセスして次の仮想ページ・アドレスも実
ページ・アドレスに変換し、これにより、次ページの先
行DATをページ変換のみで高速に且つ容易に実現可能
とするものである。
〔産業上の利用分野〕
本発明は、仮想記憶方式を採用する計算機システム、特
に動的アドレス変換方式の改良に関するものである。
〔従来技術と問題点〕
第4図はDAT機構(動的アドレス変換機構)の概略を
説明する図である。同図において、1は主記憶、2は論
理アドレス・レジスタ、3はTLB(変換索引バッファ
)、4は絶対アドレス・レジスタ、5はキャッシュ記憶
、6はキャッシュ・データ・レジスタ、7はDAT機構
、8は変換論理アドレス・レジスク、9はTLBアドレ
ス・レジスタ、10はテーブル・レジスタ、11はテー
ブル・アドレス・レジスタ、12はセグメント・テーブ
ル・オリジン・レジスタ、IUは命令ユニット、EUは
演算ユニットをそれぞれ示している。
論理アドレス・レジスタ2は、命令ユニット■Uから送
られてきたインストラクションまたはオペランド・デー
タの仮想アドレスがセットされる。
論理アドレス・レジスタ2の仮想アドレスは、TLBに
よって実アドレス(場合によっては、絶対アドレス,シ
ステム絶対アドレス)に変換され、変換結果が絶対アド
レス・レジスタ4にセットされる。絶対アドレス・レジ
スタ4のアドレスによってキャッシュ記憶5がアクセス
される。読出しの場合には、キャッシュ記憶5から読み
出されたデータがキャッシュ・データ・レジスタ6にセ
ットされ、命令ユニットIUまたは演算ユニッ}EUに
送られる。キャッシュ記憶5に所望のデータが存在しな
い場合には、主記憶1から所望のデータが読み出され、
キャッシュ記憶5に格納され、しかる後にキャッシュ・
データ・レジスタ6にセツトされる。
TLB3に、論理アドレス・レジスタ2にセットされた
仮想アドレスが存在しない場合には、DAT要求がDA
T機構7に送られる。なお、DATi構7は、マイクロ
プログラムまたはハードウェアによって制御される。D
AT要求の中には変換対象の仮想アドレスが存在するが
、この変換対象の仮想アドレスは変換論理アドレス・レ
ジスタ8にセットされる。仮想アドレスは、セグメント
・インデックスSX,ページ・インデックスPXおよび
バイト・インデックスBXから構威されている。セグメ
ント・テーブル・オリジン・レジスタ12には、命令ユ
ニットIUから送られてきたセグメント・テーブル・オ
リジンがセットされる。
DAT機構7は、レジスタ8にセットされている仮想ア
ドレスのセグメント・インデックスSXとレジスタ12
のセグメント,・テーブル・オリジンとに基づいて、セ
グメント・テーブル・エントリ・アドレスを生威し、こ
れをテーブル・アドレス・レジスタ11にセットし、テ
ーブル要求をキャッシュ記憶5に送る。このテーブル要
求を受け取ると、キャッシュ記憶5は該当するセグメン
ト・テーブル・エントリをDAT機構7に送り返す。
このセグメント・テーブル・エントリはテーブル・レジ
スタ10に格納される。セグメント・テーブル・エント
リには、ページ・テーブルの先頭アドレスが記入されて
いる。
次に、DAT機構7は、レジスタ8に格納されている仮
想アドレスのページ・インデックスPXと、テーブル・
レジスタ10に格納されているページ・テーブルの先頭
アドレスとに基づいて、ページ・テーブル・エントリ・
アドレスを生威し、これをテーブル・アドレス・レジス
タ11にセットし、テーブル要求をキャッシュ記憶5に
送る。
このテーブル要求を受け取ると、キャッシュ記憶5は該
当するページ・テーブル・エントリをDATi構7に送
り返す。このページ・テーブル・エントリはテーブル・
レジスタ10に格納される。
ページ・テーブル・エントリには、ページの先頭アドレ
ス(実アドレス)が記入されている。
次に、DAT機構7は、レジスタ8に格納されている仮
想アドレスのバイト・インデックスBXと、テーブル・
レジスタ10に格納されている実ページ・アドレスとを
合威して、仮想アドレスに対応する実アドレスを生戒す
る。この実アドレスはTLBアドレス・レジスタ9にセ
ットされ、TLB Write要求がTLB3に送られ
る。この要求を受け取ると、TLB3は、実アドレスと
仮想アドレスの対を書き込む。
第5図は従来のDAT処理フローを示す図である。DA
T処理は下記のようにして行われる。なお、変換テーブ
ルは全て4バイト長のエントリからなるものとする。
■ TLBにξスヒ・冫卜する。
■ DATが起動され、ミスした仮想アドレスが送られ
る。
■ DAT機構7は、仮想アドレスからセグメント・イ
ンデックスSXを抽出すると共にテーブル・エントリ長
の4バイトを掛け、システムのセグメント・テーブルの
先頭アドレスSTOに加算することでセグメント・テー
ブル・エントリ・アドレスを作威し、テーブル・アドレ
ス・レジスタ11に格納してキャッシュ記憶5にセグメ
ント・テーブル・エントリ・フエツチを要求する。
■ キャッシュ記憶5よりセグメント・テーブル・エン
トリを受け取ると、続いてDATI構7は、仮想アドレ
スからページ・インデックスPXを抽出して4を掛け、
セグメント・テーブル・エントリから抽出したページ・
テーブルの先頭アドレスPTOに加算することでページ
・テーブル・エントリ・アドレスを作或し、テーブル・
アドレス・レジスタ11に格納してキャンシュ記憶5に
ページ・テーブル・エントリ・フェッチを要求する。
■ キャッシュ記憶5よりページ・テーブル・エントリ
を受け取ると、仮想アドレスからバイト・インデックス
BXを抽出し、これをページ・テーブル・エントリから
抽出したページ・フレームの先頭アドレス(PFO)に
加算することで実アドレスを作威し、TLBアドレス・
レジスタ9に格納してTLB機構3に登録を要求する。
なお、TLBに実アドレスのページ部分のみが格納され
る場合には、バイト・インデックスBXの加算は必要な
い。
■ DATを終了する。
■ システムは、TLBの登録を受けて、再度TLBを
索引し直して処理を再開する。
〔発明が解決しようとする課題〕
上述のように、仮想記憶方式を採用する計算機システム
では、仮想アドレスから実アドレスへの変換を行うDA
T機構を有している。DAT機構は、与えられた仮想ア
ドレスをもとに主記憶上の変換テーブルを索引すること
により実アドレスを得るものであるが、変換テーブルが
主記憶に存在するために、変換テーブルのアクセスは時
間のかかるものとなる。また、通常は変換テーブルはセ
グメント・テーブルとページ・テーブルより構威され、
変換プロセスもセグメント変換とページ変換の2段階の
プロセスを必要とする。それぞれの段階で変換テーブル
の主記憶アドレスの作或,テーブルの索引.保護機構・
例外事象のチェック等を行うため、DATによる処理時
間は非常に大きいものとなる。
さて、一般的にデータやインストラクションは仮想アド
レス上で連続して配置される場合が多く、また、局所性
もあることから、或るページをアクセスした際に次にア
クセスに行くページとしては、現在のページの近く、特
に連続した次のページにアクセスに行く可能性が最も高
い。従って、TLBを有するシステムでは、前以て次の
ページを変fA(先行DAT)Lておけば、次ページの
TLBξスがなくなり、DATによるペナルティを大き
く削減することが可能となる。しかし従来においては・
、このような次ページの先行DATを行うに当たって、
そのタイミングや他処理との干渉などに問題があり、有
効となる手段がなかった。
本発明は、この点に鑑みて創作されたものであって、先
行DATを効率よく行い得るようになったアドレス変換
方式を提供することを目的としている。
〔課題を解決するための手段〕
上述したように、データやインストラクションの傾向と
して、近い将来に連続した次のページにアクセスに行く
可能性が高いため、前以て次のページの変換を行ってお
くことによって、TLBξスが低減し、DATによるペ
ナルティを大きく削減することが可能となる。
ところで、変換テーブルは仮想アドレスから一連のフィ
ールドを抜き出してテーブル・インデックスとして使用
される場合が多く、この場合、仮想アドレス上の連続し
たセグメント/ページがテーブル上で隣合うことになる
。従って、同じセグメント内の連続したページはページ
・テーブル上も連続する。
本発明は、この点に着目したものであり、本発明のアド
レス変換方式は、 (a)  動的アドレス変換の対象となる仮想アドレス
のセグメント・インデックスとセグメント・テーブル・
オリジンとに基づいてセグメント・テープル・エントリ
・アドレスを算出し、該セグメント・テーブル・エント
リ・アドレスに従ってセグメント・テーブル・エントリ
を求め、 (b)  求めたセグメント・テーブル・エントリの内
容と上記仮想アドレスのページ・インデックスとに基づ
いてページ・テーブル・エントリ・アドレスを算出し、
該ページ・テーブル・エントリ・アドレスに従ってペー
ジ・テーブル・エントリを求め、 (c)  求めたページ・テーブル・エントリの内容と
上記仮想アドレスのバイト・インデックスとに基づいて
上記仮想アドレスに対応する実アドレスを算出し、該実
アドレスと対応する仮想アドレスとを対にして変換索引
バッファに登録し、(d)  (b)で求めたページ・
テーブル・エントリ・アドレスにページ・テーブル・エ
ントリ長を加えるとで続く次のページ・テーブル・エン
トリ・アドレスを算出し、該ページ・テーブル・エント
リ・アドレスに従ってページ・テーブル・エントリを求
め、 (e)  (d)で求めたページ・テーブル・エントリ
の内容と上記仮想アドレスのバイト・インデックスとに
基づいて実アドレスを算出し、該実アドレスと対応する
仮想アドレスとを対にして変換索引バッファに登録する ことを特徴とするものである。
〔実施例〕
第1図は本発明のDAT処理フローを示す図である。以
下に示すように、■ないし■は従来方式と変わりはない
■ TLBにミス・ヒットする。
■ DATが起動され、ξスした仮想アドレスが送られ
る。
■ DAT機構7は、仮想アドレスからセグメント・イ
ンデックスSXを抽出すると共にテーブル・エントリ長
の4バイトを掛け、システムのセグメント・テーブルの
先頭アドレスSTOに加算することでセグメント・テー
ブル・エントリ・アドレスを作威し、テーブル・アドレ
ス・レジスタ11に格納してキャッシュ記憶5にセグメ
ント・テーブル・エントリ・フェッチを要求する。
■ キャッシュ記憶5よりセグメント・テーブル・エン
トリを受け取ると、続いてDAT機構7は、仮想アドレ
スからページ・インデックスPXを抽出して4を掛け、
セグメント・テーブル・エントリから抽出したページ・
テーブルの先頭アドレスPTOに加算することでページ
・テーブル・エントリ・アドレスを作威し、テーブル・
アドレス・レジスタ1lに格納してキャッシュ記憶5に
ページ・テーブル・エントリ・フェッチを要求する。
■ キャッシュ記憶5よりページ・テーブル・エントリ
を受け取ると、仮想アドレスからバイト・インデックス
BXを抽出し、これをページ・テーブル・エントリから
抽出したページ・フレームの先頭アドレス(PFO)に
加算することで実アドレスを作威し、TLBアドレス・
レジスタ9に格納してTLB機構3に登録を要求する。
なお、TLB機構3に実アドレスのページ部分のみが格
納される場合には、バイト・インデックスBXの加算は
必要ない。
■ 処理フロー■を終えた後、テーブル・アドレス・レ
ジスタ11の内容に4を加算することで、次のページの
ページ・テーブル・エントリ・アドレスを作威し、キャ
ッシュ記憶5に次ページのページ・テーブル・エントリ
・フェッチを要求する。
■ キャッシュ記憶5より次ページのページ・テーブル
・エントリを受け取ると、処理フロー■と同様にして次
ページの実アドレスを作或し、TLBアドレス・レジス
タ9に格納してTLB機構3に登録する。ここでTLB
に対しては、特に次ページの実アドレスであることを示
す信号(Write Next Page)を上げ、T
LB3はこれを受けて次ページの実アドレスとして登録
する。
■ DATを終了する。
■ システムは、現ページのTLB登録(処理フロー■
)を受けた時点で、再度TLBを索引し直して処理を再
開する。
第2図はTLBとDAT間のやりとりを示す図である。
TLB3とDAT機構7との間には、DAT要求信号線
やTLB Write (TLB Adrs)要求信号
線, TLB Write Next Page要求信
号線などが設けられている。TLB3からDAT要求が
送られて来ると、DAT機構7は、DAT要求で指示さ
れた仮想アドレスを実アドレスに変換し、この実アドレ
スをTLBアドレス・レジスタ9に書き込み、TLB 
Write (TLB Adrs)要求信号をオンする
。次に、上記仮想アドレスが存在するページの次のペー
ジに対応する実アドレスを求め、この実アドレスをTL
Bアドレス・レジスタ9に書込み、TLB Write
−Next Page要求信号をオンする。
第3図はTLB機構の概略を示す図である。同図ニオイ
て、21は加算器、22はレジスタ、23と24はAN
D回路、25はOR回路、26はゲート、27はOR@
路、28はTLBのメモリ部、29は比較回路をそれぞ
れ示している。
TU REQ ACKは命令ユニッI−10からの要求
に対する応答を表す。In REQ ACKがオンにな
った時に、論理アドレス・レジスタ2に命令ユニットI
Uからの仮想アドレスがセットされる。加算器21の一
方の入力には論理アドレス・レジスタ2の出力が人力さ
れ、他方の入力には4Kが入力される。
なお、ページの大きさは4Kである。加算器21の出力
は、比較回路29が果ス・ヒットを出力した時に、レジ
スタ22にセットされる。論理アドレス・レジスタ2の
出力は、ゲート26の否定側出力が“1゜の時に、AN
D回路23を介してOR回路25に入力される。また、
ゲート26の肯定側出力が“1“の時には、レジスタ2
2の出力がAND回路24を介してOR回路25に人力
される。OR回路25の出力は、メモリ部28のアドレ
ス入力部およびデータ入力部(仮想アドレス側)に送ら
れと共に、DAT論理アドレスとしてDAT機構7に送
られる.TLB Write要求信号とTLB Wri
te Next Page要求信号はOR回路27に入
力される。OR回路27の出力がオンになると、仮想ア
ドレスと実アドレスとの対がメモリ28に格納される。
TLB Write Next Page要求信号がオ
ンになると、ゲート26の肯定側出力は′1゛になり、
否定側出力はI O +になる。     論理アドレ
ス・レジスタ2に仮想アドレスがセットされると、この
仮想アドレスでTLBが索引される。ヒットのときには
、メモリ部28から読み出された実アドレスが絶対アド
レス・レジスタ4にセントされる。
5ス・ヒットの場合にはDAT要求がオンする。
DAT機構7は、DAT要求がオンすると、論理アドレ
ス・レジスタ22の仮想アドレスを実アドレスに変換し
、この実アドレスをTLBアドレス・レジスタ9にセッ
トし、TLB Hrite要求信号をオンする。TLB
 Write要求信号がオンすると、論理アドレス・レ
ジスタ2の仮想アドレスとDAT機構7から送られて来
た実アドレスがメモリ部28に格納される。
DAT機構7は、続いて次ページの実アドレスを生成し
、これをTLBアドレス・レジスタ9にセットし、TL
B Write Next Page要求信号をオンす
る。TLB Write Next Page要求信号
がオンすると、次ページの仮想アドレスと次ページの実
アドレスとの対がメモリ部28に格納される。
〔発明の効果〕
以上の説明から明らかなように、本発明によれば、先行
DATを効率よく行うことが出来、TLBのミス・ヒッ
ト率を減少することが出来る。
ント・オリジン・レジスタ、rU・・・命令ユニット、
EU・・・演算ユニット。

Claims (1)

  1. 【特許請求の範囲】 (a)動的アドレス変換の対象となる仮想アドレスのセ
    グメント・インデックスとセグメント・テーブル・オリ
    ジンとに基づいてセグメント・テーブル・エントリ・ア
    ドレスを算出し、該セグメント・テーブル・エントリ・
    アドレスに従ってセグメント・テーブル・エントリを求
    め、 (b)求めたセグメント・テーブル・エントリの内容と
    上記仮想アドレスのページ・インデックスとに基づいて
    ページ・テーブル・エントリ・アドレスを算出し、該ペ
    ージ・テーブル・エントリ・アドレスに従ってページ・
    テーブル・エントリを求め、 (c)求めたページ・テーブル・エントリの内容と上記
    仮想アドレスのバイト・インデックスとに基づいて上記
    仮想アドレスに対応する実アドレスを算出し、該実アド
    レスと対応する仮想アドレスとを対にして変換索引バッ
    ファに登録し、 (d)(b)で求めたページ・テーブル・エントリ・ア
    ドレスにページ・テーブル・エントリ長を加えることで
    続く次のページ・テーブル・エントリ・アドレスを算出
    し、該ページ・テーブル・エントリ・アドレスに従って
    ページ・テーブル・エントリを求め、 (e)(d)で求めたページ・テーブル・エントリの内
    容と上記仮想アドレスのバイト・インデックスとに基づ
    いて実アドレスを算出し、該実アドレスと対応する仮想
    アドレスとを対にして変換索引バッファに登録する ことを特徴とするアドレス変換方式。
JP1244321A 1989-09-20 1989-09-20 アドレス変換方式 Pending JPH03105536A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1244321A JPH03105536A (ja) 1989-09-20 1989-09-20 アドレス変換方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1244321A JPH03105536A (ja) 1989-09-20 1989-09-20 アドレス変換方式

Publications (1)

Publication Number Publication Date
JPH03105536A true JPH03105536A (ja) 1991-05-02

Family

ID=17116983

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1244321A Pending JPH03105536A (ja) 1989-09-20 1989-09-20 アドレス変換方式

Country Status (1)

Country Link
JP (1) JPH03105536A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005272035A (ja) * 2004-03-23 2005-10-06 New Delta Ind Co 移動台車
JP2006214229A (ja) * 2005-02-07 2006-08-17 Chugoku Electric Power Co Inc:The 柱上組立式作業台

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005272035A (ja) * 2004-03-23 2005-10-06 New Delta Ind Co 移動台車
JP2006214229A (ja) * 2005-02-07 2006-08-17 Chugoku Electric Power Co Inc:The 柱上組立式作業台

Similar Documents

Publication Publication Date Title
US8151085B2 (en) Method for address translation in virtual machines
JP2589713B2 (ja) データプロセッサ及びデータ処理システム
KR960001946B1 (ko) 우선 변환 참조버퍼
KR920008427B1 (ko) 마이크로프로세서
CN112416817B (zh) 预取方法、信息处理装置、设备以及存储介质
JP2575598B2 (ja) マルチプロセッサ・コンピュータ・システムのシステム・メモリの並行性を増大する方法およびシステム
KR910001314B1 (ko) 데이타 처리 시스템에서의 가상 메모리 사용방법
US5341485A (en) Multiple virtual address translation per computer cycle
JPH0550776B2 (ja)
JPS6167160A (ja) 仮想アドレス変換装置
JPH03105536A (ja) アドレス変換方式
Hua et al. Early resolution of address translation in cache design
JPH04335431A (ja) 情報処理装置
JPH0552539B2 (ja)
JPS601658B2 (ja) アドレス変換制御方式
JPH0383150A (ja) アドレス変換機構付キャッシュ装置の制御方式
JPS63751A (ja) プリフエツチ制御方式
JP2501353B2 (ja) プリフェッチ制御方式
JPH07334422A (ja) キャッシュメモリ装置
JPS6410858B2 (ja)
JPS63240651A (ja) キヤツシユメモリ
JPH07117918B2 (ja) データ処理システム
JPH04106645A (ja) キャッシュメモリのアドレス処理方法
JPS6010336B2 (ja) アドレス比較方式
JPH0573424A (ja) 高速アドレス変換方式