JPH0581133A - 情報処理装置 - Google Patents

情報処理装置

Info

Publication number
JPH0581133A
JPH0581133A JP3268328A JP26832891A JPH0581133A JP H0581133 A JPH0581133 A JP H0581133A JP 3268328 A JP3268328 A JP 3268328A JP 26832891 A JP26832891 A JP 26832891A JP H0581133 A JPH0581133 A JP H0581133A
Authority
JP
Japan
Prior art keywords
address
line
page
directory
address conversion
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
JP3268328A
Other languages
English (en)
Inventor
Yoshifumi Fujiwara
芳文 藤原
Chikayuki Katou
周志 加藤
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
NEC Computertechno Ltd
Original Assignee
NEC Corp
NEC Computertechno 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 NEC Corp, NEC Computertechno Ltd filed Critical NEC Corp
Priority to JP3268328A priority Critical patent/JPH0581133A/ja
Priority to EP92116015A priority patent/EP0533190B1/en
Priority to CA 2078635 priority patent/CA2078635A1/en
Priority to DE1992609757 priority patent/DE69209757T2/de
Publication of JPH0581133A publication Critical patent/JPH0581133A/ja
Pending 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
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
    • G06F12/1036Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB] for multiple virtual address spaces, e.g. segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/65Details of virtual memory and virtual address translation
    • G06F2212/652Page size control

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)

Abstract

(57)【要約】 【目的】 論理アドレスから物理アドレスへのアドレス
変換を行なって、主記憶へのアクセスをする情報処理装
置で、システム上に複数のページサイズによるアドレス
が同時に存在できるようにし、各々のページサイズによ
るアドレスをダイナミックに変換する。 【構成】 論理アドレスのページサイズごとに独立して
アドレス変換テーブルを管理する管理手段としてのDR
判定部218、アドレス変換バッファへのアドレス変換
テーブルのロード時にページサイズを指示する指示手段
としてのリクエスト制御部254、主記憶へのメモリア
クセスによるアドレス変換時にアクセスする論理アドレ
スのページサイズを決定する決定手段としてのDR判定
部218を備える。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、情報処理装置に関し、
特に複数のページサイズを備えた、アドレス変換テーブ
ルを管理する管理手段に関する。
【0002】
【従来の技術】図12は、従来の情報処理装置の構成図
である。
【0003】図において、1は命令発行部、2はディレ
クトリ部、3及び6はアドレスレジスタ、4はアドレス
変換バッファ、5は選択器、7は記憶部である。
【0004】アドレス変換バッファ4へのアドレス変換
テーブルのロードは、まず、命令発行部1よりアドレス
変換テーブルロード命令によるリクエスト(以後ATL
RQ:ddress ranslation ta
ble oad uestと称す)が線101
を介し、その制御情報が線102を介し、ディレクトリ
部2へ送られる。ディレクトリ部2はATLRQを受け
ると、線102からの制御情報により更新するディレク
トリを決定し、それによって、アドレス変換バッファ4
への書き込み先頭アドレスを生成し、線201Rを介し
てアドレス変換バッファ4へ送り、該当ディレクトリへ
の部分空間番号の登録を行ない、また、ディレクトリ部
2は、アドレス変換バッファ4へ線202Rを介し、ア
ドレス変換テーブルのロード指示信号を送出し、さら
に、選択器5にも線202Rを介しその指示を行なう。
【0005】命令発行部は、線101のATLRQの送
出に対し、線103を介し、記憶部7上のアドレス変換
テーブルを読み出すためのアドレスを送出する。
【0006】アドレスレジスタ3は線103からのアド
レスを受けると線304を介し選択器5へ送られ、選択
器5は線202Rからの指示により線304からのアド
レスを選択し、アドレスレジスタ6を経由して記憶部7
へ送られる。
【0007】記憶部7からは、制御情報の部分空間番号
に含まれるアドレスのページ数分のアドレス変換情報が
読み出され、線701を介しアドレス変換バッファ4へ
送られる。
【0008】アドレス変換バッファ4は記憶部7から読
み出されたアドレス変換情報を書き込み処理を終了す
る。
【0009】次に記憶部7へアクセスする時の動作につ
いて説明する。
【0010】命令発行部1から線101を介し記憶部7
への読み出しリクエストが発行されると同時に線103
を介し読み出しアドレスがアドレスレジスタ3にセット
される。
【0011】アドレスレジスタ3のアドレスは、部分空
間番号が線301を介しディレクトリ部2へ、線302
を介しページ番号部を、線303を介しページ内アドレ
スをそれぞれ送出する。
【0012】ディレクトリ部2は、線101からのリク
エストにより線301からの部分空間番号でディレクト
リを調べ一致するディレクトリに対応するアドレス変換
バッファ4の読み出しアドレスを生成し、線201を介
して送出する。
【0013】また、線202Rを介し、選択器5にアド
レス変換することを示すことを指示する。線202Rに
よる指示信号は、ディレクトリ部2によりアドレス変換
することを指示するための制御信号である。
【0014】アドレス変換バッファ4は、線201R,
302からのアドレスで論理アドレスに対する物理アド
レスを読み出し、線401を介し選択器5で選択してア
ドレスレジスタ6にセットする。同時に線303からの
アドレスもアドレスレジスタ6にセットする。アドレス
レジスタ6は、線601を介し記憶部7へアクセスしロ
ードデータを線701を介して命令発行部1へ送出する
ようになっていた。
【0015】
【発明が解決しようとする問題点】上述した従来の情報
処理装置は、アドレス空間には、1種のアドレスサイズ
しかないことを前提に構成されていたので、仮想計算機
システムや、記憶部の使用効率を考えてページサイズを
複数種類備え、記憶部へアクセスするアドレスのページ
サイズを動的に変えてアドレス変換することができない
という課題があった。
【0016】本発明は上述の課題に鑑みてなされたもの
であり、複数のページサイズの異なるアドレスをそれぞ
れ独立して管理しアドレス変換をダイナミックに行なえ
る情報処理装置を提供することを目的にしている。
【0017】
【問題点を解決するための手段】本発明の情報処理装置
は、アドレス変換を高速に行なうために、記憶部内に部
分空間単位で格納されている複数のアドレス変換テーブ
ルの写しを複数個保持するアドレス変換テーブル保持手
段と、該アドレス変換テーブル保持手段の1つのエント
リにアドレス変換テーブルロード命令により前記アドレ
ス変換テーブルの1つをロードするように制御するロー
ド制御手段と、アドレス変換テーブル保持手段にロード
した前記各アドレス変換テーブルに対応する部分空間を
管理するディレクトリ管理手段とを有し、該ディレクト
リ管理手段に対し、同一ページサイズの部分空間を一つ
の管理単位とし、アドレス変換テーブルのロード制御を
各々独立して行なうものである。
【0018】また、前記アドレス変換テーブルロード命
令で指示されるページサイズ情報により前記ロード制御
手段を制御し前記アドレス変換テーブル保持手段へアド
レス変換テーブルをロードするものである。
【0019】また、前記ディレクトリ管理手段の各エン
トリには部分空間番号が保持されており、該部分空間番
号と前記記憶部へのアクセスのための論理アドレスの部
分空間番号とが一致することを検出する検出手段と、該
検出手段による検出結果にしたがい物理アドレスの生成
を制御するアドレス生成制御手段とを有している。
【0020】
【作用】上記の構成によれば、本発明の情報処理装置に
おいては、アドレス変換テーブル保持手段が記憶部内に
部分空間単位で格納されている複数のアドレス変換テー
ブルの写しを複数個保持し、ロード制御手段によってア
ドレス変換テーブル保持手段の1つのエントリにアドレ
ス変換テーブルロード命令により、アドレス変換テーブ
ルの1つをロードし、これに対応する部分空間をディレ
クトリ管理手段が同一ページサイズごとに独立して管理
するので複数のページサイズによるアドレス変換をダイ
ナミックに行なうことができる。
【0021】あるいは、アドレス変換テーブルロード命
令で指示されるページサイズ情報によってロード制御手
段が制御されアドレス変換テーブル保持手段へのアドレ
ス変換テーブルのロードが行なわれるのでアドレスのペ
ージサイズごとに、アドレス変換テーブルのロード制御
を独立して行なうことができる。
【0022】あるいは、検出手段によってディレクトリ
管理手段の各エントリに保持する部分空間番号と、記憶
部へのアクセスする論理アドレスの部分空間番号との一
致を検出し、その結果に従ってアドレス生成制御手段が
物理アドレスの生成を制御するので同時に存在する複数
のページサイズによるアドレスをダイナミックに変換す
ることができる。
【0023】
【実施例】次に、本発明について図面を参照して説明す
る。
【0024】図1は、本発明の一実施例である情報処理
装置の構成図である。図において、1は命令発行部、2
はディレクトリ部、3及び6はアドレスレジスタ、4は
アドレス変換バッファ、5は選択器、7は記憶部で構成
される。
【0025】つぎに動作について説明する。
【0026】ここで、2つのページサイズを備えたシス
テムについて、まず、アドレス変換バッファ4へのアド
レス変換テーブルのロード処理について説明すると、ア
ドレス変換テーブルロード命令が命令発行部1で発行さ
れると、線101を介しディレクトリ部2へATLRQ
が送出され、線102を介し制御情報がアドレスレジス
タ3へ、線103を介し記憶部7から読み出すためのア
ドレス変換テーブルの先頭アドレスが送出される。線1
03からのアドレスは、先頭アドレスから+1加算され
てページ数分連続して命令発行部1から送出される。図
5,図6は、2種類のページサイズに対する論理アドレ
スの構成を示しており、図5は128KBのページサイ
ズで、図6は4KBのページサイズであり、アドレス空
間は共に2GBとして示した。
【0027】また、図7は、アドレス変換テーブルロー
ド命令における制御情報のフォーマットである。
【0028】アドレスレジスタ3は線304を介し、選
択器5へアドレスを送出する。
【0029】ディレクトリ部2は、ATLRQを受ける
と制御情報により、ディレクトリへの登録処理を行な
う。
【0030】図2は本発明のディレクトリ部の詳細を示
す図であり、線101からのリクエストはリクエスト制
御部254でデコードされ、ATLRQと判断すると線
2001,2002を介しDR判定部218と選択器2
09に伝える。
【0031】線102からの制御情報は選択器209と
ディレクトリ201−208への部分空間番号が、DR
判定部218へはページサイズ指示ビットが送られる。
【0032】選択器209は、線2002からの信号に
より線102からの部分空間番号を選択し、線2003
を介し図7の部分空間番号部の第5ビットから第10ビ
ットまでの6ビットを、線2004を介し、図7の部分
空間番号部の第0ビットから第10ビットまでの11ビ
ットをそれぞれ比較器210−213及び比較器214
−217に送る。
【0033】ここでディレクトリ201−204及び比
較器210−213は128KB/ページ用の部分空間
番号を保持するディレクトリ部であり、ディレクトリ2
05−208及び比較器214−217は4KB/ペー
ジ用の部分空間番号を保持するディレクトリ部である。
【0034】比較器210はディレクトリ201の部分
空間番号と線2003からの部分空間番号とを比較し結
果をDR判定部218へ送出する。同様に比較器211
−213はディレクトリ202−204と線2003と
を比較しDR判定部219へ送る。
【0035】また、比較器214はディレクトリ205
の部分空間番号と線2004からの部分空間番号とを比
較し結果をDR判定部218へ送出する。同様に比較器
215−217はディレクトリ206−208と線20
04とを各々比較しDR判定部218へ送る。
【0036】DR判定部218は線2001からのAT
LRQ信号によりアドレス変換テーブルへのロード処理
と認識すると線102の部分空間をセットするディレク
トリを決定するため線102のページサイズ指示ビット
と線2013−2020による比較器210−217の
比較結果とにより処理を行なう。
【0037】図3は、本発明の情報処理装置のDR判定
部の詳細図である。図3を参照して、ページサイズ指示
ビットが“0”だと図2の比較器210−213の結果
で一致し、かつ、図3のVbitレジスタ219の情報
が線2050−2053を介しANDゲート220−2
23で有効であると判断すると、選択器234−237
及び一致処理部232に送られる。
【0038】一致処理部232は、ANDゲート220
−223の結果の論理和を生成し、1つでも一致してい
るものがあれば、選択器234−237の全てにAND
ゲート220−223の結果を選択するように指示し、
さらに、ANDゲート220−223のエンコード結果
を線2074を介し選択器243に送る。ANDゲート
220−223の結果で一致するものがない場合は、V
bitレジスタ219の各Vbitで無効になっている
ものをプライオリティエンコーダ228でエンコード
し、その結果を再びデコーダ230でデコードして選択
器234−237で選択する。選択器234−237に
より選択された信号は、インバータ244で線102の
ページサイズ指示信号の反転とANDゲート245−2
48で論理積をとり線2021−2024を介し、ディ
レクトリ201−204へ送られる。ディレクトリ20
1−204は線2021−2024の指示により線10
2の部分空間番号をセットし、さらにVbitレジスタ
219の該当ビットをセットする。
【0039】選択器243は一致処理部232で一致す
るものが検出された時は、線2074の結果を選択し、
一致が検出されなかった時は、プライオリティエンコー
ダ228の結果を選択し、線201を介しアドレス変換
バッファ4へバッファへの書込みアドレスとして送る。
【0040】ページサイズ指示ビットが“1”だと、比
較器214−217の結果で一致し、かつVbitレジ
スタ219の情報が線2054−2057を介しAND
ゲート224−227で有効であると判断すると、選択
器238−241及び一致処理部233に送られる。
【0041】一致処理部233は、ANDゲート224
−227の論理和を生成し、1つでも一致しているもの
があると、選択器238−241の全てにANDゲート
224−227の結果を選択するように指示し、さらに
ANDゲート224−227のエンコード結果を線20
76を介し選択器243に送る。ANDゲート224−
227の結果で一致するものがない場合は、Vbitレ
ジスタ219の各Vbitで無効になっているものをプ
ライオリティエンコーダ229でエンコードし、その結
果を再びデコーダ231でデコードして選択器238−
241で選択する。選択器238−241で選択された
信号は、線102のページサイズ指示信号によりAND
ゲート249−252で論理積をとり線2025−20
28を介しディレクトリ205−208へ送られる。
【0042】ディレクトリ205−208は線2025
−2028の指示により線102の部分空間番号をセッ
トし、さらにVbitレジスタ219の該当ビットをセ
ットする。
【0043】線102からのページサイズ指示信号は線
101のリクエストが制御部253でATLRQと判定
されると選択器242で選択され、線203Rを介しア
ドレス変換バッファ4へ送る。
【0044】デコーダ253は線101からのリクエス
トがATLRQと判断されると線202Rを介しアドレ
ス変換バッファへのロードリクエストとしてアドレス変
換バッファ4へ送られる。
【0045】図4は、本発明の情報処理装置のアドレス
変換バッファの詳細図である。図4から、アドレス変換
バッファ4は、線202R,203Rの情報にしたが
い、制御部451がバッファ454(128KB/ペー
ジ側)又はバッファ455(4KB/ページ側)へ書き
込み信号4004,4003を送出し、さらに線400
2を介し、選択器452,453が、アドレスカウント
レジスタ450側を選択するよう制御する。
【0046】制御部451は、線202RによりATL
RQを受けると線203Rによるページサイズが128
KB/ページを指していれば、線4004を介しバッフ
ァ454へ書き込み指示を、4KB/ページを指してい
れば線4003を介してバッファ455への書き込み指
示を行なう。
【0047】バッファ454,455への書込みデータ
は、選択器5で選択されたアドレスが、アドレスレジス
タ6を介し記憶部7から読み出される。記憶部7から読
み出されたデータは線701を介しバッファ454,4
55へ送られる。
【0048】アドレスカウントレジスタ450は、8ビ
ットのレジスタで+1加算機能が付加されており、バッ
ファ454,455へのデータ書き込みに合わせて
“0”クリアされる。
【0049】バッファ454,455は、線4004,
4003により書き込み指示を受けると線701による
書き込みデータに対し、線201Rと線4005による
アドレス及び線201Rと線4006によるアドレスで
書き込みを始める。アドレスカウントレジスタ450
は、バッファ454,455への書込みスタートにより
カウントアップを始め、書き込みが終了するまで行な
う。
【0050】次に通常のメモリアクセスにおける動作を
説明する。
【0051】図1に示した、命令発行部1から記憶部7
へのリードリクエストが発行されると、線101を介
し、メモリアクセスリクエスト(ロードリクエスト)が
発行され、線103から読み出しアドレスが送出され
る。
【0052】アドレスレジスタ3は、線103からの3
1ビットの論理アドレスを受けると、線301を介し論
理アドレスの0−11ビットをディレクトリ部2へ、線
302を介し論理アドレスの6−18ビットをアドレス
変換バッファ4へ、線303を介し論理アドレスの14
−30ビットを選択器5へそれぞれ送出する。
【0053】ディレクトリ部2は線101のリクエスト
がロードリクエストと判断すると線301からのアドレ
スによりディレクトリ201−208のどこに一致する
部分空間番号があるかを調べる。
【0054】つぎに、図2に示した、リクエスト制御部
254は、線101からのリクエストがロードリクエス
トと判断すると、線2002を介し選択器209が線3
01からのアドレスを選択するよう制御する。
【0055】選択器209は、線301からのアドレス
のうち、線2003を介し論理アドレスの0−5ビット
を比較器210−213へ供給し、線2004を介し論
理アドレスの0−11ビットを比較器214−217へ
供給する。
【0056】比較器210−213はディレクトリ20
1−204と線2003のアドレスとの一致チェックを
行ない線2013−2016を介し結果をDR判定部2
18へ送る。比較器214−217はディレクトリ20
5−208と線2004のアドレスとの一致チェックを
行ない線2017−2020を介し結果を同じくDR判
定部218へ送る。
【0057】DR判定部218は、線2013−202
0の一致結果とVビットレジスタ219による有効ビッ
トとをANDゲート220−227でそれぞれ論理積を
とりその結果を128KB/ページ側は一致処理部23
2で処理し、一致したディレクトリのアドレスを線20
74を介し選択器243へ、また4KB/ページ側は一
致処理部233で処理し、一致したディレクトリのアド
レスを線2076を介し選択器243へ送る。一致処理
部232,233の一致結果は線2075,2077を
介し選択器242へ送る。
【0058】選択器243は一致処理部232,233
で一致を検出した側のアドレスを選択し線201Rを介
してアドレス変換バッファ4へ送る。
【0059】また選択器242は一致処理部232,2
33からの一致結果にしたがい、一致処理部232で一
致を検出したら、線203Rに“0”を、一致処理部2
33で一致を検出したら、線203Rに“1”を送出
し、アドレス変換バッファ4へアクセスするページサイ
ズを知らせる。
【0060】つぎに図3に示した、制御部253は、線
101からのロードリクエストを線202Rを介しアド
レス変換バッファ4と選択器5へ送る。
【0061】アドレス変換バッファ4は、図4に示し
た、線202Rによるリクエストがロードリクエストと
判断すると、選択器452,453が線302によるア
ドレスを選択するよう制御する。
【0062】選択器452は線4002からの制御部4
51の指示により線302からのアドレスのうち、論理
アドレスの6−13ビットを選択して線4005を介し
バッファ454へ送る。
【0063】選択器453は線4002からの制御部4
51の指示により線302からのアドレスのうち、論理
アドレスの11−18ビットを選択して線4006を介
しバッファ455へ送る。
【0064】バッファ454は線201Rによるディレ
クトリのアドレスを上位アドレスとし、線4005から
のページ番号部のアドレスを下位アドレスとしたバッフ
ァリードアドレスにより読み出し、物理アドレスのペー
ジ番号を線4007を介し選択器456へ送る。
【0065】同様に、バッファ455は、線201Rに
よるディレクトリのアドレスを上位アドレスとし、線4
006からのページ番号部のアドレスを下位アドレスと
したバッファリードアドレスにより読み出し、物理アド
レスのページ番号を線4008を介し選択器456へ送
る。
【0066】選択器456は、線203Rによるページ
サイズが128KB/ページの時、線4007のページ
番号アドレスを、ページサイズが4KB/ページの時、
線4008のページ番号アドレスを選択し、ビットの重
み付けをして線401を介し選択器5へ送る。
【0067】図10,図11は本発明の情報処理装置の
選択器の詳細図である。
【0068】ここで選択器456でのビットの重み付け
は図10,図11に示すもので、128KB/ページ時
は、図10のように線4007によるページ番号アドレ
スは11ビットであり、左結めにして右側に“0”が5
ビット、4KB/ページ時は、図11のように線400
8によるページ番号アドレスは16ビットがそのまま線
401に送出される。
【0069】選択器5は、線202Rのリクエストでロ
ードリクエスト(ATLRQでない場合)であると、線
401からのページ番号と線303からのページ内アド
レスを選択してアドレスレジスタ6へ送出する。
【0070】ここで選択器5はATLRQでない場合、
線203Rからのページサイズ指示信号により、128
KB/ページの時は、線401からのアドレス16ビッ
トのうち左11ビットを上位アドレスとし、線303か
らの論理アドレスの14−30を下位アドレスとした物
理アドレス(図8に示す物理アドレスの構成図、及び図
5参照)を生成してアドレスレジスタ6へ送出し、4K
B/ページの時は、線401からのアドレス16ビット
全てを上位アドレスとし、線303からの論理アドレス
の19−30を下位アドレスとした物理アドレス(図9
に示す物理アドレスの構成図、及び図6参照)を生成し
てアドレスレジスタ6へ送出する。
【0071】アドレスレジスタ6は線501による選択
器5からの物理アドレスを記憶部7へ送り線701を介
して記憶部7からのロードデータを命令発行部1へ送出
して処理を終了する。
【0072】これより、ディレクトリ201に部分空間
番号“03(M) ”,ディレクトリ202に部分空間番号
“07(M) ”,ディレクトリ205に部分空間番号“0
11(M) ”がセットされている(アドレス変換バッファ
4には上記3部分空間がロードされている)場合に12
8KB/ページの部分空間“03(M) ”をロードする場
合について説明する。
【0073】ここで数字の後の(M)は16進数を示
す。また(B)は2進数を示す。
【0074】命令発行部1から線101を介しディレク
トリ部2にATLRQが発行されると、同時に線102
を介し制御情報を送出する。この時制御情報は、“00
(M) ”で送出される。さらに線103を介し、記憶部
7にあるアドレス変換テーブルを読み出すためのロード
アドレスをアドレスレジスタ3へ送出する。
【0075】ディレクトリ部2は、線101からのリク
エストがATLRQと判定すると線202Rを介しアド
レス変換バッファ4及び選択器5にそのリクエストを送
出する。
【0076】また、線102からの制御情報にしたが
い、線203Rを介しページサイズ指示ビットの値
“0”(すなわち128KB/ページ指定)をアドレス
変換バッファ4及び選択器5に送る。
【0077】ディレクトリの決定は、線102からの
“006(M) ”により部分空間番号“03(M) ”と判定
し、選択器209を介し、比較器210−213へ送ら
れ、ディレクトリ201−204の各々と比較する。比
較器210はディレクトリ201の部分空間番号“03
(M) ”と制御情報からの部分空間番号“03(M) ”とを
比較し、一致のため線2013を介し“1”を、同様に
ディレクトリ202−204とも比較器211−213
で比較し各々が不一致のため線2014−2016を介
し“0”をDR判定部218へ送る。DR判定部218
は線2013−2016の比較結果とVbitレジスタ
219のVビット情報“11001000(B) ”をAN
Dゲート220−223で論理積をとり線2053へは
“1”、線2054−2056へは“0”を送出し、一
致処理部232でディレクトリ201の部分空間番号と
一致することを判定し、線2074を介し“00(B)
を選択器243へ送りさらに線201Rを介しアドレス
変換バッファ4へ供給する。
【0078】ここでディレクトリ201,205が一致
していればアドレス“00(B) ”が、ディレクトリ20
2,206が一致していたらアドレス“01(B) ”、デ
ィレクトリ203,207だと“10(B) ”、ディレク
トリ204,208だと“11(B) ”がそれぞれ線20
74又は線2076を介して選択器243へ送られる。
【0079】また、もし、前記比較器210−213及
びANDゲート220−223の結果により一致処理部
232で一致が検出されなければ(この場合、ディレク
トリ201の部分空間番号が“11(M) ”としたら発生
する)、Vbitレジスタ219のVビット情報の12
8KB/ページ側が線2050−2053を介し、各々
“1”,“1”,“0”,“0”をプライオリティエン
コーダ228でVbitが“0”になっているディレク
トリで一番若い番号のもの、この場合ディレクトリ20
3が選ばれアドレス“10(B) ”が線2086を介し選
択器243で選択される。
【0080】一致処理部232へ送られた比較結果は、
選択器234−237で選択されANDゲート245で
イネーブルされて、ディレクトリ201−204に対し
てのセット信号として“1”,“0”,“0”,“0”
が送出される。ディレクトリ201−204は線202
1−2024より送られたセット信号によりディレクト
リ201がイネーブルされて部分空間番号“03(M)
がセットされる(この場合は同じ値をセットすることに
なる)。さらに、Vビット219は線2021からのセ
ット信号により“1”がセットされる(この場合は、デ
ィレクトリ201と同じ(前の状態である“1”をセッ
トすることになる))。
【0081】アドレスレジスタ3のアドレスは線304
を介し選択器5で線202Rの指示により選択され、ア
ドレスレジスタ6を介し記憶部7へ送出される。
【0082】記憶部7はアドレスレジスタ6のアドレス
によりアドレス変換情報を読み出し、線701を介して
アドレス変換バッファ4へ送出する。
【0083】アドレス変換バッファ4は、記憶部7から
アドレス変換情報が送られて来ると、アドレスカウント
レジスタ450をリセットする。
【0084】制御部451は、線202RによるATL
RQと線203Rによるページサイズの“0”信号によ
り、線4004に対しバッファ454への書込み許可信
号を送出し、線201Rのアドレス“00(B) ”を上位
アドレス、選択器452で選択されたアドレスカウント
レジスタ450のアドレス“00000000(B) ”を
下位アドレスとしたアドレス“000(M) ”をスタート
アドレスとしてバッファ454へ線701によるアドレ
ス変換情報の書き込みを行なう。バッファ454への書
き込みは“000(M) ”をスタートアドレスとし、“0
FF(M) ”まで書き込む。これで処理を終了する。
【0085】次に上記ディレクトリ環境において、論理
アドレス“011A00F0(M) ”による記憶部7への
ロード命令について説明する。
【0086】命令発行部1から線101を介しディレク
トリ部2へロードリクエストが発行されると同時に論理
アドレス“011A00F0(M) ”が線103を介しア
ドレスレジスタ3にセットされる。
【0087】アドレスレジスタ3は、線301を介し、
論理アドレスの上位11ビットである“011(M)
を、線302を介し、“11A0(M) ”が、線303を
介し、“000F0(M) ”がそれぞれ送出される。
【0088】ディレクトリ部2は、命令発行部1からロ
ードリクエストが発行されると、線301からのアドレ
ス“011(M) ”を選択器209で選択し、線2003
へはアドレスの上位6ビットである“02(M) ”が、線
2004へは全アドレス“011(M) ”が送出され、そ
れぞれ、比較器210−217でディレクトリ201−
208と比較される。
【0089】ここでは、比較器214によりディレクト
リ205の“011(M) ”と線2004からの“011
(M) ”とが一致することを検出し、線2017を介しD
R判定部218へ報告される。したがって、線2013
−2020を介して報告される比較器210−217の
値は、“0”,“0”,“0”,“0”,“1”,
“0”,“0”,“0”となる。
【0090】DR判定部218は、線2013−202
0の信号を受けるとVbitレジスタ219のVビット
情報と各々ANDゲート220−227と論理積をと
り、線2058−2061に対しては“0”,“0”,
“0”,“0”を送出し、一致処理部232へ送り、線
2062−2065に対しては“1”,“0”,
“0”,“0”を送出し、一致処理部233へ送る。
【0091】一致処理部232ではディレクトリ201
−204のどれもが一致していないことを検出し、線2
075に“0”を送出し、一致処理部233では、ディ
レクトリ205で一致して、ディレクトリ206−20
8では一致していないことを検出し、線2077へはデ
ィレクトリ205の一致により、一致信号“1”を送出
し、線2076には、ディレクトリ205のアドレスに
なる“00(B) ”を送出する。選択器242は線207
7による一致信号にしたがい、ページサイズが4KB/
ページのアドレスであると判定し、線203Rに“1”
を、また、選択器243は線2076からのアドレス
“00(B)”を選択して線201Rを介し、各々、アド
レス変換バッファ4へ送出する。
【0092】アドレス変換バッファ4は、制御部451
により、線202Rからのロードリクエストと線203
Rからの4KB/ページのページサイズによるアクセス
であることを判定し、線4002を介し選択器452,
453が線302を選択するように制御する。
【0093】線302を介して送られたアドレス“11
A0(M) ”のうち選択器452からは、128KB/ペ
ージのページ番号にあたる“8D(M) ”がバッファ45
4へのリードアドレスの下位8ビットとし、選択器45
3からは、4KB/ページのページ番号にあたる“A0
(M) ”がバッファ455へのリードアドレスの下位8ビ
ットとし、それぞれ送出される。
【0094】バッファ454は、線201Rからのアド
レス“00(B) ”と選択器452からのアドレス“8D
(M) ”により“08D(M) ”の10ビットのリードアド
レスとしてアドレス変換による物理ページ番号を読み出
す。ここで“08D(M) ”に対するバッファ454から
のアドレス変換情報は“0B0(M) ”とする。
【0095】バッファ455は、線201Rからのアド
レス“00(B) ”と選択器453からのアドレス“A0
(M) ”により“0A0(M) ”の10ビットのリードアド
レスとしてアドレス変換による物理ページ番号を読み出
す。ここで、“0A0(M) ”に対するバッファ455か
らのアドレス変換情報は“101B(M) ”とする。
【0096】選択器456は、線203Rによる“1”
信号により4KB/ページのアドレス変換を行なうため
のバッファ455からの“101B(M) ”を選択し、線
401を介し選択器5へ送出する。
【0097】選択器5は、線401からのアドレス変換
バッファ4からの読み出しデータである物理ページ番号
“101B(M) ”と線303からのページ内アドレスの
4KB/ページに対応する“0F0(M) ”を選択し、ア
ドレスレジスタ6に物理アドレスとして“101B0F
(M) ”をセットし、記憶部7へ送出する。
【0098】記憶部7はアドレスレジスタ6からの物理
アドレスでデータを読み出し、線701を介して命令発
行部1へロードデータを送出して処理を終了する。
【0099】
【発明の効果】以上説明したように本発明は、複数のペ
ージサイズの異なるアドレスをそれぞれ独立して管理
し、それぞれのページサイズによるアドレス変換をダイ
ナミックに行なえることにより、データ量に適したペー
ジサイズを使用することができ、メモリ空間を有効に使
用することができ、さらに、仮想計算機を実現する上で
の、マルチOSによるページサイズの異なるアドレスの
変換に対しても容易に対処することができる効果があ
る。
【図面の簡単な説明】
【図1】本発明の一実施例である情報処理装置の構成図
である。
【図2】本発明の情報処理装置におけるディレクトリ部
の詳細図である。
【図3】本発明の情報処理装置におけるDR判定部の詳
細図である。
【図4】本発明の情報処理装置におけるアドレス変換バ
ッファの詳細図である。
【図5】本発明の128KB/ページサイズに対する論
理アドレスの構成図である。
【図6】本発明の4KB/ページサイズに対する論理ア
ドレスの構成図である。
【図7】本発明のアドレス変換テーブルロード命令にお
ける制御情報のフォーマットである。
【図8】本発明の128KB/ページサイズに対する物
理アドレスの構成図である。
【図9】本発明の4KB/ページサイズに対する物理ア
ドレスの構成図である。
【図10】本発明の128KB/ページ時の選択器の詳
細図である。
【図11】本発明の4KB/ページ時の選択器の詳細図
である。
【図12】従来の情報処理装置の構成図である。
【符号の説明】
1 命令発行部 2 ディレクトリ部 3,6 アドレスレジスタ 4 アドレス変換バッファ 5,209,234−241,242,243,45
2,453, 456 選択器 7 記憶部 201−208 ディレクトリ 210−217 比較器 218 DR判定部 254 リクエスト制御部 219 Vbitレジスタ 220−227,245−252 ANDゲート 228,229 プライオリティエンコーダ 230,231,253 デコーダ 232,233 一致処理部 450 アドレスカウントレジスタ 451 制御部 454,455 バッファ

Claims (3)

    【特許請求の範囲】
  1. 【請求項1】 部分空間番号、論理ページ番号及びペー
    ジ内アドレスで構成された論理アドレスを、物理ページ
    番号と前記ページ内アドレスで構成される物理アドレス
    に変換するアドレス変換機能を備え、かつ、1つ以上の
    ページサイズにより記憶部へのアクセスを行なう情報処
    理装置において、 前記アドレス変換を高速に行なうために、前記記憶部内
    に前記部分空間単位で格納されている複数のアドレス変
    換テーブルの写しをページサイズに応じて各々複数個保
    持するアドレス変換テーブル保持手段と、 該アドレス変換テーブル保持手段の内の1つにアドレス
    変換テーブルロード命令により前記アドレス変換テーブ
    ルの1つをロードするように制御するロード制御手段
    と、 前記アドレス変換テーブル保持手段にロードした前記各
    アドレス変換テーブルに対応する部分空間を管理するデ
    ィレクトリ管理手段とを有し、 該ディレクトリ管理手段に対し、同一ページサイズの部
    分空間を一つの管理単位とし、アドレス変換テーブルの
    ロード制御を各々独立して行なうことを特徴とする情報
    処理装置。
  2. 【請求項2】 前記アドレス変換テーブルロード命令で
    指示されるページサイズ情報により前記ロード制御手段
    を制御し、前記アドレス変換テーブル保持手段へアドレ
    ス変換テーブルをロードする請求項1記載の情報処理装
    置。
  3. 【請求項3】 前記ディレクトリ管理手段の各エントリ
    には部分空間番号が保持されており、該部分空間番号と
    前記記憶部へのアクセスのための論理アドレスの部分空
    間番号とが一致することを検出する検出手段と、 該検出手段による検出結果にしたがい物理アドレスの生
    成を制御するアドレス生成制御手段とを有することを特
    徴とする請求項1記載の情報処理装置。
JP3268328A 1991-09-19 1991-09-19 情報処理装置 Pending JPH0581133A (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP3268328A JPH0581133A (ja) 1991-09-19 1991-09-19 情報処理装置
EP92116015A EP0533190B1 (en) 1991-09-19 1992-09-18 Data processing system with address translation function for different page sizes
CA 2078635 CA2078635A1 (en) 1991-09-19 1992-09-18 Data processing system
DE1992609757 DE69209757T2 (de) 1991-09-19 1992-09-18 Datenverarbeitungseinrichtung mit Adressübersetzung für verschiedene Seitengrössen

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP3268328A JPH0581133A (ja) 1991-09-19 1991-09-19 情報処理装置

Publications (1)

Publication Number Publication Date
JPH0581133A true JPH0581133A (ja) 1993-04-02

Family

ID=17457021

Family Applications (1)

Application Number Title Priority Date Filing Date
JP3268328A Pending JPH0581133A (ja) 1991-09-19 1991-09-19 情報処理装置

Country Status (4)

Country Link
EP (1) EP0533190B1 (ja)
JP (1) JPH0581133A (ja)
CA (1) CA2078635A1 (ja)
DE (1) DE69209757T2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05165715A (ja) * 1991-12-12 1993-07-02 Nec Corp 情報処理装置
US8285920B2 (en) 2010-07-09 2012-10-09 Nokia Corporation Memory device with dynamic controllable physical logical mapping table loading
US8417912B2 (en) 2010-09-03 2013-04-09 International Business Machines Corporation Management of low-paging space conditions in an operating system
US9424155B1 (en) 2016-01-27 2016-08-23 International Business Machines Corporation Use efficiency of platform memory resources through firmware managed I/O translation table paging

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03191449A (ja) * 1989-12-21 1991-08-21 Koufu Nippon Denki Kk 情報処理装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3938100A (en) * 1974-06-07 1976-02-10 Control Data Corporation Virtual addressing apparatus for addressing the memory of a computer utilizing associative addressing techniques
US4376297A (en) * 1978-04-10 1983-03-08 Signetics Corporation Virtual memory addressing device
JPS622338A (ja) * 1985-06-27 1987-01-08 Nec Corp 情報処理装置
US5058003A (en) * 1988-12-15 1991-10-15 International Business Machines Corporation Virtual storage dynamic address translation mechanism for multiple-sized pages

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03191449A (ja) * 1989-12-21 1991-08-21 Koufu Nippon Denki Kk 情報処理装置

Also Published As

Publication number Publication date
EP0533190B1 (en) 1996-04-10
CA2078635A1 (en) 1993-03-20
DE69209757T2 (de) 1996-08-08
DE69209757D1 (de) 1996-05-15
EP0533190A2 (en) 1993-03-24
EP0533190A3 (en) 1993-04-21

Similar Documents

Publication Publication Date Title
EP0855057B1 (en) Address transformation in a cluster computer system
KR920005280B1 (ko) 고속 캐쉬 시스템
US5729714A (en) Shared memory access method and apparatus with address translation
JPH0512126A (ja) 仮想計算機のアドレス変換装置及びアドレス変換方法
JPH04308953A (ja) 仮想アドレス計算機装置
US5440708A (en) Microprocessor and storage management system having said microprocessor
JPH0581133A (ja) 情報処理装置
JP2846697B2 (ja) キャッシュメモリ制御装置
JP3190700B2 (ja) アドレス変換装置
US6378058B1 (en) Method of and apparatus for processing information, and providing medium
JPH0540694A (ja) キヤツシユメモリ装置
JP2503702B2 (ja) アドレス変換装置
JPH01226056A (ja) アドレス変換回路
JPS59218692A (ja) ロジカルバツフア記憶制御方式
JP2504500B2 (ja) アドレス変換装置
JPH05274214A (ja) 情報記憶装置
JPH06259329A (ja) アドレス変換機構を備えた情報処理装置
JPH0546462A (ja) マルチcpuのアドレス変換機構
JPH01161552A (ja) アドレス変換バッファ制御方式
JPH05225064A (ja) アドレス変換装置及びバッファ記憶制御装置
JPH0451343A (ja) アドレス変換バッファ機構
JPH05225047A (ja) メモリ管理システム
JPS6265151A (ja) メモリ管理方式
JPH0689229A (ja) バッファメモリの無効化装置および無効化方法
JPH04506125A (ja) キャッシュを備えた計算機