JP3075733B2 - アドレス変換制御機構 - Google Patents
アドレス変換制御機構Info
- Publication number
- JP3075733B2 JP3075733B2 JP02157606A JP15760690A JP3075733B2 JP 3075733 B2 JP3075733 B2 JP 3075733B2 JP 02157606 A JP02157606 A JP 02157606A JP 15760690 A JP15760690 A JP 15760690A JP 3075733 B2 JP3075733 B2 JP 3075733B2
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- address
- operand
- logical address
- logical
- 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
Links
Landscapes
- Memory System Of A Hierarchy Structure (AREA)
Description
間上の物理アドレスに変換するアドレス変換制御機構に
関する。
実現される実記憶空間には限りがある。このため、記憶
空間に実質的な制限の無い仮想記憶空間が利用される。
仮想記憶空間上の論理アドレスと、実記憶空間上の物理
アドレスの変換作業が不可欠となる。
ranslation Lookaside Buffer)を備えたアドレス変換
制御機構が利用される。
セッサ)では、命令コードの命令論理アドレスと、命令
コードに付随するオペランドデータのオペランド論理ア
ドレスを物理アドレスに変換する機構、即ちアドレス変
換制御機構が設けられている。この機構には大きく分け
て2つのものがある。一つは、命令論理アドレスとオペ
ランド論理アドレスの両者を1つのTLBを用いて物理ア
ドレスに変換する第1の機構。もう一つは、TLBを2つ
設けて、命令論理アドレスとオペランド論理アドレスを
個別に物理アドレスに変換する第2の機構である。
図を用いて説明する。
ック図を示す。
5、バリッドビット項目6、物理アドレス項目7の3つ
の項目が設けられている。これら3つの項目の組合わせ
により複数のアドレス変換テーブルエントリ1aが形成さ
れている。
ILAとオペランド論理アドレスDLAにより参照される。こ
の参照の結果、命令論理アドレスILA、オペランド論理
アドレスDLAと一致する論理アドレスLAが論理アドレス
項目5に存在すれば、該当する物理アドレス項目7から
物理アドレスPAが物理アドレスバス8に向けて出力され
る。なお、物理アドレス項目5を参照する命令論理アド
レスILAとオペランド論理アドレスDLAの切替えは、論理
アドレスセレクト信号SELによりなされる。即ち例えば
論理アドレスセレクト信号SELが有効の場合に命令論理
アドレスIALを、無効の場合にオペランド論理アドレスD
LAを用いて参照を行なう。
は、バリッドビット項目6の内容、即ちバリッドビット
Vが“1"のときに限り有効である。
ブロック図である。
記憶部(TLB)21は、それぞれ論理アドレス項目15、2
5、バリッドビット項目16,26、物理アドレス項目17,27
の3つの項目が設けられている。これら3つの組合わせ
でアドレス変換テーブル11a,21aが形成されている。
ドレスILAにより参照される。この参照の結果、命令論
理アドレスILAと一致する命令論理アドレスILAが論理ア
ドレス項目15に存在すれば、該当する物理アドレス項目
7から命令物理アドレスIPAが命令物理アドレスバス18
に向けて出力される。
オペランド論理アドレスDLAにより参照される。この結
果、オペランド論理アドレスDLAと一致するオペランド
論理アドレスDLAが論理アドレス項目25に存在すれば、
該当する物理アドレス項目7からオペランド物理アドレ
スDPAが物理アドレスバス28に向けて出力される。
合、命令論理アドレスILAとオペランド論理アドレスDLA
の変換を1つの記憶部(TLB)1で行なうため、命令論
理アドレスILAとオペランド論理アドレスDLAの競合した
場合、何れか一方のアドレス変換しか実行できず、処理
の停滞を招くといった問題が生じていた。
合、命令論理アドレスILAとオペランド論理アドレスDLA
の両者について、並行してアドレス変換を実行できる。
しかし、命令論理アドレスILA用とオペランド論理アド
レスDLA用に、それぞれ独立させて2つの記憶部を用意
しなければならないためハード量がかさむといった問題
が生じていた。
停滞及びハードウェア量がかさむといった事態を回避
し、効率的なアドレス変換を行なうことのできるアドレ
ス変換制御機構を提供することを目的とするものであ
る。
アクセスされる命令コードの命令論理アドレスとオペラ
ンドデータのオペランド論理アドレスを物理アドレスに
変換する第1の命令アドレス変換テーブルとオペランド
アドレス変換テーブルを格納した第1の記憶部と、仮想
記憶空間上でアクセスされる前記命令コードの命令論理
アドレスのみを物理アドレスに変換する前記第1の命令
アドレス変換テーブルよりも小容量の第2の命令アドレ
ス変換テーブルを格納した前記第1の記憶部より小容量
の第2の記憶部とを備え、前記命令コードの命令論理ア
ドレスから物理アドレスへの変換は、まず前記第2の命
令アドレス変換テーブルを用いて行い、前記第2の命令
アドレス変換テーブルに前記命令コードの命令物理アド
レスに該当する命令物理アドレスが存在しない場合に
は、前記第1の命令アドレス変換テーブルを用いて行う
ことを特徴とするものである。
ランド論理アドレスの両者のアドレス変換用に利用す
る。そして第1の記憶部より小容量の第2の記憶部を命
令論理アドレスのアドレス変換専用に使用する。命令論
理アドレスのアドレス変換は、連続する命令アドレスを
参照する場合が主であるため、オペランド論理アドレス
のアドレス変換を行なう場合の不連続なオペランドアド
レスの参照を想定した大容量を用意する必要がない。ま
た、稀に第2の記憶部でアドレス変換ができなかった場
合のみ第1の記憶部を参照する。これにより、命令論理
アドレスとオペランド論理アドレスのアドレス変換の競
合を極力回避でき、さらには命令論理アドレスのアドレ
ス変換効率を所定の状態に保つことができる。
図を示す。
した場合のブロック図で、このプロセッサは、命令デコ
ードユニット31、実行ユニット32、オペランドアドレス
生成ユニット33、命令フェッチユニット34、データキャ
ッシュユニット35、命令キャッシュユニット36、命令オ
ペランド用TLB(第1の記憶部)37、命令用TLB(第2の
記憶部)38、バス制御ユニット39、そしてマイクロプロ
グラム40から構成されている。
れる命令コード及び実空間上でアクセスされる命令コー
ドのフェッチを行なうものである。命令コードユニット
31は、命令フェッチユニット34でフェッチされた命令コ
ードのデコードを行ない、所定のマイクロプログラム40
の選択及びオペランドアドレス生成ユニット33に命令コ
ードに基づいたオペランドアドレスの演算指示を出すも
のである。実行ユニット32は、命令デコードユニット31
に選択されたマイクロプログラム40に基づいて所定の処
理を実行するものである。オペランドアドレス生成ユニ
ット33は、命令デコードユニット31の指示によりオペラ
ンドアドレスの生成を行なうものである。命令キャッシ
ュユニット36は、命令フェッチユニット34により参照さ
れる仮想空間上の命令コードと、実空間上の命令コード
との対応テーブルを格納したものである。データキャッ
シュユニット35は、オペランドアドレス生成ユニット33
により参照される仮想空間上のオペランドアドレスと、
実空間上のオペランドアドレスとの対応テーブルを格納
したものである。命令オペランド用TLB37は、命令フェ
ッチユニット34及びオペランドアドレス生成ユニット33
により参照されるアドレス変換テーブルからなるもので
ある。命令用TLB38は、命令フェッチユニット34により
参照されるアドレス変換テーブルからなるものである。
バス制御ユニット39は、このプロセッサとアドレスバ
ス、データバス、そして制御バスとの間の整合を図るイ
ンタフェースである。
により仮想空間上で命令コードがフェッチされると、命
令フェッチユニット34は命令キャッシュユニット36の参
照を行なう。命令キャッシュユニット36に該当する命令
コードが格納されていればキャッシュヒットとなり、ヒ
ットした命令コードが命令フェッチユニットに送られ
る。フェッチされた命令コードは命令デコードユニット
31によりデコードされ、オペランドアドレス生成ユニッ
ト33に該当するアドレス参照の指示が出され、さらに該
当するマイクロコードがマイクロプログラム40から読出
される。実行ユニット32は、このマイクロプログラム40
に基づいて処理を実行する。
スヒットした場合、命令用TLB38のアクセスを行ない、
命令論理アドレスを物理アドレスに変換する。ここで命
令用TLB38に該当する物理アドレスが無くTLBミスした場
合、さらに命令オペランド用TLB37のアクセスを実行
し、アドレス変換が実行される。命令オペランド用TLB
でアドレス変換されると、物理アドレスを用いてバス制
御ユニット39がアクセスされ、図示しない実記憶空間
(主記憶装置)のアクセスが行なわれバス制御ユニット
39から命令フェッチユニット34に向けて命令コードが送
られる。以後先に説明した要領で命令デコードユニット
31によるデコードが実行される。
たオペランド論理アドレスを用いてデータキャッシュユ
ニット35の参照を行なう。データキャッシュユニット35
に該当するオペランド論理アドレスが格納されていれば
キャッシュヒットとなり、実行ユニット32に向けて該当
するオペランドデータが送られる。実行ユニット32は、
このオペランドデータに基づいて処理を実行する。
場合、命令オペランド用TLB37においてオペランド論理
アドレスが物理アドレスに変換され、バス制御ユニット
39を介して図示しない主記憶装置がアクセスされ、オペ
ランドデータが読取られる。このオペランドデータは実
行ユニット32に送られ処理されることになる。
機構の詳細について説明する。
ペランド用TLB(第1の記憶部)37と命令用TLB(第2の
記憶部)38が示されている。
理アドレス項目51,61、バリッドビット項目52,62、物理
アドレス項目53,63の3つの項目が設けられている。こ
れら3つの組合わせでアドレス変換テーブルエントリ37
a,38aが形成されている。ここでは、アドレス変換テー
ブルエントリ38aの項目数、即ちエントリー数が2で、
アドレス変換テーブルエントリ37aの項目数、即ちエン
トリー数が32である。
令論理アドレスILA及びオペランド論理アドレスDLAによ
り参照される。命令論理アドレスILAとオペランド論理
アドレスDLAの何れを有効にするかは、論理アドレス選
択信号SELに基づく。参照の結果、命令論理アドレスILA
もしくはオペランド論理アドレスDLAと一致する項目が
論理アドレス項目51に存在すれば、該当する物理アドレ
ス項目53から命令物理アドレスIPAもしくはオペランド
物理アドレスDPAが物理アドレスバス55に向けて出力さ
れる。
理アドレスILAにより参照される。参照の結果、命令論
理アドレスILAと一致する項目が論理アドレス項目61に
存在すれば、該当する物理アドレス項目53から命令物理
アドレスIPAが物理アドレスバス65に向けて出力され
る。
に命令用TLBで実行され、TLBミスの場合、命令オペラン
ド用TLB37で実行される。
の変換に参照される命令オペランド用TLBより容量が少
なくて済むのは、一般に命令コードのアドレスの流れが
連続的であるためで、連続的であれば小容量のTLBであ
ってもヒットする確率が高くなる。一方、オペランド論
理アドレスDLAについては、連続的である場合が少な
い。このため、できる限り大容量のTLBを用意しなけれ
ばヒットする確率が向上しない。
ルエントリ37aは、命令論理アドレスDLAによる参照がな
されなければオペランド論理アドレスDLA参照用の項目
が増加する。
オペランド用TLB37のエントリー数を32としたが、この
値は適宜変更しても構わない。なお命令用TLB38につい
ては数エントリーで構わない。
ドレスとオペランド論理アドレスのアドレス変換が同時
に発生しても、第2の記憶部(命令用TLB)にヒットし
ている限り、競合することが無く並行して変換を行なう
ことができ、処理効率の低下を回避することができる。
また、第2の記憶部の容量は小容量でよいため、ハード
ウェアの負担が大きくなることがない。
第2図は従来の第1のアドレス変換制御機構のブロック
図、第3図は従来の第2のアドレス変換制御機構のブロ
ック図、第4図は本発明の詳細な説明図である。 37……命令オペランド用TLB(第1の記憶部)、 38……命令用TLB(第2の記憶部)、 ILA……命令論理アドレス、 DLA……オペランド論理アドレス。
Claims (1)
- 【請求項1】仮想記憶空間上でアクセスされる命令コー
ドの命令論理アドレスとオペランドデータのオペランド
論理アドレスを物理アドレスに変換する第1の命令アド
レス変換テーブルとオペランドアドレス変換テーブルを
格納した第1の記憶部と、 仮想記憶空間上でアクセスされる前記命令コードの命令
論理アドレスのみを物理アドレスに変換する前記第1の
命令アドレス変換テーブルよりも小容量の第2の命令ア
ドレス変換テーブルを格納した前記第1の記憶部より小
容量の第2の記憶部とを備え、 前記命令コードの命令論理アドレスから物理アドレスへ
の変換は、まず前記第2の命令アドレス変換テーブルを
用いて行い、前記第2の命令アドレス変換テーブルに前
記命令コードの命令物理アドレスに該当する命令物理ア
ドレスが存在しない場合には、前記第1の命令アドレス
変換テーブルを用いて行うこと を特徴とするアドレス変換制御機構。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP02157606A JP3075733B2 (ja) | 1990-06-18 | 1990-06-18 | アドレス変換制御機構 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP02157606A JP3075733B2 (ja) | 1990-06-18 | 1990-06-18 | アドレス変換制御機構 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH0448357A JPH0448357A (ja) | 1992-02-18 |
JP3075733B2 true JP3075733B2 (ja) | 2000-08-14 |
Family
ID=15653404
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP02157606A Expired - Lifetime JP3075733B2 (ja) | 1990-06-18 | 1990-06-18 | アドレス変換制御機構 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3075733B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022064664A1 (ja) | 2020-09-25 | 2022-03-31 | 株式会社ライフクエスト | 日記生成装置、日記生成システム、日記生成方法、及びプログラム |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2971069B2 (ja) * | 1988-07-22 | 1999-11-02 | 大日本印刷株式会社 | 染料の製造方法 |
-
1990
- 1990-06-18 JP JP02157606A patent/JP3075733B2/ja not_active Expired - Lifetime
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2022064664A1 (ja) | 2020-09-25 | 2022-03-31 | 株式会社ライフクエスト | 日記生成装置、日記生成システム、日記生成方法、及びプログラム |
Also Published As
Publication number | Publication date |
---|---|
JPH0448357A (ja) | 1992-02-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5282274A (en) | Translation of multiple virtual pages upon a TLB miss | |
US5475827A (en) | Dynamic look-aside table for multiple size pages | |
EP0215544B1 (en) | Virtual memory address fetching | |
US5018061A (en) | Microprocessor with on-chip cache memory with lower power consumption | |
AU631420B2 (en) | Processing of memory access exceptions with pre-fetched instructions within the instruction pipeline of a memory system based digital computer | |
US6625715B1 (en) | System and method for translation buffer accommodating multiple page sizes | |
US4513368A (en) | Digital data processing system having object-based logical memory addressing and self-structuring modular memory | |
US4695950A (en) | Fast two-level dynamic address translation method and means | |
US5442766A (en) | Method and system for distributed instruction address translation in a multiscalar data processing system | |
JP3666689B2 (ja) | 仮想アドレス変換方法 | |
US5893930A (en) | Predictive translation of a data address utilizing sets of associative entries stored consecutively in a translation lookaside buffer | |
JPH04319747A (ja) | アドレス変換機構 | |
JPH0749812A (ja) | ページテーブル中のハッシュアドレスタグを用いたメモリアドレス制御装置 | |
JPH027142A (ja) | アクセス装置及び方法 | |
JP2000122916A5 (ja) | ||
JP3449487B2 (ja) | 変換索引緩衝機構 | |
JP3045952B2 (ja) | フルアソシアティブ・アドレス変換器 | |
US5737575A (en) | Interleaved key memory with multi-page key cache | |
JPH06236353A (ja) | マルチプロセッサ・コンピュータ・システムのシステム・メモリの並行性を増大する方法およびシステム | |
US5210841A (en) | External memory accessing system | |
JP3075733B2 (ja) | アドレス変換制御機構 | |
US6338128B1 (en) | System and method for invalidating an entry in a translation unit | |
US5414821A (en) | Method of and apparatus for rapidly loading addressing environment by checking and loading multiple registers using a specialized instruction | |
US5761740A (en) | Method of and apparatus for rapidly loading addressing registers | |
JPH05100956A (ja) | アドレス変換装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090609 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090609 Year of fee payment: 9 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100609 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100609 Year of fee payment: 10 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110609 Year of fee payment: 11 |
|
EXPY | Cancellation because of completion of term | ||
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110609 Year of fee payment: 11 |