JP2704117B2 - シミュレータ - Google Patents

シミュレータ

Info

Publication number
JP2704117B2
JP2704117B2 JP6176365A JP17636594A JP2704117B2 JP 2704117 B2 JP2704117 B2 JP 2704117B2 JP 6176365 A JP6176365 A JP 6176365A JP 17636594 A JP17636594 A JP 17636594A JP 2704117 B2 JP2704117 B2 JP 2704117B2
Authority
JP
Japan
Prior art keywords
address
instruction
message
read
machine 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.)
Expired - Fee Related
Application number
JP6176365A
Other languages
English (en)
Other versions
JPH0844591A (ja
Inventor
伸一 武田
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 Communication Systems Ltd
Original Assignee
NEC Communication Systems 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 Communication Systems Ltd filed Critical NEC Communication Systems Ltd
Priority to JP6176365A priority Critical patent/JP2704117B2/ja
Publication of JPH0844591A publication Critical patent/JPH0844591A/ja
Application granted granted Critical
Publication of JP2704117B2 publication Critical patent/JP2704117B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明はシミュレータに関し、特
にデバッグの対象となるプログラムをシミュレーション
するシミュレータに関する。
【0002】
【従来の技術】従来のシミュレータは、デバッグの対象
となるプログラムの機械語命令を一命令読出してはシミ
ュレーションし、さらに次の一命令を読出しシミュレー
ションするというように、一命令ずつシミュレーション
していた。プログラムの中に分岐トレース情報や中断情
報等のメッセージの出力動作を記述する部分についても
プログラムの機械語命令を一命令ずつ読出しては逐次シ
ミュレーションしていた。
【0003】
【発明が解決しようとする課題】上述した従来のシミュ
レータは、デバッグの対象となるプログラム全体の機械
語命令を一命令ずつ読出してはシミュレーションしてい
くので、プログラムに含まれるメッセージの出力動作を
記述する部分についても他の部分と同様にシミュレーシ
ョンしていた。しかし、この部分をデバッグする必要が
ない場合には、それだけ余計にシミュレーション時間が
かかってしまうという欠点を有していた。
【0004】本発明の目的は、デバッグの対象となるプ
ログラムの中のメッセージの出力動作を記述する部分を
デバッグする必要がない場合はその部分のシミュレーシ
ョンを行わず、シミュレーション時間を短縮してデバッ
グ効率を上げることができるシミュレータを提供するこ
とにある。
【0005】
【課題を解決するための手段】第1の発明のシミュレー
タは、(A)デバッグの対象となる被テストプログラム
を格納する被テストプログラム格納手段、(B)アドレ
ス比較指示信号,第1の機械語命令読込指示信号,命令
実行禁止信号および第2の機械語命令読込指示信号を出
力し前記被テストプログラムのシミュレーションを制御
する第1のシミュレーション制御手段、(C)前記被テ
ストプログラムのメッセージ出力処理部分の先頭アドレ
スを登録するアドレス登録手段、(D)前記第1のシミ
ュレーション制御手段からシミュレーションが行われる
アドレスを受け取り格納する読込アドレス格納手段、
(E)前記アドレス比較指示信号を受け取り、前記読込
アドレス格納手段から読み出したアドレス値と前記アド
レス登録手段から受け取り内部にあらかじめ登録アドレ
スとして設定してある前記先頭アドレス値とを比較し、
一致したとき先頭アドレス検出信号を出力するアドレス
比較手段、(F)前記第1の機械語命令読込指示信号に
より、前記被テストプログラム格納手段に格納されてい
る被テストプログラムの機械語命令を一語ずつ読み込
み、前記シミュレーション制御手段が前記先頭アドレス
検出信号を受け取ったときは、先頭アドレス検出後に前
記被テストプログラム格納手段から最初に読み込む機械
語命令のアドレスとして前記第2の機械語命令読込指示
信号により指示されたアドレス格納手段からアドレスを
読み込み、前記アドレスに基づいて前記被テストプログ
ラム格納手段に格納されている機械語命令を読み込む第
1のプログラム読込制御手段、(G)前記第1のプログ
ラム読込制御手段により読み込まれた前記被テストプロ
グラムの機械語命令を解析し解析が終了したことを前記
第1のシミュレーション制御手段に報告し、前記解析終
了した機械語命令を実行し、前記機械語命令の解析およ
び実行の結果得られるメッセージ情報を出力し、前記先
頭アドレスの機械語命令を解析したときにはメッセージ
出力部分の最後のアドレスの次のアドレスを抽出してシ
ミュレータ再開アドレス情報として出力し、前記先頭ア
ドレス検出信号を受け取った前記第1のシミュレーショ
ン制御手段から命令実行禁止信号が送出されてきたとき
は前記解析終了した機械語命令を実行しない第1の命令
解析実行手段、(H)前記メッセージ情報を格納するメ
ッセージ格納手段、(I)前記メッセージ格納手段のメ
ッセージ情報が格納されているアドレス値と前記第1の
命令解析実行手段から受け取った前記シミュレータ再開
アドレス情報から得られる被テストプログラムのメッセ
ージ出力処理部分の最後のアドレス値の次のアドレス値
とを保持するアドレス情報レジスタ、(J)前記先頭ア
ドレス検出信号を受け取ったとき、前記メッセージ格納
手段のメッセージが格納されているアドレス値と前記被
テストプログラムのメッセージ出力処理部分の最後のア
ドレス値の次のアドレス値とを前記アドレス情報レジス
タから読出すレジスタ情報読出手段、(K)前記レジス
タ情報読出手段から前記メッセージ格納手段のメッセー
ジが格納されているアドレス値を受け取り前記メッセー
ジ格納手段からメッセージを読み出すメッセージ読出手
段、(L)前記メッセージ読出手段に読み出されたメッ
セージを出力するメッセージ出力手段、(M)前記第2
の機械語命令読込指示信号により指示されたアドレス格
納手段として、前記アドレス情報レジスタから読み出さ
れた前記被テストプログラムのメッセージ出力処理部分
の最後のアドレス値の次のアドレス値をセットするシミ
ュレーションアドレスレジスタ、を備えて構成されてい
る。
【0006】また、第2の発明のシミュレータは、
(A)デバッグ対象となる被テストプログラムを格納す
る被テストプログラム格納手段、(B)アドレス比較指
示信号,第1の機械語命令読込指示信号,命令実行禁止
信号,第2の機械語命令読込指示信号および第3の機械
語命令読込指示信号を出力し前記被テストプログラムの
シミュレーションを制御する第2のシミュレーション制
御手段、(C)前記被テストプログラムのメッセージ出
力処理部分の先頭アドレスを登録するアドレス登録手
段、(D)前記先頭アドレスの命令の中に特殊命令コー
ドを埋め込む特殊命令コード設定手段、(E)前記第2
のシミュレーション制御手段からシミュレーションが行
われるアドレスを受け取り格納する読込アドレス格納手
段、(F)前記アドレス比較指示信号を受け取り、前記
読込アドレス格納手段から読み出したアドレス値と前記
アドレス登録手段から受け取り内部にあらかじめ登録ア
ドレスとして設定してある前記先頭アドレス値とを比較
し、一致したとき先頭アドレス検出信号を出力するアド
レス比較手段、(G)前記第3の機械語命令読込指示信
号制御信号により、前記アドレス登録手段に登録された
先頭アドレスに格納されている機械語命令を読み込み前
記特殊命令コード設定手段に送出し、前記第1の機械語
命令読込指示信号により、前記被テストプログラム格納
手段に格納されている被テストプログラムの機械語命令
を一語ずつ読み込み、前記第2のシミュレーション制御
手段が前記先頭アドレス検出信号を受け取ったときは、
先頭アドレス検出後に前記被テストプログラム格納手段
から最初に読み込む機械語命令のアドレスとして前記第
2の機械語命令読込指示信号により指示されたアドレス
格納手段からアドレスを読み込み、前記アドレスに基づ
いて前記被テストプログラム格納手段に格納されている
機械語命令を読み込む第2のプログラム読込制御手段、
(H)前記第2のプログラム読込制御手段により読み込
まれた前記被テストプログラムの機械語命令を解析し解
析が終了したことを前記第2のシミュレーション制御手
段に報告し、前記解析が終了した機械語命令を実行し、
前記機械語命令の解析および実行の結果得られるメッセ
ージ情報を出力し、前記先頭アドレスの機械語命令を解
析したときにはメッセージ出力部分の最後のアドレスの
次のアドレスを抽出してシミュレータ再開アドレス情報
として出力し、解析の結果、読み込まれた前記被テスト
プログラムの機械語命令の中に前記特殊命令コードが埋
め込まれていたが検出されたとき、前記アドレス比較手
段を動作させるための前記アドレス比較指示信号を前記
第2のシミュレーション制御手段から出力させ、前記先
頭アドレス検出信号を受け取った前記第2のシミュレー
ション制御手段から命令実行禁止信号が送出されてきた
ときは前記解析終了した機械語命令を実行しない第2の
命令解析実行手段、(I)前記メッセージ情報を格納す
るメッセージ格納手段、(J)前記メッセージ格納手段
のメッセージが格納されているアドレス値と前記第2の
命令解析実行手段から受け取った前記シミュレータ再開
アドレス情報から得られる被テストプログラムのメッセ
ージ出力処理部分の最後のアドレス値の次のアドレス値
とを保持するアドレス情報レジスタ、(K)前記先頭ア
ドレス検出信号を受け取ったとき、前記メッセージ格納
手段のメッセージが格納されているアドレス値と前記被
テストプログラムのメッセージ出力処理部分の最後のア
ドレス値の次のアドレス値とを前記アドレス情報レジス
タから読出すレジスタ情報読出手段、(L)前記レジス
タ情報読出手段から前記メッセージ格納手段のメッセー
ジが格納されているアドレス値を受け取り前記メッセー
ジ格納手段からメッセージを読み出すメッセージ読出手
段、(M)前記メッセージ読出手段に読み出されたメッ
セージを出力するメッセージ出力手段、(N)前記第2
の機械語命令読込指示信号により指示されたアドレス格
納手段として、前記アドレス情報レジスタから読み出さ
れた前記被テストプログラムのメッセージ出力処理部分
の最後のアドレス値の次のアドレス値をセットするシミ
ュレーションアドレスレジスタ、を備えて構成されてい
る。
【0007】
【実施例】次に、本発明の実施例について図面を参照し
て説明する。
【0008】図1は、本発明のシミュレータの第1の実
施例を示すブロック図である。
【0009】図1に示す実施例のシミュレータは、デバ
ッグ対象となる被テストプログラムを格納する被テスト
プログラム格納手段1、被テストプログラムのシミュレ
ーションを制御するシミュレーション制御手段2a、被
テストプログラムのメッセージ出力処理部分の先頭アド
レス(以下先頭アドレスという)の値を登録するアドレ
ス登録手段3、シミュレーションが行われているアドレ
スを示すアドレス値を格納する読込アドレス格納手段
4、読込アドレス格納手段4から読み出したアドレス値
とアドレス登録手段3に登録された先頭アドレス値とを
比較し一致したとき、先頭アドレス検出信号を出力する
アドレス比較手段5、被テストプログラム格納手段1に
格納されている被テストプログラムの機械語命令を読み
込むプログラム読込制御手段6a、読み込まれた被テス
トプログラムの機械語命令を解析し実行する命令解析実
行手段7a、メッセージが格納されるメッセージ格納手
段8、メッセージ格納手段8のメッセージが格納されて
いるアドレス値及び被テストプログラムのメッセージ出
力処理部分の最後のアドレス値の次のアドレス値を保持
するアドレス情報レジスタ9、メッセージ格納手段8の
メッセージが格納されているアドレス値と被テストプロ
グラムのメッセージ出力処理部分の最後のアドレス値の
次のアドレス値とをアドレス情報レジスタ9から読出す
レジスタ情報読出手段10、メッセージ格納手段8から
メッセージを読み出すメッセージ読出手段11、メッセ
ージ読出手段11に読み出されたメッセージを出力する
メッセージ出力手段12、アドレス情報レジスタ9から
読み出した被テストプログラムのメッセージ出力処理部
分の最後のアドレス値の次のアドレス値をセットするシ
ミュレーションアドレスレジスタ13から構成されてい
る。
【0010】次に、動作を説明する。
【0011】図1において、被テストプログラム格納手
段1に格納されているデバッグの対象となる被テストプ
ログラムのシミュレーションを開始するまえに、オペレ
ータ(図示せず)がシミュレーションコンソール(図示
せず)からアドレス登録手段3に、被テストプログラム
の中のメッセージ出力動作を記述する部分、すなわち被
テストプログラムのメッセージ出力処理部分の先頭アド
レス値を登録する。アドレス登録手段3はシミュレーシ
ョン制御手段2にアドレス登録終了信号を送出する。登
録された先頭アドレス値は、アドレス登録手段2からア
ドレス比較手段5に送出されアドレス比較手段5の内部
にあらかじめ登録アドレスとして設定される。
【0012】次に、シミュレーションが開始されると、
シミュレーション制御手段2aから機械語命令読込指示
信号101がプログラム読込制御手段6aに送出され、
機械語命令読込指示信号101を受けたプログラム読込
制御手段6aは、被テストプログラム格納手段1に格納
されているデバッグの対象となる被テストプログラムの
機械語命令を一語読み込み命令解析実行手段7aに送出
する。命令解析実行手段7aは、プログラム読込制御手
段6aから受け取った被テストプログラムの機械語命令
の一語を解析しその機械語命令の解析が終了すると、命
令解析終了信号102をシミュレーション制御手段2a
に送出して機械語命令の解析が終了したことを報告す
る。次に、命令解析実行手段7aは解析した機械語命令
を実行する。命令解析実行手段7aはその機械語命令の
実行が終了すると、命令実行終了信号103をシミュレ
ーション制御手段2aに送出して機械語命令の実行が終
了したことを報告する。一方、命令解析実行手段7aは
機械語命令の解析および実行の結果得られるメッセージ
情報を出力しメッセージ格納手段8に格納するととも
に、メッセージ情報を格納したメッセージ格納手段8の
アドレス情報をアドレス情報レジスタ9に出力する。さ
らに、命令解析実行手段7aは、先頭アドレスの機械語
命令を解析したときに、メッセージ出力部分の最後のア
ドレスの次のアドレスを抽出してシミュレータ再開アド
レス情報としてアドレス情報レジスタ9に出力する。
【0013】また、命令実行終了信号103を受けたシ
ミュレーション制御手段2aは次の機械語命令読込指示
信号101をプログラム読込制御手段6aに送出する。
シミュレーション制御手段2aから機械語命令読込指示
信号101を受け取るごとに、機械語命令読込指示信号
101が示すアドレスに従って、プログラム読込制御手
段6aは被テストプログラムの次の機械語命令を一語読
み込んで命令解析実行手段7aに送出する。また、命令
解析実行手段7aは機械語命令をプログラム読込制御手
段6aから受け取るごとにその機械語命令を解析し実行
して、シミュレーション制御手段2aに命令解析終了信
号102および命令実行終了信号103を送出する。こ
のようにしてシミュレーション動作が進んでいく。
【0014】上記のシミュレーション動作が進んでいく
中で、シミュレーション制御手段2aは命令解析終了信
号102を受け取ると、次に実行される機械語命令のア
ドレス値を読込アドレス格納手段4に送出する。読込ア
ドレス格納手段4がそれまで格納していたアドレス値
は、シミュレーション制御手段2aから新たに受け取っ
た最新のアドレスに置き換えられる。また、シミュレー
ション制御手段2aは次に実行される機械語命令のアド
レス値を読込アドレス格納手段4に送出すると同時に、
アドレス比較手段5に対して、既に登録された先頭アド
レス値と読込アドレス格納手段4に格納されている次に
実行される機械語命令のアドレス値とを比較させるため
にアドレス比較指示信号104を送出する。アドレス比
較手段5は、アドレス比較指示信号104を受け取ると
先頭アドレス値と読込アドレス格納手段4に格納されて
いる次に実行される機械語命令のアドレス値とを比較
し、一致したとき、すなわち先頭アドレスが検出された
とき、シミュレーション制御手段2aおよびレジスタ情
報読出手段10に先頭アドレス検出信号105,106
を送出する。シミュレーション制御手段2aは、命令解
析実行手段7aに命令実行禁止信号107を送出し、命
令解析実行手段7aが先に解析した機械語命令を実行し
ないように指示する。また、レジスタ情報読出手段10
は、アドレス情報レジスタ9からメッセージ格納手段8
のメッセージが格納されているアドレスと、被テストプ
ログラムのメッセージ出力処理部分の最後のアドレスの
次のアドレスとを読み出す。レジスタ情報読出手段10
は、アドレス情報レジスタ9から読み出したメッセージ
格納手段8のメッセージが格納されているアドレスをメ
ッセージ読出手段11に送出する。メッセージ読出手段
11はメッセージ格納手段8からメッセージを読み出
し、メッセージ出力手段12に出力する。メッセージ出
力手段12によりメッセージが出力される。メッセージ
出力手段12はメッセージを出力した後、シミュレーシ
ョン制御手段2aにメッセージ出力完了信号108を送
出する。
【0015】また、レジスタ情報読出手段10は、アド
レス情報レジスタ9から読出した被テストプログラムの
メッセージ出力処理部分の最後のアドレスの次のアドレ
スをシミュレーションアドレスレジスタ13にセットす
る。シミュレーション制御手段2aは、メッセージ出力
手段12からメッセージ出力完了信号108を受け取る
と、プログラム読込制御手段6に対して、まずシミュレ
ーションアドレスレジスタ13にセットされたアドレス
を読み込み被テストプログラム格納手段1のそのアドレ
スから機械語命令の読み出しを再開するための機械語命
令読込指示信号109を送出する。プログラム読込制御
手段6は、機械語命令読込指示信号109を受け取ると
シミュレーションアドレスレジスタ13にセットされた
アドレスを読み込み、被テストプログラム格納手段1の
そのアドレスから機械語命令を読み込み命令解析実行手
段7aに送出する。命令解析実行手段7aは、その機械
語命令を解析し実行することにより、シミュレーション
を再開する。
【0016】このようにして、被テストプログラムのメ
ッセージ出力処理部分のシミュレーションを行わずに、
メッセージを出力することができる。
【0017】次に、本発明の第2の実施例について図面
を参照して説明する。
【0018】図2は、本発明のシミュレータの第2の実
施例を示すブロック図である。
【0019】図2に示す実施例のシミュレータは、デバ
ッグ対象となる被テストプログラムを格納する被テスト
プログラム格納手段1、被テストプログラムのシミュレ
ーションを制御するシミュレーション制御手段2b、被
テストプログラムのメッセージ出力部分の先頭アドレス
の値を登録するアドレス登録手段3、先頭アドレスの命
令の中に特殊命令コードを埋め込む特殊命令コード設定
手段14、シミュレーションが行われているアドレスを
示すアドレス値を格納する読込アドレス格納手段4、読
込アドレス格納手段4から読み出したアドレス値とアド
レス登録手段3に登録された先頭アドレス値とを比較し
一致したとき、先頭アドレス検出信号を出力するアドレ
ス比較手段5、被テストプログラム格納手段1に格納さ
れている被テストプログラムの機械語命令を読み込むプ
ログラム読込制御手段6b、読み込まれた被テストプロ
グラムの機械語命令を解析し実行する命令解析実行手段
7b、メッセージが格納されるメッセージ格納手段8、
メッセージ格納手段8のメッセージが格納されているア
ドレス値及び被テストプログラムのメッセージ出力処理
部分の最後のアドレス値の次のアドレス値を保持するア
ドレス情報レジスタ9、メッセージ格納手段8のメッセ
ージが格納されているアドレス値と被テストプログラム
のメッセージ出力処理部分の最後のアドレス値の次のア
ドレス値とをアドレス情報レジスタ9から読出すレジス
タ情報読出手段10、メッセージ格納手段8からメッセ
ージを読み出すメッセージ読出手段11、メッセージ読
出手段11に読み出されたメッセージを出力するメッセ
ージ出力手段12、アドレス情報レジスタ9から読み出
した被テストプログラムのメッセージ出力処理部分の最
後のアドレス値の次のアドレス値をセットするシミュレ
ーションアドレスレジスタ13から構成されている。
【0020】次に、動作を説明する。
【0021】図2において、被テストプログラムのメッ
セージ出力部分の先頭アドレス値をアドレス登録手段3
により登録し、アドレス比較手段5の内部にあらかじめ
設定する動作は、図1に示される第1の実施例の場合と
同様である。本実施例の場合は、さらにシミュレーショ
ン動作に入る前段階の動作として、特殊命令コード設定
の動作が行われる。
【0022】まず、アドレス登録手段3による上記先頭
アドレスの登録が終了したとき、アドレス登録手段3は
シミュレーション制御手段2bにアドレス登録終了信号
を送出する。シミュレーション制御手段2bは、プログ
ラム読込制御手段6bに機械語命令読込指示信号101
を送出する。プログラム読込制御手段6bは、アドレス
登録終了信号が示す被テストプログラムのメッセージ出
力部分の先頭アドレスに格納されている機械語命令を読
み込み、特殊命令コード設定手段14に送出する。特殊
命令コード設定手段14は、被テストプログラムでは使
用されていない特殊命令コードを上記先頭アドレスの機
械語命令の中に埋め込む。特殊命令コードを埋め込まれ
た先頭アドレスの機械語命令は、特殊命令コード設定手
段14から被テストプログラム格納手段1の元のアドレ
スに格納され、特殊命令コード設定完了信号が特殊命令
コード設定手段14からシミュレーション制御手段2b
へ送出され特殊命令コード設定の動作が完了する。
【0023】次に、シミュレーションが開始された後の
動作でも、シミュレーション制御手段2bからの機械語
命令読み込み信号により、プログラム読込制御手段6b
が、被テストプログラム格納手段1に格納されているデ
バッグの対象となる被テストプログラムの機械語命令を
読み込み命令解析実行手段7bに送出し、命令解析実行
手段7bが、その機械語命令を解析し実行していく過程
の動作は第1の実施例の場合と同じである。また、上記
のシミュレーション動作が進んでいく中で、次に実行さ
れる機械語命令のアドレス値がシミュレーション制御手
段2bから読込アドレス格納手段4に送出され格納され
る動作も同じである。
【0024】しかし、本実施例の場合は、シミュレーシ
ョン制御手段2bが次に実行される機械語命令のアドレ
ス値を読込アドレス格納手段4に送出したとき、アドレ
ス比較手段5に対しては、先頭アドレス値と読込アドレ
ス格納手段4に格納されているアドレス値とを比較させ
るためにアドレス比較指示信号を送出しない。アドレス
比較手段5が比較動作を行うのは、命令解析実行手段7
bで機械後命令の解析が行われ、機械語命令の中に埋め
込まれた特殊命令コードが検出されたときである。この
とき、命令解析実行手段7bは、シミュレーション制御
手段2bに先頭アドレス検出信号110を送出する。先
頭アドレス検出信号110を受け取ったシミュレーショ
ン制御手段2bは、アドレス比較手段5にアドレス比較
指示信号104を送出する。アドレス比較手段5は、先
頭アドレス値と読込アドレス格納手段4に格納されてい
る次に実行される機械語命令のアドレス値とを比較し、
一致したとき、すなわち先頭アドレスが検出されたと
き、シミュレーション制御手段2bおよびレジスタ情報
読出手段10に先頭アドレス検出信号105,106を
送出する。この後の動作は、第1の実施例の動作の場合
と同じである。
【0025】第1の実施例の動作と上記第2の実施例の
動作の違いは、第1の実施例の場合が、先頭アドレスを
検出するまで、最初から逐一機械語命令のアドレスをア
ドレス比較手段5で比較していくのに対して、第2の実
施例の場合は、先頭アドレスと思われるアドレスを特殊
命令コードを利用してまず検出し、次にアドレス比較手
段5を動作させて、そのアドレスとあらかじめ登録して
おいた先頭アドレスとを比較し検出するようにしている
点である。第2の実施例の場合は、アドレス比較手段で
比較していく回数が少なくなるので、第1の実施例の場
合よりもよりシミュレーションを高速にすることができ
る。
【0026】
【発明の効果】以上説明したように、本発明のシミュレ
ータは、プログラムの中のメッセージ出力動作を記述す
る部分のシミュレーションが必要ない場合はその部分を
シミュレーションを行わず、シミュレータがプログラム
に代って必要なメッセージを出力するようにすることに
より、シミュレーション時間を短縮してデバッグ効率を
上げることができるという効果を有している。
【図面の簡単な説明】
【図1】本発明のシミュレータの第1の実施例を示すブ
ロック図である。
【図2】本発明のシミュレータの第2の実施例を示すブ
ロック図である。
【符号の説明】
1 被テストプログラム格納手段 2a,b シミュレーション制御手段 3 アドレス登録手段 4 読込アドレス格納手段 5 アドレス比較手段 6a,b プログラム読込制御手段 7a,b 命令解析実行手段 8 メッセージ格納手段 9 アドレス情報レジスタ 10 レジスタ情報読出手段 11 メッセージ読出手段 12 メッセージ出力手段 13 シミュレーションアドレスレジスタ 14 特殊命令コード設定手段

Claims (2)

    (57)【特許請求の範囲】
  1. 【請求項1】(A)デバッグの対象となる被テストプロ
    グラムを格納する被テストプログラム格納手段、(B)
    アドレス比較指示信号,第1の機械語命令読込指示信
    号,命令実行禁止信号および第2の機械語命令読込指示
    信号を出力し前記被テストプログラムのシミュレーショ
    ンを制御する第1のシミュレーション制御手段、(C)
    前記被テストプログラムのメッセージ出力処理部分の先
    頭アドレスを登録するアドレス登録手段、(D)前記第
    1のシミュレーション制御手段からシミュレーションが
    行われるアドレスを受け取り格納する読込アドレス格納
    手段、(E)前記アドレス比較指示信号を受け取り、前
    記読込アドレス格納手段から読み出したアドレス値と前
    記アドレス登録手段から受け取り内部にあらかじめ登録
    アドレスとして設定してある前記先頭アドレス値とを比
    較し、一致したとき先頭アドレス検出信号を出力するア
    ドレス比較手段、(F)前記第1の機械語命令読込指示
    信号により、前記被テストプログラム格納手段に格納さ
    れている被テストプログラムの機械語命令を一語ずつ読
    み込み、前記シミュレーション制御手段が前記先頭アド
    レス検出信号を受け取ったときは、先頭アドレス検出後
    に前記被テストプログラム格納手段から最初に読み込む
    機械語命令のアドレスとして前記第2の機械語命令読込
    指示信号により指示されたアドレス格納手段からアドレ
    スを読み込み、前記アドレスに基づいて前記被テストプ
    ログラム格納手段に格納されている機械語命令を読み込
    む第1のプログラム読込制御手段、(G)前記第1のプ
    ログラム読込制御手段により読み込まれた前記被テスト
    プログラムの機械語命令を解析し解析が終了したことを
    前記第1のシミュレーション制御手段に報告し、前記解
    析終了した機械語命令を実行し、前記機械語命令の解析
    および実行の結果得られるメッセージ情報を出力し、前
    記先頭アドレスの機械語命令を解析したときにはメッセ
    ージ出力部分の最後のアドレスの次のアドレスを抽出し
    てシミュレータ再開アドレス情報として出力し、前記先
    頭アドレス検出信号を受け取った前記第1のシミュレー
    ション制御手段から命令実行禁止信号が送出されてきた
    ときは前記解析終了した機械語命令を実行しない第1の
    命令解析実行手段、(H)前記メッセージ情報を格納す
    るメッセージ格納手段、(I)前記メッセージ格納手段
    のメッセージ情報が格納されているアドレス値と前記第
    1の命令解析実行手段から受け取った前記シミュレータ
    再開アドレス情報から得られる被テストプログラムのメ
    ッセージ出力処理部分の最後のアドレス値の次のアドレ
    ス値とを保持するアドレス情報レジスタ、(J)前記先
    頭アドレス検出信号を受け取ったとき、前記メッセージ
    格納手段のメッセージが格納されているアドレス値と前
    記被テストプログラムのメッセージ出力処理部分の最後
    のアドレス値の次のアドレス値とを前記アドレス情報レ
    ジスタから読出すレジスタ情報読出手段、(K)前記レ
    ジスタ情報読出手段から前記メッセージ格納手段のメッ
    セージが格納されているアドレス値を受け取り前記メッ
    セージ格納手段からメッセージを読み出すメッセージ読
    出手段、(L)前記メッセージ読出手段に読み出された
    メッセージを出力するメッセージ出力手段、(M)前記
    第2の機械語命令読込指示信号により指示されたアドレ
    ス格納手段として、前記アドレス情報レジスタから読み
    出された前記被テストプログラムのメッセージ出力処理
    部分の最後のアドレス値の次のアドレス値をセットする
    シミュレーションアドレスレジスタ、を備えたことを特
    徴とするシミュレータ。
  2. 【請求項2】(A)デバッグ対象となる被テストプログ
    ラムを格納する被テストプログラム格納手段、(B)ア
    ドレス比較指示信号,第1の機械語命令読込指示信号,
    命令実行禁止信号,第2の機械語命令読込指示信号およ
    び第3の機械語命令読込指示信号を出力し前記被テスト
    プログラムのシミュレーションを制御する第2のシミュ
    レーション制御手段、(C)前記被テストプログラムの
    メッセージ出力処理部分の先頭アドレスを登録するアド
    レス登録手段、(D)前記先頭アドレスの命令の中に特
    殊命令コードを埋め込む特殊命令コード設定手段、
    (E)前記第2のシミュレーション制御手段からシミュ
    レーションが行われるアドレスを受け取り格納する読込
    アドレス格納手段、(F)前記アドレス比較指示信号を
    受け取り、前記読込アドレス格納手段から読み出したア
    ドレス値と前記アドレス登録手段から受け取り内部にあ
    らかじめ登録アドレスとして設定してある前記先頭アド
    レス値とを比較し、一致したとき先頭アドレス検出信号
    を出力するアドレス比較手段、(G)前記第3の機械語
    命令読込指示信号制御信号により、前記アドレス登録手
    段に登録された先頭アドレスに格納されている機械語命
    令を読み込み前記特殊命令コード設定手段に送出し、前
    記第1の機械語命令読込指示信号により、前記被テスト
    プログラム格納手段に格納されている被テストプログラ
    ムの機械語命令を一語ずつ読み込み、前記第2のシミュ
    レーション制御手段が前記先頭アドレス検出信号を受け
    取ったときは、先頭アドレス検出後に前記被テストプロ
    グラム格納手段から最初に読み込む機械語命令のアドレ
    スとして前記第2の機械語命令読込指示信号により指示
    されたアドレス格納手段からアドレスを読み込み、前記
    アドレスに基づいて前記被テストプログラム格納手段に
    格納されている機械語命令を読み込む第2のプログラム
    読込制御手段、(H)前記第2のプログラム読込制御手
    段により読み込まれた前記被テストプログラムの機械語
    命令を解析し解析が終了したことを前記第2のシミュレ
    ーション制御手段に報告し、前記解析が終了した機械語
    命令を実行し、前記機械語命令の解析および実行の結果
    得られるメッセージ情報を出力し、前記先頭アドレスの
    機械語命令を解析したときにはメッセージ出力部分の最
    後のアドレスの次のアドレスを抽出してシミュレータ再
    開アドレス情報として出力し、解析の結果、読み込まれ
    た前記被テストプログラムの機械語命令の中に前記特殊
    命令コードが埋め込まれていたが検出されたとき、前記
    アドレス比較手段を動作させるための前記アドレス比較
    指示信号を前記第2のシミュレーション制御手段から出
    力させ、前記先頭アドレス検出信号を受け取った前記第
    2のシミュレーション制御手段から命令実行禁止信号が
    送出されてきたときは前記解析終了した機械語命令を実
    行しない第2の命令解析実行手段、(I)前記メッセー
    ジ情報を格納するメッセージ格納手段、(J)前記メッ
    セージ格納手段のメッセージが格納されているアドレス
    値と前記第2の命令解析実行手段から受け取った前記シ
    ミュレータ再開アドレス情報から得られる被テストプロ
    グラムのメッセージ出力処理部分の最後のアドレス値の
    次のアドレス値とを保持するアドレス情報レジスタ、
    (K)前記先頭アドレス検出信号を受け取ったとき、前
    記メッセージ格納手段のメッセージが格納されているア
    ドレス値と前記被テストプログラムのメッセージ出力処
    理部分の最後のアドレス値の次のアドレス値とを前記ア
    ドレス情報レジスタから読出すレジスタ情報読出手段、
    (L)前記レジスタ情報読出手段から前記メッセージ格
    納手段のメッセージが格納されているアドレス値を受け
    取り前記メッセージ格納手段からメッセージを読み出す
    メッセージ読出手段、(M)前記メッセージ読出手段に
    読み出されたメッセージを出力するメッセージ出力手
    段、(N)前記第2の機械語命令読込指示信号により指
    示されたアドレス格納手段として、前記アドレス情報レ
    ジスタから読み出された前記被テストプログラムのメッ
    セージ出力処理部分の最後のアドレス値の次のアドレス
    値をセットするシミュレーションアドレスレジスタ、を
    備えたことを特徴とするシミュレータ。
JP6176365A 1994-07-28 1994-07-28 シミュレータ Expired - Fee Related JP2704117B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP6176365A JP2704117B2 (ja) 1994-07-28 1994-07-28 シミュレータ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP6176365A JP2704117B2 (ja) 1994-07-28 1994-07-28 シミュレータ

Publications (2)

Publication Number Publication Date
JPH0844591A JPH0844591A (ja) 1996-02-16
JP2704117B2 true JP2704117B2 (ja) 1998-01-26

Family

ID=16012350

Family Applications (1)

Application Number Title Priority Date Filing Date
JP6176365A Expired - Fee Related JP2704117B2 (ja) 1994-07-28 1994-07-28 シミュレータ

Country Status (1)

Country Link
JP (1) JP2704117B2 (ja)

Also Published As

Publication number Publication date
JPH0844591A (ja) 1996-02-16

Similar Documents

Publication Publication Date Title
JPH08272648A (ja) デバッグコマンドファイルを自動的に生成する方法、およびデバッグコマンドファイルにおいてブレークポイントを自動的に再生成する装置
JP2704117B2 (ja) シミュレータ
JPH06282599A (ja) 論理検証方法および装置
JP2007004516A (ja) 組込みシステムのプログラムデバッグ方法
JP3846540B2 (ja) Plc用制御プログラムの実行シミュレーション装置、並びに、制御プログラム実行シミュレーション機能を有するplc
KR101918051B1 (ko) Epoch 기반의 시뮬레이션 방법
JPS6123248A (ja) デ−タ処理装置試験方式
JPH02220145A (ja) プログラムトレース方式
JP2570119B2 (ja) ソフトウェアシミュレータ
JP2001051864A (ja) データ処理装置の試験実行方式
JP3099810B2 (ja) 論理シミュレーション装置及びそれに用いる論理検証の高速化手法並びにその制御プログラムを記録した記録媒体
JPS59202548A (ja) デバツグ装置
JPS61290543A (ja) エラ−発生装置
JP2006350676A (ja) 組込みシステムのプログラムデバッグ方法
JPH07319730A (ja) テスト・デバッグ方法
JPH01292445A (ja) ファームウェアデバッグ方式
JPH0567164A (ja) 論理シミユレーシヨン方式
JPH05204680A (ja) 情報処理装置の誤動作防止方式
JP2001022610A (ja) データ処理装置の論理シミュレーション方式
JPH07168609A (ja) シーケンスプログラムのデバッグ方法
JPH01211134A (ja) プログラムデバッグ方式
JPH06231000A (ja) データ処理装置の試験方法
JPH0659931A (ja) デバッグ装置
JPH09185525A (ja) プロトコルデバッグ方式
JPH0581076A (ja) ソフトウエアシミユレータにおける障害シミユレーシヨン方式

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19970909

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees