JPH0315951A - ブレークアドレス検出方式 - Google Patents

ブレークアドレス検出方式

Info

Publication number
JPH0315951A
JPH0315951A JP1151657A JP15165789A JPH0315951A JP H0315951 A JPH0315951 A JP H0315951A JP 1151657 A JP1151657 A JP 1151657A JP 15165789 A JP15165789 A JP 15165789A JP H0315951 A JPH0315951 A JP H0315951A
Authority
JP
Japan
Prior art keywords
address
break
page
cpu
bpn
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
JP1151657A
Other languages
English (en)
Inventor
Kiyoshi Yoneda
潔 米田
Norio Ohashi
大橋 範夫
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 Corp
Original Assignee
NEC 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 Corp filed Critical NEC Corp
Priority to JP1151657A priority Critical patent/JPH0315951A/ja
Publication of JPH0315951A publication Critical patent/JPH0315951A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はCPUのプログラムデバッグ方式に関し、特に
ブレークアドレスの検出方式に関する.〔従来の技術〕 従来プログラムデバッグのための仮想アドレスの検出は
CPUが出力する全アドレス信号線を比較することによ
りなされていた。従ってメモリ管理ユニット(MMU>
を内蔵しているCPUにおいて仮想アドレスにブレーク
をかけたい時には、(a)CPUから仮想アドレスを出
力させ、この全てのアドレス信号線をブレークをかけた
い仮想アドレスと比較する。
(b)CPU内部にブレークをかけたい仮想アドレスを
格納するためのレジスタと比較器を持ち、CPU内部で
CPUがブレークしたい仮想アドレスにアクセスしたこ
とを検出する. という二つの方式が採用されている. 第3図は従来例を示す説明図である.同図においてCP
U 1は32ビットアドレスを持ち、20ビットの上位
アドレスを仮想ページ番号(VPN)5に、また12ビ
ット下位アドレスをページ内アドレス6に出力する,M
MU2はページサイズが12ビットで4キロバイトのM
MUであり、CPUIが出力する20ビットの上位アド
レスVPN5をページフレーム番号(PFN)7に変換
する.ブレークアドレスの比較器3はブレークポイント
レジスタ4に予めセットされているブレークさせたいア
ドレスとCPU1の出力する仮想アドレスとを比較し、
一致すればCPU1にブレーク要求を出す. CPUIとMMU2とで上記の方式(a)に基(CPU
9を構戒し、仮想アドレスをCPU9の外部に出力する
ことになり、方式(a)に基く仮想アドレス検出装置を
構成する. CPUI,MMU2,比較器3及びブレークポイントレ
ジスタ4とで上記の方式(b)に基くCUP1 0を構
成し、CPUIOの内部にアドレス比較用のレジスタと
比較器を持つことになり、方式(b)に基く仮想アドレ
ス検出装置を構戒する. 〔発明が解決しようとする課題〕 上述した従来のプログラムデバッグのための仮想アドレ
スの検出では、CPUが出力する全アドレス信号線を比
較することによりなされていた。
従ってMMUを内蔵しているCPUにおいて仮想アドレ
スにブレークをかけたい時に、 (a)上記従来の方式(a)を採ると、VPNを表すビ
ット数分だけ出力信号線が増えたり、複数の信号を時分
割してl本の信号線から出力するために外部回路が複雑
になったりする欠点がある. (b)上記従来の方式(b)を採ると、ブレークポイン
トの数だけレジスタや比較器が必要になり、そのための
回路が大きくなったりブレークポイントの数が制限され
るという欠点がある。
〔課題を解決するための手段〕
本発明のブレークアドレス検出方式は、ベージング方式
のMMUを内蔵するCPUのためのプログラムデバッグ
において、CPUが特定の仮想アドレスにアクセスした
ことを知る手段として、(a)CPUの認識するメモリ
中のページテーブルエントリに1ビットまたはVPNを
表すビット数に比べてわずがなビットからなる1レーク
ベージ番号(BPN)を設け、cpuにVPNのがわり
にBPNを出力させ、ブレークアドレス検出回路がCP
Uの出力するBPN及びページ内アドレスがそれぞれブ
レークをがけたい仮想アドレスに対応するBPN及びペ
ージ内アドレスと一致することを調べ、または、 (b)PFNを構戒するビットのうち実際の物理メモリ
構戒及びIOアドレス構成からみて冗長な1ビットまた
は複数ビットをBPNとして用い、ブレークアドレス検
出回路がCPUの出力する上記BPN及びページ内アド
レスがそれぞれブレークをかけたい仮想アドレスに対応
するBPN及びページ内アドレスと一致することを調べ
る. 〔実施例〕 次に本発明について図面を参照して説明する。
第1図(a)は本発明の第一の実施例を示すブロック図
である。同図においてCPU11は32ビットアドレス
を持ち、20ビットの上記アドレスをVPN15に、ま
た12ビット下位アドレスをページ内アドレス16に出
力する。MMU 1 2はページサイズが12ビットで
4キロバイトのMMUであり、CPUIIが出力する2
0ビットの上位アドレスVPN15から対応するトラン
スレーションルックアサイドバッファ(TLB)を引き
、20ビットのPFN17と4ビットのBPN18に変
換する,CPUI 1とMMU12で請求項(1)のC
PU1 9を構戒する.ブレークアドレスの比較器13
は4ビットのBPN比較器13aと12ビットのページ
内アドレス比較器13bとからなる。ブレークポイント
レジスタ14は4ビットのBPN用のレジスタ14aと
12ビットのページ内アドレス用のレジスタ14bとか
らなる,比較器13はCPU19が出力するBPN18
とページ内アドレス16をブレークポイントレジスタ1
4のBPN14aとページ内アドレス14bとそれぞれ
比較して、一致した時にブレーク要求信号18によりC
PU11をブレークする。
第1図(b)は上記のブレークアドレス検出方式で使用
するPTEの例を示す説明図である。
PTEの中には20ビットのPFNの他に4ビットのB
PNがある。その他のフラグは従来通りである. 次に本実施例の動作を説明する.予めブレークさせたい
仮想アドレスのページ内アドレスーを14bにセットし
、また4ビットで16通りあるBPNのうちまだ何処に
も割り当てていない1つをブレークさせたい仮想アドレ
スに対応する仮想ページに割り付け、対応するメモリ中
のPTEのBPNフィールドにセットし、更にこのBP
Nを14aのBPNレジスタにセットしておく。また、
MMU12が既に該当するPTF,をTLBにロードし
ている場合にはこれを無効にしておく.ここでCPUI
Iが走行しブレークさせたい仮想アドレスを出力すると
、MMU12のTLBがミスヒットし該当するPTEを
メモリからMMU12のTLBにロードする。この時、
PFNと共にBPNもロードする.次にCPUIIが改
めてブレークさせたい仮想アドレスを出力すると、今度
はMMU1 2はTLBからPFNとBPNを引き、P
FNを17に、またBPNを18に出力する. その時、比較器13はCPU19が出力するBPN18
およびページ内アドレス16をそれぞれブレークポイン
トレジスタ14のBPN14a及びページ内アドレス1
4bと比較し、一致を検出してブレーク要求信号18に
よりCPUIIにブレークを要求する. 仮想ページ番号VPNとそれに割り当てられたBPNは
1対1に対応しているので、CPUが仮想アドレスを出
力したことをこれで検出したことになる。BPNには4
ビットあるので16通りの識別が可能である.このうち
1つはブレークポイントが設定されていない状態として
使用するので、結局4ビットのBPNで最少15通りの
ブレークポイントを設定できる。同じページ内に複数の
ブレークポイントを設定する場合にはBPNを共有する
ことができる。これによって32ビットの仮想アドレス
の検出を4ビットのBPNと12ビットのPFNの計l
6ビットの比較で行うことができる. 第2図(a)は本発明の第二の実施例を示すブロック図
である.同図においてCPU2 1は32ビットアドレ
スを持ち、20ビットの上位アドレスをVPN25に、
また12ビット下位アドレスをページ内アドレス26に
出力する。MMU22はページサイズが12ビットで4
キロバイトのMMUであり、CPU21が出力する20
ビットの上位アドレスVPN25から対応するTLBを
引き、20ビットのPFN27に変換する。
CPU2 1とMMU22で請求項(2)のCPU29
を構成する. 第2図(b)は第二の実施例に適用するシステムのメモ
リ構成の例を示す説明図である.このシステムでは工0
空間はないものとする。このシステムでは32ビットで
4ギガバイトの広さのメモリ空間のうち始めと終りのそ
れぞれ512メガバイトを実装している。
第2図(c)は第2図(b)のメモリ構或における冗長
なビットを示す説明図である.この場合はブロック1か
らブロック6までの6ブロックにメモリがないので、最
上位アドレスのうちA30とA29を冗長ビットとみる
ことができる.即ち、メモリシステムがA30とA29
をデコードしないとするとブロックOの写像がブロック
1から3に、またブロック7の写像がブロック4から6
に出る.そこでメモリシステムにはA30とA29をデ
コードさせないようにし、A31とA30及びA29の
3ビットをBPNとする.こうすることで、ブロックO
の領域に最少3つ、ブロック7の領域に最少3つの計最
少6つのブレークポイントを設定できる.同じページ内
に複数のブレークポイントを設定する場合にはBPNを
共有することができる. 第2図(a)のブレークアドレス比較器23は3ビット
のBPN比較器23aと12ビットのページ内アドレス
比較器23bとからなる.ブレークポイントレジスタ2
6は3ビットのBPN用のレジスタ26aと12ビット
のページ内アドレス用のレジスタ24bとからなる.比
較器23はCPU29が出力するPFN27に含まれる
3ビットのBPN及びページ内アドレス26をブレーク
ポイントレジスタ24のBPN24a及びページ内アド
レス24bとそれぞれ比較して、一致した時にブレーク
要求信号28によりCPU21をブレークする。
次に本実施例の動作を説明する.予めブレークさせたい
仮想アドレスのページ内アドレスを24bにセットし、
また第2図(c)のブロックO及びブロック7にそれぞ
れ対応して3つずつあるBPNのうちまだ何処にも割り
当てていない1つをブレークさせたい仮想アドレスに対
応する仮想ページに割り付け、対応するメモリ内のPT
EのPFNフィールドのBPN部分A31とA30及び
A29の位置にセットし、更にこのBPNをBPNレジ
スタ24aにセットしておく.また、MMU22が既に
該当するPTEをTLBにロードしている場合にはこれ
を無効にしておく. ここでCPU2 1が走行しブレークさせたい仮想アド
レスを出力すると、MMU22のTLBがミスヒットし
該当するPTEをメモリからMMU22のTLBにロー
ドする.次にCPU21が改めてブレークさせたい仮想
アドレスを出力すると、今度はMMU22はTLBから
PFNを引き、PFNを27に出力する. その時、比較器23はCPU29が出力するPFN27
の中のBPN部分及びページ内アドレス26をそれぞれ
ブレークポイントレジスタ24のBPN24a及びペー
ジ内アドレス24bと比較し、一致を検出してブレーク
要求信号28によりCPU21にブレークを要求する.
仮想ページ番号VPNとそれに割り当てられたBPNは
1対1に対応しているので、CPUが仮想アドレスを出
力したことをこれで検出したことになる.これによって
32ビットの仮想アドレスの検出を3ビットのBPNと
12ビットのPFNの計15ビットの比較で行なうこと
ができる。
〔発明の効果〕
以上説明したように本発明は、ベージング方式のMMU
を内蔵するCPUのためのプログラムデバッグにおいて
、 CPUの認識するメモリ中のPFEに1ビットまたはV
PNを表すビット数に比べてわずがなビットからなるB
PNを設け、CPUにVPNのかわりにBPNを出力さ
せ、ブレークアドレス検出回路がCPUの出力するBP
N及びページ内アドレスがそれぞれブレークをかけたい
仮想アドレスに対応するBPN及びページ内アドレスと
一致することを調べることにより、CPUが特定の仮想
アドレスにアクセスしたことを知ることができる.すな
わち、CPUから取り出す信号線の数を大幅に削減でき
るという効果がある. また、PFNを構戒するビットのうち実際の物理メモリ
構成及びIOアドレスtf4rli.からみて冗長な1
ビットまたは複数ビットをBPNとして用い、ブレーク
アドレス検出回路がCPUの出力する上記BPN及びペ
ージ内アドレスがそれぞれブレークをかけたい仮想アド
レスに対応するBPN及びページ内アドレスと一致する
ことを調べることにより、CPUが特定の仮想アドレス
にアクセスしたことを知ることができる。すなわち、C
PUから取り出す信号線の数を増やすことなく、CPU
が特定の仮想アドレスにアクセスしたことを検出できる
という効果がある. さらに、同一ページ内のブレークアドレスについ,てブ
レークページまたはBPNの比較器は1個で済み、また
残りのページ内アドレスの比較についても比較するビッ
ト数を大幅に削減できるので、ブレークアドレスの比較
回路を簡素化できるという効果がある.
【図面の簡単な説明】
第l図は本発明の第一の実施例を示す説明図、第2図は
第二の実施例を示す説明図、第3図は従来例を示す説明
図である. l1・・・CPU,12・・・MMU、13・・・比較
器、13a・・・BPN比較器、13b・・・ページ内
アドレス比較器、14・・・ブレークポイントレジスタ
、14a・・・BPN用のレジスタ、14b・・・ペー
ジ内アドレス用のレジスタ.

Claims (2)

    【特許請求の範囲】
  1. (1)CPUの認識するメモリ中のページテーブルエン
    トリに1ビット以上のビットからなるブレークページ番
    号を設け、ブレークさせたい仮想アドレスに対応するペ
    ージテーブルエントリにブレークページ番号を割り当て
    てセットしておき、前記CPUはトランスレーションル
    ックアサイドバッファの更新時にブレークページ番号を
    内部に取り込み、バスアクセス時に物理アドレスのペー
    ジフレーム番号及びページ内アドレスと共に参照したト
    ランスレーションルックアサイドバッファのブレークペ
    ージ番号も信号として出力し、ブレークアドレス検出回
    路が前記CPUの出力するブレークページ番号及びペー
    ジ内アドレスがそれぞれブレークをかけたい仮想アドレ
    スに対応するブレークページ番号及びページ内アドレス
    と一致することを調べ、CPUが特定の仮想アドレスに
    アクセスしたことを知ることを特徴とするブレークアド
    レス検出方式。
  2. (2)ページフレーム番号を構成するビットのうち実際
    の物理メモリ構成及びIOアドレス構成からみて冗長な
    1ビット以上のビットをブレークページ番号として用い
    、ブレークさせたい仮想アドレスに対応するページテー
    ブルエントリにページフレーム番号の一部としてブレー
    クページ番号を割り当ててセットしておき、CPUはト
    ランスレーションルックアサイドバッファの更新時にブ
    レークページ番号を内部に取り込み、ブレークアドレス
    検出回路が前記CPUの出力するブレークページ番号及
    びページ内アドレスがそれぞれブレークをかけたい仮想
    アドレスに対応するブレークページ番号及びページ内ア
    ドレスと一致することを調べ、CPUが特定の仮想アド
    レスにアクセスしたことを知ることを特徴とするブレー
    クアドレス検出方式。
JP1151657A 1989-06-13 1989-06-13 ブレークアドレス検出方式 Pending JPH0315951A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP1151657A JPH0315951A (ja) 1989-06-13 1989-06-13 ブレークアドレス検出方式

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP1151657A JPH0315951A (ja) 1989-06-13 1989-06-13 ブレークアドレス検出方式

Publications (1)

Publication Number Publication Date
JPH0315951A true JPH0315951A (ja) 1991-01-24

Family

ID=15523367

Family Applications (1)

Application Number Title Priority Date Filing Date
JP1151657A Pending JPH0315951A (ja) 1989-06-13 1989-06-13 ブレークアドレス検出方式

Country Status (1)

Country Link
JP (1) JPH0315951A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6222882A (ja) * 1985-07-24 1987-01-31 Nitto Chem Ind Co Ltd 止水剤
JPH05113906A (ja) * 1991-10-22 1993-05-07 Fujitsu Ltd デバツグ支援装置
US8636369B2 (en) 2010-10-19 2014-01-28 International Business Machines Corporation Prevention and remediation of damage to optical surfaces

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6222882A (ja) * 1985-07-24 1987-01-31 Nitto Chem Ind Co Ltd 止水剤
JPH05113906A (ja) * 1991-10-22 1993-05-07 Fujitsu Ltd デバツグ支援装置
US8636369B2 (en) 2010-10-19 2014-01-28 International Business Machines Corporation Prevention and remediation of damage to optical surfaces

Similar Documents

Publication Publication Date Title
US20020152428A1 (en) Digital processing system including a DMA controller operating in the virtual address domain and a method for operating the same
NO870415D0 (no) Datamaskinsystem.
JPH0137773B2 (ja)
US20150121127A1 (en) Watchpoint support system for functional simulator
EP2620875B1 (en) Address translation inspection device, central processing device, and address translation inspection method
US20090157975A1 (en) Memory-centric Page Table Walker
JPH0315951A (ja) ブレークアドレス検出方式
JPH04308953A (ja) 仮想アドレス計算機装置
JPH01108651A (ja) コンピュータ装置およびコンピュータ装置においてキャッシュデータアレイ内のデータの不一致を検出して修正する方法
JP7035787B2 (ja) 演算処理装置および演算処理装置の制御方法
JP2578182B2 (ja) デ−タ処理装置及びデ−タ処理システム
JP3256558B2 (ja) 電子計算機におけるアドレス変換方式
JP3087279B2 (ja) マイクロコンピュータ・システム
JP2007286705A (ja) アドレス変換装置
JPS6120160A (ja) アドレツシング例外検出方式
JP2637146B2 (ja) デバッグシステム
JPS63197248A (ja) マイクロプロセツサ
JPS62266634A (ja) キヤツシユメモリのアクセス制御回路
JPH05151104A (ja) データ処理装置
CN116249972A (zh) 一种内存保护方法及保护代理控制装置
JPH0553912A (ja) キヤツシユメモリの制御方法
JPH01177144A (ja) アドレス変換装置
JPH04101251A (ja) キャッシュメモリスヌープ方式
JPH06314237A (ja) Ms間接アドレッシング方式
JPH09223070A (ja) データ変換回路