JPH0550019B2 - - Google Patents

Info

Publication number
JPH0550019B2
JPH0550019B2 JP58180135A JP18013583A JPH0550019B2 JP H0550019 B2 JPH0550019 B2 JP H0550019B2 JP 58180135 A JP58180135 A JP 58180135A JP 18013583 A JP18013583 A JP 18013583A JP H0550019 B2 JPH0550019 B2 JP H0550019B2
Authority
JP
Japan
Prior art keywords
address
page
memory
interrupt
virtual
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 - Lifetime
Application number
JP58180135A
Other languages
English (en)
Other versions
JPS6073759A (ja
Inventor
Keizo Aoyanagi
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.)
Toshiba Corp
Original Assignee
Tokyo Shibaura Electric Co 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 Tokyo Shibaura Electric Co Ltd filed Critical Tokyo Shibaura Electric Co Ltd
Priority to JP58180135A priority Critical patent/JPS6073759A/ja
Publication of JPS6073759A publication Critical patent/JPS6073759A/ja
Publication of JPH0550019B2 publication Critical patent/JPH0550019B2/ja
Granted 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
    • G06F12/10Address translation

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)

Description

【発明の詳細な説明】 〔発明の技術分野〕 本発明は、仮想記憶方式を採る計算機システム
におけるアドレス変換バツフアに関する。
〔発明の技術的背景〕
一般に、仮想記憶方式を採る計算機システムで
は、メモリをある大きさ(例えば1Kバイト)の
ページに区切り、このページに番号を付け、更に
これらページの集合をセグメントと呼び、このセ
グメントにも番号を付けている。これらセグメン
ト番号、ページ番号及びページ内のアドレスを組
合わせたものを仮想アドレスと呼んでいる。な
お、セグメント番号及びページ番号はハードウエ
ア処理上ではページ番号の総称として処理される
ため、以下ページ番号とページ内アドレスの組み
合せを仮想アドレスとして説明する。
仮想アドレスは実際のメモリのアドレス(これ
を実アドレスと呼ぶ)と1対1に対応するわけで
なく、仮想アドレスをアドレス変換テーブルによ
つて実アドレスに変換しなければならない。この
アドレス変換テーブルはメモリ上に存在するた
め、通常、これらのアドレス変換を高速で行なう
ためにアドレス変換バツフア(以下TLBと称す)
が使用される。このTLBには使用頻度の高い仮
想アドレスに対するアドレス変換テーブルだけを
登録しているため、TLBに登録されていない
(この場合をTLBミスヒツトと呼ぶ)仮想アドレ
スに対しては、フアームウエア等によつて改めて
TLBに登録する等の処理が必要となる。
ところで、第1図に示す如く、4バイト幅のメ
モリMのn番地から下位2バイトのデータを読出
し、n+1番地から上位2バイトのデータを読み
出すような場合、2バイトずつ2回(n番地、n
+1番地)のメモリアクセスが必要となる。前後
2バイトずつのデータが同一ページ内にある時は
単にページ内アドレスが“2”増えるだけで、ペ
ージ番号とそれに対応する実アドレスの部分は変
化しないためアドレス変換をする必要はない。し
かし、第1図のページ境界bで示す如く、上記4
バイトのデータが2つの異つたページにまたがつ
てメモリMからデータを読み出すような場合、2
バイトずつ2回のメモリアクセスにおいて、それ
ぞれアドレス変換をしなければならないことにな
る。しかも、この2回のメモリアクセスに際し
て、それぞれTLBミスヒツトを引き起こす可能
性がある。
第2図は上記のようなTLBミスヒツトを引き
起こした場合を処理する従来のアドレス変換バツ
フア(TLB)の構成例を示したブロツク図であ
る。仮想アドレスレジスタ1から出力される仮想
アドレス100はアドレス変換回路2にて実アド
レス200に変換され、このアドレス変換回路2
は図示されない主メモリに実アドレス200を出
力してメモリアクセスを行う。仮想アドレスレジ
スタ1が出力する仮想アドレス100はページ渡
り判別回路3に入力されており、このページ渡り
判別回路3でページ渡りがあることが判別される
と、このページ渡り判別回路3はページ渡りがあ
ることを示す信号300をアンドゲート4を遠し
て割込み制御回路5に送出して割込みを発生させ
る。アンドゲート4の他方にはフリツプフロツプ
(FF)6の内容が印加され、アンドゲート4の開
閉が行なわれる。また、割込み制御回路5にはア
ドレス変換回路2がTLBミスヒツトを検出した
時のTLBミスヒツト検出信号400が入力され
ている。なお、ページ渡り判別回路3は4バイト
アクセスを示す信号500を入力し、これに基づ
いてページ渡りの有無を検出している。
第1図に示す如く2つの異つたページにまたが
つてメモリMからデータを読み出すような場合、
2回のメモリアクセスの内1回目でTLBミスヒ
ツトを起こした時は、アドレス変換回路2は
TLBミスヒツト信号400を割込制御回路5に
送り、この割込制御回路5の制御によつて、アド
レス変換回路2に新しいアドレス登録600を行
なうフアームウエアへの切換が行なわれる。一
方、1回目でTLBミスヒツトを起こさなければ、
アドレス変換回路2は1回目の仮想アドレスに対
応した実アドレス200を出力すると同時に、ペ
ージ渡り判別回路3はぺージ渡りがあることを判
別してページ渡り検出信号300をアンドゲート
4を通して割込制御回路5に出力し、この割込制
御回路5によつて割込みを発生させる。なお、こ
の時フリツプフロツプ6はセツトされておりアン
ドゲート4は開放されている。
その後はフアームウエアに制御が移り、2回目
の仮想アドレスが登録されているかいないかを調
べ、未登録であれば登録の処理を行つた後、割込
許可フリツプフロツプ6をリセツトしてアンドゲ
ート4を遮断した後、再度上記メモリアクセス動
作を最初から行なう。この時、前回と同様、ペー
ジ渡り判別回路3はページ渡り検出信号300を
出力する(実際はこの信号が“1”となる)が、
アンドゲート4が遮断されているため、信号30
0は割込制御回路5に伝達されず、再度の割込は
発生しない。2回目のアドレス変換が終了する
と、フリツプフロツプ6はリセツトされてアンド
ゲート4を開放し、次の新たなメモリアクセスに
備える。
〔背景技術の問題点〕
このような従来のTLBの構成では、2ページ
にまたがつたメモリアクセスを行なう毎に割込が
入つてその都度フアームウエア処理を必要とする
ため、オーバーヘツドが長くなり、アドレス変換
処理性能が著しく低下する恐れがあつた。
〔発明の目的〕
本発明の目的は、上記の欠点に鑑み、ページ渡
りを伴なうメモリアクセスをオーバーヘツドなし
で高度に行ない得るアドレス変換バツフアを提供
することにある。
〔発明の概要〕
本発明は、仮想アドレスを実アドレスに変換す
るアドレス変換回路の変換テーブルに、与えられ
た仮想アドレスに対応する次のページの実アドレ
スの少なくとも一部が上記アドレス変換回路に登
録されているかいないかを示す情報を格納し、2
ページに渡るメモリアクセスを行なつた際に、ペ
ージ渡り判別回路によりページ渡りを検出し、且
つ前記アドレス変換回路により次のページ未登録
を検出した場合のみ、前記アドレス変換回路に新
しいアドレス登録を行なうフオームウエア制御を
起動するための割込を発生させる手段を設けるこ
とにより、上記目的を達成する。
〔発明の実施例〕
以下、本発明のアドレス変換バツフアの一実施
例を従来例と同一部は同符号を付して図面に従つ
て説明する。第3図は本発明のアドレス変換バツ
フアの一実施例を示すブロツク図である。仮想ア
ドレスレジスタ1が出力する仮想アドレス100
はアドレス変換回路2とページ渡り判別回路3に
入力されている。アドレス変換回路2は実アドレ
ス200を出力し、また、割込制御回路5に
TLBミスヒツト検出割込信号400を出力し、
更にアンドゲート4に次のページが未登録である
ことを示す信号(次ページ未登録信号)700を
出力する。ページ渡り判別回路3はページ渡り検
出信号300をアンドゲート4を通して割込制御
回路5に出力する。
第4図は第3図で示したアドレス変換回路2の
構成例を示したものである。このアドレス変換回
路2はメモリ部(アドレス変換テーブルTLB)
7と比較器8から成り、メモリ部7は3つの領域
71,72,73、から成つている。メモリ7の
領域71には仮想アドレス100に対応するセグ
メント番号及びページ番号の一部が登録されてい
る。従つて、仮想アドレスレジスタ1から入力さ
れる仮想アドレス100のセグメント番号により
メモリ7がアドレミングされ、またセグメント番
号、ページ番号の一部は比較器8の一方に入力さ
れる。そして、メモリ7から読み出される領域7
1内のセグメント番号及びページ番号の一部が比
較器8の他方に入力されて、ここで仮想アドレス
100に対応する実アドレスがメモリ7に格納さ
れているかどうかチエツクされ、実アドレスがな
いとなると比較器8はTLBミスヒツトを示す割
込信号400を出力する。メモリ内の領域72に
は、仮想アドレス100に対応する実アドレスの
ページ番号が格納されている。主メモリに出力さ
れる実アドレス200は、このメモリ7の領域7
2から読み出されるページ番号と仮想アドレス1
00のページ内アドレスとを合わせたものから構
成されている。メモリ7の領域73には、仮想ア
ドレスに対し次のページが領域72に登録されて
いるかいないかを示す情報を格納しており、領域
73の出力700は次のページが登録されていな
い時“1”のハイレベルとなる。なお、メモリ7
の領域71〜73の内容の更新はフアームウエア
制御により行なわれる。
第5図は第3図に示したページ渡り判別回路3
の構成例を示したものである。ページ渡り判別回
路3はアンドゲート9、アンドゲート10から成
つている。今、ページの大きさを1Kバイト
(1024バイト)とし、主メモリのアドレスはバイ
ト単位で番地を割付け、またメモリの読み出しデ
ータ幅を4バイトとする。更に、2バイト単位及
び4バイト単位のメモリアクセスにおいては偶数
番地のみを指定できるものとする。仮想アドレス
レジスタ1のビツト22〜30のデータ800が
全て論理“1”の時、例えば4バイトアクセスで
あれば第1図に示したようなページ渡りとなり、
アンドゲート9の出力が論理“1”となり、更に
ビツト30の出力が論理“1”で且つ4バイトア
クセスを示す信号500が論理“1”となつてい
ればアンドゲート10の出力(ページ渡り検出信
号)300が論理“1”となつて割込がアンドゲ
ート4に発生される。
次に本実施例の動作について説明する。
第1図に示したように2つの異つたページにま
たがつて主メモリからデータを読み栄す場合、ま
ず、n番地のアクセスにおいて、TLBミスヒツ
トとなるがページ未登録信号700が出力され
る。次にn+1番地の仮想アドレスを受けたペー
ジ渡り判別回路3は第5図で示したページ渡り検
出信号300を発生しアンドゲート4に出力す
る。しかし、アドレス変換回路2からはn番地の
アクセスにおいて仮想アドレス100に対応する
次のページが登録されていないことが検出されて
おり、ページ未登録信号700がアンドゲート4
に出力される。これによりアンドゲート4から割
込制御回路5に割込信号が発生する。割込発生後
はフアームウエアに制御が移り新規アドレスの登
録処理が行なわれる。従つて、n+1番地につい
ては比較器8の比較結果に応じることなく、ただ
ちに割込信号が発生され実アドレスの登録オペレ
ーシヨンを実行されるようになる。
〔発明の効果〕
以上記述した如く本発明のアドレス変換バツフ
アによれば、ページ渡りを伴なうメモリアクセス
をオーバーヘツドなしで高速に行なう効果があ
る。
【図面の簡単な説明】
第1図はメモリ内のページ渡りを示す図、第2
図は従来のアドレス変換バツフアの構成例を示す
ブロツク図、第3図は本発明のアドレス変換バツ
フアの一実施例を示すブロツク図、第4図は第2
図に示したアドレス変換回路の詳細例を示したブ
ロツク図、第5図は第3図のページ渡り判別回路
の詳細例を示したブロツク図である。 1……仮想アドレスレジスタ、2……アドレス
変換回路、3……ページ渡り判別回路、4,9,
10……アンドゲート、5……割込制御回路、7
……メモリ部、8……比較器。

Claims (1)

    【特許請求の範囲】
  1. 1 仮想アドレスから実アドレスへのアドレス変
    換を高速に行なうアドレス変換バツフアにおい
    て、仮想アドレスに対応する実アドレスの少なく
    とも一部および上記仮想アドレスの次のページに
    相当する仮想アドレスに対応する実アドレスの少
    なくとも一部が登録されているか否かを示す情報
    が格納されるアドレス変換テーブルと、アクセス
    しようとするデータが主メモリ上で2つのページ
    に渡つているかいないかを判別するページ渡り判
    別回路と、このページ渡り判別回路がページ渡り
    を判別し、且つ上記アドレス変換テーブルに格納
    された情報により次のページがアドレス変換テー
    ブルに未登録であつた場合のみ割込みを発生させ
    る手段を具備し、上記割込条件が成立すると命令
    の実行を開始する前に割込みを発生させることを
    特徴とするアドレス変換バツフア。
JP58180135A 1983-09-30 1983-09-30 アドレス変換バッファ Granted JPS6073759A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP58180135A JPS6073759A (ja) 1983-09-30 1983-09-30 アドレス変換バッファ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP58180135A JPS6073759A (ja) 1983-09-30 1983-09-30 アドレス変換バッファ

Publications (2)

Publication Number Publication Date
JPS6073759A JPS6073759A (ja) 1985-04-25
JPH0550019B2 true JPH0550019B2 (ja) 1993-07-27

Family

ID=16078018

Family Applications (1)

Application Number Title Priority Date Filing Date
JP58180135A Granted JPS6073759A (ja) 1983-09-30 1983-09-30 アドレス変換バッファ

Country Status (1)

Country Link
JP (1) JPS6073759A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63197254A (ja) * 1987-02-12 1988-08-16 Hitachi Ltd 仮想記憶制御装置

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS56137572A (en) * 1980-03-28 1981-10-27 Fujitsu Ltd Data processor

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS56137572A (en) * 1980-03-28 1981-10-27 Fujitsu Ltd Data processor

Also Published As

Publication number Publication date
JPS6073759A (ja) 1985-04-25

Similar Documents

Publication Publication Date Title
US4218743A (en) Address translation apparatus
US4459661A (en) Channel address control system for a virtual machine system
US4386402A (en) Computer with dual vat buffers for accessing a common memory shared by a cache and a processor interrupt stack
JPH0137773B2 (ja)
JPH0312339B2 (ja)
JPH0512126A (ja) 仮想計算機のアドレス変換装置及びアドレス変換方法
JPH04308953A (ja) 仮想アドレス計算機装置
US4768146A (en) Vector data refer circuit with a preceding paging control for a vector processor apparatus therefor
US6324635B1 (en) Method and apparatus for address paging emulation
JPH0550019B2 (ja)
EP0224168A2 (en) Buffer storage control system
JP2845754B2 (ja) マルチプロセッサシステム
JP2612173B2 (ja) 仮想計算機
JPH0336647A (ja) キャッシュ・バッファリング制御方式
JP2635310B2 (ja) アドレス変換装置
JPH01226056A (ja) アドレス変換回路
JPH0659980A (ja) キャッシュ装置
JP2509981B2 (ja) 仮想記憶制御装置
JPS6360427B2 (ja)
JPH041373B2 (ja)
JPS589272A (ja) アドレス変換索引バツフアの無効化処理方式
JPS6265151A (ja) メモリ管理方式
JPH04352047A (ja) アドレス変換制御方法および装置
JPS62177645A (ja) キヤツシユメモリ制御方式
JPH0159611B2 (ja)