JPH1139186A - デバッグ支援装置およびダウンロード方法 - Google Patents

デバッグ支援装置およびダウンロード方法

Info

Publication number
JPH1139186A
JPH1139186A JP9192657A JP19265797A JPH1139186A JP H1139186 A JPH1139186 A JP H1139186A JP 9192657 A JP9192657 A JP 9192657A JP 19265797 A JP19265797 A JP 19265797A JP H1139186 A JPH1139186 A JP H1139186A
Authority
JP
Japan
Prior art keywords
memory
program
host computer
debugged
support device
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
JP9192657A
Other languages
English (en)
Inventor
Shoji Nagata
昭二 永田
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.)
Panasonic Holdings Corp
Original Assignee
Matsushita Electric Industrial 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 Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Priority to JP9192657A priority Critical patent/JPH1139186A/ja
Publication of JPH1139186A publication Critical patent/JPH1139186A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】 【課題】 エミュレーション機能を有するデバッグ支援
装置を用いたユーザープログラムのデバッグにおいて、
ターゲット基板へのユーザープログラムのダウンロード
時間を短縮する 【解決手段】 デバッグ支援装置としてのエミュレータ
カード10は、ホストコンピュータ30とターゲット基
板20との間のデータ転送のバッファとなるバッファメ
モリ16を備えている。バッファメモリ16は、一方へ
のホストコンピュータ30からのアクセスと他方へのエ
ミュレーションチップ11からのアクセスとが並列に実
行可能な2つのメモリバンク16a,16bを備えてい
る。ダウンロードの際には、ホストコンピュータ30か
らバッファメモリ16への転送とバッファメモリ16か
らターゲット基板20への転送とを並列に繰り返し行
う。これにより、ダウンロードの際にホストコンピュー
タ30やエミュレータチップ11の待ち状態がなくな
り、従来よりも高速なダウンロードを実現することがで
きる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ターゲット基板に
おけるユーザープログラムの動作をエミュレートし、ユ
ーザープログラムのデバッグを支援するデバッグ支援装
置に関するものであり、特に、ユーザープログラムのタ
ーゲット基板へのダウンロード時間を短縮する技術に関
する。
【0002】
【従来の技術】従来のデバッグ支援装置において、特に
インサーキットエミュレータ(以後エミュレータと称
す)と呼ばれる装置は、少なくとも、被デバッグプログ
ラム(ユーザープログラム)のロードから、メモリやC
PUレジスタの読み書き、プログラム実行及び停止、実
行時間測定や実行軌跡のトレース採取、イベント監視と
いったプログラムデバッグのため必要な機能を備えてお
り、マイコンのアプリケーション開発において広く用い
られる装置である。
【0003】
【発明が解決しようとする課題】従来のエミュレータで
は、ホストコンピュータからターゲット基板へのユーザ
ープログラムのダウンロードに時間がかかりすぎるとい
う問題があった。
【0004】従来のユーザープログラムのダウンロード
は、単純化して説明すると、まず、ホストコンピュータ
の例えばディスク装置内に格納されたユーザープログラ
ムのコードをエミュレータのモニタメモリに読み込み、
その後、エミュレータのエミュレータチップがモニタプ
ログラムに従って、モニタメモリに格納されたユーザー
プログラムをターゲット基板に転送するという手順を採
っていた。実際には、ユーザープログラムのサイズはモ
ニタメモリのバッファサイズよりも大きいことが多いの
で、ユーザープログラムはモニタメモリのバッファサイ
ズを単位として分割され、前記のような手順の繰り返し
によって、ユーザープログラムの全てのコードをターゲ
ット基板に転送する。
【0005】このとき、ホスト・ターゲット間のハンド
シェーク制御すなわちバッファサイズ単位の転送の順序
性確保を行うべく、ホストコンピュータがモニタメモリ
へユーザープログラムの書き込みを行う間はエミュレー
ションチップはアイドルループを行いながらその書き込
みの完了を待つ一方、エミュレーションチップがモニタ
メモリからユーザープログラムの読み出しを行う間はホ
ストコンピュータはアイドルループを行いながらその読
み出しの完了を待つ。
【0006】しかしながら、ホストコンピュータおよび
エミュレーションチップが互いの動作をアイドルループ
しながら待つため、ダウンロードにおけるホストコンピ
ュータおよびエミュレーションチップの動作効率が悪
く、結果として長いダウンロード時間を要していた。
【0007】このダウンロード時間の問題は、近年、デ
バッグ対象のアプリケーションプログラムの規模の増大
傾向、ならびに開発期間の短縮傾向に伴い大きな問題と
なってきており、デバッグ支援システムにおいてユーザ
ープログラムのダウンロード時間を短縮することは、重
要な課題となっている。
【0008】前記のような問題に鑑み、本発明は、ター
ゲット基板におけるユーザープログラムの動作をエミュ
レーションするデバッグ支援装置を用いたユーザープロ
グラムのデバッグにおいて、ターゲット基板へのユーザ
ープログラムのダウンロード時間を短縮することを目的
とする。
【0009】
【課題を解決するための手段】前記の課題を解決するた
め、請求項1の発明が講じた手段は、ターゲット基板と
接続され、このターゲット基板における被デバッグプロ
グラムの動作をホストコンピュータの制御によりエミュ
レーションし、被デバッグプログラムのデバッグを支援
するデバッグ支援装置として、ターゲット基板に搭載さ
れるCPUの代わりに被デバッグプログラムを実行する
エミュレーションチップと、ホストコンピュータとター
ゲット基板との間のデータ転送のバッファとなるバッフ
ァメモリとを備え、前記バッファメモリは、ホストコン
ピュータからのアクセスとエミュレーションチップから
のアクセスとを並列に実行可能に構成されているもので
ある。
【0010】請求項1の発明によると、バッファメモリ
は、ホストコンピュータからのアクセスとエミュレーシ
ョンチップからのアクセスとを並列に実行可能に構成さ
れているので、被デバッグプログラムのダウンロードな
どのホストコンピュータとターゲット基板との間のデー
タ転送において、ホストコンピュータとバッファメモリ
との間の転送と、エミュレーションチップによって制御
されるバッファメモリとターゲット基板との間の転送と
が、並列に実行することができる。このため、ホストコ
ンピュータおよびエミュレーションチップは、データ転
送過程において実行待ちをする必要がなくなり、これに
より、ダウンロード時間を大幅に短縮することができ
る。
【0011】そして、請求項2の発明では、前記請求項
1のデバッグ支援装置におけるバッファメモリは、複数
のメモリバンクによって構成されており、一のメモリバ
ンクへのホストコンピュータからのアクセスと他のメモ
リバンクへのエミュレーションチップからのアクセスと
が並列に実行可能であるものとする。
【0012】また、請求項3の発明では、前記請求項1
のデバッグ支援装置におけるバッファメモリは、単一の
メモリバンクを領域分割して構成されており、一のメモ
リ領域へのホストコンピュータからのアクセスと、他の
メモリ領域へのエミュレーションチップからのアクセス
とが並列に実行可能であるものとする。
【0013】また、請求項4の発明が講じた解決手段
は、ターゲット基板における被デバッグプログラムの動
作をホストコンピュータの制御によりエミュレーション
するデバッグ支援装置を用いて被デバッグプログラムの
デバッグを行う際に、被デバッグプログラムをターゲッ
ト基板に転送するダウンロード方法として、前記デバッ
グ支援装置は、ターゲット基板に搭載されるCPUの代
わりに被デバッグプログラムを実行するエミュレーショ
ンチップと、ホストコンピュータからのアクセスとエミ
ュレーションチップからのアクセスとを並列に実行可能
に構成されたバッファメモリとを有し、かつ、被デバッ
グプログラムの一部を、ホストコンピュータから前記バ
ッファメモリに転送する工程と、前記バッファメモリに
格納された被デバッグプログラムの一部を、エミュレー
ションチップの制御によりターゲット基板に転送する工
程とを並列に繰り返し行いながら、被デバッグプログラ
ムを転送するものである。
【0014】請求項4の発明によると、ホストコンピュ
ータおよびエミュレーションチップが実行待ちをするこ
となく、被デバッグプログラムのダウンロードを行うこ
とができ、これにより、ダウンロード時間を大幅に短縮
することができる。
【0015】
【発明の実施の形態】以下、本発明の実施の形態につい
て、図面を参照して説明する。
【0016】図1は本発明の一実施形態に係るデバッグ
支援装置を含む全体構成を示す図である。図1におい
て、10はデバッグ支援装置としてのエミュレータカー
ド、20はデバッグの対象となるユーザープログラム
(被デバッグプログラム)が動作するターゲット基板、
30はエミュレータカード10のエミュレーション動作
を制御するホストコンピュータである。エミュレータカ
ード10はエミュレーションチップ11、モニタメモリ
12、エミュレーションメモリ13およびトレースメモ
リ14を備えており、ターゲット基板20はマイコン2
1、ターゲットメモリ22およびユーザ回路23を備え
ている。エミュレータカード10はターゲット基板20
と接続されて用いられ、デバッグの際にはエミュレーシ
ョンチップ11がターゲット基板20のマイコン21の
代わりにユーザープログラムを実行する。モニタメモリ
12は、エミュレータチップ11によって実行されるモ
ニタプログラム及びこのモニタプログラムの実行に用い
るデータを格納する。エミュレーションメモリ13は、
ターゲット基板20が未完成のときでもアプリケーショ
ンのデバッグが可能になるよう、ターゲットメモリ22
を代替する。
【0017】モニタプログラムは、エミュレータチップ
11のレジスタやメモリの読み書きやユーザープログラ
ムの実行及び停止などのデバッグ機能の最もプリミティ
ブな機能を備え、ホストコンピュータ上のデバッガソフ
トウェアと連係して動作するものであり、デバッガソフ
トウェアはモニタプログラムとの通信機能、およびエミ
ュレータカード10が備えるその他の機能(実行時間測
定や実行軌跡のトレース、イベント監視機能等)を用い
ることにより高水準の(例えばシンボリックデバッグ機
能やCソースレベルデバッグ機能、プロファイル機能
等)デバッグ機能を提供するものである。
【0018】図2は本発明の一実施形態に係るデバッグ
支援装置において、ユーザープログラムのダウンロード
動作に係わる構成の概略を示すブロック図である。ここ
で、モニタメモリ12はモニタプログラムが格納される
と共にホストコンピュータ上のデバッガソフトウエアと
通信を行うため必要なバッファ領域を備えており、いわ
ゆるバッファメモリとしての機能を有している。図2に
おいて、モニタメモリ12は、バッファメモリ16とし
て、第1のメモリバンク16aおよび第2のメモリバン
ク16bを備えている。エミュレータカード10は、ホ
ストインターフェース11を介して接続されたホストコ
ンピュータ30で動作するデバッガソフトウエアによる
リード及びライト動作に従って、全体が制御される。
【0019】ホストコンピュータ30からターゲットメ
モリ22に被デバッグプログラムとしてのユーザープロ
グラムのダウンロードを行う際には、デバッガソフトウ
エア及びモニタプログラムは、相互に定められるメモリ
書き込みの通信プロトコルによって通信し、モニタメモ
リ12中のバッファメモリ16を経由させる処理を備え
ることにより、ターゲットメモリ22への書き込みを行
なう。
【0020】図2に示す本発明の実施形態ににおけるユ
ーザープログラムのダウンロード方法について、図3を
用いて説明する。
【0021】まず、図3に示すように、ホストコンピュ
ータ30が、デバッガソフトウエアに従い、ホストコン
ピュータ30の例えばディスク装置内に格納されている
ユーザープログラムのコードを第1のメモリバンク16
aに書き込む。次に、エミュレーションチップ11がモ
ニタプログラムに従い、第1のメモリバンク16aに格
納されたユーザープログラムをターゲットメモリ22に
転送すると共に、その転送の完了を待つ間に、ホストコ
ンピュータ30が第2のメモリバンク16bにユーザー
プログラムの後続のコードを格納する。
【0022】さらに、第2のメモリバンク16bに格納
されたユーザープログラムをエミュレーションチップ1
1がターゲットメモリ22へ転送すると共に、その転送
の完了を待つ間に、ホストコンピュータ30が第1のメ
モリバンク16aにユーザープログラムの後続のコード
を格納する。このように、第1および第2のメモリバン
ク16a,16bは、一方へのホストコンピュータ30
からのアクセスと他方へのエミュレーションチップ11
からのアクセスとが並列に実行可能であり、ホストコン
ピュータ30からバッファメモリ16へのユーザープロ
グラムの書き込みと、バッファメモリ16に格納された
ユーザープログラムのターゲットメモリ22への読み出
しとが並列に行われる。
【0023】実際には、ユーザープログラムのサイズ
は、各メモリバンク16a,16bのサイズよりも大き
いので、ユーザープログラムをメモリバンクのサイズを
単位に分割され、前記のような手順の繰り返しによっ
て、コード全体がターゲットメモリ22に転送される。
【0024】言い換えると、本実施形態に係るダウンロ
ード方法は、図4に示す従来のダウンロード方法と比較
すると分かるように、ホストコンピュータ30がバッフ
ァメモリ16への書き込みを行う間は、その書き込み完
了までの待ち時間を利用して、エミュレータチップ11
はそれ以前に格納されたユーザープログラムのコードを
バッファメモリ16からターゲットメモリ22に転送
し、エミュレータチップ11がバッファメモリ16から
ターゲットメモリ22への書き込みを行う間は、その書
き込み完了までの待ち時間を利用して、ホストコンピュ
ータ30は次のユーザープログラムのコードをバッファ
メモリ16に格納するものである。
【0025】以上説明したようなエミュレータカード1
0の構成とダウンロード方法を採用することによって、
ユーザープログラムのダウンロード動作において、ホス
トコンピュータ30およびエミュレーションチップ11
のアイドル時間を減少させることができ、ダウンロード
動作をパイプライン的に処理させることができるので、
ユーザープログラムのダウンロードに要する時間を従来
よりも短縮することができる。
【0026】なお、図2では、バッファメモリ16は2
つのメモリバンクによって構成されているものとした
が、3以上のメモリバンクからなる構成としても良い。
【0027】図5は本実施形態に係るデバッグ支援装置
の構成の変形例を示すブロック図である。図5におい
て、図2と異なるのは、モニタメモリ12が、第1およ
び第2のメモリバンク16a,16bからなるバッファ
メモリ16の代わりに、単一のメモリバンクからなるバ
ッファメモリ17を備えている点である。バッファメモ
リ17は第1のメモリ領域17aと第2のメモリ領域1
7bとに領域分割されており、第1および第2のメモリ
領域17a,17bは、一方へのホストコンピュータ3
0からのアクセスと他方へのエミュレーションチップ1
1からのアクセスとが並列に実行可能に構成されてい
る。
【0028】なお、図5では、バッファメモリ17は2
つのメモリ領域に分割されたものとしたが、3以上のメ
モリ領域に分割しても良い。
【0029】なお、本実施形態では、ユーザープログラ
ムをターゲット基板20のターゲットメモリ22にダウ
ンロードするものとしたが、ターゲット基板20が未完
成のときにアプリケーションのデバッグを行うべく、タ
ーゲットメモリ22の代わりにエミュレーションメモリ
13にユーザープログラムをダウンロードする場合で
も、本実施形態と同様に実施可能である。
【0030】
【発明の効果】以上説明したように、本発明によると、
被デバッグプログラムをバッファメモリを経由してター
ゲット基板に高速にダウンロードすることができ、その
効果は大きい。
【図面の簡単な説明】
【図1】本発明の一実施形態に係るデバッグ支援装置を
含む、一般的なデバッグ支援システムの全体構成図であ
る。
【図2】本発明の一実施形態に係るデバッグ支援装置の
構成を示すブロック図である。
【図3】本発明の一実施形態に係るデバッグ支援装置に
おけるダウンロードの動作を示すタイミングチャートで
ある。
【図4】従来のデバッグ支援装置におけるダウンロード
の動作を示すタイミングチャートである。
【図5】本発明の一実施形態に係るデバッグ支援装置の
他の構成例を示すブロック図である。
【符号の説明】
10 エミュレータカード(デバッグ支援装置) 11 エミュレータチップ 12 モニタメモリ 16 バッファメモリ 16a 第1のメモリバンク 16b 第2のメモリバンク 17 バッファメモリ 17a 第1のメモリ領域 17b 第2のメモリ領域 20 ターゲット基板 21 マイコン 30 ホストコンピュータ

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】 ターゲット基板と接続され、このターゲ
    ット基板における被デバッグプログラムの動作をホスト
    コンピュータの制御によりエミュレーションし、被デバ
    ッグプログラムのデバッグを支援するデバッグ支援装置
    であって、 ターゲット基板に搭載されるマイコンの代わりに被デバ
    ッグプログラムを実行するエミュレーションチップと、 ホストコンピュータとターゲット基板との間のデータ転
    送のバッファとなるバッファメモリとを備え、 前記バッファメモリは、ホストコンピュータからのアク
    セスとエミュレーションチップからのアクセスとを並列
    に実行可能に構成されていることを特徴とするデバッグ
    支援装置。
  2. 【請求項2】 請求項1記載のデバッグ支援装置におい
    て、 前記バッファメモリは、複数のメモリバンクによって構
    成されており、一のメモリバンクへのホストコンピュー
    タからのアクセスと、他のメモリバンクへのエミュレー
    ションチップからのアクセスとが並列に実行可能である
    ことを特徴とするデバッグ支援装置。
  3. 【請求項3】 請求項1記載のデバッグ支援装置におい
    て、 前記バッファメモリは、単一のメモリバンクを領域分割
    して構成されており、一のメモリ領域へのホストコンピ
    ュータからのアクセスと、他のメモリ領域へのエミュレ
    ーションチップからのアクセスとが並列に実行可能であ
    ることを特徴とするデバッグ支援装置。
  4. 【請求項4】 ターゲット基板における被デバッグプロ
    グラムの動作をホストコンピュータの制御によりエミュ
    レーションするデバッグ支援装置を用いて被デバッグプ
    ログラムのデバッグを行う際に、被デバッグプログラム
    をターゲット基板に転送するダウンロード方法であっ
    て、 前記デバッグ支援装置は、ターゲット基板に搭載される
    マイコンの代わりに被デバッグプログラムを実行するエ
    ミュレーションチップと、ホストコンピュータからのア
    クセスとエミュレーションチップからのアクセスとを並
    列に実行可能に構成されたバッファメモリとを有し、か
    つ、 被デバッグプログラムの一部を、ホストコンピュータか
    ら前記バッファメモリに転送する工程と、前記バッファ
    メモリに格納された被デバッグプログラムの一部を、エ
    ミュレーションチップの制御によりターゲット基板に転
    送する工程とを並列に繰り返し行いながら、被デバッグ
    プログラムを転送することを特徴とするダウンロード方
    法。
JP9192657A 1997-07-17 1997-07-17 デバッグ支援装置およびダウンロード方法 Pending JPH1139186A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP9192657A JPH1139186A (ja) 1997-07-17 1997-07-17 デバッグ支援装置およびダウンロード方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP9192657A JPH1139186A (ja) 1997-07-17 1997-07-17 デバッグ支援装置およびダウンロード方法

Publications (1)

Publication Number Publication Date
JPH1139186A true JPH1139186A (ja) 1999-02-12

Family

ID=16294885

Family Applications (1)

Application Number Title Priority Date Filing Date
JP9192657A Pending JPH1139186A (ja) 1997-07-17 1997-07-17 デバッグ支援装置およびダウンロード方法

Country Status (1)

Country Link
JP (1) JPH1139186A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100461535B1 (ko) * 2001-11-02 2004-12-14 한국전자통신연구원 내장형 시스템을 위한 점진적 원격 로딩 장치 및 그 방법
WO2005022390A1 (ja) * 2003-08-28 2005-03-10 Renesas Technology Corp. マイクロコンピュータ及びシステムプログラムの開発方法

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100461535B1 (ko) * 2001-11-02 2004-12-14 한국전자통신연구원 내장형 시스템을 위한 점진적 원격 로딩 장치 및 그 방법
WO2005022390A1 (ja) * 2003-08-28 2005-03-10 Renesas Technology Corp. マイクロコンピュータ及びシステムプログラムの開発方法
US7401257B2 (en) 2003-08-28 2008-07-15 Renesas Technology Corp. Microcomputer and method for developing system program

Similar Documents

Publication Publication Date Title
US7409330B2 (en) Method and system for software debugging using a simulator
WO2009144892A1 (ja) デバイスエミュレーション支援装置、デバイスエミュレーション支援方法、デバイスエミュレーション支援回路及び情報処理装置
US20030061020A1 (en) Test and debug processor and method
US7818619B2 (en) Method and apparatus for debugging application software in information handling systems over a memory mapping I/O bus
US5003468A (en) Guest machine execution control system for virutal machine system
US6106565A (en) System and method for hardware emulation of a digital circuit
US6425122B1 (en) Single stepping system and method for tightly coupled processors
WO2020177567A1 (zh) 一种迁移数据的方法、装置及系统
JPH1139186A (ja) デバッグ支援装置およびダウンロード方法
JP2002288002A (ja) エミュレータ装置及びエミュレーション方法
CN112463675A (zh) 一种程序离线下载方法
US7451074B2 (en) Embedded microprocessor emulation method
JP2006146412A (ja) マルチコアプロセッサ及びデバッグ方法
JPH10312307A (ja) コンピュータシステムに適用するエミュレータ
JP2954006B2 (ja) エミュレーション装置およびエミュレーション方法
JP2638078B2 (ja) 情報処理装置
KR100273280B1 (ko) 디버깅 로직 제어 회로
US7194401B2 (en) Configuration for in-circuit emulation of a program-controlled unit
KR100658485B1 (ko) 마이크로프로세서 개발시스템
KR19990012940A (ko) 아이아이씨 버스를 이용한 마이콤 펌웨어 로드를 위한 회로
CN117130931A (zh) 一种嵌入式软件调试方法及装置
JPS6316350A (ja) マイクロプロセッサ
JP3685288B2 (ja) マイクロプロセッサのエミュレーション方法およびエミュレータ装置
JP2632891B2 (ja) システム開発装置
JP2001209555A (ja) 入出力エミュレーション装置、入出力装置のエミュレーション方法および入出力装置エミュレーションプログラムを記録した記録媒体

Legal Events

Date Code Title Description
A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20011127