JPS6349258B2 - - Google Patents

Info

Publication number
JPS6349258B2
JPS6349258B2 JP57023322A JP2332282A JPS6349258B2 JP S6349258 B2 JPS6349258 B2 JP S6349258B2 JP 57023322 A JP57023322 A JP 57023322A JP 2332282 A JP2332282 A JP 2332282A JP S6349258 B2 JPS6349258 B2 JP S6349258B2
Authority
JP
Japan
Prior art keywords
tlb
address
register
logical
addresses
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
Application number
JP57023322A
Other languages
English (en)
Other versions
JPS58141487A (ja
Inventor
Yasuo Hirota
Hideyuki Saso
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.)
Fujitsu Ltd
Original Assignee
Fujitsu 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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP57023322A priority Critical patent/JPS58141487A/ja
Publication of JPS58141487A publication Critical patent/JPS58141487A/ja
Publication of JPS6349258B2 publication Critical patent/JPS6349258B2/ja
Granted legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】 (1) 発明の技術分野 本発明は、仮想記憶方式における計算機におい
て論理アドレスを実アドレスに変換を行う際の変
換動作を高速に実行するためにTLB
(TRANSLATI ON LOOKASIDE BUFFER)
を使用する場合のTLBの無効化を高速に行うバ
ツフア無効化方式に関するものである。
(2) 従来技術 仮想記憶方式を採用した電子計算機においては
主記憶などのメモリをアクセスするために論理ア
ドレスを実アドレスに変換する必要がある。
このアドレス変換を高速に実行するために
TLBというバツフアを使用している。
第1図に一般的なダイレクトマツピング方式の
TLBバツフアの構成を示す。
ダイレクトマツピング方式とは、一つの仮想空
間における論理アドレスの値とTLBのアドレス
が1対1に対応するように設けられているもので
ある。
即ち、仮想アドレス空間が16MBで、ページサ
イズが512Bとすると、1空間当たり2048個のエ
ントリが必要であり、TLBのエントリー数(ア
ドレスの数と一致した値)を2048個とすると、
TLBには1つの空間がマツピング出来るように
構成することが出来、この結果TLBの一つのエ
ントリーは、16個の仮想アドレスで共有すること
が出来るようになる。このようにすると、論理ア
ドレスとTLBのアドレスが1対1に対応できる
のでこれをダイレクトマツピングと呼んでいる。
このようにしてTLBのエントリー数を決定し
ておき、TLB内のデータの構成を以下の通りに
構成する。
即ち図に示すように、格納データの有効/無効
を示すためのインバリツトビツト1と、論理アド
レスのアドレス空間(例えば上記した16個の共有
されたアドレス空間のうちどの空間のアドレスか
を示す。)を示すロジカル部2と、実際に主記憶
をアクセスするために必要な実ページアドレス3
が格納されている。
このようなTLBアドレスを検索の概念を第2
図を使用して説明する。
11,12は論理ページアドレスの例を示すも
のであり、 それぞれのH1,H2の部分は、空間を示すロ
ジカル部のアドレスで、残りのアドレスがTLB
のアドレスとして使用される。
このように論理ページアドレスの下位の複数ビ
ツトを使用してTLBを検索する。
従つて、論理アドレスをTLBのアドレスとし
検索することによつて、上記図示1〜3のデータ
を読出し、自己の論理空間に対する実ページアド
レスかをロジカル部2を比較チエツクすることに
より判定し、自己のものであればその実ページア
ドレス3を使用することになる。
このようにして、TLBをテーブル形式で検索
することにより高速にアドレス変換を可能として
いる。
しかしながら、上述したように全ての空間の論
理アドレスと実アドレスとの関係を格納しておく
ことは物理的に不可能であるので、その一部のみ
がTLB上に格納されている訳であるが、計算機
の処理内容の変更等によつて処理空間が変化した
場合には、このTLBの内容を無効化する必要が
ある。
第3図は従来のTLBのバツフア無効化の方式
を説明するための図である。
図において、11,12は、バツフア無効化す
る範囲を指定するための論理アドレスが設定され
るレジスタ、 15は、レジスタ11と12の全データの一致
の有無を判定するための比較器、16は比較器1
5により不一致出力が出された時レジスタ11の
データを下位より1ビツトずつインクリメントす
るための手段、 17は、レジスタ11に格納された無効化すべ
き空間を示すロジカル部と、TLBのアドレス指
定されたエントリーより読み出されたロジカル部
とを比較する比較器、 14は、TLB上のエントリを無効化するため
のデータを予め固定的に格納したレジスタ、 13は比較器17からの一致出力によりレジス
タ14に格納されたデータをTLBの当該エント
リに書き込むための制御部をそれぞれ示す。
図に示すように、TLBのバツフアの無効化に
当たつては、無効化するための範囲が指定され、
それぞれレジスタ11および12に格納される。
このレジスタ11,12に格納されるデータ
は、上位桁部分がロジカル部で、論理アドレス空
間を示し、下位桁が、TLBのアドレスに対応す
る。
即ち、ダイレクトマツピング方式の場合には例
えば論理空間が16で、TLB内のエントリー数
および1空間内の論理アドレスが採る数が2048の
場合には、上位のアドレス部(4ビツト)が論理
アドレス空間を示すロジカル部でこの場合は0〜
15(16の論理アドレス空間)の値を採り、下位の
アドレス(11ビツト)は論理ページアドレスで、
0〜2047の値を採る。
このような値がセツトされると、11にセツト
された上位および下位のすべてのアドレスがレジ
スタ12にセツトされた値と一致するまでの間比
較器15および+1インクリメント手段16によ
りインクリメントが行われる。
この間、比較器17および制御部13は、比較
器17からの一致出力が得られた場合、その
TLBのエントリを無効化する処理を行う。
このように構成することにより、レジスタ11
および12によつて与えられた論理ページアドレ
スの範囲のTLBの内容を無効化することが出来
る。
(3) 発明が解決しようとする問題点 このように、従来のバツフア無効化方式におい
ては、複数の論理アドレス空間に渡つて無効化し
ようとする場合、即ち第3図における、レジスタ
11および12にセツトされた論理アドレス空間
を示すロジカル部の値が異なると、TLBの全ア
ドレスに対するアクセスが一回では済まず、レジ
スタ11と12のロジカル部の値の相違の数分の
TLBの全アドレスに対するアクセスが必要とな
る。
例えば、レジスタ11のロジカル部が論理空間
1を示し、レジスタ12のロジカル部の論理空間
が4を示している場合、4×2048回(8192回)の
TLBのアクセスが必要となる。
このように従来のバツフア無効化方式において
は、各空間毎に無効化するため、無効化処理が非
常に時間がかかるという欠点があつた。
(4) 問題点を解決するための手段 本発明は上記欠点を解決し、一度のTLBの検
索によりバツフアの無効化を行うように構成する
ことを目的とし、この目的は、ダイレクトマツピ
ング方式の論理ページアドレスを実ページアドレ
スに変換するTLBのバツフア無効化方式であつ
て、2つの論理ページアドレスによつて指定され
た範囲のTLBのエントリを無効化するに当たり、
前記TLBのアドレスを前記2つのページアドレ
スによつて指定される範囲とそれ以外の3つの領
域に分割して指定する手段と、該分割された各部
分において、前記論理ページアドレスにより指定
された無効化すべき仮想空間を決定する手段とを
備え、前記指定手段により指定された、各範囲毎
に前記TLBのアドレスを検索し、該検索した結
果、前記決定手段により決定された仮想空間に係
るTLBエントリであつた場合、当該エントリを
無効化するするように構成した事を特徴とするバ
ツフアの無効化方式により達成される。
(5) 発明の実施例 第4図は、本発明のバツフア無効化の考え方を
示すTLBの分割概念を説明するための図である。
図において、71は無効化指定されたTLB先
頭アドレス(C)、72は無効化指定されたTLB最
終アドレス(D)に+1したアドレスを示す。
この場合のロジカル部(論理空間)の値は図の
通り分解して考えることが出来る。
TLBのアドレス零より71−1まで、71〜
72−1の迄の間、および72のアドレスから
TLB最終のアドレスまでの3つに分類すること
が出来る。
そして無効化指定されたロジカル値がそれぞれ
A、Bとすると、それそれのTLB上のアドレス
範囲において、無効化すべきロジカル値が図に示
す範囲となる。
即ち、 (1) TLBアドレス0〜(C−1)まで、(C=
71) A<ロジカル部≦B (2) TLBアドレス(C)〜Dまで、(D=72−1) A≦ロジカル部≦B (3) TLBアドレス(D1)〜最終まで A≦ロジカル部<B が無効の対象となるロジカル部の値である。
従つて、無効化すべくTLBアドレスアクセス
する場合に、アドレス位置によつて無効化すべき
ロジカル部の値に範囲を持たせて無効化すれば、
TLB全アドレスに対して一度のアクセスで必要
なTLBエントリの無効化が行うことが出来る。
第5図は、本発明のバツフア無効化方式の一実
施例を説明する図である。
図において、20,21は、バツフアの無効化
すべき範囲を示す論理ページアドレスがセツトさ
れるレジスタ、 22は、レジスタ20,21にセツトされたロ
ジカル値を比較し、A=B、A+1=BおよびA
+1<Bの何れに該当するかを出力するための比
較器、 33は、レジスタ20,21にセツトされた
TLBをアクセスするためのアドレス部分の値C、
Dを比較し、比較した結果、C=D+1、C<D
+1の何れかに該当するかを出力するための比較
器、 24は、比較器22,33、およびレジスタ2
0,21の値A、B、C、D、および後述するカ
ウンタ28のカウント終了信号が入力され、 実際にTLBをアクセスするためのアドレスお
よびTLB内のロジカル分Hと比較するための信
号を後述するレジスタ25,26,27にセツト
および指示するための論理回路、 25,26は、TLBのロジカル部Hと比較す
べきデータがセツトされるレジスタ、 27は、TLBをアクセスするためのアドレス
がセツトされるレジスタ、 28はレジスタ27のアドレスをインクリメン
トするための値がセツトされ、レジスタ27の値
がインクリメントされるとカウンタ値がデクリメ
ントされ、カウンタ値が零になつた所で、CEND
(カウント終了信号)が論理回路24に入力して
次のカウント値のセツトを受けるカウンタ、 29,30は、レジスタ25,26にセツトさ
れた値E、Fと、TLBより読出されたロジカル
部Hの値を比較し、E≦H、F>Hの場合に出力
信号する比較器、 31は、前記比較器29,30の比較器出力の
論理積(AND)が入力された時に、前記TLBを
無効化するための制御回路、 32は、TLBを無効化するためのデータがセ
ツトされたレジスタをそれぞれ示す。
尚、論理回路24の詳細については後述する。
次に無効化指示の例を使用しながら、第5図の
動作を説明する。
(1) レジスタ20,21における無効化範囲の指
定においてロジカル部(論理空間)が同一の場
合における無効化処理。
この場合には、レジスタ20,21のロジカ
ル部がA=Bである。
従つて、同一の論理空間内での無効化指定で
あるため、レジスタ20,21で指定された
TLBアドレス部の範囲のみを検索して、同一
のロジカル部(論理空間)を持つたTLBエン
トリのみを無効すれば良い。
従つて、論理回路24は、レジスタ25にレ
ジスタ20のロジカル部の値をそのままセツト
し、 レジスタ26にはレジスタ21のロジカル部
の値に+1した値をセツトする。
一方レジスタ27には、TLBの無効化のた
めのアクセス範囲である、レジスタ20にセツ
トされたTLBをアクセスするための論理アド
レス部がセツトされ、カウンタ28には前記レ
ジスタ20にセツトされたTLBをアクセスす
るための論理アドレス部と前記レジスタ21に
セツトされたTLBをアクセスするための論理
アドレス部との差の値がセツトされる。
この状態で、レジスタ27の値によりTLB
をアクセスし、その結果で比較器29,30に
よりレジスタ25にセツトされた値と、TLB
より読出されたロジカル部Hとの値を比較す
る。
比較器29,30は、上述した条件により比
較結果が得られるので、その結果により一致信
号が制御回路31に伝えられる。
例えば、論理アドレス空間が“1”である場
合には、レジスタ25にセツトされた値Eは
“1”であり、レジスタ26にセツトされた値
Fは“2”であり、論理アドレス空間が、0〜
15であるとすると、比較器29の比較結果の出
力は、E≦Hであるため、1〜15までの値を
TLBのロジカル部Hが採つた場合に出力信号
が得られ、比較器30の比較結果の出力がF>
Hであるので、0〜1までの値をTLBのロジ
カル部Hが採つた場合に出力信号が得られる。
従つてこれら比較器29,30の出力の論理
積(AND)の出力は、TLBのロジカル部H
が、“1”の値を採つた時のみ一致信号が出力
され、制御回路31に入る。
制御回路31は、一致信号が得られた時、そ
のTLBエントリに対してレジスタ32の無効
化データの書込みを行う。
レジスタ27は、先にのべたようにレジスタ
20により指定されたTLBのアドレスよりレ
ジスタ21により指定されたTLBのアドレス
までの範囲をカウンタ28を減算しながら、順
次レジスタ27を+1インクリメントすること
により、指定された範囲のTLBをアクセスす
る。
これにより、TLBの必要範囲のエントリの
無効化を行う。
(2) レジスタ20,21における無効化範囲の指
定においてロジカル部(論理アドレス空間)が
異なる場合における無効化処理。
(A) レジスタ20で指定されたロジカル部Aと
レジスタ21で指定されたロジカル部Bと
が、A+1=Bの場合。(この判断は、論理
回路24において比較器22からの出力によ
り行われる。) この場合は、無効化のために指定されたロ
ジカル部(論理アドレス空間)が連続する場
合であるので、全てのTLBの全てのエント
リについて無効化のために検索する必要があ
る。
そして、TLBのアドレスの範囲と無効化
すべきロジカル部Hの値は、以下の通りとな
る。
レジスタ20および21で指定された
TLBアドレスC,DがC<D+1の場合。
(この判断は、論理回路24において比較
器33からの出力により行われる。即ち、
比較器33からの出力のうちC<D+1の
出力が得られていることにより判断するこ
とが出来る。) ●TLBアドレス0〜C−1までの間は、
無効化すべきエントリはロジカル部Hの
値が“B”のもの。
●TLBアドレスC〜Dまでの間は、無効
化すべきエントリはロジカル部Hの値が
“A”“B”のもの。
●TLBアドレスD+1〜TLBの最終アド
レスまでの間は、無効化すべきエントリ
はロジカル部Hの値が“A”のもの。
レジスタ20および21で指定された
TLBアドレスC,DがC≧D+1の場合。
(この判断は、論理回路24において比較
器33からの出力により行われる。即ち、
比較器33からのいずれの出力も得られな
いか、若しくは、C=D+1の出力が得ら
れていることで判断する事が出来る。) ●TLBアドレス0〜Dまでの間は、無効
化すべきエントリはロジカル部Hの値が
“B”のもの。
●TLBアドレスD+1〜C−1までの間
は、無効化すべきエントリは無し。
●TLBアドレスC〜TLBの最終アドレス
までの間は、無効化すべきエントリはロ
ジカル部Hの値が“A”のもの。
従つて、上記の場合には、 ●TLBアドレス0〜C−1までの間は、
レジスタ25には、“A+1”がセツト
され、レジスタ26には“B+1”がセ
ツトされ、無効化すべきTLBエントリ
の検策が行われ、 ●TLBアドレスC〜Dまでの間は、レジ
スタ25には“A”がセツトされ、レジ
スタ26には“B+1”がセツトされ、
無効化すべきTLBエントリの検索が行
われ、 ●TLBアドレスD+1〜TLBの最終アド
レスまでの間は、レジスタ25には
“A”がセツトされ、レジスタ26には
“B”がセツトされ、無効化すべきTLB
エントリの検索が行われる。
このそれぞれのTLBの検索アドレスは、
上述したようにレジスタ27に初期値とし
て“0”がセツトされ、順次、カウンタに
0〜C−1に対応するインクリメント値を
セツトし、カウンタ28が零となつたこと
をCENDの信号により論理回路が検出する
と、次にC〜Dのカウント値として対応す
るインクリメント値をセツトし、カンウタ
28が零となつたことをCENDの信号によ
り論理回路が検出すると、次にD+1〜
TLBの最終アドレスのカウント値として
に対応するインクリメント値をセツトする
ことにより、TLBの全アドレスを検索す
るようにし、その時のアドレスに対応して
上述したようにレジスタ25,26にセツ
トする。
また、上記の場合には、 ●TLBアドレス0〜Dまでの間は、レジ
スタ25には、“A+1”がセツトされ、
レジスタ26には“B+1”がセツトさ
れ、無効化すべきTLBエントリの検索
が行われ、 ●TLBアドレスD+1〜C−1までの間
は、レジスタ25には“A+1”がセツ
トされ、レジスタ26には“B”がセツ
トされ、無効化すべきTLBエントリの
検索が行われ、 ●TLBアドレスC〜TLBの最終アドレス
までの間は、レジスタ25には“A”が
セツトされ、レジスタ26には“B”が
セツトされ、無効化すべきTLBエント
リの検索が行われる。
このそれぞれのTLBの検索アドレスは、
上述したようにレジスタ27に初期値とし
て“0”がセツトされ、順次、カウンタに
0〜Dに対応するインクリメント値をセツ
トし、カンウタ28が零となつたことを
CENDの信号により論理回路が検出する
と、次にD+1〜C−1のカウント値とし
て対応するインクリメント値をセツトし、
カンウタ28が零となつたことをCENDの
信号により論理回路が検出すると、次にC
〜TLBの最終アドレスのカウント値とし
てに対応するインクリメント値をセツトす
ることにより、TLBの全アドレスを検索
するようにし、その時のアドレスに対応し
て上述したようにレジスタ25,26にセ
ツトする。
(B) レジスタ20で指定されたロジカル部Aと
レジスタ21で指定されたロジカル部Bと
が、A+1<Bの場合。(これは論理回路2
4により比較器22の出力に判定される。) この場合は、無効化のために指定されたロ
ジカル部(論理アドレス空間)の間に複数の
論理アドレス空間が存在する場合であるの
で、全てのTLBの全てのエントリについて
無効化のために検索する必要がある。
そして、TLBのアドレスの範囲と無効化
すべきロジカル部Hの値は、以下の通りとな
る。
レジスタ20および21で指定された
TLBアドレスC,DがC<D+1の場合。
(これは論理回路24により比較器33の
出力により上記と同様に判定される。) ●TLBアドレス0〜C−1までの間は、
無効化すべきエントリはロジカル部Hの
値が“A+1”〜“B”の間のもの。
●TLBアドレスC〜Dまでの間は、無効
化すべきエントリはロジカル部Hの値が
“A”〜“B”のもの。
●TLBアドレスD+1〜TLBの最終アド
レスまでの間は、無効化すべきエントリ
はロジカル部Hの値が“A”〜“B−
1”のもの。
レジスタ20および21で指定された
TLBアドレスC,DがC≧D+1の場合。
(上記と同様に論理回路24によつて比
較器33の出力によつて判定される。) ●TLBアドレス0〜Dまでの間は、無効
化すべきエントリはロジカル部Hの値が
“A+1”〜“B”のもの。
●TLBアドレスD+1〜C−1までの間
は、無効化すべきエントリはロジカル部
Hの値“A+1”〜“B−1”のもの。
●TLBアドレスC〜TLBの最終アドレス
までの間は、無効化すべきエントリはロ
ジカル部Hの値が“A”〜“B−1”の
もの。
従つて、上記の場合には、 ●TLBアドレス0〜C−1までの間は、
レジスタ25には、“A+1”がセツト
され、レジスタ26には“B+1”がセ
ツトされ、無効化すべきTLBエントリ
の検索が行われ、 ●TLBアドレスC〜Dまでの間は、レジ
スタ25には“A”がセツトされ、レジ
スタ26には“B+1”がセツトされ、
無効化すべきTLBエントリの検索が行
われ、 ●TLBアドレスD+1〜TLBの最終アド
レスまでの間は、レジスタ25には
“A”がセツトされ、レジスタ26には
“B”がセツトされ、無効化すべきTLB
エントリの検索が行われる。
このアドレスの設定は、(A)項で上述した
と同様に論理回路24およびカウンタ28
によつて行われる。
また、上記の場合には、 ●TLBアドレス0〜Dまでの間は、レジ
スタ25には、“A+1”がセツトされ、
レジスタ26には“B+1”がセツトさ
れ、無効化すべきTLBエントリの検索
が行われ、 ●TLBアドレスD+1〜C−1までの間
は、レジスタ25には“A+1”がセツ
トされ、レジスタ26には“B”がセツ
トされ、無効化すべきTLBエントリの
検索が行われ、 ●TLBアドレスC〜TLBの最終アドレス
までの間は、レジスタ25には“A”が
セツトされ、レジスタ26には“B”が
セツトされ、無効化すべきTLBエント
リの検索が行われる。
このアドレスの設定は、(A)項で上述した
と同様に論理回路24およびカウンタ28
によつて行われる。
以上のように、本発明におけるTLBの無効化
においては、指定された無効化範囲により決定さ
れる3つの領域に分類し、それぞれに無効化すべ
き論理アドレス空間の範囲を設定することにより 一度のTLBアクセスにより指定されたTLBの
エントリを無効化することが出来る。
次に第6図により第5図における論理回路24
の一実施例を説明するための図である。
図において、使用された記号が第5図と同一の
ものは同一信号を示す。
さらに図において、49は第5図における比較
器22,33、カウンタ28の零信号(CEND)
および、第5図におけるレジスタ21,22にセ
ツトされたTLBの先頭アドレスおよび最終アド
レスが後述するレジスタ54,55が入力され、
後述する各構成部分に選択信号、タイミング信号
53を出力するデコーダ、 53は、第5図におけるレジスタ20,21の
ロジカル部A,Bが入力されるとともに、A,B
の値を+1した信号が入力され、デコーダ49か
らの選択信号53によつて、A、A+1、の何れ
かとB、B+1の何れかを選択出力するマルチプ
レクサ、 50,54は、マルチプレクサ55で選択され
た値がセツトされるとともに、その値を第5図に
おけるレジスタ25,26にセツトするためのレ
ジスタ、 44は、第5図におけるレジスタ21のTLB
アドレス部Dと、該アドレスを+1したD+1が
入力され、デコーダ49の選択信号53によつて
何れかが選択して出力するマルチプレクサ、 45は、第5図におけるレジスタ20のTLB
アドレス部Cと、マルチプレクサ44の出力が入
力され、後述するレジスタ40,41に何れの信
号が何れのレジスタ40,41にセツトするかを
デコーダ49からの選択信号53により切り換え
るための制御回路、 40,41は、制御回路45から出力される信
号がセツトされるレジスタ、 42は、TLBの先頭アドレス(零)がセツト
されるレジスタ、 43は、TLBの最終アドレスがセツトされる
レジスタ、 46は、レジスタ40,41,42の出力信号
の何れか一つをデコーダ49からの選択信号53
により選択するためのマルチプレクサ、 51は、マルチプレクサにより選択されて出力
された値がセツトされ、その出力を第5図におけ
るレジスタ27に送出するためのレジスタ、 47は、レジスタ40,41,42,43の出
力信号のうち何れか2つをデコーダ49からの選
択信号53によつて選択するためのマルチプレク
サ、 48は、マルチプレクサによつて出力された2
つのTLBアドレスの差を計算する演算器ALU、 52は、演算器ALUによる演算結果がセツト
され、第5図における28に出力するレジスタを
それぞれ示す。
第6図の動作を、上述した第5図の説明中のレ
ジスタ20,21における無効化範囲の指定にお
いてロジカル部(論理アドレス空間)が異なる場
合における無効化処理の中で、レジスタ20で指
定されたロジカル部Aとレジスタ21で指定され
たロジカル部Bとが、A+1=Bの関係で、さら
にレジスタ20および21で指定されたTLBア
ドレスC,DがC≧D+1の場合の場合を例にと
つて説明する。
デコーダ49の入力には、 A=Bの信号が“0”、 A+1=Bの信号が“1”、 A+1<Bの信号が“0”、 C=D+1の信号が“1”、 C<D+1の信号が“0”、 CENDの初期値が“0”、 AMiNの初期値が“0”、 AMANの初期値が“0”、 が最初の状態で入力され、各部に選択信号53が
出力される。
まず、マルチプレクサ55においては、デコー
ダ49によつて第5図の比較器22の比較の結
果、A+1=Bの信号が“1”であることから指
定された仮想空間内には他の仮想空間が存在しな
い、即ち連続する2つの仮想空間が指定されたこ
とが判明しており、この時に当初レジスタ25に
は、“A+1”がセツトされ、レジスタ26には
“B+1”がセツトする必要があるため、それぞ
れをプラス1した値が選択され、レジスタ54,
50にセツトされ、その出力が、第5図における
レジスタ25,26にセツトされる。
一方、マルチプレクサ44は、Dの値をそのま
ま選択して出力する。
また制御部45は、デコーダ49への入力信号
のC=D+1の信号が“1”であるため、そのま
まCの値をレジスタ40に、Dの値をレジスタ4
1に入力するようにデコーダ49からの選択信号
53により動作する。
さらにマルチプレクサ46は、デコーダ49へ
の入力がA+1=Bが“1”であるため、TLB
の先頭アドレス(零)から検索を開始する必要が
あるため、レジスタ42がデコーダ49からの選
択信号53により選択する。そしてその出力は、
レジスタ51にセツトされるとともに、第5図の
レジスタ27にセツトされる。
マルチプレクサ47は、最初、TLBの先頭ア
ドレス(零)よりC−1までのアドレス分だけの
カウント値を設定しなければならないため、レジ
スタ40と42をデコーダ49からの選択信号5
3により選択する。そしてその出力は、演算器に
48に入力され、0−(C−1)が行われレジス
タ52にセツトされる。
レジスタ52の値は、カウンタ28にセツトさ
れる。
このようにレジスタ54,50,51,52に
セツトされた値が、第5図にレジスタ25,2
6,27にセツトされるとともにカウンタ28に
セツトされカンウタよりCEND信号が出力される
までの間動作する。
CEND信号が、デコーダ49に入力されるとデ
コーダは、さらに選択信号53の内容を変更す
る。
即ち、次に検索が必要な値をレジスタ54,5
0,52にセツトするため、まずマルチプレクサ
55には、“A”と“B+1”を選択するように
選択信号が出力され、マルチプレクサ47にはレ
ジスタ40,41の値を選択出力するように制御
信号を出力する。
そして、演算器48においては(C−D)の演
算が行われる。
その結果、レジスタ54,50には、それぞれ
“A”と“B+1”がセツトされ、レジスタ52
には(C−D)の値がセツトされる。
従つて、TLBアドレスC〜Dまでの間は、レ
ジスタ25には“A”がセツトされ、レジスタ2
6には“B+1”がセツトされ、無効化すべき
TLBエントリの検索が行われる。
さらにCEND信号が、デコーダ49に入力され
るとデコーダは、さらに選択信号53の内容を変
更する。
として、さらに次に検索が必要な値をレジスタ
54,50,52にセツトするため、まずマルチ
プレクサ55には、“A”と“B”を選択するよ
うに選択信号が出力され、マルチプレクサ44に
おいてD+1が選択され、制御回路45によつて
それぞれのデータがレジスタ40,41にセツト
されるとともに、マルチプレクサ47にはレジス
タ41,43の値を選択出力するように制御信号
を出力する。
そして、演算器48においては〔(D+1)−
TLBの最終アドレス〕の演算が行われる。
その結果、レジスタ54,50には、それぞれ
“A”と“B”がセツトされ、レジスタ52には
〔(D+1)−〜TLBの最終アドレス〕の値がセツ
トされる。
従つて、TLBアドレスD+1〜TLBの最終ア
ドレスまでの間は、レジスタ25には“A”がセ
ツトされ、レジスタ26には“B”がセツトさ
れ、無効化すべきTLBエントリの検索が行われ
る。
このようにして、論理回路24が第5図で説明
したように動作する。
(6) 発明の効果 以上説明したように、本発明によれば、TLB
のアクセスは、最大でTLBのエントリ数だけで
よく、大きい範囲の論理ページアドレスに対応す
るTLBを無効化する場合特に、従来方式に比べ
て高速に処理が出来るという効果がある。
【図面の簡単な説明】
第1図は一般的なダイレクトマツピング方式の
TLBバツフアの構成を示す。第2図は、TLBア
ドレスノ検索の概念を示す図である。第3図は従
来のTLBのバツフア無効化の方式を説明するた
めの図である。第4図は、本発明のバツフア無効
化の考え方を示すTLBの分割概念を説明するた
めの図である。第5図は、本発明のバツフア無効
化方式の一実施例を説明する図である。第6図
は、第5図における論理回路24の一実施例を説
明するための図である。 さらに図において、20,21はバツフアの無
効化すべき範囲を示す論理ページアドレスがセツ
トされるレジスタ、22,33は比較器、24は
論理回路、25,26,27はレジスタ、28は
カウンタ、29,30は比較器、31は前記
TLBを無効化するための制御回路、32はTLB
を無効化するためのデータがセツトされたレジス
タをそれぞれ示す。

Claims (1)

  1. 【特許請求の範囲】 1 ダイレクトマツピング方式の論理ページアド
    レスを実ページアドレスに変換するTLBのバツ
    フア無効化方式であつて、 2つの論理ページアドレスによつて指定された
    範囲のTLBのエントリを無効化するに当たり、
    前記TLBのアドレスを前記2つのページアドレ
    スによつて指定される範囲とそれ以外の3つの領
    域に分割して指定する手段と、 該分割された各部分において、前記論理ページ
    アドレスにより指定された無効化すべき仮想空間
    を決定する手段とを備え、 前記指定手段により指定された、各範囲毎に前
    記TLBのアドレスを検索し、該検索した結果、
    前記決定手段により決定された仮想空間に係る
    TLBエントリであつた場合、当該エントリを無
    効化するするように構成した事を特徴とするバツ
    フアの無効化方式。
JP57023322A 1982-02-16 1982-02-16 バツフア無効化方式 Granted JPS58141487A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP57023322A JPS58141487A (ja) 1982-02-16 1982-02-16 バツフア無効化方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP57023322A JPS58141487A (ja) 1982-02-16 1982-02-16 バツフア無効化方式

Publications (2)

Publication Number Publication Date
JPS58141487A JPS58141487A (ja) 1983-08-22
JPS6349258B2 true JPS6349258B2 (ja) 1988-10-04

Family

ID=12107347

Family Applications (1)

Application Number Title Priority Date Filing Date
JP57023322A Granted JPS58141487A (ja) 1982-02-16 1982-02-16 バツフア無効化方式

Country Status (1)

Country Link
JP (1) JPS58141487A (ja)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5562576A (en) * 1978-10-30 1980-05-12 Hitachi Ltd Information processing unit with address conversion function

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5562576A (en) * 1978-10-30 1980-05-12 Hitachi Ltd Information processing unit with address conversion function

Also Published As

Publication number Publication date
JPS58141487A (ja) 1983-08-22

Similar Documents

Publication Publication Date Title
JP3740195B2 (ja) データ処理装置
US5265227A (en) Parallel protection checking in an address translation look-aside buffer
CA1283218C (en) Variable address mode cache
KR920005280B1 (ko) 고속 캐쉬 시스템
US4602368A (en) Dual validity bit arrays
US4136385A (en) Synonym control means for multiple virtual storage systems
US4096573A (en) DLAT Synonym control means for common portions of all address spaces
EP0327798A2 (en) Control method and apparatus for zero-origin data spaces
US4731740A (en) Translation lookaside buffer control system in computer or virtual memory control scheme
JP2001034537A (ja) アドレス変換回路
EP0439325B1 (en) Cache coherence in logical caches
JPH0550776B2 (ja)
KR100321107B1 (ko) 데이타 프로세싱 시스템 내의 캐쉬 메모리를 억세싱하기 위한 방법 및 시스템
JPH07281948A (ja) メモリ制御装置
JP3190700B2 (ja) アドレス変換装置
JP2007280421A (ja) データ処理装置
JPH03235144A (ja) キャッシュメモリ制御装置
JPS6349258B2 (ja)
US6327646B1 (en) Translation look-aside buffer utilizing high-order bits for fast access
US6161164A (en) Content addressable memory accessed by the sum of two operands
JP3447588B2 (ja) メモリ管理装置、方法及びプログラムを記憶した記憶媒体
JP2005108262A (ja) データ処理装置
JP2504500B2 (ja) アドレス変換装置
JP2507785B2 (ja) ペ―ジテ―ブルエントリ無効化装置
JPS5821352B2 (ja) バツフア・メモリ制御方式