JP2656538B2 - Address translation device - Google Patents
Address translation deviceInfo
- Publication number
- JP2656538B2 JP2656538B2 JP63091550A JP9155088A JP2656538B2 JP 2656538 B2 JP2656538 B2 JP 2656538B2 JP 63091550 A JP63091550 A JP 63091550A JP 9155088 A JP9155088 A JP 9155088A JP 2656538 B2 JP2656538 B2 JP 2656538B2
- Authority
- JP
- Japan
- Prior art keywords
- bit
- entry
- circuit
- address translation
- usage
- 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 - Fee Related
Links
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Description
【発明の詳細な説明】 〔産業上の利用分野〕 本発明はアドレス変換装置に係り、特に高速アドレス
変換バツフア(Translation Lookaside Buffer:TL
B)のエントリ入替え制御に関する回路を簡単かつ規則
構造化して、面積を削減し高速化するのに好適なアドレ
ス変換装置に関する。DETAILED DESCRIPTION OF THE INVENTION The present invention [relates] relates to address translation device, in particular high-speed address translation buffer (T ranslation L ookaside B uffer: TL
The present invention relates to an address translation device suitable for reducing the area and increasing the speed by simply and regularly forming a circuit relating to the entry replacement control of B).
使用状況ビツトがすべてセツトされている状態で新し
いエントリを登録する場合、まず使用状況ビツトをクリ
アすることが必要であるが、従来技術では使用状況ビツ
トに順番にゼロを書き込むか、あるいは同時にクリアす
るための特別な回路を設ける必要があつた。When registering a new entry with all the usage bits set, it is necessary to clear the usage bits first, but in the prior art, the usage bits are sequentially written with zeros or cleared simultaneously. It was necessary to provide a special circuit for this.
本発明の目的は上記従来技術の問題点を解決し、エン
トリ入替え制御に関する回路を簡単かつ規則構造化し
て、面積を削減し高速化する手段を提供することにあ
る。SUMMARY OF THE INVENTION An object of the present invention is to solve the above-mentioned problems of the prior art, and to provide a means for reducing the area and increasing the speed by simply and regularly forming a circuit relating to entry replacement control.
上記目的は、アドレス変換装置のメモリアレイ内に使
用状況ビツトを持つとともに、使用状況ビツトを見掛け
上正転ないし反転させる使用状況ビツト制御回路をメモ
リアレイ外に持つことによつて達成される。The above object is achieved by providing a use status bit in the memory array of the address translation device and having a use status bit control circuit for apparently rotating or inverting the use status bit outside the memory array.
使用状況ビツトがすべてセツトされている場合、使用
状況ビツト制御回路で使用状況ビツトの読みだしあるい
は書き込み情報を反転して扱うようにすれば見掛け上使
用状況ビツトをクリアしたように見える。またこの状態
で使用状況ビットをセツトするには、実際にはゼロを書
き込めばよい。このように本発明によれば、全エントリ
の使用状況ビツトにゼロを書き込む時間あるいは専用の
クリア回路を必要とせずに等価的に使用状況ビツトのク
リアを行なうことができる。When all the usage status bits are set, it is apparent that the usage status bit has been cleared if the usage status bit control circuit inverts the use status bit reading or writing information. To set the usage bit in this state, it is sufficient to actually write zero. As described above, according to the present invention, it is possible to equivalently clear the usage bits without the time of writing zero to the usage bits of all entries or a special clear circuit.
以下本発明の実施例を図に従い説明する。 An embodiment of the present invention will be described below with reference to the drawings.
第1図はアドレス変換装置(以下TLBと略す)の概略
図である。TLB1はマスク回路11、連想アレイ12、一致線
処理回路13、データアレイ14で構成される。また連想ア
レイ12は有効ビツト122(V)、使用状況ビツト121
(L)、および論理アドレスの一部(アドレス変換の対
象となる部分)を保持するLAフイールド123を持つ。マ
スクパターンは制御信号34の制御下でマスクパターン発
生回路15によつて作られる。フリツプフロツプ21及びEO
Rゲート22は使用状況ビツト制御回路の一実施例となつ
ている。FIG. 1 is a schematic diagram of an address translation device (hereinafter abbreviated as TLB). The TLB 1 includes a mask circuit 11, an associative array 12, a match line processing circuit 13, and a data array 14. The associative array 12 has an effective bit 122 (V) and a use status bit 121.
(L), and an LA field 123 that holds a part of a logical address (a part to be converted). The mask pattern is created by the mask pattern generation circuit 15 under the control of the control signal 34. Flip Flop 21 and EO
The R gate 22 is an embodiment of a use bit control circuit.
第1図のTLBを用いてアドレス変換する場合の動作を
第2図で説明する。まず変換すべき論理アドレス(ロジ
カルアドレス)がLAフイールドと一致しかつV=1であ
るようなエントリを探す。一致するエントリがあればデ
ータアレイ14からPAフイールドを読みだしてこれを物理
アドレス(フイジカルアドレス)の変換対象部分とすれ
ばよい。またこのエントリのLビツトを1にセツトす
る。これはエントリが使われたことを示すためである。
もし一致するエントリがなければTLBミスとしてプロセ
ツサの例外処理機構に報告する。The operation in the case of performing address conversion using the TLB shown in FIG. 1 will be described with reference to FIG. First, an entry whose logical address (logical address) to be translated matches the LA field and V = 1 is searched for. If there is a matching entry, the PA field is read from the data array 14, and this may be used as the conversion target portion of the physical address (physical address). Also, the L bit of this entry is set to 1. This is to indicate that the entry has been used.
If there is no matching entry, a TLB miss is reported to the processor exception handling mechanism.
次にアドレス変換対を登録する場合の動作を第3図で
説明する。まず最初に有効ビツトV=0のエントリがあ
るかどうかを検索する。もしあればそのエントリは空い
ているので、その中から1エントリを選択しアドレス変
換対を書き込むとともにVおよびLビツトを1にセツト
する。V=0のエントリがない場合には、次にV=1で
かつ使用状況ビツトL=0のエントリがあるかどうかを
検索する。L=0のエントリはそのエントリが最近使わ
れていないことを示している。もしL=0のエントリが
あればその中の1つを選択し、アドレス変換対を書き込
むとともにVおよびLを1にセツトする。V=1,L=0
のエントリがない場合すべてのエントリが使われている
ことを意味する。この場合疑似LRU(Least Recently
Used)方式ではすべてのエントリを置き換えの対象と
する。このために全Lビツトを0にクリアする。その後
V=1,L=0のエントリに書き込みを行なえばよい。Next, the operation for registering an address translation pair will be described with reference to FIG. First, it is searched whether there is an entry of valid bit V = 0. If so, the entry is vacant, so one entry is selected from the entry, an address translation pair is written, and the V and L bits are set to 1. If there is no entry with V = 0, it is searched next whether there is an entry with V = 1 and a usage bit L = 0. An entry with L = 0 indicates that the entry has not been used recently. If there is an entry with L = 0, one of them is selected, an address translation pair is written, and V and L are set to 1. V = 1, L = 0
If there is no entry, it means that all entries have been used. In this case pseudo LRU (L east R ecently
In the U sed) method, all entries are to be replaced. Therefore, all L bits are cleared to zero. After that, the data may be written to the entry of V = 1 and L = 0.
さてLビツトをクリアするには一般には全エントリに
順番に書き込みを行なうか、各Lビツトに専用の書き込
み回路を設ける必要がある。しかし使用状況ビツトを1
ビツトだけ持つて管理する凝似LRU方式の場合には、V
=1,L=0のエントリがないということは全エントリの
Lビツトが1であることを意味する。従つてセツトされ
ているLビツトが反転しているものと見なせば、見掛け
上Lビツトがクリアされているものとして扱うことがで
きる。To clear the L bits, it is generally necessary to write all entries sequentially or to provide a dedicated write circuit for each L bit. But one usage bit
In the case of the similar LRU system in which only bits are managed, V
The absence of an entry with L = 1 and L = 0 means that the L bit of all entries is 1. Therefore, if it is considered that the set L bit is inverted, it can be treated that the L bit is apparently cleared.
そこで本発明では使用状況ビツト制御回路を設け、L
ビツトの反転を第1図のフリツプフロツプ21を反転させ
ることで実現する。例えばフリツプフロツプ21が“0"で
あり、Lビツトが全て“1"である場合を考える。ここで
新しく変換対を登録する場合には、まずLビツトクリア
信号LCR35をアサートする。するとフリツプフロツプ21
は反転され“1"となる。したがつてEOR22の出力L′は
Lビツトの極性を反転したものとなる。そこでL=1を
書き込むことはL′=0を書き込むことになつており、
L=0で検索することはL′=1で検索することになつ
ている。即ちTLB1の外部から見ればLビツトが一度にク
リアされ、書き込み時にはL=1を書き込み、検索時に
はL=0で検索しているように見える。Therefore, in the present invention, a use status bit control circuit is provided,
Bit reversal is realized by reversing flip-flop 21 in FIG. For example, consider the case where the flip-flop 21 is "0" and the L bits are all "1". Here, when registering a new conversion pair, the L bit clear signal LCR35 is first asserted. Then flip flop 21
Is inverted to “1”. Therefore, the output L 'of the EOR 22 is obtained by inverting the polarity of the L bit. Therefore, writing L = 1 means writing L ′ = 0,
Searching at L = 0 means searching at L '= 1. That is, from the outside of the TLB 1, the L bit is cleared at once, and it looks as if L = 1 is written at the time of writing and L = 0 is searched at the time of searching.
第4図及び第5図は各々LAフイールドおよびVビツト
の連想アレイ回路を示す。なおLAフイールドとしては第
5図に回路を使うこともできる。またLビツトはいずれ
でもよい。マスク回路11は第1図のマスク発生回路15で
作成したマスク信号LAMi,VM,LMによつて、論理アドレス
入力LAi,有効ビツトV,使用状況ビツトLによる検索を有
効にするか否かを制御する回路である。なおiはビツト
位置を示すサフイツクスである。すなわち例えば第4図
で説明するとENBL=1であるときLAMi=1であればAND
ゲート111の出力はLAi、ゲート112の出力は~LAi( ̄は
否定を表わす)である。したがつてLAiの値が1か0か
によつてゲート111とゲート112の出力のいずれか一方の
みが“1"となるので、連想アレイセル122で記憶内容と
一致するかどうかを調べることが出来る。一方LAMi=0
であればLAiの値の如何に係らずゲート111及び112の出
力は“0"となる。この場合連想アレイセル122の連想制
御トランジスタ1221及び1222はともに閉じるので連想の
対象外となる。FIGS. 4 and 5 show the LA field and V bit associative array circuits, respectively. The circuit shown in FIG. 5 can be used as the LA field. The L bit may be any. The mask circuit 11 controls whether or not to enable the search based on the logical address input LAi, valid bit V, and use status bit L based on the mask signals LAMi, VM, LM generated by the mask generating circuit 15 in FIG. Circuit. Note that i is a suffix indicating the bit position. That is, for example, referring to FIG. 4, when ENBL = 1, LAMi = 1 and AND
The output of gate 111 is LAi, and the output of gate 112 is ~ LAi ( ̄ represents negation). Accordingly, depending on whether the value of LAi is 1 or 0, only one of the outputs of the gate 111 and the gate 112 becomes "1", so that it is possible to check in the associative array cell 122 whether or not the stored contents match. . LAMi = 0
If so, the outputs of the gates 111 and 112 will be "0" regardless of the value of LAi. In this case, since the associative control transistors 1221 and 1222 of the associative array cell 122 are both closed, they are excluded from the associative control.
ここでアドレス変換時のようなV=1,VM=1の場合を
例にして第5図によつて回路動作を説明する。一致線HL
INEjはあらかじめPCH信号によりプリチヤージされてい
る。なおjはエントリ番号を示すサフイツクスである。
ゲート111の出力は“1"、ゲート112の出力は“0"であ
る。連想セル122内でループを構成しているゲート1223
の出力が“1"であれば“0"とみなされる。そこでもし連
想セル122が“1"を記憶していれば、ゲート1221はオン
であるがゲート1225はオフ、またゲート1222はオフであ
るためHLINEjは少なくともこのセルでデイスチヤージさ
れることはない。これはVビツトに関して一致したとみ
なす。一方連想セル122が“0"を記憶していれば、ゲー
ト1221とゲート1225が共にオンとなり、HLINEjは他のLA
j等に関するビツトが何であろうとデイスチヤージされ
る。これはVビツトの不一致となりエントリは選択され
ない。同様のことがLAi,Lに関する連想セルにおいても
行なわれ、全てのセルで一致あるいはドントケアである
場合に、そのエントリで一致したことを示すHLINEjがア
サート状態を保つたままとなる。Here, the circuit operation will be described with reference to FIG. 5 taking as an example the case where V = 1 and VM = 1 as in the case of address translation. Match line HL
INEj is precharged by a PCH signal in advance. Note that j is a suffix indicating an entry number.
The output of the gate 111 is “1” and the output of the gate 112 is “0”. Gate 1223 forming a loop in associative cell 122
If the output of is “1”, it is regarded as “0”. Therefore, if the associative cell 122 stores "1", the gate 1221 is on but the gate 1225 is off and the gate 1222 is off, so that HLINEj is not at least distorted in this cell. This is considered a match for the V bit. On the other hand, if the associative cell 122 stores “0”, both the gate 1221 and the gate 1225 are turned on, and HLINEj is
Whatever the bit about j etc. is dismissed. This results in a mismatch of the V bits and no entry is selected. The same is performed in the associative cells related to LAi, L. If all cells match or don't care, HLINEj indicating that the match has occurred in the entry remains asserted.
一致線HLINEjは第1図に示す一致線処理回路13に入力
される。一致線処理回路13は、第6図に示す一致線選択
回路と、第7図のラツチ回路とから構成される。The match line HLINEj is input to the match line processing circuit 13 shown in FIG. The match line processing circuit 13 includes a match line selection circuit shown in FIG. 6 and a latch circuit shown in FIG.
一致線選択回路はアサートされた複数の一致線から一
本を選択して、信号線SLINEjに出力するための回路であ
る。一致線選択の方法はHLINE0の方から順に見ていき
“1"となつているラインがありばその以降のHLINEjの出
力を禁止するように動作するものである。一致線選択回
路を動作させるかどうかはHTHU(Hit THroU)信号によ
つて制御できる。同期信号SENをアサートすると、HLINE
jがアサートされたエントリのうちサフイツクス値が最
小のエントリに対応するSLINEjのみがアサートされる。
なおSEN(SLINE EN able)信号は同期をとつて伝達する
ためのタイミング制御信号である。アドレス変換及び登
録時の動作において求めるエントリが存在したかどうか
は一致線選択回路から出力されるHit信号によつて知る
ことが出来る。The match line selection circuit is a circuit for selecting one of the plurality of asserted match lines and outputting it to the signal line SLINEj. The matching line selection method operates in such a manner that HLINE0 is sequentially viewed, and if there is a line that is "1", the output of HLINEj thereafter is prohibited. The operation of the match line selection circuit can be controlled by the HTHU (Hit THroU) signal. When the sync signal SEN is asserted, HLINE
Only SLINEj corresponding to the entry with the smallest suffix value among the entries for which j is asserted is asserted.
Note that the SEN (SLINE ENABLE) signal is a timing control signal for synchronous transmission. Whether or not an entry to be sought in the operation at the time of address conversion and registration can be known from the Hit signal output from the match line selection circuit.
ラツチ回路はSLINEjの状態を保持しておきTLBにエン
トリを登録する時に使用する。ラツチ信号LCH(LatCH)
がアサートされると、選択されたSLINEjをラツチに取り
込む。ラツチ回路からは、RAMで構成されるデータアレ
イ側に対してRAMワード線RLINEjが、連想アレイ側に対
しては連想アレイ書き込み線WLINEjが出力される。RLIN
EEjはデータアレイ側の内容を読みだしたり書き込んだ
りするエントリを指定する信号である。The latch circuit holds the state of SLINEj and uses it when registering an entry in the TLB. Latch signal LCH (LatCH)
Is asserted, the selected SLINEj is loaded into the latch. The latch circuit outputs a RAM word line RLINEj to the data array side constituted by the RAM, and outputs an associative array write line WLINEj to the associative array side. RLIN
EEj is a signal for specifying an entry for reading or writing the contents of the data array.
このようにするとTLB1内のLビツト121には何ら特別
な回路を必要とせず、連想アレイ12の外に簡単な回路を
付加するのみでLビツトのみのクリアが実現できる。In this way, no special circuit is required for the L bit 121 in the TLB 1, and only the L bit can be cleared by simply adding a simple circuit outside the associative array 12.
以上説明したように、本発明によればアドレス変換ア
レイ内に使用状況ビツトを持ち、アレイの外部に簡単な
使用状況ビツト制御回路を持つことによつて、全エント
リの使用状況ビツトにゼロを書き込む時間あるいは専用
のクリア回路を必要とせずに等価的に使用状況ビツトの
クリアを行ない、凝似LRUの制御を実現することができ
る。As described above, according to the present invention, zeros are written to the usage bits of all entries by having the usage bits in the address translation array and having a simple usage bit control circuit outside the array. The usage status bit can be equivalently cleared without requiring a time or a dedicated clear circuit, and control of the analogous LRU can be realized.
第1図は本発明の1実施例を示す概略図、第2図はTLB
によるアドレス変換動作の概略フロー、第3図はTLBに
アドレス変換対を登録する場合の概略フロー、第4図は
TLBの連想アレイ部分における論理アドレスフイールド
のセルの回路図、第5図はTLBの連想アレイ部分におけ
るVビツトのセルの回路図、第6図は一致線選択回路の
構成図、第7図はラツチ回路の構成図である。FIG. 1 is a schematic diagram showing one embodiment of the present invention, and FIG.
FIG. 3 is a schematic flow of an address translation operation according to the first embodiment, FIG. 3 is a schematic flow of registering an address translation pair in a TLB, and FIG.
FIG. 5 is a circuit diagram of a cell of a logical address field in the associative array portion of the TLB, FIG. 5 is a circuit diagram of a V bit cell in the associative array portion of the TLB, FIG. 6 is a configuration diagram of a match line selection circuit, and FIG. It is a block diagram of a circuit.
Claims (1)
行なう複数のエントリを持ち、該複数のエントリの全体
は記憶機能を有するセルが規則的に繰返されたアレイ構
造を持つメモリによつて構成されるアドレス変換装置に
おいて、該エントリが最近使用されたかどうかを示す各
エントリごとの使用状況ビツトをメモリアレイ内に持
ち、該使用状況ビツトの内容を見掛け上正転ないし反転
させる使用状況ビツト制御回路をメモリアレイ外に持つ
ことを特徴とするアドレス変換装置。1. A memory having a plurality of entries for converting a logical address to a physical address, and the plurality of entries is entirely constituted by a memory having an array structure in which cells having a storage function are regularly repeated. In the address translator, a usage bit control circuit for storing, in the memory array, usage status bits for each entry indicating whether or not the entry has been used recently and for apparently turning forward or inverting the contents of the usage status bit is provided. An address translation device, which is provided outside a memory array.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63091550A JP2656538B2 (en) | 1988-04-15 | 1988-04-15 | Address translation device |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP63091550A JP2656538B2 (en) | 1988-04-15 | 1988-04-15 | Address translation device |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH01263851A JPH01263851A (en) | 1989-10-20 |
JP2656538B2 true JP2656538B2 (en) | 1997-09-24 |
Family
ID=14029604
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP63091550A Expired - Fee Related JP2656538B2 (en) | 1988-04-15 | 1988-04-15 | Address translation device |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2656538B2 (en) |
-
1988
- 1988-04-15 JP JP63091550A patent/JP2656538B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH01263851A (en) | 1989-10-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6137707A (en) | Method and apparatus for simultaneously performing a plurality of compare operations in content addressable memory device | |
EP0137594B1 (en) | Address translation memory | |
EP0009938B1 (en) | Computing systems having high-speed cache memories | |
EP0364110B1 (en) | Semiconductor memory device having a serial access memory | |
JPH0676583A (en) | Storage device with internal address and method for eliminating need for matching word | |
US5638315A (en) | Content addressable memory for a data processing system | |
US4894799A (en) | Content-addressable memory | |
JP4347439B2 (en) | Content address memory system | |
JPH03219326A (en) | Data comparator | |
US5396460A (en) | FIFO memory in which number of bits subject to each data read/write operation is changeable | |
Heald et al. | A 6-ns cycle 256-kb cache memory and memory management unit | |
JP2703418B2 (en) | Central processing unit | |
JP2656538B2 (en) | Address translation device | |
JPH0362243A (en) | Apparatus for quickening memory access in information processing system | |
US6138211A (en) | High-performance LRU memory capable of supporting multiple ports | |
US6088763A (en) | Method and apparatus for translating an effective address to a real address within a cache memory | |
JPH0863975A (en) | Staic ram and processing unit having this static ram | |
JP3242161B2 (en) | Data processor | |
JPH05198186A (en) | Associative memory system | |
JPH05282877A (en) | Semiconductor memory | |
JPH05113929A (en) | Microcomputer | |
JPH07114076B2 (en) | Semiconductor memory device | |
JP3144814B2 (en) | Cache memory control method and cache tag memory control method | |
JP2783954B2 (en) | Associative memory device | |
JPH06215583A (en) | Associative memory |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |