JP2580587B2 - Address translation buffer - Google Patents

Address translation buffer

Info

Publication number
JP2580587B2
JP2580587B2 JP62046739A JP4673987A JP2580587B2 JP 2580587 B2 JP2580587 B2 JP 2580587B2 JP 62046739 A JP62046739 A JP 62046739A JP 4673987 A JP4673987 A JP 4673987A JP 2580587 B2 JP2580587 B2 JP 2580587B2
Authority
JP
Japan
Prior art keywords
address
address translation
virtual
translation buffer
real
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 - Lifetime
Application number
JP62046739A
Other languages
Japanese (ja)
Other versions
JPS63214852A (en
Inventor
均 ▲高▼木
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.)
NEC Corp
Original Assignee
Nippon 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 Nippon Electric Co Ltd filed Critical Nippon Electric Co Ltd
Priority to JP62046739A priority Critical patent/JP2580587B2/en
Priority to FR8802638A priority patent/FR2611939B1/en
Publication of JPS63214852A publication Critical patent/JPS63214852A/en
Priority to US07/605,458 priority patent/US5233700A/en
Application granted granted Critical
Publication of JP2580587B2 publication Critical patent/JP2580587B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は仮想記憶アドレッシングを採用した情報処理
システムに関し、特に情報処理システムに用いられるア
ドレス変換バッファに関する。
Description: BACKGROUND OF THE INVENTION The present invention relates to an information processing system employing virtual memory addressing, and more particularly to an address translation buffer used in an information processing system.

〔従来の技術〕[Conventional technology]

従来、この種の情報処理システムでは、仮想アドレス
に対する実アドレスの主記憶上の存在/不在を示す存在
ビットは、主記憶上などの比較的低速で大容量のアドレ
ス変換テーブルにのみあり、もし、この存在ビットが不
在を示すならば、情報処理システム上の比較的高速なア
ドレス変換バッファには仮想アドレスと実アドレスの登
録は行なわなかった。
Conventionally, in this type of information processing system, a presence bit indicating presence / absence of a real address in a main memory with respect to a virtual address exists only in a relatively low-speed and large-capacity address conversion table such as a main memory. If the presence bit indicates absence, the virtual address and the real address are not registered in the relatively high-speed address translation buffer on the information processing system.

〔発明が解決しようとする問題点〕[Problems to be solved by the invention]

上述した従来の情報処理システムは、アドレス変換テ
ーブル索引中検出した実アドレスの不在事象が、いずれ
何らかの方法で解決される事、即ち、実アドレスの存在
が保証され、アドレス変換バッファに仮想アドレスと実
アドレスの対が格納されて以後、当該仮想アドレスへの
アクセスはアドレス変換ファッファの検索で済み高速に
アドレス変換され得ることを前提としている。
In the conventional information processing system described above, the absence event of the real address detected in the address translation table index can be resolved by some method, that is, the existence of the real address is guaranteed, and the virtual address and the real address are stored in the address translation buffer. After the address pair is stored, it is assumed that access to the virtual address can be performed at high speed by searching for an address conversion buffer.

ところが、ある種の情報処理システムにおいては処理
能力を高める為に、処理の先取りを行なう。即ち、実行
ステージの用意が整うまでに、アドレス計算やオペラン
ドの読み出し、分岐先の命令取り出しなどを行なう。分
岐条件の成立が未定の場合には、条件の成立/非成立の
両者の可能性を考えて先取りを行ない、成立/非成立の
決定時、不要な先取り分を捨てることは良く起こり得る
ことである。その時、不要な先取りで発生した実アドレ
スの不在は処理に反映されないことになる。すると、上
述した前提条件は成立しなくなり、例えばプログラムの
ループ中にある分岐命令の常に分岐しない分岐先アドレ
スの先取りにおいて、実アドレスの非存在事象が発生し
ても、その反映はなされず、さらにアドレス変換バッフ
ァにも格納されないため、毎回(ループの回数)、低速
なアドレス変換テーブルをアクセスするため、実行性能
が低下するという欠点がある。
However, in some types of information processing systems, processing is preempted in order to increase processing capacity. That is, address preparation, operand readout, branch destination instruction fetch, and the like are performed until the execution stage is ready. When the establishment of the branch condition is undecided, preemption is performed in consideration of both the possibility of establishment and non-establishment of the condition, and when the establishment / non-satisfaction is determined, it is common that unnecessary preemption is discarded. is there. At that time, the absence of the real address caused by unnecessary prefetching is not reflected in the processing. Then, the above-mentioned precondition is not satisfied. For example, even if a non-existence event of a real address occurs in prefetching of a branch destination address that does not always branch to a branch instruction in a loop of a program, its reflection is not performed. Since it is not stored in the address translation buffer, the low-speed address translation table is accessed each time (the number of loops), so that there is a disadvantage that execution performance is reduced.

〔問題点を解決するための手段〕[Means for solving the problem]

本発明によるアドレス変換バッファは、仮想記憶アド
レッシングを採用した情報処理システムに用いられるア
ドレス変換バッファであって、情報処理システムは、主
記憶中に、仮想アドレスに対応する実アドレスの存在/
不在を示す存在ビットを格納したアドレス変換テーブル
を有しており、アドレス変換バッファは、アドレス変換
テーブルの部分コピーを、少なくとも仮想アドレス、こ
の仮想アドレスに対応する実アドレス、および存在ビッ
トの構成で格納していることを特徴とする。
An address translation buffer according to the present invention is an address translation buffer used in an information processing system employing virtual memory addressing.
The address translation buffer has an address translation table storing presence bits indicating absence. The address translation buffer stores a partial copy of the address translation table at least in the form of a virtual address, a real address corresponding to the virtual address, and a presence bit. It is characterized by doing.

〔実施例〕〔Example〕

次に、本発明の実施例について図面を参照して説明す
る。
Next, embodiments of the present invention will be described with reference to the drawings.

第1図は本発明の一実施例によるアドレス変換バッフ
ァを含む情報処理システムを示すブロック図である。
FIG. 1 is a block diagram showing an information processing system including an address translation buffer according to one embodiment of the present invention.

上位装置(ここでは図示せず)から信号線39によって
仮想アドレスVAが、信号線40によってアドレス変換指示
が、夫々仮想アドレスレジスタ1およびアドレス変換指
示フラグ5に格納される。仮想アドレスレジスタ1の一
部分は信号線21を通じて、アドレス変換バッファ2をア
ドレッシングし、そのエントリに収められた仮想アドレ
スVAが信号線23を通じて比較論理回路6へ入力される。
同時に、仮想アドレスレジスタ1の内容が信号線22を通
じて、アドレス変換バッファ2の各エントリの有効性を
示す有効ビットVが信号線24を通じて、さらに、仮想ア
ドレスVAに対応した実アドレスPAの存在を示す存在ビッ
トPが信号線25を通じて夫々、比較論理回路6へ入力さ
れる。比較論理回路6は、仮想アドレスレジスタ1の内
容と信号線23からの仮想アドレスVAが一致し、信号線24
からそのエントリが有効であるとの表示がなされ、か
つ、信号線25からの存在ビットPが実アドレスPAが存在
していることを示されているときのみ、与えられた仮想
アドレスVAに対応した実アドレスPAがアドレス変換バッ
ファ2に登録されているとして、変換動作を終了する。
A virtual address VA from a higher-level device (not shown here) is stored in a virtual address register 1 and an address conversion instruction flag 5 through a signal line 40, and an address conversion instruction is stored in a virtual address register 1 and an address conversion instruction flag 5, respectively. A part of the virtual address register 1 addresses the address translation buffer 2 via a signal line 21, and the virtual address VA contained in the entry is input to the comparison logic circuit 6 via a signal line 23.
At the same time, the contents of the virtual address register 1 are transmitted through the signal line 22, the valid bit V indicating the validity of each entry of the address conversion buffer 2 is transmitted through the signal line 24, and further, the existence of the real address PA corresponding to the virtual address VA is indicated. The existence bits P are input to the comparison logic circuit 6 through the signal lines 25, respectively. The comparison logic circuit 6 determines that the content of the virtual address register 1 matches the virtual address VA from the signal line 23,
Only when the entry indicates that the entry is valid, and when the presence bit P from the signal line 25 indicates that the real address PA exists, the entry corresponding to the given virtual address VA is displayed. Assuming that the real address PA has been registered in the address translation buffer 2, the translation operation ends.

上記の条件が成立しない場合、動作は2つの場合に分
けられる。仮想アドレスVAが一致して、かつ有効ビット
Vがそのエントリが有効を示しているが、存在ビットP
が実アドレスPAの不在を示している場合、実アドレスPA
の不在フォールトとしてフォールトデコード論理回路
7、フォールトレジスタ9を経由して上位位置へ報告さ
れる。
If the above condition is not satisfied, the operation is divided into two cases. Although the virtual address VA matches and the valid bit V indicates that the entry is valid, the existence bit P
Indicates the absence of the real address PA, the real address PA
Is reported to a higher order position via the fault decode logic circuit 7 and the fault register 9 as an absent fault.

仮想アドレスVAが一致しないか、有効ビットVがエン
トリの無効を示している場合、アドレス変換論理回路3
を起動する。アドレス変換論理回路3は、仮想アドレス
レジスタ1の内容からアドレス変換テーブル4のエント
リを決定し、そのエントリの実アドレスPA、存在ビット
P、制御情報Cを信号線30〜32によって取り込む。アド
レス変換論理回路3は取り込んだエントリの内容によっ
て、正常な変換が行なわれているかを吟味する。変換が
正常であれば、アドレス変換テーブル4から読み出した
情報を信号線33〜35を通じてアドレス変換バッファ2へ
書き込む。同時に変換動作を引き起こした仮想アドレス
VAもアドレス変換バッファ2に書き込まれる。
If the virtual address VA does not match or the valid bit V indicates that the entry is invalid, the address conversion logic circuit 3
Start The address conversion logic circuit 3 determines an entry of the address conversion table 4 from the contents of the virtual address register 1 and takes in the real address PA, the existence bit P, and the control information C of the entry through the signal lines 30 to 32. The address translation logic circuit 3 examines whether or not a normal translation has been performed based on the content of the fetched entry. If the conversion is normal, the information read from the address conversion table 4 is written to the address conversion buffer 2 through the signal lines 33 to 35. The virtual address that caused the translation operation at the same time
VA is also written to the address translation buffer 2.

この時、書き込みアドレスはアドレス変換バッファ2
を索引した場合と同じ信号線21で決定する。この為、以
後かかる仮想アドレスVAの変換には、アドレス変換バッ
ファ2が用いられ、アドレス変換は高速に実行される様
になる。
At this time, the write address is the address translation buffer 2
Are determined by the same signal line 21 as when indexing is performed. Therefore, the address translation buffer 2 is used for the subsequent translation of the virtual address VA, and the address translation is performed at high speed.

アドレス変換論理回路3によって変換の不正が検出さ
れた場合には、フォールトとして信号線38、フォールト
論理回路7を経由した、上位装置へ報告される。この
時、アドレス変換の動作は中止され、アドレス変換バッ
ファ2への書込みは行なわない。但し、実アドレス不在
のときには書込みが行なわれる。勿論、この時、存在ビ
ットPは不在を示すように書き込まれる。
If the address conversion logic circuit 3 detects an illegal conversion, the fault is reported to the host device via the signal line 38 and the fault logic circuit 7 as a fault. At this time, the operation of address conversion is stopped, and writing to the address conversion buffer 2 is not performed. However, when there is no real address, writing is performed. Of course, at this time, the presence bit P is written to indicate absence.

〔発明の効果〕〔The invention's effect〕

以上説明したように本発明は、アドレス変換中に検出
した実アドレスの不在を、比較的高速なアドレス変換バ
ッファに書き込んでおくことにより、処理の先取りを行
ない、アドレス変換中に検出した実アドレスの不在が必
ずしも反映されない場合にも、高速に実アドレスの不在
が検出でき、無駄なアドレス変換テーブルへのアクセス
が減少し、処理スピードの低下を避けられるという利点
がある。
As described above, according to the present invention, the absence of a real address detected during address translation is written in a relatively high-speed address translation buffer, thereby pre-fetching the process and performing the real address detection during the address translation. Even when the absence is not necessarily reflected, there is an advantage that the absence of the real address can be detected at a high speed, unnecessary access to the address conversion table is reduced, and a reduction in processing speed can be avoided.

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

第1図は本発明の一実施例によるアドレス変換バッファ
を含む情報処理システムの構成を示すブロック図であ
る。 1……仮想アドレスレジスタ,2……アドレス変換バッフ
ァ,3……アドレス変換論理回路,4……アドレス変換テー
ブル,5……アドレス変換指示フラグ,6……比較論理回
路,7……フォールトデコード論理回路,8……実アドレス
レジスタ,9……フォールトレジスタ,21〜42……信号
線。
FIG. 1 is a block diagram showing the configuration of an information processing system including an address translation buffer according to one embodiment of the present invention. 1 ... virtual address register, 2 ... address conversion buffer, 3 ... address conversion logic circuit, 4 ... address conversion table, 5 ... address conversion instruction flag, 6 ... comparison logic circuit, 7 ... fault decode logic Circuit 8, real address register 9, fault register 21 to 42 signal line.

Claims (1)

(57)【特許請求の範囲】(57) [Claims] 【請求項1】仮想記憶アドレッシングを採用した情報処
理システムに用いられるアドレス変換バッファであっ
て、前記情報処理システムは、主記憶中に、仮想アドレ
スに対応する実アドレスの存在/不在を示す存在ビット
を格納したアドレス変換テーブルを有しており、前記ア
ドレス変換バッファは、前記アドレス変換テーブルの部
分コピーを、少なくとも前記仮想アドレス、該仮想アド
レスに対応する実アドレス、および前記存在ビットの構
成で格納していることを特徴とするアドレス変換バッフ
ァ。
1. An address translation buffer used in an information processing system employing virtual memory addressing, wherein said information processing system includes, in a main memory, a presence bit indicating presence / absence of a real address corresponding to a virtual address. The address translation buffer stores a partial copy of the address translation table with at least the configuration of the virtual address, the real address corresponding to the virtual address, and the existence bit. An address translation buffer, comprising:
JP62046739A 1987-03-03 1987-03-03 Address translation buffer Expired - Lifetime JP2580587B2 (en)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP62046739A JP2580587B2 (en) 1987-03-03 1987-03-03 Address translation buffer
FR8802638A FR2611939B1 (en) 1987-03-03 1988-03-02 ADDRESS TRANSLATION DEVICE HAVING AN ADDRESS TRANSLATION MEMORY LOADED WITH PRESENCE BITS
US07/605,458 US5233700A (en) 1987-03-03 1990-10-30 Address translation device with an address translation buffer loaded with presence bits

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP62046739A JP2580587B2 (en) 1987-03-03 1987-03-03 Address translation buffer

Publications (2)

Publication Number Publication Date
JPS63214852A JPS63214852A (en) 1988-09-07
JP2580587B2 true JP2580587B2 (en) 1997-02-12

Family

ID=12755700

Family Applications (1)

Application Number Title Priority Date Filing Date
JP62046739A Expired - Lifetime JP2580587B2 (en) 1987-03-03 1987-03-03 Address translation buffer

Country Status (2)

Country Link
JP (1) JP2580587B2 (en)
FR (1) FR2611939B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6027562B2 (en) * 2014-02-24 2016-11-16 株式会社東芝 Cache memory system and processor system

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4084225A (en) * 1976-09-24 1978-04-11 Sperry Rand Corporation Virtual address translator
US4520441A (en) * 1980-12-15 1985-05-28 Hitachi, Ltd. Data processing system
JPS6010336B2 (en) * 1981-03-31 1985-03-16 富士通株式会社 Address comparison method
JPS5987566A (en) * 1982-11-12 1984-05-21 Hitachi Ltd Memory access detecting system

Also Published As

Publication number Publication date
FR2611939B1 (en) 1994-04-08
JPS63214852A (en) 1988-09-07
FR2611939A1 (en) 1988-09-09

Similar Documents

Publication Publication Date Title
GB2242294A (en) Memory architecture using page mode writes and single level write buffering
JPH0630075B2 (en) Data processing device having cache memory
JPH01290050A (en) Buffer memory
JPH03225542A (en) Memory of data and processing circuit for bit encode data
JP2580587B2 (en) Address translation buffer
JP3238390B2 (en) Buffer storage device
JP2703255B2 (en) Cache memory writing device
JP3226557B2 (en) Multiprocessor system
JPH0447350A (en) Main storage read/response control
JPS6141019B2 (en)
JPS62174846A (en) Storage checking system
JPS581247A (en) Cntrolling method for instruction advance-fetch
JPS60123944A (en) Buffer memory controlling system of information processor
JPH02176839A (en) Information processor
JPH0713865A (en) Cache memory control system
JPS62274349A (en) Data processing system
JPH0769863B2 (en) Data processing device
JPS6135583B2 (en)
JPH0210448A (en) Cache memory system
JPH0433059B2 (en)
JPH0769861B2 (en) Control method of bypass buffer in cache memory controller
JPS6244838A (en) Instruction fetching device
JPS63311567A (en) Access controlling system
JPH01316850A (en) Cache memory system
JPH01307849A (en) Data access device