JPH06309196A - トレース機能付情報処理装置 - Google Patents
トレース機能付情報処理装置Info
- Publication number
- JPH06309196A JPH06309196A JP5116377A JP11637793A JPH06309196A JP H06309196 A JPH06309196 A JP H06309196A JP 5116377 A JP5116377 A JP 5116377A JP 11637793 A JP11637793 A JP 11637793A JP H06309196 A JPH06309196 A JP H06309196A
- Authority
- JP
- Japan
- Prior art keywords
- address
- register
- stored
- identifier
- space
- 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
Links
- 230000010365 information processing Effects 0.000 claims description 20
- 230000006870 function Effects 0.000 claims description 13
- 238000012546 transfer Methods 0.000 claims description 2
- 102100026338 F-box-like/WD repeat-containing protein TBL1Y Human genes 0.000 description 4
- 101000835691 Homo sapiens F-box-like/WD repeat-containing protein TBL1X Proteins 0.000 description 4
- 101000835690 Homo sapiens F-box-like/WD repeat-containing protein TBL1Y Proteins 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 3
- 238000013519 translation Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000007796 conventional method Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 238000000034 method Methods 0.000 description 1
Landscapes
- Debugging And Monitoring (AREA)
- Memory System Of A Hierarchy Structure (AREA)
Abstract
(57)【要約】
【目的】 所定のプログラムがTLBやキャッシュメモ
リの内容に影響することを防止する。 【構成】 プログラムの実行の際、第一空間識別子レジ
スタ11に格納された識別子と、第二空間識別子レジス
タ12に格納された識別子とが比較回路13により比較
される。第二空間識別子レジスタ12には、所定のプロ
グラムの識別子が格納される。トレースプログラムが実
行される際は、それが比較回路13により検出され、T
LB制御部14及びキャッシュ制御部15によりそれぞ
れTLB1及びキャッシュメモリ3への格納が禁止され
る。これにより、例えば、トレースを行なうことにより
TLB1やキャッシュメモリ3の内容が通常の内容と変
わってしまうことを防止できる。従って、TLB1やキ
ャッシュメモリ3の内容もトレースすることができる。
リの内容に影響することを防止する。 【構成】 プログラムの実行の際、第一空間識別子レジ
スタ11に格納された識別子と、第二空間識別子レジス
タ12に格納された識別子とが比較回路13により比較
される。第二空間識別子レジスタ12には、所定のプロ
グラムの識別子が格納される。トレースプログラムが実
行される際は、それが比較回路13により検出され、T
LB制御部14及びキャッシュ制御部15によりそれぞ
れTLB1及びキャッシュメモリ3への格納が禁止され
る。これにより、例えば、トレースを行なうことにより
TLB1やキャッシュメモリ3の内容が通常の内容と変
わってしまうことを防止できる。従って、TLB1やキ
ャッシュメモリ3の内容もトレースすることができる。
Description
【0001】
【産業上の利用分野】本発明は、仮想記憶方式あるいは
キャッシュ記憶方式を備えたトレース機能付情報処理装
置に関するものである。
キャッシュ記憶方式を備えたトレース機能付情報処理装
置に関するものである。
【0002】
【従来の技術】一般に、トレース機能付情報処理装置に
おいては、トレースによりプログラムの実行途中の主記
憶装置の内容等を出力することができる。このようなト
レースは、被トレースプログラムとともにトレース用プ
ログラムを実行することにより行なわれる。
おいては、トレースによりプログラムの実行途中の主記
憶装置の内容等を出力することができる。このようなト
レースは、被トレースプログラムとともにトレース用プ
ログラムを実行することにより行なわれる。
【0003】一方、情報処理装置は、多重仮想記憶方式
を用いたものが一般的である。多重仮想記憶方式では、
複数のアドレス空間(仮想記憶空間)が設けられ、1つ
のプログラムに対して1つのアドレス空間が割当てられ
る。従って、トレース用プログラムに対しても1つのア
ドレス空間が割当てられる。このような仮想記憶方式で
は、DAT変換により各アドレス空間の論理アドレスを
物理アドレスに変換する。そして、アドレス変換を高速
に行なうため一度アドレス計算を行なった物理アドレス
を論理アドレスと対応させてTLBと呼ばれるテーブル
に格納する。また、多くの情報処理装置には、キャッシ
ュ記憶方式が用いられている。このようなキャッシュ記
憶方式では、主記憶装置の記憶内容の一部を高速のアク
セスが可能なキャッシュメモリに格納するようにしてい
る。そして、キャッシュメモリに参照頻度の高いデータ
を格納し、主記憶装置をアクセスする代わりに高速のキ
ャッシュメモリをアクセスして処理速度を向上させるよ
うにしている。
を用いたものが一般的である。多重仮想記憶方式では、
複数のアドレス空間(仮想記憶空間)が設けられ、1つ
のプログラムに対して1つのアドレス空間が割当てられ
る。従って、トレース用プログラムに対しても1つのア
ドレス空間が割当てられる。このような仮想記憶方式で
は、DAT変換により各アドレス空間の論理アドレスを
物理アドレスに変換する。そして、アドレス変換を高速
に行なうため一度アドレス計算を行なった物理アドレス
を論理アドレスと対応させてTLBと呼ばれるテーブル
に格納する。また、多くの情報処理装置には、キャッシ
ュ記憶方式が用いられている。このようなキャッシュ記
憶方式では、主記憶装置の記憶内容の一部を高速のアク
セスが可能なキャッシュメモリに格納するようにしてい
る。そして、キャッシュメモリに参照頻度の高いデータ
を格納し、主記憶装置をアクセスする代わりに高速のキ
ャッシュメモリをアクセスして処理速度を向上させるよ
うにしている。
【0004】
【発明が解決しようとする課題】しかしながら、上述し
た従来の技術には、次のような問題があった。即ち、従
来の情報処理装置では、トレースを行なう場合にトレー
ス用プログラムについてもアドレス空間内の論理アドレ
スから物理アドレスへのアドレス計算を行なった後、そ
の結果をTLBに格納していた。従って、トレースを行
なう場合と、トレースを行なわない通常の場合とでTL
Bの内容が異なってしまった。このため、トレースによ
り通常の実行状態でのTLBの内容を調べることができ
なかった。
た従来の技術には、次のような問題があった。即ち、従
来の情報処理装置では、トレースを行なう場合にトレー
ス用プログラムについてもアドレス空間内の論理アドレ
スから物理アドレスへのアドレス計算を行なった後、そ
の結果をTLBに格納していた。従って、トレースを行
なう場合と、トレースを行なわない通常の場合とでTL
Bの内容が異なってしまった。このため、トレースによ
り通常の実行状態でのTLBの内容を調べることができ
なかった。
【0005】また、従来の情報処理装置では、トレース
を行なう場合にトレース用プログラムについても主記憶
装置からキャッシュメモリへのデータ転送を行なってい
た。従って、トレースを行なう場合と、トレースを行な
わない通常の場合とでキャッシュメモリの内容も異なっ
てしまった。このため、トレースにより通常の実行状態
でのキャッシュメモリの内容を調べることができなかっ
た。従って、トレースによりTLBやキャッシュメモリ
の内容を解析することはできなかった。本発明は、以上
の点に着目してなされたもので、トレースによりTLB
及びキャッシュメモリの内容が変更されず、これらの内
容も解析してプログラムの作成に利用できるようにした
トレース機能付情報処理装置を提供することを目的とす
るものである。
を行なう場合にトレース用プログラムについても主記憶
装置からキャッシュメモリへのデータ転送を行なってい
た。従って、トレースを行なう場合と、トレースを行な
わない通常の場合とでキャッシュメモリの内容も異なっ
てしまった。このため、トレースにより通常の実行状態
でのキャッシュメモリの内容を調べることができなかっ
た。従って、トレースによりTLBやキャッシュメモリ
の内容を解析することはできなかった。本発明は、以上
の点に着目してなされたもので、トレースによりTLB
及びキャッシュメモリの内容が変更されず、これらの内
容も解析してプログラムの作成に利用できるようにした
トレース機能付情報処理装置を提供することを目的とす
るものである。
【0006】
【課題を解決するための手段】第1発明のトレース機能
付情報処理装置は、現在アクセス対象となる論理アドレ
スを格納する論理アドレスレジスタと、現在実行されて
いるプログラムが格納されるアドレス空間の識別子を格
納する第一空間識別子レジスタと、所定のプログラムが
格納されるアドレス空間の識別子を格納する第二空間識
別子レジスタと、前記論理アドレスレジスタに格納され
た論理アドレスを物理アドレスに変換する際、前記第一
空間識別子レジスタに格納された識別子及び前記第二空
間識別子レジスタに格納された識別子が一致しているか
否かを判定する比較回路と、当該比較回路によりこれら
の識別子が一致していると判定される場合は、前記論理
アドレスレジスタに格納された論理アドレスを物理アド
レスに変換した際これのTLBへの格納を禁止するTL
B制御部とを備えたことを特徴とするものである。
付情報処理装置は、現在アクセス対象となる論理アドレ
スを格納する論理アドレスレジスタと、現在実行されて
いるプログラムが格納されるアドレス空間の識別子を格
納する第一空間識別子レジスタと、所定のプログラムが
格納されるアドレス空間の識別子を格納する第二空間識
別子レジスタと、前記論理アドレスレジスタに格納され
た論理アドレスを物理アドレスに変換する際、前記第一
空間識別子レジスタに格納された識別子及び前記第二空
間識別子レジスタに格納された識別子が一致しているか
否かを判定する比較回路と、当該比較回路によりこれら
の識別子が一致していると判定される場合は、前記論理
アドレスレジスタに格納された論理アドレスを物理アド
レスに変換した際これのTLBへの格納を禁止するTL
B制御部とを備えたことを特徴とするものである。
【0007】第2発明のトレース機能付情報処理装置
は、現在アクセス対象となるアドレスを格納するアドレ
スレジスタと、現在実行されているプログラムが格納さ
れるアドレス空間の識別子を格納する第一空間識別子レ
ジスタと、所定のプログラムが格納されるアドレス空間
の識別子を格納する第二空間識別子レジスタと、前記第
一空間識別子レジスタに格納された識別子及び前記第二
空間識別子レジスタに格納された識別子が一致している
か否かを判定する比較回路と、当該比較回路によりこれ
らの識別子が一致していると判定される場合は、前記ア
ドレスレジスタに格納されたアドレスに存在するデータ
をキャッシュメモリへ転送することを禁止するキャッシ
ュ制御部とを備えたことを特徴とするものである。
は、現在アクセス対象となるアドレスを格納するアドレ
スレジスタと、現在実行されているプログラムが格納さ
れるアドレス空間の識別子を格納する第一空間識別子レ
ジスタと、所定のプログラムが格納されるアドレス空間
の識別子を格納する第二空間識別子レジスタと、前記第
一空間識別子レジスタに格納された識別子及び前記第二
空間識別子レジスタに格納された識別子が一致している
か否かを判定する比較回路と、当該比較回路によりこれ
らの識別子が一致していると判定される場合は、前記ア
ドレスレジスタに格納されたアドレスに存在するデータ
をキャッシュメモリへ転送することを禁止するキャッシ
ュ制御部とを備えたことを特徴とするものである。
【0008】
【作用】第1発明のトレース機能付情報処理装置におい
ては、プログラムの実行の際、第一空間識別子レジスタ
に格納された識別子と、第二空間識別子レジスタに格納
された識別子とが比較回路により比較される。第二空間
識別子レジスタには、トレース用プログラムの識別子が
格納される。トレース用プログラムが実行される際は、
それが比較回路により検出され、TLB制御部によりT
LBへのアドレスの格納が禁止される。これにより、ト
レースを行なうことによりTLBの内容が通常の内容と
変わってしまうことを防止できる。従って、TLBの内
容を含めたトレースを行なうことができ、例えば、TL
Bのヒット率が向上するよう、プログラムの構造を決定
することが可能となる。
ては、プログラムの実行の際、第一空間識別子レジスタ
に格納された識別子と、第二空間識別子レジスタに格納
された識別子とが比較回路により比較される。第二空間
識別子レジスタには、トレース用プログラムの識別子が
格納される。トレース用プログラムが実行される際は、
それが比較回路により検出され、TLB制御部によりT
LBへのアドレスの格納が禁止される。これにより、ト
レースを行なうことによりTLBの内容が通常の内容と
変わってしまうことを防止できる。従って、TLBの内
容を含めたトレースを行なうことができ、例えば、TL
Bのヒット率が向上するよう、プログラムの構造を決定
することが可能となる。
【0009】第2発明のトレース機能付情報処理装置に
おいても、プログラムの実行の際、第一空間識別子レジ
スタに格納された識別子と、第二空間識別子レジスタに
格納された識別子とが比較回路により比較される。第二
空間識別子レジスタには、トレース用プログラムの識別
子が格納される。トレース用プログラムが実行される際
は、それが比較回路により検出され、キャッシュ制御部
によりキャッシュメモリへのアドレスの格納が禁止され
る。これにより、トレースを行なうことによりキャッシ
ュメモリの内容が通常の内容と変わってしまうことを防
止できる。従って、キャッシュメモリの内容を含めたト
レースを行なうことができ、例えば、キャッシュメモリ
のヒット率が向上するよう、プログラムの構造を決定す
ることが可能となる。
おいても、プログラムの実行の際、第一空間識別子レジ
スタに格納された識別子と、第二空間識別子レジスタに
格納された識別子とが比較回路により比較される。第二
空間識別子レジスタには、トレース用プログラムの識別
子が格納される。トレース用プログラムが実行される際
は、それが比較回路により検出され、キャッシュ制御部
によりキャッシュメモリへのアドレスの格納が禁止され
る。これにより、トレースを行なうことによりキャッシ
ュメモリの内容が通常の内容と変わってしまうことを防
止できる。従って、キャッシュメモリの内容を含めたト
レースを行なうことができ、例えば、キャッシュメモリ
のヒット率が向上するよう、プログラムの構造を決定す
ることが可能となる。
【0010】
【実施例】以下、本発明の実施例を図面を参照して詳細
に説明する。図1は、第1発明及び第2発明のトレース
機能付情報処理装置の一実施例のブロック図である。図
示の情報処理装置は、論理アドレスレジスタ10、第一
空間識別子レジスタ11、第二空間識別子レジスタ1
2、比較回路13、TLB制御部14、キャッシュ制御
部15等から成る。論理アドレスレジスタ10は、アク
セス対象となる論理アドレスを格納している。即ち、論
理アドレスレジスタ10は、ページ21及びオフセット
22を格納する。ページ21は、論理ページであり、オ
フセット22は、そのページ内のオフセット(変位)で
ある。
に説明する。図1は、第1発明及び第2発明のトレース
機能付情報処理装置の一実施例のブロック図である。図
示の情報処理装置は、論理アドレスレジスタ10、第一
空間識別子レジスタ11、第二空間識別子レジスタ1
2、比較回路13、TLB制御部14、キャッシュ制御
部15等から成る。論理アドレスレジスタ10は、アク
セス対象となる論理アドレスを格納している。即ち、論
理アドレスレジスタ10は、ページ21及びオフセット
22を格納する。ページ21は、論理ページであり、オ
フセット22は、そのページ内のオフセット(変位)で
ある。
【0011】第一空間識別子レジスタ11には、OSに
よって多重論理アドレス空間内の現在のある特定の空間
識別子が格納される。この空間識別子と論理アドレスに
よりTLB(アドレス変換テーブル)1又はDAT(動
的アドレス変換装置)2にアクセスしてこれらのいずれ
かにより物理アドレスが求められる。DAT2は、論理
アドレスと空間識別子を用いて主記憶上のテーブルを検
索し、動的に論理アドレスから物理アドレスを求める。
よって多重論理アドレス空間内の現在のある特定の空間
識別子が格納される。この空間識別子と論理アドレスに
よりTLB(アドレス変換テーブル)1又はDAT(動
的アドレス変換装置)2にアクセスしてこれらのいずれ
かにより物理アドレスが求められる。DAT2は、論理
アドレスと空間識別子を用いて主記憶上のテーブルを検
索し、動的に論理アドレスから物理アドレスを求める。
【0012】TLB1は、仮想記憶方式において、論理
アドレスを物理アドレスに変換するアドレス変換を高速
に行なうためのものである。このTLB1は、ある有限
個のエントリから成り、各エントリには論理アドレスと
物理アドレスの対であるアドレス変換対が格納される。
即ち、TLB1の各エントリには、論理ページアドレス
LA、空間識別子ID、当該エントリが有効/無効であ
ることを示すVビット、及びこれらに対応する物理ペー
ジアドレスPAが格納されている。TLB1は、論理ア
ドレスレジスタ10のページ21と第一空間識別子レジ
スタ11の空間識別子によって検索される。そして、も
し該当するエントリがあれば、そこから物理ページアド
レスPAが読み出され、これが論理アドレスレジスタ1
0のオフセット22とアドレス加算器23で足し合わさ
れる。この結果、主記憶上の物理アドレスを求めること
ができる。
アドレスを物理アドレスに変換するアドレス変換を高速
に行なうためのものである。このTLB1は、ある有限
個のエントリから成り、各エントリには論理アドレスと
物理アドレスの対であるアドレス変換対が格納される。
即ち、TLB1の各エントリには、論理ページアドレス
LA、空間識別子ID、当該エントリが有効/無効であ
ることを示すVビット、及びこれらに対応する物理ペー
ジアドレスPAが格納されている。TLB1は、論理ア
ドレスレジスタ10のページ21と第一空間識別子レジ
スタ11の空間識別子によって検索される。そして、も
し該当するエントリがあれば、そこから物理ページアド
レスPAが読み出され、これが論理アドレスレジスタ1
0のオフセット22とアドレス加算器23で足し合わさ
れる。この結果、主記憶上の物理アドレスを求めること
ができる。
【0013】もし、対応するエントリが見つからなかっ
た場合はTLBフォールトであるので、DAT2を用い
てOS又はマイクロプログラムが主記憶上のテーブルを
参照して論理アドレスから物理アドレスを求めてそれを
TLB1に登録する。TLB1のエントリが一杯の場合
はLRU順に選ばれたエントリが置き換えられる。TL
B1あるいはDAT2によって求められた物理アドレス
はキャッシュ制御部15に送られ、この物理アドレスに
よりキャッシュメモリ3がアクセスされる。ただし、比
較回路13の判定で識別子が一致する場合はTLB制御
部14でTLB1の置き換えを禁止し、キャッシュ制御
部15でキャッシュメモリ3の置き換えを禁止する。
た場合はTLBフォールトであるので、DAT2を用い
てOS又はマイクロプログラムが主記憶上のテーブルを
参照して論理アドレスから物理アドレスを求めてそれを
TLB1に登録する。TLB1のエントリが一杯の場合
はLRU順に選ばれたエントリが置き換えられる。TL
B1あるいはDAT2によって求められた物理アドレス
はキャッシュ制御部15に送られ、この物理アドレスに
よりキャッシュメモリ3がアクセスされる。ただし、比
較回路13の判定で識別子が一致する場合はTLB制御
部14でTLB1の置き換えを禁止し、キャッシュ制御
部15でキャッシュメモリ3の置き換えを禁止する。
【0014】キャッシュ制御部15には、現在キャッシ
ュメモリに格納されている主記憶の写しがどの物理アド
レスに対応するかの情報が管理されている。即ち、物理
アドレスに対応してキャッシュメモリ3上のアドレスが
格納され管理されている。また、これとともに空間識別
子が格納されている。キャッシュメモリ3には、そのエ
ントリの有効/無効を示すVビットと、キャッシュメモ
リ3に主記憶の写しが転送されてから書き換えられたか
を示すCビットと、主記憶の写しとが格納されている。
もし、キャッシュメモリ3に求める有効な主記憶の写し
が格納されていれば、その主記憶の写しにアクセスす
る。もし、そのような主記憶の写しがなければ、フォー
ルトとなり、主記憶から写しが転送され、キャッシュ制
御部15のエントリに登録される。その際にエントリが
一杯だと適当なエントリを選んで置き換えられる。この
場合、キャッシュ制御部は、Cビットにより単に古いエ
ントリを捨てればよいのか、主記憶に書き戻すかを決定
する。
ュメモリに格納されている主記憶の写しがどの物理アド
レスに対応するかの情報が管理されている。即ち、物理
アドレスに対応してキャッシュメモリ3上のアドレスが
格納され管理されている。また、これとともに空間識別
子が格納されている。キャッシュメモリ3には、そのエ
ントリの有効/無効を示すVビットと、キャッシュメモ
リ3に主記憶の写しが転送されてから書き換えられたか
を示すCビットと、主記憶の写しとが格納されている。
もし、キャッシュメモリ3に求める有効な主記憶の写し
が格納されていれば、その主記憶の写しにアクセスす
る。もし、そのような主記憶の写しがなければ、フォー
ルトとなり、主記憶から写しが転送され、キャッシュ制
御部15のエントリに登録される。その際にエントリが
一杯だと適当なエントリを選んで置き換えられる。この
場合、キャッシュ制御部は、Cビットにより単に古いエ
ントリを捨てればよいのか、主記憶に書き戻すかを決定
する。
【0015】第二空間識別子レジスタ12には、TLB
1やキャッシュメモリ3に影響を与えたくないようなプ
ログラムの空間識別子が格納される。図示の例では、複
数の空間識別子エントリが格納できるようになってい
る。この第二空間識別子レジスタ12は、連想記憶構造
になっている。第二空間識別子レジスタ12のエントリ
は、1つでもよく、その場合、一度に設定できるTLB
1及びキャッシュメモリ3に影響を及ぼさないプログラ
ムは1つだけになるが、連想記憶構造をとらなくてよい
のでハードウェアが簡単になる。また、第二空間識別子
レジスタ12のエントリには、そのエントリの有効/無
効を示すVビットが設けられている。比較回路13は、
第一空間識別子レジスタ11に格納された空間識別子
と、第二空間識別子レジスタ12に格納された空間識別
子とが一致するか否かを判定する回路である。これらの
識別子が一致したか否かの情報は、それぞれDAT2、
TLB制御部14、及びキャッシュ制御部15に送られ
る。
1やキャッシュメモリ3に影響を与えたくないようなプ
ログラムの空間識別子が格納される。図示の例では、複
数の空間識別子エントリが格納できるようになってい
る。この第二空間識別子レジスタ12は、連想記憶構造
になっている。第二空間識別子レジスタ12のエントリ
は、1つでもよく、その場合、一度に設定できるTLB
1及びキャッシュメモリ3に影響を及ぼさないプログラ
ムは1つだけになるが、連想記憶構造をとらなくてよい
のでハードウェアが簡単になる。また、第二空間識別子
レジスタ12のエントリには、そのエントリの有効/無
効を示すVビットが設けられている。比較回路13は、
第一空間識別子レジスタ11に格納された空間識別子
と、第二空間識別子レジスタ12に格納された空間識別
子とが一致するか否かを判定する回路である。これらの
識別子が一致したか否かの情報は、それぞれDAT2、
TLB制御部14、及びキャッシュ制御部15に送られ
る。
【0016】もし、一致していた場合は、TLB制御部
14はTLB1への登録を禁止し、キャッシュ制御部1
5はキャッシュメモリ3への登録を禁止する。即ち、T
LB制御部14は、比較回路13が一致信号を出してい
る限り、DAT2が求めた物理アドレスを登録しない。
また、DAT2が主記憶にアクセスしてTLB1のエン
トリに登録することを禁止する。また、キャッシュ制御
部15は、一致信号が出力されている間、主記憶の写し
をキャッシュメモリ3に格納することを禁止する。尚、
キャッシュ制御部15は、比較回路13で一致した空間
識別子と同じ空間識別子を持ったエントリを追い出す。
つまり、エントリのCビットを見て、Cビットがセット
されていないときは、そのエントリを捨て、Cビットが
セットされているときはエントリを主記憶に書き戻す。
14はTLB1への登録を禁止し、キャッシュ制御部1
5はキャッシュメモリ3への登録を禁止する。即ち、T
LB制御部14は、比較回路13が一致信号を出してい
る限り、DAT2が求めた物理アドレスを登録しない。
また、DAT2が主記憶にアクセスしてTLB1のエン
トリに登録することを禁止する。また、キャッシュ制御
部15は、一致信号が出力されている間、主記憶の写し
をキャッシュメモリ3に格納することを禁止する。尚、
キャッシュ制御部15は、比較回路13で一致した空間
識別子と同じ空間識別子を持ったエントリを追い出す。
つまり、エントリのCビットを見て、Cビットがセット
されていないときは、そのエントリを捨て、Cビットが
セットされているときはエントリを主記憶に書き戻す。
【0017】次に、上述した装置の動作を説明する。第
二空間識別子レジスタ12には、トレース用プログラム
が格納されたアドレス空間の識別子が格納される。プロ
グラムのトレースを行なうときは、被トレースプログラ
ムとトレース用プログラムが交互に実行される。
二空間識別子レジスタ12には、トレース用プログラム
が格納されたアドレス空間の識別子が格納される。プロ
グラムのトレースを行なうときは、被トレースプログラ
ムとトレース用プログラムが交互に実行される。
【0018】被トレースプログラムが実行されるとき
は、第一空間識別子レジスタ11に被トレースプログラ
ムが格納されたアドレス空間の識別子が格納される。第
二空間識別子レジスタ12には、この被トレースプログ
ラムが格納されたアドレス空間の識別子は格納されてい
ないので、比較回路13の比較結果は不一致となり、D
AT2、TLB制御部14及びキャッシュ制御部15に
不一致信号が送られる。これにより、DAT2では、ア
ドレス計算が開始される。また、TLB制御部14で
は、TLB1の検索が開始される。即ち、論理アドレス
レジスタ10に格納されたページ21と、TLB1の各
エントリの論理ページアドレスLAとが比較される。そ
して、ページ21と一致する論理ページアドレスLAが
存在し、その有効ビットVが有効であるときは、論理ア
ドレスレジスタ10のオフセット22と論理ページアド
レスLAに対応するページアドレスとがアドレス加算器
23によって加算され、物理アドレスが求められる。
は、第一空間識別子レジスタ11に被トレースプログラ
ムが格納されたアドレス空間の識別子が格納される。第
二空間識別子レジスタ12には、この被トレースプログ
ラムが格納されたアドレス空間の識別子は格納されてい
ないので、比較回路13の比較結果は不一致となり、D
AT2、TLB制御部14及びキャッシュ制御部15に
不一致信号が送られる。これにより、DAT2では、ア
ドレス計算が開始される。また、TLB制御部14で
は、TLB1の検索が開始される。即ち、論理アドレス
レジスタ10に格納されたページ21と、TLB1の各
エントリの論理ページアドレスLAとが比較される。そ
して、ページ21と一致する論理ページアドレスLAが
存在し、その有効ビットVが有効であるときは、論理ア
ドレスレジスタ10のオフセット22と論理ページアド
レスLAに対応するページアドレスとがアドレス加算器
23によって加算され、物理アドレスが求められる。
【0019】一方、DAT2では、論理アドレスレジス
タ10のページ21とオフセット22とからOS等によ
り物理アドレスが計算される。このアドレス計算は、T
LB1により物理アドレスが求められたときは途中で打
ち切られる。ところが、TBL1にヒットしないことに
より物理アドレスが求められなかったときは、DAT2
によりアドレス計算が続行され、物理アドレスが求めら
れる。そして、この求められた物理アドレスがTBL1
の空きエントリ(Vビットが“0”のエントリ)に格納
される。TBL1に空きエントリがないときはLRU順
で最も古く使用されたエントリに置き換えて新たに求め
られた物理ページアドレスPA及びこれに対応する論理
ページアドレスLA及び識別子IDが格納される。この
ようにTLB1又はDAT2で求められた物理アドレス
はキャッシュ制御部15に送られる。
タ10のページ21とオフセット22とからOS等によ
り物理アドレスが計算される。このアドレス計算は、T
LB1により物理アドレスが求められたときは途中で打
ち切られる。ところが、TBL1にヒットしないことに
より物理アドレスが求められなかったときは、DAT2
によりアドレス計算が続行され、物理アドレスが求めら
れる。そして、この求められた物理アドレスがTBL1
の空きエントリ(Vビットが“0”のエントリ)に格納
される。TBL1に空きエントリがないときはLRU順
で最も古く使用されたエントリに置き換えて新たに求め
られた物理ページアドレスPA及びこれに対応する論理
ページアドレスLA及び識別子IDが格納される。この
ようにTLB1又はDAT2で求められた物理アドレス
はキャッシュ制御部15に送られる。
【0020】キャッシュ制御部15では、物理アドレス
に対応したデータブロックがキャッシュメモリ3に存在
するか否かが判定される。キャッシュメモリ3にデータ
ブロックが存在するときは、そのデータブロックからデ
ータが読み出される。キャッシュメモリ3にデータブロ
ックが存在しないときは主記憶装置からデータブロック
がキャッシュメモリ3の空き領域(Vビットが“0”の
領域)に転送され、そのデータブロックからアクセス対
象のデータが読み出される。キャッシュメモリ3に空き
領域がないときは、LRU順で最も古く参照された領域
に主記憶装置から新たに転送されたデータブロックが格
納される。この場合、元のデータブロックはCビットが
“0”のときは捨てられ、Cビットが“1”のときは主
記憶装置に書き戻される。
に対応したデータブロックがキャッシュメモリ3に存在
するか否かが判定される。キャッシュメモリ3にデータ
ブロックが存在するときは、そのデータブロックからデ
ータが読み出される。キャッシュメモリ3にデータブロ
ックが存在しないときは主記憶装置からデータブロック
がキャッシュメモリ3の空き領域(Vビットが“0”の
領域)に転送され、そのデータブロックからアクセス対
象のデータが読み出される。キャッシュメモリ3に空き
領域がないときは、LRU順で最も古く参照された領域
に主記憶装置から新たに転送されたデータブロックが格
納される。この場合、元のデータブロックはCビットが
“0”のときは捨てられ、Cビットが“1”のときは主
記憶装置に書き戻される。
【0021】これに対し、トレース用プログラムが実行
されるときは、第一空間識別子レジスタ11に被トレー
スプログラムが格納されたアドレス空間の識別子が格納
されるとともに、第二空間識別子レジスタ12にもこの
トレース用プログラムが格納されたアドレス空間の識別
子が格納される。従って、比較回路13の比較結果は一
致となり、DAT2、TLB制御部14及びキャッシュ
制御部15に一致信号が送られる。これにより、DAT
2では、アドレス計算が開始される。また、TLB制御
部14では、TLB1の検索が開始されるが、物理アド
レスが求められることはなく、識別子IDが一致するエ
ントリが存在すればそのエントリのVビットは“0”に
される。
されるときは、第一空間識別子レジスタ11に被トレー
スプログラムが格納されたアドレス空間の識別子が格納
されるとともに、第二空間識別子レジスタ12にもこの
トレース用プログラムが格納されたアドレス空間の識別
子が格納される。従って、比較回路13の比較結果は一
致となり、DAT2、TLB制御部14及びキャッシュ
制御部15に一致信号が送られる。これにより、DAT
2では、アドレス計算が開始される。また、TLB制御
部14では、TLB1の検索が開始されるが、物理アド
レスが求められることはなく、識別子IDが一致するエ
ントリが存在すればそのエントリのVビットは“0”に
される。
【0022】一方、DAT2では、論理アドレスレジス
タ10のページ21とオフセット22とからOS等によ
り物理アドレスが計算される。そして、この求められた
物理アドレスはTBL1に格納されることがない。従っ
て、トレース用プログラムの実行によりTLB1の内容
が書き換えられることはなく、被トレースプログラムの
みによりTLB1が書き換えられる。このため、トレー
スにより被トレースプログラムの通常の実行途中のTL
B1の内容を読み出すことができ、この内容を解析する
ことが可能となる。
タ10のページ21とオフセット22とからOS等によ
り物理アドレスが計算される。そして、この求められた
物理アドレスはTBL1に格納されることがない。従っ
て、トレース用プログラムの実行によりTLB1の内容
が書き換えられることはなく、被トレースプログラムの
みによりTLB1が書き換えられる。このため、トレー
スにより被トレースプログラムの通常の実行途中のTL
B1の内容を読み出すことができ、この内容を解析する
ことが可能となる。
【0023】また、キャッシュ制御部15では、DAT
2で計算された物理アドレスに対応したデータが主記憶
装置から読み出される。そして、このデータはキャッシ
ュメモリ3に格納されることはない。従って、トレース
用プログラムの実行によりキャッシュメモリ3の内容が
書き換えられることはなく、被トレースプログラムのみ
によりキャッシュメモリ3が書き換えられる。このた
め、トレースにより被トレースプログラムの通常の実行
途中のキャッシュメモリ3の内容を読み出すことがで
き、この内容を解析することが可能となる。
2で計算された物理アドレスに対応したデータが主記憶
装置から読み出される。そして、このデータはキャッシ
ュメモリ3に格納されることはない。従って、トレース
用プログラムの実行によりキャッシュメモリ3の内容が
書き換えられることはなく、被トレースプログラムのみ
によりキャッシュメモリ3が書き換えられる。このた
め、トレースにより被トレースプログラムの通常の実行
途中のキャッシュメモリ3の内容を読み出すことがで
き、この内容を解析することが可能となる。
【0024】以上のようにして、TLB1とキャッシュ
メモリ3の内容を解析して処理効率のよいプログラムを
構築することが可能となる。また、第二空間識別子レジ
スタ12に識別子が格納されたプログラムは、TLB1
やキャッシュメモリ3の影響を受けずに常に一定の処理
速度でプログラムを実行することができる。従って、本
発明のトレース機能付情報処理装置は、トレース用プロ
グラムを実行する場合だけでなく、TLB1やキャッシ
ュメモリ3の影響を受けずに常に一定の時間をかけて処
理を行ないたいプログラムを実行する場合にも使用する
ことができる。尚、上述した実施例においては、TLB
制御部14と、キャッシュ制御部15との双方を備えた
情報処理装置について説明したが、本発明はこれに限定
されることなく、いずれか一方を備えた情報処理装置も
含むことはもちろんである。
メモリ3の内容を解析して処理効率のよいプログラムを
構築することが可能となる。また、第二空間識別子レジ
スタ12に識別子が格納されたプログラムは、TLB1
やキャッシュメモリ3の影響を受けずに常に一定の処理
速度でプログラムを実行することができる。従って、本
発明のトレース機能付情報処理装置は、トレース用プロ
グラムを実行する場合だけでなく、TLB1やキャッシ
ュメモリ3の影響を受けずに常に一定の時間をかけて処
理を行ないたいプログラムを実行する場合にも使用する
ことができる。尚、上述した実施例においては、TLB
制御部14と、キャッシュ制御部15との双方を備えた
情報処理装置について説明したが、本発明はこれに限定
されることなく、いずれか一方を備えた情報処理装置も
含むことはもちろんである。
【0025】
【発明の効果】以上説明したように、本発明のトレース
機能付情報処理装置によれば、所定のアドレス空間に格
納されたプログラムがTLBの内容に影響を及ぼさない
ようにしたので、トレースによりTLBの内容が通常の
内容と違ったものとなることを防止することができる。
従って、TLBの内容についてもトレースを行なうこと
ができ、TLBのヒット状況を調べることができるの
で、実行速度の速いプログラムを作成することができ
る。また、所定のアドレス空間に格納されたプログラム
がキャッシュメモリの内容に影響を及ぼさないようにし
たので、トレースによりキャッシュメモリの内容が通常
の内容と違ったものとなることを防止することができ
る。従って、キャッシュメモリの内容についてもトレー
スを行なうことができ、キャッシュ制御部のヒット状況
を調べることができるので、実行速度の速いプログラム
を作成することができる。
機能付情報処理装置によれば、所定のアドレス空間に格
納されたプログラムがTLBの内容に影響を及ぼさない
ようにしたので、トレースによりTLBの内容が通常の
内容と違ったものとなることを防止することができる。
従って、TLBの内容についてもトレースを行なうこと
ができ、TLBのヒット状況を調べることができるの
で、実行速度の速いプログラムを作成することができ
る。また、所定のアドレス空間に格納されたプログラム
がキャッシュメモリの内容に影響を及ぼさないようにし
たので、トレースによりキャッシュメモリの内容が通常
の内容と違ったものとなることを防止することができ
る。従って、キャッシュメモリの内容についてもトレー
スを行なうことができ、キャッシュ制御部のヒット状況
を調べることができるので、実行速度の速いプログラム
を作成することができる。
【図1】本発明のトレース機能付情報処理装置の一実施
例のブロック図である。
例のブロック図である。
1 TLB 2 DAT 10 論理アドレスレジスタ 11 第一空間識別子レジスタ 12 第二空間識別子レジスタ 13 比較回路 14 TLB制御部 15 キャッシュ制御部
Claims (2)
- 【請求項1】 現在アクセス対象となる論理アドレスを
格納する論理アドレスレジスタと、 現在実行されているプログラムが格納されるアドレス空
間の識別子を格納する第一空間識別子レジスタと、 所定のプログラムが格納されるアドレス空間の識別子を
格納する第二空間識別子レジスタと、 前記論理アドレスレジスタに格納された論理アドレスを
物理アドレスに変換する際、前記第一空間識別子レジス
タに格納された識別子及び前記第二空間識別子レジスタ
に格納された識別子が一致しているか否かを判定する比
較回路と、 当該比較回路によりこれらの識別子が一致していると判
定される場合は、前記論理アドレスレジスタに格納され
た論理アドレスを物理アドレスに変換した際これのTL
Bへの格納を禁止するTLB制御部とを備えたことを特
徴とするトレース機能付情報処理装置。 - 【請求項2】 現在アクセス対象となるアドレスを格納
するアドレスレジスタと、 現在実行されているプログラムが格納されるアドレス空
間の識別子を格納する第一空間識別子レジスタと、 所定のプログラムが格納されるアドレス空間の識別子を
格納する第二空間識別子レジスタと、 前記第一空間識別子レジスタに格納された識別子及び前
記第二空間識別子レジスタに格納された識別子が一致し
ているか否かを判定する比較回路と、 当該比較回路によりこれらの識別子が一致していると判
定される場合は、前記アドレスレジスタに格納されたア
ドレスに存在するデータをキャッシュメモリへ転送する
ことを禁止するキャッシュ制御部とを備えたことを特徴
とするトレース機能付情報処理装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP5116377A JPH06309196A (ja) | 1993-04-20 | 1993-04-20 | トレース機能付情報処理装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP5116377A JPH06309196A (ja) | 1993-04-20 | 1993-04-20 | トレース機能付情報処理装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH06309196A true JPH06309196A (ja) | 1994-11-04 |
Family
ID=14685492
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP5116377A Pending JPH06309196A (ja) | 1993-04-20 | 1993-04-20 | トレース機能付情報処理装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH06309196A (ja) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2011111172A1 (ja) * | 2010-03-09 | 2011-09-15 | 富士通株式会社 | 情報処理装置、情報処理方法、およびプログラム |
-
1993
- 1993-04-20 JP JP5116377A patent/JPH06309196A/ja active Pending
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2011111172A1 (ja) * | 2010-03-09 | 2011-09-15 | 富士通株式会社 | 情報処理装置、情報処理方法、およびプログラム |
| JP5423871B2 (ja) * | 2010-03-09 | 2014-02-19 | 富士通株式会社 | 情報処理装置、情報処理方法、およびプログラム |
| KR101393992B1 (ko) * | 2010-03-09 | 2014-05-12 | 후지쯔 가부시끼가이샤 | 정보 처리 장치, 정보 처리 방법, 및 프로그램을 기록한 컴퓨터 판독가능한 기록 매체 |
| US9122597B2 (en) | 2010-03-09 | 2015-09-01 | Fujitsu Limited | Information processing apparatus, information processing method and medium storing program |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US6145064A (en) | Method of efficiently updating hashed page tables | |
| CA1226372A (en) | Address translation control system | |
| JP2825550B2 (ja) | 多重仮想空間アドレス制御方法および計算機システム | |
| US5493660A (en) | Software assisted hardware TLB miss handler | |
| US6430668B2 (en) | Speculative address translation for processor using segmentation and optical paging | |
| US5123101A (en) | Multiple address space mapping technique for shared memory wherein a processor operates a fault handling routine upon a translator miss | |
| US5230045A (en) | Multiple address space system including address translator for receiving virtual addresses from bus and providing real addresses on the bus | |
| US7831799B1 (en) | Speculative address translation for processor using segmentation and optional paging | |
| US5182805A (en) | Method and system for determining copy-on-write condition | |
| EP0506236A1 (en) | Address translation mechanism | |
| JPH0137773B2 (ja) | ||
| US5226132A (en) | Multiple virtual addressing using/comparing translation pairs of addresses comprising a space address and an origin address (sto) while using space registers as storage devices for a data processing system | |
| US5479629A (en) | Method and apparatus for translation request buffer and requestor table for minimizing the number of accesses to the same address | |
| US6990551B2 (en) | System and method for employing a process identifier to minimize aliasing in a linear-addressed cache | |
| JPH0650480B2 (ja) | 多重仮想記憶システムおよびアドレス制御装置 | |
| JPH06309196A (ja) | トレース機能付情報処理装置 | |
| JPH02308349A (ja) | バッファ記憶制御装置 | |
| JP3030037B2 (ja) | 主記憶装置 | |
| JP2845754B2 (ja) | マルチプロセッサシステム | |
| JPH06124237A (ja) | アドレス変換バッファ装置 | |
| JP3061818B2 (ja) | マイクロ・プロセッサ用アクセス・モニタ装置 | |
| AU708232B2 (en) | A method of efficiently updating hashed page tables | |
| JPH0337217B2 (ja) | ||
| JPH05225063A (ja) | バッファメモリのクリア方式 | |
| JPH02101552A (ja) | アドレス変換バッファ処理方式 |