JPS58189892A - 多重仮想記憶方式 - Google Patents

多重仮想記憶方式

Info

Publication number
JPS58189892A
JPS58189892A JP57072751A JP7275182A JPS58189892A JP S58189892 A JPS58189892 A JP S58189892A JP 57072751 A JP57072751 A JP 57072751A JP 7275182 A JP7275182 A JP 7275182A JP S58189892 A JPS58189892 A JP S58189892A
Authority
JP
Japan
Prior art keywords
segment
address
user
entry
information
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
JP57072751A
Other languages
English (en)
Inventor
Hiroshi Nakamura
洋 中村
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.)
Toshiba Corp
Original Assignee
Toshiba Corp
Tokyo Shibaura Electric Co 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 Toshiba Corp, Tokyo Shibaura Electric Co Ltd filed Critical Toshiba Corp
Priority to JP57072751A priority Critical patent/JPS58189892A/ja
Publication of JPS58189892A publication Critical patent/JPS58189892A/ja
Pending legal-status Critical Current

Links

Abstract

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

Description

【発明の詳細な説明】 本発明はアドレス空間をシステム共通部とユーザ固有部
とに分割して使用する多重仮想記憶方式に関する。
〔発明の技術的背景〕
アドレス空間(すなわち仮想記t1装鎗VS)がセグメ
ントと< −・ノに分割して管理される仮想配憶システ
ムにおいて、アドレス空間をシステム共通部とユーザ固
有部に分割しで使用する場1)、こ11らシステム共通
部とユーザ固有部との区別は仮想アドレスの最上位ビッ
ト(これをシステム/ユーザ足義ビy ) S/Uと称
する)の論理値によって行なわれていた。したかって従
来の仮想アドレスは第1図に示されるようにシステム/
ユーザ定義ビット8九と、セグメント番号SNと、仮想
ページ番号PNと、変位(すなわちバイトアドレス)B
Nとから構成されていた。そして、仮想アドレス中の最
上位ビットすなわちピッ) S/Uが論理@0#であれ
ばシステム共通部を示し、同じく論理″′l”であれば
ユーザ固有部を示すようになっていた。このため、従来
のシステムでは、第2図に示されるようにアドレス空間
を2尋分したその前半部かシステとなっていた。+こて
、仮想アドレスから冥アドレスへのアドレス変換の高速
化のために心安となる連想レノスタと称される変換索引
緩衝機構(以下、TLBと称する)は、システム共通部
用とユーザ固有部用との2釉が用意されていた1゜これ
らのTLBには、動的アドレス変換機構(以下、DAT
と称する)によっていったんアドレス変換された際、該
当する仮想アドレス中のセグメント番号8N並びにベー
ジ番号PNと、当該下トレス変換の過程で得られるペー
ジフレーム番号PFNとの対(変換情報対)が配憶され
る。
アドレス空間をシステム共通部とユーザ固有部に分割し
て使用する多重記憶システムでは、第2図に示されてい
るように、ユーザ固有部はユーデ毎に設定される。した
がって、ユーザが切り俟わってアドレス空間を切り換え
るときには、ユーザ固有部用のTLBの各エントリの内
容を全て無効にする必要がある。このための命令をPT
LBU命令と称する。
〔背景枝術の間賠点〕
このような従来の多重仮想記憶方式では、次に示される
神々の欠点がありた。
α) ユーザ固有部の大きさくサイズ)かアドレス空間
の1/2になってしまう、これは仮想アドレスの最上位
ビットによってシステム共通部トユーザ固有部とのサイ
ズを画一的にアドレス空間の半分にしていることに°よ
る。このため、システム共通部は空き領域が多数あるに
もかかわらず、ユーザ固有部は不足してしまうという問
題が生じる。すなわちアドレス空…コを無駄なく使用す
ることが困難となる。
■ システム共通部とユーザ固有部とをアドレス空間上
に自由に配置できないため、08(Op・ratlng
 8y襲t1)設計上の自山叢に乏しい。
(3)TLBがシステム共通部用とユーザ固有部用の2
鴇に分けられているため、その使用効率が低下する。こ
れは、上記■と同様にシステム共通部用TLBには余裕
があるが、コーーザ固有部用TLBは不足しているとい
う状態が住じ易いからである。
〔発明の目的〕
本発明は上記事情に鑑みてなされたものでその目的は、
アドレス空間並びにTLB (変換索引I!鶴機楕)の
使用効率が著しく向上し、しかも7ステム共通部とユー
ザ固有部とをセグメント単位でアドレス空間上に自由に
配置できる多重仮想!!12億方式全方式することにあ
る。
〔発明の概要〕
本発明では、DAT (動的アドレス変換機構)の−構
成要素であるセグメントテーブルの各エントリ内容中に
該邑セグメントがシステム共通セグメント(システム共
通部)であるか或いはユーザ固有セグメント(ユーザ固
有部)であるかを定義するシステム/ユーザ定義情報を
設定するようにしている。こうすることによりシステム
共通部とユーザ固有部とをセグメント単位でアドレス空
間上に自由に配置できるようにしたものである。
史に本発明では、TLB (変換索引緩衛機構)のエン
トリ内容として、仮想アドレス中のセグメント番号8N
並びにページ番号PNとページフレーム番号PFNとの
対(変換情報対)のほかに、セグメントテーブルにおけ
る骸当セグメントに対応するエントリ内容中の上記シス
テム/ユーザ定義情報と、これらの情報の有効/無効を
示す有効/無効指定情報を設け、TLBをシステム共通
部用とユーザ固有部用とに分離独立させないようにして
いる。そこで、ユーザが切り換わってアドレス空間を切
り換える場合には、TLBにおいてユーザ固有セグメン
トを定義しているシステム/ユーザ定義情報に対応する
有効/無効指定情報だけを全て無効指定状態に更新する
ようにしている。
〔発明の実施例〕
以下、本発明の一実施例を図面を参照して説明する。第
3図において、11は仮想アドレスレジスタである。仮
想アドレスレジスタ1ノにはセグメント番号SNと(−
ジ番号PNと変位BNとから構成される仮想アドレスが
置数される。仮想アドレスの最上位ビットがシステム/
ユーザ定義ビットS/Uとなっていないことに注意され
たい。12は例えば主メモリ(図示せず)上に置かれる
セグメントテーブルであり、ユーザ単位で用意されてい
る。セグメントテーブル12には各セグメント毎にセグ
メント記述子が記憶されている。このセグメント記述子
はページテーブル(図示せず)の起点情報であるに一ノ
テーブルアドレスPTOなど周知の情報と、システム/
ユーザ定義ビットS/Uとから構成されている。このシ
ステム/ユーザ定義ヒラ) S/Uは対応するセグメン
トがシステム共通部(システム共通セグメント)として
使用されるか、或いはユーザ固有部(ユーザ固有セグメ
ント)として使用されるかを定義するもので、セグメン
ト単位で定義することで従来例におけるシステム/ユー
ザ定義ビットS/Uとは基本的に異なっている。本実施
例では、S/U=“0#でシステム共通セグメントが定
義され、S/U=“1′でユーザ固有セグメントが定義
される。13はセグメントテーブル12の起点情報(ベ
ースアドレス)が保持されるセグメントテーブル起点レ
ノスタ(以下、8TORと称する)である* 8TOR
13の内容はユーザ切り換え毎に更新される。14はセ
グメントテーブルJ z、8TOR13、(−・ノフレ
ーム番号PFNが記憶されているページテーブル(図示
せず)などを有し、仮想アドレスレジスタ11の内容を
用いて仮想アドレスを実アドレスに変換するDAT (
動的アドレス変換機構)である。
15はアドレス変換の高速化のために設けられたTLB
 (変換索引緩術機構)である。TLB15の各エント
リはセグメント番号8N並びに仮想ペー・ゾ番号PNと
ページフレーム番号PFNの対(変換[1)のフィール
ド、システム/ユーザ定義情報)S/、のフィールド、
爽にはこれらのフィールドの情報(すなわち対応するエ
ントリの内容)が有効であるか或いは無効であるかを示
す有効/無効指定ビット■のフィールドなどから構成さ
れている。本実施例では■=゛1″で対応するエントリ
の内容が有効であることが指定され、■−″0#で同じ
く無効であることが指定される。16はエントリ無効化
回路である。
エン) IJ無効化回路15はPTLBU命令(すなわ
ちユーザか切り換わってアドレス空間を切り換えるとき
に、ユーザ固有部用のTLBの内容を全て無効にするた
めの命令)の特定デコード信号DECによって起動され
、TLB 15の各エン) IJを鵬に参照し、これら
各エントリの中でシステム/ユーザ定義ビy ) ”/
Uが論理”1°であるエン) IJの有効/無効指定ピ
ッ)Vを全て論理““0”に更新するようになっている
。なお、仮想アドレスレジスタJ 1.5TOR13、
TLB Z 5、およびエン) IJ無効化回路16は
中央処理装置(図示せず)IIに設けられている。
次に本発明の−・実施例の動作を説明する。今、仮想ア
ドレスレジスタ1ノに置数されている仮想アドレスを実
アドレスに変換するものとする。
通常このアドレス変換においては、TLB 15の索引
とDAT 14の変換とが同時に開始される。
TLB 15の索引は仮想アドレス中のセグメント番号
SNとページ番号PNとの対に基づいて行なわれる。そ
して丁LB 15中に上記セグメント番号8Nとページ
番号PNとの対に一致するフィールドを有するエントリ
があって、かつビットvが論理″′1#であれば当該エ
ントリ中の4−ノフレーム番号PFNと仮想アドレス中
の変位BNとが加算され、実アドレスが高速に求められ
る。
この場合、DAT 14によるアドレス変換は停止され
る。
一方、TLB15中に上記セグメント番号8Nと”e−
ジ番号PNとの対に一致するフィールドを有するエント
リがないか、或いはあっても対応するピッ)Vが論理″
′0”であるときには、DAT14によるアドレス変換
動作が続けられる。そして、DAT 14のアドレス変
換結果として得られる実アドレスを用いてメモリアクセ
スが行なわれる。なお、DAT 14によるアドレス変
換動作についてはすでに良く知られており、本発明の要
旨とも直接関係しないので、説明を省略する。DAT 
J 4によるアドレス変換の過程で得られるページフレ
ーム番号PFN (これは通常、仮想アドレス中のペー
ジ番号PNとセグメントテーブル12から取り出される
ベーゾテー!ルアドレスPTOとに基づいて参照される
被−ジテーブルから得られる)は、周知のように上記仮
想アドレス中のセグメント番号SN並びにR−ノ番号P
Nと共にTLB 15中のいずれかのエントリの対応す
るフィールドに記憶される。このとき、Dム丁14によ
るアドレス変換の過程でセグメントテーブル12から読
み出された該当エントリの内容中のシステム/ユーザ定
義ビットS//TJも丁LB 15中の興じエントリに
一緒に記憶される。また、有効/無効指定ピッ)Vが論
理゛1#に更新され、対応するエントリが有効であるこ
とか指定される。
このような状態でユーザが切り換わり、アドレス空間を
切り換えるものとする。この場合、PTLBU命令が発
行される。エン) IJ無効化回路16、はPTLBU
 4i6令の特定デコード信号DECによって起動され
、TLB 15の各エントリの中でシステム/ユーザ定
義ビットS/Uが論理“1″である(すなわち対応する
セグメントがユーザ固有セグメントであることを定義し
ている)エントリの有効/無効指定ビットvを全て論理
“0″に更新する。これにより、TLB J sの全エ
ントリの中でユーザ固有セグメントに対応する変換情報
対が記憶されているエントリのみが選択的に無効状態と
される。このため、コープ切り換え後においても、TL
B 15の全エントリの中でシステム共通セグメントに
対応する変換情報対が記憶されているエントリについて
は1効に使用される。
以上の説明から明らかなように$実施例によれば次に列
挙される神々の作用効果を侑ることかできる。
■) システム共通S/ユーザ固有部の指定を従来のよ
うに仮想アドレスの最上位ビットで行なうのではなく、
セグメントテーブルの各エントリ巣位で行なうようにし
たので、上記システム共通部/ユーデ固有部の区別をセ
グメントごとに行なうことができ、ユーザ固有部のサイ
ズを必要ニ応じて充分大きくとることかできる。
■ 上記■の理由により、アドレス空間を無駄なく有効
に使用することかできる。
(3)  システム共通部とユーザ固有部とをアドレス
空間上にセグメント単位で自白に配置することができる
ため、O8設計上の自由度に富む。
■ TLBをシステム共通部用とユーザ固有部用とに分
離独立させていないのでプログラムの実行状態に応じて
TLB中の゛ユーザ固有部用エントリ数が自動的に変化
することになり、TLBの使用効率が著しく向上する。
なお、前記実施例では、エントリ無効化回路I6はTL
B 15の各エントリの中でシステム/ユーザ定義ビッ
トS//IJが論理“】”であるエントリの有効/無効
指定ピッ)Vを全てMl理“′0”に更新するものとし
て説明したが、当該回路がTLB 7 sの各エン) 
IJ年単位設けられる同−檎b’cのエントリ無効化回
路の振合であってもよい。
こうすることにより、TLB J 6の各エントリを順
に参照する必要がなくなる。この回路は、例えばPTL
BU命令の特定デコード信号DECl対応するエントリ
中のど、トS/Uの論理イーに応じて出力制御し、その
出力信号をピッ)Vのフィールドに対するクロ、り信号
(またはロード信号)とするアンドゲートである。この
重台、論理″0”の信号をTLB 15におけるピッ)
Vの各フィールドにロードすべきデータとして供給する
必要がある。また、アドレス変換中におけるTLB 1
5のエントリ内容の更新と区別するために、クロック信
号(またはロード信号)ライン、更にはロードすべきデ
ータのラインをPTLBU命令の特定デコード信号DI
CCの論理状態に応じてマルチブレフサなどにより切り
換えることが好ましい。
〔発明の効果〕
以上詳述したように本発明の多1仮想記憶方式によれば
、アドレス空間並びにTLB (変換索引緩衝機構)の
使用効率が著しく向上し、しかもシステム共通部とユー
デ固有部とをセグメント単位でアドレス空間上に自由に
配置することかできる。
【図面の簡単な説明】
第1図は従来の仮想アドレスのフォーマットを示す図、
第2図は従来のアドレス空間割り当て例を示す図、第3
図は本発明の一実施例を示すブロック図である。 11・・・仮想アドレス空間メ’p、zx・・・セクメ
ントテーンル、14・・・動的アドレス変換機構(DA
T)、15・・・変換索引緩衝機構(TLB )、16
・・・エン) IJ無効化回路。 出願人代理人  弁理士 鈴 江 武 廖第1図 第25A 第3図

Claims (1)

    【特許請求の範囲】
  1. アドレス空間がセグメントとべ一ノに分割して管理され
    る仮想記憶システムにおいて、ページチーフルの起点情
    報、およびシステム共通セグメントであるか或いはユー
    ザ固有セグメントであるかを定義するシステム/ユーザ
    定義情報を含むセグメント記述子がセグメント単位で記
    憶されているセグメントテーブルを有し、仮想アドレス
    中のセグメント番号に基づいて当該セグメントテーブル
    から腋幽するセグメントのセグメント記述子を読み出し
    、当該セグメント記述子中の上記ページテーブル起点情
    報を用いて仮想アドレスを実アドレスに変換するa的7
    )’レス変換機構と、この動的アドレス変換機構によっ
    ていったんアドレス変換された際、該当する仮想アドレ
    ス中のセグメント番号並びに4−ジ番号と当該アドレス
    変換の過程で得られるページフレーム番号との変換情報
    対と共に、上記セグメントテーブルから読み出される上
    記セグメント記述子中のシステム/ユーザ定義情報、お
    よびこれらの情報が有効であることを示す有効指定情報
    とが記憶される変換索引緩衝機構であって、仮想アドレ
    ス中のセグメント番号並びにページ番号によって索引さ
    れ高速アドレス変換に用いられる変換索引緩衝機構と、
    ユーザ切り換えのためにアドレス空間を切り換える際、
    上記変換索引緩衝機構においてユーザ固有セグメントを
    定義しているシステム/ユーザ定義情報に対応する上記
    有効指定情報を無効指定情報位でアドレス仝関上に配置
    するようにしたことを%徴とする多重仮想記憶方式。
JP57072751A 1982-04-30 1982-04-30 多重仮想記憶方式 Pending JPS58189892A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP57072751A JPS58189892A (ja) 1982-04-30 1982-04-30 多重仮想記憶方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP57072751A JPS58189892A (ja) 1982-04-30 1982-04-30 多重仮想記憶方式

Publications (1)

Publication Number Publication Date
JPS58189892A true JPS58189892A (ja) 1983-11-05

Family

ID=13498365

Family Applications (1)

Application Number Title Priority Date Filing Date
JP57072751A Pending JPS58189892A (ja) 1982-04-30 1982-04-30 多重仮想記憶方式

Country Status (1)

Country Link
JP (1) JPS58189892A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4835734A (en) * 1986-04-09 1989-05-30 Hitachi, Ltd. Address translation apparatus
KR100520597B1 (ko) * 2001-02-21 2005-10-10 미쓰비시덴키 가부시키가이샤 어드레스 공간을 변경할 수 있는 반도체 기억 장치

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4835734A (en) * 1986-04-09 1989-05-30 Hitachi, Ltd. Address translation apparatus
KR100520597B1 (ko) * 2001-02-21 2005-10-10 미쓰비시덴키 가부시키가이샤 어드레스 공간을 변경할 수 있는 반도체 기억 장치

Similar Documents

Publication Publication Date Title
US5493660A (en) Software assisted hardware TLB miss handler
US5230045A (en) Multiple address space system including address translator for receiving virtual addresses from bus and providing real addresses on the bus
JP3666689B2 (ja) 仮想アドレス変換方法
US3761881A (en) Translation storage scheme for virtual memory system
US6493812B1 (en) Apparatus and method for virtual address aliasing and multiple page size support in a computer system having a prevalidated cache
US5412787A (en) Two-level TLB having the second level TLB implemented in cache tag RAMs
US5119290A (en) Alias address support
US4800489A (en) Paged memory management unit capable of selectively supporting multiple address spaces
KR100297454B1 (ko) 컴퓨터장치
KR880000299B1 (ko) 캐쉬장치
JPH04319747A (ja) アドレス変換機構
GB1184006A (en) Stored Program Electronic Data Processing System
JP3045952B2 (ja) フルアソシアティブ・アドレス変換器
EP0669579A2 (en) Coherence index generation for use by an input/output adapter
JP2930071B2 (ja) 情報処理装置およびプロセッサ
US6560689B1 (en) TLB using region ID prevalidation
JP3210637B2 (ja) データ処理システム内のキャッシュ・メモリにアクセスするための方法およびシステム
JP2846697B2 (ja) キャッシュメモリ制御装置
JPS58189892A (ja) 多重仮想記憶方式
US6226731B1 (en) Method and system for accessing a cache memory within a data-processing system utilizing a pre-calculated comparison array
JPS5858752B2 (ja) アドレス変換装置
US6581139B1 (en) Set-associative cache memory having asymmetric latency among sets
JPH01226056A (ja) アドレス変換回路
US6460118B1 (en) Set-associative cache memory having incremental access latencies among sets
JPH0690686B2 (ja) アドレス変換索引機構無効化装置