JPH0245847A - 仮想アドレスキャッシュ制御装置 - Google Patents
仮想アドレスキャッシュ制御装置Info
- Publication number
- JPH0245847A JPH0245847A JP63196472A JP19647288A JPH0245847A JP H0245847 A JPH0245847 A JP H0245847A JP 63196472 A JP63196472 A JP 63196472A JP 19647288 A JP19647288 A JP 19647288A JP H0245847 A JPH0245847 A JP H0245847A
- Authority
- JP
- Japan
- Prior art keywords
- address
- memory
- cache
- virtual
- contents
- 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
Links
- 230000015654 memory Effects 0.000 claims abstract description 93
- 238000013519 translation Methods 0.000 claims description 18
- 238000006243 chemical reaction Methods 0.000 claims description 9
- 238000012545 processing Methods 0.000 abstract description 11
- 238000000034 method Methods 0.000 description 29
- 238000007726 management method Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 5
- 125000001246 bromo group Chemical group Br* 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000004044 response Effects 0.000 description 2
- 102100030551 Protein MEMO1 Human genes 0.000 description 1
- 101710176845 Protein MEMO1 Proteins 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【発明の詳細な説明】
産業上の利用分野
本発明は、仮想アドレスで索引されるアドレス変換バッ
ファあるいはキャッシュメモリの制御方式に関し、特に
、マルチプロセッサにおける記憶の一貫性管理のための
仮想アドレスキャッシュ装置の無効化方式に関する。
ファあるいはキャッシュメモリの制御方式に関し、特に
、マルチプロセッサにおける記憶の一貫性管理のための
仮想アドレスキャッシュ装置の無効化方式に関する。
従来の技術
仮想アドレスから実アドレスへ変換するためのアドレス
変換バッファ(TLB)あるいは、主記憶のコピーを持
つキャッシュメモリにおいて、マルチプロセッサ構成を
採る場合の記憶内容の一貫性管理は不可欠な問題である
。
変換バッファ(TLB)あるいは、主記憶のコピーを持
つキャッシュメモリにおいて、マルチプロセッサ構成を
採る場合の記憶内容の一貫性管理は不可欠な問題である
。
例えば、成るプロセッサによって、主記憶の内容、もし
くは、仮想記憶管理テーブルの内容が更新された場合、
それ以外のプロセッサでは、その変更内容によりTLB
あるいはキャッシュメモリの内容を書換えるか、または
無効化する必要がある。これを、TLB/キャッシュの
一致処理という。
くは、仮想記憶管理テーブルの内容が更新された場合、
それ以外のプロセッサでは、その変更内容によりTLB
あるいはキャッシュメモリの内容を書換えるか、または
無効化する必要がある。これを、TLB/キャッシュの
一致処理という。
従来の計算機技術では、仮想アドレスから実アドレスへ
変換するためのアドレス変換ノ<ソファ(TLB)にお
ける一致処理は、次に示す手順で実行されている。
変換するためのアドレス変換ノ<ソファ(TLB)にお
ける一致処理は、次に示す手順で実行されている。
■ あるプロセッサ(以下変更プロセッサと称する)に
よって仮想記憶管理テーブルの内容が更新されると、そ
の更新された結果の実アドレスが、他のプロセッサ(以
下被変更ブロモ・ソサと称する)に通知される。
よって仮想記憶管理テーブルの内容が更新されると、そ
の更新された結果の実アドレスが、他のプロセッサ(以
下被変更ブロモ・ソサと称する)に通知される。
■ 被変更プロセッサでは、変更ブロモ・ノサから通知
された実アドレスから、仮想/実アドレス対において、
実アドレスから仮想アドレスを引く、いわゆる逆アドレ
ス変換を実行し、求められた仮想アドレスから、対応す
るTLBエントリをクリアする。
された実アドレスから、仮想/実アドレス対において、
実アドレスから仮想アドレスを引く、いわゆる逆アドレ
ス変換を実行し、求められた仮想アドレスから、対応す
るTLBエントリをクリアする。
この方式を実現するためには、プロセッサ間で、アドレ
ス空間を変更したときに、その変換結果としての実アド
レスを通知するプロセッサ間通信機構が必要となる。
ス空間を変更したときに、その変換結果としての実アド
レスを通知するプロセッサ間通信機構が必要となる。
また、主記憶データを保持するキャッシュメモリの一致
処理では、次の手順で実行されている。
処理では、次の手順で実行されている。
■ あるプロセッサ(以下変更プロセッサと称する)に
よって主記憶の内容が更新される際に、その更新される
主記憶の実アドレスが、他のプロセッサ(以下被変更プ
ロセッサと称する)に通知される。
よって主記憶の内容が更新される際に、その更新される
主記憶の実アドレスが、他のプロセッサ(以下被変更プ
ロセッサと称する)に通知される。
■ 被変更プロセッサでは、変更プロセッサから通知さ
れた実アドレスでキャッシュメモリを検索し、対応する
キャッシュエントリをクリアする。
れた実アドレスでキャッシュメモリを検索し、対応する
キャッシュエントリをクリアする。
この方式を実現するためには、プロセッサ間で、主記憶
を変更するメモリライトアクセスの際に、その実アドレ
スをモニタするプロセッサ間通信機構、及ヒ、キャッシ
ュ内部の実アドレスメモリを、主記憶アクセスの監視用
に用いることができるようなメモリ構成あるいはタイミ
ング生成機構が必要となる。
を変更するメモリライトアクセスの際に、その実アドレ
スをモニタするプロセッサ間通信機構、及ヒ、キャッシ
ュ内部の実アドレスメモリを、主記憶アクセスの監視用
に用いることができるようなメモリ構成あるいはタイミ
ング生成機構が必要となる。
このように、従来のTLBとキャッシュの一致処理は、
実行方式上の親和性が少なく、その実現は分離され、か
つ、多くのハードウェアコストを必要としていた。その
背景には、TLBとキャッシュメモリとを分離し、独立
した機構で実現するというハードウェアの構成方式を採
るのが一般的であった(実アドレスによるキャッシュメ
モリの索引法)という事実があるといえる。
実行方式上の親和性が少なく、その実現は分離され、か
つ、多くのハードウェアコストを必要としていた。その
背景には、TLBとキャッシュメモリとを分離し、独立
した機構で実現するというハードウェアの構成方式を採
るのが一般的であった(実アドレスによるキャッシュメ
モリの索引法)という事実があるといえる。
発明が解決しようとしている課題
TLB/キャッシュを分離して実現するためには、TL
Bとキャッシュの両方に実アドレスメモリを置く必要が
あり、ハードウェア・コストが大きくなる。さらに、マ
ルチプロセッサのサポートのために、TLBとキャッシ
ュの両方に対して一致処理を行うことになると、両者の
実アドレスメモリに対して一致処理のためのノ1−ドウ
エアが必要となり、さらにハードウェア・コストが増大
する欠点がある。
Bとキャッシュの両方に実アドレスメモリを置く必要が
あり、ハードウェア・コストが大きくなる。さらに、マ
ルチプロセッサのサポートのために、TLBとキャッシ
ュの両方に対して一致処理を行うことになると、両者の
実アドレスメモリに対して一致処理のためのノ1−ドウ
エアが必要となり、さらにハードウェア・コストが増大
する欠点がある。
そこで、本発明は、マルチプロセッサ構成に必要な記憶
の一貫性処理を、少ないハードウェアで高速に実行でき
る仮想アドレスキャッシュ制御装置を提供せんとするも
のである。
の一貫性処理を、少ないハードウェアで高速に実行でき
る仮想アドレスキャッシュ制御装置を提供せんとするも
のである。
課題を解決するための手段
仮想アドレスによってキャッシュメモリを索弓する本発
明によるキャッシュメモリ制御装置は、キャッシュデー
タメモリに存在するデータブロックを指示する仮想アド
レスを保持する仮想アドレスメモリ手段と、仮想記憶管
理に用いられるアドレス変換テーブルを指示する実アド
レスを保持する1以上の変換テーブルエントリアドレス
メモリ手段と、前記アドレス変換テーブルを索引した結
果得られるデータを保持するデータメモリ手段と、前記
各メモリ手段のワード毎に対応する有効ビットを保持す
る有効ビットアレイ手段と、外部アドレスを入力するた
めの手段と、前記変換テーブルエントリアドレスメモリ
手段の内容と前記外部アドレスとを比較するためのアド
レス比較手段とを具備し、前記外部アドレスの入力が通
知されると、前記アドレス比較手段が前記有効ビットア
レイ手段の対応する部分をクリアすることを特徴とする
。
明によるキャッシュメモリ制御装置は、キャッシュデー
タメモリに存在するデータブロックを指示する仮想アド
レスを保持する仮想アドレスメモリ手段と、仮想記憶管
理に用いられるアドレス変換テーブルを指示する実アド
レスを保持する1以上の変換テーブルエントリアドレス
メモリ手段と、前記アドレス変換テーブルを索引した結
果得られるデータを保持するデータメモリ手段と、前記
各メモリ手段のワード毎に対応する有効ビットを保持す
る有効ビットアレイ手段と、外部アドレスを入力するた
めの手段と、前記変換テーブルエントリアドレスメモリ
手段の内容と前記外部アドレスとを比較するためのアド
レス比較手段とを具備し、前記外部アドレスの入力が通
知されると、前記アドレス比較手段が前記有効ビットア
レイ手段の対応する部分をクリアすることを特徴とする
。
さらに、可能であれば、前記アドレス変換テーブルを検
索した結果得られる実アドレスを保持すル実アドレスメ
モリ手段と、前記実アドレスメモリ手段の内容と前記外
部アドレスとを比較するための第2のアドレス比較手段
とを有し、前記外部アドレスの入力が通知されると、前
記アドレス比較手段及び第2のアドレス比較手段が、同
時に前記有効ビットアレイ手段の対応する部分をクリア
するように構成する。
索した結果得られる実アドレスを保持すル実アドレスメ
モリ手段と、前記実アドレスメモリ手段の内容と前記外
部アドレスとを比較するための第2のアドレス比較手段
とを有し、前記外部アドレスの入力が通知されると、前
記アドレス比較手段及び第2のアドレス比較手段が、同
時に前記有効ビットアレイ手段の対応する部分をクリア
するように構成する。
作用
本発明による仮想アドレスキャッシュ制御装置は、仮想
記憶管理に用いられるテーブル(例えばヘーシテーブル
)のうち、その仮想アドレスを変換するのに用いられた
エントリを指すアドレス(これをテーブルエントリアド
レス略してTEAという)を持つテーブルを持つことに
よって、実アドレスから仮想アドレスを引(、いわゆる
逆アドレス変換を実行することなく、高速に対応するT
LBエントリをクリアすることができる。
記憶管理に用いられるテーブル(例えばヘーシテーブル
)のうち、その仮想アドレスを変換するのに用いられた
エントリを指すアドレス(これをテーブルエントリアド
レス略してTEAという)を持つテーブルを持つことに
よって、実アドレスから仮想アドレスを引(、いわゆる
逆アドレス変換を実行することなく、高速に対応するT
LBエントリをクリアすることができる。
更に、このようにテーブルエントリアドレステーブルを
使用する方式は、従来のキャッシュメモリの一致処理方
式と親和性がある。そのため、仮想アドレスでキャッシ
ュデータを直接検索する仮想アドレスキャッシュの実現
の際に、TLBエントリをクリアと、キャッシュデータ
の無効化とを同時に実行できる。
使用する方式は、従来のキャッシュメモリの一致処理方
式と親和性がある。そのため、仮想アドレスでキャッシ
ュデータを直接検索する仮想アドレスキャッシュの実現
の際に、TLBエントリをクリアと、キャッシュデータ
の無効化とを同時に実行できる。
従って、キャッシュエントリを無効化に必要なハードウ
ェアコストを、従来のTLB/実アドレスキャッシュ別
構成式に比べて大幅に減少させることができる。
ェアコストを、従来のTLB/実アドレスキャッシュ別
構成式に比べて大幅に減少させることができる。
次に本発明の実施例を添付図面を参照して説明する。
実施例1
第1図は本発明の一実施例のブロック図である。
図示の実施例は、アドレス変換機構の部分を実現した例
であり、従って、一般の主記憶データを保持するキャッ
シュメモリ部分は、これに含まれない。
であり、従って、一般の主記憶データを保持するキャッ
シュメモリ部分は、これに含まれない。
第1図に示す仮想アドレスキャッシュ制御装置は、変換
される仮想アドレスを保持する仮想アドレスレジスタ1
01を具備しており、その仮想アドレスレジスタ101
は、その下位部分が、アドレスデコーダ110に接続さ
れ、上位部分が比較器113の一方の入力の一部に接続
されている。デコーダ110の出力は、仮想アドレスメ
モリ103、プロセス識別番号メモリ104および有効
ビットアレイ105に接続され、それらの行を選択する
ようになされている。仮想アドレスメモリ103及びプ
ロセス識別番号メモリ104の選択された行から読み出
された内容は、比較器113の他方の入力に送られる。
される仮想アドレスを保持する仮想アドレスレジスタ1
01を具備しており、その仮想アドレスレジスタ101
は、その下位部分が、アドレスデコーダ110に接続さ
れ、上位部分が比較器113の一方の入力の一部に接続
されている。デコーダ110の出力は、仮想アドレスメ
モリ103、プロセス識別番号メモリ104および有効
ビットアレイ105に接続され、それらの行を選択する
ようになされている。仮想アドレスメモリ103及びプ
ロセス識別番号メモリ104の選択された行から読み出
された内容は、比較器113の他方の入力に送られる。
その比較器113の一方の入力には、プロセス識別レジ
スタ112が更に接続され、そして、比較器113は、
有効ビットアレイ105の選択された行から読み出され
た内容に従って制御される。その比較器113の出力信
号152は、実アドレスメモリ114の出力キャッシュ
メモリへの引き渡しを制御する。
スタ112が更に接続され、そして、比較器113は、
有効ビットアレイ105の選択された行から読み出され
た内容に従って制御される。その比較器113の出力信
号152は、実アドレスメモリ114の出力キャッシュ
メモリへの引き渡しを制御する。
更に、検索するバスモニタ実アドレスを保持するバスモ
ニタ実アドレスレジスタ102が設けられている。その
レジスタ102の下位部分は、アドレスデコーダ111
に入力され、そのデコーダの出力は、エリアテーブル
エントリアドレスメモリ106、ページテーブルエント
リアドレスメモリ107及び有効ビットアレイ105に
接続され、エリアテーブルエントリアドレスメモリ10
6及びページテーブルエントリアドレスメモリ107の
選択された行の内容が比較器108及び109の一方の
入力に接続されている。それら比較器108及び109
の他方の入力は、バスモニタ実アドレスレジスタ102
の上位部分が接続され、それら比較器108及び109
の出力は、有効ビットアレイ105を制御する。
ニタ実アドレスレジスタ102が設けられている。その
レジスタ102の下位部分は、アドレスデコーダ111
に入力され、そのデコーダの出力は、エリアテーブル
エントリアドレスメモリ106、ページテーブルエント
リアドレスメモリ107及び有効ビットアレイ105に
接続され、エリアテーブルエントリアドレスメモリ10
6及びページテーブルエントリアドレスメモリ107の
選択された行の内容が比較器108及び109の一方の
入力に接続されている。それら比較器108及び109
の他方の入力は、バスモニタ実アドレスレジスタ102
の上位部分が接続され、それら比較器108及び109
の出力は、有効ビットアレイ105を制御する。
なお、本実施例がセットアソシアティブ方式などの連想
方式となるときには、メモリ103−107は、各連想
単位毎に1つずつ存在してよい。以下の議論はそのよう
な拡張をした場合でも成立することは自明である。
方式となるときには、メモリ103−107は、各連想
単位毎に1つずつ存在してよい。以下の議論はそのよう
な拡張をした場合でも成立することは自明である。
本実施例のアドレス変換シーケンスを第1図に基づいて
説明する。変換される仮想アドレスが仮想アドレスレジ
スタ101 にラッチされると、その下位部分は、デコ
ーダ110を通じて各メモリ103.104.105の
1つの行を選択するのに用いられる。
説明する。変換される仮想アドレスが仮想アドレスレジ
スタ101 にラッチされると、その下位部分は、デコ
ーダ110を通じて各メモリ103.104.105の
1つの行を選択するのに用いられる。
メモリ103には、仮想アドレスレジスタ101の上位
部分に相当するフィールドが保持されており、デコーダ
103の出力に従った内容が読み出されると、仮想アド
レスレジスタ101の上位部分と、比較器113で比較
される。
部分に相当するフィールドが保持されており、デコーダ
103の出力に従った内容が読み出されると、仮想アド
レスレジスタ101の上位部分と、比較器113で比較
される。
また、メモリ104にはメモリ103に入っている仮想
アドレスを指定するプロセス識別番号が保持されてふり
、デコーダ110の出力に従った内容が読み出されると
、プロセス識別レジスタ112の内容と比較器113で
比較される。
アドレスを指定するプロセス識別番号が保持されてふり
、デコーダ110の出力に従った内容が読み出されると
、プロセス識別レジスタ112の内容と比較器113で
比較される。
メモリ105には、読み出された行が有効か否かを示す
情報が保持されており、デコーダ103の出力に従った
内容が読み出されると比較器113に通知される。
情報が保持されており、デコーダ103の出力に従った
内容が読み出されると比較器113に通知される。
比較器113は、アドレスとプロセスの両者カー致し、
且つ、その行が有効であるとき、ヒツト信号152を出
す。実アドレスメモリ114は、図示されない仮想アド
レスレジスタの下位部分によって指定された行が読み出
されており、ヒツト信号152を契機として初めてキャ
ッシュメモリにそのデータを引き渡す。
且つ、その行が有効であるとき、ヒツト信号152を出
す。実アドレスメモリ114は、図示されない仮想アド
レスレジスタの下位部分によって指定された行が読み出
されており、ヒツト信号152を契機として初めてキャ
ッシュメモリにそのデータを引き渡す。
ヒツト信号152がアクティブにならない場合は、リプ
レース処理、すなわちメモ’J130−107の入れか
えが実行される。特に、仮想アドレス103には新しい
仮想アドレスが登録され、プロセス識別番号メモリ10
4には新しいプロセス識別番号が登録され、エリアテー
ブルエントリアドレスメモリ106には変換途中で得ら
れるエリアテーブルエントリの゛アドレスが登録され、
ページテーブルエントリアドレスメモリ107には変換
途中で得られるページテーブルエントリのアドレスが登
録され、その終了と共に有効ビットアレイ105の入れ
かえ行部分がセットされる。
レース処理、すなわちメモ’J130−107の入れか
えが実行される。特に、仮想アドレス103には新しい
仮想アドレスが登録され、プロセス識別番号メモリ10
4には新しいプロセス識別番号が登録され、エリアテー
ブルエントリアドレスメモリ106には変換途中で得ら
れるエリアテーブルエントリの゛アドレスが登録され、
ページテーブルエントリアドレスメモリ107には変換
途中で得られるページテーブルエントリのアドレスが登
録され、その終了と共に有効ビットアレイ105の入れ
かえ行部分がセットされる。
次に、一致処理に対する処理シーケンスを説明する。な
お、ここで扱われる仮想記憶方式は、第2図に示すよう
な2レベルページングであるとする。
お、ここで扱われる仮想記憶方式は、第2図に示すよう
な2レベルページングであるとする。
検索するバスモニタ実アドレス(主記憶アクセスのため
の実アドレス)がバスモニタ実アドレスレジスタ102
にラッチされると、その下位部分は、デコーダ111を
通じてメモ!J 106.107の1つの行を選択する
のに用いられる。メモ!J 106には、第2図の第1
回目のテーブル検索時のアドレスであるエリアテーブル
エントリアドレスが保持され、メモリ107には、第2
図の第2回目のテーブル検索時のアドレスであるページ
テーブルエントリアドレスが保持される。エリアテーブ
ルエントリ、ページテーブルエントリのいずれが書きが
えられても、キャッシュの内容は無効化される必要があ
る。よって、バスモニタ実アドレスレジスタ102の内
容は、その全ての書きかえに対する可能性をチエツクす
るため、比較器108.109により、メ% IJ 1
06.107の内容とバスモニタ実アドレスレジスタ1
02の上位部分とを同時に比較する。1っでも一致する
という結果が得られれば、それは有効ヒツトアレイ10
5に伝えられ、有効ビットアレイ105の入れかえ行部
分がクリアされ、対応する行が無効化される。
の実アドレス)がバスモニタ実アドレスレジスタ102
にラッチされると、その下位部分は、デコーダ111を
通じてメモ!J 106.107の1つの行を選択する
のに用いられる。メモ!J 106には、第2図の第1
回目のテーブル検索時のアドレスであるエリアテーブル
エントリアドレスが保持され、メモリ107には、第2
図の第2回目のテーブル検索時のアドレスであるページ
テーブルエントリアドレスが保持される。エリアテーブ
ルエントリ、ページテーブルエントリのいずれが書きが
えられても、キャッシュの内容は無効化される必要があ
る。よって、バスモニタ実アドレスレジスタ102の内
容は、その全ての書きかえに対する可能性をチエツクす
るため、比較器108.109により、メ% IJ 1
06.107の内容とバスモニタ実アドレスレジスタ1
02の上位部分とを同時に比較する。1っでも一致する
という結果が得られれば、それは有効ヒツトアレイ10
5に伝えられ、有効ビットアレイ105の入れかえ行部
分がクリアされ、対応する行が無効化される。
実施例2
第3図は、本発明の第2の実施例のブロック図である。
第2の実施例は、TLBとキャッシュを同時に1つのハ
ードウェア・ブロックで扱うような仮想アドレスキャッ
シュである点で、第1の実施例とは異なっている。なお
、第1図に示す各要素と同一の要素には、同一の参照番
号を付して説明を省略する。第1図と第3図との比較か
られかるように、第3図に示す実施例は、デコーダ11
1により行が選択される実アドレスメモリ123 と、
その実アドレスメモリ123の選択された行の内容とバ
スモニタ実アドレスレジスタ102の上位部分の内容と
を比較する比較器122と、キャッシュデータメモリ1
24とを更に具備している。
ードウェア・ブロックで扱うような仮想アドレスキャッ
シュである点で、第1の実施例とは異なっている。なお
、第1図に示す各要素と同一の要素には、同一の参照番
号を付して説明を省略する。第1図と第3図との比較か
られかるように、第3図に示す実施例は、デコーダ11
1により行が選択される実アドレスメモリ123 と、
その実アドレスメモリ123の選択された行の内容とバ
スモニタ実アドレスレジスタ102の上位部分の内容と
を比較する比較器122と、キャッシュデータメモリ1
24とを更に具備している。
本実施例のキャッシュ索引シーケンスを第1図に基づい
て説明する。交換される仮想アドレスが仮想アドレスレ
ジスタ101 にラッチされると、その下位部分は、デ
コーダ110を通じて各メモ’J 103.104.1
05の1つの行を選択するのに用いられる。
て説明する。交換される仮想アドレスが仮想アドレスレ
ジスタ101 にラッチされると、その下位部分は、デ
コーダ110を通じて各メモ’J 103.104.1
05の1つの行を選択するのに用いられる。
メモリ103.104.105の内容とレジスタ101
の比較器113による比較については第1の実施例と同
様である。
の比較器113による比較については第1の実施例と同
様である。
比較器113は、アドレスとプロセスの両者が一致し、
且つ、その行が有効であるとき、ヒ・ソト信号152を
出す。キャッシュメモリデータ124は、図示されない
仮想アドレスレジスタの下位部分によって指定された行
が読み出されており、ヒ・ント信号152を契機として
初めてデータ要求元にそのデータを引き渡す。
且つ、その行が有効であるとき、ヒ・ソト信号152を
出す。キャッシュメモリデータ124は、図示されない
仮想アドレスレジスタの下位部分によって指定された行
が読み出されており、ヒ・ント信号152を契機として
初めてデータ要求元にそのデータを引き渡す。
ヒツト信号152がアクティブにならない場合は、リプ
レース処理、すなわちメモIJ 103−107の入れ
かえが実行される。特に、仮想メモリ103には新しい
仮想アドレスが登録され、プロセス識別番号メモ1J1
04には新しいプロセス識別番号が登録され、エリアテ
ーブルエントリアドレスメモ1川06には変換途中で得
られるエリアテーブルエントリのアドレスが登録され、
ページテーブルエントリアドレスメモリ107には変換
途中で得られるページテーブルエントリのアドレスが登
録され、その終了と共に有効ビットアレイ105の入れ
かえ行部分がセットされる。
レース処理、すなわちメモIJ 103−107の入れ
かえが実行される。特に、仮想メモリ103には新しい
仮想アドレスが登録され、プロセス識別番号メモ1J1
04には新しいプロセス識別番号が登録され、エリアテ
ーブルエントリアドレスメモ1川06には変換途中で得
られるエリアテーブルエントリのアドレスが登録され、
ページテーブルエントリアドレスメモリ107には変換
途中で得られるページテーブルエントリのアドレスが登
録され、その終了と共に有効ビットアレイ105の入れ
かえ行部分がセットされる。
次に、一致処理に対する処理シーケンスを説明する。な
お、ここで扱われる仮想記憶方式も、第2図に示すよう
な2レベルページングであるとする。
お、ここで扱われる仮想記憶方式も、第2図に示すよう
な2レベルページングであるとする。
検索するバスモニタ実アドレス(主記憶アクセスのため
の実アドレス)がバスモニタ実アドレスレジスタ102
にランチされると、その下位部分は、デコーダ111を
通じてメモリ106.107.123の1つの行を選択
するのに用いられる。メモリ106、メモリ107に保
持される内容は第1の実施例の場合と同様である。メモ
リ123には、アドレス変換の最終結果である実アドレ
スが保持される。
の実アドレス)がバスモニタ実アドレスレジスタ102
にランチされると、その下位部分は、デコーダ111を
通じてメモリ106.107.123の1つの行を選択
するのに用いられる。メモリ106、メモリ107に保
持される内容は第1の実施例の場合と同様である。メモ
リ123には、アドレス変換の最終結果である実アドレ
スが保持される。
エリアテーブルエントリ、ページテーブルエントリ、ペ
ージ内主記憶データのいずれが書きかえられでもキャン
シュの内容は無効化される必要がある。よって、バスモ
ニタ実アドレスレジスタ102の内容は、その全ての書
きかえに対する可能性をチエツクするため、比較器10
8.109.122を用いて、メモリ106.107.
123の内容を同時に102の上位部分と比較する。1
つでも一致するという結果が得られれば、それは有効ビ
ットアレイ105に伝えられ、有効ビット105の入れ
かえ行部分がクリアされ、対応する行が無効化される。
ージ内主記憶データのいずれが書きかえられでもキャン
シュの内容は無効化される必要がある。よって、バスモ
ニタ実アドレスレジスタ102の内容は、その全ての書
きかえに対する可能性をチエツクするため、比較器10
8.109.122を用いて、メモリ106.107.
123の内容を同時に102の上位部分と比較する。1
つでも一致するという結果が得られれば、それは有効ビ
ットアレイ105に伝えられ、有効ビット105の入れ
かえ行部分がクリアされ、対応する行が無効化される。
発明の詳細
な説明したように、本発明は仮想記憶管理に用いられる
テーブルのエントリアドレスを全てキャッシュ内に持つ
ことにより、マルチプロセッサ構成に必要な主記憶の一
貫性処理を、高速に実行できるという効果がある。特に
、従来の計算機において行われているような、実アドレ
スから仮想アドレスを引く、いわゆる逆アドレス変換を
実行することなく、高速に対応するTLBエントリをク
リアすることができるという効果がある。
テーブルのエントリアドレスを全てキャッシュ内に持つ
ことにより、マルチプロセッサ構成に必要な主記憶の一
貫性処理を、高速に実行できるという効果がある。特に
、従来の計算機において行われているような、実アドレ
スから仮想アドレスを引く、いわゆる逆アドレス変換を
実行することなく、高速に対応するTLBエントリをク
リアすることができるという効果がある。
さらに、仮想アドレスでキャッシュデータを直接検索す
る仮想アドレスキャッシュの実現の際に、TLBの無効
化と、キャッシュデータの無効化を同時に実行でき、キ
ャッシュエントリを無効化に必要なハードウェアコスト
を、従来のTLB/実アドレスキャッシュ別構成方式に
比べて大幅に減少させることができるという効果がある
。
る仮想アドレスキャッシュの実現の際に、TLBの無効
化と、キャッシュデータの無効化を同時に実行でき、キ
ャッシュエントリを無効化に必要なハードウェアコスト
を、従来のTLB/実アドレスキャッシュ別構成方式に
比べて大幅に減少させることができるという効果がある
。
第1図は、本発明による仮想アドレスキャッシュ制御装
置の第1の実施例のブロック図、第2図は、第1図で仮
定される仮想記憶管理方式のアドレス変換の流れを図解
する図、第3図は、本発明による仮想アドレスキャッシ
ュ制御装置の第2の実施例を示すブロック図である。 〔主な参照番号〕 101・・仮想アドレスレジスタ 102・・バスモニタ実アドレスレジスタ103・・仮
想アドレスメモリ 104・・プロセス識別番号メモリ 105・・有効ピントアレイ 106・・エリアテーブルエントリアドレスメモリ10
7・・ページテーブルエントリアドレスメモリ108.
109.113・・比較器 110.111 ・・アドレスレコーダ112・・プ
ロセス識別レジスタ 114・・実アドレスメモリ
置の第1の実施例のブロック図、第2図は、第1図で仮
定される仮想記憶管理方式のアドレス変換の流れを図解
する図、第3図は、本発明による仮想アドレスキャッシ
ュ制御装置の第2の実施例を示すブロック図である。 〔主な参照番号〕 101・・仮想アドレスレジスタ 102・・バスモニタ実アドレスレジスタ103・・仮
想アドレスメモリ 104・・プロセス識別番号メモリ 105・・有効ピントアレイ 106・・エリアテーブルエントリアドレスメモリ10
7・・ページテーブルエントリアドレスメモリ108.
109.113・・比較器 110.111 ・・アドレスレコーダ112・・プ
ロセス識別レジスタ 114・・実アドレスメモリ
Claims (1)
- 仮想アドレスによってキャッシュメモリを索引するキャ
ッシュメモリ制御装置であって、キャッシュデータメモ
リに存在するデータブロックを指示する仮想アドレスを
保持する仮想アドレスメモリ手段と、仮想記憶管理に用
いられるアドレス変換テーブルを指示する実アドレスを
保持する1つ以上の変換テーブルエントリアドレスメモ
リ手段と、前記アドレス変換テーブルを検索した結果得
られるデータを保持するデータメモリ手段と、前記各メ
モリ手段のワード毎に対応する有効ビットを保持する有
効ビットアレイ手段と、外部アドレスを入力するための
手段と、前記変換テーブルエントリアドレスメモリ手段
の内容と前記外部アドレスとを比較するためのアドレス
比較手段とを有し、前記外部アドレスの入力が通知され
ると、前記アドレス比較手段が前記有効ビットアレイ手
段の対応する部分をクリアすることを特徴とする仮想ア
ドレスキャッシュ制御装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63196472A JPH0245847A (ja) | 1988-08-06 | 1988-08-06 | 仮想アドレスキャッシュ制御装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP63196472A JPH0245847A (ja) | 1988-08-06 | 1988-08-06 | 仮想アドレスキャッシュ制御装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH0245847A true JPH0245847A (ja) | 1990-02-15 |
Family
ID=16358372
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP63196472A Pending JPH0245847A (ja) | 1988-08-06 | 1988-08-06 | 仮想アドレスキャッシュ制御装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH0245847A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010097558A (ja) * | 2008-10-20 | 2010-04-30 | Toshiba Corp | 仮想アドレスキャッシュメモリ及び仮想アドレスキャッシュ方法 |
-
1988
- 1988-08-06 JP JP63196472A patent/JPH0245847A/ja active Pending
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2010097558A (ja) * | 2008-10-20 | 2010-04-30 | Toshiba Corp | 仮想アドレスキャッシュメモリ及び仮想アドレスキャッシュ方法 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6263403B1 (en) | Method and apparatus for linking translation lookaside buffer purge operations to cache coherency transactions | |
| US6023747A (en) | Method and system for handling conflicts between cache operation requests in a data processing system | |
| US5586283A (en) | Method and apparatus for the reduction of tablewalk latencies in a translation look aside buffer | |
| JP5373173B2 (ja) | アドレス変換方法及び装置 | |
| US20040117588A1 (en) | Access request for a data processing system having no system memory | |
| US20040117587A1 (en) | Hardware managed virtual-to-physical address translation mechanism | |
| EP0911737A1 (en) | Cache memory with reduced access time | |
| JP3666689B2 (ja) | 仮想アドレス変換方法 | |
| EP0303648B1 (en) | Central processor unit for digital data processing system including cache management mechanism | |
| JPH03142644A (ja) | キャッシュメモリ制御方法とこのキャッシュメモリ制御方法を用いたプロセッサおよび情報処理装置 | |
| JPS6135584B2 (ja) | ||
| JPH10254772A (ja) | キャッシュ・メモリ階層内で利用するキャッシュ・コヒーレンシ機構を実施するための方法およびシステム | |
| EP0365117B1 (en) | Data-processing apparatus including a cache memory | |
| US5339397A (en) | Hardware primary directory lock | |
| US20050055528A1 (en) | Data processing system having a physically addressed cache of disk memory | |
| US5479629A (en) | Method and apparatus for translation request buffer and requestor table for minimizing the number of accesses to the same address | |
| US20040117590A1 (en) | Aliasing support for a data processing system having no system memory | |
| US6990551B2 (en) | System and method for employing a process identifier to minimize aliasing in a linear-addressed cache | |
| US20040117591A1 (en) | Data processing system having no system memory | |
| US20050027960A1 (en) | Translation look-aside buffer sharing among logical partitions | |
| US4757447A (en) | Virtual memory system having identity marking for common address space | |
| JPH0551937B2 (ja) | ||
| EP0173909B1 (en) | Look-aside buffer least recently used marker controller | |
| CN116830092A (zh) | 用于跟踪存储器区域的内容的修改的技术 | |
| US6931510B1 (en) | Method and system for translation lookaside buffer coherence in multiprocessor systems |