JPH04205636A - 高速アドレス変換装置 - Google Patents

高速アドレス変換装置

Info

Publication number
JPH04205636A
JPH04205636A JP2340459A JP34045990A JPH04205636A JP H04205636 A JPH04205636 A JP H04205636A JP 2340459 A JP2340459 A JP 2340459A JP 34045990 A JP34045990 A JP 34045990A JP H04205636 A JPH04205636 A JP H04205636A
Authority
JP
Japan
Prior art keywords
address translation
block
tlb
address
translation device
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
JP2340459A
Other languages
English (en)
Inventor
Keiji Okamoto
啓二 岡本
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP2340459A priority Critical patent/JPH04205636A/ja
Publication of JPH04205636A publication Critical patent/JPH04205636A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 産業上の利用分野 本発明は、プロセッサを用いたシステムにおけるアドレ
ス変換装置に関するものである。
従来の技術 ページング方式による仮想記憶を用いているシステムに
おいて、論理アドレスから物理アドレスへのアドレス変
換は、主記憶中の論理アドレスと物理アドレスの対応表
(ページテーブル)を参照することにより行われるか、
アドレス変換の高速化を図るために、最近では使用され
た対応表の一部をアドレス変換参照バッファ(以降、T
LB−Transration Lookaside 
Bufferと略称する)と称する高速なメモリに格納
しておき、通常はこのTLBを参照することによってア
ドレス変換を行なう方法か用いられている。
第4図はTLBを用いる場合のアドレス変換の概略図を
示す。アドレス変換は次のようにして行われる。まず、
与えられた論理アドレス40の論理ページ番号部41を
もとにTLB 43の中から対応する物理ページ番号部
44を検索する。対応する物理ページ番号部44がTL
B 43に存在し、かつステータス部45か有効である
場合、物理ベーン番号部44と論理アドレス40のペー
ジ内オフセット部42から物理アドレス46か得られる
。また、対応する物理ページ番号部44が几B 43に
存在しない場合、もしくは存在する場合でかつステータ
ス部45か無効である場合には主記憶中の論理アドレス
と物理アドレスの対応表(ページテーブル)を参照し、
その対応関係をTLB 43に格納した後アト゛レス変
換を行う。このようにTLB 43を用いることで高速
なアドレス変換が行われる。さらに、より高速なアドレ
ス変換を行うためにTLBのエントリ数を増やしたり、
より高速なメモリ素子を使用するなど様々な改良か考案
されている。
しかし、マルチプロセスをサポートしているシステムで
は、プロセスか切り替わる毎に論理アドレス40から物
理アドレス46の対応関係か変更されるのてTLB 4
3の内容をすべて無効にする必要があり、利用してきた
アドレス情報を消去していた。
そこで、プロセスに関するアドレス情報を利用するアド
レス変換方法か考案されている。たとえば、特開昭63
−81548号公報ではTLBの内容にプロセス認識番
号(ID)の情報を持たせることにより、プロセスか切
り替わっても几Bの内容を無効にすることなく、プロセ
ス毎のアドレス変換情報を保存するような構造にしてい
る。しかし、この場合TLBの各エンI・り毎にプロセ
ス認識番号([D)を格納する記憶領域が必要であると
ともに、TLBのエントリを参照する際にプロセス認識
番号([D)を比較する必要かあった。
発明か解決しようとする課題 従来の技術で述べたようにマルチプロセスの環境の下で
は、プロセスか切り替わる度にTLBの内容を無効化す
ることはアドレス変換情報を無駄にするとともに変換に
必要な時間か増えてしまう。
また、プロセス毎のアドレス情報を利用する場合におい
ても、情報を保存するための記憶場所か必要以上に大き
くなるし、情報を読み出す時間が増えることになれば、
アドレス変換時のオーバーヘッドか逆に増加する可能性
かある。
本発明は上記問題を解決するものであり、アドレス変換
時のオーバーヘッドの少ない高速アドレス変換装置を提
供することを目的としている。
課題を解決するための手段 上記問題を解決するために、本発明の高速アドレス変換
装置は、一定の大きさのブロック群に分割されたアドレ
ス変換バッファと、各々のブロックに対応するプロセス
認識番号を格納するブロック割り当て表を有することに
より、プロセスか切り替わる毎に参照するアドレス変換
バッファのブロックを切り替えるように構成したもので
ある。
また、本発明は、上記ブロック割り当て表に、プロセス
認識番号と対応するブロックの先頭アドレスと最終アド
レスを格納することにより、各ブロックの大きさが可変
であるように構成したものである。
作用 上記構成により、プロセス毎にTLBブロックを割り当
てるので、プロセスか切り替わってもアドレス情報を無
効にせずに、後にプロセスが再実行された場合にそのプ
ロセス固有のアドレス変換情報を再度利用することが可
能となり、オーバーヘッドの少ない、高速なアドレス変
換を実現できる。
 4 一 実施例 以下、本発明の一実施例を図面に基づいて説明する。
第1図は本発明の第1の実施例を示す高速アドレス変換
装置の構成図、第2図は同高速アドレス変換装置を用い
た場合のTLBブロック割り当ての際のアルゴリズムで
ある。
第1図において、プロセス認識番号レジスタ10はプロ
セッサか実行しているプロセス認識番号(ID)を格納
するためのレジスタである。TLBブロック割り当て表
11はプロセス認識番号(]D)を格納するためのプロ
セス認識番号部12とそのプロセスに対応するTLBブ
ロックを示すTLBブロック番号部13からなっている
。アドレス変換バッファ(TLB)20はTLBブロッ
ク番号部13のそれぞれのTLBブロックに対応する一
定の大きさのn個のブロック群(TLBフロック0、T
LBフロックl、TLBブロック2、・・・、TLBブ
ロックn)に分割されており、各ブロック16〜19は
数十個〜数十個のエントリから構成されている。また各
エントりはメモリのページを示す物理ページ番号部14
とそのエントりの有効/無効性などの状態を示すステー
タス部15から構成されている。
次にこの高速アドレス変換装置を用いた場合のアドレス
変換方法について説明する。
まず、プロセス認識番号レジスタ10から現在プロセッ
サか実行中のプロセス認識番号([D)を読み出し、7
181072割り当て表11に読み出したプロセス認識
番号([0)が存在するかとうか調へる。
この処理は以下に挙げるように第2図に示したアルゴリ
ズムに従って行われる。
(ア)ステップ101てプロセス認識番号(10)か存
在する場合、ステップ102て7181072割り当て
表11からプロセス[Dに対応するTLBブロック番号
を検索して、その番号のTLBブロックを選択する。
(イ)ステップ101てプロセス認識番号([D)か存
在しない場合、ステップ103てまずプロセスか未だ割
り当てられていない空きブロックを7181072割り
当て表11から検索する。もし空きブロックが存在すれ
ば、ステップ104てその空きブロックを選択して実行
中のプロセスに割り当てて、アドレス情報を格納する。
存在しないならば最も以前に参照されたものを選択する
ーLRU (LeastRecently Used)
法や最も以前に割り当てられたもの選択するーFIFO
(First In First 0ut)法、無作為
に選択する一ランダム法なとの適切なアルゴリズムを用
いることにより、ステップ105で既にプロセスか割り
当てられているブロックの中から一つのブロックを選択
してアドレス情報を格納する。
ステップ102.104.105でTLBブロックを選
択した後はステップ106で従来から用いられている第
4図に示したような高速アドレス変換装置を用いた方法
でアドレス変換を行なう。
第3図は本発明の第2の実施例を示す高速アドレス変換
装置の構成図であり、第1図と同一番号を符したものは
同一の機能を有し、その詳細な説明は省略する。
第3図において、7181072割り当て表30はプロ
セス認識番号(10)を格納するためのプロセス認識番
号部12とそのプロセスに対応する几Bブロックの先頭
アドレスと最終アドレスを格納して、各ブロックの大き
さを可変可能にするためのブロックアドレス部31から
なり、この先頭アドレスと最終アドレスの格納により各
ブロックの大きさを可変できる。アドレス変換バッファ
(TLB) 32はブロックアドレス部31で指定され
た範囲の領域を占めるn個のブロック群(TLBブロッ
ク0.TLBブロック1STLBブロック2、・・・、
TLB フロックn)に分割されており、各ブロック1
6〜19は数十個〜数十個のエントリから構成され、ま
た各エントりはメモリのページを示す物理ページ番号部
14とそのエントリの有効/無効性などの状態を示すス
テータス部15から構成されている。
この高速アドレス変換装置を用いた場合に、第1の実施
例と異なるところは、TLB 32の各ブロック16〜
19の大きさが可変である点てあり、このためブロック
選択後でTLBのエントリを検索するときには、そのブ
ロックの領域内であるかどうかを判断するためにブロッ
クアドレス部31の先頭アトレスと最終アドレスを参照
する必要がある。
以上のように、TLBをブロック分割してプロセス毎に
割り当てることにより、プロセスか切り替わってもプロ
セスに対応したT1、Bの内容は保存されたままなので
、以前にスケジューリングされたプロセスが再実行され
た場合にはそのプロセス固有のアドレス変換情報を使用
できるために、従来の方法と比較してより高速なアドレ
ス変換を実現できることになる。
なお、本発明は上記実施例に限定されるものではなく、
本発明の趣旨に基づいて種々の変形か可能てあり、これ
らを本発明の範囲から排除するものではない。
発明の効果 以上のように、本発明によれば、次のような効果を期待
することができる。
l)プロセスが切り替えられた際にもTLBのエントリ
を無効にする必要がなく、後にプロセスか再実行された
場合にそのプロセス固有のアドレス変換情報を再利用て
きるために、高速なアドレス変換か可能となる。
2)プロセス認識番号を格納するための記憶場所か少な
くて済み、TLBのエントリを検索する際にプロセス認
識番号の比較の必要かない。
【図面の簡単な説明】
第1図は本発明の第1の実施例を示す高速アドレス変換
装置の構成図、第2図は同高速アドレス変換装置を用い
た場合の且Bブロック割り当ての際のアルゴリズム、第
3図は本発明の第2の実施例を示す高速アドレス変換装
置の構成図、第4図は従来、使用されている高速アドレ
ス変換装置の構成図である。 IO・・・プロセス認識番号レジスタ、It・・TLB
ブロック割り当て表、12・・・プロセス認識番号部、
13・・・TLB $ブロック番号部、14・・・物理
ページ番号部、15・・・ステータス部、16・・・T
LBブロック0.17・・・TLBブロックl、18・
・・TLBブロック2.19・・・TLBブロックn、
20・・・アドレス変換バッファ(TLB)、30・・
・TLBブロック割り当て表、31・・・ブロックアド
レス部、32・・・アドレス変換バッファ(TLB)。

Claims (1)

  1. 【特許請求の範囲】 1、一定の大きさのブロック群に分割されたアドレス変
    換バッファと、それぞれのブロックに対応するプロセス
    認識番号を格納するブロック割り当て表を有し、プロセ
    スが切り替わる度に参照するアドレス変換バッファのブ
    ロックを切り替え可能に構成されている高速アドレス変
    換装置。 2、請求項1記載の高速アドレス変換装置において、ブ
    ロック割り当て表は、プロセス認識番号と対応するブロ
    ックの先頭アドレスと最終アドレスを格納し、各ブロッ
    クの大きさが可変可能に構成されている高速アドレス変
    換装置。
JP2340459A 1990-11-30 1990-11-30 高速アドレス変換装置 Pending JPH04205636A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2340459A JPH04205636A (ja) 1990-11-30 1990-11-30 高速アドレス変換装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2340459A JPH04205636A (ja) 1990-11-30 1990-11-30 高速アドレス変換装置

Publications (1)

Publication Number Publication Date
JPH04205636A true JPH04205636A (ja) 1992-07-27

Family

ID=18337170

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2340459A Pending JPH04205636A (ja) 1990-11-30 1990-11-30 高速アドレス変換装置

Country Status (1)

Country Link
JP (1) JPH04205636A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07129463A (ja) * 1993-11-02 1995-05-19 Nec Corp メモリアドレス空間拡張装置
US5809522A (en) * 1995-12-18 1998-09-15 Advanced Micro Devices, Inc. Microprocessor system with process identification tag entries to reduce cache flushing after a context switch
JP2000259498A (ja) * 1999-03-10 2000-09-22 Internatl Business Mach Corp <Ibm> マルチスレッド・プロセッサの命令キャッシュ
JP2018519579A (ja) * 2015-05-29 2018-07-19 クアルコム,インコーポレイテッド メモリ管理ユニット(mmu)パーティショニングされたトランスレーションキャッシュ、ならびに関連する装置、方法およびコンピュータ可読媒体を提供すること

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07129463A (ja) * 1993-11-02 1995-05-19 Nec Corp メモリアドレス空間拡張装置
US5809522A (en) * 1995-12-18 1998-09-15 Advanced Micro Devices, Inc. Microprocessor system with process identification tag entries to reduce cache flushing after a context switch
JP2000259498A (ja) * 1999-03-10 2000-09-22 Internatl Business Mach Corp <Ibm> マルチスレッド・プロセッサの命令キャッシュ
JP2018519579A (ja) * 2015-05-29 2018-07-19 クアルコム,インコーポレイテッド メモリ管理ユニット(mmu)パーティショニングされたトランスレーションキャッシュ、ならびに関連する装置、方法およびコンピュータ可読媒体を提供すること

Similar Documents

Publication Publication Date Title
US6088780A (en) Page table walker that uses at least one of a default page size and a page size selected for a virtual address space to position a sliding field in a virtual address
US6012132A (en) Method and apparatus for implementing a page table walker that uses a sliding field in the virtual addresses to identify entries in a page table
US4577274A (en) Demand paging scheme for a multi-ATB shared memory processing system
JP3920395B2 (ja) アドレス変換制御回路及びアドレス変換方法
US3761881A (en) Translation storage scheme for virtual memory system
KR100297454B1 (ko) 컴퓨터장치
EP0019358B1 (en) Hierarchical data storage system
EP0149389A2 (en) Address translation control system
US5924127A (en) Address translation buffer system and method for invalidating address translation buffer, the address translation buffer partitioned into zones according to a computer attribute
US6990551B2 (en) System and method for employing a process identifier to minimize aliasing in a linear-addressed cache
JPH04205636A (ja) 高速アドレス変換装置
JPH083805B2 (ja) Tlb制御方法
JP3875358B2 (ja) 記憶装置、記憶方法および記録媒体
JPS623354A (ja) キヤツシユメモリ・アクセス方式
JPH05216767A (ja) エントリ置き換え制御方式
JP3204098B2 (ja) 動的アドレスデコードキャッシュ制御方式
JPS626350A (ja) Tlb制御装置
JPH0485641A (ja) 仮想記憶管理方式
JPH01223544A (ja) データ処理システムにおけるページ管理処理方式
JPS59218692A (ja) ロジカルバツフア記憶制御方式
JPH02297656A (ja) データ制御方式
JPS6138506B2 (ja)
JPH04143844A (ja) キャッシュ装置
JPS60209862A (ja) アドレス変換制御方式
JPH03164845A (ja) アドレス変換バッファ方式