JPS59132483A - Address converting device - Google Patents

Address converting device

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
Japanese (ja)
Other versions
JPS6143744B2 (en
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/en
Publication of JPS59132483A publication Critical patent/JPS59132483A/en
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

PURPOSE:To eliminate the need for the presence of a shadow table and to improve the effectiveness of a program running time and a main storage area by making the hardware of a processor reference directly the 1st and the 2nd address converting table. CONSTITUTION:When a table reference control circuit 5 is started, it references at first the 1st address converting table. The head address of the 1st address converting table is stored in a register 60 and contents of the register 60 are inputted to an adder 9 via a selector 7. Then, the control circuit 5 reads the 2nd address converting table. The head address of the 2nd address converting table is stored in a register 61 and inputted to the adder 9 via the selector 7. A desired address converting pair is registered in an address converting buffer 2 through the operation above and the virtual address by which the processor accesses the main storage is converted into a real address.

Description

【発明の詳細な説明】 本発明は、仮想記憶方式を有する計算機システムにおい
て実現される仮想計算機システムに関するものであり、
特にそのアドレス変換装置に関する。
DETAILED DESCRIPTION OF THE INVENTION The present invention relates to a virtual computer system realized in a computer system having a virtual storage method,
In particular, the present invention relates to the address translation device.

仮想記憶方式とは、処理装置が主記憶装置内に記憶され
ているデータをアクセスするとき、そのデータの主記憶
装置上での所在地を示すアアドレス(実アドレス)とは
別に定められた仮想アドレスによってアクセスする方式
を言う。
A virtual memory method is a virtual address that is determined separately from the address (real address) that indicates the location of the data on the main memory when a processing device accesses data stored in the main memory. This refers to the method of access.

仮想記憶方式は近年多くの計算機システムにおいで採用
されており、その詳細については周知であるので、これ
以上の説明は省略する。
The virtual storage method has been adopted in many computer systems in recent years, and its details are well known, so further explanation will be omitted.

なお仮想アドレスと実アドレスとの対応関係(は、一般
にはソフトウェアの管理するアドレス変換デープルによ
って規定される。また仮想アドレスを実アドレスに夏換
することをアドレス変換と称するものとする。
Note that the correspondence between virtual addresses and real addresses is generally defined by an address translation table managed by software. Also, the translation of a virtual address into a real address is called address translation.

仮想計算機とは、実計算機を時分割に使用し、各タイム
スロットにおいて仮想の)−一ドウェア情報(制御レジ
スタ、演算レジスタ、PSWなど)を実ハードウェアに
設定すること(でより、1台の実計算機が、各タイムス
ロットごとに、あたかも別々の計算機のごとくに動作す
るものである。したが−って1台の計算機で、複数個の
異なったオペレーティングシステムが、見かけ上F時に
走行できるととl・てする。
A virtual computer is a process in which a real computer is used for time sharing, and hardware information (control registers, calculation registers, PSW, etc.) is set in the real hardware in each time slot. A real computer operates as if it were a separate computer in each time slot. Therefore, it is possible to run multiple different operating systems on one computer at an apparent time of F. and l・tesu.

仮想計算機方式は、最近いくつかの計算機システムに′
おいて実現されているので、これについてもより詳細な
説明は不要であろう。
The virtual computer method has recently been used in some computer systems.
Since this has already been implemented, a more detailed explanation is not necessary.

仮想計算機方式においては1.仮想記憶は一般に多重レ
ベル構成で実現される。このことは本発明の基本的背景
をなすものであるのでこれについて以下に説明する0 各仮想計算機は主記憶装置上のデータをアクセスするた
めに、各々において仮想アドレスと、それに対応する実
アドレスとを有するのであるが、仮想計算機にとっての
実アドレスはそのまま主記憶装置上の実アドレスとはな
り得ない。
In the virtual computer method, 1. Virtual memory is generally implemented in a multi-level configuration. This is the basic background of the present invention, and will be explained below. Each virtual machine has a virtual address and a corresponding real address in order to access data on the main memory. However, the real address for the virtual machine cannot directly become the real address on the main storage device.

主記憶装置は各仮想計算機からは、あたかも専有されて
いるかのように見えなくてはならないからである。この
ため各仮想計算機にとっての実アドレスは、実計算機に
とっての仮想アドレスであって、これはもう一度変換さ
れて主記憶装置上の実アドレスとなる。
This is because the main storage must appear to each virtual machine as if it were exclusively owned. Therefore, the real address for each virtual computer is a virtual address for the real computer, and this is converted once again to become a real address on the main storage device.

以上に述べたように、仮想計算機方式における仮想記憶
方式では、次の6段階のアドレス変換チーする。
As described above, the virtual memory system in the virtual machine system performs the following six stages of address conversion.

(1)レベル1:主記憶装置上の実アドレス(実計算機
にとっての実アドレス) (2)レベル2:実計算機にとっての仮想アドレス(仮
想計算機にとっての実アドレス) (3)レベル3=仮想計算機にとっての仮想アドレス上
では最も基本的な3段階のアドレスを示したが、−歓に
はレベル1とレベル3との間に任意の数だけの中間段階
アドレスを設定し得ることは明らかである。したがって
、後述するように本発明も一般の多段階アドレスをもつ
仮想記憶方式に適用され得るものではあるが、具体的な
説明は、上に述べた6段階の場合について示すものとす
る。
(1) Level 1: Real address on main storage (real address for the real computer) (2) Level 2: Virtual address for the real computer (real address for the virtual computer) (3) Level 3 = For the virtual computer Although the most basic three-level address has been shown in the virtual address of , it is clear that an arbitrary number of intermediate level addresses can be set between level 1 and level 3. Therefore, although the present invention can be applied to a general virtual storage system having multi-stage addresses as described later, a specific explanation will be given for the case of the six stages described above.

ところで、3段階のアドレスを有する仮想記憶方式にお
いては次の2種類のアドレス変換テーブルが必要である
。゛ (1)第1のアドレス変換テーブル  レベルろアドレ
スからレベル2アドレスへの変換(2)第2ノアドレス
変換テーブル  レベル2アドレスからレベル1アドレ
スへの変換一般に(M−1−1)段階のアドレスを有す
る仮想記憶方式においてはM種類のアドレス変換テーブ
ルが必要である。
By the way, in a virtual memory system having three levels of addresses, the following two types of address translation tables are required. (1) First address conversion table Conversion from level address to level 2 address (2) Second address conversion table Conversion from level 2 address to level 1 address Generally (M-1-1) stage address In a virtual storage system having M types of address translation tables, M types of address translation tables are required.

しかし従来は実際に、仮想アドレスによって主記憶にあ
るデータをアクセスするときには、上記のアドレス変換
テーブルを処理装置のハードウェアが直接参照すること
はできない。
However, conventionally, when actually accessing data in main memory using a virtual address, the hardware of the processing device cannot directly refer to the address conversion table.

なぜならば従来の処理装置ハードウェアは、仮想計算機
システム合意す底しないで設計されているθつで、1回
のアドレス変換により得られた訪アドレスを実アドレス
として使用するのである。このため、1反懇計算機/ス
テムにおいては、従来、次Cζ述べるシャドウテーブル
をソフトウェアの責任において主記憶上に準備[〜(、
処理装置ハードウェアの参照に供してきた。
This is because conventional processing device hardware uses the visited address obtained through one address conversion as the real address in a virtual computer system designed with an infinitely high degree of θ. For this reason, in a one-way computer/system, the software is responsible for preparing the shadow table described below in the main memory [~(,
It has been used as a reference for processing device hardware.

即ちあらかじめ第1、第?のアドレス変換チー フルの
内容から、すべてのレベル6アドレス対するレベル1ア
ドレスの対応表(シャドウテーブル)を作成して、これ
金弟1、第2のアドレス変換テーブルとは別に主記憶装
置上のデータとして格納しておく。一般の主記憶装置上
アクセスにあたっては、第1、第2のアドレス変換チー
ブルを参照するのでなく、シャドウテーブルを参照すれ
ば、1回の7ドレス変換によって実アドレスを得ること
ができるのである。
That is, first, first? From the contents of the address translation team, a correspondence table (shadow table) of level 1 addresses for all level 6 addresses is created, and this table is used to store data on the main memory separately from the first and second address translation tables. Store it as . When accessing the main memory in general, by referring to the shadow table instead of referring to the first and second address translation tables, the real address can be obtained through one 7-address translation.

第1図に各レベルのアドレスのアドレス変捗テーブルの
関係を概念的に示す。
FIG. 1 conceptually shows the relationship between address change tables of addresses at each level.

仮想記憶方式を有する計算機システムでは、一般に処理
装置内部にアドレス変換ノくツファを有する。これは仮
想アドレスとそれに対応する実アドレスとの対を複数個
貯えた連想記憶装置であυ、TLB (Transla
tion Lookaside Buffer )など
と呼ばれている。アドレス変換バッファは周知の技術で
あって説明は要しない。
A computer system having a virtual memory method generally has an address translation function inside the processing unit. This is an associative memory device that stores multiple pairs of virtual addresses and corresponding real addresses.
tion Lookaside Buffer). Address translation buffers are a well-known technology and need no explanation.

仮想計算機システムが実現されたときには、アドレス変
換バツヲ1はレベル3のアドレスとそれに対応するレベ
ル1アドレスを貯えることになる。主記憶へのアクセス
にあたって、もし所望のアドレス変換対がアドレス変換
バッファにないときには前記のシャドウテーブルを参照
して求めるレベル1アドレスを得て、得られたレベル1
アドレスと元のレベル6アドレスト共にアドレス変換バ
ッファに登録をする。
When a virtual computer system is realized, the address conversion button 1 will store level 3 addresses and corresponding level 1 addresses. When accessing the main memory, if the desired address translation pair is not in the address translation buffer, the desired level 1 address is obtained by referring to the shadow table, and the level 1 address obtained is
Both the address and the original level 6 address are registered in the address translation buffer.

以上において仮想計算機システムにおいて仮想記憶方式
を実現しているところの従来技術の概略を述べた。
Above, an outline of the conventional technology that implements a virtual memory method in a virtual computer system has been described.

次に、とのような従来技術における問題点について説明
する。シャドウテーブルは、処理装置のハードウェアが
仮想計算機システムであることを意識する必要がない点
で便利な存在であるか、これは性能的にはいくつかの不
利な点を生じている。
Next, problems in the prior art will be explained. The shadow table is convenient in that there is no need to be aware that the hardware of the processing unit is a virtual computer system, but this has some disadvantages in terms of performance.

その第1点は、シャドウテーブルを生成するのに多大の
時間を要することである。1個の仮想空間にはアドレス
変換の最少単位となるページが数十〜敵方存在し得る。
The first point is that it takes a lot of time to generate a shadow table. In one virtual space, there may be several dozen or more pages, which are the minimum unit of address translation.

その各々について第1、第2のアドレス変換テーブルを
参照し、シャドウテーブルを作成するには平均して1ペ
ージ当りプログラムの数10ステップが必要となるであ
ろう。したがってシャドウテーブルを1組生成するには
致方〜数10万ステンプのプログラムが走行しなくては
ならない。
Referring to the first and second address translation tables for each of them and creating a shadow table will require an average of 10 program steps per page. Therefore, in order to generate one set of shadow tables, a program of up to several hundred thousand steps must be run.

その第2点は、主記憶上のページのスワツピングによp
アドレス変換テーブルの情報を更新する必要が生じたと
きは、第1または第20アドレス変換テーブルだけでな
く、シャドウテーブルも更新されなくてはならない。実
際にはシャドウテーブルの部分的な更新が困難であると
eKはその空間に関するシャドウテーブル全体を無効と
することも行なわれる。この場合には後に再びその空間
をアクセスすることがあればシャドウテーブルは上に述
べたような長時間を要して、再び生成されなくてはなら
ない。
The second point is that swapping pages in main memory
When it becomes necessary to update the information in the address translation table, not only the first or twentieth address translation table but also the shadow table must be updated. In reality, if it is difficult to partially update the shadow table, eK may invalidate the entire shadow table for that space. In this case, if the space is to be accessed again later, the shadow table must be regenerated, taking a long time as described above.

その第6点は、シャドウテーブルは、それ自体非常に大
きな記憶容量を要することである。
The sixth point is that the shadow table itself requires a very large storage capacity.

1個の空間に数千〜致方のページが存在するときにはシ
ャドウテーブルとして少なくとも致方バイトの記憶領域
が必要となる。シャドウテーブルはその性質上主記憶に
常駐されねばならないので、シャドウテーブルが主記憶
の中で少なからぬ部分を占めてしまうことになる。
When several thousand pages exist in one space, a storage area of at least thousands of bytes is required as a shadow table. Since the shadow table must be resident in the main memory due to its nature, the shadow table occupies a considerable portion of the main memory.

以上に述べたように、シャドウテーブルは従来の処理装
置ハードウェアにより、仮想計算機システムでの仮想記
憶方式を実現するものであるが、その生成、維持に多大
のプログラム走行時間と主記憶領域を消費する欠点があ
る。
As mentioned above, the shadow table realizes a virtual memory system in a virtual computer system using conventional processing unit hardware, but its creation and maintenance consumes a large amount of program execution time and main storage space. There are drawbacks to doing so.

しかも1組のシャドウテーブルの中には結局−回も使用
されないままに終るデータも少なくないであろうが、プ
ログラム時間と主記憶領域とはこれらのものによっても
等分に消費され、これらのための時間、資源は浪費され
ることになる。
Furthermore, although there is likely to be a large amount of data in a set of shadow tables that is never used, the program time and main storage area are equally consumed by these items. time and resources will be wasted.

本発明の目的は、処理装置のハードウェアに新しい機能
を付加することによって、上記のような困難を有す、る
シャドウテーブルの存在を不要とし、プログラム走行時
間および主記憶領域の有効性を高めるものである。
An object of the present invention is to eliminate the need for a shadow table, which has the above-mentioned difficulties, by adding a new function to the hardware of a processing device, thereby increasing the program execution time and the effectiveness of the main storage area. It is something.

本発明の要旨は、処理装置のハードウェアが第1、第2
のアドレス変換テーブルを直接参照することを可能とす
るというものである。
The gist of the present invention is that the hardware of the processing device
This makes it possible to directly refer to the address translation table of .

以下では本発明の内容を図2に示す実施例によって説明
する。
The content of the present invention will be explained below using an embodiment shown in FIG.

第2図は、本発明を実施したところの処理装置の一部を
示すブロック図である。
FIG. 2 is a block diagram showing part of a processing device in which the present invention is implemented.

第2図において信号線1には処理装置が主記憶装置14
をアクセスするだめの仮想アドレスが与えられる。どれ
はアドレス変換バッファ2に入力され実アドレスに変換
される。詳細に言えば、アドレス変換バッファ2の部分
20には仮想アドレスが、部分21にはそれに対応する
実アドレスが複数組格納されておシ、信号11M1の仮
想アドレスの一部により1組が選択、出力される。
In FIG. 2, the processing device is connected to the main memory 14 on the signal line 1.
is given a virtual address to access. Which one is input to the address conversion buffer 2 and converted into a real address. In detail, a virtual address is stored in the portion 20 of the address translation buffer 2, and a plurality of sets of corresponding real addresses are stored in the portion 21, and one set is selected by a portion of the virtual address of the signal 11M1. Output.

アドレス変換バッファの部分20から出力された仮想ア
ドレスは比較器6において仮想アドレス1と比較され、
一致した場合には対応する実アドレスが所望の笑アドレ
スとしてゲート4、セレクタ10を介して主記憶゛ノ′
クセスアドレス線11に与えられる。比較器乙において
比較の結果、一致しなかったときは主記憶上のアドレス
変換テーブルを参照して所望の実アドレスを求めるため
、テーブル参照制御回路5が起動される。
The virtual address output from part 20 of the address translation buffer is compared with virtual address 1 in comparator 6;
If they match, the corresponding real address is sent to the main memory as the desired address via the gate 4 and selector 10.
address line 11. If the results of the comparison in comparator B do not match, the table reference control circuit 5 is activated in order to refer to the address conversion table on the main memory and obtain the desired real address.

テーブル参照制御回路5が起動されると、まずMlのア
ドレス変換テーブルを参照する。
When the table reference control circuit 5 is activated, it first refers to the address conversion table of M1.

レジスタ60には第1のアドレス変換テーブルの先頭ア
ドレスが収納されておシ、セレクタ7を介してレジスタ
60の内容が加算器9に入力される。また信号線1の仮
想アドレスの一部分が加算器9のもう一方に入力され、
この加算の結果が第1のアドレス変換テーブルアドレス
として線11に与えられ、主記憶14の読み出しが行な
われる。
The register 60 stores the first address of the first address conversion table, and the contents of the register 60 are input to the adder 9 via the selector 7. Also, a part of the virtual address of the signal line 1 is input to the other side of the adder 9,
The result of this addition is applied to line 11 as a first address conversion table address, and reading from main memory 14 is performed.

主記憶14から読み出された第1のアドレス変換テーブ
ルの内容は即ちレベル2のアドレスである。これは主記
憶14からの読み出しデータ線12を介して読み出しデ
ータレジスタ13にセットされる。
The contents of the first address conversion table read from the main memory 14 are level 2 addresses. This is set in the read data register 13 via the read data line 12 from the main memory 14.

次に制御回路5は第2のアドレス変換テーブルの読み出
しを行なう。レジスタ61には第2のアドレス変換テー
ブルの先頭アドレスが収納されており、セレクタ7を介
して加算器9に入力される。加算器9のもう一方の入力
にはレジスタ16にセットされたレベル2のアドレスの
一部分が入力され、加算の結果が第2のアドレス変換テ
ーブルアドレスとして、セレクタ10を介して主記憶ア
クセスアドレス線11に与えられる。
Next, the control circuit 5 reads the second address conversion table. The register 61 stores the first address of the second address conversion table, and is input to the adder 9 via the selector 7. A part of the level 2 address set in the register 16 is input to the other input of the adder 9, and the result of the addition is sent to the main memory access address line 11 via the selector 10 as a second address conversion table address. given to.

主記憶14から読み出された第2のアドレス変換テーブ
ルには求める実アドレスが記されている。これは主記憶
読み出しデータ線12を介して読み出され、データレジ
スタ13にセットされ、そこから信号線14を介してア
ドレス変換バッファ20部分21に書き込まれる。
The desired real address is written in the second address conversion table read from the main memory 14. This is read via the main memory read data line 12 and set in the data register 13, from where it is written via the signal line 14 to the address translation buffer 20 portion 21.

このとき同時に、信号線1に与えられている仮想アドレ
スもアドレス変換バッファ20部分20に書き込まれる
At the same time, the virtual address given to the signal line 1 is also written into the address translation buffer 20 portion 20.

以上の動作によって、所望のアドレス変換対がアドレス
変換バッファ2に登録され、処理装置が主記憶をアクセ
スするだめの仮想アドレスを実アドレスに変換すること
ができた。所望の実アドレスは、もう一度アドレス変換
バッファを参照しなおすことによって得てもよいし、あ
るいはレジスタ16から8 、9 、10を経由して信
号線11に出力してもよい。
Through the above-described operations, the desired address translation pair was registered in the address translation buffer 2, and the processing device was able to convert the virtual address intended to access the main memory into a real address. The desired real address may be obtained by referring to the address translation buffer once again, or may be output from the register 16 to the signal line 11 via the registers 8, 9, and 10.

即ち、本発明によって、その生成、維持に多くの時間、
資源を消費するところのシャドクテーブルをまったく必
要とせずに、主記憶のアドレス変換テーブルを参照して
所望の実アドレスを得てそれをアドレス変換バッファに
登録することが可能になった。
That is, according to the present invention, it takes a lot of time to generate and maintain the
It is now possible to obtain a desired real address by referring to the address translation table in the main memory and register it in the address translation buffer without any need for a shadow table that consumes resources.

上の実施例においては第1、第2のアドレス部のレジス
タに貯えられているものとしたが、これらは例えば主記
憶上のデータとして貯えられているものであってもよい
。その場合にはレジスタ60 、61のデータを出力す
るかわりに、必要な主記憶アクセスを行なうことになる
In the above embodiment, it is assumed that the data is stored in the registers of the first and second address parts, but these may be stored as data in the main memory, for example. In that case, instead of outputting the data in registers 60 and 61, the necessary main memory access will be performed.

上の実施例においては説明を簡単にするためレベル6ア
ドレスからレベル2アドレスへのアドレス変換おヨヒレ
ベル2アドレスからレベル1アドレスへのアドレス変換
は各々1組のアドレス変換テーブルによって行なわれる
ものとしたが、これは例えば従来技術の多くに見られる
ようにセグメントテーブルとページテーブルというよう
な2段の(一般には複数段の)テーブルによるものであ
るとしても本発明の有効性は明らかである。
In the above embodiment, in order to simplify the explanation, address translation from a level 6 address to a level 2 address and address translation from a level 2 address to a level 1 address are each performed using one set of address translation tables. The effectiveness of the present invention is obvious even if this is due to a two-level (generally multiple-level) table such as a segment table and a page table as seen in many prior art techniques.

さらに本発明については、容易に次のような拡張をする
ことができる。即ち、先にも述べたように仮想アドレス
の多重度は実施例に示した6段階ばかシでなくこれよシ
多いものも少ないものも考えられる。一般に仮想アドレ
スが(M+1)重である場合にはアドレス変換テーブル
はM組のものが存在する。したがってこのときにはアド
レス変換テーブルの先頭アドレスを示すレジスタ(また
は主記憶上のデータエリア)をM個設けて本発明を実施
することができる。
Furthermore, the present invention can be easily extended as follows. That is, as mentioned earlier, the multiplicity of virtual addresses is not limited to the six levels shown in the embodiment, but may be greater or lesser. Generally, when there are (M+1) virtual addresses, there are M sets of address translation tables. Therefore, in this case, the present invention can be implemented by providing M registers (or data areas on the main memory) indicating the start address of the address conversion table.

更に仮想アドレスの多重度を・・−ドウエア上固定とす
るのでなく、可変とすれば処理装置の融通性を増し能力
の向上とすることができる。
Furthermore, if the multiplicity of virtual addresses is made variable instead of being fixed on the hardware, the flexibility of the processing device can be increased and the performance improved.

このためには次のような方法が考えられる。The following methods can be considered for this purpose.

その−は、処理装置内部のレジスタ62または主記憶上
のデータの形で、処理装置に仮想アドレスの多重度Mを
通知する方法である。
The second method is to notify the processing device of the virtual address multiplicity M in the form of data in the register 62 or main memory inside the processing device.

このときには処理装置はMを読み取ってM組のアドレス
変換テーブルの参照を行ない、第M組のアドレス変換テ
ーブルを参照した結果をもって実アドレスとする。但し
、この方法においてアドレス変換テーブルの先頭アドレ
ス’を処理装置内部にレジスタ群として有するのであれ
ば、Mはレジスタの総数N以下でなくてはならないとい
う制限が生ずる。
At this time, the processing device reads M, refers to M sets of address conversion tables, and uses the result of referencing the Mth group of address conversion tables as a real address. However, in this method, if the first address ' of the address conversion table is provided as a register group inside the processing device, there is a restriction that M must be less than or equal to the total number of registers N.

その二は、アドレス変換チーフルの先頭アドレスを記し
たレジスタ、又はデータのそれぞれに対し付加情報を設
け、そこにアドレス変換の順番を指定する情報を設定す
るという方法である。この場合順番そのものはレジスタ
の位置又は主記憶上でのデータの位置により固定したも
のとし、最初のアドレス変換に当るもの、または最後の
アドレス変換に肖るもの、またはその両方だけを可変に
するという方法もある。
The second method is to provide additional information for each register or data in which the start address of the address conversion table is written, and to set information specifying the order of address conversion therein. In this case, the order itself is fixed depending on the register position or the data position on main memory, and only the first address translation, the last address translation, or both are variable. There is a way.

以上に述べたように本発明によって一般に仮想アドレス
が多重の構造をなす仮想゛記憶方式において、シャドウ
テーブルを作成、維持する必要なしにアドレス変換を行
なうことが可能となシ、シャドウテーブルの作成維持に
伴う大きな時間、資源の消費を除去することができた。
As described above, the present invention makes it possible to perform address translation without the need to create and maintain a shadow table in a virtual storage system in which virtual addresses generally have a multiple structure. A large amount of time and resource consumption associated with this process could be eliminated.

本発明については1回の°アドレス変換時間(最上位の
it=アドレスから実アドレスまでの変換に要する総時
間)がシャドウテーブルを設けた場合よシも大きくなる
という欠点がある。
The present invention has the disadvantage that the time required for one address conversion (total time required for conversion from the highest address to the real address) is longer than when a shadow table is provided.

しかしアドレス変換バッファの容量をある程度以上に大
きくすれば、アドレス変換テーブルを参照してのアドレ
ス変換を生ずる確率を十分小さくすることができるので
、プログラム処理時間全体としては、そのためのオーバ
ヘッドの方がシャドウテーブルの作成、管理に伴うオー
バヘッドよりもはるかに小さいものとなり、処理能力を
向上させることができる。
However, if the capacity of the address translation buffer is increased beyond a certain level, the probability of address translation occurring by referring to the address translation table can be sufficiently reduced, so the overhead for this will be a shadow of the overall program processing time. This is much smaller than the overhead associated with table creation and management, and processing capacity can be improved.

【図面の簡単な説明】[Brief explanation of drawings]

第1図は二重のアドレス変換テーブルとシャドウテーブ
ルとを有する仮想記憶方式を説明する概念図、第2図は
本発明の一実施例を示すブロック図である。 2・アドレス変換バッファ 3・・比較器 4 ゲート 5・・テーブル参照制御回路 60および6トアドレス変換テーブルの先頭アドレスを
保持するレジスタ 7.8および10  セレクタ 9 加算器 14  主記憶装置 代理人弁理士 高 橋 明 夫 拓 / 磨 第 2図
FIG. 1 is a conceptual diagram illustrating a virtual storage system having dual address translation tables and shadow tables, and FIG. 2 is a block diagram showing an embodiment of the present invention. 2. Address conversion buffer 3... Comparator 4 Gate 5... Table reference control circuit 60 and 6 Registers 7, 8 and 10 that hold the start address of the address conversion table Selector 9 Adder 14 Main storage device Patent attorney Taku Takahashi/Main Diagram 2

Claims (1)

【特許請求の範囲】[Claims] 仮想記憶を有する計算機システムにおいて実現される仮
想計算機システムにおいて、M組のアドレス変換手段で
あって、第1のアドレス変換手段は仮想計算機の仮想ア
ドレスを第2のアドレスに変換し、第にのアドレス変換
手段は第にのアドレスを第(K+1)のアドレスに変換
し、第Mのアドレス変換手段は第Mのアドレスを主記憶
装置の実アドレスに変換するM組のアドレス変換手段と
(但しに= 1.2.−M−1)、上記仮想計算機の仮
想アドレスとそれに対応する上記主記憶装置の実アドレ
スとを示すアドレス変換対を保持するアドレス変換バッ
ファと、処理装置の現在゛のアドレス変換多重度数Mを
示す表示子とを有し、処理装置が該アドレス変換バッフ
ァを用いて仮想計算機の仮想アドレスを、それに対応す
る主記憶装置の実アドレスに変換しようとするとき、所
要のアドレス変換対が該アドレス変換バッファに存在し
なかった場合には、前記M段のアドレス変換手段のうち
前記表示など示された段数のアドレス変換手段によって
所要の実アドレスを得て、該実アドレスを対応する仮想
アドレスと共に該アドレス変換バッファに登録すること
を特徴とするアドレス変換装置。
In a virtual computer system realized in a computer system having virtual memory, there are M sets of address translation means, the first address translation means converts a virtual address of the virtual machine to a second address, and converts the virtual address of the virtual machine to a second address. The conversion means converts the first address into the (K+1)th address, and the M-th address conversion means converts the M-th address into a real address of the main storage device. 1.2.-M-1), an address translation buffer that holds an address translation pair indicating a virtual address of the virtual machine and a corresponding real address of the main storage device, and a current address translation multiplex of the processing device. and an indicator indicating a frequency M, and when a processing device attempts to convert a virtual address of a virtual machine to a corresponding real address of the main storage device using the address translation buffer, the required address translation pair is If it does not exist in the address translation buffer, the required real address is obtained by the address translation means of the number of stages indicated in the display among the M stages of address translation means, and the real address is converted to the corresponding virtual address. An address translation device characterized in that the address translation device registers the same with the address translation buffer.
JP58146317A 1983-08-12 1983-08-12 Address converting device Granted JPS59132483A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP58146317A JPS59132483A (en) 1983-08-12 1983-08-12 Address converting device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58146317A JPS59132483A (en) 1983-08-12 1983-08-12 Address converting device

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP52100501A Division JPS5858752B2 (en) 1977-08-24 1977-08-24 address translation device

Publications (2)

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

Family

ID=15404933

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58146317A Granted JPS59132483A (en) 1983-08-12 1983-08-12 Address converting device

Country Status (1)

Country Link
JP (1) JPS59132483A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014238850A (en) * 2005-01-14 2014-12-18 インテル コーポレイション Virtualization for physical memory of virtual machine system

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62159142U (en) * 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 (en) * 2005-01-14 2014-12-18 インテル コーポレイション Virtualization for physical memory of virtual machine system

Also Published As

Publication number Publication date
JPS6143744B2 (en) 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 (en) Virtual address translation method
JPS63231550A (en) Multiple virtual space control system
JPH0512126A (en) Device and method for address conversion for virtual computer
US4942521A (en) Microprocessor with a cache memory in which validity flags for first and second data areas are simultaneously readable
JP2768503B2 (en) Virtual memory address space access control method
JP3190700B2 (en) Address translator
JPS5858752B2 (en) address translation device
JPS59132483A (en) Address converting device
JPH06100987B2 (en) Address translation control method
JPS61160160A (en) Addressing control device of virtual computer
US20030221045A1 (en) DSP memory bank rotation
JPH01226056A (en) Address converter
JP2895892B2 (en) Data processing device
JPH06103473B2 (en) Memory control method
JPH0336648A (en) Electronic computer, tlb device and microprocessor chip
JPH0816477A (en) Multiprocessor system
JPH083806B2 (en) Conversion index buffer configuration method
JP2591362B2 (en) Data selection processing method
JP2576589B2 (en) Virtual storage access control method
JPH03218546A (en) Address conversion mechanism
JPS59218690A (en) Buffer memory
JPS6362012B2 (en)
JPH0648470B2 (en) Multiple virtual address space controller
JPH04215150A (en) Address conversion device