JPH10283222A - エミュレータ方法 - Google Patents

エミュレータ方法

Info

Publication number
JPH10283222A
JPH10283222A JP9085351A JP8535197A JPH10283222A JP H10283222 A JPH10283222 A JP H10283222A JP 9085351 A JP9085351 A JP 9085351A JP 8535197 A JP8535197 A JP 8535197A JP H10283222 A JPH10283222 A JP H10283222A
Authority
JP
Japan
Prior art keywords
instruction
address
break
program
language
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
JP9085351A
Other languages
English (en)
Inventor
Yasuhiro Senoo
康宏 妹尾
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.)
Renesas Design Corp
Mitsubishi Electric Corp
Original Assignee
Renesas Design Corp
Mitsubishi Electric 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 Renesas Design Corp, Mitsubishi Electric Corp filed Critical Renesas Design Corp
Priority to JP9085351A priority Critical patent/JPH10283222A/ja
Publication of JPH10283222A publication Critical patent/JPH10283222A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

(57)【要約】 【課題】 エミュレータではC言語の条件でブレーク条
件を指定することができないという課題があった。 【解決手段】 ユーザが入力するブレーク条件となるC
言語の条件式を解析し、この解析結果より、ターゲット
のマイクロプロセッサが実行可能な命令コードを生成
し、この生成した命令コードをターゲットのメモリ空間
の空き領域へロードし、上記ブレーク条件の判定アドレ
スの設定と、命令実行のブレークポイントを設定するも
のである。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】この発明は、マイクロプロセ
ッサのプログラム開発に使用するエミュレータ方法に関
するものである。
【0002】
【従来の技術】図6は、マイクロプロセッサ用のエミュ
レータのシステム構成図であり、図において、21はホ
ストコンピュータ、22はホストコンピュータとエミュ
レータ23間でコマンドやデータを送受信する通信ケー
ブル、24はマイクロプロセッサを搭載するターゲット
システム、25はエミュレータとターゲットシステムを
接続するプローブである。このプローブの先端は、マイ
クロプロセッサのICパッケージと同じ形状であり、タ
ーゲットシステムの基板上のマイクロプロセッサのソケ
ット28に接続されている。
【0003】26はホストコンピュータ21上で動作す
るデバッグソフトウエアであり、ユーザはこのソフトウ
エアを操作することによって、エミュレータ23を制御
する。27はホストコンピュータ21上で動作するCコ
ンパイラであり、エミュレータシステムの構成要素では
ないが、デバッグソフトウエアの処理内容を説明する上
で必要になるので合わせて示している。このCコンパイ
ラは、プログラミング言語であるC言語で記述されたソ
ースファイルを翻訳し、マイクロプロセッサが理解でき
る機械語ファイルを生成する。また、デバッグソフトウ
エアがC言語の変数式を参照する際に必要になる変数
名、サイズ情報、アドレス情報等を保持したデバッグ情
報ファイルも併せて生成する。
【0004】上記エミュレータ23は、マイクロプロセ
ッサのプログラム開発において、作成したプログラムの
間違いを見つける作業(デバッグと称する)で使用する
ツールであり、以下の主要な機能を有する。
【0005】a.プログラムの実行機能 マイクロプロセッサのターゲットシステム(たとえば電
子ジャー、エアコン等)では、プログラムを最終的にR
OMに搭載し、マイクロプロセッサを動作させるが、エ
ミュレータ23ではプログラムをROMに搭載すること
無く、作成したプログラムを実行することができる。
【0006】b.プログラムのブレーク機能 上記aのプログラム実行機能でプログラムを実行した結
果、ターゲットシステムが正しく動作しなかった場合、
プログラムの間違った箇所を見つけ、修正する必要があ
る。この作業をデバッグという。デバッグでは、プログ
ラム実行を途中で停止させるブレーク機能を用いる。こ
のブレーク機能を用いてプログラムを少しずつ実行し、
ターゲットシステムの動きやプログラムの実行アドレス
等を確認することによって、プログラムの間違った箇所
が発見できる。ブレーク機能では、特定のアドレスにバ
スアクセス(リード・ライト・命令フェッチ)が発生し
た際にブレークするように、ブレーク条件が指定でき
る。
【0007】c.リアルタイムトレース機能 複雑なプログラムの間違いが発生した場合、ブレーク機
能でプログラムを少しずつ実行するだけでは、プログラ
ムの間違い箇所がわからないことがある。このような場
合、ブレーク機能と併せてリアルタイムトレース機能を
利用する。リアルタイムトレース機能は、プログラム実
行を遅延させることなく(すなわちプログラム実行のリ
アルタイム性を保証しつつ)プログラム実行中のバスア
クセスに関する情報をトレースメモリと呼ばれるメモリ
に逐次格納する。このリアルタイムトレース機能を利用
すると、プログラムをブレークした後、トレースメモリ
を参照することによって、ブレークするまでにどのよう
な経路でプログラムが実行されたか、またどのようなデ
ータアクセスがあったか確認することができる。
【0008】図7は、上記エミュレータ23の内部回路
を示すブロック図であり、31はエミュレーション用の
マイクロプロセッサ、32はエミュレーションメモリ、
33はシステムバス、34はブレーク回路、35はプロ
グラム実行中、システムバスの情報をトレースメモリに
格納するトレース回路、36はモニタ回路、37はモニ
タ回路36から制御され、システムバス33を制御する
バス制御回路である。
【0009】上記モニタ回路36はエミュレータ内部の
各ブロックを制御する中枢となる回路であり、ユーザが
ホストコンピュータ21から発行したコマンドを解釈
し、コマンドに対応した処理を行うもので、以下の主要
な処理を行う。
【0010】a.ホストコンピュータ21からプログラ
ム情報を受け取り、エミュレーションメモリ32に格納
する。 b.プログラム実行に先立ち、予めユーザが設立したブ
レーク条件をブレーク回路34に設定する。 c.エミュレーションメモリ32に格納したプログラム
をエミュレーション用のマイクロプロセッサ31に実行
させる。 d.ブレーク回路34からブレークを指示する信号が送
られた際、プログラムをブレークさせる。このブレーク
回路34は、バス制御回路37を介してシステムバス3
3の情報を監視し、モニタ回路36によって予め設定さ
れたブレーク条件を満たすバスアクセスが発生したか否
かを判別し、ブレーク条件を満たした際、その旨をモニ
タ回路36に伝える。
【0011】次に動作について説明する。図8は、従来
のエミュレータシステムにおけるデバッグソフトウエア
の処理手順を示したフローチャートであり、まず、ダウ
ンロード(ステップST41)では、コンパイラがホス
トコンピュータ21上に生成した機械語ファイルを読み
込み、エミュレータ23に送信する。
【0012】次いで、デバッグ情報ファイルのロードで
は(ステップST42)、Cコンパイラが生成したC言
語の変数情報を格納したデバッグ情報ファイルを読み込
み、ホストコンピュータ21のメモリ上格納する。
【0013】しかる後、ブレークポイントの設定(ステ
ップST43)では、ユーザが入力するブレークポイン
ト情報を解析し、その情報をエミュレータ23へ転送す
る。ここで、ブレークポイント情報とは、例えばアドレ
ス、アクセス種別(リード、ライト等のどのアクセスの
際にブレークするか)等の情報である。
【0014】そして、ターゲットプログラムの実行(ス
テップST44)では、エミュレータ23に対してター
ゲットプログラムを実行するためのコマンドを発行す
る。
【0015】次いで、ブレーク判定(ステップST4
5)では、ブレークしたか否かを確認するためのコマン
ドをエミュレータ23に対して発行する。この処理をブ
レークするまで繰り返す。
【0016】一方、近年のマイクロプロセッサの応用シ
ステムでは、プログラムの大規模化に伴い、プログラミ
ング言語として高級言語が使用されるようになった。そ
の中でも、C言語は最も良く利用される言語である。
【0017】このC言語でプログラムを開発する場合、
変数の値の比較等、プログラム中で使用する様々な条件
式によって、プログラムのブレーク条件が指定できれ
ば、デバッグを効率よく行うことができる。
【0018】図9はC言語の条件式によるブレーク条件
の指定例を示すもので、配列arrの添字式として変数
iを指定し、その添字式で配列arrの要素を参照し、
その内容が変数bと同じか否かを判別している。
【0019】
【発明が解決しようとする課題】従来のエミュレータ方
法は以上のように構成されているので、次のような理由
により、C言語の条件式でブレーク条件を指定すること
ができないという課題があった。
【0020】イ.C言語の条件式は複数の命令によって
実行されるために、そのメモリアクセスは複雑であり、
組み合わせも無限である。 ロ.C言語の変数は、プログラムの高速化のためにマイ
クロプロセッサ内のレジスタに配置されることがある。
この場合、変数参照の際にメモリアクセスが発生せず、
システムバスにその情報が出力されない。
【0021】一方、マイクロプロセッサのエミュレータ
方法ではなく、汎用のコンピュータ、たとえばミニコ
ン、EWS、パソコン上のプログラム開発に使用するデ
バッグソフトウエアでは、下記の手法により、C言語の
条件式でブレーク条件を指定できるものがある。
【0022】ハ.ターゲットプログラムを1命令実行す
る毎に、または特定アドレスの命令を実行する毎に、一
時的に強制ブレークする。 ニ.強制ブレークの後、デバッグソフトウエア自身の処
理によって、ブレーク条件となるC言語式を計算する。
C言語の条件式は、翻訳処理によって最終的にメモリ内
容、レジスタ内容、即値を項とする単純な式となる。こ
こではこの単純化した式に従って、必要なメモリ、レジ
スタを参照し、条件式を計算する。 ホ.上記ニの計算の結果、条件式が真になった場合、す
なわち条件が満たされた場合は、ブレーク条件を満たし
たと判断し、そのままブレーク状態とする。そうでない
場合は、まだブレーク条件を満たしていないと判断し、
再度、ターゲットプログラムを実行し、上記ハからの処
理を繰り返す。
【0023】これらの手法は、マイクロプロセッサのエ
ミュレータ用のデバッグソフトウエアでも利用可能であ
る。しかし、この手法は、ターゲットプログラムの実行
時間を大きく遅延させるため、実用的な手法とはならな
い。マイクロプロセッサの応用システムでは、細かな時
間管理を行っている。従って、プログラムのデバッグに
おいてプログラム実行時間が大きく遅延すると、実際の
動作と異なった動作をしてしまい。デバッグできなくな
るという課題があった。
【0024】この発明は上記のような課題を解決するた
めになされたもので、C言語の条件式によってブレーク
条件が指定できるエミュレータ方法を得ることを目的と
する。
【0025】
【課題を解決するための手段】請求項1記載の発明に係
るエミュレータ方法は、ユーザが入力するブレーク条件
となるC言語の条件式を解析し、この解析結果より、タ
ーゲットのマイクロプロセッサが実行可能な命令コード
を生成し、この生成した命令コードをターゲットのメモ
リ空間の空き領域へロードし、上記ブレーク条件を判定
する命令アドレスから条件式の命令コードのアドレスに
分岐・復帰できるように分岐命令を挿入し、前記マイク
ロプロセッサが実行可能な命令コードの中の、条件式が
真のときに実行されるアドレスに対して、命令実行のブ
レークポイントを設定するものである。
【0026】
【発明の実施の形態】以下、この発明の実施の一形態を
説明する。 実施の形態1.図1は実施の形態1によるデバッグソフ
トウエアの処理手順を示したフローチャートである。図
において、起動後、コンパイラがホストコンピュータ2
1上に生成した機械語ファイルを読み込み、エミュレー
タ23に送信するダウンロード(ステップST41)、
Cコンパイラが生成したC言語の変数情報を格納したデ
バッグ情報ファイルを読み込み、ホストコンピュータ2
1のメモリ上に格納するデバッグ情報ファイルのロード
(ステップST42)の処理は従来方法と同様である。
【0027】次いで、C言語条件式の解析(ステップS
T11(第1工程))では、ユーザが入力するブレーク
条件となるC言語の条件式を解析し、単純なメモリ、レ
ジスタ演算の数式に変換する。この処理には、従来の図
6に示すCコンパイラ27等で用いられている言語解析
技術を用いる。なお、解析の過程では、変数の記述をア
ドレスとサイズ情報に変換するために、前記ロードした
デバッグ情報を参照する。
【0028】ここで、図9で説明したプログラムおよび
ブレークの条件式を例にあげて処理内容を説明する。条
件式は、arr[i]==bである。これらの式を解析
する場合、図6のCコンパイラ27が生成するデバッグ
情報ファイル(
【0003】で説明済)に含まれる情報が必要になる。
デバッグ情報ファイルの内容は既に説明した図1のステ
ップST42によって、ホストコンピュータのメモリ内
に格納されている。
【0029】図9のプログラム例では、必要な情報は図
2のような情報である(配置アドレスやサイズは、説明
しやすい任意の値を選択した)。なお、変数がレジスタ
変数の場合は配置アドレスの代わりにレジスタ名が、ま
た自動変数の場合は配置アドレスの代わりにフレームポ
インタレジスタ(自動変数をアクセスするためのレジス
タ)からのオフセット値が必要となる。
【0030】条件式arr[i]==bは、デバッグソ
フトウエアの字句解析処理、および構文解析処理によっ
て、図3のような簡単な演算式に変換される。なお、こ
れらの字句解析処理および構文解析処理の手法について
は、既知の技術であり、特に言及しない。Cコンパイラ
等の言語処理プログラムで既に確立した手法を用いる。
【0031】条件式の命令コード生成(ステップST1
2(第2工程))では、前記ステップST11における
解析結果より、ターゲットのマイクロプロセッサが実行
可能な命令コードを生成し、ここで生成した命令コード
によって、ターゲットのマイクロプロセッサが条件式を
評価できるようにする。図3で示した解析結果を例に挙
げて、命令コードの生成例を図4に示す。
【0032】なお、図4では、架空の32ビットMPU
を想定し、かつ架空のアセンブラ言語で命令コードの内
容を説明する。各命令の内容は右側にコメントで説明す
る。図4の命令コード生成の手法については、既知の技
術であり、特に言及しない。Cコンパイラ等の言語処理
プログラムで既に確立した手法を用いる。
【0033】この処理でも、従来のCコンパイラ27等
で用いられている命令コード生成技術を用いる。この命
令コード生成は次の点を考慮する。
【0034】a)命令コードの先頭で、レジスタの内容
をメモリの空き領域を確保した作業領域に退避する。図
4では、(1)〜(3)に相当する。図4ではスタック
領域を使用しているが、別の空き領域を確保し、転送命
令で退避してもよい。 b)条件式が真のときと偽のときで異なったアドレスへ
分岐する。図4では、(9)で処理している。この箇所
は、Cの条件式が真の場合は、下の(11)の行を実行
し、条件式が偽りの時はlabel1のある(13)の
行へ分岐する。 c)b)の真と偽の2つのアドレスから更に共通のアド
レスへ分岐する。図4では、真偽共、最終的に(14)
の行へ分岐する。 d)c)の共通のアドレスにおいて、a)で退避したレ
ジスタの内容を復帰する。図4では、(14)の行でス
タックからレジスタを復帰している。
【0035】空きメモリ領域へのロード(ステップST
13(第3工程))では、ステップST12で生成した
命令コードをターゲットのメモリ空間の空き領域へロー
ドする。この処理では、ステップST41のダウンロー
ドと同じように、エミュレータの命令コードを送信す
る。なお、図4では、命令コードの内容を分かり易く説
明するために、架空のアセンブリ言語の記述を用いた
が、実際の図1のステップST12では、マイクロコン
ピュータが実行可能な機械語(バイトコード群)で命令
コードを生成しているものとする。
【0036】次いでブレーク条件の判定アドレスの設定
(ステップST14(第4工程))について、図5を用
いて説明する。ブレーク条件の判定アドレスの設定(ス
テップST14)では、以下の処理を行う。
【0037】e)ユーザが入力する命令アドレスを得
る。これは、すなわちCの条件式を評価させる位置、す
なわちブレークさせたいアドレスをユーザが入力し、そ
の情報をデバッグソフトウエアが入手する処理のことで
ある。図5では、ユーザがソースプログラムの22行目
の行頭にブレークするアドレスを設定することを想定し
ている。従って、この場合の命令アドレスの指定では、
ユーザが22行目の行頭のアドレスであるOX 8012
番地を入力する(例えばホストコンピュータのキーボー
ドから入力する)ことになる。
【0038】なお、C言語プログラムの開発では、ユー
ザがソースプログラムの各行頭に相当するアドレスを予
め知っていることは少ない。従って、デバッグソフトウ
エアの中には、ソースファイル名と行番号の入力を受け
付け、その情報からアドレスに変換する機構を持つもの
もある。このあたりに関しては、この発明と直接関係し
ないので言及しない。 f)入力されたアドレスに存在した命令コードをホスト
コンピュータのメモリに退避し、代わりにステップST
13のロード先の先頭アドレスに分岐するための命令コ
ードを挿入する。
【0039】この処理について、図5を用いて説明す
る。この処理は、22行目以降の命令コードを実行する
前に、ステップST13のロード先の先頭アドレスから
始まる命令コードを実行させるための処理である。この
ためには、22行目の行頭に相当するアドレスに対し
て、ステップST13のロード先の先頭アドレスへの分
岐命令を挿入(上書き)すれば良い。
【0040】しかし、単に上書きしてしまうと、以前の
命令が消去され、実行されなくなってしまう。そのた
め、デバッグソフトウエアは、以前の行頭アドレスに存
在した命令コードをエミュレータから参照し、ホストコ
ンピュータ上のメモリ(作業用メモリであればどこでも
良い)に一時的に退避しておく必要がある。ここで退避
した命令コードは、後の処理で再度、使用する。図5で
説明すると(1)と(2)のコードのことである。
【0041】なお、分岐命令を挿入する場合に、元々存
在した命令の境界をまたぐ場合がある。例えば図5の2
番目の命令(2)が4バイト長の命令であった場合等で
ある。この場合、そのまま上書きすると、命令の途中ま
で上書きされ、残りの命令が不正なコードとして実行さ
れてしまう。このような場合は、分岐命令に加えて、ノ
ーオペレーション命令(nop)を挿入する必要があ
る。
【0042】g)ステップST12で生成した条件式の
命令コード(すなわちステップST13でロードした命
令コード)の最後の処理(d)の後として、f)で退避
した命令コードを追加し、その後にf)で挿入した分岐
命令の次のアドレスに分岐するための命令コードを追加
する。これらの処理によって、ユーザが指定したアドレ
スにおいて、C言語の条件式の命令コードが実行でき、
かつその後、元の命令コードを実行できる。
【0043】図4で説明すると、dの後の最後の処理と
は、(17)の行のことである。ここで、図5の(1)
と(2)の退避済みの命令コードを挿入する。更にその
後ろに、図5の(3)の命令アドレスOX 8018番地
へ分岐するための分岐命令(jmpOX 8018)を挿
入する。
【0044】なお、もし退避した命令コード(図5の
(1)と(2))が、元々存在したアドレス以外で実行
した際に異なった動作をする命令であった場合(例えば
相対分岐命令等)、異なったアドレスで実行できる別の
命令(例えば絶対分岐命令等)に置き換える必要があ
る。
【0045】ブレークポイントの設定(ステップST1
5(第5工程))では、ステップST12の条件式の命
令コードの中の、条件式が真のときに実行されるアドレ
スに対して、命令実行のブレークポイントを設立する。
命令実行のブレークポイント設定では、それに相当する
コマンドをエミュレータに送信する。図4で説明する
と、(11)の行頭のアドレスに命令のブレークポイン
トを設定する。
【0046】以下、エミュレータ23に対してターゲッ
トプログラムを実行するためのコマンドを発行するター
ゲットプログラムの実行(ステップST44)、ブレー
クしたか否かを確認するためのコマンドをエミュレータ
23に対して発行するブレーク判定処理(ステップST
45)をブレークするまで繰り返す。
【0047】
【発明の効果】以上のように、請求項1記載の発明によ
れば、ユーザが入力するブレーク条件となるC言語の条
件式を解析し、この解析結果より、ターゲットのマイク
ロプロセッサが実行可能な命令コードを生成し、この生
成した命令コードをターゲットのメモリ空間の空き領域
へロードし、上記ブレーク条件を判定する命令アドレス
から条件式の命令コードのアドレスに分岐・復帰できる
ように分岐命令を挿入し、前記マイクロプロセッサが実
行可能な命令コードの中の、条件式が真のときに実行さ
れるアドレスに対して、命令実行のブレークポイントを
設定するように構成したので、デバッグソフトウエア
と、命令実行のブレーク機能を備えたエミュレータを用
いることによって、わずかな実行遅延、すなわちターゲ
ットのマイクロプロセッサがレジスタ退避、復帰、C言
語の条件式の実行に要する時間を遅延させるだけで、C
言語の条件式をブレーク条件としてターゲットプログラ
ムをブレークできるマイクロプロセッサ用エミュレータ
システムを得ることができる効果がある。
【図面の簡単な説明】
【図1】 この発明の実施の形態1によるデバッグソフ
トウエアの処理手順を示すフローチャートである。
【図2】 プログラム情報の説明図である。
【図3】 演算子の説明図である。
【図4】 C条件式の解析結果の説明図である。
【図5】 ブレーク対象のプログラムの説明図である。
【図6】 マイクロプロセッサ用のエミュレータのシス
テム構成図である。
【図7】 従来のエミュレータの内部回路のブロック図
である。
【図8】 従来のデバッグソフトウエアの処理手順を示
すフローチャートである。
【図9】 C言語の条件式によるブレーク条件の指定例
である。
【符号の説明】
ST11 ステップ(第1工程)、ST12 ステップ
(第2工程)、ST13 ステップ(第3工程)、ST
14 ステップ(第4工程)、ST15 ステップ(第
5工程)、31 マイクロプロセッサ。

Claims (1)

    【特許請求の範囲】
  1. 【請求項1】 ユーザが入力するブレーク条件となるC
    言語の条件式を解析する第1工程と、この解析結果よ
    り、ターゲットのマイクロプロセッサが実行可能な命令
    コードを生成する第2工程と、この生成した前記命令コ
    ードをターゲットのメモリ空間の空き領域へロードする
    第3工程と、前記ブレーク条件を判定する命令アドレス
    から条件式の命令コードのアドレスに分岐・復帰できる
    ように分岐命令を挿入し、ブレーク条件の判定アドレス
    を設定する第4工程と、前記マイクロプロセッサが実行
    可能な命令コードの中の、条件式が真のときに実行され
    るアドレスに対して、命令実行のブレークポイントを設
    定する第5工程とを備えたエミュレータ方法。
JP9085351A 1997-04-03 1997-04-03 エミュレータ方法 Pending JPH10283222A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9085351A JPH10283222A (ja) 1997-04-03 1997-04-03 エミュレータ方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9085351A JPH10283222A (ja) 1997-04-03 1997-04-03 エミュレータ方法

Publications (1)

Publication Number Publication Date
JPH10283222A true JPH10283222A (ja) 1998-10-23

Family

ID=13856274

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9085351A Pending JPH10283222A (ja) 1997-04-03 1997-04-03 エミュレータ方法

Country Status (1)

Country Link
JP (1) JPH10283222A (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002534736A (ja) * 1999-01-04 2002-10-15 イーエムシー コーポレイション オンラインでデバッグ及び追跡を行う装置及び方法
JP2005078309A (ja) * 2003-08-29 2005-03-24 Nec Corp データ処理システム
JP2007179567A (ja) * 2007-02-26 2007-07-12 Nec Corp データ処理システム

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002534736A (ja) * 1999-01-04 2002-10-15 イーエムシー コーポレイション オンラインでデバッグ及び追跡を行う装置及び方法
JP2005078309A (ja) * 2003-08-29 2005-03-24 Nec Corp データ処理システム
US7647485B2 (en) 2003-08-29 2010-01-12 Nec Corporation Data processing system for debugging utilizing halts in a parallel device
JP2007179567A (ja) * 2007-02-26 2007-07-12 Nec Corp データ処理システム

Similar Documents

Publication Publication Date Title
EP0464494B1 (en) A high performance pipelined emulator
US4879646A (en) Data processing system with a pipelined structure for editing trace memory contents and tracing operations during system debugging
US8028268B2 (en) System and method for building software package for embedded system
US5564041A (en) Microprocessor for inserting a bus cycle in an instruction set to output an internal information for an emulation
US4866665A (en) Break points system in a software monitor where entry address of break point routing equals op code of call instruction
US6141791A (en) Debug aid device, program compiler device, storage medium storing computer-readable debugger program, and storage medium storing program compiler program
US10789192B2 (en) System and method for programming data transfer within a microcontroller
JP2006507586A (ja) 埋め込みシステムの解析装置及び方法
US6496924B2 (en) Data processing apparatus including a plurality of pipeline processing mechanisms in which memory access instructions are carried out in a memory access pipeline
JPH08339298A (ja) マイクロプロセッサにおける命令追加方法及びそれを用いたマイクロプロセッサ
JPH10283222A (ja) エミュレータ方法
CN111324948A (zh) 模拟方法及模拟系统
JPH06103104A (ja) リモートデバッグ方法
KR100241970B1 (ko) 파이프라인 처리를 수행하는 데이터 처리 장치
JPH10240568A (ja) エミュレータ装置およびエミュレーション方法
JP2008204023A (ja) プログラマブルコントローラシステム、プログラマブルコントローラのデバッグ方法
JPH1011315A (ja) インサーキットエミュレータ装置およびインサーキットエミュレーション方法
US11630757B1 (en) System and method for developing, testing and debugging software for microcontrollers
KR940007675A (ko) 데이타프로세서 및 이것을 사용하는 디버그장치
JP2915944B2 (ja) カバレージ測定方法及びマイクロコンピュータ
JP3716635B2 (ja) 情報処理装置、及びその割込み制御方法
JPH04268928A (ja) エミュレーション装置及び半導体装置
JP2666737B2 (ja) トレースメモリ内蔵マイクロプロセッサおよびトレース方法
JP2001222447A (ja) 実動作環境下のデバッグ方法及びデバッグ対象装置
KR100273280B1 (ko) 디버깅 로직 제어 회로