JPH07319772A - Address conversion controller - Google Patents

Address conversion controller

Info

Publication number
JPH07319772A
JPH07319772A JP6106419A JP10641994A JPH07319772A JP H07319772 A JPH07319772 A JP H07319772A JP 6106419 A JP6106419 A JP 6106419A JP 10641994 A JP10641994 A JP 10641994A JP H07319772 A JPH07319772 A JP H07319772A
Authority
JP
Japan
Prior art keywords
address
real
logical
logical address
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.)
Pending
Application number
JP6106419A
Other languages
Japanese (ja)
Inventor
Kunimoto Momohara
国基 桃原
Hiromichi Kaino
博通 戒能
Daisuke Igarashi
大▲祐▼ 五十嵐
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
Hitachi Computer Engineering Co Ltd
Original Assignee
Hitachi Ltd
Hitachi Computer Engineering 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 Hitachi Ltd, Hitachi Computer Engineering Co Ltd filed Critical Hitachi Ltd
Priority to JP6106419A priority Critical patent/JPH07319772A/en
Publication of JPH07319772A publication Critical patent/JPH07319772A/en
Pending legal-status Critical Current

Links

Abstract

PURPOSE:To improve the precision of discrimination by comparing a pair of a read-out actual address and a logical address used for access with a pair of an actual address for partial purge and a logical address, which is made correspond to the actual address, to discriminate whether it is the true partial purge object or not. CONSTITUTION:A logical address 101 of a read-out entry and upper bits of the logical address of an address conversion request set to a TLB address register 5 are compared with each other by a comparison circuit 6, and an actual address 102 of the read-out entry and the actual address held in a purge address register 2 are compared with each other by a comparison circuit 7. The logical address of the address conversion request held in the TLB address register 5 and the logical address held in a logical address register 3 are compared with each other by a comparison circuit 8.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【産業上の利用分野】本発明は、論理アドレスから実ア
ドレスへの変換を高速に行うためのアドレス変換バッフ
ァ(Translation Lookaside Buffer)を有する仮想記憶
方式の情報処理装置におけるアドレス変換制御装置に関
し、特に、アドレス変換バッファのパーシャルパージ処
理(記憶されている情報の部分的消去、または、部分的
に初期状態に設定し直すことをいう)に好適なアドレス
変換制御装置に関するものである。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an address translation control device in a virtual memory type information processing device having an address translation buffer for translating a logical address to a real address at high speed. The present invention relates to an address translation control device suitable for a partial purge process of an address translation buffer (which means partial erasing of stored information or partial resetting of the initial state).

【0002】[0002]

【従来の技術】従来、仮想記憶方式の情報処理装置にお
いては、図2に示すように、プログラムの実行過程にお
いて、各命令および各命令で必要とするデータの位置
は、まず仮想アドレス21(仮想記憶装置20上のアド
レスを指す:一般的には、論理アドレスという)で与え
られる。
2. Description of the Related Art Conventionally, in a virtual memory type information processing apparatus, as shown in FIG. 2, in the course of executing a program, the position of each instruction and the data required by each instruction is first determined by a virtual address 21 (virtual It indicates an address on the storage device 20: generally called a logical address).

【0003】従って、必要な命令およびデータを取り出
すためには、この論理アドレス21を実記憶装置22上
の実アドレス23(実記憶装置22上のアドレスを指
す)に変換する必要がある。これをアドレス変換とい
い、この変換のためのハードウェア機構を動的アドレス
変換(Dynamic Address Translation)機構24と呼ん
でいる。
Therefore, in order to retrieve the necessary instructions and data, it is necessary to convert this logical address 21 into a real address 23 on the real storage device 22 (indicating an address on the real storage device 22). This is called address translation, and the hardware mechanism for this translation is called the dynamic address translation mechanism 24.

【0004】このDATを行う時に、仮想記憶装置20
上の論理アドレス21と実記憶装置22上の実アドレス
23とを対応付けているアドレス変換テーブル25(Ad
dress Translation Table)を使用する。
When performing this DAT, the virtual storage device 20
An address conversion table 25 (Ad that associates the upper logical address 21 with the real address 23 on the real storage device 22).
dress Translation Table).

【0005】しかし、アドレス変換要求があるたびに前
記アドレス変換テーブル25を用いて前記動的アドレス
変換を行うのでは高速に処理を行うことができない。そ
こで、過去に前記アドレス変換テーブル25を用いて前
記動的アドレス変換により求められた実アドレス23と
対応する論理アドレス21との「対」をバッファに保持
しておき、アドレス変換要求時には、当該バッファをア
クセスすることにより、対応する論理アドレスから、直
接、実アドレス23を求めてアドレス変換を行うことに
している。
However, if the dynamic address translation is performed using the address translation table 25 every time there is an address translation request, the processing cannot be performed at high speed. Therefore, a “pair” of the real address 23 and the corresponding logical address 21 obtained by the dynamic address translation using the address translation table 25 in the past is held in a buffer, and when the address translation request is made, the buffer is stored. Is accessed, the real address 23 is directly obtained from the corresponding logical address to perform the address conversion.

【0006】このバッファが、いわゆるアドレス変換バ
ッファ26である。このアドレス変換バッファ26を用
いることにより、アドレス変換要求の論理アドレス21
が前記アドレス変換バッファ26に登録されていれば前
記動的アドレス変換を行わなくても、実アドレス23を
直接求めることができるため、アドレス変換を高速に行
うことが可能となる。
This buffer is the so-called address conversion buffer 26. By using this address translation buffer 26, the logical address 21 of the address translation request
If is registered in the address translation buffer 26, the real address 23 can be directly obtained without performing the dynamic address translation, so that the address translation can be performed at high speed.

【0007】ところで、仮想記憶方式では、一般に論理
アドレス21で指定できるアドレス空間は、実アドレス
23で指定できるアドレス空間よりも広く、そのため、
ある論理アドレスに割り当てた実アドレス23は使用さ
れなくなると別の論理アドレス21に割り当てられるよ
う前記アドレス変換テーブル25が書き替えられること
がある。
In the virtual memory system, the address space that can be specified by the logical address 21 is generally wider than the address space that can be specified by the real address 23.
When the real address 23 assigned to a certain logical address is no longer used, the address conversion table 25 may be rewritten so as to be assigned to another logical address 21.

【0008】このアドレス変換テーブル25の書き替え
に伴い、書き替えられる前のアドレス変換テーブル25
により対応付けられている論理アドレス21と実アドレ
ス23との「対」を情報として保持しているエントリ
(ここでは、データなどを記憶する、あるいは格納する
領域の意味を表す)内の情報すなわち、過去の論理アド
レス21と実アドレス23との「対」を取り消す必要が
ある。
With the rewriting of the address conversion table 25, the address conversion table 25 before being rewritten
Information in an entry (here, meaning of an area for storing data or storing data, etc.) that holds a “pair” of a logical address 21 and a real address 23 associated with each other, that is, It is necessary to cancel the "pair" of the past logical address 21 and real address 23.

【0009】これがアドレス変換バッファ26のパーシ
ャルパージ(前記エントリ内の情報を消去すること)で
ある。このパーシャルパージは、前記アドレス変換バッ
ファ26を逐一サーチすることにより行われるが、当該
処理の間は、アドレス変換を行うことができず、アドレ
ス変換バッファ26の使用効率が低下するという問題が
あった。
This is a partial purge of the address translation buffer 26 (erasing the information in the entry). This partial purge is performed by searching the address translation buffer 26 one by one, but during the processing, address translation cannot be performed, and there is a problem that the efficiency of use of the address translation buffer 26 decreases. .

【0010】この解決方法として、例えば、特開昭60
−142451号公報に開示されているように、アドレ
ス変換バッファの他にパーシャルパージ用のメモリアレ
イを備え、アドレス変換は、アドレス変換バッファから
読み出した実アドレスと取消すべき実アドレスとが一致
しない限りアドレス変換バッファによって行い、パーシ
ャルパージは、前記メモリアレイによって独立に行う技
術が知られている。
As a solution to this, for example, Japanese Patent Laid-Open No. Sho 60
As disclosed in JP-A-142451, a memory array for partial purge is provided in addition to the address translation buffer, and the address translation is performed unless the real address read from the address translation buffer matches the real address to be canceled. A technique is known in which the conversion buffer is used and the partial purge is independently performed by the memory array.

【0011】この技術によれば、パーシャルパージ中で
あってもアドレス変換を行うことができ、かつ、アドレ
ス変換バッファから読み出した実アドレスと取り消すべ
き実アドレスとの比較を行うことにより、パーシャルパ
ージ対象のエントリが誤って使用されることも防止でき
る。
According to this technique, the address conversion can be performed even during the partial purge, and by comparing the real address read from the address translation buffer with the real address to be canceled, the partial purge target is obtained. It is also possible to prevent the entry of is accidentally used.

【0012】[0012]

【発明が解決しようとする課題】しかしながら、前記特
開昭60−142451号公報に開示されている技術で
は、パーシャルパージ対象であると判定する条件とし
て、前記アドレス変換バッファから読み出した実アドレ
スと取り消すべき実アドレスとの一致しか考慮していな
い。
However, in the technique disclosed in Japanese Patent Laid-Open No. 60-142451, the real address read from the address translation buffer is canceled as the condition for determining the target of partial purge. Only the match with the real address should be considered.

【0013】このため、前記アドレス変換テーブルの書
き替えにより、取り消すべき実アドレスと当該実アドレ
スに新たに対応づけられた論理アドレスとの「対」が、
前記動的アドレス変換により前記アドレス変換バッファ
に登録されている場合、前記取り消すべき実アドレスが
パーシャルパージ対象として指定されると、前記「対」
を含むエントリをもパーシャルパージ対象であると判定
され、パーシャルパージ処理、すなわち、消去されてし
まうという問題があった。
Therefore, by rewriting the address conversion table, the "pair" of the real address to be canceled and the logical address newly associated with the real address becomes
When the real address to be canceled is designated as a partial purge target when registered in the address translation buffer by the dynamic address translation, the “pair” is specified.
There is a problem that an entry including is also determined to be a partial purge target and is partially purged, that is, erased.

【0014】従って、本来パーシャルパージされなくて
もよいエントリが消去されることにより、不必要な動的
アドレス変換が繰り返され、アドレス変換処理性能が劣
化するという欠点があった。
Therefore, there is a drawback in that unnecessary dynamic address translation is repeated and the address translation processing performance is deteriorated by erasing an entry that is originally not required to be partially purged.

【0015】本発明の目的は、パーシャルパージ中のア
ドレス変換におけるパーシャルパージ対象エントリの判
定精度を向上させるアドレス変換制御装置を提供するこ
とにある。
An object of the present invention is to provide an address translation control device which improves the accuracy of determination of a partial purge target entry in address translation during partial purge.

【0016】[0016]

【課題を解決するための手段】本願において開示される
発明のうち代表的なものの概要を簡単に説明すれば、下
記の通りである。
The outline of a typical one of the inventions disclosed in the present application will be briefly described as follows.

【0017】すなわち、仮想記憶装置上の論理アドレス
と実記憶装置上の実アドレスとを対応付けるアドレス変
換テーブルと、該アドレス変換テーブルを用いて過去に
変換した前記実アドレスと該実アドレスに対応する論理
アドレスとを「対」として保持する複数のエントリを有
するアドレス変換バッファとを備えたアドレス変換制御
装置において、前記アドレス変換バッファのパーシャル
パージを行う際に、パーシャルパージ前に前記アドレス
変換バッファを前記論理アドレスでアクセスして得られ
た実アドレスと当該アクセスに用いた前記論理アドレス
との「対」と、パーシャルパージを行うために与えられ
る実アドレスと該実アドレスに対応する論理アドレスの
「対」とを比較する比較手段と、該比較手段の比較結果
に基づいて、前記複数のエントリ内に保持している前記
実アドレスと対応する前記論理アドレスとの「対」が前
記パーシャルパージ対象か否かを判定する判定手段とを
備えたものである。
That is, an address conversion table for associating a logical address on the virtual storage device with a real address on the real storage device, the real address previously converted using the address conversion table, and the logic corresponding to the real address. In an address translation control device provided with an address translation buffer having a plurality of entries holding addresses as "pairs", when performing partial purging of the address translation buffer, the address translation buffer is set to the logical translation before the partial purge. A “pair” of the real address obtained by accessing the address and the logical address used for the access, and a “pair” of the real address given for performing the partial purge and the logical address corresponding to the real address. Based on the comparison result of the comparison means and the comparison means, In which the holding within a few entries "pair" with the logical address corresponding to the real address and a determining means for determining whether the partial purge target.

【0018】[0018]

【作用】前記手段によれば、パーシャルパージ中にアド
レス変換要求があった場合、当該要求により前記アドレ
ス変換バッファをアクセスし、当該要求の論理アドレス
に対応する実アドレスを読み出し、この読み出した実ア
ドレスと当該アクセスに用いた論理アドレスとの「対」
と、パーシャルパージを行うために与えられる実アドレ
スと当該実アドレスに新たに対応づけられた論理アドレ
スとの「対」とを比較し、この比較結果に基づいて、真
のパーシャルパージ対象であるか否かを判定するので、
パーシャルパージ中にアドレス変換要求があっても、パ
ーシャルパージ対象エントリの判定精度を向上させるこ
とができる。
According to the means, when an address translation request is made during the partial purge, the address translation buffer is accessed by the request, the real address corresponding to the logical address of the request is read, and the read real address is read. And the logical address used for the access
And a "pair" of a real address given for performing the partial purge and a logical address newly associated with the real address, and based on the comparison result, is the true partial purge target? I will judge whether or not
Even if an address conversion request is issued during the partial purge, the determination accuracy of the partial purge target entry can be improved.

【0019】[0019]

【実施例】以下、本発明の一実施例について図面を用い
て詳細に説明する。
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS An embodiment of the present invention will be described in detail below with reference to the drawings.

【0020】図1は本発明に係るアドレス変換制御装置
の一実施例の部分構成を示す部分ブロック構成図であ
る。
FIG. 1 is a partial block diagram showing a partial configuration of an embodiment of the address translation control device according to the present invention.

【0021】図1において、1は論理アドレス101
と、当該論理アドレス101に対応する実アドレス10
2とを含む複数のエントリを保持するアドレス変換バッ
ファ、2は取り消すべき実アドレスを保持するパージア
ドレスレジスタである。
In FIG. 1, 1 is a logical address 101.
And the real address 10 corresponding to the logical address 101
An address translation buffer that holds a plurality of entries including 2 and 2 is a purge address register that holds a real address to be canceled.

【0022】3は取り消すべき実アドレスに対応するア
ドレス変換テーブル(図示していない)の書き替え後の
論理アドレスを保持するロジカルアドレスレジスタ、4
はアドレス変換バッファ1をアクセスする論理アドレス
を選択するセレクタ、5はアドレス変換バッファ1をア
クセスする論理アドレスを保持するアドレス変換バッフ
ァアドレスレジスタ(以下、TLBアドレスレジスタ5
という)である。
3 is a logical address register for holding a rewritten logical address of an address conversion table (not shown) corresponding to the real address to be canceled, 4
Is a selector for selecting a logical address for accessing the address translation buffer 1 and 5 is an address translation buffer address register (hereinafter, TLB address register 5 for holding a logical address for accessing the address translation buffer 1).
That is).

【0023】6はアドレス変換バッファ1から読み出さ
れたエントリの論理アドレス101とTLBアドレスレ
ジスタ5に保持された論理アドレスの一部とを比較する
比較回路である。
Reference numeral 6 is a comparison circuit for comparing the logical address 101 of the entry read from the address translation buffer 1 with a part of the logical address held in the TLB address register 5.

【0024】7はアドレス変換バッファ1から読み出さ
れたエントリの実アドレス102とパージアドレスレジ
スタ2に保持された取り消すべき実アドレスとを比較す
る比較回路、8はTLBアドレスレジスタ5に保持され
た論理アドレスとロジカルアドレスレジスタ3に保持さ
れた論理アドレスとを比較する比較回路、9はノットゲ
ート、10はナンドゲート、11はアンドゲート、12
は動的アドレス変換回路である。
Reference numeral 7 is a comparison circuit for comparing the real address 102 of the entry read from the address translation buffer 1 with the real address to be canceled held in the purge address register 2, and 8 is a logic held in the TLB address register 5. A comparison circuit for comparing the address with the logical address held in the logical address register 3, 9 is a not gate, 10 is a NAND gate, 11 is an AND gate, 12
Is a dynamic address translation circuit.

【0025】13は動的アドレス変換回路12によって
得られた実アドレスを保持する変換アドレスレジスタ、
14はパージアドレスレジスタ2に保持された取り消す
べき実アドレスと、変換アドレスレジスタ13に保持さ
れた実アドレスとを比較する比較回路、15は実記憶装
置(図示していない)をアクセスする実アドレスを選択
するセレクタ、16は実記憶装置(図示していない)を
アクセスする実アドレスを保持するメモリアドレスレジ
スタである。
Reference numeral 13 is a translation address register for holding the real address obtained by the dynamic address translation circuit 12,
Reference numeral 14 is a comparison circuit for comparing the real address held in the purge address register 2 with the real address held in the translated address register 13, and 15 is a real address for accessing a real storage device (not shown). A selector for selecting 16 is a memory address register for holding a real address for accessing a real storage device (not shown).

【0026】110はアドレス変換要求の論理アドレス
を与える信号線、120はパーシャルパージ対象のTL
Bアドレスを与える信号線である。
Reference numeral 110 is a signal line for giving a logical address of an address translation request, and 120 is a TL to be partially purged.
It is a signal line for giving a B address.

【0027】以下、図1を用いて本実施例のアドレス変
換制御装置の動作について説明する。
The operation of the address translation control device of this embodiment will be described below with reference to FIG.

【0028】初めに、パーシャルパージを行っていない
場合のアドレス変換の動作について説明する。
First, the operation of address conversion when the partial purge is not performed will be described.

【0029】まず、アドレス変換要求が生じると、アド
レス変換要求の論理アドレスは信号線110で与えら
れ、セレクタ4を介してTLBアドレスレジスタ5にセ
ットされる。
First, when an address translation request occurs, the logical address of the address translation request is given by the signal line 110 and set in the TLB address register 5 via the selector 4.

【0030】そして、このTLBアドレスレジスタ5に
セットされた論理アドレスの中位ビットでアドレス変換
バッファ1をアクセスし、該当するエントリを読み出
す。
Then, the address translation buffer 1 is accessed by the middle bit of the logical address set in the TLB address register 5, and the corresponding entry is read.

【0031】読み出したエントリの論理アドレス101
と、TLBアドレスレジスタ5にセットされた論理アド
レスの上位ビットとを比較回路6で比較する。
Logical address 101 of the read entry
And the upper bits of the logical address set in the TLB address register 5 are compared by the comparison circuit 6.

【0032】ここで、エントリの論理アドレス101に
は、当該エントリが「有効」か「無効」かを示す有効フ
ラグが含まれており、比較回路6の出力であるTLBC
OIN信号150は、当該有効フラグが「1」であり、
かつエントリの論理アドレス101の有効フラグを除く
他の部分とTLBアドレスレジスタ5にセットされた論
理アドレスの上位ビットとが一致すると「1」となる。
Here, the logical address 101 of the entry includes a valid flag indicating whether the entry is “valid” or “invalid”, and the TLBC output from the comparison circuit 6 is included.
The valid flag of the OIN signal 150 is “1”,
Moreover, when the other part of the logical address 101 of the entry other than the valid flag and the upper bits of the logical address set in the TLB address register 5 match, the value becomes "1".

【0033】一方、パーシャルパージを行っていないと
きには、パーシャルパージ中であることを示す信号であ
るPPMOD信号153が「0」であるため、ナンドゲ
ート10により、TLBCOIN信号150の値が「有
効」であることを示すCOINV信号154は「1」と
なる。
On the other hand, when the partial purge is not performed, the PPMOD signal 153, which is a signal indicating that the partial purge is being performed, is "0". Therefore, the value of the TLBCOIN signal 150 is "valid" by the NAND gate 10. The COINV signal 154 indicating that is "1".

【0034】従って、パーシャルパージを行っていない
場合のアドレス変換では、アドレス変換バッファ1にア
ドレス変換要求の論理アドレスが存在するか否かの判定
は、比較回路6の出力であるTLBCOIN信号150
によってのみ決められることになる。
Therefore, in the address conversion in the case where the partial purge is not performed, it is judged whether or not the logical address of the address conversion request exists in the address conversion buffer 1 by the TLBCOIN signal 150 output from the comparison circuit 6.
Will be decided only by.

【0035】もし、TLBCOIN信号150が「1」
であれば、アンドゲート11によりアドレス変換バッフ
ァ1にアドレス変換要求の論理アドレスが存在すること
を示すTLBHIT信号155が「1」となり、アドレ
ス変換バッファ1から読み出された実アドレス102
に、TLBアドレスレジスタ5にセットされた論理アド
レスの下位ビットを付加したものが実アドレスとして、
セレクタ15を介しメモリアドレスレジスタ16にセッ
トされ、実記憶装置(図示していない)へのアクセスが
行われる。
If the TLBCOIN signal 150 is "1".
If so, the TLBHIT signal 155 indicating that the logical address of the address translation request exists in the address translation buffer 1 by the AND gate 11 becomes “1”, and the real address 102 read from the address translation buffer 1
To which the lower bit of the logical address set in the TLB address register 5 is added as the real address,
The data is set in the memory address register 16 via the selector 15 and an actual storage device (not shown) is accessed.

【0036】もし、TLBCOIN信号150が「0」
であると、TLBHIT信号155が「0」、すなわ
ち、アドレス変換要求の論理アドレスが、アドレス変換
バッファ1に存在しないことになり、アドレス変換テー
ブル(図示していない)を用いた動的アドレス変換が行
われ、実アドレスが求められることになる。
If the TLBCOIN signal 150 is "0".
Then, the TLBHIT signal 155 is "0", that is, the logical address of the address translation request does not exist in the address translation buffer 1, and dynamic address translation using an address translation table (not shown) is performed. Will be done and the real address will be sought.

【0037】動的アドレス変換により求められた実アド
レスは、変換アドレスレジスタ13に格納される。
The real address obtained by the dynamic address translation is stored in the translation address register 13.

【0038】そして、この変換アドレスレジスタ13に
格納された実アドレスは、セレクタ15を介しメモリア
ドレスレジスタ16にセットされ、実記憶装置(図示し
ていない)へのアクセスが行われる。
Then, the real address stored in the translated address register 13 is set in the memory address register 16 through the selector 15, and the real memory device (not shown) is accessed.

【0039】また、動的アドレス変換により求められた
実アドレスと、当該実アドレスに対応する論理アドレス
は、アドレス変換バッファ1に送られ、新たなエントリ
としてアドレス変換バッファ1に登録される。
The real address obtained by the dynamic address translation and the logical address corresponding to the real address are sent to the address translation buffer 1 and registered in the address translation buffer 1 as a new entry.

【0040】次に、パーシャルパージ中にアドレス変換
要求が生じた場合の動作について説明する。
Next, the operation when an address translation request is made during the partial purge will be described.

【0041】予め与えられた取り消すべき実アドレス
を、パージアドレスレジスタ2にセットし、パーシャル
パージ中であることを示すPPMOD信号153を
「1」としてパーシャルパージが開始される。
A preset real address to be canceled is set in the purge address register 2 and the PPMOD signal 153 indicating that the partial purge is in progress is set to "1" to start the partial purge.

【0042】ここで、アドレス変換要求が発生すると、
アドレス変換要求の論理アドレスは信号線110に与え
られ、セレクタ4を介しTLBアドレスレジスタ5にセ
ットされる。
Here, when an address translation request occurs,
The logical address of the address conversion request is given to the signal line 110 and set in the TLB address register 5 via the selector 4.

【0043】そして、TLBアドレスレジスタ5にセッ
トされた論理アドレスの中位ビットでアドレス変換バッ
ファ1をアクセスし、該当するエントリを読み出す。
Then, the address translation buffer 1 is accessed by the middle bit of the logical address set in the TLB address register 5, and the corresponding entry is read.

【0044】読み出されたエントリの論理アドレス10
1と、TLBアドレスレジスタ5にセットされたアドレ
ス変換要求の論理アドレスの上位ビットが、比較回路6
で比較される。
Logical address 10 of the read entry
1 and the upper bit of the logical address of the address translation request set in the TLB address register 5
Compared with.

【0045】また、読み出されたエントリの実アドレス
102と、パージアドレスレジスタ2に保持された実ア
ドレスが比較回路7により比較される。
The comparison circuit 7 compares the real address 102 of the read entry with the real address held in the purge address register 2.

【0046】比較回路7の出力であるRACOIN信号
151は、読み出されたエントリの実アドレス102と
パージアドレスレジスタ2に保持された実アドレスとが
一致した時に「1」となる。
The RACOIN signal 151 which is the output of the comparison circuit 7 becomes "1" when the real address 102 of the read entry and the real address held in the purge address register 2 match.

【0047】また、TLBアドレスレジスタ5に保持さ
れたアドレス変換要求の論理アドレスと、ロジカルアド
レスレジスタ3に保持された論理アドレスとが比較回路
8で比較される。
The comparison circuit 8 compares the logical address of the address conversion request held in the TLB address register 5 with the logical address held in the logical address register 3.

【0048】このロジカルアドレスレジスタ3に保持さ
れた論理アドレスは、アドレス変換テーブル(図示して
いない)の書き替えにより、取り消すべき実アドレスに
新たに対応づけられた論理アドレスであり、このロジカ
ルアドレスレジスタ3に保持された論理アドレスとアド
レス変換要求の論理アドレスとが一致していれば、パー
ジアドレスレジスタ2に保持された実アドレスとアドレ
ス変換バッファ1より読み出した実アドレス102とが
一致しても、アドレス変換バッファ1より読み出された
エントリはパーシャルパージ対象外とされる。
The logical address held in the logical address register 3 is a logical address newly associated with the real address to be canceled by rewriting the address conversion table (not shown). If the logical address held in 3 and the logical address of the address translation request match, even if the real address held in the purge address register 2 and the real address 102 read from the address translation buffer 1 match, The entry read from the address translation buffer 1 is excluded from the partial purge target.

【0049】ロジカルアドレスレジスタ3に保持される
論理アドレスは、動的アドレス変換によって実アドレス
を求めた際、当該実アドレスがパージアドレスレジスタ
2に保持された実アドレスと一致した場合のアドレス変
換前の論理アドレス101を求めることにより得られ
る。
The logical address held in the logical address register 3 is the one before the address translation when the real address is obtained by the dynamic address translation and the real address matches the real address held in the purge address register 2. It is obtained by obtaining the logical address 101.

【0050】すなわち、ロジカルアドレスレジスタ3へ
の論理アドレスの設定は、以下の動作により行われる。
That is, the setting of the logical address in the logical address register 3 is performed by the following operation.

【0051】まず、動的アドレス変換が起動されると、
動的アドレス変換回路12は、TLBアドレスレジスタ
5にセットされた論理アドレスの上位および中位ビット
の値を入力とし、その論理アドレスに対応する実アドレ
スをアドレス変換テーブル(図示していない)を用いて
求める。
First, when the dynamic address translation is activated,
The dynamic address translation circuit 12 receives the values of the upper and middle bits of the logical address set in the TLB address register 5, and uses the address translation table (not shown) for the real address corresponding to the logical address. Ask for.

【0052】求められた実アドレスは、変換アドレスレ
ジスタ13に格納され、比較回路14によりパージアド
レスレジスタ2に保持されている実アドレスと比較され
る。
The calculated real address is stored in the conversion address register 13 and compared with the real address held in the purge address register 2 by the comparison circuit 14.

【0053】比較回路14は、パーシャルパージ中であ
ることを示す信号であるPPMOD信号153が「1」
であり、かつ、変換アドレスレジスタ13に保持されて
いる実アドレスとパージアドレスレジスタ2に保持され
ている実アドレスとが一致した場合に、当該比較回路1
4の出力であるTACOIN信号160を「1」とす
る。
In the comparison circuit 14, the PPMOD signal 153, which is a signal indicating that the partial purge is being performed, is "1".
If the real address held in the translation address register 13 and the real address held in the purge address register 2 match, the comparison circuit 1 concerned
The TACOIN signal 160, which is the output of No. 4, is set to "1".

【0054】このTACOIN信号160が「1」の場
合、動的アドレス変換を起動した論理アドレスをロジカ
ルアドレスレジスタ3にセットし、さらに、このロジカ
ルアドレスレジスタ3の有効フラグを「1」とする。
When the TACOIN signal 160 is "1", the logical address that activated the dynamic address translation is set in the logical address register 3, and the valid flag of the logical address register 3 is set to "1".

【0055】以上の説明から分かるように、アドレス変
換テーブル(図示していない)の書き替えにより、取り
消すべき実アドレスに新たに対応づけられた論理アドレ
スが示すエントリへのアクセスが行われるまでは、ロジ
カルアドレスレジスタ3には有効な論理アドレス101
が保持されることはない。
As can be seen from the above description, until the entry indicated by the logical address newly associated with the real address to be canceled is accessed by rewriting the address translation table (not shown), The logical address register 3 has a valid logical address 101
Is never retained.

【0056】そのため、ロジカルアドレスレジスタ3に
セットされた論理アドレスもアドレス変換バッファ1の
エントリの論理アドレス101と同様に、このロジカル
アドレスレジスタ3に保持された論理アドレスが「有
効」か「無効」かを示す有効フラグを有する。
Therefore, the logical address set in the logical address register 3 is also "valid" or "invalid" like the logical address 101 of the entry of the address translation buffer 1. Has a valid flag indicating.

【0057】比較回路8は、ロジカルアドレスレジスタ
3にセットされた論理アドレスの有効フラグが「1」で
あり、かつ、TLBアドレスレジスタ5に保持されたア
ドレス変換要求の論理アドレスとロジカルアドレスレジ
スタ3に保持された論理アドレスとが一致する場合に、
当該比較回路8の出力のLACOIN信号152を
「1」とする。
The comparison circuit 8 has the logical flag set in the logical address register 3 with a valid flag of "1" and the logical address of the address translation request held in the TLB address register 5 and the logical address register 3. If the held logical address matches,
The LACOIN signal 152 output from the comparison circuit 8 is set to "1".

【0058】ナンドゲート10は、比較回路7の出力で
あるRACOIN信号151と、比較回路8の出力であ
るLACOIN信号152の反転信号156、およびP
PMOD信号153からCOINV信号154を生成す
る。
The NAND gate 10 outputs the RACOIN signal 151, which is the output of the comparison circuit 7, the inverted signal 156 of the LACOIN signal 152, which is the output of the comparison circuit 8, and P.
A COINV signal 154 is generated from the PMOD signal 153.

【0059】この生成されたCOINV信号154は、
TLBCOIN信号150の値が「有効」であることを
示し、パーシャルパージ中にアドレス変換バッファ1か
ら読み出したエントリがパーシャルパージ対象である場
合、COINV信号154を「0」とし、TLBCOI
N信号150の値を「無効」とする。
The generated COINV signal 154 is
When the value of the TLBCOIN signal 150 indicates "valid" and the entry read from the address translation buffer 1 during the partial purge is the target of the partial purge, the COINV signal 154 is set to "0" and the TLBCOI is set.
The value of the N signal 150 is set to “invalid”.

【0060】すなわち、パーシャルパージ中のアドレス
変換では、アドレス変換バッファ1にアドレス変換要求
の論理アドレスが存在するか否かの判定は、基本的には
比較回路6の出力であるTLBCOIN信号150によ
って決められるが、アドレス変換バッファ1にアドレス
変換要求の論理アドレスが存在(すなわち、TLBCO
IN信号150が「1」)しても、それがパーシャルパ
ージ対象である場合は、強制的に存在しないもの(すな
わち、COINV信号154を「0」)とする。
That is, in the address conversion during the partial purge, whether the logical address of the address conversion request exists in the address conversion buffer 1 is basically determined by the TLBCOIN signal 150 which is the output of the comparison circuit 6. However, the logical address of the address translation request exists in the address translation buffer 1 (that is, TLBCO
Even if the IN signal 150 is "1"), if it is a partial purge target, it is forcibly not present (that is, the COINV signal 154 is "0").

【0061】アドレス変換バッファ1より読み出したエ
ントリがパーシャルパージ対象であると判定されるのは
次の2つの場合である。
The entry read from the address translation buffer 1 is determined to be a partial purge target in the following two cases.

【0062】(1)ロジカルアドレスレジスタ3に有効
な論理アドレスが未だ保持されていない場合は、アドレ
ス変換バッファ1から読み出した実アドレス102とパ
ージアドレスレジスタ2に保持された実アドレスとが一
致した時に、パーシャルパージ対象と判定する。
(1) When a valid logical address is not yet held in the logical address register 3, when the real address 102 read from the address translation buffer 1 and the real address held in the purge address register 2 match. , It is determined to be a partial purge target.

【0063】(2)ロジカルアドレスレジスタ3に有効
な論理アドレスが保持されている場合は、当該論理アド
レスとTLBアドレスレジスタ5に保持されたアドレス
変換要求の論理アドレスとが異なり、かつ、アドレス変
換バッファ1から読み出した実アドレス102とパージ
アドレスレジスタ2に保持された実アドレスとが一致し
た時に、パーシャルパージ対象と判定する。
(2) When the logical address register 3 holds a valid logical address, the logical address and the logical address of the address conversion request held in the TLB address register 5 are different and the address conversion buffer When the real address 102 read from 1 and the real address held in the purge address register 2 match, it is determined to be a partial purge target.

【0064】前記(1)および(2)の場合とも、比較
回路8の出力であるLACOIN信号152の値は
「0」、比較回路7の出力であるRACOIN信号15
1の値は「1」となるから、ナンドゲート10の出力で
あるCOINV信号154は「0」となり、比較回路6
の出力であるTLBCOIN信号150が「1」でも強
制的にTLBHIT信号155を「0」、すなわち、ア
ドレス変換バッファ1にアドレス変換要求の論理アドレ
スが存在しないものと判定することになり、これによ
り、アドレス変換テーブル(図示していない)を用いた
動的アドレス変換が行われ、実アドレスが求められるこ
とになる。
In both cases (1) and (2), the value of the LACOIN signal 152 output from the comparison circuit 8 is "0", and the RACOIN signal 15 output from the comparison circuit 7 is 15.
Since the value of 1 becomes "1", the COINV signal 154 which is the output of the NAND gate 10 becomes "0", and the comparison circuit 6
Even if the TLBCOIN signal 150, which is the output of, is "1", the TLBHIT signal 155 is forcibly determined to be "0", that is, it is determined that the address translation request logical address does not exist in the address translation buffer 1. Dynamic address translation is performed using an address translation table (not shown), and the real address is obtained.

【0065】また、アドレス変換テーブル(図示してい
ない)の書き替えにより、取り消すべき実アドレスに新
たに対応づけられた論理アドレスと当該実アドレスとの
「対」を含むエントリは、アドレス変換バッファ1に登
録されるとともに、当該論理アドレスがロジカルアドレ
スレジスタ3にも設定されるため、前記(2)の条件に
より、パーシャルパージ対象外とされる。
Further, by rewriting the address translation table (not shown), the entry including the "pair" of the logical address newly associated with the real address to be canceled and the real address is the address translation buffer 1 Since the logical address is registered in the logical address register 3 as well as being registered in the logical address register 3, it is excluded from the partial purge target under the condition (2).

【0066】以上の説明から分かるように、本実施例に
よれば、パーシャルパージ中にアドレス変換要求があっ
た場合には、当該要求の論理アドレス101に対応する
実アドレス102との「対」と、取り消すべき実アドレ
スとアドレス変換テーブル(図示していない)の書き替
えにより当該実アドレスに新たに対応づけられた論理ア
ドレスとの「対」とを比較し、この比較結果に基づい
て、真のパーシャルパージ対象であるか否かを判定する
ので、パーシャルパージ中にアドレス変換要求があった
場合においても、パーシャルパージ対象エントリの判定
精度を向上させることができる。
As can be seen from the above description, according to this embodiment, when an address translation request is made during the partial purge, a "pair" with the real address 102 corresponding to the logical address 101 of the request is made. , A “pair” of the real address to be canceled and the logical address newly associated with the real address by rewriting the address conversion table (not shown) is compared, and based on the comparison result, the true Since it is determined whether or not it is a partial purge target, it is possible to improve the determination accuracy of the partial purge target entry even when an address translation request is issued during the partial purge.

【0067】[0067]

【発明の効果】本願で開示される発明のうち、代表的な
ものによって得られる効果を簡単に説明すれば、下記の
通りである。
The effects obtained by the typical ones of the inventions disclosed in the present application will be briefly described as follows.

【0068】アドレス変換バッファのパーシャルパージ
を行う際に、パーシャルパージ前に前記アドレス変換バ
ッファを前記論理アドレスでアクセスして得られた実ア
ドレスと当該アクセスに用いた前記論理アドレスとの
「対」と、パーシャルパージを行うために与えられる実
アドレスと該実アドレスに対応する論理アドレスの
「対」とを比較する比較手段と、該比較手段の比較結果
に基づいて、前記複数のエントリ内に保持している前記
実アドレスと対応する前記論理アドレスとの「対」が前
記パーシャルパージ対象か否かを判定する判定手段とを
備えたので、パーシャルパージ中のアドレス変換要求に
おけるパーシャルパージ対象エントリの判定精度を向上
することができる。
When performing a partial purge of the address translation buffer, a "pair" of the real address obtained by accessing the address translation buffer with the logical address before the partial purge and the logical address used for the access , A comparison means for comparing a real address given for performing a partial purge and a “pair” of logical addresses corresponding to the real address, and holding in the plurality of entries based on the comparison result of the comparison means. Since the determination means determines whether or not the “pair” of the real address and the corresponding logical address is the partial purge target, the determination accuracy of the partial purge target entry in the address conversion request during the partial purge. Can be improved.

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

【図1】本発明に係るアドレス変換制御装置の一実施例
のブロック構成図である。
FIG. 1 is a block configuration diagram of an embodiment of an address translation control device according to the present invention.

【図2】動的アドレス変換機構を説明するための説明図
である。
FIG. 2 is an explanatory diagram for explaining a dynamic address translation mechanism.

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

1…アドレス変換バッファ、2…パージアドレスレジス
タ、3…ロジカルアドレスレジスタ、4…セレクタ、5
…TLBアドレスレジスタ、6…比較回路、7…比較回
路、8…比較回路、9…ノットゲート、10…ナンドゲ
ート、11…アンドゲート、12…動的アドレス変換回
路、13…変換アドレスレジスタ、14…比較回路、1
5…セレクタ、16…メモリアドレスレジスタ、101
…論理アドレス、102…実アドレス。
1 ... Address conversion buffer, 2 ... Purge address register, 3 ... Logical address register, 4 ... Selector, 5
... TLB address register, 6 ... Comparison circuit, 7 ... Comparison circuit, 8 ... Comparison circuit, 9 ... Not gate, 10 ... NAND gate, 11 ... AND gate, 12 ... Dynamic address translation circuit, 13 ... Translation address register, 14 ... Comparison circuit, 1
5 ... Selector, 16 ... Memory address register, 101
... logical address, 102 ... real address.

フロントページの続き (72)発明者 戒能 博通 神奈川県秦野市堀山下1番地 株式会社日 立製作所汎用コンピュータ事業部内 (72)発明者 五十嵐 大▲祐▼ 神奈川県秦野市堀山下1番地 日立コンピ ュータエンジニアリング株式会社内Front Page Continuation (72) Inventor Kaino Hirodori 1st Horiyamashita, Hadano City, Kanagawa Pref., General Computer Division, Hiritsu Manufacturing Co., Ltd. (72) Inventor Dai Igarashi 1st, Horiyamashita, Hadano City, Kanagawa Hitachi Computer Ta Engineering Co., Ltd.

Claims (1)

【特許請求の範囲】[Claims] 【請求項1】 仮想記憶装置上の論理アドレスと実記憶
装置上の実アドレスとを対応付けるアドレス変換テーブ
ルと、該アドレス変換テーブルを用いて過去に変換した
前記実アドレスと該実アドレスに対応する論理アドレス
とを「対」として保持する複数のエントリを有するアド
レス変換バッファとを備えたアドレス変換制御装置にお
いて、 前記アドレス変換バッファのパーシャルパージを行う際
に、パーシャルパージ前に前記アドレス変換バッファを
前記論理アドレスでアクセスして得られた実アドレスと
当該アクセスに用いた前記論理アドレスとの「対」と、
パーシャルパージを行うために与えられる実アドレスと
該実アドレスに対応する論理アドレスの「対」とを比較
する比較手段と、該比較手段の比較結果に基づいて、前
記複数のエントリ内に保持している前記実アドレスと対
応する前記論理アドレスとの「対」が前記パーシャルパ
ージ対象か否かを判定する判定手段とを備えたことを特
徴とするアドレス変換制御装置。
1. An address translation table that associates a logical address on a virtual storage device with a real address on a real storage device, the real address translated in the past using the address translation table, and a logic corresponding to the real address. In an address translation control device provided with an address translation buffer having a plurality of entries for holding addresses as "pairs", when performing the partial purge of the address translation buffer, the address translation buffer is set to the logical translation before the partial purge. A “pair” of the real address obtained by accessing the address and the logical address used for the access,
Based on a comparison result of the real address given for performing the partial purge and a “pair” of logical addresses corresponding to the real address, and a comparison result of the comparison means, the data is held in the plurality of entries. An address translation control device comprising: a determination unit that determines whether or not a "pair" of the existing real address and the corresponding logical address is the partial purge target.
JP6106419A 1994-05-20 1994-05-20 Address conversion controller Pending JPH07319772A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6106419A JPH07319772A (en) 1994-05-20 1994-05-20 Address conversion controller

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6106419A JPH07319772A (en) 1994-05-20 1994-05-20 Address conversion controller

Publications (1)

Publication Number Publication Date
JPH07319772A true JPH07319772A (en) 1995-12-08

Family

ID=14433153

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6106419A Pending JPH07319772A (en) 1994-05-20 1994-05-20 Address conversion controller

Country Status (1)

Country Link
JP (1) JPH07319772A (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100833142B1 (en) * 2006-02-28 2008-05-29 후지쯔 가부시끼가이샤 Address converting apparatus

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100833142B1 (en) * 2006-02-28 2008-05-29 후지쯔 가부시끼가이샤 Address converting apparatus

Similar Documents

Publication Publication Date Title
EP0492624B1 (en) Semiconductor integrated circuit
US5295251A (en) Method of accessing multiple virtual address spaces and computer system
US4495575A (en) Information processing apparatus for virtual storage control system
US4937738A (en) Data processing system which selectively bypasses a cache memory in fetching information based upon bit information of an instruction
JP2004095029A (en) Nonvolatile memory and method for writing to the same
EP0167089A2 (en) Memory access control system and method for an information processing apparatus
US4710894A (en) Access control system for storage having hardware area and software area
JPH07319772A (en) Address conversion controller
US4803616A (en) Buffer memory
JPH06139149A (en) Multiple virtual space control device
US6108761A (en) Method of and apparatus for saving time performing certain transfer instructions
US20050262403A1 (en) Apparatus and method for single operation read-modify-write in a bit-accessible memory unit memory
JPH07335000A (en) Non-volatile memory
JPS59112479A (en) High speed access system of cache memory
US7774658B2 (en) Method and apparatus to search for errors in a translation look-aside buffer
US6219757B1 (en) Cache flush operation for a stack-based microprocessor
JPH0341858B2 (en)
JP2500485B2 (en) Information processing device
JP3030037B2 (en) Main storage device
JPH08335189A (en) Cache memory device
JPH0773115A (en) Test method of memory of computer system
JPS60138654A (en) Address converting system
JPS60100245A (en) Address converter
JPH0883213A (en) Storage device including cache memory
JPS634357A (en) Address conversion and storage controller