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

アドレス変換方式

Info

Publication number
JPS63269242A
JPS63269242A JP62103761A JP10376187A JPS63269242A JP S63269242 A JPS63269242 A JP S63269242A JP 62103761 A JP62103761 A JP 62103761A JP 10376187 A JP10376187 A JP 10376187A JP S63269242 A JPS63269242 A JP S63269242A
Authority
JP
Japan
Prior art keywords
address
space
conversion
virtual
real
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
JP62103761A
Other languages
English (en)
Inventor
Hiroshi Kawamata
浩 川股
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 JP62103761A priority Critical patent/JPS63269242A/ja
Publication of JPS63269242A publication Critical patent/JPS63269242A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔概要〕 本発明は空間に依存する空間別変換対を一または二以上
の空間毎別に変換牽引バッファ(以下TLBと称する)
に格納するとともに、空間に依存しない共通変換対を別
に格納しているため各TLBに格納できる容量が大きい
ので無効化の回数が減少するとともに、無効化を行う場
合には各TLB毎に行えば良いので無効化の処理速度が
向上することになる。
〔産業上の利用分野〕
本発明はアドレス変換方式に係り、特にシステムに実装
された実記憶装置よりも大きな容量を有する仮想記憶装
置を得るため、実記憶装置をあたかも多重の仮想記憶空
間から成り立っているように仮想記憶装置の仮想アドレ
スを実記憶装置の実アドレスに空間毎に対応づけて変換
するアドレス変換方式に関する。
〔従来の技術〕
従来、アドレス変換は主記憶装置内のテーブルを参照す
ることにより行われていたが変換に相当の時間がかかる
ことから実アドレスと仮想アドレスとの対応の一部をT
 L B (TranslationLookasid
e Buffer  変換索引バッファ)に持たせ、求
める対応がその中にあれば主記憶装置内のテーブルを参
照することなく高速変換を行うようにしている。
第8図はこのようなアドレス変換方式を示すものである
。本例は仮想アドレスと実アドレスとの対応を示す変換
対を格納するTLB51、オペレーティング・システム
の指令により所定数のセグメントを含むセグメント・テ
ーブルの先頭アドレスを格納する制御レジスタ52、当
該セグメント・テーブル先頭アドレスとそれに対応する
空間IDとの対を格納するSTOスタック53、制御レ
ジスタ52に格納されたセグメント・テーブル先頭アド
レスに対応する空間IDを格納する空間IDレジスタ5
4から構成されている。
本例の作用を第9図に基づいて説明する。制御レジスタ
52にセグメントテーブル先頭アドレス5TO−1が格
納されると、STOスタック53は当該5TO−1に対
応する空間ID−Aを出力する。当該空間ID−Aは空
間IDレジスタ54に格納される。
仮想アドレスはセグメント番号とページ番号と変位とに
より特定されるものである。ここで、ページとはアドレ
ス空間を固定長のブロックに分割した最小の単位であり
、その大きさは2キロバイト、または4キロバイトの大
きさを持つ。また、セグメントとは複数のページから成
る単位であり、仮想記憶の容量をページよりも大きな単
位に分割したものであり、その大きさは64キロバイト
または1メガバイトである。
今、仮想アドレスのセグメント番号及びページ番号をV
A−2、変位をPAと表す。
TLB51に格納されている変換対は空間IDに基づい
て仮想アドレスと実アドレスとの対応関係を表わすもの
である。TLB51は空間IDがID−Aであり、仮想
アドレスがVA−2であることから、実アドレスRA−
2を出力する。
〔発明が解決しようとする問題点〕
ところで、従来のアドレス変換方式にあっては、第10
図(a)に示すように制御レジスタ52に5TO−3が
格納された場合にはSTOスタック53中に5TO−3
に対応する空間が存在する場合には、対応する空間ID
の2が空間IDレジスタ54に保持されることになり、
TLB51を検索することにより実アドレスを得ること
ができる。
しかし、次に制御レジスタ52に5TO−4が格納され
た場合にはSTOスタック53中には5TO−4が存在
しないため、いずれかの空間に保持されているSTOを
無効化して、代わりに5TO−4を格納する必要がある
。これは、仮想記憶は実記憶よりも大きな容量を持つた
めにすべての仮想アドレスが実アドレスと一対一に対応
しないからである。
そのため第1O図(a)でスタック・ポインタの示す空
間IDが4である空間を無効化して新たに5TO−4を
格納する。
この場合、TLB51の容量が小さいので各STO毎の
テーブルは余り多くのセグメント番号を含む変換対を登
録することができないため空間の数に対してSTOの数
が増え、無効化の回数が増加し、またテーブルによるア
ドレス変換の回数も多くなり処理速度が低下するという
問題点を有していた。
そこで、本発明は以上の問題点を解決するためになされ
たものであり、高速にアドレス変換を行うことができる
アドレス変換方式を提供することを目的としてなされた
ものである。
〔問題点を解決するための手段〕
以上の問題点を解決するため本発明は第1図に示すよう
に、システムに実装された実記憶装置よりも大きな容量
を有する仮想記憶装置を得るため実記憶装置をあたかも
多重の仮想記憶空間から成り立っているように仮想記憶
装置の仮想アドレスを空間別に実記憶装置の実アドレス
に変換するアドレス変換方式において、 前記空間に依存しない仮想アドレスと実アドレスとの対
応を示す共通変換対を格納する共通域用変換牽引バッフ
ァ2と、一または二以上の前記空間毎別に仮想アドレス
と実アドレスとの対応を示す空間別変換対を格納する空
間別変換牽引バッファ31.・・・、3nと、仮想アド
レスが特定アドレスか否かを判別して、仮想アドレスが
特定アドレスである場合には共通域用変換牽引バッファ
2を選択し、仮想アドレスが特定アドレスでない場合に
は指定された空間に対応した空間別変換牽引バッファ3
1.・・・、3nのいずれかを選択する変換牽引バッフ
ァ選択手段1とを有するものである。
(作用) 仮想アドレスは変換牽引バッファ選択手段1により当該
アドレスが特定アドレスか否かが判別される。ここで、
特定アドレスとは例えばオペレーティング・システムの
制御用プログラムについて使用されるアクセス頻度が高
い重要なアドレスであり、ユーザ用プログラムに対する
ものである。
もし、仮想アドレスが特定アドレスである場合には共通
域用変換牽引バッファ2を選択し、当該仮想アドレスが
特定アドレスでない場合にはオペレーティング・システ
ムにより指定される空間に基づいて当該空間に対応する
空間別変換牽引バッファ31.・・・、3nを選択する
ここで、共通域とはすべての空間で共用している領域で
あるために無効化処理を必要としないものである。
一方、空間別変換牽引バッファ31・・・3nに格納さ
れた空間別変換対は各々一または二以上の空間毎別に仮
想アドレスと実アドレスとの対応を示すものである。
〔実施例〕
次に、本発明に係る実施例を第2図に基づいて説明する
本実施例は仮想アドレスを格納する仮想アドレスレジス
タ10、TLBO等のTLBの選択を行う変換牽引バッ
ファ選択手段11、共通域用変換牽引バッファ12とし
てのTLBO1空間別変空間用変換牽引バッファ131
.134としてのTLBI、2,3,4TLBを検索し
て求められた実アドレスを格納する実アドレスレジスタ
15、仮想アドレスと実アドレスとの対応を示す変換対
がTLBに存在しない場合に当該変換対を作成してTL
Bo、1,2,3.4内に書き加えるテーブル変換手段
16、オペレーティング・システムからの指令によりセ
グメント・テーブル先頭アドレスSTOを格納する制御
レジスタ17、当該STOと空間IDとの対応表を格納
しているSTOスタック18及びSTOスタック18に
より対応付けられた空間IDを格納する空間IDレジス
タ19を有している。
TLBI、2,3.4は各々空間ID1,2、空間ID
3,4.空間ID5,6、空間ID7.8のように空間
2個ずつが対応するものである。
変換牽引バッファ選択手段11は特定アドレスを示す基
準となる特定のセグメント番号を格納しているセグメン
ト番号レジスタ20、当該特定セグメント番号と仮想ア
ドレスのセグメント番号とを比較して特定アドレスを判
別する比較部21、仮想アドレスが特定アドレスの場合
にはTLBOを選択し、仮想アドレスが特定アドレスで
ない場合には空間IDに基づいてセレクタ24に当該空
間IDに対応する二進数< b、 、 b工。
b2)を出力する空間ID比較処理部23及び当該処理
部23からの二進数(bo、bl、b2)に基づいて当
該空間に対応するTLBI、2,3,4のいずれかを選
択するセレクタ24を有している。
ここで、本実施例では二進数を(bo、bx、bz)と
しているのは全空間数を8個としているから3ビツトで
各空間を区別することができるからである。 例えば、
空間IDが1から4の場合は(0゜0.0)を空間ID
が1に、(1,0,0)は空間IDが2に対応するよう
に空間IDから1を引いた二進数を出力し、b2−1の
場合のように空間IDが5から8までのの場合に空間I
Dから1を引いた値を反転させた値とする。
本実施例は次のように作動する。
オペレーティング・システムからセグメント・テーブル
の先頭アドレス5TO−1が制御レジスタ17に格納さ
れる。すると、第4図に示したSTOスタック18に格
納されている表に基づいて当該5TO−1に対応する空
間IDを表示する1を出力する。当該空間IDである1
は空間IDレジスタ19に保持される。
一方、仮想アドレスレジスタ10には本方式により実ア
ドレスに変換すべき仮想アドレスが入力し保持される。
仮想アドレスは第3図に示すようにセグメント番号、ペ
ージ番号及びページ内変位から成り立っている。例えば
セグメント番号を3、ページ番号を1及びページ内変位
を200とする。もし当該仮想アドレスに対応する実ア
ドレスを表示した変換対が存在しない場合にはテーブル
変換手段16により対応する変換対を作成してTLBに
書き加えておく。なお、テーブルによる変換はTLBの
検索と日時に行なわれ、TLBで求める対があった時は
その時点で中止され、対がなかった時はそのままテーブ
ル変換が行なわれてTLBに登録される。
テーブル変換手段16による変換対の作成について第7
図に示す。
第7図に示すように制御レジスタ17に保持されている
STOに基づいて空間IDが定められると当該空間ID
及び仮想アドレスのセグメント番号に基づいてセグメン
ト・テーブルよりセグメント番号に対応するページ・テ
ーブル先頭アドレスが検索される。ページ・テーブル先
頭アドレスが求まると当該ページ・テーブルより仮想ア
ドレスのページ番号に対応する実ページアドレスが求ま
る。こうして得られた実ページアドレス及び仮想アドレ
スの変位が前記仮想アドレスに対応する変換対となり所
定のTLBに書き込まれることになる。
仮想アドレスのセグメント番号の3は予め特定アドレス
を表示するためにセグメント番号レジスタ20に格納さ
れている特定セグメント番号である2と比較部21によ
り比較される。
特定セグメント番号以下の小さい番号にはオペレーショ
ン・システムの制御に使用するような重要度の高い特定
アドレスを対応させておく。したがって、セレクタ22
はセグメント番号が0.1.2の場合にはTLBOを選
択することになる。
TLBOに格納されている共通変換対の内容は例えば第
6図に示すように仮想アドレスとそれに対応する実ペー
ジアドレスを示したものであって空間には依存しない。
本例では仮想アドレスのセグメント番号3は特定セグメ
ント番号より大きいため空間ID処理部23が空間ID
に基づいて出力する二進数により定められるTLBI、
2,3.4のいずれかを選択することになる。
空間比較処理部23は空間IDレジスタ19に保持され
ている空間IDは1であることからす、−o、bニーo
、b、−oを出力し当該二進数に対応するTLBlがセ
レクタ24により選択されることになる。
TLBlには第3図に示すようにセグメント番号、ペー
ジ番号、実アドレス及び空間識別フラグを表示した空間
別変換対が格納されている。
選択されたTLBは第5図に示すような空間側の変換対
が登録されていて仮想アドレス(セグメント番号3、ペ
ージ番号1)に対応する実ページ・アドレス81000
を検索して仮想アドレスの変位200とともに実アドレ
スとして出力し、当該実アドレスは実アドレスレジスタ
15に格納される。
ところで、本実施例では第5図に示すようにTLBに空
間識別フラグ(1,0)を用いることにより1つのTL
Bに2つの空間を対応させている。 すなわち、第2図
に示す空間IDレジスタ19により指定された空間が5
である場合には空間ID比較処理部23から二進数とし
てす。−0,b、−0、b2−1が出力される。b2−
1の場合には、これらの各ビットb。、b□、b2を反
転させて得られる二進数に対応するTLBを選択するこ
とになる。したがって、空間IDが5の場合にはbo”
1.bx−1,bz−0に対応するTLBであるTLB
4が選択されるとともに当該TLBの識別フラグ“1°
′が立っているものだけを選択する。第5図に示すTL
Bl内においては空間識別フラグ“0″が立っている場
合には空間IDの1に対応させ、空間識別フラグ“°1
″が立っている場合には空間IDの8に対応させるよう
にしている。第11図が空間ID処理部の処理例を示し
た図である。
このようにすることにより、TLBの数は空間数の半分
で済むことになり、TLBを多くの空間に割り当てるこ
とができる。
さて、次に制御レジスタ17に5TO−7がロードされ
た場合、5TO−7は第4図に示すSTOスタック18
内に存在しない。この場合には現在ポインタが示してい
る空間ID番号、例えば3とするとTLB3のうち空間
識別フラグが0のものが無効化されることになる。
このように、本実施例では空間毎にTLBに変換対を格
納しているため無効化を行う場合には該当するTLBの
み行えば良いので処理速度が向上することになる。
〔発明の効果〕
こうして、本発明は一または二以上の空間に対応する空
間別変換牽引バッファを選択して仮想アドレスと実アド
レスとの対応をさせるようにしているため各空間毎に格
納される情報量が増え、無効化の頻度を低下させること
になる。さらに、無効化を行う際に該当する変換対を格
納しているTLBのみを無効化を行えば良いので効率良
く無効化時間の短縮が図れることになり、有効使用効率
の向上が図れることになる。さらに、本発明では空間に
依存しない共通域変換対を別に格納しているためオペレ
ーティング・システムの制御に使用する重要なアドレス
について空間の切り換えに際して無効化を行う必要がな
い。
【図面の簡単な説明】
第1図は本発明に係る原理ブロック図、第2図は実施例
に係るブロック図、第3図は仮想アドレスの一例を示す
図、第4図は実施例に係るSTOスタックに格納した表
の一例を示す図、第5図は実施例に係るTLBlの空間
別変換対の一例を示す図、第6図は実施例に係るTLB
Oの共通域変換対の一例を示す図、第7図はテーブル変
換の一例を示す図、第8図は従来例に係るブロック図、
第9図は従来例に係る作用説明図、第10図は従来の無
効化の一例を示す図、第11図は実施例に係る空間ID
比較処理部の処理例を示す図である。 1・・・変換牽引バッファ 2・・・共通域用変換牽引バッファ 31、・・・、3n・・・空間別変換牽引バッファ喪之
蓼、7ドレス 不発θ6の台i電ブOツク3 第1 図 実テ法仔+iユ偉1デOγ20 第2図 9(處1そ4り111;イ糸3  STOスタックにλ
4ト、デ、みし1己A)Φ−イ子り1示す間第4図 ダミ方を士(クリl;イ争、3TLB Is ’l J
弓?χ4の一イタ11 遺カー”す“口笛5図 *、yと++11t=qhs TLBOn t1%tt
o+−例i芋v図第6図 テーブル蛮才牛、 −4pHtポ10 第7図 g来ブクlし; イ士るフ゛°口・/70第8図 姿zオザリC:イ糸ろイ′F吊=tenロ第9図 (b) はモの淋丈刀(仁の一イタ“11手1図第10図

Claims (1)

  1. 【特許請求の範囲】 システムに実装された実記憶装置よりも大きな容量を有
    する仮想記憶装置を得るため実記憶装置をあたかも多重
    の仮想記憶空間から成り立っているように仮想記憶装置
    の仮想アドレスを空間別に実記憶装置の実アドレスに変
    換するアドレス変換方式において、 前記空間に依存しない仮想アドレスと実アドレスとの対
    応を示す共通変換対を格納する共通域用変換牽引バッフ
    ァ(2)と、 一または二以上の前記空間毎別に仮想アドレスと実アド
    レスとの対応を示す空間別変換対を格納する空間別変換
    牽引バッファ(31)、 (3n)と、 仮想アドレスが特定アドレスか否かを判別して、仮想ア
    ドレスが特定アドレスである場合には共通域用変換牽引
    バッファ(2)を選択し、仮想アドレスが特定アドレス
    でない場合には指定された空間に対応した空間別変換牽
    引バッファ(31)、…、(3n)のいずれかを選択す
    る変換牽引バッファ選択手段(1)とを有することを特
    徴とするアドレス変換方式。
JP62103761A 1987-04-27 1987-04-27 アドレス変換方式 Pending JPS63269242A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP62103761A JPS63269242A (ja) 1987-04-27 1987-04-27 アドレス変換方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62103761A JPS63269242A (ja) 1987-04-27 1987-04-27 アドレス変換方式

Publications (1)

Publication Number Publication Date
JPS63269242A true JPS63269242A (ja) 1988-11-07

Family

ID=14362496

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62103761A Pending JPS63269242A (ja) 1987-04-27 1987-04-27 アドレス変換方式

Country Status (1)

Country Link
JP (1) JPS63269242A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6428757A (en) * 1987-07-24 1989-01-31 Hitachi Ltd Address converting buffer control system
JPH0612330A (ja) * 1992-06-24 1994-01-21 Nec Corp 記憶管理方式

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6428757A (en) * 1987-07-24 1989-01-31 Hitachi Ltd Address converting buffer control system
JPH0612330A (ja) * 1992-06-24 1994-01-21 Nec Corp 記憶管理方式

Similar Documents

Publication Publication Date Title
KR960001946B1 (ko) 우선 변환 참조버퍼
TWI228657B (en) Virtual set cache that redirects store data to correct virtual set to avoid virtual set store miss penalty
US5109496A (en) Most recently used address translation system with least recently used (LRU) replacement
EP0019358B1 (en) Hierarchical data storage system
JP3666689B2 (ja) 仮想アドレス変換方法
JPH04319747A (ja) アドレス変換機構
JPH0519177B2 (ja)
CA1151310A (en) Data processing system having hierarchal memories
US4779191A (en) Method and apparatus for expanding the address space of computers
JPH08212136A (ja) 仮想メモリ変換処理を効率的に共有する方法及び装置
EP0438808B1 (en) Microprocessor incorporating cache memory
GB1505580A (en) Data processing apparatus
US4349875A (en) Buffer storage control apparatus
JPS63269242A (ja) アドレス変換方式
JPH06139149A (ja) 多重仮想空間制御装置
GB2052117A (en) Data processing systems
KR860002029B1 (ko) 시그먼트 테이블원점 어드레스(sto)스택 제어시스템
JPS5953634B2 (ja) 計算機システム
US20140006747A1 (en) Systems and methods for processing instructions when utilizing an extended translation look-aside buffer having a hybrid memory structure
US7181587B1 (en) Mapping an arbitrary number of contiguous memory pages at an arbitrary alignment
JP3132566B2 (ja) 命令先行制御装置
JPS623354A (ja) キヤツシユメモリ・アクセス方式
JPS60163147A (ja) リプレ−スメント方式
JPS5925303B2 (ja) 多重仮想計算機システムにおける多重仮想記憶制御方式
JPS626350A (ja) Tlb制御装置