JPH0744419A - マイコン開発支援装置 - Google Patents

マイコン開発支援装置

Info

Publication number
JPH0744419A
JPH0744419A JP5191546A JP19154693A JPH0744419A JP H0744419 A JPH0744419 A JP H0744419A JP 5191546 A JP5191546 A JP 5191546A JP 19154693 A JP19154693 A JP 19154693A JP H0744419 A JPH0744419 A JP H0744419A
Authority
JP
Japan
Prior art keywords
cache
instruction
memory
microprocessor
user
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.)
Withdrawn
Application number
JP5191546A
Other languages
English (en)
Inventor
Koji Maemura
浩司 前村
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 IC Microcomputer Systems Co Ltd
Original Assignee
NEC IC Microcomputer Systems 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 NEC IC Microcomputer Systems Co Ltd filed Critical NEC IC Microcomputer Systems Co Ltd
Priority to JP5191546A priority Critical patent/JPH0744419A/ja
Priority to KR1019940019100A priority patent/KR970011214B1/ko
Priority to US08/283,153 priority patent/US5544307A/en
Priority to EP94112141A priority patent/EP0638864B1/en
Priority to DE69411096T priority patent/DE69411096T2/de
Publication of JPH0744419A publication Critical patent/JPH0744419A/ja
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3636Software debugging by tracing the execution of the program
    • G06F11/364Software debugging by tracing the execution of the program tracing values on a bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3648Software debugging using additional hardware

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

(57)【要約】 (修正有) 【目的】ユーザが使用するメモリ空間を制限せずにリア
ルタイムにデバッグできる装置を提供する。 【構成】マイクロプロセッサ11のメモリアクセスをト
レースし、ブレーク要求信号107で特定番地に読み込
まれる命令を、分岐命令に替える命令すり替え回路13
と、マイクロプロセッサ11に対して、ユーザ空間とは
別のメモリ空間を供給するためにブレークポイントを設
定するブレークポイント・レジスタ14と、その内容と
マイクロプロセッサ11から出力するアドレス・データ
とを比較して、一致した時点でブレーク要求信号107
を出力する比較回路16と、ブレーク応答信号104お
よびアドレス・データを受けて、バックグランド・モニ
タ部15をマイコン開発支援装置用のメモリ空間として
機能させるメモリ空間切替回路17とで構成される。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はマイコン開発支援装置に
関し、特にキャッシュメモリを内蔵するマイクロプロセ
ッサ開発用として用いられるマイコン開発支援装置に関
する。
【0002】
【従来の技術】最近のマイクロプロセッサにおいては、
メモリアクセスの高速化を図かるために、キュッシュメ
モリを内蔵する傾向にある。しかしながら、これにより
マイクロプロセッサが高速化される半面において、キュ
ッシュメモリを内蔵するマイクロプロセッサを用いて形
成されるシステムのデバッグ作業は困難なものとなって
いる。これは、このようなマイクロプロセッサにおいて
は、メモリアクセスがキャッシュメモリにミスヒットし
た場合にしか出力されないために、メモリアクセスをト
レースして、現在のプログラムの実行状態を監視するこ
とがでくなくなっていることに要因がある。
【0003】従って、かかるマイクロプロセッサを使用
しているシステムのデバッグを行う場合には、マイコン
開発支援装置が用いられる。このマイコン開発支援装置
においては、プログラムの実行過程だけをトレースする
場合には、マイクロプロセッサのキャッシュメモリを不
活性化して(この状態をキャッシュ・オフ状態と云
う)、当該マイクロプロセッサにおいて必要とされるア
クセスを、全て外部に出力させることにより行われる。
但し、このようなトレース方法は、マイクロプロセッサ
において、キャッシュメモリを使用する通常動作状態と
は実行時間に大きな差異を生じるために、リアルタイム
性が要求される装置の場合には、余り有効なデバッグ方
法とは言えない。マイコン開発支援装置を用いてリアル
タイム性のあるデバッグを行うためには、ブレーク機能
が使用される。このブレーク機能は、プログラムの任意
のアドレスでマイクロプロセッサに分岐を実行させて、
当該分岐先に、ユーザが知りたいマイクロプロセッサの
内部状態およびプログラムの途中結果等を出力させるプ
ログラムを用意しておき、予期したとうりの処理が実行
されたか否かを観察するための機能である。
【0004】従来のブレーキ機能の実現方法について、
図6の従来例「特開平03−078038(インサーキ
ット・エミュレータ)」のブレーク装置のブロック図、
および図7(a)、(b)、(c)および(d)の動作
タイミング図を参照して説明する。
【0005】図6は、従来のマイコン開発支援装置の構
成を示すブロック図である。図6に示されるように、当
該マイコン開発支援装置は、支援対象のマイクロプロセ
ッサ61と、ユーザ空間および当該マイコン開発支援装
置を運用する際に必要となるフロントエンド・モニタ部
(マイコン開発支援装置のユーザは、当該マイコン開発
支援装置用として、この領域を用意する必要がある)の
2領域に区分されるユーザ・メモリ62に対応して、命
令すり替え回路63と、ユーザがブレークポイントを設
定するためのブレークポイント・レジスタ64と、比較
器66と、ユーザ・メモリ62とは別に当該ブレーク装
置上に存在するバックグランド・モニタ部65と、メモ
リ空間切替回路67とを備えて構成される。
【0006】図6において、ブレーク機能を使用する場
合には、ユーザはデバッグを実行する前に、ブレークポ
イント・レジスタ64に割り込みを発生させるアドレス
を設定する。比較器66においては、マイクロプロセッ
サ61から出力されるアドレス・バス601上の内容
と、ブレークポイント・レジスタ64の内容とが比較さ
れて、両者が一致する場合には、比較回路66からは、
ブレーク要求信号607がアクティブな信号として出力
されて命令すり替え回路63に入力される(図7(a)
参照)。ブレーク要求信号607がアクティブになる
と、データ・バス601を介して伝達される命令すり替
え動作を介して、マイクロプロセッサ61においては、
ユーザ空間のアクセスにおいて、当該時点において読み
込む命令コードがブレーク命令に置換えられる(図7
(b)参照)。
【0007】次いで、マイクロプロセッサ61において
当該ブレーク命令が実行されると、ユーザ・メモリ62
におけるフロントエンド・モニタの先頭に分岐される。
フロントエンド・モニタは、前述のように、マイコン開
発支援装置において使用されるユーザ・メモリ62上の
空間であり、このフロントエンド・モニタにおいては、
マイクロプロセッサ61の内部のキャッシュ・メモリは
キャッシュ・オフの状態に変更され、ブレークの要因分
析が行われる(図7(c)参照)。このキャッシュ・オ
フ状態への変更は、プログラムにより設定することが可
能であるが、その実現方法自体は、マイクロプロセッサ
により様々な方法が行われている。例えば、状態設定レ
ジスタに対する設定により状態を変更する例としては、
実際例として、インテル社の80486およびモトロー
ラ社の68030、68040等がある。また、メモリ
空間(アドレスによる範囲指定)に対する付属情報によ
り、キャッシュ・オンで実行する空間と、キャッシュ・
オフで実行する空間とを設定する方法としては、実際例
として、ミップス社のR3000等がある。この場合、
上記の何れの方法によっても問題はないが、アドレス空
間における切替えの方が、より高速切替えが可能である
点において高速化への実現は容易である。
【0008】要因分析の結果、確かにトラップすべきで
あると判断された場合には、メモリ空間切替回路67に
対する指示を介して、それ以降におけるアクセスにおい
ては、ユーザ・メモリ62に対するアクセスは行われ
ず、バックグランド・モニタ部65に対するアクセスが
行われる。バックグランド・モニタ部65においては、
内部レジスタのダンプ等の処理が行われた後に、最後に
RETI命令が実行されて、ブレーク命令に置換えられ
る前の命令(再開命令)から実行が再開される(図7
(b)、(c)および(d)参照)。なお、再開命令だ
けはキャッシュ・オフ状態で動作するが、それ以降にお
ける動作状態は、再度キャッシュ・オンの状態に戻され
る。なお、これらのキャッシュ・メモリに対する制御
は、全てフロントエンド・モニタ部によって制御が行わ
れている。
【0009】即ち、従来のマイコン開発支援装置におい
ては、キャッシュメモリ内蔵のマイクロプロセッサ61
に対して、ブレーク機能を実現するために、ユーザ・メ
モリ62上において、フロントエンド・モニタ部を動作
させることが必要である。このように、フロントエンド
・モニタ部を必要とする理由は、下記〜項に示され
るとうりである。 バックグランド・モニタ部65に切替えを行うための
機能がないこと。 キャッシュ・オフ状態への切替えが、モニタ・プログ
ラムにより制御されているために、当該処理をバックグ
ランド・モニタにおいて実行した場合には、マイクロプ
ロセッサ61の内部においては、フォアグランド・モニ
タとバックグランド・モニタとの区別がないため、バッ
クグランド・モニタ実行中に、キャッシュメモリに登録
されている命令が、ユーザ空間中にもヒットする場合が
あり誤動作の要因となる。他方、フォアグランド・モニ
タで実行する場合には、ユーザ・メモリ上の空間である
ため、後にキャッシュメモリがヒットすることがあって
も誤動作は生じない。 キャッシュ内に登録されるブレーク命令を消去する手
段がないため、ブレーク処理からの再開命令はキャッシ
ュ・オフの状態において動作させ、先にキャッシュ内に
登録されたブレーク命令を無視させている。しかし、再
度先に設定されているブレークポイントと同じアドレス
をアクセスした場合に、キャッシュメモリにヒットして
しまうと、何度もブレーク処理が繰返えされてプログラ
ムが終了するまで、ブレークポイントを解除することが
できなくなるという事態になる。このために、従来のマ
イコン開発支援装置においては、フロントエンド・モニ
タ部65において、本当のブレークしてもよいか否かを
判定する必要がある。
【0010】
【発明が解決しようとする課題】上述した従来のマイコ
ン開発支援装置においては、キャッシュメモリ内蔵のマ
イクロプロセッサに対して、ブレーク機能を実現するた
めに、フロントエンド・モニタが用いられている。しか
しながら、フロントエンド・モニタは、ユーザ・システ
ムの資源(ユーザ装置上のアドレス・バス等の制御信号
およびユーザ・メモリ等)を使用しているために、ユー
ザの使用するメモリ空間(特に、プログラムの使用する
アドレスおよび容量等)に制限が課せられてしまうとい
う欠点がある。
【0011】また、ユーザが開発中のシステムをデバッ
グする際に、マイコン開発支援装置自体によりユーザ装
置が使用されるために、当該ユーザ・システムに誤動作
が発生した場合には、モニタ・プログラム自身も誤動作
する状態となり、マイコン開発支援装置本来の機能を発
揮することができないという欠点がある。
【0012】更に、前記項において記述したように、
キャッシュメモリ内に残っているブレーク命令を消去す
る手段が無いために、ブレーク処理を行わない場合にも
不必要にフロントエンド・モニタが動作する状態とな
り、ユーザ・プログラムの実行にリアルタイム性が欠如
されるという欠点がある。
【0013】
【課題を解決するための手段】本発明のマイコン開発支
援装置は、キャッシュメモリを内蔵するマイクロプロセ
ッサを対象とするマイコン開発支援装置において、少な
くともプログラムを実行する実行ユニットとキャッシュ
メモリを含み、所定のキャッシュ登録制御信号を介して
前記キャッシュメモリのキャッシュ・リプレース・アク
セスにおけるキャッシュ登録を無効果する機能と、プロ
グラムにより前記実行ユニットを介して当該キャッシュ
メモリを不活性化するキャッシュ・オフ機能を有すると
ともに、前記実行ユニーットにより特定の分岐命令を実
行したことを外部に伝達するブレーク応答信号を出力す
るマイクロプロセッサと、前記マイクロプロセッサのメ
モリアクセスをトレースし、所定のブレーク要求信号を
介して、特定番地において当該マイクロプロセッサにお
いて読み込まれる命令を、前記分岐命令にすり替えて出
力する命令すり替え回路と、前記マイクロプロセッサに
対して、ユーザ空間とは別個のマイコン開発支援装置用
として機能する特定のメモリ空間を供給するバックグラ
ンド・モニタ部と、ユーザによるブレークポイント設定
用手段として機能するブレークポイント・レジスタと、
前記ブレークポイント・レジスタの設定内容と、前記実
行ユニットより出力されるアドレス・データとを比較し
て、両者が一致した時点において前記ブレーク要求信号
を出力する比較回路と、前記ブレーク応答信号および前
記実行ユニットより出力されるアドレス・データを受け
て、所定のユーザ・メモリにおけるユーザ空間から前記
バックグランド・モニタ部を分離し、当該バックグラン
ド・モニタ部を、ユーザ空間とは別個のマイコン開発支
援装置用のメモリ空間として機能させるメモリ空間切替
回路と、を少なくとも備えて構成され、キャッシュリプ
レース・アクセスの過程において、前記命令すり替え回
路による命令すり替え時に、前記バックグランド・モニ
タ部より出力されるキャッシュ登録無効化信号と前記比
較回路より出力されるブレーク要求信号との論理和信号
を介して前記分岐命令のキャッシュ登録を無効化し、前
記ブレーク要求信号がアクティブで出力された以降にお
いては、バックグランド・モニタ部のプログラムにより
処理を実行し、バックグランド・モニタ部のプログラム
の開始時には、前記キャッシュメモリを不活性化し、当
該プログラムの終了時には、前記キャッシュメモリを活
性化することを特徴としている。
【0014】
【実施例】次に、本発明について図面を参照して説明す
る。
【0015】図1は本発明の第1の実施例を示すブロッ
ク図である。図1に示されるように、本実施例は、ユー
ザ・メモリ12、アドレス・バス101、102および
103に対応して、マイクロプロセッサ11と、命令す
り替え回路13と、ユーザがブレークポイントを設定す
るためのブレークポイント・レジスタ14と、バックグ
ランド・モニタ部15と、ブレークポイント・レジスタ
14の内容とアドレス・バス103の内容とを比較する
比較器16と、マイクロプロセッサ11からのアクセス
を、ユーザ・メモリ12からバックグランド・モニタ部
15に切替えるメモリ空間切替回路17とを備えて構成
される。なお、図2は、上記のマイクロプロセッサ11
の内部構成を示すブロック図であり、当該マイクロプロ
セッサ11は、実行ユニット21と、キャッシュメモリ
22と、AND回路23と、インバータ24とにより構
成されている。
【0016】以下に、図1および図2を参照して、本実
施例の動作について説明する。
【0017】本実施例においてブレーク機能を使用する
場合には、ユーザは、デバッグを実行する前に、ブレー
クポイント・レジスタ14に割り込みを発生させるアド
レスを設定してプログラムを実行する。この場合、比較
器16においては、常にブレークポイント・レジスタ1
4とアドレス・バス103の内容が比較されており、両
者が一致した場合には、比較器16よりアクティブなブ
レーク要求信号107が出力されて、命令すり替え回路
13およびOR回路18に入力される。命令すり替え回
路13においては、アクティブなブレーク要求信号10
7が入力されると、ユーザ・メモリ12より読み込まれ
た命令コードに替わって、ブレーク命令(分岐命令でも
よい)がデータ・バス101に出力される。また、アク
ティブなブレーク要求信号107の入力に対応して、O
R回路18より出力されるキャッシュ登録制御信号10
5もアクティブとなってマイクロプロセッサ11に入力
される。
【0018】マイクロプロセッサ11内においては、O
R回路18を介して入力されるアクティブなキャッシュ
登録制御信号105はインバータ24により反転され、
AND回路23に入力される。AND回路23において
は、実行ユニット21より出力されるキャッシュ・ライ
ト信号202との論理積がとられて、キャッシュメモリ
22に入力されるが、キャッシュ登録制御信号105が
アクティブで入力される場合には、実行ユニット21か
ら、AND回路23を経由してキャッシュメモリ22に
入力されるキャッシュ・ライト信号202は、キャッシ
ュ登録制御信号105の反転信号によりマスクされるた
めに、マイクロプロセッサ11内に読み込まれるブレー
ク命令は、キャッシュメモリ22内には登録されない。
しかし、もしも実行ユニット21において、その時点に
おいて割り込みを発生させたいアドレスを実行する場合
には、キャッシュメモリ22をバイパスしてブレーク命
令が実行される。また、実行ユニット21において、当
該時点においては前記アドレスを実行せずに、後刻にお
いて再度前記アドレスを実行する場合には、再度ブレー
ク命令の前記キャッシュ・リプレース動作が繰返して行
われる。
【0019】実行ユニット21において命令が実行さ
れ、その命令がブレーク命令であった場合には、マイク
ロプロセッサ11より出力されるブレーク応答信号10
4はアクティブとなり、メモリ空間切替回路17に入力
される。その後、実行ユニット21は特定アドレスに分
岐されて、分岐先アドレスがアドレス・バス103に出
力される。メモリ空間切替回路17においては、アクテ
ィブなブレーク応答信号104の入力により、ブレーク
命令が実行されたことが検出されると、それ以降におけ
るアクセスは、ユーザ・メモリ12をアクセスすること
なく、バックグランド・モニタ部15をアクセスするよ
うに動作する。バックグランド・モニタ部15には、マ
イクロプロセッサ11の実行状態を、メモリ上に出力す
るプログラムが書き込まれており、以降においては、マ
イクロプロセッサ11においては、バッググランド・モ
ニタ部15のプログラムが実行される。
【0020】図3(a)、(b)、(c)、(d)およ
び(e)は、上記のマイクロプロセッサ11において、
バッググランド・モニタ部15のプログラムが実行され
る段階からの動作に対応するタイミング図である。以
下、マイクロプロセッサ11の動作について、図3をも
参照して説明する。
【0021】バックグランド・モニタ部15において
は、アクティブなブレーク要求信号107(図3(a)
参照)の入力により設定されるユーザ空間アクセスにお
けるブレーク命令に対応して(図3(b)参照)、図3
(e)のデバッグ装置上のアクセスに示されるように、
プログラムの先頭において、マイクロプロセッサ11は
キャッシュ・オフ状態に設定され、ブレーク処理におけ
る要因分析等の処理が行われた後に、キャッシュ・オン
状態に設定し直され、最後にRETI命令が実行され
て、ユーザ・プログラムが再開される(図3(b)参
照)。バックグランド・モニタ部15を介しての処理実
行中においては、当該バックグランド・モニタ部15よ
り出力されるキャッシュ登録無効化信号106は常にア
クティブになるため、キャッシュ登録制御信号105
(図3(d)参照)も常にアクティブとなり、キャッシ
ュ・オン状態からキャッシュ・オフ状態に遷移する場
合、およびキャッシュ・オフ状態からキャッシュ・オン
状態に遷移する場合に発生するキャッシュ・リプレース
により、常にリプレース・データをキャッシュ・メモリ
に登録することが禁止される。また、キャッシュ・オフ
状態におけるメモリセル・アクセスに対しては、キャッ
シュ登録制御信号105は、何等の影響をも与えること
がない。
【0022】このように、本実施例においては、従来
は、ユーザ・メモリ12内に設定されていたフロントエ
ンド・モニタを使用することなく、バックグランド・モ
ニタ部15のみを使用して、命令すり替えによるブレー
ク命令とバックグランド・モニタ部15のプログラム
(命令コード)を一切キャッシュ・メモリ12に登録す
ることなしに、ユーザの実行環境に影響を与えることな
くブレーク処理を行うことができる。
【0023】次に、本発明の第2の実施例について説明
する。
【0024】図4は本実施例を示すブロック図である。
本実施例は、前述の第1の実施例における命令すリ替え
回路13の機能を、マイクロプロセッサ41の内部に含
めて構成した実施例であり、図4に示されるように、ユ
ーザ・メモリ42、データ・バス401およびアドレス
・バス402に対応して、マイクロプロセッサ41と、
ユーザがブレークポイントを設定するためのブレークポ
イント・レジスタ43と、バックグランド・モニタ部4
4と、ブレークポイント・レジスタ43の内容とアドレ
ス・バス402の内容とを比較する比較器45と、マイ
クロプロセッサ41からのアクセスを、ユーザ・メモリ
42からバックグランド・モニタ部44に切替えるメモ
リ空間切替回路46とを備えて構成される。また、図5
は、上記のマイクロプロセッサ41の内部構成を示すブ
ロック図であり、当該マイクロプロセッサ41は 実行
ユニット51と、キャッシュメモリ52と、マルチプレ
クサ53と、AND回路54と、インバータ55とによ
り構成されており、マルチプレクサ53は、上記の命令
すリ替え回路をマルチプレクサにより構成したものであ
る。
【0025】図5において、マルチプレクサ53におい
ては、ブレーク命令504を受けて、ブレーク要求信号
403がアクティブになった場合においてのみブレーク
命令504が選択され、それ以外の場合には、データ・
バス401上のデータが選択されて、実行ユニット51
に送られる。ブレーク要求信号403は、インバータ5
5において反転されてAND回路54に入力される。A
ND回路54においては、実行ユニット51より出力さ
れるキャッシュ・ライト信号502との論理積がとられ
て、キャッシュメモリ52に入力されるが、ブレーク要
求信号403がアクティブで入力される場合には、実行
ユニット51から、AND回路54を経由してキャッシ
ュメモリ52に入力されるキャッシュ・ライト信号50
2は、ブレーク要求信号403の反転信号によりマスク
されるために、マイクロプロセッサ41内に読み込まれ
るブレーク命令は、キャッシュメモリ52内には登録さ
れない。これらの一環の動作については、前述の第1の
実施例の場合と同様である。但し、本実施例において
は、キャッシュ・オフへの実行状態の変更については、
前記従来例において説明したように、メモリ空間(アド
レスによる範囲指定)に対する付属情報により設定され
る。これにより、バックグランド・モニタ部44のメモ
リ空間が完全にプログラムにより設定することができる
ために、第1の実施例において有用されているキャッシ
ュ登録無効果信号106ならびにキャッシュ登録制御信
号105は双方ともに無用となり排除されている。その
他を含むマイコン開発支援装置全体の動作内容について
は、第1の実施例と同様であり、その説明は省略する。
【0026】
【発明の効果】以上説明したように、本発明は、キャッ
シュメモリを内蔵するマイクロプロセッサのマイコン開
発支援装置に適用されて、キャッシュ・リプレース中の
命令すり替え回路における命令すり替えに際して、所定
のキャッシュ登録無効果機能を介して分岐命令のキャッ
シュ登録を無効果し、ブレーク命令に対応して、バック
グランド・モニタ部のプログラムを実行し、当該バック
グランド・モニタ部のプログラムの開始時には、前記キ
ャッシュ・メモリを不活性化するとともに、当該プログ
ラムの終了時にはキャッシュ・メモリを活性化すること
により、ユーザ・メモリ内に設定されるフロントエンド
・モニタを一切使用することがなく、これにより、ユー
ザの使用するメモリ空間(特に、プログラムにおいて使
用するアドレスおよび容量)に一切制限を与えることな
く、如何なるユーザ・システムに対しても使用すること
ができるという効果がある。
【0027】また、バックグランド・モニタまたはマイ
コン開発支援装置内の資源しか使用しないために、ユー
ザが開発中のシステムが誤動作するような状況において
も、モニタ・プログラム自身は誤動作することがないた
め、有効なプログラム・デバッグが可能になるという効
果がある。
【0028】また、ブレーク命令およびバックグランド
・モニタのプログラム等は一切キャッシュメモリに登録
されず、これによりユーザのプログラムが実行された時
点におけるキャッシュ・メモリの状態が維持されている
ために、リアルタイム性のあるプログラム・デバックが
可能になるという効果がある。
【図面の簡単な説明】
【図1】本発明の第1の実施例を示すブロック図であ
る。
【図2】第1の実施例のマイクロプロセッサの構成を示
すブロック図である。
【図3】第1の実施例における動作状態を示すタイミン
グ図である。
【図4】本発明の第2の実施例を示すブロック図であ
る。
【図5】第2の実施例のマイクロプロセッサの構成を示
すブロック図である。
【図6】従来例を示すブロック図である。
【図7】従来例における動作状態を示すタイミング図で
ある。
【符号の説明】
11、41、51、61 マイクロプロセッサ 12、42、62 ユーザ・メモリ 13、63 命令すり替え回路 14、43、64 ブレークポイント・レジスタ 15、44、65 バックグランド・モニタ部 16、45、66 比較器 17、46、67 メモリ空間切替回路 18 OR回路 21、51 実行ユニット 22、52 キャッシュメモリ 23、54 AND回路 24、54 インバータ 53 マルチプレクサ

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 キャッシュメモリを内蔵するマイクロプ
    ロセッサを対象とするマイコン開発支援装置において、 少なくともプログラムを実行する実行ユニットとキャッ
    シュメモリを含み、所定のキャッシュ登録制御信号を介
    して前記キャッシュメモリのキャッシュ・リプレース・
    アクセスにおけるキャッシュ登録を無効果する機能と、
    プログラムにより前記実行ユニットを介して当該キャッ
    シュメモリを不活性化するキャッシュ・オフ機能を有す
    るとともに、前記実行ユニーットにより特定の分岐命令
    を実行したことを外部に伝達するブレーク応答信号を出
    力するマイクロプロセッサと、 前記マイクロプロセッサのメモリアクセスをトレース
    し、所定のブレーク要求信号を介して、特定番地におい
    て当該マイクロプロセッサにおいて読み込まれる命令
    を、前記分岐命令にすり替えて出力する命令すり替え回
    路と、 前記マイクロプロセッサに対して、ユーザ空間とは別個
    のマイコン開発支援装置用として機能する特定のメモリ
    空間を供給するバックグランド・モニタ部と、 ユーザによるブレークポイント設定用手段として機能す
    るブレークポイント・レジスタと、 前記ブレークポイント・レジスタの設定内容と、前記実
    行ユニットより出力されるアドレス・データとを比較し
    て、両者が一致した時点において前記ブレーク要求信号
    を出力する比較回路と、 前記ブレーク応答信号および前記実行ユニットより出力
    されるアドレス・データを受けて、所定のユーザ・メモ
    リにおけるユーザ空間から前記バックグランド・モニタ
    部を分離し、当該バックグランド・モニタ部を、ユーザ
    空間とは別個のマイコン開発支援装置用のメモリ空間と
    して機能させるメモリ空間切替回路と、 を少なくとも備えて構成され、キャッシュリプレース・
    アクセスの過程において、前記命令すり替え回路による
    命令すり替え時に、前記バックグランド・モニタ部より
    出力されるキャッシュ登録無効化信号と前記比較回路よ
    り出力されるブレーク要求信号との論理和信号を介して
    前記分岐命令のキャッシュ登録を無効化し、前記ブレー
    ク要求信号がアクティブで出力された以降においては、
    バックグランド・モニタ部のプログラムにより処理を実
    行し、バックグランド・モニタ部のプログラムの開始時
    には、前記キャッシュメモリを不活性化し、当該プログ
    ラムの終了時には、前記キャッシュメモリを活性化する
    ことを特徴とするマイコン開発支援装置。
JP5191546A 1993-08-03 1993-08-03 マイコン開発支援装置 Withdrawn JPH0744419A (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
JP5191546A JPH0744419A (ja) 1993-08-03 1993-08-03 マイコン開発支援装置
KR1019940019100A KR970011214B1 (ko) 1993-08-03 1994-08-02 마이크로컴퓨터 개발 지원 장치
US08/283,153 US5544307A (en) 1993-08-03 1994-08-03 Microcomputer development support system operable with only background monitor and without cache replacement
EP94112141A EP0638864B1 (en) 1993-08-03 1994-08-03 Development support system for microcomputer with internal cache
DE69411096T DE69411096T2 (de) 1993-08-03 1994-08-03 Entwicklungsunterstützungssystem für einen Mikrocomputer mit internem Cachespeicher

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5191546A JPH0744419A (ja) 1993-08-03 1993-08-03 マイコン開発支援装置

Publications (1)

Publication Number Publication Date
JPH0744419A true JPH0744419A (ja) 1995-02-14

Family

ID=16276478

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5191546A Withdrawn JPH0744419A (ja) 1993-08-03 1993-08-03 マイコン開発支援装置

Country Status (5)

Country Link
US (1) US5544307A (ja)
EP (1) EP0638864B1 (ja)
JP (1) JPH0744419A (ja)
KR (1) KR970011214B1 (ja)
DE (1) DE69411096T2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6505309B1 (en) 1998-09-21 2003-01-07 Fujitsu Limited Processing unit and method of debugging the processing unit
JP2004103024A (ja) * 2002-09-11 2004-04-02 Agere Systems Inc キャッシュをベースとしたソフトウェア・ブレークポイントを有するプロセッサ・システム

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1279449C (zh) * 1994-12-28 2006-10-11 株式会社东芝 微处理器
JP3130446B2 (ja) * 1995-05-10 2001-01-31 松下電器産業株式会社 プログラム変換装置及びプロセッサ
US6212630B1 (en) 1997-12-10 2001-04-03 Matsushita Electric Industrial Co., Ltd. Microprocessor for overlapping stack frame allocation with saving of subroutine data into stack area
US6546479B1 (en) * 1998-02-10 2003-04-08 Koninklijke Philips Electronics N.V. Reduced instruction fetch latency in a system including a pipelined processor
US6105141A (en) * 1998-06-04 2000-08-15 Apple Computer, Inc. Method and apparatus for power management of an external cache of a computer system
KR20020028565A (ko) * 2000-10-10 2002-04-17 이용일 광 변조기 및 그 제조방법
JP2004126658A (ja) * 2002-09-30 2004-04-22 Toshiba Corp プロセッサシステム
US9129061B2 (en) * 2012-07-25 2015-09-08 Advanced Micro Devices, Inc. Method and apparatus for on-chip debugging
JP6478562B2 (ja) 2013-11-07 2019-03-06 株式会社半導体エネルギー研究所 半導体装置
JP6393590B2 (ja) * 2013-11-22 2018-09-19 株式会社半導体エネルギー研究所 半導体装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5249266A (en) * 1985-10-22 1993-09-28 Texas Instruments Incorporated Data processing apparatus with self-emulation capability
JP2867453B2 (ja) * 1989-08-22 1999-03-08 横河電機株式会社 インサーキットエミュレータ
US5446851A (en) * 1990-08-03 1995-08-29 Matsushita Electric Industrial Co., Ltd. Instruction supplier for a microprocessor capable of preventing a functional error operation
EP0474256A3 (en) * 1990-09-07 1993-01-27 Nec Corporation In-circuit emulator
US5321828A (en) * 1991-06-07 1994-06-14 Step Engineering High speed microcomputer in-circuit emulator
US5317711A (en) * 1991-06-14 1994-05-31 Integrated Device Technology, Inc. Structure and method for monitoring an internal cache
US5636363A (en) * 1991-06-14 1997-06-03 Integrated Device Technology, Inc. Hardware control structure and method for off-chip monitoring entries of an on-chip cache
JPH0528002A (ja) * 1991-07-24 1993-02-05 Nec Corp マイクロプロセツサ
JP2731692B2 (ja) * 1993-04-28 1998-03-25 日本電気アイシーマイコンシステム株式会社 デバッグ装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6505309B1 (en) 1998-09-21 2003-01-07 Fujitsu Limited Processing unit and method of debugging the processing unit
JP2004103024A (ja) * 2002-09-11 2004-04-02 Agere Systems Inc キャッシュをベースとしたソフトウェア・ブレークポイントを有するプロセッサ・システム

Also Published As

Publication number Publication date
KR950006607A (ko) 1995-03-21
DE69411096T2 (de) 1999-02-25
US5544307A (en) 1996-08-06
KR970011214B1 (ko) 1997-07-08
DE69411096D1 (de) 1998-07-23
EP0638864B1 (en) 1998-06-17
EP0638864A1 (en) 1995-02-15

Similar Documents

Publication Publication Date Title
JP2731692B2 (ja) デバッグ装置
JP4475734B2 (ja) データ処理装置及びデータ処理方法
KR101325229B1 (ko) 비대칭 멀티프로세서 장치의 진단연산 수행
JP4447471B2 (ja) 安全処理システムにおける例外タイプ
JP2753500B2 (ja) 多重アーキテクチャ環境内で特にコードのデバッグを行う改良したソフトウェア・デバッグ・システムと方法
US6990657B2 (en) Shared software breakpoints in a shared memory system
JP4220476B2 (ja) 安全ドメインおよび非安全ドメインを有するシステム内での仮想−物理メモリアドレスマッピング
US6925634B2 (en) Method for maintaining cache coherency in software in a shared memory system
US7533302B2 (en) Trace and debug method and system for a processor
US20030177476A1 (en) Debugging multiple threads or processes
US20060174163A1 (en) Software breakpoints for use with memory devices
JPH0744419A (ja) マイコン開発支援装置
US7823019B2 (en) Debug circuitry
KR940003318B1 (ko) 캐시 메모리를 구비한 프로세서
JP2005122334A (ja) メモリダンプ方法、メモリダンプ用プログラム及び仮想計算機システム
US7039901B2 (en) Software shared memory bus
US7007267B2 (en) Transparent shared memory access in a software development system
JP2760228B2 (ja) キャッシュメモリを内蔵したマイクロプロセッサとそのトレースアナライザ
JPH1049401A (ja) プログラムのデバッグ方法
JP2520158B2 (ja) ディジタルシグナルプロセッサのデバッグ方式
JPS6382525A (ja) トレ−ス機能付マイクロプロセツサ
JPH1115691A (ja) プロセッサおよびデバッグ装置
JPH05165672A (ja) プロセッサ
JP2000259453A (ja) デバッグ装置
JP2001051873A (ja) デバッグ装置

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20001003