JPH01258045A - インサーキットエミュレータ - Google Patents

インサーキットエミュレータ

Info

Publication number
JPH01258045A
JPH01258045A JP63085759A JP8575988A JPH01258045A JP H01258045 A JPH01258045 A JP H01258045A JP 63085759 A JP63085759 A JP 63085759A JP 8575988 A JP8575988 A JP 8575988A JP H01258045 A JPH01258045 A JP H01258045A
Authority
JP
Japan
Prior art keywords
address
instruction
memory
branch instruction
program
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
JP63085759A
Other languages
English (en)
Inventor
Tetsuji Hamauchi
濱内 哲治
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 JP63085759A priority Critical patent/JPH01258045A/ja
Publication of JPH01258045A publication Critical patent/JPH01258045A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

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

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明はインサーキツタエミュレータに関し、特にデバ
ッグ用のメモリ構成を含むインサーキットエミュレータ
に関する。
〔従来の技術〕
従来のインサーキットエミュレータにおいてプログラム
のデバッグはプログラムをインサーキットエミュレータ
に接続されたターゲットシステム上のメモリまたはイン
サーキラ1へエミュレータが有するエミュレーションメ
モリにダウンロードして行なっている。デバッグ途中に
ダウンロードしたプログラムを修正する必要が生じた場
合にはインサーキットエミュレータのコマンドを用いて
メモリ内容を変更する。このときプログラムを追加しな
くてはならない場合、分岐命令で空きエリアに分岐し、
空きエリアに格納された追加プログラムを実行し、最後
に分岐命令を実行して元のプログラムに復帰するという
ような手法を用いていた。
すなわち、第3図(a)においてプログラムが命令1.
命令2.命令3と連続しているとき、命令1と命令2と
の間に2バイト長の命令4を挿入する場合に、第3図(
b)のように命令2を分岐命令1で置き換えてプログラ
ムで使用していない空きエリアに分岐させる。空きエリ
アには挿入する命令4、および分岐命令1で置き換えた
命令2を置く。最後に命令3へ戻る分岐命令2を置き元
のプログラムへfI Jiする。
〔発明が解決しようとする課題〕
上記のように従来の手法ではプログラムを追加しようと
する場合は分岐命令を挿入しなくてはならないので、第
4図のように1バイト命令が連続し、連続するアドレス
にシンボルが付いているような所に2バイト長以上の長
さの分岐命令を入れた場合、分岐命令によってプログラ
ムを破壊してしまうという欠点がある。
またマイクロプロセッサのもつアドレス空間いっばいに
プログラムを作成している場合、もしくはプログラムセ
グメントいっばいにプログラムを作成している場合には
空きエリアを確保できないためプログラムのデパックが
できないという欠点がある。
本発明の目的はターゲットシステムとパッチメモリとを
切替える手段を設けることによって上記の欠点を改善し
たインサーキツタエミュレータを提供することにある。
本発明のサーキットエミュレータは、マイクロプロセッ
サから出力されるアドレスバスの内容と内部に保持して
いるアドレスとを比較し、一致した場合に一致信号を出
力するアドレス比較器、アドレス比較器からの一致信号
によりターゲットシステムのメモリからの命令フェッチ
を制御し、代わりに分岐命令を発生する分岐命令発生回
路、前記分岐命令実行後にターゲットシステムに代って
マイクロプロセッサに命令をフェッチさせるメモリ、入
出力命令により前記メモリの実行からターゲットシステ
ムのメモリの実行へと復帰させるI/Oポートを有して
いるので、ターゲットシステムのプログラムを全く変更
せずにプログラムの追加等の修正が行なえる。また、メ
モリ空間またはセグメント空間いっばいにプログラムを
作成しである場合でもプログラムの追加ができる6〔課
題を解決するための手段〕 本発明のインサーキットエミュレータは、マイクロプロ
セッサが出力するアドレスバスの内容と内部に保持して
いるアドレスとを比較して一致した場合に一致信号を出
力するアドレス比較器と、前記一致信号によりターゲッ
トシステムのメモリからの命令フェッチを抑制し代わり
に分岐命令を発生する分岐命令発生回路と、前記分岐命
令実行後に前記ターゲットシステムに代って前記マイク
ロプロセッサに命令をフェッチさせるメモリと、入出力
命令により前記メモリの実行から前記ターゲットシステ
ムのメモリの実行へと復帰させる工/○ボートとを有す
る。
〔実施例〕
本発明について図面を用いて説明する。
第1図は本発明のインサーキットエミュレータの第一の
実施例を示すブロック図、第2図は動作説明図である。
なお本実施例におけるマイクロプロセッサはパイプライ
ン処理を行なわない。
アドレス比較器2は内部に保持したアドレスとマイクロ
プロセッサ1のアドレスバス10を比較し、一致した場
合にアドレス一致信号13を出力する。ステータスデコ
ーダ3はマイクロプロセッサ1より出力されるステータ
ス信号11をデコードし、命令フェッチ信号14とI1
0書込み信号19、命令の最初の1バイトのフェッチの
間アクティブになるM1信号24を作る。I/Oポート
4はマイクロプロセッサ1のI101001アドレスに
割り付けられ、Iloに書込みを行なうことによって、
RSフリップフロップ6がセットされているときにのみ
RSフリップフロップ22をセットする0分岐命令発生
回路7は分岐命令発生回路選択信号15がアクティブの
間、命令フェッチサイクルに1命令分の分岐命令をマイ
クロプロセッサ1にフェッチさせ、命令フェッチ終了後
に分岐命令発生終了信号18を出力しRSフリップフロ
ップ5をリセットし、RSフリップフロップ6をセット
する。パッチメモリ8はRSフリップフロップ6がセッ
トされた後命令フェッチされる。
アドレス比較器2にはバッチを当てたいアドレス、すな
わち第2図における命令2の格納アドレスを保持してお
く。マイクロプロセッサ1から出力されたアドレスバス
10とアドレス比較器2に保持したアドレスを比較し、
一致したときにアドレス一致信号13を出力する。この
ときのアドレスが命令フェッチのためのアドレスである
場合はマイクロプロセッサ1からのステータス信号1]
をデコードして得た命令フェッチ信号14がアクティブ
になるのでRSフリップフロップ5がセットされ、出力
Qがアクティブになる。したがって分岐命令発生回路選
択信号15がアクティブになるので分岐命令発生回路7
はバッチメモリの先頭アドレスへ分岐する分岐命令の1
バイト目を出力し、マイクロプロセッサ1が取込む、以
降のフェッチサイクルで2バイト目をフェッチしたf&
、分岐命令発生回路7の分岐命令発生終了信号18がア
クティブになり、RSフリップフロップ5をリセットし
、RSフリップフロップ16セットし分岐命令実行後の
命令フェッチはバッチメモリ8の先頭より行なう、第2
図のようにバッチメモリ8の先頭には命令1と命令2の
間に挿入する命令4を格納しておき、その後にはI/O
ポート4へのI10書込み命令とバッチアドレスへの分
岐命令を付加する。これらのパッチメモリへの命令の書
込みはプログラム実行前に、アドレス比較器2にパッチ
アドレスを書込むのと同時に行なう。
I10書込み命令によってRSフリップフロップ22が
セットされ、同時にDフリップフロップ25.26をク
リアする。■10書込み命令実行後の命令のフェッチ時
のM1信号24によってDフリップフロップ25.26
はラッチされる6I10命令の次の分岐命令のフェッチ
でDフリップフロップ25.26の出力QがそれぞれH
ighレベル、Lowレベルになり、分岐命令実行後の
命令フェッチ時にDフリップフロップ26の出力Qカ月
−(ighレベルになる。RSフリップフロップ6はリ
セットされ、パッチメモリ選択信号16がインアクティ
ブとなるので命令フェッチがターゲットシステム9から
切り換わる。
バッチメモリ8の実行からターゲットシステム9のメモ
リ上の命令2の実行へ復帰した場合に再びアドレス一致
信号13がアクティブになるので、Dフリップフロップ
20とORゲートで分岐命令発生回路7がアクティブの
間、バッチメモリからのフェッチが選択されている間、
および復帰後最初の1回の命令フェッチの間アクティブ
になるアドレス一致マスク信号21を作りアドレス−致
信号をマスクする。
バッチアドレスでアドレスが一致後分岐命令発生回路7
がアクティブの間およびバッチメモリ8が選択されてい
る間でも命令フェッチサイクル以外はターゲットシステ
ム9をアクセスするので、ターゲットシステム9のメモ
リ上に置いたテーブルデータ等の参照はできる。またバ
ッチメモリ8への切り換え時にスタックの変化はないの
で、パッチメモリ内にはスタック操作命令等の通常のプ
ログラムが記述可能である。
上記の実施例では1組のアドレス比較器しか持たないの
で、プログラム上でバッチを当てられる場所が1カ所に
制限される。第5図に示す第二の実施例では3組のアド
レス比較器2aおよびDフリップフロラ123を有する
3組のアドレス比較器2aでマイクロプロセッサ1のア
ドレスバス10を監視し、プログラムがバッチアドレス
に到達してアドレス比較器2aのいずれかのアドレスと
一致した場合、アドレス−致信号13aのうち1本がア
クティブになり、Dフリップフロップ23にアドレス一
致信号13aがラッチされる。
Dフリップフロップ23にラッチされたアドレス一致信
号は分岐命令発生回路7へ入力され、ターゲットシステ
ム9からバッチメモリ8への分岐命令発生時に分岐命令
のオペランドに組み込まれてバッチメモリ8の異なるア
ドレスへ分岐することができる。このため3組のアドレ
スにバッチを当てることが可能となる。
〔発明の効果〕
以上説明したように本発明のインサーキットエミュレー
タは、マイクロプロセッサから出力されるアドレスバス
の内容と内部に保持しているアドレスとを比較し一致し
た場合に一致信号を出力するアドレス比較器、アドレス
比較器からの一致信号によりターゲットシステムのメモ
リからの命令フェッチを抑制し代わりに分岐命令を発生
する分岐命令発生回路、前記分岐命令実行後にターゲッ
トシステムに代ってマイクロプロセッサに命令をフェッ
チさせるメモリ、入出力命令により前記メモリの実行か
らターゲットシステムのメモリの実行へと復帰させるI
/Oポートを有しているので、ターゲットシステムのプ
ログラムを全く変更せずにプログラムの追加等の修正が
行なえる9また、メモリ空間またはセグメント空間いっ
ばいにプログラムを作成しである場合でもプログラムを
追加してデバッグができるという効果がある。
【図面の簡単な説明】
第1図は本発明のインサーキットエミュレータの第一の
実施例を示すブロック図、第2図は第1図の動作説明図
、第3図は従来の例、第4図は従来問題となった例、第
5図は本発明の第二の実施例のブロック図である。 1・・・マイクロプロセッサ、2・・・アドレス比較器
、4・・・I/Oポート、7・・・分岐命令発生回路、
8・・・パッチメモリ、9・・・ターゲットシステム、
10・・・アドレスバス、12・・・データバス。

Claims (1)

    【特許請求の範囲】
  1.  マイクロプロセッサが出力するアドレスバスの内容と
    内部に保持しているアドレスとを比較して一致した場合
    に一致信号を出力するアドレス比較器と、前記一致信号
    によりターゲットシステムのメモリからの命令フェッチ
    を抑制し代わりに分岐命令を発生する分岐命令発生回路
    と、前記分岐命令実行後に前記ターゲットシステムに代
    って前記マイクロプロセッサに命令をフェッチさせるメ
    モリと、入出力命令により前記メモリの実行から前記タ
    ーゲットシステムのメモリの実行へと復帰させるI/O
    ポートとを有することを特徴とするインサーキットエミ
    ュレータ。
JP63085759A 1988-04-06 1988-04-06 インサーキットエミュレータ Pending JPH01258045A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP63085759A JPH01258045A (ja) 1988-04-06 1988-04-06 インサーキットエミュレータ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP63085759A JPH01258045A (ja) 1988-04-06 1988-04-06 インサーキットエミュレータ

Publications (1)

Publication Number Publication Date
JPH01258045A true JPH01258045A (ja) 1989-10-16

Family

ID=13867791

Family Applications (1)

Application Number Title Priority Date Filing Date
JP63085759A Pending JPH01258045A (ja) 1988-04-06 1988-04-06 インサーキットエミュレータ

Country Status (1)

Country Link
JP (1) JPH01258045A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05233359A (ja) * 1992-02-20 1993-09-10 Nec Corp デバッグ装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05233359A (ja) * 1992-02-20 1993-09-10 Nec Corp デバッグ装置

Similar Documents

Publication Publication Date Title
US4879646A (en) Data processing system with a pipelined structure for editing trace memory contents and tracing operations during system debugging
JPS63301339A (ja) コンピュ−タ装置
JPH03204737A (ja) 信号処理プロセッサのデバッグ回路
JP2513417B2 (ja) 情報処理装置
JPH01258045A (ja) インサーキットエミュレータ
EP1177499B1 (en) Processor and method of executing instructions from several instruction sources
US5819081A (en) Method of executing a branch instruction of jumping to a subroutine in a pipeline control system
JP2758624B2 (ja) マイクロプログラムの調速方式
JPS63284644A (ja) 命令アドレス出力回路
JPS62197831A (ja) デ−タ処理装置
JP2808757B2 (ja) デバッグ用マイクロプロセッサ
JPS61250754A (ja) 簡易型キヤツシユメモリ
JP2604203B2 (ja) ワンチップデジタル信号処理装置のデバック装置
JPH02135545A (ja) デバッガの実行制御処理方式
JP2555912B2 (ja) マイクロプロセッサ
JPS60229141A (ja) レジスタのデ−タ保存方式
JPS59158449A (ja) デバツグ装置
JPH03164945A (ja) データ処理装置
JPS63228332A (ja) 命令実行制御方式
JPH04264624A (ja) プロセッサ
JPH05100901A (ja) マイクロコンピユータ
JPS619733A (ja) テスト装置
JPS62248043A (ja) マイクロコンピユ−タ・インストラクシヨン・フエツチ用メモリ切換回路
JPS63163533A (ja) マイクロコンピユ−タ
JPH02165349A (ja) アドレストレース回路