JPH04358242A - アドレス変換装置およびアドレス変換方法 - Google Patents
アドレス変換装置およびアドレス変換方法Info
- Publication number
- JPH04358242A JPH04358242A JP3132654A JP13265491A JPH04358242A JP H04358242 A JPH04358242 A JP H04358242A JP 3132654 A JP3132654 A JP 3132654A JP 13265491 A JP13265491 A JP 13265491A JP H04358242 A JPH04358242 A JP H04358242A
- Authority
- JP
- Japan
- Prior art keywords
- address
- addresses
- address translation
- group
- page number
- 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
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。
め要約のデータは記録されません。
Description
【0001】
【産業上の利用分野】本発明は、CPUや周辺装置等の
アクセス手段と、メモリやI/Oレジスタ等の被アクセ
ス手段とを有する情報処理システムなどに適用され、C
PU等が発生するアドレスをメモリ等に実際に割り当て
られているアドレスに変換するアドレス変換装置および
アドレス変換方法に関するものである。
アクセス手段と、メモリやI/Oレジスタ等の被アクセ
ス手段とを有する情報処理システムなどに適用され、C
PU等が発生するアドレスをメモリ等に実際に割り当て
られているアドレスに変換するアドレス変換装置および
アドレス変換方法に関するものである。
【0002】
【従来の技術】情報処理システム等においては、CPU
の発生するアドレスが例えば32ビットであるとすると
、4Gバイトのアドレス空間を取り扱うことができる。 これに対して、主メモリを構成するDRAMは、通常、
物理的制限や価格的制限などにより数Mバイトから数十
Mバイト程度分しか実装されない。
の発生するアドレスが例えば32ビットであるとすると
、4Gバイトのアドレス空間を取り扱うことができる。 これに対して、主メモリを構成するDRAMは、通常、
物理的制限や価格的制限などにより数Mバイトから数十
Mバイト程度分しか実装されない。
【0003】そこで、主メモリのアドレス空間よりも大
きなアドレス空間を取り扱い得るようにするために、C
PUのアドレス空間に対応するデータを大容量記憶装置
であるハードディスク装置等に格納するようにし、ハー
ドディスク装置等と主メモリとの間で適宜データ転送を
行うとともに、CPUによるアクセスは主メモリに対し
て行う、いわゆる仮想メモリと称されるシステムが多く
適用されている。ここで、上記CPUによる主メモリの
アクセスは、より詳しくは、主メモリに記憶されている
、CPUが発生する仮想のアドレス(以下、論理アドレ
スと称する。)と主メモリの実際のアドレス(以下、物
理アドレスと称する。)との対応関係を示すページテー
ブルに基づき、論理アドレスを物理アドレスに変換して
行うようになっている。
きなアドレス空間を取り扱い得るようにするために、C
PUのアドレス空間に対応するデータを大容量記憶装置
であるハードディスク装置等に格納するようにし、ハー
ドディスク装置等と主メモリとの間で適宜データ転送を
行うとともに、CPUによるアクセスは主メモリに対し
て行う、いわゆる仮想メモリと称されるシステムが多く
適用されている。ここで、上記CPUによる主メモリの
アクセスは、より詳しくは、主メモリに記憶されている
、CPUが発生する仮想のアドレス(以下、論理アドレ
スと称する。)と主メモリの実際のアドレス(以下、物
理アドレスと称する。)との対応関係を示すページテー
ブルに基づき、論理アドレスを物理アドレスに変換して
行うようになっている。
【0004】これによれば、データが実際に主メモリに
記憶されているかハードディスク装置等に記憶されてい
るかに関わらず、また、データが主メモリにおける何れ
の物理アドレスの領域に格納されているかに関わらず、
仮想アドレスによるアクセスが行えるようになっている
。ところで、上記ページテーブルは、主メモリのアクセ
スを行うごとに読み出されるのでは、アクセス時間が長
くかかることになる。そこで、例えば「情報処理ハンド
ブック」(情報処理学会編、1989年5月、オーム社
発行)p.69に示されているように、TLB(tra
nslation lookasidebuffer
)等と称されるアドレス変換用高速バッファを有するア
ドレス変換装置が用いられている。
記憶されているかハードディスク装置等に記憶されてい
るかに関わらず、また、データが主メモリにおける何れ
の物理アドレスの領域に格納されているかに関わらず、
仮想アドレスによるアクセスが行えるようになっている
。ところで、上記ページテーブルは、主メモリのアクセ
スを行うごとに読み出されるのでは、アクセス時間が長
くかかることになる。そこで、例えば「情報処理ハンド
ブック」(情報処理学会編、1989年5月、オーム社
発行)p.69に示されているように、TLB(tra
nslation lookasidebuffer
)等と称されるアドレス変換用高速バッファを有するア
ドレス変換装置が用いられている。
【0005】以下、従来のアドレス変換装置が備えられ
た情報処理システムの例を図3および図4に基づいて説
明する。同図に示すように、情報処理システムは、CP
U31と、アドレス変換用高速バッファ32と、主メモ
リ33と、ハードディスク装置34とが設けられて構成
されている。
た情報処理システムの例を図3および図4に基づいて説
明する。同図に示すように、情報処理システムは、CP
U31と、アドレス変換用高速バッファ32と、主メモ
リ33と、ハードディスク装置34とが設けられて構成
されている。
【0006】上記主メモリ33とハードディスク装置3
4との間では、ページと称される所定量単位でデータの
交換(以下、スワッピングと称する。)が行われ、主メ
モリ33にはハードディスク装置34に記憶されている
データのうちの一部が格納されるようになっている。上
記主メモリ33には、また、論理アドレスの上位ビット
を構成する論理ページ番号と、物理アドレスの上位ビッ
トを構成する物理ページ番号とを対応付けるページテー
ブル35が格納されるようになっている。
4との間では、ページと称される所定量単位でデータの
交換(以下、スワッピングと称する。)が行われ、主メ
モリ33にはハードディスク装置34に記憶されている
データのうちの一部が格納されるようになっている。上
記主メモリ33には、また、論理アドレスの上位ビット
を構成する論理ページ番号と、物理アドレスの上位ビッ
トを構成する物理ページ番号とを対応付けるページテー
ブル35が格納されるようになっている。
【0007】また、アドレス変換用高速バッファ32は
、ページテーブル35の一部を保持し、CPU31から
出力された論理ページ番号を物理ページ番号に変換する
もので、より詳しくは、図4に示すように論理ページ番
号部41と、比較部42と、物理ページ番号部43とが
設けられて構成されている。上記論理ページ番号部41
および物理ページ番号部43は、それぞれページテーブ
ル35における論理ページ番号または物理ページ番号を
エントリとして保持するものである。比較部42は、C
PU31から出力される論理ページ番号と論理ページ番
号部41内の各エントリとを比較し、一致するエントリ
に対応する物理ページ番号部43内のエントリを物理ペ
ージ番号として物理ページ番号部43に出力させるもの
である。
、ページテーブル35の一部を保持し、CPU31から
出力された論理ページ番号を物理ページ番号に変換する
もので、より詳しくは、図4に示すように論理ページ番
号部41と、比較部42と、物理ページ番号部43とが
設けられて構成されている。上記論理ページ番号部41
および物理ページ番号部43は、それぞれページテーブ
ル35における論理ページ番号または物理ページ番号を
エントリとして保持するものである。比較部42は、C
PU31から出力される論理ページ番号と論理ページ番
号部41内の各エントリとを比較し、一致するエントリ
に対応する物理ページ番号部43内のエントリを物理ペ
ージ番号として物理ページ番号部43に出力させるもの
である。
【0008】なお、CPU31から出力される論理アド
レスの下位ビットを構成する論理ページ内オフセットは
、そのまま物理ページ内オフセットとして物理ページ番
号と結合され、物理アドレスとして出力されるようにな
っている。ここで、アドレス変換用高速バッファ32に
は、ハードウェア上の制約などから、ページテーブル3
5の一部だけが保持されるように構成されるため、CP
U31から出力される論理ページ番号に一致するエント
リが存在しない場合がある。 この場合には、ページ
テーブル35における必要な部分が読み出され、新たな
エントリとしてアドレス変換用高速バッファ32に保持
された後、上記のような変換が行われるようになってい
るが、このような動作が行われると、アドレス変換時間
が長くかかり、それゆえ、アクセス時間がかえって増大
することになる。
レスの下位ビットを構成する論理ページ内オフセットは
、そのまま物理ページ内オフセットとして物理ページ番
号と結合され、物理アドレスとして出力されるようにな
っている。ここで、アドレス変換用高速バッファ32に
は、ハードウェア上の制約などから、ページテーブル3
5の一部だけが保持されるように構成されるため、CP
U31から出力される論理ページ番号に一致するエント
リが存在しない場合がある。 この場合には、ページ
テーブル35における必要な部分が読み出され、新たな
エントリとしてアドレス変換用高速バッファ32に保持
された後、上記のような変換が行われるようになってい
るが、このような動作が行われると、アドレス変換時間
が長くかかり、それゆえ、アクセス時間がかえって増大
することになる。
【0009】そこで、上記新たなエントリは、所定の時
間の範囲内で最も参照頻度の低いエントリと置き換えら
れて保持されるようになっている。すなわち、CPU3
1によって行われるアクセスは、通常、一度アクセスさ
れたアドレスの付近のアドレスに対して行われる可能性
が非常に高い。換言すれば、アクセス頻度の低い論理ペ
ージほど、再度アクセスされる可能性が低い。それゆえ
、最も参照頻度の低いエントリを新たなエントリと置き
換えることにより、必要なエントリの存在する場合がで
きるだけ多くなるようになっている。
間の範囲内で最も参照頻度の低いエントリと置き換えら
れて保持されるようになっている。すなわち、CPU3
1によって行われるアクセスは、通常、一度アクセスさ
れたアドレスの付近のアドレスに対して行われる可能性
が非常に高い。換言すれば、アクセス頻度の低い論理ペ
ージほど、再度アクセスされる可能性が低い。それゆえ
、最も参照頻度の低いエントリを新たなエントリと置き
換えることにより、必要なエントリの存在する場合がで
きるだけ多くなるようになっている。
【0010】
【発明が解決しようとする課題】ところで、上記のよう
なアドレス変換装置は、CPUから出力される論理アド
レスの変換だけでなく、ネットワークコントローラやハ
ードディスクコントローラ等の複数の周辺コントローラ
などから出力される論理アドレスと物理アドレスとの対
応付けを行うために用いられることがある。
なアドレス変換装置は、CPUから出力される論理アド
レスの変換だけでなく、ネットワークコントローラやハ
ードディスクコントローラ等の複数の周辺コントローラ
などから出力される論理アドレスと物理アドレスとの対
応付けを行うために用いられることがある。
【0011】しかしながら、このような場合、前記エン
トリの置き換えが頻繁に発生してアクセス速度が低下し
がちであるうえ、アドレス変換用高速バッファにおける
エントリを保持する領域が有効に活用されないという問
題点を有していた。すなわち、例えばネットワークコン
トローラが取り扱うアドレス空間はCPUが取り扱うア
ドレス空間に比べて狭い。それゆえ、ネットワークコン
トローラによってアクセスが行われる際には、常に所定
の限られた範囲のアドレスが出力される。
トリの置き換えが頻繁に発生してアクセス速度が低下し
がちであるうえ、アドレス変換用高速バッファにおける
エントリを保持する領域が有効に活用されないという問
題点を有していた。すなわち、例えばネットワークコン
トローラが取り扱うアドレス空間はCPUが取り扱うア
ドレス空間に比べて狭い。それゆえ、ネットワークコン
トローラによってアクセスが行われる際には、常に所定
の限られた範囲のアドレスが出力される。
【0012】ところが、これらのネットワークコントロ
ーラによるアクセス自体の頻度が少ないと、対応するエ
ントリの参照頻度が低いことになるので、前記のように
CPUによるアクセス等により新たなエントリと置き換
えられてしまい、必要なエントリがアドレス変換用高速
バッファに保持されていない場合が多くなる。それゆえ
、ネットワークコントローラによるアクセスが行われる
ごとに、エントリの置き換えが発生しがちになり、した
がってアクセス速度が低下することになる。
ーラによるアクセス自体の頻度が少ないと、対応するエ
ントリの参照頻度が低いことになるので、前記のように
CPUによるアクセス等により新たなエントリと置き換
えられてしまい、必要なエントリがアドレス変換用高速
バッファに保持されていない場合が多くなる。それゆえ
、ネットワークコントローラによるアクセスが行われる
ごとに、エントリの置き換えが発生しがちになり、した
がってアクセス速度が低下することになる。
【0013】また、ハードディスクコントローラの制御
によってハードディスク装置と主メモリとの間でデータ
のスワッピングが行われる際には、論理アドレスと実ア
ドレスとの対応関係が変更されるので、ページテーブル
が書き換えられるとともに新たなエントリがアドレス変
換用高速バッファに保持され、また、ページテーブルに
おける書き換えられる前のエントリがアドレス変換用高
速バッファに保持されていた場合には、そのエントリが
無効にされる。
によってハードディスク装置と主メモリとの間でデータ
のスワッピングが行われる際には、論理アドレスと実ア
ドレスとの対応関係が変更されるので、ページテーブル
が書き換えられるとともに新たなエントリがアドレス変
換用高速バッファに保持され、また、ページテーブルに
おける書き換えられる前のエントリがアドレス変換用高
速バッファに保持されていた場合には、そのエントリが
無効にされる。
【0014】ところで、上記スワッピングは、同一の論
理アドレスのデータについて連続して行われることはほ
とんどない。それゆえ、スワッピングによってアドレス
変換用高速バッファに保持されたエントリがその後のス
ワッピングによって再度参照されることもほとんどない
。ところが、スワッピングによって保持されたエントリ
は、スワッピングが行われてからある程度の時間が経過
するまではアクセス頻度が高いことになるので、他のエ
ントリと置き換えられることなく保持されていることが
多くなる。すなわち、アドレス変換用高速バッファにお
けるエントリを保持する領域が有効に活用されないこと
になるうえ、そのために、アドレス変換用高速バッファ
にCPU等によるアクセスに必要なエントリの保持され
ていない場合が多くなり、エントリの置き換えが頻繁に
発生しがちになって、やはりアクセス速度が低下するこ
とになる。
理アドレスのデータについて連続して行われることはほ
とんどない。それゆえ、スワッピングによってアドレス
変換用高速バッファに保持されたエントリがその後のス
ワッピングによって再度参照されることもほとんどない
。ところが、スワッピングによって保持されたエントリ
は、スワッピングが行われてからある程度の時間が経過
するまではアクセス頻度が高いことになるので、他のエ
ントリと置き換えられることなく保持されていることが
多くなる。すなわち、アドレス変換用高速バッファにお
けるエントリを保持する領域が有効に活用されないこと
になるうえ、そのために、アドレス変換用高速バッファ
にCPU等によるアクセスに必要なエントリの保持され
ていない場合が多くなり、エントリの置き換えが頻繁に
発生しがちになって、やはりアクセス速度が低下するこ
とになる。
【0015】本発明は上記の点に鑑み、エントリの置き
換えの発生頻度を小さく抑えてアクセス速度を向上させ
るとともに、アドレス変換用高速バッファにおけるエン
トリを保持する領域が有効に活用されるアドレス変換装
置およびアドレス変換方法の提供を目的としている。
換えの発生頻度を小さく抑えてアクセス速度を向上させ
るとともに、アドレス変換用高速バッファにおけるエン
トリを保持する領域が有効に活用されるアドレス変換装
置およびアドレス変換方法の提供を目的としている。
【0016】
【課題を解決するための手段】上記目的を達成するため
、本発明は、被アクセス手段をアクセスする複数のアク
セス手段が発生する第1群のアドレスを、被アクセス手
段に実際に割り当てられている第2群のアドレスに変換
するアドレス変換装置であって、第1群のアドレスと第
2群のアドレスとの対応関係のうちの少なくとも一部を
保持してアドレス変換を行うアドレス変換手段と、変換
しようとする第1群のアドレスと第2群のアドレスとの
対応関係が前記アドレス変換手段に保持されていない場
合に、アドレス変換手段における各アクセス手段ごとに
割り当てられた所定の領域に前記対応関係を保持させる
対応関係制御手段とを備えたことを特徴としている。
、本発明は、被アクセス手段をアクセスする複数のアク
セス手段が発生する第1群のアドレスを、被アクセス手
段に実際に割り当てられている第2群のアドレスに変換
するアドレス変換装置であって、第1群のアドレスと第
2群のアドレスとの対応関係のうちの少なくとも一部を
保持してアドレス変換を行うアドレス変換手段と、変換
しようとする第1群のアドレスと第2群のアドレスとの
対応関係が前記アドレス変換手段に保持されていない場
合に、アドレス変換手段における各アクセス手段ごとに
割り当てられた所定の領域に前記対応関係を保持させる
対応関係制御手段とを備えたことを特徴としている。
【0017】
【作用】上記構成によれば、アドレス変換手段は、第1
群のアドレスと第2群のアドレスとの対応関係のうちの
少なくとも一部を保持してアドレス変換を行い、対応関
係制御手段は、変換しようとする第1群のアドレスと第
2群のアドレスとの対応関係が前記アドレス変換手段に
保持されていない場合に、アドレス変換手段における各
アクセス手段ごとに割り当てられた所定の領域に前記対
応関係を保持させる。
群のアドレスと第2群のアドレスとの対応関係のうちの
少なくとも一部を保持してアドレス変換を行い、対応関
係制御手段は、変換しようとする第1群のアドレスと第
2群のアドレスとの対応関係が前記アドレス変換手段に
保持されていない場合に、アドレス変換手段における各
アクセス手段ごとに割り当てられた所定の領域に前記対
応関係を保持させる。
【0018】
【実施例】以下本発明の実施例を図面を用いて詳細に説
明する。図1は本発明の一実施例におけるアドレス変換
装置を備えた情報処理システムのブロック図である。同
図に示すように、情報処理システムは、ネットワーク1
に接続されたネットワークコントローラ2と、ハードデ
ィスク装置3に接続されたハードディスクコントローラ
4と、CPU5と、調停部6と、アドレス変換用高速バ
ッファ7と、アドレスバス8と、主メモリ12およびI
/Oレジスタ13から成るデータ格納部11とが設けら
れて構成されている。
明する。図1は本発明の一実施例におけるアドレス変換
装置を備えた情報処理システムのブロック図である。同
図に示すように、情報処理システムは、ネットワーク1
に接続されたネットワークコントローラ2と、ハードデ
ィスク装置3に接続されたハードディスクコントローラ
4と、CPU5と、調停部6と、アドレス変換用高速バ
ッファ7と、アドレスバス8と、主メモリ12およびI
/Oレジスタ13から成るデータ格納部11とが設けら
れて構成されている。
【0019】上記調停部6は、ネットワークコントロー
ラ2等から同時にアドレスが出力されることのないよう
に、ネットワークコントローラ2等からのデータ転送要
求信号に応じて、いずれか一つだけにデータ転送許可信
号を出力するとともに、アドレス変換用高速バッファ7
に、後述するネットワークコントローラ用論理ページ番
号部21a等を選択するための選択信号を出力するよう
になっている。
ラ2等から同時にアドレスが出力されることのないよう
に、ネットワークコントローラ2等からのデータ転送要
求信号に応じて、いずれか一つだけにデータ転送許可信
号を出力するとともに、アドレス変換用高速バッファ7
に、後述するネットワークコントローラ用論理ページ番
号部21a等を選択するための選択信号を出力するよう
になっている。
【0020】主メモリ12とハードディスク装置3との
間では、ページと称される所定量単位でデータの交換(
以下、スワッピングと称する。)が行われ、主メモリ1
2にはハードディスク装置3に記憶されているデータの
うちの一部が格納されるようになっている。主メモリ1
2には、また、全ての論理アドレスの上位ビットを構成
する論理ページ番号と、物理アドレスの上位ビットを構
成する物理ページ番号とを対応付けるページテーブル1
4が格納されるようになっている。
間では、ページと称される所定量単位でデータの交換(
以下、スワッピングと称する。)が行われ、主メモリ1
2にはハードディスク装置3に記憶されているデータの
うちの一部が格納されるようになっている。主メモリ1
2には、また、全ての論理アドレスの上位ビットを構成
する論理ページ番号と、物理アドレスの上位ビットを構
成する物理ページ番号とを対応付けるページテーブル1
4が格納されるようになっている。
【0021】また、アドレス変換用高速バッファ7は、
対応関係にある論理ページ番号と物理ページ番号とをエ
ントリとして保持し、CPU5等から出力された論理ペ
ージ番号を物理ページ番号に変換するもので、より詳し
くは、図2に示すように論理ページ番号部21、比較部
22、および物理ページ番号部23が設けられて構成さ
れている。
対応関係にある論理ページ番号と物理ページ番号とをエ
ントリとして保持し、CPU5等から出力された論理ペ
ージ番号を物理ページ番号に変換するもので、より詳し
くは、図2に示すように論理ページ番号部21、比較部
22、および物理ページ番号部23が設けられて構成さ
れている。
【0022】論理ページ番号部21は、ネットワークコ
ントローラ用論理ページ番号部21a、ハードディスク
コントローラ用論理ページ番号部21b、およびCPU
用論理ページ番号部21cから構成される一方、物理ペ
ージ番号部23は、ネットワークコントローラ用物理ペ
ージ番号部23a、ハードディスクコントローラ用物理
ページ番号部23b、およびCPU用物理ページ番号部
23cから構成されている。
ントローラ用論理ページ番号部21a、ハードディスク
コントローラ用論理ページ番号部21b、およびCPU
用論理ページ番号部21cから構成される一方、物理ペ
ージ番号部23は、ネットワークコントローラ用物理ペ
ージ番号部23a、ハードディスクコントローラ用物理
ページ番号部23b、およびCPU用物理ページ番号部
23cから構成されている。
【0023】上記ネットワークコントローラ用論理ペー
ジ番号部21a、およびネットワークコントローラ用物
理ページ番号部23aは、例えばページサイズが8Kバ
イト、ネットワークコントローラ2から出力されるアド
レスのアドレス空間が16Kバイトとすると、16/8
=2組のエントリ、すなわちネットワークコントローラ
2が取り扱う全アドレス空間分のエントリを保持し得る
ように構成されている。このエントリは情報処理システ
ムの初期設定時にCPU5の制御によって設定され、そ
の後は変更されないようになっている。
ジ番号部21a、およびネットワークコントローラ用物
理ページ番号部23aは、例えばページサイズが8Kバ
イト、ネットワークコントローラ2から出力されるアド
レスのアドレス空間が16Kバイトとすると、16/8
=2組のエントリ、すなわちネットワークコントローラ
2が取り扱う全アドレス空間分のエントリを保持し得る
ように構成されている。このエントリは情報処理システ
ムの初期設定時にCPU5の制御によって設定され、そ
の後は変更されないようになっている。
【0024】ハードディスクコントローラ用論理ページ
番号部21b、およびハードディスクコントローラ用物
理ページ番号部23bは、例えばページサイズが8Kバ
イト、1回のデータ転送による最大転送量が64Kバイ
トとすると、64/8=8組のエントリ、すなわち1回
のデータ転送で参照されるすべてのエントリを保持し得
るように構成されている。このエントリはデータ転送開
始時ごとにCPU5の制御によって設定されるようにな
っている。
番号部21b、およびハードディスクコントローラ用物
理ページ番号部23bは、例えばページサイズが8Kバ
イト、1回のデータ転送による最大転送量が64Kバイ
トとすると、64/8=8組のエントリ、すなわち1回
のデータ転送で参照されるすべてのエントリを保持し得
るように構成されている。このエントリはデータ転送開
始時ごとにCPU5の制御によって設定されるようにな
っている。
【0025】CPU用論理ページ番号部21c、および
CPU用物理ページ番号部23cは、情報処理システム
の用途等に応じた所定量のエントリを保持し得るように
構成され、ページテーブル14の一部が保持されるよう
になっている。また、CPU5から出力される論理ペー
ジ番号に一致するエントリがCPU用論理ページ番号部
21cに存在しない場合には、ページテーブル14にお
ける必要な部分が読み出され、CPU用論理ページ番号
部21cおよびCPU用物理ページ番号部23cに新た
なエントリとして設定されるようになっている。
CPU用物理ページ番号部23cは、情報処理システム
の用途等に応じた所定量のエントリを保持し得るように
構成され、ページテーブル14の一部が保持されるよう
になっている。また、CPU5から出力される論理ペー
ジ番号に一致するエントリがCPU用論理ページ番号部
21cに存在しない場合には、ページテーブル14にお
ける必要な部分が読み出され、CPU用論理ページ番号
部21cおよびCPU用物理ページ番号部23cに新た
なエントリとして設定されるようになっている。
【0026】比較部22は、ネットワークコントローラ
用比較部22a、ハードディスクコントローラ用比較部
22b、およびCPU用比較部22cから構成され、調
停部6からの選択信号に応じていずれか一つの比較部2
2a〜22cが選択され、CPU5等から出力される論
理ページ番号とCPU用論理ページ番号部21c等内の
各エントリとを比較し、一致するエントリに対応するC
PU用物理ページ番号部23c等内のエントリを物理ペ
ージ番号としてCPU用物理ページ番号部23c等に出
力させるようになっている。
用比較部22a、ハードディスクコントローラ用比較部
22b、およびCPU用比較部22cから構成され、調
停部6からの選択信号に応じていずれか一つの比較部2
2a〜22cが選択され、CPU5等から出力される論
理ページ番号とCPU用論理ページ番号部21c等内の
各エントリとを比較し、一致するエントリに対応するC
PU用物理ページ番号部23c等内のエントリを物理ペ
ージ番号としてCPU用物理ページ番号部23c等に出
力させるようになっている。
【0027】なお、CPU5等から出力される論理アド
レスの下位ビットを構成する論理ページ内オフセットは
、そのまま物理ページ内オフセットとして物理ページ番
号と結合され、物理アドレスとして出力されるようにな
っている。上記の構成において、ネットワークコントロ
ーラ2がデータ格納部11をアクセスする際には、ネッ
トワークコントローラ2は、まず調停部6にデータ転送
要求信号を出力する。
レスの下位ビットを構成する論理ページ内オフセットは
、そのまま物理ページ内オフセットとして物理ページ番
号と結合され、物理アドレスとして出力されるようにな
っている。上記の構成において、ネットワークコントロ
ーラ2がデータ格納部11をアクセスする際には、ネッ
トワークコントローラ2は、まず調停部6にデータ転送
要求信号を出力する。
【0028】調停部6は、CPU5等から同時にデータ
転送要求信号が出力されていなければネットワークコン
トローラ2にデータ転送許可信号を出力するとともに、
アドレス変換用高速バッファ7にネットワークコントロ
ーラ用論理ページ番号部21a、ネットワークコントロ
ーラ用比較部22a、およびネットワークコントローラ
用物理ページ番号部23aを選択するための選択信号を
出力する。
転送要求信号が出力されていなければネットワークコン
トローラ2にデータ転送許可信号を出力するとともに、
アドレス変換用高速バッファ7にネットワークコントロ
ーラ用論理ページ番号部21a、ネットワークコントロ
ーラ用比較部22a、およびネットワークコントローラ
用物理ページ番号部23aを選択するための選択信号を
出力する。
【0029】そこでネットワークコントローラ2が論理
アドレスを出力すると、ネットワークコントローラ用比
較部22aは、その上位ビットの論理ページ番号をネッ
トワークコントローラ用論理ページ番号部21a内のエ
ントリと比較する。ここで、ネットワークコントローラ
用論理ページ番号部21aには、前記のようにネットワ
ークコントローラ2から出力される全ての論理ページ番
号のエントリがあらかじめ設定され、ネットワークコン
トローラ2のアクセスなどによって置き換えられること
はないので、必ず何れかのエントリが一致し、高速なア
ドレス変換が行われる。また、ハードディスクコントロ
ーラ用論理ページ番号部21bやCPU用論理ページ番
号部21c等のエントリの置き換えが生じることもない
。
アドレスを出力すると、ネットワークコントローラ用比
較部22aは、その上位ビットの論理ページ番号をネッ
トワークコントローラ用論理ページ番号部21a内のエ
ントリと比較する。ここで、ネットワークコントローラ
用論理ページ番号部21aには、前記のようにネットワ
ークコントローラ2から出力される全ての論理ページ番
号のエントリがあらかじめ設定され、ネットワークコン
トローラ2のアクセスなどによって置き換えられること
はないので、必ず何れかのエントリが一致し、高速なア
ドレス変換が行われる。また、ハードディスクコントロ
ーラ用論理ページ番号部21bやCPU用論理ページ番
号部21c等のエントリの置き換えが生じることもない
。
【0030】ネットワークコントローラ用物理ページ番
号部23aは、上記一致したエントリに対応するエント
リを物理ページ番号として出力し、論理ページ内オフセ
ット(=物理ページ内オフセット)と結合されて物理ア
ドレスとして出力され、データ格納部11の主メモリ1
2がアクセスされる。また、ハードディスクコントロー
ラ4を介して主メモリ12とハードディスク装置3との
間でスワッピングが行われる場合には、まず、CPU5
がデータ転送に用いられるエントリをハードディスクコ
ントローラ用論理ページ番号部21bおよびハードディ
スクコントローラ用物理ページ番号部23bに設定する
。すなわち、ネットワークコントローラ用論理ページ番
号部21aやCPU用論理ページ番号部21c等のエン
トリが新たなエントリに置き換えられることはない。 しかも、新たなエントリは、ハードディスクコントロー
ラ用論理ページ番号部21b、およびハードディスクコ
ントローラ用物理ページ番号部23bにおける以前のス
ワッピングが行われる際に用いられたエントリと置き換
えられるので、エントリを保持する領域は有効に活用さ
れることになる。
号部23aは、上記一致したエントリに対応するエント
リを物理ページ番号として出力し、論理ページ内オフセ
ット(=物理ページ内オフセット)と結合されて物理ア
ドレスとして出力され、データ格納部11の主メモリ1
2がアクセスされる。また、ハードディスクコントロー
ラ4を介して主メモリ12とハードディスク装置3との
間でスワッピングが行われる場合には、まず、CPU5
がデータ転送に用いられるエントリをハードディスクコ
ントローラ用論理ページ番号部21bおよびハードディ
スクコントローラ用物理ページ番号部23bに設定する
。すなわち、ネットワークコントローラ用論理ページ番
号部21aやCPU用論理ページ番号部21c等のエン
トリが新たなエントリに置き換えられることはない。 しかも、新たなエントリは、ハードディスクコントロー
ラ用論理ページ番号部21b、およびハードディスクコ
ントローラ用物理ページ番号部23bにおける以前のス
ワッピングが行われる際に用いられたエントリと置き換
えられるので、エントリを保持する領域は有効に活用さ
れることになる。
【0031】その後、上記ネットワークコントローラ2
によるアクセスの場合と同様に、調停部6からの選択信
号によってハードディスクコントローラ用論理ページ番
号部21b、ハードディスクコントローラ用比較部22
b、およびハードディスクコントローラ用物理ページ番
号部23bが選択され、ハードディスクコントローラ用
比較部22bが、ハードディスクコントローラ4から出
力された論理ページ番号とハードディスクコントローラ
用論理ページ番号部21b内のエントリとを比較し、ハ
ードディスクコントローラ用物理ページ番号部23bは
物理ページ番号を出力して、物理アドレスによる主メモ
リ12のアクセスによりデータ転送が行われる。
によるアクセスの場合と同様に、調停部6からの選択信
号によってハードディスクコントローラ用論理ページ番
号部21b、ハードディスクコントローラ用比較部22
b、およびハードディスクコントローラ用物理ページ番
号部23bが選択され、ハードディスクコントローラ用
比較部22bが、ハードディスクコントローラ4から出
力された論理ページ番号とハードディスクコントローラ
用論理ページ番号部21b内のエントリとを比較し、ハ
ードディスクコントローラ用物理ページ番号部23bは
物理ページ番号を出力して、物理アドレスによる主メモ
リ12のアクセスによりデータ転送が行われる。
【0032】ここで、スワッピングが行われている際中
に例えばネットワークコントローラ2やCPU5による
割り込み処理等が行われたとしても、ハードディスクコ
ントローラ用論理ページ番号部21bおよびハードディ
スクコントローラ用物理ページ番号部23bのエントリ
が置き換えられることはないので、スワッピングが完了
するまでアドレス変換は高速に行われる。
に例えばネットワークコントローラ2やCPU5による
割り込み処理等が行われたとしても、ハードディスクコ
ントローラ用論理ページ番号部21bおよびハードディ
スクコントローラ用物理ページ番号部23bのエントリ
が置き換えられることはないので、スワッピングが完了
するまでアドレス変換は高速に行われる。
【0033】一方、CPU5がデータ格納部11をアク
セスする際には、前記ネットワークコントローラ2によ
るアクセスの場合と同様に、CPU用比較部22cが、
CPU5から出力された論理ページ番号とCPU用論理
ページ番号部21c内のエントリとを比較し、CPU用
物理ページ番号部23cは物理ページ番号を出力して、
物理アドレスによる主メモリ12またはI/Oレジスタ
13のアクセスが行われる。
セスする際には、前記ネットワークコントローラ2によ
るアクセスの場合と同様に、CPU用比較部22cが、
CPU5から出力された論理ページ番号とCPU用論理
ページ番号部21c内のエントリとを比較し、CPU用
物理ページ番号部23cは物理ページ番号を出力して、
物理アドレスによる主メモリ12またはI/Oレジスタ
13のアクセスが行われる。
【0034】ここで、上記比較によって一致するエント
リが存在しない場合には、ページテーブル14における
必要な部分が読み出され、新たなエントリとして、CP
U用論理ページ番号部21cおよびCPU用物理ページ
番号部23cにおける、所定の時間の範囲内で最も参照
頻度の低いエントリと置き換えられる。すなわち、ネッ
トワークコントローラ用論理ページ番号部21aやハー
ドディスクコントローラ用論理ページ番号部21b等の
エントリを置き換えてネットワークコントローラ2等の
アクセス時間を増大させることはない。また、前記のよ
うにネットワークコントローラ2、またはハードディス
クコントローラ4のアクセスなどによってエントリの置
き換えが生じることもないので、参照される可能性の高
いエントリが常に保持され、高速なアドレス変換が行わ
れることになる。
リが存在しない場合には、ページテーブル14における
必要な部分が読み出され、新たなエントリとして、CP
U用論理ページ番号部21cおよびCPU用物理ページ
番号部23cにおける、所定の時間の範囲内で最も参照
頻度の低いエントリと置き換えられる。すなわち、ネッ
トワークコントローラ用論理ページ番号部21aやハー
ドディスクコントローラ用論理ページ番号部21b等の
エントリを置き換えてネットワークコントローラ2等の
アクセス時間を増大させることはない。また、前記のよ
うにネットワークコントローラ2、またはハードディス
クコントローラ4のアクセスなどによってエントリの置
き換えが生じることもないので、参照される可能性の高
いエントリが常に保持され、高速なアドレス変換が行わ
れることになる。
【0035】なお、上記のようにエントリの参照、およ
び置き換えを、ネットワークコントローラ2等に対応す
るネットワークコントローラ用論理ページ番号部21a
やネットワークコントローラ用物理ページ番号部23a
等に対してだけ行う場合には、それぞれ独立したアドレ
ス空間を持たせることもできるし、また、アドレス変換
用高速バッファ7を複数に分割して別個に設けることも
できる。
び置き換えを、ネットワークコントローラ2等に対応す
るネットワークコントローラ用論理ページ番号部21a
やネットワークコントローラ用物理ページ番号部23a
等に対してだけ行う場合には、それぞれ独立したアドレ
ス空間を持たせることもできるし、また、アドレス変換
用高速バッファ7を複数に分割して別個に設けることも
できる。
【0036】一方、例えばCPU5のアクセスが行われ
る場合に、エントリの置き換えだけが、CPU用論理ペ
ージ番号部21cおよびCPU用物理ページ番号部23
cに限定されるようにして、アドレス変換はハードディ
スクコントローラ用論理ページ番号部21b等をも参照
し得るようにしてもよい。また、アドレス変換用高速バ
ッファ7には、ネットワークコントローラ2、ハードデ
ィスクコントローラ4、およびCPU5に限らず、さら
に他の複数の周辺コントローラ等が接続されるようにし
てもよい。
る場合に、エントリの置き換えだけが、CPU用論理ペ
ージ番号部21cおよびCPU用物理ページ番号部23
cに限定されるようにして、アドレス変換はハードディ
スクコントローラ用論理ページ番号部21b等をも参照
し得るようにしてもよい。また、アドレス変換用高速バ
ッファ7には、ネットワークコントローラ2、ハードデ
ィスクコントローラ4、およびCPU5に限らず、さら
に他の複数の周辺コントローラ等が接続されるようにし
てもよい。
【0037】また、ネットワークコントローラ用論理ペ
ージ番号部21a等へのエントリの設定はCPU5の制
御により行われるように構成された例を示したが、これ
に限らず例えば専用のマネジメントユニットなどを設け
るようにしてもよい。
ージ番号部21a等へのエントリの設定はCPU5の制
御により行われるように構成された例を示したが、これ
に限らず例えば専用のマネジメントユニットなどを設け
るようにしてもよい。
【0038】
【発明の効果】以上説明したように、本発明によれば、
変換しようとする第1群のアドレスと第2群のアドレス
との対応関係がアドレス変換手段に保持されていない場
合に、アドレス変換手段における各アクセス手段ごとに
割り当てられた所定の領域に前記対応関係を保持させる
対応関係制御手段を備えていることにより、各アクセス
手段のアクセスによって新たな対応関係が保持される場
合でも、その新たな対応関係が、他のアクセス手段によ
るアクセス時のアドレス変換に必要な対応関係と置き換
えられることはないので、対応関係の置き換えの発生頻
度を小さく抑えてアクセス速度を向上させることができ
、しかも、アドレス変換手段における対応関係を保持す
る領域の容量は、各アクセス手段ごとに必要最小限の容
量に設定することができるという効果を奏する。
変換しようとする第1群のアドレスと第2群のアドレス
との対応関係がアドレス変換手段に保持されていない場
合に、アドレス変換手段における各アクセス手段ごとに
割り当てられた所定の領域に前記対応関係を保持させる
対応関係制御手段を備えていることにより、各アクセス
手段のアクセスによって新たな対応関係が保持される場
合でも、その新たな対応関係が、他のアクセス手段によ
るアクセス時のアドレス変換に必要な対応関係と置き換
えられることはないので、対応関係の置き換えの発生頻
度を小さく抑えてアクセス速度を向上させることができ
、しかも、アドレス変換手段における対応関係を保持す
る領域の容量は、各アクセス手段ごとに必要最小限の容
量に設定することができるという効果を奏する。
【図1】本発明の一実施例におけるアドレス変換装置を
備えた情報処理システムの構成を示すブロック図である
。
備えた情報処理システムの構成を示すブロック図である
。
【図2】同アドレス変換用高速バッファの詳細な構成を
示すブロック図である。
示すブロック図である。
【図3】従来のアドレス変換装置を備えた情報処理シス
テムの構成を示すブロック図である。
テムの構成を示すブロック図である。
【図4】同アドレス変換用高速バッファの詳細な構成を
示すブロック図である。
示すブロック図である。
1 ネットワーク
2 ネットワークコントローラ
3 ハードディスク装置
4 ハードディスクコントローラ5 CP
U 6 調停部 7 アドレス変換用高速バッファ8 アド
レスバス 11 データ格納部 12 主メモリ 13 I/Oレジスタ 14 ページテーブル 21 論理ページ番号部 21a ネットワークコントローラ用論理ページ番号
部21b ハードディスクコントローラ用論理ページ
番号部 21c CPU用論理ページ番号部 22 比較部 22a ネットワークコントローラ用比較部22b
ハードディスクコントローラ用比較部22c CP
U用比較部 23 物理ページ番号部 23a ネットワークコントローラ用物理ページ番号
部23b ハードディスクコントローラ用物理ページ
番号部 23c CPU用物理ページ番号部
U 6 調停部 7 アドレス変換用高速バッファ8 アド
レスバス 11 データ格納部 12 主メモリ 13 I/Oレジスタ 14 ページテーブル 21 論理ページ番号部 21a ネットワークコントローラ用論理ページ番号
部21b ハードディスクコントローラ用論理ページ
番号部 21c CPU用論理ページ番号部 22 比較部 22a ネットワークコントローラ用比較部22b
ハードディスクコントローラ用比較部22c CP
U用比較部 23 物理ページ番号部 23a ネットワークコントローラ用物理ページ番号
部23b ハードディスクコントローラ用物理ページ
番号部 23c CPU用物理ページ番号部
Claims (7)
- 【請求項1】 被アクセス手段をアクセスする複数の
アクセス手段が発生する第1群のアドレスを、被アクセ
ス手段に実際に割り当てられている第2群のアドレスに
変換するアドレス変換装置であって、第1群のアドレス
と第2群のアドレスとの対応関係のうちの少なくとも一
部を保持してアドレス変換を行うアドレス変換手段と、
変換しようとする第1群のアドレスと第2群のアドレス
との対応関係が前記アドレス変換手段に保持されていな
い場合に、アドレス変換手段における各アクセス手段ご
とに割り当てられた所定の領域に前記対応関係を保持さ
せる対応関係制御手段とを備えたことを特徴とするアド
レス変換装置。 - 【請求項2】 少なくとも1つのアクセス手段が発生
する前記第1群のアドレスのアドレス空間は、他のアク
セス手段が発生する第1群のアドレスのアドレス空間と
は独立したアドレス空間であることを特徴とする請求項
1のアドレス変換装置。 - 【請求項3】 少なくとも1つのアクセス手段に応じ
た前記対応関係を、所定の初期設定時に、前記アドレス
変換手段に保持させる対応関係初期制御手段を備えたこ
とを特徴とする請求項1のアドレス変換装置。 - 【請求項4】 アクセス手段によってデータ転送が開
始される際に、そのデータ転送に応じた前記対応関係を
前記アドレス変換手段に保持させる対応関係データ転送
時制御手段を備えたことを特徴とする請求項1のアドレ
ス変換装置。 - 【請求項5】 被アクセス手段をアクセスする複数の
アクセス手段が発生する第1群のアドレスを、被アクセ
ス手段に実際に割り当てられている第2群のアドレスに
変換するアドレス変換方法であって、アドレス変換手段
に、第1群のアドレスと第2群のアドレスとの対応関係
のうちの少なくとも一部を保持させてアドレス変換を行
わせるとともに、変換させようとする第1群のアドレス
と第2群のアドレスとの対応関係が前記アドレス変換手
段に保持されていない場合に、アドレス変換手段におけ
る各アクセス手段ごとに割り当てられた所定の領域に前
記対応関係を保持させることを特徴とするアドレス変換
方法。 - 【請求項6】 少なくとも1つのアクセス手段に応じ
た前記対応関係を、所定の初期設定時に、前記アドレス
変換手段に保持させることを特徴とする請求項5のアド
レス変換方法。 - 【請求項7】 アクセス手段によってデータ転送が開
始される際に、そのデータ転送に応じた前記対応関係を
前記アドレス変換手段に保持させることを特徴とする請
求項5のアドレス変換方法。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP3132654A JPH04358242A (ja) | 1991-06-04 | 1991-06-04 | アドレス変換装置およびアドレス変換方法 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP3132654A JPH04358242A (ja) | 1991-06-04 | 1991-06-04 | アドレス変換装置およびアドレス変換方法 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH04358242A true JPH04358242A (ja) | 1992-12-11 |
Family
ID=15086380
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP3132654A Pending JPH04358242A (ja) | 1991-06-04 | 1991-06-04 | アドレス変換装置およびアドレス変換方法 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH04358242A (ja) |
-
1991
- 1991-06-04 JP JP3132654A patent/JPH04358242A/ja active Pending
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP4562919B2 (ja) | ダイナミック・ディスプレイ・メモリを実装するための方法および装置 | |
| KR960001946B1 (ko) | 우선 변환 참조버퍼 | |
| US5754818A (en) | Architecture and method for sharing TLB entries through process IDS | |
| EP0208428B1 (en) | Direct input/output in a virtual memory system | |
| US4218743A (en) | Address translation apparatus | |
| US5386524A (en) | System for accessing information in a data processing system | |
| CA2026224C (en) | Apparatus for maintaining consistency in a multiprocess computer system using virtual caching | |
| US4654777A (en) | Segmented one and two level paging address translation system | |
| US5864876A (en) | DMA device with local page table | |
| JP3666689B2 (ja) | 仮想アドレス変換方法 | |
| JP2974526B2 (ja) | データ転送処理方法及びデータ転送処理装置 | |
| US5182805A (en) | Method and system for determining copy-on-write condition | |
| US5860144A (en) | Addressing method and system for providing access of a very large size physical memory buffer to a number of processes | |
| JPH02189659A (ja) | 仮想記憶動的アドレス変換システム | |
| JPH1091525A (ja) | 変換索引バッファ及びメモリ管理システム | |
| JPH04320553A (ja) | アドレス変換機構 | |
| US5749093A (en) | Enhanced information processing system using cache memory indication during DMA accessing | |
| US5293622A (en) | Computer system with input/output cache | |
| US7343469B1 (en) | Remapping I/O device addresses into high memory using GART | |
| JPH0312339B2 (ja) | ||
| US20050172049A1 (en) | Data processor | |
| EP0674269B1 (en) | Translation mechanism for input/output addresses | |
| US6766435B1 (en) | Processor with a general register set that includes address translation registers | |
| US7660908B2 (en) | Implementing virtual packet storage via packet work area | |
| JPS6398749A (ja) | デ−タ処理装置 |