JPS592987B2 - アドレス変換方式 - Google Patents

アドレス変換方式

Info

Publication number
JPS592987B2
JPS592987B2 JP54168725A JP16872579A JPS592987B2 JP S592987 B2 JPS592987 B2 JP S592987B2 JP 54168725 A JP54168725 A JP 54168725A JP 16872579 A JP16872579 A JP 16872579A JP S592987 B2 JPS592987 B2 JP S592987B2
Authority
JP
Japan
Prior art keywords
page
address
real
virtual
correspondence table
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
Application number
JP54168725A
Other languages
English (en)
Other versions
JPS5693164A (en
Inventor
宏 津村
充廣 稲垣
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.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone 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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Priority to JP54168725A priority Critical patent/JPS592987B2/ja
Publication of JPS5693164A publication Critical patent/JPS5693164A/ja
Publication of JPS592987B2 publication Critical patent/JPS592987B2/ja
Expired legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】 本発明は、アドレス変換方式に関し、特にハッシュ変換
表を用いて、仮想アドレスのページが実アドレスのペー
ジに割当てられていない状態を早期に検出できるアドレ
ス変換方式に関するものである。
外部記憶装置を備える計算機システムでは、プログラム
の実行に先立ち、外部記憶装置から主記憶装置に対して
該当するプログラムやデータをロードする必要があるが
、プログラムの動的再配置を容易に、かつ効率よく実行
するために、仮想記憶空間を設けて仮想記憶土のアドレ
スをオペレーティング・システムの支援により実アドレ
スに変換する方法が用いられている。
仮想記憶計算機は、ある限られた実記憶装置を用いて、
それよりもはるかに大きな仮想記憶を与えることが可能
であり、これによつて実記憶容量に拘束されることなく
、大きなプログラムを作成することができる。
仮想記憶空間を1つだけ備えるものは、単一仮想記憶計
算機、複数個備えるものは多重仮想記憶計算機と呼ばれ
る。
仮想空間を用いる計算機では、仮想空間上の情報がペー
ジP単位に分割されており、例えば第1図に示すように
、256Mバイトの仮想空間Vが4にバイトのページP
に分割される場合には、仮想空間V上に存在する情報は
1ページ単位で実空間Rの任意の位置に格納される。
システムによつて、仮想空間V上に存在する複数ページ
が実空間R上の1ページに対応している場合と、仮想空
間V上の1ページが必ず実空間Rの1ページに対応して
いる場合と、仮想空間V上のあるページは実空間R上に
割付けられていない場合がある。主記憶装置の特定エリ
アに格納されているPSW(プログラム状態語)を読出
し、そのPSWの特定制御ビット(アドレス変換モード
・ビット)が「1」のときアドレス変換機構が有効とな
り、「O」のときにはアドレス変換は行われない。
従来、仮想記憶アドレスから実アドレスヘの変換過程に
おいては、セグメントsとページPの2つの単位が使用
されている。
例えば、セグメントSは64Kバイト、ページPは4K
バイトの大きさをそれぞれ単位として、ページ内のオフ
セツトを示すビツトを追加することにより仮想記憶アド
レスを決定できるので、仮想記憶アドレスは、第2図a
に示すように、セグメントSフイールドと、ページPフ
イールドと、ページ内オフセツトO(デイスプレースメ
ント)フイールドの3つで定められる。一方、実アドレ
スの割当ては、ページ単位で行われ、ページ内でのオフ
セツトOは連続して割当てられる。このように、仮想記
憶、実記憶ともにページ単位に細分化され、それらの対
応関係は対応表の形で管理されている。
その場合、従来では、第2図bに示すように、セグメン
ト対応表2、ページ対応表3,3という2段階の対応表
を用いてマツピングが行われている。これは、仮想空間
(16Mバイト)を先ずセグメント(64Kバイト)に
分割し、それをさらにページ(4Kバイト)に分割して
管理することを意味する。16Mバイトの1つの仮想空
間は64KバイトのセグメントSを256個含み、25
6のエントリの1つに対応してページ対応表PTl個が
設けられるので、最大256個のページ対応表PTを要
することになるが、通常は未使用の領域があるので全部
設ける必要はない。
なお、第2図bにおいて、ページ対応表3,′3の各ペ
ージ・アドレスは実記憶装置20の実ページ・アドレス
にそれぞれ対応している。多重空間は、それぞれセグメ
ント対応表STを有しており、複数個の仮想空間の中の
1つを指定するため、第3図に示すようなベース・アド
レス・レジスタ5を設け、この内容によりセグメント対
応表2の先頭アドレスSTOを指定する。第3図は、従
来における1つの仮想空間に対応して仮想空間アドレス
から実アドレスを求める処理を示すプロツク図である。
仮想記憶アドレス・レジスタ1、セグメント対応表2、
仮想ページ対応表3、実記憶アドレス・レジスノ4、お
よびセグメント対応表のベース・アドレス・レジスタ5
が設けられる。
セグメント対応表の先頭アドレスを示すベース・アドレ
ス・レジスタ5の内容と、仮想記憶アドレス・レジスタ
1の一部(セグメント・フイールドS)とを演算器に入
力し、セグメント対応表2のエントリを決定する。
このエントリには、ページ対応表3の先頭アドレスPT
Oを含んでいる。次に、そのページ対応表先頭アドレス
PTOと仮想記憶アドレス・レジスタ1の一部(ページ
・フイールドP)とを演算器に入力し、ページ対応表3
のエントリを決定する。このエントリには、実ページ番
号Rを含んでいる。次に、その実ページ番号Rと仮想記
憶レジスタ1の一部(オフセツトO)とを読出して実記
憶アドレス・レジス汐4にセツトすることにより、実ア
ドレスが得られ、アドレス変換が終了する。このように
、第3図に示すような従来のアドレス変換方式では、例
えば仮想アドレス空間が256Mバイトのときには、こ
のアドレス指定のために28ビツトの仮想記憶アドレス
が必要となる。
その場合に、第2図aに示すように、セグメントSとペ
ージPの境界を示すビツト7、ビツト8およびページP
とオフセツトOとの境界を示すビツト19,20を揃え
ると、仮想記憶アドレス・レジスタ1にはビツト4から
ビツト31までの28ビツトがセツトされる。
したがつて、仮想アドレス空間が256Mバイトのとき
には、セグメントSが4ビツト、ページPが12ビツト
、オフセツトOが12ビツトになる。さらに、仮想アド
レス空間が大きくなると、セグメントS、ページP1あ
るいはオフセツトOのいずれか、またはそれらのいずれ
もビツト幅が大きくなることによつて、アドレス変換用
の対応表の容量が、2の累乗の割合で増加していくとい
う欠点がある。例えば、仮想アドレス空間が16Mバイ
トに対してページ対応表PTが256個必要とすると、
32Mバイトに対して2倍のビット幅を有するページ対
応表PTが512個必要となり、4倍の記憶容量が必要
となる。本発明の目的は、このような従来の欠点を除去
するため、アドレス変換表の記憶容量を仮想アドレス空
間の大きさに関係なく一定にし、かつ仮想ページが実ペ
ージに割付けられていない状態を早期に検出することが
できるアドレス変換方式を提供することにある。
本発明のアドレス変換方式は、ページを管理単位として
仮想記憶アドレス方式を採用している情報処理装置内で
、仮想記憶アドレスを実記憶アドレスに変換するアドレ
ス変換過程に、パッシング手法を適用し、かつページの
割付け状態を2箇所に表示することにより、対応表の記
憶容量の増加を抑制するとともに、アドレス変換時に割
付けられていない状態の検出を高速に処理することを特
徴としている。
以下、図面により、本発明の原理および実施例を説明す
る。
一般に、パッシング手法は、登録または検索の対象とな
るワード・テーブル中での位置を求める場合、平均して
比較照合の操作回数をできるだけ少くするように考えら
れた方法である。
登録すべきワードの内容からインデツクス(ハツシユ・
コード)を計算し、同一のインデツクスをもつワードの
集合を1つのリスト構造に構成する。第4図は、パッシ
ング手法を用いたシンボル・テーブルの例を示す図であ
る。
第4図のリスト・ポインタ表21の内容は、計算された
インデツクスをもつワードの集合の先頭の要素へのポイ
ンタを記憶している。
あるインデツクスをもつワードが登録されていない場合
、対応するリスト・ポインタ表21の内容はOにしてお
く。新しいワードが入力されたとき、そのインデツクス
に対応するリストAl,a2・・・・・・の内容をチェ
ーンにより逐次照合し、リストの終りまで到達した場合
には、そのワードは未登録であるから、最後の要素に結
びつける。本発明は、このようなパッシング手法をアド
レス変換に適用したものである。
第5図は、本発明のアドレス変換方式のプロツク図であ
る。
6はハツシユ機構、7はハツシユ変換表、8はハツシユ
変換表7のアドレス・レジスタ、9はハッシユ変換表7
のデータ・レジスタ、10は実ページ対応表、11は実
ページ対応表10のアドレス・レジスタ、12は実ペー
ジ対応表10のデータ・レジスタ、13は仮想ページ番
号比較器、14は実ページ対応表アドレス更新器、15
は14の起動を指示する信号器、16はクロツク信号供
給端子、17はページ・フオールト割込み検出回路、1
8は実ページ番号決定回路である。
第6図は、ハツシユ機構6によりハツシユされたデータ
の値と、実ページ対応表10のエントリ番号jとを対応
づけるためのハツシユ変換表の詳細図である。ハツシユ
変換表7のエントリiは実ページ対応表10へのエント
リ・アドレスPEAと、当該エントリの管理モード等の
表示の集合HSと、当該エントリの実ページ対応表10
のエントリへの割当て状態の表示PFBを含んでおり、
エントリ数nは仮想ページ番号、実ページ番号の大きさ
とは無関係に一定の値に設定できる。第7図は、実記憶
をm個のページに分割し、実ページ毎に対応するエント
リを持つ実ページ対応表の詳細図である。実ページ対応
表10のエントリjは、仮想記憶アドレス・レジスタ1
内のページPに対応する仮想ページ番号Pと実ページ対
応表10内でチェーンを張るための次の実ページ対応表
10のエントリ・アドレスNEAと、逆向きの実ページ
対応表10のエントリ・アドレスBEAと、チエーンの
途中・終りの表示EOCと、当該実ページの読出し・書
込み・実行等のアクセス権やページの使用状況の表示等
の集合PSを含んでおり、mに対応する個数のエントリ
から成る。例えば、実記憶空間が16Mバイトのときに
は、4KバイトのページPが4096個存在するので、
実ページ対応表10にはm個−4096個のエントリが
設定され、それぞれの間にチェーンが張られる。一方、
ハツシユ変換表7には、これより少い一定数n−(例え
ば200程度)のエントリが設定され、これらが第4図
のリスト・ポインタ表21と同じように先頭の実ページ
対応表のエントリへのホーン汐となる。次に、第5図を
用いて、アドレス変換の動作を説明する。
命令が実行される時に、指定された命令又はデータの仮
想記憶アドレスが、仮想記憶アドレス・レジスタ1に与
えられる。
仮想記憶アドレス・レジスタ1内のページP部を入力と
してハツシユ機構6が動作し、出力がハツシユ変換表ア
ドレス・レジスタSにセツトされる。
アドレス・レジス3t8の内容で指定された番号を持つ
ハツシユ変換表7のエントリの内容が、ハツシユ変換表
データ・レジスタ9に読出される。データ・レジスタ9
のPFBの内容がページ・フオールト割込み検出回路1
7に送られ、内容が0Nであれば、以後の動作を中断し
て割込み動作が開始される。割込み動作によつて、外部
記憶からロードする等の処理が行われる。データ・レジ
ス3t9のPFBの内容が0FFであれば、割込みとは
ならず実ページ対応表10へのエントリ・アドレスPE
Aが実ページ対応表アドレス・レジスタ11にセツトさ
れ、アドレス・レジスタ11で示される実ページ対応表
10のエントリの内容が実ページ対応表データ・レジス
タ12に読出される。データ・レジスタ12のP部と仮
想記憶アドレス・レジス3t1内のP部とを、仮想ペー
ジ番号比較器13により比較し、その内容が一致すれば
、一致信号SYを実ページ番号決定回路18へ送出する
。決定回路18は実ページ対応表のアドレス・レジスタ
11の内容を実記憶アドレス・レジスタ4のR部へ転送
し、同時に仮想記憶アドレス・レジスタ1のオフセツト
O部が実記憶アドレス・レジスタ4のO部へ転送される
ことにより、レジスタ4に実記憶アドレスが求まる。こ
れにより、仮想記憶アドレスより実記憶アドレスへのア
ドレス変換は終了する。
比較器13による仮想記憶アドレス・レジスタ1のP部
と実ページ対応表データ・レジスタ12のP部との比較
において、その内容が一致しない場合には、データ・レ
ジス汐12のEOC部がページ・フオールト割込み検出
回路17へ転送され、ONであるか0FFであるかがテ
ストされ、ONであれば以後の動作を中断して割込み動
作が開始され、0FFであれば不一致信号SNが起動指
示信号器15に送られ、クロツク信号供給端子16より
供給されるクロツク信号と同期をとつて、実ページ対応
表アドレス更新器14にアドレス更新信号PEAが送ら
れる。
アドレス更新器14は、PEAを契機に実ページ対応表
データ・レジス汐12の中の次の実ページ対応表10の
エントリ・アドレスNEAをアドレス・レジスタ11へ
転送し、以後、アドレス・レジス汐11のアドレスによ
り実ページ対応表10の内容をデータ・レジスタ12へ
読み出して実施する処理を前記のとおり繰返し実行する
。実記憶アドレス・レジスタ4に実記憶アドレスが求め
られた時点で、アドレス変換機構の動作は終了し、当該
アドレスが求められなかつた場合には、前記のとおりア
ドレス変換機構の動作を中断し、ページ・フオールト割
込みがプログラムに通知される。
本発明の方式によつて、・・ツシユ変換表の表示の集合
HSや、実ページ対反表の表示の集合PSを用いること
により、更に、不当なページ・アクセス要求の検出、ペ
ージの使用状況の測定等、実ページ対応の各種の管理制
御を行うこともできる。
また、本発明において、実ページ対応表10内の逆向き
の実ページ対応表10のエントリ・アドレスBEAをN
EAと共に用い、両方向にチェーンを張ることにより仮
想ページの実ページへの割付けの変更処理を容易に実現
することも可能である。また、本発明において、実ペー
ジ対応表10内の各エントリに、これに対応する実ペー
ジの実記憶先頭アドレスを保持した場合、仮想ページ番
号比較器13のSY信号を契機として実ページ対応表の
データ・レジスタ12から実ページの実記憶先頭アドレ
スを実記憶アドレス・レジスタ4に転送し、これと仮想
記憶アドレス・レジスタ1のオフセツトOとで実記憶ア
ドレスを求めるような構成も簡単に実現することができ
る。以上説明したように、本発明によれば、仮想記憶の
ページ数と無関係な一定の大きさのハツシユ変換表と実
ページ数だけの実ページ対応表とを格納するメモリ容量
を、アドレス変換表として備えるのみでよく、また実ペ
ージ対応表にアクセスすることにより仮想ページが実さ
−ジに割付けられていない状態を検出できるが、これに
アクセスする以前にハツシユ変換表にアクセスする時点
で、実ページ対応表への割当て状態の表示を用いること
により早期にこの状態を検出することができる。
【図面の簡単な説明】
第1図は仮想空間のページと実空間のページの対応関係
図、第2図は仮想記憶アドレスのビツト構成とテーブル
・マツピング図、第3図は従来のアドレス変換方式のプ
ロツク図、第4図はパッシング手法を用いたシンボル・
テーブルの例を示す図、第5図は本発明の実施例を示す
アドレス変換方式のプロツク図、第6図は第5図のハッ
シユ変換表の詳細説明図、第7図は第5図の実ページ対
応表の詳細説明図である。 1:仮想記憶アドレス・レジスタ、2:セグメント対応
表、3:仮想ページ対応表、4:実記憶アドレス・レジ
スタ、5:ベース・アドレス・レジスタ、6:ハツシユ
機構、7:・・ツシユ変換表、8:ハツシユ変換表のア
ドレス・レジス汐、9:ハツシユ変換表のデータ・レジ
スタ、10:実ページ対応表、11:実ページ対応表の
アドレス・レジスタ、12:実ページ対応表のデータ・
レジス汐、13:仮想ページ番号比較器、14:実ペー
ジ対応表アドレス更新器、15:起動指示信号器、16
:クロツク信号供給端子、17:ページ・フオールト割
込み検出回路、18:実ページ番号決定回路、20:実
記憶装置、21:リスト・ポインタ表。

Claims (1)

    【特許請求の範囲】
  1. 1 ページ単位で管理される仮想記憶アドレス方式を用
    いた情報処理装置において、仮想記憶アドレスをハッシ
    ュするハッシュ機構と、ハッシュされたデータをエント
    リ番号とするハッシュ変換表と、主記憶装置の実ページ
    ごとにページの状態を管理する実ページ対応表とを有し
    、仮想記憶アドレスを実記憶アドレスに変換する際に、
    仮想ページが実ページに割当てられているか否かを、上
    記ハッシュ変換表の割当て表示に表示し、割当てられて
    いない場合に、アドレス変換時のページ・フオールト割
    込みの検出を、上記実ページ対応表の割当て表示により
    行う前に、上記ハツシユ変換表の割当て表示により行う
    ことを特徴とするアドレス変換方式。
JP54168725A 1979-12-25 1979-12-25 アドレス変換方式 Expired JPS592987B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP54168725A JPS592987B2 (ja) 1979-12-25 1979-12-25 アドレス変換方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP54168725A JPS592987B2 (ja) 1979-12-25 1979-12-25 アドレス変換方式

Publications (2)

Publication Number Publication Date
JPS5693164A JPS5693164A (en) 1981-07-28
JPS592987B2 true JPS592987B2 (ja) 1984-01-21

Family

ID=15873263

Family Applications (1)

Application Number Title Priority Date Filing Date
JP54168725A Expired JPS592987B2 (ja) 1979-12-25 1979-12-25 アドレス変換方式

Country Status (1)

Country Link
JP (1) JPS592987B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS5837884A (ja) * 1981-08-28 1983-03-05 Nec Corp アドレス変換方式
DE3379161D1 (en) * 1983-12-27 1989-03-16 United Technologies Corp Resilient resistance welding electrode
JPS62164146A (ja) * 1986-01-14 1987-07-20 Toshiba Corp アドレス変換装置
US4811206A (en) * 1986-01-16 1989-03-07 Ibm Corporation Data processing system with overlapped address translation and address computation

Also Published As

Publication number Publication date
JPS5693164A (en) 1981-07-28

Similar Documents

Publication Publication Date Title
JP4268332B2 (ja) 仮想アドレスからページ・テーブル・インデックスを計算する方法および装置
KR880000299B1 (ko) 캐쉬장치
EP0072413B1 (en) A storage subsystem with hashed cache addressing
US3800286A (en) Address development technique utilizing a content addressable memory
KR960001946B1 (ko) 우선 변환 참조버퍼
US4376297A (en) Virtual memory addressing device
US4136385A (en) Synonym control means for multiple virtual storage systems
US5278961A (en) Physical address to logical address translator for memory management units
US5023777A (en) Information processing system using domain table address extension for address translation without software modification
KR870006471A (ko) 고속 캐쉬 시스템
US5129070A (en) Method of using the memory in an information processing system of the virtual addressing type, and apparatus for performing the method
JPH11161547A (ja) データ処理装置用記憶装置、および記憶場所にアクセスする方法
JP2009540429A (ja) データをプリフェッチする装置および方法
JPH08212136A (ja) 仮想メモリ変換処理を効率的に共有する方法及び装置
JP2004171547A (ja) メモリシステムを管理する方法および装置
JPH0312339B2 (ja)
US7558940B2 (en) Virtual memory translator for real-time operating systems
US5479629A (en) Method and apparatus for translation request buffer and requestor table for minimizing the number of accesses to the same address
JPS592987B2 (ja) アドレス変換方式
US5784708A (en) Translation mechanism for input/output addresses
CN110825658B (zh) 闪存控制器及方法
JPH04354039A (ja) アドレス変換装置
US6915405B2 (en) Emulated target associative memory system with a multi-digit incrementable validity counter
SU737952A1 (ru) Устройство управлени буферной пам тью
JPH0363094B2 (ja)