JPH01226056A - アドレス変換回路 - Google Patents

アドレス変換回路

Info

Publication number
JPH01226056A
JPH01226056A JP63052142A JP5214288A JPH01226056A JP H01226056 A JPH01226056 A JP H01226056A JP 63052142 A JP63052142 A JP 63052142A JP 5214288 A JP5214288 A JP 5214288A JP H01226056 A JPH01226056 A JP H01226056A
Authority
JP
Japan
Prior art keywords
address
address translation
real
circuit
buffer
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
Application number
JP63052142A
Other languages
English (en)
Inventor
Kiyoshi Hori
清志 堀
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
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP63052142A priority Critical patent/JPH01226056A/ja
Publication of JPH01226056A publication Critical patent/JPH01226056A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は仮想記憶装置を有する情報処理装置に関し、特
にその論理アドレスを実アドレスに変換するアドレス変
換回路に関する。
〔従来の技術〕
従来、この欅のアドレス変換回路は、論理アドレスから
実アドレスへの変換ヒツト率を高めるためアドレス変換
バッファのブロック容部を大きくしたり、アドレス変換
バッファを用途別に、例えば命令取出し用とオペランド
取出し用の複数個を持つようにして解決していた。
(発明が解決しようとする課題〕 上述した従来のアドレス変換回路は、計算機のマシンサ
イクルタイムが超高速になるにつれ、1マシンサイクル
タイム内にアクセス可能なアドレス変換バッファの容量
がi、II限されてブロック容量を大ぎく持てなくなっ
てきており、したがって、まだ使用される可能性のある
データがバッファ容量の制限で新しいデータに追い出さ
れ、古いデータを再度使おうとしたときに改めて論理ア
ドレスから実アドレスを作成してアドレス変換バッファ
に格納しているため、アドレス変換のために無駄なマシ
ンサイクルを要し、また用途別にアドレス変換バッファ
を持つときは、互いに共通なアドレス領域を使用する場
合でも実アドレスの生成をそれぞれのアドレス変換バッ
ファの要求ごとに2度行わねばならないという欠点があ
る。
〔課題を解決するための手段〕
本発明のアドレス変換回路は第2のアドレス変換バッフ
ァを含み、第1のアドレス変換バッファから置換された
アドレス変換対および以前に生成された実アドレスを含
む変換対の少なくとも一つを第2のアドレス変換バッフ
ァ内に保持し、第1のアドレス変換バッファ中にアクセ
スされ、たアドレス変換対が存在しない場合に第2のア
ドレス変換バッファを索引tするアドレス変換バッファ
興路と、 第1および第2のアドレス変換バッファ内にアクセスさ
れた変換対が存在しない旨の通知を受けたとき、新たに
生成した実アドレスを前記アドレス変換バッファ回路に
出力するとともにその受入れを指示する実アドレス生成
回路を有している。
〔作用〕
本発明のアドレス変換回路は、論理アドレス/実アドレ
スの変換対を保持する第1のアドレス変換バッファと、
更新のため第1のアドレス変換バッファから追出された
変換対または以前に実アドレス生成回路により生成され
た実アドレスを含む変換対を保持する第2の変換バッフ
ァと、実アドレス生成回路を有しており、第1のアドレ
ス変換バッファをアクセスして対応する変換対が存在し
ない場合に実アドレス生成回路で必要とする実アドレス
を生成する以前に第2のアドレス変換バッファをアクセ
スし、第2のアドレス変換バッファにも対応する変換対
が存在しない場合に実アドレス回路で必要とする実アド
レスを生成してこれを用いることにより、以前使用して
いたアドレス変換対を再度使用しようとしたときに、従
来実アドレス生成に要していたマシンサイクルタイムを
第2のアドレス変換バッファのアクセスタイムだけに減
少させることができ、また第2のアドレス変換バッファ
を共用化して持つことによって、複数個のアドレス変換
バッファで同じ領域のアドレスをアクセスしようとした
とき、いままで複数回行っていた実アドレスの生成を第
2アドレス変換バツフアのアクセスだけに縮少させるこ
ともできる。
(実施例) 次に、本発明の実施例について図面を参照して説明する
第1図は本発明のアドレス変換回路の一実施例の概略構
成を示すブロック図、第2図は本実施例の詳細構成を示
す回路図である。
命令の取出しを要求する命令取出しユニット1および演
算用データの取出しを要求するオペランド取出しユニッ
ト2は、それぞれアクセスする仮想アドレス情報をアド
レス変換回路4に入力させる。仮想アドレス情報はペー
ジアドレスとページ内ワードアドレスより構成され、ペ
ージアドレスはさらに論理アドレスとアドレス変換バッ
ファアドレスより構成されている。
アドレス変換回路4は、入力された仮想アドレス情報に
基づき論理アドレス/実アドレス変換を行う第1のアド
レス変換バッファ回路が命令用アドレス変換バッフ7回
路100とオペランド用アドレス変換バッファ回路20
0に分割されており、それぞれの有するアドレス変換バ
ッファ120゜220にこれらの要求に該当する論理ア
ドレス/実アドレス変換対が存在しない場合、続いて同
様にこれらの要求に対応してそのアドレス変換バッファ
450を用いて論理アドレス/実アドレス変換を行う第
2のアドレス変換バッファ回路400と、第2のアドレ
ス変換バッファ回路400にも該当する変換対が存在し
ない場合は上位処Il!装置(不図示)の主記憶装置3
のアドレス変換テーブルを用いて実アドレスを求め、該
当する各アドレス変換バッファ回路100.200に対
し論理アドレス/実アドレス変換対のデータ登録指示を
行い、さらに各アドレス変換バッファ回路100または
200より追出された変換対の登録を第2のアドレス変
換バッファ回路400に指示する実アドレス生成回路3
00を有している。
命令用アドレス変換バッファ回路100は、命令取出し
ユニット1から要求により仮想アドレス情報を取込む仮
想アドレスレジスタ110と、論理アドレスとそれに対
応する実アドレスよりなる変換対を保持するアドレス変
換バッファ120と、アドレス変換バッファ120に新
たに変換対のエントリを登録するリプレースメント!I
IJt11回路140およびそのリプレースアルゴリズ
ムのための情報を保持するLRUメモリ130と、仮想
アドレスレジスタ110の一部とアドレス変換バッファ
120からそれぞれ読出された論理アドレスを比較して
、両者が一致するかどうかを判定する比較回路150と
、リプレースメント制御回路140によりアドレス変換
バッファ120から追出される読出しデータ(実アドレ
ス)を選択するセレクタ160から構成されている。
オペランド用アドレス変換バッファ回路200も上述し
た命令用アドレス変換バッファ回路100と同様に、オ
ペランド取出しユニット2からの要求により仮想アドレ
ス情報を取込む仮想アドレスレジスタ210と、論理ア
ドレスとそれに対応する実アドレスよりなる変換対を保
持するアドレス変換バッファ220と、アドレス変換バ
ッファ220に新たな変換対のエントリを登録するリプ
レースメント制御回路240およびそのリプレースアル
ゴリズムのための情報を保持するl−RUメモリ230
と、仮想アドレスレジスタ210の一部とアドレス変換
バッファ220からそれぞれ読出された論理アドレスを
比較して、両者が一致するかどうかを判定する比較回路
250と、リプレースメント制御回路240によりアド
レス変換バッファ220から追出される読出しデータ(
実アドレス)を選択するセレクタ260から構成されて
いる。
第2のアドレス変換バッファ回路400は、仮想アドレ
スレジスタ110と、仮想アドレスレジスタ210から
の仮想アドレス情報を選択するセレクタ410と、セレ
クタ410からのデータを取りこむ仮想アドレスレジス
タ420と、アドレス変換バッファ120.220から
読出された実アドレス、および実アドレス生成回路30
0から出力された実アドレスを選択するセレクタ430
と、仮想アドレス情報中の論理アドレスとそれに対応す
る実アドレスよりなる変換対を保持するアドレス変換バ
ッファ450と、アドレス変換バッファ450への実ア
ドレスを書込むための書込みレジスタ440と、アドレ
ス変換バッファ450に新たな変換対のエントリを登録
するリプレースメント制御回路480およびそのリプレ
ースアルゴリズムのための情報を保持するt−RUメモ
リ460と、仮想アドレスレジスタ420の一部とアド
レス変換バッファ450からそれぞれ読出された論理ア
ドレスを比較して、両者が一致するかどうかを判定する
比較回路470と、アドレス変換バッファ450からの
読出しデータ(実アドレス)か実アドレス生成回路30
0から入力された実アドレスを比較回路470からの通
知により選択するセレクタ490と、アドレスバッファ
120.220のそれぞれにセレクタ490から入力さ
れた実アドレスをアドレス変換バッファ120または2
20に書込むためのレジスタ4AOより構成されている
実アドレス生成回路300は、命令用またはオペランド
用アドレス変換バッファ回路100゜200のそれぞれ
から信号線151.251を介してアクセスされた変換
対が未°登録で、かつ追出す変換対の有無についての通
知°を受けたとき、その旨を@号線303で第2のアド
レスバッファ回路400に通知して追出しレベル有りの
場合はその変換対を取り込ませるとともに目的の変換対
の有無を索引させ、第2のアドレス変換バッファ回路4
00にもアクセスされた変換対が未登録である旨の通知
を信号線471を介して受けたときは主記憶装置3のア
ドレス変換テーブルを索引して要求に対応する実アドレ
スを生成し、第2のアドレス変換バッファ回路400に
送出するとともに、その取込みを要求元のアドレス変換
バッファ回路100または200に指示する。
なお、上述した各アドレス変換バッファ120゜220
.450はいずれもレベルOとレベル1の2レベルを有
しており、各リプレースメント制御回路140,240
.480がそれぞれのL RUメモリ130,230.
460の内容を参照して、いずれのレベルに変換対の登
録を行うかをL RtJ方式にしたがい決定する。公知
のL RtJ (LeastRecen口y Used
)方式は、「最も以前に参照されたブロックは、以後最
も使用されない」という考え方に塞づく方式で、本実施
例では新しい変換対の登録要求が発生するごとに、空レ
ベルが無ければ2レベルのうち古い方の変換対が追出さ
れ、また2レベルとも空の場合はまずレベル0に登録さ
れる。各比較回路150,250,470は、上述した
2レベル分の内容の判定を同時に行う。また、実アドレ
ス生成回路300は、命令用アドレス変換バッファ回路
100とオペランド用アドレス変換バッファ回路200
とからの要求が同時に発生した場合はオペランド用側の
処理を優先するよう設定されている。
次に本実施例の動作を説明する。
命令用アドレス変換バッファ回路100は、命令取出し
ユニット1からの要求があれば仮想アドレスレジスタ1
10に仮想アドレス情報を取込み、アドレス変換バッフ
ァ120を索引して論理アドレス/実アドレスの変換対
が登録されているか否かをチエツクする。論理アドレス
/実アドレスの変換対の登録チエツクは、仮想アドレス
情報のアドレス変換バッファアドレスでアドレス変換バ
ッファ120内の論理アドレスを読出し、読出したデー
タと仮想アドレス情報中の論理アドレスとを比較回路1
50で比較して、一致していれば登録、不一致であれば
未登録と判定して結果を出力する。
そこで、登録の場合は求められた実アドレスをそのまま
使用して次の動作に移行する。もし、アドレス変換バッ
ファ120の2レベルに変換対が登録されていて、アド
レス比較の結果いずれも不一致の場合は比較回路150
から通知を受けたリプレースメント制御回路140の決
定によりセレクタ160でどちらかの追い出すべきレベ
ルの実アドレスを選択し、またその対応する論理アドレ
スは仮想アドレスレジスタ110から、いずれも第2の
アドレス変換バッファ回路400に送出する。
またリプレースメント制御回路140により追い出した
レベルには、実アドレス生成回路300で求められた実
アドレスまたは第2のアドレス変換バッファ回路400
で得られた実アドレスと、アクセスした論理アドレスの
変換対を格納する。また、アドレス変換バッファ120
の片側レベルのみに変換対が登録されていてアドレス比
較の結果不一致の場合または両レベルとも空の場合は追
出しは無くて、リプレースメント制御回路140の制御
により空いているレベルに同様に実アドレス生成回路3
00で求められた実アドレスまたは第2のアドレス変換
バッファ回路400から得られた実アドレスとアクセス
した論理アドレスの変換対を格納する。なお、上述した
未登録の場合は同時に、信号線151を介して実アドレ
ス生成回路300に追出す変換対の有無も合わせて未登
録通知を行う。
オペランド用アドレス変換バッファ回路200は命令用
アドレス変換バッファ回路100と同時に並行して、上
述した命令用アドレス変換バッフ7回路100の場合と
同様の動作を行う。実アドレス生成回路300は、未登
録および追出される実アドレスの有無について通知を受
けると、この旨を第2のアドレス変換バッファ回路40
0に信号線303で指示をする。第2のアドレス変換バ
ッファ回路400はこの指示により、追出される変換対
の゛°有′°のときはセレクタ410.430で要求を
受付けた方のデータを選択し、追出された論理アドレス
をレジスタ420へ、追出された実アドレスを書込みレ
ジスタ440にそれぞれ取込む。さらに上述した命令用
およびオペランド用アドレス変換バッファ回路100.
200の場合と同様にアドレス変換バッファ450を索
引して、比較回路470で論理アドレス/実アドレスの
変換対が登録されているか否かをヂエツクする。この場
合、もしアドレス変換バッファ450に登録されていた
なら、これより求めた実アドレスをセレクタ490で選
択してレジスタ4AOに取込むと同時に、信号線471
を介して実アドレス生成回路300に通知する。通知を
受けた実アドレス生成回路300は信号線301または
302で要求元に対し実アドレスが求まったことを通知
する。
通知を受けた要求元、例えば命令用アドレス変換バッフ
ァ回路100は追い出したレベルの方にレジスタ4AO
からのデータ(実アドレス)と仮想アドレスレジスタ1
10の論理アドレスの変換対をアドレス変換バッファ1
20の追出されたレベルまたは空のレベルに書込み、あ
らためてアドレス変換バッファ120を索引する。今度
は確実に論理アドレス/実アドレスの変換対が登録され
ていることになるので、求めた実アドレスをそのまま使
用し次の動作に移行する。さらに第2のアドレス変換バ
ッファ回路400は仮想アドレスレジスタ420の中の
追出された論理アドレスと書込みレジスタ440内の実
アドレスとの変換対を、アドレス変換バッファ450の
いま読出した方のレベルによ込んでおく。また、第2の
アドレス変換バッファ回路400は、実アドレス生成回
路300がアドレス変換バッファ回路100.200よ
り追出されるデータが無いと通知を受けている場合はア
ドレス変換バッファ450の変換対を索引した後もその
まま保持している。第2のアドレス変換バッファ回路4
00はアドレス変換バッファ450を索引して、論理ア
ドレス/実アドレスの変換対が登録されていない場合も
同様にこの旨を信号線471で実アドレス生成回路30
0に報告する。実アドレス生成回路300は信号線47
2を介して得た仮想アドレスレジスタ420の内容で主
2!813のアドレス変換テーブルを参照して実アドレ
スを求める。実アドレスが得られたならばその取込みを
信号線303で第2のアドレス変換バッファ回路400
に通知するとともに実アドレスを信号線304で送出し
て信号線301または302で要求元に対して実アドレ
スが求まったことを通知する。第2のアドレス変換バッ
ファ回路400は入力した実アドレスをセレクタ490
で選択して書込みレジスタ4AOに取込む。通知を受け
た要求元、例えば命令用アドレス変換バッファ回路10
0は、アドレス変換バッファ120の追い出したレベル
または空のレベルにレジスタ4AOからのデータ(実ア
ドレス)と仮想アドレスレジスタ110の論理アドレス
の変換対をアドレス変換バッファ120に書込み、あら
ためてアドレス変換バッファ120を索引する。
今度は確実に論理アドレス/実アドレスの変換対が登録
されていることになるので、求めた実アドレスをそのま
ま使用し次の動作に移行する。オペランド用アドレス変
換バッファ回路200に対しても同様の処理が行われる
。この場合にも第2のアドレス変換バッファ回路400
は、命令用またはオペランド用アドレス変換バッファ回
路100または200から追出された変換対が“有”の
とき、セレクタ430および書込みレジスタ440を介
してアドレス変換バッファ450のいずれか1方のレベ
ルに書込んでおく。また追出される実アドレスが“無”
のときも、実アドレス生成回路300が生成した実アド
レスを同様にアドレス変換バッファ450のいずれか1
方のレベルに書込む。これは第1のアドレス変換バッフ
ァ回路が本実施例のように2分割されている場合に、実
アドレス生成回路3で実アドレスの生成を2回やらない
で済ませるためで、無駄な実アドレス生成時間を省くこ
とかできる。
(発明の効果〕 以上説明したように本発明は、第1のアドレス変換バッ
ファに求めるべきアドレス変換対が存在しない場合でも
第1のアドレス変換バッファから追い出されたアドレス
変換対を保持している第2のアドレス変換バッファを持
つことにより、以前使用していたアドレス変換対を再度
使用しようとしたとぎに従来実アドレス生成に要してい
たマシンサイクルタイムを第2のアドレス変換バッファ
のアクセスタイムだけに減少させることができ、また第
2のアドレス変換バッファを共用化して持つことによっ
て、複数個のアドレス変換バッファで同じ領域のアドレ
スをアクセスしようとしたとき、9迄複数回行っていた
実アドレスの生成を第2のアドレス変換バッファのアク
セスだけに縮少させることもできる効果がある。
【図面の簡単な説明】
第1図は本発明のアドレス変換回路の一実施例の概略構
成を示すブロック図、第2図は本実施例の詳細構成を示
す回路図である。 1・・・命令取出しユニット、 2・・・オペランド取出しユニット、 3・・・主記憶装置、 4・・・アドレス変換回路、1
00・・・命令用アドレス変換バッファ回路、200・
・・オペランド用アドレス変換バッファ回路、 300・・・実アドレス生成回路、 400・・・第2のアドレス変換バッファ回路、110
.210,420・・・仮想アドレスレジスタ、 120.220.450・・・アドレス変換バッファ、 130.230.460・・・LRLJメモリ、140
.240,480・・・リプレースメント制御回路、 150.250,470・・・比較回路、160.26
0,410,430.490・・・セレクタ、 440.4AO・・・書込みレジスタ、151.251
,301,302,303゜304.471.472・
・・信号線。

Claims (1)

  1. 【特許請求の範囲】 入力された仮想アドレス情報中の論理アドレスから対応
    する実アドレスを得るための少なくとも一つのアドレス
    変換対を保持する第1のアドレス変換バッファを用いて
    、アクセスされるごとに該アドレス変換バッファを索引
    し、対応する変換対が存在せぬ場合は新たに実アドレス
    を生成し、この実アドレスと前記論理アドレスとの変換
    対で第1のアドレス変換バッファ内の最も以前に参照さ
    れたアドレス変換対を置換して索引するとともに、常に
    第1のアドレス変換バッファの内容を最新のものとする
    アドレス変換回路において、 第2のアドレス変換バッファを含み、前記置換されたア
    ドレス変換対および以前に生成された実アドレスを含む
    変換対の少なくとも一つを第2のアドレス変換バッファ
    内に保持し、第1のアドレス変換バッファ中にアクセス
    されたアドレス変換対が存在しない場合に第2のアドレ
    ス変換バッファを索引するアドレス変換バッファ回路と
    、第1および第2のアドレス変換バッファ内にアクセス
    された変換対が存在しない旨の通知を受けたとき、新た
    に生成した実アドレスを前記アドレス変換バッファ回路
    に出力するとともにその受入れを指示する実アドレス生
    成回路を有することを特徴とするアドレス変換回路。
JP63052142A 1988-03-04 1988-03-04 アドレス変換回路 Pending JPH01226056A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63052142A JPH01226056A (ja) 1988-03-04 1988-03-04 アドレス変換回路

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63052142A JPH01226056A (ja) 1988-03-04 1988-03-04 アドレス変換回路

Publications (1)

Publication Number Publication Date
JPH01226056A true JPH01226056A (ja) 1989-09-08

Family

ID=12906622

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63052142A Pending JPH01226056A (ja) 1988-03-04 1988-03-04 アドレス変換回路

Country Status (1)

Country Link
JP (1) JPH01226056A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03218546A (ja) * 1990-01-24 1991-09-26 Nec Corp アドレス変換機構
JPH0594370A (ja) * 1991-04-25 1993-04-16 Internatl Business Mach Corp <Ibm> コンピユータメモリシステム及び仮想メモリアドレツシング区分方法
JPWO2008155851A1 (ja) * 2007-06-20 2010-08-26 富士通株式会社 演算処理装置、エントリ制御プログラムおよびエントリ制御方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03218546A (ja) * 1990-01-24 1991-09-26 Nec Corp アドレス変換機構
JPH0594370A (ja) * 1991-04-25 1993-04-16 Internatl Business Mach Corp <Ibm> コンピユータメモリシステム及び仮想メモリアドレツシング区分方法
JPWO2008155851A1 (ja) * 2007-06-20 2010-08-26 富士通株式会社 演算処理装置、エントリ制御プログラムおよびエントリ制御方法
JP4812876B2 (ja) * 2007-06-20 2011-11-09 富士通株式会社 演算処理装置および演算処理装置の制御方法
US8688952B2 (en) 2007-06-20 2014-04-01 Fujitsu Limited Arithmetic processing unit and control method for evicting an entry from a TLB to another TLB

Similar Documents

Publication Publication Date Title
US5230045A (en) Multiple address space system including address translator for receiving virtual addresses from bus and providing real addresses on the bus
US5123101A (en) Multiple address space mapping technique for shared memory wherein a processor operates a fault handling routine upon a translator miss
US5586294A (en) Method for increased performance from a memory stream buffer by eliminating read-modify-write streams from history buffer
US5897664A (en) Multiprocessor system having mapping table in each node to map global physical addresses to local physical addresses of page copies
US5371870A (en) Stream buffer memory having a multiple-entry address history buffer for detecting sequential reads to initiate prefetching
US5388247A (en) History buffer control to reduce unnecessary allocations in a memory stream buffer
CN101727405B (zh) 虚拟地址高速缓冲存储器和方法以及处理器
JPH03142644A (ja) キャッシュメモリ制御方法とこのキャッシュメモリ制御方法を用いたプロセッサおよび情報処理装置
JPH0340046A (ja) キャッシュメモリ制御方式および情報処理装置
US5339397A (en) Hardware primary directory lock
JP2930071B2 (ja) 情報処理装置およびプロセッサ
US5452418A (en) Method of using stream buffer to perform operation under normal operation mode and selectively switching to test mode to check data integrity during system operation
JPH04308953A (ja) 仮想アドレス計算機装置
JPH0519176B2 (ja)
JPH01226056A (ja) アドレス変換回路
JP2685455B2 (ja) データ処理装置
JPS6329297B2 (ja)
JPH03257643A (ja) 情報処理装置
JPH06103477B2 (ja) 並列キャッシュメモリ
JPH01193961A (ja) アドレス変換装置
JPH0573415A (ja) 階層化キヤツシユ方式
JPH03218546A (ja) アドレス変換機構
JPH04235648A (ja) 論理キャッシュメモリ装置
JPH02122347A (ja) 情報処理装置
JPH10207773A (ja) バス接続装置