JP3447588B2 - メモリ管理装置、方法及びプログラムを記憶した記憶媒体 - Google Patents

メモリ管理装置、方法及びプログラムを記憶した記憶媒体

Info

Publication number
JP3447588B2
JP3447588B2 JP32256198A JP32256198A JP3447588B2 JP 3447588 B2 JP3447588 B2 JP 3447588B2 JP 32256198 A JP32256198 A JP 32256198A JP 32256198 A JP32256198 A JP 32256198A JP 3447588 B2 JP3447588 B2 JP 3447588B2
Authority
JP
Japan
Prior art keywords
tlb
address
conversion
register
memory management
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 - Fee Related
Application number
JP32256198A
Other languages
English (en)
Other versions
JP2000148589A (ja
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.)
NEC Electronics Corp
Original Assignee
NEC Electronics 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 NEC Electronics Corp filed Critical NEC Electronics Corp
Priority to JP32256198A priority Critical patent/JP3447588B2/ja
Publication of JP2000148589A publication Critical patent/JP2000148589A/ja
Application granted granted Critical
Publication of JP3447588B2 publication Critical patent/JP3447588B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Memory System Of A Hierarchy Structure (AREA)

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、仮想アドレスを物
理アドレスに変換するTLB変換を行うメモリ管理装
置、方法及びこれに用いられるプログラムを記憶した記
憶媒体に関するものである。
【0002】
【従来の技術】従来では、図6に示すように、MMU
(メモリ管理ユニット)内部には、4エントリ程度のJ
TLBと、64〜128エントリのMTLBとがある。
アドレス変換を行うときには、MTLBの64〜128
エントリのすべてで仮想アドレスの比較を行っていた。
さらに、エントリ数の少ないJTLBで、ミスヒットが
発生した場合、MTLBのエントリ全てを比較し、目的
のアドレスが格納されているエントリをJTLBにコピ
ーしてから、再度アドレス変換を行うという動作が必要
であった。なお、本発明に関する従来技術として、例え
ば特開平4−328656号公報、特開平9−1614
88号公報、特開平10−111832号公報、特公平
6−100987号公報の各公報に開示された技術があ
る。
【0003】
【発明が解決しようとする課題】しかし、従来の方法で
は、低消費電力化できないという問題があった。その理
由は、仮想アドレスを比較する際に、すべてのTLBエ
ントリと比較してしまうからである。
【0004】本発明は、上記の問題を解決するために成
されたもので、分割した小TLBを複数もつ、TLB変
換方式を提供するものである。
【0005】
【課題を解決するための手段】上記の目的を達成するた
めに、本発明は以下の特徴を有する。 請求項1記載の発
明は、仮想アドレスと物理アドレスとを格納する格納手
段と、入力される仮想アドレスと格納手段により格納さ
れたアドレスとを比較する比較手段と、両アドレスが一
致したとき格納手段により格納された物理アドレスから
対応する物理アドレスを出力する出力手段とをそれぞれ
含んで成る複数のTLB部と、アドレス空間IDが切り
替えられたときにカウント値を加算するレジスタを有
し、加算された該カウント値に関連付けられたTLB部
選択して動作させる制御手段とを有することを特徴と
する。
【0006】請求項2記載の発明は、上記した制御手段
が、選択されたTLB部を動作させて比較手段により比
較を行わせ両アドレスが一致しない場合、複数のTLB
部を巡回的に動作させることを特徴とする。
【0007】請求項3記載の発明は、仮想アドレスと物
理アドレスとを格納する格納手段と、入力される仮想ア
ドレスと格納手段により格納されたアドレスとを比較す
る比較手段と、両アドレスが一致したとき格納手段によ
り格納された物理アドレスから対応する物理アドレスを
出力する出力手段とをそれぞれ含んで成る複数のTLB
部と、TLB変換を行う命令が分岐命令である場合に、
複数のTLB部のそれぞれに関連付けられて設けられて
カウント信号がアサートされるとカウント値を加算する
分岐変換レジスタを有して、カウント値が一番大きい分
岐変換レジスタに関連付けられたTLB部を選択して動
作させる制御手段とを有することを特徴とする。
【0008】請求項4記載の発明は、上記したカウント
信号が、比較手段による比較により両アドレスが一致し
たときに、当該比較手段を含むTLB部から、当該TL
B部に関連付けられて設けられた分岐変換レジスタにア
サートされることを特徴とする。
【0009】請求項5記載の発明は、アドレス空間ID
が切り替えられたときにカウント値を加算するレジスタ
を有するメモリ管理装置におけるメモリ管理方法であっ
て、レジスタのカウント値に関連付けられたTLB部を
選択して動作させ、その選択したTLB部において、入
力される仮想アドレスと格納されたアドレスとを比較
し、両アドレスが一致したとき格納された物理アドレス
から対応する物理アドレスを出力することを特徴とす
る。
【0010】請求項6記載の発明は、選択されたTLB
部を動作させて比較を行い、両アド レスが一致しない場
合、複数のTLB部を巡回的に動作させることを特徴と
する。
【0011】請求項7記載の発明は、TLB変換を行う
命令が分岐命令である場合に、複数のTLB部のそれぞ
れに関連付けられて設けられてカウント信号がアサート
されるとカウント値を加算する分岐変換レジスタを有す
るメモリ管理装置におけるメモリ管理方法であって、T
LB変換を行う命令が分岐命令である場合に、カウント
値が一番大きい分岐変換レジスタに関連付けられたTL
B部を選択して動作させ、その選択したTLB部におい
て、入力される仮想アドレスと格納されたアドレスとを
比較し、両アドレスが一致したとき格納された物理アド
レスから対応する物理アドレスを出力することを特徴と
する。
【0012】請求項8記載の発明は、上記したカウント
信号が、入力された仮想アドレスと物理アドレスとを比
較して両アドレスが一致したときに、該比較を行った比
較手段を含むTLB部から、当該TLB部に関連付けら
れて設けられた分岐変換レジスタにアサートされたこと
を特徴とする。
【0013】請求項9記載の発明は、アドレス空間ID
が切り替えられたときにカウント値を加算するレジスタ
を有するメモリ管理装置のプログラムを記憶した記憶媒
体であって、メモリ管理装置に、レジスタのカウント値
に関連付けられたTLB部を選択して動作させる処理
と、選択したTLB部において、入力される仮想アドレ
スと格納されたアドレスとを比較する比較処理と、両ア
ドレスが一致したとき格納された物理アドレスから対応
する物理アドレスを出力する処理とを実行させることを
特徴とする
【0014】請求項10記載の発明は、上記した比較処
理で両アドレスが一致しない場合、複数のTLB部を巡
回的に動作させることを特徴とする
【0015】請求項11記載の発明は、TLB変換を行
う命令が分岐命令である場合に、複 数のTLB部のそれ
ぞれに関連付けられて設けられてカウント信号がアサー
トされるとカウント値を加算する分岐変換レジスタを有
するメモリ管理装置のプログラムを記憶した記憶媒体で
あって、メモリ管理装置に、TLB変換を行う命令が分
岐命令である場合に、カウント値が一番大きい分岐変換
レジスタに関連付けられたTLB部を選択して動作させ
る処理と、選択したTLB部において、入力される仮想
アドレスと格納されたアドレスとを比較する処理と、両
アドレスが一致したとき格納された物理アドレスから対
応する物理アドレスを出力する処理とを実行させること
を特徴とする
【0016】請求項12記載の発明は、上記したカウン
ト信号が、入力された仮想アドレスと物理アドレスとを
比較して両アドレスが一致したときに、該比較を行った
比較手段を含むTLB部から、当該TLB部に関連付け
られて設けられた分岐変換レジスタにアサートされたこ
とを特徴とする。
【0017】
【発明の実施の形態】以下、本発明の第1及び第2の実
施形態を図面と共に説明する。各実施形態は、TLBエ
ントリを小分割し、どの小TLBをアドレス変換に使用
するのかを、TLBアービタが巡回優先順位方式又は分
岐予測方式で管理することを特徴とする。
【0018】図1は本発明の第1の実施形態を示すブロ
ック図である。図1において、TLBアービタ5は、M
MU1に入力される仮想アドレス2を巡回優先順位方式
で第1のTLB6、第2のTLB7、第3のTLB8、
第4のTLB9の内、どれを変換バッファとして使うか
を選択する。
【0019】メモリ管理ユニット(MMU)1は、仮想
アドレスバス2から仮想アドレスを入力し、物理アドレ
スバス3に物理アドレスを出力する機能を有している。
MMU1は、TLBアービタ5及び第1のTLB6、第
2のTLB7、第3のTLB8、第4のTLB9を有す
る。TLB6〜9は、それぞれ4つのエントリを持つ。
TLBアービタ5は、TLB6〜9の内、どれを使用す
るのかを巡回優先順位方式で決定する。
【0020】決定した後、TLB6〜9にはTLB変換
許可信号10〜13がアサートされる。TLB変換が行
われた後、TLB変換カウント信号14〜17がアサー
トされ、TLB通常変換カウント値レジスタ22〜25
のカウントがアップする。なお、レジスタ26〜29
は、後述する第2の実施形態による分岐予測方式を行う
ときに用いられる。
【0021】TLBカウントユニット初期化信号30が
アサートされると、TLB通常変換カウント値レジスタ
22〜25、及びTLB分岐変換カウントレジスタ26
〜29のカウント値が0に初期化される。仮想アドレス
バス2から入力された仮想アドレスが、TLB6〜9の
いずれの仮想アドレス格納メモリの値と一致しない場合
には、TLBミスヒット信号31がアサートされる。
【0022】タスク切替信号32は、オペレーティング
システムによって、アドレス空間IDが切り替えられた
ときにアサートされる。レジスタ33は、TLB6〜9
の内、どのTLBで変換を行っているときにタスク切替
信号32がアサートされたのかの番号を示しているレジ
スタである。番号はTLB6が1、TLB7が2、TL
B8が3、TLB9が4に対応している。
【0023】レジスタ33は、タスク切替信号32によ
って、1ずつ加算される。本実施形態では、TLB6〜
9の4つが示されているので、3ビットのレジスタで構
成されており、レジスタの値が4(すなわち3’b10
0)になったときに、タスク切替信号32がアサートさ
れると、レジスタの値は1に戻る。レジスタ33の初期
値は1になっている。
【0024】図2は、第1のTLB6の構成である。1
つのエントリには、仮想アドレスバス2から仮想アドレ
スが入力され、物理アドレスバス3に物理アドレスが出
力される。1 つのエントリは、仮想アドレス比較器10
1、物理アドレス出力バッファ103、仮想アドレス格
納メモリ104、物理アドレス格納メモリ105、論理
積回路106で構成される。以下、エントリ2〜4も同
じ構成である。
【0025】さらに、各エントリ1〜4からは、物理ア
ドレス出力許可信号108〜111が出力されている。
エンコーダ107は、物理アドレス出力許可信号108
〜111の内、いずれか1つがアサートされたときにの
み、TLB変換カウント信号14をアサートする。ま
た、エンコーダ107は、物理アドレス出力許可信号1
08〜111の内、複数のTLB変換許可信号がアサー
トされているときや、どのTLB変換許可信号もアサー
トされていないときには、TLB変換カウント信号14
をネゲートする。
【0026】仮想アドレスバス2から入力された仮想ア
ドレスと、仮想アドレス格納メモリ104の値とが等し
いときは、ヒット信号102がアサートされて、物理ア
ドレス出力バッファ103から物理アドレスバス3に物
理アドレスが出力される。TLB変換許可信号10がア
サートされていないときには、論理積回路106からの
出力がネゲートされるので、物理アドレス出力バッファ
103からの物理アドレスの出力はない。なお、上記説
明では、第1のTLB6について述べたが、TLB7〜
9についても同じ構成及び動作である。
【0027】次に、図1の回路の動作について、図1、
図2、図3、図4を参照しながら説明する。図3、図4
は図1、図2の回路の動作を示すフローチャートであ
る。MMU1を使用するための前処理として、オペレー
ティングシステムは、システム起動時に、TLB6〜9
内の仮想アドレス格納メモリ104には仮想アドレス
を、物理アドレス格納メモリ105には物理アドレスを
登録する処理を行う。
【0028】TLB変換を開始すると、TLBアービタ
5は、TLB変換許可信号1(10)をアサートする
(ステップA1) 。これで、TLB6は変換可能状態と
なり、TLB変換処理を行う(ステップA2) 。第1の
TLB6は、TLB変換許可信号1(10)がアサート
されると、入力された仮想アドレスと、仮想アドレス格
納メモリ104に格納されている値が等しいかどうかの
判定を、仮想アドレス比較器101にて行い(ステップ
A3) 、等しい場合には、ヒット信号102がアサート
され、等しくない場合には、ヒット信号102はアサー
トされない(ステップA4) 。
【0029】ヒット信号102がアサートされていれ
ば、TLB6は、物理アドレスを出力し、且つ物理アド
レス出力許可信号108をアサートするので、エンコー
ダ107はTLB変換カウント信号1(14)をアサー
トし、TLB変換カウントユニット1(18)は、TL
B変換通常カウント値レジスタ1(22)に保存されて
いる値をカウントアップする(ステップA5) 。
【0030】ヒット信号102がつのエントリでどれ
もアサートされなければ、TLB変換カウント信号1
(14)はアサートされないので、TLB変換通常カウ
ント値レジスタ1(22)に保存されている値は変化せ
ず、TLBアービタ5は、TLB変換許可信号1(1
0)をネゲートし、TLB変換許可信号2(11)をア
サートする(ステップB1) 。
【0031】TLB変換許可信号2(11)がアサート
されると、TLB7は変換可能状態となり、TLB変換
処理を行う(ステップB2)。第2のTLB7は、TL
B変換許可信号2(11)がアサートされると、入力さ
れた仮想アドレスと、仮想アドレス格納メモリに格納さ
れている値が等しいかどうかの判定を、仮想アドレス比
較器にて行い(ステップB3) 、等しい場合には、ヒッ
ト信号がアサートされ、等しくない場合には、ヒット信
号はアサートされない(ステップB4) 。
【0032】ヒット信号がアサートされていれば、TL
B7は、物理アドレスを出力し、且つ物理アドレス出力
許可信号をアサートするので、エンコーダはTLB変換
カウント信号2(15)をアサートし、TLB変換カウ
ントユニット2(19)は、TLB変換通常カウント値
レジスタ2(23)に保存されている値をカウントアッ
プする(ステップB5)。ヒット信号が4つのエントリ
でどれもアサートされなければ、TLB変換カウント信
号2(15)はアサートされないので、TLB変換通常
カウント値レジスタ2(23)に保存されている値は変
化せず、TLBアービタ5は、TLB変換許可信号2
(11)をネゲートし、TLB変換許可信号3(12)
をアサートする(ステップC1)。
【0033】TLB変換許可信号3(12)がアサート
されると、TLB8は変換可能状態となり、TLB変換
処理を行う(ステップC2) 。第2のTLB8は、TL
B変換許可信号3(12)がアサートされると、入力さ
れた仮想アドレスと、仮想アドレス格納メモリに格納さ
れている値が等しいかどうかの判定を、仮想アドレス比
較器にて行い(ステップC3) 、等しい場合には、ヒッ
ト信号がアサートされ、等しくない場合には、ヒット信
号はアサートされない(ステップC4) 。
【0034】ヒット信号がアサートされていれば、TL
B8は、物理アドレスを出力し、且つ物理アドレス出力
許可信号をアサートするので、エンコーダはTLB変換
カウント信号3(16)をアサートし、TLB変換カウ
ントユニット3(20)は、TLB変換通常カウント値
レジスタ3(24)に保存されている値をカウントアッ
プする(ステップC5) 。
【0035】ヒット信号が4つのエントリでどれもアサ
ートされなければ、TLB変換カウント信号3(16)
はアサートされないので、TLB変換通常カウント値レ
ジスタ3(24)に保存されている値は変化せず、TL
Bアービタ5は、TLB変換許可信号3(12)をネゲ
ートし、TLB変換許可信号4(13)をアサートする
(ステップD1) 。
【0036】TLB変換許可信号4(13)がアサート
されると、TLB9は変換可能状態となり、TLB変換
処理を行う(ステップD2) 。第2のTLB9は、TL
B変換許可信号4(13)がアサートされると、入力さ
れた仮想アドレスと、仮想アドレス格納メモリに格納さ
れている値が等しいかどうかの判定を、仮想アドレス比
較器にて行い(ステップD3) 、等しい場合には、ヒッ
ト信号がアサートされ、等しくない場合には、ヒット信
号はアサートされない(ステップD4) 。
【0037】ヒット信号がアサートされていれば、TL
B9は、物理アドレスを出力し、且つ物理アドレス出力
許可信号をアサートするので、エンコーダはTLB変換
カウント信号4(17)をアサートし、TLB変換カウ
ントユニット4(21)は、TLB変換通常カウント値
レジスタ4(25)に保存されている値をカウントアッ
プする(ステップD5) 。
【0038】ヒット信号が4つのエントリでどれもアサ
ートされなければ、TLB変換カウント信号4(17)
はアサートされないので、TLB変換通常カウント値レ
ジスタ4(25)に保存されている値は変化せず、TL
Bアービタ5は、TLB変換許可信号4(13)をネゲ
ートし、TLBミスヒット信号31をアサートする。
【0039】TLBカウントユニット初期化信号30
は、TLB変換許可信号10〜13がアサートされてい
る、いないに関わらず、常にアサートすることができ、
アサートによって、TLB通常変換カウント値レジスタ
22〜25をすべて0に初期化する。
【0040】オペレーティングシステムによって、アド
レス空間IDが切り替えられたときには、タスク切替信
号32がアサートされ、レジスタ33の値が1だけ加算
される。もし、レジスタ33の値が4(3’b100)
ならば、レジスタ33の値は1に戻る。例えば、レジス
タ33の値が2のとき、すなわち、TLB7にてTLB
変換を行っている時に、タスク切替信号32がアサート
されたときには、レジスタ33の値は3になり、これ以
降、TLB8→TLB9→TLB6→TLB7という順
番にてTLB変換を行う。
【0041】これらをまとめると、レジスタ33の値が
1のときには、TLB6→TLB7→TLB8→TLB
9、レジスタ33の値が2のときには、TLB7→TL
B8→TLB9→TLB6、レジスタ33の値が3のと
きには、TLB8→TLB9→TLB6→TLB7、レ
ジスタ33の値が4のときには、TLB9→TLB6→
TLB7→TLB8、というようにTLB変換を行う順
番を変化させていく。
【0042】次に、本発明の第2の実施形態について、
図5を参照して説明する。本実施形態においては、分岐
アドレス変換要求信号4が追加されている。分岐アドレ
ス変換要求信号4は、TLB変換を行う命令が分岐命令
(jmp等) であったときにアサートされる。
【0043】分岐アドレス変換要求信号4がアサートさ
れると、TLB通常変換カウント値レジスタ22〜25
の代わりに、TLB分岐変換カウント値レジスタ26〜
29が使われるように、TLB変換カウントユニット1
8〜21は制御を行う。TLB変換カウント信号14〜
17がアサートされると、TLB分岐変換カウント値レ
ジスタ26〜29の値は1加算される。
【0044】さらに、タスク切替信号32と同時に、分
岐アドレス変換要求信号4がアサートされると、TLB
アービタ5はTLB分岐変換カウント値レジスタ26〜
29の内、一番カウント値が大きいところのTLBに対
してTLB変換要求信号をアサートする。例えば、TL
B分岐変換カウント値レジスタ26〜29の内、一番カ
ウント値が大きいのが、TLB分岐変換カウント値レジ
スタ27だったとすれば、TLB変換要求信号2(1
1)がアサートされ、TLB7→TLB8→TLB9→
TLB6の順でTLB変換が行われることになる。
【0045】これにより、分岐命令に使われるTLBを
限定できるので、特定の分岐先が多いプログラムを実行
させるときには、特定のTLBに分岐命令で使用する仮
想アドレス、物理アドレスを格納すればよいという特徴
を持つ。
【0046】以上述べた本発明の各実施の形態によれ
ば、仮想アドレスを比較する回数が少なくて済むと共
に、常に一つのTLBのみを動作させるので、低消費電
力で動作が可能になる。
【0047】次に、前述した従来の技術で例示した各公
報における技術と、本発明とを比較する。まず、上記特
開平4−328656号公報には、キャッシュのセンス
アンプの消費電力を削減することについて記載されてい
る。しかし、本発明はセンスアンプのオン・オフにより
低消費電力化を狙うものではない。本発明においては、
TLBでは、一度タグメモリを比較すると、そのタグを
比較し続けるという「局所性」を持っている。この局所
性により、上記公報の技術を行わなくても低消費電力化
を実現できてしまうことになる。また、本発明は、セン
スアンプのないタイプ、即ち、全てのTLBをゲートア
レイで構成する場合にも適用することができる。
【0048】また、上記特開平9−161488号公報
は、CAMメモリを複数のブロックに分割し、さらに対
応する複数の比較部を並列動作させることにより、比較
部の回路規模を小さくするというものである。これに対
して本発明は、複数の比較部が同時に動作するのではな
く、常に一つの小TLBのみを動作させることによっ
て、低消費電力化を実現するものである。
【0049】また、上記特開平10−111832号公
報は、タグメモリを大小に分割して、大タグメモリをア
クセスする回数を減らすというものである。これに対し
て本発明は、タグメモリを分割するものではない。ま
た、上記公報のようにNウェイのセットアソシアティブ
方式ではない。
【0050】また、上記特公平6−100987号公報
は、アドレス変換バッファを分割する/しないモードを
設け、分割モードでは、特定の領域をOSのアドレス変
換専用に割り当てるというものである。これに対して本
発明は、上記分割する/しないモードは存在しない。さ
らに、特定の領域をOS専用にするのではなく、アドレ
ス変換の頻度が多いものを小TLBに割り当てておくこ
とにより、アドレス比較対象が減り、消費電力化を実現
することができる。
【0051】なお、図1、図5の構成を、CPUやメモ
リから成るコンピュータシステムで制御する場合、上記
メモリは本発明による記憶媒体を構成する。この記憶媒
体には、図3、図4のフローチャートによる処理を実行
するためのプログラムが格納される。この記憶媒体とし
ては、半導体メモリ、光ディスク、光磁気ディスク、磁
気媒体等を用いることができる。
【0052】
【発明の効果】以上の説明より明らかなように、本発明
のメモリ管理装置、方法及びプログラムを記憶した記憶
媒体によれば、仮想アドレスを比較する回数を少なくす
ることができる。その理由は、常に同時に仮想アドレス
を比較するのは、実施の形態の場合たかだか4つにすぎ
ないからである。
【0053】また、本発明のメモリ管理装置、方法及び
プログラムを記憶した記憶媒体によれば、低消費電力で
の動作が可能になる。その理由は、一つのTLBが変換
処理中であるときには、そのほかのTLBは変換処理を
行わないためである。
【図面の簡単な説明】
【図1】本発明の第1の実施形態を示すブロック図であ
る。
【図2】図1のTLBの部分の詳細な構成を示すブロッ
ク図である。
【図3】TLBアービタ5、及びTLB6〜9の動作を
示すフローチャートである。
【図4】図3の第1〜第4のTLBの変換処理の詳細な
構成を示すブロック図である。
【図5】本発明の第2の実施形態を示すブロック図であ
る。
【図6】従来例を示すブロック図である。
【符号の説明】
1 MMU 2 仮想アドレスバス 3 物理アドレスバス 4 分岐アドレス変換要求信号 5 TLBアービタ 6 第1のTLB 7 第2のTLB 8 第3のTLB 9 第4のTLB 10 TLB変換許可信号1 11 TLB変換許可信号2 12 TLB変換許可信号3 13 TLB変換許可信号4 14 TLB変換カウント信号1 15 TLB変換カウント信号2 16 TLB変換カウント信号3 17 TLB変換カウント信号4 18 TLB変換カウントユニット1 19 TLB変換カウントユニット2 20 TLB変換カウントユニット3 21 TLB変換カウントユニット4 22 TLB通常変換カウント値レジスタ1 23 TLB通常変換カウント値レジスタ2 24 TLB通常変換カウント値レジスタ3 25 TLB通常変換カウント値レジスタ4 26 TLB分岐変換カウント値レジスタ1 27 TLB分岐変換カウント値レジスタ2 28 TLB分岐変換カウント値レジスタ3 29 TLB分岐変換カウント値レジスタ4 30 TLBカウントユニット初期化信号 31 TLBミスヒット信号 32 タスク切替信号 33 レジスタ 101 仮想アドレス比較器 102 ヒット信号 103 物理アドレス出力バッファ 104 仮想アドレス格納メモリ 105 物理アドレス格納メモリ 106 論理積回路 107 エンコーダ
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G06F 12/08 - 12/12

Claims (12)

    (57)【特許請求の範囲】
  1. 【請求項1】 仮想アドレスと物理アドレスとを格納す
    る格納手段と、 入力される仮想アドレスと前記格納手段により格納され
    たアドレスとを比較する比較手段と、 前記両アドレスが一致したとき前記格納手段により格納
    された物理アドレスから対応する物理アドレスを出力す
    る出力手段とをそれぞれ含んで成る複数のTLB部と、アドレス空間IDが切り替えられたときにカウント値を
    加算するレジスタを有し、加算された該カウント値に関
    連付けられたTLB部を 選択して動作させる制御手段と
    を有することを特徴とするメモリ管理装置。
  2. 【請求項2】 前記制御手段は、前記選択されたTLB
    部を動作させて前記比較手段により比較を行わせ前記両
    アドレスが一致しない場合、前記複数のTLB部を巡回
    的に動作させることを特徴とする請求項1記載のメモリ
    管理装置。
  3. 【請求項3】 仮想アドレスと物理アドレスとを格納す
    る格納手段と、 入力される仮想アドレスと前記格納手段により格納され
    たアドレスとを比較する比較手段と、 前記両アドレスが一致したとき前記格納手段により格納
    された物理アドレスから対応する物理アドレスを出力す
    る出力手段とをそれぞれ含んで成る複数のTLB部と、TLB変換を行う命令が分岐命令である場合に、前記複
    数のTLB部のそれぞれに関連付けられて設けられてカ
    ウント信号がアサートされるとカウント値を加算する分
    岐変換レジスタを有して、カウント値が一番大きい分岐
    変換レジスタに関連付けられたTLB部を 選択して動作
    させる制御手段とを有することを特徴とするメモリ管理
    装置。
  4. 【請求項4】 前記カウント信号は、前記比較手段によ
    る前記比較により前記両アドレスが一致したときに、当
    該比較手段を含むTLB部から、当該TLB部に関連付
    けられて設けられた分岐変換レジスタにアサートされる
    ことを特徴と する請求項3記載のメモリ管理装置。
  5. 【請求項5】 アドレス空間IDが切り替えられたとき
    にカウント値を加算するレジスタを有するメモリ管理装
    置におけるメモリ管理方法であって、 前記レジスタのカウント値に関連付けられたTLB部を
    選択して動作させ、その選択したTLB部において、入
    力される仮想アドレスと格納されたアドレスとを比較
    し、両アドレスが一致したとき格納された物理アドレス
    から対応する物理アドレスを出力することを特徴とする
    メモリ管理方法。
  6. 【請求項6】 前記選択されたTLB部を動作させて前
    記比較を行い、前記両アドレスが一致しない場合、前記
    複数のTLB部を巡回的に動作させることを特徴とする
    請求項5記載のメモリ管理方法。
  7. 【請求項7】 TLB変換を行う命令が分岐命令である
    場合に、前記複数のTLB部のそれぞれに関連付けられ
    て設けられてカウント信号がアサートされるとカウント
    値を加算する分岐変換レジスタを有するメモリ管理装置
    におけるメモリ管理方法であって、 TLB変換を行う命令が分岐命令である場合に、カウン
    ト値が一番大きい分岐変換レジスタに関連付けられたT
    LB部を 選択して動作させ、その選択したTLB部にお
    いて、入力される仮想アドレスと格納されたアドレスと
    を比較し、両アドレスが一致したとき格納された物理ア
    ドレスから対応する物理アドレスを出力することを特徴
    とするメモリ管理方法。
  8. 【請求項8】 前記カウント信号は、入力された仮想ア
    ドレスと物理アドレスとを比較して両アドレスが一致し
    たときに、該比較を行った比較手段を含むTLB部か
    ら、当該TLB部に関連付けられて設けられた分岐変換
    レジスタにアサートされたことを特徴とする請求項7記
    載のメモリ管理方法。
  9. 【請求項9】 アドレス空間IDが切り替えられたとき
    にカウント値を加算するレジスタを有するメモリ管理装
    置のプログラムを記憶した記憶媒体であって、 前記メモリ管理装置に、 前記レジスタのカウント値に関連付けられたTLB部を
    選択して動作させる処理と、 前記選択したTLB部において、入力される仮想アドレ
    スと格納されたアドレスとを比較する比較処理と、 前記両アドレスが一致したとき格納された物理アドレス
    から対応する物理アドレスを出力する処理とを実行させ
    ためのプログラムを記憶した記憶媒体。
  10. 【請求項10】 前記比較処理で前記両アドレスが一致
    しない場合、前記複数のTLB部を巡回的に動作させる
    ことを特徴とする請求項9記載のプログラムを記憶した
    記憶媒体。
  11. 【請求項11】 TLB変換を行う命令が分岐命令であ
    る場合に、前記複数のTLB部のそれぞれに関連付けら
    れて設けられてカウント信号がアサートされるとカウン
    ト値を加算する分岐変換レジスタを有するメモリ管理装
    置のプログラムを記憶した記憶媒体であって、 前記メモリ管理装置に、 TLB変換を行う命令が分岐命令である場合に、カウン
    ト値が一番大きい分岐変換レジスタに関連付けられたT
    LB部を 選択して動作させる処理と、 前記選択したTLB部において、入力される仮想アドレ
    スと格納されたアドレスとを比較する処理と、 前記両アドレスが一致したとき格納された物理アドレス
    から対応する物理アドレスを出力する処理とを実行させ
    ためのプログラムを記憶した記憶媒体。
  12. 【請求項12】 前記カウント信号は、入力された仮想
    アドレスと物理アドレスとを比較して両アドレスが一致
    したときに、該比較を行った比較手段を含むTLB部か
    ら、当該TLB部に関連付けられて設けられた分岐変換
    レジスタにアサートされたことを特徴とする請求項11
    記載のプログラムを記憶した記憶媒体。
JP32256198A 1998-11-12 1998-11-12 メモリ管理装置、方法及びプログラムを記憶した記憶媒体 Expired - Fee Related JP3447588B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP32256198A JP3447588B2 (ja) 1998-11-12 1998-11-12 メモリ管理装置、方法及びプログラムを記憶した記憶媒体

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP32256198A JP3447588B2 (ja) 1998-11-12 1998-11-12 メモリ管理装置、方法及びプログラムを記憶した記憶媒体

Publications (2)

Publication Number Publication Date
JP2000148589A JP2000148589A (ja) 2000-05-30
JP3447588B2 true JP3447588B2 (ja) 2003-09-16

Family

ID=18145062

Family Applications (1)

Application Number Title Priority Date Filing Date
JP32256198A Expired - Fee Related JP3447588B2 (ja) 1998-11-12 1998-11-12 メモリ管理装置、方法及びプログラムを記憶した記憶媒体

Country Status (1)

Country Link
JP (1) JP3447588B2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100450675B1 (ko) 2002-03-19 2004-10-01 삼성전자주식회사 성능향상 및 전력소모를 감소시킬 수 있는 tlb
JP4026753B2 (ja) 2002-07-25 2007-12-26 株式会社日立製作所 半導体集積回路
JP3806131B2 (ja) * 2003-05-21 2006-08-09 富士通株式会社 アドレス変換バッファの電力制御方法及びその装置
JP4635063B2 (ja) * 2008-03-11 2011-02-16 株式会社東芝 キャッシュメモリ制御回路及びプロセッサ

Also Published As

Publication number Publication date
JP2000148589A (ja) 2000-05-30

Similar Documents

Publication Publication Date Title
JP3666689B2 (ja) 仮想アドレス変換方法
JP3740195B2 (ja) データ処理装置
US8156309B2 (en) Translation look-aside buffer with variable page sizes
US5265227A (en) Parallel protection checking in an address translation look-aside buffer
JP4065660B2 (ja) 機能が並列に分散された変換索引バッファ
US6493812B1 (en) Apparatus and method for virtual address aliasing and multiple page size support in a computer system having a prevalidated cache
US20040221128A1 (en) Virtual to physical memory mapping in network interfaces
JPH1091525A (ja) 変換索引バッファ及びメモリ管理システム
JP2001184263A (ja) 旧キャッシュラインを無効化および除去する装置
JPH0619793A (ja) キャッシュ・アクセスのための仮想アドレス変換予測の履歴テーブル
JPH04320553A (ja) アドレス変換機構
JPH07191903A (ja) データ処理システムおよび動作方法
JPH0685156B2 (ja) アドレス変換装置
JP3045952B2 (ja) フルアソシアティブ・アドレス変換器
US5860097A (en) Associative cache memory with improved hit time
JP2930071B2 (ja) 情報処理装置およびプロセッサ
JPH04308953A (ja) 仮想アドレス計算機装置
JP3447588B2 (ja) メモリ管理装置、方法及びプログラムを記憶した記憶媒体
JP2846697B2 (ja) キャッシュメモリ制御装置
US5619673A (en) Virtual access cache protection bits handling method and apparatus
US7076635B1 (en) Method and apparatus for reducing instruction TLB accesses
US6327646B1 (en) Translation look-aside buffer utilizing high-order bits for fast access
JPH03235143A (ja) キャッシュメモリ制御装置
JPS5858752B2 (ja) アドレス変換装置
JPH0962582A (ja) 疑似セットアソシアティブ方式キャッシュメモリ装置

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20030603

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20070704

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20080704

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090704

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100704

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100704

Year of fee payment: 7

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100704

Year of fee payment: 7

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110704

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120704

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120704

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130704

Year of fee payment: 10

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

LAPS Cancellation because of no payment of annual fees