JPS59132483A - アドレス変換装置 - Google Patents

アドレス変換装置

Info

Publication number
JPS59132483A
JPS59132483A JP58146317A JP14631783A JPS59132483A JP S59132483 A JPS59132483 A JP S59132483A JP 58146317 A JP58146317 A JP 58146317A JP 14631783 A JP14631783 A JP 14631783A JP S59132483 A JPS59132483 A JP S59132483A
Authority
JP
Japan
Prior art keywords
address
virtual
address translation
real
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.)
Granted
Application number
JP58146317A
Other languages
English (en)
Other versions
JPS6143744B2 (ja
Inventor
Masao Kato
正男 加藤
Koichi Ikeda
池田 公一
Kenichiro Noguchi
野口 健一郎
Kazuhiko Omachi
大町 一彦
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 JP58146317A priority Critical patent/JPS59132483A/ja
Publication of JPS59132483A publication Critical patent/JPS59132483A/ja
Publication of JPS6143744B2 publication Critical patent/JPS6143744B2/ja
Granted 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/46Multiprogramming arrangements

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

【発明の詳細な説明】 本発明は、仮想記憶方式を有する計算機システムにおい
て実現される仮想計算機システムに関するものであり、
特にそのアドレス変換装置に関する。
仮想記憶方式とは、処理装置が主記憶装置内に記憶され
ているデータをアクセスするとき、そのデータの主記憶
装置上での所在地を示すアアドレス(実アドレス)とは
別に定められた仮想アドレスによってアクセスする方式
を言う。
仮想記憶方式は近年多くの計算機システムにおいで採用
されており、その詳細については周知であるので、これ
以上の説明は省略する。
なお仮想アドレスと実アドレスとの対応関係(は、一般
にはソフトウェアの管理するアドレス変換デープルによ
って規定される。また仮想アドレスを実アドレスに夏換
することをアドレス変換と称するものとする。
仮想計算機とは、実計算機を時分割に使用し、各タイム
スロットにおいて仮想の)−一ドウェア情報(制御レジ
スタ、演算レジスタ、PSWなど)を実ハードウェアに
設定すること(でより、1台の実計算機が、各タイムス
ロットごとに、あたかも別々の計算機のごとくに動作す
るものである。したが−って1台の計算機で、複数個の
異なったオペレーティングシステムが、見かけ上F時に
走行できるととl・てする。
仮想計算機方式は、最近いくつかの計算機システムに′
おいて実現されているので、これについてもより詳細な
説明は不要であろう。
仮想計算機方式においては1.仮想記憶は一般に多重レ
ベル構成で実現される。このことは本発明の基本的背景
をなすものであるのでこれについて以下に説明する0 各仮想計算機は主記憶装置上のデータをアクセスするた
めに、各々において仮想アドレスと、それに対応する実
アドレスとを有するのであるが、仮想計算機にとっての
実アドレスはそのまま主記憶装置上の実アドレスとはな
り得ない。
主記憶装置は各仮想計算機からは、あたかも専有されて
いるかのように見えなくてはならないからである。この
ため各仮想計算機にとっての実アドレスは、実計算機に
とっての仮想アドレスであって、これはもう一度変換さ
れて主記憶装置上の実アドレスとなる。
以上に述べたように、仮想計算機方式における仮想記憶
方式では、次の6段階のアドレス変換チーする。
(1)レベル1:主記憶装置上の実アドレス(実計算機
にとっての実アドレス) (2)レベル2:実計算機にとっての仮想アドレス(仮
想計算機にとっての実アドレス) (3)レベル3=仮想計算機にとっての仮想アドレス上
では最も基本的な3段階のアドレスを示したが、−歓に
はレベル1とレベル3との間に任意の数だけの中間段階
アドレスを設定し得ることは明らかである。したがって
、後述するように本発明も一般の多段階アドレスをもつ
仮想記憶方式に適用され得るものではあるが、具体的な
説明は、上に述べた6段階の場合について示すものとす
る。
ところで、3段階のアドレスを有する仮想記憶方式にお
いては次の2種類のアドレス変換テーブルが必要である
。゛ (1)第1のアドレス変換テーブル  レベルろアドレ
スからレベル2アドレスへの変換(2)第2ノアドレス
変換テーブル  レベル2アドレスからレベル1アドレ
スへの変換一般に(M−1−1)段階のアドレスを有す
る仮想記憶方式においてはM種類のアドレス変換テーブ
ルが必要である。
しかし従来は実際に、仮想アドレスによって主記憶にあ
るデータをアクセスするときには、上記のアドレス変換
テーブルを処理装置のハードウェアが直接参照すること
はできない。
なぜならば従来の処理装置ハードウェアは、仮想計算機
システム合意す底しないで設計されているθつで、1回
のアドレス変換により得られた訪アドレスを実アドレス
として使用するのである。このため、1反懇計算機/ス
テムにおいては、従来、次Cζ述べるシャドウテーブル
をソフトウェアの責任において主記憶上に準備[〜(、
処理装置ハードウェアの参照に供してきた。
即ちあらかじめ第1、第?のアドレス変換チー フルの
内容から、すべてのレベル6アドレス対するレベル1ア
ドレスの対応表(シャドウテーブル)を作成して、これ
金弟1、第2のアドレス変換テーブルとは別に主記憶装
置上のデータとして格納しておく。一般の主記憶装置上
アクセスにあたっては、第1、第2のアドレス変換チー
ブルを参照するのでなく、シャドウテーブルを参照すれ
ば、1回の7ドレス変換によって実アドレスを得ること
ができるのである。
第1図に各レベルのアドレスのアドレス変捗テーブルの
関係を概念的に示す。
仮想記憶方式を有する計算機システムでは、一般に処理
装置内部にアドレス変換ノくツファを有する。これは仮
想アドレスとそれに対応する実アドレスとの対を複数個
貯えた連想記憶装置であυ、TLB (Transla
tion Lookaside Buffer )など
と呼ばれている。アドレス変換バッファは周知の技術で
あって説明は要しない。
仮想計算機システムが実現されたときには、アドレス変
換バツヲ1はレベル3のアドレスとそれに対応するレベ
ル1アドレスを貯えることになる。主記憶へのアクセス
にあたって、もし所望のアドレス変換対がアドレス変換
バッファにないときには前記のシャドウテーブルを参照
して求めるレベル1アドレスを得て、得られたレベル1
アドレスと元のレベル6アドレスト共にアドレス変換バ
ッファに登録をする。
以上において仮想計算機システムにおいて仮想記憶方式
を実現しているところの従来技術の概略を述べた。
次に、とのような従来技術における問題点について説明
する。シャドウテーブルは、処理装置のハードウェアが
仮想計算機システムであることを意識する必要がない点
で便利な存在であるか、これは性能的にはいくつかの不
利な点を生じている。
その第1点は、シャドウテーブルを生成するのに多大の
時間を要することである。1個の仮想空間にはアドレス
変換の最少単位となるページが数十〜敵方存在し得る。
その各々について第1、第2のアドレス変換テーブルを
参照し、シャドウテーブルを作成するには平均して1ペ
ージ当りプログラムの数10ステップが必要となるであ
ろう。したがってシャドウテーブルを1組生成するには
致方〜数10万ステンプのプログラムが走行しなくては
ならない。
その第2点は、主記憶上のページのスワツピングによp
アドレス変換テーブルの情報を更新する必要が生じたと
きは、第1または第20アドレス変換テーブルだけでな
く、シャドウテーブルも更新されなくてはならない。実
際にはシャドウテーブルの部分的な更新が困難であると
eKはその空間に関するシャドウテーブル全体を無効と
することも行なわれる。この場合には後に再びその空間
をアクセスすることがあればシャドウテーブルは上に述
べたような長時間を要して、再び生成されなくてはなら
ない。
その第6点は、シャドウテーブルは、それ自体非常に大
きな記憶容量を要することである。
1個の空間に数千〜致方のページが存在するときにはシ
ャドウテーブルとして少なくとも致方バイトの記憶領域
が必要となる。シャドウテーブルはその性質上主記憶に
常駐されねばならないので、シャドウテーブルが主記憶
の中で少なからぬ部分を占めてしまうことになる。
以上に述べたように、シャドウテーブルは従来の処理装
置ハードウェアにより、仮想計算機システムでの仮想記
憶方式を実現するものであるが、その生成、維持に多大
のプログラム走行時間と主記憶領域を消費する欠点があ
る。
しかも1組のシャドウテーブルの中には結局−回も使用
されないままに終るデータも少なくないであろうが、プ
ログラム時間と主記憶領域とはこれらのものによっても
等分に消費され、これらのための時間、資源は浪費され
ることになる。
本発明の目的は、処理装置のハードウェアに新しい機能
を付加することによって、上記のような困難を有す、る
シャドウテーブルの存在を不要とし、プログラム走行時
間および主記憶領域の有効性を高めるものである。
本発明の要旨は、処理装置のハードウェアが第1、第2
のアドレス変換テーブルを直接参照することを可能とす
るというものである。
以下では本発明の内容を図2に示す実施例によって説明
する。
第2図は、本発明を実施したところの処理装置の一部を
示すブロック図である。
第2図において信号線1には処理装置が主記憶装置14
をアクセスするだめの仮想アドレスが与えられる。どれ
はアドレス変換バッファ2に入力され実アドレスに変換
される。詳細に言えば、アドレス変換バッファ2の部分
20には仮想アドレスが、部分21にはそれに対応する
実アドレスが複数組格納されておシ、信号11M1の仮
想アドレスの一部により1組が選択、出力される。
アドレス変換バッファの部分20から出力された仮想ア
ドレスは比較器6において仮想アドレス1と比較され、
一致した場合には対応する実アドレスが所望の笑アドレ
スとしてゲート4、セレクタ10を介して主記憶゛ノ′
クセスアドレス線11に与えられる。比較器乙において
比較の結果、一致しなかったときは主記憶上のアドレス
変換テーブルを参照して所望の実アドレスを求めるため
、テーブル参照制御回路5が起動される。
テーブル参照制御回路5が起動されると、まずMlのア
ドレス変換テーブルを参照する。
レジスタ60には第1のアドレス変換テーブルの先頭ア
ドレスが収納されておシ、セレクタ7を介してレジスタ
60の内容が加算器9に入力される。また信号線1の仮
想アドレスの一部分が加算器9のもう一方に入力され、
この加算の結果が第1のアドレス変換テーブルアドレス
として線11に与えられ、主記憶14の読み出しが行な
われる。
主記憶14から読み出された第1のアドレス変換テーブ
ルの内容は即ちレベル2のアドレスである。これは主記
憶14からの読み出しデータ線12を介して読み出しデ
ータレジスタ13にセットされる。
次に制御回路5は第2のアドレス変換テーブルの読み出
しを行なう。レジスタ61には第2のアドレス変換テー
ブルの先頭アドレスが収納されており、セレクタ7を介
して加算器9に入力される。加算器9のもう一方の入力
にはレジスタ16にセットされたレベル2のアドレスの
一部分が入力され、加算の結果が第2のアドレス変換テ
ーブルアドレスとして、セレクタ10を介して主記憶ア
クセスアドレス線11に与えられる。
主記憶14から読み出された第2のアドレス変換テーブ
ルには求める実アドレスが記されている。これは主記憶
読み出しデータ線12を介して読み出され、データレジ
スタ13にセットされ、そこから信号線14を介してア
ドレス変換バッファ20部分21に書き込まれる。
このとき同時に、信号線1に与えられている仮想アドレ
スもアドレス変換バッファ20部分20に書き込まれる
以上の動作によって、所望のアドレス変換対がアドレス
変換バッファ2に登録され、処理装置が主記憶をアクセ
スするだめの仮想アドレスを実アドレスに変換すること
ができた。所望の実アドレスは、もう一度アドレス変換
バッファを参照しなおすことによって得てもよいし、あ
るいはレジスタ16から8 、9 、10を経由して信
号線11に出力してもよい。
即ち、本発明によって、その生成、維持に多くの時間、
資源を消費するところのシャドクテーブルをまったく必
要とせずに、主記憶のアドレス変換テーブルを参照して
所望の実アドレスを得てそれをアドレス変換バッファに
登録することが可能になった。
上の実施例においては第1、第2のアドレス部のレジス
タに貯えられているものとしたが、これらは例えば主記
憶上のデータとして貯えられているものであってもよい
。その場合にはレジスタ60 、61のデータを出力す
るかわりに、必要な主記憶アクセスを行なうことになる
上の実施例においては説明を簡単にするためレベル6ア
ドレスからレベル2アドレスへのアドレス変換おヨヒレ
ベル2アドレスからレベル1アドレスへのアドレス変換
は各々1組のアドレス変換テーブルによって行なわれる
ものとしたが、これは例えば従来技術の多くに見られる
ようにセグメントテーブルとページテーブルというよう
な2段の(一般には複数段の)テーブルによるものであ
るとしても本発明の有効性は明らかである。
さらに本発明については、容易に次のような拡張をする
ことができる。即ち、先にも述べたように仮想アドレス
の多重度は実施例に示した6段階ばかシでなくこれよシ
多いものも少ないものも考えられる。一般に仮想アドレ
スが(M+1)重である場合にはアドレス変換テーブル
はM組のものが存在する。したがってこのときにはアド
レス変換テーブルの先頭アドレスを示すレジスタ(また
は主記憶上のデータエリア)をM個設けて本発明を実施
することができる。
更に仮想アドレスの多重度を・・−ドウエア上固定とす
るのでなく、可変とすれば処理装置の融通性を増し能力
の向上とすることができる。
このためには次のような方法が考えられる。
その−は、処理装置内部のレジスタ62または主記憶上
のデータの形で、処理装置に仮想アドレスの多重度Mを
通知する方法である。
このときには処理装置はMを読み取ってM組のアドレス
変換テーブルの参照を行ない、第M組のアドレス変換テ
ーブルを参照した結果をもって実アドレスとする。但し
、この方法においてアドレス変換テーブルの先頭アドレ
ス’を処理装置内部にレジスタ群として有するのであれ
ば、Mはレジスタの総数N以下でなくてはならないとい
う制限が生ずる。
その二は、アドレス変換チーフルの先頭アドレスを記し
たレジスタ、又はデータのそれぞれに対し付加情報を設
け、そこにアドレス変換の順番を指定する情報を設定す
るという方法である。この場合順番そのものはレジスタ
の位置又は主記憶上でのデータの位置により固定したも
のとし、最初のアドレス変換に当るもの、または最後の
アドレス変換に肖るもの、またはその両方だけを可変に
するという方法もある。
以上に述べたように本発明によって一般に仮想アドレス
が多重の構造をなす仮想゛記憶方式において、シャドウ
テーブルを作成、維持する必要なしにアドレス変換を行
なうことが可能となシ、シャドウテーブルの作成維持に
伴う大きな時間、資源の消費を除去することができた。
本発明については1回の°アドレス変換時間(最上位の
it=アドレスから実アドレスまでの変換に要する総時
間)がシャドウテーブルを設けた場合よシも大きくなる
という欠点がある。
しかしアドレス変換バッファの容量をある程度以上に大
きくすれば、アドレス変換テーブルを参照してのアドレ
ス変換を生ずる確率を十分小さくすることができるので
、プログラム処理時間全体としては、そのためのオーバ
ヘッドの方がシャドウテーブルの作成、管理に伴うオー
バヘッドよりもはるかに小さいものとなり、処理能力を
向上させることができる。
【図面の簡単な説明】
第1図は二重のアドレス変換テーブルとシャドウテーブ
ルとを有する仮想記憶方式を説明する概念図、第2図は
本発明の一実施例を示すブロック図である。 2・アドレス変換バッファ 3・・比較器 4 ゲート 5・・テーブル参照制御回路 60および6トアドレス変換テーブルの先頭アドレスを
保持するレジスタ 7.8および10  セレクタ 9 加算器 14  主記憶装置 代理人弁理士 高 橋 明 夫 拓 / 磨 第 2図

Claims (1)

    【特許請求の範囲】
  1. 仮想記憶を有する計算機システムにおいて実現される仮
    想計算機システムにおいて、M組のアドレス変換手段で
    あって、第1のアドレス変換手段は仮想計算機の仮想ア
    ドレスを第2のアドレスに変換し、第にのアドレス変換
    手段は第にのアドレスを第(K+1)のアドレスに変換
    し、第Mのアドレス変換手段は第Mのアドレスを主記憶
    装置の実アドレスに変換するM組のアドレス変換手段と
    (但しに= 1.2.−M−1)、上記仮想計算機の仮
    想アドレスとそれに対応する上記主記憶装置の実アドレ
    スとを示すアドレス変換対を保持するアドレス変換バッ
    ファと、処理装置の現在゛のアドレス変換多重度数Mを
    示す表示子とを有し、処理装置が該アドレス変換バッフ
    ァを用いて仮想計算機の仮想アドレスを、それに対応す
    る主記憶装置の実アドレスに変換しようとするとき、所
    要のアドレス変換対が該アドレス変換バッファに存在し
    なかった場合には、前記M段のアドレス変換手段のうち
    前記表示など示された段数のアドレス変換手段によって
    所要の実アドレスを得て、該実アドレスを対応する仮想
    アドレスと共に該アドレス変換バッファに登録すること
    を特徴とするアドレス変換装置。
JP58146317A 1983-08-12 1983-08-12 アドレス変換装置 Granted JPS59132483A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP58146317A JPS59132483A (ja) 1983-08-12 1983-08-12 アドレス変換装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58146317A JPS59132483A (ja) 1983-08-12 1983-08-12 アドレス変換装置

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP52100501A Division JPS5858752B2 (ja) 1977-08-24 1977-08-24 アドレス変換装置

Publications (2)

Publication Number Publication Date
JPS59132483A true JPS59132483A (ja) 1984-07-30
JPS6143744B2 JPS6143744B2 (ja) 1986-09-29

Family

ID=15404933

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58146317A Granted JPS59132483A (ja) 1983-08-12 1983-08-12 アドレス変換装置

Country Status (1)

Country Link
JP (1) JPS59132483A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014238850A (ja) * 2005-01-14 2014-12-18 インテル コーポレイション バーチャルマシーンシステムの物理的メモリのバーチャル化

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62159142U (ja) * 1986-03-25 1987-10-09

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014238850A (ja) * 2005-01-14 2014-12-18 インテル コーポレイション バーチャルマシーンシステムの物理的メモリのバーチャル化

Also Published As

Publication number Publication date
JPS6143744B2 (ja) 1986-09-29

Similar Documents

Publication Publication Date Title
US5230045A (en) Multiple address space system including address translator for receiving virtual addresses from bus and providing real addresses on the bus
JP3666689B2 (ja) 仮想アドレス変換方法
JPS63231550A (ja) 多重仮想空間制御方式
JPH0512126A (ja) 仮想計算機のアドレス変換装置及びアドレス変換方法
JP2768503B2 (ja) 仮想記憶アドレス空間アクセス制御方式
JP3190700B2 (ja) アドレス変換装置
JPS5858752B2 (ja) アドレス変換装置
JPS59132483A (ja) アドレス変換装置
JPS5941215B2 (ja) 主記憶装置書込み制御方式
JPH06100987B2 (ja) アドレス変換制御方法
JPS61160160A (ja) 仮想計算機システムにおけるアドレツシング制御装置
US20030221045A1 (en) DSP memory bank rotation
JPH01226056A (ja) アドレス変換回路
KR950013116B1 (ko) 타이콤(ticom) 시스템의 록킹 장치와 록킹 제어 방법
JP2895892B2 (ja) データ処理装置
JP3109816B2 (ja) アドレス生成装置
JPH06103473B2 (ja) 記憶制御方式
JPH0336648A (ja) 電子計算機及びtlb装置とマイクロプロセッサチップ
JPH0816477A (ja) マルチプロセッサシステム
JPH083806B2 (ja) 変換索引バッファ構成方式
JP2684752B2 (ja) 拡張記憶制御方式
JP2591362B2 (ja) データ選択処理方法
JP2576589B2 (ja) 仮想記憶アクセス制御方式
JPH03218546A (ja) アドレス変換機構
JPS59218690A (ja) バツフア記憶装置