JPH04360252A - Address conversion system for virtual storage in computer - Google Patents

Address conversion system for virtual storage in computer

Info

Publication number
JPH04360252A
JPH04360252A JP3162167A JP16216791A JPH04360252A JP H04360252 A JPH04360252 A JP H04360252A JP 3162167 A JP3162167 A JP 3162167A JP 16216791 A JP16216791 A JP 16216791A JP H04360252 A JPH04360252 A JP H04360252A
Authority
JP
Japan
Prior art keywords
address space
tlb
translation
logical address
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.)
Pending
Application number
JP3162167A
Other languages
Japanese (ja)
Inventor
Hoze Kamimura
上村 ホゼ
Takashi Sakakura
隆史 坂倉
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric Corp
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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP3162167A priority Critical patent/JPH04360252A/en
Publication of JPH04360252A publication Critical patent/JPH04360252A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To improve the using efficiency of respective translation looking aside buffers(TLBs) to be used for the address conversion of a virtual storage in a computer. CONSTITUTION:This address conversion system is hierarchically provided with plural TLBs 102a to 102d and effective bit number storing registers 101a to 101d for storing the number of effective bits whose addresses are to be converted are respectively arranged correspondingly to respective hierarchies. Thereby the size of an address space, i.e., block length, to be covered by a conversion result indicated by one entry in the TLBs 102a to 102d is hierarchically varied by user specification and respective heirarchies are used in accordance with the sizes of a logical address space and a physical address space which are continuously corresponding to each other to execute address conversion. When a continued physical address space larger than a continued logical address space corresponds to the logical address space, the number of necessary TLB entries can be reduced by using entries from a hierarchy having a larger block length. Consequently a larger logical address space can be allowed to correspond to a physical address space by a TLB buffer storage device whose capacity is restricted.

Description

【発明の詳細な説明】[Detailed description of the invention]

【0001】0001

【産業上の利用分野】この発明は、計算機の仮想記憶に
おけるアドレス変換方式に係わり、特にトランスレーシ
ョンルッキングアサイドバッファを用いたアドレス変換
の高速化に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an address translation method in virtual memory of a computer, and particularly to speeding up address translation using a translation looking aside buffer.

【0002】0002

【従来の技術】仮想記憶方式において、トランスレーシ
ョンルッキングアサイドバッファ(以下、TLBと呼ぶ
)は、アドレス変換テーブルを用いた論理アドレスから
物理アドレスへの変換結果を記憶する緩衝記憶装置とし
て動作し、アドレス変換過程を排除せしめることにより
アドレス変換の高速化を図ることを目的として使用され
るが、従来、TLBの1エントリによって示される変換
結果によりカバーできるアドレス空間の広さ,すなわち
ブロック長は固定的であった。なお、これに関する技術
は、文献「Computer Architectur
ea Quantitative Approach 
chap.8」(John L. Hennessy 
& David A. Patterson,Mora
an Kanfmann Pablishers,In
c.)に示されている。
2. Description of the Related Art In a virtual memory system, a translation looking aside buffer (hereinafter referred to as TLB) operates as a buffer storage device that stores the results of translation from a logical address to a physical address using an address translation table. It is used for the purpose of speeding up address translation by eliminating the translation process, but conventionally, the width of the address space that can be covered by the translation result indicated by one TLB entry, that is, the block length, is fixed. there were. The technology related to this is described in the document "Computer Architectural
ea Quantitative Approach
chap. 8” (John L. Hennessy
& David A. Patterson, Mora
An Kanfmann Publishers, In
c. ) is shown.

【0003】0003

【発明が解決しようとする課題】以上のように、従来、
TLBの1エントリでカバーできるブロック長が固定的
であるため、TLB複数エントリ分の連続した論理アド
レス空間に対し、同様に連続した物理アドレス空間が対
応している場合にも、該数分のTLBエントリを用意す
る必要があり、TLBエントリの冗長な使用となってい
た。
[Problem to be solved by the invention] As mentioned above, conventionally,
Since the block length that can be covered by one TLB entry is fixed, even if a consecutive logical address space for multiple TLB entries corresponds to a similarly consecutive physical address space, the TLB for that number of entries is It is necessary to prepare an entry, which results in redundant use of TLB entries.

【0004】この発明は上記のような課題を解決するた
めになされたもので、TLBの使用効率の向上を図るこ
とを目的としている。
[0004] The present invention was made to solve the above-mentioned problems, and its purpose is to improve the efficiency of TLB use.

【0005】[0005]

【課題を解決するための手段】この発明は、論理アドレ
スから物理アドレスへの変換結果を記憶するTLBを用
いた計算機の仮想記憶におけるアドレス変換方式におい
て、上記TLBを階層的に備えるとともに、各階層毎に
アドレス変換すべき有効ビット数を保持する有効ビット
数格納用レジスタを設けることにより、TLBの1エン
トリによって示される変換結果によりカバーできるアド
レス空間の広さ,すなわちブロック長をユーザ指定で階
層的に可変とし、連続して対応する論理アドレス空間と
物理アドレス空間の広さに応じて各階層を使用しアドレ
ス変換するようにしたものである。
[Means for Solving the Problems] The present invention provides an address translation method in a virtual memory of a computer using a TLB that stores the result of translation from a logical address to a physical address. By providing a register for storing the number of effective bits that holds the number of effective bits to be converted for each address, the width of the address space that can be covered by the conversion result indicated by one TLB entry, that is, the block length, can be hierarchically specified by the user. The address conversion is performed using each layer according to the width of the corresponding logical address space and physical address space.

【0006】[0006]

【作用】この発明においては、連続した論理アドレス空
間に対し、より大きな連続した物理アドレス空間が対応
しているときは、より大きなブロック長の階層からエン
トリを使用することにより、必要なTLBエントリ数を
削減することができる。これにより、制限された容量の
TLB用緩衝記憶装置で、より大きな論理アドレス空間
を物理アドレス空間に対応付けすることができる。
[Operation] In this invention, when a larger continuous physical address space corresponds to a continuous logical address space, the required number of TLB entries is increased by using entries from a layer with a larger block length. can be reduced. This allows a larger logical address space to be associated with a physical address space using a TLB buffer storage device with a limited capacity.

【0007】[0007]

【実施例】以下、この発明の一実施例を図について説明
する。図1に、本実施例によるアドレス変換機構の構成
を示す。図において、101a〜101dは有効ビット
数格納用レジスタ、102a〜102dはTLBであり
、4つに階層分けしたそれぞれのTLB102a〜10
2d毎に有効ビット数格納用レジスタ101a〜101
dが備えられている。ここではアドレスを32ビット幅
とし、各階層におけるブロック長は4KBの倍数である
。有効ビット数格納用レジスタ101a〜101dは、
対応するTLB102a〜102dのブロック長による
,アドレス変換すべき有効ビット数を保持しており、こ
の内容はユーザが必要に応じて書き換えることができる
。各レジスタ101a〜101dに図示のような有効ビ
ット数が設定されているとすれば、最上層のTLB10
2aにおける1エントリのブロック長は1024KB、
第2層のTLB102bにおける1エントリのブロック
長は128KB、第3層のTLB102cにおける1エ
ントリのブロック長は16KB、最下層のTLB102
dにおける1エントリのブロック長は4KBとなる。図
2はTLBエントリの一例で、論理アドレスのレジスタ
101a〜101dによる上位有効ビット数分に相当す
る論理アドレスタグと、該上位有効ビット数分の物理ア
ドレス、及びプロテクト情報等の属性情報からなる。
DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention will be described below with reference to the drawings. FIG. 1 shows the configuration of the address translation mechanism according to this embodiment. In the figure, 101a to 101d are registers for storing the number of effective bits, 102a to 102d are TLBs, and each TLB 102a to 10 is divided into four layers.
Registers 101a to 101 for storing the number of effective bits every 2d
d is provided. Here, the address is 32 bits wide, and the block length in each layer is a multiple of 4KB. Registers 101a to 101d for storing the number of effective bits are as follows:
It holds the effective number of bits to be converted into an address based on the block length of the corresponding TLB 102a to 102d, and this content can be rewritten by the user as necessary. If each register 101a to 101d is set to the effective number of bits as shown in the figure, then the top layer TLB 10
The block length of one entry in 2a is 1024KB,
The block length of one entry in the second layer TLB 102b is 128KB, the block length of one entry in the third layer TLB 102c is 16KB, and the bottom layer TLB 102
The block length of one entry in d is 4KB. FIG. 2 shows an example of a TLB entry, which includes a logical address tag corresponding to the number of upper effective bits of the logical address registers 101a to 101d, a physical address corresponding to the number of upper effective bits, and attribute information such as protect information.

【0008】次に、本実施例によるアドレス変換方式に
ついて図3に示すフローチャートに基づき説明する。ス
テップ300に示すTLB階層の最上層から、ステップ
301に示すサーチを行なう。このサーチは、論理アド
レスのレジスタ101a〜101dによる上位有効ビッ
トと各エントリ中の論理アドレスタグを比較することに
よって行なう。もし、ステップ302により全てのエン
トリについてヒットしなければ、ステップ303におい
て当該階層が最下層か否かを判定し、最下層でなければ
ステップ304により階層を一つ下げ、再びサーチする
。ステップ302においてヒットしたときは、ステップ
305により、該TLBエントリ中の有効物理アドレス
に該論理アドレスの上位有効ビットを除いたものを論理
和し、物理アドレスとする。どの階層においてもヒット
せずステップ303で最下層と判定されれば、ステップ
306においてページフォルトとして、CPUに例外通
知し、システムプログラムにより有効なTLBエントリ
がロードされる。なお、該TLBデータの初期データも
、システムプログラムによりロードされる。
Next, the address conversion method according to this embodiment will be explained based on the flowchart shown in FIG. The search shown in step 301 is performed starting from the top layer of the TLB hierarchy shown in step 300. This search is performed by comparing the upper valid bits of the logical address registers 101a to 101d with the logical address tag in each entry. If no hits are found for all entries in step 302, it is determined in step 303 whether the hierarchy is the lowest one, and if it is not the lowest, in step 304 the hierarchy is lowered by one and the search is performed again. If there is a hit in step 302, in step 305, the valid physical address in the TLB entry minus the upper valid bits of the logical address are ORed together to obtain a physical address. If there is no hit in any hierarchy and it is determined in step 303 that it is the lowest level, an exception is notified to the CPU as a page fault in step 306, and a valid TLB entry is loaded by the system program. Note that the initial data of the TLB data is also loaded by the system program.

【0009】[0009]

【発明の効果】以上のように、本発明によれば、TLB
のエントリの示すブロック長を階層的に可変とすること
により、必要なTLBエントリ数を削減することができ
、これにより、制限された容量のTLB用緩衝記憶装置
で、より大きな論理アドレス空間を物理アドレス空間に
対応付けすることができ、TLBの使用効率の向上を図
ることができるとともに、計算機システムの高速化が期
待できる。また、有効ビット数格納用レジスタを備えて
、ユーザ指定でブロック長を階層的に可変とすることに
より、システムの論理アドレス空間や物理アドレス空間
に応じて最適のブロック長を設定することができる。
[Effects of the Invention] As described above, according to the present invention, TLB
By making the block length indicated by the entries hierarchically variable, the number of required TLB entries can be reduced. This allows a larger logical address space to be physically It can be associated with the address space, and it is possible to improve the usage efficiency of the TLB, and it is expected that the speed of the computer system will be increased. Further, by providing a register for storing the number of effective bits and making the block length variable hierarchically according to user specifications, the optimum block length can be set according to the logical address space and physical address space of the system.

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

【図1】本発明の一実施例によるTLB装置の構成を示
す図である。
FIG. 1 is a diagram showing the configuration of a TLB device according to an embodiment of the present invention.

【図2】本発明の一実施例によるTLBエントリの一例
を示す図である。
FIG. 2 is a diagram illustrating an example of a TLB entry according to an embodiment of the invention.

【図3】本発明の一実施例によるアドレス変換アルゴリ
ズムを示すフローチャートである。
FIG. 3 is a flowchart illustrating an address translation algorithm according to one embodiment of the invention.

【符号の説明】[Explanation of symbols]

101a〜101d  有効ビット数格納用レジスタ1
02a〜102d  TLB
101a to 101d Effective bit number storage register 1
02a-102d TLB

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】  論理アドレスから物理アドレスへの変
換結果を記憶するトランスレーションルッキングアサイ
ドバッファを用いた計算機の仮想記憶におけるアドレス
変換方式において、上記トランスレーションルッキング
アサイドバッファを階層的に備えるとともに、各階層毎
にアドレス変換すべき有効ビット数を保持する有効ビッ
ト数格納用レジスタを設けることにより、トランスレー
ションルッキングアサイドバッファの1エントリによっ
て示される変換結果によりカバーできるアドレス空間の
広さをユーザ指定で階層的に可変とし、連続して対応す
る論理アドレス空間と物理アドレス空間の広さに応じて
各階層を使用しアドレス変換することを特徴とする計算
機の仮想記憶におけるアドレス変換方式。
1. An address translation method in virtual memory of a computer using a translation looking aside buffer that stores a translation result from a logical address to a physical address, wherein the translation looking aside buffer is provided hierarchically, and each layer By providing a register for storing the number of effective bits that holds the number of effective bits to be translated for each address, the width of the address space that can be covered by the translation result indicated by one entry of the translation looking aside buffer can be hierarchically specified by the user. An address translation method in virtual memory of a computer, characterized in that address translation is performed using each layer according to the size of a logical address space and a physical address space that continuously correspond to each other.
JP3162167A 1991-06-06 1991-06-06 Address conversion system for virtual storage in computer Pending JPH04360252A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP3162167A JPH04360252A (en) 1991-06-06 1991-06-06 Address conversion system for virtual storage in computer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3162167A JPH04360252A (en) 1991-06-06 1991-06-06 Address conversion system for virtual storage in computer

Publications (1)

Publication Number Publication Date
JPH04360252A true JPH04360252A (en) 1992-12-14

Family

ID=15749300

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3162167A Pending JPH04360252A (en) 1991-06-06 1991-06-06 Address conversion system for virtual storage in computer

Country Status (1)

Country Link
JP (1) JPH04360252A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008136097A1 (en) * 2007-04-24 2008-11-13 Fujitsu Limited Access control program, access control method, and access controller

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62274351A (en) * 1986-05-23 1987-11-28 Hitachi Ltd Address conversion system
JPH02189659A (en) * 1988-12-15 1990-07-25 Internatl Business Mach Corp <Ibm> Address converter
JPH0331967A (en) * 1989-06-29 1991-02-12 Fujitsu Ltd Vector processor

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62274351A (en) * 1986-05-23 1987-11-28 Hitachi Ltd Address conversion system
JPH02189659A (en) * 1988-12-15 1990-07-25 Internatl Business Mach Corp <Ibm> Address converter
JPH0331967A (en) * 1989-06-29 1991-02-12 Fujitsu Ltd Vector processor

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008136097A1 (en) * 2007-04-24 2008-11-13 Fujitsu Limited Access control program, access control method, and access controller

Similar Documents

Publication Publication Date Title
JP4562919B2 (en) Method and apparatus for implementing dynamic display memory
Jacob et al. Virtual memory: Issues of implementation
JP3640978B2 (en) Memory address control device using hash address tag in page table
US5313611A (en) Method and apparatus for maintaining a lookup table for storing function values
JP3666689B2 (en) Virtual address translation method
EP2350833B1 (en) Opportunistic page largification
JPH04320553A (en) Address converting mechanism
JPH0816479A (en) Memory-address space management
KR20080041707A (en) Tlb lock indicator
JP2000122927A (en) Computer system gaining access with virtual area number
US20070239960A1 (en) Data processor and IP module for data processor
JPS61141055A (en) Information processor
JPH08320830A (en) Data processor
US6427162B1 (en) Separate code and data contexts: an architectural approach to virtual text sharing
JP2009512943A (en) Multi-level translation index buffer (TLBs) field updates
JP2000227874A (en) Method and device for addressing contents of main memory including directory structure in computer system
KR910001314B1 (en) Method for operating data processing system
WO2005078590A2 (en) Address conversion technique in a context switching environment
KR960032197A (en) Memory management method and system and data processing system
JP2001134486A (en) Microprocessor and storage device
JPH04360252A (en) Address conversion system for virtual storage in computer
JPS623354A (en) Cache memory access system
KR920005296B1 (en) Information processing device
JP2000267932A (en) Tag address comparing device
JP2001022640A (en) Memory managing method