JPH04352256A - メモリ空間を節約する方法および装置 - Google Patents

メモリ空間を節約する方法および装置

Info

Publication number
JPH04352256A
JPH04352256A JP3305669A JP30566991A JPH04352256A JP H04352256 A JPH04352256 A JP H04352256A JP 3305669 A JP3305669 A JP 3305669A JP 30566991 A JP30566991 A JP 30566991A JP H04352256 A JPH04352256 A JP H04352256A
Authority
JP
Japan
Prior art keywords
address
virtual
virtual address
buffer
entry
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.)
Granted
Application number
JP3305669A
Other languages
English (en)
Other versions
JP3278748B2 (ja
Inventor
Peter A Mehring
ピーター・エイ・メーリング
Robert D Becker
ロバート・ディ・ベッカー
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.)
Sun Microsystems Inc
Original Assignee
Sun Microsystems Inc
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 Sun Microsystems Inc filed Critical Sun Microsystems Inc
Publication of JPH04352256A publication Critical patent/JPH04352256A/ja
Application granted granted Critical
Publication of JP3278748B2 publication Critical patent/JP3278748B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related 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
    • 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]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/65Details of virtual memory and virtual address translation
    • G06F2212/652Page size control

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、変換索引バッファの空
間を節約する方法および装置に関し、更に詳しくは、中
央処理装置(CPU)における変換索引バッファの性能
を損なうことなくメモリ空間を節約する方法および装置
に関する。
【0002】
【従来の技術】高速中央処理装置が、主コンピュータ・
メモリの他にキャッシュ・メモリを有していることは極
めて一般的である。キャッシュ・メモリは、主コンピュ
ータ・メモリに較べて小さいが、それよりもはるかに高
速で、プロセッサと主メモリとの間に設けられている。 ソフトウェア・プログラムの実行中、キャッシュ・メモ
リは、最も頻繁に使用される命令とデータを記憶する。 プロセッサが、メモリから情報をアクセスする必要があ
る度に、プロセッサは、主コンピュータ・メモリをアク
セスする前に、まずキャッシュを調べる。プロセッサが
、キャッシュ中に命令またはデータを見い出すことがで
きず、それより遅い主メモリをアクセスすることが要求
される場合には、キャッシュ・ミスが起きる。このよう
に、キャッシュ・メモリはプロセッサの平均メモリ・ア
クセス時間を低減する。キャッシュ・メモリに関する他
の情報については、1982年9月のコンピューティン
グ・サーベイ,Vol.14,No 3 におけるアラ
ン  ジェイ.スミスによるキャッシュ・メモリに関す
る論文を参照されたい。
【0003】仮想アドレス方式により、システムのフレ
キシビリティとキャパビリティが向上する。たとえば、
仮想アドレス方式によれば、ソフトウェアが作動する仮
想アドレス空間を供給することにより、ソフトウェアを
物理的アドレス方式から切離す他、より大きいアドレス
空間を得ることができる。仮想アドレス方式を実現する
には、仮想アドレスを物理アドレスに翻訳するメカニズ
ムが必要である。多くのCPUは、仮想アドレスを物理
的メモリ・アドレスに翻訳する翻訳プログラムと、最新
の仮想−物理アドレス対をキャッシュする変換索引バッ
ファ(TLB)とを含んでいる。TLBはなくてはなら
ないものである。なぜならば、これは、翻訳対が既に存
在している場合マッピング・プロセスをスキップするこ
とによって主メモリにより速くアクセスさせることがで
きるからである。
【0004】キャッシュの動作は、通常CPUからの仮
想アドレスと適当な制御信号の到着とともに開始する。 仮想アドレスは、TLBとキャッシュ・メモリの両方に
送られる。TLBは、仮想ページ・ナンバを受けとり、
それを用いて1組のエレメントを選択し、その後、それ
は仮想アドレスに照合するため関連的に探索される。一
致している場合、対応する物理アドレスは比較器に送ら
れ、キャッシュにデータがあるかどうかを決定する。
【0005】TLBが、翻訳に必要とされる仮想−物理
アドレス対を含んでいない場合、アドレス翻訳プログラ
ムが要求される。翻訳プログラムは、そのプロセスに関
するセグメントおよびページ・テーブルへの入口として
、仮想アドレスの高次ビットを使用し、その後アドレス
対をTLBに戻し、現在のTLB入口に取って代わる。 上記テーブルはキャッシュまたは主メモリのいずれかに
ある。
【0006】TLB入口は多くのフィールドを含んでい
る。翻訳のため提供された仮想アドレスは、TLBの仮
想アドレス・タグ・フィールドと照合され、適切な入口
が見つかったことを確かめる。仮想アドレス・タグ・フ
ィールドは、アドレス空間識別子(ASID)を含んで
いるので、1つ以上のプロセスに関する入口が同時にT
LBに存在することができる。IBM370のようなマ
シンでは、保護フィールドが設けられ、アクセスが許可
されることを保証するようチェックされる。
【0007】また、TLBには、TLBにおける所定の
入口がバリドであるかどうかを示すビットがある。この
ビットはバリド・ビットと呼ばれている。各入口がTL
Bに入ると、入口の対応するバリド・ビットがセットさ
れる。TLB比較機能において、バリド・ビットの状態
がリセットされると、その入口に関して比較は行なわれ
ない。バリド・ビットがセットされると、比較機能を進
めることができる。いくつかのTLB設計では、比較さ
れるべき仮想アドレス・タグにおける仮想アドレスの長
さを示すよう割当てられたビットがあるので、それぞれ
の長さは異なった機能を表すことができる。
【0008】
【発明が解決しようとする課題】いくつかのTLBは内
容アドレス記憶装置(CAM)であるので、それらの大
きさは、一般に、それらのランダム・アクセス・メモリ
(RAM)の4倍である。これは、“保持”機能の代り
に“比較”機能を動作するトランジスタにおけるビルト
イン連想数理論理学によるものである。したがって、そ
の性能に何のインパクトも与えることなく、TLB  
CAMの空間を節約することが強く望まれている。本発
明の目的は、その性能を損なうことなく、TLB  C
AMの空間を節約する方法および装置を提供することで
ある。
【0009】
【課題を解決するための手段】本発明は、キャッシュ・
メモリ装置、特に変換索引バッファ(TLB)のために
バッファにおける空間を節約する方法および装置を提供
する。本発明の方法および装置では、メモリ空間は、レ
ベル・ビットの1つにバリド・ビットを入れることによ
りTLBに保存される。ここに開示された発明は、非常
に有効であり、またCAMビットの大きさは、CAM回
路の連想数理論理構造によりランダム・アクセス・メモ
リ(RAM)ビットの約4倍であるので、メモリ保存は
一層重要となる。
【0010】
【実施例】以下、添付の図面に基いて、本発明の実施例
に関し説明する。キャッシュ・メモリのTLBにおける
空間を節約する方法および装置について開示する。以下
の説明で、本発明の理解を助けるため様々な詳細な記載
が示されているが、本発明はこれら記載に限定されない
ことは当業者には明白であろう。また、周知の回路や構
造については、本発明を不明瞭にしないよう詳細な記載
は省略する。
【0011】図1は、プロセッサにおけるメモリ管理装
置(MMU)1のブロック図である。MMUは、命令キ
ャッシュ2、データ・キャッシュ3、整数装置4および
他の制御論理装置(図示せず)に接続している。プロセ
ッサ構造に関する他の情報については、ヘネシー,ジェ
イ.エル.,パターソン,ディ.エイ.によるコンピュ
ータ・アーキテクチャ;量的アプローチ(モーガン  
カフマン,サン  マテオ,CA,1990)を参照さ
れたい。
【0012】MMU1は、4つの主な機能を有している
。第1の機能は、実行している各プロセスの仮想メモリ
をメモリの物理アドレスに翻訳することである。本実施
例では、MMUは、図2に示すように変換索引バッファ
(TLB)5を用いることにより32−ビットの仮想ア
ドレス12,13を31−ビットの物理アドレスに翻訳
する。物理アドレスの3つの高次ビットは、8つの異な
るアドレス空間へのメモリ・マッピングを支援するよう
保持される。MMUは64個の文脈の利用を支援する。 第2の機能は、プロセスが他のプロセスのアドレス空間
に書込んだりまたここから読出したりできないように、
MMUがメモリを保護することである。ページ保護と利
用情報は十分に支援される。第3の機能は、MMUが仮
想メモリを実現することである。ページ・テーブルは、
主メモリ18に保持されている。TLB5にミスが生じ
ると、テーブル・ウォーク(table walk)は
ハードウェアで操作され、新しい仮想−物理アドレス変
換が翻訳プログラム6によりTLB5にロードされる。 最後に、MMUは、I/O、データ・キャッシュ3、命
令キャッシュ2間でのアービタレーション機能を行ない
、TLBはメモリ18を参照する。
【0013】以下の説明では、仮想アドレスと物理アド
レスを示すのに語句VAおよびPAを用いている。TL
B5は、ページ・ディスクリプタの32入口完全連想キ
ャッシュである。これは、仮想対物理アドレス変換およ
び関連ページ保護と利用情報をキャッシュする。擬似乱
数置換アルゴリズムは、必要な場合、32入口のいずれ
を置換すべきかを決定する。
【0014】擬似乱数置換方式は、代表的には次のよう
に動作する。TLB置換制御レジスタ(TRCR)7に
は5ビット・モジュロ32カウンタがある。TRCR7
は、TLB5の入口の1つをアドレスするため、中央処
理装置(CPU)の各クロック・サイクルにおいて、1
つずつインクリメントされる。TLBのミスが起きた場
合、カウンタの値を用いて、置換されるべきTLB入口
をアドレスする。リセットと同時に、カウンタはゼロに
初期化される。更に、TRCR7には、計数機能をディ
スエーブルするのに使用される1ビットがある。
【0015】図3は、TLBの1つの入口におけるフィ
ールドを示している。フィールドは仮想アドレス・タグ
8、文脈タグ9、ページ・テーブル入口(PTE)レベ
ル・フィールド10、ページ・テーブル・フィールド1
1を含んでいる。図3に示すように、20−ビットの仮
想アドレス・タグ8は、ページ・テーブル入口(PTE
)とI/Oページ・テーブル入口(I/OPTE)(後
述する)を参照する際に使用される仮想アドレス(VA
[31:12])の最上位20ビットを表わしている。 TLB入口には、キャッシュ・メモリ19の1ページに
おけるバイトを選択する仮想アドレスVA[11:0]
は含まれていない。VAタグ・フィールドのアドレスは
、20ビットPA[27:08]でページ・テーブル・
ポインタ(PTP)を参照する場合には物理アドレスで
ある。
【0016】3−ビットのレベル・フィールド10は、
領域およびセグメントPTEの適切な仮想タグ照合をエ
ネーブルするのに使用される。I/OPTEおよびPT
Pは、以下の表に示すように索引1,2,3を使用する
ため、このフィールド集合を有している。最上位ビット
15も、TLBバリド・ビットとして作用する。なぜな
らば、それはいずれかのバリドPTE、I/OPTEま
たはPTPに関してエネーブルされるからである。次の
表は、レベル・フィールドを定義する。     レベル・フィールド            
仮想タグ照合基準    000          
              無    100   
                     索引1(
VA[31:24])    110        
                索引1,2(VA[
31:18])    111           
             索引1,2,3(VA[3
1:12])
【0017】図3において、スーパーバイ
ザ(S)ビット16は、ページがスーパーバイザ・レベ
ルであることを示している文脈フィールドの照合をディ
スエーブルするのに使用される。ページ・テーブル・ポ
インタ(PTP)ビット17は、PTPがTLBのこの
入口にあることを示している。
【0018】ページ・テーブル・フィールドは、a)ペ
ージ・テーブル入口(PTE)、b)ページ・テーブル
・ポインタ(PTP)、またはc)I/Oページ・テー
ブル入口(I/OPTE)のいずれかである。PTEは
、ページの物理アドレスおよびそのアクセス許可の両方
を定義する。PTPは、ページ・テーブルの物理アドレ
スを含み、かつ文脈テーブル、レベル1ページ・テーブ
ル、またはレベル2ページ・テーブルにおいて見い出さ
れる。 ページ・テーブル・ポインタは、テーブル・ウォーク中
にTLBに配置され、ナチュラル置換によって(テーブ
ル・ウォーク中に)、または全TLBをフラッシュする
ことにより、TLBから取り除かれる。I/OPTEは
、ページの物理アドレスおよびそのアクセス許可の両方
を定義する。
【0019】図2において、6−ビットの文脈タグ9は
、PTEを参照する場合、メモリ管理ソフトウェアによ
り文脈レジスタ(CXR)14の値から書込まれる。 文脈タグ9と仮想アドレス・タグ8は、TLBヒットを
得るためCXR14と仮想アドレスVA[31:12]
を照合しなければならない。文脈フィールドは、PTP
を参照する場合、物理アドレスPA[07:02]を含
んでいる。このフィールドは、I/OPTEを参照する
場合には使用されない。MMU1により翻訳されるべき
仮想アドレス12は、TLB5の各入口と比較される。 TLBの検索中、レベル・フィールド10の値は、上記
照合基準の表にしたがってTLB仮想タグを照合するの
に、どの索引フィールドが必要とされるかを指定する。 レベル・ビットは、仮想ページの大きさを示すだけでな
く、仮想タグのどの部分が、比較に関係しているかを示
す。
【0020】本発明の原理によれば、レベル・ビット1
0の1つは、TLBの入口がバリドであるかどうかを示
すバリド・ビットとして機能する。本実施例では、最上
位ビットL1  15は、各バリド・入口に関してエネ
ーブルされる。L1ビットの状態がエネーブルされない
場合、その入口はバリドではないので比較は行なわれな
い。それがエネーブルされる場合、照合されるべき長さ
は、仮想タグ照合基準により決定されなければならない
。エネーブルされたL1ビットに関し、索引1が呼び出
され、VA[31:24]が比較される。エネーブルさ
れたL1,L2ビットに関し、VA[31:18]が比
較される。エネーブルされたL1,L2,L3ビットに
関し、VA[31:12]が比較される。したがって、
TLBのバリド入口に関し、L1ビットがエネーブルさ
れる。残りのレベル・ビットは、仮想タグ照合基準にし
たがってエネーブルされる。VA[31:24]の仮想
タグに関してはどれもエネーブルされず、レベル・フィ
ールドは“100”にセットされる。L2ビットは、V
A[31:18]の仮想タグに関してエネーブルされ、
レベル・フィールドは“110”にセットされる。最後
に、L2,L3ビットは、VA[31:12]の仮想タ
グに関してエネーブルされ、レベル・フィールドは“1
11”にセットされる。プロセッサから仮想アドレスが
到着すると、L1ビットは、まずバリディティに関して
チェックされる。L1ビットがセットされると、残りの
レベル・ビットの状態にしたがって、比較されるべきタ
グの長さが決定される。
【0021】
【発明の効果】本発明を適用すると、バリド・ビットを
L1レベル・ビットに入れることにより、CAM  T
LBにおけるバリド・ビットの必要はなくなり、しかも
TLBの性能を損なうことはない。
【図面の簡単な説明】
【図1】  プロセッサのメモリ管理装置のブロック図
を示している。
【図2】  本発明のTLBおよびキャッシュ・メモリ
のブロック図を示している。
【図3】  本発明のTLBにおける入口のフィールド
を示している。
【符号の説明】
1  メモリ管理装置(MMU) 2  命令キャッシュ 3  データ・キャッシュ 4  整数装置 5  変換索引バッファ(TLB) 6  翻訳装置 7  TLB置換制御レジスタ(TRCR)8  仮想
アドレス・タグ(CAM) 9  文脈タグ(CAM) 10  ページ・テーブル・入口(PTE)レベル・フ
ィールド 11  ページ・テーブル・フィールド12  仮想ア
ドレス 13      〃 14  文脈レジスタ(CXR) 15  最上位ビット 16  スーパーバイザ(S)・ビット17  ページ
・テーブル・ポインタ(PTP)18  主メモリ

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】  ランダム・アクセス・メモリと、ラン
    ダム・アクセス・メモリから頻繁に参照されるデータを
    含んでいる高速キャッシュ・メモリとから成り、データ
    を検索するためキャッシュ・メモリをまず参照しかつデ
    ータがキャッシュ・メモリにない場合だけランダム・ア
    クセス・メモリを参照するコンピュータ・システムのも
    のであって、仮想アドレスを識別する仮想アドレス・タ
    グ・フィールドと上記仮想アドレスの長さを識別するレ
    ベル・ビット・フィールドとを有する、キャッシュ・メ
    モリのためバッファのアドレス入口の空間を節約する方
    法において、キャッシュに記憶されたデータに上記バッ
    ファのアドレス入口を供給する過程と、バリド入口に対
    し第1レベル・ビットを設定する過程と、上記アドレス
    ・タグ・フィールドにおける上記仮想アドレスの長さに
    基いている所定の仮想タグ照合基準にしたがって、上記
    レベル・ビット・フィールドに残りのレベル・ビットを
    設定する過程と、から成るキャッシュ・メモリにデータ
    を記憶する過程と;プロセッサから仮想アドレスを受け
    取る過程と、バッファのアドレス入口における上記第1
    レベル・ビットの状態を読出す過程と、第1レベル・ビ
    ットがリセットされると、上記バッファの次の入口を読
    出す過程と、第1レベル・ビットがセットされると、長
    さが上記所定の仮想タグ照合基準にしたがって全てのレ
    ベル・ビットの状態により決定される上記プロセッサか
    らの上記仮想アドレスを上記バリド入口と比較する過程
    と、から成るキャッシュ・メモリのデータをアクセスす
    る過程と;から成り、仮想アドレスがバッファの入口に
    一致する場合、対応する物理アドレスが出力されて、デ
    ータがキャッシュから検索されることを特徴とするバッ
    ファのアドレス入口の空間を節約する方法。
  2. 【請求項2】  ランダム・アクセス・メモリと、ラン
    ダム・アクセス・メモリから頻繁に参照されるデータを
    含んでいる高速キャッシュ・メモリとから成り、データ
    を検索するためキャッシュ・メモリをまず参照しかつデ
    ータがキャッシュ・メモリにない場合だけランダム・ア
    クセス・メモリを参照するコンピュータ・システムのも
    のであって、仮想アドレスを識別する仮想アドレス・タ
    グ・フィールドと上記仮想アドレスの長さを識別するレ
    ベル・ビット・フィールドとを有する、キャッシュ・メ
    モリのためバッファの入口の空間を節約する装置におい
    て、キャッシュに記憶されたデータに上記バッファのア
    ドレス入口を供給する手段と、バリド入口に対し第1レ
    ベル・ビットを設定する手段と、上記アドレス・タグ・
    フィールドにおける上記仮想アドレスの長さに基いてい
    る所定の仮想タグ照合基準にしたがって、上記レベル・
    ビット・フィールドに残りのレベル・ビットを設定する
    手段と、から成るキャッシュ・メモリにデータを記憶す
    る装置と;プロセッサから仮想アドレスを受け取る手段
    と、バッファのアドレス入口における上記第1レベル・
    ビットの状態を読出す手段と、第1レベル・ビットがリ
    セットされると、上記バッファの次の入口を読出す手段
    と、第1レベル・ビットがセットされると、長さが上記
    所定の仮想タグ照合基準にしたがって全てのレベル・ビ
    ットの状態により決定される上記プロセッサからの上記
    仮想アドレスを上記バリド入口と比較する手段と、から
    成るキャッシュ・メモリのデータをアクセスする装置と
    ;から成り、仮想アドレスがバッファの入口に一致する
    場合、対応する物理アドレスが出力されて、データがキ
    ャッシュから検索されることを特徴とするバッファのア
    ドレス入口の空間を節約する装置。
JP30566991A 1990-12-18 1991-10-25 メモリ空間を節約する方法および装置 Expired - Fee Related JP3278748B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/629,258 US5222222A (en) 1990-12-18 1990-12-18 Apparatus and method for a space saving translation lookaside buffer for content addressable memory
US629,258 1990-12-18

Publications (2)

Publication Number Publication Date
JPH04352256A true JPH04352256A (ja) 1992-12-07
JP3278748B2 JP3278748B2 (ja) 2002-04-30

Family

ID=24522242

Family Applications (1)

Application Number Title Priority Date Filing Date
JP30566991A Expired - Fee Related JP3278748B2 (ja) 1990-12-18 1991-10-25 メモリ空間を節約する方法および装置

Country Status (6)

Country Link
US (1) US5222222A (ja)
EP (1) EP0491498B1 (ja)
JP (1) JP3278748B2 (ja)
KR (1) KR960001944B1 (ja)
CA (1) CA2057403C (ja)
DE (1) DE69132005T2 (ja)

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2251102B (en) * 1990-12-21 1995-03-15 Sun Microsystems Inc Translation lookaside buffer
US5420993A (en) * 1991-06-13 1995-05-30 Unisys Corporation Extended address translation system for pointer updating in paged memory systems
KR940005781B1 (ko) * 1992-02-25 1994-06-23 현대전자산업 주식회사 메모리 매너지먼트 유니트(mmu)
US5440707A (en) * 1992-04-29 1995-08-08 Sun Microsystems, Inc. Instruction and data cache with a shared TLB for split accesses and snooping in the same clock cycle
US5450558A (en) * 1992-05-27 1995-09-12 Hewlett-Packard Company System for translating virtual address to real address by duplicating mask information in real page number corresponds to block entry of virtual page number
EP0580109B1 (en) * 1992-07-23 1997-12-10 Rockwell International Corporation Data acces in a RISC digital signal processor
US5450562A (en) * 1992-10-19 1995-09-12 Hewlett-Packard Company Cache-based data compression/decompression
US5568415A (en) * 1993-02-19 1996-10-22 Digital Equipment Corporation Content addressable memory having a pair of memory cells storing don't care states for address translation
US6000008A (en) * 1993-03-11 1999-12-07 Cabletron Systems, Inc. Method and apparatus for matching data items of variable length in a content addressable memory
US5483644A (en) * 1993-04-15 1996-01-09 Vlsi Technology, Inc. Method for increasing cacheable address space in a second level cache
WO1995031783A1 (de) * 1994-05-11 1995-11-23 Gmd - Forschungszentrum Informationstechnik Gmbh Speichervorrichtung zum speichern von daten
JP3740195B2 (ja) * 1994-09-09 2006-02-01 株式会社ルネサステクノロジ データ処理装置
US5963984A (en) * 1994-11-08 1999-10-05 National Semiconductor Corporation Address translation unit employing programmable page size
US5584013A (en) * 1994-12-09 1996-12-10 International Business Machines Corporation Hierarchical cache arrangement wherein the replacement of an LRU entry in a second level cache is prevented when the cache entry is the only inclusive entry in the first level cache
US5682495A (en) * 1994-12-09 1997-10-28 International Business Machines Corporation Fully associative address translation buffer having separate segment and page invalidation
US5715420A (en) * 1995-02-10 1998-02-03 International Business Machines Corporation Method and system for efficient memory management in a data processing system utilizing a dual mode translation lookaside buffer
US5680566A (en) * 1995-03-03 1997-10-21 Hal Computer Systems, Inc. Lookaside buffer for inputting multiple address translations in a computer system
US6249853B1 (en) 1997-06-25 2001-06-19 Micron Electronics, Inc. GART and PTES defined by configuration registers
US6282625B1 (en) 1997-06-25 2001-08-28 Micron Electronics, Inc. GART and PTES defined by configuration registers
US6069638A (en) * 1997-06-25 2000-05-30 Micron Electronics, Inc. System for accelerated graphics port address remapping interface to main memory
US6078987A (en) * 1997-09-30 2000-06-20 Sun Microsystems, Inc. Translation look aside buffer having separate RAM arrays which are accessable with separate enable signals
US5936873A (en) * 1997-09-30 1999-08-10 Sun Microsystems, Inc. Single ended match sense amplifier
US6252612B1 (en) 1997-12-30 2001-06-26 Micron Electronics, Inc. Accelerated graphics port for multiple memory controller computer system
US7071946B2 (en) * 1997-12-30 2006-07-04 Micron Technology, Inc. Accelerated graphics port for a multiple memory controller computer system
US6157398A (en) * 1997-12-30 2000-12-05 Micron Technology, Inc. Method of implementing an accelerated graphics port for a multiple memory controller computer system
US6243775B1 (en) 1998-01-20 2001-06-05 Micron Technology, Inc. System for extending the available number of configuration registers
US6108733A (en) * 1998-01-20 2000-08-22 Micron Technology, Inc. Method for extending the available number of configuration registers
US6272576B1 (en) 1998-01-20 2001-08-07 Micron Technology, Inc. Method for extending the available number of configuration registers
KR100590751B1 (ko) * 1999-02-23 2006-06-15 삼성전자주식회사 데이터라인크기변경시엔트리갯수가동일한캐시메모리시스템
US6327646B1 (en) * 1999-03-12 2001-12-04 Intel Corporation Translation look-aside buffer utilizing high-order bits for fast access
US6362990B1 (en) 1999-09-10 2002-03-26 Sibercore Technologies Three port content addressable memory device and methods for implementing the same
US6553453B1 (en) 1999-09-10 2003-04-22 Sibercore Technologies, Inc. Variable width content addressable memory device for searching variable width data
US6392910B1 (en) 1999-09-10 2002-05-21 Sibercore Technologies, Inc. Priority encoder with multiple match function for content addressable memories and methods for implementing the same
KR100587148B1 (ko) * 2000-12-30 2006-06-07 매그나칩 반도체 유한회사 캠 셀 구조
US6901476B2 (en) * 2002-05-06 2005-05-31 Hywire Ltd. Variable key type search engine and method therefor
US20050182903A1 (en) * 2004-02-12 2005-08-18 Mips Technologies, Inc. Apparatus and method for preventing duplicate matching entries in a translation lookaside buffer
US20050182912A1 (en) * 2004-02-12 2005-08-18 International Business Machines Corporation Method of effective to real address translation for a multi-threaded microprocessor
US7167970B2 (en) * 2004-05-24 2007-01-23 Sun Microsystems, Inc. Translating loads for accelerating virtualized partition
KR100703164B1 (ko) * 2005-07-12 2007-04-06 삼성전자주식회사 데이터 처리장치 및 그 제어방법
US8468297B2 (en) 2010-06-23 2013-06-18 International Business Machines Corporation Content addressable memory system
US9092359B2 (en) 2012-06-14 2015-07-28 International Business Machines Corporation Identification and consolidation of page table entries
US9811472B2 (en) * 2012-06-14 2017-11-07 International Business Machines Corporation Radix table translation of memory
US9753860B2 (en) 2012-06-14 2017-09-05 International Business Machines Corporation Page table entry consolidation
US11216385B2 (en) 2019-05-15 2022-01-04 Samsung Electronics Co., Ltd. Application processor, system-on chip and method of operating memory management unit

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR10582E (fr) * 1970-06-29 1909-07-30 Paul Alexis Victor Lerolle Jeu de serrures avec passe-partout
US4285040A (en) * 1977-11-04 1981-08-18 Sperry Corporation Dual mode virtual-to-real address translation mechanism
US4680700A (en) * 1983-12-07 1987-07-14 International Business Machines Corporation Virtual memory address translation mechanism with combined hash address table and inverted page table
JPH0685156B2 (ja) * 1985-05-24 1994-10-26 株式会社日立製作所 アドレス変換装置
JPS62237547A (ja) * 1986-04-09 1987-10-17 Hitachi Ltd アドレス変換方式
US4914577A (en) * 1987-07-16 1990-04-03 Icon International, Inc. Dynamic memory management system and method
US5058003A (en) * 1988-12-15 1991-10-15 International Business Machines Corporation Virtual storage dynamic address translation mechanism for multiple-sized pages
US5133058A (en) * 1989-09-18 1992-07-21 Sun Microsystems, Inc. Page-tagging translation look-aside buffer for a computer memory system

Also Published As

Publication number Publication date
EP0491498A3 (en) 1993-01-13
EP0491498B1 (en) 2000-03-01
CA2057403A1 (en) 1992-06-19
JP3278748B2 (ja) 2002-04-30
DE69132005T2 (de) 2000-10-19
KR960001944B1 (ko) 1996-02-08
CA2057403C (en) 2001-02-27
US5222222A (en) 1993-06-22
KR920013131A (ko) 1992-07-28
DE69132005D1 (de) 2000-04-06
EP0491498A2 (en) 1992-06-24

Similar Documents

Publication Publication Date Title
JP3278748B2 (ja) メモリ空間を節約する方法および装置
EP1941375B1 (en) Caching memory attribute indicators with cached memory data
US5493660A (en) Software assisted hardware TLB miss handler
US6014732A (en) Cache memory with reduced access time
US6304944B1 (en) Mechanism for storing system level attributes in a translation lookaside buffer
US5265227A (en) Parallel protection checking in an address translation look-aside buffer
KR960001946B1 (ko) 우선 변환 참조버퍼
US6145064A (en) Method of efficiently updating hashed page tables
US7089398B2 (en) Address translation using a page size tag
US5893931A (en) Lookaside buffer for address translation in a computer system
JP2618175B2 (ja) キャッシュ・アクセスのための仮想アドレス変換予測の履歴テーブル
JP4065660B2 (ja) 機能が並列に分散された変換索引バッファ
EP0506236A1 (en) Address translation mechanism
US20160140042A1 (en) Instruction cache translation management
JPH04232551A (ja) 多重仮想アドレス変換方法及び装置
WO1995016963A1 (en) Variable page size translation lookaside buffer
KR20080063512A (ko) 변환 색인 버퍼들(tlbs) 필드의 다중 레벨 갱신
US8015361B2 (en) Memory-centric page table walker
US10929306B2 (en) Arithmetic processor, information processing apparatus, and control method of arithmetic processor
US6327646B1 (en) Translation look-aside buffer utilizing high-order bits for fast access
US20040059887A1 (en) Cache memory
AU708232B2 (en) A method of efficiently updating hashed page tables

Legal Events

Date Code Title Description
LAPS Cancellation because of no payment of annual fees