Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
JPS6349807B2 - - Google Patents
[go: Go Back, main page]

JPS6349807B2 - - Google Patents

Info

Publication number
JPS6349807B2
JPS6349807B2 JP57088572A JP8857282A JPS6349807B2 JP S6349807 B2 JPS6349807 B2 JP S6349807B2 JP 57088572 A JP57088572 A JP 57088572A JP 8857282 A JP8857282 A JP 8857282A JP S6349807 B2 JPS6349807 B2 JP S6349807B2
Authority
JP
Japan
Prior art keywords
segment
address
virtual
page table
virtual address
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.)
Expired
Application number
JP57088572A
Other languages
Japanese (ja)
Other versions
JPS58205974A (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
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 Tokyo Shibaura Electric Co Ltd filed Critical Tokyo Shibaura Electric Co Ltd
Priority to JP57088572A priority Critical patent/JPS58205974A/en
Priority to US06/495,615 priority patent/US4654777A/en
Publication of JPS58205974A publication Critical patent/JPS58205974A/en
Publication of JPS6349807B2 publication Critical patent/JPS6349807B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】 〔発明の技術分野〕 本発明はセグメント番号、ページ番号および変
位情報を有する仮想アドレスを実アドレスに変換
するアドレス変換方式に関する。
DETAILED DESCRIPTION OF THE INVENTION [Technical Field of the Invention] The present invention relates to an address conversion method for converting a virtual address having a segment number, page number, and displacement information into a real address.

〔発明の技術的背景とその問題点〕[Technical background of the invention and its problems]

一般に仮想記憶システムは第1図に示されるよ
うに構成されていた。このようなシステムではプ
ロセツサ11,11………や入出力チヤネル(以
下、CHと称する)12,12………などがメモ
リ装置(以下、MEMと称する)13をアクセス
するためにシステムバス14上に送出されるアド
レスは実アドレスであつた。したがつて、仮想記
憶実現のために仮想アドレスを実アドレスに変換
するアドレス変換処理はプロセツサ11,11…
……、CH12,12………でそれぞれ行なわれ
ていた。このため、第1図のシステムでは各プロ
セツサ、各CHにそれぞれアドレス変換機能を持
たせなくてはならず、コスト高となる欠点があつ
た。
Generally, virtual storage systems have been configured as shown in FIG. In such a system, processors 11, 11, etc., input/output channels (hereinafter referred to as CH) 12, 12, etc., communicate on the system bus 14 in order to access the memory device (hereinafter referred to as MEM) 13. The address sent to was the real address. Therefore, the processors 11, 11, . . . perform address conversion processing for converting virtual addresses into real addresses in order to realize virtual memory.
..., CH12, 12...... were carried out respectively. For this reason, in the system shown in FIG. 1, each processor and each CH must have an address translation function, which has the disadvantage of increasing costs.

そこで、第1図のシステムの欠点を解消するた
めに、第2図に示されるように仮想記憶制御装置
(以下、VSPと称する)21を備えた仮想記憶シ
ステムが考えられている。このシステムでは、
VSP21にアドレス変換機能を持たせ、VSP2
1においてプロセツサ11,11………やCH1
2,12………に代えて仮想アドレスを実アドレ
スに変換するようになつている。このため、第2
図のシステムでは、プロセツサ11,11………
やCH12,12………にアドレス変換機能を持
たせる必要がなく、コストの低減を図ることがで
きる。なお、22,22………はプロセツサ1
1,11………側に設けられたキヤツシユメモ
リ、23はVSP21によつて管理されるページ
ング装置である。
Therefore, in order to eliminate the drawbacks of the system shown in FIG. 1, a virtual storage system including a virtual storage control device (hereinafter referred to as VSP) 21 as shown in FIG. 2 has been considered. In this system,
VSP21 has an address translation function, and VSP2
In 1, processor 11, 11...... and CH1
Instead of 2, 12, etc., a virtual address is converted into a real address. For this reason, the second
In the system shown in the figure, processors 11, 11...
, CH12, 12, . . . does not need to have an address translation function, and costs can be reduced. Note that 22, 22...... is processor 1.
A cache memory 23 is provided on the sides 1, 11, . . . , and a paging device 23 is managed by the VSP 21.

このような第2図のシステムでは、プロセツサ
11,11………やCH12,12………が取り
扱うアドレスは仮想アドレスだけであり、プロセ
ツサ11,11………やCH12,12………か
らシステムバス14上に送出されるアドレスは第
1図のシステムと異なつて仮想アドレスとなつて
いる。したがつてプロセツサ11がキヤツシユメ
モリ22をアクセス(キヤツシユアクセス)する
場合にも、仮想アドレスを用いる必要がある。し
かし、従来、MEM13上のすべての情報(全て
の実アドレス位置)に1対1対応で仮想アドレス
が割り付けられているわけではないため、このよ
うな情報を仮想アドレスを用いてキヤツシユメモ
リ22にエントリしたり、キヤツシユメモリ22
から読み出したりすることは極めて困難であつ
た。例えば、ページテーブルはMEM13すなわ
ち実記憶装置上だけに置かれており、したがつて
ページテーブルには仮想アドレスが割り付けられ
ておらず(すなわち仮想記憶装置側からはページ
テーブルが見えず)、ページテーブルエントリを
仮想アドレスによつてキヤツシユアクセスするこ
とは不可能であつた。このため第2図のシステム
は実現性に乏しかつた。
In the system shown in Fig. 2, the addresses handled by processors 11, 11... and CH12, 12 are only virtual addresses, and the addresses handled by processors 11, 11... and CH12, 12 are only virtual addresses. The addresses sent out on bus 14 are virtual addresses, unlike the system of FIG. Therefore, when the processor 11 accesses the cache memory 22 (cache access), it is necessary to use a virtual address. However, in the past, virtual addresses were not assigned to all information (all real address positions) on the MEM 13 in a one-to-one correspondence, so such information was stored in the cache memory 22 using virtual addresses. entry, cache memory 22
It was extremely difficult to read out the information. For example, the page table is located only on the MEM13, that is, the real storage device, so no virtual address is assigned to the page table (that is, the page table is not visible from the virtual storage device), and the page table It was not possible to cache entries by virtual address. For this reason, the system shown in FIG. 2 has poor feasibility.

〔発明の目的〕[Purpose of the invention]

本発明は上記事情に鑑みてなされたものでその
目的は、仮想アドレスを実アドレスに変換する機
能をメモリ制御装置側に持たせている仮想記憶シ
ステムが実現できるアドレス変換方式を提供する
ことにある。
The present invention has been made in view of the above circumstances, and its purpose is to provide an address conversion method that can realize a virtual memory system in which a memory control device has a function of converting virtual addresses to real addresses. .

本発明の他の目的は、大規模な仮想記憶空間を
サポートできるアドレス変換方式を提供すること
にある。
Another object of the present invention is to provide an address translation method that can support a large-scale virtual storage space.

〔発明の概要〕[Summary of the invention]

本発明はメモリ制御装置側に仮想アドレスを実
アドレスに変換する機能を持たせることによつて
プロセツサや入出力チヤネルなどにアドレス変換
機能を持たせることが不要となるシステムが実現
できるように、ページテーブルなど実記憶上のす
べての情報に仮想アドレスを割り付けるようにし
たものである。そこで本発明では、セグメントテ
ーブルをV=Rセグメントに置くと共に、通常の
セグメントに対するページテーブルを独立した別
のセグメント(ページテーブルセグメント)に置
き、このページテーブルセグメントのページテー
ブルをV=Rセグメントに置き、この2種のペー
ジテーブルを用いて仮想アドレスを実アドレスに
変換する2レベルページング方式のアドレス変換
を行なうようにしている。こうすることにより、
上記2種のページテーブル(の各エントリ)に対
しすべて仮想アドレスを1対1対応で割り付けら
れ、しかも収容数に制限のあるV=Rセグメント
に置かれるページテーブルのサイズは小さくて済
む。
The present invention provides a memory control device with a function to convert virtual addresses into real addresses, thereby realizing a system that does not require an address conversion function in a processor or input/output channel. Virtual addresses are assigned to all information in real memory, such as tables. Therefore, in the present invention, the segment table is placed in the V=R segment, the page table for the normal segment is placed in another independent segment (page table segment), and the page table of this page table segment is placed in the V=R segment. These two types of page tables are used to perform address conversion using a two-level paging method that converts a virtual address into a real address. By doing this,
Virtual addresses can be assigned to (each entry in) the two types of page tables mentioned above in a one-to-one correspondence, and the size of the page table placed in the V=R segment, which has a limited capacity, can be small.

〔発明の実施例〕[Embodiments of the invention]

以下、本発明の一実施例を図面を参照して説明
する。第3図は仮想記憶システムの構成を示すも
のである。図中30,30………はキヤツシユメ
モリ31,31………を有するプロセツサ、4
0,40………はCH(入出力チヤネル)である。
プロセツサ30,30………、CH40,40…
……は仮想アドレスVAおよび実アドレスRAの
うち仮想アドレスのみを扱うようになつており、
したがつて仮想アドレスVAを実アドレスRAに
変換するアドレス変換機能を有していない。50
はMEM(メモリ装置)であり、MEM50にはセ
グメントテーブル(以下、STと称する)51、
第1ページテーブル(以下、PTAと称する)5
2、第2ページテーブル(以下、PTBと称する)
53、および第3ページテーブル(以下、PTC
称する)54が置かれる。ST51、PTA52、
PTB53、PTC54は第11図に示されるように
セグメント単位で分割して管理される仮想記憶装
置(仮想アドレス空間)90にも置かれる。仮想
アドレスのみを扱うプロセツサ30およびCH4
0からは、MEM50および仮想記憶装置90の
両方に配置される同一のテーブル類のうち、仮想
記憶装置90上のテーブル類だけが見えることに
なる。
Hereinafter, one embodiment of the present invention will be described with reference to the drawings. FIG. 3 shows the configuration of the virtual storage system. In the figure, 30, 30...... are processors having cache memories 31, 31...
0, 40... are CHs (input/output channels).
Processor 30, 30......, CH40, 40...
... handles only the virtual address of the virtual address VA and real address RA,
Therefore, it does not have an address conversion function to convert the virtual address VA to the real address RA. 50
is a MEM (memory device), and the MEM 50 includes a segment table (hereinafter referred to as ST) 51,
First page table (hereinafter referred to as PT A ) 5
2. Second page table (hereinafter referred to as PT B )
53, and a third page table (hereinafter referred to as PTC ) 54 are placed. ST51, PT A52 ,
PT B 53 and PT C 54 are also placed in a virtual storage device (virtual address space) 90 that is divided and managed in segments as shown in FIG. Processor 30 and CH4 that handle only virtual addresses
0, of the same tables placed in both the MEM 50 and the virtual storage device 90, only the tables on the virtual storage device 90 are visible.

仮想記憶装置90内の任意アドレス位置を示す
仮想アドレスVAは、第4図に示されているよう
にセグメント番号SN(16ビツト)、ページ番号
PN(13ビツト)、および変位BN(11ビツト)から
構成されている。周知のようにセグメント番号
SNが0の仮想アドレスVAは実アドレスRAに一
致する。
A virtual address VA indicating an arbitrary address position in the virtual storage device 90 is a segment number SN (16 bits) and a page number as shown in FIG.
It consists of PN (13 bits) and displacement BN (11 bits). Segment number as we know
A virtual address VA with an SN of 0 matches the real address RA.

再び第11図を参照すると、ST51、PTB
3、PTC54は、仮想記憶装置90内のセグメン
ト番号SNが0のセグメント、いわゆるV=Rセ
グメントに置かれている。したがつて、MEM5
0(実記憶装置)上のST51、PTA52、PTB
53の各エントリには1対1対応で仮想アドレス
VAが割付けられることになる。仮想記憶装置9
0を構成するセグメントとしては、上記V=Rセ
グメントのほかに、セグメント番号SNが偶数
(但し「0」を除く)の通常セグメントと奇数の
ページテーブルセグメントとがある。そして通常
セグメントには後述するリロケーシヨン方式が適
用される第1種通常セグメントと、1レベルペー
ジング方式が適用される第2種通常セグメント
と、2レベルページング方式が適用される第3種
通常セグメントとがある。上記ページテーブルセ
グメントは当該セグメント自身が上述した第3種
通常セグメントに対するPTA52として使用され
る。すなわちPTA52は仮想アドレス空間上で独
立のセグメントとなつている。本実施例では目的
セグメント(第3種通常セグメント)のセグメン
ト番号SNは第11図に示すように2i(iは正の
整数)であり、ページテーブルセグメントのセグ
メント番号SNは2i+1である。PTA52はセ
グメント2i(第3種通常セグメント)に対する
ページテーブルであり、ページテーブルセグメン
ト2i+1に置かれる。このページテーブルセグ
メント2i+1に対するページテーブルはV=R
セグメントに置かれるPTB53である。また、第
1種、第2種通常セグメントの各セグメント番号
SNは、それぞれ2j(jは正の整数、j≠i)、
2k(kは正の整数、k≠i、j)である。第2
種通常セグメント2kに対するページテーブルは
V=Rセグメントに置かれるPTC54である。こ
のように実施例では、ページテーブル(PTA
2、PTB53、PTC54)にもセグメント番号
SNが与えられる。
Referring to Figure 11 again, ST51, PT B 5
3. The PT C 54 is placed in the segment with segment number SN of 0 in the virtual storage device 90, that is, the so-called V=R segment. Therefore, MEM5
ST51, PT A 52, PT B on 0 (real storage device)
Each of the 53 entries has a virtual address in one-to-one correspondence.
VA will be assigned. Virtual storage device 9
In addition to the above-mentioned V=R segment, the segments constituting 0 include normal segments whose segment numbers SN are even numbers (excluding "0") and page table segments whose segment numbers are odd numbers. The normal segments are classified into type 1 normal segments to which the relocation method described below is applied, type 2 normal segments to which the 1-level paging method is applied, and type 3 normal segments to which the 2-level paging method is applied. be. The page table segment itself is used as the PTA 52 for the above-mentioned type 3 normal segment. That is, PTA 52 is an independent segment on the virtual address space. In this embodiment, the segment number SN of the target segment (type 3 normal segment) is 2i (i is a positive integer) as shown in FIG. 11, and the segment number SN of the page table segment is 2i+1. PT A 52 is a page table for segment 2i (third type normal segment), and is placed in page table segment 2i+1. The page table for this page table segment 2i+1 is V=R
PT B 53 placed in the segment. In addition, each segment number of the 1st type and 2nd type normal segment
SN is 2j (j is a positive integer, j≠i),
2k (k is a positive integer, k≠i, j). Second
The page table for seed normal segment 2k is PTC 54 located in the V=R segment. Thus, in the embodiment, the page table (PT A 5
2, PT B 53, PT C 54) also have segment numbers
SN is given.

第3図において、60はページング装置、70
はMEM50に接続されるVSP(仮想記憶制御装
置)、80はプロセツサ30,30………、CH
40,40………、およびVSP70などを結合
するためのシステムバスである。VSP70はプ
ロセツサ30,30………、CH40,40……
…などからシステムバス80上に送出される仮想
アドレスを実アドレスRAに変換してMEM50
をアクセスすると共に、ページング装置60を管
理してページングを行なう機能を有する。以上の
説明から明らかなように、本実施例ではプロセツ
サ30,30………、CH40,40………に仮
想アドレスVAを実アドレスRAに変換するアド
レス変換機能を持たせておらず、このアドレス変
換機能をVSP70に集中させている。
In FIG. 3, 60 is a paging device, 70
is a VSP (virtual storage control unit) connected to MEM50, 80 is a processor 30, 30......, CH
40, 40, etc., and a system bus for connecting the VSP 70 and the like. VSP70 is processor 30, 30......, CH40, 40...
MEM50 converts the virtual address sent onto the system bus 80 from ... etc. to the real address RA.
It has the function of accessing the paging device 60 and managing the paging device 60 to perform paging. As is clear from the above explanation, in this embodiment, the processors 30, 30..., CH40, 40...... are not provided with an address conversion function to convert the virtual address VA to the real address RA, and the Conversion functions are concentrated in VSP70.

プロセツサ30においてメモリリードアクセス
が必要となると、仮想アドレスVAを用いたキヤ
ツシユメモリ31へのアクセスが行なわれる。そ
して、目的情報がキヤツシユメモリ31に存在し
ないキヤツシユミスの場合、或いはメモリライト
アクセスの場合には、プロセツサ30はシステム
バス80上に仮想アドレスVAを送出する。VSP
70はシステムバス80上の仮想アドレスVAを
対応する実アドレスRAに変換し、この実アドレ
スRAを用いてMEM50をアクセスする。そし
てメモリリードであればVSP70はMEM50か
ら目的情報を読み出してプロセツサ30に送出
し、メモリライトであればVSP70はMEM50
に対する情報の書き込みを行なう。これは、CH
40がメモリアクセスを必要とする場合において
も、CH40にキヤツシユメモリが設けられてお
らずキヤツシユアクセスが行なわれない点を除い
てプロセツサ30の場合と同様である。プロセツ
サ30、CH40のいずれかからのメモリライト
アクセスが行なわれる場合、書き込み情報と仮想
アドレスVAを同一とする情報がキヤツシユメモ
リ31に存在すれば、キヤツシユメモリ31内の
該当する情報も更新される。
When a memory read access is required in the processor 30, the cache memory 31 is accessed using the virtual address VA. In the case of a cache miss in which the target information does not exist in the cache memory 31, or in the case of memory write access, the processor 30 sends the virtual address VA onto the system bus 80. VSP
70 converts the virtual address VA on the system bus 80 into a corresponding real address RA, and accesses the MEM 50 using this real address RA. If it is a memory read, the VSP 70 reads the target information from the MEM 50 and sends it to the processor 30, and if it is a memory write, the VSP 70 reads the target information from the MEM 50.
Write information to. This is CH
Even when CH 40 requires memory access, it is similar to the case of processor 30 except that CH 40 is not provided with a cache memory and no cache access is performed. When a memory write access is performed from either the processor 30 or CH 40, if information in which the write information and the virtual address VA are the same exists in the cache memory 31, the corresponding information in the cache memory 31 is also updated. Ru.

第3図のVSP70において、71はシステム
バス80を介して転送される40ビツトの仮想アド
レスVAが置数される仮想アドレスレジスタ(以
下、VARと称する)である。また、72は
MEM50(実記憶装置)上に置かれているST
51の起点アドレス情報が置数されるセグメント
テーブル起点アドレスレジスタ(以下、STORと
称する)である。73はV=Rセグメントの仮想
アドレスVAに対するアドレス変換時に起動され
る第1アドレス変換部(以下、ATAと称する)、
74は第1種通常セグメントの仮想アドレスVA
に対するアドレス変換時に起動される第2アドレ
ス変換部(以下、ATBと称する)である。75,
76はそれぞれ第2種通常セグメント、第3種通
常セグメントの仮想アドレスVAに対するアドレ
ス変換時に起動される第3アドレス変換部(以
下、ATCと称する)、第4アドレス変換部(以
下、ATDと称する)である。77はMEM50に
出力するための実アドレスRAが置換される32ビ
ツトの実アドレスレジスタ(以下、RARと称す
る)、78はVSP70の中心を成す制御部(以
下、CNTと称する)である。CNT78はマイク
ロプログラムメモリ(図示せず)を内蔵してお
り、マイクロプログラム制御によりATA73、
ATB74、ATC75、ATD76などを制御する。
CNT78はVAR71に置数されている仮想アド
レスVA中のセグメント番号SNがSN=0(オー
ル“0”)であるか否かを判断し、SN=0すなわ
ちV=Rセグメントである場合、ATA73を起
動してV=R方式のアドレス変換を行なう。明ら
かなように、V=Rセグメントでは仮想アドレス
VAは実アドレスRAに一致する。本実施例にお
いてV=Rセグメントに該当する仮想アドレス
VAはSN=0のセグメント番号SN(16ビツト)
と、24ビツトのセグメント内相対アドレス(PN
とBNとの連結情報に対応)とから構成されてお
り、このセグメント内相対アドレスが実アドレス
RAで示すことにある。ただし、本実施例で取り
扱われる実アドレスRAは32ビツト構成であるた
め、ATA73はVAR71に置数されている仮想
アドレスVA中の下位32ビツトを実アドレスRA
としてRAR77に出力する。上記したように、
V=R方式のアドレス変換の対象となるV=Rセ
グメント内仮想アドレスVAは実アドレスRAに
一致し、実質的なアドレス変換処理を必要としな
いため、極めて高速にアドレス変換が行える。し
たがつて、V=R方式は実質的なアドレス変換を
行わずに参照する必要があるST51などのテー
ブル類、更には超高速処理を必要とするプログラ
ムをアクセスするのに適する。但し、V=Rセグ
メント(に対応するMEM50内の領域)の大き
さは限られているため、適用できるプログラム量
などは著しく制限される。
In the VSP 70 shown in FIG. 3, 71 is a virtual address register (hereinafter referred to as VAR) in which a 40-bit virtual address VA transferred via the system bus 80 is stored. Also, 72 is
ST located on MEM50 (real storage device)
This is a segment table starting point address register (hereinafter referred to as STOR) in which starting point address information No. 51 is set. 73 is a first address conversion unit (hereinafter referred to as AT A ) activated when converting the address for the virtual address VA of the V=R segment;
74 is the virtual address VA of the first type normal segment
This is a second address translation unit (hereinafter referred to as AT B ) that is activated when converting an address for. 75,
Reference numerals 76 denote a third address translation unit (hereinafter referred to as AT C ) and a fourth address translation unit (hereinafter referred to as AT ). 77 is a 32-bit real address register (hereinafter referred to as RAR) in which the real address RA for output to the MEM 50 is replaced, and 78 is a control unit (hereinafter referred to as CNT) forming the center of the VSP 70. CNT78 has a built-in microprogram memory (not shown), and under microprogram control AT A73 ,
Controls AT B 74, AT C 75, AT D 76, etc.
The CNT 78 determines whether the segment number SN in the virtual address VA stored in the VAR 71 is SN = 0 (all "0"), and if SN = 0, that is, V = R segment, AT A 73 to perform V=R method address conversion. As is clear, in the V=R segment, the virtual address
VA matches real address RA. In this example, the virtual address corresponding to the V=R segment
VA is the segment number SN (16 bits) for SN = 0.
and a 24-bit intra-segment relative address (PN
(corresponding to the concatenation information with BN), and the relative address within this segment is the real address.
It is shown in RA. However, since the real address RA handled in this embodiment has a 32-bit configuration, the AT A 73 uses the lower 32 bits of the virtual address VA set in the VAR 71 as the real address RA.
Output to RAR77 as As mentioned above,
The virtual address VA in the V=R segment, which is the target of address translation in the V=R method, matches the real address RA and does not require any substantial address translation processing, so address translation can be performed at extremely high speed. Therefore, the V=R method is suitable for accessing tables such as ST51 that need to be referenced without performing substantial address conversion, and for accessing programs that require extremely high-speed processing. However, since the size of the V=R segment (the corresponding area in the MEM 50) is limited, the amount of programs that can be applied is significantly limited.

一方、SN≠0すなわちV=Rセグメント以外
のセグメントである場合、CNT78はセグメン
ト番号SNおよびSTOR72の内容に基づいて
MEM50上のST51の対応するエントリを参
照する。ST51の各エントリの内容であるセグ
メント記述子は第5図に示されているように、2
ビツト構成の変換タイプ指定情報(以下、変換タ
イプ番号と称する)T、22ビツト構成のページテ
ーブル起点アドレスPTOなどから構成されてい
る。変換タイプ番号TはT=0、1、2のいずれ
かであり、T=0でリロケーシヨン方式のアドレ
ス変換を、T=1で1レベルページング方式のア
ドレス変換を、T=2で2レベルページング方式
のアドレス変換をそれぞれ指定するようになつて
いる。なお、T=0の場合、ST51の対応する
エントリにはページテーブル起点アドレスPTO
に代えて該当セグメントのMEM50(実記憶装
置)上での先頭位置を実ページ番号で示す起点情
報ORIGIN(最上位ビツトは“0”)が書き込まれ
ている。CNT78はST51を参照した結果、対
応エントリ中の変換タイプ番号TがT=0であれ
ばATB74を起動してリロケーシヨン方式のア
ドレス変換を行なう。同じくCNT78はT=1
であればATC75を起動して1レベルページン
グ方式のアドレス変換を行ない、T=2であれば
ATD76を起動して2レベルページング方式の
アドレス変換を行なう。すなわち、ATB74、
CNT78はリロケーシヨン方式のアドレス変換
機能を有し、ATC75、CNT78は1レベルペ
ージング方式のアドレス変換機能を有し、ATD
76、CNT78は2レベルページング方式のア
ドレス変換機能を有している。
On the other hand, if SN≠0, that is, V=a segment other than the R segment, CNT78 is based on the segment number SN and the contents of STOR72.
Refer to the corresponding entry of ST51 on MEM50. The segment descriptor, which is the content of each entry in ST51, is 2 as shown in Figure 5.
It consists of bit-structured conversion type designation information (hereinafter referred to as conversion type number) T, page table starting point address PTO of 22-bit structure, and so on. The translation type number T is either T=0, 1, or 2, where T=0 indicates relocation method address translation, T=1 indicates 1-level paging method address translation, and T=2 indicates 2-level paging method address translation. It is designed to specify address translation for each address. Note that when T=0, the corresponding entry in ST51 contains the page table starting address PTO.
Instead, origin information ORIGIN (the most significant bit is "0") indicating the starting position of the corresponding segment on the MEM 50 (real storage device) by a real page number is written. As a result of referring to ST51, the CNT 78 activates the AT B 74 to perform relocation type address translation if the translation type number T in the corresponding entry is T=0. Similarly, T=1 for CNT78
If so, start AT C 75 and perform address translation using the 1-level paging method, and if T=2,
AT D 76 is activated to perform two-level paging type address translation. That is, AT B 74,
CNT78 has a relocation type address conversion function, AT C75 and CNT78 have a one-level paging type address conversion function, and AT D
76, CNT78 has a two-level paging type address translation function.

第6図はATB74、CNT78によるアドレス
変換機能を模式的に示す機能構成図であり、10
0は加算器である。VAR71に置数されている
仮想アドレスVA中のセグメント番号SNと
STOR72の内容に基づいてST51の対応する
エントリの内容(セグメント記述子)が読み出さ
れ、当該セグメント記述子中の変換タイプ番号T
がT=0である場合、同じセグメント記述子中の
ORIGIN(下位21ビツト)と、上記仮想アドレス
VA中のページ番号PNとが加算器100に導か
れる。しかして、加算器100によりORIGINと
PNとが加算され、これによりページフレーム番
号PFNが求められる。そして、このページフレ
ーム番号PFNと上記仮想アドレスVA中の変位
BNとの連結情報が実アドレスRAとしてRAR7
7に置数される。これがリロケーシヨン方式のア
ドレス変換である。
FIG. 6 is a functional configuration diagram schematically showing the address conversion function of AT B74 and CNT78.
0 is an adder. Segment number SN in virtual address VA placed in VAR71 and
The contents of the corresponding entry (segment descriptor) in ST51 are read based on the contents of STOR72, and the conversion type number T in the segment descriptor is read out.
is T=0, then in the same segment descriptor
ORIGIN (lower 21 bits) and the above virtual address
The page number PN in VA is directed to an adder 100. Therefore, the adder 100 adds ORIGIN and
PN is added, and the page frame number PFN is obtained. And the displacement in this page frame number PFN and the above virtual address VA
Connection information with BN is RAR7 as real address RA
The number is placed at 7. This is relocation-based address translation.

上記したように、リロケーシヨン方式のアドレ
ス変換では、ページテーブルを参照する必要がな
いため、高速アドレス変換が可能となり、したが
つて高速処理を必要とするプログラムをアクセス
するのに適する。但し、ページング方式でないこ
とから、MEM50に対する領域割付けのために
はMEM50上で大きな連続領域が必要となるの
で、適用プログラムはそのサイズが小規模のもの
に限られる。
As described above, in relocation-based address conversion, there is no need to refer to a page table, so high-speed address conversion is possible, and therefore it is suitable for accessing programs that require high-speed processing. However, since it is not a paging method, a large continuous area is required on the MEM 50 in order to allocate an area to the MEM 50, so the applicable programs are limited to those with a small size.

第7図はATC75、CNT78によるアドレス
変換機能を模式的に示す機能構成図であり、20
0は加算器、201は24ビツトのレジスタであ
る。VAR71に置数されている仮想アドレス
VAが前記第2種通常セグメントに対応する場
合、ST51から読み出されるセグメント記述子
中の変換タイプ番号TはT=1となつている。こ
の場合、セグメント記述子中のPTOと、上記仮
想アドレスVA中のPNとが加算器200に導か
れる。しかして加算器200によりPTOとPNと
が加算され、この加算結果(22ビツト)は24ビツ
トのレジスタ201の上位22ビツトの領域に置数
される。このレジスタ201の下位2ビツトには
“00”が置数されており、これにより上記加算結
果が4倍されたことになる。これは、本実施例に
おいてPTC54各エントリのサイズを4バイトと
した(PTA52、PTB53についても同様)こと
になる。この場合、PTOはV=Rセグメントに
置かれたPTC54の起点アドレスであり、したが
つてPTOとPNとを加算してその加算結果を4倍
した値、すなわちレジスタ201の内容はPTC
4における目的のエントリの実アドレスRA0(=
仮想アドレスVA0)を示している。レジスタ2
01で指定されるPTC54のエントリには目的と
するページフレーム番号PFNが書かれており、
このPFNと仮想アドレスVA中のBNとの連結情
報が実アドレスRAとしてRAR77に置数され
る。これが1レベルページング方式のアドレス変
換である。
Figure 7 is a functional configuration diagram schematically showing the address translation function of AT C75 and CNT78.
0 is an adder, and 201 is a 24-bit register. Virtual address placed in VAR71
When VA corresponds to the second type normal segment, the conversion type number T in the segment descriptor read from ST51 is T=1. In this case, the PTO in the segment descriptor and the PN in the virtual address VA are directed to the adder 200. PTO and PN are added by adder 200, and the result of this addition (22 bits) is placed in the upper 22 bits of register 201 of 24 bits. "00" is placed in the lower two bits of this register 201, which means that the above addition result has been multiplied by four. This means that in this embodiment, the size of each entry in the PTC 54 is 4 bytes (the same applies to the PT A 52 and PT B 53). In this case, PTO is the starting address of PTC 54 located in the V=R segment, and therefore the value obtained by adding PTO and PN and multiplying the addition result by 4, that is, the contents of register 201 is PTO 5
The real address of the target entry in 4 is RA 0 (=
virtual address VA 0 ). register 2
The target page frame number PFN is written in the entry of PT C 54 specified by 01,
Concatenation information between this PFN and the BN in the virtual address VA is placed in the RAR 77 as the real address RA. This is address translation using the one-level paging method.

第8図はATD76、CNT78によるアドレス
変換機能を模式的に示す機能構成図であり、30
0,301はそれぞれ24ビツト、32ビツトのレジ
スタである。VAR71に置換されている仮想ア
ドレスVAが前記第3種通常セグメントの場合、
ST51から読み出されるセグメント記述子中の
変換タイプ番号TはT=2となつている。この場
合、セグメント記述子中のPTO(22ビツト)はそ
の上位18ビツトだけが意味があり(下位4ビツト
は例えばオール“0”)、PTB53のV=Rセグメ
ント上での起点アドレスを64バイト単位で指定す
る。このPTOの上位18ビツトは24ビツトのレジ
スタ300の上位18ビツトの領域に置数される。
このレジスタ300の後続する4ビツトの領域に
は仮想アドレスVA中のPN(13ビツト)の上位4
ビツト(これをHPNと称する)が置数される。
レジスタ300の下位2ビツトには“00”が置数
されており、このレジスタ300の内容すなわち
PTO、HPN、“00”の連結情報がPTB53にお
ける目的のエントリの実アドレスRA0(=仮想ア
ドレスVA0)となる。レジスタ300で指定さ
れるPTB53のエントリには、目的セグメント
(第3種通常セグメント2i)に対するページテ
ーブル(PTA52)が置かれているページのペー
ジフレームPFN1(21ビツト)が書かれており、
このPFN1と仮想アドレスVA中のPN(13ビツ
ト)の下位9ビツト(これをLPNと称する)と
の連結情報(30ビツト)が32ビツトのレジスタ3
01の上位30ビツトの領域に置数される。このレ
ジスタ301の下位2ビツトには“00”が置数さ
れており、このレジスタ301の内容すなわち
PFN1、LPN、“00”の連結情報がPTA52にお
ける目的エントリの実アドレスRA1となる。レジ
スタ301で指定されるPTA52のエントリには
目的とするページフレーム番号PFN2が書かれ
ており、このPFN2と仮想アドレスVA中のBN
との連結情報が実アドレスRAとしてRAR77に
置数される。これが2レベルページング方式のア
ドレス変換である。
FIG. 8 is a functional configuration diagram schematically showing the address conversion function of AT D 76 and CNT 78.
0 and 301 are 24-bit and 32-bit registers, respectively. If the virtual address VA replaced by VAR71 is the third type normal segment,
The conversion type number T in the segment descriptor read from ST51 is T=2. In this case, only the upper 18 bits of PTO (22 bits) in the segment descriptor are meaningful (the lower 4 bits are all "0", for example), and the starting address on the V=R segment of PTB 53 is 64 Specify in bytes. The upper 18 bits of this PTO are placed in the upper 18 bit area of the 24-bit register 300.
The following 4-bit area of this register 300 contains the upper 4 bits of PN (13 bits) in the virtual address VA.
A bit (this is called HPN) is set.
“00” is set in the lower two bits of register 300, and the contents of this register 300, that is,
The concatenated information of PTO, HPN, and “00” becomes the real address RA 0 (=virtual address VA 0 ) of the target entry in PT B 53. The page frame PFN1 (21 bits) of the page in which the page table (PT A 52) for the target segment (type 3 normal segment 2i) is placed is written in the entry of PT B 53 specified by the register 300. Ori,
The concatenation information (30 bits) between this PFN1 and the lower 9 bits (this is called LPN) of the PN (13 bits) in the virtual address VA is stored in the 32-bit register 3.
It is placed in the upper 30 bit area of 01. “00” is set in the lower two bits of this register 301, and the contents of this register 301 are
The concatenated information of PFN1, LPN, and "00" becomes the real address RA1 of the target entry in PTA 52. The target page frame number PFN2 is written in the entry of PT A 52 specified by the register 301, and this PFN2 and the BN in the virtual address VA
The connection information with the real address RA is placed in the RAR 77. This is the two-level paging method address translation.

本実施例において、1セグメントを構成するペ
ージ数は、ページフレーム番号PNが13ビツト構
成であることから213ページである。したがつて
1セグメントに対するページテーブルのエントリ
数は213であり、1エントリに4バイト(4アド
レス分)を充てている本実施例では1セグメント
に対するページテーブルのサイズは215(バイト)
となる。このため、このようなページテーブルを
(当該ページテーブルにも仮想アドレスが割り付
けられるように)V=Rセグメント内に置く本実
施例の1レベルページング方式では、V=Rセグ
メントが圧迫されてしまい、実記憶装置(MEM
50)の容量を大きくすると共にセグメントサイ
ズを大きくしないと(この場合、同一仮想アドレ
ス空間のもとでは、セグメント数を少なくするこ
とになる)多数のセグメントすなわち大規模な仮
想アドレス空間をサポートすることが困難とな
る。
In this embodiment, the number of pages constituting one segment is 213 pages because the page frame number PN has a 13-bit configuration. Therefore, the number of entries in the page table for one segment is 2 13 , and in this embodiment where 4 bytes (for 4 addresses) are allocated to 1 entry, the size of the page table for 1 segment is 2 15 (bytes).
becomes. For this reason, in the one-level paging method of this embodiment in which such a page table is placed within the V=R segment (so that the page table is also assigned a virtual address), the V=R segment is compressed. Real storage device (MEM)
50) to support a large number of segments, i.e., a large virtual address space, without increasing the segment size (in this case, the number of segments would be reduced under the same virtual address space). becomes difficult.

但し、1レベルページング方式では、ページテ
ーブルの参照回数が1回で済むために比較的高速
なアドレス変換が可能となり、高速処理が要求さ
れる中規模プログラムに適する。また、リロケー
シヨン方式は上述の問題は無いものの、動的再配
置の融通性が少ないため、実記憶装置(MEM5
0)の効率的運用が図り難い欠点がある。
However, the one-level paging method allows relatively high-speed address conversion because the page table is referenced only once, and is suitable for medium-sized programs that require high-speed processing. In addition, although the relocation method does not have the above-mentioned problems, it has less flexibility in dynamic relocation, so it
0) has the disadvantage that it is difficult to operate it efficiently.

これに対し2レベルページング方式では、以下
に示すように大規模な仮想アドレス空間をサポー
トすることが可能となる。本実施例では(第3種
通常)セグメント2iのページテーブル(PTA
2)を(ページテーブル)セグメント2i+1に
置き、このセグメント2i+1に置かれるページ
テーブル(PTB53)をV=Rセグメント置き、
これらのページテーブルに仮想アドレスを割り付
けながら2レベルページング方式を可能としてい
る。上記セグメント2i+1に置かれる、サイズ
が215(バイト)のページテーブル(PTA52)の
占めるページ数は1ページのサイズが211(バイ
ト)であることから215/211=24ページである。
これは、セグメント2i+1に置かれるページテー
ブル(PTA52)に対するページテーブル(PTB
53)に必要なエントリ数が24であることを示す
ものである。このため、1エントリに4バイトを
充てている本実施例では上記ページテーブル
(PTB53)のサイズは26(バイト)となる。この
ページテーブル(PTB53)はV=Rセグメント
内に置かれているが、そのサイズが上述のように
26(バイト)、すなわち1レベルページング方式で
適用されるページテーブル(PTC54)の26
215=1/211であるため、V=Rセグメントを圧
迫することなく極めて多数のセグメントに対し、
2レベルページング方式を適用することができ
る。
In contrast, the two-level paging method can support a large-scale virtual address space as shown below. In this embodiment, the (3rd type normal) page table of segment 2i (PT A 5
2) is placed in the (page table) segment 2i+1, the page table (PT B 53) placed in this segment 2i+1 is placed in the V=R segment,
A two-level paging system is made possible by allocating virtual addresses to these page tables. Since the size of one page is 2 11 (bytes), the number of pages occupied by the page table (PT A 52) with a size of 2 15 (bytes) placed in segment 2i+1 is 2 15 / 2 11 = 2 4 pages. It is.
This means that the page table (PT B
This shows that the number of entries required for 53) is 24 . Therefore, in this embodiment where 4 bytes are allocated to one entry, the size of the page table (PT B 53) is 2 6 (bytes). This page table (PT B 53) is placed in the V=R segment, and its size is as described above.
2 6 (bytes), i.e. 2 6 / of the page table (PT C 54) applied in the one-level paging method.
2 15 = 1/2 11 , so for an extremely large number of segments without compressing the V=R segment,
A two-level paging scheme can be applied.

但し、2レベルページング方式では2種のペー
ジテーブル(PTA52、PTB53)を参照する必
要があるため、1レベルページングに比べて高速
アドレス変換が困難であり、したがつてそれほど
高速処理を必要としない大規模なプログラム等に
適する。
However, in the two-level paging method, it is necessary to refer to two types of page tables (PT A 52, PT B 53), so high-speed address conversion is difficult compared to one-level paging, and therefore high-speed processing is not required. Suitable for large-scale programs that do not require it.

ところで2レベルページング方式で、V=Rセ
グメント内に置かれるページテーブル(PTB
3)を参照するための24ビツトの実アドレスRA0
(=仮想アドレスVA0)中のHPN(4ビツト)は
明らかなようにページテーブル(PTB53)の24
個のエントリの一つを示すものである。したがつ
て、当該エントリの内容であるページフレーム番
号PFN1(21ビツト)は1ページテーブル当り
24種類あり、それぞれ下位ビツトが異なつてい
る。一方、セグメント2i+1に置かれるセグメ
ント2iのページテーブル(PTA52)のサイズ
は215すなわちエントリ数は213個であり、32ビツ
トの実アドレスRA1中のPFN1の下位4ビツト
とLPN(9ビツト)との連結情報(13ビツト)に
よつてこれら213個のエントリの一つが示される。
本実施例において、(第3種通常)セグメント2
i中の任意の仮想アドレスVAが第8図に示され
ているようにSN(16ビツト)、HPN(4ビツト)、
LPN(9ビツト)およびBN(11ビツト)で構成さ
れている場合、(ページテーブル)セグメント2
i+1に置かれているセグメント2iのページテ
ーブル(PTA52)の上記仮想アドレスVAに対
応するエントリの先頭位置を示す仮想アドレス
VA1の変位BN(11ビツト)は、第8図のレジス
タ301の内容(上記対応するエントリの先頭位
置を示す実アドレスRA1)から明らかなように上
記LPN(9ビツト)と“00”との連結情報であ
る。一方、上記仮想アドレスVA1のページ番号
PNは、第8図のレジスタ300の内容(セグメ
ント2i+1に置かれているセグメント2iのペ
ージテーブルの更にページテーブル、すなわち
PTA52の対応するエントリの先頭位置を示す実
アドレスRA0)から明らかなように上記仮想アド
レスVA中のHPNである。PNは13ビツト、
HPNは4ビツトであり、したがつて仮想アドレ
スVA1のページ番号PNは9ビツトのオール
“0”情報(上位ビツト)と4ビツトのHPN(下
位ビツト)との連結情報である。第9図はこの仮
想アドレスVAと仮想アドレスVA1との関係を示
したものである。以上の説明から容易に理解でき
るように本実施例によれば全てのページテーブル
(PTA52、PTB53、PTC54)の各エントリ
に対して1対1対応で仮想アドレスVAを割り付
けることができる。したがつて、各プロセツサ3
0,30………において仮想アドレスVAを用い
たキヤツシユアクセスが行なえる。これにより、
プロセツサ30,30………やCH40,40…
……に仮想アドレスVAを実アドレスRAに変換
する機能を持たせず、このアドレス変換機能を
VSP70に集中させるようにした仮想記憶シス
テムは有効に機能し得る。
By the way, in the two-level paging method, the page table (PT B 5
3) 24-bit real address RA 0 to reference
As is clear, the HPN (4 bits) in the virtual address VA 0 is 2 4 of the page table (PT B 53).
This indicates one of the entries. Therefore, the page frame number PFN1 (21 bits), which is the content of the entry, is per page table.
2 There are four types, each with a different lower bit. On the other hand, the size of the page table (PT A 52) of segment 2i placed in segment 2i+1 is 215 , that is, the number of entries is 213 , and the lower 4 bits of PFN1 and LPN (9 One of these 213 entries is indicated by the linkage information (13 bits) with
In this embodiment, (3rd type normal) segment 2
As shown in Figure 8, any virtual address VA in i is SN (16 bits), HPN (4 bits),
When configured with LPN (9 bits) and BN (11 bits), (page table) segment 2
Virtual address indicating the start position of the entry corresponding to the above virtual address VA in the page table (PT A 52) of segment 2i located at i+1
The displacement BN (11 bits) of VA 1 is the same as the above LPN (9 bits) and "00", as is clear from the contents of the register 301 in FIG. 8 (actual address RA 1 indicating the start position of the corresponding entry above). This is the connection information of Meanwhile, the page number of the above virtual address VA 1
PN is the contents of the register 300 in FIG. 8 (an additional page table of the page table of segment 2i placed in segment 2i+1,
As is clear from the real address RA 0 ) indicating the start position of the corresponding entry in PTA 52 , this is the HPN in the virtual address VA. PN is 13 bits,
The HPN is 4 bits, so the page number PN of the virtual address VA1 is concatenated information of 9 bits of all "0" information (upper bits) and 4 bits of HPN (lower bits). FIG. 9 shows the relationship between this virtual address VA and virtual address VA1 . As can be easily understood from the above explanation, according to this embodiment, virtual addresses VA are assigned in a one-to-one correspondence to each entry of all page tables (PT A 52, PT B 53, PT C 54). I can do it. Therefore, each processor 3
Cache access using the virtual address VA can be performed at 0, 30, . . . . This results in
Processor 30, 30... and CH40, 40...
...do not have the function to convert the virtual address VA to the real address RA, and this address conversion function is
A virtual storage system that is centralized in the VSP 70 can function effectively.

次に、(ページテーブル)セグメント2i+1
内の仮想アドレスVA1を実アドレスRA1に変換す
る場合について説明する。この場合には、CNT
78によつてATD76が起動され、(第3種通
常)セグメント2i内の仮想アドレスVAを実ア
ドレスRAに変換するときと一部類似した動作が
行なわれる。第10図はATD76、CNT78に
よる上記仮想アドレスVA1に対するアドレス変
換機能を模式的に示す機能構成図であり、400
は減算器である。本実施例では、ST51のセグ
メントテーブルエントリは偶数番号のセグメント
に対してのみ存在しているため、奇数番号のセグ
メント(ページテーブルセグメント)2i+1内
の仮想アドレスVA1をアドレス変換する場合、
減算器400により仮想アドレスVA1中のセグ
メント番号SNを−1して2iというセグメント
番号に対する(ST51の)セグメントテーブル
エントリを用いるようにしている。ST51から
読み出されるセグメント記述子中のPTOの上位
18ビツトは第8図の場合と同様に24ビツトのレジ
スタ300の上位18ビツトの領域に置数される。
このレジスタ300の後続する4ビツトの領域に
は仮想アドレスVA1中のPNの下位4ビツト(第
9図のHPNに対応)が置数される。レジスタ3
00の下位2ビツトには“00”が置数されてお
り、このレジスタ300の内容がPTB53におけ
る目的エントリの実アドレスRA0(=仮想アドレ
スVA0)となる。レジスタ300で指定されて
いるPTB53のエントリには、目的とするページ
フレーム番号PFN1が書かれており、このPFN
1と仮想アドレスVA1中のBN(第9図のLPNと
“00”との連結情報に対応)との連結情報が実ア
ドレスRA1としてRAR77に置数される。この
アドレス変換は、PTA52を更新する場合などに
必要となる。
Next, (page table) segment 2i+1
The case of converting the virtual address VA 1 in the real address RA 1 will be explained. In this case, CNT
78 activates the AT D 76, which performs an operation partially similar to when converting the virtual address VA in the segment 2i (type 3 normal) to the real address RA. FIG. 10 is a functional configuration diagram schematically showing the address conversion function for the virtual address VA 1 by AT D 76 and CNT 78, and 400
is a subtractor. In this embodiment, the segment table entry of ST51 exists only for even-numbered segments, so when converting the virtual address VA 1 in odd-numbered segment (page table segment) 2i+1,
The subtracter 400 subtracts the segment number SN in the virtual address VA 1 by 1 to use the segment table entry (in ST51) for the segment number 2i. Upper PTO in the segment descriptor read from ST51
The 18 bits are placed in the upper 18 bit area of the 24 bit register 300 as in the case of FIG.
The lower 4 bits of PN in the virtual address VA1 (corresponding to HPN in FIG. 9) are placed in the subsequent 4-bit area of this register 300. register 3
“00” is set in the lower two bits of 00, and the contents of this register 300 become the real address RA 0 (=virtual address VA 0 ) of the target entry in the PTB 53. The target page frame number PFN1 is written in the entry of PT B 53 specified in the register 300, and this PFN
1 and the BN in the virtual address VA 1 (corresponding to the connection information between LPN and "00" in FIG. 9) is placed in the RAR 77 as the real address RA 1 . This address translation is required when updating the PTA 52, for example.

ここまでの説明では、目的とするページが全て
実記憶装置(MEM50)に存在するものとした
が、もし実記憶装置に存在しない場合にはページ
フオールト例外が発生し、次の動作が行なわれ
る。すなわち、VSP70により、MEM50とペ
ージング装置60との間でページアウト或いはペ
ージインが行なわれる。そして、メモリ参照を要
求したプロセツサ30はその間、現在実行中のタ
スクを待たせ、別のタスクを実行する。
In the explanation so far, it is assumed that all the target pages exist in the real storage device (MEM50), but if they do not exist in the real storage device, a page fault exception occurs and the following operation is performed. . That is, the VSP 70 performs page-out or page-in between the MEM 50 and the paging device 60. The processor 30 that requested the memory reference then makes the currently executing task wait and executes another task.

なお、前記実施例では、VSP70内にATA
3、ATB74、ATC75、ATD76が設けられ
ているものとして説明したが、第6図乃至第8
図、並びに第10図の機能構成図から理解できる
ように、加算器100,200やレジスタ20
1,300などを有する共通のハード機構部と
し、CNT78がセグメントの性質に応じてハー
ド機構部を制御すると共にST51、PTA52、
PTB53、PTC54の参照等を行なうことによ
り、前述した4種のアドレス変換を行なうように
してもよい。また、前記実施例では、偶数セグメ
ント番号のセグメントを通常セグメント、奇数セ
グメント番号のセグメントをページテーブルセグ
メントとした場合について説明したが、これらの
分け方については前記実施例に限定されるもので
はない。更に前記実施例では、V=R方式のアド
レス変換であるか否かを仮想アドレスVA中のセ
グメント番号によつて判断するものとして説明し
たが、他のアドレス変換方式と同様にセグメント
記述子中の変換タイプ記号TでV=R方式を指定
するようにしてもよい。この場合には、V=Rセ
グメント内の仮想アドレスであつても、ST51
(セグメントテーブル)が参照されることになる。
なお、本発明の要旨によれば、V=R方式、リロ
ケーシヨン方式、更には1レベルページング方式
のアドレス変換機能は必ずしも必要でない。
In addition, in the above embodiment, AT A 7 is included in the VSP 70.
3, AT B 74, AT C 75, and AT D 76 have been described, but FIGS. 6 to 8
As can be understood from the diagram and the functional configuration diagram of FIG.
1,300, etc., and CNT78 controls the hard mechanism according to the properties of the segment, and ST51, PT A52 ,
By referring to PT B 53, PT C 54, etc., the above four types of address translation may be performed. Furthermore, in the embodiment described above, a case has been described in which the segments with even segment numbers are used as normal segments and the segments with odd segment numbers are used as page table segments, but the division method is not limited to the above embodiment. Furthermore, in the above embodiment, it was explained that whether or not the address conversion is based on the V=R method is determined based on the segment number in the virtual address VA, but as with other address conversion methods, the segment number in the segment descriptor is The conversion type symbol T may specify the V=R method. In this case, even if the virtual address is in the V=R segment, ST51
(segment table) will be referenced.
According to the gist of the present invention, the address conversion function of the V=R method, relocation method, and even one-level paging method is not necessarily required.

〔発明の効果〕〔Effect of the invention〕

以上詳述したように本発明のアドレス変換方式
によれば、仮想アドレスを実アドレスに変換する
機能をメモリ制御装置側に持たせている仮想記憶
システムの実現が図れ、しかも大規模な仮想記憶
空間をサポートすることができる。
As detailed above, according to the address conversion method of the present invention, it is possible to realize a virtual memory system in which the memory control device has the function of converting virtual addresses to real addresses, and moreover, it is possible to realize a virtual memory system that has a large-scale virtual memory space. can be supported.

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

第1図および第2図は従来例を示すシステム構
成図、第3図は本発明の一実施例を示すブロツク
図、第4図は仮想アドレスのフオーマツトを示す
図、第5図はセグメント記述子のフオーマツトを
示す図、第6図乃至第8図はそれぞれリロケーシ
ヨン方式、1レベルページング方式、2レベルペ
ージング方式のアドレス変換機能を模式的に示す
機能構成図、第9図は第3種通常セグメント内仮
想アドレスと当該仮想アドレスに対応したページ
テーブルセグメント内仮想アドレスとの関係を示
す図、第10図は上記ページテーブルセグメント
内仮想アドレスを実アドレスに変換するアドレス
変換機能を模式的に示す機能構成図、第11図は
仮想記憶装置を構成する各種セグメントを説明す
ると共に同装置並びにメモリ装置(実記憶装置)
に置かれる各種テーブル類の位置関係を説明する
ための図である。 11,11………,30,30……… ……プ
ロセツサ、13,50……メモリ装置(MEM)、
14,80……システムバス、21,70……仮
想記憶制御装置(VSP)、22,22………,3
1,31……… ……キヤツシユメモリ、51…
…セグメントテーブル(ST)、52……第1ペー
ジテーブル(PTA)、53……第2ページテーブ
ル(PTB)、78……制御部(CNT)。
Fig. 1 and Fig. 2 are system configuration diagrams showing a conventional example, Fig. 3 is a block diagram showing an embodiment of the present invention, Fig. 4 is a diagram showing a virtual address format, and Fig. 5 is a segment descriptor. Figures 6 to 8 are functional configuration diagrams schematically showing the address conversion functions of the relocation method, 1-level paging method, and 2-level paging method, respectively. A diagram showing the relationship between a virtual address and a virtual address in a page table segment corresponding to the virtual address, and FIG. 10 is a functional configuration diagram schematically showing an address conversion function that converts the virtual address in the page table segment to a real address. , FIG. 11 explains the various segments that make up the virtual storage device, as well as the virtual storage device and the memory device (real storage device).
FIG. 3 is a diagram for explaining the positional relationship of various tables placed in the . 11, 11......, 30, 30...... Processor, 13, 50... Memory device (MEM),
14, 80... System bus, 21, 70... Virtual storage controller (VSP), 22, 22......, 3
1, 31...... Cash memory, 51...
... segment table (ST), 52 ... first page table (PT A ), 53 ... second page table (PT B ), 78 ... control unit (CNT).

Claims (1)

【特許請求の範囲】[Claims] 1 セグメント番号、ページ番号および変位情報
を有する仮想アドレスを実アドレスに変換する機
能をメモリ制御装置側に持たせている仮想記憶シ
ステムにおいて、仮想アドレスが実アドレスに一
致するV=Rセグメント、通常セグメント、およ
びそれ自身が当該通常セグメントに対する第1ペ
ージテーブルとして使用されるページテーブルセ
グメントの3種のセグメントから成る仮想記憶装
置と、上記ページテーブルセグメントに対するペ
ージテーブルであつて上記V=Rセグメント内に
置かれる第2ページテーブルと、上記V=Rセグ
メント内に置かれるセグメントテーブルと、上記
仮想アドレス中のセグメント番号に基づいて上記
セグメントテーブルを参照し、このセグメントテ
ーブルの参照結果と上記仮想アドレス中のページ
番号の上位ビツトに基づいて上記第2ページテー
ブルを参照し、この第2ページテーブルの参照結
果と上記仮想アドレス中のページ番号の下位ビツ
トとに基づいて上記第1ページテーブルを参照
し、この第1ページテーブルの参照結果と上記仮
想アドレス中の変位情報とにより実アドレスを得
る手段とを具備することを特徴とするアドレス変
換方式。
1. In a virtual storage system where the memory control device has a function to convert a virtual address having a segment number, page number, and displacement information into a real address, a V=R segment, a normal segment where the virtual address matches the real address , and a virtual storage device consisting of three types of segments: a page table segment, which is itself used as the first page table for the normal segment, and a page table for the page table segment, which is located in the V=R segment. The segment table is referred to based on the second page table placed in the V=R segment, the segment table placed in the V=R segment, and the segment number in the virtual address, and the result of referencing this segment table and the page in the virtual address are The second page table is referred to based on the upper bits of the number, the first page table is referred to based on the reference result of the second page table and the lower bits of the page number in the virtual address, and An address translation method comprising: means for obtaining a real address from a reference result of a one-page table and displacement information in the virtual address.
JP57088572A 1982-05-25 1982-05-25 Address conversion system Granted JPS58205974A (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP57088572A JPS58205974A (en) 1982-05-25 1982-05-25 Address conversion system
US06/495,615 US4654777A (en) 1982-05-25 1983-05-18 Segmented one and two level paging address translation system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP57088572A JPS58205974A (en) 1982-05-25 1982-05-25 Address conversion system

Publications (2)

Publication Number Publication Date
JPS58205974A JPS58205974A (en) 1983-12-01
JPS6349807B2 true JPS6349807B2 (en) 1988-10-05

Family

ID=13946572

Family Applications (1)

Application Number Title Priority Date Filing Date
JP57088572A Granted JPS58205974A (en) 1982-05-25 1982-05-25 Address conversion system

Country Status (1)

Country Link
JP (1) JPS58205974A (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS61199139A (en) * 1985-03-01 1986-09-03 Nec Corp Information processing unit
JPS62237547A (en) * 1986-04-09 1987-10-17 Hitachi Ltd Address conversion system

Also Published As

Publication number Publication date
JPS58205974A (en) 1983-12-01

Similar Documents

Publication Publication Date Title
US4654777A (en) Segmented one and two level paging address translation system
JP2625385B2 (en) Multiprocessor system
US4218743A (en) Address translation apparatus
JP4562919B2 (en) Method and apparatus for implementing dynamic display memory
US8151085B2 (en) Method for address translation in virtual machines
US5860144A (en) Addressing method and system for providing access of a very large size physical memory buffer to a number of processes
KR950033840A (en) Logical addressable physical memory for virtual memory computer systems that support multiple page sizes
JP3439167B2 (en) Method and apparatus for addressing the contents of main memory including a directory structure in a computer system
JPS61141055A (en) Address conversion method for information processing equipment
JPH0137773B2 (en)
JP2774862B2 (en) DMA control device and information processing device
JPH0312339B2 (en)
US5991848A (en) Computing system accessible to a split line on border of two pages within one cycle
JP2768503B2 (en) Virtual memory address space access control method
US4654791A (en) Input/output paging mechanism in a data processor
JPS6349807B2 (en)
JPS6349806B2 (en)
JPS5858752B2 (en) address translation device
JPS63244152A (en) Access control system for extended memory device
JPS6149703B2 (en)
JPS6015971B2 (en) buffer storage device
JP3456727B2 (en) Data processing device
JPH1091527A (en) Storage device and recording medium
JPS6143744B2 (en)
JP2001022640A (en) Memory managing method